xv-webcomponents 1.20.2 → 1.22.1-qa.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/dist/cjs/{index-DwneAp1a.js → index-Cb30DBqk.js} +16 -0
- package/dist/cjs/index-DpLAFt0R.js +3728 -0
- package/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/maplibre-gl-CCZS3Rg5.js +900 -0
- package/dist/cjs/{xv-accordion-v2_48.cjs.entry.js → xv-accordion-v2_49.cjs.entry.js} +736 -119
- package/dist/cjs/xv-header-next.cjs.entry.js +4 -4
- package/dist/cjs/xv-mega-menu-next.cjs.entry.js +5 -5
- package/dist/cjs/xv-webcomponents.cjs.js +2 -2
- package/dist/collection/collection-manifest.json +1 -0
- package/dist/collection/components/xv-accordion/xv-accordion.css +0 -127
- package/dist/collection/components/xv-accordion/xv-accordion.js +24 -4
- package/dist/collection/components/xv-accordion-item/xv-accordion-item.css +0 -127
- package/dist/collection/components/xv-accordion-item/xv-accordion-item.js +11 -5
- package/dist/collection/components/xv-breadcrumbs/xv-breadcrumbs.css +0 -127
- package/dist/collection/components/xv-breadcrumbs/xv-breadcrumbs.js +1 -1
- package/dist/collection/components/xv-button/xv-button-v2.css +3 -130
- package/dist/collection/components/xv-button/xv-button.js +4 -4
- package/dist/collection/components/xv-button-group/xv-button-group.css +0 -127
- package/dist/collection/components/xv-button-group/xv-button-group.js +1 -1
- package/dist/collection/components/xv-card/xv-card.css +0 -127
- package/dist/collection/components/xv-card/xv-card.js +1 -1
- package/dist/collection/components/xv-checkbox/xv-checkbox.css +0 -127
- package/dist/collection/components/xv-checkbox/xv-checkbox.js +2 -2
- package/dist/collection/components/xv-content-switcher/xv-content-switcher-item/xv-content-switcher-item.css +0 -127
- package/dist/collection/components/xv-content-switcher/xv-content-switcher-item/xv-content-switcher-item.js +1 -1
- package/dist/collection/components/xv-content-switcher/xv-content-switcher.css +0 -127
- package/dist/collection/components/xv-content-switcher/xv-content-switcher.js +2 -2
- package/dist/collection/components/xv-data-table/xv-data-table-cell/xv-data-table-cell.css +0 -127
- package/dist/collection/components/xv-data-table/xv-data-table-cell/xv-data-table-cell.js +1 -1
- package/dist/collection/components/xv-data-table/xv-data-table-collapse/xv-data-table-collapse.css +0 -127
- package/dist/collection/components/xv-data-table/xv-data-table-collapse/xv-data-table-collapse.js +1 -1
- package/dist/collection/components/xv-data-table/xv-data-table-row/xv-data-table-row.css +0 -127
- package/dist/collection/components/xv-data-table/xv-data-table-row/xv-data-table-row.js +2 -2
- package/dist/collection/components/xv-data-table/xv-data-table.css +0 -127
- package/dist/collection/components/xv-data-table/xv-data-table.js +1 -1
- package/dist/collection/components/xv-datepicker/xv-datepicker.css +3 -127
- package/dist/collection/components/xv-datepicker/xv-datepicker.js +69 -5
- package/dist/collection/components/xv-dropdown/xv-dropdown-item/xv-dropdown-item.css +0 -127
- package/dist/collection/components/xv-dropdown/xv-dropdown-item/xv-dropdown-item.js +1 -1
- package/dist/collection/components/xv-dropdown/xv-dropdown.css +3 -129
- package/dist/collection/components/xv-dropdown/xv-dropdown.js +5 -4
- package/dist/collection/components/xv-file-uploader/xv-file-uploader.css +0 -127
- package/dist/collection/components/xv-file-uploader/xv-file-uploader.js +1 -1
- package/dist/collection/components/xv-footer/xv-footer.css +0 -222
- package/dist/collection/components/xv-footer/xv-footer.js +1 -1
- package/dist/collection/components/xv-geo-map/xv-geo-map.css +907 -0
- package/dist/collection/components/xv-geo-map/xv-geo-map.js +984 -0
- package/dist/collection/components/xv-header/xv-header.css +0 -222
- package/dist/collection/components/xv-header/xv-header.js +1 -1
- package/dist/collection/components/xv-header-next/xv-header-next.css +0 -222
- package/dist/collection/components/xv-header-next/xv-header-next.js +1 -1
- package/dist/collection/components/xv-image-viewer/xv-image-viewer.css +0 -127
- package/dist/collection/components/xv-image-viewer/xv-image-viewer.js +1 -1
- package/dist/collection/components/xv-link/xv-link.css +0 -127
- package/dist/collection/components/xv-link/xv-link.js +1 -1
- package/dist/collection/components/xv-loader/xv-loader.css +0 -127
- package/dist/collection/components/xv-login-modal/xv-login-modal.css +0 -127
- package/dist/collection/components/xv-mega-menu/xv-mega-menu.css +0 -254
- package/dist/collection/components/xv-mega-menu/xv-mega-menu.js +2 -2
- package/dist/collection/components/xv-mega-menu-next/xv-mega-menu-next.css +0 -254
- package/dist/collection/components/xv-mega-menu-next/xv-mega-menu-next.js +2 -2
- package/dist/collection/components/xv-modal/xv-modal.css +0 -127
- package/dist/collection/components/xv-modal/xv-modal.js +1 -1
- package/dist/collection/components/xv-notification/xv-notification.css +0 -127
- package/dist/collection/components/xv-notification/xv-notification.js +1 -1
- package/dist/collection/components/xv-number-input/xv-number-input.css +0 -127
- package/dist/collection/components/xv-number-input/xv-number-input.js +4 -2
- package/dist/collection/components/xv-overflow-menu/xv-overflow-menu-item/xv-overflow-menu-item.css +0 -127
- package/dist/collection/components/xv-overflow-menu/xv-overflow-menu.css +0 -127
- package/dist/collection/components/xv-pagination/xv-pagination.css +0 -127
- package/dist/collection/components/xv-pagination/xv-pagination.js +59 -3
- package/dist/collection/components/xv-progress-indicator/xv-progress-indicator-item/xv-progress-indicator-item.css +0 -127
- package/dist/collection/components/xv-progress-indicator/xv-progress-indicator-item/xv-progress-indicator-item.js +1 -1
- package/dist/collection/components/xv-progress-indicator/xv-progress-indicator.css +0 -127
- package/dist/collection/components/xv-progress-indicator/xv-progress-indicator.js +1 -1
- package/dist/collection/components/xv-radio/xv-radio.css +3 -127
- package/dist/collection/components/xv-radio/xv-radio.js +23 -2
- package/dist/collection/components/xv-slider/xv-slider.css +0 -127
- package/dist/collection/components/xv-slider/xv-slider.js +1 -1
- package/dist/collection/components/xv-table/xv-table-cell/xv-table-cell.css +0 -127
- package/dist/collection/components/xv-table/xv-table-cell/xv-table-cell.js +1 -1
- package/dist/collection/components/xv-table/xv-table-expand/xv-table-expand.css +0 -127
- package/dist/collection/components/xv-table/xv-table-expand/xv-table-expand.js +1 -1
- package/dist/collection/components/xv-table/xv-table-row/xv-table-row.css +0 -127
- package/dist/collection/components/xv-table/xv-table-row/xv-table-row.js +1 -1
- package/dist/collection/components/xv-table/xv-table.css +0 -127
- package/dist/collection/components/xv-table/xv-table.js +1 -1
- package/dist/collection/components/xv-tabs/xv-tab/xv-tab.css +0 -127
- package/dist/collection/components/xv-tabs/xv-tab/xv-tab.js +1 -1
- package/dist/collection/components/xv-tabs/xv-tabs.css +0 -127
- package/dist/collection/components/xv-tag/xv-tag.css +0 -127
- package/dist/collection/components/xv-tag/xv-tag.js +1 -1
- package/dist/collection/components/xv-tag-combobox/xv-tag-combobox.css +2 -129
- package/dist/collection/components/xv-tag-combobox/xv-tag-combobox.js +23 -2
- package/dist/collection/components/xv-text-input/xv-text-input.css +0 -127
- package/dist/collection/components/xv-text-input/xv-text-input.js +4 -2
- package/dist/collection/components/xv-textarea/xv-textarea.css +11 -128
- package/dist/collection/components/xv-textarea/xv-textarea.js +4 -2
- package/dist/collection/components/xv-tile/xv-tile.css +0 -127
- package/dist/collection/components/xv-tile/xv-tile.js +2 -2
- package/dist/collection/components/xv-toggle/xv-toggle.css +0 -127
- package/dist/collection/components/xv-toggle/xv-toggle.js +1 -1
- package/dist/collection/components/xv-toggle-tip/xv-toggle-tip.css +0 -127
- package/dist/collection/components/xv-toggle-tip/xv-toggle-tip.js +1 -1
- package/dist/collection/components/xv-tooltip/xv-tooltip.css +0 -32
- package/dist/collection/components/xv-tooltip/xv-tooltip.js +2 -2
- package/dist/collection/utils/utils.js +15 -0
- package/dist/esm/{index-OqHMuwQF.js → index-CQm2sRKT.js} +16 -1
- package/dist/esm/index-DmxA2ysB.js +3717 -0
- package/dist/esm/index.js +1 -1
- package/dist/esm/loader.js +3 -3
- package/dist/esm/maplibre-gl-CS4Eagm9.js +813 -0
- package/dist/esm/maplibre-gl-shared.mjs +6 -0
- package/dist/esm/maplibre-gl-worker.mjs +6 -0
- package/dist/esm/{xv-accordion-v2_48.entry.js → xv-accordion-v2_49.entry.js} +736 -120
- package/dist/esm/xv-header-next.entry.js +4 -4
- package/dist/esm/xv-mega-menu-next.entry.js +5 -5
- package/dist/esm/xv-webcomponents.js +3 -3
- package/dist/types/components/xv-accordion/xv-accordion.d.ts +5 -4
- package/dist/types/components/xv-accordion-item/xv-accordion-item.d.ts +3 -0
- package/dist/types/components/xv-button/xv-button.d.ts +1 -1
- package/dist/types/components/xv-datepicker/xv-datepicker.d.ts +12 -0
- package/dist/types/components/xv-geo-map/xv-geo-map.d.ts +115 -0
- package/dist/types/components/xv-pagination/xv-pagination.d.ts +3 -1
- package/dist/types/components/xv-radio/xv-radio.d.ts +1 -0
- package/dist/types/components/xv-tag-combobox/xv-tag-combobox.d.ts +1 -0
- package/dist/types/components.d.ts +239 -2
- package/dist/types/utils/utils.d.ts +9 -0
- package/dist/xv-webcomponents/index.esm.js +1 -1
- package/dist/xv-webcomponents/p-77bd6e1f.entry.js +8 -0
- package/dist/xv-webcomponents/p-93bd2dca.entry.js +1 -0
- package/dist/xv-webcomponents/p-9e3130ff.entry.js +1 -0
- package/dist/xv-webcomponents/p-CQm2sRKT.js +1 -0
- package/dist/xv-webcomponents/p-CS4Eagm9.js +10 -0
- package/dist/xv-webcomponents/p-DmxA2ysB.js +2 -0
- package/dist/xv-webcomponents/xv-webcomponents.css +2 -17
- package/dist/xv-webcomponents/xv-webcomponents.esm.js +1 -1
- package/package.json +2 -1
- package/dist/cjs/index-C4fJ70r4.js +0 -3728
- package/dist/esm/index-Cv2gugMt.js +0 -3717
- package/dist/xv-webcomponents/p-00197757.entry.js +0 -8
- package/dist/xv-webcomponents/p-0b0ce8e2.entry.js +0 -1
- package/dist/xv-webcomponents/p-Cv2gugMt.js +0 -2
- package/dist/xv-webcomponents/p-OqHMuwQF.js +0 -1
- package/dist/xv-webcomponents/p-fa1779f0.entry.js +0 -1
|
@@ -9,6 +9,7 @@ import { SIZE_VAR_STR, XV_SORT_DIR } from "./types/enum";
|
|
|
9
9
|
import { XvDataTableCheck, XvDataTableReorder } from "./components/xv-data-table/_vars";
|
|
10
10
|
import { DropdownItemData } from "./components/xv-dropdown/_vars";
|
|
11
11
|
import { XvFileUploaderVariants } from "./components/xv-file-uploader/_vars";
|
|
12
|
+
import { GeoMapSelection } from "./components/xv-geo-map/xv-geo-map";
|
|
12
13
|
import { MenuItem } from "./components/xv-mega-menu-next/xv-mega-menu-next.model";
|
|
13
14
|
import { NOTIFICATION_VARIANTS_STR } from "./components/xv-notification/_vars";
|
|
14
15
|
import { OverflowMenuEvent, OverflowMenuVariant } from "./components/xv-overflow-menu/_vars";
|
|
@@ -22,6 +23,7 @@ export { SIZE_VAR_STR, XV_SORT_DIR } from "./types/enum";
|
|
|
22
23
|
export { XvDataTableCheck, XvDataTableReorder } from "./components/xv-data-table/_vars";
|
|
23
24
|
export { DropdownItemData } from "./components/xv-dropdown/_vars";
|
|
24
25
|
export { XvFileUploaderVariants } from "./components/xv-file-uploader/_vars";
|
|
26
|
+
export { GeoMapSelection } from "./components/xv-geo-map/xv-geo-map";
|
|
25
27
|
export { MenuItem } from "./components/xv-mega-menu-next/xv-mega-menu-next.model";
|
|
26
28
|
export { NOTIFICATION_VARIANTS_STR } from "./components/xv-notification/_vars";
|
|
27
29
|
export { OverflowMenuEvent, OverflowMenuVariant } from "./components/xv-overflow-menu/_vars";
|
|
@@ -123,7 +125,7 @@ export namespace Components {
|
|
|
123
125
|
*/
|
|
124
126
|
"type": 'button' | 'submit' | 'reset';
|
|
125
127
|
/**
|
|
126
|
-
* Button value is optional
|
|
128
|
+
* Button value is optional. Reflected — xv-button-group-v2 keys its children by the attribute.
|
|
127
129
|
*/
|
|
128
130
|
"value"?: string;
|
|
129
131
|
/**
|
|
@@ -362,6 +364,10 @@ export namespace Components {
|
|
|
362
364
|
interface XvDatepicker {
|
|
363
365
|
"block"?: boolean;
|
|
364
366
|
"disabled"?: boolean;
|
|
367
|
+
/**
|
|
368
|
+
* Individual dates to disable within the min/max range. Each entry may be a `Date`, a bare 'yyyy-MM-dd' string, or a full ISO string — all normalised to a local 'yyyy-MM-dd' key that matches the calendar grid. Composes with min/max: a day is selectable only when it is inside the range AND not listed here (e.g. to allow only certain weekdays / block holidays).
|
|
369
|
+
*/
|
|
370
|
+
"disabledDates"?: (Date | string)[];
|
|
365
371
|
/**
|
|
366
372
|
* Error status. Can be boolean or string
|
|
367
373
|
*/
|
|
@@ -509,6 +515,96 @@ export namespace Components {
|
|
|
509
515
|
}
|
|
510
516
|
interface XvFooter {
|
|
511
517
|
}
|
|
518
|
+
/**
|
|
519
|
+
* Minimal ATV planner map: MapLibre + PLZ boundaries from the XvGeoTool API.
|
|
520
|
+
* Click a PLZ to (de)select it. No further UI — selection state and reach
|
|
521
|
+
* data are emitted via `changeSelection` for the host page to display.
|
|
522
|
+
* MapLibre (~250 KB gzip) is loaded lazily when the component scrolls near
|
|
523
|
+
* the viewport, so the host page's initial load stays untouched.
|
|
524
|
+
*/
|
|
525
|
+
interface XvGeoMapV2 {
|
|
526
|
+
/**
|
|
527
|
+
* Base URL of the geo API (Xv.Api v1/geo — contract-compatible with the XvGeoTool API). Default is the same-origin Front Door route, so no CORS is involved on crossvertise pages.
|
|
528
|
+
* @default '/api-fd/v1/geo'
|
|
529
|
+
*/
|
|
530
|
+
"apiBase": string;
|
|
531
|
+
/**
|
|
532
|
+
* @default '© CARTO, © OpenStreetMap contributors'
|
|
533
|
+
*/
|
|
534
|
+
"attribution": string;
|
|
535
|
+
/**
|
|
536
|
+
* @default 51.16
|
|
537
|
+
*/
|
|
538
|
+
"centerLat": number;
|
|
539
|
+
/**
|
|
540
|
+
* Initial map center
|
|
541
|
+
* @default 10.45
|
|
542
|
+
*/
|
|
543
|
+
"centerLng": number;
|
|
544
|
+
/**
|
|
545
|
+
* Remove the optimizer proposal highlight.
|
|
546
|
+
*/
|
|
547
|
+
"clearPreview": () => Promise<void>;
|
|
548
|
+
/**
|
|
549
|
+
* Clear the whole selection.
|
|
550
|
+
*/
|
|
551
|
+
"clearSelection": () => Promise<void>;
|
|
552
|
+
/**
|
|
553
|
+
* Indicator whose per-unit values feed the tooltips and the emitted population sum (e.g. ATV_DEVICES)
|
|
554
|
+
* @default 'MBI_P_T_2025'
|
|
555
|
+
*/
|
|
556
|
+
"indicator": string;
|
|
557
|
+
/**
|
|
558
|
+
* Unit label shown behind the indicator value in the tooltip
|
|
559
|
+
* @default 'Einwohner'
|
|
560
|
+
*/
|
|
561
|
+
"indicatorLabel": string;
|
|
562
|
+
/**
|
|
563
|
+
* Load the map bundle only when scrolled near the viewport (default: true)
|
|
564
|
+
* @default true
|
|
565
|
+
*/
|
|
566
|
+
"lazy": boolean;
|
|
567
|
+
/**
|
|
568
|
+
* Geo level to display and select: plz5, gemeinde, kreis, regbez, bundesland
|
|
569
|
+
* @default 'plz5'
|
|
570
|
+
*/
|
|
571
|
+
"level": string;
|
|
572
|
+
/**
|
|
573
|
+
* Highlight what a radius extension would ADD (optimizer proposal): the units within `km` that are not part of the selection render in the preview color. Visual only — the selection and its change events stay untouched. Returns the number of added units.
|
|
574
|
+
*/
|
|
575
|
+
"previewByRadius": (startPlz: string, km: number) => Promise<number>;
|
|
576
|
+
/**
|
|
577
|
+
* Shape resolution: medium = simplified geometry (snappy), high = originals
|
|
578
|
+
* @default 'medium'
|
|
579
|
+
*/
|
|
580
|
+
"resolution": 'medium' | 'high';
|
|
581
|
+
/**
|
|
582
|
+
* Select all PLZs within `km` around a start PLZ ("Umkreis"). Replaces the selection unless `add` is true.
|
|
583
|
+
*/
|
|
584
|
+
"selectByRadius": (startPlz: string, km: number, add?: boolean) => Promise<GeoMapSelection | null>;
|
|
585
|
+
/**
|
|
586
|
+
* Select an explicit list of PLZs ("PLZ-Liste" paste, query-param restore). Replaces the selection unless `add` is true.
|
|
587
|
+
*/
|
|
588
|
+
"selectPostalCodes": (codes: string[], add?: boolean) => Promise<GeoMapSelection | null>;
|
|
589
|
+
/**
|
|
590
|
+
* Minimum zoom before boundaries are loaded and selectable (use ~5 for bundesland, 9 for plz5)
|
|
591
|
+
* @default 9
|
|
592
|
+
*/
|
|
593
|
+
"selectZoom": number;
|
|
594
|
+
/**
|
|
595
|
+
* Raster tile URL template. Default: CARTO Positron — light, minimal, made for data overlays; fits the crossvertise design. For production traffic, license a tile plan (CARTO/MapTiler/Geofabrik) and set the keyed URL here.
|
|
596
|
+
* @default 'https://basemaps.cartocdn.com/rastertiles/light_all/{z}/{x}/{y}@2x.png'
|
|
597
|
+
*/
|
|
598
|
+
"tiles": string;
|
|
599
|
+
/**
|
|
600
|
+
* Explicit URL of maplibre-gl-worker.mjs (maplibre-gl-shared.mjs must sit next to it). Needed when the host bundler relocates the maplibre chunk so import.meta.url-relative worker resolution breaks (e.g. Angular/Vite dev server).
|
|
601
|
+
*/
|
|
602
|
+
"workerUrl"?: string;
|
|
603
|
+
/**
|
|
604
|
+
* @default 5.5
|
|
605
|
+
*/
|
|
606
|
+
"zoom": number;
|
|
607
|
+
}
|
|
512
608
|
interface XvHeader {
|
|
513
609
|
}
|
|
514
610
|
/**
|
|
@@ -740,6 +836,14 @@ export namespace Components {
|
|
|
740
836
|
}
|
|
741
837
|
interface XvPagination {
|
|
742
838
|
"block"?: boolean;
|
|
839
|
+
/**
|
|
840
|
+
* @default 10
|
|
841
|
+
*/
|
|
842
|
+
"itemsPerPage": number;
|
|
843
|
+
/**
|
|
844
|
+
* @default [10, 20, 30, 40, 50, 100]
|
|
845
|
+
*/
|
|
846
|
+
"itemsPerPageOptions": number[] | string;
|
|
743
847
|
/**
|
|
744
848
|
* @default 1
|
|
745
849
|
*/
|
|
@@ -802,6 +906,7 @@ export namespace Components {
|
|
|
802
906
|
* @default false
|
|
803
907
|
*/
|
|
804
908
|
"error": string | boolean;
|
|
909
|
+
"helper"?: string;
|
|
805
910
|
/**
|
|
806
911
|
* @default false
|
|
807
912
|
*/
|
|
@@ -954,6 +1059,7 @@ export namespace Components {
|
|
|
954
1059
|
*/
|
|
955
1060
|
"error": string | boolean;
|
|
956
1061
|
"focusInput": () => Promise<void>;
|
|
1062
|
+
"helper"?: string;
|
|
957
1063
|
/**
|
|
958
1064
|
* @default ''
|
|
959
1065
|
*/
|
|
@@ -1203,6 +1309,10 @@ export interface XvFileUploaderCustomEvent<T> extends CustomEvent<T> {
|
|
|
1203
1309
|
detail: T;
|
|
1204
1310
|
target: HTMLXvFileUploaderElement;
|
|
1205
1311
|
}
|
|
1312
|
+
export interface XvGeoMapV2CustomEvent<T> extends CustomEvent<T> {
|
|
1313
|
+
detail: T;
|
|
1314
|
+
target: HTMLXvGeoMapV2Element;
|
|
1315
|
+
}
|
|
1206
1316
|
export interface XvHeaderCustomEvent<T> extends CustomEvent<T> {
|
|
1207
1317
|
detail: T;
|
|
1208
1318
|
target: HTMLXvHeaderElement;
|
|
@@ -1598,6 +1708,31 @@ declare global {
|
|
|
1598
1708
|
prototype: HTMLXvFooterElement;
|
|
1599
1709
|
new (): HTMLXvFooterElement;
|
|
1600
1710
|
};
|
|
1711
|
+
interface HTMLXvGeoMapV2ElementEventMap {
|
|
1712
|
+
"changeSelection": GeoMapSelection;
|
|
1713
|
+
"mapReady": void;
|
|
1714
|
+
}
|
|
1715
|
+
/**
|
|
1716
|
+
* Minimal ATV planner map: MapLibre + PLZ boundaries from the XvGeoTool API.
|
|
1717
|
+
* Click a PLZ to (de)select it. No further UI — selection state and reach
|
|
1718
|
+
* data are emitted via `changeSelection` for the host page to display.
|
|
1719
|
+
* MapLibre (~250 KB gzip) is loaded lazily when the component scrolls near
|
|
1720
|
+
* the viewport, so the host page's initial load stays untouched.
|
|
1721
|
+
*/
|
|
1722
|
+
interface HTMLXvGeoMapV2Element extends Components.XvGeoMapV2, HTMLStencilElement {
|
|
1723
|
+
addEventListener<K extends keyof HTMLXvGeoMapV2ElementEventMap>(type: K, listener: (this: HTMLXvGeoMapV2Element, ev: XvGeoMapV2CustomEvent<HTMLXvGeoMapV2ElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
1724
|
+
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
1725
|
+
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
1726
|
+
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
|
|
1727
|
+
removeEventListener<K extends keyof HTMLXvGeoMapV2ElementEventMap>(type: K, listener: (this: HTMLXvGeoMapV2Element, ev: XvGeoMapV2CustomEvent<HTMLXvGeoMapV2ElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
|
|
1728
|
+
removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
1729
|
+
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
1730
|
+
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
|
|
1731
|
+
}
|
|
1732
|
+
var HTMLXvGeoMapV2Element: {
|
|
1733
|
+
prototype: HTMLXvGeoMapV2Element;
|
|
1734
|
+
new (): HTMLXvGeoMapV2Element;
|
|
1735
|
+
};
|
|
1601
1736
|
interface HTMLXvHeaderElementEventMap {
|
|
1602
1737
|
"xvMetaNavUpdate": any;
|
|
1603
1738
|
}
|
|
@@ -2090,6 +2225,7 @@ declare global {
|
|
|
2090
2225
|
"xv-dropdown-v2-item": HTMLXvDropdownV2ItemElement;
|
|
2091
2226
|
"xv-file-uploader": HTMLXvFileUploaderElement;
|
|
2092
2227
|
"xv-footer": HTMLXvFooterElement;
|
|
2228
|
+
"xv-geo-map-v2": HTMLXvGeoMapV2Element;
|
|
2093
2229
|
"xv-header": HTMLXvHeaderElement;
|
|
2094
2230
|
"xv-header-next": HTMLXvHeaderNextElement;
|
|
2095
2231
|
"xv-image-viewer": HTMLXvImageViewerElement;
|
|
@@ -2221,7 +2357,7 @@ declare namespace LocalJSX {
|
|
|
2221
2357
|
*/
|
|
2222
2358
|
"type"?: 'button' | 'submit' | 'reset';
|
|
2223
2359
|
/**
|
|
2224
|
-
* Button value is optional
|
|
2360
|
+
* Button value is optional. Reflected — xv-button-group-v2 keys its children by the attribute.
|
|
2225
2361
|
*/
|
|
2226
2362
|
"value"?: string;
|
|
2227
2363
|
/**
|
|
@@ -2482,6 +2618,10 @@ declare namespace LocalJSX {
|
|
|
2482
2618
|
interface XvDatepicker {
|
|
2483
2619
|
"block"?: boolean;
|
|
2484
2620
|
"disabled"?: boolean;
|
|
2621
|
+
/**
|
|
2622
|
+
* Individual dates to disable within the min/max range. Each entry may be a `Date`, a bare 'yyyy-MM-dd' string, or a full ISO string — all normalised to a local 'yyyy-MM-dd' key that matches the calendar grid. Composes with min/max: a day is selectable only when it is inside the range AND not listed here (e.g. to allow only certain weekdays / block holidays).
|
|
2623
|
+
*/
|
|
2624
|
+
"disabledDates"?: (Date | string)[];
|
|
2485
2625
|
/**
|
|
2486
2626
|
* Error status. Can be boolean or string
|
|
2487
2627
|
*/
|
|
@@ -2635,6 +2775,84 @@ declare namespace LocalJSX {
|
|
|
2635
2775
|
}
|
|
2636
2776
|
interface XvFooter {
|
|
2637
2777
|
}
|
|
2778
|
+
/**
|
|
2779
|
+
* Minimal ATV planner map: MapLibre + PLZ boundaries from the XvGeoTool API.
|
|
2780
|
+
* Click a PLZ to (de)select it. No further UI — selection state and reach
|
|
2781
|
+
* data are emitted via `changeSelection` for the host page to display.
|
|
2782
|
+
* MapLibre (~250 KB gzip) is loaded lazily when the component scrolls near
|
|
2783
|
+
* the viewport, so the host page's initial load stays untouched.
|
|
2784
|
+
*/
|
|
2785
|
+
interface XvGeoMapV2 {
|
|
2786
|
+
/**
|
|
2787
|
+
* Base URL of the geo API (Xv.Api v1/geo — contract-compatible with the XvGeoTool API). Default is the same-origin Front Door route, so no CORS is involved on crossvertise pages.
|
|
2788
|
+
* @default '/api-fd/v1/geo'
|
|
2789
|
+
*/
|
|
2790
|
+
"apiBase"?: string;
|
|
2791
|
+
/**
|
|
2792
|
+
* @default '© CARTO, © OpenStreetMap contributors'
|
|
2793
|
+
*/
|
|
2794
|
+
"attribution"?: string;
|
|
2795
|
+
/**
|
|
2796
|
+
* @default 51.16
|
|
2797
|
+
*/
|
|
2798
|
+
"centerLat"?: number;
|
|
2799
|
+
/**
|
|
2800
|
+
* Initial map center
|
|
2801
|
+
* @default 10.45
|
|
2802
|
+
*/
|
|
2803
|
+
"centerLng"?: number;
|
|
2804
|
+
/**
|
|
2805
|
+
* Indicator whose per-unit values feed the tooltips and the emitted population sum (e.g. ATV_DEVICES)
|
|
2806
|
+
* @default 'MBI_P_T_2025'
|
|
2807
|
+
*/
|
|
2808
|
+
"indicator"?: string;
|
|
2809
|
+
/**
|
|
2810
|
+
* Unit label shown behind the indicator value in the tooltip
|
|
2811
|
+
* @default 'Einwohner'
|
|
2812
|
+
*/
|
|
2813
|
+
"indicatorLabel"?: string;
|
|
2814
|
+
/**
|
|
2815
|
+
* Load the map bundle only when scrolled near the viewport (default: true)
|
|
2816
|
+
* @default true
|
|
2817
|
+
*/
|
|
2818
|
+
"lazy"?: boolean;
|
|
2819
|
+
/**
|
|
2820
|
+
* Geo level to display and select: plz5, gemeinde, kreis, regbez, bundesland
|
|
2821
|
+
* @default 'plz5'
|
|
2822
|
+
*/
|
|
2823
|
+
"level"?: string;
|
|
2824
|
+
/**
|
|
2825
|
+
* Selection changed: selected PLZs + population sum of the selection
|
|
2826
|
+
*/
|
|
2827
|
+
"onChangeSelection"?: (event: XvGeoMapV2CustomEvent<GeoMapSelection>) => void;
|
|
2828
|
+
/**
|
|
2829
|
+
* Map finished initializing
|
|
2830
|
+
*/
|
|
2831
|
+
"onMapReady"?: (event: XvGeoMapV2CustomEvent<void>) => void;
|
|
2832
|
+
/**
|
|
2833
|
+
* Shape resolution: medium = simplified geometry (snappy), high = originals
|
|
2834
|
+
* @default 'medium'
|
|
2835
|
+
*/
|
|
2836
|
+
"resolution"?: 'medium' | 'high';
|
|
2837
|
+
/**
|
|
2838
|
+
* Minimum zoom before boundaries are loaded and selectable (use ~5 for bundesland, 9 for plz5)
|
|
2839
|
+
* @default 9
|
|
2840
|
+
*/
|
|
2841
|
+
"selectZoom"?: number;
|
|
2842
|
+
/**
|
|
2843
|
+
* Raster tile URL template. Default: CARTO Positron — light, minimal, made for data overlays; fits the crossvertise design. For production traffic, license a tile plan (CARTO/MapTiler/Geofabrik) and set the keyed URL here.
|
|
2844
|
+
* @default 'https://basemaps.cartocdn.com/rastertiles/light_all/{z}/{x}/{y}@2x.png'
|
|
2845
|
+
*/
|
|
2846
|
+
"tiles"?: string;
|
|
2847
|
+
/**
|
|
2848
|
+
* Explicit URL of maplibre-gl-worker.mjs (maplibre-gl-shared.mjs must sit next to it). Needed when the host bundler relocates the maplibre chunk so import.meta.url-relative worker resolution breaks (e.g. Angular/Vite dev server).
|
|
2849
|
+
*/
|
|
2850
|
+
"workerUrl"?: string;
|
|
2851
|
+
/**
|
|
2852
|
+
* @default 5.5
|
|
2853
|
+
*/
|
|
2854
|
+
"zoom"?: number;
|
|
2855
|
+
}
|
|
2638
2856
|
interface XvHeader {
|
|
2639
2857
|
"onXvMetaNavUpdate"?: (event: XvHeaderCustomEvent<any>) => void;
|
|
2640
2858
|
}
|
|
@@ -2876,6 +3094,14 @@ declare namespace LocalJSX {
|
|
|
2876
3094
|
}
|
|
2877
3095
|
interface XvPagination {
|
|
2878
3096
|
"block"?: boolean;
|
|
3097
|
+
/**
|
|
3098
|
+
* @default 10
|
|
3099
|
+
*/
|
|
3100
|
+
"itemsPerPage"?: number;
|
|
3101
|
+
/**
|
|
3102
|
+
* @default [10, 20, 30, 40, 50, 100]
|
|
3103
|
+
*/
|
|
3104
|
+
"itemsPerPageOptions"?: number[] | string;
|
|
2879
3105
|
"onPageChange"?: (event: XvPaginationCustomEvent<{ page: number, itemsPerPage: number; }>) => void;
|
|
2880
3106
|
/**
|
|
2881
3107
|
* @default 1
|
|
@@ -2939,6 +3165,7 @@ declare namespace LocalJSX {
|
|
|
2939
3165
|
* @default false
|
|
2940
3166
|
*/
|
|
2941
3167
|
"error"?: string | boolean;
|
|
3168
|
+
"helper"?: string;
|
|
2942
3169
|
/**
|
|
2943
3170
|
* @default false
|
|
2944
3171
|
*/
|
|
@@ -3097,6 +3324,7 @@ declare namespace LocalJSX {
|
|
|
3097
3324
|
* @default false
|
|
3098
3325
|
*/
|
|
3099
3326
|
"error"?: string | boolean;
|
|
3327
|
+
"helper"?: string;
|
|
3100
3328
|
/**
|
|
3101
3329
|
* @default ''
|
|
3102
3330
|
*/
|
|
@@ -3319,6 +3547,7 @@ declare namespace LocalJSX {
|
|
|
3319
3547
|
"xv-dropdown-v2-item": XvDropdownV2Item;
|
|
3320
3548
|
"xv-file-uploader": XvFileUploader;
|
|
3321
3549
|
"xv-footer": XvFooter;
|
|
3550
|
+
"xv-geo-map-v2": XvGeoMapV2;
|
|
3322
3551
|
"xv-header": XvHeader;
|
|
3323
3552
|
"xv-header-next": XvHeaderNext;
|
|
3324
3553
|
"xv-image-viewer": XvImageViewer;
|
|
@@ -3420,6 +3649,14 @@ declare module "@stencil/core" {
|
|
|
3420
3649
|
"xv-dropdown-v2-item": LocalJSX.XvDropdownV2Item & JSXBase.HTMLAttributes<HTMLXvDropdownV2ItemElement>;
|
|
3421
3650
|
"xv-file-uploader": LocalJSX.XvFileUploader & JSXBase.HTMLAttributes<HTMLXvFileUploaderElement>;
|
|
3422
3651
|
"xv-footer": LocalJSX.XvFooter & JSXBase.HTMLAttributes<HTMLXvFooterElement>;
|
|
3652
|
+
/**
|
|
3653
|
+
* Minimal ATV planner map: MapLibre + PLZ boundaries from the XvGeoTool API.
|
|
3654
|
+
* Click a PLZ to (de)select it. No further UI — selection state and reach
|
|
3655
|
+
* data are emitted via `changeSelection` for the host page to display.
|
|
3656
|
+
* MapLibre (~250 KB gzip) is loaded lazily when the component scrolls near
|
|
3657
|
+
* the viewport, so the host page's initial load stays untouched.
|
|
3658
|
+
*/
|
|
3659
|
+
"xv-geo-map-v2": LocalJSX.XvGeoMapV2 & JSXBase.HTMLAttributes<HTMLXvGeoMapV2Element>;
|
|
3423
3660
|
"xv-header": LocalJSX.XvHeader & JSXBase.HTMLAttributes<HTMLXvHeaderElement>;
|
|
3424
3661
|
/**
|
|
3425
3662
|
* Drop-in successor of `xv-header` for the new headless CMS.
|
|
@@ -3,6 +3,15 @@ type FetchInit = RequestInit & Partial<{
|
|
|
3
3
|
raw: boolean;
|
|
4
4
|
}>;
|
|
5
5
|
export declare function format(first?: string, middle?: string, last?: string): string;
|
|
6
|
+
/**
|
|
7
|
+
* Returns the highest-priority field message (error → warning → helper):
|
|
8
|
+
* the first field carrying a non-empty string. Boolean flags (border/icon
|
|
9
|
+
* state only) carry no text and are skipped.
|
|
10
|
+
*/
|
|
11
|
+
export declare const resolveFieldMessage: (fields: Record<"error" | "warning" | "helper", string | boolean | null | undefined>) => {
|
|
12
|
+
level: "error" | "warning" | "helper";
|
|
13
|
+
text: string;
|
|
14
|
+
} | null;
|
|
6
15
|
export declare function uidGenerator(): string;
|
|
7
16
|
/**
|
|
8
17
|
* Walks through the given DOM collection and runs the given callback.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export{
|
|
1
|
+
export{e as format}from"./p-CQm2sRKT.js";
|