@statistikzh/leu 0.23.0 → 0.24.1

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.
Files changed (97) hide show
  1. package/.github/workflows/ci.yml +8 -8
  2. package/.github/workflows/deploy-github-pages.yaml +2 -2
  3. package/.github/workflows/publish.yml +37 -0
  4. package/.github/workflows/release-please.yml +1 -19
  5. package/.release-please-manifest.json +1 -1
  6. package/CHANGELOG.md +26 -0
  7. package/dist/Accordion.js +1 -1
  8. package/dist/Button.js +1 -1
  9. package/dist/ButtonGroup.js +1 -1
  10. package/dist/ChartWrapper.js +1 -1
  11. package/dist/Checkbox.js +1 -1
  12. package/dist/CheckboxGroup.js +1 -1
  13. package/dist/Chip.js +1 -1
  14. package/dist/ChipGroup.js +1 -1
  15. package/dist/ChipLink.js +1 -1
  16. package/dist/ChipRemovable.js +1 -1
  17. package/dist/ChipSelectable.js +1 -1
  18. package/dist/Dialog.js +1 -1
  19. package/dist/Dropdown.js +1 -1
  20. package/dist/FileInput.d.ts +0 -1
  21. package/dist/FileInput.js +1 -35
  22. package/dist/Icon.js +1 -1
  23. package/dist/Input.js +1 -1
  24. package/dist/{LeuElement-CWseJvWv.js → LeuElement-jrR2M5pZ.js} +1 -1
  25. package/dist/Menu.js +1 -1
  26. package/dist/MenuItem.js +1 -1
  27. package/dist/Message.js +1 -1
  28. package/dist/Pagination.js +1 -1
  29. package/dist/Placeholder.js +1 -1
  30. package/dist/Popup.js +1 -1
  31. package/dist/ProgressBar.js +1 -1
  32. package/dist/Radio.js +1 -1
  33. package/dist/RadioGroup.js +1 -1
  34. package/dist/Range.d.ts +83 -20
  35. package/dist/Range.js +276 -73
  36. package/dist/ScrollTop.js +2 -25
  37. package/dist/Select.js +1 -1
  38. package/dist/Spinner.js +1 -1
  39. package/dist/Table.js +1 -1
  40. package/dist/Tag.js +1 -1
  41. package/dist/VisuallyHidden.js +1 -1
  42. package/dist/components/file-input/FileInput.d.ts +2 -2
  43. package/dist/components/file-input/FileInput.d.ts.map +1 -1
  44. package/dist/components/range/Range.d.ts +84 -20
  45. package/dist/components/range/Range.d.ts.map +1 -1
  46. package/dist/components/range/stories/range.stories.d.ts +231 -0
  47. package/dist/components/range/stories/range.stories.d.ts.map +1 -0
  48. package/dist/components/range/test/range.test.d.ts.map +1 -1
  49. package/dist/index.js +2 -2
  50. package/dist/leu-accordion.js +1 -1
  51. package/dist/leu-button-group.js +1 -1
  52. package/dist/leu-button.js +1 -1
  53. package/dist/leu-chart-wrapper.js +1 -1
  54. package/dist/leu-checkbox-group.js +1 -1
  55. package/dist/leu-checkbox.js +1 -1
  56. package/dist/leu-chip-group.js +1 -1
  57. package/dist/leu-chip-link.js +1 -1
  58. package/dist/leu-chip-removable.js +1 -1
  59. package/dist/leu-chip-selectable.js +1 -1
  60. package/dist/leu-dialog.js +1 -1
  61. package/dist/leu-dropdown.js +1 -1
  62. package/dist/leu-file-input.d.ts +0 -1
  63. package/dist/leu-file-input.js +1 -35
  64. package/dist/leu-icon.js +1 -1
  65. package/dist/leu-input.js +1 -1
  66. package/dist/leu-menu-item.js +1 -1
  67. package/dist/leu-menu.js +1 -1
  68. package/dist/leu-message.js +1 -1
  69. package/dist/leu-pagination.js +1 -1
  70. package/dist/leu-placeholder.js +1 -1
  71. package/dist/leu-popup.js +1 -1
  72. package/dist/leu-progress-bar.js +1 -1
  73. package/dist/leu-radio-group.js +1 -1
  74. package/dist/leu-radio.js +1 -1
  75. package/dist/leu-range.js +3 -1
  76. package/dist/leu-scroll-top.js +2 -1
  77. package/dist/leu-select.js +1 -1
  78. package/dist/leu-spinner.js +1 -1
  79. package/dist/leu-table.js +1 -1
  80. package/dist/leu-tag.js +1 -1
  81. package/dist/leu-visually-hidden.js +1 -1
  82. package/dist/lib/utils.d.ts +10 -3
  83. package/dist/lib/utils.d.ts.map +1 -1
  84. package/dist/utils-DBGsNSJW.js +33 -0
  85. package/dist/vscode.html-custom-data.json +142 -89
  86. package/dist/vue/index.d.ts +132 -107
  87. package/dist/web-types.json +269 -169
  88. package/package.json +6 -2
  89. package/src/components/file-input/FileInput.ts +2 -2
  90. package/src/components/range/Range.ts +257 -85
  91. package/src/components/range/range.css +48 -1
  92. package/src/components/range/stories/range.stories.ts +185 -0
  93. package/src/components/range/test/range.test.ts +210 -6
  94. package/src/lib/utils.ts +13 -3
  95. package/dist/components/range/stories/range-slider.stories.d.ts +0 -26
  96. package/dist/components/range/stories/range-slider.stories.d.ts.map +0 -1
  97. package/src/components/range/stories/range-slider.stories.ts +0 -142
