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
|
@@ -84,6 +84,6 @@ De pagina is klaar als:
|
|
|
84
84
|
De handleidingen staan in `<naslag>/guides/`: `start.md` (een eerste pagina en wat een formulier
|
|
85
85
|
post), `loading.md` (laden en iconen), `events.md` (elk event en zijn
|
|
86
86
|
antwoord), `theming.md` (thema, modus, embleem), `dashboard.md` (filters en de URL),
|
|
87
|
-
`icons.md` (eigen iconen). Lees de handleiding van het onderwerp voordat je eraan begint. De
|
|
87
|
+
`icons.md` (eigen iconen), `page-contents.md` (een inhoudsopgave naast een lange tekst). Lees de handleiding van het onderwerp voordat je eraan begint. De
|
|
88
88
|
styleguide (`https://h11t-labs.github.io/lintje/examples/styleguide/`) toont elke tag in zijn
|
|
89
89
|
toestanden.
|
package/dist-elements/tables.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
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";
|
|
2
2
|
//#region src/components/tables/activity-log/activity-log.css?inline
|
|
3
|
-
var o = ":host { display: block; min-width: 0; }\n:host([hidden]) { display: none; }\n\n/* ------------------------------------------------------------------------ */\n\n.lintje-activity-log {\n font: var(--text-ui);\n color: var(--color-text-primary);\n}\n.lintje-activity-log__heading {\n margin: 0 0 var(--space-3);\n font: var(--text-tile-title);\n}\n.lintje-activity-log__list { list-style: none; margin: 0; padding: 0; }\n\n.lintje-activity-log__entry { display: flex; gap: var(--space-3); }\n.lintje-activity-log__rail {\n flex: 0 0 10px;\n display: flex; flex-direction: column; align-items: center;\n}\n/* The square sits on the sentence's first line; this stub joins it to the square above. */\n.lintje-activity-log__rail::before {\n content: '';\n flex: 0 0 6px;\n width: 2px;\n background: var(--color-border-default);\n}\n.lintje-activity-log__entry.is-newest .lintje-activity-log__rail::before { visibility: hidden; }\n.lintje-activity-log__mark {\n flex: none;\n width: 10px; height: 10px;\n background: var(--color-border-heavy);\n}\n.lintje-activity-log__entry.is-newest .lintje-activity-log__mark { background: var(--color-accent-line); }\n.lintje-activity-log__line {\n flex: 1 1 auto;\n width: 2px;\n background: var(--color-border-default);\n}\n.lintje-activity-log__entry.is-last .lintje-activity-log__line { visibility: hidden; }\n\n.lintje-activity-log__body { min-width: 0; padding-bottom: var(--space-4); }\n.lintje-activity-log__entry.is-last .lintje-activity-log__body { padding-bottom: 0; }\n.lintje-activity-log__what { margin: 0; }\n.lintje-activity-log__who { font-weight: 700; }\n.lintje-activity-log__when {\n display: block;\n font: var(--text-meta);\n color: var(--color-text-muted);\n}\n\n.lintje-activity-log__more { margin-top: var(--space-3); }\n\n/* Forced colours drop fills, so the rail is drawn in the text colour. */\n@media (forced-colors: active) {\n .lintje-activity-log__rail::before,\n .lintje-activity-log__mark,\n .lintje-activity-log__line { forced-color-adjust: none; background: CanvasText; }\n .lintje-activity-log__entry.is-newest .lintje-activity-log__mark { background: Highlight; }\n}\n", s = 10, c = class extends
|
|
3
|
+
var o = ":host { display: block; min-width: 0; }\n:host([hidden]) { display: none; }\n\n/* ------------------------------------------------------------------------ */\n\n.lintje-activity-log {\n font: var(--text-ui);\n color: var(--color-text-primary);\n}\n.lintje-activity-log__heading {\n margin: 0 0 var(--space-3);\n font: var(--text-tile-title);\n}\n.lintje-activity-log__list { list-style: none; margin: 0; padding: 0; }\n\n.lintje-activity-log__entry { display: flex; gap: var(--space-3); }\n.lintje-activity-log__rail {\n flex: 0 0 10px;\n display: flex; flex-direction: column; align-items: center;\n}\n/* The square sits on the sentence's first line; this stub joins it to the square above. */\n.lintje-activity-log__rail::before {\n content: '';\n flex: 0 0 6px;\n width: 2px;\n background: var(--color-border-default);\n}\n.lintje-activity-log__entry.is-newest .lintje-activity-log__rail::before { visibility: hidden; }\n.lintje-activity-log__mark {\n flex: none;\n width: 10px; height: 10px;\n background: var(--color-border-heavy);\n}\n.lintje-activity-log__entry.is-newest .lintje-activity-log__mark { background: var(--color-accent-line); }\n.lintje-activity-log__line {\n flex: 1 1 auto;\n width: 2px;\n background: var(--color-border-default);\n}\n.lintje-activity-log__entry.is-last .lintje-activity-log__line { visibility: hidden; }\n\n.lintje-activity-log__body { min-width: 0; padding-bottom: var(--space-4); }\n.lintje-activity-log__entry.is-last .lintje-activity-log__body { padding-bottom: 0; }\n.lintje-activity-log__what { margin: 0; }\n.lintje-activity-log__who { font-weight: 700; }\n.lintje-activity-log__when {\n display: block;\n font: var(--text-meta);\n color: var(--color-text-muted);\n}\n\n.lintje-activity-log__more { margin-top: var(--space-3); }\n\n/* Forced colours drop fills, so the rail is drawn in the text colour. */\n@media (forced-colors: active) {\n .lintje-activity-log__rail::before,\n .lintje-activity-log__mark,\n .lintje-activity-log__line { forced-color-adjust: none; background: CanvasText; }\n .lintje-activity-log__entry.is-newest .lintje-activity-log__mark { background: Highlight; }\n}\n", s = 10, c = class extends e {
|
|
4
4
|
constructor(...e) {
|
|
5
5
|
super(...e), this.entries = [], this.level = 3, this.limit = s;
|
|
6
6
|
}
|
|
@@ -22,19 +22,19 @@ var o = ":host { display: block; min-width: 0; }\n:host([hidden]) { display: non
|
|
|
22
22
|
t && (t.tabIndex = -1, t.focus());
|
|
23
23
|
}
|
|
24
24
|
renderHeading() {
|
|
25
|
-
if (!this.heading) return
|
|
26
|
-
let e = this.heading,
|
|
25
|
+
if (!this.heading) return r;
|
|
26
|
+
let e = this.heading, t = "lintje-activity-log-heading";
|
|
27
27
|
switch (this.level) {
|
|
28
|
-
case 2: return i`<h2 id=${
|
|
29
|
-
case 4: return i`<h4 id=${
|
|
30
|
-
case 5: return i`<h5 id=${
|
|
31
|
-
case 6: return i`<h6 id=${
|
|
32
|
-
default: return i`<h3 id=${
|
|
28
|
+
case 2: return i`<h2 id=${t} class="lintje-activity-log__heading">${e}</h2>`;
|
|
29
|
+
case 4: return i`<h4 id=${t} class="lintje-activity-log__heading">${e}</h4>`;
|
|
30
|
+
case 5: return i`<h5 id=${t} class="lintje-activity-log__heading">${e}</h5>`;
|
|
31
|
+
case 6: return i`<h6 id=${t} class="lintje-activity-log__heading">${e}</h6>`;
|
|
32
|
+
default: return i`<h3 id=${t} class="lintje-activity-log__heading">${e}</h3>`;
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
entry(e, t, n) {
|
|
36
36
|
return i`<li
|
|
37
|
-
class=${
|
|
37
|
+
class=${a({
|
|
38
38
|
"lintje-activity-log__entry": !0,
|
|
39
39
|
"is-newest": t === 0,
|
|
40
40
|
"is-last": n
|
|
@@ -53,24 +53,24 @@ var o = ":host { display: block; min-width: 0; }\n:host([hidden]) { display: non
|
|
|
53
53
|
</li>`;
|
|
54
54
|
}
|
|
55
55
|
render() {
|
|
56
|
-
let e = this.entries.slice(0, Math.max(0, this.limit)),
|
|
56
|
+
let e = this.entries.slice(0, Math.max(0, this.limit)), t = this.entries.length - e.length;
|
|
57
57
|
return i`<section class="lintje-activity-log">
|
|
58
58
|
${this.renderHeading()}
|
|
59
59
|
<ol
|
|
60
60
|
class="lintje-activity-log__list"
|
|
61
|
-
aria-labelledby=${this.heading ? "lintje-activity-log-heading" :
|
|
61
|
+
aria-labelledby=${this.heading ? "lintje-activity-log-heading" : r}
|
|
62
62
|
>
|
|
63
63
|
${e.map((t, n) => this.entry(t, n, n === e.length - 1))}
|
|
64
64
|
</ol>
|
|
65
|
-
${
|
|
65
|
+
${t > 0 ? i`<lintje-button
|
|
66
66
|
class="lintje-activity-log__more"
|
|
67
67
|
variant="link"
|
|
68
68
|
@click=${() => void this.showMore()}
|
|
69
69
|
>Toon eerdere</lintje-button
|
|
70
|
-
>` :
|
|
70
|
+
>` : r}
|
|
71
71
|
</section>`;
|
|
72
72
|
}
|
|
73
73
|
};
|
|
74
|
-
|
|
74
|
+
t("lintje-activity-log", c);
|
|
75
75
|
//#endregion
|
|
76
76
|
export { c as LintjeActivityLog };
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Jt as e, Yt as t, Zt as n, at as r, en as i, lt as a, nn as o, ot as s, ut as c } from "../chunks/base-DRGvkF-r.js";
|
|
2
2
|
//#region src/components/feedback/ai-label/ai-label.css?inline
|
|
3
|
-
var l = ":host { display: block; min-width: 0; }\n:host([hidden]) { display: none; }\n\n/* ------------------------------------------------------------------------ */\n\n.lintje-ai-label {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--space-2) var(--space-3);\n}\n/* Unlike other badges this one may wrap: a long name would run past a 390 px screen. */\n.lintje-ai-label__box {\n max-width: 100%;\n height: auto;\n min-height: 1.5rem;\n line-height: 1.25;\n white-space: normal;\n}\n.lintje-ai-label__badge { display: inline-flex; align-items: center; gap: var(--space-1); min-width: 0; }\n.lintje-ai-label__icon { flex: none; }\n.lintje-ai-label__hint { font: var(--text-meta); color: var(--color-text-muted); }\n", u = "Controleer de tekst voor je hem gebruikt", d = class extends
|
|
3
|
+
var l = ":host { display: block; min-width: 0; }\n:host([hidden]) { display: none; }\n\n/* ------------------------------------------------------------------------ */\n\n.lintje-ai-label {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n gap: var(--space-2) var(--space-3);\n}\n/* Unlike other badges this one may wrap: a long name would run past a 390 px screen. */\n.lintje-ai-label__box {\n max-width: 100%;\n height: auto;\n min-height: 1.5rem;\n line-height: 1.25;\n white-space: normal;\n}\n.lintje-ai-label__badge { display: inline-flex; align-items: center; gap: var(--space-1); min-width: 0; }\n.lintje-ai-label__icon { flex: none; }\n.lintje-ai-label__hint { font: var(--text-meta); color: var(--color-text-muted); }\n", u = "Controleer de tekst voor je hem gebruikt", d = class extends e {
|
|
4
4
|
static {
|
|
5
5
|
this.styles = [
|
|
6
|
-
e,
|
|
7
6
|
a,
|
|
8
|
-
r
|
|
7
|
+
r,
|
|
8
|
+
n(l)
|
|
9
9
|
];
|
|
10
10
|
}
|
|
11
11
|
static {
|
|
@@ -18,18 +18,18 @@ var l = ":host { display: block; min-width: 0; }\n:host([hidden]) { display: non
|
|
|
18
18
|
};
|
|
19
19
|
}
|
|
20
20
|
render() {
|
|
21
|
-
let e = !!this.checkedBy, t = this.hint ?? (e ? "" : u),
|
|
22
|
-
>${
|
|
21
|
+
let e = !!this.checkedBy, t = this.hint ?? (e ? "" : u), n = o`<span class="lintje-ai-label__badge"
|
|
22
|
+
>${c(e ? "functioneel-vinkje" : "gereedschap-half-tandwiel-half-brein", {
|
|
23
23
|
size: 14,
|
|
24
24
|
className: "lintje-ai-label__icon"
|
|
25
25
|
})}<span>${e ? `Gecontroleerd door ${this.checkedBy}` : "Gemaakt door AI"}</span></span
|
|
26
26
|
>`;
|
|
27
|
-
return
|
|
28
|
-
${
|
|
29
|
-
value:
|
|
27
|
+
return o`<span class="lintje-ai-label">
|
|
28
|
+
${s({
|
|
29
|
+
value: n,
|
|
30
30
|
tone: "neutral",
|
|
31
31
|
className: "lintje-ai-label__box"
|
|
32
|
-
})}${t ?
|
|
32
|
+
})}${t ? o`<span class="lintje-ai-label__hint">${t}</span>` : i}
|
|
33
33
|
</span>`;
|
|
34
34
|
}
|
|
35
35
|
};
|
|
@@ -1,40 +1,21 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { r as d } from "../chunks/focus-trap-
|
|
1
|
+
import { F as e, M as t, N as n, P as r, Q as i, Yt as a, Z as o, Zt as s, en as c, lt as l, nn as u } from "../chunks/base-DRGvkF-r.js";
|
|
2
|
+
import { r as d } from "../chunks/focus-trap-Dv8zu64A.js";
|
|
3
3
|
//#region src/components/shared/view-tile.css?inline
|
|
4
|
-
var f = "/*\n * A view element around a tile: the tile fills the host, so the footnote\n * (`margin-top: auto`) reaches the bottom of the grid cell.\n * `display: block` because a standalone custom element is inline.\n */\n:host {\n display: block;\n min-width: 0;\n}\n:host([hidden]) {\n display: none;\n}\n/* `min-height: inherit`: a held host has a min-height and no height, so `100%` resolves to auto. */\nlintje-tile {\n height: 100%;\n min-height: inherit;\n}\n", p = {
|
|
5
|
-
warning: "functioneel-waarschuwing",
|
|
6
|
-
outage: "functioneel-foutmelding",
|
|
7
|
-
info: "functioneel-info",
|
|
8
|
-
ok: "functioneel-cirkel-vinkje"
|
|
9
|
-
}, m = {
|
|
10
|
-
warning: "status",
|
|
11
|
-
outage: "alert",
|
|
12
|
-
info: "status",
|
|
13
|
-
ok: "status"
|
|
14
|
-
}, h = {
|
|
15
|
-
warning: "Waarschuwing",
|
|
16
|
-
outage: "Storing",
|
|
17
|
-
info: "Informatie",
|
|
18
|
-
ok: "Gelukt"
|
|
19
|
-
}, g = (e) => `lintje-announcement-dismissed:${e}`, _ = class extends a {
|
|
4
|
+
var f = "/*\n * A view element around a tile: the tile fills the host, so the footnote\n * (`margin-top: auto`) reaches the bottom of the grid cell.\n * `display: block` because a standalone custom element is inline.\n */\n:host {\n display: block;\n min-width: 0;\n}\n:host([hidden]) {\n display: none;\n}\n/* The grid cell moves to the next sheet whole; a tile split between its title and its drawing\n reads as two. */\n@media print {\n :host { break-inside: avoid; }\n}\n/* `min-height: inherit`: a held host has a min-height and no height, so `100%` resolves to auto. */\nlintje-tile {\n height: 100%;\n min-height: inherit;\n}\n", p = (e) => `lintje-announcement-dismissed:${e}`, m = class extends r {
|
|
20
5
|
constructor(...e) {
|
|
21
|
-
super(...e), this.
|
|
6
|
+
super(...e), this.dismissed = null, this.filled = null, this.fillFrame = 0;
|
|
22
7
|
}
|
|
23
8
|
static {
|
|
24
9
|
this.styles = [
|
|
25
|
-
e,
|
|
26
10
|
l,
|
|
27
|
-
|
|
28
|
-
|
|
11
|
+
e,
|
|
12
|
+
s(f),
|
|
13
|
+
t
|
|
29
14
|
];
|
|
30
15
|
}
|
|
31
16
|
static {
|
|
32
17
|
this.properties = {
|
|
33
18
|
data: { attribute: !1 },
|
|
34
|
-
compact: {
|
|
35
|
-
type: Boolean,
|
|
36
|
-
reflect: !0
|
|
37
|
-
},
|
|
38
19
|
dismissed: { state: !0 },
|
|
39
20
|
filled: { state: !0 }
|
|
40
21
|
};
|
|
@@ -56,7 +37,7 @@ var f = "/*\n * A view element around a tile: the tile fills the host, so the fo
|
|
|
56
37
|
if (this.dismissed === this.identity) return !0;
|
|
57
38
|
if (!e.announcementId) return !1;
|
|
58
39
|
try {
|
|
59
|
-
return localStorage.getItem(
|
|
40
|
+
return localStorage.getItem(p(e.announcementId)) === "1";
|
|
60
41
|
} catch {
|
|
61
42
|
return !1;
|
|
62
43
|
}
|
|
@@ -69,15 +50,15 @@ var f = "/*\n * A view element around a tile: the tile fills the host, so the fo
|
|
|
69
50
|
return !1;
|
|
70
51
|
}
|
|
71
52
|
neighbour() {
|
|
72
|
-
let e = d(document.body), t = e.indexOf(
|
|
53
|
+
let e = d(document.body), t = e.indexOf(o());
|
|
73
54
|
if (t === -1) return null;
|
|
74
55
|
let n = (e) => !this.holds(e);
|
|
75
56
|
return e.slice(t + 1).find(n) ?? e.slice(0, t).reverse().find(n) ?? null;
|
|
76
57
|
}
|
|
77
58
|
async close() {
|
|
78
|
-
let e =
|
|
59
|
+
let e = i(this) ? this.neighbour() : null, t = this.data?.announcementId;
|
|
79
60
|
if (t) try {
|
|
80
|
-
localStorage.setItem(
|
|
61
|
+
localStorage.setItem(p(t), "1");
|
|
81
62
|
} catch {}
|
|
82
63
|
this.dismissed = this.identity, e && (await this.updateComplete, e.focus());
|
|
83
64
|
}
|
|
@@ -91,56 +72,35 @@ var f = "/*\n * A view element around a tile: the tile fills the host, so the fo
|
|
|
91
72
|
}
|
|
92
73
|
render() {
|
|
93
74
|
let e = this.data;
|
|
94
|
-
if (!e || this.isDismissed) return
|
|
95
|
-
let t = this.block(e),
|
|
96
|
-
return
|
|
97
|
-
id=${this.id ? `${this.id}-tile` :
|
|
98
|
-
span=${
|
|
99
|
-
heading=${
|
|
100
|
-
icon=${
|
|
101
|
-
subtitle=${
|
|
102
|
-
intro=${
|
|
103
|
-
footnote=${
|
|
75
|
+
if (!e || this.isDismissed) return c;
|
|
76
|
+
let t = this.block(e), n = e.tile;
|
|
77
|
+
return n ? u`<lintje-tile
|
|
78
|
+
id=${this.id ? `${this.id}-tile` : c}
|
|
79
|
+
span=${n.span ?? c}
|
|
80
|
+
heading=${n.title ?? c}
|
|
81
|
+
icon=${n.icon ?? c}
|
|
82
|
+
subtitle=${n.subtitle ?? c}
|
|
83
|
+
intro=${n.intro ?? c}
|
|
84
|
+
footnote=${n.footnote ?? c}
|
|
104
85
|
>${t}</lintje-tile
|
|
105
86
|
>` : t;
|
|
106
87
|
}
|
|
107
88
|
block(e) {
|
|
108
|
-
let t = e.kind ?? "warning", r = !!e.dismissible && t !== "outage", i = e.live === !0
|
|
109
|
-
return
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
<div class="lintje-announcement__body">
|
|
122
|
-
<div class="lintje-announcement__content">
|
|
123
|
-
${e.title ? u`<p class="lintje-announcement__title">${i}${e.title}</p>` : n}
|
|
124
|
-
${e.text ? u`<p class="lintje-announcement__text">${e.title ? n : i}${e.text}</p>` : n}
|
|
125
|
-
${e.meta || e.link ? u`<p class="lintje-announcement__meta">
|
|
126
|
-
${e.meta ?? n}${e.meta && e.link ? " · " : n}${e.link ? u`<a class="lintje-announcement__link" href=${e.link.href}
|
|
127
|
-
>${e.link.label}</a
|
|
128
|
-
>` : n}
|
|
129
|
-
</p>` : n}
|
|
130
|
-
</div>
|
|
131
|
-
<slot name="action" class="lintje-announcement__action"></slot>
|
|
132
|
-
</div>
|
|
133
|
-
<slot name="media" class="lintje-announcement__media"></slot>
|
|
134
|
-
${r ? u`<button
|
|
135
|
-
type="button"
|
|
136
|
-
class="lintje-announcement__close"
|
|
137
|
-
aria-label="Mededeling sluiten"
|
|
138
|
-
@click=${() => void this.close()}
|
|
139
|
-
>
|
|
140
|
-
${c("functioneel-kruis", { size: 16 })}
|
|
141
|
-
</button>` : n}`;
|
|
89
|
+
let t = e.kind ?? "warning", r = !!e.dismissible && t !== "outage", i = e.live === !0;
|
|
90
|
+
return n({
|
|
91
|
+
kind: t,
|
|
92
|
+
title: e.title,
|
|
93
|
+
text: e.text,
|
|
94
|
+
meta: e.meta,
|
|
95
|
+
link: e.link,
|
|
96
|
+
live: i,
|
|
97
|
+
filled: this.filled === this.identity,
|
|
98
|
+
action: u`<slot name="action" class="lintje-announcement__action"></slot>`,
|
|
99
|
+
media: u`<slot name="media" class="lintje-announcement__media"></slot>`,
|
|
100
|
+
onClose: r ? () => void this.close() : void 0
|
|
101
|
+
});
|
|
142
102
|
}
|
|
143
103
|
};
|
|
144
|
-
|
|
104
|
+
a("lintje-announcement", m);
|
|
145
105
|
//#endregion
|
|
146
|
-
export {
|
|
106
|
+
export { m as LintjeAnnouncement, f as t };
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { t as p } from "../chunks/focus-trap-
|
|
1
|
+
import { Gt as e, H as t, Ht as n, Jt as r, Kt as i, Yt as a, Zt as o, en as s, jt as c, lt as l, nn as u, st as d, ut as f } from "../chunks/base-DRGvkF-r.js";
|
|
2
|
+
import { t as p } from "../chunks/focus-trap-Dv8zu64A.js";
|
|
3
3
|
import { t as m } from "../chunks/dialog-close-u75fVEw4.js";
|
|
4
4
|
import { t as h } from "../chunks/key-CuuOw1KE.js";
|
|
5
5
|
import { t as g } from "../chunks/debounce-JXnLMCcF.js";
|
|
6
6
|
//#region src/components/frame/app-search/app-search.css?inline
|
|
7
|
-
var _ = ":host { display: contents; }\n\n/* ------------------------------------------------------------------------ */\n\n.lintje-app-search__scrim {\n position: fixed;\n z-index: 80;\n inset: 0;\n display: flex;\n align-items: flex-start;\n justify-content: center;\n padding: calc(var(--space-10) * 2) var(--space-6) var(--space-6);\n background: var(--color-overlay-page);\n animation: lintje-fade-in var(--dur-scrim) var(--ease-in-motion);\n}\n\n.lintje-app-search {\n display: flex;\n flex-direction: column;\n width: min(560px, 100%);\n max-height: 100%;\n background: var(--color-bg-surface);\n color: var(--color-text-primary);\n border: 1px solid var(--color-border-strong);\n box-shadow: var(--shadow-popover);\n font: var(--text-ui);\n animation: lintje-rise var(--dur-modal) var(--ease-in-motion);\n}\n/* The window takes focus only when the trap pulls stray focus back; the field draws the ring. */\n.lintje-app-search:focus { outline: none; }\n\n.lintje-app-search__field {\n position: relative;\n display: flex;\n align-items: center;\n flex: none;\n padding: var(--space-3);\n background: var(--color-bg-filter);\n border-bottom: 1px solid var(--color-border-default);\n}\n.lintje-app-search__icon {\n position: absolute;\n left: calc(var(--space-3) * 2);\n color: var(--color-text-muted);\n pointer-events: none;\n}\n/* A field like every other, so its focus ring has room inside the band. */\n.lintje-app-search__input {\n flex: 1;\n min-width: 0;\n height: var(--h-control);\n /* Clears the glyph. */\n padding: 0 var(--space-3) 0 calc(var(--space-3) + 20px + var(--space-3));\n border: 1px solid var(--color-border-field);\n background: var(--color-bg-surface);\n font-size: 1rem;\n}\n.lintje-app-search__input::-webkit-search-cancel-button { display: none; }\n\n.lintje-app-search__results {\n flex: 1 1 auto;\n min-height: 0;\n overflow-y: auto;\n padding: var(--space-3) 0 var(--space-2);\n}\n\n.lintje-app-search__heading {\n padding: var(--space-3) var(--space-4) var(--space-2);\n font-size: var(--label-size);\n font-weight: var(--label-weight);\n letter-spacing: var(--label-tracking);\n text-transform: uppercase;\n color: var(--color-text-muted);\n}\n.lintje-app-search__group:first-child .lintje-app-search__heading { padding-top: 0; }\n\n.lintje-app-search__option {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--space-4);\n min-height: var(--h-control);\n padding: 0 var(--space-4);\n color: var(--color-text-primary);\n text-decoration: none;\n cursor: pointer;\n transition: background var(--dur-hover) var(--ease-in-motion);\n}\n.lintje-app-search__option + .lintje-app-search__option { border-top: 1px solid var(--color-border-default); }\n.lintje-app-search__option:hover { background: var(--color-bg-subtle); }\n/* The chosen row has the virtual focus (`aria-activedescendant`), so it draws the focus ring,\n inside; the fill alone is too faint to find. */\n.lintje-app-search__option.is-active {\n background: var(--color-bg-selected);\n outline: var(--focus-width) solid var(--color-focus);\n outline-offset: calc(var(--focus-width) * -1);\n}\n.lintje-app-search__label { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }\n.lintje-app-search__match { font-weight: 700; }\n.lintje-app-search__meta { flex: none; color: var(--color-text-muted); }\n\n.lintje-app-search__busy { display: flex; align-items: center; justify-content: center; padding: var(--space-4); color: var(--color-text-muted); }\n.lintje-app-search__empty { margin: 0; padding: var(--space-4); text-align: center; color: var(--color-text-muted); }\n\n.lintje-app-search__keys {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n flex: none;\n gap: var(--space-1) var(--space-6);\n margin: 0;\n padding: var(--space-3) var(--space-4);\n background: var(--color-bg-filter);\n border-top: 1px solid var(--color-border-default);\n font-size: 0.875rem;\n color: var(--color-text-muted);\n}\n.lintje-app-search__hint { display: inline-flex; align-items: center; gap: var(--space-1); }\n\n.lintje-app-search__close:hover { color: var(--color-text-primary); }\n\n/* Phone: a sheet from below, as \"Weergave\", \"Delen\" and the filters open, with their head. Its\n height stays as the results change, and the field stands high, above the keyboard. */\n.lintje-app-search__header {\n display: flex; align-items: center; gap: var(--space-2);\n flex: none;\n padding: var(--space-4);\n border-bottom: 1px solid var(--color-border-default);\n}\n.lintje-app-search__title { flex: 1; margin: 0; font: var(--text-h2); }\n\n@media (max-width: 767px) {\n .lintje-app-search__scrim { align-items: flex-end; padding: 0; }\n .lintje-app-search {\n width: 100%;\n height: 88vh;\n border: 0;\n border-top: 1px solid var(--color-border-strong);\n box-shadow: none;\n animation: lintje-sheet-in var(--dur-sheet) var(--ease-in-motion);\n }\n .lintje-app-search__input { height: var(--h-touch); }\n .lintje-app-search__option { min-height: var(--h-touch); }\n}\n\n/* Forced colours drop the fill; the ring takes Highlight. */\n@media (forced-colors: active) {\n .lintje-app-search__option.is-active { outline: 2px solid Highlight; outline-offset: -2px; }\n}\n", v = 200, y = 0;
|
|
7
|
+
var _ = ":host { display: contents; }\n\n/* ------------------------------------------------------------------------ */\n\n.lintje-app-search__scrim {\n position: fixed;\n z-index: 80;\n inset: 0;\n display: flex;\n align-items: flex-start;\n justify-content: center;\n padding: calc(var(--space-10) * 2) var(--space-6) var(--space-6);\n background: var(--color-overlay-page);\n animation: lintje-fade-in var(--dur-scrim) var(--ease-in-motion);\n}\n\n.lintje-app-search {\n display: flex;\n flex-direction: column;\n width: min(560px, 100%);\n max-height: 100%;\n background: var(--color-bg-surface);\n color: var(--color-text-primary);\n border: 1px solid var(--color-border-strong);\n box-shadow: var(--shadow-popover);\n font: var(--text-ui);\n animation: lintje-rise var(--dur-modal) var(--ease-in-motion);\n}\n/* The window takes focus only when the trap pulls stray focus back; the field draws the ring. */\n.lintje-app-search:focus { outline: none; }\n\n.lintje-app-search__field {\n position: relative;\n display: flex;\n align-items: center;\n flex: none;\n padding: var(--space-3);\n background: var(--color-bg-filter);\n border-bottom: 1px solid var(--color-border-default);\n}\n.lintje-app-search__icon {\n position: absolute;\n left: calc(var(--space-3) * 2);\n color: var(--color-text-muted);\n pointer-events: none;\n}\n/* A field like every other, so its focus ring has room inside the band. */\n.lintje-app-search__input {\n flex: 1;\n min-width: 0;\n height: var(--h-control);\n /* Clears the glyph. */\n padding: 0 var(--space-3) 0 calc(var(--space-3) + 20px + var(--space-3));\n border: 1px solid var(--color-border-field);\n background: var(--color-bg-surface);\n font-size: 1rem;\n}\n.lintje-app-search__input::-webkit-search-cancel-button { display: none; }\n\n.lintje-app-search__results {\n flex: 1 1 auto;\n min-height: 0;\n overflow-y: auto;\n padding: var(--space-3) 0 var(--space-2);\n}\n\n.lintje-app-search__heading {\n padding: var(--space-3) var(--space-4) var(--space-2);\n font-size: var(--label-size);\n font-weight: var(--label-weight);\n letter-spacing: var(--label-tracking);\n text-transform: uppercase;\n color: var(--color-text-muted);\n}\n.lintje-app-search__group:first-child .lintje-app-search__heading { padding-top: 0; }\n\n.lintje-app-search__option {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--space-4);\n min-height: var(--h-control);\n padding: 0 var(--space-4);\n color: var(--color-text-primary);\n text-decoration: none;\n cursor: pointer;\n transition: background var(--dur-hover) var(--ease-in-motion);\n}\n.lintje-app-search__option + .lintje-app-search__option { border-top: 1px solid var(--color-border-default); }\n.lintje-app-search__option:hover { background: var(--color-bg-subtle); }\n/* The chosen row has the virtual focus (`aria-activedescendant`), so it draws the focus ring,\n inside; the fill alone is too faint to find. */\n.lintje-app-search__option.is-active {\n background: var(--color-bg-selected);\n outline: var(--focus-width) solid var(--color-focus);\n outline-offset: calc(var(--focus-width) * -1);\n}\n.lintje-app-search__label { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }\n.lintje-app-search__match { font-weight: 700; }\n.lintje-app-search__meta { flex: none; color: var(--color-text-muted); }\n\n.lintje-app-search__busy { display: flex; align-items: center; justify-content: center; padding: var(--space-4); color: var(--color-text-muted); }\n.lintje-app-search__empty { margin: 0; padding: var(--space-4); text-align: center; color: var(--color-text-muted); }\n\n.lintje-app-search__keys {\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n flex: none;\n gap: var(--space-1) var(--space-6);\n margin: 0;\n padding: var(--space-3) var(--space-4);\n background: var(--color-bg-filter);\n border-top: 1px solid var(--color-border-default);\n font-size: 0.875rem;\n color: var(--color-text-muted);\n}\n.lintje-app-search__hint { display: inline-flex; align-items: center; gap: var(--space-1); }\n\n.lintje-app-search__close:hover { color: var(--color-text-primary); }\n\n/* Phone: a sheet from below, as \"Weergave\", \"Delen\" and the filters open, with their head. Its\n height stays as the results change, and the field stands high, above the keyboard. */\n.lintje-app-search__header {\n display: flex; align-items: center; gap: var(--space-2);\n flex: none;\n padding: var(--space-4);\n border-bottom: 1px solid var(--color-border-default);\n}\n.lintje-app-search__title { flex: 1; margin: 0; font: var(--text-h2); }\n\n@media screen and (max-width: 767px) {\n .lintje-app-search__scrim { align-items: flex-end; padding: 0; }\n .lintje-app-search {\n width: 100%;\n height: 88vh;\n border: 0;\n border-top: 1px solid var(--color-border-strong);\n box-shadow: none;\n animation: lintje-sheet-in var(--dur-sheet) var(--ease-in-motion);\n }\n .lintje-app-search__input { height: var(--h-touch); }\n .lintje-app-search__option { min-height: var(--h-touch); }\n}\n\n/* Forced colours drop the fill; the ring takes Highlight. */\n@media (forced-colors: active) {\n .lintje-app-search__option.is-active { outline: 2px solid Highlight; outline-offset: -2px; }\n}\n", v = 200, y = 0;
|
|
8
8
|
function b(e, t) {
|
|
9
9
|
let n = t.trim();
|
|
10
10
|
if (!n) return null;
|
|
@@ -18,18 +18,18 @@ function b(e, t) {
|
|
|
18
18
|
function x(e, t, n) {
|
|
19
19
|
return n ? "" : e === 0 ? t.trim() ? `Geen resultaten voor “${t.trim()}”` : "" : e === 1 ? "1 resultaat" : `${e} resultaten`;
|
|
20
20
|
}
|
|
21
|
-
var S = class extends
|
|
22
|
-
constructor(...
|
|
23
|
-
super(...
|
|
21
|
+
var S = class extends r {
|
|
22
|
+
constructor(...t) {
|
|
23
|
+
super(...t), this.open = !1, this.label = "Zoeken", this.query = "", this.loading = !1, this.groups = [], this.active = -1, this.#e = new i(this, e), this.#t = new g(this, 200), this.#n = `lintje-app-search-${++y}`, this.#r = null, this.#i = null, this.#a = new p(), this.#o = (e) => {
|
|
24
24
|
e.key === "Escape" && this.#a.isTopmost() && this.close("escape");
|
|
25
25
|
};
|
|
26
26
|
}
|
|
27
27
|
static {
|
|
28
28
|
this.styles = [
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
29
|
+
l,
|
|
30
|
+
o(m),
|
|
31
|
+
o(h),
|
|
32
|
+
o(_)
|
|
33
33
|
];
|
|
34
34
|
}
|
|
35
35
|
static {
|
|
@@ -86,7 +86,7 @@ var S = class extends f {
|
|
|
86
86
|
super.updated(e), this.open && !this.#i ? this.#s() : !this.open && this.#i && this.#c(), e.has("active") && this.active >= 0 && this.renderRoot.querySelector(`#${this.optionId(this.active)}`)?.scrollIntoView?.({ block: "nearest" });
|
|
87
87
|
}
|
|
88
88
|
#s() {
|
|
89
|
-
this.#i =
|
|
89
|
+
this.#i = n(), document.addEventListener("keydown", this.#o);
|
|
90
90
|
let e = this.renderRoot.querySelector(".lintje-app-search");
|
|
91
91
|
e && this.#a.activate(e, { focus: this.input ?? !0 });
|
|
92
92
|
}
|
|
@@ -112,59 +112,59 @@ var S = class extends f {
|
|
|
112
112
|
}
|
|
113
113
|
}
|
|
114
114
|
}
|
|
115
|
-
choose(e,
|
|
115
|
+
choose(e, n) {
|
|
116
116
|
if (e.href) {
|
|
117
|
-
if (
|
|
118
|
-
this.followLink(e.href,
|
|
117
|
+
if (n && !t(n)) return;
|
|
118
|
+
this.followLink(e.href, n);
|
|
119
119
|
} else this.emit("lintje-action", e.id);
|
|
120
120
|
this.close("choice");
|
|
121
121
|
}
|
|
122
122
|
renderLabel(e) {
|
|
123
123
|
let t = b(e, this.query);
|
|
124
|
-
return t ?
|
|
124
|
+
return t ? u`${t[0]}<strong class="lintje-app-search__match">${t[1]}</strong>${t[2]}` : u`${e}`;
|
|
125
125
|
}
|
|
126
126
|
renderOption(e, t) {
|
|
127
|
-
let
|
|
127
|
+
let n = t === this.active, r = d({
|
|
128
128
|
"lintje-app-search__option": !0,
|
|
129
|
-
"is-active":
|
|
130
|
-
}),
|
|
131
|
-
return e.href ?
|
|
129
|
+
"is-active": n
|
|
130
|
+
}), i = u`<span class="lintje-app-search__label">${this.renderLabel(e.label)}</span>${e.meta ? u`<span class="lintje-app-search__meta">${e.meta}</span>` : s}`, a = (t) => this.choose(e, t);
|
|
131
|
+
return e.href ? u`<a
|
|
132
132
|
id=${this.optionId(t)}
|
|
133
|
-
class=${
|
|
133
|
+
class=${r}
|
|
134
134
|
role="option"
|
|
135
|
-
aria-selected=${String(
|
|
135
|
+
aria-selected=${String(n)}
|
|
136
136
|
tabindex="-1"
|
|
137
137
|
href=${e.href}
|
|
138
|
-
@click=${
|
|
139
|
-
>${
|
|
140
|
-
>` :
|
|
138
|
+
@click=${a}
|
|
139
|
+
>${i}</a
|
|
140
|
+
>` : u`<div
|
|
141
141
|
id=${this.optionId(t)}
|
|
142
|
-
class=${
|
|
142
|
+
class=${r}
|
|
143
143
|
role="option"
|
|
144
|
-
aria-selected=${String(
|
|
145
|
-
@click=${
|
|
144
|
+
aria-selected=${String(n)}
|
|
145
|
+
@click=${a}
|
|
146
146
|
>
|
|
147
|
-
${
|
|
147
|
+
${i}
|
|
148
148
|
</div>`;
|
|
149
149
|
}
|
|
150
150
|
renderResults() {
|
|
151
|
-
let e = 0, t = `${this.#n}-list`,
|
|
152
|
-
return
|
|
153
|
-
${this.loading ?
|
|
151
|
+
let e = 0, t = `${this.#n}-list`, n = this.results.length, r = this.query.trim();
|
|
152
|
+
return u`
|
|
153
|
+
${this.loading ? u`<div class="lintje-app-search__busy">
|
|
154
154
|
<lintje-spinner label="Zoeken"></lintje-spinner>
|
|
155
|
-
</div>` : !
|
|
155
|
+
</div>` : !n && r ? u`<p class="lintje-app-search__empty">Geen resultaten voor “${r}”</p>` : s}
|
|
156
156
|
<div
|
|
157
157
|
id=${t}
|
|
158
158
|
class="lintje-app-search__list"
|
|
159
159
|
role="listbox"
|
|
160
160
|
aria-label="Resultaten"
|
|
161
|
-
?hidden=${this.loading || !
|
|
161
|
+
?hidden=${this.loading || !n}
|
|
162
162
|
>
|
|
163
|
-
${this.groups.map((t,
|
|
164
|
-
if (!t.items.length) return
|
|
165
|
-
let
|
|
166
|
-
return
|
|
167
|
-
<div id=${
|
|
163
|
+
${this.groups.map((t, n) => {
|
|
164
|
+
if (!t.items.length) return s;
|
|
165
|
+
let r = `${this.#n}-group-${n}`;
|
|
166
|
+
return u`<div class="lintje-app-search__group" role="group" aria-labelledby=${r}>
|
|
167
|
+
<div id=${r} class="lintje-app-search__heading">${t.label}</div>
|
|
168
168
|
${t.items.map((t) => this.renderOption(t, e++))}
|
|
169
169
|
</div>`;
|
|
170
170
|
})}
|
|
@@ -172,9 +172,9 @@ var S = class extends f {
|
|
|
172
172
|
`;
|
|
173
173
|
}
|
|
174
174
|
render() {
|
|
175
|
-
if (!this.open) return
|
|
176
|
-
let e = `${this.#n}-list`, t = this.results.length,
|
|
177
|
-
return
|
|
175
|
+
if (!this.open) return s;
|
|
176
|
+
let e = `${this.#n}-list`, t = this.results.length, n = !this.loading && t > 0;
|
|
177
|
+
return u`<div class="lintje-app-search__scrim" @click=${() => this.close("scrim")}>
|
|
178
178
|
<div
|
|
179
179
|
class="lintje-app-search"
|
|
180
180
|
role="dialog"
|
|
@@ -183,7 +183,7 @@ var S = class extends f {
|
|
|
183
183
|
tabindex="-1"
|
|
184
184
|
@click=${(e) => e.stopPropagation()}
|
|
185
185
|
>
|
|
186
|
-
${this.#e.matches ?
|
|
186
|
+
${this.#e.matches ? u`<div class="lintje-app-search__header">
|
|
187
187
|
<h2 class="lintje-app-search__title">Zoeken</h2>
|
|
188
188
|
<button
|
|
189
189
|
type="button"
|
|
@@ -191,11 +191,11 @@ var S = class extends f {
|
|
|
191
191
|
aria-label="Zoeken sluiten"
|
|
192
192
|
@click=${() => this.close("button")}
|
|
193
193
|
>
|
|
194
|
-
${
|
|
194
|
+
${f("functioneel-kruis", { size: 16 })}
|
|
195
195
|
</button>
|
|
196
|
-
</div>` :
|
|
196
|
+
</div>` : s}
|
|
197
197
|
<div class="lintje-app-search__field">
|
|
198
|
-
${
|
|
198
|
+
${f("functioneel-zoek", {
|
|
199
199
|
size: 20,
|
|
200
200
|
className: "lintje-app-search__icon"
|
|
201
201
|
})}
|
|
@@ -207,9 +207,9 @@ var S = class extends f {
|
|
|
207
207
|
spellcheck="false"
|
|
208
208
|
aria-label=${this.label}
|
|
209
209
|
aria-autocomplete="list"
|
|
210
|
-
aria-expanded=${String(
|
|
210
|
+
aria-expanded=${String(n)}
|
|
211
211
|
aria-controls=${e}
|
|
212
|
-
aria-activedescendant=${
|
|
212
|
+
aria-activedescendant=${n && this.active >= 0 ? this.optionId(this.active) : s}
|
|
213
213
|
.value=${this.query}
|
|
214
214
|
@input=${this.onInput}
|
|
215
215
|
@keydown=${this.onFieldKeydown}
|
|
@@ -225,7 +225,7 @@ var S = class extends f {
|
|
|
225
225
|
<p class="visually-hidden" aria-live="polite">
|
|
226
226
|
${x(t, this.query, this.loading)}
|
|
227
227
|
</p>
|
|
228
|
-
${this.#e.matches ?
|
|
228
|
+
${this.#e.matches ? s : u`<p class="lintje-app-search__keys">
|
|
229
229
|
<span class="lintje-app-search__hint"
|
|
230
230
|
><kbd class="lintje-key">↑</kbd><kbd class="lintje-key">↓</kbd> kiezen</span
|
|
231
231
|
>
|
|
@@ -236,6 +236,6 @@ var S = class extends f {
|
|
|
236
236
|
</div>`;
|
|
237
237
|
}
|
|
238
238
|
};
|
|
239
|
-
|
|
239
|
+
a("lintje-app-search", S);
|
|
240
240
|
//#endregion
|
|
241
241
|
export { S as LintjeAppSearch, v as SEARCH_DELAY, x as resultsMessage, b as splitMatch };
|