@oiz/stzh-components 3.3.0-beta4 → 3.3.0-beta5

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.
Files changed (93) hide show
  1. package/dist/cjs/{app-globals-add1c2c1.js → app-globals-95815145.js} +2 -2
  2. package/dist/cjs/{app-globals-add1c2c1.js.map → app-globals-95815145.js.map} +1 -1
  3. package/dist/cjs/{arrow-16638ece.js → arrow-6135123b.js} +116 -49
  4. package/dist/cjs/arrow-6135123b.js.map +1 -0
  5. package/dist/cjs/index.cjs.js.map +1 -1
  6. package/dist/cjs/loader.cjs.js +1 -1
  7. package/dist/cjs/stzh-app-nav.cjs.entry.js +9 -1
  8. package/dist/cjs/stzh-app-nav.cjs.entry.js.map +1 -1
  9. package/dist/cjs/stzh-components.cjs.js +1 -1
  10. package/dist/cjs/stzh-popover_2.cjs.entry.js +21 -9
  11. package/dist/cjs/stzh-popover_2.cjs.entry.js.map +1 -1
  12. package/dist/cjs/stzh-row.cjs.entry.js +1 -1
  13. package/dist/cjs/stzh-row.cjs.entry.js.map +1 -1
  14. package/dist/cjs/stzh-tooltip.cjs.entry.js +20 -8
  15. package/dist/cjs/stzh-tooltip.cjs.entry.js.map +1 -1
  16. package/dist/cjs/stzh-upload.cjs.entry.js +1 -1
  17. package/dist/cjs/stzh-upload.cjs.entry.js.map +1 -1
  18. package/dist/collection/components/stzh-app-nav/stzh-app-nav.js +32 -1
  19. package/dist/collection/components/stzh-app-nav/stzh-app-nav.js.map +1 -1
  20. package/dist/collection/components/stzh-app-nav/stzh-app-nav.stories.js +1 -1
  21. package/dist/collection/components/stzh-header/stzh-header.stories.js +2 -2
  22. package/dist/collection/components/stzh-popover/stzh-popover.js +20 -8
  23. package/dist/collection/components/stzh-popover/stzh-popover.js.map +1 -1
  24. package/dist/collection/components/stzh-row/stzh-row.css +240 -184
  25. package/dist/collection/components/stzh-tooltip/stzh-tooltip.js +19 -7
  26. package/dist/collection/components/stzh-tooltip/stzh-tooltip.js.map +1 -1
  27. package/dist/collection/components/stzh-upload/stzh-upload.js +1 -1
  28. package/dist/collection/components/stzh-upload/stzh-upload.js.map +1 -1
  29. package/dist/collection/index.js.map +1 -1
  30. package/dist/components/arrow.js +115 -48
  31. package/dist/components/arrow.js.map +1 -1
  32. package/dist/components/index.js +1 -1
  33. package/dist/components/index2.js.map +1 -1
  34. package/dist/components/stzh-app-nav2.js +10 -2
  35. package/dist/components/stzh-app-nav2.js.map +1 -1
  36. package/dist/components/stzh-popover2.js +20 -8
  37. package/dist/components/stzh-popover2.js.map +1 -1
  38. package/dist/components/stzh-row.js +1 -1
  39. package/dist/components/stzh-row.js.map +1 -1
  40. package/dist/components/stzh-tooltip2.js +19 -7
  41. package/dist/components/stzh-tooltip2.js.map +1 -1
  42. package/dist/components/stzh-upload.js +1 -1
  43. package/dist/components/stzh-upload.js.map +1 -1
  44. package/dist/esm/{app-globals-7f5414ca.js → app-globals-10ef946d.js} +2 -2
  45. package/dist/esm/{app-globals-7f5414ca.js.map → app-globals-10ef946d.js.map} +1 -1
  46. package/dist/esm/{arrow-fc956b24.js → arrow-8f47d7ea.js} +116 -49
  47. package/dist/esm/arrow-8f47d7ea.js.map +1 -0
  48. package/dist/esm/index.js.map +1 -1
  49. package/dist/esm/loader.js +1 -1
  50. package/dist/esm/stzh-app-nav.entry.js +10 -2
  51. package/dist/esm/stzh-app-nav.entry.js.map +1 -1
  52. package/dist/esm/stzh-components.js +1 -1
  53. package/dist/esm/stzh-popover_2.entry.js +21 -9
  54. package/dist/esm/stzh-popover_2.entry.js.map +1 -1
  55. package/dist/esm/stzh-row.entry.js +1 -1
  56. package/dist/esm/stzh-row.entry.js.map +1 -1
  57. package/dist/esm/stzh-tooltip.entry.js +20 -8
  58. package/dist/esm/stzh-tooltip.entry.js.map +1 -1
  59. package/dist/esm/stzh-upload.entry.js +1 -1
  60. package/dist/esm/stzh-upload.entry.js.map +1 -1
  61. package/dist/stzh-components/index.esm.js.map +1 -1
  62. package/dist/stzh-components/{p-6009632f.js → p-45be0b3e.js} +2 -2
  63. package/dist/stzh-components/p-7423c6c2.js +2 -0
  64. package/dist/stzh-components/p-7423c6c2.js.map +1 -0
  65. package/dist/stzh-components/{p-d1aa8602.entry.js → p-8202e541.entry.js} +2 -2
  66. package/dist/stzh-components/p-8202e541.entry.js.map +1 -0
  67. package/dist/stzh-components/p-ab6cc68f.entry.js +2 -0
  68. package/dist/stzh-components/p-ab6cc68f.entry.js.map +1 -0
  69. package/dist/stzh-components/p-b047262a.entry.js +2 -0
  70. package/dist/stzh-components/p-b047262a.entry.js.map +1 -0
  71. package/dist/stzh-components/{p-288fd6f7.entry.js → p-bb4dea97.entry.js} +2 -2
  72. package/dist/stzh-components/{p-288fd6f7.entry.js.map → p-bb4dea97.entry.js.map} +1 -1
  73. package/dist/stzh-components/p-dc4f385d.entry.js +2 -0
  74. package/dist/stzh-components/p-dc4f385d.entry.js.map +1 -0
  75. package/dist/stzh-components/stzh-components.esm.js +1 -1
  76. package/dist/types/components/stzh-app-nav/stzh-app-nav.d.ts +5 -1
  77. package/dist/types/components/stzh-popover/stzh-popover.d.ts +3 -0
  78. package/dist/types/components/stzh-tooltip/stzh-tooltip.d.ts +3 -0
  79. package/dist/types/components.d.ts +10 -2
  80. package/dist/types/index.d.ts +5 -0
  81. package/package.json +2 -2
  82. package/dist/cjs/arrow-16638ece.js.map +0 -1
  83. package/dist/esm/arrow-fc956b24.js.map +0 -1
  84. package/dist/stzh-components/p-6a1d65ce.entry.js +0 -2
  85. package/dist/stzh-components/p-6a1d65ce.entry.js.map +0 -1
  86. package/dist/stzh-components/p-a2da1df4.js +0 -2
  87. package/dist/stzh-components/p-a2da1df4.js.map +0 -1
  88. package/dist/stzh-components/p-d1aa8602.entry.js.map +0 -1
  89. package/dist/stzh-components/p-e9933daa.entry.js +0 -2
  90. package/dist/stzh-components/p-e9933daa.entry.js.map +0 -1
  91. package/dist/stzh-components/p-f42f6787.entry.js +0 -2
  92. package/dist/stzh-components/p-f42f6787.entry.js.map +0 -1
  93. /package/dist/stzh-components/{p-6009632f.js.map → p-45be0b3e.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,MAAM;AACN,sBAAsB;AACtB,MAAM;AAwwDN,MAAM,KAAW,GAAG,CAoMnB;AApMD,WAAiB,GAAG;EACL,oBAAgB,GAAG,QAAQ,CAAC;EAE5B,kBAAc,GAAG,QAAQ,CAAC;EAC1B,2BAAuB,GAAG,sBAAsB,CAAC;EAEjD,sBAAkB,GAAG,YAAY,CAAC;EAClC,2BAAuB,GAAG,GAAG,CAAC;EAC9B,4BAAwB,GAAG,GAAG,CAAC;EAC/B,sBAAkB,GAAG,GAAG,CAAC;EACzB,qBAAiB,GAAG,GAAG,CAAC;EACxB,mBAAe,GAAG,GAAG,CAAC;AAyLrC,CAAC,EApMgB,GAAG,KAAH,GAAG,QAoMnB;AAED,MAAM;AACN,0BAA0B;AAC1B,MAAM;AAEN,cAAc,cAAc,CAAC","sourcesContent":["// ---\n// Global window types\n// ---\n\nimport { StzhLocaleAdapter } from \"./utils/date-adapter\";\n\nimport {\n StzhLocaleComponent,\n StzhLocaleFormats,\n StzhLocaleGlobals,\n} from \"./utils/translation-utils\";\n\nexport type WindowStzhComponents = {\n version: string;\n supportedLocales: string[];\n defaultLocale: string;\n translations: null | StzhLocaleComponent;\n translationsLoading: Promise<StzhLocaleComponent>;\n pathMedia: string;\n pathTranslations: string;\n pathVendors: string;\n cacheTranslations: boolean;\n formats: StzhLocaleFormats;\n fixAutofocus: boolean;\n fixHashfocus: boolean;\n utils: {\n getLocale: (element: HTMLElement) => string;\n fetchTranslations: (\n host: HTMLElement,\n component: string\n ) => Promise<StzhLocaleComponent & any>;\n\n format: (date: Date, type: string) => string;\n parse: (string: string, type: string) => Date;\n formatSpan: (\n date: Date | string,\n date2: Date | string,\n type: string\n ) => string;\n parseSpan: (string: string, type: string) => [Date, Date, string];\n createFormatParseAdapter: (\n formats: StzhLocaleFormats,\n globals: StzhLocaleGlobals\n ) => StzhLocaleAdapter;\n };\n};\n\ndeclare global {\n interface Window {\n stzhComponents: WindowStzhComponents;\n // global third party library\n pannellum: any;\n Dropzone: any;\n proj4: any;\n // readspeaker lib APIs\n readpage: any;\n ReadSpeaker: any;\n rsConf: any;\n rspkr: any;\n }\n}\n\n// ---\n// Event Types\n// ---\n\n/* Sortable */\n\nexport type StzhSortableUpdateEvent = {\n component: \"stzh-sortable\";\n data: string[];\n item: HTMLElement;\n newIndex: number;\n oldIndex: number;\n};\n\nexport type StzhSortableDisableEvent = {\n component: \"stzh-sortable\";\n disabled: boolean;\n};\n\n/* Panorama */\n\nexport type PanoramaScene = {\n sceneId: string;\n imageSrc: string;\n imageTitle: string;\n\n imageAuthor?: string;\n imageType?: \"equirectangular\" | \"cubemap\" | \"multires\";\n caption?: string;\n copyright?: string;\n\n pitch?: number;\n yaw?: number;\n hfov?: number;\n\n hotspots: PanoramaSceneHotSpot[];\n};\n\nexport type PanoramaScenesLibrary = {\n [sceneKey: string]: {\n title?: string;\n author?: string;\n panorama: string;\n type?: \"equirectangular\" | \"cubemap\" | \"multires\";\n\n pitch?: number;\n yaw?: number;\n hfov?: number;\n\n hotSpots: PanoramaSceneHotSpot[];\n };\n};\n\nexport type PanoramaSceneHotSpot = {\n pitch: number;\n yaw: number;\n type: string;\n text: string;\n url?: string;\n id?: string;\n sceneId?: string;\n targetPitch?: number;\n targetYaw?: number;\n\n cssClass?: string;\n createTooltipFunc?: Function;\n createTooltipArgs?: any;\n};\n\nexport type StzhPanoramaLoadEvent = {\n component: \"stzh-panorama\";\n};\n\nexport type StzhPanoramaChangeEvent = {\n component: \"stzh-panorama\";\n value: { pitch: number; yaw: number; hfov: number };\n};\n\nexport type StzhPanoramaFullscreenChangeEvent = {\n component: \"stzh-panorama\";\n value: boolean;\n};\n\nexport type StzhPanoramaSceneChangeEvent = {\n component: \"stzh-panorama\";\n value: string;\n};\n\nexport type StzhPanoramaZoomChangeEvent = {\n component: \"stzh-panorama\";\n value: number;\n};\n\n/* Iframe */\n\nexport type StzhIframeView = \"iframe\" | \"cookiewall\" | \"preview\";\n\nexport type StzhIframeViewChangeEvent = {\n component: \"stzh-iframe\";\n value: StzhIframeView;\n};\n\nexport type StzhIframePreviewSkipEvent = {\n component: \"stzh-iframe\";\n};\n\n/* Olmap */\n\nexport type OlmapLayer = {\n title?: string;\n thumbnailUrl: string;\n options: {\n url: string;\n layer: string;\n matrixSet: string;\n origin: number[];\n extent: number[];\n };\n};\n\nexport type StzhOlmapInitializedEvent = {\n component: \"stzh-olmap\";\n};\n\nexport type StzhOlmapPostRenderEvent = {\n component: \"stzh-olmap\";\n};\n\nexport type StzhOlmapMoveStartEvent = {\n component: \"stzh-olmap\";\n};\n\nexport type StzhOlmapMoveEndEvent = {\n component: \"stzh-olmap\";\n};\n\n/* Sticky */\n\nexport type StzhStickyStuckTopEvent = {\n component: \"stzh-sticky\";\n sticky: boolean;\n};\n\nexport type StzhStickyStuckBottomEvent = {\n component: \"stzh-sticky\";\n sticky: boolean;\n};\n\n/* Table */\n\nexport type StzhDatatableCellData = {\n value: string | number;\n isHeader?: boolean;\n align?: \"left\" | \"right\" | \"center\";\n valign?: \"auto\" | \"middle\" | \"bottom\" | \"top\";\n colspan?: number;\n rowspan?: number;\n id?: string;\n};\n\nexport type StzhDatatableRowData = {\n [key: string]: StzhDatatableCellData;\n};\n\nexport type StzhDatatableInputRowData = {\n [key: string]: StzhDatatableCellData | string | number;\n};\n\nexport type StzhDatatableColumnData = {\n key: string;\n text?: string;\n align?: \"left\" | \"right\" | \"center\";\n valign?: \"auto\" | \"middle\" | \"bottom\" | \"top\";\n sort?:\n | boolean\n | {\n type?: \"numerical\" | \"text\";\n field?: string;\n };\n fixed?: \"left\" | \"right\";\n isHeader?: boolean;\n colspan?: number;\n rowspan?: number;\n hideColumnHeading?: boolean;\n analyticsId?: string;\n style?: {\n [key: string]: string;\n };\n};\n\nexport type StzhDatatableRowClickEvent = {\n component: \"stzh-datatable\";\n row: any;\n originalEvent: MouseEvent;\n};\n\nexport type StzhDatatableCellClickEvent = {\n component: \"stzh-datatable\";\n row: any;\n column: any;\n cellIndex: number;\n rowIndex: number;\n originalEvent: MouseEvent;\n};\n\nexport type StzhDatatableHeadingCellClickEvent = {\n component: \"stzh-datatable\";\n column: any;\n index: number;\n originalEvent: MouseEvent;\n};\n\nexport type StzhDatatableSortClickEvent = {\n component: \"stzh-datatable\";\n column: any;\n originalEvent: MouseEvent;\n};\n\nexport type StzhDatatableSortByChangeEvent = {\n component: \"stzh-datatable\";\n value: string;\n oldValue: string;\n};\n\nexport type StzhDatatableSortDirectionChangeEvent = {\n component: \"stzh-datatable\";\n value: \"asc\" | \"desc\";\n oldValue: \"asc\" | \"desc\";\n};\n\n/* Archivelist */\n\nexport type StzhArchivelistItem = {\n label: string;\n labelClamp?: any; // attributes of HTMLStzhClampElement\n href: string;\n dateline?: string;\n description?: string;\n descriptionClamp?: any; // attributes of HTMLStzhClampElement\n};\n\nexport type StzhArchivelistItemClickEvent = {\n component: \"stzh-archivelist\";\n item: StzhArchivelistItem;\n originalEvent: MouseEvent;\n};\n\n/* Anchornav */\n\nexport type StzhAnchornavItem = {\n label: string;\n href?: string;\n icon?: string;\n};\n\nexport type StzhAnchornavItemClickEvent = {\n component: \"stzh-anchornav\";\n item: StzhAnchornavItem;\n originalEvent: MouseEvent;\n};\n\n/* TopnewsMostsearchedSection */\n\nexport type StzhTopnewsItem = {\n subtitle?: string;\n label: string;\n href?: string;\n isHighlighted?: boolean;\n};\n\nexport type StzhMostsearchedItem = {\n label: string;\n href: string;\n};\n\n/* VBZ Quicklinks */\n\nexport type StzhVbzQuicklink = {\n label: string;\n href: string;\n};\n\n/* Status */\n\nexport type StzhStatusType =\n | \"default\"\n | \"success\"\n | \"warning\"\n | \"error\"\n | \"info\";\n\n/* Badge */\n\nexport type StzhBadgeType =\n | \"default\"\n | \"success\"\n | \"warning\"\n | \"error\"\n | \"info\";\n\n/* Actionset */\n\nexport type StzhActionsetItem = {\n id: string;\n label?: string;\n icon?: string;\n iconPosition?: \"left\" | \"right\";\n iconOnly?: boolean;\n badge?: string;\n badgeEmpty?: boolean;\n badgeType?: StzhBadgeType;\n variant?: StzhButtonVariant;\n size?: StzhButtonSize;\n badgePosition?: \"icon\" | \"button\";\n tooltipContent?: string;\n};\n\nexport type StzhActionsetItemClickEvent = {\n component: \"stzh-actionset\";\n action: StzhActionsetItem;\n originalEvent: MouseEvent;\n};\n\n/* Audio */\n\nexport type StzhAudioPlayEvent = {\n component: \"stzh-audio\";\n};\n\nexport type StzhAudioPlayingEvent = {\n component: \"stzh-audio\";\n};\n\nexport type StzhAudioPauseEvent = {\n component: \"stzh-audio\";\n};\n\nexport type StzhAudioReplayEvent = {\n component: \"stzh-audio\";\n};\n\nexport type StzhAudioEndEvent = {\n component: \"stzh-audio\";\n};\n\nexport type StzhAudioEndedEvent = {\n component: \"stzh-audio\";\n};\n\nexport type StzhAudioErrorEvent = {\n component: \"stzh-audio\";\n originalEvent: ErrorEvent;\n};\n\n/* Share */\n\nexport type ShareService =\n | \"facebook\"\n | \"twitter\"\n | \"linkedin\"\n | \"xing\"\n | \"mail\";\n\n/* Footer Editor */\n\nexport type StzhEditorLink = {\n label: string;\n href?: string;\n icon?: string;\n rel?: string;\n target?: string;\n};\n\n/* Header */\n\nexport type StzhHeaderMenuItem = {\n label: string;\n href?: string;\n items?: StzhHeaderMenuItem[];\n id?: string;\n};\n\nexport type StzhHeaderMetanavItem = {\n label: string;\n labelShort?: string;\n labelHidden?: boolean;\n stay?: boolean;\n stayAndShowInMobileMenu?: boolean;\n variant?: \"default\" | \"secondary\"; // used for menu-item and popover\n size?: \"default\" | \"large\"; // used for menu-item and popover\n important?: boolean;\n importantSubmenu?: boolean;\n badgeEmpty?: boolean;\n badgeType?: StzhBadgeType;\n badge?: string;\n icon?: string;\n iconOpen?: string;\n href?: string;\n target?: string;\n id?: string;\n items?: StzhHeaderMetanavItemChild[];\n itemButton?: StzhHeaderMetanavItemButton;\n cssOrder?: boolean;\n};\n\nexport type StzhHeaderMetanavItemChild = {\n label: string;\n href?: string;\n target?: string;\n id?: string;\n icon?: string;\n counter?: number;\n badge?: string;\n badgeType?: StzhBadgeType;\n};\n\nexport type StzhHeaderMetanavItemButton = {\n label: string;\n href?: string;\n target?: string;\n size?: StzhButtonSize;\n id?: string;\n};\n\nexport type StzhHeaderMetanavItemClickEvent = {\n component: \"stzh-header\";\n item: StzhHeaderMetanavItem;\n originalEvent: MouseEvent;\n};\n\nexport type StzhHeaderMetanavItemChildClickEvent = {\n component: \"stzh-header\";\n itemChild: StzhHeaderMetanavItemChild;\n originalEvent: MouseEvent;\n};\n\nexport type StzhHeaderMetanavItemButtonClickEvent = {\n component: \"stzh-header\";\n itemButton: StzhHeaderMetanavItemButton;\n originalEvent: MouseEvent;\n};\n\nexport type StzhHeaderMenuItemClickEvent = {\n component: \"stzh-header\";\n item: StzhHeaderMenuItem;\n originalEvent: MouseEvent;\n};\n\nexport type StzhHeaderLanguageChangeEvent = {\n component: \"stzh-header\";\n value: string;\n};\n\nexport type StzhHeaderSearchChangeEvent = {\n component: \"stzh-header\";\n originalEvent: InputEvent | MouseEvent;\n value: string;\n};\n\nexport type StzhHeaderSearchChangedEvent = {\n component: \"stzh-header\";\n originalEvent: InputEvent | MouseEvent;\n value: string;\n};\n\n/* App Nav */\nexport type StzhAppNavItem = {\n text: string;\n href: string;\n badge: string;\n badgeType: StzhBadgeType;\n icon: string;\n active: boolean;\n a11yCurrent: string;\n};\n\n/* PI Pagetitle */\n\nexport type StzhPiPagetitleMenuItem = {\n label: string;\n href?: string;\n active?: boolean;\n items?: StzhPiPagetitleMenuItem[];\n id?: string;\n};\n\n/* Search */\n\nexport type StzhSearchOverlayCloseClickEvent = {\n component: \"stzh-search\";\n originalEvent: MouseEvent;\n};\n\n/* Breadcrumb */\n\nexport type StzhBreadcrumbItem = {\n label: string;\n href: string;\n};\n\nexport type StzhBreadcrumbItemClickEvent = {\n component: \"stzh-breadcrumb\";\n item: StzhBreadcrumbItem;\n originalEvent: MouseEvent;\n};\n\n/* Card */\n\nexport type StzhCardHeaderAction = {\n id: string;\n label?: string;\n icon?: string;\n badge?: string;\n badgeEmpty?: boolean;\n badgeType?: StzhBadgeType;\n};\n\nexport type StzhCardSubtitleClickEvent = {\n component: \"stzh-card\";\n originalEvent: MouseEvent;\n};\n\nexport type StzhCardCollapseEvent = {\n component: \"stzh-card\";\n collapsed: boolean;\n};\n\nexport type StzhCardClickEvent = {\n component: \"stzh-card\";\n originalEvent: MouseEvent;\n href: string;\n};\n\nexport type StzhCardStarClickEvent = {\n component: \"stzh-card\";\n starred: boolean;\n originalEvent: MouseEvent;\n};\n\nexport type StzhCardHeaderActionClickEvent = {\n component: \"stzh-card\";\n action: StzhCardHeaderAction;\n originalEvent: MouseEvent;\n};\n\n/* Card Navigation */\n\nexport type StzhCardNavigationClickEvent = {\n component: \"stzh-card-navigation\";\n originalEvent: MouseEvent;\n href: string;\n};\n\nexport type StzhPiCardNavigationClickEvent = {\n component: \"stzh-pi-content-navigation\";\n originalEvent: MouseEvent;\n href: string;\n};\n\n/* Pi Teaser */\n\nexport type StzhPiTeaserClickEvent = {\n component: \"stzh-pi-teaser\";\n originalEvent: MouseEvent;\n href: string;\n};\n\n/* Card Superteaser */\n\nexport type StzhCardSuperteaserClickEvent = {\n component: \"stzh-card-superteaser\";\n originalEvent: MouseEvent;\n href: string;\n};\n\n/* Card Searchresult */\n\nexport type StzhCardSearchresultClickEvent = {\n component: \"stzh-card-searchresult\";\n originalEvent: MouseEvent;\n href: string;\n};\n\n/* Search */\n\nexport type StzhSearchResult = {\n html?: string;\n href?: string;\n heading?: string;\n dateline?: string;\n description?: string;\n image?: string;\n imagePosition?: \"default\" | \"right\";\n tag?: string;\n topic?: string;\n service?: string;\n serviceColor?: string;\n serviceBackgroundColor?: string;\n meta?: string[];\n breadcrumbItems?: StzhBreadcrumbItem[];\n eventDateStart?: string;\n eventDateEnd?: string;\n eventLocation?: string;\n download?: string;\n downloadHeading?: string;\n downloadMeta?: string[];\n};\n\nexport type StzhSearchChipsResult = {\n label: string;\n value: string;\n amount?: number;\n options?: { text: string; value: string }[];\n};\n\n/* Microsite Teaserlist */\n\nexport type StzhMicrositeTeaserlistTag = {\n id: string;\n name: string;\n};\n\nexport type StzhMicrositeTeaserlistItem = {\n title?: string;\n description?: string;\n image?: string;\n link: string;\n tags: string[];\n teaserid: string;\n};\n\n/* Cardlist */\n\nexport type StzhCardlistCollapseAllEvent = {\n component: \"stzh-cardlist\";\n allCollapsed: boolean;\n};\n\n/* Calendar */\n\nexport type StzhCalendarChangeEvent = {\n component: \"stzh-calendar\";\n valueAsDate: Date;\n value: string;\n};\n\n/* Datepicker */\n\nexport type StzhDatepickerChangeEvent = {\n component: \"stzh-datepicker\";\n value: string;\n valueAsDate: Date;\n};\n\n/* Pagination */\n\nexport type StzhPaginationChangeEvent = {\n component: \"stzh-pagination\";\n page: number;\n};\n\n/* Timepicker */\n\nexport type StzhTimepickerChangeEvent = {\n component: \"stzh-timepicker\";\n value: string;\n};\n\n/* Monthyearpicker */\n\nexport type StzhMonthyearpickerChangeEvent = {\n component: \"stzh-monthyearpicker\";\n value: string;\n valueMonth: string;\n valueYear: string;\n};\n\n/* Amount */\n\nexport type StzhAmountChangeEvent = {\n component: \"stzh-amount\";\n value: string;\n};\n\n/* Appointments */\n\nexport type StzhAppointmentsChangeEvent = {\n component: \"stzh-appointments\";\n value: string;\n};\n\n/* Skiplink */\n\nexport type StzhSkiplinkFocusEvent = {\n component: \"stzh-skiplink\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhSkiplinkBlurEvent = {\n component: \"stzh-skiplink\";\n originalEvent: FocusEvent;\n};\n\n/* Checkbox */\n\nexport type StzhCheckboxChangeEvent = {\n component: \"stzh-checkbox\";\n originalEvent: InputEvent | Event;\n value: string;\n checked: boolean;\n};\n\nexport type StzhCheckboxFocusEvent = {\n component: \"stzh-checkbox\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhCheckboxBlurEvent = {\n component: \"stzh-checkbox\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhCheckboxgroupChangeEvent = {\n component: \"stzh-checkboxgroup\";\n value: string[];\n};\n\n/* Toggle */\n\nexport type StzhToggleChangeEvent = {\n component: \"stzh-toggle\";\n originalEvent: InputEvent;\n value: string;\n checked: boolean;\n};\n\nexport type StzhToggleFocusEvent = {\n component: \"stzh-toggle\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhToggleBlurEvent = {\n component: \"stzh-toggle\";\n originalEvent: FocusEvent;\n};\n\n/* Button */\n\nexport type StzhButtonVariant =\n | \"default\"\n | \"secondary\"\n | \"tertiary\"\n | \"tertiary-plain\";\nexport type StzhButtonSize = \"default\" | \"small\" | \"tiny\";\n\nexport type StzhButtonFocusEvent = {\n component: \"stzh-button\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhButtonBlurEvent = {\n component: \"stzh-button\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhButtonClickEvent = {\n component: \"stzh-button\";\n originalEvent: MouseEvent;\n href: string;\n};\n\nexport type StzhButtonChangeEvent = {\n component: \"stzh-button\";\n originalEvent: InputEvent;\n value: string;\n checked: boolean;\n};\n\n/* Link */\n\nexport type StzhLinkSize = \"default\" | \"small\" | \"inherit\";\n\nexport type StzhLinkFocusEvent = {\n component: \"stzh-link\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhLinkBlurEvent = {\n component: \"stzh-link\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhLinkClickEvent = {\n component: \"stzh-link\";\n originalEvent: MouseEvent;\n href: string;\n};\n\n/* Menu (Item) */\n\nexport type StzhMenuVariant = \"default\" | \"secondary\";\nexport type StzhMenuSize = \"default\" | \"large\";\n\nexport type StzhMenuItemFocusEvent = {\n component: \"stzh-menu-item\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhMenuItemBlurEvent = {\n component: \"stzh-menu-item\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhMenuItemClickEvent = {\n component: \"stzh-menu-item\";\n originalEvent: MouseEvent;\n href: string;\n};\n\n/* Carousel */\n\nexport type StzhCarouselSlideStartEvent = {\n component: \"stzh-carousel\";\n index: number;\n};\n\nexport type StzhCarouselSlidePassedEvent = {\n component: \"stzh-carousel\";\n index: number;\n};\n\nexport type StzhCarouselSlideEndEvent = {\n component: \"stzh-carousel\";\n index: number;\n};\n\n/* Chipselect */\n\nexport type StzhChipselectItem = {\n label: string;\n value: string;\n disabled?: boolean;\n variant?: StzhChipVariant;\n type?: StzhChipType;\n inverted?: boolean;\n counter?: string;\n icon?: string;\n size?: StzhChipSize;\n};\n\nexport type StzhChipselectChangeEvent = {\n component: \"stzh-chipselect\";\n value: string[] | string;\n};\n\n/* Gallery */\n\nexport type StzhGalleryItem = {\n width: number;\n height: number;\n src: string;\n srcLightbox?: string;\n srcsetLightbox?: string;\n alt?: string;\n copyright?: string;\n heading?: string;\n headingLightbox?: string;\n caption?: string;\n captionLightbox?: string;\n lightboxHtml?: string;\n hideCounter?: boolean;\n};\n\n/* Datalist */\n\nexport type StzhDatalistItemEntry = {\n value: string;\n leadingIcon?: string;\n label?: string;\n meta?: string;\n icon?: string;\n iconLabel?: string;\n iconTooltip?: string;\n statusLabel?: string;\n statusType?: StzhStatusType;\n href?: string;\n rel?: string;\n target?: string;\n items?: StzhDatalistItemEntry[];\n};\n\nexport type StzhDatalistVariant = \"default\" | \"table\";\nexport type StzhDatalistDirection = \"vertical\" | \"horizontal\";\n\nexport type StzhDatalistVariantChangeEvent = {\n component: \"stzh-datalist\";\n value: StzhDatalistVariant;\n};\n\nexport type StzhDatalistDirectionChangeEvent = {\n component: \"stzh-datalist\";\n value: \"vertical\" | \"horizontal\";\n};\n\n/* Datalist Item */\n\nexport type StzhDatalistItemActionClickEvent = {\n component: \"stzh-datalist-item\";\n originalEvent: MouseEvent;\n};\n\nexport type StzhDatalistItemClickEvent = {\n component: \"stzh-datalist-item\";\n originalEvent: MouseEvent;\n href: string;\n};\n\n/* Datamessagelist */\n\nexport type StzhDatamessagelistItemEntryMeta = {\n label: string;\n value: string;\n};\n\nexport type StzhDatamessagelistItemEntryAction = {\n id: string | number;\n icon: string;\n label: string;\n badge?: string;\n};\n\nexport type StzhDatamessagelistItemEntryTag = {\n icon: string;\n label: string;\n type?: StzhChipType;\n inverted?: boolean;\n};\n\nexport type StzhDatamessagelistItemEntryLoadingStatus = {\n percent: number;\n label: string;\n type: \"default\" | \"success\" | \"warning\" | \"error\";\n};\n\nexport type StzhDatamessagelistItemClickEvent = {\n component: \"stzh-datamessagelist-item\";\n originalEvent: MouseEvent;\n href: string;\n};\n\nexport type StzhDatamessagelistItemActionClickEvent = {\n component: \"stzh-datamessagelist-item\";\n action: StzhDatamessagelistItemEntryAction;\n originalEvent: MouseEvent;\n};\n\n/* Cta */\n\nexport type StzhCtaFocusEvent = {\n component: \"stzh-cta\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhCtaBlurEvent = {\n component: \"stzh-cta\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhCtaClickEvent = {\n component: \"stzh-cta\";\n originalEvent: MouseEvent;\n href: string;\n};\n\n/* Tag */\n\nexport type StzhTagSize = \"default\" | \"large\";\nexport type StzhTagType = \"default\" | \"secondary\";\n\nexport type StzhTagClickEvent = {\n component: \"stzh-tag\";\n originalEvent: MouseEvent;\n href: string;\n};\n\nexport type StzhTagFocusEvent = {\n component: \"stzh-tag\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhTagBlurEvent = {\n component: \"stzh-tag\";\n originalEvent: FocusEvent;\n};\n\n/* Chip */\n\nexport type StzhChipVariant = \"tag\" | \"filter\" | \"input\";\nexport type StzhChipSize = \"default\" | \"small\" | \"large\";\nexport type StzhChipType = \"default\" | \"success\" | \"warning\" | \"error\" | \"info\";\n\nexport type StzhChipClickEvent = {\n component: \"stzh-chip\";\n originalEvent: MouseEvent;\n href: string;\n};\n\nexport type StzhChipRemoveEvent = {\n component: \"stzh-chip\";\n originalEvent: MouseEvent;\n};\n\nexport type StzhChipFocusEvent = {\n component: \"stzh-chip\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhChipBlurEvent = {\n component: \"stzh-chip\";\n originalEvent: FocusEvent;\n};\n\n/* VBZ Major Ticker */\n\nexport type StzhVbzMajortickerDisturbance = {\n id: string;\n head: string;\n text: string;\n startDate: Date;\n endDate: Date;\n altStart: string;\n altEnd: string;\n infoUrl?: VbzTickerInfoUrl;\n};\n\nexport type StzhVbzMajortickerDisturbanceFetchedEvent = {\n component: \"stzh-vbz-majorticker\";\n disturbance: StzhVbzMajortickerDisturbance | null;\n};\n\n/* VBZ Ticker */\n\nexport type VbzTickerInfoUrl = {\n name: string;\n url: string;\n};\n\nexport type VbzTickerDisturbance = {\n id: string;\n head: string;\n startDate: Date;\n endDate: Date;\n altStart: string;\n altEnd: string;\n baseType?: string;\n infoUrl?: VbzTickerInfoUrl;\n category:\n | typeof VBZ.DISTURBANCE_INFORMATION\n | typeof VBZ.DISTURBANCE_CONSTRUCTION\n | typeof VBZ.DISTURBANCE_NORMAL\n | typeof VBZ.DISTURBANCE_EVENT\n | typeof VBZ.DISTURBANCE_BUS;\n};\n\nexport type VbzTickerLine = {\n line: VBZ.Lines;\n name: string;\n disturbances: VbzTickerDisturbance[];\n // whether normal or big disturbance for this line exist\n alert: boolean;\n // 2 = Fernverkehr / 16 = Schiff / 32 = S-Bahn/Reg / 64 = Bus / 128 = Bergbahn / 256 = Nachtnetz / 512 = Tram\n category: \"2\" | \"16\" | \"32\" | \"64\" | \"128\" | \"256\" | \"512\";\n};\n\n/* VBZ Line Chip */\n\nexport type StzhVbzLinechipLine = {\n color: string;\n background: string;\n comment?: string;\n};\n\nexport type StzhVbzLinechipFocusEvent = {\n component: \"stzh-vbz-linechip\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhVbzLinechipBlurEvent = {\n component: \"stzh-vbz-linechip\";\n originalEvent: FocusEvent;\n};\n\n/* Clamp */\n\nexport type StzhClampClampEvent = {\n component: \"stzh-clamp\";\n clamped: boolean;\n};\n\nexport type StzhClampExpandEvent = {\n component: \"stzh-clamp\";\n expanded: boolean;\n};\n\n/* Image Comparison */\n\nexport type StzhImagecomparisonChangeEvent = {\n component: \"stzh-imagecomparison\";\n originalEvent: InputEvent;\n value: number;\n};\n\n/* Dialog */\n\nexport type StzhDialogOpenEvent = {\n component: \"stzh-dialog\";\n};\n\nexport type StzhDialogCloseEvent = {\n component: \"stzh-dialog\";\n};\n\n/* Contact */\n\nexport type ContactEmail = {\n label: string;\n text: string;\n href?: string;\n analyticsId?: string;\n};\n\nexport type ContactNumber = {\n type: \"tel\" | \"fax\";\n label: string;\n number: string;\n analyticsId?: string;\n};\n\nexport type StzhContactAvailabilityItem = {\n weekday: string;\n hours: string[];\n};\n\n/* Eventinfo */\n\nexport type StzhEventinfoItemInput = {\n calendarUrl?: string;\n calendarLabel?: string;\n start: string | Date;\n end: string | Date;\n};\n\nexport type StzhEventinfoItem = {\n calendarUrl?: string;\n calendarLabel?: string;\n start: Date;\n end: Date;\n};\n\nexport type StzhEventinfoMonth = {\n name: string;\n events: StzhEventinfoItem[];\n};\n\n/* Overlay */\n\nexport type StzhOverlayOpenEvent = {\n component: \"stzh-overlay\";\n};\n\nexport type StzhOverlayCloseEvent = {\n component: \"stzh-overlay\";\n};\n\n/* Banner */\n\nexport type StzhBannerOpenEvent = {\n component: \"stzh-banner\";\n};\n\nexport type StzhBannerCloseEvent = {\n component: \"stzh-banner\";\n};\n\n/* Message */\n\nexport type StzhMessageOpenEvent = {\n component: \"stzh-message\";\n};\n\nexport type StzhMessageCloseEvent = {\n component: \"stzh-message\";\n};\n\n/* Toastbar */\n\nexport type StzhToastbarInitialToast = {\n label: string;\n type?: StzhToastType;\n link?:\n | HTMLStzhLinkElement\n | {\n href: string;\n label: string;\n };\n cookie?: string;\n cookieExpires?: number;\n};\n\n/* Disturber */\n\nexport type StzhDisturberOpenEvent = {\n component: \"stzh-disturber\";\n};\n\nexport type StzhDisturberCloseEvent = {\n component: \"stzh-disturber\";\n};\n\nexport type StzhDisturberOpenedEvent = {\n component: \"stzh-disturber\";\n};\n\nexport type StzhDisturberClosedEvent = {\n component: \"stzh-disturber\";\n};\n\n/* Toast */\n\nexport type StzhToastType = \"info\" | \"success\" | \"warning\" | \"error\";\n\nexport type StzhToastOpenEvent = {\n component: \"stzh-toast\";\n};\n\nexport type StzhToastCloseEvent = {\n component: \"stzh-toast\";\n};\n\nexport type StzhToastOpenedEvent = {\n component: \"stzh-toast\";\n};\n\nexport type StzhToastClosedEvent = {\n component: \"stzh-toast\";\n};\n\n/* Ghettobox */\n\nexport type StzhGhettoboxOpenEvent = {\n component: \"stzh-ghettobox\";\n};\n\nexport type StzhGhettoboxCloseEvent = {\n component: \"stzh-ghettobox\";\n};\n\n/* Input */\n\nexport type StzhInputChangeEvent = {\n component: \"stzh-input\";\n originalEvent: InputEvent | MouseEvent;\n value: string;\n};\n\nexport type StzhInputChangedEvent = {\n component: \"stzh-input\";\n originalEvent: InputEvent | MouseEvent;\n value: string;\n};\n\nexport type StzhInputFocusEvent = {\n component: \"stzh-input\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhInputBlurEvent = {\n component: \"stzh-input\";\n originalEvent: FocusEvent;\n};\n\n/* Popover */\n\nexport type StzhPopoverOpenEvent = {\n component: \"stzh-popover\";\n};\n\nexport type StzhPopoverOpenedEvent = {\n component: \"stzh-popover\";\n};\n\nexport type StzhPopoverCloseEvent = {\n component: \"stzh-popover\";\n};\n\nexport type StzhPopoverClosedEvent = {\n component: \"stzh-popover\";\n};\n\n/* Timeline */\n\nexport type StzhTimelineFoldableChangeEvent = {\n component: \"stzh-timeline\";\n value: boolean;\n};\n\n/* TimelineItem */\n\nexport type StzhTimelineItemOpenEvent = {\n component: \"stzh-timeline-item\";\n};\n\nexport type StzhTimelineItemOpenedEvent = {\n component: \"stzh-timeline-item\";\n};\n\nexport type StzhTimelineItemCloseEvent = {\n component: \"stzh-timeline-item\";\n};\n\nexport type StzhTimelineItemClosedEvent = {\n component: \"stzh-timeline-item\";\n};\n\nexport type StzhTimelineItemFocusEvent = {\n component: \"stzh-timeline-item\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhTimelineItemBlurEvent = {\n component: \"stzh-timeline-item\";\n originalEvent: FocusEvent;\n};\n\n/* Accordion */\n\nexport type StzhAccordionVariant = \"default\" | \"title\" | \"table\" | \"menu\";\n\nexport type StzhAccordionVariantChangeEvent = {\n component: \"stzh-accordion\";\n value: StzhAccordionVariant;\n};\n\nexport type StzhAccordionItemOpenEvent = {\n component: \"stzh-accordion-item\";\n};\n\nexport type StzhAccordionItemOpenedEvent = {\n component: \"stzh-accordion-item\";\n};\n\nexport type StzhAccordionItemCloseEvent = {\n component: \"stzh-accordion-item\";\n};\n\nexport type StzhAccordionItemClosedEvent = {\n component: \"stzh-accordion-item\";\n};\n\nexport type StzhAccordionItemFocusEvent = {\n component: \"stzh-accordion-item\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhAccordionItemBlurEvent = {\n component: \"stzh-accordion-item\";\n originalEvent: FocusEvent;\n};\n\n/* Pi Menu */\n\nexport type StzhPiMenuOpenEvent = {\n component: \"stzh-pi-menu\";\n};\n\nexport type StzhPiMenuOpenedEvent = {\n component: \"stzh-pi-menu\";\n};\n\nexport type StzhPiMenuCloseEvent = {\n component: \"stzh-pi-menu\";\n};\n\nexport type StzhPiMenuClosedEvent = {\n component: \"stzh-pi-menu\";\n};\n\nexport type StzhPiMenuItemClickEvent = {\n component: \"stzh-pi-menu\";\n originalEvent: MouseEvent;\n};\n\n/* Tooltip */\n\nexport type StzhTooltipOpenEvent = {\n component: \"stzh-tooltip\";\n};\n\nexport type StzhTooltipOpenedEvent = {\n component: \"stzh-tooltip\";\n};\n\nexport type StzhTooltipCloseEvent = {\n component: \"stzh-tooltip\";\n};\n\nexport type StzhTooltipClosedEvent = {\n component: \"stzh-tooltip\";\n};\n\n/* Radio */\n\nexport type StzhRadioChangeEvent = {\n component: \"stzh-radio\";\n originalEvent: InputEvent;\n value: string;\n checked: boolean;\n};\n\nexport type StzhRadioFocusEvent = {\n component: \"stzh-radio\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhRadioBlurEvent = {\n component: \"stzh-radio\";\n originalEvent: FocusEvent;\n};\n\n/* Daterange */\n\nexport type StzhDaterangeRanges = \"today\" | \"tomorrow\" | \"next7days\";\n\n/* Dropdown */\n\nexport type StzhDropdownSize = \"default\" | \"small\" | \"tiny\" | StzhChipSize;\n\nexport type StzhDropdownOption = {\n text: string;\n value: string;\n disabled?: boolean;\n};\n\nexport type StzhDropdownChangeEvent = {\n component: \"stzh-dropdown\";\n value: string | string[];\n};\n\nexport type StzhDropdownItemAddEvent = {\n component: \"stzh-dropdown\";\n value: string;\n};\n\nexport type StzhDropdownItemRemoveEvent = {\n component: \"stzh-dropdown\";\n value: string;\n};\n\nexport type StzhDropdownOptionAddEvent = {\n component: \"stzh-dropdown\";\n value: string;\n};\n\nexport type StzhDropdownOptionRemoveEvent = {\n component: \"stzh-dropdown\";\n value: string;\n};\n\nexport type StzhDropdownOpenEvent = {\n component: \"stzh-dropdown\";\n};\n\nexport type StzhDropdowCloseEvent = {\n component: \"stzh-dropdown\";\n};\n\nexport type StzhDropdownFocusEvent = {\n component: \"stzh-dropdown\";\n originalEvent: {\n target: Element;\n };\n};\n\nexport type StzhDropdownBlurEvent = {\n component: \"stzh-dropdown\";\n};\n\nexport type StzhDropdowInitEvent = {\n component: \"stzh-dropdown\";\n};\n\n/** Progressbar */\n\nexport type StzhProgressbarDataItem = {\n label: string;\n icon?: string;\n disabled?: boolean;\n analyticsId?: string;\n};\n\n/* Progressbar Item */\n\nexport type StzhProgressbarItemClickEvent = {\n component: \"stzh-progressbar-item\";\n originalEvent: MouseEvent;\n index: number;\n};\n\nexport type StzhProgressbarItemDottedClickEvent = {\n component: \"stzh-progressbar-item\";\n originalEvent: MouseEvent;\n index: number;\n};\n\n/* Upload */\n\nexport type StzhUploadFilesItem = {\n name: string;\n size: number;\n [key: string]: any;\n};\n\nexport type StzhUploadFile = File & {\n xhr: XMLHttpRequest;\n status: string;\n upload: any;\n accepted: boolean;\n previewElement: HTMLElement;\n};\n\nexport type StzhUploadFileAddedEvent = {\n component: \"stzh-upload\";\n file: StzhUploadFile;\n};\n\nexport type StzhUploadFilesAddedEvent = {\n component: \"stzh-upload\";\n files: StzhUploadFile[];\n};\n\nexport type StzhUploadFileRemoveEvent = {\n component: \"stzh-upload\";\n file: StzhUploadFile;\n};\n\nexport type StzhUploadFileRemovedEvent = {\n component: \"stzh-upload\";\n file: StzhUploadFile;\n force: boolean;\n};\n\nexport type StzhUploadSendingEvent = {\n component: \"stzh-upload\";\n file: StzhUploadFile;\n xhr: XMLHttpRequest;\n formData: FormData;\n};\n\nexport type StzhUploadSendingMultipleEvent = {\n component: \"stzh-upload\";\n files: StzhUploadFile[];\n xhr: XMLHttpRequest;\n formData: FormData;\n};\n\nexport type StzhUploadProcessingEvent = {\n component: \"stzh-upload\";\n file: StzhUploadFile;\n};\n\nexport type StzhUploadProcessingMultipleEvent = {\n component: \"stzh-upload\";\n files: StzhUploadFile[];\n};\n\nexport type StzhUploadProgressEvent = {\n component: \"stzh-upload\";\n file: StzhUploadFile;\n progress: number;\n bytesSent: number;\n};\n\nexport type StzhUploadProgressTotalEvent = {\n component: \"stzh-upload\";\n totalUploadProgress: number;\n totalBytes: number;\n totalBytesSent: number;\n};\n\nexport type StzhUploadErrorEvent = {\n component: \"stzh-upload\";\n file: StzhUploadFile;\n message: string;\n xhr: XMLHttpRequest;\n};\n\nexport type StzhUploadErrorMultipleEvent = {\n component: \"stzh-upload\";\n files: StzhUploadFile[];\n message: string;\n xhr: XMLHttpRequest;\n};\n\nexport type StzhUploadSuccessEvent = {\n component: \"stzh-upload\";\n file: StzhUploadFile;\n responseText: string;\n event: ProgressEvent;\n};\n\nexport type StzhUploadSuccessMultipleEvent = {\n component: \"stzh-upload\";\n files: StzhUploadFile[];\n responseText: string;\n event: ProgressEvent;\n};\n\nexport type StzhUploadCanceledEvent = {\n component: \"stzh-upload\";\n file: StzhUploadFile;\n};\n\nexport type StzhUploadCanceledMultipleEvent = {\n component: \"stzh-upload\";\n files: StzhUploadFile[];\n};\n\nexport type StzhUploadCompleteEvent = {\n component: \"stzh-upload\";\n file: StzhUploadFile;\n};\n\nexport type StzhUploadCompleteMultipleEvent = {\n component: \"stzh-upload\";\n files: StzhUploadFile[];\n};\n\n// Merged Types\n\nexport type StzhFocusEvent =\n | StzhAccordionItemFocusEvent\n | StzhButtonFocusEvent\n | StzhCheckboxFocusEvent\n | StzhChipFocusEvent\n | StzhDropdownFocusEvent\n | StzhInputFocusEvent\n | StzhLinkFocusEvent\n | StzhMenuItemFocusEvent\n | StzhRadioFocusEvent\n | StzhToggleFocusEvent\n | StzhVbzLinechipFocusEvent\n | StzhSkiplinkFocusEvent;\n\n// ---\n// Prop Types\n// ---\n\nexport type StzhCalendarDateDisabledPredicate = (date: Date) => boolean;\n\nexport namespace Layout {\n export type Ratio = \"16:9\" | \"1:1\" | \"5:4\" | \"4:3\" | \"3:2\" | \"2:1\" | \"21:9\";\n\n export type Justify =\n | \"start\"\n | \"end\"\n | \"center\"\n | \"between\"\n | \"around\"\n | \"evenly\";\n\n export type Items = \"start\" | \"end\" | \"center\" | \"baseline\" | \"stretch\";\n\n export type JustifySelf = \"auto\" | Justify;\n\n export type AlignSelf = \"auto\" | Items;\n}\n\nexport namespace Space {\n export type Sizes =\n | \"xxxsmall\"\n | \"xxsmall\"\n | \"xsmall\"\n | \"small\"\n | \"medium\"\n | \"large\"\n | \"xlarge\"\n | \"xxlarge\"\n | \"xxxlarge\"\n | \"xxxxlarge\"\n | \"big\"\n | \"xbig\"\n | \"huge\"\n | \"xhuge\"\n | \"none\"\n | \"inherit\";\n\n export type Curves =\n | \"tiny\"\n | \"small\"\n | \"regular\"\n | \"medium\"\n | \"large\"\n | \"big\"\n | \"huge\"\n | \"none\";\n}\n\nexport namespace Font {\n export type Fonts = \"light\" | \"regular\" | \"medium\" | \"heavy\" | \"default\";\n\n export type Sizes =\n | \"pico\"\n | \"nano\"\n | \"micro\"\n | \"milli\"\n | \"centi\"\n | \"deci\"\n | \"regular\"\n | \"deca\"\n | \"hecto\"\n | \"kilo\"\n | \"mega\"\n | \"giga\"\n | \"hero\";\n\n export type Curves =\n | \"p1\"\n | \"p2\"\n | \"lead\"\n | \"caption\"\n | \"h4\"\n | \"h3\"\n | \"h2\"\n | \"h1\"\n | \"hero\"\n | \"h1home\"\n | \"default\"\n | \"none\";\n}\n\nexport namespace VBZ {\n export const BASE_TYPE_GLOBAL = \"GLOBAL\";\n\n export const CHANNEL_TICKER = \"ticker\";\n export const CHANNEL_INFO_URL_FILTER = \"stadt-zuerich.ch/vbz\";\n\n export const DISTURBANCE_GLOBAL = \"__global__\";\n export const DISTURBANCE_INFORMATION = \"0\";\n export const DISTURBANCE_CONSTRUCTION = \"1\";\n export const DISTURBANCE_NORMAL = \"2\";\n export const DISTURBANCE_EVENT = \"4\";\n export const DISTURBANCE_BUS = \"5\";\n\n export type Lines =\n | \"2\"\n | \"3\"\n | \"4\"\n | \"5\"\n | \"6\"\n | \"7\"\n | \"8\"\n | \"9\"\n | \"10\"\n | \"11\"\n | \"12\"\n | \"13\"\n | \"14\"\n | \"15\"\n | \"16\"\n | \"17\"\n | \"19\"\n | \"20\"\n | \"21\"\n | \"23\"\n | \"24\"\n | \"25\"\n | \"29\"\n | \"31\"\n | \"32\"\n | \"33\"\n | \"34\"\n | \"35\"\n | \"36\"\n | \"37\"\n | \"38\"\n | \"39\"\n | \"40\"\n | \"45\"\n | \"46\"\n | \"54\"\n | \"61\"\n | \"62\"\n | \"63\"\n | \"64\"\n | \"66\"\n | \"67\"\n | \"69\"\n | \"70\"\n | \"72\"\n | \"73\"\n | \"75\"\n | \"76\"\n | \"77\"\n | \"78\"\n | \"79\"\n | \"80\"\n | \"83\"\n | \"89\"\n | \"91\"\n | \"94\"\n | \"95\"\n | \"99\"\n | \"151\"\n | \"152\"\n | \"153\"\n | \"156\"\n | \"161\"\n | \"162\"\n | \"163\"\n | \"165\"\n | \"184\"\n | \"185\"\n | \"200\"\n | \"201\"\n | \"215\"\n | \"220\"\n | \"235\"\n | \"236\"\n | \"245\"\n | \"301\"\n | \"302\"\n | \"303\"\n | \"304\"\n | \"305\"\n | \"306\"\n | \"307\"\n | \"308\"\n | \"309\"\n | \"311\"\n | \"314\"\n | \"315\"\n | \"317\"\n | \"321\"\n | \"323\"\n | \"325\"\n | \"350\"\n | \"444\"\n | \"445\"\n | \"701\"\n | \"702\"\n | \"703\"\n | \"704\"\n | \"705\"\n | \"720\"\n | \"721\"\n | \"725\"\n | \"726\"\n | \"727\"\n | \"742\"\n | \"743\"\n | \"744\"\n | \"745\"\n | \"747\"\n | \"748\"\n | \"751\"\n | \"752\"\n | \"753\"\n | \"754\"\n | \"759\"\n | \"760\"\n | \"765\"\n | \"768\"\n | \"781\"\n | \"786\"\n | \"787\"\n | \"910\"\n | \"912\"\n | \"916\"\n | \"917\"\n | \"918\"\n | \"919\"\n | \"E\"\n | \"N\"\n | \"N1\"\n | \"N2\"\n | \"N4\"\n | \"N5\"\n | \"N6\"\n | \"N7\"\n | \"N8\"\n | \"N9\"\n | \"N10\"\n | \"N11\"\n | \"N12\"\n | \"N13\"\n | \"N14\"\n | \"N15\"\n | \"N16\"\n | \"N17\"\n | \"N18\"\n | \"N19\"\n | \"N30\"\n | \"N31\"\n | \"N32\"\n | \"N33\"\n | \"N34\"\n | \"N45\"\n | \"N72\"\n | \"N78\"\n | \"SN1\"\n | \"SN4\"\n | \"SN5\"\n | \"SN6\"\n | \"SN7\"\n | \"SN8\"\n | \"SN9\"\n | \"S2\"\n | \"S3\"\n | \"S4\"\n | \"S5\"\n | \"S6\"\n | \"S7\"\n | \"S8\"\n | \"S9\"\n | \"S10\"\n | \"S11\"\n | \"S14\"\n | \"S15\"\n | \"S16\"\n | \"S18\"\n | \"S19\"\n | \"S20\"\n | \"S21\"\n | \"S23\"\n | \"S24\"\n | \"S25\";\n}\n\n// ---\n// Stencil component types\n// ---\n\nexport * from \"./components\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,MAAM;AACN,sBAAsB;AACtB,MAAM;AA8wDN,MAAM,KAAW,GAAG,CAoMnB;AApMD,WAAiB,GAAG;EACL,oBAAgB,GAAG,QAAQ,CAAC;EAE5B,kBAAc,GAAG,QAAQ,CAAC;EAC1B,2BAAuB,GAAG,sBAAsB,CAAC;EAEjD,sBAAkB,GAAG,YAAY,CAAC;EAClC,2BAAuB,GAAG,GAAG,CAAC;EAC9B,4BAAwB,GAAG,GAAG,CAAC;EAC/B,sBAAkB,GAAG,GAAG,CAAC;EACzB,qBAAiB,GAAG,GAAG,CAAC;EACxB,mBAAe,GAAG,GAAG,CAAC;AAyLrC,CAAC,EApMgB,GAAG,KAAH,GAAG,QAoMnB;AAED,MAAM;AACN,0BAA0B;AAC1B,MAAM;AAEN,cAAc,cAAc,CAAC","sourcesContent":["// ---\n// Global window types\n// ---\n\nimport { StzhLocaleAdapter } from \"./utils/date-adapter\";\n\nimport {\n StzhLocaleComponent,\n StzhLocaleFormats,\n StzhLocaleGlobals,\n} from \"./utils/translation-utils\";\n\nexport type WindowStzhComponents = {\n version: string;\n supportedLocales: string[];\n defaultLocale: string;\n translations: null | StzhLocaleComponent;\n translationsLoading: Promise<StzhLocaleComponent>;\n pathMedia: string;\n pathTranslations: string;\n pathVendors: string;\n cacheTranslations: boolean;\n formats: StzhLocaleFormats;\n fixAutofocus: boolean;\n fixHashfocus: boolean;\n utils: {\n getLocale: (element: HTMLElement) => string;\n fetchTranslations: (\n host: HTMLElement,\n component: string\n ) => Promise<StzhLocaleComponent & any>;\n\n format: (date: Date, type: string) => string;\n parse: (string: string, type: string) => Date;\n formatSpan: (\n date: Date | string,\n date2: Date | string,\n type: string\n ) => string;\n parseSpan: (string: string, type: string) => [Date, Date, string];\n createFormatParseAdapter: (\n formats: StzhLocaleFormats,\n globals: StzhLocaleGlobals\n ) => StzhLocaleAdapter;\n };\n};\n\ndeclare global {\n interface Window {\n stzhComponents: WindowStzhComponents;\n // global third party library\n pannellum: any;\n Dropzone: any;\n proj4: any;\n // readspeaker lib APIs\n readpage: any;\n ReadSpeaker: any;\n rsConf: any;\n rspkr: any;\n }\n}\n\n// ---\n// Event Types\n// ---\n\n/* Sortable */\n\nexport type StzhSortableUpdateEvent = {\n component: \"stzh-sortable\";\n data: string[];\n item: HTMLElement;\n newIndex: number;\n oldIndex: number;\n};\n\nexport type StzhSortableDisableEvent = {\n component: \"stzh-sortable\";\n disabled: boolean;\n};\n\n/* Panorama */\n\nexport type PanoramaScene = {\n sceneId: string;\n imageSrc: string;\n imageTitle: string;\n\n imageAuthor?: string;\n imageType?: \"equirectangular\" | \"cubemap\" | \"multires\";\n caption?: string;\n copyright?: string;\n\n pitch?: number;\n yaw?: number;\n hfov?: number;\n\n hotspots: PanoramaSceneHotSpot[];\n};\n\nexport type PanoramaScenesLibrary = {\n [sceneKey: string]: {\n title?: string;\n author?: string;\n panorama: string;\n type?: \"equirectangular\" | \"cubemap\" | \"multires\";\n\n pitch?: number;\n yaw?: number;\n hfov?: number;\n\n hotSpots: PanoramaSceneHotSpot[];\n };\n};\n\nexport type PanoramaSceneHotSpot = {\n pitch: number;\n yaw: number;\n type: string;\n text: string;\n url?: string;\n id?: string;\n sceneId?: string;\n targetPitch?: number;\n targetYaw?: number;\n\n cssClass?: string;\n createTooltipFunc?: Function;\n createTooltipArgs?: any;\n};\n\nexport type StzhPanoramaLoadEvent = {\n component: \"stzh-panorama\";\n};\n\nexport type StzhPanoramaChangeEvent = {\n component: \"stzh-panorama\";\n value: { pitch: number; yaw: number; hfov: number };\n};\n\nexport type StzhPanoramaFullscreenChangeEvent = {\n component: \"stzh-panorama\";\n value: boolean;\n};\n\nexport type StzhPanoramaSceneChangeEvent = {\n component: \"stzh-panorama\";\n value: string;\n};\n\nexport type StzhPanoramaZoomChangeEvent = {\n component: \"stzh-panorama\";\n value: number;\n};\n\n/* Iframe */\n\nexport type StzhIframeView = \"iframe\" | \"cookiewall\" | \"preview\";\n\nexport type StzhIframeViewChangeEvent = {\n component: \"stzh-iframe\";\n value: StzhIframeView;\n};\n\nexport type StzhIframePreviewSkipEvent = {\n component: \"stzh-iframe\";\n};\n\n/* Olmap */\n\nexport type OlmapLayer = {\n title?: string;\n thumbnailUrl: string;\n options: {\n url: string;\n layer: string;\n matrixSet: string;\n origin: number[];\n extent: number[];\n };\n};\n\nexport type StzhOlmapInitializedEvent = {\n component: \"stzh-olmap\";\n};\n\nexport type StzhOlmapPostRenderEvent = {\n component: \"stzh-olmap\";\n};\n\nexport type StzhOlmapMoveStartEvent = {\n component: \"stzh-olmap\";\n};\n\nexport type StzhOlmapMoveEndEvent = {\n component: \"stzh-olmap\";\n};\n\n/* Sticky */\n\nexport type StzhStickyStuckTopEvent = {\n component: \"stzh-sticky\";\n sticky: boolean;\n};\n\nexport type StzhStickyStuckBottomEvent = {\n component: \"stzh-sticky\";\n sticky: boolean;\n};\n\n/* Table */\n\nexport type StzhDatatableCellData = {\n value: string | number;\n isHeader?: boolean;\n align?: \"left\" | \"right\" | \"center\";\n valign?: \"auto\" | \"middle\" | \"bottom\" | \"top\";\n colspan?: number;\n rowspan?: number;\n id?: string;\n};\n\nexport type StzhDatatableRowData = {\n [key: string]: StzhDatatableCellData;\n};\n\nexport type StzhDatatableInputRowData = {\n [key: string]: StzhDatatableCellData | string | number;\n};\n\nexport type StzhDatatableColumnData = {\n key: string;\n text?: string;\n align?: \"left\" | \"right\" | \"center\";\n valign?: \"auto\" | \"middle\" | \"bottom\" | \"top\";\n sort?:\n | boolean\n | {\n type?: \"numerical\" | \"text\";\n field?: string;\n };\n fixed?: \"left\" | \"right\";\n isHeader?: boolean;\n colspan?: number;\n rowspan?: number;\n hideColumnHeading?: boolean;\n analyticsId?: string;\n style?: {\n [key: string]: string;\n };\n};\n\nexport type StzhDatatableRowClickEvent = {\n component: \"stzh-datatable\";\n row: any;\n originalEvent: MouseEvent;\n};\n\nexport type StzhDatatableCellClickEvent = {\n component: \"stzh-datatable\";\n row: any;\n column: any;\n cellIndex: number;\n rowIndex: number;\n originalEvent: MouseEvent;\n};\n\nexport type StzhDatatableHeadingCellClickEvent = {\n component: \"stzh-datatable\";\n column: any;\n index: number;\n originalEvent: MouseEvent;\n};\n\nexport type StzhDatatableSortClickEvent = {\n component: \"stzh-datatable\";\n column: any;\n originalEvent: MouseEvent;\n};\n\nexport type StzhDatatableSortByChangeEvent = {\n component: \"stzh-datatable\";\n value: string;\n oldValue: string;\n};\n\nexport type StzhDatatableSortDirectionChangeEvent = {\n component: \"stzh-datatable\";\n value: \"asc\" | \"desc\";\n oldValue: \"asc\" | \"desc\";\n};\n\n/* Archivelist */\n\nexport type StzhArchivelistItem = {\n label: string;\n labelClamp?: any; // attributes of HTMLStzhClampElement\n href: string;\n dateline?: string;\n description?: string;\n descriptionClamp?: any; // attributes of HTMLStzhClampElement\n};\n\nexport type StzhArchivelistItemClickEvent = {\n component: \"stzh-archivelist\";\n item: StzhArchivelistItem;\n originalEvent: MouseEvent;\n};\n\n/* Anchornav */\n\nexport type StzhAnchornavItem = {\n label: string;\n href?: string;\n icon?: string;\n};\n\nexport type StzhAnchornavItemClickEvent = {\n component: \"stzh-anchornav\";\n item: StzhAnchornavItem;\n originalEvent: MouseEvent;\n};\n\n/* TopnewsMostsearchedSection */\n\nexport type StzhTopnewsItem = {\n subtitle?: string;\n label: string;\n href?: string;\n isHighlighted?: boolean;\n};\n\nexport type StzhMostsearchedItem = {\n label: string;\n href: string;\n};\n\n/* VBZ Quicklinks */\n\nexport type StzhVbzQuicklink = {\n label: string;\n href: string;\n};\n\n/* Status */\n\nexport type StzhStatusType =\n | \"default\"\n | \"success\"\n | \"warning\"\n | \"error\"\n | \"info\";\n\n/* Badge */\n\nexport type StzhBadgeType =\n | \"default\"\n | \"success\"\n | \"warning\"\n | \"error\"\n | \"info\";\n\n/* Actionset */\n\nexport type StzhActionsetItem = {\n id: string;\n label?: string;\n icon?: string;\n iconPosition?: \"left\" | \"right\";\n iconOnly?: boolean;\n badge?: string;\n badgeEmpty?: boolean;\n badgeType?: StzhBadgeType;\n variant?: StzhButtonVariant;\n size?: StzhButtonSize;\n badgePosition?: \"icon\" | \"button\";\n tooltipContent?: string;\n};\n\nexport type StzhActionsetItemClickEvent = {\n component: \"stzh-actionset\";\n action: StzhActionsetItem;\n originalEvent: MouseEvent;\n};\n\n/* Audio */\n\nexport type StzhAudioPlayEvent = {\n component: \"stzh-audio\";\n};\n\nexport type StzhAudioPlayingEvent = {\n component: \"stzh-audio\";\n};\n\nexport type StzhAudioPauseEvent = {\n component: \"stzh-audio\";\n};\n\nexport type StzhAudioReplayEvent = {\n component: \"stzh-audio\";\n};\n\nexport type StzhAudioEndEvent = {\n component: \"stzh-audio\";\n};\n\nexport type StzhAudioEndedEvent = {\n component: \"stzh-audio\";\n};\n\nexport type StzhAudioErrorEvent = {\n component: \"stzh-audio\";\n originalEvent: ErrorEvent;\n};\n\n/* Share */\n\nexport type ShareService =\n | \"facebook\"\n | \"twitter\"\n | \"linkedin\"\n | \"xing\"\n | \"mail\";\n\n/* Footer Editor */\n\nexport type StzhEditorLink = {\n label: string;\n href?: string;\n icon?: string;\n rel?: string;\n target?: string;\n};\n\n/* Header */\n\nexport type StzhHeaderMenuItem = {\n label: string;\n href?: string;\n items?: StzhHeaderMenuItem[];\n id?: string;\n};\n\nexport type StzhHeaderMetanavItem = {\n label: string;\n labelShort?: string;\n labelHidden?: boolean;\n stay?: boolean;\n stayAndShowInMobileMenu?: boolean;\n variant?: \"default\" | \"secondary\"; // used for menu-item and popover\n size?: \"default\" | \"large\"; // used for menu-item and popover\n important?: boolean;\n importantSubmenu?: boolean;\n badgeEmpty?: boolean;\n badgeType?: StzhBadgeType;\n badge?: string;\n icon?: string;\n iconOpen?: string;\n href?: string;\n target?: string;\n id?: string;\n items?: StzhHeaderMetanavItemChild[];\n itemButton?: StzhHeaderMetanavItemButton;\n cssOrder?: boolean;\n};\n\nexport type StzhHeaderMetanavItemChild = {\n label: string;\n href?: string;\n target?: string;\n id?: string;\n icon?: string;\n counter?: number;\n badge?: string;\n badgeType?: StzhBadgeType;\n};\n\nexport type StzhHeaderMetanavItemButton = {\n label: string;\n href?: string;\n target?: string;\n size?: StzhButtonSize;\n id?: string;\n};\n\nexport type StzhHeaderMetanavItemClickEvent = {\n component: \"stzh-header\";\n item: StzhHeaderMetanavItem;\n originalEvent: MouseEvent;\n};\n\nexport type StzhHeaderMetanavItemChildClickEvent = {\n component: \"stzh-header\";\n itemChild: StzhHeaderMetanavItemChild;\n originalEvent: MouseEvent;\n};\n\nexport type StzhHeaderMetanavItemButtonClickEvent = {\n component: \"stzh-header\";\n itemButton: StzhHeaderMetanavItemButton;\n originalEvent: MouseEvent;\n};\n\nexport type StzhHeaderMenuItemClickEvent = {\n component: \"stzh-header\";\n item: StzhHeaderMenuItem;\n originalEvent: MouseEvent;\n};\n\nexport type StzhHeaderLanguageChangeEvent = {\n component: \"stzh-header\";\n value: string;\n};\n\nexport type StzhHeaderSearchChangeEvent = {\n component: \"stzh-header\";\n originalEvent: InputEvent | MouseEvent;\n value: string;\n};\n\nexport type StzhHeaderSearchChangedEvent = {\n component: \"stzh-header\";\n originalEvent: InputEvent | MouseEvent;\n value: string;\n};\n\n/* App Nav */\nexport type StzhAppNavItem = {\n text: string;\n href: string;\n badge: string;\n badgeType: StzhBadgeType;\n icon: string;\n active: boolean;\n a11yCurrent: string;\n};\n\nexport type StzhAppNavItemClickEvent = {\n component: \"stzh-app-nav\";\n item: StzhAppNavItem;\n originalEvent: MouseEvent;\n};\n\n/* PI Pagetitle */\n\nexport type StzhPiPagetitleMenuItem = {\n label: string;\n href?: string;\n active?: boolean;\n items?: StzhPiPagetitleMenuItem[];\n id?: string;\n};\n\n/* Search */\n\nexport type StzhSearchOverlayCloseClickEvent = {\n component: \"stzh-search\";\n originalEvent: MouseEvent;\n};\n\n/* Breadcrumb */\n\nexport type StzhBreadcrumbItem = {\n label: string;\n href: string;\n};\n\nexport type StzhBreadcrumbItemClickEvent = {\n component: \"stzh-breadcrumb\";\n item: StzhBreadcrumbItem;\n originalEvent: MouseEvent;\n};\n\n/* Card */\n\nexport type StzhCardHeaderAction = {\n id: string;\n label?: string;\n icon?: string;\n badge?: string;\n badgeEmpty?: boolean;\n badgeType?: StzhBadgeType;\n};\n\nexport type StzhCardSubtitleClickEvent = {\n component: \"stzh-card\";\n originalEvent: MouseEvent;\n};\n\nexport type StzhCardCollapseEvent = {\n component: \"stzh-card\";\n collapsed: boolean;\n};\n\nexport type StzhCardClickEvent = {\n component: \"stzh-card\";\n originalEvent: MouseEvent;\n href: string;\n};\n\nexport type StzhCardStarClickEvent = {\n component: \"stzh-card\";\n starred: boolean;\n originalEvent: MouseEvent;\n};\n\nexport type StzhCardHeaderActionClickEvent = {\n component: \"stzh-card\";\n action: StzhCardHeaderAction;\n originalEvent: MouseEvent;\n};\n\n/* Card Navigation */\n\nexport type StzhCardNavigationClickEvent = {\n component: \"stzh-card-navigation\";\n originalEvent: MouseEvent;\n href: string;\n};\n\nexport type StzhPiCardNavigationClickEvent = {\n component: \"stzh-pi-content-navigation\";\n originalEvent: MouseEvent;\n href: string;\n};\n\n/* Pi Teaser */\n\nexport type StzhPiTeaserClickEvent = {\n component: \"stzh-pi-teaser\";\n originalEvent: MouseEvent;\n href: string;\n};\n\n/* Card Superteaser */\n\nexport type StzhCardSuperteaserClickEvent = {\n component: \"stzh-card-superteaser\";\n originalEvent: MouseEvent;\n href: string;\n};\n\n/* Card Searchresult */\n\nexport type StzhCardSearchresultClickEvent = {\n component: \"stzh-card-searchresult\";\n originalEvent: MouseEvent;\n href: string;\n};\n\n/* Search */\n\nexport type StzhSearchResult = {\n html?: string;\n href?: string;\n heading?: string;\n dateline?: string;\n description?: string;\n image?: string;\n imagePosition?: \"default\" | \"right\";\n tag?: string;\n topic?: string;\n service?: string;\n serviceColor?: string;\n serviceBackgroundColor?: string;\n meta?: string[];\n breadcrumbItems?: StzhBreadcrumbItem[];\n eventDateStart?: string;\n eventDateEnd?: string;\n eventLocation?: string;\n download?: string;\n downloadHeading?: string;\n downloadMeta?: string[];\n};\n\nexport type StzhSearchChipsResult = {\n label: string;\n value: string;\n amount?: number;\n options?: { text: string; value: string }[];\n};\n\n/* Microsite Teaserlist */\n\nexport type StzhMicrositeTeaserlistTag = {\n id: string;\n name: string;\n};\n\nexport type StzhMicrositeTeaserlistItem = {\n title?: string;\n description?: string;\n image?: string;\n link: string;\n tags: string[];\n teaserid: string;\n};\n\n/* Cardlist */\n\nexport type StzhCardlistCollapseAllEvent = {\n component: \"stzh-cardlist\";\n allCollapsed: boolean;\n};\n\n/* Calendar */\n\nexport type StzhCalendarChangeEvent = {\n component: \"stzh-calendar\";\n valueAsDate: Date;\n value: string;\n};\n\n/* Datepicker */\n\nexport type StzhDatepickerChangeEvent = {\n component: \"stzh-datepicker\";\n value: string;\n valueAsDate: Date;\n};\n\n/* Pagination */\n\nexport type StzhPaginationChangeEvent = {\n component: \"stzh-pagination\";\n page: number;\n};\n\n/* Timepicker */\n\nexport type StzhTimepickerChangeEvent = {\n component: \"stzh-timepicker\";\n value: string;\n};\n\n/* Monthyearpicker */\n\nexport type StzhMonthyearpickerChangeEvent = {\n component: \"stzh-monthyearpicker\";\n value: string;\n valueMonth: string;\n valueYear: string;\n};\n\n/* Amount */\n\nexport type StzhAmountChangeEvent = {\n component: \"stzh-amount\";\n value: string;\n};\n\n/* Appointments */\n\nexport type StzhAppointmentsChangeEvent = {\n component: \"stzh-appointments\";\n value: string;\n};\n\n/* Skiplink */\n\nexport type StzhSkiplinkFocusEvent = {\n component: \"stzh-skiplink\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhSkiplinkBlurEvent = {\n component: \"stzh-skiplink\";\n originalEvent: FocusEvent;\n};\n\n/* Checkbox */\n\nexport type StzhCheckboxChangeEvent = {\n component: \"stzh-checkbox\";\n originalEvent: InputEvent | Event;\n value: string;\n checked: boolean;\n};\n\nexport type StzhCheckboxFocusEvent = {\n component: \"stzh-checkbox\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhCheckboxBlurEvent = {\n component: \"stzh-checkbox\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhCheckboxgroupChangeEvent = {\n component: \"stzh-checkboxgroup\";\n value: string[];\n};\n\n/* Toggle */\n\nexport type StzhToggleChangeEvent = {\n component: \"stzh-toggle\";\n originalEvent: InputEvent;\n value: string;\n checked: boolean;\n};\n\nexport type StzhToggleFocusEvent = {\n component: \"stzh-toggle\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhToggleBlurEvent = {\n component: \"stzh-toggle\";\n originalEvent: FocusEvent;\n};\n\n/* Button */\n\nexport type StzhButtonVariant =\n | \"default\"\n | \"secondary\"\n | \"tertiary\"\n | \"tertiary-plain\";\nexport type StzhButtonSize = \"default\" | \"small\" | \"tiny\";\n\nexport type StzhButtonFocusEvent = {\n component: \"stzh-button\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhButtonBlurEvent = {\n component: \"stzh-button\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhButtonClickEvent = {\n component: \"stzh-button\";\n originalEvent: MouseEvent;\n href: string;\n};\n\nexport type StzhButtonChangeEvent = {\n component: \"stzh-button\";\n originalEvent: InputEvent;\n value: string;\n checked: boolean;\n};\n\n/* Link */\n\nexport type StzhLinkSize = \"default\" | \"small\" | \"inherit\";\n\nexport type StzhLinkFocusEvent = {\n component: \"stzh-link\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhLinkBlurEvent = {\n component: \"stzh-link\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhLinkClickEvent = {\n component: \"stzh-link\";\n originalEvent: MouseEvent;\n href: string;\n};\n\n/* Menu (Item) */\n\nexport type StzhMenuVariant = \"default\" | \"secondary\";\nexport type StzhMenuSize = \"default\" | \"large\";\n\nexport type StzhMenuItemFocusEvent = {\n component: \"stzh-menu-item\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhMenuItemBlurEvent = {\n component: \"stzh-menu-item\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhMenuItemClickEvent = {\n component: \"stzh-menu-item\";\n originalEvent: MouseEvent;\n href: string;\n};\n\n/* Carousel */\n\nexport type StzhCarouselSlideStartEvent = {\n component: \"stzh-carousel\";\n index: number;\n};\n\nexport type StzhCarouselSlidePassedEvent = {\n component: \"stzh-carousel\";\n index: number;\n};\n\nexport type StzhCarouselSlideEndEvent = {\n component: \"stzh-carousel\";\n index: number;\n};\n\n/* Chipselect */\n\nexport type StzhChipselectItem = {\n label: string;\n value: string;\n disabled?: boolean;\n variant?: StzhChipVariant;\n type?: StzhChipType;\n inverted?: boolean;\n counter?: string;\n icon?: string;\n size?: StzhChipSize;\n};\n\nexport type StzhChipselectChangeEvent = {\n component: \"stzh-chipselect\";\n value: string[] | string;\n};\n\n/* Gallery */\n\nexport type StzhGalleryItem = {\n width: number;\n height: number;\n src: string;\n srcLightbox?: string;\n srcsetLightbox?: string;\n alt?: string;\n copyright?: string;\n heading?: string;\n headingLightbox?: string;\n caption?: string;\n captionLightbox?: string;\n lightboxHtml?: string;\n hideCounter?: boolean;\n};\n\n/* Datalist */\n\nexport type StzhDatalistItemEntry = {\n value: string;\n leadingIcon?: string;\n label?: string;\n meta?: string;\n icon?: string;\n iconLabel?: string;\n iconTooltip?: string;\n statusLabel?: string;\n statusType?: StzhStatusType;\n href?: string;\n rel?: string;\n target?: string;\n items?: StzhDatalistItemEntry[];\n};\n\nexport type StzhDatalistVariant = \"default\" | \"table\";\nexport type StzhDatalistDirection = \"vertical\" | \"horizontal\";\n\nexport type StzhDatalistVariantChangeEvent = {\n component: \"stzh-datalist\";\n value: StzhDatalistVariant;\n};\n\nexport type StzhDatalistDirectionChangeEvent = {\n component: \"stzh-datalist\";\n value: \"vertical\" | \"horizontal\";\n};\n\n/* Datalist Item */\n\nexport type StzhDatalistItemActionClickEvent = {\n component: \"stzh-datalist-item\";\n originalEvent: MouseEvent;\n};\n\nexport type StzhDatalistItemClickEvent = {\n component: \"stzh-datalist-item\";\n originalEvent: MouseEvent;\n href: string;\n};\n\n/* Datamessagelist */\n\nexport type StzhDatamessagelistItemEntryMeta = {\n label: string;\n value: string;\n};\n\nexport type StzhDatamessagelistItemEntryAction = {\n id: string | number;\n icon: string;\n label: string;\n badge?: string;\n};\n\nexport type StzhDatamessagelistItemEntryTag = {\n icon: string;\n label: string;\n type?: StzhChipType;\n inverted?: boolean;\n};\n\nexport type StzhDatamessagelistItemEntryLoadingStatus = {\n percent: number;\n label: string;\n type: \"default\" | \"success\" | \"warning\" | \"error\";\n};\n\nexport type StzhDatamessagelistItemClickEvent = {\n component: \"stzh-datamessagelist-item\";\n originalEvent: MouseEvent;\n href: string;\n};\n\nexport type StzhDatamessagelistItemActionClickEvent = {\n component: \"stzh-datamessagelist-item\";\n action: StzhDatamessagelistItemEntryAction;\n originalEvent: MouseEvent;\n};\n\n/* Cta */\n\nexport type StzhCtaFocusEvent = {\n component: \"stzh-cta\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhCtaBlurEvent = {\n component: \"stzh-cta\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhCtaClickEvent = {\n component: \"stzh-cta\";\n originalEvent: MouseEvent;\n href: string;\n};\n\n/* Tag */\n\nexport type StzhTagSize = \"default\" | \"large\";\nexport type StzhTagType = \"default\" | \"secondary\";\n\nexport type StzhTagClickEvent = {\n component: \"stzh-tag\";\n originalEvent: MouseEvent;\n href: string;\n};\n\nexport type StzhTagFocusEvent = {\n component: \"stzh-tag\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhTagBlurEvent = {\n component: \"stzh-tag\";\n originalEvent: FocusEvent;\n};\n\n/* Chip */\n\nexport type StzhChipVariant = \"tag\" | \"filter\" | \"input\";\nexport type StzhChipSize = \"default\" | \"small\" | \"large\";\nexport type StzhChipType = \"default\" | \"success\" | \"warning\" | \"error\" | \"info\";\n\nexport type StzhChipClickEvent = {\n component: \"stzh-chip\";\n originalEvent: MouseEvent;\n href: string;\n};\n\nexport type StzhChipRemoveEvent = {\n component: \"stzh-chip\";\n originalEvent: MouseEvent;\n};\n\nexport type StzhChipFocusEvent = {\n component: \"stzh-chip\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhChipBlurEvent = {\n component: \"stzh-chip\";\n originalEvent: FocusEvent;\n};\n\n/* VBZ Major Ticker */\n\nexport type StzhVbzMajortickerDisturbance = {\n id: string;\n head: string;\n text: string;\n startDate: Date;\n endDate: Date;\n altStart: string;\n altEnd: string;\n infoUrl?: VbzTickerInfoUrl;\n};\n\nexport type StzhVbzMajortickerDisturbanceFetchedEvent = {\n component: \"stzh-vbz-majorticker\";\n disturbance: StzhVbzMajortickerDisturbance | null;\n};\n\n/* VBZ Ticker */\n\nexport type VbzTickerInfoUrl = {\n name: string;\n url: string;\n};\n\nexport type VbzTickerDisturbance = {\n id: string;\n head: string;\n startDate: Date;\n endDate: Date;\n altStart: string;\n altEnd: string;\n baseType?: string;\n infoUrl?: VbzTickerInfoUrl;\n category:\n | typeof VBZ.DISTURBANCE_INFORMATION\n | typeof VBZ.DISTURBANCE_CONSTRUCTION\n | typeof VBZ.DISTURBANCE_NORMAL\n | typeof VBZ.DISTURBANCE_EVENT\n | typeof VBZ.DISTURBANCE_BUS;\n};\n\nexport type VbzTickerLine = {\n line: VBZ.Lines;\n name: string;\n disturbances: VbzTickerDisturbance[];\n // whether normal or big disturbance for this line exist\n alert: boolean;\n // 2 = Fernverkehr / 16 = Schiff / 32 = S-Bahn/Reg / 64 = Bus / 128 = Bergbahn / 256 = Nachtnetz / 512 = Tram\n category: \"2\" | \"16\" | \"32\" | \"64\" | \"128\" | \"256\" | \"512\";\n};\n\n/* VBZ Line Chip */\n\nexport type StzhVbzLinechipLine = {\n color: string;\n background: string;\n comment?: string;\n};\n\nexport type StzhVbzLinechipFocusEvent = {\n component: \"stzh-vbz-linechip\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhVbzLinechipBlurEvent = {\n component: \"stzh-vbz-linechip\";\n originalEvent: FocusEvent;\n};\n\n/* Clamp */\n\nexport type StzhClampClampEvent = {\n component: \"stzh-clamp\";\n clamped: boolean;\n};\n\nexport type StzhClampExpandEvent = {\n component: \"stzh-clamp\";\n expanded: boolean;\n};\n\n/* Image Comparison */\n\nexport type StzhImagecomparisonChangeEvent = {\n component: \"stzh-imagecomparison\";\n originalEvent: InputEvent;\n value: number;\n};\n\n/* Dialog */\n\nexport type StzhDialogOpenEvent = {\n component: \"stzh-dialog\";\n};\n\nexport type StzhDialogCloseEvent = {\n component: \"stzh-dialog\";\n};\n\n/* Contact */\n\nexport type ContactEmail = {\n label: string;\n text: string;\n href?: string;\n analyticsId?: string;\n};\n\nexport type ContactNumber = {\n type: \"tel\" | \"fax\";\n label: string;\n number: string;\n analyticsId?: string;\n};\n\nexport type StzhContactAvailabilityItem = {\n weekday: string;\n hours: string[];\n};\n\n/* Eventinfo */\n\nexport type StzhEventinfoItemInput = {\n calendarUrl?: string;\n calendarLabel?: string;\n start: string | Date;\n end: string | Date;\n};\n\nexport type StzhEventinfoItem = {\n calendarUrl?: string;\n calendarLabel?: string;\n start: Date;\n end: Date;\n};\n\nexport type StzhEventinfoMonth = {\n name: string;\n events: StzhEventinfoItem[];\n};\n\n/* Overlay */\n\nexport type StzhOverlayOpenEvent = {\n component: \"stzh-overlay\";\n};\n\nexport type StzhOverlayCloseEvent = {\n component: \"stzh-overlay\";\n};\n\n/* Banner */\n\nexport type StzhBannerOpenEvent = {\n component: \"stzh-banner\";\n};\n\nexport type StzhBannerCloseEvent = {\n component: \"stzh-banner\";\n};\n\n/* Message */\n\nexport type StzhMessageOpenEvent = {\n component: \"stzh-message\";\n};\n\nexport type StzhMessageCloseEvent = {\n component: \"stzh-message\";\n};\n\n/* Toastbar */\n\nexport type StzhToastbarInitialToast = {\n label: string;\n type?: StzhToastType;\n link?:\n | HTMLStzhLinkElement\n | {\n href: string;\n label: string;\n };\n cookie?: string;\n cookieExpires?: number;\n};\n\n/* Disturber */\n\nexport type StzhDisturberOpenEvent = {\n component: \"stzh-disturber\";\n};\n\nexport type StzhDisturberCloseEvent = {\n component: \"stzh-disturber\";\n};\n\nexport type StzhDisturberOpenedEvent = {\n component: \"stzh-disturber\";\n};\n\nexport type StzhDisturberClosedEvent = {\n component: \"stzh-disturber\";\n};\n\n/* Toast */\n\nexport type StzhToastType = \"info\" | \"success\" | \"warning\" | \"error\";\n\nexport type StzhToastOpenEvent = {\n component: \"stzh-toast\";\n};\n\nexport type StzhToastCloseEvent = {\n component: \"stzh-toast\";\n};\n\nexport type StzhToastOpenedEvent = {\n component: \"stzh-toast\";\n};\n\nexport type StzhToastClosedEvent = {\n component: \"stzh-toast\";\n};\n\n/* Ghettobox */\n\nexport type StzhGhettoboxOpenEvent = {\n component: \"stzh-ghettobox\";\n};\n\nexport type StzhGhettoboxCloseEvent = {\n component: \"stzh-ghettobox\";\n};\n\n/* Input */\n\nexport type StzhInputChangeEvent = {\n component: \"stzh-input\";\n originalEvent: InputEvent | MouseEvent;\n value: string;\n};\n\nexport type StzhInputChangedEvent = {\n component: \"stzh-input\";\n originalEvent: InputEvent | MouseEvent;\n value: string;\n};\n\nexport type StzhInputFocusEvent = {\n component: \"stzh-input\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhInputBlurEvent = {\n component: \"stzh-input\";\n originalEvent: FocusEvent;\n};\n\n/* Popover */\n\nexport type StzhPopoverOpenEvent = {\n component: \"stzh-popover\";\n};\n\nexport type StzhPopoverOpenedEvent = {\n component: \"stzh-popover\";\n};\n\nexport type StzhPopoverCloseEvent = {\n component: \"stzh-popover\";\n};\n\nexport type StzhPopoverClosedEvent = {\n component: \"stzh-popover\";\n};\n\n/* Timeline */\n\nexport type StzhTimelineFoldableChangeEvent = {\n component: \"stzh-timeline\";\n value: boolean;\n};\n\n/* TimelineItem */\n\nexport type StzhTimelineItemOpenEvent = {\n component: \"stzh-timeline-item\";\n};\n\nexport type StzhTimelineItemOpenedEvent = {\n component: \"stzh-timeline-item\";\n};\n\nexport type StzhTimelineItemCloseEvent = {\n component: \"stzh-timeline-item\";\n};\n\nexport type StzhTimelineItemClosedEvent = {\n component: \"stzh-timeline-item\";\n};\n\nexport type StzhTimelineItemFocusEvent = {\n component: \"stzh-timeline-item\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhTimelineItemBlurEvent = {\n component: \"stzh-timeline-item\";\n originalEvent: FocusEvent;\n};\n\n/* Accordion */\n\nexport type StzhAccordionVariant = \"default\" | \"title\" | \"table\" | \"menu\";\n\nexport type StzhAccordionVariantChangeEvent = {\n component: \"stzh-accordion\";\n value: StzhAccordionVariant;\n};\n\nexport type StzhAccordionItemOpenEvent = {\n component: \"stzh-accordion-item\";\n};\n\nexport type StzhAccordionItemOpenedEvent = {\n component: \"stzh-accordion-item\";\n};\n\nexport type StzhAccordionItemCloseEvent = {\n component: \"stzh-accordion-item\";\n};\n\nexport type StzhAccordionItemClosedEvent = {\n component: \"stzh-accordion-item\";\n};\n\nexport type StzhAccordionItemFocusEvent = {\n component: \"stzh-accordion-item\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhAccordionItemBlurEvent = {\n component: \"stzh-accordion-item\";\n originalEvent: FocusEvent;\n};\n\n/* Pi Menu */\n\nexport type StzhPiMenuOpenEvent = {\n component: \"stzh-pi-menu\";\n};\n\nexport type StzhPiMenuOpenedEvent = {\n component: \"stzh-pi-menu\";\n};\n\nexport type StzhPiMenuCloseEvent = {\n component: \"stzh-pi-menu\";\n};\n\nexport type StzhPiMenuClosedEvent = {\n component: \"stzh-pi-menu\";\n};\n\nexport type StzhPiMenuItemClickEvent = {\n component: \"stzh-pi-menu\";\n originalEvent: MouseEvent;\n};\n\n/* Tooltip */\n\nexport type StzhTooltipOpenEvent = {\n component: \"stzh-tooltip\";\n};\n\nexport type StzhTooltipOpenedEvent = {\n component: \"stzh-tooltip\";\n};\n\nexport type StzhTooltipCloseEvent = {\n component: \"stzh-tooltip\";\n};\n\nexport type StzhTooltipClosedEvent = {\n component: \"stzh-tooltip\";\n};\n\n/* Radio */\n\nexport type StzhRadioChangeEvent = {\n component: \"stzh-radio\";\n originalEvent: InputEvent;\n value: string;\n checked: boolean;\n};\n\nexport type StzhRadioFocusEvent = {\n component: \"stzh-radio\";\n originalEvent: FocusEvent;\n};\n\nexport type StzhRadioBlurEvent = {\n component: \"stzh-radio\";\n originalEvent: FocusEvent;\n};\n\n/* Daterange */\n\nexport type StzhDaterangeRanges = \"today\" | \"tomorrow\" | \"next7days\";\n\n/* Dropdown */\n\nexport type StzhDropdownSize = \"default\" | \"small\" | \"tiny\" | StzhChipSize;\n\nexport type StzhDropdownOption = {\n text: string;\n value: string;\n disabled?: boolean;\n};\n\nexport type StzhDropdownChangeEvent = {\n component: \"stzh-dropdown\";\n value: string | string[];\n};\n\nexport type StzhDropdownItemAddEvent = {\n component: \"stzh-dropdown\";\n value: string;\n};\n\nexport type StzhDropdownItemRemoveEvent = {\n component: \"stzh-dropdown\";\n value: string;\n};\n\nexport type StzhDropdownOptionAddEvent = {\n component: \"stzh-dropdown\";\n value: string;\n};\n\nexport type StzhDropdownOptionRemoveEvent = {\n component: \"stzh-dropdown\";\n value: string;\n};\n\nexport type StzhDropdownOpenEvent = {\n component: \"stzh-dropdown\";\n};\n\nexport type StzhDropdowCloseEvent = {\n component: \"stzh-dropdown\";\n};\n\nexport type StzhDropdownFocusEvent = {\n component: \"stzh-dropdown\";\n originalEvent: {\n target: Element;\n };\n};\n\nexport type StzhDropdownBlurEvent = {\n component: \"stzh-dropdown\";\n};\n\nexport type StzhDropdowInitEvent = {\n component: \"stzh-dropdown\";\n};\n\n/** Progressbar */\n\nexport type StzhProgressbarDataItem = {\n label: string;\n icon?: string;\n disabled?: boolean;\n analyticsId?: string;\n};\n\n/* Progressbar Item */\n\nexport type StzhProgressbarItemClickEvent = {\n component: \"stzh-progressbar-item\";\n originalEvent: MouseEvent;\n index: number;\n};\n\nexport type StzhProgressbarItemDottedClickEvent = {\n component: \"stzh-progressbar-item\";\n originalEvent: MouseEvent;\n index: number;\n};\n\n/* Upload */\n\nexport type StzhUploadFilesItem = {\n name: string;\n size: number;\n [key: string]: any;\n};\n\nexport type StzhUploadFile = File & {\n xhr: XMLHttpRequest;\n status: string;\n upload: any;\n accepted: boolean;\n previewElement: HTMLElement;\n};\n\nexport type StzhUploadFileAddedEvent = {\n component: \"stzh-upload\";\n file: StzhUploadFile;\n};\n\nexport type StzhUploadFilesAddedEvent = {\n component: \"stzh-upload\";\n files: StzhUploadFile[];\n};\n\nexport type StzhUploadFileRemoveEvent = {\n component: \"stzh-upload\";\n file: StzhUploadFile;\n};\n\nexport type StzhUploadFileRemovedEvent = {\n component: \"stzh-upload\";\n file: StzhUploadFile;\n force: boolean;\n};\n\nexport type StzhUploadSendingEvent = {\n component: \"stzh-upload\";\n file: StzhUploadFile;\n xhr: XMLHttpRequest;\n formData: FormData;\n};\n\nexport type StzhUploadSendingMultipleEvent = {\n component: \"stzh-upload\";\n files: StzhUploadFile[];\n xhr: XMLHttpRequest;\n formData: FormData;\n};\n\nexport type StzhUploadProcessingEvent = {\n component: \"stzh-upload\";\n file: StzhUploadFile;\n};\n\nexport type StzhUploadProcessingMultipleEvent = {\n component: \"stzh-upload\";\n files: StzhUploadFile[];\n};\n\nexport type StzhUploadProgressEvent = {\n component: \"stzh-upload\";\n file: StzhUploadFile;\n progress: number;\n bytesSent: number;\n};\n\nexport type StzhUploadProgressTotalEvent = {\n component: \"stzh-upload\";\n totalUploadProgress: number;\n totalBytes: number;\n totalBytesSent: number;\n};\n\nexport type StzhUploadErrorEvent = {\n component: \"stzh-upload\";\n file: StzhUploadFile;\n message: string;\n xhr: XMLHttpRequest;\n};\n\nexport type StzhUploadErrorMultipleEvent = {\n component: \"stzh-upload\";\n files: StzhUploadFile[];\n message: string;\n xhr: XMLHttpRequest;\n};\n\nexport type StzhUploadSuccessEvent = {\n component: \"stzh-upload\";\n file: StzhUploadFile;\n responseText: string;\n event: ProgressEvent;\n};\n\nexport type StzhUploadSuccessMultipleEvent = {\n component: \"stzh-upload\";\n files: StzhUploadFile[];\n responseText: string;\n event: ProgressEvent;\n};\n\nexport type StzhUploadCanceledEvent = {\n component: \"stzh-upload\";\n file: StzhUploadFile;\n};\n\nexport type StzhUploadCanceledMultipleEvent = {\n component: \"stzh-upload\";\n files: StzhUploadFile[];\n};\n\nexport type StzhUploadCompleteEvent = {\n component: \"stzh-upload\";\n file: StzhUploadFile;\n};\n\nexport type StzhUploadCompleteMultipleEvent = {\n component: \"stzh-upload\";\n files: StzhUploadFile[];\n};\n\n// Merged Types\n\nexport type StzhFocusEvent =\n | StzhAccordionItemFocusEvent\n | StzhButtonFocusEvent\n | StzhCheckboxFocusEvent\n | StzhChipFocusEvent\n | StzhDropdownFocusEvent\n | StzhInputFocusEvent\n | StzhLinkFocusEvent\n | StzhMenuItemFocusEvent\n | StzhRadioFocusEvent\n | StzhToggleFocusEvent\n | StzhVbzLinechipFocusEvent\n | StzhSkiplinkFocusEvent;\n\n// ---\n// Prop Types\n// ---\n\nexport type StzhCalendarDateDisabledPredicate = (date: Date) => boolean;\n\nexport namespace Layout {\n export type Ratio = \"16:9\" | \"1:1\" | \"5:4\" | \"4:3\" | \"3:2\" | \"2:1\" | \"21:9\";\n\n export type Justify =\n | \"start\"\n | \"end\"\n | \"center\"\n | \"between\"\n | \"around\"\n | \"evenly\";\n\n export type Items = \"start\" | \"end\" | \"center\" | \"baseline\" | \"stretch\";\n\n export type JustifySelf = \"auto\" | Justify;\n\n export type AlignSelf = \"auto\" | Items;\n}\n\nexport namespace Space {\n export type Sizes =\n | \"xxxsmall\"\n | \"xxsmall\"\n | \"xsmall\"\n | \"small\"\n | \"medium\"\n | \"large\"\n | \"xlarge\"\n | \"xxlarge\"\n | \"xxxlarge\"\n | \"xxxxlarge\"\n | \"big\"\n | \"xbig\"\n | \"huge\"\n | \"xhuge\"\n | \"none\"\n | \"inherit\";\n\n export type Curves =\n | \"tiny\"\n | \"small\"\n | \"regular\"\n | \"medium\"\n | \"large\"\n | \"big\"\n | \"huge\"\n | \"none\";\n}\n\nexport namespace Font {\n export type Fonts = \"light\" | \"regular\" | \"medium\" | \"heavy\" | \"default\";\n\n export type Sizes =\n | \"pico\"\n | \"nano\"\n | \"micro\"\n | \"milli\"\n | \"centi\"\n | \"deci\"\n | \"regular\"\n | \"deca\"\n | \"hecto\"\n | \"kilo\"\n | \"mega\"\n | \"giga\"\n | \"hero\";\n\n export type Curves =\n | \"p1\"\n | \"p2\"\n | \"lead\"\n | \"caption\"\n | \"h4\"\n | \"h3\"\n | \"h2\"\n | \"h1\"\n | \"hero\"\n | \"h1home\"\n | \"default\"\n | \"none\";\n}\n\nexport namespace VBZ {\n export const BASE_TYPE_GLOBAL = \"GLOBAL\";\n\n export const CHANNEL_TICKER = \"ticker\";\n export const CHANNEL_INFO_URL_FILTER = \"stadt-zuerich.ch/vbz\";\n\n export const DISTURBANCE_GLOBAL = \"__global__\";\n export const DISTURBANCE_INFORMATION = \"0\";\n export const DISTURBANCE_CONSTRUCTION = \"1\";\n export const DISTURBANCE_NORMAL = \"2\";\n export const DISTURBANCE_EVENT = \"4\";\n export const DISTURBANCE_BUS = \"5\";\n\n export type Lines =\n | \"2\"\n | \"3\"\n | \"4\"\n | \"5\"\n | \"6\"\n | \"7\"\n | \"8\"\n | \"9\"\n | \"10\"\n | \"11\"\n | \"12\"\n | \"13\"\n | \"14\"\n | \"15\"\n | \"16\"\n | \"17\"\n | \"19\"\n | \"20\"\n | \"21\"\n | \"23\"\n | \"24\"\n | \"25\"\n | \"29\"\n | \"31\"\n | \"32\"\n | \"33\"\n | \"34\"\n | \"35\"\n | \"36\"\n | \"37\"\n | \"38\"\n | \"39\"\n | \"40\"\n | \"45\"\n | \"46\"\n | \"54\"\n | \"61\"\n | \"62\"\n | \"63\"\n | \"64\"\n | \"66\"\n | \"67\"\n | \"69\"\n | \"70\"\n | \"72\"\n | \"73\"\n | \"75\"\n | \"76\"\n | \"77\"\n | \"78\"\n | \"79\"\n | \"80\"\n | \"83\"\n | \"89\"\n | \"91\"\n | \"94\"\n | \"95\"\n | \"99\"\n | \"151\"\n | \"152\"\n | \"153\"\n | \"156\"\n | \"161\"\n | \"162\"\n | \"163\"\n | \"165\"\n | \"184\"\n | \"185\"\n | \"200\"\n | \"201\"\n | \"215\"\n | \"220\"\n | \"235\"\n | \"236\"\n | \"245\"\n | \"301\"\n | \"302\"\n | \"303\"\n | \"304\"\n | \"305\"\n | \"306\"\n | \"307\"\n | \"308\"\n | \"309\"\n | \"311\"\n | \"314\"\n | \"315\"\n | \"317\"\n | \"321\"\n | \"323\"\n | \"325\"\n | \"350\"\n | \"444\"\n | \"445\"\n | \"701\"\n | \"702\"\n | \"703\"\n | \"704\"\n | \"705\"\n | \"720\"\n | \"721\"\n | \"725\"\n | \"726\"\n | \"727\"\n | \"742\"\n | \"743\"\n | \"744\"\n | \"745\"\n | \"747\"\n | \"748\"\n | \"751\"\n | \"752\"\n | \"753\"\n | \"754\"\n | \"759\"\n | \"760\"\n | \"765\"\n | \"768\"\n | \"781\"\n | \"786\"\n | \"787\"\n | \"910\"\n | \"912\"\n | \"916\"\n | \"917\"\n | \"918\"\n | \"919\"\n | \"E\"\n | \"N\"\n | \"N1\"\n | \"N2\"\n | \"N4\"\n | \"N5\"\n | \"N6\"\n | \"N7\"\n | \"N8\"\n | \"N9\"\n | \"N10\"\n | \"N11\"\n | \"N12\"\n | \"N13\"\n | \"N14\"\n | \"N15\"\n | \"N16\"\n | \"N17\"\n | \"N18\"\n | \"N19\"\n | \"N30\"\n | \"N31\"\n | \"N32\"\n | \"N33\"\n | \"N34\"\n | \"N45\"\n | \"N72\"\n | \"N78\"\n | \"SN1\"\n | \"SN4\"\n | \"SN5\"\n | \"SN6\"\n | \"SN7\"\n | \"SN8\"\n | \"SN9\"\n | \"S2\"\n | \"S3\"\n | \"S4\"\n | \"S5\"\n | \"S6\"\n | \"S7\"\n | \"S8\"\n | \"S9\"\n | \"S10\"\n | \"S11\"\n | \"S14\"\n | \"S15\"\n | \"S16\"\n | \"S18\"\n | \"S19\"\n | \"S20\"\n | \"S21\"\n | \"S23\"\n | \"S24\"\n | \"S25\";\n}\n\n// ---\n// Stencil component types\n// ---\n\nexport * from \"./components\";\n"]}
@@ -113,12 +113,21 @@ function getPaddingObject(padding) {
113
113
  };
114
114
  }