@@ -7,10 +7,10 @@ jobs:
7
7
  runs-on: ubuntu-latest
8
8
 
9
9
  steps:
10
- - uses: actions/checkout@v4
10
+ - uses: actions/checkout@v6
11
11
 
12
12
  - name: Use Node.js
13
- uses: actions/setup-node@v4
13
+ uses: actions/setup-node@v6
14
14
  with:
15
15
  node-version-file: ".nvmrc"
16
16
  cache: "npm"
@@ -25,10 +25,10 @@ jobs:
25
25
  needs: lint
26
26
 
27
27
  steps:
28
- - uses: actions/checkout@v4
28
+ - uses: actions/checkout@v6
29
29
 
30
30
  - name: Use Node.js
31
- uses: actions/setup-node@v4
31
+ uses: actions/setup-node@v6
32
32
  with:
33
33
  node-version-file: ".nvmrc"
34
34
  cache: "npm"
@@ -47,10 +47,10 @@ jobs:
47
47
 
48
48
  steps:
49
49
  - name: Checkout code
50
- uses: actions/checkout@v4
50
+ uses: actions/checkout@v6
51
51
 
52
52
  - name: Use Node.js
53
- uses: actions/setup-node@v4
53
+ uses: actions/setup-node@v6
54
54
  with:
55
55
  node-version-file: ".nvmrc"
56
56
  cache: "npm"
@@ -62,7 +62,7 @@ jobs:
62
62
  run: npx playwright install
63
63
 
64
64
  - name: Cache Playwright binaries
65
- uses: actions/cache@v4
65
+ uses: actions/cache@v5
66
66
  with:
67
67
  path: ~/.cache/ms-playwright
68
68
  key: ${{ runner.os }}-playwright-${{ hashFiles('**/package-lock.json') }}
@@ -75,7 +75,7 @@ jobs:
75
75
  - name: Run tests
76
76
  run: npm test
77
77
 
78
- - uses: actions/upload-artifact@v4
78
+ - uses: actions/upload-artifact@v6
79
79
  with:
80
80
  name: coverage
81
81
  path: coverage/
@@ -18,10 +18,10 @@ jobs:
18
18
  # Job steps
19
19
  steps:
20
20
  # Manual Checkout
21
- - uses: actions/checkout@v4
21
+ - uses: actions/checkout@v6
22
22
 
23
23
  # Set up Node
24
- - uses: actions/setup-node@v4
24
+ - uses: actions/setup-node@v6
25
25
  with:
26
26
  node-version-file: ".nvmrc"
27
27
  cache: "npm"
