@dvcol/neo-svelte 1.1.2 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +90 -0
- package/README.md +15 -7
- package/dist/badge/neo-badge.model.d.ts +1 -1
- package/dist/buttons/NeoArrowButton.svelte +4 -4
- package/dist/buttons/NeoButton.svelte +110 -24
- package/dist/buttons/NeoButtonGroup.svelte +18 -9
- package/dist/buttons/NeoButtonGroup.svelte.d.ts +1 -1
- package/dist/buttons/NeoButtonRow.svelte +137 -0
- package/dist/buttons/NeoButtonRow.svelte.d.ts +4 -0
- package/dist/buttons/NeoCancelButton.svelte +2 -2
- package/dist/buttons/NeoCheckboxButton.svelte +6 -4
- package/dist/buttons/NeoCheckboxButton.svelte.d.ts +1 -1
- package/dist/buttons/NeoCloseButton.svelte +37 -6
- package/dist/buttons/NeoCloseButton.svelte.d.ts +2 -2
- package/dist/buttons/NeoRadioButton.svelte +6 -4
- package/dist/buttons/NeoSwitchButton.svelte +5 -3
- package/dist/buttons/index.d.ts +2 -0
- package/dist/buttons/index.js +1 -0
- package/dist/buttons/neo-arrow-button.model.d.ts +3 -3
- package/dist/buttons/neo-button-group.model.d.ts +12 -3
- package/dist/buttons/neo-button-row.model.d.ts +33 -0
- package/dist/buttons/neo-button-row.model.js +1 -0
- package/dist/buttons/neo-button.model.d.ts +11 -4
- package/dist/buttons/neo-close-button.model.d.ts +13 -0
- package/dist/buttons/neo-close-button.model.js +5 -0
- package/dist/buttons/neo-icon-button.model.d.ts +2 -2
- package/dist/cards/NeoCard.svelte +22 -20
- package/dist/cards/neo-card.model.d.ts +3 -2
- package/dist/collapse/NeoAccordion.svelte +3 -1
- package/dist/collapse/NeoCollapse.svelte +2 -2
- package/dist/collapse/NeoCollapse.svelte.d.ts +3 -1
- package/dist/collapse/neo-accordion.model.d.ts +2 -1
- package/dist/containers/NeoTransitionContainer.svelte +10 -0
- package/dist/containers/neo-transition-container.model.d.ts +9 -0
- package/dist/cursor/NeoCursor.svelte.d.ts +1 -1
- package/dist/divider/NeoDivider.svelte +4 -2
- package/dist/divider/neo-divider.model.d.ts +2 -1
- package/dist/floating/common/NeoConfirm.svelte +5 -5
- package/dist/floating/common/NeoConfirm.svelte.d.ts +1 -1
- package/dist/floating/common/NeoFloatingStepper.svelte +1 -1
- package/dist/floating/common/NeoFloatingStepper.svelte.d.ts +1 -1
- package/dist/floating/common/NeoHandle.svelte +2 -1
- package/dist/floating/common/neo-confirm.model.d.ts +2 -1
- package/dist/floating/common/neo-floating-stepper.model.d.ts +1 -1
- package/dist/floating/common/neo-placement.model.d.ts +56 -4
- package/dist/floating/common/neo-placement.model.js +22 -0
- package/dist/floating/dialog/NeoDialog.svelte +23 -21
- package/dist/floating/dialog/NeoDialog.svelte.d.ts +1 -1
- package/dist/floating/dialog/NeoDialogConfirm.svelte.d.ts +1 -1
- package/dist/floating/dialog/NeoDialogStepper.svelte.d.ts +1 -1
- package/dist/floating/dialog/neo-dialog-confirm.model.d.ts +5 -5
- package/dist/floating/dialog/neo-dialog-stepper.model.d.ts +4 -4
- package/dist/floating/dialog/neo-dialog.model.d.ts +2 -1
- package/dist/floating/dialog/use-movable.svelte.js +2 -1
- package/dist/floating/drawer/NeoDrawer.svelte +9 -9
- package/dist/floating/drawer/NeoDrawer.svelte.d.ts +2 -2
- package/dist/floating/drawer/NeoDrawerConfirm.svelte +2 -4
- package/dist/floating/drawer/NeoDrawerConfirm.svelte.d.ts +2 -2
- package/dist/floating/drawer/NeoDrawerStepper.svelte +2 -4
- package/dist/floating/drawer/NeoDrawerStepper.svelte.d.ts +2 -2
- package/dist/floating/drawer/neo-drawer.model.d.ts +6 -0
- package/dist/floating/drawer/neo-drawer.model.js +1 -0
- package/dist/floating/index.d.ts +1 -0
- package/dist/floating/index.js +1 -0
- package/dist/floating/menu/NeoMenu.svelte +55 -17
- package/dist/floating/menu/NeoMenu.svelte.d.ts +1 -1
- package/dist/floating/menu/NeoMenuList.svelte +60 -67
- package/dist/floating/menu/NeoMenuListItem.svelte +157 -24
- package/dist/floating/menu/NeoMenuListItem.svelte.d.ts +1 -0
- package/dist/floating/menu/index.d.ts +1 -0
- package/dist/floating/menu/neo-menu-list-item.model.d.ts +48 -11
- package/dist/floating/menu/neo-menu-list.model.d.ts +24 -4
- package/dist/floating/menu/neo-menu.model.d.ts +3 -3
- package/dist/floating/notification/NeoNotificationItem.svelte +459 -0
- package/dist/floating/notification/NeoNotificationItem.svelte.d.ts +4 -0
- package/dist/floating/notification/NeoNotificationProvider.svelte +49 -0
- package/dist/floating/notification/NeoNotificationProvider.svelte.d.ts +4 -0
- package/dist/floating/notification/NeoNotificationStack.svelte +345 -0
- package/dist/floating/notification/NeoNotificationStack.svelte.d.ts +16 -0
- package/dist/floating/notification/NeoSimpleNotification.svelte +304 -0
- package/dist/floating/notification/NeoSimpleNotification.svelte.d.ts +4 -0
- package/dist/floating/notification/index.d.ts +8 -0
- package/dist/floating/notification/index.js +7 -0
- package/dist/floating/notification/neo-notification-item.model.d.ts +54 -0
- package/dist/floating/notification/neo-notification-item.model.js +1 -0
- package/dist/floating/notification/neo-notification-provider.model.d.ts +78 -0
- package/dist/floating/notification/neo-notification-provider.model.js +18 -0
- package/dist/floating/notification/neo-notification-stack.model.d.ts +48 -0
- package/dist/floating/notification/neo-notification-stack.model.js +1 -0
- package/dist/floating/notification/neo-notification.model.d.ts +271 -0
- package/dist/floating/notification/neo-notification.model.js +70 -0
- package/dist/floating/notification/neo-simple-notification.model.d.ts +14 -0
- package/dist/floating/notification/neo-simple-notification.model.js +1 -0
- package/dist/floating/portal/NeoPortal.svelte +11 -8
- package/dist/floating/portal/NeoPortalTarget.svelte +7 -0
- package/dist/floating/portal/NeoPortalTarget.svelte.d.ts +7 -0
- package/dist/floating/portal/neo-portal-context.svelte.d.ts +1 -1
- package/dist/floating/portal/neo-portal.model.d.ts +4 -5
- package/dist/floating/tooltips/NeoPopConfirm.svelte +2 -0
- package/dist/floating/tooltips/NeoPopConfirm.svelte.d.ts +1 -1
- package/dist/floating/tooltips/NeoPopSelect.svelte +5 -3
- package/dist/floating/tooltips/NeoPopSelect.svelte.d.ts +1 -1
- package/dist/floating/tooltips/NeoPopStepper.svelte +2 -0
- package/dist/floating/tooltips/NeoPopStepper.svelte.d.ts +1 -1
- package/dist/floating/tooltips/NeoTooltip.svelte +43 -23
- package/dist/floating/tooltips/NeoTooltip.svelte.d.ts +5 -1
- package/dist/floating/tooltips/neo-pop-confirm.model.d.ts +1 -1
- package/dist/floating/tooltips/neo-pop-select.model.d.ts +1 -3
- package/dist/floating/tooltips/neo-pop-stepper.model.d.ts +2 -2
- package/dist/floating/tooltips/neo-tooltip.model.d.ts +7 -2
- package/dist/form/NeoForm.svelte +1 -1
- package/dist/form/NeoForm.svelte.d.ts +3 -1
- package/dist/form/neo-form-context.svelte.d.ts +2 -0
- package/dist/icons/{IconAccount.svelte → NeoIconAccount.svelte} +2 -2
- package/dist/icons/NeoIconAccount.svelte.d.ts +4 -0
- package/dist/icons/{IconAdd.svelte → NeoIconAdd.svelte} +11 -6
- package/dist/icons/NeoIconAdd.svelte.d.ts +4 -0
- package/dist/icons/{IconAddress.svelte → NeoIconAddress.svelte} +2 -2
- package/dist/icons/NeoIconAddress.svelte.d.ts +4 -0
- package/dist/icons/{IconAlert.svelte → NeoIconAlert.svelte} +11 -6
- package/dist/icons/NeoIconAlert.svelte.d.ts +4 -0
- package/dist/icons/{IconAlignBottom.svelte → NeoIconAlignBottom.svelte} +11 -6
- package/dist/icons/NeoIconAlignBottom.svelte.d.ts +4 -0
- package/dist/icons/{IconAlignMiddle.svelte → NeoIconAlignMiddle.svelte} +11 -6
- package/dist/icons/NeoIconAlignMiddle.svelte.d.ts +4 -0
- package/dist/icons/{IconAlignTop.svelte → NeoIconAlignTop.svelte} +11 -6
- package/dist/icons/NeoIconAlignTop.svelte.d.ts +4 -0
- package/dist/icons/{IconArrow.svelte → NeoIconArrow.svelte} +9 -9
- package/dist/icons/NeoIconArrow.svelte.d.ts +4 -0
- package/dist/icons/NeoIconAudio.svelte +83 -0
- package/dist/icons/NeoIconAudio.svelte.d.ts +4 -0
- package/dist/icons/NeoIconBouncingDots.svelte +82 -0
- package/dist/icons/NeoIconBouncingDots.svelte.d.ts +4 -0
- package/dist/icons/{IconCalendar.svelte → NeoIconCalendar.svelte} +11 -6
- package/dist/icons/NeoIconCalendar.svelte.d.ts +4 -0
- package/dist/icons/{IconCancel.svelte → NeoIconCancel.svelte} +2 -2
- package/dist/icons/NeoIconCancel.svelte.d.ts +4 -0
- package/dist/icons/{IconCheckbox.svelte → NeoIconCheckbox.svelte} +2 -2
- package/dist/icons/NeoIconCheckbox.svelte.d.ts +4 -0
- package/dist/icons/NeoIconCircle.svelte +18 -0
- package/dist/icons/NeoIconCircle.svelte.d.ts +4 -0
- package/dist/icons/{IconCircleLoading.svelte → NeoIconCircleLoading.svelte} +2 -2
- package/dist/icons/{IconCircleLoading.svelte.d.ts → NeoIconCircleLoading.svelte.d.ts} +55 -39
- package/dist/icons/{IconClear.svelte → NeoIconClear.svelte} +11 -6
- package/dist/icons/NeoIconClear.svelte.d.ts +4 -0
- package/dist/icons/{IconClose.svelte → NeoIconClose.svelte} +2 -2
- package/dist/icons/NeoIconClose.svelte.d.ts +4 -0
- package/dist/icons/NeoIconCog.svelte +36 -0
- package/dist/icons/NeoIconCog.svelte.d.ts +4 -0
- package/dist/icons/{IconConfirm.svelte → NeoIconConfirm.svelte} +11 -6
- package/dist/icons/NeoIconConfirm.svelte.d.ts +4 -0
- package/dist/icons/NeoIconCube.svelte +31 -0
- package/dist/icons/NeoIconCube.svelte.d.ts +4 -0
- package/dist/icons/{IconDoubleChevron.svelte → NeoIconDoubleChevron.svelte} +11 -5
- package/dist/icons/NeoIconDoubleChevron.svelte.d.ts +4 -0
- package/dist/icons/{IconDoubleChevronLeft.svelte → NeoIconDoubleChevronLeft.svelte} +11 -6
- package/dist/icons/NeoIconDoubleChevronLeft.svelte.d.ts +4 -0
- package/dist/icons/{IconDoubleChevronRight.svelte → NeoIconDoubleChevronRight.svelte} +11 -6
- package/dist/icons/NeoIconDoubleChevronRight.svelte.d.ts +4 -0
- package/dist/icons/{IconDownload.svelte → NeoIconDownload.svelte} +11 -6
- package/dist/icons/NeoIconDownload.svelte.d.ts +4 -0
- package/dist/icons/NeoIconEmpty.svelte +26 -0
- package/dist/icons/NeoIconEmpty.svelte.d.ts +4 -0
- package/dist/icons/NeoIconError.svelte +30 -0
- package/dist/icons/NeoIconError.svelte.d.ts +4 -0
- package/dist/icons/{IconFileUpload.svelte → NeoIconFileUpload.svelte} +11 -6
- package/dist/icons/NeoIconFileUpload.svelte.d.ts +4 -0
- package/dist/icons/NeoIconFire.svelte +33 -0
- package/dist/icons/NeoIconFire.svelte.d.ts +4 -0
- package/dist/icons/{IconGithub.svelte → NeoIconGithub.svelte} +11 -6
- package/dist/icons/NeoIconGithub.svelte.d.ts +4 -0
- package/dist/icons/NeoIconImage.svelte +39 -0
- package/dist/icons/NeoIconImage.svelte.d.ts +4 -0
- package/dist/icons/NeoIconInfo.svelte +30 -0
- package/dist/icons/NeoIconInfo.svelte.d.ts +4 -0
- package/dist/icons/{IconList.svelte → NeoIconList.svelte} +11 -6
- package/dist/icons/NeoIconList.svelte.d.ts +4 -0
- package/dist/icons/{IconListSmall.svelte → NeoIconListSmall.svelte} +2 -2
- package/dist/icons/NeoIconListSmall.svelte.d.ts +4 -0
- package/dist/icons/{IconLoadingMatrix.svelte → NeoIconLoadingMatrix.svelte} +2 -2
- package/dist/icons/NeoIconLoadingMatrix.svelte.d.ts +4 -0
- package/dist/icons/{IconMail.svelte → NeoIconMail.svelte} +11 -6
- package/dist/icons/NeoIconMail.svelte.d.ts +4 -0
- package/dist/icons/{IconMinus.svelte → NeoIconMinus.svelte} +11 -6
- package/dist/icons/NeoIconMinus.svelte.d.ts +4 -0
- package/dist/icons/{IconPaint.svelte → NeoIconPaint.svelte} +11 -6
- package/dist/icons/NeoIconPaint.svelte.d.ts +4 -0
- package/dist/icons/{IconPencil.svelte → NeoIconPencil.svelte} +11 -6
- package/dist/icons/NeoIconPencil.svelte.d.ts +4 -0
- package/dist/icons/{IconPlayPause.svelte → NeoIconPlayPause.svelte} +2 -2
- package/dist/icons/NeoIconPlayPause.svelte.d.ts +4 -0
- package/dist/icons/{IconQuestionMark.svelte → NeoIconQuestionMark.svelte} +11 -6
- package/dist/icons/NeoIconQuestionMark.svelte.d.ts +4 -0
- package/dist/icons/{IconRadio.svelte → NeoIconRadio.svelte} +2 -2
- package/dist/icons/NeoIconRadio.svelte.d.ts +4 -0
- package/dist/icons/NeoIconRefresh.svelte +38 -0
- package/dist/icons/NeoIconRefresh.svelte.d.ts +4 -0
- package/dist/icons/NeoIconRestore.svelte +20 -0
- package/dist/icons/NeoIconRestore.svelte.d.ts +4 -0
- package/dist/icons/NeoIconSave.svelte +35 -0
- package/dist/icons/NeoIconSave.svelte.d.ts +4 -0
- package/dist/icons/NeoIconSaveOff.svelte +42 -0
- package/dist/icons/NeoIconSaveOff.svelte.d.ts +4 -0
- package/dist/icons/{IconSearch.svelte → NeoIconSearch.svelte} +11 -6
- package/dist/icons/NeoIconSearch.svelte.d.ts +4 -0
- package/dist/icons/NeoIconSuccess.svelte +26 -0
- package/dist/icons/NeoIconSuccess.svelte.d.ts +4 -0
- package/dist/icons/{IconSun.svelte → NeoIconSun.svelte} +11 -6
- package/dist/icons/NeoIconSun.svelte.d.ts +4 -0
- package/dist/icons/{IconSunMoon.svelte → NeoIconSunMoon.svelte} +11 -64
- package/dist/icons/NeoIconSunMoon.svelte.d.ts +4 -0
- package/dist/icons/{IconTextHighlight.svelte → NeoIconTextHighlight.svelte} +11 -6
- package/dist/icons/NeoIconTextHighlight.svelte.d.ts +4 -0
- package/dist/icons/NeoIconTheme.svelte +14 -0
- package/dist/icons/NeoIconTheme.svelte.d.ts +3 -0
- package/dist/icons/NeoIconTrend.svelte +39 -0
- package/dist/icons/NeoIconTrend.svelte.d.ts +4 -0
- package/dist/icons/NeoIconUnplug.svelte +63 -0
- package/dist/icons/NeoIconUnplug.svelte.d.ts +4 -0
- package/dist/icons/{IconVideo.svelte → NeoIconVideo.svelte} +11 -6
- package/dist/icons/NeoIconVideo.svelte.d.ts +4 -0
- package/dist/icons/NeoIconWarning.svelte +30 -0
- package/dist/icons/NeoIconWarning.svelte.d.ts +4 -0
- package/dist/icons/NeoIconWatch.svelte +41 -0
- package/dist/icons/NeoIconWatch.svelte.d.ts +4 -0
- package/dist/icons/NeoIconWatchOff.svelte +50 -0
- package/dist/icons/NeoIconWatchOff.svelte.d.ts +4 -0
- package/dist/icons/NeoIconWave.svelte +31 -0
- package/dist/icons/NeoIconWave.svelte.d.ts +4 -0
- package/dist/icons/index.d.ts +54 -0
- package/dist/icons/index.js +54 -0
- package/dist/icons/{icon.model.d.ts → neo-icon.model.d.ts} +41 -13
- package/dist/icons/{icon.model.js → neo-icon.model.js} +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.js +2 -0
- package/dist/inputs/NeoCheckbox.svelte +6 -4
- package/dist/inputs/NeoCheckbox.svelte.d.ts +1 -1
- package/dist/inputs/NeoColorPicker.svelte +6 -3
- package/dist/inputs/NeoColorPicker.svelte.d.ts +1 -1
- package/dist/inputs/NeoColorPickerSelector.svelte +2 -2
- package/dist/inputs/NeoColorPickerSelector.svelte.d.ts +1 -1
- package/dist/inputs/NeoDateTime.svelte +6 -3
- package/dist/inputs/NeoDateTime.svelte.d.ts +1 -1
- package/dist/inputs/NeoFilePicker.svelte +11 -6
- package/dist/inputs/NeoFilePicker.svelte.d.ts +1 -1
- package/dist/inputs/NeoFilePickerCard.svelte +20 -14
- package/dist/inputs/NeoNativeSelect.svelte +6 -3
- package/dist/inputs/NeoNativeSelect.svelte.d.ts +1 -1
- package/dist/inputs/NeoNumberStep.svelte +13 -8
- package/dist/inputs/NeoNumberStep.svelte.d.ts +1 -1
- package/dist/inputs/NeoPassword.svelte +4 -4
- package/dist/inputs/NeoPassword.svelte.d.ts +1 -1
- package/dist/inputs/NeoPin.svelte +10 -10
- package/dist/inputs/NeoPin.svelte.d.ts +10 -1
- package/dist/inputs/NeoRadio.svelte +3 -3
- package/dist/inputs/NeoRadio.svelte.d.ts +1 -1
- package/dist/inputs/NeoRange.svelte +29 -27
- package/dist/inputs/NeoRange.svelte.d.ts +5 -2
- package/dist/inputs/NeoSelect.svelte +17 -8
- package/dist/inputs/NeoSelect.svelte.d.ts +1 -1
- package/dist/inputs/NeoSwitch.svelte +2 -2
- package/dist/inputs/NeoSwitch.svelte.d.ts +1 -1
- package/dist/inputs/common/NeoAffix.svelte +10 -10
- package/dist/inputs/common/NeoBaseInput.svelte +16 -2
- package/dist/inputs/common/NeoBaseInput.svelte.d.ts +1 -1
- package/dist/inputs/common/NeoInput.svelte +12 -4
- package/dist/inputs/common/NeoInput.svelte.d.ts +1 -1
- package/dist/inputs/common/NeoTextarea.svelte +18 -6
- package/dist/inputs/common/NeoTextarea.svelte.d.ts +2 -1
- package/dist/inputs/common/NeoValidation.svelte +6 -4
- package/dist/inputs/common/neo-input.model.d.ts +8 -1
- package/dist/inputs/common/neo-validation.model.d.ts +2 -1
- package/dist/inputs/neo-range.model.d.ts +2 -1
- package/dist/inputs/neo-select.model.d.ts +8 -4
- package/dist/list/NeoList.svelte +100 -62
- package/dist/list/NeoList.svelte.d.ts +5 -2
- package/dist/list/NeoListBaseItem.svelte +222 -92
- package/dist/list/NeoListBaseItem.svelte.d.ts +1 -1
- package/dist/list/NeoListBaseLoader.svelte +28 -4
- package/dist/list/NeoListBaseSection.svelte +18 -15
- package/dist/list/NeoListSearch.svelte +36 -20
- package/dist/list/NeoListSearch.svelte.d.ts +1 -1
- package/dist/list/NeoSimpleList.svelte +391 -0
- package/dist/list/NeoSimpleList.svelte.d.ts +8 -0
- package/dist/list/NeoVirtualList.svelte +388 -0
- package/dist/list/NeoVirtualList.svelte.d.ts +22 -0
- package/dist/list/index.d.ts +4 -0
- package/dist/list/index.js +2 -0
- package/dist/list/neo-list-base-item.model.d.ts +36 -7
- package/dist/list/neo-list-base-item.model.js +1 -0
- package/dist/list/neo-list-base-loader.model.d.ts +18 -1
- package/dist/list/neo-list-base-section.model.d.ts +8 -5
- package/dist/list/neo-list-search.model.d.ts +2 -2
- package/dist/list/neo-list.model.d.ts +120 -51
- package/dist/list/neo-list.model.js +18 -0
- package/dist/list/neo-simple-list.model.d.ts +124 -0
- package/dist/list/neo-simple-list.model.js +1 -0
- package/dist/list/neo-virtual-list.model.d.ts +69 -0
- package/dist/list/neo-virtual-list.model.js +6 -0
- package/dist/loading/NeoLoadingMatrix.svelte +2 -2
- package/dist/loading/neo-lazy.model.d.ts +2 -2
- package/dist/loading/neo-suspense.model.d.ts +1 -1
- package/dist/media/NeoImage.svelte +204 -0
- package/dist/media/NeoImage.svelte.d.ts +4 -0
- package/dist/media/NeoMedia.svelte +204 -0
- package/dist/media/NeoMedia.svelte.d.ts +4 -0
- package/dist/media/index.d.ts +2 -0
- package/dist/media/index.js +1 -0
- package/dist/media/neo-image.model.d.ts +67 -0
- package/dist/media/neo-image.model.js +1 -0
- package/dist/media/neo-media.model.d.ts +120 -0
- package/dist/media/neo-media.model.js +5 -0
- package/dist/nav/NeoTab.svelte +20 -15
- package/dist/nav/NeoTab.svelte.d.ts +17 -2
- package/dist/nav/NeoTabPanel.svelte +7 -5
- package/dist/nav/NeoTabPanel.svelte.d.ts +17 -2
- package/dist/nav/NeoTabs.svelte +21 -17
- package/dist/nav/NeoTabs.svelte.d.ts +19 -3
- package/dist/nav/NeoTabsCard.svelte +5 -3
- package/dist/nav/NeoTabsCard.svelte.d.ts +17 -2
- package/dist/nav/NeoTabsRow.svelte +225 -0
- package/dist/nav/NeoTabsRow.svelte.d.ts +19 -0
- package/dist/nav/index.d.ts +2 -0
- package/dist/nav/index.js +1 -0
- package/dist/nav/neo-tab-panel.model.d.ts +3 -3
- package/dist/nav/neo-tab.model.d.ts +15 -5
- package/dist/nav/neo-tabs-card.model.d.ts +3 -2
- package/dist/nav/neo-tabs-context.svelte.d.ts +35 -29
- package/dist/nav/neo-tabs-context.svelte.js +17 -3
- package/dist/nav/neo-tabs-row.model.d.ts +85 -0
- package/dist/nav/neo-tabs-row.model.js +1 -0
- package/dist/nav/neo-tabs.model.d.ts +12 -11
- package/dist/pill/NeoPill.svelte +73 -14
- package/dist/pill/neo-pill.model.d.ts +25 -1
- package/dist/progress/NeoProgress.svelte +203 -42
- package/dist/progress/NeoProgress.svelte.d.ts +8 -8
- package/dist/progress/NeoProgressBar.svelte +37 -6
- package/dist/progress/NeoProgressBar.svelte.d.ts +9 -1
- package/dist/progress/index.d.ts +1 -0
- package/dist/progress/index.js +1 -0
- package/dist/progress/neo-progress-bar.model.d.ts +11 -6
- package/dist/progress/neo-progress-service.svelte.d.ts +47 -0
- package/dist/progress/neo-progress-service.svelte.js +157 -0
- package/dist/progress/neo-progress.model.d.ts +98 -41
- package/dist/progress/neo-progress.model.js +6 -1
- package/dist/providers/NeoRememberSelector.svelte +43 -0
- package/dist/providers/NeoRememberSelector.svelte.d.ts +4 -0
- package/dist/providers/NeoResetSelector.svelte +40 -0
- package/dist/providers/NeoResetSelector.svelte.d.ts +4 -0
- package/dist/providers/NeoSourceSelector.svelte +63 -0
- package/dist/providers/NeoSourceSelector.svelte.d.ts +4 -0
- package/dist/providers/NeoThemeProvider.svelte +25 -10
- package/dist/providers/NeoThemeProvider.svelte.d.ts +1 -2
- package/dist/providers/NeoThemeSelector.svelte +26 -108
- package/dist/providers/NeoThemeSelector.svelte.d.ts +1 -1
- package/dist/providers/NeoThemeSelectors.svelte +57 -0
- package/dist/providers/NeoThemeSelectors.svelte.d.ts +4 -0
- package/dist/providers/NeoTransitionSelector.svelte +57 -0
- package/dist/providers/NeoTransitionSelector.svelte.d.ts +4 -0
- package/dist/providers/index.d.ts +10 -0
- package/dist/providers/index.js +5 -0
- package/dist/providers/neo-remember-selector.model.d.ts +9 -0
- package/dist/providers/neo-remember-selector.model.js +2 -0
- package/dist/providers/neo-reset-selector.model.d.ts +9 -0
- package/dist/providers/neo-reset-selector.model.js +1 -0
- package/dist/providers/neo-source-selector.model.d.ts +9 -0
- package/dist/providers/neo-source-selector.model.js +2 -0
- package/dist/providers/neo-theme-provider-context.svelte.d.ts +14 -3
- package/dist/providers/neo-theme-provider-context.svelte.js +94 -11
- package/dist/providers/neo-theme-provider.model.d.ts +31 -3
- package/dist/providers/neo-theme-provider.model.js +9 -0
- package/dist/providers/neo-theme-selector.model.d.ts +3 -48
- package/dist/providers/neo-theme-selector.model.js +1 -0
- package/dist/providers/neo-theme-selectors.model.d.ts +84 -0
- package/dist/providers/neo-theme-selectors.model.js +1 -0
- package/dist/providers/neo-transition-selector.model.d.ts +9 -0
- package/dist/providers/neo-transition-selector.model.js +2 -0
- package/dist/skeletons/NeoSkeletonContainer.svelte +3 -1
- package/dist/skeletons/NeoSkeletonMedia.svelte +26 -18
- package/dist/skeletons/NeoSkeletonText.svelte +5 -3
- package/dist/skeletons/neo-skeleton-container.model.d.ts +9 -0
- package/dist/skeletons/neo-skeleton-media.model.d.ts +20 -10
- package/dist/skeletons/neo-skeleton-media.model.js +7 -1
- package/dist/skeletons/neo-skeleton-text.model.d.ts +5 -0
- package/dist/stepper/NeoStepper.svelte +20 -20
- package/dist/stepper/NeoStepper.svelte.d.ts +9 -2
- package/dist/stepper/neo-stepper.model.d.ts +5 -5
- package/dist/styles/animation.scss +76 -0
- package/dist/styles/common/colors.scss +15 -9
- package/dist/styles/common/properties.css +18 -0
- package/dist/styles/common/spacing.scss +8 -4
- package/dist/styles/common/typography.scss +13 -3
- package/dist/styles/common/utils.scss +2 -2
- package/dist/styles/mixin.scss +125 -11
- package/dist/styles/theme.scss +20 -0
- package/dist/styles/transition.scss +101 -0
- package/dist/text/NeoEllipsis.svelte +1 -0
- package/dist/text/NeoHtml.svelte +26 -0
- package/dist/text/NeoHtml.svelte.d.ts +7 -0
- package/dist/text/NeoMark.svelte +18 -5
- package/dist/text/NeoTypewriter.svelte +5 -4
- package/dist/text/NeoTypewriter.svelte.d.ts +5 -1
- package/dist/text/index.d.ts +2 -0
- package/dist/text/index.js +1 -0
- package/dist/text/neo-html.model.d.ts +4 -0
- package/dist/text/neo-html.model.js +1 -0
- package/dist/text/neo-mark.model.d.ts +8 -0
- package/dist/text/typewriter.utils.d.ts +2 -2
- package/dist/text/typewriter.utils.js +8 -9
- package/dist/utils/action.utils.d.ts +1 -21
- package/dist/utils/border.utils.d.ts +13 -0
- package/dist/utils/border.utils.js +18 -0
- package/dist/utils/colors.utils.d.ts +1 -1
- package/dist/utils/error.utils.d.ts +22 -0
- package/dist/utils/error.utils.js +36 -0
- package/dist/utils/style.utils.d.ts +1 -1
- package/package.json +55 -39
- package/dist/icons/IconAccount.svelte.d.ts +0 -4
- package/dist/icons/IconAdd.svelte.d.ts +0 -26
- package/dist/icons/IconAddress.svelte.d.ts +0 -4
- package/dist/icons/IconAlert.svelte.d.ts +0 -26
- package/dist/icons/IconAlignBottom.svelte.d.ts +0 -26
- package/dist/icons/IconAlignMiddle.svelte.d.ts +0 -26
- package/dist/icons/IconAlignTop.svelte.d.ts +0 -26
- package/dist/icons/IconArrow.svelte.d.ts +0 -4
- package/dist/icons/IconBouncingDots.svelte +0 -63
- package/dist/icons/IconBouncingDots.svelte.d.ts +0 -4
- package/dist/icons/IconCalendar.svelte.d.ts +0 -26
- package/dist/icons/IconCancel.svelte.d.ts +0 -4
- package/dist/icons/IconCheckbox.svelte.d.ts +0 -4
- package/dist/icons/IconClear.svelte.d.ts +0 -26
- package/dist/icons/IconClose.svelte.d.ts +0 -4
- package/dist/icons/IconConfirm.svelte.d.ts +0 -26
- package/dist/icons/IconDoubleChevron.svelte.d.ts +0 -26
- package/dist/icons/IconDoubleChevronLeft.svelte.d.ts +0 -26
- package/dist/icons/IconDoubleChevronRight.svelte.d.ts +0 -26
- package/dist/icons/IconDownload.svelte.d.ts +0 -26
- package/dist/icons/IconEmpty.svelte +0 -18
- package/dist/icons/IconEmpty.svelte.d.ts +0 -26
- package/dist/icons/IconFileUpload.svelte.d.ts +0 -26
- package/dist/icons/IconGithub.svelte.d.ts +0 -26
- package/dist/icons/IconImage.svelte +0 -26
- package/dist/icons/IconImage.svelte.d.ts +0 -26
- package/dist/icons/IconList.svelte.d.ts +0 -26
- package/dist/icons/IconListSmall.svelte.d.ts +0 -4
- package/dist/icons/IconLoadingMatrix.svelte.d.ts +0 -4
- package/dist/icons/IconMail.svelte.d.ts +0 -26
- package/dist/icons/IconMinus.svelte.d.ts +0 -26
- package/dist/icons/IconPaint.svelte.d.ts +0 -26
- package/dist/icons/IconPencil.svelte.d.ts +0 -26
- package/dist/icons/IconPlayPause.svelte.d.ts +0 -4
- package/dist/icons/IconQuestionMark.svelte.d.ts +0 -26
- package/dist/icons/IconRadio.svelte.d.ts +0 -4
- package/dist/icons/IconSave.svelte +0 -25
- package/dist/icons/IconSave.svelte.d.ts +0 -26
- package/dist/icons/IconSaveOff.svelte +0 -32
- package/dist/icons/IconSaveOff.svelte.d.ts +0 -26
- package/dist/icons/IconSearch.svelte.d.ts +0 -26
- package/dist/icons/IconSun.svelte.d.ts +0 -26
- package/dist/icons/IconSunMoon.svelte.d.ts +0 -4
- package/dist/icons/IconTextHighlight.svelte.d.ts +0 -26
- package/dist/icons/IconVideo.svelte.d.ts +0 -26
- package/dist/icons/IconWatch.svelte +0 -29
- package/dist/icons/IconWatch.svelte.d.ts +0 -26
- package/dist/icons/IconWatchOff.svelte +0 -34
- package/dist/icons/IconWatchOff.svelte.d.ts +0 -26
|
@@ -1,11 +1,16 @@
|
|
|
1
|
-
import type { NeoListBaseItemProps, NeoListBaseSectionProps } from '../index.js';
|
|
2
1
|
import type { Snippet } from 'svelte';
|
|
3
2
|
import type { NeoButtonProps } from '../buttons/neo-button.model.js';
|
|
4
3
|
import type { NeoDividerProps } from '../divider/neo-divider.model.js';
|
|
4
|
+
import type { NeoListBaseItemProps } from './neo-list-base-item.model.js';
|
|
5
5
|
import type { NeoListBaseLoaderProps } from './neo-list-base-loader.model.js';
|
|
6
|
+
import type { NeoListBaseSectionProps } from './neo-list-base-section.model.js';
|
|
7
|
+
import type { NeoImageProps } from '../media/neo-image.model.js';
|
|
8
|
+
import type { NeoMediaProps, NeoMediaType, NeoMediaTypes } from '../media/neo-media.model.js';
|
|
9
|
+
import type { NeoPillProps } from '../pill/neo-pill.model.js';
|
|
6
10
|
import type { HTMAnimationProps, HTMLTransitionProps } from '../utils/action.utils.js';
|
|
11
|
+
import type { BorderRadiusInput } from '../utils/border.utils.js';
|
|
7
12
|
import type { Color } from '../utils/colors.utils.js';
|
|
8
|
-
import type { HTMLNeoBaseElement, HTMLRefProps, HTMLTagProps } from '../utils/html-element.utils.js';
|
|
13
|
+
import type { HTMLNeoBaseElement, HTMLRefProps, HTMLTagProps, SvelteEvent } from '../utils/html-element.utils.js';
|
|
9
14
|
import type { SizeInput } from '../utils/style.utils.js';
|
|
10
15
|
export interface NeoListDividerOption {
|
|
11
16
|
top?: boolean;
|
|
@@ -19,7 +24,7 @@ export interface NeoListItemCommon<Tag extends keyof HTMLElementTagNameMap = 'li
|
|
|
19
24
|
* If not provided, the index will be used.
|
|
20
25
|
* Note: Required for entering/leaving transitions.
|
|
21
26
|
*/
|
|
22
|
-
id?: string | number;
|
|
27
|
+
id?: string | number | symbol;
|
|
23
28
|
/**
|
|
24
29
|
* The HTML tag to use for the item.
|
|
25
30
|
* @default 'li'
|
|
@@ -52,6 +57,12 @@ export interface NeoListItemCommon<Tag extends keyof HTMLElementTagNameMap = 'li
|
|
|
52
57
|
* If true, the item will not be displayed.
|
|
53
58
|
*/
|
|
54
59
|
hidden?: boolean;
|
|
60
|
+
/**
|
|
61
|
+
* Reverse the direction of the item.
|
|
62
|
+
*
|
|
63
|
+
* @default false
|
|
64
|
+
*/
|
|
65
|
+
reverse?: boolean;
|
|
55
66
|
/**
|
|
56
67
|
* Optional props to pass to the divider.
|
|
57
68
|
*/
|
|
@@ -61,15 +72,24 @@ export interface NeoListItemCommon<Tag extends keyof HTMLElementTagNameMap = 'li
|
|
|
61
72
|
*/
|
|
62
73
|
containerProps?: HTMLNeoBaseElement<HTMLElementTagNameMap[Tag]>;
|
|
63
74
|
}
|
|
64
|
-
export interface NeoListItemContext<Value = unknown, Tag extends keyof HTMLElementTagNameMap = 'li', Context =
|
|
75
|
+
export interface NeoListItemContext<Value = unknown, Tag extends keyof HTMLElementTagNameMap = 'li', Context = NeoListContext> {
|
|
65
76
|
item: NeoListItem<Value, Tag>;
|
|
66
77
|
index: number;
|
|
67
78
|
checked?: boolean;
|
|
68
79
|
context: Context;
|
|
69
80
|
}
|
|
70
|
-
export type NeoListItemRender<Value = unknown, Tag extends keyof HTMLElementTagNameMap = 'li', Context =
|
|
81
|
+
export type NeoListItemRender<Value = unknown, Tag extends keyof HTMLElementTagNameMap = 'li', Context = NeoListContext> = Snippet<[
|
|
71
82
|
NeoListItemContext<Value, Tag, Context>
|
|
72
83
|
]>;
|
|
84
|
+
/**
|
|
85
|
+
* TODO: Add support for video and audio
|
|
86
|
+
*/
|
|
87
|
+
export type NeoBaseListItemMedia<Type extends NeoMediaTypes = typeof NeoMediaType.Image> = NeoMediaProps & (Type extends typeof NeoMediaType.Image ? {
|
|
88
|
+
type?: typeof NeoMediaType.Image;
|
|
89
|
+
image?: NeoImageProps;
|
|
90
|
+
} : Record<string, never>);
|
|
91
|
+
export type NeoBaseListItemTag = string | NeoButtonProps | NeoPillProps;
|
|
92
|
+
export declare function isButtonTag(tag: NeoBaseListItemTag): tag is NeoButtonProps;
|
|
73
93
|
export type NeoBaseListItem<Value = unknown, Tag extends keyof HTMLElementTagNameMap = 'li', Context = any> = {
|
|
74
94
|
/**
|
|
75
95
|
* An arbitrary value to associate with the list item.
|
|
@@ -79,6 +99,14 @@ export type NeoBaseListItem<Value = unknown, Tag extends keyof HTMLElementTagNam
|
|
|
79
99
|
* Optional description to display in the list item.
|
|
80
100
|
*/
|
|
81
101
|
description?: string;
|
|
102
|
+
/**
|
|
103
|
+
* Optional tags to display between label and description.
|
|
104
|
+
*/
|
|
105
|
+
tags?: NeoBaseListItemTag[];
|
|
106
|
+
/**
|
|
107
|
+
* Optional media to display in the list item.
|
|
108
|
+
*/
|
|
109
|
+
media?: NeoBaseListItemMedia;
|
|
82
110
|
/**
|
|
83
111
|
* Optional snippet to display in place of the list item.
|
|
84
112
|
*/
|
|
@@ -156,18 +184,9 @@ export interface NeoListSelectEvent<Selected = NeoListSelectedItem | NeoListSele
|
|
|
156
184
|
removed?: Selected;
|
|
157
185
|
added?: Selected;
|
|
158
186
|
}
|
|
159
|
-
export interface
|
|
160
|
-
/**
|
|
161
|
-
* Scroll the list to the top.
|
|
162
|
-
*/
|
|
163
|
-
scrollTop: (options?: ScrollToOptions) => Promise<HTMLElement | false>;
|
|
164
|
-
/**
|
|
165
|
-
* Scroll the list to the bottom.
|
|
166
|
-
*/
|
|
167
|
-
scrollBottom: (options?: ScrollToOptions) => Promise<HTMLElement | false>;
|
|
187
|
+
export interface NeoListSelectMethods<Value = unknown> {
|
|
168
188
|
/**
|
|
169
189
|
* Select an item in the list.
|
|
170
|
-
* @param index - The index of the item to select.
|
|
171
190
|
*
|
|
172
191
|
* @returns The selection event if the item was selected, undefined otherwise.
|
|
173
192
|
*/
|
|
@@ -187,12 +206,22 @@ export interface NeoListMethods<Value = unknown> {
|
|
|
187
206
|
*/
|
|
188
207
|
reSelect: () => NeoListSelectEvent | undefined;
|
|
189
208
|
}
|
|
209
|
+
export interface NeoListMethods {
|
|
210
|
+
/**
|
|
211
|
+
* Scroll the list to the top.
|
|
212
|
+
*/
|
|
213
|
+
scrollToTop: (options?: ScrollToOptions) => Promise<HTMLElement | false>;
|
|
214
|
+
/**
|
|
215
|
+
* Scroll the list to the bottom.
|
|
216
|
+
*/
|
|
217
|
+
scrollToBottom: (options?: ScrollToOptions) => Promise<HTMLElement | false>;
|
|
218
|
+
}
|
|
190
219
|
export type NeoListItemOrSection<Value = unknown> = NeoListItem<Value> | NeoListSection<Value>;
|
|
191
|
-
export interface
|
|
220
|
+
export interface NeoListSelectState<Selected = NeoListSelectedItem | NeoListSelectedItem[]> {
|
|
192
221
|
/**
|
|
193
|
-
*
|
|
222
|
+
* The currently selected item(s).
|
|
194
223
|
*/
|
|
195
|
-
|
|
224
|
+
selected?: Selected;
|
|
196
225
|
/**
|
|
197
226
|
* Whether to allow selecting items in the list.
|
|
198
227
|
*/
|
|
@@ -205,10 +234,32 @@ export interface NeoListState<Selected = undefined | NeoListSelectedItem | NeoLi
|
|
|
205
234
|
* Whether to allow deselecting items if it will result in an empty selection.
|
|
206
235
|
*/
|
|
207
236
|
nullable?: boolean;
|
|
237
|
+
}
|
|
238
|
+
export interface NeoListBaseProps {
|
|
208
239
|
/**
|
|
209
|
-
*
|
|
240
|
+
* Whether to dim the opacity of inactive tabs on hover.
|
|
210
241
|
*/
|
|
211
|
-
|
|
242
|
+
dim?: boolean;
|
|
243
|
+
/**
|
|
244
|
+
* Whether to display a shadow when scrolling content.
|
|
245
|
+
*
|
|
246
|
+
* @default true
|
|
247
|
+
*/
|
|
248
|
+
shadow?: boolean;
|
|
249
|
+
/**
|
|
250
|
+
* Overrides the default scrollbars.
|
|
251
|
+
*/
|
|
252
|
+
scrollbar?: boolean;
|
|
253
|
+
/**
|
|
254
|
+
* Whether to round the corners of the list items.
|
|
255
|
+
*/
|
|
256
|
+
rounded?: BorderRadiusInput;
|
|
257
|
+
}
|
|
258
|
+
export interface NeoListState<Item = NeoListItemOrSection> {
|
|
259
|
+
/**
|
|
260
|
+
* List items to display.
|
|
261
|
+
*/
|
|
262
|
+
items?: Item[];
|
|
212
263
|
/**
|
|
213
264
|
* Optional filter to highlight text.
|
|
214
265
|
*/
|
|
@@ -217,21 +268,27 @@ export interface NeoListState<Selected = undefined | NeoListSelectedItem | NeoLi
|
|
|
217
268
|
* A filter function to apply to each item in the list.
|
|
218
269
|
* @param item
|
|
219
270
|
*/
|
|
220
|
-
filter?: (item:
|
|
271
|
+
filter?: (item: Item) => boolean;
|
|
221
272
|
/**
|
|
222
273
|
* A sort function to apply to the list items.
|
|
223
274
|
* @param a
|
|
224
275
|
* @param b
|
|
225
276
|
*/
|
|
226
|
-
sort?: (a:
|
|
277
|
+
sort?: (a: Item, b: Item) => number;
|
|
278
|
+
/**
|
|
279
|
+
* Inverts the flow of the list (flex-direction: column-reverse).
|
|
280
|
+
*
|
|
281
|
+
* @default false
|
|
282
|
+
*/
|
|
283
|
+
flip?: boolean;
|
|
227
284
|
/**
|
|
228
285
|
* If the list is currently loading additional items.
|
|
229
286
|
*/
|
|
230
287
|
loading?: boolean;
|
|
231
288
|
/**
|
|
232
|
-
* If the list
|
|
289
|
+
* If the list is currently being scrolled.
|
|
233
290
|
*/
|
|
234
|
-
|
|
291
|
+
scrolling?: boolean;
|
|
235
292
|
/**
|
|
236
293
|
* Disable all items in the list.
|
|
237
294
|
*/
|
|
@@ -241,16 +298,25 @@ export interface NeoListState<Selected = undefined | NeoListSelectedItem | NeoLi
|
|
|
241
298
|
*/
|
|
242
299
|
readonly?: boolean;
|
|
243
300
|
/**
|
|
244
|
-
*
|
|
301
|
+
* Reverse the direction of the item.
|
|
302
|
+
*
|
|
303
|
+
* @default false
|
|
245
304
|
*/
|
|
246
305
|
reverse?: boolean;
|
|
306
|
+
/**
|
|
307
|
+
* Whether to display a divider above items in the list.
|
|
308
|
+
* If an item divider option is set, it will take precedence over the list divider.
|
|
309
|
+
*
|
|
310
|
+
* @default false
|
|
311
|
+
*/
|
|
312
|
+
divider?: boolean;
|
|
247
313
|
}
|
|
248
|
-
export type NeoListContext<Selected = NeoListSelectedItem | NeoListSelectedItem[]> = NeoListState<Selected> & NeoListMethods
|
|
249
|
-
export type NeoListProps<Value = unknown, Tag extends keyof HTMLElementTagNameMap = 'ul', Selected = NeoListSelectedItem | NeoListSelectedItem[]
|
|
314
|
+
export type NeoListContext<Selected = NeoListSelectedItem | NeoListSelectedItem[], Value = unknown> = NeoListState & NeoListSelectState<Selected> & NeoListMethods & NeoListSelectMethods<Value>;
|
|
315
|
+
export type NeoListProps<Value = unknown, Tag extends keyof HTMLElementTagNameMap = 'ul', Selected = NeoListSelectedItem | NeoListSelectedItem[], Context = NeoListContext<Selected>> = {
|
|
250
316
|
/**
|
|
251
317
|
* Optional snippet to display in place of each list item.
|
|
252
318
|
*/
|
|
253
|
-
item?: NeoListItemRender<Value>;
|
|
319
|
+
item?: NeoListItemRender<Value, 'li', Context>;
|
|
254
320
|
/**
|
|
255
321
|
* Optional snippet to display in place of each list section.
|
|
256
322
|
*/
|
|
@@ -258,23 +324,23 @@ export type NeoListProps<Value = unknown, Tag extends keyof HTMLElementTagNameMa
|
|
|
258
324
|
/**
|
|
259
325
|
* Optional snippet to display when the list is empty.
|
|
260
326
|
*/
|
|
261
|
-
empty?: Snippet<[
|
|
327
|
+
empty?: Snippet<[Context]>;
|
|
262
328
|
/**
|
|
263
329
|
* Optional snippet to display in place of the loading indicator.
|
|
264
330
|
*/
|
|
265
|
-
loader?: Snippet<[
|
|
331
|
+
loader?: Snippet<[Context]>;
|
|
266
332
|
/**
|
|
267
333
|
* Optional snippet to display after the list.
|
|
268
334
|
*/
|
|
269
|
-
after?: Snippet<[
|
|
335
|
+
after?: Snippet<[Context]>;
|
|
270
336
|
/**
|
|
271
337
|
* Optional snippet to display before the list.
|
|
272
338
|
*/
|
|
273
|
-
before?: Snippet<[
|
|
339
|
+
before?: Snippet<[Context]>;
|
|
274
340
|
/**
|
|
275
341
|
* Optional snippet to display inside the list.
|
|
276
342
|
*/
|
|
277
|
-
children?: Snippet<[
|
|
343
|
+
children?: Snippet<[Context]>;
|
|
278
344
|
/**
|
|
279
345
|
* Transition function to apply when removing items from the list.
|
|
280
346
|
* Note: unique `id` is required for entering/leaving transitions.
|
|
@@ -290,26 +356,18 @@ export type NeoListProps<Value = unknown, Tag extends keyof HTMLElementTagNameMa
|
|
|
290
356
|
* Note: unique `id` is required for entering/leaving transitions.
|
|
291
357
|
*/
|
|
292
358
|
out?: HTMLTransitionProps['out'];
|
|
293
|
-
/**
|
|
294
|
-
* Whether to dim the opacity of inactive tabs on hover.
|
|
295
|
-
*/
|
|
296
|
-
dim?: boolean;
|
|
297
|
-
/**
|
|
298
|
-
* Whether to display a shadow when scrolling content.
|
|
299
|
-
*
|
|
300
|
-
* @default true
|
|
301
|
-
*/
|
|
302
|
-
shadow?: boolean;
|
|
303
|
-
/**
|
|
304
|
-
* Overrides the default scrollbars.
|
|
305
|
-
*/
|
|
306
|
-
scrollbar?: boolean;
|
|
307
359
|
/**
|
|
308
360
|
* Whether to scroll to the bottom when loading additional items.
|
|
309
361
|
*
|
|
310
362
|
* @default false
|
|
311
363
|
*/
|
|
312
364
|
scrollToLoader?: boolean;
|
|
365
|
+
/**
|
|
366
|
+
* Scroll tolerance when determining if the list is scrolled to the top or bottom (in pixels).
|
|
367
|
+
*
|
|
368
|
+
* @default 1
|
|
369
|
+
*/
|
|
370
|
+
scrollTolerance?: number;
|
|
313
371
|
/**
|
|
314
372
|
* Optional flex strategy for the container
|
|
315
373
|
*/
|
|
@@ -332,6 +390,16 @@ export type NeoListProps<Value = unknown, Tag extends keyof HTMLElementTagNameMa
|
|
|
332
390
|
* @param event
|
|
333
391
|
*/
|
|
334
392
|
onSelect?: (event: NeoListSelectEvent<Selected>) => void;
|
|
393
|
+
/**
|
|
394
|
+
* Event listener that fires when the list is scrolled to the top.
|
|
395
|
+
* @param event
|
|
396
|
+
*/
|
|
397
|
+
onScrollTop?: (event?: SvelteEvent) => void;
|
|
398
|
+
/**
|
|
399
|
+
* Event listener that fires when the list is scrolled to the bottom.
|
|
400
|
+
* @param event
|
|
401
|
+
*/
|
|
402
|
+
onScrollBottom?: (event?: SvelteEvent) => void;
|
|
335
403
|
/**
|
|
336
404
|
* The props to pass to the list container.
|
|
337
405
|
*/
|
|
@@ -339,7 +407,7 @@ export type NeoListProps<Value = unknown, Tag extends keyof HTMLElementTagNameMa
|
|
|
339
407
|
/**
|
|
340
408
|
* The props to pass to the loader.
|
|
341
409
|
*/
|
|
342
|
-
loaderProps?: NeoListBaseLoaderProps
|
|
410
|
+
loaderProps?: Partial<NeoListBaseLoaderProps>;
|
|
343
411
|
/**
|
|
344
412
|
* Optional props to pass to the button.
|
|
345
413
|
*/
|
|
@@ -351,12 +419,13 @@ export type NeoListProps<Value = unknown, Tag extends keyof HTMLElementTagNameMa
|
|
|
351
419
|
/**
|
|
352
420
|
* Optional props to pass to the list item.
|
|
353
421
|
*/
|
|
354
|
-
itemProps?: Omit<NeoListBaseItemProps<Value,
|
|
422
|
+
itemProps?: Partial<Omit<NeoListBaseItemProps<Value, Context>, 'buttonProps'>>;
|
|
355
423
|
/**
|
|
356
424
|
* Optional props to pass to the list section.
|
|
357
425
|
*/
|
|
358
426
|
sectionProps?: NeoListBaseSectionProps<Value, Tag>;
|
|
359
|
-
} & HTMLRefProps & HTMLNeoBaseElement<HTMLElementTagNameMap[Tag]> & NeoListState<Selected>;
|
|
360
|
-
export type NeoListHTMLElement<Value = unknown, Tag extends keyof HTMLElementTagNameMap = 'ul'> = HTMLNeoBaseElement<HTMLElementTagNameMap[Tag]> & NeoListMethods<Value>;
|
|
427
|
+
} & NeoListBaseProps & HTMLRefProps & HTMLNeoBaseElement<HTMLElementTagNameMap[Tag]> & NeoListState & NeoListSelectState<Selected>;
|
|
428
|
+
export type NeoListHTMLElement<Value = unknown, Tag extends keyof HTMLElementTagNameMap = 'ul'> = HTMLNeoBaseElement<HTMLElementTagNameMap[Tag]> & NeoListMethods & NeoListSelectMethods<Value>;
|
|
361
429
|
export declare function findByIdInList<Value = unknown>(selection: NeoListSelectedItem<Value>, array: NeoListItemOrSection<Value>[]): NeoListSelectedItem<Value> | undefined;
|
|
362
430
|
export declare function findByValueInList<Value = unknown>(value: Value, array: NeoListItemOrSection<Value>[]): NeoListSelectedItem<Value> | undefined;
|
|
431
|
+
export declare function findByValuesInList<Value = unknown>(values: Value | Value[], array: NeoListItemOrSection<Value>[]): undefined | NeoListSelectedItem<Value> | NeoListSelectedItem<Value>[];
|
|
@@ -3,6 +3,13 @@ export function showDivider(divider, position = 'top') {
|
|
|
3
3
|
return divider?.[position];
|
|
4
4
|
return divider;
|
|
5
5
|
}
|
|
6
|
+
export function isButtonTag(tag) {
|
|
7
|
+
if (typeof tag === 'string')
|
|
8
|
+
return false;
|
|
9
|
+
if ('tag' in tag && (tag.tag === 'button' || tag.tag === 'a'))
|
|
10
|
+
return true;
|
|
11
|
+
return 'href' in tag || 'onclick' in tag;
|
|
12
|
+
}
|
|
6
13
|
export const isSection = (item) => 'items' in item;
|
|
7
14
|
export function findByIdInList(selection, array) {
|
|
8
15
|
const result = { index: -1 };
|
|
@@ -51,3 +58,14 @@ export function findByValueInList(value, array) {
|
|
|
51
58
|
});
|
|
52
59
|
return search ? result : undefined;
|
|
53
60
|
}
|
|
61
|
+
export function findByValuesInList(values, array) {
|
|
62
|
+
if (!Array.isArray(values))
|
|
63
|
+
return findByValueInList(values, array);
|
|
64
|
+
const result = [];
|
|
65
|
+
values.forEach((value) => {
|
|
66
|
+
const item = findByValueInList(value, array);
|
|
67
|
+
if (item)
|
|
68
|
+
result.push(item);
|
|
69
|
+
});
|
|
70
|
+
return result;
|
|
71
|
+
}
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import type { Snippet } from 'svelte';
|
|
2
|
+
import type { NeoButtonProps } from '../buttons/neo-button.model.js';
|
|
3
|
+
import type { NeoDividerProps } from '../divider/neo-divider.model.js';
|
|
4
|
+
import type { NeoListBaseItemProps } from './neo-list-base-item.model.js';
|
|
5
|
+
import type { NeoListBaseLoaderProps } from './neo-list-base-loader.model.js';
|
|
6
|
+
import type { NeoListBaseSectionProps } from './neo-list-base-section.model.js';
|
|
7
|
+
import type { NeoListBaseProps, NeoListItem, NeoListItemRender, NeoListMethods, NeoListSectionRender, NeoListState } from './neo-list.model.js';
|
|
8
|
+
import type { HTMLTransitionProps } from '../utils/action.utils.js';
|
|
9
|
+
import type { HTMLNeoBaseElement, HTMLRefProps, HTMLTagProps, SvelteEvent } from '../utils/html-element.utils.js';
|
|
10
|
+
import type { SizeInput } from '../utils/style.utils.js';
|
|
11
|
+
export type NeoSimpleListContext = NeoListState<NeoListItem> & NeoListMethods;
|
|
12
|
+
export type NeoSimpleListProps<Value = unknown, Tag extends keyof HTMLElementTagNameMap = 'ul', Context = NeoSimpleListContext> = {
|
|
13
|
+
/**
|
|
14
|
+
* Optional snippet to display in place of each list item.
|
|
15
|
+
*/
|
|
16
|
+
item?: NeoListItemRender<Value, 'li', Context>;
|
|
17
|
+
/**
|
|
18
|
+
* Optional snippet to display in place of each list section.
|
|
19
|
+
*/
|
|
20
|
+
section?: NeoListSectionRender<Value>;
|
|
21
|
+
/**
|
|
22
|
+
* Optional snippet to display when the list is empty.
|
|
23
|
+
*/
|
|
24
|
+
empty?: Snippet<[Context]>;
|
|
25
|
+
/**
|
|
26
|
+
* Optional snippet to display in place of the loading indicator.
|
|
27
|
+
*/
|
|
28
|
+
loader?: Snippet<[Context]>;
|
|
29
|
+
/**
|
|
30
|
+
* Optional snippet to display after the list.
|
|
31
|
+
*/
|
|
32
|
+
after?: Snippet<[Context]>;
|
|
33
|
+
/**
|
|
34
|
+
* Optional snippet to display before the list.
|
|
35
|
+
*/
|
|
36
|
+
before?: Snippet<[Context]>;
|
|
37
|
+
/**
|
|
38
|
+
* Optional snippet to display inside the list.
|
|
39
|
+
*/
|
|
40
|
+
children?: Snippet<[Context]>;
|
|
41
|
+
/**
|
|
42
|
+
* The number of items to keep rendered before and after the visible items.
|
|
43
|
+
*
|
|
44
|
+
* @default 3
|
|
45
|
+
*/
|
|
46
|
+
buffer?: number;
|
|
47
|
+
/**
|
|
48
|
+
* The average height of each item in the list.
|
|
49
|
+
*/
|
|
50
|
+
itemHeight?: number;
|
|
51
|
+
/**
|
|
52
|
+
* Transition function to apply when adding items to the list.
|
|
53
|
+
* Note: unique `id` is required for entering/leaving transitions.
|
|
54
|
+
*/
|
|
55
|
+
in?: HTMLTransitionProps['in'];
|
|
56
|
+
/**
|
|
57
|
+
* Transition function to apply when removing items from the list.
|
|
58
|
+
* Note: unique `id` is required for entering/leaving transitions.
|
|
59
|
+
*/
|
|
60
|
+
out?: HTMLTransitionProps['out'];
|
|
61
|
+
/**
|
|
62
|
+
* Whether to scroll to the bottom when loading additional items.
|
|
63
|
+
*
|
|
64
|
+
* @default false
|
|
65
|
+
*/
|
|
66
|
+
scrollToLoader?: boolean;
|
|
67
|
+
/**
|
|
68
|
+
* Scroll tolerance when determining if the list is scrolled to the top or bottom (in pixels).
|
|
69
|
+
*
|
|
70
|
+
* @default 1
|
|
71
|
+
*/
|
|
72
|
+
scrollTolerance?: number;
|
|
73
|
+
/**
|
|
74
|
+
* Optional flex strategy for the container
|
|
75
|
+
*/
|
|
76
|
+
flex?: CSSStyleDeclaration['flex'];
|
|
77
|
+
/**
|
|
78
|
+
* Optional list width constraints.
|
|
79
|
+
*/
|
|
80
|
+
width?: SizeInput<'width'>;
|
|
81
|
+
/**
|
|
82
|
+
* Optional list height constraints.
|
|
83
|
+
*/
|
|
84
|
+
height?: SizeInput<'height'>;
|
|
85
|
+
/**
|
|
86
|
+
* The HTML tag to use for the list.
|
|
87
|
+
* @default 'ul'
|
|
88
|
+
*/
|
|
89
|
+
tag?: Tag | keyof HTMLElementTagNameMap;
|
|
90
|
+
/**
|
|
91
|
+
* Event listener that fires when the list is scrolled to the top.
|
|
92
|
+
* @param event
|
|
93
|
+
*/
|
|
94
|
+
onScrollTop?: (event?: SvelteEvent) => void;
|
|
95
|
+
/**
|
|
96
|
+
* Event listener that fires when the list is scrolled to the bottom.
|
|
97
|
+
* @param event
|
|
98
|
+
*/
|
|
99
|
+
onScrollBottom?: (event?: SvelteEvent) => void;
|
|
100
|
+
/**
|
|
101
|
+
* The props to pass to the list container.
|
|
102
|
+
*/
|
|
103
|
+
containerProps?: HTMLNeoBaseElement & HTMLTagProps;
|
|
104
|
+
/**
|
|
105
|
+
* The props to pass to the loader.
|
|
106
|
+
*/
|
|
107
|
+
loaderProps?: Partial<NeoListBaseLoaderProps>;
|
|
108
|
+
/**
|
|
109
|
+
* Optional props to pass to the button.
|
|
110
|
+
*/
|
|
111
|
+
buttonProps?: NeoButtonProps;
|
|
112
|
+
/**
|
|
113
|
+
* Optional props to pass to the divider.
|
|
114
|
+
*/
|
|
115
|
+
dividerProps?: NeoDividerProps;
|
|
116
|
+
/**
|
|
117
|
+
* Optional props to pass to the list item.
|
|
118
|
+
*/
|
|
119
|
+
itemProps?: Partial<Omit<NeoListBaseItemProps<Value, Context>, 'buttonProps'>>;
|
|
120
|
+
/**
|
|
121
|
+
* Optional props to pass to the list section.
|
|
122
|
+
*/
|
|
123
|
+
sectionProps?: NeoListBaseSectionProps<Value, Tag>;
|
|
124
|
+
} & NeoListBaseProps & HTMLRefProps & HTMLNeoBaseElement<HTMLElementTagNameMap[Tag]> & NeoListState<NeoListItem>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import type { NeoListBaseProps } from '../index.js';
|
|
2
|
+
import type { Snippet } from 'svelte';
|
|
3
|
+
import type { HTMLTransitionProps } from '../utils/action.utils.js';
|
|
4
|
+
import type { HTMLNeoBaseElement, HTMLRefProps, HTMLTagProps } from '../utils/html-element.utils.js';
|
|
5
|
+
export interface NeoVirtualItem<T> {
|
|
6
|
+
id: string | number;
|
|
7
|
+
index: number;
|
|
8
|
+
item: T;
|
|
9
|
+
}
|
|
10
|
+
export interface NeoVirtualContext<T> {
|
|
11
|
+
items: Array<T>;
|
|
12
|
+
visible: Array<NeoVirtualItem<T>>;
|
|
13
|
+
start: number;
|
|
14
|
+
end: number;
|
|
15
|
+
}
|
|
16
|
+
export type NeoVirtualKey<T> = (item: T) => string | number | undefined;
|
|
17
|
+
export declare const defaultVirtualKey: NeoVirtualKey<unknown>;
|
|
18
|
+
export interface NeoVirtualListProps<T, Tag extends keyof HTMLElementTagNameMap = 'ul'> extends Omit<HTMLNeoBaseElement<HTMLElementTagNameMap[Tag]>, 'children'>, HTMLRefProps, HTMLTransitionProps, NeoListBaseProps {
|
|
19
|
+
/**
|
|
20
|
+
* Snippet to render each item in the list.
|
|
21
|
+
*/
|
|
22
|
+
children: Snippet<[NeoVirtualItem<T>, NeoVirtualContext<T>]>;
|
|
23
|
+
/**
|
|
24
|
+
* Snippet to render before all items in the list.
|
|
25
|
+
*/
|
|
26
|
+
before?: Snippet<[NeoVirtualContext<T>]>;
|
|
27
|
+
/**
|
|
28
|
+
* Snippet to render after all items in the list.
|
|
29
|
+
*/
|
|
30
|
+
after?: Snippet<[NeoVirtualContext<T>]>;
|
|
31
|
+
/**
|
|
32
|
+
* The tag name of the element to render the list as.
|
|
33
|
+
*
|
|
34
|
+
* @default 'ul'
|
|
35
|
+
*/
|
|
36
|
+
tag?: Tag | keyof HTMLElementTagNameMap;
|
|
37
|
+
/**
|
|
38
|
+
* The items to render in the list.
|
|
39
|
+
*/
|
|
40
|
+
items: Array<T>;
|
|
41
|
+
/**
|
|
42
|
+
* The number of items to keep rendered before and after the visible items.
|
|
43
|
+
*
|
|
44
|
+
* @default 3
|
|
45
|
+
*/
|
|
46
|
+
buffer?: number;
|
|
47
|
+
/**
|
|
48
|
+
* The average height of each item in the list.
|
|
49
|
+
*/
|
|
50
|
+
itemHeight?: number;
|
|
51
|
+
/**
|
|
52
|
+
* A function to extract a unique key from each item in the list.
|
|
53
|
+
*
|
|
54
|
+
* @default (item) => item?.id
|
|
55
|
+
*/
|
|
56
|
+
key?: NeoVirtualKey<T>;
|
|
57
|
+
/**
|
|
58
|
+
* Optional properties to pass to the content element wrapping item rows.
|
|
59
|
+
*/
|
|
60
|
+
contentProps?: HTMLNeoBaseElement & HTMLTagProps;
|
|
61
|
+
/**
|
|
62
|
+
* Optional properties to pass to the tag element wrapping the before snippet.
|
|
63
|
+
*/
|
|
64
|
+
beforeProps?: HTMLNeoBaseElement & HTMLTagProps;
|
|
65
|
+
/**
|
|
66
|
+
* Optional properties to pass to the element wrapping the after snippet.
|
|
67
|
+
*/
|
|
68
|
+
afterProps?: HTMLNeoBaseElement & HTMLTagProps;
|
|
69
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import type { NeoLoadingMatrixProps } from './neo-loading-matrix.model.js';
|
|
3
3
|
|
|
4
|
-
import
|
|
4
|
+
import NeoIconLoadingMatrix from '../icons/NeoIconLoadingMatrix.svelte';
|
|
5
5
|
import { toSize } from '../utils/style.utils.js';
|
|
6
6
|
|
|
7
7
|
const {
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
style:--neo-loader-min-height={height?.min}
|
|
39
39
|
{...rest}
|
|
40
40
|
>
|
|
41
|
-
<
|
|
41
|
+
<NeoIconLoadingMatrix class="neo-loader" />
|
|
42
42
|
</svelte:element>
|
|
43
43
|
|
|
44
44
|
<style>.neo-loading-matrix {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Component, Snippet } from 'svelte';
|
|
2
2
|
import type { NeoSuspenseProps } from './neo-suspense.model.js';
|
|
3
|
-
export type NeoLazyProps<Props extends Record<string, any> =
|
|
3
|
+
export type NeoLazyProps<Props extends Record<string, any> = any, Exports extends Record<string, any> = any, Bindings extends keyof Props | '' = string> = {
|
|
4
4
|
/**
|
|
5
5
|
* The component to lazy load.
|
|
6
6
|
*/
|
|
@@ -10,7 +10,7 @@ export type NeoLazyProps<Props extends Record<string, any> = object, Exports ext
|
|
|
10
10
|
/**
|
|
11
11
|
* Optional props to pass to the component.
|
|
12
12
|
*/
|
|
13
|
-
props?:
|
|
13
|
+
props?: Props;
|
|
14
14
|
/**
|
|
15
15
|
* Children to render once the component is loaded.
|
|
16
16
|
*/
|