lintje 0.2.0 → 0.4.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/README.md +2 -2
- package/dist-elements/actions.js +1 -1
- package/dist-elements/chunks/{base-Bg-IFOPG.js → base-DRGvkF-r.js} +484 -309
- package/dist-elements/chunks/{controls-B1455oPG.js → controls-_4ac1Lpz.js} +7 -1
- package/dist-elements/chunks/{date-format-mHtZyBys.js → date-format-DxP9yfDp.js} +1 -1
- package/dist-elements/chunks/dialog-B7aRBtjy.js +28 -0
- package/dist-elements/chunks/{disclosure-BXTX04gM.js → disclosure-D39vAR5q.js} +1 -1
- package/dist-elements/chunks/{disclosure-CMXhX-Vb.js → disclosure-DirPLy2E.js} +6 -6
- package/dist-elements/chunks/download-C68kcwPj.js +206 -0
- package/dist-elements/chunks/{focus-trap-9BnE-xWv.js → focus-trap-Dv8zu64A.js} +1 -1
- package/dist-elements/chunks/input-BGMLam-O.js +195 -0
- package/dist-elements/chunks/input-lQTmOMOz.js +4 -0
- package/dist-elements/chunks/{player-DXOZEyEy.js → player-BApadXr8.js} +27 -27
- package/dist-elements/chunks/{sentence-BI3lwEuT.js → sentence-0wO85ZdJ.js} +3 -3
- package/dist-elements/chunks/{stagger-qGD3wmhg.js → stagger-BB_gcxBI.js} +88 -74
- package/dist-elements/content.js +1 -0
- package/dist-elements/core.js +1 -1
- package/dist-elements/custom-elements.json +8858 -7715
- package/dist-elements/data-types.json +6900 -0
- package/dist-elements/feedback.js +2 -1
- package/dist-elements/frame.js +0 -2
- package/dist-elements/guides/dashboard.md +8 -0
- package/dist-elements/guides/events.md +4 -5
- package/dist-elements/guides/loading.md +10 -9
- package/dist-elements/guides/page-contents.md +110 -0
- package/dist-elements/guides/start.md +12 -0
- package/dist-elements/inputs.js +3 -1
- package/dist-elements/layout.js +1 -1
- package/dist-elements/lintje.js +8562 -7138
- package/dist-elements/overlays.js +2 -2
- package/dist-elements/skills/lintje/SKILL.md +1 -1
- package/dist-elements/tables.js +1 -1
- package/dist-elements/tag/activity-log.js +15 -15
- package/dist-elements/tag/ai-label.js +10 -10
- package/dist-elements/tag/announcement.js +36 -76
- package/dist-elements/tag/app-search.js +49 -49
- package/dist-elements/tag/audio-player.js +57 -57
- package/dist-elements/tag/badge.d.ts +1 -1
- package/dist-elements/tag/badge.js +1 -1
- package/dist-elements/tag/breadcrumbs.js +15 -15
- package/dist-elements/tag/button.d.ts +1 -1
- package/dist-elements/tag/button.js +1 -1
- package/dist-elements/tag/card-list.js +12 -12
- package/dist-elements/tag/card.js +39 -44
- package/dist-elements/tag/chart.js +1357 -787
- package/dist-elements/tag/chat-answer.js +49 -49
- package/dist-elements/tag/chat-composer.js +75 -71
- package/dist-elements/tag/chat-message.js +8 -8
- package/dist-elements/tag/chat-strip.js +22 -22
- package/dist-elements/tag/chat-suggestions.js +12 -12
- package/dist-elements/tag/chat.js +56 -56
- package/dist-elements/tag/checkbox-group.d.ts +1 -0
- package/dist-elements/tag/checkbox-group.js +60 -0
- package/dist-elements/tag/checkbox.js +9 -8
- package/dist-elements/tag/code.js +9 -9
- package/dist-elements/tag/combobox.js +19 -18
- package/dist-elements/tag/conflict-alert.js +12 -12
- package/dist-elements/tag/copy-button.js +14 -14
- package/dist-elements/tag/data-table.js +880 -532
- package/dist-elements/tag/date-input.js +30 -29
- package/dist-elements/tag/date-range.js +39 -38
- package/dist-elements/tag/description-list.js +29 -32
- package/dist-elements/tag/dialog.d.ts +1 -0
- package/dist-elements/tag/dialog.js +144 -0
- package/dist-elements/tag/document-viewer.js +23 -23
- package/dist-elements/tag/drawer.js +28 -32
- package/dist-elements/tag/empty-state.js +19 -30
- package/dist-elements/tag/error-page.d.ts +1 -0
- package/dist-elements/tag/error-page.js +109 -0
- package/dist-elements/tag/error-summary.js +10 -10
- package/dist-elements/tag/expander.js +8 -8
- package/dist-elements/tag/explainer.js +11 -11
- package/dist-elements/tag/field.js +5 -5
- package/dist-elements/tag/file-upload.js +35 -34
- package/dist-elements/tag/filter-bar.js +56 -56
- package/dist-elements/tag/filter-sheet.js +11 -11
- package/dist-elements/tag/filter-zone.js +31 -31
- package/dist-elements/tag/find.d.ts +1 -0
- package/dist-elements/tag/find.js +128 -0
- package/dist-elements/tag/footer.js +21 -21
- package/dist-elements/tag/form-actions.js +29 -25
- package/dist-elements/tag/form-section.js +6 -6
- package/dist-elements/tag/form.js +12 -12
- package/dist-elements/tag/gallery.js +14 -14
- package/dist-elements/tag/grid-item.d.ts +1 -1
- package/dist-elements/tag/grid-item.js +1 -1
- package/dist-elements/tag/grid.d.ts +1 -1
- package/dist-elements/tag/grid.js +1 -1
- package/dist-elements/tag/hero.js +12 -12
- package/dist-elements/tag/highlight.js +5 -5
- package/dist-elements/tag/icon-button.d.ts +1 -1
- package/dist-elements/tag/icon-button.js +1 -1
- package/dist-elements/tag/icon.d.ts +1 -1
- package/dist-elements/tag/icon.js +1 -1
- package/dist-elements/tag/job-list.js +22 -44
- package/dist-elements/tag/kpi-row.js +12 -10
- package/dist-elements/tag/kpi.js +149 -140
- package/dist-elements/tag/level-meter.js +11 -11
- package/dist-elements/tag/list.js +55 -55
- package/dist-elements/tag/logo.js +30 -30
- package/dist-elements/tag/map.js +702 -671
- package/dist-elements/tag/menu-button.js +70 -69
- package/dist-elements/tag/modal.js +28 -37
- package/dist-elements/tag/multiselect.js +35 -34
- package/dist-elements/tag/note.js +5 -5
- package/dist-elements/tag/notifications.js +36 -36
- package/dist-elements/tag/number-input.js +13 -12
- package/dist-elements/tag/page-header.js +140 -37
- package/dist-elements/tag/pagination.js +54 -49
- package/dist-elements/tag/popover.d.ts +1 -1
- package/dist-elements/tag/popover.js +1 -1
- package/dist-elements/tag/progress-bar.d.ts +1 -1
- package/dist-elements/tag/progress-bar.js +1 -1
- package/dist-elements/tag/prose.js +6 -6
- package/dist-elements/tag/qr-code.js +7 -7
- package/dist-elements/tag/radio-group.js +13 -12
- package/dist-elements/tag/range.js +23 -22
- package/dist-elements/tag/recording-status.js +14 -14
- package/dist-elements/tag/repeater.js +10 -10
- package/dist-elements/tag/segmented.js +14 -13
- package/dist-elements/tag/select.js +11 -10
- package/dist-elements/tag/shell.js +356 -339
- package/dist-elements/tag/skeleton.d.ts +1 -1
- package/dist-elements/tag/skeleton.js +1 -1
- package/dist-elements/tag/slot-picker.js +16 -15
- package/dist-elements/tag/sortable-list.js +14 -14
- package/dist-elements/tag/spinner.d.ts +1 -1
- package/dist-elements/tag/spinner.js +1 -1
- package/dist-elements/tag/split-pane.js +12 -12
- package/dist-elements/tag/status-dot.d.ts +1 -1
- package/dist-elements/tag/status-dot.js +1 -1
- package/dist-elements/tag/stepper.js +21 -21
- package/dist-elements/tag/streaming-text.js +13 -13
- package/dist-elements/tag/sub-nav.js +39 -38
- package/dist-elements/tag/tabs.js +38 -38
- package/dist-elements/tag/tag-input.js +20 -19
- package/dist-elements/tag/text-editor.js +25 -24
- package/dist-elements/tag/text-input.js +15 -14
- package/dist-elements/tag/textarea.js +15 -14
- package/dist-elements/tag/tile.d.ts +1 -1
- package/dist-elements/tag/tile.js +1 -1
- package/dist-elements/tag/time-input.js +20 -19
- package/dist-elements/tag/toast.js +32 -23
- package/dist-elements/tag/toggle.js +9 -8
- package/dist-elements/tag/toggletip.js +27 -27
- package/dist-elements/tag/token-value.d.ts +1 -0
- package/dist-elements/tag/token-value.js +75 -0
- package/dist-elements/tag/tooltip.d.ts +1 -1
- package/dist-elements/tag/tooltip.js +1 -1
- package/dist-elements/tag/transcript.js +48 -48
- package/dist-elements/tag/translator.js +13 -13
- package/dist-elements/tag/tree-view.js +13 -13
- package/dist-elements/tag/user-menu.js +37 -37
- package/dist-elements/tag/video-player.js +21 -21
- package/dist-elements/tokens.css +120 -96
- package/dist-elements/tokens.json +1244 -0
- package/dist-elements/types/bundle/actions.d.ts +3 -3
- package/dist-elements/types/bundle/content.d.ts +1 -0
- package/dist-elements/types/bundle/feedback.d.ts +6 -5
- package/dist-elements/types/bundle/frame.d.ts +0 -2
- package/dist-elements/types/bundle/index.d.ts +0 -10
- package/dist-elements/types/bundle/inputs.d.ts +2 -0
- package/dist-elements/types/bundle/layout.d.ts +3 -3
- package/dist-elements/types/bundle/overlays.d.ts +3 -3
- package/dist-elements/types/categories.d.ts +4 -0
- package/dist-elements/types/{primitives → components/actions}/button/button.d.ts +13 -10
- package/dist-elements/types/components/actions/copy-button/copy-button.d.ts +8 -9
- package/dist-elements/types/{icons → components/actions}/icon/icon.d.ts +4 -5
- package/dist-elements/types/{primitives → components/actions}/icon-button/icon-button.d.ts +8 -6
- package/dist-elements/types/components/actions/menu-button/menu-button.d.ts +16 -18
- package/dist-elements/types/components/actions/qr-code/qr-code.d.ts +10 -10
- package/dist-elements/types/components/charts/chart/chart.d.ts +6 -5
- package/dist-elements/types/components/charts/explainer/explainer.d.ts +1 -1
- package/dist-elements/types/components/charts/kpi/kpi.d.ts +19 -11
- package/dist-elements/types/components/charts/kpi-row/kpi-row.d.ts +2 -8
- package/dist-elements/types/components/charts/note/note.d.ts +2 -2
- package/dist-elements/types/components/chat/chat/chat.d.ts +9 -11
- package/dist-elements/types/components/chat/chat-answer/chat-answer.d.ts +10 -11
- package/dist-elements/types/components/chat/chat-composer/chat-composer.d.ts +10 -12
- package/dist-elements/types/components/chat/chat-message/chat-message.d.ts +7 -8
- package/dist-elements/types/components/chat/chat-strip/chat-strip.d.ts +5 -5
- package/dist-elements/types/components/chat/chat-suggestions/chat-suggestions.d.ts +9 -10
- package/dist-elements/types/components/content/audio-player/audio-player.d.ts +15 -17
- package/dist-elements/types/components/content/code/code.d.ts +3 -4
- package/dist-elements/types/components/content/document-viewer/document-viewer.d.ts +10 -11
- package/dist-elements/types/components/content/gallery/gallery.d.ts +5 -4
- package/dist-elements/types/components/content/highlight/highlight.d.ts +5 -4
- package/dist-elements/types/components/content/prose/prose.d.ts +3 -4
- package/dist-elements/types/components/content/token-value/token-value.d.ts +42 -0
- package/dist-elements/types/components/content/transcript/transcript.d.ts +15 -28
- package/dist-elements/types/components/content/translator/translator.d.ts +12 -16
- package/dist-elements/types/components/content/video-player/video-player.d.ts +12 -14
- package/dist-elements/types/components/feedback/ai-label/ai-label.d.ts +3 -4
- package/dist-elements/types/components/feedback/announcement/announcement.d.ts +5 -9
- package/dist-elements/types/{primitives → components/feedback}/badge/badge.d.ts +10 -6
- package/dist-elements/types/components/feedback/conflict-alert/conflict-alert.d.ts +4 -5
- package/dist-elements/types/components/feedback/empty-state/empty-state.d.ts +5 -8
- package/dist-elements/types/components/feedback/error-page/error-page.d.ts +52 -0
- package/dist-elements/types/components/feedback/job-list/job-list.d.ts +9 -12
- package/dist-elements/types/components/feedback/level-meter/level-meter.d.ts +4 -6
- package/dist-elements/types/{primitives → components/feedback}/progress-bar/progress-bar.d.ts +9 -7
- package/dist-elements/types/components/feedback/recording-status/recording-status.d.ts +5 -6
- package/dist-elements/types/{primitives → components/feedback}/skeleton/skeleton.d.ts +2 -2
- package/dist-elements/types/{primitives → components/feedback}/spinner/spinner.d.ts +2 -3
- package/dist-elements/types/{primitives → components/feedback}/status-dot/status-dot.d.ts +5 -6
- package/dist-elements/types/components/feedback/streaming-text/streaming-text.d.ts +12 -9
- package/dist-elements/types/components/feedback/toast/toast.d.ts +8 -9
- package/dist-elements/types/components/filters/filter-bar/filter-bar.d.ts +9 -4
- package/dist-elements/types/components/filters/filter-sheet/filter-sheet.d.ts +7 -7
- package/dist-elements/types/components/filters/filter-zone/filter-zone.d.ts +4 -4
- package/dist-elements/types/components/forms/error-summary/error-summary.d.ts +6 -7
- package/dist-elements/types/components/forms/form/form.d.ts +5 -5
- package/dist-elements/types/components/forms/form-actions/form-actions.d.ts +10 -8
- package/dist-elements/types/components/forms/form-section/form-section.d.ts +6 -5
- package/dist-elements/types/components/forms/repeater/repeater.d.ts +15 -9
- package/dist-elements/types/components/forms/stepper/stepper.d.ts +6 -5
- package/dist-elements/types/components/frame/app-search/app-search.d.ts +7 -8
- package/dist-elements/types/components/frame/breadcrumbs/breadcrumbs.d.ts +2 -2
- package/dist-elements/types/components/frame/footer/footer.d.ts +3 -2
- package/dist-elements/types/components/frame/hero/hero.d.ts +7 -9
- package/dist-elements/types/components/frame/notifications/notifications.d.ts +7 -11
- package/dist-elements/types/components/frame/page-header/page-header.d.ts +13 -16
- package/dist-elements/types/components/frame/shell/shell.d.ts +15 -14
- package/dist-elements/types/components/frame/sub-nav/sub-nav.d.ts +10 -6
- package/dist-elements/types/components/frame/user-menu/user-menu.d.ts +13 -12
- package/dist-elements/types/components/index.d.ts +51 -12
- package/dist-elements/types/components/inputs/checkbox/checkbox.d.ts +4 -4
- package/dist-elements/types/components/inputs/checkbox-group/checkbox-group.d.ts +33 -0
- package/dist-elements/types/components/inputs/combobox/combobox.d.ts +14 -8
- package/dist-elements/types/components/inputs/date-input/date-input.d.ts +6 -6
- package/dist-elements/types/components/inputs/date-range/date-range.d.ts +13 -8
- package/dist-elements/types/components/inputs/field/field.d.ts +5 -3
- package/dist-elements/types/components/inputs/file-upload/file-upload.d.ts +8 -10
- package/dist-elements/types/components/inputs/find/find.d.ts +51 -0
- package/dist-elements/types/components/inputs/multiselect/multiselect.d.ts +4 -6
- package/dist-elements/types/components/inputs/number-input/number-input.d.ts +8 -7
- package/dist-elements/types/components/inputs/radio-group/radio-group.d.ts +2 -4
- package/dist-elements/types/components/inputs/range/range.d.ts +5 -6
- package/dist-elements/types/components/inputs/segmented/segmented.d.ts +7 -4
- package/dist-elements/types/components/inputs/select/select.d.ts +6 -3
- package/dist-elements/types/components/inputs/shared/input.d.ts +1 -1
- package/dist-elements/types/components/inputs/slot-picker/slot-picker.d.ts +6 -5
- package/dist-elements/types/components/inputs/tag-input/tag-input.d.ts +8 -6
- package/dist-elements/types/components/inputs/text-editor/text-editor.d.ts +8 -8
- package/dist-elements/types/components/inputs/text-input/text-input.d.ts +12 -7
- package/dist-elements/types/components/inputs/textarea/textarea.d.ts +12 -11
- package/dist-elements/types/components/inputs/time-input/time-input.d.ts +8 -9
- package/dist-elements/types/components/inputs/toggle/toggle.d.ts +3 -1
- package/dist-elements/types/components/layout/expander/expander.d.ts +10 -11
- package/dist-elements/types/{primitives → components/layout}/grid/grid.d.ts +4 -4
- package/dist-elements/types/{primitives → components/layout}/grid-item/grid-item.d.ts +2 -2
- package/dist-elements/types/components/layout/split-pane/split-pane.d.ts +6 -6
- package/dist-elements/types/components/layout/tabs/tabs.d.ts +12 -10
- package/dist-elements/types/{primitives → components/layout}/tile/tile.d.ts +22 -10
- package/dist-elements/types/components/map/map/map.d.ts +12 -11
- package/dist-elements/types/components/overlays/dialog/dialog.d.ts +49 -0
- package/dist-elements/types/components/overlays/drawer/drawer.d.ts +6 -5
- package/dist-elements/types/components/overlays/modal/modal.d.ts +9 -14
- package/dist-elements/types/{primitives → components/overlays}/popover/popover.d.ts +7 -6
- package/dist-elements/types/components/overlays/toggletip/toggletip.d.ts +4 -8
- package/dist-elements/types/{primitives → components/overlays}/tooltip/tooltip.d.ts +8 -8
- package/dist-elements/types/components/shared/announcement-block.d.ts +38 -0
- package/dist-elements/types/components/shared/charts/index.d.ts +5 -1
- package/dist-elements/types/components/shared/charts/kinds.d.ts +92 -0
- package/dist-elements/types/components/shared/charts/line-chart/line-chart.d.ts +2 -2
- package/dist-elements/types/components/shared/charts/map-chart/leaflet.d.ts +5 -0
- package/dist-elements/types/components/shared/charts/map-chart/map-chart.d.ts +1 -1
- package/dist-elements/types/components/shared/charts/radar-chart/radar-chart.d.ts +31 -0
- package/dist-elements/types/components/shared/charts/shared/axes.d.ts +3 -1
- package/dist-elements/types/components/shared/charts/shared/chart-states.d.ts +8 -19
- package/dist-elements/types/components/shared/charts/shared/controller.d.ts +12 -0
- package/dist-elements/types/components/shared/charts/shared/types.d.ts +62 -0
- package/dist-elements/types/components/shared/charts/stacked-area-chart/stacked-area-chart.d.ts +13 -0
- package/dist-elements/types/components/shared/content-tile.d.ts +1 -1
- package/dist-elements/types/components/{forms/form → shared}/controls.d.ts +3 -2
- package/dist-elements/types/components/shared/dialog.d.ts +9 -0
- package/dist-elements/types/components/shared/empty-state-block.d.ts +26 -0
- package/dist-elements/types/components/shared/overflow.d.ts +58 -0
- package/dist-elements/types/components/shared/tone.d.ts +18 -0
- package/dist-elements/types/components/tables/activity-log/activity-log.d.ts +3 -4
- package/dist-elements/types/components/tables/card/card.d.ts +17 -23
- package/dist-elements/types/components/tables/card-list/card-list.d.ts +9 -11
- package/dist-elements/types/components/tables/data-table/actions.d.ts +1 -1
- package/dist-elements/types/components/tables/data-table/data-table.d.ts +88 -19
- package/dist-elements/types/components/tables/data-table/editing.d.ts +1 -1
- package/dist-elements/types/components/tables/data-table/filters.d.ts +15 -6
- package/dist-elements/types/components/tables/description-list/description-list.d.ts +13 -12
- package/dist-elements/types/components/tables/list/list.d.ts +13 -24
- package/dist-elements/types/components/tables/pagination/pagination.d.ts +12 -11
- package/dist-elements/types/components/tables/sortable-list/sortable-list.d.ts +5 -6
- package/dist-elements/types/components/tables/tree-view/tree-view.d.ts +5 -5
- package/dist-elements/types/core/focus.d.ts +1 -1
- package/dist-elements/types/core/media.d.ts +2 -2
- package/dist-elements/types/core/motion.d.ts +5 -0
- package/dist-elements/types/core/print.d.ts +15 -0
- package/dist-elements/types/core/shortcuts.d.ts +2 -2
- package/dist-elements/types/icons/register.d.ts +1 -1
- package/dist-elements/types/types.d.ts +70 -10
- package/dist-icons/functioneel-kolommen.svg +1 -0
- package/dist-icons/functioneel-trechter.svg +1 -0
- package/package.json +1 -1
- package/dist-elements/chunks/confirm-dialog-D5EVGuil.js +0 -4
- package/dist-elements/chunks/download-y528pIHP.js +0 -230
- package/dist-elements/chunks/input-BtuNFSWk.js +0 -195
- package/dist-elements/tag/confirm-dialog.d.ts +0 -1
- package/dist-elements/tag/confirm-dialog.js +0 -118
- package/dist-elements/tag/session-expiry.d.ts +0 -1
- package/dist-elements/tag/session-expiry.js +0 -184
- package/dist-elements/tag/shortcuts.d.ts +0 -1
- package/dist-elements/tag/shortcuts.js +0 -104
- package/dist-elements/types/components/frame/session-expiry/session-expiry.d.ts +0 -55
- package/dist-elements/types/components/frame/shortcuts/shortcuts.d.ts +0 -41
- package/dist-elements/types/components/overlays/confirm-dialog/confirm-dialog.d.ts +0 -41
- package/dist-elements/types/primitives/index.d.ts +0 -33
- /package/dist-elements/types/components/content/{audio-player → shared}/playback.d.ts +0 -0
- /package/dist-elements/types/components/content/{audio-player → shared}/player.d.ts +0 -0
- /package/dist-elements/types/components/{inputs/date-input → shared}/date-format.d.ts +0 -0
- /package/dist-elements/types/{primitives → components}/shared/grid-item-element.d.ts +0 -0
- /package/dist-elements/types/{primitives → components}/shared/length.d.ts +0 -0
- /package/dist-elements/types/{primitives → components}/shared/place.d.ts +0 -0
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { Yt as e, Zt as t, bt as n, en as r, nn as i, st as a } from "../chunks/base-DRGvkF-r.js";
|
|
2
|
+
import { n as o } from "../chunks/input-BGMLam-O.js";
|
|
3
|
+
import { t as s } from "../chunks/input-lQTmOMOz.js";
|
|
3
4
|
//#region src/components/inputs/range/range-ticks.ts
|
|
4
5
|
var c = [
|
|
5
6
|
1,
|
|
@@ -52,7 +53,7 @@ var p = "/* The range slider. */\n\n/* --- Range slider ------------------------
|
|
|
52
53
|
super(...e), this.from = 0, this.to = 0, this.value = null, this.single = !1, this.stacked = !1, this.draft = null, this.draftPair = null, this.trackWidth = 0;
|
|
53
54
|
}
|
|
54
55
|
static {
|
|
55
|
-
this.styles = [
|
|
56
|
+
this.styles = [t(s), t(p)];
|
|
56
57
|
}
|
|
57
58
|
static {
|
|
58
59
|
this.properties = {
|
|
@@ -161,28 +162,28 @@ var p = "/* The range slider. */\n\n/* --- Range slider ------------------------
|
|
|
161
162
|
aria-valuemax=${(this.steps ?? [])[e] ?? 0}
|
|
162
163
|
aria-valuenow=${(this.steps ?? [])[this.index] ?? 0}
|
|
163
164
|
aria-valuetext=${this.valueText}
|
|
164
|
-
aria-invalid=${this.error ? "true" :
|
|
165
|
+
aria-invalid=${this.error ? "true" : r}
|
|
165
166
|
@keydown=${this.key}
|
|
166
167
|
@input=${(e) => {
|
|
167
168
|
this.draft = Number(e.target.value);
|
|
168
169
|
}}
|
|
169
170
|
@change=${(e) => this.commitStep(Number(e.target.value))}
|
|
170
171
|
/>`;
|
|
171
|
-
let [
|
|
172
|
+
let [t, n] = this.pair;
|
|
172
173
|
return i`<input
|
|
173
174
|
type="range"
|
|
174
|
-
class=${
|
|
175
|
+
class=${a({
|
|
175
176
|
"lintje-range__input": !0,
|
|
176
|
-
"is-raised":
|
|
177
|
+
"is-raised": t === n && n === e
|
|
177
178
|
})}
|
|
178
179
|
min="0"
|
|
179
180
|
max=${e}
|
|
180
|
-
.value=${String(
|
|
181
|
+
.value=${String(t)}
|
|
181
182
|
?disabled=${this.disabled}
|
|
182
183
|
aria-label="${this.label} van${this.labelSuffixText}"
|
|
183
|
-
aria-valuetext=${this.stepText(
|
|
184
|
+
aria-valuetext=${this.stepText(t)}
|
|
184
185
|
aria-describedby=${this.describedBy}
|
|
185
|
-
aria-invalid=${this.error ? "true" :
|
|
186
|
+
aria-invalid=${this.error ? "true" : r}
|
|
186
187
|
@input=${(e) => this.moveHandle("from", e)}
|
|
187
188
|
@change=${(e) => this.commitRange(...this.moveHandle("from", e))}
|
|
188
189
|
/>
|
|
@@ -191,18 +192,18 @@ var p = "/* The range slider. */\n\n/* --- Range slider ------------------------
|
|
|
191
192
|
class="lintje-range__input"
|
|
192
193
|
min="0"
|
|
193
194
|
max=${e}
|
|
194
|
-
.value=${String(
|
|
195
|
+
.value=${String(n)}
|
|
195
196
|
?disabled=${this.disabled}
|
|
196
197
|
aria-label="${this.label} tot en met${this.labelSuffixText}"
|
|
197
|
-
aria-valuetext=${this.stepText(
|
|
198
|
+
aria-valuetext=${this.stepText(n)}
|
|
198
199
|
aria-describedby=${this.describedBy}
|
|
199
|
-
aria-invalid=${this.error ? "true" :
|
|
200
|
+
aria-invalid=${this.error ? "true" : r}
|
|
200
201
|
@input=${(e) => this.moveHandle("to", e)}
|
|
201
202
|
@change=${(e) => this.commitRange(...this.moveHandle("to", e))}
|
|
202
203
|
/>`;
|
|
203
204
|
}
|
|
204
205
|
render() {
|
|
205
|
-
let e = this.steps ?? [],
|
|
206
|
+
let e = this.steps ?? [], t = this.lastIndex, o = e.reduce((e, t) => Math.max(e, String(t).length), 1), s = f({
|
|
206
207
|
count: e.length,
|
|
207
208
|
width: this.trackWidth,
|
|
208
209
|
labelWidth: o * m
|
|
@@ -210,7 +211,7 @@ var p = "/* The range slider. */\n\n/* --- Range slider ------------------------
|
|
|
210
211
|
left: "0",
|
|
211
212
|
right: null,
|
|
212
213
|
transform: "none"
|
|
213
|
-
} : e ===
|
|
214
|
+
} : e === t ? {
|
|
214
215
|
left: null,
|
|
215
216
|
right: "0",
|
|
216
217
|
transform: "none"
|
|
@@ -221,9 +222,9 @@ var p = "/* The range slider. */\n\n/* --- Range slider ------------------------
|
|
|
221
222
|
}, u = this.single ? 0 : this.pair[0], d = this.single ? this.index : this.pair[1];
|
|
222
223
|
return i`<div class="lintje-field">
|
|
223
224
|
${this.renderLabel(void 0, i`<span class="lintje-field__value">${this.valueText}</span>`)}
|
|
224
|
-
${this.hideLabel ? i`<span class="lintje-range__values">${this.valueText}</span>` :
|
|
225
|
+
${this.hideLabel ? i`<span class="lintje-range__values">${this.valueText}</span>` : r}
|
|
225
226
|
<div
|
|
226
|
-
class=${
|
|
227
|
+
class=${a({
|
|
227
228
|
"lintje-range": !0,
|
|
228
229
|
"is-error": !!this.error
|
|
229
230
|
})}
|
|
@@ -232,7 +233,7 @@ var p = "/* The range slider. */\n\n/* --- Range slider ------------------------
|
|
|
232
233
|
<span class="lintje-range__track"></span>
|
|
233
234
|
<span
|
|
234
235
|
class="lintje-range__fill"
|
|
235
|
-
${
|
|
236
|
+
${n({
|
|
236
237
|
left: `${this.percent(u)}%`,
|
|
237
238
|
right: `${100 - this.percent(d)}%`
|
|
238
239
|
})}
|
|
@@ -241,18 +242,18 @@ var p = "/* The range slider. */\n\n/* --- Range slider ------------------------
|
|
|
241
242
|
</div>
|
|
242
243
|
<div class="lintje-range__scale" aria-hidden="true">
|
|
243
244
|
${s.marks.map((e) => i`<span
|
|
244
|
-
class=${
|
|
245
|
+
class=${a({
|
|
245
246
|
"lintje-range__mark": !0,
|
|
246
247
|
"is-labelled": c.has(e)
|
|
247
248
|
})}
|
|
248
|
-
${
|
|
249
|
+
${n({ left: `${this.percent(e)}%` })}
|
|
249
250
|
></span>`)}
|
|
250
251
|
${s.labels.map((t) => i`<span
|
|
251
|
-
class=${
|
|
252
|
+
class=${a({
|
|
252
253
|
"lintje-range__step": !0,
|
|
253
254
|
"is-active": this.single ? t === this.index : t >= u && t <= d
|
|
254
255
|
})}
|
|
255
|
-
${
|
|
256
|
+
${n(l(t))}
|
|
256
257
|
>${e[t]}</span
|
|
257
258
|
>`)}
|
|
258
259
|
</div>
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { levelWord as o } from "./level-meter.js";
|
|
1
|
+
import { Jt as e, Yt as t, Zt as n, en as r, nn as i, st as a } from "../chunks/base-DRGvkF-r.js";
|
|
3
2
|
import "./description-list.js";
|
|
3
|
+
import { levelWord as o } from "./level-meter.js";
|
|
4
4
|
//#region src/components/feedback/recording-status/recording-status.css?inline
|
|
5
|
-
var s = ":host { display: block; min-width: 0; }\n:host([hidden]) { display: none; }\n\n/* ------------------------------------------------------------------------ */\n\n/* The cells are the description list's; what stands here is the connection's own meter. */\n.lintje-recording-status__connection { display: flex; align-items: center; gap: var(--space-3); font-weight: 400; }\n\n/* The connection: four rising steps, as many lit as it is strong. */\n.lintje-recording-status__signal {\n display: inline-flex;\n align-items: flex-end;\n gap: 3px;\n height: var(--space-6);\n}\n.lintje-recording-status__step {\n width: 5px;\n background: var(--color-border-default);\n}\n.lintje-recording-status__step:nth-child(1) { height: 30%; }\n.lintje-recording-status__step:nth-child(2) { height: 55%; }\n.lintje-recording-status__step:nth-child(3) { height: 78%; }\n.lintje-recording-status__step:nth-child(4) { height: 100%; }\n.is-good .lintje-recording-status__step.is-lit { background: var(--color-success); }\n.is-weak .lintje-recording-status__step.is-lit { background: var(--color-warning); }\n.lintje-recording-status__words { display: flex; flex-direction: column; line-height: 1.2; }\n.lintje-recording-status__sub { font: var(--text-meta); color: var(--color-text-muted); }\n\n/* Forced colours drop the fills: the bars keep a border, the words carry the rest. */\n@media (forced-colors: active) {\n .lintje-recording-status__step.is-lit { background: CanvasText; }\n .lintje-recording-status__step { border: 1px solid CanvasText; }\n}\n", c = {
|
|
5
|
+
var s = "/* Its list measures its own width, so it takes the room it stands in, also in a hero's column. */\n:host { display: block; width: 100%; min-width: 0; }\n:host([hidden]) { display: none; }\n\n/* ------------------------------------------------------------------------ */\n\n/* The cells are the description list's; what stands here is the connection's own meter. */\n.lintje-recording-status__connection { display: flex; align-items: center; gap: var(--space-3); font-weight: 400; }\n\n/* The connection: four rising steps, as many lit as it is strong. */\n.lintje-recording-status__signal {\n display: inline-flex;\n align-items: flex-end;\n gap: 3px;\n height: var(--space-6);\n}\n.lintje-recording-status__step {\n width: 5px;\n background: var(--color-border-default);\n}\n.lintje-recording-status__step:nth-child(1) { height: 30%; }\n.lintje-recording-status__step:nth-child(2) { height: 55%; }\n.lintje-recording-status__step:nth-child(3) { height: 78%; }\n.lintje-recording-status__step:nth-child(4) { height: 100%; }\n.is-good .lintje-recording-status__step.is-lit { background: var(--color-success); }\n.is-weak .lintje-recording-status__step.is-lit { background: var(--color-warning); }\n.lintje-recording-status__words { display: flex; flex-direction: column; line-height: 1.2; }\n.lintje-recording-status__sub { font: var(--text-meta); color: var(--color-text-muted); }\n\n/* Forced colours drop the fills: the bars keep a border, the words carry the rest. */\n@media (forced-colors: active) {\n .lintje-recording-status__step.is-lit { background: CanvasText; }\n .lintje-recording-status__step { border: 1px solid CanvasText; }\n}\n", c = {
|
|
6
6
|
good: "Goed",
|
|
7
7
|
weak: "Zwak",
|
|
8
8
|
lost: "Verbroken"
|
|
@@ -15,7 +15,7 @@ function u(e) {
|
|
|
15
15
|
let t = Math.max(0, Math.floor(e)), n = Math.floor(t / 3600), r = Math.floor(t % 3600 / 60), i = String(t % 60).padStart(2, "0");
|
|
16
16
|
return n ? `${n}:${String(r).padStart(2, "0")}:${i}` : `${r}:${i}`;
|
|
17
17
|
}
|
|
18
|
-
var d = class extends
|
|
18
|
+
var d = class extends e {
|
|
19
19
|
static {
|
|
20
20
|
this.styles = n(s);
|
|
21
21
|
}
|
|
@@ -28,12 +28,12 @@ var d = class extends a {
|
|
|
28
28
|
};
|
|
29
29
|
}
|
|
30
30
|
renderLevel() {
|
|
31
|
-
return this.level == null ?
|
|
31
|
+
return this.level == null ? r : i`<lintje-level-meter slot="level" .level=${this.level}></lintje-level-meter>`;
|
|
32
32
|
}
|
|
33
33
|
renderConnection(e) {
|
|
34
|
-
let
|
|
34
|
+
let t = l[e], n = e === "lost" ? "Wacht op verbinding" : this.delay == null ? "" : `${this.delay} ${this.delay === 1 ? "seconde" : "seconden"} achter`;
|
|
35
35
|
return i`<span slot="connection" class="lintje-recording-status__connection"><span
|
|
36
|
-
class=${
|
|
36
|
+
class=${a({
|
|
37
37
|
"lintje-recording-status__signal": !0,
|
|
38
38
|
[`is-${e}`]: !0
|
|
39
39
|
})}
|
|
@@ -45,19 +45,19 @@ var d = class extends a {
|
|
|
45
45
|
3,
|
|
46
46
|
4
|
|
47
47
|
].map((e) => i`<span
|
|
48
|
-
class=${
|
|
48
|
+
class=${a({
|
|
49
49
|
"lintje-recording-status__step": !0,
|
|
50
|
-
"is-lit": e <=
|
|
50
|
+
"is-lit": e <= t
|
|
51
51
|
})}
|
|
52
52
|
></span>`)}
|
|
53
53
|
</span>
|
|
54
54
|
<span class="lintje-recording-status__words">
|
|
55
55
|
<strong>${c[e]}</strong>
|
|
56
|
-
${
|
|
56
|
+
${n ? i`<span class="lintje-recording-status__sub">${n}</span>` : r}
|
|
57
57
|
</span></span>`;
|
|
58
58
|
}
|
|
59
59
|
render() {
|
|
60
|
-
let e = this.connection,
|
|
60
|
+
let e = this.connection, t = [
|
|
61
61
|
{
|
|
62
62
|
label: "Looptijd",
|
|
63
63
|
icon: "functioneel-klok",
|
|
@@ -77,11 +77,11 @@ var d = class extends a {
|
|
|
77
77
|
slot: "connection"
|
|
78
78
|
}] : []
|
|
79
79
|
];
|
|
80
|
-
return i`<lintje-description-list layout="grid" surface .columns=${
|
|
81
|
-
${this.renderLevel()} ${e ? this.renderConnection(e) :
|
|
80
|
+
return i`<lintje-description-list layout="grid" surface .columns=${t.length} .items=${t}>
|
|
81
|
+
${this.renderLevel()} ${e ? this.renderConnection(e) : r}
|
|
82
82
|
</lintje-description-list>`;
|
|
83
83
|
}
|
|
84
84
|
};
|
|
85
|
-
|
|
85
|
+
t("lintje-recording-status", d);
|
|
86
86
|
//#endregion
|
|
87
87
|
export { d as LintjeRecordingStatus, u as clockOf, o as levelWord };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Jt as e, Yt as t, Zt as n, en as r, nn as i } from "../chunks/base-DRGvkF-r.js";
|
|
2
2
|
//#region src/components/forms/repeater/repeater.css?inline
|
|
3
|
-
var a = ":host {\n display: block;\n min-width: 0;\n}\n:host([hidden]) { display: none; }\n\n/* --- */\n\n.lintje-repeater {\n min-width: 0;\n margin: 0; padding: 0; border: 0;\n}\n/* The legend stands above its rows as a field's label does above its control; the gap lives in\n the body, because browsers differ on whether a legend takes part in a fieldset's flex gap. */\n.lintje-repeater__legend {\n padding: 0 0 6px;\n font-size: 0.875rem; font-weight: 700;\n color: var(--color-text-primary);\n}\n.lintje-repeater__body { display: flex; flex-direction: column; gap: var(--space-3); min-width: 0; }\n:host([disabled]) .lintje-repeater__legend { color: var(--color-text-disabled); }\n.lintje-repeater__rows { display: flex; flex-direction: column; gap: var(--space-3); min-width: 0; }\n.lintje-repeater__foot {\n display: flex; flex-wrap: wrap; align-items: center;\n gap: var(--space-2) var(--space-4);\n}\n.lintje-repeater__count { font: var(--text-meta); color: var(--color-text-muted); }\n\n@media (max-width: 767px) {\n .lintje-repeater__rows { gap: var(--space-5); }\n}\n", o = "/* One row of a repeater: the host's fields side by side, then the remove icon button. */\n:host {\n display: block;\n min-width: 0;\n}\n:host([hidden]) { display: none; }\n@media (max-width: 767px) {\n :host(:not([index='0'])) {\n padding-top: var(--space-5);\n border-top: 1px solid var(--color-border-default);\n }\n}\n\n/* --- */\n\n/* The button aligns with the controls' bottom edge when a field carries its label above it. */\n.lintje-repeater-row { display: flex; align-items: flex-end; gap: var(--space-2); min-width: 0; }\n.lintje-repeater-row__fields { flex: 1; min-width: 0; display: flex; gap: var(--space-2); }\n.lintje-repeater-row__fields ::slotted(*) { flex: 1 1 0; min-width: 0; }\n/* A square as high as the controls beside it. */\n.lintje-repeater-row__remove { flex: none; --h-icon-button: var(--h-control); }\n\n/* Below 768 px the fields stack and the remove button stands beside the first. */\n@media (max-width: 767px) {\n .lintje-repeater-row { align-items: flex-start; }\n .lintje-repeater-row__fields { flex-direction: column; }\n}\n", s = "input, select, textarea, button, [contenteditable=\"true\"], [tabindex]";
|
|
3
|
+
var a = ":host {\n display: block;\n min-width: 0;\n}\n:host([hidden]) { display: none; }\n\n/* --- */\n\n.lintje-repeater {\n min-width: 0;\n margin: 0; padding: 0; border: 0;\n}\n/* The legend stands above its rows as a field's label does above its control; the gap lives in\n the body, because browsers differ on whether a legend takes part in a fieldset's flex gap. */\n.lintje-repeater__legend {\n padding: 0 0 6px;\n font-size: 0.875rem; font-weight: 700;\n color: var(--color-text-primary);\n}\n.lintje-repeater__body { display: flex; flex-direction: column; gap: var(--space-3); min-width: 0; }\n:host([disabled]) .lintje-repeater__legend { color: var(--color-text-disabled); }\n.lintje-repeater__rows { display: flex; flex-direction: column; gap: var(--space-3); min-width: 0; }\n.lintje-repeater__foot {\n display: flex; flex-wrap: wrap; align-items: center;\n gap: var(--space-2) var(--space-4);\n}\n.lintje-repeater__count { font: var(--text-meta); color: var(--color-text-muted); }\n\n@media screen and (max-width: 767px) {\n .lintje-repeater__rows { gap: var(--space-5); }\n}\n", o = "/* One row of a repeater: the host's fields side by side, then the remove icon button. */\n:host {\n display: block;\n min-width: 0;\n}\n:host([hidden]) { display: none; }\n@media screen and (max-width: 767px) {\n :host(:not([index='0'])) {\n padding-top: var(--space-5);\n border-top: 1px solid var(--color-border-default);\n }\n}\n\n/* --- */\n\n/* The button aligns with the controls' bottom edge when a field carries its label above it. */\n.lintje-repeater-row { display: flex; align-items: flex-end; gap: var(--space-2); min-width: 0; }\n.lintje-repeater-row__fields { flex: 1; min-width: 0; display: flex; gap: var(--space-2); }\n.lintje-repeater-row__fields ::slotted(*) { flex: 1 1 0; min-width: 0; }\n/* A square as high as the controls beside it. */\n.lintje-repeater-row__remove { flex: none; --h-icon-button: var(--h-control); }\n\n/* Below 768 px the fields stack and the remove button stands beside the first. */\n@media screen and (max-width: 767px) {\n .lintje-repeater-row { align-items: flex-start; }\n .lintje-repeater-row__fields { flex-direction: column; }\n}\n", s = "input, select, textarea, button, [contenteditable=\"true\"], [tabindex]";
|
|
4
4
|
function c(e) {
|
|
5
5
|
let t = e;
|
|
6
6
|
if (t.matches(s) && !t.matches(":disabled") && t.getAttribute("tabindex") !== "-1") return t;
|
|
@@ -10,7 +10,7 @@ function c(e) {
|
|
|
10
10
|
}
|
|
11
11
|
return null;
|
|
12
12
|
}
|
|
13
|
-
var l = class extends
|
|
13
|
+
var l = class extends e {
|
|
14
14
|
constructor(...e) {
|
|
15
15
|
super(...e), this.index = 0, this.label = "", this.removable = !0, this.disabled = !1;
|
|
16
16
|
}
|
|
@@ -39,7 +39,7 @@ var l = class extends i {
|
|
|
39
39
|
this.removable && !this.disabled && this.emit("lintje-row-remove", this.index);
|
|
40
40
|
}
|
|
41
41
|
render() {
|
|
42
|
-
return
|
|
42
|
+
return i`<div class="lintje-repeater-row" role="group" aria-label=${this.label || r}>
|
|
43
43
|
<div class="lintje-repeater-row__fields"><slot></slot></div>
|
|
44
44
|
<lintje-icon-button
|
|
45
45
|
class="lintje-repeater-row__remove"
|
|
@@ -51,7 +51,7 @@ var l = class extends i {
|
|
|
51
51
|
></lintje-icon-button>
|
|
52
52
|
</div>`;
|
|
53
53
|
}
|
|
54
|
-
}, u = class extends
|
|
54
|
+
}, u = class extends e {
|
|
55
55
|
constructor(...e) {
|
|
56
56
|
super(...e), this.legend = "", this.itemLabel = "", this.min = 0, this.disabled = !1, this.count = 0, this.spoken = "", this.pending = null, this.onRowRemove = (e) => {
|
|
57
57
|
let t = e.detail;
|
|
@@ -119,8 +119,8 @@ var l = class extends i {
|
|
|
119
119
|
});
|
|
120
120
|
}
|
|
121
121
|
}
|
|
122
|
-
async afterRows(
|
|
123
|
-
await this.updateComplete,
|
|
122
|
+
async afterRows(t) {
|
|
123
|
+
await this.updateComplete, t instanceof e && await t.updateComplete, await new Promise((e) => requestAnimationFrame(e));
|
|
124
124
|
}
|
|
125
125
|
focusAdd() {
|
|
126
126
|
let e = this.renderRoot.querySelector("lintje-button");
|
|
@@ -134,7 +134,7 @@ var l = class extends i {
|
|
|
134
134
|
}
|
|
135
135
|
render() {
|
|
136
136
|
let e = this.addLabel ?? (this.itemLabel ? `${this.itemLabel} toevoegen` : "Rij toevoegen");
|
|
137
|
-
return
|
|
137
|
+
return i`<fieldset class="lintje-repeater" ?disabled=${this.disabled}>
|
|
138
138
|
<legend class="lintje-repeater__legend">${this.legend}</legend>
|
|
139
139
|
<div class="lintje-repeater__body">
|
|
140
140
|
<div class="lintje-repeater__rows"><slot @slotchange=${this.sync}></slot></div>
|
|
@@ -146,13 +146,13 @@ var l = class extends i {
|
|
|
146
146
|
@click=${this.add}
|
|
147
147
|
>${e}</lintje-button
|
|
148
148
|
>
|
|
149
|
-
${this.max == null ?
|
|
149
|
+
${this.max == null ? r : i`<span class="lintje-repeater__count">${this.count} van hoogstens ${this.max}</span>`}
|
|
150
150
|
</div>
|
|
151
151
|
</div>
|
|
152
152
|
<span class="visually-hidden" aria-live="polite">${this.spoken}</span>
|
|
153
153
|
</fieldset>`;
|
|
154
154
|
}
|
|
155
155
|
};
|
|
156
|
-
|
|
156
|
+
t("lintje-repeater-row", l), t("lintje-repeater", u);
|
|
157
157
|
//#endregion
|
|
158
158
|
export { u as LintjeRepeater, l as LintjeRepeaterRow, c as firstFocusable };
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { Yt as e, Zt as t, en as n, nn as r, st as i } from "../chunks/base-DRGvkF-r.js";
|
|
2
|
+
import { n as a } from "../chunks/input-BGMLam-O.js";
|
|
3
|
+
import { t as o } from "../chunks/input-lQTmOMOz.js";
|
|
3
4
|
//#region src/components/inputs/segmented/segmented.css?inline
|
|
4
|
-
var s = "/* The segmented control keeps `min-width: auto`: it never shrinks below its options. */\n:host { display: block; }\n\n/* ------------------------------------------------------------------------ */\n\n/* The frame hugs its options: a wider host leaves its room outside the border, not in it. It\n never grows past its room, so the element can read that room off the frame. */\n.lintje-segmented {\n display: flex;\n width: fit-content;\n max-width: 100%;\n height: var(--h-control);\n border: 1px solid var(--color-border-field);\n background: var(--color-bg-surface);\n}\n.lintje-segmented.is-error { border: 2px solid var(--color-error); }\n/* Disabled keeps the quiet border, also over an error. */\n:host([disabled]) .lintje-segmented { border: 1px solid var(--color-border-strong); }\n.lintje-segmented__option {\n display: flex; align-items: center;\n padding: 0 var(--space-3);\n font-size: 1rem;\n color: var(--color-text-primary);\n white-space: nowrap;\n transition: background var(--dur-hover) var(--ease-in-motion);\n}\n.lintje-segmented__option:hover:not(.is-active) { background: var(--color-bg-subtle); }\n.lintje-segmented__option:disabled {\n background: var(--color-bg-subtle);\n color: var(--color-text-disabled);\n cursor: not-allowed;\n}\n.lintje-segmented__option:disabled:hover { background: var(--color-bg-subtle); }\n/* Chosen is quiet, not filled: a filled surface is the page's one primary action. The edge is a\n ring half inside, half over the frame, so it covers the frame's line instead of standing in it;\n a real border would push the neighbouring segments over. */\n.lintje-segmented__option.is-active {\n position: relative;\n z-index: 1;\n background: var(--color-choice-active-bg);\n color: var(--color-accent-text);\n box-shadow: 0 0 0 1px var(--color-accent-line), inset 0 0 0 1px var(--color-accent-line);\n font-weight: 700;\n}\n.lintje-segmented__option:disabled.is-active {\n background: var(--color-border-strong);\n color: var(--color-text-disabled);\n box-shadow: none;\n}\n\n.lintje-segmented__description {\n margin: var(--space-2) 0 0;\n padding: var(--space-2) var(--space-3);\n background: var(--color-bg-subtle);\n font: var(--text-small);\n color: var(--color-text-primary);\n}\n\n/* The bar cannot reach into the shadow root, so the control carries the bar's breakpoints. */\n@media (min-width: 1024px) and (max-width: 1439px) {\n :host(:not([stacked])) .lintje-segmented__option { padding: 0 10px; }\n}\n@media (min-width: 768px) and (max-width: 1023px) {\n :host { width: 100%; }\n .lintje-segmented { width: 100%; }\n .lintje-segmented__option { flex: 1; justify-content: center; }\n}\n:host([stacked]) .lintje-segmented { width: 100%; }\n:host([stacked]) .lintje-segmented__option { flex: 1; justify-content: center; }\n\n/* A row wider than its room: the options stand under each other, each the full width. */\n.lintje-segmented.is-column { flex-direction: column; width: 100%; height: auto; }\n.lintje-segmented.is-column .lintje-segmented__option { min-height: var(--h-touch); }\n\n/* Forced colours drop the fill and ring: every segment has a 1 px border, so nothing moves. */\n@media (forced-colors: active) {\n .lintje-segmented__option { border: 1px solid Canvas; }\n .lintje-segmented__option.is-active { border-color: Highlight; }\n :host([disabled]) .lintje-segmented__option.is-active { border-color: GrayText; }\n}\n", c = "lintje-segmented-description", l = class extends a {
|
|
5
|
+
var s = "/* The segmented control keeps `min-width: auto`: it never shrinks below its options. */\n:host { display: block; }\n\n/* ------------------------------------------------------------------------ */\n\n/* The frame hugs its options: a wider host leaves its room outside the border, not in it. It\n never grows past its room, so the element can read that room off the frame. */\n.lintje-segmented {\n display: flex;\n width: fit-content;\n max-width: 100%;\n height: var(--h-control);\n border: 1px solid var(--color-border-field);\n background: var(--color-bg-surface);\n}\n.lintje-segmented.is-error { border: 2px solid var(--color-error); }\n/* Disabled keeps the quiet border, also over an error. */\n:host([disabled]) .lintje-segmented { border: 1px solid var(--color-border-strong); }\n.lintje-segmented__option {\n display: flex; align-items: center; gap: var(--space-2);\n padding: 0 var(--space-3);\n font-size: 1rem;\n color: var(--color-text-primary);\n white-space: nowrap;\n transition: background var(--dur-hover) var(--ease-in-motion);\n}\n.lintje-segmented__option:hover:not(.is-active) { background: var(--color-bg-subtle); }\n.lintje-segmented__option:disabled {\n background: var(--color-bg-subtle);\n color: var(--color-text-disabled);\n cursor: not-allowed;\n}\n.lintje-segmented__option:disabled:hover { background: var(--color-bg-subtle); }\n/* Chosen is quiet, not filled: a filled surface is the page's one primary action. The edge is a\n ring half inside, half over the frame, so it covers the frame's line instead of standing in it;\n a real border would push the neighbouring segments over. */\n.lintje-segmented__option.is-active {\n position: relative;\n z-index: 1;\n background: var(--color-choice-active-bg);\n color: var(--color-accent-text);\n box-shadow: 0 0 0 1px var(--color-accent-line), inset 0 0 0 1px var(--color-accent-line);\n font-weight: 700;\n}\n.lintje-segmented__option:disabled.is-active {\n background: var(--color-border-strong);\n color: var(--color-text-disabled);\n box-shadow: none;\n}\n\n.lintje-segmented__description {\n margin: var(--space-2) 0 0;\n padding: var(--space-2) var(--space-3);\n background: var(--color-bg-subtle);\n font: var(--text-small);\n color: var(--color-text-primary);\n}\n\n/* The bar cannot reach into the shadow root, so the control carries the bar's breakpoints. */\n@media (min-width: 1024px) and (max-width: 1439px) {\n :host(:not([stacked])) .lintje-segmented__option { padding: 0 10px; }\n}\n@media (min-width: 768px) and (max-width: 1023px), print and (max-width: 1023px) {\n :host { width: 100%; }\n .lintje-segmented { width: 100%; }\n .lintje-segmented__option { flex: 1; justify-content: center; }\n}\n:host([stacked]) .lintje-segmented { width: 100%; }\n:host([stacked]) .lintje-segmented__option { flex: 1; justify-content: center; }\n\n/* A row wider than its room: the options stand under each other, each the full width. */\n.lintje-segmented.is-column { flex-direction: column; width: 100%; height: auto; }\n.lintje-segmented.is-column .lintje-segmented__option { min-height: var(--h-touch); }\n\n/* Forced colours drop the fill and ring: every segment has a 1 px border, so nothing moves. */\n@media (forced-colors: active) {\n .lintje-segmented__option { border: 1px solid Canvas; }\n .lintje-segmented__option.is-active { border-color: Highlight; }\n :host([disabled]) .lintje-segmented__option.is-active { border-color: GrayText; }\n}\n", c = "lintje-segmented-description", l = class extends a {
|
|
5
6
|
constructor(...e) {
|
|
6
7
|
super(...e), this.value = "", this.bold = !1, this.stacked = !1, this.column = !1, this.#e = 0, this.#t = null;
|
|
7
8
|
}
|
|
8
9
|
static {
|
|
9
|
-
this.styles = [
|
|
10
|
+
this.styles = [t(s), t(o)];
|
|
10
11
|
}
|
|
11
12
|
static {
|
|
12
13
|
this.properties = {
|
|
@@ -45,23 +46,23 @@ var s = "/* The segmented control keeps `min-width: auto`: it never shrinks belo
|
|
|
45
46
|
this.value = e, this.commit(e);
|
|
46
47
|
}
|
|
47
48
|
render() {
|
|
48
|
-
let e = (this.options ?? []).find((e) => e.value === this.value)?.description,
|
|
49
|
-
return
|
|
49
|
+
let e = (this.options ?? []).find((e) => e.value === this.value)?.description, t = [e ? c : "", this.describedBy === n ? "" : this.describedBy].filter(Boolean).join(" ");
|
|
50
|
+
return r`<div class="lintje-field">
|
|
50
51
|
${this.renderLabel()}
|
|
51
52
|
<div
|
|
52
|
-
class=${
|
|
53
|
+
class=${i({
|
|
53
54
|
"lintje-segmented": !0,
|
|
54
55
|
"is-column": this.column,
|
|
55
56
|
"is-error": !!this.error
|
|
56
57
|
})}
|
|
57
58
|
role="group"
|
|
58
59
|
aria-labelledby=${this.labelId}
|
|
59
|
-
aria-describedby=${
|
|
60
|
-
aria-invalid=${this.error ? "true" :
|
|
60
|
+
aria-describedby=${t || n}
|
|
61
|
+
aria-invalid=${this.error ? "true" : n}
|
|
61
62
|
>
|
|
62
|
-
${(this.options ?? []).map((e) =>
|
|
63
|
+
${(this.options ?? []).map((e) => r`<button
|
|
63
64
|
type="button"
|
|
64
|
-
class=${
|
|
65
|
+
class=${i({
|
|
65
66
|
"lintje-segmented__option": !0,
|
|
66
67
|
"is-active": e.value === this.value,
|
|
67
68
|
"is-bold": this.bold && e.value === this.value
|
|
@@ -70,10 +71,10 @@ var s = "/* The segmented control keeps `min-width: auto`: it never shrinks belo
|
|
|
70
71
|
?disabled=${this.disabled}
|
|
71
72
|
@click=${() => this.choose(e.value)}
|
|
72
73
|
>
|
|
73
|
-
${e.label}
|
|
74
|
+
${e.label}${typeof e.count == "number" ? r`<lintje-badge variant="count">${e.count}</lintje-badge>` : n}
|
|
74
75
|
</button>`)}
|
|
75
76
|
</div>
|
|
76
|
-
${e ?
|
|
77
|
+
${e ? r`<p class="lintje-segmented__description" id=${c}>${e}</p>` : n}
|
|
77
78
|
${this.renderFoot()}
|
|
78
79
|
</div>`;
|
|
79
80
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { Yt as e, Zt as t, en as n, lt as r, nn as i, st as a, ut as o } from "../chunks/base-DRGvkF-r.js";
|
|
2
|
+
import { n as s } from "../chunks/input-BGMLam-O.js";
|
|
3
|
+
import { t as c } from "../chunks/input-lQTmOMOz.js";
|
|
3
4
|
//#region src/components/inputs/select/select.css?inline
|
|
4
5
|
var l = "/* The select. Its width is the host's, set from outside by tag. */\n:host { display: block; width: 180px; }\n\n/* ------------------------------------------------------------------------ */\n\n.lintje-select { position: relative; display: flex; align-items: center; }\n.lintje-select__control {\n appearance: none;\n width: 100%;\n height: var(--h-control);\n padding: 0 34px 0 14px;\n border: 1px solid var(--color-border-field);\n background: var(--color-bg-surface);\n font-size: 1rem;\n color: var(--color-text-primary);\n border-radius: var(--radius);\n}\n.lintje-select__control.is-bold { font-weight: 700; }\n.lintje-select__control.is-error { border: 2px solid var(--color-error); }\n.lintje-select__control:disabled {\n background: var(--color-bg-subtle);\n color: var(--color-text-disabled);\n cursor: not-allowed;\n}\n.lintje-select__control:disabled { border: 1px solid var(--color-border-strong); }\n.lintje-select__icon { position: absolute; right: 12px; pointer-events: none; color: var(--color-text-primary); }\n", u = class extends s {
|
|
5
6
|
constructor(...e) {
|
|
@@ -7,9 +8,9 @@ var l = "/* The select. Its width is the host's, set from outside by tag. */\n:h
|
|
|
7
8
|
}
|
|
8
9
|
static {
|
|
9
10
|
this.styles = [
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
r,
|
|
12
|
+
t(l),
|
|
13
|
+
t(c)
|
|
13
14
|
];
|
|
14
15
|
}
|
|
15
16
|
static {
|
|
@@ -27,12 +28,12 @@ var l = "/* The select. Its width is the host's, set from outside by tag. */\n:h
|
|
|
27
28
|
this.value = e.target.value, this.commit(this.value);
|
|
28
29
|
}
|
|
29
30
|
render() {
|
|
30
|
-
return
|
|
31
|
+
return i`<div class="lintje-field">
|
|
31
32
|
${this.renderLabel(this.controlId)}
|
|
32
33
|
<div class="lintje-select">
|
|
33
34
|
<select
|
|
34
35
|
id=${this.controlId}
|
|
35
|
-
class=${
|
|
36
|
+
class=${a({
|
|
36
37
|
"lintje-select__control": !0,
|
|
37
38
|
"is-bold": this.bold,
|
|
38
39
|
"is-error": !!this.error
|
|
@@ -45,11 +46,11 @@ var l = "/* The select. Its width is the host's, set from outside by tag. */\n:h
|
|
|
45
46
|
.value=${this.value}
|
|
46
47
|
@change=${this.choose}
|
|
47
48
|
>
|
|
48
|
-
${(this.options ?? []).map((e) =>
|
|
49
|
+
${(this.options ?? []).map((e) => i`<option value=${e.value} ?selected=${e.value === this.value}>
|
|
49
50
|
${e.label}
|
|
50
51
|
</option>`)}
|
|
51
52
|
</select>
|
|
52
|
-
${
|
|
53
|
+
${o("functioneel-delta-omlaag", {
|
|
53
54
|
size: 16,
|
|
54
55
|
className: "lintje-select__icon"
|
|
55
56
|
})}
|
|
@@ -58,6 +59,6 @@ var l = "/* The select. Its width is the host's, set from outside by tag. */\n:h
|
|
|
58
59
|
</div>`;
|
|
59
60
|
}
|
|
60
61
|
};
|
|
61
|
-
|
|
62
|
+
e("lintje-select", u);
|
|
62
63
|
//#endregion
|
|
63
64
|
export { u as LintjeSelect };
|