@@ -0,0 +1,37 @@
1
+ name: Publish Package to npm
2
+
3
+ on:
4
+ workflow_dispatch:
5
+ push:
6
+ tags:
7
+ - "leu-v*"
8
+
9
+ permissions:
10
+ id-token: write # Required for OIDC
11
+ contents: read
12
+
13
+ jobs:
14
+ publish:
15
+ runs-on: ubuntu-latest
16
+ steps:
17
+ - uses: actions/checkout@v6
18
+
19
+ - uses: actions/setup-node@v6
20
+ with:
21
+ node-version-file: ".nvmrc"
22
+ cache: "npm"
23
+ registry-url: "https://registry.npmjs.org"
24
+
25
+ - name: Clear auth token for OIDC
26
+ run: echo "NODE_AUTH_TOKEN=" >> $GITHUB_ENV
27
+
28
+ - name: Upgrade npm for OIDC
29
+ run: npm install -g npm@latest
30
+
31
+ - run: npm --version
32
+ - run: npm ci
33
+ - run: npm run build
34
+ - name: Publish to npm
35
+ env:
36
+ NPM_CONFIG_PROVENANCE: true
37
+ run: npm publish
@@ -4,11 +4,10 @@ on:
4
4
  - main
5
5
 
6
6
  permissions:
7
- id-token: write
8
7
  contents: write
9
8
  pull-requests: write
10
9
 
11
- name: Create release and publish to npm
10
+ name: Create release
12
11
 
13
12
  jobs:
14
13
  release-please:
@@ -18,20 +17,3 @@ jobs:
18
17
  id: release
19
18
  with:
20
19
  token: ${{ secrets.RELEASE_PLEASE_TOKEN }}
21
- # The logic below handles the npm publication:
22
- - uses: actions/checkout@v4
23
- # these if statements ensure that a publication only occurs when
24
- # a new release is created:
25
- if: ${{ steps.release.outputs.release_created }}
26
- - uses: actions/setup-node@v4
27
- with:
28
- node-version-file: ".nvmrc"
29
- cache: "npm"
30
- registry-url: "https://registry.npmjs.org"
31
- if: ${{ steps.release.outputs.release_created }}
32
- - run: npm ci
33
- if: ${{ steps.release.outputs.release_created }}
34
- - run: npm run build
35
- if: ${{ steps.release.outputs.release_created }}
36
- - run: npm publish --access public
37
- if: ${{ steps.release.outputs.release_created }}
@@ -1,3 +1,3 @@
1
1
  {
2
- ".": "0.23.0"
2
+ ".": "0.24.1"
3
3
  }