115
115
  function rectToClientRect(rect) {
116
+ const {
117
+ x,
118
+ y,
119
+ width,
120
+ height
121
+ } = rect;
116
122
  return {
117
- ...rect,
118
- top: rect.y,
119
- left: rect.x,
120
- right: rect.x + rect.width,
121
- bottom: rect.y + rect.height
123
+ width,
124
+ height,
125
+ top: y,
126
+ left: x,
127
+ right: x + width,
128
+ bottom: y + height,
129
+ x,
130
+ y
122
131
  };
123
132
  }
124
133
 
@@ -258,7 +267,6 @@ const computePosition$1 = async (reference, floating, config) => {
258
267
  } = computeCoordsFromPlacement(rects, statefulPlacement, rtl));
259
268
  }
260
269
  i = -1;
261
- continue;
262
270
  }
263
271
  }
264
272
  return {
@@ -308,9 +316,10 @@ async function detectOverflow(state, options) {
308
316
  strategy
309
317
  }));
310
318
  const rect = elementContext === 'floating' ? {
311
- ...rects.floating,
312
319
  x,
313
- y
320
+ y,
321
+ width: rects.floating.width,
322
+ height: rects.floating.height
314
323
  } : rects.reference;
315
324
  const offsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(elements.floating));
316
325
  const offsetScale = (await (platform.isElement == null ? void 0 : platform.isElement(offsetParent))) ? (await (platform.getScale == null ? void 0 : platform.getScale(offsetParent))) || {
@@ -321,6 +330,7 @@ async function detectOverflow(state, options) {
321
330
  y: 1
322
331
  };
323
332
  const elementClientRect = rectToClientRect(platform.convertOffsetParentRelativeRectToViewportRelativeRect ? await platform.convertOffsetParentRelativeRectToViewportRelativeRect({
333
+ elements,
324
334
  rect,
325
335
  offsetParent,
326
336
  strategy
@@ -399,7 +409,7 @@ const arrow$1 = options => ({
399
409
  // to point to nothing for an aligned placement, adjust the offset of the
400
410
  // floating element itself. To ensure `shift()` continues to take action,
401
411
  // a single reset is performed when this is true.
402
- const shouldAddOffset = !middlewareData.arrow && getAlignment(placement) != null && center != offset && rects.reference[length] / 2 - (center < min$1 ? minPadding : maxPadding) - arrowDimensions[length] / 2 < 0;
412
+ const shouldAddOffset = !middlewareData.arrow && getAlignment(placement) != null && center !== offset && rects.reference[length] / 2 - (center < min$1 ? minPadding : maxPadding) - arrowDimensions[length] / 2 < 0;
403
413
  const alignmentOffset = shouldAddOffset ? center < min$1 ? center - min$1 : center - max : 0;
404
414
  return {
405
415
  [axis]: coords[axis] + alignmentOffset,
@@ -456,10 +466,12 @@ const flip$1 = function (options) {
456
466
  return {};
457
467
  }
458
468
  const side = getSide(placement);
469
+ const initialSideAxis = getSideAxis(initialPlacement);
459
470
  const isBasePlacement = getSide(initialPlacement) === initialPlacement;
460
471
  const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));
461
472
  const fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipAlignment ? [getOppositePlacement(initialPlacement)] : getExpandedPlacements(initialPlacement));
462
- if (!specifiedFallbackPlacements && fallbackAxisSideDirection !== 'none') {
473
+ const hasFallbackAxisSideDirection = fallbackAxisSideDirection !== 'none';
474
+ if (!specifiedFallbackPlacements && hasFallbackAxisSideDirection) {
463
475
  fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement, flipAlignment, fallbackAxisSideDirection, rtl));
464
476
  }
465
477
  const placements = [initialPlacement, ...fallbackPlacements];
@@ -505,8 +517,17 @@ const flip$1 = function (options) {
505
517
  switch (fallbackStrategy) {
506
518
  case 'bestFit':
507
519
  {
508
- var _overflowsData$map$so;
509
- const placement = (_overflowsData$map$so = overflowsData.map(d => [d.placement, d.overflows.filter(overflow => overflow > 0).reduce((acc, overflow) => acc + overflow, 0)]).sort((a, b) => a[1] - b[1])[0]) == null ? void 0 : _overflowsData$map$so[0];
520
+ var _overflowsData$filter2;
521
+ const placement = (_overflowsData$filter2 = overflowsData.filter(d => {
522
+ if (hasFallbackAxisSideDirection) {
523
+ const currentSideAxis = getSideAxis(d.placement);
524
+ return currentSideAxis === initialSideAxis ||
525
+ // Create a bias to the `y` side axis due to horizontal
526
+ // reading directions favoring greater width.
527
+ currentSideAxis === 'y';
528
+ }
529
+ return true;
530
+ }).map(d => [d.placement, d.overflows.filter(overflow => overflow > 0).reduce((acc, overflow) => acc + overflow, 0)]).sort((a, b) => a[1] - b[1])[0]) == null ? void 0 : _overflowsData$filter2[0];
510
531
  if (placement) {
511
532
  resetPlacement = placement;
512
533
  }
@@ -581,7 +602,7 @@ async function convertValueToCoords(state, options) {
581
602
  * object may be passed.
582
603
  * @see https://floating-ui.com/docs/offset
583
604
  */
584
- const offset = function (options) {
605
+ const offset$1 = function (options) {
585
606
  if (options === void 0) {
586
607
  options = 0;
587
608
  }
@@ -734,9 +755,18 @@ function isOverflowElement(element) {
734
755
  function isTableElement(element) {
735
756
  return ['table', 'td', 'th'].includes(getNodeName(element));
736
757
  }
737
- function isContainingBlock(element) {
758
+ function isTopLayer(element) {
759
+ return [':popover-open', ':modal'].some(selector => {
760
+ try {
761
+ return element.matches(selector);
762
+ } catch (e) {
763
+ return false;
764
+ }
765
+ });
766
+ }
767
+ function isContainingBlock(elementOrCss) {
738
768
  const webkit = isWebKit();
739
- const css = getComputedStyle(element);
769
+ const css = isElement(elementOrCss) ? getComputedStyle(elementOrCss) : elementOrCss;
740
770
 
741
771
  // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block
742
772
  return css.transform !== 'none' || css.perspective !== 'none' || (css.containerType ? css.containerType !== 'normal' : false) || !webkit && (css.backdropFilter ? css.backdropFilter !== 'none' : false) || !webkit && (css.filter ? css.filter !== 'none' : false) || ['transform', 'perspective', 'filter'].some(value => (css.willChange || '').includes(value)) || ['paint', 'layout', 'strict', 'content'].some(value => (css.contain || '').includes(value));
@@ -746,9 +776,10 @@ function getContainingBlock(element) {
746
776
  while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {
747
777
  if (isContainingBlock(currentNode)) {
748
778
  return currentNode;
749
- } else {
750
- currentNode = getParentNode(currentNode);
779
+ } else if (isTopLayer(currentNode)) {
780
+ return null;
751
781
  }
782
+ currentNode = getParentNode(currentNode);
752
783
  }
753
784
  return null;
754
785
  }
@@ -770,8 +801,8 @@ function getNodeScroll(element) {
770
801
  };
771
802
  }
772
803
  return {
773
- scrollLeft: element.pageXOffset,
774
- scrollTop: element.pageYOffset
804
+ scrollLeft: element.scrollX,
805
+ scrollTop: element.scrollY
775
806
  };
776
807
  }
777
808
  function getParentNode(node) {
@@ -811,10 +842,14 @@ function getOverflowAncestors(node, list, traverseIframes) {
811
842
  const isBody = scrollableAncestor === ((_node$ownerDocument2 = node.ownerDocument) == null ? void 0 : _node$ownerDocument2.body);
812
843
  const win = getWindow(scrollableAncestor);
813
844
  if (isBody) {
814
- return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : [], win.frameElement && traverseIframes ? getOverflowAncestors(win.frameElement) : []);
845
+ const frameElement = getFrameElement(win);
846
+ return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : [], frameElement && traverseIframes ? getOverflowAncestors(frameElement) : []);
815
847
  }
816
848
  return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor, [], traverseIframes));
817
849
  }
850
+ function getFrameElement(win) {
851
+ return win.parent && Object.getPrototypeOf(win.parent) ? win.frameElement : null;
852
+ }
818
853
 
819
854
  function getCssDimensions(element) {
820
855
  const css = getComputedStyle(element);
@@ -917,8 +952,9 @@ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetPar
917
952
  if (domElement) {
918
953
  const win = getWindow(domElement);
919
954
  const offsetWin = offsetParent && isElement(offsetParent) ? getWindow(offsetParent) : offsetParent;
920
- let currentIFrame = win.frameElement;
921
- while (currentIFrame && offsetParent && offsetWin !== win) {
955
+ let currentWin = win;
956
+ let currentIFrame = getFrameElement(currentWin);
957
+ while (currentIFrame && offsetParent && offsetWin !== currentWin) {
922
958
  const iframeScale = getScale(currentIFrame);
923
959
  const iframeRect = currentIFrame.getBoundingClientRect();
924
960
  const css = getComputedStyle(currentIFrame);
@@ -930,7 +966,8 @@ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetPar
930
966
  height *= iframeScale.y;
931
967
  x += left;
932
968
  y += top;
933
- currentIFrame = getWindow(currentIFrame).frameElement;
969
+ currentWin = getWindow(currentIFrame);
970
+ currentIFrame = getFrameElement(currentWin);
934
971
  }
935
972
  }
936
973
  return rectToClientRect({
@@ -943,13 +980,15 @@ function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetPar
943
980
 
944
981
  function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
945
982
  let {
983
+ elements,
946
984
  rect,
947
985
  offsetParent,
948
986
  strategy
949
987
  } = _ref;
950
- const isOffsetParentAnElement = isHTMLElement(offsetParent);
988
+ const isFixed = strategy === 'fixed';
951
989
  const documentElement = getDocumentElement(offsetParent);
952
- if (offsetParent === documentElement) {
990
+ const topLayer = elements ? isTopLayer(elements.floating) : false;
991
+ if (offsetParent === documentElement || topLayer && isFixed) {
953
992
  return rect;
954
993
  }
955
994
  let scroll = {
@@ -958,7 +997,8 @@ function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
958
997
  };
959
998
  let scale = createCoords(1);
960
999
  const offsets = createCoords(0);
961
- if (isOffsetParentAnElement || !isOffsetParentAnElement && strategy !== 'fixed') {
1000
+ const isOffsetParentAnElement = isHTMLElement(offsetParent);
1001
+ if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {
962
1002
  if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
963
1003
  scroll = getNodeScroll(offsetParent);
964
1004
  }
@@ -1119,7 +1159,7 @@ function getClippingRect(_ref) {
1119
1159
  rootBoundary,
1120
1160
  strategy
1121
1161
  } = _ref;
1122
- const elementClippingAncestors = boundary === 'clippingAncestors' ? getClippingElementAncestors(element, this._c) : [].concat(boundary);
1162
+ const elementClippingAncestors = boundary === 'clippingAncestors' ? isTopLayer(element) ? [] : getClippingElementAncestors(element, this._c) : [].concat(boundary);
1123
1163
  const clippingAncestors = [...elementClippingAncestors, rootBoundary];
1124
1164
  const firstClippingAncestor = clippingAncestors[0];
1125
1165
  const clippingRect = clippingAncestors.reduce((accRect, clippingAncestor) => {
@@ -1171,14 +1211,20 @@ function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
1171
1211
  offsets.x = getWindowScrollBarX(documentElement);
1172
1212
  }
1173
1213
  }
1214
+ const x = rect.left + scroll.scrollLeft - offsets.x;
1215
+ const y = rect.top + scroll.scrollTop - offsets.y;
1174
1216
  return {
1175
- x: rect.left + scroll.scrollLeft - offsets.x,
1176
- y: rect.top + scroll.scrollTop - offsets.y,
1217
+ x,
1218
+ y,
1177
1219
  width: rect.width,
1178
1220
  height: rect.height
1179
1221
  };
1180
1222
  }
1181
1223
 
1224
+ function isStaticPositioned(element) {
1225
+ return getComputedStyle(element).position === 'static';
1226
+ }
1227
+
1182
1228
  function getTrueOffsetParent(element, polyfill) {
1183
1229
  if (!isHTMLElement(element) || getComputedStyle(element).position === 'fixed') {
1184
1230
  return null;
@@ -1192,34 +1238,41 @@ function getTrueOffsetParent(element, polyfill) {
1192
1238
  // Gets the closest ancestor positioned element. Handles some edge cases,
1193
1239
  // such as table ancestors and cross browser bugs.
1194
1240
  function getOffsetParent(element, polyfill) {
1195
- const window = getWindow(element);
1241
+ const win = getWindow(element);
1242
+ if (isTopLayer(element)) {
1243
+ return win;
1244
+ }
1196
1245
  if (!isHTMLElement(element)) {
1197
- return window;
1246
+ let svgOffsetParent = getParentNode(element);
1247
+ while (svgOffsetParent && !isLastTraversableNode(svgOffsetParent)) {
1248
+ if (isElement(svgOffsetParent) && !isStaticPositioned(svgOffsetParent)) {
1249
+ return svgOffsetParent;
1250
+ }
1251
+ svgOffsetParent = getParentNode(svgOffsetParent);
1252
+ }
1253
+ return win;
1198
1254
  }
1199
1255
  let offsetParent = getTrueOffsetParent(element, polyfill);
1200
- while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {
1256
+ while (offsetParent && isTableElement(offsetParent) && isStaticPositioned(offsetParent)) {
1201
1257
  offsetParent = getTrueOffsetParent(offsetParent, polyfill);
1202
1258
  }
1203
- if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static' && !isContainingBlock(offsetParent))) {
1204
- return window;
1259
+ if (offsetParent && isLastTraversableNode(offsetParent) && isStaticPositioned(offsetParent) && !isContainingBlock(offsetParent)) {
1260
+ return win;
1205
1261
  }
1206
- return offsetParent || getContainingBlock(element) || window;
1262
+ return offsetParent || getContainingBlock(element) || win;
1207
1263
  }
1208
1264
 
1209
- const getElementRects = async function (_ref) {
1210
- let {
1211
- reference,
1212
- floating,
1213
- strategy
1214
- } = _ref;
1265
+ const getElementRects = async function (data) {
1215
1266
  const getOffsetParentFn = this.getOffsetParent || getOffsetParent;
1216
1267
  const getDimensionsFn = this.getDimensions;
1268
+ const floatingDimensions = await getDimensionsFn(data.floating);
1217
1269
  return {
1218
- reference: getRectRelativeToOffsetParent(reference, await getOffsetParentFn(floating), strategy),
1270
+ reference: getRectRelativeToOffsetParent(data.reference, await getOffsetParentFn(data.floating), data.strategy),
1219
1271
  floating: {
1220
1272
  x: 0,
1221
1273
  y: 0,
1222
- ...(await getDimensionsFn(floating))
1274
+ width: floatingDimensions.width,
1275
+ height: floatingDimensions.height
1223
1276
  }
1224
1277
  };
1225
1278
  };
@@ -1247,8 +1300,9 @@ function observeMove(element, onMove) {
1247
1300
  let timeoutId;
1248
1301
  const root = getDocumentElement(element);
1249
1302
  function cleanup() {
1303
+ var _io;
1250
1304
  clearTimeout(timeoutId);
1251
- io && io.disconnect();
1305
+ (_io = io) == null || _io.disconnect();
1252
1306
  io = null;
1253
1307
  }
1254
1308
  function refresh(skip, threshold) {
@@ -1288,9 +1342,11 @@ function observeMove(element, onMove) {
1288
1342
  return refresh();
1289
1343
  }
1290
1344
  if (!ratio) {
1345
+ // If the reference is clipped, the ratio is 0. Throttle the refresh
1346
+ // to prevent an infinite loop of updates.
1291
1347
  timeoutId = setTimeout(() => {
1292
1348
  refresh(false, 1e-7);
1293
- }, 100);
1349
+ }, 1000);
1294
1350
  } else {
1295
1351
  refresh(false, ratio);
1296
1352
  }
@@ -1354,7 +1410,8 @@ function autoUpdate(reference, floating, update, options) {
1354
1410
  resizeObserver.unobserve(floating);
1355
1411
  cancelAnimationFrame(reobserveFrame);
1356
1412
  reobserveFrame = requestAnimationFrame(() => {
1357
- resizeObserver && resizeObserver.observe(floating);
1413
+ var _resizeObserver;
1414
+ (_resizeObserver = resizeObserver) == null || _resizeObserver.observe(floating);
1358
1415
  });
1359
1416
  }
1360
1417
  update();
@@ -1379,12 +1436,13 @@ function autoUpdate(reference, floating, update, options) {
1379
1436
  }
1380
1437
  update();
1381
1438
  return () => {
1439
+ var _resizeObserver2;
1382
1440
  ancestors.forEach(ancestor => {
1383
1441
  ancestorScroll && ancestor.removeEventListener('scroll', update);
1384
1442
  ancestorResize && ancestor.removeEventListener('resize', update);
1385
1443
  });
1386
- cleanupIo && cleanupIo();
1387
- resizeObserver && resizeObserver.disconnect();
1444
+ cleanupIo == null || cleanupIo();
1445
+ (_resizeObserver2 = resizeObserver) == null || _resizeObserver2.disconnect();
1388
1446
  resizeObserver = null;
1389
1447
  if (animationFrame) {
1390
1448
  cancelAnimationFrame(frameId);
@@ -1392,6 +1450,15 @@ function autoUpdate(reference, floating, update, options) {
1392
1450
  };
1393
1451
  }
1394
1452
 
1453
+ /**
1454
+ * Modifies the placement by translating the floating element along the
1455
+ * specified axes.
1456
+ * A number (shorthand for `mainAxis` or distance), or an axes configuration
1457
+ * object may be passed.
1458
+ * @see https://floating-ui.com/docs/offset
1459
+ */
1460
+ const offset = offset$1;
1461
+
1395
1462
  /**
1396
1463
  * Optimizes the visibility of the floating element by shifting it in order to
1397
1464
  * keep it in view when it will overflow the clipping boundary.