@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
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
<script lang="ts">
|
|
2
|
+
import type { NeoButtonGroupContext } from './neo-button-group.model.js';
|
|
3
|
+
import type { NeoButtonRowItem, NeoButtonRowProps } from './neo-button-row.model.js';
|
|
4
|
+
import type { NeoMenuItem } from '../floating/menu/neo-menu-list-item.model.js';
|
|
5
|
+
|
|
6
|
+
import { watch } from '@dvcol/svelte-utils/watch';
|
|
7
|
+
import { tick } from 'svelte';
|
|
8
|
+
import { innerHeight, innerWidth } from 'svelte/reactivity/window';
|
|
9
|
+
|
|
10
|
+
import { isButtonRowDivider } from './neo-button-row.model.js';
|
|
11
|
+
import NeoButton from './NeoButton.svelte';
|
|
12
|
+
import NeoButtonGroup from './NeoButtonGroup.svelte';
|
|
13
|
+
import NeoDivider from '../divider/NeoDivider.svelte';
|
|
14
|
+
import NeoMenu from '../floating/menu/NeoMenu.svelte';
|
|
15
|
+
import NeoIconBouncingDots from '../icons/NeoIconBouncingDots.svelte';
|
|
16
|
+
|
|
17
|
+
let {
|
|
18
|
+
// Snippets
|
|
19
|
+
children: innerChildren,
|
|
20
|
+
collapsed,
|
|
21
|
+
|
|
22
|
+
// State
|
|
23
|
+
items: buttons = [],
|
|
24
|
+
threshold = $bindable(0),
|
|
25
|
+
|
|
26
|
+
// Group props
|
|
27
|
+
ref = $bindable(),
|
|
28
|
+
offsetWidth = $bindable(),
|
|
29
|
+
offsetHeight = $bindable(),
|
|
30
|
+
|
|
31
|
+
// Button props
|
|
32
|
+
hovered = $bindable(false),
|
|
33
|
+
focused = $bindable(false),
|
|
34
|
+
|
|
35
|
+
// Other props
|
|
36
|
+
menuProps,
|
|
37
|
+
iconProps,
|
|
38
|
+
buttonProps,
|
|
39
|
+
collapseProps,
|
|
40
|
+
...rest
|
|
41
|
+
}: NeoButtonRowProps = $props();
|
|
42
|
+
|
|
43
|
+
function buttonRowItemToMenuItem(item: NeoButtonRowItem, next?: NeoButtonRowItem): NeoMenuItem | undefined {
|
|
44
|
+
if (isButtonRowDivider(item)) return;
|
|
45
|
+
return {
|
|
46
|
+
id: item.id?.toString(),
|
|
47
|
+
label: item.label,
|
|
48
|
+
value: item.value,
|
|
49
|
+
before: item.icon,
|
|
50
|
+
reverse: item.reverse,
|
|
51
|
+
disabled: item.disabled,
|
|
52
|
+
readonly: item.readonly,
|
|
53
|
+
color: item.color || undefined,
|
|
54
|
+
href: item.href,
|
|
55
|
+
onclick: item.onclick,
|
|
56
|
+
divider: {
|
|
57
|
+
bottom: next && isButtonRowDivider(next),
|
|
58
|
+
},
|
|
59
|
+
...(item.menuProps ?? {}),
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
const visible = $derived(threshold ? buttons?.slice(0, -threshold) : buttons);
|
|
64
|
+
const hidden = $derived(threshold ? buttons?.slice(-threshold) : []);
|
|
65
|
+
const items = $derived(
|
|
66
|
+
hidden?.map((t, i, arr) => buttonRowItemToMenuItem(t, arr[i + 1]))
|
|
67
|
+
.filter(Boolean) as NeoMenuItem[],
|
|
68
|
+
);
|
|
69
|
+
|
|
70
|
+
const isOverflown = (el?: Element) => {
|
|
71
|
+
if (!el || !buttons?.length) return false;
|
|
72
|
+
if (rest.vertical) return el.scrollHeight > el.clientHeight;
|
|
73
|
+
return el.scrollWidth > el.clientWidth;
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
const autoSize = async (el = ref) => {
|
|
77
|
+
threshold = 0;
|
|
78
|
+
await tick();
|
|
79
|
+
if (!el || !buttons?.length) return;
|
|
80
|
+
while (threshold < buttons.length && isOverflown(el)) {
|
|
81
|
+
threshold += 1;
|
|
82
|
+
await tick();
|
|
83
|
+
}
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
watch(
|
|
87
|
+
() => {
|
|
88
|
+
void autoSize();
|
|
89
|
+
},
|
|
90
|
+
() => [
|
|
91
|
+
rest.vertical,
|
|
92
|
+
offsetWidth,
|
|
93
|
+
offsetHeight,
|
|
94
|
+
innerWidth.current,
|
|
95
|
+
innerHeight.current,
|
|
96
|
+
],
|
|
97
|
+
);
|
|
98
|
+
</script>
|
|
99
|
+
|
|
100
|
+
<NeoButtonGroup bind:ref bind:offsetWidth bind:offsetHeight nowrap {...rest}>
|
|
101
|
+
{#snippet children(ctx: NeoButtonGroupContext)}
|
|
102
|
+
{@render innerChildren?.(ctx, { items, threshold, menuProps, collapseProps, iconProps })}
|
|
103
|
+
|
|
104
|
+
{#each visible as _props, index (_props.id ?? index)}
|
|
105
|
+
{#if (isButtonRowDivider(_props))}
|
|
106
|
+
<NeoDivider vertical={!rest.vertical} {..._props} />
|
|
107
|
+
{:else}
|
|
108
|
+
<NeoButton {...buttonProps} {..._props} />
|
|
109
|
+
{/if}
|
|
110
|
+
{/each}
|
|
111
|
+
|
|
112
|
+
{#if items?.length && collapsed}
|
|
113
|
+
{@render collapsed(ctx, { items, threshold, menuProps, collapseProps, iconProps })}
|
|
114
|
+
{:else if items?.length}
|
|
115
|
+
<div class="neo-button-row-collapse">
|
|
116
|
+
<NeoMenu {items} openOnClick {...menuProps}>
|
|
117
|
+
<NeoButton bind:hovered bind:focused {...collapseProps}>
|
|
118
|
+
{#snippet icon()}
|
|
119
|
+
<NeoIconBouncingDots bounce={hovered || focused} {...iconProps} />
|
|
120
|
+
{/snippet}
|
|
121
|
+
</NeoButton>
|
|
122
|
+
</NeoMenu>
|
|
123
|
+
</div>
|
|
124
|
+
{/if}
|
|
125
|
+
{/snippet}
|
|
126
|
+
</NeoButtonGroup>
|
|
127
|
+
|
|
128
|
+
<style>.neo-button-row-collapse {
|
|
129
|
+
display: contents;
|
|
130
|
+
}
|
|
131
|
+
.neo-button-row-collapse :global(> .neo-tooltip-trigger) {
|
|
132
|
+
width: 100%;
|
|
133
|
+
height: 100%;
|
|
134
|
+
}
|
|
135
|
+
.neo-button-row-collapse :global(> .neo-tooltip-trigger) :global(svg) {
|
|
136
|
+
margin-inline: 0.25rem;
|
|
137
|
+
}</style>
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { NeoButtonRowProps } from './neo-button-row.model.js';
|
|
2
|
+
declare const NeoButtonRow: import("svelte").Component<NeoButtonRowProps, {}, "ref" | "hovered" | "focused" | "offsetHeight" | "offsetWidth" | "threshold">;
|
|
3
|
+
type NeoButtonRow = ReturnType<typeof NeoButtonRow>;
|
|
4
|
+
export default NeoButtonRow;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import type { NeoIconButtonProps } from './neo-icon-button.model.js';
|
|
3
3
|
|
|
4
4
|
import NeoButton from './NeoButton.svelte';
|
|
5
|
-
import
|
|
5
|
+
import NeoIconCancel from '../icons/NeoIconCancel.svelte';
|
|
6
6
|
|
|
7
7
|
let {
|
|
8
8
|
// Button props
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
</script>
|
|
20
20
|
|
|
21
21
|
{#snippet icon()}
|
|
22
|
-
<
|
|
22
|
+
<NeoIconCancel {...iconProps} />
|
|
23
23
|
{/snippet}
|
|
24
24
|
|
|
25
25
|
<div class="neo-cancel-button">
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import type { NeoCheckboxButtonProps } from './neo-checkbox-button.model.js';
|
|
3
3
|
|
|
4
|
-
import
|
|
4
|
+
import NeoIconCheckbox from '../icons/NeoIconCheckbox.svelte';
|
|
5
|
+
import { computeBorderRadius } from '../utils/border.utils.js';
|
|
5
6
|
import { getColorVariable } from '../utils/colors.utils.js';
|
|
6
7
|
import { coerce, computeShadowElevation, DefaultShadowShallowElevation, DefaultShallowMinMaxElevation } from '../utils/shadow.utils.js';
|
|
7
8
|
|
|
@@ -61,11 +62,12 @@
|
|
|
61
62
|
style:--neo-checkbox-color={getColorVariable(color)}
|
|
62
63
|
style:--neo-checkbox-box-shadow={boxShadow}
|
|
63
64
|
style:--neo-checkbox-checked-shadow={checkedShadow}
|
|
65
|
+
style:--neo-checkbox-border-radius={computeBorderRadius(rounded)}
|
|
64
66
|
{onclick}
|
|
65
67
|
{...rest}
|
|
66
68
|
>
|
|
67
69
|
{@render children?.()}
|
|
68
|
-
<
|
|
70
|
+
<NeoIconCheckbox circle={!!rounded} indeterminate={!!indeterminate} checked={!!checked} enter={touched} />
|
|
69
71
|
</button>
|
|
70
72
|
|
|
71
73
|
<style>.neo-checkbox-button {
|
|
@@ -79,7 +81,7 @@
|
|
|
79
81
|
background-color: color-mix(in srgb, transparent, currentcolor 1%);
|
|
80
82
|
background-clip: padding-box;
|
|
81
83
|
border: var(--neo-checkbox-border-width, var(--neo-border-width, 1px)) var(--neo-checkbox-border-color, transparent) solid;
|
|
82
|
-
border-radius: var(--neo-border-radius-xs);
|
|
84
|
+
border-radius: var(--neo-checkbox-border-radius, var(--neo-border-radius-xs));
|
|
83
85
|
outline: none;
|
|
84
86
|
box-shadow: var(--neo-checkbox-box-shadow, var(--neo-box-shadow-raised-2));
|
|
85
87
|
cursor: pointer;
|
|
@@ -151,7 +153,7 @@
|
|
|
151
153
|
background-clip: padding-box;
|
|
152
154
|
border-color: var(--neo-skeleton-color);
|
|
153
155
|
opacity: 1;
|
|
154
|
-
transition: background-color 1s ease, color 0.3333333333s ease, border-color 1s ease, opacity 1s ease;
|
|
156
|
+
transition: border-radius 0.3333333333s ease, background-color 1s ease, color 0.3333333333s ease, border-color 1s ease, opacity 1s ease;
|
|
155
157
|
animation: skeleton 3s var(--neo-transition-skeleton) infinite;
|
|
156
158
|
animation-delay: 1s;
|
|
157
159
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { NeoCheckboxButtonProps } from './neo-checkbox-button.model.js';
|
|
2
|
-
declare const NeoCheckboxButton: import("svelte").Component<NeoCheckboxButtonProps, {}, "checked" | "
|
|
2
|
+
declare const NeoCheckboxButton: import("svelte").Component<NeoCheckboxButtonProps, {}, "checked" | "indeterminate" | "touched">;
|
|
3
3
|
type NeoCheckboxButton = ReturnType<typeof NeoCheckboxButton>;
|
|
4
4
|
export default NeoCheckboxButton;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
|
-
import type {
|
|
2
|
+
import type { NeoCloseButtonProps } from './neo-close-button.model.js';
|
|
3
3
|
|
|
4
4
|
import NeoButton from './NeoButton.svelte';
|
|
5
|
-
import
|
|
5
|
+
import NeoIconClose from '../icons/NeoIconClose.svelte';
|
|
6
|
+
import { getColorVariable } from '../utils/index.js';
|
|
6
7
|
|
|
7
8
|
let {
|
|
8
9
|
// Button props
|
|
@@ -11,26 +12,56 @@
|
|
|
11
12
|
hovered = $bindable(false),
|
|
12
13
|
focused = $bindable(false),
|
|
13
14
|
|
|
15
|
+
// States
|
|
16
|
+
hoverColor,
|
|
17
|
+
size,
|
|
18
|
+
inline,
|
|
19
|
+
|
|
14
20
|
// Other Props
|
|
15
21
|
iconProps,
|
|
16
22
|
...rest
|
|
17
|
-
}:
|
|
23
|
+
}: NeoCloseButtonProps = $props();
|
|
18
24
|
|
|
25
|
+
const iconSize = $derived.by(() => {
|
|
26
|
+
switch (size) {
|
|
27
|
+
case 'sm':
|
|
28
|
+
return 0.6875;
|
|
29
|
+
case 'md':
|
|
30
|
+
return 0.75;
|
|
31
|
+
case 'lg':
|
|
32
|
+
return 1;
|
|
33
|
+
default:
|
|
34
|
+
return 0.875;
|
|
35
|
+
}
|
|
36
|
+
});
|
|
19
37
|
</script>
|
|
20
38
|
|
|
21
39
|
{#snippet icon()}
|
|
22
|
-
<
|
|
40
|
+
<NeoIconClose size="{iconSize}rem" {...iconProps} />
|
|
23
41
|
{/snippet}
|
|
24
42
|
|
|
25
|
-
<div
|
|
43
|
+
<div
|
|
44
|
+
data-size={size}
|
|
45
|
+
class="neo-close-button"
|
|
46
|
+
class:neo-inline={inline}
|
|
47
|
+
style:--neo-close-color={getColorVariable(hoverColor)}
|
|
48
|
+
>
|
|
26
49
|
<NeoButton bind:ref bind:checked bind:hovered bind:focused {icon} {...rest} />
|
|
27
50
|
</div>
|
|
28
51
|
|
|
29
52
|
<style>.neo-close-button {
|
|
30
53
|
display: contents;
|
|
31
|
-
--neo-btn-text-color-hover: var(--neo-close-color
|
|
54
|
+
--neo-btn-text-color-hover: oklch(from var(--neo-close-color) l c h / 75%);
|
|
32
55
|
--neo-btn-text-color-active: var(--neo-close-color, rgb(255 0 0));
|
|
33
56
|
}
|
|
57
|
+
.neo-close-button.neo-inline :global(.neo-button) {
|
|
58
|
+
margin-block: auto;
|
|
59
|
+
}
|
|
60
|
+
.neo-close-button[data-size=md], .neo-close-button[data-size=sm] {
|
|
61
|
+
--neo-btn-padding-empty: var(--neo-btn-close-padding, var(--neo-gap-3xs, 0.3125rem));
|
|
62
|
+
--neo-btn-padding: var(--neo-btn-close-padding, var(--neo-gap-3xs, 0.3125rem));
|
|
63
|
+
--neo-btn-margin: var(--neo-btn-close-margin, var(--neo-gap-3xs, 0.3125rem));
|
|
64
|
+
}
|
|
34
65
|
.neo-close-button > :global(.neo-button) :global(.neo-icon) {
|
|
35
66
|
transition: rotate 0.3s ease-out;
|
|
36
67
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
declare const NeoCloseButton: import("svelte").Component<
|
|
1
|
+
import type { NeoCloseButtonProps } from './neo-close-button.model.js';
|
|
2
|
+
declare const NeoCloseButton: import("svelte").Component<NeoCloseButtonProps, {}, "ref" | "hovered" | "focused" | "checked">;
|
|
3
3
|
type NeoCloseButton = ReturnType<typeof NeoCloseButton>;
|
|
4
4
|
export default NeoCloseButton;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import type { NeoRadioButtonProps } from './neo-radio-button.model.js';
|
|
3
3
|
|
|
4
|
-
import
|
|
4
|
+
import NeoIconRadio from '../icons/NeoIconRadio.svelte';
|
|
5
|
+
import { computeBorderRadius } from '../utils/border.utils.js';
|
|
5
6
|
import { getColorVariable } from '../utils/colors.utils.js';
|
|
6
7
|
import { coerce, computeShadowElevation, DefaultShadowShallowElevation, DefaultShallowMinMaxElevation } from '../utils/shadow.utils.js';
|
|
7
8
|
|
|
@@ -59,11 +60,12 @@
|
|
|
59
60
|
style:--neo-radio-color={getColorVariable(color)}
|
|
60
61
|
style:--neo-radio-box-shadow={boxShadow}
|
|
61
62
|
style:--neo-radio-checked-shadow={checkedShadow}
|
|
63
|
+
style:--neo-radio-border-radius={computeBorderRadius(rounded)}
|
|
62
64
|
{onclick}
|
|
63
65
|
{...rest}
|
|
64
66
|
>
|
|
65
67
|
{@render children?.()}
|
|
66
|
-
<
|
|
68
|
+
<NeoIconRadio circle={!!rounded} scale={rounded ? 0.75 : 0.9} checked={!!checked} enter={touched} />
|
|
67
69
|
</button>
|
|
68
70
|
|
|
69
71
|
<style>.neo-radio-button {
|
|
@@ -77,7 +79,7 @@
|
|
|
77
79
|
background-color: color-mix(in srgb, transparent, currentcolor 1%);
|
|
78
80
|
background-clip: padding-box;
|
|
79
81
|
border: var(--neo-radio-border-width, var(--neo-border-width, 1px)) var(--neo-radio-border-color, transparent) solid;
|
|
80
|
-
border-radius: var(--neo-border-radius-xs);
|
|
82
|
+
border-radius: var(--neo-radio-border-radius, var(--neo-border-radius-xs));
|
|
81
83
|
outline: none;
|
|
82
84
|
box-shadow: var(--neo-radio-box-shadow, var(--neo-box-shadow-raised-2));
|
|
83
85
|
cursor: pointer;
|
|
@@ -152,7 +154,7 @@
|
|
|
152
154
|
background-clip: padding-box;
|
|
153
155
|
border-color: var(--neo-skeleton-color);
|
|
154
156
|
opacity: 1;
|
|
155
|
-
transition: background-color 1s ease, color 0.3333333333s ease, border-color 1s ease, opacity 1s ease;
|
|
157
|
+
transition: border-radius 0.3333333333s ease, background-color 1s ease, color 0.3333333333s ease, border-color 1s ease, opacity 1s ease;
|
|
156
158
|
animation: skeleton 3s var(--neo-transition-skeleton) infinite;
|
|
157
159
|
animation-delay: 1s;
|
|
158
160
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import type { NeoSwitchButtonContext, NeoSwitchButtonProps } from './neo-switch-button.model.js';
|
|
3
3
|
|
|
4
|
+
import { computeBorderRadius } from '../utils/border.utils.js';
|
|
4
5
|
import { getColorVariable } from '../utils/colors.utils.js';
|
|
5
6
|
import { coerce, computeShadowElevation, DefaultShadowShallowElevation, DefaultShallowMinMaxElevation } from '../utils/shadow.utils.js';
|
|
6
7
|
|
|
@@ -73,6 +74,7 @@
|
|
|
73
74
|
style:--neo-switch-color={getColorVariable(color)}
|
|
74
75
|
style:--neo-switch-box-shadow={boxShadow}
|
|
75
76
|
style:--neo-switch-toggle-width="{toggleWidth}px"
|
|
77
|
+
style:--neo-switch-border-radius={computeBorderRadius(rounded)}
|
|
76
78
|
{onclick}
|
|
77
79
|
{...rest}
|
|
78
80
|
>
|
|
@@ -162,10 +164,10 @@
|
|
|
162
164
|
transition: color 0.3s ease, box-shadow 0.3s ease-out, border-radius 0.3s ease, border-color 0.3s ease, background-color 0.3s ease;
|
|
163
165
|
}
|
|
164
166
|
.neo-switch-button.neo-rounded {
|
|
165
|
-
border-radius: var(--neo-border-radius-
|
|
167
|
+
border-radius: var(--neo-switch-border-radius, var(--neo-border-radius-xxl));
|
|
166
168
|
}
|
|
167
169
|
.neo-switch-button.neo-rounded .neo-switch-rail {
|
|
168
|
-
border-radius: var(--neo-border-radius-
|
|
170
|
+
border-radius: var(--neo-switch-border-radius, var(--neo-border-radius-xxl));
|
|
169
171
|
}
|
|
170
172
|
.neo-switch-button.neo-valid {
|
|
171
173
|
--neo-switch-checked-background: color-mix(in srgb, transparent, var(--neo-switch-valid-color, var(--neo-color-success)) 40%);
|
|
@@ -266,7 +268,7 @@
|
|
|
266
268
|
background-clip: padding-box;
|
|
267
269
|
border-color: var(--neo-skeleton-color);
|
|
268
270
|
opacity: 1;
|
|
269
|
-
transition: background-color 1s ease, color 0.3333333333s ease, border-color 1s ease, opacity 1s ease;
|
|
271
|
+
transition: border-radius 0.3333333333s ease, background-color 1s ease, color 0.3333333333s ease, border-color 1s ease, opacity 1s ease;
|
|
270
272
|
animation: skeleton 3s var(--neo-transition-skeleton) infinite;
|
|
271
273
|
animation-delay: 1s;
|
|
272
274
|
}
|
package/dist/buttons/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export { default as NeoArrowButton } from './NeoArrowButton.svelte';
|
|
2
2
|
export { default as NeoButton } from './NeoButton.svelte';
|
|
3
3
|
export { default as NeoButtonGroup } from './NeoButtonGroup.svelte';
|
|
4
|
+
export { default as NeoButtonRow } from './NeoButtonRow.svelte';
|
|
4
5
|
export { default as NeoCancelButton } from './NeoCancelButton.svelte';
|
|
5
6
|
export { default as NeoCheckboxButton } from './NeoCheckboxButton.svelte';
|
|
6
7
|
export { default as NeoCloseButton } from './NeoCloseButton.svelte';
|
|
@@ -8,6 +9,7 @@ export { default as NeoRadioButton } from './NeoRadioButton.svelte';
|
|
|
8
9
|
export { default as NeoSwitchButton } from './NeoSwitchButton.svelte';
|
|
9
10
|
export type * from './neo-arrow-button.model.js';
|
|
10
11
|
export type * from './neo-button-group.model.js';
|
|
12
|
+
export type * from './neo-button-row.model.js';
|
|
11
13
|
export type * from './neo-button.model.js';
|
|
12
14
|
export type * from './neo-checkbox-button.model.js';
|
|
13
15
|
export type * from './neo-radio-button.model.js';
|
package/dist/buttons/index.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export { default as NeoArrowButton } from './NeoArrowButton.svelte';
|
|
2
2
|
export { default as NeoButton } from './NeoButton.svelte';
|
|
3
3
|
export { default as NeoButtonGroup } from './NeoButtonGroup.svelte';
|
|
4
|
+
export { default as NeoButtonRow } from './NeoButtonRow.svelte';
|
|
4
5
|
export { default as NeoCancelButton } from './NeoCancelButton.svelte';
|
|
5
6
|
export { default as NeoCheckboxButton } from './NeoCheckboxButton.svelte';
|
|
6
7
|
export { default as NeoCloseButton } from './NeoCloseButton.svelte';
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import type { NeoButtonProps } from './neo-button.model.js';
|
|
2
|
-
import type {
|
|
2
|
+
import type { NeoIconArrowProps } from '../icons/neo-icon.model.js';
|
|
3
3
|
export type NeoArrowButtonProps = NeoButtonProps & {
|
|
4
4
|
/**
|
|
5
5
|
* Optional arrow properties.
|
|
6
6
|
*/
|
|
7
|
-
arrowProps?:
|
|
7
|
+
arrowProps?: NeoIconArrowProps;
|
|
8
8
|
/**
|
|
9
9
|
* Arrow direction.
|
|
10
10
|
*/
|
|
11
|
-
direction?:
|
|
11
|
+
direction?: NeoIconArrowProps['direction'];
|
|
12
12
|
};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import type { NeoButtonActiveElevation, NeoButtonBlur, NeoButtonHoverElevation } from '../index.js';
|
|
2
1
|
import type { Snippet } from 'svelte';
|
|
2
|
+
import type { NeoButtonActiveElevation, NeoButtonBlur, NeoButtonHoverElevation } from './neo-button.model.js';
|
|
3
3
|
import type { HTMLActionProps } from '../utils/action.utils.js';
|
|
4
|
+
import type { BorderRadiusInput } from '../utils/border.utils.js';
|
|
4
5
|
import type { Color } from '../utils/colors.utils.js';
|
|
5
6
|
import type { HTMLFlexProps, HTMLNeoBaseElement, HTMLRefProps } from '../utils/html-element.utils.js';
|
|
6
7
|
import type { ShadowElevation, ShadowElevationString } from '../utils/shadow.utils.js';
|
|
@@ -73,7 +74,7 @@ export interface NeoButtonGroupContext {
|
|
|
73
74
|
/**
|
|
74
75
|
* If true, the button group will have a rounded border.
|
|
75
76
|
*/
|
|
76
|
-
rounded?:
|
|
77
|
+
rounded?: BorderRadiusInput;
|
|
77
78
|
/**
|
|
78
79
|
* Text color to use for the button.
|
|
79
80
|
*/
|
|
@@ -116,6 +117,14 @@ export type NeoButtonGroupProps<Tag extends keyof HTMLElementTagNameMap = 'div'>
|
|
|
116
117
|
* @default 'div'
|
|
117
118
|
*/
|
|
118
119
|
tag?: Tag | keyof HTMLElementTagNameMap;
|
|
120
|
+
/**
|
|
121
|
+
* The offset height of the button group.
|
|
122
|
+
*/
|
|
123
|
+
offsetHeight?: HTMLElementTagNameMap[Tag]['offsetHeight'];
|
|
124
|
+
/**
|
|
125
|
+
* The offset width of the button group.
|
|
126
|
+
*/
|
|
127
|
+
offsetWidth?: HTMLElementTagNameMap[Tag]['offsetWidth'];
|
|
119
128
|
/**
|
|
120
129
|
* If true, the buttons will not wrap to the next line.
|
|
121
130
|
*/
|
|
@@ -128,4 +137,4 @@ export type NeoButtonGroupProps<Tag extends keyof HTMLElementTagNameMap = 'div'>
|
|
|
128
137
|
* Optional height constraints.
|
|
129
138
|
*/
|
|
130
139
|
height?: SizeInput<'height'>;
|
|
131
|
-
} & NeoButtonGroupContext & HTMLFlexProps & HTMLNeoBaseElement<HTMLElementTagNameMap[Tag]
|
|
140
|
+
} & NeoButtonGroupContext & HTMLFlexProps & HTMLActionProps & HTMLRefProps & Omit<HTMLNeoBaseElement<HTMLElementTagNameMap[Tag]>, 'children'>;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { Snippet } from 'svelte';
|
|
2
|
+
import type { NeoButtonGroupContext, NeoButtonGroupProps } from './neo-button-group.model.js';
|
|
3
|
+
import type { NeoButtonProps } from './neo-button.model.js';
|
|
4
|
+
import type { NeoDividerProps } from '../divider/neo-divider.model.js';
|
|
5
|
+
import type { NeoMenuItem } from '../floating/menu/neo-menu-list-item.model.js';
|
|
6
|
+
import type { NeoMenuProps } from '../floating/menu/neo-menu.model.js';
|
|
7
|
+
import type { NeoIconBouncingDotsProps } from '../icons/neo-icon.model.js';
|
|
8
|
+
export interface NeoButtonRowItemButton extends NeoButtonProps {
|
|
9
|
+
menuProps?: Partial<NeoMenuItem>;
|
|
10
|
+
label?: string | undefined;
|
|
11
|
+
icon?: Snippet<[unknown]>;
|
|
12
|
+
}
|
|
13
|
+
export interface NeoButtonRowItemDivider extends NeoDividerProps {
|
|
14
|
+
divider: true;
|
|
15
|
+
}
|
|
16
|
+
export type NeoButtonRowItem = NeoButtonRowItemButton | NeoButtonRowItemDivider;
|
|
17
|
+
export declare const isButtonRowDivider: (item: NeoButtonRowItem) => item is NeoButtonRowItemDivider;
|
|
18
|
+
export interface NeoButtonRowContext {
|
|
19
|
+
items?: NeoMenuItem[];
|
|
20
|
+
threshold?: number;
|
|
21
|
+
menuProps?: Partial<NeoMenuProps>;
|
|
22
|
+
iconProps?: NeoIconBouncingDotsProps;
|
|
23
|
+
collapseProps?: NeoButtonProps;
|
|
24
|
+
}
|
|
25
|
+
export interface NeoButtonRowProps extends Omit<NeoButtonRowContext, 'items'>, Omit<NeoButtonGroupProps, 'children'> {
|
|
26
|
+
children?: Snippet<[NeoButtonGroupContext, NeoButtonRowContext]>;
|
|
27
|
+
collapsed?: Snippet<[NeoButtonGroupContext, NeoButtonRowContext]>;
|
|
28
|
+
ref?: NeoButtonGroupProps['ref'];
|
|
29
|
+
items: NeoButtonRowItem[];
|
|
30
|
+
hovered?: NeoButtonProps['hovered'];
|
|
31
|
+
focused?: NeoButtonProps['focused'];
|
|
32
|
+
buttonProps?: NeoButtonProps;
|
|
33
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export const isButtonRowDivider = (item) => item && 'divider' in item && item.divider;
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import type { Snippet } from 'svelte';
|
|
2
2
|
import type { HTMLAnchorAttributes, HTMLButtonAttributes, KeyboardEventHandler } from 'svelte/elements';
|
|
3
|
+
import type { NeoImageProps } from '../media/neo-image.model.js';
|
|
3
4
|
import type { HTMLActionProps } from '../utils/action.utils.js';
|
|
5
|
+
import type { BorderRadiusInput } from '../utils/border.utils.js';
|
|
4
6
|
import type { Color } from '../utils/colors.utils.js';
|
|
5
7
|
import type { HTMLFlexProps, HTMLNeoBaseElement, HTMLRefProps, SvelteEvent } from '../utils/html-element.utils.js';
|
|
6
8
|
import type { BlurElevation, BlurElevationString, ShadowElevation, ShadowElevationString, ShadowHoverElevation, ShadowHoverElevationsString } from '../utils/shadow.utils.js';
|
|
@@ -39,9 +41,10 @@ export interface NeoButtonStates {
|
|
|
39
41
|
*/
|
|
40
42
|
focused?: boolean;
|
|
41
43
|
/**
|
|
42
|
-
* If true,
|
|
44
|
+
* If true, the button will not propagate the click event to its parent elements.
|
|
45
|
+
* This is useful for preventing unwanted side effects when clicking the button.
|
|
43
46
|
*/
|
|
44
|
-
|
|
47
|
+
propagation?: boolean;
|
|
45
48
|
/**
|
|
46
49
|
* If true, the button will act as a toggle button.
|
|
47
50
|
*/
|
|
@@ -74,7 +77,7 @@ export type NeoButtonProps<Tag extends keyof HTMLElementTagNameMap = 'button'> =
|
|
|
74
77
|
/**
|
|
75
78
|
* Optional icon snippet to display before the text.
|
|
76
79
|
*/
|
|
77
|
-
icon?: Snippet<[NeoButtonContext]
|
|
80
|
+
icon?: Snippet<[NeoButtonContext]> | string;
|
|
78
81
|
/**
|
|
79
82
|
* The HTML tag to use for the button.
|
|
80
83
|
* If an `href` is provided, the tag will default to `'a'`.
|
|
@@ -159,7 +162,7 @@ export type NeoButtonProps<Tag extends keyof HTMLElementTagNameMap = 'button'> =
|
|
|
159
162
|
/**
|
|
160
163
|
* If true, the button will have a rounded border.
|
|
161
164
|
*/
|
|
162
|
-
rounded?:
|
|
165
|
+
rounded?: BorderRadiusInput;
|
|
163
166
|
/**
|
|
164
167
|
* If true, the flex direction of the button will be reversed.
|
|
165
168
|
*/
|
|
@@ -201,6 +204,10 @@ export type NeoButtonProps<Tag extends keyof HTMLElementTagNameMap = 'button'> =
|
|
|
201
204
|
* @param e
|
|
202
205
|
*/
|
|
203
206
|
onkeyup?: KeyboardEventHandler<HTMLButtonElement>;
|
|
207
|
+
/**
|
|
208
|
+
* Optional props to pass to the icon image component if the icon is a string.
|
|
209
|
+
*/
|
|
210
|
+
imageProps?: Partial<NeoImageProps>;
|
|
204
211
|
} & NeoButtonStates & HTMLFlexProps & HTMLActionProps & HTMLRefProps & Partial<Omit<Tag extends 'button' ? HTMLButtonAttributes : Tag extends 'a' ? HTMLAnchorAttributes : HTMLNeoBaseElement<HTMLElementTagNameMap[Tag]>, 'onclick' | 'onkeydown' | 'onkeyup'>>;
|
|
205
212
|
export type NeoButtonTemplate = Pick<NeoButtonProps, 'elevation' | 'hover' | 'active' | 'pressed' | 'borderless' | 'glass' | 'tinted' | 'rounded' | 'reverse' | 'coalesce' | 'pulse'>;
|
|
206
213
|
export declare const NeoRaisedButton: NeoButtonTemplate;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { NeoIconButtonProps } from './neo-icon-button.model.js';
|
|
2
|
+
import type { Color } from '../utils/colors.utils.js';
|
|
3
|
+
export declare const NeoCloseButtonSize: {
|
|
4
|
+
readonly Small: "sm";
|
|
5
|
+
readonly Medium: "md";
|
|
6
|
+
readonly Large: "lg";
|
|
7
|
+
};
|
|
8
|
+
export type NeoCloseButtonSizes = (typeof NeoCloseButtonSize)[keyof typeof NeoCloseButtonSize];
|
|
9
|
+
export interface NeoCloseButtonProps extends NeoIconButtonProps {
|
|
10
|
+
hoverColor?: Color | CSSStyleDeclaration['color'];
|
|
11
|
+
size?: NeoCloseButtonSizes;
|
|
12
|
+
inline?: boolean;
|
|
13
|
+
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { NeoButtonProps } from './neo-button.model.js';
|
|
2
|
-
import type {
|
|
2
|
+
import type { NeoIconProps } from '../icons/neo-icon.model.js';
|
|
3
3
|
export type NeoIconButtonProps = NeoButtonProps & {
|
|
4
4
|
/**
|
|
5
5
|
* Optional icon properties.
|
|
6
6
|
*/
|
|
7
|
-
iconProps?:
|
|
7
|
+
iconProps?: NeoIconProps;
|
|
8
8
|
};
|