From c90c7fe9987a904f70fe9422f984d145460e70ad Mon Sep 17 00:00:00 2001 From: Shakira Reid-Thomas Date: Fri, 20 Dec 2024 21:12:00 -0500 Subject: [PATCH 01/15] Updated components section, index file, package.json file, webpack configuration and storybook documentation --- build/experimental/assets/js/main.js | 1 + build/experimental/assets/js/runtime.js | 1 + build/experimental/assets/js/vendors.babel.js | 1 + build/experimental/assets/js/vendors.maplibre-gl.js | 1 + build/experimental/index.html | 1 + package.json | 2 +- src/{index.js => index-experimental.js} | 0 src/stories/Introduction.stories.mdx | 13 +++++++++++++ src/stories/accordion.stories.js | 2 +- src/stories/actionbutton.stories.js | 2 +- src/stories/actionbuttonV2.stories.js | 2 +- src/stories/alert.stories.js | 2 +- src/stories/articlecard.stories.js | 2 +- src/stories/badge.stories.js | 2 +- src/stories/breadcrumb.stories.js | 2 +- src/stories/button.stories.js | 2 +- src/stories/buttongroup.stories.js | 2 +- src/stories/calendar.stories.js | 2 +- src/stories/card.stories.js | 2 +- src/stories/carousel.stories.js | 2 +- src/stories/container.stories.js | 2 +- src/stories/countdown.stories.js | 2 +- src/stories/dropdown.stories.js | 2 +- src/stories/form.stories.js | 2 +- src/stories/formcheck.stories.js | 2 +- src/stories/formcheckgroup.stories.js | 2 +- src/stories/formcontrol.stories.js | 2 +- src/stories/formlabel.stories.js | 2 +- src/stories/formselect.stories.js | 2 +- src/stories/geocoder.stories.js | 2 +- src/stories/icon.stories.js | 2 +- src/stories/image.stories.js | 2 +- src/stories/imgslider.stories.js | 2 +- src/stories/infobutton.stories.js | 2 +- src/stories/legacybutton.stories.js | 2 +- src/stories/legacyicon.stories.js | 2 +- src/stories/listgroup.stories.js | 2 +- src/stories/loader.stories.js | 2 +- src/stories/map.stories.js | 2 +- src/stories/modal.stories.js | 2 +- src/stories/nav.stories.js | 2 +- src/stories/navbar.stories.js | 2 +- src/stories/offcanvas.stories.js | 2 +- src/stories/pagination.stories.js | 2 +- src/stories/progress.stories.js | 2 +- src/stories/range.stories.js | 2 +- src/stories/spinner.stories.js | 2 +- src/stories/table-v2.stories.js | 2 +- src/stories/table.stories.js | 2 +- src/stories/videoplayer.stories.js | 2 +- webpack.config.js | 4 ++-- 51 files changed, 63 insertions(+), 45 deletions(-) create mode 100644 build/experimental/assets/js/main.js create mode 100644 build/experimental/assets/js/runtime.js create mode 100644 build/experimental/assets/js/vendors.babel.js create mode 100644 build/experimental/assets/js/vendors.maplibre-gl.js create mode 100644 build/experimental/index.html rename src/{index.js => index-experimental.js} (100%) diff --git a/build/experimental/assets/js/main.js b/build/experimental/assets/js/main.js new file mode 100644 index 00000000..7fb6bba3 --- /dev/null +++ b/build/experimental/assets/js/main.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkcod_design_system=self.webpackChunkcod_design_system||[]).push([[179],{133:function(t,n,e){var o="@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@100;700&display=swap');\n:host {\n --color-1: #004445;\n --color-2: #9fd5b3;\n --color-3: #feb70d;\n --color-4: #b3393b;\n --color-5: #e6e6e6;\n --color-light: #fff;\n --color-dark: #000;\n --font-family: 'Montserrat', sans-serif;\n}\n",a="@charset \"UTF-8\";\n/**\n * GENERATED CSS. DO NOT MODIFY.\n * This file is generated from source SASS in src/scss/themed-bootstrap.scss. If you'd like to make\n * changes please change the source file or the code generation script at scripts/compile_bootstrap.sh.\n */\n/*!\n * Bootstrap v5.3.0-alpha3 (https://getbootstrap.com/)\n * Copyright 2011-2023 The Bootstrap Authors\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n */\n@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,300;0,400;0,700;0,900;1,300;1,400;1,700;1,900&display=swap');\n:root,\n[data-bs-theme='light'] {\n --bs-blue: #0d6efd;\n --bs-indigo: #6610f2;\n --bs-purple: #6f42c1;\n --bs-pink: #d63384;\n --bs-red: #dc3545;\n --bs-orange: #fd7e14;\n --bs-yellow: #ffc107;\n --bs-green: #198754;\n --bs-teal: #20c997;\n --bs-cyan: #0dcaf0;\n --bs-black: #000;\n --bs-white: #fff;\n --bs-gray: #6c757d;\n --bs-gray-dark: #343a40;\n --bs-gray-100: #f8f9fa;\n --bs-gray-200: #e9ecef;\n --bs-gray-300: #dee2e6;\n --bs-gray-400: #ced4da;\n --bs-gray-500: #adb5bd;\n --bs-gray-600: #6c757d;\n --bs-gray-700: #495057;\n --bs-gray-800: #343a40;\n --bs-gray-900: #212529;\n --bs-primary: #004445;\n --bs-secondary: #f2f2f2;\n --bs-success: #9fd5b3;\n --bs-info: #004445;\n --bs-warning: #feb70d;\n --bs-danger: #b3393b;\n --bs-light: #fff;\n --bs-dark: #18252a;\n --bs-accent-primary: #feb70d;\n --bs-accent-secondary: #9fd5b3;\n --bs-primary-rgb: 0, 68, 69;\n --bs-secondary-rgb: 242, 242, 242;\n --bs-success-rgb: 159, 213, 179;\n --bs-info-rgb: 0, 68, 69;\n --bs-warning-rgb: 254, 183, 13;\n --bs-danger-rgb: 179, 57, 59;\n --bs-light-rgb: 255, 255, 255;\n --bs-dark-rgb: 24, 37, 42;\n --bs-accent-primary-rgb: 254, 183, 13;\n --bs-accent-secondary-rgb: 159, 213, 179;\n --bs-primary-text-emphasis: #001b1c;\n --bs-secondary-text-emphasis: #616161;\n --bs-success-text-emphasis: #405548;\n --bs-info-text-emphasis: #001b1c;\n --bs-warning-text-emphasis: #664905;\n --bs-danger-text-emphasis: #481718;\n --bs-light-text-emphasis: #495057;\n --bs-dark-text-emphasis: #495057;\n --bs-primary-bg-subtle: #ccdada;\n --bs-secondary-bg-subtle: #fcfcfc;\n --bs-success-bg-subtle: #ecf7f0;\n --bs-info-bg-subtle: #ccdada;\n --bs-warning-bg-subtle: #fff1cf;\n --bs-danger-bg-subtle: #f0d7d8;\n --bs-light-bg-subtle: #fcfcfd;\n --bs-dark-bg-subtle: #ced4da;\n --bs-primary-border-subtle: #99b4b5;\n --bs-secondary-border-subtle: #fafafa;\n --bs-success-border-subtle: #d9eee1;\n --bs-info-border-subtle: #99b4b5;\n --bs-warning-border-subtle: #ffe29e;\n --bs-danger-border-subtle: #e1b0b1;\n --bs-light-border-subtle: #e9ecef;\n --bs-dark-border-subtle: #adb5bd;\n --bs-white-rgb: 255, 255, 255;\n --bs-black-rgb: 0, 0, 0;\n --bs-font-sans-serif: 'Montserrat', sans-serif;\n --bs-font-monospace: 'Montserrat', sans-serif;\n --bs-gradient: linear-gradient(\n 180deg,\n rgba(255, 255, 255, 0.15),\n rgba(255, 255, 255, 0)\n );\n --bs-body-font-family: var(--bs-font-sans-serif);\n --bs-body-font-size: 1em;\n --bs-body-font-weight: 400;\n --bs-body-line-height: 1.5;\n --bs-body-color: #212529;\n --bs-body-color-rgb: 33, 37, 41;\n --bs-body-bg: #fff;\n --bs-body-bg-rgb: 255, 255, 255;\n --bs-emphasis-color: #000;\n --bs-emphasis-color-rgb: 0, 0, 0;\n --bs-secondary-color: rgba(33, 37, 41, 0.75);\n --bs-secondary-color-rgb: 33, 37, 41;\n --bs-secondary-bg: #e9ecef;\n --bs-secondary-bg-rgb: 233, 236, 239;\n --bs-tertiary-color: rgba(33, 37, 41, 0.5);\n --bs-tertiary-color-rgb: 33, 37, 41;\n --bs-tertiary-bg: #f8f9fa;\n --bs-tertiary-bg-rgb: 248, 249, 250;\n --bs-link-color: #004445;\n --bs-link-color-rgb: 0, 68, 69;\n --bs-link-decoration: underline;\n --bs-link-hover-color: #003637;\n --bs-link-hover-color-rgb: 0, 54, 55;\n --bs-code-color: #d63384;\n --bs-highlight-bg: #fff3cd;\n --bs-border-width: 1px;\n --bs-border-style: solid;\n --bs-border-color: #dee2e6;\n --bs-border-color-translucent: rgba(0, 0, 0, 0.175);\n --bs-border-radius: 0.375em;\n --bs-border-radius-sm: 0.25em;\n --bs-border-radius-lg: 0.5em;\n --bs-border-radius-xl: 1em;\n --bs-border-radius-xxl: 2em;\n --bs-border-radius-2xl: var(--bs-border-radius-xxl);\n --bs-border-radius-pill: 50em;\n --bs-box-shadow: 0 0.5em 1em rgba(0, 0, 0, 0.15);\n --bs-box-shadow-sm: 0 0.125em 0.25em rgba(0, 0, 0, 0.075);\n --bs-box-shadow-lg: 0 1em 3em rgba(0, 0, 0, 0.175);\n --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);\n --bs-focus-ring-width: 0.25em;\n --bs-focus-ring-opacity: 1;\n --bs-focus-ring-color: blue;\n --bs-form-valid-color: #9fd5b3;\n --bs-form-valid-border-color: #9fd5b3;\n --bs-form-invalid-color: #b3393b;\n --bs-form-invalid-border-color: #b3393b;\n}\n\n[data-bs-theme='dark'] {\n color-scheme: dark;\n --bs-body-color: #adb5bd;\n --bs-body-color-rgb: 173, 181, 189;\n --bs-body-bg: #212529;\n --bs-body-bg-rgb: 33, 37, 41;\n --bs-emphasis-color: #fff;\n --bs-emphasis-color-rgb: 255, 255, 255;\n --bs-secondary-color: rgba(173, 181, 189, 0.75);\n --bs-secondary-color-rgb: 173, 181, 189;\n --bs-secondary-bg: #343a40;\n --bs-secondary-bg-rgb: 52, 58, 64;\n --bs-tertiary-color: rgba(173, 181, 189, 0.5);\n --bs-tertiary-color-rgb: 173, 181, 189;\n --bs-tertiary-bg: #2b3035;\n --bs-tertiary-bg-rgb: 43, 48, 53;\n --bs-primary-text-emphasis: #668f8f;\n --bs-secondary-text-emphasis: #f7f7f7;\n --bs-success-text-emphasis: #c5e6d1;\n --bs-info-text-emphasis: #668f8f;\n --bs-warning-text-emphasis: #fed46e;\n --bs-danger-text-emphasis: #d18889;\n --bs-light-text-emphasis: #f8f9fa;\n --bs-dark-text-emphasis: #dee2e6;\n --bs-primary-bg-subtle: #000e0e;\n --bs-secondary-bg-subtle: #303030;\n --bs-success-bg-subtle: #202b24;\n --bs-info-bg-subtle: #000e0e;\n --bs-warning-bg-subtle: #332503;\n --bs-danger-bg-subtle: #240b0c;\n --bs-light-bg-subtle: #343a40;\n --bs-dark-bg-subtle: #1a1d20;\n --bs-primary-border-subtle: #002929;\n --bs-secondary-border-subtle: #919191;\n --bs-success-border-subtle: #5f806b;\n --bs-info-border-subtle: #002929;\n --bs-warning-border-subtle: #986e08;\n --bs-danger-border-subtle: #6b2223;\n --bs-light-border-subtle: #495057;\n --bs-dark-border-subtle: #343a40;\n --bs-link-color: #668f8f;\n --bs-link-hover-color: #85a5a5;\n --bs-link-color-rgb: 102, 143, 143;\n --bs-link-hover-color-rgb: 133, 165, 165;\n --bs-code-color: #e685b5;\n --bs-border-color: #495057;\n --bs-border-color-translucent: rgba(255, 255, 255, 0.15);\n --bs-form-valid-color: #75b798;\n --bs-form-valid-border-color: #75b798;\n --bs-form-invalid-color: #ea868f;\n --bs-form-invalid-border-color: #ea868f;\n}\n\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\n@media (prefers-reduced-motion: no-preference) {\n :root {\n scroll-behavior: smooth;\n }\n}\n\nbody {\n margin: 0;\n font-family: var(--bs-body-font-family);\n font-size: var(--bs-body-font-size);\n font-weight: var(--bs-body-font-weight);\n line-height: var(--bs-body-line-height);\n color: var(--bs-body-color);\n text-align: var(--bs-body-text-align);\n background-color: var(--bs-body-bg);\n -webkit-text-size-adjust: 100%;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n\nhr {\n margin: 1em 0;\n color: inherit;\n border: 0;\n border-top: var(--bs-border-width) solid;\n opacity: 0.25;\n}\n\nh6,\n.h6,\nh5,\n.h5,\nh4,\n.h4,\nh3,\n.h3,\nh2,\n.h2,\nh1,\n.h1 {\n margin-top: 0;\n margin-bottom: 0.5em;\n font-weight: 500;\n line-height: 1.2;\n color: var(--bs-heading-color, inherit);\n}\n\nh1,\n.h1 {\n font-size: calc(1.4em + 1.8vw);\n}\n@media (min-width: 1200px) {\n h1,\n .h1 {\n font-size: 2.75em;\n }\n}\n\nh2,\n.h2 {\n font-size: calc(1.3625em + 1.35vw);\n}\n@media (min-width: 1200px) {\n h2,\n .h2 {\n font-size: 2.375em;\n }\n}\n\nh3,\n.h3 {\n font-size: calc(1.3125em + 0.75vw);\n}\n@media (min-width: 1200px) {\n h3,\n .h3 {\n font-size: 1.875em;\n }\n}\n\nh4,\n.h4 {\n font-size: calc(1.275em + 0.3vw);\n}\n@media (min-width: 1200px) {\n h4,\n .h4 {\n font-size: 1.5em;\n }\n}\n\nh5,\n.h5 {\n font-size: 1.25em;\n}\n\nh6,\n.h6 {\n font-size: 1em;\n}\n\np {\n margin-top: 0;\n margin-bottom: 1em;\n}\n\nabbr[title] {\n text-decoration: underline dotted;\n cursor: help;\n text-decoration-skip-ink: none;\n}\n\naddress {\n margin-bottom: 1em;\n font-style: normal;\n line-height: inherit;\n}\n\nol,\nul {\n padding-left: 2em;\n}\n\nol,\nul,\ndl {\n margin-top: 0;\n margin-bottom: 1em;\n}\n\nol ol,\nul ul,\nol ul,\nul ol {\n margin-bottom: 0;\n}\n\ndt {\n font-weight: 700;\n}\n\ndd {\n margin-bottom: 0.5em;\n margin-left: 0;\n}\n\nblockquote {\n margin: 0 0 1em;\n}\n\nb,\nstrong {\n font-weight: bolder;\n}\n\nsmall,\n.small {\n font-size: 0.875em;\n}\n\nmark,\n.mark {\n padding: 0.1875em;\n background-color: var(--bs-highlight-bg);\n}\n\nsub,\nsup {\n position: relative;\n font-size: 0.75em;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\na {\n color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));\n text-decoration: underline;\n}\na:hover {\n --bs-link-color-rgb: var(--bs-link-hover-color-rgb);\n}\n\na:not([href]):not([class]),\na:not([href]):not([class]):hover {\n color: inherit;\n text-decoration: none;\n}\n\npre,\ncode,\nkbd,\nsamp {\n font-family: var(--bs-font-monospace);\n font-size: 1em;\n}\n\npre {\n display: block;\n margin-top: 0;\n margin-bottom: 1em;\n overflow: auto;\n font-size: 0.875em;\n}\npre code {\n font-size: inherit;\n color: inherit;\n word-break: normal;\n}\n\ncode {\n font-size: 0.875em;\n color: var(--bs-code-color);\n word-wrap: break-word;\n}\na > code {\n color: inherit;\n}\n\nkbd {\n padding: 0.1875em 0.375em;\n font-size: 0.875em;\n color: var(--bs-body-bg);\n background-color: var(--bs-body-color);\n}\nkbd kbd {\n padding: 0;\n font-size: 1em;\n}\n\nfigure {\n margin: 0 0 1em;\n}\n\nimg,\nsvg {\n vertical-align: middle;\n}\n\ntable {\n caption-side: bottom;\n border-collapse: collapse;\n}\n\ncaption {\n padding-top: 0.5em;\n padding-bottom: 0.5em;\n color: var(--bs-secondary-color);\n text-align: left;\n}\n\nth {\n text-align: inherit;\n text-align: -webkit-match-parent;\n}\n\nthead,\ntbody,\ntfoot,\ntr,\ntd,\nth {\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n}\n\nlabel {\n display: inline-block;\n}\n\nbutton {\n border-radius: 0;\n}\n\nbutton:focus:not(:focus-visible) {\n outline: 0;\n}\n\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\nbutton,\nselect {\n text-transform: none;\n}\n\n[role='button'] {\n cursor: pointer;\n}\n\nselect {\n word-wrap: normal;\n}\nselect:disabled {\n opacity: 1;\n}\n\n[list]:not([type='date']):not([type='datetime-local']):not([type='month']):not(\n [type='week']\n ):not([type='time'])::-webkit-calendar-picker-indicator {\n display: none !important;\n}\n\nbutton,\n[type='button'],\n[type='reset'],\n[type='submit'] {\n -webkit-appearance: button;\n}\nbutton:not(:disabled),\n[type='button']:not(:disabled),\n[type='reset']:not(:disabled),\n[type='submit']:not(:disabled) {\n cursor: pointer;\n}\n\n::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\n\ntextarea {\n resize: vertical;\n}\n\nfieldset {\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\n\nlegend {\n float: left;\n width: 100%;\n padding: 0;\n margin-bottom: 0.5em;\n font-size: calc(1.275em + 0.3vw);\n line-height: inherit;\n}\n@media (min-width: 1200px) {\n legend {\n font-size: 1.5em;\n }\n}\nlegend + * {\n clear: left;\n}\n\n::-webkit-datetime-edit-fields-wrapper,\n::-webkit-datetime-edit-text,\n::-webkit-datetime-edit-minute,\n::-webkit-datetime-edit-hour-field,\n::-webkit-datetime-edit-day-field,\n::-webkit-datetime-edit-month-field,\n::-webkit-datetime-edit-year-field {\n padding: 0;\n}\n\n::-webkit-inner-spin-button {\n height: auto;\n}\n\n[type='search'] {\n outline-offset: -2px;\n -webkit-appearance: textfield;\n}\n\n/* rtl:raw:\n[type=\"tel\"],\n[type=\"url\"],\n[type=\"email\"],\n[type=\"number\"] {\n direction: ltr;\n}\n*/\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n::-webkit-color-swatch-wrapper {\n padding: 0;\n}\n\n::file-selector-button {\n font: inherit;\n -webkit-appearance: button;\n}\n\noutput {\n display: inline-block;\n}\n\niframe {\n border: 0;\n}\n\nsummary {\n display: list-item;\n cursor: pointer;\n}\n\nprogress {\n vertical-align: baseline;\n}\n\n[hidden] {\n display: none !important;\n}\n\n.lead {\n font-size: 1.25em;\n font-weight: 300;\n}\n\n.display-1 {\n font-size: calc(1.4em + 1.8vw);\n font-weight: 300;\n line-height: 1.2;\n}\n@media (min-width: 1200px) {\n .display-1 {\n font-size: 2.75em;\n }\n}\n\n.display-2 {\n font-size: calc(1.3625em + 1.35vw);\n font-weight: 300;\n line-height: 1.2;\n}\n@media (min-width: 1200px) {\n .display-2 {\n font-size: 2.375em;\n }\n}\n\n.display-3 {\n font-size: calc(1.3125em + 0.75vw);\n font-weight: 300;\n line-height: 1.2;\n}\n@media (min-width: 1200px) {\n .display-3 {\n font-size: 1.875em;\n }\n}\n\n.display-4 {\n font-size: calc(1.275em + 0.3vw);\n font-weight: 300;\n line-height: 1.2;\n}\n@media (min-width: 1200px) {\n .display-4 {\n font-size: 1.5em;\n }\n}\n\n.display-5 {\n font-size: 1.25em;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.display-6 {\n font-size: 1em;\n font-weight: 300;\n line-height: 1.2;\n}\n\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n\n.list-inline {\n padding-left: 0;\n list-style: none;\n}\n\n.list-inline-item {\n display: inline-block;\n}\n.list-inline-item:not(:last-child) {\n margin-right: 0.5em;\n}\n\n.initialism {\n font-size: 0.875em;\n text-transform: uppercase;\n}\n\n.blockquote {\n margin-bottom: 1em;\n font-size: 1.25em;\n}\n.blockquote > :last-child {\n margin-bottom: 0;\n}\n\n.blockquote-footer {\n margin-top: -1em;\n margin-bottom: 1em;\n font-size: 0.875em;\n color: #6c757d;\n}\n.blockquote-footer::before {\n content: '\u2014\xa0';\n}\n\n.img-fluid {\n max-width: 100%;\n height: auto;\n}\n\n.img-thumbnail {\n padding: 0.25em;\n background-color: var(--bs-body-bg);\n border: var(--bs-border-width) solid var(--bs-border-color);\n max-width: 100%;\n height: auto;\n}\n\n.figure {\n display: inline-block;\n}\n\n.figure-img {\n margin-bottom: 0.5em;\n line-height: 1;\n}\n\n.figure-caption {\n font-size: 0.875em;\n color: var(--bs-secondary-color);\n}\n\n.container,\n.container-fluid,\n.container-xxl,\n.container-xl,\n.container-lg,\n.container-md,\n.container-sm {\n --bs-gutter-x: 1.5em;\n --bs-gutter-y: 0;\n width: 100%;\n padding-right: calc(var(--bs-gutter-x) * 0.5);\n padding-left: calc(var(--bs-gutter-x) * 0.5);\n margin-right: auto;\n margin-left: auto;\n}\n\n@media (min-width: 576px) {\n .container-sm,\n .container {\n max-width: 540px;\n }\n}\n@media (min-width: 768px) {\n .container-md,\n .container-sm,\n .container {\n max-width: 720px;\n }\n}\n@media (min-width: 992px) {\n .container-lg,\n .container-md,\n .container-sm,\n .container {\n max-width: 960px;\n }\n}\n@media (min-width: 1200px) {\n .container-xl,\n .container-lg,\n .container-md,\n .container-sm,\n .container {\n max-width: 1140px;\n }\n}\n@media (min-width: 1400px) {\n .container-xxl,\n .container-xl,\n .container-lg,\n .container-md,\n .container-sm,\n .container {\n max-width: 1320px;\n }\n}\n:root {\n --bs-breakpoint-xs: 0;\n --bs-breakpoint-sm: 576px;\n --bs-breakpoint-md: 768px;\n --bs-breakpoint-lg: 992px;\n --bs-breakpoint-xl: 1200px;\n --bs-breakpoint-xxl: 1400px;\n}\n\n.row {\n --bs-gutter-x: 1.5em;\n --bs-gutter-y: 0;\n display: flex;\n flex-wrap: wrap;\n margin-top: calc(-1 * var(--bs-gutter-y));\n margin-right: calc(-0.5 * var(--bs-gutter-x));\n margin-left: calc(-0.5 * var(--bs-gutter-x));\n}\n.row > * {\n flex-shrink: 0;\n width: 100%;\n max-width: 100%;\n padding-right: calc(var(--bs-gutter-x) * 0.5);\n padding-left: calc(var(--bs-gutter-x) * 0.5);\n margin-top: var(--bs-gutter-y);\n}\n\n.col {\n flex: 1 0 0%;\n}\n\n.row-cols-auto > * {\n flex: 0 0 auto;\n width: auto;\n}\n\n.row-cols-1 > * {\n flex: 0 0 auto;\n width: 100%;\n}\n\n.row-cols-2 > * {\n flex: 0 0 auto;\n width: 50%;\n}\n\n.row-cols-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n}\n\n.row-cols-4 > * {\n flex: 0 0 auto;\n width: 25%;\n}\n\n.row-cols-5 > * {\n flex: 0 0 auto;\n width: 20%;\n}\n\n.row-cols-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n}\n\n.col-auto {\n flex: 0 0 auto;\n width: auto;\n}\n\n.col-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n}\n\n.col-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n}\n\n.col-3 {\n flex: 0 0 auto;\n width: 25%;\n}\n\n.col-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n}\n\n.col-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n}\n\n.col-6 {\n flex: 0 0 auto;\n width: 50%;\n}\n\n.col-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n}\n\n.col-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n}\n\n.col-9 {\n flex: 0 0 auto;\n width: 75%;\n}\n\n.col-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n}\n\n.col-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n}\n\n.col-12 {\n flex: 0 0 auto;\n width: 100%;\n}\n\n.offset-1 {\n margin-left: 8.33333333%;\n}\n\n.offset-2 {\n margin-left: 16.66666667%;\n}\n\n.offset-3 {\n margin-left: 25%;\n}\n\n.offset-4 {\n margin-left: 33.33333333%;\n}\n\n.offset-5 {\n margin-left: 41.66666667%;\n}\n\n.offset-6 {\n margin-left: 50%;\n}\n\n.offset-7 {\n margin-left: 58.33333333%;\n}\n\n.offset-8 {\n margin-left: 66.66666667%;\n}\n\n.offset-9 {\n margin-left: 75%;\n}\n\n.offset-10 {\n margin-left: 83.33333333%;\n}\n\n.offset-11 {\n margin-left: 91.66666667%;\n}\n\n.g-0,\n.gx-0 {\n --bs-gutter-x: 0;\n}\n\n.g-0,\n.gy-0 {\n --bs-gutter-y: 0;\n}\n\n.g-1,\n.gx-1 {\n --bs-gutter-x: 0.25em;\n}\n\n.g-1,\n.gy-1 {\n --bs-gutter-y: 0.25em;\n}\n\n.g-2,\n.gx-2 {\n --bs-gutter-x: 0.5em;\n}\n\n.g-2,\n.gy-2 {\n --bs-gutter-y: 0.5em;\n}\n\n.g-3,\n.gx-3 {\n --bs-gutter-x: 1em;\n}\n\n.g-3,\n.gy-3 {\n --bs-gutter-y: 1em;\n}\n\n.g-4,\n.gx-4 {\n --bs-gutter-x: 1.5em;\n}\n\n.g-4,\n.gy-4 {\n --bs-gutter-y: 1.5em;\n}\n\n.g-5,\n.gx-5 {\n --bs-gutter-x: 3em;\n}\n\n.g-5,\n.gy-5 {\n --bs-gutter-y: 3em;\n}\n\n@media (min-width: 576px) {\n .col-sm {\n flex: 1 0 0%;\n }\n .row-cols-sm-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-sm-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-sm-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-sm-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-sm-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-sm-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-sm-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-sm-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-sm-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-sm-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-sm-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-sm-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-sm-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-sm-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-sm-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-sm-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-sm-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-sm-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-sm-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-sm-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-sm-0 {\n margin-left: 0;\n }\n .offset-sm-1 {\n margin-left: 8.33333333%;\n }\n .offset-sm-2 {\n margin-left: 16.66666667%;\n }\n .offset-sm-3 {\n margin-left: 25%;\n }\n .offset-sm-4 {\n margin-left: 33.33333333%;\n }\n .offset-sm-5 {\n margin-left: 41.66666667%;\n }\n .offset-sm-6 {\n margin-left: 50%;\n }\n .offset-sm-7 {\n margin-left: 58.33333333%;\n }\n .offset-sm-8 {\n margin-left: 66.66666667%;\n }\n .offset-sm-9 {\n margin-left: 75%;\n }\n .offset-sm-10 {\n margin-left: 83.33333333%;\n }\n .offset-sm-11 {\n margin-left: 91.66666667%;\n }\n .g-sm-0,\n .gx-sm-0 {\n --bs-gutter-x: 0;\n }\n .g-sm-0,\n .gy-sm-0 {\n --bs-gutter-y: 0;\n }\n .g-sm-1,\n .gx-sm-1 {\n --bs-gutter-x: 0.25em;\n }\n .g-sm-1,\n .gy-sm-1 {\n --bs-gutter-y: 0.25em;\n }\n .g-sm-2,\n .gx-sm-2 {\n --bs-gutter-x: 0.5em;\n }\n .g-sm-2,\n .gy-sm-2 {\n --bs-gutter-y: 0.5em;\n }\n .g-sm-3,\n .gx-sm-3 {\n --bs-gutter-x: 1em;\n }\n .g-sm-3,\n .gy-sm-3 {\n --bs-gutter-y: 1em;\n }\n .g-sm-4,\n .gx-sm-4 {\n --bs-gutter-x: 1.5em;\n }\n .g-sm-4,\n .gy-sm-4 {\n --bs-gutter-y: 1.5em;\n }\n .g-sm-5,\n .gx-sm-5 {\n --bs-gutter-x: 3em;\n }\n .g-sm-5,\n .gy-sm-5 {\n --bs-gutter-y: 3em;\n }\n}\n@media (min-width: 768px) {\n .col-md {\n flex: 1 0 0%;\n }\n .row-cols-md-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-md-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-md-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-md-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-md-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-md-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-md-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-md-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-md-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-md-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-md-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-md-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-md-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-md-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-md-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-md-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-md-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-md-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-md-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-md-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-md-0 {\n margin-left: 0;\n }\n .offset-md-1 {\n margin-left: 8.33333333%;\n }\n .offset-md-2 {\n margin-left: 16.66666667%;\n }\n .offset-md-3 {\n margin-left: 25%;\n }\n .offset-md-4 {\n margin-left: 33.33333333%;\n }\n .offset-md-5 {\n margin-left: 41.66666667%;\n }\n .offset-md-6 {\n margin-left: 50%;\n }\n .offset-md-7 {\n margin-left: 58.33333333%;\n }\n .offset-md-8 {\n margin-left: 66.66666667%;\n }\n .offset-md-9 {\n margin-left: 75%;\n }\n .offset-md-10 {\n margin-left: 83.33333333%;\n }\n .offset-md-11 {\n margin-left: 91.66666667%;\n }\n .g-md-0,\n .gx-md-0 {\n --bs-gutter-x: 0;\n }\n .g-md-0,\n .gy-md-0 {\n --bs-gutter-y: 0;\n }\n .g-md-1,\n .gx-md-1 {\n --bs-gutter-x: 0.25em;\n }\n .g-md-1,\n .gy-md-1 {\n --bs-gutter-y: 0.25em;\n }\n .g-md-2,\n .gx-md-2 {\n --bs-gutter-x: 0.5em;\n }\n .g-md-2,\n .gy-md-2 {\n --bs-gutter-y: 0.5em;\n }\n .g-md-3,\n .gx-md-3 {\n --bs-gutter-x: 1em;\n }\n .g-md-3,\n .gy-md-3 {\n --bs-gutter-y: 1em;\n }\n .g-md-4,\n .gx-md-4 {\n --bs-gutter-x: 1.5em;\n }\n .g-md-4,\n .gy-md-4 {\n --bs-gutter-y: 1.5em;\n }\n .g-md-5,\n .gx-md-5 {\n --bs-gutter-x: 3em;\n }\n .g-md-5,\n .gy-md-5 {\n --bs-gutter-y: 3em;\n }\n}\n@media (min-width: 992px) {\n .col-lg {\n flex: 1 0 0%;\n }\n .row-cols-lg-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-lg-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-lg-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-lg-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-lg-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-lg-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-lg-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-lg-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-lg-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-lg-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-lg-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-lg-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-lg-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-lg-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-lg-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-lg-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-lg-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-lg-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-lg-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-lg-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-lg-0 {\n margin-left: 0;\n }\n .offset-lg-1 {\n margin-left: 8.33333333%;\n }\n .offset-lg-2 {\n margin-left: 16.66666667%;\n }\n .offset-lg-3 {\n margin-left: 25%;\n }\n .offset-lg-4 {\n margin-left: 33.33333333%;\n }\n .offset-lg-5 {\n margin-left: 41.66666667%;\n }\n .offset-lg-6 {\n margin-left: 50%;\n }\n .offset-lg-7 {\n margin-left: 58.33333333%;\n }\n .offset-lg-8 {\n margin-left: 66.66666667%;\n }\n .offset-lg-9 {\n margin-left: 75%;\n }\n .offset-lg-10 {\n margin-left: 83.33333333%;\n }\n .offset-lg-11 {\n margin-left: 91.66666667%;\n }\n .g-lg-0,\n .gx-lg-0 {\n --bs-gutter-x: 0;\n }\n .g-lg-0,\n .gy-lg-0 {\n --bs-gutter-y: 0;\n }\n .g-lg-1,\n .gx-lg-1 {\n --bs-gutter-x: 0.25em;\n }\n .g-lg-1,\n .gy-lg-1 {\n --bs-gutter-y: 0.25em;\n }\n .g-lg-2,\n .gx-lg-2 {\n --bs-gutter-x: 0.5em;\n }\n .g-lg-2,\n .gy-lg-2 {\n --bs-gutter-y: 0.5em;\n }\n .g-lg-3,\n .gx-lg-3 {\n --bs-gutter-x: 1em;\n }\n .g-lg-3,\n .gy-lg-3 {\n --bs-gutter-y: 1em;\n }\n .g-lg-4,\n .gx-lg-4 {\n --bs-gutter-x: 1.5em;\n }\n .g-lg-4,\n .gy-lg-4 {\n --bs-gutter-y: 1.5em;\n }\n .g-lg-5,\n .gx-lg-5 {\n --bs-gutter-x: 3em;\n }\n .g-lg-5,\n .gy-lg-5 {\n --bs-gutter-y: 3em;\n }\n}\n@media (min-width: 1200px) {\n .col-xl {\n flex: 1 0 0%;\n }\n .row-cols-xl-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-xl-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-xl-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-xl-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-xl-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-xl-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-xl-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-xl-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-xl-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-xl-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-xl-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-xl-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-xl-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-xl-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-xl-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-xl-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-xl-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-xl-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-xl-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-xl-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-xl-0 {\n margin-left: 0;\n }\n .offset-xl-1 {\n margin-left: 8.33333333%;\n }\n .offset-xl-2 {\n margin-left: 16.66666667%;\n }\n .offset-xl-3 {\n margin-left: 25%;\n }\n .offset-xl-4 {\n margin-left: 33.33333333%;\n }\n .offset-xl-5 {\n margin-left: 41.66666667%;\n }\n .offset-xl-6 {\n margin-left: 50%;\n }\n .offset-xl-7 {\n margin-left: 58.33333333%;\n }\n .offset-xl-8 {\n margin-left: 66.66666667%;\n }\n .offset-xl-9 {\n margin-left: 75%;\n }\n .offset-xl-10 {\n margin-left: 83.33333333%;\n }\n .offset-xl-11 {\n margin-left: 91.66666667%;\n }\n .g-xl-0,\n .gx-xl-0 {\n --bs-gutter-x: 0;\n }\n .g-xl-0,\n .gy-xl-0 {\n --bs-gutter-y: 0;\n }\n .g-xl-1,\n .gx-xl-1 {\n --bs-gutter-x: 0.25em;\n }\n .g-xl-1,\n .gy-xl-1 {\n --bs-gutter-y: 0.25em;\n }\n .g-xl-2,\n .gx-xl-2 {\n --bs-gutter-x: 0.5em;\n }\n .g-xl-2,\n .gy-xl-2 {\n --bs-gutter-y: 0.5em;\n }\n .g-xl-3,\n .gx-xl-3 {\n --bs-gutter-x: 1em;\n }\n .g-xl-3,\n .gy-xl-3 {\n --bs-gutter-y: 1em;\n }\n .g-xl-4,\n .gx-xl-4 {\n --bs-gutter-x: 1.5em;\n }\n .g-xl-4,\n .gy-xl-4 {\n --bs-gutter-y: 1.5em;\n }\n .g-xl-5,\n .gx-xl-5 {\n --bs-gutter-x: 3em;\n }\n .g-xl-5,\n .gy-xl-5 {\n --bs-gutter-y: 3em;\n }\n}\n@media (min-width: 1400px) {\n .col-xxl {\n flex: 1 0 0%;\n }\n .row-cols-xxl-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-xxl-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-xxl-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-xxl-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-xxl-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-xxl-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-xxl-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-xxl-auto {\n flex: 0 0 auto;\n width: auto;\n }\n .col-xxl-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-xxl-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-xxl-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n .col-xxl-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-xxl-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-xxl-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n .col-xxl-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-xxl-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-xxl-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n .col-xxl-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-xxl-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-xxl-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-xxl-0 {\n margin-left: 0;\n }\n .offset-xxl-1 {\n margin-left: 8.33333333%;\n }\n .offset-xxl-2 {\n margin-left: 16.66666667%;\n }\n .offset-xxl-3 {\n margin-left: 25%;\n }\n .offset-xxl-4 {\n margin-left: 33.33333333%;\n }\n .offset-xxl-5 {\n margin-left: 41.66666667%;\n }\n .offset-xxl-6 {\n margin-left: 50%;\n }\n .offset-xxl-7 {\n margin-left: 58.33333333%;\n }\n .offset-xxl-8 {\n margin-left: 66.66666667%;\n }\n .offset-xxl-9 {\n margin-left: 75%;\n }\n .offset-xxl-10 {\n margin-left: 83.33333333%;\n }\n .offset-xxl-11 {\n margin-left: 91.66666667%;\n }\n .g-xxl-0,\n .gx-xxl-0 {\n --bs-gutter-x: 0;\n }\n .g-xxl-0,\n .gy-xxl-0 {\n --bs-gutter-y: 0;\n }\n .g-xxl-1,\n .gx-xxl-1 {\n --bs-gutter-x: 0.25em;\n }\n .g-xxl-1,\n .gy-xxl-1 {\n --bs-gutter-y: 0.25em;\n }\n .g-xxl-2,\n .gx-xxl-2 {\n --bs-gutter-x: 0.5em;\n }\n .g-xxl-2,\n .gy-xxl-2 {\n --bs-gutter-y: 0.5em;\n }\n .g-xxl-3,\n .gx-xxl-3 {\n --bs-gutter-x: 1em;\n }\n .g-xxl-3,\n .gy-xxl-3 {\n --bs-gutter-y: 1em;\n }\n .g-xxl-4,\n .gx-xxl-4 {\n --bs-gutter-x: 1.5em;\n }\n .g-xxl-4,\n .gy-xxl-4 {\n --bs-gutter-y: 1.5em;\n }\n .g-xxl-5,\n .gx-xxl-5 {\n --bs-gutter-x: 3em;\n }\n .g-xxl-5,\n .gy-xxl-5 {\n --bs-gutter-y: 3em;\n }\n}\n.table {\n --bs-table-color: var(--bs-body-color);\n --bs-table-bg: transparent;\n --bs-table-border-color: var(--bs-border-color);\n --bs-table-accent-bg: transparent;\n --bs-table-striped-color: var(--bs-body-color);\n --bs-table-striped-bg: rgba(0, 0, 0, 0.05);\n --bs-table-active-color: var(--bs-body-color);\n --bs-table-active-bg: rgba(0, 0, 0, 0.1);\n --bs-table-hover-color: var(--bs-body-color);\n --bs-table-hover-bg: rgba(0, 0, 0, 0.075);\n width: 100%;\n margin-bottom: 1em;\n color: var(--bs-table-color);\n vertical-align: top;\n border-color: var(--bs-table-border-color);\n}\n.table > :not(caption) > * > * {\n padding: 0.5em 0.5em;\n background-color: var(--bs-table-bg);\n border-bottom-width: var(--bs-border-width);\n box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg);\n}\n.table > tbody {\n vertical-align: inherit;\n}\n.table > thead {\n vertical-align: bottom;\n}\n\n.table-group-divider {\n border-top: calc(var(--bs-border-width) * 2) solid currentcolor;\n}\n\n.caption-top {\n caption-side: top;\n}\n\n.table-sm > :not(caption) > * > * {\n padding: 0.25em 0.25em;\n}\n\n.table-bordered > :not(caption) > * {\n border-width: var(--bs-border-width) 0;\n}\n.table-bordered > :not(caption) > * > * {\n border-width: 0 var(--bs-border-width);\n}\n\n.table-borderless > :not(caption) > * > * {\n border-bottom-width: 0;\n}\n.table-borderless > :not(:first-child) {\n border-top-width: 0;\n}\n\n.table-striped > tbody > tr:nth-of-type(odd) > * {\n --bs-table-accent-bg: var(--bs-table-striped-bg);\n color: var(--bs-table-striped-color);\n}\n\n.table-striped-columns > :not(caption) > tr > :nth-child(even) {\n --bs-table-accent-bg: var(--bs-table-striped-bg);\n color: var(--bs-table-striped-color);\n}\n\n.table-active {\n --bs-table-accent-bg: var(--bs-table-active-bg);\n color: var(--bs-table-active-color);\n}\n\n.table-hover > tbody > tr:hover > * {\n --bs-table-accent-bg: var(--bs-table-hover-bg);\n color: var(--bs-table-hover-color);\n}\n\n.table-primary {\n --bs-table-color: #000;\n --bs-table-bg: #ccdada;\n --bs-table-border-color: #b8c4c4;\n --bs-table-striped-bg: #c2cfcf;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #b8c4c4;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #bdcaca;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n\n.table-secondary {\n --bs-table-color: #000;\n --bs-table-bg: #fcfcfc;\n --bs-table-border-color: #e3e3e3;\n --bs-table-striped-bg: #efefef;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #e3e3e3;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #e9e9e9;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n\n.table-success {\n --bs-table-color: #000;\n --bs-table-bg: #ecf7f0;\n --bs-table-border-color: #d4ded8;\n --bs-table-striped-bg: #e0ebe4;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #d4ded8;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #dae4de;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n\n.table-info {\n --bs-table-color: #000;\n --bs-table-bg: #ccdada;\n --bs-table-border-color: #b8c4c4;\n --bs-table-striped-bg: #c2cfcf;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #b8c4c4;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #bdcaca;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n\n.table-warning {\n --bs-table-color: #000;\n --bs-table-bg: #fff1cf;\n --bs-table-border-color: #e6d9ba;\n --bs-table-striped-bg: #f2e5c5;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #e6d9ba;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #ecdfbf;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n\n.table-danger {\n --bs-table-color: #000;\n --bs-table-bg: #f0d7d8;\n --bs-table-border-color: #d8c2c2;\n --bs-table-striped-bg: #e4cccd;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #d8c2c2;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #dec7c8;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n\n.table-light {\n --bs-table-color: #000;\n --bs-table-bg: #fff;\n --bs-table-border-color: #e6e6e6;\n --bs-table-striped-bg: #f2f2f2;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #e6e6e6;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #ececec;\n --bs-table-hover-color: #000;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n\n.table-dark {\n --bs-table-color: #fff;\n --bs-table-bg: #18252a;\n --bs-table-border-color: #2f3b3f;\n --bs-table-striped-bg: #243035;\n --bs-table-striped-color: #fff;\n --bs-table-active-bg: #2f3b3f;\n --bs-table-active-color: #fff;\n --bs-table-hover-bg: #29353a;\n --bs-table-hover-color: #fff;\n color: var(--bs-table-color);\n border-color: var(--bs-table-border-color);\n}\n\n.table-responsive {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n}\n\n@media (max-width: 575.98px) {\n .table-responsive-sm {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 767.98px) {\n .table-responsive-md {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 991.98px) {\n .table-responsive-lg {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 1199.98px) {\n .table-responsive-xl {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 1399.98px) {\n .table-responsive-xxl {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n.form-label {\n margin-bottom: 0.5em;\n}\n\n.col-form-label {\n padding-top: calc(0.375em + var(--bs-border-width));\n padding-bottom: calc(0.375em + var(--bs-border-width));\n margin-bottom: 0;\n font-size: inherit;\n line-height: 1.5;\n}\n\n.col-form-label-lg {\n padding-top: calc(0.5em + var(--bs-border-width));\n padding-bottom: calc(0.5em + var(--bs-border-width));\n font-size: 1.25em;\n}\n\n.col-form-label-sm {\n padding-top: calc(0.25em + var(--bs-border-width));\n padding-bottom: calc(0.25em + var(--bs-border-width));\n font-size: 1em;\n}\n\n.form-text {\n margin-top: 0.25em;\n font-size: 0.875em;\n color: var(--bs-secondary-color);\n}\n\n.form-control {\n display: block;\n width: 100%;\n padding: 0.375em 0.75em;\n font-size: 1em;\n font-weight: 400;\n line-height: 1.5;\n color: var(--bs-body-color);\n background-color: var(--bs-body-bg);\n background-clip: padding-box;\n border: var(--bs-border-width) solid var(--bs-border-color);\n appearance: none;\n border-radius: 0;\n transition:\n border-color 0.15s ease-in-out,\n box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-control {\n transition: none;\n }\n}\n.form-control[type='file'] {\n overflow: hidden;\n}\n.form-control[type='file']:not(:disabled):not([readonly]) {\n cursor: pointer;\n}\n.form-control:focus {\n color: var(--bs-body-color);\n background-color: var(--bs-body-bg);\n border-color: #80a2a2;\n outline: 0;\n box-shadow: 0 0 0 0.25em blue;\n}\n.form-control::-webkit-date-and-time-value {\n min-width: 85px;\n height: 1.5em;\n margin: 0;\n}\n.form-control::-webkit-datetime-edit {\n display: block;\n padding: 0;\n}\n.form-control::placeholder {\n color: var(--bs-secondary-color);\n opacity: 1;\n}\n.form-control:disabled {\n background-color: var(--bs-secondary-bg);\n opacity: 1;\n}\n.form-control::file-selector-button {\n padding: 0.375em 0.75em;\n margin: -0.375em -0.75em;\n margin-inline-end: 0.75em;\n color: var(--bs-body-color);\n background-color: var(--bs-tertiary-bg);\n pointer-events: none;\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n border-inline-end-width: var(--bs-border-width);\n border-radius: 0;\n transition:\n color 0.15s ease-in-out,\n background-color 0.15s ease-in-out,\n border-color 0.15s ease-in-out,\n box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-control::file-selector-button {\n transition: none;\n }\n}\n.form-control:hover:not(:disabled):not([readonly])::file-selector-button {\n background-color: var(--bs-secondary-bg);\n}\n\n.form-control-plaintext {\n display: block;\n width: 100%;\n padding: 0.375em 0;\n margin-bottom: 0;\n line-height: 1.5;\n color: var(--bs-body-color);\n background-color: transparent;\n border: solid transparent;\n border-width: var(--bs-border-width) 0;\n}\n.form-control-plaintext:focus {\n outline: 0;\n}\n.form-control-plaintext.form-control-sm,\n.form-control-plaintext.form-control-lg {\n padding-right: 0;\n padding-left: 0;\n}\n\n.form-control-sm {\n min-height: calc(1.5em + 0.5em + calc(var(--bs-border-width) * 2));\n padding: 0.25em 0.5em;\n font-size: 1em;\n}\n.form-control-sm::file-selector-button {\n padding: 0.25em 0.5em;\n margin: -0.25em -0.5em;\n margin-inline-end: 0.5em;\n}\n\n.form-control-lg {\n min-height: calc(1.5em + 1em + calc(var(--bs-border-width) * 2));\n padding: 0.5em 1em;\n font-size: 1.25em;\n}\n.form-control-lg::file-selector-button {\n padding: 0.5em 1em;\n margin: -0.5em -1em;\n margin-inline-end: 1em;\n}\n\ntextarea.form-control {\n min-height: calc(1.5em + 0.75em + calc(var(--bs-border-width) * 2));\n}\ntextarea.form-control-sm {\n min-height: calc(1.5em + 0.5em + calc(var(--bs-border-width) * 2));\n}\ntextarea.form-control-lg {\n min-height: calc(1.5em + 1em + calc(var(--bs-border-width) * 2));\n}\n\n.form-control-color {\n width: 3em;\n height: calc(1.5em + 0.75em + calc(var(--bs-border-width) * 2));\n padding: 0.375em;\n}\n.form-control-color:not(:disabled):not([readonly]) {\n cursor: pointer;\n}\n.form-control-color::-moz-color-swatch {\n border: 0 !important;\n}\n.form-control-color::-webkit-color-swatch {\n border: 0 !important;\n}\n.form-control-color.form-control-sm {\n height: calc(1.5em + 0.5em + calc(var(--bs-border-width) * 2));\n}\n.form-control-color.form-control-lg {\n height: calc(1.5em + 1em + calc(var(--bs-border-width) * 2));\n}\n\n.form-select {\n --bs-form-select-bg-img: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e\");\n display: block;\n width: 100%;\n padding: 0.375em 2.25em 0.375em 0.75em;\n font-size: 1em;\n font-weight: 400;\n line-height: 1.5;\n color: var(--bs-body-color);\n background-color: var(--bs-body-bg);\n background-image: var(--bs-form-select-bg-img),\n var(--bs-form-select-bg-icon, none);\n background-repeat: no-repeat;\n background-position: right 0.75em center;\n background-size: 16px 12px;\n border: var(--bs-border-width) solid var(--bs-border-color);\n border-radius: 0;\n transition:\n border-color 0.15s ease-in-out,\n box-shadow 0.15s ease-in-out;\n appearance: none;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-select {\n transition: none;\n }\n}\n.form-select:focus {\n border-color: #80a2a2;\n outline: 0;\n box-shadow: 0 0 0 0.25em blue;\n}\n.form-select[multiple],\n.form-select[size]:not([size='1']) {\n padding-right: 0.75em;\n background-image: none;\n}\n.form-select:disabled {\n background-color: var(--bs-secondary-bg);\n}\n.form-select:-moz-focusring {\n color: transparent;\n text-shadow: 0 0 0 var(--bs-body-color);\n}\n\n.form-select-sm {\n padding-top: 0.25em;\n padding-bottom: 0.25em;\n padding-left: 0.5em;\n font-size: 1em;\n}\n\n.form-select-lg {\n padding-top: 0.5em;\n padding-bottom: 0.5em;\n padding-left: 1em;\n font-size: 1.25em;\n}\n\n[data-bs-theme='dark'] .form-select {\n --bs-form-select-bg-img: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23adb5bd' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e\");\n}\n\n.form-check {\n display: block;\n min-height: 1.5em;\n padding-left: 1.5em;\n margin-bottom: 0.125em;\n}\n.form-check .form-check-input {\n float: left;\n margin-left: -1.5em;\n}\n\n.form-check-reverse {\n padding-right: 1.5em;\n padding-left: 0;\n text-align: right;\n}\n.form-check-reverse .form-check-input {\n float: right;\n margin-right: -1.5em;\n margin-left: 0;\n}\n\n.form-check-input {\n --bs-form-check-bg: var(--bs-body-bg);\n width: 1em;\n height: 1em;\n margin-top: 0.25em;\n vertical-align: top;\n background-color: var(--bs-form-check-bg);\n background-image: var(--bs-form-check-bg-image);\n background-repeat: no-repeat;\n background-position: center;\n background-size: contain;\n border: var(--bs-border-width) solid var(--bs-border-color);\n appearance: none;\n print-color-adjust: exact;\n}\n.form-check-input[type='radio'] {\n border-radius: 50%;\n}\n.form-check-input:active {\n filter: brightness(90%);\n}\n.form-check-input:focus {\n border-color: #80a2a2;\n outline: 0;\n box-shadow: 0 0 0 0.25em blue;\n}\n.form-check-input:checked {\n background-color: #004445;\n border-color: #004445;\n}\n.form-check-input:checked[type='checkbox'] {\n --bs-form-check-bg-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e\");\n}\n.form-check-input:checked[type='radio'] {\n --bs-form-check-bg-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e\");\n}\n.form-check-input[type='checkbox']:indeterminate {\n background-color: #004445;\n border-color: #004445;\n --bs-form-check-bg-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e\");\n}\n.form-check-input:disabled {\n pointer-events: none;\n filter: none;\n opacity: 0.5;\n}\n.form-check-input[disabled] ~ .form-check-label,\n.form-check-input:disabled ~ .form-check-label {\n cursor: default;\n opacity: 0.5;\n}\n\n.form-switch {\n padding-left: 2.5em;\n}\n.form-switch .form-check-input {\n --bs-form-switch-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e\");\n width: 2em;\n margin-left: -2.5em;\n background-image: var(--bs-form-switch-bg);\n background-position: left center;\n transition: background-position 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-switch .form-check-input {\n transition: none;\n }\n}\n.form-switch .form-check-input:focus {\n --bs-form-switch-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2380a2a2'/%3e%3c/svg%3e\");\n}\n.form-switch .form-check-input:checked {\n background-position: right center;\n --bs-form-switch-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e\");\n}\n.form-switch.form-check-reverse {\n padding-right: 2.5em;\n padding-left: 0;\n}\n.form-switch.form-check-reverse .form-check-input {\n margin-right: -2.5em;\n margin-left: 0;\n}\n\n.form-check-inline {\n display: inline-block;\n margin-right: 1em;\n}\n\n.btn-check {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n}\n.btn-check[disabled] + .btn,\n.btn-check:disabled + .btn {\n pointer-events: none;\n filter: none;\n opacity: 0.65;\n}\n\n[data-bs-theme='dark']\n .form-switch\n .form-check-input:not(:checked):not(:focus) {\n --bs-form-switch-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e\");\n}\n\n.form-range {\n width: 100%;\n height: 1.5em;\n padding: 0;\n background-color: transparent;\n appearance: none;\n}\n.form-range:focus {\n outline: 0;\n}\n.form-range:focus::-webkit-slider-thumb {\n box-shadow:\n 0 0 0 1px #fff,\n 0 0 0 0.25em blue;\n}\n.form-range:focus::-moz-range-thumb {\n box-shadow:\n 0 0 0 1px #fff,\n 0 0 0 0.25em blue;\n}\n.form-range::-moz-focus-outer {\n border: 0;\n}\n.form-range::-webkit-slider-thumb {\n width: 1em;\n height: 1em;\n margin-top: -0.25em;\n background-color: #004445;\n border: 0;\n transition:\n background-color 0.15s ease-in-out,\n border-color 0.15s ease-in-out,\n box-shadow 0.15s ease-in-out;\n appearance: none;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-range::-webkit-slider-thumb {\n transition: none;\n }\n}\n.form-range::-webkit-slider-thumb:active {\n background-color: #b3c7c7;\n}\n.form-range::-webkit-slider-runnable-track {\n width: 100%;\n height: 0.5em;\n color: transparent;\n cursor: pointer;\n background-color: var(--bs-tertiary-bg);\n border-color: transparent;\n}\n.form-range::-moz-range-thumb {\n width: 1em;\n height: 1em;\n background-color: #004445;\n border: 0;\n transition:\n background-color 0.15s ease-in-out,\n border-color 0.15s ease-in-out,\n box-shadow 0.15s ease-in-out;\n appearance: none;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-range::-moz-range-thumb {\n transition: none;\n }\n}\n.form-range::-moz-range-thumb:active {\n background-color: #b3c7c7;\n}\n.form-range::-moz-range-track {\n width: 100%;\n height: 0.5em;\n color: transparent;\n cursor: pointer;\n background-color: var(--bs-tertiary-bg);\n border-color: transparent;\n}\n.form-range:disabled {\n pointer-events: none;\n}\n.form-range:disabled::-webkit-slider-thumb {\n background-color: var(--bs-secondary-color);\n}\n.form-range:disabled::-moz-range-thumb {\n background-color: var(--bs-secondary-color);\n}\n\n.form-floating {\n position: relative;\n}\n.form-floating > .form-control,\n.form-floating > .form-control-plaintext,\n.form-floating > .form-select {\n height: calc(3.5em + calc(var(--bs-border-width) * 2));\n line-height: 1.25;\n}\n.form-floating > label {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 2;\n height: 100%;\n padding: 1em 0.75em;\n overflow: hidden;\n text-align: start;\n text-overflow: ellipsis;\n white-space: nowrap;\n pointer-events: none;\n border: var(--bs-border-width) solid transparent;\n transform-origin: 0 0;\n transition:\n opacity 0.1s ease-in-out,\n transform 0.1s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-floating > label {\n transition: none;\n }\n}\n.form-floating > .form-control,\n.form-floating > .form-control-plaintext {\n padding: 1em 0.75em;\n}\n.form-floating > .form-control::placeholder,\n.form-floating > .form-control-plaintext::placeholder {\n color: transparent;\n}\n.form-floating > .form-control:focus,\n.form-floating > .form-control:not(:placeholder-shown),\n.form-floating > .form-control-plaintext:focus,\n.form-floating > .form-control-plaintext:not(:placeholder-shown) {\n padding-top: 1.625em;\n padding-bottom: 0.625em;\n}\n.form-floating > .form-control:-webkit-autofill,\n.form-floating > .form-control-plaintext:-webkit-autofill {\n padding-top: 1.625em;\n padding-bottom: 0.625em;\n}\n.form-floating > .form-select {\n padding-top: 1.625em;\n padding-bottom: 0.625em;\n}\n.form-floating > .form-control:focus ~ label,\n.form-floating > .form-control:not(:placeholder-shown) ~ label,\n.form-floating > .form-control-plaintext ~ label,\n.form-floating > .form-select ~ label {\n color: rgba(var(--bs-body-color-rgb), 0.65);\n transform: scale(0.85) translateY(-0.5em) translateX(0.15em);\n}\n.form-floating > .form-control:focus ~ label::after,\n.form-floating > .form-control:not(:placeholder-shown) ~ label::after,\n.form-floating > .form-control-plaintext ~ label::after,\n.form-floating > .form-select ~ label::after {\n position: absolute;\n inset: 1em 0.375em;\n z-index: -1;\n height: 1.5em;\n content: '';\n background-color: var(--bs-body-bg);\n}\n.form-floating > .form-control:-webkit-autofill ~ label {\n color: rgba(var(--bs-body-color-rgb), 0.65);\n transform: scale(0.85) translateY(-0.5em) translateX(0.15em);\n}\n.form-floating > .form-control-plaintext ~ label {\n border-width: var(--bs-border-width) 0;\n}\n.form-floating > :disabled ~ label {\n color: #6c757d;\n}\n.form-floating > :disabled ~ label::after {\n background-color: var(--bs-secondary-bg);\n}\n\n.input-group {\n position: relative;\n display: flex;\n flex-wrap: wrap;\n align-items: stretch;\n width: 100%;\n}\n.input-group > .form-control,\n.input-group > .form-select,\n.input-group > .form-floating {\n position: relative;\n flex: 1 1 auto;\n width: 1%;\n min-width: 0;\n}\n.input-group > .form-control:focus,\n.input-group > .form-select:focus,\n.input-group > .form-floating:focus-within {\n z-index: 5;\n}\n.input-group .btn {\n position: relative;\n z-index: 2;\n}\n.input-group .btn:focus {\n z-index: 5;\n}\n\n.input-group-text {\n display: flex;\n align-items: center;\n padding: 0.375em 0.75em;\n font-size: 1em;\n font-weight: 400;\n line-height: 1.5;\n color: var(--bs-body-color);\n text-align: center;\n white-space: nowrap;\n background-color: var(--bs-tertiary-bg);\n border: var(--bs-border-width) solid var(--bs-border-color);\n}\n\n.input-group-lg > .form-control,\n.input-group-lg > .form-select,\n.input-group-lg > .input-group-text,\n.input-group-lg > .btn {\n padding: 0.5em 1em;\n font-size: 1.25em;\n}\n\n.input-group-sm > .form-control,\n.input-group-sm > .form-select,\n.input-group-sm > .input-group-text,\n.input-group-sm > .btn {\n padding: 0.25em 0.5em;\n font-size: 1em;\n}\n\n.input-group-lg > .form-select,\n.input-group-sm > .form-select {\n padding-right: 3em;\n}\n\n.input-group\n > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(\n .valid-feedback\n ):not(.invalid-tooltip):not(.invalid-feedback) {\n margin-left: calc(var(--bs-border-width) * -1);\n}\n.valid-feedback {\n display: none;\n width: 100%;\n margin-top: 0.25em;\n font-size: 0.875em;\n color: var(--bs-form-valid-color);\n}\n\n.valid-tooltip {\n position: absolute;\n top: 100%;\n z-index: 5;\n display: none;\n max-width: 100%;\n padding: 0.25em 0.5em;\n margin-top: 0.1em;\n font-size: 1em;\n color: #fff;\n background-color: var(--bs-success);\n}\n\n.was-validated :valid ~ .valid-feedback,\n.was-validated :valid ~ .valid-tooltip,\n.is-valid ~ .valid-feedback,\n.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .form-control:valid,\n.form-control.is-valid {\n border-color: var(--bs-form-valid-border-color);\n padding-right: calc(1.5em + 0.75em);\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%239fd5b3' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\");\n background-repeat: no-repeat;\n background-position: right calc(0.375em + 0.1875em) center;\n background-size: calc(0.75em + 0.375em) calc(0.75em + 0.375em);\n}\n.was-validated .form-control:valid:focus,\n.form-control.is-valid:focus {\n border-color: var(--bs-form-valid-border-color);\n box-shadow: 0 0 0 0.25em rgba(var(--bs-success-rgb), 1);\n}\n\n.was-validated textarea.form-control:valid,\ntextarea.form-control.is-valid {\n padding-right: calc(1.5em + 0.75em);\n background-position: top calc(0.375em + 0.1875em) right\n calc(0.375em + 0.1875em);\n}\n\n.was-validated .form-select:valid,\n.form-select.is-valid {\n border-color: var(--bs-form-valid-border-color);\n}\n.was-validated .form-select:valid:not([multiple]):not([size]),\n.was-validated .form-select:valid:not([multiple])[size='1'],\n.form-select.is-valid:not([multiple]):not([size]),\n.form-select.is-valid:not([multiple])[size='1'] {\n --bs-form-select-bg-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%239fd5b3' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\");\n padding-right: 4.125em;\n background-position:\n right 0.75em center,\n center right 2.25em;\n background-size:\n 16px 12px,\n calc(0.75em + 0.375em) calc(0.75em + 0.375em);\n}\n.was-validated .form-select:valid:focus,\n.form-select.is-valid:focus {\n border-color: var(--bs-form-valid-border-color);\n box-shadow: 0 0 0 0.25em rgba(var(--bs-success-rgb), 1);\n}\n\n.was-validated .form-control-color:valid,\n.form-control-color.is-valid {\n width: calc(3em + calc(1.5em + 0.75em));\n}\n\n.was-validated .form-check-input:valid,\n.form-check-input.is-valid {\n border-color: var(--bs-form-valid-border-color);\n}\n.was-validated .form-check-input:valid:checked,\n.form-check-input.is-valid:checked {\n background-color: var(--bs-form-valid-color);\n}\n.was-validated .form-check-input:valid:focus,\n.form-check-input.is-valid:focus {\n box-shadow: 0 0 0 0.25em rgba(var(--bs-success-rgb), 1);\n}\n.was-validated .form-check-input:valid ~ .form-check-label,\n.form-check-input.is-valid ~ .form-check-label {\n color: var(--bs-form-valid-color);\n}\n\n.form-check-inline .form-check-input ~ .valid-feedback {\n margin-left: 0.5em;\n}\n\n.was-validated .input-group > .form-control:not(:focus):valid,\n.input-group > .form-control:not(:focus).is-valid,\n.was-validated .input-group > .form-select:not(:focus):valid,\n.input-group > .form-select:not(:focus).is-valid,\n.was-validated .input-group > .form-floating:not(:focus-within):valid,\n.input-group > .form-floating:not(:focus-within).is-valid {\n z-index: 3;\n}\n\n.invalid-feedback {\n display: none;\n width: 100%;\n margin-top: 0.25em;\n font-size: 0.875em;\n color: var(--bs-form-invalid-color);\n}\n\n.invalid-tooltip {\n position: absolute;\n top: 100%;\n z-index: 5;\n display: none;\n max-width: 100%;\n padding: 0.25em 0.5em;\n margin-top: 0.1em;\n font-size: 1em;\n color: #fff;\n background-color: var(--bs-danger);\n}\n\n.was-validated :invalid ~ .invalid-feedback,\n.was-validated :invalid ~ .invalid-tooltip,\n.is-invalid ~ .invalid-feedback,\n.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .form-control:invalid,\n.form-control.is-invalid {\n border-color: var(--bs-form-invalid-border-color);\n padding-right: calc(1.5em + 0.75em);\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23b3393b'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23b3393b' stroke='none'/%3e%3c/svg%3e\");\n background-repeat: no-repeat;\n background-position: right calc(0.375em + 0.1875em) center;\n background-size: calc(0.75em + 0.375em) calc(0.75em + 0.375em);\n}\n.was-validated .form-control:invalid:focus,\n.form-control.is-invalid:focus {\n border-color: var(--bs-form-invalid-border-color);\n box-shadow: 0 0 0 0.25em rgba(var(--bs-danger-rgb), 1);\n}\n\n.was-validated textarea.form-control:invalid,\ntextarea.form-control.is-invalid {\n padding-right: calc(1.5em + 0.75em);\n background-position: top calc(0.375em + 0.1875em) right\n calc(0.375em + 0.1875em);\n}\n\n.was-validated .form-select:invalid,\n.form-select.is-invalid {\n border-color: var(--bs-form-invalid-border-color);\n}\n.was-validated .form-select:invalid:not([multiple]):not([size]),\n.was-validated .form-select:invalid:not([multiple])[size='1'],\n.form-select.is-invalid:not([multiple]):not([size]),\n.form-select.is-invalid:not([multiple])[size='1'] {\n --bs-form-select-bg-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23b3393b'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23b3393b' stroke='none'/%3e%3c/svg%3e\");\n padding-right: 4.125em;\n background-position:\n right 0.75em center,\n center right 2.25em;\n background-size:\n 16px 12px,\n calc(0.75em + 0.375em) calc(0.75em + 0.375em);\n}\n.was-validated .form-select:invalid:focus,\n.form-select.is-invalid:focus {\n border-color: var(--bs-form-invalid-border-color);\n box-shadow: 0 0 0 0.25em rgba(var(--bs-danger-rgb), 1);\n}\n\n.was-validated .form-control-color:invalid,\n.form-control-color.is-invalid {\n width: calc(3em + calc(1.5em + 0.75em));\n}\n\n.was-validated .form-check-input:invalid,\n.form-check-input.is-invalid {\n border-color: var(--bs-form-invalid-border-color);\n}\n.was-validated .form-check-input:invalid:checked,\n.form-check-input.is-invalid:checked {\n background-color: var(--bs-form-invalid-color);\n}\n.was-validated .form-check-input:invalid:focus,\n.form-check-input.is-invalid:focus {\n box-shadow: 0 0 0 0.25em rgba(var(--bs-danger-rgb), 1);\n}\n.was-validated .form-check-input:invalid ~ .form-check-label,\n.form-check-input.is-invalid ~ .form-check-label {\n color: var(--bs-form-invalid-color);\n}\n\n.form-check-inline .form-check-input ~ .invalid-feedback {\n margin-left: 0.5em;\n}\n\n.was-validated .input-group > .form-control:not(:focus):invalid,\n.input-group > .form-control:not(:focus).is-invalid,\n.was-validated .input-group > .form-select:not(:focus):invalid,\n.input-group > .form-select:not(:focus).is-invalid,\n.was-validated .input-group > .form-floating:not(:focus-within):invalid,\n.input-group > .form-floating:not(:focus-within).is-invalid {\n z-index: 4;\n}\n\n.btn {\n --bs-btn-padding-x: 0.75em;\n --bs-btn-padding-y: 0.375em;\n --bs-btn-font-family: ;\n --bs-btn-font-size: 1em;\n --bs-btn-font-weight: 400;\n --bs-btn-line-height: 1.5;\n --bs-btn-color: var(--bs-body-color);\n --bs-btn-bg: transparent;\n --bs-btn-border-width: var(--bs-border-width);\n --bs-btn-border-color: transparent;\n --bs-btn-border-radius: var(--bs-border-radius);\n --bs-btn-hover-border-color: transparent;\n --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15),\n 0 1px 1px rgba(0, 0, 0, 0.075);\n --bs-btn-disabled-opacity: 0.65;\n --bs-btn-focus-box-shadow: 0 0 0 0.25em\n rgba(var(--bs-btn-focus-shadow-rgb), 0.5);\n display: inline-block;\n padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);\n font-family: var(--bs-btn-font-family);\n font-size: var(--bs-btn-font-size);\n font-weight: var(--bs-btn-font-weight);\n line-height: var(--bs-btn-line-height);\n color: var(--bs-btn-color);\n text-align: center;\n text-decoration: none;\n vertical-align: middle;\n cursor: pointer;\n user-select: none;\n border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);\n background-color: var(--bs-btn-bg);\n transition:\n color 0.15s ease-in-out,\n background-color 0.15s ease-in-out,\n border-color 0.15s ease-in-out,\n box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .btn {\n transition: none;\n }\n}\n.btn:hover {\n color: var(--bs-btn-hover-color);\n background-color: var(--bs-btn-hover-bg);\n border-color: var(--bs-btn-hover-border-color);\n}\n.btn-check + .btn:hover {\n color: var(--bs-btn-color);\n background-color: var(--bs-btn-bg);\n border-color: var(--bs-btn-border-color);\n}\n.btn:focus-visible {\n color: var(--bs-btn-hover-color);\n background-color: var(--bs-btn-hover-bg);\n border-color: var(--bs-btn-hover-border-color);\n outline: 0;\n box-shadow: var(--bs-btn-focus-box-shadow);\n}\n.btn-check:focus-visible + .btn {\n border-color: var(--bs-btn-hover-border-color);\n outline: 0;\n box-shadow: var(--bs-btn-focus-box-shadow);\n}\n.btn-check:checked + .btn,\n:not(.btn-check) + .btn:active,\n.btn:first-child:active,\n.btn.active,\n.btn.show {\n color: var(--bs-btn-active-color);\n background-color: var(--bs-btn-active-bg);\n border-color: var(--bs-btn-active-border-color);\n}\n.btn-check:checked + .btn:focus-visible,\n:not(.btn-check) + .btn:active:focus-visible,\n.btn:first-child:active:focus-visible,\n.btn.active:focus-visible,\n.btn.show:focus-visible {\n box-shadow: var(--bs-btn-focus-box-shadow);\n}\n.btn:disabled,\n.btn.disabled,\nfieldset:disabled .btn {\n color: var(--bs-btn-disabled-color);\n pointer-events: none;\n background-color: var(--bs-btn-disabled-bg);\n border-color: var(--bs-btn-disabled-border-color);\n opacity: var(--bs-btn-disabled-opacity);\n}\n\n.btn-primary {\n --bs-btn-color: #fff;\n --bs-btn-bg: #004445;\n --bs-btn-border-color: #004445;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #003a3b;\n --bs-btn-hover-border-color: #003637;\n --bs-btn-focus-shadow-rgb: 38, 96, 97;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #003637;\n --bs-btn-active-border-color: #003334;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: #004445;\n --bs-btn-disabled-border-color: #004445;\n}\n\n.btn-secondary {\n --bs-btn-color: #000;\n --bs-btn-bg: #f2f2f2;\n --bs-btn-border-color: #f2f2f2;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #f4f4f4;\n --bs-btn-hover-border-color: #f3f3f3;\n --bs-btn-focus-shadow-rgb: 206, 206, 206;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: whitesmoke;\n --bs-btn-active-border-color: #f3f3f3;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #000;\n --bs-btn-disabled-bg: #f2f2f2;\n --bs-btn-disabled-border-color: #f2f2f2;\n}\n\n.btn-success {\n --bs-btn-color: #000;\n --bs-btn-bg: #9fd5b3;\n --bs-btn-border-color: #9fd5b3;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #addbbe;\n --bs-btn-hover-border-color: #a9d9bb;\n --bs-btn-focus-shadow-rgb: 135, 181, 152;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #b2ddc2;\n --bs-btn-active-border-color: #a9d9bb;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #000;\n --bs-btn-disabled-bg: #9fd5b3;\n --bs-btn-disabled-border-color: #9fd5b3;\n}\n\n.btn-info {\n --bs-btn-color: #fff;\n --bs-btn-bg: #004445;\n --bs-btn-border-color: #004445;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #003a3b;\n --bs-btn-hover-border-color: #003637;\n --bs-btn-focus-shadow-rgb: 38, 96, 97;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #003637;\n --bs-btn-active-border-color: #003334;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: #004445;\n --bs-btn-disabled-border-color: #004445;\n}\n\n.btn-warning {\n --bs-btn-color: #000;\n --bs-btn-bg: #feb70d;\n --bs-btn-border-color: #feb70d;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #fec231;\n --bs-btn-hover-border-color: #febe25;\n --bs-btn-focus-shadow-rgb: 216, 156, 11;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #fec53d;\n --bs-btn-active-border-color: #febe25;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #000;\n --bs-btn-disabled-bg: #feb70d;\n --bs-btn-disabled-border-color: #feb70d;\n}\n\n.btn-danger {\n --bs-btn-color: #fff;\n --bs-btn-bg: #b3393b;\n --bs-btn-border-color: #b3393b;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #983032;\n --bs-btn-hover-border-color: #8f2e2f;\n --bs-btn-focus-shadow-rgb: 190, 87, 88;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #8f2e2f;\n --bs-btn-active-border-color: #862b2c;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: #b3393b;\n --bs-btn-disabled-border-color: #b3393b;\n}\n\n.btn-light {\n --bs-btn-color: #000;\n --bs-btn-bg: #fff;\n --bs-btn-border-color: #fff;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #d9d9d9;\n --bs-btn-hover-border-color: #cccccc;\n --bs-btn-focus-shadow-rgb: 217, 217, 217;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #cccccc;\n --bs-btn-active-border-color: #bfbfbf;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #000;\n --bs-btn-disabled-bg: #fff;\n --bs-btn-disabled-border-color: #fff;\n}\n\n.btn-dark {\n --bs-btn-color: #fff;\n --bs-btn-bg: #18252a;\n --bs-btn-border-color: #18252a;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #3b464a;\n --bs-btn-hover-border-color: #2f3b3f;\n --bs-btn-focus-shadow-rgb: 59, 70, 74;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #465155;\n --bs-btn-active-border-color: #2f3b3f;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: #18252a;\n --bs-btn-disabled-border-color: #18252a;\n}\n\n.btn-accent-primary {\n --bs-btn-color: #000;\n --bs-btn-bg: #feb70d;\n --bs-btn-border-color: #feb70d;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #fec231;\n --bs-btn-hover-border-color: #febe25;\n --bs-btn-focus-shadow-rgb: 216, 156, 11;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #fec53d;\n --bs-btn-active-border-color: #febe25;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #000;\n --bs-btn-disabled-bg: #feb70d;\n --bs-btn-disabled-border-color: #feb70d;\n}\n\n.btn-accent-secondary {\n --bs-btn-color: #000;\n --bs-btn-bg: #9fd5b3;\n --bs-btn-border-color: #9fd5b3;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #addbbe;\n --bs-btn-hover-border-color: #a9d9bb;\n --bs-btn-focus-shadow-rgb: 135, 181, 152;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #b2ddc2;\n --bs-btn-active-border-color: #a9d9bb;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #000;\n --bs-btn-disabled-bg: #9fd5b3;\n --bs-btn-disabled-border-color: #9fd5b3;\n}\n\n.btn-outline-primary {\n --bs-btn-color: #004445;\n --bs-btn-border-color: #004445;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #004445;\n --bs-btn-hover-border-color: #004445;\n --bs-btn-focus-shadow-rgb: 0, 68, 69;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #004445;\n --bs-btn-active-border-color: #004445;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #004445;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #004445;\n --bs-gradient: none;\n}\n\n.btn-outline-secondary {\n --bs-btn-color: #f2f2f2;\n --bs-btn-border-color: #f2f2f2;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #f2f2f2;\n --bs-btn-hover-border-color: #f2f2f2;\n --bs-btn-focus-shadow-rgb: 242, 242, 242;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #f2f2f2;\n --bs-btn-active-border-color: #f2f2f2;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #f2f2f2;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #f2f2f2;\n --bs-gradient: none;\n}\n\n.btn-outline-success {\n --bs-btn-color: #9fd5b3;\n --bs-btn-border-color: #9fd5b3;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #9fd5b3;\n --bs-btn-hover-border-color: #9fd5b3;\n --bs-btn-focus-shadow-rgb: 159, 213, 179;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #9fd5b3;\n --bs-btn-active-border-color: #9fd5b3;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #9fd5b3;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #9fd5b3;\n --bs-gradient: none;\n}\n\n.btn-outline-info {\n --bs-btn-color: #004445;\n --bs-btn-border-color: #004445;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #004445;\n --bs-btn-hover-border-color: #004445;\n --bs-btn-focus-shadow-rgb: 0, 68, 69;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #004445;\n --bs-btn-active-border-color: #004445;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #004445;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #004445;\n --bs-gradient: none;\n}\n\n.btn-outline-warning {\n --bs-btn-color: #feb70d;\n --bs-btn-border-color: #feb70d;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #feb70d;\n --bs-btn-hover-border-color: #feb70d;\n --bs-btn-focus-shadow-rgb: 254, 183, 13;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #feb70d;\n --bs-btn-active-border-color: #feb70d;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #feb70d;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #feb70d;\n --bs-gradient: none;\n}\n\n.btn-outline-danger {\n --bs-btn-color: #b3393b;\n --bs-btn-border-color: #b3393b;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #b3393b;\n --bs-btn-hover-border-color: #b3393b;\n --bs-btn-focus-shadow-rgb: 179, 57, 59;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #b3393b;\n --bs-btn-active-border-color: #b3393b;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #b3393b;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #b3393b;\n --bs-gradient: none;\n}\n\n.btn-outline-light {\n --bs-btn-color: #fff;\n --bs-btn-border-color: #fff;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #fff;\n --bs-btn-hover-border-color: #fff;\n --bs-btn-focus-shadow-rgb: 255, 255, 255;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #fff;\n --bs-btn-active-border-color: #fff;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #fff;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #fff;\n --bs-gradient: none;\n}\n\n.btn-outline-dark {\n --bs-btn-color: #18252a;\n --bs-btn-border-color: #18252a;\n --bs-btn-hover-color: #fff;\n --bs-btn-hover-bg: #18252a;\n --bs-btn-hover-border-color: #18252a;\n --bs-btn-focus-shadow-rgb: 24, 37, 42;\n --bs-btn-active-color: #fff;\n --bs-btn-active-bg: #18252a;\n --bs-btn-active-border-color: #18252a;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #18252a;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #18252a;\n --bs-gradient: none;\n}\n\n.btn-outline-accent-primary {\n --bs-btn-color: #feb70d;\n --bs-btn-border-color: #feb70d;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #feb70d;\n --bs-btn-hover-border-color: #feb70d;\n --bs-btn-focus-shadow-rgb: 254, 183, 13;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #feb70d;\n --bs-btn-active-border-color: #feb70d;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #feb70d;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #feb70d;\n --bs-gradient: none;\n}\n\n.btn-outline-accent-secondary {\n --bs-btn-color: #9fd5b3;\n --bs-btn-border-color: #9fd5b3;\n --bs-btn-hover-color: #000;\n --bs-btn-hover-bg: #9fd5b3;\n --bs-btn-hover-border-color: #9fd5b3;\n --bs-btn-focus-shadow-rgb: 159, 213, 179;\n --bs-btn-active-color: #000;\n --bs-btn-active-bg: #9fd5b3;\n --bs-btn-active-border-color: #9fd5b3;\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --bs-btn-disabled-color: #9fd5b3;\n --bs-btn-disabled-bg: transparent;\n --bs-btn-disabled-border-color: #9fd5b3;\n --bs-gradient: none;\n}\n\n.btn-link {\n --bs-btn-font-weight: 400;\n --bs-btn-color: var(--bs-link-color);\n --bs-btn-bg: transparent;\n --bs-btn-border-color: transparent;\n --bs-btn-hover-color: var(--bs-link-hover-color);\n --bs-btn-hover-border-color: transparent;\n --bs-btn-active-color: var(--bs-link-hover-color);\n --bs-btn-active-border-color: transparent;\n --bs-btn-disabled-color: #6c757d;\n --bs-btn-disabled-border-color: transparent;\n --bs-btn-box-shadow: 0 0 0 #000;\n --bs-btn-focus-shadow-rgb: 38, 96, 97;\n text-decoration: underline;\n}\n.btn-link:focus-visible {\n color: var(--bs-btn-color);\n}\n.btn-link:hover {\n color: var(--bs-btn-hover-color);\n}\n\n.btn-lg,\n.btn-group-lg > .btn {\n --bs-btn-padding-y: 0.5em;\n --bs-btn-padding-x: 1em;\n --bs-btn-font-size: 1.25em;\n --bs-btn-border-radius: var(--bs-border-radius-lg);\n}\n\n.btn-sm,\n.btn-group-sm > .btn {\n --bs-btn-padding-y: 0.25em;\n --bs-btn-padding-x: 0.5em;\n --bs-btn-font-size: 1em;\n --bs-btn-border-radius: var(--bs-border-radius-sm);\n}\n\n.fade {\n transition: opacity 0.15s linear;\n}\n@media (prefers-reduced-motion: reduce) {\n .fade {\n transition: none;\n }\n}\n.fade:not(.show) {\n opacity: 0;\n}\n\n.collapse:not(.show) {\n display: none;\n}\n\n.collapsing {\n height: 0;\n overflow: hidden;\n transition: height 0.35s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .collapsing {\n transition: none;\n }\n}\n.collapsing.collapse-horizontal {\n width: 0;\n height: auto;\n transition: width 0.35s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .collapsing.collapse-horizontal {\n transition: none;\n }\n}\n\n.dropup,\n.dropend,\n.dropdown,\n.dropstart,\n.dropup-center,\n.dropdown-center {\n position: relative;\n}\n\n.dropdown-toggle {\n white-space: nowrap;\n}\n.dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: '';\n border-top: 0.3em solid;\n border-right: 0.3em solid transparent;\n border-bottom: 0;\n border-left: 0.3em solid transparent;\n}\n.dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropdown-menu {\n --bs-dropdown-zindex: 1000;\n --bs-dropdown-min-width: 10em;\n --bs-dropdown-padding-x: 0;\n --bs-dropdown-padding-y: 0.5em;\n --bs-dropdown-spacer: 0.125em;\n --bs-dropdown-font-size: 1em;\n --bs-dropdown-color: var(--bs-body-color);\n --bs-dropdown-bg: var(--bs-body-bg);\n --bs-dropdown-border-color: var(--bs-border-color-translucent);\n --bs-dropdown-border-radius: var(--bs-border-radius);\n --bs-dropdown-border-width: var(--bs-border-width);\n --bs-dropdown-inner-border-radius: calc(\n var(--bs-border-radius) - var(--bs-border-width)\n );\n --bs-dropdown-divider-bg: var(--bs-border-color-translucent);\n --bs-dropdown-divider-margin-y: 0.5em;\n --bs-dropdown-box-shadow: 0 0.5em 1em rgba(0, 0, 0, 0.15);\n --bs-dropdown-link-color: var(--bs-body-color);\n --bs-dropdown-link-hover-color: var(--bs-body-color);\n --bs-dropdown-link-hover-bg: var(--bs-tertiary-bg);\n --bs-dropdown-link-active-color: #fff;\n --bs-dropdown-link-active-bg: #004445;\n --bs-dropdown-link-disabled-color: var(--bs-tertiary-color);\n --bs-dropdown-item-padding-x: 1em;\n --bs-dropdown-item-padding-y: 0.25em;\n --bs-dropdown-header-color: #6c757d;\n --bs-dropdown-header-padding-x: 1em;\n --bs-dropdown-header-padding-y: 0.5em;\n position: absolute;\n z-index: var(--bs-dropdown-zindex);\n display: none;\n min-width: var(--bs-dropdown-min-width);\n padding: var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);\n margin: 0;\n font-size: var(--bs-dropdown-font-size);\n color: var(--bs-dropdown-color);\n text-align: left;\n list-style: none;\n background-color: var(--bs-dropdown-bg);\n background-clip: padding-box;\n border: var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);\n}\n.dropdown-menu[data-bs-popper] {\n top: 100%;\n left: 0;\n margin-top: var(--bs-dropdown-spacer);\n}\n\n.dropdown-menu-start {\n --bs-position: start;\n}\n.dropdown-menu-start[data-bs-popper] {\n right: auto;\n left: 0;\n}\n\n.dropdown-menu-end {\n --bs-position: end;\n}\n.dropdown-menu-end[data-bs-popper] {\n right: 0;\n left: auto;\n}\n\n@media (min-width: 576px) {\n .dropdown-menu-sm-start {\n --bs-position: start;\n }\n .dropdown-menu-sm-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-sm-end {\n --bs-position: end;\n }\n .dropdown-menu-sm-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n@media (min-width: 768px) {\n .dropdown-menu-md-start {\n --bs-position: start;\n }\n .dropdown-menu-md-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-md-end {\n --bs-position: end;\n }\n .dropdown-menu-md-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n@media (min-width: 992px) {\n .dropdown-menu-lg-start {\n --bs-position: start;\n }\n .dropdown-menu-lg-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-lg-end {\n --bs-position: end;\n }\n .dropdown-menu-lg-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n@media (min-width: 1200px) {\n .dropdown-menu-xl-start {\n --bs-position: start;\n }\n .dropdown-menu-xl-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-xl-end {\n --bs-position: end;\n }\n .dropdown-menu-xl-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n@media (min-width: 1400px) {\n .dropdown-menu-xxl-start {\n --bs-position: start;\n }\n .dropdown-menu-xxl-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n .dropdown-menu-xxl-end {\n --bs-position: end;\n }\n .dropdown-menu-xxl-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n.dropup .dropdown-menu[data-bs-popper] {\n top: auto;\n bottom: 100%;\n margin-top: 0;\n margin-bottom: var(--bs-dropdown-spacer);\n}\n.dropup .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: '';\n border-top: 0;\n border-right: 0.3em solid transparent;\n border-bottom: 0.3em solid;\n border-left: 0.3em solid transparent;\n}\n.dropup .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropend .dropdown-menu[data-bs-popper] {\n top: 0;\n right: auto;\n left: 100%;\n margin-top: 0;\n margin-left: var(--bs-dropdown-spacer);\n}\n.dropend .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: '';\n border-top: 0.3em solid transparent;\n border-right: 0;\n border-bottom: 0.3em solid transparent;\n border-left: 0.3em solid;\n}\n.dropend .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n.dropend .dropdown-toggle::after {\n vertical-align: 0;\n}\n\n.dropstart .dropdown-menu[data-bs-popper] {\n top: 0;\n right: 100%;\n left: auto;\n margin-top: 0;\n margin-right: var(--bs-dropdown-spacer);\n}\n.dropstart .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: '';\n}\n.dropstart .dropdown-toggle::after {\n display: none;\n}\n.dropstart .dropdown-toggle::before {\n display: inline-block;\n margin-right: 0.255em;\n vertical-align: 0.255em;\n content: '';\n border-top: 0.3em solid transparent;\n border-right: 0.3em solid;\n border-bottom: 0.3em solid transparent;\n}\n.dropstart .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n.dropstart .dropdown-toggle::before {\n vertical-align: 0;\n}\n\n.dropdown-divider {\n height: 0;\n margin: var(--bs-dropdown-divider-margin-y) 0;\n overflow: hidden;\n border-top: 1px solid var(--bs-dropdown-divider-bg);\n opacity: 1;\n}\n\n.dropdown-item {\n display: block;\n width: 100%;\n padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);\n clear: both;\n font-weight: 400;\n color: var(--bs-dropdown-link-color);\n text-align: inherit;\n text-decoration: none;\n white-space: nowrap;\n background-color: transparent;\n border: 0;\n}\n.dropdown-item:hover,\n.dropdown-item:focus {\n color: var(--bs-dropdown-link-hover-color);\n background-color: var(--bs-dropdown-link-hover-bg);\n}\n.dropdown-item.active,\n.dropdown-item:active {\n color: var(--bs-dropdown-link-active-color);\n text-decoration: none;\n background-color: var(--bs-dropdown-link-active-bg);\n}\n.dropdown-item.disabled,\n.dropdown-item:disabled {\n color: var(--bs-dropdown-link-disabled-color);\n pointer-events: none;\n background-color: transparent;\n}\n\n.dropdown-menu.show {\n display: block;\n}\n\n.dropdown-header {\n display: block;\n padding: var(--bs-dropdown-header-padding-y)\n var(--bs-dropdown-header-padding-x);\n margin-bottom: 0;\n font-size: 1em;\n color: var(--bs-dropdown-header-color);\n white-space: nowrap;\n}\n\n.dropdown-item-text {\n display: block;\n padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);\n color: var(--bs-dropdown-link-color);\n}\n\n.dropdown-menu-dark {\n --bs-dropdown-color: #dee2e6;\n --bs-dropdown-bg: #343a40;\n --bs-dropdown-border-color: var(--bs-border-color-translucent);\n --bs-dropdown-box-shadow: ;\n --bs-dropdown-link-color: #dee2e6;\n --bs-dropdown-link-hover-color: #fff;\n --bs-dropdown-divider-bg: var(--bs-border-color-translucent);\n --bs-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);\n --bs-dropdown-link-active-color: #fff;\n --bs-dropdown-link-active-bg: #004445;\n --bs-dropdown-link-disabled-color: #adb5bd;\n --bs-dropdown-header-color: #adb5bd;\n}\n\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-flex;\n vertical-align: middle;\n}\n.btn-group > .btn,\n.btn-group-vertical > .btn {\n position: relative;\n flex: 1 1 auto;\n}\n.btn-group > .btn-check:checked + .btn,\n.btn-group > .btn-check:focus + .btn,\n.btn-group > .btn:hover,\n.btn-group > .btn:focus,\n.btn-group > .btn:active,\n.btn-group > .btn.active,\n.btn-group-vertical > .btn-check:checked + .btn,\n.btn-group-vertical > .btn-check:focus + .btn,\n.btn-group-vertical > .btn:hover,\n.btn-group-vertical > .btn:focus,\n.btn-group-vertical > .btn:active,\n.btn-group-vertical > .btn.active {\n z-index: 1;\n}\n\n.btn-toolbar {\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-start;\n}\n.btn-toolbar .input-group {\n width: auto;\n}\n\n.btn-group > :not(.btn-check:first-child) + .btn,\n.btn-group > .btn-group:not(:first-child) {\n margin-left: calc(var(--bs-border-width) * -1);\n}\n.dropdown-toggle-split {\n padding-right: 0.5625em;\n padding-left: 0.5625em;\n}\n.dropdown-toggle-split::after,\n.dropup .dropdown-toggle-split::after,\n.dropend .dropdown-toggle-split::after {\n margin-left: 0;\n}\n.dropstart .dropdown-toggle-split::before {\n margin-right: 0;\n}\n\n.btn-sm + .dropdown-toggle-split,\n.btn-group-sm > .btn + .dropdown-toggle-split {\n padding-right: 0.375em;\n padding-left: 0.375em;\n}\n\n.btn-lg + .dropdown-toggle-split,\n.btn-group-lg > .btn + .dropdown-toggle-split {\n padding-right: 0.75em;\n padding-left: 0.75em;\n}\n\n.btn-group-vertical {\n flex-direction: column;\n align-items: flex-start;\n justify-content: center;\n}\n.btn-group-vertical > .btn,\n.btn-group-vertical > .btn-group {\n width: 100%;\n}\n.btn-group-vertical > .btn:not(:first-child),\n.btn-group-vertical > .btn-group:not(:first-child) {\n margin-top: calc(var(--bs-border-width) * -1);\n}\n.nav {\n --bs-nav-link-padding-x: 1em;\n --bs-nav-link-padding-y: 0.5em;\n --bs-nav-link-font-weight: ;\n --bs-nav-link-color: var(--bs-link-color);\n --bs-nav-link-hover-color: var(--bs-link-hover-color);\n --bs-nav-link-disabled-color: var(--bs-secondary-color);\n display: flex;\n flex-wrap: wrap;\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n\n.nav-link {\n display: block;\n padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);\n font-size: var(--bs-nav-link-font-size);\n font-weight: var(--bs-nav-link-font-weight);\n color: var(--bs-nav-link-color);\n text-decoration: none;\n background: none;\n border: 0;\n transition:\n color 0.15s ease-in-out,\n background-color 0.15s ease-in-out,\n border-color 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .nav-link {\n transition: none;\n }\n}\n.nav-link:hover,\n.nav-link:focus {\n color: var(--bs-nav-link-hover-color);\n}\n.nav-link:focus-visible {\n outline: 0;\n box-shadow: 0 0 0 0.25em blue;\n}\n.nav-link.disabled {\n color: var(--bs-nav-link-disabled-color);\n pointer-events: none;\n cursor: default;\n}\n\n.nav-tabs {\n --bs-nav-tabs-border-width: var(--bs-border-width);\n --bs-nav-tabs-border-color: var(--bs-border-color);\n --bs-nav-tabs-border-radius: var(--bs-border-radius);\n --bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg)\n var(--bs-secondary-bg) var(--bs-border-color);\n --bs-nav-tabs-link-active-color: var(--bs-emphasis-color);\n --bs-nav-tabs-link-active-bg: var(--bs-body-bg);\n --bs-nav-tabs-link-active-border-color: var(--bs-border-color)\n var(--bs-border-color) var(--bs-body-bg);\n border-bottom: var(--bs-nav-tabs-border-width) solid\n var(--bs-nav-tabs-border-color);\n}\n.nav-tabs .nav-link {\n margin-bottom: calc(-1 * var(--bs-nav-tabs-border-width));\n border: var(--bs-nav-tabs-border-width) solid transparent;\n}\n.nav-tabs .nav-link:hover,\n.nav-tabs .nav-link:focus {\n isolation: isolate;\n border-color: var(--bs-nav-tabs-link-hover-border-color);\n}\n.nav-tabs .nav-link.disabled,\n.nav-tabs .nav-link:disabled {\n color: var(--bs-nav-link-disabled-color);\n background-color: transparent;\n border-color: transparent;\n}\n.nav-tabs .nav-link.active,\n.nav-tabs .nav-item.show .nav-link {\n color: var(--bs-nav-tabs-link-active-color);\n background-color: var(--bs-nav-tabs-link-active-bg);\n border-color: var(--bs-nav-tabs-link-active-border-color);\n}\n.nav-tabs .dropdown-menu {\n margin-top: calc(-1 * var(--bs-nav-tabs-border-width));\n}\n\n.nav-pills {\n --bs-nav-pills-border-radius: var(--bs-border-radius);\n --bs-nav-pills-link-active-color: #fff;\n --bs-nav-pills-link-active-bg: #004445;\n}\n.nav-pills .nav-link:disabled {\n color: var(--bs-nav-link-disabled-color);\n background-color: transparent;\n border-color: transparent;\n}\n.nav-pills .nav-link.active,\n.nav-pills .show > .nav-link {\n color: var(--bs-nav-pills-link-active-color);\n background-color: var(--bs-nav-pills-link-active-bg);\n}\n\n.nav-underline {\n --bs-nav-underline-gap: 1em;\n --bs-nav-underline-border-width: 0.125em;\n --bs-nav-underline-link-active-color: var(--bs-emphasis-color);\n gap: var(--bs-nav-underline-gap);\n}\n.nav-underline .nav-link {\n padding-right: 0;\n padding-left: 0;\n border-bottom: var(--bs-nav-underline-border-width) solid transparent;\n}\n.nav-underline .nav-link:hover,\n.nav-underline .nav-link:focus {\n border-bottom-color: currentcolor;\n}\n.nav-underline .nav-link.active,\n.nav-underline .show > .nav-link {\n font-weight: 700;\n color: var(--bs-nav-underline-link-active-color);\n border-bottom-color: currentcolor;\n}\n\n.nav-fill > .nav-link,\n.nav-fill .nav-item {\n flex: 1 1 auto;\n text-align: center;\n}\n\n.nav-justified > .nav-link,\n.nav-justified .nav-item {\n flex-basis: 0;\n flex-grow: 1;\n text-align: center;\n}\n\n.nav-fill .nav-item .nav-link,\n.nav-justified .nav-item .nav-link {\n width: 100%;\n}\n\n.tab-content > .tab-pane {\n display: none;\n}\n.tab-content > .active {\n display: block;\n}\n\n.navbar {\n --bs-navbar-padding-x: 0;\n --bs-navbar-padding-y: 0.5em;\n --bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), 0.65);\n --bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.8);\n --bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.3);\n --bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);\n --bs-navbar-brand-padding-y: 0.3125em;\n --bs-navbar-brand-margin-end: 1em;\n --bs-navbar-brand-font-size: 1.25em;\n --bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);\n --bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);\n --bs-navbar-nav-link-padding-x: 0.5em;\n --bs-navbar-toggler-padding-y: 0.25em;\n --bs-navbar-toggler-padding-x: 0.75em;\n --bs-navbar-toggler-font-size: 1.25em;\n --bs-navbar-toggler-icon-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n --bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);\n --bs-navbar-toggler-border-radius: var(--bs-border-radius);\n --bs-navbar-toggler-focus-width: 0.25em;\n --bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;\n position: relative;\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: space-between;\n padding: var(--bs-navbar-padding-y) var(--bs-navbar-padding-x);\n}\n.navbar > .container,\n.navbar > .container-fluid,\n.navbar > .container-sm,\n.navbar > .container-md,\n.navbar > .container-lg,\n.navbar > .container-xl,\n.navbar > .container-xxl {\n display: flex;\n flex-wrap: inherit;\n align-items: center;\n justify-content: space-between;\n}\n.navbar-brand {\n padding-top: var(--bs-navbar-brand-padding-y);\n padding-bottom: var(--bs-navbar-brand-padding-y);\n margin-right: var(--bs-navbar-brand-margin-end);\n font-size: var(--bs-navbar-brand-font-size);\n color: var(--bs-navbar-brand-color);\n text-decoration: none;\n white-space: nowrap;\n}\n.navbar-brand:hover,\n.navbar-brand:focus {\n color: var(--bs-navbar-brand-hover-color);\n}\n\n.navbar-nav {\n --bs-nav-link-padding-x: 0;\n --bs-nav-link-padding-y: 0.5em;\n --bs-nav-link-font-weight: ;\n --bs-nav-link-color: var(--bs-navbar-color);\n --bs-nav-link-hover-color: var(--bs-navbar-hover-color);\n --bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);\n display: flex;\n flex-direction: column;\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n.navbar-nav .nav-link.active,\n.navbar-nav .nav-link.show {\n color: var(--bs-navbar-active-color);\n}\n.navbar-nav .dropdown-menu {\n position: static;\n}\n\n.navbar-text {\n padding-top: 0.5em;\n padding-bottom: 0.5em;\n color: var(--bs-navbar-color);\n}\n.navbar-text a,\n.navbar-text a:hover,\n.navbar-text a:focus {\n color: var(--bs-navbar-active-color);\n}\n\n.navbar-collapse {\n flex-basis: 100%;\n flex-grow: 1;\n align-items: center;\n}\n\n.navbar-toggler {\n padding: var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);\n font-size: var(--bs-navbar-toggler-font-size);\n line-height: 1;\n color: var(--bs-navbar-color);\n background-color: transparent;\n border: var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);\n transition: var(--bs-navbar-toggler-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .navbar-toggler {\n transition: none;\n }\n}\n.navbar-toggler:hover {\n text-decoration: none;\n}\n.navbar-toggler:focus {\n text-decoration: none;\n outline: 0;\n box-shadow: 0 0 0 var(--bs-navbar-toggler-focus-width);\n}\n\n.navbar-toggler-icon {\n display: inline-block;\n width: 1.5em;\n height: 1.5em;\n vertical-align: middle;\n background-image: var(--bs-navbar-toggler-icon-bg);\n background-repeat: no-repeat;\n background-position: center;\n background-size: 100%;\n}\n\n.navbar-nav-scroll {\n max-height: var(--bs-scroll-height, 75vh);\n overflow-y: auto;\n}\n\n@media (min-width: 576px) {\n .navbar-expand-sm {\n flex-wrap: nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-sm .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-sm .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-sm .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-sm .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-sm .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-sm .navbar-toggler {\n display: none;\n }\n .navbar-expand-sm .offcanvas {\n position: static;\n z-index: auto;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n transform: none !important;\n transition: none;\n }\n .navbar-expand-sm .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-sm .offcanvas .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 768px) {\n .navbar-expand-md {\n flex-wrap: nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-md .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-md .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-md .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-md .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-md .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-md .navbar-toggler {\n display: none;\n }\n .navbar-expand-md .offcanvas {\n position: static;\n z-index: auto;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n transform: none !important;\n transition: none;\n }\n .navbar-expand-md .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-md .offcanvas .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 992px) {\n .navbar-expand-lg {\n flex-wrap: nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-lg .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-lg .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-lg .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-lg .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-lg .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-lg .navbar-toggler {\n display: none;\n }\n .navbar-expand-lg .offcanvas {\n position: static;\n z-index: auto;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n transform: none !important;\n transition: none;\n }\n .navbar-expand-lg .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-lg .offcanvas .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 1200px) {\n .navbar-expand-xl {\n flex-wrap: nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-xl .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-xl .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-xl .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-xl .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-xl .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-xl .navbar-toggler {\n display: none;\n }\n .navbar-expand-xl .offcanvas {\n position: static;\n z-index: auto;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n transform: none !important;\n transition: none;\n }\n .navbar-expand-xl .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-xl .offcanvas .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 1400px) {\n .navbar-expand-xxl {\n flex-wrap: nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-xxl .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-xxl .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-xxl .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n }\n .navbar-expand-xxl .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-xxl .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-xxl .navbar-toggler {\n display: none;\n }\n .navbar-expand-xxl .offcanvas {\n position: static;\n z-index: auto;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n transform: none !important;\n transition: none;\n }\n .navbar-expand-xxl .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-xxl .offcanvas .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n.navbar-expand {\n flex-wrap: nowrap;\n justify-content: flex-start;\n}\n.navbar-expand .navbar-nav {\n flex-direction: row;\n}\n.navbar-expand .navbar-nav .dropdown-menu {\n position: absolute;\n}\n.navbar-expand .navbar-nav .nav-link {\n padding-right: var(--bs-navbar-nav-link-padding-x);\n padding-left: var(--bs-navbar-nav-link-padding-x);\n}\n.navbar-expand .navbar-nav-scroll {\n overflow: visible;\n}\n.navbar-expand .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n}\n.navbar-expand .navbar-toggler {\n display: none;\n}\n.navbar-expand .offcanvas {\n position: static;\n z-index: auto;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n transform: none !important;\n transition: none;\n}\n.navbar-expand .offcanvas .offcanvas-header {\n display: none;\n}\n.navbar-expand .offcanvas .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n}\n\n.navbar-dark {\n --bs-navbar-color: rgba(255, 255, 255, 0.55);\n --bs-navbar-hover-color: rgba(255, 255, 255, 0.75);\n --bs-navbar-disabled-color: rgba(255, 255, 255, 0.25);\n --bs-navbar-active-color: #fff;\n --bs-navbar-brand-color: #fff;\n --bs-navbar-brand-hover-color: #fff;\n --bs-navbar-toggler-border-color: rgba(255, 255, 255, 0.1);\n --bs-navbar-toggler-icon-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n}\n\n[data-bs-theme='dark'] .navbar-toggler-icon {\n --bs-navbar-toggler-icon-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n}\n\n.card {\n --bs-card-spacer-y: 1em;\n --bs-card-spacer-x: 1em;\n --bs-card-title-spacer-y: 0.5em;\n --bs-card-title-color: ;\n --bs-card-subtitle-color: ;\n --bs-card-border-width: var(--bs-border-width);\n --bs-card-border-color: var(--bs-border-color-translucent);\n --bs-card-border-radius: var(--bs-border-radius);\n --bs-card-box-shadow: ;\n --bs-card-inner-border-radius: calc(\n var(--bs-border-radius) - (var(--bs-border-width))\n );\n --bs-card-cap-padding-y: 0.5em;\n --bs-card-cap-padding-x: 1em;\n --bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);\n --bs-card-cap-color: ;\n --bs-card-height: ;\n --bs-card-color: ;\n --bs-card-bg: var(--bs-body-bg);\n --bs-card-img-overlay-padding: 1em;\n --bs-card-group-margin: 0.75em;\n position: relative;\n display: flex;\n flex-direction: column;\n min-width: 0;\n height: var(--bs-card-height);\n color: var(--bs-body-color);\n word-wrap: break-word;\n background-color: var(--bs-card-bg);\n background-clip: border-box;\n border: var(--bs-card-border-width) solid var(--bs-card-border-color);\n}\n.card > hr {\n margin-right: 0;\n margin-left: 0;\n}\n.card > .list-group {\n border-top: inherit;\n border-bottom: inherit;\n}\n.card > .list-group:first-child {\n border-top-width: 0;\n}\n.card > .list-group:last-child {\n border-bottom-width: 0;\n}\n.card > .card-header + .list-group,\n.card > .list-group + .card-footer {\n border-top: 0;\n}\n\n.card-body {\n flex: 1 1 auto;\n padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x);\n color: var(--bs-card-color);\n}\n\n.card-title {\n margin-bottom: var(--bs-card-title-spacer-y);\n color: var(--bs-card-title-color);\n}\n\n.card-subtitle {\n margin-top: calc(-0.5 * var(--bs-card-title-spacer-y));\n margin-bottom: 0;\n color: var(--bs-card-subtitle-color);\n}\n\n.card-text:last-child {\n margin-bottom: 0;\n}\n\n.card-link + .card-link {\n margin-left: var(--bs-card-spacer-x);\n}\n\n.card-header {\n padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);\n margin-bottom: 0;\n color: var(--bs-card-cap-color);\n background-color: var(--bs-card-cap-bg);\n border-bottom: var(--bs-card-border-width) solid var(--bs-card-border-color);\n}\n.card-footer {\n padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);\n color: var(--bs-card-cap-color);\n background-color: var(--bs-card-cap-bg);\n border-top: var(--bs-card-border-width) solid var(--bs-card-border-color);\n}\n.card-header-tabs {\n margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));\n margin-bottom: calc(-1 * var(--bs-card-cap-padding-y));\n margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));\n border-bottom: 0;\n}\n.card-header-tabs .nav-link.active {\n background-color: var(--bs-card-bg);\n border-bottom-color: var(--bs-card-bg);\n}\n\n.card-header-pills {\n margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));\n margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));\n}\n\n.card-img-overlay {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n padding: var(--bs-card-img-overlay-padding);\n}\n\n.card-img,\n.card-img-top,\n.card-img-bottom {\n width: 100%;\n}\n\n.card-group > .card {\n margin-bottom: var(--bs-card-group-margin);\n}\n@media (min-width: 576px) {\n .card-group {\n display: flex;\n flex-flow: row wrap;\n }\n .card-group > .card {\n flex: 1 0 0%;\n margin-bottom: 0;\n }\n .card-group > .card + .card {\n margin-left: 0;\n border-left: 0;\n }\n}\n\n.accordion {\n --bs-accordion-color: var(--bs-body-color);\n --bs-accordion-bg: var(--bs-body-bg);\n --bs-accordion-transition: color 0.15s ease-in-out,\n background-color 0.15s ease-in-out, border-color 0.15s ease-in-out,\n box-shadow 0.15s ease-in-out, border-radius 0.15s ease;\n --bs-accordion-border-color: var(--bs-border-color);\n --bs-accordion-border-width: var(--bs-border-width);\n --bs-accordion-border-radius: var(--bs-border-radius);\n --bs-accordion-inner-border-radius: calc(\n var(--bs-border-radius) - (var(--bs-border-width))\n );\n --bs-accordion-btn-padding-x: 1.25em;\n --bs-accordion-btn-padding-y: 1em;\n --bs-accordion-btn-color: var(--bs-body-color);\n --bs-accordion-btn-bg: var(--bs-accordion-bg);\n --bs-accordion-btn-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\");\n --bs-accordion-btn-icon-width: 1.25em;\n --bs-accordion-btn-icon-transform: rotate(-180deg);\n --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;\n --bs-accordion-btn-active-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23001b1c'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\");\n --bs-accordion-btn-focus-border-color: #80a2a2;\n --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25em blue;\n --bs-accordion-body-padding-x: 1.25em;\n --bs-accordion-body-padding-y: 1em;\n --bs-accordion-active-color: var(--bs-primary-text-emphasis);\n --bs-accordion-active-bg: var(--bs-primary-bg-subtle);\n}\n\n.accordion-button {\n position: relative;\n display: flex;\n align-items: center;\n width: 100%;\n padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);\n font-size: 1em;\n color: var(--bs-accordion-btn-color);\n text-align: left;\n background-color: var(--bs-accordion-btn-bg);\n border: 0;\n overflow-anchor: none;\n transition: var(--bs-accordion-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .accordion-button {\n transition: none;\n }\n}\n.accordion-button:not(.collapsed) {\n color: var(--bs-accordion-active-color);\n background-color: var(--bs-accordion-active-bg);\n box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0\n var(--bs-accordion-border-color);\n}\n.accordion-button:not(.collapsed)::after {\n background-image: var(--bs-accordion-btn-active-icon);\n transform: var(--bs-accordion-btn-icon-transform);\n}\n.accordion-button::after {\n flex-shrink: 0;\n width: var(--bs-accordion-btn-icon-width);\n height: var(--bs-accordion-btn-icon-width);\n margin-left: auto;\n content: '';\n background-image: var(--bs-accordion-btn-icon);\n background-repeat: no-repeat;\n background-size: var(--bs-accordion-btn-icon-width);\n transition: var(--bs-accordion-btn-icon-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .accordion-button::after {\n transition: none;\n }\n}\n.accordion-button:hover {\n z-index: 2;\n}\n.accordion-button:focus {\n z-index: 3;\n border-color: var(--bs-accordion-btn-focus-border-color);\n outline: 0;\n box-shadow: var(--bs-accordion-btn-focus-box-shadow);\n}\n\n.accordion-header {\n margin-bottom: 0;\n}\n\n.accordion-item {\n color: var(--bs-accordion-color);\n background-color: var(--bs-accordion-bg);\n border: var(--bs-accordion-border-width) solid\n var(--bs-accordion-border-color);\n}\n.accordion-item:not(:first-of-type) {\n border-top: 0;\n}\n.accordion-body {\n padding: var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x);\n}\n\n.accordion-flush .accordion-collapse {\n border-width: 0;\n}\n.accordion-flush .accordion-item {\n border-right: 0;\n border-left: 0;\n}\n.accordion-flush .accordion-item:first-child {\n border-top: 0;\n}\n.accordion-flush .accordion-item:last-child {\n border-bottom: 0;\n}\n[data-bs-theme='dark'] .accordion-button::after {\n --bs-accordion-btn-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23668f8f'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\");\n --bs-accordion-btn-active-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23668f8f'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\");\n}\n\n.breadcrumb {\n --bs-breadcrumb-padding-x: 0;\n --bs-breadcrumb-padding-y: 0;\n --bs-breadcrumb-margin-bottom: 1em;\n --bs-breadcrumb-bg: ;\n --bs-breadcrumb-border-radius: ;\n --bs-breadcrumb-divider-color: var(--bs-secondary-color);\n --bs-breadcrumb-item-padding-x: 0.5em;\n --bs-breadcrumb-item-active-color: var(--bs-secondary-color);\n display: flex;\n flex-wrap: wrap;\n padding: var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);\n margin-bottom: var(--bs-breadcrumb-margin-bottom);\n font-size: var(--bs-breadcrumb-font-size);\n list-style: none;\n background-color: var(--bs-breadcrumb-bg);\n}\n\n.breadcrumb-item + .breadcrumb-item {\n padding-left: var(--bs-breadcrumb-item-padding-x);\n}\n.breadcrumb-item + .breadcrumb-item::before {\n float: left;\n padding-right: var(--bs-breadcrumb-item-padding-x);\n color: var(--bs-breadcrumb-divider-color);\n content: var(--bs-breadcrumb-divider, '/')\n /* rtl: var(--bs-breadcrumb-divider, \"/\") */;\n}\n.breadcrumb-item.active {\n color: var(--bs-breadcrumb-item-active-color);\n}\n\n.pagination {\n --bs-pagination-padding-x: 0.75em;\n --bs-pagination-padding-y: 0.375em;\n --bs-pagination-font-size: 1em;\n --bs-pagination-color: var(--bs-link-color);\n --bs-pagination-bg: var(--bs-body-bg);\n --bs-pagination-border-width: var(--bs-border-width);\n --bs-pagination-border-color: var(--bs-border-color);\n --bs-pagination-border-radius: var(--bs-border-radius);\n --bs-pagination-hover-color: var(--bs-link-hover-color);\n --bs-pagination-hover-bg: var(--bs-tertiary-bg);\n --bs-pagination-hover-border-color: var(--bs-border-color);\n --bs-pagination-focus-color: var(--bs-link-hover-color);\n --bs-pagination-focus-bg: var(--bs-secondary-bg);\n --bs-pagination-focus-box-shadow: 0 0 0 0.25em blue;\n --bs-pagination-active-color: #fff;\n --bs-pagination-active-bg: #004445;\n --bs-pagination-active-border-color: #004445;\n --bs-pagination-disabled-color: var(--bs-secondary-color);\n --bs-pagination-disabled-bg: var(--bs-secondary-bg);\n --bs-pagination-disabled-border-color: var(--bs-border-color);\n display: flex;\n padding-left: 0;\n list-style: none;\n}\n\n.page-link {\n position: relative;\n display: block;\n padding: var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);\n font-size: var(--bs-pagination-font-size);\n color: var(--bs-pagination-color);\n text-decoration: none;\n background-color: var(--bs-pagination-bg);\n border: var(--bs-pagination-border-width) solid\n var(--bs-pagination-border-color);\n transition:\n color 0.15s ease-in-out,\n background-color 0.15s ease-in-out,\n border-color 0.15s ease-in-out,\n box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .page-link {\n transition: none;\n }\n}\n.page-link:hover {\n z-index: 2;\n color: var(--bs-pagination-hover-color);\n background-color: var(--bs-pagination-hover-bg);\n border-color: var(--bs-pagination-hover-border-color);\n}\n.page-link:focus {\n z-index: 3;\n color: var(--bs-pagination-focus-color);\n background-color: var(--bs-pagination-focus-bg);\n outline: 0;\n box-shadow: var(--bs-pagination-focus-box-shadow);\n}\n.page-link.active,\n.active > .page-link {\n z-index: 3;\n color: var(--bs-pagination-active-color);\n background-color: var(--bs-pagination-active-bg);\n border-color: var(--bs-pagination-active-border-color);\n}\n.page-link.disabled,\n.disabled > .page-link {\n color: var(--bs-pagination-disabled-color);\n pointer-events: none;\n background-color: var(--bs-pagination-disabled-bg);\n border-color: var(--bs-pagination-disabled-border-color);\n}\n\n.page-item:not(:first-child) .page-link {\n margin-left: calc(var(--bs-border-width) * -1);\n}\n.pagination-lg {\n --bs-pagination-padding-x: 1.5em;\n --bs-pagination-padding-y: 0.75em;\n --bs-pagination-font-size: 1.25em;\n --bs-pagination-border-radius: var(--bs-border-radius-lg);\n}\n\n.pagination-sm {\n --bs-pagination-padding-x: 0.5em;\n --bs-pagination-padding-y: 0.25em;\n --bs-pagination-font-size: 1em;\n --bs-pagination-border-radius: var(--bs-border-radius-sm);\n}\n\n.badge {\n --bs-badge-padding-x: 0.65em;\n --bs-badge-padding-y: 0.35em;\n --bs-badge-font-size: 0.75em;\n --bs-badge-font-weight: 700;\n --bs-badge-color: #fff;\n --bs-badge-border-radius: var(--bs-border-radius);\n display: inline-block;\n padding: var(--bs-badge-padding-y) var(--bs-badge-padding-x);\n font-size: var(--bs-badge-font-size);\n font-weight: var(--bs-badge-font-weight);\n line-height: 1;\n color: var(--bs-badge-color);\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n}\n.badge:empty {\n display: none;\n}\n\n.btn .badge {\n position: relative;\n top: -1px;\n}\n\n.alert {\n --bs-alert-bg: transparent;\n --bs-alert-padding-x: 1em;\n --bs-alert-padding-y: 1em;\n --bs-alert-margin-bottom: 1em;\n --bs-alert-color: inherit;\n --bs-alert-border-color: transparent;\n --bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);\n --bs-alert-border-radius: var(--bs-border-radius);\n --bs-alert-link-color: inherit;\n position: relative;\n padding: var(--bs-alert-padding-y) var(--bs-alert-padding-x);\n margin-bottom: var(--bs-alert-margin-bottom);\n color: var(--bs-alert-color);\n background-color: var(--bs-alert-bg);\n border: var(--bs-alert-border);\n}\n\n.alert-heading {\n color: inherit;\n}\n\n.alert-link {\n font-weight: 700;\n color: var(--bs-alert-link-color);\n}\n\n.alert-dismissible {\n padding-right: 3em;\n}\n.alert-dismissible .btn-close {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 2;\n padding: 1.25em 1em;\n}\n\n.alert-primary {\n --bs-alert-color: var(--bs-primary-text-emphasis);\n --bs-alert-bg: var(--bs-primary-bg-subtle);\n --bs-alert-border-color: var(--bs-primary-border-subtle);\n --bs-alert-link-color: var(--bs-primary-text-emphasis);\n}\n\n.alert-secondary {\n --bs-alert-color: var(--bs-secondary-text-emphasis);\n --bs-alert-bg: var(--bs-secondary-bg-subtle);\n --bs-alert-border-color: var(--bs-secondary-border-subtle);\n --bs-alert-link-color: var(--bs-secondary-text-emphasis);\n}\n\n.alert-success {\n --bs-alert-color: var(--bs-success-text-emphasis);\n --bs-alert-bg: var(--bs-success-bg-subtle);\n --bs-alert-border-color: var(--bs-success-border-subtle);\n --bs-alert-link-color: var(--bs-success-text-emphasis);\n}\n\n.alert-info {\n --bs-alert-color: var(--bs-info-text-emphasis);\n --bs-alert-bg: var(--bs-info-bg-subtle);\n --bs-alert-border-color: var(--bs-info-border-subtle);\n --bs-alert-link-color: var(--bs-info-text-emphasis);\n}\n\n.alert-warning {\n --bs-alert-color: var(--bs-warning-text-emphasis);\n --bs-alert-bg: var(--bs-warning-bg-subtle);\n --bs-alert-border-color: var(--bs-warning-border-subtle);\n --bs-alert-link-color: var(--bs-warning-text-emphasis);\n}\n\n.alert-danger {\n --bs-alert-color: var(--bs-danger-text-emphasis);\n --bs-alert-bg: var(--bs-danger-bg-subtle);\n --bs-alert-border-color: var(--bs-danger-border-subtle);\n --bs-alert-link-color: var(--bs-danger-text-emphasis);\n}\n\n.alert-light {\n --bs-alert-color: var(--bs-light-text-emphasis);\n --bs-alert-bg: var(--bs-light-bg-subtle);\n --bs-alert-border-color: var(--bs-light-border-subtle);\n --bs-alert-link-color: var(--bs-light-text-emphasis);\n}\n\n.alert-dark {\n --bs-alert-color: var(--bs-dark-text-emphasis);\n --bs-alert-bg: var(--bs-dark-bg-subtle);\n --bs-alert-border-color: var(--bs-dark-border-subtle);\n --bs-alert-link-color: var(--bs-dark-text-emphasis);\n}\n\n.alert-accent-primary {\n --bs-alert-color: var(--bs-accent-primary-text-emphasis);\n --bs-alert-bg: var(--bs-accent-primary-bg-subtle);\n --bs-alert-border-color: var(--bs-accent-primary-border-subtle);\n --bs-alert-link-color: var(--bs-accent-primary-text-emphasis);\n}\n\n.alert-accent-secondary {\n --bs-alert-color: var(--bs-accent-secondary-text-emphasis);\n --bs-alert-bg: var(--bs-accent-secondary-bg-subtle);\n --bs-alert-border-color: var(--bs-accent-secondary-border-subtle);\n --bs-alert-link-color: var(--bs-accent-secondary-text-emphasis);\n}\n\n@keyframes progress-bar-stripes {\n 0% {\n background-position-x: 1em;\n }\n}\n.progress,\n.progress-stacked {\n --bs-progress-height: 1em;\n --bs-progress-font-size: 0.75em;\n --bs-progress-bg: var(--bs-secondary-bg);\n --bs-progress-border-radius: var(--bs-border-radius);\n --bs-progress-box-shadow: var(--bs-box-shadow-inset);\n --bs-progress-bar-color: #fff;\n --bs-progress-bar-bg: #004445;\n --bs-progress-bar-transition: width 0.6s ease;\n display: flex;\n height: var(--bs-progress-height);\n overflow: hidden;\n font-size: var(--bs-progress-font-size);\n background-color: var(--bs-progress-bg);\n}\n\n.progress-bar {\n display: flex;\n flex-direction: column;\n justify-content: center;\n overflow: hidden;\n color: var(--bs-progress-bar-color);\n text-align: center;\n white-space: nowrap;\n background-color: var(--bs-progress-bar-bg);\n transition: var(--bs-progress-bar-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .progress-bar {\n transition: none;\n }\n}\n\n.progress-bar-striped {\n background-image: linear-gradient(\n 45deg,\n rgba(255, 255, 255, 0.15) 25%,\n transparent 25%,\n transparent 50%,\n rgba(255, 255, 255, 0.15) 50%,\n rgba(255, 255, 255, 0.15) 75%,\n transparent 75%,\n transparent\n );\n background-size: var(--bs-progress-height) var(--bs-progress-height);\n}\n\n.progress-stacked > .progress {\n overflow: visible;\n}\n\n.progress-stacked > .progress > .progress-bar {\n width: 100%;\n}\n\n.progress-bar-animated {\n animation: 1s linear infinite progress-bar-stripes;\n}\n@media (prefers-reduced-motion: reduce) {\n .progress-bar-animated {\n animation: none;\n }\n}\n\n.list-group {\n --bs-list-group-color: var(--bs-body-color);\n --bs-list-group-bg: var(--bs-body-bg);\n --bs-list-group-border-color: var(--bs-border-color);\n --bs-list-group-border-width: var(--bs-border-width);\n --bs-list-group-border-radius: var(--bs-border-radius);\n --bs-list-group-item-padding-x: 1em;\n --bs-list-group-item-padding-y: 0.5em;\n --bs-list-group-action-color: var(--bs-secondary-color);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-tertiary-bg);\n --bs-list-group-action-active-color: var(--bs-body-color);\n --bs-list-group-action-active-bg: var(--bs-secondary-bg);\n --bs-list-group-disabled-color: var(--bs-secondary-color);\n --bs-list-group-disabled-bg: var(--bs-body-bg);\n --bs-list-group-active-color: #fff;\n --bs-list-group-active-bg: #004445;\n --bs-list-group-active-border-color: #004445;\n display: flex;\n flex-direction: column;\n padding-left: 0;\n margin-bottom: 0;\n}\n\n.list-group-numbered {\n list-style-type: none;\n counter-reset: section;\n}\n.list-group-numbered > .list-group-item::before {\n content: counters(section, '.') '. ';\n counter-increment: section;\n}\n\n.list-group-item-action {\n width: 100%;\n color: var(--bs-list-group-action-color);\n text-align: inherit;\n}\n.list-group-item-action:hover,\n.list-group-item-action:focus {\n z-index: 1;\n color: var(--bs-list-group-action-hover-color);\n text-decoration: none;\n background-color: var(--bs-list-group-action-hover-bg);\n}\n.list-group-item-action:active {\n color: var(--bs-list-group-action-active-color);\n background-color: var(--bs-list-group-action-active-bg);\n}\n\n.list-group-item {\n position: relative;\n display: block;\n padding: var(--bs-list-group-item-padding-y)\n var(--bs-list-group-item-padding-x);\n color: var(--bs-list-group-color);\n text-decoration: none;\n background-color: var(--bs-list-group-bg);\n border: var(--bs-list-group-border-width) solid\n var(--bs-list-group-border-color);\n}\n.list-group-item.disabled,\n.list-group-item:disabled {\n color: var(--bs-list-group-disabled-color);\n pointer-events: none;\n background-color: var(--bs-list-group-disabled-bg);\n}\n.list-group-item.active {\n z-index: 2;\n color: var(--bs-list-group-active-color);\n background-color: var(--bs-list-group-active-bg);\n border-color: var(--bs-list-group-active-border-color);\n}\n.list-group-item + .list-group-item {\n border-top-width: 0;\n}\n.list-group-item + .list-group-item.active {\n margin-top: calc(-1 * var(--bs-list-group-border-width));\n border-top-width: var(--bs-list-group-border-width);\n}\n\n.list-group-horizontal {\n flex-direction: row;\n}\n.list-group-horizontal > .list-group-item.active {\n margin-top: 0;\n}\n.list-group-horizontal > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n}\n.list-group-horizontal > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n}\n\n@media (min-width: 576px) {\n .list-group-horizontal-sm {\n flex-direction: row;\n }\n .list-group-horizontal-sm > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-sm > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-sm > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n@media (min-width: 768px) {\n .list-group-horizontal-md {\n flex-direction: row;\n }\n .list-group-horizontal-md > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-md > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-md > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n@media (min-width: 992px) {\n .list-group-horizontal-lg {\n flex-direction: row;\n }\n .list-group-horizontal-lg > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-lg > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-lg > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n@media (min-width: 1200px) {\n .list-group-horizontal-xl {\n flex-direction: row;\n }\n .list-group-horizontal-xl > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-xl > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-xl > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n@media (min-width: 1400px) {\n .list-group-horizontal-xxl {\n flex-direction: row;\n }\n .list-group-horizontal-xxl > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-xxl > .list-group-item + .list-group-item {\n border-top-width: var(--bs-list-group-border-width);\n border-left-width: 0;\n }\n .list-group-horizontal-xxl > .list-group-item + .list-group-item.active {\n margin-left: calc(-1 * var(--bs-list-group-border-width));\n border-left-width: var(--bs-list-group-border-width);\n }\n}\n.list-group-flush > .list-group-item {\n border-width: 0 0 var(--bs-list-group-border-width);\n}\n.list-group-flush > .list-group-item:last-child {\n border-bottom-width: 0;\n}\n\n.list-group-item-primary {\n --bs-list-group-color: var(--bs-primary-text-emphasis);\n --bs-list-group-bg: var(--bs-primary-bg-subtle);\n --bs-list-group-border-color: var(--bs-primary-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-primary-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-primary-border-subtle);\n --bs-list-group-active-color: var(--bs-primary-bg-subtle);\n --bs-list-group-active-bg: var(--bs-primary-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-primary-text-emphasis);\n}\n\n.list-group-item-secondary {\n --bs-list-group-color: var(--bs-secondary-text-emphasis);\n --bs-list-group-bg: var(--bs-secondary-bg-subtle);\n --bs-list-group-border-color: var(--bs-secondary-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-secondary-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-secondary-border-subtle);\n --bs-list-group-active-color: var(--bs-secondary-bg-subtle);\n --bs-list-group-active-bg: var(--bs-secondary-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-secondary-text-emphasis);\n}\n\n.list-group-item-success {\n --bs-list-group-color: var(--bs-success-text-emphasis);\n --bs-list-group-bg: var(--bs-success-bg-subtle);\n --bs-list-group-border-color: var(--bs-success-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-success-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-success-border-subtle);\n --bs-list-group-active-color: var(--bs-success-bg-subtle);\n --bs-list-group-active-bg: var(--bs-success-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-success-text-emphasis);\n}\n\n.list-group-item-info {\n --bs-list-group-color: var(--bs-info-text-emphasis);\n --bs-list-group-bg: var(--bs-info-bg-subtle);\n --bs-list-group-border-color: var(--bs-info-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-info-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-info-border-subtle);\n --bs-list-group-active-color: var(--bs-info-bg-subtle);\n --bs-list-group-active-bg: var(--bs-info-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-info-text-emphasis);\n}\n\n.list-group-item-warning {\n --bs-list-group-color: var(--bs-warning-text-emphasis);\n --bs-list-group-bg: var(--bs-warning-bg-subtle);\n --bs-list-group-border-color: var(--bs-warning-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-warning-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-warning-border-subtle);\n --bs-list-group-active-color: var(--bs-warning-bg-subtle);\n --bs-list-group-active-bg: var(--bs-warning-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-warning-text-emphasis);\n}\n\n.list-group-item-danger {\n --bs-list-group-color: var(--bs-danger-text-emphasis);\n --bs-list-group-bg: var(--bs-danger-bg-subtle);\n --bs-list-group-border-color: var(--bs-danger-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-danger-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-danger-border-subtle);\n --bs-list-group-active-color: var(--bs-danger-bg-subtle);\n --bs-list-group-active-bg: var(--bs-danger-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-danger-text-emphasis);\n}\n\n.list-group-item-light {\n --bs-list-group-color: var(--bs-light-text-emphasis);\n --bs-list-group-bg: var(--bs-light-bg-subtle);\n --bs-list-group-border-color: var(--bs-light-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-light-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-light-border-subtle);\n --bs-list-group-active-color: var(--bs-light-bg-subtle);\n --bs-list-group-active-bg: var(--bs-light-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-light-text-emphasis);\n}\n\n.list-group-item-dark {\n --bs-list-group-color: var(--bs-dark-text-emphasis);\n --bs-list-group-bg: var(--bs-dark-bg-subtle);\n --bs-list-group-border-color: var(--bs-dark-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-dark-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-dark-border-subtle);\n --bs-list-group-active-color: var(--bs-dark-bg-subtle);\n --bs-list-group-active-bg: var(--bs-dark-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-dark-text-emphasis);\n}\n\n.list-group-item-accent-primary {\n --bs-list-group-color: var(--bs-accent-primary-text-emphasis);\n --bs-list-group-bg: var(--bs-accent-primary-bg-subtle);\n --bs-list-group-border-color: var(--bs-accent-primary-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-accent-primary-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-accent-primary-border-subtle);\n --bs-list-group-active-color: var(--bs-accent-primary-bg-subtle);\n --bs-list-group-active-bg: var(--bs-accent-primary-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-accent-primary-text-emphasis);\n}\n\n.list-group-item-accent-secondary {\n --bs-list-group-color: var(--bs-accent-secondary-text-emphasis);\n --bs-list-group-bg: var(--bs-accent-secondary-bg-subtle);\n --bs-list-group-border-color: var(--bs-accent-secondary-border-subtle);\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\n --bs-list-group-action-hover-bg: var(--bs-accent-secondary-border-subtle);\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\n --bs-list-group-action-active-bg: var(--bs-accent-secondary-border-subtle);\n --bs-list-group-active-color: var(--bs-accent-secondary-bg-subtle);\n --bs-list-group-active-bg: var(--bs-accent-secondary-text-emphasis);\n --bs-list-group-active-border-color: var(--bs-accent-secondary-text-emphasis);\n}\n\n.btn-close {\n --bs-btn-close-color: #000;\n --bs-btn-close-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e\");\n --bs-btn-close-opacity: 0.5;\n --bs-btn-close-hover-opacity: 0.75;\n --bs-btn-close-focus-shadow: 0 0 0 0.25em blue;\n --bs-btn-close-focus-opacity: 1;\n --bs-btn-close-disabled-opacity: 0.25;\n --bs-btn-close-white-filter: invert(1) grayscale(100%) brightness(200%);\n box-sizing: content-box;\n width: 1em;\n height: 1em;\n padding: 0.25em 0.25em;\n color: var(--bs-btn-close-color);\n background: transparent var(--bs-btn-close-bg) center/1em auto no-repeat;\n border: 0;\n opacity: var(--bs-btn-close-opacity);\n}\n.btn-close:hover {\n color: var(--bs-btn-close-color);\n text-decoration: none;\n opacity: var(--bs-btn-close-hover-opacity);\n}\n.btn-close:focus {\n outline: 0;\n box-shadow: var(--bs-btn-close-focus-shadow);\n opacity: var(--bs-btn-close-focus-opacity);\n}\n.btn-close:disabled,\n.btn-close.disabled {\n pointer-events: none;\n user-select: none;\n opacity: var(--bs-btn-close-disabled-opacity);\n}\n\n.btn-close-white {\n filter: var(--bs-btn-close-white-filter);\n}\n\n[data-bs-theme='dark'] .btn-close {\n filter: var(--bs-btn-close-white-filter);\n}\n\n.toast {\n --bs-toast-zindex: 1090;\n --bs-toast-padding-x: 0.75em;\n --bs-toast-padding-y: 0.5em;\n --bs-toast-spacing: 1.5em;\n --bs-toast-max-width: 350px;\n --bs-toast-font-size: 0.875em;\n --bs-toast-color: ;\n --bs-toast-bg: rgba(var(--bs-body-bg-rgb), 0.85);\n --bs-toast-border-width: var(--bs-border-width);\n --bs-toast-border-color: var(--bs-border-color-translucent);\n --bs-toast-border-radius: var(--bs-border-radius);\n --bs-toast-box-shadow: var(--bs-box-shadow);\n --bs-toast-header-color: var(--bs-secondary-color);\n --bs-toast-header-bg: rgba(var(--bs-body-bg-rgb), 0.85);\n --bs-toast-header-border-color: var(--bs-border-color-translucent);\n width: var(--bs-toast-max-width);\n max-width: 100%;\n font-size: var(--bs-toast-font-size);\n color: var(--bs-toast-color);\n pointer-events: auto;\n background-color: var(--bs-toast-bg);\n background-clip: padding-box;\n border: var(--bs-toast-border-width) solid var(--bs-toast-border-color);\n box-shadow: var(--bs-toast-box-shadow);\n}\n.toast.showing {\n opacity: 0;\n}\n.toast:not(.show) {\n display: none;\n}\n\n.toast-container {\n --bs-toast-zindex: 1090;\n position: absolute;\n z-index: var(--bs-toast-zindex);\n width: max-content;\n max-width: 100%;\n pointer-events: none;\n}\n.toast-container > :not(:last-child) {\n margin-bottom: var(--bs-toast-spacing);\n}\n\n.toast-header {\n display: flex;\n align-items: center;\n padding: var(--bs-toast-padding-y) var(--bs-toast-padding-x);\n color: var(--bs-toast-header-color);\n background-color: var(--bs-toast-header-bg);\n background-clip: padding-box;\n border-bottom: var(--bs-toast-border-width) solid\n var(--bs-toast-header-border-color);\n}\n.toast-header .btn-close {\n margin-right: calc(-0.5 * var(--bs-toast-padding-x));\n margin-left: var(--bs-toast-padding-x);\n}\n\n.toast-body {\n padding: var(--bs-toast-padding-x);\n word-wrap: break-word;\n}\n\n.modal {\n --bs-modal-zindex: 1055;\n --bs-modal-width: 500px;\n --bs-modal-padding: 1em;\n --bs-modal-margin: 0.5em;\n --bs-modal-color: ;\n --bs-modal-bg: var(--bs-body-bg);\n --bs-modal-border-color: var(--bs-border-color-translucent);\n --bs-modal-border-width: var(--bs-border-width);\n --bs-modal-border-radius: var(--bs-border-radius-lg);\n --bs-modal-box-shadow: 0 0.125em 0.25em rgba(0, 0, 0, 0.075);\n --bs-modal-inner-border-radius: calc(\n var(--bs-border-radius-lg) - (var(--bs-border-width))\n );\n --bs-modal-header-padding-x: 1em;\n --bs-modal-header-padding-y: 1em;\n --bs-modal-header-padding: 1em 1em;\n --bs-modal-header-border-color: var(--bs-border-color);\n --bs-modal-header-border-width: var(--bs-border-width);\n --bs-modal-title-line-height: 1.5;\n --bs-modal-footer-gap: 0.5em;\n --bs-modal-footer-bg: ;\n --bs-modal-footer-border-color: var(--bs-border-color);\n --bs-modal-footer-border-width: var(--bs-border-width);\n position: fixed;\n top: 0;\n left: 0;\n z-index: var(--bs-modal-zindex);\n display: none;\n width: 100%;\n height: 100%;\n overflow-x: hidden;\n overflow-y: auto;\n outline: 0;\n}\n\n.modal-dialog {\n position: relative;\n width: auto;\n margin: var(--bs-modal-margin);\n pointer-events: none;\n}\n.modal.fade .modal-dialog {\n transition: transform 0.3s ease-out;\n transform: translate(0, -50px);\n}\n@media (prefers-reduced-motion: reduce) {\n .modal.fade .modal-dialog {\n transition: none;\n }\n}\n.modal.show .modal-dialog {\n transform: none;\n}\n.modal.modal-static .modal-dialog {\n transform: scale(1.02);\n}\n\n.modal-dialog-scrollable {\n height: calc(100% - var(--bs-modal-margin) * 2);\n}\n.modal-dialog-scrollable .modal-content {\n max-height: 100%;\n overflow: hidden;\n}\n.modal-dialog-scrollable .modal-body {\n overflow-y: auto;\n}\n\n.modal-dialog-centered {\n display: flex;\n align-items: center;\n min-height: calc(100% - var(--bs-modal-margin) * 2);\n}\n\n.modal-content {\n position: relative;\n display: flex;\n flex-direction: column;\n width: 100%;\n color: var(--bs-modal-color);\n pointer-events: auto;\n background-color: var(--bs-modal-bg);\n background-clip: padding-box;\n border: var(--bs-modal-border-width) solid var(--bs-modal-border-color);\n outline: 0;\n}\n\n.modal-backdrop {\n --bs-backdrop-zindex: 1050;\n --bs-backdrop-bg: #000;\n --bs-backdrop-opacity: 0.5;\n position: fixed;\n top: 0;\n left: 0;\n z-index: var(--bs-backdrop-zindex);\n width: 100vw;\n height: 100vh;\n background-color: var(--bs-backdrop-bg);\n}\n.modal-backdrop.fade {\n opacity: 0;\n}\n.modal-backdrop.show {\n opacity: var(--bs-backdrop-opacity);\n}\n\n.modal-header {\n display: flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: space-between;\n padding: var(--bs-modal-header-padding);\n border-bottom: var(--bs-modal-header-border-width) solid\n var(--bs-modal-header-border-color);\n}\n.modal-header .btn-close {\n padding: calc(var(--bs-modal-header-padding-y) * 0.5)\n calc(var(--bs-modal-header-padding-x) * 0.5);\n margin: calc(-0.5 * var(--bs-modal-header-padding-y))\n calc(-0.5 * var(--bs-modal-header-padding-x))\n calc(-0.5 * var(--bs-modal-header-padding-y)) auto;\n}\n\n.modal-title {\n margin-bottom: 0;\n line-height: var(--bs-modal-title-line-height);\n}\n\n.modal-body {\n position: relative;\n flex: 1 1 auto;\n padding: var(--bs-modal-padding);\n}\n\n.modal-footer {\n display: flex;\n flex-shrink: 0;\n flex-wrap: wrap;\n align-items: center;\n justify-content: flex-end;\n padding: calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * 0.5);\n background-color: var(--bs-modal-footer-bg);\n border-top: var(--bs-modal-footer-border-width) solid\n var(--bs-modal-footer-border-color);\n}\n.modal-footer > * {\n margin: calc(var(--bs-modal-footer-gap) * 0.5);\n}\n\n@media (min-width: 576px) {\n .modal {\n --bs-modal-margin: 1.75em;\n --bs-modal-box-shadow: 0 0.5em 1em rgba(0, 0, 0, 0.15);\n }\n .modal-dialog {\n max-width: var(--bs-modal-width);\n margin-right: auto;\n margin-left: auto;\n }\n .modal-sm {\n --bs-modal-width: 300px;\n }\n}\n@media (min-width: 992px) {\n .modal-lg,\n .modal-xl {\n --bs-modal-width: 800px;\n }\n}\n@media (min-width: 1200px) {\n .modal-xl {\n --bs-modal-width: 1140px;\n }\n}\n.modal-fullscreen {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n}\n.modal-fullscreen .modal-content {\n height: 100%;\n border: 0;\n}\n.modal-fullscreen .modal-body {\n overflow-y: auto;\n}\n\n@media (max-width: 575.98px) {\n .modal-fullscreen-sm-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-sm-down .modal-content {\n height: 100%;\n border: 0;\n }\n .modal-fullscreen-sm-down .modal-body {\n overflow-y: auto;\n }\n}\n@media (max-width: 767.98px) {\n .modal-fullscreen-md-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-md-down .modal-content {\n height: 100%;\n border: 0;\n }\n .modal-fullscreen-md-down .modal-body {\n overflow-y: auto;\n }\n}\n@media (max-width: 991.98px) {\n .modal-fullscreen-lg-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-lg-down .modal-content {\n height: 100%;\n border: 0;\n }\n .modal-fullscreen-lg-down .modal-body {\n overflow-y: auto;\n }\n}\n@media (max-width: 1199.98px) {\n .modal-fullscreen-xl-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-xl-down .modal-content {\n height: 100%;\n border: 0;\n }\n .modal-fullscreen-xl-down .modal-body {\n overflow-y: auto;\n }\n}\n@media (max-width: 1399.98px) {\n .modal-fullscreen-xxl-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-xxl-down .modal-content {\n height: 100%;\n border: 0;\n }\n .modal-fullscreen-xxl-down .modal-body {\n overflow-y: auto;\n }\n}\n.tooltip {\n --bs-tooltip-zindex: 1080;\n --bs-tooltip-max-width: 200px;\n --bs-tooltip-padding-x: 0.5em;\n --bs-tooltip-padding-y: 0.25em;\n --bs-tooltip-margin: ;\n --bs-tooltip-font-size: 1em;\n --bs-tooltip-color: var(--bs-body-bg);\n --bs-tooltip-bg: var(--bs-emphasis-color);\n --bs-tooltip-border-radius: var(--bs-border-radius);\n --bs-tooltip-opacity: 0.9;\n --bs-tooltip-arrow-width: 0.8em;\n --bs-tooltip-arrow-height: 0.4em;\n z-index: var(--bs-tooltip-zindex);\n display: block;\n margin: var(--bs-tooltip-margin);\n font-family: var(--bs-font-sans-serif);\n font-style: normal;\n font-weight: 400;\n line-height: 1.5;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n white-space: normal;\n word-spacing: normal;\n line-break: auto;\n font-size: var(--bs-tooltip-font-size);\n word-wrap: break-word;\n opacity: 0;\n}\n.tooltip.show {\n opacity: var(--bs-tooltip-opacity);\n}\n.tooltip .tooltip-arrow {\n display: block;\n width: var(--bs-tooltip-arrow-width);\n height: var(--bs-tooltip-arrow-height);\n}\n.tooltip .tooltip-arrow::before {\n position: absolute;\n content: '';\n border-color: transparent;\n border-style: solid;\n}\n\n.bs-tooltip-top .tooltip-arrow,\n.bs-tooltip-auto[data-popper-placement^='top'] .tooltip-arrow {\n bottom: calc(-1 * var(--bs-tooltip-arrow-height));\n}\n.bs-tooltip-top .tooltip-arrow::before,\n.bs-tooltip-auto[data-popper-placement^='top'] .tooltip-arrow::before {\n top: -1px;\n border-width: var(--bs-tooltip-arrow-height)\n calc(var(--bs-tooltip-arrow-width) * 0.5) 0;\n border-top-color: var(--bs-tooltip-bg);\n}\n\n/* rtl:begin:ignore */\n.bs-tooltip-end .tooltip-arrow,\n.bs-tooltip-auto[data-popper-placement^='right'] .tooltip-arrow {\n left: calc(-1 * var(--bs-tooltip-arrow-height));\n width: var(--bs-tooltip-arrow-height);\n height: var(--bs-tooltip-arrow-width);\n}\n.bs-tooltip-end .tooltip-arrow::before,\n.bs-tooltip-auto[data-popper-placement^='right'] .tooltip-arrow::before {\n right: -1px;\n border-width: calc(var(--bs-tooltip-arrow-width) * 0.5)\n var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;\n border-right-color: var(--bs-tooltip-bg);\n}\n\n/* rtl:end:ignore */\n.bs-tooltip-bottom .tooltip-arrow,\n.bs-tooltip-auto[data-popper-placement^='bottom'] .tooltip-arrow {\n top: calc(-1 * var(--bs-tooltip-arrow-height));\n}\n.bs-tooltip-bottom .tooltip-arrow::before,\n.bs-tooltip-auto[data-popper-placement^='bottom'] .tooltip-arrow::before {\n bottom: -1px;\n border-width: 0 calc(var(--bs-tooltip-arrow-width) * 0.5)\n var(--bs-tooltip-arrow-height);\n border-bottom-color: var(--bs-tooltip-bg);\n}\n\n/* rtl:begin:ignore */\n.bs-tooltip-start .tooltip-arrow,\n.bs-tooltip-auto[data-popper-placement^='left'] .tooltip-arrow {\n right: calc(-1 * var(--bs-tooltip-arrow-height));\n width: var(--bs-tooltip-arrow-height);\n height: var(--bs-tooltip-arrow-width);\n}\n.bs-tooltip-start .tooltip-arrow::before,\n.bs-tooltip-auto[data-popper-placement^='left'] .tooltip-arrow::before {\n left: -1px;\n border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) 0\n calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);\n border-left-color: var(--bs-tooltip-bg);\n}\n\n/* rtl:end:ignore */\n.tooltip-inner {\n max-width: var(--bs-tooltip-max-width);\n padding: var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);\n color: var(--bs-tooltip-color);\n text-align: center;\n background-color: var(--bs-tooltip-bg);\n}\n\n.popover {\n --bs-popover-zindex: 1070;\n --bs-popover-max-width: 276px;\n --bs-popover-font-size: 1em;\n --bs-popover-bg: var(--bs-body-bg);\n --bs-popover-border-width: var(--bs-border-width);\n --bs-popover-border-color: var(--bs-border-color-translucent);\n --bs-popover-border-radius: var(--bs-border-radius-lg);\n --bs-popover-inner-border-radius: calc(\n var(--bs-border-radius-lg) - var(--bs-border-width)\n );\n --bs-popover-box-shadow: 0 0.5em 1em rgba(0, 0, 0, 0.15);\n --bs-popover-header-padding-x: 1em;\n --bs-popover-header-padding-y: 0.5em;\n --bs-popover-header-font-size: 1em;\n --bs-popover-header-color: ;\n --bs-popover-header-bg: var(--bs-secondary-bg);\n --bs-popover-body-padding-x: 1em;\n --bs-popover-body-padding-y: 1em;\n --bs-popover-body-color: var(--bs-body-color);\n --bs-popover-arrow-width: 1em;\n --bs-popover-arrow-height: 0.5em;\n --bs-popover-arrow-border: var(--bs-popover-border-color);\n z-index: var(--bs-popover-zindex);\n display: block;\n max-width: var(--bs-popover-max-width);\n font-family: var(--bs-font-sans-serif);\n font-style: normal;\n font-weight: 400;\n line-height: 1.5;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n white-space: normal;\n word-spacing: normal;\n line-break: auto;\n font-size: var(--bs-popover-font-size);\n word-wrap: break-word;\n background-color: var(--bs-popover-bg);\n background-clip: padding-box;\n border: var(--bs-popover-border-width) solid var(--bs-popover-border-color);\n}\n.popover .popover-arrow {\n display: block;\n width: var(--bs-popover-arrow-width);\n height: var(--bs-popover-arrow-height);\n}\n.popover .popover-arrow::before,\n.popover .popover-arrow::after {\n position: absolute;\n display: block;\n content: '';\n border-color: transparent;\n border-style: solid;\n border-width: 0;\n}\n\n.bs-popover-top > .popover-arrow,\n.bs-popover-auto[data-popper-placement^='top'] > .popover-arrow {\n bottom: calc(\n -1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width)\n );\n}\n.bs-popover-top > .popover-arrow::before,\n.bs-popover-auto[data-popper-placement^='top'] > .popover-arrow::before,\n.bs-popover-top > .popover-arrow::after,\n.bs-popover-auto[data-popper-placement^='top'] > .popover-arrow::after {\n border-width: var(--bs-popover-arrow-height)\n calc(var(--bs-popover-arrow-width) * 0.5) 0;\n}\n.bs-popover-top > .popover-arrow::before,\n.bs-popover-auto[data-popper-placement^='top'] > .popover-arrow::before {\n bottom: 0;\n border-top-color: var(--bs-popover-arrow-border);\n}\n.bs-popover-top > .popover-arrow::after,\n.bs-popover-auto[data-popper-placement^='top'] > .popover-arrow::after {\n bottom: var(--bs-popover-border-width);\n border-top-color: var(--bs-popover-bg);\n}\n\n/* rtl:begin:ignore */\n.bs-popover-end > .popover-arrow,\n.bs-popover-auto[data-popper-placement^='right'] > .popover-arrow {\n left: calc(\n -1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width)\n );\n width: var(--bs-popover-arrow-height);\n height: var(--bs-popover-arrow-width);\n}\n.bs-popover-end > .popover-arrow::before,\n.bs-popover-auto[data-popper-placement^='right'] > .popover-arrow::before,\n.bs-popover-end > .popover-arrow::after,\n.bs-popover-auto[data-popper-placement^='right'] > .popover-arrow::after {\n border-width: calc(var(--bs-popover-arrow-width) * 0.5)\n var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;\n}\n.bs-popover-end > .popover-arrow::before,\n.bs-popover-auto[data-popper-placement^='right'] > .popover-arrow::before {\n left: 0;\n border-right-color: var(--bs-popover-arrow-border);\n}\n.bs-popover-end > .popover-arrow::after,\n.bs-popover-auto[data-popper-placement^='right'] > .popover-arrow::after {\n left: var(--bs-popover-border-width);\n border-right-color: var(--bs-popover-bg);\n}\n\n/* rtl:end:ignore */\n.bs-popover-bottom > .popover-arrow,\n.bs-popover-auto[data-popper-placement^='bottom'] > .popover-arrow {\n top: calc(\n -1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width)\n );\n}\n.bs-popover-bottom > .popover-arrow::before,\n.bs-popover-auto[data-popper-placement^='bottom'] > .popover-arrow::before,\n.bs-popover-bottom > .popover-arrow::after,\n.bs-popover-auto[data-popper-placement^='bottom'] > .popover-arrow::after {\n border-width: 0 calc(var(--bs-popover-arrow-width) * 0.5)\n var(--bs-popover-arrow-height);\n}\n.bs-popover-bottom > .popover-arrow::before,\n.bs-popover-auto[data-popper-placement^='bottom'] > .popover-arrow::before {\n top: 0;\n border-bottom-color: var(--bs-popover-arrow-border);\n}\n.bs-popover-bottom > .popover-arrow::after,\n.bs-popover-auto[data-popper-placement^='bottom'] > .popover-arrow::after {\n top: var(--bs-popover-border-width);\n border-bottom-color: var(--bs-popover-bg);\n}\n.bs-popover-bottom .popover-header::before,\n.bs-popover-auto[data-popper-placement^='bottom'] .popover-header::before {\n position: absolute;\n top: 0;\n left: 50%;\n display: block;\n width: var(--bs-popover-arrow-width);\n margin-left: calc(-0.5 * var(--bs-popover-arrow-width));\n content: '';\n border-bottom: var(--bs-popover-border-width) solid\n var(--bs-popover-header-bg);\n}\n\n/* rtl:begin:ignore */\n.bs-popover-start > .popover-arrow,\n.bs-popover-auto[data-popper-placement^='left'] > .popover-arrow {\n right: calc(\n -1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width)\n );\n width: var(--bs-popover-arrow-height);\n height: var(--bs-popover-arrow-width);\n}\n.bs-popover-start > .popover-arrow::before,\n.bs-popover-auto[data-popper-placement^='left'] > .popover-arrow::before,\n.bs-popover-start > .popover-arrow::after,\n.bs-popover-auto[data-popper-placement^='left'] > .popover-arrow::after {\n border-width: calc(var(--bs-popover-arrow-width) * 0.5) 0\n calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);\n}\n.bs-popover-start > .popover-arrow::before,\n.bs-popover-auto[data-popper-placement^='left'] > .popover-arrow::before {\n right: 0;\n border-left-color: var(--bs-popover-arrow-border);\n}\n.bs-popover-start > .popover-arrow::after,\n.bs-popover-auto[data-popper-placement^='left'] > .popover-arrow::after {\n right: var(--bs-popover-border-width);\n border-left-color: var(--bs-popover-bg);\n}\n\n/* rtl:end:ignore */\n.popover-header {\n padding: var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);\n margin-bottom: 0;\n font-size: var(--bs-popover-header-font-size);\n color: var(--bs-popover-header-color);\n background-color: var(--bs-popover-header-bg);\n border-bottom: var(--bs-popover-border-width) solid\n var(--bs-popover-border-color);\n}\n.popover-header:empty {\n display: none;\n}\n\n.popover-body {\n padding: var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);\n color: var(--bs-popover-body-color);\n}\n\n.carousel {\n position: relative;\n}\n\n.carousel.pointer-event {\n touch-action: pan-y;\n}\n\n.carousel-inner {\n position: relative;\n width: 100%;\n overflow: hidden;\n}\n.carousel-inner::after {\n display: block;\n clear: both;\n content: '';\n}\n\n.carousel-item {\n position: relative;\n display: none;\n float: left;\n width: 100%;\n margin-right: -100%;\n backface-visibility: hidden;\n transition: transform 0.6s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-item {\n transition: none;\n }\n}\n\n.carousel-item.active,\n.carousel-item-next,\n.carousel-item-prev {\n display: block;\n}\n\n.carousel-item-next:not(.carousel-item-start),\n.active.carousel-item-end {\n transform: translateX(100%);\n}\n\n.carousel-item-prev:not(.carousel-item-end),\n.active.carousel-item-start {\n transform: translateX(-100%);\n}\n\n.carousel-fade .carousel-item {\n opacity: 0;\n transition-property: opacity;\n transform: none;\n}\n.carousel-fade .carousel-item.active,\n.carousel-fade .carousel-item-next.carousel-item-start,\n.carousel-fade .carousel-item-prev.carousel-item-end {\n z-index: 1;\n opacity: 1;\n}\n.carousel-fade .active.carousel-item-start,\n.carousel-fade .active.carousel-item-end {\n z-index: 0;\n opacity: 0;\n transition: opacity 0s 0.6s;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-fade .active.carousel-item-start,\n .carousel-fade .active.carousel-item-end {\n transition: none;\n }\n}\n\n.carousel-control-prev,\n.carousel-control-next {\n position: absolute;\n top: 0;\n bottom: 0;\n z-index: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 15%;\n padding: 0;\n color: #fff;\n text-align: center;\n background: none;\n border: 0;\n opacity: 0.5;\n transition: opacity 0.15s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-control-prev,\n .carousel-control-next {\n transition: none;\n }\n}\n.carousel-control-prev:hover,\n.carousel-control-prev:focus,\n.carousel-control-next:hover,\n.carousel-control-next:focus {\n color: #fff;\n text-decoration: none;\n outline: 0;\n opacity: 0.9;\n}\n\n.carousel-control-prev {\n left: 0;\n}\n\n.carousel-control-next {\n right: 0;\n}\n\n.carousel-control-prev-icon,\n.carousel-control-next-icon {\n display: inline-block;\n width: 2em;\n height: 2em;\n background-repeat: no-repeat;\n background-position: 50%;\n background-size: 100% 100%;\n}\n\n/* rtl:options: {\n \"autoRename\": true,\n \"stringMap\":[ {\n \"name\" : \"prev-next\",\n \"search\" : \"prev\",\n \"replace\" : \"next\"\n } ]\n} */\n.carousel-control-prev-icon {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e\");\n}\n\n.carousel-control-next-icon {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\");\n}\n\n.carousel-indicators {\n position: absolute;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 2;\n display: flex;\n justify-content: center;\n padding: 0;\n margin-right: 15%;\n margin-bottom: 1em;\n margin-left: 15%;\n}\n.carousel-indicators [data-bs-target] {\n box-sizing: content-box;\n flex: 0 1 auto;\n width: 30px;\n height: 3px;\n padding: 0;\n margin-right: 3px;\n margin-left: 3px;\n text-indent: -999px;\n cursor: pointer;\n background-color: #fff;\n background-clip: padding-box;\n border: 0;\n border-top: 10px solid transparent;\n border-bottom: 10px solid transparent;\n opacity: 0.5;\n transition: opacity 0.6s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-indicators [data-bs-target] {\n transition: none;\n }\n}\n.carousel-indicators .active {\n opacity: 1;\n}\n\n.carousel-caption {\n position: absolute;\n right: 15%;\n bottom: 1.25em;\n left: 15%;\n padding-top: 1.25em;\n padding-bottom: 1.25em;\n color: #fff;\n text-align: center;\n}\n\n.carousel-dark .carousel-control-prev-icon,\n.carousel-dark .carousel-control-next-icon {\n filter: invert(1) grayscale(100);\n}\n.carousel-dark .carousel-indicators [data-bs-target] {\n background-color: #000;\n}\n.carousel-dark .carousel-caption {\n color: #000;\n}\n\n[data-bs-theme='dark'] .carousel .carousel-control-prev-icon,\n[data-bs-theme='dark'] .carousel .carousel-control-next-icon,\n[data-bs-theme='dark'].carousel .carousel-control-prev-icon,\n[data-bs-theme='dark'].carousel .carousel-control-next-icon {\n filter: invert(1) grayscale(100);\n}\n[data-bs-theme='dark'] .carousel .carousel-indicators [data-bs-target],\n[data-bs-theme='dark'].carousel .carousel-indicators [data-bs-target] {\n background-color: #000;\n}\n[data-bs-theme='dark'] .carousel .carousel-caption,\n[data-bs-theme='dark'].carousel .carousel-caption {\n color: #000;\n}\n\n.spinner-grow,\n.spinner-border {\n display: inline-block;\n width: var(--bs-spinner-width);\n height: var(--bs-spinner-height);\n vertical-align: var(--bs-spinner-vertical-align);\n border-radius: 50%;\n animation: var(--bs-spinner-animation-speed) linear infinite\n var(--bs-spinner-animation-name);\n}\n\n@keyframes spinner-border {\n to {\n transform: rotate(360deg) /* rtl:ignore */;\n }\n}\n.spinner-border {\n --bs-spinner-width: 2em;\n --bs-spinner-height: 2em;\n --bs-spinner-vertical-align: -0.125em;\n --bs-spinner-border-width: 0.25em;\n --bs-spinner-animation-speed: 0.75s;\n --bs-spinner-animation-name: spinner-border;\n border: var(--bs-spinner-border-width) solid currentcolor;\n border-right-color: transparent;\n}\n\n.spinner-border-sm {\n --bs-spinner-width: 1em;\n --bs-spinner-height: 1em;\n --bs-spinner-border-width: 0.2em;\n}\n\n@keyframes spinner-grow {\n 0% {\n transform: scale(0);\n }\n 50% {\n opacity: 1;\n transform: none;\n }\n}\n.spinner-grow {\n --bs-spinner-width: 2em;\n --bs-spinner-height: 2em;\n --bs-spinner-vertical-align: -0.125em;\n --bs-spinner-animation-speed: 0.75s;\n --bs-spinner-animation-name: spinner-grow;\n background-color: currentcolor;\n opacity: 0;\n}\n\n.spinner-grow-sm {\n --bs-spinner-width: 1em;\n --bs-spinner-height: 1em;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .spinner-border,\n .spinner-grow {\n --bs-spinner-animation-speed: 1.5s;\n }\n}\n.offcanvas,\n.offcanvas-xxl,\n.offcanvas-xl,\n.offcanvas-lg,\n.offcanvas-md,\n.offcanvas-sm {\n --bs-offcanvas-zindex: 1045;\n --bs-offcanvas-width: 400px;\n --bs-offcanvas-height: 30vh;\n --bs-offcanvas-padding-x: 1em;\n --bs-offcanvas-padding-y: 1em;\n --bs-offcanvas-color: var(--bs-body-color);\n --bs-offcanvas-bg: var(--bs-body-bg);\n --bs-offcanvas-border-width: var(--bs-border-width);\n --bs-offcanvas-border-color: var(--bs-border-color-translucent);\n --bs-offcanvas-box-shadow: 0 0.125em 0.25em rgba(0, 0, 0, 0.075);\n --bs-offcanvas-transition: transform 0.3s ease-in-out;\n --bs-offcanvas-title-line-height: 1.5;\n}\n\n@media (max-width: 575.98px) {\n .offcanvas-sm {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: flex;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 575.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-sm {\n transition: none;\n }\n}\n@media (max-width: 575.98px) {\n .offcanvas-sm.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid\n var(--bs-offcanvas-border-color);\n transform: translateX(-100%);\n }\n .offcanvas-sm.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid\n var(--bs-offcanvas-border-color);\n transform: translateX(100%);\n }\n .offcanvas-sm.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid\n var(--bs-offcanvas-border-color);\n transform: translateY(-100%);\n }\n .offcanvas-sm.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid\n var(--bs-offcanvas-border-color);\n transform: translateY(100%);\n }\n .offcanvas-sm.showing,\n .offcanvas-sm.show:not(.hiding) {\n transform: none;\n }\n .offcanvas-sm.showing,\n .offcanvas-sm.hiding,\n .offcanvas-sm.show {\n visibility: visible;\n }\n}\n@media (min-width: 576px) {\n .offcanvas-sm {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-sm .offcanvas-header {\n display: none;\n }\n .offcanvas-sm .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n\n@media (max-width: 767.98px) {\n .offcanvas-md {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: flex;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 767.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-md {\n transition: none;\n }\n}\n@media (max-width: 767.98px) {\n .offcanvas-md.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid\n var(--bs-offcanvas-border-color);\n transform: translateX(-100%);\n }\n .offcanvas-md.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid\n var(--bs-offcanvas-border-color);\n transform: translateX(100%);\n }\n .offcanvas-md.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid\n var(--bs-offcanvas-border-color);\n transform: translateY(-100%);\n }\n .offcanvas-md.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid\n var(--bs-offcanvas-border-color);\n transform: translateY(100%);\n }\n .offcanvas-md.showing,\n .offcanvas-md.show:not(.hiding) {\n transform: none;\n }\n .offcanvas-md.showing,\n .offcanvas-md.hiding,\n .offcanvas-md.show {\n visibility: visible;\n }\n}\n@media (min-width: 768px) {\n .offcanvas-md {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-md .offcanvas-header {\n display: none;\n }\n .offcanvas-md .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n\n@media (max-width: 991.98px) {\n .offcanvas-lg {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: flex;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 991.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-lg {\n transition: none;\n }\n}\n@media (max-width: 991.98px) {\n .offcanvas-lg.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid\n var(--bs-offcanvas-border-color);\n transform: translateX(-100%);\n }\n .offcanvas-lg.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid\n var(--bs-offcanvas-border-color);\n transform: translateX(100%);\n }\n .offcanvas-lg.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid\n var(--bs-offcanvas-border-color);\n transform: translateY(-100%);\n }\n .offcanvas-lg.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid\n var(--bs-offcanvas-border-color);\n transform: translateY(100%);\n }\n .offcanvas-lg.showing,\n .offcanvas-lg.show:not(.hiding) {\n transform: none;\n }\n .offcanvas-lg.showing,\n .offcanvas-lg.hiding,\n .offcanvas-lg.show {\n visibility: visible;\n }\n}\n@media (min-width: 992px) {\n .offcanvas-lg {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-lg .offcanvas-header {\n display: none;\n }\n .offcanvas-lg .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n\n@media (max-width: 1199.98px) {\n .offcanvas-xl {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: flex;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 1199.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-xl {\n transition: none;\n }\n}\n@media (max-width: 1199.98px) {\n .offcanvas-xl.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid\n var(--bs-offcanvas-border-color);\n transform: translateX(-100%);\n }\n .offcanvas-xl.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid\n var(--bs-offcanvas-border-color);\n transform: translateX(100%);\n }\n .offcanvas-xl.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid\n var(--bs-offcanvas-border-color);\n transform: translateY(-100%);\n }\n .offcanvas-xl.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid\n var(--bs-offcanvas-border-color);\n transform: translateY(100%);\n }\n .offcanvas-xl.showing,\n .offcanvas-xl.show:not(.hiding) {\n transform: none;\n }\n .offcanvas-xl.showing,\n .offcanvas-xl.hiding,\n .offcanvas-xl.show {\n visibility: visible;\n }\n}\n@media (min-width: 1200px) {\n .offcanvas-xl {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-xl .offcanvas-header {\n display: none;\n }\n .offcanvas-xl .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n\n@media (max-width: 1399.98px) {\n .offcanvas-xxl {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: flex;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n transition: var(--bs-offcanvas-transition);\n }\n}\n@media (max-width: 1399.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-xxl {\n transition: none;\n }\n}\n@media (max-width: 1399.98px) {\n .offcanvas-xxl.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid\n var(--bs-offcanvas-border-color);\n transform: translateX(-100%);\n }\n .offcanvas-xxl.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid\n var(--bs-offcanvas-border-color);\n transform: translateX(100%);\n }\n .offcanvas-xxl.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid\n var(--bs-offcanvas-border-color);\n transform: translateY(-100%);\n }\n .offcanvas-xxl.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid\n var(--bs-offcanvas-border-color);\n transform: translateY(100%);\n }\n .offcanvas-xxl.showing,\n .offcanvas-xxl.show:not(.hiding) {\n transform: none;\n }\n .offcanvas-xxl.showing,\n .offcanvas-xxl.hiding,\n .offcanvas-xxl.show {\n visibility: visible;\n }\n}\n@media (min-width: 1400px) {\n .offcanvas-xxl {\n --bs-offcanvas-height: auto;\n --bs-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-xxl .offcanvas-header {\n display: none;\n }\n .offcanvas-xxl .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n\n.offcanvas {\n position: fixed;\n bottom: 0;\n z-index: var(--bs-offcanvas-zindex);\n display: flex;\n flex-direction: column;\n max-width: 100%;\n color: var(--bs-offcanvas-color);\n visibility: hidden;\n background-color: var(--bs-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n transition: var(--bs-offcanvas-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .offcanvas {\n transition: none;\n }\n}\n.offcanvas.offcanvas-start {\n top: 0;\n left: 0;\n width: var(--bs-offcanvas-width);\n border-right: var(--bs-offcanvas-border-width) solid\n var(--bs-offcanvas-border-color);\n transform: translateX(-100%);\n}\n.offcanvas.offcanvas-end {\n top: 0;\n right: 0;\n width: var(--bs-offcanvas-width);\n border-left: var(--bs-offcanvas-border-width) solid\n var(--bs-offcanvas-border-color);\n transform: translateX(100%);\n}\n.offcanvas.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--bs-offcanvas-border-width) solid\n var(--bs-offcanvas-border-color);\n transform: translateY(-100%);\n}\n.offcanvas.offcanvas-bottom {\n right: 0;\n left: 0;\n height: var(--bs-offcanvas-height);\n max-height: 100%;\n border-top: var(--bs-offcanvas-border-width) solid\n var(--bs-offcanvas-border-color);\n transform: translateY(100%);\n}\n.offcanvas.showing,\n.offcanvas.show:not(.hiding) {\n transform: none;\n}\n.offcanvas.showing,\n.offcanvas.hiding,\n.offcanvas.show {\n visibility: visible;\n}\n\n.offcanvas-backdrop {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1040;\n width: 100vw;\n height: 100vh;\n background-color: #000;\n}\n.offcanvas-backdrop.fade {\n opacity: 0;\n}\n.offcanvas-backdrop.show {\n opacity: 0.5;\n}\n\n.offcanvas-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);\n}\n.offcanvas-header .btn-close {\n padding: calc(var(--bs-offcanvas-padding-y) * 0.5)\n calc(var(--bs-offcanvas-padding-x) * 0.5);\n margin-top: calc(-0.5 * var(--bs-offcanvas-padding-y));\n margin-right: calc(-0.5 * var(--bs-offcanvas-padding-x));\n margin-bottom: calc(-0.5 * var(--bs-offcanvas-padding-y));\n}\n\n.offcanvas-title {\n margin-bottom: 0;\n line-height: var(--bs-offcanvas-title-line-height);\n}\n\n.offcanvas-body {\n flex-grow: 1;\n padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);\n overflow-y: auto;\n}\n\n.placeholder {\n display: inline-block;\n min-height: 1em;\n vertical-align: middle;\n cursor: wait;\n background-color: currentcolor;\n opacity: 0.5;\n}\n.placeholder.btn::before {\n display: inline-block;\n content: '';\n}\n\n.placeholder-xs {\n min-height: 0.6em;\n}\n\n.placeholder-sm {\n min-height: 0.8em;\n}\n\n.placeholder-lg {\n min-height: 1.2em;\n}\n\n.placeholder-glow .placeholder {\n animation: placeholder-glow 2s ease-in-out infinite;\n}\n\n@keyframes placeholder-glow {\n 50% {\n opacity: 0.2;\n }\n}\n.placeholder-wave {\n mask-image: linear-gradient(\n 130deg,\n #000 55%,\n rgba(0, 0, 0, 0.8) 75%,\n #000 95%\n );\n mask-size: 200% 100%;\n animation: placeholder-wave 2s linear infinite;\n}\n\n@keyframes placeholder-wave {\n 100% {\n mask-position: -200% 0%;\n }\n}\n.clearfix::after {\n display: block;\n clear: both;\n content: '';\n}\n\n.text-bg-primary {\n color: #fff !important;\n background-color: RGBA(0, 68, 69, var(--bs-bg-opacity, 1)) !important;\n}\n\n.text-bg-secondary {\n color: #000 !important;\n background-color: RGBA(242, 242, 242, var(--bs-bg-opacity, 1)) !important;\n}\n\n.text-bg-success {\n color: #000 !important;\n background-color: RGBA(159, 213, 179, var(--bs-bg-opacity, 1)) !important;\n}\n\n.text-bg-info {\n color: #fff !important;\n background-color: RGBA(0, 68, 69, var(--bs-bg-opacity, 1)) !important;\n}\n\n.text-bg-warning {\n color: #000 !important;\n background-color: RGBA(254, 183, 13, var(--bs-bg-opacity, 1)) !important;\n}\n\n.text-bg-danger {\n color: #fff !important;\n background-color: RGBA(179, 57, 59, var(--bs-bg-opacity, 1)) !important;\n}\n\n.text-bg-light {\n color: #000 !important;\n background-color: RGBA(255, 255, 255, var(--bs-bg-opacity, 1)) !important;\n}\n\n.text-bg-dark {\n color: #fff !important;\n background-color: RGBA(24, 37, 42, var(--bs-bg-opacity, 1)) !important;\n}\n\n.text-bg-accent-primary {\n color: #000 !important;\n background-color: RGBA(254, 183, 13, var(--bs-bg-opacity, 1)) !important;\n}\n\n.text-bg-accent-secondary {\n color: #000 !important;\n background-color: RGBA(159, 213, 179, var(--bs-bg-opacity, 1)) !important;\n}\n\n.link-primary {\n color: RGBA(var(--bs-primary-rgb, var(--bs-link-opacity, 1)));\n text-decoration-color: RGBA(\n var(--bs-primary-rgb),\n var(--bs-link-underline-opacity, 1)\n );\n}\n.link-primary:hover,\n.link-primary:focus {\n color: RGBA(0, 54, 55, var(--bs-link-opacity, 1));\n text-decoration-color: RGBA(0, 54, 55, var(--bs-link-underline-opacity, 1));\n}\n\n.link-secondary {\n color: RGBA(var(--bs-secondary-rgb, var(--bs-link-opacity, 1)));\n text-decoration-color: RGBA(\n var(--bs-secondary-rgb),\n var(--bs-link-underline-opacity, 1)\n );\n}\n.link-secondary:hover,\n.link-secondary:focus {\n color: RGBA(245, 245, 245, var(--bs-link-opacity, 1));\n text-decoration-color: RGBA(\n 245,\n 245,\n 245,\n var(--bs-link-underline-opacity, 1)\n );\n}\n\n.link-success {\n color: RGBA(var(--bs-success-rgb, var(--bs-link-opacity, 1)));\n text-decoration-color: RGBA(\n var(--bs-success-rgb),\n var(--bs-link-underline-opacity, 1)\n );\n}\n.link-success:hover,\n.link-success:focus {\n color: RGBA(178, 221, 194, var(--bs-link-opacity, 1));\n text-decoration-color: RGBA(\n 178,\n 221,\n 194,\n var(--bs-link-underline-opacity, 1)\n );\n}\n\n.link-info {\n color: RGBA(var(--bs-info-rgb, var(--bs-link-opacity, 1)));\n text-decoration-color: RGBA(\n var(--bs-info-rgb),\n var(--bs-link-underline-opacity, 1)\n );\n}\n.link-info:hover,\n.link-info:focus {\n color: RGBA(0, 54, 55, var(--bs-link-opacity, 1));\n text-decoration-color: RGBA(0, 54, 55, var(--bs-link-underline-opacity, 1));\n}\n\n.link-warning {\n color: RGBA(var(--bs-warning-rgb, var(--bs-link-opacity, 1)));\n text-decoration-color: RGBA(\n var(--bs-warning-rgb),\n var(--bs-link-underline-opacity, 1)\n );\n}\n.link-warning:hover,\n.link-warning:focus {\n color: RGBA(254, 197, 61, var(--bs-link-opacity, 1));\n text-decoration-color: RGBA(\n 254,\n 197,\n 61,\n var(--bs-link-underline-opacity, 1)\n );\n}\n\n.link-danger {\n color: RGBA(var(--bs-danger-rgb, var(--bs-link-opacity, 1)));\n text-decoration-color: RGBA(\n var(--bs-danger-rgb),\n var(--bs-link-underline-opacity, 1)\n );\n}\n.link-danger:hover,\n.link-danger:focus {\n color: RGBA(143, 46, 47, var(--bs-link-opacity, 1));\n text-decoration-color: RGBA(143, 46, 47, var(--bs-link-underline-opacity, 1));\n}\n\n.link-light {\n color: RGBA(var(--bs-light-rgb, var(--bs-link-opacity, 1)));\n text-decoration-color: RGBA(\n var(--bs-light-rgb),\n var(--bs-link-underline-opacity, 1)\n );\n}\n.link-light:hover,\n.link-light:focus {\n color: RGBA(255, 255, 255, var(--bs-link-opacity, 1));\n text-decoration-color: RGBA(\n 255,\n 255,\n 255,\n var(--bs-link-underline-opacity, 1)\n );\n}\n\n.link-dark {\n color: RGBA(var(--bs-dark-rgb, var(--bs-link-opacity, 1)));\n text-decoration-color: RGBA(\n var(--bs-dark-rgb),\n var(--bs-link-underline-opacity, 1)\n );\n}\n.link-dark:hover,\n.link-dark:focus {\n color: RGBA(19, 30, 34, var(--bs-link-opacity, 1));\n text-decoration-color: RGBA(19, 30, 34, var(--bs-link-underline-opacity, 1));\n}\n\n.link-accent-primary {\n color: RGBA(var(--bs-accent-primary-rgb, var(--bs-link-opacity, 1)));\n text-decoration-color: RGBA(\n var(--bs-accent-primary-rgb),\n var(--bs-link-underline-opacity, 1)\n );\n}\n.link-accent-primary:hover,\n.link-accent-primary:focus {\n color: RGBA(254, 197, 61, var(--bs-link-opacity, 1));\n text-decoration-color: RGBA(\n 254,\n 197,\n 61,\n var(--bs-link-underline-opacity, 1)\n );\n}\n\n.link-accent-secondary {\n color: RGBA(var(--bs-accent-secondary-rgb, var(--bs-link-opacity, 1)));\n text-decoration-color: RGBA(\n var(--bs-accent-secondary-rgb),\n var(--bs-link-underline-opacity, 1)\n );\n}\n.link-accent-secondary:hover,\n.link-accent-secondary:focus {\n color: RGBA(178, 221, 194, var(--bs-link-opacity, 1));\n text-decoration-color: RGBA(\n 178,\n 221,\n 194,\n var(--bs-link-underline-opacity, 1)\n );\n}\n\n.link-body-emphasis {\n color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 1));\n text-decoration-color: RGBA(\n var(--bs-emphasis-color-rgb),\n var(--bs-link-underline-opacity, 1)\n );\n}\n.link-body-emphasis:hover,\n.link-body-emphasis:focus {\n color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 0.75));\n text-decoration-color: RGBA(\n var(--bs-emphasis-color-rgb),\n var(--bs-link-underline-opacity, 0.75)\n );\n}\n\n.focus-ring:focus {\n outline: 0;\n box-shadow: var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0)\n var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width)\n var(--bs-focus-ring-color);\n}\n\n.icon-link {\n display: inline-flex;\n gap: 0.375em;\n align-items: center;\n text-decoration-color: rgba(\n var(--bs-link-color-rgb),\n var(--bs-link-opacity, 0.5)\n );\n text-underline-offset: 0.25em;\n backface-visibility: hidden;\n}\n.icon-link > .bi {\n flex-shrink: 0;\n width: 1em;\n height: 1em;\n fill: currentcolor;\n transition: 0.2s ease-in-out transform;\n}\n@media (prefers-reduced-motion: reduce) {\n .icon-link > .bi {\n transition: none;\n }\n}\n\n.icon-link-hover:hover > .bi,\n.icon-link-hover:focus-visible > .bi {\n transform: var(--bs-icon-link-transform, translate3d(0.25em, 0, 0));\n}\n\n.ratio {\n position: relative;\n width: 100%;\n}\n.ratio::before {\n display: block;\n padding-top: var(--bs-aspect-ratio);\n content: '';\n}\n.ratio > * {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n}\n\n.ratio-1x1 {\n --bs-aspect-ratio: 100%;\n}\n\n.ratio-2x1 {\n --bs-aspect-ratio: 50%;\n}\n\n.ratio-3x1 {\n --bs-aspect-ratio: 33.3333333333%;\n}\n\n.ratio-4x1 {\n --bs-aspect-ratio: 25%;\n}\n\n.ratio-4x3 {\n --bs-aspect-ratio: 75%;\n}\n\n.ratio-16x9 {\n --bs-aspect-ratio: 56.25%;\n}\n\n.ratio-21x9 {\n --bs-aspect-ratio: 42.8571428571%;\n}\n\n.fixed-top {\n position: fixed;\n top: 0;\n right: 0;\n left: 0;\n z-index: 1030;\n}\n\n.fixed-bottom {\n position: fixed;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1030;\n}\n\n.sticky-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n}\n\n.sticky-bottom {\n position: sticky;\n bottom: 0;\n z-index: 1020;\n}\n\n@media (min-width: 576px) {\n .sticky-sm-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-sm-bottom {\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 768px) {\n .sticky-md-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-md-bottom {\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 992px) {\n .sticky-lg-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-lg-bottom {\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 1200px) {\n .sticky-xl-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-xl-bottom {\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 1400px) {\n .sticky-xxl-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-xxl-bottom {\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n.hstack {\n display: flex;\n flex-direction: row;\n align-items: center;\n align-self: stretch;\n}\n\n.vstack {\n display: flex;\n flex: 1 1 auto;\n flex-direction: column;\n align-self: stretch;\n}\n\n.visually-hidden,\n.visually-hidden-focusable:not(:focus):not(:focus-within) {\n width: 1px !important;\n height: 1px !important;\n padding: 0 !important;\n margin: -1px !important;\n overflow: hidden !important;\n clip: rect(0, 0, 0, 0) !important;\n white-space: nowrap !important;\n border: 0 !important;\n}\n.visually-hidden:not(caption),\n.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption) {\n position: absolute !important;\n}\n\n.stretched-link::after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1;\n content: '';\n}\n\n.text-truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.vr {\n display: inline-block;\n align-self: stretch;\n width: 1px;\n min-height: 1em;\n background-color: currentcolor;\n opacity: 0.25;\n}\n\n.align-baseline {\n vertical-align: baseline !important;\n}\n\n.align-top {\n vertical-align: top !important;\n}\n\n.align-middle {\n vertical-align: middle !important;\n}\n\n.align-bottom {\n vertical-align: bottom !important;\n}\n\n.align-text-bottom {\n vertical-align: text-bottom !important;\n}\n\n.align-text-top {\n vertical-align: text-top !important;\n}\n\n.float-start {\n float: left !important;\n}\n\n.float-end {\n float: right !important;\n}\n\n.float-none {\n float: none !important;\n}\n\n.object-fit-contain {\n object-fit: contain !important;\n}\n\n.object-fit-cover {\n object-fit: cover !important;\n}\n\n.object-fit-fill {\n object-fit: fill !important;\n}\n\n.object-fit-scale {\n object-fit: scale-down !important;\n}\n\n.object-fit-none {\n object-fit: none !important;\n}\n\n.opacity-0 {\n opacity: 0 !important;\n}\n\n.opacity-25 {\n opacity: 0.25 !important;\n}\n\n.opacity-50 {\n opacity: 0.5 !important;\n}\n\n.opacity-75 {\n opacity: 0.75 !important;\n}\n\n.opacity-100 {\n opacity: 1 !important;\n}\n\n.overflow-auto {\n overflow: auto !important;\n}\n\n.overflow-hidden {\n overflow: hidden !important;\n}\n\n.overflow-visible {\n overflow: visible !important;\n}\n\n.overflow-scroll {\n overflow: scroll !important;\n}\n\n.overflow-x-auto {\n overflow-x: auto !important;\n}\n\n.overflow-x-hidden {\n overflow-x: hidden !important;\n}\n\n.overflow-x-visible {\n overflow-x: visible !important;\n}\n\n.overflow-x-scroll {\n overflow-x: scroll !important;\n}\n\n.overflow-y-auto {\n overflow-y: auto !important;\n}\n\n.overflow-y-hidden {\n overflow-y: hidden !important;\n}\n\n.overflow-y-visible {\n overflow-y: visible !important;\n}\n\n.overflow-y-scroll {\n overflow-y: scroll !important;\n}\n\n.d-inline {\n display: inline !important;\n}\n\n.d-inline-block {\n display: inline-block !important;\n}\n\n.d-block {\n display: block !important;\n}\n\n.d-grid {\n display: grid !important;\n}\n\n.d-inline-grid {\n display: inline-grid !important;\n}\n\n.d-table {\n display: table !important;\n}\n\n.d-table-row {\n display: table-row !important;\n}\n\n.d-table-cell {\n display: table-cell !important;\n}\n\n.d-flex {\n display: flex !important;\n}\n\n.d-inline-flex {\n display: inline-flex !important;\n}\n\n.d-none {\n display: none !important;\n}\n\n.shadow {\n box-shadow: 0 0.5em 1em rgba(0, 0, 0, 0.15) !important;\n}\n\n.shadow-sm {\n box-shadow: 0 0.125em 0.25em rgba(0, 0, 0, 0.075) !important;\n}\n\n.shadow-lg {\n box-shadow: 0 1em 3em rgba(0, 0, 0, 0.175) !important;\n}\n\n.shadow-none {\n box-shadow: none !important;\n}\n\n.focus-ring-primary {\n --bs-focus-ring-color: rgba(\n var(--bs-primary-rgb),\n var(--bs-focus-ring-opacity)\n );\n}\n\n.focus-ring-secondary {\n --bs-focus-ring-color: rgba(\n var(--bs-secondary-rgb),\n var(--bs-focus-ring-opacity)\n );\n}\n\n.focus-ring-success {\n --bs-focus-ring-color: rgba(\n var(--bs-success-rgb),\n var(--bs-focus-ring-opacity)\n );\n}\n\n.focus-ring-info {\n --bs-focus-ring-color: rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity));\n}\n\n.focus-ring-warning {\n --bs-focus-ring-color: rgba(\n var(--bs-warning-rgb),\n var(--bs-focus-ring-opacity)\n );\n}\n\n.focus-ring-danger {\n --bs-focus-ring-color: rgba(\n var(--bs-danger-rgb),\n var(--bs-focus-ring-opacity)\n );\n}\n\n.focus-ring-light {\n --bs-focus-ring-color: rgba(\n var(--bs-light-rgb),\n var(--bs-focus-ring-opacity)\n );\n}\n\n.focus-ring-dark {\n --bs-focus-ring-color: rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity));\n}\n\n.focus-ring-accent-primary {\n --bs-focus-ring-color: rgba(\n var(--bs-accent-primary-rgb),\n var(--bs-focus-ring-opacity)\n );\n}\n\n.focus-ring-accent-secondary {\n --bs-focus-ring-color: rgba(\n var(--bs-accent-secondary-rgb),\n var(--bs-focus-ring-opacity)\n );\n}\n\n.position-static {\n position: static !important;\n}\n\n.position-relative {\n position: relative !important;\n}\n\n.position-absolute {\n position: absolute !important;\n}\n\n.position-fixed {\n position: fixed !important;\n}\n\n.position-sticky {\n position: sticky !important;\n}\n\n.top-0 {\n top: 0 !important;\n}\n\n.top-50 {\n top: 50% !important;\n}\n\n.top-100 {\n top: 100% !important;\n}\n\n.bottom-0 {\n bottom: 0 !important;\n}\n\n.bottom-50 {\n bottom: 50% !important;\n}\n\n.bottom-100 {\n bottom: 100% !important;\n}\n\n.start-0 {\n left: 0 !important;\n}\n\n.start-50 {\n left: 50% !important;\n}\n\n.start-100 {\n left: 100% !important;\n}\n\n.end-0 {\n right: 0 !important;\n}\n\n.end-50 {\n right: 50% !important;\n}\n\n.end-100 {\n right: 100% !important;\n}\n\n.translate-middle {\n transform: translate(-50%, -50%) !important;\n}\n\n.translate-middle-x {\n transform: translateX(-50%) !important;\n}\n\n.translate-middle-y {\n transform: translateY(-50%) !important;\n}\n\n.border {\n border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\n}\n\n.border-0 {\n border: 0 !important;\n}\n\n.border-top {\n border-top: var(--bs-border-width) var(--bs-border-style)\n var(--bs-border-color) !important;\n}\n\n.border-top-0 {\n border-top: 0 !important;\n}\n\n.border-end {\n border-right: var(--bs-border-width) var(--bs-border-style)\n var(--bs-border-color) !important;\n}\n\n.border-end-0 {\n border-right: 0 !important;\n}\n\n.border-bottom {\n border-bottom: var(--bs-border-width) var(--bs-border-style)\n var(--bs-border-color) !important;\n}\n\n.border-bottom-0 {\n border-bottom: 0 !important;\n}\n\n.border-start {\n border-left: var(--bs-border-width) var(--bs-border-style)\n var(--bs-border-color) !important;\n}\n\n.border-start-0 {\n border-left: 0 !important;\n}\n\n.border-primary {\n --bs-border-opacity: 1;\n border-color: rgba(\n var(--bs-primary-rgb),\n var(--bs-border-opacity)\n ) !important;\n}\n\n.border-secondary {\n --bs-border-opacity: 1;\n border-color: rgba(\n var(--bs-secondary-rgb),\n var(--bs-border-opacity)\n ) !important;\n}\n\n.border-success {\n --bs-border-opacity: 1;\n border-color: rgba(\n var(--bs-success-rgb),\n var(--bs-border-opacity)\n ) !important;\n}\n\n.border-info {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-warning {\n --bs-border-opacity: 1;\n border-color: rgba(\n var(--bs-warning-rgb),\n var(--bs-border-opacity)\n ) !important;\n}\n\n.border-danger {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-danger-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-light {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-light-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-dark {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-accent-primary {\n --bs-border-opacity: 1;\n border-color: rgba(\n var(--bs-accent-primary-rgb),\n var(--bs-border-opacity)\n ) !important;\n}\n\n.border-accent-secondary {\n --bs-border-opacity: 1;\n border-color: rgba(\n var(--bs-accent-secondary-rgb),\n var(--bs-border-opacity)\n ) !important;\n}\n\n.border-black {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-black-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-white {\n --bs-border-opacity: 1;\n border-color: rgba(var(--bs-white-rgb), var(--bs-border-opacity)) !important;\n}\n\n.border-primary-subtle {\n border-color: var(--bs-primary-border-subtle) !important;\n}\n\n.border-secondary-subtle {\n border-color: var(--bs-secondary-border-subtle) !important;\n}\n\n.border-success-subtle {\n border-color: var(--bs-success-border-subtle) !important;\n}\n\n.border-info-subtle {\n border-color: var(--bs-info-border-subtle) !important;\n}\n\n.border-warning-subtle {\n border-color: var(--bs-warning-border-subtle) !important;\n}\n\n.border-danger-subtle {\n border-color: var(--bs-danger-border-subtle) !important;\n}\n\n.border-light-subtle {\n border-color: var(--bs-light-border-subtle) !important;\n}\n\n.border-dark-subtle {\n border-color: var(--bs-dark-border-subtle) !important;\n}\n\n.border-1 {\n border-width: 1px !important;\n}\n\n.border-2 {\n border-width: 2px !important;\n}\n\n.border-3 {\n border-width: 3px !important;\n}\n\n.border-4 {\n border-width: 4px !important;\n}\n\n.border-5 {\n border-width: 5px !important;\n}\n\n.border-opacity-10 {\n --bs-border-opacity: 0.1;\n}\n\n.border-opacity-25 {\n --bs-border-opacity: 0.25;\n}\n\n.border-opacity-50 {\n --bs-border-opacity: 0.5;\n}\n\n.border-opacity-75 {\n --bs-border-opacity: 0.75;\n}\n\n.border-opacity-100 {\n --bs-border-opacity: 1;\n}\n\n.w-25 {\n width: 25% !important;\n}\n\n.w-50 {\n width: 50% !important;\n}\n\n.w-75 {\n width: 75% !important;\n}\n\n.w-100 {\n width: 100% !important;\n}\n\n.w-auto {\n width: auto !important;\n}\n\n.mw-100 {\n max-width: 100% !important;\n}\n\n.vw-100 {\n width: 100vw !important;\n}\n\n.min-vw-100 {\n min-width: 100vw !important;\n}\n\n.h-25 {\n height: 25% !important;\n}\n\n.h-50 {\n height: 50% !important;\n}\n\n.h-75 {\n height: 75% !important;\n}\n\n.h-100 {\n height: 100% !important;\n}\n\n.h-auto {\n height: auto !important;\n}\n\n.mh-100 {\n max-height: 100% !important;\n}\n\n.vh-100 {\n height: 100vh !important;\n}\n\n.min-vh-100 {\n min-height: 100vh !important;\n}\n\n.flex-fill {\n flex: 1 1 auto !important;\n}\n\n.flex-row {\n flex-direction: row !important;\n}\n\n.flex-column {\n flex-direction: column !important;\n}\n\n.flex-row-reverse {\n flex-direction: row-reverse !important;\n}\n\n.flex-column-reverse {\n flex-direction: column-reverse !important;\n}\n\n.flex-grow-0 {\n flex-grow: 0 !important;\n}\n\n.flex-grow-1 {\n flex-grow: 1 !important;\n}\n\n.flex-shrink-0 {\n flex-shrink: 0 !important;\n}\n\n.flex-shrink-1 {\n flex-shrink: 1 !important;\n}\n\n.flex-wrap {\n flex-wrap: wrap !important;\n}\n\n.flex-nowrap {\n flex-wrap: nowrap !important;\n}\n\n.flex-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n}\n\n.justify-content-start {\n justify-content: flex-start !important;\n}\n\n.justify-content-end {\n justify-content: flex-end !important;\n}\n\n.justify-content-center {\n justify-content: center !important;\n}\n\n.justify-content-between {\n justify-content: space-between !important;\n}\n\n.justify-content-around {\n justify-content: space-around !important;\n}\n\n.justify-content-evenly {\n justify-content: space-evenly !important;\n}\n\n.align-items-start {\n align-items: flex-start !important;\n}\n\n.align-items-end {\n align-items: flex-end !important;\n}\n\n.align-items-center {\n align-items: center !important;\n}\n\n.align-items-baseline {\n align-items: baseline !important;\n}\n\n.align-items-stretch {\n align-items: stretch !important;\n}\n\n.align-content-start {\n align-content: flex-start !important;\n}\n\n.align-content-end {\n align-content: flex-end !important;\n}\n\n.align-content-center {\n align-content: center !important;\n}\n\n.align-content-between {\n align-content: space-between !important;\n}\n\n.align-content-around {\n align-content: space-around !important;\n}\n\n.align-content-stretch {\n align-content: stretch !important;\n}\n\n.align-self-auto {\n align-self: auto !important;\n}\n\n.align-self-start {\n align-self: flex-start !important;\n}\n\n.align-self-end {\n align-self: flex-end !important;\n}\n\n.align-self-center {\n align-self: center !important;\n}\n\n.align-self-baseline {\n align-self: baseline !important;\n}\n\n.align-self-stretch {\n align-self: stretch !important;\n}\n\n.order-first {\n order: -1 !important;\n}\n\n.order-0 {\n order: 0 !important;\n}\n\n.order-1 {\n order: 1 !important;\n}\n\n.order-2 {\n order: 2 !important;\n}\n\n.order-3 {\n order: 3 !important;\n}\n\n.order-4 {\n order: 4 !important;\n}\n\n.order-5 {\n order: 5 !important;\n}\n\n.order-last {\n order: 6 !important;\n}\n\n.m-0 {\n margin: 0 !important;\n}\n\n.m-1 {\n margin: 0.25em !important;\n}\n\n.m-2 {\n margin: 0.5em !important;\n}\n\n.m-3 {\n margin: 1em !important;\n}\n\n.m-4 {\n margin: 1.5em !important;\n}\n\n.m-5 {\n margin: 3em !important;\n}\n\n.m-auto {\n margin: auto !important;\n}\n\n.mx-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n}\n\n.mx-1 {\n margin-right: 0.25em !important;\n margin-left: 0.25em !important;\n}\n\n.mx-2 {\n margin-right: 0.5em !important;\n margin-left: 0.5em !important;\n}\n\n.mx-3 {\n margin-right: 1em !important;\n margin-left: 1em !important;\n}\n\n.mx-4 {\n margin-right: 1.5em !important;\n margin-left: 1.5em !important;\n}\n\n.mx-5 {\n margin-right: 3em !important;\n margin-left: 3em !important;\n}\n\n.mx-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n}\n\n.my-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n}\n\n.my-1 {\n margin-top: 0.25em !important;\n margin-bottom: 0.25em !important;\n}\n\n.my-2 {\n margin-top: 0.5em !important;\n margin-bottom: 0.5em !important;\n}\n\n.my-3 {\n margin-top: 1em !important;\n margin-bottom: 1em !important;\n}\n\n.my-4 {\n margin-top: 1.5em !important;\n margin-bottom: 1.5em !important;\n}\n\n.my-5 {\n margin-top: 3em !important;\n margin-bottom: 3em !important;\n}\n\n.my-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n}\n\n.mt-0 {\n margin-top: 0 !important;\n}\n\n.mt-1 {\n margin-top: 0.25em !important;\n}\n\n.mt-2 {\n margin-top: 0.5em !important;\n}\n\n.mt-3 {\n margin-top: 1em !important;\n}\n\n.mt-4 {\n margin-top: 1.5em !important;\n}\n\n.mt-5 {\n margin-top: 3em !important;\n}\n\n.mt-auto {\n margin-top: auto !important;\n}\n\n.me-0 {\n margin-right: 0 !important;\n}\n\n.me-1 {\n margin-right: 0.25em !important;\n}\n\n.me-2 {\n margin-right: 0.5em !important;\n}\n\n.me-3 {\n margin-right: 1em !important;\n}\n\n.me-4 {\n margin-right: 1.5em !important;\n}\n\n.me-5 {\n margin-right: 3em !important;\n}\n\n.me-auto {\n margin-right: auto !important;\n}\n\n.mb-0 {\n margin-bottom: 0 !important;\n}\n\n.mb-1 {\n margin-bottom: 0.25em !important;\n}\n\n.mb-2 {\n margin-bottom: 0.5em !important;\n}\n\n.mb-3 {\n margin-bottom: 1em !important;\n}\n\n.mb-4 {\n margin-bottom: 1.5em !important;\n}\n\n.mb-5 {\n margin-bottom: 3em !important;\n}\n\n.mb-auto {\n margin-bottom: auto !important;\n}\n\n.ms-0 {\n margin-left: 0 !important;\n}\n\n.ms-1 {\n margin-left: 0.25em !important;\n}\n\n.ms-2 {\n margin-left: 0.5em !important;\n}\n\n.ms-3 {\n margin-left: 1em !important;\n}\n\n.ms-4 {\n margin-left: 1.5em !important;\n}\n\n.ms-5 {\n margin-left: 3em !important;\n}\n\n.ms-auto {\n margin-left: auto !important;\n}\n\n.p-0 {\n padding: 0 !important;\n}\n\n.p-1 {\n padding: 0.25em !important;\n}\n\n.p-2 {\n padding: 0.5em !important;\n}\n\n.p-3 {\n padding: 1em !important;\n}\n\n.p-4 {\n padding: 1.5em !important;\n}\n\n.p-5 {\n padding: 3em !important;\n}\n\n.px-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n}\n\n.px-1 {\n padding-right: 0.25em !important;\n padding-left: 0.25em !important;\n}\n\n.px-2 {\n padding-right: 0.5em !important;\n padding-left: 0.5em !important;\n}\n\n.px-3 {\n padding-right: 1em !important;\n padding-left: 1em !important;\n}\n\n.px-4 {\n padding-right: 1.5em !important;\n padding-left: 1.5em !important;\n}\n\n.px-5 {\n padding-right: 3em !important;\n padding-left: 3em !important;\n}\n\n.py-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n}\n\n.py-1 {\n padding-top: 0.25em !important;\n padding-bottom: 0.25em !important;\n}\n\n.py-2 {\n padding-top: 0.5em !important;\n padding-bottom: 0.5em !important;\n}\n\n.py-3 {\n padding-top: 1em !important;\n padding-bottom: 1em !important;\n}\n\n.py-4 {\n padding-top: 1.5em !important;\n padding-bottom: 1.5em !important;\n}\n\n.py-5 {\n padding-top: 3em !important;\n padding-bottom: 3em !important;\n}\n\n.pt-0 {\n padding-top: 0 !important;\n}\n\n.pt-1 {\n padding-top: 0.25em !important;\n}\n\n.pt-2 {\n padding-top: 0.5em !important;\n}\n\n.pt-3 {\n padding-top: 1em !important;\n}\n\n.pt-4 {\n padding-top: 1.5em !important;\n}\n\n.pt-5 {\n padding-top: 3em !important;\n}\n\n.pe-0 {\n padding-right: 0 !important;\n}\n\n.pe-1 {\n padding-right: 0.25em !important;\n}\n\n.pe-2 {\n padding-right: 0.5em !important;\n}\n\n.pe-3 {\n padding-right: 1em !important;\n}\n\n.pe-4 {\n padding-right: 1.5em !important;\n}\n\n.pe-5 {\n padding-right: 3em !important;\n}\n\n.pb-0 {\n padding-bottom: 0 !important;\n}\n\n.pb-1 {\n padding-bottom: 0.25em !important;\n}\n\n.pb-2 {\n padding-bottom: 0.5em !important;\n}\n\n.pb-3 {\n padding-bottom: 1em !important;\n}\n\n.pb-4 {\n padding-bottom: 1.5em !important;\n}\n\n.pb-5 {\n padding-bottom: 3em !important;\n}\n\n.ps-0 {\n padding-left: 0 !important;\n}\n\n.ps-1 {\n padding-left: 0.25em !important;\n}\n\n.ps-2 {\n padding-left: 0.5em !important;\n}\n\n.ps-3 {\n padding-left: 1em !important;\n}\n\n.ps-4 {\n padding-left: 1.5em !important;\n}\n\n.ps-5 {\n padding-left: 3em !important;\n}\n\n.gap-0 {\n gap: 0 !important;\n}\n\n.gap-1 {\n gap: 0.25em !important;\n}\n\n.gap-2 {\n gap: 0.5em !important;\n}\n\n.gap-3 {\n gap: 1em !important;\n}\n\n.gap-4 {\n gap: 1.5em !important;\n}\n\n.gap-5 {\n gap: 3em !important;\n}\n\n.row-gap-0 {\n row-gap: 0 !important;\n}\n\n.row-gap-1 {\n row-gap: 0.25em !important;\n}\n\n.row-gap-2 {\n row-gap: 0.5em !important;\n}\n\n.row-gap-3 {\n row-gap: 1em !important;\n}\n\n.row-gap-4 {\n row-gap: 1.5em !important;\n}\n\n.row-gap-5 {\n row-gap: 3em !important;\n}\n\n.column-gap-0 {\n column-gap: 0 !important;\n}\n\n.column-gap-1 {\n column-gap: 0.25em !important;\n}\n\n.column-gap-2 {\n column-gap: 0.5em !important;\n}\n\n.column-gap-3 {\n column-gap: 1em !important;\n}\n\n.column-gap-4 {\n column-gap: 1.5em !important;\n}\n\n.column-gap-5 {\n column-gap: 3em !important;\n}\n\n.font-monospace {\n font-family: var(--bs-font-monospace) !important;\n}\n\n.fs-1 {\n font-size: calc(1.4em + 1.8vw) !important;\n}\n\n.fs-2 {\n font-size: calc(1.3625em + 1.35vw) !important;\n}\n\n.fs-3 {\n font-size: calc(1.3125em + 0.75vw) !important;\n}\n\n.fs-4 {\n font-size: calc(1.275em + 0.3vw) !important;\n}\n\n.fs-5 {\n font-size: 1.25em !important;\n}\n\n.fs-6 {\n font-size: 1em !important;\n}\n\n.fst-italic {\n font-style: italic !important;\n}\n\n.fst-normal {\n font-style: normal !important;\n}\n\n.fw-lighter {\n font-weight: lighter !important;\n}\n\n.fw-light {\n font-weight: 300 !important;\n}\n\n.fw-normal {\n font-weight: 400 !important;\n}\n\n.fw-medium {\n font-weight: 500 !important;\n}\n\n.fw-semibold {\n font-weight: 600 !important;\n}\n\n.fw-bold {\n font-weight: 700 !important;\n}\n\n.fw-bolder {\n font-weight: bolder !important;\n}\n\n.lh-1 {\n line-height: 1 !important;\n}\n\n.lh-sm {\n line-height: 1.25 !important;\n}\n\n.lh-base {\n line-height: 1.5 !important;\n}\n\n.lh-lg {\n line-height: 2 !important;\n}\n\n.text-start {\n text-align: left !important;\n}\n\n.text-end {\n text-align: right !important;\n}\n\n.text-center {\n text-align: center !important;\n}\n\n.text-decoration-none {\n text-decoration: none !important;\n}\n\n.text-decoration-underline {\n text-decoration: underline !important;\n}\n\n.text-decoration-line-through {\n text-decoration: line-through !important;\n}\n\n.text-lowercase {\n text-transform: lowercase !important;\n}\n\n.text-uppercase {\n text-transform: uppercase !important;\n}\n\n.text-capitalize {\n text-transform: capitalize !important;\n}\n\n.text-wrap {\n white-space: normal !important;\n}\n\n.text-nowrap {\n white-space: nowrap !important;\n}\n\n/* rtl:begin:remove */\n.text-break {\n word-wrap: break-word !important;\n word-break: break-word !important;\n}\n\n/* rtl:end:remove */\n.text-primary {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-secondary {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-success {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-info {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-warning {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-danger {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-light {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-dark {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-accent-primary {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-accent-primary-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-accent-secondary {\n --bs-text-opacity: 1;\n color: rgba(\n var(--bs-accent-secondary-rgb),\n var(--bs-text-opacity)\n ) !important;\n}\n\n.text-black {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-white {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-body {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-muted {\n --bs-text-opacity: 1;\n color: var(--bs-secondary-color) !important;\n}\n\n.text-black-50 {\n --bs-text-opacity: 1;\n color: rgba(0, 0, 0, 0.5) !important;\n}\n\n.text-white-50 {\n --bs-text-opacity: 1;\n color: rgba(255, 255, 255, 0.5) !important;\n}\n\n.text-body-secondary {\n --bs-text-opacity: 1;\n color: var(--bs-secondary-color) !important;\n}\n\n.text-body-tertiary {\n --bs-text-opacity: 1;\n color: var(--bs-tertiary-color) !important;\n}\n\n.text-body-emphasis {\n --bs-text-opacity: 1;\n color: var(--bs-emphasis-color) !important;\n}\n\n.text-reset {\n --bs-text-opacity: 1;\n color: inherit !important;\n}\n\n.text-opacity-25 {\n --bs-text-opacity: 0.25;\n}\n\n.text-opacity-50 {\n --bs-text-opacity: 0.5;\n}\n\n.text-opacity-75 {\n --bs-text-opacity: 0.75;\n}\n\n.text-opacity-100 {\n --bs-text-opacity: 1;\n}\n\n.text-primary-emphasis {\n color: var(--bs-primary-text-emphasis) !important;\n}\n\n.text-secondary-emphasis {\n color: var(--bs-secondary-text-emphasis) !important;\n}\n\n.text-success-emphasis {\n color: var(--bs-success-text-emphasis) !important;\n}\n\n.text-info-emphasis {\n color: var(--bs-info-text-emphasis) !important;\n}\n\n.text-warning-emphasis {\n color: var(--bs-warning-text-emphasis) !important;\n}\n\n.text-danger-emphasis {\n color: var(--bs-danger-text-emphasis) !important;\n}\n\n.text-light-emphasis {\n color: var(--bs-light-text-emphasis) !important;\n}\n\n.text-dark-emphasis {\n color: var(--bs-dark-text-emphasis) !important;\n}\n\n.link-opacity-10 {\n --bs-link-opacity: 0.1;\n}\n\n.link-opacity-10-hover:hover {\n --bs-link-opacity: 0.1;\n}\n\n.link-opacity-25 {\n --bs-link-opacity: 0.25;\n}\n\n.link-opacity-25-hover:hover {\n --bs-link-opacity: 0.25;\n}\n\n.link-opacity-50 {\n --bs-link-opacity: 0.5;\n}\n\n.link-opacity-50-hover:hover {\n --bs-link-opacity: 0.5;\n}\n\n.link-opacity-75 {\n --bs-link-opacity: 0.75;\n}\n\n.link-opacity-75-hover:hover {\n --bs-link-opacity: 0.75;\n}\n\n.link-opacity-100 {\n --bs-link-opacity: 1;\n}\n\n.link-opacity-100-hover:hover {\n --bs-link-opacity: 1;\n}\n\n.link-offset-1 {\n text-underline-offset: 0.125em !important;\n}\n\n.link-offset-1-hover:hover {\n text-underline-offset: 0.125em !important;\n}\n\n.link-offset-2 {\n text-underline-offset: 0.25em !important;\n}\n\n.link-offset-2-hover:hover {\n text-underline-offset: 0.25em !important;\n}\n\n.link-offset-3 {\n text-underline-offset: 0.375em !important;\n}\n\n.link-offset-3-hover:hover {\n text-underline-offset: 0.375em !important;\n}\n\n.link-underline-primary {\n --bs-link-underline-opacity: 1;\n text-decoration-color: rgba(\n var(--bs-primary-rgb),\n var(--bs-link-underline-opacity)\n ) !important;\n}\n\n.link-underline-secondary {\n --bs-link-underline-opacity: 1;\n text-decoration-color: rgba(\n var(--bs-secondary-rgb),\n var(--bs-link-underline-opacity)\n ) !important;\n}\n\n.link-underline-success {\n --bs-link-underline-opacity: 1;\n text-decoration-color: rgba(\n var(--bs-success-rgb),\n var(--bs-link-underline-opacity)\n ) !important;\n}\n\n.link-underline-info {\n --bs-link-underline-opacity: 1;\n text-decoration-color: rgba(\n var(--bs-info-rgb),\n var(--bs-link-underline-opacity)\n ) !important;\n}\n\n.link-underline-warning {\n --bs-link-underline-opacity: 1;\n text-decoration-color: rgba(\n var(--bs-warning-rgb),\n var(--bs-link-underline-opacity)\n ) !important;\n}\n\n.link-underline-danger {\n --bs-link-underline-opacity: 1;\n text-decoration-color: rgba(\n var(--bs-danger-rgb),\n var(--bs-link-underline-opacity)\n ) !important;\n}\n\n.link-underline-light {\n --bs-link-underline-opacity: 1;\n text-decoration-color: rgba(\n var(--bs-light-rgb),\n var(--bs-link-underline-opacity)\n ) !important;\n}\n\n.link-underline-dark {\n --bs-link-underline-opacity: 1;\n text-decoration-color: rgba(\n var(--bs-dark-rgb),\n var(--bs-link-underline-opacity)\n ) !important;\n}\n\n.link-underline-accent-primary {\n --bs-link-underline-opacity: 1;\n text-decoration-color: rgba(\n var(--bs-accent-primary-rgb),\n var(--bs-link-underline-opacity)\n ) !important;\n}\n\n.link-underline-accent-secondary {\n --bs-link-underline-opacity: 1;\n text-decoration-color: rgba(\n var(--bs-accent-secondary-rgb),\n var(--bs-link-underline-opacity)\n ) !important;\n}\n\n.link-underline {\n --bs-link-underline-opacity: 1;\n text-decoration-color: rgba(\n var(--bs-link-color-rgb),\n var(--bs-link-underline-opacity, 1)\n ) !important;\n}\n\n.link-underline-opacity-0 {\n --bs-link-underline-opacity: 0;\n}\n\n.link-underline-opacity-0-hover:hover {\n --bs-link-underline-opacity: 0;\n}\n\n.link-underline-opacity-10 {\n --bs-link-underline-opacity: 0.1;\n}\n\n.link-underline-opacity-10-hover:hover {\n --bs-link-underline-opacity: 0.1;\n}\n\n.link-underline-opacity-25 {\n --bs-link-underline-opacity: 0.25;\n}\n\n.link-underline-opacity-25-hover:hover {\n --bs-link-underline-opacity: 0.25;\n}\n\n.link-underline-opacity-50 {\n --bs-link-underline-opacity: 0.5;\n}\n\n.link-underline-opacity-50-hover:hover {\n --bs-link-underline-opacity: 0.5;\n}\n\n.link-underline-opacity-75 {\n --bs-link-underline-opacity: 0.75;\n}\n\n.link-underline-opacity-75-hover:hover {\n --bs-link-underline-opacity: 0.75;\n}\n\n.link-underline-opacity-100 {\n --bs-link-underline-opacity: 1;\n}\n\n.link-underline-opacity-100-hover:hover {\n --bs-link-underline-opacity: 1;\n}\n\n.bg-primary {\n --bs-bg-opacity: 1;\n background-color: rgba(\n var(--bs-primary-rgb),\n var(--bs-bg-opacity)\n ) !important;\n}\n\n.bg-secondary {\n --bs-bg-opacity: 1;\n background-color: rgba(\n var(--bs-secondary-rgb),\n var(--bs-bg-opacity)\n ) !important;\n}\n\n.bg-success {\n --bs-bg-opacity: 1;\n background-color: rgba(\n var(--bs-success-rgb),\n var(--bs-bg-opacity)\n ) !important;\n}\n\n.bg-info {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-warning {\n --bs-bg-opacity: 1;\n background-color: rgba(\n var(--bs-warning-rgb),\n var(--bs-bg-opacity)\n ) !important;\n}\n\n.bg-danger {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-light {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-dark {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-accent-primary {\n --bs-bg-opacity: 1;\n background-color: rgba(\n var(--bs-accent-primary-rgb),\n var(--bs-bg-opacity)\n ) !important;\n}\n\n.bg-accent-secondary {\n --bs-bg-opacity: 1;\n background-color: rgba(\n var(--bs-accent-secondary-rgb),\n var(--bs-bg-opacity)\n ) !important;\n}\n\n.bg-black {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-white {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-body {\n --bs-bg-opacity: 1;\n background-color: rgba(\n var(--bs-body-bg-rgb),\n var(--bs-bg-opacity)\n ) !important;\n}\n\n.bg-transparent {\n --bs-bg-opacity: 1;\n background-color: transparent !important;\n}\n\n.bg-body-secondary {\n --bs-bg-opacity: 1;\n background-color: rgba(\n var(--bs-secondary-bg-rgb),\n var(--bs-bg-opacity)\n ) !important;\n}\n\n.bg-body-tertiary {\n --bs-bg-opacity: 1;\n background-color: rgba(\n var(--bs-tertiary-bg-rgb),\n var(--bs-bg-opacity)\n ) !important;\n}\n\n.bg-opacity-10 {\n --bs-bg-opacity: 0.1;\n}\n\n.bg-opacity-25 {\n --bs-bg-opacity: 0.25;\n}\n\n.bg-opacity-50 {\n --bs-bg-opacity: 0.5;\n}\n\n.bg-opacity-75 {\n --bs-bg-opacity: 0.75;\n}\n\n.bg-opacity-100 {\n --bs-bg-opacity: 1;\n}\n\n.bg-primary-subtle {\n background-color: var(--bs-primary-bg-subtle) !important;\n}\n\n.bg-secondary-subtle {\n background-color: var(--bs-secondary-bg-subtle) !important;\n}\n\n.bg-success-subtle {\n background-color: var(--bs-success-bg-subtle) !important;\n}\n\n.bg-info-subtle {\n background-color: var(--bs-info-bg-subtle) !important;\n}\n\n.bg-warning-subtle {\n background-color: var(--bs-warning-bg-subtle) !important;\n}\n\n.bg-danger-subtle {\n background-color: var(--bs-danger-bg-subtle) !important;\n}\n\n.bg-light-subtle {\n background-color: var(--bs-light-bg-subtle) !important;\n}\n\n.bg-dark-subtle {\n background-color: var(--bs-dark-bg-subtle) !important;\n}\n\n.bg-gradient {\n background-image: var(--bs-gradient) !important;\n}\n\n.user-select-all {\n user-select: all !important;\n}\n\n.user-select-auto {\n user-select: auto !important;\n}\n\n.user-select-none {\n user-select: none !important;\n}\n\n.pe-none {\n pointer-events: none !important;\n}\n\n.pe-auto {\n pointer-events: auto !important;\n}\n\n.rounded {\n border-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-0 {\n border-radius: 0 !important;\n}\n\n.rounded-1 {\n border-radius: var(--bs-border-radius-sm) !important;\n}\n\n.rounded-2 {\n border-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-3 {\n border-radius: var(--bs-border-radius-lg) !important;\n}\n\n.rounded-4 {\n border-radius: var(--bs-border-radius-xl) !important;\n}\n\n.rounded-5 {\n border-radius: var(--bs-border-radius-xxl) !important;\n}\n\n.rounded-circle {\n border-radius: 50% !important;\n}\n\n.rounded-pill {\n border-radius: var(--bs-border-radius-pill) !important;\n}\n\n.rounded-top {\n border-top-left-radius: var(--bs-border-radius) !important;\n border-top-right-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-top-0 {\n border-top-left-radius: 0 !important;\n border-top-right-radius: 0 !important;\n}\n\n.rounded-top-1 {\n border-top-left-radius: var(--bs-border-radius-sm) !important;\n border-top-right-radius: var(--bs-border-radius-sm) !important;\n}\n\n.rounded-top-2 {\n border-top-left-radius: var(--bs-border-radius) !important;\n border-top-right-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-top-3 {\n border-top-left-radius: var(--bs-border-radius-lg) !important;\n border-top-right-radius: var(--bs-border-radius-lg) !important;\n}\n\n.rounded-top-4 {\n border-top-left-radius: var(--bs-border-radius-xl) !important;\n border-top-right-radius: var(--bs-border-radius-xl) !important;\n}\n\n.rounded-top-5 {\n border-top-left-radius: var(--bs-border-radius-xxl) !important;\n border-top-right-radius: var(--bs-border-radius-xxl) !important;\n}\n\n.rounded-top-circle {\n border-top-left-radius: 50% !important;\n border-top-right-radius: 50% !important;\n}\n\n.rounded-top-pill {\n border-top-left-radius: var(--bs-border-radius-pill) !important;\n border-top-right-radius: var(--bs-border-radius-pill) !important;\n}\n\n.rounded-end {\n border-top-right-radius: var(--bs-border-radius) !important;\n border-bottom-right-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-end-0 {\n border-top-right-radius: 0 !important;\n border-bottom-right-radius: 0 !important;\n}\n\n.rounded-end-1 {\n border-top-right-radius: var(--bs-border-radius-sm) !important;\n border-bottom-right-radius: var(--bs-border-radius-sm) !important;\n}\n\n.rounded-end-2 {\n border-top-right-radius: var(--bs-border-radius) !important;\n border-bottom-right-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-end-3 {\n border-top-right-radius: var(--bs-border-radius-lg) !important;\n border-bottom-right-radius: var(--bs-border-radius-lg) !important;\n}\n\n.rounded-end-4 {\n border-top-right-radius: var(--bs-border-radius-xl) !important;\n border-bottom-right-radius: var(--bs-border-radius-xl) !important;\n}\n\n.rounded-end-5 {\n border-top-right-radius: var(--bs-border-radius-xxl) !important;\n border-bottom-right-radius: var(--bs-border-radius-xxl) !important;\n}\n\n.rounded-end-circle {\n border-top-right-radius: 50% !important;\n border-bottom-right-radius: 50% !important;\n}\n\n.rounded-end-pill {\n border-top-right-radius: var(--bs-border-radius-pill) !important;\n border-bottom-right-radius: var(--bs-border-radius-pill) !important;\n}\n\n.rounded-bottom {\n border-bottom-right-radius: var(--bs-border-radius) !important;\n border-bottom-left-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-bottom-0 {\n border-bottom-right-radius: 0 !important;\n border-bottom-left-radius: 0 !important;\n}\n\n.rounded-bottom-1 {\n border-bottom-right-radius: var(--bs-border-radius-sm) !important;\n border-bottom-left-radius: var(--bs-border-radius-sm) !important;\n}\n\n.rounded-bottom-2 {\n border-bottom-right-radius: var(--bs-border-radius) !important;\n border-bottom-left-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-bottom-3 {\n border-bottom-right-radius: var(--bs-border-radius-lg) !important;\n border-bottom-left-radius: var(--bs-border-radius-lg) !important;\n}\n\n.rounded-bottom-4 {\n border-bottom-right-radius: var(--bs-border-radius-xl) !important;\n border-bottom-left-radius: var(--bs-border-radius-xl) !important;\n}\n\n.rounded-bottom-5 {\n border-bottom-right-radius: var(--bs-border-radius-xxl) !important;\n border-bottom-left-radius: var(--bs-border-radius-xxl) !important;\n}\n\n.rounded-bottom-circle {\n border-bottom-right-radius: 50% !important;\n border-bottom-left-radius: 50% !important;\n}\n\n.rounded-bottom-pill {\n border-bottom-right-radius: var(--bs-border-radius-pill) !important;\n border-bottom-left-radius: var(--bs-border-radius-pill) !important;\n}\n\n.rounded-start {\n border-bottom-left-radius: var(--bs-border-radius) !important;\n border-top-left-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-start-0 {\n border-bottom-left-radius: 0 !important;\n border-top-left-radius: 0 !important;\n}\n\n.rounded-start-1 {\n border-bottom-left-radius: var(--bs-border-radius-sm) !important;\n border-top-left-radius: var(--bs-border-radius-sm) !important;\n}\n\n.rounded-start-2 {\n border-bottom-left-radius: var(--bs-border-radius) !important;\n border-top-left-radius: var(--bs-border-radius) !important;\n}\n\n.rounded-start-3 {\n border-bottom-left-radius: var(--bs-border-radius-lg) !important;\n border-top-left-radius: var(--bs-border-radius-lg) !important;\n}\n\n.rounded-start-4 {\n border-bottom-left-radius: var(--bs-border-radius-xl) !important;\n border-top-left-radius: var(--bs-border-radius-xl) !important;\n}\n\n.rounded-start-5 {\n border-bottom-left-radius: var(--bs-border-radius-xxl) !important;\n border-top-left-radius: var(--bs-border-radius-xxl) !important;\n}\n\n.rounded-start-circle {\n border-bottom-left-radius: 50% !important;\n border-top-left-radius: 50% !important;\n}\n\n.rounded-start-pill {\n border-bottom-left-radius: var(--bs-border-radius-pill) !important;\n border-top-left-radius: var(--bs-border-radius-pill) !important;\n}\n\n.visible {\n visibility: visible !important;\n}\n\n.invisible {\n visibility: hidden !important;\n}\n\n.z-n1 {\n z-index: -1 !important;\n}\n\n.z-0 {\n z-index: 0 !important;\n}\n\n.z-1 {\n z-index: 1 !important;\n}\n\n.z-2 {\n z-index: 2 !important;\n}\n\n.z-3 {\n z-index: 3 !important;\n}\n\n.li-bg-primary {\n --bs-bg-opacity: 1;\n background-color: rgba(\n var(--bs-primary-rgb),\n var(--bs-bg-opacity)\n ) !important;\n}\n\n.li-bg-secondary {\n --bs-bg-opacity: 1;\n background-color: rgba(\n var(--bs-secondary-rgb),\n var(--bs-bg-opacity)\n ) !important;\n}\n\n.li-bg-success {\n --bs-bg-opacity: 1;\n background-color: rgba(\n var(--bs-success-rgb),\n var(--bs-bg-opacity)\n ) !important;\n}\n\n.li-bg-info {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.li-bg-warning {\n --bs-bg-opacity: 1;\n background-color: rgba(\n var(--bs-warning-rgb),\n var(--bs-bg-opacity)\n ) !important;\n}\n\n.li-bg-danger {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.li-bg-light {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.li-bg-dark {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.li-bg-accent-primary {\n --bs-bg-opacity: 1;\n background-color: rgba(\n var(--bs-accent-primary-rgb),\n var(--bs-bg-opacity)\n ) !important;\n}\n\n.li-bg-accent-secondary {\n --bs-bg-opacity: 1;\n background-color: rgba(\n var(--bs-accent-secondary-rgb),\n var(--bs-bg-opacity)\n ) !important;\n}\n\n.li-bg-black {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.li-bg-white {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.li-bg-body {\n --bs-bg-opacity: 1;\n background-color: rgba(\n var(--bs-body-bg-rgb),\n var(--bs-bg-opacity)\n ) !important;\n}\n\n.li-bg-transparent {\n --bs-bg-opacity: 1;\n background-color: transparent !important;\n}\n\n.li-bg-body-secondary {\n --bs-bg-opacity: 1;\n background-color: rgba(\n var(--bs-secondary-bg-rgb),\n var(--bs-bg-opacity)\n ) !important;\n}\n\n.li-bg-body-tertiary {\n --bs-bg-opacity: 1;\n background-color: rgba(\n var(--bs-tertiary-bg-rgb),\n var(--bs-bg-opacity)\n ) !important;\n}\n\n.li-bg-primary-subtle {\n background-color: var(--bs-primary-bg-subtle) !important;\n}\n\n.li-bg-secondary-subtle {\n background-color: var(--bs-secondary-bg-subtle) !important;\n}\n\n.li-bg-success-subtle {\n background-color: var(--bs-success-bg-subtle) !important;\n}\n\n.li-bg-info-subtle {\n background-color: var(--bs-info-bg-subtle) !important;\n}\n\n.li-bg-warning-subtle {\n background-color: var(--bs-warning-bg-subtle) !important;\n}\n\n.li-bg-danger-subtle {\n background-color: var(--bs-danger-bg-subtle) !important;\n}\n\n.li-bg-light-subtle {\n background-color: var(--bs-light-bg-subtle) !important;\n}\n\n.li-bg-dark-subtle {\n background-color: var(--bs-dark-bg-subtle) !important;\n}\n\n@media (min-width: 576px) {\n .float-sm-start {\n float: left !important;\n }\n .float-sm-end {\n float: right !important;\n }\n .float-sm-none {\n float: none !important;\n }\n .object-fit-sm-contain {\n object-fit: contain !important;\n }\n .object-fit-sm-cover {\n object-fit: cover !important;\n }\n .object-fit-sm-fill {\n object-fit: fill !important;\n }\n .object-fit-sm-scale {\n object-fit: scale-down !important;\n }\n .object-fit-sm-none {\n object-fit: none !important;\n }\n .d-sm-inline {\n display: inline !important;\n }\n .d-sm-inline-block {\n display: inline-block !important;\n }\n .d-sm-block {\n display: block !important;\n }\n .d-sm-grid {\n display: grid !important;\n }\n .d-sm-inline-grid {\n display: inline-grid !important;\n }\n .d-sm-table {\n display: table !important;\n }\n .d-sm-table-row {\n display: table-row !important;\n }\n .d-sm-table-cell {\n display: table-cell !important;\n }\n .d-sm-flex {\n display: flex !important;\n }\n .d-sm-inline-flex {\n display: inline-flex !important;\n }\n .d-sm-none {\n display: none !important;\n }\n .flex-sm-fill {\n flex: 1 1 auto !important;\n }\n .flex-sm-row {\n flex-direction: row !important;\n }\n .flex-sm-column {\n flex-direction: column !important;\n }\n .flex-sm-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-sm-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-sm-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-sm-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-sm-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-sm-shrink-1 {\n flex-shrink: 1 !important;\n }\n .flex-sm-wrap {\n flex-wrap: wrap !important;\n }\n .flex-sm-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-sm-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-sm-start {\n justify-content: flex-start !important;\n }\n .justify-content-sm-end {\n justify-content: flex-end !important;\n }\n .justify-content-sm-center {\n justify-content: center !important;\n }\n .justify-content-sm-between {\n justify-content: space-between !important;\n }\n .justify-content-sm-around {\n justify-content: space-around !important;\n }\n .justify-content-sm-evenly {\n justify-content: space-evenly !important;\n }\n .align-items-sm-start {\n align-items: flex-start !important;\n }\n .align-items-sm-end {\n align-items: flex-end !important;\n }\n .align-items-sm-center {\n align-items: center !important;\n }\n .align-items-sm-baseline {\n align-items: baseline !important;\n }\n .align-items-sm-stretch {\n align-items: stretch !important;\n }\n .align-content-sm-start {\n align-content: flex-start !important;\n }\n .align-content-sm-end {\n align-content: flex-end !important;\n }\n .align-content-sm-center {\n align-content: center !important;\n }\n .align-content-sm-between {\n align-content: space-between !important;\n }\n .align-content-sm-around {\n align-content: space-around !important;\n }\n .align-content-sm-stretch {\n align-content: stretch !important;\n }\n .align-self-sm-auto {\n align-self: auto !important;\n }\n .align-self-sm-start {\n align-self: flex-start !important;\n }\n .align-self-sm-end {\n align-self: flex-end !important;\n }\n .align-self-sm-center {\n align-self: center !important;\n }\n .align-self-sm-baseline {\n align-self: baseline !important;\n }\n .align-self-sm-stretch {\n align-self: stretch !important;\n }\n .order-sm-first {\n order: -1 !important;\n }\n .order-sm-0 {\n order: 0 !important;\n }\n .order-sm-1 {\n order: 1 !important;\n }\n .order-sm-2 {\n order: 2 !important;\n }\n .order-sm-3 {\n order: 3 !important;\n }\n .order-sm-4 {\n order: 4 !important;\n }\n .order-sm-5 {\n order: 5 !important;\n }\n .order-sm-last {\n order: 6 !important;\n }\n .m-sm-0 {\n margin: 0 !important;\n }\n .m-sm-1 {\n margin: 0.25em !important;\n }\n .m-sm-2 {\n margin: 0.5em !important;\n }\n .m-sm-3 {\n margin: 1em !important;\n }\n .m-sm-4 {\n margin: 1.5em !important;\n }\n .m-sm-5 {\n margin: 3em !important;\n }\n .m-sm-auto {\n margin: auto !important;\n }\n .mx-sm-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-sm-1 {\n margin-right: 0.25em !important;\n margin-left: 0.25em !important;\n }\n .mx-sm-2 {\n margin-right: 0.5em !important;\n margin-left: 0.5em !important;\n }\n .mx-sm-3 {\n margin-right: 1em !important;\n margin-left: 1em !important;\n }\n .mx-sm-4 {\n margin-right: 1.5em !important;\n margin-left: 1.5em !important;\n }\n .mx-sm-5 {\n margin-right: 3em !important;\n margin-left: 3em !important;\n }\n .mx-sm-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-sm-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-sm-1 {\n margin-top: 0.25em !important;\n margin-bottom: 0.25em !important;\n }\n .my-sm-2 {\n margin-top: 0.5em !important;\n margin-bottom: 0.5em !important;\n }\n .my-sm-3 {\n margin-top: 1em !important;\n margin-bottom: 1em !important;\n }\n .my-sm-4 {\n margin-top: 1.5em !important;\n margin-bottom: 1.5em !important;\n }\n .my-sm-5 {\n margin-top: 3em !important;\n margin-bottom: 3em !important;\n }\n .my-sm-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-sm-0 {\n margin-top: 0 !important;\n }\n .mt-sm-1 {\n margin-top: 0.25em !important;\n }\n .mt-sm-2 {\n margin-top: 0.5em !important;\n }\n .mt-sm-3 {\n margin-top: 1em !important;\n }\n .mt-sm-4 {\n margin-top: 1.5em !important;\n }\n .mt-sm-5 {\n margin-top: 3em !important;\n }\n .mt-sm-auto {\n margin-top: auto !important;\n }\n .me-sm-0 {\n margin-right: 0 !important;\n }\n .me-sm-1 {\n margin-right: 0.25em !important;\n }\n .me-sm-2 {\n margin-right: 0.5em !important;\n }\n .me-sm-3 {\n margin-right: 1em !important;\n }\n .me-sm-4 {\n margin-right: 1.5em !important;\n }\n .me-sm-5 {\n margin-right: 3em !important;\n }\n .me-sm-auto {\n margin-right: auto !important;\n }\n .mb-sm-0 {\n margin-bottom: 0 !important;\n }\n .mb-sm-1 {\n margin-bottom: 0.25em !important;\n }\n .mb-sm-2 {\n margin-bottom: 0.5em !important;\n }\n .mb-sm-3 {\n margin-bottom: 1em !important;\n }\n .mb-sm-4 {\n margin-bottom: 1.5em !important;\n }\n .mb-sm-5 {\n margin-bottom: 3em !important;\n }\n .mb-sm-auto {\n margin-bottom: auto !important;\n }\n .ms-sm-0 {\n margin-left: 0 !important;\n }\n .ms-sm-1 {\n margin-left: 0.25em !important;\n }\n .ms-sm-2 {\n margin-left: 0.5em !important;\n }\n .ms-sm-3 {\n margin-left: 1em !important;\n }\n .ms-sm-4 {\n margin-left: 1.5em !important;\n }\n .ms-sm-5 {\n margin-left: 3em !important;\n }\n .ms-sm-auto {\n margin-left: auto !important;\n }\n .p-sm-0 {\n padding: 0 !important;\n }\n .p-sm-1 {\n padding: 0.25em !important;\n }\n .p-sm-2 {\n padding: 0.5em !important;\n }\n .p-sm-3 {\n padding: 1em !important;\n }\n .p-sm-4 {\n padding: 1.5em !important;\n }\n .p-sm-5 {\n padding: 3em !important;\n }\n .px-sm-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-sm-1 {\n padding-right: 0.25em !important;\n padding-left: 0.25em !important;\n }\n .px-sm-2 {\n padding-right: 0.5em !important;\n padding-left: 0.5em !important;\n }\n .px-sm-3 {\n padding-right: 1em !important;\n padding-left: 1em !important;\n }\n .px-sm-4 {\n padding-right: 1.5em !important;\n padding-left: 1.5em !important;\n }\n .px-sm-5 {\n padding-right: 3em !important;\n padding-left: 3em !important;\n }\n .py-sm-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-sm-1 {\n padding-top: 0.25em !important;\n padding-bottom: 0.25em !important;\n }\n .py-sm-2 {\n padding-top: 0.5em !important;\n padding-bottom: 0.5em !important;\n }\n .py-sm-3 {\n padding-top: 1em !important;\n padding-bottom: 1em !important;\n }\n .py-sm-4 {\n padding-top: 1.5em !important;\n padding-bottom: 1.5em !important;\n }\n .py-sm-5 {\n padding-top: 3em !important;\n padding-bottom: 3em !important;\n }\n .pt-sm-0 {\n padding-top: 0 !important;\n }\n .pt-sm-1 {\n padding-top: 0.25em !important;\n }\n .pt-sm-2 {\n padding-top: 0.5em !important;\n }\n .pt-sm-3 {\n padding-top: 1em !important;\n }\n .pt-sm-4 {\n padding-top: 1.5em !important;\n }\n .pt-sm-5 {\n padding-top: 3em !important;\n }\n .pe-sm-0 {\n padding-right: 0 !important;\n }\n .pe-sm-1 {\n padding-right: 0.25em !important;\n }\n .pe-sm-2 {\n padding-right: 0.5em !important;\n }\n .pe-sm-3 {\n padding-right: 1em !important;\n }\n .pe-sm-4 {\n padding-right: 1.5em !important;\n }\n .pe-sm-5 {\n padding-right: 3em !important;\n }\n .pb-sm-0 {\n padding-bottom: 0 !important;\n }\n .pb-sm-1 {\n padding-bottom: 0.25em !important;\n }\n .pb-sm-2 {\n padding-bottom: 0.5em !important;\n }\n .pb-sm-3 {\n padding-bottom: 1em !important;\n }\n .pb-sm-4 {\n padding-bottom: 1.5em !important;\n }\n .pb-sm-5 {\n padding-bottom: 3em !important;\n }\n .ps-sm-0 {\n padding-left: 0 !important;\n }\n .ps-sm-1 {\n padding-left: 0.25em !important;\n }\n .ps-sm-2 {\n padding-left: 0.5em !important;\n }\n .ps-sm-3 {\n padding-left: 1em !important;\n }\n .ps-sm-4 {\n padding-left: 1.5em !important;\n }\n .ps-sm-5 {\n padding-left: 3em !important;\n }\n .gap-sm-0 {\n gap: 0 !important;\n }\n .gap-sm-1 {\n gap: 0.25em !important;\n }\n .gap-sm-2 {\n gap: 0.5em !important;\n }\n .gap-sm-3 {\n gap: 1em !important;\n }\n .gap-sm-4 {\n gap: 1.5em !important;\n }\n .gap-sm-5 {\n gap: 3em !important;\n }\n .row-gap-sm-0 {\n row-gap: 0 !important;\n }\n .row-gap-sm-1 {\n row-gap: 0.25em !important;\n }\n .row-gap-sm-2 {\n row-gap: 0.5em !important;\n }\n .row-gap-sm-3 {\n row-gap: 1em !important;\n }\n .row-gap-sm-4 {\n row-gap: 1.5em !important;\n }\n .row-gap-sm-5 {\n row-gap: 3em !important;\n }\n .column-gap-sm-0 {\n column-gap: 0 !important;\n }\n .column-gap-sm-1 {\n column-gap: 0.25em !important;\n }\n .column-gap-sm-2 {\n column-gap: 0.5em !important;\n }\n .column-gap-sm-3 {\n column-gap: 1em !important;\n }\n .column-gap-sm-4 {\n column-gap: 1.5em !important;\n }\n .column-gap-sm-5 {\n column-gap: 3em !important;\n }\n .text-sm-start {\n text-align: left !important;\n }\n .text-sm-end {\n text-align: right !important;\n }\n .text-sm-center {\n text-align: center !important;\n }\n}\n@media (min-width: 768px) {\n .float-md-start {\n float: left !important;\n }\n .float-md-end {\n float: right !important;\n }\n .float-md-none {\n float: none !important;\n }\n .object-fit-md-contain {\n object-fit: contain !important;\n }\n .object-fit-md-cover {\n object-fit: cover !important;\n }\n .object-fit-md-fill {\n object-fit: fill !important;\n }\n .object-fit-md-scale {\n object-fit: scale-down !important;\n }\n .object-fit-md-none {\n object-fit: none !important;\n }\n .d-md-inline {\n display: inline !important;\n }\n .d-md-inline-block {\n display: inline-block !important;\n }\n .d-md-block {\n display: block !important;\n }\n .d-md-grid {\n display: grid !important;\n }\n .d-md-inline-grid {\n display: inline-grid !important;\n }\n .d-md-table {\n display: table !important;\n }\n .d-md-table-row {\n display: table-row !important;\n }\n .d-md-table-cell {\n display: table-cell !important;\n }\n .d-md-flex {\n display: flex !important;\n }\n .d-md-inline-flex {\n display: inline-flex !important;\n }\n .d-md-none {\n display: none !important;\n }\n .flex-md-fill {\n flex: 1 1 auto !important;\n }\n .flex-md-row {\n flex-direction: row !important;\n }\n .flex-md-column {\n flex-direction: column !important;\n }\n .flex-md-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-md-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-md-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-md-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-md-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-md-shrink-1 {\n flex-shrink: 1 !important;\n }\n .flex-md-wrap {\n flex-wrap: wrap !important;\n }\n .flex-md-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-md-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-md-start {\n justify-content: flex-start !important;\n }\n .justify-content-md-end {\n justify-content: flex-end !important;\n }\n .justify-content-md-center {\n justify-content: center !important;\n }\n .justify-content-md-between {\n justify-content: space-between !important;\n }\n .justify-content-md-around {\n justify-content: space-around !important;\n }\n .justify-content-md-evenly {\n justify-content: space-evenly !important;\n }\n .align-items-md-start {\n align-items: flex-start !important;\n }\n .align-items-md-end {\n align-items: flex-end !important;\n }\n .align-items-md-center {\n align-items: center !important;\n }\n .align-items-md-baseline {\n align-items: baseline !important;\n }\n .align-items-md-stretch {\n align-items: stretch !important;\n }\n .align-content-md-start {\n align-content: flex-start !important;\n }\n .align-content-md-end {\n align-content: flex-end !important;\n }\n .align-content-md-center {\n align-content: center !important;\n }\n .align-content-md-between {\n align-content: space-between !important;\n }\n .align-content-md-around {\n align-content: space-around !important;\n }\n .align-content-md-stretch {\n align-content: stretch !important;\n }\n .align-self-md-auto {\n align-self: auto !important;\n }\n .align-self-md-start {\n align-self: flex-start !important;\n }\n .align-self-md-end {\n align-self: flex-end !important;\n }\n .align-self-md-center {\n align-self: center !important;\n }\n .align-self-md-baseline {\n align-self: baseline !important;\n }\n .align-self-md-stretch {\n align-self: stretch !important;\n }\n .order-md-first {\n order: -1 !important;\n }\n .order-md-0 {\n order: 0 !important;\n }\n .order-md-1 {\n order: 1 !important;\n }\n .order-md-2 {\n order: 2 !important;\n }\n .order-md-3 {\n order: 3 !important;\n }\n .order-md-4 {\n order: 4 !important;\n }\n .order-md-5 {\n order: 5 !important;\n }\n .order-md-last {\n order: 6 !important;\n }\n .m-md-0 {\n margin: 0 !important;\n }\n .m-md-1 {\n margin: 0.25em !important;\n }\n .m-md-2 {\n margin: 0.5em !important;\n }\n .m-md-3 {\n margin: 1em !important;\n }\n .m-md-4 {\n margin: 1.5em !important;\n }\n .m-md-5 {\n margin: 3em !important;\n }\n .m-md-auto {\n margin: auto !important;\n }\n .mx-md-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-md-1 {\n margin-right: 0.25em !important;\n margin-left: 0.25em !important;\n }\n .mx-md-2 {\n margin-right: 0.5em !important;\n margin-left: 0.5em !important;\n }\n .mx-md-3 {\n margin-right: 1em !important;\n margin-left: 1em !important;\n }\n .mx-md-4 {\n margin-right: 1.5em !important;\n margin-left: 1.5em !important;\n }\n .mx-md-5 {\n margin-right: 3em !important;\n margin-left: 3em !important;\n }\n .mx-md-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-md-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-md-1 {\n margin-top: 0.25em !important;\n margin-bottom: 0.25em !important;\n }\n .my-md-2 {\n margin-top: 0.5em !important;\n margin-bottom: 0.5em !important;\n }\n .my-md-3 {\n margin-top: 1em !important;\n margin-bottom: 1em !important;\n }\n .my-md-4 {\n margin-top: 1.5em !important;\n margin-bottom: 1.5em !important;\n }\n .my-md-5 {\n margin-top: 3em !important;\n margin-bottom: 3em !important;\n }\n .my-md-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-md-0 {\n margin-top: 0 !important;\n }\n .mt-md-1 {\n margin-top: 0.25em !important;\n }\n .mt-md-2 {\n margin-top: 0.5em !important;\n }\n .mt-md-3 {\n margin-top: 1em !important;\n }\n .mt-md-4 {\n margin-top: 1.5em !important;\n }\n .mt-md-5 {\n margin-top: 3em !important;\n }\n .mt-md-auto {\n margin-top: auto !important;\n }\n .me-md-0 {\n margin-right: 0 !important;\n }\n .me-md-1 {\n margin-right: 0.25em !important;\n }\n .me-md-2 {\n margin-right: 0.5em !important;\n }\n .me-md-3 {\n margin-right: 1em !important;\n }\n .me-md-4 {\n margin-right: 1.5em !important;\n }\n .me-md-5 {\n margin-right: 3em !important;\n }\n .me-md-auto {\n margin-right: auto !important;\n }\n .mb-md-0 {\n margin-bottom: 0 !important;\n }\n .mb-md-1 {\n margin-bottom: 0.25em !important;\n }\n .mb-md-2 {\n margin-bottom: 0.5em !important;\n }\n .mb-md-3 {\n margin-bottom: 1em !important;\n }\n .mb-md-4 {\n margin-bottom: 1.5em !important;\n }\n .mb-md-5 {\n margin-bottom: 3em !important;\n }\n .mb-md-auto {\n margin-bottom: auto !important;\n }\n .ms-md-0 {\n margin-left: 0 !important;\n }\n .ms-md-1 {\n margin-left: 0.25em !important;\n }\n .ms-md-2 {\n margin-left: 0.5em !important;\n }\n .ms-md-3 {\n margin-left: 1em !important;\n }\n .ms-md-4 {\n margin-left: 1.5em !important;\n }\n .ms-md-5 {\n margin-left: 3em !important;\n }\n .ms-md-auto {\n margin-left: auto !important;\n }\n .p-md-0 {\n padding: 0 !important;\n }\n .p-md-1 {\n padding: 0.25em !important;\n }\n .p-md-2 {\n padding: 0.5em !important;\n }\n .p-md-3 {\n padding: 1em !important;\n }\n .p-md-4 {\n padding: 1.5em !important;\n }\n .p-md-5 {\n padding: 3em !important;\n }\n .px-md-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-md-1 {\n padding-right: 0.25em !important;\n padding-left: 0.25em !important;\n }\n .px-md-2 {\n padding-right: 0.5em !important;\n padding-left: 0.5em !important;\n }\n .px-md-3 {\n padding-right: 1em !important;\n padding-left: 1em !important;\n }\n .px-md-4 {\n padding-right: 1.5em !important;\n padding-left: 1.5em !important;\n }\n .px-md-5 {\n padding-right: 3em !important;\n padding-left: 3em !important;\n }\n .py-md-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-md-1 {\n padding-top: 0.25em !important;\n padding-bottom: 0.25em !important;\n }\n .py-md-2 {\n padding-top: 0.5em !important;\n padding-bottom: 0.5em !important;\n }\n .py-md-3 {\n padding-top: 1em !important;\n padding-bottom: 1em !important;\n }\n .py-md-4 {\n padding-top: 1.5em !important;\n padding-bottom: 1.5em !important;\n }\n .py-md-5 {\n padding-top: 3em !important;\n padding-bottom: 3em !important;\n }\n .pt-md-0 {\n padding-top: 0 !important;\n }\n .pt-md-1 {\n padding-top: 0.25em !important;\n }\n .pt-md-2 {\n padding-top: 0.5em !important;\n }\n .pt-md-3 {\n padding-top: 1em !important;\n }\n .pt-md-4 {\n padding-top: 1.5em !important;\n }\n .pt-md-5 {\n padding-top: 3em !important;\n }\n .pe-md-0 {\n padding-right: 0 !important;\n }\n .pe-md-1 {\n padding-right: 0.25em !important;\n }\n .pe-md-2 {\n padding-right: 0.5em !important;\n }\n .pe-md-3 {\n padding-right: 1em !important;\n }\n .pe-md-4 {\n padding-right: 1.5em !important;\n }\n .pe-md-5 {\n padding-right: 3em !important;\n }\n .pb-md-0 {\n padding-bottom: 0 !important;\n }\n .pb-md-1 {\n padding-bottom: 0.25em !important;\n }\n .pb-md-2 {\n padding-bottom: 0.5em !important;\n }\n .pb-md-3 {\n padding-bottom: 1em !important;\n }\n .pb-md-4 {\n padding-bottom: 1.5em !important;\n }\n .pb-md-5 {\n padding-bottom: 3em !important;\n }\n .ps-md-0 {\n padding-left: 0 !important;\n }\n .ps-md-1 {\n padding-left: 0.25em !important;\n }\n .ps-md-2 {\n padding-left: 0.5em !important;\n }\n .ps-md-3 {\n padding-left: 1em !important;\n }\n .ps-md-4 {\n padding-left: 1.5em !important;\n }\n .ps-md-5 {\n padding-left: 3em !important;\n }\n .gap-md-0 {\n gap: 0 !important;\n }\n .gap-md-1 {\n gap: 0.25em !important;\n }\n .gap-md-2 {\n gap: 0.5em !important;\n }\n .gap-md-3 {\n gap: 1em !important;\n }\n .gap-md-4 {\n gap: 1.5em !important;\n }\n .gap-md-5 {\n gap: 3em !important;\n }\n .row-gap-md-0 {\n row-gap: 0 !important;\n }\n .row-gap-md-1 {\n row-gap: 0.25em !important;\n }\n .row-gap-md-2 {\n row-gap: 0.5em !important;\n }\n .row-gap-md-3 {\n row-gap: 1em !important;\n }\n .row-gap-md-4 {\n row-gap: 1.5em !important;\n }\n .row-gap-md-5 {\n row-gap: 3em !important;\n }\n .column-gap-md-0 {\n column-gap: 0 !important;\n }\n .column-gap-md-1 {\n column-gap: 0.25em !important;\n }\n .column-gap-md-2 {\n column-gap: 0.5em !important;\n }\n .column-gap-md-3 {\n column-gap: 1em !important;\n }\n .column-gap-md-4 {\n column-gap: 1.5em !important;\n }\n .column-gap-md-5 {\n column-gap: 3em !important;\n }\n .text-md-start {\n text-align: left !important;\n }\n .text-md-end {\n text-align: right !important;\n }\n .text-md-center {\n text-align: center !important;\n }\n}\n@media (min-width: 992px) {\n .float-lg-start {\n float: left !important;\n }\n .float-lg-end {\n float: right !important;\n }\n .float-lg-none {\n float: none !important;\n }\n .object-fit-lg-contain {\n object-fit: contain !important;\n }\n .object-fit-lg-cover {\n object-fit: cover !important;\n }\n .object-fit-lg-fill {\n object-fit: fill !important;\n }\n .object-fit-lg-scale {\n object-fit: scale-down !important;\n }\n .object-fit-lg-none {\n object-fit: none !important;\n }\n .d-lg-inline {\n display: inline !important;\n }\n .d-lg-inline-block {\n display: inline-block !important;\n }\n .d-lg-block {\n display: block !important;\n }\n .d-lg-grid {\n display: grid !important;\n }\n .d-lg-inline-grid {\n display: inline-grid !important;\n }\n .d-lg-table {\n display: table !important;\n }\n .d-lg-table-row {\n display: table-row !important;\n }\n .d-lg-table-cell {\n display: table-cell !important;\n }\n .d-lg-flex {\n display: flex !important;\n }\n .d-lg-inline-flex {\n display: inline-flex !important;\n }\n .d-lg-none {\n display: none !important;\n }\n .flex-lg-fill {\n flex: 1 1 auto !important;\n }\n .flex-lg-row {\n flex-direction: row !important;\n }\n .flex-lg-column {\n flex-direction: column !important;\n }\n .flex-lg-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-lg-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-lg-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-lg-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-lg-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-lg-shrink-1 {\n flex-shrink: 1 !important;\n }\n .flex-lg-wrap {\n flex-wrap: wrap !important;\n }\n .flex-lg-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-lg-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-lg-start {\n justify-content: flex-start !important;\n }\n .justify-content-lg-end {\n justify-content: flex-end !important;\n }\n .justify-content-lg-center {\n justify-content: center !important;\n }\n .justify-content-lg-between {\n justify-content: space-between !important;\n }\n .justify-content-lg-around {\n justify-content: space-around !important;\n }\n .justify-content-lg-evenly {\n justify-content: space-evenly !important;\n }\n .align-items-lg-start {\n align-items: flex-start !important;\n }\n .align-items-lg-end {\n align-items: flex-end !important;\n }\n .align-items-lg-center {\n align-items: center !important;\n }\n .align-items-lg-baseline {\n align-items: baseline !important;\n }\n .align-items-lg-stretch {\n align-items: stretch !important;\n }\n .align-content-lg-start {\n align-content: flex-start !important;\n }\n .align-content-lg-end {\n align-content: flex-end !important;\n }\n .align-content-lg-center {\n align-content: center !important;\n }\n .align-content-lg-between {\n align-content: space-between !important;\n }\n .align-content-lg-around {\n align-content: space-around !important;\n }\n .align-content-lg-stretch {\n align-content: stretch !important;\n }\n .align-self-lg-auto {\n align-self: auto !important;\n }\n .align-self-lg-start {\n align-self: flex-start !important;\n }\n .align-self-lg-end {\n align-self: flex-end !important;\n }\n .align-self-lg-center {\n align-self: center !important;\n }\n .align-self-lg-baseline {\n align-self: baseline !important;\n }\n .align-self-lg-stretch {\n align-self: stretch !important;\n }\n .order-lg-first {\n order: -1 !important;\n }\n .order-lg-0 {\n order: 0 !important;\n }\n .order-lg-1 {\n order: 1 !important;\n }\n .order-lg-2 {\n order: 2 !important;\n }\n .order-lg-3 {\n order: 3 !important;\n }\n .order-lg-4 {\n order: 4 !important;\n }\n .order-lg-5 {\n order: 5 !important;\n }\n .order-lg-last {\n order: 6 !important;\n }\n .m-lg-0 {\n margin: 0 !important;\n }\n .m-lg-1 {\n margin: 0.25em !important;\n }\n .m-lg-2 {\n margin: 0.5em !important;\n }\n .m-lg-3 {\n margin: 1em !important;\n }\n .m-lg-4 {\n margin: 1.5em !important;\n }\n .m-lg-5 {\n margin: 3em !important;\n }\n .m-lg-auto {\n margin: auto !important;\n }\n .mx-lg-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-lg-1 {\n margin-right: 0.25em !important;\n margin-left: 0.25em !important;\n }\n .mx-lg-2 {\n margin-right: 0.5em !important;\n margin-left: 0.5em !important;\n }\n .mx-lg-3 {\n margin-right: 1em !important;\n margin-left: 1em !important;\n }\n .mx-lg-4 {\n margin-right: 1.5em !important;\n margin-left: 1.5em !important;\n }\n .mx-lg-5 {\n margin-right: 3em !important;\n margin-left: 3em !important;\n }\n .mx-lg-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-lg-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-lg-1 {\n margin-top: 0.25em !important;\n margin-bottom: 0.25em !important;\n }\n .my-lg-2 {\n margin-top: 0.5em !important;\n margin-bottom: 0.5em !important;\n }\n .my-lg-3 {\n margin-top: 1em !important;\n margin-bottom: 1em !important;\n }\n .my-lg-4 {\n margin-top: 1.5em !important;\n margin-bottom: 1.5em !important;\n }\n .my-lg-5 {\n margin-top: 3em !important;\n margin-bottom: 3em !important;\n }\n .my-lg-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-lg-0 {\n margin-top: 0 !important;\n }\n .mt-lg-1 {\n margin-top: 0.25em !important;\n }\n .mt-lg-2 {\n margin-top: 0.5em !important;\n }\n .mt-lg-3 {\n margin-top: 1em !important;\n }\n .mt-lg-4 {\n margin-top: 1.5em !important;\n }\n .mt-lg-5 {\n margin-top: 3em !important;\n }\n .mt-lg-auto {\n margin-top: auto !important;\n }\n .me-lg-0 {\n margin-right: 0 !important;\n }\n .me-lg-1 {\n margin-right: 0.25em !important;\n }\n .me-lg-2 {\n margin-right: 0.5em !important;\n }\n .me-lg-3 {\n margin-right: 1em !important;\n }\n .me-lg-4 {\n margin-right: 1.5em !important;\n }\n .me-lg-5 {\n margin-right: 3em !important;\n }\n .me-lg-auto {\n margin-right: auto !important;\n }\n .mb-lg-0 {\n margin-bottom: 0 !important;\n }\n .mb-lg-1 {\n margin-bottom: 0.25em !important;\n }\n .mb-lg-2 {\n margin-bottom: 0.5em !important;\n }\n .mb-lg-3 {\n margin-bottom: 1em !important;\n }\n .mb-lg-4 {\n margin-bottom: 1.5em !important;\n }\n .mb-lg-5 {\n margin-bottom: 3em !important;\n }\n .mb-lg-auto {\n margin-bottom: auto !important;\n }\n .ms-lg-0 {\n margin-left: 0 !important;\n }\n .ms-lg-1 {\n margin-left: 0.25em !important;\n }\n .ms-lg-2 {\n margin-left: 0.5em !important;\n }\n .ms-lg-3 {\n margin-left: 1em !important;\n }\n .ms-lg-4 {\n margin-left: 1.5em !important;\n }\n .ms-lg-5 {\n margin-left: 3em !important;\n }\n .ms-lg-auto {\n margin-left: auto !important;\n }\n .p-lg-0 {\n padding: 0 !important;\n }\n .p-lg-1 {\n padding: 0.25em !important;\n }\n .p-lg-2 {\n padding: 0.5em !important;\n }\n .p-lg-3 {\n padding: 1em !important;\n }\n .p-lg-4 {\n padding: 1.5em !important;\n }\n .p-lg-5 {\n padding: 3em !important;\n }\n .px-lg-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-lg-1 {\n padding-right: 0.25em !important;\n padding-left: 0.25em !important;\n }\n .px-lg-2 {\n padding-right: 0.5em !important;\n padding-left: 0.5em !important;\n }\n .px-lg-3 {\n padding-right: 1em !important;\n padding-left: 1em !important;\n }\n .px-lg-4 {\n padding-right: 1.5em !important;\n padding-left: 1.5em !important;\n }\n .px-lg-5 {\n padding-right: 3em !important;\n padding-left: 3em !important;\n }\n .py-lg-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-lg-1 {\n padding-top: 0.25em !important;\n padding-bottom: 0.25em !important;\n }\n .py-lg-2 {\n padding-top: 0.5em !important;\n padding-bottom: 0.5em !important;\n }\n .py-lg-3 {\n padding-top: 1em !important;\n padding-bottom: 1em !important;\n }\n .py-lg-4 {\n padding-top: 1.5em !important;\n padding-bottom: 1.5em !important;\n }\n .py-lg-5 {\n padding-top: 3em !important;\n padding-bottom: 3em !important;\n }\n .pt-lg-0 {\n padding-top: 0 !important;\n }\n .pt-lg-1 {\n padding-top: 0.25em !important;\n }\n .pt-lg-2 {\n padding-top: 0.5em !important;\n }\n .pt-lg-3 {\n padding-top: 1em !important;\n }\n .pt-lg-4 {\n padding-top: 1.5em !important;\n }\n .pt-lg-5 {\n padding-top: 3em !important;\n }\n .pe-lg-0 {\n padding-right: 0 !important;\n }\n .pe-lg-1 {\n padding-right: 0.25em !important;\n }\n .pe-lg-2 {\n padding-right: 0.5em !important;\n }\n .pe-lg-3 {\n padding-right: 1em !important;\n }\n .pe-lg-4 {\n padding-right: 1.5em !important;\n }\n .pe-lg-5 {\n padding-right: 3em !important;\n }\n .pb-lg-0 {\n padding-bottom: 0 !important;\n }\n .pb-lg-1 {\n padding-bottom: 0.25em !important;\n }\n .pb-lg-2 {\n padding-bottom: 0.5em !important;\n }\n .pb-lg-3 {\n padding-bottom: 1em !important;\n }\n .pb-lg-4 {\n padding-bottom: 1.5em !important;\n }\n .pb-lg-5 {\n padding-bottom: 3em !important;\n }\n .ps-lg-0 {\n padding-left: 0 !important;\n }\n .ps-lg-1 {\n padding-left: 0.25em !important;\n }\n .ps-lg-2 {\n padding-left: 0.5em !important;\n }\n .ps-lg-3 {\n padding-left: 1em !important;\n }\n .ps-lg-4 {\n padding-left: 1.5em !important;\n }\n .ps-lg-5 {\n padding-left: 3em !important;\n }\n .gap-lg-0 {\n gap: 0 !important;\n }\n .gap-lg-1 {\n gap: 0.25em !important;\n }\n .gap-lg-2 {\n gap: 0.5em !important;\n }\n .gap-lg-3 {\n gap: 1em !important;\n }\n .gap-lg-4 {\n gap: 1.5em !important;\n }\n .gap-lg-5 {\n gap: 3em !important;\n }\n .row-gap-lg-0 {\n row-gap: 0 !important;\n }\n .row-gap-lg-1 {\n row-gap: 0.25em !important;\n }\n .row-gap-lg-2 {\n row-gap: 0.5em !important;\n }\n .row-gap-lg-3 {\n row-gap: 1em !important;\n }\n .row-gap-lg-4 {\n row-gap: 1.5em !important;\n }\n .row-gap-lg-5 {\n row-gap: 3em !important;\n }\n .column-gap-lg-0 {\n column-gap: 0 !important;\n }\n .column-gap-lg-1 {\n column-gap: 0.25em !important;\n }\n .column-gap-lg-2 {\n column-gap: 0.5em !important;\n }\n .column-gap-lg-3 {\n column-gap: 1em !important;\n }\n .column-gap-lg-4 {\n column-gap: 1.5em !important;\n }\n .column-gap-lg-5 {\n column-gap: 3em !important;\n }\n .text-lg-start {\n text-align: left !important;\n }\n .text-lg-end {\n text-align: right !important;\n }\n .text-lg-center {\n text-align: center !important;\n }\n}\n@media (min-width: 1200px) {\n .float-xl-start {\n float: left !important;\n }\n .float-xl-end {\n float: right !important;\n }\n .float-xl-none {\n float: none !important;\n }\n .object-fit-xl-contain {\n object-fit: contain !important;\n }\n .object-fit-xl-cover {\n object-fit: cover !important;\n }\n .object-fit-xl-fill {\n object-fit: fill !important;\n }\n .object-fit-xl-scale {\n object-fit: scale-down !important;\n }\n .object-fit-xl-none {\n object-fit: none !important;\n }\n .d-xl-inline {\n display: inline !important;\n }\n .d-xl-inline-block {\n display: inline-block !important;\n }\n .d-xl-block {\n display: block !important;\n }\n .d-xl-grid {\n display: grid !important;\n }\n .d-xl-inline-grid {\n display: inline-grid !important;\n }\n .d-xl-table {\n display: table !important;\n }\n .d-xl-table-row {\n display: table-row !important;\n }\n .d-xl-table-cell {\n display: table-cell !important;\n }\n .d-xl-flex {\n display: flex !important;\n }\n .d-xl-inline-flex {\n display: inline-flex !important;\n }\n .d-xl-none {\n display: none !important;\n }\n .flex-xl-fill {\n flex: 1 1 auto !important;\n }\n .flex-xl-row {\n flex-direction: row !important;\n }\n .flex-xl-column {\n flex-direction: column !important;\n }\n .flex-xl-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-xl-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-xl-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-xl-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-xl-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-xl-shrink-1 {\n flex-shrink: 1 !important;\n }\n .flex-xl-wrap {\n flex-wrap: wrap !important;\n }\n .flex-xl-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-xl-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-xl-start {\n justify-content: flex-start !important;\n }\n .justify-content-xl-end {\n justify-content: flex-end !important;\n }\n .justify-content-xl-center {\n justify-content: center !important;\n }\n .justify-content-xl-between {\n justify-content: space-between !important;\n }\n .justify-content-xl-around {\n justify-content: space-around !important;\n }\n .justify-content-xl-evenly {\n justify-content: space-evenly !important;\n }\n .align-items-xl-start {\n align-items: flex-start !important;\n }\n .align-items-xl-end {\n align-items: flex-end !important;\n }\n .align-items-xl-center {\n align-items: center !important;\n }\n .align-items-xl-baseline {\n align-items: baseline !important;\n }\n .align-items-xl-stretch {\n align-items: stretch !important;\n }\n .align-content-xl-start {\n align-content: flex-start !important;\n }\n .align-content-xl-end {\n align-content: flex-end !important;\n }\n .align-content-xl-center {\n align-content: center !important;\n }\n .align-content-xl-between {\n align-content: space-between !important;\n }\n .align-content-xl-around {\n align-content: space-around !important;\n }\n .align-content-xl-stretch {\n align-content: stretch !important;\n }\n .align-self-xl-auto {\n align-self: auto !important;\n }\n .align-self-xl-start {\n align-self: flex-start !important;\n }\n .align-self-xl-end {\n align-self: flex-end !important;\n }\n .align-self-xl-center {\n align-self: center !important;\n }\n .align-self-xl-baseline {\n align-self: baseline !important;\n }\n .align-self-xl-stretch {\n align-self: stretch !important;\n }\n .order-xl-first {\n order: -1 !important;\n }\n .order-xl-0 {\n order: 0 !important;\n }\n .order-xl-1 {\n order: 1 !important;\n }\n .order-xl-2 {\n order: 2 !important;\n }\n .order-xl-3 {\n order: 3 !important;\n }\n .order-xl-4 {\n order: 4 !important;\n }\n .order-xl-5 {\n order: 5 !important;\n }\n .order-xl-last {\n order: 6 !important;\n }\n .m-xl-0 {\n margin: 0 !important;\n }\n .m-xl-1 {\n margin: 0.25em !important;\n }\n .m-xl-2 {\n margin: 0.5em !important;\n }\n .m-xl-3 {\n margin: 1em !important;\n }\n .m-xl-4 {\n margin: 1.5em !important;\n }\n .m-xl-5 {\n margin: 3em !important;\n }\n .m-xl-auto {\n margin: auto !important;\n }\n .mx-xl-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-xl-1 {\n margin-right: 0.25em !important;\n margin-left: 0.25em !important;\n }\n .mx-xl-2 {\n margin-right: 0.5em !important;\n margin-left: 0.5em !important;\n }\n .mx-xl-3 {\n margin-right: 1em !important;\n margin-left: 1em !important;\n }\n .mx-xl-4 {\n margin-right: 1.5em !important;\n margin-left: 1.5em !important;\n }\n .mx-xl-5 {\n margin-right: 3em !important;\n margin-left: 3em !important;\n }\n .mx-xl-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-xl-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-xl-1 {\n margin-top: 0.25em !important;\n margin-bottom: 0.25em !important;\n }\n .my-xl-2 {\n margin-top: 0.5em !important;\n margin-bottom: 0.5em !important;\n }\n .my-xl-3 {\n margin-top: 1em !important;\n margin-bottom: 1em !important;\n }\n .my-xl-4 {\n margin-top: 1.5em !important;\n margin-bottom: 1.5em !important;\n }\n .my-xl-5 {\n margin-top: 3em !important;\n margin-bottom: 3em !important;\n }\n .my-xl-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-xl-0 {\n margin-top: 0 !important;\n }\n .mt-xl-1 {\n margin-top: 0.25em !important;\n }\n .mt-xl-2 {\n margin-top: 0.5em !important;\n }\n .mt-xl-3 {\n margin-top: 1em !important;\n }\n .mt-xl-4 {\n margin-top: 1.5em !important;\n }\n .mt-xl-5 {\n margin-top: 3em !important;\n }\n .mt-xl-auto {\n margin-top: auto !important;\n }\n .me-xl-0 {\n margin-right: 0 !important;\n }\n .me-xl-1 {\n margin-right: 0.25em !important;\n }\n .me-xl-2 {\n margin-right: 0.5em !important;\n }\n .me-xl-3 {\n margin-right: 1em !important;\n }\n .me-xl-4 {\n margin-right: 1.5em !important;\n }\n .me-xl-5 {\n margin-right: 3em !important;\n }\n .me-xl-auto {\n margin-right: auto !important;\n }\n .mb-xl-0 {\n margin-bottom: 0 !important;\n }\n .mb-xl-1 {\n margin-bottom: 0.25em !important;\n }\n .mb-xl-2 {\n margin-bottom: 0.5em !important;\n }\n .mb-xl-3 {\n margin-bottom: 1em !important;\n }\n .mb-xl-4 {\n margin-bottom: 1.5em !important;\n }\n .mb-xl-5 {\n margin-bottom: 3em !important;\n }\n .mb-xl-auto {\n margin-bottom: auto !important;\n }\n .ms-xl-0 {\n margin-left: 0 !important;\n }\n .ms-xl-1 {\n margin-left: 0.25em !important;\n }\n .ms-xl-2 {\n margin-left: 0.5em !important;\n }\n .ms-xl-3 {\n margin-left: 1em !important;\n }\n .ms-xl-4 {\n margin-left: 1.5em !important;\n }\n .ms-xl-5 {\n margin-left: 3em !important;\n }\n .ms-xl-auto {\n margin-left: auto !important;\n }\n .p-xl-0 {\n padding: 0 !important;\n }\n .p-xl-1 {\n padding: 0.25em !important;\n }\n .p-xl-2 {\n padding: 0.5em !important;\n }\n .p-xl-3 {\n padding: 1em !important;\n }\n .p-xl-4 {\n padding: 1.5em !important;\n }\n .p-xl-5 {\n padding: 3em !important;\n }\n .px-xl-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-xl-1 {\n padding-right: 0.25em !important;\n padding-left: 0.25em !important;\n }\n .px-xl-2 {\n padding-right: 0.5em !important;\n padding-left: 0.5em !important;\n }\n .px-xl-3 {\n padding-right: 1em !important;\n padding-left: 1em !important;\n }\n .px-xl-4 {\n padding-right: 1.5em !important;\n padding-left: 1.5em !important;\n }\n .px-xl-5 {\n padding-right: 3em !important;\n padding-left: 3em !important;\n }\n .py-xl-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-xl-1 {\n padding-top: 0.25em !important;\n padding-bottom: 0.25em !important;\n }\n .py-xl-2 {\n padding-top: 0.5em !important;\n padding-bottom: 0.5em !important;\n }\n .py-xl-3 {\n padding-top: 1em !important;\n padding-bottom: 1em !important;\n }\n .py-xl-4 {\n padding-top: 1.5em !important;\n padding-bottom: 1.5em !important;\n }\n .py-xl-5 {\n padding-top: 3em !important;\n padding-bottom: 3em !important;\n }\n .pt-xl-0 {\n padding-top: 0 !important;\n }\n .pt-xl-1 {\n padding-top: 0.25em !important;\n }\n .pt-xl-2 {\n padding-top: 0.5em !important;\n }\n .pt-xl-3 {\n padding-top: 1em !important;\n }\n .pt-xl-4 {\n padding-top: 1.5em !important;\n }\n .pt-xl-5 {\n padding-top: 3em !important;\n }\n .pe-xl-0 {\n padding-right: 0 !important;\n }\n .pe-xl-1 {\n padding-right: 0.25em !important;\n }\n .pe-xl-2 {\n padding-right: 0.5em !important;\n }\n .pe-xl-3 {\n padding-right: 1em !important;\n }\n .pe-xl-4 {\n padding-right: 1.5em !important;\n }\n .pe-xl-5 {\n padding-right: 3em !important;\n }\n .pb-xl-0 {\n padding-bottom: 0 !important;\n }\n .pb-xl-1 {\n padding-bottom: 0.25em !important;\n }\n .pb-xl-2 {\n padding-bottom: 0.5em !important;\n }\n .pb-xl-3 {\n padding-bottom: 1em !important;\n }\n .pb-xl-4 {\n padding-bottom: 1.5em !important;\n }\n .pb-xl-5 {\n padding-bottom: 3em !important;\n }\n .ps-xl-0 {\n padding-left: 0 !important;\n }\n .ps-xl-1 {\n padding-left: 0.25em !important;\n }\n .ps-xl-2 {\n padding-left: 0.5em !important;\n }\n .ps-xl-3 {\n padding-left: 1em !important;\n }\n .ps-xl-4 {\n padding-left: 1.5em !important;\n }\n .ps-xl-5 {\n padding-left: 3em !important;\n }\n .gap-xl-0 {\n gap: 0 !important;\n }\n .gap-xl-1 {\n gap: 0.25em !important;\n }\n .gap-xl-2 {\n gap: 0.5em !important;\n }\n .gap-xl-3 {\n gap: 1em !important;\n }\n .gap-xl-4 {\n gap: 1.5em !important;\n }\n .gap-xl-5 {\n gap: 3em !important;\n }\n .row-gap-xl-0 {\n row-gap: 0 !important;\n }\n .row-gap-xl-1 {\n row-gap: 0.25em !important;\n }\n .row-gap-xl-2 {\n row-gap: 0.5em !important;\n }\n .row-gap-xl-3 {\n row-gap: 1em !important;\n }\n .row-gap-xl-4 {\n row-gap: 1.5em !important;\n }\n .row-gap-xl-5 {\n row-gap: 3em !important;\n }\n .column-gap-xl-0 {\n column-gap: 0 !important;\n }\n .column-gap-xl-1 {\n column-gap: 0.25em !important;\n }\n .column-gap-xl-2 {\n column-gap: 0.5em !important;\n }\n .column-gap-xl-3 {\n column-gap: 1em !important;\n }\n .column-gap-xl-4 {\n column-gap: 1.5em !important;\n }\n .column-gap-xl-5 {\n column-gap: 3em !important;\n }\n .text-xl-start {\n text-align: left !important;\n }\n .text-xl-end {\n text-align: right !important;\n }\n .text-xl-center {\n text-align: center !important;\n }\n}\n@media (min-width: 1400px) {\n .float-xxl-start {\n float: left !important;\n }\n .float-xxl-end {\n float: right !important;\n }\n .float-xxl-none {\n float: none !important;\n }\n .object-fit-xxl-contain {\n object-fit: contain !important;\n }\n .object-fit-xxl-cover {\n object-fit: cover !important;\n }\n .object-fit-xxl-fill {\n object-fit: fill !important;\n }\n .object-fit-xxl-scale {\n object-fit: scale-down !important;\n }\n .object-fit-xxl-none {\n object-fit: none !important;\n }\n .d-xxl-inline {\n display: inline !important;\n }\n .d-xxl-inline-block {\n display: inline-block !important;\n }\n .d-xxl-block {\n display: block !important;\n }\n .d-xxl-grid {\n display: grid !important;\n }\n .d-xxl-inline-grid {\n display: inline-grid !important;\n }\n .d-xxl-table {\n display: table !important;\n }\n .d-xxl-table-row {\n display: table-row !important;\n }\n .d-xxl-table-cell {\n display: table-cell !important;\n }\n .d-xxl-flex {\n display: flex !important;\n }\n .d-xxl-inline-flex {\n display: inline-flex !important;\n }\n .d-xxl-none {\n display: none !important;\n }\n .flex-xxl-fill {\n flex: 1 1 auto !important;\n }\n .flex-xxl-row {\n flex-direction: row !important;\n }\n .flex-xxl-column {\n flex-direction: column !important;\n }\n .flex-xxl-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-xxl-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-xxl-grow-0 {\n flex-grow: 0 !important;\n }\n .flex-xxl-grow-1 {\n flex-grow: 1 !important;\n }\n .flex-xxl-shrink-0 {\n flex-shrink: 0 !important;\n }\n .flex-xxl-shrink-1 {\n flex-shrink: 1 !important;\n }\n .flex-xxl-wrap {\n flex-wrap: wrap !important;\n }\n .flex-xxl-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-xxl-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-xxl-start {\n justify-content: flex-start !important;\n }\n .justify-content-xxl-end {\n justify-content: flex-end !important;\n }\n .justify-content-xxl-center {\n justify-content: center !important;\n }\n .justify-content-xxl-between {\n justify-content: space-between !important;\n }\n .justify-content-xxl-around {\n justify-content: space-around !important;\n }\n .justify-content-xxl-evenly {\n justify-content: space-evenly !important;\n }\n .align-items-xxl-start {\n align-items: flex-start !important;\n }\n .align-items-xxl-end {\n align-items: flex-end !important;\n }\n .align-items-xxl-center {\n align-items: center !important;\n }\n .align-items-xxl-baseline {\n align-items: baseline !important;\n }\n .align-items-xxl-stretch {\n align-items: stretch !important;\n }\n .align-content-xxl-start {\n align-content: flex-start !important;\n }\n .align-content-xxl-end {\n align-content: flex-end !important;\n }\n .align-content-xxl-center {\n align-content: center !important;\n }\n .align-content-xxl-between {\n align-content: space-between !important;\n }\n .align-content-xxl-around {\n align-content: space-around !important;\n }\n .align-content-xxl-stretch {\n align-content: stretch !important;\n }\n .align-self-xxl-auto {\n align-self: auto !important;\n }\n .align-self-xxl-start {\n align-self: flex-start !important;\n }\n .align-self-xxl-end {\n align-self: flex-end !important;\n }\n .align-self-xxl-center {\n align-self: center !important;\n }\n .align-self-xxl-baseline {\n align-self: baseline !important;\n }\n .align-self-xxl-stretch {\n align-self: stretch !important;\n }\n .order-xxl-first {\n order: -1 !important;\n }\n .order-xxl-0 {\n order: 0 !important;\n }\n .order-xxl-1 {\n order: 1 !important;\n }\n .order-xxl-2 {\n order: 2 !important;\n }\n .order-xxl-3 {\n order: 3 !important;\n }\n .order-xxl-4 {\n order: 4 !important;\n }\n .order-xxl-5 {\n order: 5 !important;\n }\n .order-xxl-last {\n order: 6 !important;\n }\n .m-xxl-0 {\n margin: 0 !important;\n }\n .m-xxl-1 {\n margin: 0.25em !important;\n }\n .m-xxl-2 {\n margin: 0.5em !important;\n }\n .m-xxl-3 {\n margin: 1em !important;\n }\n .m-xxl-4 {\n margin: 1.5em !important;\n }\n .m-xxl-5 {\n margin: 3em !important;\n }\n .m-xxl-auto {\n margin: auto !important;\n }\n .mx-xxl-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n .mx-xxl-1 {\n margin-right: 0.25em !important;\n margin-left: 0.25em !important;\n }\n .mx-xxl-2 {\n margin-right: 0.5em !important;\n margin-left: 0.5em !important;\n }\n .mx-xxl-3 {\n margin-right: 1em !important;\n margin-left: 1em !important;\n }\n .mx-xxl-4 {\n margin-right: 1.5em !important;\n margin-left: 1.5em !important;\n }\n .mx-xxl-5 {\n margin-right: 3em !important;\n margin-left: 3em !important;\n }\n .mx-xxl-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n .my-xxl-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-xxl-1 {\n margin-top: 0.25em !important;\n margin-bottom: 0.25em !important;\n }\n .my-xxl-2 {\n margin-top: 0.5em !important;\n margin-bottom: 0.5em !important;\n }\n .my-xxl-3 {\n margin-top: 1em !important;\n margin-bottom: 1em !important;\n }\n .my-xxl-4 {\n margin-top: 1.5em !important;\n margin-bottom: 1.5em !important;\n }\n .my-xxl-5 {\n margin-top: 3em !important;\n margin-bottom: 3em !important;\n }\n .my-xxl-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-xxl-0 {\n margin-top: 0 !important;\n }\n .mt-xxl-1 {\n margin-top: 0.25em !important;\n }\n .mt-xxl-2 {\n margin-top: 0.5em !important;\n }\n .mt-xxl-3 {\n margin-top: 1em !important;\n }\n .mt-xxl-4 {\n margin-top: 1.5em !important;\n }\n .mt-xxl-5 {\n margin-top: 3em !important;\n }\n .mt-xxl-auto {\n margin-top: auto !important;\n }\n .me-xxl-0 {\n margin-right: 0 !important;\n }\n .me-xxl-1 {\n margin-right: 0.25em !important;\n }\n .me-xxl-2 {\n margin-right: 0.5em !important;\n }\n .me-xxl-3 {\n margin-right: 1em !important;\n }\n .me-xxl-4 {\n margin-right: 1.5em !important;\n }\n .me-xxl-5 {\n margin-right: 3em !important;\n }\n .me-xxl-auto {\n margin-right: auto !important;\n }\n .mb-xxl-0 {\n margin-bottom: 0 !important;\n }\n .mb-xxl-1 {\n margin-bottom: 0.25em !important;\n }\n .mb-xxl-2 {\n margin-bottom: 0.5em !important;\n }\n .mb-xxl-3 {\n margin-bottom: 1em !important;\n }\n .mb-xxl-4 {\n margin-bottom: 1.5em !important;\n }\n .mb-xxl-5 {\n margin-bottom: 3em !important;\n }\n .mb-xxl-auto {\n margin-bottom: auto !important;\n }\n .ms-xxl-0 {\n margin-left: 0 !important;\n }\n .ms-xxl-1 {\n margin-left: 0.25em !important;\n }\n .ms-xxl-2 {\n margin-left: 0.5em !important;\n }\n .ms-xxl-3 {\n margin-left: 1em !important;\n }\n .ms-xxl-4 {\n margin-left: 1.5em !important;\n }\n .ms-xxl-5 {\n margin-left: 3em !important;\n }\n .ms-xxl-auto {\n margin-left: auto !important;\n }\n .p-xxl-0 {\n padding: 0 !important;\n }\n .p-xxl-1 {\n padding: 0.25em !important;\n }\n .p-xxl-2 {\n padding: 0.5em !important;\n }\n .p-xxl-3 {\n padding: 1em !important;\n }\n .p-xxl-4 {\n padding: 1.5em !important;\n }\n .p-xxl-5 {\n padding: 3em !important;\n }\n .px-xxl-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n .px-xxl-1 {\n padding-right: 0.25em !important;\n padding-left: 0.25em !important;\n }\n .px-xxl-2 {\n padding-right: 0.5em !important;\n padding-left: 0.5em !important;\n }\n .px-xxl-3 {\n padding-right: 1em !important;\n padding-left: 1em !important;\n }\n .px-xxl-4 {\n padding-right: 1.5em !important;\n padding-left: 1.5em !important;\n }\n .px-xxl-5 {\n padding-right: 3em !important;\n padding-left: 3em !important;\n }\n .py-xxl-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-xxl-1 {\n padding-top: 0.25em !important;\n padding-bottom: 0.25em !important;\n }\n .py-xxl-2 {\n padding-top: 0.5em !important;\n padding-bottom: 0.5em !important;\n }\n .py-xxl-3 {\n padding-top: 1em !important;\n padding-bottom: 1em !important;\n }\n .py-xxl-4 {\n padding-top: 1.5em !important;\n padding-bottom: 1.5em !important;\n }\n .py-xxl-5 {\n padding-top: 3em !important;\n padding-bottom: 3em !important;\n }\n .pt-xxl-0 {\n padding-top: 0 !important;\n }\n .pt-xxl-1 {\n padding-top: 0.25em !important;\n }\n .pt-xxl-2 {\n padding-top: 0.5em !important;\n }\n .pt-xxl-3 {\n padding-top: 1em !important;\n }\n .pt-xxl-4 {\n padding-top: 1.5em !important;\n }\n .pt-xxl-5 {\n padding-top: 3em !important;\n }\n .pe-xxl-0 {\n padding-right: 0 !important;\n }\n .pe-xxl-1 {\n padding-right: 0.25em !important;\n }\n .pe-xxl-2 {\n padding-right: 0.5em !important;\n }\n .pe-xxl-3 {\n padding-right: 1em !important;\n }\n .pe-xxl-4 {\n padding-right: 1.5em !important;\n }\n .pe-xxl-5 {\n padding-right: 3em !important;\n }\n .pb-xxl-0 {\n padding-bottom: 0 !important;\n }\n .pb-xxl-1 {\n padding-bottom: 0.25em !important;\n }\n .pb-xxl-2 {\n padding-bottom: 0.5em !important;\n }\n .pb-xxl-3 {\n padding-bottom: 1em !important;\n }\n .pb-xxl-4 {\n padding-bottom: 1.5em !important;\n }\n .pb-xxl-5 {\n padding-bottom: 3em !important;\n }\n .ps-xxl-0 {\n padding-left: 0 !important;\n }\n .ps-xxl-1 {\n padding-left: 0.25em !important;\n }\n .ps-xxl-2 {\n padding-left: 0.5em !important;\n }\n .ps-xxl-3 {\n padding-left: 1em !important;\n }\n .ps-xxl-4 {\n padding-left: 1.5em !important;\n }\n .ps-xxl-5 {\n padding-left: 3em !important;\n }\n .gap-xxl-0 {\n gap: 0 !important;\n }\n .gap-xxl-1 {\n gap: 0.25em !important;\n }\n .gap-xxl-2 {\n gap: 0.5em !important;\n }\n .gap-xxl-3 {\n gap: 1em !important;\n }\n .gap-xxl-4 {\n gap: 1.5em !important;\n }\n .gap-xxl-5 {\n gap: 3em !important;\n }\n .row-gap-xxl-0 {\n row-gap: 0 !important;\n }\n .row-gap-xxl-1 {\n row-gap: 0.25em !important;\n }\n .row-gap-xxl-2 {\n row-gap: 0.5em !important;\n }\n .row-gap-xxl-3 {\n row-gap: 1em !important;\n }\n .row-gap-xxl-4 {\n row-gap: 1.5em !important;\n }\n .row-gap-xxl-5 {\n row-gap: 3em !important;\n }\n .column-gap-xxl-0 {\n column-gap: 0 !important;\n }\n .column-gap-xxl-1 {\n column-gap: 0.25em !important;\n }\n .column-gap-xxl-2 {\n column-gap: 0.5em !important;\n }\n .column-gap-xxl-3 {\n column-gap: 1em !important;\n }\n .column-gap-xxl-4 {\n column-gap: 1.5em !important;\n }\n .column-gap-xxl-5 {\n column-gap: 3em !important;\n }\n .text-xxl-start {\n text-align: left !important;\n }\n .text-xxl-end {\n text-align: right !important;\n }\n .text-xxl-center {\n text-align: center !important;\n }\n}\n@media (min-width: 1200px) {\n .fs-1 {\n font-size: 2.75em !important;\n }\n .fs-2 {\n font-size: 2.375em !important;\n }\n .fs-3 {\n font-size: 1.875em !important;\n }\n .fs-4 {\n font-size: 1.5em !important;\n }\n}\n@media print {\n .d-print-inline {\n display: inline !important;\n }\n .d-print-inline-block {\n display: inline-block !important;\n }\n .d-print-block {\n display: block !important;\n }\n .d-print-grid {\n display: grid !important;\n }\n .d-print-inline-grid {\n display: inline-grid !important;\n }\n .d-print-table {\n display: table !important;\n }\n .d-print-table-row {\n display: table-row !important;\n }\n .d-print-table-cell {\n display: table-cell !important;\n }\n .d-print-flex {\n display: flex !important;\n }\n .d-print-inline-flex {\n display: inline-flex !important;\n }\n .d-print-none {\n display: none !important;\n }\n}\n:host,\n[data-bs-theme='light'] {\n --bs-blue: #0d6efd;\n --bs-indigo: #6610f2;\n --bs-purple: #6f42c1;\n --bs-pink: #d63384;\n --bs-red: #dc3545;\n --bs-orange: #fd7e14;\n --bs-yellow: #ffc107;\n --bs-green: #198754;\n --bs-teal: #20c997;\n --bs-cyan: #0dcaf0;\n --bs-black: #000;\n --bs-white: #fff;\n --bs-gray: #6c757d;\n --bs-gray-dark: #343a40;\n --bs-gray-100: #f8f9fa;\n --bs-gray-200: #e9ecef;\n --bs-gray-300: #dee2e6;\n --bs-gray-400: #ced4da;\n --bs-gray-500: #adb5bd;\n --bs-gray-600: #6c757d;\n --bs-gray-700: #495057;\n --bs-gray-800: #343a40;\n --bs-gray-900: #212529;\n --bs-primary: #004445;\n --bs-secondary: #f2f2f2;\n --bs-success: #9fd5b3;\n --bs-info: #004445;\n --bs-warning: #feb70d;\n --bs-danger: #b3393b;\n --bs-light: #fff;\n --bs-dark: #18252a;\n --bs-accent-primary: #feb70d;\n --bs-accent-secondary: #9fd5b3;\n --bs-primary-rgb: 0, 68, 69;\n --bs-secondary-rgb: 242, 242, 242;\n --bs-success-rgb: 159, 213, 179;\n --bs-info-rgb: 0, 68, 69;\n --bs-warning-rgb: 254, 183, 13;\n --bs-danger-rgb: 179, 57, 59;\n --bs-light-rgb: 255, 255, 255;\n --bs-dark-rgb: 24, 37, 42;\n --bs-accent-primary-rgb: 254, 183, 13;\n --bs-accent-secondary-rgb: 159, 213, 179;\n --bs-primary-text-emphasis: #001b1c;\n --bs-secondary-text-emphasis: #616161;\n --bs-success-text-emphasis: #405548;\n --bs-info-text-emphasis: #001b1c;\n --bs-warning-text-emphasis: #664905;\n --bs-danger-text-emphasis: #481718;\n --bs-light-text-emphasis: #495057;\n --bs-dark-text-emphasis: #495057;\n --bs-primary-bg-subtle: #ccdada;\n --bs-secondary-bg-subtle: #fcfcfc;\n --bs-success-bg-subtle: #ecf7f0;\n --bs-info-bg-subtle: #ccdada;\n --bs-warning-bg-subtle: #fff1cf;\n --bs-danger-bg-subtle: #f0d7d8;\n --bs-light-bg-subtle: #fcfcfd;\n --bs-dark-bg-subtle: #ced4da;\n --bs-primary-border-subtle: #99b4b5;\n --bs-secondary-border-subtle: #fafafa;\n --bs-success-border-subtle: #d9eee1;\n --bs-info-border-subtle: #99b4b5;\n --bs-warning-border-subtle: #ffe29e;\n --bs-danger-border-subtle: #e1b0b1;\n --bs-light-border-subtle: #e9ecef;\n --bs-dark-border-subtle: #adb5bd;\n --bs-white-rgb: 255, 255, 255;\n --bs-black-rgb: 0, 0, 0;\n --bs-font-sans-serif: 'Montserrat', sans-serif;\n --bs-font-monospace: 'Montserrat', sans-serif;\n --bs-gradient: linear-gradient(\n 180deg,\n rgba(255, 255, 255, 0.15),\n rgba(255, 255, 255, 0)\n );\n --bs-body-font-family: var(--bs-font-sans-serif);\n --bs-body-font-size: 1em;\n --bs-body-font-weight: 400;\n --bs-body-line-height: 1.5;\n --bs-body-color: #212529;\n --bs-body-color-rgb: 33, 37, 41;\n --bs-body-bg: #fff;\n --bs-body-bg-rgb: 255, 255, 255;\n --bs-emphasis-color: #000;\n --bs-emphasis-color-rgb: 0, 0, 0;\n --bs-secondary-color: rgba(33, 37, 41, 0.75);\n --bs-secondary-color-rgb: 33, 37, 41;\n --bs-secondary-bg: #e9ecef;\n --bs-secondary-bg-rgb: 233, 236, 239;\n --bs-tertiary-color: rgba(33, 37, 41, 0.5);\n --bs-tertiary-color-rgb: 33, 37, 41;\n --bs-tertiary-bg: #f8f9fa;\n --bs-tertiary-bg-rgb: 248, 249, 250;\n --bs-link-color: #004445;\n --bs-link-color-rgb: 0, 68, 69;\n --bs-link-decoration: underline;\n --bs-link-hover-color: #003637;\n --bs-link-hover-color-rgb: 0, 54, 55;\n --bs-code-color: #d63384;\n --bs-highlight-bg: #fff3cd;\n --bs-border-width: 1px;\n --bs-border-style: solid;\n --bs-border-color: #dee2e6;\n --bs-border-color-translucent: rgba(0, 0, 0, 0.175);\n --bs-border-radius: 0.375em;\n --bs-border-radius-sm: 0.25em;\n --bs-border-radius-lg: 0.5em;\n --bs-border-radius-xl: 1em;\n --bs-border-radius-xxl: 2em;\n --bs-border-radius-2xl: var(--bs-border-radius-xxl);\n --bs-border-radius-pill: 50em;\n --bs-box-shadow: 0 0.5em 1em rgba(0, 0, 0, 0.15);\n --bs-box-shadow-sm: 0 0.125em 0.25em rgba(0, 0, 0, 0.075);\n --bs-box-shadow-lg: 0 1em 3em rgba(0, 0, 0, 0.175);\n --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);\n --bs-focus-ring-width: 0.25em;\n --bs-focus-ring-opacity: 1;\n --bs-focus-ring-color: blue;\n --bs-form-valid-color: #9fd5b3;\n --bs-form-valid-border-color: #9fd5b3;\n --bs-form-invalid-color: #b3393b;\n --bs-form-invalid-border-color: #b3393b;\n}\n\n[data-bs-theme='dark'] {\n color-scheme: dark;\n --bs-body-color: #adb5bd;\n --bs-body-color-rgb: 173, 181, 189;\n --bs-body-bg: #212529;\n --bs-body-bg-rgb: 33, 37, 41;\n --bs-emphasis-color: #fff;\n --bs-emphasis-color-rgb: 255, 255, 255;\n --bs-secondary-color: rgba(173, 181, 189, 0.75);\n --bs-secondary-color-rgb: 173, 181, 189;\n --bs-secondary-bg: #343a40;\n --bs-secondary-bg-rgb: 52, 58, 64;\n --bs-tertiary-color: rgba(173, 181, 189, 0.5);\n --bs-tertiary-color-rgb: 173, 181, 189;\n --bs-tertiary-bg: #2b3035;\n --bs-tertiary-bg-rgb: 43, 48, 53;\n --bs-primary-text-emphasis: #668f8f;\n --bs-secondary-text-emphasis: #f7f7f7;\n --bs-success-text-emphasis: #c5e6d1;\n --bs-info-text-emphasis: #668f8f;\n --bs-warning-text-emphasis: #fed46e;\n --bs-danger-text-emphasis: #d18889;\n --bs-light-text-emphasis: #f8f9fa;\n --bs-dark-text-emphasis: #dee2e6;\n --bs-primary-bg-subtle: #000e0e;\n --bs-secondary-bg-subtle: #303030;\n --bs-success-bg-subtle: #202b24;\n --bs-info-bg-subtle: #000e0e;\n --bs-warning-bg-subtle: #332503;\n --bs-danger-bg-subtle: #240b0c;\n --bs-light-bg-subtle: #343a40;\n --bs-dark-bg-subtle: #1a1d20;\n --bs-primary-border-subtle: #002929;\n --bs-secondary-border-subtle: #919191;\n --bs-success-border-subtle: #5f806b;\n --bs-info-border-subtle: #002929;\n --bs-warning-border-subtle: #986e08;\n --bs-danger-border-subtle: #6b2223;\n --bs-light-border-subtle: #495057;\n --bs-dark-border-subtle: #343a40;\n --bs-link-color: #668f8f;\n --bs-link-hover-color: #85a5a5;\n --bs-link-color-rgb: 102, 143, 143;\n --bs-link-hover-color-rgb: 133, 165, 165;\n --bs-code-color: #e685b5;\n --bs-border-color: #495057;\n --bs-border-color-translucent: rgba(255, 255, 255, 0.15);\n --bs-form-valid-color: #75b798;\n --bs-form-valid-border-color: #75b798;\n --bs-form-invalid-color: #ea868f;\n --bs-form-invalid-border-color: #ea868f;\n}\n\nh1,\n.h1,\nh2,\nh3,\nh4,\nh5,\nh6,\n.h2,\n.h3,\n.h4,\n.h5,\n.h6 {\n font-weight: 900;\n}\n\n.btn {\n --bs-btn-focus-box-shadow: 0 0 0 0.25em\n rgba(var(--bs-btn-focus-shadow-rgb), 1);\n}\n\n.btn:focus-visible {\n --bs-btn-focus-shadow-rgb: 0, 0, 255;\n}\n\n.btn-primary {\n --bs-btn-focus-shadow-rgb: 0, 0, 255;\n}\n\n.btn-secondary {\n --bs-btn-focus-shadow-rgb: 0, 0, 255;\n}\n\n.btn-success {\n --bs-btn-focus-shadow-rgb: 0, 0, 255;\n}\n\n.btn-info {\n --bs-btn-focus-shadow-rgb: 0, 0, 255;\n}\n\n.btn-warning {\n --bs-btn-focus-shadow-rgb: 0, 0, 255;\n}\n\n.btn-danger {\n --bs-btn-focus-shadow-rgb: 0, 0, 255;\n}\n\n.btn-light {\n --bs-btn-focus-shadow-rgb: 0, 0, 255;\n}\n\n.btn-dark {\n --bs-btn-focus-shadow-rgb: 0, 0, 255;\n}\n\n.btn-accent-primary {\n --bs-btn-focus-shadow-rgb: 0, 0, 255;\n}\n\n.btn-accent-secondary {\n --bs-btn-focus-shadow-rgb: 0, 0, 255;\n}\n\nb,\nstrong {\n font-weight: 700;\n}\n\n/*# sourceMappingURL=themed-bootstrap.css.map */\n";const r=document.createElement("template");r.innerHTML="\n\n";class i extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(r.content.cloneNode(!0)),this.accordionBody=document.createElement("div"),this.shadowRoot.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{this.accordionBody.append(t)}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const i=document.createElement("style");i.textContent=".accordion-body.data-li {\n border-left: 3px solid;\n border-color: var(--color-1);\n}\n",t.appendChild(n),t.appendChild(e),t.appendChild(i)}connectedCallback(){const t=this.getAttribute("data-extra-classes"),n=["accordion-body"];null!==this.getAttribute("data-li")&&n.push("data-li"),void 0!=t&&null!=t&&n.push(t),this.accordionBody.className=n.join(" "),this.shadowRoot.querySelector("div")||this.shadowRoot.appendChild(this.accordionBody)}}customElements.define("cod-accordion-body",i);const l=document.createElement("template");l.innerHTML='\n
\n \n
\n';class s extends HTMLElement{static get observedAttributes(){return["data-expanded"]}constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(l.content.cloneNode(!0));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent=".li-num-box {\n width: 3rem;\n height: 3rem;\n display: flex;\n justify-content: center;\n align-items: center;\n margin-right: 2rem;\n}\n\n.accordion-button.data-li {\n padding-right: 1rem;\n}\n",t.appendChild(n),t.appendChild(e),t.appendChild(r)}attributeChangedCallback(t,n,e){if("data-expanded"===t){const t=this.shadowRoot.querySelector("button");t.setAttribute("aria-expanded",e),t.classList.remove("collapsed"),"false"===e&&t.classList.add("collapsed")}}connectedCallback(){const t=this.shadowRoot.querySelector("button"),n=this.getAttribute("data-extra-classes");null!==this.getAttribute("data-li")&&t.classList.add("data-li"),n&&t.classList.add(...n.split(" "));const e=this.getAttribute("data-parent-id");t.setAttribute("aria-controls",e),t.setAttribute("data-bs-target","#".concat(e));"true"===this.getAttribute("data-expanded")?(t.classList.remove("collapsed"),t.setAttribute("aria-expanded","true")):(t.classList.add("collapsed"),t.setAttribute("aria-expanded","false"))}addListNumber(t,n){const e=this.shadowRoot.querySelector("button"),o=document.createElement("div");n.push("li-num-box"),o.className=n.join(" ");const a=document.createElement("slot");a.setAttribute("name","li-num-box"),o.appendChild(a),e.prepend(o);const r=document.createElement("span");r.innerText="".concat(t+1),r.setAttribute("slot","li-num-box"),this.appendChild(r)}}customElements.define("cod-accordion-header",s);const d=document.createElement("template");d.innerHTML="\n\n";class c extends HTMLElement{static get observedAttributes(){return["data-expanded"]}constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(d.content.cloneNode(!0)),this.accordionHeader=document.createElement("div"),this.accordionBody=document.createElement("div"),this.shadowRoot.addEventListener("slotchange",(t=>{t.target.assignedElements().forEach((t=>{if(t.setAttribute("data-parent-id","".concat(this.getAttribute("data-parent-id"),"-").concat(this.getAttribute("data-index"))),"true"==this.getAttribute("data-expanded")&&t.setAttribute("data-expanded",!0),"COD-ACCORDION-HEADER"==t.tagName){if(null!==this.getAttribute("data-li")){t.setAttribute("data-li","");const n=this.getHeaderListItemClasses();t.addListNumber(Number(this.getAttribute("data-index")),n)}this.accordionHeader.append(t)}else this.accordionBody.append(t)}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="",t.appendChild(n),t.appendChild(e),t.appendChild(r)}attributeChangedCallback(t,n,e){this.accordionHeader.querySelector("cod-accordion-header").setAttribute("data-expanded",e),this.accordionBody.querySelector("cod-accordion-body").setAttribute("data-expanded",e);const o=this.accordionBody.className.split(" "),a=o.pop();"show"!=a&&o.push(a),"true"==e&&o.push("show"),this.accordionBody.className=o.join(" ")}connectedCallback(){const t=this.getAttribute("data-parent-id"),n=this.getAttribute("data-index");let e=["accordion-collapse collapse"];"true"==this.getAttribute("data-expanded")&&e.push("show"),null!==this.getAttribute("data-li")&&(e=e.concat(this.getBodyListItemClasses())),this.accordionBody.id="".concat(t,"-").concat(n),this.accordionHeader.className=["accordion-header"].join(" "),this.accordionBody.className=e.join(" "),this.querySelector("cod-accordion-header")&&this.querySelector("cod-accordion-header").addEventListener("click",this._onClick),this.shadowRoot.querySelector("ul")||(this.shadowRoot.appendChild(this.accordionHeader),this.shadowRoot.appendChild(this.accordionBody))}disconnectedCallback(){this.removeEventListener("click",this._onClick.bind(this))}getListItemBackgroundColor(){const t=this.getAttribute("data-li-bg");return null!==t?t:"primary"}getListItemTextColor(){const t=this.getAttribute("data-li-text");return null!==t?t:"light"}getHeaderListItemClasses(){return["li-bg-"+this.getListItemBackgroundColor(),"text-"+this.getListItemTextColor()]}getBodyListItemClasses(){return["border-start","border-"+this.getListItemBackgroundColor()]}_onClick(t){"true"==t.target.getAttribute("data-expanded")?this.getRootNode().host.setAttribute("data-expanded","false"):this.getRootNode().host.setAttribute("data-expanded","true")}}customElements.define("cod-accordion-item",c);const b=document.createElement("template");b.innerHTML="\n\n";class m extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(b.content.cloneNode(!0)),this.alert=document.createElement("div");const n=document.createElement("div");n.id="alert-content",this.alert.appendChild(n),t.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{t.className.split(" ").includes("no-wc")?t.remove():this.alert.querySelector("#alert-content").append(t)}))}))}connectedCallback(){const t=document.createElement("style");t.textContent=a;const n=document.createElement("style");n.textContent=o;const e=document.createElement("style");e.textContent=".alert {\n font-family: var(--font-family);\n}\n",this.shadowRoot.appendChild(t),this.shadowRoot.appendChild(n),this.shadowRoot.appendChild(e);const r=this.getAttribute("data-icon"),i=this.getAttribute("data-icon-order"),l=this.getAttribute("data-icon-size"),s=this.getAttribute("data-background-color"),d=this.getAttribute("data-extra-classes");this.alert.role="alert";let c="";if(void 0!=r&&null!=r){this.alert.querySelector("#alert-content").className="col";const t=document.createElement("cod-icon");t.setAttribute("data-icon",r),t.setAttribute("data-size",l);const n=document.createElement("div");switch(n.appendChild(t),c="d-flex",i){case"left":n.className="pe-2 m-0",this.alert.insertBefore(n,this.alert.querySelector("#alert-content"));break;case"right":n.className="ps-2 m-0",this.alert.appendChild(n)}}this.alert.className=["alert","alert-".concat(s||""),"".concat(d||""),c].join(" "),this.shadowRoot.appendChild(this.alert);if(this.hasAttribute("closeable")){const t=document.createElement("cod-button");t.className="btn-close",t.addEventListener("click",(()=>this.remove())),this.alert.appendChild(t)}}}customElements.define("cod-alert",m);class p extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"})}connectedCallback(){const t=document.createElement("style");t.textContent=a;const n=document.createElement("style");n.textContent=o;const e=document.createElement("style");e.textContent=".badge {\n font-family: var(--font-family);\n}\n",this.shadowRoot.appendChild(t),this.shadowRoot.appendChild(n),this.shadowRoot.appendChild(e);const r=this.getAttribute("data-tag"),i=this.getAttribute("data-background-color"),l=this.getAttribute("data-text"),s=this.getAttribute("data-hidden-text");let d=this.getAttribute("data-pill");const c=this.getAttribute("data-url"),b=this.getAttribute("data-extra-classes");let m=null;if(d="true"==d?"rounded-pill":"",void 0!=c||null!=c?(m=document.createElement("a"),m.href=c):m=document.createElement(r),m.innerText=l,void 0!=s||null!=s){const t=document.createElement("span");t.className="visually-hidden",t.innerText=s,m.appendChild(t)}m.className=["badge","text-bg-".concat(i||""),"".concat(d||""),"".concat(b||"")].join(" "),this.shadowRoot.querySelector(r)||this.shadowRoot.appendChild(m)}}customElements.define("cod-badge",p);const g=document.createElement("template");g.innerHTML='\n\n\n';class u extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(g.content.cloneNode(!0)),this.nav=t.querySelector("nav"),this.breadcrumb=t.querySelector("ol"),t.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{if(t.className.split(" ").includes("no-wc"))t.remove();else{const t=this.querySelector("li");t&&this.breadcrumb.append(t)}}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="",t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){const t=this.getAttribute("data-no-divider"),n=this.getAttribute("data-svg-divider");"true"==t&&(this.nav.style.cssText="--bs-breadcrumb-divider: '';"),void 0==n&&null==n||(this.nav.style.cssText="--bs-breadcrumb-divider: url(".concat(n,");")),this.shadowRoot.appendChild(this.nav)}}customElements.define("cod-breadcrumb",u);class h extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"})}connectedCallback(){const t=this.getAttribute("data-close"),n=this.getAttribute("data-link"),e=this.getAttribute("data-id"),r=this.getAttribute("data-aria-label"),i=this.getAttribute("data-primary"),l=this.getAttribute("data-background-color"),s=this.getAttribute("data-shape"),d=this.getAttribute("data-icon"),c=this.getAttribute("data-icon-size"),b=this.getAttribute("data-icon-order"),m=this.getAttribute("data-hidden-label"),p=this.getAttribute("data-img"),g=this.getAttribute("data-img-alt"),u=this.getAttribute("data-size"),h=this.getAttribute("data-extra-classes"),f=this.getAttribute("data-label"),x=this.getAttribute("data-disable"),v=document.createElement("button"),y=["btn"];if(v.type="button",e&&(v.id=e),v.disabled="true"===x,v.setAttribute("aria-label","".concat(r||"")),"true"===i?y.push("btn-".concat(l)):"false"===i&&y.push("btn-outline-".concat(l)),"square"===s?y.push("cod-button--square"):y.push("cod-button-fluid"),null!==u&&y.push("btn-".concat(u)),null!==h&&y.push(h),g?y.push("cod-button--img"):y.push("cod-button--not-img"),"true"===t&&y.push("btn-close"),v.className=y.join(" "),d){const t=document.createElement("span"),n=document.createElement("cod-icon");n.setAttribute("data-icon",d),n.setAttribute("data-size",c),t.appendChild(n),v.innerText=f,"left"===b?v.insertBefore(t,v.firstChild):v.appendChild(t)}else if(g){v.innerText=f;const t=document.createElement("img");t.src=p,t.setAttribute("alt",g),v.appendChild(t)}else v.innerText=f;if(null!==m){const t=document.createElement("span");t.className="visually-hidden",t.innerText=m,v.appendChild(t)}if(!this.shadowRoot.querySelector("button")){const t=document.createElement("style");t.textContent=a,this.shadowRoot.appendChild(t);const e=document.createElement("style");e.textContent=o,this.shadowRoot.appendChild(e);const r=document.createElement("style");if(r.textContent=".btn {\n font-family: var(--font-family);\n border-radius: 0;\n}\n\n.cod-button--xsmall.cod-button--fluid {\n font-size: 0.85em;\n padding: 0.25em;\n}\n\n.cod-button--small.cod-button--fluid {\n font-size: 1em;\n padding: 0.8em 1.1em;\n}\n\n.cod-button--medium.cod-button--fluid {\n font-size: 1.1em;\n padding: 0.75em 1.25em;\n}\n\n.cod-button--large.cod-button--fluid {\n font-size: 1.2em;\n padding: 1em 2em;\n}\n\n.btn.cod-button--square {\n font-size: 1.1em;\n height: 2.5em;\n width: 2.5em;\n}\n\n.btn.cod-button--square.close {\n --bs-btn-close-bg: url(\n data:image/svg + xml,\n %3csvgxmlns='http://www.w3.org/2000/svg'viewBox='0 0 16 16'fill='%23000'%3e%3cpathd='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e\n );\n background: transparent var(--bs-btn-close-bg) center/1em auto no-repeat;\n}\n\n.btn-sm.cod-button--square {\n font-size: 1em;\n height: 2em;\n width: 2em;\n}\n\n.btn-lg.cod-button--square {\n font-size: 1.2em;\n height: 3em;\n width: 3em;\n}\n\n.cod-button--img {\n display: flex;\n}\n\n.cod-button--square.cod-button--img {\n padding: 1px 6px;\n}\n\n.cod-button--img img {\n height: 1em;\n margin-left: 0.5em;\n position: relative;\n top: 0.1em;\n}\n\n.cod-button--square.cod-button--img img {\n height: auto;\n max-width: 100%;\n margin: auto;\n top: 0;\n}\n\ncod-icon {\n position: relative;\n top: 0.1em;\n margin: 0 0.5em;\n}\n\n.icon-center span cod-icon {\n top: 0.2em;\n right: 0.1em;\n margin: 0;\n}\n",this.shadowRoot.appendChild(r),n){const t=document.createElement("a");t.href=n,t.appendChild(v),this.shadowRoot.appendChild(t)}else{this.shadowRoot.appendChild(v);const t=this.appendChild(document.createElement("button"));this.onclick=()=>t.click()}}}}customElements.define("cod-button",h);const f=document.createElement("template");f.innerHTML="\n\n";class x extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(f.content.cloneNode(!0)),this.cardBody=document.createElement("div"),t.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{this.cardBody.append(t)}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="div {\n font-family: var(--font-family);\n}\n",t.appendChild(n),t.appendChild(e),t.appendChild(r),t.appendChild(this.cardBody)}}customElements.define("cod-card-body",x);const v=document.createElement("template");v.innerHTML="\n\n";class y extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(v.content.cloneNode(!0)),this.cardFooter=document.createElement("div"),t.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{this.cardFooter.append(t)}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="div {\n font-family: var(--font-family);\n}\n",t.appendChild(n),t.appendChild(e),t.appendChild(r),t.appendChild(this.cardFooter)}}customElements.define("cod-card-footer",y);const w=document.createElement("template");w.innerHTML="\n\n";class k extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(w.content.cloneNode(!0)),this.cardHeader=document.createElement("div"),t.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{this.cardHeader.append(t)}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="div {\n font-family: var(--font-family);\n}\n",t.appendChild(n),t.appendChild(e),t.appendChild(r),t.appendChild(this.cardHeader)}}customElements.define("cod-card-header",k);const C=document.createElement("template");C.innerHTML="\n\n";class z extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(C.content.cloneNode(!0)),this.cardOverlay=document.createElement("div"),t.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{this.cardOverlay.append(t)}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="div {\n font-family: var(--font-family);\n}\n",t.appendChild(n),t.appendChild(e),t.appendChild(r),t.appendChild(this.cardOverlay)}}customElements.define("cod-card-overlay",z);const A=document.createElement("template");A.innerHTML="\n\n";class E extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(A.content.cloneNode(!0)),this.carouselCaption=document.createElement("div"),t.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{this.carouselCaption.append(t)}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="",t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){const t=this.getAttribute("data-extra-classes"),n=["carousel-caption d-none d-md-block"];void 0!=t&&null!=t&&n.push(t),this.carouselCaption.className=n.join(" "),this.shadowRoot.querySelector("div")||this.shadowRoot.appendChild(this.carouselCaption)}}customElements.define("cod-carousel-caption",E);const L=document.createElement("template");L.innerHTML="\n\n";class _ extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(L.content.cloneNode(!0)),this.carouselItem=document.createElement("div"),t.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{this.carouselItem.append(t)}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="",t.appendChild(n),t.appendChild(e),t.appendChild(r),t.appendChild(this.carouselItem)}}customElements.define("cod-carousel-item",_);const R=document.createElement("template");R.innerHTML="\n\n";class B extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(R.content.cloneNode(!0)),this.container=document.createElement("div"),t.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{this.container.append(t)}))}))}connectedCallback(){const t=document.createElement("style");t.textContent=a;const n=document.createElement("style");n.textContent=o;const e=document.createElement("style");e.textContent=".container.color-1,\n.container-fluid.color-1,\n.container-xxl.color-1,\n.container-xl.color-1,\n.container-lg.color-1,\n.container-md.color-1,\n.container-sm.color-1 {\n background-color: var(--color-1);\n color: var(--color-light);\n}\n\n.container.color-2,\n.container-fluid.color-2,\n.container-xxl.color-2,\n.container-xl.color-2,\n.container-lg.color-2,\n.container-md.color-2,\n.container-sm.color-2 {\n background-color: var(--color-2);\n color: var(--color-1);\n}\n\n.container.color-3,\n.container-fluid.color-3,\n.container-xxl.color-3,\n.container-xl.color-3,\n.container-lg.color-3,\n.container-md.color-3,\n.container-sm.color-3 {\n background-color: var(--color-3);\n color: var(--color-dark);\n}\n\n.container.color-4,\n.container-fluid.color-4,\n.container-xxl.color-4,\n.container-xl.color-4,\n.container-lg.color-4,\n.container-md.color-4,\n.container-sm.color-4 {\n background-color: var(--color-4);\n color: var(--color-light);\n}\n\n.container.color-5,\n.container-fluid.color-5,\n.container-xxl.color-5,\n.container-xl.color-5,\n.container-lg.color-5,\n.container-md.color-5,\n.container-sm.color-5 {\n background-color: var(--color-5);\n color: var(--color-dark);\n}\n\n.container.color-light,\n.container-fluid.color-light,\n.container-xxl.color-light,\n.container-xl.color-light,\n.container-lg.color-light,\n.container-md.color-light,\n.container-sm.color-light {\n background-color: var(--color-light);\n color: var(--color-dark);\n}\n\n.container.color-dark,\n.container-fluid.color-dark,\n.container-xxl.color-dark,\n.container-xl.color-dark,\n.container-lg.color-dark,\n.container-md.color-dark,\n.container-sm.color-dark {\n background-color: var(--color-dark);\n color: var(--color-light);\n}\n",this.shadowRoot.appendChild(t),this.shadowRoot.appendChild(n),this.shadowRoot.appendChild(e);const r=this.getAttribute("data-type"),i=this.getAttribute("data-text"),l=this.getAttribute("data-background-color"),s=this.getAttribute("data-extra-classes");this.container.className=[r,"".concat(l||""),"".concat(s||"")].join(" "),this.container.innerText=i,this.shadowRoot.appendChild(this.container)}}customElements.define("cod-container",B);const M=document.createElement("template");M.innerHTML="\n\n";class S extends HTMLElement{static get observedAttributes(){return["ends","size","text"]}constructor(){super(),this.countdownInterval=this.initialiseClock.bind(this);this.attachShadow({mode:"open"}).appendChild(M.content.cloneNode(!0))}connectedCallback(){this.render()}attributeChangedCallback(t,n,e){e!==n&&(this[t]=e,"ends"!==t&&this.render())}render(){const{ends:t}=this,n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="time {\n display: flex;\n}\n\n.item {\n padding: 0.25em 0.5em;\n}\n\n.number,\n.unit {\n display: block;\n}\n\n.number.sm {\n font-size: 1rem;\n}\n\n.number.md {\n font-size: 2rem;\n}\n\n.number.lg {\n font-size: 3rem;\n}\n\n.unit.sm {\n font-size: 0.33rem;\n}\n\n.unit.md {\n font-size: 0.66rem;\n}\n\n.unit.lg {\n font-size: 1rem;\n}\n\n.unit,\n.number {\n text-align: center;\n}\n",this.shadowRoot.appendChild(n),this.shadowRoot.appendChild(e),this.shadowRoot.appendChild(r),this.initialiseClock(t)}get ends(){return this.getAttribute("ends")}get size(){return this.getAttribute("size")}get text(){return this.getAttribute("text")}set ends(t){this.setAttribute("ends",t),this.initialiseClock(t)}set size(t){this.setAttribute("size",t)}set text(t){this.setAttribute("text",t)}_createCountdownItem(t,n,e,o){const a=document.createElement("span");a.className="item";const r=document.createElement("span");r.className="number ".concat(t," ").concat(e," text-").concat(o),r.textContent=n;const i=document.createElement("span");return i.className="unit ".concat(e," text-").concat(o),i.textContent=t,a.appendChild(r),a.appendChild(i),a}_getTimeRemaining(t){const n=Date.parse(t)-Date.parse(new Date),e=Math.floor(n/1e3%60),o=Math.floor(n/1e3/60%60),a=Math.floor(n/36e5%24);return{total:n,days:Math.floor(n/864e5),hours:a,minutes:o,seconds:e}}initialiseClock(t){const{shadowRoot:n,_createCountdownItem:e,_getTimeRemaining:o,size:a,text:r}=this,i=o(t),l=Object.keys(i),s=n.querySelector("time");let d;function c(t){const e=t.ends,a=o(e),r=n.querySelector(".days"),i=n.querySelector(".hours"),l=n.querySelector(".minutes"),c=n.querySelector(".seconds");r.textContent=a.days,i.textContent=a.hours,l.textContent=a.minutes,c.textContent=a.seconds,s.setAttribute("datetime","P".concat(a.days,"DT").concat(a.hours,"H").concat(a.minutes,"M").concat(a.seconds,"S")),a.total<=0&&clearInterval(d)}s.innerHTML="",l.forEach((t=>{"total"!==t&&s.appendChild(e(t,i[t],a,r))})),function t(e){null===n.querySelector(".days")?window.requestAnimationFrame(t):(c(e),d=setInterval((()=>{c(e)}),1e3))}(this)}}customElements.define("cod-countdown",S);const H=document.createElement("template");H.innerHTML="\n\n";class V extends HTMLElement{static get observedAttributes(){return["data-show"]}constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(H.content.cloneNode(!0)),this.dropdownMenu=document.createElement("ul"),this.shadowRoot.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{this.dropdownMenu.append(t)}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="",t.appendChild(n),t.appendChild(e),t.appendChild(r)}attributeChangedCallback(t,n,e){const o=this.dropdownMenu.className.split(" "),a=o.pop();"show"!=a&&o.push(a),"true"==e&&o.push("show"),this.dropdownMenu.className=o.join(" ")}connectedCallback(){const t=this.getAttribute("data-dark-mode"),n=this.getAttribute("data-alignment"),e=this.getAttribute("data-show"),o=["dropdown-menu"];"true"==t&&o.push("dropdown-menu-dark"),void 0!=n&&null!=n&&o.push("dropdown-menu-".concat(n)),"true"==e&&o.push("show"),this.dropdownMenu.className=o.join(" "),this.shadowRoot.querySelector("ul")||this.shadowRoot.appendChild(this.dropdownMenu)}}customElements.define("cod-dropdown-menu",V);var j=e(572);class N extends HTMLElement{static get observedAttributes(){return["data-invalid","data-checked","data-required"]}constructor(){super(),this.attachShadow({mode:"open"}),this.internals=this.attachInternals(),this.container=document.createElement("div"),this.formCheck=document.createElement("input"),this.formCheckLabel=null,this.invalid=!1,this.pristine=!0}attributeChangedCallback(t,n,e){const o=this.formCheck.className.split(" "),a=o.pop();switch("is-invalid"!=a&&o.push(a),e){case"true":switch(t){case"data-invalid":o.push("is-invalid"),this.formCheck.className=o.join(" ");break;case"data-checked":this.formCheck.checked=!0,this.formCheck.setAttribute("aria-checked","true");break;case"data-required":this.formCheck.required=!0,this.validateInput()}break;case"false":switch(t){case"data-invalid":this.formCheck.className=o.join(" ");break;case"data-checked":this.formCheck.checked=!1,this.formCheck.setAttribute("aria-checked","false");break;case"data-required":this.formCheck.required=!1,this.validateInput()}}}connectedCallback(){const t=this.getAttribute("data-type"),n=this.getAttribute("data-id"),e=this.getAttribute("data-value"),r=this.getAttribute("data-name"),i=this.getAttribute("data-disabled"),l=this.getAttribute("data-required"),s=this.getAttribute("data-checked");let d=this.getAttribute("data-mode");const c=this.getAttribute("data-nolabel"),b=this.getAttribute("data-label"),m=this.getAttribute("data-extra-classes"),p=this.getAttribute("data-background-color"),g=this.getAttribute("data-btn-color");if(this.formCheck.id=n,this.formCheck.type=t,this.formCheck.value=e,this.formCheck.name=r,this.formCheck.setAttribute("autocomplete","off"),"true"==l&&this.formCheck.setAttribute("required",!0),"true"==s?(this.formCheck.checked=!0,this.formCheck.setAttribute("aria-checked","true")):this.formCheck.setAttribute("aria-checked","false"),"true"==i&&this.formCheck.setAttribute("disabled",!0),"switch"==d&&this.formCheck.setAttribute("role",d),"btn"==d||"btn-outline"==d?(this.formCheck.className="btn-check",d=null):this.formCheck.className="form-check-input",!this.shadowRoot.querySelector("div")){const t=document.createElement("style");t.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");if(r.textContent="",this.shadowRoot.appendChild(t),this.shadowRoot.appendChild(e),this.shadowRoot.appendChild(r),this.container.className=["form-check","form-".concat(d||""),"bg-".concat(p||""),"".concat(m||"")].join(" "),this.container.appendChild(this.formCheck),"true"!=c){const t=document.createElement("label");t.setAttribute("for",n),t.innerText=b,"btn"!=this.getAttribute("data-mode")&&"btn-outline"!=this.getAttribute("data-mode")||(t.className="btn ".concat(this.getAttribute("data-mode"),"-").concat(g)),this.container.appendChild(t)}this.shadowRoot.appendChild(this.container)}this.formCheck.addEventListener("change",(t=>{this.setAttribute("data-invalid",!1);const n=new t.constructor(t.type,t);this.dispatchEvent(n),this.validateInput()})),this.addEventListener("invalid",(t=>{this.invalid=!0,this.pristine=!1,this.setAttribute("data-invalid",!0),this.customErrorDisplay&&t.preventDefault()})),this.addEventListener("focus",(()=>this.formCheck.focus())),this.hasAttribute("tabindex")||this.setAttribute("tabindex",-1),this.validateInput()}get validity(){return this.internals.validity}get validationMessage(){return this.internals.validationMessage}get willValidate(){return this.internals.willValidate}checkValidity(){return this.internals.checkValidity()}reportValidity(){return this.internals.reportValidity()}validateInput(){const t=this.formCheck.validity;if(this.invalid=!1,t.valid)this.internals.setValidity({}),this.setAttribute("data-invalid",!1);else for(const n in t){const e="data-".concat(n.toString());if(t[n]){this.validationError=n.toString(),this.invalid=!this.pristine&&!t.valid;const o=this.hasAttribute(e)?this.getAttribute(e):this.formCheck.validationMessage;this.internals.setValidity({[this.validationError]:!0},o),this.invalid&&this.customErrorDisplay&&this.dispatchEvent(new Event("invalid"))}}}}(0,j.Z)(N,"formAssociated",!0),customElements.define("cod-form-check",N);class T extends HTMLElement{static get observedAttributes(){return["data-invalid"]}constructor(){super(),this.attachShadow({mode:"open"}),this.internals=this.attachInternals(),this.formControl=null,this.invalid=!1,this.pristine=!0}attributeChangedCallback(t,n,e){const o=this.formControl.className.split(" "),a=o.pop();switch("is-invalid"!=a&&o.push(a),e){case"true":o.push("is-invalid"),this.formControl.className=o.join(" ");break;case"false":this.formControl.className=o.join(" ")}}connectedCallback(){const t=this.getAttribute("data-tag"),n=this.getAttribute("data-type"),e=this.getAttribute("data-id"),r=this.getAttribute("data-minlength"),i=this.getAttribute("data-maxlength"),l=this.getAttribute("data-pattern"),s=this.getAttribute("data-placeholder-txt"),d=this.getAttribute("data-read-only"),c=this.getAttribute("data-disabled"),b=this.getAttribute("data-plain-txt"),m=this.getAttribute("data-required"),p=this.getAttribute("data-rows"),g=this.getAttribute("data-size"),u=this.getAttribute("data-value"),h=this.getAttribute("data-background-color"),f=document.createElement(t);let x;if(f.id=e,f.placeholder=s,"true"==m&&f.setAttribute("required",!0),"textarea"!=t&&(f.type=n),void 0!=r&&null!=r&&f.setAttribute("minlength",r),void 0!=i&&null!=i&&f.setAttribute("maxlength",i),void 0!=l&&null!=l&&f.setAttribute("pattern",l),void 0!=p&&null!=p&&f.setAttribute("rows",p),void 0!=u&&null!=u&&(f.value=u),"true"==d&&f.setAttribute("readonly",!0),"true"==c&&f.setAttribute("disabled",!0),x="color"==n?n:"",f.className=["form-control","form-control-".concat(g||""),"form-control-".concat(x||""),"bg-".concat(h||""),"form-control-".concat(b||"")].join(" "),f.addEventListener("change",(t=>{this.setAttribute("data-invalid",!1);const n=new t.constructor(t.type,t);this.dispatchEvent(n),this.validateInput()})),this.addEventListener("invalid",(t=>{this.invalid=!0,this.pristine=!1,this.setAttribute("data-invalid",!0),this.customErrorDisplay&&t.preventDefault()})),this.addEventListener("focus",(()=>f.focus())),this.hasAttribute("tabindex")||this.setAttribute("tabindex","0"),!this.shadowRoot.querySelector(t)){const t=document.createElement("style");t.textContent=a;const n=document.createElement("style");n.textContent=o;const e=document.createElement("style");e.textContent=".form-control {\n border-radius: 0;\n}\n",this.shadowRoot.appendChild(t),this.shadowRoot.appendChild(n),this.shadowRoot.appendChild(e),this.shadowRoot.appendChild(f),this.formControl=f}this.validateInput()}get validity(){return this.internals.validity}get validationMessage(){return this.internals.validationMessage}get willValidate(){return this.internals.willValidate}checkValidity(){return this.internals.checkValidity()}reportValidity(){return this.internals.reportValidity()}validateInput(){const t=this.formControl.validity;if(this.invalid=!1,t.valid)this.internals.setValidity({});else for(const n in t){const e="data-".concat(n.toString());if(t[n]){this.validationError=n.toString(),this.invalid=!this.pristine&&!t.valid;const o=this.hasAttribute(e)?this.getAttribute(e):this.formControl.validationMessage;this.internals.setValidity({[this.validationError]:!0},o),this.invalid&&this.customErrorDisplay&&this.dispatchEvent(new Event("invalid"))}}}}(0,j.Z)(T,"formAssociated",!0),customElements.define("cod-form-control",T);class F extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"})}connectedCallback(){const t=this.getAttribute("data-input-id");let n=this.getAttribute("data-hidden");const e=this.getAttribute("data-color");let r=this.getAttribute("data-required");const i=this.getAttribute("data-text"),l=this.getAttribute("data-extra-classes");n="true"==n?"visually-hidden":"","true"==r&&(r="required-field");const s=document.createElement("label");if(s.innerText=i,s.setAttribute("for",t),s.className=["form-label",n,r,"".concat(l||""),"text-".concat(e||"")].join(" "),!this.shadowRoot.querySelector("label")){const t=document.createElement("style");t.textContent=a;const n=document.createElement("style");n.textContent=o;const e=document.createElement("style");e.textContent="label.required-field:after {\n color: var(--bs-danger);\n content: ' *';\n}\n",this.shadowRoot.appendChild(t),this.shadowRoot.appendChild(n),this.shadowRoot.appendChild(e),this.shadowRoot.appendChild(s)}}}customElements.define("cod-form-label",F);const D=document.createElement("template");D.innerHTML="\n \n \n";class P extends HTMLElement{static get observedAttributes(){return["data-invalid"]}constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(D.content.cloneNode(!0)),this.internals=this.attachInternals(),this.select=t.querySelector("select"),t.addEventListener("slotchange",(()=>{const t=this.querySelector("option");t&&this.select.append(t)}))}attributeChangedCallback(t,n,e){const o=this.select.className.split(" "),a=o.pop();switch("is-invalid"!=a&&o.push(a),e){case"true":o.push("is-invalid"),this.select.className=o.join(" ");break;case"false":this.select.className=o.join(" ")}}connectedCallback(){const t=document.createElement("style");t.textContent=a;const n=document.createElement("style");n.textContent=o;const e=document.createElement("style");e.textContent=".form-select {\n border-radius: 0;\n}\n",this.shadowRoot.appendChild(t),this.shadowRoot.appendChild(n),this.shadowRoot.appendChild(e);const r=this.getAttribute("data-id"),i=this.getAttribute("data-size"),l=this.getAttribute("data-multiple"),s=this.getAttribute("data-display-multiple"),d=this.getAttribute("data-disabled"),c=this.getAttribute("data-required"),b=this.getAttribute("data-aria-label"),m=this.getAttribute("data-extra-classes");this.select.addEventListener("change",(t=>{this.setAttribute("data-invalid",!1);const n=new t.constructor(t.type,t);this.dispatchEvent(n),this.validateSelect()})),this.addEventListener("invalid",(t=>{this.invalid=!0,this.pristine=!1,this.setAttribute("data-invalid",!0),this.customErrorDisplay&&t.preventDefault()})),this.addEventListener("focus",(()=>this.select.focus())),this.hasAttribute("tabindex")||this.setAttribute("tabindex","0"),"true"==c&&this.select.setAttribute("required",!0),"true"==d&&this.select.setAttribute("disabled",!0),"true"==l&&this.select.setAttribute("multiple",!0),void 0!=s&&null!=s&&this.select.setAttribute("size",s),this.select.setAttribute("aria-label",b),this.select.id=r,this.select.className=["form-select","".concat(m||""),"form-select-".concat(i||"")].join(" "),this.validateSelect()}get validity(){return this.internals.validity}get validationMessage(){return this.internals.validationMessage}get willValidate(){return this.internals.willValidate}checkValidity(){return this.internals.checkValidity()}reportValidity(){return this.internals.reportValidity()}validateSelect(){const t=this.select.validity;if(this.invalid=!1,t.valid)this.internals.setValidity({});else for(const n in t){const e="data-".concat(n.toString());if(t[n]){this.validationError=n.toString(),this.invalid=!this.pristine&&!t.valid;const o=this.hasAttribute(e)?this.getAttribute(e):this.select.validationMessage;this.internals.setValidity({[this.validationError]:!0},o),this.invalid&&this.customErrorDisplay&&this.dispatchEvent(new Event("invalid"))}}}}(0,j.Z)(P,"formAssociated",!0),customElements.define("cod-form-select",P);class I extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"}),n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="/* Highlighted styles */\n.icon-container.highlighted {\n background-image: url('data:image/svg+xml,%3Csvg%20viewBox%3D%220%200%2049%2019%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cellipse%20cx%3D%2224.5%22%20cy%3D%229.5%22%20rx%3D%2224.5%22%20ry%3D%229.5%22%20fill%3D%22%239FD5B3%22%2F%3E%3C%2Fsvg%3E');\n background-repeat: no-repeat;\n background-position-y: bottom;\n background-size: 100% auto;\n padding-bottom: 0.9%;\n}\n",t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){if(this.isIconConnected())return;const t=document.createElement("div");t.classList.add("icon-container","d-inline-block");const n=this.getAttribute("data-icon");let e=this.getAttribute("data-size");switch(e){case"small":e="16";break;case"medium":default:e="24";break;case"large":e="36";break;case"x-large":e="54"}const o=document.createElement("span");o.innerHTML=this.getIcon(n,e),t.appendChild(o);this.hasAttribute("is-highlighted")&&t.classList.add("highlighted"),this.shadowRoot.appendChild(t)}isIconConnected(){return null!==this.shadowRoot.querySelector("span")}getIcon(t,n){switch(t){case"bicycle":return'\n \n \n ');case"bounding-box":return'\n \n \n ');case"bounding-box-circle":return'\n \n \n ');case"bus-front":return'\n \n \n \n ');case"bus-front-fill":return'\n \n \n ');case"cash":return'\n \n \n \n ');case"chevron-right":return'\n \n \n ');case"chevron-right-circle":return'\n \n \n \n \n \n \n ');case"chevron-right-circle-fill":return'\n \n \n \n \n \n \n ');case"chevron-left":return'\n \n \n ');case"chevron-left-circle":return'\n \n \n \n \n \n \n ');case"chevron-left-circle-fill":return'\n \n \n \n \n \n \n ');case"chevron-up":return'\n \n \n ');case"chevron-up-circle":return'\n \n \n \n \n \n \n ');case"chevron-up-circle-fill":return'\n \n \n \n \n \n \n ');case"chevron-down":return'\n \n \n ');case"chevron-down-circle":return'\n \n \n \n \n \n \n ');case"chevron-down-circle-fill":return'\n \n \n \n \n \n \n ');case"house":return'\n \n \n ');case"house-fill":return'\n \n \n \n ');case"exclamation-circle":return'\n \n \n \n ');case"exclamation-circle-fill":return'\n \n \n ');case"exclamation-triangle":return'\n \n \n \n ');case"funnel":return'\n \n \n ');case"funnel-fill":return'\n \n \n ');case"check-circle":return'\n \n \n \n ');case"check-circle-fill":return'\n \n \n ');case"calendar":return'\n \n \n ');case"calendar-fill":return'\n \n \n ');case"calendar-date":return'\n \n \n \n ');case"calendar-date-fill":return'\n \n \n \n ');case"newspaper":return'\n \n \n \n ');case"building":return'\n \n \n \n ');case"building-fill":return'\n \n \n ');case"buildings":return'\n \n \n \n ');case"buildings-fill":return'\n \n \n ');case"currency-dollar":return'\n \n \n ');case"file-earmark":return'\n \n ');case"list-task":return'\n \n \n \n ');case"journals":return'\n \n \n ');case"p-circle":return'\n \n \n ');case"p-circle-fill":return'\n \n \n ');case"no-parking":return'\n \n \n ');case"no-parking-fill":return'\n \n \n \n ');case"toilet":return'\n \n \n ');case"universal-access":return'\n \n \n ');case"universal-access-circle":return'\n \n \n \n ');case"wifi":return'\n \n \n \n ');case"wifi-off":return'\n \n \n ')}}}customElements.define("cod-icon",I);const q=document.createElement("template");q.innerHTML="\n \n \n";class W extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(q.content.cloneNode(!0)),this.picture=t.querySelector("picture"),t.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{this.picture.append(t)}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="",this.shadowRoot.appendChild(n),this.shadowRoot.appendChild(e),this.shadowRoot.appendChild(r)}}customElements.define("cod-image",W);const Z=document.createElement("template");Z.innerHTML='\n
\n
\n
\n \n
\n';class G extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(Z.content.cloneNode(!0));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent=":host {\n display: block;\n height: 100%;\n width: 100%;\n}\n\n:host *:not(style) {\n display: block;\n height: 100%;\n width: 100%;\n}\n\na {\n display: block;\n height: 100%;\n width: 100%;\n}\n",t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){const t=this.getAttribute("icon"),n=this.getAttribute("outline-color"),e=document.createElement("cod-legacy-icon");e.setAttribute("icon",t),n&&e.setAttribute("outline-color",n);this.shadowRoot.querySelector(".icon-container").appendChild(e);const o=this.shadowRoot.querySelector(".btn-container"),a=this.getAttribute("href"),r=this.getAttribute("target"),i=document.createElement("a");i.href=a,i.target=r,i.appendChild(o),this.shadowRoot.appendChild(i)}_getIconInnerHTML(t){switch(t){case"neighborhoods":return'\n \n \n \n ';case"housing":return'\n \n \n \n ';case"people":return'\n \n \n \n \n ';case"sustainability":return'\n \n \n \n ';case"safety":return'\n \n \n \n ';case"commerce":return'\n \n \n \n \n ';default:return""}}}(0,j.Z)(G,"observedAttributes",[]),customElements.define("cod-legacy-button",G);const O=document.createElement("template");O.innerHTML='\n
\n
\n
\n
\n
\n';class U extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(O.content.cloneNode(!0));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent=":host {\n display: block;\n height: 100%;\n width: 100%;\n}\n\n:host *:not(style) {\n display: block;\n height: 100%;\n width: 100%;\n}\n\n.icon-container {\n position: relative;\n}\n\n.ellipse-shadow {\n position: absolute;\n bottom: 5%;\n left: 5%;\n width: 100%;\n height: 100%;\n z-index: -1;\n}\n\n.icon {\n position: absolute;\n bottom: 0;\n left: 0;\n right: 0;\n top: 0;\n margin: auto;\n width: 100%;\n height: 100%;\n z-index: 1;\n display: flex;\n align-items: center;\n}\n\n.outline svg {\n height: 100%;\n width: 100%;\n}\n\n.ellipse svg {\n height: 100%;\n width: 100%;\n}\n\n.icon svg {\n display: block;\n margin: auto;\n width: 50%;\n height: 50%;\n}\n",t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){const t=this.getAttribute("outline-color");this.shadowRoot.querySelector(".outline").innerHTML='\n \n \n \n ');this.shadowRoot.querySelector(".ellipse-shadow").innerHTML='\n \n \n \n ';this.shadowRoot.querySelector(".icon").innerHTML=this._getIconInnerHTML(this.getAttribute("icon"))}_getIconInnerHTML(t){switch(t){case"neighborhoods":return'\n \n \n \n ';case"housing":return'\n \n \n \n ';case"people":return'\n \n \n \n \n ';case"sustainability":return'\n \n \n \n ';case"safety":return'\n \n \n \n ';case"commerce":return'\n \n \n \n \n ';default:return""}}}(0,j.Z)(U,"observedAttributes",[]),customElements.define("cod-legacy-icon",U);const Y=document.createElement("template");Y.innerHTML="\n\n";class X extends HTMLElement{static get observedAttributes(){return["data-order","data-parent-classes","data-order-index"]}constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(Y.content.cloneNode(!0)),this.listGroupItem=null;const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent=".list-group-item.first {\n border-top-left-radius: inherit;\n border-top-right-radius: inherit;\n}\n\n.list-group-flush.list-group-item {\n border-width: 0 0 var(--bs-list-group-border-width);\n}\n\n.list-group-flush.list-group-item.last {\n border-bottom-width: 0;\n}\n",t.appendChild(n),t.appendChild(e),t.appendChild(r)}attributeChangedCallback(t,n,e){switch(t){case"data-order":case"data-parent-classes":null!=e&&(this.listGroupItem.className="".concat(this.listGroupItem.className," ").concat(e));break;case"data-order-index":if(null!=e){this.listGroupItem.innerHTML="".concat(e,". ").concat(this.listGroupItem.innerHTML);Array.from(this.children).forEach((t=>{this.listGroupItem.append(t)}))}}}connectedCallback(){const t=this.getAttribute("data-tag"),n=this.getAttribute("data-background-color");let e=this.getAttribute("data-current"),o=this.getAttribute("data-disabled");const a=this.getAttribute("data-text"),r=this.getAttribute("data-extra-classes"),i=this.getAttribute("data-url");this.listGroupItem=document.createElement(t);let l="";("a"==t||"button"==t)&&(l="list-group-item-action"),void 0==a&&null==a||(this.listGroupItem.innerText=a),void 0==i&&null==i||(this.listGroupItem.href=i),"true"==e&&(this.listGroupItem.setAttribute("aria-current","true"),e="active"),"true"==o&&(this.listGroupItem.setAttribute("aria-disabled","true"),o="disabled"),this.listGroupItem.className=["list-group-item","list-group-item-".concat(n||""),"".concat(e||""),"".concat(o||""),"".concat(l||""),"".concat(r||"")].join(" "),this.shadowRoot.querySelector(t)||(this.shadowRoot.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{this.listGroupItem.append(t)}))})),this.shadowRoot.appendChild(this.listGroupItem))}}customElements.define("cod-listgroup-item",X);class J extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"})}connectedCallback(){const t=document.createElement("style");t.textContent=o,this.shadowRoot.appendChild(t);const n=document.createElement("style");n.textContent=".loader-box {\n display: flex;\n width: 100%;\n height: 100%;\n background-color: rgba(255, 255, 255, 0.75);\n position: absolute;\n left: -0.2em;\n top: -0.2em;\n}\n\n.cod-loader-container {\n display: flex;\n margin: auto;\n}\n\n.cod-loader-container article {\n margin: auto;\n}\n\n.cod-loader-container article p {\n text-align: center;\n font-family: var(--font-family);\n margin-left: 0.5em;\n}\n\n.cod-loader-bars {\n position: relative;\n width: 75px;\n height: 100px;\n}\n\n.cod-loader.cod-loader--color-1\n .cod-loader-container\n article\n .cod-loader-bars\n .cod-loader__bar {\n background: var(--color-1);\n}\n\n.cod-loader.cod-loader--color-2\n .cod-loader-container\n article\n .cod-loader-bars\n .cod-loader__bar {\n background: var(--color-2);\n}\n\n.cod-loader.cod-loader--color-3\n .cod-loader-container\n article\n .cod-loader-bars\n .cod-loader__bar {\n background: var(--color-3);\n}\n\n.cod-loader.cod-loader--color-4\n .cod-loader-container\n article\n .cod-loader-bars\n .cod-loader__bar {\n background: var(--color-4);\n}\n\n.cod-loader.cod-loader--color-5\n .cod-loader-container\n article\n .cod-loader-bars\n .cod-loader__bar {\n background: var(--color-5);\n}\n\n.cod-loader__bar {\n position: absolute;\n bottom: 0;\n width: 10px;\n height: 50%;\n transform-origin: center bottom;\n box-shadow: 1px 1px 0 rgba(0, 0, 0, 0.2);\n}\n\n.cod-loader__bar:nth-child(1) {\n left: 0px;\n transform: scale(1, 0.2);\n animation: barUp1 4s infinite;\n}\n\n.cod-loader__bar:nth-child(2) {\n left: 20px;\n transform: scale(1, 0.4);\n animation: barUp2 4s infinite;\n}\n\n.cod-loader__bar:nth-child(3) {\n left: 40px;\n transform: scale(1, 0.6);\n animation: barUp3 4s infinite;\n}\n\n.cod-loader__bar:nth-child(4) {\n left: 60px;\n transform: scale(1, 0.8);\n animation: barUp4 4s infinite;\n}\n\n.cod-loader__bar:nth-child(5) {\n left: 80px;\n transform: scale(1, 1);\n animation: barUp5 4s infinite;\n}\n\n.cod-loader__ball {\n position: absolute;\n bottom: 10px;\n left: 0;\n width: 10px;\n height: 10px;\n border-radius: 50%;\n animation: ball 4s infinite;\n}\n\n.cod-loader.cod-loader--color-1\n .cod-loader-container\n article\n .cod-loader-bars\n .cod-loader__ball {\n background: var(--color-1);\n}\n\n.cod-loader.cod-loader--color-2\n .cod-loader-container\n article\n .cod-loader-bars\n .cod-loader__ball {\n background: var(--color-2);\n}\n\n.cod-loader.cod-loader--color-3\n .cod-loader-container\n article\n .cod-loader-bars\n .cod-loader__ball {\n background: var(--color-3);\n}\n\n.cod-loader.cod-loader--color-4\n .cod-loader-container\n article\n .cod-loader-bars\n .cod-loader__ball {\n background: var(--color-4);\n}\n\n.cod-loader.cod-loader--color-5\n .cod-loader-container\n article\n .cod-loader-bars\n .cod-loader__ball {\n background: var(--color-5);\n}\n\n@keyframes ball {\n 0% {\n transform: translate(0, 0);\n }\n\n 5% {\n transform: translate(10px, -14px);\n }\n\n 10% {\n transform: translate(20px, -10px);\n }\n\n 17% {\n transform: translate(30px, -24px);\n }\n\n 20% {\n transform: translate(40px, -20px);\n }\n\n 27% {\n transform: translate(50px, -34px);\n }\n\n 30% {\n transform: translate(60px, -30px);\n }\n\n 37% {\n transform: translate(70px, -44px);\n }\n\n 40% {\n transform: translate(80px, -40px);\n }\n\n 50% {\n transform: translate(80px, 0);\n }\n\n 57% {\n transform: translate(70px, -14px);\n }\n\n 60% {\n transform: translate(60px, -10px);\n }\n\n 67% {\n transform: translate(50px, -24px);\n }\n\n 70% {\n transform: translate(40px, -20px);\n }\n\n 77% {\n transform: translate(30px, -34px);\n }\n\n 80% {\n transform: translate(20px, -30px);\n }\n\n 87% {\n transform: translate(10px, -44px);\n }\n\n 90% {\n transform: translate(0, -40px);\n }\n\n 100% {\n transform: translate(0, 0);\n }\n}\n\n@keyframes barUp1 {\n 0% {\n transform: scale(1, 0.2);\n }\n\n 40% {\n transform: scale(1, 0.2);\n }\n\n 50% {\n transform: scale(1, 1);\n }\n\n 90% {\n transform: scale(1, 1);\n }\n\n 100% {\n transform: scale(1, 0.2);\n }\n}\n\n@keyframes barUp2 {\n 0% {\n transform: scale(1, 0.4);\n }\n\n 40% {\n transform: scale(1, 0.4);\n }\n\n 50% {\n transform: scale(1, 0.8);\n }\n\n 90% {\n transform: scale(1, 0.8);\n }\n\n 100% {\n transform: scale(1, 0.4);\n }\n}\n\n@keyframes barUp3 {\n 0% {\n transform: scale(1, 0.6);\n }\n\n 100% {\n transform: scale(1, 0.6);\n }\n}\n\n@keyframes barUp4 {\n 0% {\n transform: scale(1, 0.8);\n }\n\n 40% {\n transform: scale(1, 0.8);\n }\n\n 50% {\n transform: scale(1, 0.4);\n }\n\n 90% {\n transform: scale(1, 0.4);\n }\n\n 100% {\n transform: scale(1, 0.8);\n }\n}\n\n@keyframes barUp5 {\n 0% {\n transform: scale(1, 1);\n }\n\n 40% {\n transform: scale(1, 1);\n }\n\n 50% {\n transform: scale(1, 0.2);\n }\n\n 90% {\n transform: scale(1, 0.2);\n }\n\n 100% {\n transform: scale(1, 1);\n }\n}\n",this.shadowRoot.appendChild(n);const e=document.createElement("article"),a=this.getAttribute("data-color");e.className=["cod-loader","cod-loader--".concat(a||"color-1")].join(" "),e.innerHTML='\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n

LOADING

\n
\n
',this.shadowRoot.appendChild(e)}}customElements.define("cod-loader",J);const K=document.createElement("template");K.innerHTML="\n\n";class $ extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(K.content.cloneNode(!0)),this.body=document.createElement("div"),this.shadowRoot.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{this.body.append(t)}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="",t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){const t=this.getAttribute("data-extra-classes"),n=["modal-body"];void 0!=t&&null!=t&&n.push(t),this.body.className=n.join(" "),this.shadowRoot.querySelector("div")||this.shadowRoot.appendChild(this.body)}}customElements.define("cod-modal-body",$);const Q=document.createElement("template");Q.innerHTML="\n\n";class tt extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(Q.content.cloneNode(!0)),this.modalFooter=document.createElement("div"),this.closeBtn=document.createElement("cod-button"),this.shadowRoot.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{this.modalFooter.appendChild(t)}))})),this.modalFooter.appendChild(this.closeBtn);const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="",t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){const t=this.getAttribute("data-button-extra-classes"),n=this.getAttribute("data-extra-classes"),e=["modal-footer"];this.closeBtn.setAttribute("data-img-alt",""),this.closeBtn.setAttribute("data-icon",""),this.closeBtn.setAttribute("data-label","Close"),this.closeBtn.setAttribute("data-bs-dismiss","modal"),void 0!=n&&null!=n&&e.push(n),void 0!=t&&null!=t&&this.closeBtn.setAttribute("data-extra-classes",t),this.modalFooter.className=e.join(" "),this.closeBtn.addEventListener("click",this._onClick),this.shadowRoot.querySelector("div")||this.shadowRoot.appendChild(this.modalFooter)}disconnectedCallback(){this.removeEventListener("click",this._onClick.bind(this))}_onClick(){this.getRootNode().host.getRootNode().host.setAttribute("data-show","false")}}customElements.define("cod-modal-footer",tt);const nt=document.createElement("template");nt.innerHTML="\n\n";class et extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(nt.content.cloneNode(!0)),this.modalHeader=document.createElement("div"),this.modalTitle=document.createElement("div"),this.closeBtn=document.createElement("cod-button"),this.shadowRoot.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{this.modalTitle.appendChild(t)}))})),this.modalHeader.appendChild(this.modalTitle),this.modalHeader.appendChild(this.closeBtn);const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="",t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){const t=this.getAttribute("data-parent-id"),n=this.getAttribute("data-button-dark"),e=this.getAttribute("data-extra-classes"),o=["modal-header"];this.modalTitle.className="modal-title",this.modalTitle.id="".concat(t,"-label"),this.closeBtn.setAttribute("data-img-alt",""),this.closeBtn.setAttribute("data-icon",""),this.closeBtn.setAttribute("data-close","true"),this.closeBtn.setAttribute("data-bs-dismiss","modal"),void 0!=e&&null!=e&&o.push(e),"true"==n&&this.closeBtn.setAttribute("data-extra-classes","btn-close-white"),this.modalHeader.className=o.join(" "),this.closeBtn.addEventListener("click",this._onClick),this.shadowRoot.querySelector("div")||this.shadowRoot.appendChild(this.modalHeader)}disconnectedCallback(){this.removeEventListener("click",this._onClick.bind(this))}_onClick(){this.getRootNode().host.getRootNode().host.setAttribute("data-show","false")}}customElements.define("cod-modal-header",et);class ot extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"}),n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="a {\n text-decoration: none;\n font-family: var(--font-family);\n}\n",t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){const t=this.getAttribute("data-url"),n=this.getAttribute("data-text"),e=this.getAttribute("data-img"),o=this.getAttribute("data-img-alt"),a=this.getAttribute("data-text-classes"),r=this.getAttribute("data-img-classes"),i=this.getAttribute("data-img-size"),l=this.getAttribute("data-extra-classes"),s=[""],d=document.createElement("a"),c=encodeURI(t);if(d.href=decodeURI(c),e){const t=document.createElement("img"),n=encodeURI(e);t.src=decodeURI(n),i&&t.setAttribute("width",i),r&&(t.className=r),t.setAttribute("alt",o),d.appendChild(t)}if(n){const t=document.createElement("span");a&&(t.className=a),t.innerText=n,d.appendChild(t)}l&&s.push(l),d.className=s.join(" "),this.shadowRoot.querySelector("a")||this.shadowRoot.appendChild(d)}}customElements.define("cod-navbar-brand",ot);const at=document.createElement("template");at.innerHTML="\n\n";class rt extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(at.content.cloneNode(!0)),t.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((n=>{t.appendChild(n)}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="",t.appendChild(n),t.appendChild(e),t.appendChild(r)}}customElements.define("cod-navbar-collapse",rt);const it=document.createElement("template");it.innerHTML="\n\n";class lt extends HTMLElement{static get observedAttributes(){return["data-show"]}constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(it.content.cloneNode(!0)),this.offcanvas=document.createElement("div"),this.offcanvasBackdrop=document.createElement("div"),t.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{"true"===this.getAttribute("data-show")&&t.setAttribute("data-show",!0),"COD-OFFCANVAS-HEADER"===t.tagName&&("true"===this.getAttribute("data-button-dark")&&t.setAttribute("data-button-dark",!0),t.setAttribute("data-parent-id",this.getAttribute("data-id"))),this.offcanvas.appendChild(t)}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="",t.appendChild(n),t.appendChild(e),t.appendChild(r)}attributeChangedCallback(t,n,e){const o=this.offcanvas.className.split(" "),a=o.pop();"show"!==a&&o.push(a),"true"===e?(o.push("show"),"false"!==this.getAttribute("data-backdrop")&&("true"!==this.getAttribute("data-static")&&this.offcanvasBackdrop.addEventListener("click",this._onClick),this.shadowRoot.appendChild(this.offcanvasBackdrop))):this.shadowRoot.querySelector("div.offcanvas-backdrop")&&this.shadowRoot.removeChild(this.offcanvasBackdrop),this.offcanvas.className=o.join(" ")}connectedCallback(){const t=this.getAttribute("data-show"),n=this.getAttribute("data-placement"),e=this.getAttribute("data-id"),o=this.getAttribute("data-backdrop"),a=this.getAttribute("data-backdrop-extra-classes"),r=this.getAttribute("data-scroll"),i=this.getAttribute("data-static"),l=this.getAttribute("data-extra-classes"),s=["offcanvas"],d=["offcanvas-backdrop fade show"];"true"===t&&s.push("show"),"false"===o&&this.offcanvas.setAttribute("data-bs-backdrop",!1),"true"===r&&this.offcanvas.setAttribute("data-bs-scroll",!0),"true"===i&&this.offcanvas.setAttribute("data-bs-backdrop","static"),a&&d.push(a),l&&s.push(l),n?s.push("offcanvas-".concat(n)):s.push("offcanvas-start"),e&&(this.offcanvas.id=e,this.offcanvas.setAttribute("aria-labelledby","".concat(e,"-label"))),this.offcanvas.setAttribute("tabindex",-1),this.offcanvas.className=s.join(" "),this.offcanvasBackdrop.className=d.join(" "),this.shadowRoot.querySelector("div")||this.shadowRoot.appendChild(this.offcanvas)}disconnectedCallback(){this.removeEventListener("click",this._onClick.bind(this))}_onClick(){this.getRootNode().host.setAttribute("data-show","false")}}customElements.define("cod-navbar-offcanvas",lt);class st extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"}),n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent=".navbar-toggler-icon {\n border: none;\n background-color: transparent;\n}\n",t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){const t=this.getAttribute("data-mode"),n=this.getAttribute("data-extra-classes"),e=document.createElement("button"),o=[""];if("default"===t){const t=document.createElement("span");o.push("navbar-toggler-icon"),e.appendChild(t)}n&&o.push(n),e.className=o.join(" "),this.shadowRoot.querySelector("button")||(e.addEventListener("click",this._onClick.bind(this)),this.shadowRoot.appendChild(e))}disconnectedCallback(){this.removeEventListener("click",this._onClick.bind(this))}_onClick(){"true"===this.getAttribute("data-show")?"offcanvas"===this.getAttribute("data-target-toggle")?this.getRootNode().querySelector("cod-offcanvas").setAttribute("data-show","false"):this.getRootNode().host.setAttribute("data-show","false"):"offcanvas"===this.getAttribute("data-target-toggle")?this.getRootNode().querySelector("cod-offcanvas").setAttribute("data-show","true"):this.getRootNode().host.setAttribute("data-show","true")}}customElements.define("cod-navbar-toggle",st);const dt=document.createElement("template");dt.innerHTML="\n\n";class ct extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(dt.content.cloneNode(!0)),this.body=document.createElement("div"),this.shadowRoot.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{"COD-NAV"===t.tagName&&t.setAttribute("data-extra-classes","navbar-nav");const n=this.getAttribute("data-expand");n&&t.setAttribute("data-expand",n),this.body.append(t)}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent=":host(:not([data-expand])) {\n overflow-y: auto;\n}\n\n.navbar-expand-xs.offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n}\n\n@media (min-width: 576px) {\n .navbar-expand-sm.offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 768px) {\n .navbar-expand-md.offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 992px) {\n .navbar-expand-lg.offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 1200px) {\n .navbar-expand-xl.offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 1400px) {\n .navbar-expand-xxl.offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n\n/*# sourceMappingURL=OffcanvasBody.css.map */\n",t.appendChild(n),t.appendChild(e),t.appendChild(r)}attributeChangedCallback(t,n,e){if("data-expand"===t)e&&this.shadowRoot.querySelector("cod-nav").setAttribute("data-expand",e)}connectedCallback(){const t=this.getAttribute("data-extra-classes"),n=["offcanvas-body"];t&&n.push(t);const e=this.getAttribute("data-expand");e&&("always"===e?n.push("navbar-expand"):n.push("navbar-expand-".concat(e))),this.body.className=n.join(" "),this.shadowRoot.querySelector("div")||this.shadowRoot.appendChild(this.body)}}(0,j.Z)(ct,"observedAttributes",["data-expand"]),customElements.define("cod-offcanvas-body",ct);const bt=document.createElement("template");bt.innerHTML="\n\n";class mt extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(bt.content.cloneNode(!0)),this.offcanvasHeader=document.createElement("div"),this.offcanvasTitle=document.createElement("div"),this.closeBtn=document.createElement("cod-button"),this.shadowRoot.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{this.offcanvasTitle.appendChild(t)}))})),this.offcanvasHeader.appendChild(this.offcanvasTitle),this.offcanvasHeader.appendChild(this.closeBtn);const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent=".navbar-expand-xs.offcanvas-header {\n display: none;\n}\n\n@media (min-width: 576px) {\n .navbar-expand-sm.offcanvas-header {\n display: none;\n }\n}\n@media (min-width: 768px) {\n .navbar-expand-md.offcanvas-header {\n display: none;\n }\n}\n@media (min-width: 992px) {\n .navbar-expand-lg.offcanvas-header {\n display: none;\n }\n}\n@media (min-width: 1200px) {\n .navbar-expand-xl.offcanvas-header {\n display: none;\n }\n}\n@media (min-width: 1400px) {\n .navbar-expand-xxl.offcanvas-header {\n display: none;\n }\n}\n\n/*# sourceMappingURL=OffcanvasHeader.css.map */\n",t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){const t=this.getAttribute("data-parent-id"),n=this.getAttribute("data-button-dark"),e=this.getAttribute("data-extra-classes"),o=["offcanvas-header"];this.offcanvasTitle.className="offcanvas-title",this.offcanvasTitle.id="".concat(t,"-label"),this.closeBtn.setAttribute("data-img-alt",""),this.closeBtn.setAttribute("data-icon",""),this.closeBtn.setAttribute("data-close","true"),this.closeBtn.setAttribute("data-bs-dismiss",t),e&&o.push(e),"true"===n&&this.closeBtn.setAttribute("data-extra-classes","btn-close-white");const a=this.getAttribute("data-expand");a&&("always"===a?o.push("navbar-expand"):o.push("navbar-expand-".concat(a))),this.offcanvasHeader.className=o.join(" "),this.closeBtn.addEventListener("click",this._onClick),this.shadowRoot.querySelector("div")||this.shadowRoot.appendChild(this.offcanvasHeader)}disconnectedCallback(){this.removeEventListener("click",this._onClick.bind(this))}_onClick(){this.getRootNode().host.getRootNode().host.setAttribute("data-show","false")}}customElements.define("cod-offcanvas-header",mt);class pt extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"}),n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="",t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){const t=this.getAttribute("data-url"),n=this.getAttribute("data-special"),e=this.getAttribute("data-label"),o=this.getAttribute("data-text"),a=this.getAttribute("data-disabled"),r=this.getAttribute("data-active"),i=this.getAttribute("data-extra-classes"),l=["page-link"];let s=null,d=null;if(void 0!=t&&null!=t)if("true"==a)l.push("disabled"),s=document.createElement("span"),d="span";else{s=document.createElement("a");const n=encodeURI(t);s.href=decodeURI(n),d="a"}else s=document.createElement("span"),d="span";"true"==r&&l.push("active"),void 0!=i&&null!=i&&l.push(i),void 0!=n&&null!=n&&this.setSpecialItem(n,s),void 0!=o&&null!=o&&(s.innerText=o),void 0!=e&&null!=e&&s.setAttribute("aria-label",e),s.className=l.join(" "),this.shadowRoot.querySelector(d)||this.shadowRoot.appendChild(s)}setSpecialItem(t,n){switch(t){case"first":n.innerHTML='';break;case"previous":n.innerHTML='';break;case"next":n.innerHTML='';break;case"last":n.innerHTML='';break;case"ellipsiss":n.innerHTML=''}}}customElements.define("cod-pagination-item",pt);class gt extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"})}connectedCallback(){const t=document.createElement("style");t.textContent=a;const n=document.createElement("style");n.textContent=o;const e=document.createElement("style");e.textContent="",this.shadowRoot.appendChild(t),this.shadowRoot.appendChild(n),this.shadowRoot.appendChild(e);const r=this.getAttribute("data-type"),i=this.getAttribute("data-label"),l=this.getAttribute("data-aria-label"),s=this.getAttribute("data-animated"),d=this.getAttribute("data-value"),c=this.getAttribute("data-background-color"),b=this.getAttribute("data-multi-bars"),m=document.createElement("div");if("undefined"==b||"null"==b){const t=document.createElement("div");t.role="progressbar",t.setAttribute("aria-label",l),t.setAttribute("aria-valuenow",d),t.className="progress";const n=document.createElement("div");n.style="width: ".concat(d,"%"),"undefined"!=i&&"null"!=i&&(n.innerText=i),n.className=["progress-bar","progress-bar-".concat(s||""),"progress-bar-".concat(r||""),"bg-".concat(c||"")].join(" "),t.appendChild(n),m.appendChild(t)}else m.className="progress-stacked",this.buildBar(JSON.parse(b),m);this.shadowRoot.appendChild(m)}buildBar(t,n){t.forEach((t=>{const e=document.createElement("div");e.role="progressbar",e.setAttribute("aria-label",t.ariaLabel),e.setAttribute("aria-valuenow",t.value),e.setAttribute("aria-valuemin","0"),e.setAttribute("aria-valuemax","100"),e.className="progress";const o=document.createElement("div");e.style="width: ".concat(t.value,"%"),void 0!=t.label&&null!=t.label&&(o.innerText=t.label),o.className=["progress-bar","progress-bar-".concat(t.animated||""),"progress-bar-".concat(t.striped||""),"bg-".concat(t.backgroundColor||"")].join(" "),e.appendChild(o),n.appendChild(e)}))}}customElements.define("cod-progress",gt);class ut extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"})}connectedCallback(){const t=document.createElement("style");t.textContent=a;const n=document.createElement("style");n.textContent=o;const e=document.createElement("style");e.textContent="",this.shadowRoot.appendChild(t),this.shadowRoot.appendChild(n),this.shadowRoot.appendChild(e);const r=this.getAttribute("data-disabled"),i=this.getAttribute("data-min"),l=this.getAttribute("data-max"),s=this.getAttribute("data-step"),d=document.createElement("input");d.type="range",d.className="form-range","true"==r&&(d.disabled=!0),void 0==i&&null==i||d.setAttribute("min",i),void 0==l&&null==l||d.setAttribute("max",l),void 0==s&&null==s||d.setAttribute("step",s),this.shadowRoot.appendChild(d)}}customElements.define("cod-range",ut);class ht extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"})}connectedCallback(){const t=document.createElement("style");t.textContent=a;const n=document.createElement("style");n.textContent=o;const e=document.createElement("style");e.textContent="",this.shadowRoot.appendChild(t),this.shadowRoot.appendChild(n),this.shadowRoot.appendChild(e);const r=this.getAttribute("data-type"),i=this.getAttribute("data-size"),l=this.getAttribute("data-background-color"),s=this.getAttribute("data-display-type");let d,c;d="sm"==i?"spinner-".concat(r,"-").concat(i):"",c="inline"==s?document.createElement("span"):document.createElement("div"),c.className=["spinner-".concat(r||""),d,"text-".concat(l||"")].join(" "),c.role="status";const b=document.createElement("span");b.innerText="Loading...",b.className="visually-hidden",c.appendChild(b),this.shadowRoot.appendChild(c)}}customElements.define("cod-spinner",ht);const ft="table-stacked",xt="cell-header-block",vt="first";function yt(t,n){null!==t.getAttribute("data-stacked")&&(n.setAttribute("data-stacked",""),null!==t.getAttribute("data-label-block")&&n.setAttribute("data-label-block",""))}const wt={handleObservedClassAttribute(t,n,e,o){let a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:()=>[];null!==n?e.classList.add(o):e.classList.remove(o),a().forEach((e=>{null!==n?e.setAttribute(t,""):e.removeAttribute(t)}))},handleObservedAttribute(t,n,e){e(this,t,n)}},kt=document.createElement("template");kt.innerHTML="\n\n";class Ct extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(kt.content.cloneNode(!0)),this.tableBody=document.createElement("tbody"),t.addEventListener("slotchange",(()=>{Array.from(this.children).forEach(((t,n)=>{0===n?t.setIsFirst():n%2!==0&&t.setIsOdd(),"true"==this.getAttribute("data-striped-row")&&n%2==0&&t.setAttribute("data-striped-row","true"),"true"==this.getAttribute("data-hover")&&t.setAttribute("data-hover","true"),"true"==this.getAttribute("data-striped-col")&&t.setAttribute("data-striped-col","true"),"true"==this.getAttribute("data-vertical-align")&&t.setAttribute("data-vertical-align","true"),"true"===this.getAttribute("data-scrollable")&&t.setAttribute("data-scrollable","true"),yt(this,t),this.tableBody.append(t)}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="tbody {\n display: block;\n}\n",t.appendChild(n),t.appendChild(e),t.appendChild(r),t.appendChild(this.tableBody)}attributeChangedCallback(t,n,e){t in Ct.observedClassAttributes&&this.handleObservedClassAttribute(t,e,this.tableBody,Ct.observedClassAttributes[t],(()=>this.shadowRoot.querySelectorAll("cod-table-row")))}}(0,j.Z)(Ct,"observedClassAttributes",{"data-stacked":ft,"data-label-block":xt}),(0,j.Z)(Ct,"observedAttributes",Object.keys(Ct.observedClassAttributes)),Object.assign(Ct.prototype,wt),customElements.define("cod-table-body",Ct);const zt=document.createElement("template");zt.innerHTML="\n\n";class At extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(zt.content.cloneNode(!0)),this.tableCell=document.createElement("td"),t.addEventListener("slotchange",(t=>{t.target.assignedNodes().forEach((t=>{if(t.nodeType!==Node.TEXT_NODE||!/^\s*$/.test(t.textContent)){const n=document.createElement("div");n.classList.add("content"),n.appendChild(t),this.tableCell.appendChild(n)}}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="td {\n display: block;\n padding: 0.5em 0.5em;\n background-color: var(--bs-table-bg);\n border-bottom: solid var(--bs-border-width) var(--bs-secondary);\n box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg);\n height: 100%;\n}\n\ntd.table-striped,\ntd.table-striped-columns {\n --bs-table-accent-bg: var(--bs-table-striped-bg);\n}\n\ntd.table-scrollable {\n width: 5em;\n}\n\n@media (max-width: 991.98px) {\n td.table-stacked.cell-header-block {\n border-bottom-width: 0;\n display: block;\n width: 100%;\n }\n td.table-stacked:not(.cell-header-block) {\n padding: 0;\n border-bottom-width: 0;\n display: flex;\n }\n td.table-stacked:not(.cell-header-block) div.content {\n flex: 1 1 0px;\n padding: 0.5em 0.5em;\n }\n td[data-label].table-stacked.cell-header-block {\n padding-bottom: 0.5em;\n }\n td[data-label].table-stacked.cell-header-block:before {\n content: attr(data-label);\n display: block;\n font-weight: bold;\n background-color: #f2f2f2;\n margin: -0.45em -0.5em 0.45em;\n padding: 0.5em 0.5em 0.2em;\n }\n td[data-label].table-stacked:not(.cell-header-block):before {\n content: attr(data-label);\n font-weight: bold;\n background-color: #f2f2f2;\n flex: 1 1 0px;\n padding: 0.5em 0.5em;\n }\n}\n\n/*# sourceMappingURL=TableCell.css.map */\n",t.appendChild(n),t.appendChild(e),t.appendChild(r),t.appendChild(this.tableCell)}connectedCallback(){const t=this.getAttribute("data-striped-row"),n=this.getAttribute("data-striped-col"),e=this.getAttribute("data-vertical-align"),o=this.getAttribute("data-extra-classes");void 0!=e&&null!=e&&this.tableCell.classList.add(e),"true"===this.getAttribute("data-scrollable")&&this.tableCell.classList.add("table-scrollable"),"true"==t&&this.tableCell.classList.add("table-striped"),"true"==n&&this.tableCell.classList.add("table-striped-columns"),void 0!=o&&null!=o&&this.tableCell.classList.add(o);const a=this.getAttribute("data-label");a&&this.tableCell.setAttribute("data-label",a)}attributeChangedCallback(t,n,e){t in At.observedClassAttributes&&this.handleObservedClassAttribute(t,e,this.tableCell,At.observedClassAttributes[t])}}(0,j.Z)(At,"observedClassAttributes",{"data-stacked":ft,"data-label-block":xt}),(0,j.Z)(At,"observedAttributes",Object.keys(At.observedClassAttributes)),Object.assign(At.prototype,wt),customElements.define("cod-table-cell",At);const Et=document.createElement("template");Et.innerHTML="\n\n";class Lt extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(Et.content.cloneNode(!0)),this.tableCellHeader=document.createElement("th"),t.addEventListener("slotchange",(()=>{Array.from(this.childNodes).forEach((t=>{this.tableCellHeader.appendChild(t)}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="th {\n display: block;\n padding: 0.5em 0.5em;\n background-color: var(--bs-table-bg);\n border-bottom: solid var(--bs-border-width) var(--bs-secondary);\n box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg);\n font-weight: bold;\n height: 100%;\n}\n\nth.table-striped-columns {\n --bs-table-accent-bg: var(--bs-table-striped-bg);\n}\n\nth.table-scrollable {\n width: 5em;\n}\n\n@media (max-width: 991.98px) {\n th.table-stacked.cell-header-block {\n border-bottom-width: 0;\n display: block;\n width: 100%;\n }\n th.table-stacked:not(.cell-header-block) {\n padding: 0;\n border-bottom-width: 0;\n display: flex;\n }\n th.table-stacked:not(.cell-header-block) div.content {\n flex: 1 1 0px;\n padding: 0.5em 0.5em;\n }\n th[data-label].table-stacked.cell-header-block {\n padding-bottom: 0.5em;\n }\n th[data-label].table-stacked.cell-header-block:before {\n content: attr(data-label);\n display: block;\n font-weight: bold;\n background-color: #f2f2f2;\n margin: -0.45em -0.5em 0.45em;\n padding: 0.5em 0.5em 0.2em;\n }\n th[data-label].table-stacked:not(.cell-header-block):before {\n content: attr(data-label);\n font-weight: bold;\n background-color: #f2f2f2;\n flex: 1 1 0px;\n padding: 0.5em 0.5em;\n }\n}\n\n/*# sourceMappingURL=TableCellHeader.css.map */\n",t.appendChild(n),t.appendChild(e),t.appendChild(r),t.appendChild(this.tableCellHeader)}connectedCallback(){const t=this.getAttribute("data-striped-row"),n=this.getAttribute("data-striped-col"),e=this.getAttribute("data-vertical-align"),o=this.getAttribute("data-extra-classes");void 0!=e&&null!=e&&this.tableCellHeader.classList.add(e),"true"===this.getAttribute("data-scrollable")&&this.tableCellHeader.classList.add("table-scrollable"),"true"==t&&this.tableCellHeader.classList.add("table-striped"),"true"==n&&this.tableCellHeader.classList.add("table-striped-columns"),void 0!=o&&null!=o&&this.tableCellHeader.classList.add(o)}attributeChangedCallback(t,n,e){t in Lt.observedClassAttributes&&this.handleObservedClassAttribute(t,e,this.tableCellHeader,Lt.observedClassAttributes[t])}}(0,j.Z)(Lt,"observedClassAttributes",{"data-stacked":ft,"data-label-block":xt}),(0,j.Z)(Lt,"observedAttributes",Object.keys(Lt.observedClassAttributes)),Object.assign(Lt.prototype,wt),customElements.define("cod-table-cell-header",Lt);const _t=document.createElement("template");_t.innerHTML="\n\n";class Rt extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(_t.content.cloneNode(!0)),this.tableHeader=document.createElement("thead"),t.addEventListener("slotchange",(()=>{Array.from(this.children).forEach(((t,n)=>{0===n&&t.setIsFirst(),"true"==this.getAttribute("data-striped-col")&&t.setAttribute("data-striped-col","true"),"true"==this.getAttribute("data-vertical-align")&&t.setAttribute("data-vertical-align","true"),"true"===this.getAttribute("data-scrollable")&&t.setAttribute("data-scrollable","true"),yt(this,t),this.tableHeader.append(t)}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="thead {\n display: block;\n}\n\n@media (max-width: 991.98px) {\n thead.table-stacked {\n position: absolute;\n left: -10000px;\n top: auto;\n width: 1px;\n height: 1px;\n overflow: hidden;\n }\n}\n\n/*# sourceMappingURL=TableHeader.css.map */\n",t.appendChild(n),t.appendChild(e),t.appendChild(r),t.appendChild(this.tableHeader)}attributeChangedCallback(t,n,e){t in Rt.observedClassAttributes&&this.handleObservedClassAttribute(t,e,this.tableHeader,Rt.observedClassAttributes[t],(()=>this.shadowRoot.querySelectorAll("cod-table-row")))}}(0,j.Z)(Rt,"observedClassAttributes",{"data-stacked":ft,"data-label-block":xt}),(0,j.Z)(Rt,"observedAttributes",Object.keys(Rt.observedClassAttributes)),Object.assign(Rt.prototype,wt),customElements.define("cod-table-header",Rt);const Bt=document.createElement("template");Bt.innerHTML="\n\n";class Mt extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(Bt.content.cloneNode(!0)),this.tableRow=document.createElement("tr"),t.addEventListener("slotchange",(()=>{Array.from(this.children).forEach(((t,n)=>{"true"==this.getAttribute("data-striped-row")&&t.setAttribute("data-striped-row","true"),"true"==this.getAttribute("data-striped-col")&&n%2!=0&&t.setAttribute("data-striped-col","true"),"true"==this.getAttribute("data-vertical-align")&&t.setAttribute("data-vertical-align","true"),"true"===this.getAttribute("data-scrollable")&&t.setAttribute("data-scrollable","true"),yt(this,t),this.tableRow.append(t)}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="tr {\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n display: flex;\n align-items: stretch;\n}\n\ntr cod-table-cell,\ntr cod-table-cell-header {\n flex: 1;\n}\n\ntr cod-table-cell[colspan='2'],\ntr cod-table-cell-header[colspan='2'] {\n flex: 2;\n}\n\ntr cod-table-cell[colspan='3'],\ntr cod-table-cell-header[colspan='3'] {\n flex: 3;\n}\n\ntr cod-table-cell[colspan='4'],\ntr cod-table-cell-header[colspan='4'] {\n flex: 4;\n}\n\ntr cod-table-cell[colspan='5'],\ntr cod-table-cell-header[colspan='5'] {\n flex: 5;\n}\n\ntr.table-hover:hover {\n --bs-table-accent-bg: var(--bs-table-hover-bg);\n}\n\n@media (max-width: 991.98px) {\n tr.table-stacked {\n display: block;\n border-top-width: 0;\n width: 100%;\n }\n tr.table-stacked:not(.cell-header-block) {\n border-bottom: 2px solid var(--bs-black);\n }\n tr.table-stacked.first:not(.cell-header-block) {\n border-top: 2px solid var(--bs-black);\n }\n tr.table-stacked.odd.cell-header-block {\n border-left: 2px solid var(--bs-black);\n }\n}\n\n/*# sourceMappingURL=TableRow.css.map */\n",t.appendChild(n),t.appendChild(e),t.appendChild(r),t.appendChild(this.tableRow)}connectedCallback(){const t=this.getAttribute("data-extra-classes");"true"==this.getAttribute("data-hover")&&this.tableRow.classList.add("table-hover"),void 0!=t&&null!=t&&this.tableRow.classList.add(t)}attributeChangedCallback(t,n,e){t in Mt.observedClassAttributes&&this.handleObservedClassAttribute(t,e,this.tableRow,Mt.observedClassAttributes[t],(()=>this.shadowRoot.querySelectorAll("cod-table-cell")))}setIsFirst(){!(arguments.length>0&&void 0!==arguments[0])||arguments[0]?this.tableRow.classList.add(vt):this.tableRow.classList.remove(vt)}setIsOdd(){!(arguments.length>0&&void 0!==arguments[0])||arguments[0]?this.tableRow.classList.add("odd"):this.tableRow.classList.remove("odd")}}(0,j.Z)(Mt,"observedClassAttributes",{"data-stacked":ft,"data-label-block":xt}),(0,j.Z)(Mt,"observedAttributes",Object.keys(Mt.observedClassAttributes)),Object.assign(Mt.prototype,wt),customElements.define("cod-table-row",Mt);const St=document.createElement("template");St.innerHTML='\n
\n \n
\n
\n \n \n
\n
\n

\n \n
\n
\n
\n
\n';class Ht extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(St.content.cloneNode(!0));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="div {\n font-family: var(--font-family);\n}\n\n.action-button-container,\n.action-button-container > a,\n.action-button-container > a > .abutton {\n width: 100%;\n height: 100%;\n}\n\n.top-icon {\n padding-top: 1em;\n}\n\n.abutton-title {\n margin-bottom: var(--abutton-title-spacer-y);\n font-weight: 900;\n text-transform: uppercase;\n}\n\n.abutton-text:last-child {\n margin-bottom: 0;\n}\n\n.abutton-body {\n padding: var(--abutton-spacer-y) var(--abutton-spacer-x);\n}\n\n.abutton {\n display: flex;\n flex-direction: column;\n min-width: 0;\n --abutton-spacer-y: 1em;\n --abutton-spacer-x: 1em;\n --abutton-title-spacer-y: 0.5em;\n}\n\n.btn {\n --bs-btn-padding-x: 0rem;\n --bs-btn-padding-y: 0rem;\n}\n",t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){var t;const n=this.getAttribute("title");this.shadowRoot.querySelector("h4.abutton-title").innerText=n;const e=this.getAttribute("icon");this.shadowRoot.querySelector("cod-icon").setAttribute("data-icon",e);const o=null!==(t=this.getAttribute("btn-color"))&&void 0!==t?t:"btn-outline-primary",a=this.getAttribute("href"),r=this.getAttribute("target"),i=this.shadowRoot.querySelector("a.btn");i.classList.add("btn",o),i.setAttribute("href",a),r&&i.setAttribute("target",r)}}(0,j.Z)(Ht,"observedAttributes",[]),customElements.define("cod-action-button",Ht);const Vt=document.createElement("template");Vt.innerHTML='\n
\n \n
\n \n
\n
\n
\n \n
\n \n
\n
\n
\n
\n
\n';class jt extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(Vt.content.cloneNode(!0));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="div {\n font-family: var(--font-family);\n}\n\n.info-button-container,\n.info-button-container > a,\n.info-button-container > a > .card {\n width: 100%;\n height: 100%;\n}\n\n.info-btn-title {\n font-weight: 900;\n}\n\n.card {\n --bs-card-bg: initial;\n --bs-card-border-width: 0;\n}\n\n.btn {\n --bs-btn-padding-x: 0rem;\n --bs-btn-padding-y: 0rem;\n text-align: initial;\n}\n",t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){const t=this.getAttribute("img-src"),n=this.getAttribute("img-alt"),e=this.shadowRoot.querySelector("img.card-img-top");e.setAttribute("src",t),e.setAttribute("alt",n),this.buildTitleSection();const o=this.getAttribute("href"),a=this.getAttribute("target"),r=this.shadowRoot.querySelector("a");r.setAttribute("href",o),a&&r.setAttribute("target",a)}buildTitleSection(){const t=this.getAttribute("title-primary");if(!t)return;const n=this.getAttribute("force-title-multiline"),e=document.createElement("div");null===n&&e.classList.add("d-flex","justify-content-between","flex-wrap");const o=document.createElement("h5");o.innerText=t,o.classList.add("info-btn-title","me-2"),e.appendChild(o);const a=this.getAttribute("title-secondary");if(a){const t=document.createElement("h5");t.innerText=a,t.classList.add("info-btn-title","text-warning",null!==n?null:"text-end"),e.appendChild(t)}this.shadowRoot.querySelector("div.card-body").prepend(e)}}(0,j.Z)(jt,"observedAttributes",[]),customElements.define("cod-info-button",jt);const Nt=document.createElement("template");Nt.innerHTML='\n
\n
\n
\n \n
\n \n
\n
\n
\n';class Tt extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(Nt.content.cloneNode(!0));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent=".img-placeholder {\n width: 100%;\n height: 400px;\n background-color: #d3d3d3;\n}\n\n.card-container {\n position: relative;\n overflow: hidden;\n}\n\n.text-container {\n position: absolute;\n box-sizing: border-box;\n padding-top: 0.5em;\n padding-bottom: 0.5em;\n padding-left: 1em;\n padding-right: 1em;\n width: 100%;\n height: 40%;\n bottom: 0;\n left: 0;\n transition:\n padding-top 0.2s,\n height 0.2s ease-in-out;\n}\n\n.card-container:hover .text-container,\n.card-container .text-container.show {\n box-sizing: border-box;\n height: 100%;\n padding-top: 30%;\n}\n\n.subtitle-container {\n margin-top: 2em;\n opacity: 0;\n transition: opacity 0.2s ease-in-out;\n}\n\n.card-container:hover .subtitle-container,\n.card-container .text-container.show .subtitle-container {\n margin-top: 2em;\n opacity: 1;\n}\n\n/*# sourceMappingURL=ArticleCard.css.map */\n",t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){this._replaceImgPlacehold(),this._setColor(),this._wrapWithLink()}attributeChangedCallback(t,n,e){if("show"===t){const t=this.shadowRoot.querySelector(".text-container");null!==e?null===t||void 0===t||t.classList.add("show"):null===t||void 0===t||t.classList.remove("show")}}_wrapWithLink(){const t=this.getAttribute("target"),n=this.getAttribute("href"),e=this.shadowRoot.querySelector(".card-container"),o=document.createElement("a");o.setAttribute("href",n),o.setAttribute("target",t),e.parentNode.insertBefore(o,e),o.appendChild(e)}_setColor(){const t=this.getAttribute("color");this.shadowRoot.querySelector(".text-container").classList.add("bg-".concat(t))}_replaceImgPlacehold(){const t=document.createElement("img");t.classList.add("w-100"),t.src=this.getAttribute("src");this.shadowRoot.querySelector(".img-placeholder").replaceWith(t)}}(0,j.Z)(Tt,"observedAttributes",["show"]),customElements.define("cod-article-card",Tt);const Ft=document.createElement("template");Ft.innerHTML="\n\n";class Dt extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(Ft.content.cloneNode(!0)),this.card=document.createElement("div"),t.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{switch(t.tagName){case"COD-CARD-HEADER":{const n=document.createElement("div"),e=["card-header"];null!==t.getAttribute("data-extra-classes")&&null!==t.getAttribute("data-extra-classes")&&e.push(t.getAttribute("data-extra-classes")),n.className=e.join(" "),n.appendChild(t),this.card.appendChild(n);break}case"COD-CARD-BODY":{const n=document.createElement("div"),e=["card-body"];null!==t.getAttribute("data-extra-classes")&&null!==t.getAttribute("data-extra-classes")&&e.push(t.getAttribute("data-extra-classes")),n.className=e.join(" "),n.appendChild(t),this.card.appendChild(n);break}case"COD-CARD-FOOTER":{const n=document.createElement("div"),e=["card-footer"];null!==t.getAttribute("data-extra-classes")&&null!==t.getAttribute("data-extra-classes")&&e.push(t.getAttribute("data-extra-classes")),n.className=e.join(" "),n.appendChild(t),this.card.appendChild(n);break}case"COD-CARD-OVERLAY":{const n=document.createElement("div"),e=["card-img-overlay"];null!==t.getAttribute("data-extra-classes")&&null!==t.getAttribute("data-extra-classes")&&e.push(t.getAttribute("data-extra-classes")),n.className=e.join(" "),n.appendChild(t),this.card.appendChild(n);break}default:t.className.split(" ").includes("no-wc")?t.remove():this.card.appendChild(t);break}}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="",t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){const t=this.getAttribute("data-width"),n=this.getAttribute("data-id"),e=this.getAttribute("data-extra-classes"),o=["card"];null!==e&&o.push(e.split(" ")),null!==t&&(this.card.style.width=t),null!==n&&(this.card.id=n),this.card.classList.add(...o),this.shadowRoot.querySelector("div")||this.shadowRoot.appendChild(this.card)}}customElements.define("cod-card",Dt);const Pt=document.createElement("template");Pt.innerHTML="\n\n";class It extends HTMLElement{static get observedAttributes(){return["data-active-item"]}constructor(){super();const t=this.attachShadow({mode:"open"});if(t.appendChild(Pt.content.cloneNode(!0)),this.carousel=document.createElement("div"),this.carouselIndicators=document.createElement("div"),this.carouselIndicators.className="carousel-indicators",this.carouselInner=document.createElement("div"),this.carouselInner.className="carousel-inner",this.carouselPrev=document.createElement("button"),this.carouselNext=document.createElement("button"),"true"!=this.getAttribute("data-no-controls")){"true"==this.getAttribute("data-external-controls")?(this.carouselPrev.className="carousel-control-prev position-relative",this.carouselNext.className="carousel-control-next position-relative"):(this.carouselPrev.className="carousel-control-prev",this.carouselNext.className="carousel-control-next"),this.carouselPrev.type="button",this.carouselPrev.setAttribute("data-bs-target","#".concat(this.getAttribute("data-id"))),this.carouselPrev.setAttribute("data-bs-slide","prev");const t=document.createElement("span");t.className="carousel-control-prev-icon",t.setAttribute("aria-hidden","true"),this.carouselPrev.appendChild(t);const n=document.createElement("span");n.className="visually-hidden",n.innerText="Previous",this.carouselPrev.appendChild(n),this.carouselNext.type="button",this.carouselNext.setAttribute("data-bs-target","#".concat(this.getAttribute("data-id"))),this.carouselNext.setAttribute("data-bs-slide","next");const e=document.createElement("span");e.className="carousel-control-next-icon",e.setAttribute("aria-hidden","true"),this.carouselNext.appendChild(e);const o=document.createElement("span");o.className="visually-hidden",o.innerText="Next",this.carouselNext.appendChild(o),this.carouselPrev.addEventListener("click",this._onClick),this.carouselNext.addEventListener("click",this._onClick),this.carousel.appendChild(this.carouselPrev),this.carousel.appendChild(this.carouselInner),this.carousel.appendChild(this.carouselNext)}else this.carousel.appendChild(this.carouselInner);t.addEventListener("slotchange",(()=>{const t=Array.from(this.children);let n=0;t.forEach(((t,e)=>{if("COD-CAROUSEL-ITEM"==t.tagName){n+=1;const o=document.createElement("div");if(o.setAttribute("data-index",e),"true"==t.getAttribute("data-active")?(o.className="carousel-item active",this.setAttribute("data-active-item",e)):o.className="carousel-item",void 0!=t.getAttribute("data-interval")&&null!=t.getAttribute("data-interval")&&o.setAttribute("data-bs-interval",t.getAttribute("data-interval")),o.appendChild(t),this.carouselInner.appendChild(o),"true"==this.getAttribute("data-indicator")){const n=document.createElement("button");n.type="button",n.setAttribute("data-bs-target","#".concat(this.getAttribute("data-id"))),n.setAttribute("data-bs-slide-to",e),n.setAttribute("aria-label","Slide ".concat(e)),"true"==t.getAttribute("data-active")&&(n.className="active",n.setAttribute("aria-current","true")),n.addEventListener("click",this._onClick),this.carouselIndicators.appendChild(n),this.carousel.appendChild(this.carouselIndicators)}}n&&this.setAttribute("data-total-items",n);t.className.split(" ").includes("no-wc")&&t.remove()}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent=".carousel-item {\n z-index: 1;\n}\n\n.carousel-item.active {\n z-index: 2;\n}\n\n.carousel-control-prev,\n.carousel-control-next {\n z-index: 3;\n}\n",t.appendChild(n),t.appendChild(e),t.appendChild(r)}attributeChangedCallback(t,n,e){if(null!=n){const t=this.carouselInner.querySelector('[data-index="'.concat(n,'"')),o=this.carouselInner.querySelector('[data-index="'.concat(e,'"'));"true"==this.getAttribute("data-indicator")&&(this.carouselIndicators.querySelector('[data-bs-slide-to="'.concat(n,'"')).className="",this.carouselIndicators.querySelector('[data-bs-slide-to="'.concat(e,'"')).className="active"),"next"==this.getAttribute("data-direction")?(t.className="carousel-item active carousel-item-start",o.className="carousel-item carousel-item-next carousel-item-start"):(t.className="carousel-item active carousel-item-end",o.className="carousel-item carousel-item-prev carousel-item-end"),setTimeout((()=>{t.className="carousel-item",o.className="carousel-item active"}),500)}}connectedCallback(){const t=this.getAttribute("data-id"),n=this.getAttribute("data-crossfade"),e=this.getAttribute("data-autoplay"),o=this.getAttribute("data-no-touch"),a=this.getAttribute("data-extra-classes"),r=this.getAttribute("data-external-controls"),i=["carousel slide"];void 0!=a&&null!=a&&i.push(a),"true"==n&&i.push("carousel-fade"),"true"==r&&i.push("d-flex"),"false"==o&&this.carousel.setAttribute("data-bs-touch","false"),void 0!=e&&null!=e&&("true"==e?this.carousel.setAttribute("data-bs-ride",e):this.carousel.setAttribute("data-bs-ride","carousel")),void 0!=t&&null!=t&&(this.carousel.id=t),this.carousel.className=i.join(" "),this.shadowRoot.querySelector("div")||this.shadowRoot.appendChild(this.carousel)}disconnectedCallback(){this.removeEventListener("click",this._onClick.bind(this))}_onClick(){const t=this.getRootNode().host.getAttribute("data-active-item");if(void 0==this.getAttribute("data-bs-slide"))this.getAttribute("data-bs-slide-to")>t?(this.getRootNode().host.setAttribute("data-direction","prev"),this.getRootNode().host.setAttribute("data-active-item",this.getAttribute("data-bs-slide-to"))):(this.getRootNode().host.setAttribute("data-direction","next"),this.getRootNode().host.setAttribute("data-active-item",this.getAttribute("data-bs-slide-to")));else{const t=this.getRootNode().host.getAttribute("data-active-item"),n=this.getRootNode().host.getAttribute("data-total-items");"prev"==this.getAttribute("data-bs-slide")?(this.getRootNode().host.setAttribute("data-direction","prev"),parseInt(t)-1>=0?this.getRootNode().host.setAttribute("data-active-item",parseInt(t)-1):this.getRootNode().host.setAttribute("data-active-item",parseInt(n)-1)):(this.getRootNode().host.setAttribute("data-direction","next"),parseInt(t)+1\n\n";class Wt extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(qt.content.cloneNode(!0)),this.form=document.createElement("form"),t.addEventListener("slotchange",(()=>{const t=Array.from(this.children);t.length&&t.forEach((t=>{this.form.append(t)}))}))}connectedCallback(){const t=document.createElement("style");t.textContent=a;const n=document.createElement("style");n.textContent=o;const e=document.createElement("style");e.textContent="",this.shadowRoot.appendChild(t),this.shadowRoot.appendChild(n),this.shadowRoot.appendChild(e);const r=this.getAttribute("data-id");let i=this.getAttribute("data-custom-validate");const l=this.getAttribute("data-background-color"),s=this.getAttribute("data-extra-classes");this.form.id=r,"true"==i?(this.form.novalidate=!0,i="needs-validation"):i="",this.form.className=[i,"bg-".concat(l||""),"".concat(s||"")].join(" "),this.shadowRoot.appendChild(this.form)}}customElements.define("cod-form",Wt);const Zt=document.createElement("template");Zt.innerHTML="\n\n";class Gt extends HTMLElement{static get observedAttributes(){return["data-show"]}constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(Zt.content.cloneNode(!0)),this.modal=document.createElement("div"),this.modalDialog=document.createElement("div"),this.modalContent=document.createElement("div"),this.modalHeader=document.createElement("div"),this.modalBody=document.createElement("div"),this.modalFooter=document.createElement("div"),this.modalDialog.appendChild(this.modalContent),this.modal.appendChild(this.modalDialog),t.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{switch(t.tagName){case"COD-MODAL-HEADER":"true"==this.getAttribute("data-show")&&t.setAttribute("data-show",!0),"true"==this.getAttribute("data-button-dark")&&t.setAttribute("data-button-dark",!0),this.modalHeader.appendChild(t),this.modalContent.appendChild(this.modalHeader);break;case"COD-MODAL-BODY":this.modalBody.appendChild(t),this.modalContent.appendChild(this.modalBody);break;case"COD-MODAL-FOOTER":this.modalFooter.appendChild(t),this.modalContent.appendChild(this.modalFooter)}}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent=".modal {\n background-color: rgba(0, 0, 0, 0.5);\n}\n",t.appendChild(n),t.appendChild(e),t.appendChild(r)}attributeChangedCallback(t,n,e){const o=this.modal.className.split(" "),a=o.pop();"show"!=a&&o.push(a),"true"==e?(o.push("show"),this.modal.style.display="block","true"!=this.getAttribute("data-static")&&this.modal.addEventListener("click",this._onClick),this.modal.className=o.join(" ")):(this.modal.className=o.join(" "),setTimeout((()=>{this.modal.style.display="none"}),500))}connectedCallback(){const t=this.getAttribute("data-static"),n=this.getAttribute("data-id"),e=this.getAttribute("data-show"),o=this.getAttribute("data-vertical-centered"),a=this.getAttribute("data-size"),r=this.getAttribute("data-full-screen"),i=this.getAttribute("data-extra-classes"),l=["modal fade"],s=["modal-dialog"];void 0!=i&&null!=i&&l.push(i),void 0!=a&&null!=a&&s.push("modal-".concat(a)),"true"==o&&s.push("modal-dialog-centered"),void 0!=r&&null!=r&&("always"==r?s.push("modal-fullscreen"):s.push("modal-fullscreen-".concat(r,"-down"))),"true"==t&&(this.modal.setAttribute("data-bs-backdrop","static"),this.modal.setAttribute("data-bs-keyboard","false")),"true"==e?(this.modalClasses.push("show"),this.modal.setAttribute("aria-modal","true")):this.modal.setAttribute("aria-modal","false"),void 0!=n&&null!=n&&(this.modal.id=n),this.modal.setAttribute("tabindex",-1),this.modal.className=l.join(" "),this.modalDialog.className=s.join(" "),this.modalContent.className=["modal-content"].join(" "),this.shadowRoot.querySelector("div")||this.shadowRoot.appendChild(this.modal)}disconnectedCallback(){this.removeEventListener("click",this._onClick.bind(this))}_onClick(){this.getRootNode().host.setAttribute("data-show","false")}}customElements.define("cod-modal",Gt);var Ot=e(613),Ut=e.n(Ot),Yt=JSON.parse('{"version":8,"sprite":"https://cdn.arcgis.com/sharing/rest/content/items/273bf8d5c8ac400183fc24e109d20bcf/resources/styles/../sprites/sprite","glyphs":"https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/resources/fonts/{fontstack}/{range}.pbf","sources":{"esri":{"type":"vector","tiles":["https://basemaps.arcgis.com/arcgis/rest/services/World_Basemap_v2/VectorTileServer/tile/{z}/{y}/{x}.pbf"]},"parcels":{"type":"vector","tiles":["https://tiles.arcgis.com/tiles/qvkbeam7Wirps6zC/arcgis/rest/services/parcels/VectorTileServer/tile/{z}/{y}/{x}.pbf"]},"mapillary":{"type":"geojson","data":{"type":"FeatureCollection","features":[]}},"mly":{"type":"vector","tiles":["https://tiles.mapillary.com/maps/vtp/mly1_computed_public/2/{z}/{x}/{y}?access_token=MLY|4690399437648324|de87555bb6015affa20c3df794ebab15"],"maxzoom":14,"minzoom":14}},"layers":[{"id":"Land/Not ice","type":"fill","source":"esri","source-layer":"Land","filter":["==","_symbol",0],"minzoom":0,"layout":{},"paint":{"fill-color":{"stops":[[0,"#dce0ca"],[10,"#E6E5D6"],[15,"#f2eee9"]]}}},{"id":"Land/Ice","type":"fill","source":"esri","source-layer":"Land","filter":["==","_symbol",1],"minzoom":0,"layout":{},"paint":{"fill-color":"#E6E5D6"}},{"id":"Urban area","type":"fill","source":"esri","source-layer":"Urban area","minzoom":5,"maxzoom":15,"layout":{},"paint":{"fill-color":{"stops":[[5,"#e3dfdc"],[10,"#ECE8E3"],[15,"#f2eee9"]]},"fill-antialias":false}},{"id":"Parcel/fill","type":"fill","source":"esri","source-layer":"Parcel","minzoom":18,"layout":{},"paint":{"fill-color":"#f0ebe5"}},{"id":"Parcel/line","type":"line","source":"esri","source-layer":"Parcel","minzoom":17,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":"#dddbd8","line-width":{"base":1.2,"stops":[[17,0.6],[22,5]]}}},{"id":"Vegetation small scale/High density","type":"fill","source":"esri","source-layer":"Vegetation small scale","filter":["==","_symbol",0],"maxzoom":11,"layout":{},"paint":{"fill-color":"#c2e699","fill-opacity":{"stops":[[0,0.3],[5,0.28],[7,0.18],[10,0.08]]},"fill-antialias":false}},{"id":"Vegetation small scale/Low density","type":"fill","source":"esri","source-layer":"Vegetation small scale","filter":["==","_symbol",1],"maxzoom":11,"layout":{},"paint":{"fill-color":"#9ad666","fill-opacity":{"stops":[[0,0.3],[5,0.28],[7,0.18],[10,0.08]]},"fill-antialias":false}},{"id":"Indigenous","type":"fill","source":"esri","source-layer":"Indigenous","minzoom":6,"layout":{},"paint":{"fill-color":"#dbd5bd","fill-outline-color":"#d6d4c8","fill-opacity":0.35}},{"id":"Openspace or forest","type":"fill","source":"esri","source-layer":"Openspace or forest","minzoom":9,"layout":{},"paint":{"fill-color":"#CDDFB3","fill-antialias":false}},{"id":"Admin0 forest or park","type":"fill","source":"esri","source-layer":"Admin0 forest or park","minzoom":6,"layout":{},"paint":{"fill-color":"#CDDFB3","fill-opacity":{"stops":[[6,0.4],[8,1]]},"fill-antialias":false}},{"id":"Admin0 forest or park/line2","type":"line","source":"esri","source-layer":"Admin0 forest or park","minzoom":6,"layout":{},"paint":{"line-color":"#c0d3a5","line-opacity":0.3,"line-width":{"base":1.2,"stops":[[6,0.6],[15,15]]}}},{"id":"Admin0 forest or park/line","type":"line","source":"esri","source-layer":"Admin0 forest or park","minzoom":6,"layout":{},"paint":{"line-color":"#c0d3a5","line-opacity":{"stops":[[6,0.4],[8,1]]},"line-width":{"base":1.2,"stops":[[6,0.6],[9,1.1]]}}},{"id":"Admin1 forest or park","type":"fill","source":"esri","source-layer":"Admin1 forest or park","minzoom":7,"layout":{},"paint":{"fill-color":"#CDDFB3","fill-opacity":{"stops":[[6,0.4],[8,1]]},"fill-antialias":false}},{"id":"Admin1 forest or park/line2","type":"line","source":"esri","source-layer":"Admin1 forest or park","minzoom":7,"layout":{},"paint":{"line-color":"#c0d3a5","line-opacity":0.3,"line-width":{"base":1.2,"stops":[[6,0.6],[15,15]]}}},{"id":"Admin1 forest or park/line","type":"line","source":"esri","source-layer":"Admin1 forest or park","minzoom":7,"layout":{},"paint":{"line-color":"#c0d3a5","line-opacity":{"stops":[[6,0.4],[8,1]]},"line-width":{"base":1.2,"stops":[[6,0.6],[9,1.1]]}}},{"id":"Zoo","type":"fill","source":"esri","source-layer":"Zoo","minzoom":11,"layout":{},"paint":{"fill-color":{"stops":[[11,"#CDDFB3"],[17,"#A5C187"]]}}},{"id":"Military","type":"fill","source":"esri","source-layer":"Military","minzoom":6,"layout":{},"paint":{"fill-color":"#d9d9d9","fill-opacity":0.5,"fill-antialias":false}},{"id":"Port","type":"fill","source":"esri","source-layer":"Port","minzoom":12,"layout":{},"paint":{"fill-color":{"stops":[[13,"#d9d2c8"],[15,"#E6E0D9"],[19,"#ECE7E1"]]}}},{"id":"Transportation","type":"fill","source":"esri","source-layer":"Transportation","minzoom":13,"layout":{},"paint":{"fill-color":{"stops":[[13,"#ddd3c5"],[15,"#E8E1D7"],[19,"#EDE7E0"]]}}},{"id":"Industry","type":"fill","source":"esri","source-layer":"Industry","minzoom":12,"layout":{},"paint":{"fill-color":{"stops":[[13,"#d9d2c8"],[15,"#E2DCD4"],[19,"#ECE7E1"]]}}},{"id":"Golf course","type":"fill","source":"esri","source-layer":"Golf course","minzoom":11,"layout":{},"paint":{"fill-color":"#D6E6C3"}},{"id":"Airport/Airport property","type":"fill","source":"esri","source-layer":"Airport","filter":["==","_symbol",1],"minzoom":9,"layout":{},"paint":{"fill-color":{"stops":[[9,"#d9d6d2"],[11,"#e3e1df"],[15,"#EAE7E4"]]},"fill-outline-color":"#DDDBD9"}},{"id":"Airport/Airport runway","type":"fill","source":"esri","source-layer":"Airport","filter":["==","_symbol",0],"minzoom":11,"layout":{},"paint":{"fill-color":{"stops":[[11,"#dddbd9"],[22,"#8D8C8A"]]}}},{"id":"Retail","type":"fill","source":"esri","source-layer":"Retail","minzoom":13,"layout":{},"paint":{"fill-color":{"stops":[[11,"#f7c2b5"],[15,"#F5D8CF"],[19,"#F3E8E2"]]}}},{"id":"Water and wastewater","type":"fill","source":"esri","source-layer":"Water and wastewater","minzoom":13,"layout":{},"paint":{"fill-color":{"stops":[[13,"#ddd3c5"],[15,"#E8E1D7"],[19,"#EDE7E0"]]}}},{"id":"Freight","type":"fill","source":"esri","source-layer":"Freight","minzoom":12,"layout":{},"paint":{"fill-color":{"stops":[[13,"#d9d2c8"],[15,"#E2DCD4"],[19,"#EDE7E0"]]}}},{"id":"Cemetery","type":"fill","source":"esri","source-layer":"Cemetery","minzoom":13,"layout":{},"paint":{"fill-color":"#d3e6b9"}},{"id":"Finance","type":"fill","source":"esri","source-layer":"Finance","minzoom":13,"layout":{},"paint":{"fill-color":{"stops":[[11,"#f7c2b5"],[15,"#F5D8CF"],[19,"#F3E8E2"]]}}},{"id":"Government","type":"fill","source":"esri","source-layer":"Government","minzoom":13,"layout":{},"paint":{"fill-color":{"stops":[[13,"#ddd3c5"],[15,"#E8E1D7"],[19,"#EDE7E0"]]}}},{"id":"Emergency","type":"fill","source":"esri","source-layer":"Emergency","minzoom":13,"layout":{},"paint":{"fill-color":"#E8E7E5"}},{"id":"Landmark","type":"fill","source":"esri","source-layer":"Landmark","minzoom":13,"layout":{},"paint":{"fill-color":{"stops":[[10,"#d7ede6"],[15,"#E5EEE8"],[19,"#EBEEE8"]]}}},{"id":"Pedestrian","type":"fill","source":"esri","source-layer":"Pedestrian","minzoom":13,"layout":{},"paint":{"fill-color":"#E8E7E5","fill-outline-color":"#bcb7ae"}},{"id":"Education","type":"fill","source":"esri","source-layer":"Education","minzoom":11,"layout":{},"paint":{"fill-color":{"stops":[[11,"#dde2a9"],[15,"#E8E8C9"],[19,"#EEEBDB"]]}}},{"id":"Medical","type":"fill","source":"esri","source-layer":"Medical","minzoom":11,"layout":{},"paint":{"fill-color":{"stops":[[11,"#c7dff4"],[15,"#DDE7EF"],[19,"#E7EAEC"]]}}},{"id":"Park or farming","type":"fill","source":"esri","source-layer":"Park or farming","minzoom":11,"layout":{},"paint":{"fill-color":{"stops":[[11,"#CDDFB3"],[17,"#A5C187"]]}}},{"id":"Beach","type":"fill","source":"esri","source-layer":"Beach","minzoom":13,"layout":{},"paint":{"fill-pattern":"Special area of interest/Sand"}},{"id":"Special area of interest/Garden path","type":"fill","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",12],"minzoom":14,"layout":{"visibility":"none"},"paint":{"fill-color":"#f5f5f1","fill-outline-color":"#EBE8E8"}},{"id":"Special area of interest/Green openspace","type":"fill","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",11],"minzoom":14,"layout":{},"paint":{"fill-color":{"stops":[[14,"#c5e0a9"],[17,"#A5C187"]]}}},{"id":"Special area of interest/Grass","type":"fill","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",8],"minzoom":14,"layout":{},"paint":{"fill-color":{"stops":[[14,"#b4d197"],[17,"#84A661"]]}}},{"id":"Special area of interest/Grass/line","type":"line","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",8],"minzoom":14,"layout":{},"paint":{"line-color":{"stops":[[14,"#a4c683"],[17,"#739551"]]},"line-width":{"stops":[[15,1.1],[22,10]]},"line-blur":{"stops":[[15,1],[22,5]]}}},{"id":"Special area of interest/Grass/pattern","type":"fill","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",8],"minzoom":14,"layout":{},"paint":{"fill-pattern":"Special area of interest/Grass","fill-opacity":0.5}},{"id":"Special area of interest/Grass/pattern/1","type":"fill","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",8],"minzoom":14,"layout":{},"paint":{"fill-pattern":"Special area of interest/Small stipple"}},{"id":"Special area of interest/Baseball field or other grounds","type":"fill","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",1],"minzoom":14,"layout":{},"paint":{"fill-color":"#91a761"}},{"id":"Special area of interest/Baseball field or other grounds/pattern","type":"fill","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",1],"minzoom":14,"layout":{},"paint":{"fill-pattern":"Special area of interest/Baseball field or other grounds"}},{"id":"Special area of interest/Groundcover","type":"fill","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",13],"minzoom":14,"layout":{},"paint":{"fill-color":"#97be82"}},{"id":"Special area of interest/Groundcover/pattern","type":"fill","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",13],"minzoom":14,"layout":{},"paint":{"fill-pattern":"Special area of interest/Groundcover","fill-opacity":0.5}},{"id":"Special area of interest/Field or court exterior","type":"fill","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",5],"minzoom":14,"layout":{},"paint":{"fill-color":"#6E866E"}},{"id":"Special area of interest/Football field or court","type":"fill","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",4],"minzoom":14,"layout":{},"paint":{"fill-color":"#7fa57a"}},{"id":"Special area of interest/Football field or court/line","type":"line","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",4],"minzoom":14,"layout":{},"paint":{"line-color":"#e3e0da","line-opacity":0.8,"line-width":{"base":1.2,"stops":[[15,0.5],[20,4]]}}},{"id":"Special area of interest/Hardcourt","type":"fill","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",10],"minzoom":14,"layout":{},"paint":{"fill-color":{"stops":[[15,"#dddbd9"],[22,"#8D8C8A"]]}}},{"id":"Special area of interest/Hardcourt/line","type":"line","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",10],"minzoom":14,"layout":{},"paint":{"line-color":"#e3e0da","line-opacity":0.8,"line-width":{"base":1.2,"stops":[[15,0.5],[20,4]]}}},{"id":"Special area of interest/Mulch or dirt","type":"fill","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",14],"minzoom":14,"layout":{},"paint":{"fill-pattern":"Special area of interest/Mulch or dirt"}},{"id":"Special area of interest/Mulch or dirt/line","type":"line","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",14],"minzoom":14,"layout":{},"paint":{"line-color":"#c9b58b","line-width":{"stops":[[15,1.1],[22,10]]},"line-blur":{"stops":[[15,1],[22,5]]}}},{"id":"Special area of interest/Athletic track","type":"fill","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",0],"minzoom":14,"layout":{},"paint":{"fill-color":{"stops":[[14,"#d49a87"],[17,"#cb7169"]]}}},{"id":"Special area of interest/Athletic track/line","type":"line","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",0],"minzoom":14,"layout":{},"paint":{"line-color":"#e3e0da","line-opacity":0.8,"line-width":{"base":1.2,"stops":[[15,0.5],[20,4]]}}},{"id":"Special area of interest/Sand","type":"fill","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",6],"minzoom":14,"layout":{},"paint":{"fill-pattern":"Special area of interest/Sand"}},{"id":"Special area of interest/Parking/line","type":"line","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",15],"minzoom":15,"layout":{},"paint":{"line-color":{"stops":[[15,"#d1cfcd"],[22,"#7c7b79"]]},"line-opacity":0.8,"line-width":{"stops":[[15,1.1],[22,10]]},"line-blur":{"stops":[[15,1],[22,5]]}}},{"id":"Special area of interest/Parking","type":"fill","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",15],"minzoom":15,"layout":{},"paint":{"fill-color":{"stops":[[15,"#dddbd9"],[22,"#8D8C8A"]]}}},{"id":"Special area of interest/Parking/stipple","type":"fill","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",15],"minzoom":15,"layout":{},"paint":{"fill-pattern":"Special area of interest/Small stipple"}},{"id":"Special area of interest/Rock or gravel","type":"fill","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",16],"minzoom":14,"layout":{},"paint":{"fill-pattern":"Special area of interest/Rock or gravel"}},{"id":"Water line small scale","type":"line","source":"esri","source-layer":"Water line small scale","minzoom":1,"maxzoom":5,"layout":{"line-join":"round"},"paint":{"line-color":{"stops":[[1,"#B7D7D9"],[10.6,"#6BC4F0"]]},"line-width":{"base":1.2,"stops":[[1,0.5],[5,0.5]]}}},{"id":"Water line medium scale","type":"line","source":"esri","source-layer":"Water line medium scale","minzoom":5,"maxzoom":7,"layout":{"line-join":"round"},"paint":{"line-color":{"stops":[[1,"#B7D7D9"],[10.6,"#6BC4F0"]]},"line-width":{"base":1.2,"stops":[[5,0.5],[7,0.7]]}}},{"id":"Water line large scale","type":"line","source":"esri","source-layer":"Water line large scale","minzoom":7,"maxzoom":11,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[1,"#B7D7D9"],[10.6,"#6BC4F0"]]},"line-width":{"base":1.2,"stops":[[7,0.5],[11,0.7]]}}},{"id":"Water line/Waterfall","type":"line","source":"esri","source-layer":"Water line","filter":["==","_symbol",5],"minzoom":11,"layout":{"line-join":"round"},"paint":{"line-color":"#6BC4F0","line-width":0.8,"line-dasharray":[5,5]}},{"id":"Water line/Dam or weir","type":"line","source":"esri","source-layer":"Water line","filter":["==","_symbol",2],"minzoom":11,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":"#afafaf","line-width":{"base":1.2,"stops":[[11,0.7],[14,0.7],[17,2]]}}},{"id":"Water line/Levee/1","type":"line","source":"esri","source-layer":"Water line","filter":["==","_symbol",3],"minzoom":11,"layout":{"line-join":"round"},"paint":{"line-color":"#c3c3c3","line-width":{"base":1.2,"stops":[[11,0.7],[14,0.7],[20,2.5]]}}},{"id":"Water line/Levee/0","type":"symbol","source":"esri","source-layer":"Water line","filter":["==","_symbol",3],"minzoom":13,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"icon-image":"Water line/Levee/0","symbol-spacing":13.3,"icon-rotation-alignment":"map","icon-allow-overlap":true,"icon-padding":1},"paint":{}},{"id":"Water line/Canal or ditch","type":"line","source":"esri","source-layer":"Water line","filter":["==","_symbol",1],"minzoom":11,"layout":{"line-cap":"round"},"paint":{"line-color":"#6BC4F0","line-width":{"base":1.2,"stops":[[11,0.7],[14,0.7],[17,2]]}}},{"id":"Water line/Stream or river intermittent","type":"line","source":"esri","source-layer":"Water line","filter":["==","_symbol",4],"minzoom":11,"layout":{},"paint":{"line-color":"#6BC4F0","line-dasharray":[7,3],"line-width":{"base":1.2,"stops":[[11,0.7],[14,0.7],[17,2]]}}},{"id":"Water line/Stream or river","type":"line","source":"esri","source-layer":"Water line","filter":["==","_symbol",0],"minzoom":11,"layout":{"line-cap":"round"},"paint":{"line-color":"#6BC4F0","line-width":{"base":1.2,"stops":[[11,0.7],[14,0.7],[17,2]]}}},{"id":"Marine area/1","type":"fill","source":"esri","source-layer":"Marine area","minzoom":0,"layout":{},"paint":{"fill-color":{"stops":[[5,"#53B9EA"],[10.6,"#6BC4F0"]]},"fill-antialias":false}},{"id":"Bathymetry/depth 2 (shallow water)","type":"fill","source":"esri","source-layer":"Bathymetry","filter":["==","_symbol",0],"maxzoom":11,"layout":{},"paint":{"fill-color":{"stops":[[5,"#5BBDEC"],[10.6,"#6BC4F0"]]},"fill-antialias":false}},{"id":"Bathymetry/depth 3","type":"fill","source":"esri","source-layer":"Bathymetry","filter":["==","_symbol",1],"maxzoom":11,"layout":{},"paint":{"fill-color":{"stops":[[5,"#63C0EE"],[10.6,"#6BC4F0"]]},"fill-antialias":false}},{"id":"Bathymetry/depth 4","type":"fill","source":"esri","source-layer":"Bathymetry","filter":["==","_symbol",2],"maxzoom":11,"layout":{},"paint":{"fill-color":{"stops":[[5,"#6BC4F0"],[10.6,"#6BC4F0"]]},"fill-antialias":false}},{"id":"Bathymetry/depth 5","type":"fill","source":"esri","source-layer":"Bathymetry","filter":["==","_symbol",3],"maxzoom":11,"layout":{},"paint":{"fill-color":{"stops":[[5,"#72C8F1"],[10.6,"#6BC4F0"]]},"fill-antialias":false}},{"id":"Bathymetry/depth 6","type":"fill","source":"esri","source-layer":"Bathymetry","filter":["==","_symbol",4],"maxzoom":11,"layout":{},"paint":{"fill-color":{"stops":[[5,"#7ACBF3"],[10.6,"#6BC4F0"]]},"fill-antialias":false}},{"id":"Bathymetry/depth 7 (deep water)","type":"fill","source":"esri","source-layer":"Bathymetry","filter":["==","_symbol",5],"maxzoom":11,"layout":{},"paint":{"fill-color":{"stops":[[5,"#82CFF5"],[10.6,"#6BC4F0"]]},"fill-antialias":false}},{"id":"Water area small scale","type":"fill","source":"esri","source-layer":"Water area small scale","minzoom":1,"maxzoom":5,"layout":{},"paint":{"fill-color":{"stops":[[5,"#53B9EA"],[10.6,"#6BC4F0"]]},"fill-outline-color":"#53B9EA"}},{"id":"Water area medium scale/Lake intermittent","type":"fill","source":"esri","source-layer":"Water area medium scale","filter":["==","_symbol",1],"minzoom":5,"maxzoom":7,"layout":{},"paint":{"fill-pattern":"Water area/Lake or river intermittent"}},{"id":"Water area medium scale/Lake or river","type":"fill","source":"esri","source-layer":"Water area medium scale","filter":["==","_symbol",0],"minzoom":5,"maxzoom":7,"layout":{},"paint":{"fill-color":{"stops":[[5,"#53B9EA"],[10.6,"#6BC4F0"]]},"fill-outline-color":"#53B9EA"}},{"id":"Water area large scale/Lake intermittent","type":"fill","source":"esri","source-layer":"Water area large scale","filter":["==","_symbol",1],"minzoom":7,"maxzoom":11,"layout":{},"paint":{"fill-pattern":"Water area/Lake or river intermittent"}},{"id":"Water area large scale/Lake or river","type":"fill","source":"esri","source-layer":"Water area large scale","filter":["==","_symbol",0],"minzoom":7,"maxzoom":11,"layout":{},"paint":{"fill-color":{"stops":[[5,"#53B9EA"],[10.6,"#6BC4F0"]]},"fill-outline-color":{"stops":[[8,"#53B9EA"],[9,"#6BC4F0"]]}}},{"id":"Water area/Lake, river or bay","type":"fill","source":"esri","source-layer":"Water area","filter":["==","_symbol",7],"minzoom":11,"layout":{},"paint":{"fill-color":"#6BC4F0","fill-outline-color":"#6BC4F0"}},{"id":"Water area/Lake or river intermittent","type":"fill","source":"esri","source-layer":"Water area","filter":["==","_symbol",6],"minzoom":11,"layout":{},"paint":{"fill-pattern":"Water area/Lake or river intermittent"}},{"id":"Water area/Inundated area","type":"fill","source":"esri","source-layer":"Water area","filter":["==","_symbol",4],"minzoom":11,"layout":{},"paint":{"fill-pattern":"Water area/Inundated area"}},{"id":"Water area/Swamp or marsh","type":"fill","source":"esri","source-layer":"Water area","filter":["==","_symbol",3],"minzoom":11,"layout":{},"paint":{"fill-pattern":"Water area/Swamp or marsh","fill-opacity":0.45}},{"id":"Water area/Playa","type":"fill","source":"esri","source-layer":"Water area","filter":["==","_symbol",1],"minzoom":11,"layout":{},"paint":{"fill-pattern":"Water area/Playa"}},{"id":"Water area/Ice mass","type":"fill","source":"esri","source-layer":"Water area","filter":["==","_symbol",2],"minzoom":11,"layout":{},"paint":{"fill-pattern":"Water area/Ice mass","fill-opacity":0.5}},{"id":"Water area/Dam or weir","type":"fill","source":"esri","source-layer":"Water area","filter":["==","_symbol",5],"minzoom":11,"layout":{},"paint":{"fill-color":"#e5e5dd","fill-outline-color":"#d9d9d1"}},{"id":"Special area of interest/Bike, walk or pedestrian/line","type":"line","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",2],"minzoom":15,"layout":{},"paint":{"line-color":"#bcb7ae","line-width":{"stops":[[15,1.1],[22,10]]},"line-blur":{"stops":[[15,1],[22,5]]}}},{"id":"Special area of interest/Bike, walk or pedestrian","type":"fill","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",2],"minzoom":15,"layout":{},"paint":{"fill-color":"#E8E7E5","fill-outline-color":"#dbd9d5"}},{"id":"Special area of interest/Bike, walk or pedestrian/pattern","type":"fill","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",2],"minzoom":15,"layout":{},"paint":{"fill-pattern":"Special area of interest/Small stipple"}},{"id":"Special area of interest/Water","type":"fill","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",7],"minzoom":14,"layout":{},"paint":{"fill-color":"#6BC4F0"}},{"id":"Special area of interest/Water/line","type":"line","source":"esri","source-layer":"Special area of interest","filter":["==","_symbol",7],"minzoom":14,"layout":{},"paint":{"line-color":"#5db6e2","line-width":{"stops":[[15,1.1],[22,7]]},"line-blur":{"stops":[[15,1],[22,3.5]]}}},{"id":"Ferry/Ferry","type":"line","source":"esri","source-layer":"Ferry","filter":["all",["==","_symbol",0],["!in","Viz",2]],"minzoom":11,"layout":{"line-join":"round"},"paint":{"line-color":"#c1e1f0","line-opacity":0.8,"line-width":{"base":1.2,"stops":[[11,1.3],[14,1.5],[17,1.5]]},"line-dasharray":[3,4]}},{"id":"Railroad/2","type":"line","source":"esri","source-layer":"Railroad","minzoom":11,"layout":{"line-join":"round"},"paint":{"line-color":{"stops":[[11,"#dedcd9"],[17,"#B8B1AA"]]},"line-width":{"base":1.2,"stops":[[11,2.5],[14,2.5],[17,4]]}}},{"id":"Railroad/1","type":"line","source":"esri","source-layer":"Railroad","minzoom":11,"layout":{"line-join":"round"},"paint":{"line-dasharray":[6,7.5],"line-color":{"stops":[[11,"#E3E0D7"],[17,"#DBD8CB"]]},"line-width":{"base":1.2,"stops":[[11,0.75],[15,0.75],[17,2]]}}},{"id":"Ferry/Rail ferry/2","type":"line","source":"esri","source-layer":"Ferry","filter":["all",["==","_symbol",1],["!in","Viz",2]],"minzoom":11,"layout":{"line-join":"round"},"paint":{"line-color":{"stops":[[11,"#dedcd9"],[17,"#B8B1AA"]]},"line-width":{"base":1.2,"stops":[[11,2.5],[14,2.5],[17,4]]}}},{"id":"Ferry/Rail ferry/1","type":"line","source":"esri","source-layer":"Ferry","filter":["all",["==","_symbol",1],["!in","Viz",2]],"minzoom":11,"layout":{"line-join":"round"},"paint":{"line-dasharray":[6,7.5],"line-color":{"stops":[[11,"#E3E0D7"],[17,"#DBD8CB"]]},"line-width":{"base":1.2,"stops":[[11,0.75],[15,0.75],[17,2]]}}},{"id":"Special area of interest line/Sports field","type":"line","source":"esri","source-layer":"Special area of interest line","filter":["==","_symbol",6],"minzoom":15,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":"#e3e0da","line-opacity":0.8,"line-width":{"base":1.2,"stops":[[15,0.5],[20,4]]}}},{"id":"Road/4WD/1","type":"line","source":"esri","source-layer":"Road","filter":["all",["==","_symbol",10],["!in","Viz",2]],"minzoom":13,"layout":{"line-join":"round"},"paint":{"line-color":"#e3e1dc","line-dasharray":[2,1],"line-width":{"base":1.2,"stops":[[11,1.5],[14,2.3],[17,8.3],[20,50]]}}},{"id":"Road/Minor, ramp or traffic circle/1","type":"line","source":"esri","source-layer":"Road","filter":["all",["==","_symbol",6],["!in","Viz",2]],"minzoom":9,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[9,"#E2DFD6"],[10,"#dedbd1"],[12,"#e3e1dc"]]},"line-width":{"base":1.2,"stops":[[9.9,1],[14,4],[16,11.5],[17,19],[20,58]]}}},{"id":"Road/Minor/1","type":"line","source":"esri","source-layer":"Road","filter":["all",["==","_symbol",5],["!in","Viz",2]],"minzoom":9,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[9,"#E2DFD6"],[10,"#dedbd1"],[12,"#e3e1dc"]]},"line-width":{"base":1.2,"stops":[[9,1],[10,3.3],[14,5.5],[16,11.5],[17,19],[20,58]]}}},{"id":"Road/Major, ramp or traffic circle/1","type":"line","source":"esri","source-layer":"Road","filter":["all",["==","_symbol",4],["!in","Viz",2]],"minzoom":9,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[9,"#dedbd1"],[12,"#e3e1dc"]]},"line-width":{"base":1.2,"stops":[[9,3.3],[14,7.3],[16,12.3],[17,22],[20,63]]}}},{"id":"Road/Major/1","type":"line","source":"esri","source-layer":"Road","filter":["all",["==","_symbol",3],["!in","Viz",2]],"minzoom":8,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[8,"#dedbd1"],[12,"#e3e1dc"]]},"line-width":{"base":1,"stops":[[8,3.3],[14,7.3],[16,12.3],[17,22],[20,63]]}}},{"id":"Road/Service/1","type":"line","source":"esri","source-layer":"Road","filter":["all",["==","_symbol",8],["!in","Viz",2]],"minzoom":13,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":"#e3e1dc","line-width":{"base":1.2,"stops":[[11,2],[14,2.5],[17,10.3],[20,45]]}}},{"id":"Trail or path/1","type":"line","source":"esri","source-layer":"Trail or path","minzoom":15,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[15,"#dddbd5"],[17,"#e3e1dc"]]},"line-width":{"base":1.2,"stops":[[15,2.5],[16,3],[17,5],[20,20],[22,31]]}}},{"id":"Road/Pedestrian/1","type":"line","source":"esri","source-layer":"Road","filter":["all",["==","_symbol",9],["!in","Viz",2]],"minzoom":15,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[15,"#dddbd5"],[17,"#e3e1dc"]]},"line-width":{"base":1.2,"stops":[[15,2.5],[16,3],[17,5],[20,20],[22,31]]}}},{"id":"Road/Local/1","type":"line","source":"esri","source-layer":"Road","filter":["all",["==","_symbol",7],["!in","Viz",2]],"minzoom":12,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":"#e3e1dc","line-width":{"base":1.4,"stops":[[11,1.1],[14,3],[16,8],[17,16],[20,48]]}}},{"id":"Trail or path/0","type":"line","source":"esri","source-layer":"Trail or path","minzoom":15,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[15,"#f8f8f7"],[18,"#ffffff"]]},"line-dasharray":{"stops":[[15,[3,3]],[17,[2,2]]]},"line-width":{"base":1.2,"stops":[[15,1.3],[17,2.5]]}}},{"id":"Road/Pedestrian/0","type":"line","source":"esri","source-layer":"Road","filter":["all",["==","_symbol",9],["!in","Viz",2]],"minzoom":15,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[15,"#f8f8f7"],[18,"#ffffff"]]},"line-dasharray":{"stops":[[15,[3,3]],[17,[2,2]]]},"line-width":{"base":1.2,"stops":[[15,1.3],[17,2.5]]}}},{"id":"Road/4WD/0","type":"line","source":"esri","source-layer":"Road","filter":["all",["==","_symbol",10],["!in","Viz",2]],"minzoom":13,"layout":{"line-join":"round"},"paint":{"line-color":"#FFFFFF","line-width":{"base":1.2,"stops":[[11,0.75],[14,1.3],[17,7.3],[20,48]]}}},{"id":"Road/Service/0","type":"line","source":"esri","source-layer":"Road","filter":["all",["==","_symbol",8],["!in","Viz",2]],"minzoom":13,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":"#FFFFFF","line-width":{"base":1.2,"stops":[[11,0.75],[14,1.3],[17,8.3],[20,43]]}}},{"id":"Road/Local/0","type":"line","source":"esri","source-layer":"Road","filter":["all",["==","_symbol",7],["!in","Viz",2]],"minzoom":12,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[12,"#fcfbf9"],[13,"#ffffff"]]},"line-width":{"base":1.4,"stops":[[11,1.1],[14,2],[16,6],[17,14],[20,45]]}}},{"id":"Road/Minor, ramp or traffic circle/0","type":"line","source":"esri","source-layer":"Road","filter":["all",["==","_symbol",6],["!in","Viz",2]],"minzoom":9,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[9,"#f0efea"],[13,"#ffffff"]]},"line-width":{"base":1.2,"stops":[[9,0.75],[14,2],[16,9.5],[17,17],[20,55]]}}},{"id":"Road/Minor/0","type":"line","source":"esri","source-layer":"Road","filter":["all",["==","_symbol",5],["!in","Viz",2]],"minzoom":9,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[9,"#f0efea"],[13,"#ffffff"]]},"line-width":{"base":1.2,"stops":[[9,1.3],[14,4.5],[16,9.5],[17,17],[20,55]]}}},{"id":"Road/Major, ramp or traffic circle/0","type":"line","source":"esri","source-layer":"Road","filter":["all",["==","_symbol",4],["!in","Viz",2]],"minzoom":9,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[9,"#f0efea"],[13,"#ffffff"]]},"line-width":{"base":1.2,"stops":[[9,1.3],[14,5.3],[16,10.3],[17,20],[20,60]]}}},{"id":"Road/Major/0","type":"line","source":"esri","source-layer":"Road","filter":["all",["==","_symbol",3],["!in","Viz",2]],"minzoom":8,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[9,"#f0efea"],[13,"#ffffff"]]},"line-width":{"base":1.2,"stops":[[8,1.3],[14,5.3],[16,10.3],[17,20],[20,60]]}}},{"id":"Road/Freeway Motorway, ramp or traffic circle/1","type":"line","source":"esri","source-layer":"Road","filter":["all",["==","_symbol",2],["!in","Viz",2]],"minzoom":6,"layout":{"line-join":"round","line-cap":"round"},"paint":{"line-color":"#ffffff","line-width":{"base":1.2,"stops":[[9,0.3],[14,8.3],[16,14.3],[17,30],[20,52]]}}},{"id":"Road/Highway/1","type":"line","source":"esri","source-layer":"Road","filter":["all",["==","_symbol",1],["!in","Viz",2]],"minzoom":6,"layout":{"line-join":"round"},"paint":{"line-color":"#ffffff","line-width":{"base":1.2,"stops":[[6,0.3],[14,8.3],[16,14.3],[17,30],[20,52]]}}},{"id":"Road/Freeway Motorway/1","type":"line","source":"esri","source-layer":"Road","filter":["all",["==","_symbol",0],["!in","Viz",2]],"minzoom":5,"layout":{"line-join":"round"},"paint":{"line-color":"#ffffff","line-width":{"base":1.2,"stops":[[5,0.3],[14,8.3],[16,14.3],[17,30],[20,52]]}}},{"id":"Road/Freeway Motorway, ramp or traffic circle/0","type":"line","source":"esri","source-layer":"Road","filter":["all",["==","_symbol",2],["!in","Viz",2]],"minzoom":6,"layout":{"line-join":"round","line-cap":"round"},"paint":{"line-color":{"stops":[[6,"#F6CA91"],[8,"#F6CA91"],[12,"#F6CA91"]]},"line-width":{"base":1.2,"stops":[[9,0.7],[14,6.3],[16,12.3],[17,28],[20,50]]}}},{"id":"Road/Highway/0","type":"line","source":"esri","source-layer":"Road","filter":["all",["==","_symbol",1],["!in","Viz",2]],"minzoom":6,"layout":{"line-join":"round"},"paint":{"line-color":{"stops":[[6,"#F6CA91"],[8,"#F6CA91"],[12,"#F6CA91"]]},"line-width":{"base":1.2,"stops":[[6,0.7],[14,6.3],[16,12.3],[17,28],[20,50]]}}},{"id":"Road/Freeway Motorway/0","type":"line","source":"esri","source-layer":"Road","filter":["all",["==","_symbol",0],["!in","Viz",2]],"minzoom":5,"layout":{"line-join":"round"},"paint":{"line-color":"#F6CA91","line-width":{"base":1.2,"stops":[[5,0.7],[14,6.3],[16,12.3],[17,28],[20,50]]}}},{"id":"Special area of interest line/Dock or pier","type":"line","source":"esri","source-layer":"Special area of interest line","filter":["==","_symbol",0],"minzoom":15,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":"#E8E7E5","line-width":{"base":1.2,"stops":[[15,0.5],[20,4]]}}},{"id":"Special area of interest line/Fence (chain link)/1","type":"line","source":"esri","source-layer":"Special area of interest line","filter":["==","_symbol",1],"minzoom":16,"layout":{"line-join":"round"},"paint":{"line-color":"#686868","line-opacity":0.5,"line-width":{"base":1.2,"stops":[[16,0.7],[20,3]]}}},{"id":"Special area of interest line/Fence (chain link)/0","type":"symbol","source":"esri","source-layer":"Special area of interest line","filter":["==","_symbol",1],"minzoom":16,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"icon-image":"Special area of interest line/Fence (chain link)/0","symbol-spacing":{"stops":[[16,7],[22,20]]},"icon-rotation-alignment":"map","icon-allow-overlap":true,"icon-padding":1,"icon-size":{"stops":[[16,0.25],[22,1]]}},"paint":{}},{"id":"Special area of interest line/Fence (metal)/1","type":"line","source":"esri","source-layer":"Special area of interest line","filter":["==","_symbol",2],"minzoom":16,"layout":{"line-join":"round"},"paint":{"line-color":"#686868","line-opacity":0.5,"line-width":{"base":1.2,"stops":[[16,0.7],[20,3]]}}},{"id":"Special area of interest line/Fence (metal)/0","type":"symbol","source":"esri","source-layer":"Special area of interest line","filter":["==","_symbol",2],"minzoom":16,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"icon-image":"Special area of interest line/Fence (metal)/0","symbol-spacing":{"stops":[[16,7],[22,20]]},"icon-rotation-alignment":"map","icon-allow-overlap":true,"icon-padding":1,"icon-size":{"stops":[[16,0.2],[22,0.9]]}},"paint":{}},{"id":"Special area of interest line/Fence (wood)/1","type":"line","source":"esri","source-layer":"Special area of interest line","filter":["==","_symbol",3],"minzoom":16,"layout":{"line-join":"round"},"paint":{"line-color":"#CDAA66","line-opacity":0.5,"line-width":{"base":1.2,"stops":[[16,0.7],[20,3]]}}},{"id":"Special area of interest line/Fence (wood)/0","type":"symbol","source":"esri","source-layer":"Special area of interest line","filter":["==","_symbol",3],"minzoom":16,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"icon-image":"Special area of interest line/Fence (wood)/0","symbol-spacing":{"stops":[[16,7],[22,20]]},"icon-rotation-alignment":"map","icon-allow-overlap":true,"icon-padding":1,"icon-size":{"stops":[[16,0.2],[22,0.9]]}},"paint":{}},{"id":"Special area of interest line/Gate/2","type":"line","source":"esri","source-layer":"Special area of interest line","filter":["==","_symbol",4],"minzoom":16,"layout":{"line-join":"round"},"paint":{"line-color":"#686868","line-width":{"base":1.2,"stops":[[16,2],[20,7]]}}},{"id":"Special area of interest line/Gate/1","type":"line","source":"esri","source-layer":"Special area of interest line","filter":["==","_symbol",4],"minzoom":16,"layout":{"line-join":"round"},"paint":{"line-color":"#E1E1E1","line-width":{"base":1.2,"stops":[[16,1],[20,5]]}}},{"id":"Special area of interest line/Gate/0","type":"line","source":"esri","source-layer":"Special area of interest line","filter":["==","_symbol",4],"minzoom":16,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":"#686868","line-dasharray":[5,15],"line-width":0.7}},{"id":"Special area of interest line/Wall/2","type":"line","source":"esri","source-layer":"Special area of interest line","filter":["==","_symbol",7],"minzoom":16,"layout":{"line-join":"round"},"paint":{"line-color":"#BCB7AE","line-width":{"base":1.2,"stops":[[16,4],[20,7]]}}},{"id":"Special area of interest line/Wall/1","type":"line","source":"esri","source-layer":"Special area of interest line","filter":["==","_symbol",7],"minzoom":16,"layout":{"line-join":"round"},"paint":{"line-color":"#e3e3e1","line-width":{"base":1.2,"stops":[[16,2],[20,5]]}}},{"id":"Special area of interest line/Wall/0","type":"line","source":"esri","source-layer":"Special area of interest line","filter":["==","_symbol",7],"minzoom":16,"layout":{"line-join":"round"},"paint":{"line-color":"#BCB7AE","line-width":0.5}},{"id":"Building/1","type":"fill","source":"esri","source-layer":"Building","minzoom":18,"layout":{},"paint":{"fill-color":"#6f6c68","fill-opacity":0.15,"fill-translate":{"stops":[[18,[2,2]],[20,[10,10]]]},"fill-translate-anchor":"viewport"}},{"id":"Building/General","type":"fill","source":"esri","source-layer":"Building","minzoom":15,"layout":{},"paint":{"fill-color":{"stops":[[15,"#ebe7e2"],[20,"#D1C4BA"]]}}},{"id":"Building/pattern","type":"fill","source":"esri","source-layer":"Building","minzoom":16,"layout":{},"paint":{"fill-pattern":"Building","fill-opacity":0.15}},{"id":"Building/line","type":"line","source":"esri","source-layer":"Building","minzoom":15,"layout":{},"paint":{"line-color":{"stops":[[15,"#dbd4cb"],[22,"#ac9c92"]]},"line-width":{"stops":[[15,0.5],[20,1.5]]}}},{"id":"Special area of interest line/Parking lot","type":"line","source":"esri","source-layer":"Special area of interest line","filter":["==","_symbol",5],"minzoom":15,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":"#E8E7E5","line-width":{"base":1.2,"stops":[[15,0.5],[20,4]]}}},{"id":"Road tunnel/4WD/1","type":"line","source":"esri","source-layer":"Road tunnel","filter":["all",["==","_symbol",10],["!in","Viz",2]],"minzoom":13,"layout":{"line-join":"round"},"paint":{"line-color":"#e3e1dc","line-dasharray":[2,1],"line-opacity":0.5,"line-width":{"base":1.2,"stops":[[11,1.5],[14,2.3],[17,8.3],[20,49]]}}},{"id":"Road tunnel/Minor, ramp or traffic circle/1","type":"line","source":"esri","source-layer":"Road tunnel","filter":["all",["==","_symbol",6],["!in","Viz",2]],"minzoom":9,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[9,"#E2DFD6"],[10,"#dedbd1"],[12,"#e3e1dc"]]},"line-opacity":0.5,"line-width":{"base":1.2,"stops":[[9.9,1],[14,4],[16,11.5],[17,19],[20,57]]}}},{"id":"Road tunnel/Minor/1","type":"line","source":"esri","source-layer":"Road tunnel","filter":["all",["==","_symbol",5],["!in","Viz",2]],"minzoom":9,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[9,"#E2DFD6"],[10,"#dedbd1"],[12,"#e3e1dc"]]},"line-opacity":0.5,"line-width":{"base":1.2,"stops":[[9,1],[10,3.3],[14,5.5],[16,11.5],[17,19],[20,57]]}}},{"id":"Road tunnel/Major, ramp or traffic circle/1","type":"line","source":"esri","source-layer":"Road tunnel","filter":["all",["==","_symbol",4],["!in","Viz",2]],"minzoom":9,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[9,"#dedbd1"],[12,"#e3e1dc"]]},"line-opacity":0.5,"line-width":{"base":1.2,"stops":[[9,3.3],[14,7.3],[16,12.3],[17,22],[20,62]]}}},{"id":"Road tunnel/Major/1","type":"line","source":"esri","source-layer":"Road tunnel","filter":["all",["==","_symbol",3],["!in","Viz",2]],"minzoom":8,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[8,"#dedbd1"],[12,"#e3e1dc"]]},"line-opacity":0.5,"line-width":{"base":1,"stops":[[8,3.3],[14,7.3],[16,12.3],[17,22],[20,62]]}}},{"id":"Road tunnel/Pedestrian/0","type":"line","source":"esri","source-layer":"Road tunnel","filter":["all",["==","_symbol",9],["!in","Viz",2]],"minzoom":15,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":"#FFFFFF","line-opacity":0.5,"line-width":{"base":1.2,"stops":[[14,1.6],[16,2],[17,8],[20,45]]}}},{"id":"Road tunnel/4WD/0","type":"line","source":"esri","source-layer":"Road tunnel","filter":["all",["==","_symbol",10],["!in","Viz",2]],"minzoom":13,"layout":{"line-join":"round"},"paint":{"line-color":"#FFFFFF","line-opacity":0.5,"line-width":{"base":1.2,"stops":[[11,0.75],[14,1.3],[17,7.3],[20,48]]}}},{"id":"Road tunnel/Service/0","type":"line","source":"esri","source-layer":"Road tunnel","filter":["all",["==","_symbol",8],["!in","Viz",2]],"minzoom":13,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":"#FFFFFF","line-opacity":0.5,"line-width":{"base":1.2,"stops":[[11,0.75],[14,1.3],[17,8.3],[20,48]]}}},{"id":"Road tunnel/Local/0","type":"line","source":"esri","source-layer":"Road tunnel","filter":["all",["==","_symbol",7],["!in","Viz",2]],"minzoom":12,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[12,"#fcfbf9"],[13,"#ffffff"]]},"line-opacity":0.5,"line-width":{"base":1.4,"stops":[[11,1.1],[14,2],[16,6],[17,14],[20,55]]}}},{"id":"Road tunnel/Minor, ramp or traffic circle/0","type":"line","source":"esri","source-layer":"Road tunnel","filter":["all",["==","_symbol",6],["!in","Viz",2]],"minzoom":9,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[9,"#f0efea"],[13,"#ffffff"]]},"line-opacity":0.5,"line-width":{"base":1.2,"stops":[[9,0.75],[14,2],[16,9.5],[17,17],[20,55]]}}},{"id":"Road tunnel/Minor/0","type":"line","source":"esri","source-layer":"Road tunnel","filter":["all",["==","_symbol",5],["!in","Viz",2]],"minzoom":9,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[9,"#f0efea"],[13,"#ffffff"]]},"line-opacity":0.5,"line-width":{"base":1.2,"stops":[[9,1.3],[14,4.5],[16,9.5],[17,17],[20,55]]}}},{"id":"Road tunnel/Major, ramp or traffic circle/0","type":"line","source":"esri","source-layer":"Road tunnel","filter":["all",["==","_symbol",4],["!in","Viz",2]],"minzoom":9,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[9,"#f0efea"],[13,"#ffffff"]]},"line-opacity":0.5,"line-width":{"base":1.2,"stops":[[9,1.3],[14,5.3],[16,10.3],[17,20],[20,60]]}}},{"id":"Road tunnel/Major/0","type":"line","source":"esri","source-layer":"Road tunnel","filter":["all",["==","_symbol",3],["!in","Viz",2]],"minzoom":8,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[9,"#f0efea"],[13,"#ffffff"]]},"line-opacity":0.5,"line-width":{"base":1.2,"stops":[[8,1.3],[14,5.3],[16,10.3],[17,20],[20,60]]}}},{"id":"Road tunnel/Freeway Motorway, ramp or traffic circle/1","type":"line","source":"esri","source-layer":"Road tunnel","filter":["all",["==","_symbol",2],["!in","Viz",2]],"minzoom":6,"layout":{"line-join":"round","line-cap":"round"},"paint":{"line-color":"#ffffff","line-opacity":0.5,"line-width":{"base":1.2,"stops":[[9,0.3],[14,8.3],[16,14.3],[17,30],[20,52]]}}},{"id":"Road tunnel/Highway/1","type":"line","source":"esri","source-layer":"Road tunnel","filter":["all",["==","_symbol",1],["!in","Viz",2]],"minzoom":6,"layout":{"line-join":"round"},"paint":{"line-color":"#ffffff","line-opacity":0.5,"line-width":{"base":1.2,"stops":[[6,0.3],[14,8.3],[16,14.3],[17,30],[20,52]]}}},{"id":"Road tunnel/Freeway Motorway/1","type":"line","source":"esri","source-layer":"Road tunnel","filter":["all",["==","_symbol",0],["!in","Viz",2]],"minzoom":5,"layout":{"line-join":"round"},"paint":{"line-color":"#ffffff","line-opacity":0.5,"line-width":{"base":1.2,"stops":[[5,0.3],[14,8.3],[16,14.3],[17,30],[20,52]]}}},{"id":"Road tunnel/Freeway Motorway, ramp or traffic circle/0","type":"line","source":"esri","source-layer":"Road tunnel","filter":["all",["==","_symbol",2],["!in","Viz",2]],"minzoom":6,"layout":{"line-join":"round","line-cap":"round"},"paint":{"line-color":{"stops":[[6,"#F6CA91"],[8,"#F6CA91"],[12,"#F6CA91"]]},"line-opacity":0.5,"line-width":{"base":1.2,"stops":[[9,0.7],[14,6.3],[16,12.3],[17,28],[20,50]]}}},{"id":"Road tunnel/Highway/0","type":"line","source":"esri","source-layer":"Road tunnel","filter":["all",["==","_symbol",1],["!in","Viz",2]],"minzoom":6,"layout":{"line-join":"round"},"paint":{"line-color":{"stops":[[6,"#F6CA91"],[8,"#F6CA91"],[12,"#F6CA91"]]},"line-opacity":0.5,"line-width":{"base":1.2,"stops":[[6,0.7],[14,6.3],[16,12.3],[17,28],[20,50]]}}},{"id":"Road tunnel/Freeway Motorway/0","type":"line","source":"esri","source-layer":"Road tunnel","filter":["all",["==","_symbol",0],["!in","Viz",2]],"minzoom":5,"layout":{"line-join":"round"},"paint":{"line-color":"#F6CA91","line-opacity":0.5,"line-width":{"base":1.2,"stops":[[5,0.7],[14,6.3],[16,12.3],[17,28],[20,50]]}}},{"id":"Special area of interest/Gutter","type":"fill","source":"esri","source-layer":"Special area of interest","filter":["in","_symbol",9,3],"minzoom":14,"layout":{},"paint":{"fill-color":"#E8E7E5","fill-outline-color":"#bcb7ae"}},{"id":"Boundary line/Disputed admin2","type":"line","source":"esri","source-layer":"Boundary line","filter":["all",["==","_symbol",8],["!in","Viz",2]],"minzoom":9,"layout":{"line-join":"round"},"paint":{"line-color":{"stops":[[1,"#f5f5f5"],[3,"#fafafa"],[9,"#ffffff"]]},"line-width":{"base":1.2,"stops":[[1,0.65],[14,1.3],[17,2.5]]},"line-dasharray":[5,5]}},{"id":"Boundary line/Disputed admin1/1","type":"line","source":"esri","source-layer":"Boundary line","minzoom":3,"filter":["all",["==","_symbol",7],["!in","Viz",2]],"layout":{"line-join":"round"},"paint":{"line-color":"#c6c4b6","line-opacity":0.95,"line-width":{"base":1,"stops":[[4,0.5],[14,7],[17,7]]}}},{"id":"Boundary line/Disputed admin0/1","type":"line","source":"esri","source-layer":"Boundary line","filter":["all",["==","_symbol",6],["!in","Viz",2],["!in","DisputeID",8,16,90,96,0]],"minzoom":1,"layout":{"line-join":"round"},"paint":{"line-color":"#c6c4b6","line-opacity":0.95,"line-width":{"base":1,"stops":[[1,0.5],[14,9.3],[17,9.3]]}}},{"id":"Boundary line/Disputed admin1/0","type":"line","source":"esri","source-layer":"Boundary line","minzoom":3,"filter":["all",["==","_symbol",7],["!in","Viz",2]],"layout":{"line-join":"round"},"paint":{"line-color":{"stops":[[1,"#f5f5f5"],[3,"#fafafa"],[9,"#ffffff"]]},"line-width":{"base":1.2,"stops":[[1,0.65],[14,1.3],[17,2.5]]},"line-dasharray":[5,5]}},{"id":"Boundary line/Disputed admin0/0","type":"line","source":"esri","source-layer":"Boundary line","filter":["all",["==","_symbol",6],["!in","Viz",2],["!in","DisputeID",8,16,90,96,0]],"minzoom":1,"layout":{"line-join":"round"},"paint":{"line-color":{"stops":[[1,"#f5f5f5"],[3,"#fafafa"],[9,"#ffffff"]]},"line-width":{"base":1.2,"stops":[[1,0.65],[14,1.3],[17,2.5]]},"line-dasharray":[5,5]}},{"id":"Boundary line/Admin2/1","type":"line","source":"esri","source-layer":"Boundary line","filter":["all",["==","_symbol",2],["!in","Viz",2]],"minzoom":10,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":"#ede7e0","line-opacity":0.6,"line-width":{"base":1.2,"stops":[[8,2.3],[14,5.5],[17,7.5]]}}},{"id":"Boundary line/Admin1/1","type":"line","source":"esri","source-layer":"Boundary line","filter":["all",["==","_symbol",1],["!in","Viz",2]],"minzoom":3,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[3,"#DEE1CC"],[10,"#d1ceb8"]]},"line-opacity":0.5,"line-width":{"base":1,"stops":[[3,0.5],[14,9],[17,10]]}}},{"id":"Boundary line/Admin0/1","type":"line","source":"esri","source-layer":"Boundary line","filter":["all",["==","_symbol",0],["!in","Viz",2]],"minzoom":1,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":"#d1cfc2","line-width":{"base":1,"stops":[[1,0.5],[14,11.3],[17,12.3]]}}},{"id":"Boundary line/Admin5","type":"line","source":"esri","source-layer":"Boundary line","filter":["all",["==","_symbol",5],["!in","Viz",2]],"minzoom":16,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":"#9C9C9C","line-width":{"base":1.2,"stops":[[14,1],[17,1]]},"line-dasharray":[6,4]}},{"id":"Boundary line/Admin4","type":"line","source":"esri","source-layer":"Boundary line","filter":["all",["==","_symbol",4],["!in","Viz",2]],"minzoom":16,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":"#9C9C9C","line-width":{"base":1.2,"stops":[[14,1],[17,1]]},"line-dasharray":[6,4]}},{"id":"Boundary line/Admin3","type":"line","source":"esri","source-layer":"Boundary line","filter":["all",["==","_symbol",3],["!in","Viz",2]],"minzoom":16,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":"#9C9C9C","line-width":{"base":1.2,"stops":[[14,1],[17,1]]},"line-dasharray":[6,4]}},{"id":"Boundary line/Admin2/0","type":"line","source":"esri","source-layer":"Boundary line","filter":["all",["==","_symbol",2],["!in","Viz",2]],"minzoom":9,"layout":{"line-join":"round"},"paint":{"line-color":"#888577","line-dasharray":[7,5],"line-width":{"base":1.2,"stops":[[8,0.5],[14,1]]}}},{"id":"Boundary line/Admin1/0","type":"line","source":"esri","source-layer":"Boundary line","filter":["all",["==","_symbol",1],["!in","Viz",2]],"minzoom":3,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[3,"#c1bdb5"],[4,"#9b9382"]]},"line-width":{"base":1,"stops":[[4,0.5],[14,1.3],[17,1.3]]}}},{"id":"Boundary line/Admin0/0","type":"line","source":"esri","source-layer":"Boundary line","filter":["all",["==","_symbol",0],["!in","Viz",2]],"minzoom":1,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[1,"#b9b9b9"],[7,"#434242"]]},"line-width":{"base":1.2,"stops":[[1,0.5],[14,1.3],[17,2]]}}},{"id":"Coastline","type":"line","source":"esri","source-layer":"Coastline","maxzoom":9,"layout":{"line-cap":"round","line-join":"round"},"paint":{"line-color":{"stops":[[0,"#53B9EA"],[7,"#53B9EA"],[9,"#6BC4F0"]]},"line-width":{"base":1.2,"stops":[[0,0.5],[9,1.3]]}}},{"id":"Tree/Elm","type":"symbol","source":"esri","source-layer":"Tree","filter":["==","_symbol",0],"minzoom":16,"layout":{"symbol-avoid-edges":true,"icon-image":"Tree/Elm","icon-allow-overlap":true,"icon-padding":1,"icon-size":{"stops":[[16,0.07],[17,0.18],[18,0.3],[20,1]]}},"paint":{"icon-opacity":{"stops":[[16,0.4],[17,0.6],[20,0.9]]}}},{"id":"Tree/Eucalyptus","type":"symbol","source":"esri","source-layer":"Tree","filter":["==","_symbol",1],"minzoom":16,"layout":{"symbol-avoid-edges":true,"icon-image":"Tree/Eucalyptus","icon-allow-overlap":true,"icon-padding":1,"icon-size":{"stops":[[16,0.07],[17,0.18],[18,0.3],[20,1]]}},"paint":{"icon-opacity":{"stops":[[16,0.4],[17,0.6],[20,0.9]]}}},{"id":"Tree/Maple","type":"symbol","source":"esri","source-layer":"Tree","filter":["==","_symbol",2],"minzoom":16,"layout":{"symbol-avoid-edges":true,"icon-image":"Tree/Maple","icon-allow-overlap":true,"icon-padding":1,"icon-size":{"stops":[[16,0.07],[17,0.18],[18,0.3],[20,1]]}},"paint":{"icon-opacity":{"stops":[[16,0.4],[17,0.6],[20,0.9]]}}},{"id":"Tree/Oak","type":"symbol","source":"esri","source-layer":"Tree","filter":["==","_symbol",3],"minzoom":16,"layout":{"symbol-avoid-edges":true,"icon-image":"Tree/Oak","icon-allow-overlap":true,"icon-padding":1,"icon-size":{"stops":[[16,0.07],[17,0.18],[18,0.3],[20,1]]}},"paint":{"icon-opacity":{"stops":[[16,0.4],[17,0.6],[20,0.9]]}}},{"id":"Tree/Orange","type":"symbol","source":"esri","source-layer":"Tree","filter":["==","_symbol",4],"minzoom":16,"layout":{"symbol-avoid-edges":true,"icon-image":"Tree/Orange","icon-allow-overlap":true,"icon-padding":1,"icon-size":{"stops":[[16,0.07],[17,0.18],[18,0.3],[20,1]]}},"paint":{"icon-opacity":{"stops":[[16,0.4],[17,0.6],[20,0.9]]}}},{"id":"Tree/Palm","type":"symbol","source":"esri","source-layer":"Tree","filter":["==","_symbol",5],"minzoom":16,"layout":{"symbol-avoid-edges":true,"icon-image":"Tree/Palm","icon-allow-overlap":true,"icon-padding":1,"icon-size":{"stops":[[16,0.07],[17,0.18],[18,0.3],[20,1]]}},"paint":{"icon-opacity":{"stops":[[16,0.4],[17,0.6],[20,0.9]]}}},{"id":"Tree/Pine","type":"symbol","source":"esri","source-layer":"Tree","filter":["==","_symbol",6],"minzoom":16,"layout":{"symbol-avoid-edges":true,"icon-image":"Tree/Pine","icon-allow-overlap":true,"icon-padding":1,"icon-size":{"stops":[[16,0.07],[17,0.18],[18,0.3],[20,1]]}},"paint":{"icon-opacity":{"stops":[[16,0.4],[17,0.6],[20,0.9]]}}},{"id":"Tree/Spruce","type":"symbol","source":"esri","source-layer":"Tree","filter":["==","_symbol",7],"minzoom":16,"layout":{"symbol-avoid-edges":true,"icon-image":"Tree/Spruce","icon-allow-overlap":true,"icon-padding":1,"icon-size":{"stops":[[16,0.07],[17,0.18],[18,0.3],[20,1]]}},"paint":{"icon-opacity":{"stops":[[16,0.4],[17,0.6],[20,0.9]]}}},{"id":"Shrub","type":"symbol","source":"esri","source-layer":"Shrub","minzoom":16,"layout":{"symbol-avoid-edges":true,"icon-image":"Shrub","icon-allow-overlap":true,"icon-padding":1,"icon-size":{"stops":[[16,0.07],[17,0.18],[18,0.3],[20,1]]}},"paint":{"icon-opacity":{"stops":[[16,0.4],[17,0.6],[20,0.9]]}}},{"id":"Pavement marking/Arrow","type":"symbol","source":"esri","source-layer":"Pavement marking","minzoom":17,"filter":["==","_symbol",0],"layout":{"icon-rotation-alignment":"map","icon-image":"Pavement marking/Arrow","icon-size":{"stops":[[17,0.5],[22,1]]},"icon-rotate":{"type":"identity","property":"angle","default":0},"icon-allow-overlap":true},"paint":{"icon-color":"#B2B2B2"}},{"id":"Pavement marking/Handicap","type":"symbol","source":"esri","source-layer":"Pavement marking","minzoom":18,"filter":["==","_symbol",1],"layout":{"icon-rotation-alignment":"map","icon-image":"Pavement marking/Handicap","icon-size":{"stops":[[18,0.5],[20,1],[22,1.25]]},"icon-rotate":{"type":"identity","property":"angle","default":0},"icon-allow-overlap":true},"paint":{"icon-color":"#296AA3","icon-opacity":{"stops":[[18,0.65],[20,1]]}}},{"id":"Pavement marking/Left turn","type":"symbol","source":"esri","source-layer":"Pavement marking","minzoom":17,"filter":["==","_symbol",2],"layout":{"icon-rotation-alignment":"map","icon-image":"Pavement marking/Left turn","icon-size":{"stops":[[17,0.5],[22,1]]},"icon-rotate":{"type":"identity","property":"angle","default":0},"icon-allow-overlap":true},"paint":{"icon-color":"#B2B2B2"}},{"id":"Pavement marking/Right turn","type":"symbol","source":"esri","source-layer":"Pavement marking","minzoom":17,"filter":["==","_symbol",3],"layout":{"icon-rotation-alignment":"map","icon-image":"Pavement marking/Right turn","icon-size":{"stops":[[17,0.5],[22,1]]},"icon-rotate":{"type":"identity","property":"angle","default":0},"icon-allow-overlap":true},"paint":{"icon-color":"#B2B2B2"}},{"id":"Pavement marking/Two-way left turn","type":"symbol","source":"esri","source-layer":"Pavement marking","minzoom":17,"filter":["==","_symbol",4],"layout":{"icon-rotation-alignment":"map","icon-image":"Pavement marking/Two-way left turn","icon-size":{"stops":[[17,0.5],[22,1]]},"icon-rotate":{"type":"identity","property":"angle","default":0},"icon-allow-overlap":true},"paint":{"icon-color":"#B2B2B2"}},{"id":"Pavement marking/U-turn","type":"symbol","source":"esri","source-layer":"Pavement marking","minzoom":17,"filter":["==","_symbol",5],"layout":{"icon-rotation-alignment":"map","icon-image":"Pavement marking/U-turn","icon-size":{"stops":[[17,0.5],[22,1]]},"icon-rotate":{"type":"identity","property":"angle","default":0},"icon-allow-overlap":true},"paint":{"icon-color":"#B2B2B2"}},{"id":"Water point/Sea or ocean","type":"symbol","source":"esri","source-layer":"Water point","filter":["==","_label_class",0],"minzoom":9,"layout":{"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Demi Italic"],"text-size":{"stops":[[9,8.5],[15,15.5]]},"text-letter-spacing":0.3,"text-line-height":1.6,"text-max-width":4,"text-field":"{_name_global}","text-padding":15},"paint":{"text-color":"#0d6c9a","text-halo-blur":1,"text-halo-color":"#FFFFFF","text-halo-width":1}},{"id":"Water point/Island","type":"symbol","source":"esri","source-layer":"Water point","filter":["==","_label_class",7],"minzoom":9,"layout":{"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Demi Italic"],"text-size":{"stops":[[9,8.5],[15,10]]},"text-letter-spacing":0.1,"text-max-width":4,"text-field":"{_name_global}","text-padding":15},"paint":{"text-color":"#595959","text-halo-blur":1,"text-halo-color":"#EBE7E2","text-halo-width":1}},{"id":"Water point/Dam or weir","type":"symbol","source":"esri","source-layer":"Water point","filter":["==","_label_class",5],"minzoom":9,"layout":{"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[9,8.5],[15,10]]},"text-letter-spacing":0.1,"text-max-width":4,"text-field":"{_name_global}","text-padding":15},"paint":{"text-color":"#171310","text-halo-color":"#EBE7E2","text-halo-width":0.7,"text-halo-blur":1}},{"id":"Water point/Playa","type":"symbol","source":"esri","source-layer":"Water point","filter":["==","_label_class",6],"minzoom":9,"layout":{"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Demi Italic"],"text-size":{"stops":[[9,8.5],[15,10]]},"text-letter-spacing":0.1,"text-max-width":4,"text-field":"{_name_global}","text-padding":15},"paint":{"text-color":"#171310","text-halo-color":"#EBE7E2","text-halo-width":0.7,"text-halo-blur":1}},{"id":"Water point/Canal or ditch","type":"symbol","source":"esri","source-layer":"Water point","filter":["==","_label_class",4],"minzoom":9,"layout":{"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Demi Italic"],"text-size":{"stops":[[9,8.5],[15,10]]},"text-letter-spacing":0.13,"text-max-width":4,"text-field":"{_name_global}","text-padding":15},"paint":{"text-color":"#0d6c9a","text-halo-blur":1,"text-halo-color":"#EBE7E2","text-halo-width":1}},{"id":"Water point/Stream or river","type":"symbol","source":"esri","source-layer":"Water point","filter":["==","_label_class",3],"minzoom":9,"layout":{"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Demi Italic"],"text-size":{"stops":[[9,8.5],[15,10]]},"text-letter-spacing":0.1,"text-max-width":4,"text-field":"{_name_global}","text-padding":15},"paint":{"text-color":"#0d6c9a","text-halo-blur":1,"text-halo-color":"#EBE7E2","text-halo-width":0.5}},{"id":"Water point/Lake or reservoir","type":"symbol","source":"esri","source-layer":"Water point","filter":["==","_label_class",2],"minzoom":9,"layout":{"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Demi Italic"],"text-size":{"stops":[[9,8.5],[15,10]]},"text-letter-spacing":0.1,"text-max-width":4,"text-field":"{_name_global}","text-padding":15},"paint":{"text-color":"#0d6c9a","text-halo-blur":1,"text-halo-color":"#FFFFFF","text-halo-width":0.5}},{"id":"Water point/Bay or inlet","type":"symbol","source":"esri","source-layer":"Water point","filter":["==","_label_class",1],"minzoom":9,"layout":{"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Demi Italic"],"text-size":{"stops":[[9,8.5],[15,10]]},"text-letter-spacing":0.1,"text-max-width":4,"text-field":"{_name_global}","text-padding":15},"paint":{"text-color":"#0d6c9a","text-halo-blur":1,"text-halo-color":"#EBE7E2","text-halo-width":0.5}},{"id":"Ferry/label/Ferry","type":"symbol","source":"esri","source-layer":"Ferry/label","filter":["all",["==","_label_class",0],["!in","Viz",2]],"minzoom":12,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":10,"text-letter-spacing":0.05,"text-max-width":8,"text-field":"{_name_global}","text-padding":30},"paint":{"text-color":"#ffffff","text-halo-width":1.2,"text-halo-color":"#6BC4F0","text-halo-blur":1}},{"id":"Water line/label/Default","type":"symbol","source":"esri","source-layer":"Water line/label","minzoom":11,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Demi Italic"],"text-size":9.5,"text-letter-spacing":0.07,"text-max-width":8,"text-max-angle":35,"text-field":"{_name_global}","text-padding":1,"text-offset":[0,-0.5],"symbol-spacing":800},"paint":{"text-color":"#0d6c9a","text-halo-blur":1,"text-halo-color":"#EBE7E2","text-halo-width":0.5}},{"id":"Water line large scale/label/Default","type":"symbol","source":"esri","source-layer":"Water line large scale/label","minzoom":7,"maxzoom":11,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Demi Italic"],"text-size":9.3,"text-letter-spacing":0.01,"text-max-width":8,"text-max-angle":{"stops":[[7,25],[11,35]]},"text-field":"{_name}","text-padding":1,"text-offset":[0,-0.5],"symbol-spacing":800},"paint":{"text-color":"#0d6c9a","text-halo-blur":1,"text-halo-color":"#EBE7E2","text-halo-width":0.5}},{"id":"Water line medium scale/label/Default","type":"symbol","source":"esri","source-layer":"Water line medium scale/label","minzoom":5,"maxzoom":7,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Demi Italic"],"text-size":9.3,"text-letter-spacing":0.1,"text-max-width":8,"text-max-angle":{"stops":[[5,15],[6,25]]},"text-field":"{_name}","text-padding":1,"text-offset":[0,-0.5],"symbol-spacing":800},"paint":{"text-color":"#0d6c9a","text-halo-blur":1,"text-halo-color":"#EBE7E2","text-halo-width":0.5}},{"id":"Water line small scale/label/Default","type":"symbol","source":"esri","source-layer":"Water line small scale/label","minzoom":4,"maxzoom":5,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Demi Italic"],"text-size":8.5,"text-letter-spacing":0.1,"text-max-width":8,"text-max-angle":18,"text-field":"{_name}","text-padding":1,"text-offset":[0,-0.5],"symbol-spacing":800},"paint":{"text-color":"#0d6c9a","text-halo-blur":1,"text-halo-color":"#EBE7E2","text-halo-width":0.5}},{"id":"Marine park/label/Default","type":"symbol","source":"esri","source-layer":"Marine park/label","minzoom":11,"layout":{"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#3a7795"}},{"id":"Water area/label/Dam or weir","type":"symbol","source":"esri","source-layer":"Water area/label","filter":["==","_label_class",8],"minzoom":11,"layout":{"text-font":["Montserrat SemiBold"],"text-size":9.5,"text-letter-spacing":0.08,"text-max-width":8,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#171310","text-halo-color":"#EBE7E2","text-halo-width":0.5,"text-halo-blur":1}},{"id":"Water area/label/Playa","type":"symbol","source":"esri","source-layer":"Water area/label","filter":["==","_label_class",9],"minzoom":11,"layout":{"text-font":["Avenir Next LT Pro Demi Italic"],"text-size":9.5,"text-letter-spacing":0.08,"text-max-width":8,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#171310","text-halo-color":"#EBE7E2","text-halo-width":0.5,"text-halo-blur":1}},{"id":"Water area/label/Canal or ditch","type":"symbol","source":"esri","source-layer":"Water area/label","filter":["==","_label_class",2],"minzoom":11,"layout":{"text-font":["Avenir Next LT Pro Demi Italic"],"symbol-placement":"line","symbol-spacing":1000,"text-size":10.5,"text-letter-spacing":0.13,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true,"text-max-width":5},"paint":{"text-color":"#0d6c9a","text-halo-blur":1,"text-halo-color":"#EBE7E2","text-halo-width":0.5}},{"id":"Water area/label/Small river","type":"symbol","source":"esri","source-layer":"Water area/label","filter":["==","_label_class",7],"minzoom":11,"layout":{"text-font":["Avenir Next LT Pro Demi Italic"],"symbol-placement":"line","symbol-spacing":1000,"text-size":10.5,"text-letter-spacing":0.13,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true,"text-max-width":8},"paint":{"text-color":"#0d6c9a","text-halo-blur":1,"text-halo-color":"#EBE7E2","text-halo-width":0.5}},{"id":"Water area/label/Large river","type":"symbol","source":"esri","source-layer":"Water area/label","filter":["==","_label_class",4],"minzoom":11,"layout":{"text-font":["Avenir Next LT Pro Demi Italic"],"symbol-placement":"line","symbol-spacing":1000,"text-size":10.5,"text-letter-spacing":0.13,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true,"text-max-width":8},"paint":{"text-color":"#0d6c9a","text-halo-blur":1,"text-halo-color":"#EBE7E2","text-halo-width":0.5}},{"id":"Water area/label/Small lake or reservoir","type":"symbol","source":"esri","source-layer":"Water area/label","filter":["==","_label_class",6],"minzoom":11,"layout":{"text-font":["Avenir Next LT Pro Demi Italic"],"text-size":10.5,"text-letter-spacing":0.13,"text-line-height":1,"text-max-width":4,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#0d6c9a","text-halo-blur":1,"text-halo-color":"#EBE7E2","text-halo-width":0.5}},{"id":"Water area/label/Large lake or reservoir","type":"symbol","source":"esri","source-layer":"Water area/label","filter":["==","_label_class",3],"minzoom":11,"layout":{"text-font":["Avenir Next LT Pro Demi Italic"],"text-size":10.5,"text-letter-spacing":0.13,"text-line-height":1.5,"text-max-width":4,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#0d6c9a","text-halo-blur":1,"text-halo-color":"#EBE7E2","text-halo-width":0.5}},{"id":"Water area/label/Bay or inlet","type":"symbol","source":"esri","source-layer":"Water area/label","filter":["==","_label_class",1],"minzoom":11,"layout":{"text-font":["Avenir Next LT Pro Demi Italic"],"text-size":10.5,"text-letter-spacing":0.13,"text-line-height":1.5,"text-max-width":4,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#0d6c9a","text-halo-blur":1,"text-halo-color":"#EBE7E2","text-halo-width":0.5}},{"id":"Water area/label/Small island","type":"symbol","source":"esri","source-layer":"Water area/label","filter":["==","_label_class",0],"minzoom":11,"layout":{"text-size":10.5,"text-letter-spacing":0.1,"text-max-width":4,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Demi Italic"]},"paint":{"text-color":"#595959","text-halo-blur":1,"text-halo-color":"#EBE7E2","text-halo-width":1}},{"id":"Water area/label/Large island","type":"symbol","source":"esri","source-layer":"Water area/label","filter":["==","_label_class",5],"minzoom":11,"layout":{"text-size":10.5,"text-letter-spacing":0.13,"text-line-height":1.5,"text-max-width":4,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Demi Italic"]},"paint":{"text-color":"#595959","text-halo-blur":1,"text-halo-color":"#EBE7E2","text-halo-width":1}},{"id":"Water area large scale/label/River","type":"symbol","source":"esri","source-layer":"Water area large scale/label","filter":["==","_label_class",1],"minzoom":7,"maxzoom":11,"layout":{"text-font":["Avenir Next LT Pro Demi Italic"],"symbol-placement":"line","symbol-spacing":1000,"text-size":9.3,"text-letter-spacing":0.1,"text-field":"{_name}","text-padding":15,"symbol-avoid-edges":true,"text-max-width":4},"paint":{"text-color":"#0d6c9a","text-halo-blur":1,"text-halo-color":"#EBE7E2","text-halo-width":0.5}},{"id":"Water area large scale/label/Lake or lake intermittent","type":"symbol","source":"esri","source-layer":"Water area large scale/label","filter":["==","_label_class",0],"minzoom":7,"maxzoom":11,"layout":{"text-font":["Avenir Next LT Pro Demi Italic"],"text-size":9.3,"text-letter-spacing":0.1,"text-max-width":4,"text-field":"{_name}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#0d6c9a","text-halo-blur":1,"text-halo-color":"#EBE7E2","text-halo-width":0.5}},{"id":"Water area medium scale/label/Default","type":"symbol","source":"esri","source-layer":"Water area medium scale/label","minzoom":5,"maxzoom":7,"layout":{"text-max-width":4,"text-field":"{_name}","text-padding":15,"symbol-avoid-edges":true,"text-letter-spacing":0.08,"text-font":["Avenir Next LT Pro Demi Italic"],"text-size":9.3},"paint":{"text-color":"#0d6c9a","text-halo-blur":1,"text-halo-color":"#EBE7E2","text-halo-width":0.5}},{"id":"Water area small scale/label/Default","type":"symbol","source":"esri","source-layer":"Water area small scale/label","minzoom":1,"maxzoom":5,"layout":{"text-font":["Avenir Next LT Pro Demi Italic"],"text-size":9.3,"text-letter-spacing":0.08,"text-max-width":4,"text-field":"{_name}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#0d6c9a","text-halo-blur":1,"text-halo-color":"#EBE7E2","text-halo-width":0.5}},{"id":"Marine area/label/Default","type":"symbol","source":"esri","source-layer":"Marine area/label","minzoom":11,"layout":{"text-font":["Avenir Next LT Pro Demi Italic"],"text-size":10.5,"text-letter-spacing":0.13,"text-line-height":1.5,"text-max-width":4,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#0d6c9a","text-halo-blur":1,"text-halo-color":"#82CFF5","text-halo-width":1}},{"id":"Marine waterbody/label/small","type":"symbol","source":"esri","source-layer":"Marine waterbody/label","filter":["==","_label_class",4],"minzoom":1,"maxzoom":10,"layout":{"text-font":["Avenir Next LT Pro Demi Italic"],"text-letter-spacing":{"stops":[[1,0.12],[10,0.25]]},"text-line-height":1.5,"text-max-width":6,"text-field":"{_name}","text-padding":15,"symbol-avoid-edges":true,"text-size":{"stops":[[1,8],[6,9.3]]}},"paint":{"text-color":{"stops":[[1,"#0d6c9a"],[6,"#0d6c9a"]]},"text-halo-blur":1,"text-halo-color":"#82CFF5","text-halo-width":0.5}},{"id":"Marine waterbody/label/medium","type":"symbol","source":"esri","source-layer":"Marine waterbody/label","filter":["==","_label_class",3],"minzoom":1,"maxzoom":10,"layout":{"text-font":["Avenir Next LT Pro Demi Italic"],"text-letter-spacing":{"stops":[[1,0.15],[10,0.3]]},"text-line-height":1.5,"text-max-width":6,"text-field":"{_name}","text-padding":15,"symbol-avoid-edges":true,"text-size":{"stops":[[1,8],[6,9.3]]}},"paint":{"text-color":{"stops":[[1,"#0d6c9a"],[6,"#0d6c9a"]]},"text-halo-blur":1,"text-halo-color":"#82CFF5","text-halo-width":0.5}},{"id":"Marine waterbody/label/large","type":"symbol","source":"esri","source-layer":"Marine waterbody/label","filter":["==","_label_class",2],"minzoom":1,"maxzoom":10,"layout":{"text-font":["Avenir Next LT Pro Demi Italic"],"text-letter-spacing":{"stops":[[1,0.18],[10,0.4]]},"text-line-height":1.5,"text-max-width":6,"text-field":"{_name}","text-padding":15,"symbol-avoid-edges":true,"text-size":{"stops":[[1,8],[6,10]]}},"paint":{"text-color":{"stops":[[1,"#0d6c9a"],[6,"#0d6c9a"]]},"text-halo-blur":1,"text-halo-color":"#82CFF5","text-halo-width":0.5}},{"id":"Marine waterbody/label/x large","type":"symbol","source":"esri","source-layer":"Marine waterbody/label","filter":["==","_label_class",1],"minzoom":1,"maxzoom":10,"layout":{"text-font":["Avenir Next LT Pro Demi Italic"],"text-letter-spacing":{"stops":[[1,0.2],[10,1.5]]},"text-line-height":1.5,"text-max-width":6,"text-field":"{_name}","text-padding":15,"symbol-avoid-edges":true,"text-size":{"stops":[[1,8],[6,11]]}},"paint":{"text-color":{"stops":[[1,"#0d6c9a"],[6,"#0d6c9a"]]},"text-halo-blur":1,"text-halo-color":"#82CFF5","text-halo-width":0.5}},{"id":"Marine waterbody/label/2x large","type":"symbol","source":"esri","source-layer":"Marine waterbody/label","filter":["==","_label_class",0],"minzoom":1,"maxzoom":10,"layout":{"text-font":["Avenir Next LT Pro Demi Italic"],"text-letter-spacing":{"stops":[[1,0.3],[10,2]]},"text-line-height":1.6,"text-max-width":6,"text-field":"{_name}","text-padding":15,"symbol-avoid-edges":true,"text-size":{"stops":[[1,10],[4,18]]}},"paint":{"text-color":"#0d6c9a","text-halo-blur":1,"text-halo-color":"#82CFF5","text-halo-width":0.5}},{"id":"Ferry/label/Rail ferry","type":"symbol","source":"esri","source-layer":"Ferry/label","filter":["all",["==","_label_class",1],["!in","Viz",2]],"minzoom":12,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":9,"text-letter-spacing":0.1,"text-max-width":8,"text-field":"{_name_global}","text-padding":5,"text-offset":[0,-0.6],"symbol-spacing":1000},"paint":{"text-color":"#4E4E4E","text-halo-color":"#FFFFFF","text-halo-width":1}},{"id":"Railroad/label/Default","type":"symbol","source":"esri","source-layer":"Railroad/label","minzoom":14,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":9,"text-letter-spacing":0.1,"text-max-width":8,"text-field":"{_name_global}","text-padding":5,"text-offset":[0,-0.6],"symbol-spacing":1000},"paint":{"text-color":"#4E4E4E","text-halo-color":"#EBE7E2","text-halo-width":1}},{"id":"Trail or path/label/Default","type":"symbol","source":"esri","source-layer":"Trail or path/label","minzoom":15,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"symbol-spacing":400,"text-font":["Avenir Next LT Pro Demi Italic"],"text-size":9.3,"text-letter-spacing":0.05,"text-max-width":8,"text-field":"{_name_global}","text-padding":5},"paint":{"text-color":"#595959","text-halo-color":"#FFFFFF","text-halo-width":1}},{"id":"Road tunnel/label/Pedestrian","type":"symbol","source":"esri","source-layer":"Road tunnel/label","filter":["all",["==","_label_class",6],["!in","Viz",2]],"minzoom":15,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"symbol-spacing":400,"text-font":["Montserrat SemiBold"],"text-size":9.3,"text-letter-spacing":0.05,"text-max-width":8,"text-field":"{_name_global}","text-padding":5},"paint":{"text-color":"#595959","text-halo-color":"#FFFFFF","text-halo-width":1,"text-halo-blur":1}},{"id":"Road tunnel/label/Local, service, 4WD","type":"symbol","source":"esri","source-layer":"Road tunnel/label","filter":["all",["==","_label_class",5],["!in","Viz",2]],"minzoom":12,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"symbol-spacing":400,"text-font":["Montserrat SemiBold"],"text-size":9.5,"text-letter-spacing":0.09,"text-max-width":8,"text-field":"{_name_global}","text-padding":{"stops":[[12,5],[15,5],[16,15]]}},"paint":{"text-color":"#595959","text-halo-color":"#FFFFFF","text-halo-width":1,"text-halo-blur":1}},{"id":"Road tunnel/label/Minor","type":"symbol","source":"esri","source-layer":"Road tunnel/label","filter":["all",["==","_label_class",4],["!in","Viz",2]],"minzoom":10,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"symbol-spacing":400,"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[10,9.5],[14,10.5],[18,12.5]]},"text-letter-spacing":0.09,"text-max-width":8,"text-field":"{_name_global}","text-padding":{"stops":[[10,5],[15,5],[16,15]]}},"paint":{"text-color":"#595959","text-halo-color":"#FFFFFF","text-halo-width":1,"text-halo-blur":1}},{"id":"Road tunnel/label/Major, alt name","type":"symbol","source":"esri","source-layer":"Road tunnel/label","filter":["all",["==","_label_class",3],["!in","Viz",2]],"minzoom":10,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"symbol-spacing":400,"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[10,9.5],[14,10.5],[18,12.5]]},"text-letter-spacing":0.09,"text-max-width":8,"text-field":"{_name}","text-padding":{"stops":[[10,5],[15,5],[16,15]]}},"paint":{"text-color":"#4e4e4e","text-halo-color":"#FFFFFF","text-halo-width":1,"text-halo-blur":1}},{"id":"Road tunnel/label/Major","type":"symbol","source":"esri","source-layer":"Road tunnel/label","filter":["all",["==","_label_class",2],["!in","Viz",2]],"minzoom":10,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"symbol-spacing":400,"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[10,9.5],[14,10.5],[18,12.5]]},"text-letter-spacing":0.09,"text-max-width":8,"text-field":"{_name}","text-padding":{"stops":[[10,5],[15,5],[16,15]]}},"paint":{"text-color":"#4E4E4E","text-halo-color":"#FFFFFF","text-halo-width":1,"text-halo-blur":1}},{"id":"Road tunnel/label/Highway","type":"symbol","source":"esri","source-layer":"Road tunnel/label","filter":["all",["==","_label_class",7],["!in","Viz",2]],"minzoom":10,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"symbol-spacing":400,"text-font":["Avenir Next LT Pro Bold"],"text-size":{"stops":[[10,9.5],[14,10.5],[18,14.5]]},"text-letter-spacing":0.09,"text-max-width":8,"text-field":"{_name_global}","text-padding":{"stops":[[10,5],[15,5],[16,15]]}},"paint":{"text-color":"#4E4E4E","text-halo-color":"#FFFFFF","text-halo-width":1,"text-halo-blur":1}},{"id":"Road tunnel/label/Freeway Motorway, alt name","type":"symbol","source":"esri","source-layer":"Road tunnel/label","filter":["all",["==","_label_class",1],["!in","Viz",2]],"minzoom":10,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"symbol-spacing":400,"text-font":["Avenir Next LT Pro Bold"],"text-size":{"stops":[[10,9.5],[14,10.5],[18,14.5]]},"text-letter-spacing":0.09,"text-max-width":8,"text-field":"{_name_global}","text-padding":{"stops":[[10,5],[15,5],[16,15]]}},"paint":{"text-color":"#4E4E4E","text-halo-color":"#FFFFFF","text-halo-width":1,"text-halo-blur":1}},{"id":"Road tunnel/label/Freeway Motorway","type":"symbol","source":"esri","source-layer":"Road tunnel/label","filter":["all",["==","_label_class",0],["!in","Viz",2]],"minzoom":10,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"symbol-spacing":400,"text-font":["Avenir Next LT Pro Bold"],"text-size":{"stops":[[10,9.5],[14,10.5],[18,14.5]]},"text-letter-spacing":0.09,"text-max-width":8,"text-field":"{_name_global}","text-padding":{"stops":[[10,5],[15,5],[16,15]]}},"paint":{"text-color":"#4E4E4E","text-halo-color":"#FFFFFF","text-halo-width":1,"text-halo-blur":1}},{"id":"Road/label/Local","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",5],["!in","Viz",2]],"minzoom":12,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"symbol-spacing":400,"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[10,9.5],[14,10.5],[18,11.5]]},"text-letter-spacing":0.09,"text-max-width":8,"text-field":"{_name_global}","text-padding":{"stops":[[12,5],[15,5],[16,15]]}},"paint":{"text-color":"#595959","text-halo-color":"#FFFFFF","text-halo-width":1}},{"id":"Road/label/Minor","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",4],["!in","Viz",2]],"minzoom":10,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"symbol-spacing":400,"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[10,9.5],[14,10.5],[18,12.5]]},"text-letter-spacing":0.09,"text-max-width":8,"text-field":"{_name_global}","text-padding":{"stops":[[10,5],[15,5],[16,15]]}},"paint":{"text-color":"#595959","text-halo-color":"#FFFFFF","text-halo-width":1}},{"id":"Road/label/Major, alt name","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",3],["!in","Viz",2]],"minzoom":10,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"symbol-spacing":400,"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[10,9.5],[14,10.5],[18,12.5]]},"text-letter-spacing":0.09,"text-max-width":8,"text-field":"{_name}","text-padding":{"stops":[[10,5],[15,5],[16,15]]}},"paint":{"text-color":"#4E4E4E","text-halo-color":"#FFFFFF","text-halo-width":1}},{"id":"Road/label/Major","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",2],["!in","Viz",2]],"minzoom":10,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"symbol-spacing":400,"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[10,9.5],[14,10.5],[18,12.5]]},"text-letter-spacing":0.09,"text-max-width":8,"text-field":"{_name_global}","text-padding":{"stops":[[10,5],[15,5],[16,15]]}},"paint":{"text-color":"#4E4E4E","text-halo-color":"#FFFFFF","text-halo-width":1}},{"id":"Road/label/Highway","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",75],["!in","Viz",2]],"minzoom":10,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"symbol-spacing":400,"text-font":["Avenir Next LT Pro Bold"],"text-size":{"stops":[[10,9.5],[14,10.5],[18,14.5]]},"text-letter-spacing":0.09,"text-max-width":8,"text-field":"{_name_global}","text-padding":{"stops":[[10,5],[15,5],[16,15]]}},"paint":{"text-color":"#4E4E4E","text-halo-color":"#FFFFFF","text-halo-width":1}},{"id":"Road/label/Freeway Motorway, alt name","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",1],["!in","Viz",2]],"minzoom":10,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"symbol-spacing":400,"text-font":["Avenir Next LT Pro Bold"],"text-size":{"stops":[[10,9.5],[14,10.5],[18,14.5]]},"text-letter-spacing":0.09,"text-max-width":8,"text-field":"{_name}","text-padding":{"stops":[[10,5],[15,5],[16,15]]}},"paint":{"text-color":"#4E4E4E","text-halo-color":"#FFFFFF","text-halo-width":1}},{"id":"Road/label/Freeway Motorway","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",0],["!in","Viz",2]],"minzoom":10,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"symbol-spacing":400,"text-font":["Avenir Next LT Pro Bold"],"text-size":{"stops":[[10,9.5],[14,10.5],[18,14.5]]},"text-letter-spacing":0.09,"text-max-width":8,"text-field":"{_name_global}","text-padding":{"stops":[[10,5],[15,5],[16,15]]}},"paint":{"text-color":"#4E4E4E","text-halo-color":"#FFFFFF","text-halo-width":1}},{"id":"Road/label/Rectangle white black (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",32],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":9.3,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Rectangle white black (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Rectangle white black","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",31],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":9.3,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Rectangle white black/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Secondary Hwy red white (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",16],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Secondary Hwy red white (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/Secondary Hwy red white","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",15],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Secondary Hwy red white/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/U-shaped yellow black (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",24],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-letter-spacing":0.05,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/U-shaped yellow black (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/U-shaped yellow black","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",23],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-letter-spacing":0.05,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/U-shaped yellow black/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/U-shaped red white (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",26],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/U-shaped red white (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/U-shaped red white","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",25],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/U-shaped red white/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/U-shaped blue white (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",28],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-letter-spacing":0.05,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/U-shaped blue white (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/U-shaped blue white","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",27],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-letter-spacing":0.05,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/U-shaped blue white/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/V-shaped white black (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",30],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/V-shaped white black (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/V-shaped white black","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",29],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/V-shaped white black/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/U-shaped white black (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",18],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-letter-spacing":0.05,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/U-shaped white black (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/U-shaped white black","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",17],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-letter-spacing":0.05,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/U-shaped white black/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/U-shaped white green (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",20],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-letter-spacing":0.05,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/U-shaped white green (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/U-shaped white green","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",19],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-letter-spacing":0.05,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/U-shaped white green/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/U-shaped green leaf (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",22],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-letter-spacing":0.05,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/U-shaped green leaf (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/U-shaped green leaf","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",21],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-letter-spacing":0.05,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/U-shaped green leaf/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Rectangle yellow black (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",38],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-letter-spacing":0.05,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Rectangle yellow black (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Rectangle yellow black","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",37],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-letter-spacing":0.05,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Rectangle yellow black/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Rectangle red white (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",36],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-letter-spacing":0.05,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Rectangle red white (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/Rectangle red white","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",35],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-letter-spacing":0.05,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Rectangle red white/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/Rectangle blue white (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",34],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Rectangle blue white (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/Rectangle blue white","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",33],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Rectangle blue white/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/Rectangle green white (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",40],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-letter-spacing":0.05,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Rectangle green white (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/Rectangle green white","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",39],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-letter-spacing":0.05,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Rectangle green white/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/Rectangle green yellow (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",42],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Rectangle green yellow (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#f1dfb7"}},{"id":"Road/label/Rectangle green yellow","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",41],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Rectangle green yellow/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#f1dfb7"}},{"id":"Road/label/Pentagon inverse white black (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",44],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":9.3,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Pentagon inverse white black/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Pentagon inverse white black","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",43],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":9.3,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Pentagon inverse white black (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Pentagon white black (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",46],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Pentagon white black (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Pentagon white black","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",45],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Pentagon white black/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Pentagon yellow black (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",50],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Pentagon yellow black (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Pentagon yellow black","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",49],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Pentagon yellow black/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Pentagon green white","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",51],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Pentagon green white/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/Pentagon green white (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",52],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Pentagon green white (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/Pentagon green yellow","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",53],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Pentagon green yellow/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#f1dfb7"}},{"id":"Road/label/Pentagon green yellow (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",54],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Pentagon green yellow (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#f1dfb7"}},{"id":"Road/label/Pentagon blue white (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",48],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":9.3,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Pentagon blue white (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/Pentagon blue white","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",47],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":9.3,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Pentagon blue white/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/Hexagon white black (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",56],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Hexagon white black (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Hexagon white black","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",55],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Hexagon white black/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Hexagon blue white","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",57],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Hexagon blue white/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/Hexagon blue white (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",58],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Hexagon blue white (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/Hexagon red white","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",59],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Hexagon red white/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/Hexagon red white (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",60],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Hexagon red white (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/Hexagon green white (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",62],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Hexagon green white (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/Hexagon green white","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",61],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Hexagon green white/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/Hexagon orange black","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",63],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Hexagon orange black/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Hexagon orange black (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",64],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Hexagon orange black (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Rectangle hexagon blue white (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",66],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Rectangle hexagon blue white (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Rectangle hexagon blue white","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",65],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Rectangle hexagon blue white/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Rectangle hexagon red white (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",68],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Rectangle hexagon red white (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Rectangle hexagon red white","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",67],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Rectangle hexagon red white/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Rectangle hexagon green white (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",70],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Rectangle hexagon green white (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Rectangle hexagon green white","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",69],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Rectangle hexagon green white/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Rectangle hexagon brown white (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",72],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Rectangle hexagon brown white (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Rectangle hexagon brown white","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",71],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Rectangle hexagon brown white/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Octagon green white (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",74],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Octagon green white (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/Octagon green white","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",73],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Octagon green white/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/Shield white black (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",10],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":9.3,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Shield white black (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Shield white black","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",9],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":9.3,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Shield white black/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Secondary Hwy green white (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",14],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":9.3,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Secondary Hwy green white (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/Secondary Hwy green white","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",13],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":9.3,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Secondary Hwy green white/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/Secondary Hwy white black (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",12],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-letter-spacing":0.05,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Secondary Hwy white black (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Secondary Hwy white black","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",11],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Secondary Hwy white black/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{}},{"id":"Road/label/Shield blue white (Alt)","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",8],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Shield blue white (Alt)/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/Shield blue white","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",7],["!in","Viz",2]],"minzoom":7,"layout":{"symbol-placement":"line","symbol-spacing":400,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":8.5,"text-max-width":8,"text-field":"{_name}","icon-image":"Road/Shield blue white/{_len}","icon-rotation-alignment":"viewport","text-rotation-alignment":"viewport","text-padding":{"stops":[[7,50],[10,50],[11,15]]}},"paint":{"text-color":"#ffffff"}},{"id":"Road/label/Pedestrian","type":"symbol","source":"esri","source-layer":"Road/label","filter":["all",["==","_label_class",6],["!in","Viz",2]],"minzoom":15,"layout":{"symbol-placement":"line","symbol-avoid-edges":true,"symbol-spacing":400,"text-font":["Montserrat SemiBold"],"text-size":9.3,"text-letter-spacing":0.05,"text-max-width":8,"text-field":"{_name_global}","text-padding":5},"paint":{"text-color":"#595959","text-halo-color":"#FFFFFF","text-halo-width":1}},{"id":"Building/label/Default","type":"symbol","source":"esri","source-layer":"Building/label","minzoom":15,"layout":{"visibility":"none","text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#5a3514","text-halo-color":"#EBE7E2","text-halo-width":0.7,"text-halo-blur":1}},{"id":"Cemetery/label/Default","type":"symbol","source":"esri","source-layer":"Cemetery/label","minzoom":13,"layout":{"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#2d4e28","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Freight/label/Default","type":"symbol","source":"esri","source-layer":"Freight/label","minzoom":12,"layout":{"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#4a2b1b","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Water and wastewater/label/Default","type":"symbol","source":"esri","source-layer":"Water and wastewater/label","minzoom":13,"layout":{"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#4a2b1b","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Port/label/Default","type":"symbol","source":"esri","source-layer":"Port/label","minzoom":12,"layout":{"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#4a2b1b","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Industry/label/Default","type":"symbol","source":"esri","source-layer":"Industry/label","minzoom":12,"layout":{"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#4a2b1b","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Government/label/Default","type":"symbol","source":"esri","source-layer":"Government/label","minzoom":13,"layout":{"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":15},"paint":{"text-color":"#4a2b1b","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Finance/label/Default","type":"symbol","source":"esri","source-layer":"Finance/label","minzoom":13,"layout":{"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#9d5a48","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Emergency/label/Default","type":"symbol","source":"esri","source-layer":"Emergency/label","minzoom":13,"layout":{"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#33302f","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Indigenous/label/Default","type":"symbol","source":"esri","source-layer":"Indigenous/label","minzoom":7,"layout":{"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[9,8.5],[15,9.5],[20,12.5],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#533d32","text-halo-color":"#e8e6d6","text-halo-width":1,"text-halo-blur":1}},{"id":"Military/label/Default","type":"symbol","source":"esri","source-layer":"Military/label","minzoom":6,"layout":{"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[9,8.5],[15,9.5],[20,12.5],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":25,"symbol-avoid-edges":true},"paint":{"text-color":"#242221","text-halo-color":"#E0E0D9","text-halo-width":1,"text-halo-blur":1}},{"id":"Transportation/label/Default","type":"symbol","source":"esri","source-layer":"Transportation/label","minzoom":13,"layout":{"visibility":"none","text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#242221","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Pedestrian/label/Default","type":"symbol","source":"esri","source-layer":"Pedestrian/label","minzoom":13,"layout":{"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":15},"paint":{"text-color":"#242221","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Beach/label/Default","type":"symbol","source":"esri","source-layer":"Beach/label","minzoom":13,"layout":{"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":0.08,"text-max-width":8,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#806b3c","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Golf course/label/Default","type":"symbol","source":"esri","source-layer":"Golf course/label","minzoom":11,"layout":{"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#2d4e28","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Zoo/label/Default","type":"symbol","source":"esri","source-layer":"Zoo/label","minzoom":11,"layout":{"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#2d4e28","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Retail/label/Default","type":"symbol","source":"esri","source-layer":"Retail/label","minzoom":13,"layout":{"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#9d5a48","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Landmark/label/Default","type":"symbol","source":"esri","source-layer":"Landmark/label","minzoom":13,"layout":{"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#446757","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Openspace or forest/label/Default","type":"symbol","source":"esri","source-layer":"Openspace or forest/label","minzoom":10,"layout":{"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":25},"paint":{"text-color":"#006200","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Park or farming/label/Default","type":"symbol","source":"esri","source-layer":"Park or farming/label","minzoom":11,"layout":{"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":25},"paint":{"text-color":"#006200","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Point of interest/Park","type":"symbol","source":"esri","source-layer":"Point of interest","filter":["==","_label_class",1],"minzoom":9,"layout":{"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":15},"paint":{"text-color":"#006200","text-halo-width":1,"text-halo-color":"#EBE7E2","text-halo-blur":1}},{"id":"Education/label/Default","type":"symbol","source":"esri","source-layer":"Education/label","minzoom":11,"layout":{"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#505000","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Medical/label/Default","type":"symbol","source":"esri","source-layer":"Medical/label","minzoom":11,"layout":{"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#3d5d69","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Admin1 forest or park/label/Default","type":"symbol","source":"esri","source-layer":"Admin1 forest or park/label","minzoom":7,"layout":{"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[9,8.5],[15,9.5],[20,12.5],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":25},"paint":{"text-color":"#006200","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Admin0 forest or park/label/Default","type":"symbol","source":"esri","source-layer":"Admin0 forest or park/label","minzoom":6,"layout":{"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[9,8.5],[15,9.5],[20,12.5],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":25,"symbol-avoid-edges":true},"paint":{"text-color":"#006200","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Airport/label/Airport property","type":"symbol","source":"esri","source-layer":"Airport/label","minzoom":9,"layout":{"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[9,8.5],[15,9.5],[20,12.5],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":15,"symbol-avoid-edges":true},"paint":{"text-color":"#5f5e5c","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Admin2 area/label/small","type":"symbol","source":"esri","source-layer":"Admin2 area/label","filter":["==","_label_class",1],"minzoom":9,"maxzoom":11,"layout":{"text-letter-spacing":0.2,"text-font":["Avenir Next LT Pro Demi Italic"],"text-size":11,"text-max-width":8,"text-field":"{_name}","text-padding":1,"symbol-avoid-edges":true,"text-transform":"uppercase"},"paint":{"text-color":"#80755f","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Admin2 area/label/large","type":"symbol","source":"esri","source-layer":"Admin2 area/label","filter":["==","_label_class",0],"minzoom":9,"maxzoom":11,"layout":{"text-letter-spacing":0.2,"text-font":["Avenir Next LT Pro Demi Italic"],"text-size":13,"text-max-width":8,"text-field":"{_name}","text-padding":1,"symbol-avoid-edges":true,"text-transform":"uppercase"},"paint":{"text-color":"#80755f","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Admin1 area/label/x small","type":"symbol","source":"esri","source-layer":"Admin1 area/label","filter":["==","_label_class",5],"minzoom":4,"maxzoom":10,"layout":{"text-font":["Montserrat SemiBold"],"text-transform":"uppercase","text-max-width":8,"text-field":"{_name}","text-padding":1,"symbol-avoid-edges":true,"text-size":{"stops":[[4,8.5],[5,9.5],[6,10.3],[9,11]]},"text-letter-spacing":{"stops":[[4,0.1],[8,0.2]]}},"paint":{"text-color":{"stops":[[4,"#554434"],[6,"#39240e"]]},"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Admin1 area/label/small","type":"symbol","source":"esri","source-layer":"Admin1 area/label","filter":["==","_label_class",4],"minzoom":4,"maxzoom":10,"layout":{"text-font":["Montserrat SemiBold"],"text-transform":"uppercase","text-max-width":8,"text-field":"{_name}","text-padding":1,"symbol-avoid-edges":true,"text-size":{"stops":[[4,8.5],[5,9.5],[6,10.5],[9,11.5]]},"text-letter-spacing":{"stops":[[4,0.1],[8,0.2]]}},"paint":{"text-color":{"stops":[[4,"#554434"],[6,"#39240e"]]},"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Admin1 area/label/medium","type":"symbol","source":"esri","source-layer":"Admin1 area/label","filter":["==","_label_class",3],"minzoom":4,"maxzoom":10,"layout":{"text-font":["Montserrat SemiBold"],"text-transform":"uppercase","text-max-width":8,"text-field":"{_name}","text-padding":1,"symbol-avoid-edges":true,"text-size":{"stops":[[4,9.5],[5,10.5],[6,11.3],[9,12]]},"text-letter-spacing":{"stops":[[4,0.15],[8,0.4]]}},"paint":{"text-color":{"stops":[[4,"#554434"],[6,"#39240e"]]},"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Admin1 area/label/large","type":"symbol","source":"esri","source-layer":"Admin1 area/label","filter":["==","_label_class",2],"minzoom":4,"maxzoom":10,"layout":{"text-font":["Montserrat SemiBold"],"text-transform":"uppercase","text-max-width":8,"text-field":"{_name}","text-padding":1,"symbol-avoid-edges":true,"text-size":{"stops":[[4,9.5],[5,11.3],[6,13],[9,17]]},"text-letter-spacing":{"stops":[[4,0.1],[8,0.5]]}},"paint":{"text-color":{"stops":[[4,"#554434"],[6,"#39240e"]]},"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Admin1 area/label/x large","type":"symbol","source":"esri","source-layer":"Admin1 area/label","filter":["==","_label_class",1],"minzoom":4,"maxzoom":10,"layout":{"text-font":["Montserrat SemiBold"],"text-transform":"uppercase","text-max-width":8,"text-field":"{_name}","text-padding":1,"symbol-avoid-edges":true,"text-size":{"stops":[[4,10.3],[5,12],[6,13.5],[9,19]]},"text-letter-spacing":{"stops":[[4,0.15],[8,0.6]]}},"paint":{"text-color":{"stops":[[4,"#554434"],[6,"#39240e"]]},"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Admin1 area/label/2x large","type":"symbol","source":"esri","source-layer":"Admin1 area/label","filter":["==","_label_class",0],"minzoom":4,"maxzoom":10,"layout":{"text-font":["Montserrat SemiBold"],"text-transform":"uppercase","text-max-width":8,"text-field":"{_name}","text-padding":1,"symbol-avoid-edges":true,"text-size":{"stops":[[4,11.5],[5,12.3],[6,14],[9,19]]},"text-letter-spacing":{"stops":[[4,0.15],[8,0.75]]}},"paint":{"text-color":{"stops":[[4,"#554434"],[6,"#39240e"]]},"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Point of interest/General","type":"symbol","source":"esri","source-layer":"Point of interest","filter":["==","_label_class",0],"minzoom":9,"layout":{"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":15},"paint":{"text-color":{"stops":[[9,"#5a3514"],[11,"#5a3514"]]},"text-halo-width":1,"text-halo-color":"#EBE7E2","text-halo-blur":1}},{"id":"Point of interest/Bus station","type":"symbol","source":"esri","source-layer":"Point of interest","filter":["==","_symbol",2],"minzoom":12,"layout":{"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":15},"paint":{"text-color":{"stops":[[9,"#5a3514"],[11,"#5a3514"]]},"text-halo-width":1,"text-halo-color":"#EBE7E2","text-halo-blur":1}},{"id":"Point of interest/Rail station","type":"symbol","source":"esri","source-layer":"Point of interest","filter":["==","_symbol",3],"minzoom":12,"layout":{"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[15,9.5],[20,11],[22,15]]},"text-letter-spacing":{"stops":[[15,0.05],[20,0.15]]},"text-max-width":8,"text-field":"{_name_global}","text-padding":15},"paint":{"text-color":{"stops":[[9,"#5a3514"],[11,"#5a3514"]]},"text-halo-width":1,"text-halo-color":"#EBE7E2","text-halo-blur":1}},{"id":"Neighborhood","type":"symbol","source":"esri","source-layer":"Neighborhood","minzoom":14,"maxzoom":17,"layout":{"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[10,10],[16,14]]},"text-letter-spacing":0.08,"text-max-width":8,"text-field":"{_name_global}","text-padding":1},"paint":{"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City large scale/town small","type":"symbol","source":"esri","source-layer":"City large scale","filter":["==","_label_class",5],"minzoom":10,"maxzoom":17,"layout":{"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[10,11],[16,15]]},"text-letter-spacing":0.08,"text-max-width":8,"text-field":"{_name_global}","text-padding":15},"paint":{"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City large scale/town large","type":"symbol","source":"esri","source-layer":"City large scale","filter":["==","_label_class",4],"minzoom":10,"maxzoom":17,"layout":{"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-size":{"stops":[[10,11],[16,17]]},"text-letter-spacing":0.09,"text-max-width":8,"text-field":"{_name_global}","text-padding":1},"paint":{"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City large scale/small","type":"symbol","source":"esri","source-layer":"City large scale","filter":["==","_label_class",3],"minzoom":10,"maxzoom":17,"layout":{"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-letter-spacing":0.1,"text-max-width":8,"text-field":"{_name_global}","text-padding":1,"text-size":{"stops":[[10,12],[16,18]]}},"paint":{"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City large scale/medium","type":"symbol","source":"esri","source-layer":"City large scale","filter":["==","_label_class",2],"minzoom":10,"maxzoom":17,"layout":{"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-letter-spacing":0.1,"text-max-width":8,"text-field":"{_name_global}","text-padding":1,"text-size":{"stops":[[10,13],[16,20]]}},"paint":{"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City large scale/large","type":"symbol","source":"esri","source-layer":"City large scale","filter":["==","_label_class",1],"minzoom":10,"maxzoom":17,"layout":{"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-letter-spacing":0.1,"text-max-width":8,"text-field":"{_name_global}","text-padding":1,"text-size":{"stops":[[10,14],[16,26]]}},"paint":{"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City large scale/x large","type":"symbol","source":"esri","source-layer":"City large scale","filter":["==","_label_class",0],"minzoom":10,"maxzoom":17,"layout":{"symbol-avoid-edges":true,"text-font":["Montserrat SemiBold"],"text-letter-spacing":0.1,"text-max-width":8,"text-field":"{_name_global}","text-padding":1,"text-size":{"stops":[[10,14.5],[16,31]]}},"paint":{"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City small scale/town small non capital","type":"symbol","source":"esri","source-layer":"City small scale","filter":["==","_symbol",17],"minzoom":3,"maxzoom":10,"layout":{"symbol-avoid-edges":true,"icon-image":"City small scale","icon-padding":1,"text-font":["Montserrat SemiBold"],"text-size":11,"text-anchor":"bottom-left","text-max-width":8,"text-field":"{_name}","text-padding":1,"text-offset":[0.2,0.1],"text-justify":"left"},"paint":{"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City small scale/town large non capital","type":"symbol","source":"esri","source-layer":"City small scale","filter":["==","_symbol",15],"minzoom":3,"maxzoom":10,"layout":{"symbol-avoid-edges":true,"icon-image":"City small scale","icon-padding":1,"text-font":["Montserrat SemiBold"],"text-size":11,"text-anchor":"bottom-left","text-max-width":8,"text-field":"{_name}","text-padding":1,"text-offset":[0.2,0.1],"text-justify":"left"},"paint":{"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City small scale/small non capital","type":"symbol","source":"esri","source-layer":"City small scale","filter":["==","_symbol",12],"minzoom":3,"maxzoom":10,"layout":{"symbol-avoid-edges":true,"icon-image":"City small scale","icon-padding":1,"text-font":["Montserrat SemiBold"],"text-size":11.5,"text-anchor":"bottom-left","text-max-width":8,"text-field":"{_name}","text-padding":1,"text-offset":[0.2,0.1],"text-justify":"left"},"paint":{"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City small scale/medium non capital","type":"symbol","source":"esri","source-layer":"City small scale","filter":["==","_symbol",9],"minzoom":3,"maxzoom":10,"layout":{"symbol-avoid-edges":true,"icon-image":"City small scale","icon-padding":1,"text-font":["Montserrat SemiBold"],"text-anchor":"bottom-left","text-max-width":8,"text-field":"{_name}","text-padding":1,"text-offset":[0.2,0.1],"text-justify":"left","text-size":{"stops":[[4,12.3],[6,12.3],[8,13]]}},"paint":{"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City small scale/other capital","type":"symbol","source":"esri","source-layer":"City small scale","filter":["==","_symbol",18],"minzoom":3,"maxzoom":10,"layout":{"symbol-avoid-edges":true,"icon-image":"City small scale","icon-padding":1,"text-font":["Montserrat SemiBold"],"text-size":11.5,"text-anchor":"bottom-left","text-max-width":8,"text-field":"{_name}","text-padding":1,"text-offset":[0.2,0.1],"text-justify":"left"},"paint":{"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City small scale/town large other capital","type":"symbol","source":"esri","source-layer":"City small scale","filter":["==","_symbol",14],"minzoom":3,"maxzoom":10,"layout":{"symbol-avoid-edges":true,"icon-image":"City small scale","icon-padding":1,"text-font":["Montserrat SemiBold"],"text-size":11.5,"text-anchor":"bottom-left","text-max-width":8,"text-field":"{_name}","text-padding":1,"text-offset":[0.2,0.1],"text-justify":"left"},"paint":{"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City small scale/small other capital","type":"symbol","source":"esri","source-layer":"City small scale","filter":["==","_symbol",11],"minzoom":3,"maxzoom":10,"layout":{"symbol-avoid-edges":true,"icon-image":"City small scale","icon-padding":1,"text-font":["Montserrat SemiBold"],"text-size":11.5,"text-anchor":"bottom-left","text-max-width":8,"text-field":"{_name}","text-padding":1,"text-offset":[0.2,0.1],"text-justify":"left"},"paint":{"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City small scale/medium other capital","type":"symbol","source":"esri","source-layer":"City small scale","filter":["==","_symbol",8],"minzoom":3,"maxzoom":10,"layout":{"symbol-avoid-edges":true,"icon-image":"City small scale","icon-padding":1,"text-font":["Montserrat SemiBold"],"text-anchor":"bottom-left","text-max-width":8,"text-field":"{_name}","text-padding":1,"text-offset":[0.2,0.1],"text-justify":"left","text-size":{"stops":[[4,12.3],[6,12.3],[8,13]]}},"paint":{"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Admin0 point/x small","type":"symbol","source":"esri","source-layer":"Admin0 point","filter":["==","_label_class",5],"minzoom":5,"maxzoom":10,"layout":{"text-font":["Avenir Next LT Pro Bold"],"text-max-width":8,"text-field":"{_name}","text-padding":1,"symbol-avoid-edges":true,"text-letter-spacing":{"stops":[[5,0.13],[8,0.5]]},"text-size":{"stops":[[5,13],[10,18]]}},"paint":{"text-color":"#0f010f","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Admin0 point/small","type":"symbol","source":"esri","source-layer":"Admin0 point","filter":["==","_label_class",4],"minzoom":4,"maxzoom":10,"layout":{"text-font":["Avenir Next LT Pro Bold"],"text-max-width":8,"text-field":"{_name}","text-padding":1,"symbol-avoid-edges":true,"text-letter-spacing":{"stops":[[4,0.13],[8,0.5]]},"text-size":{"stops":[[4,13],[10,18]]}},"paint":{"text-color":"#0f010f","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Admin0 point/medium","type":"symbol","source":"esri","source-layer":"Admin0 point","filter":["==","_label_class",3],"minzoom":2,"maxzoom":10,"layout":{"text-font":["Avenir Next LT Pro Bold"],"text-max-width":8,"text-field":"{_name}","text-padding":1,"symbol-avoid-edges":true,"text-letter-spacing":{"stops":[[2,0.13],[8,0.5]]},"text-size":{"stops":[[2,10],[4,14],[10,22]]}},"paint":{"text-color":"#0f010f","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Admin0 point/large","type":"symbol","source":"esri","source-layer":"Admin0 point","filter":["==","_label_class",2],"minzoom":2,"maxzoom":10,"layout":{"text-font":["Avenir Next LT Pro Bold"],"text-max-width":8,"text-field":"{_name}","text-padding":1,"symbol-avoid-edges":true,"text-letter-spacing":{"stops":[[2,0.13],[8,0.5]]},"text-size":{"stops":[[2,11],[4,14],[6,22]]}},"paint":{"text-color":"#0f010f","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Admin0 point/x large","type":"symbol","source":"esri","source-layer":"Admin0 point","filter":["==","_label_class",1],"minzoom":2,"maxzoom":8,"layout":{"text-max-width":8,"text-field":"{_name}","text-padding":1,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-line-height":1.5,"text-letter-spacing":{"stops":[[2,0.15],[6,0.5]]},"text-size":{"stops":[[2,11.5],[4,15],[6,23]]}},"paint":{"text-color":"#0f010f","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City small scale/town small admin0 capital","type":"symbol","source":"esri","source-layer":"City small scale","filter":["==","_symbol",16],"minzoom":3,"maxzoom":10,"layout":{"symbol-avoid-edges":true,"icon-image":"City small scale","icon-padding":1,"text-font":["Montserrat SemiBold"],"text-anchor":"bottom-left","text-max-width":8,"text-field":"{_name}","text-padding":1,"text-offset":[0.2,0.1],"text-justify":"left","text-size":{"stops":[[4,12.3],[6,13.5],[8,14.3]]}},"paint":{"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City small scale/town large admin0 capital","type":"symbol","source":"esri","source-layer":"City small scale","filter":["==","_symbol",13],"minzoom":3,"maxzoom":10,"layout":{"symbol-avoid-edges":true,"icon-image":"City small scale","icon-padding":1,"text-font":["Montserrat SemiBold"],"text-anchor":"bottom-left","text-max-width":8,"text-field":"{_name}","text-padding":1,"text-offset":[0.2,0.1],"text-justify":"left","text-size":{"stops":[[4,12.3],[6,13.5],[8,14.3]]}},"paint":{"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City small scale/small admin0 capital","type":"symbol","source":"esri","source-layer":"City small scale","filter":["==","_symbol",10],"minzoom":3,"maxzoom":10,"layout":{"symbol-avoid-edges":true,"icon-image":"City small scale","icon-padding":1,"text-font":["Montserrat SemiBold"],"text-anchor":"bottom-left","text-max-width":8,"text-field":"{_name}","text-padding":1,"text-offset":[0.2,0.1],"text-justify":"left","text-size":{"stops":[[4,12.3],[6,13.5],[8,14.3]]}},"paint":{"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City small scale/medium admin0 capital","type":"symbol","source":"esri","source-layer":"City small scale","filter":["==","_symbol",7],"minzoom":3,"maxzoom":10,"layout":{"symbol-avoid-edges":true,"icon-image":"City small scale","icon-padding":1,"text-font":["Montserrat SemiBold"],"text-anchor":"bottom-left","text-max-width":8,"text-field":"{_name}","text-padding":1,"text-offset":[0.2,0.1],"text-justify":"left","text-size":{"stops":[[4,12.3],[6,13.5],[8,14.3]]}},"paint":{"text-color":"#343434","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City small scale/large other capital","type":"symbol","source":"esri","source-layer":"City small scale","filter":["==","_symbol",5],"minzoom":3,"maxzoom":10,"layout":{"symbol-avoid-edges":true,"icon-image":"City small scale","icon-padding":1,"text-font":["Montserrat SemiBold"],"text-anchor":"bottom-left","text-max-width":8,"text-field":"{_name}","text-padding":1,"text-offset":[0.2,0.1],"text-justify":"left","text-size":{"stops":[[4,12.3],[6,12.3],[8,13]]}},"paint":{"text-color":{"stops":[[2,"#343434"],[3,"#000000"]]},"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City small scale/x large admin2 capital","type":"symbol","source":"esri","source-layer":"City small scale","filter":["==","_symbol",2],"minzoom":3,"maxzoom":10,"layout":{"symbol-avoid-edges":true,"icon-image":"City small scale","icon-padding":1,"text-font":["Montserrat SemiBold"],"text-anchor":"bottom-left","text-max-width":8,"text-field":"{_name}","text-padding":1,"text-offset":[0.2,0.1],"text-justify":"left","text-size":{"stops":[[4,12.3],[6,13.5],[8,14.3]]}},"paint":{"text-color":{"stops":[[2,"#343434"],[3,"#000000"]]},"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City small scale/large non capital","type":"symbol","source":"esri","source-layer":"City small scale","filter":["==","_symbol",6],"minzoom":3,"maxzoom":10,"layout":{"symbol-avoid-edges":true,"icon-image":"City small scale","icon-padding":1,"text-font":["Montserrat SemiBold"],"text-anchor":"bottom-left","text-max-width":8,"text-field":"{_name}","text-padding":1,"text-offset":[0.2,0.1],"text-justify":"left","text-size":{"stops":[[4,12.3],[6,12.3],[8,13]]}},"paint":{"text-color":{"stops":[[2,"#343434"],[3,"#000000"]]},"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City small scale/large admin0 capital","type":"symbol","source":"esri","source-layer":"City small scale","filter":["==","_symbol",4],"minzoom":3,"maxzoom":10,"layout":{"symbol-avoid-edges":true,"icon-image":"City small scale","icon-padding":1,"text-font":["Montserrat SemiBold"],"text-anchor":"bottom-left","text-max-width":8,"text-field":"{_name}","text-padding":1,"text-offset":[0.2,0.1],"text-justify":"left","text-size":{"stops":[[4,12.3],[6,13.5],[8,14.3]]}},"paint":{"text-color":{"stops":[[2,"#2d2d2d"],[3,"#000000"]]},"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City small scale/x large non capital","type":"symbol","source":"esri","source-layer":"City small scale","filter":["==","_symbol",3],"minzoom":3,"maxzoom":10,"layout":{"symbol-avoid-edges":true,"icon-image":"City small scale","icon-padding":1,"text-font":["Montserrat SemiBold"],"text-anchor":"bottom-left","text-max-width":8,"text-field":"{_name}","text-padding":1,"text-offset":[0.2,0.1],"text-justify":"left","text-size":{"stops":[[4,12.3],[6,13.5],[8,14.3]]}},"paint":{"text-color":{"stops":[[2,"#343434"],[3,"#000000"]]},"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City small scale/x large admin1 capital","type":"symbol","source":"esri","source-layer":"City small scale","filter":["==","_symbol",1],"minzoom":3,"maxzoom":10,"layout":{"symbol-avoid-edges":true,"icon-image":"City small scale","icon-padding":1,"text-font":["Montserrat SemiBold"],"text-anchor":"bottom-left","text-max-width":8,"text-field":"{_name}","text-padding":1,"text-offset":[0.2,0.1],"text-justify":"left","text-size":{"stops":[[4,12.3],[6,13.5],[8,14.3]]}},"paint":{"text-color":{"stops":[[2,"#343434"],[3,"#000000"]]},"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"City small scale/x large admin0 capital","type":"symbol","source":"esri","source-layer":"City small scale","filter":["==","_symbol",0],"minzoom":3,"maxzoom":10,"layout":{"symbol-avoid-edges":true,"icon-image":"City small scale","icon-padding":1,"text-font":["Montserrat SemiBold"],"text-anchor":"bottom-left","text-max-width":8,"text-field":"{_name}","text-padding":1,"text-offset":[0.2,0.1],"text-justify":"left","text-size":{"stops":[[4,12.3],[6,13.5],[8,14.3]]}},"paint":{"text-color":{"stops":[[2,"#2d2d2d"],[3,"#000000"]]},"text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Admin0 point/2x large","type":"symbol","source":"esri","source-layer":"Admin0 point","filter":["==","_label_class",0],"minzoom":2,"maxzoom":6,"layout":{"text-max-width":8,"text-field":"{_name}","text-padding":1,"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-line-height":1.7,"text-letter-spacing":{"stops":[[2,0.3],[5,0.5]]},"text-size":{"stops":[[2,14],[4,22.5],[5,28]]}},"paint":{"text-color":"#0f010f","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Continent","type":"symbol","source":"esri","source-layer":"Continent","maxzoom":2,"layout":{"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":{"stops":[[0,8.3],[1,10.3]]},"text-letter-spacing":0.35,"text-max-width":8,"text-line-height":1.75,"text-field":"{_name_global}","text-padding":1,"text-transform":"uppercase"},"paint":{"text-color":"#363636","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"Disputed label point/Island","type":"symbol","source":"esri","source-layer":"Disputed label point","filter":["all",["==","_label_class",1],["in","DisputeID",0]],"minzoom":6,"layout":{"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Demi Italic"],"text-size":{"stops":[[6,7],[15,10]]},"text-letter-spacing":0.13,"text-line-height":1.5,"text-max-width":4,"text-field":"{_name}","text-padding":1},"paint":{"text-color":"#595959","text-halo-blur":1,"text-halo-color":"#EBE7E2","text-halo-width":1}},{"id":"Disputed label point/Waterbody","type":"symbol","source":"esri","source-layer":"Disputed label point","filter":["all",["==","_label_class",0],["in","DisputeID",1006]],"minzoom":2,"maxzoom":10,"layout":{"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Demi Italic"],"text-size":{"stops":[[2,8],[6,9.3]]},"text-letter-spacing":0.1,"text-max-width":6,"text-field":"{_name}","text-padding":1},"paint":{"text-color":{"stops":[[1,"#0d6c9a"],[6,"#0d6c9a"]]},"text-halo-blur":1,"text-halo-color":"#82CFF5","text-halo-width":0.5}},{"id":"Disputed label point/Admin0","type":"symbol","source":"esri","source-layer":"Disputed label point","filter":["all",["==","_label_class",2],["in","DisputeID",1021]],"minzoom":2,"layout":{"symbol-avoid-edges":true,"text-font":["Avenir Next LT Pro Bold"],"text-size":{"stops":[[2,10],[4,14],[10,22]]},"text-letter-spacing":{"stops":[[2,0.13],[8,0.5]]},"text-max-width":8,"text-field":"{_name}","text-padding":1},"paint":{"text-color":"#1f1d1f","text-halo-color":"#EBE7E2","text-halo-width":1,"text-halo-blur":1}},{"id":"mapillary-images","type":"circle","source":"mly","source-layer":"image","maxzoom":22,"minzoom":11,"filter":["all",["==","is_pano",true],["==","organization_id",518073312556755]],"layout":{"visibility":"visible"},"paint":{"circle-radius":{"base":1,"stops":[[13,0.1],[14,0.5],[17,2],[18.5,4],[19,7],[19.5,10]]},"circle-color":"rgba(20,20,120,0)"}},{"id":"mapillary-location","type":"symbol","source":"mapillary","layout":{"icon-rotate":["get","bearing"],"icon-rotation-alignment":"map","icon-image":"video"}},{"id":"parcels","type":"line","source":"parcels","source-layer":"parcels","minzoom":11,"layout":{"visibility":"visible"},"paint":{"line-color":{"stops":[[14,"#222"],[17,"#333"],[17.1,"#444"],[18,"#333"]]},"line-width":{"base":1,"stops":[[12,0.1],[14,0.75],[17,1.5],[20,4]]},"line-opacity":{"base":1,"stops":[[12,0],[12.1,0.5],[22,1]]}}},{"id":"parcels-highlight","type":"line","source":"parcels","source-layer":"parcels","minzoom":11,"filter":["==","parcelno",""],"layout":{"visibility":"visible"},"paint":{"line-color":"#feb70d","line-width":{"base":1,"stops":[[12,0.5],[14,2],[15,3],[22,10]]},"line-opacity":{"base":1,"stops":[[12,0],[12.1,0.1],[12.5,1],[22,1]]}}},{"id":"parcels-fill","type":"fill","source":"parcels","source-layer":"parcels","interactive":true,"minzoom":12,"layout":{"visibility":"visible"},"paint":{"fill-color":"rgba(0,0,0,0)"}}],"metadata":{"arcgisStyleUrl":"https://www.arcgis.com/sharing/rest/content/items/273bf8d5c8ac400183fc24e109d20bcf/resources/styles/root.json","arcgisOriginalItemTitle":"Community"}}'),Xt=e(521);class Jt extends HTMLElement{static get observedAttributes(){return["data-map-state","data-map-mode","data-map-layers","data-active-layers","data-clickable-layers","data-zoom","data-center"]}constructor(){super();const t=this.attachShadow({mode:"open"});this.styles=document.createElement("style"),this.styles.textContent="#map-wrapper {\n position: relative;\n height: 100%;\n}\n\n#map {\n width: 100%;\n height: 100%;\n min-height: 50em;\n}\n\ncod-button {\n position: absolute;\n bottom: 0;\n right: 0;\n}\n\n@media all and (min-width: 1024px) {\n cod-button {\n top: 0;\n left: 0;\n bottom: auto;\n right: auto;\n }\n}\n",this.maplibreStyles=document.createElement("style"),this.maplibreStyles.textContent=Xt.Z,t.appendChild(this.maplibreStyles),t.appendChild(this.styles),this.mapWrapper=document.createElement("section"),this.mapWrapper.id="map-wrapper";const n=document.createElement("article");n.id="map",this.mapWrapper.appendChild(n),t.appendChild(this.mapWrapper);let e=this.getAttribute("data-center");null!==e&&(e=e.split(","));const o=this.getAttribute("data-zoom");this.map=new(Ut().Map)({container:n,style:Yt,center:null!==e?[e[0],e[1]]:[-83.1,42.36],zoom:null!==o?o:9})}attributeChangedCallback(t,n,e){switch(t){case"data-map-state":{const t=this,n=JSON.parse(this.getAttribute("data-location"));let o=this.getAttribute("data-clickable-layers");o=null!==o?o.split(","):[],"init"===e?(this.map.addControl(new(Ut().NavigationControl)),this.map.on("load",(()=>{const t=JSON.parse(this.getAttribute("data-map-images"));t&&t.forEach((t=>{this.map.loadImage(t.source,((n,e)=>{if(n)throw n;this.map.hasImage(t.id)||this.map.addImage(t.id,e)}))}))})),this.map.on("style.load",(()=>{if(this.map.resize(),n){const t=[n.location.x,n.location.y],e=new(Ut().Marker);e.setLngLat(t),e.addTo(this.map),this.map.flyTo({center:t,zoom:12,bearing:0,speed:1.5,curve:1,easing:function(t){return t},essential:!0})}const t=JSON.parse(this.getAttribute("data-map-data"));if(t){const n={type:"geojson"};t.source&&(n.data=t.source),t.sourceCluster&&(n.cluster=t.sourceCluster),t.sourceClusterMaxZoom&&(n.clusterMaxZoom=t.sourceClusterMaxZoom),t.sourceClusterRadius&&(n.clusterRadius=t.sourceClusterRadius),this.map.addSource("data-points",n),t.layers.forEach((t=>{const n=this.buildLayer(t);this.map.addLayer(n)}))}})),this.map.on("click","data-points",(function(n){let e,o;switch(t.getAttribute("data-map-mode")){case"my-home-info":case"popup":o=JSON.parse(t.getAttribute("data-popup-structure")),e=t.getAttribute("data-map-active-data"),t.buildPopup(e,o,t,n);break;case"map-panel":{const e=t.getAttribute("data-parent-component"),o=document.getElementsByTagName(e);o[0].setAttribute("data-panel-data",JSON.stringify(n.features[0])),o[0].setAttribute("data-app-state","active-panel");break}}})),this.map.on("mouseenter","data-points",(function(){t.map.getCanvas().style.cursor="pointer"})),this.map.on("mouseleave","data-points",(function(){t.map.getCanvas().style.cursor=""}))):o.forEach((n=>{t.map.on("click",n,(function(n){let e,o=t.getAttribute("data-popup-layers");o=null!==o?JSON.parse(o):[];let a=t.getAttribute("data-zoom-layers");if(a=null!==a?JSON.parse(a):[],o.includes(n.features[0].layer.id))e=JSON.parse(t.getAttribute("data-popup-structure")),t.buildPopup(n.features[0].layer.source,e,t,n);else if(a.includes(n.features[0].layer.id)){const e=t.map.getZoom()+1;t.map.easeTo({center:n.features[0].geometry.coordinates,zoom:e})}else{const e=t.getAttribute("data-parent-component"),o=document.getElementsByTagName(e);o[0].setAttribute("data-panel-data",JSON.stringify(n.features[0])),o[0].setAttribute("data-app-state","active-panel")}})),t.map.on("mouseenter",n,(function(){t.map.getCanvas().style.cursor="pointer"})),t.map.on("mouseleave",n,(function(){t.map.getCanvas().style.cursor=""}))}));break}case"data-map-mode":switch(this.getAttribute("data-map-mode")){case"my-home-info":{const t=this.getAttribute("data-parent-component"),n=document.getElementsByTagName(t),e=document.createElement("cod-button");e.addEventListener("click",(()=>{n[0]&&n[0].setAttribute("data-app-state","results")})),e.setAttribute("data-primary",!0),e.setAttribute("data-label","x"),e.setAttribute("data-size","large"),e.setAttribute("data-hover",!1),e.setAttribute("data-background-color","warning"),e.setAttribute("data-img",""),e.setAttribute("data-img-alt",""),e.setAttribute("data-icon",""),e.setAttribute("data-shape","square"),e.setAttribute("data-extra-classes","fw-bold"),this.mapWrapper.appendChild(e),n[0]&&n[0].setAttribute("data-map-state","init");break}}break;case"data-map-layers":{let t=this.getAttribute("data-map-layers");const n=this.map;t&&this.map.on("style.load",(()=>{t=JSON.parse(t),t.forEach((t=>{const e={type:"geojson"};t.source&&(e.data=t.source),t.sourceCluster&&(e.cluster=t.sourceCluster),t.sourceClusterMaxZoom&&(e.clusterMaxZoom=t.sourceClusterMaxZoom),t.sourceClusterRadius&&(e.clusterRadius=t.sourceClusterRadius),n.addSource(t.name,e),t.layers.forEach((t=>{const n=this.buildLayer(t);this.map.addLayer(n),n.clickable&&this.updateClickableLayers(n)}))}))}));break}case"data-active-layers":default:break;case"data-clickable-layers":this.setAttribute("data-map-state","reload");break;case"data-zoom":this.map.setZoom(e);break;case"data-center":{const t=e.split(",");this.map.setCenter([t[0],t[1]]);break}}}updateClickableLayers(t){let n=null===this.getAttribute("data-clickable-layers")?"":this.getAttribute("data-clickable-layers");const e=n.split(",");n=[],n=e,n.push(t.id),n=n.filter((t=>""!==t)),n=n.join(","),this.setAttribute("data-clickable-layers",n)}buildLayer(t){const n={id:t.name};switch(t.type){case"line":return n.type=t.type,n.source=t.source,t.minZoom&&(n.minzoom=t.minZoom),t.maxZoom&&(n.maxzoom=t.maxZoom),t.active?n.layout={visibility:"visible"}:n.layout={visibility:"none"},t.width?n.paint={"line-color":t.color,"line-width":t.width}:n.paint={"line-color":t.color},n;case"text":return n.type="symbol",n.source=t.source,t.minZoom&&(n.minzoom=t.minZoom),t.maxZoom&&(n.maxzoom=t.maxZoom),t.filter&&(n.filter=t.filter),t.active?n.layout={visibility:"visible","text-field":t.textVariable?t.text:["get",t.text],"text-font":["Arial Unicode MS Regular"]}:n.layout={visibility:"none","text-field":t.textVariable?t.text:["get",t.text],"text-font":["Arial Unicode MS Regular"]},n;case"image":return n.type="symbol",n.source=t.source,t.minZoom&&(n.minzoom=t.minZoom),t.maxZoom&&(n.maxzoom=t.maxZoom),t.filter&&(n.filter=t.filter),t.active?n.layout={visibility:"visible","icon-image":t.img,"icon-size":t.imgSize}:n.layout={visibility:"none","icon-image":t.img,"icon-size":t.imgSize},n;case"circle":return n.type=t.type,n.source=t.source,n.clickable=t.clickable,t.minZoom&&(n.minzoom=t.minZoom),t.maxZoom&&(n.maxzoom=t.maxZoom),t.filter&&(n.filter=t.filter),t.active?n.layout={visibility:"visible"}:n.layout={visibility:"none"},t.sort?n["fill-sort-key"]=t.sort:n["fill-sort-key"]=1,n.paint={"circle-radius":t.radius?t.radius:5,"circle-color":t.color},n;case"fill":return n.type=t.type,n.source=t.source,n.clickable=t.clickable,t.minZoom&&(n.minzoom=t.minZoom),t.maxZoom&&(n.maxzoom=t.maxZoom),t.filter&&(n.filter=t.filter),t.active?n.layout={visibility:"visible"}:n.layout={visibility:"none"},t.sort?n["fill-sort-key"]=t.sort:n["fill-sort-key"]=1,t.opacity?n.paint={"fill-color":t.color,"fill-opacity":t.opacity}:n.paint={"fill-color":t.color},n}}buildPopup(t,n,e,o){let a="";n[t].forEach((t=>{a+=this.buildPopupElement(t,o.features[0].properties)})),(new(Ut().Popup)).setLngLat(o.lngLat).setHTML(a).addTo(e.map)}buildPopupElement(t,n){switch(t.type){case"field-value":return"

".concat(t.label," ").concat(n[t.value],"

");case"field-link":return"

".concat(t.label,' ').concat(n[t.value],"

");case"field-image":return'').concat(n[t.alt],'')}}}customElements.define("cod-map",Jt);const Kt=document.createElement("template");Kt.innerHTML="\n\n";class $t extends HTMLElement{static get observedAttributes(){return["data-show"]}constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(Kt.content.cloneNode(!0)),this.navbar=document.createElement("nav"),this.navbarContainer=document.createElement("div"),this.navbarToggle=document.createElement("div"),this.navbarBrand=document.createElement("div"),this.navbarCollapse=document.createElement("div"),t.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{switch(t.tagName){case"COD-NAVBAR-TOGGLE":"offcanvas"===this.getAttribute("data-target-toggle")&&t.setAttribute("data-target-toggle","offcanvas"),"true"===this.getAttribute("data-show")&&t.setAttribute("data-show",!0),this.navbarToggle.appendChild(t),this.navbarContainer.appendChild(this.navbarToggle);break;case"COD-NAVBAR-COLLAPSE":this.navbarCollapse.appendChild(t),this.navbarContainer.appendChild(this.navbarCollapse);break;case"COD-NAVBAR-BRAND":this.navbarBrand.appendChild(t),this.navbarContainer.appendChild(this.navbarBrand);break;case"COD-OFFCANVAS":{const n=this.getAttribute("data-expand");n&&t.setAttribute("data-expand",n),this.navbarContainer.appendChild(t);break}default:t.className.split(" ").includes("no-wc")&&t.remove();break}}))})),this.navbar.appendChild(this.navbarContainer);const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent=".navbar-brand {\n padding-top: 0;\n}\n",t.appendChild(n),t.appendChild(e),t.appendChild(r)}attributeChangedCallback(t,n,e){if(this.navbarToggle.querySelector("cod-navbar-toggle").setAttribute("data-show",e),this.navbarToggle.setAttribute("aria-expanded",e),this.navbarCollapse.querySelector("cod-navbar-collapse")){const t=this.navbarCollapse.className.split(" "),n=t.pop();"show"!==n&&t.push(n),"true"===e&&t.push("show"),this.navbarCollapse.className=t.join(" ")}}connectedCallback(){const t=this.getAttribute("data-expand"),n=this.getAttribute("data-id"),e=this.getAttribute("data-show"),o=this.getAttribute("data-position"),a=this.getAttribute("data-extra-classes"),r=this.getAttribute("data-container-classes"),i=this.getAttribute("data-collapse-classes"),l=["navbar"],s=[""],d=["collapse navbar-collapse"];r&&s.push(r),a&&l.push(a),i&&d.push(i),o&&l.push(o);"true"===this.getAttribute("data-navbar-dark")&&l.push(["navbar-dark"]),t&&("always"===t?l.push("navbar-expand"):l.push("navbar-expand-".concat(t))),"true"===e?(this.navbarCollapseClasses.push("show"),this.navbarToggle.setAttribute("aria-expanded","true")):this.navbarToggle.setAttribute("aria-expanded","false"),n&&(this.navbar.id=n,this.navbarCollapse.id="".concat(n,"-collapse"),this.navbarToggle.setAttribute("data-bs-target","#".concat(n,"-collapse")),this.navbarToggle.setAttribute("aria-control","".concat(n,"-collapse")),this.navbarToggle.setAttribute("aria-label","".concat(n," toggle navigation"))),this.navbar.className=l.join(" "),this.navbarContainer.className=s.join(" "),this.navbarBrand.className=["navbar-brand"].join(" "),this.navbarToggle.className=["navbar-toggler"].join(" "),this.navbarToggle.setAttribute("data-bs-toggle","collapse"),this.navbarCollapse.className=d.join(" "),this.shadowRoot.querySelector("div")||this.shadowRoot.appendChild(this.navbar)}}customElements.define("cod-navbar",$t);const Qt=document.createElement("template");Qt.innerHTML="\n\n";class tn extends HTMLElement{static get observedAttributes(){return["data-show"]}constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(Qt.content.cloneNode(!0)),this.offcanvas=document.createElement("div"),this.offcanvasBackdrop=document.createElement("div"),t.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{"true"==this.getAttribute("data-show")&&t.setAttribute("data-show",!0),"COD-OFFCANVAS-HEADER"==t.tagName&&("true"==this.getAttribute("data-button-dark")&&t.setAttribute("data-button-dark",!0),t.setAttribute("data-parent-id",this.getAttribute("data-id")));const n=this.getAttribute("data-expand");n&&t.setAttribute("data-expand",n);t.className.split(" ").includes("no-wc")?t.remove():this.offcanvas.appendChild(t)}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent=".navbar-expand-xs.offcanvas {\n position: static;\n z-index: auto;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n transform: none !important;\n transition: none;\n}\n\n@media (min-width: 576px) {\n .navbar-expand-sm.offcanvas {\n position: static;\n z-index: auto;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n transform: none !important;\n transition: none;\n }\n}\n@media (min-width: 768px) {\n .navbar-expand-md.offcanvas {\n position: static;\n z-index: auto;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n transform: none !important;\n transition: none;\n }\n}\n@media (min-width: 992px) {\n .navbar-expand-lg.offcanvas {\n position: static;\n z-index: auto;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n transform: none !important;\n transition: none;\n }\n}\n@media (min-width: 1200px) {\n .navbar-expand-xl.offcanvas {\n position: static;\n z-index: auto;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n transform: none !important;\n transition: none;\n }\n}\n@media (min-width: 1400px) {\n .navbar-expand-xxl.offcanvas {\n position: static;\n z-index: auto;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n transform: none !important;\n transition: none;\n }\n}\n\n/*# sourceMappingURL=Offcanvas.css.map */\n",t.appendChild(n),t.appendChild(e),t.appendChild(r)}attributeChangedCallback(t,n,e){const o=this.offcanvas.className.split(" "),a=o.pop();"show"!=a&&o.push(a),"true"==e?(o.push("show"),"false"!=this.getAttribute("data-backdrop")&&("true"!=this.getAttribute("data-static")&&this.offcanvasBackdrop.addEventListener("click",this._onClick),this.shadowRoot.appendChild(this.offcanvasBackdrop))):this.shadowRoot.querySelector("div.offcanvas-backdrop")&&this.shadowRoot.removeChild(this.offcanvasBackdrop),this.offcanvas.className=o.join(" ")}connectedCallback(){const t=this.getAttribute("data-show"),n=this.getAttribute("data-placement"),e=this.getAttribute("data-id"),o=this.getAttribute("data-backdrop"),a=this.getAttribute("data-backdrop-extra-classes"),r=this.getAttribute("data-scroll"),i=this.getAttribute("data-static"),l=this.getAttribute("data-extra-classes"),s=["offcanvas"],d=["offcanvas-backdrop fade show"];"true"==t&&s.push("show"),"false"==o&&this.offcanvas.setAttribute("data-bs-backdrop",!1),"true"==r&&this.offcanvas.setAttribute("data-bs-scroll",!0),"true"==i&&this.offcanvas.setAttribute("data-bs-backdrop","static"),void 0!=a&&null!=a&&d.push(a),void 0!=l&&null!=l&&s.push(l),void 0!=n&&null!=n?s.push("offcanvas-".concat(n)):s.push("offcanvas-start");const c=this.getAttribute("data-expand");c&&("always"===c?s.push("navbar-expand"):s.push("navbar-expand-".concat(c))),void 0!=e&&null!=e&&(this.offcanvas.id=e,this.offcanvas.setAttribute("aria-labelledby","".concat(e,"-label"))),this.offcanvas.setAttribute("tabindex",-1),this.offcanvas.className=s.join(" "),this.offcanvasBackdrop.className=d.join(" "),this.shadowRoot.querySelector("div")||this.shadowRoot.appendChild(this.offcanvas)}disconnectedCallback(){this.removeEventListener("click",this._onClick.bind(this))}_onClick(){this.getRootNode().host.setAttribute("data-show","false")}}customElements.define("cod-offcanvas",tn);const nn=document.createElement("template");nn.innerHTML='\n\n\n\n\n';class en extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"}),n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent=':host {\n --exposure: 50%;\n\n --thumb-background-color: hsla(0, 0%, 100%, 0.9);\n --thumb-background-image: url(\'data:image/svg+xml;utf8,\');\n --thumb-size: clamp(3em, 10vmin, 5em);\n --thumb-radius: 50%;\n --thumb-border-color: hsla(0, 0%, 0%, 0.9);\n --thumb-border-size: 2px;\n\n --focus-width: var(--thumb-border-size);\n --focus-color: hsl(200, 100%, 80%);\n\n --divider-width: 2px;\n --divider-color: hsla(0, 0%, 0%, 0.9);\n\n display: flex;\n flex-direction: column;\n margin: 0;\n overflow: hidden;\n position: relative;\n}\n\n::slotted(img) {\n height: auto;\n width: 100%;\n}\n\n::slotted([slot=\'image-2\']) {\n clip-path: polygon(\n calc(var(--exposure) + var(--divider-width) / 2) 0,\n 100% 0,\n 100% 100%,\n calc(var(--exposure) + var(--divider-width) / 2) 100%\n );\n}\n\nslot {\n display: flex;\n flex-direction: column;\n width: 100%;\n}\n\nslot[name=\'image-2\'] {\n position: absolute;\n top: 0;\n filter: drop-shadow(calc(var(--divider-width) * -1) 0 0 var(--divider-color));\n}\n\nlabel {\n align-items: stretch;\n display: flex;\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n}\n\ninput {\n cursor: col-resize;\n margin: 0 calc(var(--thumb-size) / -2);\n width: calc(100% + var(--thumb-size));\n appearance: none;\n -webkit-appearance: none;\n background: none;\n border: none;\n}\n\n::-moz-range-thumb {\n background-color: var(--thumb-background-color);\n background-image: var(--thumb-background-image);\n background-size: 90%;\n background-position: center center;\n background-repeat: no-repeat;\n border-radius: var(--thumb-radius);\n border: var(--thumb-border-size) var(--thumb-border-color) solid;\n color: var(--thumb-border-color);\n width: var(--thumb-size);\n height: var(--thumb-size);\n}\n\n::-webkit-slider-thumb {\n -webkit-appearance: none;\n background-color: var(--thumb-background-color);\n background-image: var(--thumb-background-image);\n background-size: 90%;\n background-position: center center;\n background-repeat: no-repeat;\n border-radius: var(--thumb-radius);\n border: var(--thumb-border-size) var(--thumb-border-color) solid;\n color: var(--thumb-border-color);\n width: var(--thumb-size);\n height: var(--thumb-size);\n}\n\ninput:focus::-moz-range-thumb {\n background-color: var(--thumb-background-color);\n background-image: var(--thumb-background-image);\n background-size: 90%;\n background-position: center center;\n background-repeat: no-repeat;\n border-radius: var(--thumb-radius);\n border: var(--thumb-border-size) var(--thumb-border-color) solid;\n color: var(--thumb-border-color);\n width: var(--thumb-size);\n height: var(--thumb-size);\n}\n\ninput:focus::-webkit-slider-thumb {\n background-color: var(--thumb-background-color);\n background-image: var(--thumb-background-image);\n background-size: 90%;\n background-position: center center;\n background-repeat: no-repeat;\n border-radius: var(--thumb-radius);\n border: var(--thumb-border-size) var(--thumb-border-color) solid;\n color: var(--thumb-border-color);\n width: var(--thumb-size);\n height: var(--thumb-size);\n}\n',t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){this.shadowRoot.appendChild(nn.content.cloneNode(!0)),["input","change"].forEach((t=>{this.shadowRoot.querySelector("input").addEventListener(t,(t=>{let{target:n}=t;this.animationFrame&&cancelAnimationFrame(this.animationFrame),this.animationFrame=requestAnimationFrame((()=>{this.shadowRoot.host.style.setProperty("--exposure","".concat(n.value,"%"))}))}))}));const t=this.shadowRoot.host.getAttribute("label-text");t&&(this.shadowRoot.querySelector(".js-label-text").textContent=t)}}customElements.define("cod-img-slider",en);const on=document.createElement("template");on.innerHTML="\n\n";class an extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(on.content.cloneNode(!0)),this.tableContainer=document.createElement("div"),this.table=document.createElement("table"),this.tableContainer.appendChild(this.table),t.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{switch(t.tagName){case"COD-TABLE-HEADER":"true"==this.getAttribute("data-striped-col")&&t.setAttribute("data-striped-col","true"),"true"==this.getAttribute("data-vertical-align")&&t.setAttribute("data-vertical-align","true"),"true"===this.getAttribute("data-scrollable")&&t.setAttribute("data-scrollable","true"),yt(this,t),this.table.appendChild(t);break;case"COD-TABLE-BODY":"true"==this.getAttribute("data-hover")&&t.setAttribute("data-hover","true"),"true"==this.getAttribute("data-striped-row")&&t.setAttribute("data-striped-row","true"),"true"==this.getAttribute("data-striped-col")&&t.setAttribute("data-striped-col","true"),"true"==this.getAttribute("data-vertical-align")&&t.setAttribute("data-vertical-align","true"),"true"===this.getAttribute("data-scrollable")&&t.setAttribute("data-scrollable","true"),yt(this,t),this.table.appendChild(t);break;default:t.className.split(" ").includes("no-wc")&&t.remove();break}}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="",t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){const t=this.getAttribute("data-id"),n=this.getAttribute("data-extra-classes"),e=["table"];void 0!=n&&null!=n&&e.push(n),void 0!=t&&null!=t&&(this.table.id=t),"true"===this.getAttribute("data-scrollable")&&(this.tableContainer.className="table-responsive"),this.table.className=e.join(" "),this.shadowRoot.querySelector("div")||this.shadowRoot.appendChild(this.tableContainer)}attributeChangedCallback(t,n,e){t in an.observedAttributeCbs&&this.handleObservedAttribute(n,e,an.observedAttributeCbs[t])}}(0,j.Z)(an,"observedAttributeCbs",{"data-stacked":(t,n,e)=>{const o=t.shadowRoot.querySelector("cod-table-header"),a=t.shadowRoot.querySelector("cod-table-body");null!==e?(null===o||void 0===o||o.setAttribute("data-stacked"),null===a||void 0===a||a.setAttribute("data-stacked")):(null===o||void 0===o||o.removeAttribute("data-stacked"),null===a||void 0===a||a.removeAttribute("data-stacked"))},"data-label-block":(t,n,e)=>{const o=t.shadowRoot.querySelector("cod-table-header"),a=t.shadowRoot.querySelector("cod-table-body");null!==e?(null===o||void 0===o||o.setAttribute("data-label-block"),null===a||void 0===a||a.setAttribute("data-label-block")):(null===o||void 0===o||o.removeAttribute("data-label-block"),null===a||void 0===a||a.removeAttribute("data-label-block"))}}),(0,j.Z)(an,"observedAttributes",Object.keys(an.observedAttributeCbs)),Object.assign(an.prototype,wt),customElements.define("cod-table",an);const rn=document.createElement("template");rn.innerHTML='\n
\n \n\n \x3c!-- Next line is an example of an open modal. --\x3e\n \x3c!--\n';class ln extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(rn.content.cloneNode(!0)),this.playerContainer=this.shadowRoot.querySelector("#ytPlayerContainer"),this.player=null;const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="div.modal {\n --bs-modal-width: 90vw;\n}\n\n@media (min-width: 992px) {\n div.modal {\n --bs-modal-width: 50vw;\n }\n}\n.modal {\n background-color: rgba(0, 0, 0, 0.5);\n}\n\ndiv.video-placehold {\n background-color: lightgray;\n min-height: 343px;\n}\n\ndiv.player-container {\n position: relative;\n}\n\ndiv.player-container img.video-placehold {\n display: block;\n}\n\ndiv.player-container .play-icon {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 50px;\n height: 50px;\n}\n\n.play-icon::before {\n content: '';\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 100%;\n height: 100%;\n background-image: url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='currentColor' class='bi bi-play-circle-fill' viewBox='0 0 16 16'%3E%3Cpath d='M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0M6.79 5.093A.5.5 0 0 0 6 5.5v5a.5.5 0 0 0 .79.407l3.5-2.5a.5.5 0 0 0 0-.814z'/%3E%3C/svg%3E\");\n background-repeat: no-repeat;\n background-size: contain;\n}\n\niframe#ytPlayerContainer {\n width: 100%;\n aspect-ratio: 16/9;\n}\n\n/*# sourceMappingURL=VideoPlayer.css.map */\n",t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){this._buildThumbnailDisplayMode(),this._replacePlaceholderWithThumbnail();const t=this.getAttribute("player-display"),n=this.getAttribute("video-type"),e=this.getAttribute("video-id");if("modal"===t){this._setModalOpenCloseEventHandlers();if(this.shadowRoot.querySelector("#videoPlayerModalLabel").textContent=this.getAttribute("title"),"youtube"===n)this._loadVideo(e)}}_buildThumbnailDisplayMode(){const t=this.getAttribute("thumbnail-display"),n=this.shadowRoot.querySelector("#layoutContainer");switch(t){case"fullwidth":n.classList.add("w-100");break;case"inline":n.classList.remove("d-flex"),n.classList.add("d-inline-flex")}}_setModalOpenCloseEventHandlers(){this.shadowRoot.querySelector("#modalOpenButton").addEventListener("click",this._onOpenModal.bind(this));this.shadowRoot.querySelector("#modalCloseButton").addEventListener("click",this._onCloseModal.bind(this));this.shadowRoot.querySelector("#videoPlayerModal").addEventListener("click",this._onClickOutsideModal.bind(this))}_replacePlaceholderWithThumbnail(){const t=this.shadowRoot.querySelector("div.video-placehold"),n=this.getAttribute("thumbnail-src"),e=this.getAttribute("thumbnail-alt"),o=document.createElement("img");o.setAttribute("src",n),o.setAttribute("alt",e),o.classList.add("video-placehold","img-fluid"),t.appendChild(o);const a=document.createElement("div");a.classList.add("play-icon"),t.appendChild(a),t.classList.remove("video-placehold")}disconnectedCallback(){this.removeEventListener("click",this._onOpenModal.bind(this)),this.removeEventListener("click",this._onCloseModal.bind(this))}_onOpenModal(){var t;const n=this.shadowRoot.querySelector("#videoPlayerModal");n.classList.add("show"),n.style.display="block",n.removeAttribute("aria-hidden"),n.setAttribute("aria-modal","true"),n.setAttribute("role","modal"),null===(t=this.player)||void 0===t||t.playVideo()}_onCloseModal(){var t;const n=this.shadowRoot.querySelector("#videoPlayerModal");n.classList.remove("show"),n.style.display="none",n.removeAttribute("aria-modal"),n.removeAttribute("role"),n.setAttribute("aria-hidden","true"),null===(t=this.player)||void 0===t||t.pauseVideo()}_onClickOutsideModal(t){t.target.closest(".modal-content")||this._onCloseModal()}_loadVideo(t){if(window.YT)this._createPlayer(t);else{const n=document.createElement("script");n.src="https://www.youtube.com/iframe_api";const e=document.getElementsByTagName("script")[0];e.parentNode.insertBefore(n,e),window.onYouTubeIframeAPIReady=()=>{this._createPlayer(t)}}}_createPlayer(t){this.player=new YT.Player(this.playerContainer,{videoId:t,events:{}})}}(0,j.Z)(ln,"observedAttributes",[]),customElements.define("cod-videoplayer",ln);const sn=document.createElement("template");sn.innerHTML="\n\n";class dn extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(sn.content.cloneNode(!0)),this.accordion=document.createElement("div"),this.shadowRoot.addEventListener("slotchange",(t=>{t.target.assignedElements().forEach(((t,n)=>{switch(t.tagName){case"COD-ACCORDION-ITEM":{const e=document.createElement("div");e.className="accordion-item",t.setAttribute("data-parent-id",this.getAttribute("data-id")),t.setAttribute("data-index",n),null!==this.getAttribute("data-ol")&&t.setAttribute("data-li",""),e.appendChild(t),this.accordion.append(e);break}default:t.className.split(" ").includes("no-wc")?t.remove():this.card.appendChild(t);break}}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent=".accordion-ol {\n --bs-accordion-btn-padding-x: 0rem;\n --bs-accordion-btn-padding-y: 0rem;\n}\n",t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){const t=this.getAttribute("data-flush"),n=this.getAttribute("data-ol"),e=this.getAttribute("data-id"),o=this.getAttribute("data-extra-classes"),a=["accordion"];"true"==t&&a.push("accordion-flush"),null!==n&&a.push("accordion-ol"),void 0!=o&&null!=o&&a.push(o),this.accordion.className=a.join(" "),this.accordion.id=e,this.shadowRoot.querySelector("div")||this.shadowRoot.appendChild(this.accordion)}}customElements.define("cod-accordion",dn);const cn=document.createElement("template");cn.innerHTML="\n
\n\n";class bn extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(cn.content.cloneNode(!0)),this.btnGroup=t.querySelector("div"),t.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{t.className.split(" ").includes("no-wc")?t.remove():this.btnGroup.append(t)}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="",t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){const t=this.getAttribute("data-type"),n=this.getAttribute("data-label");let e=this.getAttribute("data-size"),o=this.getAttribute("data-vertical");const a=this.getAttribute("data-extra-classes");this.btnGroup.role="group"==t?"group":"toolbar",void 0!=e&&null!=e&&(e="btn-group-".concat(e)),"true"==o&&(o="btn-group-vertical"),this.btnGroup.setAttribute("aria-label",n),this.btnGroup.className=["btn-".concat(t),"".concat(e||""),"".concat(o||""),"".concat(a||"")].join(" ")}}customElements.define("cod-button-group",bn);const mn=document.createElement("template");mn.innerHTML="\n\n";class pn extends HTMLElement{static get observedAttributes(){return["data-show"]}constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(mn.content.cloneNode(!0)),this.dropdown=document.createElement("div"),this.shadowRoot.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{t.className.split(" ").includes("no-wc")?t.remove():this.dropdown.append(t)}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="",t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){let t=this.getAttribute("data-split");t="true"===t?"btn-group":"dropdown",this.dropdown.className=t,this.querySelector('cod-button[data-bs-toggle="dropdown"]')&&this.querySelector('cod-button[data-bs-toggle="dropdown"]').addEventListener("click",this._onClick),this.shadowRoot.querySelector("div")||this.shadowRoot.appendChild(this.dropdown)}disconnectedCallback(){this.removeEventListener("click",this._onClick.bind(this))}_onClick(t){"dropdown"===t.target.getAttribute("data-bs-toggle")&&("true"===this.getAttribute("aria-expanded")?(this.setAttribute("aria-expanded","false"),this.parentElement.querySelector("cod-dropdown-menu").setAttribute("data-show","false")):(this.setAttribute("aria-expanded","true"),this.parentElement.querySelector("cod-dropdown-menu").setAttribute("data-show","true")))}}customElements.define("cod-dropdown",pn);const gn=document.createElement("template");gn.innerHTML="\n\n";const un=40,hn=37,fn=39,xn=32,vn=38,yn=36,wn=35;class kn extends HTMLElement{constructor(){super();this.attachShadow({mode:"open"}).appendChild(gn.content.cloneNode(!0))}connectedCallback(){this.hasAttribute("role")||("radio"==this.getAttribute("data-type")?this.setAttribute("role","radiogroup"):this.setAttribute("role","group"));const t=this.checkedFormCheck;t?(this._uncheckAll(),this._checkNode(t)):this.querySelector("cod-form-check").setAttribute("tabindex",0),this.addEventListener("keydown",this._onKeyDown),this.addEventListener("click",this._onClick)}disconnectedCallback(){this.removeEventListener("keydown",this._onKeyDown),this.removeEventListener("click",this._onClick)}_onKeyDown(t){switch(t.keyCode){case vn:case hn:t.preventDefault(),this._setCheckedToPrevButton();break;case un:case fn:t.preventDefault(),this._setCheckedToNextButton();break;case yn:t.preventDefault(),this._setChecked(this.firstFormCheck);break;case wn:t.preventDefault(),this._setChecked(this.lastFormCheck);break;case xn:t.preventDefault(),"cod-form-check"===t.target.tagName.toLowerCase()&&this._setChecked(t.target)}}get checkedFormCheck(){return this.querySelector('[data-checked="true"]')}get firstFormCheck(){return this.querySelector("cod-form-check:first-of-type")}get lastFormCheck(){return this.querySelector("cod-form-check:last-of-type")}_prevFormCheck(t){let n=t.previousElementSibling;for(;n;){if("radio"===n.getAttribute("data-type")||"checkbox"===n.getAttribute("data-type"))return n;n=n.previousElementSibling}return null}_nextFormCheck(t){let n=t.nextElementSibling;for(;n;){if("radio"===n.getAttribute("data-type")||"checkbox"===n.getAttribute("data-type"))return n;n=n.nextElementSibling}return null}_setCheckedToPrevButton(){const t=this.checkedFormCheck||this.firstFormCheck;t===this.firstFormCheck?this._setChecked(this.lastFormCheck):this._setChecked(this._prevFormCheck(t))}_setCheckedToNextButton(){const t=this.checkedRadioButton||this.firstFormCheck;t===this.lastFormCheck?this._setChecked(this.firstFormCheck):this._setChecked(this._nextFormCheck(t))}_setChecked(t){this._uncheckAll(),this._checkNode(t),this._focusNode(t)}_uncheckAll(){const t=this.querySelectorAll("cod-form-check");for(let n=0;n\n";class zn extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(Cn.content.cloneNode(!0)),this.listGroup=null;const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="",t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){const t=this.getAttribute("data-tag");let n=this.getAttribute("data-flushed"),e=this.getAttribute("data-numbered"),o=this.getAttribute("data-horizontal");const a=this.getAttribute("data-extra-classes");this.listGroup=document.createElement(t),n="true"==n?"list-group-flush":null,e="true"==e?"list-group-numbered":null,o="true"==o?"list-group-horizontal":null,this.listGroup.className=["list-group","".concat(n||""),"".concat(e||""),"".concat(o||""),"".concat(a||"")].join(" "),this.shadowRoot.querySelector(t)||(this.shadowRoot.addEventListener("slotchange",(()=>{const t=Array.from(this.children),a=t.length;t.forEach(((t,r)=>{let i=null;switch(r){case 0:t.setAttribute("data-order","first");break;case a-1:t.setAttribute("data-order","last");break;default:t.setAttribute("data-order","middle")}n&&(i="".concat(n," ")),e&&(i="".concat(e," "),t.setAttribute("data-order-index",r+1)),o&&(i="".concat(o," ")),i&&t.setAttribute("data-parent-classes",i);t.className.split(" ").includes("no-wc")?t.remove():this.listGroup.append(t)}))})),this.shadowRoot.appendChild(this.listGroup))}}customElements.define("cod-listgroup",zn);const An=document.createElement("template");An.innerHTML="\n\n";class En extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(An.content.cloneNode(!0)),this.nav=document.createElement("ul"),this.shadowRoot.addEventListener("slotchange",(()=>{Array.from(this.children).forEach((t=>{const n=document.createElement("li");n.className="nav-item",n.appendChild(t),this.nav.append(n);t.className.split(" ").includes("no-wc")?t.remove():this.nav.append(n)}))}));const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent=".nav-item {\n font-family: var(--font-family);\n}\n\n.navbar-nav .nav-link {\n --bs-nav-link-padding-x: 0.75em;\n --bs-btn-padding-x: var(--bs-nav-link-padding-x);\n}\n\n.navbar-expand-xs.nav {\n flex-direction: row;\n}\n\n@media (min-width: 576px) {\n .navbar-expand-sm.nav {\n flex-direction: row;\n }\n}\n@media (min-width: 768px) {\n .navbar-expand-md.nav {\n flex-direction: row;\n }\n}\n@media (min-width: 992px) {\n .navbar-expand-lg.nav {\n flex-direction: row;\n }\n}\n@media (min-width: 1200px) {\n .navbar-expand-xl.nav {\n flex-direction: row;\n }\n}\n@media (min-width: 1400px) {\n .navbar-expand-xxl.nav {\n flex-direction: row;\n }\n}\n\n/*# sourceMappingURL=Nav.css.map */\n",t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){const t=this.getAttribute("data-vertical"),n=this.getAttribute("data-horizontal-alignment"),e=this.getAttribute("data-tabs"),o=this.getAttribute("data-pills"),a=this.getAttribute("data-underline"),r=this.getAttribute("data-fill"),i=this.getAttribute("data-justified"),l=this.getAttribute("data-extra-classes"),s=["nav"],d=this.getAttribute("data-expand");d&&("always"===d?s.push("navbar-expand"):s.push("navbar-expand-".concat(d))),"true"===t&&s.push("flex-column"),"true"===e&&s.push("nav-tabs"),"true"===o&&s.push("nav-pills"),"true"===a&&s.push("nav-underline"),"true"===r&&s.push("nav-fill"),"true"===i&&s.push("nav-justified"),n&&s.push("justify-content-".concat(n)),l&&s.push(l),this.nav.className=s.join(" "),this.shadowRoot.querySelector("ul")||this.shadowRoot.appendChild(this.nav)}}customElements.define("cod-nav",En);const Ln=document.createElement("template");Ln.innerHTML="\n\n";class _n extends HTMLElement{constructor(){super();const t=this.attachShadow({mode:"open"});t.appendChild(Ln.content.cloneNode(!0)),this.paginationContainer=document.createElement("nav"),this.pagination=document.createElement("ul"),this.shadowRoot.addEventListener("slotchange",(()=>{Array.from(this.children).forEach(((t,n)=>{const e=document.createElement("li"),o=["page-item"];"true"==t.getAttribute("data-active")&&(o.push("active"),e.setAttribute("aria-current","page")),"true"==t.getAttribute("data-disabled")&&(o.push("disabled"),e.setAttribute("tabindex","-1")),e.className=o.join(" "),t.setAttribute("data-index",n),e.appendChild(t);t.className.split(" ").includes("no-wc")?t.remove():this.pagination.append(e)}))})),this.paginationContainer.appendChild(this.pagination);const n=document.createElement("style");n.textContent=a;const e=document.createElement("style");e.textContent=o;const r=document.createElement("style");r.textContent="",t.appendChild(n),t.appendChild(e),t.appendChild(r)}connectedCallback(){const t=this.getAttribute("data-label"),n=this.getAttribute("data-id"),e=this.getAttribute("data-size"),o=this.getAttribute("data-extra-classes"),a=["pagination"];void 0!=e&&null!=e&&a.push("pagination-".concat(e)),void 0!=o&&null!=o&&a.push(o),void 0!=n&&null!=n&&(this.paginationContainer.id=n),this.paginationContainer.setAttribute("aria-label",t),this.pagination.className=a.join(" "),this.shadowRoot.querySelector("nav")||this.shadowRoot.appendChild(this.paginationContainer)}}customElements.define("cod-pagination",_n)}},function(t){t.O(0,[578,635],(function(){return n=133,t(t.s=n);var n}));t.O()}]); \ No newline at end of file diff --git a/build/experimental/assets/js/runtime.js b/build/experimental/assets/js/runtime.js new file mode 100644 index 00000000..3578182a --- /dev/null +++ b/build/experimental/assets/js/runtime.js @@ -0,0 +1 @@ +!function(){"use strict";var n,r={},e={};function t(n){var o=e[n];if(void 0!==o)return o.exports;var u=e[n]={exports:{}};return r[n].call(u.exports,u,u.exports,t),u.exports}t.m=r,n=[],t.O=function(r,e,o,u){if(!e){var i=1/0;for(a=0;a=u)&&Object.keys(t.O).every((function(n){return t.O[n](e[c])}))?e.splice(c--,1):(f=!1,u0&&n[a-1][2]>u;a--)n[a]=n[a-1];n[a]=[e,o,u]},t.n=function(n){var r=n&&n.__esModule?function(){return n.default}:function(){return n};return t.d(r,{a:r}),r},t.d=function(n,r){for(var e in r)t.o(r,e)&&!t.o(n,e)&&Object.defineProperty(n,e,{enumerable:!0,get:r[e]})},t.o=function(n,r){return Object.prototype.hasOwnProperty.call(n,r)},function(){var n={666:0};t.O.j=function(r){return 0===n[r]};var r=function(r,e){var o,u,i=e[0],f=e[1],c=e[2],s=0;if(i.some((function(r){return 0!==n[r]}))){for(o in f)t.o(f,o)&&(t.m[o]=f[o]);if(c)var a=c(t)}for(r&&r(e);s.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact-show,.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact-show,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact-show{border-radius:12px;padding:2px 8px 2px 28px}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner,.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-inner{display:none}.mapboxgl-ctrl-attrib-button,.maplibregl-ctrl-attrib-button{background-color:hsla(0,0%,100%,.5);background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='24' height='24' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E\");border:0;border-radius:12px;box-sizing:border-box;cursor:pointer;display:none;height:24px;outline:none;position:absolute;right:0;top:0;width:24px}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button{appearance:none;list-style:none}.maplibregl-ctrl-attrib summary.maplibregl-ctrl-attrib-button::-webkit-details-marker{display:none}.mapboxgl-ctrl-bottom-left .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-top-left .mapboxgl-ctrl-attrib-button,.maplibregl-ctrl-bottom-left .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-top-left .maplibregl-ctrl-attrib-button{left:0}.mapboxgl-ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-button,.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-inner,.maplibregl-ctrl-attrib.maplibregl-compact .maplibregl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block}.mapboxgl-ctrl-attrib.mapboxgl-compact-show .mapboxgl-ctrl-attrib-button,.maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-button{background-color:rgb(0 0 0/5%)}.mapboxgl-ctrl-bottom-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after,.maplibregl-ctrl-bottom-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;right:0}.mapboxgl-ctrl-top-right>.mapboxgl-ctrl-attrib.mapboxgl-compact:after,.maplibregl-ctrl-top-right>.maplibregl-ctrl-attrib.maplibregl-compact:after{right:0;top:0}.mapboxgl-ctrl-top-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after,.maplibregl-ctrl-top-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{left:0;top:0}.mapboxgl-ctrl-bottom-left>.mapboxgl-ctrl-attrib.mapboxgl-compact:after,.maplibregl-ctrl-bottom-left>.maplibregl-ctrl-attrib.maplibregl-compact:after{bottom:0;left:0}}@media screen and (-ms-high-contrast:active){.mapboxgl-ctrl-attrib.mapboxgl-compact:after,.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='24' height='24' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd' fill='%23fff'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E\")}}@media screen and (-ms-high-contrast:black-on-white){.mapboxgl-ctrl-attrib.mapboxgl-compact:after,.maplibregl-ctrl-attrib.maplibregl-compact:after{background-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='24' height='24' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg' fill-rule='evenodd'%3E%3Cpath d='M4 10a6 6 0 1 0 12 0 6 6 0 1 0-12 0m5-3a1 1 0 1 0 2 0 1 1 0 1 0-2 0m0 3a1 1 0 1 1 2 0v3a1 1 0 1 1-2 0'/%3E%3C/svg%3E\")}}.mapboxgl-ctrl-attrib a,.maplibregl-ctrl-attrib a{color:rgba(0,0,0,.75);text-decoration:none}.mapboxgl-ctrl-attrib a:hover,.maplibregl-ctrl-attrib a:hover{color:inherit;text-decoration:underline}.mapboxgl-attrib-empty,.maplibregl-attrib-empty{display:none}.mapboxgl-ctrl-scale,.maplibregl-ctrl-scale{background-color:hsla(0,0%,100%,.75);border:2px solid #333;border-top:#333;box-sizing:border-box;color:#333;font-size:10px;padding:0 5px}.mapboxgl-popup,.maplibregl-popup{display:flex;left:0;pointer-events:none;position:absolute;top:0;will-change:transform}.mapboxgl-popup-anchor-top,.mapboxgl-popup-anchor-top-left,.mapboxgl-popup-anchor-top-right,.maplibregl-popup-anchor-top,.maplibregl-popup-anchor-top-left,.maplibregl-popup-anchor-top-right{flex-direction:column}.mapboxgl-popup-anchor-bottom,.mapboxgl-popup-anchor-bottom-left,.mapboxgl-popup-anchor-bottom-right,.maplibregl-popup-anchor-bottom,.maplibregl-popup-anchor-bottom-left,.maplibregl-popup-anchor-bottom-right{flex-direction:column-reverse}.mapboxgl-popup-anchor-left,.maplibregl-popup-anchor-left{flex-direction:row}.mapboxgl-popup-anchor-right,.maplibregl-popup-anchor-right{flex-direction:row-reverse}.mapboxgl-popup-tip,.maplibregl-popup-tip{border:10px solid transparent;height:0;width:0;z-index:1}.mapboxgl-popup-anchor-top .mapboxgl-popup-tip,.maplibregl-popup-anchor-top .maplibregl-popup-tip{align-self:center;border-bottom-color:#fff;border-top:none}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-tip,.maplibregl-popup-anchor-top-left .maplibregl-popup-tip{align-self:flex-start;border-bottom-color:#fff;border-left:none;border-top:none}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-tip,.maplibregl-popup-anchor-top-right .maplibregl-popup-tip{align-self:flex-end;border-bottom-color:#fff;border-right:none;border-top:none}.mapboxgl-popup-anchor-bottom .mapboxgl-popup-tip,.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{align-self:center;border-bottom:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-tip,.maplibregl-popup-anchor-bottom-left .maplibregl-popup-tip{align-self:flex-start;border-bottom:none;border-left:none;border-top-color:#fff}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-tip,.maplibregl-popup-anchor-bottom-right .maplibregl-popup-tip{align-self:flex-end;border-bottom:none;border-right:none;border-top-color:#fff}.mapboxgl-popup-anchor-left .mapboxgl-popup-tip,.maplibregl-popup-anchor-left .maplibregl-popup-tip{align-self:center;border-left:none;border-right-color:#fff}.mapboxgl-popup-anchor-right .mapboxgl-popup-tip,.maplibregl-popup-anchor-right .maplibregl-popup-tip{align-self:center;border-left-color:#fff;border-right:none}.mapboxgl-popup-close-button,.maplibregl-popup-close-button{background-color:transparent;border:0;border-radius:0 3px 0 0;cursor:pointer;position:absolute;right:0;top:0}.mapboxgl-popup-close-button:hover,.maplibregl-popup-close-button:hover{background-color:rgb(0 0 0/5%)}.mapboxgl-popup-content,.maplibregl-popup-content{background:#fff;border-radius:3px;box-shadow:0 1px 2px rgba(0,0,0,.1);padding:15px 10px;pointer-events:auto;position:relative}.mapboxgl-popup-anchor-top-left .mapboxgl-popup-content,.maplibregl-popup-anchor-top-left .maplibregl-popup-content{border-top-left-radius:0}.mapboxgl-popup-anchor-top-right .mapboxgl-popup-content,.maplibregl-popup-anchor-top-right .maplibregl-popup-content{border-top-right-radius:0}.mapboxgl-popup-anchor-bottom-left .mapboxgl-popup-content,.maplibregl-popup-anchor-bottom-left .maplibregl-popup-content{border-bottom-left-radius:0}.mapboxgl-popup-anchor-bottom-right .mapboxgl-popup-content,.maplibregl-popup-anchor-bottom-right .maplibregl-popup-content{border-bottom-right-radius:0}.mapboxgl-popup-track-pointer,.maplibregl-popup-track-pointer{display:none}.mapboxgl-popup-track-pointer *,.maplibregl-popup-track-pointer *{pointer-events:none;user-select:none}.mapboxgl-map:hover .mapboxgl-popup-track-pointer,.maplibregl-map:hover .maplibregl-popup-track-pointer{display:flex}.mapboxgl-map:active .mapboxgl-popup-track-pointer,.maplibregl-map:active .maplibregl-popup-track-pointer{display:none}.mapboxgl-marker,.maplibregl-marker{left:0;position:absolute;top:0;will-change:transform}.mapboxgl-user-location-dot,.maplibregl-user-location-dot{background-color:#1da1f2;border-radius:50%;height:15px;width:15px}.mapboxgl-user-location-dot:before,.maplibregl-user-location-dot:before{animation:maplibregl-user-location-dot-pulse 2s infinite;background-color:#1da1f2;border-radius:50%;content:\"\";height:15px;position:absolute;width:15px}.mapboxgl-user-location-dot:after,.maplibregl-user-location-dot:after{border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px rgba(0,0,0,.35);box-sizing:border-box;content:\"\";height:19px;left:-2px;position:absolute;top:-2px;width:19px}@keyframes maplibregl-user-location-dot-pulse{0%{opacity:1;transform:scale(1)}70%{opacity:0;transform:scale(3)}to{opacity:0;transform:scale(1)}}.mapboxgl-user-location-dot-stale,.maplibregl-user-location-dot-stale{background-color:#aaa}.mapboxgl-user-location-dot-stale:after,.maplibregl-user-location-dot-stale:after{display:none}.mapboxgl-user-location-accuracy-circle,.maplibregl-user-location-accuracy-circle{background-color:#1da1f233;border-radius:100%;height:1px;width:1px}.mapboxgl-crosshair,.mapboxgl-crosshair .mapboxgl-interactive,.mapboxgl-crosshair .mapboxgl-interactive:active,.maplibregl-crosshair,.maplibregl-crosshair .maplibregl-interactive,.maplibregl-crosshair .maplibregl-interactive:active{cursor:crosshair}.mapboxgl-boxzoom,.maplibregl-boxzoom{background:#fff;border:2px dotted #202020;height:0;left:0;opacity:.5;position:absolute;top:0;width:0}.maplibregl-cooperative-gesture-screen{align-items:center;background:rgba(0,0,0,.4);bottom:0;color:#fff;display:flex;font-size:1.4em;justify-content:center;left:0;line-height:1.2;opacity:0;padding:1rem;pointer-events:none;position:absolute;right:0;top:0;transition:opacity 1s ease 1s}.maplibregl-cooperative-gesture-screen.maplibregl-show{opacity:1;transition:opacity .05s}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:none}@media (hover:none),(max-width:480px){.maplibregl-cooperative-gesture-screen .maplibregl-desktop-message{display:none}.maplibregl-cooperative-gesture-screen .maplibregl-mobile-message{display:block}}"},613:function(t){t.exports=function(){"use strict";var t,e,i;function r(r,n){if(t)if(e){var a="var sharedChunk = {}; ("+t+")(sharedChunk); ("+e+")(sharedChunk);",o={};t(o),i=n(o),"undefined"!==typeof window&&(i.workerUrl=window.URL.createObjectURL(new Blob([a],{type:"text/javascript"})))}else e=n;else t=n}return r(["exports"],(function(t){var e=i;function i(t,e,i,r){this.cx=3*t,this.bx=3*(i-t)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*e,this.by=3*(r-e)-this.cy,this.ay=1-this.cy-this.by,this.p1x=t,this.p1y=e,this.p2x=i,this.p2y=r}function r(t,i,r,n){const a=new e(t,i,r,n);return function(t){return a.solve(t)}}i.prototype={sampleCurveX:function(t){return((this.ax*t+this.bx)*t+this.cx)*t},sampleCurveY:function(t){return((this.ay*t+this.by)*t+this.cy)*t},sampleCurveDerivativeX:function(t){return(3*this.ax*t+2*this.bx)*t+this.cx},solveCurveX:function(t,e){if(void 0===e&&(e=1e-6),t<0)return 0;if(t>1)return 1;for(var i=t,r=0;r<8;r++){var n=this.sampleCurveX(i)-t;if(Math.abs(n)n?o=i:s=i,i=.5*(s-o)+o;return i},solve:function(t,e){return this.sampleCurveY(this.solveCurveX(t,e))}};const n=r(.25,.1,.25,1);function a(t,e,i){return Math.min(i,Math.max(e,t))}function o(t,e,i){const r=i-e,n=((t-e)%r+r)%r+e;return n===e?i:n}function s(t,...e){for(const i of e)for(const e in i)t[e]=i[e];return t}let l=1;function c(t,e){t.forEach((t=>{e[t]&&(e[t]=e[t].bind(e))}))}function h(t,e,i){const r={};for(const n in t)r[n]=e.call(i||this,t[n],n,t);return r}function u(t,e,i){const r={};for(const n in t)e.call(i||this,t[n],n,t)&&(r[n]=t[n]);return r}function p(t){return Array.isArray(t)?t.map(p):"object"==typeof t&&t?h(t,p):t}const d={};function m(t){d[t]||("undefined"!=typeof console&&console.warn(t),d[t]=!0)}function f(t,e,i){return(i.y-t.y)*(e.x-t.x)>(e.y-t.y)*(i.x-t.x)}function g(t){let e=0;for(let i,r,n=0,a=t.length,o=a-1;n@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,((t,i,r,n)=>{const a=r||n;return e[i]=!a||a.toLowerCase(),""})),e["max-age"]){const t=parseInt(e["max-age"],10);isNaN(t)?delete e["max-age"]:e["max-age"]=t}return e}let x,v,b=null;function w(t){if(null==b){const e=t.navigator?t.navigator.userAgent:null;b=!!t.safari||!(!e||!(/\b(iPad|iPhone|iPod)\b/.test(e)||e.match("Safari")&&!e.match("Chrome")))}return b}function T(t){return"undefined"!=typeof ImageBitmap&&t instanceof ImageBitmap}const E={now:"undefined"!=typeof performance&&performance&&performance.now?performance.now.bind(performance):Date.now.bind(Date),frame(t){const e=requestAnimationFrame(t);return{cancel:()=>cancelAnimationFrame(e)}},getImageData(t,e=0){const i=window.document.createElement("canvas"),r=i.getContext("2d");if(!r)throw new Error("failed to create canvas 2d context");return i.width=t.width,i.height=t.height,r.drawImage(t,0,0,t.width,t.height),r.getImageData(-e,-e,t.width+2*e,t.height+2*e)},resolveURL:t=>(x||(x=document.createElement("a")),x.href=t,x.href),hardwareConcurrency:"undefined"!=typeof navigator&&navigator.hardwareConcurrency||4,get prefersReducedMotion(){return!!matchMedia&&(null==v&&(v=matchMedia("(prefers-reduced-motion: reduce)")),v.matches)}};var S=I;function I(t,e){this.x=t,this.y=e}I.prototype={clone:function(){return new I(this.x,this.y)},add:function(t){return this.clone()._add(t)},sub:function(t){return this.clone()._sub(t)},multByPoint:function(t){return this.clone()._multByPoint(t)},divByPoint:function(t){return this.clone()._divByPoint(t)},mult:function(t){return this.clone()._mult(t)},div:function(t){return this.clone()._div(t)},rotate:function(t){return this.clone()._rotate(t)},rotateAround:function(t,e){return this.clone()._rotateAround(t,e)},matMult:function(t){return this.clone()._matMult(t)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(t){return this.x===t.x&&this.y===t.y},dist:function(t){return Math.sqrt(this.distSqr(t))},distSqr:function(t){var e=t.x-this.x,i=t.y-this.y;return e*e+i*i},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(t){return Math.atan2(this.y-t.y,this.x-t.x)},angleWith:function(t){return this.angleWithSep(t.x,t.y)},angleWithSep:function(t,e){return Math.atan2(this.x*e-this.y*t,this.x*t+this.y*e)},_matMult:function(t){var e=t[2]*this.x+t[3]*this.y;return this.x=t[0]*this.x+t[1]*this.y,this.y=e,this},_add:function(t){return this.x+=t.x,this.y+=t.y,this},_sub:function(t){return this.x-=t.x,this.y-=t.y,this},_mult:function(t){return this.x*=t,this.y*=t,this},_div:function(t){return this.x/=t,this.y/=t,this},_multByPoint:function(t){return this.x*=t.x,this.y*=t.y,this},_divByPoint:function(t){return this.x/=t.x,this.y/=t.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var t=this.y;return this.y=this.x,this.x=-t,this},_rotate:function(t){var e=Math.cos(t),i=Math.sin(t),r=i*this.x+e*this.y;return this.x=e*this.x-i*this.y,this.y=r,this},_rotateAround:function(t,e){var i=Math.cos(t),r=Math.sin(t),n=e.y+r*(this.x-e.x)+i*(this.y-e.y);return this.x=e.x+i*(this.x-e.x)-r*(this.y-e.y),this.y=n,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},I.convert=function(t){return t instanceof I?t:Array.isArray(t)?new I(t[0],t[1]):t};const z={MAX_PARALLEL_IMAGE_REQUESTS:16,REGISTERED_PROTOCOLS:{}},C="mapbox-tiles";let A,k,M=500,P=50;function D(){"undefined"==typeof caches||A||(A=caches.open(C))}let L=1/0;const B={supported:!1,testSupport:function(t){!O&&F&&(V?U(t):R=t)}};let R,F,O=!1,V=!1;function U(t){const e=t.createTexture();t.bindTexture(t.TEXTURE_2D,e);try{if(t.texImage2D(t.TEXTURE_2D,0,t.RGBA,t.RGBA,t.UNSIGNED_BYTE,F),t.isContextLost())return;B.supported=!0}catch(t){}t.deleteTexture(e),O=!0}"undefined"!=typeof document&&(F=document.createElement("img"),F.onload=function(){R&&U(R),R=null,V=!0},F.onerror=function(){O=!0,R=null},F.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");const N={Unknown:"Unknown",Style:"Style",Source:"Source",Tile:"Tile",Glyphs:"Glyphs",SpriteImage:"SpriteImage",SpriteJSON:"SpriteJSON",Image:"Image"};"function"==typeof Object.freeze&&Object.freeze(N);class $ extends Error{constructor(t,e,i,r){super(`AJAXError: ${e} (${t}): ${i}`),this.status=t,this.statusText=e,this.url=i,this.body=r}}const G=_()?()=>self.worker&&self.worker.referrer:()=>("blob:"===window.location.protocol?window.parent:window).location.href;function q(t,e){const i=new AbortController,r=new Request(t.url,{method:t.method||"GET",body:t.body,credentials:t.credentials,headers:t.headers,referrer:G(),signal:i.signal});let n=!1,a=!1;return"json"===t.type&&r.headers.set("Accept","application/json"),((i,o,s)=>{if(a)return;const l=Date.now();fetch(r).then((i=>i.ok?((i,o,s)=>{("arrayBuffer"===t.type?i.arrayBuffer():"json"===t.type?i.json():i.text()).then((t=>{a||(o&&s&&function(t,e,i){if(D(),!A)return;const r={status:e.status,statusText:e.statusText,headers:new Headers};e.headers.forEach(((t,e)=>r.headers.set(e,t)));const n=y(e.headers.get("Cache-Control")||"");n["no-store"]||(n["max-age"]&&r.headers.set("Expires",new Date(i+1e3*n["max-age"]).toUTCString()),new Date(r.headers.get("Expires")).getTime()-i<42e4||function(t,e){if(void 0===k)try{new Response(new ReadableStream),k=!0}catch(t){k=!1}k?e(t.body):t.blob().then(e)}(e,(e=>{const i=new Response(e,r);D(),A&&A.then((e=>e.put(function(t){const e=t.indexOf("?");return e<0?t:t.slice(0,e)}(t.url),i))).catch((t=>m(t.message)))})))}(r,o,s),n=!0,e(null,t,i.headers.get("Cache-Control"),i.headers.get("Expires")))})).catch((t=>{a||e(new Error(t.message))}))})(i,null,l):i.blob().then((r=>e(new $(i.status,i.statusText,t.url,r)))))).catch((t=>{20!==t.code&&e(new Error(t.message))}))})(),{cancel:()=>{a=!0,n||i.abort()}}}const Z=function(t,e){if(/:\/\//.test(t.url)&&!/^https?:|^file:/.test(t.url)){if(_()&&self.worker&&self.worker.actor)return self.worker.actor.send("getResource",t,e);if(!_()){const i=t.url.substring(0,t.url.indexOf("://"));return(z.REGISTERED_PROTOCOLS[i]||q)(t,e)}}if(!(/^file:/.test(i=t.url)||/^file:/.test(G())&&!/^\w+:/.test(i))){if(fetch&&Request&&AbortController&&Object.prototype.hasOwnProperty.call(Request.prototype,"signal"))return q(t,e);if(_()&&self.worker&&self.worker.actor)return self.worker.actor.send("getResource",t,e,void 0,!0)}var i;return function(t,e){const i=new XMLHttpRequest;i.open(t.method||"GET",t.url,!0),"arrayBuffer"===t.type&&(i.responseType="arraybuffer");for(const r in t.headers)i.setRequestHeader(r,t.headers[r]);return"json"===t.type&&(i.responseType="text",i.setRequestHeader("Accept","application/json")),i.withCredentials="include"===t.credentials,i.onerror=()=>{e(new Error(i.statusText))},i.onload=()=>{if((i.status>=200&&i.status<300||0===i.status)&&null!==i.response){let r=i.response;if("json"===t.type)try{r=JSON.parse(i.response)}catch(t){return e(t)}e(null,r,i.getResponseHeader("Cache-Control"),i.getResponseHeader("Expires"))}else{const r=new Blob([i.response],{type:i.getResponseHeader("Content-Type")});e(new $(i.status,i.statusText,t.url,r))}},i.send(t.body),{cancel:()=>i.abort()}}(t,e)},j=function(t,e){return Z(s(t,{type:"arrayBuffer"}),e)};function X(t){const e=window.document.createElement("a");return e.href=t,e.protocol===window.document.location.protocol&&e.host===window.document.location.host}const H="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";let W,K;W=[],K=0;const J=function(t,e){if(B.supported&&(t.headers||(t.headers={}),t.headers.accept="image/webp,*/*"),K>=z.MAX_PARALLEL_IMAGE_REQUESTS){const i={requestParameters:t,callback:e,cancelled:!1,cancel(){this.cancelled=!0}};return W.push(i),i}K++;let i=!1;const r=()=>{if(!i)for(i=!0,K--;W.length&&K{r(),t?e(t):i&&function(t,e){"function"==typeof createImageBitmap?function(t,e){const i=new Blob([new Uint8Array(t)],{type:"image/png"});createImageBitmap(i).then((t=>{e(null,t)})).catch((t=>{e(new Error(`Could not load image because of ${t.message}. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.`))}))}(t,e):function(t,e){const i=new Image;i.onload=()=>{e(null,i),URL.revokeObjectURL(i.src),i.onload=null,window.requestAnimationFrame((()=>{i.src=H}))},i.onerror=()=>e(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."));const r=new Blob([new Uint8Array(t)],{type:"image/png"});i.src=t.byteLength?URL.createObjectURL(r):H}(t,e)}(i,((t,i)=>{null!=t?e(t):null!=i&&e(null,i,{cacheControl:n,expires:a})}))}));return{cancel:()=>{n.cancel(),r()}}};function Y(t,e,i){i[t]&&-1!==i[t].indexOf(e)||(i[t]=i[t]||[],i[t].push(e))}function Q(t,e,i){if(i&&i[t]){const r=i[t].indexOf(e);-1!==r&&i[t].splice(r,1)}}class tt{constructor(t,e={}){s(this,e),this.type=t}}class et extends tt{constructor(t,e={}){super("error",s({error:t},e))}}class it{on(t,e){return this._listeners=this._listeners||{},Y(t,e,this._listeners),this}off(t,e){return Q(t,e,this._listeners),Q(t,e,this._oneTimeListeners),this}once(t,e){return this._oneTimeListeners=this._oneTimeListeners||{},Y(t,e,this._oneTimeListeners),this}fire(t,e){"string"==typeof t&&(t=new tt(t,e||{}));const i=t.type;if(this.listens(i)){t.target=this;const e=this._listeners&&this._listeners[i]?this._listeners[i].slice():[];for(const i of e)i.call(this,t);const r=this._oneTimeListeners&&this._oneTimeListeners[i]?this._oneTimeListeners[i].slice():[];for(const a of r)Q(i,a,this._oneTimeListeners),a.call(this,t);const n=this._eventedParent;n&&(s(t,"function"==typeof this._eventedParentData?this._eventedParentData():this._eventedParentData),n.fire(t))}else t instanceof et&&console.error(t.error);return this}listens(t){return this._listeners&&this._listeners[t]&&this._listeners[t].length>0||this._oneTimeListeners&&this._oneTimeListeners[t]&&this._oneTimeListeners[t].length>0||this._eventedParent&&this._eventedParent.listens(t)}setEventedParent(t,e){return this._eventedParent=t,this._eventedParentData=e,this}}var rt={$version:8,$root:{version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},terrain:{type:"terrain"},sources:{required:!0,type:"sources"},sprite:{type:"string"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},sources:{"*":{type:"source"}},source:["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],source_vector:{type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster:{type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster_dem:{type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{}},default:"mapbox"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_geojson:{type:{required:!0,type:"enum",values:{geojson:{}}},data:{type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},source_video:{type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},source_image:{type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},layer:{id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},layout:["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],layout_background:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_fill:{"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_circle:{"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_heatmap:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:{"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_symbol:{"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image",{"!":"icon-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"padding",default:[2],units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},"viewport-glyph":{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field",{"!":"text-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_raster:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_hillshade:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},filter:{type:"array",value:"*"},filter_operator:{type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{},within:{}}},geometry_type:{type:"enum",values:{Point:{},LineString:{},Polygon:{}}},function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:{type:"array",minimum:0,maximum:24,value:["number","color"],length:2},expression:{type:"array",value:"*",minimum:1},light:{anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},terrain:{source:{type:"string",required:!0},exaggeration:{type:"number",minimum:0,default:1},elevationOffset:{type:"number",default:450}},paint:["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],paint_fill:{"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:{"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},paint_circle:{"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},paint_heatmap:{"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_symbol:{"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_raster:{"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_hillshade:{"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_background:{"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},transition:{duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:{"*":{type:"string"}}};class nt{constructor(t,e,i,r){this.message=(t?`${t}: `:"")+i,r&&(this.identifier=r),null!=e&&e.__line__&&(this.line=e.__line__)}}function at(t){const e=t.value;return e?[new nt(t.key,e,"constants have been deprecated as of v8")]:[]}function ot(t,...e){for(const i of e)for(const e in i)t[e]=i[e];return t}function st(t){return t instanceof Number||t instanceof String||t instanceof Boolean?t.valueOf():t}function lt(t){if(Array.isArray(t))return t.map(lt);if(t instanceof Object&&!(t instanceof Number||t instanceof String||t instanceof Boolean)){const e={};for(const i in t)e[i]=lt(t[i]);return e}return st(t)}class ct extends Error{constructor(t,e){super(e),this.message=e,this.key=t}}class ht{constructor(t,e=[]){this.parent=t,this.bindings={};for(const[i,r]of e)this.bindings[i]=r}concat(t){return new ht(this,t)}get(t){if(this.bindings[t])return this.bindings[t];if(this.parent)return this.parent.get(t);throw new Error(`${t} not found in scope.`)}has(t){return!!this.bindings[t]||!!this.parent&&this.parent.has(t)}}const ut={kind:"null"},pt={kind:"number"},dt={kind:"string"},mt={kind:"boolean"},ft={kind:"color"},gt={kind:"object"},_t={kind:"value"},yt={kind:"collator"},xt={kind:"formatted"},vt={kind:"padding"},bt={kind:"resolvedImage"};function wt(t,e){return{kind:"array",itemType:t,N:e}}function Tt(t){if("array"===t.kind){const e=Tt(t.itemType);return"number"==typeof t.N?`array<${e}, ${t.N}>`:"value"===t.itemType.kind?"array":`array<${e}>`}return t.kind}const Et=[ut,pt,dt,mt,ft,xt,gt,wt(_t),vt,bt];function St(t,e){if("error"===e.kind)return null;if("array"===t.kind){if("array"===e.kind&&(0===e.N&&"value"===e.itemType.kind||!St(t.itemType,e.itemType))&&("number"!=typeof t.N||t.N===e.N))return null}else{if(t.kind===e.kind)return null;if("value"===t.kind)for(const t of Et)if(!St(t,e))return null}return`Expected ${Tt(t)} but found ${Tt(e)} instead.`}function It(t,e){return e.some((e=>e.kind===t.kind))}function zt(t,e){return e.some((e=>"null"===e?null===t:"array"===e?Array.isArray(t):"object"===e?t&&!Array.isArray(t)&&"object"==typeof t:e===typeof t))}var Ct,At={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],rebeccapurple:[102,51,153,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};function kt(t){return(t=Math.round(t))<0?0:t>255?255:t}function Mt(t){return kt("%"===t[t.length-1]?parseFloat(t)/100*255:parseInt(t))}function Pt(t){return(e="%"===t[t.length-1]?parseFloat(t)/100:parseFloat(t))<0?0:e>1?1:e;var e}function Dt(t,e,i){return i<0?i+=1:i>1&&(i-=1),6*i<1?t+(e-t)*i*6:2*i<1?e:3*i<2?t+(e-t)*(2/3-i)*6:t}try{Ct={}.parseCSSColor=function(t){var e,i=t.replace(/ /g,"").toLowerCase();if(i in At)return At[i].slice();if("#"===i[0])return 4===i.length?(e=parseInt(i.substr(1),16))>=0&&e<=4095?[(3840&e)>>4|(3840&e)>>8,240&e|(240&e)>>4,15&e|(15&e)<<4,1]:null:7===i.length&&(e=parseInt(i.substr(1),16))>=0&&e<=16777215?[(16711680&e)>>16,(65280&e)>>8,255&e,1]:null;var r=i.indexOf("("),n=i.indexOf(")");if(-1!==r&&n+1===i.length){var a=i.substr(0,r),o=i.substr(r+1,n-(r+1)).split(","),s=1;switch(a){case"rgba":if(4!==o.length)return null;s=Pt(o.pop());case"rgb":return 3!==o.length?null:[Mt(o[0]),Mt(o[1]),Mt(o[2]),s];case"hsla":if(4!==o.length)return null;s=Pt(o.pop());case"hsl":if(3!==o.length)return null;var l=(parseFloat(o[0])%360+360)%360/360,c=Pt(o[1]),h=Pt(o[2]),u=h<=.5?h*(c+1):h+c-h*c,p=2*h-u;return[kt(255*Dt(p,u,l+1/3)),kt(255*Dt(p,u,l)),kt(255*Dt(p,u,l-1/3)),s];default:return null}}return null}}catch(t){}class Lt{constructor(t,e,i,r=1){this.r=t,this.g=e,this.b=i,this.a=r}static parse(t){if(!t)return;if(t instanceof Lt)return t;if("string"!=typeof t)return;const e=Ct(t);return e?new Lt(e[0]/255*e[3],e[1]/255*e[3],e[2]/255*e[3],e[3]):void 0}toString(){const[t,e,i,r]=this.toArray();return`rgba(${Math.round(t)},${Math.round(e)},${Math.round(i)},${r})`}toArray(){const{r:t,g:e,b:i,a:r}=this;return 0===r?[0,0,0,0]:[255*t/r,255*e/r,255*i/r,r]}}Lt.black=new Lt(0,0,0,1),Lt.white=new Lt(1,1,1,1),Lt.transparent=new Lt(0,0,0,0),Lt.red=new Lt(1,0,0,1);class Bt{constructor(t,e,i){this.sensitivity=t?e?"variant":"case":e?"accent":"base",this.locale=i,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})}compare(t,e){return this.collator.compare(t,e)}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale}}class Rt{constructor(t,e,i,r,n){this.text=t,this.image=e,this.scale=i,this.fontStack=r,this.textColor=n}}class Ft{constructor(t){this.sections=t}static fromString(t){return new Ft([new Rt(t,null,null,null,null)])}isEmpty(){return 0===this.sections.length||!this.sections.some((t=>0!==t.text.length||t.image&&0!==t.image.name.length))}static factory(t){return t instanceof Ft?t:Ft.fromString(t)}toString(){return 0===this.sections.length?"":this.sections.map((t=>t.text)).join("")}}class Ot{constructor(t){this.values=t.slice()}static parse(t){if(t instanceof Ot)return t;if("number"==typeof t)return new Ot([t,t,t,t]);if(Array.isArray(t)&&!(t.length<1||t.length>4)){for(const e of t)if("number"!=typeof e)return;switch(t.length){case 1:t=[t[0],t[0],t[0],t[0]];break;case 2:t=[t[0],t[1],t[0],t[1]];break;case 3:t=[t[0],t[1],t[2],t[1]]}return new Ot(t)}}toString(){return JSON.stringify(this.values)}}class Vt{constructor(t){this.name=t.name,this.available=t.available}toString(){return this.name}static fromString(t){return t?new Vt({name:t,available:!1}):null}}function Ut(t,e,i,r){return"number"==typeof t&&t>=0&&t<=255&&"number"==typeof e&&e>=0&&e<=255&&"number"==typeof i&&i>=0&&i<=255?void 0===r||"number"==typeof r&&r>=0&&r<=1?null:`Invalid rgba value [${[t,e,i,r].join(", ")}]: 'a' must be between 0 and 1.`:`Invalid rgba value [${("number"==typeof r?[t,e,i,r]:[t,e,i]).join(", ")}]: 'r', 'g', and 'b' must be between 0 and 255.`}function Nt(t){if(null===t)return!0;if("string"==typeof t)return!0;if("boolean"==typeof t)return!0;if("number"==typeof t)return!0;if(t instanceof Lt)return!0;if(t instanceof Bt)return!0;if(t instanceof Ft)return!0;if(t instanceof Ot)return!0;if(t instanceof Vt)return!0;if(Array.isArray(t)){for(const e of t)if(!Nt(e))return!1;return!0}if("object"==typeof t){for(const e in t)if(!Nt(t[e]))return!1;return!0}return!1}function $t(t){if(null===t)return ut;if("string"==typeof t)return dt;if("boolean"==typeof t)return mt;if("number"==typeof t)return pt;if(t instanceof Lt)return ft;if(t instanceof Bt)return yt;if(t instanceof Ft)return xt;if(t instanceof Ot)return vt;if(t instanceof Vt)return bt;if(Array.isArray(t)){const e=t.length;let i;for(const r of t){const t=$t(r);if(i){if(i===t)continue;i=_t;break}i=t}return wt(i||_t,e)}return gt}function Gt(t){const e=typeof t;return null===t?"":"string"===e||"number"===e||"boolean"===e?String(t):t instanceof Lt||t instanceof Ft||t instanceof Ot||t instanceof Vt?t.toString():JSON.stringify(t)}class qt{constructor(t,e){this.type=t,this.value=e}static parse(t,e){if(2!==t.length)return e.error(`'literal' expression requires exactly one argument, but found ${t.length-1} instead.`);if(!Nt(t[1]))return e.error("invalid value");const i=t[1];let r=$t(i);const n=e.expectedType;return"array"!==r.kind||0!==r.N||!n||"array"!==n.kind||"number"==typeof n.N&&0!==n.N||(r=n),new qt(r,i)}evaluate(){return this.value}eachChild(){}outputDefined(){return!0}}class Zt{constructor(t){this.name="ExpressionEvaluationError",this.message=t}toJSON(){return this.message}}const jt={string:dt,number:pt,boolean:mt,object:gt};class Xt{constructor(t,e){this.type=t,this.args=e}static parse(t,e){if(t.length<2)return e.error("Expected at least one argument.");let i,r=1;const n=t[0];if("array"===n){let n,a;if(t.length>2){const i=t[1];if("string"!=typeof i||!(i in jt)||"object"===i)return e.error('The item type argument of "array" must be one of string, number, boolean',1);n=jt[i],r++}else n=_t;if(t.length>3){if(null!==t[2]&&("number"!=typeof t[2]||t[2]<0||t[2]!==Math.floor(t[2])))return e.error('The length argument to "array" must be a positive integer literal',2);a=t[2],r++}i=wt(n,a)}else{if(!jt[n])throw new Error(`Types doesn't contain name = ${n}`);i=jt[n]}const a=[];for(;rt.outputDefined()))}}const Ht={"to-boolean":mt,"to-color":ft,"to-number":pt,"to-string":dt};class Wt{constructor(t,e){this.type=t,this.args=e}static parse(t,e){if(t.length<2)return e.error("Expected at least one argument.");const i=t[0];if(!Ht[i])throw new Error(`Can't parse ${i} as it is not part of the known types`);if(("to-boolean"===i||"to-string"===i)&&2!==t.length)return e.error("Expected one argument.");const r=Ht[i],n=[];for(let a=1;a4?`Invalid rbga value ${JSON.stringify(e)}: expected an array containing either three or four numeric values.`:Ut(e[0],e[1],e[2],e[3]),!i))return new Lt(e[0]/255,e[1]/255,e[2]/255,e[3])}throw new Zt(i||`Could not parse color from value '${"string"==typeof e?e:JSON.stringify(e)}'`)}if("padding"===this.type.kind){let e;for(const i of this.args){e=i.evaluate(t);const r=Ot.parse(e);if(r)return r}throw new Zt(`Could not parse padding from value '${"string"==typeof e?e:JSON.stringify(e)}'`)}if("number"===this.type.kind){let e=null;for(const i of this.args){if(e=i.evaluate(t),null===e)return 0;const r=Number(e);if(!isNaN(r))return r}throw new Zt(`Could not convert ${JSON.stringify(e)} to number.`)}return"formatted"===this.type.kind?Ft.fromString(Gt(this.args[0].evaluate(t))):"resolvedImage"===this.type.kind?Vt.fromString(Gt(this.args[0].evaluate(t))):Gt(this.args[0].evaluate(t))}eachChild(t){this.args.forEach(t)}outputDefined(){return this.args.every((t=>t.outputDefined()))}}const Kt=["Unknown","Point","LineString","Polygon"];class Jt{constructor(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null}id(){return this.feature&&"id"in this.feature?this.feature.id:null}geometryType(){return this.feature?"number"==typeof this.feature.type?Kt[this.feature.type]:this.feature.type:null}geometry(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null}canonicalID(){return this.canonical}properties(){return this.feature&&this.feature.properties||{}}parseColor(t){let e=this._parseColorCache[t];return e||(e=this._parseColorCache[t]=Lt.parse(t)),e}}class Yt{constructor(t,e,i,r){this.name=t,this.type=e,this._evaluate=i,this.args=r}evaluate(t){return this._evaluate(t,this.args)}eachChild(t){this.args.forEach(t)}outputDefined(){return!1}static parse(t,e){const i=t[0],r=Yt.definitions[i];if(!r)return e.error(`Unknown expression "${i}". If you wanted a literal array, use ["literal", [...]].`,0);const n=Array.isArray(r)?r[0]:r.type,a=Array.isArray(r)?[[r[1],r[2]]]:r.overloads,o=a.filter((([e])=>!Array.isArray(e)||e.length===t.length-1));let s=null;for(const[l,c]of o){s=new be(e.registry,e.path,null,e.scope);const r=[];let a=!1;for(let e=1;e{return e=t,Array.isArray(e)?`(${e.map(Tt).join(", ")})`:`(${Tt(e.type)}...)`;var e})).join(" | "),r=[];for(let n=1;n=e[2]||t[1]<=e[1]||t[3]>=e[3])}function re(t,e){const i=(180+t[0])/360,r=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t[1]*Math.PI/360)))/360,n=Math.pow(2,e.z);return[Math.round(i*n*te),Math.round(r*n*te)]}function ne(t,e,i){const r=t[0]-e[0],n=t[1]-e[1],a=t[0]-i[0],o=t[1]-i[1];return r*o-a*n==0&&r*a<=0&&n*o<=0}function ae(t,e){let i=!1;for(let o=0,s=e.length;o(r=t)[1]!=(a=s[e+1])[1]>r[1]&&r[0]<(a[0]-n[0])*(r[1]-n[1])/(a[1]-n[1])+n[0]&&(i=!i)}}var r,n,a;return i}function oe(t,e){for(let i=0;i0&&s<0||o<0&&s>0}function le(t,e,i){for(const c of i)for(let i=0;ii[2]){const e=.5*r;let n=t[0]-i[0]>e?-r:i[0]-t[0]>e?r:0;0===n&&(n=t[0]-i[2]>e?-r:i[2]-t[0]>e?r:0),t[0]+=n}ee(e,t)}function me(t,e,i,r){const n=Math.pow(2,r.z)*te,a=[r.x*te,r.y*te],o=[];for(const s of t)for(const t of s){const r=[t.x+a[0],t.y+a[1]];de(r,e,i,n),o.push(r)}return o}function fe(t,e,i,r){const n=Math.pow(2,r.z)*te,a=[r.x*te,r.y*te],o=[];for(const l of t){const t=[];for(const i of l){const r=[i.x+a[0],i.y+a[1]];ee(e,r),t.push(r)}o.push(t)}if(e[2]-e[0]<=n/2){(s=e)[0]=s[1]=1/0,s[2]=s[3]=-1/0;for(const t of o)for(const r of t)de(r,e,i,n)}var s;return o}class ge{constructor(t,e){this.type=mt,this.geojson=t,this.geometries=e}static parse(t,e){if(2!==t.length)return e.error(`'within' expression requires exactly one argument, but found ${t.length-1} instead.`);if(Nt(t[1])){const e=t[1];if("FeatureCollection"===e.type)for(let t=0;t{e&&!_e(t)&&(e=!1)})),e}function ye(t){if(t instanceof Yt&&"feature-state"===t.name)return!1;let e=!0;return t.eachChild((t=>{e&&!ye(t)&&(e=!1)})),e}function xe(t,e){if(t instanceof Yt&&e.indexOf(t.name)>=0)return!1;let i=!0;return t.eachChild((t=>{i&&!xe(t,e)&&(i=!1)})),i}class ve{constructor(t,e){this.type=e.type,this.name=t,this.boundExpression=e}static parse(t,e){if(2!==t.length||"string"!=typeof t[1])return e.error("'var' expression requires exactly one string literal argument.");const i=t[1];return e.scope.has(i)?new ve(i,e.scope.get(i)):e.error(`Unknown variable "${i}". Make sure "${i}" has been bound in an enclosing "let" expression before using it.`,1)}evaluate(t){return this.boundExpression.evaluate(t)}eachChild(){}outputDefined(){return!1}}class be{constructor(t,e=[],i,r=new ht,n=[]){this.registry=t,this.path=e,this.key=e.map((t=>`[${t}]`)).join(""),this.scope=r,this.errors=n,this.expectedType=i}parse(t,e,i,r,n={}){return e?this.concat(e,i,r)._parse(t,n):this._parse(t,n)}_parse(t,e){function i(t,e,i){return"assert"===i?new Xt(e,[t]):"coerce"===i?new Wt(e,[t]):t}if(null!==t&&"string"!=typeof t&&"boolean"!=typeof t&&"number"!=typeof t||(t=["literal",t]),Array.isArray(t)){if(0===t.length)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');const r=t[0];if("string"!=typeof r)return this.error(`Expression name must be a string, but found ${typeof r} instead. If you wanted a literal array, use ["literal", [...]].`,0),null;const n=this.registry[r];if(n){let r=n.parse(t,this);if(!r)return null;if(this.expectedType){const t=this.expectedType,n=r.type;if("string"!==t.kind&&"number"!==t.kind&&"boolean"!==t.kind&&"object"!==t.kind&&"array"!==t.kind||"value"!==n.kind)if("color"!==t.kind&&"formatted"!==t.kind&&"resolvedImage"!==t.kind||"value"!==n.kind&&"string"!==n.kind)if("padding"!==t.kind||"value"!==n.kind&&"number"!==n.kind&&"array"!==n.kind){if(this.checkSubtype(t,n))return null}else r=i(r,t,e.typeAnnotation||"coerce");else r=i(r,t,e.typeAnnotation||"coerce");else r=i(r,t,e.typeAnnotation||"assert")}if(!(r instanceof qt)&&"resolvedImage"!==r.type.kind&&we(r)){const e=new Jt;try{r=new qt(r.type,r.evaluate(e))}catch(t){return this.error(t.message),null}}return r}return this.error(`Unknown expression "${r}". If you wanted a literal array, use ["literal", [...]].`,0)}return this.error(void 0===t?"'undefined' value invalid. Use null instead.":"object"==typeof t?'Bare objects invalid. Use ["literal", {...}] instead.':`Expected an array, but found ${typeof t} instead.`)}concat(t,e,i){const r="number"==typeof t?this.path.concat(t):this.path,n=i?this.scope.concat(i):this.scope;return new be(this.registry,r,e||null,n,this.errors)}error(t,...e){const i=`${this.key}${e.map((t=>`[${t}]`)).join("")}`;this.errors.push(new ct(i,t))}checkSubtype(t,e){const i=St(t,e);return i&&this.error(i),i}}function we(t){if(t instanceof ve)return we(t.boundExpression);if(t instanceof Yt&&"error"===t.name)return!1;if(t instanceof Qt)return!1;if(t instanceof ge)return!1;const e=t instanceof Wt||t instanceof Xt;let i=!0;return t.eachChild((t=>{i=e?i&&we(t):i&&t instanceof qt})),!!i&&_e(t)&&xe(t,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"])}function Te(t,e){const i=t.length-1;let r,n,a=0,o=i,s=0;for(;a<=o;)if(s=Math.floor((a+o)/2),r=t[s],n=t[s+1],r<=e){if(s===i||ee))throw new Zt("Input is not a number.");o=s-1}return 0}class Ee{constructor(t,e,i){this.type=t,this.input=e,this.labels=[],this.outputs=[];for(const[r,n]of i)this.labels.push(r),this.outputs.push(n)}static parse(t,e){if(t.length-1<4)return e.error(`Expected at least 4 arguments, but found only ${t.length-1}.`);if((t.length-1)%2!=0)return e.error("Expected an even number of arguments.");const i=e.parse(t[1],1,pt);if(!i)return null;const r=[];let n=null;e.expectedType&&"value"!==e.expectedType.kind&&(n=e.expectedType);for(let a=1;a=i)return e.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',s);const c=e.parse(o,l,n);if(!c)return null;n=n||c.type,r.push([i,c])}return new Ee(n,i,r)}evaluate(t){const e=this.labels,i=this.outputs;if(1===e.length)return i[0].evaluate(t);const r=this.input.evaluate(t);if(r<=e[0])return i[0].evaluate(t);const n=e.length;return r>=e[n-1]?i[n-1].evaluate(t):i[Te(e,r)].evaluate(t)}eachChild(t){t(this.input);for(const e of this.outputs)t(e)}outputDefined(){return this.outputs.every((t=>t.outputDefined()))}}function Se(t,e,i){return t*(1-i)+e*i}var Ie=Object.freeze({__proto__:null,number:Se,color:function(t,e,i){return new Lt(Se(t.r,e.r,i),Se(t.g,e.g,i),Se(t.b,e.b,i),Se(t.a,e.a,i))},array:function(t,e,i){return t.map(((t,r)=>Se(t,e[r],i)))},padding:function(t,e,i){const r=t.values,n=e.values;return new Ot([Se(r[0],n[0],i),Se(r[1],n[1],i),Se(r[2],n[2],i),Se(r[3],n[3],i)])}});const ze=.95047,Ce=1.08883,Ae=4/29,ke=6/29,Me=3*ke*ke,Pe=Math.PI/180,De=180/Math.PI;function Le(t){return t>.008856451679035631?Math.pow(t,1/3):t/Me+Ae}function Be(t){return t>ke?t*t*t:Me*(t-Ae)}function Re(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function Fe(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function Oe(t){const e=Fe(t.r),i=Fe(t.g),r=Fe(t.b),n=Le((.4124564*e+.3575761*i+.1804375*r)/ze),a=Le((.2126729*e+.7151522*i+.072175*r)/1);return{l:116*a-16,a:500*(n-a),b:200*(a-Le((.0193339*e+.119192*i+.9503041*r)/Ce)),alpha:t.a}}function Ve(t){let e=(t.l+16)/116,i=isNaN(t.a)?e:e+t.a/500,r=isNaN(t.b)?e:e-t.b/200;return e=1*Be(e),i=ze*Be(i),r=Ce*Be(r),new Lt(Re(3.2404542*i-1.5371385*e-.4985314*r),Re(-.969266*i+1.8760108*e+.041556*r),Re(.0556434*i-.2040259*e+1.0572252*r),t.alpha)}function Ue(t,e,i){const r=e-t;return t+i*(r>180||r<-180?r-360*Math.round(r/360):r)}const Ne={forward:Oe,reverse:Ve,interpolate:function(t,e,i){return{l:Se(t.l,e.l,i),a:Se(t.a,e.a,i),b:Se(t.b,e.b,i),alpha:Se(t.alpha,e.alpha,i)}}},$e={forward:function(t){const{l:e,a:i,b:r}=Oe(t),n=Math.atan2(r,i)*De;return{h:n<0?n+360:n,c:Math.sqrt(i*i+r*r),l:e,alpha:t.a}},reverse:function(t){const e=t.h*Pe,i=t.c;return Ve({l:t.l,a:Math.cos(e)*i,b:Math.sin(e)*i,alpha:t.alpha})},interpolate:function(t,e,i){return{h:Ue(t.h,e.h,i),c:Se(t.c,e.c,i),l:Se(t.l,e.l,i),alpha:Se(t.alpha,e.alpha,i)}}};var Ge=Object.freeze({__proto__:null,lab:Ne,hcl:$e});class qe{constructor(t,e,i,r,n){this.type=t,this.operator=e,this.interpolation=i,this.input=r,this.labels=[],this.outputs=[];for(const[a,o]of n)this.labels.push(a),this.outputs.push(o)}static interpolationFactor(t,i,r,n){let a=0;if("exponential"===t.name)a=Ze(i,t.base,r,n);else if("linear"===t.name)a=Ze(i,1,r,n);else if("cubic-bezier"===t.name){const o=t.controlPoints;a=new e(o[0],o[1],o[2],o[3]).solve(Ze(i,1,r,n))}return a}static parse(t,e){let[i,r,n,...a]=t;if(!Array.isArray(r)||0===r.length)return e.error("Expected an interpolation type expression.",1);if("linear"===r[0])r={name:"linear"};else if("exponential"===r[0]){const t=r[1];if("number"!=typeof t)return e.error("Exponential interpolation requires a numeric base.",1,1);r={name:"exponential",base:t}}else{if("cubic-bezier"!==r[0])return e.error(`Unknown interpolation type ${String(r[0])}`,1,0);{const t=r.slice(1);if(4!==t.length||t.some((t=>"number"!=typeof t||t<0||t>1)))return e.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);r={name:"cubic-bezier",controlPoints:t}}}if(t.length-1<4)return e.error(`Expected at least 4 arguments, but found only ${t.length-1}.`);if((t.length-1)%2!=0)return e.error("Expected an even number of arguments.");if(n=e.parse(n,2,pt),!n)return null;const o=[];let s=null;"interpolate-hcl"===i||"interpolate-lab"===i?s=ft:e.expectedType&&"value"!==e.expectedType.kind&&(s=e.expectedType);for(let l=0;l=t)return e.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',r);const c=e.parse(i,n,s);if(!c)return null;s=s||c.type,o.push([t,c])}return"number"===s.kind||"color"===s.kind||"padding"===s.kind||"array"===s.kind&&"number"===s.itemType.kind&&"number"==typeof s.N?new qe(s,i,r,n,o):e.error(`Type ${Tt(s)} is not interpolatable.`)}evaluate(t){const e=this.labels,i=this.outputs;if(1===e.length)return i[0].evaluate(t);const r=this.input.evaluate(t);if(r<=e[0])return i[0].evaluate(t);const n=e.length;if(r>=e[n-1])return i[n-1].evaluate(t);const a=Te(e,r),o=qe.interpolationFactor(this.interpolation,r,e[a],e[a+1]),s=i[a].evaluate(t),l=i[a+1].evaluate(t);return"interpolate"===this.operator?Ie[this.type.kind.toLowerCase()](s,l,o):"interpolate-hcl"===this.operator?$e.reverse($e.interpolate($e.forward(s),$e.forward(l),o)):Ne.reverse(Ne.interpolate(Ne.forward(s),Ne.forward(l),o))}eachChild(t){t(this.input);for(const e of this.outputs)t(e)}outputDefined(){return this.outputs.every((t=>t.outputDefined()))}}function Ze(t,e,i,r){const n=r-i,a=t-i;return 0===n?0:1===e?a/n:(Math.pow(e,a)-1)/(Math.pow(e,n)-1)}class je{constructor(t,e){this.type=t,this.args=e}static parse(t,e){if(t.length<2)return e.error("Expectected at least one argument.");let i=null;const r=e.expectedType;r&&"value"!==r.kind&&(i=r);const n=[];for(const o of t.slice(1)){const t=e.parse(o,1+n.length,i,void 0,{typeAnnotation:"omit"});if(!t)return null;i=i||t.type,n.push(t)}if(!i)throw new Error("No output type");const a=r&&n.some((t=>St(r,t.type)));return new je(a?_t:i,n)}evaluate(t){let e,i=null,r=0;for(const n of this.args)if(r++,i=n.evaluate(t),i&&i instanceof Vt&&!i.available&&(e||(e=i.name),i=null,r===this.args.length&&(i=e)),null!==i)break;return i}eachChild(t){this.args.forEach(t)}outputDefined(){return this.args.every((t=>t.outputDefined()))}}class Xe{constructor(t,e){this.type=e.type,this.bindings=[].concat(t),this.result=e}evaluate(t){return this.result.evaluate(t)}eachChild(t){for(const e of this.bindings)t(e[1]);t(this.result)}static parse(t,e){if(t.length<4)return e.error(`Expected at least 3 arguments, but found ${t.length-1} instead.`);const i=[];for(let n=1;n=i.length)throw new Zt(`Array index out of bounds: ${e} > ${i.length-1}.`);if(e!==Math.floor(e))throw new Zt(`Array index must be an integer, but found ${e} instead.`);return i[e]}eachChild(t){t(this.index),t(this.input)}outputDefined(){return!1}}class We{constructor(t,e){this.type=mt,this.needle=t,this.haystack=e}static parse(t,e){if(3!==t.length)return e.error(`Expected 2 arguments, but found ${t.length-1} instead.`);const i=e.parse(t[1],1,_t),r=e.parse(t[2],2,_t);return i&&r?It(i.type,[mt,dt,pt,ut,_t])?new We(i,r):e.error(`Expected first argument to be of type boolean, string, number or null, but found ${Tt(i.type)} instead`):null}evaluate(t){const e=this.needle.evaluate(t),i=this.haystack.evaluate(t);if(!i)return!1;if(!zt(e,["boolean","string","number","null"]))throw new Zt(`Expected first argument to be of type boolean, string, number or null, but found ${Tt($t(e))} instead.`);if(!zt(i,["string","array"]))throw new Zt(`Expected second argument to be of type array or string, but found ${Tt($t(i))} instead.`);return i.indexOf(e)>=0}eachChild(t){t(this.needle),t(this.haystack)}outputDefined(){return!0}}class Ke{constructor(t,e,i){this.type=pt,this.needle=t,this.haystack=e,this.fromIndex=i}static parse(t,e){if(t.length<=2||t.length>=5)return e.error(`Expected 3 or 4 arguments, but found ${t.length-1} instead.`);const i=e.parse(t[1],1,_t),r=e.parse(t[2],2,_t);if(!i||!r)return null;if(!It(i.type,[mt,dt,pt,ut,_t]))return e.error(`Expected first argument to be of type boolean, string, number or null, but found ${Tt(i.type)} instead`);if(4===t.length){const n=e.parse(t[3],3,pt);return n?new Ke(i,r,n):null}return new Ke(i,r)}evaluate(t){const e=this.needle.evaluate(t),i=this.haystack.evaluate(t);if(!zt(e,["boolean","string","number","null"]))throw new Zt(`Expected first argument to be of type boolean, string, number or null, but found ${Tt($t(e))} instead.`);if(!zt(i,["string","array"]))throw new Zt(`Expected second argument to be of type array or string, but found ${Tt($t(i))} instead.`);if(this.fromIndex){const r=this.fromIndex.evaluate(t);return i.indexOf(e,r)}return i.indexOf(e)}eachChild(t){t(this.needle),t(this.haystack),this.fromIndex&&t(this.fromIndex)}outputDefined(){return!1}}class Je{constructor(t,e,i,r,n,a){this.inputType=t,this.type=e,this.input=i,this.cases=r,this.outputs=n,this.otherwise=a}static parse(t,e){if(t.length<5)return e.error(`Expected at least 4 arguments, but found only ${t.length-1}.`);if(t.length%2!=1)return e.error("Expected an even number of arguments.");let i,r;e.expectedType&&"value"!==e.expectedType.kind&&(r=e.expectedType);const n={},a=[];for(let l=2;lNumber.MAX_SAFE_INTEGER)return c.error(`Branch labels must be integers no larger than ${Number.MAX_SAFE_INTEGER}.`);if("number"==typeof t&&Math.floor(t)!==t)return c.error("Numeric branch labels must be integer values.");if(i){if(c.checkSubtype(i,$t(t)))return null}else i=$t(t);if(void 0!==n[String(t)])return c.error("Branch labels must be unique.");n[String(t)]=a.length}const h=e.parse(s,l,r);if(!h)return null;r=r||h.type,a.push(h)}const o=e.parse(t[1],1,_t);if(!o)return null;const s=e.parse(t[t.length-1],t.length-1,r);return s?"value"!==o.type.kind&&e.concat(1).checkSubtype(i,o.type)?null:new Je(i,r,o,n,a,s):null}evaluate(t){const e=this.input.evaluate(t);return($t(e)===this.inputType&&this.outputs[this.cases[e]]||this.otherwise).evaluate(t)}eachChild(t){t(this.input),this.outputs.forEach(t),t(this.otherwise)}outputDefined(){return this.outputs.every((t=>t.outputDefined()))&&this.otherwise.outputDefined()}}class Ye{constructor(t,e,i){this.type=t,this.branches=e,this.otherwise=i}static parse(t,e){if(t.length<4)return e.error(`Expected at least 3 arguments, but found only ${t.length-1}.`);if(t.length%2!=0)return e.error("Expected an odd number of arguments.");let i;e.expectedType&&"value"!==e.expectedType.kind&&(i=e.expectedType);const r=[];for(let a=1;ae.outputDefined()))&&this.otherwise.outputDefined()}}class Qe{constructor(t,e,i,r){this.type=t,this.input=e,this.beginIndex=i,this.endIndex=r}static parse(t,e){if(t.length<=2||t.length>=5)return e.error(`Expected 3 or 4 arguments, but found ${t.length-1} instead.`);const i=e.parse(t[1],1,_t),r=e.parse(t[2],2,pt);if(!i||!r)return null;if(!It(i.type,[wt(_t),dt,_t]))return e.error(`Expected first argument to be of type array or string, but found ${Tt(i.type)} instead`);if(4===t.length){const n=e.parse(t[3],3,pt);return n?new Qe(i.type,i,r,n):null}return new Qe(i.type,i,r)}evaluate(t){const e=this.input.evaluate(t),i=this.beginIndex.evaluate(t);if(!zt(e,["string","array"]))throw new Zt(`Expected first argument to be of type array or string, but found ${Tt($t(e))} instead.`);if(this.endIndex){const r=this.endIndex.evaluate(t);return e.slice(i,r)}return e.slice(i)}eachChild(t){t(this.input),t(this.beginIndex),this.endIndex&&t(this.endIndex)}outputDefined(){return!1}}function ti(t,e){return"=="===t||"!="===t?"boolean"===e.kind||"string"===e.kind||"number"===e.kind||"null"===e.kind||"value"===e.kind:"string"===e.kind||"number"===e.kind||"value"===e.kind}function ei(t,e,i,r){return 0===r.compare(e,i)}function ii(t,e,i){const r="=="!==t&&"!="!==t;return class n{constructor(t,e,i){this.type=mt,this.lhs=t,this.rhs=e,this.collator=i,this.hasUntypedArgument="value"===t.type.kind||"value"===e.type.kind}static parse(t,e){if(3!==t.length&&4!==t.length)return e.error("Expected two or three arguments.");const i=t[0];let a=e.parse(t[1],1,_t);if(!a)return null;if(!ti(i,a.type))return e.concat(1).error(`"${i}" comparisons are not supported for type '${Tt(a.type)}'.`);let o=e.parse(t[2],2,_t);if(!o)return null;if(!ti(i,o.type))return e.concat(2).error(`"${i}" comparisons are not supported for type '${Tt(o.type)}'.`);if(a.type.kind!==o.type.kind&&"value"!==a.type.kind&&"value"!==o.type.kind)return e.error(`Cannot compare types '${Tt(a.type)}' and '${Tt(o.type)}'.`);r&&("value"===a.type.kind&&"value"!==o.type.kind?a=new Xt(o.type,[a]):"value"!==a.type.kind&&"value"===o.type.kind&&(o=new Xt(a.type,[o])));let s=null;if(4===t.length){if("string"!==a.type.kind&&"string"!==o.type.kind&&"value"!==a.type.kind&&"value"!==o.type.kind)return e.error("Cannot use collator to compare non-string types.");if(s=e.parse(t[3],3,yt),!s)return null}return new n(a,o,s)}evaluate(n){const a=this.lhs.evaluate(n),o=this.rhs.evaluate(n);if(r&&this.hasUntypedArgument){const e=$t(a),i=$t(o);if(e.kind!==i.kind||"string"!==e.kind&&"number"!==e.kind)throw new Zt(`Expected arguments for "${t}" to be (string, string) or (number, number), but found (${e.kind}, ${i.kind}) instead.`)}if(this.collator&&!r&&this.hasUntypedArgument){const t=$t(a),i=$t(o);if("string"!==t.kind||"string"!==i.kind)return e(n,a,o)}return this.collator?i(n,a,o,this.collator.evaluate(n)):e(n,a,o)}eachChild(t){t(this.lhs),t(this.rhs),this.collator&&t(this.collator)}outputDefined(){return!0}}}const ri=ii("==",(function(t,e,i){return e===i}),ei),ni=ii("!=",(function(t,e,i){return e!==i}),(function(t,e,i,r){return!ei(0,e,i,r)})),ai=ii("<",(function(t,e,i){return e",(function(t,e,i){return e>i}),(function(t,e,i,r){return r.compare(e,i)>0})),si=ii("<=",(function(t,e,i){return e<=i}),(function(t,e,i,r){return r.compare(e,i)<=0})),li=ii(">=",(function(t,e,i){return e>=i}),(function(t,e,i,r){return r.compare(e,i)>=0}));class ci{constructor(t,e,i,r,n){this.type=dt,this.number=t,this.locale=e,this.currency=i,this.minFractionDigits=r,this.maxFractionDigits=n}static parse(t,e){if(3!==t.length)return e.error("Expected two arguments.");const i=e.parse(t[1],1,pt);if(!i)return null;const r=t[2];if("object"!=typeof r||Array.isArray(r))return e.error("NumberFormat options argument must be an object.");let n=null;if(r.locale&&(n=e.parse(r.locale,1,dt),!n))return null;let a=null;if(r.currency&&(a=e.parse(r.currency,1,dt),!a))return null;let o=null;if(r["min-fraction-digits"]&&(o=e.parse(r["min-fraction-digits"],1,pt),!o))return null;let s=null;return r["max-fraction-digits"]&&(s=e.parse(r["max-fraction-digits"],1,pt),!s)?null:new ci(i,n,a,o,s)}evaluate(t){return new Intl.NumberFormat(this.locale?this.locale.evaluate(t):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(t):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(t):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(t):void 0}).format(this.number.evaluate(t))}eachChild(t){t(this.number),this.locale&&t(this.locale),this.currency&&t(this.currency),this.minFractionDigits&&t(this.minFractionDigits),this.maxFractionDigits&&t(this.maxFractionDigits)}outputDefined(){return!1}}class hi{constructor(t){this.type=xt,this.sections=t}static parse(t,e){if(t.length<2)return e.error("Expected at least one argument.");const i=t[1];if(!Array.isArray(i)&&"object"==typeof i)return e.error("First argument must be an image or text section.");const r=[];let n=!1;for(let a=1;a<=t.length-1;++a){const i=t[a];if(n&&"object"==typeof i&&!Array.isArray(i)){n=!1;let t=null;if(i["font-scale"]&&(t=e.parse(i["font-scale"],1,pt),!t))return null;let a=null;if(i["text-font"]&&(a=e.parse(i["text-font"],1,wt(dt)),!a))return null;let o=null;if(i["text-color"]&&(o=e.parse(i["text-color"],1,ft),!o))return null;const s=r[r.length-1];s.scale=t,s.font=a,s.textColor=o}else{const i=e.parse(t[a],1,_t);if(!i)return null;const o=i.type.kind;if("string"!==o&&"value"!==o&&"null"!==o&&"resolvedImage"!==o)return e.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");n=!0,r.push({content:i,scale:null,font:null,textColor:null})}}return new hi(r)}evaluate(t){return new Ft(this.sections.map((e=>{const i=e.content.evaluate(t);return $t(i)===bt?new Rt("",i,null,null,null):new Rt(Gt(i),null,e.scale?e.scale.evaluate(t):null,e.font?e.font.evaluate(t).join(","):null,e.textColor?e.textColor.evaluate(t):null)})))}eachChild(t){for(const e of this.sections)t(e.content),e.scale&&t(e.scale),e.font&&t(e.font),e.textColor&&t(e.textColor)}outputDefined(){return!1}}class ui{constructor(t){this.type=bt,this.input=t}static parse(t,e){if(2!==t.length)return e.error("Expected two arguments.");const i=e.parse(t[1],1,dt);return i?new ui(i):e.error("No image name provided.")}evaluate(t){const e=this.input.evaluate(t),i=Vt.fromString(e);return i&&t.availableImages&&(i.available=t.availableImages.indexOf(e)>-1),i}eachChild(t){t(this.input)}outputDefined(){return!1}}class pi{constructor(t){this.type=pt,this.input=t}static parse(t,e){if(2!==t.length)return e.error(`Expected 1 argument, but found ${t.length-1} instead.`);const i=e.parse(t[1],1);return i?"array"!==i.type.kind&&"string"!==i.type.kind&&"value"!==i.type.kind?e.error(`Expected argument of type string or array, but found ${Tt(i.type)} instead.`):new pi(i):null}evaluate(t){const e=this.input.evaluate(t);if("string"==typeof e)return e.length;if(Array.isArray(e))return e.length;throw new Zt(`Expected value to be of type string or array, but found ${Tt($t(e))} instead.`)}eachChild(t){t(this.input)}outputDefined(){return!1}}const di={"==":ri,"!=":ni,">":oi,"<":ai,">=":li,"<=":si,array:Xt,at:He,boolean:Xt,case:Ye,coalesce:je,collator:Qt,format:hi,image:ui,in:We,"index-of":Ke,interpolate:qe,"interpolate-hcl":qe,"interpolate-lab":qe,length:pi,let:Xe,literal:qt,match:Je,number:Xt,"number-format":ci,object:Xt,slice:Qe,step:Ee,string:Xt,"to-boolean":Wt,"to-color":Wt,"to-number":Wt,"to-string":Wt,var:ve,within:ge};function mi(t,[e,i,r,n]){e=e.evaluate(t),i=i.evaluate(t),r=r.evaluate(t);const a=n?n.evaluate(t):1,o=Ut(e,i,r,a);if(o)throw new Zt(o);return new Lt(e/255*a,i/255*a,r/255*a,a)}function fi(t,e){return t in e}function gi(t,e){const i=e[t];return void 0===i?null:i}function _i(t){return{type:t}}function yi(t){return{result:"success",value:t}}function xi(t){return{result:"error",value:t}}function vi(t){return"data-driven"===t["property-type"]||"cross-faded-data-driven"===t["property-type"]}function bi(t){return!!t.expression&&t.expression.parameters.indexOf("zoom")>-1}function wi(t){return!!t.expression&&t.expression.interpolated}function Ti(t){return t instanceof Number?"number":t instanceof String?"string":t instanceof Boolean?"boolean":Array.isArray(t)?"array":null===t?"null":typeof t}function Ei(t){return"object"==typeof t&&null!==t&&!Array.isArray(t)}function Si(t){return t}function Ii(t,e){const i="color"===e.type,r=t.stops&&"object"==typeof t.stops[0][0],n=r||!(r||void 0!==t.property),a=t.type||(wi(e)?"exponential":"interval");if(i||"padding"===e.type){const r=i?Lt.parse:Ot.parse;(t=ot({},t)).stops&&(t.stops=t.stops.map((t=>[t[0],r(t[1])]))),t.default=r(t.default?t.default:e.default)}if(t.colorSpace&&"rgb"!==t.colorSpace&&!Ge[t.colorSpace])throw new Error(`Unknown color space: ${t.colorSpace}`);let o,s,l;if("exponential"===a)o=ki;else if("interval"===a)o=Ai;else if("categorical"===a){o=Ci,s=Object.create(null);for(const e of t.stops)s[e[0]]=e[1];l=typeof t.stops[0][0]}else{if("identity"!==a)throw new Error(`Unknown function type "${a}"`);o=Mi}if(r){const i={},r=[];for(let e=0;et[0])),evaluate:({zoom:i},r)=>ki({stops:n,base:t.base},e,i).evaluate(i,r)}}if(n){const i="exponential"===a?{name:"exponential",base:void 0!==t.base?t.base:1}:null;return{kind:"camera",interpolationType:i,interpolationFactor:qe.interpolationFactor.bind(void 0,i),zoomStops:t.stops.map((t=>t[0])),evaluate:({zoom:i})=>o(t,e,i,s,l)}}return{kind:"source",evaluate(i,r){const n=r&&r.properties?r.properties[t.property]:void 0;return void 0===n?zi(t.default,e.default):o(t,e,n,s,l)}}}function zi(t,e,i){return void 0!==t?t:void 0!==e?e:void 0!==i?i:void 0}function Ci(t,e,i,r,n){return zi(typeof i===n?r[i]:void 0,t.default,e.default)}function Ai(t,e,i){if("number"!==Ti(i))return zi(t.default,e.default);const r=t.stops.length;if(1===r)return t.stops[0][1];if(i<=t.stops[0][0])return t.stops[0][1];if(i>=t.stops[r-1][0])return t.stops[r-1][1];const n=Te(t.stops.map((t=>t[0])),i);return t.stops[n][1]}function ki(t,e,i){const r=void 0!==t.base?t.base:1;if("number"!==Ti(i))return zi(t.default,e.default);const n=t.stops.length;if(1===n)return t.stops[0][1];if(i<=t.stops[0][0])return t.stops[0][1];if(i>=t.stops[n-1][0])return t.stops[n-1][1];const a=Te(t.stops.map((t=>t[0])),i),o=function(t,e,i,r){const n=r-i,a=t-i;return 0===n?0:1===e?a/n:(Math.pow(e,a)-1)/(Math.pow(e,n)-1)}(i,r,t.stops[a][0],t.stops[a+1][0]),s=t.stops[a][1],l=t.stops[a+1][1];let c=Ie[e.type]||Si;if(t.colorSpace&&"rgb"!==t.colorSpace){const e=Ge[t.colorSpace];c=(t,i)=>e.reverse(e.interpolate(e.forward(t),e.forward(i),o))}return"function"==typeof s.evaluate?{evaluate(...t){const e=s.evaluate.apply(void 0,t),i=l.evaluate.apply(void 0,t);if(void 0!==e&&void 0!==i)return c(e,i,o)}}:c(s,l,o)}function Mi(t,e,i){switch(e.type){case"color":i=Lt.parse(i);break;case"formatted":i=Ft.fromString(i.toString());break;case"resolvedImage":i=Vt.fromString(i.toString());break;case"padding":i=Ot.parse(i);break;default:Ti(i)===e.type||"enum"===e.type&&e.values[i]||(i=void 0)}return zi(i,t.default,e.default)}Yt.register(di,{error:[{kind:"error"},[dt],(t,[e])=>{throw new Zt(e.evaluate(t))}],typeof:[dt,[_t],(t,[e])=>Tt($t(e.evaluate(t)))],"to-rgba":[wt(pt,4),[ft],(t,[e])=>e.evaluate(t).toArray()],rgb:[ft,[pt,pt,pt],mi],rgba:[ft,[pt,pt,pt,pt],mi],has:{type:mt,overloads:[[[dt],(t,[e])=>fi(e.evaluate(t),t.properties())],[[dt,gt],(t,[e,i])=>fi(e.evaluate(t),i.evaluate(t))]]},get:{type:_t,overloads:[[[dt],(t,[e])=>gi(e.evaluate(t),t.properties())],[[dt,gt],(t,[e,i])=>gi(e.evaluate(t),i.evaluate(t))]]},"feature-state":[_t,[dt],(t,[e])=>gi(e.evaluate(t),t.featureState||{})],properties:[gt,[],t=>t.properties()],"geometry-type":[dt,[],t=>t.geometryType()],id:[_t,[],t=>t.id()],zoom:[pt,[],t=>t.globals.zoom],"heatmap-density":[pt,[],t=>t.globals.heatmapDensity||0],"line-progress":[pt,[],t=>t.globals.lineProgress||0],accumulated:[_t,[],t=>void 0===t.globals.accumulated?null:t.globals.accumulated],"+":[pt,_i(pt),(t,e)=>{let i=0;for(const r of e)i+=r.evaluate(t);return i}],"*":[pt,_i(pt),(t,e)=>{let i=1;for(const r of e)i*=r.evaluate(t);return i}],"-":{type:pt,overloads:[[[pt,pt],(t,[e,i])=>e.evaluate(t)-i.evaluate(t)],[[pt],(t,[e])=>-e.evaluate(t)]]},"/":[pt,[pt,pt],(t,[e,i])=>e.evaluate(t)/i.evaluate(t)],"%":[pt,[pt,pt],(t,[e,i])=>e.evaluate(t)%i.evaluate(t)],ln2:[pt,[],()=>Math.LN2],pi:[pt,[],()=>Math.PI],e:[pt,[],()=>Math.E],"^":[pt,[pt,pt],(t,[e,i])=>Math.pow(e.evaluate(t),i.evaluate(t))],sqrt:[pt,[pt],(t,[e])=>Math.sqrt(e.evaluate(t))],log10:[pt,[pt],(t,[e])=>Math.log(e.evaluate(t))/Math.LN10],ln:[pt,[pt],(t,[e])=>Math.log(e.evaluate(t))],log2:[pt,[pt],(t,[e])=>Math.log(e.evaluate(t))/Math.LN2],sin:[pt,[pt],(t,[e])=>Math.sin(e.evaluate(t))],cos:[pt,[pt],(t,[e])=>Math.cos(e.evaluate(t))],tan:[pt,[pt],(t,[e])=>Math.tan(e.evaluate(t))],asin:[pt,[pt],(t,[e])=>Math.asin(e.evaluate(t))],acos:[pt,[pt],(t,[e])=>Math.acos(e.evaluate(t))],atan:[pt,[pt],(t,[e])=>Math.atan(e.evaluate(t))],min:[pt,_i(pt),(t,e)=>Math.min(...e.map((e=>e.evaluate(t))))],max:[pt,_i(pt),(t,e)=>Math.max(...e.map((e=>e.evaluate(t))))],abs:[pt,[pt],(t,[e])=>Math.abs(e.evaluate(t))],round:[pt,[pt],(t,[e])=>{const i=e.evaluate(t);return i<0?-Math.round(-i):Math.round(i)}],floor:[pt,[pt],(t,[e])=>Math.floor(e.evaluate(t))],ceil:[pt,[pt],(t,[e])=>Math.ceil(e.evaluate(t))],"filter-==":[mt,[dt,_t],(t,[e,i])=>t.properties()[e.value]===i.value],"filter-id-==":[mt,[_t],(t,[e])=>t.id()===e.value],"filter-type-==":[mt,[dt],(t,[e])=>t.geometryType()===e.value],"filter-<":[mt,[dt,_t],(t,[e,i])=>{const r=t.properties()[e.value],n=i.value;return typeof r==typeof n&&r{const i=t.id(),r=e.value;return typeof i==typeof r&&i":[mt,[dt,_t],(t,[e,i])=>{const r=t.properties()[e.value],n=i.value;return typeof r==typeof n&&r>n}],"filter-id->":[mt,[_t],(t,[e])=>{const i=t.id(),r=e.value;return typeof i==typeof r&&i>r}],"filter-<=":[mt,[dt,_t],(t,[e,i])=>{const r=t.properties()[e.value],n=i.value;return typeof r==typeof n&&r<=n}],"filter-id-<=":[mt,[_t],(t,[e])=>{const i=t.id(),r=e.value;return typeof i==typeof r&&i<=r}],"filter->=":[mt,[dt,_t],(t,[e,i])=>{const r=t.properties()[e.value],n=i.value;return typeof r==typeof n&&r>=n}],"filter-id->=":[mt,[_t],(t,[e])=>{const i=t.id(),r=e.value;return typeof i==typeof r&&i>=r}],"filter-has":[mt,[_t],(t,[e])=>e.value in t.properties()],"filter-has-id":[mt,[],t=>null!==t.id()&&void 0!==t.id()],"filter-type-in":[mt,[wt(dt)],(t,[e])=>e.value.indexOf(t.geometryType())>=0],"filter-id-in":[mt,[wt(_t)],(t,[e])=>e.value.indexOf(t.id())>=0],"filter-in-small":[mt,[dt,wt(_t)],(t,[e,i])=>i.value.indexOf(t.properties()[e.value])>=0],"filter-in-large":[mt,[dt,wt(_t)],(t,[e,i])=>function(t,e,i,r){for(;i<=r;){const n=i+r>>1;if(e[n]===t)return!0;e[n]>t?r=n-1:i=n+1}return!1}(t.properties()[e.value],i.value,0,i.value.length-1)],all:{type:mt,overloads:[[[mt,mt],(t,[e,i])=>e.evaluate(t)&&i.evaluate(t)],[_i(mt),(t,e)=>{for(const i of e)if(!i.evaluate(t))return!1;return!0}]]},any:{type:mt,overloads:[[[mt,mt],(t,[e,i])=>e.evaluate(t)||i.evaluate(t)],[_i(mt),(t,e)=>{for(const i of e)if(i.evaluate(t))return!0;return!1}]]},"!":[mt,[mt],(t,[e])=>!e.evaluate(t)],"is-supported-script":[mt,[dt],(t,[e])=>{const i=t.globals&&t.globals.isSupportedScript;return!i||i(e.evaluate(t))}],upcase:[dt,[dt],(t,[e])=>e.evaluate(t).toUpperCase()],downcase:[dt,[dt],(t,[e])=>e.evaluate(t).toLowerCase()],concat:[dt,_i(_t),(t,e)=>e.map((e=>Gt(e.evaluate(t)))).join("")],"resolved-locale":[dt,[yt],(t,[e])=>e.evaluate(t).resolvedLocale()]});class Pi{constructor(t,e){this.expression=t,this._warningHistory={},this._evaluator=new Jt,this._defaultValue=e?function(t){return"color"===t.type&&Ei(t.default)?new Lt(0,0,0,0):"color"===t.type?Lt.parse(t.default)||null:"padding"===t.type?Ot.parse(t.default)||null:void 0===t.default?null:t.default}(e):null,this._enumValues=e&&"enum"===e.type?e.values:null}evaluateWithoutErrorHandling(t,e,i,r,n,a){return this._evaluator.globals=t,this._evaluator.feature=e,this._evaluator.featureState=i,this._evaluator.canonical=r,this._evaluator.availableImages=n||null,this._evaluator.formattedSection=a,this.expression.evaluate(this._evaluator)}evaluate(t,e,i,r,n,a){this._evaluator.globals=t,this._evaluator.feature=e||null,this._evaluator.featureState=i||null,this._evaluator.canonical=r,this._evaluator.availableImages=n||null,this._evaluator.formattedSection=a||null;try{const t=this.expression.evaluate(this._evaluator);if(null==t||"number"==typeof t&&t!=t)return this._defaultValue;if(this._enumValues&&!(t in this._enumValues))throw new Zt(`Expected value to be one of ${Object.keys(this._enumValues).map((t=>JSON.stringify(t))).join(", ")}, but found ${JSON.stringify(t)} instead.`);return t}catch(t){return this._warningHistory[t.message]||(this._warningHistory[t.message]=!0,"undefined"!=typeof console&&console.warn(t.message)),this._defaultValue}}}function Di(t){return Array.isArray(t)&&t.length>0&&"string"==typeof t[0]&&t[0]in di}function Li(t,e){const i=new be(di,[],e?function(t){const e={color:ft,string:dt,number:pt,enum:dt,boolean:mt,formatted:xt,padding:vt,resolvedImage:bt};return"array"===t.type?wt(e[t.value]||_t,t.length):e[t.type]}(e):void 0),r=i.parse(t,void 0,void 0,void 0,e&&"string"===e.type?{typeAnnotation:"coerce"}:void 0);return r?yi(new Pi(r,e)):xi(i.errors)}class Bi{constructor(t,e){this.kind=t,this._styleExpression=e,this.isStateDependent="constant"!==t&&!ye(e.expression)}evaluateWithoutErrorHandling(t,e,i,r,n,a){return this._styleExpression.evaluateWithoutErrorHandling(t,e,i,r,n,a)}evaluate(t,e,i,r,n,a){return this._styleExpression.evaluate(t,e,i,r,n,a)}}class Ri{constructor(t,e,i,r){this.kind=t,this.zoomStops=i,this._styleExpression=e,this.isStateDependent="camera"!==t&&!ye(e.expression),this.interpolationType=r}evaluateWithoutErrorHandling(t,e,i,r,n,a){return this._styleExpression.evaluateWithoutErrorHandling(t,e,i,r,n,a)}evaluate(t,e,i,r,n,a){return this._styleExpression.evaluate(t,e,i,r,n,a)}interpolationFactor(t,e,i){return this.interpolationType?qe.interpolationFactor(this.interpolationType,t,e,i):0}}function Fi(t,e){const i=Li(t,e);if("error"===i.result)return i;const r=i.value.expression,n=_e(r);if(!n&&!vi(e))return xi([new ct("","data expressions not supported")]);const a=xe(r,["zoom"]);if(!a&&!bi(e))return xi([new ct("","zoom expressions not supported")]);const o=Vi(r);return o||a?o instanceof ct?xi([o]):o instanceof qe&&!wi(e)?xi([new ct("",'"interpolate" expressions cannot be used with this property')]):yi(o?new Ri(n?"camera":"composite",i.value,o.labels,o instanceof qe?o.interpolation:void 0):new Bi(n?"constant":"source",i.value)):xi([new ct("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')])}class Oi{constructor(t,e){this._parameters=t,this._specification=e,ot(this,Ii(this._parameters,this._specification))}static deserialize(t){return new Oi(t._parameters,t._specification)}static serialize(t){return{_parameters:t._parameters,_specification:t._specification}}}function Vi(t){let e=null;if(t instanceof Xe)e=Vi(t.result);else if(t instanceof je){for(const i of t.args)if(e=Vi(i),e)break}else(t instanceof Ee||t instanceof qe)&&t.input instanceof Yt&&"zoom"===t.input.name&&(e=t);return e instanceof ct||t.eachChild((t=>{const i=Vi(t);i instanceof ct?e=i:!e&&i?e=new ct("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):e&&i&&e!==i&&(e=new ct("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))})),e}function Ui(t){const e=t.key,i=t.value,r=t.valueSpec||{},n=t.objectElementValidators||{},a=t.style,o=t.styleSpec;let s=[];const l=Ti(i);if("object"!==l)return[new nt(e,i,`object expected, ${l} found`)];for(const c in i){const t=c.split(".")[0],l=r[t]||r["*"];let h;if(n[t])h=n[t];else if(r[t])h=mr;else if(n["*"])h=n["*"];else{if(!r["*"]){s.push(new nt(e,i[c],`unknown property "${c}"`));continue}h=mr}s=s.concat(h({key:(e?`${e}.`:e)+c,value:i[c],valueSpec:l,style:a,styleSpec:o,object:i,objectKey:c},i))}for(const c in r)n[c]||r[c].required&&void 0===r[c].default&&void 0===i[c]&&s.push(new nt(e,i,`missing required property "${c}"`));return s}function Ni(t){const e=t.value,i=t.valueSpec,r=t.style,n=t.styleSpec,a=t.key,o=t.arrayElementValidator||mr;if("array"!==Ti(e))return[new nt(a,e,`array expected, ${Ti(e)} found`)];if(i.length&&e.length!==i.length)return[new nt(a,e,`array length ${i.length} expected, length ${e.length} found`)];if(i["min-length"]&&e.lengthr.maximum?[new nt(e,i,`${i} is greater than the maximum value ${r.maximum}`)]:[]}function Gi(t){const e=t.valueSpec,i=st(t.value.type);let r,n,a,o={};const s="categorical"!==i&&void 0===t.value.property,l=!s,c="array"===Ti(t.value.stops)&&"array"===Ti(t.value.stops[0])&&"object"===Ti(t.value.stops[0][0]),h=Ui({key:t.key,value:t.value,valueSpec:t.styleSpec.function,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{stops:function(t){if("identity"===i)return[new nt(t.key,t.value,'identity function may not have a "stops" property')];let e=[];const r=t.value;return e=e.concat(Ni({key:t.key,value:r,valueSpec:t.valueSpec,style:t.style,styleSpec:t.styleSpec,arrayElementValidator:u})),"array"===Ti(r)&&0===r.length&&e.push(new nt(t.key,r,"array must have at least one stop")),e},default:function(t){return mr({key:t.key,value:t.value,valueSpec:e,style:t.style,styleSpec:t.styleSpec})}}});return"identity"===i&&s&&h.push(new nt(t.key,t.value,'missing required property "property"')),"identity"===i||t.value.stops||h.push(new nt(t.key,t.value,'missing required property "stops"')),"exponential"===i&&t.valueSpec.expression&&!wi(t.valueSpec)&&h.push(new nt(t.key,t.value,"exponential functions not supported")),t.styleSpec.$version>=8&&(l&&!vi(t.valueSpec)?h.push(new nt(t.key,t.value,"property functions not supported")):s&&!bi(t.valueSpec)&&h.push(new nt(t.key,t.value,"zoom functions not supported"))),"categorical"!==i&&!c||void 0!==t.value.property||h.push(new nt(t.key,t.value,'"property" property is required')),h;function u(t){let i=[];const r=t.value,s=t.key;if("array"!==Ti(r))return[new nt(s,r,`array expected, ${Ti(r)} found`)];if(2!==r.length)return[new nt(s,r,`array length 2 expected, length ${r.length} found`)];if(c){if("object"!==Ti(r[0]))return[new nt(s,r,`object expected, ${Ti(r[0])} found`)];if(void 0===r[0].zoom)return[new nt(s,r,"object stop key must have zoom")];if(void 0===r[0].value)return[new nt(s,r,"object stop key must have value")];if(a&&a>st(r[0].zoom))return[new nt(s,r[0].zoom,"stop zoom values must appear in ascending order")];st(r[0].zoom)!==a&&(a=st(r[0].zoom),n=void 0,o={}),i=i.concat(Ui({key:`${s}[0]`,value:r[0],valueSpec:{zoom:{}},style:t.style,styleSpec:t.styleSpec,objectElementValidators:{zoom:$i,value:p}}))}else i=i.concat(p({key:`${s}[0]`,value:r[0],valueSpec:{},style:t.style,styleSpec:t.styleSpec},r));return Di(lt(r[1]))?i.concat([new nt(`${s}[1]`,r[1],"expressions are not allowed in function stops.")]):i.concat(mr({key:`${s}[1]`,value:r[1],valueSpec:e,style:t.style,styleSpec:t.styleSpec}))}function p(t,a){const s=Ti(t.value),l=st(t.value),c=null!==t.value?t.value:a;if(r){if(s!==r)return[new nt(t.key,c,`${s} stop domain type must match previous stop domain type ${r}`)]}else r=s;if("number"!==s&&"string"!==s&&"boolean"!==s)return[new nt(t.key,c,"stop domain value must be a number, string, or boolean")];if("number"!==s&&"categorical"!==i){let r=`number expected, ${s} found`;return vi(e)&&void 0===i&&(r+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new nt(t.key,c,r)]}return"categorical"!==i||"number"!==s||isFinite(l)&&Math.floor(l)===l?"categorical"!==i&&"number"===s&&void 0!==n&&lnew nt(`${t.key}${e.key}`,t.value,e.message)));const i=e.value.expression||e.value._styleExpression.expression;if("property"===t.expressionContext&&"text-font"===t.propertyKey&&!i.outputDefined())return[new nt(t.key,t.value,`Invalid data expression for "${t.propertyKey}". Output values must be contained as literals within the expression.`)];if("property"===t.expressionContext&&"layout"===t.propertyType&&!ye(i))return[new nt(t.key,t.value,'"feature-state" data expressions are not supported with layout properties.')];if("filter"===t.expressionContext&&!ye(i))return[new nt(t.key,t.value,'"feature-state" data expressions are not supported with filters.')];if(t.expressionContext&&0===t.expressionContext.indexOf("cluster")){if(!xe(i,["zoom","feature-state"]))return[new nt(t.key,t.value,'"zoom" and "feature-state" expressions are not supported with cluster properties.')];if("cluster-initial"===t.expressionContext&&!_e(i))return[new nt(t.key,t.value,"Feature data expressions are not supported with initial expression part of cluster properties.")]}return[]}function Zi(t){const e=t.key,i=t.value,r=t.valueSpec,n=[];return Array.isArray(r.values)?-1===r.values.indexOf(st(i))&&n.push(new nt(e,i,`expected one of [${r.values.join(", ")}], ${JSON.stringify(i)} found`)):-1===Object.keys(r.values).indexOf(st(i))&&n.push(new nt(e,i,`expected one of [${Object.keys(r.values).join(", ")}], ${JSON.stringify(i)} found`)),n}function ji(t){if(!0===t||!1===t)return!0;if(!Array.isArray(t)||0===t.length)return!1;switch(t[0]){case"has":return t.length>=2&&"$id"!==t[1]&&"$type"!==t[1];case"in":return t.length>=3&&("string"!=typeof t[1]||Array.isArray(t[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return 3!==t.length||Array.isArray(t[1])||Array.isArray(t[2]);case"any":case"all":for(const e of t.slice(1))if(!ji(e)&&"boolean"!=typeof e)return!1;return!0;default:return!0}}const Xi={type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}};function Hi(t){if(null==t)return{filter:()=>!0,needGeometry:!1};ji(t)||(t=Ji(t));const e=Li(t,Xi);if("error"===e.result)throw new Error(e.value.map((t=>`${t.key}: ${t.message}`)).join(", "));return{filter:(t,i,r)=>e.value.evaluate(t,i,{},r),needGeometry:Ki(t)}}function Wi(t,e){return te?1:0}function Ki(t){if(!Array.isArray(t))return!1;if("within"===t[0])return!0;for(let e=1;e"===e||"<="===e||">="===e?Yi(t[1],t[2],e):"any"===e?(i=t.slice(1),["any"].concat(i.map(Ji))):"all"===e?["all"].concat(t.slice(1).map(Ji)):"none"===e?["all"].concat(t.slice(1).map(Ji).map(er)):"in"===e?Qi(t[1],t.slice(2)):"!in"===e?er(Qi(t[1],t.slice(2))):"has"===e?tr(t[1]):"!has"===e?er(tr(t[1])):"within"!==e||t;var i}function Yi(t,e,i){switch(t){case"$type":return[`filter-type-${i}`,e];case"$id":return[`filter-id-${i}`,e];default:return[`filter-${i}`,t,e]}}function Qi(t,e){if(0===e.length)return!1;switch(t){case"$type":return["filter-type-in",["literal",e]];case"$id":return["filter-id-in",["literal",e]];default:return e.length>200&&!e.some((t=>typeof t!=typeof e[0]))?["filter-in-large",t,["literal",e.sort(Wi)]]:["filter-in-small",t,["literal",e]]}}function tr(t){switch(t){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",t]}}function er(t){return["!",t]}function ir(t){return ji(lt(t.value))?qi(ot({},t,{expressionContext:"filter",valueSpec:{value:"boolean"}})):rr(t)}function rr(t){const e=t.value,i=t.key;if("array"!==Ti(e))return[new nt(i,e,`array expected, ${Ti(e)} found`)];const r=t.styleSpec;let n,a=[];if(e.length<1)return[new nt(i,e,"filter array must have at least 1 element")];switch(a=a.concat(Zi({key:`${i}[0]`,value:e[0],valueSpec:r.filter_operator,style:t.style,styleSpec:t.styleSpec})),st(e[0])){case"<":case"<=":case">":case">=":e.length>=2&&"$type"===st(e[1])&&a.push(new nt(i,e,`"$type" cannot be use with operator "${e[0]}"`));case"==":case"!=":3!==e.length&&a.push(new nt(i,e,`filter array for operator "${e[0]}" must have 3 elements`));case"in":case"!in":e.length>=2&&(n=Ti(e[1]),"string"!==n&&a.push(new nt(`${i}[1]`,e[1],`string expected, ${n} found`)));for(let o=2;o{t in i&&e.push(new nt(r,i[t],`"${t}" is prohibited for ref layers`))})),n.layers.forEach((e=>{st(e.id)===s&&(t=e)})),t?t.ref?e.push(new nt(r,i.ref,"ref cannot reference another ref layer")):o=st(t.type):e.push(new nt(r,i.ref,`ref layer "${s}" not found`))}else if("background"!==o)if(i.source){const t=n.sources&&n.sources[i.source],a=t&&st(t.type);t?"vector"===a&&"raster"===o?e.push(new nt(r,i.source,`layer "${i.id}" requires a raster source`)):"raster"===a&&"raster"!==o?e.push(new nt(r,i.source,`layer "${i.id}" requires a vector source`)):"vector"!==a||i["source-layer"]?"raster-dem"===a&&"hillshade"!==o?e.push(new nt(r,i.source,"raster-dem source can only be used with layer type 'hillshade'.")):"line"!==o||!i.paint||!i.paint["line-gradient"]||"geojson"===a&&t.lineMetrics||e.push(new nt(r,i,`layer "${i.id}" specifies a line-gradient, which requires a GeoJSON source with \`lineMetrics\` enabled.`)):e.push(new nt(r,i,`layer "${i.id}" must specify a "source-layer"`)):e.push(new nt(r,i.source,`source "${i.source}" not found`))}else e.push(new nt(r,i,'missing required property "source"'));return e=e.concat(Ui({key:r,value:i,valueSpec:a.layer,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{"*":()=>[],type:()=>mr({key:`${r}.type`,value:i.type,valueSpec:a.layer.type,style:t.style,styleSpec:t.styleSpec,object:i,objectKey:"type"}),filter:ir,layout:t=>Ui({layer:i,key:t.key,value:t.value,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{"*":t=>or(ot({layerType:o},t))}}),paint:t=>Ui({layer:i,key:t.key,value:t.value,style:t.style,styleSpec:t.styleSpec,objectElementValidators:{"*":t=>ar(ot({layerType:o},t))}})}})),e}function lr(t){const e=t.value,i=t.key,r=Ti(e);return"string"!==r?[new nt(i,e,`string expected, ${r} found`)]:[]}const cr={promoteId:function({key:t,value:e}){if("string"===Ti(e))return lr({key:t,value:e});{const i=[];for(const r in e)i.push(...lr({key:`${t}.${r}`,value:e[r]}));return i}}};function hr(t){const e=t.value,i=t.key,r=t.styleSpec,n=t.style;if(!e.type)return[new nt(i,e,'"type" is required')];const a=st(e.type);let o;switch(a){case"vector":case"raster":case"raster-dem":return o=Ui({key:i,value:e,valueSpec:r[`source_${a.replace("-","_")}`],style:t.style,styleSpec:r,objectElementValidators:cr}),o;case"geojson":if(o=Ui({key:i,value:e,valueSpec:r.source_geojson,style:n,styleSpec:r,objectElementValidators:cr}),e.cluster)for(const t in e.clusterProperties){const[r,n]=e.clusterProperties[t],a="string"==typeof r?[r,["accumulated"],["get",t]]:r;o.push(...qi({key:`${i}.${t}.map`,value:n,expressionContext:"cluster-map"})),o.push(...qi({key:`${i}.${t}.reduce`,value:a,expressionContext:"cluster-reduce"}))}return o;case"video":return Ui({key:i,value:e,valueSpec:r.source_video,style:n,styleSpec:r});case"image":return Ui({key:i,value:e,valueSpec:r.source_image,style:n,styleSpec:r});case"canvas":return[new nt(i,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return Zi({key:`${i}.type`,value:e.type,valueSpec:{values:["vector","raster","raster-dem","geojson","video","image"]},style:n,styleSpec:r})}}function ur(t){const e=t.value,i=t.styleSpec,r=i.light,n=t.style;let a=[];const o=Ti(e);if(void 0===e)return a;if("object"!==o)return a=a.concat([new nt("light",e,`object expected, ${o} found`)]),a;for(const s in e){const t=s.match(/^(.*)-transition$/);a=a.concat(t&&r[t[1]]&&r[t[1]].transition?mr({key:s,value:e[s],valueSpec:i.transition,style:n,styleSpec:i}):r[s]?mr({key:s,value:e[s],valueSpec:r[s],style:n,styleSpec:i}):[new nt(s,e[s],`unknown property "${s}"`)])}return a}function pr(t){const e=t.value,i=t.styleSpec,r=i.terrain,n=t.style;let a=[];const o=Ti(e);if(void 0===e)return a;if("object"!==o)return a=a.concat([new nt("terrain",e,`object expected, ${o} found`)]),a;for(const s in e)a=a.concat(r[s]?mr({key:s,value:e[s],valueSpec:r[s],style:n,styleSpec:i}):[new nt(s,e[s],`unknown property "${s}"`)]);return a}const dr={"*":()=>[],array:Ni,boolean:function(t){const e=t.value,i=t.key,r=Ti(e);return"boolean"!==r?[new nt(i,e,`boolean expected, ${r} found`)]:[]},number:$i,color:function(t){const e=t.key,i=t.value,r=Ti(i);return"string"!==r?[new nt(e,i,`color expected, ${r} found`)]:null===Ct(i)?[new nt(e,i,`color expected, "${i}" found`)]:[]},constants:at,enum:Zi,filter:ir,function:Gi,layer:sr,object:Ui,source:hr,light:ur,terrain:pr,string:lr,formatted:function(t){return 0===lr(t).length?[]:qi(t)},resolvedImage:function(t){return 0===lr(t).length?[]:qi(t)},padding:function(t){const e=t.key,i=t.value;if("array"===Ti(i)){if(i.length<1||i.length>4)return[new nt(e,i,`padding requires 1 to 4 values; ${i.length} values found`)];const t={type:"number"};let r=[];for(let n=0;n[]}})),t.constants&&(i=i.concat(at({key:"constants",value:t.constants,style:t,styleSpec:e}))),_r(i)}function _r(t){return[].concat(t).sort(((t,e)=>t.line-e.line))}function yr(t){return function(...e){return _r(t.apply(this,e))}}gr.source=yr(hr),gr.light=yr(ur),gr.terrain=yr(pr),gr.layer=yr(sr),gr.filter=yr(ir),gr.paintProperty=yr(ar),gr.layoutProperty=yr(or);const xr=gr,vr=xr.light,br=xr.paintProperty,wr=xr.layoutProperty;function Tr(t,e){let i=!1;if(e&&e.length)for(const r of e)t.fire(new et(new Error(r.message))),i=!0;return i}class Er{constructor(t,e,i){const r=this.cells=[];if(t instanceof ArrayBuffer){this.arrayBuffer=t;const n=new Int32Array(this.arrayBuffer);t=n[0],this.d=(e=n[1])+2*(i=n[2]);for(let t=0;t=c[l+0]&&r>=c[l+1])?(o[u]=!0,a.push(n[u])):o[u]=!1}}}}_forEachCell(t,e,i,r,n,a,o,s){const l=this._convertToCellCoord(t),c=this._convertToCellCoord(e),h=this._convertToCellCoord(i),u=this._convertToCellCoord(r);for(let p=l;p<=h;p++)for(let l=c;l<=u;l++){const c=this.d*l+p;if((!s||s(this._convertFromCellCoord(p),this._convertFromCellCoord(l),this._convertFromCellCoord(p+1),this._convertFromCellCoord(l+1)))&&n.call(this,t,e,i,r,c,a,o,s))return}}_convertFromCellCoord(t){return(t-this.padding)/this.scale}_convertToCellCoord(t){return Math.max(0,Math.min(this.d-1,Math.floor(t*this.scale)+this.padding))}toArrayBuffer(){if(this.arrayBuffer)return this.arrayBuffer;const t=this.cells,e=3+this.cells.length+1+1;let i=0;for(let a=0;a=0)continue;const a=t[i];n[i]=Sr[r].shallow.indexOf(i)>=0?a:Cr(a,e)}t instanceof Error&&(n.message=t.message)}if(n.$name)throw new Error("$name property is reserved for worker serialization logic.");return"Object"!==r&&(n.$name=r),n}throw new Error("can't serialize object of type "+typeof t)}function Ar(t){if(null==t||"boolean"==typeof t||"number"==typeof t||"string"==typeof t||t instanceof Boolean||t instanceof Number||t instanceof String||t instanceof Date||t instanceof RegExp||t instanceof Blob||zr(t)||T(t)||ArrayBuffer.isView(t)||t instanceof ImageData)return t;if(Array.isArray(t))return t.map(Ar);if("object"==typeof t){const e=t.$name||"Object";if(!Sr[e])throw new Error(`can't deserialize unregistered class ${e}`);const{klass:i}=Sr[e];if(!i)throw new Error(`can't deserialize unregistered class ${e}`);if(i.deserialize)return i.deserialize(t);const r=Object.create(i.prototype);for(const n of Object.keys(t)){if("$name"===n)continue;const i=t[n];r[n]=Sr[e].shallow.indexOf(n)>=0?i:Ar(i)}return r}throw new Error("can't deserialize object of type "+typeof t)}class kr{constructor(){this.first=!0}update(t,e){const i=Math.floor(t);return this.first?(this.first=!1,this.lastIntegerZoom=i,this.lastIntegerZoomTime=0,this.lastZoom=t,this.lastFloorZoom=i,!0):(this.lastFloorZoom>i?(this.lastIntegerZoom=i+1,this.lastIntegerZoomTime=e):this.lastFloorZoomt>=128&&t<=255,Arabic:t=>t>=1536&&t<=1791,"Arabic Supplement":t=>t>=1872&&t<=1919,"Arabic Extended-A":t=>t>=2208&&t<=2303,"Hangul Jamo":t=>t>=4352&&t<=4607,"Unified Canadian Aboriginal Syllabics":t=>t>=5120&&t<=5759,Khmer:t=>t>=6016&&t<=6143,"Unified Canadian Aboriginal Syllabics Extended":t=>t>=6320&&t<=6399,"General Punctuation":t=>t>=8192&&t<=8303,"Letterlike Symbols":t=>t>=8448&&t<=8527,"Number Forms":t=>t>=8528&&t<=8591,"Miscellaneous Technical":t=>t>=8960&&t<=9215,"Control Pictures":t=>t>=9216&&t<=9279,"Optical Character Recognition":t=>t>=9280&&t<=9311,"Enclosed Alphanumerics":t=>t>=9312&&t<=9471,"Geometric Shapes":t=>t>=9632&&t<=9727,"Miscellaneous Symbols":t=>t>=9728&&t<=9983,"Miscellaneous Symbols and Arrows":t=>t>=11008&&t<=11263,"CJK Radicals Supplement":t=>t>=11904&&t<=12031,"Kangxi Radicals":t=>t>=12032&&t<=12255,"Ideographic Description Characters":t=>t>=12272&&t<=12287,"CJK Symbols and Punctuation":t=>t>=12288&&t<=12351,Hiragana:t=>t>=12352&&t<=12447,Katakana:t=>t>=12448&&t<=12543,Bopomofo:t=>t>=12544&&t<=12591,"Hangul Compatibility Jamo":t=>t>=12592&&t<=12687,Kanbun:t=>t>=12688&&t<=12703,"Bopomofo Extended":t=>t>=12704&&t<=12735,"CJK Strokes":t=>t>=12736&&t<=12783,"Katakana Phonetic Extensions":t=>t>=12784&&t<=12799,"Enclosed CJK Letters and Months":t=>t>=12800&&t<=13055,"CJK Compatibility":t=>t>=13056&&t<=13311,"CJK Unified Ideographs Extension A":t=>t>=13312&&t<=19903,"Yijing Hexagram Symbols":t=>t>=19904&&t<=19967,"CJK Unified Ideographs":t=>t>=19968&&t<=40959,"Yi Syllables":t=>t>=40960&&t<=42127,"Yi Radicals":t=>t>=42128&&t<=42191,"Hangul Jamo Extended-A":t=>t>=43360&&t<=43391,"Hangul Syllables":t=>t>=44032&&t<=55215,"Hangul Jamo Extended-B":t=>t>=55216&&t<=55295,"Private Use Area":t=>t>=57344&&t<=63743,"CJK Compatibility Ideographs":t=>t>=63744&&t<=64255,"Arabic Presentation Forms-A":t=>t>=64336&&t<=65023,"Vertical Forms":t=>t>=65040&&t<=65055,"CJK Compatibility Forms":t=>t>=65072&&t<=65103,"Small Form Variants":t=>t>=65104&&t<=65135,"Arabic Presentation Forms-B":t=>t>=65136&&t<=65279,"Halfwidth and Fullwidth Forms":t=>t>=65280&&t<=65519};function Pr(t){for(const e of t)if(Br(e.charCodeAt(0)))return!0;return!1}function Dr(t){for(const e of t)if(!Lr(e.charCodeAt(0)))return!1;return!0}function Lr(t){return!(Mr.Arabic(t)||Mr["Arabic Supplement"](t)||Mr["Arabic Extended-A"](t)||Mr["Arabic Presentation Forms-A"](t)||Mr["Arabic Presentation Forms-B"](t))}function Br(t){return!(746!==t&&747!==t&&(t<4352||!(Mr["Bopomofo Extended"](t)||Mr.Bopomofo(t)||Mr["CJK Compatibility Forms"](t)&&!(t>=65097&&t<=65103)||Mr["CJK Compatibility Ideographs"](t)||Mr["CJK Compatibility"](t)||Mr["CJK Radicals Supplement"](t)||Mr["CJK Strokes"](t)||!(!Mr["CJK Symbols and Punctuation"](t)||t>=12296&&t<=12305||t>=12308&&t<=12319||12336===t)||Mr["CJK Unified Ideographs Extension A"](t)||Mr["CJK Unified Ideographs"](t)||Mr["Enclosed CJK Letters and Months"](t)||Mr["Hangul Compatibility Jamo"](t)||Mr["Hangul Jamo Extended-A"](t)||Mr["Hangul Jamo Extended-B"](t)||Mr["Hangul Jamo"](t)||Mr["Hangul Syllables"](t)||Mr.Hiragana(t)||Mr["Ideographic Description Characters"](t)||Mr.Kanbun(t)||Mr["Kangxi Radicals"](t)||Mr["Katakana Phonetic Extensions"](t)||Mr.Katakana(t)&&12540!==t||!(!Mr["Halfwidth and Fullwidth Forms"](t)||65288===t||65289===t||65293===t||t>=65306&&t<=65310||65339===t||65341===t||65343===t||t>=65371&&t<=65503||65507===t||t>=65512&&t<=65519)||!(!Mr["Small Form Variants"](t)||t>=65112&&t<=65118||t>=65123&&t<=65126)||Mr["Unified Canadian Aboriginal Syllabics"](t)||Mr["Unified Canadian Aboriginal Syllabics Extended"](t)||Mr["Vertical Forms"](t)||Mr["Yijing Hexagram Symbols"](t)||Mr["Yi Syllables"](t)||Mr["Yi Radicals"](t))))}function Rr(t){return!(Br(t)||function(t){return!!(Mr["Latin-1 Supplement"](t)&&(167===t||169===t||174===t||177===t||188===t||189===t||190===t||215===t||247===t)||Mr["General Punctuation"](t)&&(8214===t||8224===t||8225===t||8240===t||8241===t||8251===t||8252===t||8258===t||8263===t||8264===t||8265===t||8273===t)||Mr["Letterlike Symbols"](t)||Mr["Number Forms"](t)||Mr["Miscellaneous Technical"](t)&&(t>=8960&&t<=8967||t>=8972&&t<=8991||t>=8996&&t<=9e3||9003===t||t>=9085&&t<=9114||t>=9150&&t<=9165||9167===t||t>=9169&&t<=9179||t>=9186&&t<=9215)||Mr["Control Pictures"](t)&&9251!==t||Mr["Optical Character Recognition"](t)||Mr["Enclosed Alphanumerics"](t)||Mr["Geometric Shapes"](t)||Mr["Miscellaneous Symbols"](t)&&!(t>=9754&&t<=9759)||Mr["Miscellaneous Symbols and Arrows"](t)&&(t>=11026&&t<=11055||t>=11088&&t<=11097||t>=11192&&t<=11243)||Mr["CJK Symbols and Punctuation"](t)||Mr.Katakana(t)||Mr["Private Use Area"](t)||Mr["CJK Compatibility Forms"](t)||Mr["Small Form Variants"](t)||Mr["Halfwidth and Fullwidth Forms"](t)||8734===t||8756===t||8757===t||t>=9984&&t<=10087||t>=10102&&t<=10131||65532===t||65533===t)}(t))}function Fr(t){return t>=1424&&t<=2303||Mr["Arabic Presentation Forms-A"](t)||Mr["Arabic Presentation Forms-B"](t)}function Or(t,e){return!(!e&&Fr(t)||t>=2304&&t<=3583||t>=3840&&t<=4255||Mr.Khmer(t))}function Vr(t){for(const e of t)if(Fr(e.charCodeAt(0)))return!0;return!1}const Ur="deferred",Nr="loading",$r="loaded";let Gr=null,qr="unavailable",Zr=null;const jr=function(t){t&&"string"==typeof t&&t.indexOf("NetworkError")>-1&&(qr="error"),Gr&&Gr(t)};function Xr(){Hr.fire(new tt("pluginStateChange",{pluginStatus:qr,pluginURL:Zr}))}const Hr=new it,Wr=function(){return qr},Kr=function(){if(qr!==Ur||!Zr)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");qr=Nr,Xr(),Zr&&j({url:Zr},(t=>{t?jr(t):(qr=$r,Xr())}))},Jr={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:()=>qr===$r||null!=Jr.applyArabicShaping,isLoading:()=>qr===Nr,setState(t){if(!_())throw new Error("Cannot set the state of the rtl-text-plugin when not in the web-worker context");qr=t.pluginStatus,Zr=t.pluginURL},isParsed(){if(!_())throw new Error("rtl-text-plugin is only parsed on the worker-threads");return null!=Jr.applyArabicShaping&&null!=Jr.processBidirectionalText&&null!=Jr.processStyledBidirectionalText},getPluginURL(){if(!_())throw new Error("rtl-text-plugin url can only be queried from the worker threads");return Zr}};class Yr{constructor(t,e){this.zoom=t,e?(this.now=e.now,this.fadeDuration=e.fadeDuration,this.zoomHistory=e.zoomHistory,this.transition=e.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new kr,this.transition={})}isSupportedScript(t){return function(t,e){for(const i of t)if(!Or(i.charCodeAt(0),e))return!1;return!0}(t,Jr.isLoaded())}crossFadingFactor(){return 0===this.fadeDuration?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)}getCrossfadeParameters(){const t=this.zoom,e=t-Math.floor(t),i=this.crossFadingFactor();return t>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:e+(1-e)*i}:{fromScale:.5,toScale:1,t:1-(1-i)*e}}}class Qr{constructor(t,e){this.property=t,this.value=e,this.expression=function(t,e){if(Ei(t))return new Oi(t,e);if(Di(t)){const i=Fi(t,e);if("error"===i.result)throw new Error(i.value.map((t=>`${t.key}: ${t.message}`)).join(", "));return i.value}{let i=t;return"color"===e.type&&"string"==typeof t?i=Lt.parse(t):"padding"!==e.type||"number"!=typeof t&&!Array.isArray(t)||(i=Ot.parse(t)),{kind:"constant",evaluate:()=>i}}}(void 0===e?t.specification.default:e,t.specification)}isDataDriven(){return"source"===this.expression.kind||"composite"===this.expression.kind}possiblyEvaluate(t,e,i){return this.property.possiblyEvaluate(this,t,e,i)}}class tn{constructor(t){this.property=t,this.value=new Qr(t,void 0)}transitioned(t,e){return new rn(this.property,this.value,e,s({},t.transition,this.transition),t.now)}untransitioned(){return new rn(this.property,this.value,null,{},0)}}class en{constructor(t){this._properties=t,this._values=Object.create(t.defaultTransitionablePropertyValues)}getValue(t){return p(this._values[t].value.value)}setValue(t,e){Object.prototype.hasOwnProperty.call(this._values,t)||(this._values[t]=new tn(this._values[t].property)),this._values[t].value=new Qr(this._values[t].property,null===e?void 0:p(e))}getTransition(t){return p(this._values[t].transition)}setTransition(t,e){Object.prototype.hasOwnProperty.call(this._values,t)||(this._values[t]=new tn(this._values[t].property)),this._values[t].transition=p(e)||void 0}serialize(){const t={};for(const e of Object.keys(this._values)){const i=this.getValue(e);void 0!==i&&(t[e]=i);const r=this.getTransition(e);void 0!==r&&(t[`${e}-transition`]=r)}return t}transitioned(t,e){const i=new nn(this._properties);for(const r of Object.keys(this._values))i._values[r]=this._values[r].transitioned(t,e._values[r]);return i}untransitioned(){const t=new nn(this._properties);for(const e of Object.keys(this._values))t._values[e]=this._values[e].untransitioned();return t}}class rn{constructor(t,e,i,r,n){this.property=t,this.value=e,this.begin=n+r.delay||0,this.end=this.begin+r.duration||0,t.specification.transition&&(r.delay||r.duration)&&(this.prior=i)}possiblyEvaluate(t,e,i){const r=t.now||0,n=this.value.possiblyEvaluate(t,e,i),a=this.prior;if(a){if(r>this.end)return this.prior=null,n;if(this.value.isDataDriven())return this.prior=null,n;if(r=1)return 1;const e=t*t,i=e*t;return 4*(t<.5?i:3*(t-e)+i-.75)}(o))}}return n}}class nn{constructor(t){this._properties=t,this._values=Object.create(t.defaultTransitioningPropertyValues)}possiblyEvaluate(t,e,i){const r=new sn(this._properties);for(const n of Object.keys(this._values))r._values[n]=this._values[n].possiblyEvaluate(t,e,i);return r}hasTransition(){for(const t of Object.keys(this._values))if(this._values[t].prior)return!0;return!1}}class an{constructor(t){this._properties=t,this._values=Object.create(t.defaultPropertyValues)}getValue(t){return p(this._values[t].value)}setValue(t,e){this._values[t]=new Qr(this._values[t].property,null===e?void 0:p(e))}serialize(){const t={};for(const e of Object.keys(this._values)){const i=this.getValue(e);void 0!==i&&(t[e]=i)}return t}possiblyEvaluate(t,e,i){const r=new sn(this._properties);for(const n of Object.keys(this._values))r._values[n]=this._values[n].possiblyEvaluate(t,e,i);return r}}class on{constructor(t,e,i){this.property=t,this.value=e,this.parameters=i}isConstant(){return"constant"===this.value.kind}constantOr(t){return"constant"===this.value.kind?this.value.value:t}evaluate(t,e,i,r){return this.property.evaluate(this.value,this.parameters,t,e,i,r)}}class sn{constructor(t){this._properties=t,this._values=Object.create(t.defaultPossiblyEvaluatedValues)}get(t){return this._values[t]}}class ln{constructor(t){this.specification=t}possiblyEvaluate(t,e){if(t.isDataDriven())throw new Error("Value should not be data driven");return t.expression.evaluate(e)}interpolate(t,e,i){const r=Ie[this.specification.type];return r?r(t,e,i):t}}class cn{constructor(t,e){this.specification=t,this.overrides=e}possiblyEvaluate(t,e,i,r){return new on(this,"constant"===t.expression.kind||"camera"===t.expression.kind?{kind:"constant",value:t.expression.evaluate(e,null,{},i,r)}:t.expression,e)}interpolate(t,e,i){if("constant"!==t.value.kind||"constant"!==e.value.kind)return t;if(void 0===t.value.value||void 0===e.value.value)return new on(this,{kind:"constant",value:void 0},t.parameters);const r=Ie[this.specification.type];return r?new on(this,{kind:"constant",value:r(t.value.value,e.value.value,i)},t.parameters):t}evaluate(t,e,i,r,n,a){return"constant"===t.kind?t.value:t.evaluate(e,i,r,n,a)}}class hn extends cn{possiblyEvaluate(t,e,i,r){if(void 0===t.value)return new on(this,{kind:"constant",value:void 0},e);if("constant"===t.expression.kind){const n=t.expression.evaluate(e,null,{},i,r),a="resolvedImage"===t.property.specification.type&&"string"!=typeof n?n.name:n,o=this._calculate(a,a,a,e);return new on(this,{kind:"constant",value:o},e)}if("camera"===t.expression.kind){const i=this._calculate(t.expression.evaluate({zoom:e.zoom-1}),t.expression.evaluate({zoom:e.zoom}),t.expression.evaluate({zoom:e.zoom+1}),e);return new on(this,{kind:"constant",value:i},e)}return new on(this,t.expression,e)}evaluate(t,e,i,r,n,a){if("source"===t.kind){const o=t.evaluate(e,i,r,n,a);return this._calculate(o,o,o,e)}return"composite"===t.kind?this._calculate(t.evaluate({zoom:Math.floor(e.zoom)-1},i,r),t.evaluate({zoom:Math.floor(e.zoom)},i,r),t.evaluate({zoom:Math.floor(e.zoom)+1},i,r),e):t.value}_calculate(t,e,i,r){return r.zoom>r.zoomHistory.lastIntegerZoom?{from:t,to:e}:{from:i,to:e}}interpolate(t){return t}}class un{constructor(t){this.specification=t}possiblyEvaluate(t,e,i,r){if(void 0!==t.value){if("constant"===t.expression.kind){const n=t.expression.evaluate(e,null,{},i,r);return this._calculate(n,n,n,e)}return this._calculate(t.expression.evaluate(new Yr(Math.floor(e.zoom-1),e)),t.expression.evaluate(new Yr(Math.floor(e.zoom),e)),t.expression.evaluate(new Yr(Math.floor(e.zoom+1),e)),e)}}_calculate(t,e,i,r){return r.zoom>r.zoomHistory.lastIntegerZoom?{from:t,to:e}:{from:i,to:e}}interpolate(t){return t}}class pn{constructor(t){this.specification=t}possiblyEvaluate(t,e,i,r){return!!t.expression.evaluate(e,null,{},i,r)}interpolate(){return!1}}class dn{constructor(t){this.properties=t,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(const e in t){const i=t[e];i.specification.overridable&&this.overridableProperties.push(e);const r=this.defaultPropertyValues[e]=new Qr(i,void 0),n=this.defaultTransitionablePropertyValues[e]=new tn(i);this.defaultTransitioningPropertyValues[e]=n.untransitioned(),this.defaultPossiblyEvaluatedValues[e]=r.possiblyEvaluate({})}}}Ir("DataDrivenProperty",cn),Ir("DataConstantProperty",ln),Ir("CrossFadedDataDrivenProperty",hn),Ir("CrossFadedProperty",un),Ir("ColorRampProperty",pn);const mn="-transition";class fn extends it{constructor(t,e){if(super(),this.id=t.id,this.type=t.type,this._featureFilter={filter:()=>!0,needGeometry:!1},"custom"!==t.type&&(this.metadata=t.metadata,this.minzoom=t.minzoom,this.maxzoom=t.maxzoom,"background"!==t.type&&(this.source=t.source,this.sourceLayer=t["source-layer"],this.filter=t.filter),e.layout&&(this._unevaluatedLayout=new an(e.layout)),e.paint)){this._transitionablePaint=new en(e.paint);for(const e in t.paint)this.setPaintProperty(e,t.paint[e],{validate:!1});for(const e in t.layout)this.setLayoutProperty(e,t.layout[e],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new sn(e.paint)}}getCrossfadeParameters(){return this._crossfadeParameters}getLayoutProperty(t){return"visibility"===t?this.visibility:this._unevaluatedLayout.getValue(t)}setLayoutProperty(t,e,i={}){null!=e&&this._validate(wr,`layers.${this.id}.layout.${t}`,t,e,i)||("visibility"!==t?this._unevaluatedLayout.setValue(t,e):this.visibility=e)}getPaintProperty(t){return t.endsWith(mn)?this._transitionablePaint.getTransition(t.slice(0,-mn.length)):this._transitionablePaint.getValue(t)}setPaintProperty(t,e,i={}){if(null!=e&&this._validate(br,`layers.${this.id}.paint.${t}`,t,e,i))return!1;if(t.endsWith(mn))return this._transitionablePaint.setTransition(t.slice(0,-mn.length),e||void 0),!1;{const i=this._transitionablePaint._values[t],r="cross-faded-data-driven"===i.property.specification["property-type"],n=i.value.isDataDriven(),a=i.value;this._transitionablePaint.setValue(t,e),this._handleSpecialPaintPropertyUpdate(t);const o=this._transitionablePaint._values[t].value;return o.isDataDriven()||n||r||this._handleOverridablePaintPropertyUpdate(t,a,o)}}_handleSpecialPaintPropertyUpdate(t){}_handleOverridablePaintPropertyUpdate(t,e,i){return!1}isHidden(t){return!!(this.minzoom&&t=this.maxzoom)||"none"===this.visibility}updateTransitions(t){this._transitioningPaint=this._transitionablePaint.transitioned(t,this._transitioningPaint)}hasTransition(){return this._transitioningPaint.hasTransition()}recalculate(t,e){t.getCrossfadeParameters&&(this._crossfadeParameters=t.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(t,void 0,e)),this.paint=this._transitioningPaint.possiblyEvaluate(t,void 0,e)}serialize(){const t={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(t.layout=t.layout||{},t.layout.visibility=this.visibility),u(t,((t,e)=>!(void 0===t||"layout"===e&&!Object.keys(t).length||"paint"===e&&!Object.keys(t).length)))}_validate(t,e,i,r,n={}){return(!n||!1!==n.validate)&&Tr(this,t.call(xr,{key:e,layerType:this.type,objectKey:i,value:r,styleSpec:rt,style:{glyphs:!0,sprite:!0}}))}is3D(){return!1}isTileClipped(){return!1}hasOffscreenPass(){return!1}resize(){}isStateDependent(){for(const t in this.paint._values){const e=this.paint.get(t);if(e instanceof on&&vi(e.property.specification)&&("source"===e.value.kind||"composite"===e.value.kind)&&e.value.isStateDependent)return!0}return!1}}const gn={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array};class _n{constructor(t,e){this._structArray=t,this._pos1=e*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8}}class yn{constructor(){this.isTransferred=!1,this.capacity=-1,this.resize(0)}static serialize(t,e){return t._trim(),e&&(t.isTransferred=!0,e.push(t.arrayBuffer)),{length:t.length,arrayBuffer:t.arrayBuffer}}static deserialize(t){const e=Object.create(this.prototype);return e.arrayBuffer=t.arrayBuffer,e.length=t.length,e.capacity=t.arrayBuffer.byteLength/e.bytesPerElement,e._refreshViews(),e}_trim(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())}clear(){this.length=0}resize(t){this.reserve(t),this.length=t}reserve(t){if(t>this.capacity){this.capacity=Math.max(t,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);const e=this.uint8;this._refreshViews(),e&&this.uint8.set(e)}}_refreshViews(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")}}function xn(t,e=1){let i=0,r=0;return{members:t.map((t=>{const n=gn[t.type].BYTES_PER_ELEMENT,a=i=vn(i,Math.max(e,n)),o=t.components||1;return r=Math.max(r,n),i+=n*o,{name:t.name,type:t.type,components:o,offset:a}})),size:vn(i,Math.max(r,e)),alignment:e}}function vn(t,e){return Math.ceil(t/e)*e}class bn extends yn{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(t,e){const i=this.length;return this.resize(i+1),this.emplace(i,t,e)}emplace(t,e,i){const r=2*t;return this.int16[r+0]=e,this.int16[r+1]=i,t}}bn.prototype.bytesPerElement=4,Ir("StructArrayLayout2i4",bn);class wn extends yn{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(t,e,i,r){const n=this.length;return this.resize(n+1),this.emplace(n,t,e,i,r)}emplace(t,e,i,r,n){const a=4*t;return this.int16[a+0]=e,this.int16[a+1]=i,this.int16[a+2]=r,this.int16[a+3]=n,t}}wn.prototype.bytesPerElement=8,Ir("StructArrayLayout4i8",wn);class Tn extends yn{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(t,e,i,r,n,a){const o=this.length;return this.resize(o+1),this.emplace(o,t,e,i,r,n,a)}emplace(t,e,i,r,n,a,o){const s=6*t;return this.int16[s+0]=e,this.int16[s+1]=i,this.int16[s+2]=r,this.int16[s+3]=n,this.int16[s+4]=a,this.int16[s+5]=o,t}}Tn.prototype.bytesPerElement=12,Ir("StructArrayLayout2i4i12",Tn);class En extends yn{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(t,e,i,r,n,a){const o=this.length;return this.resize(o+1),this.emplace(o,t,e,i,r,n,a)}emplace(t,e,i,r,n,a,o){const s=4*t,l=8*t;return this.int16[s+0]=e,this.int16[s+1]=i,this.uint8[l+4]=r,this.uint8[l+5]=n,this.uint8[l+6]=a,this.uint8[l+7]=o,t}}En.prototype.bytesPerElement=8,Ir("StructArrayLayout2i4ub8",En);class Sn extends yn{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(t,e){const i=this.length;return this.resize(i+1),this.emplace(i,t,e)}emplace(t,e,i){const r=2*t;return this.float32[r+0]=e,this.float32[r+1]=i,t}}Sn.prototype.bytesPerElement=8,Ir("StructArrayLayout2f8",Sn);class In extends yn{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(t,e,i,r,n,a,o,s,l,c){const h=this.length;return this.resize(h+1),this.emplace(h,t,e,i,r,n,a,o,s,l,c)}emplace(t,e,i,r,n,a,o,s,l,c,h){const u=10*t;return this.uint16[u+0]=e,this.uint16[u+1]=i,this.uint16[u+2]=r,this.uint16[u+3]=n,this.uint16[u+4]=a,this.uint16[u+5]=o,this.uint16[u+6]=s,this.uint16[u+7]=l,this.uint16[u+8]=c,this.uint16[u+9]=h,t}}In.prototype.bytesPerElement=20,Ir("StructArrayLayout10ui20",In);class zn extends yn{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(t,e,i,r,n,a,o,s,l,c,h,u){const p=this.length;return this.resize(p+1),this.emplace(p,t,e,i,r,n,a,o,s,l,c,h,u)}emplace(t,e,i,r,n,a,o,s,l,c,h,u,p){const d=12*t;return this.int16[d+0]=e,this.int16[d+1]=i,this.int16[d+2]=r,this.int16[d+3]=n,this.uint16[d+4]=a,this.uint16[d+5]=o,this.uint16[d+6]=s,this.uint16[d+7]=l,this.int16[d+8]=c,this.int16[d+9]=h,this.int16[d+10]=u,this.int16[d+11]=p,t}}zn.prototype.bytesPerElement=24,Ir("StructArrayLayout4i4ui4i24",zn);class Cn extends yn{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(t,e,i){const r=this.length;return this.resize(r+1),this.emplace(r,t,e,i)}emplace(t,e,i,r){const n=3*t;return this.float32[n+0]=e,this.float32[n+1]=i,this.float32[n+2]=r,t}}Cn.prototype.bytesPerElement=12,Ir("StructArrayLayout3f12",Cn);class An extends yn{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)}emplaceBack(t){const e=this.length;return this.resize(e+1),this.emplace(e,t)}emplace(t,e){return this.uint32[1*t+0]=e,t}}An.prototype.bytesPerElement=4,Ir("StructArrayLayout1ul4",An);class kn extends yn{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(t,e,i,r,n,a,o,s,l){const c=this.length;return this.resize(c+1),this.emplace(c,t,e,i,r,n,a,o,s,l)}emplace(t,e,i,r,n,a,o,s,l,c){const h=10*t,u=5*t;return this.int16[h+0]=e,this.int16[h+1]=i,this.int16[h+2]=r,this.int16[h+3]=n,this.int16[h+4]=a,this.int16[h+5]=o,this.uint32[u+3]=s,this.uint16[h+8]=l,this.uint16[h+9]=c,t}}kn.prototype.bytesPerElement=20,Ir("StructArrayLayout6i1ul2ui20",kn);class Mn extends yn{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(t,e,i,r,n,a){const o=this.length;return this.resize(o+1),this.emplace(o,t,e,i,r,n,a)}emplace(t,e,i,r,n,a,o){const s=6*t;return this.int16[s+0]=e,this.int16[s+1]=i,this.int16[s+2]=r,this.int16[s+3]=n,this.int16[s+4]=a,this.int16[s+5]=o,t}}Mn.prototype.bytesPerElement=12,Ir("StructArrayLayout2i2i2i12",Mn);class Pn extends yn{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(t,e,i,r,n){const a=this.length;return this.resize(a+1),this.emplace(a,t,e,i,r,n)}emplace(t,e,i,r,n,a){const o=4*t,s=8*t;return this.float32[o+0]=e,this.float32[o+1]=i,this.float32[o+2]=r,this.int16[s+6]=n,this.int16[s+7]=a,t}}Pn.prototype.bytesPerElement=16,Ir("StructArrayLayout2f1f2i16",Pn);class Dn extends yn{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(t,e,i,r){const n=this.length;return this.resize(n+1),this.emplace(n,t,e,i,r)}emplace(t,e,i,r,n){const a=12*t,o=3*t;return this.uint8[a+0]=e,this.uint8[a+1]=i,this.float32[o+1]=r,this.float32[o+2]=n,t}}Dn.prototype.bytesPerElement=12,Ir("StructArrayLayout2ub2f12",Dn);class Ln extends yn{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(t,e,i){const r=this.length;return this.resize(r+1),this.emplace(r,t,e,i)}emplace(t,e,i,r){const n=3*t;return this.uint16[n+0]=e,this.uint16[n+1]=i,this.uint16[n+2]=r,t}}Ln.prototype.bytesPerElement=6,Ir("StructArrayLayout3ui6",Ln);class Bn extends yn{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(t,e,i,r,n,a,o,s,l,c,h,u,p,d,m,f,g){const _=this.length;return this.resize(_+1),this.emplace(_,t,e,i,r,n,a,o,s,l,c,h,u,p,d,m,f,g)}emplace(t,e,i,r,n,a,o,s,l,c,h,u,p,d,m,f,g,_){const y=24*t,x=12*t,v=48*t;return this.int16[y+0]=e,this.int16[y+1]=i,this.uint16[y+2]=r,this.uint16[y+3]=n,this.uint32[x+2]=a,this.uint32[x+3]=o,this.uint32[x+4]=s,this.uint16[y+10]=l,this.uint16[y+11]=c,this.uint16[y+12]=h,this.float32[x+7]=u,this.float32[x+8]=p,this.uint8[v+36]=d,this.uint8[v+37]=m,this.uint8[v+38]=f,this.uint32[x+10]=g,this.int16[y+22]=_,t}}Bn.prototype.bytesPerElement=48,Ir("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",Bn);class Rn extends yn{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(t,e,i,r,n,a,o,s,l,c,h,u,p,d,m,f,g,_,y,x,v,b,w,T,E,S,I,z){const C=this.length;return this.resize(C+1),this.emplace(C,t,e,i,r,n,a,o,s,l,c,h,u,p,d,m,f,g,_,y,x,v,b,w,T,E,S,I,z)}emplace(t,e,i,r,n,a,o,s,l,c,h,u,p,d,m,f,g,_,y,x,v,b,w,T,E,S,I,z,C){const A=34*t,k=17*t;return this.int16[A+0]=e,this.int16[A+1]=i,this.int16[A+2]=r,this.int16[A+3]=n,this.int16[A+4]=a,this.int16[A+5]=o,this.int16[A+6]=s,this.int16[A+7]=l,this.uint16[A+8]=c,this.uint16[A+9]=h,this.uint16[A+10]=u,this.uint16[A+11]=p,this.uint16[A+12]=d,this.uint16[A+13]=m,this.uint16[A+14]=f,this.uint16[A+15]=g,this.uint16[A+16]=_,this.uint16[A+17]=y,this.uint16[A+18]=x,this.uint16[A+19]=v,this.uint16[A+20]=b,this.uint16[A+21]=w,this.uint16[A+22]=T,this.uint32[k+12]=E,this.float32[k+13]=S,this.float32[k+14]=I,this.float32[k+15]=z,this.float32[k+16]=C,t}}Rn.prototype.bytesPerElement=68,Ir("StructArrayLayout8i15ui1ul4f68",Rn);class Fn extends yn{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(t){const e=this.length;return this.resize(e+1),this.emplace(e,t)}emplace(t,e){return this.float32[1*t+0]=e,t}}Fn.prototype.bytesPerElement=4,Ir("StructArrayLayout1f4",Fn);class On extends yn{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(t,e,i){const r=this.length;return this.resize(r+1),this.emplace(r,t,e,i)}emplace(t,e,i,r){const n=3*t;return this.int16[n+0]=e,this.int16[n+1]=i,this.int16[n+2]=r,t}}On.prototype.bytesPerElement=6,Ir("StructArrayLayout3i6",On);class Vn extends yn{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(t,e,i){const r=this.length;return this.resize(r+1),this.emplace(r,t,e,i)}emplace(t,e,i,r){const n=4*t;return this.uint32[2*t+0]=e,this.uint16[n+2]=i,this.uint16[n+3]=r,t}}Vn.prototype.bytesPerElement=8,Ir("StructArrayLayout1ul2ui8",Vn);class Un extends yn{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(t,e){const i=this.length;return this.resize(i+1),this.emplace(i,t,e)}emplace(t,e,i){const r=2*t;return this.uint16[r+0]=e,this.uint16[r+1]=i,t}}Un.prototype.bytesPerElement=4,Ir("StructArrayLayout2ui4",Un);class Nn extends yn{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(t){const e=this.length;return this.resize(e+1),this.emplace(e,t)}emplace(t,e){return this.uint16[1*t+0]=e,t}}Nn.prototype.bytesPerElement=2,Ir("StructArrayLayout1ui2",Nn);class $n extends yn{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(t,e,i,r){const n=this.length;return this.resize(n+1),this.emplace(n,t,e,i,r)}emplace(t,e,i,r,n){const a=4*t;return this.float32[a+0]=e,this.float32[a+1]=i,this.float32[a+2]=r,this.float32[a+3]=n,t}}$n.prototype.bytesPerElement=16,Ir("StructArrayLayout4f16",$n);class Gn extends _n{get anchorPointX(){return this._structArray.int16[this._pos2+0]}get anchorPointY(){return this._structArray.int16[this._pos2+1]}get x1(){return this._structArray.int16[this._pos2+2]}get y1(){return this._structArray.int16[this._pos2+3]}get x2(){return this._structArray.int16[this._pos2+4]}get y2(){return this._structArray.int16[this._pos2+5]}get featureIndex(){return this._structArray.uint32[this._pos4+3]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+8]}get bucketIndex(){return this._structArray.uint16[this._pos2+9]}get anchorPoint(){return new S(this.anchorPointX,this.anchorPointY)}}Gn.prototype.size=20;class qn extends kn{get(t){return new Gn(this,t)}}Ir("CollisionBoxArray",qn);class Zn extends _n{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get glyphStartIndex(){return this._structArray.uint16[this._pos2+2]}get numGlyphs(){return this._structArray.uint16[this._pos2+3]}get vertexStartIndex(){return this._structArray.uint32[this._pos4+2]}get lineStartIndex(){return this._structArray.uint32[this._pos4+3]}get lineLength(){return this._structArray.uint32[this._pos4+4]}get segment(){return this._structArray.uint16[this._pos2+10]}get lowerSize(){return this._structArray.uint16[this._pos2+11]}get upperSize(){return this._structArray.uint16[this._pos2+12]}get lineOffsetX(){return this._structArray.float32[this._pos4+7]}get lineOffsetY(){return this._structArray.float32[this._pos4+8]}get writingMode(){return this._structArray.uint8[this._pos1+36]}get placedOrientation(){return this._structArray.uint8[this._pos1+37]}set placedOrientation(t){this._structArray.uint8[this._pos1+37]=t}get hidden(){return this._structArray.uint8[this._pos1+38]}set hidden(t){this._structArray.uint8[this._pos1+38]=t}get crossTileID(){return this._structArray.uint32[this._pos4+10]}set crossTileID(t){this._structArray.uint32[this._pos4+10]=t}get associatedIconIndex(){return this._structArray.int16[this._pos2+22]}}Zn.prototype.size=48;class jn extends Bn{get(t){return new Zn(this,t)}}Ir("PlacedSymbolArray",jn);class Xn extends _n{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get rightJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+2]}get centerJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+3]}get leftJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+4]}get verticalPlacedTextSymbolIndex(){return this._structArray.int16[this._pos2+5]}get placedIconSymbolIndex(){return this._structArray.int16[this._pos2+6]}get verticalPlacedIconSymbolIndex(){return this._structArray.int16[this._pos2+7]}get key(){return this._structArray.uint16[this._pos2+8]}get textBoxStartIndex(){return this._structArray.uint16[this._pos2+9]}get textBoxEndIndex(){return this._structArray.uint16[this._pos2+10]}get verticalTextBoxStartIndex(){return this._structArray.uint16[this._pos2+11]}get verticalTextBoxEndIndex(){return this._structArray.uint16[this._pos2+12]}get iconBoxStartIndex(){return this._structArray.uint16[this._pos2+13]}get iconBoxEndIndex(){return this._structArray.uint16[this._pos2+14]}get verticalIconBoxStartIndex(){return this._structArray.uint16[this._pos2+15]}get verticalIconBoxEndIndex(){return this._structArray.uint16[this._pos2+16]}get featureIndex(){return this._structArray.uint16[this._pos2+17]}get numHorizontalGlyphVertices(){return this._structArray.uint16[this._pos2+18]}get numVerticalGlyphVertices(){return this._structArray.uint16[this._pos2+19]}get numIconVertices(){return this._structArray.uint16[this._pos2+20]}get numVerticalIconVertices(){return this._structArray.uint16[this._pos2+21]}get useRuntimeCollisionCircles(){return this._structArray.uint16[this._pos2+22]}get crossTileID(){return this._structArray.uint32[this._pos4+12]}set crossTileID(t){this._structArray.uint32[this._pos4+12]=t}get textBoxScale(){return this._structArray.float32[this._pos4+13]}get textOffset0(){return this._structArray.float32[this._pos4+14]}get textOffset1(){return this._structArray.float32[this._pos4+15]}get collisionCircleDiameter(){return this._structArray.float32[this._pos4+16]}}Xn.prototype.size=68;class Hn extends Rn{get(t){return new Xn(this,t)}}Ir("SymbolInstanceArray",Hn);class Wn extends Fn{getoffsetX(t){return this.float32[1*t+0]}}Ir("GlyphOffsetArray",Wn);class Kn extends On{getx(t){return this.int16[3*t+0]}gety(t){return this.int16[3*t+1]}gettileUnitDistanceFromAnchor(t){return this.int16[3*t+2]}}Ir("SymbolLineVertexArray",Kn);class Jn extends _n{get featureIndex(){return this._structArray.uint32[this._pos4+0]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+2]}get bucketIndex(){return this._structArray.uint16[this._pos2+3]}}Jn.prototype.size=8;class Yn extends Vn{get(t){return new Jn(this,t)}}Ir("FeatureIndexArray",Yn);class Qn extends bn{}class ta extends bn{}class ea extends bn{}class ia extends Tn{}class ra extends En{}class na extends Sn{}class aa extends In{}class oa extends zn{}class sa extends Cn{}class la extends An{}class ca extends Mn{}class ha extends Dn{}class ua extends Ln{}class pa extends Un{}const da=xn([{name:"a_pos",components:2,type:"Int16"}],4),{members:ma}=da;class fa{constructor(t=[]){this.segments=t}prepareSegment(t,e,i,r){let n=this.segments[this.segments.length-1];return t>fa.MAX_VERTEX_ARRAY_LENGTH&&m(`Max vertices per segment is ${fa.MAX_VERTEX_ARRAY_LENGTH}: bucket requested ${t}`),(!n||n.vertexLength+t>fa.MAX_VERTEX_ARRAY_LENGTH||n.sortKey!==r)&&(n={vertexOffset:e.length,primitiveOffset:i.length,vertexLength:0,primitiveLength:0},void 0!==r&&(n.sortKey=r),this.segments.push(n)),n}get(){return this.segments}destroy(){for(const t of this.segments)for(const e in t.vaos)t.vaos[e].destroy()}static simpleSegment(t,e,i,r){return new fa([{vertexOffset:t,primitiveOffset:e,vertexLength:i,primitiveLength:r,vaos:{},sortKey:0}])}}function ga(t,e){return 256*(t=a(Math.floor(t),0,255))+a(Math.floor(e),0,255)}fa.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,Ir("SegmentVector",fa);const _a=xn([{name:"a_pattern_from",components:4,type:"Uint16"},{name:"a_pattern_to",components:4,type:"Uint16"},{name:"a_pixel_ratio_from",components:1,type:"Uint16"},{name:"a_pixel_ratio_to",components:1,type:"Uint16"}]);var ya={exports:{}},xa={exports:{}};xa.exports=function(t,e){var i,r,n,a,o,s,l,c;for(r=t.length-(i=3&t.length),n=e,o=3432918353,s=461845907,c=0;c>>16)*o&65535)<<16)&4294967295)<<15|l>>>17))*s+(((l>>>16)*s&65535)<<16)&4294967295)<<13|n>>>19))+((5*(n>>>16)&65535)<<16)&4294967295))+((58964+(a>>>16)&65535)<<16);switch(l=0,i){case 3:l^=(255&t.charCodeAt(c+2))<<16;case 2:l^=(255&t.charCodeAt(c+1))<<8;case 1:n^=l=(65535&(l=(l=(65535&(l^=255&t.charCodeAt(c)))*o+(((l>>>16)*o&65535)<<16)&4294967295)<<15|l>>>17))*s+(((l>>>16)*s&65535)<<16)&4294967295}return n^=t.length,n=2246822507*(65535&(n^=n>>>16))+((2246822507*(n>>>16)&65535)<<16)&4294967295,n=3266489909*(65535&(n^=n>>>13))+((3266489909*(n>>>16)&65535)<<16)&4294967295,(n^=n>>>16)>>>0};var va={exports:{}};va.exports=function(t,e){for(var i,r=t.length,n=e^r,a=0;r>=4;)i=1540483477*(65535&(i=255&t.charCodeAt(a)|(255&t.charCodeAt(++a))<<8|(255&t.charCodeAt(++a))<<16|(255&t.charCodeAt(++a))<<24))+((1540483477*(i>>>16)&65535)<<16),n=1540483477*(65535&n)+((1540483477*(n>>>16)&65535)<<16)^(i=1540483477*(65535&(i^=i>>>24))+((1540483477*(i>>>16)&65535)<<16)),r-=4,++a;switch(r){case 3:n^=(255&t.charCodeAt(a+2))<<16;case 2:n^=(255&t.charCodeAt(a+1))<<8;case 1:n=1540483477*(65535&(n^=255&t.charCodeAt(a)))+((1540483477*(n>>>16)&65535)<<16)}return n=1540483477*(65535&(n^=n>>>13))+((1540483477*(n>>>16)&65535)<<16),(n^=n>>>15)>>>0};var ba=xa.exports,wa=va.exports;ya.exports=ba,ya.exports.murmur3=ba,ya.exports.murmur2=wa;class Ta{constructor(){this.ids=[],this.positions=[],this.indexed=!1}add(t,e,i,r){this.ids.push(Ea(t)),this.positions.push(e,i,r)}getPositions(t){if(!this.indexed)throw new Error("Trying to get index, but feature positions are not indexed");const e=Ea(t);let i=0,r=this.ids.length-1;for(;i>1;this.ids[t]>=e?r=t:i=t+1}const n=[];for(;this.ids[i]===e;)n.push({index:this.positions[3*i],start:this.positions[3*i+1],end:this.positions[3*i+2]}),i++;return n}static serialize(t,e){const i=new Float64Array(t.ids),r=new Uint32Array(t.positions);return Sa(i,r,0,i.length-1),e&&e.push(i.buffer,r.buffer),{ids:i,positions:r}}static deserialize(t){const e=new Ta;return e.ids=t.ids,e.positions=t.positions,e.indexed=!0,e}}function Ea(t){const e=+t;return!isNaN(e)&&e<=Number.MAX_SAFE_INTEGER?e:ya.exports(String(t))}function Sa(t,e,i,r){for(;i>1];let a=i-1,o=r+1;for(;;){do{a++}while(t[a]n);if(a>=o)break;Ia(t,a,o),Ia(e,3*a,3*o),Ia(e,3*a+1,3*o+1),Ia(e,3*a+2,3*o+2)}o-i`u_${t}`)),this.type=i}setUniform(t,e,i){t.set(i.constantOr(this.value))}getBinding(t,e,i){return"color"===this.type?new ka(t,e):new Ca(t,e)}}class La{constructor(t,e){this.uniformNames=e.map((t=>`u_${t}`)),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1}setConstantPatternPositions(t,e){this.pixelRatioFrom=e.pixelRatio,this.pixelRatioTo=t.pixelRatio,this.patternFrom=e.tlbr,this.patternTo=t.tlbr}setUniform(t,e,i,r){const n="u_pattern_to"===r?this.patternTo:"u_pattern_from"===r?this.patternFrom:"u_pixel_ratio_to"===r?this.pixelRatioTo:"u_pixel_ratio_from"===r?this.pixelRatioFrom:null;n&&t.set(n)}getBinding(t,e,i){return"u_pattern"===i.substr(0,9)?new Aa(t,e):new Ca(t,e)}}class Ba{constructor(t,e,i,r){this.expression=t,this.type=i,this.maxValue=0,this.paintVertexAttributes=e.map((t=>({name:`a_${t}`,type:"Float32",components:"color"===i?2:1,offset:0}))),this.paintVertexArray=new r}populatePaintArray(t,e,i,r,n){const a=this.paintVertexArray.length,o=this.expression.evaluate(new Yr(0),e,{},r,[],n);this.paintVertexArray.resize(t),this._setPaintValue(a,t,o)}updatePaintArray(t,e,i,r){const n=this.expression.evaluate({zoom:0},i,r);this._setPaintValue(t,e,n)}_setPaintValue(t,e,i){if("color"===this.type){const r=Pa(i);for(let i=t;i`u_${t}_t`)),this.type=i,this.useIntegerZoom=r,this.zoom=n,this.maxValue=0,this.paintVertexAttributes=e.map((t=>({name:`a_${t}`,type:"Float32",components:"color"===i?4:2,offset:0}))),this.paintVertexArray=new a}populatePaintArray(t,e,i,r,n){const a=this.expression.evaluate(new Yr(this.zoom),e,{},r,[],n),o=this.expression.evaluate(new Yr(this.zoom+1),e,{},r,[],n),s=this.paintVertexArray.length;this.paintVertexArray.resize(t),this._setPaintValue(s,t,a,o)}updatePaintArray(t,e,i,r){const n=this.expression.evaluate({zoom:this.zoom},i,r),a=this.expression.evaluate({zoom:this.zoom+1},i,r);this._setPaintValue(t,e,n,a)}_setPaintValue(t,e,i,r){if("color"===this.type){const n=Pa(i),a=Pa(r);for(let i=t;i`#define HAS_UNIFORM_${t}`)))}return t}getBinderAttributes(){const t=[];for(const e in this.binders){const i=this.binders[e];if(i instanceof Ba||i instanceof Ra)for(let e=0;e!0)){this.programConfigurations={};for(const r of t)this.programConfigurations[r.id]=new Oa(r,e,i);this.needsUpload=!1,this._featureMap=new Ta,this._bufferOffset=0}populatePaintArrays(t,e,i,r,n,a){for(const o in this.programConfigurations)this.programConfigurations[o].populatePaintArrays(t,e,r,n,a);void 0!==e.id&&this._featureMap.add(e.id,i,this._bufferOffset,t),this._bufferOffset=t,this.needsUpload=!0}updatePaintArrays(t,e,i,r){for(const n of i)this.needsUpload=this.programConfigurations[n.id].updatePaintArrays(t,this._featureMap,e,n,r)||this.needsUpload}get(t){return this.programConfigurations[t]}upload(t){if(this.needsUpload){for(const e in this.programConfigurations)this.programConfigurations[e].upload(t);this.needsUpload=!1}}destroy(){for(const t in this.programConfigurations)this.programConfigurations[t].destroy()}}function Ua(t,e){return{"text-opacity":["opacity"],"icon-opacity":["opacity"],"text-color":["fill_color"],"icon-color":["fill_color"],"text-halo-color":["halo_color"],"icon-halo-color":["halo_color"],"text-halo-blur":["halo_blur"],"icon-halo-blur":["halo_blur"],"text-halo-width":["halo_width"],"icon-halo-width":["halo_width"],"line-gap-width":["gapwidth"],"line-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-extrusion-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"]}[t]||[t.replace(`${e}-`,"").replace(/-/g,"_")]}function Na(t,e,i){const r={color:{source:Sn,composite:$n},number:{source:Fn,composite:Sn}},n=function(t){return{"line-pattern":{source:aa,composite:aa},"fill-pattern":{source:aa,composite:aa},"fill-extrusion-pattern":{source:aa,composite:aa}}[t]}(t);return n&&n[i]||r[e][i]}Ir("ConstantBinder",Da),Ir("CrossFadedConstantBinder",La),Ir("SourceExpressionBinder",Ba),Ir("CrossFadedCompositeBinder",Fa),Ir("CompositeExpressionBinder",Ra),Ir("ProgramConfiguration",Oa,{omit:["_buffers"]}),Ir("ProgramConfigurationSet",Va);var $a=8192;const Ga=Math.pow(2,14)-1,qa=-Ga-1;function Za(t){const e=$a/t.extent,i=t.loadGeometry();for(let r=0;rr.x+1||or.y+1)&&m("Geometry exceeds allowed extent, reduce your vector tile buffer size")}}return i}function ja(t,e){return{type:t.type,id:t.id,properties:t.properties,geometry:e?Za(t):[]}}function Xa(t,e,i,r,n){t.emplaceBack(2*e+(r+1)/2,2*i+(n+1)/2)}class Ha{constructor(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((t=>t.id)),this.index=t.index,this.hasPattern=!1,this.layoutVertexArray=new ta,this.indexArray=new ua,this.segments=new fa,this.programConfigurations=new Va(t.layers,t.zoom),this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id))}populate(t,e,i){const r=this.layers[0],n=[];let a=null,o=!1;"circle"===r.type&&(a=r.layout.get("circle-sort-key"),o=!a.isConstant());for(const{feature:s,id:l,index:c,sourceLayerIndex:h}of t){const t=this.layers[0]._featureFilter.needGeometry,e=ja(s,t);if(!this.layers[0]._featureFilter.filter(new Yr(this.zoom),e,i))continue;const r=o?a.evaluate(e,{},i):void 0,u={id:l,properties:s.properties,type:s.type,sourceLayerIndex:h,index:c,geometry:t?e.geometry:Za(s),patterns:{},sortKey:r};n.push(u)}o&&n.sort(((t,e)=>t.sortKey-e.sortKey));for(const s of n){const{geometry:r,index:n,sourceLayerIndex:a}=s,o=t[n].feature;this.addFeature(s,r,n,i),e.featureIndex.insert(o,r,n,a,this.index)}}update(t,e,i){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,i)}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(t){this.uploaded||(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,ma),this.indexBuffer=t.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(t),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}addFeature(t,e,i,r){for(const n of e)for(const e of n){const i=e.x,r=e.y;if(i<0||i>=$a||r<0||r>=$a)continue;const n=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,t.sortKey),a=n.vertexLength;Xa(this.layoutVertexArray,i,r,-1,-1),Xa(this.layoutVertexArray,i,r,1,-1),Xa(this.layoutVertexArray,i,r,1,1),Xa(this.layoutVertexArray,i,r,-1,1),this.indexArray.emplaceBack(a,a+1,a+2),this.indexArray.emplaceBack(a,a+3,a+2),n.vertexLength+=4,n.primitiveLength+=2}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,i,{},r)}}function Wa(t,e){for(let i=0;i1){if(Qa(t,e))return!0;for(let r=0;r1?i:i.sub(e)._mult(n)._add(e))}function ro(t,e){let i,r,n,a=!1;for(let o=0;oe.y!=n.y>e.y&&e.x<(n.x-r.x)*(e.y-r.y)/(n.y-r.y)+r.x&&(a=!a)}return a}function no(t,e){let i=!1;for(let r=0,n=t.length-1;re.y!=o.y>e.y&&e.x<(o.x-a.x)*(e.y-a.y)/(o.y-a.y)+a.x&&(i=!i)}return i}function ao(t,e,i){const r=i[0],n=i[2];if(t.xn.x&&e.x>n.x||t.yn.y&&e.y>n.y)return!1;const a=f(t,e,i[0]);return a!==f(t,e,i[1])||a!==f(t,e,i[2])||a!==f(t,e,i[3])}function oo(t,e,i){const r=e.paint.get(t).value;return"constant"===r.kind?r.value:i.programConfigurations.get(e.id).getMaxValue(t)}function so(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])}function lo(t,e,i,r,n){if(!e[0]&&!e[1])return t;const a=S.convert(e)._mult(n);"viewport"===i&&a._rotate(-r);const o=[];for(let s=0;st.width||n.height>t.height||i.x>t.width-n.width||i.y>t.height-n.height)throw new RangeError("out of range source coordinates for image copy");if(n.width>e.width||n.height>e.height||r.x>e.width-n.width||r.y>e.height-n.height)throw new RangeError("out of range destination coordinates for image copy");const o=t.data,s=e.data;if(o===s)throw new Error("srcData equals dstData, so image is already copied");for(let l=0;l{e[t.evaluationKey]=a;const o=t.expression.evaluate(e);n.data[i+r+0]=Math.floor(255*o.r/o.a),n.data[i+r+1]=Math.floor(255*o.g/o.a),n.data[i+r+2]=Math.floor(255*o.b/o.a),n.data[i+r+3]=Math.floor(255*o.a)};if(t.clips)for(let o=0,s=0;o80*i){r=a=t[0],n=o=t[1];for(var m=i;ma&&(a=s),l>o&&(o=l);c=0!==(c=Math.max(a-r,o-n))?32767/c:0}return Vo(p,d,i,r,n,c,0),d}function Fo(t,e,i,r,n){var a,o;if(n===ss(t,e,i,r)>0)for(a=e;a=e;a-=r)o=ns(a,t[a],t[a+1],o);return o&&Yo(o,o.next)&&(as(o),o=o.next),o}function Oo(t,e){if(!t)return t;e||(e=t);var i,r=t;do{if(i=!1,r.steiner||!Yo(r,r.next)&&0!==Jo(r.prev,r,r.next))r=r.next;else{if(as(r),(r=e=r.prev)===r.next)break;i=!0}}while(i||r!==e);return e}function Vo(t,e,i,r,n,a,o){if(t){!o&&a&&function(t,e,i,r){var n=t;do{0===n.z&&(n.z=Xo(n.x,n.y,e,i,r)),n.prevZ=n.prev,n.nextZ=n.next,n=n.next}while(n!==t);n.prevZ.nextZ=null,n.prevZ=null,function(t){var e,i,r,n,a,o,s,l,c=1;do{for(i=t,t=null,a=null,o=0;i;){for(o++,r=i,s=0,e=0;e0||l>0&&r;)0!==s&&(0===l||!r||i.z<=r.z)?(n=i,i=i.nextZ,s--):(n=r,r=r.nextZ,l--),a?a.nextZ=n:t=n,n.prevZ=a,a=n;i=r}a.nextZ=null,c*=2}while(o>1)}(n)}(t,r,n,a);for(var s,l,c=t;t.prev!==t.next;)if(s=t.prev,l=t.next,a?No(t,r,n,a):Uo(t))e.push(s.i/i|0),e.push(t.i/i|0),e.push(l.i/i|0),as(t),t=l.next,c=l.next;else if((t=l)===c){o?1===o?Vo(t=$o(Oo(t),e,i),e,i,r,n,a,2):2===o&&Go(t,e,i,r,n,a):Vo(Oo(t),e,i,r,n,a,1);break}}}function Uo(t){var e=t.prev,i=t,r=t.next;if(Jo(e,i,r)>=0)return!1;for(var n=e.x,a=i.x,o=r.x,s=e.y,l=i.y,c=r.y,h=na?n>o?n:o:a>o?a:o,d=s>l?s>c?s:c:l>c?l:c,m=r.next;m!==e;){if(m.x>=h&&m.x<=p&&m.y>=u&&m.y<=d&&Wo(n,s,a,l,o,c,m.x,m.y)&&Jo(m.prev,m,m.next)>=0)return!1;m=m.next}return!0}function No(t,e,i,r){var n=t.prev,a=t,o=t.next;if(Jo(n,a,o)>=0)return!1;for(var s=n.x,l=a.x,c=o.x,h=n.y,u=a.y,p=o.y,d=sl?s>c?s:c:l>c?l:c,g=h>u?h>p?h:p:u>p?u:p,_=Xo(d,m,e,i,r),y=Xo(f,g,e,i,r),x=t.prevZ,v=t.nextZ;x&&x.z>=_&&v&&v.z<=y;){if(x.x>=d&&x.x<=f&&x.y>=m&&x.y<=g&&x!==n&&x!==o&&Wo(s,h,l,u,c,p,x.x,x.y)&&Jo(x.prev,x,x.next)>=0)return!1;if(x=x.prevZ,v.x>=d&&v.x<=f&&v.y>=m&&v.y<=g&&v!==n&&v!==o&&Wo(s,h,l,u,c,p,v.x,v.y)&&Jo(v.prev,v,v.next)>=0)return!1;v=v.nextZ}for(;x&&x.z>=_;){if(x.x>=d&&x.x<=f&&x.y>=m&&x.y<=g&&x!==n&&x!==o&&Wo(s,h,l,u,c,p,x.x,x.y)&&Jo(x.prev,x,x.next)>=0)return!1;x=x.prevZ}for(;v&&v.z<=y;){if(v.x>=d&&v.x<=f&&v.y>=m&&v.y<=g&&v!==n&&v!==o&&Wo(s,h,l,u,c,p,v.x,v.y)&&Jo(v.prev,v,v.next)>=0)return!1;v=v.nextZ}return!0}function $o(t,e,i){var r=t;do{var n=r.prev,a=r.next.next;!Yo(n,a)&&Qo(n,r,r.next,a)&&is(n,a)&&is(a,n)&&(e.push(n.i/i|0),e.push(r.i/i|0),e.push(a.i/i|0),as(r),as(r.next),r=t=a),r=r.next}while(r!==t);return Oo(r)}function Go(t,e,i,r,n,a){var o=t;do{for(var s=o.next.next;s!==o.prev;){if(o.i!==s.i&&Ko(o,s)){var l=rs(o,s);return o=Oo(o,o.next),l=Oo(l,l.next),Vo(o,e,i,r,n,a,0),void Vo(l,e,i,r,n,a,0)}s=s.next}o=o.next}while(o!==t)}function qo(t,e){return t.x-e.x}function Zo(t,e){var i=function(t,e){var i,r=e,n=t.x,a=t.y,o=-1/0;do{if(a<=r.y&&a>=r.next.y&&r.next.y!==r.y){var s=r.x+(a-r.y)*(r.next.x-r.x)/(r.next.y-r.y);if(s<=n&&s>o&&(o=s,i=r.x=r.x&&r.x>=h&&n!==r.x&&Wo(ai.x||r.x===i.x&&jo(i,r)))&&(i=r,p=l)),r=r.next}while(r!==c);return i}(t,e);if(!i)return e;var r=rs(i,t);return Oo(r,r.next),Oo(i,i.next)}function jo(t,e){return Jo(t.prev,t,e.prev)<0&&Jo(e.next,t,t.next)<0}function Xo(t,e,i,r,n){return(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=(t-i)*n|0)|t<<8))|t<<4))|t<<2))|t<<1))|(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=(e-r)*n|0)|e<<8))|e<<4))|e<<2))|e<<1))<<1}function Ho(t){var e=t,i=t;do{(e.x=(t-o)*(a-s)&&(t-o)*(r-s)>=(i-o)*(e-s)&&(i-o)*(a-s)>=(n-o)*(r-s)}function Ko(t,e){return t.next.i!==e.i&&t.prev.i!==e.i&&!function(t,e){var i=t;do{if(i.i!==t.i&&i.next.i!==t.i&&i.i!==e.i&&i.next.i!==e.i&&Qo(i,i.next,t,e))return!0;i=i.next}while(i!==t);return!1}(t,e)&&(is(t,e)&&is(e,t)&&function(t,e){var i=t,r=!1,n=(t.x+e.x)/2,a=(t.y+e.y)/2;do{i.y>a!=i.next.y>a&&i.next.y!==i.y&&n<(i.next.x-i.x)*(a-i.y)/(i.next.y-i.y)+i.x&&(r=!r),i=i.next}while(i!==t);return r}(t,e)&&(Jo(t.prev,t,e.prev)||Jo(t,e.prev,e))||Yo(t,e)&&Jo(t.prev,t,t.next)>0&&Jo(e.prev,e,e.next)>0)}function Jo(t,e,i){return(e.y-t.y)*(i.x-e.x)-(e.x-t.x)*(i.y-e.y)}function Yo(t,e){return t.x===e.x&&t.y===e.y}function Qo(t,e,i,r){var n=es(Jo(t,e,i)),a=es(Jo(t,e,r)),o=es(Jo(i,r,t)),s=es(Jo(i,r,e));return n!==a&&o!==s||!(0!==n||!ts(t,i,e))||!(0!==a||!ts(t,r,e))||!(0!==o||!ts(i,t,r))||!(0!==s||!ts(i,e,r))}function ts(t,e,i){return e.x<=Math.max(t.x,i.x)&&e.x>=Math.min(t.x,i.x)&&e.y<=Math.max(t.y,i.y)&&e.y>=Math.min(t.y,i.y)}function es(t){return t>0?1:t<0?-1:0}function is(t,e){return Jo(t.prev,t,t.next)<0?Jo(t,e,t.next)>=0&&Jo(t,t.prev,e)>=0:Jo(t,e,t.prev)<0||Jo(t,t.next,e)<0}function rs(t,e){var i=new os(t.i,t.x,t.y),r=new os(e.i,e.x,e.y),n=t.next,a=e.prev;return t.next=e,e.prev=t,i.next=n,n.prev=i,r.next=i,i.prev=r,a.next=r,r.prev=a,r}function ns(t,e,i,r){var n=new os(t,e,i);return r?(n.next=r.next,n.prev=r,r.next.prev=n,r.next=n):(n.prev=n,n.next=n),n}function as(t){t.next.prev=t.prev,t.prev.next=t.next,t.prevZ&&(t.prevZ.nextZ=t.nextZ),t.nextZ&&(t.nextZ.prevZ=t.prevZ)}function os(t,e,i){this.i=t,this.x=e,this.y=i,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}function ss(t,e,i,r){for(var n=0,a=e,o=i-r;ai;){if(r-i>600){var a=r-i+1,o=e-i+1,s=Math.log(a),l=.5*Math.exp(2*s/3),c=.5*Math.sqrt(s*l*(a-l)/a)*(o-a/2<0?-1:1);cs(t,e,Math.max(i,Math.floor(e-o*l/a+c)),Math.min(r,Math.floor(e+(a-o)*l/a+c)),n)}var h=t[e],u=i,p=r;for(hs(t,i,e),n(t[r],h)>0&&hs(t,i,r);u0;)p--}0===n(t[i],h)?hs(t,i,p):hs(t,++p,r),p<=e&&(i=p+1),e<=p&&(r=p-1)}}function hs(t,e,i){var r=t[e];t[e]=t[i],t[i]=r}function us(t,e){return te?1:0}function ps(t,e){const i=t.length;if(i<=1)return[t];const r=[];let n,a;for(let o=0;o1)for(let o=0;o0&&i.holes.push(r+=t[n-1].length)}return i};class gs{constructor(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((t=>t.id)),this.index=t.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new ea,this.indexArray=new ua,this.indexArray2=new pa,this.programConfigurations=new Va(t.layers,t.zoom),this.segments=new fa,this.segments2=new fa,this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id))}populate(t,e,i){this.hasPattern=ms("fill",this.layers,e);const r=this.layers[0].layout.get("fill-sort-key"),n=!r.isConstant(),a=[];for(const{feature:o,id:s,index:l,sourceLayerIndex:c}of t){const t=this.layers[0]._featureFilter.needGeometry,h=ja(o,t);if(!this.layers[0]._featureFilter.filter(new Yr(this.zoom),h,i))continue;const u=n?r.evaluate(h,{},i,e.availableImages):void 0,p={id:s,properties:o.properties,type:o.type,sourceLayerIndex:c,index:l,geometry:t?h.geometry:Za(o),patterns:{},sortKey:u};a.push(p)}n&&a.sort(((t,e)=>t.sortKey-e.sortKey));for(const o of a){const{geometry:r,index:n,sourceLayerIndex:a}=o;if(this.hasPattern){const t=fs("fill",this.layers,o,this.zoom,e);this.patternFeatures.push(t)}else this.addFeature(o,r,n,i,{});e.featureIndex.insert(t[n].feature,r,n,a,this.index)}}update(t,e,i){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,i)}addFeatures(t,e,i){for(const r of this.patternFeatures)this.addFeature(r,r.geometry,r.index,e,i)}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(t){this.uploaded||(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,Lo),this.indexBuffer=t.createIndexBuffer(this.indexArray),this.indexBuffer2=t.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(t),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())}addFeature(t,e,i,r,n){for(const a of ps(e,500)){let t=0;for(const s of a)t+=s.length;const e=this.segments.prepareSegment(t,this.layoutVertexArray,this.indexArray),i=e.vertexLength,r=[],n=[];for(const s of a){if(0===s.length)continue;s!==a[0]&&n.push(r.length/2);const t=this.segments2.prepareSegment(s.length,this.layoutVertexArray,this.indexArray2),e=t.vertexLength;this.layoutVertexArray.emplaceBack(s[0].x,s[0].y),this.indexArray2.emplaceBack(e+s.length-1,e),r.push(s[0].x),r.push(s[0].y);for(let i=1;i>3}if(n--,1===r||2===r)a+=t.readSVarint(),o+=t.readSVarint(),1===r&&(e&&s.push(e),e=[]),e.push(new Ts(a,o));else{if(7!==r)throw new Error("unknown command "+r);e&&e.push(e[0].clone())}}return e&&s.push(e),s},Ss.prototype.bbox=function(){var t=this._pbf;t.pos=this._geometry;for(var e=t.readVarint()+t.pos,i=1,r=0,n=0,a=0,o=1/0,s=-1/0,l=1/0,c=-1/0;t.pos>3}if(r--,1===i||2===i)(n+=t.readSVarint())s&&(s=n),(a+=t.readSVarint())c&&(c=a);else if(7!==i)throw new Error("unknown command "+i)}return[o,l,s,c]},Ss.prototype.toGeoJSON=function(t,e,i){var r,n,a=this.extent*Math.pow(2,i),o=this.extent*t,s=this.extent*e,l=this.loadGeometry(),c=Ss.types[this.type];function h(t){for(var e=0;e>3;e=1===r?t.readString():2===r?t.readFloat():3===r?t.readDouble():4===r?t.readVarint64():5===r?t.readVarint():6===r?t.readSVarint():7===r?t.readBoolean():null}return e}(i))}ks.prototype.feature=function(t){if(t<0||t>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[t];var e=this._pbf.readVarint()+this._pbf.pos;return new Cs(this._pbf,e,this.extent,this._keys,this._values)};var Ps=As;function Ds(t,e,i){if(3===t){var r=new Ps(i,i.readVarint()+i.pos);r.length&&(e[r.name]=r)}}ws.VectorTile=function(t,e){this.layers=t.readFields(Ds,{},e)},ws.VectorTileFeature=Es,ws.VectorTileLayer=As;const Ls=ws.VectorTileFeature.types,Bs=Math.pow(2,13);function Rs(t,e,i,r,n,a,o,s){t.emplaceBack(e,i,2*Math.floor(r*Bs)+o,n*Bs*2,a*Bs*2,Math.round(s))}class Fs{constructor(t){this.zoom=t.zoom,this.overscaling=t.overscaling,this.layers=t.layers,this.layerIds=this.layers.map((t=>t.id)),this.index=t.index,this.hasPattern=!1,this.layoutVertexArray=new ia,this.centroidVertexArray=new Qn,this.indexArray=new ua,this.programConfigurations=new Va(t.layers,t.zoom),this.segments=new fa,this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id))}populate(t,e,i){this.features=[],this.hasPattern=ms("fill-extrusion",this.layers,e);for(const{feature:r,id:n,index:a,sourceLayerIndex:o}of t){const t=this.layers[0]._featureFilter.needGeometry,s=ja(r,t);if(!this.layers[0]._featureFilter.filter(new Yr(this.zoom),s,i))continue;const l={id:n,sourceLayerIndex:o,index:a,geometry:t?s.geometry:Za(r),properties:r.properties,type:r.type,patterns:{}};this.hasPattern?this.features.push(fs("fill-extrusion",this.layers,l,this.zoom,e)):this.addFeature(l,l.geometry,a,i,{}),e.featureIndex.insert(r,l.geometry,a,o,this.index,!0)}}addFeatures(t,e,i){for(const r of this.features){const{geometry:t}=r;this.addFeature(r,t,r.index,e,i)}}update(t,e,i){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,i)}isEmpty(){return 0===this.layoutVertexArray.length&&0===this.centroidVertexArray.length}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(t){this.uploaded||(this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,bs),this.centroidVertexBuffer=t.createVertexBuffer(this.centroidVertexArray,vs.members,!0),this.indexBuffer=t.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(t),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.centroidVertexBuffer.destroy())}addFeature(t,e,i,r,n){const a={x:0,y:0,vertexCount:0};for(const o of ps(e,500)){let e=0;for(const t of o)e+=t.length;let i=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray);for(const t of o){if(0===t.length)continue;if(Vs(t))continue;let e=0;for(let r=0;r=1){const o=t[r-1];if(!Os(n,o)){i.vertexLength+4>fa.MAX_VERTEX_ARRAY_LENGTH&&(i=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));const t=n.sub(o)._perp()._unit(),r=o.dist(n);e+r>32768&&(e=0),Rs(this.layoutVertexArray,n.x,n.y,t.x,t.y,0,0,e),Rs(this.layoutVertexArray,n.x,n.y,t.x,t.y,0,1,e),a.x+=2*n.x,a.y+=2*n.y,a.vertexCount+=2,e+=r,Rs(this.layoutVertexArray,o.x,o.y,t.x,t.y,0,0,e),Rs(this.layoutVertexArray,o.x,o.y,t.x,t.y,0,1,e),a.x+=2*o.x,a.y+=2*o.y,a.vertexCount+=2;const s=i.vertexLength;this.indexArray.emplaceBack(s,s+2,s+1),this.indexArray.emplaceBack(s+1,s+2,s+3),i.vertexLength+=4,i.primitiveLength+=2}}}}if(i.vertexLength+e>fa.MAX_VERTEX_ARRAY_LENGTH&&(i=this.segments.prepareSegment(e,this.layoutVertexArray,this.indexArray)),"Polygon"!==Ls[t.type])continue;const r=[],n=[],s=i.vertexLength;for(const t of o)if(0!==t.length){t!==o[0]&&n.push(r.length/2);for(let e=0;e$a)||t.y===e.y&&(t.y<0||t.y>$a)}function Vs(t){return t.every((t=>t.x<0))||t.every((t=>t.x>$a))||t.every((t=>t.y<0))||t.every((t=>t.y>$a))}Ir("FillExtrusionBucket",Fs,{omit:["layers","features"]});var Us={paint:new dn({"fill-extrusion-opacity":new ln(rt["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new cn(rt["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new ln(rt["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new ln(rt["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new hn(rt["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new cn(rt["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new cn(rt["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new ln(rt["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])})};function Ns(t,e){return t.x*e.x+t.y*e.y}function $s(t,e){if(1===t.length){let i=0;const r=e[i++];let n;for(;!n||r.equals(n);)if(n=e[i++],!n)return 1/0;for(;it.id)),this.index=t.index,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach((t=>{this.gradients[t.id]={}})),this.layoutVertexArray=new ra,this.layoutVertexArray2=new na,this.indexArray=new ua,this.programConfigurations=new Va(t.layers,t.zoom),this.segments=new fa,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id))}populate(t,e,i){this.hasPattern=ms("line",this.layers,e);const r=this.layers[0].layout.get("line-sort-key"),n=!r.isConstant(),a=[];for(const{feature:o,id:s,index:l,sourceLayerIndex:c}of t){const t=this.layers[0]._featureFilter.needGeometry,e=ja(o,t);if(!this.layers[0]._featureFilter.filter(new Yr(this.zoom),e,i))continue;const h=n?r.evaluate(e,{},i):void 0,u={id:s,properties:o.properties,type:o.type,sourceLayerIndex:c,index:l,geometry:t?e.geometry:Za(o),patterns:{},sortKey:h};a.push(u)}n&&a.sort(((t,e)=>t.sortKey-e.sortKey));for(const o of a){const{geometry:r,index:n,sourceLayerIndex:a}=o;if(this.hasPattern){const t=fs("line",this.layers,o,this.zoom,e);this.patternFeatures.push(t)}else this.addFeature(o,r,n,i,{});e.featureIndex.insert(t[n].feature,r,n,a,this.index)}}update(t,e,i){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(t,e,this.stateDependentLayers,i)}addFeatures(t,e,i){for(const r of this.patternFeatures)this.addFeature(r,r.geometry,r.index,e,i)}isEmpty(){return 0===this.layoutVertexArray.length}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(t){this.uploaded||(0!==this.layoutVertexArray2.length&&(this.layoutVertexBuffer2=t.createVertexBuffer(this.layoutVertexArray2,js)),this.layoutVertexBuffer=t.createVertexBuffer(this.layoutVertexArray,qs),this.indexBuffer=t.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(t),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}lineFeatureClips(t){if(t.properties&&Object.prototype.hasOwnProperty.call(t.properties,"mapbox_clip_start")&&Object.prototype.hasOwnProperty.call(t.properties,"mapbox_clip_end"))return{start:+t.properties.mapbox_clip_start,end:+t.properties.mapbox_clip_end}}addFeature(t,e,i,r,n){const a=this.layers[0].layout,o=a.get("line-join").evaluate(t,{}),s=a.get("line-cap"),l=a.get("line-miter-limit"),c=a.get("line-round-limit");this.lineClips=this.lineFeatureClips(t);for(const h of e)this.addLine(h,t,o,s,l,c);this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,t,i,n,r)}addLine(t,e,i,r,n,a){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(let e=0;e=2&&t[s-1].equals(t[s-2]);)s--;let l=0;for(;l0;if(b&&g>l){const t=u.dist(p);if(t>2*c){const e=u.sub(u.sub(p)._mult(c/t)._round());this.updateDistance(p,e),this.addCurrentVertex(e,m,0,0,h),p=e}}const T=p&&d;let E=T?i:o?"butt":r;if(T&&"round"===E&&(xn&&(E="bevel"),"bevel"===E&&(x>2&&(E="flipbevel"),x100)e=f.mult(-1);else{const t=x*m.add(f).mag()/m.sub(f).mag();e._perp()._mult(t*(w?-1:1))}this.addCurrentVertex(u,e,0,0,h),this.addCurrentVertex(u,e.mult(-1),0,0,h)}else if("bevel"===E||"fakeround"===E){const t=-Math.sqrt(x*x-1),e=w?t:0,i=w?0:t;if(p&&this.addCurrentVertex(u,m,e,i,h),"fakeround"===E){const t=Math.round(180*v/Math.PI/20);for(let e=1;e2*c){const e=u.add(d.sub(u)._mult(c/t)._round());this.updateDistance(u,e),this.addCurrentVertex(e,f,0,0,h),u=e}}}}addCurrentVertex(t,e,i,r,n,a=!1){const o=e.y*r-e.x,s=-e.y-e.x*r;this.addHalfVertex(t,e.x+e.y*i,e.y-e.x*i,a,!1,i,n),this.addHalfVertex(t,o,s,a,!0,-r,n),this.distance>Ws/2&&0===this.totalDistance&&(this.distance=0,this.addCurrentVertex(t,e,i,r,n,a))}addHalfVertex({x:t,y:e},i,r,n,a,o,s){const l=.5*(this.lineClips?this.scaledDistance*(Ws-1):this.scaledDistance);this.layoutVertexArray.emplaceBack((t<<1)+(n?1:0),(e<<1)+(a?1:0),Math.round(63*i)+128,Math.round(63*r)+128,1+(0===o?0:o<0?-1:1)|(63&l)<<2,l>>6),this.lineClips&&this.layoutVertexArray2.emplaceBack((this.scaledDistance-this.lineClips.start)/(this.lineClips.end-this.lineClips.start),this.lineClipsArray.length);const c=s.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,c),s.primitiveLength++),a?this.e2=c:this.e1=c}updateScaledDistance(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance}updateDistance(t,e){this.distance+=t.dist(e),this.updateScaledDistance()}}Ir("LineBucket",Ks,{omit:["layers","patternFeatures"]});const Js=new dn({"line-cap":new ln(rt.layout_line["line-cap"]),"line-join":new cn(rt.layout_line["line-join"]),"line-miter-limit":new ln(rt.layout_line["line-miter-limit"]),"line-round-limit":new ln(rt.layout_line["line-round-limit"]),"line-sort-key":new cn(rt.layout_line["line-sort-key"])});var Ys={paint:new dn({"line-opacity":new cn(rt.paint_line["line-opacity"]),"line-color":new cn(rt.paint_line["line-color"]),"line-translate":new ln(rt.paint_line["line-translate"]),"line-translate-anchor":new ln(rt.paint_line["line-translate-anchor"]),"line-width":new cn(rt.paint_line["line-width"]),"line-gap-width":new cn(rt.paint_line["line-gap-width"]),"line-offset":new cn(rt.paint_line["line-offset"]),"line-blur":new cn(rt.paint_line["line-blur"]),"line-dasharray":new un(rt.paint_line["line-dasharray"]),"line-pattern":new hn(rt.paint_line["line-pattern"]),"line-gradient":new pn(rt.paint_line["line-gradient"])}),layout:Js};const Qs=new class extends cn{possiblyEvaluate(t,e){return e=new Yr(Math.floor(e.zoom),{now:e.now,fadeDuration:e.fadeDuration,zoomHistory:e.zoomHistory,transition:e.transition}),super.possiblyEvaluate(t,e)}evaluate(t,e,i,r){return e=s({},e,{zoom:Math.floor(e.zoom)}),super.evaluate(t,e,i,r)}}(Ys.paint.properties["line-width"].specification);function tl(t,e){return e>0?e+2*t:t}Qs.useIntegerZoom=!0;const el=xn([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"}],4),il=xn([{name:"a_projected_pos",components:3,type:"Float32"}],4);xn([{name:"a_fade_opacity",components:1,type:"Uint32"}],4);const rl=xn([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"}]);xn([{type:"Int16",name:"anchorPointX"},{type:"Int16",name:"anchorPointY"},{type:"Int16",name:"x1"},{type:"Int16",name:"y1"},{type:"Int16",name:"x2"},{type:"Int16",name:"y2"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"}]);const nl=xn([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4),al=xn([{name:"a_pos",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4);function ol(t,e,i){return t.sections.forEach((t=>{t.text=function(t,e,i){const r=e.layout.get("text-transform").evaluate(i,{});return"uppercase"===r?t=t.toLocaleUpperCase():"lowercase"===r&&(t=t.toLocaleLowerCase()),Jr.applyArabicShaping&&(t=Jr.applyArabicShaping(t)),t}(t.text,e,i)})),t}xn([{name:"triangle",components:3,type:"Uint16"}]),xn([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"vertexStartIndex"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Uint8",name:"writingMode"},{type:"Uint8",name:"placedOrientation"},{type:"Uint8",name:"hidden"},{type:"Uint32",name:"crossTileID"},{type:"Int16",name:"associatedIconIndex"}]),xn([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Int16",name:"rightJustifiedTextSymbolIndex"},{type:"Int16",name:"centerJustifiedTextSymbolIndex"},{type:"Int16",name:"leftJustifiedTextSymbolIndex"},{type:"Int16",name:"verticalPlacedTextSymbolIndex"},{type:"Int16",name:"placedIconSymbolIndex"},{type:"Int16",name:"verticalPlacedIconSymbolIndex"},{type:"Uint16",name:"key"},{type:"Uint16",name:"textBoxStartIndex"},{type:"Uint16",name:"textBoxEndIndex"},{type:"Uint16",name:"verticalTextBoxStartIndex"},{type:"Uint16",name:"verticalTextBoxEndIndex"},{type:"Uint16",name:"iconBoxStartIndex"},{type:"Uint16",name:"iconBoxEndIndex"},{type:"Uint16",name:"verticalIconBoxStartIndex"},{type:"Uint16",name:"verticalIconBoxEndIndex"},{type:"Uint16",name:"featureIndex"},{type:"Uint16",name:"numHorizontalGlyphVertices"},{type:"Uint16",name:"numVerticalGlyphVertices"},{type:"Uint16",name:"numIconVertices"},{type:"Uint16",name:"numVerticalIconVertices"},{type:"Uint16",name:"useRuntimeCollisionCircles"},{type:"Uint32",name:"crossTileID"},{type:"Float32",name:"textBoxScale"},{type:"Float32",components:2,name:"textOffset"},{type:"Float32",name:"collisionCircleDiameter"}]),xn([{type:"Float32",name:"offsetX"}]),xn([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]);const sl={"!":"\ufe15","#":"\uff03",$:"\uff04","%":"\uff05","&":"\uff06","(":"\ufe35",")":"\ufe36","*":"\uff0a","+":"\uff0b",",":"\ufe10","-":"\ufe32",".":"\u30fb","/":"\uff0f",":":"\ufe13",";":"\ufe14","<":"\ufe3f","=":"\uff1d",">":"\ufe40","?":"\ufe16","@":"\uff20","[":"\ufe47","\\":"\uff3c","]":"\ufe48","^":"\uff3e",_:"\ufe33","`":"\uff40","{":"\ufe37","|":"\u2015","}":"\ufe38","~":"\uff5e","\xa2":"\uffe0","\xa3":"\uffe1","\xa5":"\uffe5","\xa6":"\uffe4","\xac":"\uffe2","\xaf":"\uffe3","\u2013":"\ufe32","\u2014":"\ufe31","\u2018":"\ufe43","\u2019":"\ufe44","\u201c":"\ufe41","\u201d":"\ufe42","\u2026":"\ufe19","\u2027":"\u30fb","\u20a9":"\uffe6","\u3001":"\ufe11","\u3002":"\ufe12","\u3008":"\ufe3f","\u3009":"\ufe40","\u300a":"\ufe3d","\u300b":"\ufe3e","\u300c":"\ufe41","\u300d":"\ufe42","\u300e":"\ufe43","\u300f":"\ufe44","\u3010":"\ufe3b","\u3011":"\ufe3c","\u3014":"\ufe39","\u3015":"\ufe3a","\u3016":"\ufe17","\u3017":"\ufe18","\uff01":"\ufe15","\uff08":"\ufe35","\uff09":"\ufe36","\uff0c":"\ufe10","\uff0d":"\ufe32","\uff0e":"\u30fb","\uff1a":"\ufe13","\uff1b":"\ufe14","\uff1c":"\ufe3f","\uff1e":"\ufe40","\uff1f":"\ufe16","\uff3b":"\ufe47","\uff3d":"\ufe48","\uff3f":"\ufe33","\uff5b":"\ufe37","\uff5c":"\u2015","\uff5d":"\ufe38","\uff5f":"\ufe35","\uff60":"\ufe36","\uff61":"\ufe12","\uff62":"\ufe41","\uff63":"\ufe42"};var ll=24,cl=pl,hl=function(t,e,i,r,n){var a,o,s=8*n-r-1,l=(1<>1,h=-7,u=i?n-1:0,p=i?-1:1,d=t[e+u];for(u+=p,a=d&(1<<-h)-1,d>>=-h,h+=s;h>0;a=256*a+t[e+u],u+=p,h-=8);for(o=a&(1<<-h)-1,a>>=-h,h+=r;h>0;o=256*o+t[e+u],u+=p,h-=8);if(0===a)a=1-c;else{if(a===l)return o?NaN:1/0*(d?-1:1);o+=Math.pow(2,r),a-=c}return(d?-1:1)*o*Math.pow(2,a-r)},ul=function(t,e,i,r,n,a){var o,s,l,c=8*a-n-1,h=(1<>1,p=23===n?Math.pow(2,-24)-Math.pow(2,-77):0,d=r?0:a-1,m=r?1:-1,f=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(s=isNaN(e)?1:0,o=h):(o=Math.floor(Math.log(e)/Math.LN2),e*(l=Math.pow(2,-o))<1&&(o--,l*=2),(e+=o+u>=1?p/l:p*Math.pow(2,1-u))*l>=2&&(o++,l/=2),o+u>=h?(s=0,o=h):o+u>=1?(s=(e*l-1)*Math.pow(2,n),o+=u):(s=e*Math.pow(2,u-1)*Math.pow(2,n),o=0));n>=8;t[i+d]=255&s,d+=m,s/=256,n-=8);for(o=o<0;t[i+d]=255&o,d+=m,o/=256,c-=8);t[i+d-m]|=128*f};function pl(t){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(t)?t:new Uint8Array(t||0),this.pos=0,this.type=0,this.length=this.buf.length}pl.Varint=0,pl.Fixed64=1,pl.Bytes=2,pl.Fixed32=5;var dl,ml=4294967296,fl=1/ml,gl="undefined"==typeof TextDecoder?null:new TextDecoder("utf8");function _l(t){return t.type===pl.Bytes?t.readVarint()+t.pos:t.pos+1}function yl(t,e,i){return i?4294967296*e+(t>>>0):4294967296*(e>>>0)+(t>>>0)}function xl(t,e,i){var r=e<=16383?1:e<=2097151?2:e<=268435455?3:Math.floor(Math.log(e)/(7*Math.LN2));i.realloc(r);for(var n=i.pos-1;n>=t;n--)i.buf[n+r]=i.buf[n]}function vl(t,e){for(var i=0;i>>8,t[i+2]=e>>>16,t[i+3]=e>>>24}function Ml(t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16)+(t[e+3]<<24)}function Pl(t,e,i){1===t&&i.readMessage(Dl,e)}function Dl(t,e,i){if(3===t){const{id:t,bitmap:r,width:n,height:a,left:o,top:s,advance:l}=i.readMessage(Ll,{});e.push({id:t,bitmap:new Ao({width:n+6,height:a+6},r),metrics:{width:n,height:a,left:o,top:s,advance:l}})}}function Ll(t,e,i){1===t?e.id=i.readVarint():2===t?e.bitmap=i.readBytes():3===t?e.width=i.readVarint():4===t?e.height=i.readVarint():5===t?e.left=i.readSVarint():6===t?e.top=i.readSVarint():7===t&&(e.advance=i.readVarint())}function Bl(t){let e=0,i=0;for(const o of t)e+=o.w*o.h,i=Math.max(i,o.w);t.sort(((t,e)=>e.h-t.h));const r=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(e/.95)),i),h:1/0}];let n=0,a=0;for(const o of t)for(let t=r.length-1;t>=0;t--){const e=r[t];if(!(o.w>e.w||o.h>e.h)){if(o.x=e.x,o.y=e.y,a=Math.max(a,o.y+o.h),n=Math.max(n,o.x+o.w),o.w===e.w&&o.h===e.h){const e=r.pop();t>3,a=this.pos;this.type=7&r,t(n,e,this),this.pos===a&&this.skip(r)}return e},readMessage:function(t,e){return this.readFields(t,e,this.readVarint()+this.pos)},readFixed32:function(){var t=Al(this.buf,this.pos);return this.pos+=4,t},readSFixed32:function(){var t=Ml(this.buf,this.pos);return this.pos+=4,t},readFixed64:function(){var t=Al(this.buf,this.pos)+Al(this.buf,this.pos+4)*ml;return this.pos+=8,t},readSFixed64:function(){var t=Al(this.buf,this.pos)+Ml(this.buf,this.pos+4)*ml;return this.pos+=8,t},readFloat:function(){var t=hl(this.buf,this.pos,!0,23,4);return this.pos+=4,t},readDouble:function(){var t=hl(this.buf,this.pos,!0,52,8);return this.pos+=8,t},readVarint:function(t){var e,i,r=this.buf;return e=127&(i=r[this.pos++]),i<128?e:(e|=(127&(i=r[this.pos++]))<<7,i<128?e:(e|=(127&(i=r[this.pos++]))<<14,i<128?e:(e|=(127&(i=r[this.pos++]))<<21,i<128?e:function(t,e,i){var r,n,a=i.buf;if(r=(112&(n=a[i.pos++]))>>4,n<128)return yl(t,r,e);if(r|=(127&(n=a[i.pos++]))<<3,n<128)return yl(t,r,e);if(r|=(127&(n=a[i.pos++]))<<10,n<128)return yl(t,r,e);if(r|=(127&(n=a[i.pos++]))<<17,n<128)return yl(t,r,e);if(r|=(127&(n=a[i.pos++]))<<24,n<128)return yl(t,r,e);if(r|=(1&(n=a[i.pos++]))<<31,n<128)return yl(t,r,e);throw new Error("Expected varint not more than 10 bytes")}(e|=(15&(i=r[this.pos]))<<28,t,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var t=this.readVarint();return t%2==1?(t+1)/-2:t/2},readBoolean:function(){return Boolean(this.readVarint())},readString:function(){var t=this.readVarint()+this.pos,e=this.pos;return this.pos=t,t-e>=12&&gl?function(t,e,i){return gl.decode(t.subarray(e,i))}(this.buf,e,t):function(t,e,i){for(var r="",n=e;n239?4:l>223?3:l>191?2:1;if(n+h>i)break;1===h?l<128&&(c=l):2===h?128==(192&(a=t[n+1]))&&(c=(31&l)<<6|63&a)<=127&&(c=null):3===h?(o=t[n+2],128==(192&(a=t[n+1]))&&128==(192&o)&&((c=(15&l)<<12|(63&a)<<6|63&o)<=2047||c>=55296&&c<=57343)&&(c=null)):4===h&&(o=t[n+2],s=t[n+3],128==(192&(a=t[n+1]))&&128==(192&o)&&128==(192&s)&&((c=(15&l)<<18|(63&a)<<12|(63&o)<<6|63&s)<=65535||c>=1114112)&&(c=null)),null===c?(c=65533,h=1):c>65535&&(c-=65536,r+=String.fromCharCode(c>>>10&1023|55296),c=56320|1023&c),r+=String.fromCharCode(c),n+=h}return r}(this.buf,e,t)},readBytes:function(){var t=this.readVarint()+this.pos,e=this.buf.subarray(this.pos,t);return this.pos=t,e},readPackedVarint:function(t,e){if(this.type!==pl.Bytes)return t.push(this.readVarint(e));var i=_l(this);for(t=t||[];this.pos127;);else if(e===pl.Bytes)this.pos=this.readVarint()+this.pos;else if(e===pl.Fixed32)this.pos+=4;else{if(e!==pl.Fixed64)throw new Error("Unimplemented type: "+e);this.pos+=8}},writeTag:function(t,e){this.writeVarint(t<<3|e)},realloc:function(t){for(var e=this.length||16;e268435455||t<0?function(t,e){var i,r;if(t>=0?(i=t%4294967296|0,r=t/4294967296|0):(r=~(-t/4294967296),4294967295^(i=~(-t%4294967296))?i=i+1|0:(i=0,r=r+1|0)),t>=0x10000000000000000||t<-0x10000000000000000)throw new Error("Given varint doesn't fit into 10 bytes");e.realloc(10),function(t,e,i){i.buf[i.pos++]=127&t|128,t>>>=7,i.buf[i.pos++]=127&t|128,t>>>=7,i.buf[i.pos++]=127&t|128,t>>>=7,i.buf[i.pos++]=127&t|128,i.buf[i.pos]=127&(t>>>=7)}(i,0,e),function(t,e){var i=(7&t)<<4;e.buf[e.pos++]|=i|((t>>>=3)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t|((t>>>=7)?128:0),t&&(e.buf[e.pos++]=127&t)))))}(r,e)}(t,this):(this.realloc(4),this.buf[this.pos++]=127&t|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=127&(t>>>=7)|(t>127?128:0),t<=127||(this.buf[this.pos++]=t>>>7&127))))},writeSVarint:function(t){this.writeVarint(t<0?2*-t-1:2*t)},writeBoolean:function(t){this.writeVarint(Boolean(t))},writeString:function(t){t=String(t),this.realloc(4*t.length),this.pos++;var e=this.pos;this.pos=function(t,e,i){for(var r,n,a=0;a55295&&r<57344){if(!n){r>56319||a+1===e.length?(t[i++]=239,t[i++]=191,t[i++]=189):n=r;continue}if(r<56320){t[i++]=239,t[i++]=191,t[i++]=189,n=r;continue}r=n-55296<<10|r-56320|65536,n=null}else n&&(t[i++]=239,t[i++]=191,t[i++]=189,n=null);r<128?t[i++]=r:(r<2048?t[i++]=r>>6|192:(r<65536?t[i++]=r>>12|224:(t[i++]=r>>18|240,t[i++]=r>>12&63|128),t[i++]=r>>6&63|128),t[i++]=63&r|128)}return i}(this.buf,t,this.pos);var i=this.pos-e;i>=128&&xl(e,i,this),this.pos=e-1,this.writeVarint(i),this.pos+=i},writeFloat:function(t){this.realloc(4),ul(this.buf,t,this.pos,!0,23,4),this.pos+=4},writeDouble:function(t){this.realloc(8),ul(this.buf,t,this.pos,!0,52,8),this.pos+=8},writeBytes:function(t){var e=t.length;this.writeVarint(e),this.realloc(e);for(var i=0;i=128&&xl(i,r,this),this.pos=i-1,this.writeVarint(r),this.pos+=r},writeMessage:function(t,e,i){this.writeTag(t,pl.Bytes),this.writeRawMessage(e,i)},writePackedVarint:function(t,e){e.length&&this.writeMessage(t,vl,e)},writePackedSVarint:function(t,e){e.length&&this.writeMessage(t,bl,e)},writePackedBoolean:function(t,e){e.length&&this.writeMessage(t,El,e)},writePackedFloat:function(t,e){e.length&&this.writeMessage(t,wl,e)},writePackedDouble:function(t,e){e.length&&this.writeMessage(t,Tl,e)},writePackedFixed32:function(t,e){e.length&&this.writeMessage(t,Sl,e)},writePackedSFixed32:function(t,e){e.length&&this.writeMessage(t,Il,e)},writePackedFixed64:function(t,e){e.length&&this.writeMessage(t,zl,e)},writePackedSFixed64:function(t,e){e.length&&this.writeMessage(t,Cl,e)},writeBytesField:function(t,e){this.writeTag(t,pl.Bytes),this.writeBytes(e)},writeFixed32Field:function(t,e){this.writeTag(t,pl.Fixed32),this.writeFixed32(e)},writeSFixed32Field:function(t,e){this.writeTag(t,pl.Fixed32),this.writeSFixed32(e)},writeFixed64Field:function(t,e){this.writeTag(t,pl.Fixed64),this.writeFixed64(e)},writeSFixed64Field:function(t,e){this.writeTag(t,pl.Fixed64),this.writeSFixed64(e)},writeVarintField:function(t,e){this.writeTag(t,pl.Varint),this.writeVarint(e)},writeSVarintField:function(t,e){this.writeTag(t,pl.Varint),this.writeSVarint(e)},writeStringField:function(t,e){this.writeTag(t,pl.Bytes),this.writeString(e)},writeFloatField:function(t,e){this.writeTag(t,pl.Fixed32),this.writeFloat(e)},writeDoubleField:function(t,e){this.writeTag(t,pl.Fixed64),this.writeDouble(e)},writeBooleanField:function(t,e){this.writeVarintField(t,Boolean(e))}};class Rl{constructor(t,{pixelRatio:e,version:i,stretchX:r,stretchY:n,content:a}){this.paddedRect=t,this.pixelRatio=e,this.stretchX=r,this.stretchY=n,this.content=a,this.version=i}get tl(){return[this.paddedRect.x+1,this.paddedRect.y+1]}get br(){return[this.paddedRect.x+this.paddedRect.w-1,this.paddedRect.y+this.paddedRect.h-1]}get tlbr(){return this.tl.concat(this.br)}get displaySize(){return[(this.paddedRect.w-2)/this.pixelRatio,(this.paddedRect.h-2)/this.pixelRatio]}}class Fl{constructor(t,e){const i={},r={};this.haveRenderCallbacks=[];const n=[];this.addImages(t,i,n),this.addImages(e,r,n);const{w:a,h:o}=Bl(n),s=new ko({width:a||1,height:o||1});for(const l in t){const e=t[l],r=i[l].paddedRect;ko.copy(e.data,s,{x:0,y:0},{x:r.x+1,y:r.y+1},e.data)}for(const l in e){const t=e[l],i=r[l].paddedRect,n=i.x+1,a=i.y+1,o=t.data.width,c=t.data.height;ko.copy(t.data,s,{x:0,y:0},{x:n,y:a},t.data),ko.copy(t.data,s,{x:0,y:c-1},{x:n,y:a-1},{width:o,height:1}),ko.copy(t.data,s,{x:0,y:0},{x:n,y:a+c},{width:o,height:1}),ko.copy(t.data,s,{x:o-1,y:0},{x:n-1,y:a},{width:1,height:c}),ko.copy(t.data,s,{x:0,y:0},{x:n+o,y:a},{width:1,height:c})}this.image=s,this.iconPositions=i,this.patternPositions=r}addImages(t,e,i){for(const r in t){const n=t[r],a={x:0,y:0,w:n.data.width+2,h:n.data.height+2};i.push(a),e[r]=new Rl(a,n),n.hasRenderCallback&&this.haveRenderCallbacks.push(r)}}patchUpdatedImages(t,e){t.dispatchRenderCallbacks(this.haveRenderCallbacks);for(const i in t.updatedImages)this.patchUpdatedImage(this.iconPositions[i],t.getImage(i),e),this.patchUpdatedImage(this.patternPositions[i],t.getImage(i),e)}patchUpdatedImage(t,e,i){if(!t||!e)return;if(t.version===e.version)return;t.version=e.version;const[r,n]=t.tl;i.update(e.data,void 0,{x:r,y:n})}}Ir("ImagePosition",Rl),Ir("ImageAtlas",Fl),t.WritingMode=void 0,(dl=t.WritingMode||(t.WritingMode={}))[dl.none=0]="none",dl[dl.horizontal=1]="horizontal",dl[dl.vertical=2]="vertical",dl[dl.horizontalOnly=3]="horizontalOnly";const Ol=-17;class Vl{constructor(){this.scale=1,this.fontStack="",this.imageName=null}static forText(t,e){const i=new Vl;return i.scale=t||1,i.fontStack=e,i}static forImage(t){const e=new Vl;return e.imageName=t,e}}class Ul{constructor(){this.text="",this.sectionIndex=[],this.sections=[],this.imageSectionID=null}static fromFeature(t,e){const i=new Ul;for(let r=0;r=0&&i>=t&&$l[this.text.charCodeAt(i)];i--)e--;this.text=this.text.substring(t,e),this.sectionIndex=this.sectionIndex.slice(t,e)}substring(t,e){const i=new Ul;return i.text=this.text.substring(t,e),i.sectionIndex=this.sectionIndex.slice(t,e),i.sections=this.sections,i}toString(){return this.text}getMaxScale(){return this.sectionIndex.reduce(((t,e)=>Math.max(t,this.sections[e].scale)),0)}addTextSection(t,e){this.text+=t.text,this.sections.push(Vl.forText(t.scale,t.fontStack||e));const i=this.sections.length-1;for(let r=0;r=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID)}}function Nl(e,i,r,n,a,o,s,l,c,h,u,p,d,m,f,g){const _=Ul.fromFeature(e,a);let y;p===t.WritingMode.vertical&&_.verticalizePunctuation();const{processBidirectionalText:x,processStyledBidirectionalText:v}=Jr;if(x&&1===_.sections.length){y=[];const t=x(_.toString(),Wl(_,h,o,i,n,m,f));for(const e of t){const t=new Ul;t.text=e,t.sections=_.sections;for(let i=0;i0&&r>b&&(b=r)}else{const t=r[l.fontStack],e=t&&t[g];if(e&&e.rect)w=e.rect,y=e.metrics;else{const t=i[l.fontStack],e=t&&t[g];if(!e)continue;y=e.metrics}_=(a-l.scale)*ll}I?(e.verticalizable=!0,v.push({glyph:g,imageName:E,x:d,y:m+_,vertical:I,scale:l.scale,fontStack:l.fontStack,sectionIndex:f,metrics:y,rect:w}),d+=S*l.scale+h):(v.push({glyph:g,imageName:E,x:d,y:m+_,vertical:I,scale:l.scale,fontStack:l.fontStack,sectionIndex:f,metrics:y,rect:w}),d+=y.advance*l.scale+h)}0!==v.length&&(f=Math.max(d-h,f),Jl(v,0,v.length-1,_,b)),d=0;const w=o*a+b;l.lineOffset=Math.max(b,s),m+=w,g=Math.max(w,g),++y}var x;const v=m-Ol,{horizontalAlign:b,verticalAlign:w}=Kl(s);(function(t,e,i,r,n,a,o,s,l){const c=(e-i)*n;let h=0;h=a!==o?-s*r-Ol:(-r*l+.5)*o;for(const u of t)for(const t of u.positionedGlyphs)t.x+=c,t.y+=h})(e.positionedLines,_,b,w,f,g,o,v,a.length),e.top+=-w*v,e.bottom=e.top+v,e.left+=-b*f,e.right=e.left+f}(w,i,r,n,y,s,l,c,p,h,d,g),!function(t){for(const e of t)if(0!==e.positionedGlyphs.length)return!1;return!0}(b)&&w}const $l={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},Gl={10:!0,32:!0,38:!0,40:!0,41:!0,43:!0,45:!0,47:!0,173:!0,183:!0,8203:!0,8208:!0,8211:!0,8231:!0};function ql(t,e,i,r,n,a){if(e.imageName){const t=r[e.imageName];return t?t.displaySize[0]*e.scale*ll/a+n:0}{const r=i[e.fontStack],a=r&&r[t];return a?a.metrics.advance*e.scale+n:0}}function Zl(t,e,i,r){const n=Math.pow(t-e,2);return r?t=0;let h=0;for(let p=0;p-i/2;){if(o--,o<0)return!1;s-=t[o].dist(a),a=t[o]}s+=t[o].dist(t[o+1]),o++;const l=[];let c=0;for(;sr;)c-=l.shift().angleDelta;if(c>n)return!1;o++,s+=e.dist(i)}return!0}function nc(t){let e=0;for(let i=0;ic){const a=(c-l)/n,u=Se(i.x,r.x,a),p=Se(i.y,r.y,a),d=new ic(u,p,r.angleTo(i),h);return d._round(),!o||rc(t,d,s,o,e)?d:void 0}l+=n}}function lc(t,e,i,r,n,a,o,s,l){const c=ac(r,a,o),h=oc(r,n),u=h*o,p=0===t[0].x||t[0].x===l||0===t[0].y||t[0].y===l;return e-u=0&&_=0&&y=0&&p+c<=h){const e=new ic(_,y,f,m);e._round(),r&&!rc(t,e,a,r,n)||d.push(e)}}u+=s}return s||d.length||o||(d=cc(t,u/2,i,r,n,a,o,!0,l)),d}function hc(t,e,i,r,n){const a=[];for(let o=0;o=r&&c.x>=r||(o.x>=r?o=new S(r,o.y+(r-o.x)/(c.x-o.x)*(c.y-o.y))._round():c.x>=r&&(c=new S(r,o.y+(r-o.x)/(c.x-o.x)*(c.y-o.y))._round()),o.y>=n&&c.y>=n||(o.y>=n?o=new S(o.x+(n-o.y)/(c.y-o.y)*(c.x-o.x),n)._round():c.y>=n&&(c=new S(o.x+(n-o.y)/(c.y-o.y)*(c.x-o.x),n)._round()),l&&o.equals(l[l.length-1])||(l=[o],a.push(l)),l.push(c)))))}}return a}function uc(t,e,i,r){const n=[],a=t.image,o=a.pixelRatio,s=a.paddedRect.w-2,l=a.paddedRect.h-2,c=t.right-t.left,h=t.bottom-t.top,u=a.stretchX||[[0,s]],p=a.stretchY||[[0,l]],d=(t,e)=>t+e[1]-e[0],m=u.reduce(d,0),f=p.reduce(d,0),g=s-m,_=l-f;let y=0,x=m,v=0,b=f,w=0,T=g,E=0,I=_;if(a.content&&r){const t=a.content;y=pc(u,0,t[0]),v=pc(p,0,t[1]),x=pc(u,t[0],t[2]),b=pc(p,t[1],t[3]),w=t[0]-y,E=t[1]-v,T=t[2]-t[0]-x,I=t[3]-t[1]-b}const z=(r,n,s,l)=>{const u=mc(r.stretch-y,x,c,t.left),p=fc(r.fixed-w,T,r.stretch,m),d=mc(n.stretch-v,b,h,t.top),g=fc(n.fixed-E,I,n.stretch,f),_=mc(s.stretch-y,x,c,t.left),z=fc(s.fixed-w,T,s.stretch,m),C=mc(l.stretch-v,b,h,t.top),A=fc(l.fixed-E,I,l.stretch,f),k=new S(u,d),M=new S(_,d),P=new S(_,C),D=new S(u,C),L=new S(p/o,g/o),B=new S(z/o,A/o),R=e*Math.PI/180;if(R){const t=Math.sin(R),e=Math.cos(R),i=[e,-t,t,e];k._matMult(i),M._matMult(i),D._matMult(i),P._matMult(i)}const F=r.stretch+r.fixed,O=n.stretch+n.fixed;return{tl:k,tr:M,bl:D,br:P,tex:{x:a.paddedRect.x+1+F,y:a.paddedRect.y+1+O,w:s.stretch+s.fixed-F,h:l.stretch+l.fixed-O},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:L,pixelOffsetBR:B,minFontScaleX:T/o/c,minFontScaleY:I/o/h,isSDF:i}};if(r&&(a.stretchX||a.stretchY)){const t=dc(u,g,m),e=dc(p,_,f);for(let i=0;i0&&(r=Math.max(10,r),this.circleDiameter=r)}else{let l=a.top*o-s[0],h=a.bottom*o+s[2],u=a.left*o-s[3],p=a.right*o+s[1];const d=a.collisionPadding;if(d&&(u-=d[0]*o,l-=d[1]*o,p+=d[2]*o,h+=d[3]*o),c){const t=new S(u,l),e=new S(p,l),i=new S(u,h),r=new S(p,h),n=c*Math.PI/180;t._rotate(n),e._rotate(n),i._rotate(n),r._rotate(n),u=Math.min(t.x,e.x,i.x,r.x),p=Math.max(t.x,e.x,i.x,r.x),l=Math.min(t.y,e.y,i.y,r.y),h=Math.max(t.y,e.y,i.y,r.y)}t.emplaceBack(e.x,e.y,u,l,p,h,i,r,n)}this.boxEndIndex=t.length}}class _c{constructor(t=[],e=yc){if(this.data=t,this.length=this.data.length,this.compare=e,this.length>0)for(let i=(this.length>>1)-1;i>=0;i--)this._down(i)}push(t){this.data.push(t),this.length++,this._up(this.length-1)}pop(){if(0===this.length)return;const t=this.data[0],e=this.data.pop();return this.length--,this.length>0&&(this.data[0]=e,this._down(0)),t}peek(){return this.data[0]}_up(t){const{data:e,compare:i}=this,r=e[t];for(;t>0;){const n=t-1>>1,a=e[n];if(i(r,a)>=0)break;e[t]=a,t=n}e[t]=r}_down(t){const{data:e,compare:i}=this,r=this.length>>1,n=e[t];for(;t=0)break;e[t]=a,t=r}e[t]=n}}function yc(t,e){return te?1:0}function xc(t,e=1,i=!1){let r=1/0,n=1/0,a=-1/0,o=-1/0;const s=t[0];for(let d=0;da)&&(a=t.x),(!d||t.y>o)&&(o=t.y)}const l=Math.min(a-r,o-n);let c=l/2;const h=new _c([],vc);if(0===l)return new S(r,n);for(let d=r;du.d||!u.d)&&(u=r,i&&console.log("found best %d after %d probes",Math.round(1e4*r.d)/1e4,p)),r.max-u.d<=e||(c=r.h/2,h.push(new bc(r.p.x-c,r.p.y-c,c,t)),h.push(new bc(r.p.x+c,r.p.y-c,c,t)),h.push(new bc(r.p.x-c,r.p.y+c,c,t)),h.push(new bc(r.p.x+c,r.p.y+c,c,t)),p+=4)}return i&&(console.log(`num probes: ${p}`),console.log(`best distance: ${u.d}`)),u.p}function vc(t,e){return e.max-t.max}function bc(t,e,i,r){this.p=new S(t,e),this.h=i,this.d=function(t,e){let i=!1,r=1/0;for(let n=0;nt.y!=s.y>t.y&&t.x<(s.x-n.x)*(t.y-n.y)/(s.y-n.y)+n.x&&(i=!i),r=Math.min(r,io(t,n,s))}}return(i?1:-1)*Math.sqrt(r)}(this.p,r),this.max=this.d+this.h*Math.SQRT2}const wc=Number.POSITIVE_INFINITY;function Tc(t,e){return e[1]!==wc?function(t,e,i){let r=0,n=0;switch(e=Math.abs(e),i=Math.abs(i),t){case"top-right":case"top-left":case"top":n=i-7;break;case"bottom-right":case"bottom-left":case"bottom":n=7-i}switch(t){case"top-right":case"bottom-right":case"right":r=-e;break;case"top-left":case"bottom-left":case"left":r=e}return[r,n]}(t,e[0],e[1]):function(t,e){let i=0,r=0;e<0&&(e=0);const n=e/Math.sqrt(2);switch(t){case"top-right":case"top-left":r=n-7;break;case"bottom-right":case"bottom-left":r=7-n;break;case"bottom":r=7-e;break;case"top":r=e-7}switch(t){case"top-right":case"bottom-right":i=-n;break;case"top-left":case"bottom-left":i=n;break;case"left":i=e;break;case"right":i=-e}return[i,r]}(t,e[0])}function Ec(t){switch(t){case"right":case"top-right":case"bottom-right":return"right";case"left":case"top-left":case"bottom-left":return"left"}return"center"}function Sc(e,i,r,n,a,o,s,l,c,h,u){let p=o.textMaxSize.evaluate(i,{});void 0===p&&(p=s);const d=e.layers[0].layout,f=d.get("icon-offset").evaluate(i,{},u),g=Cc(r.horizontal),_=s/24,y=e.tilePixelRatio*_,x=e.tilePixelRatio*p/24,v=e.tilePixelRatio*l,b=e.tilePixelRatio*d.get("symbol-spacing"),w=d.get("text-padding")*e.tilePixelRatio,T=function(t,e,i,r=1){const n=t.get("icon-padding").evaluate(e,{},i),a=n&&n.values;return[a[0]*r,a[1]*r,a[2]*r,a[3]*r]}(d,i,u,e.tilePixelRatio),E=d.get("text-max-angle")/180*Math.PI,S="viewport"!==d.get("text-rotation-alignment")&&"point"!==d.get("symbol-placement"),I="map"===d.get("icon-rotation-alignment")&&"point"!==d.get("symbol-placement"),z=d.get("symbol-placement"),C=b/2,A=d.get("icon-text-fit");let k;n&&"none"!==A&&(e.allowVerticalPlacement&&r.vertical&&(k=Ql(n,r.vertical,A,d.get("icon-text-fit-padding"),f,_)),g&&(n=Ql(n,g,A,d.get("icon-text-fit-padding"),f,_)));const M=(l,p)=>{p.x<0||p.x>=$a||p.y<0||p.y>=$a||function(e,i,r,n,a,o,s,l,c,h,u,p,d,f,g,_,y,x,v,b,w,T,E,S,I){const z=e.addToLineVertexArray(i,r);let C,A,k,M,P=0,D=0,L=0,B=0,R=-1,F=-1;const O={};let V=ya.exports(""),U=0,N=0;if(void 0===l._unevaluatedLayout.getValue("text-radial-offset")?[U,N]=l.layout.get("text-offset").evaluate(w,{},S).map((t=>t*ll)):(U=l.layout.get("text-radial-offset").evaluate(w,{},S)*ll,N=wc),e.allowVerticalPlacement&&n.vertical){const t=l.layout.get("text-rotate").evaluate(w,{},S)+90;k=new gc(c,i,h,u,p,n.vertical,d,f,g,t),s&&(M=new gc(c,i,h,u,p,s,y,x,g,t))}if(a){const r=l.layout.get("icon-rotate").evaluate(w,{}),n="none"!==l.layout.get("icon-text-fit"),o=uc(a,r,E,n),d=s?uc(s,r,E,n):void 0;A=new gc(c,i,h,u,p,a,y,x,!1,r),P=4*o.length;const f=e.iconSizeData;let g=null;"source"===f.kind?(g=[tc*l.layout.get("icon-size").evaluate(w,{})],g[0]>Ic&&m(`${e.layerIds[0]}: Value for "icon-size" is >= 255. Reduce your "icon-size".`)):"composite"===f.kind&&(g=[tc*T.compositeIconSizes[0].evaluate(w,{},S),tc*T.compositeIconSizes[1].evaluate(w,{},S)],(g[0]>Ic||g[1]>Ic)&&m(`${e.layerIds[0]}: Value for "icon-size" is >= 255. Reduce your "icon-size".`)),e.addSymbols(e.icon,o,g,b,v,w,t.WritingMode.none,i,z.lineStartIndex,z.lineLength,-1,S),R=e.icon.placedSymbolArray.length-1,d&&(D=4*d.length,e.addSymbols(e.icon,d,g,b,v,w,t.WritingMode.vertical,i,z.lineStartIndex,z.lineLength,-1,S),F=e.icon.placedSymbolArray.length-1)}const $=Object.keys(n.horizontal);for(const m of $){const r=n.horizontal[m];if(!C){V=ya.exports(r.text);const t=l.layout.get("text-rotate").evaluate(w,{},S);C=new gc(c,i,h,u,p,r,d,f,g,t)}const a=1===r.positionedLines.length;if(L+=zc(e,i,r,o,l,g,w,_,z,n.vertical?t.WritingMode.horizontal:t.WritingMode.horizontalOnly,a?$:[m],O,R,T,S),a)break}n.vertical&&(B+=zc(e,i,n.vertical,o,l,g,w,_,z,t.WritingMode.vertical,["vertical"],O,F,T,S));const G=C?C.boxStartIndex:e.collisionBoxArray.length,q=C?C.boxEndIndex:e.collisionBoxArray.length,Z=k?k.boxStartIndex:e.collisionBoxArray.length,j=k?k.boxEndIndex:e.collisionBoxArray.length,X=A?A.boxStartIndex:e.collisionBoxArray.length,H=A?A.boxEndIndex:e.collisionBoxArray.length,W=M?M.boxStartIndex:e.collisionBoxArray.length,K=M?M.boxEndIndex:e.collisionBoxArray.length;let J=-1;const Y=(t,e)=>t&&t.circleDiameter?Math.max(t.circleDiameter,e):e;J=Y(C,J),J=Y(k,J),J=Y(A,J),J=Y(M,J);const Q=J>-1?1:0;Q&&(J*=I/ll),e.glyphOffsetArray.length>=Fc.MAX_GLYPHS&&m("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),void 0!==w.sortKey&&e.addToSortKeyRanges(e.symbolInstances.length,w.sortKey),e.symbolInstances.emplaceBack(i.x,i.y,O.right>=0?O.right:-1,O.center>=0?O.center:-1,O.left>=0?O.left:-1,O.vertical||-1,R,F,V,G,q,Z,j,X,H,W,K,h,L,B,P,D,Q,0,d,U,N,J)}(e,p,l,r,n,a,k,e.layers[0],e.collisionBoxArray,i.index,i.sourceLayerIndex,e.index,y,[w,w,w,w],S,c,v,T,I,f,i,o,h,u,s)};if("line"===z)for(const t of hc(i.geometry,0,0,$a,$a)){const i=lc(t,b,E,r.vertical||g,n,24,x,e.overscaling,$a);for(const r of i)g&&Ac(e,g.text,C,r)||M(t,r)}else if("line-center"===z){for(const t of i.geometry)if(t.length>1){const e=sc(t,E,r.vertical||g,n,24,x);e&&M(t,e)}}else if("Polygon"===i.type)for(const t of ps(i.geometry,0)){const e=xc(t,16);M(t[0],new ic(e.x,e.y,0))}else if("LineString"===i.type)for(const t of i.geometry)M(t,new ic(t[0].x,t[0].y,0));else if("Point"===i.type)for(const t of i.geometry)for(const e of t)M([e],new ic(e.x,e.y,0))}const Ic=32640;function zc(t,e,i,r,n,a,o,s,l,c,h,u,p,d,f){const g=function(t,e,i,r,n,a,o,s){const l=r.layout.get("text-rotate").evaluate(a,{})*Math.PI/180,c=[];for(const h of e.positionedLines)for(const t of h.positionedGlyphs){if(!t.rect)continue;const r=t.rect||{};let a=4,u=!0,p=1,d=0;const m=(n||s)&&t.vertical,f=t.metrics.advance*t.scale/2;if(s&&e.verticalizable){const e=(t.scale-1)*ll,i=(ll-t.metrics.width*t.scale)/2;d=h.lineOffset/2-(t.imageName?-i:e)}if(t.imageName){const e=o[t.imageName];u=e.sdf,p=e.pixelRatio,a=1/p}const g=n?[t.x+f,t.y]:[0,0];let _=n?[0,0]:[t.x+f+i[0],t.y+i[1]-d],y=[0,0];m&&(y=_,_=[0,0]);const x=(t.metrics.left-a)*t.scale-f+_[0],v=(-t.metrics.top-a)*t.scale+_[1],b=x+r.w*t.scale/p,w=v+r.h*t.scale/p,T=new S(x,v),E=new S(b,v),I=new S(x,w),z=new S(b,w);if(m){const e=new S(-f,f-Ol),i=-Math.PI/2,r=12-f,n=new S(22-r,-(t.imageName?r:0)),a=new S(...y);T._rotateAround(i,e)._add(n)._add(a),E._rotateAround(i,e)._add(n)._add(a),I._rotateAround(i,e)._add(n)._add(a),z._rotateAround(i,e)._add(n)._add(a)}if(l){const t=Math.sin(l),e=Math.cos(l),i=[e,-t,t,e];T._matMult(i),E._matMult(i),I._matMult(i),z._matMult(i)}const C=new S(0,0),A=new S(0,0);c.push({tl:T,tr:E,bl:I,br:z,tex:r,writingMode:e.writingMode,glyphOffset:g,sectionIndex:t.sectionIndex,isSDF:u,pixelOffsetTL:C,pixelOffsetBR:A,minFontScaleX:0,minFontScaleY:0})}return c}(0,i,s,n,a,o,r,t.allowVerticalPlacement),_=t.textSizeData;let y=null;"source"===_.kind?(y=[tc*n.layout.get("text-size").evaluate(o,{})],y[0]>Ic&&m(`${t.layerIds[0]}: Value for "text-size" is >= 255. Reduce your "text-size".`)):"composite"===_.kind&&(y=[tc*d.compositeTextSizes[0].evaluate(o,{},f),tc*d.compositeTextSizes[1].evaluate(o,{},f)],(y[0]>Ic||y[1]>Ic)&&m(`${t.layerIds[0]}: Value for "text-size" is >= 255. Reduce your "text-size".`)),t.addSymbols(t.text,g,y,s,a,o,c,e,l.lineStartIndex,l.lineLength,p,f);for(const m of h)u[m]=t.text.placedSymbolArray.length-1;return 4*g.length}function Cc(t){for(const e in t)return t[e];return null}function Ac(t,e,i,r){const n=t.compareText;if(e in n){const t=n[e];for(let e=t.length-1;e>=0;e--)if(r.dist(t[e])t.id)),this.index=e.index,this.pixelRatio=e.pixelRatio,this.sourceLayerIndex=e.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=fo([]),this.placementViewportMatrix=fo([]);const i=this.layers[0]._unevaluatedLayout._values;this.textSizeData=ec(this.zoom,i["text-size"]),this.iconSizeData=ec(this.zoom,i["icon-size"]);const r=this.layers[0].layout,n=r.get("symbol-sort-key"),a=r.get("symbol-z-order");this.canOverlap="never"!==$c(r,"text-overlap","text-allow-overlap")||"never"!==$c(r,"icon-overlap","icon-allow-overlap")||r.get("text-ignore-placement")||r.get("icon-ignore-placement"),this.sortFeaturesByKey="viewport-y"!==a&&!n.isConstant(),this.sortFeaturesByY=("viewport-y"===a||"auto"===a&&!this.sortFeaturesByKey)&&this.canOverlap,"point"===r.get("symbol-placement")&&(this.writingModes=r.get("text-writing-mode").map((e=>t.WritingMode[e]))),this.stateDependentLayerIds=this.layers.filter((t=>t.isStateDependent())).map((t=>t.id)),this.sourceID=e.sourceID}createArrays(){this.text=new Bc(new Va(this.layers,this.zoom,(t=>/^text/.test(t)))),this.icon=new Bc(new Va(this.layers,this.zoom,(t=>/^icon/.test(t)))),this.glyphOffsetArray=new Wn,this.lineVertexArray=new Kn,this.symbolInstances=new Hn}calculateGlyphDependencies(t,e,i,r,n){for(let a=0;a0)&&("constant"!==o.value.kind||o.value.value.length>0),h="constant"!==l.value.kind||!!l.value.value||Object.keys(l.parameters).length>0,u=a.get("symbol-sort-key");if(this.features=[],!c&&!h)return;const p=i.iconDependencies,d=i.glyphDependencies,m=i.availableImages,f=new Yr(this.zoom);for(const{feature:g,id:_,index:y,sourceLayerIndex:x}of e){const e=n._featureFilter.needGeometry,i=ja(g,e);if(!n._featureFilter.filter(f,i,r))continue;let s,l;if(e||(i.geometry=Za(g)),c){const t=n.getValueAndResolveTokens("text-field",i,r,m),e=Ft.factory(t);Lc(e)&&(this.hasRTLText=!0),(!this.hasRTLText||"unavailable"===Wr()||this.hasRTLText&&Jr.isParsed())&&(s=ol(e,n,i))}if(h){const t=n.getValueAndResolveTokens("icon-image",i,r,m);l=t instanceof Vt?t:Vt.fromString(t)}if(!s&&!l)continue;const v=this.sortFeaturesByKey?u.evaluate(i,{},r):void 0;if(this.features.push({id:_,text:s,icon:l,index:y,sourceLayerIndex:x,geometry:i.geometry,properties:g.properties,type:kc[g.type],sortKey:v}),l&&(p[l.name]=!0),s){const e=o.evaluate(i,{},r).join(","),n="viewport"!==a.get("text-rotation-alignment")&&"point"!==a.get("symbol-placement");this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(t.WritingMode.vertical)>=0;for(const t of s.sections)if(t.image)p[t.image.name]=!0;else{const i=Pr(s.toString()),r=t.fontStack||e,a=d[r]=d[r]||{};this.calculateGlyphDependencies(t.text,a,n,this.allowVerticalPlacement,i)}}}"line"===a.get("symbol-placement")&&(this.features=function(t){const e={},i={},r=[];let n=0;function a(e){r.push(t[e]),n++}function o(t,e,n){const a=i[t];return delete i[t],i[e]=a,r[a].geometry[0].pop(),r[a].geometry[0]=r[a].geometry[0].concat(n[0]),a}function s(t,i,n){const a=e[i];return delete e[i],e[t]=a,r[a].geometry[0].shift(),r[a].geometry[0]=n[0].concat(r[a].geometry[0]),a}function l(t,e,i){const r=i?e[0][e[0].length-1]:e[0][0];return`${t}:${r.x}:${r.y}`}for(let c=0;ct.geometry))}(this.features)),this.sortFeaturesByKey&&this.features.sort(((t,e)=>t.sortKey-e.sortKey))}update(t,e,i){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(t,e,this.layers,i),this.icon.programConfigurations.updatePaintArrays(t,e,this.layers,i))}isEmpty(){return 0===this.symbolInstances.length&&!this.hasRTLText}uploadPending(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload}upload(t){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(t),this.iconCollisionBox.upload(t)),this.text.upload(t,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(t,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0}destroyDebugData(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()}destroy(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()}addToLineVertexArray(t,e){const i=this.lineVertexArray.length;if(void 0!==t.segment){let i=t.dist(e[t.segment+1]),r=t.dist(e[t.segment]);const n={};for(let a=t.segment+1;a=0;a--)n[a]={x:e[a].x,y:e[a].y,tileUnitDistanceFromAnchor:r},a>0&&(r+=e[a-1].dist(e[a]));for(let t=0;t0}hasIconData(){return this.icon.segments.get().length>0}hasDebugData(){return this.textCollisionBox&&this.iconCollisionBox}hasTextCollisionBoxData(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0}hasIconCollisionBoxData(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0}addIndicesForPlacedSymbol(t,e){const i=t.placedSymbolArray.get(e),r=i.vertexStartIndex+4*i.numGlyphs;for(let n=i.vertexStartIndex;nr[t]-r[e]||n[e]-n[t])),a}addToSortKeyRanges(t,e){const i=this.sortKeyRanges[this.sortKeyRanges.length-1];i&&i.sortKey===e?i.symbolInstanceEnd=t+1:this.sortKeyRanges.push({sortKey:e,symbolInstanceStart:t,symbolInstanceEnd:t+1})}sortFeatures(t){if(this.sortFeaturesByY&&this.sortedAngle!==t&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(t),this.sortedAngle=t,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(const t of this.symbolInstanceIndexes){const e=this.symbolInstances.get(t);this.featureSortOrder.push(e.featureIndex),[e.rightJustifiedTextSymbolIndex,e.centerJustifiedTextSymbolIndex,e.leftJustifiedTextSymbolIndex].forEach(((t,e,i)=>{t>=0&&i.indexOf(t)===e&&this.addIndicesForPlacedSymbol(this.text,t)})),e.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,e.verticalPlacedTextSymbolIndex),e.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,e.placedIconSymbolIndex),e.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,e.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}}}Ir("SymbolBucket",Fc,{omit:["layers","collisionBoxArray","features","compareText"]}),Fc.MAX_GLYPHS=65535,Fc.addDynamicAttributes=Dc;const Oc=new dn({"symbol-placement":new ln(rt.layout_symbol["symbol-placement"]),"symbol-spacing":new ln(rt.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new ln(rt.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new cn(rt.layout_symbol["symbol-sort-key"]),"symbol-z-order":new ln(rt.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new ln(rt.layout_symbol["icon-allow-overlap"]),"icon-overlap":new ln(rt.layout_symbol["icon-overlap"]),"icon-ignore-placement":new ln(rt.layout_symbol["icon-ignore-placement"]),"icon-optional":new ln(rt.layout_symbol["icon-optional"]),"icon-rotation-alignment":new ln(rt.layout_symbol["icon-rotation-alignment"]),"icon-size":new cn(rt.layout_symbol["icon-size"]),"icon-text-fit":new ln(rt.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new ln(rt.layout_symbol["icon-text-fit-padding"]),"icon-image":new cn(rt.layout_symbol["icon-image"]),"icon-rotate":new cn(rt.layout_symbol["icon-rotate"]),"icon-padding":new cn(rt.layout_symbol["icon-padding"]),"icon-keep-upright":new ln(rt.layout_symbol["icon-keep-upright"]),"icon-offset":new cn(rt.layout_symbol["icon-offset"]),"icon-anchor":new cn(rt.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new ln(rt.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new ln(rt.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new ln(rt.layout_symbol["text-rotation-alignment"]),"text-field":new cn(rt.layout_symbol["text-field"]),"text-font":new cn(rt.layout_symbol["text-font"]),"text-size":new cn(rt.layout_symbol["text-size"]),"text-max-width":new cn(rt.layout_symbol["text-max-width"]),"text-line-height":new ln(rt.layout_symbol["text-line-height"]),"text-letter-spacing":new cn(rt.layout_symbol["text-letter-spacing"]),"text-justify":new cn(rt.layout_symbol["text-justify"]),"text-radial-offset":new cn(rt.layout_symbol["text-radial-offset"]),"text-variable-anchor":new ln(rt.layout_symbol["text-variable-anchor"]),"text-anchor":new cn(rt.layout_symbol["text-anchor"]),"text-max-angle":new ln(rt.layout_symbol["text-max-angle"]),"text-writing-mode":new ln(rt.layout_symbol["text-writing-mode"]),"text-rotate":new cn(rt.layout_symbol["text-rotate"]),"text-padding":new ln(rt.layout_symbol["text-padding"]),"text-keep-upright":new ln(rt.layout_symbol["text-keep-upright"]),"text-transform":new cn(rt.layout_symbol["text-transform"]),"text-offset":new cn(rt.layout_symbol["text-offset"]),"text-allow-overlap":new ln(rt.layout_symbol["text-allow-overlap"]),"text-overlap":new ln(rt.layout_symbol["text-overlap"]),"text-ignore-placement":new ln(rt.layout_symbol["text-ignore-placement"]),"text-optional":new ln(rt.layout_symbol["text-optional"])});var Vc={paint:new dn({"icon-opacity":new cn(rt.paint_symbol["icon-opacity"]),"icon-color":new cn(rt.paint_symbol["icon-color"]),"icon-halo-color":new cn(rt.paint_symbol["icon-halo-color"]),"icon-halo-width":new cn(rt.paint_symbol["icon-halo-width"]),"icon-halo-blur":new cn(rt.paint_symbol["icon-halo-blur"]),"icon-translate":new ln(rt.paint_symbol["icon-translate"]),"icon-translate-anchor":new ln(rt.paint_symbol["icon-translate-anchor"]),"text-opacity":new cn(rt.paint_symbol["text-opacity"]),"text-color":new cn(rt.paint_symbol["text-color"],{runtimeType:ft,getOverride:t=>t.textColor,hasOverride:t=>!!t.textColor}),"text-halo-color":new cn(rt.paint_symbol["text-halo-color"]),"text-halo-width":new cn(rt.paint_symbol["text-halo-width"]),"text-halo-blur":new cn(rt.paint_symbol["text-halo-blur"]),"text-translate":new ln(rt.paint_symbol["text-translate"]),"text-translate-anchor":new ln(rt.paint_symbol["text-translate-anchor"])}),layout:Oc};class Uc{constructor(t){if(void 0===t.property.overrides)throw new Error("overrides must be provided to instantiate FormatSectionOverride class");this.type=t.property.overrides?t.property.overrides.runtimeType:ut,this.defaultValue=t}evaluate(t){if(t.formattedSection){const e=this.defaultValue.property.overrides;if(e&&e.hasOverride(t.formattedSection))return e.getOverride(t.formattedSection)}return t.feature&&t.featureState?this.defaultValue.evaluate(t.feature,t.featureState):this.defaultValue.property.specification.default}eachChild(t){this.defaultValue.isConstant()||t(this.defaultValue.value._styleExpression.expression)}outputDefined(){return!1}serialize(){return null}}Ir("FormatSectionOverride",Uc,{omit:["defaultValue"]});class Nc extends fn{constructor(t){super(t,Vc)}recalculate(t,e){if(super.recalculate(t,e),"auto"===this.layout.get("icon-rotation-alignment")&&(this.layout._values["icon-rotation-alignment"]="point"!==this.layout.get("symbol-placement")?"map":"viewport"),"auto"===this.layout.get("text-rotation-alignment")&&(this.layout._values["text-rotation-alignment"]="point"!==this.layout.get("symbol-placement")?"map":"viewport"),"auto"===this.layout.get("text-pitch-alignment")&&(this.layout._values["text-pitch-alignment"]="map"===this.layout.get("text-rotation-alignment")?"map":"viewport"),"auto"===this.layout.get("icon-pitch-alignment")&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),"point"===this.layout.get("symbol-placement")){const t=this.layout.get("text-writing-mode");if(t){const e=[];for(const i of t)e.indexOf(i)<0&&e.push(i);this.layout._values["text-writing-mode"]=e}else this.layout._values["text-writing-mode"]=["horizontal"]}this._setPaintOverrides()}getValueAndResolveTokens(t,e,i,r){const n=this.layout.get(t).evaluate(e,{},i,r),a=this._unevaluatedLayout._values[t];return a.isDataDriven()||Di(a.value)||!n?n:function(t,e){return e.replace(/{([^{}]+)}/g,((e,i)=>i in t?String(t[i]):""))}(e.properties,n)}createBucket(t){return new Fc(t)}queryRadius(){return 0}queryIntersectsFeature(){throw new Error("Should take a different path in FeatureIndex")}_setPaintOverrides(){for(const t of Vc.paint.overridableProperties){if(!Nc.hasPaintOverride(this.layout,t))continue;const e=this.paint.get(t),i=new Uc(e),r=new Pi(i,e.property.specification);let n=null;n="constant"===e.value.kind||"source"===e.value.kind?new Bi("source",r):new Ri("composite",r,e.value.zoomStops),this.paint._values[t]=new on(e.property,n,e.parameters)}}_handleOverridablePaintPropertyUpdate(t,e,i){return!(!this.layout||e.isDataDriven()||i.isDataDriven())&&Nc.hasPaintOverride(this.layout,t)}static hasPaintOverride(t,e){const i=t.get("text-field"),r=Vc.paint.properties[e];let n=!1;const a=t=>{for(const e of t)if(r.overrides&&r.overrides.hasOverride(e))return void(n=!0)};if("constant"===i.value.kind&&i.value.value instanceof Ft)a(i.value.value.sections);else if("source"===i.value.kind){const t=e=>{n||(e instanceof qt&&$t(e.value)===xt?a(e.value.sections):e instanceof hi?a(e.sections):e.eachChild(t))},e=i.value;e._styleExpression&&t(e._styleExpression.expression)}return n}}function $c(t,e,i){let r="never";const n=t.get(e);return n?r=n:t.get(i)&&(r="always"),r}var Gc={paint:new dn({"background-color":new ln(rt.paint_background["background-color"]),"background-pattern":new un(rt.paint_background["background-pattern"]),"background-opacity":new ln(rt.paint_background["background-opacity"])})},qc={paint:new dn({"raster-opacity":new ln(rt.paint_raster["raster-opacity"]),"raster-hue-rotate":new ln(rt.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new ln(rt.paint_raster["raster-brightness-min"]),"raster-brightness-max":new ln(rt.paint_raster["raster-brightness-max"]),"raster-saturation":new ln(rt.paint_raster["raster-saturation"]),"raster-contrast":new ln(rt.paint_raster["raster-contrast"]),"raster-resampling":new ln(rt.paint_raster["raster-resampling"]),"raster-fade-duration":new ln(rt.paint_raster["raster-fade-duration"])})};class Zc extends fn{constructor(t){super(t,{}),this.onAdd=t=>{this.implementation.onAdd&&this.implementation.onAdd(t,t.painter.context.gl)},this.onRemove=t=>{this.implementation.onRemove&&this.implementation.onRemove(t,t.painter.context.gl)},this.implementation=t}is3D(){return"3d"===this.implementation.renderingMode}hasOffscreenPass(){return void 0!==this.implementation.prerender}recalculate(){}updateTransitions(){}hasTransition(){return!1}serialize(){throw new Error("Custom layers cannot be serialized")}}const jc={circle:class extends fn{constructor(t){super(t,ho)}createBucket(t){return new Ha(t)}queryRadius(t){const e=t;return oo("circle-radius",this,e)+oo("circle-stroke-width",this,e)+so(this.paint.get("circle-translate"))}queryIntersectsFeature(t,e,i,r,n,a,o,s){const l=lo(t,this.paint.get("circle-translate"),this.paint.get("circle-translate-anchor"),a.angle,o),c=this.paint.get("circle-radius").evaluate(e,i)+this.paint.get("circle-stroke-width").evaluate(e,i),h="map"===this.paint.get("circle-pitch-alignment"),u=h?l:function(t,e){return t.map((t=>To(t,e)))}(l,s),p=h?c*o:c;for(const d of r)for(const t of d){const e=h?t:To(t,s);let i=p;const r=bo([],[t.x,t.y,0,1],s);if("viewport"===this.paint.get("circle-pitch-scale")&&"map"===this.paint.get("circle-pitch-alignment")?i*=r[3]/a.cameraToCenterDistance:"map"===this.paint.get("circle-pitch-scale")&&"viewport"===this.paint.get("circle-pitch-alignment")&&(i*=a.cameraToCenterDistance/r[3]),Ka(u,e,i))return!0}return!1}},heatmap:class extends fn{constructor(t){super(t,So),this._updateColorRamp()}createBucket(t){return new Eo(t)}_handleSpecialPaintPropertyUpdate(t){"heatmap-color"===t&&this._updateColorRamp()}_updateColorRamp(){this.colorRamp=Mo({expression:this._transitionablePaint._values["heatmap-color"].value.expression,evaluationKey:"heatmapDensity",image:this.colorRamp}),this.colorRampTexture=null}resize(){this.heatmapFbo&&(this.heatmapFbo.destroy(),this.heatmapFbo=null)}queryRadius(){return 0}queryIntersectsFeature(){return!1}hasOffscreenPass(){return 0!==this.paint.get("heatmap-opacity")&&"none"!==this.visibility}},hillshade:class extends fn{constructor(t){super(t,Po)}hasOffscreenPass(){return 0!==this.paint.get("hillshade-exaggeration")&&"none"!==this.visibility}},fill:class extends fn{constructor(t){super(t,ys)}recalculate(t,e){super.recalculate(t,e);const i=this.paint._values["fill-outline-color"];"constant"===i.value.kind&&void 0===i.value.value&&(this.paint._values["fill-outline-color"]=this.paint._values["fill-color"])}createBucket(t){return new gs(t)}queryRadius(){return so(this.paint.get("fill-translate"))}queryIntersectsFeature(t,e,i,r,n,a,o){return Ja(lo(t,this.paint.get("fill-translate"),this.paint.get("fill-translate-anchor"),a.angle,o),r)}isTileClipped(){return!0}},"fill-extrusion":class extends fn{constructor(t){super(t,Us)}createBucket(t){return new Fs(t)}queryRadius(){return so(this.paint.get("fill-extrusion-translate"))}is3D(){return!0}queryIntersectsFeature(t,e,i,r,n,a,o,s){const l=lo(t,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),a.angle,o),c=this.paint.get("fill-extrusion-height").evaluate(e,i),h=this.paint.get("fill-extrusion-base").evaluate(e,i),u=function(t,e,i,r){const n=[];for(const a of t){const t=[a.x,a.y,0,1];bo(t,t,e),n.push(new S(t[0]/t[3],t[1]/t[3]))}return n}(l,s),p=function(t,e,i,r){const n=[],a=[],o=r[8]*e,s=r[9]*e,l=r[10]*e,c=r[11]*e,h=r[8]*i,u=r[9]*i,p=r[10]*i,d=r[11]*i;for(const m of t){const t=[],e=[];for(const i of m){const n=i.x,a=i.y,m=r[0]*n+r[4]*a+r[12],f=r[1]*n+r[5]*a+r[13],g=r[2]*n+r[6]*a+r[14],_=r[3]*n+r[7]*a+r[15],y=g+l,x=_+c,v=m+h,b=f+u,w=g+p,T=_+d,E=new S((m+o)/x,(f+s)/x);E.z=y/x,t.push(E);const I=new S(v/T,b/T);I.z=w/T,e.push(I)}n.push(t),a.push(e)}return[n,a]}(r,h,c,s);return function(t,e,i){let r=1/0;Ja(i,e)&&(r=$s(i,e[0]));for(let n=0;n=3)for(let e=0;e{this._triggered=!1,this._callback()})}trigger(){this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout((()=>{this._triggered=!1,this._callback()}),0))}remove(){delete this._channel,this._callback=()=>{}}}const Hc=6371008.8;class Wc{constructor(t,e){if(isNaN(t)||isNaN(e))throw new Error(`Invalid LngLat object: (${t}, ${e})`);if(this.lng=+t,this.lat=+e,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")}wrap(){return new Wc(o(this.lng,-180,180),this.lat)}toArray(){return[this.lng,this.lat]}toString(){return`LngLat(${this.lng}, ${this.lat})`}distanceTo(t){const e=Math.PI/180,i=this.lat*e,r=t.lat*e,n=Math.sin(i)*Math.sin(r)+Math.cos(i)*Math.cos(r)*Math.cos((t.lng-this.lng)*e);return Hc*Math.acos(Math.min(n,1))}toBounds(t=0){const e=360*t/40075017,i=e/Math.cos(Math.PI/180*this.lat);return new Kc(new Wc(this.lng-i,this.lat-e),new Wc(this.lng+i,this.lat+e))}static convert(t){if(t instanceof Wc)return t;if(Array.isArray(t)&&(2===t.length||3===t.length))return new Wc(Number(t[0]),Number(t[1]));if(!Array.isArray(t)&&"object"==typeof t&&null!==t)return new Wc(Number("lng"in t?t.lng:t.lon),Number(t.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: , lat: }, an object {lon: , lat: }, or an array of [, ]")}}class Kc{constructor(t,e){t&&(e?this.setSouthWest(t).setNorthEast(e):4===t.length?this.setSouthWest([t[0],t[1]]).setNorthEast([t[2],t[3]]):this.setSouthWest(t[0]).setNorthEast(t[1]))}setNorthEast(t){return this._ne=t instanceof Wc?new Wc(t.lng,t.lat):Wc.convert(t),this}setSouthWest(t){return this._sw=t instanceof Wc?new Wc(t.lng,t.lat):Wc.convert(t),this}extend(t){const e=this._sw,i=this._ne;let r,n;if(t instanceof Wc)r=t,n=t;else{if(!(t instanceof Kc))return Array.isArray(t)?4===t.length||t.every(Array.isArray)?this.extend(Kc.convert(t)):this.extend(Wc.convert(t)):this;if(r=t._sw,n=t._ne,!r||!n)return this}return e||i?(e.lng=Math.min(r.lng,e.lng),e.lat=Math.min(r.lat,e.lat),i.lng=Math.max(n.lng,i.lng),i.lat=Math.max(n.lat,i.lat)):(this._sw=new Wc(r.lng,r.lat),this._ne=new Wc(n.lng,n.lat)),this}getCenter(){return new Wc((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)}getSouthWest(){return this._sw}getNorthEast(){return this._ne}getNorthWest(){return new Wc(this.getWest(),this.getNorth())}getSouthEast(){return new Wc(this.getEast(),this.getSouth())}getWest(){return this._sw.lng}getSouth(){return this._sw.lat}getEast(){return this._ne.lng}getNorth(){return this._ne.lat}toArray(){return[this._sw.toArray(),this._ne.toArray()]}toString(){return`LngLatBounds(${this._sw.toString()}, ${this._ne.toString()})`}isEmpty(){return!(this._sw&&this._ne)}contains(t){const{lng:e,lat:i}=Wc.convert(t);let r=this._sw.lng<=e&&e<=this._ne.lng;return this._sw.lng>this._ne.lng&&(r=this._sw.lng>=e&&e>=this._ne.lng),this._sw.lat<=i&&i<=this._ne.lat&&r}static convert(t){return t instanceof Kc?t:t?new Kc(t):t}}const Jc=2*Math.PI*Hc;function Yc(t){return Jc*Math.cos(t*Math.PI/180)}function Qc(t){return(180+t)/360}function th(t){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+t*Math.PI/360)))/360}function eh(t,e){return t/Yc(e)}function ih(t){return 360/Math.PI*Math.atan(Math.exp((180-360*t)*Math.PI/180))-90}class rh{constructor(t,e,i=0){this.x=+t,this.y=+e,this.z=+i}static fromLngLat(t,e=0){const i=Wc.convert(t);return new rh(Qc(i.lng),th(i.lat),eh(e,i.lat))}toLngLat(){return new Wc(360*this.x-180,ih(this.y))}toAltitude(){return this.z*Yc(ih(this.y))}meterInMercatorCoordinateUnits(){return 1/Jc*(t=ih(this.y),1/Math.cos(t*Math.PI/180));var t}}function nh(t,e,i){var r=2*Math.PI*6378137/256/Math.pow(2,i);return[t*r-2*Math.PI*6378137/2,e*r-2*Math.PI*6378137/2]}class ah{constructor(t,e,i){if(t<0||t>25||i<0||i>=Math.pow(2,t)||e<0||e>=Math.pow(2,t))throw new Error(`x=${e}, y=${i}, z=${t} outside of bounds. 0<=x<${Math.pow(2,t)}, 0<=y<${Math.pow(2,t)} 0<=z<=25 `);this.z=t,this.x=e,this.y=i,this.key=lh(0,t,t,e,i)}equals(t){return this.z===t.z&&this.x===t.x&&this.y===t.y}url(t,e,i){const r=(a=this.y,o=this.z,s=nh(256*(n=this.x),256*(a=Math.pow(2,o)-a-1),o),l=nh(256*(n+1),256*(a+1),o),s[0]+","+s[1]+","+l[0]+","+l[1]);var n,a,o,s,l;const c=function(t,e,i){let r,n="";for(let a=t;a>0;a--)r=1<1?"@2x":"").replace(/{quadkey}/g,c).replace(/{bbox-epsg-3857}/g,r)}isChildOf(t){const e=this.z-t.z;return e>0&&t.x===this.x>>e&&t.y===this.y>>e}getTilePoint(t){const e=Math.pow(2,this.z);return new S((t.x*e-this.x)*$a,(t.y*e-this.y)*$a)}toString(){return`${this.z}/${this.x}/${this.y}`}}class oh{constructor(t,e){this.wrap=t,this.canonical=e,this.key=lh(t,e.z,e.z,e.x,e.y)}}class sh{constructor(t,e,i,r,n){if(t= z; overscaledZ = ${t}; z = ${i}`);this.overscaledZ=t,this.wrap=e,this.canonical=new ah(i,+r,+n),this.key=lh(e,t,i,r,n)}clone(){return new sh(this.overscaledZ,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)}equals(t){return this.overscaledZ===t.overscaledZ&&this.wrap===t.wrap&&this.canonical.equals(t.canonical)}scaledTo(t){if(t>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${t}; overscaledZ = ${this.overscaledZ}`);const e=this.canonical.z-t;return t>this.canonical.z?new sh(t,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new sh(t,this.wrap,t,this.canonical.x>>e,this.canonical.y>>e)}calculateScaledKey(t,e){if(t>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${t}; overscaledZ = ${this.overscaledZ}`);const i=this.canonical.z-t;return t>this.canonical.z?lh(this.wrap*+e,t,this.canonical.z,this.canonical.x,this.canonical.y):lh(this.wrap*+e,t,t,this.canonical.x>>i,this.canonical.y>>i)}isChildOf(t){if(t.wrap!==this.wrap)return!1;const e=this.canonical.z-t.canonical.z;return 0===t.overscaledZ||t.overscaledZ>e&&t.canonical.y===this.canonical.y>>e}children(t){if(this.overscaledZ>=t)return[new sh(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];const e=this.canonical.z+1,i=2*this.canonical.x,r=2*this.canonical.y;return[new sh(e,this.wrap,e,i,r),new sh(e,this.wrap,e,i+1,r),new sh(e,this.wrap,e,i,r+1),new sh(e,this.wrap,e,i+1,r+1)]}isLessThan(t){return this.wrapt.wrap)&&(this.overscaledZt.overscaledZ)&&(this.canonical.xt.canonical.x)&&this.canonical.ythis.max&&(this.max=e),e=this.dim+1||e<-1||e>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(e+1)*this.stride+(t+1)}_unpackMapbox(t,e,i){return(256*t*256+256*e+i)/10-1e4}_unpackTerrarium(t,e,i){return 256*t+e+i/256-32768}getPixels(){return new ko({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))}backfillBorder(t,e,i){if(this.dim!==t.dim)throw new Error("dem dimension mismatch");let r=e*this.dim,n=e*this.dim+this.dim,a=i*this.dim,o=i*this.dim+this.dim;switch(e){case-1:r=n-1;break;case 1:n=r+1}switch(i){case-1:a=o-1;break;case 1:o=a+1}const s=-e*this.dim,l=-i*this.dim;for(let c=a;c=this._numberToString.length)throw new Error(`Out of bounds. Index requested n=${t} can't be >= this._numberToString.length ${this._numberToString.length}`);return this._numberToString[t]}}class uh{constructor(t,e,i,r,n){this.type="Feature",this._vectorTileFeature=t,t._z=e,t._x=i,t._y=r,this.properties=t.properties,this.id=n}get geometry(){return void 0===this._geometry&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry}set geometry(t){this._geometry=t}toJSON(){const t={geometry:this.geometry};for(const e in this)"_geometry"!==e&&"_vectorTileFeature"!==e&&(t[e]=this[e]);return t}}class ph{constructor(t,e){this.tileID=t,this.x=t.canonical.x,this.y=t.canonical.y,this.z=t.canonical.z,this.grid=new Er($a,16,0),this.grid3D=new Er($a,16,0),this.featureIndexArray=new Yn,this.promoteId=e}insert(t,e,i,r,n,a){const o=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(i,r,n);const s=a?this.grid3D:this.grid;for(let l=0;l=0&&i[3]>=0&&s.insert(o,i[0],i[1],i[2],i[3])}}loadVTLayers(){return this.vtLayers||(this.vtLayers=new ws.VectorTile(new cl(this.rawTileData)).layers,this.sourceLayerCoder=new hh(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers}query(t,e,i,r){this.loadVTLayers();const n=t.params||{},a=$a/t.tileSize/t.scale,o=Hi(n.filter),s=t.queryGeometry,l=t.queryPadding*a,c=mh(s),h=this.grid.query(c.minX-l,c.minY-l,c.maxX+l,c.maxY+l),u=mh(t.cameraQueryGeometry),p=this.grid3D.query(u.minX-l,u.minY-l,u.maxX+l,u.maxY+l,((e,i,r,n)=>function(t,e,i,r,n){for(const o of t)if(e<=o.x&&i<=o.y&&r>=o.x&&n>=o.y)return!0;const a=[new S(e,i),new S(e,n),new S(r,n),new S(r,i)];if(t.length>2)for(const o of a)if(no(t,o))return!0;for(let o=0;o(u||(u=Za(e)),i.queryIntersectsFeature(s,e,r,u,this.z,t.transform,a,t.pixelPosMatrix))))}return d}loadMatchingFeature(t,e,i,r,n,a,o,l,c,h,u){const p=this.bucketLayerIDs[e];if(a&&!function(t,e){for(let i=0;i=0)return!0;return!1}(a,p))return;const d=this.sourceLayerCoder.decode(i),m=this.vtLayers[d].feature(r);if(n.needGeometry){const t=ja(m,!0);if(!n.filter(new Yr(this.tileID.overscaledZ),t,this.tileID.canonical))return}else if(!n.filter(new Yr(this.tileID.overscaledZ),m))return;const f=this.getId(m,d);for(let g=0;g{const o=e instanceof sn?e.get(a):null;return o&&o.evaluate?o.evaluate(i,r,n):o}))}function mh(t){let e=1/0,i=1/0,r=-1/0,n=-1/0;for(const a of t)e=Math.min(e,a.x),i=Math.min(i,a.y),r=Math.max(r,a.x),n=Math.max(n,a.y);return{minX:e,minY:i,maxX:r,maxY:n}}function fh(t,e){return e-t}var gh;Ir("FeatureIndex",ph,{omit:["rawTileData","sourceLayerCoder"]}),t.PerformanceMarkers=void 0,(gh=t.PerformanceMarkers||(t.PerformanceMarkers={})).create="create",gh.load="load",gh.fullLoad="fullLoad";let _h=null,yh=[];const xh=1e3/30,vh={mark(t){performance.mark(t)},frame(t){const e=t;null!=_h&&yh.push(e-_h),_h=e},clearMetrics(){_h=null,yh=[],performance.clearMeasures("loadTime"),performance.clearMeasures("fullLoadTime");for(const e in t.PerformanceMarkers)performance.clearMarks(t.PerformanceMarkers[e])},getPerformanceMetrics(){performance.measure("loadTime",t.PerformanceMarkers.create,t.PerformanceMarkers.load),performance.measure("fullLoadTime",t.PerformanceMarkers.create,t.PerformanceMarkers.fullLoad);const e=performance.getEntriesByName("loadTime")[0].duration,i=performance.getEntriesByName("fullLoadTime")[0].duration,r=yh.length,n=1/(yh.reduce(((t,e)=>t+e),0)/r/1e3),a=yh.filter((t=>t>xh)).reduce(((t,e)=>t+(e-xh)/xh),0);return{loadTime:e,fullLoadTime:i,fps:n,percentDroppedFrames:a/(r+a)*100}}};t.AJAXError=$,t.ARRAY_TYPE=po,t.Actor=class{constructor(t,e,i){this.target=t,this.parent=e,this.mapId=i,this.callbacks={},this.tasks={},this.taskQueue=[],this.cancelCallbacks={},c(["receive","process"],this),this.invoker=new Xc(this.process),this.target.addEventListener("message",this.receive,!1),this.globalScope=_()?t:window}send(t,e,i,r,n=!1){const a=Math.round(1e18*Math.random()).toString(36).substring(0,10);i&&(this.callbacks[a]=i);const o=w(this.globalScope)?void 0:[];return this.target.postMessage({id:a,type:t,hasCallback:!!i,targetMapId:r,mustQueue:n,sourceMapId:this.mapId,data:Cr(e,o)},o),{cancel:()=>{i&&delete this.callbacks[a],this.target.postMessage({id:a,type:"",targetMapId:r,sourceMapId:this.mapId})}}}receive(t){const e=t.data,i=e.id;if(i&&(!e.targetMapId||this.mapId===e.targetMapId))if(""===e.type){delete this.tasks[i];const t=this.cancelCallbacks[i];delete this.cancelCallbacks[i],t&&t()}else _()||e.mustQueue?(this.tasks[i]=e,this.taskQueue.push(i),this.invoker.trigger()):this.processTask(i,e)}process(){if(!this.taskQueue.length)return;const t=this.taskQueue.shift(),e=this.tasks[t];delete this.tasks[t],this.taskQueue.length&&this.invoker.trigger(),e&&this.processTask(t,e)}processTask(t,e){if(""===e.type){const i=this.callbacks[t];delete this.callbacks[t],i&&(e.error?i(Ar(e.error)):i(null,Ar(e.data)))}else{let i=!1;const r=w(this.globalScope)?void 0:[],n=e.hasCallback?(e,n)=>{i=!0,delete this.cancelCallbacks[t],this.target.postMessage({id:t,type:"",sourceMapId:this.mapId,error:e?Cr(e):null,data:Cr(n,r)},r)}:t=>{i=!0};let a=null;const o=Ar(e.data);if(this.parent[e.type])a=this.parent[e.type](e.sourceMapId,o,n);else if(this.parent.getWorkerSource){const t=e.type.split(".");a=this.parent.getWorkerSource(e.sourceMapId,t[0],o.source)[t[1]](o,n)}else n(new Error(`Could not find function ${e.type}`));!i&&a&&a.cancel&&(this.cancelCallbacks[t]=a.cancel)}}remove(){this.invoker.remove(),this.target.removeEventListener("message",this.receive,!1)}},t.AlphaImage=Ao,t.CanonicalTileID=ah,t.CollisionBoxArray=qn,t.CollisionCircleLayoutArray=class extends Pn{},t.Color=Lt,t.DEMData=ch,t.DataConstantProperty=ln,t.DictionaryCoder=hh,t.EXTENT=$a,t.ErrorEvent=et,t.EvaluationParameters=Yr,t.Event=tt,t.Evented=it,t.FeatureIndex=ph,t.FillBucket=gs,t.FillExtrusionBucket=Fs,t.GeoJSONFeature=uh,t.ImageAtlas=Fl,t.ImagePosition=Rl,t.LineBucket=Ks,t.LineStripIndexArray=class extends Nn{},t.LngLat=Wc,t.LngLatBounds=Kc,t.MercatorCoordinate=rh,t.ONE_EM=ll,t.OverscaledTileID=sh,t.PerformanceUtils=vh,t.PosArray=Qn,t.Properties=dn,t.QuadTriangleArray=class extends Ln{},t.RGBAImage=ko,t.RasterBoundsArray=class extends wn{},t.RequestPerformance=class{constructor(t){this._marks={start:[t.url,"start"].join("#"),end:[t.url,"end"].join("#"),measure:t.url.toString()},performance.mark(this._marks.start)}finish(){performance.mark(this._marks.end);let t=performance.getEntriesByName(this._marks.measure);return 0===t.length&&(performance.measure(this._marks.measure,this._marks.start,this._marks.end),t=performance.getEntriesByName(this._marks.measure),performance.clearMarks(this._marks.start),performance.clearMarks(this._marks.end),performance.clearMeasures(this._marks.measure)),t}},t.ResourceType=N,t.SegmentVector=fa,t.SymbolBucket=Fc,t.Transitionable=en,t.TriangleIndexArray=ua,t.Uniform1f=Ca,t.Uniform1i=class extends za{constructor(t,e){super(t,e),this.current=0}set(t){this.current!==t&&(this.current=t,this.gl.uniform1i(this.location,t))}},t.Uniform2f=class extends za{constructor(t,e){super(t,e),this.current=[0,0]}set(t){t[0]===this.current[0]&&t[1]===this.current[1]||(this.current=t,this.gl.uniform2f(this.location,t[0],t[1]))}},t.Uniform3f=class extends za{constructor(t,e){super(t,e),this.current=[0,0,0]}set(t){t[0]===this.current[0]&&t[1]===this.current[1]&&t[2]===this.current[2]||(this.current=t,this.gl.uniform3f(this.location,t[0],t[1],t[2]))}},t.Uniform4f=Aa,t.UniformColor=ka,t.UniformMatrix4f=class extends za{constructor(t,e){super(t,e),this.current=Ma}set(t){if(t[12]!==this.current[12]||t[0]!==this.current[0])return this.current=t,void this.gl.uniformMatrix4fv(this.location,!1,t);for(let e=1;e<16;e++)if(t[e]!==this.current[e]){this.current=t,this.gl.uniformMatrix4fv(this.location,!1,t);break}}},t.UnwrappedTileID=oh,t.ValidationError=nt,t.ZoomHistory=kr,t.add=function(t,e,i){return t[0]=e[0]+i[0],t[1]=e[1]+i[1],t[2]=e[2]+i[2],t},t.addDynamicAttributes=Dc,t.asyncAll=function(t,e,i){if(!t.length)return i(null,[]);let r=t.length;const n=new Array(t.length);let a=null;t.forEach(((t,o)=>{e(t,((t,e)=>{t&&(a=t),n[o]=e,0==--r&&i(a,n)}))}))},t.bezier=r,t.bindAll=c,t.cacheEntryPossiblyAdded=function(t){L++,L>P&&(t.getActor().send("enforceCacheSizeLimit",M),L=0)},t.clamp=a,t.clearTileCache=function(t){const e=caches.delete(C);t&&e.catch(t).then((()=>t()))},t.clipLine=hc,t.clone=function(t){var e=new po(16);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e},t.clone$1=p,t.clone$2=function(t){var e=new po(3);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e},t.collisionCircleLayout=al,t.config=z,t.copy=function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t},t.create=function(){var t=new po(16);return po!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0),t[0]=1,t[5]=1,t[10]=1,t[15]=1,t},t.create$1=mo,t.createExpression=Li,t.createFilter=Hi,t.createLayout=xn,t.createStyleLayer=function(t){return"custom"===t.type?new Zc(t):new jc[t.type](t)},t.cross=function(t,e,i){var r=e[0],n=e[1],a=e[2],o=i[0],s=i[1],l=i[2];return t[0]=n*l-a*s,t[1]=a*o-r*l,t[2]=r*s-n*o,t},t.dot=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]},t.dot$1=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]},t.ease=n,t.emitValidationErrors=Tr,t.enforceCacheSizeLimit=function(t){D(),A&&A.then((e=>{e.keys().then((i=>{for(let r=0;r{}}},t.identity=fo,t.invert=function(t,e){var i=e[0],r=e[1],n=e[2],a=e[3],o=e[4],s=e[5],l=e[6],c=e[7],h=e[8],u=e[9],p=e[10],d=e[11],m=e[12],f=e[13],g=e[14],_=e[15],y=i*s-r*o,x=i*l-n*o,v=i*c-a*o,b=r*l-n*s,w=r*c-a*s,T=n*c-a*l,E=h*f-u*m,S=h*g-p*m,I=h*_-d*m,z=u*g-p*f,C=u*_-d*f,A=p*_-d*g,k=y*A-x*C+v*z+b*I-w*S+T*E;return k?(t[0]=(s*A-l*C+c*z)*(k=1/k),t[1]=(n*C-r*A-a*z)*k,t[2]=(f*T-g*w+_*b)*k,t[3]=(p*w-u*T-d*b)*k,t[4]=(l*I-o*A-c*S)*k,t[5]=(i*A-n*I+a*S)*k,t[6]=(g*v-m*T-_*x)*k,t[7]=(h*T-p*v+d*x)*k,t[8]=(o*C-s*I+c*E)*k,t[9]=(r*I-i*C-a*E)*k,t[10]=(m*w-f*v+_*y)*k,t[11]=(u*v-h*w-d*y)*k,t[12]=(s*S-o*z-l*E)*k,t[13]=(i*z-r*S+n*E)*k,t[14]=(f*x-m*b-g*y)*k,t[15]=(h*b-u*x+p*y)*k,t):null},t.isImageBitmap=T,t.isSafari=w,t.isWorker=_,t.keysDifference=function(t,e){const i=[];for(const r in t)r in e||i.push(r);return i},t.lazyLoadRTLTextPlugin=function(){Jr.isLoading()||Jr.isLoaded()||"deferred"!==Wr()||Kr()},t.makeRequest=Z,t.mapObject=h,t.mercatorXfromLng=Qc,t.mercatorYfromLat=th,t.mercatorZfromAltitude=eh,t.mul=yo,t.mul$1=function(t,e,i){return t[0]=e[0]*i[0],t[1]=e[1]*i[1],t[2]=e[2]*i[2],t[3]=e[3]*i[3],t},t.multiply=go,t.nextPowerOfTwo=function(t){return t<=1?1:Math.pow(2,Math.ceil(Math.log(t)/Math.LN2))},t.normalize=function(t,e){var i=e[0],r=e[1],n=e[2],a=i*i+r*r+n*n;return a>0&&(a=1/Math.sqrt(a)),t[0]=e[0]*a,t[1]=e[1]*a,t[2]=e[2]*a,t},t.number=Se,t.ortho=function(t,e,i,r,n,a,o){var s=1/(e-i),l=1/(r-n),c=1/(a-o);return t[0]=-2*s,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*l,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*c,t[11]=0,t[12]=(e+i)*s,t[13]=(n+r)*l,t[14]=(o+a)*c,t[15]=1,t},t.parseCacheControl=y,t.parseGlyphPbf=function(t){return new cl(t).readFields(Pl,[])},t.pbf=cl,t.performSymbolLayout=function(e){e.bucket.createArrays(),e.bucket.tilePixelRatio=$a/(512*e.bucket.overscaling),e.bucket.compareText={},e.bucket.iconsNeedLinear=!1;const i=e.bucket.layers[0].layout,r=e.bucket.layers[0]._unevaluatedLayout._values,n={layoutIconSize:r["icon-size"].possiblyEvaluate(new Yr(e.bucket.zoom+1),e.canonical),layoutTextSize:r["text-size"].possiblyEvaluate(new Yr(e.bucket.zoom+1),e.canonical),textMaxSize:r["text-size"].possiblyEvaluate(new Yr(18))};if("composite"===e.bucket.textSizeData.kind){const{minZoom:t,maxZoom:i}=e.bucket.textSizeData;n.compositeTextSizes=[r["text-size"].possiblyEvaluate(new Yr(t),e.canonical),r["text-size"].possiblyEvaluate(new Yr(i),e.canonical)]}if("composite"===e.bucket.iconSizeData.kind){const{minZoom:t,maxZoom:i}=e.bucket.iconSizeData;n.compositeIconSizes=[r["icon-size"].possiblyEvaluate(new Yr(t),e.canonical),r["icon-size"].possiblyEvaluate(new Yr(i),e.canonical)]}const a=i.get("text-line-height")*ll,o="viewport"!==i.get("text-rotation-alignment")&&"point"!==i.get("symbol-placement"),s=i.get("text-keep-upright"),l=i.get("text-size");for(const c of e.bucket.features){const r=i.get("text-font").evaluate(c,{},e.canonical).join(","),h=l.evaluate(c,{},e.canonical),u=n.layoutTextSize.evaluate(c,{},e.canonical),p=n.layoutIconSize.evaluate(c,{},e.canonical),d={horizontal:{},vertical:void 0},f=c.text;let g,_=[0,0];if(f){const n=f.toString(),l=i.get("text-letter-spacing").evaluate(c,{},e.canonical)*ll,p=Dr(n)?l:0,m=i.get("text-anchor").evaluate(c,{},e.canonical),g=i.get("text-variable-anchor");if(!g){const t=i.get("text-radial-offset").evaluate(c,{},e.canonical);_=t?Tc(m,[t*ll,wc]):i.get("text-offset").evaluate(c,{},e.canonical).map((t=>t*ll))}let y=o?"center":i.get("text-justify").evaluate(c,{},e.canonical);const x=i.get("symbol-placement"),v="point"===x?i.get("text-max-width").evaluate(c,{},e.canonical)*ll:0,b=()=>{e.bucket.allowVerticalPlacement&&Pr(n)&&(d.vertical=Nl(f,e.glyphMap,e.glyphPositions,e.imagePositions,r,v,a,m,"left",p,_,t.WritingMode.vertical,!0,x,u,h))};if(!o&&g){const i="auto"===y?g.map((t=>Ec(t))):[y];let n=!1;for(let o=0;othis._layers[t.id])),i=e[0];if("none"===i.visibility)continue;const r=i.source||"";let n=this.familiesBySource[r];n||(n=this.familiesBySource[r]={});const a=i.sourceLayer||"_geojsonTileLayer";let o=n[a];o||(o=n[a]=[]),o.push(e)}}}class n{constructor(e){const i={},r=[];for(const t in e){const n=e[t],a=i[t]={};for(const t in n){const e=n[+t];if(!e||0===e.bitmap.width||0===e.bitmap.height)continue;const i={x:0,y:0,w:e.bitmap.width+2,h:e.bitmap.height+2};r.push(i),a[t]={rect:i,metrics:e.metrics}}}const{w:n,h:a}=t.potpack(r),o=new t.AlphaImage({width:n||1,height:a||1});for(const s in e){const r=e[s];for(const e in r){const n=r[+e];if(!n||0===n.bitmap.width||0===n.bitmap.height)continue;const a=i[s][e].rect;t.AlphaImage.copy(n.bitmap,o,{x:0,y:0},{x:a.x+1,y:a.y+1},n.bitmap)}}this.image=o,this.positions=i}}t.register("GlyphAtlas",n);class a{constructor(e){this.tileID=new t.OverscaledTileID(e.tileID.overscaledZ,e.tileID.wrap,e.tileID.canonical.z,e.tileID.canonical.x,e.tileID.canonical.y),this.uid=e.uid,this.zoom=e.zoom,this.pixelRatio=e.pixelRatio,this.tileSize=e.tileSize,this.source=e.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=e.showCollisionBoxes,this.collectResourceTiming=!!e.collectResourceTiming,this.returnDependencies=!!e.returnDependencies,this.promoteId=e.promoteId}parse(e,i,r,a,s){this.status="parsing",this.data=e,this.collisionBoxArray=new t.CollisionBoxArray;const l=new t.DictionaryCoder(Object.keys(e.layers).sort()),c=new t.FeatureIndex(this.tileID,this.promoteId);c.bucketLayerIDs=[];const h={},u={featureIndex:c,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:r},p=i.familiesBySource[this.source];for(const n in p){const i=e.layers[n];if(!i)continue;1===i.version&&t.warnOnce(`Vector tile source "${this.source}" layer "${n}" does not use vector tile spec v2 and therefore may have some rendering errors.`);const a=l.encode(n),s=[];for(let t=0;t=i.maxzoom||"none"!==i.visibility&&(o(e,this.zoom,r),(h[i.id]=i.createBucket({index:c.bucketLayerIDs.length,layers:e,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:a,sourceID:this.source})).populate(s,u,this.tileID.canonical),c.bucketLayerIDs.push(e.map((t=>t.id))))}}let d,m,f,g;const _=t.mapObject(u.glyphDependencies,(t=>Object.keys(t).map(Number)));Object.keys(_).length?a.send("getGlyphs",{uid:this.uid,stacks:_},((t,e)=>{d||(d=t,m=e,v.call(this))})):m={};const y=Object.keys(u.iconDependencies);y.length?a.send("getImages",{icons:y,source:this.source,tileID:this.tileID,type:"icons"},((t,e)=>{d||(d=t,f=e,v.call(this))})):f={};const x=Object.keys(u.patternDependencies);function v(){if(d)return s(d);if(m&&f&&g){const e=new n(m),i=new t.ImageAtlas(f,g);for(const n in h){const a=h[n];a instanceof t.SymbolBucket?(o(a.layers,this.zoom,r),t.performSymbolLayout({bucket:a,glyphMap:m,glyphPositions:e.positions,imageMap:f,imagePositions:i.iconPositions,showCollisionBoxes:this.showCollisionBoxes,canonical:this.tileID.canonical})):a.hasPattern&&(a instanceof t.LineBucket||a instanceof t.FillBucket||a instanceof t.FillExtrusionBucket)&&(o(a.layers,this.zoom,r),a.addFeatures(u,this.tileID.canonical,i.patternPositions))}this.status="done",s(null,{buckets:Object.values(h).filter((t=>!t.isEmpty())),featureIndex:c,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:e.image,imageAtlas:i,glyphMap:this.returnDependencies?m:null,iconMap:this.returnDependencies?f:null,glyphPositions:this.returnDependencies?e.positions:null})}}x.length?a.send("getImages",{icons:x,source:this.source,tileID:this.tileID,type:"patterns"},((t,e)=>{d||(d=t,g=e,v.call(this))})):g={},v.call(this)}}function o(e,i,r){const n=new t.EvaluationParameters(i);for(const t of e)t.recalculate(n,r)}function s(e,i){const r=t.getArrayBuffer(e.request,((e,r,n,a)=>{e?i(e):r&&i(null,{vectorTile:new t.vectorTile.VectorTile(new t.pbf(r)),rawData:r,cacheControl:n,expires:a})}));return()=>{r.cancel(),i()}}class l{constructor(t,e,i,r){this.actor=t,this.layerIndex=e,this.availableImages=i,this.loadVectorData=r||s,this.loading={},this.loaded={}}loadTile(e,i){const r=e.uid;this.loading||(this.loading={});const n=!!(e&&e.request&&e.request.collectResourceTiming)&&new t.RequestPerformance(e.request),o=this.loading[r]=new a(e);o.abort=this.loadVectorData(e,((e,a)=>{if(delete this.loading[r],e||!a)return o.status="done",this.loaded[r]=o,i(e);const s=a.rawData,l={};a.expires&&(l.expires=a.expires),a.cacheControl&&(l.cacheControl=a.cacheControl);const c={};if(n){const t=n.finish();t&&(c.resourceTiming=JSON.parse(JSON.stringify(t)))}o.vectorTile=a.vectorTile,o.parse(a.vectorTile,this.layerIndex,this.availableImages,this.actor,((e,r)=>{if(e||!r)return i(e);i(null,t.extend({rawTileData:s.slice(0)},r,l,c))})),this.loaded=this.loaded||{},this.loaded[r]=o}))}reloadTile(t,e){const i=this.loaded,r=t.uid,n=this;if(i&&i[r]){const a=i[r];a.showCollisionBoxes=t.showCollisionBoxes;const o=(t,i)=>{const r=a.reloadCallback;r&&(delete a.reloadCallback,a.parse(a.vectorTile,n.layerIndex,this.availableImages,n.actor,r)),e(t,i)};"parsing"===a.status?a.reloadCallback=o:"done"===a.status&&(a.vectorTile?a.parse(a.vectorTile,this.layerIndex,this.availableImages,this.actor,o):o())}}abortTile(t,e){const i=this.loading,r=t.uid;i&&i[r]&&i[r].abort&&(i[r].abort(),delete i[r]),e()}removeTile(t,e){const i=this.loaded,r=t.uid;i&&i[r]&&delete i[r],e()}}class c{constructor(){this.loaded={}}loadTile(e,i){const{uid:r,encoding:n,rawImageData:a}=e,o=t.isImageBitmap(a)?this.getImageData(a):a,s=new t.DEMData(r,o,n);this.loaded=this.loaded||{},this.loaded[r]=s,i(null,s)}getImageData(e){this.offscreenCanvas&&this.offscreenCanvasContext||(this.offscreenCanvas=new OffscreenCanvas(e.width,e.height),this.offscreenCanvasContext=this.offscreenCanvas.getContext("2d")),this.offscreenCanvas.width=e.width,this.offscreenCanvas.height=e.height,this.offscreenCanvasContext.drawImage(e,0,0,e.width,e.height);const i=this.offscreenCanvasContext.getImageData(-1,-1,e.width+2,e.height+2);return this.offscreenCanvasContext.clearRect(0,0,this.offscreenCanvas.width,this.offscreenCanvas.height),new t.RGBAImage({width:i.width,height:i.height},i.data)}removeTile(t){const e=this.loaded,i=t.uid;e&&e[i]&&delete e[i]}}var h=function t(e,i){var r,n=e&&e.type;if("FeatureCollection"===n)for(r=0;r=Math.abs(s)?i-l+s:s-l+i,i=l}i+r>=0!=!!e&&t.reverse()}const d=t.vectorTile.VectorTileFeature.prototype.toGeoJSON;class m{constructor(e){this._feature=e,this.extent=t.EXTENT,this.type=e.type,this.properties=e.tags,"id"in e&&!isNaN(e.id)&&(this.id=parseInt(e.id,10))}loadGeometry(){if(1===this._feature.type){const e=[];for(const i of this._feature.geometry)e.push([new t.pointGeometry(i[0],i[1])]);return e}{const e=[];for(const i of this._feature.geometry){const r=[];for(const e of i)r.push(new t.pointGeometry(e[0],e[1]));e.push(r)}return e}}toGeoJSON(t,e,i){return d.call(this,t,e,i)}}class f{constructor(e){this.layers={_geojsonTileLayer:this},this.name="_geojsonTileLayer",this.extent=t.EXTENT,this.length=e.length,this._features=e}feature(t){return new m(this._features[t])}}var g={exports:{}},_=t.pointGeometry,y=t.vectorTile.VectorTileFeature,x=v;function v(t,e){this.options=e||{},this.features=t,this.length=t.length}function b(t,e){this.id="number"==typeof t.id?t.id:void 0,this.type=t.type,this.rawGeometry=1===t.type?[t.geometry]:t.geometry,this.properties=t.tags,this.extent=e||4096}v.prototype.feature=function(t){return new b(this.features[t],this.options.extent)},b.prototype.loadGeometry=function(){var t=this.rawGeometry;this.geometry=[];for(var e=0;e>31}function k(t,e){for(var i=t.loadGeometry(),r=t.type,n=0,a=0,o=i.length,s=0;s>1;D(t,e,o,r,n,a%2),P(t,e,i,r,o-1,a+1),P(t,e,i,o+1,n,a+1)}function D(t,e,i,r,n,a){for(;n>r;){if(n-r>600){const o=n-r+1,s=i-r+1,l=Math.log(o),c=.5*Math.exp(2*l/3),h=.5*Math.sqrt(l*c*(o-c)/o)*(s-o/2<0?-1:1);D(t,e,i,Math.max(r,Math.floor(i-s*c/o+h)),Math.min(n,Math.floor(i+(o-s)*c/o+h)),a)}const o=e[2*i+a];let s=r,l=n;for(L(t,e,r,i),e[2*n+a]>o&&L(t,e,r,n);so;)l--}e[2*r+a]===o?L(t,e,r,l):(l++,L(t,e,l,n)),l<=i&&(r=l+1),i<=l&&(n=l-1)}}function L(t,e,i,r){B(t,i,r),B(e,2*i,2*r),B(e,2*i+1,2*r+1)}function B(t,e,i){const r=t[e];t[e]=t[i],t[i]=r}function R(t,e,i,r){const n=t-i,a=e-r;return n*n+a*a}g.exports=E,g.exports.fromVectorTileJs=E,g.exports.fromGeojsonVt=function(t,e){e=e||{};var i={};for(var r in t)i[r]=new T(t[r].features,e),i[r].name=r,i[r].version=e.version,i[r].extent=e.extent;return E({layers:i})},g.exports.GeoJSONWrapper=T;const F=t=>t[0],O=t=>t[1];class V{constructor(t,e=F,i=O,r=64,n=Float64Array){this.nodeSize=r,this.points=t;const a=t.length<65536?Uint16Array:Uint32Array,o=this.ids=new a(t.length),s=this.coords=new n(2*t.length);for(let l=0;l=i&&c<=n&&h>=r&&h<=a&&l.push(t[o]);continue}const m=Math.floor((d+p)/2);c=e[2*m],h=e[2*m+1],c>=i&&c<=n&&h>=r&&h<=a&&l.push(t[m]);const f=(u+1)%2;(0===u?i<=c:r<=h)&&(s.push(d),s.push(m-1),s.push(f)),(0===u?n>=c:a>=h)&&(s.push(m+1),s.push(p),s.push(f))}return l}(this.ids,this.coords,t,e,i,r,this.nodeSize)}within(t,e,i){return function(t,e,i,r,n,a){const o=[0,t.length-1,0],s=[],l=n*n;for(;o.length;){const c=o.pop(),h=o.pop(),u=o.pop();if(h-u<=a){for(let n=u;n<=h;n++)R(e[2*n],e[2*n+1],i,r)<=l&&s.push(t[n]);continue}const p=Math.floor((u+h)/2),d=e[2*p],m=e[2*p+1];R(d,m,i,r)<=l&&s.push(t[p]);const f=(c+1)%2;(0===c?i-n<=d:r-n<=m)&&(o.push(u),o.push(p-1),o.push(f)),(0===c?i+n>=d:r+n>=m)&&(o.push(p+1),o.push(h),o.push(f))}return s}(this.ids,this.coords,t,e,i,this.nodeSize)}}const U={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:t=>t},N=Math.fround||($=new Float32Array(1),t=>($[0]=+t,$[0]));var $;class G{constructor(t){this.options=J(Object.create(U),t),this.trees=new Array(this.options.maxZoom+1)}load(t){const{log:e,minZoom:i,maxZoom:r,nodeSize:n}=this.options;e&&console.time("total time");const a=`prepare ${t.length} points`;e&&console.time(a),this.points=t;let o=[];for(let s=0;s=i;s--){const t=+Date.now();o=this._cluster(o,s),this.trees[s]=new V(o,Y,Q,n,Float32Array),e&&console.log("z%d: %d clusters in %dms",s,o.length,+Date.now()-t)}return e&&console.timeEnd("total time"),this}getClusters(t,e){let i=((t[0]+180)%360+360)%360-180;const r=Math.max(-90,Math.min(90,t[1]));let n=180===t[2]?180:((t[2]+180)%360+360)%360-180;const a=Math.max(-90,Math.min(90,t[3]));if(t[2]-t[0]>=360)i=-180,n=180;else if(i>n){const t=this.getClusters([i,r,180,a],e),o=this.getClusters([-180,r,n,a],e);return t.concat(o)}const o=this.trees[this._limitZoom(e)],s=o.range(H(i),W(a),H(n),W(r)),l=[];for(const c of s){const t=o.points[c];l.push(t.numPoints?j(t):this.points[t.index])}return l}getChildren(t){const e=this._getOriginId(t),i=this._getOriginZoom(t),r="No cluster with the specified id.",n=this.trees[i];if(!n)throw new Error(r);const a=n.points[e];if(!a)throw new Error(r);const o=this.options.radius/(this.options.extent*Math.pow(2,i-1)),s=n.within(a.x,a.y,o),l=[];for(const c of s){const e=n.points[c];e.parentId===t&&l.push(e.numPoints?j(e):this.points[e.index])}if(0===l.length)throw new Error(r);return l}getLeaves(t,e,i){const r=[];return this._appendLeaves(r,t,e=e||10,i=i||0,0),r}getTile(t,e,i){const r=this.trees[this._limitZoom(t)],n=Math.pow(2,t),{extent:a,radius:o}=this.options,s=o/a,l=(i-s)/n,c=(i+1+s)/n,h={features:[]};return this._addTileFeatures(r.range((e-s)/n,l,(e+1+s)/n,c),r.points,e,i,n,h),0===e&&this._addTileFeatures(r.range(1-s/n,l,1,c),r.points,n,i,n,h),e===n-1&&this._addTileFeatures(r.range(0,l,s/n,c),r.points,-1,i,n,h),h.features.length?h:null}getClusterExpansionZoom(t){let e=this._getOriginZoom(t)-1;for(;e<=this.options.maxZoom;){const i=this.getChildren(t);if(e++,1!==i.length)break;t=i[0].properties.cluster_id}return e}_appendLeaves(t,e,i,r,n){const a=this.getChildren(e);for(const o of a){const e=o.properties;if(e&&e.cluster?n+e.point_count<=r?n+=e.point_count:n=this._appendLeaves(t,e.cluster_id,i,r,n):ne&&(u+=i.numPoints||1)}if(u>h&&u>=o){let t=r.x*h,o=r.y*h,s=a&&h>1?this._map(r,!0):null;const p=(l<<5)+(e+1)+this.points.length;for(const i of c){const l=n.points[i];if(l.zoom<=e)continue;l.zoom=e;const c=l.numPoints||1;t+=l.x*c,o+=l.y*c,l.parentId=p,a&&(s||(s=this._map(r,!0)),a(s,this._map(l)))}r.parentId=p,i.push(q(t/u,o/u,p,u,s))}else if(i.push(r),u>1)for(const t of c){const r=n.points[t];r.zoom<=e||(r.zoom=e,i.push(r))}}return i}_getOriginId(t){return t-this.points.length>>5}_getOriginZoom(t){return(t-this.points.length)%32}_map(t,e){if(t.numPoints)return e?J({},t.properties):t.properties;const i=this.points[t.index].properties,r=this.options.map(i);return e&&r===i?J({},r):r}}function q(t,e,i,r,n){return{x:N(t),y:N(e),zoom:1/0,id:i,parentId:-1,numPoints:r,properties:n}}function Z(t,e){const[i,r]=t.geometry.coordinates;return{x:N(H(i)),y:N(W(r)),zoom:1/0,index:e,parentId:-1}}function j(t){return{type:"Feature",id:t.id,properties:X(t),geometry:{type:"Point",coordinates:[(e=t.x,360*(e-.5)),K(t.y)]}};var e}function X(t){const e=t.numPoints,i=e>=1e4?`${Math.round(e/1e3)}k`:e>=1e3?Math.round(e/100)/10+"k":e;return J(J({},t.properties),{cluster:!0,cluster_id:t.id,point_count:e,point_count_abbreviated:i})}function H(t){return t/360+.5}function W(t){const e=Math.sin(t*Math.PI/180),i=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return i<0?0:i>1?1:i}function K(t){const e=(180-360*t)*Math.PI/180;return 360*Math.atan(Math.exp(e))/Math.PI-90}function J(t,e){for(const i in e)t[i]=e[i];return t}function Y(t){return t.x}function Q(t){return t.y}function tt(t,e,i,r){for(var n,a=r,o=i-e>>1,s=i-e,l=t[e],c=t[e+1],h=t[i],u=t[i+1],p=e+3;pa)n=p,a=d;else if(d===a){var m=Math.abs(p-o);mr&&(n-e>3&&tt(t,e,n,r),t[n+2]=a,i-n>3&&tt(t,n,i,r))}function et(t,e,i,r,n,a){var o=n-i,s=a-r;if(0!==o||0!==s){var l=((t-i)*o+(e-r)*s)/(o*o+s*s);l>1?(i=n,r=a):l>0&&(i+=o*l,r+=s*l)}return(o=t-i)*o+(s=e-r)*s}function it(t,e,i,r){var n={id:void 0===t?null:t,type:e,geometry:i,tags:r,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return function(t){var e=t.geometry,i=t.type;if("Point"===i||"MultiPoint"===i||"LineString"===i)rt(t,e);else if("Polygon"===i||"MultiLineString"===i)for(var r=0;r0&&(o+=r?(n*c-l*a)/2:Math.sqrt(Math.pow(l-n,2)+Math.pow(c-a,2))),n=l,a=c}var h=e.length-3;e[2]=1,tt(e,0,h,i),e[h+2]=1,e.size=Math.abs(o),e.start=0,e.end=e.size}function st(t,e,i,r){for(var n=0;n1?1:i}function ht(t,e,i,r,n,a,o,s){if(r/=e,a>=(i/=e)&&o=r)return null;for(var l=[],c=0;c=i&&m=r)){var f=[];if("Point"===p||"MultiPoint"===p)ut(u,f,i,r,n);else if("LineString"===p)pt(u,f,i,r,n,!1,s.lineMetrics);else if("MultiLineString"===p)mt(u,f,i,r,n,!1);else if("Polygon"===p)mt(u,f,i,r,n,!0);else if("MultiPolygon"===p)for(var g=0;g=i&&o<=r&&(e.push(t[a]),e.push(t[a+1]),e.push(t[a+2]))}}function pt(t,e,i,r,n,a,o){for(var s,l,c=dt(t),h=0===n?gt:_t,u=t.start,p=0;pi&&(l=h(c,d,m,g,_,i),o&&(c.start=u+s*l)):y>r?x=i&&(l=h(c,d,m,g,_,i),v=!0),x>r&&y<=r&&(l=h(c,d,m,g,_,r),v=!0),!a&&v&&(o&&(c.end=u+s*l),e.push(c),c=dt(t)),o&&(u+=s)}var b=t.length-3;d=t[b],m=t[b+1],f=t[b+2],(y=0===n?d:m)>=i&&y<=r&&ft(c,d,m,f),b=c.length-3,a&&b>=3&&(c[b]!==c[0]||c[b+1]!==c[1])&&ft(c,c[0],c[1],c[2]),c.length&&e.push(c)}function dt(t){var e=[];return e.size=t.size,e.start=t.start,e.end=t.end,e}function mt(t,e,i,r,n,a){for(var o=0;oo.maxX&&(o.maxX=h),u>o.maxY&&(o.maxY=u)}return o}function Tt(t,e,i,r){var n=e.geometry,a=e.type,o=[];if("Point"===a||"MultiPoint"===a)for(var s=0;s0&&e.size<(n?o:r))i.numPoints+=e.length/3;else{for(var s=[],l=0;lo)&&(i.numSimplified++,s.push(e[l]),s.push(e[l+1])),i.numPoints++;n&&function(t,e){for(var i=0,r=0,n=t.length,a=n-2;r0===e)for(r=0,n=t.length;r24)throw new Error("maxZoom should be in the 0-24 range");if(e.promoteId&&e.generateId)throw new Error("promoteId and generateId cannot be used together.");var r=function(t,e){var i=[];if("FeatureCollection"===t.type)for(var r=0;r1&&console.time("creation"),p=this.tiles[u]=wt(t,e,i,r,l),this.tileCoords.push({z:e,x:i,y:r}),c)){c>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",e,i,r,p.numFeatures,p.numPoints,p.numSimplified),console.timeEnd("creation"));var d="z"+e;this.stats[d]=(this.stats[d]||0)+1,this.total++}if(p.source=t,n){if(e===l.maxZoom||e===n)continue;var m=1<1&&console.time("clipping");var f,g,_,y,x,v,b=.5*l.buffer/l.extent,w=.5-b,T=.5+b,E=1+b;f=g=_=y=null,x=ht(t,h,i-b,i+T,0,p.minX,p.maxX,l),v=ht(t,h,i+w,i+E,0,p.minX,p.maxX,l),t=null,x&&(f=ht(x,h,r-b,r+T,1,p.minY,p.maxY,l),g=ht(x,h,r+w,r+E,1,p.minY,p.maxY,l),x=null),v&&(_=ht(v,h,r-b,r+T,1,p.minY,p.maxY,l),y=ht(v,h,r+w,r+E,1,p.minY,p.maxY,l),v=null),c>1&&console.timeEnd("clipping"),s.push(f||[],e+1,2*i,2*r),s.push(g||[],e+1,2*i,2*r+1),s.push(_||[],e+1,2*i+1,2*r),s.push(y||[],e+1,2*i+1,2*r+1)}}},St.prototype.getTile=function(t,e,i){var r=this.options,n=r.extent,a=r.debug;if(t<0||t>24)return null;var o=1<1&&console.log("drilling down to z%d-%d-%d",t,e,i);for(var l,c=t,h=e,u=i;!l&&c>0;)c--,h=Math.floor(h/2),u=Math.floor(u/2),l=this.tiles[It(c,h,u)];return l&&l.source?(a>1&&console.log("found parent tile z%d-%d-%d",c,h,u),a>1&&console.time("drilling down"),this.splitTile(l.source,c,h,u,t,e,i),a>1&&console.timeEnd("drilling down"),this.tiles[s]?vt(this.tiles[s],n):null):null};class Ct extends l{constructor(t,e,i,r){super(t,e,i,zt),r&&(this.loadGeoJSON=r)}loadData(e,i){var r;null===(r=this._pendingRequest)||void 0===r||r.cancel(),this._pendingCallback&&this._pendingCallback(null,{abandoned:!0});const n=!!(e&&e.request&&e.request.collectResourceTiming)&&new t.RequestPerformance(e.request);this._pendingCallback=i,this._pendingRequest=this.loadGeoJSON(e,((r,a)=>{if(delete this._pendingCallback,delete this._pendingRequest,r||!a)return i(r);if("object"!=typeof a)return i(new Error(`Input data given to '${e.source}' is not a valid GeoJSON object.`));{h(a,!0);try{if(e.filter){const i=t.createExpression(e.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if("error"===i.result)throw new Error(i.value.map((t=>`${t.key}: ${t.message}`)).join(", "));const r=a.features.filter((t=>i.value.evaluate({zoom:0},t)));a={type:"FeatureCollection",features:r}}this._geoJSONIndex=e.cluster?new G(function({superclusterOptions:e,clusterProperties:i}){if(!i||!e)return e;const r={},n={},a={accumulated:null,zoom:0},o={properties:null},s=Object.keys(i);for(const l of s){const[e,a]=i[l],o=t.createExpression(a),s=t.createExpression("string"==typeof e?[e,["accumulated"],["get",l]]:e);r[l]=o.value,n[l]=s.value}return e.map=t=>{o.properties=t;const e={};for(const i of s)e[i]=r[i].evaluate(a,o);return e},e.reduce=(t,e)=>{o.properties=e;for(const i of s)a.accumulated=t[i],t[i]=n[i].evaluate(a,o)},e}(e)).load(a.features):function(t,e){return new St(t,e)}(a,e.geojsonVtOptions)}catch(r){return i(r)}this.loaded={};const o={};if(n){const t=n.finish();t&&(o.resourceTiming={},o.resourceTiming[e.source]=JSON.parse(JSON.stringify(t)))}i(null,o)}}))}reloadTile(t,e){const i=this.loaded;return i&&i[t.uid]?super.reloadTile(t,e):this.loadTile(t,e)}loadGeoJSON(e,i){if(e.request)return t.getJSON(e.request,i);if("string"==typeof e.data)try{i(null,JSON.parse(e.data))}catch(t){i(new Error(`Input data given to '${e.source}' is not a valid GeoJSON object.`))}else i(new Error(`Input data given to '${e.source}' is not a valid GeoJSON object.`));return{cancel:()=>{}}}removeSource(t,e){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),e()}getClusterExpansionZoom(t,e){try{e(null,this._geoJSONIndex.getClusterExpansionZoom(t.clusterId))}catch(t){e(t)}}getClusterChildren(t,e){try{e(null,this._geoJSONIndex.getChildren(t.clusterId))}catch(t){e(t)}}getClusterLeaves(t,e){try{e(null,this._geoJSONIndex.getLeaves(t.clusterId,t.limit,t.offset))}catch(t){e(t)}}}class At{constructor(e){this.self=e,this.actor=new t.Actor(e,this),this.layerIndexes={},this.availableImages={},this.workerSourceTypes={vector:l,geojson:Ct},this.workerSources={},this.demWorkerSources={},this.self.registerWorkerSource=(t,e)=>{if(this.workerSourceTypes[t])throw new Error(`Worker source with name "${t}" already registered.`);this.workerSourceTypes[t]=e},this.self.registerRTLTextPlugin=e=>{if(t.plugin.isParsed())throw new Error("RTL text plugin already registered.");t.plugin.applyArabicShaping=e.applyArabicShaping,t.plugin.processBidirectionalText=e.processBidirectionalText,t.plugin.processStyledBidirectionalText=e.processStyledBidirectionalText}}setReferrer(t,e){this.referrer=e}setImages(t,e,i){this.availableImages[t]=e;for(const r in this.workerSources[t]){const i=this.workerSources[t][r];for(const t in i)i[t].availableImages=e}i()}setLayers(t,e,i){this.getLayerIndex(t).replace(e),i()}updateLayers(t,e,i){this.getLayerIndex(t).update(e.layers,e.removedIds),i()}loadTile(t,e,i){this.getWorkerSource(t,e.type,e.source).loadTile(e,i)}loadDEMTile(t,e,i){this.getDEMWorkerSource(t,e.source).loadTile(e,i)}reloadTile(t,e,i){this.getWorkerSource(t,e.type,e.source).reloadTile(e,i)}abortTile(t,e,i){this.getWorkerSource(t,e.type,e.source).abortTile(e,i)}removeTile(t,e,i){this.getWorkerSource(t,e.type,e.source).removeTile(e,i)}removeDEMTile(t,e){this.getDEMWorkerSource(t,e.source).removeTile(e)}removeSource(t,e,i){if(!this.workerSources[t]||!this.workerSources[t][e.type]||!this.workerSources[t][e.type][e.source])return;const r=this.workerSources[t][e.type][e.source];delete this.workerSources[t][e.type][e.source],void 0!==r.removeSource?r.removeSource(e,i):i()}loadWorkerSource(t,e,i){try{this.self.importScripts(e.url),i()}catch(t){i(t.toString())}}syncRTLPluginState(e,i,r){try{t.plugin.setState(i);const e=t.plugin.getPluginURL();if(t.plugin.isLoaded()&&!t.plugin.isParsed()&&null!=e){this.self.importScripts(e);const i=t.plugin.isParsed();r(i?void 0:new Error(`RTL Text Plugin failed to import scripts from ${e}`),i)}}catch(t){r(t.toString())}}getAvailableImages(t){let e=this.availableImages[t];return e||(e=[]),e}getLayerIndex(t){let e=this.layerIndexes[t];return e||(e=this.layerIndexes[t]=new r),e}getWorkerSource(t,e,i){if(this.workerSources[t]||(this.workerSources[t]={}),this.workerSources[t][e]||(this.workerSources[t][e]={}),!this.workerSources[t][e][i]){const r={send:(e,i,r)=>{this.actor.send(e,i,r,t)}};this.workerSources[t][e][i]=new this.workerSourceTypes[e](r,this.getLayerIndex(t),this.getAvailableImages(t))}return this.workerSources[t][e][i]}getDEMWorkerSource(t,e){return this.demWorkerSources[t]||(this.demWorkerSources[t]={}),this.demWorkerSources[t][e]||(this.demWorkerSources[t][e]=new c),this.demWorkerSources[t][e]}enforceCacheSizeLimit(e,i){t.enforceCacheSizeLimit(i)}}return t.isWorker()&&(self.worker=new At(self)),At})),r(["./shared"],(function(t){var e=i;function i(t){return!function(t){return"undefined"==typeof window||"undefined"==typeof document?"not a browser":Array.prototype&&Array.prototype.every&&Array.prototype.filter&&Array.prototype.forEach&&Array.prototype.indexOf&&Array.prototype.lastIndexOf&&Array.prototype.map&&Array.prototype.some&&Array.prototype.reduce&&Array.prototype.reduceRight&&Array.isArray?Function.prototype&&Function.prototype.bind?Object.keys&&Object.create&&Object.getPrototypeOf&&Object.getOwnPropertyNames&&Object.isSealed&&Object.isFrozen&&Object.isExtensible&&Object.getOwnPropertyDescriptor&&Object.defineProperty&&Object.defineProperties&&Object.seal&&Object.freeze&&Object.preventExtensions?"JSON"in window&&"parse"in JSON&&"stringify"in JSON?function(){if(!("Worker"in window&&"Blob"in window&&"URL"in window))return!1;var t,e,i=new Blob([""],{type:"text/javascript"}),r=URL.createObjectURL(i);try{e=new Worker(r),t=!0}catch(e){t=!1}return e&&e.terminate(),URL.revokeObjectURL(r),t}()?"Uint8ClampedArray"in window?ArrayBuffer.isView?function(){var t=document.createElement("canvas");t.width=t.height=1;var e=t.getContext("2d");if(!e)return!1;var i=e.getImageData(0,0,1,1);return i&&i.width===t.width}()?(void 0===r[e=t&&t.failIfMajorPerformanceCaveat]&&(r[e]=function(t){var e,r=function(t){var e=document.createElement("canvas"),r=Object.create(i.webGLContextAttributes);return r.failIfMajorPerformanceCaveat=t,e.getContext("webgl",r)||e.getContext("experimental-webgl",r)}(t);if(!r)return!1;try{e=r.createShader(r.VERTEX_SHADER)}catch(t){return!1}return!(!e||r.isContextLost())&&(r.shaderSource(e,"void main() {}"),r.compileShader(e),!0===r.getShaderParameter(e,r.COMPILE_STATUS))}(e)),r[e]?document.documentMode?"insufficient ECMAScript 6 support":void 0:"insufficient WebGL support"):"insufficient Canvas/getImageData support":"insufficient ArrayBuffer support":"insufficient Uint8ClampedArray support":"insufficient worker support":"insufficient JSON support":"insufficient Object support":"insufficient Function support":"insufficent Array support";var e}(t)}var r={};function n(t,e){if(Array.isArray(t)){if(!Array.isArray(e)||t.length!==e.length)return!1;for(let i=0;i{window.removeEventListener("click",a.suppressClickInternal,!0)}),0)}static mousePos(e,i){const r=e.getBoundingClientRect();return new t.pointGeometry(i.clientX-r.left-e.clientLeft,i.clientY-r.top-e.clientTop)}static touchPos(e,i){const r=e.getBoundingClientRect(),n=[];for(let a=0;a-1);l++,a[l]=s,o[l]=c,o[l+1]=u}for(let s=0,l=0;s{let r=this.entries[t];r||(r=this.entries[t]={glyphs:{},requests:{},ranges:{}});let n=r.glyphs[e];if(void 0!==n)return void i(null,{stack:t,id:e,glyph:n});if(n=this._tinySDF(r,t,e),n)return r.glyphs[e]=n,void i(null,{stack:t,id:e,glyph:n});const a=Math.floor(e/256);if(256*a>65535)return void i(new Error("glyphs > 65535 not supported"));if(r.ranges[a])return void i(null,{stack:t,id:e,glyph:n});let o=r.requests[a];o||(o=r.requests[a]=[],m.loadGlyphRange(t,a,this.url,this.requestManager,((t,e)=>{if(e){for(const t in e)this._doesCharSupportLocalGlyph(+t)||(r.glyphs[+t]=e[+t]);r.ranges[a]=!0}for(const i of o)i(t,e);delete r.requests[a]}))),o.push(((r,n)=>{r?i(r):n&&i(null,{stack:t,id:e,glyph:n[e]||null})}))}),((t,e)=>{if(t)i(t);else if(e){const t={};for(const{stack:i,id:r,glyph:n}of e)(t[i]||(t[i]={}))[r]=n&&{id:n.id,bitmap:n.bitmap.clone(),metrics:n.metrics};i(null,t)}}))}_doesCharSupportLocalGlyph(e){return!!this.localIdeographFontFamily&&(t.unicodeBlockLookup["CJK Unified Ideographs"](e)||t.unicodeBlockLookup["Hangul Syllables"](e)||t.unicodeBlockLookup.Hiragana(e)||t.unicodeBlockLookup.Katakana(e))}_tinySDF(e,i,r){const n=this.localIdeographFontFamily;if(!n)return;if(!this._doesCharSupportLocalGlyph(r))return;let a=e.tinySDF;if(!a){let t="400";/bold/i.test(i)?t="900":/medium/i.test(i)?t="500":/light/i.test(i)&&(t="200"),a=e.tinySDF=new m.TinySDF({fontSize:24,buffer:3,radius:8,cutoff:.25,fontFamily:n,fontWeight:t})}const o=a.draw(String.fromCharCode(r));return{id:r,bitmap:new t.AlphaImage({width:o.width||30,height:o.height||30},o.data),metrics:{width:o.glyphWidth||24,height:o.glyphHeight||24,left:o.glyphLeft||0,top:o.glyphTop-27||-8,advance:o.glyphAdvance||24}}}}m.loadGlyphRange=function(e,i,r,n,a){const o=256*i,s=o+255,l=n.transformRequest(r.replace("{fontstack}",e).replace("{range}",`${o}-${s}`),t.ResourceType.Glyphs);t.getArrayBuffer(l,((e,i)=>{if(e)a(e);else if(i){const e={};for(const r of t.parseGlyphPbf(i))e[r.id]=r;a(null,e)}}))},m.TinySDF=class{constructor({fontSize:t=24,buffer:e=3,radius:i=8,cutoff:r=.25,fontFamily:n="sans-serif",fontWeight:a="normal",fontStyle:o="normal"}={}){this.buffer=e,this.cutoff=r,this.radius=i;const s=this.size=t+4*e,l=this._createCanvas(s),c=this.ctx=l.getContext("2d",{willReadFrequently:!0});c.font=`${o} ${a} ${t}px ${n}`,c.textBaseline="alphabetic",c.textAlign="left",c.fillStyle="black",this.gridOuter=new Float64Array(s*s),this.gridInner=new Float64Array(s*s),this.f=new Float64Array(s),this.z=new Float64Array(s+1),this.v=new Uint16Array(s)}_createCanvas(t){const e=document.createElement("canvas");return e.width=e.height=t,e}draw(t){const{width:e,actualBoundingBoxAscent:i,actualBoundingBoxDescent:r,actualBoundingBoxLeft:n,actualBoundingBoxRight:a}=this.ctx.measureText(t),o=Math.ceil(i),s=Math.min(this.size-this.buffer,Math.ceil(a-n)),l=Math.min(this.size-this.buffer,o+Math.ceil(r)),c=s+2*this.buffer,h=l+2*this.buffer,d=Math.max(c*h,0),m=new Uint8ClampedArray(d),f={data:m,width:c,height:h,glyphWidth:s,glyphHeight:l,glyphTop:o,glyphLeft:0,glyphAdvance:e};if(0===s||0===l)return f;const{ctx:g,buffer:_,gridInner:y,gridOuter:x}=this;g.clearRect(_,_,s,l),g.fillText(t,_,_+o);const v=g.getImageData(_,_,s,l);x.fill(u,0,d),y.fill(0,0,d);for(let p=0;p0?t*t:0,y[i]=t<0?t*t:0}}p(x,0,0,c,h,c,this.f,this.v,this.z),p(y,_,_,s,l,c,this.f,this.v,this.z);for(let u=0;u1&&(o=t[++a]);const l=Math.abs(s-o.left),c=Math.abs(s-o.right),h=Math.min(l,c);let u;const p=n/i*(r+1);if(o.isDash){const t=r-Math.abs(p);u=Math.sqrt(h*h+t*t)}else u=r-Math.sqrt(h*h+p*p);this.data[e+s]=Math.max(0,Math.min(255,u+128))}}}addRegularDash(t){for(let o=t.length-1;o>=0;--o){const e=t[o],i=t[o+1];e.zeroLength?t.splice(o,1):i&&i.isDash===e.isDash&&(i.left=e.left,t.splice(o,1))}const e=t[0],i=t[t.length-1];e.isDash===i.isDash&&(e.left=i.left-this.width,i.right=e.right+this.width);const r=this.width*this.nextRow;let n=0,a=t[n];for(let o=0;o1&&(a=t[++n]);const e=Math.abs(o-a.left),i=Math.abs(o-a.right),s=Math.min(e,i);this.data[r+o]=Math.max(0,Math.min(255,(a.isDash?s:-s)+128))}}addDash(e,i){const r=i?7:0,n=2*r+1;if(this.nextRow+n>this.height)return t.warnOnce("LineAtlas out of space"),null;let a=0;for(let t=0;t{t.send(e,i,r)}),r=r||function(){})}getActor(){return this.currentActor=(this.currentActor+1)%this.actors.length,this.actors[this.currentActor]}remove(){this.actors.forEach((t=>{t.remove()})),this.actors=[],this.workerPool.release(this.id)}}function v(e,i,r){const n=function(i,n){if(i)return r(i);if(n){const i=t.pick(t.extend(n,e),["tiles","minzoom","maxzoom","attribution","bounds","scheme","tileSize","encoding"]);n.vector_layers&&(i.vectorLayers=n.vector_layers,i.vectorLayerIds=i.vectorLayers.map((t=>t.id))),r(null,i)}};return e.url?t.getJSON(i.transformRequest(e.url,t.ResourceType.Source),n):t.exported.frame((()=>n(null,e)))}x.Actor=t.Actor;class b{constructor(e,i,r){this.bounds=t.LngLatBounds.convert(this.validateBounds(e)),this.minzoom=i||0,this.maxzoom=r||24}validateBounds(t){return Array.isArray(t)&&4===t.length?[Math.max(-180,t[0]),Math.max(-90,t[1]),Math.min(180,t[2]),Math.min(90,t[3])]:[-180,-90,180,90]}contains(e){const i=Math.pow(2,e.z),r=Math.floor(t.mercatorXfromLng(this.bounds.getWest())*i),n=Math.floor(t.mercatorYfromLat(this.bounds.getNorth())*i),a=Math.ceil(t.mercatorXfromLng(this.bounds.getEast())*i),o=Math.ceil(t.mercatorYfromLat(this.bounds.getSouth())*i);return e.x>=r&&e.x=n&&e.y{this._tileJSONRequest=null,this._loaded=!0,this.map.style.sourceCaches[this.id].clearTiles(),e?this.fire(new t.ErrorEvent(e)):i&&(t.extend(this,i),i.bounds&&(this.tileBounds=new b(i.bounds,this.minzoom,this.maxzoom)),this.fire(new t.Event("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new t.Event("data",{dataType:"source",sourceDataType:"content"})))}))}loaded(){return this._loaded}hasTile(t){return!this.tileBounds||this.tileBounds.contains(t.canonical)}onAdd(t){this.map=t,this.load()}setSourceProperty(t){this._tileJSONRequest&&this._tileJSONRequest.cancel(),t(),this.load()}setTiles(t){return this.setSourceProperty((()=>{this._options.tiles=t})),this}setUrl(t){return this.setSourceProperty((()=>{this.url=t,this._options.url=t})),this}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)}serialize(){return t.extend({},this._options)}loadTile(e,i){const r=e.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),n={request:this.map._requestManager.transformRequest(r,t.ResourceType.Tile),uid:e.uid,tileID:e.tileID,zoom:e.tileID.overscaledZ,tileSize:this.tileSize*e.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};function a(r,n){return delete e.request,e.aborted?i(null):r&&404!==r.status?i(r):(n&&n.resourceTiming&&(e.resourceTiming=n.resourceTiming),this.map._refreshExpiredTiles&&n&&e.setExpiryData(n),e.loadVectorData(n,this.map.painter),t.cacheEntryPossiblyAdded(this.dispatcher),i(null),void(e.reloadCallback&&(this.loadTile(e,e.reloadCallback),e.reloadCallback=null)))}n.request.collectResourceTiming=this._collectResourceTiming,e.actor&&"expired"!==e.state?"loading"===e.state?e.reloadCallback=i:e.request=e.actor.send("reloadTile",n,a.bind(this)):(e.actor=this.dispatcher.getActor(),e.request=e.actor.send("loadTile",n,a.bind(this)))}abortTile(t){t.request&&(t.request.cancel(),delete t.request),t.actor&&t.actor.send("abortTile",{uid:t.uid,type:this.type,source:this.id},void 0)}unloadTile(t){t.unloadVectorData(),t.actor&&t.actor.send("removeTile",{uid:t.uid,type:this.type,source:this.id},void 0)}hasTransition(){return!1}}class T extends t.Evented{constructor(e,i,r,n){super(),this.id=e,this.dispatcher=r,this.setEventedParent(n),this.type="raster",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme="xyz",this.tileSize=512,this._loaded=!1,this._options=t.extend({type:"raster"},i),t.extend(this,t.pick(i,["url","scheme","tileSize"]))}load(){this._loaded=!1,this.fire(new t.Event("dataloading",{dataType:"source"})),this._tileJSONRequest=v(this._options,this.map._requestManager,((e,i)=>{this._tileJSONRequest=null,this._loaded=!0,e?this.fire(new t.ErrorEvent(e)):i&&(t.extend(this,i),i.bounds&&(this.tileBounds=new b(i.bounds,this.minzoom,this.maxzoom)),this.fire(new t.Event("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new t.Event("data",{dataType:"source",sourceDataType:"content"})))}))}loaded(){return this._loaded}onAdd(t){this.map=t,this.load()}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)}serialize(){return t.extend({},this._options)}hasTile(t){return!this.tileBounds||this.tileBounds.contains(t.canonical)}loadTile(e,i){const r=e.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme);e.request=t.getImage(this.map._requestManager.transformRequest(r,t.ResourceType.Tile),((r,n,a)=>{if(delete e.request,e.aborted)e.state="unloaded",i(null);else if(r)e.state="errored",i(r);else if(n){this.map._refreshExpiredTiles&&e.setExpiryData(a);const r=this.map.painter.context,o=r.gl;e.texture=this.map.painter.getTileTexture(n.width),e.texture?e.texture.update(n,{useMipmap:!0}):(e.texture=new l(r,n,o.RGBA,{useMipmap:!0}),e.texture.bind(o.LINEAR,o.CLAMP_TO_EDGE,o.LINEAR_MIPMAP_NEAREST),r.extTextureFilterAnisotropic&&o.texParameterf(o.TEXTURE_2D,r.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,r.extTextureFilterAnisotropicMax)),e.state="loaded",t.cacheEntryPossiblyAdded(this.dispatcher),i(null)}}))}abortTile(t,e){t.request&&(t.request.cancel(),delete t.request),e()}unloadTile(t,e){t.texture&&this.map.painter.saveTileTexture(t.texture),e()}hasTransition(){return!1}}let E;class S extends T{constructor(e,i,r,n){super(e,i,r,n),this.type="raster-dem",this.maxzoom=22,this._options=t.extend({type:"raster-dem"},i),this.encoding=i.encoding||"mapbox"}serialize(){return{type:"raster-dem",url:this.url,tileSize:this.tileSize,tiles:this.tiles,bounds:this.bounds,encoding:this.encoding}}loadTile(e,i){const r=e.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme);function n(t,r){t&&(e.state="errored",i(t)),r&&(e.dem=r,e.needsHillshadePrepare=!0,e.needsTerrainPrepare=!0,e.state="loaded",i(null))}e.request=t.getImage(this.map._requestManager.transformRequest(r,t.ResourceType.Tile),function(r,a){if(delete e.request,e.aborted)e.state="unloaded",i(null);else if(r)e.state="errored",i(r);else if(a){this.map._refreshExpiredTiles&&e.setExpiryData(a),delete a.cacheControl,delete a.expires;const i=t.isImageBitmap(a)&&(null==E&&(E="undefined"!=typeof OffscreenCanvas&&new OffscreenCanvas(1,1).getContext("2d")&&"function"==typeof createImageBitmap),E)?a:t.exported.getImageData(a,1),r={uid:e.uid,coord:e.tileID,source:this.id,rawImageData:i,encoding:this.encoding};e.actor&&"expired"!==e.state||(e.actor=this.dispatcher.getActor(),e.actor.send("loadDEMTile",r,n.bind(this)))}}.bind(this)),e.neighboringTiles=this._getNeighboringTiles(e.tileID)}_getNeighboringTiles(e){const i=e.canonical,r=Math.pow(2,i.z),n=(i.x-1+r)%r,a=0===i.x?e.wrap-1:e.wrap,o=(i.x+1+r)%r,s=i.x+1===r?e.wrap+1:e.wrap,l={};return l[new t.OverscaledTileID(e.overscaledZ,a,i.z,n,i.y).key]={backfilled:!1},l[new t.OverscaledTileID(e.overscaledZ,s,i.z,o,i.y).key]={backfilled:!1},i.y>0&&(l[new t.OverscaledTileID(e.overscaledZ,a,i.z,n,i.y-1).key]={backfilled:!1},l[new t.OverscaledTileID(e.overscaledZ,e.wrap,i.z,i.x,i.y-1).key]={backfilled:!1},l[new t.OverscaledTileID(e.overscaledZ,s,i.z,o,i.y-1).key]={backfilled:!1}),i.y+1{if(this._pendingLoads--,this._removed||r&&r.abandoned)return void this.fire(new t.Event("dataabort",{dataType:"source",sourceDataType:e}));let n=null;if(r&&r.resourceTiming&&r.resourceTiming[this.id]&&(n=r.resourceTiming[this.id].slice(0)),i)return void this.fire(new t.ErrorEvent(i));const a={dataType:"source",sourceDataType:e};this._collectResourceTiming&&n&&n.length>0&&t.extend(a,{resourceTiming:n}),this.fire(new t.Event("data",a))}))}loaded(){return 0===this._pendingLoads}loadTile(t,e){const i=t.actor?"reloadTile":"loadTile";t.actor=this.actor;const r={type:this.type,uid:t.uid,tileID:t.tileID,zoom:t.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};t.request=this.actor.send(i,r,((r,n)=>(delete t.request,t.unloadVectorData(),t.aborted?e(null):r?e(r):(t.loadVectorData(n,this.map.painter,"reloadTile"===i),e(null)))))}abortTile(t){t.request&&(t.request.cancel(),delete t.request),t.aborted=!0}unloadTile(t){t.unloadVectorData(),this.actor.send("removeTile",{uid:t.uid,type:this.type,source:this.id})}onRemove(){this._removed=!0,this.actor.send("removeSource",{type:this.type,source:this.id})}serialize(){return t.extend({},this._options,{type:this.type,data:this._data})}hasTransition(){return!1}}var z=t.createLayout([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]);class C extends t.Evented{constructor(t,e,i,r){super(),this.id=t,this.dispatcher=i,this.coordinates=e.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(r),this.options=e}load(e,i){this._loaded=!1,this.fire(new t.Event("dataloading",{dataType:"source"})),this.url=this.options.url,t.getImage(this.map._requestManager.transformRequest(this.url,t.ResourceType.Image),((r,n)=>{this._loaded=!0,r?this.fire(new t.ErrorEvent(r)):n&&(this.image=n,e&&(this.coordinates=e),i&&i(),this._finishLoading())}))}loaded(){return this._loaded}updateImage(t){return this.image&&t.url?(this.options.url=t.url,this.load(t.coordinates,(()=>{this.texture=null})),this):this}_finishLoading(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new t.Event("data",{dataType:"source",sourceDataType:"metadata"})))}onAdd(t){this.map=t,this.load()}setCoordinates(e){this.coordinates=e;const i=e.map(t.MercatorCoordinate.fromLngLat);this.tileID=function(e){let i=1/0,r=1/0,n=-1/0,a=-1/0;for(const t of e)i=Math.min(i,t.x),r=Math.min(r,t.y),n=Math.max(n,t.x),a=Math.max(a,t.y);const o=Math.max(n-i,a-r),s=Math.max(0,Math.floor(-Math.log(o)/Math.LN2)),l=Math.pow(2,s);return new t.CanonicalTileID(s,Math.floor((i+n)/2*l),Math.floor((r+a)/2*l))}(i),this.minzoom=this.maxzoom=this.tileID.z;const r=i.map((t=>this.tileID.getTilePoint(t)._round()));return this._boundsArray=new t.RasterBoundsArray,this._boundsArray.emplaceBack(r[0].x,r[0].y,0,0),this._boundsArray.emplaceBack(r[1].x,r[1].y,t.EXTENT,0),this._boundsArray.emplaceBack(r[3].x,r[3].y,0,t.EXTENT),this._boundsArray.emplaceBack(r[2].x,r[2].y,t.EXTENT,t.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new t.Event("data",{dataType:"source",sourceDataType:"content"})),this}prepare(){if(0===Object.keys(this.tiles).length||!this.image)return;const e=this.map.painter.context,i=e.gl;this.boundsBuffer||(this.boundsBuffer=e.createVertexBuffer(this._boundsArray,z.members)),this.boundsSegments||(this.boundsSegments=t.SegmentVector.simpleSegment(0,0,4,2)),this.texture||(this.texture=new l(e,this.image,i.RGBA),this.texture.bind(i.LINEAR,i.CLAMP_TO_EDGE));for(const t in this.tiles){const e=this.tiles[t];"loaded"!==e.state&&(e.state="loaded",e.texture=this.texture)}}loadTile(t,e){this.tileID&&this.tileID.equals(t.tileID.canonical)?(this.tiles[String(t.tileID.wrap)]=t,t.buckets={},e(null)):(t.state="errored",e(null))}serialize(){return{type:"image",url:this.options.url,coordinates:this.coordinates}}hasTransition(){return!1}}class A extends C{constructor(t,e,i,r){super(t,e,i,r),this.roundZoom=!0,this.type="video",this.options=e}load(){this._loaded=!1;const e=this.options;this.urls=[];for(const i of e.urls)this.urls.push(this.map._requestManager.transformRequest(i,t.ResourceType.Source).url);t.getVideo(this.urls,((e,i)=>{this._loaded=!0,e?this.fire(new t.ErrorEvent(e)):i&&(this.video=i,this.video.loop=!0,this.video.addEventListener("playing",(()=>{this.map.triggerRepaint()})),this.map&&this.video.play(),this._finishLoading())}))}pause(){this.video&&this.video.pause()}play(){this.video&&this.video.play()}seek(e){if(this.video){const i=this.video.seekable;ei.end(0)?this.fire(new t.ErrorEvent(new t.ValidationError(`sources.${this.id}`,null,`Playback for this video can be set only between the ${i.start(0)} and ${i.end(0)}-second mark.`))):this.video.currentTime=e}}getVideo(){return this.video}onAdd(t){this.map||(this.map=t,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))}prepare(){if(0===Object.keys(this.tiles).length||this.video.readyState<2)return;const e=this.map.painter.context,i=e.gl;this.boundsBuffer||(this.boundsBuffer=e.createVertexBuffer(this._boundsArray,z.members)),this.boundsSegments||(this.boundsSegments=t.SegmentVector.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(i.LINEAR,i.CLAMP_TO_EDGE),i.texSubImage2D(i.TEXTURE_2D,0,0,0,i.RGBA,i.UNSIGNED_BYTE,this.video)):(this.texture=new l(e,this.video,i.RGBA),this.texture.bind(i.LINEAR,i.CLAMP_TO_EDGE));for(const t in this.tiles){const e=this.tiles[t];"loaded"!==e.state&&(e.state="loaded",e.texture=this.texture)}}serialize(){return{type:"video",urls:this.urls,coordinates:this.coordinates}}hasTransition(){return this.video&&!this.video.paused}}class k extends C{constructor(e,i,r,n){super(e,i,r,n),i.coordinates?Array.isArray(i.coordinates)&&4===i.coordinates.length&&!i.coordinates.some((t=>!Array.isArray(t)||2!==t.length||t.some((t=>"number"!=typeof t))))||this.fire(new t.ErrorEvent(new t.ValidationError(`sources.${e}`,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new t.ErrorEvent(new t.ValidationError(`sources.${e}`,null,'missing required property "coordinates"'))),i.animate&&"boolean"!=typeof i.animate&&this.fire(new t.ErrorEvent(new t.ValidationError(`sources.${e}`,null,'optional "animate" property must be a boolean value'))),i.canvas?"string"==typeof i.canvas||i.canvas instanceof HTMLCanvasElement||this.fire(new t.ErrorEvent(new t.ValidationError(`sources.${e}`,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new t.ErrorEvent(new t.ValidationError(`sources.${e}`,null,'missing required property "canvas"'))),this.options=i,this.animate=void 0===i.animate||i.animate}load(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof HTMLCanvasElement?this.options.canvas:document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new t.ErrorEvent(new Error("Canvas dimensions cannot be less than or equal to zero."))):(this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading())}getCanvas(){return this.canvas}onAdd(t){this.map=t,this.load(),this.canvas&&this.animate&&this.play()}onRemove(){this.pause()}prepare(){let e=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,e=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,e=!0),this._hasInvalidDimensions())return;if(0===Object.keys(this.tiles).length)return;const i=this.map.painter.context,r=i.gl;this.boundsBuffer||(this.boundsBuffer=i.createVertexBuffer(this._boundsArray,z.members)),this.boundsSegments||(this.boundsSegments=t.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(e||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new l(i,this.canvas,r.RGBA,{premultiply:!0});for(const t in this.tiles){const e=this.tiles[t];"loaded"!==e.state&&(e.state="loaded",e.texture=this.texture)}}serialize(){return{type:"canvas",coordinates:this.coordinates}}hasTransition(){return this._playing}_hasInvalidDimensions(){for(const t of[this.canvas.width,this.canvas.height])if(isNaN(t)||t<=0)return!0;return!1}}const M={vector:w,raster:T,"raster-dem":S,geojson:I,video:A,image:C,canvas:k};function P(e,i){const r=t.create();return t.translate(r,r,[1,1,0]),t.scale(r,r,[.5*e.width,.5*e.height,1]),t.multiply(r,r,e.calculatePosMatrix(i.toUnwrapped()))}function D(t,e,i,r,n,a){const o=function(t,e,i){if(t)for(const r of t){const t=e[r];if(t&&t.source===i&&"fill-extrusion"===t.type)return!0}else for(const r in e){const t=e[r];if(t.source===i&&"fill-extrusion"===t.type)return!0}return!1}(n&&n.layers,e,t.id),s=a.maxPitchScaleFactor(),l=t.tilesIn(r,s,o);l.sort(L);const c=[];for(const u of l)c.push({wrappedTileID:u.tileID.wrapped().key,queryResults:u.tile.queryRenderedFeatures(e,i,t._state,u.queryGeometry,u.cameraQueryGeometry,u.scale,n,a,s,P(t.transform,u.tileID))});const h=function(t){const e={},i={};for(const r of t){const t=r.queryResults,n=r.wrappedTileID,a=i[n]=i[n]||{};for(const i in t){const r=t[i],n=a[i]=a[i]||{},o=e[i]=e[i]||[];for(const t of r)n[t.featureIndex]||(n[t.featureIndex]=!0,o.push(t))}}return e}(c);for(const u in h)h[u].forEach((e=>{const i=e.feature,r=t.getFeatureState(i.layer["source-layer"],i.id);i.source=i.layer.source,i.layer["source-layer"]&&(i.sourceLayer=i.layer["source-layer"]),i.state=r}));return h}function L(t,e){const i=t.tileID,r=e.tileID;return i.overscaledZ-r.overscaledZ||i.canonical.y-r.canonical.y||i.wrap-r.wrap||i.canonical.x-r.canonical.x}class B{constructor(e,i){this.tileID=e,this.uid=t.uniqueId(),this.uses=0,this.tileSize=i,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.textures=[],this.textureCoords={},this.expiredRequestCount=0,this.state="loading"}registerFadeDuration(e){const i=e+this.timeAdded;it.saveTileTexture(e))),this.demTexture=null,this.textures=[],this.textureCoords={}}loadVectorData(e,i,r){if(this.hasData()&&this.unloadVectorData(),this.state="loaded",e){e.featureIndex&&(this.latestFeatureIndex=e.featureIndex,e.rawTileData?(this.latestRawTileData=e.rawTileData,this.latestFeatureIndex.rawTileData=e.rawTileData):this.latestRawTileData&&(this.latestFeatureIndex.rawTileData=this.latestRawTileData)),this.collisionBoxArray=e.collisionBoxArray,this.buckets=function(t,e){const i={};if(!e)return i;for(const r of t){const t=r.layerIds.map((t=>e.getLayer(t))).filter(Boolean);if(0!==t.length){r.layers=t,r.stateDependentLayerIds&&(r.stateDependentLayers=r.stateDependentLayerIds.map((e=>t.filter((t=>t.id===e))[0])));for(const e of t)i[e.id]=r}}return i}(e.buckets,i.style),this.hasSymbolBuckets=!1;for(const e in this.buckets){const i=this.buckets[e];if(i instanceof t.SymbolBucket){if(this.hasSymbolBuckets=!0,!r)break;i.justReloaded=!0}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(const e in this.buckets){const i=this.buckets[e];if(i instanceof t.SymbolBucket&&i.hasRTLText){this.hasRTLText=!0,t.lazyLoadRTLTextPlugin();break}}this.queryPadding=0;for(const t in this.buckets){const e=this.buckets[t];this.queryPadding=Math.max(this.queryPadding,i.style.getLayer(t).queryRadius(e))}e.imageAtlas&&(this.imageAtlas=e.imageAtlas),e.glyphAtlasImage&&(this.glyphAtlasImage=e.glyphAtlasImage)}else this.collisionBoxArray=new t.CollisionBoxArray}unloadVectorData(){for(const t in this.buckets)this.buckets[t].destroy();this.buckets={},this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.imageAtlas&&(this.imageAtlas=null),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.latestFeatureIndex=null,this.state="unloaded"}getBucket(t){return this.buckets[t.id]}upload(t){for(const i in this.buckets){const e=this.buckets[i];e.uploadPending()&&e.upload(t)}const e=t.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new l(t,this.imageAtlas.image,e.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new l(t,this.glyphAtlasImage,e.ALPHA),this.glyphAtlasImage=null)}prepare(t){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(t,this.imageAtlasTexture)}queryRenderedFeatures(t,e,i,r,n,a,o,s,l,c){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({queryGeometry:r,cameraQueryGeometry:n,scale:a,tileSize:this.tileSize,pixelPosMatrix:c,transform:s,params:o,queryPadding:this.queryPadding*l},t,e,i):{}}querySourceFeatures(e,i){const r=this.latestFeatureIndex;if(!r||!r.rawTileData)return;const n=r.loadVTLayers(),a=i?i.sourceLayer:"",o=n._geojsonTileLayer||n[a];if(!o)return;const s=t.createFilter(i&&i.filter),{z:l,x:c,y:h}=this.tileID.canonical,u={z:l,x:c,y:h};for(let p=0;pt)e=!1;else if(i)if(this.expirationTime{this.remove(t,n)}),i)),this.data[r].push(n),this.order.push(r),this.order.length>this.max){const t=this._getAndRemoveByKey(this.order[0]);t&&this.onRemove(t)}return this}has(t){return t.wrapped().key in this.data}getAndRemove(t){return this.has(t)?this._getAndRemoveByKey(t.wrapped().key):null}_getAndRemoveByKey(t){const e=this.data[t].shift();return e.timeout&&clearTimeout(e.timeout),0===this.data[t].length&&delete this.data[t],this.order.splice(this.order.indexOf(t),1),e.value}getByKey(t){const e=this.data[t];return e?e[0].value:null}get(t){return this.has(t)?this.data[t.wrapped().key][0].value:null}remove(t,e){if(!this.has(t))return this;const i=t.wrapped().key,r=void 0===e?0:this.data[i].indexOf(e),n=this.data[i][r];return this.data[i].splice(r,1),n.timeout&&clearTimeout(n.timeout),0===this.data[i].length&&delete this.data[i],this.onRemove(n.value),this.order.splice(this.order.indexOf(i),1),this}setMaxSize(t){for(this.max=t;this.order.length>this.max;){const t=this._getAndRemoveByKey(this.order[0]);t&&this.onRemove(t)}return this}filter(t){const e=[];for(const i in this.data)for(const r of this.data[i])t(r.value)||e.push(r);for(const i of e)this.remove(i.value.tileID,i)}}class F{constructor(){this.state={},this.stateChanges={},this.deletedStates={}}updateState(e,i,r){const n=String(i);if(this.stateChanges[e]=this.stateChanges[e]||{},this.stateChanges[e][n]=this.stateChanges[e][n]||{},t.extend(this.stateChanges[e][n],r),null===this.deletedStates[e]){this.deletedStates[e]={};for(const t in this.state[e])t!==n&&(this.deletedStates[e][t]=null)}else if(this.deletedStates[e]&&null===this.deletedStates[e][n]){this.deletedStates[e][n]={};for(const t in this.state[e][n])r[t]||(this.deletedStates[e][n][t]=null)}else for(const t in r)this.deletedStates[e]&&this.deletedStates[e][n]&&null===this.deletedStates[e][n][t]&&delete this.deletedStates[e][n][t]}removeFeatureState(t,e,i){if(null===this.deletedStates[t])return;const r=String(e);if(this.deletedStates[t]=this.deletedStates[t]||{},i&&void 0!==e)null!==this.deletedStates[t][r]&&(this.deletedStates[t][r]=this.deletedStates[t][r]||{},this.deletedStates[t][r][i]=null);else if(void 0!==e)if(this.stateChanges[t]&&this.stateChanges[t][r])for(i in this.deletedStates[t][r]={},this.stateChanges[t][r])this.deletedStates[t][r][i]=null;else this.deletedStates[t][r]=null;else this.deletedStates[t]=null}getState(e,i){const r=String(i),n=t.extend({},(this.state[e]||{})[r],(this.stateChanges[e]||{})[r]);if(null===this.deletedStates[e])return{};if(this.deletedStates[e]){const t=this.deletedStates[e][i];if(null===t)return{};for(const e in t)delete n[e]}return n}initializeTileState(t,e){t.setFeatureState(this.state,e)}coalesceChanges(e,i){const r={};for(const n in this.stateChanges){this.state[n]=this.state[n]||{};const e={};for(const i in this.stateChanges[n])this.state[n][i]||(this.state[n][i]={}),t.extend(this.state[n][i],this.stateChanges[n][i]),e[i]=this.state[n][i];r[n]=e}for(const n in this.deletedStates){this.state[n]=this.state[n]||{};const e={};if(null===this.deletedStates[n])for(const t in this.state[n])e[t]={},this.state[n][t]={};else for(const t in this.deletedStates[n]){if(null===this.deletedStates[n][t])this.state[n][t]={};else for(const e of Object.keys(this.deletedStates[n][t]))delete this.state[n][t][e];e[t]=this.state[n][t]}r[n]=r[n]||{},t.extend(r[n],e)}if(this.stateChanges={},this.deletedStates={},0!==Object.keys(r).length)for(const t in e)e[t].setFeatureState(r,i)}}class O extends t.Evented{constructor(e,i,r){super(),this.id=e,this.dispatcher=r,this.on("data",(t=>{"source"===t.dataType&&"metadata"===t.sourceDataType&&(this._sourceLoaded=!0),this._sourceLoaded&&!this._paused&&"source"===t.dataType&&"content"===t.sourceDataType&&(this.reload(),this.transform&&this.update(this.transform,this.terrain))})),this.on("dataloading",(()=>{this._sourceErrored=!1})),this.on("error",(()=>{this._sourceErrored=this._source.loaded()})),this._source=function(e,i,r,n){const a=new M[i.type](e,i,r,n);if(a.id!==e)throw new Error(`Expected Source id to be ${e} instead of ${a.id}`);return t.bindAll(["load","abort","unload","serialize","prepare"],a),a}(e,i,r,this),this._tiles={},this._cache=new R(0,this._unloadTile.bind(this)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new F}onAdd(t){this.map=t,this._maxTileCacheSize=t?t._maxTileCacheSize:null,this._source&&this._source.onAdd&&this._source.onAdd(t)}onRemove(t){this.clearTiles(),this._source&&this._source.onRemove&&this._source.onRemove(t)}loaded(){if(this._sourceErrored)return!0;if(!this._sourceLoaded)return!1;if(!this._source.loaded())return!1;for(const t in this._tiles){const e=this._tiles[t];if("loaded"!==e.state&&"errored"!==e.state)return!1}return!0}getSource(){return this._source}pause(){this._paused=!0}resume(){if(!this._paused)return;const t=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,t&&this.reload(),this.transform&&this.update(this.transform,this.terrain)}_loadTile(t,e){return this._source.loadTile(t,e)}_unloadTile(t){if(this._source.unloadTile)return this._source.unloadTile(t,(()=>{}))}_abortTile(e){this._source.abortTile&&this._source.abortTile(e,(()=>{})),this._source.fire(new t.Event("dataabort",{tile:e,coord:e.tileID,dataType:"source"}))}serialize(){return this._source.serialize()}prepare(t){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(const e in this._tiles){const i=this._tiles[e];i.upload(t),i.prepare(this.map.style.imageManager)}}getIds(){return Object.values(this._tiles).map((t=>t.tileID)).sort(V).map((t=>t.key))}getRenderableIds(e){const i=[];for(const t in this._tiles)this._isIdRenderable(t,e)&&i.push(this._tiles[t]);return e?i.sort(((e,i)=>{const r=e.tileID,n=i.tileID,a=new t.pointGeometry(r.canonical.x,r.canonical.y)._rotate(this.transform.angle),o=new t.pointGeometry(n.canonical.x,n.canonical.y)._rotate(this.transform.angle);return r.overscaledZ-n.overscaledZ||o.y-a.y||o.x-a.x})).map((t=>t.tileID.key)):i.map((t=>t.tileID)).sort(V).map((t=>t.key))}hasRenderableParent(t){const e=this.findLoadedParent(t,0);return!!e&&this._isIdRenderable(e.tileID.key)}_isIdRenderable(t,e){return this._tiles[t]&&this._tiles[t].hasData()&&!this._coveredTiles[t]&&(e||!this._tiles[t].holdingForFade())}reload(){if(this._paused)this._shouldReloadOnResume=!0;else{this._cache.reset();for(const t in this._tiles)"errored"!==this._tiles[t].state&&this._reloadTile(t,"reloading")}}_reloadTile(t,e){const i=this._tiles[t];i&&("loading"!==i.state&&(i.state=e),this._loadTile(i,this._tileLoaded.bind(this,i,t,e)))}_tileLoaded(e,i,r,n){if(n)return e.state="errored",void(404!==n.status?this._source.fire(new t.ErrorEvent(n,{tile:e})):this.update(this.transform,this.terrain));e.timeAdded=t.exported.now(),"expired"===r&&(e.refreshedUponExpiration=!0),this._setTileReloadTimer(i,e),"raster-dem"===this.getSource().type&&e.dem&&this._backfillDEM(e),this._state.initializeTileState(e,this.map?this.map.painter:null),e.aborted||this._source.fire(new t.Event("data",{dataType:"source",tile:e,coord:e.tileID}))}_backfillDEM(t){const e=this.getRenderableIds();for(let r=0;r1||(Math.abs(i)>1&&(1===Math.abs(i+n)?i+=n:1===Math.abs(i-n)&&(i-=n)),e.dem&&t.dem&&(t.dem.backfillBorder(e.dem,i,r),t.neighboringTiles&&t.neighboringTiles[a]&&(t.neighboringTiles[a].backfilled=!0)))}}getTile(t){return this.getTileByID(t.key)}getTileByID(t){return this._tiles[t]}_retainLoadedChildren(t,e,i,r){for(const n in this._tiles){let a=this._tiles[n];if(r[n]||!a.hasData()||a.tileID.overscaledZ<=e||a.tileID.overscaledZ>i)continue;let o=a.tileID;for(;a&&a.tileID.overscaledZ>e+1;){const t=a.tileID.scaledTo(a.tileID.overscaledZ-1);a=this._tiles[t.key],a&&a.hasData()&&(o=t)}let s=o;for(;s.overscaledZ>e;)if(s=s.scaledTo(s.overscaledZ-1),t[s.key]){r[o.key]=o;break}}}findLoadedParent(t,e){if(t.key in this._loadedParentTiles){const i=this._loadedParentTiles[t.key];return i&&i.tileID.overscaledZ>=e?i:null}for(let i=t.overscaledZ-1;i>=e;i--){const e=t.scaledTo(i),r=this._getLoadedTile(e);if(r)return r}}_getLoadedTile(t){const e=this._tiles[t.key];return e&&e.hasData()?e:this._cache.getByKey(t.wrapped().key)}updateCacheSize(t){const e=Math.ceil(t.width/this._source.tileSize)+1,i=Math.ceil(t.height/this._source.tileSize)+1,r=Math.floor(e*i*5),n="number"==typeof this._maxTileCacheSize?Math.min(this._maxTileCacheSize,r):r;this._cache.setMaxSize(n)}handleWrapJump(t){const e=Math.round((t-(void 0===this._prevLng?t:this._prevLng))/360);if(this._prevLng=t,e){const t={};for(const i in this._tiles){const r=this._tiles[i];r.tileID=r.tileID.unwrapTo(r.tileID.wrap+e),t[r.tileID.key]=r}this._tiles=t;for(const e in this._timers)clearTimeout(this._timers[e]),delete this._timers[e];for(const e in this._tiles)this._setTileReloadTimer(e,this._tiles[e])}}update(e,i){if(this.transform=e,this.terrain=i,!this._sourceLoaded||this._paused)return;let r;this.updateCacheSize(e),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used||this.usedForTerrain?this._source.tileID?r=e.getVisibleUnwrappedCoordinates(this._source.tileID).map((e=>new t.OverscaledTileID(e.canonical.z,e.wrap,e.canonical.z,e.canonical.x,e.canonical.y))):(r=e.coveringTiles({tileSize:this.usedForTerrain?this.tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:!this.usedForTerrain&&this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled,terrain:i}),this._source.hasTile&&(r=r.filter((t=>this._source.hasTile(t))))):r=[];const n=e.coveringZoomLevel(this._source),a=Math.max(n-O.maxOverzooming,this._source.minzoom),o=Math.max(n+O.maxUnderzooming,this._source.minzoom);if(this.usedForTerrain){const t={};for(const e of r)if(e.canonical.z>this._source.minzoom){const i=e.scaledTo(e.canonical.z-1);t[i.key]=i;const r=e.scaledTo(Math.max(this._source.minzoom,Math.min(e.canonical.z,5)));t[r.key]=r}r=r.concat(Object.values(t))}const s=this._updateRetainedTiles(r,n);if(U(this._source.type)){const e={},l={},c=Object.keys(s);for(const i of c){const r=s[i],n=this._tiles[i];if(!n||n.fadeEndTime&&n.fadeEndTime<=t.exported.now())continue;const o=this.findLoadedParent(r,a);o&&(this._addTile(o.tileID),e[o.tileID.key]=o.tileID),l[i]=r}this._retainLoadedChildren(l,n,o,s);for(const t in e)s[t]||(this._coveredTiles[t]=!0,s[t]=e[t]);if(i){const t={},e={};for(const i of r)this._tiles[i.key].hasData()?t[i.key]=i:e[i.key]=i;for(const i in e){const r=e[i].children(this._source.maxzoom);this._tiles[r[0].key]&&this._tiles[r[1].key]&&this._tiles[r[2].key]&&this._tiles[r[3].key]&&(t[r[0].key]=s[r[0].key]=r[0],t[r[1].key]=s[r[1].key]=r[1],t[r[2].key]=s[r[2].key]=r[2],t[r[3].key]=s[r[3].key]=r[3],delete e[i])}for(const i in e){const r=this.findLoadedParent(e[i],this._source.minzoom);if(r){t[r.tileID.key]=s[r.tileID.key]=r.tileID;for(const e in t)t[e].isChildOf(r.tileID)&&delete t[e]}}for(const i in this._tiles)t[i]||(this._coveredTiles[i]=!0)}}for(const t in s)this._tiles[t].clearFadeHold();const l=t.keysDifference(this._tiles,s);for(const t of l){const e=this._tiles[t];e.hasSymbolBuckets&&!e.holdingForFade()?e.setHoldDuration(this.map._fadeDuration):e.hasSymbolBuckets&&!e.symbolFadeFinished()||this._removeTile(t)}this._updateLoadedParentTileCache()}releaseSymbolFadeTiles(){for(const t in this._tiles)this._tiles[t].holdingForFade()&&this._removeTile(t)}_updateRetainedTiles(t,e){const i={},r={},n=Math.max(e-O.maxOverzooming,this._source.minzoom),a=Math.max(e+O.maxUnderzooming,this._source.minzoom),o={};for(const s of t){const t=this._addTile(s);i[s.key]=s,t.hasData()||ethis._source.maxzoom){const t=s.children(this._source.maxzoom)[0],e=this.getTile(t);if(e&&e.hasData()){i[t.key]=t;continue}}else{const t=s.children(this._source.maxzoom);if(i[t[0].key]&&i[t[1].key]&&i[t[2].key]&&i[t[3].key])continue}let a=t.wasRequested();for(let e=s.overscaledZ-1;e>=n;--e){const n=s.scaledTo(e);if(r[n.key])break;if(r[n.key]=!0,t=this.getTile(n),!t&&a&&(t=this._addTile(n)),t&&(i[n.key]=n,a=t.wasRequested(),t.hasData()))break}}return i}_updateLoadedParentTileCache(){this._loadedParentTiles={};for(const t in this._tiles){const e=[];let i,r=this._tiles[t].tileID;for(;r.overscaledZ>0;){if(r.key in this._loadedParentTiles){i=this._loadedParentTiles[r.key];break}e.push(r.key);const t=r.scaledTo(r.overscaledZ-1);if(i=this._getLoadedTile(t),i)break;r=t}for(const t of e)this._loadedParentTiles[t]=i}}_addTile(e){let i=this._tiles[e.key];if(i)return i;i=this._cache.getAndRemove(e),i&&(this._setTileReloadTimer(e.key,i),i.tileID=e,this._state.initializeTileState(i,this.map?this.map.painter:null),this._cacheTimers[e.key]&&(clearTimeout(this._cacheTimers[e.key]),delete this._cacheTimers[e.key],this._setTileReloadTimer(e.key,i)));const r=i;return i||(i=new B(e,this._source.tileSize*e.overscaleFactor()),this._loadTile(i,this._tileLoaded.bind(this,i,e.key,i.state))),i.uses++,this._tiles[e.key]=i,r||this._source.fire(new t.Event("dataloading",{tile:i,coord:i.tileID,dataType:"source"})),i}_setTileReloadTimer(t,e){t in this._timers&&(clearTimeout(this._timers[t]),delete this._timers[t]);const i=e.getExpiryTimeout();i&&(this._timers[t]=setTimeout((()=>{this._reloadTile(t,"expired"),delete this._timers[t]}),i))}_removeTile(t){const e=this._tiles[t];e&&(e.uses--,delete this._tiles[t],this._timers[t]&&(clearTimeout(this._timers[t]),delete this._timers[t]),e.uses>0||(e.hasData()&&"reloading"!==e.state?this._cache.add(e.tileID,e,e.getExpiryTimeout()):(e.aborted=!0,this._abortTile(e),this._unloadTile(e))))}clearTiles(){this._shouldReloadOnResume=!1,this._paused=!1;for(const t in this._tiles)this._removeTile(t);this._cache.reset()}tilesIn(e,i,r){const n=[],a=this.transform;if(!a)return n;const o=r?a.getCameraQueryGeometry(e):e,s=e.map((t=>a.pointCoordinate(t,this.terrain))),l=o.map((t=>a.pointCoordinate(t,this.terrain))),c=this.getIds();let h=1/0,u=1/0,p=-1/0,d=-1/0;for(const t of l)h=Math.min(h,t.x),u=Math.min(u,t.y),p=Math.max(p,t.x),d=Math.max(d,t.y);for(let m=0;m=0&&g[1].y+f>=0){const t=s.map((t=>r.getTilePoint(t))),i=l.map((t=>r.getTilePoint(t)));n.push({tile:e,tileID:r,queryGeometry:t,cameraQueryGeometry:i,scale:o})}}return n}getVisibleCoordinates(t){const e=this.getRenderableIds(t).map((t=>this._tiles[t].tileID));for(const i of e)i.posMatrix=this.transform.calculatePosMatrix(i.toUnwrapped());return e}hasTransition(){if(this._source.hasTransition())return!0;if(U(this._source.type))for(const e in this._tiles){const i=this._tiles[e];if(void 0!==i.fadeEndTime&&i.fadeEndTime>=t.exported.now())return!0}return!1}setFeatureState(t,e,i){this._state.updateState(t=t||"_geojsonTileLayer",e,i)}removeFeatureState(t,e,i){this._state.removeFeatureState(t=t||"_geojsonTileLayer",e,i)}getFeatureState(t,e){return this._state.getState(t=t||"_geojsonTileLayer",e)}setDependencies(t,e,i){const r=this._tiles[t];r&&r.setDependencies(e,i)}reloadTilesForDependencies(t,e){for(const i in this._tiles)this._tiles[i].hasDependency(t,e)&&this._reloadTile(i,"reloading");this._cache.filter((i=>!i.hasDependency(t,e)))}}function V(t,e){const i=Math.abs(2*t.wrap)-+(t.wrap<0),r=Math.abs(2*e.wrap)-+(e.wrap<0);return t.overscaledZ-e.overscaledZ||r-i||e.canonical.y-t.canonical.y||e.canonical.x-t.canonical.x}function U(t){return"raster"===t||"image"===t||"video"===t}O.maxOverzooming=10,O.maxUnderzooming=3;const N="mapboxgl_preloaded_worker_pool";class ${constructor(){this.active={}}acquire(t){if(!this.workers)for(this.workers=[];this.workers.length<$.workerCount;)this.workers.push(new Worker(bn.workerUrl));return this.active[t]=!0,this.workers.slice()}release(t){delete this.active[t],0===this.numActive()&&(this.workers.forEach((t=>{t.terminate()})),this.workers=null)}isPreloaded(){return!!this.active[N]}numActive(){return Object.keys(this.active).length}}const G=Math.floor(t.exported.hardwareConcurrency/2);let q;function Z(){return q||(q=new $),q}function j(e,i){const r={};for(const t in e)"ref"!==t&&(r[t]=e[t]);return t.refProperties.forEach((t=>{t in i&&(r[t]=i[t])})),r}function X(t){t=t.slice();const e=Object.create(null);for(let i=0;i0?(n-o)/s:0;return this.points[a].mult(1-l).add(this.points[i].mult(l))}}function rt(t,e){let i=!0;return"always"===t||"never"!==t&&"never"!==e||(i=!1),i}class nt{constructor(t,e,i){const r=this.boxCells=[],n=this.circleCells=[];this.xCellCount=Math.ceil(t/i),this.yCellCount=Math.ceil(e/i);for(let a=0;athis.width||r<0||e>this.height)return[];const s=[];if(t<=0&&e<=0&&this.width<=i&&this.height<=r){if(n)return[{key:null,x1:t,y1:e,x2:i,y2:r}];for(let t=0;t0}hitTestCircle(t,e,i,r,n){const a=t-i,o=t+i,s=e-i,l=e+i;if(o<0||a>this.width||l<0||s>this.height)return!1;const c=[];return this._forEachCell(a,s,o,l,this._queryCellCircle,c,{hitTest:!0,overlapMode:r,circle:{x:t,y:e,radius:i},seenUids:{box:{},circle:{}}},n),c.length>0}_queryCell(t,e,i,r,n,a,o,s){const{seenUids:l,hitTest:c,overlapMode:h}=o,u=this.boxCells[n];if(null!==u){const n=this.bboxes;for(const o of u)if(!l.box[o]){l.box[o]=!0;const u=4*o,p=this.boxKeys[o];if(t<=n[u+2]&&e<=n[u+3]&&i>=n[u+0]&&r>=n[u+1]&&(!s||s(p))&&(!c||!rt(h,p.overlapMode))&&(a.push({key:p,x1:n[u],y1:n[u+1],x2:n[u+2],y2:n[u+3]}),c))return!0}}const p=this.circleCells[n];if(null!==p){const n=this.circles;for(const o of p)if(!l.circle[o]){l.circle[o]=!0;const u=3*o,p=this.circleKeys[o];if(this._circleAndRectCollide(n[u],n[u+1],n[u+2],t,e,i,r)&&(!s||s(p))&&(!c||!rt(h,p.overlapMode))){const t=n[u],e=n[u+1],i=n[u+2];if(a.push({key:p,x1:t-i,y1:e-i,x2:t+i,y2:e+i}),c)return!0}}}return!1}_queryCellCircle(t,e,i,r,n,a,o,s){const{circle:l,seenUids:c,overlapMode:h}=o,u=this.boxCells[n];if(null!==u){const t=this.bboxes;for(const e of u)if(!c.box[e]){c.box[e]=!0;const i=4*e,r=this.boxKeys[e];if(this._circleAndRectCollide(l.x,l.y,l.radius,t[i+0],t[i+1],t[i+2],t[i+3])&&(!s||s(r))&&!rt(h,r.overlapMode))return a.push(!0),!0}}const p=this.circleCells[n];if(null!==p){const t=this.circles;for(const e of p)if(!c.circle[e]){c.circle[e]=!0;const i=3*e,r=this.circleKeys[e];if(this._circlesCollide(t[i],t[i+1],t[i+2],l.x,l.y,l.radius)&&(!s||s(r))&&!rt(h,r.overlapMode))return a.push(!0),!0}}}_forEachCell(t,e,i,r,n,a,o,s){const l=this._convertToXCellCoord(t),c=this._convertToYCellCoord(e),h=this._convertToXCellCoord(i),u=this._convertToYCellCoord(r);for(let p=l;p<=h;p++)for(let l=c;l<=u;l++)if(n.call(this,t,e,i,r,this.xCellCount*l+p,a,o,s))return}_convertToXCellCoord(t){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(t*this.xScale)))}_convertToYCellCoord(t){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(t*this.yScale)))}_circlesCollide(t,e,i,r,n,a){const o=r-t,s=n-e,l=i+a;return l*l>o*o+s*s}_circleAndRectCollide(t,e,i,r,n,a,o){const s=(a-r)/2,l=Math.abs(t-(r+s));if(l>s+i)return!1;const c=(o-n)/2,h=Math.abs(e-(n+c));if(h>c+i)return!1;if(l<=s||h<=c)return!0;const u=l-s,p=h-c;return u*u+p*p<=i*i}}function at(e,i,r,n,a){const o=t.create();return i?(t.scale(o,o,[1/a,1/a,1]),r||t.rotateZ(o,o,n.angle)):t.multiply(o,n.labelPlaneMatrix,e),o}function ot(e,i,r,n,a){if(i){const i=t.clone(e);return t.scale(i,i,[a,a,1]),r||t.rotateZ(i,i,-n.angle),i}return n.glCoordMatrix}function st(e,i,r){let n;r?(n=[e.x,e.y,r(e.x,e.y),1],t.transformMat4(n,n,i)):(n=[e.x,e.y,0,1],yt(n,n,i));const a=n[3];return{point:new t.pointGeometry(n[0]/a,n[1]/a),signedDistanceFromCamera:a}}function lt(t,e){return.5+t/e*.5}function ct(t,e){const i=t[0]/t[3],r=t[1]/t[3];return i>=-e[0]&&i<=e[0]&&r>=-e[1]&&r<=e[1]}function ht(e,i,r,n,a,o,s,l,c,h){const u=n?e.textSizeData:e.iconSizeData,p=t.evaluateSizeForZoom(u,r.transform.zoom),d=[256/r.width*2+1,256/r.height*2+1],m=n?e.text.dynamicLayoutVertexArray:e.icon.dynamicLayoutVertexArray;m.clear();const f=e.lineVertexArray,g=n?e.text.placedSymbolArray:e.icon.placedSymbolArray,_=r.transform.width/r.transform.height;let y=!1;for(let x=0;xMath.abs(r.x-i.x)*n?{useVertical:!0}:(e===t.WritingMode.vertical?i.yr.x)?{needsFlipping:!0}:null}function dt(e,i,r,n,a,o,s,l,c,h,u,p,d,m,f,g){const _=i/24,y=e.lineOffsetX*_,x=e.lineOffsetY*_;let v;if(e.numGlyphs>1){const t=e.glyphStartIndex+e.numGlyphs,i=e.lineStartIndex,a=e.lineStartIndex+e.lineLength,h=ut(_,l,y,x,r,u,p,e,c,o,d,f,g);if(!h)return{notEnoughRoom:!0};const b=st(h.first.point,s,g).point,w=st(h.last.point,s,g).point;if(n&&!r){const t=pt(e.writingMode,b,w,m);if(t)return t}v=[h.first];for(let n=e.glyphStartIndex+1;n0?o.point:mt(p,n,i,1,a,g),l=pt(e.writingMode,i,s,m);if(l)return l}const i=ft(_*l.getoffsetX(e.glyphStartIndex),y,x,r,u,p,e.segment,e.lineStartIndex,e.lineStartIndex+e.lineLength,c,o,d,f,g);if(!i)return{notEnoughRoom:!0};v=[i]}for(const b of v)t.addDynamicAttributes(h,b.point,b.angle);return{}}function mt(t,e,i,r,n,a){const o=st(t.add(t.sub(e)._unit()),n,a).point,s=i.sub(o);return i.add(s._mult(r/s.mag()))}function ft(e,i,r,n,a,o,s,l,c,h,u,p,d,m){const f=n?e-i:e+i;let g=f>0?1:-1,_=0;n&&(g*=-1,_=Math.PI),g<0&&(_+=Math.PI);let y=g>0?l+s:l+s+1,x=a,v=a,b=0,w=0;const T=Math.abs(f),E=[];for(;b+w<=T;){if(y+=g,y=c)return null;if(v=x,E.push(x),x=p[y],void 0===x){const e=new t.pointGeometry(h.getx(y),h.gety(y)),i=st(e,u,m);if(i.signedDistanceFromCamera>0)x=p[y]=i.point;else{const i=y-g;x=mt(0===b?o:new t.pointGeometry(h.getx(i),h.gety(i)),e,v,T-b+1,u,m)}}b+=w,w=v.dist(x)}const S=(T-b)/w,I=x.sub(v),z=I.mult(S)._add(v);z._add(I._unit()._perp()._mult(r*g));const C=_+Math.atan2(x.y-v.y,x.x-v.x);return E.push(z),{point:z,angle:d?C:0,path:E}}const gt=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function _t(t,e){for(let i=0;i=1;t--)h.push(o.path[t]);for(let t=1;tst(t,l,m)));h=t.some((t=>t.signedDistanceFromCamera<=0))?[]:t.map((t=>t.point))}let _=[];if(h.length>0){const e=h[0].clone(),i=h[0].clone();for(let t=1;t=r.x&&i.x<=n.x&&e.y>=r.y&&i.y<=n.y?[h]:i.xn.x||i.yn.y?[]:t.clipLine([h],r.x,r.y,n.x,n.y)}for(const t of _){a.reset(t,.25*i);let r=0;r=a.length<=.5*i?1:Math.ceil(a.paddedLength/g)+1;for(let t=0;t=this.screenRightBoundary||rthis.screenBottomBoundary}isInsideGrid(t,e,i,r){return i>=0&&t=0&&et.collisionGroupID===e}}return this.collisionGroups[t]}}function Ct(e,i,r,n,a){const{horizontalAlign:o,verticalAlign:s}=t.getAnchorAlignment(e),l=-(o-.5)*i,c=-(s-.5)*r,h=t.evaluateVariableOffset(e,n);return new t.pointGeometry(l+h[0]*a,c+h[1]*a)}function At(e,i,r,n,a,o){const{x1:s,x2:l,y1:c,y2:h,anchorPointX:u,anchorPointY:p}=e,d=new t.pointGeometry(i,r);return n&&d._rotate(a?o:-o),{x1:s+d.x,y1:c+d.y,x2:l+d.x,y2:h+d.y,anchorPointX:u,anchorPointY:p}}class kt{constructor(t,e,i,r,n){this.transform=t.clone(),this.terrain=e,this.collisionIndex=new vt(this.transform),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=i,this.retainedQueryData={},this.collisionGroups=new zt(r),this.collisionCircleArrays={},this.prevPlacement=n,n&&(n.prevPlacement=void 0),this.placedOrientations={}}getBucketParts(e,i,r,n){const a=r.getBucket(i),o=r.latestFeatureIndex;if(!a||!o||i.id!==a.layerIds[0])return;const s=r.collisionBoxArray,l=a.layers[0].layout,c=Math.pow(2,this.transform.zoom-r.tileID.overscaledZ),h=r.tileSize/t.EXTENT,u=this.transform.calculatePosMatrix(r.tileID.toUnwrapped()),p="map"===l.get("text-pitch-alignment"),d="map"===l.get("text-rotation-alignment"),m=bt(r,1,this.transform.zoom),f=at(u,p,d,this.transform,m);let g=null;if(p){const e=ot(u,p,d,this.transform,m);g=t.multiply([],this.transform.labelPlaneMatrix,e)}this.retainedQueryData[a.bucketInstanceId]=new It(a.bucketInstanceId,o,a.sourceLayerIndex,a.index,r.tileID);const _={bucket:a,layout:l,posMatrix:u,textLabelPlaneMatrix:f,labelToScreenMatrix:g,scale:c,textPixelRatio:h,holdingForFade:r.holdingForFade(),collisionBoxArray:s,partiallyEvaluatedTextSize:t.evaluateSizeForZoom(a.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(a.sourceID)};if(n)for(const t of a.sortKeyRanges){const{sortKey:i,symbolInstanceStart:r,symbolInstanceEnd:n}=t;e.push({sortKey:i,symbolInstanceStart:r,symbolInstanceEnd:n,parameters:_})}else e.push({symbolInstanceStart:0,symbolInstanceEnd:a.symbolInstances.length,parameters:_})}attemptAnchorPlacement(t,e,i,r,n,a,o,s,l,c,h,u,p,d,m,f){const g=[u.textOffset0,u.textOffset1],_=Ct(t,i,r,g,n),y=this.collisionIndex.placeCollisionBox(At(e,_.x,_.y,a,o,this.transform.angle),h,s,l,c.predicate,f);if((!m||0!==this.collisionIndex.placeCollisionBox(At(m,_.x,_.y,a,o,this.transform.angle),h,s,l,c.predicate,f).box.length)&&y.box.length>0){let e;if(this.prevPlacement&&this.prevPlacement.variableOffsets[u.crossTileID]&&this.prevPlacement.placements[u.crossTileID]&&this.prevPlacement.placements[u.crossTileID].text&&(e=this.prevPlacement.variableOffsets[u.crossTileID].anchor),0===u.crossTileID)throw new Error("symbolInstance.crossTileID can't be 0");return this.variableOffsets[u.crossTileID]={textOffset:g,width:i,height:r,anchor:t,textBoxScale:n,prevAnchor:e},this.markUsedJustification(p,t,u,d),p.allowVerticalPlacement&&(this.markUsedOrientation(p,d,u),this.placedOrientations[u.crossTileID]=d),{shift:_,placedGlyphBoxes:y}}}placeLayerBucketPart(e,i,r){const{bucket:n,layout:a,posMatrix:o,textLabelPlaneMatrix:s,labelToScreenMatrix:l,textPixelRatio:c,holdingForFade:h,collisionBoxArray:u,partiallyEvaluatedTextSize:p,collisionGroup:d}=e.parameters,m=a.get("text-optional"),f=a.get("icon-optional"),g=t.getOverlapMode(a,"text-overlap","text-allow-overlap"),_="always"===g,y=t.getOverlapMode(a,"icon-overlap","icon-allow-overlap"),x="always"===y,v="map"===a.get("text-rotation-alignment"),b="map"===a.get("text-pitch-alignment"),w="none"!==a.get("icon-text-fit"),T="viewport-y"===a.get("symbol-z-order"),E=_&&(x||!n.hasIconData()||f),S=x&&(_||!n.hasTextData()||m);!n.collisionArrays&&u&&n.deserializeCollisionBoxes(u);const I=(e,u)=>{if(i[e.crossTileID])return;if(h)return void(this.placements[e.crossTileID]=new Et(!1,!1,!1));let x=!1,T=!1,I=!0,z=null,C={box:null,offscreen:null},A={box:null,offscreen:null},k=null,M=null,P=null,D=0,L=0,B=0;u.textFeatureIndex?D=u.textFeatureIndex:e.useRuntimeCollisionCircles&&(D=e.featureIndex),u.verticalTextFeatureIndex&&(L=u.verticalTextFeatureIndex);const R=this.retainedQueryData[n.bucketInstanceId].tileID,F=this.terrain?(t,e)=>this.terrain.getElevation(R,t,e):null;for(const t of["textBox","verticalTextBox","iconBox","verticalIconBox"]){const e=u[t];e&&(e.elevation=F?F(e.anchorPointX,e.anchorPointY):0)}const O=u.textBox;if(O){const i=i=>{let r=t.WritingMode.horizontal;if(n.allowVerticalPlacement&&!i&&this.prevPlacement){const t=this.prevPlacement.placedOrientations[e.crossTileID];t&&(this.placedOrientations[e.crossTileID]=t,r=t,this.markUsedOrientation(n,r,e))}return r},r=(i,r)=>{if(n.allowVerticalPlacement&&e.numVerticalGlyphVertices>0&&u.verticalTextBox){for(const e of n.writingModes)if(e===t.WritingMode.vertical?(C=r(),A=C):C=i(),C&&C.box&&C.box.length)break}else C=i()};if(a.get("text-variable-anchor")){let s=a.get("text-variable-anchor");if(this.prevPlacement&&this.prevPlacement.variableOffsets[e.crossTileID]){const t=this.prevPlacement.variableOffsets[e.crossTileID];s.indexOf(t.anchor)>0&&(s=s.filter((e=>e!==t.anchor)),s.unshift(t.anchor))}const l=(t,i,r)=>{const a=t.x2-t.x1,l=t.y2-t.y1,h=e.textBoxScale,u=w&&"never"===y?i:null;let p={box:[],offscreen:!1};const m="never"!==g?2*s.length:s.length;for(let f=0;f=s.length?g:"never",e,n,r,u,F);if(i&&(p=i.placedGlyphBoxes,p&&p.box&&p.box.length)){x=!0,z=i.shift;break}}return p};r((()=>l(O,u.iconBox,t.WritingMode.horizontal)),(()=>{const i=u.verticalTextBox;return n.allowVerticalPlacement&&!(C&&C.box&&C.box.length)&&e.numVerticalGlyphVertices>0&&i?l(i,u.verticalIconBox,t.WritingMode.vertical):{box:null,offscreen:null}})),C&&(x=C.box,I=C.offscreen);const h=i(C&&C.box);if(!x&&this.prevPlacement){const t=this.prevPlacement.variableOffsets[e.crossTileID];t&&(this.variableOffsets[e.crossTileID]=t,this.markUsedJustification(n,t.anchor,e,h))}}else{const a=(t,i)=>{const r=this.collisionIndex.placeCollisionBox(t,g,c,o,d.predicate,F);return r&&r.box&&r.box.length&&(this.markUsedOrientation(n,i,e),this.placedOrientations[e.crossTileID]=i),r};r((()=>a(O,t.WritingMode.horizontal)),(()=>{const i=u.verticalTextBox;return n.allowVerticalPlacement&&e.numVerticalGlyphVertices>0&&i?a(i,t.WritingMode.vertical):{box:null,offscreen:null}})),i(C&&C.box&&C.box.length)}}if(k=C,x=k&&k.box&&k.box.length>0,I=k&&k.offscreen,e.useRuntimeCollisionCircles){const i=n.text.placedSymbolArray.get(e.centerJustifiedTextSymbolIndex),c=t.evaluateSizeForFeature(n.textSizeData,p,i),h=a.get("text-padding");M=this.collisionIndex.placeCollisionCircles(g,i,n.lineVertexArray,n.glyphOffsetArray,c,o,s,l,r,b,d.predicate,e.collisionCircleDiameter,h,F),M.circles.length&&M.collisionDetected&&!r&&t.warnOnce("Collisions detected, but collision boxes are not shown"),x=_||M.circles.length>0&&!M.collisionDetected,I=I&&M.offscreen}if(u.iconFeatureIndex&&(B=u.iconFeatureIndex),u.iconBox){const t=t=>{const e=w&&z?At(t,z.x,z.y,v,b,this.transform.angle):t;return this.collisionIndex.placeCollisionBox(e,y,c,o,d.predicate,F)};A&&A.box&&A.box.length&&u.verticalIconBox?(P=t(u.verticalIconBox),T=P.box.length>0):(P=t(u.iconBox),T=P.box.length>0),I=I&&P.offscreen}const V=m||0===e.numHorizontalGlyphVertices&&0===e.numVerticalGlyphVertices,U=f||0===e.numIconVertices;if(V||U?U?V||(T=T&&x):x=T&&x:T=x=T&&x,x&&k&&k.box&&this.collisionIndex.insertCollisionBox(k.box,g,a.get("text-ignore-placement"),n.bucketInstanceId,A&&A.box&&L?L:D,d.ID),T&&P&&this.collisionIndex.insertCollisionBox(P.box,y,a.get("icon-ignore-placement"),n.bucketInstanceId,B,d.ID),M&&(x&&this.collisionIndex.insertCollisionCircles(M.circles,g,a.get("text-ignore-placement"),n.bucketInstanceId,D,d.ID),r)){const t=n.bucketInstanceId;let e=this.collisionCircleArrays[t];void 0===e&&(e=this.collisionCircleArrays[t]=new St);for(let i=0;i=0;--e){const i=t[e];I(n.symbolInstances.get(i),n.collisionArrays[i])}}else for(let t=e.symbolInstanceStart;t=0&&(e.text.placedSymbolArray.get(t).crossTileID=a>=0&&t!==a?0:r.crossTileID)}markUsedOrientation(e,i,r){const n=i===t.WritingMode.horizontal||i===t.WritingMode.horizontalOnly?i:0,a=i===t.WritingMode.vertical?i:0,o=[r.leftJustifiedTextSymbolIndex,r.centerJustifiedTextSymbolIndex,r.rightJustifiedTextSymbolIndex];for(const t of o)e.text.placedSymbolArray.get(t).placedOrientation=n;r.verticalPlacedTextSymbolIndex&&(e.text.placedSymbolArray.get(r.verticalPlacedTextSymbolIndex).placedOrientation=a)}commit(t){this.commitTime=t,this.zoomAtLastRecencyCheck=this.transform.zoom;const e=this.prevPlacement;let i=!1;this.prevZoomAdjustment=e?e.zoomAdjustment(this.transform.zoom):0;const r=e?e.symbolFadeChange(t):1,n=e?e.opacities:{},a=e?e.variableOffsets:{},o=e?e.placedOrientations:{};for(const s in this.placements){const t=this.placements[s],e=n[s];e?(this.opacities[s]=new Tt(e,r,t.text,t.icon),i=i||t.text!==e.text.placed||t.icon!==e.icon.placed):(this.opacities[s]=new Tt(null,r,t.text,t.icon,t.skipFade),i=i||t.text||t.icon)}for(const s in n){const t=n[s];if(!this.opacities[s]){const e=new Tt(t,r,!1,!1);e.isHidden()||(this.opacities[s]=e,i=i||t.text.placed||t.icon.placed)}}for(const s in a)this.variableOffsets[s]||!this.opacities[s]||this.opacities[s].isHidden()||(this.variableOffsets[s]=a[s]);for(const s in o)this.placedOrientations[s]||!this.opacities[s]||this.opacities[s].isHidden()||(this.placedOrientations[s]=o[s]);if(e&&void 0===e.lastPlacementChangeTime)throw new Error("Last placement time for previous placement is not defined");i?this.lastPlacementChangeTime=t:"number"!=typeof this.lastPlacementChangeTime&&(this.lastPlacementChangeTime=e?e.lastPlacementChangeTime:t)}updateLayerOpacities(t,e){const i={};for(const r of e){const e=r.getBucket(t);e&&r.latestFeatureIndex&&t.id===e.layerIds[0]&&this.updateBucketOpacities(e,i,r.collisionBoxArray)}}updateBucketOpacities(e,i,r){e.hasTextData()&&e.text.opacityVertexArray.clear(),e.hasIconData()&&e.icon.opacityVertexArray.clear(),e.hasIconCollisionBoxData()&&e.iconCollisionBox.collisionVertexArray.clear(),e.hasTextCollisionBoxData()&&e.textCollisionBox.collisionVertexArray.clear();const n=e.layers[0].layout,a=new Tt(null,0,!1,!1,!0),o=n.get("text-allow-overlap"),s=n.get("icon-allow-overlap"),l=n.get("text-variable-anchor"),c="map"===n.get("text-rotation-alignment"),h="map"===n.get("text-pitch-alignment"),u="none"!==n.get("icon-text-fit"),p=new Tt(null,0,o&&(s||!e.hasIconData()||n.get("icon-optional")),s&&(o||!e.hasTextData()||n.get("text-optional")),!0);!e.collisionArrays&&r&&(e.hasIconCollisionBoxData()||e.hasTextCollisionBoxData())&&e.deserializeCollisionBoxes(r);const d=(t,e,i)=>{for(let r=0;r0,_=this.placedOrientations[r.crossTileID],y=_===t.WritingMode.vertical,x=_===t.WritingMode.horizontal||_===t.WritingMode.horizontalOnly;if(n>0||o>0){const t=Vt(f.text);d(e.text,n,y?Ut:t),d(e.text,o,x?Ut:t);const i=f.text.isHidden();[r.rightJustifiedTextSymbolIndex,r.centerJustifiedTextSymbolIndex,r.leftJustifiedTextSymbolIndex].forEach((t=>{t>=0&&(e.text.placedSymbolArray.get(t).hidden=i||y?1:0)})),r.verticalPlacedTextSymbolIndex>=0&&(e.text.placedSymbolArray.get(r.verticalPlacedTextSymbolIndex).hidden=i||x?1:0);const a=this.variableOffsets[r.crossTileID];a&&this.markUsedJustification(e,a.anchor,r,_);const s=this.placedOrientations[r.crossTileID];s&&(this.markUsedJustification(e,"left",r,s),this.markUsedOrientation(e,s,r))}if(g){const t=Vt(f.icon),i=!(u&&r.verticalPlacedIconSymbolIndex&&y);r.placedIconSymbolIndex>=0&&(d(e.icon,r.numIconVertices,i?t:Ut),e.icon.placedSymbolArray.get(r.placedIconSymbolIndex).hidden=f.icon.isHidden()),r.verticalPlacedIconSymbolIndex>=0&&(d(e.icon,r.numVerticalIconVertices,i?Ut:t),e.icon.placedSymbolArray.get(r.verticalPlacedIconSymbolIndex).hidden=f.icon.isHidden())}if(e.hasIconCollisionBoxData()||e.hasTextCollisionBoxData()){const i=e.collisionArrays[m];if(i){let r=new t.pointGeometry(0,0);if(i.textBox||i.verticalTextBox){let t=!0;if(l){const e=this.variableOffsets[s];e?(r=Ct(e.anchor,e.width,e.height,e.textOffset,e.textBoxScale),c&&r._rotate(h?this.transform.angle:-this.transform.angle)):t=!1}i.textBox&&Mt(e.textCollisionBox.collisionVertexArray,f.text.placed,!t||y,r.x,r.y),i.verticalTextBox&&Mt(e.textCollisionBox.collisionVertexArray,f.text.placed,!t||x,r.x,r.y)}const n=Boolean(!x&&i.verticalIconBox);i.iconBox&&Mt(e.iconCollisionBox.collisionVertexArray,f.icon.placed,n,u?r.x:0,u?r.y:0),i.verticalIconBox&&Mt(e.iconCollisionBox.collisionVertexArray,f.icon.placed,!n,u?r.x:0,u?r.y:0)}}}if(e.sortFeatures(this.transform.angle),this.retainedQueryData[e.bucketInstanceId]&&(this.retainedQueryData[e.bucketInstanceId].featureSortOrder=e.featureSortOrder),e.hasTextData()&&e.text.opacityVertexBuffer&&e.text.opacityVertexBuffer.updateData(e.text.opacityVertexArray),e.hasIconData()&&e.icon.opacityVertexBuffer&&e.icon.opacityVertexBuffer.updateData(e.icon.opacityVertexArray),e.hasIconCollisionBoxData()&&e.iconCollisionBox.collisionVertexBuffer&&e.iconCollisionBox.collisionVertexBuffer.updateData(e.iconCollisionBox.collisionVertexArray),e.hasTextCollisionBoxData()&&e.textCollisionBox.collisionVertexBuffer&&e.textCollisionBox.collisionVertexBuffer.updateData(e.textCollisionBox.collisionVertexArray),e.text.opacityVertexArray.length!==e.text.layoutVertexArray.length/4)throw new Error(`bucket.text.opacityVertexArray.length (= ${e.text.opacityVertexArray.length}) !== bucket.text.layoutVertexArray.length (= ${e.text.layoutVertexArray.length}) / 4`);if(e.icon.opacityVertexArray.length!==e.icon.layoutVertexArray.length/4)throw new Error(`bucket.icon.opacityVertexArray.length (= ${e.icon.opacityVertexArray.length}) !== bucket.icon.layoutVertexArray.length (= ${e.icon.layoutVertexArray.length}) / 4`);if(e.bucketInstanceId in this.collisionCircleArrays){const t=this.collisionCircleArrays[e.bucketInstanceId];e.placementInvProjMatrix=t.invProjMatrix,e.placementViewportMatrix=t.viewportMatrix,e.collisionCircleArray=t.circles,delete this.collisionCircleArrays[e.bucketInstanceId]}}symbolFadeChange(t){return 0===this.fadeDuration?1:(t-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment}zoomAdjustment(t){return Math.max(0,(this.transform.zoom-t)/1.5)}hasTransitions(t){return this.stale||t-this.lastPlacementChangeTimet}setStale(){this.stale=!0}}function Mt(t,e,i,r,n){t.emplaceBack(e?1:0,i?1:0,r||0,n||0),t.emplaceBack(e?1:0,i?1:0,r||0,n||0),t.emplaceBack(e?1:0,i?1:0,r||0,n||0),t.emplaceBack(e?1:0,i?1:0,r||0,n||0)}const Pt=Math.pow(2,25),Dt=Math.pow(2,24),Lt=Math.pow(2,17),Bt=Math.pow(2,16),Rt=Math.pow(2,9),Ft=Math.pow(2,8),Ot=Math.pow(2,1);function Vt(t){if(0===t.opacity&&!t.placed)return 0;if(1===t.opacity&&t.placed)return 4294967295;const e=t.placed?1:0,i=Math.floor(127*t.opacity);return i*Pt+e*Dt+i*Lt+e*Bt+i*Rt+e*Ft+i*Ot+e}const Ut=0;class Nt{constructor(t){this._sortAcrossTiles="viewport-y"!==t.layout.get("symbol-z-order")&&!t.layout.get("symbol-sort-key").isConstant(),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]}continuePlacement(t,e,i,r,n){const a=this._bucketParts;for(;this._currentTileIndext.sortKey-e.sortKey)));this._currentPartIndex{const e=t.exported.now()-n;return!this._forceFullPlacement&&e>2};for(;this._currentPlacementIndex>=0;){const t=i[e[this._currentPlacementIndex]],n=this.placement.collisionIndex.transform.zoom;if("symbol"===t.type&&(!t.minzoom||t.minzoom<=n)&&(!t.maxzoom||t.maxzoom>n)){if(this._inProgressLayer||(this._inProgressLayer=new Nt(t)),this._inProgressLayer.continuePlacement(r[t.source],this.placement,this._showCollisionBoxes,t,a))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0}commit(t){return this.placement.commit(t),this.placement}}const Gt=512/t.EXTENT/2;class qt{constructor(t,e,i){this.tileID=t,this.indexedSymbolInstances={},this.bucketInstanceId=i;for(let r=0;rt.overscaledZ)for(const n in i){const a=i[n];a.tileID.isChildOf(t)&&a.findMatches(e.symbolInstances,t,r)}else{const a=i[t.scaledTo(Number(n)).key];a&&a.findMatches(e.symbolInstances,t,r)}}for(let n=0;n{e[t]=!0}));for(const i in this.layerIndexes)e[i]||delete this.layerIndexes[i]}}var Ht=t.createLayout([{name:"a_pos",type:"Int16",components:2}]);class Wt extends t.Evented{constructor(t){super(),this.sourceCache=t,this._tiles={},this._renderableTilesKeys=[],this._sourceTileCache={},this.renderHistory=[],this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.deltaZoom=1,this.renderHistorySize=t._cache.max,t.usedForTerrain=!0,t.tileSize=this.tileSize*2**this.deltaZoom}destruct(){this.sourceCache.usedForTerrain=!1,this.sourceCache.tileSize=null;for(const t in this._tiles){const e=this._tiles[t];e.textures.forEach((t=>t.destroy())),e.textures=[]}}update(e,i){this.sourceCache.update(e,i),this._renderableTilesKeys=[];for(const r of e.coveringTiles({tileSize:this.tileSize,minzoom:this.minzoom,maxzoom:this.maxzoom,reparseOverscaled:!1,terrain:i}))this._renderableTilesKeys.push(r.key),this._tiles[r.key]||(r.posMatrix=new Float64Array(16),t.ortho(r.posMatrix,0,t.EXTENT,0,t.EXTENT,0,1),this._tiles[r.key]=new B(r,this.tileSize))}removeOutdated(t){const e={};this.renderHistory=this.renderHistory.filter(((t,e)=>this.renderHistory.indexOf(t)===e)).slice(0,this.renderHistorySize);for(const i of this._renderableTilesKeys)e[i]=!0;for(const i of this.renderHistory)e[i]=!0;for(const i in this._tiles)e[i]||(this._tiles[i].clearTextures(t),delete this._tiles[i])}getRenderableTiles(){return this._renderableTilesKeys.map((t=>this.getTileByID(t)))}getTileByID(t){return this._tiles[t]}getTerrainCoords(e){const i={};for(const r of this._renderableTilesKeys){const n=this._tiles[r].tileID;if(n.canonical.equals(e.canonical)){const n=e.clone();n.posMatrix=new Float64Array(16),t.ortho(n.posMatrix,0,t.EXTENT,0,t.EXTENT,0,1),i[r]=n}else if(n.canonical.isChildOf(e.canonical)){const a=e.clone();a.posMatrix=new Float64Array(16);const o=n.canonical.z-e.canonical.z,s=n.canonical.x-(n.canonical.x>>o<>o<>o;t.ortho(a.posMatrix,0,c,0,c,0,1),t.translate(a.posMatrix,a.posMatrix,[-s*c,-l*c,0]),i[r]=a}else if(e.canonical.isChildOf(n.canonical)){const a=e.clone();a.posMatrix=new Float64Array(16);const o=e.canonical.z-n.canonical.z,s=e.canonical.x-(e.canonical.x>>o<>o<>o;t.ortho(a.posMatrix,0,t.EXTENT,0,t.EXTENT,0,1),t.translate(a.posMatrix,a.posMatrix,[s*c,l*c,0]),t.scale(a.posMatrix,a.posMatrix,[1/2**o,1/2**o,0]),i[r]=a}}return i}getSourceTile(t,e){const i=this.sourceCache._source;let r=t.overscaledZ-this.deltaZoom;if(r>i.maxzoom&&(r=i.maxzoom),r=i.minzoom&&(!n||!n.dem);)n=this.sourceCache.getTileByID(t.scaledTo(r--).key);return n}tilesAfterTime(t=Date.now()){return Object.values(this._tiles).filter((e=>e.timeLoaded>=t))}}class Kt{constructor(t,e,i){this.style=t,this.sourceCache=new Wt(e),this.options=i,this.exaggeration="number"==typeof i.exaggeration?i.exaggeration:1,this.elevationOffset="number"==typeof i.elevationOffset?i.elevationOffset:450,this.qualityFactor=2,this.meshSize=128,this._demMatrixCache={},this.coordsIndex=[],this._coordsTextureSize=1024,this.clearRerenderCache()}getDEMElevation(e,i,r,n=t.EXTENT){if(!(i>=0&&i=0&&re.canonical.z&&(e.canonical.z>=r?n=e.canonical.z-r:t.warnOnce("cannot calculate elevation if elevation maxzoom > source.maxzoom"));const a=e.canonical.x-(e.canonical.x>>n<>n<>8<<4|t>>8,i[a+3]=0;const r=new t.RGBAImage({width:this._coordsTextureSize,height:this._coordsTextureSize},new Uint8Array(i.buffer)),n=new l(e,r,e.gl.RGBA,{premultiply:!1});return n.bind(e.gl.NEAREST,e.gl.CLAMP_TO_EDGE),this._coordsTexture=n,n}pointCoordinate(e){const i=new Uint8Array(4),r=this.style.map.painter,n=r.context,a=n.gl;n.bindFramebuffer.set(this.getFramebuffer("coords").framebuffer),a.readPixels(e.x,r.height/devicePixelRatio-e.y-1,1,1,a.RGBA,a.UNSIGNED_BYTE,i),n.bindFramebuffer.set(null);const o=i[0]+(i[2]>>4<<8),s=i[1]+((15&i[2])<<8),l=this.coordsIndex[255-i[3]],c=l&&this.sourceCache.getTileByID(l);if(!c)return null;const h=this._coordsTextureSize,u=(1<t.emitValidationErrors(e,i&&i.filter((t=>"source.canvas"!==t.identifier))),Yt=t.pick(H,["addLayer","removeLayer","setPaintProperty","setLayoutProperty","setFilter","addSource","removeSource","setLayerZoomRange","setLight","setTransition","setGeoJSONSourceData"]),Qt=t.pick(H,["setCenter","setZoom","setBearing","setPitch"]),te=function(){const e={},i=t.spec.$version;for(const r in t.spec.$root){const n=t.spec.$root[r];if(n.required){let t=null;t="version"===r?i:"array"===n.type?[]:{},null!=t&&(e[r]=t)}}return e}();class ee extends t.Evented{constructor(e,i={}){super(),this.map=e,this.dispatcher=new x(Z(),this),this.imageManager=new h,this.imageManager.setEventedParent(this),this.glyphManager=new m(e._requestManager,i.localIdeographFontFamily),this.lineAtlas=new y(256,512),this.crossTileSymbolIndex=new Xt,this._layers={},this._serializedLayers={},this._order=[],this.sourceCaches={},this.zoomHistory=new t.ZoomHistory,this._loaded=!1,this._availableImages=[],this._resetUpdates(),this.dispatcher.broadcast("setReferrer",t.getReferrer());const r=this;this._rtlTextPluginCallback=ee.registerForPluginStateChange((e=>{r.dispatcher.broadcast("syncRTLPluginState",{pluginStatus:e.pluginStatus,pluginURL:e.pluginURL},((e,i)=>{if(t.triggerPluginCompletionEvent(e),i&&i.every((t=>t)))for(const t in r.sourceCaches)r.sourceCaches[t].reload()}))})),this.on("data",(t=>{if("source"!==t.dataType||"metadata"!==t.sourceDataType)return;const e=this.sourceCaches[t.sourceId];if(!e)return;const i=e.getSource();if(i&&i.vectorLayerIds)for(const r in this._layers){const t=this._layers[r];t.source===i.id&&this._validateLayer(t)}}))}loadURL(e,i={}){this.fire(new t.Event("dataloading",{dataType:"style"}));const r="boolean"!=typeof i.validate||i.validate,n=this.map._requestManager.transformRequest(e,t.ResourceType.Style);this._request=t.getJSON(n,((e,i)=>{this._request=null,e?this.fire(new t.ErrorEvent(e)):i&&this._load(i,r)}))}loadJSON(e,i={}){this.fire(new t.Event("dataloading",{dataType:"style"})),this._request=t.exported.frame((()=>{this._request=null,this._load(e,!1!==i.validate)}))}loadEmpty(){this.fire(new t.Event("dataloading",{dataType:"style"})),this._load(te,!1)}_load(e,i){if(i&&Jt(this,t.validateStyle(e)))return;this._loaded=!0,this.stylesheet=e;for(const t in e.sources)this.addSource(t,e.sources[t],{validate:!1});e.sprite?this._loadSprite(e.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(e.glyphs);const r=X(this.stylesheet.layers);this._order=r.map((t=>t.id)),this._layers={},this._serializedLayers={};for(let n of r)n=t.createStyleLayer(n),n.setEventedParent(this,{layer:{id:n.id}}),this._layers[n.id]=n,this._serializedLayers[n.id]=n.serialize();this.dispatcher.broadcast("setLayers",this._serializeLayers(this._order)),this.light=new _(this.stylesheet.light),this.setTerrain(this.stylesheet.terrain),this.fire(new t.Event("data",{dataType:"style"})),this.fire(new t.Event("style.load"))}_loadSprite(e){this._spriteRequest=function(e,i,r,n){let a,o,s;const l=r>1?"@2x":"";let c=t.getJSON(i.transformRequest(i.normalizeSpriteURL(e,l,".json"),t.ResourceType.SpriteJSON),((t,e)=>{c=null,s||(s=t,a=e,u())})),h=t.getImage(i.transformRequest(i.normalizeSpriteURL(e,l,".png"),t.ResourceType.SpriteImage),((t,e)=>{h=null,s||(s=t,o=e,u())}));function u(){if(s)n(s);else if(a&&o){const e=t.exported.getImageData(o),i={};for(const r in a){const{width:n,height:o,x:s,y:l,sdf:c,pixelRatio:h,stretchX:u,stretchY:p,content:d}=a[r],m=new t.RGBAImage({width:n,height:o});t.RGBAImage.copy(e,m,{x:s,y:l},{x:0,y:0},{width:n,height:o}),i[r]={data:m,pixelRatio:h,sdf:c,stretchX:u,stretchY:p,content:d}}n(null,i)}}return{cancel(){c&&(c.cancel(),c=null),h&&(h.cancel(),h=null)}}}(e,this.map._requestManager,this.map.getPixelRatio(),((e,i)=>{if(this._spriteRequest=null,e)this.fire(new t.ErrorEvent(e));else if(i)for(const t in i)this.imageManager.addImage(t,i[t]);this.imageManager.setLoaded(!0),this._availableImages=this.imageManager.listImages(),this.dispatcher.broadcast("setImages",this._availableImages),this.fire(new t.Event("data",{dataType:"style"}))}))}_validateLayer(e){const i=this.sourceCaches[e.source];if(!i)return;const r=e.sourceLayer;if(!r)return;const n=i.getSource();("geojson"===n.type||n.vectorLayerIds&&-1===n.vectorLayerIds.indexOf(r))&&this.fire(new t.ErrorEvent(new Error(`Source layer "${r}" does not exist on source "${n.id}" as specified by style layer "${e.id}".`)))}loaded(){if(!this._loaded)return!1;if(Object.keys(this._updatedSources).length)return!1;for(const t in this.sourceCaches)if(!this.sourceCaches[t].loaded())return!1;return!!this.imageManager.isLoaded()}_serializeLayers(t){const e=[];for(const i of t){const t=this._layers[i];"custom"!==t.type&&e.push(t.serialize())}return e}hasTransitions(){if(this.light&&this.light.hasTransition())return!0;for(const t in this.sourceCaches)if(this.sourceCaches[t].hasTransition())return!0;for(const t in this._layers)if(this._layers[t].hasTransition())return!0;return!1}_checkLoaded(){if(!this._loaded)throw new Error("Style is not done loading.")}update(e){if(!this._loaded)return;const i=this._changed;if(this._changed){const t=Object.keys(this._updatedLayers),i=Object.keys(this._removedLayers);(t.length||i.length)&&this._updateWorkerLayers(t,i);for(const e in this._updatedSources){const t=this._updatedSources[e];if("reload"===t)this._reloadSource(e);else{if("clear"!==t)throw new Error(`Invalid action ${t}`);this._clearSource(e)}}this._updateTilesForChangedImages();for(const r in this._updatedPaintProps)this._layers[r].updateTransitions(e);this.light.updateTransitions(e),this._resetUpdates()}const r={};for(const t in this.sourceCaches){const e=this.sourceCaches[t];r[t]=e.used,e.used=!1}for(const t of this._order){const i=this._layers[t];i.recalculate(e,this._availableImages),!i.isHidden(e.zoom)&&i.source&&(this.sourceCaches[i.source].used=!0)}for(const n in r){const e=this.sourceCaches[n];r[n]!==e.used&&e.fire(new t.Event("data",{sourceDataType:"visibility",dataType:"source",sourceId:n}))}this.light.recalculate(e),this.z=e.zoom,i&&this.fire(new t.Event("data",{dataType:"style"}))}_updateTilesForChangedImages(){const t=Object.keys(this._changedImages);if(t.length){for(const e in this.sourceCaches)this.sourceCaches[e].reloadTilesForDependencies(["icons","patterns"],t);this._changedImages={}}}_updateWorkerLayers(t,e){this.dispatcher.broadcast("updateLayers",{layers:this._serializeLayers(t),removedIds:e})}_resetUpdates(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={}}setTerrain(e){if(this._checkLoaded(),this._terrainDataCallback&&this.off("data",this._terrainDataCallback),this._terrainfreezeElevationCallback&&this.map.off("freezeElevation",this._terrainfreezeElevationCallback),e){const t=this.sourceCaches[e.source];if(!t)throw new Error(`cannot load terrain, because there exists no source with ID: ${e.source}`);this.terrain=new Kt(this,t,e),this.map.transform.updateElevation(this.terrain),this._terrainfreezeElevationCallback=t=>{t.freeze?this.map.transform.freezeElevation=!0:(this.map.transform.freezeElevation=!1,this.map.transform.recalculateZoom(this.terrain))},this._terrainDataCallback=t=>{t.tile&&(t.sourceId===e.source?(this.map.transform.updateElevation(this.terrain),this.terrain.rememberForRerender(t.sourceId,t.tile.tileID)):"geojson"===t.source.type&&this.terrain.rememberForRerender(t.sourceId,t.tile.tileID))},this.on("data",this._terrainDataCallback),this.map.on("freezeElevation",this._terrainfreezeElevationCallback)}else this.terrain&&this.terrain.sourceCache.destruct(),this.terrain=null,this.map.transform.updateElevation(this.terrain);this.map.fire(new t.Event("terrain",{terrain:e}))}setState(e){if(this._checkLoaded(),Jt(this,t.validateStyle(e)))return!1;(e=t.clone$1(e)).layers=X(e.layers);const i=function(t,e){if(!t)return[{command:H.setStyle,args:[e]}];let i=[];try{if(!n(t.version,e.version))return[{command:H.setStyle,args:[e]}];n(t.center,e.center)||i.push({command:H.setCenter,args:[e.center]}),n(t.zoom,e.zoom)||i.push({command:H.setZoom,args:[e.zoom]}),n(t.bearing,e.bearing)||i.push({command:H.setBearing,args:[e.bearing]}),n(t.pitch,e.pitch)||i.push({command:H.setPitch,args:[e.pitch]}),n(t.sprite,e.sprite)||i.push({command:H.setSprite,args:[e.sprite]}),n(t.glyphs,e.glyphs)||i.push({command:H.setGlyphs,args:[e.glyphs]}),n(t.transition,e.transition)||i.push({command:H.setTransition,args:[e.transition]}),n(t.light,e.light)||i.push({command:H.setLight,args:[e.light]});const r={},a=[];!function(t,e,i,r){let a;for(a in e=e||{},t=t||{})Object.prototype.hasOwnProperty.call(t,a)&&(Object.prototype.hasOwnProperty.call(e,a)||K(a,i,r));for(a in e)Object.prototype.hasOwnProperty.call(e,a)&&(Object.prototype.hasOwnProperty.call(t,a)?n(t[a],e[a])||("geojson"===t[a].type&&"geojson"===e[a].type&&Y(t,e,a)?i.push({command:H.setGeoJSONSourceData,args:[a,e[a].data]}):J(a,e,i,r)):W(a,e,i))}(t.sources,e.sources,a,r);const o=[];t.layers&&t.layers.forEach((t=>{r[t.source]?i.push({command:H.removeLayer,args:[t.id]}):o.push(t)})),i=i.concat(a),function(t,e,i){e=e||[];const r=(t=t||[]).map(tt),a=e.map(tt),o=t.reduce(et,{}),s=e.reduce(et,{}),l=r.slice(),c=Object.create(null);let h,u,p,d,m,f,g;for(h=0,u=0;h!(t.command in Qt)));if(0===i.length)return!1;const r=i.filter((t=>!(t.command in Yt)));if(r.length>0)throw new Error(`Unimplemented: ${r.map((t=>t.command)).join(", ")}.`);return i.forEach((t=>{"setTransition"!==t.command&&this[t.command].apply(this,t.args)})),this.stylesheet=e,!0}addImage(e,i){if(this.getImage(e))return this.fire(new t.ErrorEvent(new Error(`An image named "${e}" already exists.`)));this.imageManager.addImage(e,i),this._afterImageUpdated(e)}updateImage(t,e){this.imageManager.updateImage(t,e)}getImage(t){return this.imageManager.getImage(t)}removeImage(e){if(!this.getImage(e))return this.fire(new t.ErrorEvent(new Error(`An image named "${e}" does not exist.`)));this.imageManager.removeImage(e),this._afterImageUpdated(e)}_afterImageUpdated(e){this._availableImages=this.imageManager.listImages(),this._changedImages[e]=!0,this._changed=!0,this.dispatcher.broadcast("setImages",this._availableImages),this.fire(new t.Event("data",{dataType:"style"}))}listImages(){return this._checkLoaded(),this.imageManager.listImages()}addSource(e,i,r={}){if(this._checkLoaded(),void 0!==this.sourceCaches[e])throw new Error(`Source "${e}" already exists.`);if(!i.type)throw new Error(`The type property must be defined, but only the following properties were given: ${Object.keys(i).join(", ")}.`);if(["vector","raster","geojson","video","image"].indexOf(i.type)>=0&&this._validate(t.validateStyle.source,`sources.${e}`,i,null,r))return;this.map&&this.map._collectResourceTiming&&(i.collectResourceTiming=!0);const n=this.sourceCaches[e]=new O(e,i,this.dispatcher);n.style=this,n.setEventedParent(this,(()=>({isSourceLoaded:this.loaded(),source:n.serialize(),sourceId:e}))),n.onAdd(this.map),this._changed=!0}removeSource(e){if(this._checkLoaded(),void 0===this.sourceCaches[e])throw new Error("There is no source with this ID");for(const r in this._layers)if(this._layers[r].source===e)return this.fire(new t.ErrorEvent(new Error(`Source "${e}" cannot be removed while layer "${r}" is using it.`)));const i=this.sourceCaches[e];delete this.sourceCaches[e],delete this._updatedSources[e],i.fire(new t.Event("data",{sourceDataType:"metadata",dataType:"source",sourceId:e})),i.setEventedParent(null),i.onRemove(this.map),this._changed=!0}setGeoJSONSourceData(t,e){if(this._checkLoaded(),void 0===this.sourceCaches[t])throw new Error(`There is no source with this ID=${t}`);const i=this.sourceCaches[t].getSource();if("geojson"!==i.type)throw new Error(`geojsonSource.type is ${i.type}, which is !== 'geojson`);i.setData(e),this._changed=!0}getSource(t){return this.sourceCaches[t]&&this.sourceCaches[t].getSource()}addLayer(e,i,r={}){this._checkLoaded();const n=e.id;if(this.getLayer(n))return void this.fire(new t.ErrorEvent(new Error(`Layer "${n}" already exists on this map.`)));let a;if("custom"===e.type){if(Jt(this,t.validateCustomStyleLayer(e)))return;a=t.createStyleLayer(e)}else{if("object"==typeof e.source&&(this.addSource(n,e.source),e=t.clone$1(e),e=t.extend(e,{source:n})),this._validate(t.validateStyle.layer,`layers.${n}`,e,{arrayIndex:-1},r))return;a=t.createStyleLayer(e),this._validateLayer(a),a.setEventedParent(this,{layer:{id:n}}),this._serializedLayers[a.id]=a.serialize()}const o=i?this._order.indexOf(i):this._order.length;if(i&&-1===o)this.fire(new t.ErrorEvent(new Error(`Cannot add layer "${n}" before non-existing layer "${i}".`)));else{if(this._order.splice(o,0,n),this._layerOrderChanged=!0,this._layers[n]=a,this._removedLayers[n]&&a.source&&"custom"!==a.type){const t=this._removedLayers[n];delete this._removedLayers[n],t.type!==a.type?this._updatedSources[a.source]="clear":(this._updatedSources[a.source]="reload",this.sourceCaches[a.source].pause())}this._updateLayer(a),a.onAdd&&a.onAdd(this.map)}}moveLayer(e,i){if(this._checkLoaded(),this._changed=!0,!this._layers[e])return void this.fire(new t.ErrorEvent(new Error(`The layer '${e}' does not exist in the map's style and cannot be moved.`)));if(e===i)return;const r=this._order.indexOf(e);this._order.splice(r,1);const n=i?this._order.indexOf(i):this._order.length;i&&-1===n?this.fire(new t.ErrorEvent(new Error(`Cannot move layer "${e}" before non-existing layer "${i}".`))):(this._order.splice(n,0,e),this._layerOrderChanged=!0)}removeLayer(e){this._checkLoaded();const i=this._layers[e];if(!i)return void this.fire(new t.ErrorEvent(new Error(`Cannot remove non-existing layer "${e}".`)));i.setEventedParent(null);const r=this._order.indexOf(e);this._order.splice(r,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[e]=i,delete this._layers[e],delete this._serializedLayers[e],delete this._updatedLayers[e],delete this._updatedPaintProps[e],i.onRemove&&i.onRemove(this.map)}getLayer(t){return this._layers[t]}hasLayer(t){return t in this._layers}setLayerZoomRange(e,i,r){this._checkLoaded();const n=this.getLayer(e);n?n.minzoom===i&&n.maxzoom===r||(null!=i&&(n.minzoom=i),null!=r&&(n.maxzoom=r),this._updateLayer(n)):this.fire(new t.ErrorEvent(new Error(`Cannot set the zoom range of non-existing layer "${e}".`)))}setFilter(e,i,r={}){this._checkLoaded();const a=this.getLayer(e);if(a){if(!n(a.filter,i))return null==i?(a.filter=void 0,void this._updateLayer(a)):void(this._validate(t.validateStyle.filter,`layers.${a.id}.filter`,i,null,r)||(a.filter=t.clone$1(i),this._updateLayer(a)))}else this.fire(new t.ErrorEvent(new Error(`Cannot filter non-existing layer "${e}".`)))}getFilter(e){return t.clone$1(this.getLayer(e).filter)}setLayoutProperty(e,i,r,a={}){this._checkLoaded();const o=this.getLayer(e);o?n(o.getLayoutProperty(i),r)||(o.setLayoutProperty(i,r,a),this._updateLayer(o)):this.fire(new t.ErrorEvent(new Error(`Cannot style non-existing layer "${e}".`)))}getLayoutProperty(e,i){const r=this.getLayer(e);if(r)return r.getLayoutProperty(i);this.fire(new t.ErrorEvent(new Error(`Cannot get style of non-existing layer "${e}".`)))}setPaintProperty(e,i,r,a={}){this._checkLoaded();const o=this.getLayer(e);o?n(o.getPaintProperty(i),r)||(o.setPaintProperty(i,r,a)&&this._updateLayer(o),this._changed=!0,this._updatedPaintProps[e]=!0):this.fire(new t.ErrorEvent(new Error(`Cannot style non-existing layer "${e}".`)))}getPaintProperty(t,e){return this.getLayer(t).getPaintProperty(e)}setFeatureState(e,i){this._checkLoaded();const r=e.source,n=e.sourceLayer,a=this.sourceCaches[r];if(void 0===a)return void this.fire(new t.ErrorEvent(new Error(`The source '${r}' does not exist in the map's style.`)));const o=a.getSource().type;"geojson"===o&&n?this.fire(new t.ErrorEvent(new Error("GeoJSON sources cannot have a sourceLayer parameter."))):"vector"!==o||n?(void 0===e.id&&this.fire(new t.ErrorEvent(new Error("The feature id parameter must be provided."))),a.setFeatureState(n,e.id,i)):this.fire(new t.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}removeFeatureState(e,i){this._checkLoaded();const r=e.source,n=this.sourceCaches[r];if(void 0===n)return void this.fire(new t.ErrorEvent(new Error(`The source '${r}' does not exist in the map's style.`)));const a=n.getSource().type,o="vector"===a?e.sourceLayer:void 0;"vector"!==a||o?i&&"string"!=typeof e.id&&"number"!=typeof e.id?this.fire(new t.ErrorEvent(new Error("A feature id is required to remove its specific state property."))):n.removeFeatureState(o,e.id,i):this.fire(new t.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")))}getFeatureState(e){this._checkLoaded();const i=e.source,r=e.sourceLayer,n=this.sourceCaches[i];if(void 0!==n)return"vector"!==n.getSource().type||r?(void 0===e.id&&this.fire(new t.ErrorEvent(new Error("The feature id parameter must be provided."))),n.getFeatureState(r,e.id)):void this.fire(new t.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));this.fire(new t.ErrorEvent(new Error(`The source '${i}' does not exist in the map's style.`)))}getTransition(){return t.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)}serialize(){return t.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:t.mapObject(this.sourceCaches,(t=>t.serialize())),layers:this._serializeLayers(this._order)},(t=>void 0!==t))}_updateLayer(t){this._updatedLayers[t.id]=!0,t.source&&!this._updatedSources[t.source]&&"raster"!==this.sourceCaches[t.source].getSource().type&&(this._updatedSources[t.source]="reload",this.sourceCaches[t.source].pause()),this._changed=!0}_flattenAndSortRenderedFeatures(t){const e=t=>"fill-extrusion"===this._layers[t].type,i={},r=[];for(let a=this._order.length-1;a>=0;a--){const n=this._order[a];if(e(n)){i[n]=a;for(const e of t){const t=e[n];if(t)for(const e of t)r.push(e)}}}r.sort(((t,e)=>e.intersectionZ-t.intersectionZ));const n=[];for(let a=this._order.length-1;a>=0;a--){const o=this._order[a];if(e(o))for(let t=r.length-1;t>=0;t--){const e=r[t].feature;if(i[e.layer.id]{const i=h.featureSortOrder;if(i){const r=i.indexOf(t.featureIndex);return i.indexOf(e.featureIndex)-r}return e.featureIndex-t.featureIndex}));for(const t of r)e.push(t)}}for(const h in s)s[h].forEach((e=>{const r=e.feature,n=i[t[h].source].getFeatureState(r.layer["source-layer"],r.id);r.source=r.layer.source,r.layer["source-layer"]&&(r.sourceLayer=r.layer["source-layer"]),r.state=n}));return s}(this._layers,this._serializedLayers,this.sourceCaches,e,i,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(a)}querySourceFeatures(e,i){i&&i.filter&&this._validate(t.validateStyle.filter,"querySourceFeatures.filter",i.filter,null,i);const r=this.sourceCaches[e];return r?function(t,e){const i=t.getRenderableIds().map((e=>t.getTileByID(e))),r=[],n={};for(let a=0;at.getTileByID(e))).sort(((t,e)=>e.tileID.overscaledZ-t.tileID.overscaledZ||(t.tileID.isLessThan(e.tileID)?-1:1)))}const r=this.crossTileSymbolIndex.addLayer(i,l[i.source],e.center.lng);o=o||r}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),((a=a||this._layerOrderChanged||0===r)||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(t.exported.now(),e.zoom))&&(this.pauseablePlacement=new $t(e,this.terrain,this._order,a,i,r,n,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,l),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(t.exported.now()),s=!0),o&&this.pauseablePlacement.placement.setStale()),s||o)for(const t of this._order){const e=this._layers[t];"symbol"===e.type&&this.placement.updateLayerOpacities(e,l[e.source])}return!this.pauseablePlacement.isDone()||this.placement.hasTransitions(t.exported.now())}_releaseSymbolFadeTiles(){for(const t in this.sourceCaches)this.sourceCaches[t].releaseSymbolFadeTiles()}getImages(t,e,i){this.imageManager.getImages(e.icons,i),this._updateTilesForChangedImages();const r=this.sourceCaches[e.source];r&&r.setDependencies(e.tileID.key,e.type,e.icons)}getGlyphs(t,e,i){this.glyphManager.getGlyphs(e.stacks,i)}getResource(e,i,r){return t.makeRequest(i,r)}}ee.getSourceType=function(t){return M[t]},ee.setSourceType=function(t,e){M[t]=e},ee.registerForPluginStateChange=t.registerForPluginStateChange;var ie="attribute vec2 a_pos;uniform mat4 u_matrix;varying vec2 v_texture_pos;varying float v_depth;void main() {v_texture_pos=a_pos/8192.0;gl_Position=u_matrix*vec4(a_pos,get_elevation(a_pos),1.0);v_depth=gl_Position.z/gl_Position.w;}";const re={prelude:ne("#ifdef GL_ES\nprecision mediump float;\n#else\n#if !defined(lowp)\n#define lowp\n#endif\n#if !defined(mediump)\n#define mediump\n#endif\n#if !defined(highp)\n#define highp\n#endif\n#endif","#ifdef GL_ES\nprecision highp float;\n#else\n#if !defined(lowp)\n#define lowp\n#endif\n#if !defined(mediump)\n#define mediump\n#endif\n#if !defined(highp)\n#define highp\n#endif\n#endif\nvec2 unpack_float(const float packedValue) {int packedIntValue=int(packedValue);int v0=packedIntValue/256;return vec2(v0,packedIntValue-v0*256);}vec2 unpack_opacity(const float packedOpacity) {int intOpacity=int(packedOpacity)/2;return vec2(float(intOpacity)/127.0,mod(packedOpacity,2.0));}vec4 decode_color(const vec2 encodedColor) {return vec4(unpack_float(encodedColor[0])/255.0,unpack_float(encodedColor[1])/255.0\n);}float unpack_mix_vec2(const vec2 packedValue,const float t) {return mix(packedValue[0],packedValue[1],t);}vec4 unpack_mix_color(const vec4 packedColors,const float t) {vec4 minColor=decode_color(vec2(packedColors[0],packedColors[1]));vec4 maxColor=decode_color(vec2(packedColors[2],packedColors[3]));return mix(minColor,maxColor,t);}vec2 get_pattern_pos(const vec2 pixel_coord_upper,const vec2 pixel_coord_lower,const vec2 pattern_size,const float tile_units_to_pixels,const vec2 pos) {vec2 offset=mod(mod(mod(pixel_coord_upper,pattern_size)*256.0,pattern_size)*256.0+pixel_coord_lower,pattern_size);return (tile_units_to_pixels*pos+offset)/pattern_size;}\n#ifdef TERRAIN3D\nuniform sampler2D u_terrain;uniform float u_terrain_dim;uniform mat4 u_terrain_matrix;uniform vec4 u_terrain_unpack;uniform float u_terrain_offset;uniform float u_terrain_exaggeration;uniform highp sampler2D u_depth;\n#endif\nconst highp vec4 bitSh=vec4(256.*256.*256.,256.*256.,256.,1.);const highp vec4 bitShifts=vec4(1.)/bitSh;highp float unpack(highp vec4 color) {return dot(color,bitShifts);}highp float depthOpacity(vec3 frag) {\n#ifdef TERRAIN3D\nhighp float d=unpack(texture2D(u_depth,frag.xy*0.5+0.5))+0.0001-frag.z;return 1.0-max(0.0,min(1.0,-d*500.0));\n#else\nreturn 1.0;\n#endif\n}float calculate_visibility(vec4 pos) {\n#ifdef TERRAIN3D\nvec3 frag=pos.xyz/pos.w;highp float d=depthOpacity(frag);if (d > 0.95) return 1.0;return (d+depthOpacity(frag+vec3(0.0,0.01,0.0)))/2.0;\n#else\nreturn 1.0;\n#endif\n}float ele(vec2 pos) {\n#ifdef TERRAIN3D\nvec4 rgb=(texture2D(u_terrain,pos)*255.0)*u_terrain_unpack;return rgb.r+rgb.g+rgb.b-u_terrain_unpack.a;\n#else\nreturn 0.0;\n#endif\n}float get_elevation(vec2 pos) {\n#ifdef TERRAIN3D\nvec2 coord=(u_terrain_matrix*vec4(pos,0.0,1.0)).xy*u_terrain_dim+1.0;vec2 f=fract(coord);vec2 c=(floor(coord)+0.5)/(u_terrain_dim+2.0);float d=1.0/(u_terrain_dim+2.0);float tl=ele(c);float tr=ele(c+vec2(d,0.0));float bl=ele(c+vec2(0.0,d));float br=ele(c+vec2(d,d));float elevation=mix(mix(tl,tr,f.x),mix(bl,br,f.x),f.y);return (elevation+u_terrain_offset)*u_terrain_exaggeration;\n#else\nreturn 0.0;\n#endif\n}"),background:ne("uniform vec4 u_color;uniform float u_opacity;void main() {gl_FragColor=u_color*u_opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}"),backgroundPattern:ne("uniform vec2 u_pattern_tl_a;uniform vec2 u_pattern_br_a;uniform vec2 u_pattern_tl_b;uniform vec2 u_pattern_br_b;uniform vec2 u_texsize;uniform float u_mix;uniform float u_opacity;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(u_pattern_tl_a/u_texsize,u_pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(u_pattern_tl_b/u_texsize,u_pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_mix)*u_opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_pattern_size_a;uniform vec2 u_pattern_size_b;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_scale_a;uniform float u_scale_b;uniform float u_tile_units_to_pixels;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_a*u_pattern_size_a,u_tile_units_to_pixels,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,u_scale_b*u_pattern_size_b,u_tile_units_to_pixels,a_pos);}"),circle:ne("varying vec3 v_data;varying float v_visibility;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define mediump float radius\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define highp vec4 stroke_color\n#pragma mapbox: define mediump float stroke_width\n#pragma mapbox: define lowp float stroke_opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize mediump float radius\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize highp vec4 stroke_color\n#pragma mapbox: initialize mediump float stroke_width\n#pragma mapbox: initialize lowp float stroke_opacity\nvec2 extrude=v_data.xy;float extrude_length=length(extrude);lowp float antialiasblur=v_data.z;float antialiased_blur=-max(blur,antialiasblur);float opacity_t=smoothstep(0.0,antialiased_blur,extrude_length-1.0);float color_t=stroke_width < 0.01 ? 0.0 : smoothstep(antialiased_blur,0.0,extrude_length-radius/(radius+stroke_width));gl_FragColor=v_visibility*opacity_t*mix(color*opacity,stroke_color*stroke_opacity,color_t);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform bool u_scale_with_map;uniform bool u_pitch_with_map;uniform vec2 u_extrude_scale;uniform lowp float u_device_pixel_ratio;uniform highp float u_camera_to_center_distance;attribute vec2 a_pos;varying vec3 v_data;varying float v_visibility;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define mediump float radius\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define highp vec4 stroke_color\n#pragma mapbox: define mediump float stroke_width\n#pragma mapbox: define lowp float stroke_opacity\nvoid main(void) {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize mediump float radius\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize highp vec4 stroke_color\n#pragma mapbox: initialize mediump float stroke_width\n#pragma mapbox: initialize lowp float stroke_opacity\nvec2 extrude=vec2(mod(a_pos,2.0)*2.0-1.0);vec2 circle_center=floor(a_pos*0.5);float ele=get_elevation(circle_center);v_visibility=calculate_visibility(u_matrix*vec4(circle_center,ele,1.0));if (u_pitch_with_map) {vec2 corner_position=circle_center;if (u_scale_with_map) {corner_position+=extrude*(radius+stroke_width)*u_extrude_scale;} else {vec4 projected_center=u_matrix*vec4(circle_center,0,1);corner_position+=extrude*(radius+stroke_width)*u_extrude_scale*(projected_center.w/u_camera_to_center_distance);}gl_Position=u_matrix*vec4(corner_position,ele,1);} else {gl_Position=u_matrix*vec4(circle_center,ele,1);if (u_scale_with_map) {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*u_camera_to_center_distance;} else {gl_Position.xy+=extrude*(radius+stroke_width)*u_extrude_scale*gl_Position.w;}}lowp float antialiasblur=1.0/u_device_pixel_ratio/(radius+stroke_width);v_data=vec3(extrude.x,extrude.y,antialiasblur);}"),clippingMask:ne("void main() {gl_FragColor=vec4(1.0);}","attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}"),heatmap:ne("uniform highp float u_intensity;varying vec2 v_extrude;\n#pragma mapbox: define highp float weight\n#define GAUSS_COEF 0.3989422804014327\nvoid main() {\n#pragma mapbox: initialize highp float weight\nfloat d=-0.5*3.0*3.0*dot(v_extrude,v_extrude);float val=weight*u_intensity*GAUSS_COEF*exp(d);gl_FragColor=vec4(val,1.0,1.0,1.0);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform float u_extrude_scale;uniform float u_opacity;uniform float u_intensity;attribute vec2 a_pos;varying vec2 v_extrude;\n#pragma mapbox: define highp float weight\n#pragma mapbox: define mediump float radius\nconst highp float ZERO=1.0/255.0/16.0;\n#define GAUSS_COEF 0.3989422804014327\nvoid main(void) {\n#pragma mapbox: initialize highp float weight\n#pragma mapbox: initialize mediump float radius\nvec2 unscaled_extrude=vec2(mod(a_pos,2.0)*2.0-1.0);float S=sqrt(-2.0*log(ZERO/weight/u_intensity/GAUSS_COEF))/3.0;v_extrude=S*unscaled_extrude;vec2 extrude=v_extrude*radius*u_extrude_scale;vec4 pos=vec4(floor(a_pos*0.5)+extrude,0,1);gl_Position=u_matrix*pos;}"),heatmapTexture:ne("uniform sampler2D u_image;uniform sampler2D u_color_ramp;uniform float u_opacity;varying vec2 v_pos;void main() {float t=texture2D(u_image,v_pos).r;vec4 color=texture2D(u_color_ramp,vec2(t,0.5));gl_FragColor=color*u_opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(0.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_world;attribute vec2 a_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos*u_world,0,1);v_pos.x=a_pos.x;v_pos.y=1.0-a_pos.y;}"),collisionBox:ne("varying float v_placed;varying float v_notUsed;void main() {float alpha=0.5;gl_FragColor=vec4(1.0,0.0,0.0,1.0)*alpha;if (v_placed > 0.5) {gl_FragColor=vec4(0.0,0.0,1.0,0.5)*alpha;}if (v_notUsed > 0.5) {gl_FragColor*=.1;}}","attribute vec2 a_pos;attribute vec2 a_anchor_pos;attribute vec2 a_extrude;attribute vec2 a_placed;attribute vec2 a_shift;uniform mat4 u_matrix;uniform vec2 u_extrude_scale;uniform float u_camera_to_center_distance;varying float v_placed;varying float v_notUsed;void main() {vec4 projectedPoint=u_matrix*vec4(a_anchor_pos,0,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float collision_perspective_ratio=clamp(0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);gl_Position=u_matrix*vec4(a_pos,get_elevation(a_pos),1.0);gl_Position.xy+=(a_extrude+a_shift)*u_extrude_scale*gl_Position.w*collision_perspective_ratio;v_placed=a_placed.x;v_notUsed=a_placed.y;}"),collisionCircle:ne("varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;void main() {float alpha=0.5*min(v_perspective_ratio,1.0);float stroke_radius=0.9*max(v_perspective_ratio,1.0);float distance_to_center=length(v_extrude);float distance_to_edge=abs(distance_to_center-v_radius);float opacity_t=smoothstep(-stroke_radius,0.0,-distance_to_edge);vec4 color=mix(vec4(0.0,0.0,1.0,0.5),vec4(1.0,0.0,0.0,1.0),v_collision);gl_FragColor=color*alpha*opacity_t;}","attribute vec2 a_pos;attribute float a_radius;attribute vec2 a_flags;uniform mat4 u_matrix;uniform mat4 u_inv_matrix;uniform vec2 u_viewport_size;uniform float u_camera_to_center_distance;varying float v_radius;varying vec2 v_extrude;varying float v_perspective_ratio;varying float v_collision;vec3 toTilePosition(vec2 screenPos) {vec4 rayStart=u_inv_matrix*vec4(screenPos,-1.0,1.0);vec4 rayEnd =u_inv_matrix*vec4(screenPos, 1.0,1.0);rayStart.xyz/=rayStart.w;rayEnd.xyz /=rayEnd.w;highp float t=(0.0-rayStart.z)/(rayEnd.z-rayStart.z);return mix(rayStart.xyz,rayEnd.xyz,t);}void main() {vec2 quadCenterPos=a_pos;float radius=a_radius;float collision=a_flags.x;float vertexIdx=a_flags.y;vec2 quadVertexOffset=vec2(mix(-1.0,1.0,float(vertexIdx >=2.0)),mix(-1.0,1.0,float(vertexIdx >=1.0 && vertexIdx <=2.0)));vec2 quadVertexExtent=quadVertexOffset*radius;vec3 tilePos=toTilePosition(quadCenterPos);vec4 clipPos=u_matrix*vec4(tilePos,1.0);highp float camera_to_anchor_distance=clipPos.w;highp float collision_perspective_ratio=clamp(0.5+0.5*(u_camera_to_center_distance/camera_to_anchor_distance),0.0,4.0);float padding_factor=1.2;v_radius=radius;v_extrude=quadVertexExtent*padding_factor;v_perspective_ratio=collision_perspective_ratio;v_collision=collision;gl_Position=vec4(clipPos.xyz/clipPos.w,1.0)+vec4(quadVertexExtent*padding_factor/u_viewport_size*2.0,0.0,0.0);}"),debug:ne("uniform highp vec4 u_color;uniform sampler2D u_overlay;varying vec2 v_uv;void main() {vec4 overlay_color=texture2D(u_overlay,v_uv);gl_FragColor=mix(u_color,overlay_color,overlay_color.a);}","attribute vec2 a_pos;varying vec2 v_uv;uniform mat4 u_matrix;uniform float u_overlay_scale;void main() {v_uv=a_pos/8192.0;gl_Position=u_matrix*vec4(a_pos*u_overlay_scale,get_elevation(a_pos),1);}"),fill:ne("#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float opacity\ngl_FragColor=color*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec2 a_pos;uniform mat4 u_matrix;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float opacity\ngl_Position=u_matrix*vec4(a_pos,0,1);}"),fillOutline:ne("varying vec2 v_pos;\n#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 outline_color\n#pragma mapbox: initialize lowp float opacity\nfloat dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=outline_color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","attribute vec2 a_pos;uniform mat4 u_matrix;uniform vec2 u_world;varying vec2 v_pos;\n#pragma mapbox: define highp vec4 outline_color\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 outline_color\n#pragma mapbox: initialize lowp float opacity\ngl_Position=u_matrix*vec4(a_pos,0,1);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}"),fillOutlinePattern:ne("uniform vec2 u_texsize;uniform sampler2D u_image;uniform float u_fade;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=mix(color1,color2,u_fade)*alpha*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_world;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec2 v_pos;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;gl_Position=u_matrix*vec4(a_pos,0,1);vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,a_pos);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}"),fillPattern:ne("#ifdef GL_ES\nprecision highp float;\n#endif\nuniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);gl_FragColor=mix(color1,color2,u_fade)*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform vec3 u_scale;attribute vec2 a_pos;varying vec2 v_pos_a;varying vec2 v_pos_b;\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;gl_Position=u_matrix*vec4(a_pos,0,1);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileZoomRatio,a_pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileZoomRatio,a_pos);}"),fillExtrusion:ne("varying vec4 v_color;void main() {gl_FragColor=v_color;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;uniform float u_vertical_gradient;uniform lowp float u_opacity;attribute vec2 a_pos;attribute vec4 a_normal_ed;\n#ifdef TERRAIN3D\nattribute vec2 a_centroid;\n#endif\nvarying vec4 v_color;\n#pragma mapbox: define highp float base\n#pragma mapbox: define highp float height\n#pragma mapbox: define highp vec4 color\nvoid main() {\n#pragma mapbox: initialize highp float base\n#pragma mapbox: initialize highp float height\n#pragma mapbox: initialize highp vec4 color\nvec3 normal=a_normal_ed.xyz;\n#ifdef TERRAIN3D\nfloat baseDelta=10.0;float ele=get_elevation(a_centroid);\n#else\nfloat baseDelta=0.0;float ele=0.0;\n#endif\nbase=max(0.0,ele+base-baseDelta);height=max(0.0,ele+height);float t=mod(normal.x,2.0);gl_Position=u_matrix*vec4(a_pos,t > 0.0 ? height : base,1);float colorvalue=color.r*0.2126+color.g*0.7152+color.b*0.0722;v_color=vec4(0.0,0.0,0.0,1.0);vec4 ambientlight=vec4(0.03,0.03,0.03,1.0);color+=ambientlight;float directional=clamp(dot(normal/16384.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((1.0-colorvalue+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_color.r+=clamp(color.r*directional*u_lightcolor.r,mix(0.0,0.3,1.0-u_lightcolor.r),1.0);v_color.g+=clamp(color.g*directional*u_lightcolor.g,mix(0.0,0.3,1.0-u_lightcolor.g),1.0);v_color.b+=clamp(color.b*directional*u_lightcolor.b,mix(0.0,0.3,1.0-u_lightcolor.b),1.0);v_color*=u_opacity;}"),fillExtrusionPattern:ne("uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float base\n#pragma mapbox: initialize lowp float height\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;vec2 imagecoord=mod(v_pos_a,1.0);vec2 pos=mix(pattern_tl_a/u_texsize,pattern_br_a/u_texsize,imagecoord);vec4 color1=texture2D(u_image,pos);vec2 imagecoord_b=mod(v_pos_b,1.0);vec2 pos2=mix(pattern_tl_b/u_texsize,pattern_br_b/u_texsize,imagecoord_b);vec4 color2=texture2D(u_image,pos2);vec4 mixedColor=mix(color1,color2,u_fade);gl_FragColor=mixedColor*v_lighting;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_pixel_coord_upper;uniform vec2 u_pixel_coord_lower;uniform float u_height_factor;uniform vec3 u_scale;uniform float u_vertical_gradient;uniform lowp float u_opacity;uniform vec3 u_lightcolor;uniform lowp vec3 u_lightpos;uniform lowp float u_lightintensity;attribute vec2 a_pos;attribute vec4 a_normal_ed;\n#ifdef TERRAIN3D\nattribute vec2 a_centroid;\n#endif\nvarying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;\n#pragma mapbox: define lowp float base\n#pragma mapbox: define lowp float height\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float base\n#pragma mapbox: initialize lowp float height\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec3 normal=a_normal_ed.xyz;float edgedistance=a_normal_ed.w;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;\n#ifdef TERRAIN3D\nfloat baseDelta=10.0;float ele=get_elevation(a_centroid);\n#else\nfloat baseDelta=0.0;float ele=0.0;\n#endif\nbase=max(0.0,ele+base-baseDelta);height=max(0.0,ele+height);float t=mod(normal.x,2.0);float z=t > 0.0 ? height : base;gl_Position=u_matrix*vec4(a_pos,z,1);vec2 pos=normal.x==1.0 && normal.y==0.0 && normal.z==16384.0\n? a_pos\n: vec2(edgedistance,z*u_height_factor);v_pos_a=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,fromScale*display_size_a,tileRatio,pos);v_pos_b=get_pattern_pos(u_pixel_coord_upper,u_pixel_coord_lower,toScale*display_size_b,tileRatio,pos);v_lighting=vec4(0.0,0.0,0.0,1.0);float directional=clamp(dot(normal/16383.0,u_lightpos),0.0,1.0);directional=mix((1.0-u_lightintensity),max((0.5+u_lightintensity),1.0),directional);if (normal.y !=0.0) {directional*=((1.0-u_vertical_gradient)+(u_vertical_gradient*clamp((t+base)*pow(height/150.0,0.5),mix(0.7,0.98,1.0-u_lightintensity),1.0)));}v_lighting.rgb+=clamp(directional*u_lightcolor,mix(vec3(0.0),vec3(0.3),1.0-u_lightcolor),vec3(1.0));v_lighting*=u_opacity;}"),hillshadePrepare:ne("#ifdef GL_ES\nprecision highp float;\n#endif\nuniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;uniform vec4 u_unpack;float getElevation(vec2 coord,float bias) {vec4 data=texture2D(u_image,coord)*255.0;data.a=-1.0;return dot(data,u_unpack)/4.0;}void main() {vec2 epsilon=1.0/u_dimension;float a=getElevation(v_pos+vec2(-epsilon.x,-epsilon.y),0.0);float b=getElevation(v_pos+vec2(0,-epsilon.y),0.0);float c=getElevation(v_pos+vec2(epsilon.x,-epsilon.y),0.0);float d=getElevation(v_pos+vec2(-epsilon.x,0),0.0);float e=getElevation(v_pos,0.0);float f=getElevation(v_pos+vec2(epsilon.x,0),0.0);float g=getElevation(v_pos+vec2(-epsilon.x,epsilon.y),0.0);float h=getElevation(v_pos+vec2(0,epsilon.y),0.0);float i=getElevation(v_pos+vec2(epsilon.x,epsilon.y),0.0);float exaggerationFactor=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;float exaggeration=u_zoom < 15.0 ? (u_zoom-15.0)*exaggerationFactor : 0.0;vec2 deriv=vec2((c+f+f+i)-(a+d+d+g),(g+h+h+i)-(a+b+b+c))/pow(2.0,exaggeration+(19.2562-u_zoom));gl_FragColor=clamp(vec4(deriv.x/2.0+0.5,deriv.y/2.0+0.5,1.0,1.0),0.0,1.0);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_dimension;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);highp vec2 epsilon=1.0/u_dimension;float scale=(u_dimension.x-2.0)/u_dimension.x;v_pos=(a_texture_pos/8192.0)*scale+epsilon;}"),hillshade:ne("uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_latrange;uniform vec2 u_light;uniform vec4 u_shadow;uniform vec4 u_highlight;uniform vec4 u_accent;\n#define PI 3.141592653589793\nvoid main() {vec4 pixel=texture2D(u_image,v_pos);vec2 deriv=((pixel.rg*2.0)-1.0);float scaleFactor=cos(radians((u_latrange[0]-u_latrange[1])*(1.0-v_pos.y)+u_latrange[1]));float slope=atan(1.25*length(deriv)/scaleFactor);float aspect=deriv.x !=0.0 ? atan(deriv.y,-deriv.x) : PI/2.0*(deriv.y > 0.0 ? 1.0 :-1.0);float intensity=u_light.x;float azimuth=u_light.y+PI;float base=1.875-intensity*1.75;float maxValue=0.5*PI;float scaledSlope=intensity !=0.5 ? ((pow(base,slope)-1.0)/(pow(base,maxValue)-1.0))*maxValue : slope;float accent=cos(scaledSlope);vec4 accent_color=(1.0-accent)*u_accent*clamp(intensity*2.0,0.0,1.0);float shade=abs(mod((aspect+azimuth)/PI+0.5,2.0)-1.0);vec4 shade_color=mix(u_shadow,u_highlight,shade)*sin(scaledSlope)*clamp(intensity*2.0,0.0,1.0);gl_FragColor=accent_color*(1.0-shade_color.a)+shade_color;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=a_texture_pos/8192.0;}"),line:ne("uniform lowp float u_device_pixel_ratio;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nfloat dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);gl_FragColor=color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","\n#define scale 0.015873016\nattribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform vec2 u_units_to_pixels;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp float v_linesofar;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float width\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;v_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*2.0;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;\n#ifdef TERRAIN3D\nv_gamma_scale=1.0;\n#else\nfloat extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;\n#endif\nv_width2=vec2(outset,inset);}"),lineGradient:ne("uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;varying highp vec2 v_uv;\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nfloat dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);vec4 color=texture2D(u_image,v_uv);gl_FragColor=color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","\n#define scale 0.015873016\nattribute vec2 a_pos_normal;attribute vec4 a_data;attribute float a_uv_x;attribute float a_split_index;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_units_to_pixels;uniform float u_image_height;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp vec2 v_uv;\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\nvoid main() {\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float width\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;highp float texel_height=1.0/u_image_height;highp float half_texel_height=0.5*texel_height;v_uv=vec2(a_uv_x,a_split_index*texel_height-half_texel_height);vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;\n#ifdef TERRAIN3D\nv_gamma_scale=1.0;\n#else\nfloat extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;\n#endif\nv_width2=vec2(outset,inset);}"),linePattern:ne("#ifdef GL_ES\nprecision highp float;\n#endif\nuniform lowp float u_device_pixel_ratio;uniform vec2 u_texsize;uniform float u_fade;uniform mediump vec3 u_scale;uniform sampler2D u_image;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\nvec2 pattern_tl_a=pattern_from.xy;vec2 pattern_br_a=pattern_from.zw;vec2 pattern_tl_b=pattern_to.xy;vec2 pattern_br_b=pattern_to.zw;float tileZoomRatio=u_scale.x;float fromScale=u_scale.y;float toScale=u_scale.z;vec2 display_size_a=(pattern_br_a-pattern_tl_a)/pixel_ratio_from;vec2 display_size_b=(pattern_br_b-pattern_tl_b)/pixel_ratio_to;vec2 pattern_size_a=vec2(display_size_a.x*fromScale/tileZoomRatio,display_size_a.y);vec2 pattern_size_b=vec2(display_size_b.x*toScale/tileZoomRatio,display_size_b.y);float aspect_a=display_size_a.y/v_width;float aspect_b=display_size_b.y/v_width;float dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float x_a=mod(v_linesofar/pattern_size_a.x*aspect_a,1.0);float x_b=mod(v_linesofar/pattern_size_b.x*aspect_b,1.0);float y=0.5*v_normal.y+0.5;vec2 texel_size=1.0/u_texsize;vec2 pos_a=mix(pattern_tl_a*texel_size-texel_size,pattern_br_a*texel_size+texel_size,vec2(x_a,y));vec2 pos_b=mix(pattern_tl_b*texel_size-texel_size,pattern_br_b*texel_size+texel_size,vec2(x_b,y));vec4 color=mix(texture2D(u_image,pos_a),texture2D(u_image,pos_b),u_fade);gl_FragColor=color*alpha*opacity;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","\n#define scale 0.015873016\n#define LINE_DISTANCE_SCALE 2.0\nattribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform vec2 u_units_to_pixels;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;varying vec2 v_normal;varying vec2 v_width2;varying float v_linesofar;varying float v_gamma_scale;varying float v_width;\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\n#pragma mapbox: define lowp vec4 pattern_from\n#pragma mapbox: define lowp vec4 pattern_to\n#pragma mapbox: define lowp float pixel_ratio_from\n#pragma mapbox: define lowp float pixel_ratio_to\nvoid main() {\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float floorwidth\n#pragma mapbox: initialize mediump vec4 pattern_from\n#pragma mapbox: initialize mediump vec4 pattern_to\n#pragma mapbox: initialize lowp float pixel_ratio_from\n#pragma mapbox: initialize lowp float pixel_ratio_to\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;\n#ifdef TERRAIN3D\nv_gamma_scale=1.0;\n#else\nfloat extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;\n#endif\nv_linesofar=a_linesofar;v_width2=vec2(outset,inset);v_width=floorwidth;}"),lineSDF:ne("uniform lowp float u_device_pixel_ratio;uniform sampler2D u_image;uniform float u_sdfgamma;uniform float u_mix;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float floorwidth\nfloat dist=length(v_normal)*v_width2.s;float blur2=(blur+1.0/u_device_pixel_ratio)*v_gamma_scale;float alpha=clamp(min(dist-(v_width2.t-blur2),v_width2.s-dist)/blur2,0.0,1.0);float sdfdist_a=texture2D(u_image,v_tex_a).a;float sdfdist_b=texture2D(u_image,v_tex_b).a;float sdfdist=mix(sdfdist_a,sdfdist_b,u_mix);alpha*=smoothstep(0.5-u_sdfgamma/floorwidth,0.5+u_sdfgamma/floorwidth,sdfdist);gl_FragColor=color*(alpha*opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","\n#define scale 0.015873016\n#define LINE_DISTANCE_SCALE 2.0\nattribute vec2 a_pos_normal;attribute vec4 a_data;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_patternscale_a;uniform float u_tex_y_a;uniform vec2 u_patternscale_b;uniform float u_tex_y_b;uniform vec2 u_units_to_pixels;varying vec2 v_normal;varying vec2 v_width2;varying vec2 v_tex_a;varying vec2 v_tex_b;varying float v_gamma_scale;\n#pragma mapbox: define highp vec4 color\n#pragma mapbox: define lowp float blur\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define mediump float gapwidth\n#pragma mapbox: define lowp float offset\n#pragma mapbox: define mediump float width\n#pragma mapbox: define lowp float floorwidth\nvoid main() {\n#pragma mapbox: initialize highp vec4 color\n#pragma mapbox: initialize lowp float blur\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize mediump float gapwidth\n#pragma mapbox: initialize lowp float offset\n#pragma mapbox: initialize mediump float width\n#pragma mapbox: initialize lowp float floorwidth\nfloat ANTIALIASING=1.0/u_device_pixel_ratio/2.0;vec2 a_extrude=a_data.xy-128.0;float a_direction=mod(a_data.z,4.0)-1.0;float a_linesofar=(floor(a_data.z/4.0)+a_data.w*64.0)*LINE_DISTANCE_SCALE;vec2 pos=floor(a_pos_normal*0.5);mediump vec2 normal=a_pos_normal-2.0*pos;normal.y=normal.y*2.0-1.0;v_normal=normal;gapwidth=gapwidth/2.0;float halfwidth=width/2.0;offset=-1.0*offset;float inset=gapwidth+(gapwidth > 0.0 ? ANTIALIASING : 0.0);float outset=gapwidth+halfwidth*(gapwidth > 0.0 ? 2.0 : 1.0)+(halfwidth==0.0 ? 0.0 : ANTIALIASING);mediump vec2 dist=outset*a_extrude*scale;mediump float u=0.5*a_direction;mediump float t=1.0-abs(u);mediump vec2 offset2=offset*a_extrude*scale*normal.y*mat2(t,-u,u,t);vec4 projected_extrude=u_matrix*vec4(dist/u_ratio,0.0,0.0);gl_Position=u_matrix*vec4(pos+offset2/u_ratio,0.0,1.0)+projected_extrude;\n#ifdef TERRAIN3D\nv_gamma_scale=1.0;\n#else\nfloat extrude_length_without_perspective=length(dist);float extrude_length_with_perspective=length(projected_extrude.xy/gl_Position.w*u_units_to_pixels);v_gamma_scale=extrude_length_without_perspective/extrude_length_with_perspective;\n#endif\nv_tex_a=vec2(a_linesofar*u_patternscale_a.x/floorwidth,normal.y*u_patternscale_a.y+u_tex_y_a);v_tex_b=vec2(a_linesofar*u_patternscale_b.x/floorwidth,normal.y*u_patternscale_b.y+u_tex_y_b);v_width2=vec2(outset,inset);}"),raster:ne("uniform float u_fade_t;uniform float u_opacity;uniform sampler2D u_image0;uniform sampler2D u_image1;varying vec2 v_pos0;varying vec2 v_pos1;uniform float u_brightness_low;uniform float u_brightness_high;uniform float u_saturation_factor;uniform float u_contrast_factor;uniform vec3 u_spin_weights;void main() {vec4 color0=texture2D(u_image0,v_pos0);vec4 color1=texture2D(u_image1,v_pos1);if (color0.a > 0.0) {color0.rgb=color0.rgb/color0.a;}if (color1.a > 0.0) {color1.rgb=color1.rgb/color1.a;}vec4 color=mix(color0,color1,u_fade_t);color.a*=u_opacity;vec3 rgb=color.rgb;rgb=vec3(dot(rgb,u_spin_weights.xyz),dot(rgb,u_spin_weights.zxy),dot(rgb,u_spin_weights.yzx));float average=(color.r+color.g+color.b)/3.0;rgb+=(average-rgb)*u_saturation_factor;rgb=(rgb-0.5)*u_contrast_factor+0.5;vec3 u_high_vec=vec3(u_brightness_low,u_brightness_low,u_brightness_low);vec3 u_low_vec=vec3(u_brightness_high,u_brightness_high,u_brightness_high);gl_FragColor=vec4(mix(u_high_vec,u_low_vec,rgb)*color.a,color.a);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","uniform mat4 u_matrix;uniform vec2 u_tl_parent;uniform float u_scale_parent;uniform float u_buffer_scale;attribute vec2 a_pos;attribute vec2 a_texture_pos;varying vec2 v_pos0;varying vec2 v_pos1;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);v_pos0=(((a_texture_pos/8192.0)-0.5)/u_buffer_scale )+0.5;v_pos1=(v_pos0*u_scale_parent)+u_tl_parent;}"),symbolIcon:ne("uniform sampler2D u_texture;varying vec2 v_tex;varying float v_fade_opacity;\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\nlowp float alpha=opacity*v_fade_opacity;gl_FragColor=texture2D(u_texture,v_tex)*alpha;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform highp float u_camera_to_center_distance;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform float u_fade_change;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform vec2 u_texsize;varying vec2 v_tex;varying float v_fade_opacity;\n#pragma mapbox: define lowp float opacity\nvoid main() {\n#pragma mapbox: initialize lowp float opacity\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;vec2 a_minFontScale=a_pixeloffset.zw/256.0;float ele=get_elevation(a_pos);highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,ele,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),ele,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,ele,1.0);float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*max(a_minFontScale,fontScale)+a_pxoffset/16.0),z,1.0);v_tex=a_tex/u_texsize;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float visibility=calculate_visibility(projectedPoint);v_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));}"),symbolSDF:ne("#define SDF_PX 8.0\nuniform bool u_is_halo;uniform sampler2D u_texture;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;uniform bool u_is_text;varying vec2 v_data0;varying vec3 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nfloat EDGE_GAMMA=0.105/u_device_pixel_ratio;vec2 tex=v_data0.xy;float gamma_scale=v_data1.x;float size=v_data1.y;float fade_opacity=v_data1[2];float fontScale=u_is_text ? size/24.0 : size;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec4 a_pixeloffset;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;varying vec2 v_data0;varying vec3 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);vec2 a_pxoffset=a_pixeloffset.xy;float ele=get_elevation(a_pos);highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,ele,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),ele,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,ele,1.0);float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale+a_pxoffset),z,1.0);float gamma_scale=gl_Position.w;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float visibility=calculate_visibility(projectedPoint);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));v_data0=a_tex/u_texsize;v_data1=vec3(gamma_scale,size,interpolated_fade_opacity);}"),symbolTextAndIcon:ne("#define SDF_PX 8.0\n#define SDF 1.0\n#define ICON 0.0\nuniform bool u_is_halo;uniform sampler2D u_texture;uniform sampler2D u_texture_icon;uniform highp float u_gamma_scale;uniform lowp float u_device_pixel_ratio;varying vec4 v_data0;varying vec4 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nfloat fade_opacity=v_data1[2];if (v_data1.w==ICON) {vec2 tex_icon=v_data0.zw;lowp float alpha=opacity*fade_opacity;gl_FragColor=texture2D(u_texture_icon,tex_icon)*alpha;\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\nreturn;}vec2 tex=v_data0.xy;float EDGE_GAMMA=0.105/u_device_pixel_ratio;float gamma_scale=v_data1.x;float size=v_data1.y;float fontScale=size/24.0;lowp vec4 color=fill_color;highp float gamma=EDGE_GAMMA/(fontScale*u_gamma_scale);lowp float buff=(256.0-64.0)/256.0;if (u_is_halo) {color=halo_color;gamma=(halo_blur*1.19/SDF_PX+EDGE_GAMMA)/(fontScale*u_gamma_scale);buff=(6.0-halo_width/fontScale)/SDF_PX;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(buff-gamma_scaled,buff+gamma_scaled,dist);gl_FragColor=color*(alpha*opacity*fade_opacity);\n#ifdef OVERDRAW_INSPECTOR\ngl_FragColor=vec4(1.0);\n#endif\n}","const float PI=3.141592653589793;attribute vec4 a_pos_offset;attribute vec4 a_data;attribute vec3 a_projected_pos;attribute float a_fade_opacity;uniform bool u_is_size_zoom_constant;uniform bool u_is_size_feature_constant;uniform highp float u_size_t;uniform highp float u_size;uniform mat4 u_matrix;uniform mat4 u_label_plane_matrix;uniform mat4 u_coord_matrix;uniform bool u_is_text;uniform bool u_pitch_with_map;uniform highp float u_pitch;uniform bool u_rotate_symbol;uniform highp float u_aspect_ratio;uniform highp float u_camera_to_center_distance;uniform float u_fade_change;uniform vec2 u_texsize;uniform vec2 u_texsize_icon;varying vec4 v_data0;varying vec4 v_data1;\n#pragma mapbox: define highp vec4 fill_color\n#pragma mapbox: define highp vec4 halo_color\n#pragma mapbox: define lowp float opacity\n#pragma mapbox: define lowp float halo_width\n#pragma mapbox: define lowp float halo_blur\nvoid main() {\n#pragma mapbox: initialize highp vec4 fill_color\n#pragma mapbox: initialize highp vec4 halo_color\n#pragma mapbox: initialize lowp float opacity\n#pragma mapbox: initialize lowp float halo_width\n#pragma mapbox: initialize lowp float halo_blur\nvec2 a_pos=a_pos_offset.xy;vec2 a_offset=a_pos_offset.zw;vec2 a_tex=a_data.xy;vec2 a_size=a_data.zw;float a_size_min=floor(a_size[0]*0.5);float is_sdf=a_size[0]-2.0*a_size_min;float ele=get_elevation(a_pos);highp float segment_angle=-a_projected_pos[2];float size;if (!u_is_size_zoom_constant && !u_is_size_feature_constant) {size=mix(a_size_min,a_size[1],u_size_t)/128.0;} else if (u_is_size_zoom_constant && !u_is_size_feature_constant) {size=a_size_min/128.0;} else {size=u_size;}vec4 projectedPoint=u_matrix*vec4(a_pos,ele,1);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?\ncamera_to_anchor_distance/u_camera_to_center_distance :\nu_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=size/24.0;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),ele,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,ele,1.0);float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale),z,1.0);float gamma_scale=gl_Position.w;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float visibility=calculate_visibility(projectedPoint);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));v_data0.xy=a_tex/u_texsize;v_data0.zw=a_tex/u_texsize_icon;v_data1=vec4(gamma_scale,size,interpolated_fade_opacity,is_sdf);}"),terrain:ne("uniform sampler2D u_texture;varying vec2 v_texture_pos;void main() {gl_FragColor=texture2D(u_texture,v_texture_pos);}",ie),terrainDepth:ne("varying float v_depth;const highp vec4 bitSh=vec4(256.*256.*256.,256.*256.,256.,1.);const highp vec4 bitMsk=vec4(0.,vec3(1./256.0));highp vec4 pack(highp float value) {highp vec4 comp=fract(value*bitSh);comp-=comp.xxyz*bitMsk;return comp;}void main() {gl_FragColor=pack(v_depth);}",ie),terrainCoords:ne("precision mediump float;uniform sampler2D u_texture;uniform float u_terrain_coords_id;varying vec2 v_texture_pos;void main() {vec4 rgba=texture2D(u_texture,v_texture_pos);gl_FragColor=vec4(rgba.r,rgba.g,rgba.b,u_terrain_coords_id);}",ie)};function ne(t,e){const i=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,r=e.match(/attribute ([\w]+) ([\w]+)/g),n=t.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),a=e.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),o=a?a.concat(n):n,s={};return{fragmentSource:t=t.replace(i,((t,e,i,r,n)=>(s[n]=!0,"define"===e?`\n#ifndef HAS_UNIFORM_u_${n}\nvarying ${i} ${r} ${n};\n#else\nuniform ${i} ${r} u_${n};\n#endif\n`:`\n#ifdef HAS_UNIFORM_u_${n}\n ${i} ${r} ${n} = u_${n};\n#endif\n`))),vertexSource:e=e.replace(i,((t,e,i,r,n)=>{const a="float"===r?"vec2":"vec4",o=n.match(/color/)?"color":a;return s[n]?"define"===e?`\n#ifndef HAS_UNIFORM_u_${n}\nuniform lowp float u_${n}_t;\nattribute ${i} ${a} a_${n};\nvarying ${i} ${r} ${n};\n#else\nuniform ${i} ${r} u_${n};\n#endif\n`:"vec4"===o?`\n#ifndef HAS_UNIFORM_u_${n}\n ${n} = a_${n};\n#else\n ${i} ${r} ${n} = u_${n};\n#endif\n`:`\n#ifndef HAS_UNIFORM_u_${n}\n ${n} = unpack_mix_${o}(a_${n}, u_${n}_t);\n#else\n ${i} ${r} ${n} = u_${n};\n#endif\n`:"define"===e?`\n#ifndef HAS_UNIFORM_u_${n}\nuniform lowp float u_${n}_t;\nattribute ${i} ${a} a_${n};\n#else\nuniform ${i} ${r} u_${n};\n#endif\n`:"vec4"===o?`\n#ifndef HAS_UNIFORM_u_${n}\n ${i} ${r} ${n} = a_${n};\n#else\n ${i} ${r} ${n} = u_${n};\n#endif\n`:`\n#ifndef HAS_UNIFORM_u_${n}\n ${i} ${r} ${n} = unpack_mix_${o}(a_${n}, u_${n}_t);\n#else\n ${i} ${r} ${n} = u_${n};\n#endif\n`})),staticAttributes:r,staticUniforms:o}}class ae{constructor(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null}bind(t,e,i,r,n,a,o,s,l){this.context=t;let c=this.boundPaintVertexBuffers.length!==r.length;for(let h=0;!c&&h({u_depth:new t.Uniform1i(e,i.u_depth),u_terrain:new t.Uniform1i(e,i.u_terrain),u_terrain_dim:new t.Uniform1f(e,i.u_terrain_dim),u_terrain_matrix:new t.UniformMatrix4f(e,i.u_terrain_matrix),u_terrain_unpack:new t.Uniform4f(e,i.u_terrain_unpack),u_terrain_offset:new t.Uniform1f(e,i.u_terrain_offset),u_terrain_exaggeration:new t.Uniform1f(e,i.u_terrain_exaggeration)}))(e,w),this.binderUniforms=n?n.getUniforms(e,w):[]}draw(t,e,i,r,n,a,o,s,l,c,h,u,p,d,m,f,g,_){const y=t.gl;if(this.failedToCreate)return;if(t.program.set(this.program),t.setDepthMode(i),t.setStencilMode(r),t.setColorMode(n),t.setCullFace(a),s){t.activeTexture.set(y.TEXTURE2),y.bindTexture(y.TEXTURE_2D,s.depthTexture),t.activeTexture.set(y.TEXTURE3),y.bindTexture(y.TEXTURE_2D,s.texture);for(const t in this.terrainUniforms)this.terrainUniforms[t].set(s[t])}for(const v in this.fixedUniforms)this.fixedUniforms[v].set(o[v]);m&&m.setUniforms(t,this.binderUniforms,p,{zoom:d});let x=0;switch(e){case y.LINES:x=2;break;case y.TRIANGLES:x=3;break;case y.LINE_STRIP:x=1}for(const v of u.get()){const i=v.vaos||(v.vaos={});(i[l]||(i[l]=new ae)).bind(t,this,c,m?m.getPaintVertexBuffers():[],h,v.vertexOffset,f,g,_),y.drawElements(e,v.primitiveLength*x,y.UNSIGNED_SHORT,v.primitiveOffset*x*2)}}}function le(t,e,i){const r=1/bt(i,1,e.transform.tileZoom),n=Math.pow(2,i.tileID.overscaledZ),a=i.tileSize*Math.pow(2,e.transform.tileZoom)/n,o=a*(i.tileID.canonical.x+i.tileID.wrap*n),s=a*i.tileID.canonical.y;return{u_image:0,u_texsize:i.imageAtlasTexture.size,u_scale:[r,t.fromScale,t.toScale],u_fade:t.t,u_pixel_coord_upper:[o>>16,s>>16],u_pixel_coord_lower:[65535&o,65535&s]}}const ce=(e,i,r,n)=>{const a=i.style.light,o=a.properties.get("position"),s=[o.x,o.y,o.z],l=t.create$1();"viewport"===a.properties.get("anchor")&&t.fromRotation(l,-i.transform.angle),t.transformMat3(s,s,l);const c=a.properties.get("color");return{u_matrix:e,u_lightpos:s,u_lightintensity:a.properties.get("intensity"),u_lightcolor:[c.r,c.g,c.b],u_vertical_gradient:+r,u_opacity:n}},he=(e,i,r,n,a,o,s)=>t.extend(ce(e,i,r,n),le(o,i,s),{u_height_factor:-Math.pow(2,a.overscaledZ)/s.tileSize/8}),ue=t=>({u_matrix:t}),pe=(e,i,r,n)=>t.extend(ue(e),le(r,i,n)),de=(t,e)=>({u_matrix:t,u_world:e}),me=(e,i,r,n,a)=>t.extend(pe(e,i,r,n),{u_world:a}),fe=(t,e,i,r)=>{const n=t.transform;let a,o;if("map"===r.paint.get("circle-pitch-alignment")){const t=bt(i,1,n.zoom);a=!0,o=[t,t]}else a=!1,o=n.pixelsToGLUnits;return{u_camera_to_center_distance:n.cameraToCenterDistance,u_scale_with_map:+("map"===r.paint.get("circle-pitch-scale")),u_matrix:t.translatePosMatrix(e.posMatrix,i,r.paint.get("circle-translate"),r.paint.get("circle-translate-anchor")),u_pitch_with_map:+a,u_device_pixel_ratio:t.pixelRatio,u_extrude_scale:o}},ge=(t,e,i)=>{const r=bt(i,1,e.zoom),n=Math.pow(2,e.zoom-i.tileID.overscaledZ),a=i.tileID.overscaleFactor();return{u_matrix:t,u_camera_to_center_distance:e.cameraToCenterDistance,u_pixels_to_tile_units:r,u_extrude_scale:[e.pixelsToGLUnits[0]/(r*n),e.pixelsToGLUnits[1]/(r*n)],u_overscale_factor:a}},_e=(t,e,i=1)=>({u_matrix:t,u_color:e,u_overlay:0,u_overlay_scale:i}),ye=t=>({u_matrix:t}),xe=(t,e,i,r)=>({u_matrix:t,u_extrude_scale:bt(e,1,i),u_intensity:r});function ve(e,i){const r=Math.pow(2,i.canonical.z),n=i.canonical.y;return[new t.MercatorCoordinate(0,n/r).toLngLat().lat,new t.MercatorCoordinate(0,(n+1)/r).toLngLat().lat]}const be=(t,e,i,r)=>{const n=t.transform;return{u_matrix:Ie(t,e,i,r),u_ratio:1/bt(e,1,n.zoom),u_device_pixel_ratio:t.pixelRatio,u_units_to_pixels:[1/n.pixelsToGLUnits[0],1/n.pixelsToGLUnits[1]]}},we=(e,i,r,n,a)=>t.extend(be(e,i,r,a),{u_image:0,u_image_height:n}),Te=(t,e,i,r,n)=>{const a=t.transform,o=Se(e,a);return{u_matrix:Ie(t,e,i,n),u_texsize:e.imageAtlasTexture.size,u_ratio:1/bt(e,1,a.zoom),u_device_pixel_ratio:t.pixelRatio,u_image:0,u_scale:[o,r.fromScale,r.toScale],u_fade:r.t,u_units_to_pixels:[1/a.pixelsToGLUnits[0],1/a.pixelsToGLUnits[1]]}},Ee=(e,i,r,n,a,o)=>{const s=e.lineAtlas,l=Se(i,e.transform),c="round"===r.layout.get("line-cap"),h=s.getDash(n.from,c),u=s.getDash(n.to,c),p=h.width*a.fromScale,d=u.width*a.toScale;return t.extend(be(e,i,r,o),{u_patternscale_a:[l/p,-h.height/2],u_patternscale_b:[l/d,-u.height/2],u_sdfgamma:s.width/(256*Math.min(p,d)*e.pixelRatio)/2,u_image:0,u_tex_y_a:h.y,u_tex_y_b:u.y,u_mix:a.t})};function Se(t,e){return 1/bt(t,1,e.tileZoom)}function Ie(t,e,i,r){return t.translatePosMatrix(r?r.posMatrix:e.tileID.posMatrix,e,i.paint.get("line-translate"),i.paint.get("line-translate-anchor"))}const ze=(t,e,i,r,n)=>{return{u_matrix:t,u_tl_parent:e,u_scale_parent:i,u_buffer_scale:1,u_fade_t:r.mix,u_opacity:r.opacity*n.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:n.paint.get("raster-brightness-min"),u_brightness_high:n.paint.get("raster-brightness-max"),u_saturation_factor:(o=n.paint.get("raster-saturation"),o>0?1-1/(1.001-o):-o),u_contrast_factor:(a=n.paint.get("raster-contrast"),a>0?1/(1-a):1+a),u_spin_weights:Ce(n.paint.get("raster-hue-rotate"))};var a,o};function Ce(t){t*=Math.PI/180;const e=Math.sin(t),i=Math.cos(t);return[(2*i+1)/3,(-Math.sqrt(3)*e-i+1)/3,(Math.sqrt(3)*e-i+1)/3]}const Ae=(t,e,i,r,n,a,o,s,l,c)=>{const h=n.transform;return{u_is_size_zoom_constant:+("constant"===t||"source"===t),u_is_size_feature_constant:+("constant"===t||"camera"===t),u_size_t:e?e.uSizeT:0,u_size:e?e.uSize:0,u_camera_to_center_distance:h.cameraToCenterDistance,u_pitch:h.pitch/360*2*Math.PI,u_rotate_symbol:+i,u_aspect_ratio:h.width/h.height,u_fade_change:n.options.fadeDuration?n.symbolFadeChange:1,u_matrix:a,u_label_plane_matrix:o,u_coord_matrix:s,u_is_text:+l,u_pitch_with_map:+r,u_texsize:c,u_texture:0}},ke=(e,i,r,n,a,o,s,l,c,h,u)=>{const p=a.transform;return t.extend(Ae(e,i,r,n,a,o,s,l,c,h),{u_gamma_scale:n?Math.cos(p._pitch)*p.cameraToCenterDistance:1,u_device_pixel_ratio:a.pixelRatio,u_is_halo:+u})},Me=(e,i,r,n,a,o,s,l,c,h)=>t.extend(ke(e,i,r,n,a,o,s,l,!0,c,!0),{u_texsize_icon:h,u_texture_icon:1}),Pe=(t,e,i)=>({u_matrix:t,u_opacity:e,u_color:i}),De=(e,i,r,n,a,o)=>t.extend(function(t,e,i,r){const n=i.imageManager.getPattern(t.from.toString()),a=i.imageManager.getPattern(t.to.toString()),{width:o,height:s}=i.imageManager.getPixelSize(),l=Math.pow(2,r.tileID.overscaledZ),c=r.tileSize*Math.pow(2,i.transform.tileZoom)/l,h=c*(r.tileID.canonical.x+r.tileID.wrap*l),u=c*r.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:n.tl,u_pattern_br_a:n.br,u_pattern_tl_b:a.tl,u_pattern_br_b:a.br,u_texsize:[o,s],u_mix:e.t,u_pattern_size_a:n.displaySize,u_pattern_size_b:a.displaySize,u_scale_a:e.fromScale,u_scale_b:e.toScale,u_tile_units_to_pixels:1/bt(r,1,i.transform.tileZoom),u_pixel_coord_upper:[h>>16,u>>16],u_pixel_coord_lower:[65535&h,65535&u]}}(n,o,r,a),{u_matrix:e,u_opacity:i}),Le={fillExtrusion:(e,i)=>({u_matrix:new t.UniformMatrix4f(e,i.u_matrix),u_lightpos:new t.Uniform3f(e,i.u_lightpos),u_lightintensity:new t.Uniform1f(e,i.u_lightintensity),u_lightcolor:new t.Uniform3f(e,i.u_lightcolor),u_vertical_gradient:new t.Uniform1f(e,i.u_vertical_gradient),u_opacity:new t.Uniform1f(e,i.u_opacity)}),fillExtrusionPattern:(e,i)=>({u_matrix:new t.UniformMatrix4f(e,i.u_matrix),u_lightpos:new t.Uniform3f(e,i.u_lightpos),u_lightintensity:new t.Uniform1f(e,i.u_lightintensity),u_lightcolor:new t.Uniform3f(e,i.u_lightcolor),u_vertical_gradient:new t.Uniform1f(e,i.u_vertical_gradient),u_height_factor:new t.Uniform1f(e,i.u_height_factor),u_image:new t.Uniform1i(e,i.u_image),u_texsize:new t.Uniform2f(e,i.u_texsize),u_pixel_coord_upper:new t.Uniform2f(e,i.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,i.u_pixel_coord_lower),u_scale:new t.Uniform3f(e,i.u_scale),u_fade:new t.Uniform1f(e,i.u_fade),u_opacity:new t.Uniform1f(e,i.u_opacity)}),fill:(e,i)=>({u_matrix:new t.UniformMatrix4f(e,i.u_matrix)}),fillPattern:(e,i)=>({u_matrix:new t.UniformMatrix4f(e,i.u_matrix),u_image:new t.Uniform1i(e,i.u_image),u_texsize:new t.Uniform2f(e,i.u_texsize),u_pixel_coord_upper:new t.Uniform2f(e,i.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,i.u_pixel_coord_lower),u_scale:new t.Uniform3f(e,i.u_scale),u_fade:new t.Uniform1f(e,i.u_fade)}),fillOutline:(e,i)=>({u_matrix:new t.UniformMatrix4f(e,i.u_matrix),u_world:new t.Uniform2f(e,i.u_world)}),fillOutlinePattern:(e,i)=>({u_matrix:new t.UniformMatrix4f(e,i.u_matrix),u_world:new t.Uniform2f(e,i.u_world),u_image:new t.Uniform1i(e,i.u_image),u_texsize:new t.Uniform2f(e,i.u_texsize),u_pixel_coord_upper:new t.Uniform2f(e,i.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,i.u_pixel_coord_lower),u_scale:new t.Uniform3f(e,i.u_scale),u_fade:new t.Uniform1f(e,i.u_fade)}),circle:(e,i)=>({u_camera_to_center_distance:new t.Uniform1f(e,i.u_camera_to_center_distance),u_scale_with_map:new t.Uniform1i(e,i.u_scale_with_map),u_pitch_with_map:new t.Uniform1i(e,i.u_pitch_with_map),u_extrude_scale:new t.Uniform2f(e,i.u_extrude_scale),u_device_pixel_ratio:new t.Uniform1f(e,i.u_device_pixel_ratio),u_matrix:new t.UniformMatrix4f(e,i.u_matrix)}),collisionBox:(e,i)=>({u_matrix:new t.UniformMatrix4f(e,i.u_matrix),u_camera_to_center_distance:new t.Uniform1f(e,i.u_camera_to_center_distance),u_pixels_to_tile_units:new t.Uniform1f(e,i.u_pixels_to_tile_units),u_extrude_scale:new t.Uniform2f(e,i.u_extrude_scale),u_overscale_factor:new t.Uniform1f(e,i.u_overscale_factor)}),collisionCircle:(e,i)=>({u_matrix:new t.UniformMatrix4f(e,i.u_matrix),u_inv_matrix:new t.UniformMatrix4f(e,i.u_inv_matrix),u_camera_to_center_distance:new t.Uniform1f(e,i.u_camera_to_center_distance),u_viewport_size:new t.Uniform2f(e,i.u_viewport_size)}),debug:(e,i)=>({u_color:new t.UniformColor(e,i.u_color),u_matrix:new t.UniformMatrix4f(e,i.u_matrix),u_overlay:new t.Uniform1i(e,i.u_overlay),u_overlay_scale:new t.Uniform1f(e,i.u_overlay_scale)}),clippingMask:(e,i)=>({u_matrix:new t.UniformMatrix4f(e,i.u_matrix)}),heatmap:(e,i)=>({u_extrude_scale:new t.Uniform1f(e,i.u_extrude_scale),u_intensity:new t.Uniform1f(e,i.u_intensity),u_matrix:new t.UniformMatrix4f(e,i.u_matrix)}),heatmapTexture:(e,i)=>({u_matrix:new t.UniformMatrix4f(e,i.u_matrix),u_world:new t.Uniform2f(e,i.u_world),u_image:new t.Uniform1i(e,i.u_image),u_color_ramp:new t.Uniform1i(e,i.u_color_ramp),u_opacity:new t.Uniform1f(e,i.u_opacity)}),hillshade:(e,i)=>({u_matrix:new t.UniformMatrix4f(e,i.u_matrix),u_image:new t.Uniform1i(e,i.u_image),u_latrange:new t.Uniform2f(e,i.u_latrange),u_light:new t.Uniform2f(e,i.u_light),u_shadow:new t.UniformColor(e,i.u_shadow),u_highlight:new t.UniformColor(e,i.u_highlight),u_accent:new t.UniformColor(e,i.u_accent)}),hillshadePrepare:(e,i)=>({u_matrix:new t.UniformMatrix4f(e,i.u_matrix),u_image:new t.Uniform1i(e,i.u_image),u_dimension:new t.Uniform2f(e,i.u_dimension),u_zoom:new t.Uniform1f(e,i.u_zoom),u_unpack:new t.Uniform4f(e,i.u_unpack)}),line:(e,i)=>({u_matrix:new t.UniformMatrix4f(e,i.u_matrix),u_ratio:new t.Uniform1f(e,i.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,i.u_device_pixel_ratio),u_units_to_pixels:new t.Uniform2f(e,i.u_units_to_pixels)}),lineGradient:(e,i)=>({u_matrix:new t.UniformMatrix4f(e,i.u_matrix),u_ratio:new t.Uniform1f(e,i.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,i.u_device_pixel_ratio),u_units_to_pixels:new t.Uniform2f(e,i.u_units_to_pixels),u_image:new t.Uniform1i(e,i.u_image),u_image_height:new t.Uniform1f(e,i.u_image_height)}),linePattern:(e,i)=>({u_matrix:new t.UniformMatrix4f(e,i.u_matrix),u_texsize:new t.Uniform2f(e,i.u_texsize),u_ratio:new t.Uniform1f(e,i.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,i.u_device_pixel_ratio),u_image:new t.Uniform1i(e,i.u_image),u_units_to_pixels:new t.Uniform2f(e,i.u_units_to_pixels),u_scale:new t.Uniform3f(e,i.u_scale),u_fade:new t.Uniform1f(e,i.u_fade)}),lineSDF:(e,i)=>({u_matrix:new t.UniformMatrix4f(e,i.u_matrix),u_ratio:new t.Uniform1f(e,i.u_ratio),u_device_pixel_ratio:new t.Uniform1f(e,i.u_device_pixel_ratio),u_units_to_pixels:new t.Uniform2f(e,i.u_units_to_pixels),u_patternscale_a:new t.Uniform2f(e,i.u_patternscale_a),u_patternscale_b:new t.Uniform2f(e,i.u_patternscale_b),u_sdfgamma:new t.Uniform1f(e,i.u_sdfgamma),u_image:new t.Uniform1i(e,i.u_image),u_tex_y_a:new t.Uniform1f(e,i.u_tex_y_a),u_tex_y_b:new t.Uniform1f(e,i.u_tex_y_b),u_mix:new t.Uniform1f(e,i.u_mix)}),raster:(e,i)=>({u_matrix:new t.UniformMatrix4f(e,i.u_matrix),u_tl_parent:new t.Uniform2f(e,i.u_tl_parent),u_scale_parent:new t.Uniform1f(e,i.u_scale_parent),u_buffer_scale:new t.Uniform1f(e,i.u_buffer_scale),u_fade_t:new t.Uniform1f(e,i.u_fade_t),u_opacity:new t.Uniform1f(e,i.u_opacity),u_image0:new t.Uniform1i(e,i.u_image0),u_image1:new t.Uniform1i(e,i.u_image1),u_brightness_low:new t.Uniform1f(e,i.u_brightness_low),u_brightness_high:new t.Uniform1f(e,i.u_brightness_high),u_saturation_factor:new t.Uniform1f(e,i.u_saturation_factor),u_contrast_factor:new t.Uniform1f(e,i.u_contrast_factor),u_spin_weights:new t.Uniform3f(e,i.u_spin_weights)}),symbolIcon:(e,i)=>({u_is_size_zoom_constant:new t.Uniform1i(e,i.u_is_size_zoom_constant),u_is_size_feature_constant:new t.Uniform1i(e,i.u_is_size_feature_constant),u_size_t:new t.Uniform1f(e,i.u_size_t),u_size:new t.Uniform1f(e,i.u_size),u_camera_to_center_distance:new t.Uniform1f(e,i.u_camera_to_center_distance),u_pitch:new t.Uniform1f(e,i.u_pitch),u_rotate_symbol:new t.Uniform1i(e,i.u_rotate_symbol),u_aspect_ratio:new t.Uniform1f(e,i.u_aspect_ratio),u_fade_change:new t.Uniform1f(e,i.u_fade_change),u_matrix:new t.UniformMatrix4f(e,i.u_matrix),u_label_plane_matrix:new t.UniformMatrix4f(e,i.u_label_plane_matrix),u_coord_matrix:new t.UniformMatrix4f(e,i.u_coord_matrix),u_is_text:new t.Uniform1i(e,i.u_is_text),u_pitch_with_map:new t.Uniform1i(e,i.u_pitch_with_map),u_texsize:new t.Uniform2f(e,i.u_texsize),u_texture:new t.Uniform1i(e,i.u_texture)}),symbolSDF:(e,i)=>({u_is_size_zoom_constant:new t.Uniform1i(e,i.u_is_size_zoom_constant),u_is_size_feature_constant:new t.Uniform1i(e,i.u_is_size_feature_constant),u_size_t:new t.Uniform1f(e,i.u_size_t),u_size:new t.Uniform1f(e,i.u_size),u_camera_to_center_distance:new t.Uniform1f(e,i.u_camera_to_center_distance),u_pitch:new t.Uniform1f(e,i.u_pitch),u_rotate_symbol:new t.Uniform1i(e,i.u_rotate_symbol),u_aspect_ratio:new t.Uniform1f(e,i.u_aspect_ratio),u_fade_change:new t.Uniform1f(e,i.u_fade_change),u_matrix:new t.UniformMatrix4f(e,i.u_matrix),u_label_plane_matrix:new t.UniformMatrix4f(e,i.u_label_plane_matrix),u_coord_matrix:new t.UniformMatrix4f(e,i.u_coord_matrix),u_is_text:new t.Uniform1i(e,i.u_is_text),u_pitch_with_map:new t.Uniform1i(e,i.u_pitch_with_map),u_texsize:new t.Uniform2f(e,i.u_texsize),u_texture:new t.Uniform1i(e,i.u_texture),u_gamma_scale:new t.Uniform1f(e,i.u_gamma_scale),u_device_pixel_ratio:new t.Uniform1f(e,i.u_device_pixel_ratio),u_is_halo:new t.Uniform1i(e,i.u_is_halo)}),symbolTextAndIcon:(e,i)=>({u_is_size_zoom_constant:new t.Uniform1i(e,i.u_is_size_zoom_constant),u_is_size_feature_constant:new t.Uniform1i(e,i.u_is_size_feature_constant),u_size_t:new t.Uniform1f(e,i.u_size_t),u_size:new t.Uniform1f(e,i.u_size),u_camera_to_center_distance:new t.Uniform1f(e,i.u_camera_to_center_distance),u_pitch:new t.Uniform1f(e,i.u_pitch),u_rotate_symbol:new t.Uniform1i(e,i.u_rotate_symbol),u_aspect_ratio:new t.Uniform1f(e,i.u_aspect_ratio),u_fade_change:new t.Uniform1f(e,i.u_fade_change),u_matrix:new t.UniformMatrix4f(e,i.u_matrix),u_label_plane_matrix:new t.UniformMatrix4f(e,i.u_label_plane_matrix),u_coord_matrix:new t.UniformMatrix4f(e,i.u_coord_matrix),u_is_text:new t.Uniform1i(e,i.u_is_text),u_pitch_with_map:new t.Uniform1i(e,i.u_pitch_with_map),u_texsize:new t.Uniform2f(e,i.u_texsize),u_texsize_icon:new t.Uniform2f(e,i.u_texsize_icon),u_texture:new t.Uniform1i(e,i.u_texture),u_texture_icon:new t.Uniform1i(e,i.u_texture_icon),u_gamma_scale:new t.Uniform1f(e,i.u_gamma_scale),u_device_pixel_ratio:new t.Uniform1f(e,i.u_device_pixel_ratio),u_is_halo:new t.Uniform1i(e,i.u_is_halo)}),background:(e,i)=>({u_matrix:new t.UniformMatrix4f(e,i.u_matrix),u_opacity:new t.Uniform1f(e,i.u_opacity),u_color:new t.UniformColor(e,i.u_color)}),backgroundPattern:(e,i)=>({u_matrix:new t.UniformMatrix4f(e,i.u_matrix),u_opacity:new t.Uniform1f(e,i.u_opacity),u_image:new t.Uniform1i(e,i.u_image),u_pattern_tl_a:new t.Uniform2f(e,i.u_pattern_tl_a),u_pattern_br_a:new t.Uniform2f(e,i.u_pattern_br_a),u_pattern_tl_b:new t.Uniform2f(e,i.u_pattern_tl_b),u_pattern_br_b:new t.Uniform2f(e,i.u_pattern_br_b),u_texsize:new t.Uniform2f(e,i.u_texsize),u_mix:new t.Uniform1f(e,i.u_mix),u_pattern_size_a:new t.Uniform2f(e,i.u_pattern_size_a),u_pattern_size_b:new t.Uniform2f(e,i.u_pattern_size_b),u_scale_a:new t.Uniform1f(e,i.u_scale_a),u_scale_b:new t.Uniform1f(e,i.u_scale_b),u_pixel_coord_upper:new t.Uniform2f(e,i.u_pixel_coord_upper),u_pixel_coord_lower:new t.Uniform2f(e,i.u_pixel_coord_lower),u_tile_units_to_pixels:new t.Uniform1f(e,i.u_tile_units_to_pixels)}),terrain:(e,i)=>({u_matrix:new t.UniformMatrix4f(e,i.u_matrix),u_texture:new t.Uniform1i(e,i.u_texture)}),terrainDepth:(e,i)=>({u_matrix:new t.UniformMatrix4f(e,i.u_matrix)}),terrainCoords:(e,i)=>({u_matrix:new t.UniformMatrix4f(e,i.u_matrix),u_texture:new t.Uniform1i(e,i.u_texture),u_terrain_coords_id:new t.Uniform1f(e,i.u_terrain_coords_id)})};class Be{constructor(t,e,i){this.context=t;const r=t.gl;this.buffer=r.createBuffer(),this.dynamicDraw=Boolean(i),this.context.unbindVAO(),t.bindElementBuffer.set(this.buffer),r.bufferData(r.ELEMENT_ARRAY_BUFFER,e.arrayBuffer,this.dynamicDraw?r.DYNAMIC_DRAW:r.STATIC_DRAW),this.dynamicDraw||delete e.arrayBuffer}bind(){this.context.bindElementBuffer.set(this.buffer)}updateData(t){const e=this.context.gl;if(!this.dynamicDraw)throw new Error("Attempted to update data while not in dynamic mode.");this.context.unbindVAO(),this.bind(),e.bufferSubData(e.ELEMENT_ARRAY_BUFFER,0,t.arrayBuffer)}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)}}const Re={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"};class Fe{constructor(t,e,i,r){this.length=e.length,this.attributes=i,this.itemSize=e.bytesPerElement,this.dynamicDraw=r,this.context=t;const n=t.gl;this.buffer=n.createBuffer(),t.bindVertexBuffer.set(this.buffer),n.bufferData(n.ARRAY_BUFFER,e.arrayBuffer,this.dynamicDraw?n.DYNAMIC_DRAW:n.STATIC_DRAW),this.dynamicDraw||delete e.arrayBuffer}bind(){this.context.bindVertexBuffer.set(this.buffer)}updateData(t){if(t.length!==this.length)throw new Error(`Length of new data is ${t.length}, which doesn't match current length of ${this.length}`);const e=this.context.gl;this.bind(),e.bufferSubData(e.ARRAY_BUFFER,0,t.arrayBuffer)}enableAttributes(t,e){for(let i=0;i0){const i=t.create(),r=_;t.mul(i,g.placementInvProjMatrix,e.transform.glCoordMatrix),t.mul(i,i,g.placementViewportMatrix),u.push({circleArray:x,circleOffset:d,transform:r,invTransform:i,coord:m}),p+=x.length/4,d=p}y&&h.draw(l,c.LINES,wi.disabled,Ei.disabled,e.colorModeForRenderPass(),Si.disabled,ge(_,e.transform,f),e.style.terrain&&e.style.terrain.getTerrainData(m),r.id,y.layoutVertexBuffer,y.indexBuffer,y.segments,null,e.transform.zoom,null,null,y.collisionVertexBuffer)}if(!s||!u.length)return;const m=e.useProgram("collisionCircle"),f=new t.CollisionCircleLayoutArray;f.resize(4*p),f._trim();let g=0;for(const t of u)for(let e=0;e=0&&(f[m.associatedIconIndex]={shiftedAnchor:S,angle:I})}else _t(m.numGlyphs,d)}if(h){m.clear();const i=e.icon.placedSymbolArray;for(let e=0;ee.style.terrain.getElevation(S,t,i):null,i="map"===r.layout.get("text-rotation-alignment");ht(l,S.posMatrix,e,a,R,F,_,h,i,t)}const U=e.translatePosMatrix(S.posMatrix,n,o,s),N=y||a&&T||V?Ci:R,$=e.translatePosMatrix(F,n,o,s,!0),G=p&&0!==r.paint.get(a?"text-halo-width":"icon-halo-width").constantOr(1);let q;q=p?l.iconsInText?Me(d.kind,z,x,_,e,U,N,$,A,D):ke(d.kind,z,x,_,e,U,N,$,a,A,!0):Ae(d.kind,z,x,_,e,U,N,$,a,A);const Z={program:I,buffers:c,uniformValues:q,atlasTexture:k,atlasTextureIcon:L,atlasInterpolation:M,atlasInterpolationIcon:P,isSDF:p,hasHalo:G};if(v&&l.canOverlap){b=!0;const e=c.segments.get();for(const i of e)E.push({segments:new t.SegmentVector([i]),sortKey:i.sortKey,state:Z,terrainData:C})}else E.push({segments:c.segments,sortKey:0,state:Z,terrainData:C})}b&&E.sort(((t,e)=>t.sortKey-e.sortKey));for(const t of E){const i=t.state;if(d.activeTexture.set(m.TEXTURE0),i.atlasTexture.bind(i.atlasInterpolation,m.CLAMP_TO_EDGE),i.atlasTextureIcon&&(d.activeTexture.set(m.TEXTURE1),i.atlasTextureIcon&&i.atlasTextureIcon.bind(i.atlasInterpolationIcon,m.CLAMP_TO_EDGE)),i.isSDF){const n=i.uniformValues;i.hasHalo&&(n.u_is_halo=1,Di(i.buffers,t.segments,r,e,i.program,w,u,p,n,t.terrainData)),n.u_is_halo=0}Di(i.buffers,t.segments,r,e,i.program,w,u,p,i.uniformValues,t.terrainData)}}function Di(t,e,i,r,n,a,o,s,l,c){const h=r.context;n.draw(h,h.gl.TRIANGLES,a,o,s,Si.disabled,l,c,i.id,t.layoutVertexBuffer,t.indexBuffer,e,i.paint,r.transform.zoom,t.programConfigurations.get(i.id),t.dynamicLayoutVertexBuffer,t.opacityVertexBuffer)}function Li(t,e,i,r,n,a,o){const s=t.context.gl,l=i.paint.get("fill-pattern"),c=l&&l.constantOr(1),h=i.getCrossfadeParameters();let u,p,d,m,f;o?(p=c&&!i.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",u=s.LINES):(p=c?"fillPattern":"fill",u=s.TRIANGLES);for(const g of r){const r=e.getTile(g);if(c&&!r.patternsLoaded())continue;const _=r.getBucket(i);if(!_)continue;const y=_.programConfigurations.get(i.id),x=t.useProgram(p,y),v=t.style.terrain&&t.style.terrain.getTerrainData(g);c&&(t.context.activeTexture.set(s.TEXTURE0),r.imageAtlasTexture.bind(s.LINEAR,s.CLAMP_TO_EDGE),y.updatePaintBuffers(h));const b=l.constantOr(null);if(b&&r.imageAtlas){const t=r.imageAtlas,e=t.patternPositions[b.to.toString()],i=t.patternPositions[b.from.toString()];e&&i&&y.setConstantPatternPositions(e,i)}const w=v?g:null,T=t.translatePosMatrix(w?w.posMatrix:g.posMatrix,r,i.paint.get("fill-translate"),i.paint.get("fill-translate-anchor"));if(o){m=_.indexBuffer2,f=_.segments2;const e=[s.drawingBufferWidth,s.drawingBufferHeight];d="fillOutlinePattern"===p&&c?me(T,t,h,r,e):de(T,e)}else m=_.indexBuffer,f=_.segments,d=c?pe(T,t,h,r):ue(T);x.draw(t.context,u,n,t.stencilModeForClipping(g),a,Si.disabled,d,v,i.id,_.layoutVertexBuffer,m,f,i.paint,t.transform.zoom,y)}}function Bi(t,e,i,r,n,a,o){const s=t.context,l=s.gl,c=i.paint.get("fill-extrusion-pattern"),h=c.constantOr(1),u=i.getCrossfadeParameters(),p=i.paint.get("fill-extrusion-opacity");for(const d of r){const r=e.getTile(d),m=r.getBucket(i);if(!m)continue;const f=t.style.terrain&&t.style.terrain.getTerrainData(d),g=m.programConfigurations.get(i.id),_=t.useProgram(h?"fillExtrusionPattern":"fillExtrusion",g);h&&(t.context.activeTexture.set(l.TEXTURE0),r.imageAtlasTexture.bind(l.LINEAR,l.CLAMP_TO_EDGE),g.updatePaintBuffers(u));const y=c.constantOr(null);if(y&&r.imageAtlas){const t=r.imageAtlas,e=t.patternPositions[y.to.toString()],i=t.patternPositions[y.from.toString()];e&&i&&g.setConstantPatternPositions(e,i)}const x=t.translatePosMatrix(d.posMatrix,r,i.paint.get("fill-extrusion-translate"),i.paint.get("fill-extrusion-translate-anchor")),v=i.paint.get("fill-extrusion-vertical-gradient"),b=h?he(x,t,v,p,d,u,r):ce(x,t,v,p);_.draw(s,s.gl.TRIANGLES,n,a,o,Si.backCCW,b,f,i.id,m.layoutVertexBuffer,m.indexBuffer,m.segments,i.paint,t.transform.zoom,g,t.style.terrain&&m.centroidVertexBuffer)}}function Ri(t,e,i,r,n,a,o){const s=t.context,l=s.gl,c=i.fbo;if(!c)return;const h=t.useProgram("hillshade"),u=t.style.terrain&&t.style.terrain.getTerrainData(e);s.activeTexture.set(l.TEXTURE0),l.bindTexture(l.TEXTURE_2D,c.colorAttachment.get()),h.draw(s,l.TRIANGLES,n,a,o,Si.disabled,((t,e,i,r)=>{const n=i.paint.get("hillshade-shadow-color"),a=i.paint.get("hillshade-highlight-color"),o=i.paint.get("hillshade-accent-color");let s=i.paint.get("hillshade-illumination-direction")*(Math.PI/180);"viewport"===i.paint.get("hillshade-illumination-anchor")&&(s-=t.transform.angle);const l=!t.options.moving;return{u_matrix:r?r.posMatrix:t.transform.calculatePosMatrix(e.tileID.toUnwrapped(),l),u_image:0,u_latrange:ve(0,e.tileID),u_light:[i.paint.get("hillshade-exaggeration"),s],u_shadow:n,u_highlight:a,u_accent:o}})(t,i,r,u?e:null),u,r.id,t.rasterBoundsBuffer,t.quadTriangleIndexBuffer,t.rasterBoundsSegments)}function Fi(e,i,r,n,a,o){const s=e.context,c=s.gl,h=i.dem;if(h&&h.data){const u=h.dim,p=h.stride,d=h.getPixels();if(s.activeTexture.set(c.TEXTURE1),s.pixelStoreUnpackPremultiplyAlpha.set(!1),i.demTexture=i.demTexture||e.getTileTexture(p),i.demTexture){const t=i.demTexture;t.update(d,{premultiply:!1}),t.bind(c.NEAREST,c.CLAMP_TO_EDGE)}else i.demTexture=new l(s,d,c.RGBA,{premultiply:!1}),i.demTexture.bind(c.NEAREST,c.CLAMP_TO_EDGE);s.activeTexture.set(c.TEXTURE0);let m=i.fbo;if(!m){const t=new l(s,{width:u,height:u,data:null},c.RGBA);t.bind(c.LINEAR,c.CLAMP_TO_EDGE),m=i.fbo=s.createFramebuffer(u,u,!0),m.colorAttachment.set(t.texture)}s.bindFramebuffer.set(m.framebuffer),s.viewport.set([0,0,u,u]),e.useProgram("hillshadePrepare").draw(s,c.TRIANGLES,n,a,o,Si.disabled,((e,i)=>{const r=i.stride,n=t.create();return t.ortho(n,0,t.EXTENT,-t.EXTENT,0,0,1),t.translate(n,n,[0,-t.EXTENT,0]),{u_matrix:n,u_image:1,u_dimension:[r,r],u_zoom:e.overscaledZ,u_unpack:i.getUnpackVector()}})(i.tileID,h),null,r.id,e.rasterBoundsBuffer,e.quadTriangleIndexBuffer,e.rasterBoundsSegments),i.needsHillshadePrepare=!1}}function Oi(e,i,r,n,a,o){const s=n.paint.get("raster-fade-duration");if(!o&&s>0){const n=t.exported.now(),o=(n-e.timeAdded)/s,l=i?(n-i.timeAdded)/s:-1,c=r.getSource(),h=a.coveringZoomLevel({tileSize:c.tileSize,roundZoom:c.roundZoom}),u=!i||Math.abs(i.tileID.overscaledZ-h)>Math.abs(e.tileID.overscaledZ-h),p=u&&e.refreshedUponExpiration?1:t.clamp(u?o:1-l,0,1);return e.refreshedUponExpiration&&o>=1&&(e.refreshedUponExpiration=!1),i?{opacity:1,mix:1-p}:{opacity:p,mix:0}}return{opacity:1,mix:0}}const Vi=new t.Color(1,0,0,1),Ui=new t.Color(0,1,0,1),Ni=new t.Color(0,0,1,1),$i=new t.Color(1,0,1,1),Gi=new t.Color(0,1,1,1);function qi(t,e,i,r){ji(t,0,e+i/2,t.transform.width,i,r)}function Zi(t,e,i,r){ji(t,e-i/2,0,i,t.transform.height,r)}function ji(t,e,i,r,n,a){const o=t.context,s=o.gl;s.enable(s.SCISSOR_TEST),s.scissor(e*t.pixelRatio,i*t.pixelRatio,r*t.pixelRatio,n*t.pixelRatio),o.clear({color:a}),s.disable(s.SCISSOR_TEST)}function Xi(e,i,r){const n=e.context,a=n.gl,o=r.posMatrix,s=e.useProgram("debug"),l=wi.disabled,c=Ei.disabled,h=e.colorModeForRenderPass(),u="$debug",p=e.style.terrain&&e.style.terrain.getTerrainData(r);n.activeTexture.set(a.TEXTURE0),e.emptyTexture.bind(a.LINEAR,a.CLAMP_TO_EDGE);const d=i.getTileByID(r.key).latestRawTileData,m=Math.floor((d&&d.byteLength||0)/1024),f=i.getTile(r).tileSize,g=512/Math.min(f,512)*(r.overscaledZ/e.transform.zoom)*.5;let _=r.canonical.toString();r.overscaledZ!==r.canonical.z&&(_+=` => ${r.overscaledZ}`),function(t,e){t.initDebugOverlayCanvas();const i=t.debugOverlayCanvas,r=t.context.gl,n=t.debugOverlayCanvas.getContext("2d");n.clearRect(0,0,i.width,i.height),n.shadowColor="white",n.shadowBlur=2,n.lineWidth=1.5,n.strokeStyle="white",n.textBaseline="top",n.font="bold 36px Open Sans, sans-serif",n.fillText(e,5,5),n.strokeText(e,5,5),t.debugOverlayTexture.update(i),t.debugOverlayTexture.bind(r.LINEAR,r.CLAMP_TO_EDGE)}(e,`${_} ${m}kB`),s.draw(n,a.TRIANGLES,l,c,vi.alphaBlended,Si.disabled,_e(o,t.Color.transparent,g),null,u,e.debugBuffer,e.quadTriangleIndexBuffer,e.debugSegments),s.draw(n,a.LINE_STRIP,l,c,h,Si.disabled,_e(o,t.Color.red),p,u,e.debugBuffer,e.tileBorderIndexBuffer,e.debugSegments)}function Hi(t,e,i){const r=t.context,n=r.gl,a=t.colorModeForRenderPass(),o=new wi(n.LEQUAL,wi.ReadWrite,t.depthRangeFor3D),s=t.useProgram("terrain"),l=e.getTerrainMesh(),c=e.getTerrainData(i.tileID);r.bindFramebuffer.set(null),r.viewport.set([0,0,t.width,t.height]),r.activeTexture.set(n.TEXTURE0),n.bindTexture(n.TEXTURE_2D,e.getRTTFramebuffer().colorAttachment.get());const h=t.transform.calculatePosMatrix(i.tileID.toUnwrapped());s.draw(r,n.TRIANGLES,o,Ei.disabled,a,Si.backCCW,{u_matrix:h,u_texture:0},c,"terrain",l.vertexBuffer,l.indexBuffer,l.segments)}function Wi(t,e,i,r){const n=t.context,a=i.tileSize*e.qualityFactor;i.textures[r]||(i.textures[r]=t.getTileTexture(a)||new l(n,{width:a,height:a,data:null},n.gl.RGBA),i.textures[r].bind(n.gl.LINEAR,n.gl.CLAMP_TO_EDGE),0===r&&e.sourceCache.renderHistory.unshift(i.tileID.key));const o=e.getRTTFramebuffer();o.colorAttachment.set(i.textures[r].texture),n.bindFramebuffer.set(o.framebuffer),n.viewport.set([0,0,a,a])}class Ki{constructor(t){this._coordsDescendingInv={},this._coordsDescendingInvStr={},this.painter=t,this._renderToTexture={background:!0,fill:!0,line:!0,raster:!0},this._coordsDescendingInv={},this._coordsDescendingInvStr={},this._stacks=[],this._prevType=null,this._rerender={},this._renderableTiles=t.style.terrain.sourceCache.getRenderableTiles(),this._init()}_init(){const t=this.painter.style,e=t.terrain;for(const i in t.sourceCaches){this._coordsDescendingInv[i]={};const r=t.sourceCaches[i].getVisibleCoordinates();for(const t of r){const r=e.sourceCache.getTerrainCoords(t);for(const t in r)this._coordsDescendingInv[i][t]||(this._coordsDescendingInv[i][t]=[]),this._coordsDescendingInv[i][t].push(r[t])}}for(const i of t._order){const e=t._layers[i],r=e.source;if(this._renderToTexture[e.type]&&!this._coordsDescendingInvStr[r]){this._coordsDescendingInvStr[r]={};for(const t in this._coordsDescendingInv[r])this._coordsDescendingInvStr[r][t]=this._coordsDescendingInv[r][t].map((t=>t.key)).sort().join()}}return this._renderableTiles.forEach((t=>{for(const i in this._coordsDescendingInvStr){const r=this._coordsDescendingInvStr[i][t.tileID.key];r&&r!==t.textureCoords[i]&&t.clearTextures(this.painter),e.needsRerender(i,t.tileID)&&t.clearTextures(this.painter)}this._rerender[t.tileID.key]=!t.textures.length})),e.clearRerenderCache(),e.sourceCache.removeOutdated(this.painter),this}renderLayer(e){const i=e.type,r=this.painter,n=r.style._order,a=r.currentLayer,o=a+1===n.length;if(this._renderToTexture[i]&&(this._prevType&&this._renderToTexture[this._prevType]||this._stacks.push([]),this._prevType=i,this._stacks[this._stacks.length-1].push(n[a]),!o))return!0;if(this._renderToTexture[this._prevType]||"hillshade"===i||this._renderToTexture[i]&&o){this._prevType=i;const o=this._stacks.length-1,s=this._stacks[o]||[];for(const e of this._renderableTiles){if(Wi(r,r.style.terrain,e,o),this._rerender[e.tileID.key]){r.context.clear({color:t.Color.transparent});for(let t=0;ti.style.terrain.getElevation(u,t,e):null)}}}(n,e,r,i,r.layout.get("text-rotation-alignment"),r.layout.get("text-pitch-alignment"),a),0!==r.paint.get("icon-opacity").constantOr(1)&&Pi(e,i,r,n,!1,r.paint.get("icon-translate"),r.paint.get("icon-translate-anchor"),r.layout.get("icon-rotation-alignment"),r.layout.get("icon-pitch-alignment"),r.layout.get("icon-keep-upright"),o,s),0!==r.paint.get("text-opacity").constantOr(1)&&Pi(e,i,r,n,!0,r.paint.get("text-translate"),r.paint.get("text-translate-anchor"),r.layout.get("text-rotation-alignment"),r.layout.get("text-pitch-alignment"),r.layout.get("text-keep-upright"),o,s),i.map.showCollisionBoxes&&(zi(e,i,r,n,r.paint.get("text-translate"),r.paint.get("text-translate-anchor"),!0),zi(e,i,r,n,r.paint.get("icon-translate"),r.paint.get("icon-translate-anchor"),!1))},circle:function(e,i,r,n){if("translucent"!==e.renderPass)return;const a=r.paint.get("circle-opacity"),o=r.paint.get("circle-stroke-width"),s=r.paint.get("circle-stroke-opacity"),l=!r.layout.get("circle-sort-key").isConstant();if(0===a.constantOr(1)&&(0===o.constantOr(1)||0===s.constantOr(1)))return;const c=e.context,h=c.gl,u=e.depthModeForSublayer(0,wi.ReadOnly),p=Ei.disabled,d=e.colorModeForRenderPass(),m=[];for(let f=0;ft.sortKey-e.sortKey));for(const t of m){const{programConfiguration:i,program:n,layoutVertexBuffer:a,indexBuffer:o,uniformValues:s,terrainData:l}=t.state;n.draw(c,h.TRIANGLES,u,p,d,Si.disabled,s,l,r.id,a,o,t.segments,r.paint,e.transform.zoom,i)}},heatmap:function(e,i,r,n){if(0!==r.paint.get("heatmap-opacity"))if("offscreen"===e.renderPass){const a=e.context,o=a.gl,s=Ei.disabled,l=new vi([o.ONE,o.ONE],t.Color.transparent,[!0,!0,!0,!0]);!function(t,e,i){const r=t.gl;t.activeTexture.set(r.TEXTURE1),t.viewport.set([0,0,e.width/4,e.height/4]);let n=i.heatmapFbo;if(n)r.bindTexture(r.TEXTURE_2D,n.colorAttachment.get()),t.bindFramebuffer.set(n.framebuffer);else{const a=r.createTexture();r.bindTexture(r.TEXTURE_2D,a),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_S,r.CLAMP_TO_EDGE),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_WRAP_T,r.CLAMP_TO_EDGE),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MIN_FILTER,r.LINEAR),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_MAG_FILTER,r.LINEAR),n=i.heatmapFbo=t.createFramebuffer(e.width/4,e.height/4,!1),function(t,e,i,r){const n=t.gl;n.texImage2D(n.TEXTURE_2D,0,n.RGBA,e.width/4,e.height/4,0,n.RGBA,t.extRenderToTextureHalfFloat?t.extTextureHalfFloat.HALF_FLOAT_OES:n.UNSIGNED_BYTE,null),r.colorAttachment.set(i)}(t,e,a,n)}}(a,e,r),a.clear({color:t.Color.transparent});for(let t=0;t{const a=t.create();t.ortho(a,0,e.width,e.height,0,0,1);const o=e.context.gl;return{u_matrix:a,u_world:[o.drawingBufferWidth,o.drawingBufferHeight],u_image:0,u_color_ramp:1,u_opacity:i.paint.get("heatmap-opacity")}})(e,i),null,i.id,e.viewportBuffer,e.quadTriangleIndexBuffer,e.viewportSegments,i.paint,e.transform.zoom)}(e,r))},line:function(e,i,r,n){if("translucent"!==e.renderPass)return;const a=r.paint.get("line-opacity"),o=r.paint.get("line-width");if(0===a.constantOr(1)||0===o.constantOr(1))return;const s=e.depthModeForSublayer(0,wi.ReadOnly),c=e.colorModeForRenderPass(),h=r.paint.get("line-dasharray"),u=r.paint.get("line-pattern"),p=u.constantOr(1),d=r.paint.get("line-gradient"),m=r.getCrossfadeParameters(),f=p?"linePattern":h?"lineSDF":d?"lineGradient":"line",g=e.context,_=g.gl;let y=!0;for(const x of n){const n=i.getTile(x);if(p&&!n.patternsLoaded())continue;const a=n.getBucket(r);if(!a)continue;const o=a.programConfigurations.get(r.id),v=e.context.program.get(),b=e.useProgram(f,o),w=y||b.program!==v,T=e.style.terrain&&e.style.terrain.getTerrainData(x),E=u.constantOr(null);if(E&&n.imageAtlas){const t=n.imageAtlas,e=t.patternPositions[E.to.toString()],i=t.patternPositions[E.from.toString()];e&&i&&o.setConstantPatternPositions(e,i)}const S=T?x:null,I=p?Te(e,n,r,m,S):h?Ee(e,n,r,h,m,S):d?we(e,n,r,a.lineClipsArray.length,S):be(e,n,r,S);if(p)g.activeTexture.set(_.TEXTURE0),n.imageAtlasTexture.bind(_.LINEAR,_.CLAMP_TO_EDGE),o.updatePaintBuffers(m);else if(h&&(w||e.lineAtlas.dirty))g.activeTexture.set(_.TEXTURE0),e.lineAtlas.bind(g);else if(d){const n=a.gradients[r.id];let o=n.texture;if(r.gradientVersion!==n.version){let s=256;if(r.stepInterpolant){const r=i.getSource().maxzoom,n=x.canonical.z===r?Math.ceil(1<256&&this.clearStencil(),i.setColorMode(vi.disabled),i.setDepthMode(wi.disabled);const n=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(const a of e){const t=this._tileClippingMaskIDs[a.key]=this.nextStencilID++,e=this.style.terrain&&this.style.terrain.getTerrainData(a);n.draw(i,r.TRIANGLES,wi.disabled,new Ei({func:r.ALWAYS,mask:0},t,255,r.KEEP,r.KEEP,r.REPLACE),vi.disabled,Si.disabled,ye(a.posMatrix),e,"$clipping",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}stencilModeFor3D(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();const t=this.nextStencilID++,e=this.context.gl;return new Ei({func:e.NOTEQUAL,mask:255},t,255,e.KEEP,e.KEEP,e.REPLACE)}stencilModeForClipping(t){const e=this.context.gl;return new Ei({func:e.EQUAL,mask:255},this._tileClippingMaskIDs[t.key],0,e.KEEP,e.KEEP,e.REPLACE)}stencilConfigForOverlap(t){const e=this.context.gl,i=t.sort(((t,e)=>e.overscaledZ-t.overscaledZ)),r=i[i.length-1].overscaledZ,n=i[0].overscaledZ-r+1;if(n>1){this.currentStencilSource=void 0,this.nextStencilID+n>256&&this.clearStencil();const t={};for(let i=0;i=0;this.currentLayer--){const t=this.style._layers[r[this.currentLayer]],e=n[t.source],i=o[t.source];this._renderTileClippingMasks(t,i),this.renderLayer(this,e,t,i)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer{i.source&&!i.isHidden(this.transform.zoom)&&(i.source!==(e&&e.id)&&(e=this.style.sourceCaches[i.source]),(!t||t.getSource().maxzoom0?e.pop():null}isPatternMissing(t){if(!t)return!1;if(!t.from||!t.to)return!0;const e=this.imageManager.getPattern(t.from.toString()),i=this.imageManager.getPattern(t.to.toString());return!e||!i}useProgram(t,e){this.cache=this.cache||{};const i=t+(e?e.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"")+(this.style.terrain?"/terrain":"");return this.cache[i]||(this.cache[i]=new se(this.context,t,re[t],e,Le[t],this._showOverdrawInspector,this.style.terrain)),this.cache[i]}setCustomLayerDefaults(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()}setBaseState(){const t=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(t.FUNC_ADD)}initDebugOverlayCanvas(){null==this.debugOverlayCanvas&&(this.debugOverlayCanvas=document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new l(this.context,this.debugOverlayCanvas,this.context.gl.RGBA))}destroy(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()}}class Qi{constructor(t,e){this.points=t,this.planes=e}static fromInvProjectionMatrix(e,i,r){const n=Math.pow(2,r),a=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]].map((r=>{const a=1/(r=t.transformMat4([],r,e))[3]/i*n;return t.mul$1(r,r,[a,a,1/r[3],a])})),o=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map((e=>{const i=t.sub([],a[e[0]],a[e[1]]),r=t.sub([],a[e[2]],a[e[1]]),n=t.normalize([],t.cross([],i,r)),o=-t.dot(n,a[e[1]]);return n.concat(o)}));return new Qi(a,o)}}class tr{constructor(e,i){this.min=e,this.max=i,this.center=t.scale$1([],t.add([],this.min,this.max),.5)}quadrant(e){const i=[e%2==0,e<2],r=t.clone$2(this.min),n=t.clone$2(this.max);for(let t=0;t=0&&o++;if(0===o)return 0;o!==i.length&&(r=!1)}if(r)return 2;for(let t=0;t<3;t++){let i=Number.MAX_VALUE,r=-Number.MAX_VALUE;for(let n=0;nthis.max[t]-this.min[t])return 0}return 1}}class er{constructor(t=0,e=0,i=0,r=0){if(isNaN(t)||t<0||isNaN(e)||e<0||isNaN(i)||i<0||isNaN(r)||r<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=t,this.bottom=e,this.left=i,this.right=r}interpolate(e,i,r){return null!=i.top&&null!=e.top&&(this.top=t.number(e.top,i.top,r)),null!=i.bottom&&null!=e.bottom&&(this.bottom=t.number(e.bottom,i.bottom,r)),null!=i.left&&null!=e.left&&(this.left=t.number(e.left,i.left,r)),null!=i.right&&null!=e.right&&(this.right=t.number(e.right,i.right,r)),this}getCenter(e,i){const r=t.clamp((this.left+e-this.right)/2,0,e),n=t.clamp((this.top+i-this.bottom)/2,0,i);return new t.pointGeometry(r,n)}equals(t){return this.top===t.top&&this.bottom===t.bottom&&this.left===t.left&&this.right===t.right}clone(){return new er(this.top,this.bottom,this.left,this.right)}toJSON(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}}}class ir{constructor(e,i,r,n,a){this.tileSize=512,this.maxValidLatitude=85.051129,this.freezeElevation=!1,this._renderWorldCopies=void 0===a||!!a,this._minZoom=e||0,this._maxZoom=i||22,this._minPitch=null==r?0:r,this._maxPitch=null==n?60:n,this.setMaxBounds(),this.width=0,this.height=0,this._center=new t.LngLat(0,0),this._elevation=0,this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new er,this._posMatrixCache={},this._alignedPosMatrixCache={}}clone(){const t=new ir(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return t.tileSize=this.tileSize,t.latRange=this.latRange,t.width=this.width,t.height=this.height,t._center=this._center,t._elevation=this._elevation,t.zoom=this.zoom,t.angle=this.angle,t._fov=this._fov,t._pitch=this._pitch,t._unmodified=this._unmodified,t._edgeInsets=this._edgeInsets.clone(),t._calcMatrices(),t}get minZoom(){return this._minZoom}set minZoom(t){this._minZoom!==t&&(this._minZoom=t,this.zoom=Math.max(this.zoom,t))}get maxZoom(){return this._maxZoom}set maxZoom(t){this._maxZoom!==t&&(this._maxZoom=t,this.zoom=Math.min(this.zoom,t))}get minPitch(){return this._minPitch}set minPitch(t){this._minPitch!==t&&(this._minPitch=t,this.pitch=Math.max(this.pitch,t))}get maxPitch(){return this._maxPitch}set maxPitch(t){this._maxPitch!==t&&(this._maxPitch=t,this.pitch=Math.min(this.pitch,t))}get renderWorldCopies(){return this._renderWorldCopies}set renderWorldCopies(t){void 0===t?t=!0:null===t&&(t=!1),this._renderWorldCopies=t}get worldSize(){return this.tileSize*this.scale}get centerOffset(){return this.centerPoint._sub(this.size._div(2))}get size(){return new t.pointGeometry(this.width,this.height)}get bearing(){return-this.angle/Math.PI*180}set bearing(e){const i=-t.wrap(e,-180,180)*Math.PI/180;var r;this.angle!==i&&(this._unmodified=!1,this.angle=i,this._calcMatrices(),this.rotationMatrix=(r=new t.ARRAY_TYPE(4),t.ARRAY_TYPE!=Float32Array&&(r[1]=0,r[2]=0),r[0]=1,r[3]=1,r),function(t,e,i){var r=e[0],n=e[1],a=e[2],o=e[3],s=Math.sin(i),l=Math.cos(i);t[0]=r*l+a*s,t[1]=n*l+o*s,t[2]=r*-s+a*l,t[3]=n*-s+o*l}(this.rotationMatrix,this.rotationMatrix,this.angle))}get pitch(){return this._pitch/Math.PI*180}set pitch(e){const i=t.clamp(e,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==i&&(this._unmodified=!1,this._pitch=i,this._calcMatrices())}get fov(){return this._fov/Math.PI*180}set fov(t){t=Math.max(.01,Math.min(60,t)),this._fov!==t&&(this._unmodified=!1,this._fov=t/180*Math.PI,this._calcMatrices())}get zoom(){return this._zoom}set zoom(t){const e=Math.min(Math.max(t,this.minZoom),this.maxZoom);this._zoom!==e&&(this._unmodified=!1,this._zoom=e,this.scale=this.zoomScale(e),this.tileZoom=Math.floor(e),this.zoomFraction=e-this.tileZoom,this._constrain(),this._calcMatrices())}get center(){return this._center}set center(t){t.lat===this._center.lat&&t.lng===this._center.lng||(this._unmodified=!1,this._center=t,this._constrain(),this._calcMatrices())}get elevation(){return this._elevation}set elevation(t){t!==this._elevation&&(this._elevation=t,this._constrain(),this._calcMatrices())}get padding(){return this._edgeInsets.toJSON()}set padding(t){this._edgeInsets.equals(t)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,t,1),this._calcMatrices())}get centerPoint(){return this._edgeInsets.getCenter(this.width,this.height)}isPaddingEqual(t){return this._edgeInsets.equals(t)}interpolatePadding(t,e,i){this._unmodified=!1,this._edgeInsets.interpolate(t,e,i),this._constrain(),this._calcMatrices()}coveringZoomLevel(t){const e=(t.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/t.tileSize));return Math.max(0,e)}getVisibleUnwrappedCoordinates(e){const i=[new t.UnwrappedTileID(0,e)];if(this._renderWorldCopies){const r=this.pointCoordinate(new t.pointGeometry(0,0)),n=this.pointCoordinate(new t.pointGeometry(this.width,0)),a=this.pointCoordinate(new t.pointGeometry(this.width,this.height)),o=this.pointCoordinate(new t.pointGeometry(0,this.height)),s=Math.floor(Math.min(r.x,n.x,a.x,o.x)),l=Math.floor(Math.max(r.x,n.x,a.x,o.x)),c=1;for(let h=s-c;h<=l+c;h++)0!==h&&i.push(new t.UnwrappedTileID(h,e))}return i}coveringTiles(e){var i,r;let n=this.coveringZoomLevel(e);const a=n;if(void 0!==e.minzoom&&ne.maxzoom&&(n=e.maxzoom);const o=this.pointCoordinate(this.getCameraPoint()),s=t.MercatorCoordinate.fromLngLat(this.center),l=Math.pow(2,n),c=[l*o.x,l*o.y,0],h=[l*s.x,l*s.y,0],u=Qi.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,n);let p=e.minzoom||0;!e.terrain&&this.pitch<=60&&this._edgeInsets.top<.1&&(p=n);const d=e.terrain?2/Math.min(this.tileSize,e.tileSize)*this.tileSize:3,m=t=>({aabb:new tr([t*l,0,0],[(t+1)*l,l,0]),zoom:0,x:0,y:0,wrap:t,fullyVisible:!1}),f=[],g=[],_=n,y=e.reparseOverscaled?a:n;if(this._renderWorldCopies)for(let t=1;t<=3;t++)f.push(m(-t)),f.push(m(t));for(f.push(m(0));f.length>0;){const n=f.pop(),a=n.x,o=n.y;let s=n.fullyVisible;if(!s){const t=n.aabb.intersects(u);if(0===t)continue;s=2===t}const l=e.terrain?c:h,m=n.aabb.distanceX(l),x=n.aabb.distanceY(l),v=Math.max(Math.abs(m),Math.abs(x)),b=d+(1<<_-n.zoom)-2;if(n.zoom===_||v>b&&n.zoom>=p){const e=_-n.zoom,i=c[0]-.5-(a<>1),u=n.zoom+1;let p=n.aabb.quadrant(c);if(e.terrain){const a=new t.OverscaledTileID(u,n.wrap,u,l,h),o=e.terrain.getMinMaxElevation(a),s=null!==(i=o.minElevation)&&void 0!==i?i:this.elevation,c=null!==(r=o.maxElevation)&&void 0!==r?r:this.elevation;p=new tr([p.min[0],p.min[1],s],[p.max[0],p.max[1],c])}f.push({aabb:p,zoom:u,x:l,y:h,wrap:n.wrap,fullyVisible:s})}}return g.sort(((t,e)=>t.distanceSq-e.distanceSq)).map((t=>t.tileID))}resize(t,e){this.width=t,this.height=e,this.pixelsToGLUnits=[2/t,-2/e],this._constrain(),this._calcMatrices()}get unmodified(){return this._unmodified}zoomScale(t){return Math.pow(2,t)}scaleZoom(t){return Math.log(t)/Math.LN2}project(e){const i=t.clamp(e.lat,-this.maxValidLatitude,this.maxValidLatitude);return new t.pointGeometry(t.mercatorXfromLng(e.lng)*this.worldSize,t.mercatorYfromLat(i)*this.worldSize)}unproject(e){return new t.MercatorCoordinate(e.x/this.worldSize,e.y/this.worldSize).toLngLat()}get point(){return this.project(this.center)}updateElevation(t){this.freezeElevation||(this.elevation=t?this.getElevation(this._center,t):0)}getElevation(e,i){const r=t.MercatorCoordinate.fromLngLat(e),n=(1<o&&(n=o-e)}if(this.lngRange){const e=(s+l)/2,i=t.wrap(u.x,e-this.worldSize/2,e+this.worldSize/2),n=c.x/2;i-nl&&(r=l-n)}void 0===r&&void 0===n||(this.center=this.unproject(new t.pointGeometry(void 0!==r?r:u.x,void 0!==n?n:u.y)).wrap()),this._unmodified=h,this._constraining=!1}_calcMatrices(){if(!this.height)return;const e=this.centerOffset,i=this.point.x,r=this.point.y;this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height,this._pixelPerMeter=t.mercatorZfromAltitude(1,this.center.lat)*this.worldSize;let n=t.identity(new Float64Array(16));t.scale(n,n,[this.width/2,-this.height/2,1]),t.translate(n,n,[1,-1,0]),this.labelPlaneMatrix=n,n=t.identity(new Float64Array(16)),t.scale(n,n,[1,-1,1]),t.translate(n,n,[-1,-1,0]),t.scale(n,n,[2/this.width,2/this.height,1]),this.glCoordMatrix=n,this.cameraToSeaLevelDistance=this.cameraToCenterDistance+this._elevation*this._pixelPerMeter/Math.cos(this._pitch);const a=Math.PI/2+this._pitch,o=this._fov*(.5+e.y/this.height),s=Math.sin(o)*this.cameraToSeaLevelDistance/Math.sin(t.clamp(Math.PI-a-o,.01,Math.PI-.01)),l=this.getHorizon(),c=2*Math.atan(l/this.cameraToCenterDistance)*(.5+e.y/(2*l)),h=Math.sin(c)*this.cameraToSeaLevelDistance/Math.sin(t.clamp(Math.PI-a-c,.01,Math.PI-.01)),u=Math.cos(Math.PI/2-this._pitch)*s+this.cameraToSeaLevelDistance,p=Math.cos(Math.PI/2-this._pitch)*h+this.cameraToSeaLevelDistance,d=1.01*Math.min(u,p),m=this.height/50;n=new Float64Array(16),t.perspective(n,this._fov,this.width/this.height,m,d),n[8]=2*-e.x/this.width,n[9]=2*e.y/this.height,t.scale(n,n,[1,-1,1]),t.translate(n,n,[0,0,-this.cameraToCenterDistance]),t.rotateX(n,n,this._pitch),t.rotateZ(n,n,this.angle),t.translate(n,n,[-i,-r,0]),this.mercatorMatrix=t.scale([],n,[this.worldSize,this.worldSize,this.worldSize]),t.scale(n,n,[1,1,this._pixelPerMeter]),this.pixelMatrix=t.multiply(new Float64Array(16),this.labelPlaneMatrix,n),t.translate(n,n,[0,0,-this.elevation]),this.projMatrix=n,this.invProjMatrix=t.invert([],n),this.pixelMatrix3D=t.multiply(new Float64Array(16),this.labelPlaneMatrix,n);const f=this.width%2/2,g=this.height%2/2,_=Math.cos(this.angle),y=Math.sin(this.angle),x=i-Math.round(i)+_*f+y*g,v=r-Math.round(r)+_*g+y*f,b=new Float64Array(n);if(t.translate(b,b,[x>.5?x-1:x,v>.5?v-1:v,0]),this.alignedProjMatrix=b,n=t.invert(new Float64Array(16),this.pixelMatrix),!n)throw new Error("failed to invert matrix");this.pixelMatrixInverse=n,this._posMatrixCache={},this._alignedPosMatrixCache={}}maxPitchScaleFactor(){if(!this.pixelMatrixInverse)return 1;const e=this.pointCoordinate(new t.pointGeometry(0,0)),i=[e.x*this.worldSize,e.y*this.worldSize,0,1];return t.transformMat4(i,i,this.pixelMatrix)[3]/this.cameraToCenterDistance}getCameraPoint(){const e=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new t.pointGeometry(0,e))}getCameraQueryGeometry(e){const i=this.getCameraPoint();if(1===e.length)return[e[0],i];{let r=i.x,n=i.y,a=i.x,o=i.y;for(const t of e)r=Math.min(r,t.x),n=Math.min(n,t.y),a=Math.max(a,t.x),o=Math.max(o,t.y);return[new t.pointGeometry(r,n),new t.pointGeometry(a,n),new t.pointGeometry(a,o),new t.pointGeometry(r,o),new t.pointGeometry(r,n)]}}}class rr{constructor(e){this._hashName=e&&encodeURIComponent(e),t.bindAll(["_getCurrentHash","_onHashChange","_updateHash"],this),this._updateHash=function(t,e){let i=!1,r=null;const n=()=>{r=null,i&&(t(),r=setTimeout(n,300),i=!1)};return()=>(i=!0,r||n(),r)}(this._updateHashUnthrottled.bind(this))}addTo(t){return this._map=t,addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this}remove(){return removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),delete this._map,this}getHashString(t){const e=this._map.getCenter(),i=Math.round(100*this._map.getZoom())/100,r=Math.ceil((i*Math.LN2+Math.log(512/360/.5))/Math.LN10),n=Math.pow(10,r),a=Math.round(e.lng*n)/n,o=Math.round(e.lat*n)/n,s=this._map.getBearing(),l=this._map.getPitch();let c="";if(c+=t?`/${a}/${o}/${i}`:`${i}/${o}/${a}`,(s||l)&&(c+="/"+Math.round(10*s)/10),l&&(c+=`/${Math.round(l)}`),this._hashName){const t=this._hashName;let e=!1;const i=window.location.hash.slice(1).split("&").map((i=>{const r=i.split("=")[0];return r===t?(e=!0,`${r}=${c}`):i})).filter((t=>t));return e||i.push(`${t}=${c}`),`#${i.join("&")}`}return`#${c}`}_getCurrentHash(){const t=window.location.hash.replace("#","");if(this._hashName){let e;return t.split("&").map((t=>t.split("="))).forEach((t=>{t[0]===this._hashName&&(e=t)})),(e&&e[1]||"").split("/")}return t.split("/")}_onHashChange(){const t=this._getCurrentHash();if(t.length>=3&&!t.some((t=>isNaN(t)))){const e=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(t[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+t[2],+t[1]],zoom:+t[0],bearing:e,pitch:+(t[4]||0)}),!0}return!1}_updateHashUnthrottled(){const t=window.location.href.replace(/(#.+)?$/,this.getHashString());try{window.history.replaceState(window.history.state,null,t)}catch(t){}}}const nr={linearity:.3,easing:t.bezier(0,0,.3,1)},ar=t.extend({deceleration:2500,maxSpeed:1400},nr),or=t.extend({deceleration:20,maxSpeed:1400},nr),sr=t.extend({deceleration:1e3,maxSpeed:360},nr),lr=t.extend({deceleration:1e3,maxSpeed:90},nr);class cr{constructor(t){this._map=t,this.clear()}clear(){this._inertiaBuffer=[]}record(e){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:t.exported.now(),settings:e})}_drainInertiaBuffer(){const e=this._inertiaBuffer,i=t.exported.now();for(;e.length>0&&i-e[0].time>160;)e.shift()}_onMoveEnd(e){if(this._drainInertiaBuffer(),this._inertiaBuffer.length<2)return;const i={zoom:0,bearing:0,pitch:0,pan:new t.pointGeometry(0,0),pinchAround:void 0,around:void 0};for(const{settings:t}of this._inertiaBuffer)i.zoom+=t.zoomDelta||0,i.bearing+=t.bearingDelta||0,i.pitch+=t.pitchDelta||0,t.panDelta&&i.pan._add(t.panDelta),t.around&&(i.around=t.around),t.pinchAround&&(i.pinchAround=t.pinchAround);const r=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,n={};if(i.pan.mag()){const a=ur(i.pan.mag(),r,t.extend({},ar,e||{}));n.offset=i.pan.mult(a.amount/i.pan.mag()),n.center=this._map.transform.center,hr(n,a)}if(i.zoom){const t=ur(i.zoom,r,or);n.zoom=this._map.transform.zoom+t.amount,hr(n,t)}if(i.bearing){const e=ur(i.bearing,r,sr);n.bearing=this._map.transform.bearing+t.clamp(e.amount,-179,179),hr(n,e)}if(i.pitch){const t=ur(i.pitch,r,lr);n.pitch=this._map.transform.pitch+t.amount,hr(n,t)}if(n.zoom||n.bearing){const t=void 0===i.pinchAround?i.around:i.pinchAround;n.around=t?this._map.unproject(t):this._map.getCenter()}return this.clear(),t.extend(n,{noMoveStart:!0})}}function hr(t,e){(!t.duration||t.durationi.unproject(t))),l=o.reduce(((t,e,i,r)=>t.add(e.div(r.length))),new t.pointGeometry(0,0));super(e,{points:o,point:l,lngLats:s,lngLat:i.unproject(l),originalEvent:r}),this._defaultPrevented=!1}preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}}class mr extends t.Event{constructor(t,e,i){super(t,{originalEvent:i}),this._defaultPrevented=!1}preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}}class fr{constructor(t,e){this._map=t,this._clickTolerance=e.clickTolerance}reset(){delete this._mousedownPos}wheel(t){return this._firePreventable(new mr(t.type,this._map,t))}mousedown(t,e){return this._mousedownPos=e,this._firePreventable(new pr(t.type,this._map,t))}mouseup(t){this._map.fire(new pr(t.type,this._map,t))}click(t,e){this._mousedownPos&&this._mousedownPos.dist(e)>=this._clickTolerance||this._map.fire(new pr(t.type,this._map,t))}dblclick(t){return this._firePreventable(new pr(t.type,this._map,t))}mouseover(t){this._map.fire(new pr(t.type,this._map,t))}mouseout(t){this._map.fire(new pr(t.type,this._map,t))}touchstart(t){return this._firePreventable(new dr(t.type,this._map,t))}touchmove(t){this._map.fire(new dr(t.type,this._map,t))}touchend(t){this._map.fire(new dr(t.type,this._map,t))}touchcancel(t){this._map.fire(new dr(t.type,this._map,t))}_firePreventable(t){if(this._map.fire(t),t.defaultPrevented)return{}}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class gr{constructor(t){this._map=t}reset(){this._delayContextMenu=!1,this._ignoreContextMenu=!0,delete this._contextMenuEvent}mousemove(t){this._map.fire(new pr(t.type,this._map,t))}mousedown(){this._delayContextMenu=!0,this._ignoreContextMenu=!1}mouseup(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new pr("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)}contextmenu(t){this._delayContextMenu?this._contextMenuEvent=t:this._ignoreContextMenu||this._map.fire(new pr(t.type,this._map,t)),this._map.listens("contextmenu")&&t.preventDefault()}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class _r{constructor(t,e){this._map=t,this._el=t.getCanvasContainer(),this._container=t.getContainer(),this._clickTolerance=e.clickTolerance||1}isEnabled(){return!!this._enabled}isActive(){return!!this._active}enable(){this.isEnabled()||(this._enabled=!0)}disable(){this.isEnabled()&&(this._enabled=!1)}mousedown(t,e){this.isEnabled()&&t.shiftKey&&0===t.button&&(a.disableDrag(),this._startPos=this._lastPos=e,this._active=!0)}mousemoveWindow(t,e){if(!this._active)return;const i=e;if(this._lastPos.equals(i)||!this._box&&i.dist(this._startPos)t.fitScreenCoordinates(r,n,this._map.getBearing(),{linear:!0})};this._fireEvent("boxzoomcancel",e)}keydown(t){this._active&&27===t.keyCode&&(this.reset(),this._fireEvent("boxzoomcancel",t))}reset(){this._active=!1,this._container.classList.remove("maplibregl-crosshair","mapboxgl-crosshair"),this._box&&(a.remove(this._box),this._box=null),a.enableDrag(),delete this._startPos,delete this._lastPos}_fireEvent(e,i){return this._map.fire(new t.Event(e,{originalEvent:i}))}}function yr(t,e){if(t.length!==e.length)throw new Error(`The number of touches and points are not equal - touches ${t.length}, points ${e.length}`);const i={};for(let r=0;rthis.numTouches)&&(this.aborted=!0),this.aborted||(void 0===this.startTime&&(this.startTime=e.timeStamp),r.length===this.numTouches&&(this.centroid=function(e){const i=new t.pointGeometry(0,0);for(const t of e)i._add(t);return i.div(e.length)}(i),this.touches=yr(r,i)))}touchmove(t,e,i){if(this.aborted||!this.centroid)return;const r=yr(i,e);for(const n in this.touches){const t=this.touches[n],e=r[n];(!e||e.dist(t)>30)&&(this.aborted=!0)}}touchend(t,e,i){if((!this.centroid||t.timeStamp-this.startTime>500)&&(this.aborted=!0),0===i.length){const t=!this.aborted&&this.centroid;if(this.reset(),t)return t}}}class vr{constructor(t){this.singleTap=new xr(t),this.numTaps=t.numTaps,this.reset()}reset(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()}touchstart(t,e,i){this.singleTap.touchstart(t,e,i)}touchmove(t,e,i){this.singleTap.touchmove(t,e,i)}touchend(t,e,i){const r=this.singleTap.touchend(t,e,i);if(r){const e=t.timeStamp-this.lastTime<500,i=!this.lastTap||this.lastTap.dist(r)<30;if(e&&i||this.reset(),this.count++,this.lastTime=t.timeStamp,this.lastTap=r,this.count===this.numTaps)return this.reset(),r}}}class br{constructor(){this._zoomIn=new vr({numTouches:1,numTaps:2}),this._zoomOut=new vr({numTouches:2,numTaps:1}),this.reset()}reset(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()}touchstart(t,e,i){this._zoomIn.touchstart(t,e,i),this._zoomOut.touchstart(t,e,i)}touchmove(t,e,i){this._zoomIn.touchmove(t,e,i),this._zoomOut.touchmove(t,e,i)}touchend(t,e,i){const r=this._zoomIn.touchend(t,e,i),n=this._zoomOut.touchend(t,e,i);return r?(this._active=!0,t.preventDefault(),setTimeout((()=>this.reset()),0),{cameraAnimation:e=>e.easeTo({duration:300,zoom:e.getZoom()+1,around:e.unproject(r)},{originalEvent:t})}):n?(this._active=!0,t.preventDefault(),setTimeout((()=>this.reset()),0),{cameraAnimation:e=>e.easeTo({duration:300,zoom:e.getZoom()-1,around:e.unproject(n)},{originalEvent:t})}):void 0}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}const wr={0:1,2:2};class Tr{constructor(t){this.reset(),this._clickTolerance=t.clickTolerance||1}reset(){this._active=!1,this._moved=!1,delete this._lastPoint,delete this._eventButton}_correctButton(t,e){return!1}_move(t,e){return{}}mousedown(t,e){if(this._lastPoint)return;const i=a.mouseButton(t);this._correctButton(t,i)&&(this._lastPoint=e,this._eventButton=i)}mousemoveWindow(t,e){const i=this._lastPoint;if(i)if(t.preventDefault(),function(t,e){const i=wr[e];return void 0===t.buttons||(t.buttons&i)!==i}(t,this._eventButton))this.reset();else if(this._moved||!(e.dist(i){this._cancelCooperativeMessage=!1}),200)}touchstart(t,e,i){return this._calculateTransform(t,e,i)}touchmove(t,e,i){if(this._map._cooperativeGestures&&(2===this._minTouches&&i.length<2&&!this._cancelCooperativeMessage?this._map._onCooperativeGesture(t,!1,i.length):this._cancelCooperativeMessage||(this._cancelCooperativeMessage=!0)),this._active&&!(i.length0&&(this._active=!0);const n=yr(r,i),a=new t.pointGeometry(0,0),o=new t.pointGeometry(0,0);let s=0;for(const t in n){const e=n[t],i=this._touches[t];i&&(a._add(e),o._add(e.sub(i)),s++,n[t]=e)}if(this._touches=n,sMath.abs(t.x)}class Br extends Cr{constructor(t){super(),this._map=t}reset(){super.reset(),this._valid=void 0,delete this._firstMove,delete this._lastPoints}touchstart(t,e,i){super.touchstart(t,e,i),this._currentTouchCount=i.length}_start(t){this._lastPoints=t,Lr(t[0].sub(t[1]))&&(this._valid=!1)}_move(t,e,i){if(this._map._cooperativeGestures&&this._currentTouchCount<3)return;const r=t[0].sub(this._lastPoints[0]),n=t[1].sub(this._lastPoints[1]);return this._valid=this.gestureBeginsVertically(r,n,i.timeStamp),this._valid?(this._lastPoints=t,this._active=!0,{pitchDelta:(r.y+n.y)/2*-.5}):void 0}gestureBeginsVertically(t,e,i){if(void 0!==this._valid)return this._valid;const r=t.mag()>=2,n=e.mag()>=2;if(!r&&!n)return;if(!r||!n)return void 0===this._firstMove&&(this._firstMove=i),i-this._firstMove<100&&void 0;const a=t.y>0==e.y>0;return Lr(t)&&Lr(e)&&a}}const Rr={panStep:100,bearingStep:15,pitchStep:10};class Fr{constructor(){const t=Rr;this._panStep=t.panStep,this._bearingStep=t.bearingStep,this._pitchStep=t.pitchStep,this._rotationDisabled=!1}reset(){this._active=!1}keydown(t){if(t.altKey||t.ctrlKey||t.metaKey)return;let e=0,i=0,r=0,n=0,a=0;switch(t.keyCode){case 61:case 107:case 171:case 187:e=1;break;case 189:case 109:case 173:e=-1;break;case 37:t.shiftKey?i=-1:(t.preventDefault(),n=-1);break;case 39:t.shiftKey?i=1:(t.preventDefault(),n=1);break;case 38:t.shiftKey?r=1:(t.preventDefault(),a=-1);break;case 40:t.shiftKey?r=-1:(t.preventDefault(),a=1);break;default:return}return this._rotationDisabled&&(i=0,r=0),{cameraAnimation:o=>{const s=o.getZoom();o.easeTo({duration:300,easeId:"keyboardHandler",easing:Or,zoom:e?Math.round(s)+e*(t.shiftKey?2:1):s,bearing:o.getBearing()+i*this._bearingStep,pitch:o.getPitch()+r*this._pitchStep,offset:[-n*this._panStep,-a*this._panStep],center:o.getCenter()},{originalEvent:t})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}disableRotation(){this._rotationDisabled=!0}enableRotation(){this._rotationDisabled=!1}}function Or(t){return t*(2-t)}const Vr=4.000244140625;class Ur{constructor(e,i){this._map=e,this._el=e.getCanvasContainer(),this._handler=i,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222,t.bindAll(["_onTimeout"],this)}setZoomRate(t){this._defaultZoomRate=t}setWheelZoomRate(t){this._wheelZoomRate=t}isEnabled(){return!!this._enabled}isActive(){return!!this._active||void 0!==this._finishTimeout}isZooming(){return!!this._zooming}enable(t){this.isEnabled()||(this._enabled=!0,this._aroundCenter=t&&"center"===t.around)}disable(){this.isEnabled()&&(this._enabled=!1)}wheel(e){if(!this.isEnabled())return;if(this._map._cooperativeGestures){if(!this._map._metaPress)return;e.preventDefault()}let i=e.deltaMode===WheelEvent.DOM_DELTA_LINE?40*e.deltaY:e.deltaY;const r=t.exported.now(),n=r-(this._lastWheelEventTime||0);this._lastWheelEventTime=r,0!==i&&i%Vr==0?this._type="wheel":0!==i&&Math.abs(i)<4?this._type="trackpad":n>400?(this._type=null,this._lastValue=i,this._timeout=setTimeout(this._onTimeout,40,e)):this._type||(this._type=Math.abs(n*i)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,i+=this._lastValue)),e.shiftKey&&i&&(i/=4),this._type&&(this._lastWheelEvent=e,this._delta-=i,this._active||this._start(e)),e.preventDefault()}_onTimeout(t){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(t)}_start(e){if(!this._delta)return;this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);const i=a.mousePos(this._el,e);this._around=t.LngLat.convert(this._aroundCenter?this._map.getCenter():this._map.unproject(i)),this._aroundPoint=this._map.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}renderFrame(){if(!this._frameId)return;if(this._frameId=null,!this.isActive())return;const e=this._map.transform;if(0!==this._delta){const t="wheel"===this._type&&Math.abs(this._delta)>Vr?this._wheelZoomRate:this._defaultZoomRate;let i=2/(1+Math.exp(-Math.abs(this._delta*t)));this._delta<0&&0!==i&&(i=1/i);const r="number"==typeof this._targetZoom?e.zoomScale(this._targetZoom):e.scale;this._targetZoom=Math.min(e.maxZoom,Math.max(e.minZoom,e.scaleZoom(r*i))),"wheel"===this._type&&(this._startZoom=e.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}const i="number"==typeof this._targetZoom?this._targetZoom:e.zoom,r=this._startZoom,n=this._easing;let a,o=!1;if("wheel"===this._type&&r&&n){const e=Math.min((t.exported.now()-this._lastWheelEventTime)/200,1),s=n(e);a=t.number(r,i,s),e<1?this._frameId||(this._frameId=!0):o=!0}else a=i,o=!0;return this._active=!0,o&&(this._active=!1,this._finishTimeout=setTimeout((()=>{this._zooming=!1,this._handler._triggerRenderFrame(),delete this._targetZoom,delete this._finishTimeout}),200)),{noInertia:!0,needsRenderFrame:!o,zoomDelta:a-e.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}_smoothOutEasing(e){let i=t.ease;if(this._prevEase){const e=this._prevEase,r=(t.exported.now()-e.start)/e.duration,n=e.easing(r+.01)-e.easing(r),a=.27/Math.sqrt(n*n+1e-4)*.01,o=Math.sqrt(.0729-a*a);i=t.bezier(a,o,.25,1)}return this._prevEase={start:t.exported.now(),duration:e,easing:i},i}reset(){this._active=!1}}class Nr{constructor(t,e){this._clickZoom=t,this._tapZoom=e}enable(){this._clickZoom.enable(),this._tapZoom.enable()}disable(){this._clickZoom.disable(),this._tapZoom.disable()}isEnabled(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()}isActive(){return this._clickZoom.isActive()||this._tapZoom.isActive()}}class $r{constructor(){this.reset()}reset(){this._active=!1}dblclick(t,e){return t.preventDefault(),{cameraAnimation:i=>{i.easeTo({duration:300,zoom:i.getZoom()+(t.shiftKey?-1:1),around:i.unproject(e)},{originalEvent:t})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Gr{constructor(){this._tap=new vr({numTouches:1,numTaps:1}),this.reset()}reset(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,this._tap.reset()}touchstart(t,e,i){this._swipePoint||(this._tapTime&&t.timeStamp-this._tapTime>500&&this.reset(),this._tapTime?i.length>0&&(this._swipePoint=e[0],this._swipeTouch=i[0].identifier):this._tap.touchstart(t,e,i))}touchmove(t,e,i){if(this._tapTime){if(this._swipePoint){if(i[0].identifier!==this._swipeTouch)return;const r=e[0],n=r.y-this._swipePoint.y;return this._swipePoint=r,t.preventDefault(),this._active=!0,{zoomDelta:n/128}}}else this._tap.touchmove(t,e,i)}touchend(t,e,i){this._tapTime?this._swipePoint&&0===i.length&&this.reset():this._tap.touchend(t,e,i)&&(this._tapTime=t.timeStamp)}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class qr{constructor(t,e,i){this._el=t,this._mousePan=e,this._touchPan=i}enable(t){this._inertiaOptions=t||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("maplibregl-touch-drag-pan","mapboxgl-touch-drag-pan")}disable(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("maplibregl-touch-drag-pan","mapboxgl-touch-drag-pan")}isEnabled(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()}isActive(){return this._mousePan.isActive()||this._touchPan.isActive()}}class Zr{constructor(t,e,i){this._pitchWithRotate=t.pitchWithRotate,this._mouseRotate=e,this._mousePitch=i}enable(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()}disable(){this._mouseRotate.disable(),this._mousePitch.disable()}isEnabled(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())}isActive(){return this._mouseRotate.isActive()||this._mousePitch.isActive()}}class jr{constructor(t,e,i,r){this._el=t,this._touchZoom=e,this._touchRotate=i,this._tapDragZoom=r,this._rotationDisabled=!1,this._enabled=!0}enable(t){this._touchZoom.enable(t),this._rotationDisabled||this._touchRotate.enable(t),this._tapDragZoom.enable(),this._el.classList.add("maplibregl-touch-zoom-rotate","mapboxgl-touch-zoom-rotate")}disable(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("maplibregl-touch-zoom-rotate","mapboxgl-touch-zoom-rotate")}isEnabled(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()}isActive(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()}disableRotation(){this._rotationDisabled=!0,this._touchRotate.disable()}enableRotation(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()}}const Xr=t=>t.zoom||t.drag||t.pitch||t.rotate;class Hr extends t.Event{}function Wr(t){return t.panDelta&&t.panDelta.mag()||t.zoomDelta||t.bearingDelta||t.pitchDelta}class Kr{constructor(e,i){this._map=e,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new cr(e),this._bearingSnap=i.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(i),t.bindAll(["handleEvent","handleWindowEvent"],this);const r=this._el;this._listeners=[[r,"touchstart",{passive:!0}],[r,"touchmove",{passive:!1}],[r,"touchend",void 0],[r,"touchcancel",void 0],[r,"mousedown",void 0],[r,"mousemove",void 0],[r,"mouseup",void 0],[document,"mousemove",{capture:!0}],[document,"mouseup",void 0],[r,"mouseover",void 0],[r,"mouseout",void 0],[r,"dblclick",void 0],[r,"click",void 0],[r,"keydown",{capture:!1}],[r,"keyup",void 0],[r,"wheel",{passive:!1}],[r,"contextmenu",void 0],[window,"blur",void 0]];for(const[t,n,o]of this._listeners)a.addEventListener(t,n,t===document?this.handleWindowEvent:this.handleEvent,o)}destroy(){for(const[t,e,i]of this._listeners)a.removeEventListener(t,e,t===document?this.handleWindowEvent:this.handleEvent,i)}_addDefaultHandlers(t){const e=this._map,i=e.getCanvasContainer();this._add("mapEvent",new fr(e,t));const r=e.boxZoom=new _r(e,t);this._add("boxZoom",r);const n=new br,a=new $r;e.doubleClickZoom=new Nr(a,n),this._add("tapZoom",n),this._add("clickZoom",a);const o=new Gr;this._add("tapDragZoom",o);const s=e.touchPitch=new Br(e);this._add("touchPitch",s);const l=new Sr(t),c=new Ir(t);e.dragRotate=new Zr(t,l,c),this._add("mouseRotate",l,["mousePitch"]),this._add("mousePitch",c,["mouseRotate"]);const h=new Er(t),u=new zr(t,e);e.dragPan=new qr(i,h,u),this._add("mousePan",h),this._add("touchPan",u,["touchZoom","touchRotate"]);const p=new Dr,d=new Mr;e.touchZoomRotate=new jr(i,d,p,o),this._add("touchRotate",p,["touchPan","touchZoom"]),this._add("touchZoom",d,["touchPan","touchRotate"]);const m=e.scrollZoom=new Ur(e,this);this._add("scrollZoom",m,["mousePan"]);const f=e.keyboard=new Fr;this._add("keyboard",f),this._add("blockableMapEvent",new gr(e));for(const g of["boxZoom","doubleClickZoom","tapDragZoom","touchPitch","dragRotate","dragPan","touchZoomRotate","scrollZoom","keyboard"])t.interactive&&t[g]&&e[g].enable(t[g])}_add(t,e,i){this._handlers.push({handlerName:t,handler:e,allowed:i}),this._handlersById[t]=e}stop(t){if(!this._updatingCamera){for(const{handler:t}of this._handlers)t.reset();this._inertia.clear(),this._fireEvents({},{},t),this._changes=[]}}isActive(){for(const{handler:t}of this._handlers)if(t.isActive())return!0;return!1}isZooming(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()}isRotating(){return!!this._eventsInProgress.rotate}isMoving(){return Boolean(Xr(this._eventsInProgress))||this.isZooming()}_blockedByActive(t,e,i){for(const r in t)if(r!==i&&(!e||e.indexOf(r)<0))return!0;return!1}handleWindowEvent(t){this.handleEvent(t,`${t.type}Window`)}_getMapTouches(t){const e=[];for(const i of t)this._el.contains(i.target)&&e.push(i);return e}handleEvent(t,e){if("blur"===t.type)return void this.stop(!0);this._updatingCamera=!0;const i="renderFrame"===t.type?void 0:t,r={needsRenderFrame:!1},n={},o={},s=t.touches,l=s?this._getMapTouches(s):void 0,c=l?a.touchPos(this._el,l):a.mousePos(this._el,t);for(const{handlerName:a,handler:p,allowed:d}of this._handlers){if(!p.isEnabled())continue;let s;this._blockedByActive(o,d,a)?p.reset():p[e||t.type]&&(s=p[e||t.type](t,c,l),this.mergeHandlerResult(r,n,s,a,i),s&&s.needsRenderFrame&&this._triggerRenderFrame()),(s||p.isActive())&&(o[a]=p)}const h={};for(const a in this._previousActiveHandlers)o[a]||(h[a]=i);this._previousActiveHandlers=o,(Object.keys(h).length||Wr(r))&&(this._changes.push([r,n,h]),this._triggerRenderFrame()),(Object.keys(o).length||Wr(r))&&this._map._stop(!0),this._updatingCamera=!1;const{cameraAnimation:u}=r;u&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],u(this._map))}mergeHandlerResult(e,i,r,n,a){if(!r)return;t.extend(e,r);const o={handlerName:n,originalEvent:r.originalEvent||a};void 0!==r.zoomDelta&&(i.zoom=o),void 0!==r.panDelta&&(i.drag=o),void 0!==r.pitchDelta&&(i.pitch=o),void 0!==r.bearingDelta&&(i.rotate=o)}_applyChanges(){const e={},i={},r={};for(const[n,a,o]of this._changes)n.panDelta&&(e.panDelta=(e.panDelta||new t.pointGeometry(0,0))._add(n.panDelta)),n.zoomDelta&&(e.zoomDelta=(e.zoomDelta||0)+n.zoomDelta),n.bearingDelta&&(e.bearingDelta=(e.bearingDelta||0)+n.bearingDelta),n.pitchDelta&&(e.pitchDelta=(e.pitchDelta||0)+n.pitchDelta),void 0!==n.around&&(e.around=n.around),void 0!==n.pinchAround&&(e.pinchAround=n.pinchAround),n.noInertia&&(e.noInertia=n.noInertia),t.extend(i,a),t.extend(r,o);this._updateMapTransform(e,i,r),this._changes=[]}_updateMapTransform(e,i,r){const n=this._map,a=n.transform,o=n.style&&n.style.terrain;if(!(Wr(e)||o&&this._drag))return this._fireEvents(i,r,!0);let{panDelta:s,zoomDelta:l,bearingDelta:c,pitchDelta:h,around:u,pinchAround:p}=e;void 0!==p&&(u=p),n._stop(!0),u=u||n.transform.centerPoint;const d=a.pointLocation(s?u.sub(s):u);c&&(a.bearing+=c),h&&(a.pitch+=h),l&&(a.zoom+=l),o?i.drag&&!this._drag?(this._drag={center:a.centerPoint,lngLat:a.pointLocation(u),point:u,handlerName:i.drag.handlerName},n.fire(new t.Event("freezeElevation",{freeze:!0}))):this._drag&&r[this._drag.handlerName]?(n.fire(new t.Event("freezeElevation",{freeze:!1})),this._drag=null):i.drag&&this._drag&&(a.center=a.pointLocation(a.centerPoint.sub(s))):a.setLocationAtPoint(d,u),this._map._update(),e.noInertia||this._inertia.record(e),this._fireEvents(i,r,!0)}_fireEvents(e,i,r){const n=Xr(this._eventsInProgress),a=Xr(e),o={};for(const t in e){const{originalEvent:i}=e[t];this._eventsInProgress[t]||(o[`${t}start`]=i),this._eventsInProgress[t]=e[t]}!n&&a&&this._fireEvent("movestart",a.originalEvent);for(const t in o)this._fireEvent(t,o[t]);a&&this._fireEvent("move",a.originalEvent);for(const t in e){const{originalEvent:i}=e[t];this._fireEvent(t,i)}const s={};let l;for(const t in this._eventsInProgress){const{handlerName:e,originalEvent:r}=this._eventsInProgress[t];this._handlersById[e].isActive()||(delete this._eventsInProgress[t],l=i[e]||r,s[`${t}end`]=l)}for(const t in s)this._fireEvent(t,s[t]);const c=Xr(this._eventsInProgress);if(r&&(n||a)&&!c){this._updatingCamera=!0;const e=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),i=t=>0!==t&&-this._bearingSnap{delete this._frameId,this.handleEvent(new Hr("renderFrame",{timeStamp:t})),this._applyChanges()}))}_triggerRenderFrame(){void 0===this._frameId&&(this._frameId=this._requestFrame())}}const Jr={extend:(e,...i)=>t.extend(e,...i),run(t){t()},logToElement(t,e=!1,i="log"){const r=window.document.getElementById(i);r&&(e&&(r.innerHTML=""),r.innerHTML+=`
${t}`)}};class Yr extends t.Evented{constructor(e,i){super(),this._moving=!1,this._zooming=!1,this.transform=e,this._bearingSnap=i.bearingSnap,t.bindAll(["_renderFrameCallback"],this)}getCenter(){return new t.LngLat(this.transform.center.lng,this.transform.center.lat)}setCenter(t,e){return this.jumpTo({center:t},e)}panBy(e,i,r){return e=t.pointGeometry.convert(e).mult(-1),this.panTo(this.transform.center,t.extend({offset:e},i),r)}panTo(e,i,r){return this.easeTo(t.extend({center:e},i),r)}getZoom(){return this.transform.zoom}setZoom(t,e){return this.jumpTo({zoom:t},e),this}zoomTo(e,i,r){return this.easeTo(t.extend({zoom:e},i),r)}zoomIn(t,e){return this.zoomTo(this.getZoom()+1,t,e),this}zoomOut(t,e){return this.zoomTo(this.getZoom()-1,t,e),this}getBearing(){return this.transform.bearing}setBearing(t,e){return this.jumpTo({bearing:t},e),this}getPadding(){return this.transform.padding}setPadding(t,e){return this.jumpTo({padding:t},e),this}rotateTo(e,i,r){return this.easeTo(t.extend({bearing:e},i),r)}resetNorth(e,i){return this.rotateTo(0,t.extend({duration:1e3},e),i),this}resetNorthPitch(e,i){return this.easeTo(t.extend({bearing:0,pitch:0,duration:1e3},e),i),this}snapToNorth(t,e){return Math.abs(this.getBearing()){if(this._zooming&&(r.zoom=t.number(n,l,e)),this._rotating&&(r.bearing=t.number(a,c,e)),this._pitching&&(r.pitch=t.number(o,h,e)),this._padding&&(r.interpolatePadding(s,u,e),d=r.centerPoint.add(p)),x)r.setLocationAtPoint(x,v);else{const t=r.zoomScale(r.zoom-n),i=l>n?Math.min(2,y):Math.max(.5,y),a=Math.pow(i,1-e),o=r.unproject(g.add(_.mult(e*a)).mult(t));r.setLocationAtPoint(r.renderWorldCopies?o.wrap():o,d)}this._fireMoveEvents(i)}),(t=>{this._afterEase(i,t)}),e),this}_prepareEase(e,i,r={}){this._moving=!0,this.fire(new t.Event("freezeElevation",{freeze:!0})),i||r.moving||this.fire(new t.Event("movestart",e)),this._zooming&&!r.zooming&&this.fire(new t.Event("zoomstart",e)),this._rotating&&!r.rotating&&this.fire(new t.Event("rotatestart",e)),this._pitching&&!r.pitching&&this.fire(new t.Event("pitchstart",e))}_fireMoveEvents(e){this.fire(new t.Event("move",e)),this._zooming&&this.fire(new t.Event("zoom",e)),this._rotating&&this.fire(new t.Event("rotate",e)),this._pitching&&this.fire(new t.Event("pitch",e))}_afterEase(e,i){if(this._easeId&&i&&this._easeId===i)return;delete this._easeId,this.fire(new t.Event("freezeElevation",{freeze:!1}));const r=this._zooming,n=this._rotating,a=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,r&&this.fire(new t.Event("zoomend",e)),n&&this.fire(new t.Event("rotateend",e)),a&&this.fire(new t.Event("pitchend",e)),this.fire(new t.Event("moveend",e))}flyTo(e,i){if(!e.essential&&t.exported.prefersReducedMotion){const r=t.pick(e,["center","zoom","bearing","pitch","around"]);return this.jumpTo(r,i)}this.stop(),e=t.extend({offset:[0,0],speed:1.2,curve:1.42,easing:t.ease},e);const r=this.transform,n=this.getZoom(),a=this.getBearing(),o=this.getPitch(),s=this.getPadding(),l="zoom"in e?t.clamp(+e.zoom,r.minZoom,r.maxZoom):n,c="bearing"in e?this._normalizeBearing(e.bearing,a):a,h="pitch"in e?+e.pitch:o,u="padding"in e?e.padding:r.padding,p=r.zoomScale(l-n),d=t.pointGeometry.convert(e.offset);let m=r.centerPoint.add(d);const f=r.pointLocation(m),g=t.LngLat.convert(e.center||f);this._normalizeCenter(g);const _=r.project(f),y=r.project(g).sub(_);let x=e.curve;const v=Math.max(r.width,r.height),b=v/p,w=y.mag();if("minZoom"in e){const i=t.clamp(Math.min(e.minZoom,n,l),r.minZoom,r.maxZoom),a=v/r.zoomScale(i-n);x=Math.sqrt(a/w*2)}const T=x*x;function E(t){const e=(b*b-v*v+(t?-1:1)*T*T*w*w)/(2*(t?b:v)*T*w);return Math.log(Math.sqrt(e*e+1)-e)}function S(t){return(Math.exp(t)-Math.exp(-t))/2}function I(t){return(Math.exp(t)+Math.exp(-t))/2}const z=E(0);let C=function(t){return I(z)/I(z+x*t)},A=function(t){return v*((I(z)*(S(e=z+x*t)/I(e))-S(z))/T)/w;var e},k=(E(1)-z)/x;if(Math.abs(w)<1e-6||!isFinite(k)){if(Math.abs(v-b)<1e-6)return this.easeTo(e,i);const t=be.maxDuration&&(e.duration=0),this._zooming=!0,this._rotating=a!==c,this._pitching=h!==o,this._padding=!r.isPaddingEqual(u),this._prepareEase(i,!1),this._ease((e=>{const p=e*k,f=1/C(p);r.zoom=1===e?l:n+r.scaleZoom(f),this._rotating&&(r.bearing=t.number(a,c,e)),this._pitching&&(r.pitch=t.number(o,h,e)),this._padding&&(r.interpolatePadding(s,u,e),m=r.centerPoint.add(d));const x=1===e?g:r.unproject(_.add(y.mult(A(p))).mult(f));r.setLocationAtPoint(r.renderWorldCopies?x.wrap():x,m),this._fireMoveEvents(i)}),(()=>this._afterEase(i)),e),this}isEasing(){return!!this._easeFrameId}stop(){return this._stop()}_stop(t,e){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){const t=this._onEaseEnd;delete this._onEaseEnd,t.call(this,e)}if(!t){const t=this.handlers;t&&t.stop(!1)}return this}_ease(e,i,r){!1===r.animate||0===r.duration?(e(1),i()):(this._easeStart=t.exported.now(),this._easeOptions=r,this._onEaseFrame=e,this._onEaseEnd=i,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))}_renderFrameCallback(){const e=Math.min((t.exported.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(e)),e<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()}_normalizeBearing(e,i){e=t.wrap(e,-180,180);const r=Math.abs(e-i);return Math.abs(e-360-i)180?-360:i<-180?360:0}}class Qr{constructor(e={}){this.options=e,t.bindAll(["_toggleAttribution","_updateData","_updateCompact","_updateCompactMinimize"],this)}getDefaultPosition(){return"bottom-right"}onAdd(t){return this._map=t,this._compact=this.options&&this.options.compact,this._container=a.create("details","maplibregl-ctrl maplibregl-ctrl-attrib mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._compactButton=a.create("summary","maplibregl-ctrl-attrib-button mapboxgl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=a.create("div","maplibregl-ctrl-attrib-inner mapboxgl-ctrl-attrib-inner",this._container),this._updateAttributions(),this._updateCompact(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("terrain",this._updateData),this._map.on("resize",this._updateCompact),this._map.on("drag",this._updateCompactMinimize),this._container}onRemove(){a.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("terrain",this._updateData),this._map.off("resize",this._updateCompact),this._map.off("drag",this._updateCompactMinimize),this._map=void 0,this._compact=void 0,this._attribHTML=void 0}_setElementTitle(t,e){const i=this._map._getUIString(`AttributionControl.${e}`);t.title=i,t.setAttribute("aria-label",i)}_toggleAttribution(){this._container.classList.contains("maplibregl-compact")&&(this._container.classList.contains("maplibregl-compact-show")?(this._container.setAttribute("open",""),this._container.classList.remove("maplibregl-compact-show","mapboxgl-compact-show")):(this._container.classList.add("maplibregl-compact-show","mapboxgl-compact-show"),this._container.removeAttribute("open")))}_updateData(t){!t||"metadata"!==t.sourceDataType&&"visibility"!==t.sourceDataType&&"style"!==t.dataType&&"terrain"!==t.type||this._updateAttributions()}_updateAttributions(){if(!this._map.style)return;let t=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?t=t.concat(this.options.customAttribution.map((t=>"string"!=typeof t?"":t))):"string"==typeof this.options.customAttribution&&t.push(this.options.customAttribution)),this._map.style.stylesheet){const t=this._map.style.stylesheet;this.styleOwner=t.owner,this.styleId=t.id}const e=this._map.style.sourceCaches;for(const r in e){const i=e[r];if(i.used||i.usedForTerrain){const e=i.getSource();e.attribution&&t.indexOf(e.attribution)<0&&t.push(e.attribution)}}t=t.filter((t=>String(t).trim())),t.sort(((t,e)=>t.length-e.length)),t=t.filter(((e,i)=>{for(let r=i+1;r=0)return!1;return!0}));const i=t.join(" | ");i!==this._attribHTML&&(this._attribHTML=i,t.length?(this._innerContainer.innerHTML=i,this._container.classList.remove("maplibregl-attrib-empty","mapboxgl-attrib-empty")):this._container.classList.add("maplibregl-attrib-empty","mapboxgl-attrib-empty"),this._updateCompact(),this._editLink=null)}_updateCompact(){this._map.getCanvasContainer().offsetWidth<=640||this._compact?!1===this._compact?this._container.setAttribute("open",""):this._container.classList.contains("maplibregl-compact")||this._container.classList.contains("maplibregl-attrib-empty")||(this._container.setAttribute("open",""),this._container.classList.add("maplibregl-compact","mapboxgl-compact","maplibregl-compact-show","mapboxgl-compact-show")):(this._container.setAttribute("open",""),this._container.classList.contains("maplibregl-compact")&&this._container.classList.remove("maplibregl-compact","maplibregl-compact-show","mapboxgl-compact","mapboxgl-compact-show"))}_updateCompactMinimize(){this._container.classList.contains("maplibregl-compact")&&this._container.classList.contains("maplibregl-compact-show")&&this._container.classList.remove("maplibregl-compact-show","mapboxgl-compact-show")}}class tn{constructor(e={}){this.options=e,t.bindAll(["_updateCompact"],this)}getDefaultPosition(){return"bottom-left"}onAdd(t){this._map=t,this._compact=this.options&&this.options.compact,this._container=a.create("div","maplibregl-ctrl mapboxgl-ctrl");const e=a.create("a","maplibregl-ctrl-logo mapboxgl-ctrl-logo");return e.target="_blank",e.rel="noopener nofollow",e.href="https://maplibre.org/",e.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),e.setAttribute("rel","noopener nofollow"),this._container.appendChild(e),this._container.style.display="block",this._map.on("resize",this._updateCompact),this._updateCompact(),this._container}onRemove(){a.remove(this._container),this._map.off("resize",this._updateCompact),this._map=void 0,this._compact=void 0}_updateCompact(){const t=this._container.children;if(t.length){const e=t[0];this._map.getCanvasContainer().offsetWidth<=640||this._compact?!1!==this._compact&&e.classList.add("maplibregl-compact","mapboxgl-compact"):e.classList.remove("maplibregl-compact","mapboxgl-compact")}}}class en{constructor(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1}add(t){const e=++this._id;return this._queue.push({callback:t,id:e,cancelled:!1}),e}remove(t){const e=this._currentlyRunning,i=e?this._queue.concat(e):this._queue;for(const r of i)if(r.id===t)return void(r.cancelled=!0)}run(t=0){if(this._currentlyRunning)throw new Error("Attempting to run(), but is already running.");const e=this._currentlyRunning=this._queue;this._queue=[];for(const i of e)if(!i.cancelled&&(i.callback(t),this._cleared))break;this._cleared=!1,this._currentlyRunning=!1}clear(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]}}const rn={"AttributionControl.ToggleAttribution":"Toggle attribution","AttributionControl.MapFeedback":"Map feedback","FullscreenControl.Enter":"Enter fullscreen","FullscreenControl.Exit":"Exit fullscreen","GeolocateControl.FindMyLocation":"Find my location","GeolocateControl.LocationNotAvailable":"Location not available","LogoControl.Title":"Mapbox logo","NavigationControl.ResetBearing":"Reset bearing to north","NavigationControl.ZoomIn":"Zoom in","NavigationControl.ZoomOut":"Zoom out","ScaleControl.Feet":"ft","ScaleControl.Meters":"m","ScaleControl.Kilometers":"km","ScaleControl.Miles":"mi","ScaleControl.NauticalMiles":"nm","TerrainControl.enableTerrain":"Enable terrain","TerrainControl.disableTerrain":"Disable terrain"},nn={center:[0,0],zoom:0,bearing:0,pitch:0,minZoom:-2,maxZoom:22,minPitch:0,maxPitch:60,interactive:!0,scrollZoom:!0,boxZoom:!0,dragRotate:!0,dragPan:!0,keyboard:!0,doubleClickZoom:!0,touchZoomRotate:!0,touchPitch:!0,cooperativeGestures:void 0,bearingSnap:7,clickTolerance:3,pitchWithRotate:!0,hash:!1,attributionControl:!0,maplibreLogo:!1,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,trackResize:!0,renderWorldCopies:!0,refreshExpiredTiles:!0,maxTileCacheSize:null,localIdeographFontFamily:"sans-serif",transformRequest:null,fadeDuration:300,crossSourceCollisions:!0},an={showCompass:!0,showZoom:!0,visualizePitch:!1};class on{constructor(e,i,r=!1){this._clickTolerance=10,this.element=i,this.mouseRotate=new Sr({clickTolerance:e.dragRotate._mouseRotate._clickTolerance}),this.map=e,r&&(this.mousePitch=new Ir({clickTolerance:e.dragRotate._mousePitch._clickTolerance})),t.bindAll(["mousedown","mousemove","mouseup","touchstart","touchmove","touchend","reset"],this),a.addEventListener(i,"mousedown",this.mousedown),a.addEventListener(i,"touchstart",this.touchstart,{passive:!1}),a.addEventListener(i,"touchmove",this.touchmove),a.addEventListener(i,"touchend",this.touchend),a.addEventListener(i,"touchcancel",this.reset)}down(t,e){this.mouseRotate.mousedown(t,e),this.mousePitch&&this.mousePitch.mousedown(t,e),a.disableDrag()}move(t,e){const i=this.map,r=this.mouseRotate.mousemoveWindow(t,e);if(r&&r.bearingDelta&&i.setBearing(i.getBearing()+r.bearingDelta),this.mousePitch){const r=this.mousePitch.mousemoveWindow(t,e);r&&r.pitchDelta&&i.setPitch(i.getPitch()+r.pitchDelta)}}off(){const t=this.element;a.removeEventListener(t,"mousedown",this.mousedown),a.removeEventListener(t,"touchstart",this.touchstart,{passive:!1}),a.removeEventListener(t,"touchmove",this.touchmove),a.removeEventListener(t,"touchend",this.touchend),a.removeEventListener(t,"touchcancel",this.reset),this.offTemp()}offTemp(){a.enableDrag(),a.removeEventListener(window,"mousemove",this.mousemove),a.removeEventListener(window,"mouseup",this.mouseup)}mousedown(e){this.down(t.extend({},e,{ctrlKey:!0,preventDefault:()=>e.preventDefault()}),a.mousePos(this.element,e)),a.addEventListener(window,"mousemove",this.mousemove),a.addEventListener(window,"mouseup",this.mouseup)}mousemove(t){this.move(t,a.mousePos(this.element,t))}mouseup(t){this.mouseRotate.mouseupWindow(t),this.mousePitch&&this.mousePitch.mouseupWindow(t),this.offTemp()}touchstart(t){1!==t.targetTouches.length?this.reset():(this._startPos=this._lastPos=a.touchPos(this.element,t.targetTouches)[0],this.down({type:"mousedown",button:0,ctrlKey:!0,preventDefault:()=>t.preventDefault()},this._startPos))}touchmove(t){1!==t.targetTouches.length?this.reset():(this._lastPos=a.touchPos(this.element,t.targetTouches)[0],this.move({preventDefault:()=>t.preventDefault()},this._lastPos))}touchend(t){0===t.targetTouches.length&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)180;){const t=r.locationPoint(e);if(t.x>=0&&t.y>=0&&t.x<=r.width&&t.y<=r.height)break;e.lng>r.center.lng?e.lng-=360:e.lng+=360}return e}const ln={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function cn(t,e,i){const r=t.classList;for(const n in ln)r.remove(`maplibregl-${i}-anchor-${n}`,`mapboxgl-${i}-anchor-${n}`);r.add(`maplibregl-${i}-anchor-${e}`,`mapboxgl-${i}-anchor-${e}`)}class hn extends t.Evented{constructor(e,i){if(super(),(e instanceof HTMLElement||i)&&(e=t.extend({element:e},i)),t.bindAll(["_update","_onMove","_onUp","_addDragHandler","_onMapClick","_onKeyPress"],this),this._anchor=e&&e.anchor||"center",this._color=e&&e.color||"#3FB1CE",this._scale=e&&e.scale||1,this._draggable=e&&e.draggable||!1,this._clickTolerance=e&&e.clickTolerance||0,this._isDragging=!1,this._state="inactive",this._rotation=e&&e.rotation||0,this._rotationAlignment=e&&e.rotationAlignment||"auto",this._pitchAlignment=e&&e.pitchAlignment&&"auto"!==e.pitchAlignment?e.pitchAlignment:this._rotationAlignment,e&&e.element)this._element=e.element,this._offset=t.pointGeometry.convert(e&&e.offset||[0,0]);else{this._defaultMarker=!0,this._element=a.create("div"),this._element.setAttribute("aria-label","Map marker");const i=a.createNS("http://www.w3.org/2000/svg","svg"),r=41,n=27;i.setAttributeNS(null,"display","block"),i.setAttributeNS(null,"height",`${r}px`),i.setAttributeNS(null,"width",`${n}px`),i.setAttributeNS(null,"viewBox",`0 0 ${n} ${r}`);const o=a.createNS("http://www.w3.org/2000/svg","g");o.setAttributeNS(null,"stroke","none"),o.setAttributeNS(null,"stroke-width","1"),o.setAttributeNS(null,"fill","none"),o.setAttributeNS(null,"fill-rule","evenodd");const s=a.createNS("http://www.w3.org/2000/svg","g");s.setAttributeNS(null,"fill-rule","nonzero");const l=a.createNS("http://www.w3.org/2000/svg","g");l.setAttributeNS(null,"transform","translate(3.0, 29.0)"),l.setAttributeNS(null,"fill","#000000");const c=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}];for(const t of c){const e=a.createNS("http://www.w3.org/2000/svg","ellipse");e.setAttributeNS(null,"opacity","0.04"),e.setAttributeNS(null,"cx","10.5"),e.setAttributeNS(null,"cy","5.80029008"),e.setAttributeNS(null,"rx",t.rx),e.setAttributeNS(null,"ry",t.ry),l.appendChild(e)}const h=a.createNS("http://www.w3.org/2000/svg","g");h.setAttributeNS(null,"fill",this._color);const u=a.createNS("http://www.w3.org/2000/svg","path");u.setAttributeNS(null,"d","M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z"),h.appendChild(u);const p=a.createNS("http://www.w3.org/2000/svg","g");p.setAttributeNS(null,"opacity","0.25"),p.setAttributeNS(null,"fill","#000000");const d=a.createNS("http://www.w3.org/2000/svg","path");d.setAttributeNS(null,"d","M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z"),p.appendChild(d);const m=a.createNS("http://www.w3.org/2000/svg","g");m.setAttributeNS(null,"transform","translate(6.0, 7.0)"),m.setAttributeNS(null,"fill","#FFFFFF");const f=a.createNS("http://www.w3.org/2000/svg","g");f.setAttributeNS(null,"transform","translate(8.0, 8.0)");const g=a.createNS("http://www.w3.org/2000/svg","circle");g.setAttributeNS(null,"fill","#000000"),g.setAttributeNS(null,"opacity","0.25"),g.setAttributeNS(null,"cx","5.5"),g.setAttributeNS(null,"cy","5.5"),g.setAttributeNS(null,"r","5.4999962");const _=a.createNS("http://www.w3.org/2000/svg","circle");_.setAttributeNS(null,"fill","#FFFFFF"),_.setAttributeNS(null,"cx","5.5"),_.setAttributeNS(null,"cy","5.5"),_.setAttributeNS(null,"r","5.4999962"),f.appendChild(g),f.appendChild(_),s.appendChild(l),s.appendChild(h),s.appendChild(p),s.appendChild(m),s.appendChild(f),i.appendChild(s),i.setAttributeNS(null,"height",r*this._scale+"px"),i.setAttributeNS(null,"width",n*this._scale+"px"),this._element.appendChild(i),this._offset=t.pointGeometry.convert(e&&e.offset||[0,-14])}this._element.classList.add("maplibregl-marker","mapboxgl-marker"),this._element.addEventListener("dragstart",(t=>{t.preventDefault()})),this._element.addEventListener("mousedown",(t=>{t.preventDefault()})),cn(this._element,this._anchor,"marker"),this._popup=null}addTo(t){return this.remove(),this._map=t,t.getCanvasContainer().appendChild(this._element),t.on("move",this._update),t.on("moveend",this._update),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick),this}remove(){return this._opacityTimeout&&(clearTimeout(this._opacityTimeout),delete this._opacityTimeout),this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler),this._map.off("mouseup",this._onUp),this._map.off("touchend",this._onUp),this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),delete this._map),a.remove(this._element),this._popup&&this._popup.remove(),this}getLngLat(){return this._lngLat}setLngLat(e){return this._lngLat=t.LngLat.convert(e),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this}getElement(){return this._element}setPopup(t){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),t){if(!("offset"in t.options)){const e=38.1,i=13.5,r=Math.sqrt(Math.pow(i,2)/2);t.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-e],"bottom-left":[r,-1*(e-i+r)],"bottom-right":[-r,-1*(e-i+r)],left:[i,-1*(e-i)],right:[-i,-1*(e-i)]}:this._offset}this._popup=t,this._lngLat&&this._popup.setLngLat(this._lngLat),this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress)}return this}_onKeyPress(t){const e=t.code,i=t.charCode||t.keyCode;"Space"!==e&&"Enter"!==e&&32!==i&&13!==i||this.togglePopup()}_onMapClick(t){const e=t.originalEvent.target,i=this._element;this._popup&&(e===i||i.contains(e))&&this.togglePopup()}getPopup(){return this._popup}togglePopup(){const t=this._popup;return t?(t.isOpen()?t.remove():t.addTo(this._map),this):this}_update(t){if(!this._map)return;this._map.transform.renderWorldCopies&&(this._lngLat=sn(this._lngLat,this._pos,this._map.transform)),this._pos=this._map.project(this._lngLat)._add(this._offset);let e="";"viewport"===this._rotationAlignment||"auto"===this._rotationAlignment?e=`rotateZ(${this._rotation}deg)`:"map"===this._rotationAlignment&&(e=`rotateZ(${this._rotation-this._map.getBearing()}deg)`);let i="";"viewport"===this._pitchAlignment||"auto"===this._pitchAlignment?i="rotateX(0deg)":"map"===this._pitchAlignment&&(i=`rotateX(${this._map.getPitch()}deg)`),t&&"moveend"!==t.type||(this._pos=this._pos.round()),a.setTransform(this._element,`${ln[this._anchor]} translate(${this._pos.x}px, ${this._pos.y}px) ${i} ${e}`),this._map.style&&this._map.style.terrain&&!this._opacityTimeout&&(this._opacityTimeout=setTimeout((()=>{const t=this._map.unproject(this._pos),e=40075016.686*Math.abs(Math.cos(this._lngLat.lat*Math.PI/180))/Math.pow(2,this._map.transform.tileZoom+8);this._element.style.opacity=t.distanceTo(this._lngLat)>20*e?"0.2":"1.0",this._opacityTimeout=null}),100))}getOffset(){return this._offset}setOffset(e){return this._offset=t.pointGeometry.convert(e),this._update(),this}_onMove(e){if(!this._isDragging){const t=this._clickTolerance||this._map._clickTolerance;this._isDragging=e.point.dist(this._pointerdownPos)>=t}this._isDragging&&(this._pos=e.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none","pending"===this._state&&(this._state="active",this.fire(new t.Event("dragstart"))),this.fire(new t.Event("drag")))}_onUp(){this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),"active"===this._state&&this.fire(new t.Event("dragend")),this._state="inactive"}_addDragHandler(t){this._element.contains(t.originalEvent.target)&&(t.preventDefault(),this._positionDelta=t.point.sub(this._pos).add(this._offset),this._pointerdownPos=t.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))}setDraggable(t){return this._draggable=!!t,this._map&&(t?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this}isDraggable(){return this._draggable}setRotation(t){return this._rotation=t||0,this._update(),this}getRotation(){return this._rotation}setRotationAlignment(t){return this._rotationAlignment=t||"auto",this._update(),this}getRotationAlignment(){return this._rotationAlignment}setPitchAlignment(t){return this._pitchAlignment=t&&"auto"!==t?t:this._rotationAlignment,this._update(),this}getPitchAlignment(){return this._pitchAlignment}}const un={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0};let pn,dn=0,mn=!1;const fn={maxWidth:100,unit:"metric"};function gn(t,e,i){const r=i&&i.maxWidth||100,n=t._container.clientHeight/2,a=t.unproject([0,n]),o=t.unproject([r,n]),s=a.distanceTo(o);if(i&&"imperial"===i.unit){const i=3.2808*s;i>5280?_n(e,r,i/5280,t._getUIString("ScaleControl.Miles")):_n(e,r,i,t._getUIString("ScaleControl.Feet"))}else i&&"nautical"===i.unit?_n(e,r,s/1852,t._getUIString("ScaleControl.NauticalMiles")):s>=1e3?_n(e,r,s/1e3,t._getUIString("ScaleControl.Kilometers")):_n(e,r,s,t._getUIString("ScaleControl.Meters"))}function _n(t,e,i,r){const n=function(t){const e=Math.pow(10,`${Math.floor(t)}`.length-1);let i=t/e;return i=i>=10?10:i>=5?5:i>=3?3:i>=2?2:i>=1?1:function(t){const e=Math.pow(10,Math.ceil(-Math.log(t)/Math.LN10));return Math.round(t*e)/e}(i),e*i}(i);t.style.width=e*(n/i)+"px",t.innerHTML=`${n} ${r}`}const yn={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px"},xn=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", ");function vn(e){if(e){if("number"==typeof e){const i=Math.round(Math.sqrt(.5*Math.pow(e,2)));return{center:new t.pointGeometry(0,0),top:new t.pointGeometry(0,e),"top-left":new t.pointGeometry(i,i),"top-right":new t.pointGeometry(-i,i),bottom:new t.pointGeometry(0,-e),"bottom-left":new t.pointGeometry(i,-i),"bottom-right":new t.pointGeometry(-i,-i),left:new t.pointGeometry(e,0),right:new t.pointGeometry(-e,0)}}if(e instanceof t.pointGeometry||Array.isArray(e)){const i=t.pointGeometry.convert(e);return{center:i,top:i,"top-left":i,"top-right":i,bottom:i,"bottom-left":i,"bottom-right":i,left:i,right:i}}return{center:t.pointGeometry.convert(e.center||[0,0]),top:t.pointGeometry.convert(e.top||[0,0]),"top-left":t.pointGeometry.convert(e["top-left"]||[0,0]),"top-right":t.pointGeometry.convert(e["top-right"]||[0,0]),bottom:t.pointGeometry.convert(e.bottom||[0,0]),"bottom-left":t.pointGeometry.convert(e["bottom-left"]||[0,0]),"bottom-right":t.pointGeometry.convert(e["bottom-right"]||[0,0]),left:t.pointGeometry.convert(e.left||[0,0]),right:t.pointGeometry.convert(e.right||[0,0])}}return vn(new t.pointGeometry(0,0))}const bn={supported:e,setRTLTextPlugin:t.setRTLTextPlugin,getRTLTextPluginStatus:t.getRTLTextPluginStatus,Map:class extends Yr{constructor(e){var i;if(t.PerformanceUtils.mark(t.PerformanceMarkers.create),null!=(e=t.extend({},nn,e)).minZoom&&null!=e.maxZoom&&e.minZoom>e.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(null!=e.minPitch&&null!=e.maxPitch&&e.minPitch>e.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(null!=e.minPitch&&e.minPitch<0)throw new Error("minPitch must be greater than or equal to 0");if(null!=e.maxPitch&&e.maxPitch>85)throw new Error("maxPitch must be less than or equal to 85");if(super(new ir(e.minZoom,e.maxZoom,e.minPitch,e.maxPitch,e.renderWorldCopies),{bearingSnap:e.bearingSnap}),this._interactive=e.interactive,this._cooperativeGestures=e.cooperativeGestures,this._maxTileCacheSize=e.maxTileCacheSize,this._failIfMajorPerformanceCaveat=e.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=e.preserveDrawingBuffer,this._antialias=e.antialias,this._trackResize=e.trackResize,this._bearingSnap=e.bearingSnap,this._refreshExpiredTiles=e.refreshExpiredTiles,this._fadeDuration=e.fadeDuration,this._crossSourceCollisions=e.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=e.collectResourceTiming,this._renderTaskQueue=new en,this._controls=[],this._mapId=t.uniqueId(),this._locale=t.extend({},rn,e.locale),this._clickTolerance=e.clickTolerance,this._pixelRatio=null!==(i=e.pixelRatio)&&void 0!==i?i:devicePixelRatio,this._requestManager=new o(e.transformRequest),"string"==typeof e.container){if(this._container=document.getElementById(e.container),!this._container)throw new Error(`Container '${e.container}' not found.`)}else{if(!(e.container instanceof HTMLElement))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=e.container}if(e.maxBounds&&this.setMaxBounds(e.maxBounds),t.bindAll(["_onWindowOnline","_onWindowResize","_onMapScroll","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),void 0===this.painter)throw new Error("Failed to initialize WebGL.");this.on("move",(()=>this._update(!1))),this.on("moveend",(()=>this._update(!1))),this.on("zoom",(()=>this._update(!0))),this.on("terrain",(()=>{this.painter.terrainFacilitator.dirty=!0,this._update(!0)})),"undefined"!=typeof window&&(addEventListener("online",this._onWindowOnline,!1),addEventListener("resize",this._onWindowResize,!1),addEventListener("orientationchange",this._onWindowResize,!1)),this.handlers=new Kr(this,e),this._cooperativeGestures&&this._setupCooperativeGestures(),this._hash=e.hash&&new rr("string"==typeof e.hash&&e.hash||void 0).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:e.center,zoom:e.zoom,bearing:e.bearing,pitch:e.pitch}),e.bounds&&(this.resize(),this.fitBounds(e.bounds,t.extend({},e.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=e.localIdeographFontFamily,e.style&&this.setStyle(e.style,{localIdeographFontFamily:e.localIdeographFontFamily}),e.attributionControl&&this.addControl(new Qr({customAttribution:e.customAttribution})),e.maplibreLogo&&this.addControl(new tn,e.logoPosition),this.on("style.load",(()=>{this.transform.unmodified&&this.jumpTo(this.style.stylesheet)})),this.on("data",(e=>{this._update("style"===e.dataType),this.fire(new t.Event(`${e.dataType}data`,e))})),this.on("dataloading",(e=>{this.fire(new t.Event(`${e.dataType}dataloading`,e))})),this.on("dataabort",(e=>{this.fire(new t.Event("sourcedataabort",e))}))}_getMapId(){return this._mapId}addControl(e,i){if(void 0===i&&(i=e.getDefaultPosition?e.getDefaultPosition():"top-right"),!e||!e.onAdd)return this.fire(new t.ErrorEvent(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));const r=e.onAdd(this);this._controls.push(e);const n=this._controlPositions[i];return-1!==i.indexOf("bottom")?n.insertBefore(r,n.firstChild):n.appendChild(r),this}removeControl(e){if(!e||!e.onRemove)return this.fire(new t.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));const i=this._controls.indexOf(e);return i>-1&&this._controls.splice(i,1),e.onRemove(this),this}hasControl(t){return this._controls.indexOf(t)>-1}calculateCameraOptionsFromTo(t,e,i,r){return null==r&&this.style.terrain&&(r=this.transform.getElevation(i,this.style.terrain)),super.calculateCameraOptionsFromTo(t,e,i,r)}resize(e){const i=this._containerDimensions(),r=i[0],n=i[1];this._resizeCanvas(r,n,this.getPixelRatio()),this.transform.resize(r,n),this.painter.resize(r,n,this.getPixelRatio());const a=!this._moving;return a&&(this.stop(),this.fire(new t.Event("movestart",e)).fire(new t.Event("move",e))),this.fire(new t.Event("resize",e)),a&&this.fire(new t.Event("moveend",e)),this}getPixelRatio(){return this._pixelRatio}setPixelRatio(t){const[e,i]=this._containerDimensions();this._pixelRatio=t,this._resizeCanvas(e,i,t),this.painter.resize(e,i,t)}getBounds(){return this.transform.getBounds()}getMaxBounds(){return this.transform.getMaxBounds()}setMaxBounds(e){return this.transform.setMaxBounds(t.LngLatBounds.convert(e)),this._update()}setMinZoom(t){if((t=null==t?-2:t)>=-2&&t<=this.transform.maxZoom)return this.transform.minZoom=t,this._update(),this.getZoom()=this.transform.minZoom)return this.transform.maxZoom=t,this._update(),this.getZoom()>t&&this.setZoom(t),this;throw new Error("maxZoom must be greater than the current minZoom")}getMaxZoom(){return this.transform.maxZoom}setMinPitch(t){if((t=null==t?0:t)<0)throw new Error("minPitch must be greater than or equal to 0");if(t>=0&&t<=this.transform.maxPitch)return this.transform.minPitch=t,this._update(),this.getPitch()85)throw new Error("maxPitch must be less than or equal to 85");if(t>=this.transform.minPitch)return this.transform.maxPitch=t,this._update(),this.getPitch()>t&&this.setPitch(t),this;throw new Error("maxPitch must be greater than the current minPitch")}getMaxPitch(){return this.transform.maxPitch}getRenderWorldCopies(){return this.transform.renderWorldCopies}setRenderWorldCopies(t){return this.transform.renderWorldCopies=t,this._update()}project(e){return this.transform.locationPoint(t.LngLat.convert(e),this.style&&this.style.terrain)}unproject(e){return this.transform.pointLocation(t.pointGeometry.convert(e),this.style&&this.style.terrain)}isMoving(){return this._moving||this.handlers.isMoving()}isZooming(){return this._zooming||this.handlers.isZooming()}isRotating(){return this._rotating||this.handlers.isRotating()}_createDelegatedListener(t,e,i){if("mouseenter"===t||"mouseover"===t){let r=!1;const n=n=>{const a=this.getLayer(e)?this.queryRenderedFeatures(n.point,{layers:[e]}):[];a.length?r||(r=!0,i.call(this,new pr(t,this,n.originalEvent,{features:a}))):r=!1};return{layer:e,listener:i,delegates:{mousemove:n,mouseout:()=>{r=!1}}}}if("mouseleave"===t||"mouseout"===t){let r=!1;const n=n=>{(this.getLayer(e)?this.queryRenderedFeatures(n.point,{layers:[e]}):[]).length?r=!0:r&&(r=!1,i.call(this,new pr(t,this,n.originalEvent)))},a=e=>{r&&(r=!1,i.call(this,new pr(t,this,e.originalEvent)))};return{layer:e,listener:i,delegates:{mousemove:n,mouseout:a}}}{const r=t=>{const r=this.getLayer(e)?this.queryRenderedFeatures(t.point,{layers:[e]}):[];r.length&&(t.features=r,i.call(this,t),delete t.features)};return{layer:e,listener:i,delegates:{[t]:r}}}}on(t,e,i){if(void 0===i)return super.on(t,e);const r=this._createDelegatedListener(t,e,i);this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[t]=this._delegatedListeners[t]||[],this._delegatedListeners[t].push(r);for(const n in r.delegates)this.on(n,r.delegates[n]);return this}once(t,e,i){if(void 0===i)return super.once(t,e);const r=this._createDelegatedListener(t,e,i);for(const n in r.delegates)this.once(n,r.delegates[n]);return this}off(t,e,i){return void 0===i?super.off(t,e):(this._delegatedListeners&&this._delegatedListeners[t]&&(r=>{const n=this._delegatedListeners[t];for(let t=0;t{e?this.fire(new t.ErrorEvent(e)):r&&this._updateDiff(r,i)}))}else"object"==typeof e&&this._updateDiff(e,i)}_updateDiff(e,i){try{this.style.setState(e)&&this._update(!0)}catch(r){t.warnOnce(`Unable to perform style diff: ${r.message||r.error||r}. Rebuilding the style from scratch.`),this._updateStyle(e,i)}}getStyle(){if(this.style)return this.style.serialize()}isStyleLoaded(){return this.style?this.style.loaded():t.warnOnce("There is no style added to the map.")}addSource(t,e){return this._lazyInitEmptyStyle(),this.style.addSource(t,e),this._update(!0)}isSourceLoaded(e){const i=this.style&&this.style.sourceCaches[e];if(void 0!==i)return i.loaded();this.fire(new t.ErrorEvent(new Error(`There is no source with ID '${e}'`)))}setTerrain(t){return this.style.setTerrain(t),this}getTerrain(){return this.style.terrain&&this.style.terrain.options}areTilesLoaded(){const t=this.style&&this.style.sourceCaches;for(const e in t){const i=t[e]._tiles;for(const t in i){const e=i[t];if("loaded"!==e.state&&"errored"!==e.state)return!1}}return!0}addSourceType(t,e,i){return this._lazyInitEmptyStyle(),this.style.addSourceType(t,e,i)}removeSource(t){return this.style.removeSource(t),this._update(!0)}getSource(t){return this.style.getSource(t)}addImage(e,i,{pixelRatio:r=1,sdf:n=!1,stretchX:a,stretchY:o,content:s}={}){if(this._lazyInitEmptyStyle(),i instanceof HTMLImageElement||t.isImageBitmap(i)){const{width:l,height:c,data:h}=t.exported.getImageData(i);this.style.addImage(e,{data:new t.RGBAImage({width:l,height:c},h),pixelRatio:r,stretchX:a,stretchY:o,content:s,sdf:n,version:0})}else{if(void 0===i.width||void 0===i.height)return this.fire(new t.ErrorEvent(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));{const{width:l,height:c,data:h}=i,u=i;this.style.addImage(e,{data:new t.RGBAImage({width:l,height:c},new Uint8Array(h)),pixelRatio:r,stretchX:a,stretchY:o,content:s,sdf:n,version:0,userImage:u}),u.onAdd&&u.onAdd(this,e)}}}updateImage(e,i){const r=this.style.getImage(e);if(!r)return this.fire(new t.ErrorEvent(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));const n=i instanceof HTMLImageElement||t.isImageBitmap(i)?t.exported.getImageData(i):i,{width:a,height:o,data:s}=n;if(void 0===a||void 0===o)return this.fire(new t.ErrorEvent(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));if(a!==r.data.width||o!==r.data.height)return this.fire(new t.ErrorEvent(new Error("The width and height of the updated image must be that same as the previous version of the image")));const l=!(i instanceof HTMLImageElement||t.isImageBitmap(i));r.data.replace(s,l),this.style.updateImage(e,r)}hasImage(e){return e?!!this.style.getImage(e):(this.fire(new t.ErrorEvent(new Error("Missing required image id"))),!1)}removeImage(t){this.style.removeImage(t)}loadImage(e,i){t.getImage(this._requestManager.transformRequest(e,t.ResourceType.Image),i)}listImages(){return this.style.listImages()}addLayer(t,e){return this._lazyInitEmptyStyle(),this.style.addLayer(t,e),this._update(!0)}moveLayer(t,e){return this.style.moveLayer(t,e),this._update(!0)}removeLayer(t){return this.style.removeLayer(t),this._update(!0)}getLayer(t){return this.style.getLayer(t)}setLayerZoomRange(t,e,i){return this.style.setLayerZoomRange(t,e,i),this._update(!0)}setFilter(t,e,i={}){return this.style.setFilter(t,e,i),this._update(!0)}getFilter(t){return this.style.getFilter(t)}setPaintProperty(t,e,i,r={}){return this.style.setPaintProperty(t,e,i,r),this._update(!0)}getPaintProperty(t,e){return this.style.getPaintProperty(t,e)}setLayoutProperty(t,e,i,r={}){return this.style.setLayoutProperty(t,e,i,r),this._update(!0)}getLayoutProperty(t,e){return this.style.getLayoutProperty(t,e)}setLight(t,e={}){return this._lazyInitEmptyStyle(),this.style.setLight(t,e),this._update(!0)}getLight(){return this.style.getLight()}setFeatureState(t,e){return this.style.setFeatureState(t,e),this._update()}removeFeatureState(t,e){return this.style.removeFeatureState(t,e),this._update()}getFeatureState(t){return this.style.getFeatureState(t)}getContainer(){return this._container}getCanvasContainer(){return this._canvasContainer}getCanvas(){return this._canvas}_containerDimensions(){let t=0,e=0;return this._container&&(t=this._container.clientWidth||400,e=this._container.clientHeight||300),[t,e]}_setupContainer(){const t=this._container;t.classList.add("maplibregl-map","mapboxgl-map");const e=this._canvasContainer=a.create("div","maplibregl-canvas-container mapboxgl-canvas-container",t);this._interactive&&e.classList.add("maplibregl-interactive","mapboxgl-interactive"),this._canvas=a.create("canvas","maplibregl-canvas mapboxgl-canvas",e),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex","0"),this._canvas.setAttribute("aria-label","Map"),this._canvas.setAttribute("role","region");const i=this._containerDimensions();this._resizeCanvas(i[0],i[1],this.getPixelRatio());const r=this._controlContainer=a.create("div","maplibregl-control-container mapboxgl-control-container",t),n=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach((t=>{n[t]=a.create("div",`maplibregl-ctrl-${t} mapboxgl-ctrl-${t}`,r)})),this._container.addEventListener("scroll",this._onMapScroll,!1)}_setupCooperativeGestures(){const t=this._container;this._metaPress=!1,this._cooperativeGesturesScreen=a.create("div","maplibregl-cooperative-gesture-screen",t);let e="Control",i="boolean"!=typeof this._cooperativeGestures&&this._cooperativeGestures.windowsHelpText?this._cooperativeGestures.windowsHelpText:"Use Ctrl + scroll to zoom the map";0===navigator.platform.indexOf("Mac")&&(i="boolean"!=typeof this._cooperativeGestures&&this._cooperativeGestures.macHelpText?this._cooperativeGestures.macHelpText:"Use \u2318 + scroll to zoom the map",e="Meta"),this._cooperativeGesturesScreen.innerHTML=`\n
${i}
\n
${"boolean"!=typeof this._cooperativeGestures&&this._cooperativeGestures.mobileHelpText?this._cooperativeGestures.mobileHelpText:"Use two fingers to move the map"}
\n `,document.addEventListener("keydown",(t=>{t.key===e&&(this._metaPress=!0)})),document.addEventListener("keyup",(t=>{t.key===e&&(this._metaPress=!1)})),this._canvasContainer.addEventListener("wheel",(t=>{this._onCooperativeGesture(t,this._metaPress,1)}),!1),this._canvasContainer.classList.remove("mapboxgl-touch-drag-pan","maplibregl-touch-drag-pan")}_resizeCanvas(t,e,i){this._canvas.width=i*t,this._canvas.height=i*e,this._canvas.style.width=`${t}px`,this._canvas.style.height=`${e}px`}_setupPainter(){const i=t.extend({},e.webGLContextAttributes,{failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1}),r=this._canvas.getContext("webgl",i)||this._canvas.getContext("experimental-webgl",i);r?(this.painter=new Yi(r,this.transform),t.exported$1.testSupport(r)):this.fire(new t.ErrorEvent(new Error("Failed to initialize WebGL")))}_contextLost(e){e.preventDefault(),this._frame&&(this._frame.cancel(),this._frame=null),this.fire(new t.Event("webglcontextlost",{originalEvent:e}))}_contextRestored(e){this._setupPainter(),this.resize(),this._update(),this.fire(new t.Event("webglcontextrestored",{originalEvent:e}))}_onMapScroll(t){if(t.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1}_onCooperativeGesture(t,e,i){return!e&&i<2&&(this._cooperativeGesturesScreen.classList.add("maplibregl-show"),setTimeout((()=>{this._cooperativeGesturesScreen.classList.remove("maplibregl-show")}),100)),!1}loaded(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()}_update(t){return this.style?(this._styleDirty=this._styleDirty||t,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(t){return this._update(),this._renderTaskQueue.add(t)}_cancelRenderFrame(t){this._renderTaskQueue.remove(t)}_render(e){let i,r=0;const n=this.painter.context.extTimerQuery;if(this.listens("gpu-timing-frame")&&(i=n.createQueryEXT(),n.beginQueryEXT(n.TIME_ELAPSED_EXT,i),r=t.exported.now()),this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(e),this._removed)return;let a=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;const e=this.transform.zoom,i=t.exported.now();this.style.zoomHistory.update(e,i);const r=new t.EvaluationParameters(e,{now:i,fadeDuration:this._fadeDuration,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),n=r.crossFadingFactor();1===n&&n===this._crossFadingFactor||(a=!0,this._crossFadingFactor=n),this.style.update(r)}if(this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this.style.terrain&&this.style.terrain.sourceCache.update(this.transform,this.style.terrain),this.transform.updateElevation(this.style.terrain),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,this._fadeDuration,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:this._fadeDuration,showPadding:this.showPadding,gpuTiming:!!this.listens("gpu-timing-layer")}),this.fire(new t.Event("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,t.PerformanceUtils.mark(t.PerformanceMarkers.load),this.fire(new t.Event("load"))),this.style&&(this.style.hasTransitions()||a)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles(),this.listens("gpu-timing-frame")){const e=t.exported.now()-r;n.endQueryEXT(n.TIME_ELAPSED_EXT,i),setTimeout((()=>{const r=n.getQueryObjectEXT(i,n.QUERY_RESULT_EXT)/1e6;n.deleteQueryEXT(i),this.fire(new t.Event("gpu-timing-frame",{cpuTime:e,gpuTime:r}))}),50)}if(this.listens("gpu-timing-layer")){const e=this.painter.collectGpuTimers();setTimeout((()=>{const i=this.painter.queryGpuTimers(e);this.fire(new t.Event("gpu-timing-layer",{layerTimes:i}))}),50)}const o=this._sourcesDirty||this._styleDirty||this._placementDirty;return o||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new t.Event("idle")),!this._loaded||this._fullyLoaded||o||(this._fullyLoaded=!0,t.PerformanceUtils.mark(t.PerformanceMarkers.fullLoad)),this}redraw(){return this.style&&(this._frame&&(this._frame.cancel(),this._frame=null),this._render(0)),this}remove(){this._hash&&this._hash.remove();for(const t of this._controls)t.onRemove(this);this._controls=[],this._frame&&(this._frame.cancel(),this._frame=null),this._renderTaskQueue.clear(),this.painter.destroy(),this.handlers.destroy(),delete this.handlers,this.setStyle(null),"undefined"!=typeof window&&(removeEventListener("resize",this._onWindowResize,!1),removeEventListener("orientationchange",this._onWindowResize,!1),removeEventListener("online",this._onWindowOnline,!1));const e=this.painter.context.gl.getExtension("WEBGL_lose_context");e&&e.loseContext(),this._canvas.removeEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.removeEventListener("webglcontextlost",this._contextLost,!1),a.remove(this._canvasContainer),a.remove(this._controlContainer),this._cooperativeGestures&&a.remove(this._cooperativeGesturesScreen),this._container.classList.remove("maplibregl-map","mapboxgl-map"),t.PerformanceUtils.clearMetrics(),this._removed=!0,this.fire(new t.Event("remove"))}triggerRepaint(){this.style&&!this._frame&&(this._frame=t.exported.frame((e=>{t.PerformanceUtils.frame(e),this._frame=null,this._render(e)})))}_onWindowOnline(){this._update()}_onWindowResize(t){this._trackResize&&this.resize({originalEvent:t})._update()}get showTileBoundaries(){return!!this._showTileBoundaries}set showTileBoundaries(t){this._showTileBoundaries!==t&&(this._showTileBoundaries=t,this._update())}get showPadding(){return!!this._showPadding}set showPadding(t){this._showPadding!==t&&(this._showPadding=t,this._update())}get showCollisionBoxes(){return!!this._showCollisionBoxes}set showCollisionBoxes(t){this._showCollisionBoxes!==t&&(this._showCollisionBoxes=t,t?this.style._generateCollisionBoxes():this._update())}get showOverdrawInspector(){return!!this._showOverdrawInspector}set showOverdrawInspector(t){this._showOverdrawInspector!==t&&(this._showOverdrawInspector=t,this._update())}get repaint(){return!!this._repaint}set repaint(t){this._repaint!==t&&(this._repaint=t,this.triggerRepaint())}get vertices(){return!!this._vertices}set vertices(t){this._vertices=t,this._update()}_setCacheLimits(e,i){t.setCacheLimits(e,i)}get version(){return"2.4.0"}},NavigationControl:class{constructor(e){this.options=t.extend({},an,e),this._container=a.create("div","maplibregl-ctrl maplibregl-ctrl-group mapboxgl-ctrl mapboxgl-ctrl-group"),this._container.addEventListener("contextmenu",(t=>t.preventDefault())),this.options.showZoom&&(t.bindAll(["_setButtonTitle","_updateZoomButtons"],this),this._zoomInButton=this._createButton("maplibregl-ctrl-zoom-in mapboxgl-ctrl-zoom-in",(t=>this._map.zoomIn({},{originalEvent:t}))),a.create("span","maplibregl-ctrl-icon mapboxgl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden","true"),this._zoomOutButton=this._createButton("maplibregl-ctrl-zoom-out mapboxgl-ctrl-zoom-out",(t=>this._map.zoomOut({},{originalEvent:t}))),a.create("span","maplibregl-ctrl-icon mapboxgl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden","true")),this.options.showCompass&&(t.bindAll(["_rotateCompassArrow"],this),this._compass=this._createButton("maplibregl-ctrl-compass mapboxgl-ctrl-compass",(t=>{this.options.visualizePitch?this._map.resetNorthPitch({},{originalEvent:t}):this._map.resetNorth({},{originalEvent:t})})),this._compassIcon=a.create("span","maplibregl-ctrl-icon mapboxgl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden","true"))}_updateZoomButtons(){const t=this._map.getZoom(),e=t===this._map.getMaxZoom(),i=t===this._map.getMinZoom();this._zoomInButton.disabled=e,this._zoomOutButton.disabled=i,this._zoomInButton.setAttribute("aria-disabled",e.toString()),this._zoomOutButton.setAttribute("aria-disabled",i.toString())}_rotateCompassArrow(){const t=this.options.visualizePitch?`scale(${1/Math.pow(Math.cos(this._map.transform.pitch*(Math.PI/180)),.5)}) rotateX(${this._map.transform.pitch}deg) rotateZ(${this._map.transform.angle*(180/Math.PI)}deg)`:`rotate(${this._map.transform.angle*(180/Math.PI)}deg)`;this._compassIcon.style.transform=t}onAdd(t){return this._map=t,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,"ZoomIn"),this._setButtonTitle(this._zoomOutButton,"ZoomOut"),this._map.on("zoom",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,"ResetBearing"),this.options.visualizePitch&&this._map.on("pitch",this._rotateCompassArrow),this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new on(this._map,this._compass,this.options.visualizePitch)),this._container}onRemove(){a.remove(this._container),this.options.showZoom&&this._map.off("zoom",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&this._map.off("pitch",this._rotateCompassArrow),this._map.off("rotate",this._rotateCompassArrow),this._handler.off(),delete this._handler),delete this._map}_createButton(t,e){const i=a.create("button",t,this._container);return i.type="button",i.addEventListener("click",e),i}_setButtonTitle(t,e){const i=this._map._getUIString(`NavigationControl.${e}`);t.title=i,t.setAttribute("aria-label",i)}},GeolocateControl:class extends t.Evented{constructor(e){super(),this.options=t.extend({},un,e),t.bindAll(["_onSuccess","_onError","_onZoom","_finish","_setupUI","_updateCamera","_updateMarker"],this)}onAdd(t){var e;return this._map=t,this._container=a.create("div","maplibregl-ctrl maplibregl-ctrl-group mapboxgl-ctrl mapboxgl-ctrl-group"),e=this._setupUI,void 0!==pn?e(pn):void 0!==window.navigator.permissions?window.navigator.permissions.query({name:"geolocation"}).then((t=>{pn="denied"!==t.state,e(pn)})):(pn=!!window.navigator.geolocation,e(pn)),this._container}onRemove(){void 0!==this._geolocationWatchID&&(window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),a.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,dn=0,mn=!1}_isOutOfMapMaxBounds(t){const e=this._map.getMaxBounds(),i=t.coords;return e&&(i.longitudee.getEast()||i.latitudee.getNorth())}_setErrorState(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active","mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error","mapboxgl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active","mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error","mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting","mapboxgl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background","mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background-error","mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting","mapboxgl-ctrl-geolocate-waiting");break;case"ACTIVE_ERROR":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}}_onSuccess(e){if(this._map){if(this._isOutOfMapMaxBounds(e))return this._setErrorState(),this.fire(new t.Event("outofmaxbounds",e)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=e,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting","mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error","mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active","mapboxgl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting","mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error","mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background","mapboxgl-ctrl-geolocate-background");break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}this.options.showUserLocation&&"OFF"!==this._watchState&&this._updateMarker(e),this.options.trackUserLocation&&"ACTIVE_LOCK"!==this._watchState||this._updateCamera(e),this.options.showUserLocation&&this._dotElement.classList.remove("maplibregl-user-location-dot-stale","mapboxgl-user-location-dot-stale"),this.fire(new t.Event("geolocate",e)),this._finish()}}_updateCamera(e){const i=new t.LngLat(e.coords.longitude,e.coords.latitude),r=e.coords.accuracy,n=this._map.getBearing(),a=t.extend({bearing:n},this.options.fitBoundsOptions);this._map.fitBounds(i.toBounds(r),a,{geolocateSource:!0})}_updateMarker(e){if(e){const i=new t.LngLat(e.coords.longitude,e.coords.latitude);this._accuracyCircleMarker.setLngLat(i).addTo(this._map),this._userLocationDotMarker.setLngLat(i).addTo(this._map),this._accuracy=e.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()}_updateCircleRadius(){const t=this._map._container.clientHeight/2,e=this._map.unproject([0,t]),i=this._map.unproject([1,t]),r=e.distanceTo(i),n=Math.ceil(2*this._accuracy/r);this._circleElement.style.width=`${n}px`,this._circleElement.style.height=`${n}px`}_onZoom(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}_onError(e){if(this._map){if(this.options.trackUserLocation)if(1===e.code){this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting","mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active","mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error","mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background","mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error","mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;const t=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=t,this._geolocateButton.setAttribute("aria-label",t),void 0!==this._geolocationWatchID&&this._clearWatch()}else{if(3===e.code&&mn)return;this._setErrorState()}"OFF"!==this._watchState&&this.options.showUserLocation&&this._dotElement.classList.add("maplibregl-user-location-dot-stale","mapboxgl-user-location-dot-stale"),this.fire(new t.Event("error",e)),this._finish()}}_finish(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0}_setupUI(e){if(this._container.addEventListener("contextmenu",(t=>t.preventDefault())),this._geolocateButton=a.create("button","maplibregl-ctrl-geolocate mapboxgl-ctrl-geolocate",this._container),a.create("span","maplibregl-ctrl-icon mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden","true"),this._geolocateButton.type="button",!1===e){t.warnOnce("Geolocation support is not available so the GeolocateControl will be disabled.");const e=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=e,this._geolocateButton.setAttribute("aria-label",e)}else{const t=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.title=t,this._geolocateButton.setAttribute("aria-label",t)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=a.create("div","maplibregl-user-location-dot mapboxgl-user-location-dot"),this._userLocationDotMarker=new hn(this._dotElement),this._circleElement=a.create("div","maplibregl-user-location-accuracy-circle mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new hn({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",this.trigger.bind(this)),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",(e=>{e.geolocateSource||"ACTIVE_LOCK"!==this._watchState||e.originalEvent&&"resize"===e.originalEvent.type||(this._watchState="BACKGROUND",this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background","mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active","mapboxgl-ctrl-geolocate-active"),this.fire(new t.Event("trackuserlocationend")))}))}trigger(){if(!this._setup)return t.warnOnce("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new t.Event("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":dn--,mn=!1,this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting","mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active","mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error","mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background","mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error","mapboxgl-ctrl-geolocate-background-error"),this.fire(new t.Event("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background","mapboxgl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new t.Event("trackuserlocationstart"));break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting","mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active","mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active","mapboxgl-ctrl-geolocate-active");break;case"OFF":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}if("OFF"===this._watchState&&void 0!==this._geolocationWatchID)this._clearWatch();else if(void 0===this._geolocationWatchID){let t;this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting","mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),dn++,dn>1?(t={maximumAge:6e5,timeout:0},mn=!0):(t=this.options.positionOptions,mn=!1),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,t)}}else window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0}_clearWatch(){window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting","mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)}},AttributionControl:Qr,LogoControl:tn,ScaleControl:class{constructor(e){this.options=t.extend({},fn,e),t.bindAll(["_onMove","setUnit"],this)}getDefaultPosition(){return"bottom-left"}_onMove(){gn(this._map,this._container,this.options)}onAdd(t){return this._map=t,this._container=a.create("div","maplibregl-ctrl maplibregl-ctrl-scale mapboxgl-ctrl mapboxgl-ctrl-scale",t.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container}onRemove(){a.remove(this._container),this._map.off("move",this._onMove),this._map=void 0}setUnit(t){this.options.unit=t,gn(this._map,this._container,this.options)}},FullscreenControl:class{constructor(e){this._fullscreen=!1,e&&e.container&&(e.container instanceof HTMLElement?this._container=e.container:t.warnOnce("Full screen control 'container' must be a DOM element.")),t.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in document&&(this._fullscreenchange="MSFullscreenChange")}onAdd(e){return this._map=e,this._container||(this._container=this._map.getContainer()),this._controlContainer=a.create("div","maplibregl-ctrl maplibregl-ctrl-group mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",t.warnOnce("This device does not support fullscreen mode.")),this._controlContainer}onRemove(){a.remove(this._controlContainer),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._changeIcon)}_checkFullscreenSupport(){return!!(document.fullscreenEnabled||document.mozFullScreenEnabled||document.msFullscreenEnabled||document.webkitFullscreenEnabled)}_setupUI(){const t=this._fullscreenButton=a.create("button","maplibregl-ctrl-fullscreen mapboxgl-ctrl-fullscreen",this._controlContainer);a.create("span","maplibregl-ctrl-icon mapboxgl-ctrl-icon",t).setAttribute("aria-hidden","true"),t.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),window.document.addEventListener(this._fullscreenchange,this._changeIcon)}_updateTitle(){const t=this._getTitle();this._fullscreenButton.setAttribute("aria-label",t),this._fullscreenButton.title=t}_getTitle(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")}_isFullscreen(){return this._fullscreen}_changeIcon(){(window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement)===this._container!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("maplibregl-ctrl-shrink"),this._fullscreenButton.classList.toggle("mapboxgl-ctrl-shrink"),this._fullscreenButton.classList.toggle("maplibregl-ctrl-fullscreen"),this._fullscreenButton.classList.toggle("mapboxgl-ctrl-fullscreen"),this._updateTitle())}_onClickFullscreen(){this._isFullscreen()?window.document.exitFullscreen?window.document.exitFullscreen():window.document.mozCancelFullScreen?window.document.mozCancelFullScreen():window.document.msExitFullscreen?window.document.msExitFullscreen():window.document.webkitCancelFullScreen&&window.document.webkitCancelFullScreen():this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen&&this._container.webkitRequestFullscreen()}},TerrainControl:class{constructor(e){this.options=e,t.bindAll(["_toggleTerrain","_updateTerrainIcon"],this)}onAdd(t){return this._map=t,this._container=a.create("div","maplibregl-ctrl maplibregl-ctrl-group mapboxgl-ctrl mapboxgl-ctrl-group"),this._terrainButton=a.create("button","maplibregl-ctrl-terrain mapboxgl-ctrl-terrain",this._container),a.create("span","maplibregl-ctrl-icon mapboxgl-ctrl-icon",this._terrainButton).setAttribute("aria-hidden","true"),this._terrainButton.type="button",this._terrainButton.addEventListener("click",this._toggleTerrain),this._updateTerrainIcon(),this._map.on("terrain",this._updateTerrainIcon),this._container}onRemove(){a.remove(this._container),this._map.off("terrain",this._updateTerrainIcon),this._map=void 0}_toggleTerrain(){this._map.getTerrain()?this._map.setTerrain(null):this._map.setTerrain(this.options),this._updateTerrainIcon()}_updateTerrainIcon(){this._terrainButton.classList.remove("maplibregl-ctrl-terrain","mapboxgl-ctrl-terrain"),this._terrainButton.classList.remove("maplibregl-ctrl-terrain-enabled","mapboxgl-ctrl-terrain-enabled"),this._map.style.terrain?(this._terrainButton.classList.add("maplibregl-ctrl-terrain-enabled","mapboxgl-ctrl-terrain-enabled"),this._terrainButton.title=this._map._getUIString("TerrainControl.disableTerrain")):(this._terrainButton.classList.add("maplibregl-ctrl-terrain","mapboxgl-ctrl-terrain"),this._terrainButton.title=this._map._getUIString("TerrainControl.enableTerrain"))}},Popup:class extends t.Evented{constructor(e){super(),this.options=t.extend(Object.create(yn),e),t.bindAll(["_update","_onClose","remove","_onMouseMove","_onMouseUp","_onDrag"],this)}addTo(e){return this._map&&this.remove(),this._map=e,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("maplibregl-popup-track-pointer","mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer","mapboxgl-track-pointer")):this._map.on("move",this._update),this.fire(new t.Event("open")),this}isOpen(){return!!this._map}remove(){return this._content&&a.remove(this._content),this._container&&(a.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),delete this._map),this.fire(new t.Event("close")),this}getLngLat(){return this._lngLat}setLngLat(e){return this._lngLat=t.LngLat.convert(e),this._pos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("maplibregl-popup-track-pointer","mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.remove("maplibregl-track-pointer","mapboxgl-track-pointer")),this}trackPointer(){return this._trackPointer=!0,this._pos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("maplibregl-popup-track-pointer","mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer","mapboxgl-track-pointer")),this}getElement(){return this._container}setText(t){return this.setDOMContent(document.createTextNode(t))}setHTML(t){const e=document.createDocumentFragment(),i=document.createElement("body");let r;for(i.innerHTML=t;r=i.firstChild,r;)e.appendChild(r);return this.setDOMContent(e)}getMaxWidth(){return this._container&&this._container.style.maxWidth}setMaxWidth(t){return this.options.maxWidth=t,this._update(),this}setDOMContent(t){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=a.create("div","maplibregl-popup-content mapboxgl-popup-content",this._container);return this._content.appendChild(t),this._createCloseButton(),this._update(),this._focusFirstElement(),this}addClassName(t){this._container&&this._container.classList.add(t)}removeClassName(t){this._container&&this._container.classList.remove(t)}setOffset(t){return this.options.offset=t,this._update(),this}toggleClassName(t){if(this._container)return this._container.classList.toggle(t)}_createCloseButton(){this.options.closeButton&&(this._closeButton=a.create("button","maplibregl-popup-close-button mapboxgl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.setAttribute("aria-label","Close popup"),this._closeButton.innerHTML="×",this._closeButton.addEventListener("click",this._onClose))}_onMouseUp(t){this._update(t.point)}_onMouseMove(t){this._update(t.point)}_onDrag(t){this._update(t.point)}_update(t){if(!this._map||!this._lngLat&&!this._trackPointer||!this._content)return;if(this._container||(this._container=a.create("div","maplibregl-popup mapboxgl-popup",this._map.getContainer()),this._tip=a.create("div","maplibregl-popup-tip mapboxgl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className&&this.options.className.split(" ").forEach((t=>this._container.classList.add(t))),this._trackPointer&&this._container.classList.add("maplibregl-popup-track-pointer","mapboxgl-popup-track-pointer")),this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._map.transform.renderWorldCopies&&!this._trackPointer&&(this._lngLat=sn(this._lngLat,this._pos,this._map.transform)),this._trackPointer&&!t)return;const e=this._pos=this._trackPointer&&t?t:this._map.project(this._lngLat);let i=this.options.anchor;const r=vn(this.options.offset);if(!i){const t=this._container.offsetWidth,n=this._container.offsetHeight;let a;a=e.y+r.bottom.ythis._map.transform.height-n?["bottom"]:[],e.xthis._map.transform.width-t/2&&a.push("right"),i=0===a.length?"bottom":a.join("-")}const n=e.add(r[i]).round();a.setTransform(this._container,`${ln[i]} translate(${n.x}px,${n.y}px)`),cn(this._container,i,"popup")}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;const t=this._container.querySelector(xn);t&&t.focus()}_onClose(){this.remove()}},Marker:hn,Style:ee,LngLat:t.LngLat,LngLatBounds:t.LngLatBounds,Point:t.pointGeometry,MercatorCoordinate:t.MercatorCoordinate,Evented:t.Evented,AJAXError:t.AJAXError,config:t.config,CanvasSource:k,GeoJSONSource:I,ImageSource:C,RasterDEMTileSource:S,RasterTileSource:T,VectorTileSource:w,VideoSource:A,prewarm:function(){Z().acquire(N)},clearPrewarmedResources:function(){const t=q;t&&(t.isPreloaded()&&1===t.numActive()?(t.release(N),q=null):console.warn("Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()"))},get version(){return"2.4.0"},get workerCount(){return $.workerCount},set workerCount(t){$.workerCount=t},get maxParallelImageRequests(){return t.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(e){t.config.MAX_PARALLEL_IMAGE_REQUESTS=e},clearStorage(e){t.clearTileCache(e)},workerUrl:"",addProtocol(e,i){t.config.REGISTERED_PROTOCOLS[e]=i},removeProtocol(e){delete t.config.REGISTERED_PROTOCOLS[e]}};return Jr.extend(bn,{isSafari:t.isSafari,getPerformanceMetrics:t.PerformanceUtils.getPerformanceMetrics}),bn})),i}()}}]); \ No newline at end of file diff --git a/build/experimental/index.html b/build/experimental/index.html new file mode 100644 index 00000000..5fe837a0 --- /dev/null +++ b/build/experimental/index.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/package.json b/package.json index 17caf689..81083fb7 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,7 @@ "scripts": { "check-lint-config": "npx eslint-config-prettier src/index.js", "lint": "eslint src && prettier --check src/*", - "build": "webpack --mode production", + "build:experimental": "webpack --mode production", "build-package": "cross-env BABEL_ENV=production babel src -d dist", "start": "webpack-dev-server --mode development", "storybook": "storybook dev -p 6006", diff --git a/src/index.js b/src/index-experimental.js similarity index 100% rename from src/index.js rename to src/index-experimental.js diff --git a/src/stories/Introduction.stories.mdx b/src/stories/Introduction.stories.mdx index b9cebac5..8f41feff 100644 --- a/src/stories/Introduction.stories.mdx +++ b/src/stories/Introduction.stories.mdx @@ -134,6 +134,19 @@ While viewing a component, to the right of the Canvas there is a tabbed Panel wh - **Accessibilty** - displays a11y violations of WCAG 2.0 Levels A and AA, WCAG 2.1 Level AA, Section 508, and other best practices through the aXe accessibilty engine. Display options and keyboard shortcuts are available via the Ellipsis Menu Icon next to the COD UXDS logo at the top of the sidebar. +

Experimental Components

+ +

+ The COD UXDS Storybook now includes an Experimental section. These components are in development and should be considered unstable. They are provided for preview and testing purposes only. Please note: +

+ +
    +
  • Experimental components are not considered stable.
  • +
  • Use these components at your own risk.
  • +
  • They may undergo significant changes or be removed without notice.
  • +
  • We do not recommend using experimental components in production environments.
  • +
+
Configure
diff --git a/src/stories/accordion.stories.js b/src/stories/accordion.stories.js index 43e67e8e..229bcbf0 100644 --- a/src/stories/accordion.stories.js +++ b/src/stories/accordion.stories.js @@ -5,7 +5,7 @@ import '../components/atoms/AccordionItem/cod-accordion-item'; import '../components/molecules/Accordion/cod-accordion'; export default { - title: 'Components/Molecules/Accordion', + title: 'Experimental/Molecules/Accordion', }; export const Basic = () => html` diff --git a/src/stories/actionbutton.stories.js b/src/stories/actionbutton.stories.js index c8232183..5728b75f 100644 --- a/src/stories/actionbutton.stories.js +++ b/src/stories/actionbutton.stories.js @@ -5,7 +5,7 @@ import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { component: 'cod-action-button', - title: 'Components/Atoms/ActionButton', + title: 'Experimental/Atoms/ActionButton', // 👇 Creates specific argTypes argTypes: { // TODO: Make this attr name and accepted diff --git a/src/stories/actionbuttonV2.stories.js b/src/stories/actionbuttonV2.stories.js index 1eab2064..0305f53f 100644 --- a/src/stories/actionbuttonV2.stories.js +++ b/src/stories/actionbuttonV2.stories.js @@ -5,7 +5,7 @@ import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { component: 'cod-action-button-v2', - title: 'Components/Atoms/ActionButtonV2', + title: 'Experimental/Atoms/ActionButtonV2', // 👇 Creates specific argTypes argTypes: { // TODO: Make this attr name and accepted diff --git a/src/stories/alert.stories.js b/src/stories/alert.stories.js index 72f6c9e5..3f30082b 100644 --- a/src/stories/alert.stories.js +++ b/src/stories/alert.stories.js @@ -2,7 +2,7 @@ import '../components/atoms/Alert/cod-alert'; import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { - title: 'Components/Atoms/Alert', + title: 'Experimental/Atoms/Alert', argTypes: { icon: COMMON_STORY_ARGS.icon, iconOrder: COMMON_STORY_ARGS.order, diff --git a/src/stories/articlecard.stories.js b/src/stories/articlecard.stories.js index 98760b09..c661ed6a 100644 --- a/src/stories/articlecard.stories.js +++ b/src/stories/articlecard.stories.js @@ -2,7 +2,7 @@ import '../components/organisms/ArticleCard/cod-article-card'; import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { - title: 'Components/Organisms/ArticleCard', + title: 'Experimental/Organisms/ArticleCard', argTypes: { href: { control: { type: 'text' }, diff --git a/src/stories/badge.stories.js b/src/stories/badge.stories.js index f88634e3..f25d6bbc 100644 --- a/src/stories/badge.stories.js +++ b/src/stories/badge.stories.js @@ -3,7 +3,7 @@ import '../components/atoms/Badge/cod-badge'; import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { - title: 'Components/Atoms/Badge', + title: 'Experimental/Atoms/Badge', argTypes: { tag: { control: { type: 'select' }, diff --git a/src/stories/breadcrumb.stories.js b/src/stories/breadcrumb.stories.js index 8083c475..44ec0537 100644 --- a/src/stories/breadcrumb.stories.js +++ b/src/stories/breadcrumb.stories.js @@ -2,7 +2,7 @@ import { html } from 'lit-html'; import '../components/atoms/Breadcrumb/cod-breadcrumb'; export default { - title: 'Components/Atoms/Breadcrumb', + title: 'Experimental/Atoms/Breadcrumb', }; export const Basic = () => html` diff --git a/src/stories/button.stories.js b/src/stories/button.stories.js index 7f5fde8e..b04c5724 100644 --- a/src/stories/button.stories.js +++ b/src/stories/button.stories.js @@ -3,7 +3,7 @@ import '../components/atoms/Icon/cod-icon'; import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { - title: 'Components/Atoms/Button', + title: 'Experimental/Atoms/Button', argTypes: { primary: { control: { type: 'boolean' }, diff --git a/src/stories/buttongroup.stories.js b/src/stories/buttongroup.stories.js index 9ebb7a4d..7ed0747f 100644 --- a/src/stories/buttongroup.stories.js +++ b/src/stories/buttongroup.stories.js @@ -4,7 +4,7 @@ import '../components/atoms/Button/cod-button'; import '../components/atoms/FormCheck/cod-formcheck'; export default { - title: 'Components/Molecules/ButtonGroup', + title: 'Experimental/Molecules/ButtonGroup', }; export const Basic = () => html` diff --git a/src/stories/calendar.stories.js b/src/stories/calendar.stories.js index 19a87c87..31fab87b 100644 --- a/src/stories/calendar.stories.js +++ b/src/stories/calendar.stories.js @@ -1,7 +1,7 @@ import '../components/organisms/Calendar/cod-calendar'; export default { - title: 'Components/Organisms/Calendar', + title: 'Experimental/Organisms/Calendar', argTypes: { events: { control: { type: 'text' }, diff --git a/src/stories/card.stories.js b/src/stories/card.stories.js index 2b7a7652..94f0f4e8 100644 --- a/src/stories/card.stories.js +++ b/src/stories/card.stories.js @@ -7,7 +7,7 @@ import '../components/organisms/Card/cod-card'; import '../components/atoms/Button/cod-button'; export default { - title: 'Components/Organisms/Card', + title: 'Experimental/Organisms/Card', }; export const Basic = () => html` diff --git a/src/stories/carousel.stories.js b/src/stories/carousel.stories.js index 14b31793..c8ec4fc7 100644 --- a/src/stories/carousel.stories.js +++ b/src/stories/carousel.stories.js @@ -5,7 +5,7 @@ import '../components/organisms/Carousel/cod-carousel'; import '../components/atoms/Button/cod-button'; export default { - title: 'Components/Organisms/Carousel', + title: 'Experimental/Organisms/Carousel', }; export const Basic = () => html` diff --git a/src/stories/container.stories.js b/src/stories/container.stories.js index 52e21e90..9216f1cb 100644 --- a/src/stories/container.stories.js +++ b/src/stories/container.stories.js @@ -2,7 +2,7 @@ import '../components/atoms/Container/cod-container'; import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { - title: 'Components/Atoms/Container', + title: 'Experimental/Atoms/Container', argTypes: { type: { control: { type: 'select' }, diff --git a/src/stories/countdown.stories.js b/src/stories/countdown.stories.js index b37e6e83..f5dd0689 100644 --- a/src/stories/countdown.stories.js +++ b/src/stories/countdown.stories.js @@ -2,7 +2,7 @@ import '../components/atoms/Countdown/cod-countdown'; import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { - title: 'Components/Atoms/Countdown', + title: 'Experimental/Atoms/Countdown', argTypes: { size: { control: { type: 'select' }, diff --git a/src/stories/dropdown.stories.js b/src/stories/dropdown.stories.js index c24d59e1..0cdc45c5 100644 --- a/src/stories/dropdown.stories.js +++ b/src/stories/dropdown.stories.js @@ -4,7 +4,7 @@ import '../components/atoms/DropdownMenu/cod-dropdown-menu'; import '../components/atoms/Button/cod-button'; export default { - title: 'Components/Molecules/Dropdown', + title: 'Experimental/Molecules/Dropdown', }; export const Basic = () => html` diff --git a/src/stories/form.stories.js b/src/stories/form.stories.js index b027fbfd..2adee7f6 100644 --- a/src/stories/form.stories.js +++ b/src/stories/form.stories.js @@ -2,7 +2,7 @@ import '../components/organisms/Form/cod-form'; import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { - title: 'Forms/FormValidation', + title: 'Experimental/FormValidation', argTypes: { backgroundColor: COMMON_STORY_ARGS.bootstrapColor, }, diff --git a/src/stories/formcheck.stories.js b/src/stories/formcheck.stories.js index 73f51c23..c63ffb19 100644 --- a/src/stories/formcheck.stories.js +++ b/src/stories/formcheck.stories.js @@ -2,7 +2,7 @@ import '../components/atoms/FormCheck/cod-formcheck'; import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { - title: 'Forms/FormCheck', + title: 'Experimental/FormCheck', argTypes: { backgroundColor: COMMON_STORY_ARGS.bootstrapColor, btnColor: COMMON_STORY_ARGS.bootstrapColor, diff --git a/src/stories/formcheckgroup.stories.js b/src/stories/formcheckgroup.stories.js index cd722c5c..9192d754 100644 --- a/src/stories/formcheckgroup.stories.js +++ b/src/stories/formcheckgroup.stories.js @@ -2,7 +2,7 @@ import { html } from 'lit-html'; import '../components/molecules/FormCheckGroup/cod-form-check-group'; export default { - title: 'Forms/FormCheckGroup', + title: 'Experimental/FormCheckGroup', }; export const RadioGroup = () => html` diff --git a/src/stories/formcontrol.stories.js b/src/stories/formcontrol.stories.js index db207e8d..6d73f3c6 100644 --- a/src/stories/formcontrol.stories.js +++ b/src/stories/formcontrol.stories.js @@ -2,7 +2,7 @@ import '../components/atoms/FormControl/cod-formcontrol'; import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { - title: 'Forms/FormControl', + title: 'Experimental/FormControl', argTypes: { backgroundColor: COMMON_STORY_ARGS.bootstrapColor, // TODO: Add support for xl to make size diff --git a/src/stories/formlabel.stories.js b/src/stories/formlabel.stories.js index e0fac093..ddf750a0 100644 --- a/src/stories/formlabel.stories.js +++ b/src/stories/formlabel.stories.js @@ -2,7 +2,7 @@ import '../components/atoms/FormLabel/cod-formlabel'; import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { - title: 'Forms/FormLabel', + title: 'Experimental/FormLabel', argTypes: { color: COMMON_STORY_ARGS.bootstrapColor, required: COMMON_STORY_ARGS.required, diff --git a/src/stories/formselect.stories.js b/src/stories/formselect.stories.js index 4274c5f4..cb50f521 100644 --- a/src/stories/formselect.stories.js +++ b/src/stories/formselect.stories.js @@ -2,7 +2,7 @@ import '../components/atoms/FormSelect/cod-formselect'; import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { - title: 'Forms/FormSelect', + title: 'Experimental/FormSelect', argTypes: { // TODO: Add support for xl to make size // consistent. Issue #202. diff --git a/src/stories/geocoder.stories.js b/src/stories/geocoder.stories.js index bf7ec3d6..5c7504fc 100644 --- a/src/stories/geocoder.stories.js +++ b/src/stories/geocoder.stories.js @@ -2,7 +2,7 @@ import { html } from 'lit-html'; import '../components/organisms/Geocoder/cod-geocoder'; export default { - title: 'Components/Organisms/geocoder', + title: 'Experimental/Organisms/geocoder', }; export const loaded = () => html``; diff --git a/src/stories/icon.stories.js b/src/stories/icon.stories.js index d5fa4c69..a5314d05 100644 --- a/src/stories/icon.stories.js +++ b/src/stories/icon.stories.js @@ -2,7 +2,7 @@ import '../components/atoms/Icon/cod-icon'; import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { - title: 'Components/Atoms/Icon', + title: 'Experimental/Atoms/Icon', argTypes: { icon: COMMON_STORY_ARGS.icon, size: COMMON_STORY_ARGS.longSize, diff --git a/src/stories/image.stories.js b/src/stories/image.stories.js index 25bb49f4..015a962e 100644 --- a/src/stories/image.stories.js +++ b/src/stories/image.stories.js @@ -2,7 +2,7 @@ import '../components/atoms/Image/cod-image'; import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { - title: 'Components/Atoms/Image', + title: 'Experimental/Atoms/Image', argTypes: { align: { control: { type: 'select' }, diff --git a/src/stories/imgslider.stories.js b/src/stories/imgslider.stories.js index a2470ab0..efd1b0d4 100644 --- a/src/stories/imgslider.stories.js +++ b/src/stories/imgslider.stories.js @@ -4,7 +4,7 @@ import img2 from './assets/example-image2.svg'; import '../components/organisms/ImgSlider/cod-img-slider'; export default { - title: 'Components/Organisms/ImgSlider', + title: 'Experimental/Organisms/ImgSlider', }; export const Basic = () => html` diff --git a/src/stories/infobutton.stories.js b/src/stories/infobutton.stories.js index 1a2a0afa..081a0567 100644 --- a/src/stories/infobutton.stories.js +++ b/src/stories/infobutton.stories.js @@ -4,7 +4,7 @@ import '../components/atoms/InfoButton/cod-info-button'; export default { component: 'cod-info-button', - title: 'Components/Atoms/InfoButton', + title: 'Experimental/Atoms/InfoButton', // 👇 Creates specific argTypes argTypes: { titlePrimary: { diff --git a/src/stories/legacybutton.stories.js b/src/stories/legacybutton.stories.js index a39c21a9..f8c8212d 100644 --- a/src/stories/legacybutton.stories.js +++ b/src/stories/legacybutton.stories.js @@ -2,7 +2,7 @@ import '../components/atoms/LegacyButton/cod-legacy-button'; import { html } from 'lit-html'; export default { - title: 'Components/Atoms/LegacyButton', + title: 'Experimental/Atoms/LegacyButton', argTypes: { icon: { control: { type: 'select' }, diff --git a/src/stories/legacyicon.stories.js b/src/stories/legacyicon.stories.js index 20c4eb2f..5016aa8f 100644 --- a/src/stories/legacyicon.stories.js +++ b/src/stories/legacyicon.stories.js @@ -2,7 +2,7 @@ import '../components/atoms/LegacyIcon/cod-legacy-icon'; import { html } from 'lit-html'; export default { - title: 'Components/Atoms/LegacyIcon', + title: 'Experimental/Atoms/LegacyIcon', argTypes: { icon: { control: { type: 'select' }, diff --git a/src/stories/listgroup.stories.js b/src/stories/listgroup.stories.js index 20d09d37..b8c3851f 100644 --- a/src/stories/listgroup.stories.js +++ b/src/stories/listgroup.stories.js @@ -3,7 +3,7 @@ import '../components/atoms/ListGroupItem/cod-listgroup-item'; import '../components/molecules/ListGroup/cod-listgroup'; export default { - title: 'Components/Molecules/ListGroup', + title: 'Experimental/Molecules/ListGroup', }; export const Basic = () => html` diff --git a/src/stories/loader.stories.js b/src/stories/loader.stories.js index bcc47589..52b5c6fb 100644 --- a/src/stories/loader.stories.js +++ b/src/stories/loader.stories.js @@ -2,7 +2,7 @@ import '../components/atoms/Loader/cod-loader'; import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { - title: 'Components/Atoms/Loader', + title: 'Experimental/Atoms/Loader', argTypes: { // TODO: Use bootstrap color names. Issue #202. backgroundColor: COMMON_STORY_ARGS.numberColor, diff --git a/src/stories/map.stories.js b/src/stories/map.stories.js index 5bd5e1fd..34a207c8 100644 --- a/src/stories/map.stories.js +++ b/src/stories/map.stories.js @@ -2,7 +2,7 @@ import { html } from 'lit-html'; import '../components/organisms/Map/cod-map'; export default { - title: 'Components/Organisms/Map', + title: 'Experimental/Organisms/Map', }; export const Location = () => diff --git a/src/stories/modal.stories.js b/src/stories/modal.stories.js index 1f12d956..8ec56fd5 100644 --- a/src/stories/modal.stories.js +++ b/src/stories/modal.stories.js @@ -6,7 +6,7 @@ import '../components/organisms/Modal/cod-modal'; import '../components/atoms/Button/cod-button'; export default { - title: 'Components/Organisms/Modal', + title: 'Experimental/Organisms/Modal', }; export const Basic = () => html` diff --git a/src/stories/nav.stories.js b/src/stories/nav.stories.js index 8b8b81ab..4bf7d041 100644 --- a/src/stories/nav.stories.js +++ b/src/stories/nav.stories.js @@ -2,7 +2,7 @@ import { html } from 'lit-html'; import '../components/molecules/Nav/cod-nav'; export default { - title: 'Components/Molecules/Nav', + title: 'Experimental/Molecules/Nav', }; export const Basic = () => html` diff --git a/src/stories/navbar.stories.js b/src/stories/navbar.stories.js index 83d58148..14e24e89 100644 --- a/src/stories/navbar.stories.js +++ b/src/stories/navbar.stories.js @@ -9,7 +9,7 @@ import '../components/atoms/DropdownMenu/cod-dropdown-menu'; import '../components/atoms/Button/cod-button'; export default { - title: 'Components/Organisms/Navbar', + title: 'Experimental/Organisms/Navbar', }; export const Basic = () => html` diff --git a/src/stories/offcanvas.stories.js b/src/stories/offcanvas.stories.js index 8243fa13..34b439b4 100644 --- a/src/stories/offcanvas.stories.js +++ b/src/stories/offcanvas.stories.js @@ -4,7 +4,7 @@ import '../components/atoms/OffcanvasBody/cod-offcanvas-body'; import '../components/organisms/Offcanvas/cod-offcanvas'; export default { - title: 'Components/Organisms/Offcanvas', + title: 'Experimental/Organisms/Offcanvas', }; export const Basic = () => html` diff --git a/src/stories/pagination.stories.js b/src/stories/pagination.stories.js index f40c9d2a..732dcff8 100644 --- a/src/stories/pagination.stories.js +++ b/src/stories/pagination.stories.js @@ -3,7 +3,7 @@ import '../components/atoms/PaginationItem/cod-pagination-item'; import '../components/molecules/Pagination/cod-pagination'; export default { - title: 'Components/Molecules/Pagination', + title: 'Experimental/Molecules/Pagination', }; export const Basic = () => html` diff --git a/src/stories/progress.stories.js b/src/stories/progress.stories.js index 0a8264e1..c8a674cc 100644 --- a/src/stories/progress.stories.js +++ b/src/stories/progress.stories.js @@ -2,7 +2,7 @@ import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; import '../components/atoms/Progress/cod-progress'; export default { - title: 'Components/Atoms/Progress', + title: 'Experimental/Atoms/Progress', argTypes: { backgroundColor: COMMON_STORY_ARGS.bootstrapColor, }, diff --git a/src/stories/range.stories.js b/src/stories/range.stories.js index 8fe2c489..667a270a 100644 --- a/src/stories/range.stories.js +++ b/src/stories/range.stories.js @@ -2,7 +2,7 @@ import '../components/atoms/Range/cod-range'; import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { - title: 'Components/Atoms/Forms/Range', + title: 'Experimental/Atoms/Forms/Range', argTypes: { disable: COMMON_STORY_ARGS.disabled, }, diff --git a/src/stories/spinner.stories.js b/src/stories/spinner.stories.js index 985fb1c5..d32588b7 100644 --- a/src/stories/spinner.stories.js +++ b/src/stories/spinner.stories.js @@ -2,7 +2,7 @@ import '../components/atoms/Spinner/cod-spinner'; import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { - title: 'Components/Atoms/Spinner', + title: 'Experimental/Atoms/Spinner', argTypes: { type: { control: { type: 'select' }, diff --git a/src/stories/table-v2.stories.js b/src/stories/table-v2.stories.js index 4fc369da..00cd9e3d 100644 --- a/src/stories/table-v2.stories.js +++ b/src/stories/table-v2.stories.js @@ -2,7 +2,7 @@ import { html } from 'lit-html'; import '../components/organisms/TableV2/cod-table-v2'; export default { - title: 'Components/Organisms/TableV2', + title: 'Experimental/Organisms/TableV2', }; export const Basic = () => html` diff --git a/src/stories/table.stories.js b/src/stories/table.stories.js index a56eb831..1dd11ba9 100644 --- a/src/stories/table.stories.js +++ b/src/stories/table.stories.js @@ -7,7 +7,7 @@ import '../components/atoms/TableCellHeader/cod-table-cell-header'; import '../components/organisms/Table/cod-table'; export default { - title: 'Components/Organisms/Table', + title: 'Experimental/Organisms/Table', }; export const Basic = () => html` diff --git a/src/stories/videoplayer.stories.js b/src/stories/videoplayer.stories.js index 0ac688cd..ae8bf128 100644 --- a/src/stories/videoplayer.stories.js +++ b/src/stories/videoplayer.stories.js @@ -1,7 +1,7 @@ import '../components/organisms/VideoPlayer/cod-videoplayer'; export default { - title: 'Components/Organisms/VideoPlayer', + title: 'Experimental/Organisms/VideoPlayer', argTypes: { videoType: { control: { type: 'select' }, diff --git a/webpack.config.js b/webpack.config.js index 75adcee8..9e73a422 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -11,9 +11,9 @@ module.exports = function (_env, argv) { return { devtool: isDevelopment && 'cheap-module-source-map', - entry: './src/index.js', + entry: './src/index-experimental.js', output: { - path: path.resolve(__dirname, 'build'), + path: path.resolve(__dirname, 'build/experimental'), filename: 'assets/js/[name].js', publicPath: '', }, From 4cfd88cc798fbc08328fb73757219a23abe4d628 Mon Sep 17 00:00:00 2001 From: Shakira Reid-Thomas Date: Fri, 20 Dec 2024 21:18:34 -0500 Subject: [PATCH 02/15] Ran prettier command for 1 file --- src/stories/Introduction.stories.mdx | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/stories/Introduction.stories.mdx b/src/stories/Introduction.stories.mdx index 8f41feff..c6e70a0b 100644 --- a/src/stories/Introduction.stories.mdx +++ b/src/stories/Introduction.stories.mdx @@ -137,14 +137,19 @@ While viewing a component, to the right of the Canvas there is a tabbed Panel wh

Experimental Components

- The COD UXDS Storybook now includes an Experimental section. These components are in development and should be considered unstable. They are provided for preview and testing purposes only. Please note: + The COD UXDS Storybook now includes an Experimental section. These components + are in development and should be considered unstable. They are provided for + preview and testing purposes only. Please note:

  • Experimental components are not considered stable.
  • Use these components at your own risk.
  • They may undergo significant changes or be removed without notice.
  • -
  • We do not recommend using experimental components in production environments.
  • +
  • + We do not recommend using experimental components in production + environments. +
Configure
From 8a706029de3fde0addf85f1c83b0f0035a5c9608 Mon Sep 17 00:00:00 2001 From: Shakira Reid-Thomas Date: Fri, 3 Jan 2025 10:45:51 -0500 Subject: [PATCH 03/15] Removed the word now from the introduction file --- src/stories/Introduction.stories.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/stories/Introduction.stories.mdx b/src/stories/Introduction.stories.mdx index c6e70a0b..9122a1ec 100644 --- a/src/stories/Introduction.stories.mdx +++ b/src/stories/Introduction.stories.mdx @@ -137,7 +137,7 @@ While viewing a component, to the right of the Canvas there is a tabbed Panel wh

Experimental Components

- The COD UXDS Storybook now includes an Experimental section. These components + The COD UXDS Storybook includes an Experimental section. These components are in development and should be considered unstable. They are provided for preview and testing purposes only. Please note:

From 332acdf9b90d68a269d4c5812d3d2ccd20c01c67 Mon Sep 17 00:00:00 2001 From: Shakira Reid-Thomas Date: Fri, 3 Jan 2025 10:55:44 -0500 Subject: [PATCH 04/15] Ran prettier for one file --- src/stories/Introduction.stories.mdx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/stories/Introduction.stories.mdx b/src/stories/Introduction.stories.mdx index 9122a1ec..5b689037 100644 --- a/src/stories/Introduction.stories.mdx +++ b/src/stories/Introduction.stories.mdx @@ -137,8 +137,8 @@ While viewing a component, to the right of the Canvas there is a tabbed Panel wh

Experimental Components

- The COD UXDS Storybook includes an Experimental section. These components - are in development and should be considered unstable. They are provided for + The COD UXDS Storybook includes an Experimental section. These components are + in development and should be considered unstable. They are provided for preview and testing purposes only. Please note:

From be7420020afa8a432e79fb429acbc9df31ca8dac Mon Sep 17 00:00:00 2001 From: Shakira Reid-Thomas Date: Fri, 3 Jan 2025 11:33:03 -0500 Subject: [PATCH 05/15] Updated COD-Design-System folder structure --- .../atoms/AccordionBody/AccordionBody.css | 0 .../components/atoms/AccordionBody/AccordionBody.js | 0 .../atoms/AccordionBody/cod-accordion-body.js | 0 .../atoms/AccordionHeader/AccordionHeader.css | 0 .../atoms/AccordionHeader/AccordionHeader.js | 0 .../atoms/AccordionHeader/cod-accordion-header.js | 0 .../atoms/AccordionItem/AccordionItem.css | 0 .../components/atoms/AccordionItem/AccordionItem.js | 0 .../atoms/AccordionItem/cod-accordion-item.js | 0 .../components/atoms/ActionButton/ActionButton.css | 0 .../components/atoms/ActionButton/ActionButton.js | 0 .../atoms/ActionButton/cod-action-button.js | 0 .../atoms/ActionButtonV2/ActionButtonV2.css | 0 .../atoms/ActionButtonV2/ActionButtonV2.js | 0 .../atoms/ActionButtonV2/cod-action-button-v2.js | 0 .../components/atoms/Alert/Alert.css | 0 .../components/atoms/Alert/Alert.js | 0 .../components/atoms/Alert/cod-alert.js | 0 .../components/atoms/Badge/Badge.css | 0 .../components/atoms/Badge/Badge.js | 0 .../components/atoms/Badge/cod-badge.js | 0 .../components/atoms/Breadcrumb/Breadcrumb.css | 0 .../components/atoms/Breadcrumb/Breadcrumb.js | 0 .../components/atoms/Breadcrumb/cod-breadcrumb.js | 0 .../components/atoms/Button/Button.css | 0 .../components/atoms/Button/Button.js | 0 .../components/atoms/Button/cod-button.js | 0 .../components/atoms/CardBody/CardBody.css | 0 .../components/atoms/CardBody/CardBody.js | 0 .../components/atoms/CardBody/cod-card-body.js | 0 .../components/atoms/CardFooter/CardFooter.css | 0 .../components/atoms/CardFooter/CardFooter.js | 0 .../components/atoms/CardFooter/cod-card-footer.js | 0 .../components/atoms/CardHeader/CardHeader.css | 0 .../components/atoms/CardHeader/CardHeader.js | 0 .../components/atoms/CardHeader/cod-card-header.js | 0 .../components/atoms/CardOverlay/CardOverlay.css | 0 .../components/atoms/CardOverlay/CardOverlay.js | 0 .../atoms/CardOverlay/cod-card-overlay.js | 0 .../atoms/CarouselCaption/CarouselCaption.css | 0 .../atoms/CarouselCaption/CarouselCaption.js | 0 .../atoms/CarouselCaption/cod-carousel-caption.js | 0 .../components/atoms/CarouselItem/CarouselItem.css | 0 .../components/atoms/CarouselItem/CarouselItem.js | 0 .../atoms/CarouselItem/cod-carousel-item.js | 0 .../components/atoms/Container/Container.css | 0 .../components/atoms/Container/Container.js | 0 .../components/atoms/Container/cod-container.js | 0 .../components/atoms/Countdown/Countdown.css | 0 .../components/atoms/Countdown/Countdown.js | 0 .../components/atoms/Countdown/cod-countdown.js | 0 .../components/atoms/DropdownMenu/DropdownMenu.css | 0 .../components/atoms/DropdownMenu/DropdownMenu.js | 0 .../atoms/DropdownMenu/cod-dropdown-menu.js | 0 .../components/atoms/FormCheck/FormCheck.css | 0 .../components/atoms/FormCheck/FormCheck.js | 0 .../components/atoms/FormCheck/cod-formcheck.js | 0 .../components/atoms/FormControl/FormControl.css | 0 .../components/atoms/FormControl/FormControl.js | 0 .../components/atoms/FormControl/cod-formcontrol.js | 0 .../components/atoms/FormLabel/FormLabel.css | 0 .../components/atoms/FormLabel/FormLabel.js | 0 .../components/atoms/FormLabel/cod-formlabel.js | 0 .../components/atoms/FormSelect/FormSelect.css | 0 .../components/atoms/FormSelect/FormSelect.js | 0 .../components/atoms/FormSelect/cod-formselect.js | 0 .../components/atoms/Icon/Icon.css | 0 .../components/atoms/Icon/Icon.js | 0 .../components/atoms/Icon/cod-icon.js | 0 .../components/atoms/Image/Image.css | 0 .../components/atoms/Image/Image.js | 0 .../components/atoms/Image/cod-image.js | 0 .../components/atoms/InfoButton/InfoButton.css | 0 .../components/atoms/InfoButton/InfoButton.js | 0 .../components/atoms/InfoButton/cod-info-button.js | 0 .../components/atoms/LegacyButton/LegacyButton.css | 0 .../components/atoms/LegacyButton/LegacyButton.js | 0 .../atoms/LegacyButton/cod-legacy-button.js | 0 .../components/atoms/LegacyIcon/LegacyIcon.css | 0 .../components/atoms/LegacyIcon/LegacyIcon.js | 0 .../components/atoms/LegacyIcon/cod-legacy-icon.js | 0 .../atoms/ListGroupItem/ListGroupItem.css | 0 .../components/atoms/ListGroupItem/ListGroupItem.js | 0 .../atoms/ListGroupItem/cod-listgroup-item.js | 0 .../components/atoms/Loader/Loader.css | 0 .../components/atoms/Loader/Loader.js | 0 .../components/atoms/Loader/cod-loader.js | 0 .../components/atoms/ModalBody/ModalBody.css | 0 .../components/atoms/ModalBody/ModalBody.js | 0 .../components/atoms/ModalBody/cod-modal-body.js | 0 .../components/atoms/ModalFooter/ModalFooter.css | 0 .../components/atoms/ModalFooter/ModalFooter.js | 0 .../atoms/ModalFooter/cod-modal-footer.js | 0 .../components/atoms/ModalHeader/ModalHeader.css | 0 .../components/atoms/ModalHeader/ModalHeader.js | 0 .../atoms/ModalHeader/cod-modal-header.js | 0 .../components/atoms/NavbarBrand/NavbarBrand.css | 0 .../components/atoms/NavbarBrand/NavbarBrand.js | 0 .../atoms/NavbarBrand/cod-navbar-brand.js | 0 .../atoms/NavbarCollapse/NavbarCollapse.css | 0 .../atoms/NavbarCollapse/NavbarCollapse.js | 0 .../atoms/NavbarCollapse/cod-navbar-collapse.js | 0 .../atoms/NavbarOffcanvas/NavbarOffcanvas.css | 0 .../atoms/NavbarOffcanvas/NavbarOffcanvas.js | 0 .../atoms/NavbarOffcanvas/cod-navbar-offcanvas.js | 0 .../components/atoms/NavbarToggle/NavbarToggle.css | 0 .../components/atoms/NavbarToggle/NavbarToggle.js | 0 .../atoms/NavbarToggle/cod-navbar-toggle.js | 0 .../atoms/OffcanvasBody/OffcanvasBody.css | 0 .../atoms/OffcanvasBody/OffcanvasBody.css.map | 0 .../components/atoms/OffcanvasBody/OffcanvasBody.js | 0 .../atoms/OffcanvasBody/OffcanvasBody.scss | 0 .../atoms/OffcanvasBody/cod-offcanvas-body.js | 0 .../atoms/OffcanvasHeader/OffcanvasHeader.css | 0 .../atoms/OffcanvasHeader/OffcanvasHeader.css.map | 0 .../atoms/OffcanvasHeader/OffcanvasHeader.js | 0 .../atoms/OffcanvasHeader/OffcanvasHeader.scss | 0 .../atoms/OffcanvasHeader/cod-offcanvas-header.js | 0 .../atoms/PaginationItem/PaginationItem.css | 0 .../atoms/PaginationItem/PaginationItem.js | 0 .../atoms/PaginationItem/cod-pagination-item.js | 0 .../components/atoms/Progress/Progress.css | 0 .../components/atoms/Progress/Progress.js | 0 .../components/atoms/Progress/cod-progress.js | 0 .../components/atoms/Range/Range.css | 0 .../components/atoms/Range/Range.js | 0 .../components/atoms/Range/cod-range.js | 0 .../components/atoms/Spinner/Spinner.css | 0 .../components/atoms/Spinner/Spinner.js | 0 .../components/atoms/Spinner/cod-spinner.js | 0 .../components/atoms/TableBody/TableBody.css | 0 .../components/atoms/TableBody/TableBody.js | 0 .../components/atoms/TableBody/cod-table-body.js | 0 .../components/atoms/TableCell/TableCell.css | 0 .../components/atoms/TableCell/TableCell.css.map | 0 .../components/atoms/TableCell/TableCell.js | 0 .../components/atoms/TableCell/TableCell.scss | 0 .../components/atoms/TableCell/cod-table-cell.js | 0 .../atoms/TableCellHeader/TableCellHeader.css | 0 .../atoms/TableCellHeader/TableCellHeader.css.map | 0 .../atoms/TableCellHeader/TableCellHeader.js | 0 .../atoms/TableCellHeader/TableCellHeader.scss | 0 .../atoms/TableCellHeader/cod-table-cell-header.js | 0 .../components/atoms/TableHeader/TableHeader.css | 0 .../atoms/TableHeader/TableHeader.css.map | 0 .../components/atoms/TableHeader/TableHeader.js | 0 .../components/atoms/TableHeader/TableHeader.scss | 0 .../atoms/TableHeader/cod-table-header.js | 0 .../components/atoms/TableRow/TableRow.css | 0 .../components/atoms/TableRow/TableRow.css.map | 0 .../components/atoms/TableRow/TableRow.js | 0 .../components/atoms/TableRow/TableRow.scss | 0 .../components/atoms/TableRow/cod-table-row.js | 0 .../components/molecules/Accordion/Accordion.css | 0 .../components/molecules/Accordion/Accordion.js | 0 .../components/molecules/Accordion/cod-accordion.js | 0 .../molecules/ButtonGroup/ButtonGroup.css | 0 .../components/molecules/ButtonGroup/ButtonGroup.js | 0 .../molecules/ButtonGroup/cod-button-group.js | 0 .../components/molecules/Dropdown/Dropdown.css | 0 .../components/molecules/Dropdown/Dropdown.js | 0 .../components/molecules/Dropdown/cod-dropdown.js | 0 .../molecules/FormCheckGroup/FormCheckGroup.js | 0 .../FormCheckGroup/FormCheckGroupStyles.css | 0 .../FormCheckGroup/cod-form-check-group.js | 0 .../components/molecules/ListGroup/ListGroup.css | 0 .../components/molecules/ListGroup/ListGroup.js | 0 .../components/molecules/ListGroup/cod-listgroup.js | 0 .../components/molecules/Nav/Nav.css | 0 .../components/molecules/Nav/Nav.css.map | 0 .../components/molecules/Nav/Nav.js | 0 .../components/molecules/Nav/Nav.scss | 0 .../components/molecules/Nav/cod-nav.js | 0 .../components/molecules/Pagination/Pagination.css | 0 .../components/molecules/Pagination/Pagination.js | 0 .../molecules/Pagination/cod-pagination.js | 0 .../organisms/ArticleCard/ArticleCard.css | 0 .../organisms/ArticleCard/ArticleCard.css.map | 0 .../components/organisms/ArticleCard/ArticleCard.js | 0 .../organisms/ArticleCard/ArticleCard.scss | 0 .../organisms/ArticleCard/cod-article-card.js | 0 .../components/organisms/Calendar/Calendar.css | 0 .../components/organisms/Calendar/Calendar.js | 0 .../components/organisms/Calendar/cod-calendar.js | 0 .../components/organisms/Card/Card.css | 0 .../components/organisms/Card/Card.js | 0 .../components/organisms/Card/cod-card.js | 0 .../components/organisms/Carousel/Carousel.css | 0 .../components/organisms/Carousel/Carousel.js | 0 .../components/organisms/Carousel/cod-carousel.js | 0 .../components/organisms/Form/Form.css | 0 .../components/organisms/Form/Form.js | 0 .../components/organisms/Form/cod-form.js | 0 .../components/organisms/Geocoder/Geocoder.css | 0 .../components/organisms/Geocoder/Geocoder.js | 0 .../components/organisms/Geocoder/cod-geocoder.js | 0 .../components/organisms/ImgSlider/ImgSlider.css | 0 .../components/organisms/ImgSlider/ImgSlider.js | 0 .../organisms/ImgSlider/cod-img-slider.js | 0 .../components/organisms/Map/Map.css | 0 .../components/organisms/Map/Map.js | 0 .../components/organisms/Map/cod-map.js | 0 .../components/organisms/Map/style.json | 0 .../components/organisms/Modal/Modal.css | 0 .../components/organisms/Modal/Modal.js | 0 .../components/organisms/Modal/cod-modal.js | 0 .../components/organisms/Navbar/Navbar.css | 0 .../components/organisms/Navbar/Navbar.js | 0 .../components/organisms/Navbar/cod-navbar.js | 0 .../components/organisms/Offcanvas/Offcanvas.css | 0 .../organisms/Offcanvas/Offcanvas.css.map | 0 .../components/organisms/Offcanvas/Offcanvas.js | 0 .../components/organisms/Offcanvas/Offcanvas.scss | 0 .../components/organisms/Offcanvas/cod-offcanvas.js | 0 .../components/organisms/Table/Table.css | 0 .../components/organisms/Table/Table.js | 0 .../components/organisms/Table/cod-table.js | 0 .../components/organisms/TableV2/TableV2.css | 0 .../components/organisms/TableV2/TableV2.css.map | 0 .../components/organisms/TableV2/TableV2.js | 0 .../components/organisms/TableV2/TableV2.scss | 0 .../components/organisms/TableV2/cod-table-v2.js | 0 .../organisms/VideoPlayer/VideoPlayer.css | 0 .../organisms/VideoPlayer/VideoPlayer.css.map | 0 .../components/organisms/VideoPlayer/VideoPlayer.js | 0 .../organisms/VideoPlayer/VideoPlayer.scss | 0 .../organisms/VideoPlayer/cod-videoplayer.js | 0 src/{ => experimental}/index-experimental.js | 0 .../stories/Introduction.stories.mdx | 3 +-- src/{ => experimental}/stories/Setup.stories.mdx | 0 src/{ => experimental}/stories/Styles.stories.mdx | 0 src/{ => experimental}/stories/accordion.stories.js | 0 .../stories/actionbutton.stories.js | 0 .../stories/actionbuttonV2.stories.js | 0 src/{ => experimental}/stories/alert.stories.js | 0 .../stories/articlecard.stories.js | 0 src/{ => experimental}/stories/assets/building.png | Bin .../stories/assets/code-brackets.svg | 0 src/{ => experimental}/stories/assets/colors.svg | 0 src/{ => experimental}/stories/assets/comments.svg | 0 src/{ => experimental}/stories/assets/direction.svg | 0 .../stories/assets/example-image.svg | 0 .../stories/assets/example-image2.svg | 0 src/{ => experimental}/stories/assets/flow.svg | 0 src/{ => experimental}/stories/assets/hook.png | Bin src/{ => experimental}/stories/assets/plugin.svg | 0 src/{ => experimental}/stories/assets/repo.svg | 0 src/{ => experimental}/stories/assets/stackalt.svg | 0 src/{ => experimental}/stories/badge.stories.js | 0 .../stories/breadcrumb.stories.js | 0 src/{ => experimental}/stories/button.stories.js | 0 .../stories/buttongroup.stories.js | 0 src/{ => experimental}/stories/calendar.stories.js | 0 src/{ => experimental}/stories/card.stories.js | 0 src/{ => experimental}/stories/carousel.stories.js | 0 src/{ => experimental}/stories/container.stories.js | 0 src/{ => experimental}/stories/countdown.stories.js | 0 src/{ => experimental}/stories/dropdown.stories.js | 0 src/{ => experimental}/stories/extra-txt.txt | 0 src/{ => experimental}/stories/form.stories.js | 0 src/{ => experimental}/stories/formcheck.stories.js | 0 .../stories/formcheckgroup.stories.js | 0 .../stories/formcontrol.stories.js | 0 src/{ => experimental}/stories/formlabel.stories.js | 0 .../stories/formselect.stories.js | 0 src/{ => experimental}/stories/geocoder.stories.js | 0 src/{ => experimental}/stories/icon.stories.js | 0 src/{ => experimental}/stories/image.stories.js | 0 src/{ => experimental}/stories/imgslider.stories.js | 0 .../stories/infobutton.stories.js | 0 .../stories/legacybutton.stories.js | 0 .../stories/legacyicon.stories.js | 0 src/{ => experimental}/stories/listgroup.stories.js | 0 src/{ => experimental}/stories/loader.stories.js | 0 src/{ => experimental}/stories/map.stories.js | 0 src/{ => experimental}/stories/modal.stories.js | 0 src/{ => experimental}/stories/nav.stories.js | 0 src/{ => experimental}/stories/navbar.stories.js | 0 src/{ => experimental}/stories/offcanvas.stories.js | 0 .../stories/pagination.stories.js | 0 src/{ => experimental}/stories/progress.stories.js | 0 src/{ => experimental}/stories/range.stories.js | 0 src/{ => experimental}/stories/spinner.stories.js | 0 src/{ => experimental}/stories/table-v2.stories.js | 0 src/{ => experimental}/stories/table.stories.js | 0 .../stories/videoplayer.stories.js | 0 src/stable/index-stable.js | 0 287 files changed, 1 insertion(+), 2 deletions(-) rename src/{ => experimental}/components/atoms/AccordionBody/AccordionBody.css (100%) rename src/{ => experimental}/components/atoms/AccordionBody/AccordionBody.js (100%) rename src/{ => experimental}/components/atoms/AccordionBody/cod-accordion-body.js (100%) rename src/{ => experimental}/components/atoms/AccordionHeader/AccordionHeader.css (100%) rename src/{ => experimental}/components/atoms/AccordionHeader/AccordionHeader.js (100%) rename src/{ => experimental}/components/atoms/AccordionHeader/cod-accordion-header.js (100%) rename src/{ => experimental}/components/atoms/AccordionItem/AccordionItem.css (100%) rename src/{ => experimental}/components/atoms/AccordionItem/AccordionItem.js (100%) rename src/{ => experimental}/components/atoms/AccordionItem/cod-accordion-item.js (100%) rename src/{ => experimental}/components/atoms/ActionButton/ActionButton.css (100%) rename src/{ => experimental}/components/atoms/ActionButton/ActionButton.js (100%) rename src/{ => experimental}/components/atoms/ActionButton/cod-action-button.js (100%) rename src/{ => experimental}/components/atoms/ActionButtonV2/ActionButtonV2.css (100%) rename src/{ => experimental}/components/atoms/ActionButtonV2/ActionButtonV2.js (100%) rename src/{ => experimental}/components/atoms/ActionButtonV2/cod-action-button-v2.js (100%) rename src/{ => experimental}/components/atoms/Alert/Alert.css (100%) rename src/{ => experimental}/components/atoms/Alert/Alert.js (100%) rename src/{ => experimental}/components/atoms/Alert/cod-alert.js (100%) rename src/{ => experimental}/components/atoms/Badge/Badge.css (100%) rename src/{ => experimental}/components/atoms/Badge/Badge.js (100%) rename src/{ => experimental}/components/atoms/Badge/cod-badge.js (100%) rename src/{ => experimental}/components/atoms/Breadcrumb/Breadcrumb.css (100%) rename src/{ => experimental}/components/atoms/Breadcrumb/Breadcrumb.js (100%) rename src/{ => experimental}/components/atoms/Breadcrumb/cod-breadcrumb.js (100%) rename src/{ => experimental}/components/atoms/Button/Button.css (100%) rename src/{ => experimental}/components/atoms/Button/Button.js (100%) rename src/{ => experimental}/components/atoms/Button/cod-button.js (100%) rename src/{ => experimental}/components/atoms/CardBody/CardBody.css (100%) rename src/{ => experimental}/components/atoms/CardBody/CardBody.js (100%) rename src/{ => experimental}/components/atoms/CardBody/cod-card-body.js (100%) rename src/{ => experimental}/components/atoms/CardFooter/CardFooter.css (100%) rename src/{ => experimental}/components/atoms/CardFooter/CardFooter.js (100%) rename src/{ => experimental}/components/atoms/CardFooter/cod-card-footer.js (100%) rename src/{ => experimental}/components/atoms/CardHeader/CardHeader.css (100%) rename src/{ => experimental}/components/atoms/CardHeader/CardHeader.js (100%) rename src/{ => experimental}/components/atoms/CardHeader/cod-card-header.js (100%) rename src/{ => experimental}/components/atoms/CardOverlay/CardOverlay.css (100%) rename src/{ => experimental}/components/atoms/CardOverlay/CardOverlay.js (100%) rename src/{ => experimental}/components/atoms/CardOverlay/cod-card-overlay.js (100%) rename src/{ => experimental}/components/atoms/CarouselCaption/CarouselCaption.css (100%) rename src/{ => experimental}/components/atoms/CarouselCaption/CarouselCaption.js (100%) rename src/{ => experimental}/components/atoms/CarouselCaption/cod-carousel-caption.js (100%) rename src/{ => experimental}/components/atoms/CarouselItem/CarouselItem.css (100%) rename src/{ => experimental}/components/atoms/CarouselItem/CarouselItem.js (100%) rename src/{ => experimental}/components/atoms/CarouselItem/cod-carousel-item.js (100%) rename src/{ => experimental}/components/atoms/Container/Container.css (100%) rename src/{ => experimental}/components/atoms/Container/Container.js (100%) rename src/{ => experimental}/components/atoms/Container/cod-container.js (100%) rename src/{ => experimental}/components/atoms/Countdown/Countdown.css (100%) rename src/{ => experimental}/components/atoms/Countdown/Countdown.js (100%) rename src/{ => experimental}/components/atoms/Countdown/cod-countdown.js (100%) rename src/{ => experimental}/components/atoms/DropdownMenu/DropdownMenu.css (100%) rename src/{ => experimental}/components/atoms/DropdownMenu/DropdownMenu.js (100%) rename src/{ => experimental}/components/atoms/DropdownMenu/cod-dropdown-menu.js (100%) rename src/{ => experimental}/components/atoms/FormCheck/FormCheck.css (100%) rename src/{ => experimental}/components/atoms/FormCheck/FormCheck.js (100%) rename src/{ => experimental}/components/atoms/FormCheck/cod-formcheck.js (100%) rename src/{ => experimental}/components/atoms/FormControl/FormControl.css (100%) rename src/{ => experimental}/components/atoms/FormControl/FormControl.js (100%) rename src/{ => experimental}/components/atoms/FormControl/cod-formcontrol.js (100%) rename src/{ => experimental}/components/atoms/FormLabel/FormLabel.css (100%) rename src/{ => experimental}/components/atoms/FormLabel/FormLabel.js (100%) rename src/{ => experimental}/components/atoms/FormLabel/cod-formlabel.js (100%) rename src/{ => experimental}/components/atoms/FormSelect/FormSelect.css (100%) rename src/{ => experimental}/components/atoms/FormSelect/FormSelect.js (100%) rename src/{ => experimental}/components/atoms/FormSelect/cod-formselect.js (100%) rename src/{ => experimental}/components/atoms/Icon/Icon.css (100%) rename src/{ => experimental}/components/atoms/Icon/Icon.js (100%) rename src/{ => experimental}/components/atoms/Icon/cod-icon.js (100%) rename src/{ => experimental}/components/atoms/Image/Image.css (100%) rename src/{ => experimental}/components/atoms/Image/Image.js (100%) rename src/{ => experimental}/components/atoms/Image/cod-image.js (100%) rename src/{ => experimental}/components/atoms/InfoButton/InfoButton.css (100%) rename src/{ => experimental}/components/atoms/InfoButton/InfoButton.js (100%) rename src/{ => experimental}/components/atoms/InfoButton/cod-info-button.js (100%) rename src/{ => experimental}/components/atoms/LegacyButton/LegacyButton.css (100%) rename src/{ => experimental}/components/atoms/LegacyButton/LegacyButton.js (100%) rename src/{ => experimental}/components/atoms/LegacyButton/cod-legacy-button.js (100%) rename src/{ => experimental}/components/atoms/LegacyIcon/LegacyIcon.css (100%) rename src/{ => experimental}/components/atoms/LegacyIcon/LegacyIcon.js (100%) rename src/{ => experimental}/components/atoms/LegacyIcon/cod-legacy-icon.js (100%) rename src/{ => experimental}/components/atoms/ListGroupItem/ListGroupItem.css (100%) rename src/{ => experimental}/components/atoms/ListGroupItem/ListGroupItem.js (100%) rename src/{ => experimental}/components/atoms/ListGroupItem/cod-listgroup-item.js (100%) rename src/{ => experimental}/components/atoms/Loader/Loader.css (100%) rename src/{ => experimental}/components/atoms/Loader/Loader.js (100%) rename src/{ => experimental}/components/atoms/Loader/cod-loader.js (100%) rename src/{ => experimental}/components/atoms/ModalBody/ModalBody.css (100%) rename src/{ => experimental}/components/atoms/ModalBody/ModalBody.js (100%) rename src/{ => experimental}/components/atoms/ModalBody/cod-modal-body.js (100%) rename src/{ => experimental}/components/atoms/ModalFooter/ModalFooter.css (100%) rename src/{ => experimental}/components/atoms/ModalFooter/ModalFooter.js (100%) rename src/{ => experimental}/components/atoms/ModalFooter/cod-modal-footer.js (100%) rename src/{ => experimental}/components/atoms/ModalHeader/ModalHeader.css (100%) rename src/{ => experimental}/components/atoms/ModalHeader/ModalHeader.js (100%) rename src/{ => experimental}/components/atoms/ModalHeader/cod-modal-header.js (100%) rename src/{ => experimental}/components/atoms/NavbarBrand/NavbarBrand.css (100%) rename src/{ => experimental}/components/atoms/NavbarBrand/NavbarBrand.js (100%) rename src/{ => experimental}/components/atoms/NavbarBrand/cod-navbar-brand.js (100%) rename src/{ => experimental}/components/atoms/NavbarCollapse/NavbarCollapse.css (100%) rename src/{ => experimental}/components/atoms/NavbarCollapse/NavbarCollapse.js (100%) rename src/{ => experimental}/components/atoms/NavbarCollapse/cod-navbar-collapse.js (100%) rename src/{ => experimental}/components/atoms/NavbarOffcanvas/NavbarOffcanvas.css (100%) rename src/{ => experimental}/components/atoms/NavbarOffcanvas/NavbarOffcanvas.js (100%) rename src/{ => experimental}/components/atoms/NavbarOffcanvas/cod-navbar-offcanvas.js (100%) rename src/{ => experimental}/components/atoms/NavbarToggle/NavbarToggle.css (100%) rename src/{ => experimental}/components/atoms/NavbarToggle/NavbarToggle.js (100%) rename src/{ => experimental}/components/atoms/NavbarToggle/cod-navbar-toggle.js (100%) rename src/{ => experimental}/components/atoms/OffcanvasBody/OffcanvasBody.css (100%) rename src/{ => experimental}/components/atoms/OffcanvasBody/OffcanvasBody.css.map (100%) rename src/{ => experimental}/components/atoms/OffcanvasBody/OffcanvasBody.js (100%) rename src/{ => experimental}/components/atoms/OffcanvasBody/OffcanvasBody.scss (100%) rename src/{ => experimental}/components/atoms/OffcanvasBody/cod-offcanvas-body.js (100%) rename src/{ => experimental}/components/atoms/OffcanvasHeader/OffcanvasHeader.css (100%) rename src/{ => experimental}/components/atoms/OffcanvasHeader/OffcanvasHeader.css.map (100%) rename src/{ => experimental}/components/atoms/OffcanvasHeader/OffcanvasHeader.js (100%) rename src/{ => experimental}/components/atoms/OffcanvasHeader/OffcanvasHeader.scss (100%) rename src/{ => experimental}/components/atoms/OffcanvasHeader/cod-offcanvas-header.js (100%) rename src/{ => experimental}/components/atoms/PaginationItem/PaginationItem.css (100%) rename src/{ => experimental}/components/atoms/PaginationItem/PaginationItem.js (100%) rename src/{ => experimental}/components/atoms/PaginationItem/cod-pagination-item.js (100%) rename src/{ => experimental}/components/atoms/Progress/Progress.css (100%) rename src/{ => experimental}/components/atoms/Progress/Progress.js (100%) rename src/{ => experimental}/components/atoms/Progress/cod-progress.js (100%) rename src/{ => experimental}/components/atoms/Range/Range.css (100%) rename src/{ => experimental}/components/atoms/Range/Range.js (100%) rename src/{ => experimental}/components/atoms/Range/cod-range.js (100%) rename src/{ => experimental}/components/atoms/Spinner/Spinner.css (100%) rename src/{ => experimental}/components/atoms/Spinner/Spinner.js (100%) rename src/{ => experimental}/components/atoms/Spinner/cod-spinner.js (100%) rename src/{ => experimental}/components/atoms/TableBody/TableBody.css (100%) rename src/{ => experimental}/components/atoms/TableBody/TableBody.js (100%) rename src/{ => experimental}/components/atoms/TableBody/cod-table-body.js (100%) rename src/{ => experimental}/components/atoms/TableCell/TableCell.css (100%) rename src/{ => experimental}/components/atoms/TableCell/TableCell.css.map (100%) rename src/{ => experimental}/components/atoms/TableCell/TableCell.js (100%) rename src/{ => experimental}/components/atoms/TableCell/TableCell.scss (100%) rename src/{ => experimental}/components/atoms/TableCell/cod-table-cell.js (100%) rename src/{ => experimental}/components/atoms/TableCellHeader/TableCellHeader.css (100%) rename src/{ => experimental}/components/atoms/TableCellHeader/TableCellHeader.css.map (100%) rename src/{ => experimental}/components/atoms/TableCellHeader/TableCellHeader.js (100%) rename src/{ => experimental}/components/atoms/TableCellHeader/TableCellHeader.scss (100%) rename src/{ => experimental}/components/atoms/TableCellHeader/cod-table-cell-header.js (100%) rename src/{ => experimental}/components/atoms/TableHeader/TableHeader.css (100%) rename src/{ => experimental}/components/atoms/TableHeader/TableHeader.css.map (100%) rename src/{ => experimental}/components/atoms/TableHeader/TableHeader.js (100%) rename src/{ => experimental}/components/atoms/TableHeader/TableHeader.scss (100%) rename src/{ => experimental}/components/atoms/TableHeader/cod-table-header.js (100%) rename src/{ => experimental}/components/atoms/TableRow/TableRow.css (100%) rename src/{ => experimental}/components/atoms/TableRow/TableRow.css.map (100%) rename src/{ => experimental}/components/atoms/TableRow/TableRow.js (100%) rename src/{ => experimental}/components/atoms/TableRow/TableRow.scss (100%) rename src/{ => experimental}/components/atoms/TableRow/cod-table-row.js (100%) rename src/{ => experimental}/components/molecules/Accordion/Accordion.css (100%) rename src/{ => experimental}/components/molecules/Accordion/Accordion.js (100%) rename src/{ => experimental}/components/molecules/Accordion/cod-accordion.js (100%) rename src/{ => experimental}/components/molecules/ButtonGroup/ButtonGroup.css (100%) rename src/{ => experimental}/components/molecules/ButtonGroup/ButtonGroup.js (100%) rename src/{ => experimental}/components/molecules/ButtonGroup/cod-button-group.js (100%) rename src/{ => experimental}/components/molecules/Dropdown/Dropdown.css (100%) rename src/{ => experimental}/components/molecules/Dropdown/Dropdown.js (100%) rename src/{ => experimental}/components/molecules/Dropdown/cod-dropdown.js (100%) rename src/{ => experimental}/components/molecules/FormCheckGroup/FormCheckGroup.js (100%) rename src/{ => experimental}/components/molecules/FormCheckGroup/FormCheckGroupStyles.css (100%) rename src/{ => experimental}/components/molecules/FormCheckGroup/cod-form-check-group.js (100%) rename src/{ => experimental}/components/molecules/ListGroup/ListGroup.css (100%) rename src/{ => experimental}/components/molecules/ListGroup/ListGroup.js (100%) rename src/{ => experimental}/components/molecules/ListGroup/cod-listgroup.js (100%) rename src/{ => experimental}/components/molecules/Nav/Nav.css (100%) rename src/{ => experimental}/components/molecules/Nav/Nav.css.map (100%) rename src/{ => experimental}/components/molecules/Nav/Nav.js (100%) rename src/{ => experimental}/components/molecules/Nav/Nav.scss (100%) rename src/{ => experimental}/components/molecules/Nav/cod-nav.js (100%) rename src/{ => experimental}/components/molecules/Pagination/Pagination.css (100%) rename src/{ => experimental}/components/molecules/Pagination/Pagination.js (100%) rename src/{ => experimental}/components/molecules/Pagination/cod-pagination.js (100%) rename src/{ => experimental}/components/organisms/ArticleCard/ArticleCard.css (100%) rename src/{ => experimental}/components/organisms/ArticleCard/ArticleCard.css.map (100%) rename src/{ => experimental}/components/organisms/ArticleCard/ArticleCard.js (100%) rename src/{ => experimental}/components/organisms/ArticleCard/ArticleCard.scss (100%) rename src/{ => experimental}/components/organisms/ArticleCard/cod-article-card.js (100%) rename src/{ => experimental}/components/organisms/Calendar/Calendar.css (100%) rename src/{ => experimental}/components/organisms/Calendar/Calendar.js (100%) rename src/{ => experimental}/components/organisms/Calendar/cod-calendar.js (100%) rename src/{ => experimental}/components/organisms/Card/Card.css (100%) rename src/{ => experimental}/components/organisms/Card/Card.js (100%) rename src/{ => experimental}/components/organisms/Card/cod-card.js (100%) rename src/{ => experimental}/components/organisms/Carousel/Carousel.css (100%) rename src/{ => experimental}/components/organisms/Carousel/Carousel.js (100%) rename src/{ => experimental}/components/organisms/Carousel/cod-carousel.js (100%) rename src/{ => experimental}/components/organisms/Form/Form.css (100%) rename src/{ => experimental}/components/organisms/Form/Form.js (100%) rename src/{ => experimental}/components/organisms/Form/cod-form.js (100%) rename src/{ => experimental}/components/organisms/Geocoder/Geocoder.css (100%) rename src/{ => experimental}/components/organisms/Geocoder/Geocoder.js (100%) rename src/{ => experimental}/components/organisms/Geocoder/cod-geocoder.js (100%) rename src/{ => experimental}/components/organisms/ImgSlider/ImgSlider.css (100%) rename src/{ => experimental}/components/organisms/ImgSlider/ImgSlider.js (100%) rename src/{ => experimental}/components/organisms/ImgSlider/cod-img-slider.js (100%) rename src/{ => experimental}/components/organisms/Map/Map.css (100%) rename src/{ => experimental}/components/organisms/Map/Map.js (100%) rename src/{ => experimental}/components/organisms/Map/cod-map.js (100%) rename src/{ => experimental}/components/organisms/Map/style.json (100%) rename src/{ => experimental}/components/organisms/Modal/Modal.css (100%) rename src/{ => experimental}/components/organisms/Modal/Modal.js (100%) rename src/{ => experimental}/components/organisms/Modal/cod-modal.js (100%) rename src/{ => experimental}/components/organisms/Navbar/Navbar.css (100%) rename src/{ => experimental}/components/organisms/Navbar/Navbar.js (100%) rename src/{ => experimental}/components/organisms/Navbar/cod-navbar.js (100%) rename src/{ => experimental}/components/organisms/Offcanvas/Offcanvas.css (100%) rename src/{ => experimental}/components/organisms/Offcanvas/Offcanvas.css.map (100%) rename src/{ => experimental}/components/organisms/Offcanvas/Offcanvas.js (100%) rename src/{ => experimental}/components/organisms/Offcanvas/Offcanvas.scss (100%) rename src/{ => experimental}/components/organisms/Offcanvas/cod-offcanvas.js (100%) rename src/{ => experimental}/components/organisms/Table/Table.css (100%) rename src/{ => experimental}/components/organisms/Table/Table.js (100%) rename src/{ => experimental}/components/organisms/Table/cod-table.js (100%) rename src/{ => experimental}/components/organisms/TableV2/TableV2.css (100%) rename src/{ => experimental}/components/organisms/TableV2/TableV2.css.map (100%) rename src/{ => experimental}/components/organisms/TableV2/TableV2.js (100%) rename src/{ => experimental}/components/organisms/TableV2/TableV2.scss (100%) rename src/{ => experimental}/components/organisms/TableV2/cod-table-v2.js (100%) rename src/{ => experimental}/components/organisms/VideoPlayer/VideoPlayer.css (100%) rename src/{ => experimental}/components/organisms/VideoPlayer/VideoPlayer.css.map (100%) rename src/{ => experimental}/components/organisms/VideoPlayer/VideoPlayer.js (100%) rename src/{ => experimental}/components/organisms/VideoPlayer/VideoPlayer.scss (100%) rename src/{ => experimental}/components/organisms/VideoPlayer/cod-videoplayer.js (100%) rename src/{ => experimental}/index-experimental.js (100%) rename src/{ => experimental}/stories/Introduction.stories.mdx (99%) rename src/{ => experimental}/stories/Setup.stories.mdx (100%) rename src/{ => experimental}/stories/Styles.stories.mdx (100%) rename src/{ => experimental}/stories/accordion.stories.js (100%) rename src/{ => experimental}/stories/actionbutton.stories.js (100%) rename src/{ => experimental}/stories/actionbuttonV2.stories.js (100%) rename src/{ => experimental}/stories/alert.stories.js (100%) rename src/{ => experimental}/stories/articlecard.stories.js (100%) rename src/{ => experimental}/stories/assets/building.png (100%) rename src/{ => experimental}/stories/assets/code-brackets.svg (100%) rename src/{ => experimental}/stories/assets/colors.svg (100%) rename src/{ => experimental}/stories/assets/comments.svg (100%) rename src/{ => experimental}/stories/assets/direction.svg (100%) rename src/{ => experimental}/stories/assets/example-image.svg (100%) rename src/{ => experimental}/stories/assets/example-image2.svg (100%) rename src/{ => experimental}/stories/assets/flow.svg (100%) rename src/{ => experimental}/stories/assets/hook.png (100%) rename src/{ => experimental}/stories/assets/plugin.svg (100%) rename src/{ => experimental}/stories/assets/repo.svg (100%) rename src/{ => experimental}/stories/assets/stackalt.svg (100%) rename src/{ => experimental}/stories/badge.stories.js (100%) rename src/{ => experimental}/stories/breadcrumb.stories.js (100%) rename src/{ => experimental}/stories/button.stories.js (100%) rename src/{ => experimental}/stories/buttongroup.stories.js (100%) rename src/{ => experimental}/stories/calendar.stories.js (100%) rename src/{ => experimental}/stories/card.stories.js (100%) rename src/{ => experimental}/stories/carousel.stories.js (100%) rename src/{ => experimental}/stories/container.stories.js (100%) rename src/{ => experimental}/stories/countdown.stories.js (100%) rename src/{ => experimental}/stories/dropdown.stories.js (100%) rename src/{ => experimental}/stories/extra-txt.txt (100%) rename src/{ => experimental}/stories/form.stories.js (100%) rename src/{ => experimental}/stories/formcheck.stories.js (100%) rename src/{ => experimental}/stories/formcheckgroup.stories.js (100%) rename src/{ => experimental}/stories/formcontrol.stories.js (100%) rename src/{ => experimental}/stories/formlabel.stories.js (100%) rename src/{ => experimental}/stories/formselect.stories.js (100%) rename src/{ => experimental}/stories/geocoder.stories.js (100%) rename src/{ => experimental}/stories/icon.stories.js (100%) rename src/{ => experimental}/stories/image.stories.js (100%) rename src/{ => experimental}/stories/imgslider.stories.js (100%) rename src/{ => experimental}/stories/infobutton.stories.js (100%) rename src/{ => experimental}/stories/legacybutton.stories.js (100%) rename src/{ => experimental}/stories/legacyicon.stories.js (100%) rename src/{ => experimental}/stories/listgroup.stories.js (100%) rename src/{ => experimental}/stories/loader.stories.js (100%) rename src/{ => experimental}/stories/map.stories.js (100%) rename src/{ => experimental}/stories/modal.stories.js (100%) rename src/{ => experimental}/stories/nav.stories.js (100%) rename src/{ => experimental}/stories/navbar.stories.js (100%) rename src/{ => experimental}/stories/offcanvas.stories.js (100%) rename src/{ => experimental}/stories/pagination.stories.js (100%) rename src/{ => experimental}/stories/progress.stories.js (100%) rename src/{ => experimental}/stories/range.stories.js (100%) rename src/{ => experimental}/stories/spinner.stories.js (100%) rename src/{ => experimental}/stories/table-v2.stories.js (100%) rename src/{ => experimental}/stories/table.stories.js (100%) rename src/{ => experimental}/stories/videoplayer.stories.js (100%) create mode 100644 src/stable/index-stable.js diff --git a/src/components/atoms/AccordionBody/AccordionBody.css b/src/experimental/components/atoms/AccordionBody/AccordionBody.css similarity index 100% rename from src/components/atoms/AccordionBody/AccordionBody.css rename to src/experimental/components/atoms/AccordionBody/AccordionBody.css diff --git a/src/components/atoms/AccordionBody/AccordionBody.js b/src/experimental/components/atoms/AccordionBody/AccordionBody.js similarity index 100% rename from src/components/atoms/AccordionBody/AccordionBody.js rename to src/experimental/components/atoms/AccordionBody/AccordionBody.js diff --git a/src/components/atoms/AccordionBody/cod-accordion-body.js b/src/experimental/components/atoms/AccordionBody/cod-accordion-body.js similarity index 100% rename from src/components/atoms/AccordionBody/cod-accordion-body.js rename to src/experimental/components/atoms/AccordionBody/cod-accordion-body.js diff --git a/src/components/atoms/AccordionHeader/AccordionHeader.css b/src/experimental/components/atoms/AccordionHeader/AccordionHeader.css similarity index 100% rename from src/components/atoms/AccordionHeader/AccordionHeader.css rename to src/experimental/components/atoms/AccordionHeader/AccordionHeader.css diff --git a/src/components/atoms/AccordionHeader/AccordionHeader.js b/src/experimental/components/atoms/AccordionHeader/AccordionHeader.js similarity index 100% rename from src/components/atoms/AccordionHeader/AccordionHeader.js rename to src/experimental/components/atoms/AccordionHeader/AccordionHeader.js diff --git a/src/components/atoms/AccordionHeader/cod-accordion-header.js b/src/experimental/components/atoms/AccordionHeader/cod-accordion-header.js similarity index 100% rename from src/components/atoms/AccordionHeader/cod-accordion-header.js rename to src/experimental/components/atoms/AccordionHeader/cod-accordion-header.js diff --git a/src/components/atoms/AccordionItem/AccordionItem.css b/src/experimental/components/atoms/AccordionItem/AccordionItem.css similarity index 100% rename from src/components/atoms/AccordionItem/AccordionItem.css rename to src/experimental/components/atoms/AccordionItem/AccordionItem.css diff --git a/src/components/atoms/AccordionItem/AccordionItem.js b/src/experimental/components/atoms/AccordionItem/AccordionItem.js similarity index 100% rename from src/components/atoms/AccordionItem/AccordionItem.js rename to src/experimental/components/atoms/AccordionItem/AccordionItem.js diff --git a/src/components/atoms/AccordionItem/cod-accordion-item.js b/src/experimental/components/atoms/AccordionItem/cod-accordion-item.js similarity index 100% rename from src/components/atoms/AccordionItem/cod-accordion-item.js rename to src/experimental/components/atoms/AccordionItem/cod-accordion-item.js diff --git a/src/components/atoms/ActionButton/ActionButton.css b/src/experimental/components/atoms/ActionButton/ActionButton.css similarity index 100% rename from src/components/atoms/ActionButton/ActionButton.css rename to src/experimental/components/atoms/ActionButton/ActionButton.css diff --git a/src/components/atoms/ActionButton/ActionButton.js b/src/experimental/components/atoms/ActionButton/ActionButton.js similarity index 100% rename from src/components/atoms/ActionButton/ActionButton.js rename to src/experimental/components/atoms/ActionButton/ActionButton.js diff --git a/src/components/atoms/ActionButton/cod-action-button.js b/src/experimental/components/atoms/ActionButton/cod-action-button.js similarity index 100% rename from src/components/atoms/ActionButton/cod-action-button.js rename to src/experimental/components/atoms/ActionButton/cod-action-button.js diff --git a/src/components/atoms/ActionButtonV2/ActionButtonV2.css b/src/experimental/components/atoms/ActionButtonV2/ActionButtonV2.css similarity index 100% rename from src/components/atoms/ActionButtonV2/ActionButtonV2.css rename to src/experimental/components/atoms/ActionButtonV2/ActionButtonV2.css diff --git a/src/components/atoms/ActionButtonV2/ActionButtonV2.js b/src/experimental/components/atoms/ActionButtonV2/ActionButtonV2.js similarity index 100% rename from src/components/atoms/ActionButtonV2/ActionButtonV2.js rename to src/experimental/components/atoms/ActionButtonV2/ActionButtonV2.js diff --git a/src/components/atoms/ActionButtonV2/cod-action-button-v2.js b/src/experimental/components/atoms/ActionButtonV2/cod-action-button-v2.js similarity index 100% rename from src/components/atoms/ActionButtonV2/cod-action-button-v2.js rename to src/experimental/components/atoms/ActionButtonV2/cod-action-button-v2.js diff --git a/src/components/atoms/Alert/Alert.css b/src/experimental/components/atoms/Alert/Alert.css similarity index 100% rename from src/components/atoms/Alert/Alert.css rename to src/experimental/components/atoms/Alert/Alert.css diff --git a/src/components/atoms/Alert/Alert.js b/src/experimental/components/atoms/Alert/Alert.js similarity index 100% rename from src/components/atoms/Alert/Alert.js rename to src/experimental/components/atoms/Alert/Alert.js diff --git a/src/components/atoms/Alert/cod-alert.js b/src/experimental/components/atoms/Alert/cod-alert.js similarity index 100% rename from src/components/atoms/Alert/cod-alert.js rename to src/experimental/components/atoms/Alert/cod-alert.js diff --git a/src/components/atoms/Badge/Badge.css b/src/experimental/components/atoms/Badge/Badge.css similarity index 100% rename from src/components/atoms/Badge/Badge.css rename to src/experimental/components/atoms/Badge/Badge.css diff --git a/src/components/atoms/Badge/Badge.js b/src/experimental/components/atoms/Badge/Badge.js similarity index 100% rename from src/components/atoms/Badge/Badge.js rename to src/experimental/components/atoms/Badge/Badge.js diff --git a/src/components/atoms/Badge/cod-badge.js b/src/experimental/components/atoms/Badge/cod-badge.js similarity index 100% rename from src/components/atoms/Badge/cod-badge.js rename to src/experimental/components/atoms/Badge/cod-badge.js diff --git a/src/components/atoms/Breadcrumb/Breadcrumb.css b/src/experimental/components/atoms/Breadcrumb/Breadcrumb.css similarity index 100% rename from src/components/atoms/Breadcrumb/Breadcrumb.css rename to src/experimental/components/atoms/Breadcrumb/Breadcrumb.css diff --git a/src/components/atoms/Breadcrumb/Breadcrumb.js b/src/experimental/components/atoms/Breadcrumb/Breadcrumb.js similarity index 100% rename from src/components/atoms/Breadcrumb/Breadcrumb.js rename to src/experimental/components/atoms/Breadcrumb/Breadcrumb.js diff --git a/src/components/atoms/Breadcrumb/cod-breadcrumb.js b/src/experimental/components/atoms/Breadcrumb/cod-breadcrumb.js similarity index 100% rename from src/components/atoms/Breadcrumb/cod-breadcrumb.js rename to src/experimental/components/atoms/Breadcrumb/cod-breadcrumb.js diff --git a/src/components/atoms/Button/Button.css b/src/experimental/components/atoms/Button/Button.css similarity index 100% rename from src/components/atoms/Button/Button.css rename to src/experimental/components/atoms/Button/Button.css diff --git a/src/components/atoms/Button/Button.js b/src/experimental/components/atoms/Button/Button.js similarity index 100% rename from src/components/atoms/Button/Button.js rename to src/experimental/components/atoms/Button/Button.js diff --git a/src/components/atoms/Button/cod-button.js b/src/experimental/components/atoms/Button/cod-button.js similarity index 100% rename from src/components/atoms/Button/cod-button.js rename to src/experimental/components/atoms/Button/cod-button.js diff --git a/src/components/atoms/CardBody/CardBody.css b/src/experimental/components/atoms/CardBody/CardBody.css similarity index 100% rename from src/components/atoms/CardBody/CardBody.css rename to src/experimental/components/atoms/CardBody/CardBody.css diff --git a/src/components/atoms/CardBody/CardBody.js b/src/experimental/components/atoms/CardBody/CardBody.js similarity index 100% rename from src/components/atoms/CardBody/CardBody.js rename to src/experimental/components/atoms/CardBody/CardBody.js diff --git a/src/components/atoms/CardBody/cod-card-body.js b/src/experimental/components/atoms/CardBody/cod-card-body.js similarity index 100% rename from src/components/atoms/CardBody/cod-card-body.js rename to src/experimental/components/atoms/CardBody/cod-card-body.js diff --git a/src/components/atoms/CardFooter/CardFooter.css b/src/experimental/components/atoms/CardFooter/CardFooter.css similarity index 100% rename from src/components/atoms/CardFooter/CardFooter.css rename to src/experimental/components/atoms/CardFooter/CardFooter.css diff --git a/src/components/atoms/CardFooter/CardFooter.js b/src/experimental/components/atoms/CardFooter/CardFooter.js similarity index 100% rename from src/components/atoms/CardFooter/CardFooter.js rename to src/experimental/components/atoms/CardFooter/CardFooter.js diff --git a/src/components/atoms/CardFooter/cod-card-footer.js b/src/experimental/components/atoms/CardFooter/cod-card-footer.js similarity index 100% rename from src/components/atoms/CardFooter/cod-card-footer.js rename to src/experimental/components/atoms/CardFooter/cod-card-footer.js diff --git a/src/components/atoms/CardHeader/CardHeader.css b/src/experimental/components/atoms/CardHeader/CardHeader.css similarity index 100% rename from src/components/atoms/CardHeader/CardHeader.css rename to src/experimental/components/atoms/CardHeader/CardHeader.css diff --git a/src/components/atoms/CardHeader/CardHeader.js b/src/experimental/components/atoms/CardHeader/CardHeader.js similarity index 100% rename from src/components/atoms/CardHeader/CardHeader.js rename to src/experimental/components/atoms/CardHeader/CardHeader.js diff --git a/src/components/atoms/CardHeader/cod-card-header.js b/src/experimental/components/atoms/CardHeader/cod-card-header.js similarity index 100% rename from src/components/atoms/CardHeader/cod-card-header.js rename to src/experimental/components/atoms/CardHeader/cod-card-header.js diff --git a/src/components/atoms/CardOverlay/CardOverlay.css b/src/experimental/components/atoms/CardOverlay/CardOverlay.css similarity index 100% rename from src/components/atoms/CardOverlay/CardOverlay.css rename to src/experimental/components/atoms/CardOverlay/CardOverlay.css diff --git a/src/components/atoms/CardOverlay/CardOverlay.js b/src/experimental/components/atoms/CardOverlay/CardOverlay.js similarity index 100% rename from src/components/atoms/CardOverlay/CardOverlay.js rename to src/experimental/components/atoms/CardOverlay/CardOverlay.js diff --git a/src/components/atoms/CardOverlay/cod-card-overlay.js b/src/experimental/components/atoms/CardOverlay/cod-card-overlay.js similarity index 100% rename from src/components/atoms/CardOverlay/cod-card-overlay.js rename to src/experimental/components/atoms/CardOverlay/cod-card-overlay.js diff --git a/src/components/atoms/CarouselCaption/CarouselCaption.css b/src/experimental/components/atoms/CarouselCaption/CarouselCaption.css similarity index 100% rename from src/components/atoms/CarouselCaption/CarouselCaption.css rename to src/experimental/components/atoms/CarouselCaption/CarouselCaption.css diff --git a/src/components/atoms/CarouselCaption/CarouselCaption.js b/src/experimental/components/atoms/CarouselCaption/CarouselCaption.js similarity index 100% rename from src/components/atoms/CarouselCaption/CarouselCaption.js rename to src/experimental/components/atoms/CarouselCaption/CarouselCaption.js diff --git a/src/components/atoms/CarouselCaption/cod-carousel-caption.js b/src/experimental/components/atoms/CarouselCaption/cod-carousel-caption.js similarity index 100% rename from src/components/atoms/CarouselCaption/cod-carousel-caption.js rename to src/experimental/components/atoms/CarouselCaption/cod-carousel-caption.js diff --git a/src/components/atoms/CarouselItem/CarouselItem.css b/src/experimental/components/atoms/CarouselItem/CarouselItem.css similarity index 100% rename from src/components/atoms/CarouselItem/CarouselItem.css rename to src/experimental/components/atoms/CarouselItem/CarouselItem.css diff --git a/src/components/atoms/CarouselItem/CarouselItem.js b/src/experimental/components/atoms/CarouselItem/CarouselItem.js similarity index 100% rename from src/components/atoms/CarouselItem/CarouselItem.js rename to src/experimental/components/atoms/CarouselItem/CarouselItem.js diff --git a/src/components/atoms/CarouselItem/cod-carousel-item.js b/src/experimental/components/atoms/CarouselItem/cod-carousel-item.js similarity index 100% rename from src/components/atoms/CarouselItem/cod-carousel-item.js rename to src/experimental/components/atoms/CarouselItem/cod-carousel-item.js diff --git a/src/components/atoms/Container/Container.css b/src/experimental/components/atoms/Container/Container.css similarity index 100% rename from src/components/atoms/Container/Container.css rename to src/experimental/components/atoms/Container/Container.css diff --git a/src/components/atoms/Container/Container.js b/src/experimental/components/atoms/Container/Container.js similarity index 100% rename from src/components/atoms/Container/Container.js rename to src/experimental/components/atoms/Container/Container.js diff --git a/src/components/atoms/Container/cod-container.js b/src/experimental/components/atoms/Container/cod-container.js similarity index 100% rename from src/components/atoms/Container/cod-container.js rename to src/experimental/components/atoms/Container/cod-container.js diff --git a/src/components/atoms/Countdown/Countdown.css b/src/experimental/components/atoms/Countdown/Countdown.css similarity index 100% rename from src/components/atoms/Countdown/Countdown.css rename to src/experimental/components/atoms/Countdown/Countdown.css diff --git a/src/components/atoms/Countdown/Countdown.js b/src/experimental/components/atoms/Countdown/Countdown.js similarity index 100% rename from src/components/atoms/Countdown/Countdown.js rename to src/experimental/components/atoms/Countdown/Countdown.js diff --git a/src/components/atoms/Countdown/cod-countdown.js b/src/experimental/components/atoms/Countdown/cod-countdown.js similarity index 100% rename from src/components/atoms/Countdown/cod-countdown.js rename to src/experimental/components/atoms/Countdown/cod-countdown.js diff --git a/src/components/atoms/DropdownMenu/DropdownMenu.css b/src/experimental/components/atoms/DropdownMenu/DropdownMenu.css similarity index 100% rename from src/components/atoms/DropdownMenu/DropdownMenu.css rename to src/experimental/components/atoms/DropdownMenu/DropdownMenu.css diff --git a/src/components/atoms/DropdownMenu/DropdownMenu.js b/src/experimental/components/atoms/DropdownMenu/DropdownMenu.js similarity index 100% rename from src/components/atoms/DropdownMenu/DropdownMenu.js rename to src/experimental/components/atoms/DropdownMenu/DropdownMenu.js diff --git a/src/components/atoms/DropdownMenu/cod-dropdown-menu.js b/src/experimental/components/atoms/DropdownMenu/cod-dropdown-menu.js similarity index 100% rename from src/components/atoms/DropdownMenu/cod-dropdown-menu.js rename to src/experimental/components/atoms/DropdownMenu/cod-dropdown-menu.js diff --git a/src/components/atoms/FormCheck/FormCheck.css b/src/experimental/components/atoms/FormCheck/FormCheck.css similarity index 100% rename from src/components/atoms/FormCheck/FormCheck.css rename to src/experimental/components/atoms/FormCheck/FormCheck.css diff --git a/src/components/atoms/FormCheck/FormCheck.js b/src/experimental/components/atoms/FormCheck/FormCheck.js similarity index 100% rename from src/components/atoms/FormCheck/FormCheck.js rename to src/experimental/components/atoms/FormCheck/FormCheck.js diff --git a/src/components/atoms/FormCheck/cod-formcheck.js b/src/experimental/components/atoms/FormCheck/cod-formcheck.js similarity index 100% rename from src/components/atoms/FormCheck/cod-formcheck.js rename to src/experimental/components/atoms/FormCheck/cod-formcheck.js diff --git a/src/components/atoms/FormControl/FormControl.css b/src/experimental/components/atoms/FormControl/FormControl.css similarity index 100% rename from src/components/atoms/FormControl/FormControl.css rename to src/experimental/components/atoms/FormControl/FormControl.css diff --git a/src/components/atoms/FormControl/FormControl.js b/src/experimental/components/atoms/FormControl/FormControl.js similarity index 100% rename from src/components/atoms/FormControl/FormControl.js rename to src/experimental/components/atoms/FormControl/FormControl.js diff --git a/src/components/atoms/FormControl/cod-formcontrol.js b/src/experimental/components/atoms/FormControl/cod-formcontrol.js similarity index 100% rename from src/components/atoms/FormControl/cod-formcontrol.js rename to src/experimental/components/atoms/FormControl/cod-formcontrol.js diff --git a/src/components/atoms/FormLabel/FormLabel.css b/src/experimental/components/atoms/FormLabel/FormLabel.css similarity index 100% rename from src/components/atoms/FormLabel/FormLabel.css rename to src/experimental/components/atoms/FormLabel/FormLabel.css diff --git a/src/components/atoms/FormLabel/FormLabel.js b/src/experimental/components/atoms/FormLabel/FormLabel.js similarity index 100% rename from src/components/atoms/FormLabel/FormLabel.js rename to src/experimental/components/atoms/FormLabel/FormLabel.js diff --git a/src/components/atoms/FormLabel/cod-formlabel.js b/src/experimental/components/atoms/FormLabel/cod-formlabel.js similarity index 100% rename from src/components/atoms/FormLabel/cod-formlabel.js rename to src/experimental/components/atoms/FormLabel/cod-formlabel.js diff --git a/src/components/atoms/FormSelect/FormSelect.css b/src/experimental/components/atoms/FormSelect/FormSelect.css similarity index 100% rename from src/components/atoms/FormSelect/FormSelect.css rename to src/experimental/components/atoms/FormSelect/FormSelect.css diff --git a/src/components/atoms/FormSelect/FormSelect.js b/src/experimental/components/atoms/FormSelect/FormSelect.js similarity index 100% rename from src/components/atoms/FormSelect/FormSelect.js rename to src/experimental/components/atoms/FormSelect/FormSelect.js diff --git a/src/components/atoms/FormSelect/cod-formselect.js b/src/experimental/components/atoms/FormSelect/cod-formselect.js similarity index 100% rename from src/components/atoms/FormSelect/cod-formselect.js rename to src/experimental/components/atoms/FormSelect/cod-formselect.js diff --git a/src/components/atoms/Icon/Icon.css b/src/experimental/components/atoms/Icon/Icon.css similarity index 100% rename from src/components/atoms/Icon/Icon.css rename to src/experimental/components/atoms/Icon/Icon.css diff --git a/src/components/atoms/Icon/Icon.js b/src/experimental/components/atoms/Icon/Icon.js similarity index 100% rename from src/components/atoms/Icon/Icon.js rename to src/experimental/components/atoms/Icon/Icon.js diff --git a/src/components/atoms/Icon/cod-icon.js b/src/experimental/components/atoms/Icon/cod-icon.js similarity index 100% rename from src/components/atoms/Icon/cod-icon.js rename to src/experimental/components/atoms/Icon/cod-icon.js diff --git a/src/components/atoms/Image/Image.css b/src/experimental/components/atoms/Image/Image.css similarity index 100% rename from src/components/atoms/Image/Image.css rename to src/experimental/components/atoms/Image/Image.css diff --git a/src/components/atoms/Image/Image.js b/src/experimental/components/atoms/Image/Image.js similarity index 100% rename from src/components/atoms/Image/Image.js rename to src/experimental/components/atoms/Image/Image.js diff --git a/src/components/atoms/Image/cod-image.js b/src/experimental/components/atoms/Image/cod-image.js similarity index 100% rename from src/components/atoms/Image/cod-image.js rename to src/experimental/components/atoms/Image/cod-image.js diff --git a/src/components/atoms/InfoButton/InfoButton.css b/src/experimental/components/atoms/InfoButton/InfoButton.css similarity index 100% rename from src/components/atoms/InfoButton/InfoButton.css rename to src/experimental/components/atoms/InfoButton/InfoButton.css diff --git a/src/components/atoms/InfoButton/InfoButton.js b/src/experimental/components/atoms/InfoButton/InfoButton.js similarity index 100% rename from src/components/atoms/InfoButton/InfoButton.js rename to src/experimental/components/atoms/InfoButton/InfoButton.js diff --git a/src/components/atoms/InfoButton/cod-info-button.js b/src/experimental/components/atoms/InfoButton/cod-info-button.js similarity index 100% rename from src/components/atoms/InfoButton/cod-info-button.js rename to src/experimental/components/atoms/InfoButton/cod-info-button.js diff --git a/src/components/atoms/LegacyButton/LegacyButton.css b/src/experimental/components/atoms/LegacyButton/LegacyButton.css similarity index 100% rename from src/components/atoms/LegacyButton/LegacyButton.css rename to src/experimental/components/atoms/LegacyButton/LegacyButton.css diff --git a/src/components/atoms/LegacyButton/LegacyButton.js b/src/experimental/components/atoms/LegacyButton/LegacyButton.js similarity index 100% rename from src/components/atoms/LegacyButton/LegacyButton.js rename to src/experimental/components/atoms/LegacyButton/LegacyButton.js diff --git a/src/components/atoms/LegacyButton/cod-legacy-button.js b/src/experimental/components/atoms/LegacyButton/cod-legacy-button.js similarity index 100% rename from src/components/atoms/LegacyButton/cod-legacy-button.js rename to src/experimental/components/atoms/LegacyButton/cod-legacy-button.js diff --git a/src/components/atoms/LegacyIcon/LegacyIcon.css b/src/experimental/components/atoms/LegacyIcon/LegacyIcon.css similarity index 100% rename from src/components/atoms/LegacyIcon/LegacyIcon.css rename to src/experimental/components/atoms/LegacyIcon/LegacyIcon.css diff --git a/src/components/atoms/LegacyIcon/LegacyIcon.js b/src/experimental/components/atoms/LegacyIcon/LegacyIcon.js similarity index 100% rename from src/components/atoms/LegacyIcon/LegacyIcon.js rename to src/experimental/components/atoms/LegacyIcon/LegacyIcon.js diff --git a/src/components/atoms/LegacyIcon/cod-legacy-icon.js b/src/experimental/components/atoms/LegacyIcon/cod-legacy-icon.js similarity index 100% rename from src/components/atoms/LegacyIcon/cod-legacy-icon.js rename to src/experimental/components/atoms/LegacyIcon/cod-legacy-icon.js diff --git a/src/components/atoms/ListGroupItem/ListGroupItem.css b/src/experimental/components/atoms/ListGroupItem/ListGroupItem.css similarity index 100% rename from src/components/atoms/ListGroupItem/ListGroupItem.css rename to src/experimental/components/atoms/ListGroupItem/ListGroupItem.css diff --git a/src/components/atoms/ListGroupItem/ListGroupItem.js b/src/experimental/components/atoms/ListGroupItem/ListGroupItem.js similarity index 100% rename from src/components/atoms/ListGroupItem/ListGroupItem.js rename to src/experimental/components/atoms/ListGroupItem/ListGroupItem.js diff --git a/src/components/atoms/ListGroupItem/cod-listgroup-item.js b/src/experimental/components/atoms/ListGroupItem/cod-listgroup-item.js similarity index 100% rename from src/components/atoms/ListGroupItem/cod-listgroup-item.js rename to src/experimental/components/atoms/ListGroupItem/cod-listgroup-item.js diff --git a/src/components/atoms/Loader/Loader.css b/src/experimental/components/atoms/Loader/Loader.css similarity index 100% rename from src/components/atoms/Loader/Loader.css rename to src/experimental/components/atoms/Loader/Loader.css diff --git a/src/components/atoms/Loader/Loader.js b/src/experimental/components/atoms/Loader/Loader.js similarity index 100% rename from src/components/atoms/Loader/Loader.js rename to src/experimental/components/atoms/Loader/Loader.js diff --git a/src/components/atoms/Loader/cod-loader.js b/src/experimental/components/atoms/Loader/cod-loader.js similarity index 100% rename from src/components/atoms/Loader/cod-loader.js rename to src/experimental/components/atoms/Loader/cod-loader.js diff --git a/src/components/atoms/ModalBody/ModalBody.css b/src/experimental/components/atoms/ModalBody/ModalBody.css similarity index 100% rename from src/components/atoms/ModalBody/ModalBody.css rename to src/experimental/components/atoms/ModalBody/ModalBody.css diff --git a/src/components/atoms/ModalBody/ModalBody.js b/src/experimental/components/atoms/ModalBody/ModalBody.js similarity index 100% rename from src/components/atoms/ModalBody/ModalBody.js rename to src/experimental/components/atoms/ModalBody/ModalBody.js diff --git a/src/components/atoms/ModalBody/cod-modal-body.js b/src/experimental/components/atoms/ModalBody/cod-modal-body.js similarity index 100% rename from src/components/atoms/ModalBody/cod-modal-body.js rename to src/experimental/components/atoms/ModalBody/cod-modal-body.js diff --git a/src/components/atoms/ModalFooter/ModalFooter.css b/src/experimental/components/atoms/ModalFooter/ModalFooter.css similarity index 100% rename from src/components/atoms/ModalFooter/ModalFooter.css rename to src/experimental/components/atoms/ModalFooter/ModalFooter.css diff --git a/src/components/atoms/ModalFooter/ModalFooter.js b/src/experimental/components/atoms/ModalFooter/ModalFooter.js similarity index 100% rename from src/components/atoms/ModalFooter/ModalFooter.js rename to src/experimental/components/atoms/ModalFooter/ModalFooter.js diff --git a/src/components/atoms/ModalFooter/cod-modal-footer.js b/src/experimental/components/atoms/ModalFooter/cod-modal-footer.js similarity index 100% rename from src/components/atoms/ModalFooter/cod-modal-footer.js rename to src/experimental/components/atoms/ModalFooter/cod-modal-footer.js diff --git a/src/components/atoms/ModalHeader/ModalHeader.css b/src/experimental/components/atoms/ModalHeader/ModalHeader.css similarity index 100% rename from src/components/atoms/ModalHeader/ModalHeader.css rename to src/experimental/components/atoms/ModalHeader/ModalHeader.css diff --git a/src/components/atoms/ModalHeader/ModalHeader.js b/src/experimental/components/atoms/ModalHeader/ModalHeader.js similarity index 100% rename from src/components/atoms/ModalHeader/ModalHeader.js rename to src/experimental/components/atoms/ModalHeader/ModalHeader.js diff --git a/src/components/atoms/ModalHeader/cod-modal-header.js b/src/experimental/components/atoms/ModalHeader/cod-modal-header.js similarity index 100% rename from src/components/atoms/ModalHeader/cod-modal-header.js rename to src/experimental/components/atoms/ModalHeader/cod-modal-header.js diff --git a/src/components/atoms/NavbarBrand/NavbarBrand.css b/src/experimental/components/atoms/NavbarBrand/NavbarBrand.css similarity index 100% rename from src/components/atoms/NavbarBrand/NavbarBrand.css rename to src/experimental/components/atoms/NavbarBrand/NavbarBrand.css diff --git a/src/components/atoms/NavbarBrand/NavbarBrand.js b/src/experimental/components/atoms/NavbarBrand/NavbarBrand.js similarity index 100% rename from src/components/atoms/NavbarBrand/NavbarBrand.js rename to src/experimental/components/atoms/NavbarBrand/NavbarBrand.js diff --git a/src/components/atoms/NavbarBrand/cod-navbar-brand.js b/src/experimental/components/atoms/NavbarBrand/cod-navbar-brand.js similarity index 100% rename from src/components/atoms/NavbarBrand/cod-navbar-brand.js rename to src/experimental/components/atoms/NavbarBrand/cod-navbar-brand.js diff --git a/src/components/atoms/NavbarCollapse/NavbarCollapse.css b/src/experimental/components/atoms/NavbarCollapse/NavbarCollapse.css similarity index 100% rename from src/components/atoms/NavbarCollapse/NavbarCollapse.css rename to src/experimental/components/atoms/NavbarCollapse/NavbarCollapse.css diff --git a/src/components/atoms/NavbarCollapse/NavbarCollapse.js b/src/experimental/components/atoms/NavbarCollapse/NavbarCollapse.js similarity index 100% rename from src/components/atoms/NavbarCollapse/NavbarCollapse.js rename to src/experimental/components/atoms/NavbarCollapse/NavbarCollapse.js diff --git a/src/components/atoms/NavbarCollapse/cod-navbar-collapse.js b/src/experimental/components/atoms/NavbarCollapse/cod-navbar-collapse.js similarity index 100% rename from src/components/atoms/NavbarCollapse/cod-navbar-collapse.js rename to src/experimental/components/atoms/NavbarCollapse/cod-navbar-collapse.js diff --git a/src/components/atoms/NavbarOffcanvas/NavbarOffcanvas.css b/src/experimental/components/atoms/NavbarOffcanvas/NavbarOffcanvas.css similarity index 100% rename from src/components/atoms/NavbarOffcanvas/NavbarOffcanvas.css rename to src/experimental/components/atoms/NavbarOffcanvas/NavbarOffcanvas.css diff --git a/src/components/atoms/NavbarOffcanvas/NavbarOffcanvas.js b/src/experimental/components/atoms/NavbarOffcanvas/NavbarOffcanvas.js similarity index 100% rename from src/components/atoms/NavbarOffcanvas/NavbarOffcanvas.js rename to src/experimental/components/atoms/NavbarOffcanvas/NavbarOffcanvas.js diff --git a/src/components/atoms/NavbarOffcanvas/cod-navbar-offcanvas.js b/src/experimental/components/atoms/NavbarOffcanvas/cod-navbar-offcanvas.js similarity index 100% rename from src/components/atoms/NavbarOffcanvas/cod-navbar-offcanvas.js rename to src/experimental/components/atoms/NavbarOffcanvas/cod-navbar-offcanvas.js diff --git a/src/components/atoms/NavbarToggle/NavbarToggle.css b/src/experimental/components/atoms/NavbarToggle/NavbarToggle.css similarity index 100% rename from src/components/atoms/NavbarToggle/NavbarToggle.css rename to src/experimental/components/atoms/NavbarToggle/NavbarToggle.css diff --git a/src/components/atoms/NavbarToggle/NavbarToggle.js b/src/experimental/components/atoms/NavbarToggle/NavbarToggle.js similarity index 100% rename from src/components/atoms/NavbarToggle/NavbarToggle.js rename to src/experimental/components/atoms/NavbarToggle/NavbarToggle.js diff --git a/src/components/atoms/NavbarToggle/cod-navbar-toggle.js b/src/experimental/components/atoms/NavbarToggle/cod-navbar-toggle.js similarity index 100% rename from src/components/atoms/NavbarToggle/cod-navbar-toggle.js rename to src/experimental/components/atoms/NavbarToggle/cod-navbar-toggle.js diff --git a/src/components/atoms/OffcanvasBody/OffcanvasBody.css b/src/experimental/components/atoms/OffcanvasBody/OffcanvasBody.css similarity index 100% rename from src/components/atoms/OffcanvasBody/OffcanvasBody.css rename to src/experimental/components/atoms/OffcanvasBody/OffcanvasBody.css diff --git a/src/components/atoms/OffcanvasBody/OffcanvasBody.css.map b/src/experimental/components/atoms/OffcanvasBody/OffcanvasBody.css.map similarity index 100% rename from src/components/atoms/OffcanvasBody/OffcanvasBody.css.map rename to src/experimental/components/atoms/OffcanvasBody/OffcanvasBody.css.map diff --git a/src/components/atoms/OffcanvasBody/OffcanvasBody.js b/src/experimental/components/atoms/OffcanvasBody/OffcanvasBody.js similarity index 100% rename from src/components/atoms/OffcanvasBody/OffcanvasBody.js rename to src/experimental/components/atoms/OffcanvasBody/OffcanvasBody.js diff --git a/src/components/atoms/OffcanvasBody/OffcanvasBody.scss b/src/experimental/components/atoms/OffcanvasBody/OffcanvasBody.scss similarity index 100% rename from src/components/atoms/OffcanvasBody/OffcanvasBody.scss rename to src/experimental/components/atoms/OffcanvasBody/OffcanvasBody.scss diff --git a/src/components/atoms/OffcanvasBody/cod-offcanvas-body.js b/src/experimental/components/atoms/OffcanvasBody/cod-offcanvas-body.js similarity index 100% rename from src/components/atoms/OffcanvasBody/cod-offcanvas-body.js rename to src/experimental/components/atoms/OffcanvasBody/cod-offcanvas-body.js diff --git a/src/components/atoms/OffcanvasHeader/OffcanvasHeader.css b/src/experimental/components/atoms/OffcanvasHeader/OffcanvasHeader.css similarity index 100% rename from src/components/atoms/OffcanvasHeader/OffcanvasHeader.css rename to src/experimental/components/atoms/OffcanvasHeader/OffcanvasHeader.css diff --git a/src/components/atoms/OffcanvasHeader/OffcanvasHeader.css.map b/src/experimental/components/atoms/OffcanvasHeader/OffcanvasHeader.css.map similarity index 100% rename from src/components/atoms/OffcanvasHeader/OffcanvasHeader.css.map rename to src/experimental/components/atoms/OffcanvasHeader/OffcanvasHeader.css.map diff --git a/src/components/atoms/OffcanvasHeader/OffcanvasHeader.js b/src/experimental/components/atoms/OffcanvasHeader/OffcanvasHeader.js similarity index 100% rename from src/components/atoms/OffcanvasHeader/OffcanvasHeader.js rename to src/experimental/components/atoms/OffcanvasHeader/OffcanvasHeader.js diff --git a/src/components/atoms/OffcanvasHeader/OffcanvasHeader.scss b/src/experimental/components/atoms/OffcanvasHeader/OffcanvasHeader.scss similarity index 100% rename from src/components/atoms/OffcanvasHeader/OffcanvasHeader.scss rename to src/experimental/components/atoms/OffcanvasHeader/OffcanvasHeader.scss diff --git a/src/components/atoms/OffcanvasHeader/cod-offcanvas-header.js b/src/experimental/components/atoms/OffcanvasHeader/cod-offcanvas-header.js similarity index 100% rename from src/components/atoms/OffcanvasHeader/cod-offcanvas-header.js rename to src/experimental/components/atoms/OffcanvasHeader/cod-offcanvas-header.js diff --git a/src/components/atoms/PaginationItem/PaginationItem.css b/src/experimental/components/atoms/PaginationItem/PaginationItem.css similarity index 100% rename from src/components/atoms/PaginationItem/PaginationItem.css rename to src/experimental/components/atoms/PaginationItem/PaginationItem.css diff --git a/src/components/atoms/PaginationItem/PaginationItem.js b/src/experimental/components/atoms/PaginationItem/PaginationItem.js similarity index 100% rename from src/components/atoms/PaginationItem/PaginationItem.js rename to src/experimental/components/atoms/PaginationItem/PaginationItem.js diff --git a/src/components/atoms/PaginationItem/cod-pagination-item.js b/src/experimental/components/atoms/PaginationItem/cod-pagination-item.js similarity index 100% rename from src/components/atoms/PaginationItem/cod-pagination-item.js rename to src/experimental/components/atoms/PaginationItem/cod-pagination-item.js diff --git a/src/components/atoms/Progress/Progress.css b/src/experimental/components/atoms/Progress/Progress.css similarity index 100% rename from src/components/atoms/Progress/Progress.css rename to src/experimental/components/atoms/Progress/Progress.css diff --git a/src/components/atoms/Progress/Progress.js b/src/experimental/components/atoms/Progress/Progress.js similarity index 100% rename from src/components/atoms/Progress/Progress.js rename to src/experimental/components/atoms/Progress/Progress.js diff --git a/src/components/atoms/Progress/cod-progress.js b/src/experimental/components/atoms/Progress/cod-progress.js similarity index 100% rename from src/components/atoms/Progress/cod-progress.js rename to src/experimental/components/atoms/Progress/cod-progress.js diff --git a/src/components/atoms/Range/Range.css b/src/experimental/components/atoms/Range/Range.css similarity index 100% rename from src/components/atoms/Range/Range.css rename to src/experimental/components/atoms/Range/Range.css diff --git a/src/components/atoms/Range/Range.js b/src/experimental/components/atoms/Range/Range.js similarity index 100% rename from src/components/atoms/Range/Range.js rename to src/experimental/components/atoms/Range/Range.js diff --git a/src/components/atoms/Range/cod-range.js b/src/experimental/components/atoms/Range/cod-range.js similarity index 100% rename from src/components/atoms/Range/cod-range.js rename to src/experimental/components/atoms/Range/cod-range.js diff --git a/src/components/atoms/Spinner/Spinner.css b/src/experimental/components/atoms/Spinner/Spinner.css similarity index 100% rename from src/components/atoms/Spinner/Spinner.css rename to src/experimental/components/atoms/Spinner/Spinner.css diff --git a/src/components/atoms/Spinner/Spinner.js b/src/experimental/components/atoms/Spinner/Spinner.js similarity index 100% rename from src/components/atoms/Spinner/Spinner.js rename to src/experimental/components/atoms/Spinner/Spinner.js diff --git a/src/components/atoms/Spinner/cod-spinner.js b/src/experimental/components/atoms/Spinner/cod-spinner.js similarity index 100% rename from src/components/atoms/Spinner/cod-spinner.js rename to src/experimental/components/atoms/Spinner/cod-spinner.js diff --git a/src/components/atoms/TableBody/TableBody.css b/src/experimental/components/atoms/TableBody/TableBody.css similarity index 100% rename from src/components/atoms/TableBody/TableBody.css rename to src/experimental/components/atoms/TableBody/TableBody.css diff --git a/src/components/atoms/TableBody/TableBody.js b/src/experimental/components/atoms/TableBody/TableBody.js similarity index 100% rename from src/components/atoms/TableBody/TableBody.js rename to src/experimental/components/atoms/TableBody/TableBody.js diff --git a/src/components/atoms/TableBody/cod-table-body.js b/src/experimental/components/atoms/TableBody/cod-table-body.js similarity index 100% rename from src/components/atoms/TableBody/cod-table-body.js rename to src/experimental/components/atoms/TableBody/cod-table-body.js diff --git a/src/components/atoms/TableCell/TableCell.css b/src/experimental/components/atoms/TableCell/TableCell.css similarity index 100% rename from src/components/atoms/TableCell/TableCell.css rename to src/experimental/components/atoms/TableCell/TableCell.css diff --git a/src/components/atoms/TableCell/TableCell.css.map b/src/experimental/components/atoms/TableCell/TableCell.css.map similarity index 100% rename from src/components/atoms/TableCell/TableCell.css.map rename to src/experimental/components/atoms/TableCell/TableCell.css.map diff --git a/src/components/atoms/TableCell/TableCell.js b/src/experimental/components/atoms/TableCell/TableCell.js similarity index 100% rename from src/components/atoms/TableCell/TableCell.js rename to src/experimental/components/atoms/TableCell/TableCell.js diff --git a/src/components/atoms/TableCell/TableCell.scss b/src/experimental/components/atoms/TableCell/TableCell.scss similarity index 100% rename from src/components/atoms/TableCell/TableCell.scss rename to src/experimental/components/atoms/TableCell/TableCell.scss diff --git a/src/components/atoms/TableCell/cod-table-cell.js b/src/experimental/components/atoms/TableCell/cod-table-cell.js similarity index 100% rename from src/components/atoms/TableCell/cod-table-cell.js rename to src/experimental/components/atoms/TableCell/cod-table-cell.js diff --git a/src/components/atoms/TableCellHeader/TableCellHeader.css b/src/experimental/components/atoms/TableCellHeader/TableCellHeader.css similarity index 100% rename from src/components/atoms/TableCellHeader/TableCellHeader.css rename to src/experimental/components/atoms/TableCellHeader/TableCellHeader.css diff --git a/src/components/atoms/TableCellHeader/TableCellHeader.css.map b/src/experimental/components/atoms/TableCellHeader/TableCellHeader.css.map similarity index 100% rename from src/components/atoms/TableCellHeader/TableCellHeader.css.map rename to src/experimental/components/atoms/TableCellHeader/TableCellHeader.css.map diff --git a/src/components/atoms/TableCellHeader/TableCellHeader.js b/src/experimental/components/atoms/TableCellHeader/TableCellHeader.js similarity index 100% rename from src/components/atoms/TableCellHeader/TableCellHeader.js rename to src/experimental/components/atoms/TableCellHeader/TableCellHeader.js diff --git a/src/components/atoms/TableCellHeader/TableCellHeader.scss b/src/experimental/components/atoms/TableCellHeader/TableCellHeader.scss similarity index 100% rename from src/components/atoms/TableCellHeader/TableCellHeader.scss rename to src/experimental/components/atoms/TableCellHeader/TableCellHeader.scss diff --git a/src/components/atoms/TableCellHeader/cod-table-cell-header.js b/src/experimental/components/atoms/TableCellHeader/cod-table-cell-header.js similarity index 100% rename from src/components/atoms/TableCellHeader/cod-table-cell-header.js rename to src/experimental/components/atoms/TableCellHeader/cod-table-cell-header.js diff --git a/src/components/atoms/TableHeader/TableHeader.css b/src/experimental/components/atoms/TableHeader/TableHeader.css similarity index 100% rename from src/components/atoms/TableHeader/TableHeader.css rename to src/experimental/components/atoms/TableHeader/TableHeader.css diff --git a/src/components/atoms/TableHeader/TableHeader.css.map b/src/experimental/components/atoms/TableHeader/TableHeader.css.map similarity index 100% rename from src/components/atoms/TableHeader/TableHeader.css.map rename to src/experimental/components/atoms/TableHeader/TableHeader.css.map diff --git a/src/components/atoms/TableHeader/TableHeader.js b/src/experimental/components/atoms/TableHeader/TableHeader.js similarity index 100% rename from src/components/atoms/TableHeader/TableHeader.js rename to src/experimental/components/atoms/TableHeader/TableHeader.js diff --git a/src/components/atoms/TableHeader/TableHeader.scss b/src/experimental/components/atoms/TableHeader/TableHeader.scss similarity index 100% rename from src/components/atoms/TableHeader/TableHeader.scss rename to src/experimental/components/atoms/TableHeader/TableHeader.scss diff --git a/src/components/atoms/TableHeader/cod-table-header.js b/src/experimental/components/atoms/TableHeader/cod-table-header.js similarity index 100% rename from src/components/atoms/TableHeader/cod-table-header.js rename to src/experimental/components/atoms/TableHeader/cod-table-header.js diff --git a/src/components/atoms/TableRow/TableRow.css b/src/experimental/components/atoms/TableRow/TableRow.css similarity index 100% rename from src/components/atoms/TableRow/TableRow.css rename to src/experimental/components/atoms/TableRow/TableRow.css diff --git a/src/components/atoms/TableRow/TableRow.css.map b/src/experimental/components/atoms/TableRow/TableRow.css.map similarity index 100% rename from src/components/atoms/TableRow/TableRow.css.map rename to src/experimental/components/atoms/TableRow/TableRow.css.map diff --git a/src/components/atoms/TableRow/TableRow.js b/src/experimental/components/atoms/TableRow/TableRow.js similarity index 100% rename from src/components/atoms/TableRow/TableRow.js rename to src/experimental/components/atoms/TableRow/TableRow.js diff --git a/src/components/atoms/TableRow/TableRow.scss b/src/experimental/components/atoms/TableRow/TableRow.scss similarity index 100% rename from src/components/atoms/TableRow/TableRow.scss rename to src/experimental/components/atoms/TableRow/TableRow.scss diff --git a/src/components/atoms/TableRow/cod-table-row.js b/src/experimental/components/atoms/TableRow/cod-table-row.js similarity index 100% rename from src/components/atoms/TableRow/cod-table-row.js rename to src/experimental/components/atoms/TableRow/cod-table-row.js diff --git a/src/components/molecules/Accordion/Accordion.css b/src/experimental/components/molecules/Accordion/Accordion.css similarity index 100% rename from src/components/molecules/Accordion/Accordion.css rename to src/experimental/components/molecules/Accordion/Accordion.css diff --git a/src/components/molecules/Accordion/Accordion.js b/src/experimental/components/molecules/Accordion/Accordion.js similarity index 100% rename from src/components/molecules/Accordion/Accordion.js rename to src/experimental/components/molecules/Accordion/Accordion.js diff --git a/src/components/molecules/Accordion/cod-accordion.js b/src/experimental/components/molecules/Accordion/cod-accordion.js similarity index 100% rename from src/components/molecules/Accordion/cod-accordion.js rename to src/experimental/components/molecules/Accordion/cod-accordion.js diff --git a/src/components/molecules/ButtonGroup/ButtonGroup.css b/src/experimental/components/molecules/ButtonGroup/ButtonGroup.css similarity index 100% rename from src/components/molecules/ButtonGroup/ButtonGroup.css rename to src/experimental/components/molecules/ButtonGroup/ButtonGroup.css diff --git a/src/components/molecules/ButtonGroup/ButtonGroup.js b/src/experimental/components/molecules/ButtonGroup/ButtonGroup.js similarity index 100% rename from src/components/molecules/ButtonGroup/ButtonGroup.js rename to src/experimental/components/molecules/ButtonGroup/ButtonGroup.js diff --git a/src/components/molecules/ButtonGroup/cod-button-group.js b/src/experimental/components/molecules/ButtonGroup/cod-button-group.js similarity index 100% rename from src/components/molecules/ButtonGroup/cod-button-group.js rename to src/experimental/components/molecules/ButtonGroup/cod-button-group.js diff --git a/src/components/molecules/Dropdown/Dropdown.css b/src/experimental/components/molecules/Dropdown/Dropdown.css similarity index 100% rename from src/components/molecules/Dropdown/Dropdown.css rename to src/experimental/components/molecules/Dropdown/Dropdown.css diff --git a/src/components/molecules/Dropdown/Dropdown.js b/src/experimental/components/molecules/Dropdown/Dropdown.js similarity index 100% rename from src/components/molecules/Dropdown/Dropdown.js rename to src/experimental/components/molecules/Dropdown/Dropdown.js diff --git a/src/components/molecules/Dropdown/cod-dropdown.js b/src/experimental/components/molecules/Dropdown/cod-dropdown.js similarity index 100% rename from src/components/molecules/Dropdown/cod-dropdown.js rename to src/experimental/components/molecules/Dropdown/cod-dropdown.js diff --git a/src/components/molecules/FormCheckGroup/FormCheckGroup.js b/src/experimental/components/molecules/FormCheckGroup/FormCheckGroup.js similarity index 100% rename from src/components/molecules/FormCheckGroup/FormCheckGroup.js rename to src/experimental/components/molecules/FormCheckGroup/FormCheckGroup.js diff --git a/src/components/molecules/FormCheckGroup/FormCheckGroupStyles.css b/src/experimental/components/molecules/FormCheckGroup/FormCheckGroupStyles.css similarity index 100% rename from src/components/molecules/FormCheckGroup/FormCheckGroupStyles.css rename to src/experimental/components/molecules/FormCheckGroup/FormCheckGroupStyles.css diff --git a/src/components/molecules/FormCheckGroup/cod-form-check-group.js b/src/experimental/components/molecules/FormCheckGroup/cod-form-check-group.js similarity index 100% rename from src/components/molecules/FormCheckGroup/cod-form-check-group.js rename to src/experimental/components/molecules/FormCheckGroup/cod-form-check-group.js diff --git a/src/components/molecules/ListGroup/ListGroup.css b/src/experimental/components/molecules/ListGroup/ListGroup.css similarity index 100% rename from src/components/molecules/ListGroup/ListGroup.css rename to src/experimental/components/molecules/ListGroup/ListGroup.css diff --git a/src/components/molecules/ListGroup/ListGroup.js b/src/experimental/components/molecules/ListGroup/ListGroup.js similarity index 100% rename from src/components/molecules/ListGroup/ListGroup.js rename to src/experimental/components/molecules/ListGroup/ListGroup.js diff --git a/src/components/molecules/ListGroup/cod-listgroup.js b/src/experimental/components/molecules/ListGroup/cod-listgroup.js similarity index 100% rename from src/components/molecules/ListGroup/cod-listgroup.js rename to src/experimental/components/molecules/ListGroup/cod-listgroup.js diff --git a/src/components/molecules/Nav/Nav.css b/src/experimental/components/molecules/Nav/Nav.css similarity index 100% rename from src/components/molecules/Nav/Nav.css rename to src/experimental/components/molecules/Nav/Nav.css diff --git a/src/components/molecules/Nav/Nav.css.map b/src/experimental/components/molecules/Nav/Nav.css.map similarity index 100% rename from src/components/molecules/Nav/Nav.css.map rename to src/experimental/components/molecules/Nav/Nav.css.map diff --git a/src/components/molecules/Nav/Nav.js b/src/experimental/components/molecules/Nav/Nav.js similarity index 100% rename from src/components/molecules/Nav/Nav.js rename to src/experimental/components/molecules/Nav/Nav.js diff --git a/src/components/molecules/Nav/Nav.scss b/src/experimental/components/molecules/Nav/Nav.scss similarity index 100% rename from src/components/molecules/Nav/Nav.scss rename to src/experimental/components/molecules/Nav/Nav.scss diff --git a/src/components/molecules/Nav/cod-nav.js b/src/experimental/components/molecules/Nav/cod-nav.js similarity index 100% rename from src/components/molecules/Nav/cod-nav.js rename to src/experimental/components/molecules/Nav/cod-nav.js diff --git a/src/components/molecules/Pagination/Pagination.css b/src/experimental/components/molecules/Pagination/Pagination.css similarity index 100% rename from src/components/molecules/Pagination/Pagination.css rename to src/experimental/components/molecules/Pagination/Pagination.css diff --git a/src/components/molecules/Pagination/Pagination.js b/src/experimental/components/molecules/Pagination/Pagination.js similarity index 100% rename from src/components/molecules/Pagination/Pagination.js rename to src/experimental/components/molecules/Pagination/Pagination.js diff --git a/src/components/molecules/Pagination/cod-pagination.js b/src/experimental/components/molecules/Pagination/cod-pagination.js similarity index 100% rename from src/components/molecules/Pagination/cod-pagination.js rename to src/experimental/components/molecules/Pagination/cod-pagination.js diff --git a/src/components/organisms/ArticleCard/ArticleCard.css b/src/experimental/components/organisms/ArticleCard/ArticleCard.css similarity index 100% rename from src/components/organisms/ArticleCard/ArticleCard.css rename to src/experimental/components/organisms/ArticleCard/ArticleCard.css diff --git a/src/components/organisms/ArticleCard/ArticleCard.css.map b/src/experimental/components/organisms/ArticleCard/ArticleCard.css.map similarity index 100% rename from src/components/organisms/ArticleCard/ArticleCard.css.map rename to src/experimental/components/organisms/ArticleCard/ArticleCard.css.map diff --git a/src/components/organisms/ArticleCard/ArticleCard.js b/src/experimental/components/organisms/ArticleCard/ArticleCard.js similarity index 100% rename from src/components/organisms/ArticleCard/ArticleCard.js rename to src/experimental/components/organisms/ArticleCard/ArticleCard.js diff --git a/src/components/organisms/ArticleCard/ArticleCard.scss b/src/experimental/components/organisms/ArticleCard/ArticleCard.scss similarity index 100% rename from src/components/organisms/ArticleCard/ArticleCard.scss rename to src/experimental/components/organisms/ArticleCard/ArticleCard.scss diff --git a/src/components/organisms/ArticleCard/cod-article-card.js b/src/experimental/components/organisms/ArticleCard/cod-article-card.js similarity index 100% rename from src/components/organisms/ArticleCard/cod-article-card.js rename to src/experimental/components/organisms/ArticleCard/cod-article-card.js diff --git a/src/components/organisms/Calendar/Calendar.css b/src/experimental/components/organisms/Calendar/Calendar.css similarity index 100% rename from src/components/organisms/Calendar/Calendar.css rename to src/experimental/components/organisms/Calendar/Calendar.css diff --git a/src/components/organisms/Calendar/Calendar.js b/src/experimental/components/organisms/Calendar/Calendar.js similarity index 100% rename from src/components/organisms/Calendar/Calendar.js rename to src/experimental/components/organisms/Calendar/Calendar.js diff --git a/src/components/organisms/Calendar/cod-calendar.js b/src/experimental/components/organisms/Calendar/cod-calendar.js similarity index 100% rename from src/components/organisms/Calendar/cod-calendar.js rename to src/experimental/components/organisms/Calendar/cod-calendar.js diff --git a/src/components/organisms/Card/Card.css b/src/experimental/components/organisms/Card/Card.css similarity index 100% rename from src/components/organisms/Card/Card.css rename to src/experimental/components/organisms/Card/Card.css diff --git a/src/components/organisms/Card/Card.js b/src/experimental/components/organisms/Card/Card.js similarity index 100% rename from src/components/organisms/Card/Card.js rename to src/experimental/components/organisms/Card/Card.js diff --git a/src/components/organisms/Card/cod-card.js b/src/experimental/components/organisms/Card/cod-card.js similarity index 100% rename from src/components/organisms/Card/cod-card.js rename to src/experimental/components/organisms/Card/cod-card.js diff --git a/src/components/organisms/Carousel/Carousel.css b/src/experimental/components/organisms/Carousel/Carousel.css similarity index 100% rename from src/components/organisms/Carousel/Carousel.css rename to src/experimental/components/organisms/Carousel/Carousel.css diff --git a/src/components/organisms/Carousel/Carousel.js b/src/experimental/components/organisms/Carousel/Carousel.js similarity index 100% rename from src/components/organisms/Carousel/Carousel.js rename to src/experimental/components/organisms/Carousel/Carousel.js diff --git a/src/components/organisms/Carousel/cod-carousel.js b/src/experimental/components/organisms/Carousel/cod-carousel.js similarity index 100% rename from src/components/organisms/Carousel/cod-carousel.js rename to src/experimental/components/organisms/Carousel/cod-carousel.js diff --git a/src/components/organisms/Form/Form.css b/src/experimental/components/organisms/Form/Form.css similarity index 100% rename from src/components/organisms/Form/Form.css rename to src/experimental/components/organisms/Form/Form.css diff --git a/src/components/organisms/Form/Form.js b/src/experimental/components/organisms/Form/Form.js similarity index 100% rename from src/components/organisms/Form/Form.js rename to src/experimental/components/organisms/Form/Form.js diff --git a/src/components/organisms/Form/cod-form.js b/src/experimental/components/organisms/Form/cod-form.js similarity index 100% rename from src/components/organisms/Form/cod-form.js rename to src/experimental/components/organisms/Form/cod-form.js diff --git a/src/components/organisms/Geocoder/Geocoder.css b/src/experimental/components/organisms/Geocoder/Geocoder.css similarity index 100% rename from src/components/organisms/Geocoder/Geocoder.css rename to src/experimental/components/organisms/Geocoder/Geocoder.css diff --git a/src/components/organisms/Geocoder/Geocoder.js b/src/experimental/components/organisms/Geocoder/Geocoder.js similarity index 100% rename from src/components/organisms/Geocoder/Geocoder.js rename to src/experimental/components/organisms/Geocoder/Geocoder.js diff --git a/src/components/organisms/Geocoder/cod-geocoder.js b/src/experimental/components/organisms/Geocoder/cod-geocoder.js similarity index 100% rename from src/components/organisms/Geocoder/cod-geocoder.js rename to src/experimental/components/organisms/Geocoder/cod-geocoder.js diff --git a/src/components/organisms/ImgSlider/ImgSlider.css b/src/experimental/components/organisms/ImgSlider/ImgSlider.css similarity index 100% rename from src/components/organisms/ImgSlider/ImgSlider.css rename to src/experimental/components/organisms/ImgSlider/ImgSlider.css diff --git a/src/components/organisms/ImgSlider/ImgSlider.js b/src/experimental/components/organisms/ImgSlider/ImgSlider.js similarity index 100% rename from src/components/organisms/ImgSlider/ImgSlider.js rename to src/experimental/components/organisms/ImgSlider/ImgSlider.js diff --git a/src/components/organisms/ImgSlider/cod-img-slider.js b/src/experimental/components/organisms/ImgSlider/cod-img-slider.js similarity index 100% rename from src/components/organisms/ImgSlider/cod-img-slider.js rename to src/experimental/components/organisms/ImgSlider/cod-img-slider.js diff --git a/src/components/organisms/Map/Map.css b/src/experimental/components/organisms/Map/Map.css similarity index 100% rename from src/components/organisms/Map/Map.css rename to src/experimental/components/organisms/Map/Map.css diff --git a/src/components/organisms/Map/Map.js b/src/experimental/components/organisms/Map/Map.js similarity index 100% rename from src/components/organisms/Map/Map.js rename to src/experimental/components/organisms/Map/Map.js diff --git a/src/components/organisms/Map/cod-map.js b/src/experimental/components/organisms/Map/cod-map.js similarity index 100% rename from src/components/organisms/Map/cod-map.js rename to src/experimental/components/organisms/Map/cod-map.js diff --git a/src/components/organisms/Map/style.json b/src/experimental/components/organisms/Map/style.json similarity index 100% rename from src/components/organisms/Map/style.json rename to src/experimental/components/organisms/Map/style.json diff --git a/src/components/organisms/Modal/Modal.css b/src/experimental/components/organisms/Modal/Modal.css similarity index 100% rename from src/components/organisms/Modal/Modal.css rename to src/experimental/components/organisms/Modal/Modal.css diff --git a/src/components/organisms/Modal/Modal.js b/src/experimental/components/organisms/Modal/Modal.js similarity index 100% rename from src/components/organisms/Modal/Modal.js rename to src/experimental/components/organisms/Modal/Modal.js diff --git a/src/components/organisms/Modal/cod-modal.js b/src/experimental/components/organisms/Modal/cod-modal.js similarity index 100% rename from src/components/organisms/Modal/cod-modal.js rename to src/experimental/components/organisms/Modal/cod-modal.js diff --git a/src/components/organisms/Navbar/Navbar.css b/src/experimental/components/organisms/Navbar/Navbar.css similarity index 100% rename from src/components/organisms/Navbar/Navbar.css rename to src/experimental/components/organisms/Navbar/Navbar.css diff --git a/src/components/organisms/Navbar/Navbar.js b/src/experimental/components/organisms/Navbar/Navbar.js similarity index 100% rename from src/components/organisms/Navbar/Navbar.js rename to src/experimental/components/organisms/Navbar/Navbar.js diff --git a/src/components/organisms/Navbar/cod-navbar.js b/src/experimental/components/organisms/Navbar/cod-navbar.js similarity index 100% rename from src/components/organisms/Navbar/cod-navbar.js rename to src/experimental/components/organisms/Navbar/cod-navbar.js diff --git a/src/components/organisms/Offcanvas/Offcanvas.css b/src/experimental/components/organisms/Offcanvas/Offcanvas.css similarity index 100% rename from src/components/organisms/Offcanvas/Offcanvas.css rename to src/experimental/components/organisms/Offcanvas/Offcanvas.css diff --git a/src/components/organisms/Offcanvas/Offcanvas.css.map b/src/experimental/components/organisms/Offcanvas/Offcanvas.css.map similarity index 100% rename from src/components/organisms/Offcanvas/Offcanvas.css.map rename to src/experimental/components/organisms/Offcanvas/Offcanvas.css.map diff --git a/src/components/organisms/Offcanvas/Offcanvas.js b/src/experimental/components/organisms/Offcanvas/Offcanvas.js similarity index 100% rename from src/components/organisms/Offcanvas/Offcanvas.js rename to src/experimental/components/organisms/Offcanvas/Offcanvas.js diff --git a/src/components/organisms/Offcanvas/Offcanvas.scss b/src/experimental/components/organisms/Offcanvas/Offcanvas.scss similarity index 100% rename from src/components/organisms/Offcanvas/Offcanvas.scss rename to src/experimental/components/organisms/Offcanvas/Offcanvas.scss diff --git a/src/components/organisms/Offcanvas/cod-offcanvas.js b/src/experimental/components/organisms/Offcanvas/cod-offcanvas.js similarity index 100% rename from src/components/organisms/Offcanvas/cod-offcanvas.js rename to src/experimental/components/organisms/Offcanvas/cod-offcanvas.js diff --git a/src/components/organisms/Table/Table.css b/src/experimental/components/organisms/Table/Table.css similarity index 100% rename from src/components/organisms/Table/Table.css rename to src/experimental/components/organisms/Table/Table.css diff --git a/src/components/organisms/Table/Table.js b/src/experimental/components/organisms/Table/Table.js similarity index 100% rename from src/components/organisms/Table/Table.js rename to src/experimental/components/organisms/Table/Table.js diff --git a/src/components/organisms/Table/cod-table.js b/src/experimental/components/organisms/Table/cod-table.js similarity index 100% rename from src/components/organisms/Table/cod-table.js rename to src/experimental/components/organisms/Table/cod-table.js diff --git a/src/components/organisms/TableV2/TableV2.css b/src/experimental/components/organisms/TableV2/TableV2.css similarity index 100% rename from src/components/organisms/TableV2/TableV2.css rename to src/experimental/components/organisms/TableV2/TableV2.css diff --git a/src/components/organisms/TableV2/TableV2.css.map b/src/experimental/components/organisms/TableV2/TableV2.css.map similarity index 100% rename from src/components/organisms/TableV2/TableV2.css.map rename to src/experimental/components/organisms/TableV2/TableV2.css.map diff --git a/src/components/organisms/TableV2/TableV2.js b/src/experimental/components/organisms/TableV2/TableV2.js similarity index 100% rename from src/components/organisms/TableV2/TableV2.js rename to src/experimental/components/organisms/TableV2/TableV2.js diff --git a/src/components/organisms/TableV2/TableV2.scss b/src/experimental/components/organisms/TableV2/TableV2.scss similarity index 100% rename from src/components/organisms/TableV2/TableV2.scss rename to src/experimental/components/organisms/TableV2/TableV2.scss diff --git a/src/components/organisms/TableV2/cod-table-v2.js b/src/experimental/components/organisms/TableV2/cod-table-v2.js similarity index 100% rename from src/components/organisms/TableV2/cod-table-v2.js rename to src/experimental/components/organisms/TableV2/cod-table-v2.js diff --git a/src/components/organisms/VideoPlayer/VideoPlayer.css b/src/experimental/components/organisms/VideoPlayer/VideoPlayer.css similarity index 100% rename from src/components/organisms/VideoPlayer/VideoPlayer.css rename to src/experimental/components/organisms/VideoPlayer/VideoPlayer.css diff --git a/src/components/organisms/VideoPlayer/VideoPlayer.css.map b/src/experimental/components/organisms/VideoPlayer/VideoPlayer.css.map similarity index 100% rename from src/components/organisms/VideoPlayer/VideoPlayer.css.map rename to src/experimental/components/organisms/VideoPlayer/VideoPlayer.css.map diff --git a/src/components/organisms/VideoPlayer/VideoPlayer.js b/src/experimental/components/organisms/VideoPlayer/VideoPlayer.js similarity index 100% rename from src/components/organisms/VideoPlayer/VideoPlayer.js rename to src/experimental/components/organisms/VideoPlayer/VideoPlayer.js diff --git a/src/components/organisms/VideoPlayer/VideoPlayer.scss b/src/experimental/components/organisms/VideoPlayer/VideoPlayer.scss similarity index 100% rename from src/components/organisms/VideoPlayer/VideoPlayer.scss rename to src/experimental/components/organisms/VideoPlayer/VideoPlayer.scss diff --git a/src/components/organisms/VideoPlayer/cod-videoplayer.js b/src/experimental/components/organisms/VideoPlayer/cod-videoplayer.js similarity index 100% rename from src/components/organisms/VideoPlayer/cod-videoplayer.js rename to src/experimental/components/organisms/VideoPlayer/cod-videoplayer.js diff --git a/src/index-experimental.js b/src/experimental/index-experimental.js similarity index 100% rename from src/index-experimental.js rename to src/experimental/index-experimental.js diff --git a/src/stories/Introduction.stories.mdx b/src/experimental/stories/Introduction.stories.mdx similarity index 99% rename from src/stories/Introduction.stories.mdx rename to src/experimental/stories/Introduction.stories.mdx index 5b689037..32348e77 100644 --- a/src/stories/Introduction.stories.mdx +++ b/src/experimental/stories/Introduction.stories.mdx @@ -138,8 +138,7 @@ While viewing a component, to the right of the Canvas there is a tabbed Panel wh

The COD UXDS Storybook includes an Experimental section. These components are - in development and should be considered unstable. They are provided for - preview and testing purposes only. Please note: + in development and should be considered unstable. They are provided for preview and testing purposes only. Please note:

    diff --git a/src/stories/Setup.stories.mdx b/src/experimental/stories/Setup.stories.mdx similarity index 100% rename from src/stories/Setup.stories.mdx rename to src/experimental/stories/Setup.stories.mdx diff --git a/src/stories/Styles.stories.mdx b/src/experimental/stories/Styles.stories.mdx similarity index 100% rename from src/stories/Styles.stories.mdx rename to src/experimental/stories/Styles.stories.mdx diff --git a/src/stories/accordion.stories.js b/src/experimental/stories/accordion.stories.js similarity index 100% rename from src/stories/accordion.stories.js rename to src/experimental/stories/accordion.stories.js diff --git a/src/stories/actionbutton.stories.js b/src/experimental/stories/actionbutton.stories.js similarity index 100% rename from src/stories/actionbutton.stories.js rename to src/experimental/stories/actionbutton.stories.js diff --git a/src/stories/actionbuttonV2.stories.js b/src/experimental/stories/actionbuttonV2.stories.js similarity index 100% rename from src/stories/actionbuttonV2.stories.js rename to src/experimental/stories/actionbuttonV2.stories.js diff --git a/src/stories/alert.stories.js b/src/experimental/stories/alert.stories.js similarity index 100% rename from src/stories/alert.stories.js rename to src/experimental/stories/alert.stories.js diff --git a/src/stories/articlecard.stories.js b/src/experimental/stories/articlecard.stories.js similarity index 100% rename from src/stories/articlecard.stories.js rename to src/experimental/stories/articlecard.stories.js diff --git a/src/stories/assets/building.png b/src/experimental/stories/assets/building.png similarity index 100% rename from src/stories/assets/building.png rename to src/experimental/stories/assets/building.png diff --git a/src/stories/assets/code-brackets.svg b/src/experimental/stories/assets/code-brackets.svg similarity index 100% rename from src/stories/assets/code-brackets.svg rename to src/experimental/stories/assets/code-brackets.svg diff --git a/src/stories/assets/colors.svg b/src/experimental/stories/assets/colors.svg similarity index 100% rename from src/stories/assets/colors.svg rename to src/experimental/stories/assets/colors.svg diff --git a/src/stories/assets/comments.svg b/src/experimental/stories/assets/comments.svg similarity index 100% rename from src/stories/assets/comments.svg rename to src/experimental/stories/assets/comments.svg diff --git a/src/stories/assets/direction.svg b/src/experimental/stories/assets/direction.svg similarity index 100% rename from src/stories/assets/direction.svg rename to src/experimental/stories/assets/direction.svg diff --git a/src/stories/assets/example-image.svg b/src/experimental/stories/assets/example-image.svg similarity index 100% rename from src/stories/assets/example-image.svg rename to src/experimental/stories/assets/example-image.svg diff --git a/src/stories/assets/example-image2.svg b/src/experimental/stories/assets/example-image2.svg similarity index 100% rename from src/stories/assets/example-image2.svg rename to src/experimental/stories/assets/example-image2.svg diff --git a/src/stories/assets/flow.svg b/src/experimental/stories/assets/flow.svg similarity index 100% rename from src/stories/assets/flow.svg rename to src/experimental/stories/assets/flow.svg diff --git a/src/stories/assets/hook.png b/src/experimental/stories/assets/hook.png similarity index 100% rename from src/stories/assets/hook.png rename to src/experimental/stories/assets/hook.png diff --git a/src/stories/assets/plugin.svg b/src/experimental/stories/assets/plugin.svg similarity index 100% rename from src/stories/assets/plugin.svg rename to src/experimental/stories/assets/plugin.svg diff --git a/src/stories/assets/repo.svg b/src/experimental/stories/assets/repo.svg similarity index 100% rename from src/stories/assets/repo.svg rename to src/experimental/stories/assets/repo.svg diff --git a/src/stories/assets/stackalt.svg b/src/experimental/stories/assets/stackalt.svg similarity index 100% rename from src/stories/assets/stackalt.svg rename to src/experimental/stories/assets/stackalt.svg diff --git a/src/stories/badge.stories.js b/src/experimental/stories/badge.stories.js similarity index 100% rename from src/stories/badge.stories.js rename to src/experimental/stories/badge.stories.js diff --git a/src/stories/breadcrumb.stories.js b/src/experimental/stories/breadcrumb.stories.js similarity index 100% rename from src/stories/breadcrumb.stories.js rename to src/experimental/stories/breadcrumb.stories.js diff --git a/src/stories/button.stories.js b/src/experimental/stories/button.stories.js similarity index 100% rename from src/stories/button.stories.js rename to src/experimental/stories/button.stories.js diff --git a/src/stories/buttongroup.stories.js b/src/experimental/stories/buttongroup.stories.js similarity index 100% rename from src/stories/buttongroup.stories.js rename to src/experimental/stories/buttongroup.stories.js diff --git a/src/stories/calendar.stories.js b/src/experimental/stories/calendar.stories.js similarity index 100% rename from src/stories/calendar.stories.js rename to src/experimental/stories/calendar.stories.js diff --git a/src/stories/card.stories.js b/src/experimental/stories/card.stories.js similarity index 100% rename from src/stories/card.stories.js rename to src/experimental/stories/card.stories.js diff --git a/src/stories/carousel.stories.js b/src/experimental/stories/carousel.stories.js similarity index 100% rename from src/stories/carousel.stories.js rename to src/experimental/stories/carousel.stories.js diff --git a/src/stories/container.stories.js b/src/experimental/stories/container.stories.js similarity index 100% rename from src/stories/container.stories.js rename to src/experimental/stories/container.stories.js diff --git a/src/stories/countdown.stories.js b/src/experimental/stories/countdown.stories.js similarity index 100% rename from src/stories/countdown.stories.js rename to src/experimental/stories/countdown.stories.js diff --git a/src/stories/dropdown.stories.js b/src/experimental/stories/dropdown.stories.js similarity index 100% rename from src/stories/dropdown.stories.js rename to src/experimental/stories/dropdown.stories.js diff --git a/src/stories/extra-txt.txt b/src/experimental/stories/extra-txt.txt similarity index 100% rename from src/stories/extra-txt.txt rename to src/experimental/stories/extra-txt.txt diff --git a/src/stories/form.stories.js b/src/experimental/stories/form.stories.js similarity index 100% rename from src/stories/form.stories.js rename to src/experimental/stories/form.stories.js diff --git a/src/stories/formcheck.stories.js b/src/experimental/stories/formcheck.stories.js similarity index 100% rename from src/stories/formcheck.stories.js rename to src/experimental/stories/formcheck.stories.js diff --git a/src/stories/formcheckgroup.stories.js b/src/experimental/stories/formcheckgroup.stories.js similarity index 100% rename from src/stories/formcheckgroup.stories.js rename to src/experimental/stories/formcheckgroup.stories.js diff --git a/src/stories/formcontrol.stories.js b/src/experimental/stories/formcontrol.stories.js similarity index 100% rename from src/stories/formcontrol.stories.js rename to src/experimental/stories/formcontrol.stories.js diff --git a/src/stories/formlabel.stories.js b/src/experimental/stories/formlabel.stories.js similarity index 100% rename from src/stories/formlabel.stories.js rename to src/experimental/stories/formlabel.stories.js diff --git a/src/stories/formselect.stories.js b/src/experimental/stories/formselect.stories.js similarity index 100% rename from src/stories/formselect.stories.js rename to src/experimental/stories/formselect.stories.js diff --git a/src/stories/geocoder.stories.js b/src/experimental/stories/geocoder.stories.js similarity index 100% rename from src/stories/geocoder.stories.js rename to src/experimental/stories/geocoder.stories.js diff --git a/src/stories/icon.stories.js b/src/experimental/stories/icon.stories.js similarity index 100% rename from src/stories/icon.stories.js rename to src/experimental/stories/icon.stories.js diff --git a/src/stories/image.stories.js b/src/experimental/stories/image.stories.js similarity index 100% rename from src/stories/image.stories.js rename to src/experimental/stories/image.stories.js diff --git a/src/stories/imgslider.stories.js b/src/experimental/stories/imgslider.stories.js similarity index 100% rename from src/stories/imgslider.stories.js rename to src/experimental/stories/imgslider.stories.js diff --git a/src/stories/infobutton.stories.js b/src/experimental/stories/infobutton.stories.js similarity index 100% rename from src/stories/infobutton.stories.js rename to src/experimental/stories/infobutton.stories.js diff --git a/src/stories/legacybutton.stories.js b/src/experimental/stories/legacybutton.stories.js similarity index 100% rename from src/stories/legacybutton.stories.js rename to src/experimental/stories/legacybutton.stories.js diff --git a/src/stories/legacyicon.stories.js b/src/experimental/stories/legacyicon.stories.js similarity index 100% rename from src/stories/legacyicon.stories.js rename to src/experimental/stories/legacyicon.stories.js diff --git a/src/stories/listgroup.stories.js b/src/experimental/stories/listgroup.stories.js similarity index 100% rename from src/stories/listgroup.stories.js rename to src/experimental/stories/listgroup.stories.js diff --git a/src/stories/loader.stories.js b/src/experimental/stories/loader.stories.js similarity index 100% rename from src/stories/loader.stories.js rename to src/experimental/stories/loader.stories.js diff --git a/src/stories/map.stories.js b/src/experimental/stories/map.stories.js similarity index 100% rename from src/stories/map.stories.js rename to src/experimental/stories/map.stories.js diff --git a/src/stories/modal.stories.js b/src/experimental/stories/modal.stories.js similarity index 100% rename from src/stories/modal.stories.js rename to src/experimental/stories/modal.stories.js diff --git a/src/stories/nav.stories.js b/src/experimental/stories/nav.stories.js similarity index 100% rename from src/stories/nav.stories.js rename to src/experimental/stories/nav.stories.js diff --git a/src/stories/navbar.stories.js b/src/experimental/stories/navbar.stories.js similarity index 100% rename from src/stories/navbar.stories.js rename to src/experimental/stories/navbar.stories.js diff --git a/src/stories/offcanvas.stories.js b/src/experimental/stories/offcanvas.stories.js similarity index 100% rename from src/stories/offcanvas.stories.js rename to src/experimental/stories/offcanvas.stories.js diff --git a/src/stories/pagination.stories.js b/src/experimental/stories/pagination.stories.js similarity index 100% rename from src/stories/pagination.stories.js rename to src/experimental/stories/pagination.stories.js diff --git a/src/stories/progress.stories.js b/src/experimental/stories/progress.stories.js similarity index 100% rename from src/stories/progress.stories.js rename to src/experimental/stories/progress.stories.js diff --git a/src/stories/range.stories.js b/src/experimental/stories/range.stories.js similarity index 100% rename from src/stories/range.stories.js rename to src/experimental/stories/range.stories.js diff --git a/src/stories/spinner.stories.js b/src/experimental/stories/spinner.stories.js similarity index 100% rename from src/stories/spinner.stories.js rename to src/experimental/stories/spinner.stories.js diff --git a/src/stories/table-v2.stories.js b/src/experimental/stories/table-v2.stories.js similarity index 100% rename from src/stories/table-v2.stories.js rename to src/experimental/stories/table-v2.stories.js diff --git a/src/stories/table.stories.js b/src/experimental/stories/table.stories.js similarity index 100% rename from src/stories/table.stories.js rename to src/experimental/stories/table.stories.js diff --git a/src/stories/videoplayer.stories.js b/src/experimental/stories/videoplayer.stories.js similarity index 100% rename from src/stories/videoplayer.stories.js rename to src/experimental/stories/videoplayer.stories.js diff --git a/src/stable/index-stable.js b/src/stable/index-stable.js new file mode 100644 index 00000000..e69de29b From c652de1134f52d381524fe0a3006be5efc489157 Mon Sep 17 00:00:00 2001 From: Shakira Reid-Thomas Date: Fri, 3 Jan 2025 11:35:50 -0500 Subject: [PATCH 06/15] ran prettier in one file --- src/experimental/stories/Introduction.stories.mdx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/experimental/stories/Introduction.stories.mdx b/src/experimental/stories/Introduction.stories.mdx index 32348e77..5b689037 100644 --- a/src/experimental/stories/Introduction.stories.mdx +++ b/src/experimental/stories/Introduction.stories.mdx @@ -138,7 +138,8 @@ While viewing a component, to the right of the Canvas there is a tabbed Panel wh

    The COD UXDS Storybook includes an Experimental section. These components are - in development and should be considered unstable. They are provided for preview and testing purposes only. Please note: + in development and should be considered unstable. They are provided for + preview and testing purposes only. Please note:

      From d08393f112925150182255ae4718eeeaac0cdab0 Mon Sep 17 00:00:00 2001 From: Shakira Reid-Thomas Date: Fri, 3 Jan 2025 13:16:05 -0500 Subject: [PATCH 07/15] Updated import paths in index-experimental.js --- src/experimental/index-experimental.js | 128 ++++++++++++------------- 1 file changed, 64 insertions(+), 64 deletions(-) diff --git a/src/experimental/index-experimental.js b/src/experimental/index-experimental.js index e570a3c4..6f27aaa2 100644 --- a/src/experimental/index-experimental.js +++ b/src/experimental/index-experimental.js @@ -3,71 +3,71 @@ // ============================================================ // Importing atoms -import './components/atoms/AccordionBody/cod-accordion-body'; -import './components/atoms/AccordionHeader/cod-accordion-header'; -import './components/atoms/AccordionItem/cod-accordion-item'; -import './components/atoms/Alert/cod-alert'; -import './components/atoms/Badge/cod-badge'; -import './components/atoms/Breadcrumb/cod-breadcrumb'; -import './components/atoms/Button/cod-button'; -import './components/atoms/CardBody/cod-card-body'; -import './components/atoms/CardFooter/cod-card-footer'; -import './components/atoms/CardHeader/cod-card-header'; -import './components/atoms/CardOverlay/cod-card-overlay'; -import './components/atoms/CarouselCaption/cod-carousel-caption'; -import './components/atoms/CarouselItem/cod-carousel-item'; -import './components/atoms/Container/cod-container'; -import './components/atoms/Countdown/cod-countdown'; -import './components/atoms/DropdownMenu/cod-dropdown-menu'; -import './components/atoms/FormCheck/cod-formcheck'; -import './components/atoms/FormControl/cod-formcontrol'; -import './components/atoms/FormLabel/cod-formlabel'; -import './components/atoms/FormSelect/cod-formselect'; -import './components/atoms/Icon/cod-icon'; -import './components/atoms/Image/cod-image'; -import './components/atoms/LegacyButton/cod-legacy-button'; -import './components/atoms/LegacyIcon/cod-legacy-icon'; -import './components/atoms/ListGroupItem/cod-listgroup-item'; -import './components/atoms/Loader/cod-loader'; -import './components/atoms/ModalBody/cod-modal-body'; -import './components/atoms/ModalFooter/cod-modal-footer'; -import './components/atoms/ModalHeader/cod-modal-header'; -import './components/atoms/NavbarBrand/cod-navbar-brand'; -import './components/atoms/NavbarCollapse/cod-navbar-collapse'; -import './components/atoms/NavbarOffcanvas/cod-navbar-offcanvas'; -import './components/atoms/NavbarToggle/cod-navbar-toggle'; -import './components/atoms/OffcanvasBody/cod-offcanvas-body'; -import './components/atoms/OffcanvasHeader/cod-offcanvas-header'; -import './components/atoms/PaginationItem/cod-pagination-item'; -import './components/atoms/Progress/cod-progress'; -import './components/atoms/Range/cod-range'; -import './components/atoms/Spinner/cod-spinner'; -import './components/atoms/TableBody/cod-table-body'; -import './components/atoms/TableCell/cod-table-cell'; -import './components/atoms/TableCellHeader/cod-table-cell-header'; -import './components/atoms/TableHeader/cod-table-header'; -import './components/atoms/TableRow/cod-table-row'; -import './components/atoms/ActionButton/cod-action-button'; -import './components/atoms/InfoButton/cod-info-button'; +import '../experimental/components/atoms/AccordionBody/cod-accordion-body'; +import '../experimental/components/atoms/AccordionHeader/cod-accordion-header'; +import '../experimental/components/atoms/AccordionItem/cod-accordion-item'; +import '../experimental/components/atoms/Alert/cod-alert'; +import '../experimental/components/atoms/Badge/cod-badge'; +import '../experimental/components/atoms/Breadcrumb/cod-breadcrumb'; +import '../experimental/components/atoms/Button/cod-button'; +import '../experimental/components/atoms/CardBody/cod-card-body'; +import '../experimental/components/atoms/CardFooter/cod-card-footer'; +import '../experimental/components/atoms/CardHeader/cod-card-header'; +import '../experimental/components/atoms/CardOverlay/cod-card-overlay'; +import '../experimental/components/atoms/CarouselCaption/cod-carousel-caption'; +import '../experimental/components/atoms/CarouselItem/cod-carousel-item'; +import '../experimental/components/atoms/Container/cod-container'; +import '../experimental/components/atoms/Countdown/cod-countdown'; +import '../experimental/components/atoms/DropdownMenu/cod-dropdown-menu'; +import '../experimental/components/atoms/FormCheck/cod-formcheck'; +import '../experimental/components/atoms/FormControl/cod-formcontrol'; +import '../experimental/components/atoms/FormLabel/cod-formlabel'; +import '../experimental/components/atoms/FormSelect/cod-formselect'; +import '../experimental/components/atoms/Icon/cod-icon'; +import '../experimental/components/atoms/Image/cod-image'; +import '../experimental/components/atoms/LegacyButton/cod-legacy-button'; +import '../experimental/components/atoms/LegacyIcon/cod-legacy-icon'; +import '../experimental/components/atoms/ListGroupItem/cod-listgroup-item'; +import '../experimental/components/atoms/Loader/cod-loader'; +import '../experimental/components/atoms/ModalBody/cod-modal-body'; +import '../experimental/components/atoms/ModalFooter/cod-modal-footer'; +import '../experimental/components/atoms/ModalHeader/cod-modal-header'; +import '../experimental/components/atoms/NavbarBrand/cod-navbar-brand'; +import '../experimental/components/atoms/NavbarCollapse/cod-navbar-collapse'; +import '../experimental/components/atoms/NavbarOffcanvas/cod-navbar-offcanvas'; +import '../experimental/components/atoms/NavbarToggle/cod-navbar-toggle'; +import '../experimental/components/atoms/OffcanvasBody/cod-offcanvas-body'; +import '../experimental/components/atoms/OffcanvasHeader/cod-offcanvas-header'; +import '../experimental/components/atoms/PaginationItem/cod-pagination-item'; +import '../experimental/components/atoms/Progress/cod-progress'; +import '../experimental/components/atoms/Range/cod-range'; +import '../experimental/components/atoms/Spinner/cod-spinner'; +import '../experimental/components/atoms/TableBody/cod-table-body'; +import '../experimental/components/atoms/TableCell/cod-table-cell'; +import '../experimental/components/atoms/TableCellHeader/cod-table-cell-header'; +import '../experimental/components/atoms/TableHeader/cod-table-header'; +import '../experimental/components/atoms/TableRow/cod-table-row'; +import '../experimental/components/atoms/ActionButton/cod-action-button'; +import '../experimental/components/atoms/InfoButton/cod-info-button'; // Importing organisms -import './components/organisms/ArticleCard/cod-article-card'; -import './components/organisms/Card/cod-card'; -import './components/organisms/Carousel/cod-carousel'; -import './components/organisms/Form/cod-form'; -import './components/organisms/Modal/cod-modal'; -import './components/organisms/Map/cod-map'; -import './components/organisms/Navbar/cod-navbar'; -import './components/organisms/Offcanvas/cod-offcanvas'; -import './components/organisms/ImgSlider/cod-img-slider'; -import './components/organisms/Table/cod-table'; -import './components/organisms/VideoPlayer/cod-videoplayer'; +import '../experimental/components/organisms/ArticleCard/cod-article-card'; +import '../experimental/components/organisms/Card/cod-card'; +import '../experimental/components/organisms/Carousel/cod-carousel'; +import '../experimental/components/organisms/Form/cod-form'; +import '../experimental/components/organisms/Modal/cod-modal'; +import '../experimental/components/organisms/Map/cod-map'; +import '../experimental/components/organisms/Navbar/cod-navbar'; +import '../experimental/components/organisms/Offcanvas/cod-offcanvas'; +import '../experimental/components/organisms/ImgSlider/cod-img-slider'; +import '../experimental/components/organisms/Table/cod-table'; +import '../experimental/components/organisms/VideoPlayer/cod-videoplayer'; // Import molecules -import './components/molecules/Accordion/cod-accordion'; -import './components/molecules/ButtonGroup/cod-button-group'; -import './components/molecules/Dropdown/cod-dropdown'; -import './components/molecules/FormCheckGroup/cod-form-check-group'; -import './components/molecules/ListGroup/cod-listgroup'; -import './components/molecules/Nav/cod-nav'; -import './components/molecules/Pagination/cod-pagination'; +import '../experimental/components/molecules/Accordion/cod-accordion'; +import '../experimental/components/molecules/ButtonGroup/cod-button-group'; +import '../experimental/components/molecules/Dropdown/cod-dropdown'; +import '../experimental/components/molecules/FormCheckGroup/cod-form-check-group'; +import '../experimental/components/molecules/ListGroup/cod-listgroup'; +import '../experimental/components/molecules/Nav/cod-nav'; +import '../experimental/components/molecules/Pagination/cod-pagination'; \ No newline at end of file From e769bc7243f3c69cda6914cbab211af028a97d09 Mon Sep 17 00:00:00 2001 From: Shakira Reid-Thomas Date: Fri, 3 Jan 2025 13:17:55 -0500 Subject: [PATCH 08/15] Ran prettier in one file --- src/experimental/index-experimental.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/experimental/index-experimental.js b/src/experimental/index-experimental.js index 6f27aaa2..ed81c569 100644 --- a/src/experimental/index-experimental.js +++ b/src/experimental/index-experimental.js @@ -70,4 +70,4 @@ import '../experimental/components/molecules/Dropdown/cod-dropdown'; import '../experimental/components/molecules/FormCheckGroup/cod-form-check-group'; import '../experimental/components/molecules/ListGroup/cod-listgroup'; import '../experimental/components/molecules/Nav/cod-nav'; -import '../experimental/components/molecules/Pagination/cod-pagination'; \ No newline at end of file +import '../experimental/components/molecules/Pagination/cod-pagination'; From 07161e8bc9a5d17b1ae3aa7c2dff20e46ba586cd Mon Sep 17 00:00:00 2001 From: Shakira Reid-Thomas Date: Fri, 3 Jan 2025 13:31:06 -0500 Subject: [PATCH 09/15] Updated import for args-utils --- src/experimental/stories/actionbutton.stories.js | 3 ++- src/experimental/stories/actionbuttonV2.stories.js | 3 ++- src/experimental/stories/alert.stories.js | 3 ++- src/experimental/stories/articlecard.stories.js | 3 ++- src/experimental/stories/badge.stories.js | 3 ++- src/experimental/stories/button.stories.js | 3 ++- src/experimental/stories/container.stories.js | 3 ++- src/experimental/stories/countdown.stories.js | 3 ++- src/experimental/stories/form.stories.js | 3 ++- src/experimental/stories/formcheck.stories.js | 3 ++- src/experimental/stories/formcontrol.stories.js | 3 ++- src/experimental/stories/formlabel.stories.js | 3 ++- src/experimental/stories/formselect.stories.js | 3 ++- src/experimental/stories/icon.stories.js | 3 ++- src/experimental/stories/image.stories.js | 3 ++- src/experimental/stories/loader.stories.js | 3 ++- src/experimental/stories/progress.stories.js | 2 +- src/experimental/stories/range.stories.js | 3 ++- src/experimental/stories/spinner.stories.js | 3 ++- 19 files changed, 37 insertions(+), 19 deletions(-) diff --git a/src/experimental/stories/actionbutton.stories.js b/src/experimental/stories/actionbutton.stories.js index 5728b75f..96e3b856 100644 --- a/src/experimental/stories/actionbutton.stories.js +++ b/src/experimental/stories/actionbutton.stories.js @@ -1,7 +1,8 @@ import { html } from 'lit-html'; import '../components/atoms/ActionButton/cod-action-button'; import '../components/atoms/Icon/cod-icon'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { component: 'cod-action-button', diff --git a/src/experimental/stories/actionbuttonV2.stories.js b/src/experimental/stories/actionbuttonV2.stories.js index 0305f53f..643173c6 100644 --- a/src/experimental/stories/actionbuttonV2.stories.js +++ b/src/experimental/stories/actionbuttonV2.stories.js @@ -1,7 +1,8 @@ import { html } from 'lit-html'; import '../components/atoms/ActionButtonV2/cod-action-button-v2'; import '../components/atoms/Icon/cod-icon'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { component: 'cod-action-button-v2', diff --git a/src/experimental/stories/alert.stories.js b/src/experimental/stories/alert.stories.js index 3f30082b..240e9657 100644 --- a/src/experimental/stories/alert.stories.js +++ b/src/experimental/stories/alert.stories.js @@ -1,5 +1,6 @@ import '../components/atoms/Alert/cod-alert'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/Atoms/Alert', diff --git a/src/experimental/stories/articlecard.stories.js b/src/experimental/stories/articlecard.stories.js index c661ed6a..f40c907a 100644 --- a/src/experimental/stories/articlecard.stories.js +++ b/src/experimental/stories/articlecard.stories.js @@ -1,5 +1,6 @@ import '../components/organisms/ArticleCard/cod-article-card'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/Organisms/ArticleCard', diff --git a/src/experimental/stories/badge.stories.js b/src/experimental/stories/badge.stories.js index f25d6bbc..a2991c74 100644 --- a/src/experimental/stories/badge.stories.js +++ b/src/experimental/stories/badge.stories.js @@ -1,6 +1,7 @@ import { html } from 'lit-html'; import '../components/atoms/Badge/cod-badge'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/Atoms/Badge', diff --git a/src/experimental/stories/button.stories.js b/src/experimental/stories/button.stories.js index b04c5724..f49e9658 100644 --- a/src/experimental/stories/button.stories.js +++ b/src/experimental/stories/button.stories.js @@ -1,6 +1,7 @@ import '../components/atoms/Button/cod-button'; import '../components/atoms/Icon/cod-icon'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/Atoms/Button', diff --git a/src/experimental/stories/container.stories.js b/src/experimental/stories/container.stories.js index 9216f1cb..4b330096 100644 --- a/src/experimental/stories/container.stories.js +++ b/src/experimental/stories/container.stories.js @@ -1,5 +1,6 @@ import '../components/atoms/Container/cod-container'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/Atoms/Container', diff --git a/src/experimental/stories/countdown.stories.js b/src/experimental/stories/countdown.stories.js index f5dd0689..720251a1 100644 --- a/src/experimental/stories/countdown.stories.js +++ b/src/experimental/stories/countdown.stories.js @@ -1,5 +1,6 @@ import '../components/atoms/Countdown/cod-countdown'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/Atoms/Countdown', diff --git a/src/experimental/stories/form.stories.js b/src/experimental/stories/form.stories.js index 2adee7f6..f9104cea 100644 --- a/src/experimental/stories/form.stories.js +++ b/src/experimental/stories/form.stories.js @@ -1,5 +1,6 @@ import '../components/organisms/Form/cod-form'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/FormValidation', diff --git a/src/experimental/stories/formcheck.stories.js b/src/experimental/stories/formcheck.stories.js index c63ffb19..82547f37 100644 --- a/src/experimental/stories/formcheck.stories.js +++ b/src/experimental/stories/formcheck.stories.js @@ -1,5 +1,6 @@ import '../components/atoms/FormCheck/cod-formcheck'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/FormCheck', diff --git a/src/experimental/stories/formcontrol.stories.js b/src/experimental/stories/formcontrol.stories.js index 6d73f3c6..f9b73798 100644 --- a/src/experimental/stories/formcontrol.stories.js +++ b/src/experimental/stories/formcontrol.stories.js @@ -1,5 +1,6 @@ import '../components/atoms/FormControl/cod-formcontrol'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/FormControl', diff --git a/src/experimental/stories/formlabel.stories.js b/src/experimental/stories/formlabel.stories.js index ddf750a0..9dcd6fb1 100644 --- a/src/experimental/stories/formlabel.stories.js +++ b/src/experimental/stories/formlabel.stories.js @@ -1,5 +1,6 @@ import '../components/atoms/FormLabel/cod-formlabel'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/FormLabel', diff --git a/src/experimental/stories/formselect.stories.js b/src/experimental/stories/formselect.stories.js index cb50f521..5606f12b 100644 --- a/src/experimental/stories/formselect.stories.js +++ b/src/experimental/stories/formselect.stories.js @@ -1,5 +1,6 @@ import '../components/atoms/FormSelect/cod-formselect'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/FormSelect', diff --git a/src/experimental/stories/icon.stories.js b/src/experimental/stories/icon.stories.js index a5314d05..692ebf9c 100644 --- a/src/experimental/stories/icon.stories.js +++ b/src/experimental/stories/icon.stories.js @@ -1,5 +1,6 @@ import '../components/atoms/Icon/cod-icon'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/Atoms/Icon', diff --git a/src/experimental/stories/image.stories.js b/src/experimental/stories/image.stories.js index 015a962e..88603a56 100644 --- a/src/experimental/stories/image.stories.js +++ b/src/experimental/stories/image.stories.js @@ -1,5 +1,6 @@ import '../components/atoms/Image/cod-image'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/Atoms/Image', diff --git a/src/experimental/stories/loader.stories.js b/src/experimental/stories/loader.stories.js index 52b5c6fb..b61f29e6 100644 --- a/src/experimental/stories/loader.stories.js +++ b/src/experimental/stories/loader.stories.js @@ -1,5 +1,6 @@ import '../components/atoms/Loader/cod-loader'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/Atoms/Loader', diff --git a/src/experimental/stories/progress.stories.js b/src/experimental/stories/progress.stories.js index c8a674cc..856c0d24 100644 --- a/src/experimental/stories/progress.stories.js +++ b/src/experimental/stories/progress.stories.js @@ -1,4 +1,4 @@ -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; import '../components/atoms/Progress/cod-progress'; export default { diff --git a/src/experimental/stories/range.stories.js b/src/experimental/stories/range.stories.js index 667a270a..0500dc46 100644 --- a/src/experimental/stories/range.stories.js +++ b/src/experimental/stories/range.stories.js @@ -1,5 +1,6 @@ import '../components/atoms/Range/cod-range'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/Atoms/Forms/Range', diff --git a/src/experimental/stories/spinner.stories.js b/src/experimental/stories/spinner.stories.js index d32588b7..e711bd33 100644 --- a/src/experimental/stories/spinner.stories.js +++ b/src/experimental/stories/spinner.stories.js @@ -1,5 +1,6 @@ import '../components/atoms/Spinner/cod-spinner'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/Atoms/Spinner', From bc0eabdbe7b04e4de16a6da328b820ec2fb67d50 Mon Sep 17 00:00:00 2001 From: Shakira Reid-Thomas Date: Fri, 3 Jan 2025 13:32:18 -0500 Subject: [PATCH 10/15] Ran prettier in 18 files --- CHANGELOG.md | 17 +++++++---------- .../stories/actionbutton.stories.js | 1 - .../stories/actionbuttonV2.stories.js | 1 - src/experimental/stories/alert.stories.js | 1 - src/experimental/stories/articlecard.stories.js | 1 - src/experimental/stories/badge.stories.js | 1 - src/experimental/stories/button.stories.js | 1 - src/experimental/stories/container.stories.js | 1 - src/experimental/stories/countdown.stories.js | 1 - src/experimental/stories/form.stories.js | 1 - src/experimental/stories/formcheck.stories.js | 1 - src/experimental/stories/formcontrol.stories.js | 1 - src/experimental/stories/formlabel.stories.js | 1 - src/experimental/stories/formselect.stories.js | 1 - src/experimental/stories/icon.stories.js | 1 - src/experimental/stories/image.stories.js | 1 - src/experimental/stories/loader.stories.js | 1 - src/experimental/stories/range.stories.js | 1 - src/experimental/stories/spinner.stories.js | 1 - 19 files changed, 7 insertions(+), 28 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 22af64f0..761f9f32 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -77,12 +77,11 @@ #### 🚀 Enhancement - -* Support attribute-based animations on article card by @maxatdetroit in https://github.com/CityOfDetroit/COD-Design-System/pull/249 +- Support attribute-based animations on article card by @maxatdetroit in https://github.com/CityOfDetroit/COD-Design-System/pull/249 #### 🐛 Bug Fix -* Support long content in offcanvas body by @maxatdetroit in https://github.com/CityOfDetroit/COD-Design-System/pull/240 +- Support long content in offcanvas body by @maxatdetroit in https://github.com/CityOfDetroit/COD-Design-System/pull/240 #### Authors: 1 @@ -94,11 +93,11 @@ #### 🚀 Enhancement -* Allow legacy icons and buttons to scale responsively with parent container by @maxatdetroit in https://github.com/CityOfDetroit/COD-Design-System/pull/238 +- Allow legacy icons and buttons to scale responsively with parent container by @maxatdetroit in https://github.com/CityOfDetroit/COD-Design-System/pull/238 #### 🐛 Bug Fix -* Fix carousel transition animations on 'next' by @maxatdetroit in https://github.com/CityOfDetroit/COD-Design-System/pull/236 +- Fix carousel transition animations on 'next' by @maxatdetroit in https://github.com/CityOfDetroit/COD-Design-System/pull/236 #### Authors: 1 @@ -110,7 +109,7 @@ #### 🚀 Enhancement -* Introduce legacy icon component [by @maxatdetroit](https://github.com/CityOfDetroit/COD-Design-System/pull/234) +- Introduce legacy icon component [by @maxatdetroit](https://github.com/CityOfDetroit/COD-Design-System/pull/234) #### Authors: 1 @@ -122,7 +121,7 @@ #### 🚀 Enhancement -* Update article card styles given feedback [by @maxatdetroit](https://github.com/CityOfDetroit/COD-Design-System/pull/232) +- Update article card styles given feedback [by @maxatdetroit](https://github.com/CityOfDetroit/COD-Design-System/pull/232) #### Authors: 1 @@ -134,7 +133,7 @@ #### 🚀 Enhancement -* Add new detroit legacy button component [by @maxatdetroit](https://github.com/CityOfDetroit/COD-Design-System/pull/230) +- Add new detroit legacy button component [by @maxatdetroit](https://github.com/CityOfDetroit/COD-Design-System/pull/230) #### Authors: 1 @@ -291,7 +290,6 @@ - Adding new components: [`cod-info-button`](https://github.com/CityOfDetroit/COD-Design-System/pull/160) and [`cod-action-button`](https://github.com/CityOfDetroit/COD-Design-System/pull/158). - #### Authors: 1 - Max Morgan ([@maxatdetroit](https://github.com/maxatdetroit)) @@ -304,7 +302,6 @@ - Adding additional icons for intranet. [#157](https://github.com/CityOfDetroit/COD-Design-System/pull/157) ([@maxatdetroit](https://github.com/maxatdetroit)) - #### Authors: 1 - Max Morgan ([@maxatdetroit](https://github.com/maxatdetroit)) diff --git a/src/experimental/stories/actionbutton.stories.js b/src/experimental/stories/actionbutton.stories.js index 96e3b856..c524b488 100644 --- a/src/experimental/stories/actionbutton.stories.js +++ b/src/experimental/stories/actionbutton.stories.js @@ -3,7 +3,6 @@ import '../components/atoms/ActionButton/cod-action-button'; import '../components/atoms/Icon/cod-icon'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - export default { component: 'cod-action-button', title: 'Experimental/Atoms/ActionButton', diff --git a/src/experimental/stories/actionbuttonV2.stories.js b/src/experimental/stories/actionbuttonV2.stories.js index 643173c6..b8aa7b23 100644 --- a/src/experimental/stories/actionbuttonV2.stories.js +++ b/src/experimental/stories/actionbuttonV2.stories.js @@ -3,7 +3,6 @@ import '../components/atoms/ActionButtonV2/cod-action-button-v2'; import '../components/atoms/Icon/cod-icon'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - export default { component: 'cod-action-button-v2', title: 'Experimental/Atoms/ActionButtonV2', diff --git a/src/experimental/stories/alert.stories.js b/src/experimental/stories/alert.stories.js index 240e9657..e4b265e9 100644 --- a/src/experimental/stories/alert.stories.js +++ b/src/experimental/stories/alert.stories.js @@ -1,7 +1,6 @@ import '../components/atoms/Alert/cod-alert'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - export default { title: 'Experimental/Atoms/Alert', argTypes: { diff --git a/src/experimental/stories/articlecard.stories.js b/src/experimental/stories/articlecard.stories.js index f40c907a..0d201679 100644 --- a/src/experimental/stories/articlecard.stories.js +++ b/src/experimental/stories/articlecard.stories.js @@ -1,7 +1,6 @@ import '../components/organisms/ArticleCard/cod-article-card'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - export default { title: 'Experimental/Organisms/ArticleCard', argTypes: { diff --git a/src/experimental/stories/badge.stories.js b/src/experimental/stories/badge.stories.js index a2991c74..dd34fad6 100644 --- a/src/experimental/stories/badge.stories.js +++ b/src/experimental/stories/badge.stories.js @@ -2,7 +2,6 @@ import { html } from 'lit-html'; import '../components/atoms/Badge/cod-badge'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - export default { title: 'Experimental/Atoms/Badge', argTypes: { diff --git a/src/experimental/stories/button.stories.js b/src/experimental/stories/button.stories.js index f49e9658..3fcee89e 100644 --- a/src/experimental/stories/button.stories.js +++ b/src/experimental/stories/button.stories.js @@ -2,7 +2,6 @@ import '../components/atoms/Button/cod-button'; import '../components/atoms/Icon/cod-icon'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - export default { title: 'Experimental/Atoms/Button', argTypes: { diff --git a/src/experimental/stories/container.stories.js b/src/experimental/stories/container.stories.js index 4b330096..560b34dd 100644 --- a/src/experimental/stories/container.stories.js +++ b/src/experimental/stories/container.stories.js @@ -1,7 +1,6 @@ import '../components/atoms/Container/cod-container'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - export default { title: 'Experimental/Atoms/Container', argTypes: { diff --git a/src/experimental/stories/countdown.stories.js b/src/experimental/stories/countdown.stories.js index 720251a1..a9b819cb 100644 --- a/src/experimental/stories/countdown.stories.js +++ b/src/experimental/stories/countdown.stories.js @@ -1,7 +1,6 @@ import '../components/atoms/Countdown/cod-countdown'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - export default { title: 'Experimental/Atoms/Countdown', argTypes: { diff --git a/src/experimental/stories/form.stories.js b/src/experimental/stories/form.stories.js index f9104cea..2c8ef7cb 100644 --- a/src/experimental/stories/form.stories.js +++ b/src/experimental/stories/form.stories.js @@ -1,7 +1,6 @@ import '../components/organisms/Form/cod-form'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - export default { title: 'Experimental/FormValidation', argTypes: { diff --git a/src/experimental/stories/formcheck.stories.js b/src/experimental/stories/formcheck.stories.js index 82547f37..39f9c413 100644 --- a/src/experimental/stories/formcheck.stories.js +++ b/src/experimental/stories/formcheck.stories.js @@ -1,7 +1,6 @@ import '../components/atoms/FormCheck/cod-formcheck'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - export default { title: 'Experimental/FormCheck', argTypes: { diff --git a/src/experimental/stories/formcontrol.stories.js b/src/experimental/stories/formcontrol.stories.js index f9b73798..815875f9 100644 --- a/src/experimental/stories/formcontrol.stories.js +++ b/src/experimental/stories/formcontrol.stories.js @@ -1,7 +1,6 @@ import '../components/atoms/FormControl/cod-formcontrol'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - export default { title: 'Experimental/FormControl', argTypes: { diff --git a/src/experimental/stories/formlabel.stories.js b/src/experimental/stories/formlabel.stories.js index 9dcd6fb1..85eea5e4 100644 --- a/src/experimental/stories/formlabel.stories.js +++ b/src/experimental/stories/formlabel.stories.js @@ -1,7 +1,6 @@ import '../components/atoms/FormLabel/cod-formlabel'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - export default { title: 'Experimental/FormLabel', argTypes: { diff --git a/src/experimental/stories/formselect.stories.js b/src/experimental/stories/formselect.stories.js index 5606f12b..73635835 100644 --- a/src/experimental/stories/formselect.stories.js +++ b/src/experimental/stories/formselect.stories.js @@ -1,7 +1,6 @@ import '../components/atoms/FormSelect/cod-formselect'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - export default { title: 'Experimental/FormSelect', argTypes: { diff --git a/src/experimental/stories/icon.stories.js b/src/experimental/stories/icon.stories.js index 692ebf9c..dcc23053 100644 --- a/src/experimental/stories/icon.stories.js +++ b/src/experimental/stories/icon.stories.js @@ -1,7 +1,6 @@ import '../components/atoms/Icon/cod-icon'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - export default { title: 'Experimental/Atoms/Icon', argTypes: { diff --git a/src/experimental/stories/image.stories.js b/src/experimental/stories/image.stories.js index 88603a56..a0962bbf 100644 --- a/src/experimental/stories/image.stories.js +++ b/src/experimental/stories/image.stories.js @@ -1,7 +1,6 @@ import '../components/atoms/Image/cod-image'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - export default { title: 'Experimental/Atoms/Image', argTypes: { diff --git a/src/experimental/stories/loader.stories.js b/src/experimental/stories/loader.stories.js index b61f29e6..3833c1a9 100644 --- a/src/experimental/stories/loader.stories.js +++ b/src/experimental/stories/loader.stories.js @@ -1,7 +1,6 @@ import '../components/atoms/Loader/cod-loader'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - export default { title: 'Experimental/Atoms/Loader', argTypes: { diff --git a/src/experimental/stories/range.stories.js b/src/experimental/stories/range.stories.js index 0500dc46..8c652f63 100644 --- a/src/experimental/stories/range.stories.js +++ b/src/experimental/stories/range.stories.js @@ -1,7 +1,6 @@ import '../components/atoms/Range/cod-range'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - export default { title: 'Experimental/Atoms/Forms/Range', argTypes: { diff --git a/src/experimental/stories/spinner.stories.js b/src/experimental/stories/spinner.stories.js index e711bd33..80a5147f 100644 --- a/src/experimental/stories/spinner.stories.js +++ b/src/experimental/stories/spinner.stories.js @@ -1,7 +1,6 @@ import '../components/atoms/Spinner/cod-spinner'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - export default { title: 'Experimental/Atoms/Spinner', argTypes: { From 366f40bb544f57796c37091958b8c108ae7104e5 Mon Sep 17 00:00:00 2001 From: Shakira Reid-Thomas Date: Tue, 7 Jan 2025 13:42:29 -0500 Subject: [PATCH 11/15] Revert "Ran prettier in 18 files" This reverts commit bc0eabdbe7b04e4de16a6da328b820ec2fb67d50. --- CHANGELOG.md | 17 ++++++++++------- .../stories/actionbutton.stories.js | 1 + .../stories/actionbuttonV2.stories.js | 1 + src/experimental/stories/alert.stories.js | 1 + src/experimental/stories/articlecard.stories.js | 1 + src/experimental/stories/badge.stories.js | 1 + src/experimental/stories/button.stories.js | 1 + src/experimental/stories/container.stories.js | 1 + src/experimental/stories/countdown.stories.js | 1 + src/experimental/stories/form.stories.js | 1 + src/experimental/stories/formcheck.stories.js | 1 + src/experimental/stories/formcontrol.stories.js | 1 + src/experimental/stories/formlabel.stories.js | 1 + src/experimental/stories/formselect.stories.js | 1 + src/experimental/stories/icon.stories.js | 1 + src/experimental/stories/image.stories.js | 1 + src/experimental/stories/loader.stories.js | 1 + src/experimental/stories/range.stories.js | 1 + src/experimental/stories/spinner.stories.js | 1 + 19 files changed, 28 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 761f9f32..22af64f0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -77,11 +77,12 @@ #### 🚀 Enhancement -- Support attribute-based animations on article card by @maxatdetroit in https://github.com/CityOfDetroit/COD-Design-System/pull/249 + +* Support attribute-based animations on article card by @maxatdetroit in https://github.com/CityOfDetroit/COD-Design-System/pull/249 #### 🐛 Bug Fix -- Support long content in offcanvas body by @maxatdetroit in https://github.com/CityOfDetroit/COD-Design-System/pull/240 +* Support long content in offcanvas body by @maxatdetroit in https://github.com/CityOfDetroit/COD-Design-System/pull/240 #### Authors: 1 @@ -93,11 +94,11 @@ #### 🚀 Enhancement -- Allow legacy icons and buttons to scale responsively with parent container by @maxatdetroit in https://github.com/CityOfDetroit/COD-Design-System/pull/238 +* Allow legacy icons and buttons to scale responsively with parent container by @maxatdetroit in https://github.com/CityOfDetroit/COD-Design-System/pull/238 #### 🐛 Bug Fix -- Fix carousel transition animations on 'next' by @maxatdetroit in https://github.com/CityOfDetroit/COD-Design-System/pull/236 +* Fix carousel transition animations on 'next' by @maxatdetroit in https://github.com/CityOfDetroit/COD-Design-System/pull/236 #### Authors: 1 @@ -109,7 +110,7 @@ #### 🚀 Enhancement -- Introduce legacy icon component [by @maxatdetroit](https://github.com/CityOfDetroit/COD-Design-System/pull/234) +* Introduce legacy icon component [by @maxatdetroit](https://github.com/CityOfDetroit/COD-Design-System/pull/234) #### Authors: 1 @@ -121,7 +122,7 @@ #### 🚀 Enhancement -- Update article card styles given feedback [by @maxatdetroit](https://github.com/CityOfDetroit/COD-Design-System/pull/232) +* Update article card styles given feedback [by @maxatdetroit](https://github.com/CityOfDetroit/COD-Design-System/pull/232) #### Authors: 1 @@ -133,7 +134,7 @@ #### 🚀 Enhancement -- Add new detroit legacy button component [by @maxatdetroit](https://github.com/CityOfDetroit/COD-Design-System/pull/230) +* Add new detroit legacy button component [by @maxatdetroit](https://github.com/CityOfDetroit/COD-Design-System/pull/230) #### Authors: 1 @@ -290,6 +291,7 @@ - Adding new components: [`cod-info-button`](https://github.com/CityOfDetroit/COD-Design-System/pull/160) and [`cod-action-button`](https://github.com/CityOfDetroit/COD-Design-System/pull/158). + #### Authors: 1 - Max Morgan ([@maxatdetroit](https://github.com/maxatdetroit)) @@ -302,6 +304,7 @@ - Adding additional icons for intranet. [#157](https://github.com/CityOfDetroit/COD-Design-System/pull/157) ([@maxatdetroit](https://github.com/maxatdetroit)) + #### Authors: 1 - Max Morgan ([@maxatdetroit](https://github.com/maxatdetroit)) diff --git a/src/experimental/stories/actionbutton.stories.js b/src/experimental/stories/actionbutton.stories.js index c524b488..96e3b856 100644 --- a/src/experimental/stories/actionbutton.stories.js +++ b/src/experimental/stories/actionbutton.stories.js @@ -3,6 +3,7 @@ import '../components/atoms/ActionButton/cod-action-button'; import '../components/atoms/Icon/cod-icon'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { component: 'cod-action-button', title: 'Experimental/Atoms/ActionButton', diff --git a/src/experimental/stories/actionbuttonV2.stories.js b/src/experimental/stories/actionbuttonV2.stories.js index b8aa7b23..643173c6 100644 --- a/src/experimental/stories/actionbuttonV2.stories.js +++ b/src/experimental/stories/actionbuttonV2.stories.js @@ -3,6 +3,7 @@ import '../components/atoms/ActionButtonV2/cod-action-button-v2'; import '../components/atoms/Icon/cod-icon'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { component: 'cod-action-button-v2', title: 'Experimental/Atoms/ActionButtonV2', diff --git a/src/experimental/stories/alert.stories.js b/src/experimental/stories/alert.stories.js index e4b265e9..240e9657 100644 --- a/src/experimental/stories/alert.stories.js +++ b/src/experimental/stories/alert.stories.js @@ -1,6 +1,7 @@ import '../components/atoms/Alert/cod-alert'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/Atoms/Alert', argTypes: { diff --git a/src/experimental/stories/articlecard.stories.js b/src/experimental/stories/articlecard.stories.js index 0d201679..f40c907a 100644 --- a/src/experimental/stories/articlecard.stories.js +++ b/src/experimental/stories/articlecard.stories.js @@ -1,6 +1,7 @@ import '../components/organisms/ArticleCard/cod-article-card'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/Organisms/ArticleCard', argTypes: { diff --git a/src/experimental/stories/badge.stories.js b/src/experimental/stories/badge.stories.js index dd34fad6..a2991c74 100644 --- a/src/experimental/stories/badge.stories.js +++ b/src/experimental/stories/badge.stories.js @@ -2,6 +2,7 @@ import { html } from 'lit-html'; import '../components/atoms/Badge/cod-badge'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/Atoms/Badge', argTypes: { diff --git a/src/experimental/stories/button.stories.js b/src/experimental/stories/button.stories.js index 3fcee89e..f49e9658 100644 --- a/src/experimental/stories/button.stories.js +++ b/src/experimental/stories/button.stories.js @@ -2,6 +2,7 @@ import '../components/atoms/Button/cod-button'; import '../components/atoms/Icon/cod-icon'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/Atoms/Button', argTypes: { diff --git a/src/experimental/stories/container.stories.js b/src/experimental/stories/container.stories.js index 560b34dd..4b330096 100644 --- a/src/experimental/stories/container.stories.js +++ b/src/experimental/stories/container.stories.js @@ -1,6 +1,7 @@ import '../components/atoms/Container/cod-container'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/Atoms/Container', argTypes: { diff --git a/src/experimental/stories/countdown.stories.js b/src/experimental/stories/countdown.stories.js index a9b819cb..720251a1 100644 --- a/src/experimental/stories/countdown.stories.js +++ b/src/experimental/stories/countdown.stories.js @@ -1,6 +1,7 @@ import '../components/atoms/Countdown/cod-countdown'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/Atoms/Countdown', argTypes: { diff --git a/src/experimental/stories/form.stories.js b/src/experimental/stories/form.stories.js index 2c8ef7cb..f9104cea 100644 --- a/src/experimental/stories/form.stories.js +++ b/src/experimental/stories/form.stories.js @@ -1,6 +1,7 @@ import '../components/organisms/Form/cod-form'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/FormValidation', argTypes: { diff --git a/src/experimental/stories/formcheck.stories.js b/src/experimental/stories/formcheck.stories.js index 39f9c413..82547f37 100644 --- a/src/experimental/stories/formcheck.stories.js +++ b/src/experimental/stories/formcheck.stories.js @@ -1,6 +1,7 @@ import '../components/atoms/FormCheck/cod-formcheck'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/FormCheck', argTypes: { diff --git a/src/experimental/stories/formcontrol.stories.js b/src/experimental/stories/formcontrol.stories.js index 815875f9..f9b73798 100644 --- a/src/experimental/stories/formcontrol.stories.js +++ b/src/experimental/stories/formcontrol.stories.js @@ -1,6 +1,7 @@ import '../components/atoms/FormControl/cod-formcontrol'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/FormControl', argTypes: { diff --git a/src/experimental/stories/formlabel.stories.js b/src/experimental/stories/formlabel.stories.js index 85eea5e4..9dcd6fb1 100644 --- a/src/experimental/stories/formlabel.stories.js +++ b/src/experimental/stories/formlabel.stories.js @@ -1,6 +1,7 @@ import '../components/atoms/FormLabel/cod-formlabel'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/FormLabel', argTypes: { diff --git a/src/experimental/stories/formselect.stories.js b/src/experimental/stories/formselect.stories.js index 73635835..5606f12b 100644 --- a/src/experimental/stories/formselect.stories.js +++ b/src/experimental/stories/formselect.stories.js @@ -1,6 +1,7 @@ import '../components/atoms/FormSelect/cod-formselect'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/FormSelect', argTypes: { diff --git a/src/experimental/stories/icon.stories.js b/src/experimental/stories/icon.stories.js index dcc23053..692ebf9c 100644 --- a/src/experimental/stories/icon.stories.js +++ b/src/experimental/stories/icon.stories.js @@ -1,6 +1,7 @@ import '../components/atoms/Icon/cod-icon'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/Atoms/Icon', argTypes: { diff --git a/src/experimental/stories/image.stories.js b/src/experimental/stories/image.stories.js index a0962bbf..88603a56 100644 --- a/src/experimental/stories/image.stories.js +++ b/src/experimental/stories/image.stories.js @@ -1,6 +1,7 @@ import '../components/atoms/Image/cod-image'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/Atoms/Image', argTypes: { diff --git a/src/experimental/stories/loader.stories.js b/src/experimental/stories/loader.stories.js index 3833c1a9..b61f29e6 100644 --- a/src/experimental/stories/loader.stories.js +++ b/src/experimental/stories/loader.stories.js @@ -1,6 +1,7 @@ import '../components/atoms/Loader/cod-loader'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/Atoms/Loader', argTypes: { diff --git a/src/experimental/stories/range.stories.js b/src/experimental/stories/range.stories.js index 8c652f63..0500dc46 100644 --- a/src/experimental/stories/range.stories.js +++ b/src/experimental/stories/range.stories.js @@ -1,6 +1,7 @@ import '../components/atoms/Range/cod-range'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/Atoms/Forms/Range', argTypes: { diff --git a/src/experimental/stories/spinner.stories.js b/src/experimental/stories/spinner.stories.js index 80a5147f..e711bd33 100644 --- a/src/experimental/stories/spinner.stories.js +++ b/src/experimental/stories/spinner.stories.js @@ -1,6 +1,7 @@ import '../components/atoms/Spinner/cod-spinner'; import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; + export default { title: 'Experimental/Atoms/Spinner', argTypes: { From 588a6898693134fb5e5a7eae1f5be941bf0be3eb Mon Sep 17 00:00:00 2001 From: Shakira Reid-Thomas Date: Tue, 7 Jan 2025 13:42:38 -0500 Subject: [PATCH 12/15] Revert "Updated import for args-utils" This reverts commit 07161e8bc9a5d17b1ae3aa7c2dff20e46ba586cd. --- src/experimental/stories/actionbutton.stories.js | 3 +-- src/experimental/stories/actionbuttonV2.stories.js | 3 +-- src/experimental/stories/alert.stories.js | 3 +-- src/experimental/stories/articlecard.stories.js | 3 +-- src/experimental/stories/badge.stories.js | 3 +-- src/experimental/stories/button.stories.js | 3 +-- src/experimental/stories/container.stories.js | 3 +-- src/experimental/stories/countdown.stories.js | 3 +-- src/experimental/stories/form.stories.js | 3 +-- src/experimental/stories/formcheck.stories.js | 3 +-- src/experimental/stories/formcontrol.stories.js | 3 +-- src/experimental/stories/formlabel.stories.js | 3 +-- src/experimental/stories/formselect.stories.js | 3 +-- src/experimental/stories/icon.stories.js | 3 +-- src/experimental/stories/image.stories.js | 3 +-- src/experimental/stories/loader.stories.js | 3 +-- src/experimental/stories/progress.stories.js | 2 +- src/experimental/stories/range.stories.js | 3 +-- src/experimental/stories/spinner.stories.js | 3 +-- 19 files changed, 19 insertions(+), 37 deletions(-) diff --git a/src/experimental/stories/actionbutton.stories.js b/src/experimental/stories/actionbutton.stories.js index 96e3b856..5728b75f 100644 --- a/src/experimental/stories/actionbutton.stories.js +++ b/src/experimental/stories/actionbutton.stories.js @@ -1,8 +1,7 @@ import { html } from 'lit-html'; import '../components/atoms/ActionButton/cod-action-button'; import '../components/atoms/Icon/cod-icon'; -import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - +import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { component: 'cod-action-button', diff --git a/src/experimental/stories/actionbuttonV2.stories.js b/src/experimental/stories/actionbuttonV2.stories.js index 643173c6..0305f53f 100644 --- a/src/experimental/stories/actionbuttonV2.stories.js +++ b/src/experimental/stories/actionbuttonV2.stories.js @@ -1,8 +1,7 @@ import { html } from 'lit-html'; import '../components/atoms/ActionButtonV2/cod-action-button-v2'; import '../components/atoms/Icon/cod-icon'; -import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - +import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { component: 'cod-action-button-v2', diff --git a/src/experimental/stories/alert.stories.js b/src/experimental/stories/alert.stories.js index 240e9657..3f30082b 100644 --- a/src/experimental/stories/alert.stories.js +++ b/src/experimental/stories/alert.stories.js @@ -1,6 +1,5 @@ import '../components/atoms/Alert/cod-alert'; -import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - +import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { title: 'Experimental/Atoms/Alert', diff --git a/src/experimental/stories/articlecard.stories.js b/src/experimental/stories/articlecard.stories.js index f40c907a..c661ed6a 100644 --- a/src/experimental/stories/articlecard.stories.js +++ b/src/experimental/stories/articlecard.stories.js @@ -1,6 +1,5 @@ import '../components/organisms/ArticleCard/cod-article-card'; -import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - +import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { title: 'Experimental/Organisms/ArticleCard', diff --git a/src/experimental/stories/badge.stories.js b/src/experimental/stories/badge.stories.js index a2991c74..f25d6bbc 100644 --- a/src/experimental/stories/badge.stories.js +++ b/src/experimental/stories/badge.stories.js @@ -1,7 +1,6 @@ import { html } from 'lit-html'; import '../components/atoms/Badge/cod-badge'; -import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - +import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { title: 'Experimental/Atoms/Badge', diff --git a/src/experimental/stories/button.stories.js b/src/experimental/stories/button.stories.js index f49e9658..b04c5724 100644 --- a/src/experimental/stories/button.stories.js +++ b/src/experimental/stories/button.stories.js @@ -1,7 +1,6 @@ import '../components/atoms/Button/cod-button'; import '../components/atoms/Icon/cod-icon'; -import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - +import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { title: 'Experimental/Atoms/Button', diff --git a/src/experimental/stories/container.stories.js b/src/experimental/stories/container.stories.js index 4b330096..9216f1cb 100644 --- a/src/experimental/stories/container.stories.js +++ b/src/experimental/stories/container.stories.js @@ -1,6 +1,5 @@ import '../components/atoms/Container/cod-container'; -import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - +import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { title: 'Experimental/Atoms/Container', diff --git a/src/experimental/stories/countdown.stories.js b/src/experimental/stories/countdown.stories.js index 720251a1..f5dd0689 100644 --- a/src/experimental/stories/countdown.stories.js +++ b/src/experimental/stories/countdown.stories.js @@ -1,6 +1,5 @@ import '../components/atoms/Countdown/cod-countdown'; -import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - +import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { title: 'Experimental/Atoms/Countdown', diff --git a/src/experimental/stories/form.stories.js b/src/experimental/stories/form.stories.js index f9104cea..2adee7f6 100644 --- a/src/experimental/stories/form.stories.js +++ b/src/experimental/stories/form.stories.js @@ -1,6 +1,5 @@ import '../components/organisms/Form/cod-form'; -import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - +import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { title: 'Experimental/FormValidation', diff --git a/src/experimental/stories/formcheck.stories.js b/src/experimental/stories/formcheck.stories.js index 82547f37..c63ffb19 100644 --- a/src/experimental/stories/formcheck.stories.js +++ b/src/experimental/stories/formcheck.stories.js @@ -1,6 +1,5 @@ import '../components/atoms/FormCheck/cod-formcheck'; -import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - +import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { title: 'Experimental/FormCheck', diff --git a/src/experimental/stories/formcontrol.stories.js b/src/experimental/stories/formcontrol.stories.js index f9b73798..6d73f3c6 100644 --- a/src/experimental/stories/formcontrol.stories.js +++ b/src/experimental/stories/formcontrol.stories.js @@ -1,6 +1,5 @@ import '../components/atoms/FormControl/cod-formcontrol'; -import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - +import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { title: 'Experimental/FormControl', diff --git a/src/experimental/stories/formlabel.stories.js b/src/experimental/stories/formlabel.stories.js index 9dcd6fb1..ddf750a0 100644 --- a/src/experimental/stories/formlabel.stories.js +++ b/src/experimental/stories/formlabel.stories.js @@ -1,6 +1,5 @@ import '../components/atoms/FormLabel/cod-formlabel'; -import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - +import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { title: 'Experimental/FormLabel', diff --git a/src/experimental/stories/formselect.stories.js b/src/experimental/stories/formselect.stories.js index 5606f12b..cb50f521 100644 --- a/src/experimental/stories/formselect.stories.js +++ b/src/experimental/stories/formselect.stories.js @@ -1,6 +1,5 @@ import '../components/atoms/FormSelect/cod-formselect'; -import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - +import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { title: 'Experimental/FormSelect', diff --git a/src/experimental/stories/icon.stories.js b/src/experimental/stories/icon.stories.js index 692ebf9c..a5314d05 100644 --- a/src/experimental/stories/icon.stories.js +++ b/src/experimental/stories/icon.stories.js @@ -1,6 +1,5 @@ import '../components/atoms/Icon/cod-icon'; -import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - +import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { title: 'Experimental/Atoms/Icon', diff --git a/src/experimental/stories/image.stories.js b/src/experimental/stories/image.stories.js index 88603a56..015a962e 100644 --- a/src/experimental/stories/image.stories.js +++ b/src/experimental/stories/image.stories.js @@ -1,6 +1,5 @@ import '../components/atoms/Image/cod-image'; -import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - +import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { title: 'Experimental/Atoms/Image', diff --git a/src/experimental/stories/loader.stories.js b/src/experimental/stories/loader.stories.js index b61f29e6..52b5c6fb 100644 --- a/src/experimental/stories/loader.stories.js +++ b/src/experimental/stories/loader.stories.js @@ -1,6 +1,5 @@ import '../components/atoms/Loader/cod-loader'; -import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - +import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { title: 'Experimental/Atoms/Loader', diff --git a/src/experimental/stories/progress.stories.js b/src/experimental/stories/progress.stories.js index 856c0d24..c8a674cc 100644 --- a/src/experimental/stories/progress.stories.js +++ b/src/experimental/stories/progress.stories.js @@ -1,4 +1,4 @@ -import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; import '../components/atoms/Progress/cod-progress'; export default { diff --git a/src/experimental/stories/range.stories.js b/src/experimental/stories/range.stories.js index 0500dc46..667a270a 100644 --- a/src/experimental/stories/range.stories.js +++ b/src/experimental/stories/range.stories.js @@ -1,6 +1,5 @@ import '../components/atoms/Range/cod-range'; -import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - +import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { title: 'Experimental/Atoms/Forms/Range', diff --git a/src/experimental/stories/spinner.stories.js b/src/experimental/stories/spinner.stories.js index e711bd33..d32588b7 100644 --- a/src/experimental/stories/spinner.stories.js +++ b/src/experimental/stories/spinner.stories.js @@ -1,6 +1,5 @@ import '../components/atoms/Spinner/cod-spinner'; -import { COMMON_STORY_ARGS } from '../../../shared/js/storybook/args-utils'; - +import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; export default { title: 'Experimental/Atoms/Spinner', From 5d776ee5cbf1e24b32205f3feb69d66aae7d0c8a Mon Sep 17 00:00:00 2001 From: Shakira Reid-Thomas Date: Tue, 7 Jan 2025 13:42:40 -0500 Subject: [PATCH 13/15] Revert "Ran prettier in one file" This reverts commit e769bc7243f3c69cda6914cbab211af028a97d09. --- src/experimental/index-experimental.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/experimental/index-experimental.js b/src/experimental/index-experimental.js index ed81c569..6f27aaa2 100644 --- a/src/experimental/index-experimental.js +++ b/src/experimental/index-experimental.js @@ -70,4 +70,4 @@ import '../experimental/components/molecules/Dropdown/cod-dropdown'; import '../experimental/components/molecules/FormCheckGroup/cod-form-check-group'; import '../experimental/components/molecules/ListGroup/cod-listgroup'; import '../experimental/components/molecules/Nav/cod-nav'; -import '../experimental/components/molecules/Pagination/cod-pagination'; +import '../experimental/components/molecules/Pagination/cod-pagination'; \ No newline at end of file From 980f73720d507530e3e562f2d8d25bfa6b91720f Mon Sep 17 00:00:00 2001 From: Shakira Reid-Thomas Date: Tue, 7 Jan 2025 13:43:26 -0500 Subject: [PATCH 14/15] Revert "Updated import paths in index-experimental.js" This reverts commit d08393f112925150182255ae4718eeeaac0cdab0. --- src/experimental/index-experimental.js | 128 ++++++++++++------------- 1 file changed, 64 insertions(+), 64 deletions(-) diff --git a/src/experimental/index-experimental.js b/src/experimental/index-experimental.js index 6f27aaa2..e570a3c4 100644 --- a/src/experimental/index-experimental.js +++ b/src/experimental/index-experimental.js @@ -3,71 +3,71 @@ // ============================================================ // Importing atoms -import '../experimental/components/atoms/AccordionBody/cod-accordion-body'; -import '../experimental/components/atoms/AccordionHeader/cod-accordion-header'; -import '../experimental/components/atoms/AccordionItem/cod-accordion-item'; -import '../experimental/components/atoms/Alert/cod-alert'; -import '../experimental/components/atoms/Badge/cod-badge'; -import '../experimental/components/atoms/Breadcrumb/cod-breadcrumb'; -import '../experimental/components/atoms/Button/cod-button'; -import '../experimental/components/atoms/CardBody/cod-card-body'; -import '../experimental/components/atoms/CardFooter/cod-card-footer'; -import '../experimental/components/atoms/CardHeader/cod-card-header'; -import '../experimental/components/atoms/CardOverlay/cod-card-overlay'; -import '../experimental/components/atoms/CarouselCaption/cod-carousel-caption'; -import '../experimental/components/atoms/CarouselItem/cod-carousel-item'; -import '../experimental/components/atoms/Container/cod-container'; -import '../experimental/components/atoms/Countdown/cod-countdown'; -import '../experimental/components/atoms/DropdownMenu/cod-dropdown-menu'; -import '../experimental/components/atoms/FormCheck/cod-formcheck'; -import '../experimental/components/atoms/FormControl/cod-formcontrol'; -import '../experimental/components/atoms/FormLabel/cod-formlabel'; -import '../experimental/components/atoms/FormSelect/cod-formselect'; -import '../experimental/components/atoms/Icon/cod-icon'; -import '../experimental/components/atoms/Image/cod-image'; -import '../experimental/components/atoms/LegacyButton/cod-legacy-button'; -import '../experimental/components/atoms/LegacyIcon/cod-legacy-icon'; -import '../experimental/components/atoms/ListGroupItem/cod-listgroup-item'; -import '../experimental/components/atoms/Loader/cod-loader'; -import '../experimental/components/atoms/ModalBody/cod-modal-body'; -import '../experimental/components/atoms/ModalFooter/cod-modal-footer'; -import '../experimental/components/atoms/ModalHeader/cod-modal-header'; -import '../experimental/components/atoms/NavbarBrand/cod-navbar-brand'; -import '../experimental/components/atoms/NavbarCollapse/cod-navbar-collapse'; -import '../experimental/components/atoms/NavbarOffcanvas/cod-navbar-offcanvas'; -import '../experimental/components/atoms/NavbarToggle/cod-navbar-toggle'; -import '../experimental/components/atoms/OffcanvasBody/cod-offcanvas-body'; -import '../experimental/components/atoms/OffcanvasHeader/cod-offcanvas-header'; -import '../experimental/components/atoms/PaginationItem/cod-pagination-item'; -import '../experimental/components/atoms/Progress/cod-progress'; -import '../experimental/components/atoms/Range/cod-range'; -import '../experimental/components/atoms/Spinner/cod-spinner'; -import '../experimental/components/atoms/TableBody/cod-table-body'; -import '../experimental/components/atoms/TableCell/cod-table-cell'; -import '../experimental/components/atoms/TableCellHeader/cod-table-cell-header'; -import '../experimental/components/atoms/TableHeader/cod-table-header'; -import '../experimental/components/atoms/TableRow/cod-table-row'; -import '../experimental/components/atoms/ActionButton/cod-action-button'; -import '../experimental/components/atoms/InfoButton/cod-info-button'; +import './components/atoms/AccordionBody/cod-accordion-body'; +import './components/atoms/AccordionHeader/cod-accordion-header'; +import './components/atoms/AccordionItem/cod-accordion-item'; +import './components/atoms/Alert/cod-alert'; +import './components/atoms/Badge/cod-badge'; +import './components/atoms/Breadcrumb/cod-breadcrumb'; +import './components/atoms/Button/cod-button'; +import './components/atoms/CardBody/cod-card-body'; +import './components/atoms/CardFooter/cod-card-footer'; +import './components/atoms/CardHeader/cod-card-header'; +import './components/atoms/CardOverlay/cod-card-overlay'; +import './components/atoms/CarouselCaption/cod-carousel-caption'; +import './components/atoms/CarouselItem/cod-carousel-item'; +import './components/atoms/Container/cod-container'; +import './components/atoms/Countdown/cod-countdown'; +import './components/atoms/DropdownMenu/cod-dropdown-menu'; +import './components/atoms/FormCheck/cod-formcheck'; +import './components/atoms/FormControl/cod-formcontrol'; +import './components/atoms/FormLabel/cod-formlabel'; +import './components/atoms/FormSelect/cod-formselect'; +import './components/atoms/Icon/cod-icon'; +import './components/atoms/Image/cod-image'; +import './components/atoms/LegacyButton/cod-legacy-button'; +import './components/atoms/LegacyIcon/cod-legacy-icon'; +import './components/atoms/ListGroupItem/cod-listgroup-item'; +import './components/atoms/Loader/cod-loader'; +import './components/atoms/ModalBody/cod-modal-body'; +import './components/atoms/ModalFooter/cod-modal-footer'; +import './components/atoms/ModalHeader/cod-modal-header'; +import './components/atoms/NavbarBrand/cod-navbar-brand'; +import './components/atoms/NavbarCollapse/cod-navbar-collapse'; +import './components/atoms/NavbarOffcanvas/cod-navbar-offcanvas'; +import './components/atoms/NavbarToggle/cod-navbar-toggle'; +import './components/atoms/OffcanvasBody/cod-offcanvas-body'; +import './components/atoms/OffcanvasHeader/cod-offcanvas-header'; +import './components/atoms/PaginationItem/cod-pagination-item'; +import './components/atoms/Progress/cod-progress'; +import './components/atoms/Range/cod-range'; +import './components/atoms/Spinner/cod-spinner'; +import './components/atoms/TableBody/cod-table-body'; +import './components/atoms/TableCell/cod-table-cell'; +import './components/atoms/TableCellHeader/cod-table-cell-header'; +import './components/atoms/TableHeader/cod-table-header'; +import './components/atoms/TableRow/cod-table-row'; +import './components/atoms/ActionButton/cod-action-button'; +import './components/atoms/InfoButton/cod-info-button'; // Importing organisms -import '../experimental/components/organisms/ArticleCard/cod-article-card'; -import '../experimental/components/organisms/Card/cod-card'; -import '../experimental/components/organisms/Carousel/cod-carousel'; -import '../experimental/components/organisms/Form/cod-form'; -import '../experimental/components/organisms/Modal/cod-modal'; -import '../experimental/components/organisms/Map/cod-map'; -import '../experimental/components/organisms/Navbar/cod-navbar'; -import '../experimental/components/organisms/Offcanvas/cod-offcanvas'; -import '../experimental/components/organisms/ImgSlider/cod-img-slider'; -import '../experimental/components/organisms/Table/cod-table'; -import '../experimental/components/organisms/VideoPlayer/cod-videoplayer'; +import './components/organisms/ArticleCard/cod-article-card'; +import './components/organisms/Card/cod-card'; +import './components/organisms/Carousel/cod-carousel'; +import './components/organisms/Form/cod-form'; +import './components/organisms/Modal/cod-modal'; +import './components/organisms/Map/cod-map'; +import './components/organisms/Navbar/cod-navbar'; +import './components/organisms/Offcanvas/cod-offcanvas'; +import './components/organisms/ImgSlider/cod-img-slider'; +import './components/organisms/Table/cod-table'; +import './components/organisms/VideoPlayer/cod-videoplayer'; // Import molecules -import '../experimental/components/molecules/Accordion/cod-accordion'; -import '../experimental/components/molecules/ButtonGroup/cod-button-group'; -import '../experimental/components/molecules/Dropdown/cod-dropdown'; -import '../experimental/components/molecules/FormCheckGroup/cod-form-check-group'; -import '../experimental/components/molecules/ListGroup/cod-listgroup'; -import '../experimental/components/molecules/Nav/cod-nav'; -import '../experimental/components/molecules/Pagination/cod-pagination'; \ No newline at end of file +import './components/molecules/Accordion/cod-accordion'; +import './components/molecules/ButtonGroup/cod-button-group'; +import './components/molecules/Dropdown/cod-dropdown'; +import './components/molecules/FormCheckGroup/cod-form-check-group'; +import './components/molecules/ListGroup/cod-listgroup'; +import './components/molecules/Nav/cod-nav'; +import './components/molecules/Pagination/cod-pagination'; From 59aa58ea22abf28f3f64596fc8db60f9d8a41eaa Mon Sep 17 00:00:00 2001 From: Shakira Reid-Thomas Date: Tue, 7 Jan 2025 14:15:52 -0500 Subject: [PATCH 15/15] Fixing all relative imports for files --- .../components/atoms/AccordionBody/AccordionBody.js | 4 ++-- .../components/atoms/AccordionHeader/AccordionHeader.js | 4 ++-- .../components/atoms/AccordionItem/AccordionItem.js | 4 ++-- .../components/atoms/ActionButton/ActionButton.js | 4 ++-- .../components/atoms/ActionButtonV2/ActionButtonV2.js | 4 ++-- src/experimental/components/atoms/Alert/Alert.js | 4 ++-- src/experimental/components/atoms/Badge/Badge.js | 4 ++-- .../components/atoms/Breadcrumb/Breadcrumb.js | 4 ++-- src/experimental/components/atoms/Button/Button.js | 4 ++-- src/experimental/components/atoms/CardBody/CardBody.js | 4 ++-- .../components/atoms/CardFooter/CardFooter.js | 4 ++-- .../components/atoms/CardHeader/CardHeader.js | 4 ++-- .../components/atoms/CardOverlay/CardOverlay.js | 4 ++-- .../components/atoms/CarouselCaption/CarouselCaption.js | 4 ++-- .../components/atoms/CarouselItem/CarouselItem.js | 4 ++-- src/experimental/components/atoms/Container/Container.js | 4 ++-- src/experimental/components/atoms/Countdown/Countdown.js | 4 ++-- .../components/atoms/DropdownMenu/DropdownMenu.js | 4 ++-- src/experimental/components/atoms/FormCheck/FormCheck.js | 4 ++-- .../components/atoms/FormControl/FormControl.js | 4 ++-- src/experimental/components/atoms/FormLabel/FormLabel.js | 4 ++-- .../components/atoms/FormSelect/FormSelect.js | 4 ++-- src/experimental/components/atoms/Icon/Icon.js | 4 ++-- src/experimental/components/atoms/Image/Image.js | 4 ++-- .../components/atoms/InfoButton/InfoButton.js | 4 ++-- .../components/atoms/LegacyButton/LegacyButton.js | 4 ++-- .../components/atoms/LegacyIcon/LegacyIcon.js | 4 ++-- .../components/atoms/ListGroupItem/ListGroupItem.js | 4 ++-- src/experimental/components/atoms/Loader/Loader.js | 2 +- src/experimental/components/atoms/ModalBody/ModalBody.js | 4 ++-- .../components/atoms/ModalFooter/ModalFooter.js | 4 ++-- .../components/atoms/ModalHeader/ModalHeader.js | 4 ++-- .../components/atoms/NavbarBrand/NavbarBrand.js | 4 ++-- .../components/atoms/NavbarCollapse/NavbarCollapse.js | 4 ++-- .../components/atoms/NavbarOffcanvas/NavbarOffcanvas.js | 4 ++-- .../components/atoms/NavbarToggle/NavbarToggle.js | 4 ++-- .../components/atoms/OffcanvasBody/OffcanvasBody.js | 4 ++-- .../components/atoms/OffcanvasHeader/OffcanvasHeader.js | 4 ++-- .../components/atoms/PaginationItem/PaginationItem.js | 4 ++-- src/experimental/components/atoms/Progress/Progress.js | 4 ++-- src/experimental/components/atoms/Range/Range.js | 4 ++-- src/experimental/components/atoms/Spinner/Spinner.js | 4 ++-- src/experimental/components/atoms/TableBody/TableBody.js | 8 ++++---- src/experimental/components/atoms/TableCell/TableCell.js | 8 ++++---- .../components/atoms/TableCellHeader/TableCellHeader.js | 8 ++++---- .../components/atoms/TableHeader/TableHeader.js | 8 ++++---- src/experimental/components/atoms/TableRow/TableRow.js | 8 ++++---- .../components/molecules/Accordion/Accordion.js | 4 ++-- .../components/molecules/ButtonGroup/ButtonGroup.js | 4 ++-- .../components/molecules/Dropdown/Dropdown.js | 4 ++-- .../components/molecules/ListGroup/ListGroup.js | 4 ++-- src/experimental/components/molecules/Nav/Nav.js | 4 ++-- .../components/molecules/Pagination/Pagination.js | 4 ++-- .../components/organisms/ArticleCard/ArticleCard.js | 4 ++-- .../components/organisms/Calendar/Calendar.js | 6 +++--- src/experimental/components/organisms/Card/Card.js | 4 ++-- .../components/organisms/Carousel/Carousel.js | 4 ++-- src/experimental/components/organisms/Form/Form.js | 4 ++-- .../components/organisms/ImgSlider/ImgSlider.js | 4 ++-- src/experimental/components/organisms/Map/Map.js | 2 +- src/experimental/components/organisms/Modal/Modal.js | 4 ++-- src/experimental/components/organisms/Navbar/Navbar.js | 4 ++-- .../components/organisms/Offcanvas/Offcanvas.js | 4 ++-- src/experimental/components/organisms/Table/Table.js | 8 ++++---- src/experimental/components/organisms/TableV2/TableV2.js | 4 ++-- .../components/organisms/VideoPlayer/VideoPlayer.js | 4 ++-- src/experimental/stories/actionbutton.stories.js | 2 +- src/experimental/stories/actionbuttonV2.stories.js | 2 +- src/experimental/stories/alert.stories.js | 2 +- src/experimental/stories/articlecard.stories.js | 2 +- src/experimental/stories/badge.stories.js | 2 +- src/experimental/stories/button.stories.js | 2 +- src/experimental/stories/container.stories.js | 2 +- src/experimental/stories/countdown.stories.js | 2 +- src/experimental/stories/form.stories.js | 2 +- src/experimental/stories/formcheck.stories.js | 2 +- src/experimental/stories/formcontrol.stories.js | 2 +- src/experimental/stories/formlabel.stories.js | 2 +- src/experimental/stories/formselect.stories.js | 2 +- src/experimental/stories/icon.stories.js | 2 +- src/experimental/stories/image.stories.js | 2 +- src/experimental/stories/loader.stories.js | 2 +- src/experimental/stories/progress.stories.js | 2 +- src/experimental/stories/range.stories.js | 2 +- src/experimental/stories/spinner.stories.js | 2 +- 85 files changed, 162 insertions(+), 162 deletions(-) diff --git a/src/experimental/components/atoms/AccordionBody/AccordionBody.js b/src/experimental/components/atoms/AccordionBody/AccordionBody.js index 2d89122e..41e6323c 100644 --- a/src/experimental/components/atoms/AccordionBody/AccordionBody.js +++ b/src/experimental/components/atoms/AccordionBody/AccordionBody.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./AccordionBody.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/AccordionHeader/AccordionHeader.js b/src/experimental/components/atoms/AccordionHeader/AccordionHeader.js index d84c8a42..62fb3018 100644 --- a/src/experimental/components/atoms/AccordionHeader/AccordionHeader.js +++ b/src/experimental/components/atoms/AccordionHeader/AccordionHeader.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./AccordionHeader.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/AccordionItem/AccordionItem.js b/src/experimental/components/atoms/AccordionItem/AccordionItem.js index c8a28f65..053c4402 100644 --- a/src/experimental/components/atoms/AccordionItem/AccordionItem.js +++ b/src/experimental/components/atoms/AccordionItem/AccordionItem.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./AccordionItem.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/ActionButton/ActionButton.js b/src/experimental/components/atoms/ActionButton/ActionButton.js index 01564db9..3df19bed 100644 --- a/src/experimental/components/atoms/ActionButton/ActionButton.js +++ b/src/experimental/components/atoms/ActionButton/ActionButton.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./ActionButton.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/ActionButtonV2/ActionButtonV2.js b/src/experimental/components/atoms/ActionButtonV2/ActionButtonV2.js index f44ecd83..9bc2dda8 100644 --- a/src/experimental/components/atoms/ActionButtonV2/ActionButtonV2.js +++ b/src/experimental/components/atoms/ActionButtonV2/ActionButtonV2.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./ActionButtonV2.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/Alert/Alert.js b/src/experimental/components/atoms/Alert/Alert.js index b142a471..aad3fdcb 100644 --- a/src/experimental/components/atoms/Alert/Alert.js +++ b/src/experimental/components/atoms/Alert/Alert.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./Alert.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/Badge/Badge.js b/src/experimental/components/atoms/Badge/Badge.js index 2b167427..0db55e4b 100644 --- a/src/experimental/components/atoms/Badge/Badge.js +++ b/src/experimental/components/atoms/Badge/Badge.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./Badge.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; export default class Badge extends HTMLElement { constructor() { // Always call super first in constructor diff --git a/src/experimental/components/atoms/Breadcrumb/Breadcrumb.js b/src/experimental/components/atoms/Breadcrumb/Breadcrumb.js index a730b5df..3f8bb25c 100644 --- a/src/experimental/components/atoms/Breadcrumb/Breadcrumb.js +++ b/src/experimental/components/atoms/Breadcrumb/Breadcrumb.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./Breadcrumb.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/Button/Button.js b/src/experimental/components/atoms/Button/Button.js index 396fab31..d5902d3c 100644 --- a/src/experimental/components/atoms/Button/Button.js +++ b/src/experimental/components/atoms/Button/Button.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./Button.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; export default class Button extends HTMLElement { constructor() { diff --git a/src/experimental/components/atoms/CardBody/CardBody.js b/src/experimental/components/atoms/CardBody/CardBody.js index 4a240090..51b0c679 100644 --- a/src/experimental/components/atoms/CardBody/CardBody.js +++ b/src/experimental/components/atoms/CardBody/CardBody.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./CardBody.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/CardFooter/CardFooter.js b/src/experimental/components/atoms/CardFooter/CardFooter.js index 5c6a477d..60f37f9c 100644 --- a/src/experimental/components/atoms/CardFooter/CardFooter.js +++ b/src/experimental/components/atoms/CardFooter/CardFooter.js @@ -1,5 +1,5 @@ -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; import styles from '!!raw-loader!./CardFooter.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/CardHeader/CardHeader.js b/src/experimental/components/atoms/CardHeader/CardHeader.js index 23ec1f27..320d7749 100644 --- a/src/experimental/components/atoms/CardHeader/CardHeader.js +++ b/src/experimental/components/atoms/CardHeader/CardHeader.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./CardHeader.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/CardOverlay/CardOverlay.js b/src/experimental/components/atoms/CardOverlay/CardOverlay.js index 641d4d2e..1bdd135f 100644 --- a/src/experimental/components/atoms/CardOverlay/CardOverlay.js +++ b/src/experimental/components/atoms/CardOverlay/CardOverlay.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./CardOverlay.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/CarouselCaption/CarouselCaption.js b/src/experimental/components/atoms/CarouselCaption/CarouselCaption.js index 316fadb0..b3d2b0fb 100644 --- a/src/experimental/components/atoms/CarouselCaption/CarouselCaption.js +++ b/src/experimental/components/atoms/CarouselCaption/CarouselCaption.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./CarouselCaption.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/CarouselItem/CarouselItem.js b/src/experimental/components/atoms/CarouselItem/CarouselItem.js index 53620af4..0590c9cf 100644 --- a/src/experimental/components/atoms/CarouselItem/CarouselItem.js +++ b/src/experimental/components/atoms/CarouselItem/CarouselItem.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./CarouselItem.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/Container/Container.js b/src/experimental/components/atoms/Container/Container.js index 3f1a001a..4993bb45 100644 --- a/src/experimental/components/atoms/Container/Container.js +++ b/src/experimental/components/atoms/Container/Container.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./Container.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/Countdown/Countdown.js b/src/experimental/components/atoms/Countdown/Countdown.js index 5ecea256..aa5184f5 100644 --- a/src/experimental/components/atoms/Countdown/Countdown.js +++ b/src/experimental/components/atoms/Countdown/Countdown.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./Countdown.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/DropdownMenu/DropdownMenu.js b/src/experimental/components/atoms/DropdownMenu/DropdownMenu.js index 01acecc0..c604ac0d 100644 --- a/src/experimental/components/atoms/DropdownMenu/DropdownMenu.js +++ b/src/experimental/components/atoms/DropdownMenu/DropdownMenu.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./DropdownMenu.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/FormCheck/FormCheck.js b/src/experimental/components/atoms/FormCheck/FormCheck.js index 80153e64..3f9c712b 100644 --- a/src/experimental/components/atoms/FormCheck/FormCheck.js +++ b/src/experimental/components/atoms/FormCheck/FormCheck.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./FormCheck.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; export default class FormCheck extends HTMLElement { static formAssociated = true; diff --git a/src/experimental/components/atoms/FormControl/FormControl.js b/src/experimental/components/atoms/FormControl/FormControl.js index fa8fef71..cc4d93c9 100644 --- a/src/experimental/components/atoms/FormControl/FormControl.js +++ b/src/experimental/components/atoms/FormControl/FormControl.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./FormControl.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; export default class FormControl extends HTMLElement { static formAssociated = true; diff --git a/src/experimental/components/atoms/FormLabel/FormLabel.js b/src/experimental/components/atoms/FormLabel/FormLabel.js index 21eba8b1..54f66b76 100644 --- a/src/experimental/components/atoms/FormLabel/FormLabel.js +++ b/src/experimental/components/atoms/FormLabel/FormLabel.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./FormLabel.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; export default class FormLabel extends HTMLElement { constructor() { // Always call super first in constructor diff --git a/src/experimental/components/atoms/FormSelect/FormSelect.js b/src/experimental/components/atoms/FormSelect/FormSelect.js index 7722410a..50b0cdf3 100644 --- a/src/experimental/components/atoms/FormSelect/FormSelect.js +++ b/src/experimental/components/atoms/FormSelect/FormSelect.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./FormSelect.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/Icon/Icon.js b/src/experimental/components/atoms/Icon/Icon.js index cc41a1a4..bd6347a9 100644 --- a/src/experimental/components/atoms/Icon/Icon.js +++ b/src/experimental/components/atoms/Icon/Icon.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./Icon.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; export default class Icon extends HTMLElement { constructor() { diff --git a/src/experimental/components/atoms/Image/Image.js b/src/experimental/components/atoms/Image/Image.js index aa618502..2adbd2c6 100644 --- a/src/experimental/components/atoms/Image/Image.js +++ b/src/experimental/components/atoms/Image/Image.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./Image.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/InfoButton/InfoButton.js b/src/experimental/components/atoms/InfoButton/InfoButton.js index c47f0c49..5f523e7f 100644 --- a/src/experimental/components/atoms/InfoButton/InfoButton.js +++ b/src/experimental/components/atoms/InfoButton/InfoButton.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./InfoButton.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/LegacyButton/LegacyButton.js b/src/experimental/components/atoms/LegacyButton/LegacyButton.js index 4a1e1065..5fd3e2e3 100644 --- a/src/experimental/components/atoms/LegacyButton/LegacyButton.js +++ b/src/experimental/components/atoms/LegacyButton/LegacyButton.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./LegacyButton.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); template.innerHTML = ` diff --git a/src/experimental/components/atoms/LegacyIcon/LegacyIcon.js b/src/experimental/components/atoms/LegacyIcon/LegacyIcon.js index c61fd1b7..2615e9d8 100644 --- a/src/experimental/components/atoms/LegacyIcon/LegacyIcon.js +++ b/src/experimental/components/atoms/LegacyIcon/LegacyIcon.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./LegacyIcon.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); template.innerHTML = ` diff --git a/src/experimental/components/atoms/ListGroupItem/ListGroupItem.js b/src/experimental/components/atoms/ListGroupItem/ListGroupItem.js index 81d87bc1..404c2409 100644 --- a/src/experimental/components/atoms/ListGroupItem/ListGroupItem.js +++ b/src/experimental/components/atoms/ListGroupItem/ListGroupItem.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./ListGroupItem.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/Loader/Loader.js b/src/experimental/components/atoms/Loader/Loader.js index 9b459e72..27d44039 100644 --- a/src/experimental/components/atoms/Loader/Loader.js +++ b/src/experimental/components/atoms/Loader/Loader.js @@ -1,5 +1,5 @@ import styles from '!!raw-loader!./Loader.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; export default class Loader extends HTMLElement { constructor() { // Always call super first in constructor diff --git a/src/experimental/components/atoms/ModalBody/ModalBody.js b/src/experimental/components/atoms/ModalBody/ModalBody.js index 6e7e601a..58b7888c 100644 --- a/src/experimental/components/atoms/ModalBody/ModalBody.js +++ b/src/experimental/components/atoms/ModalBody/ModalBody.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./ModalBody.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/ModalFooter/ModalFooter.js b/src/experimental/components/atoms/ModalFooter/ModalFooter.js index 113b5c2a..e49c9666 100644 --- a/src/experimental/components/atoms/ModalFooter/ModalFooter.js +++ b/src/experimental/components/atoms/ModalFooter/ModalFooter.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./ModalFooter.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/ModalHeader/ModalHeader.js b/src/experimental/components/atoms/ModalHeader/ModalHeader.js index 41e49b61..773fd917 100644 --- a/src/experimental/components/atoms/ModalHeader/ModalHeader.js +++ b/src/experimental/components/atoms/ModalHeader/ModalHeader.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./ModalHeader.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/NavbarBrand/NavbarBrand.js b/src/experimental/components/atoms/NavbarBrand/NavbarBrand.js index b489a4f7..45a6f89a 100644 --- a/src/experimental/components/atoms/NavbarBrand/NavbarBrand.js +++ b/src/experimental/components/atoms/NavbarBrand/NavbarBrand.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./NavbarBrand.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; export default class NavbarBrand extends HTMLElement { constructor() { diff --git a/src/experimental/components/atoms/NavbarCollapse/NavbarCollapse.js b/src/experimental/components/atoms/NavbarCollapse/NavbarCollapse.js index 4131461c..b4e2bf39 100644 --- a/src/experimental/components/atoms/NavbarCollapse/NavbarCollapse.js +++ b/src/experimental/components/atoms/NavbarCollapse/NavbarCollapse.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./NavbarCollapse.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/NavbarOffcanvas/NavbarOffcanvas.js b/src/experimental/components/atoms/NavbarOffcanvas/NavbarOffcanvas.js index 8c281cf5..ec70c37d 100644 --- a/src/experimental/components/atoms/NavbarOffcanvas/NavbarOffcanvas.js +++ b/src/experimental/components/atoms/NavbarOffcanvas/NavbarOffcanvas.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./NavbarOffcanvas.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/NavbarToggle/NavbarToggle.js b/src/experimental/components/atoms/NavbarToggle/NavbarToggle.js index e23fc7a4..fe0502d8 100644 --- a/src/experimental/components/atoms/NavbarToggle/NavbarToggle.js +++ b/src/experimental/components/atoms/NavbarToggle/NavbarToggle.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./NavbarToggle.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; export default class NavbarToggle extends HTMLElement { constructor() { diff --git a/src/experimental/components/atoms/OffcanvasBody/OffcanvasBody.js b/src/experimental/components/atoms/OffcanvasBody/OffcanvasBody.js index 7e977cd8..1a36b3bb 100644 --- a/src/experimental/components/atoms/OffcanvasBody/OffcanvasBody.js +++ b/src/experimental/components/atoms/OffcanvasBody/OffcanvasBody.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./OffcanvasBody.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/OffcanvasHeader/OffcanvasHeader.js b/src/experimental/components/atoms/OffcanvasHeader/OffcanvasHeader.js index 8d1df28d..44b7d8c0 100644 --- a/src/experimental/components/atoms/OffcanvasHeader/OffcanvasHeader.js +++ b/src/experimental/components/atoms/OffcanvasHeader/OffcanvasHeader.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./OffcanvasHeader.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/PaginationItem/PaginationItem.js b/src/experimental/components/atoms/PaginationItem/PaginationItem.js index 13409e99..298d1695 100644 --- a/src/experimental/components/atoms/PaginationItem/PaginationItem.js +++ b/src/experimental/components/atoms/PaginationItem/PaginationItem.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./PaginationItem.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; export default class PaginationItem extends HTMLElement { constructor() { diff --git a/src/experimental/components/atoms/Progress/Progress.js b/src/experimental/components/atoms/Progress/Progress.js index 28c661e8..5f1ae275 100644 --- a/src/experimental/components/atoms/Progress/Progress.js +++ b/src/experimental/components/atoms/Progress/Progress.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./Progress.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; export default class Progress extends HTMLElement { constructor() { // Always call super first in constructor diff --git a/src/experimental/components/atoms/Range/Range.js b/src/experimental/components/atoms/Range/Range.js index 791fa510..c466a1fd 100644 --- a/src/experimental/components/atoms/Range/Range.js +++ b/src/experimental/components/atoms/Range/Range.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./Range.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; export default class Range extends HTMLElement { constructor() { // Always call super first in constructor diff --git a/src/experimental/components/atoms/Spinner/Spinner.js b/src/experimental/components/atoms/Spinner/Spinner.js index 6d5ce379..bba00746 100644 --- a/src/experimental/components/atoms/Spinner/Spinner.js +++ b/src/experimental/components/atoms/Spinner/Spinner.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./Spinner.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; export default class Image extends HTMLElement { constructor() { // Always call super first in constructor diff --git a/src/experimental/components/atoms/TableBody/TableBody.js b/src/experimental/components/atoms/TableBody/TableBody.js index 65cd76de..ce6f5444 100644 --- a/src/experimental/components/atoms/TableBody/TableBody.js +++ b/src/experimental/components/atoms/TableBody/TableBody.js @@ -1,12 +1,12 @@ import styles from '!!raw-loader!./TableBody.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; import { cellHeaderBlockClass, stackedTableClass, handleTableStacked, -} from '../../../shared/js/utilities'; -import observedAttributeMixin from '../../../shared/js/observed-attribute-mixin'; +} from '../../../../shared/js/utilities'; +import observedAttributeMixin from '../../../../shared/js/observed-attribute-mixin'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/TableCell/TableCell.js b/src/experimental/components/atoms/TableCell/TableCell.js index 529c7fe5..81f58c3e 100644 --- a/src/experimental/components/atoms/TableCell/TableCell.js +++ b/src/experimental/components/atoms/TableCell/TableCell.js @@ -1,11 +1,11 @@ import styles from '!!raw-loader!./TableCell.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; import { cellHeaderBlockClass, stackedTableClass, -} from '../../../shared/js/utilities'; -import observedAttributeMixin from '../../../shared/js/observed-attribute-mixin'; +} from '../../../../shared/js/utilities'; +import observedAttributeMixin from '../../../../shared/js/observed-attribute-mixin'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/TableCellHeader/TableCellHeader.js b/src/experimental/components/atoms/TableCellHeader/TableCellHeader.js index e47d0077..2d2f2fe2 100644 --- a/src/experimental/components/atoms/TableCellHeader/TableCellHeader.js +++ b/src/experimental/components/atoms/TableCellHeader/TableCellHeader.js @@ -1,11 +1,11 @@ import styles from '!!raw-loader!./TableCellHeader.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; import { cellHeaderBlockClass, stackedTableClass, -} from '../../../shared/js/utilities'; -import observedAttributeMixin from '../../../shared/js/observed-attribute-mixin'; +} from '../../../../shared/js/utilities'; +import observedAttributeMixin from '../../../../shared/js/observed-attribute-mixin'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/TableHeader/TableHeader.js b/src/experimental/components/atoms/TableHeader/TableHeader.js index af965295..1c933f73 100644 --- a/src/experimental/components/atoms/TableHeader/TableHeader.js +++ b/src/experimental/components/atoms/TableHeader/TableHeader.js @@ -1,13 +1,13 @@ import styles from '!!raw-loader!./TableHeader.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; import { cellHeaderBlockClass, stackedTableClass, handleTableStacked, -} from '../../../shared/js/utilities'; -import observedAttributeMixin from '../../../shared/js/observed-attribute-mixin'; +} from '../../../../shared/js/utilities'; +import observedAttributeMixin from '../../../../shared/js/observed-attribute-mixin'; const template = document.createElement('template'); diff --git a/src/experimental/components/atoms/TableRow/TableRow.js b/src/experimental/components/atoms/TableRow/TableRow.js index 0fbd3dd4..6f9c6bba 100644 --- a/src/experimental/components/atoms/TableRow/TableRow.js +++ b/src/experimental/components/atoms/TableRow/TableRow.js @@ -1,14 +1,14 @@ import styles from '!!raw-loader!./TableRow.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; import { cellHeaderBlockClass, firstClass, oddClass, stackedTableClass, handleTableStacked, -} from '../../../shared/js/utilities'; -import observedAttributeMixin from '../../../shared/js/observed-attribute-mixin'; +} from '../../../../shared/js/utilities'; +import observedAttributeMixin from '../../../../shared/js/observed-attribute-mixin'; const template = document.createElement('template'); diff --git a/src/experimental/components/molecules/Accordion/Accordion.js b/src/experimental/components/molecules/Accordion/Accordion.js index d1b33824..36ba74c3 100644 --- a/src/experimental/components/molecules/Accordion/Accordion.js +++ b/src/experimental/components/molecules/Accordion/Accordion.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./Accordion.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/molecules/ButtonGroup/ButtonGroup.js b/src/experimental/components/molecules/ButtonGroup/ButtonGroup.js index 3757f3a2..408219e8 100644 --- a/src/experimental/components/molecules/ButtonGroup/ButtonGroup.js +++ b/src/experimental/components/molecules/ButtonGroup/ButtonGroup.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./ButtonGroup.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/molecules/Dropdown/Dropdown.js b/src/experimental/components/molecules/Dropdown/Dropdown.js index 7f10d0ef..46f99b88 100644 --- a/src/experimental/components/molecules/Dropdown/Dropdown.js +++ b/src/experimental/components/molecules/Dropdown/Dropdown.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./Dropdown.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/molecules/ListGroup/ListGroup.js b/src/experimental/components/molecules/ListGroup/ListGroup.js index 1a8ac803..27c98740 100644 --- a/src/experimental/components/molecules/ListGroup/ListGroup.js +++ b/src/experimental/components/molecules/ListGroup/ListGroup.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./ListGroup.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/molecules/Nav/Nav.js b/src/experimental/components/molecules/Nav/Nav.js index 47cab915..dbedd4d9 100644 --- a/src/experimental/components/molecules/Nav/Nav.js +++ b/src/experimental/components/molecules/Nav/Nav.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./Nav.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/molecules/Pagination/Pagination.js b/src/experimental/components/molecules/Pagination/Pagination.js index a14d135c..0d332a4d 100644 --- a/src/experimental/components/molecules/Pagination/Pagination.js +++ b/src/experimental/components/molecules/Pagination/Pagination.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./Pagination.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/organisms/ArticleCard/ArticleCard.js b/src/experimental/components/organisms/ArticleCard/ArticleCard.js index a8c8dab7..30633c9d 100644 --- a/src/experimental/components/organisms/ArticleCard/ArticleCard.js +++ b/src/experimental/components/organisms/ArticleCard/ArticleCard.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./ArticleCard.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); template.innerHTML = ` diff --git a/src/experimental/components/organisms/Calendar/Calendar.js b/src/experimental/components/organisms/Calendar/Calendar.js index d4027c22..baa02f5a 100644 --- a/src/experimental/components/organisms/Calendar/Calendar.js +++ b/src/experimental/components/organisms/Calendar/Calendar.js @@ -1,8 +1,8 @@ import styles from '!!raw-loader!./Calendar.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; -import observedAttributeMixin from '../../../shared/js/observed-attribute-mixin'; +import observedAttributeMixin from '../../../../shared/js/observed-attribute-mixin'; import { Calendar as FullCalendar } from '@fullcalendar/core'; import dayGridPlugin from '@fullcalendar/daygrid'; diff --git a/src/experimental/components/organisms/Card/Card.js b/src/experimental/components/organisms/Card/Card.js index ddd6aada..052ea2d1 100644 --- a/src/experimental/components/organisms/Card/Card.js +++ b/src/experimental/components/organisms/Card/Card.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./Card.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/organisms/Carousel/Carousel.js b/src/experimental/components/organisms/Carousel/Carousel.js index 5f2f94cd..e72dc46b 100644 --- a/src/experimental/components/organisms/Carousel/Carousel.js +++ b/src/experimental/components/organisms/Carousel/Carousel.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./Carousel.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/organisms/Form/Form.js b/src/experimental/components/organisms/Form/Form.js index 71a93e5c..1a564313 100644 --- a/src/experimental/components/organisms/Form/Form.js +++ b/src/experimental/components/organisms/Form/Form.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./Form.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/organisms/ImgSlider/ImgSlider.js b/src/experimental/components/organisms/ImgSlider/ImgSlider.js index 86e65d9f..5cca710c 100644 --- a/src/experimental/components/organisms/ImgSlider/ImgSlider.js +++ b/src/experimental/components/organisms/ImgSlider/ImgSlider.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./ImgSlider.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/organisms/Map/Map.js b/src/experimental/components/organisms/Map/Map.js index 97d57edc..f95e9490 100644 --- a/src/experimental/components/organisms/Map/Map.js +++ b/src/experimental/components/organisms/Map/Map.js @@ -2,7 +2,7 @@ import maplibregl from 'maplibre-gl'; import mapStyle from './style.json'; import styles from '!!raw-loader!./Map.css'; -import maplibreStyles from '!!raw-loader!../../../../node_modules/maplibre-gl/dist/maplibre-gl.css'; +import maplibreStyles from '!!raw-loader!../../../../../node_modules/maplibre-gl/dist/maplibre-gl.css'; export default class Map extends HTMLElement { static get observedAttributes() { return [ diff --git a/src/experimental/components/organisms/Modal/Modal.js b/src/experimental/components/organisms/Modal/Modal.js index c7e63992..b767acc3 100644 --- a/src/experimental/components/organisms/Modal/Modal.js +++ b/src/experimental/components/organisms/Modal/Modal.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./Modal.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/organisms/Navbar/Navbar.js b/src/experimental/components/organisms/Navbar/Navbar.js index f0eb1aff..50d95f2d 100644 --- a/src/experimental/components/organisms/Navbar/Navbar.js +++ b/src/experimental/components/organisms/Navbar/Navbar.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./Navbar.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/organisms/Offcanvas/Offcanvas.js b/src/experimental/components/organisms/Offcanvas/Offcanvas.js index bec0ece2..1ffdd407 100644 --- a/src/experimental/components/organisms/Offcanvas/Offcanvas.js +++ b/src/experimental/components/organisms/Offcanvas/Offcanvas.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./Offcanvas.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); diff --git a/src/experimental/components/organisms/Table/Table.js b/src/experimental/components/organisms/Table/Table.js index a6eb01b0..14377dcb 100644 --- a/src/experimental/components/organisms/Table/Table.js +++ b/src/experimental/components/organisms/Table/Table.js @@ -1,9 +1,9 @@ import styles from '!!raw-loader!./Table.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; -import observedAttributeMixin from '../../../shared/js/observed-attribute-mixin'; -import { handleTableStacked } from '../../../shared/js/utilities'; +import observedAttributeMixin from '../../../../shared/js/observed-attribute-mixin'; +import { handleTableStacked } from '../../../../shared/js/utilities'; const template = document.createElement('template'); diff --git a/src/experimental/components/organisms/TableV2/TableV2.js b/src/experimental/components/organisms/TableV2/TableV2.js index d0b0e0b2..335ac6b1 100644 --- a/src/experimental/components/organisms/TableV2/TableV2.js +++ b/src/experimental/components/organisms/TableV2/TableV2.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./TableV2.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; class TableV2 extends HTMLElement { static observedAttributes = []; diff --git a/src/experimental/components/organisms/VideoPlayer/VideoPlayer.js b/src/experimental/components/organisms/VideoPlayer/VideoPlayer.js index 1f9f1311..0eb16979 100644 --- a/src/experimental/components/organisms/VideoPlayer/VideoPlayer.js +++ b/src/experimental/components/organisms/VideoPlayer/VideoPlayer.js @@ -1,6 +1,6 @@ import styles from '!!raw-loader!./VideoPlayer.css'; -import varStyles from '!!raw-loader!../../../shared/variables.css'; -import bootstrapStyles from '!!raw-loader!../../../shared/themed-bootstrap.css'; +import varStyles from '!!raw-loader!../../../../shared/variables.css'; +import bootstrapStyles from '!!raw-loader!../../../../shared/themed-bootstrap.css'; const template = document.createElement('template'); template.innerHTML = ` diff --git a/src/experimental/stories/actionbutton.stories.js b/src/experimental/stories/actionbutton.stories.js index 5728b75f..ddd05431 100644 --- a/src/experimental/stories/actionbutton.stories.js +++ b/src/experimental/stories/actionbutton.stories.js @@ -1,7 +1,7 @@ import { html } from 'lit-html'; import '../components/atoms/ActionButton/cod-action-button'; import '../components/atoms/Icon/cod-icon'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../shared/js/storybook/args-utils'; export default { component: 'cod-action-button', diff --git a/src/experimental/stories/actionbuttonV2.stories.js b/src/experimental/stories/actionbuttonV2.stories.js index 0305f53f..f38d274b 100644 --- a/src/experimental/stories/actionbuttonV2.stories.js +++ b/src/experimental/stories/actionbuttonV2.stories.js @@ -1,7 +1,7 @@ import { html } from 'lit-html'; import '../components/atoms/ActionButtonV2/cod-action-button-v2'; import '../components/atoms/Icon/cod-icon'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../shared/js/storybook/args-utils'; export default { component: 'cod-action-button-v2', diff --git a/src/experimental/stories/alert.stories.js b/src/experimental/stories/alert.stories.js index 3f30082b..d1dd7d4a 100644 --- a/src/experimental/stories/alert.stories.js +++ b/src/experimental/stories/alert.stories.js @@ -1,5 +1,5 @@ import '../components/atoms/Alert/cod-alert'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../shared/js/storybook/args-utils'; export default { title: 'Experimental/Atoms/Alert', diff --git a/src/experimental/stories/articlecard.stories.js b/src/experimental/stories/articlecard.stories.js index c661ed6a..409d2e93 100644 --- a/src/experimental/stories/articlecard.stories.js +++ b/src/experimental/stories/articlecard.stories.js @@ -1,5 +1,5 @@ import '../components/organisms/ArticleCard/cod-article-card'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../shared/js/storybook/args-utils'; export default { title: 'Experimental/Organisms/ArticleCard', diff --git a/src/experimental/stories/badge.stories.js b/src/experimental/stories/badge.stories.js index f25d6bbc..adb414c6 100644 --- a/src/experimental/stories/badge.stories.js +++ b/src/experimental/stories/badge.stories.js @@ -1,6 +1,6 @@ import { html } from 'lit-html'; import '../components/atoms/Badge/cod-badge'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../shared/js/storybook/args-utils'; export default { title: 'Experimental/Atoms/Badge', diff --git a/src/experimental/stories/button.stories.js b/src/experimental/stories/button.stories.js index b04c5724..07364c3f 100644 --- a/src/experimental/stories/button.stories.js +++ b/src/experimental/stories/button.stories.js @@ -1,6 +1,6 @@ import '../components/atoms/Button/cod-button'; import '../components/atoms/Icon/cod-icon'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../shared/js/storybook/args-utils'; export default { title: 'Experimental/Atoms/Button', diff --git a/src/experimental/stories/container.stories.js b/src/experimental/stories/container.stories.js index 9216f1cb..7cea6afc 100644 --- a/src/experimental/stories/container.stories.js +++ b/src/experimental/stories/container.stories.js @@ -1,5 +1,5 @@ import '../components/atoms/Container/cod-container'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../shared/js/storybook/args-utils'; export default { title: 'Experimental/Atoms/Container', diff --git a/src/experimental/stories/countdown.stories.js b/src/experimental/stories/countdown.stories.js index f5dd0689..e198e4ae 100644 --- a/src/experimental/stories/countdown.stories.js +++ b/src/experimental/stories/countdown.stories.js @@ -1,5 +1,5 @@ import '../components/atoms/Countdown/cod-countdown'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../shared/js/storybook/args-utils'; export default { title: 'Experimental/Atoms/Countdown', diff --git a/src/experimental/stories/form.stories.js b/src/experimental/stories/form.stories.js index 2adee7f6..56c51d6d 100644 --- a/src/experimental/stories/form.stories.js +++ b/src/experimental/stories/form.stories.js @@ -1,5 +1,5 @@ import '../components/organisms/Form/cod-form'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../shared/js/storybook/args-utils'; export default { title: 'Experimental/FormValidation', diff --git a/src/experimental/stories/formcheck.stories.js b/src/experimental/stories/formcheck.stories.js index c63ffb19..8de85b56 100644 --- a/src/experimental/stories/formcheck.stories.js +++ b/src/experimental/stories/formcheck.stories.js @@ -1,5 +1,5 @@ import '../components/atoms/FormCheck/cod-formcheck'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../shared/js/storybook/args-utils'; export default { title: 'Experimental/FormCheck', diff --git a/src/experimental/stories/formcontrol.stories.js b/src/experimental/stories/formcontrol.stories.js index 6d73f3c6..88e15c04 100644 --- a/src/experimental/stories/formcontrol.stories.js +++ b/src/experimental/stories/formcontrol.stories.js @@ -1,5 +1,5 @@ import '../components/atoms/FormControl/cod-formcontrol'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../shared/js/storybook/args-utils'; export default { title: 'Experimental/FormControl', diff --git a/src/experimental/stories/formlabel.stories.js b/src/experimental/stories/formlabel.stories.js index ddf750a0..55b978d6 100644 --- a/src/experimental/stories/formlabel.stories.js +++ b/src/experimental/stories/formlabel.stories.js @@ -1,5 +1,5 @@ import '../components/atoms/FormLabel/cod-formlabel'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../shared/js/storybook/args-utils'; export default { title: 'Experimental/FormLabel', diff --git a/src/experimental/stories/formselect.stories.js b/src/experimental/stories/formselect.stories.js index cb50f521..e447a29c 100644 --- a/src/experimental/stories/formselect.stories.js +++ b/src/experimental/stories/formselect.stories.js @@ -1,5 +1,5 @@ import '../components/atoms/FormSelect/cod-formselect'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../shared/js/storybook/args-utils'; export default { title: 'Experimental/FormSelect', diff --git a/src/experimental/stories/icon.stories.js b/src/experimental/stories/icon.stories.js index a5314d05..871447e1 100644 --- a/src/experimental/stories/icon.stories.js +++ b/src/experimental/stories/icon.stories.js @@ -1,5 +1,5 @@ import '../components/atoms/Icon/cod-icon'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../shared/js/storybook/args-utils'; export default { title: 'Experimental/Atoms/Icon', diff --git a/src/experimental/stories/image.stories.js b/src/experimental/stories/image.stories.js index 015a962e..4972fae4 100644 --- a/src/experimental/stories/image.stories.js +++ b/src/experimental/stories/image.stories.js @@ -1,5 +1,5 @@ import '../components/atoms/Image/cod-image'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../shared/js/storybook/args-utils'; export default { title: 'Experimental/Atoms/Image', diff --git a/src/experimental/stories/loader.stories.js b/src/experimental/stories/loader.stories.js index 52b5c6fb..d3485944 100644 --- a/src/experimental/stories/loader.stories.js +++ b/src/experimental/stories/loader.stories.js @@ -1,5 +1,5 @@ import '../components/atoms/Loader/cod-loader'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../shared/js/storybook/args-utils'; export default { title: 'Experimental/Atoms/Loader', diff --git a/src/experimental/stories/progress.stories.js b/src/experimental/stories/progress.stories.js index c8a674cc..8e2f32f6 100644 --- a/src/experimental/stories/progress.stories.js +++ b/src/experimental/stories/progress.stories.js @@ -1,4 +1,4 @@ -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../shared/js/storybook/args-utils'; import '../components/atoms/Progress/cod-progress'; export default { diff --git a/src/experimental/stories/range.stories.js b/src/experimental/stories/range.stories.js index 667a270a..ccba12fd 100644 --- a/src/experimental/stories/range.stories.js +++ b/src/experimental/stories/range.stories.js @@ -1,5 +1,5 @@ import '../components/atoms/Range/cod-range'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../shared/js/storybook/args-utils'; export default { title: 'Experimental/Atoms/Forms/Range', diff --git a/src/experimental/stories/spinner.stories.js b/src/experimental/stories/spinner.stories.js index d32588b7..2ba0e9d6 100644 --- a/src/experimental/stories/spinner.stories.js +++ b/src/experimental/stories/spinner.stories.js @@ -1,5 +1,5 @@ import '../components/atoms/Spinner/cod-spinner'; -import { COMMON_STORY_ARGS } from '../shared/js/storybook/args-utils'; +import { COMMON_STORY_ARGS } from '../../shared/js/storybook/args-utils'; export default { title: 'Experimental/Atoms/Spinner',