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,13 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { i as o, n as s, r as c, t as l } from "../chunks/disclosure-
|
|
3
|
-
import { t as u } from "../chunks/disclosure-
|
|
1
|
+
import { P as e, Yt as t, Zt as n, lt as r, nn as i, st as a } from "../chunks/base-CbmWxUig.js";
|
|
2
|
+
import { i as o, n as s, r as c, t as l } from "../chunks/disclosure-DLkXPUpV.js";
|
|
3
|
+
import { t as u } from "../chunks/disclosure-D39vAR5q.js";
|
|
4
4
|
//#region src/components/layout/expander/expander.ts
|
|
5
|
-
var d = class extends
|
|
5
|
+
var d = class extends e {
|
|
6
6
|
constructor(...e) {
|
|
7
7
|
super(...e), this.heading = "", this.open = !1, this.flat = !1, this.leading = !1, this.columns = !1, this.#e = o(), this.#t = new l(this);
|
|
8
8
|
}
|
|
9
9
|
static {
|
|
10
|
-
this.styles = [
|
|
10
|
+
this.styles = [r, n(u)];
|
|
11
11
|
}
|
|
12
12
|
static {
|
|
13
13
|
this.properties = {
|
|
@@ -38,8 +38,8 @@ var d = class extends r {
|
|
|
38
38
|
super.updated(e), this.#t.observe(this.open, this.renderRoot.querySelector(".lintje-disclosure__body"));
|
|
39
39
|
}
|
|
40
40
|
render() {
|
|
41
|
-
return
|
|
42
|
-
class=${
|
|
41
|
+
return i`<section
|
|
42
|
+
class=${a({
|
|
43
43
|
"lintje-disclosure": !0,
|
|
44
44
|
"lintje-expander": !0,
|
|
45
45
|
"lintje-expander--flat": this.flat,
|
|
@@ -62,7 +62,7 @@ var d = class extends r {
|
|
|
62
62
|
}
|
|
63
63
|
})}<slot name="actions" class="lintje-expander__actions"></slot>
|
|
64
64
|
</div>
|
|
65
|
-
${s(this.#e,
|
|
65
|
+
${s(this.#e, i`<slot></slot>`, "lintje-expander__content")}
|
|
66
66
|
</section>`;
|
|
67
67
|
}
|
|
68
68
|
};
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { i as c, n as l, r as u, t as d } from "../chunks/disclosure-
|
|
3
|
-
import { t as f } from "../chunks/disclosure-
|
|
1
|
+
import { F as e, P as t, Yt as n, Zt as r, en as i, lt as a, nn as o, st as s } from "../chunks/base-CbmWxUig.js";
|
|
2
|
+
import { i as c, n as l, r as u, t as d } from "../chunks/disclosure-DLkXPUpV.js";
|
|
3
|
+
import { t as f } from "../chunks/disclosure-D39vAR5q.js";
|
|
4
4
|
//#region src/components/charts/explainer/explainer.css?inline
|
|
5
|
-
var p = "/* The disclosure itself is `shared/disclosure.css`, adopted next to this sheet (rule 2). */\n:host {\n display: block;\n min-width: 0;\n}\n:host([hidden]) { display: none; }\n\n/* ------------------------------------------------------------------------ */\n\n.lintje-explainer {\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}\n.lintje-explainer__list {\n display: grid;\n grid-template-columns: minmax(0, max-content) minmax(0, 72ch);\n column-gap: var(--space-5);\n row-gap: var(--space-3);\n font: var(--text-body);\n}\n.lintje-explainer__term { grid-column: 1; font-weight: 700; color: var(--color-text-primary); }\n.lintje-explainer__description { grid-column: 2; margin: 0; color: var(--color-text-secondary); }\n\n@media (max-width: 767px) {\n .lintje-explainer__list { display: block; }\n .lintje-explainer__description { margin-top: 2px; }\n .lintje-explainer__description + .lintje-explainer__term { margin-top: var(--space-3); }\n}\n", m = class extends
|
|
5
|
+
var p = "/* The disclosure itself is `shared/disclosure.css`, adopted next to this sheet (rule 2). */\n:host {\n display: block;\n min-width: 0;\n}\n:host([hidden]) { display: none; }\n@media print { :host { break-inside: avoid; } }\n\n/* ------------------------------------------------------------------------ */\n\n.lintje-explainer {\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}\n.lintje-explainer__list {\n display: grid;\n grid-template-columns: minmax(0, max-content) minmax(0, 72ch);\n column-gap: var(--space-5);\n row-gap: var(--space-3);\n font: var(--text-body);\n}\n.lintje-explainer__term { grid-column: 1; font-weight: 700; color: var(--color-text-primary); }\n.lintje-explainer__description { grid-column: 2; margin: 0; color: var(--color-text-secondary); }\n\n@media screen and (max-width: 767px) {\n .lintje-explainer__list { display: block; }\n .lintje-explainer__description { margin-top: 2px; }\n .lintje-explainer__description + .lintje-explainer__term { margin-top: var(--space-3); }\n}\n", m = class extends t {
|
|
6
6
|
constructor(...e) {
|
|
7
7
|
super(...e), this.span = 12, this.open = !0, this.#e = null, this.#t = c(), this.#n = new d(this);
|
|
8
8
|
}
|
|
9
9
|
static {
|
|
10
10
|
this.styles = [
|
|
11
|
+
a,
|
|
11
12
|
e,
|
|
12
|
-
o,
|
|
13
13
|
r(f),
|
|
14
14
|
r(p)
|
|
15
15
|
];
|
|
@@ -36,8 +36,8 @@ var p = "/* The disclosure itself is `shared/disclosure.css`, adopted next to th
|
|
|
36
36
|
}
|
|
37
37
|
render() {
|
|
38
38
|
let e = this.data;
|
|
39
|
-
return e ?
|
|
40
|
-
class=${
|
|
39
|
+
return e ? o`<section
|
|
40
|
+
class=${s({
|
|
41
41
|
"lintje-disclosure": !0,
|
|
42
42
|
"lintje-explainer": !0,
|
|
43
43
|
"is-open": this.open,
|
|
@@ -52,13 +52,13 @@ var p = "/* The disclosure itself is `shared/disclosure.css`, adopted next to th
|
|
|
52
52
|
this.open = !this.open;
|
|
53
53
|
}
|
|
54
54
|
})}
|
|
55
|
-
${l(this.#t,
|
|
56
|
-
${e.items.map((e) =>
|
|
55
|
+
${l(this.#t, o`<dl class="lintje-explainer__list">
|
|
56
|
+
${e.items.map((e) => o`<dt class="lintje-explainer__term">${e.term}</dt>
|
|
57
57
|
<dd class="lintje-explainer__description">${e.description}</dd>`)}
|
|
58
58
|
</dl>`)}
|
|
59
|
-
</section>` :
|
|
59
|
+
</section>` : i;
|
|
60
60
|
}
|
|
61
61
|
};
|
|
62
|
-
|
|
62
|
+
n("lintje-explainer", m);
|
|
63
63
|
//#endregion
|
|
64
64
|
export { m as LintjeExplainer };
|
|
@@ -1,4 +1,4 @@
|
|
|
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-CbmWxUig.js";
|
|
2
2
|
//#region src/components/inputs/field/field.css?inline
|
|
3
3
|
var o = "/* `min-width: 0`, or a grid item overflows. */\n:host { display: block; min-width: 0; }\n:host([hidden]) { display: none; }\n:host([stacked]) { width: 100%; --h-control: var(--h-touch); }\n\n/* ------------------------------------------------------------------------ */\n\n.lintje-filter-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; }\n.lintje-filter-field__label {\n display: flex; align-items: center; gap: 6px;\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-filter-field__label.is-modified { color: var(--color-accent-text); }\n.lintje-filter-field__dot {\n width: 6px; height: 6px; border-radius: 50%;\n background: var(--color-attention);\n flex: none;\n}\n\n:host([stacked]) .lintje-filter-field { gap: var(--space-2); }\n\n/* Forced colours drop the label colour; the dot keeps its drawing in CanvasText. */\n@media (forced-colors: active) {\n .lintje-filter-field__dot { forced-color-adjust: none; background: CanvasText; }\n}\n";
|
|
4
4
|
//#endregion
|
|
@@ -11,7 +11,7 @@ function s(e) {
|
|
|
11
11
|
}
|
|
12
12
|
return [...e.children].some(s);
|
|
13
13
|
}
|
|
14
|
-
var c = class extends
|
|
14
|
+
var c = class extends e {
|
|
15
15
|
constructor(...e) {
|
|
16
16
|
super(...e), this.label = "", this.modified = !1, this.stacked = !1;
|
|
17
17
|
}
|
|
@@ -37,7 +37,7 @@ var c = class extends a {
|
|
|
37
37
|
render() {
|
|
38
38
|
return i`<div class="lintje-filter-field">
|
|
39
39
|
<label
|
|
40
|
-
class=${
|
|
40
|
+
class=${a({
|
|
41
41
|
"lintje-filter-field__label": !0,
|
|
42
42
|
"is-modified": this.modified
|
|
43
43
|
})}
|
|
@@ -45,12 +45,12 @@ var c = class extends a {
|
|
|
45
45
|
>
|
|
46
46
|
${this.label}
|
|
47
47
|
${this.modified ? i`<span class="lintje-filter-field__dot" aria-hidden="true"></span
|
|
48
|
-
><span class="visually-hidden">afwijkend van standaard</span>` :
|
|
48
|
+
><span class="visually-hidden">afwijkend van standaard</span>` : r}
|
|
49
49
|
</label>
|
|
50
50
|
<slot></slot>
|
|
51
51
|
</div>`;
|
|
52
52
|
}
|
|
53
53
|
};
|
|
54
|
-
|
|
54
|
+
t("lintje-field", c);
|
|
55
55
|
//#endregion
|
|
56
56
|
export { c as LintjeField };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { n as u } from "../chunks/focus-trap-
|
|
3
|
-
import { r as d, t as f } from "../chunks/input-
|
|
1
|
+
import { Gt as e, Kt as t, Q as n, Yt as r, Zt as i, en as a, lt as o, nn as s, st as c, ut as l } from "../chunks/base-CbmWxUig.js";
|
|
2
|
+
import { n as u } from "../chunks/focus-trap-BwOxE5BX.js";
|
|
3
|
+
import { r as d, t as f } from "../chunks/input-CRW_exv_.js";
|
|
4
4
|
//#region src/components/inputs/file-upload/file-upload.css?inline
|
|
5
|
-
var p = "/* The drop zone and the list of files under it. */\n:host { display: block; min-width: 0; }\n:host([hidden]) { display: none; }\n:host([fill]) { height: 100%; }\n:host([fill]) .lintje-field { height: 100%; }\n\n/* --- */\n\n/* The zone itself does not answer the pointer: only the button does. Its content stands centred,\n so a wide zone does not leave it huddled in one corner. */\n.lintje-file-upload {\n display: flex; flex-wrap: wrap; align-items: center; justify-content: center;\n gap: var(--space-2) var(--space-3);\n padding: var(--space-6) var(--space-4);\n border: 2px dashed var(--color-border-heavy);\n background: var(--color-bg-page);\n color: var(--color-text-primary);\n font: var(--text-ui);\n text-align: center;\n}\n.lintje-file-upload__icon { flex: none; }\n.lintje-file-upload--fill {\n flex: 1;\n flex-direction: column;\n justify-content: center;\n min-height: calc(4 * var(--h-control));\n text-align: center;\n}\n.lintje-file-upload--fill .lintje-file-upload__meta { flex-basis: auto; }\n.lintje-file-upload__meta {\n flex-basis: 100%;\n font: var(--text-meta);\n color: var(--color-text-muted);\n}\n\n.lintje-file-upload.is-dragging {\n border-style: solid;\n border-color: var(--color-accent-line);\n background: var(--color-bg-selected);\n}\n.lintje-file-upload.is-error { border-style: solid; border-color: var(--color-error); }\n.lintje-file-upload.is-disabled {\n background: var(--color-bg-subtle);\n color: var(--color-text-disabled);\n}\n.lintje-file-upload.is-disabled .lintje-file-upload__meta { color: var(--color-text-disabled); }\n\n/* --- The files ----------------------------------------------------------- */\n.lintje-file-upload__list { display: flex; flex-direction: column; gap: var(--space-3); }\n.lintje-file-upload__row { display: flex; flex-direction: column; gap: 6px; }\n.lintje-file-upload__row-head {\n display: flex; flex-wrap: wrap; align-items: center;\n gap: var(--space-2) var(--space-3);\n}\n.lintje-file-upload__row-icon { flex: none; }\n.lintje-file-upload__row.is-busy .lintje-file-upload__row-icon { color: var(--color-text-muted); }\n.lintje-file-upload__row.is-done .lintje-file-upload__row-icon { color: var(--color-success); }\n.lintje-file-upload__row.is-error .lintje-file-upload__row-icon { color: var(--color-error); }\n.lintje-file-upload__name {\n flex: 1 1 120px; min-width: 0;\n font: var(--text-ui);\n color: var(--color-text-primary);\n overflow-wrap: anywhere;\n}\n.lintje-file-upload__detail { color: var(--color-text-muted); }\n.lintje-file-upload__reason {\n display: block;\n font: var(--text-meta);\n font-weight: 700;\n color: var(--color-error-text);\n}\n\n/* Below 768 px nobody drags: the words go and the button takes the full width. */\n@media (max-width: 767px) {\n .lintje-file-upload__text { display: none; }\n .lintje-file-upload.is-dragging .lintje-file-upload__text { display: inline; }\n .lintje-file-upload__button { flex: 1 1 100%; --h-button: var(--h-touch); }\n}\n", m = new Intl.NumberFormat("nl-NL", { maximumFractionDigits: 1 });
|
|
5
|
+
var p = "/* The drop zone and the list of files under it. */\n:host { display: block; min-width: 0; }\n:host([hidden]) { display: none; }\n:host([fill]) { height: 100%; }\n:host([fill]) .lintje-field { height: 100%; }\n\n/* --- */\n\n/* The zone itself does not answer the pointer: only the button does. Its content stands centred,\n so a wide zone does not leave it huddled in one corner. */\n.lintje-file-upload {\n display: flex; flex-wrap: wrap; align-items: center; justify-content: center;\n gap: var(--space-2) var(--space-3);\n padding: var(--space-6) var(--space-4);\n border: 2px dashed var(--color-border-heavy);\n background: var(--color-bg-page);\n color: var(--color-text-primary);\n font: var(--text-ui);\n text-align: center;\n}\n.lintje-file-upload__icon { flex: none; }\n.lintje-file-upload--fill {\n flex: 1;\n flex-direction: column;\n justify-content: center;\n min-height: calc(4 * var(--h-control));\n text-align: center;\n}\n.lintje-file-upload--fill .lintje-file-upload__meta { flex-basis: auto; }\n.lintje-file-upload__meta {\n flex-basis: 100%;\n font: var(--text-meta);\n color: var(--color-text-muted);\n}\n\n.lintje-file-upload.is-dragging {\n border-style: solid;\n border-color: var(--color-accent-line);\n background: var(--color-bg-selected);\n}\n.lintje-file-upload.is-error { border-style: solid; border-color: var(--color-error); }\n.lintje-file-upload.is-disabled {\n background: var(--color-bg-subtle);\n color: var(--color-text-disabled);\n}\n.lintje-file-upload.is-disabled .lintje-file-upload__meta { color: var(--color-text-disabled); }\n\n/* --- The files ----------------------------------------------------------- */\n.lintje-file-upload__list { display: flex; flex-direction: column; gap: var(--space-3); }\n.lintje-file-upload__row { display: flex; flex-direction: column; gap: 6px; }\n.lintje-file-upload__row-head {\n display: flex; flex-wrap: wrap; align-items: center;\n gap: var(--space-2) var(--space-3);\n}\n.lintje-file-upload__row-icon { flex: none; }\n.lintje-file-upload__row.is-busy .lintje-file-upload__row-icon { color: var(--color-text-muted); }\n.lintje-file-upload__row.is-done .lintje-file-upload__row-icon { color: var(--color-success); }\n.lintje-file-upload__row.is-error .lintje-file-upload__row-icon { color: var(--color-error); }\n.lintje-file-upload__name {\n flex: 1 1 120px; min-width: 0;\n font: var(--text-ui);\n color: var(--color-text-primary);\n overflow-wrap: anywhere;\n}\n.lintje-file-upload__detail { color: var(--color-text-muted); }\n.lintje-file-upload__reason {\n display: block;\n font: var(--text-meta);\n font-weight: 700;\n color: var(--color-error-text);\n}\n\n/* Below 768 px nobody drags: the words go and the button takes the full width. */\n@media screen and (max-width: 767px) {\n .lintje-file-upload__text { display: none; }\n .lintje-file-upload.is-dragging .lintje-file-upload__text { display: inline; }\n .lintje-file-upload__button { flex: 1 1 100%; --h-button: var(--h-touch); }\n}\n", m = new Intl.NumberFormat("nl-NL", { maximumFractionDigits: 1 });
|
|
6
6
|
function h(e) {
|
|
7
7
|
for (let [t, n] of [
|
|
8
8
|
[1024 ** 3, "GB"],
|
|
@@ -50,8 +50,8 @@ var x = {
|
|
|
50
50
|
done: "klaar",
|
|
51
51
|
error: "geweigerd"
|
|
52
52
|
}, S = (e) => (e ?? []).filter((e) => e.state === "done").map((e) => e.id), C = (e) => [...e.dataTransfer?.types ?? []].includes("Files"), w = class extends d {
|
|
53
|
-
constructor(...
|
|
54
|
-
super(...
|
|
53
|
+
constructor(...n) {
|
|
54
|
+
super(...n), this.accept = "", this.single = !1, this.fill = !1, this.dragging = !1, this.dragCount = 0, this.refused = [], this.news = "", this.#e = new t(this, e), this.#t = 0, this.#n = 0, this.#r = null, this.onDragEnter = (e) => {
|
|
55
55
|
!this.disabled && C(e) && (this.#t += 1, this.dragging = !0, this.dragCount = e.dataTransfer?.items?.length ?? 0);
|
|
56
56
|
}, this.onDragLeave = () => {
|
|
57
57
|
this.dragging && (this.#t = Math.max(0, this.#t - 1), this.#t === 0 && (this.dragging = !1));
|
|
@@ -61,9 +61,9 @@ var x = {
|
|
|
61
61
|
}
|
|
62
62
|
static {
|
|
63
63
|
this.styles = [
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
64
|
+
o,
|
|
65
|
+
i(f),
|
|
66
|
+
i(p)
|
|
67
67
|
];
|
|
68
68
|
}
|
|
69
69
|
static {
|
|
@@ -118,7 +118,7 @@ var x = {
|
|
|
118
118
|
return this.renderRoot.querySelector(".lintje-file-upload__button");
|
|
119
119
|
}
|
|
120
120
|
focusedRow() {
|
|
121
|
-
let e = this.rowElements, t = e.findIndex((e) =>
|
|
121
|
+
let e = this.rowElements, t = e.findIndex((e) => n(e));
|
|
122
122
|
return t < 0 ? null : {
|
|
123
123
|
id: e[t].dataset.id ?? "",
|
|
124
124
|
index: t
|
|
@@ -166,28 +166,28 @@ var x = {
|
|
|
166
166
|
return [this.accept ? _(this.accept) : "", this.maxSize ? `hoogstens ${h(this.maxSize)}` : ""].filter(Boolean).join(" · ");
|
|
167
167
|
}
|
|
168
168
|
renderRow(e) {
|
|
169
|
-
let t = e.state === "busy",
|
|
169
|
+
let t = e.state === "busy", n = {
|
|
170
170
|
busy: "op-kantoor-document-blanco",
|
|
171
171
|
done: "functioneel-vinkje",
|
|
172
172
|
error: "functioneel-waarschuwing"
|
|
173
|
-
}[e.state],
|
|
174
|
-
return
|
|
175
|
-
class=${
|
|
173
|
+
}[e.state], r = typeof e.progress == "number", i = t ? r ? `· ${Math.round(e.progress)}%` : "" : e.state === "done" ? `· ${h(e.size)}` : "";
|
|
174
|
+
return s`<li
|
|
175
|
+
class=${c({
|
|
176
176
|
"lintje-file-upload__row": !0,
|
|
177
177
|
[`is-${e.state}`]: !0
|
|
178
178
|
})}
|
|
179
179
|
data-id=${e.id}
|
|
180
180
|
>
|
|
181
181
|
<div class="lintje-file-upload__row-head">
|
|
182
|
-
${
|
|
182
|
+
${l(n, {
|
|
183
183
|
size: 18,
|
|
184
184
|
className: "lintje-file-upload__row-icon"
|
|
185
185
|
})}
|
|
186
186
|
<span class="lintje-file-upload__name">
|
|
187
187
|
<strong>${e.name}</strong
|
|
188
188
|
><span class="visually-hidden">, ${x[e.state]}</span>
|
|
189
|
-
${
|
|
190
|
-
${e.state === "error" && e.message ?
|
|
189
|
+
${i ? s`<span class="lintje-file-upload__detail">${i}</span>` : a}
|
|
190
|
+
${e.state === "error" && e.message ? s`<span class="lintje-file-upload__reason">${e.message}</span>` : a}
|
|
191
191
|
</span>
|
|
192
192
|
<lintje-button
|
|
193
193
|
variant="link"
|
|
@@ -197,19 +197,19 @@ var x = {
|
|
|
197
197
|
></lintje-button
|
|
198
198
|
>
|
|
199
199
|
</div>
|
|
200
|
-
${t ?
|
|
200
|
+
${t ? s`<lintje-progress-bar
|
|
201
201
|
hide-label
|
|
202
202
|
label=${`${e.name} uploaden`}
|
|
203
|
-
.value=${
|
|
204
|
-
></lintje-progress-bar>` :
|
|
203
|
+
.value=${r ? e.progress : void 0}
|
|
204
|
+
></lintje-progress-bar>` : a}
|
|
205
205
|
</li>`;
|
|
206
206
|
}
|
|
207
207
|
render() {
|
|
208
|
-
let e = [...this.files ?? [], ...this.refused], t = this.dragging && !this.disabled,
|
|
209
|
-
return
|
|
210
|
-
${this.label ? this.renderLabel() :
|
|
208
|
+
let e = [...this.files ?? [], ...this.refused], t = this.dragging && !this.disabled, n = this.metaText, r = this.single ? "Bestand kiezen" : "Bestanden kiezen", i = [n, this.footMessage || this.hint].filter(Boolean).join(". ");
|
|
209
|
+
return s`<div class="lintje-field">
|
|
210
|
+
${this.label ? this.renderLabel() : a}
|
|
211
211
|
<div
|
|
212
|
-
class=${
|
|
212
|
+
class=${c({
|
|
213
213
|
"lintje-file-upload": !0,
|
|
214
214
|
"lintje-file-upload--fill": this.fill,
|
|
215
215
|
"is-dragging": t,
|
|
@@ -219,45 +219,45 @@ var x = {
|
|
|
219
219
|
@dragover=${this.onDragOver}
|
|
220
220
|
@drop=${this.onDrop}
|
|
221
221
|
>
|
|
222
|
-
${t ?
|
|
222
|
+
${t ? s`${l("functioneel-upload", {
|
|
223
223
|
size: 20,
|
|
224
224
|
className: "lintje-file-upload__icon"
|
|
225
225
|
})}
|
|
226
|
-
<strong class="lintje-file-upload__text">${this.dropText}</strong>` :
|
|
226
|
+
<strong class="lintje-file-upload__text">${this.dropText}</strong>` : s`<lintje-button
|
|
227
227
|
class="lintje-file-upload__button"
|
|
228
228
|
variant="secondary"
|
|
229
229
|
icon="functioneel-upload"
|
|
230
230
|
?block=${this.#e.matches}
|
|
231
231
|
?disabled=${this.disabled}
|
|
232
232
|
?invalid=${!!this.error}
|
|
233
|
-
accessible-name=${this.label ? `${
|
|
234
|
-
description=${
|
|
233
|
+
accessible-name=${this.label ? `${r}, ${this.labelText}` : a}
|
|
234
|
+
description=${i || a}
|
|
235
235
|
@click=${this.pick}
|
|
236
|
-
>${
|
|
236
|
+
>${r}</lintje-button
|
|
237
237
|
>
|
|
238
238
|
<span class="lintje-file-upload__text"
|
|
239
239
|
>${this.single ? "of sleep het hierheen" : "of sleep ze hierheen"}</span
|
|
240
240
|
>
|
|
241
|
-
${
|
|
241
|
+
${n ? s`<span class="lintje-file-upload__meta">${n}</span>` : a}`}
|
|
242
242
|
<input
|
|
243
243
|
class="lintje-file-upload__input"
|
|
244
244
|
type="file"
|
|
245
245
|
hidden
|
|
246
246
|
tabindex="-1"
|
|
247
|
-
accept=${this.accept ||
|
|
247
|
+
accept=${this.accept || a}
|
|
248
248
|
?multiple=${!this.single}
|
|
249
249
|
?disabled=${this.disabled}
|
|
250
250
|
@change=${this.onPicked}
|
|
251
251
|
/>
|
|
252
252
|
</div>
|
|
253
|
-
${e.length ?
|
|
253
|
+
${e.length ? s`<ul class="lintje-file-upload__list" aria-label="Bestanden">
|
|
254
254
|
${e.map((e) => this.renderRow(e))}
|
|
255
|
-
</ul>` :
|
|
255
|
+
</ul>` : a}
|
|
256
256
|
<span class="visually-hidden" role="status">${this.news}</span>
|
|
257
257
|
${this.renderFoot()}
|
|
258
258
|
</div>`;
|
|
259
259
|
}
|
|
260
260
|
};
|
|
261
|
-
|
|
261
|
+
r("lintje-file-upload", w);
|
|
262
262
|
//#endregion
|
|
263
263
|
export { w as LintjeFileUpload, v as accepts, h as formatSize, y as refusal, b as rowNews, _ as typesText };
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import "./toggle.js";
|
|
1
|
+
import { Ft as e, Gt as t, Jt as n, Kt as r, Lt as i, Pt as a, Rt as o, Yt as s, Zt as c, en as l, nn as u } from "../chunks/base-CbmWxUig.js";
|
|
3
2
|
import "./segmented.js";
|
|
4
3
|
import "./text-input.js";
|
|
5
4
|
import "./field.js";
|
|
6
5
|
import "./number-input.js";
|
|
7
6
|
import "./select.js";
|
|
8
7
|
import "./multiselect.js";
|
|
8
|
+
import "./toggle.js";
|
|
9
9
|
import "./range.js";
|
|
10
10
|
import "./date-range.js";
|
|
11
|
-
import { n as d } from "../chunks/sentence-
|
|
11
|
+
import { n as d } from "../chunks/sentence-B19AyZBS.js";
|
|
12
12
|
import "./filter-zone.js";
|
|
13
13
|
import "./filter-sheet.js";
|
|
14
14
|
//#region src/components/filters/shared/filter-layout.css?inline
|
|
15
|
-
var f = "/*\n * Layout rules across component boundaries, adopted by the filter bar: `.lintje-select` sits in\n * `lintje-select`'s shadow root, so the rules are written by tag. An outer rule beats the\n * control's own `:host` rule, so no `!important`.\n */\n\nlintje-filter-zone lintje-field,\nlintje-filter-sheet lintje-field { min-width: 0; }\n\n/* 1024-1439: narrower selects, so four controls fit on one line. */\n@media (min-width: 1024px) and (max-width: 1439px) {\n lintje-filter-zone lintje-select { width: 148px; }\n}\n@media (min-width: 768px) and (max-width: 1023px) {\n lintje-filter-zone lintje-select,\n lintje-filter-zone lintje-multiselect { width: 100%; }\n}\n\n/* The host takes the control height and centres the toggle's pill in it. */\nlintje-filter-zone lintje-toggle {\n display: grid;\n align-items: center;\n min-height: var(--h-control);\n}\n\n/* A select's width, so the placeholder stays on one line. */\nlintje-filter-zone lintje-multiselect { width: 180px; }\n\n:host {\n display: block;\n}\n:host([hidden]) { display: none; }\n", p = (e, t) => JSON.stringify(e ?? null) === JSON.stringify(t ?? null), m = (e) => e ? e.split("-").reverse().join("-") : null, h = (e) => e ? e.split("-").reverse().join("-") : null, g = (e) => {
|
|
15
|
+
var f = "/*\n * Layout rules across component boundaries, adopted by the filter bar: `.lintje-select` sits in\n * `lintje-select`'s shadow root, so the rules are written by tag. An outer rule beats the\n * control's own `:host` rule, so no `!important`.\n */\n\nlintje-filter-zone lintje-field,\nlintje-filter-sheet lintje-field { min-width: 0; }\n\n/* 1024-1439: narrower selects, so four controls fit on one line. */\n@media (min-width: 1024px) and (max-width: 1439px) {\n lintje-filter-zone lintje-select { width: 148px; }\n}\n@media (min-width: 768px) and (max-width: 1023px), print and (max-width: 1023px) {\n lintje-filter-zone lintje-select,\n lintje-filter-zone lintje-multiselect { width: 100%; }\n}\n\n/* The host takes the control height and centres the toggle's pill in it. */\nlintje-filter-zone lintje-toggle {\n display: grid;\n align-items: center;\n min-height: var(--h-control);\n}\n\n/* A select's width, so the placeholder stays on one line. */\nlintje-filter-zone lintje-multiselect { width: 180px; }\n\n:host {\n display: block;\n}\n:host([hidden]) { display: none; }\n", p = (e, t) => JSON.stringify(e ?? null) === JSON.stringify(t ?? null), m = (e) => e ? e.split("-").reverse().join("-") : null, h = (e) => e ? e.split("-").reverse().join("-") : null, g = (e) => {
|
|
16
16
|
let [t, n, r] = e.split("-").map(Number);
|
|
17
17
|
return new Date(t, n - 1, r);
|
|
18
18
|
};
|
|
@@ -62,12 +62,12 @@ function y(e, t) {
|
|
|
62
62
|
emphasis: !1
|
|
63
63
|
}), n;
|
|
64
64
|
}
|
|
65
|
-
var b = class extends
|
|
65
|
+
var b = class extends n {
|
|
66
66
|
constructor(...e) {
|
|
67
|
-
super(...e), this.values = {}, this.draft = {}, this.open = !1, this.mobile = new
|
|
67
|
+
super(...e), this.values = {}, this.draft = {}, this.open = !1, this.mobile = new r(this, t), this.frame = new a(this), this.sheetWasOpen = !1, this.committed = "", this.declaredOpen = void 0;
|
|
68
68
|
}
|
|
69
69
|
static {
|
|
70
|
-
this.styles =
|
|
70
|
+
this.styles = c(f);
|
|
71
71
|
}
|
|
72
72
|
static {
|
|
73
73
|
this.properties = {
|
|
@@ -100,14 +100,14 @@ var b = class extends u {
|
|
|
100
100
|
let t = this.frame.state.sheetOpen;
|
|
101
101
|
t && !this.sheetWasOpen && (this.draft = { ...this.values }), this.sheetWasOpen = t;
|
|
102
102
|
let n = y(this.visible, this.values);
|
|
103
|
-
|
|
103
|
+
i({
|
|
104
104
|
hasFilters: !0,
|
|
105
105
|
modifiedCount: this.modifiedCount,
|
|
106
106
|
summary: d(n)
|
|
107
107
|
});
|
|
108
108
|
}
|
|
109
109
|
disconnectedCallback() {
|
|
110
|
-
super.disconnectedCallback(), this.data?.standalone ||
|
|
110
|
+
super.disconnectedCallback(), this.data?.standalone || e();
|
|
111
111
|
}
|
|
112
112
|
isModified(e, t) {
|
|
113
113
|
return !p(e[t.key], t.default);
|
|
@@ -118,38 +118,38 @@ var b = class extends u {
|
|
|
118
118
|
commit(e) {
|
|
119
119
|
this.values = e, this.emit("lintje-values-change", e);
|
|
120
120
|
}
|
|
121
|
-
control(e, t, r, i
|
|
122
|
-
let
|
|
121
|
+
control(e, t, n, r, i) {
|
|
122
|
+
let a = e.options ?? [];
|
|
123
123
|
switch (e.kind) {
|
|
124
|
-
case "segmented": return
|
|
125
|
-
?stacked=${
|
|
124
|
+
case "segmented": return u`<lintje-segmented
|
|
125
|
+
?stacked=${r}
|
|
126
126
|
hide-label
|
|
127
127
|
label=${e.label}
|
|
128
128
|
value=${t ?? ""}
|
|
129
|
-
.options=${
|
|
130
|
-
@lintje-change=${(e) =>
|
|
129
|
+
.options=${a}
|
|
130
|
+
@lintje-change=${(e) => i(e.detail)}
|
|
131
131
|
></lintje-segmented>`;
|
|
132
|
-
case "select": return
|
|
133
|
-
?stacked=${
|
|
132
|
+
case "select": return u`<lintje-select
|
|
133
|
+
?stacked=${r}
|
|
134
134
|
hide-label
|
|
135
135
|
label=${e.label}
|
|
136
136
|
value=${t ?? ""}
|
|
137
|
-
.options=${
|
|
138
|
-
?bold=${
|
|
139
|
-
@lintje-change=${(e) =>
|
|
137
|
+
.options=${a}
|
|
138
|
+
?bold=${n}
|
|
139
|
+
@lintje-change=${(e) => i(e.detail)}
|
|
140
140
|
></lintje-select>`;
|
|
141
|
-
case "multiselect": return
|
|
142
|
-
?stacked=${
|
|
141
|
+
case "multiselect": return u`<lintje-multiselect
|
|
142
|
+
?stacked=${r}
|
|
143
143
|
hide-label
|
|
144
144
|
label=${e.label}
|
|
145
|
-
.options=${
|
|
145
|
+
.options=${a}
|
|
146
146
|
.selected=${Array.isArray(t) ? t : []}
|
|
147
|
-
@lintje-change=${(e) =>
|
|
147
|
+
@lintje-change=${(e) => i(e.detail)}
|
|
148
148
|
></lintje-multiselect>`;
|
|
149
149
|
case "date-range": {
|
|
150
150
|
let n = t;
|
|
151
|
-
return
|
|
152
|
-
?stacked=${
|
|
151
|
+
return u`<lintje-date-range
|
|
152
|
+
?stacked=${r}
|
|
153
153
|
hide-label
|
|
154
154
|
accessible-name=${e.label}
|
|
155
155
|
.range=${{
|
|
@@ -157,70 +157,70 @@ var b = class extends u {
|
|
|
157
157
|
to: m(n?.to ?? null)
|
|
158
158
|
}}
|
|
159
159
|
.maxDate=${typeof e.max == "string" ? g(e.max) : void 0}
|
|
160
|
-
@lintje-change=${(e) =>
|
|
160
|
+
@lintje-change=${(e) => i({
|
|
161
161
|
from: h(e.detail.from),
|
|
162
162
|
to: h(e.detail.to)
|
|
163
163
|
})}
|
|
164
164
|
></lintje-date-range>`;
|
|
165
165
|
}
|
|
166
166
|
case "range": {
|
|
167
|
-
let n = e.steps ?? [], [
|
|
168
|
-
return
|
|
169
|
-
?stacked=${
|
|
167
|
+
let n = e.steps ?? [], [a, o] = t ?? [0, n.length - 1];
|
|
168
|
+
return u`<lintje-range
|
|
169
|
+
?stacked=${r}
|
|
170
170
|
hide-label
|
|
171
171
|
label=${e.label}
|
|
172
172
|
.steps=${n}
|
|
173
|
-
.from=${
|
|
173
|
+
.from=${a}
|
|
174
174
|
.to=${o}
|
|
175
|
-
@lintje-change=${(e) =>
|
|
175
|
+
@lintje-change=${(e) => i(e.detail)}
|
|
176
176
|
></lintje-range>`;
|
|
177
177
|
}
|
|
178
178
|
case "slider": {
|
|
179
|
-
let
|
|
180
|
-
return
|
|
179
|
+
let n = e.steps ?? [];
|
|
180
|
+
return u`<lintje-range
|
|
181
181
|
single
|
|
182
|
-
?stacked=${
|
|
182
|
+
?stacked=${r}
|
|
183
183
|
hide-label
|
|
184
184
|
label=${e.label}
|
|
185
|
-
unit=${e.unit ??
|
|
186
|
-
.steps=${
|
|
187
|
-
.value=${typeof t == "number" ? t :
|
|
188
|
-
@lintje-change=${(e) =>
|
|
185
|
+
unit=${e.unit ?? l}
|
|
186
|
+
.steps=${n}
|
|
187
|
+
.value=${typeof t == "number" ? t : n[0] ?? null}
|
|
188
|
+
@lintje-change=${(e) => i(e.detail)}
|
|
189
189
|
></lintje-range>`;
|
|
190
190
|
}
|
|
191
|
-
case "toggle": return
|
|
191
|
+
case "toggle": return u`<lintje-toggle
|
|
192
192
|
hide-label
|
|
193
193
|
label=${e.label}
|
|
194
194
|
?checked=${t === !0}
|
|
195
|
-
@lintje-change=${(e) =>
|
|
195
|
+
@lintje-change=${(e) => i(e.detail)}
|
|
196
196
|
></lintje-toggle>`;
|
|
197
|
-
case "text": return
|
|
198
|
-
?stacked=${
|
|
197
|
+
case "text": return u`<lintje-text-input
|
|
198
|
+
?stacked=${r}
|
|
199
199
|
hide-label
|
|
200
200
|
clearable
|
|
201
201
|
label=${e.label}
|
|
202
202
|
.value=${typeof t == "string" ? t : ""}
|
|
203
|
-
placeholder=${e.placeholder ??
|
|
204
|
-
@lintje-change=${(e) =>
|
|
203
|
+
placeholder=${e.placeholder ?? l}
|
|
204
|
+
@lintje-change=${(e) => i(e.detail)}
|
|
205
205
|
></lintje-text-input>`;
|
|
206
|
-
case "number": return
|
|
207
|
-
?stacked=${
|
|
206
|
+
case "number": return u`<lintje-number-input
|
|
207
|
+
?stacked=${r}
|
|
208
208
|
hide-label
|
|
209
209
|
label=${e.label}
|
|
210
210
|
.value=${typeof t == "number" ? t : null}
|
|
211
211
|
.min=${e.min}
|
|
212
212
|
.max=${typeof e.max == "number" ? e.max : void 0}
|
|
213
213
|
.step=${e.step ?? 1}
|
|
214
|
-
unit=${e.unit ??
|
|
214
|
+
unit=${e.unit ?? l}
|
|
215
215
|
.stepper=${e.unit === void 0}
|
|
216
|
-
@lintje-change=${(e) =>
|
|
216
|
+
@lintje-change=${(e) => i(e.detail)}
|
|
217
217
|
></lintje-number-input>`;
|
|
218
218
|
}
|
|
219
219
|
}
|
|
220
220
|
fields(e, t, n) {
|
|
221
|
-
return
|
|
221
|
+
return u`${this.visible.map((r) => {
|
|
222
222
|
let i = this.isModified(e, r);
|
|
223
|
-
return
|
|
223
|
+
return u`<lintje-field label=${r.label} ?modified=${i} ?stacked=${t}>
|
|
224
224
|
${this.control(r, e[r.key], i, t, (t) => n({
|
|
225
225
|
...e,
|
|
226
226
|
[r.key]: t
|
|
@@ -230,7 +230,7 @@ var b = class extends u {
|
|
|
230
230
|
}
|
|
231
231
|
render() {
|
|
232
232
|
let e = y(this.visible, this.values), t = this.frame.state.sheetOpen && this.mobile.matches && !this.data?.standalone;
|
|
233
|
-
return
|
|
233
|
+
return u`
|
|
234
234
|
<lintje-filter-zone
|
|
235
235
|
stick="fixed"
|
|
236
236
|
.total=${this.visible.length}
|
|
@@ -242,7 +242,7 @@ var b = class extends u {
|
|
|
242
242
|
@lintje-zone-open-change=${(e) => {
|
|
243
243
|
this.open = e.detail, this.emit("lintje-filters-open-change", e.detail);
|
|
244
244
|
}}
|
|
245
|
-
@lintje-zone-scrolled-change=${(e) =>
|
|
245
|
+
@lintje-zone-scrolled-change=${(e) => o(e.detail)}
|
|
246
246
|
>
|
|
247
247
|
${this.fields(this.values, !1, (e) => this.commit(e))}
|
|
248
248
|
</lintje-filter-zone>
|
|
@@ -251,12 +251,12 @@ var b = class extends u {
|
|
|
251
251
|
?open=${t}
|
|
252
252
|
.sentence=${y(this.visible, this.draft)}
|
|
253
253
|
?reset-disabled=${this.visible.every((e) => !this.isModified(this.draft, e))}
|
|
254
|
-
@lintje-sheet-close=${() =>
|
|
254
|
+
@lintje-sheet-close=${() => i({ sheetOpen: !1 })}
|
|
255
255
|
@lintje-filters-reset=${() => {
|
|
256
256
|
this.draft = this.defaults;
|
|
257
257
|
}}
|
|
258
258
|
@lintje-filters-apply=${() => {
|
|
259
|
-
this.commit(this.draft),
|
|
259
|
+
this.commit(this.draft), i({ sheetOpen: !1 });
|
|
260
260
|
}}
|
|
261
261
|
>
|
|
262
262
|
${this.fields(this.draft, !0, (e) => {
|
|
@@ -266,6 +266,6 @@ var b = class extends u {
|
|
|
266
266
|
`;
|
|
267
267
|
}
|
|
268
268
|
};
|
|
269
|
-
|
|
269
|
+
s("lintje-filter-bar", b);
|
|
270
270
|
//#endregion
|
|
271
271
|
export { b as LintjeFilterBar };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { t as l } from "../chunks/focus-trap-
|
|
1
|
+
import { Ht as e, Jt as t, Vt as n, Yt as r, Zt as i, en as a, lt as o, nn as s, ut as c } from "../chunks/base-CbmWxUig.js";
|
|
2
|
+
import { t as l } from "../chunks/focus-trap-BwOxE5BX.js";
|
|
3
3
|
import { t as u } from "../chunks/dialog-close-u75fVEw4.js";
|
|
4
|
-
import { t as d } from "../chunks/sentence-
|
|
4
|
+
import { t as d } from "../chunks/sentence-B19AyZBS.js";
|
|
5
5
|
//#region src/components/filters/filter-sheet/filter-sheet.css?inline
|
|
6
|
-
var f = "/* The filter sheet's own box. Control sizes are set in `filter-layout.css`. */\n:host {\n display: block;\n}\n\n/* --- */\n\n.lintje-filter-sheet__scrim {\n position: fixed; inset: 0; z-index: 60;\n background: var(--color-overlay-page);\n animation: lintje-fade-in var(--dur-scrim) var(--ease-in-motion);\n}\n.lintje-filter-sheet {\n position: fixed;\n inset: auto 0 0 0;\n z-index: 61;\n max-height: 88vh;\n display: flex;\n flex-direction: column;\n background: var(--color-bg-filter);\n border-top: 1px solid var(--color-border-filter);\n animation: lintje-sheet-in var(--dur-sheet) var(--ease-in-motion);\n}\n.lintje-filter-sheet:focus { outline: none; }\n\n.lintje-filter-sheet__header {\n display: flex; align-items: center; gap: var(--space-2);\n padding: var(--space-4);\n border-bottom: 1px solid var(--color-border-filter);\n}\n.lintje-filter-sheet__title { font: var(--text-h2); }\n.lintje-filter-sheet__hint { font: var(--text-small); color: var(--color-text-muted); flex: 1; }\n\n.lintje-filter-sheet__body {\n flex: 1;\n overflow-y: auto;\n padding: var(--space-4);\n display: flex;\n flex-direction: column;\n gap: var(--space-5);\n}\n\n.lintje-filter-sheet__summary {\n display: flex; align-items: flex-start; gap: var(--space-2);\n font: var(--text-ui); line-height: 1.4;\n padding-top: var(--space-2);\n border-top: 1px solid var(--color-border-filter);\n}\n\n.lintje-filter-sheet__footer {\n display: flex; gap: var(--space-3);\n padding: var(--space-4);\n border-top: 1px solid var(--color-border-filter);\n background: var(--color-bg-surface);\n}\n/* The <button> reading the height is in the `lintje-button` shadow root: set the token here. */\n.lintje-filter-sheet__action { flex: 1; height: var(--h-touch); --h-button: var(--h-touch); }\n", p = class extends
|
|
6
|
+
var f = "/* The filter sheet's own box. Control sizes are set in `filter-layout.css`. */\n:host {\n display: block;\n}\n\n/* --- */\n\n.lintje-filter-sheet__scrim {\n position: fixed; inset: 0; z-index: 60;\n background: var(--color-overlay-page);\n animation: lintje-fade-in var(--dur-scrim) var(--ease-in-motion);\n}\n.lintje-filter-sheet {\n position: fixed;\n inset: auto 0 0 0;\n z-index: 61;\n max-height: 88vh;\n display: flex;\n flex-direction: column;\n background: var(--color-bg-filter);\n border-top: 1px solid var(--color-border-filter);\n animation: lintje-sheet-in var(--dur-sheet) var(--ease-in-motion);\n}\n.lintje-filter-sheet:focus { outline: none; }\n\n.lintje-filter-sheet__header {\n display: flex; align-items: center; gap: var(--space-2);\n padding: var(--space-4);\n border-bottom: 1px solid var(--color-border-filter);\n}\n.lintje-filter-sheet__title { font: var(--text-h2); }\n.lintje-filter-sheet__hint { font: var(--text-small); color: var(--color-text-muted); flex: 1; }\n\n.lintje-filter-sheet__body {\n flex: 1;\n overflow-y: auto;\n padding: var(--space-4);\n display: flex;\n flex-direction: column;\n gap: var(--space-5);\n}\n\n.lintje-filter-sheet__summary {\n display: flex; align-items: flex-start; gap: var(--space-2);\n font: var(--text-ui); line-height: 1.4;\n padding-top: var(--space-2);\n border-top: 1px solid var(--color-border-filter);\n}\n\n.lintje-filter-sheet__footer {\n display: flex; gap: var(--space-3);\n padding: var(--space-4);\n border-top: 1px solid var(--color-border-filter);\n background: var(--color-bg-surface);\n}\n/* The <button> reading the height is in the `lintje-button` shadow root: set the token here. */\n.lintje-filter-sheet__action { flex: 1; height: var(--h-touch); --h-button: var(--h-touch); }\n", p = class extends t {
|
|
7
7
|
constructor(...e) {
|
|
8
8
|
super(...e), this.open = !1, this.resetDisabled = !1, this.applyDisabled = !1, this.sentence = [], this.locked = null, this.#e = new l(), this.onKeyDown = (e) => {
|
|
9
9
|
this.open && e.key === "Escape" && this.#e.isTopmost() && (this.hasOpenPopover() || this.close());
|
|
@@ -11,9 +11,9 @@ var f = "/* The filter sheet's own box. Control sizes are set in `filter-layout.
|
|
|
11
11
|
}
|
|
12
12
|
static {
|
|
13
13
|
this.styles = [
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
14
|
+
o,
|
|
15
|
+
i(u),
|
|
16
|
+
i(f)
|
|
17
17
|
];
|
|
18
18
|
}
|
|
19
19
|
static {
|
|
@@ -48,7 +48,7 @@ var f = "/* The filter sheet's own box. Control sizes are set in `filter-layout.
|
|
|
48
48
|
this.emitLocal("lintje-sheet-close");
|
|
49
49
|
}
|
|
50
50
|
lock() {
|
|
51
|
-
this.locked ||= this.scrollLock ?
|
|
51
|
+
this.locked ||= this.scrollLock ? n(this.scrollLock) : e();
|
|
52
52
|
}
|
|
53
53
|
unlock() {
|
|
54
54
|
this.locked?.(), this.locked = null;
|
|
@@ -81,7 +81,7 @@ var f = "/* The filter sheet's own box. Control sizes are set in `filter-layout.
|
|
|
81
81
|
class="lintje-dialog-close lintje-filter-sheet__close"
|
|
82
82
|
@click=${() => this.close()}
|
|
83
83
|
>
|
|
84
|
-
${
|
|
84
|
+
${c("functioneel-kruis", { size: 16 })}
|
|
85
85
|
</button>
|
|
86
86
|
</div>
|
|
87
87
|
|
|
@@ -109,9 +109,9 @@ var f = "/* The filter sheet's own box. Control sizes are set in `filter-layout.
|
|
|
109
109
|
>
|
|
110
110
|
</div>
|
|
111
111
|
</div>
|
|
112
|
-
` :
|
|
112
|
+
` : a;
|
|
113
113
|
}
|
|
114
114
|
};
|
|
115
|
-
|
|
115
|
+
r("lintje-filter-sheet", p);
|
|
116
116
|
//#endregion
|
|
117
117
|
export { p as LintjeFilterSheet };
|