package/CHANGELOG.md CHANGED
@@ -1,5 +1,31 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.24.1](https://github.com/statistikZH/leu/compare/leu-v0.24.0...leu-v0.24.1) (2026-02-12)
4
+
5
+
6
+ ### Bug Fixes
7
+
8
+ * **file-input:** fix import location to avoid circular dependency and ensure lazy registration ([2586597](https://github.com/statistikZH/leu/commit/2586597ecd541bda68e530bbddb559b5cdc71d6d))
9
+ * **range:** move the value state to the component itself ([#330](https://github.com/statistikZH/leu/issues/330)) ([20cca8d](https://github.com/statistikZH/leu/commit/20cca8da00b87d55f71b2aa48eeb3ab3f7abbf05))
10
+
11
+ ## [0.24.0](https://github.com/statistikZH/leu/compare/leu-v0.23.0...leu-v0.24.0) (2026-02-09)
12
+
13
+
14
+ ### ⚠ BREAKING CHANGES
15
+
16
+ * **range:** The height of the element changed. When the label was empty it still rendered an empty element. This is now removed. Also the height of the range element was reduced by 4px to match the design specification.
17
+
18
+ ### Features
19
+
20
+ * **range:** add `hide-label` option to visually hide the label ([b344fa8](https://github.com/statistikZH/leu/commit/b344fa8f47b6b8c221211c5a7f84089762e29092))
21
+ * **range:** add `prefix`, `suffix` and `valueFormatter` properties to customize the value formatting ([b344fa8](https://github.com/statistikZH/leu/commit/b344fa8f47b6b8c221211c5a7f84089762e29092))
22
+ * **range:** add `show-ticks` and `show-range-labels` options to display ticks and the range value labels ([b344fa8](https://github.com/statistikZH/leu/commit/b344fa8f47b6b8c221211c5a7f84089762e29092))
23
+
24
+
25
+ ### Documentation
26
+
27
+ * **range:** rename story file to match convention ([b344fa8](https://github.com/statistikZH/leu/commit/b344fa8f47b6b8c221211c5a7f84089762e29092))
28
+
3
29
  ## [0.23.0](https://github.com/statistikZH/leu/compare/leu-v0.22.1...leu-v0.23.0) (2026-01-20)
4
30
 
5
31
 
package/dist/Accordion.js CHANGED
@@ -2,7 +2,7 @@ import { _ as __decorate } from './_tslib-CNEFicEt.js';
2
2
  import { css, nothing } from 'lit';
3
3
  import { unsafeStatic, html } from 'lit/static-html.js';
4
4
  import { property } from 'lit/decorators.js';
5
- import { L as LeuElement } from './LeuElement-CWseJvWv.js';
5
+ import { L as LeuElement } from './LeuElement-jrR2M5pZ.js';
6
6
 
7
7
  var css_248z = css`:host {
8
8
  --accordion-font-regular: var(--leu-font-family-regular);
package/dist/Button.js CHANGED
@@ -4,7 +4,7 @@ import { classMap } from 'lit/directives/class-map.js';
4
4
  import { ifDefined } from 'lit/directives/if-defined.js';
5
5
  import { property } from 'lit/decorators.js';
6
6
  import { LeuIcon } from './Icon.js';
7
- import { L as LeuElement } from './LeuElement-CWseJvWv.js';
7
+ import { L as LeuElement } from './LeuElement-jrR2M5pZ.js';
8
8
  import { H as HasSlotController } from './hasSlotController-Bm2tipvG.js';
9
9
 
10
10
  /**
@@ -1,5 +1,5 @@
1
1
  import { css, html } from 'lit';
2
- import { L as LeuElement } from './LeuElement-CWseJvWv.js';
2
+ import { L as LeuElement } from './LeuElement-jrR2M5pZ.js';
3
3
  import { LeuButton } from './Button.js';
4
4
  import './_tslib-CNEFicEt.js';
5
5
  import 'lit/directives/class-map.js';
@@ -1,7 +1,7 @@
1
1
  import { _ as __decorate } from './_tslib-CNEFicEt.js';
2
2
  import { css, nothing, html } from 'lit';
3
3
  import { property } from 'lit/decorators.js';
4
- import { L as LeuElement } from './LeuElement-CWseJvWv.js';
4
+ import { L as LeuElement } from './LeuElement-jrR2M5pZ.js';
5
5
  import { H as HasSlotController } from './hasSlotController-Bm2tipvG.js';
6
6
  import { LeuSpinner } from './Spinner.js';
7
7
 
package/dist/Checkbox.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { _ as __decorate } from './_tslib-CNEFicEt.js';
2
2
  import { css, html } from 'lit';
3
3
  import { property } from 'lit/decorators.js';
4
- import { L as LeuElement } from './LeuElement-CWseJvWv.js';
4
+ import { L as LeuElement } from './LeuElement-jrR2M5pZ.js';
5
5
  import { LeuIcon } from './Icon.js';
6
6
 
7
7
  var css_248z = css`:host {
@@ -2,7 +2,7 @@ import { _ as __decorate } from './_tslib-CNEFicEt.js';
2
2
  import { css, html } from 'lit';
3
3
  import { classMap } from 'lit/directives/class-map.js';
4
4
  import { property } from 'lit/decorators.js';
5
- import { L as LeuElement } from './LeuElement-CWseJvWv.js';
5
+ import { L as LeuElement } from './LeuElement-jrR2M5pZ.js';
6
6
  import { LeuCheckbox } from './Checkbox.js';
7
7
  import './Icon.js';
8
8
 
package/dist/Chip.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { _ as __decorate } from './_tslib-CNEFicEt.js';
2
2
  import { property } from 'lit/decorators.js';
3
- import { L as LeuElement } from './LeuElement-CWseJvWv.js';
3
+ import { L as LeuElement } from './LeuElement-jrR2M5pZ.js';
4
4
  import { css } from 'lit';
5
5
 
6
6
  var css_248z = css`:host *::before,
package/dist/ChipGroup.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { _ as __decorate } from './_tslib-CNEFicEt.js';
2
2
  import { unsafeStatic, html } from 'lit/static-html.js';
3
3
  import { property } from 'lit/decorators.js';
4
- import { L as LeuElement } from './LeuElement-CWseJvWv.js';
4
+ import { L as LeuElement } from './LeuElement-jrR2M5pZ.js';
5
5
  import { css } from 'lit';
6
6
  import { LeuChipSelectable } from './ChipSelectable.js';
7
7
  import './Chip.js';
package/dist/ChipLink.js CHANGED
@@ -2,7 +2,7 @@ import { _ as __decorate } from './_tslib-CNEFicEt.js';
2
2
  import { html } from 'lit';
3
3
  import { property } from 'lit/decorators.js';
4
4
  import { LeuChipBase } from './Chip.js';
5
- import './LeuElement-CWseJvWv.js';
5
+ import './LeuElement-jrR2M5pZ.js';
6
6
 
7
7
  /**
8
8
  * @tagname leu-chip-link
@@ -3,7 +3,7 @@ import { html } from 'lit';
3
3
  import { property } from 'lit/decorators.js';
4
4
  import { LeuChipBase } from './Chip.js';
5
5
  import { LeuIcon } from './Icon.js';
6
- import './LeuElement-CWseJvWv.js';
6
+ import './LeuElement-jrR2M5pZ.js';
7
7
 
8
8
  /**
9
9
  * @slot - The content of the chip
@@ -2,7 +2,7 @@ import { _ as __decorate } from './_tslib-CNEFicEt.js';
2
2
  import { html } from 'lit';
3
3
  import { property } from 'lit/decorators.js';
4
4
  import { LeuChipBase } from './Chip.js';
5
- import './LeuElement-CWseJvWv.js';
5
+ import './LeuElement-jrR2M5pZ.js';
6
6
 
7
7
  /**
8
8
  * A chip component that can be selected.
package/dist/Dialog.js CHANGED
@@ -3,7 +3,7 @@ import { css, nothing, html } from 'lit';
3
3
  import { createRef, ref } from 'lit/directives/ref.js';
4
4
  import { classMap } from 'lit/directives/class-map.js';
5
5
  import { property } from 'lit/decorators.js';
6
- import { L as LeuElement } from './LeuElement-CWseJvWv.js';
6
+ import { L as LeuElement } from './LeuElement-jrR2M5pZ.js';
7
7
  import { H as HasSlotController } from './hasSlotController-Bm2tipvG.js';
8
8
  import { LeuIcon } from './Icon.js';
9
9
 
package/dist/Dropdown.js CHANGED
@@ -2,7 +2,7 @@ import { _ as __decorate } from './_tslib-CNEFicEt.js';
2
2
  import { css, nothing, html } from 'lit';
3
3
  import { createRef, ref } from 'lit/directives/ref.js';
4
4
  import { property } from 'lit/decorators.js';
5
- import { L as LeuElement } from './LeuElement-CWseJvWv.js';
5
+ import { L as LeuElement } from './LeuElement-jrR2M5pZ.js';
6
6
  import { H as HasSlotController } from './hasSlotController-Bm2tipvG.js';
7
7
  import { LeuButton } from './Button.js';
8
8
  import { LeuMenu } from './Menu.js';
@@ -5,7 +5,6 @@ import { L as LeuElement } from './LeuElement.d-BevHqLUu.js';
5
5
  import { LeuButton } from './Button.js';
6
6
  import { L as LeuIcon } from './Icon.d-itcQ94ym.js';
7
7
  import { LeuVisuallyHidden } from './VisuallyHidden.js';
8
- import './leu-icon.js';
9
8
 
10
9
  /**
11
10
  * @todo Pluralize text when multiple files are allowed
package/dist/FileInput.js CHANGED
@@ -3,45 +3,11 @@ import { css, html, nothing } from 'lit';
3
3
  import { property, state, query } from 'lit/decorators.js';
4
4
  import { ifDefined } from 'lit/directives/if-defined.js';
5
5
  import { classMap } from 'lit/directives/class-map.js';
6
- import { L as LeuElement } from './LeuElement-CWseJvWv.js';
7
- import './Accordion.js';
6
+ import { L as LeuElement } from './LeuElement-jrR2M5pZ.js';
8
7
  import { LeuButton } from './Button.js';
9
- import './ButtonGroup.js';
10
- import './ChartWrapper.js';
11
- import './Checkbox.js';
12
- import './CheckboxGroup.js';
13
- import './ChipGroup.js';
14
- import './ChipLink.js';
15
- import './ChipRemovable.js';
16
- import './ChipSelectable.js';
17
- import './Dialog.js';
18
- import './Dropdown.js';
19
8
  import { LeuIcon } from './Icon.js';
20
- import './Input.js';
21
- import './Menu.js';
22
- import './MenuItem.js';
23
- import './Message.js';
24
- import './Pagination.js';
25
- import './Placeholder.js';
26
- import './Popup.js';
27
- import './ProgressBar.js';
28
- import './Radio.js';
29
- import './RadioGroup.js';
30
- import './Range.js';
31
- import './ScrollTop.js';
32
- import './Select.js';
33
- import './Spinner.js';
34
- import './Table.js';
35
- import './Tag.js';
36
9
  import { LeuVisuallyHidden } from './VisuallyHidden.js';
37
- import './leu-icon.js';
38
- import 'lit/static-html.js';
39
10
  import './hasSlotController-Bm2tipvG.js';
40
- import './Chip.js';
41
- import 'lit/directives/ref.js';
42
- import '@floating-ui/dom';
43
- import 'lit/directives/live.js';
44
- import 'lit/directive.js';
45
11
 
46
12
  var css_248z = css`:host {
47
13
  --file-input-font-regular: var(--leu-font-family-regular);
package/dist/Icon.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { _ as __decorate } from './_tslib-CNEFicEt.js';
2
2
  import { css, html, svg } from 'lit';
3
3
  import { property } from 'lit/decorators.js';
4
- import { L as LeuElement } from './LeuElement-CWseJvWv.js';
4
+ import { L as LeuElement } from './LeuElement-jrR2M5pZ.js';
5
5
 
6
6
  var css_248z = css`:host {
7
7
  display: contents;
package/dist/Input.js CHANGED
@@ -5,7 +5,7 @@ import { ifDefined } from 'lit/directives/if-defined.js';
5
5
  import { live } from 'lit/directives/live.js';
6
6
  import { createRef, ref } from 'lit/directives/ref.js';
7
7
  import { property, state } from 'lit/decorators.js';
8
- import { L as LeuElement } from './LeuElement-CWseJvWv.js';
8
+ import { L as LeuElement } from './LeuElement-jrR2M5pZ.js';
9
9
  import { LeuIcon } from './Icon.js';
10
10
 
11
11
  var css_248z = css`:host {
@@ -35,7 +35,7 @@ class LeuElement extends LitElement {
35
35
  }
36
36
  }
37
37
  }
38
- LeuElement.version = "0.23.0";
38
+ LeuElement.version = "0.24.1";
39
39
  LeuElement.dependencies = {};
40
40
  LeuElement.styles = css_248z;
41
41
 
package/dist/Menu.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { _ as __decorate } from './_tslib-CNEFicEt.js';
2
2
  import { css, html } from 'lit';
3
3
  import { property } from 'lit/decorators.js';
4
- import { L as LeuElement } from './LeuElement-CWseJvWv.js';
4
+ import { L as LeuElement } from './LeuElement-jrR2M5pZ.js';
5
5
  import { LeuMenuItem } from './MenuItem.js';
6
6
  import 'lit/directives/if-defined.js';
7
7
  import './Icon.js';
package/dist/MenuItem.js CHANGED
@@ -2,7 +2,7 @@ import { _ as __decorate } from './_tslib-CNEFicEt.js';
2
2
  import { css, html, nothing } from 'lit';
3
3
  import { ifDefined } from 'lit/directives/if-defined.js';
4
4
  import { property } from 'lit/decorators.js';
5
- import { L as LeuElement } from './LeuElement-CWseJvWv.js';
5
+ import { L as LeuElement } from './LeuElement-jrR2M5pZ.js';
6
6
  import { LeuIcon } from './Icon.js';
7
7
 
8
8
  var css_248z = css`:host {
package/dist/Message.js CHANGED
@@ -2,7 +2,7 @@ import { _ as __decorate } from './_tslib-CNEFicEt.js';
2
2
  import { css, html, nothing } from 'lit';
3
3
  import { property } from 'lit/decorators.js';
4
4
  import { classMap } from 'lit/directives/class-map.js';
5
- import { L as LeuElement } from './LeuElement-CWseJvWv.js';
5
+ import { L as LeuElement } from './LeuElement-jrR2M5pZ.js';
6
6
  import { LeuIcon } from './Icon.js';
7
7
  import { H as HasSlotController } from './hasSlotController-Bm2tipvG.js';
8
8
 
@@ -2,7 +2,7 @@ import { _ as __decorate } from './_tslib-CNEFicEt.js';
2
2
  import { css, html } from 'lit';
3
3
  import { live } from 'lit/directives/live.js';
4
4
  import { property, state } from 'lit/decorators.js';
5
- import { L as LeuElement } from './LeuElement-CWseJvWv.js';
5
+ import { L as LeuElement } from './LeuElement-jrR2M5pZ.js';
6
6
  import { LeuButton } from './Button.js';
7
7
  import { LeuVisuallyHidden } from './VisuallyHidden.js';
8
8
  import { LeuIcon } from './Icon.js';
@@ -1,5 +1,5 @@
1
1
  import { css, html } from 'lit';
2
- import { L as LeuElement } from './LeuElement-CWseJvWv.js';
2
+ import { L as LeuElement } from './LeuElement-jrR2M5pZ.js';
3
3
 
4
4
  var css_248z = css`:host {
5
5
  --placeholder-font-regular: var(--leu-font-family-regular);
package/dist/Popup.js CHANGED
@@ -2,7 +2,7 @@ import { _ as __decorate } from './_tslib-CNEFicEt.js';
2
2
  import { css, html } from 'lit';
3
3
  import { property } from 'lit/decorators.js';
4
4
  import { autoUpdate, offset, size, flip, shift, computePosition } from '@floating-ui/dom';
5
- import { L as LeuElement } from './LeuElement-CWseJvWv.js';
5
+ import { L as LeuElement } from './LeuElement-jrR2M5pZ.js';
6
6
 
7
7
  var css_248z = css`:host {
8
8
  --popup-font-regular: var(--leu-font-family-regular);
@@ -2,7 +2,7 @@ import { _ as __decorate } from './_tslib-CNEFicEt.js';
2
2
  import { css, nothing, html } from 'lit';
3
3
  import { ifDefined } from 'lit/directives/if-defined.js';
4
4
  import { property } from 'lit/decorators.js';
5
- import { L as LeuElement } from './LeuElement-CWseJvWv.js';
5
+ import { L as LeuElement } from './LeuElement-jrR2M5pZ.js';
6
6
 
7
7
  var css_248z = css`/* :host {
8
8
  --progress-bar-font-regular: var(--leu-font-family-regular);
package/dist/Radio.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { _ as __decorate } from './_tslib-CNEFicEt.js';
2
2
  import { css, html } from 'lit';
3
3
  import { property } from 'lit/decorators.js';
4
- import { L as LeuElement } from './LeuElement-CWseJvWv.js';
4
+ import { L as LeuElement } from './LeuElement-jrR2M5pZ.js';
5
5
 
6
6
  var css_248z = css`:host {
7
7
  --radio-color: var(--leu-color-black-40);
@@ -2,7 +2,7 @@ import { _ as __decorate } from './_tslib-CNEFicEt.js';
2
2
  import { css, html } from 'lit';
3
3
  import { classMap } from 'lit/directives/class-map.js';
4
4
  import { property } from 'lit/decorators.js';
5
- import { L as LeuElement } from './LeuElement-CWseJvWv.js';
5
+ import { L as LeuElement } from './LeuElement-jrR2M5pZ.js';
6
6
  import { LeuRadio } from './Radio.js';
7
7
 
8
8
  var css_248z = css`:host {
package/dist/Range.d.ts CHANGED
@@ -1,7 +1,9 @@
1
1
  import * as lit_html from 'lit-html';
2
2
  import * as lit from 'lit';
3
+ import { PropertyValues, nothing } from 'lit';
3
4
  import { L as LeuElement } from './LeuElement.d-BevHqLUu.js';
4
5
 
6
+ type InternalRangeValue = [number, number] | [number];
5
7
  /**
6
8
  * @tagname leu-range
7
9
  */
@@ -15,41 +17,102 @@ declare class LeuRange extends LeuElement {
15
17
  customElements?: CustomElementRegistry;
16
18
  registry?: CustomElementRegistry;
17
19
  };
20
+ /**
21
+ * The default value of the range slider.
22
+ * String input is parsed as a comma-separated list of numbers.
23
+ */
18
24
  defaultValue: number[];
25
+ /**
26
+ * The minimum value of the range slider.
27
+ */
19
28
  min: number;
29
+ /**
30
+ * The maximum value of the range slider.
31
+ */
20
32
  max: number;
33
+ /**
34
+ * The step size of the range slider.
35
+ */
21
36
  step: number;
22
37
  name: string;
38
+ /**
39
+ * The label of the range slider.
40
+ */
23
41
  label: string;
42
+ /**
43
+ * Whether to hide the label of the range slider.
44
+ * If true, the label will still be available for screen readers
45
+ * and is only visually hidden.
46
+ */
47
+ hideLabel: boolean;
48
+ /**
49
+ * Whether the range slider is disabled.
50
+ */
24
51
  disabled: boolean;
52
+ /**
53
+ * Whether to use a range with two handles.
54
+ */
25
55
  multiple: boolean;
56
+ /**
57
+ * Wheter to show tick marks below the range slider.
58
+ * One tick mark per step will be rendered.
59
+ */
60
+ showTicks: boolean;
61
+ /**
62
+ * Whether to show the min and max labels below the range slider.
63
+ */
64
+ showRangeLabels: boolean;
65
+ /**
66
+ * A prefix to display before the value in the output element(s).
67
+ * Is ignored if a custom valueFormatter is provided.
68
+ */
69
+ prefix: string;
70
+ /**
71
+ * A suffix to display after the value in the output element(s).
72
+ * Is ignored if a custom valueFormatter is provided.
73
+ */
74
+ suffix: string;
75
+ /**
76
+ * A custom function to format the value displayed in the output element(s).
77
+ * If provided, the prefix and suffix properties will be ignored.
78
+ */
79
+ valueFormatter?: (value: number) => string;
80
+ protected _value: InternalRangeValue;
81
+ /**
82
+ * The value of the range slider.
83
+ * String input is parsed as a comma-separated list of numbers.
84
+ * In multiple mode, if only a single value is provided, the second handle will be set to the minimum value.
85
+ * In single mode, only the first value will be used.
86
+ */
87
+ set value(value: string | number | Array<string | number>);
88
+ get value(): string;
89
+ get valueAsArray(): InternalRangeValue;
90
+ get valueLow(): number;
91
+ get valueHigh(): number;
92
+ protected container: HTMLDivElement;
93
+ protected inputBase: HTMLInputElement;
94
+ protected inputGhost: HTMLInputElement | null;
95
+ protected outputBase: HTMLOutputElement;
96
+ protected outputGhost: HTMLOutputElement | null;
26
97
  updated(): void;
27
- protected get _inputs(): HTMLInputElement[];
28
- protected _updateStyles(): void;
29
- get value(): string | Array<string>;
30
- /**
31
- * Sets the value of the underlying input element(s).
32
- * The value has to be an array if "multiple" range is used.
33
- * Otherwise it has to be a string.
34
- */
35
- set value(value: string | Array<string>);
36
- get valueAsArray(): number[];
37
- get valueLow(): string | number;
38
- get valueHigh(): string | number;
39
- protected _getBaseInput(): HTMLInputElement;
40
- protected _getGhostInput(): HTMLInputElement;
41
- protected _handleInput(_index: number, _e: InputEvent & {
98
+ protected willUpdate(changedProperties: PropertyValues<this>): void;
99
+ protected updateStyles(): void;
100
+ protected clampAndRoundValue(value: number): number;
101
+ protected handleInput(e: Event & {
42
102
  target: HTMLInputElement;
43
103
  }): void;
44
- protected _getNormalizedValue(value: number): number;
45
- protected _getNormalizedRange(): number[];
104
+ protected getNormalizedValue(value: number): number;
105
+ protected getNormalizedRange(): number[];
46
106
  /**
47
- * Determine if the "click" (pointer event) is closer the
48
- * the value of the other input element. Swap the values if this is the case.
107
+ * This event handler is only applied to the "base" input element and only when in "multiple" mode.
108
+ * It handles pointer events on the *track* and the thumb.
109
+ * This method determines if the interaction was closer to the base or the ghost input.
49
110
  */
50
- protected _handlePointerDown(e: PointerEvent & {
111
+ protected handlePointerDown(e: PointerEvent & {
51
112
  target: HTMLInputElement;
52
113
  }): void;
114
+ protected formatValue(value: number): string;
115
+ protected renderTicks(): typeof nothing | lit_html.TemplateResult<1>;
53
116
  render(): lit_html.TemplateResult<1>;
54
117
  }
55
118