@dvcol/neo-svelte 0.1.6 → 0.1.7
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 +79 -0
- package/README.md +65 -12
- package/dist/buttons/NeoButton.svelte +109 -70
- package/dist/buttons/NeoButtonGroup.svelte +48 -44
- package/dist/buttons/NeoCheckboxButton.svelte +146 -0
- package/dist/buttons/NeoCheckboxButton.svelte.d.ts +19 -0
- package/dist/buttons/NeoRadioButton.svelte +144 -0
- package/dist/buttons/NeoRadioButton.svelte.d.ts +19 -0
- package/dist/buttons/NeoSwitchButton.svelte +272 -0
- package/dist/buttons/NeoSwitchButton.svelte.d.ts +19 -0
- package/dist/buttons/index.d.ts +8 -2
- package/dist/buttons/index.js +3 -0
- package/dist/buttons/neo-button-group.model.d.ts +10 -10
- package/dist/buttons/neo-button.model.d.ts +30 -5
- package/dist/buttons/neo-checkbox-button.model.d.ts +18 -0
- package/dist/buttons/neo-checkbox-button.model.js +1 -0
- package/dist/buttons/neo-radio-button.model.d.ts +18 -0
- package/dist/buttons/neo-radio-button.model.js +1 -0
- package/dist/buttons/neo-switch-button.model.d.ts +31 -0
- package/dist/buttons/neo-switch-button.model.js +1 -0
- package/dist/cards/NeoCard.svelte +108 -79
- package/dist/cards/NeoCard.svelte.d.ts +1 -1
- package/dist/cards/index.d.ts +1 -1
- package/dist/cards/neo-card.model.d.ts +31 -7
- package/dist/containers/NeoTransitionContainer.svelte +14 -1
- package/dist/containers/index.d.ts +1 -1
- package/dist/containers/neo-transition-container.model.d.ts +4 -3
- package/dist/divider/NeoDivider.svelte +80 -15
- package/dist/divider/index.d.ts +1 -1
- package/dist/divider/neo-divider.model.d.ts +33 -1
- package/dist/icons/IconAccount.svelte +9 -1
- package/dist/icons/IconAdd.svelte +9 -1
- package/dist/icons/IconAlert.svelte +9 -1
- package/dist/icons/IconAlignBottom.svelte +21 -0
- package/dist/icons/IconAlignBottom.svelte.d.ts +26 -0
- package/dist/icons/IconAlignMiddle.svelte +21 -0
- package/dist/icons/IconAlignMiddle.svelte.d.ts +26 -0
- package/dist/icons/IconAlignTop.svelte +21 -0
- package/dist/icons/IconAlignTop.svelte.d.ts +26 -0
- package/dist/icons/IconBouncingDots.svelte +60 -0
- package/dist/icons/IconBouncingDots.svelte.d.ts +23 -0
- package/dist/icons/IconCalendar.svelte +9 -1
- package/dist/icons/IconCheckbox.svelte +41 -28
- package/dist/icons/IconCheckbox.svelte.d.ts +4 -0
- package/dist/icons/IconCircleLoading.svelte +9 -5
- package/dist/icons/IconCircleLoading.svelte.d.ts +20 -14
- package/dist/icons/IconClear.svelte +9 -1
- package/dist/icons/IconClose.svelte +9 -1
- package/dist/icons/IconConfirm.svelte +9 -1
- package/dist/icons/IconDoubleChevron.svelte +34 -0
- package/dist/icons/IconDoubleChevron.svelte.d.ts +26 -0
- package/dist/icons/IconDownload.svelte +9 -1
- package/dist/icons/IconEmpty.svelte +9 -1
- package/dist/icons/IconFileUpload.svelte +9 -1
- package/dist/icons/IconGithub.svelte +9 -1
- package/dist/icons/IconImage.svelte +9 -1
- package/dist/icons/IconList.svelte +36 -0
- package/dist/icons/IconList.svelte.d.ts +26 -0
- package/dist/icons/IconMinus.svelte +9 -1
- package/dist/icons/IconMoon.svelte +9 -1
- package/dist/icons/IconPaint.svelte +9 -1
- package/dist/icons/IconPencil.svelte +9 -1
- package/dist/icons/IconRadio.svelte +12 -8
- package/dist/icons/IconRadio.svelte.d.ts +2 -0
- package/dist/icons/IconSave.svelte +2 -2
- package/dist/icons/IconSaveOff.svelte +2 -2
- package/dist/icons/IconSearch.svelte +9 -1
- package/dist/icons/IconSun.svelte +9 -1
- package/dist/icons/IconSunFull.svelte +9 -1
- package/dist/icons/IconVideo.svelte +9 -1
- package/dist/icons/IconWatch.svelte +9 -1
- package/dist/icons/IconWatchOff.svelte +9 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.js +3 -0
- package/dist/inputs/NeoCheckbox.svelte +51 -145
- package/dist/inputs/NeoCheckbox.svelte.d.ts +1 -1
- package/dist/inputs/NeoColorPicker.svelte +23 -38
- package/dist/inputs/NeoColorPicker.svelte.d.ts +1 -1
- package/dist/inputs/NeoColorPickerSelector.svelte +51 -0
- package/dist/inputs/NeoColorPickerSelector.svelte.d.ts +19 -0
- package/dist/inputs/NeoDateTime.svelte +16 -3
- package/dist/inputs/NeoDateTime.svelte.d.ts +1 -1
- package/dist/inputs/NeoFilePicker.svelte +57 -19
- package/dist/inputs/NeoFilePicker.svelte.d.ts +1 -1
- package/dist/inputs/NeoFilePickerCard.svelte +40 -23
- package/dist/inputs/NeoFilePickerCard.svelte.d.ts +1 -1
- package/dist/inputs/NeoNumberStep.svelte +20 -4
- package/dist/inputs/NeoNumberStep.svelte.d.ts +1 -1
- package/dist/inputs/NeoPassword.svelte +18 -5
- package/dist/inputs/NeoPassword.svelte.d.ts +1 -1
- package/dist/inputs/NeoPin.svelte +11 -5
- package/dist/inputs/NeoPin.svelte.d.ts +1 -1
- package/dist/inputs/NeoRadio.svelte +37 -144
- package/dist/inputs/NeoRadio.svelte.d.ts +1 -1
- package/dist/inputs/NeoRange.svelte +139 -105
- package/dist/inputs/NeoRange.svelte.d.ts +1 -1
- package/dist/inputs/NeoSelect.svelte +118 -0
- package/dist/inputs/NeoSelect.svelte.d.ts +19 -0
- package/dist/inputs/NeoSwitch.svelte +55 -206
- package/dist/inputs/NeoSwitch.svelte.d.ts +1 -1
- package/dist/inputs/NeoTextarea.svelte +77 -42
- package/dist/inputs/NeoTextarea.svelte.d.ts +1 -1
- package/dist/inputs/common/NeoAffix.svelte +48 -34
- package/dist/inputs/common/NeoBaseInput.svelte +15 -0
- package/dist/inputs/common/NeoBaseInput.svelte.d.ts +1 -1
- package/dist/inputs/common/NeoInput.svelte +121 -46
- package/dist/inputs/common/NeoInput.svelte.d.ts +1 -1
- package/dist/inputs/common/NeoInputValidation.svelte +5 -2
- package/dist/inputs/common/NeoInputValidation.svelte.d.ts +1 -1
- package/dist/inputs/common/NeoLabel.svelte +2 -1
- package/dist/inputs/common/NeoLabel.svelte.d.ts +1 -1
- package/dist/inputs/common/NeoValidation.svelte +9 -7
- package/dist/inputs/common/NeoValidation.svelte.d.ts +1 -1
- package/dist/inputs/common/neo-affix.model.d.ts +27 -2
- package/dist/inputs/common/neo-input.model.d.ts +40 -5
- package/dist/inputs/common/neo-label.model.d.ts +4 -0
- package/dist/inputs/common/neo-validation.model.d.ts +5 -3
- package/dist/inputs/index.d.ts +2 -1
- package/dist/inputs/index.js +1 -0
- package/dist/inputs/neo-checkbox.model.d.ts +4 -5
- package/dist/inputs/neo-color-picker.model.d.ts +13 -2
- package/dist/inputs/neo-date-time.model.d.ts +4 -0
- package/dist/inputs/neo-file-picker.model.d.ts +20 -0
- package/dist/inputs/neo-number-step.model.d.ts +8 -0
- package/dist/inputs/neo-password.model.d.ts +7 -0
- package/dist/inputs/neo-radio.model.d.ts +4 -5
- package/dist/inputs/neo-range.model.d.ts +17 -2
- package/dist/inputs/neo-select.model.d.ts +22 -0
- package/dist/inputs/neo-select.model.js +1 -0
- package/dist/inputs/neo-switch.model.d.ts +4 -5
- package/dist/list/NeoList.svelte +449 -0
- package/dist/list/NeoList.svelte.d.ts +19 -0
- package/dist/list/NeoListBaseItem.svelte +227 -0
- package/dist/list/NeoListBaseItem.svelte.d.ts +19 -0
- package/dist/list/NeoListBaseLoader.svelte +142 -0
- package/dist/list/NeoListBaseLoader.svelte.d.ts +19 -0
- package/dist/list/NeoListBaseSection.svelte +55 -0
- package/dist/list/NeoListBaseSection.svelte.d.ts +19 -0
- package/dist/list/NeoListSearch.svelte +146 -0
- package/dist/list/NeoListSearch.svelte.d.ts +19 -0
- package/dist/list/index.d.ts +12 -0
- package/dist/list/index.js +7 -0
- package/dist/list/neo-list-base-item.model.d.ts +55 -0
- package/dist/list/neo-list-base-item.model.js +1 -0
- package/dist/list/neo-list-base-loader.model.d.ts +55 -0
- package/dist/list/neo-list-base-loader.model.js +1 -0
- package/dist/list/neo-list-base-section.model.d.ts +30 -0
- package/dist/list/neo-list-base-section.model.js +1 -0
- package/dist/list/neo-list-search.model.d.ts +43 -0
- package/dist/list/neo-list-search.model.js +17 -0
- package/dist/list/neo-list.model.d.ts +317 -0
- package/dist/list/neo-list.model.js +6 -0
- package/dist/nav/NeoTab.svelte +12 -8
- package/dist/nav/NeoTabDivider.svelte +15 -0
- package/dist/nav/NeoTabDivider.svelte.d.ts +19 -0
- package/dist/nav/NeoTabPanel.svelte +1 -1
- package/dist/nav/NeoTabs.svelte +30 -17
- package/dist/nav/index.d.ts +5 -4
- package/dist/nav/index.js +1 -0
- package/dist/nav/neo-tab-panel.model.d.ts +8 -7
- package/dist/nav/neo-tab.model.d.ts +5 -5
- package/dist/nav/neo-tabs.model.d.ts +23 -11
- package/dist/providers/NeoThemePicker.svelte +93 -0
- package/dist/providers/NeoThemePicker.svelte.d.ts +19 -0
- package/dist/providers/NeoThemeProvider.svelte +2 -765
- package/dist/providers/NeoThemeProvider.svelte.d.ts +1 -0
- package/dist/providers/NeoThemeSelector.svelte +11 -3
- package/dist/providers/index.d.ts +5 -3
- package/dist/providers/index.js +2 -1
- package/dist/providers/neo-theme-picker.model.d.ts +21 -0
- package/dist/providers/neo-theme-picker.model.js +1 -0
- package/dist/providers/neo-theme-provider.scss +8 -0
- package/dist/providers/neo-theme-selector.model.d.ts +15 -0
- package/dist/skeletons/NeoSkeletonContainer.svelte +75 -11
- package/dist/skeletons/NeoSkeletonContainer.svelte.d.ts +1 -1
- package/dist/skeletons/NeoSkeletonMedia.svelte +41 -32
- package/dist/skeletons/NeoSkeletonMedia.svelte.d.ts +1 -1
- package/dist/skeletons/NeoSkeletonText.svelte +88 -46
- package/dist/skeletons/NeoSkeletonText.svelte.d.ts +1 -1
- package/dist/skeletons/index.d.ts +2 -2
- package/dist/skeletons/neo-skeleton-container.model.d.ts +8 -2
- package/dist/skeletons/neo-skeleton-media.model.d.ts +23 -2
- package/dist/skeletons/neo-skeleton-text.model.d.ts +36 -5
- package/dist/styles/animation.scss +6 -20
- package/dist/styles/common/colors.scss +174 -135
- package/dist/styles/common/properties.css +6 -0
- package/dist/styles/common/shadows.scss +97 -22
- package/dist/styles/common/spacing.scss +1 -0
- package/dist/styles/mixin.scss +99 -21
- package/dist/text/NeoEllipsis.svelte +29 -0
- package/dist/text/NeoEllipsis.svelte.d.ts +19 -0
- package/dist/text/NeoMark.svelte +32 -0
- package/dist/text/NeoMark.svelte.d.ts +19 -0
- package/dist/text/NeoScrollShadow.svelte +71 -0
- package/dist/text/NeoScrollShadow.svelte.d.ts +19 -0
- package/dist/text/index.d.ts +6 -0
- package/dist/text/index.js +3 -0
- package/dist/text/neo-ellipsis.model.d.ts +24 -0
- package/dist/text/neo-ellipsis.model.js +1 -0
- package/dist/text/neo-mark.model.d.ts +26 -0
- package/dist/text/neo-mark.model.js +1 -0
- package/dist/text/neo-scroll-shadow.model.d.ts +34 -0
- package/dist/text/neo-scroll-shadow.model.js +1 -0
- package/dist/tooltips/NeoTooltip.svelte +267 -0
- package/dist/tooltips/NeoTooltip.svelte.d.ts +19 -0
- package/dist/tooltips/index.d.ts +2 -0
- package/dist/tooltips/index.js +1 -0
- package/dist/tooltips/neo-tooltip.model.d.ts +128 -0
- package/dist/tooltips/neo-tooltip.model.js +1 -0
- package/dist/utils/action.utils.d.ts +22 -7
- package/dist/utils/action.utils.js +5 -3
- package/dist/utils/colors.utils.d.ts +16 -0
- package/dist/utils/colors.utils.js +19 -0
- package/dist/utils/html-element.utils.d.ts +8 -1
- package/dist/utils/html-element.utils.js +29 -1
- package/dist/utils/shadow.utils.d.ts +22 -5
- package/dist/utils/shadow.utils.js +20 -8
- package/dist/utils/transition.utils.d.ts +9 -3
- package/dist/utils/transition.utils.js +15 -5
- package/package.json +29 -18
- package/dist/utils/math.utils.d.ts +0 -1
- package/dist/utils/math.utils.js +0 -7
- package/dist/utils/timeout.util.d.ts +0 -5
- package/dist/utils/timeout.util.js +0 -15
- package/dist/utils/utils.svelte.d.ts +0 -6
- package/dist/utils/utils.svelte.js +0 -13
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,85 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
### [0.1.7](https://github.com/dvcol/neo-svelte/compare/v0.1.6...v0.1.7) (2025-02-03)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
* **affix:** adds custom loading/close/validation snippets ([fcefc30](https://github.com/dvcol/neo-svelte/commit/fcefc309853a6566edacc244e59a3b288b534dd9))
|
|
11
|
+
* **button:** adds support for theme colors ([e01c567](https://github.com/dvcol/neo-svelte/commit/e01c5679bf3b7d48fe822e2a43634b0fd6ac18f4))
|
|
12
|
+
* **buttons:** adds indeterminate to switch and shallow to buttons ([a196c57](https://github.com/dvcol/neo-svelte/commit/a196c57c2b4c3eabcd2eb9dbce2b71492ebec848))
|
|
13
|
+
* **buttons:** adds label snippet ([b39de08](https://github.com/dvcol/neo-svelte/commit/b39de087d34c78c8ea93236801e9c79fe99ad44e))
|
|
14
|
+
* **buttons:** split checkbox, switch, radio buttons out ([536b353](https://github.com/dvcol/neo-svelte/commit/536b3539868fbf78bf720a807744bb6c6a2d0e2a))
|
|
15
|
+
* **button:** support label in switch buttons ([9d69d2a](https://github.com/dvcol/neo-svelte/commit/9d69d2ac3832308482c5ba0f91ba66282739cad8))
|
|
16
|
+
* **divider:** expand divider api ([fb2e932](https://github.com/dvcol/neo-svelte/commit/fb2e9327b8c5cbb41f322f53eaae9aaf61766782))
|
|
17
|
+
* **elevation:** adds support for string elevations ([45d1cd0](https://github.com/dvcol/neo-svelte/commit/45d1cd00d59e3ef8e3df415099ff91022938eaa4))
|
|
18
|
+
* **input:** adds native select component ([0b7dfc1](https://github.com/dvcol/neo-svelte/commit/0b7dfc105e6b65a13665423c37a42bde61f51580))
|
|
19
|
+
* **inputs:** adds customisable icons ([054f4d7](https://github.com/dvcol/neo-svelte/commit/054f4d73d273e7abc8d34f21789776293d02da18))
|
|
20
|
+
* **input:** style multi select native inputs ([308a6de](https://github.com/dvcol/neo-svelte/commit/308a6de8ae6f7a2892926a8defe6dc6cca7b1ba7))
|
|
21
|
+
* **list:** adds aria roles ([165693d](https://github.com/dvcol/neo-svelte/commit/165693d7c55aa1ee58f260f72c92dbbecac0aa3d))
|
|
22
|
+
* **list:** adds arrow navigation ([f339b75](https://github.com/dvcol/neo-svelte/commit/f339b75a2fbe3749e51a4c7d893e3486915335c0))
|
|
23
|
+
* **list:** adds basic support for filtering/sorting ([bcf1c8f](https://github.com/dvcol/neo-svelte/commit/bcf1c8f46dda64ac29775886cd9960fe45296e1c))
|
|
24
|
+
* **list:** adds custom base loader ([01bc010](https://github.com/dvcol/neo-svelte/commit/01bc010de72117d3cad4af9cf2f23e1cc20df3d9))
|
|
25
|
+
* **list:** adds description support ([f7a2025](https://github.com/dvcol/neo-svelte/commit/f7a20254c586b6806547c7c014cd10ef27d7aa90))
|
|
26
|
+
* **list:** adds onclick & href support ([da844ea](https://github.com/dvcol/neo-svelte/commit/da844eadc3da4fd15370601dba6c7b03e95a4948))
|
|
27
|
+
* **list:** adds search input ([8d1593a](https://github.com/dvcol/neo-svelte/commit/8d1593a8548f7bf4c10251869f4b92874efc718c))
|
|
28
|
+
* **list:** adds section support ([ce8f7ce](https://github.com/dvcol/neo-svelte/commit/ce8f7ce2d7ea0ed038432fd171921e856aaf40e0))
|
|
29
|
+
* **list:** adds sticky section header ([9276852](https://github.com/dvcol/neo-svelte/commit/9276852220729eee5413aa17c4845cf48fcf7fc2))
|
|
30
|
+
* **list:** adds support for disabled items ([6180f4c](https://github.com/dvcol/neo-svelte/commit/6180f4cfa17034622e9294fe0d4f12913d30866e))
|
|
31
|
+
* **list:** clear selected if list mutates ([086d1bf](https://github.com/dvcol/neo-svelte/commit/086d1bf66210c8a527e4c7e595d1c93b75267bdd))
|
|
32
|
+
* **list:** first draft for lists ([502885c](https://github.com/dvcol/neo-svelte/commit/502885ce92ba5525566f57440be75e76d32aaafc))
|
|
33
|
+
* **list:** initial support for selectable lists ([1451253](https://github.com/dvcol/neo-svelte/commit/145125319e90e5896347b287873809d1676e32a3))
|
|
34
|
+
* **list:** support after & before loading skeleton ([331a21d](https://github.com/dvcol/neo-svelte/commit/331a21d656d5f0902774b42878b2287edf1546f9))
|
|
35
|
+
* **list:** support checkmarks ([45564ba](https://github.com/dvcol/neo-svelte/commit/45564ba73a681a1c82ec41e5967ef5aeba4cd52b))
|
|
36
|
+
* **nav:** adds tab divider support ([5d07d80](https://github.com/dvcol/neo-svelte/commit/5d07d800a1d38248b7c2b3da6ef7eea1de22c031))
|
|
37
|
+
* **scroll:** makes custom scrollbar optional ([2b54880](https://github.com/dvcol/neo-svelte/commit/2b54880ba24b38f1eff1dedafb8b97487bbf35fb))
|
|
38
|
+
* **select:** basic option array input ([6b412fd](https://github.com/dvcol/neo-svelte/commit/6b412fd240ef848ba895a9024ec446c390e004de))
|
|
39
|
+
* **skeleton:** adds auto-line discovery for skeleton ([1c54529](https://github.com/dvcol/neo-svelte/commit/1c54529f9c5c7078ef07b0c1637bb777eb2fe1a7))
|
|
40
|
+
* **skeleton:** adds glass skeleton to generic component ([e0fe4f4](https://github.com/dvcol/neo-svelte/commit/e0fe4f4a1bac3c8a506e0e57ed76354ca07dacc6))
|
|
41
|
+
* **skeleton:** auto-size skeleton containers ([10938e2](https://github.com/dvcol/neo-svelte/commit/10938e2a6f09f27e5186957d6dd64ca79919d000))
|
|
42
|
+
* **tabs:** adds pill mode ([84d3615](https://github.com/dvcol/neo-svelte/commit/84d36158dac3a80d33b36bd3f8e7233a0abef0b3))
|
|
43
|
+
* **tabs:** adjust hover colors & transitions ([a6a8fed](https://github.com/dvcol/neo-svelte/commit/a6a8fed31343b1c93dab4b8163d4a878ca8b92dc))
|
|
44
|
+
* **text:** adds ellipsis and mark components ([0719445](https://github.com/dvcol/neo-svelte/commit/0719445b9f6ae0229c887bfb7000cad165995c91))
|
|
45
|
+
* **text:** adds scroll-shadow ([9c6fd29](https://github.com/dvcol/neo-svelte/commit/9c6fd29a75796427a264dd9f97ec3e9444796bf0))
|
|
46
|
+
* **theme:** adds colour pickers ([9757934](https://github.com/dvcol/neo-svelte/commit/97579340e0b143b182267b36c35905234bf4644e))
|
|
47
|
+
* **tooltip:** adds custom tooltip snippets ([33d2d59](https://github.com/dvcol/neo-svelte/commit/33d2d59bd90052462d4b16618900e6ed82e860ba))
|
|
48
|
+
* **tooltip:** adds generic tooltip component ([813fc2f](https://github.com/dvcol/neo-svelte/commit/813fc2ff5b43d8157954bf79186ee9e3913bb9a5))
|
|
49
|
+
* **tooltip:** adds supports for external refs ([09f1be1](https://github.com/dvcol/neo-svelte/commit/09f1be1d748e34e45d157b0d40d2b5f039253c2e))
|
|
50
|
+
* **tooltip:** match width with trigger ([853ed32](https://github.com/dvcol/neo-svelte/commit/853ed324ac5a647e3ad94d1bd4cff5c641604b84))
|
|
51
|
+
* **tooltips:** adds tooltip styling ([4e5418b](https://github.com/dvcol/neo-svelte/commit/4e5418b60aa8d840a543dabdca3ef8b2958a4e14))
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
### Bug Fixes
|
|
55
|
+
|
|
56
|
+
* **button:** adjust icon spacing ([cb6f163](https://github.com/dvcol/neo-svelte/commit/cb6f163fb939ba382361dc0ff8ff28ef141f8d8a))
|
|
57
|
+
* **button:** remove enter pressed state on blur ([9c53dd1](https://github.com/dvcol/neo-svelte/commit/9c53dd16aa68da20495fae09c5ffe051f865d4ad))
|
|
58
|
+
* **buttons:** correct border color for flat glass style ([65b9e12](https://github.com/dvcol/neo-svelte/commit/65b9e121bd740119182f852ff7ece796a4742c28))
|
|
59
|
+
* **card:** fix media card css ([8dd8088](https://github.com/dvcol/neo-svelte/commit/8dd8088fcaae8ec0764b6cae6a3edbd5695d3b61))
|
|
60
|
+
* **card:** makes scrollbar transition additive ([59e2a8f](https://github.com/dvcol/neo-svelte/commit/59e2a8ff4c976cd63a30f4e2f7940ddb39bbde9d))
|
|
61
|
+
* **checkbox:** adds missing touched binding ([8736cb6](https://github.com/dvcol/neo-svelte/commit/8736cb68507e6d465a4267e9c0667a0009dd974f))
|
|
62
|
+
* **colors:** adjust variables to be relative to theme color ([754e4d2](https://github.com/dvcol/neo-svelte/commit/754e4d2effe5d74e67eff20a85413c39c84fd7be))
|
|
63
|
+
* **glass:** adjust border color when flat ([01995fe](https://github.com/dvcol/neo-svelte/commit/01995fe9757b9d2504c60f7416338f8b5be1178a))
|
|
64
|
+
* **glass:** adjust pressed glass shadow ([2182943](https://github.com/dvcol/neo-svelte/commit/21829437e5fbc5e832aeda9f963fd7a529099902))
|
|
65
|
+
* **glass:** remove border when inset ([631efbe](https://github.com/dvcol/neo-svelte/commit/631efbe00268c3546e7d3b097695c3f0eeb528a3))
|
|
66
|
+
* **icon:** make checkbox prop reactive ([7f72fb6](https://github.com/dvcol/neo-svelte/commit/7f72fb6c324a640f124362f2a4b54dab23ca484f))
|
|
67
|
+
* **input:** adjust color picker min height/width ([8536e03](https://github.com/dvcol/neo-svelte/commit/8536e03709a4a03132fe7f5e0c30317baf8ee82b))
|
|
68
|
+
* **input:** adjust label translate ([3e35382](https://github.com/dvcol/neo-svelte/commit/3e3538250314464afca4e9ed0582df33ab7e15fd))
|
|
69
|
+
* **input:** debounce clearable to fix touch flashing on mobile ([72b86d8](https://github.com/dvcol/neo-svelte/commit/72b86d81269d4ef800dd3f0dacf813279b041afe))
|
|
70
|
+
* **input:** keep close button visible on focusin ([761ac31](https://github.com/dvcol/neo-svelte/commit/761ac31461cae17bff17caa41cf77f723e226f3f))
|
|
71
|
+
* **input:** resize floating values on element resize ([f77acc2](https://github.com/dvcol/neo-svelte/commit/f77acc2c903c8ee02c19b3663ebec6e4f35fe824))
|
|
72
|
+
* **list:** handle reflow dividers ([8b7ca36](https://github.com/dvcol/neo-svelte/commit/8b7ca36dceacb46006719263b5e31325a23c55f9))
|
|
73
|
+
* **list:** keep selection when sorting/filtering ([48c43ec](https://github.com/dvcol/neo-svelte/commit/48c43ec2194a9eb4f39e38b1b737552d98001abb))
|
|
74
|
+
* **list:** move to simple scale and scrollToBottom ([80165fa](https://github.com/dvcol/neo-svelte/commit/80165fa73d988e48ad8748ed45187d86fb53ef74))
|
|
75
|
+
* **list:** only animate top level list ([9106151](https://github.com/dvcol/neo-svelte/commit/9106151154dec7fec0ec7b386c0f60816b1447de))
|
|
76
|
+
* **list:** remove scroll shadow when empty ([2654975](https://github.com/dvcol/neo-svelte/commit/2654975c22e68ea9590d2f60a11dcda3b8c47f23))
|
|
77
|
+
* **list:** rework transitions ([3bf6de9](https://github.com/dvcol/neo-svelte/commit/3bf6de959206f844a6964e57c3af1839624f73cf))
|
|
78
|
+
* **skeleton:** adjust font & line height to match defaults ([06eb497](https://github.com/dvcol/neo-svelte/commit/06eb4973b2d72fef3e12effd6cbdbcb927e28332))
|
|
79
|
+
* **skeleton:** adjust line spacing in alt mode ([7ec1ec9](https://github.com/dvcol/neo-svelte/commit/7ec1ec91906f6aabffe61d49c5b4ce795819a1ff))
|
|
80
|
+
* **style:** improve :global scoping in tabs & list ([363e106](https://github.com/dvcol/neo-svelte/commit/363e106b1ade7ba0baa7c788146a757fc270f972))
|
|
81
|
+
* **tabs:** fix line regression & add dynamic default slide elevation ([8894bdf](https://github.com/dvcol/neo-svelte/commit/8894bdffd7006e44186852c60da733304964e20b))
|
|
82
|
+
* **tooltip:** keep open while focused ([ac5df59](https://github.com/dvcol/neo-svelte/commit/ac5df592a96fc793b7637b1a6117a66c0f5cc797))
|
|
83
|
+
|
|
5
84
|
### [0.1.6](https://github.com/dvcol/neo-svelte/compare/v0.1.5...v0.1.6) (2025-01-10)
|
|
6
85
|
|
|
7
86
|
|
package/README.md
CHANGED
|
@@ -51,6 +51,8 @@ See examples in the demo (code [here](https://github.com/dvcol/neo-svelte/tree/f
|
|
|
51
51
|
## TODO
|
|
52
52
|
- [ ] @media any-pointer:coarse any-hover:none
|
|
53
53
|
- [x] Buttons
|
|
54
|
+
- [x] toggle
|
|
55
|
+
- [x] groups
|
|
54
56
|
- [x] Tabs
|
|
55
57
|
- [x] Card
|
|
56
58
|
- [x] Inputs
|
|
@@ -78,9 +80,67 @@ See examples in the demo (code [here](https://github.com/dvcol/neo-svelte/tree/f
|
|
|
78
80
|
- [x] custom before-after
|
|
79
81
|
- [x] steps
|
|
80
82
|
- [ ] vertical
|
|
81
|
-
- [ ]
|
|
83
|
+
- [ ] rating (stars)
|
|
84
|
+
- [x] select
|
|
85
|
+
- [x] native
|
|
86
|
+
- [ ] custom
|
|
87
|
+
- [x] tooltip
|
|
88
|
+
- [ ] popconfirm
|
|
89
|
+
- [ ] popselect
|
|
90
|
+
- [ ] nested menus
|
|
91
|
+
|
|
92
|
+
- [x] list
|
|
93
|
+
- [x] select
|
|
94
|
+
- [X] multiple
|
|
95
|
+
- [x] disabled
|
|
96
|
+
- [x] readonly
|
|
97
|
+
- [x] sections
|
|
98
|
+
- [x] keyboard navigation
|
|
99
|
+
- [x] scroll shadow
|
|
100
|
+
- [ ] virtualized
|
|
101
|
+
- [ ] infinite scroll
|
|
102
|
+
- [ ] drag & drop
|
|
103
|
+
- [ ] pagination
|
|
104
|
+
- [ ] pull/scroll to refresh
|
|
105
|
+
- [x] filter
|
|
106
|
+
- [x] sort
|
|
107
|
+
- [ ] tree
|
|
108
|
+
|
|
109
|
+
- [ ] stepper
|
|
110
|
+
- [ ] vertical
|
|
111
|
+
- [ ] progress/dots
|
|
112
|
+
|
|
113
|
+
- [ ] Chat
|
|
114
|
+
- [ ] infinite scroll
|
|
115
|
+
- [ ] virtual scroll
|
|
116
|
+
- [ ] async
|
|
117
|
+
- [ ] stream
|
|
118
|
+
- [ ] generative text animation
|
|
119
|
+
- [ ] scroll to bottom
|
|
120
|
+
- [ ] typing indicator
|
|
121
|
+
- [ ] read indicator
|
|
122
|
+
- [ ] reactions
|
|
123
|
+
- [ ] threads
|
|
124
|
+
- [ ] @ / # tags
|
|
125
|
+
- [ ] mentions
|
|
126
|
+
- [ ] attachments
|
|
127
|
+
- [ ] gifs/images
|
|
128
|
+
- [ ] videos
|
|
129
|
+
- [ ] audio
|
|
130
|
+
- [ ] custom cards (contact, etc.)
|
|
131
|
+
- [ ] custom bubbles
|
|
132
|
+
- [ ] custom input
|
|
133
|
+
|
|
134
|
+
- [ ] Modal/dialog
|
|
135
|
+
- [ ] drawer/panel
|
|
136
|
+
- [ ] collapsible
|
|
137
|
+
- [ ] position
|
|
138
|
+
- [ ] backdrop
|
|
139
|
+
- [ ] click outside
|
|
140
|
+
|
|
82
141
|
- [ ] table
|
|
83
142
|
- [ ] pagination
|
|
143
|
+
|
|
84
144
|
- [ ] auto-complete
|
|
85
145
|
- [ ] @ / # tags
|
|
86
146
|
- [ ] select
|
|
@@ -104,23 +164,16 @@ See examples in the demo (code [here](https://github.com/dvcol/neo-svelte/tree/f
|
|
|
104
164
|
- [ ] summary
|
|
105
165
|
- [ ] details (html semantic tags)
|
|
106
166
|
|
|
107
|
-
- [ ] tooltip
|
|
108
|
-
- [ ] popconfirm
|
|
109
|
-
- [ ] popselect
|
|
110
167
|
- [ ] text
|
|
111
168
|
- [ ] elevation
|
|
112
|
-
- [
|
|
169
|
+
- [x] ellipsis
|
|
170
|
+
- [x] mark
|
|
171
|
+
- [x] scroll & shadow
|
|
172
|
+
- [ ] typing animation
|
|
113
173
|
|
|
114
174
|
- [ ] Alerts
|
|
115
175
|
- [ ] toast
|
|
116
176
|
- [ ] rich notification
|
|
117
|
-
- [ ] Modal/dialog
|
|
118
|
-
- [ ] drawer/panel
|
|
119
|
-
- [ ] collapsible
|
|
120
|
-
- [ ] position
|
|
121
|
-
- [ ] backdrop
|
|
122
|
-
- [ ] click outside
|
|
123
|
-
- [ ] scrollbar ?
|
|
124
177
|
- [ ] container
|
|
125
178
|
- [x] transition
|
|
126
179
|
- [ ] split/resizable
|
|
@@ -5,12 +5,14 @@
|
|
|
5
5
|
|
|
6
6
|
import IconCircleLoading from '../icons/IconCircleLoading.svelte';
|
|
7
7
|
import { toAction, toActionProps, toTransition, toTransitionProps } from '../utils/action.utils.js';
|
|
8
|
-
import {
|
|
8
|
+
import { getColorVariable } from '../utils/colors.utils.js';
|
|
9
|
+
import { enterTransitionProps } from '../utils/transition.utils.js';
|
|
9
10
|
|
|
10
11
|
/* eslint-disable prefer-const -- necessary for binding checked */
|
|
11
12
|
let {
|
|
12
13
|
// Snippets
|
|
13
14
|
children,
|
|
15
|
+
label,
|
|
14
16
|
icon,
|
|
15
17
|
|
|
16
18
|
// States
|
|
@@ -27,11 +29,14 @@
|
|
|
27
29
|
|
|
28
30
|
// Styles
|
|
29
31
|
start,
|
|
32
|
+
color,
|
|
33
|
+
ghost,
|
|
30
34
|
text,
|
|
31
35
|
flat,
|
|
32
36
|
glass,
|
|
33
37
|
rounded,
|
|
34
38
|
inset,
|
|
39
|
+
shallow,
|
|
35
40
|
reverse,
|
|
36
41
|
coalesce,
|
|
37
42
|
pulse,
|
|
@@ -46,6 +51,7 @@
|
|
|
46
51
|
onclick,
|
|
47
52
|
onkeydown,
|
|
48
53
|
onkeyup,
|
|
54
|
+
onblur,
|
|
49
55
|
|
|
50
56
|
// Transition
|
|
51
57
|
in: inAction,
|
|
@@ -63,7 +69,7 @@
|
|
|
63
69
|
let enter = $state(false);
|
|
64
70
|
let active = $state(false);
|
|
65
71
|
const pressed = $derived(enter || active || checked);
|
|
66
|
-
const empty = $derived(only || !children);
|
|
72
|
+
const empty = $derived(only || (!children && !label));
|
|
67
73
|
|
|
68
74
|
let timeout: ReturnType<typeof setTimeout>;
|
|
69
75
|
const onActive = () => {
|
|
@@ -99,6 +105,11 @@
|
|
|
99
105
|
onkeyup?.(e);
|
|
100
106
|
};
|
|
101
107
|
|
|
108
|
+
const onBlur: NeoButtonProps['onblur'] = e => {
|
|
109
|
+
enter = false;
|
|
110
|
+
onblur?.(e);
|
|
111
|
+
};
|
|
112
|
+
|
|
102
113
|
const element = $derived(tag ?? (href ? 'a' : 'button'));
|
|
103
114
|
const role = $derived(!['button', 'a'].includes(element) ? 'button' : undefined);
|
|
104
115
|
const tabindex = $derived(!disabled && role ? 0 : undefined);
|
|
@@ -115,7 +126,7 @@
|
|
|
115
126
|
<svelte:element
|
|
116
127
|
this={element}
|
|
117
128
|
bind:this={ref}
|
|
118
|
-
{href}
|
|
129
|
+
href={loading || disabled ? undefined : href}
|
|
119
130
|
{role}
|
|
120
131
|
{tabindex}
|
|
121
132
|
class:neo-button={true}
|
|
@@ -127,11 +138,14 @@
|
|
|
127
138
|
class:neo-skeleton={skeleton}
|
|
128
139
|
class:neo-start={start}
|
|
129
140
|
class:neo-glass={glass}
|
|
130
|
-
class:neo-flat={flat || text}
|
|
131
|
-
class:neo-
|
|
141
|
+
class:neo-flat={flat || text || ghost}
|
|
142
|
+
class:neo-ghost={ghost}
|
|
143
|
+
class:neo-borderless={text || ghost}
|
|
132
144
|
class:neo-inset={inset}
|
|
145
|
+
class:neo-shallow={shallow}
|
|
133
146
|
class:neo-rounded={rounded}
|
|
134
147
|
class:neo-empty={empty}
|
|
148
|
+
style:--neo-btn-text-color={getColorVariable(color)}
|
|
135
149
|
style:justify-content={justify}
|
|
136
150
|
style:align-items={align}
|
|
137
151
|
style:flex
|
|
@@ -141,12 +155,13 @@
|
|
|
141
155
|
onkeydown={onKeydownEnter}
|
|
142
156
|
onkeyup={onKeyUpEnter}
|
|
143
157
|
onclick={onClick}
|
|
144
|
-
|
|
158
|
+
onblur={onBlur}
|
|
159
|
+
{disabled}
|
|
145
160
|
{...rest}
|
|
146
161
|
>
|
|
147
|
-
<
|
|
162
|
+
<div class="neo-content" class:neo-reverse={reverse}>
|
|
148
163
|
{#if loading || icon}
|
|
149
|
-
<span class="neo-icon" class:neo-only={empty} transition:width={
|
|
164
|
+
<span class="neo-icon" class:neo-only={empty} transition:width={enterTransitionProps}>
|
|
150
165
|
{#if loading}
|
|
151
166
|
<IconCircleLoading />
|
|
152
167
|
{:else}
|
|
@@ -155,9 +170,14 @@
|
|
|
155
170
|
</span>
|
|
156
171
|
{/if}
|
|
157
172
|
{#if !empty}
|
|
173
|
+
{#if typeof label === 'string'}
|
|
174
|
+
<span class="neo-label">{label}</span>
|
|
175
|
+
{:else}
|
|
176
|
+
{@render label?.()}
|
|
177
|
+
{/if}
|
|
158
178
|
{@render children?.()}
|
|
159
179
|
{/if}
|
|
160
|
-
</
|
|
180
|
+
</div>
|
|
161
181
|
</svelte:element>
|
|
162
182
|
|
|
163
183
|
<style>.neo-button.neo-pulse::after, .neo-button.neo-pulse::before, .neo-button.neo-coalesce::after, .neo-button.neo-coalesce::before {
|
|
@@ -174,12 +194,12 @@
|
|
|
174
194
|
}
|
|
175
195
|
|
|
176
196
|
.neo-button {
|
|
177
|
-
display: flex;
|
|
197
|
+
display: inline-flex;
|
|
178
198
|
align-items: center;
|
|
179
199
|
justify-content: center;
|
|
180
200
|
box-sizing: border-box;
|
|
181
201
|
min-width: var(--neo-btn-min-width);
|
|
182
|
-
min-height:
|
|
202
|
+
min-height: var(--neo-btn-min-height, var(--neo-line-height));
|
|
183
203
|
margin: var(--neo-btn-margin, var(--neo-shadow-margin, 0.625rem));
|
|
184
204
|
padding: var(--neo-btn-padding, 0.25rem 0.75rem);
|
|
185
205
|
color: var(--neo-btn-text-color, inherit);
|
|
@@ -199,31 +219,84 @@
|
|
|
199
219
|
cursor: wait;
|
|
200
220
|
}
|
|
201
221
|
.neo-button.neo-inset {
|
|
202
|
-
--neo-box-shadow-
|
|
203
|
-
--neo-
|
|
222
|
+
--neo-btn-box-shadow-active: var(--neo-box-shadow-inset-1);
|
|
223
|
+
--neo-btn-box-shadow-focus-active: var(--neo-box-shadow-inset-1);
|
|
224
|
+
}
|
|
225
|
+
.neo-button.neo-shallow {
|
|
226
|
+
--neo-btn-box-shadow-active: var(--neo-box-shadow-pressed-1);
|
|
227
|
+
--neo-btn-box-shadow-focus-active: var(--neo-box-shadow-pressed-1);
|
|
228
|
+
--neo-btn-box-shadow-active-flat: var(--neo-box-shadow-inset-2);
|
|
229
|
+
--neo-btn-box-shadow-active-flat-toggle: var(--neo-box-shadow-inset-2);
|
|
230
|
+
--neo-btn-scale-pressed: 1;
|
|
231
|
+
}
|
|
232
|
+
.neo-button .neo-content {
|
|
233
|
+
display: inline-flex;
|
|
234
|
+
align-items: center;
|
|
235
|
+
justify-content: center;
|
|
236
|
+
width: 100%;
|
|
237
|
+
height: 100%;
|
|
238
|
+
backface-visibility: hidden;
|
|
239
|
+
transition: color 0.3s ease, scale 0.3s ease;
|
|
240
|
+
scale: 1;
|
|
241
|
+
}
|
|
242
|
+
.neo-button .neo-content .neo-icon:not(.neo-only) {
|
|
243
|
+
margin-right: var(--neo-btn-icon-gap, 0.35rem);
|
|
244
|
+
margin-left: var(--neo-btn-icon-offset, calc(0.25rem - var(--neo-btn-icon-gap, 0.5rem)));
|
|
245
|
+
}
|
|
246
|
+
.neo-button .neo-content.neo-reverse {
|
|
247
|
+
flex-direction: row-reverse;
|
|
248
|
+
}
|
|
249
|
+
.neo-button .neo-content.neo-reverse .neo-icon:not(.neo-only) {
|
|
250
|
+
margin-right: var(--neo-btn-icon-offset, calc(0.25rem - var(--neo-btn-icon-gap, 0.5rem)));
|
|
251
|
+
margin-left: var(--neo-btn-icon-gap, 0.35rem);
|
|
252
|
+
}
|
|
253
|
+
.neo-button.neo-ghost {
|
|
254
|
+
justify-content: unset;
|
|
255
|
+
padding: var(--neo-btn-padding, 0);
|
|
256
|
+
border: none;
|
|
257
|
+
}
|
|
258
|
+
.neo-button.neo-ghost .neo-content {
|
|
259
|
+
justify-content: unset;
|
|
260
|
+
text-align: start;
|
|
204
261
|
}
|
|
205
262
|
.neo-button:hover {
|
|
206
|
-
color: var(--neo-btn-text-color-hover, inherit);
|
|
207
263
|
box-shadow: var(--neo-btn-box-shadow-hover, var(--neo-box-shadow-raised-2));
|
|
208
264
|
}
|
|
265
|
+
.neo-button:hover .neo-content {
|
|
266
|
+
color: var(--neo-btn-text-color-hover, var(--neo-text-color-hover));
|
|
267
|
+
}
|
|
268
|
+
.neo-button:focus-visible .neo-content {
|
|
269
|
+
color: var(--neo-btn-text-color-focused, var(--neo-text-color-focused));
|
|
270
|
+
}
|
|
209
271
|
.neo-button.neo-pressed, .neo-button:active:not(.neo-loading) {
|
|
210
|
-
color: var(--neo-btn-text-color-active, var(--neo-text-color-active));
|
|
211
272
|
box-shadow: var(--neo-btn-box-shadow-active, var(--neo-box-shadow-pressed-2));
|
|
212
273
|
transition: opacity 0.3s ease, color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease, backdrop-filter 0.3s ease, border-radius 0.3s ease, box-shadow 0.15s ease-out;
|
|
213
274
|
}
|
|
275
|
+
.neo-button.neo-pressed .neo-content, .neo-button:active:not(.neo-loading) .neo-content {
|
|
276
|
+
scale: var(--neo-btn-scale-pressed, 0.98);
|
|
277
|
+
color: var(--neo-btn-text-color-active, var(--neo-text-color-active));
|
|
278
|
+
}
|
|
279
|
+
.neo-button:disabled:disabled .neo-content, .neo-button[disabled]:not([disabled=false]) .neo-content {
|
|
280
|
+
color: var(--neo-btn-text-color-disabled, var(--neo-text-color-disabled));
|
|
281
|
+
scale: 1;
|
|
282
|
+
}
|
|
214
283
|
.neo-button:focus-visible {
|
|
215
|
-
color: var(--neo-btn-text-color-focused, var(--neo-text-color-focused));
|
|
216
284
|
outline: none;
|
|
217
285
|
box-shadow: var(--neo-btn-box-shadow-focus, var(--neo-box-shadow-raised-2));
|
|
218
|
-
transition: opacity 0.3s ease, color
|
|
286
|
+
transition: opacity 0.3s ease, color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease, backdrop-filter 0.3s ease, border-radius 0.3s ease, box-shadow 0.15s ease-out;
|
|
219
287
|
}
|
|
220
|
-
.neo-button:focus-visible:hover {
|
|
288
|
+
.neo-button:focus-visible:not(:hover) .neo-content {
|
|
289
|
+
transition: color 0s ease, scale 0.3s ease;
|
|
290
|
+
}
|
|
291
|
+
.neo-button:focus-visible:hover .neo-content {
|
|
221
292
|
color: var(--neo-btn-text-color-focused-hover, var(--neo-text-color-focused));
|
|
222
293
|
}
|
|
223
294
|
.neo-button:focus-visible.neo-pressed, .neo-button:focus-visible:active:not(.neo-loading) {
|
|
224
|
-
color: var(--neo-btn-text-color-focused-active, var(--neo-text-color-focused-active));
|
|
225
295
|
box-shadow: var(--neo-btn-box-shadow-focus-active, var(--neo-box-shadow-pressed-2));
|
|
226
296
|
}
|
|
297
|
+
.neo-button:focus-visible.neo-pressed .neo-content, .neo-button:focus-visible:active:not(.neo-loading) .neo-content {
|
|
298
|
+
color: var(--neo-btn-text-color-focused-active, var(--neo-text-color-focused-active));
|
|
299
|
+
}
|
|
227
300
|
.neo-button.neo-borderless {
|
|
228
301
|
border-color: transparent !important;
|
|
229
302
|
}
|
|
@@ -234,10 +307,7 @@
|
|
|
234
307
|
border-color: var(--neo-btn-border-color, var(--neo-border-color));
|
|
235
308
|
box-shadow: var(--neo-box-shadow-flat);
|
|
236
309
|
}
|
|
237
|
-
.neo-button.neo-flat:focus-visible {
|
|
238
|
-
border-color: var(--neo-btn-border-color-focused, var(--neo-border-color-focused));
|
|
239
|
-
}
|
|
240
|
-
.neo-button.neo-flat:hover {
|
|
310
|
+
.neo-button.neo-flat:focus-visible, .neo-button.neo-flat:hover {
|
|
241
311
|
border-color: transparent;
|
|
242
312
|
box-shadow: var(--neo-btn-box-shadow-hover-flat, var(--neo-box-shadow-inset-1));
|
|
243
313
|
}
|
|
@@ -300,8 +370,11 @@
|
|
|
300
370
|
.neo-button.neo-glass.neo-inset.neo-pressed, .neo-button.neo-glass.neo-inset:active:not(.neo-loading) {
|
|
301
371
|
border-color: transparent;
|
|
302
372
|
}
|
|
303
|
-
.neo-button.neo-glass.neo-flat {
|
|
304
|
-
border-color: var(--neo-btn-border-color, var(--neo-glass-border-color));
|
|
373
|
+
.neo-button.neo-glass.neo-flat:not(.neo-pressed, :active:not(.neo-loading)) {
|
|
374
|
+
border-color: var(--neo-btn-border-color, var(--neo-glass-border-color-flat));
|
|
375
|
+
}
|
|
376
|
+
.neo-button.neo-glass.neo-flat:not(.neo-pressed, :active:not(.neo-loading)):hover {
|
|
377
|
+
border-color: transparent;
|
|
305
378
|
}
|
|
306
379
|
@starting-style {
|
|
307
380
|
.neo-button.neo-start {
|
|
@@ -312,7 +385,6 @@
|
|
|
312
385
|
}
|
|
313
386
|
}
|
|
314
387
|
.neo-button:disabled:disabled, .neo-button[disabled]:not([disabled=false]) {
|
|
315
|
-
color: var(--neo-btn-text-color-disabled, var(--neo-text-color-disabled));
|
|
316
388
|
cursor: not-allowed;
|
|
317
389
|
opacity: var(--neo-btn-opacity-disabled, var(--neo-opacity-disabled));
|
|
318
390
|
}
|
|
@@ -327,12 +399,14 @@
|
|
|
327
399
|
.neo-button.neo-skeleton {
|
|
328
400
|
box-shadow: var(--neo-box-shadow-flat) !important;
|
|
329
401
|
pointer-events: none;
|
|
330
|
-
--neo-skeleton-
|
|
331
|
-
--neo-skeleton-
|
|
332
|
-
color: var(--neo-skeleton-color
|
|
333
|
-
background-color: var(--neo-skeleton-color
|
|
334
|
-
|
|
335
|
-
|
|
402
|
+
--neo-skeleton-start: 1;
|
|
403
|
+
--neo-skeleton-end: calc(1 + var(--neo-skeleton-step, -0.3));
|
|
404
|
+
color: var(--neo-skeleton-color);
|
|
405
|
+
background-color: var(--neo-skeleton-color);
|
|
406
|
+
background-clip: padding-box;
|
|
407
|
+
border-color: var(--neo-skeleton-color);
|
|
408
|
+
opacity: 1;
|
|
409
|
+
transition: background-color 1s ease, color 1s ease, border-color 1s ease, opacity 1s ease;
|
|
336
410
|
animation: skeleton 3s var(--neo-transition-skeleton) infinite;
|
|
337
411
|
animation-delay: 1s;
|
|
338
412
|
}
|
|
@@ -344,25 +418,11 @@
|
|
|
344
418
|
pointer-events: none;
|
|
345
419
|
}
|
|
346
420
|
@keyframes skeleton {
|
|
347
|
-
0% {
|
|
348
|
-
|
|
349
|
-
background-color: var(--neo-skeleton-color-start);
|
|
350
|
-
border-color: var(--neo-skeleton-color-start);
|
|
421
|
+
0%, 80%, 100% {
|
|
422
|
+
opacity: var(--neo-skeleton-start);
|
|
351
423
|
}
|
|
352
424
|
40% {
|
|
353
|
-
|
|
354
|
-
background-color: var(--neo-skeleton-color-end);
|
|
355
|
-
border-color: var(--neo-skeleton-color-end);
|
|
356
|
-
}
|
|
357
|
-
80% {
|
|
358
|
-
color: var(--neo-skeleton-color-start);
|
|
359
|
-
background-color: var(--neo-skeleton-color-start);
|
|
360
|
-
border-color: var(--neo-skeleton-color-start);
|
|
361
|
-
}
|
|
362
|
-
100% {
|
|
363
|
-
color: var(--neo-skeleton-color-start);
|
|
364
|
-
background-color: var(--neo-skeleton-color-start);
|
|
365
|
-
border-color: var(--neo-skeleton-color-start);
|
|
425
|
+
opacity: var(--neo-skeleton-end);
|
|
366
426
|
}
|
|
367
427
|
}
|
|
368
428
|
.neo-button.neo-rounded {
|
|
@@ -455,25 +515,4 @@
|
|
|
455
515
|
transform: scale(1);
|
|
456
516
|
opacity: 0;
|
|
457
517
|
}
|
|
458
|
-
}
|
|
459
|
-
.neo-button .neo-icon,
|
|
460
|
-
.neo-button .neo-content {
|
|
461
|
-
display: inline-flex;
|
|
462
|
-
align-items: center;
|
|
463
|
-
justify-content: center;
|
|
464
|
-
min-width: max-content;
|
|
465
|
-
}
|
|
466
|
-
.neo-button .neo-content {
|
|
467
|
-
height: 100%;
|
|
468
|
-
}
|
|
469
|
-
.neo-button .neo-content .neo-icon:not(.neo-only) {
|
|
470
|
-
margin-right: var(--neo-btn-icon-gap, 0.35rem);
|
|
471
|
-
margin-left: var(--neo-btn-icon-offset, calc(0.25rem - var(--neo-btn-icon-gap, 0.35rem)));
|
|
472
|
-
}
|
|
473
|
-
.neo-button .neo-content.neo-reverse {
|
|
474
|
-
flex-direction: row-reverse;
|
|
475
|
-
}
|
|
476
|
-
.neo-button .neo-content.neo-reverse .neo-icon:not(.neo-only) {
|
|
477
|
-
margin-right: var(--neo-btn-icon-offset, calc(0.25rem - var(--neo-btn-icon-gap, 0.35rem)));
|
|
478
|
-
margin-left: var(--neo-btn-icon-gap, 0.35rem);
|
|
479
518
|
}</style>
|