UNPKG

@htmlbricks/hb-bundle

Version:

Single IIFE loader for all HTML Bricks hb-* web components from the jsDelivr CDN, with optional Subresource Integrity; includes agent/LLM docs and theme CSS variables.

95 lines (93 loc) 2.68 kB
export type Component = { id?: string; style?: string; zoom: number; center: number[]; data: { marker?: { lngLat: number[]; icon?: { uri: string; scale?: number; anchor?: number[]; opacity?: number; color?: string; }; id?: string; popupHtml?: string; text?: string; text_position?: "top" | "right" | "bottom" | "left"; text_offset?: number; }; point?: { lngLat: number[]; icon?: { uri: string; scale?: number; anchor?: number[]; opacity?: number; color?: string; }; id?: string; popupHtml?: string; }; line?: { lngLat: number[]; icon?: { uri: string; scale?: number; anchor?: number[]; opacity?: number; color?: string; }; id?: string; popupHtml?: string; }[]; }[]; source: { type: string; url?: string; /** * Basemap palette for light UI. In dark color scheme (`prefers-color-scheme: dark` or * `data-theme="dark"` / `.theme-dark` on host or document), `dark_matter` is always used. */ style?: "positron" | "dark_matter" | "voyager"; /** When `true`, only the vector `boundary` layer is drawn (no land, roads, water fill, etc.). */ boundaries_only?: boolean; /** * Optional JSON array string of OSM `admin_level` values to keep for `boundary` features, * e.g. `"[2]"` for country borders, `"[2,4]"` for countries plus common internal divisions. * Omit or empty to show all boundaries present in the tiles at the current zoom. */ boundary_admin_levels?: string; /** * When `true`, only international / country boundaries (`admin_level` 2) are drawn; internal * regional lines are hidden. Combines with `boundary_admin_levels` by intersection (e.g. if * the JSON list excludes `2`, no boundaries render). National lines use a solid stroke; * when `false`, level 2 stays solid and other levels stay dashed. */ national_boundaries_only?: boolean; }; options: { centerFromGeometries?: boolean; text_position?: "top" | "right" | "bottom" | "left"; text_offset?: number; text_scale?: number; }; screenshot?: string; }; export type Events = { pointClickCoordinates: { coordinates: { latitude: number; longitude: number }; zoom: number; center: number[]; }; markerClick: { coordinates: { latitude: number; longitude: number }; /** From feature metadata when `marker.id` is set; may be missing. */ id?: string; }; screenshotTaken: { base64: string; }; };