lintje 0.2.0 → 0.3.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-CbmWxUig.js} +444 -272
- package/dist-elements/chunks/{controls-B1455oPG.js → controls-DxmnDSBr.js} +6 -0
- package/dist-elements/chunks/dialog-DChINFxD.js +28 -0
- package/dist-elements/chunks/{disclosure-BXTX04gM.js → disclosure-D39vAR5q.js} +1 -1
- package/dist-elements/chunks/{disclosure-CMXhX-Vb.js → disclosure-DLkXPUpV.js} +6 -6
- package/dist-elements/chunks/download-Ct9q2anY.js +206 -0
- package/dist-elements/chunks/{focus-trap-9BnE-xWv.js → focus-trap-BwOxE5BX.js} +1 -1
- package/dist-elements/chunks/input-CRW_exv_.js +195 -0
- package/dist-elements/chunks/{player-DXOZEyEy.js → player-B8QXJ0Z5.js} +26 -26
- package/dist-elements/chunks/{sentence-BI3lwEuT.js → sentence-B19AyZBS.js} +3 -3
- package/dist-elements/chunks/{stagger-qGD3wmhg.js → stagger-BHoOgy0g.js} +81 -75
- package/dist-elements/core.js +1 -1
- package/dist-elements/custom-elements.json +980 -670
- package/dist-elements/data-types.json +6798 -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 +8 -7
- package/dist-elements/guides/page-contents.md +110 -0
- package/dist-elements/guides/start.md +12 -0
- package/dist-elements/inputs.js +2 -1
- package/dist-elements/layout.js +1 -1
- package/dist-elements/lintje.js +6975 -6120
- 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.js +1 -1
- package/dist-elements/tag/breadcrumbs.js +15 -15
- 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 +1050 -795
- 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 +59 -0
- package/dist-elements/tag/checkbox.js +8 -8
- package/dist-elements/tag/code.js +9 -9
- package/dist-elements/tag/combobox.js +18 -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 +878 -530
- package/dist-elements/tag/date-input.js +30 -30
- package/dist-elements/tag/date-range.js +37 -37
- 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 +34 -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/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.js +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.js +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 +146 -137
- 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 +690 -665
- package/dist-elements/tag/menu-button.js +70 -69
- package/dist-elements/tag/modal.js +28 -37
- package/dist-elements/tag/multiselect.js +34 -34
- package/dist-elements/tag/note.js +5 -5
- package/dist-elements/tag/notifications.js +36 -36
- package/dist-elements/tag/number-input.js +12 -12
- package/dist-elements/tag/page-header.js +140 -37
- package/dist-elements/tag/pagination.js +53 -48
- package/dist-elements/tag/popover.js +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 +12 -12
- package/dist-elements/tag/range.js +22 -22
- package/dist-elements/tag/recording-status.js +14 -14
- package/dist-elements/tag/repeater.js +10 -10
- package/dist-elements/tag/segmented.js +13 -13
- package/dist-elements/tag/select.js +10 -10
- package/dist-elements/tag/shell.js +356 -339
- package/dist-elements/tag/skeleton.js +1 -1
- package/dist-elements/tag/slot-picker.js +14 -14
- package/dist-elements/tag/sortable-list.js +14 -14
- package/dist-elements/tag/spinner.js +1 -1
- package/dist-elements/tag/split-pane.js +12 -12
- 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 +19 -19
- package/dist-elements/tag/text-editor.js +24 -24
- package/dist-elements/tag/text-input.js +14 -14
- package/dist-elements/tag/textarea.js +14 -14
- package/dist-elements/tag/tile.js +1 -1
- package/dist-elements/tag/time-input.js +19 -19
- package/dist-elements/tag/toast.js +32 -23
- package/dist-elements/tag/toggle.js +8 -8
- package/dist-elements/tag/toggletip.js +27 -27
- 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/types/bundle/feedback.d.ts +1 -0
- package/dist-elements/types/bundle/frame.d.ts +0 -2
- package/dist-elements/types/bundle/inputs.d.ts +1 -0
- package/dist-elements/types/bundle/overlays.d.ts +1 -1
- package/dist-elements/types/components/actions/copy-button/copy-button.d.ts +6 -7
- package/dist-elements/types/components/actions/menu-button/menu-button.d.ts +13 -15
- package/dist-elements/types/components/actions/qr-code/qr-code.d.ts +9 -9
- package/dist-elements/types/components/charts/chart/chart.d.ts +5 -4
- package/dist-elements/types/components/charts/kpi/kpi.d.ts +16 -8
- package/dist-elements/types/components/charts/kpi-row/kpi-row.d.ts +1 -7
- package/dist-elements/types/components/charts/note/note.d.ts +1 -1
- package/dist-elements/types/components/chat/chat/chat.d.ts +8 -10
- package/dist-elements/types/components/chat/chat-answer/chat-answer.d.ts +7 -8
- package/dist-elements/types/components/chat/chat-composer/chat-composer.d.ts +8 -10
- package/dist-elements/types/components/chat/chat-message/chat-message.d.ts +6 -7
- 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 +10 -12
- package/dist-elements/types/components/content/code/code.d.ts +2 -3
- package/dist-elements/types/components/content/document-viewer/document-viewer.d.ts +8 -9
- package/dist-elements/types/components/content/gallery/gallery.d.ts +5 -4
- package/dist-elements/types/components/content/highlight/highlight.d.ts +4 -3
- package/dist-elements/types/components/content/prose/prose.d.ts +2 -3
- package/dist-elements/types/components/content/transcript/transcript.d.ts +12 -25
- package/dist-elements/types/components/content/translator/translator.d.ts +11 -15
- package/dist-elements/types/components/content/video-player/video-player.d.ts +11 -13
- package/dist-elements/types/components/feedback/ai-label/ai-label.d.ts +3 -4
- package/dist-elements/types/components/feedback/announcement/announcement.d.ts +3 -7
- package/dist-elements/types/components/feedback/conflict-alert/conflict-alert.d.ts +3 -4
- 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/components/feedback/recording-status/recording-status.d.ts +5 -6
- package/dist-elements/types/components/feedback/streaming-text/streaming-text.d.ts +10 -7
- 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 +5 -5
- 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 +5 -6
- package/dist-elements/types/components/forms/form/form.d.ts +5 -5
- package/dist-elements/types/components/forms/form-actions/form-actions.d.ts +9 -7
- package/dist-elements/types/components/forms/form-section/form-section.d.ts +6 -5
- package/dist-elements/types/components/forms/repeater/repeater.d.ts +13 -7
- package/dist-elements/types/components/forms/stepper/stepper.d.ts +5 -4
- package/dist-elements/types/components/frame/app-search/app-search.d.ts +6 -7
- 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 +5 -9
- package/dist-elements/types/components/frame/page-header/page-header.d.ts +12 -15
- package/dist-elements/types/components/frame/shell/shell.d.ts +14 -13
- 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 +11 -10
- package/dist-elements/types/components/index.d.ts +8 -9
- 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 +12 -6
- package/dist-elements/types/components/inputs/date-input/date-input.d.ts +5 -5
- package/dist-elements/types/components/inputs/date-range/date-range.d.ts +11 -6
- package/dist-elements/types/components/inputs/field/field.d.ts +5 -3
- package/dist-elements/types/components/inputs/file-upload/file-upload.d.ts +6 -8
- 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/slot-picker/slot-picker.d.ts +6 -5
- package/dist-elements/types/components/inputs/tag-input/tag-input.d.ts +7 -5
- package/dist-elements/types/components/inputs/text-editor/text-editor.d.ts +6 -6
- package/dist-elements/types/components/inputs/text-input/text-input.d.ts +11 -6
- package/dist-elements/types/components/inputs/textarea/textarea.d.ts +12 -11
- package/dist-elements/types/components/inputs/time-input/time-input.d.ts +7 -8
- package/dist-elements/types/components/inputs/toggle/toggle.d.ts +3 -1
- package/dist-elements/types/components/layout/expander/expander.d.ts +9 -10
- package/dist-elements/types/components/layout/split-pane/split-pane.d.ts +6 -6
- package/dist-elements/types/components/layout/tabs/tabs.d.ts +11 -9
- package/dist-elements/types/components/map/map/map.d.ts +10 -9
- 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 +7 -12
- package/dist-elements/types/components/overlays/toggletip/toggletip.d.ts +3 -7
- package/dist-elements/types/components/shared/charts/index.d.ts +4 -1
- package/dist-elements/types/components/shared/charts/kinds.d.ts +86 -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/shared/chart-states.d.ts +8 -19
- package/dist-elements/types/components/shared/charts/shared/controller.d.ts +7 -0
- package/dist-elements/types/components/shared/charts/shared/types.d.ts +29 -0
- package/dist-elements/types/components/shared/charts/stacked-area-chart/stacked-area-chart.d.ts +13 -0
- package/dist-elements/types/components/shared/dialog.d.ts +9 -0
- package/dist-elements/types/components/shared/overflow.d.ts +58 -0
- package/dist-elements/types/components/tables/activity-log/activity-log.d.ts +2 -3
- package/dist-elements/types/components/tables/card/card.d.ts +14 -20
- package/dist-elements/types/components/tables/card-list/card-list.d.ts +9 -11
- package/dist-elements/types/components/tables/data-table/data-table.d.ts +85 -16
- package/dist-elements/types/components/tables/data-table/filters.d.ts +13 -4
- package/dist-elements/types/components/tables/description-list/description-list.d.ts +12 -11
- package/dist-elements/types/components/tables/list/list.d.ts +9 -20
- 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 +4 -4
- 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/icon/icon.d.ts +2 -3
- package/dist-elements/types/icons/register.d.ts +1 -1
- package/dist-elements/types/primitives/badge/badge.d.ts +9 -5
- package/dist-elements/types/primitives/button/button.d.ts +12 -9
- package/dist-elements/types/primitives/grid/grid.d.ts +3 -3
- package/dist-elements/types/primitives/grid-item/grid-item.d.ts +1 -1
- package/dist-elements/types/primitives/icon-button/icon-button.d.ts +7 -5
- package/dist-elements/types/primitives/index.d.ts +3 -1
- package/dist-elements/types/primitives/popover/popover.d.ts +5 -4
- package/dist-elements/types/primitives/progress-bar/progress-bar.d.ts +8 -6
- package/dist-elements/types/primitives/shared/announcement-block.d.ts +38 -0
- package/dist-elements/types/primitives/shared/empty-state-block.d.ts +26 -0
- package/dist-elements/types/primitives/shared/tone.d.ts +18 -0
- package/dist-elements/types/primitives/skeleton/skeleton.d.ts +1 -1
- package/dist-elements/types/primitives/spinner/spinner.d.ts +1 -2
- package/dist-elements/types/primitives/status-dot/status-dot.d.ts +4 -5
- package/dist-elements/types/primitives/tile/tile.d.ts +17 -5
- package/dist-elements/types/primitives/tooltip/tooltip.d.ts +6 -6
- 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
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { $ as e,
|
|
2
|
-
import "../chunks/focus-trap-
|
|
3
|
-
import { r as d, t as f } from "../chunks/input-
|
|
1
|
+
import { $ as e, Q as t, Yt as n, Zt as r, bt as i, en as a, et as o, lt as s, nn as c, st as l, ut as u } from "../chunks/base-CbmWxUig.js";
|
|
2
|
+
import "../chunks/focus-trap-BwOxE5BX.js";
|
|
3
|
+
import { r as d, t as f } from "../chunks/input-CRW_exv_.js";
|
|
4
4
|
import "./checkbox.js";
|
|
5
5
|
//#region src/components/inputs/multiselect/multiselect.css?inline
|
|
6
6
|
var p = "/* The multi-select's trigger, chips and list. */\n\n/* --- Multi-select --------------------------------------------------------- */\n.lintje-multiselect { position: relative; }\n.lintje-multiselect__field {\n display: flex; align-items: center; gap: 6px; flex-wrap: nowrap;\n width: 100%; min-height: var(--h-control);\n padding: 0 var(--space-2);\n border: 1px solid var(--color-border-field);\n background: var(--color-bg-surface);\n text-align: left;\n overflow: hidden;\n}\n.lintje-multiselect__shown { display: contents; }\n.lintje-multiselect__field.is-error { border: 2px solid var(--color-error); }\n.lintje-multiselect__field:disabled {\n border: 1px solid var(--color-border-strong);\n background: var(--color-bg-subtle);\n color: var(--color-text-disabled);\n cursor: not-allowed;\n}\n.lintje-multiselect__summary {\n flex: 1 1 auto; min-width: 0;\n padding-left: var(--space-1);\n font: var(--text-ui);\n overflow: hidden; text-overflow: ellipsis; white-space: nowrap;\n}\n.lintje-multiselect__placeholder { color: var(--color-text-placeholder); font-size: 1rem; padding-left: 6px; }\n.lintje-multiselect__chip {\n display: inline-flex; align-items: center; gap: 6px;\n height: var(--h-chip-field);\n padding: 0 0 0 var(--space-2);\n background: var(--color-bg-subtle);\n border: 1px solid var(--color-border-default);\n font-size: 0.875rem; white-space: nowrap;\n /* The label shortens with an ellipsis, the cross and counter never shrink; the whole\n selection is in the field's `title`. */\n flex: 0 1 auto; min-width: 0;\n}\n.lintje-multiselect__chip-label { overflow: hidden; text-overflow: ellipsis; min-width: 2ch; }\n/* A transparent hit area reaches the target height, not sideways: the label opens the list. */\n.lintje-multiselect__chip-remove {\n position: relative;\n flex: none;\n width: var(--space-6); align-self: stretch;\n display: flex; align-items: center; justify-content: center;\n cursor: pointer; color: var(--color-text-muted); font-size: 1rem;\n}\n.lintje-multiselect__chip-remove::after {\n content: '';\n position: absolute;\n inset: min(0px, calc((var(--h-chip-field) - var(--h-target)) / 2)) 0;\n}\n.lintje-multiselect__overflow { font-size: 0.875rem; color: var(--color-text-muted); flex: none; }\n.lintje-multiselect__scrim { position: fixed; inset: 0; z-index: 45; }\n/* Fixed to the viewport: an absolute popover is cut off by a scrolling box around it. A column,\n so the list shrinks when the room is short. */\n.lintje-multiselect__popover {\n position: fixed; z-index: 46;\n min-width: 260px;\n max-height: var(--lintje-multiselect-space, none);\n display: flex; flex-direction: column;\n background: var(--color-bg-surface);\n border: 1px solid var(--color-border-popover);\n box-shadow: var(--shadow-popover);\n animation: lintje-popover-in var(--dur-popover) var(--ease-in-motion);\n}\n.lintje-multiselect__search { flex: none; padding: var(--space-2); border-bottom: 1px solid var(--color-border-default); }\n.lintje-multiselect__search-input {\n width: 100%; height: var(--h-control); padding: 0 var(--space-2);\n border: 1px solid var(--color-border-field);\n background: var(--color-bg-surface); color: var(--color-text-primary); font-size: 1rem;\n}\n.lintje-multiselect__search-input::placeholder { color: var(--color-text-placeholder); opacity: 1; }\n.lintje-multiselect__list {\n flex: 1 1 auto; min-height: 0;\n max-height: 220px; overflow-y: auto;\n padding: var(--space-2);\n display: flex; flex-direction: column; gap: 2px;\n}\n/* The `lintje-checkbox` row reads `--h-target` in its shadow root: point it at the option height. */\n.lintje-multiselect__option { --h-target: var(--h-option); }\n.lintje-multiselect__no-results { font: var(--text-small); color: var(--color-text-muted); padding: var(--space-2); }\n.lintje-multiselect__footer {\n flex: none;\n display: flex; align-items: center; justify-content: space-between;\n padding: var(--space-2) var(--space-3);\n border-top: 1px solid var(--color-border-default);\n font: var(--text-small); color: var(--color-text-muted);\n}\n.lintje-multiselect__clear {\n min-height: var(--h-target);\n color: var(--color-link); font-weight: 700; text-decoration: underline;\n}\n", m = 4, h = 8, g = 260, _ = 180, v = "lintje-multiselect-value", y = "lintje-multiselect-shown";
|
|
@@ -17,11 +17,11 @@ function x(e) {
|
|
|
17
17
|
return e.label ?? String(e.value);
|
|
18
18
|
}
|
|
19
19
|
var S = (e) => e === 1 ? "1 resultaat" : `${e} resultaten`, C = class extends d {
|
|
20
|
-
constructor(...
|
|
21
|
-
super(...
|
|
20
|
+
constructor(...t) {
|
|
21
|
+
super(...t), this.placeholder = "Kies één of meer…", this.stacked = !1, this.open = !1, this.query = "", this.anchor = null, this.news = "", this.reflowFrame = 0, this.onOutsideClick = (e) => {
|
|
22
22
|
this.open && (e.composedPath().includes(this) || (this.open = !1));
|
|
23
|
-
}, this.onEscape = (
|
|
24
|
-
this.open &&
|
|
23
|
+
}, this.onEscape = (t) => {
|
|
24
|
+
this.open && t.key === "Escape" && e(this) && (t.stopPropagation(), this.close());
|
|
25
25
|
}, this.onReflow = () => {
|
|
26
26
|
this.open && !this.reflowFrame && (this.reflowFrame = requestAnimationFrame(() => {
|
|
27
27
|
this.reflowFrame = 0, this.measure();
|
|
@@ -30,9 +30,9 @@ var S = (e) => e === 1 ? "1 resultaat" : `${e} resultaten`, C = class extends d
|
|
|
30
30
|
}
|
|
31
31
|
static {
|
|
32
32
|
this.styles = [
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
33
|
+
s,
|
|
34
|
+
r(f),
|
|
35
|
+
r(p)
|
|
36
36
|
];
|
|
37
37
|
}
|
|
38
38
|
static {
|
|
@@ -58,12 +58,12 @@ var S = (e) => e === 1 ? "1 resultaat" : `${e} resultaten`, C = class extends d
|
|
|
58
58
|
return this.renderRoot.querySelector(".lintje-multiselect__field");
|
|
59
59
|
}
|
|
60
60
|
async close() {
|
|
61
|
-
let e = this.renderRoot.querySelector(".lintje-multiselect__popover"),
|
|
62
|
-
this.open = !1, this.query = "", await this.updateComplete,
|
|
61
|
+
let e = this.renderRoot.querySelector(".lintje-multiselect__popover"), n = e !== null && t(e);
|
|
62
|
+
this.open = !1, this.query = "", await this.updateComplete, n && this.trigger?.focus();
|
|
63
63
|
}
|
|
64
64
|
onFocusOut(e) {
|
|
65
65
|
let t = e.relatedTarget;
|
|
66
|
-
this.open && t && !this.renderRoot.contains(t) && !
|
|
66
|
+
this.open && t && !this.renderRoot.contains(t) && !o(this, t) && (this.open = !1, this.query = "");
|
|
67
67
|
}
|
|
68
68
|
connectedCallback() {
|
|
69
69
|
super.connectedCallback(), document.addEventListener("mousedown", this.onOutsideClick), document.addEventListener("keydown", this.onEscape, !0), window.addEventListener("scroll", this.onReflow, {
|
|
@@ -109,23 +109,23 @@ var S = (e) => e === 1 ? "1 resultaat" : `${e} resultaten`, C = class extends d
|
|
|
109
109
|
let t = this.selected ?? [];
|
|
110
110
|
this.choose(t.includes(e) ? t.filter((t) => t !== e) : [...t, e]);
|
|
111
111
|
}
|
|
112
|
-
checkbox(e, t, n,
|
|
113
|
-
return
|
|
112
|
+
checkbox(e, t, n, r, i) {
|
|
113
|
+
return c`<lintje-checkbox
|
|
114
114
|
class="lintje-multiselect__option"
|
|
115
115
|
label=${e}
|
|
116
|
-
hint=${
|
|
116
|
+
hint=${i ?? a}
|
|
117
117
|
?checked=${t}
|
|
118
118
|
?indeterminate=${n && !t}
|
|
119
|
-
@lintje-change=${(e) =>
|
|
119
|
+
@lintje-change=${(e) => r(e.detail)}
|
|
120
120
|
></lintje-checkbox>`;
|
|
121
121
|
}
|
|
122
122
|
render() {
|
|
123
|
-
let e = this.options ?? [], t = this.selected ?? [], n = this.query.trim().toLowerCase(),
|
|
124
|
-
return
|
|
123
|
+
let e = this.options ?? [], t = this.selected ?? [], n = this.query.trim().toLowerCase(), r = e.filter((e) => x(e).toLowerCase().includes(n)), o = t.length === e.length, s = t.length > 0 && !o, d = t.slice(0, 2), f = t.length - d.length, p = t.map((t) => e.find((e) => e.value === t)?.label ?? t);
|
|
124
|
+
return c`<div class="lintje-field lintje-multiselect" @focusout=${this.onFocusOut}>
|
|
125
125
|
${this.renderLabel()}
|
|
126
126
|
<button
|
|
127
127
|
type="button"
|
|
128
|
-
class=${
|
|
128
|
+
class=${l({
|
|
129
129
|
"lintje-multiselect__field": !0,
|
|
130
130
|
"is-error": !!this.error
|
|
131
131
|
})}
|
|
@@ -133,18 +133,18 @@ var S = (e) => e === 1 ? "1 resultaat" : `${e} resultaten`, C = class extends d
|
|
|
133
133
|
aria-haspopup="dialog"
|
|
134
134
|
aria-labelledby="${this.labelId} ${y} ${v}"
|
|
135
135
|
aria-describedby=${this.describedBy}
|
|
136
|
-
aria-invalid=${this.error ? "true" :
|
|
136
|
+
aria-invalid=${this.error ? "true" : a}
|
|
137
137
|
?disabled=${this.disabled}
|
|
138
|
-
title=${p.length ? p.join(", ") :
|
|
138
|
+
title=${p.length ? p.join(", ") : a}
|
|
139
139
|
@click=${() => {
|
|
140
140
|
this.open ? this.close() : this.open = !0;
|
|
141
141
|
}}
|
|
142
142
|
>
|
|
143
143
|
<span id=${v} class="visually-hidden">${this.valueText(p)}</span>
|
|
144
144
|
<!-- What the button shows is part of its name, so a voice command can use it (WCAG 2.5.3). -->
|
|
145
|
-
<span id=${y} class="lintje-multiselect__shown"> ${this.summary ?
|
|
146
|
-
${t.length === 0 && !this.summary ?
|
|
147
|
-
${(this.summary ? [] : d).map((t) =>
|
|
145
|
+
<span id=${y} class="lintje-multiselect__shown"> ${this.summary ? c`<span class="lintje-multiselect__summary">${this.summary}</span>${u("functioneel-delta-omlaag", { size: 16 })}` : a}
|
|
146
|
+
${t.length === 0 && !this.summary ? c`<span class="lintje-multiselect__placeholder">${this.placeholder}</span>` : a}
|
|
147
|
+
${(this.summary ? [] : d).map((t) => c`<span class="lintje-multiselect__chip">
|
|
148
148
|
<span class="lintje-multiselect__chip-label"
|
|
149
149
|
>${e.find((e) => e.value === t)?.label}</span
|
|
150
150
|
>
|
|
@@ -160,11 +160,11 @@ var S = (e) => e === 1 ? "1 resultaat" : `${e} resultaten`, C = class extends d
|
|
|
160
160
|
>×</span
|
|
161
161
|
>
|
|
162
162
|
</span>`)}
|
|
163
|
-
${f > 0 && !this.summary ?
|
|
163
|
+
${f > 0 && !this.summary ? c`<span class="lintje-multiselect__overflow">+${f}</span>` : a}</span
|
|
164
164
|
>
|
|
165
165
|
</button>
|
|
166
166
|
|
|
167
|
-
${this.open ?
|
|
167
|
+
${this.open ? c`<span
|
|
168
168
|
class="lintje-multiselect__scrim"
|
|
169
169
|
@click=${() => void this.close()}
|
|
170
170
|
></span>
|
|
@@ -172,7 +172,7 @@ var S = (e) => e === 1 ? "1 resultaat" : `${e} resultaten`, C = class extends d
|
|
|
172
172
|
class="lintje-multiselect__popover"
|
|
173
173
|
role="dialog"
|
|
174
174
|
aria-label=${this.label || this.placeholder}
|
|
175
|
-
${
|
|
175
|
+
${i(b(this.anchor))}
|
|
176
176
|
>
|
|
177
177
|
<div class="lintje-multiselect__search">
|
|
178
178
|
<input
|
|
@@ -184,11 +184,11 @@ var S = (e) => e === 1 ? "1 resultaat" : `${e} resultaten`, C = class extends d
|
|
|
184
184
|
/>
|
|
185
185
|
</div>
|
|
186
186
|
<div class="lintje-multiselect__list">
|
|
187
|
-
${this.checkbox(`Alles selecteren (${e.length})`,
|
|
188
|
-
${
|
|
189
|
-
${
|
|
187
|
+
${this.checkbox(`Alles selecteren (${e.length})`, o, s, (t) => this.choose(t ? e.map((e) => e.value) : []))}
|
|
188
|
+
${r.map((e) => this.checkbox(x(e), t.includes(e.value), !1, () => this.toggleOption(e.value), e.description))}
|
|
189
|
+
${r.length === 0 ? c`<p class="lintje-multiselect__no-results">
|
|
190
190
|
Geen waarde met “${this.query}”.
|
|
191
|
-
</p>` :
|
|
191
|
+
</p>` : a}
|
|
192
192
|
</div>
|
|
193
193
|
<div class="lintje-multiselect__footer">
|
|
194
194
|
<button type="button" class="lintje-multiselect__clear" @click=${() => this.choose([])}>
|
|
@@ -196,12 +196,12 @@ var S = (e) => e === 1 ? "1 resultaat" : `${e} resultaten`, C = class extends d
|
|
|
196
196
|
</button>
|
|
197
197
|
<span>${t.length} geselecteerd</span>
|
|
198
198
|
</div>
|
|
199
|
-
</div>` :
|
|
199
|
+
</div>` : a}
|
|
200
200
|
<span class="visually-hidden" role="status">${this.news}</span>
|
|
201
201
|
${this.renderFoot()}
|
|
202
202
|
</div>`;
|
|
203
203
|
}
|
|
204
204
|
};
|
|
205
|
-
|
|
205
|
+
n("lintje-multiselect", C);
|
|
206
206
|
//#endregion
|
|
207
207
|
export { C as LintjeMultiselect };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { F as e, P as t, Yt as n, Zt as r, en as i, nn as a } from "../chunks/base-CbmWxUig.js";
|
|
2
2
|
//#region src/components/charts/note/note.css?inline
|
|
3
|
-
var o = ":host {\n display: block;\n min-width: 0;\n}\n:host([hidden]) { display: none; }\n.lintje-note { height: 100%; }\n\n/* ------------------------------------------------------------------------ */\n\n.lintje-note {\n background: var(--color-bg-surface);\n border: 1px solid var(--color-border-default);\n padding: var(--tile-pad-y) var(--tile-pad-x);\n display: flex; flex-direction: column; gap: var(--space-2);\n min-width: 0;\n}\n.lintje-note__header { display: flex; align-items: baseline; justify-content: space-between; gap: var(--space-3); }\n.lintje-note__title { font: var(--text-tile-title); }\n.lintje-note__date { font: var(--text-tile-sub); color: var(--color-text-muted); }\n.lintje-note__text { font: var(--text-small); line-height: 1.55; color: var(--color-text-secondary); }\n.lintje-note__author { font: var(--text-meta); color: var(--color-text-muted); }\n", s = class extends
|
|
3
|
+
var o = ":host {\n display: block;\n min-width: 0;\n}\n:host([hidden]) { display: none; }\n@media print { :host { break-inside: avoid; } }\n.lintje-note { height: 100%; }\n\n/* ------------------------------------------------------------------------ */\n\n.lintje-note {\n background: var(--color-bg-surface);\n border: 1px solid var(--color-border-default);\n padding: var(--tile-pad-y) var(--tile-pad-x);\n display: flex; flex-direction: column; gap: var(--space-2);\n min-width: 0;\n}\n.lintje-note__header { display: flex; align-items: baseline; justify-content: space-between; gap: var(--space-3); }\n.lintje-note__title { font: var(--text-tile-title); }\n.lintje-note__date { font: var(--text-tile-sub); color: var(--color-text-muted); }\n.lintje-note__text { font: var(--text-small); line-height: 1.55; color: var(--color-text-secondary); }\n.lintje-note__author { font: var(--text-meta); color: var(--color-text-muted); }\n", s = class extends t {
|
|
4
4
|
static {
|
|
5
|
-
this.styles = [
|
|
5
|
+
this.styles = [e, r(o)];
|
|
6
6
|
}
|
|
7
7
|
static {
|
|
8
8
|
this.properties = { data: { attribute: !1 } };
|
|
@@ -19,9 +19,9 @@ var o = ":host {\n display: block;\n min-width: 0;\n}\n:host([hidden]) { displ
|
|
|
19
19
|
</header>
|
|
20
20
|
<p class="lintje-note__text">${e.text}</p>
|
|
21
21
|
<p class="lintje-note__author">— ${e.author}</p>
|
|
22
|
-
</section>` :
|
|
22
|
+
</section>` : i;
|
|
23
23
|
}
|
|
24
24
|
};
|
|
25
|
-
|
|
25
|
+
n("lintje-note", s);
|
|
26
26
|
//#endregion
|
|
27
27
|
export { s as LintjeNote };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { t as h } from "../chunks/focus-trap-
|
|
1
|
+
import { Gt as e, H as t, Ht as n, Jt as r, Kt as i, Q as a, Yt as o, Zt as s, en as c, et as l, lt as u, nn as d, q as f, st as p, ut as m } from "../chunks/base-CbmWxUig.js";
|
|
2
|
+
import { t as h } from "../chunks/focus-trap-BwOxE5BX.js";
|
|
3
3
|
import { t as g } from "../chunks/dialog-close-u75fVEw4.js";
|
|
4
4
|
//#region src/components/frame/notifications/notifications.css?inline
|
|
5
5
|
var _ = "/* The host is the bell's box; the panel is fixed and takes no space. */\n:host { display: inline-flex; flex: none; vertical-align: middle; }\n:host([hidden]) { display: none; }\n\n/* ------------------------------------------------------------------------ */\n\n.lintje-notifications__bell {\n position: relative;\n display: flex; align-items: center; justify-content: center;\n width: var(--h-touch); height: var(--lintje-tool-height, var(--h-touch));\n color: var(--color-nav-text);\n transition: background var(--dur-hover) var(--ease-in-motion);\n}\n.lintje-notifications__bell:hover,\n.lintje-notifications__bell.is-open { background: var(--color-nav-hover); }\n\n/* The counter is placed from the bell's middle, so a bell as high as the bar does not carry it\n up to the bar's edge. */\n.lintje-notifications__count {\n position: absolute;\n top: calc(50% - var(--h-touch) / 2 + var(--space-1)); right: var(--space-1);\n}\n/* The keyed figure is a new element per value, so the rise plays once per change. */\n.lintje-notifications__figure { display: inline-block; }\n.lintje-notifications__figure.is-replaced {\n animation: lintje-rise var(--dur-badge) var(--ease-in-motion) both;\n}\n\n.lintje-notifications__panel {\n width: 440px;\n max-width: 100%;\n max-height: 480px;\n overflow-y: auto;\n font: var(--text-ui);\n color: var(--color-text-primary);\n}\n\n.lintje-notifications__head {\n display: flex; align-items: center; justify-content: space-between;\n gap: var(--space-4);\n padding: var(--space-3) var(--space-4);\n border-bottom: 1px solid var(--color-border-default);\n}\n.lintje-notifications__heading { font: var(--text-tile-title); }\n/* The link-style button reaches the target height through a hit area above and below only. */\n.lintje-notifications__read {\n position: relative;\n min-height: var(--space-6);\n margin-left: auto;\n color: var(--color-link);\n font-size: 0.875rem; font-weight: 700;\n text-decoration: underline;\n}\n.lintje-notifications__read::after {\n content: '';\n position: absolute;\n inset: min(0px, calc((100% - var(--h-target)) / 2)) 0;\n}\n.lintje-notifications__read:hover { color: var(--color-link-hover); }\n\n.lintje-notifications__list { margin: 0; padding: 0; list-style: none; }\n.lintje-notifications__item {\n display: flex; gap: var(--space-3);\n padding: var(--space-3) var(--space-4);\n border-bottom: 1px solid var(--color-border-default);\n transition: background var(--dur-hover) var(--ease-in-motion);\n}\n.lintje-notifications__item:last-child { border-bottom: 0; }\n.lintje-notifications__item.is-unread { background: var(--color-bg-selected); }\n.lintje-notifications__item:hover { background: var(--color-bg-subtle); }\n\n.lintje-notifications__dot,\n.lintje-notifications__dot-space { flex: 0 0 8px; height: 8px; margin-top: 7px; }\n.lintje-notifications__dot { border-radius: var(--radius-round); background: var(--color-accent-line); }\n\n.lintje-notifications__body { min-width: 0; }\n.lintje-notifications__title {\n display: inline;\n padding: 0;\n color: var(--color-link);\n font-size: 1rem; font-weight: 400;\n text-align: left;\n text-decoration: underline;\n}\n.lintje-notifications__title:hover { color: var(--color-link-hover); }\n.lintje-notifications__item.is-unread .lintje-notifications__title { font-weight: 700; }\n.lintje-notifications__text { margin: 0; font-size: 0.875rem; overflow-wrap: anywhere; }\n.lintje-notifications__when { margin: 0; font-size: 0.875rem; color: var(--color-text-muted); }\n\n.lintje-notifications__empty {\n margin: 0;\n padding: var(--space-6) var(--space-4);\n color: var(--color-text-muted);\n text-align: center;\n}\n\n/* Phone: the sheet takes focus only when the trap pulls back stray focus, and draws no ring. */\n.lintje-notifications__sheet {\n position: fixed;\n z-index: 85;\n inset: 0;\n overflow-y: auto;\n background: var(--color-bg-surface);\n animation: lintje-fade-in var(--dur-popover) var(--ease-in-motion);\n}\n.lintje-notifications__sheet:focus { outline: none; }\n.lintje-notifications__panel.is-sheet { width: 100%; max-height: none; }\n.lintje-notifications__close { margin-right: calc(var(--space-2) * -1); }\n.lintje-notifications__close:hover { color: var(--color-text-primary); }\n.lintje-notifications__panel.is-sheet .lintje-notifications__head { padding-top: 0; padding-bottom: 0; min-height: var(--h-mobile-header); }\n\n/* Forced colours: the unread surface is dropped, so the dot keeps a system-colour fill. */\n@media (forced-colors: active) {\n .lintje-notifications__dot { forced-color-adjust: none; background: CanvasText; }\n .lintje-notifications__bell.is-open { outline: 1px solid Highlight; outline-offset: -1px; }\n}\n", v = 0;
|
|
@@ -12,12 +12,12 @@ function b(e, t = 9) {
|
|
|
12
12
|
function x(e) {
|
|
13
13
|
return e === 1 ? "1 nieuwe melding" : `${e} nieuwe meldingen`;
|
|
14
14
|
}
|
|
15
|
-
var S = class extends
|
|
15
|
+
var S = class extends r {
|
|
16
16
|
static {
|
|
17
17
|
this.styles = [
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
18
|
+
u,
|
|
19
|
+
s(g),
|
|
20
|
+
s(_)
|
|
21
21
|
];
|
|
22
22
|
}
|
|
23
23
|
static {
|
|
@@ -47,9 +47,9 @@ var S = class extends m {
|
|
|
47
47
|
this.open = !1, e && this.bell?.focus();
|
|
48
48
|
}
|
|
49
49
|
constructor() {
|
|
50
|
-
super(), this.items = [], this.max = 9, this.open = !1, this.#e = 0, this.#t = !1, this.news = "", this.#n = 0, this.#r = !1, this.#i = new
|
|
50
|
+
super(), this.items = [], this.max = 9, this.open = !1, this.#e = 0, this.#t = !1, this.news = "", this.#n = 0, this.#r = !1, this.#i = new i(this, e), this.#a = `lintje-notifications-${++v}`, this.onFocusOut = (e) => {
|
|
51
51
|
let t = e.relatedTarget;
|
|
52
|
-
this.open && !this.#i.matches && t && (
|
|
52
|
+
this.open && !this.#i.matches && t && (l(t, this) || l(this, t) || this.hide(!1));
|
|
53
53
|
}, this.#o = null, this.#s = new h(), this.#c = (e) => {
|
|
54
54
|
e.key === "Escape" && this.#s.isTopmost() && this.hide(!0);
|
|
55
55
|
}, this.addEventListener("focusout", this.onFocusOut);
|
|
@@ -65,7 +65,7 @@ var S = class extends m {
|
|
|
65
65
|
let t = this.unread, n = this.#e;
|
|
66
66
|
this.#t = n > 0 && t > 0 && t !== n, this.#e = t, this.hasUpdated && t > n && this.#l(x(t - n));
|
|
67
67
|
let r = this.renderRoot.querySelector(".lintje-notifications__read");
|
|
68
|
-
t === 0 && r &&
|
|
68
|
+
t === 0 && r && a(r) && (this.#r = !0);
|
|
69
69
|
}
|
|
70
70
|
#l(e) {
|
|
71
71
|
this.news = "", this.#n && cancelAnimationFrame(this.#n), this.#n = requestAnimationFrame(() => {
|
|
@@ -82,7 +82,7 @@ var S = class extends m {
|
|
|
82
82
|
t && !this.#o ? this.#u() : !t && this.#o && this.#d();
|
|
83
83
|
}
|
|
84
84
|
#u() {
|
|
85
|
-
this.#o =
|
|
85
|
+
this.#o = n(), document.addEventListener("keydown", this.#c);
|
|
86
86
|
let e = this.renderRoot.querySelector(".lintje-notifications__sheet"), t = this.renderRoot.querySelector(".lintje-notifications__close");
|
|
87
87
|
e && this.#s.activate(e, { focus: t ?? !0 });
|
|
88
88
|
}
|
|
@@ -92,72 +92,72 @@ var S = class extends m {
|
|
|
92
92
|
onPopoverClose(e) {
|
|
93
93
|
e.stopPropagation(), this.hide(e.detail?.reason === "escape");
|
|
94
94
|
}
|
|
95
|
-
choose(e,
|
|
96
|
-
(!e.href ||
|
|
95
|
+
choose(e, n) {
|
|
96
|
+
(!e.href || t(n)) && (this.hide(!0), this.emit("lintje-notification-open", e.href ? {
|
|
97
97
|
id: e.id,
|
|
98
98
|
href: e.href
|
|
99
|
-
} : { id: e.id }) ||
|
|
99
|
+
} : { id: e.id }) || n.preventDefault());
|
|
100
100
|
}
|
|
101
101
|
renderItem(e) {
|
|
102
|
-
let t = !!e.unread, n = e.href ?
|
|
102
|
+
let t = !!e.unread, n = e.href ? d`<a
|
|
103
103
|
class="lintje-notifications__title"
|
|
104
104
|
href=${e.href}
|
|
105
105
|
@click=${(t) => this.choose(e, t)}
|
|
106
106
|
>${e.title}</a
|
|
107
|
-
>` :
|
|
107
|
+
>` : d`<button
|
|
108
108
|
type="button"
|
|
109
109
|
class="lintje-notifications__title"
|
|
110
110
|
@click=${(t) => this.choose(e, t)}
|
|
111
111
|
>
|
|
112
112
|
${e.title}
|
|
113
113
|
</button>`;
|
|
114
|
-
return
|
|
114
|
+
return d`<li class=${p({
|
|
115
115
|
"lintje-notifications__item": !0,
|
|
116
116
|
"is-unread": t
|
|
117
117
|
})}>
|
|
118
|
-
${t ?
|
|
118
|
+
${t ? d`<span class="lintje-notifications__dot" role="img" aria-label="Ongelezen"></span>` : d`<span class="lintje-notifications__dot-space"></span>`}
|
|
119
119
|
<div class="lintje-notifications__body">
|
|
120
120
|
${n}
|
|
121
|
-
${e.text ?
|
|
121
|
+
${e.text ? d`<p class="lintje-notifications__text">${e.text}</p>` : c}
|
|
122
122
|
<p class="lintje-notifications__when">${e.when}</p>
|
|
123
123
|
</div>
|
|
124
124
|
</li>`;
|
|
125
125
|
}
|
|
126
126
|
renderPanel(e) {
|
|
127
|
-
return
|
|
127
|
+
return d`<div class=${p({
|
|
128
128
|
"lintje-notifications__panel": !0,
|
|
129
129
|
"is-sheet": e
|
|
130
130
|
})}>
|
|
131
131
|
<div class="lintje-notifications__head">
|
|
132
132
|
<h2 class="lintje-notifications__heading">Meldingen</h2>
|
|
133
|
-
${this.unread > 0 ?
|
|
133
|
+
${this.unread > 0 ? d`<button
|
|
134
134
|
type="button"
|
|
135
135
|
class="lintje-notifications__read"
|
|
136
136
|
@click=${() => this.emit("lintje-notifications-read")}
|
|
137
137
|
>
|
|
138
138
|
Alles gelezen
|
|
139
|
-
</button>` :
|
|
140
|
-
${e ?
|
|
139
|
+
</button>` : c}
|
|
140
|
+
${e ? d`<button
|
|
141
141
|
type="button"
|
|
142
142
|
class="lintje-dialog-close lintje-notifications__close"
|
|
143
143
|
aria-label="Meldingen sluiten"
|
|
144
144
|
@click=${() => this.hide(!0)}
|
|
145
145
|
>
|
|
146
|
-
${
|
|
147
|
-
</button>` :
|
|
146
|
+
${m("functioneel-kruis", { size: 16 })}
|
|
147
|
+
</button>` : c}
|
|
148
148
|
</div>
|
|
149
|
-
${this.items.length ?
|
|
149
|
+
${this.items.length ? d`<ul class="lintje-notifications__list">
|
|
150
150
|
${this.items.map((e) => this.renderItem(e))}
|
|
151
|
-
</ul>` :
|
|
151
|
+
</ul>` : d`<p class="lintje-notifications__empty">
|
|
152
152
|
Geen meldingen. Wat klaar is of mislukt, verschijnt hier.
|
|
153
153
|
</p>`}
|
|
154
154
|
</div>`;
|
|
155
155
|
}
|
|
156
156
|
render() {
|
|
157
157
|
let e = this.unread, t = this.#i.matches;
|
|
158
|
-
return
|
|
158
|
+
return d`<button
|
|
159
159
|
type="button"
|
|
160
|
-
class=${
|
|
160
|
+
class=${p({
|
|
161
161
|
"lintje-notifications__bell": !0,
|
|
162
162
|
"is-open": this.open
|
|
163
163
|
})}
|
|
@@ -167,18 +167,18 @@ var S = class extends m {
|
|
|
167
167
|
aria-controls=${this.#a}
|
|
168
168
|
@click=${() => this.open ? this.hide(!1) : this.open = !0}
|
|
169
169
|
>
|
|
170
|
-
${
|
|
171
|
-
${e > 0 ?
|
|
172
|
-
>${
|
|
173
|
-
class=${
|
|
170
|
+
${m("functioneel-bel", { size: 20 })}
|
|
171
|
+
${e > 0 ? d`<lintje-badge class="lintje-notifications__count" variant="unread" aria-hidden="true"
|
|
172
|
+
>${f(y(e, this.max), d`<span
|
|
173
|
+
class=${p({
|
|
174
174
|
"lintje-notifications__figure": !0,
|
|
175
175
|
"is-replaced": this.#t
|
|
176
176
|
})}
|
|
177
177
|
>${y(e, this.max)}</span
|
|
178
178
|
>`)}</lintje-badge
|
|
179
|
-
>` :
|
|
179
|
+
>` : c}
|
|
180
180
|
</button>
|
|
181
|
-
${t ? this.open ?
|
|
181
|
+
${t ? this.open ? d`<div
|
|
182
182
|
id=${this.#a}
|
|
183
183
|
class="lintje-notifications__sheet"
|
|
184
184
|
role="dialog"
|
|
@@ -187,7 +187,7 @@ var S = class extends m {
|
|
|
187
187
|
tabindex="-1"
|
|
188
188
|
>
|
|
189
189
|
${this.renderPanel(!0)}
|
|
190
|
-
</div>` :
|
|
190
|
+
</div>` : c : d`<lintje-popover
|
|
191
191
|
id=${this.#a}
|
|
192
192
|
panel-role="dialog"
|
|
193
193
|
label="Meldingen"
|
|
@@ -199,6 +199,6 @@ var S = class extends m {
|
|
|
199
199
|
<span class="visually-hidden" role="status">${this.news}</span>`;
|
|
200
200
|
}
|
|
201
201
|
};
|
|
202
|
-
|
|
202
|
+
o("lintje-notifications", S);
|
|
203
203
|
//#endregion
|
|
204
204
|
export { S as LintjeNotifications, b as bellLabel, y as countLabel, x as newsMessage };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { n as s, t as c } from "../chunks/input-
|
|
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-CbmWxUig.js";
|
|
2
|
+
import { n as s, t as c } from "../chunks/input-CRW_exv_.js";
|
|
3
3
|
//#region src/components/inputs/number-input/number-input.css?inline
|
|
4
4
|
var l = "/* The number field with its stepper. */\n\n/* --- Number field --------------------------------------------------------- */\n.lintje-number-input {\n display: flex; align-items: stretch;\n height: var(--h-control);\n border: 1px solid var(--color-border-field);\n background: var(--color-bg-surface);\n border-radius: var(--radius);\n}\n.lintje-number-input.is-error { border: 2px solid var(--color-error); }\n.lintje-number-input.is-readonly { border: 1px solid var(--color-border-strong); background: var(--color-bg-subtle); }\n.lintje-number-input.is-readonly .lintje-number-input__step {\n border-color: var(--color-border-strong);\n color: var(--color-text-disabled);\n cursor: default;\n}\n.lintje-number-input.is-readonly .lintje-number-input__step:hover { background: none; }\n.lintje-number-input.is-readonly .lintje-number-input__control { cursor: default; }\n.lintje-number-input.is-disabled { border: 1px solid var(--color-border-strong); background: var(--color-bg-subtle); }\n.lintje-number-input__step {\n width: var(--h-control); flex: none;\n display: flex; align-items: center; justify-content: center;\n color: var(--color-text-primary);\n transition: background var(--dur-hover) var(--ease-in-motion);\n}\n.lintje-number-input__step--down { border-right: 1px solid var(--color-border-field); }\n.lintje-number-input__step--up { border-left: 1px solid var(--color-border-field); }\n.lintje-number-input.is-disabled .lintje-number-input__step { border-color: var(--color-border-strong); }\n.lintje-number-input__step:hover:not(:disabled):not(.is-limit) { background: var(--color-bg-subtle); }\n/* At `min` or `max` the step keeps the focus (`aria-disabled`) and looks disabled. */\n.lintje-number-input__step:disabled,\n.lintje-number-input__step.is-limit { color: var(--color-text-disabled); cursor: not-allowed; }\n.lintje-number-input__control {\n flex: 1; min-width: 0;\n border: none; background: none;\n padding: 0 var(--space-2);\n text-align: center;\n font-size: 1rem;\n font-variant-numeric: tabular-nums;\n color: var(--color-text-primary);\n appearance: textfield;\n -moz-appearance: textfield;\n}\n/* The browser's own spinner would sit beside the design's. */\n.lintje-number-input__control::-webkit-outer-spin-button,\n.lintje-number-input__control::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }\n.lintje-number-input__control:disabled { color: var(--color-text-disabled); cursor: not-allowed; }\n.lintje-number-input--unit .lintje-number-input__control { text-align: left; padding-left: 14px; }\n.lintje-number-input__unit {\n display: flex; align-items: center; flex: none;\n padding-right: 14px;\n font-size: 1rem; color: var(--color-text-muted);\n}\n", u = "lintje-number-input-unit", d = class extends s {
|
|
5
5
|
constructor(...e) {
|
|
@@ -7,9 +7,9 @@ var l = "/* The number field with its stepper. */\n\n/* --- Number field -------
|
|
|
7
7
|
}
|
|
8
8
|
static {
|
|
9
9
|
this.styles = [
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
r,
|
|
11
|
+
t(c),
|
|
12
|
+
t(l)
|
|
13
13
|
];
|
|
14
14
|
}
|
|
15
15
|
static {
|
|
@@ -47,9 +47,9 @@ var l = "/* The number field with its stepper. */\n\n/* --- Number field -------
|
|
|
47
47
|
}
|
|
48
48
|
stepButton(e) {
|
|
49
49
|
let t = e === -1, r = !this.disabled && (t ? this.atMin : this.atMax);
|
|
50
|
-
return
|
|
50
|
+
return i`<button
|
|
51
51
|
type="button"
|
|
52
|
-
class=${
|
|
52
|
+
class=${a({
|
|
53
53
|
"lintje-number-input__step": !0,
|
|
54
54
|
[`lintje-number-input__step--${t ? "down" : "up"}`]: !0,
|
|
55
55
|
"is-limit": r
|
|
@@ -59,15 +59,15 @@ var l = "/* The number field with its stepper. */\n\n/* --- Number field -------
|
|
|
59
59
|
aria-disabled=${this.readonly && !this.disabled || r ? "true" : n}
|
|
60
60
|
@click=${() => this.nudge(e * this.step)}
|
|
61
61
|
>
|
|
62
|
-
${
|
|
62
|
+
${o(t ? "functioneel-minus" : "functioneel-plus", { size: 16 })}
|
|
63
63
|
</button>`;
|
|
64
64
|
}
|
|
65
65
|
render() {
|
|
66
66
|
let e = !!this.unit && !this.stepper, t = [e ? u : "", this.describedBy === n ? "" : this.describedBy].filter(Boolean).join(" ");
|
|
67
|
-
return
|
|
67
|
+
return i`<div class="lintje-field">
|
|
68
68
|
${this.renderLabel(this.controlId)}
|
|
69
69
|
<div
|
|
70
|
-
class=${
|
|
70
|
+
class=${a({
|
|
71
71
|
"lintje-number-input": !0,
|
|
72
72
|
"lintje-number-input--unit": e,
|
|
73
73
|
"is-error": !!this.error,
|
|
@@ -94,13 +94,13 @@ var l = "/* The number field with its stepper. */\n\n/* --- Number field -------
|
|
|
94
94
|
@change=${this.change}
|
|
95
95
|
@keydown=${(e) => this.submitOnEnter(e, () => this.change(e))}
|
|
96
96
|
/>
|
|
97
|
-
${e ?
|
|
97
|
+
${e ? i`<span id=${u} class="lintje-number-input__unit">${this.unit}</span>` : n}
|
|
98
98
|
${this.stepper ? this.stepButton(1) : n}
|
|
99
99
|
</div>
|
|
100
100
|
${this.renderFoot()}
|
|
101
101
|
</div>`;
|
|
102
102
|
}
|
|
103
103
|
};
|
|
104
|
-
|
|
104
|
+
e("lintje-number-input", d);
|
|
105
105
|
//#endregion
|
|
106
106
|
export { d as LintjeNumberInput };
|