From 49f6bd0d47ac8e3208ea1a0d034e43cf1993d8a6 Mon Sep 17 00:00:00 2001 From: Adam Warner Date: Mon, 6 Jul 2026 12:13:49 +0100 Subject: [PATCH 01/12] Migrate layout shell to AdminLTE 4 / Bootstrap 5 Swap vendored AdminLTE 2.4.18 + Bootstrap 3.4.1 for AdminLTE 4.1.0 + Bootstrap 5.3.8 (AdminLTE's dist CSS now bundles Bootstrap, so the separate Bootstrap stylesheet is dropped; only its JS bundle remains). Rewrite the page shell (header, header_authenticated, sidebar, footer) to AdminLTE 4's app-wrapper/app-header/app-sidebar/app-main/app-content structure and nav-sidebar/nav-treeview markup, and convert the dashboard (index.lp) box/small-box markup to Bootstrap 5 cards as the first fully migrated page. Verified against a live container: fixed a chart.js tooltip lookup that still targeted the old .box selector, restored the header logo mini/full swap and sidebar user-panel collapse behavior that AdminLTE 2 used to provide for free, and resolved a duplicate id="navigation" collision with AdminLTE 4's own accessibility skip-link script. Every other page still uses the old box/Bootstrap-3-grid/BS3-plugin markup and will render incorrectly until the remaining migration phases land. Co-Authored-By: Claude Sonnet 5 Signed-off-by: Adam Warner --- index.lp | 112 ++--- package.json | 4 +- scripts/js/charts.js | 4 +- scripts/js/footer.js | 2 +- scripts/js/index.js | 13 +- scripts/lua/footer.lp | 37 +- scripts/lua/header.lp | 6 +- scripts/lua/header_authenticated.lp | 129 ++--- scripts/lua/sidebar.lp | 468 +++++++++--------- style/pi-hole.css | 56 ++- vendor/adminLTE/AdminLTE.min.css | 8 - vendor/adminLTE/adminlte.min.css | 7 + vendor/adminLTE/adminlte.min.css.map | 1 + vendor/adminLTE/adminlte.min.js | 20 +- vendor/adminLTE/adminlte.min.js.map | 1 + vendor/bootstrap/css/bootstrap.min.css | 6 - vendor/bootstrap/css/bootstrap.min.css.map | 1 - .../fonts/glyphicons-halflings-regular.eot | Bin 20127 -> 0 bytes .../fonts/glyphicons-halflings-regular.svg | 288 ----------- .../fonts/glyphicons-halflings-regular.ttf | Bin 45404 -> 0 bytes .../fonts/glyphicons-halflings-regular.woff | Bin 23424 -> 0 bytes .../fonts/glyphicons-halflings-regular.woff2 | Bin 18028 -> 0 bytes vendor/bootstrap/js/bootstrap.bundle.min.js | 7 + .../bootstrap/js/bootstrap.bundle.min.js.map | 1 + vendor/bootstrap/js/bootstrap.min.js | 6 - 25 files changed, 440 insertions(+), 737 deletions(-) delete mode 100644 vendor/adminLTE/AdminLTE.min.css create mode 100644 vendor/adminLTE/adminlte.min.css create mode 100644 vendor/adminLTE/adminlte.min.css.map create mode 100644 vendor/adminLTE/adminlte.min.js.map delete mode 100644 vendor/bootstrap/css/bootstrap.min.css delete mode 100644 vendor/bootstrap/css/bootstrap.min.css.map delete mode 100644 vendor/bootstrap/fonts/glyphicons-halflings-regular.eot delete mode 100644 vendor/bootstrap/fonts/glyphicons-halflings-regular.svg delete mode 100644 vendor/bootstrap/fonts/glyphicons-halflings-regular.ttf delete mode 100644 vendor/bootstrap/fonts/glyphicons-halflings-regular.woff delete mode 100644 vendor/bootstrap/fonts/glyphicons-halflings-regular.woff2 create mode 100644 vendor/bootstrap/js/bootstrap.bundle.min.js create mode 100644 vendor/bootstrap/js/bootstrap.bundle.min.js.map delete mode 100644 vendor/bootstrap/js/bootstrap.min.js diff --git a/index.lp b/index.lp index a4c8a5775b..2bd5ecd641 100644 --- a/index.lp +++ b/index.lp @@ -14,7 +14,7 @@ mg.include('scripts/lua/header_authenticated.lp','r')
-
+

Total Queries

---

@@ -30,7 +30,7 @@ mg.include('scripts/lua/header_authenticated.lp','r')
-
+

Queries Blocked

---

@@ -46,7 +46,7 @@ mg.include('scripts/lua/header_authenticated.lp','r')
-
+

Percentage Blocked

---

@@ -62,7 +62,7 @@ mg.include('scripts/lua/header_authenticated.lp','r')
-
+

Domains on Lists

---

@@ -80,13 +80,13 @@ mg.include('scripts/lua/header_authenticated.lp','r')
-
-
-

Total queries

- - +
+
+

Total queries

+ +
-
+
@@ -94,19 +94,19 @@ mg.include('scripts/lua/header_authenticated.lp','r')
- +
-
-
-

Client activity

- - +
+
+

Client activity

+ +
-
+
@@ -114,18 +114,18 @@ mg.include('scripts/lua/header_authenticated.lp','r')
- +
-
-
-

Query Types

+
+
+

Query Types

-
+
@@ -134,15 +134,15 @@ mg.include('scripts/lua/header_authenticated.lp','r')
- +
-
-
-

Upstream servers

+
+
+

Upstream servers

-
+
@@ -151,7 +151,7 @@ mg.include('scripts/lua/header_authenticated.lp','r')
- +
@@ -159,12 +159,12 @@ mg.include('scripts/lua/header_authenticated.lp','r')
-
-
-

Top Permitted Domains

+
+
+

Top Permitted Domains

- -
+ +
@@ -182,18 +182,18 @@ mg.include('scripts/lua/header_authenticated.lp','r')
- + - +
-
-
-

Top Blocked Domains

+
+
+

Top Blocked Domains

- -
+ +
@@ -211,20 +211,20 @@ mg.include('scripts/lua/header_authenticated.lp','r')
- + - +
-
-
-

Top Clients (total)

+
+
+

Top Clients (total)

- -
+ +
@@ -242,18 +242,18 @@ mg.include('scripts/lua/header_authenticated.lp','r')
- + - +
-
-
-

Top Clients (blocked only)

+
+
+

Top Clients (blocked only)

- -
+ +
@@ -271,9 +271,9 @@ mg.include('scripts/lua/header_authenticated.lp','r')
- + - + diff --git a/package.json b/package.json index aaa4f133d1..e8492dee2b 100644 --- a/package.json +++ b/package.json @@ -26,9 +26,9 @@ }, "dependencies": { "@fortawesome/fontawesome-free": "6.7.2", - "admin-lte": "2.4.18", + "admin-lte": "4.1.0", "animate.css": "4.1.1", - "bootstrap": "3.4.1", + "bootstrap": "5.3.8", "bootstrap-notify": "3.1.3", "bootstrap-select": "1.13.18", "bootstrap-toggle": "2.2.2", diff --git a/scripts/js/charts.js b/scripts/js/charts.js index 83a90d1f2f..a8a9136c61 100644 --- a/scripts/js/charts.js +++ b/scripts/js/charts.js @@ -191,8 +191,8 @@ function getOrCreateTooltipElement(canvasId, options, context) { font-style: ${options.bodyFont.style}; `; - // Append Tooltip next to canvas-containing box - tooltipEl.ancestor = context.chart.canvas.closest(".box[id]").parentNode; + // Append Tooltip next to canvas-containing card + tooltipEl.ancestor = context.chart.canvas.closest(".card[id]").parentNode; tooltipEl.ancestor.append(tooltipEl); return tooltipEl; diff --git a/scripts/js/footer.js b/scripts/js/footer.js index af99c0a493..9026dd5c24 100644 --- a/scripts/js/footer.js +++ b/scripts/js/footer.js @@ -649,7 +649,7 @@ $("#pihole-disable-5m").on("click", e => { $("#pihole-disable-custom").on("click", e => { e.preventDefault(); let custVal = $("#customTimeout").val(); - custVal = $("#btnMins").hasClass("active") ? custVal * 60 : custVal; + custVal = $("#selMin").is(":checked") ? custVal * 60 : custVal; piholeChange("disable", custVal); }); diff --git a/scripts/js/index.js b/scripts/js/index.js index 7621cdb435..7d926a6757 100644 --- a/scripts/js/index.js +++ b/scripts/js/index.js @@ -891,8 +891,8 @@ $(() => { maintainAspectRatio: true, elements: { arc: { - borderColor: $(".box").css("background-color"), - hoverBorderColor: $(".box").css("background-color"), + borderColor: $(".card").css("background-color"), + hoverBorderColor: $(".card").css("background-color"), hoverOffset: 10, }, }, @@ -942,8 +942,8 @@ $(() => { maintainAspectRatio: true, elements: { arc: { - borderColor: $(".box").css("background-color"), - hoverBorderColor: $(".box").css("background-color"), + borderColor: $(".card").css("background-color"), + hoverBorderColor: $(".card").css("background-color"), hoverOffset: 10, }, }, @@ -987,5 +987,8 @@ window.addEventListener("resize", () => { // Tooltips $(() => { - $('[data-toggle="tooltip"]').tooltip({ html: true, container: "body" }); + for (const el of document.querySelectorAll('[data-bs-toggle="tooltip"]')) { + // eslint-disable-next-line no-new + new bootstrap.Tooltip(el, { html: true, container: "body" }); + } }); diff --git a/scripts/lua/footer.lp b/scripts/lua/footer.lp index 81c05b1b0b..967b9c0e7d 100644 --- a/scripts/lua/footer.lp +++ b/scripts/lua/footer.lp @@ -17,47 +17,46 @@ for k,v in pairs(mg.request_info.http_headers) do end ?> - - - + + + + + + + -
+
-
+
Donate if you found this useful.
-
+

    @@ -65,7 +64,7 @@ end
    - + diff --git a/scripts/lua/header.lp b/scripts/lua/header.lp index 72e06e69f4..86670c342b 100644 --- a/scripts/lua/header.lp +++ b/scripts/lua/header.lp @@ -95,11 +95,11 @@ is_authenticated = mg.request_info.is_authenticated - + + - @@ -129,7 +129,7 @@ is_authenticated = mg.request_info.is_authenticated - + diff --git a/scripts/lua/header_authenticated.lp b/scripts/lua/header_authenticated.lp index c544cf7a24..88da490348 100644 --- a/scripts/lua/header_authenticated.lp +++ b/scripts/lua/header_authenticated.lp @@ -24,7 +24,7 @@ mg.include('header.lp','r') - +
    ").attr("data-row", idx).attr("data-original-line", line); diff --git a/scripts/js/settings-system.js b/scripts/js/settings-system.js index 30e2d6fdbb..fc05c634c1 100644 --- a/scripts/js/settings-system.js +++ b/scripts/js/settings-system.js @@ -206,7 +206,7 @@ $(".confirm-restartdns").confirm({ cancelButton: "No, go back", post: true, confirmButtonClass: "btn-danger", - cancelButtonClass: "btn-default", + cancelButtonClass: "btn-secondary", dialogClass: "modal-dialog", }); @@ -230,7 +230,7 @@ $(".confirm-flushlogs").confirm({ cancelButton: "No, go back", post: true, confirmButtonClass: "btn-danger", - cancelButtonClass: "btn-default", + cancelButtonClass: "btn-secondary", dialogClass: "modal-dialog", }); @@ -254,7 +254,7 @@ $(".confirm-flusharp").confirm({ cancelButton: "No, go back", post: true, confirmButtonClass: "btn-danger", - cancelButtonClass: "btn-default", + cancelButtonClass: "btn-secondary", dialogClass: "modal-dialog", }); @@ -275,7 +275,7 @@ $(() => { maintainAspectRatio: true, elements: { arc: { - borderColor: $(".box").css("background-color"), + borderColor: $(".card").css("background-color"), }, }, plugins: { diff --git a/scripts/js/utils.js b/scripts/js/utils.js index c34e73c5a8..0aa0100725 100644 --- a/scripts/js/utils.js +++ b/scripts/js/utils.js @@ -746,27 +746,16 @@ function setInter(func, interval) { } /** - * Toggle or set the collapse state of a box element - * @param {HTMLElement} box - The box element - * @param {boolean} [expand=true] - Whether to expand (true) or collapse (false) the box + * Toggle or set the collapse state of a card element + * @param {HTMLElement} card - The card element + * @param {boolean} [expand=true] - Whether to expand (true) or collapse (false) the card */ // Not using the AdminLTE API so that the expansion is not animated -// Otherwise, we could use `$(customBox).boxWidget("expand")` -function toggleBoxCollapse(box, expand = true) { - if (!box) return; +// Otherwise, we could use `CardWidget.getOrCreateInstance(customCard).expand()` +function toggleBoxCollapse(card, expand = true) { + if (!card) return; - const icon = box.querySelector(".btn-box-tool > i"); - const body = box.querySelector(".box-body"); - - if (expand) { - box.classList.remove("collapsed-box"); - if (icon) icon.classList.replace("fa-plus", "fa-minus"); - if (body) body.style = ""; - } else { - box.classList.add("collapsed-box"); - if (icon) icon.classList.replace("fa-minus", "fa-plus"); - if (body) body.style.display = "none"; - } + card.classList.toggle("collapsed-card", !expand); } globalThis.utils = (function () { diff --git a/search.lp b/search.lp index d6a2640ff2..80e6a04438 100644 --- a/search.lp +++ b/search.lp @@ -15,16 +15,16 @@ mg.include('scripts/lua/header_authenticated.lp','r')
    -
    -
    +
    +
    - +
    -
    +
    diff --git a/settings-api.lp b/settings-api.lp index 493c315d4d..60bc4e6eb2 100644 --- a/settings-api.lp +++ b/settings-api.lp @@ -15,11 +15,11 @@ mg.include('scripts/lua/settings_header.lp','r') ?>
    -
    -
    -

    Theme settings

    +
    +
    +

    Theme settings

    -
    +
    @@ -50,11 +50,11 @@ mg.include('scripts/lua/settings_header.lp','r')
    -
    -
    -

    Advanced Settings

    +
    +
    +

    Advanced Settings

    -
    +
    @@ -71,9 +71,9 @@ mg.include('scripts/lua/settings_header.lp','r')
    - - - + + +
    @@ -83,11 +83,11 @@ mg.include('scripts/lua/settings_header.lp','r')
    -
    -
    -

    Exclusions

    +
    +
    +

    Exclusions

    -
    +

    Domains to be excluded from Top Domain Lists and Query Log

    @@ -111,11 +111,11 @@ mg.include('scripts/lua/settings_header.lp','r')
    -
    -
    -

    Currently active sessions

    +
    +
    +

    Currently active sessions

    -
    +
    ` alignment by inheriting `text-align`.\n// 3. Fix alignment for Safari\n\nth {\n font-weight: $table-th-font-weight; // 1\n text-align: inherit; // 2\n text-align: -webkit-match-parent; // 3\n}\n\nthead,\ntbody,\ntfoot,\ntr,\ntd,\nth {\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n}\n\n\n// Forms\n//\n// 1. Allow labels to use `margin` for spacing.\n\nlabel {\n display: inline-block; // 1\n}\n\n// Remove the default `border-radius` that macOS Chrome adds.\n// See https://github.com/twbs/bootstrap/issues/24093\n\nbutton {\n // stylelint-disable-next-line property-disallowed-list\n border-radius: 0;\n}\n\n// Explicitly remove focus outline in Chromium when it shouldn't be\n// visible (e.g. as result of mouse click or touch tap). It already\n// should be doing this automatically, but seems to currently be\n// confused and applies its very visible two-tone outline anyway.\n\nbutton:focus:not(:focus-visible) {\n outline: 0;\n}\n\n// 1. Remove the margin in Firefox and Safari\n\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0; // 1\n font-family: inherit;\n @include font-size(inherit);\n line-height: inherit;\n}\n\n// Remove the inheritance of text transform in Firefox\nbutton,\nselect {\n text-transform: none;\n}\n// Set the cursor for non-` + Updating... this may take a while. Please do not navigate away from or close this page. diff --git a/groups-clients.lp b/groups-clients.lp index 5586d33e35..770f4016e3 100644 --- a/groups-clients.lp +++ b/groups-clients.lp @@ -18,15 +18,15 @@ mg.include('scripts/lua/header_authenticated.lp','r')
    -
    - -
    -

    +
    + +
    +

    Add a new client

    - -
    + +
    @@ -59,22 +59,22 @@ mg.include('scripts/lua/header_authenticated.lp','r')
    -
    -
    -
    -

    +
    +
    +

    List of configured clients

    - -
    + +
    @@ -87,11 +87,11 @@ mg.include('scripts/lua/header_authenticated.lp','r')
    - +
    - +
    - +

    diff --git a/groups-domains.lp b/groups-domains.lp index 7c31ff8fbe..a304983b4f 100644 --- a/groups-domains.lp +++ b/groups-domains.lp @@ -18,21 +18,21 @@ mg.include('scripts/lua/header_authenticated.lp','r')
    -
    -
    -

    +
    +
    +

    Add a new domain or regex filter

    - -
    + +
    - +
    - +
    -
    -
    -

    +
    +
    +

    List of domains

    @@ -132,8 +132,8 @@ mg.include('scripts/lua/header_authenticated.lp','r')
    - -
    + +
    @@ -148,11 +148,11 @@ mg.include('scripts/lua/header_authenticated.lp','r')
    - +
    - +
    - +

    diff --git a/groups-lists.lp b/groups-lists.lp index 117bc2a7d3..bb4cd3a8ce 100644 --- a/groups-lists.lp +++ b/groups-lists.lp @@ -18,15 +18,15 @@ mg.include('scripts/lua/header_authenticated.lp','r')
    -
    - -
    -

    +
    + +
    +

    Add a new subscribed list

    - -
    + +
    @@ -42,18 +42,18 @@ mg.include('scripts/lua/header_authenticated.lp','r')
    -
    diff --git a/groups.lp b/groups.lp index 06db01dabc..3ffd908b10 100644 --- a/groups.lp +++ b/groups.lp @@ -18,15 +18,15 @@ mg.include('scripts/lua/header_authenticated.lp','r')
    -
    - -
    -

    +
    + +
    +

    Add a new group

    - -
    + +
    @@ -38,27 +38,27 @@ mg.include('scripts/lua/header_authenticated.lp','r')
    -
    -
    -
    -

    +
    +
    +

    List of groups

    - -
    + +
    @@ -71,11 +71,11 @@ mg.include('scripts/lua/header_authenticated.lp','r')
    - +
    - +
    - +

    diff --git a/interfaces.lp b/interfaces.lp index 2e1d55b5e8..898e9eb0cc 100644 --- a/interfaces.lp +++ b/interfaces.lp @@ -15,8 +15,8 @@ mg.include('scripts/lua/header_authenticated.lp','r')
    -
    -
    +
    +
    diff --git a/login.lp b/login.lp index c965c064fc..67c11ddeeb 100644 --- a/login.lp +++ b/login.lp @@ -11,7 +11,7 @@ mg.include('scripts/lua/header.lp','r') ?> -

    @@ -175,8 +175,7 @@ mg.include('scripts/lua/settings_header.lp','r') @@ -218,8 +217,7 @@ mg.include('scripts/lua/settings_header.lp','r') diff --git a/settings-dhcp.lp b/settings-dhcp.lp index 327190c75d..75f5cb7dd6 100644 --- a/settings-dhcp.lp +++ b/settings-dhcp.lp @@ -16,11 +16,11 @@ mg.include('scripts/lua/settings_header.lp','r')
    -
    -
    -

    DHCP Settings

    +
    +
    +

    DHCP Settings

    -
    +
    @@ -28,45 +28,45 @@ mg.include('scripts/lua/settings_header.lp','r')

    Make sure your router's DHCP server is disabled when using the Pi-hole DHCP server!

    -
    +
    -
    +
    -
    Start
    + Start
    -
    +
    -
    End
    + End
    -
    +
    -
    Router
    + Router
    -
    +
    -
    Netmask
    + Netmask @@ -87,17 +87,17 @@ mg.include('scripts/lua/settings_header.lp','r')
    -
    -
    -

    Advanced DHCP Settings

    +
    +
    +

    Advanced DHCP Settings

    -
    +
    -
    Lease time
    + Lease time @@ -138,11 +138,11 @@ mg.include('scripts/lua/settings_header.lp','r')
    -
    -
    -

    Currently active DHCP leases

    +
    +
    +

    Currently active DHCP leases

    -
    +
    @@ -166,11 +166,11 @@ mg.include('scripts/lua/settings_header.lp','r')
    -
    -
    -

    Static DHCP configuration

    +
    +
    +

    Static DHCP configuration

    -
    +
    @@ -191,7 +191,7 @@ mg.include('scripts/lua/settings_header.lp','r')
    -
    +

    Specify per host parameters for the DHCP server. This allows a machine with a particular hardware address to be always allocated the same hostname, IP address and lease time. A hostname specified like this overrides any supplied by the DHCP client on the machine. It is also allowable to omit the hardware address and include the hostname, in which case the IP address and lease times will apply to any machine claiming that name.

    Each entry should be on a separate line, and should be of the form:

    @@ -200,7 +200,7 @@ mg.include('scripts/lua/settings_header.lp','r')
    -
    +
    • Only one entry per MAC address is allowed.
    • @@ -213,24 +213,25 @@ mg.include('scripts/lua/settings_header.lp','r')
    -
    +
    00:20:e0:3b:13:af,192.168.0.123
    tells Pi-hole to give the machine with hardware address 00:20:e0:3b:13:af the address 192.168.0.123
    00:20:e0:3b:13:af,laptop
    tells Pi-hole to give the machine with hardware address 00:20:e0:3b:13:af the name laptop
    00:20:e0:3b:13:af,192.168.0.123,laptop,infinite
    tells Pi-hole to give the machine with hardware address 00:20:e0:3b:13:af the address 192.168.0.123, the name laptop, and an infinite DHCP lease
    00:20:e0:3b:13:af,[2001:db8::1]
    tells Pi-hole to give the machine with hardware address 00:20:e0:3b:13:af the address [2001:db8::1]
    -
    -
    -
    -

    Advanced settings help

    -
    -
    -
    @@ -36,16 +36,17 @@ mg.include('scripts/lua/settings_header.lp','r')

    ECS (Extended Client Subnet) defines a mechanism for recursive resolvers to send partial client IP address information to authoritative DNS name servers. Content Delivery Networks (CDNs) and latency-sensitive services use this to give geo-located responses when responding to name lookups coming through public DNS resolvers. Note that ECS may result in reduced privacy.

    -
    -
    -

    Custom DNS servers

    -
    -
    -
    -
    -
    -

    DNS domain settings

    +
    +
    +

    DNS domain settings

    -
    +
    -
    Domain
    + Domain
    @@ -81,11 +82,11 @@ mg.include('scripts/lua/settings_header.lp','r')
    -
    -
    -

    Rate-limiting

    +
    +
    +

    Rate-limiting

    -
    +

    Block clients making more than queries within @@ -105,11 +106,11 @@ mg.include('scripts/lua/settings_header.lp','r')

    -
    -
    -

    Interface settings

    +
    +
    +

    Interface settings

    -
    +
    @@ -147,11 +148,11 @@ mg.include('scripts/lua/settings_header.lp','r')
    -
    -
    -

    Advanced DNS settings

    +
    +
    +

    Advanced DNS settings

    -
    +
    @@ -195,11 +196,11 @@ mg.include('scripts/lua/settings_header.lp','r')
    -
    -
    -

    Conditional forwarding

    +
    +
    +

    Conditional forwarding

    -
    +

    If not configured as your DHCP server, Pi-hole typically won't be able to diff --git a/settings-dnsrecords.lp b/settings-dnsrecords.lp index 92ceaa1d2f..10dc4347a0 100644 --- a/settings-dnsrecords.lp +++ b/settings-dnsrecords.lp @@ -15,15 +15,15 @@ mg.include('scripts/lua/settings_header.lp','r') ?>

    -
    -
    -

    Local DNS records

    +
    +
    +

    Local DNS records

    -
    +
    -

    List of local DNS records

    - +

    List of local DNS records

    +
    @@ -49,22 +49,22 @@ mg.include('scripts/lua/settings_header.lp','r') -
    -
    -
    -

    Local CNAME records

    +
    +
    +

    Local CNAME records

    -
    +
    -

    List of local CNAME records

    - +

    List of local CNAME records

    +
    @@ -94,7 +94,7 @@ mg.include('scripts/lua/settings_header.lp','r') -
    @@ -74,11 +74,11 @@ mg.include('scripts/lua/settings_header.lp','r') -
    -
    -

    DHCP server metrics

    +
    +
    +

    DHCP server metrics

    -
    +
    @@ -150,11 +150,11 @@ mg.include('scripts/lua/settings_header.lp','r')
    -
    -
    -

    DNS cache metrics

    +
    +
    +

    DNS cache metrics

    -
    +
    @@ -205,11 +205,11 @@ mg.include('scripts/lua/settings_header.lp','r') -
    -
    -

    DNS reply metrics

    +
    +
    +

    DNS reply metrics

    -
    +
    @@ -245,19 +245,19 @@ mg.include('scripts/lua/settings_header.lp','r')
    -
    -
    -

    Actions

    +
    +
    +

    Actions

    -
    +
    -
    +
    -
    +
    -
    +
    diff --git a/settings-teleporter.lp b/settings-teleporter.lp index 9214fe7dfe..6d3f850dc9 100644 --- a/settings-teleporter.lp +++ b/settings-teleporter.lp @@ -15,14 +15,14 @@ mg.include('scripts/lua/settings_header.lp','r') ?>
    -
    -
    -

    Export your Pi-hole's configuration

    +
    +
    +

    Export your Pi-hole's configuration

    -
    +

    Warning:
    This archive contains sensitive information about your Pi-hole installation, e.g. your 2FA-TOTP secret (if enabled). Please be careful with this file and do not share it with anyone even if they claim to help you.
    Your long-term history database pihole-FTL.db must be backed up separately.

    -
    +

    Export
    @@ -31,11 +31,11 @@ mg.include('scripts/lua/settings_header.lp','r')
    -
    -
    -

    Import previously exported configuration

    +
    +
    +

    Import previously exported configuration

    -
    +
    @@ -51,7 +51,7 @@ mg.include('scripts/lua/settings_header.lp','r')
     
     
    -
    +

    Import
    @@ -65,8 +65,7 @@ mg.include('scripts/lua/settings_header.lp','r') diff --git a/style/pi-hole.css b/style/pi-hole.css index ff3b5f8609..568f0d0443 100644 --- a/style/pi-hole.css +++ b/style/pi-hole.css @@ -637,6 +637,40 @@ td.details-control { flex: 1 0 auto; } +/* Bootstrap 3's form validation state classes (.has-error/.has-warning/ + .has-success) were removed in Bootstrap 5 (replaced by .is-invalid/ + .is-valid on the input itself), but a few pages still toggle them via JS + for simple color-coded feedback, so pi-hole defines them itself here. */ +.has-error .form-control, +.has-error .form-control:focus { + border-color: #a94442; +} + +.has-warning .form-control, +.has-warning .form-control:focus { + border-color: #8a6d3b; +} + +.has-success .form-control, +.has-success .form-control:focus { + border-color: #3c763d; +} + +.has-error label, +.has-error .control-label { + color: #a94442; +} + +.has-warning label, +.has-warning .control-label { + color: #8a6d3b; +} + +.has-success label, +.has-success .control-label { + color: #3c763d; +} + .login-footer a { text-align: center; min-width: 28%; diff --git a/taillog.lp b/taillog.lp index 4e1c5c7163..335870dc50 100644 --- a/taillog.lp +++ b/taillog.lp @@ -11,10 +11,10 @@ mg.include('scripts/lua/header_authenticated.lp','r') ?>
    -
    -
    -

    tail -F ...

    -
    +
    +
    +

    tail -F ...

    +
    Autoscroll:   
    -
    +
    
    
    From 6657d28a4e9832d4da6e65d5b2adf9813038639d Mon Sep 17 00:00:00 2001
    From: Adam Warner 
    Date: Mon, 6 Jul 2026 12:47:45 +0100
    Subject: [PATCH 03/12] Replace icheck-bootstrap checkboxes/radios with native
     Bootstrap 5 form-check
    
    Convert all 35 static checkbox/radio inputs across 9 templates (queries,
    search, settings-api, settings-dhcp, groups-domains, settings-dns,
    settings-privacy, settings-teleporter) plus the dynamically-generated
    ones (settings-advanced.js's per-setting boolean/enum controls,
    settings-dns.js's DNS-upstream picker) from icheck-bootstrap's
    JS-post-processed styling to Bootstrap 5's native .form-check/
    .form-check-input/.form-check-label markup, which needs no JS at all.
    
    Remove footer.js's applyCheckboxRadioStyle() (and its call sites in
    settings-advanced.js/settings-dns.js) entirely - it used to strip and
    re-add classes on every checkbox/radio's parent after page load, which
    would have destroyed the new static .form-check classes at runtime.
    Drop the icheck-bootstrap dependency, its vendor CSS and the  in
    header.lp, and replace its now-dead pseudo-element checkbox styling in
    pi-hole.css with a couple of plain .form-check-input/.form-check-label
    rules for the one spot that needs a smaller checkbox size (the domain
    list's filter-by-type row).
    
    Two "no-icheck"-excluded checkboxes (a table-header select-all in both
    settings-dns.lp and settings-dns.js) are left as bare native checkboxes,
    matching their original deliberate exclusion.
    
    Also confirmed pi-hole's own text-red/text-green/bg-*/etc. color utility
    classes are unaffected by the AdminLTE core removal - each theme file
    already defines them fully rather than only overriding an AdminLTE base,
    so no fix was needed there.
    
    Verified against a live container: settings/dns (checkbox/radio styling,
    custom-servers card-collapse toggle) and settings/privacy (privacy-level
    radios) render correctly with zero console errors.
    
    Co-Authored-By: Claude Sonnet 5 
    Signed-off-by: Adam Warner 
    ---
     groups-domains.lp                      | 14 ++++----
     package-lock.json                      |  7 ----
     package.json                           |  1 -
     queries.lp                             |  4 +--
     scripts/js/footer.js                   | 19 ----------
     scripts/js/settings-advanced.js        | 13 ++++---
     scripts/js/settings-dns.js             | 11 +++---
     scripts/lua/header.lp                  |  1 -
     search.lp                              |  6 ++--
     settings-api.lp                        | 18 +++++-----
     settings-dhcp.lp                       | 20 +++++------
     settings-dns.lp                        | 48 +++++++++++++-------------
     settings-privacy.lp                    | 36 +++++++++----------
     settings-teleporter.lp                 | 12 +++----
     style/pi-hole.css                      | 47 ++++---------------------
     vendor/icheck/icheck-bootstrap.min.css |  5 ---
     16 files changed, 95 insertions(+), 167 deletions(-)
     delete mode 100644 vendor/icheck/icheck-bootstrap.min.css
    
    diff --git a/groups-domains.lp b/groups-domains.lp
    index a304983b4f..c1b89969a5 100644
    --- a/groups-domains.lp
    +++ b/groups-domains.lp
    @@ -57,9 +57,9 @@ mg.include('scripts/lua/header_authenticated.lp','r')
                                 
    -
    - - +
    + +

    Check this box if you want to involve all subdomains. The entered domain will be converted to a RegEx filter while adding.

    @@ -123,12 +123,12 @@ mg.include('scripts/lua/header_authenticated.lp','r')
    - - + +
    - - + +
    diff --git a/package-lock.json b/package-lock.json index d314cfe709..ee3a502b8b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -26,7 +26,6 @@ "datatables.net-select-bs": "1.3.1", "daterangepicker": "3.1.0", "hammerjs": "2.0.8", - "icheck-bootstrap": "3.0.1", "jquery": "3.7.1", "modernized-waitme": "1.0.0", "moment": "2.30.1", @@ -4259,12 +4258,6 @@ "node": ">=18.18.0" } }, - "node_modules/icheck-bootstrap": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/icheck-bootstrap/-/icheck-bootstrap-3.0.1.tgz", - "integrity": "sha512-Rj3SybdcMcayhsP4IJ+hmCNgCKclaFcs/5zwCuLXH1WMo468NegjhZVxbSNKhEjJjnwc4gKETogUmPYSQ9lEZQ==", - "license": "MIT" - }, "node_modules/ignore": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", diff --git a/package.json b/package.json index e8492dee2b..65ac50d96e 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,6 @@ "datatables.net-select-bs": "1.3.1", "daterangepicker": "3.1.0", "hammerjs": "2.0.8", - "icheck-bootstrap": "3.0.1", "jquery": "3.7.1", "modernized-waitme": "1.0.0", "moment": "2.30.1", diff --git a/queries.lp b/queries.lp index 9686fcbba6..a19c7d7144 100644 --- a/queries.lp +++ b/queries.lp @@ -68,7 +68,7 @@ mg.include('scripts/lua/header_authenticated.lp','r')
    -
    +
    @@ -156,7 +156,7 @@ mg.include('scripts/lua/header_authenticated.lp','r')

    Recent Queries

    - +
    diff --git a/scripts/js/footer.js b/scripts/js/footer.js index 41072ad0c7..068a2d3536 100644 --- a/scripts/js/footer.js +++ b/scripts/js/footer.js @@ -174,22 +174,6 @@ function testCookies() { return ret; } -function applyCheckboxRadioStyle() { - // Get all radio/checkboxes for theming, with the exception of: - // - the two radio buttons on the custom disable timer, - // - radio/checkboxes elements with class "no-icheck", - // - every element with an id that starts with "status_" - const sel = $("input[type='radio'],input[type='checkbox']") - .not("#selSec") - .not("#selMin") - .not("#expert-settings") - .not("#only-changed") - .not(".no-icheck") - .not("[id^=status_]"); - sel.parent().removeClass(); - sel.parent().addClass("icheck-primary"); -} - let systemTimer; let versionTimer; function updateInfo() { @@ -613,9 +597,6 @@ $(() => { $("#cookieInfo").show(); } - // Apply icheckbox/iradio style - applyCheckboxRadioStyle(); - if (!globalThis._isLoginPage) { // Run check immediately after page loading ... utils.checkMessages(); diff --git a/scripts/js/settings-advanced.js b/scripts/js/settings-advanced.js index 1eabc8f054..0f2210f3d3 100644 --- a/scripts/js/settings-advanced.js +++ b/scripts/js/settings-advanced.js @@ -5,7 +5,7 @@ * This file is copyright under the latest version of the EUPL. * Please see LICENSE file for your rights under this license. */ -/* global utils:false, apiFailure: false, applyCheckboxRadioStyle: false */ +/* global utils:false, apiFailure: false */ "use strict"; @@ -106,7 +106,7 @@ function valueDetails(key, value) { case "boolean": { content += '
    ' + - '
    `; } else { @@ -102,9 +102,6 @@ function fillDNSupstreams(value, servers) { // Hide the loading animation $("#dns-upstreams-overlay").hide(); - - // Apply styling to the new checkboxes - applyCheckboxRadioStyle(); } function setInterfaceName(name) { diff --git a/scripts/lua/header.lp b/scripts/lua/header.lp index 86670c342b..c20049a81c 100644 --- a/scripts/lua/header.lp +++ b/scripts/lua/header.lp @@ -105,7 +105,6 @@ is_authenticated = mg.request_info.is_authenticated - diff --git a/search.lp b/search.lp index 80e6a04438..9a47b2f8ce 100644 --- a/search.lp +++ b/search.lp @@ -27,9 +27,9 @@ mg.include('scripts/lua/header_authenticated.lp','r')
    -
    - - +
    + +
    diff --git a/settings-api.lp b/settings-api.lp index 60bc4e6eb2..bb74efdba1 100644 --- a/settings-api.lp +++ b/settings-api.lp @@ -36,9 +36,9 @@ mg.include('scripts/lua/settings_header.lp','r')
    -
    - - +
    + +

    The boxed layout is helpful when working on large screens because it prevents the site from stretching very wide.

    @@ -57,16 +57,16 @@ mg.include('scripts/lua/settings_header.lp','r')
    -
    - - +
    + +

    This will make the API output more human-readable, but will increase the size of the output and make the API a bit slower.

    -
    - - +
    + +

    This will allow clients to perform destructive actions via the API, such as rebooting or shutting down the system Pi-hole is running on.

    diff --git a/settings-dhcp.lp b/settings-dhcp.lp index 75f5cb7dd6..7ff1cba279 100644 --- a/settings-dhcp.lp +++ b/settings-dhcp.lp @@ -23,8 +23,8 @@ mg.include('scripts/lua/settings_header.lp','r')
    -
    - +
    +

    Make sure your router's DHCP server is disabled when using the Pi-hole DHCP server!

    @@ -77,8 +77,8 @@ mg.include('scripts/lua/settings_header.lp','r')

    Leave the netmask field empty to have Pi-hole infer it from the configured IP address of your device. If you want to specify a netmask, you can use the format 255.255.255.0.

    -
    -   +
    +

    Enable this option to enable IPv6 support for the Pi-hole DHCP server. This will allow the Pi-hole to hand out IPv6 addresses to clients and also provide IPv6 router advertisements (RA) to clients. This option is only useful if the Pi-hole is configured with an IPv6 address.

    @@ -108,20 +108,20 @@ mg.include('scripts/lua/settings_header.lp','r')
    -
    -   +
    +

    The DHCPv4 rapid commit option allows the Pi-hole DHCP server to assign an IP address to a client right away. This can notably speed up the address assignment process and you will notice, e.g., faster WiFi joins in your network. This option should only be enabled if the Pi-hole DHCP server is the only DHCP server in your network.

    -
    -   +
    +

    Advertise DNS server multiple times to clients. Some devices will add their own proprietary DNS servers to the list of DNS servers, which can cause issues with Pi-hole. This option will advertise the Pi-hole DNS server multiple times to clients, which should prevent this from happening.

    -
    -   +
    +

    If this option is set, Pi-hole ignores all clients which are not explicitly configured through dhcp.hosts. This can be useful to prevent unauthorized clients from getting an IP address from the DHCP server.
    It should be noted that this option is not a security feature, as clients can still assign themselves an IP address and use the network. It is merely a convenience feature to prevent unknown clients from getting a valid IP configuration assigned automatically.
    diff --git a/settings-dns.lp b/settings-dns.lp index 433d04e091..ef2fe85064 100644 --- a/settings-dns.lp +++ b/settings-dns.lp @@ -73,9 +73,9 @@ mg.include('scripts/lua/settings_header.lp','r')

    The DNS domains for your Pi-hole. This DNS domain is purely local. FTL may answer queries from its local cache and configuration but *never* forwards any requests upstream *unless* you have configured a dns.revServer exactly for this domain. If no domain is specified and you are using Pi-hole's DHCP server, then any hostnames with a domain part (i.e., with a period) will be disallowed. If a domain is specified, then hostnames with a domain parts matching the domain here are allowed. In addition, when a suffix is set then hostnames without a domain part have the suffix added as an optional domain part.

    -
    - - +
    + +

    If set, the domain is added to simple names (without a period) in /etc/hosts in the same way as for DHCP-derived names.

    @@ -116,25 +116,25 @@ mg.include('scripts/lua/settings_header.lp','r')

    Recommended setting

    -
    - - +
    + +

    Allows only queries from devices that are at most one hop away (local devices)

    Potentially dangerous options

    Make sure your Pi-hole is properly firewalled! -
    - - +
    + +
    -
    - - +
    + +
    -
    - - +
    + +

    These options are dangerous on devices directly connected to the Internet such as cloud instances and are only safe if your @@ -155,9 +155,9 @@ mg.include('scripts/lua/settings_header.lp','r')

    -
    - - +
    + +

    Tells Pi-hole to never forward queries for plain names, without dots or domain parts, to upstream nameservers. If the name is not known from /etc/hosts or DHCP then a "not found" @@ -166,9 +166,9 @@ mg.include('scripts/lua/settings_header.lp','r') DNS loop under certain circumstances (e.g. if a client would send TLD DNSSEC queries).


    -
    - - +
    + +

    All reverse lookups for private IP ranges (i.e., 192.168.0.x/24, etc.) which are not found in /etc/hosts or the DHCP leases are answered with "no such domain" rather than being forwarded upstream. The set @@ -178,9 +178,9 @@ mg.include('scripts/lua/settings_header.lp','r') Make sure you have set up conditional forwarding in this case.


    -
    - - +
    + +

    Validate DNS replies and cache DNSSEC data. When forwarding DNS queries, Pi-hole requests the DNSSEC records needed to validate the replies. If a domain fails validation or the upstream does not diff --git a/settings-privacy.lp b/settings-privacy.lp index 429186bda7..cc7e97a642 100644 --- a/settings-privacy.lp +++ b/settings-privacy.lp @@ -25,9 +25,9 @@ mg.include('scripts/lua/settings_header.lp','r')

    The currently configured logging file is

    -
    - - +
    + +
    @@ -43,9 +43,9 @@ mg.include('scripts/lua/settings_header.lp','r')

    Pi-hole's long-term database is stored at

    -
    - - +
    + +

    @@ -73,24 +73,24 @@ mg.include('scripts/lua/settings_header.lp','r')

    Specify if DNS queries should be anonymized, available options are:

    -
    - - +
    + +

    Gives maximum amount of statistics

    -
    - - +
    + +

    This disables the Top Permitted Domains and Top Blocked Domains tables on the dashboard

    -
    - - +
    + +

    This disables all tables on the dashboard

    -
    - - +
    + +

    No history is saved at all to the database, and nothing is shown in the query log. Also, there are no top item lists. Note that this also largely disabled regex capabilities.

    The privacy level may be increased at any time without having to restart the DNS resolver. However, note that the DNS resolver needs to be restarted when lowering the privacy level. This restarting is automatically done when saving.

    diff --git a/settings-teleporter.lp b/settings-teleporter.lp index 6d3f850dc9..1d4c90e496 100644 --- a/settings-teleporter.lp +++ b/settings-teleporter.lp @@ -44,12 +44,12 @@ mg.include('scripts/lua/settings_header.lp','r')
    -
     
    -
     
    -
     
    -
     
    -
     
    -
     
    +
    +
    +
    +
    +
    +
    diff --git a/style/pi-hole.css b/style/pi-hole.css index 568f0d0443..fddb912e0a 100644 --- a/style/pi-hole.css +++ b/style/pi-hole.css @@ -732,17 +732,6 @@ li:not(.menu-open) .nav-treeview .warning-count { display: none !important; } -/*** Accessibility - Add focus for checkboxes and radio buttons (icheck) ***/ -[class*="icheck-"] > input:first-child:focus + label::before { - outline: 1px #3c8dbc solid; - border-color: #3c8dbc; -} - -/* Fix indentation of

    elements inside icheck elements */ -[class*="icheck-"] > label + p { - padding-left: 29px; -} - /* Fix some datatables layout on small screens */ @media screen and (max-width: 660px), screen and (min-width: 767px) and (max-width: 960px) { #domainsTable_wrapper .table-responsive { @@ -864,38 +853,14 @@ li:not(.menu-open) .nav-treeview .warning-count { min-height: 1.2em; } -/* Domains table: filter by type - smaller icheck */ -body:not([class*="lcars"]) .filter_types [class*="icheck-"] > label { - padding-left: 1.5em !important; - line-height: 1.2em; - min-height: 1.2em; -} -body:not([class*="lcars"]) - .filter_types - [class*="icheck-"] - > input:first-child - + input[type="hidden"] - + label::before, -body:not([class*="lcars"]) .filter_types [class*="icheck-"] > input:first-child + label::before { +/* Domains table: filter by type - smaller checkboxes */ +.filter_types .form-check-input { width: 1.2em; height: 1.2em; - margin-left: -1.55em; -} -body:not([class*="lcars"]) - .filter_types - [class*="icheck-"] - > input:first-child:checked - + input[type="hidden"] - + label::after, -body:not([class*="lcars"]) - .filter_types - [class*="icheck-"] - > input:first-child:checked - + label::after { - width: 0.35em; - height: 0.7em; - top: -0.2em; - left: -0.18em; +} +.filter_types .form-check-label { + line-height: 1.2em; + min-height: 1.2em; } /* reverse side menu collapse arrows when menu is closed */ diff --git a/vendor/icheck/icheck-bootstrap.min.css b/vendor/icheck/icheck-bootstrap.min.css deleted file mode 100644 index cf60dd3e10..0000000000 --- a/vendor/icheck/icheck-bootstrap.min.css +++ /dev/null @@ -1,5 +0,0 @@ -/*! - * icheck-bootstrap v3.0.1 (https://github.com/bantikyan/icheck-bootstrap) - * Copyright 2018 Hovhannes Bantikyan. - * Licensed under MIT (https://github.com/bantikyan/icheck-bootstrap/blob/master/LICENSE) - */[class*=icheck-]{min-height:22px;margin-top:6px!important;margin-bottom:6px!important;padding-left:0}.icheck-inline{display:inline-block}.icheck-inline+.icheck-inline{margin-left:.75rem;margin-top:6px}[class*=icheck-]>label{padding-left:29px!important;min-height:22px;line-height:22px;display:inline-block;position:relative;vertical-align:top;margin-bottom:0;font-weight:400;cursor:pointer}[class*=icheck-]>input:first-child{position:absolute!important;opacity:0;margin:0}[class*=icheck-]>input:first-child:disabled{cursor:default}[class*=icheck-]>input:first-child+input[type=hidden]+label::before,[class*=icheck-]>input:first-child+label::before{content:"";display:inline-block;position:absolute;width:22px;height:22px;border:1px solid #D3CFC8;border-radius:0;margin-left:-29px}[class*=icheck-]>input:first-child:checked+input[type=hidden]+label::after,[class*=icheck-]>input:first-child:checked+label::after{content:"";display:inline-block;position:absolute;top:0;left:0;width:7px;height:10px;border:2px solid #fff;border-left:none;border-top:none;transform:translate(7.75px,4.5px) rotate(45deg);-ms-transform:translate(7.75px,4.5px) rotate(45deg)}[class*=icheck-]>input[type=radio]:first-child+input[type=hidden]+label::before,[class*=icheck-]>input[type=radio]:first-child+label::before{border-radius:50%}[class*=icheck-]>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,[class*=icheck-]>input:first-child:not(:checked):not(:disabled):hover+label::before{border-width:2px}[class*=icheck-]>input:first-child:disabled+input[type=hidden]+label,[class*=icheck-]>input:first-child:disabled+input[type=hidden]+label::before,[class*=icheck-]>input:first-child:disabled+label,[class*=icheck-]>input:first-child:disabled+label::before{pointer-events:none;cursor:default;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none;opacity:.65}.icheck-default>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-default>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#adadad}.icheck-default>input:first-child:checked+input[type=hidden]+label::before,.icheck-default>input:first-child:checked+label::before{background-color:#e6e6e6;border-color:#adadad}.icheck-default>input:first-child:checked+input[type=hidden]+label::after,.icheck-default>input:first-child:checked+label::after{border-bottom-color:#333;border-right-color:#333}.icheck-primary>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-primary>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#2e6da4}.icheck-primary>input:first-child:checked+input[type=hidden]+label::before,.icheck-primary>input:first-child:checked+label::before{background-color:#337ab7;border-color:#2e6da4}.icheck-success>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-success>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#4cae4c}.icheck-success>input:first-child:checked+input[type=hidden]+label::before,.icheck-success>input:first-child:checked+label::before{background-color:#5cb85c;border-color:#4cae4c}.icheck-info>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-info>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#46b8da}.icheck-info>input:first-child:checked+input[type=hidden]+label::before,.icheck-info>input:first-child:checked+label::before{background-color:#5bc0de;border-color:#46b8da}.icheck-warning>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-warning>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#eea236}.icheck-warning>input:first-child:checked+input[type=hidden]+label::before,.icheck-warning>input:first-child:checked+label::before{background-color:#f0ad4e;border-color:#eea236}.icheck-danger>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-danger>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#d43f3a}.icheck-danger>input:first-child:checked+input[type=hidden]+label::before,.icheck-danger>input:first-child:checked+label::before{background-color:#d9534f;border-color:#d43f3a}.icheck-turquoise>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-turquoise>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#1abc9c}.icheck-turquoise>input:first-child:checked+input[type=hidden]+label::before,.icheck-turquoise>input:first-child:checked+label::before{background-color:#1abc9c;border-color:#1abc9c}.icheck-emerland>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-emerland>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#2ecc71}.icheck-emerland>input:first-child:checked+input[type=hidden]+label::before,.icheck-emerland>input:first-child:checked+label::before{background-color:#2ecc71;border-color:#2ecc71}.icheck-peterriver>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-peterriver>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#3498db}.icheck-peterriver>input:first-child:checked+input[type=hidden]+label::before,.icheck-peterriver>input:first-child:checked+label::before{background-color:#3498db;border-color:#3498db}.icheck-amethyst>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-amethyst>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#9b59b6}.icheck-amethyst>input:first-child:checked+input[type=hidden]+label::before,.icheck-amethyst>input:first-child:checked+label::before{background-color:#9b59b6;border-color:#9b59b6}.icheck-wetasphalt>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-wetasphalt>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#34495e}.icheck-wetasphalt>input:first-child:checked+input[type=hidden]+label::before,.icheck-wetasphalt>input:first-child:checked+label::before{background-color:#34495e;border-color:#34495e}.icheck-greensea>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-greensea>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#16a085}.icheck-greensea>input:first-child:checked+input[type=hidden]+label::before,.icheck-greensea>input:first-child:checked+label::before{background-color:#16a085;border-color:#16a085}.icheck-nephritis>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-nephritis>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#27ae60}.icheck-nephritis>input:first-child:checked+input[type=hidden]+label::before,.icheck-nephritis>input:first-child:checked+label::before{background-color:#27ae60;border-color:#27ae60}.icheck-belizehole>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-belizehole>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#2980b9}.icheck-belizehole>input:first-child:checked+input[type=hidden]+label::before,.icheck-belizehole>input:first-child:checked+label::before{background-color:#2980b9;border-color:#2980b9}.icheck-wisteria>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-wisteria>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#8e44ad}.icheck-wisteria>input:first-child:checked+input[type=hidden]+label::before,.icheck-wisteria>input:first-child:checked+label::before{background-color:#8e44ad;border-color:#8e44ad}.icheck-midnightblue>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-midnightblue>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#2c3e50}.icheck-midnightblue>input:first-child:checked+input[type=hidden]+label::before,.icheck-midnightblue>input:first-child:checked+label::before{background-color:#2c3e50;border-color:#2c3e50}.icheck-sunflower>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-sunflower>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#f1c40f}.icheck-sunflower>input:first-child:checked+input[type=hidden]+label::before,.icheck-sunflower>input:first-child:checked+label::before{background-color:#f1c40f;border-color:#f1c40f}.icheck-carrot>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-carrot>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#e67e22}.icheck-carrot>input:first-child:checked+input[type=hidden]+label::before,.icheck-carrot>input:first-child:checked+label::before{background-color:#e67e22;border-color:#e67e22}.icheck-alizarin>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-alizarin>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#e74c3c}.icheck-alizarin>input:first-child:checked+input[type=hidden]+label::before,.icheck-alizarin>input:first-child:checked+label::before{background-color:#e74c3c;border-color:#e74c3c}.icheck-clouds>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-clouds>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#ecf0f1}.icheck-clouds>input:first-child:checked+input[type=hidden]+label::before,.icheck-clouds>input:first-child:checked+label::before{background-color:#ecf0f1;border-color:#ecf0f1}.icheck-clouds>input:first-child:checked+input[type=hidden]+label::after,.icheck-clouds>input:first-child:checked+label::after{border-bottom-color:#95a5a6;border-right-color:#95a5a6}.icheck-concrete>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-concrete>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#95a5a6}.icheck-concrete>input:first-child:checked+input[type=hidden]+label::before,.icheck-concrete>input:first-child:checked+label::before{background-color:#95a5a6;border-color:#95a5a6}.icheck-orange>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-orange>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#f39c12}.icheck-orange>input:first-child:checked+input[type=hidden]+label::before,.icheck-orange>input:first-child:checked+label::before{background-color:#f39c12;border-color:#f39c12}.icheck-pumpkin>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-pumpkin>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#d35400}.icheck-pumpkin>input:first-child:checked+input[type=hidden]+label::before,.icheck-pumpkin>input:first-child:checked+label::before{background-color:#d35400;border-color:#d35400}.icheck-pomegranate>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-pomegranate>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#c0392b}.icheck-pomegranate>input:first-child:checked+input[type=hidden]+label::before,.icheck-pomegranate>input:first-child:checked+label::before{background-color:#c0392b;border-color:#c0392b}.icheck-silver>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-silver>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#bdc3c7}.icheck-silver>input:first-child:checked+input[type=hidden]+label::before,.icheck-silver>input:first-child:checked+label::before{background-color:#bdc3c7;border-color:#bdc3c7}.icheck-asbestos>input:first-child:not(:checked):not(:disabled):hover+input[type=hidden]+label::before,.icheck-asbestos>input:first-child:not(:checked):not(:disabled):hover+label::before{border-color:#7f8c8d}.icheck-asbestos>input:first-child:checked+input[type=hidden]+label::before,.icheck-asbestos>input:first-child:checked+label::before{background-color:#7f8c8d;border-color:#7f8c8d} \ No newline at end of file From 6deb2e794a5ec90ae0ed403da327904b0c5910fb Mon Sep 17 00:00:00 2001 From: Adam Warner Date: Mon, 6 Jul 2026 13:12:49 +0100 Subject: [PATCH 04/12] Swap remaining jQuery plugins for Bootstrap 5-compatible versions - DataTables: replace the combined BS3 download-builder bundles with the official core + Bootstrap 5 styling-adapter package pairs (datatables.net(-buttons/-select) + datatables.net-bs5/-buttons-bs5/ -select-bs5), loaded core-then-adapter. - bootstrap-select -> Tom Select: bootstrap-select has no Bootstrap 5 build. Add utils.createGroupSelect(), a small wrapper around Tom Select that recreates bootstrap-select's actionsBox (Select all/ Select none) via a couple of buttons injected into the dropdown, and use it for all four "assign to group(s)" multi-selects (groups, groups/clients, groups/domains, groups/lists). Two behavioral fixes were needed to match the old widget: `hideSelected: false` (Tom Select refuses to open its dropdown once every option is already selected, which made the actions box unreachable) and `dropdownParent: "body"` (otherwise the dropdown is clipped by the surrounding .table-responsive/.card ancestors' overflow, same reason bootstrap-select was configured with container: "body"). - bootstrap-toggle -> bootstrap5-toggle: drop-in replacement, same $.fn.bootstrapToggle() API and onstyle/offstyle option names (all call sites already used Bootstrap 5-valid color names). - select2: bump to 4.1.0 and add the select2-bootstrap-5-theme package for correct Bootstrap 5 styling; wire theme: "bootstrap-5" into both call sites. - Remove now-dead bootstrap-select cleanup code (the "$('body > .bootstrap-select.dropdown').remove()" DataTables drawCallback lines across 8 files) and dead icheck/bootstrap-select CSS in pi-hole.css. Also fixed a Phase 1 regression surfaced by this pass: utils.js's loadingOverlay() still targeted the old ".wrapper" class instead of ".app-wrapper", throwing whenever a settings page triggered the Save & Apply overlay. Verified against a live container: groups/clients' per-row Tom Select multiselect (open dropdown, Select all/none, Apply, restore-on-cancel), bootstrap5-toggle switches on groups, select2 filters on the query log, and DataTables' select/export button row on groups/lists all work with zero console errors. Settings pages' Save & Apply overlay confirmed fixed and no longer throwing. Co-Authored-By: Claude Sonnet 5 Signed-off-by: Adam Warner --- groups-clients.lp | 6 +- groups-domains.lp | 8 +- groups-lists.lp | 6 +- groups.lp | 4 +- package-lock.json | 171 ++++--- package.json | 16 +- queries.lp | 2 +- scripts/js/groups-clients.js | 51 +- scripts/js/groups-common.js | 19 +- scripts/js/groups-domains.js | 50 +- scripts/js/groups-lists.js | 50 +- scripts/js/messages.js | 3 - scripts/js/network.js | 2 - scripts/js/queries.js | 1 + scripts/js/settings-api.js | 3 - scripts/js/settings-dhcp.js | 3 - scripts/js/settings-dns-records.js | 3 - scripts/js/utils.js | 61 ++- scripts/lua/header.lp | 11 +- scripts/lua/header_authenticated.lp | 9 +- settings-all.lp | 2 +- settings-api.lp | 2 +- settings-dhcp.lp | 2 +- settings-dns.lp | 2 +- settings-dnsrecords.lp | 2 +- settings-privacy.lp | 2 +- settings-system.lp | 2 +- settings-teleporter.lp | 2 +- style/pi-hole.css | 22 +- .../bootstrap-select/bootstrap-select.min.css | 6 - .../bootstrap-select/bootstrap-select.min.js | 9 - .../bootstrap-select.min.js.map | 1 - .../bootstrap-toggle/bootstrap-toggle.min.css | 28 -- .../bootstrap-toggle/bootstrap-toggle.min.js | 9 - .../bootstrap-toggle.min.js.map | 1 - .../bootstrap5-toggle.jquery.min.js | 14 + .../bootstrap5-toggle.jquery.min.js.map | 1 + .../bootstrap5-toggle.min.css | 2 + .../bootstrap5-toggle.min.css.map | 1 + .../buttons.bootstrap5.min.css | 1 + .../buttons.bootstrap5.min.js | 4 + .../dataTables.buttons.min.js | 4 + .../datatables.buttons.min.css | 6 - .../datatables.buttons.min.js | 51 -- .../dataTables.select.min.js | 4 + .../datatables.select.min.css | 6 - .../datatables.select.min.js | 45 -- .../select.bootstrap5.min.css | 1 + .../select.bootstrap5.min.js | 4 + .../datatables/dataTables.bootstrap5.min.css | 5 + .../datatables/dataTables.bootstrap5.min.js | 4 + vendor/datatables/dataTables.min.js | 4 + vendor/datatables/datatables.min.css | 15 - vendor/datatables/datatables.min.js | 208 -------- .../select2/select2-bootstrap-5-theme.min.css | 3 + vendor/select2/select2.min.css | 2 +- vendor/select2/select2.min.js | 4 +- .../tom-select/tom-select.bootstrap5.min.css | 2 + .../tom-select.bootstrap5.min.css.map | 1 + vendor/tom-select/tom-select.complete.min.js | 454 ++++++++++++++++++ .../tom-select/tom-select.complete.min.js.map | 1 + 61 files changed, 777 insertions(+), 641 deletions(-) delete mode 100644 vendor/bootstrap-select/bootstrap-select.min.css delete mode 100644 vendor/bootstrap-select/bootstrap-select.min.js delete mode 100644 vendor/bootstrap-select/bootstrap-select.min.js.map delete mode 100644 vendor/bootstrap-toggle/bootstrap-toggle.min.css delete mode 100644 vendor/bootstrap-toggle/bootstrap-toggle.min.js delete mode 100644 vendor/bootstrap-toggle/bootstrap-toggle.min.js.map create mode 100644 vendor/bootstrap5-toggle/bootstrap5-toggle.jquery.min.js create mode 100644 vendor/bootstrap5-toggle/bootstrap5-toggle.jquery.min.js.map create mode 100644 vendor/bootstrap5-toggle/bootstrap5-toggle.min.css create mode 100644 vendor/bootstrap5-toggle/bootstrap5-toggle.min.css.map create mode 100644 vendor/datatables-buttons/buttons.bootstrap5.min.css create mode 100644 vendor/datatables-buttons/buttons.bootstrap5.min.js create mode 100644 vendor/datatables-buttons/dataTables.buttons.min.js delete mode 100644 vendor/datatables-buttons/datatables.buttons.min.css delete mode 100644 vendor/datatables-buttons/datatables.buttons.min.js create mode 100644 vendor/datatables-select/dataTables.select.min.js delete mode 100644 vendor/datatables-select/datatables.select.min.css delete mode 100644 vendor/datatables-select/datatables.select.min.js create mode 100644 vendor/datatables-select/select.bootstrap5.min.css create mode 100644 vendor/datatables-select/select.bootstrap5.min.js create mode 100644 vendor/datatables/dataTables.bootstrap5.min.css create mode 100644 vendor/datatables/dataTables.bootstrap5.min.js create mode 100644 vendor/datatables/dataTables.min.js delete mode 100644 vendor/datatables/datatables.min.css delete mode 100644 vendor/datatables/datatables.min.js create mode 100644 vendor/select2/select2-bootstrap-5-theme.min.css create mode 100644 vendor/tom-select/tom-select.bootstrap5.min.css create mode 100644 vendor/tom-select/tom-select.bootstrap5.min.css.map create mode 100644 vendor/tom-select/tom-select.complete.min.js create mode 100644 vendor/tom-select/tom-select.complete.min.js.map diff --git a/groups-clients.lp b/groups-clients.lp index 770f4016e3..19c910b64c 100644 --- a/groups-clients.lp +++ b/groups-clients.lp @@ -40,7 +40,7 @@ mg.include('scripts/lua/header_authenticated.lp','r')

    -
    +
    @@ -95,8 +95,8 @@ mg.include('scripts/lua/header_authenticated.lp','r')
    - - + + diff --git a/groups-domains.lp b/groups-domains.lp index c1b89969a5..d20736083c 100644 --- a/groups-domains.lp +++ b/groups-domains.lp @@ -52,7 +52,7 @@ mg.include('scripts/lua/header_authenticated.lp','r')
    -
    +
    @@ -85,7 +85,7 @@ mg.include('scripts/lua/header_authenticated.lp','r')
    -
    +
    @@ -156,8 +156,8 @@ mg.include('scripts/lua/header_authenticated.lp','r')
    - - + + diff --git a/groups-lists.lp b/groups-lists.lp index bb4cd3a8ce..2afa8f8fbc 100644 --- a/groups-lists.lp +++ b/groups-lists.lp @@ -38,7 +38,7 @@ mg.include('scripts/lua/header_authenticated.lp','r')
    -
    +
    @@ -122,8 +122,8 @@ mg.include('scripts/lua/header_authenticated.lp','r')
    - - + + diff --git a/groups.lp b/groups.lp index 3ffd908b10..d6ef8b9735 100644 --- a/groups.lp +++ b/groups.lp @@ -79,8 +79,8 @@ mg.include('scripts/lua/header_authenticated.lp','r')
    - - + + diff --git a/package-lock.json b/package-lock.json index ee3a502b8b..fb8401270e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,16 +14,18 @@ "animate.css": "4.1.1", "bootstrap": "5.3.8", "bootstrap-notify": "3.1.3", - "bootstrap-select": "1.13.18", - "bootstrap-toggle": "2.2.2", + "bootstrap5-toggle": "5.4.1", "bstreeview": "1.2.0", "chart.js": "4.5.1", "chartjs-adapter-moment": "1.0.1", "chartjs-plugin-deferred": "2.0.0", "chartjs-plugin-zoom": "2.2.0", - "datatables.net-bs": "1.10.21", - "datatables.net-buttons-bs": "1.7.1", - "datatables.net-select-bs": "1.3.1", + "datatables.net": "2.3.8", + "datatables.net-bs5": "2.3.8", + "datatables.net-buttons": "3.2.6", + "datatables.net-buttons-bs5": "3.2.6", + "datatables.net-select": "3.1.3", + "datatables.net-select-bs5": "3.1.3", "daterangepicker": "3.1.0", "hammerjs": "2.0.8", "jquery": "3.7.1", @@ -32,7 +34,9 @@ "myclabs.jquery.confirm": "2.7.0", "nprogress": "0.2.0", "qrious": "4.0.2", - "select2": "4.0.13" + "select2": "4.1.0", + "select2-bootstrap-5-theme": "1.3.0", + "tom-select": "2.6.1" }, "devDependencies": { "autoprefixer": "^10.5.0", @@ -857,6 +861,21 @@ "node": ">= 8" } }, + "node_modules/@orchidjs/sifter": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@orchidjs/sifter/-/sifter-1.1.0.tgz", + "integrity": "sha512-mYwHCfr736cIWWdhhSZvDbf90AKt2xyrJspKFC3qyIJG1LtrJeJunYEqCGG4Aq2ijENbc4WkOjszcvNaIAS/pQ==", + "license": "Apache-2.0", + "dependencies": { + "@orchidjs/unicode-variants": "^1.1.2" + } + }, + "node_modules/@orchidjs/unicode-variants": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@orchidjs/unicode-variants/-/unicode-variants-1.1.2.tgz", + "integrity": "sha512-5DobW1CHgnBROOEpFlEXytED5OosEWESFvg/VYmH0143oXcijYTprRYJTs+55HzGM4IqxiLFSuqEzu9mPNwVsA==", + "license": "Apache-2.0" + }, "node_modules/@pkgr/core": { "version": "0.2.9", "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.2.9.tgz", @@ -1943,21 +1962,37 @@ "integrity": "sha512-cnTactFVG8aHri03+RmuZ5sl9VcA+jTTM/mTdEOQN+R1V9u4YBu8Ca+Pf6NGeVfieGv0Z6CxK8FzlWg59omzyg==", "license": "MIT" }, - "node_modules/bootstrap-select": { - "version": "1.13.18", - "resolved": "https://registry.npmjs.org/bootstrap-select/-/bootstrap-select-1.13.18.tgz", - "integrity": "sha512-V1IzK4rxBq5FrJtkzSH6RmFLFBsjx50byFbfAf8jYyXROWs7ZpprGjdHeoyq2HSsHyjJhMMwjsQhRoYAfxCGow==", + "node_modules/bootstrap5-toggle": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/bootstrap5-toggle/-/bootstrap5-toggle-5.4.1.tgz", + "integrity": "sha512-+Em3YLPINxGeXxMbgIG0Q7H4VfPSnnLfr9Ocr4uJGzaX1tXNUNRZb/yDZ10kA2IM2Y1g7bYRinZEOObFkNSE9g==", "license": "MIT", + "engines": { + "node": ">=22 <25", + "npm": ">=10" + }, + "funding": { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/palcarazm" + }, + "optionalDependencies": { + "jquery": "^4.0.0" + }, "peerDependencies": { - "bootstrap": ">=3.0.0", - "jquery": "1.9.1 - 3" + "bootstrap": ">=5 <6" + }, + "peerDependenciesMeta": { + "bootstrap": { + "optional": false + } } }, - "node_modules/bootstrap-toggle": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/bootstrap-toggle/-/bootstrap-toggle-2.2.2.tgz", - "integrity": "sha512-AkYD/i3NGCEksIb/PmmUrrxpa0DYi7Si30e9Ldhou2t1HTd9npoXUsxJJjFPvlV7iLUptlysWTcYD7i3DKV6qg==", - "license": "MIT" + "node_modules/bootstrap5-toggle/node_modules/jquery": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-4.0.0.tgz", + "integrity": "sha512-TXCHVR3Lb6TZdtw1l3RTLf8RBWVGexdxL6AC8/e0xZKEpBflBsjh9/8LXw+dkNFuOyW9B7iB3O1sP7hS0Kiacg==", + "license": "MIT", + "optional": true }, "node_modules/brace-expansion": { "version": "5.0.2", @@ -2498,72 +2533,63 @@ } }, "node_modules/datatables.net": { - "version": "1.13.11", - "resolved": "https://registry.npmjs.org/datatables.net/-/datatables.net-1.13.11.tgz", - "integrity": "sha512-AE6RkMXziRaqzPcu/pl3SJXeRa6fmXQG/fVjuRESujvkzqDCYEeKTTpPMuVJSGYJpPi32WGSphVNNY1G4nSN/g==", - "license": "MIT", - "dependencies": { - "jquery": "1.8 - 4" - } - }, - "node_modules/datatables.net-bs": { - "version": "1.10.21", - "resolved": "https://registry.npmjs.org/datatables.net-bs/-/datatables.net-bs-1.10.21.tgz", - "integrity": "sha512-4mpesFXNEkLlQET3IDLclLz95Xit4Kp/jHcOM2X0nc/ijDfO3qJk3ehZ+NSEAkXZDge6ZtY5Zxq2O90ISiIjwQ==", + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/datatables.net/-/datatables.net-2.3.8.tgz", + "integrity": "sha512-uhViowhlDlheAuo5a8TrkQqADsjrtGeOyvrigvr4t0+K3MyAWqClORXWAYIcN9VLX6iIX0C8O9gwJNd01hITRg==", "license": "MIT", "dependencies": { - "datatables.net": "1.10.21", "jquery": ">=1.7" } }, - "node_modules/datatables.net-bs/node_modules/datatables.net": { - "version": "1.10.21", - "resolved": "https://registry.npmjs.org/datatables.net/-/datatables.net-1.10.21.tgz", - "integrity": "sha512-/bSZtxmf3GTpYcvEmwZ8q26I1yhSx8qklR2B+s1K8+/51UW/zc2zTYwJMqr/Z+iCYixAc00ildj4g2x0Qamolw==", + "node_modules/datatables.net-bs5": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/datatables.net-bs5/-/datatables.net-bs5-2.3.8.tgz", + "integrity": "sha512-TbFH99QSWm93Kn3teHLFKeyOqYbaiddlHvRFdXUwAvh/fjTMhACWmHG+I43ss8d23OEFHV0WIbN4lpPusZm5zw==", "license": "MIT", "dependencies": { + "datatables.net": "2.3.8", "jquery": ">=1.7" } }, "node_modules/datatables.net-buttons": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/datatables.net-buttons/-/datatables.net-buttons-1.7.1.tgz", - "integrity": "sha512-D2OxZeR18jhSx+l0xcfAJzfUH7l3LHCu0e606fV7+v3hMhphOfljjZYLaiRmGiR9lqO/f5xE/w2a+OtG/QMavw==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/datatables.net-buttons/-/datatables.net-buttons-3.2.6.tgz", + "integrity": "sha512-rLqkB3xLIAYwVLt+lUSxybo/1WqveTAxhQm6wj6yvXlJiWq+oJ8MKW6H1q90QrXbNp0fGngnfD0cmpMZnNnnNw==", "license": "MIT", "dependencies": { - "datatables.net": "^1.10.15", + "datatables.net": "^2", "jquery": ">=1.7" } }, - "node_modules/datatables.net-buttons-bs": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/datatables.net-buttons-bs/-/datatables.net-buttons-bs-1.7.1.tgz", - "integrity": "sha512-ulqfr9UvazGcuqfjNjPSlecCZ9CUzLVM7+7VmfdJgmhF5pPFfYyrUhcVIRgeDDcSlMSwu0QeJN/AeFoR+A92QQ==", + "node_modules/datatables.net-buttons-bs5": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/datatables.net-buttons-bs5/-/datatables.net-buttons-bs5-3.2.6.tgz", + "integrity": "sha512-RJfbaxnAys0OtcZcJL58/3aMVVKs2yQDBI8PNA0h/4mdKaJ/dVezZTFy5CYLrO1HjAGosfL0iv4sIs/BafaW7w==", "license": "MIT", "dependencies": { - "datatables.net-bs": "^1.10.15", - "datatables.net-buttons": "1.7.1", + "datatables.net-bs5": "^2", + "datatables.net-buttons": "3.2.6", "jquery": ">=1.7" } }, "node_modules/datatables.net-select": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/datatables.net-select/-/datatables.net-select-1.3.1.tgz", - "integrity": "sha512-PeVd/hlAX58QzL0+mGvxnXP7ylLtzZMeAots/uZkQi+6c/KI6JuP8LCJoEMHAsSjQM/BnG7Uw8E1YGOz1tZpQQ==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/datatables.net-select/-/datatables.net-select-3.1.3.tgz", + "integrity": "sha512-IzikFqvYshnuPZVRi/xBvPcSMBNqzhzh9VGO0DtzsOU4w5uBLN/z9dOqAEUUJk1v6qkMOnBMg5NE/35cbdhPeQ==", "license": "MIT", "dependencies": { - "datatables.net": "^1.10.15", + "datatables.net": "^2", "jquery": ">=1.7" } }, - "node_modules/datatables.net-select-bs": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/datatables.net-select-bs/-/datatables.net-select-bs-1.3.1.tgz", - "integrity": "sha512-CbZTZoBjaALftqCHWRrrlVNn2w472vXRsn5myM/wVyVkFh4S8W8QRAkP6jEkfxdmXsXiDidXg03fR5ksVEbebw==", + "node_modules/datatables.net-select-bs5": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/datatables.net-select-bs5/-/datatables.net-select-bs5-3.1.3.tgz", + "integrity": "sha512-1B/fzuEXTxXWnxOvaTiKkgUzVAYfaMLfBIlQ70NckLwQh65xKc64ptgxrd7zKwIM17SMu+uJC5wEmndooJjbhg==", "license": "MIT", "dependencies": { - "datatables.net-bs": "^1.10.15", - "datatables.net-select": "1.3.1", + "datatables.net-bs5": "^2", + "datatables.net-select": "3.1.3", "jquery": ">=1.7" } }, @@ -6272,10 +6298,22 @@ } }, "node_modules/select2": { - "version": "4.0.13", - "resolved": "https://registry.npmjs.org/select2/-/select2-4.0.13.tgz", - "integrity": "sha512-1JeB87s6oN/TDxQQYCvS5EFoQyvV6eYMZZ0AeA4tdFDYWN3BAGZ8npr17UBFddU0lgAt3H0yjX3X6/ekOj1yjw==", - "license": "MIT" + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/select2/-/select2-4.1.0.tgz", + "integrity": "sha512-i9KalWOP4/LRRGc8+rj2krNm0ZqP14cV+j1TRCEBSsOhCPkKH8rYZ2MCRXcgvqIqN+llqGci0hj9aVkCMvL0+g==", + "license": "MIT", + "engines": { + "node": ">=24" + } + }, + "node_modules/select2-bootstrap-5-theme": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/select2-bootstrap-5-theme/-/select2-bootstrap-5-theme-1.3.0.tgz", + "integrity": "sha512-uEJDruP4tmwyKcs3V0oP7CIsyC45PGF5ddo8unwTp8OucJ1PSuTOBr+xbWaHTQPGnvp7N96psVQ5UBMQvFCcHA==", + "license": "MIT", + "dependencies": { + "bootstrap": "^5.1.3" + } }, "node_modules/semver": { "version": "7.7.4", @@ -6848,6 +6886,23 @@ "node": ">=8.0" } }, + "node_modules/tom-select": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/tom-select/-/tom-select-2.6.1.tgz", + "integrity": "sha512-d/1kngVOQTGcI/2pVDfDLYjtjUgSSd3fSgkYUpi0y+yRtQQu2kzljj3aUdqMfqc45cjPvDEpfDt/hSX4awDFTg==", + "license": "Apache-2.0", + "dependencies": { + "@orchidjs/sifter": "^1.1.0", + "@orchidjs/unicode-variants": "^1.1.2" + }, + "engines": { + "node": "*" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/tom-select" + } + }, "node_modules/ts-api-utils": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.4.0.tgz", diff --git a/package.json b/package.json index 65ac50d96e..1e7d4dfc5d 100644 --- a/package.json +++ b/package.json @@ -30,16 +30,18 @@ "animate.css": "4.1.1", "bootstrap": "5.3.8", "bootstrap-notify": "3.1.3", - "bootstrap-select": "1.13.18", - "bootstrap-toggle": "2.2.2", + "bootstrap5-toggle": "5.4.1", "bstreeview": "1.2.0", "chart.js": "4.5.1", "chartjs-adapter-moment": "1.0.1", "chartjs-plugin-deferred": "2.0.0", "chartjs-plugin-zoom": "2.2.0", - "datatables.net-bs": "1.10.21", - "datatables.net-buttons-bs": "1.7.1", - "datatables.net-select-bs": "1.3.1", + "datatables.net": "2.3.8", + "datatables.net-bs5": "2.3.8", + "datatables.net-buttons": "3.2.6", + "datatables.net-buttons-bs5": "3.2.6", + "datatables.net-select": "3.1.3", + "datatables.net-select-bs5": "3.1.3", "daterangepicker": "3.1.0", "hammerjs": "2.0.8", "jquery": "3.7.1", @@ -48,7 +50,9 @@ "myclabs.jquery.confirm": "2.7.0", "nprogress": "0.2.0", "qrious": "4.0.2", - "select2": "4.0.13" + "select2": "4.1.0", + "select2-bootstrap-5-theme": "1.3.0", + "tom-select": "2.6.1" }, "devDependencies": { "autoprefixer": "^10.5.0", diff --git a/queries.lp b/queries.lp index a19c7d7144..0580783a34 100644 --- a/queries.lp +++ b/queries.lp @@ -197,7 +197,7 @@ mg.include('scripts/lua/header_authenticated.lp','r')
    - + diff --git a/scripts/js/groups-clients.js b/scripts/js/groups-clients.js index 11981de3c2..5f0a0cb2c2 100644 --- a/scripts/js/groups-clients.js +++ b/scripts/js/groups-clients.js @@ -77,13 +77,13 @@ function reloadClientSuggestions() { $(() => { $("#btnAdd").on("click", addClient); $("#select").select2({ + theme: "bootstrap-5", tags: true, placeholder: "Select client...", allowClear: true, }); reloadClientSuggestions(); - utils.setBsSelectDefaults(); getGroups(); $("#select").on("change", () => { @@ -128,8 +128,6 @@ function initTable() { $(".datatable-bt").css("visibility", hasRows ? "visible" : "hidden"); $('button[id^="deleteClient_"]').on("click", deleteClient); - // Remove visible dropdown to prevent orphaning - $("body > .bootstrap-select.dropdown").remove(); }, rowCallback(row, data) { const dataId = utils.hexEncode(data.client); @@ -167,40 +165,23 @@ function initTable() { $("td:eq(3)", row).empty(); $("td:eq(3)", row).append( - '' + '' ); const selectEl = $("#multiselect_" + dataId, row); // Add all known groups for (const group of groups) { - const dataSub = group.enabled ? "" : 'data-subtext="(disabled)"'; + const label = group.enabled ? group.name : group.name + " (disabled)"; - selectEl.append( - $("
    - + diff --git a/settings-api.lp b/settings-api.lp index bb74efdba1..9d2081af59 100644 --- a/settings-api.lp +++ b/settings-api.lp @@ -248,7 +248,7 @@ mg.include('scripts/lua/settings_header.lp','r')
    - + diff --git a/settings-dhcp.lp b/settings-dhcp.lp index 7ff1cba279..7ca09bdbcf 100644 --- a/settings-dhcp.lp +++ b/settings-dhcp.lp @@ -258,7 +258,7 @@ mg.include('scripts/lua/settings_header.lp','r')
    - + diff --git a/settings-dns.lp b/settings-dns.lp index ef2fe85064..300ba1fa88 100644 --- a/settings-dns.lp +++ b/settings-dns.lp @@ -280,7 +280,7 @@ mg.include('scripts/lua/settings_header.lp','r')
    - + diff --git a/settings-dnsrecords.lp b/settings-dnsrecords.lp index 10dc4347a0..a089d7a2c4 100644 --- a/settings-dnsrecords.lp +++ b/settings-dnsrecords.lp @@ -105,7 +105,7 @@ mg.include('scripts/lua/settings_header.lp','r')
    - + diff --git a/settings-privacy.lp b/settings-privacy.lp index cc7e97a642..e0142bc6e1 100644 --- a/settings-privacy.lp +++ b/settings-privacy.lp @@ -104,7 +104,7 @@ mg.include('scripts/lua/settings_header.lp','r')
    - + diff --git a/settings-system.lp b/settings-system.lp index 260da15c69..0f16040706 100644 --- a/settings-system.lp +++ b/settings-system.lp @@ -265,7 +265,7 @@ mg.include('scripts/lua/settings_header.lp','r')
    - + diff --git a/settings-teleporter.lp b/settings-teleporter.lp index 1d4c90e496..d5ad9b8aac 100644 --- a/settings-teleporter.lp +++ b/settings-teleporter.lp @@ -100,7 +100,7 @@ mg.include('scripts/lua/settings_header.lp','r')
    - + diff --git a/style/pi-hole.css b/style/pi-hole.css index fddb912e0a..e401e34c2d 100644 --- a/style/pi-hole.css +++ b/style/pi-hole.css @@ -336,15 +336,6 @@ td.lookatme { cursor: pointer; } -.bootstrap-select.bs-container.align-right { - left: unset !important; - right: 10px; -} - -.input-group-addon { - padding: 0 12px; -} - .user-panel { display: flex; align-items: center; @@ -421,6 +412,19 @@ tfoot.add-new-item > tr > th { max-height: 400px; } +/* Tom Select "Select all / Select none" actions, injected above the + options list to replace bootstrap-select's actionsBox feature */ +.ts-actions-box { + display: flex; + gap: 4px; + padding: 4px 8px; + border-bottom: 1px solid var(--bs-border-color); +} + +.ts-actions-box .btn { + flex: 1 1 auto; +} + .sidebar-menu li > a > .nav-arrow.fa-angle-left { height: 1em; } diff --git a/vendor/bootstrap-select/bootstrap-select.min.css b/vendor/bootstrap-select/bootstrap-select.min.css deleted file mode 100644 index 8d0f049c8e..0000000000 --- a/vendor/bootstrap-select/bootstrap-select.min.css +++ /dev/null @@ -1,6 +0,0 @@ -/*! - * Bootstrap-select v1.13.18 (https://developer.snapappointments.com/bootstrap-select) - * - * Copyright 2012-2020 SnapAppointments, LLC - * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) - */@-webkit-keyframes bs-notify-fadeOut{0%{opacity:.9}100%{opacity:0}}@-o-keyframes bs-notify-fadeOut{0%{opacity:.9}100%{opacity:0}}@keyframes bs-notify-fadeOut{0%{opacity:.9}100%{opacity:0}}.bootstrap-select>select.bs-select-hidden,select.bs-select-hidden,select.selectpicker{display:none!important}.bootstrap-select{width:220px\0;vertical-align:middle}.bootstrap-select>.dropdown-toggle{position:relative;width:100%;text-align:right;white-space:nowrap;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between}.bootstrap-select>.dropdown-toggle:after{margin-top:-1px}.bootstrap-select>.dropdown-toggle.bs-placeholder,.bootstrap-select>.dropdown-toggle.bs-placeholder:active,.bootstrap-select>.dropdown-toggle.bs-placeholder:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder:hover{color:#999}.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-danger,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-danger:active,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-danger:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-danger:hover,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-dark,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-dark:active,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-dark:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-dark:hover,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-info,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-info:active,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-info:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-info:hover,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-primary,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-primary:active,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-primary:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-primary:hover,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-secondary,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-secondary:active,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-secondary:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-secondary:hover,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-success,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-success:active,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-success:focus,.bootstrap-select>.dropdown-toggle.bs-placeholder.btn-success:hover{color:rgba(255,255,255,.5)}.bootstrap-select>select{position:absolute!important;bottom:0;left:50%;display:block!important;width:.5px!important;height:100%!important;padding:0!important;opacity:0!important;border:none;z-index:0!important}.bootstrap-select>select.mobile-device{top:0;left:0;display:block!important;width:100%!important;z-index:2!important}.bootstrap-select.is-invalid .dropdown-toggle,.error .bootstrap-select .dropdown-toggle,.has-error .bootstrap-select .dropdown-toggle,.was-validated .bootstrap-select select:invalid+.dropdown-toggle{border-color:#b94a48}.bootstrap-select.is-valid .dropdown-toggle,.was-validated .bootstrap-select select:valid+.dropdown-toggle{border-color:#28a745}.bootstrap-select.fit-width{width:auto!important}.bootstrap-select:not([class*=col-]):not([class*=form-control]):not(.input-group-btn){width:220px}.bootstrap-select .dropdown-toggle:focus,.bootstrap-select>select.mobile-device:focus+.dropdown-toggle{outline:thin dotted #333!important;outline:5px auto -webkit-focus-ring-color!important;outline-offset:-2px}.bootstrap-select.form-control{margin-bottom:0;padding:0;border:none;height:auto}:not(.input-group)>.bootstrap-select.form-control:not([class*=col-]){width:100%}.bootstrap-select.form-control.input-group-btn{float:none;z-index:auto}.form-inline .bootstrap-select,.form-inline .bootstrap-select.form-control:not([class*=col-]){width:auto}.bootstrap-select:not(.input-group-btn),.bootstrap-select[class*=col-]{float:none;display:inline-block;margin-left:0}.bootstrap-select.dropdown-menu-right,.bootstrap-select[class*=col-].dropdown-menu-right,.row .bootstrap-select[class*=col-].dropdown-menu-right{float:right}.form-group .bootstrap-select,.form-horizontal .bootstrap-select,.form-inline .bootstrap-select{margin-bottom:0}.form-group-lg .bootstrap-select.form-control,.form-group-sm .bootstrap-select.form-control{padding:0}.form-group-lg .bootstrap-select.form-control .dropdown-toggle,.form-group-sm .bootstrap-select.form-control .dropdown-toggle{height:100%;font-size:inherit;line-height:inherit;border-radius:inherit}.bootstrap-select.form-control-lg .dropdown-toggle,.bootstrap-select.form-control-sm .dropdown-toggle{font-size:inherit;line-height:inherit;border-radius:inherit}.bootstrap-select.form-control-sm .dropdown-toggle{padding:.25rem .5rem}.bootstrap-select.form-control-lg .dropdown-toggle{padding:.5rem 1rem}.form-inline .bootstrap-select .form-control{width:100%}.bootstrap-select.disabled,.bootstrap-select>.disabled{cursor:not-allowed}.bootstrap-select.disabled:focus,.bootstrap-select>.disabled:focus{outline:0!important}.bootstrap-select.bs-container{position:absolute;top:0;left:0;height:0!important;padding:0!important}.bootstrap-select.bs-container .dropdown-menu{z-index:1060}.bootstrap-select .dropdown-toggle .filter-option{position:static;top:0;left:0;float:left;height:100%;width:100%;text-align:left;overflow:hidden;-webkit-box-flex:0;-webkit-flex:0 1 auto;-ms-flex:0 1 auto;flex:0 1 auto}.bs3.bootstrap-select .dropdown-toggle .filter-option{padding-right:inherit}.input-group .bs3-has-addon.bootstrap-select .dropdown-toggle .filter-option{position:absolute;padding-top:inherit;padding-bottom:inherit;padding-left:inherit;float:none}.input-group .bs3-has-addon.bootstrap-select .dropdown-toggle .filter-option .filter-option-inner{padding-right:inherit}.bootstrap-select .dropdown-toggle .filter-option-inner-inner{overflow:hidden}.bootstrap-select .dropdown-toggle .filter-expand{width:0!important;float:left;opacity:0!important;overflow:hidden}.bootstrap-select .dropdown-toggle .caret{position:absolute;top:50%;right:12px;margin-top:-2px;vertical-align:middle}.input-group .bootstrap-select.form-control .dropdown-toggle{border-radius:inherit}.bootstrap-select[class*=col-] .dropdown-toggle{width:100%}.bootstrap-select .dropdown-menu{min-width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bootstrap-select .dropdown-menu>.inner:focus{outline:0!important}.bootstrap-select .dropdown-menu.inner{position:static;float:none;border:0;padding:0;margin:0;border-radius:0;-webkit-box-shadow:none;box-shadow:none}.bootstrap-select .dropdown-menu li{position:relative}.bootstrap-select .dropdown-menu li.active small{color:rgba(255,255,255,.5)!important}.bootstrap-select .dropdown-menu li.disabled a{cursor:not-allowed}.bootstrap-select .dropdown-menu li a{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.bootstrap-select .dropdown-menu li a.opt{position:relative;padding-left:2.25em}.bootstrap-select .dropdown-menu li a span.check-mark{display:none}.bootstrap-select .dropdown-menu li a span.text{display:inline-block}.bootstrap-select .dropdown-menu li small{padding-left:.5em}.bootstrap-select .dropdown-menu .notify{position:absolute;bottom:5px;width:96%;margin:0 2%;min-height:26px;padding:3px 5px;background:#f5f5f5;border:1px solid #e3e3e3;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05);pointer-events:none;opacity:.9;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bootstrap-select .dropdown-menu .notify.fadeOut{-webkit-animation:.3s linear 750ms forwards bs-notify-fadeOut;-o-animation:.3s linear 750ms forwards bs-notify-fadeOut;animation:.3s linear 750ms forwards bs-notify-fadeOut}.bootstrap-select .no-results{padding:3px;background:#f5f5f5;margin:0 5px;white-space:nowrap}.bootstrap-select.fit-width .dropdown-toggle .filter-option{position:static;display:inline;padding:0}.bootstrap-select.fit-width .dropdown-toggle .filter-option-inner,.bootstrap-select.fit-width .dropdown-toggle .filter-option-inner-inner{display:inline}.bootstrap-select.fit-width .dropdown-toggle .bs-caret:before{content:'\00a0'}.bootstrap-select.fit-width .dropdown-toggle .caret{position:static;top:auto;margin-top:-1px}.bootstrap-select.show-tick .dropdown-menu .selected span.check-mark{position:absolute;display:inline-block;right:15px;top:5px}.bootstrap-select.show-tick .dropdown-menu li a span.text{margin-right:34px}.bootstrap-select .bs-ok-default:after{content:'';display:block;width:.5em;height:1em;border-style:solid;border-width:0 .26em .26em 0;-webkit-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}.bootstrap-select.show-menu-arrow.open>.dropdown-toggle,.bootstrap-select.show-menu-arrow.show>.dropdown-toggle{z-index:1061}.bootstrap-select.show-menu-arrow .dropdown-toggle .filter-option:before{content:'';border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid rgba(204,204,204,.2);position:absolute;bottom:-4px;left:9px;display:none}.bootstrap-select.show-menu-arrow .dropdown-toggle .filter-option:after{content:'';border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #fff;position:absolute;bottom:-4px;left:10px;display:none}.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle .filter-option:before{bottom:auto;top:-4px;border-top:7px solid rgba(204,204,204,.2);border-bottom:0}.bootstrap-select.show-menu-arrow.dropup .dropdown-toggle .filter-option:after{bottom:auto;top:-4px;border-top:6px solid #fff;border-bottom:0}.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle .filter-option:before{right:12px;left:auto}.bootstrap-select.show-menu-arrow.pull-right .dropdown-toggle .filter-option:after{right:13px;left:auto}.bootstrap-select.show-menu-arrow.open>.dropdown-toggle .filter-option:after,.bootstrap-select.show-menu-arrow.open>.dropdown-toggle .filter-option:before,.bootstrap-select.show-menu-arrow.show>.dropdown-toggle .filter-option:after,.bootstrap-select.show-menu-arrow.show>.dropdown-toggle .filter-option:before{display:block}.bs-actionsbox,.bs-donebutton,.bs-searchbox{padding:4px 8px}.bs-actionsbox{width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bs-actionsbox .btn-group button{width:50%}.bs-donebutton{float:left;width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bs-donebutton .btn-group button{width:100%}.bs-searchbox+.bs-actionsbox{padding:0 8px 4px}.bs-searchbox .form-control{margin-bottom:0;width:100%;float:none} \ No newline at end of file diff --git a/vendor/bootstrap-select/bootstrap-select.min.js b/vendor/bootstrap-select/bootstrap-select.min.js deleted file mode 100644 index 2b57230038..0000000000 --- a/vendor/bootstrap-select/bootstrap-select.min.js +++ /dev/null @@ -1,9 +0,0 @@ -/*! - * Bootstrap-select v1.13.18 (https://developer.snapappointments.com/bootstrap-select) - * - * Copyright 2012-2020 SnapAppointments, LLC - * Licensed under MIT (https://github.com/snapappointments/bootstrap-select/blob/master/LICENSE) - */ - -!function(e,t){void 0===e&&void 0!==window&&(e=window),"function"==typeof define&&define.amd?define(["jquery"],function(e){return t(e)}):"object"==typeof module&&module.exports?module.exports=t(require("jquery")):t(e.jQuery)}(this,function(e){!function(P){"use strict";var d=["sanitize","whiteList","sanitizeFn"],r=["background","cite","href","itemtype","longdesc","poster","src","xlink:href"],e={"*":["class","dir","id","lang","role","tabindex","style",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]},l=/^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi,a=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[a-z0-9+/]+=*$/i;function v(e,t){var i=e.nodeName.toLowerCase();if(-1!==P.inArray(i,t))return-1===P.inArray(i,r)||Boolean(e.nodeValue.match(l)||e.nodeValue.match(a));for(var s=P(t).filter(function(e,t){return t instanceof RegExp}),n=0,o=s.length;n]+>/g,"")),s&&(a=w(a)),a=a.toUpperCase(),o="contains"===i?0<=a.indexOf(t):a.startsWith(t)))break}return o}function N(e){return parseInt(e,10)||0}P.fn.triggerNative=function(e){var t,i=this[0];i.dispatchEvent?(u?t=new Event(e,{bubbles:!0}):(t=document.createEvent("Event")).initEvent(e,!0,!1),i.dispatchEvent(t)):i.fireEvent?((t=document.createEventObject()).eventType=e,i.fireEvent("on"+e,t)):this.trigger(e)};var f={"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i","\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S","\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe","\u0149":"'n","\u017f":"s"},m=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,g=RegExp("[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\u1ab0-\\u1aff\\u1dc0-\\u1dff]","g");function b(e){return f[e]}function w(e){return(e=e.toString())&&e.replace(m,b).replace(g,"")}var I,x,y,$,S=(I={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},x="(?:"+Object.keys(I).join("|")+")",y=RegExp(x),$=RegExp(x,"g"),function(e){return e=null==e?"":""+e,y.test(e)?e.replace($,E):e});function E(e){return I[e]}var C={32:" ",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",65:"A",66:"B",67:"C",68:"D",69:"E",70:"F",71:"G",72:"H",73:"I",74:"J",75:"K",76:"L",77:"M",78:"N",79:"O",80:"P",81:"Q",82:"R",83:"S",84:"T",85:"U",86:"V",87:"W",88:"X",89:"Y",90:"Z",96:"0",97:"1",98:"2",99:"3",100:"4",101:"5",102:"6",103:"7",104:"8",105:"9"},A=27,L=13,D=32,H=9,B=38,R=40,M={success:!1,major:"3"};try{M.full=(P.fn.dropdown.Constructor.VERSION||"").split(" ")[0].split("."),M.major=M.full[0],M.success=!0}catch(e){}var U=0,j=".bs.select",V={DISABLED:"disabled",DIVIDER:"divider",SHOW:"open",DROPUP:"dropup",MENU:"dropdown-menu",MENURIGHT:"dropdown-menu-right",MENULEFT:"dropdown-menu-left",BUTTONCLASS:"btn-default",POPOVERHEADER:"popover-title",ICONBASE:"glyphicon",TICKICON:"glyphicon-ok"},F={MENU:"."+V.MENU},_={div:document.createElement("div"),span:document.createElement("span"),i:document.createElement("i"),subtext:document.createElement("small"),a:document.createElement("a"),li:document.createElement("li"),whitespace:document.createTextNode("\xa0"),fragment:document.createDocumentFragment()};_.noResults=_.li.cloneNode(!1),_.noResults.className="no-results",_.a.setAttribute("role","option"),_.a.className="dropdown-item",_.subtext.className="text-muted",_.text=_.span.cloneNode(!1),_.text.className="text",_.checkMark=_.span.cloneNode(!1);var G=new RegExp(B+"|"+R),q=new RegExp("^"+H+"$|"+A),K={li:function(e,t,i){var s=_.li.cloneNode(!1);return e&&(1===e.nodeType||11===e.nodeType?s.appendChild(e):s.innerHTML=e),void 0!==t&&""!==t&&(s.className=t),null!=i&&s.classList.add("optgroup-"+i),s},a:function(e,t,i){var s=_.a.cloneNode(!0);return e&&(11===e.nodeType?s.appendChild(e):s.insertAdjacentHTML("beforeend",e)),void 0!==t&&""!==t&&s.classList.add.apply(s.classList,t.split(/\s+/)),i&&s.setAttribute("style",i),s},text:function(e,t){var i,s,n=_.text.cloneNode(!1);if(e.content)n.innerHTML=e.content;else{if(n.textContent=e.text,e.icon){var o=_.whitespace.cloneNode(!1);(s=(!0===t?_.i:_.span).cloneNode(!1)).className=this.options.iconBase+" "+e.icon,_.fragment.appendChild(s),_.fragment.appendChild(o)}e.subtext&&((i=_.subtext.cloneNode(!1)).textContent=e.subtext,n.appendChild(i))}if(!0===t)for(;0'},maxOptions:!1,mobile:!1,selectOnTab:!1,dropdownAlignRight:!1,windowPadding:0,virtualScroll:600,display:!1,sanitize:!0,sanitizeFn:null,whiteList:e},Y.prototype={constructor:Y,init:function(){var i=this,e=this.$element.attr("id"),t=this.$element[0],s=t.form;U++,this.selectId="bs-select-"+U,t.classList.add("bs-select-hidden"),this.multiple=this.$element.prop("multiple"),this.autofocus=this.$element.prop("autofocus"),t.classList.contains("show-tick")&&(this.options.showTick=!0),this.$newElement=this.createDropdown(),this.buildData(),this.$element.after(this.$newElement).prependTo(this.$newElement),s&&null===t.form&&(s.id||(s.id="form-"+this.selectId),t.setAttribute("form",s.id)),this.$button=this.$newElement.children("button"),this.$menu=this.$newElement.children(F.MENU),this.$menuInner=this.$menu.children(".inner"),this.$searchbox=this.$menu.find("input"),t.classList.remove("bs-select-hidden"),!0===this.options.dropdownAlignRight&&this.$menu[0].classList.add(V.MENURIGHT),void 0!==e&&this.$button.attr("data-id",e),this.checkDisabled(),this.clickListener(),this.options.liveSearch?(this.liveSearchListener(),this.focusedParent=this.$searchbox[0]):this.focusedParent=this.$menuInner[0],this.setStyle(),this.render(),this.setWidth(),this.options.container?this.selectPosition():this.$element.on("hide"+j,function(){if(i.isVirtual()){var e=i.$menuInner[0],t=e.firstChild.cloneNode(!1);e.replaceChild(t,e.firstChild),e.scrollTop=0}}),this.$menu.data("this",this),this.$newElement.data("this",this),this.options.mobile&&this.mobile(),this.$newElement.on({"hide.bs.dropdown":function(e){i.$element.trigger("hide"+j,e)},"hidden.bs.dropdown":function(e){i.$element.trigger("hidden"+j,e)},"show.bs.dropdown":function(e){i.$element.trigger("show"+j,e)},"shown.bs.dropdown":function(e){i.$element.trigger("shown"+j,e)}}),t.hasAttribute("required")&&this.$element.on("invalid"+j,function(){i.$button[0].classList.add("bs-invalid"),i.$element.on("shown"+j+".invalid",function(){i.$element.val(i.$element.val()).off("shown"+j+".invalid")}).on("rendered"+j,function(){this.validity.valid&&i.$button[0].classList.remove("bs-invalid"),i.$element.off("rendered"+j)}),i.$button.on("blur"+j,function(){i.$element.trigger("focus").trigger("blur"),i.$button.off("blur"+j)})}),setTimeout(function(){i.buildList(),i.$element.trigger("loaded"+j)})},createDropdown:function(){var e=this.multiple||this.options.showTick?" show-tick":"",t=this.multiple?' aria-multiselectable="true"':"",i="",s=this.autofocus?" autofocus":"";M.major<4&&this.$element.parent().hasClass("input-group")&&(i=" input-group-btn");var n,o="",r="",l="",a="";return this.options.header&&(o='
    '+this.options.header+"
    "),this.options.liveSearch&&(r=''),this.multiple&&this.options.actionsBox&&(l='
    "),this.multiple&&this.options.doneButton&&(a='
    "),n='",P(n)},setPositionData:function(){this.selectpicker.view.canHighlight=[],this.selectpicker.view.size=0,this.selectpicker.view.firstHighlightIndex=!1;for(var e=0;e=this.options.virtualScroll||!0===this.options.virtualScroll},createView:function(N,e,t){var A,L,D=this,i=0,H=[];if(this.selectpicker.isSearching=N,this.selectpicker.current=N?this.selectpicker.search:this.selectpicker.main,this.setPositionData(),e)if(t)i=this.$menuInner[0].scrollTop;else if(!D.multiple){var s=D.$element[0],n=(s.options[s.selectedIndex]||{}).liIndex;if("number"==typeof n&&!1!==D.options.size){var o=D.selectpicker.main.data[n],r=o&&o.position;r&&(i=r-(D.sizeInfo.menuInnerHeight+D.sizeInfo.liHeight)/2)}}function l(e,t){var i,s,n,o,r,l,a,c,d=D.selectpicker.current.elements.length,h=[],p=!0,u=D.isVirtual();D.selectpicker.view.scrollTop=e,i=Math.ceil(D.sizeInfo.menuInnerHeight/D.sizeInfo.liHeight*1.5),s=Math.round(d/i)||1;for(var f=0;fd-1?0:D.selectpicker.current.data[d-1].position-D.selectpicker.current.data[D.selectpicker.view.position1-1].position,b.firstChild.style.marginTop=v+"px",b.firstChild.style.marginBottom=g+"px"):(b.firstChild.style.marginTop=0,b.firstChild.style.marginBottom=0),b.firstChild.appendChild(w),!0===u&&D.sizeInfo.hasScrollBar){var C=b.firstChild.offsetWidth;if(t&&CD.sizeInfo.selectWidth)b.firstChild.style.minWidth=D.sizeInfo.menuInnerInnerWidth+"px";else if(C>D.sizeInfo.menuInnerInnerWidth){D.$menu[0].style.minWidth=0;var O=b.firstChild.offsetWidth;O>D.sizeInfo.menuInnerInnerWidth&&(D.sizeInfo.menuInnerInnerWidth=O,b.firstChild.style.minWidth=D.sizeInfo.menuInnerInnerWidth+"px"),D.$menu[0].style.minWidth=""}}}if(D.prevActiveIndex=D.activeIndex,D.options.liveSearch){if(N&&t){var z,T=0;D.selectpicker.view.canHighlight[T]||(T=1+D.selectpicker.view.canHighlight.slice(1).indexOf(!0)),z=D.selectpicker.view.visibleElements[T],D.defocusItem(D.selectpicker.view.currentActive),D.activeIndex=(D.selectpicker.current.data[T]||{}).index,D.focusItem(z)}}else D.$menuInner.trigger("focus")}l(i,!0),this.$menuInner.off("scroll.createView").on("scroll.createView",function(e,t){D.noScroll||l(this.scrollTop,t),D.noScroll=!1}),P(window).off("resize"+j+"."+this.selectId+".createView").on("resize"+j+"."+this.selectId+".createView",function(){D.$newElement.hasClass(V.SHOW)&&l(D.$menuInner[0].scrollTop)})},focusItem:function(e,t,i){if(e){t=t||this.selectpicker.main.data[this.activeIndex];var s=e.firstChild;s&&(s.setAttribute("aria-setsize",this.selectpicker.view.size),s.setAttribute("aria-posinset",t.posinset),!0!==i&&(this.focusedParent.setAttribute("aria-activedescendant",s.id),e.classList.add("active"),s.classList.add("active")))}},defocusItem:function(e){e&&(e.classList.remove("active"),e.firstChild&&e.firstChild.classList.remove("active"))},setPlaceholder:function(){var e=this,t=!1;if(this.options.title&&!this.multiple){this.selectpicker.view.titleOption||(this.selectpicker.view.titleOption=document.createElement("option")),t=!0;var i=this.$element[0],s=!1,n=!this.selectpicker.view.titleOption.parentNode,o=i.selectedIndex,r=i.options[o],l=window.performance&&window.performance.getEntriesByType("navigation"),a=l&&l.length?"back_forward"!==l[0].type:2!==window.performance.navigation.type;n&&(this.selectpicker.view.titleOption.className="bs-title-option",this.selectpicker.view.titleOption.value="",s=!r||0===o&&!1===r.defaultSelected&&void 0===this.$element.data("selected")),!n&&0===this.selectpicker.view.titleOption.index||i.insertBefore(this.selectpicker.view.titleOption,i.firstChild),s&&a?i.selectedIndex=0:"complete"!==document.readyState&&window.addEventListener("pageshow",function(){e.selectpicker.view.displayedValue!==i.value&&e.render()})}return t},buildData:function(){var p=':not([hidden]):not([data-hidden="true"])',u=[],f=0,m=this.setPlaceholder()?1:0;this.options.hideDisabled&&(p+=":not(:disabled)");var e=this.$element[0].querySelectorAll("select > *"+p);function v(e){var t=u[u.length-1];t&&"divider"===t.type&&(t.optID||e.optID)||((e=e||{}).type="divider",u.push(e))}function g(e,t){if((t=t||{}).divider="true"===e.getAttribute("data-divider"),t.divider)v({optID:t.optID});else{var i=u.length,s=e.style.cssText,n=s?S(s):"",o=(e.className||"")+(t.optgroupClass||"");t.optID&&(o="opt "+o),t.optionClass=o.trim(),t.inlineStyle=n,t.text=e.textContent,t.content=e.getAttribute("data-content"),t.tokens=e.getAttribute("data-tokens"),t.subtext=e.getAttribute("data-subtext"),t.icon=e.getAttribute("data-icon"),e.liIndex=i,t.display=t.content||t.text,t.type="option",t.index=i,t.option=e,t.selected=!!e.selected,t.disabled=t.disabled||!!e.disabled,u.push(t)}}function t(e,t){var i=t[e],s=!(e-1 li")},render:function(){var e,t=this,i=this.$element[0],s=this.setPlaceholder()&&0===i.selectedIndex,n=O(i,this.options.hideDisabled),o=n.length,r=this.$button[0],l=r.querySelector(".filter-option-inner-inner"),a=document.createTextNode(this.options.multipleSeparator),c=_.fragment.cloneNode(!1),d=!1;if(r.classList.toggle("bs-placeholder",t.multiple?!o:!z(i,n)),t.multiple||1!==n.length||(t.selectpicker.view.displayedValue=z(i,n)),"static"===this.options.selectedTextFormat)c=K.text.call(this,{text:this.options.title},!0);else if(!1===(this.multiple&&-1!==this.options.selectedTextFormat.indexOf("count")&&1")).length&&o>e[1]||1===e.length&&2<=o))){if(!s){for(var h=0;h option"+m+", optgroup"+m+" option"+m).length,g="function"==typeof this.options.countSelectedText?this.options.countSelectedText(o,v):this.options.countSelectedText;c=K.text.call(this,{text:g.replace("{0}",o.toString()).replace("{1}",v.toString())},!0)}if(null==this.options.title&&(this.options.title=this.$element.attr("title")),c.childNodes.length||(c=K.text.call(this,{text:void 0!==this.options.title?this.options.title:this.options.noneSelectedText},!0)),r.title=c.textContent.replace(/<[^>]*>?/g,"").trim(),this.options.sanitize&&d&&W([c],t.options.whiteList,t.options.sanitizeFn),l.innerHTML="",l.appendChild(c),M.major<4&&this.$newElement[0].classList.contains("bs3-has-addon")){var b=r.querySelector(".filter-expand"),w=l.cloneNode(!0);w.className="filter-expand",b?r.replaceChild(w,b):r.appendChild(w)}this.$element.trigger("rendered"+j)},setStyle:function(e,t){var i,s=this.$button[0],n=this.$newElement[0],o=this.options.style.trim();this.$element.attr("class")&&this.$newElement.addClass(this.$element.attr("class").replace(/selectpicker|mobile-device|bs-select-hidden|validate\[.*\]/gi,"")),M.major<4&&(n.classList.add("bs3"),n.parentNode.classList&&n.parentNode.classList.contains("input-group")&&(n.previousElementSibling||n.nextElementSibling)&&(n.previousElementSibling||n.nextElementSibling).classList.contains("input-group-addon")&&n.classList.add("bs3-has-addon")),i=e?e.trim():o,"add"==t?i&&s.classList.add.apply(s.classList,i.split(" ")):"remove"==t?i&&s.classList.remove.apply(s.classList,i.split(" ")):(o&&s.classList.remove.apply(s.classList,o.split(" ")),i&&s.classList.add.apply(s.classList,i.split(" ")))},liHeight:function(e){if(e||!1!==this.options.size&&!Object.keys(this.sizeInfo).length){var t,i=_.div.cloneNode(!1),s=_.div.cloneNode(!1),n=_.div.cloneNode(!1),o=document.createElement("ul"),r=_.li.cloneNode(!1),l=_.li.cloneNode(!1),a=_.a.cloneNode(!1),c=_.span.cloneNode(!1),d=this.options.header&&0this.sizeInfo.menuExtras.vert&&l+this.sizeInfo.menuExtras.vert+50>this.sizeInfo.selectOffsetBot,!0===this.selectpicker.isSearching&&(a=this.selectpicker.dropup),this.$newElement.toggleClass(V.DROPUP,a),this.selectpicker.dropup=a),"auto"===this.options.size)n=3this.options.size){for(var b=0;bthis.sizeInfo.menuInnerHeight&&(this.sizeInfo.hasScrollBar=!0,this.sizeInfo.totalMenuWidth=this.sizeInfo.menuWidth+this.sizeInfo.scrollBarWidth),"auto"===this.options.dropdownAlignRight&&this.$menu.toggleClass(V.MENURIGHT,this.sizeInfo.selectOffsetLeft>this.sizeInfo.selectOffsetRight&&this.sizeInfo.selectOffsetRightthis.options.size&&i.off("resize"+j+"."+this.selectId+".setMenuSize scroll"+j+"."+this.selectId+".setMenuSize")}this.createView(!1,!0,e)},setWidth:function(){var i=this;"auto"===this.options.width?requestAnimationFrame(function(){i.$menu.css("min-width","0"),i.$element.on("loaded"+j,function(){i.liHeight(),i.setMenuSize();var e=i.$newElement.clone().appendTo("body"),t=e.css("width","auto").children("button").outerWidth();e.remove(),i.sizeInfo.selectWidth=Math.max(i.sizeInfo.totalMenuWidth,t),i.$newElement.css("width",i.sizeInfo.selectWidth+"px")})}):"fit"===this.options.width?(this.$menu.css("min-width",""),this.$newElement.css("width","").addClass("fit-width")):this.options.width?(this.$menu.css("min-width",""),this.$newElement.css("width",this.options.width)):(this.$menu.css("min-width",""),this.$newElement.css("width","")),this.$newElement.hasClass("fit-width")&&"fit"!==this.options.width&&this.$newElement[0].classList.remove("fit-width")},selectPosition:function(){this.$bsContainer=P('
    ');function e(e){var t={},i=r.options.display||!!P.fn.dropdown.Constructor.Default&&P.fn.dropdown.Constructor.Default.display;r.$bsContainer.addClass(e.attr("class").replace(/form-control|fit-width/gi,"")).toggleClass(V.DROPUP,e.hasClass(V.DROPUP)),s=e.offset(),l.is("body")?n={top:0,left:0}:((n=l.offset()).top+=parseInt(l.css("borderTopWidth"))-l.scrollTop(),n.left+=parseInt(l.css("borderLeftWidth"))-l.scrollLeft()),o=e.hasClass(V.DROPUP)?0:e[0].offsetHeight,(M.major<4||"static"===i)&&(t.top=s.top-n.top+o,t.left=s.left-n.left),t.width=e[0].offsetWidth,r.$bsContainer.css(t)}var s,n,o,r=this,l=P(this.options.container);this.$button.on("click.bs.dropdown.data-api",function(){r.isDisabled()||(e(r.$newElement),r.$bsContainer.appendTo(r.options.container).toggleClass(V.SHOW,!r.$button.hasClass(V.SHOW)).append(r.$menu))}),P(window).off("resize"+j+"."+this.selectId+" scroll"+j+"."+this.selectId).on("resize"+j+"."+this.selectId+" scroll"+j+"."+this.selectId,function(){r.$newElement.hasClass(V.SHOW)&&e(r.$newElement)}),this.$element.on("hide"+j,function(){r.$menu.data("height",r.$menu.height()),r.$bsContainer.detach()})},setOptionStatus:function(e){var t=this;if(t.noScroll=!1,t.selectpicker.view.visibleElements&&t.selectpicker.view.visibleElements.length)for(var i=0;i
    ');y[2]&&($=$.replace("{var}",y[2][1"+$+"
    ")),d=!1,C.$element.trigger("maxReached"+j)),g&&w&&(E.append(P("
    "+S+"
    ")),d=!1,C.$element.trigger("maxReachedGrp"+j)),setTimeout(function(){C.setSelected(r,!1)},10),E[0].classList.add("fadeOut"),setTimeout(function(){E.remove()},1050)}}}else c&&(c.selected=!1),h.selected=!0,C.setSelected(r,!0);!C.multiple||C.multiple&&1===C.options.maxOptions?C.$button.trigger("focus"):C.options.liveSearch&&C.$searchbox.trigger("focus"),d&&(!C.multiple&&a===s.selectedIndex||(T=[h.index,p.prop("selected"),l],C.$element.triggerNative("change")))}}),this.$menu.on("click","li."+V.DISABLED+" a, ."+V.POPOVERHEADER+", ."+V.POPOVERHEADER+" :not(.close)",function(e){e.currentTarget==this&&(e.preventDefault(),e.stopPropagation(),C.options.liveSearch&&!P(e.target).hasClass("close")?C.$searchbox.trigger("focus"):C.$button.trigger("focus"))}),this.$menuInner.on("click",".divider, .dropdown-header",function(e){e.preventDefault(),e.stopPropagation(),C.options.liveSearch?C.$searchbox.trigger("focus"):C.$button.trigger("focus")}),this.$menu.on("click","."+V.POPOVERHEADER+" .close",function(){C.$button.trigger("click")}),this.$searchbox.on("click",function(e){e.stopPropagation()}),this.$menu.on("click",".actions-btn",function(e){C.options.liveSearch?C.$searchbox.trigger("focus"):C.$button.trigger("focus"),e.preventDefault(),e.stopPropagation(),P(this).hasClass("bs-select-all")?C.selectAll():C.deselectAll()}),this.$button.on("focus"+j,function(e){var t=C.$element[0].getAttribute("tabindex");void 0!==t&&e.originalEvent&&e.originalEvent.isTrusted&&(this.setAttribute("tabindex",t),C.$element[0].setAttribute("tabindex",-1),C.selectpicker.view.tabindex=t)}).on("blur"+j,function(e){void 0!==C.selectpicker.view.tabindex&&e.originalEvent&&e.originalEvent.isTrusted&&(C.$element[0].setAttribute("tabindex",C.selectpicker.view.tabindex),this.setAttribute("tabindex",-1),C.selectpicker.view.tabindex=void 0)}),this.$element.on("change"+j,function(){C.render(),C.$element.trigger("changed"+j,T),T=null}).on("focus"+j,function(){C.options.mobile||C.$button[0].focus()})},liveSearchListener:function(){var u=this;this.$button.on("click.bs.dropdown.data-api",function(){u.$searchbox.val()&&(u.$searchbox.val(""),u.selectpicker.search.previousValue=void 0)}),this.$searchbox.on("click.bs.dropdown.data-api focus.bs.dropdown.data-api touchend.bs.dropdown.data-api",function(e){e.stopPropagation()}),this.$searchbox.on("input propertychange",function(){var e=u.$searchbox[0].value;if(u.selectpicker.search.elements=[],u.selectpicker.search.data=[],e){var t=[],i=e.toUpperCase(),s={},n=[],o=u._searchStyle(),r=u.options.liveSearchNormalize;r&&(i=w(i));for(var l=0;l=a.selectpicker.view.canHighlight.length&&(t=a.selectpicker.view.firstHighlightIndex),a.selectpicker.view.canHighlight[t+f]||(t=t+1+a.selectpicker.view.canHighlight.slice(t+f+1).indexOf(!0))),e.preventDefault();var m=f+t;e.which===B?0===f&&t===c.length-1?(a.$menuInner[0].scrollTop=a.$menuInner[0].scrollHeight,m=a.selectpicker.current.elements.length-1):d=(o=(n=a.selectpicker.current.data[m]).position-n.height)u+a.sizeInfo.menuInnerHeight),s=a.selectpicker.main.elements[v],a.activeIndex=b[x],a.focusItem(s),s&&s.firstChild.focus(),d&&(a.$menuInner[0].scrollTop=o),r.trigger("focus")}}i&&(e.which===D&&!a.selectpicker.keydown.keyHistory||e.which===L||e.which===H&&a.options.selectOnTab)&&(e.which!==D&&e.preventDefault(),a.options.liveSearch&&e.which===D||(a.$menuInner.find(".active a").trigger("click",!0),r.trigger("focus"),a.options.liveSearch||(e.preventDefault(),P(document).data("spaceSelect",!0))))}},mobile:function(){this.options.mobile=!0,this.$element[0].classList.add("mobile-device")},refresh:function(){var e=P.extend({},this.options,this.$element.data());this.options=e,this.checkDisabled(),this.buildData(),this.setStyle(),this.render(),this.buildList(),this.setWidth(),this.setSize(!0),this.$element.trigger("refreshed"+j)},hide:function(){this.$newElement.hide()},show:function(){this.$newElement.show()},remove:function(){this.$newElement.remove(),this.$element.remove()},destroy:function(){this.$newElement.before(this.$element).remove(),this.$bsContainer?this.$bsContainer.remove():this.$menu.remove(),this.selectpicker.view.titleOption&&this.selectpicker.view.titleOption.parentNode&&this.selectpicker.view.titleOption.parentNode.removeChild(this.selectpicker.view.titleOption),this.$element.off(j).removeData("selectpicker").removeClass("bs-select-hidden selectpicker"),P(window).off(j+"."+this.selectId)}};var J=P.fn.selectpicker;function Q(){if(P.fn.dropdown)return(P.fn.dropdown.Constructor._dataApiKeydownHandler||P.fn.dropdown.Constructor.prototype.keydown).apply(this,arguments)}P.fn.selectpicker=Z,P.fn.selectpicker.Constructor=Y,P.fn.selectpicker.noConflict=function(){return P.fn.selectpicker=J,this},P(document).off("keydown.bs.dropdown.data-api").on("keydown.bs.dropdown.data-api",':not(.bootstrap-select) > [data-toggle="dropdown"]',Q).on("keydown.bs.dropdown.data-api",":not(.bootstrap-select) > .dropdown-menu",Q).on("keydown"+j,'.bootstrap-select [data-toggle="dropdown"], .bootstrap-select [role="listbox"], .bootstrap-select .bs-searchbox input',Y.prototype.keydown).on("focusin.modal",'.bootstrap-select [data-toggle="dropdown"], .bootstrap-select [role="listbox"], .bootstrap-select .bs-searchbox input',function(e){e.stopPropagation()}),P(window).on("load"+j+".data-api",function(){P(".selectpicker").each(function(){var e=P(this);Z.call(e,e.data())})})}(e)}); -//# sourceMappingURL=bootstrap-select.min.js.map \ No newline at end of file diff --git a/vendor/bootstrap-select/bootstrap-select.min.js.map b/vendor/bootstrap-select/bootstrap-select.min.js.map deleted file mode 100644 index 4535d330b2..0000000000 --- a/vendor/bootstrap-select/bootstrap-select.min.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["../../js/bootstrap-select.js"],"names":["$","DISALLOWED_ATTRIBUTES","uriAttrs","DefaultWhitelist","*","a","area","b","br","col","code","div","em","hr","h1","h2","h3","h4","h5","h6","i","img","li","ol","p","pre","s","small","span","sub","sup","strong","u","ul","SAFE_URL_PATTERN","DATA_URL_PATTERN","allowedAttribute","attr","allowedAttributeList","attrName","nodeName","toLowerCase","inArray","Boolean","nodeValue","match","regExp","filter","index","value","RegExp","l","length","sanitizeHtml","unsafeElements","whiteList","sanitizeFn","whitelistKeys","Object","keys","len","elements","querySelectorAll","j","len2","el","elName","indexOf","attributeList","slice","call","attributes","whitelistedAttributes","concat","k","len3","removeAttribute","parentNode","removeChild","document","createElement","view","classListProp","protoProp","elemCtrProto","Element","objCtr","classListGetter","$elem","this","add","classes","Array","prototype","arguments","join","addClass","remove","removeClass","toggle","force","toggleClass","contains","hasClass","defineProperty","classListPropDesc","get","enumerable","configurable","ex","undefined","number","__defineGetter__","window","toString","testElement","classList","_add","DOMTokenList","_remove","forEach","bind","_toggle","token","startsWith","search","TypeError","string","String","stringLength","searchString","searchLength","position","pos","Number","start","Math","min","max","charCodeAt","getSelectedOptions","select","ignoreDisabled","opt","selectedOptions","options","disabled","tagName","push","getSelectValues","multiple","object","$defineProperty","result","error","writable","o","r","hasOwnProperty","HTMLSelectElement","valHooks","useDefault","_set","set","elem","data","apply","changedArguments","EventIsSupported","Event","e","stringSearch","method","normalize","stringTypes","searchSuccess","stringType","replace","normalizeToBase","toUpperCase","toInteger","parseInt","fn","triggerNative","eventName","event","dispatchEvent","bubbles","createEvent","initEvent","fireEvent","createEventObject","eventType","trigger","deburredLetters","À","Á","Â","Ã","Ä","Å","à","á","â","ã","ä","å","Ç","ç","Ð","ð","È","É","Ê","Ë","è","é","ê","ë","Ì","Í","Î","Ï","ì","í","î","ï","Ñ","ñ","Ò","Ó","Ô","Õ","Ö","Ø","ò","ó","ô","õ","ö","ø","Ù","Ú","Û","Ü","ù","ú","û","ü","Ý","ý","ÿ","Æ","æ","Þ","þ","ß","Ā","Ă","Ą","ā","ă","ą","Ć","Ĉ","Ċ","Č","ć","ĉ","ċ","č","Ď","Đ","ď","đ","Ē","Ĕ","Ė","Ę","Ě","ē","ĕ","ė","ę","ě","Ĝ","Ğ","Ġ","Ģ","ĝ","ğ","ġ","ģ","Ĥ","Ħ","ĥ","ħ","Ĩ","Ī","Ĭ","Į","İ","ĩ","ī","ĭ","į","ı","Ĵ","ĵ","Ķ","ķ","ĸ","Ĺ","Ļ","Ľ","Ŀ","Ł","ĺ","ļ","ľ","ŀ","ł","Ń","Ņ","Ň","Ŋ","ń","ņ","ň","ŋ","Ō","Ŏ","Ő","ō","ŏ","ő","Ŕ","Ŗ","Ř","ŕ","ŗ","ř","Ś","Ŝ","Ş","Š","ś","ŝ","ş","š","Ţ","Ť","Ŧ","ţ","ť","ŧ","Ũ","Ū","Ŭ","Ů","Ű","Ų","ũ","ū","ŭ","ů","ű","ų","Ŵ","ŵ","Ŷ","ŷ","Ÿ","Ź","Ż","Ž","ź","ż","ž","IJ","ij","Œ","œ","ʼn","ſ","reLatin","reComboMark","deburrLetter","key","map","source","testRegexp","replaceRegexp","htmlEscape","&","<",">","\"","'","`","test","escaper","keyCodeMap","32","48","49","50","51","52","53","54","55","56","57","59","65","66","67","68","69","70","71","72","73","74","75","76","77","78","79","80","81","82","83","84","85","86","87","88","89","90","96","97","98","99","100","101","102","103","104","105","keyCodes","version","success","major","full","dropdown","Constructor","VERSION","split","err","selectId","EVENT_KEY","classNames","DISABLED","DIVIDER","SHOW","DROPUP","MENU","MENURIGHT","MENULEFT","BUTTONCLASS","POPOVERHEADER","ICONBASE","TICKICON","Selector","elementTemplates","subtext","whitespace","createTextNode","fragment","createDocumentFragment","noResults","cloneNode","className","setAttribute","text","checkMark","REGEXP_ARROW","REGEXP_TAB_OR_ESCAPE","generateOption","content","optgroup","nodeType","appendChild","innerHTML","inline","insertAdjacentHTML","useFragment","subtextElement","iconElement","textElement","textContent","icon","iconBase","childNodes","label","display","Selectpicker","element","that","$element","$newElement","$button","$menu","selectpicker","main","current","isSearching","keydown","keyHistory","resetKeyHistory","setTimeout","sizeInfo","title","winPad","windowPadding","val","render","refresh","setStyle","selectAll","deselectAll","destroy","show","hide","init","Plugin","option","args","_option","shift","BootstrapVersion","console","warn","toUpdate","DEFAULTS","style","name","tickIcon","chain","each","$this","is","dataAttributes","dataAttr","config","extend","defaults","template","Function","noneSelectedText","noneResultsText","countSelectedText","numSelected","numTotal","maxOptionsText","numAll","numGroup","selectAllText","deselectAllText","doneButton","doneButtonText","multipleSeparator","styleBase","size","selectedTextFormat","width","container","hideDisabled","showSubtext","showIcon","showContent","dropupAuto","header","liveSearch","liveSearchPlaceholder","liveSearchNormalize","liveSearchStyle","actionsBox","showTick","caret","maxOptions","mobile","selectOnTab","dropdownAlignRight","virtualScroll","sanitize","constructor","id","form","prop","autofocus","createDropdown","buildData","after","prependTo","children","$menuInner","$searchbox","find","checkDisabled","clickListener","liveSearchListener","focusedParent","setWidth","selectPosition","on","isVirtual","menuInner","emptyMenu","firstChild","replaceChild","scrollTop","hide.bs.dropdown","hidden.bs.dropdown","show.bs.dropdown","shown.bs.dropdown","hasAttribute","off","validity","valid","buildList","multiselectable","inputGroup","parent","drop","searchbox","actionsbox","donebutton","setPositionData","canHighlight","firstHighlightIndex","type","height","dividerHeight","dropdownHeaderHeight","liHeight","posinset","createView","setSize","selected","prevActive","active","selectedIndex","liIndex","selectedData","menuInnerHeight","scroll","chunkSize","chunkCount","firstChunk","lastChunk","currentChunk","prevPositions","positionIsDifferent","previousElements","chunks","menuIsDifferent","ceil","round","endOfChunk","position0","position1","activeIndex","prevActiveIndex","defocusItem","visibleElements","setOptionStatus","array1","array2","every","isEqual","marginTop","marginBottom","menuFragment","toSanitize","visibleElementsLen","elText","elementData","lastChild","sanitized","hasScrollBar","menuInnerInnerWidth","offsetWidth","totalMenuWidth","selectWidth","minWidth","actualMenuWidth","newActive","currentActive","focusItem","updateValue","noScroll","liData","noStyle","setPlaceholder","updateIndex","titleOption","selectTitleOption","titleNotAppended","selectedOption","navigation","performance","getEntriesByType","isNotBackForward","defaultSelected","insertBefore","readyState","addEventListener","displayedValue","optionSelector","mainData","optID","startIndex","selectOptions","addDivider","previousData","addOption","divider","getAttribute","cssText","inlineStyle","optionClass","optgroupClass","trim","tokens","addOptgroup","previous","next","headerIndex","lastIndex","item","selectData","mainElements","widestOptionLength","buildElement","liElement","combinedLength","widestOption","findLis","countMax","placeholderSelected","selectedCount","button","buttonInner","querySelector","titleFragment","hasContent","thisData","titleOptions","totalCount","tr8nText","filterExpand","clone","newStyle","status","buttonClass","newElement","previousElementSibling","nextElementSibling","menu","menuInnerInner","dropdownHeader","actions","firstOption","input","body","scrollBarWidth","offsetHeight","headerHeight","searchHeight","actionsHeight","doneButtonHeight","outerHeight","menuStyle","getComputedStyle","menuWidth","menuPadding","vert","paddingTop","css","paddingBottom","borderTopWidth","borderBottomWidth","horiz","paddingLeft","paddingRight","borderLeftWidth","borderRightWidth","menuExtras","marginLeft","marginRight","overflowY","selectHeight","getSelectPosition","containerPos","$window","offset","$container","top","left","selectOffsetTop","selectOffsetBot","selectOffsetLeft","scrollLeft","selectOffsetRight","setMenuSize","isAuto","menuHeight","minHeight","_minHeight","maxHeight","menuInnerMinHeight","estimate","isDropup","divHeight","divLength","dropup","max-height","overflow","min-height","overflow-y","_popper","update","requestAnimationFrame","$selectClone","appendTo","btnWidth","outerWidth","$bsContainer","getPlacement","containerPosition","Default","actualHeight","isDisabled","append","detach","selectedOnly","setDisabled","setSelected","activeIndexIsSet","keepActive","$document","setFocus","checkPopperExists","state","isCreated","keyCode","preventDefault","_menu","hoverLi","parentElement","hoverData","retainActive","clickedData","clickedIndex","prevValue","prevIndex","prevOption","triggerChange","stopPropagation","$option","$optgroup","$optgroupOptions","maxOptionsGrp","focus","maxReached","maxReachedGrp","maxOptionsArr","maxTxt","maxTxtGrp","$notify","currentTarget","target","tabindex","originalEvent","isTrusted","previousValue","searchValue","searchMatch","q","cache","cacheArr","searchStyle","_searchStyle","normalizeSearch","cacheLen","liPrev","liSelectedIndex","changeAll","previousSelected","currentSelected","isActive","liActive","activeLi","isToggle","closest","$items","updateScroll","downOnTab","which","isArrowKey","lastIndexOf","liActiveIndex","scrollHeight","matches","cancel","clearTimeout","charAt","matchIndex","before","removeData","old","keydownHandler","_dataApiKeydownHandler","noConflict","$selectpicker","jQuery"],"mappings":"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","file":"bootstrap-select.min.js"} \ No newline at end of file diff --git a/vendor/bootstrap-toggle/bootstrap-toggle.min.css b/vendor/bootstrap-toggle/bootstrap-toggle.min.css deleted file mode 100644 index 0d42ed09cd..0000000000 --- a/vendor/bootstrap-toggle/bootstrap-toggle.min.css +++ /dev/null @@ -1,28 +0,0 @@ -/*! ======================================================================== - * Bootstrap Toggle: bootstrap-toggle.css v2.2.0 - * http://www.bootstraptoggle.com - * ======================================================================== - * Copyright 2014 Min Hur, The New York Times Company - * Licensed under MIT - * ======================================================================== */ -.checkbox label .toggle,.checkbox-inline .toggle{margin-left:-20px;margin-right:5px} -.toggle{position:relative;overflow:hidden} -.toggle input[type=checkbox]{display:none} -.toggle-group{position:absolute;width:200%;top:0;bottom:0;left:0;transition:left .35s;-webkit-transition:left .35s;-moz-user-select:none;-webkit-user-select:none} -.toggle.off .toggle-group{left:-100%} -.toggle-on{position:absolute;top:0;bottom:0;left:0;right:50%;margin:0;border:0;border-radius:0} -.toggle-off{position:absolute;top:0;bottom:0;left:50%;right:0;margin:0;border:0;border-radius:0} -.toggle-handle{position:relative;margin:0 auto;padding-top:0;padding-bottom:0;height:100%;width:0;border-width:0 1px} -.toggle.btn{min-width:59px;min-height:34px} -.toggle-on.btn{padding-right:24px} -.toggle-off.btn{padding-left:24px} -.toggle.btn-lg{min-width:79px;min-height:45px} -.toggle-on.btn-lg{padding-right:31px} -.toggle-off.btn-lg{padding-left:31px} -.toggle-handle.btn-lg{width:40px} -.toggle.btn-sm{min-width:50px;min-height:30px} -.toggle-on.btn-sm{padding-right:20px} -.toggle-off.btn-sm{padding-left:20px} -.toggle.btn-xs{min-width:35px;min-height:22px} -.toggle-on.btn-xs{padding-right:12px} -.toggle-off.btn-xs{padding-left:12px} \ No newline at end of file diff --git a/vendor/bootstrap-toggle/bootstrap-toggle.min.js b/vendor/bootstrap-toggle/bootstrap-toggle.min.js deleted file mode 100644 index 37113200bf..0000000000 --- a/vendor/bootstrap-toggle/bootstrap-toggle.min.js +++ /dev/null @@ -1,9 +0,0 @@ -/*! ======================================================================== - * Bootstrap Toggle: bootstrap-toggle.js v2.2.0 - * http://www.bootstraptoggle.com - * ======================================================================== - * Copyright 2014 Min Hur, The New York Times Company - * Licensed under MIT - * ======================================================================== */ -+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.toggle"),f="object"==typeof b&&b;e||d.data("bs.toggle",e=new c(this,f)),"string"==typeof b&&e[b]&&e[b]()})}var c=function(b,c){this.$element=a(b),this.options=a.extend({},this.defaults(),c),this.render()};c.VERSION="2.2.0",c.DEFAULTS={on:"On",off:"Off",onstyle:"primary",offstyle:"default",size:"normal",style:"",width:null,height:null},c.prototype.defaults=function(){return{on:this.$element.attr("data-on")||c.DEFAULTS.on,off:this.$element.attr("data-off")||c.DEFAULTS.off,onstyle:this.$element.attr("data-onstyle")||c.DEFAULTS.onstyle,offstyle:this.$element.attr("data-offstyle")||c.DEFAULTS.offstyle,size:this.$element.attr("data-size")||c.DEFAULTS.size,style:this.$element.attr("data-style")||c.DEFAULTS.style,width:this.$element.attr("data-width")||c.DEFAULTS.width,height:this.$element.attr("data-height")||c.DEFAULTS.height}},c.prototype.render=function(){this._onstyle="btn-"+this.options.onstyle,this._offstyle="btn-"+this.options.offstyle;var b="large"===this.options.size?"btn-lg":"small"===this.options.size?"btn-sm":"mini"===this.options.size?"btn-xs":"",c=a('
    ').append(c,d,e),g=a('
    ').addClass(this.$element.prop("checked")?this._onstyle:this._offstyle+" off").addClass(b).addClass(this.options.style);this.$element.wrap(g),a.extend(this,{$toggle:this.$element.parent(),$toggleOn:c,$toggleOff:d,$toggleGroup:f}),this.$toggle.append(f);var h=this.options.width||Math.max(c.outerWidth(),d.outerWidth())+e.outerWidth()/2,i=this.options.height||Math.max(c.outerHeight(),d.outerHeight());c.addClass("toggle-on"),d.addClass("toggle-off"),this.$toggle.css({width:h,height:i}),this.options.height&&(c.css("line-height",c.height()+"px"),d.css("line-height",d.height()+"px")),this.update(!0),this.trigger(!0)},c.prototype.toggle=function(){this.$element.prop("checked")?this.off():this.on()},c.prototype.on=function(a){return this.$element.prop("disabled")?!1:(this.$toggle.removeClass(this._offstyle+" off").addClass(this._onstyle),this.$element.prop("checked",!0),void(a||this.trigger()))},c.prototype.off=function(a){return this.$element.prop("disabled")?!1:(this.$toggle.removeClass(this._onstyle).addClass(this._offstyle+" off"),this.$element.prop("checked",!1),void(a||this.trigger()))},c.prototype.enable=function(){this.$toggle.removeAttr("disabled"),this.$element.prop("disabled",!1)},c.prototype.disable=function(){this.$toggle.attr("disabled","disabled"),this.$element.prop("disabled",!0)},c.prototype.update=function(a){this.$element.prop("disabled")?this.disable():this.enable(),this.$element.prop("checked")?this.on(a):this.off(a)},c.prototype.trigger=function(b){this.$element.off("change.bs.toggle"),b||this.$element.change(),this.$element.on("change.bs.toggle",a.proxy(function(){this.update()},this))},c.prototype.destroy=function(){this.$element.off("change.bs.toggle"),this.$toggleGroup.remove(),this.$element.removeData("bs.toggle"),this.$element.unwrap()};var d=a.fn.bootstrapToggle;a.fn.bootstrapToggle=b,a.fn.bootstrapToggle.Constructor=c,a.fn.toggle.noConflict=function(){return a.fn.bootstrapToggle=d,this},a(function(){a("input[type=checkbox][data-toggle^=toggle]").bootstrapToggle()}),a(document).on("click.bs.toggle","div[data-toggle^=toggle]",function(b){var c=a(this).find("input[type=checkbox]");c.bootstrapToggle("toggle"),b.preventDefault()})}(jQuery); -//# sourceMappingURL=bootstrap-toggle.min.js.map \ No newline at end of file diff --git a/vendor/bootstrap-toggle/bootstrap-toggle.min.js.map b/vendor/bootstrap-toggle/bootstrap-toggle.min.js.map deleted file mode 100644 index ac388afd70..0000000000 --- a/vendor/bootstrap-toggle/bootstrap-toggle.min.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"bootstrap-toggle.min.js","sources":["bootstrap-toggle.js"],"names":["$","Plugin","option","this","each","$this","data","options","Toggle","element","$element","extend","defaults","render","VERSION","DEFAULTS","on","off","onstyle","offstyle","size","style","width","height","prototype","attr","_onstyle","_offstyle","$toggleOn","html","addClass","$toggleOff","$toggleHandle","$toggleGroup","append","$toggle","prop","wrap","parent","Math","max","outerWidth","outerHeight","css","update","trigger","toggle","silent","removeClass","enable","removeAttr","disable","change","proxy","destroy","remove","removeData","unwrap","old","fn","bootstrapToggle","Constructor","noConflict","document","e","$checkbox","find","preventDefault","jQuery"],"mappings":"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"} \ No newline at end of file diff --git a/vendor/bootstrap5-toggle/bootstrap5-toggle.jquery.min.js b/vendor/bootstrap5-toggle/bootstrap5-toggle.jquery.min.js new file mode 100644 index 0000000000..0f35749c3a --- /dev/null +++ b/vendor/bootstrap5-toggle/bootstrap5-toggle.jquery.min.js @@ -0,0 +1,14 @@ +/* + * Copyright Notice + * bootstrap5-toggle v5.4.1 + * https://palcarazm.github.io/bootstrap5-toggle/ + * @author 2011-2014 Min Hur (https://github.com/minhur) + * @author 2018-2019 Brent Ely (https://github.com/gitbrent) + * @author 2022 Pablo Alcaraz Martínez (https://github.com/palcarazm) + * @funding GitHub Sponsors + * @see https://github.com/sponsors/palcarazm + * @license MIT + * @see https://github.com/palcarazm/bootstrap5-toggle/blob/master/LICENSE + */ +!function(t){"function"==typeof define&&define.amd?define(t):t()}(function(){"use strict";var t,e,i,s,n,o,a;!function(t){t.ON="on",t.OFF="off",t.MIXED="mixed"}(t||(t={})),function(t){t.ENABLED="enabled",t.DISABLED="disabled",t.READONLY="readonly"}(e||(e={})),function(t){t.NEXT="next",t.ON="on",t.OFF="off",t.TOGGLE="toggle",t.DETERMINATE="determinate",t.INDETERMINATE="indeterminate",t.READONLY="readonly",t.DISABLE="disable",t.ENABLE="enable"}(i||(i={}));class r{constructor(t,e,i){this.isBuilt=!1,this.lastState=i,this.onStyle=`btn-${e.onstyle}`,this.offStyle=`btn-${e.offstyle}`,this.name=e.name,this.checkbox=t,e.onvalue&&(this.checkbox.value=e.onvalue),this.invCheckbox=e.offvalue?this.createInvCheckbox(e.offvalue):null,this.sizeClass=r.sizeResolver(e.size),this.toggleOn=this.createToggleSpan(e.onlabel,this.onStyle,e.ontitle),this.toggleOff=this.createToggleSpan(e.offlabel,this.offStyle,e.offtitle),this.toggleHandle=this.createToggleHandle(),this.toggleGroup=this.createToggleGroup(),this.toggle=document.createElement("div"),e.tooltip&&(this.tooltipLabels=e.tooltip.title),this.isVisible()?(this.renderToggle(e),this.render(i)):this.deferRender(e)}isVisible(){const t=this.checkbox.parentElement;return!!t&&t.offsetWidth>0&&t.offsetHeight>0}deferRender(t){this.resizeObserver=new ResizeObserver(e=>{if(this.isBuilt)this.resizeObserver.disconnect();else for(const i of e)if(i.contentRect.width>0&&i.contentRect.height>0)return this.renderToggle(t),this.render(this.lastState),this.isBuilt=!0,void this.resizeObserver.disconnect()}),this.resizeObserver.observe(this.checkbox.parentElement)}static sizeResolver(t){var e;return null!==(e={large:"btn-lg",lg:"btn-lg",small:"btn-sm",sm:"btn-sm",mini:"btn-xs",xs:"btn-xs"}[t])&&void 0!==e?e:""}createInvCheckbox(t){const e=this.checkbox.cloneNode(!0);return e.value=t,e.dataset.toggle="invert-toggle",e.removeAttribute("id"),e}renderToggle({style:t,width:e,height:i,tabindex:s,aria:n,tooltip:o}){var a;this.toggle.className=`toggle btn ${this.sizeClass} ${t}`,this.toggle.dataset.toggle="toggle",this.toggle.tabIndex=s,this.toggle.role="switch",this.checkbox.tabIndex=-1,this.invCheckbox&&(this.invCheckbox.tabIndex=-1),null===(a=this.checkbox.parentElement)||void 0===a||a.insertBefore(this.toggle,this.checkbox),this.toggle.appendChild(this.checkbox),this.invCheckbox&&this.toggle.appendChild(this.invCheckbox),this.toggle.appendChild(this.toggleGroup),this.handleLabels(n),this.handleToggleSize(e,i),o&&this.createTooltip(o),this.isBuilt=!0}createToggleGroup(){const t=document.createElement("div");return t.className="toggle-group",t.appendChild(this.toggleOn),t.appendChild(this.toggleOff),t.appendChild(this.toggleHandle),t}createToggleSpan(t,e,i){const s=document.createElement("span");return s.className=`btn ${this.sizeClass} ${e}`,s.innerHTML=t,i&&(s.title=i),s}createToggleHandle(){const t=document.createElement("span");return t.className=`toggle-handle btn ${this.sizeClass}`,t}handleToggleSize(t,e){this.cancelPendingAnimationFrame(),"function"==typeof requestAnimationFrame?this.requestAnimationFrameId=requestAnimationFrame(()=>{try{this.calculateToggleSize(t,e)}catch(t){console.warn("Error calculating toggle size:",t)}}):this.calculateToggleSize(t,e)}calculateToggleSize(t,e){t?this.toggle.style.width=t:(this.toggle.style.minWidth="100px",this.toggle.style.minWidth=`${Math.max(this.toggleOn.getBoundingClientRect().width,this.toggleOff.getBoundingClientRect().width)+this.toggleHandle.getBoundingClientRect().width/2}px`),e?this.toggle.style.height=e:(this.toggle.style.minHeight="36px",this.toggle.style.minHeight=`${Math.max(this.toggleOn.getBoundingClientRect().height,this.toggleOff.getBoundingClientRect().height)}px`),this.toggleOn.classList.add("toggle-on"),this.toggleOff.classList.add("toggle-off"),e&&(this.toggleOn.style.lineHeight=r.calcH(this.toggleOn)+"px",this.toggleOff.style.lineHeight=r.calcH(this.toggleOff)+"px")}static calcH(t){const e=globalThis.window.getComputedStyle(t),i=t.offsetHeight,s=Number.parseFloat(e.borderTopWidth);return i-Number.parseFloat(e.borderBottomWidth)-s-Number.parseFloat(e.paddingTop)-Number.parseFloat(e.paddingBottom)}cancelPendingAnimationFrame(){void 0!==this.requestAnimationFrameId&&"function"==typeof cancelAnimationFrame&&(cancelAnimationFrame(this.requestAnimationFrameId),this.requestAnimationFrameId=void 0)}handleLabels(t){var e;if(null===(e=this.checkbox.labels)||void 0===e?void 0:e.length){const t=Array.from(this.checkbox.labels).map(t=>t.id).filter(Boolean);t.length&&this.toggle.setAttribute("aria-labelledby",t.join(" "))}else this.toggle.setAttribute("aria-label",t.label)}createTooltip(t){try{this.tooltip=new globalThis.window.bootstrap.Tooltip(this.toggle,{placement:t.placement,html:!0,title:t.title.on})}catch(t){console.error("Error creating tooltip:",t)}}render(t){this.lastState=t,this.isBuilt&&(this.updateToggleByValue(t),this.updateToggleByChecked(t),this.updateToggleByState(t),this.updateAria(t),this.updateTooltip(t))}updateToggleByValue(e){switch(this.toggle.classList.remove(this.onStyle,this.offStyle,"off","indeterminate"),e.value){case t.ON:this.toggle.classList.add(this.onStyle);break;case t.OFF:this.toggle.classList.add(this.offStyle,"off");break;case t.MIXED:this.toggle.classList.add("indeterminate"),e.checked?this.toggle.classList.add(this.onStyle):this.toggle.classList.add(this.offStyle,"off")}}updateToggleByChecked(t){this.updateCheckboxByChecked(t),this.updateInvCheckboxByChecked(t)}updateCheckboxByChecked(t){switch(this.checkbox.checked=t.checked,t.status){case e.ENABLED:this.checkbox.disabled=!1,this.checkbox.readOnly=!1,this.toggle.classList.remove("disabled"),this.toggle.removeAttribute("disabled");break;case e.DISABLED:this.checkbox.disabled=!0,this.checkbox.readOnly=!1,this.toggle.classList.add("disabled"),this.toggle.setAttribute("disabled","");break;case e.READONLY:this.checkbox.disabled=!1,this.checkbox.readOnly=!0,this.toggle.classList.add("disabled"),this.toggle.setAttribute("disabled","")}}updateInvCheckboxByChecked(t){if(this.invCheckbox)switch(this.invCheckbox.checked=!t.checked,t.status){case e.ENABLED:this.invCheckbox.disabled=!1,this.invCheckbox.readOnly=!1;break;case e.DISABLED:this.invCheckbox.disabled=!0,this.invCheckbox.readOnly=!1;break;case e.READONLY:this.invCheckbox.disabled=!1,this.invCheckbox.readOnly=!0}}updateToggleByState(t){t.indeterminate?(this.checkbox.indeterminate=!0,this.checkbox.removeAttribute("name"),this.invCheckbox&&(this.invCheckbox.indeterminate=!0),this.invCheckbox&&this.invCheckbox.removeAttribute("name")):(this.checkbox.indeterminate=!1,this.name&&(this.checkbox.name=this.name),this.invCheckbox&&(this.invCheckbox.indeterminate=!1),this.invCheckbox&&this.name&&(this.invCheckbox.name=this.name))}updateAria(t){t.indeterminate?this.toggle.setAttribute("aria-checked","mixed"):this.toggle.setAttribute("aria-checked",String(t.checked)),this.toggle.setAttribute("aria-disabled",String(t.status===e.DISABLED)),this.toggle.setAttribute("aria-readonly",String(t.status===e.READONLY))}updateTooltip(e){if(this.tooltip&&this.tooltipLabels)switch(e.value){case t.ON:return void this.tooltip.setContent({".tooltip-inner":this.tooltipLabels.on});case t.OFF:return void this.tooltip.setContent({".tooltip-inner":this.tooltipLabels.off});case t.MIXED:return void(this.tooltipLabels.mixed&&this.tooltip.setContent({".tooltip-inner":this.tooltipLabels.mixed}))}}get root(){return this.toggle}destroy(){var t,e;this.cancelPendingAnimationFrame(),this.tooltip&&(this.tooltip.dispose(),this.tooltip=void 0),null===(t=this.toggle.parentNode)||void 0===t||t.insertBefore(this.checkbox,this.toggle),this.toggle.remove(),null===(e=this.resizeObserver)||void 0===e||e.disconnect(),this.resizeObserver=void 0,this.isBuilt=!1}}function l(t,e){if(!t)return t;switch(e.mode){case s.HTML:return function(t){const e={allowedTags:["b","i","strong","em","span","small","sup","sub","img"],allowedAttributes:["class","style","src","alt","title","data-*"]},i=(new DOMParser).parseFromString(t,"text/html");return Array.from(i.body.childNodes).forEach(t=>function(t,e){const i=t=>{var s;if(t.nodeType===Node.ELEMENT_NODE){const n=t,o=n.tagName.toLowerCase();if(!e.allowedTags.includes(o)){const t=document.createDocumentFragment();return Array.from(n.childNodes).forEach(e=>{t.appendChild(e.cloneNode(!0))}),void(null===(s=n.parentNode)||void 0===s||s.replaceChild(t,n))}Array.from(n.attributes).forEach(t=>{const i=t.name.toLowerCase();e.allowedAttributes.some(t=>t.endsWith("*")?i.startsWith(t.slice(0,-1)):i===t)?function(t,e,i){if("src"!==i&&"href"!==i)return;const s=e.value.toLowerCase();(s.startsWith("javascript:")||s.startsWith("vbscript:")||s.startsWith("data:")&&!s.startsWith("data:image/"))&&t.removeAttribute(e.name)}(n,t,i):n.removeAttribute(t.name)});Array.from(n.childNodes).forEach(i)}else if(t.nodeType===Node.TEXT_NODE)return};i(t)}(t,e)),i.body.innerHTML}(t);case s.TEXT:return function(t){const e={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"};return t.replace(/[&<>"'/]/g,t=>e[t])}(t)}}function h(t){return/^[+-]?\d+(\.\d+)?$/.test(t.toString().trim())}!function(t){t.HTML="HTML",t.TEXT="TEXT"}(s||(s={})),function(t){t.TOP="top",t.BOTTOM="bottom",t.LEFT="left",t.RIGHT="right"}(n||(n={}));class d{static getAttr(t,e,i){const{sanitized:n=s.TEXT}=null!=i?i:{};return l(t.getAttribute(e),{mode:n})}static getAttrOrDefault(t,e,i,n,o=s.TEXT){const a="string"==typeof i?l(i,{mode:o}):i;return d.getAttr(t,e,{sanitized:o})||a||n}static getAttrOrDeprecation(t,e,i,n=s.TEXT){const o="string"==typeof i?l(i,{mode:n}):i;return d.getAttr(t,e,{sanitized:n})||o||c.value}static resolve(t,e={}){var i;const n={onlabel:this.getAttrOrDeprecation(t,"data-onlabel",e.onlabel,s.HTML),offlabel:this.getAttrOrDeprecation(t,"data-offlabel",e.offlabel,s.HTML),onstyle:this.getAttrOrDefault(t,"data-onstyle",e.onstyle,d.DEFAULT.onstyle),offstyle:this.getAttrOrDefault(t,"data-offstyle",e.offstyle,d.DEFAULT.offstyle),onvalue:this.getAttr(t,"value")||this.getAttrOrDefault(t,"data-onvalue",e.onvalue,d.DEFAULT.onvalue),offvalue:this.getAttrOrDefault(t,"data-offvalue",e.offvalue,d.DEFAULT.offvalue),ontitle:this.getAttrOrDefault(t,"data-ontitle",e.ontitle,d.getAttr(t,"title")||d.DEFAULT.ontitle),offtitle:this.getAttrOrDefault(t,"data-offtitle",e.offtitle,d.getAttr(t,"title")||d.DEFAULT.offtitle),size:this.getAttrOrDefault(t,"data-size",e.size,this.DEFAULT.size),style:this.getAttrOrDefault(t,"data-style",e.style,this.DEFAULT.style),width:this.getAttrOrDefault(t,"data-width",e.width,this.DEFAULT.width),height:this.getAttrOrDefault(t,"data-height",e.height,this.DEFAULT.height),tabindex:Number(this.getAttrOrDefault(t,"tabindex",e.tabindex,this.DEFAULT.tabindex)),tristate:t.hasAttribute("tristate")||e.tristate||d.DEFAULT.tristate,name:this.getAttrOrDefault(t,"name",e.name,this.DEFAULT.name),aria:{label:this.getAttrOrDefault(t,"aria-label",null===(i=e.aria)||void 0===i?void 0:i.label,this.DEFAULT.aria.label)},tooltip:d.resolveTooltipOptions(t,e)};return n.width&&h(n.width)&&(n.width=`${n.width}px`),n.height&&h(n.height)&&(n.height=`${n.height}px`),c.handle(n,t,e),n}static resolveTooltipOptions(t,e){var i,o,a,r;const l=(e,i)=>this.getAttrOrDefault(t,e,i,null,s.HTML)||this.getAttr(t,"data-tooltip-title",{sanitized:s.HTML}),h=l("data-tooltip-title-on",null===(i=e.tooltip)||void 0===i?void 0:i.title.on),c=l("data-tooltip-title-off",null===(o=e.tooltip)||void 0===o?void 0:o.title.off),g=l("data-tooltip-title-mixed",null===(a=e.tooltip)||void 0===a?void 0:a.title.mixed);if(!h||!c)return d.DEFAULT.tooltip;const u=this.getAttrOrDefault(t,"data-tooltip-placement",null===(r=e.tooltip)||void 0===r?void 0:r.placement,n.TOP);return{placement:Object.values(n).includes(u)?u:n.TOP,title:{on:h,off:c,mixed:null!=g?g:void 0}}}}d.DEFAULT={onlabel:"On",onstyle:"primary",onvalue:null,ontitle:null,offlabel:"Off",offstyle:"secondary",offvalue:null,offtitle:null,size:"",style:"",width:null,height:null,tabindex:0,tristate:!1,name:null,aria:{label:"Toggle"},tooltip:void 0},function(t){t.ATTRIBUTE="attribute",t.OPTION="option"}(o||(o={}));class c{static handle(t,e,i){this.deprecatedOptions.forEach(({currentOpt:s,deprecatedAttr:n,deprecatedOpt:a,mode:r})=>{if(t[s]===c.value){const h=l(e.getAttribute(n),{mode:r});h?(this.log(o.ATTRIBUTE,n,`data-${s}`),t[s]=h):i[a]?(this.log(o.OPTION,a,s),t[s]=i[a]):t[s]=d.DEFAULT[s]}})}static log(t,e,i){console.warn(`Bootstrap Toggle deprecation warning: Using ${e} ${t} is deprecated. Use ${i} instead.`)}}c.value="BOOTSTRAP TOGGLE DEPRECATION CHECK -- a0Jhux0QySypjjs4tLtEo8xT2kx0AbYaq9K6mgNjWSs0HF0L8T8J0M0o3Kr7zkm7 --",c.deprecatedOptions=[{currentOpt:"onlabel",deprecatedAttr:"data-on",deprecatedOpt:"on",mode:s.HTML},{currentOpt:"offlabel",deprecatedAttr:"data-off",deprecatedOpt:"off",mode:s.HTML}];class g{constructor(t,e){this.isTristate=e,this.state=this.getElementState(t)}getElementState(i){const s=i.checked;let n;n=i.disabled?e.DISABLED:i.readOnly?e.READONLY:e.ENABLED;const o=this.isTristate&&i.indeterminate;let a;return a=o?t.MIXED:s?t.ON:t.OFF,{value:a,checked:s,status:n,indeterminate:o}}get(){return Object.freeze(Object.assign({},this.state))}canInteract(){return this.state.status===e.ENABLED}sync(t){this.state=this.getElementState(t)}do(s){if([i.ON,i.OFF,i.TOGGLE,i.INDETERMINATE,i.DETERMINATE,i.NEXT,i.READONLY].includes(s)&&!this.canInteract())return!1;switch(s){case i.ON:return this.setValueIfChanged(t.ON,!0,!1);case i.OFF:return this.setValueIfChanged(t.OFF,!1,!1);case i.TOGGLE:return this.state.value===t.ON?this.do(i.OFF):this.state.value===t.OFF&&this.do(i.ON);case i.INDETERMINATE:return this.setValueIfChanged(t.MIXED,void 0,!0);case i.DETERMINATE:return this.state.value==t.MIXED&&this.setValue(this.state.checked?t.ON:t.OFF,this.state.checked,!1);case i.NEXT:return this.doNext();case i.DISABLE:return this.setStatusIfChanged(e.DISABLED);case i.ENABLE:return this.setStatusIfChanged(e.ENABLED);case i.READONLY:return this.setStatus(e.READONLY)}}setValue(t,e,i){return this.state=Object.assign(Object.assign({},this.state),{value:t,checked:null!=e?e:this.state.checked,indeterminate:null!=i?i:this.state.indeterminate}),!0}setValueIfChanged(t,e,i){return this.state.value!==t&&this.setValue(t,e,i)}setStatus(t){return this.state=Object.assign(Object.assign({},this.state),{status:t}),!0}setStatusIfChanged(t){return this.state.status!==t&&this.setStatus(t)}doNext(){return this.isTristate?this.state.value===t.ON||this.state.value===t.OFF?this.do(i.INDETERMINATE):this.state.value===t.MIXED&&(this.state.checked?this.do(i.OFF):this.do(i.ON)):this.state.value===t.ON?this.do(i.OFF):this.do(i.ON)}}!function(t){t.ON="toggle:on",t.OFF="toggle:off",t.MIXED="toggle:mixed",t.ENABLED="toggle:enabled",t.DISABLED="toggle:disabled",t.READONLY="toggle:readonly"}(a||(a={}));var u,p=a;class b{constructor(t,e){this.pointer=null,this.SCROLL_THRESHOLD=10,this.eventsBound=!1,this.suppressExternalSync=!1,this.originalDescriptors=new Map,this.onExternalChange=()=>{this.update()},this.onFormReset=()=>{setTimeout(()=>this.onExternalChange(),0)},this.onPointerDown=t=>{"mouse"===t.pointerType&&0!==t.button||this.stateReducer.canInteract()&&(this.pointer={x:t.clientX,y:t.clientY},this.domBuilder.root.addEventListener("pointermove",this.onPointerMove,{passive:!0}),this.domBuilder.root.addEventListener("pointerup",this.onPointerUp,{passive:!0}),this.domBuilder.root.addEventListener("pointercancel",this.onPointerCancel,{passive:!0}))},this.onPointerMove=t=>{const e=Math.abs(t.clientX-this.pointer.x);(Math.abs(t.clientY-this.pointer.y)>this.SCROLL_THRESHOLD||e>this.domBuilder.root.offsetWidth)&&this.onPointerCancel()},this.onPointerUp=t=>{if("mouse"===t.pointerType&&0!==t.button)return void this.onPointerCancel();const e=Math.abs(t.clientX-this.pointer.x);Math.abs(t.clientY-this.pointer.y)<=this.SCROLL_THRESHOLD&&e<=this.domBuilder.root.offsetWidth&&this.apply(i.NEXT),this.onPointerCancel()},this.onPointerCancel=()=>{this.domBuilder.root.removeEventListener("pointermove",this.onPointerMove),this.domBuilder.root.removeEventListener("pointerup",this.onPointerUp),this.domBuilder.root.removeEventListener("pointercancel",this.onPointerCancel)},this.handlerKeyboardEvent=t=>{" "!==t.key&&"Enter"!==t.key||(t.preventDefault(),this.apply(i.NEXT))},this.handlerLabelEvent=t=>{t.preventDefault(),this.apply(i.NEXT),this.domBuilder.root.focus()},this.element=t,this.userOptions=e,this.options=d.resolve(t,e),this.stateReducer=new g(t,this.options.tristate),this.domBuilder=new r(t,this.options,this.stateReducer.get()),this.bindEventListeners(),this.interceptInputProperties(),this.element.bsToggle=this}interceptInputProperties(){["checked","disabled","readOnly","indeterminate"].forEach(t=>{const e=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(this.element),t);(null==e?void 0:e.set)&&(this.originalDescriptors.set(t,e),Object.defineProperty(this.element,t,{configurable:!0,get:()=>e.get.call(this.element),set:t=>{e.set.call(this.element,t),this.suppressExternalSync||this.onExternalChange()}}))})}restoreInputProperties(){this.originalDescriptors.forEach((t,e)=>{Object.defineProperty(this.element,e,t)}),this.originalDescriptors.clear()}bindEventListeners(){this.eventsBound||(this.bindFormResetListener(),this.bindPointerEventListener(),this.bindKeyboardEventListener(),this.bindLabelEventListener(),this.eventsBound=!0)}unbindEventListeners(){this.eventsBound&&(this.unbindFormResetListener(),this.unbindPointerEventListener(),this.unbindKeyboardEventListener(),this.unbindLabelEventListener(),this.eventsBound=!1)}bindFormResetListener(){const t=this.element.form;t&&t.addEventListener("reset",this.onFormReset)}unbindFormResetListener(){const t=this.element.form;t&&t.removeEventListener("reset",this.onFormReset)}bindPointerEventListener(){this.domBuilder.root.addEventListener("pointerdown",this.onPointerDown,{passive:!0})}unbindPointerEventListener(){this.domBuilder.root.removeEventListener("pointerdown",this.onPointerDown)}bindKeyboardEventListener(){this.domBuilder.root.addEventListener("keydown",this.handlerKeyboardEvent,{passive:!1})}unbindKeyboardEventListener(){this.domBuilder.root.removeEventListener("keydown",this.handlerKeyboardEvent)}bindLabelEventListener(){this.element.id&&document.querySelectorAll('label[for="'+this.element.id+'"]').forEach(t=>{t.addEventListener("click",this.handlerLabelEvent,{passive:!1})})}unbindLabelEventListener(){this.element.id&&document.querySelectorAll('label[for="'+this.element.id+'"]').forEach(t=>{t.removeEventListener("click",this.handlerLabelEvent)})}apply(t,e=!1){if(this.stateReducer.do(t)){this.suppressExternalSync=!0;try{const i=this.stateReducer.get();this.domBuilder.render(i),e||this.trigger(t,i)}finally{this.suppressExternalSync=!1}}}toggle(t=!1){this.apply(i.TOGGLE,t)}on(t=!1){this.apply(i.ON,t)}off(t=!1){this.apply(i.OFF,t)}indeterminate(t=!1){this.apply(i.INDETERMINATE,t)}determinate(t=!1){this.apply(i.DETERMINATE,t)}enable(t=!1){this.apply(i.ENABLE,t)}disable(t=!1){this.apply(i.DISABLE,t)}readonly(t=!1){this.apply(i.READONLY,t)}update(){this.suppressExternalSync=!0;try{this.stateReducer.sync(this.element),this.domBuilder.render(this.stateReducer.get())}finally{this.suppressExternalSync=!1}}trigger(t,e){this.element.dispatchEvent(new Event("change",{bubbles:!0}));const i=this.getEventForAction(t,e),s={state:e};this.element.dispatchEvent(new CustomEvent(i,{bubbles:!0,detail:s}))}getEventForAction(t,e){switch(t){case i.ON:return p.ON;case i.OFF:return p.OFF;case i.INDETERMINATE:return p.MIXED;case i.ENABLE:return p.ENABLED;case i.DISABLE:return p.DISABLED;case i.READONLY:return p.READONLY;case i.DETERMINATE:case i.TOGGLE:case i.NEXT:return this.getValueEvent(e)}}getValueEvent(e){switch(e.value){case t.ON:return p.ON;case t.OFF:return p.OFF;case t.MIXED:return p.MIXED}}destroy(){this.restoreInputProperties(),this.unbindEventListeners(),this.domBuilder.destroy(),delete this.element.bsToggle}rerender(){this.restoreInputProperties(),this.unbindEventListeners(),this.domBuilder.destroy(),this.options=d.resolve(this.element,this.userOptions),this.stateReducer=new g(this.element,this.options.tristate),this.domBuilder=new r(this.element,this.options,this.stateReducer.get()),this.bindEventListeners(),this.interceptInputProperties()}}!function(t){t.ON="on",t.OFF="off",t.TOGGLE="toggle",t.DETERMINATE="determinate",t.INDETERMINATE="indeterminate",t.ENABLE="enable",t.DISABLE="disable",t.READONLY="readonly",t.DESTROY="destroy",t.RERENDER="rerender"}(u||(u={})),function(i){globalThis.window.BootstrapToggle=globalThis.window.BootstrapToggle||{},Object.assign(globalThis.window.BootstrapToggle,{Events:p,Methods:u,StateValue:t,StateStatus:e});let s=i.fn.bootstrapToggle;i.fn.bootstrapToggle=function(t,e){return Array.prototype.slice.call(arguments,1)[0],this.each(function(){i(this);let s=this.bsToggle||new b(this,t&&"string"!=typeof t?t:{});if(t&&"string"==typeof t)switch(t.toLowerCase()){case u.TOGGLE:s.toggle(e);break;case u.ON:s.on(e);break;case u.OFF:s.off(e);break;case u.INDETERMINATE:s.indeterminate(e);break;case u.DETERMINATE:s.determinate(e);break;case u.ENABLE:s.enable(e);break;case u.DISABLE:s.disable(e);break;case u.READONLY:s.readonly(e);break;case u.DESTROY:s.destroy();break;case u.RERENDER:s.rerender()}})},i.fn.bootstrapToggle.Constructor=b,i.fn.toggle.noConflict=function(){return i.fn.bootstrapToggle=s,this},i(function(){i("input[type=checkbox][data-toggle^=toggle]").bootstrapToggle()})}(jQuery)}); +//# sourceMappingURL=bootstrap5-toggle.jquery.min.js.map diff --git a/vendor/bootstrap5-toggle/bootstrap5-toggle.jquery.min.js.map b/vendor/bootstrap5-toggle/bootstrap5-toggle.jquery.min.js.map new file mode 100644 index 0000000000..37db9a8806 --- /dev/null +++ b/vendor/bootstrap5-toggle/bootstrap5-toggle.jquery.min.js.map @@ -0,0 +1 @@ +{"version":3,"file":"bootstrap5-toggle.jquery.min.js","sources":["../src/main/js/core/StateReducer.types.js","../src/main/js/core/Tools.js","../src/main/js/core/OptionResolver.types.js","../src/main/js/core/OptionResolver.js","../src/main/js/types/ToggleEvents.js","../src/main/js/core/DOMBuilder.js","../src/main/js/core/StateReducer.js","../src/main/js/types/ToggleMethods.js","../src/main/js/BootstrapToggle.js","../src/main/js/index.jquery.js"],"sourcesContent":["export var ToggleStateValue;\n(function (ToggleStateValue) {\n ToggleStateValue[\"ON\"] = \"on\";\n ToggleStateValue[\"OFF\"] = \"off\";\n ToggleStateValue[\"MIXED\"] = \"mixed\";\n})(ToggleStateValue || (ToggleStateValue = {}));\nexport var ToggleStateStatus;\n(function (ToggleStateStatus) {\n ToggleStateStatus[\"ENABLED\"] = \"enabled\";\n ToggleStateStatus[\"DISABLED\"] = \"disabled\";\n ToggleStateStatus[\"READONLY\"] = \"readonly\";\n})(ToggleStateStatus || (ToggleStateStatus = {}));\nexport var ToggleActionType;\n(function (ToggleActionType) {\n ToggleActionType[\"NEXT\"] = \"next\";\n ToggleActionType[\"ON\"] = \"on\";\n ToggleActionType[\"OFF\"] = \"off\";\n ToggleActionType[\"TOGGLE\"] = \"toggle\";\n ToggleActionType[\"DETERMINATE\"] = \"determinate\";\n ToggleActionType[\"INDETERMINATE\"] = \"indeterminate\";\n ToggleActionType[\"READONLY\"] = \"readonly\";\n ToggleActionType[\"DISABLE\"] = \"disable\";\n ToggleActionType[\"ENABLE\"] = \"enable\";\n})(ToggleActionType || (ToggleActionType = {}));\n","export var SanitizeMode;\n(function (SanitizeMode) {\n SanitizeMode[\"HTML\"] = \"HTML\";\n SanitizeMode[\"TEXT\"] = \"TEXT\";\n})(SanitizeMode || (SanitizeMode = {}));\n/**\n * Sanitizes a given text string according to the provided options.\n * If the input text is null, it will return null.\n * If the input text is not null, it will sanitize the text according to the provided mode.\n * If the mode is HTML, it will sanitize the text using the sanitizeHTML function.\n * If the mode is TEXT, it will sanitize the text using the sanitizeText function.\n * @param text The text string to sanitize.\n * @param opts The options to use for sanitizing the text.\n * @return The sanitized text string, or null if the input text was null.\n */\nexport function sanitize(text, opts) {\n if (!text)\n return text;\n switch (opts.mode) {\n case SanitizeMode.HTML:\n return sanitizeHTML(text);\n case SanitizeMode.TEXT:\n return sanitizeText(text);\n }\n}\n/**\n * Sanitizes a given text string, replacing special characters with their HTML entities.\n * If the input text is null, it will return null.\n * @param text The text string to sanitize.\n * @return The sanitized text string, or null if the input text was null.\n */\nfunction sanitizeText(text) {\n const map = {\n \"&\": \"&\",\n \"<\": \"<\",\n \">\": \">\",\n '\"': \""\",\n \"'\": \"'\",\n \"/\": \"/\"\n };\n // Using replace with regex for single-pass character mapping compatible with ES5\n return text.replace(/[&<>\"'/]/g, (m) => map[m]);\n}\n/**\n * Sanitizes HTML content using an allow-list approach to prevent XSS attacks.\n *\n * @param html The HTML string to sanitize\n * @param options Configuration options for allowed tags and attributes\n * @returns Sanitized HTML string\n */\nfunction sanitizeHTML(html) {\n const config = {\n allowedTags: [\"b\", \"i\", \"strong\", \"em\", \"span\", \"small\", \"sup\", \"sub\", \"img\"],\n allowedAttributes: [\"class\", \"style\", \"src\", \"alt\", \"title\", \"data-*\"]\n };\n // Implementation using DOMParser for browser compatibility\n const parser = new DOMParser();\n const doc = parser.parseFromString(html, \"text/html\");\n // Sanitize all nodes in the document body\n const bodyChildren = Array.from(doc.body.childNodes);\n bodyChildren.forEach((node) => sanitizeNode(node, config));\n return doc.body.innerHTML;\n}\n/**\n * Sanitizes a single node in the document tree.\n *\n * For element nodes, it removes disallowed tags and attributes.\n * For text nodes, it keeps them as is.\n *\n * Recursively sanitizes all children of an element node.\n *\n * @param node The node to sanitize\n * @param config Configuration options for allowed tags and attributes\n */\nfunction sanitizeNode(node, config) {\n const sanitizeNodeRecursive = (node) => {\n var _a;\n if (node.nodeType === Node.ELEMENT_NODE) {\n const element = node;\n const tagName = element.tagName.toLowerCase();\n // Remove disallowed tags\n if (!config.allowedTags.includes(tagName)) {\n // Replace disallowed element with its text content\n const fragment = document.createDocumentFragment();\n Array.from(element.childNodes).forEach(child => {\n fragment.appendChild(child.cloneNode(true));\n });\n (_a = element.parentNode) === null || _a === void 0 ? void 0 : _a.replaceChild(fragment, element);\n return;\n }\n // Remove disallowed attributes\n Array.from(element.attributes).forEach(attr => {\n const attrName = attr.name.toLowerCase();\n const isAllowed = config.allowedAttributes.some(allowed => allowed.endsWith(\"*\") ? attrName.startsWith(allowed.slice(0, -1)) : attrName === allowed);\n if (isAllowed) {\n sanitizeAllowedAttr(element, attr, attrName);\n }\n else {\n element.removeAttribute(attr.name);\n }\n });\n // Recursively sanitize children\n const children = Array.from(element.childNodes);\n children.forEach(sanitizeNodeRecursive);\n }\n else if (node.nodeType === Node.TEXT_NODE) {\n // Text nodes are safe, keep them as is\n return;\n }\n };\n sanitizeNodeRecursive(node);\n}\n/**\n * Sanitizes an allowed attribute by removing it if its value is a dangerous protocol.\n * Only works for \"src\" and \"href\" attributes.\n * @param element The element to check for the attribute.\n * @param attr The attribute to check the value of.\n * @param attrName The name of the attribute to check (either \"src\" or \"href\").\n */\nfunction sanitizeAllowedAttr(element, attr, attrName) {\n if (attrName !== \"src\" && attrName !== \"href\")\n return;\n const value = attr.value.toLowerCase();\n // sonar typescript:S1523 - This is security detection, not execution\n const isDangerousProtocol = value.startsWith(\"javascript:\") ||\n value.startsWith(\"vbscript:\") ||\n (value.startsWith(\"data:\") && !value.startsWith(\"data:image/\"));\n if (isDangerousProtocol) {\n element.removeAttribute(attr.name);\n }\n}\n;\n/**\n * Checks if the given string is a valid numeric value.\n *\n * A valid numeric value is a `string` that starts with an optional plus or minus sign,\n * followed by one or more digits, optionally followed by a decimal point and\n * one or more digits.\n *\n * Examples of valid numeric values include \"123\", \"-123\", \"+123.45\", \"-123.45\", etc.\n * Examples of invalid numeric values include \"abc\", \"123abc\", \"123.abc\", etc.\n * @param {string | number} value The string or number to check for being a valid numeric value.\n * @returns {boolean} `true` if the string contains a valid numeric value, `false` otherwise.\n */\nexport function isNumeric(value) {\n return /^[+-]?\\d+(\\.\\d+)?$/.test(value.toString().trim());\n}\n","export var PlacementOptions;\n(function (PlacementOptions) {\n PlacementOptions[\"TOP\"] = \"top\";\n PlacementOptions[\"BOTTOM\"] = \"bottom\";\n PlacementOptions[\"LEFT\"] = \"left\";\n PlacementOptions[\"RIGHT\"] = \"right\";\n})(PlacementOptions || (PlacementOptions = {}));\n","import { isNumeric, sanitize, SanitizeMode } from \"./Tools\";\nimport { PlacementOptions, } from \"./OptionResolver.types\";\n/**\n * OptionResolver is responsible for reading HTML attributes and user options\n * to build a complete ToggleOptions object.\n * It also handles deprecated options.\n */\nexport class OptionResolver {\n /**\n * Gets a sanitized attribute value from an HTML element\n * @param element HTMLInputElement to read\n * @param attrName Attribute name\n * @param options method options\n * @param options.sanitized Flag to indicate if the sanitized mode needs to be used (default: `TEXT`)\n * @returns Sanitized attribute value or null\n */\n static getAttr(element, attrName, opts) {\n const { sanitized = SanitizeMode.TEXT } = opts !== null && opts !== void 0 ? opts : {};\n const value = element.getAttribute(attrName);\n return sanitize(value, { mode: sanitized });\n ;\n }\n /**\n * Returns the value of an attribute, user-provided value, or default value\n * @param element HTMLInputElement to read\n * @param attrName Attribute name\n * @param userValue Value provided by the user\n * @param defaultValue Default value if neither attribute nor user value exists\n * @param sanitized Flag to indicate if the sanitized mode needs to be used (default: `TEXT`)\n * @returns Final attribute value\n */\n static getAttrOrDefault(element, attrName, userValue, defaultValue, sanitized = SanitizeMode.TEXT) {\n const sanitizedUserValue = typeof userValue === \"string\" ? sanitize(userValue, { mode: sanitized }) : userValue;\n return OptionResolver.getAttr(element, attrName, { sanitized }) ||\n sanitizedUserValue ||\n defaultValue;\n }\n /**\n * Returns the value of an attribute, user-provided value, or marks as deprecated\n * @param element HTMLInputElement to read\n * @param attrName Attribute name\n * @param userValue Value provided by the user\n * @param sanitized Flag to indicate if the sanitized mode needs to be used (default: `TEXT`)\n * @returns Final attribute value or DeprecationConfig.value if not found\n */\n static getAttrOrDeprecation(element, attrName, userValue, sanitized = SanitizeMode.TEXT) {\n const sanitizedUserValue = typeof userValue === \"string\" ? sanitize(userValue, { mode: sanitized }) : userValue;\n return OptionResolver.getAttr(element, attrName, { sanitized }) ||\n sanitizedUserValue ||\n DeprecationConfig.value;\n }\n /**\n * Resolves all toggle options from the element and user options\n * @param element HTMLInputElement representing the toggle\n * @param userOptions Options provided by the user\n * @returns Complete ToggleOptions object\n */\n static resolve(element, userOptions = {}) {\n var _a;\n const options = {\n onlabel: this.getAttrOrDeprecation(element, \"data-onlabel\", userOptions.onlabel, SanitizeMode.HTML),\n offlabel: this.getAttrOrDeprecation(element, \"data-offlabel\", userOptions.offlabel, SanitizeMode.HTML),\n onstyle: this.getAttrOrDefault(element, \"data-onstyle\", userOptions.onstyle, OptionResolver.DEFAULT.onstyle),\n offstyle: this.getAttrOrDefault(element, \"data-offstyle\", userOptions.offstyle, OptionResolver.DEFAULT.offstyle),\n onvalue: this.getAttr(element, \"value\") || this.getAttrOrDefault(element, \"data-onvalue\", userOptions.onvalue, OptionResolver.DEFAULT.onvalue),\n offvalue: this.getAttrOrDefault(element, \"data-offvalue\", userOptions.offvalue, OptionResolver.DEFAULT.offvalue),\n ontitle: this.getAttrOrDefault(element, \"data-ontitle\", userOptions.ontitle, OptionResolver.getAttr(element, \"title\") ||\n OptionResolver.DEFAULT.ontitle),\n offtitle: this.getAttrOrDefault(element, \"data-offtitle\", userOptions.offtitle, OptionResolver.getAttr(element, \"title\") ||\n OptionResolver.DEFAULT.offtitle),\n size: this.getAttrOrDefault(element, \"data-size\", userOptions.size, this.DEFAULT.size),\n style: this.getAttrOrDefault(element, \"data-style\", userOptions.style, this.DEFAULT.style),\n width: this.getAttrOrDefault(element, \"data-width\", userOptions.width, this.DEFAULT.width),\n height: this.getAttrOrDefault(element, \"data-height\", userOptions.height, this.DEFAULT.height),\n tabindex: Number(this.getAttrOrDefault(element, \"tabindex\", userOptions.tabindex, this.DEFAULT.tabindex)),\n tristate: element.hasAttribute(\"tristate\") ||\n userOptions.tristate ||\n OptionResolver.DEFAULT.tristate,\n name: this.getAttrOrDefault(element, \"name\", userOptions.name, this.DEFAULT.name),\n aria: {\n label: this.getAttrOrDefault(element, \"aria-label\", (_a = userOptions.aria) === null || _a === void 0 ? void 0 : _a.label, this.DEFAULT.aria.label),\n },\n tooltip: OptionResolver.resolveTooltipOptions(element, userOptions),\n };\n if (options.width && isNumeric(options.width))\n options.width = `${options.width}px`;\n if (options.height && isNumeric(options.height))\n options.height = `${options.height}px`;\n DeprecationConfig.handle(options, element, userOptions);\n return options;\n }\n /**\n * Resolve tooltip options from element attributes and user options.\n * @param element HTMLInputElement representing the toggle\n * @param userOptions Options provided by the user\n * @returns Resolved tooltip options or undefined if not found.\n */\n static resolveTooltipOptions(element, userOptions) {\n var _a, _b, _c, _d;\n const getTitle = (attr, userOption) => this.getAttrOrDefault(element, attr, userOption, null, SanitizeMode.HTML) || this.getAttr(element, \"data-tooltip-title\", { sanitized: SanitizeMode.HTML });\n const titleOn = getTitle(\"data-tooltip-title-on\", (_a = userOptions.tooltip) === null || _a === void 0 ? void 0 : _a.title.on);\n const titleOff = getTitle(\"data-tooltip-title-off\", (_b = userOptions.tooltip) === null || _b === void 0 ? void 0 : _b.title.off);\n const titleMixed = getTitle(\"data-tooltip-title-mixed\", (_c = userOptions.tooltip) === null || _c === void 0 ? void 0 : _c.title.mixed);\n if (!titleOn || !titleOff)\n return OptionResolver.DEFAULT.tooltip;\n const placement = this.getAttrOrDefault(element, \"data-tooltip-placement\", (_d = userOptions.tooltip) === null || _d === void 0 ? void 0 : _d.placement, PlacementOptions.TOP);\n return {\n placement: Object.values(PlacementOptions).includes(placement) ? placement : PlacementOptions.TOP,\n title: {\n on: titleOn,\n off: titleOff,\n mixed: titleMixed !== null && titleMixed !== void 0 ? titleMixed : undefined,\n },\n };\n }\n}\n/** Default values for all toggle options */\nOptionResolver.DEFAULT = {\n onlabel: \"On\",\n onstyle: \"primary\",\n onvalue: null,\n ontitle: null,\n offlabel: \"Off\",\n offstyle: \"secondary\",\n offvalue: null,\n offtitle: null,\n size: \"\",\n style: \"\",\n width: null,\n height: null,\n tabindex: 0,\n tristate: false,\n name: null,\n aria: { label: \"Toggle\", },\n tooltip: undefined,\n};\n/** Types of deprecation source */\nvar OptionType;\n(function (OptionType) {\n OptionType[\"ATTRIBUTE\"] = \"attribute\";\n OptionType[\"OPTION\"] = \"option\";\n})(OptionType || (OptionType = {}));\n/**\n * Handles deprecated attributes and options for Bootstrap Toggle.\n */\nclass DeprecationConfig {\n /**\n * Processes deprecated options and attributes and logs warnings\n * @param options ToggleOptions object to update\n * @param element HTMLInputElement to read deprecated attributes from\n * @param userOptions UserOptions provided by the user\n */\n static handle(options, element, userOptions) {\n this.deprecatedOptions.forEach(({ currentOpt, deprecatedAttr, deprecatedOpt, mode }) => {\n if (options[currentOpt] === DeprecationConfig.value) {\n const deprecatedAttrSanitized = sanitize(element.getAttribute(deprecatedAttr), { mode });\n if (deprecatedAttrSanitized) {\n this.log(OptionType.ATTRIBUTE, deprecatedAttr, `data-${currentOpt}`);\n options[currentOpt] = deprecatedAttrSanitized;\n }\n else if (userOptions[deprecatedOpt]) {\n this.log(OptionType.OPTION, deprecatedOpt, currentOpt);\n options[currentOpt] = userOptions[deprecatedOpt];\n }\n else {\n options[currentOpt] = OptionResolver.DEFAULT[currentOpt];\n }\n }\n });\n }\n /**\n * Logs a deprecation warning to the console\n * @param type Source of the deprecated option (ATTRIBUTE | OPTION)\n * @param oldLabel Deprecated attribute or option name\n * @param newLabel Recommended replacement option name\n */\n static log(type, oldLabel, newLabel) {\n console.warn(`Bootstrap Toggle deprecation warning: Using ${oldLabel} ${type} is deprecated. Use ${newLabel} instead.`);\n }\n}\n/** Unique string used to detect deprecated placeholders */\nDeprecationConfig.value = \"BOOTSTRAP TOGGLE DEPRECATION CHECK -- a0Jhux0QySypjjs4tLtEo8xT2kx0AbYaq9K6mgNjWSs0HF0L8T8J0M0o3Kr7zkm7 --\";\n/** Mapping of current option, deprecated attribute, and deprecated user option */\nDeprecationConfig.deprecatedOptions = [\n {\n currentOpt: \"onlabel\",\n deprecatedAttr: \"data-on\",\n deprecatedOpt: \"on\",\n mode: SanitizeMode.HTML\n },\n {\n currentOpt: \"offlabel\",\n deprecatedAttr: \"data-off\",\n deprecatedOpt: \"off\",\n mode: SanitizeMode.HTML\n },\n];\n","var ToggleEvents;\n(function (ToggleEvents) {\n ToggleEvents[\"ON\"] = \"toggle:on\";\n ToggleEvents[\"OFF\"] = \"toggle:off\";\n ToggleEvents[\"MIXED\"] = \"toggle:mixed\";\n ToggleEvents[\"ENABLED\"] = \"toggle:enabled\";\n ToggleEvents[\"DISABLED\"] = \"toggle:disabled\";\n ToggleEvents[\"READONLY\"] = \"toggle:readonly\";\n})(ToggleEvents || (ToggleEvents = {}));\nexport default ToggleEvents;\n","import { ToggleStateStatus, ToggleStateValue, } from \"./StateReducer.types\";\nexport class DOMBuilder {\n /**\n * Initializes a new instance of the DOMBuilder class.\n * This renders the toggle if the parent element is visible, otherwise defers rendering until it becomes visible.\n * @param checkbox HTMLInputElement element representing the toggle.\n * @param options ToggleOptions object containing options for the toggle.\n * @param state ToggleState object containing the initial state of the toggle.\n */\n constructor(checkbox, options, state) {\n this.isBuilt = false;\n this.lastState = state;\n this.onStyle = `btn-${options.onstyle}`;\n this.offStyle = `btn-${options.offstyle}`;\n this.name = options.name;\n this.checkbox = checkbox;\n if (options.onvalue)\n this.checkbox.value = options.onvalue;\n this.invCheckbox = options.offvalue\n ? this.createInvCheckbox(options.offvalue)\n : null;\n this.sizeClass = DOMBuilder.sizeResolver(options.size);\n this.toggleOn = this.createToggleSpan(options.onlabel, this.onStyle, options.ontitle);\n this.toggleOff = this.createToggleSpan(options.offlabel, this.offStyle, options.offtitle);\n this.toggleHandle = this.createToggleHandle();\n this.toggleGroup = this.createToggleGroup();\n this.toggle = document.createElement(\"div\");\n if (options.tooltip) {\n this.tooltipLabels = options.tooltip.title;\n }\n if (this.isVisible()) {\n this.renderToggle(options);\n this.render(state);\n }\n else {\n this.deferRender(options);\n }\n }\n /**\n * Checks if the parent element of the checkbox is visible.\n * A parent element is considered visible if its `offsetWidth` and `offsetHeight` are greater than `0`.\n * @returns boolean indicating whether the parent element is visible or not.\n */\n isVisible() {\n const parent = this.checkbox.parentElement;\n return !!parent && parent.offsetWidth > 0 && parent.offsetHeight > 0;\n }\n /**\n * Defer rendering the toggle until the parent element is visible.\n * It does this by observing the parent element's bounding rectangle and only rendering the toggle once the width and height of the bounding rectangle are greater than 0.\n * @param options ToggleOptions object containing options for the toggle.\n */\n deferRender(options) {\n this.resizeObserver = new ResizeObserver(entries => {\n if (this.isBuilt) {\n this.resizeObserver.disconnect();\n return;\n }\n for (const entry of entries) {\n if (entry.contentRect.width > 0 && entry.contentRect.height > 0) {\n this.renderToggle(options);\n this.render(this.lastState);\n this.isBuilt = true;\n this.resizeObserver.disconnect();\n return;\n }\n }\n });\n this.resizeObserver.observe(this.checkbox.parentElement);\n }\n /**\n * Resolves the size class for the toggle based on the provided size.\n * If size is not provided or is invalid, returns an empty string.\n * @param size ToggleSize value representing the size of the toggle.\n * @returns string representing the size class for the toggle.\n */\n static sizeResolver(size) {\n var _a;\n const sizeMap = {\n large: \"btn-lg\",\n lg: \"btn-lg\",\n small: \"btn-sm\",\n sm: \"btn-sm\",\n mini: \"btn-xs\",\n xs: \"btn-xs\",\n };\n return (_a = sizeMap[size]) !== null && _a !== void 0 ? _a : \"\";\n }\n /**\n * Creates an inverted checkbox element that is used in the toggle.\n * This checkbox is used to create the toggle's \"off\" state.\n * @param offValue The value of the checkbox when the toggle is in the \"off\" state.\n * @returns An HTMLInputElement representing the inverted checkbox element.\n */\n createInvCheckbox(offValue) {\n const invCheckbox = this.checkbox.cloneNode(true);\n invCheckbox.value = offValue;\n invCheckbox.dataset.toggle = \"invert-toggle\";\n invCheckbox.removeAttribute(\"id\");\n return invCheckbox;\n }\n /**\n * Renders the toggle element and its children.\n * Sets the class attribute of the toggle with the provided style and size class.\n * Sets the tabindex attribute of the toggle with the provided tabindex.\n * Inserts the toggle element before the original checkbox element.\n * Appends the checkbox, inverted checkbox (if exists) and toggle group elements to the toggle element.\n * Handles the toggle size by setting the width and height attributes of the toggle element.\n * @param options - ToggleOptions object containing the style, width, height and tabindex for the toggle.\n */\n renderToggle({ style, width, height, tabindex, aria, tooltip, }) {\n var _a;\n this.toggle.className = `toggle btn ${this.sizeClass} ${style}`;\n this.toggle.dataset.toggle = \"toggle\";\n this.toggle.tabIndex = tabindex;\n this.toggle.role = \"switch\";\n this.checkbox.tabIndex = -1;\n if (this.invCheckbox)\n this.invCheckbox.tabIndex = -1;\n (_a = this.checkbox.parentElement) === null || _a === void 0 ? void 0 : _a.insertBefore(this.toggle, this.checkbox);\n this.toggle.appendChild(this.checkbox);\n if (this.invCheckbox)\n this.toggle.appendChild(this.invCheckbox);\n this.toggle.appendChild(this.toggleGroup);\n this.handleLabels(aria);\n this.handleToggleSize(width, height);\n if (tooltip)\n this.createTooltip(tooltip);\n this.isBuilt = true;\n }\n /**\n * Creates a div element representing the toggle group.\n * The toggle group contains the on, off, and handle elements of the toggle.\n * @returns An HTMLElement representing the toggle group element.\n */\n createToggleGroup() {\n const toggleGroup = document.createElement(\"div\");\n toggleGroup.className = \"toggle-group\";\n toggleGroup.appendChild(this.toggleOn);\n toggleGroup.appendChild(this.toggleOff);\n toggleGroup.appendChild(this.toggleHandle);\n return toggleGroup;\n }\n /**\n * Creates a span element representing a toggle option (on/off).\n * The span element is given a class attribute with the provided style and size class.\n * The innerHTML of the span element is set to the provided label.\n * If a title is provided, the span element is given a title attribute with the provided title.\n * @param label The text to be displayed in the toggle option.\n * @param style The style of the toggle option (primary, secondary, etc.).\n * @param title The title of the toggle option.\n * @returns An HTMLElement representing the toggle option element.\n */\n createToggleSpan(label, style, title) {\n const toggleSpan = document.createElement(\"span\");\n toggleSpan.className = `btn ${this.sizeClass} ${style}`;\n toggleSpan.innerHTML = label;\n if (title)\n toggleSpan.title = title;\n return toggleSpan;\n }\n /**\n * Creates a span element representing the toggle handle.\n * The span element is given a class attribute with the provided size class.\n * @returns An HTMLElement representing the toggle handle element.\n */\n createToggleHandle() {\n const toggleHandle = document.createElement(\"span\");\n toggleHandle.className = `toggle-handle btn ${this.sizeClass}`;\n return toggleHandle;\n }\n /**\n * Sets the width and height of the toggle element.\n * If a width or height is not provided, the toggle element will be given a minimum width and height\n * that is calculated based on the size of the toggle on and off options.\n * @param width The width of the toggle element.\n * @param height The height of the toggle element.\n */\n handleToggleSize(width, height) {\n this.cancelPendingAnimationFrame();\n if (typeof requestAnimationFrame === \"function\") {\n this.requestAnimationFrameId = requestAnimationFrame(() => {\n try {\n this.calculateToggleSize(width, height);\n }\n catch (error) {\n console.warn(\"Error calculating toggle size:\", error);\n }\n });\n }\n else {\n // Fallback if requestAnimationFrame is not supported\n this.calculateToggleSize(width, height);\n }\n }\n calculateToggleSize(width, height) {\n if (width) {\n this.toggle.style.width = width;\n }\n else {\n this.toggle.style.minWidth = \"100px\"; // First approach for better calculation\n this.toggle.style.minWidth = `${Math.max(this.toggleOn.getBoundingClientRect().width, this.toggleOff.getBoundingClientRect().width) +\n this.toggleHandle.getBoundingClientRect().width / 2}px`;\n }\n if (height) {\n this.toggle.style.height = height;\n }\n else {\n this.toggle.style.minHeight = \"36px\"; // First approach for better calculation\n this.toggle.style.minHeight = `${Math.max(this.toggleOn.getBoundingClientRect().height, this.toggleOff.getBoundingClientRect().height)}px`;\n }\n // B: Apply on/off class\n this.toggleOn.classList.add(\"toggle-on\");\n this.toggleOff.classList.add(\"toggle-off\");\n // C: Finally, set lineHeight if needed\n if (height) {\n this.toggleOn.style.lineHeight = DOMBuilder.calcH(this.toggleOn) + \"px\";\n this.toggleOff.style.lineHeight = DOMBuilder.calcH(this.toggleOff) + \"px\";\n }\n }\n /**\n * Calculates the height of the toggle element that should be used for the line-height property.\n * This calculation is used when the toggle element is given a height that is not explicitly set.\n * The calculation takes into account the height of the toggle element, the border-top and border-bottom widths,\n * and the padding-top and padding-bottom of the toggle element.\n * @param toggleSpan The HTMLElement that represents the toggle element.\n * @returns The height of the toggle element that should be used for the line-height property.\n */\n static calcH(toggleSpan) {\n const styles = globalThis.window.getComputedStyle(toggleSpan);\n const height = toggleSpan.offsetHeight;\n const borderTopWidth = Number.parseFloat(styles.borderTopWidth);\n const borderBottomWidth = Number.parseFloat(styles.borderBottomWidth);\n const paddingTop = Number.parseFloat(styles.paddingTop);\n const paddingBottom = Number.parseFloat(styles.paddingBottom);\n return (height - borderBottomWidth - borderTopWidth - paddingTop - paddingBottom);\n }\n /**\n * Cancels any pending animation frame request if one exists.\n * This is used to prevent unnecessary calculations when the toggle size is being changed.\n */\n cancelPendingAnimationFrame() {\n if (this.requestAnimationFrameId !== undefined && typeof cancelAnimationFrame === \"function\") {\n cancelAnimationFrame(this.requestAnimationFrameId);\n this.requestAnimationFrameId = undefined;\n }\n }\n /**\n * Handles the aria-labelledby and aria-label attributes of the toggle element.\n * If the checkbox element has a labels property and the length of the labels property is greater than 0,\n * the aria-labelledby attribute of the toggle element is set to the id of the labels elements.\n * Otherwise, the aria-label attribute of the toggle element is set to the label property of the ariaOpts object.\n * @param {AriaToggleOptions} ariaOpts - The object containing the label property to be used for the aria-label attribute.\n */\n handleLabels(ariaOpts) {\n var _a;\n if ((_a = this.checkbox.labels) === null || _a === void 0 ? void 0 : _a.length) {\n const ids = Array.from(this.checkbox.labels)\n .map(l => l.id)\n .filter(Boolean);\n if (ids.length) {\n this.toggle.setAttribute(\"aria-labelledby\", ids.join(\" \"));\n }\n }\n else {\n this.toggle.setAttribute(\"aria-label\", ariaOpts.label);\n }\n }\n /**\n * Creates a tooltip for the toggle element.\n * If the tooltip is successfully created, it is stored in the `tooltip` property of the DOMBuilder instance.\n * @param {TooltipOptions} tooltip - The options for the tooltip.\n */\n createTooltip(tooltip) {\n try {\n this.tooltip = new globalThis.window.bootstrap.Tooltip(this.toggle, { placement: tooltip.placement, html: true, title: tooltip.title.on });\n }\n catch (error) {\n console.error(\"Error creating tooltip:\", error);\n }\n }\n /**\n * Renders the toggle element based on the provided state if the toggle is already built.\n * This method should be called whenever the state of the toggle changes.\n * @param {ToggleState} state The state of the toggle element.\n */\n render(state) {\n this.lastState = state;\n if (!this.isBuilt)\n return;\n this.updateToggleByValue(state);\n this.updateToggleByChecked(state);\n this.updateToggleByState(state);\n this.updateAria(state);\n this.updateTooltip(state);\n }\n /**\n * Updates the class of the toggle element based on the provided state.\n * Removes any existing on/off/indeterminate classes and adds the appropriate class based on the state.\n * If the state is indeterminate, adds the 'indeterminate' class and either the on or off class based on the checked attribute.\n * @param {ToggleState} state The state of the toggle element.\n */\n updateToggleByValue(state) {\n this.toggle.classList.remove(this.onStyle, this.offStyle, \"off\", \"indeterminate\");\n switch (state.value) {\n case ToggleStateValue.ON:\n this.toggle.classList.add(this.onStyle);\n break;\n case ToggleStateValue.OFF:\n this.toggle.classList.add(this.offStyle, \"off\");\n break;\n case ToggleStateValue.MIXED:\n this.toggle.classList.add(\"indeterminate\");\n if (state.checked) {\n this.toggle.classList.add(this.onStyle);\n }\n else {\n this.toggle.classList.add(this.offStyle, \"off\");\n }\n break;\n }\n }\n /**\n * Updates the toggle element based on the provided state.\n * Calls {@link DOMBuilder.updateCheckboxByChecked} and {@link DOMBuilder.updateInvCheckboxByChecked} to update the checkbox and inverted checkbox elements respectively.\n * @param {ToggleState} state The state of the toggle element.\n */\n updateToggleByChecked(state) {\n this.updateCheckboxByChecked(state);\n this.updateInvCheckboxByChecked(state);\n }\n /**\n * Updates the checkbox element based on the provided state.\n * Sets the checked attribute of the checkbox based on the state's checked attribute.\n * Sets the disabled and readonly attributes of the checkbox based on the state's status.\n * Adds or removes the 'disabled' class from the toggle element based on the state's status.\n * @param {ToggleState} state The state of the toggle element.\n */\n updateCheckboxByChecked(state) {\n this.checkbox.checked = state.checked;\n switch (state.status) {\n case ToggleStateStatus.ENABLED:\n this.checkbox.disabled = false;\n this.checkbox.readOnly = false;\n this.toggle.classList.remove(\"disabled\");\n this.toggle.removeAttribute(\"disabled\");\n break;\n case ToggleStateStatus.DISABLED:\n this.checkbox.disabled = true;\n this.checkbox.readOnly = false;\n this.toggle.classList.add(\"disabled\");\n this.toggle.setAttribute(\"disabled\", \"\");\n break;\n case ToggleStateStatus.READONLY:\n this.checkbox.disabled = false;\n this.checkbox.readOnly = true;\n this.toggle.classList.add(\"disabled\");\n this.toggle.setAttribute(\"disabled\", \"\");\n break;\n }\n }\n /**\n * Updates the inverted checkbox element based on the provided state.\n * Sets the checked attribute of the inverted checkbox to the opposite of the state's checked attribute.\n * Sets the disabled and readonly attributes of the inverted checkbox based on the state's status.\n * @param {ToggleState} state The state of the toggle element.\n */\n updateInvCheckboxByChecked(state) {\n if (!this.invCheckbox)\n return;\n this.invCheckbox.checked = !state.checked;\n switch (state.status) {\n case ToggleStateStatus.ENABLED:\n this.invCheckbox.disabled = false;\n this.invCheckbox.readOnly = false;\n break;\n case ToggleStateStatus.DISABLED:\n this.invCheckbox.disabled = true;\n this.invCheckbox.readOnly = false;\n break;\n case ToggleStateStatus.READONLY:\n this.invCheckbox.disabled = false;\n this.invCheckbox.readOnly = true;\n break;\n }\n }\n /**\n * Updates the indeterminate attribute of the checkbox and inverted checkbox elements based on the provided state.\n * If the state is indeterminate, sets the indeterminate attribute of the checkbox and inverted checkbox to true and removes the name attribute.\n * If the state is not indeterminate, sets the indeterminate attribute of the checkbox and inverted checkbox to false and sets the name attribute to the provided name.\n * @param {ToggleState} state The state of the toggle element.\n */\n updateToggleByState(state) {\n if (state.indeterminate) {\n this.checkbox.indeterminate = true;\n this.checkbox.removeAttribute(\"name\");\n if (this.invCheckbox)\n this.invCheckbox.indeterminate = true;\n if (this.invCheckbox)\n this.invCheckbox.removeAttribute(\"name\");\n }\n else {\n this.checkbox.indeterminate = false;\n if (this.name)\n this.checkbox.name = this.name;\n if (this.invCheckbox)\n this.invCheckbox.indeterminate = false;\n if (this.invCheckbox && this.name)\n this.invCheckbox.name = this.name;\n }\n }\n /**\n * Updates the aria attributes of the toggle element based on the provided state.\n * Sets aria-checked to \"mixed\" if the state is indeterminate, otherwise sets it to the string representation of the state's checked attribute.\n * Sets aria-disabled to the string representation of whether the state's status is disabled.\n * Sets aria-readonly to the string representation of whether the state's status is readonly.\n * @param {ToggleState} state The state of the toggle element.\n */\n updateAria(state) {\n if (state.indeterminate) {\n this.toggle.setAttribute(\"aria-checked\", \"mixed\");\n }\n else {\n this.toggle.setAttribute(\"aria-checked\", String(state.checked));\n }\n this.toggle.setAttribute(\"aria-disabled\", String(state.status === ToggleStateStatus.DISABLED));\n this.toggle.setAttribute(\"aria-readonly\", String(state.status === ToggleStateStatus.READONLY));\n }\n /**\n * Updates the tooltip of the toggle element based on the provided state.\n * Sets the content of the tooltip to the corresponding label based on the state's value.\n * If the tooltip or tooltipLabels are not set, does nothing.\n * @param {ToggleState} state The state of the toggle element.\n */\n updateTooltip(state) {\n if (!this.tooltip || !this.tooltipLabels)\n return;\n switch (state.value) {\n case ToggleStateValue.ON:\n this.tooltip.setContent({ \".tooltip-inner\": this.tooltipLabels.on });\n return;\n case ToggleStateValue.OFF:\n this.tooltip.setContent({ \".tooltip-inner\": this.tooltipLabels.off });\n return;\n case ToggleStateValue.MIXED:\n if (this.tooltipLabels.mixed)\n this.tooltip.setContent({ \".tooltip-inner\": this.tooltipLabels.mixed });\n return;\n }\n }\n /**\n * Returns the root element of the toggle, which is the container of all toggle elements.\n * @returns {HTMLElement} The root element of the toggle.\n */\n get root() {\n return this.toggle;\n }\n /**\n * Destroys the toggle by removing the toggle element from the DOM and\n * inserting the original checkbox element back into its original position.\n * Also disconnects the ResizeObserver if it was used.\n */\n destroy() {\n var _a, _b;\n this.cancelPendingAnimationFrame();\n if (this.tooltip) {\n this.tooltip.dispose();\n this.tooltip = undefined;\n }\n (_a = this.toggle.parentNode) === null || _a === void 0 ? void 0 : _a.insertBefore(this.checkbox, this.toggle);\n this.toggle.remove();\n (_b = this.resizeObserver) === null || _b === void 0 ? void 0 : _b.disconnect();\n this.resizeObserver = undefined;\n this.isBuilt = false;\n }\n}\n","import { ToggleActionType, ToggleStateStatus, ToggleStateValue, } from \"./StateReducer.types\";\nexport class StateReducer {\n /**\n * Constructor for the StateReducer class.\n * @param element The HTMLInputElement which represents the toggle.\n * @param isTristate A boolean indicating whether the toggle is tristate.\n * Initializes the toggle state with the given element and tristate value.\n */\n constructor(element, isTristate) {\n this.isTristate = isTristate;\n this.state = this.getElementState(element);\n }\n /**\n * Retrieves the current state of the toggle based on the HTMLInputElement.\n * The state is determined by the following:\n * - The checked property of the input element\n * - The disabled property of the input element\n * - The readonly property of the input element\n * - The indeterminate property of the input element if the toggle is tristate\n * @returns An object containing the state of the toggle.\n */\n getElementState(element) {\n const checked = element.checked;\n let status;\n if (element.disabled) {\n status = ToggleStateStatus.DISABLED;\n }\n else if (element.readOnly) {\n status = ToggleStateStatus.READONLY;\n }\n else {\n status = ToggleStateStatus.ENABLED;\n }\n const indeterminate = this.isTristate && element.indeterminate;\n let value;\n if (indeterminate) {\n value = ToggleStateValue.MIXED;\n }\n else if (checked) {\n value = ToggleStateValue.ON;\n }\n else {\n value = ToggleStateValue.OFF;\n }\n return {\n value,\n checked,\n status,\n indeterminate,\n };\n }\n /**\n * Get the current toggle state.\n * @returns An immutable copy of the current toggle state.\n */\n get() {\n return Object.freeze(Object.assign({}, this.state));\n }\n /**\n * Determines whether the toggle is enabled and can be interacted with.\n * @returns True if the toggle is enabled and can be interacted with, false otherwise.\n */\n canInteract() {\n return this.state.status === ToggleStateStatus.ENABLED;\n }\n /**\n * Synchronizes the internal state of the toggle with the provided HTMLInputElement.\n * This method is useful when you need to update the internal state of the toggle\n * manually, such as when the toggle is updated programmatically.\n * @param element The HTMLInputElement to synchronize the toggle state with.\n */\n sync(element) {\n this.state = this.getElementState(element);\n }\n /**\n * Apply a toggle action to the toggle state.\n * @param action The toggle action to apply.\n * @returns A boolean indicating whether the action was successful.\n * If the toggle is disabled, any action execpect {@code ToggleActionType.ENABLE} will return {@code false}.\n * If the toggle is currently in the target state of the action, the action will return {@code false}.\n * If the toggle is in the indeterminate state and the action is {@code ToggleActionType.DETERMINATE},\n * the toggle will be set to the checked state.\n * If the action is {@code ToggleActionType.NEXT} :\n * - For a tristate toggle, the toggle will do ON -> INDETERMINATE -> OFF -> INDETERMINATE -> ON.\n * - For a non-tristate toggle, the toggle will do ON -> OFF -> ON.\n */\n do(action) {\n const actionsRequiringInteract = [\n ToggleActionType.ON,\n ToggleActionType.OFF,\n ToggleActionType.TOGGLE,\n ToggleActionType.INDETERMINATE,\n ToggleActionType.DETERMINATE,\n ToggleActionType.NEXT,\n ToggleActionType.READONLY,\n ];\n if (actionsRequiringInteract.includes(action) && !this.canInteract())\n return false;\n switch (action) {\n case ToggleActionType.ON:\n return this.setValueIfChanged(ToggleStateValue.ON, true, false);\n case ToggleActionType.OFF:\n return this.setValueIfChanged(ToggleStateValue.OFF, false, false);\n case ToggleActionType.TOGGLE:\n if (this.state.value === ToggleStateValue.ON)\n return this.do(ToggleActionType.OFF);\n if (this.state.value === ToggleStateValue.OFF)\n return this.do(ToggleActionType.ON);\n return false;\n case ToggleActionType.INDETERMINATE:\n return this.setValueIfChanged(ToggleStateValue.MIXED, undefined, true);\n case ToggleActionType.DETERMINATE:\n if (this.state.value != ToggleStateValue.MIXED)\n return false;\n return this.setValue(this.state.checked ? ToggleStateValue.ON : ToggleStateValue.OFF, this.state.checked, false);\n case ToggleActionType.NEXT:\n return this.doNext();\n case ToggleActionType.DISABLE:\n return this.setStatusIfChanged(ToggleStateStatus.DISABLED);\n case ToggleActionType.ENABLE:\n return this.setStatusIfChanged(ToggleStateStatus.ENABLED);\n case ToggleActionType.READONLY:\n return this.setStatus(ToggleStateStatus.READONLY);\n }\n }\n /**\n * Sets the state of the toggle to the provided value.\n * If checked or indeterminate is provided, sets the corresponding property of the state to the provided value.\n * Otherwise, leaves the property unchanged.\n * @param value The value of the toggle to set.\n * @param checked The checked state of the toggle to set. If not provided, the property is left unchanged.\n * @param indeterminate The indeterminate state of the toggle to set. If not provided, the property is left unchanged.\n * @returns A boolean indicating whether the state was updated.\n */\n setValue(value, checked, indeterminate) {\n this.state = Object.assign(Object.assign({}, this.state), { value, checked: checked !== null && checked !== void 0 ? checked : this.state.checked, indeterminate: indeterminate !== null && indeterminate !== void 0 ? indeterminate : this.state.indeterminate });\n return true;\n }\n /**\n * Sets the state of the toggle to the provided value if the value is different from the current state.\n * If checked or indeterminate is provided, sets the corresponding property of the state to the provided value.\n * Otherwise, leaves the property unchanged.\n * @returns A boolean indicating whether the state was updated.\n */\n setValueIfChanged(value, checked, indeterminate) {\n if (this.state.value === value)\n return false;\n return this.setValue(value, checked, indeterminate);\n }\n /**\n * Sets the status of the toggle to the provided value.\n * @param status The new status of the toggle.\n * @returns A boolean indicating whether the state was updated.\n */\n setStatus(status) {\n this.state = Object.assign(Object.assign({}, this.state), { status });\n return true;\n }\n /**\n * Sets the status of the toggle to the provided value if the value is different from the current status.\n * @param status The new status of the toggle.\n * @returns A boolean indicating whether the state was updated.\n */\n setStatusIfChanged(status) {\n if (this.state.status === status)\n return false;\n return this.setStatus(status);\n }\n /**\n * Applies the next action based on the current state of the toggle.\n * If the toggle is tristate, cycles through the on, off, and indeterminate states.\n * If the toggle is not tristate, cycles through the on and off states.\n * @returns A boolean indicating whether the state was updated.\n */\n doNext() {\n if (this.isTristate) {\n if (this.state.value === ToggleStateValue.ON || this.state.value === ToggleStateValue.OFF) {\n return this.do(ToggleActionType.INDETERMINATE);\n }\n if (this.state.value === ToggleStateValue.MIXED) {\n return this.state.checked\n ? this.do(ToggleActionType.OFF)\n : this.do(ToggleActionType.ON);\n }\n }\n else {\n return this.state.value === ToggleStateValue.ON\n ? this.do(ToggleActionType.OFF)\n : this.do(ToggleActionType.ON);\n }\n return false;\n }\n}\n","export var ToggleMethods;\n(function (ToggleMethods) {\n ToggleMethods[\"ON\"] = \"on\";\n ToggleMethods[\"OFF\"] = \"off\";\n ToggleMethods[\"TOGGLE\"] = \"toggle\";\n ToggleMethods[\"DETERMINATE\"] = \"determinate\";\n ToggleMethods[\"INDETERMINATE\"] = \"indeterminate\";\n ToggleMethods[\"ENABLE\"] = \"enable\";\n ToggleMethods[\"DISABLE\"] = \"disable\";\n ToggleMethods[\"READONLY\"] = \"readonly\";\n ToggleMethods[\"DESTROY\"] = \"destroy\";\n ToggleMethods[\"RERENDER\"] = \"rerender\";\n})(ToggleMethods || (ToggleMethods = {}));\n","import { DOMBuilder } from \"./core/DOMBuilder\";\nimport { OptionResolver } from \"./core/OptionResolver\";\nimport { StateReducer } from \"./core/StateReducer\";\nimport { ToggleActionType, ToggleStateValue } from \"./core/StateReducer.types\";\nimport ToggleEvents from \"./types/ToggleEvents\";\nexport class Toggle {\n /**\n * Initializes a new instance of the BootstrapToggle class.\n * @param element The HTMLInputElement element which represents the toggle.\n * @param options The options for the toggle.\n * @returns The constructed BootstrapToggle instance.\n */\n constructor(element, options) {\n this.pointer = null;\n this.SCROLL_THRESHOLD = 10;\n this.eventsBound = false;\n this.suppressExternalSync = false;\n this.originalDescriptors = new Map();\n /**\n * Handles the change event of the input element of the toggle.\n * This event listener is responsible for detecting when the input element\n * of the toggle changes its state and triggering the update method to keep the toggle in sync.\n */\n this.onExternalChange = () => {\n this.update();\n };\n this.onFormReset = () => {\n setTimeout(() => this.onExternalChange(), 0);\n };\n /**\n * Handles pointer down events by initiating the toggle action and setting up\n * listeners for pointer movement, release, and cancellation.\n *\n * The method early exits if:\n * - the pointer event is not a primary mouse button click\n * - the toggle cannot be interacted with (`disabled` or `readonly`)\n * @param e The PointerEvent object representing the pointer down event.\n */\n this.onPointerDown = (e) => {\n if (e.pointerType === \"mouse\" && e.button !== 0)\n return;\n if (!this.stateReducer.canInteract())\n return;\n this.pointer = { x: e.clientX, y: e.clientY };\n this.domBuilder.root.addEventListener(\"pointermove\", this.onPointerMove, {\n passive: true,\n });\n this.domBuilder.root.addEventListener(\"pointerup\", this.onPointerUp, {\n passive: true,\n });\n this.domBuilder.root.addEventListener(\"pointercancel\", this.onPointerCancel, { passive: true });\n };\n /**\n * Handles pointer move events by checking the distance moved from the initial pointer down position.\n * If the pointer has moved beyond a certain threshold, the pointer interaction is cancelled.\n *\n * Allows dragging within the width of the toggle but cancels if vertical movement exceeds the scroll threshold.\n * @param e The PointerEvent object representing the pointer move event.\n */\n this.onPointerMove = (e) => {\n const dx = Math.abs(e.clientX - this.pointer.x);\n const dy = Math.abs(e.clientY - this.pointer.y);\n if (dy > this.SCROLL_THRESHOLD || dx > this.domBuilder.root.offsetWidth) {\n this.onPointerCancel();\n }\n };\n /**\n * Handles pointer up events by determining if the pointer interaction\n * should trigger a toggle action based on the distance moved.\n *\n * If the pointer has moved beyond a certain threshold, the pointer interaction is cancelled.\n * Allows dragging within the width of the toggle but cancels if vertical movement exceeds the scroll threshold.\n * Finally, it cleans up by calling the pointer cancel handler.\n *\n * If the pointer event is not a primary mouse button click, the interaction is cancelled.\n * @param e The PointerEvent object representing the pointer up event.\n */\n this.onPointerUp = (e) => {\n if (e.pointerType === \"mouse\" && e.button !== 0) {\n this.onPointerCancel();\n return;\n }\n const dx = Math.abs(e.clientX - this.pointer.x);\n const dy = Math.abs(e.clientY - this.pointer.y);\n if (dy <= this.SCROLL_THRESHOLD && dx <= this.domBuilder.root.offsetWidth) {\n this.apply(ToggleActionType.NEXT);\n }\n this.onPointerCancel();\n };\n /**\n * Cleans up pointer event listeners after a pointer interaction is completed or cancelled.\n *\n * This method removes the `pointermove`, `pointerup`, and `pointercancel` event listeners\n * from the root element of the toggle.\n * However, `pointerdown` listener remains active for future interactions.\n */\n this.onPointerCancel = () => {\n this.domBuilder.root.removeEventListener(\"pointermove\", this.onPointerMove);\n this.domBuilder.root.removeEventListener(\"pointerup\", this.onPointerUp);\n this.domBuilder.root.removeEventListener(\"pointercancel\", this.onPointerCancel);\n };\n this.handlerKeyboardEvent = (e) => {\n if (e.key === \" \" || e.key === \"Enter\") {\n e.preventDefault();\n this.apply(ToggleActionType.NEXT);\n }\n };\n this.handlerLabelEvent = (e) => {\n e.preventDefault();\n this.apply(ToggleActionType.NEXT);\n this.domBuilder.root.focus();\n };\n this.element = element;\n this.userOptions = options;\n this.options = OptionResolver.resolve(element, options);\n this.stateReducer = new StateReducer(element, this.options.tristate);\n this.domBuilder = new DOMBuilder(element, this.options, this.stateReducer.get());\n this.bindEventListeners();\n this.interceptInputProperties();\n this.element.bsToggle = this;\n }\n /**\n * Intercepts the following input properties to detect external changes:\n * - checked\n * - disabled\n * - readonly\n * - indeterminate\n * This method is used to detect changes made to the input element directly,\n * rather than through the BootstrapToggle API. It is used to maintain the\n * state of the toggle in cases where the user changes the input element\n * directly, rather than through the API.\n * @returns void\n */\n interceptInputProperties() {\n const props = [\"checked\", \"disabled\", \"readOnly\", \"indeterminate\"];\n props.forEach((prop) => {\n const descriptor = Object.getOwnPropertyDescriptor(Object.getPrototypeOf(this.element), prop);\n if (!(descriptor === null || descriptor === void 0 ? void 0 : descriptor.set))\n return;\n this.originalDescriptors.set(prop, descriptor);\n Object.defineProperty(this.element, prop, {\n configurable: true,\n get: () => descriptor.get.call(this.element),\n set: (value) => {\n descriptor.set.call(this.element, value);\n if (this.suppressExternalSync)\n return;\n this.onExternalChange();\n },\n });\n });\n }\n /**\n * Restores the original input properties of the toggle element.\n * This method is used to restore the original descriptors of the input properties\n * which were intercepted by the BootstrapToggle to detect external changes.\n * @returns void\n */\n restoreInputProperties() {\n this.originalDescriptors.forEach((descriptor, prop) => {\n Object.defineProperty(this.element, prop, descriptor);\n });\n this.originalDescriptors.clear();\n }\n /**\n * Binds event listeners to the toggle element.\n * This method is called by the constructor and is responsible for\n * binding the following event listeners:\n * - Pointer events (click, touchstart, touchend)\n * - Keyboard events (keydown, keyup)\n * - Label events (click)\n * If the event listeners are already bound (i.e. this.eventsBound is true),\n * this method does nothing.\n * @returns void\n */\n bindEventListeners() {\n if (this.eventsBound)\n return;\n this.bindFormResetListener();\n this.bindPointerEventListener();\n this.bindKeyboardEventListener();\n this.bindLabelEventListener();\n this.eventsBound = true;\n }\n /**\n * Unbinds all event listeners from the toggle element.\n * This method is called by the destructor and is responsible for\n * unbinding the following event listeners:\n * - Pointer events (click, touchstart, touchend)\n * - Keyboard events (keydown, keyup)\n * - Label events (click)\n * If the event listeners are not bound (i.e. this.eventsBound is false),\n * this method does nothing.\n * @returns void\n */\n unbindEventListeners() {\n if (!this.eventsBound)\n return;\n this.unbindFormResetListener();\n this.unbindPointerEventListener();\n this.unbindKeyboardEventListener();\n this.unbindLabelEventListener();\n this.eventsBound = false;\n }\n bindFormResetListener() {\n const form = this.element.form;\n if (!form)\n return;\n form.addEventListener(\"reset\", this.onFormReset);\n }\n unbindFormResetListener() {\n const form = this.element.form;\n if (!form)\n return;\n form.removeEventListener(\"reset\", this.onFormReset);\n }\n /**\n * Binds a pointerdown event listener to the root element of the toggle.\n * The event listener is responsible for handling pointer events (e.g. mouse clicks, touch events)\n * and triggering the toggle's state change when a pointer event occurs.\n * The event listener is bound with the passive option, which means that it will not block\n * other event listeners from being triggered.\n */\n bindPointerEventListener() {\n this.domBuilder.root.addEventListener(\"pointerdown\", this.onPointerDown, {\n passive: true,\n });\n }\n /**\n * Unbinds the pointerdown event listener from the root element of the toggle.\n * This method is responsible for unbinding the pointerdown event listener that was\n * previously bound by the bindPointerEventListener method.\n * If the event listener is not bound (i.e. this.eventsBound is false), this method does nothing.\n * @returns void\n */\n unbindPointerEventListener() {\n this.domBuilder.root.removeEventListener(\"pointerdown\", this.onPointerDown);\n }\n /**\n * Binds a keydown event listener to the root element of the toggle.\n * The event listener is responsible for handling keydown events\n * and triggering the toggle's state change when a keydown event occurs.\n */\n bindKeyboardEventListener() {\n this.domBuilder.root.addEventListener(\"keydown\", this.handlerKeyboardEvent, { passive: false });\n }\n /**\n * Unbinds the keydown event listener from the root element of the toggle.\n * This method is responsible for unbinding the keydown event listener that was\n * previously bound by the bindKeyboardEventListener method.\n * If the event listener is not bound (i.e. this.eventsBound is false), this method does nothing.\n * @returns void\n */\n unbindKeyboardEventListener() {\n this.domBuilder.root.removeEventListener(\"keydown\", this.handlerKeyboardEvent);\n }\n /**\n * Binds a click event listener to all labels that are associated with the toggle's input element.\n * The event listener is responsible for handling click events and triggering the toggle's state change when a click event occurs.\n * The event listener is bound with the passive option set to false, which means that it will block other event listeners from being triggered until it has finished its execution.\n * This method is called by the constructor and is responsible for binding the event listener to the toggle's labels.\n * If the toggle's input element does not have an id (i.e. this.element.id is null or undefined), this method does nothing.\n * @returns void\n */\n bindLabelEventListener() {\n if (this.element.id) {\n document\n .querySelectorAll('label[for=\"' + this.element.id + '\"]')\n .forEach((label) => {\n label.addEventListener(\"click\", this.handlerLabelEvent, {\n passive: false,\n });\n });\n }\n }\n /**\n * Unbinds the click event listener from all labels that are associated with the toggle's input element.\n * This method is responsible for unbinding the event listener that was previously bound by the bindLabelEventListener method.\n * If the toggle's input element does not have an id (i.e. this.element.id is null or undefined), this method does nothing.\n * @returns void\n */\n unbindLabelEventListener() {\n if (this.element.id) {\n document\n .querySelectorAll('label[for=\"' + this.element.id + '\"]')\n .forEach((label) => {\n label.removeEventListener(\"click\", this.handlerLabelEvent);\n });\n }\n }\n /**\n * Applies a toggle action to the toggle state and renders the toggle element.\n * If the action is successful, this method will render the toggle element with the new state.\n * If the silent parameter is false, this method will also trigger the change event.\n * @param action The toggle action to apply.\n * @param silent A boolean indicating whether to trigger the change event after applying the action.\n */\n apply(action, silent = false) {\n if (!this.stateReducer.do(action))\n return;\n this.suppressExternalSync = true;\n try {\n const state = this.stateReducer.get();\n this.domBuilder.render(state);\n if (!silent)\n this.trigger(action, state);\n }\n finally {\n this.suppressExternalSync = false;\n }\n }\n /**\n * Toggles the state of the toggle.\n * If the toggle is currently in the on state, it will be set to the off state.\n * If the toggle is currently in the off state, it will be set to the on state.\n * If the toggle is currently in the indeterminate state, it will be set to the on state.\n * If the silent parameter is false, this method will also trigger the change event.\n * @param silent A boolean indicating whether to trigger the change event after applying the action.\n */\n toggle(silent = false) {\n this.apply(ToggleActionType.TOGGLE, silent);\n }\n /**\n * Sets the toggle state to on.\n * If the silent parameter is false, this method will also trigger the change event.\n * @param silent A boolean indicating whether to trigger the change event after applying the action.\n */\n on(silent = false) {\n this.apply(ToggleActionType.ON, silent);\n }\n /**\n * Sets the toggle state to off.\n * If the silent parameter is false, this method will also trigger the change event.\n * @param silent A boolean indicating whether to trigger the change event after applying the action.\n */\n off(silent = false) {\n this.apply(ToggleActionType.OFF, silent);\n }\n /**\n * Sets the toggle state to indeterminate.\n * If the silent parameter is false, this method will also trigger the change event.\n * @param {boolean} silent A boolean indicating whether to trigger the change event after applying the action.\n */\n indeterminate(silent = false) {\n this.apply(ToggleActionType.INDETERMINATE, silent);\n }\n /**\n * Sets the toggle state to determinate.\n * If the silent parameter is false, this method will also trigger the change event.\n * @param {boolean} silent A boolean indicating whether to trigger the change event after applying the action.\n */\n determinate(silent = false) {\n this.apply(ToggleActionType.DETERMINATE, silent);\n }\n /**\n * Enables the toggle.\n * If the toggle is currently disabled, this method will set the toggle state to enabled.\n * If the silent parameter is false, this method will also trigger the change event.\n * @param {boolean} silent A boolean indicating whether to trigger the change event after applying the action.\n * @returns void\n */\n enable(silent = false) {\n this.apply(ToggleActionType.ENABLE, silent);\n }\n /**\n * Disables the toggle.\n * If the toggle is currently enabled, this method will set the toggle state to disabled.\n * If the silent parameter is false, this method will also trigger the change event.\n * @param {boolean} silent A boolean indicating whether to trigger the change event after applying the action.\n */\n disable(silent = false) {\n this.apply(ToggleActionType.DISABLE, silent);\n }\n /**\n * Sets the toggle state to readonly.\n * If the toggle is currently disabled or enabled, this method will set the toggle state to readonly.\n * If the silent parameter is false, this method will also trigger the change event.\n * @param {boolean} silent A boolean indicating whether to trigger the change event after applying the action.\n * @returns void\n */\n readonly(silent = false) {\n this.apply(ToggleActionType.READONLY, silent);\n }\n /**\n * Synchronizes the toggle state with the input element and renders the toggle.\n */\n update() {\n this.suppressExternalSync = true;\n try {\n this.stateReducer.sync(this.element);\n this.domBuilder.render(this.stateReducer.get());\n }\n finally {\n this.suppressExternalSync = false;\n }\n }\n /**\n * Triggers the change event on the toggle's input element and the appropriate toggle event.\n * This method is called after a toggle action is applied to notify listeners of the state change.\n * @param {ToggleActionType} action The toggle action that was applied.\n * @param {ToggleState} state The state of the toggle once the action was applied.\n */\n trigger(action, state) {\n this.element.dispatchEvent(new Event(\"change\", { bubbles: true }));\n const eventName = this.getEventForAction(action, state);\n const detail = { state: state };\n this.element.dispatchEvent(new CustomEvent(eventName, {\n bubbles: true,\n detail: detail\n }));\n }\n /**\n * Returns the corresponding toggle event for the given toggle action and state.\n * This method is used to determine which toggle event to trigger after a toggle action is applied.\n * @param {ToggleActionType} action The toggle action that was applied.\n * @param {ToggleState} state The previous state of the toggle before the action was applied.\n * @returns {ToggleEvents} The corresponding toggle event for the given toggle action and state.\n */\n getEventForAction(action, state) {\n switch (action) {\n case ToggleActionType.ON:\n return ToggleEvents.ON;\n case ToggleActionType.OFF:\n return ToggleEvents.OFF;\n case ToggleActionType.INDETERMINATE:\n return ToggleEvents.MIXED;\n case ToggleActionType.ENABLE:\n return ToggleEvents.ENABLED;\n case ToggleActionType.DISABLE:\n return ToggleEvents.DISABLED;\n case ToggleActionType.READONLY:\n return ToggleEvents.READONLY;\n case ToggleActionType.DETERMINATE:\n case ToggleActionType.TOGGLE:\n case ToggleActionType.NEXT:\n return this.getValueEvent(state);\n }\n }\n /**\n * Returns the corresponding toggle event for the given toggle state.\n * This method is used to determine which toggle event to trigger after a toggle action is applied.\n * @param {ToggleState} state The previous state of the toggle before the action was applied.\n * @returns {ToggleEvents} The corresponding toggle event for the given toggle state.\n */\n getValueEvent(state) {\n switch (state.value) {\n case ToggleStateValue.ON:\n return ToggleEvents.ON;\n case ToggleStateValue.OFF:\n return ToggleEvents.OFF;\n case ToggleStateValue.MIXED:\n return ToggleEvents.MIXED;\n }\n }\n /**\n * Destroys the toggle element and unbinds all event listeners.\n *This method is useful when you need to remove the toggle element from the DOM.\n *After calling this method, the toggle element will be removed from the DOM and all event listeners will be unbound.\n */\n destroy() {\n this.restoreInputProperties();\n this.unbindEventListeners();\n this.domBuilder.destroy();\n delete this.element.bsToggle;\n }\n /**\n * Rebuilds the toggle component in-place without destroying the current instance.\n *\n * This method is useful when you need to reinitialize the toggle element with the same options,\n * for example after HTML attribute changes or when the DOM structure has been modified externally.\n *\n * The method follows this sequence:\n * 1. Restores original input properties (checked, disabled, readOnly, indeterminate)\n * 2. Unbinds all event listeners (pointer, keyboard, label, form reset)\n * 3. Destroys the DOM builder (removes toggle DOM, restores original checkbox)\n * 4. Re-resolves options from the element and user options\n * 5. Creates a fresh StateReducer with the updated tristate value\n * 6. Builds new toggle DOM structure\n * 7. Re-binds all event listeners\n * 8. Re-intercepts input properties for external change detection\n *\n * Important: The instance identity is preserved (this.element.bsToggle remains unchanged),\n * making it safe for external code that holds references to this instance.\n *\n * @returns void\n */\n rerender() {\n this.restoreInputProperties();\n this.unbindEventListeners();\n this.domBuilder.destroy();\n this.options = OptionResolver.resolve(this.element, this.userOptions);\n this.stateReducer = new StateReducer(this.element, this.options.tristate);\n this.domBuilder = new DOMBuilder(this.element, this.options, this.stateReducer.get());\n this.bindEventListeners();\n this.interceptInputProperties();\n }\n}\n","import { Toggle } from \"./BootstrapToggle\";\r\nimport { default as Events } from \"./types/ToggleEvents\";\r\nimport { ToggleStateValue as StateValue, ToggleStateStatus as StateStatus } from \"./core/StateReducer.types\";\r\nimport { ToggleMethods as Methods } from \"./types/ToggleMethods\";\r\n\r\n+(function ($) {\r\n /**\r\n * Add `BootstrapToggle` prototype function to Window\r\n * Enables execution when used with ECMAScript\r\n */\r\n globalThis.window.BootstrapToggle = globalThis.window.BootstrapToggle || {};\r\n Object.assign(globalThis.window.BootstrapToggle, {Events, Methods, StateValue, StateStatus});\r\n\r\n function Plugin(options, silent) {\r\n const optArg = Array.prototype.slice.call(arguments, 1)[0];\r\n\r\n return ( this ).each(function () {\r\n const $this = $(this);\r\n let _bsToggle = this.bsToggle || new Toggle(this, (options && typeof options !== \"string\") ? options : {});\r\n\r\n if (options && typeof options === \"string\") {\r\n switch (options.toLowerCase()) {\r\n case Methods.TOGGLE:\r\n _bsToggle.toggle(silent);\r\n break;\r\n case Methods.ON:\r\n _bsToggle.on(silent);\r\n break;\r\n case Methods.OFF:\r\n _bsToggle.off(silent);\r\n break;\r\n case Methods.INDETERMINATE:\r\n _bsToggle.indeterminate(silent);\r\n break;\r\n case Methods.DETERMINATE:\r\n _bsToggle.determinate(silent);\r\n break;\r\n case Methods.ENABLE:\r\n _bsToggle.enable(silent);\r\n break;\r\n case Methods.DISABLE:\r\n _bsToggle.disable(silent);\r\n break;\r\n case Methods.READONLY:\r\n _bsToggle.readonly(silent);\r\n break;\r\n case Methods.DESTROY:\r\n _bsToggle.destroy();\r\n break;\r\n case Methods.RERENDER:\r\n _bsToggle.rerender();\r\n break;\r\n }\r\n }\r\n });\r\n }\r\n\r\n let old = $.fn.bootstrapToggle;\r\n\r\n $.fn.bootstrapToggle = Plugin;\r\n $.fn.bootstrapToggle.Constructor = Toggle;\r\n\r\n // TOGGLE NO CONFLICT\r\n // ==================\r\n\r\n $.fn.toggle.noConflict = function () {\r\n $.fn.bootstrapToggle = old;\r\n return this;\r\n };\r\n\r\n /**\r\n * Replace all `input[type=checkbox][data-toggle=\"toggle\"]` inputs with \"Bootstrap-Toggle\"\r\n * Executes once page elements have rendered enabling script to be placed in ``\r\n */\r\n $(function () {\r\n $(\"input[type=checkbox][data-toggle^=toggle]\").bootstrapToggle();\r\n });\r\n})(jQuery);\r\n"],"names":["ToggleStateValue","ToggleStateStatus","ToggleActionType","SanitizeMode","PlacementOptions","OptionType","ToggleEvents","DOMBuilder","constructor","checkbox","options","state","this","isBuilt","lastState","onStyle","onstyle","offStyle","offstyle","name","onvalue","value","invCheckbox","offvalue","createInvCheckbox","sizeClass","sizeResolver","size","toggleOn","createToggleSpan","onlabel","ontitle","toggleOff","offlabel","offtitle","toggleHandle","createToggleHandle","toggleGroup","createToggleGroup","toggle","document","createElement","tooltip","tooltipLabels","title","isVisible","renderToggle","render","deferRender","parent","parentElement","offsetWidth","offsetHeight","resizeObserver","ResizeObserver","entries","disconnect","entry","contentRect","width","height","observe","_a","large","lg","small","sm","mini","xs","offValue","cloneNode","dataset","removeAttribute","style","tabindex","aria","className","tabIndex","role","insertBefore","appendChild","handleLabels","handleToggleSize","createTooltip","label","toggleSpan","innerHTML","cancelPendingAnimationFrame","requestAnimationFrame","requestAnimationFrameId","calculateToggleSize","error","console","warn","minWidth","Math","max","getBoundingClientRect","minHeight","classList","add","lineHeight","calcH","styles","globalThis","window","getComputedStyle","borderTopWidth","Number","parseFloat","borderBottomWidth","paddingTop","paddingBottom","undefined","cancelAnimationFrame","ariaOpts","labels","length","ids","Array","from","map","l","id","filter","Boolean","setAttribute","join","bootstrap","Tooltip","placement","html","on","updateToggleByValue","updateToggleByChecked","updateToggleByState","updateAria","updateTooltip","remove","ON","OFF","MIXED","checked","updateCheckboxByChecked","updateInvCheckboxByChecked","status","ENABLED","disabled","readOnly","DISABLED","READONLY","indeterminate","String","setContent","off","mixed","root","destroy","_b","dispose","parentNode","sanitize","text","opts","mode","HTML","config","allowedTags","allowedAttributes","doc","DOMParser","parseFromString","body","childNodes","forEach","node","sanitizeNodeRecursive","nodeType","Node","ELEMENT_NODE","element","tagName","toLowerCase","includes","fragment","createDocumentFragment","child","replaceChild","attributes","attr","attrName","some","allowed","endsWith","startsWith","slice","sanitizeAllowedAttr","TEXT_NODE","sanitizeNode","sanitizeHTML","TEXT","replace","m","sanitizeText","isNumeric","test","toString","trim","OptionResolver","getAttr","sanitized","getAttribute","getAttrOrDefault","userValue","defaultValue","sanitizedUserValue","getAttrOrDeprecation","DeprecationConfig","resolve","userOptions","DEFAULT","tristate","hasAttribute","resolveTooltipOptions","handle","_c","_d","getTitle","userOption","titleOn","titleOff","titleMixed","TOP","Object","values","deprecatedOptions","currentOpt","deprecatedAttr","deprecatedOpt","deprecatedAttrSanitized","log","ATTRIBUTE","OPTION","type","oldLabel","newLabel","StateReducer","isTristate","getElementState","get","freeze","assign","canInteract","sync","action","TOGGLE","INDETERMINATE","DETERMINATE","NEXT","setValueIfChanged","do","setValue","doNext","DISABLE","setStatusIfChanged","ENABLE","setStatus","ToggleMethods","Events","Toggle","pointer","SCROLL_THRESHOLD","eventsBound","suppressExternalSync","originalDescriptors","Map","onExternalChange","update","onFormReset","setTimeout","onPointerDown","e","pointerType","button","stateReducer","x","clientX","y","clientY","domBuilder","addEventListener","onPointerMove","passive","onPointerUp","onPointerCancel","dx","abs","apply","removeEventListener","handlerKeyboardEvent","key","preventDefault","handlerLabelEvent","focus","bindEventListeners","interceptInputProperties","bsToggle","prop","descriptor","getOwnPropertyDescriptor","getPrototypeOf","set","defineProperty","configurable","call","restoreInputProperties","clear","bindFormResetListener","bindPointerEventListener","bindKeyboardEventListener","bindLabelEventListener","unbindEventListeners","unbindFormResetListener","unbindPointerEventListener","unbindKeyboardEventListener","unbindLabelEventListener","form","querySelectorAll","silent","trigger","determinate","enable","disable","readonly","dispatchEvent","Event","bubbles","eventName","getEventForAction","detail","CustomEvent","getValueEvent","rerender","$","BootstrapToggle","Methods","StateValue","StateStatus","old","fn","bootstrapToggle","prototype","arguments","each","_bsToggle","DESTROY","RERENDER","Constructor","noConflict","jQuery"],"mappings":";;;;;;;;;;;;0FAAO,IAAIA,EAMAC,EAMAC,ECZAC,ECAAC,ECyIPC,ECzIAC,GJCJ,SAAWN,GACPA,EAAqB,GAAI,KACzBA,EAAsB,IAAI,MAC1BA,EAAwB,MAAI,OAC/B,CAJD,CAIGA,IAAqBA,EAAmB,CAAA,IAE3C,SAAWC,GACPA,EAA2B,QAAI,UAC/BA,EAA4B,SAAI,WAChCA,EAA4B,SAAI,UACnC,CAJD,CAIGA,IAAsBA,EAAoB,CAAA,IAE7C,SAAWC,GACPA,EAAuB,KAAI,OAC3BA,EAAqB,GAAI,KACzBA,EAAsB,IAAI,MAC1BA,EAAyB,OAAI,SAC7BA,EAA8B,YAAI,cAClCA,EAAgC,cAAI,gBACpCA,EAA2B,SAAI,WAC/BA,EAA0B,QAAI,UAC9BA,EAAyB,OAAI,QAChC,CAVD,CAUGA,IAAqBA,EAAmB,CAAA,IKtBpC,MAAMK,EAQT,WAAAC,CAAYC,EAAUC,EAASC,GAC3BC,KAAKC,SAAU,EACfD,KAAKE,UAAYH,EACjBC,KAAKG,QAAU,OAAOL,EAAQM,UAC9BJ,KAAKK,SAAW,OAAOP,EAAQQ,WAC/BN,KAAKO,KAAOT,EAAQS,KACpBP,KAAKH,SAAWA,EACZC,EAAQU,UACRR,KAAKH,SAASY,MAAQX,EAAQU,SAClCR,KAAKU,YAAcZ,EAAQa,SACrBX,KAAKY,kBAAkBd,EAAQa,UAC/B,KACNX,KAAKa,UAAYlB,EAAWmB,aAAahB,EAAQiB,MACjDf,KAAKgB,SAAWhB,KAAKiB,iBAAiBnB,EAAQoB,QAASlB,KAAKG,QAASL,EAAQqB,SAC7EnB,KAAKoB,UAAYpB,KAAKiB,iBAAiBnB,EAAQuB,SAAUrB,KAAKK,SAAUP,EAAQwB,UAChFtB,KAAKuB,aAAevB,KAAKwB,qBACzBxB,KAAKyB,YAAczB,KAAK0B,oBACxB1B,KAAK2B,OAASC,SAASC,cAAc,OACjC/B,EAAQgC,UACR9B,KAAK+B,cAAgBjC,EAAQgC,QAAQE,OAErChC,KAAKiC,aACLjC,KAAKkC,aAAapC,GAClBE,KAAKmC,OAAOpC,IAGZC,KAAKoC,YAAYtC,EAEzB,CAMA,SAAAmC,GACI,MAAMI,EAASrC,KAAKH,SAASyC,cAC7B,QAASD,GAAUA,EAAOE,YAAc,GAAKF,EAAOG,aAAe,CACvE,CAMA,WAAAJ,CAAYtC,GACRE,KAAKyC,eAAiB,IAAIC,eAAeC,IACrC,GAAI3C,KAAKC,QACLD,KAAKyC,eAAeG,kBAGxB,IAAK,MAAMC,KAASF,EAChB,GAAIE,EAAMC,YAAYC,MAAQ,GAAKF,EAAMC,YAAYE,OAAS,EAK1D,OAJAhD,KAAKkC,aAAapC,GAClBE,KAAKmC,OAAOnC,KAAKE,WACjBF,KAAKC,SAAU,OACfD,KAAKyC,eAAeG,eAKhC5C,KAAKyC,eAAeQ,QAAQjD,KAAKH,SAASyC,cAC9C,CAOA,mBAAOxB,CAAaC,GAChB,IAAImC,EASJ,OAAgC,QAAxBA,EARQ,CACZC,MAAO,SACPC,GAAI,SACJC,MAAO,SACPC,GAAI,SACJC,KAAM,SACNC,GAAI,UAEazC,cAAmBmC,EAAgBA,EAAK,EACjE,CAOA,iBAAAtC,CAAkB6C,GACd,MAAM/C,EAAcV,KAAKH,SAAS6D,WAAU,GAI5C,OAHAhD,EAAYD,MAAQgD,EACpB/C,EAAYiD,QAAQhC,OAAS,gBAC7BjB,EAAYkD,gBAAgB,MACrBlD,CACX,CAUA,YAAAwB,EAAa2B,MAAEA,EAAKd,MAAEA,EAAKC,OAAEA,EAAMc,SAAEA,EAAQC,KAAEA,EAAIjC,QAAEA,IACjD,IAAIoB,EACJlD,KAAK2B,OAAOqC,UAAY,cAAchE,KAAKa,aAAagD,IACxD7D,KAAK2B,OAAOgC,QAAQhC,OAAS,SAC7B3B,KAAK2B,OAAOsC,SAAWH,EACvB9D,KAAK2B,OAAOuC,KAAO,SACnBlE,KAAKH,SAASoE,UAAW,EACrBjE,KAAKU,cACLV,KAAKU,YAAYuD,UAAW,GACO,QAAtCf,EAAKlD,KAAKH,SAASyC,qBAAkC,IAAPY,GAAyBA,EAAGiB,aAAanE,KAAK2B,OAAQ3B,KAAKH,UAC1GG,KAAK2B,OAAOyC,YAAYpE,KAAKH,UACzBG,KAAKU,aACLV,KAAK2B,OAAOyC,YAAYpE,KAAKU,aACjCV,KAAK2B,OAAOyC,YAAYpE,KAAKyB,aAC7BzB,KAAKqE,aAAaN,GAClB/D,KAAKsE,iBAAiBvB,EAAOC,GACzBlB,GACA9B,KAAKuE,cAAczC,GACvB9B,KAAKC,SAAU,CACnB,CAMA,iBAAAyB,GACI,MAAMD,EAAcG,SAASC,cAAc,OAK3C,OAJAJ,EAAYuC,UAAY,eACxBvC,EAAY2C,YAAYpE,KAAKgB,UAC7BS,EAAY2C,YAAYpE,KAAKoB,WAC7BK,EAAY2C,YAAYpE,KAAKuB,cACtBE,CACX,CAWA,gBAAAR,CAAiBuD,EAAOX,EAAO7B,GAC3B,MAAMyC,EAAa7C,SAASC,cAAc,QAK1C,OAJA4C,EAAWT,UAAY,OAAOhE,KAAKa,aAAagD,IAChDY,EAAWC,UAAYF,EACnBxC,IACAyC,EAAWzC,MAAQA,GAChByC,CACX,CAMA,kBAAAjD,GACI,MAAMD,EAAeK,SAASC,cAAc,QAE5C,OADAN,EAAayC,UAAY,qBAAqBhE,KAAKa,YAC5CU,CACX,CAQA,gBAAA+C,CAAiBvB,EAAOC,GACpBhD,KAAK2E,8BACgC,mBAA1BC,sBACP5E,KAAK6E,wBAA0BD,sBAAsB,KACjD,IACI5E,KAAK8E,oBAAoB/B,EAAOC,EACpC,CACA,MAAO+B,GACHC,QAAQC,KAAK,iCAAkCF,EACnD,IAKJ/E,KAAK8E,oBAAoB/B,EAAOC,EAExC,CACA,mBAAA8B,CAAoB/B,EAAOC,GACnBD,EACA/C,KAAK2B,OAAOkC,MAAMd,MAAQA,GAG1B/C,KAAK2B,OAAOkC,MAAMqB,SAAW,QAC7BlF,KAAK2B,OAAOkC,MAAMqB,SAAW,GAAGC,KAAKC,IAAIpF,KAAKgB,SAASqE,wBAAwBtC,MAAO/C,KAAKoB,UAAUiE,wBAAwBtC,OACzH/C,KAAKuB,aAAa8D,wBAAwBtC,MAAQ,OAEtDC,EACAhD,KAAK2B,OAAOkC,MAAMb,OAASA,GAG3BhD,KAAK2B,OAAOkC,MAAMyB,UAAY,OAC9BtF,KAAK2B,OAAOkC,MAAMyB,UAAY,GAAGH,KAAKC,IAAIpF,KAAKgB,SAASqE,wBAAwBrC,OAAQhD,KAAKoB,UAAUiE,wBAAwBrC,aAGnIhD,KAAKgB,SAASuE,UAAUC,IAAI,aAC5BxF,KAAKoB,UAAUmE,UAAUC,IAAI,cAEzBxC,IACAhD,KAAKgB,SAAS6C,MAAM4B,WAAa9F,EAAW+F,MAAM1F,KAAKgB,UAAY,KACnEhB,KAAKoB,UAAUyC,MAAM4B,WAAa9F,EAAW+F,MAAM1F,KAAKoB,WAAa,KAE7E,CASA,YAAOsE,CAAMjB,GACT,MAAMkB,EAASC,WAAWC,OAAOC,iBAAiBrB,GAC5CzB,EAASyB,EAAWjC,aACpBuD,EAAiBC,OAAOC,WAAWN,EAAOI,gBAIhD,OAAQ/C,EAHkBgD,OAAOC,WAAWN,EAAOO,mBAGdH,EAFlBC,OAAOC,WAAWN,EAAOQ,YACtBH,OAAOC,WAAWN,EAAOS,cAEnD,CAKA,2BAAAzB,QACyC0B,IAAjCrG,KAAK6E,yBAAyE,mBAAzByB,uBACrDA,qBAAqBtG,KAAK6E,yBAC1B7E,KAAK6E,6BAA0BwB,EAEvC,CAQA,YAAAhC,CAAakC,GACT,IAAIrD,EACJ,GAAoC,QAA/BA,EAAKlD,KAAKH,SAAS2G,cAA2B,IAAPtD,SAAyBA,EAAGuD,OAAQ,CAC5E,MAAMC,EAAMC,MAAMC,KAAK5G,KAAKH,SAAS2G,QAChCK,IAAIC,GAAKA,EAAEC,IACXC,OAAOC,SACRP,EAAID,QACJzG,KAAK2B,OAAOuF,aAAa,kBAAmBR,EAAIS,KAAK,KAE7D,MAEInH,KAAK2B,OAAOuF,aAAa,aAAcX,EAAS/B,MAExD,CAMA,aAAAD,CAAczC,GACV,IACI9B,KAAK8B,QAAU,IAAI8D,WAAWC,OAAOuB,UAAUC,QAAQrH,KAAK2B,OAAQ,CAAE2F,UAAWxF,EAAQwF,UAAWC,MAAM,EAAMvF,MAAOF,EAAQE,MAAMwF,IACzI,CACA,MAAOzC,GACHC,QAAQD,MAAM,0BAA2BA,EAC7C,CACJ,CAMA,MAAA5C,CAAOpC,GACHC,KAAKE,UAAYH,EACZC,KAAKC,UAEVD,KAAKyH,oBAAoB1H,GACzBC,KAAK0H,sBAAsB3H,GAC3BC,KAAK2H,oBAAoB5H,GACzBC,KAAK4H,WAAW7H,GAChBC,KAAK6H,cAAc9H,GACvB,CAOA,mBAAA0H,CAAoB1H,GAEhB,OADAC,KAAK2B,OAAO4D,UAAUuC,OAAO9H,KAAKG,QAASH,KAAKK,SAAU,MAAO,iBACzDN,EAAMU,OACV,KAAKrB,EAAiB2I,GAClB/H,KAAK2B,OAAO4D,UAAUC,IAAIxF,KAAKG,SAC/B,MACJ,KAAKf,EAAiB4I,IAClBhI,KAAK2B,OAAO4D,UAAUC,IAAIxF,KAAKK,SAAU,OACzC,MACJ,KAAKjB,EAAiB6I,MAClBjI,KAAK2B,OAAO4D,UAAUC,IAAI,iBACtBzF,EAAMmI,QACNlI,KAAK2B,OAAO4D,UAAUC,IAAIxF,KAAKG,SAG/BH,KAAK2B,OAAO4D,UAAUC,IAAIxF,KAAKK,SAAU,OAIzD,CAMA,qBAAAqH,CAAsB3H,GAClBC,KAAKmI,wBAAwBpI,GAC7BC,KAAKoI,2BAA2BrI,EACpC,CAQA,uBAAAoI,CAAwBpI,GAEpB,OADAC,KAAKH,SAASqI,QAAUnI,EAAMmI,QACtBnI,EAAMsI,QACV,KAAKhJ,EAAkBiJ,QACnBtI,KAAKH,SAAS0I,UAAW,EACzBvI,KAAKH,SAAS2I,UAAW,EACzBxI,KAAK2B,OAAO4D,UAAUuC,OAAO,YAC7B9H,KAAK2B,OAAOiC,gBAAgB,YAC5B,MACJ,KAAKvE,EAAkBoJ,SACnBzI,KAAKH,SAAS0I,UAAW,EACzBvI,KAAKH,SAAS2I,UAAW,EACzBxI,KAAK2B,OAAO4D,UAAUC,IAAI,YAC1BxF,KAAK2B,OAAOuF,aAAa,WAAY,IACrC,MACJ,KAAK7H,EAAkBqJ,SACnB1I,KAAKH,SAAS0I,UAAW,EACzBvI,KAAKH,SAAS2I,UAAW,EACzBxI,KAAK2B,OAAO4D,UAAUC,IAAI,YAC1BxF,KAAK2B,OAAOuF,aAAa,WAAY,IAGjD,CAOA,0BAAAkB,CAA2BrI,GACvB,GAAKC,KAAKU,YAGV,OADAV,KAAKU,YAAYwH,SAAWnI,EAAMmI,QAC1BnI,EAAMsI,QACV,KAAKhJ,EAAkBiJ,QACnBtI,KAAKU,YAAY6H,UAAW,EAC5BvI,KAAKU,YAAY8H,UAAW,EAC5B,MACJ,KAAKnJ,EAAkBoJ,SACnBzI,KAAKU,YAAY6H,UAAW,EAC5BvI,KAAKU,YAAY8H,UAAW,EAC5B,MACJ,KAAKnJ,EAAkBqJ,SACnB1I,KAAKU,YAAY6H,UAAW,EAC5BvI,KAAKU,YAAY8H,UAAW,EAGxC,CAOA,mBAAAb,CAAoB5H,GACZA,EAAM4I,eACN3I,KAAKH,SAAS8I,eAAgB,EAC9B3I,KAAKH,SAAS+D,gBAAgB,QAC1B5D,KAAKU,cACLV,KAAKU,YAAYiI,eAAgB,GACjC3I,KAAKU,aACLV,KAAKU,YAAYkD,gBAAgB,UAGrC5D,KAAKH,SAAS8I,eAAgB,EAC1B3I,KAAKO,OACLP,KAAKH,SAASU,KAAOP,KAAKO,MAC1BP,KAAKU,cACLV,KAAKU,YAAYiI,eAAgB,GACjC3I,KAAKU,aAAeV,KAAKO,OACzBP,KAAKU,YAAYH,KAAOP,KAAKO,MAEzC,CAQA,UAAAqH,CAAW7H,GACHA,EAAM4I,cACN3I,KAAK2B,OAAOuF,aAAa,eAAgB,SAGzClH,KAAK2B,OAAOuF,aAAa,eAAgB0B,OAAO7I,EAAMmI,UAE1DlI,KAAK2B,OAAOuF,aAAa,gBAAiB0B,OAAO7I,EAAMsI,SAAWhJ,EAAkBoJ,WACpFzI,KAAK2B,OAAOuF,aAAa,gBAAiB0B,OAAO7I,EAAMsI,SAAWhJ,EAAkBqJ,UACxF,CAOA,aAAAb,CAAc9H,GACV,GAAKC,KAAK8B,SAAY9B,KAAK+B,cAE3B,OAAQhC,EAAMU,OACV,KAAKrB,EAAiB2I,GAElB,YADA/H,KAAK8B,QAAQ+G,WAAW,CAAE,iBAAkB7I,KAAK+B,cAAcyF,KAEnE,KAAKpI,EAAiB4I,IAElB,YADAhI,KAAK8B,QAAQ+G,WAAW,CAAE,iBAAkB7I,KAAK+B,cAAc+G,MAEnE,KAAK1J,EAAiB6I,MAGlB,YAFIjI,KAAK+B,cAAcgH,OACnB/I,KAAK8B,QAAQ+G,WAAW,CAAE,iBAAkB7I,KAAK+B,cAAcgH,SAG/E,CAKA,QAAIC,GACA,OAAOhJ,KAAK2B,MAChB,CAMA,OAAAsH,GACI,IAAI/F,EAAIgG,EACRlJ,KAAK2E,8BACD3E,KAAK8B,UACL9B,KAAK8B,QAAQqH,UACbnJ,KAAK8B,aAAUuE,GAEe,QAAjCnD,EAAKlD,KAAK2B,OAAOyH,kBAA+B,IAAPlG,GAAyBA,EAAGiB,aAAanE,KAAKH,SAAUG,KAAK2B,QACvG3B,KAAK2B,OAAOmG,SACmB,QAA9BoB,EAAKlJ,KAAKyC,0BAA4ByG,GAAyBA,EAAGtG,aACnE5C,KAAKyC,oBAAiB4D,EACtBrG,KAAKC,SAAU,CACnB,EJ3cG,SAASoJ,EAASC,EAAMC,GAC3B,IAAKD,EACD,OAAOA,EACX,OAAQC,EAAKC,MACT,KAAKjK,EAAakK,KACd,OA8BZ,SAAsBlC,GAClB,MAAMmC,EAAS,CACXC,YAAa,CAAC,IAAK,IAAK,SAAU,KAAM,OAAQ,QAAS,MAAO,MAAO,OACvEC,kBAAmB,CAAC,QAAS,QAAS,MAAO,MAAO,QAAS,WAI3DC,GADS,IAAIC,WACAC,gBAAgBxC,EAAM,aAIzC,OAFqBZ,MAAMC,KAAKiD,EAAIG,KAAKC,YAC5BC,QAASC,GAc1B,SAAsBA,EAAMT,GACxB,MAAMU,EAAyBD,IAC3B,IAAIjH,EACJ,GAAIiH,EAAKE,WAAaC,KAAKC,aAAc,CACrC,MAAMC,EAAUL,EACVM,EAAUD,EAAQC,QAAQC,cAEhC,IAAKhB,EAAOC,YAAYgB,SAASF,GAAU,CAEvC,MAAMG,EAAWhJ,SAASiJ,yBAK1B,OAJAlE,MAAMC,KAAK4D,EAAQP,YAAYC,QAAQY,IACnCF,EAASxG,YAAY0G,EAAMpH,WAAU,WAEX,QAA7BR,EAAKsH,EAAQpB,sBAAwBlG,GAAyBA,EAAG6H,aAAaH,EAAUJ,GAE7F,CAEA7D,MAAMC,KAAK4D,EAAQQ,YAAYd,QAAQe,IACnC,MAAMC,EAAWD,EAAK1K,KAAKmK,cACThB,EAAOE,kBAAkBuB,KAAKC,GAAWA,EAAQC,SAAS,KAAOH,EAASI,WAAWF,EAAQG,MAAM,GAAG,IAAOL,IAAaE,GA0B5J,SAA6BZ,EAASS,EAAMC,GACxC,GAAiB,QAAbA,GAAmC,SAAbA,EACtB,OACJ,MAAMzK,EAAQwK,EAAKxK,MAAMiK,eAEGjK,EAAM6K,WAAW,gBACzC7K,EAAM6K,WAAW,cAChB7K,EAAM6K,WAAW,WAAa7K,EAAM6K,WAAW,iBAEhDd,EAAQ5G,gBAAgBqH,EAAK1K,KAErC,CAnCoBiL,CAAoBhB,EAASS,EAAMC,GAGnCV,EAAQ5G,gBAAgBqH,EAAK1K,QAIpBoG,MAAMC,KAAK4D,EAAQP,YAC3BC,QAAQE,EACrB,MACK,GAAID,EAAKE,WAAaC,KAAKmB,UAE5B,QAGRrB,EAAsBD,EAC1B,CAnDmCuB,CAAavB,EAAMT,IAC3CG,EAAIG,KAAKtF,SACpB,CA1CmBiH,CAAarC,GACxB,KAAK/J,EAAaqM,KACd,OASZ,SAAsBtC,GAClB,MAAMzC,EAAM,CACR,IAAK,QACL,IAAK,OACL,IAAK,OACL,IAAK,SACL,IAAK,QACL,IAAK,UAGT,OAAOyC,EAAKuC,QAAQ,YAAcC,GAAMjF,EAAIiF,GAChD,CApBmBC,CAAazC,GAEhC,CAwHO,SAAS0C,EAAUvL,GACtB,MAAO,qBAAqBwL,KAAKxL,EAAMyL,WAAWC,OACtD,EAjJA,SAAW5M,GACPA,EAAmB,KAAI,OACvBA,EAAmB,KAAI,MAC1B,CAHD,CAGGA,IAAiBA,EAAe,CAAA,ICHnC,SAAWC,GACPA,EAAsB,IAAI,MAC1BA,EAAyB,OAAI,SAC7BA,EAAuB,KAAI,OAC3BA,EAAwB,MAAI,OAC/B,CALD,CAKGA,IAAqBA,EAAmB,CAAA,ICCpC,MAAM4M,EAST,cAAOC,CAAQ7B,EAASU,EAAU3B,GAC9B,MAAM+C,UAAEA,EAAY/M,EAAaqM,MAASrC,QAAmCA,EAAO,CAAA,EAEpF,OAAOF,EADOmB,EAAQ+B,aAAarB,GACZ,CAAE1B,KAAM8C,GAEnC,CAUA,uBAAOE,CAAiBhC,EAASU,EAAUuB,EAAWC,EAAcJ,EAAY/M,EAAaqM,MACzF,MAAMe,EAA0C,iBAAdF,EAAyBpD,EAASoD,EAAW,CAAEjD,KAAM8C,IAAeG,EACtG,OAAOL,EAAeC,QAAQ7B,EAASU,EAAU,CAAEoB,eAC/CK,GACAD,CACR,CASA,2BAAOE,CAAqBpC,EAASU,EAAUuB,EAAWH,EAAY/M,EAAaqM,MAC/E,MAAMe,EAA0C,iBAAdF,EAAyBpD,EAASoD,EAAW,CAAEjD,KAAM8C,IAAeG,EACtG,OAAOL,EAAeC,QAAQ7B,EAASU,EAAU,CAAEoB,eAC/CK,GACAE,EAAkBpM,KAC1B,CAOA,cAAOqM,CAAQtC,EAASuC,EAAc,IAClC,IAAI7J,EACJ,MAAMpD,EAAU,CACZoB,QAASlB,KAAK4M,qBAAqBpC,EAAS,eAAgBuC,EAAY7L,QAAS3B,EAAakK,MAC9FpI,SAAUrB,KAAK4M,qBAAqBpC,EAAS,gBAAiBuC,EAAY1L,SAAU9B,EAAakK,MACjGrJ,QAASJ,KAAKwM,iBAAiBhC,EAAS,eAAgBuC,EAAY3M,QAASgM,EAAeY,QAAQ5M,SACpGE,SAAUN,KAAKwM,iBAAiBhC,EAAS,gBAAiBuC,EAAYzM,SAAU8L,EAAeY,QAAQ1M,UACvGE,QAASR,KAAKqM,QAAQ7B,EAAS,UAAYxK,KAAKwM,iBAAiBhC,EAAS,eAAgBuC,EAAYvM,QAAS4L,EAAeY,QAAQxM,SACtIG,SAAUX,KAAKwM,iBAAiBhC,EAAS,gBAAiBuC,EAAYpM,SAAUyL,EAAeY,QAAQrM,UACvGQ,QAASnB,KAAKwM,iBAAiBhC,EAAS,eAAgBuC,EAAY5L,QAASiL,EAAeC,QAAQ7B,EAAS,UACzG4B,EAAeY,QAAQ7L,SAC3BG,SAAUtB,KAAKwM,iBAAiBhC,EAAS,gBAAiBuC,EAAYzL,SAAU8K,EAAeC,QAAQ7B,EAAS,UAC5G4B,EAAeY,QAAQ1L,UAC3BP,KAAMf,KAAKwM,iBAAiBhC,EAAS,YAAauC,EAAYhM,KAAMf,KAAKgN,QAAQjM,MACjF8C,MAAO7D,KAAKwM,iBAAiBhC,EAAS,aAAcuC,EAAYlJ,MAAO7D,KAAKgN,QAAQnJ,OACpFd,MAAO/C,KAAKwM,iBAAiBhC,EAAS,aAAcuC,EAAYhK,MAAO/C,KAAKgN,QAAQjK,OACpFC,OAAQhD,KAAKwM,iBAAiBhC,EAAS,cAAeuC,EAAY/J,OAAQhD,KAAKgN,QAAQhK,QACvFc,SAAUkC,OAAOhG,KAAKwM,iBAAiBhC,EAAS,WAAYuC,EAAYjJ,SAAU9D,KAAKgN,QAAQlJ,WAC/FmJ,SAAUzC,EAAQ0C,aAAa,aAC3BH,EAAYE,UACZb,EAAeY,QAAQC,SAC3B1M,KAAMP,KAAKwM,iBAAiBhC,EAAS,OAAQuC,EAAYxM,KAAMP,KAAKgN,QAAQzM,MAC5EwD,KAAM,CACFS,MAAOxE,KAAKwM,iBAAiBhC,EAAS,aAA0C,QAA3BtH,EAAK6J,EAAYhJ,YAAyB,IAAPb,OAAgB,EAASA,EAAGsB,MAAOxE,KAAKgN,QAAQjJ,KAAKS,QAEjJ1C,QAASsK,EAAee,sBAAsB3C,EAASuC,IAO3D,OALIjN,EAAQiD,OAASiJ,EAAUlM,EAAQiD,SACnCjD,EAAQiD,MAAQ,GAAGjD,EAAQiD,WAC3BjD,EAAQkD,QAAUgJ,EAAUlM,EAAQkD,UACpClD,EAAQkD,OAAS,GAAGlD,EAAQkD,YAChC6J,EAAkBO,OAAOtN,EAAS0K,EAASuC,GACpCjN,CACX,CAOA,4BAAOqN,CAAsB3C,EAASuC,GAClC,IAAI7J,EAAIgG,EAAImE,EAAIC,EAChB,MAAMC,EAAW,CAACtC,EAAMuC,IAAexN,KAAKwM,iBAAiBhC,EAASS,EAAMuC,EAAY,KAAMjO,EAAakK,OAASzJ,KAAKqM,QAAQ7B,EAAS,qBAAsB,CAAE8B,UAAW/M,EAAakK,OACpLgE,EAAUF,EAAS,wBAAwD,QAA9BrK,EAAK6J,EAAYjL,eAA4B,IAAPoB,OAAgB,EAASA,EAAGlB,MAAMwF,IACrHkG,EAAWH,EAAS,yBAAyD,QAA9BrE,EAAK6D,EAAYjL,eAA4B,IAAPoH,OAAgB,EAASA,EAAGlH,MAAM8G,KACvH6E,EAAaJ,EAAS,2BAA2D,QAA9BF,EAAKN,EAAYjL,eAA4B,IAAPuL,OAAgB,EAASA,EAAGrL,MAAM+G,OACjI,IAAK0E,IAAYC,EACb,OAAOtB,EAAeY,QAAQlL,QAClC,MAAMwF,EAAYtH,KAAKwM,iBAAiBhC,EAAS,yBAAyD,QAA9B8C,EAAKP,EAAYjL,mBAAqBwL,OAAgB,EAASA,EAAGhG,UAAW9H,EAAiBoO,KAC1K,MAAO,CACHtG,UAAWuG,OAAOC,OAAOtO,GAAkBmL,SAASrD,GAAaA,EAAY9H,EAAiBoO,IAC9F5L,MAAO,CACHwF,GAAIiG,EACJ3E,IAAK4E,EACL3E,MAAO4E,QAA+CA,OAAatH,GAG/E,EAGJ+F,EAAeY,QAAU,CACrB9L,QAAS,KACTd,QAAS,UACTI,QAAS,KACTW,QAAS,KACTE,SAAU,MACVf,SAAU,YACVK,SAAU,KACVW,SAAU,KACVP,KAAM,GACN8C,MAAO,GACPd,MAAO,KACPC,OAAQ,KACRc,SAAU,EACVmJ,UAAU,EACV1M,KAAM,KACNwD,KAAM,CAAES,MAAO,UACf1C,aAASuE,GAIb,SAAW5G,GACPA,EAAsB,UAAI,YAC1BA,EAAmB,OAAI,QAC1B,CAHD,CAGGA,IAAeA,EAAa,CAAA,IAI/B,MAAMoN,EAOF,aAAOO,CAAOtN,EAAS0K,EAASuC,GAC5B/M,KAAK+N,kBAAkB7D,QAAQ,EAAG8D,aAAYC,iBAAgBC,gBAAe1E,WACzE,GAAI1J,EAAQkO,KAAgBnB,EAAkBpM,MAAO,CACjD,MAAM0N,EAA0B9E,EAASmB,EAAQ+B,aAAa0B,GAAiB,CAAEzE,SAC7E2E,GACAnO,KAAKoO,IAAI3O,EAAW4O,UAAWJ,EAAgB,QAAQD,KACvDlO,EAAQkO,GAAcG,GAEjBpB,EAAYmB,IACjBlO,KAAKoO,IAAI3O,EAAW6O,OAAQJ,EAAeF,GAC3ClO,EAAQkO,GAAcjB,EAAYmB,IAGlCpO,EAAQkO,GAAc5B,EAAeY,QAAQgB,EAErD,GAER,CAOA,UAAOI,CAAIG,EAAMC,EAAUC,GACvBzJ,QAAQC,KAAK,+CAA+CuJ,KAAYD,wBAA2BE,aACvG,EAGJ5B,EAAkBpM,MAAQ,4GAE1BoM,EAAkBkB,kBAAoB,CAClC,CACIC,WAAY,UACZC,eAAgB,UAChBC,cAAe,KACf1E,KAAMjK,EAAakK,MAEvB,CACIuE,WAAY,WACZC,eAAgB,WAChBC,cAAe,MACf1E,KAAMjK,EAAakK,OGjMpB,MAAMiF,EAOT,WAAA9O,CAAY4K,EAASmE,GACjB3O,KAAK2O,WAAaA,EAClB3O,KAAKD,MAAQC,KAAK4O,gBAAgBpE,EACtC,CAUA,eAAAoE,CAAgBpE,GACZ,MAAMtC,EAAUsC,EAAQtC,QACxB,IAAIG,EAEAA,EADAmC,EAAQjC,SACClJ,EAAkBoJ,SAEtB+B,EAAQhC,SACJnJ,EAAkBqJ,SAGlBrJ,EAAkBiJ,QAE/B,MAAMK,EAAgB3I,KAAK2O,YAAcnE,EAAQ7B,cACjD,IAAIlI,EAUJ,OARIA,EADAkI,EACQvJ,EAAiB6I,MAEpBC,EACG9I,EAAiB2I,GAGjB3I,EAAiB4I,IAEtB,CACHvH,QACAyH,UACAG,SACAM,gBAER,CAKA,GAAAkG,GACI,OAAOhB,OAAOiB,OAAOjB,OAAOkB,OAAO,GAAI/O,KAAKD,OAChD,CAKA,WAAAiP,GACI,OAAOhP,KAAKD,MAAMsI,SAAWhJ,EAAkBiJ,OACnD,CAOA,IAAA2G,CAAKzE,GACDxK,KAAKD,MAAQC,KAAK4O,gBAAgBpE,EACtC,CAaA,GAAG0E,GAUC,GATiC,CAC7B5P,EAAiByI,GACjBzI,EAAiB0I,IACjB1I,EAAiB6P,OACjB7P,EAAiB8P,cACjB9P,EAAiB+P,YACjB/P,EAAiBgQ,KACjBhQ,EAAiBoJ,UAEQiC,SAASuE,KAAYlP,KAAKgP,cACnD,OAAO,EACX,OAAQE,GACJ,KAAK5P,EAAiByI,GAClB,OAAO/H,KAAKuP,kBAAkBnQ,EAAiB2I,IAAI,GAAM,GAC7D,KAAKzI,EAAiB0I,IAClB,OAAOhI,KAAKuP,kBAAkBnQ,EAAiB4I,KAAK,GAAO,GAC/D,KAAK1I,EAAiB6P,OAClB,OAAInP,KAAKD,MAAMU,QAAUrB,EAAiB2I,GAC/B/H,KAAKwP,GAAGlQ,EAAiB0I,KAChChI,KAAKD,MAAMU,QAAUrB,EAAiB4I,KAC/BhI,KAAKwP,GAAGlQ,EAAiByI,IAExC,KAAKzI,EAAiB8P,cAClB,OAAOpP,KAAKuP,kBAAkBnQ,EAAiB6I,WAAO5B,GAAW,GACrE,KAAK/G,EAAiB+P,YAClB,OAAIrP,KAAKD,MAAMU,OAASrB,EAAiB6I,OAElCjI,KAAKyP,SAASzP,KAAKD,MAAMmI,QAAU9I,EAAiB2I,GAAK3I,EAAiB4I,IAAKhI,KAAKD,MAAMmI,SAAS,GAC9G,KAAK5I,EAAiBgQ,KAClB,OAAOtP,KAAK0P,SAChB,KAAKpQ,EAAiBqQ,QAClB,OAAO3P,KAAK4P,mBAAmBvQ,EAAkBoJ,UACrD,KAAKnJ,EAAiBuQ,OAClB,OAAO7P,KAAK4P,mBAAmBvQ,EAAkBiJ,SACrD,KAAKhJ,EAAiBoJ,SAClB,OAAO1I,KAAK8P,UAAUzQ,EAAkBqJ,UAEpD,CAUA,QAAA+G,CAAShP,EAAOyH,EAASS,GAErB,OADA3I,KAAKD,MAAQ8N,OAAOkB,OAAOlB,OAAOkB,OAAO,CAAA,EAAI/O,KAAKD,OAAQ,CAAEU,QAAOyH,QAASA,QAAyCA,EAAUlI,KAAKD,MAAMmI,QAASS,cAAeA,QAAqDA,EAAgB3I,KAAKD,MAAM4I,iBAC3O,CACX,CAOA,iBAAA4G,CAAkB9O,EAAOyH,EAASS,GAC9B,OAAI3I,KAAKD,MAAMU,QAAUA,GAElBT,KAAKyP,SAAShP,EAAOyH,EAASS,EACzC,CAMA,SAAAmH,CAAUzH,GAEN,OADArI,KAAKD,MAAQ8N,OAAOkB,OAAOlB,OAAOkB,OAAO,CAAA,EAAI/O,KAAKD,OAAQ,CAAEsI,YACrD,CACX,CAMA,kBAAAuH,CAAmBvH,GACf,OAAIrI,KAAKD,MAAMsI,SAAWA,GAEnBrI,KAAK8P,UAAUzH,EAC1B,CAOA,MAAAqH,GACI,OAAI1P,KAAK2O,WACD3O,KAAKD,MAAMU,QAAUrB,EAAiB2I,IAAM/H,KAAKD,MAAMU,QAAUrB,EAAiB4I,IAC3EhI,KAAKwP,GAAGlQ,EAAiB8P,eAEhCpP,KAAKD,MAAMU,QAAUrB,EAAiB6I,QAC/BjI,KAAKD,MAAMmI,QACZlI,KAAKwP,GAAGlQ,EAAiB0I,KACzBhI,KAAKwP,GAAGlQ,EAAiByI,KAI5B/H,KAAKD,MAAMU,QAAUrB,EAAiB2I,GACvC/H,KAAKwP,GAAGlQ,EAAiB0I,KACzBhI,KAAKwP,GAAGlQ,EAAiByI,GAGvC,GF9LJ,SAAWrI,GACPA,EAAiB,GAAI,YACrBA,EAAkB,IAAI,aACtBA,EAAoB,MAAI,eACxBA,EAAsB,QAAI,iBAC1BA,EAAuB,SAAI,kBAC3BA,EAAuB,SAAI,iBAC9B,CAPD,CAOGA,IAAiBA,EAAe,CAAA,IACnC,IGTWqQ,EHSXC,EAAetQ,EIJR,MAAMuQ,EAOT,WAAArQ,CAAY4K,EAAS1K,GACjBE,KAAKkQ,QAAU,KACflQ,KAAKmQ,iBAAmB,GACxBnQ,KAAKoQ,aAAc,EACnBpQ,KAAKqQ,sBAAuB,EAC5BrQ,KAAKsQ,oBAAsB,IAAIC,IAM/BvQ,KAAKwQ,iBAAmB,KACpBxQ,KAAKyQ,UAETzQ,KAAK0Q,YAAc,KACfC,WAAW,IAAM3Q,KAAKwQ,mBAAoB,IAW9CxQ,KAAK4Q,cAAiBC,IACI,UAAlBA,EAAEC,aAAwC,IAAbD,EAAEE,QAE9B/Q,KAAKgR,aAAahC,gBAEvBhP,KAAKkQ,QAAU,CAAEe,EAAGJ,EAAEK,QAASC,EAAGN,EAAEO,SACpCpR,KAAKqR,WAAWrI,KAAKsI,iBAAiB,cAAetR,KAAKuR,cAAe,CACrEC,SAAS,IAEbxR,KAAKqR,WAAWrI,KAAKsI,iBAAiB,YAAatR,KAAKyR,YAAa,CACjED,SAAS,IAEbxR,KAAKqR,WAAWrI,KAAKsI,iBAAiB,gBAAiBtR,KAAK0R,gBAAiB,CAAEF,SAAS,MAS5FxR,KAAKuR,cAAiBV,IAClB,MAAMc,EAAKxM,KAAKyM,IAAIf,EAAEK,QAAUlR,KAAKkQ,QAAQe,IAClC9L,KAAKyM,IAAIf,EAAEO,QAAUpR,KAAKkQ,QAAQiB,GACpCnR,KAAKmQ,kBAAoBwB,EAAK3R,KAAKqR,WAAWrI,KAAKzG,cACxDvC,KAAK0R,mBAcb1R,KAAKyR,YAAeZ,IAChB,GAAsB,UAAlBA,EAAEC,aAAwC,IAAbD,EAAEE,OAE/B,YADA/Q,KAAK0R,kBAGT,MAAMC,EAAKxM,KAAKyM,IAAIf,EAAEK,QAAUlR,KAAKkQ,QAAQe,GAClC9L,KAAKyM,IAAIf,EAAEO,QAAUpR,KAAKkQ,QAAQiB,IACnCnR,KAAKmQ,kBAAoBwB,GAAM3R,KAAKqR,WAAWrI,KAAKzG,aAC1DvC,KAAK6R,MAAMvS,EAAiBgQ,MAEhCtP,KAAK0R,mBAST1R,KAAK0R,gBAAkB,KACnB1R,KAAKqR,WAAWrI,KAAK8I,oBAAoB,cAAe9R,KAAKuR,eAC7DvR,KAAKqR,WAAWrI,KAAK8I,oBAAoB,YAAa9R,KAAKyR,aAC3DzR,KAAKqR,WAAWrI,KAAK8I,oBAAoB,gBAAiB9R,KAAK0R,kBAEnE1R,KAAK+R,qBAAwBlB,IACX,MAAVA,EAAEmB,KAAyB,UAAVnB,EAAEmB,MACnBnB,EAAEoB,iBACFjS,KAAK6R,MAAMvS,EAAiBgQ,QAGpCtP,KAAKkS,kBAAqBrB,IACtBA,EAAEoB,iBACFjS,KAAK6R,MAAMvS,EAAiBgQ,MAC5BtP,KAAKqR,WAAWrI,KAAKmJ,SAEzBnS,KAAKwK,QAAUA,EACfxK,KAAK+M,YAAcjN,EACnBE,KAAKF,QAAUsM,EAAeU,QAAQtC,EAAS1K,GAC/CE,KAAKgR,aAAe,IAAItC,EAAalE,EAASxK,KAAKF,QAAQmN,UAC3DjN,KAAKqR,WAAa,IAAI1R,EAAW6K,EAASxK,KAAKF,QAASE,KAAKgR,aAAanC,OAC1E7O,KAAKoS,qBACLpS,KAAKqS,2BACLrS,KAAKwK,QAAQ8H,SAAWtS,IAC5B,CAaA,wBAAAqS,GACkB,CAAC,UAAW,WAAY,WAAY,iBAC5CnI,QAASqI,IACX,MAAMC,EAAa3E,OAAO4E,yBAAyB5E,OAAO6E,eAAe1S,KAAKwK,SAAU+H,IAClFC,aAA+C,EAASA,EAAWG,OAEzE3S,KAAKsQ,oBAAoBqC,IAAIJ,EAAMC,GACnC3E,OAAO+E,eAAe5S,KAAKwK,QAAS+H,EAAM,CACtCM,cAAc,EACdhE,IAAK,IAAM2D,EAAW3D,IAAIiE,KAAK9S,KAAKwK,SACpCmI,IAAMlS,IACF+R,EAAWG,IAAIG,KAAK9S,KAAKwK,QAAS/J,GAC9BT,KAAKqQ,sBAETrQ,KAAKwQ,wBAIrB,CAOA,sBAAAuC,GACI/S,KAAKsQ,oBAAoBpG,QAAQ,CAACsI,EAAYD,KAC1C1E,OAAO+E,eAAe5S,KAAKwK,QAAS+H,EAAMC,KAE9CxS,KAAKsQ,oBAAoB0C,OAC7B,CAYA,kBAAAZ,GACQpS,KAAKoQ,cAETpQ,KAAKiT,wBACLjT,KAAKkT,2BACLlT,KAAKmT,4BACLnT,KAAKoT,yBACLpT,KAAKoQ,aAAc,EACvB,CAYA,oBAAAiD,GACSrT,KAAKoQ,cAEVpQ,KAAKsT,0BACLtT,KAAKuT,6BACLvT,KAAKwT,8BACLxT,KAAKyT,2BACLzT,KAAKoQ,aAAc,EACvB,CACA,qBAAA6C,GACI,MAAMS,EAAO1T,KAAKwK,QAAQkJ,KACrBA,GAELA,EAAKpC,iBAAiB,QAAStR,KAAK0Q,YACxC,CACA,uBAAA4C,GACI,MAAMI,EAAO1T,KAAKwK,QAAQkJ,KACrBA,GAELA,EAAK5B,oBAAoB,QAAS9R,KAAK0Q,YAC3C,CAQA,wBAAAwC,GACIlT,KAAKqR,WAAWrI,KAAKsI,iBAAiB,cAAetR,KAAK4Q,cAAe,CACrEY,SAAS,GAEjB,CAQA,0BAAA+B,GACIvT,KAAKqR,WAAWrI,KAAK8I,oBAAoB,cAAe9R,KAAK4Q,cACjE,CAMA,yBAAAuC,GACInT,KAAKqR,WAAWrI,KAAKsI,iBAAiB,UAAWtR,KAAK+R,qBAAsB,CAAEP,SAAS,GAC3F,CAQA,2BAAAgC,GACIxT,KAAKqR,WAAWrI,KAAK8I,oBAAoB,UAAW9R,KAAK+R,qBAC7D,CASA,sBAAAqB,GACQpT,KAAKwK,QAAQzD,IACbnF,SACK+R,iBAAiB,cAAgB3T,KAAKwK,QAAQzD,GAAK,MACnDmD,QAAS1F,IACVA,EAAM8M,iBAAiB,QAAStR,KAAKkS,kBAAmB,CACpDV,SAAS,KAIzB,CAOA,wBAAAiC,GACQzT,KAAKwK,QAAQzD,IACbnF,SACK+R,iBAAiB,cAAgB3T,KAAKwK,QAAQzD,GAAK,MACnDmD,QAAS1F,IACVA,EAAMsN,oBAAoB,QAAS9R,KAAKkS,oBAGpD,CAQA,KAAAL,CAAM3C,EAAQ0E,GAAS,GACnB,GAAK5T,KAAKgR,aAAaxB,GAAGN,GAA1B,CAEAlP,KAAKqQ,sBAAuB,EAC5B,IACI,MAAMtQ,EAAQC,KAAKgR,aAAanC,MAChC7O,KAAKqR,WAAWlP,OAAOpC,GAClB6T,GACD5T,KAAK6T,QAAQ3E,EAAQnP,EAC7B,CACR,QACYC,KAAKqQ,sBAAuB,CAChC,CAVI,CAWR,CASA,MAAA1O,CAAOiS,GAAS,GACZ5T,KAAK6R,MAAMvS,EAAiB6P,OAAQyE,EACxC,CAMA,EAAApM,CAAGoM,GAAS,GACR5T,KAAK6R,MAAMvS,EAAiByI,GAAI6L,EACpC,CAMA,GAAA9K,CAAI8K,GAAS,GACT5T,KAAK6R,MAAMvS,EAAiB0I,IAAK4L,EACrC,CAMA,aAAAjL,CAAciL,GAAS,GACnB5T,KAAK6R,MAAMvS,EAAiB8P,cAAewE,EAC/C,CAMA,WAAAE,CAAYF,GAAS,GACjB5T,KAAK6R,MAAMvS,EAAiB+P,YAAauE,EAC7C,CAQA,MAAAG,CAAOH,GAAS,GACZ5T,KAAK6R,MAAMvS,EAAiBuQ,OAAQ+D,EACxC,CAOA,OAAAI,CAAQJ,GAAS,GACb5T,KAAK6R,MAAMvS,EAAiBqQ,QAASiE,EACzC,CAQA,QAAAK,CAASL,GAAS,GACd5T,KAAK6R,MAAMvS,EAAiBoJ,SAAUkL,EAC1C,CAIA,MAAAnD,GACIzQ,KAAKqQ,sBAAuB,EAC5B,IACIrQ,KAAKgR,aAAa/B,KAAKjP,KAAKwK,SAC5BxK,KAAKqR,WAAWlP,OAAOnC,KAAKgR,aAAanC,MAC7C,CACR,QACY7O,KAAKqQ,sBAAuB,CAChC,CACJ,CAOA,OAAAwD,CAAQ3E,EAAQnP,GACZC,KAAKwK,QAAQ0J,cAAc,IAAIC,MAAM,SAAU,CAAEC,SAAS,KAC1D,MAAMC,EAAYrU,KAAKsU,kBAAkBpF,EAAQnP,GAC3CwU,EAAS,CAAExU,MAAOA,GACxBC,KAAKwK,QAAQ0J,cAAc,IAAIM,YAAYH,EAAW,CAClDD,SAAS,EACTG,OAAQA,IAEhB,CAQA,iBAAAD,CAAkBpF,EAAQnP,GACtB,OAAQmP,GACJ,KAAK5P,EAAiByI,GAClB,OAAOrI,EAAaqI,GACxB,KAAKzI,EAAiB0I,IAClB,OAAOtI,EAAasI,IACxB,KAAK1I,EAAiB8P,cAClB,OAAO1P,EAAauI,MACxB,KAAK3I,EAAiBuQ,OAClB,OAAOnQ,EAAa4I,QACxB,KAAKhJ,EAAiBqQ,QAClB,OAAOjQ,EAAa+I,SACxB,KAAKnJ,EAAiBoJ,SAClB,OAAOhJ,EAAagJ,SACxB,KAAKpJ,EAAiB+P,YACtB,KAAK/P,EAAiB6P,OACtB,KAAK7P,EAAiBgQ,KAClB,OAAOtP,KAAKyU,cAAc1U,GAEtC,CAOA,aAAA0U,CAAc1U,GACV,OAAQA,EAAMU,OACV,KAAKrB,EAAiB2I,GAClB,OAAOrI,EAAaqI,GACxB,KAAK3I,EAAiB4I,IAClB,OAAOtI,EAAasI,IACxB,KAAK5I,EAAiB6I,MAClB,OAAOvI,EAAauI,MAEhC,CAMA,OAAAgB,GACIjJ,KAAK+S,yBACL/S,KAAKqT,uBACLrT,KAAKqR,WAAWpI,iBACTjJ,KAAKwK,QAAQ8H,QACxB,CAsBA,QAAAoC,GACI1U,KAAK+S,yBACL/S,KAAKqT,uBACLrT,KAAKqR,WAAWpI,UAChBjJ,KAAKF,QAAUsM,EAAeU,QAAQ9M,KAAKwK,QAASxK,KAAK+M,aACzD/M,KAAKgR,aAAe,IAAItC,EAAa1O,KAAKwK,QAASxK,KAAKF,QAAQmN,UAChEjN,KAAKqR,WAAa,IAAI1R,EAAWK,KAAKwK,QAASxK,KAAKF,QAASE,KAAKgR,aAAanC,OAC/E7O,KAAKoS,qBACLpS,KAAKqS,0BACT,GD9eJ,SAAWtC,GACPA,EAAkB,GAAI,KACtBA,EAAmB,IAAI,MACvBA,EAAsB,OAAI,SAC1BA,EAA2B,YAAI,cAC/BA,EAA6B,cAAI,gBACjCA,EAAsB,OAAI,SAC1BA,EAAuB,QAAI,UAC3BA,EAAwB,SAAI,WAC5BA,EAAuB,QAAI,UAC3BA,EAAwB,SAAI,UAC/B,CAXD,CAWGA,IAAkBA,EAAgB,CAAA,IEPpC,SAAW4E,GAKR/O,WAAWC,OAAO+O,gBAAkBhP,WAAWC,OAAO+O,iBAAmB,GACzE/G,OAAOkB,OAAOnJ,WAAWC,OAAO+O,gBAAiB,CAAC5E,SAAM6E,QAAEA,EAAOC,WAAEA,cAAYC,IA8C/E,IAAIC,EAAML,EAAEM,GAAGC,gBAEfP,EAAEM,GAAGC,gBA9CL,SAAgBpV,EAAS8T,GAGrB,OAFejN,MAAMwO,UAAU5J,MAAMuH,KAAKsC,UAAW,GAAG,GAEjD,KAASC,KAAK,WACHV,EAAE3U,MAChB,IAAIsV,EAAYtV,KAAKsS,UAAY,IAAIrC,EAAOjQ,KAAOF,GAA8B,iBAAZA,EAAyBA,EAAU,CAAA,GAExG,GAAIA,GAA8B,iBAAZA,EAClB,OAAQA,EAAQ4K,eAChB,KAAKmK,EAAQ1F,OACTmG,EAAU3T,OAAOiS,GACjB,MACJ,KAAKiB,EAAQ9M,GACTuN,EAAU9N,GAAGoM,GACb,MACJ,KAAKiB,EAAQ7M,IACTsN,EAAUxM,IAAI8K,GACd,MACJ,KAAKiB,EAAQzF,cACTkG,EAAU3M,cAAciL,GACxB,MACJ,KAAKiB,EAAQxF,YACTiG,EAAUxB,YAAYF,GACtB,MACJ,KAAKiB,EAAQhF,OACTyF,EAAUvB,OAAOH,GACjB,MACJ,KAAKiB,EAAQlF,QACT2F,EAAUtB,QAAQJ,GAClB,MACJ,KAAKiB,EAAQnM,SACT4M,EAAUrB,SAASL,GACnB,MACJ,KAAKiB,EAAQU,QACTD,EAAUrM,UACV,MACJ,KAAK4L,EAAQW,SACTF,EAAUZ,WAItB,EACJ,EAKAC,EAAEM,GAAGC,gBAAgBO,YAAcxF,EAKnC0E,EAAEM,GAAGtT,OAAO+T,WAAa,WAErB,OADAf,EAAEM,GAAGC,gBAAkBF,EAChBhV,IACX,EAMA2U,EAAE,WACEA,EAAE,6CAA6CO,iBACnD,EACH,CAxEA,CAwEES"} \ No newline at end of file diff --git a/vendor/bootstrap5-toggle/bootstrap5-toggle.min.css b/vendor/bootstrap5-toggle/bootstrap5-toggle.min.css new file mode 100644 index 0000000000..2ed7894896 --- /dev/null +++ b/vendor/bootstrap5-toggle/bootstrap5-toggle.min.css @@ -0,0 +1,2 @@ +.btn-group-xs>.btn,.btn-xs{padding:.35rem .4rem .25rem;font-size:.875rem;line-height:.5;border-radius:.2rem}.checkbox label .toggle,.checkbox-inline .toggle{margin-left:-1.25rem;margin-right:.35rem}.toggle{position:relative;overflow:hidden}.toggle:focus>.toggle-group>.btn,.toggle:hover>.toggle-group>.btn{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color)}.toggle:focus>.toggle-group>.toggle-handle,.toggle:hover>.toggle-group>.toggle-handle{background-color:var(--bs-light);opacity:.5}.toggle>input[type=checkbox]{display:none}.toggle>.toggle-group{position:absolute;width:200%;top:0;bottom:0;left:0;transition:left .35s;-webkit-transition:left .35s;user-select:none;-moz-user-select:none;-webkit-user-select:none}.toggle>.toggle-group>span{cursor:pointer}.toggle.off>.toggle-group{left:-100%}.toggle.indeterminate>.toggle-group{left:-50%}.toggle>.toggle-group>.toggle-on{position:absolute;top:0;bottom:0;left:0;right:50%;margin:0;border:0;border-radius:0}.toggle>.toggle-group>.toggle-off{position:absolute;top:0;bottom:0;left:50%;right:0;margin:0;border:0;border-radius:0;box-shadow:none}.toggle>.toggle-group>.toggle-handle{position:relative;margin:0 auto;padding-top:0;padding-bottom:0;height:100%;width:0;border-width:0 1px;background-color:var(--bs-light);border-color:var(--bs-light)}.input-group .toggle>.toggle-group>.toggle-off,.input-group .toggle>.toggle-group>.toggle-on{position:absolute}.toggle:not(:hover):not(:focus).btn-outline-primary>.toggle-group>.toggle-handle{background-color:var(--bs-primary);border-color:var(--bs-primary)}.toggle:not(:hover):not(:focus).btn-outline-secondary>.toggle-group>.toggle-handle{background-color:var(--bs-secondary);border-color:var(--bs-secondary)}.toggle:not(:hover):not(:focus).btn-outline-success>.toggle-group>.toggle-handle{background-color:var(--bs-success);border-color:var(--bs-success)}.toggle:not(:hover):not(:focus).btn-outline-danger>.toggle-group>.toggle-handle{background-color:var(--bs-danger);border-color:var(--bs-danger)}.toggle:not(:hover):not(:focus).btn-outline-warning>.toggle-group>.toggle-handle{background-color:var(--bs-warning);border-color:var(--bs-warning)}.toggle:not(:hover):not(:focus).btn-outline-info>.toggle-group>.toggle-handle{background-color:var(--bs-info);border-color:var(--bs-info)}.toggle:not(:hover):not(:focus).btn-outline-light>.toggle-group>.toggle-handle{background-color:var(--bs-light);border-color:var(--bs-light)}.toggle:not(:hover):not(:focus).btn-outline-dark>.toggle-group>.toggle-handle{background-color:var(--bs-dark);border-color:var(--bs-dark)}.toggle.btn{min-width:3.7rem;min-height:2.15rem}.toggle>.toggle-group>.toggle-on.btn{padding-right:1.5rem}.toggle>.toggle-group>.toggle-off.btn{padding-left:1.5rem}.toggle.btn-lg{min-width:5rem;min-height:2.815rem}.toggle>.toggle-group>.toggle-on.btn-lg{padding-right:2rem}.toggle>.toggle-group>.toggle-off.btn-lg{padding-left:2rem}.toggle>.toggle-group>.toggle-handle.btn-lg{width:2.5rem}.toggle.btn-sm{min-width:3.125rem;min-height:1.938rem}.toggle>.toggle-group>.toggle-on.btn-sm{padding-right:1rem}.toggle>.toggle-group>.toggle-off.btn-sm{padding-left:1rem}.toggle.btn-xs{min-width:2.19rem;min-height:1.375rem}.toggle>.toggle-group>.toggle-on.btn-xs{padding-right:.8rem}.toggle>.toggle-group>.toggle-off.btn-xs{padding-left:.8rem} +/*# sourceMappingURL=bootstrap5-toggle.min.css.map */ \ No newline at end of file diff --git a/vendor/bootstrap5-toggle/bootstrap5-toggle.min.css.map b/vendor/bootstrap5-toggle/bootstrap5-toggle.min.css.map new file mode 100644 index 0000000000..4f7cee791a --- /dev/null +++ b/vendor/bootstrap5-toggle/bootstrap5-toggle.min.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["../src/main/css/bootstrap5-toggle.css"],"names":[],"mappings":"AAIA,2BAEE,2BAAsC,CACtC,iBAAmB,CACnB,cAAgB,CAChB,mBACF,CAEA,iDAEE,oBAAqB,CACrB,mBACF,CAEA,QACE,iBAAkB,CAClB,eACF,CACA,kEAEE,+BAAgC,CAChC,uCAAwC,CACxC,6CACF,CACA,sFAEE,gCAAiC,CACjC,UACF,CACA,6BACE,YACF,CACA,sBACE,iBAAkB,CAClB,UAAW,CACX,KAAM,CACN,QAAS,CACT,MAAO,CACP,oBAAsB,CACtB,4BAA8B,CAC9B,gBAAiB,CACjB,qBAAsB,CACtB,wBACF,CACA,2BACE,cACF,CACA,0BACE,UACF,CACA,oCACE,SACF,CACA,iCACE,iBAAkB,CAClB,KAAM,CACN,QAAS,CACT,MAAO,CACP,SAAU,CACV,QAAS,CACT,QAAS,CACT,eACF,CACA,kCACE,iBAAkB,CAClB,KAAM,CACN,QAAS,CACT,QAAS,CACT,OAAQ,CACR,QAAS,CACT,QAAS,CACT,eAAgB,CAChB,eACF,CACA,qCACE,iBAAkB,CAClB,aAAc,CACd,aAAgB,CAChB,gBAAmB,CACnB,WAAY,CACZ,OAAU,CACV,kBAAmB,CACnB,gCAAiC,CACjC,4BACF,CAMA,6FAEE,iBACF,CAEA,iFAGE,kCAAmC,CACnC,8BACF,CACA,mFAGE,oCAAqC,CACrC,gCACF,CACA,iFAGE,kCAAmC,CACnC,8BACF,CACA,gFAGE,iCAAkC,CAClC,6BACF,CACA,iFAGE,kCAAmC,CACnC,8BACF,CACA,8EAGE,+BAAgC,CAChC,2BACF,CACA,+EAGE,gCAAiC,CACjC,4BACF,CACA,8EAGE,+BAAgC,CAChC,2BACF,CAIA,YACE,gBAAiB,CACjB,kBACF,CACA,qCACE,oBACF,CACA,sCACE,mBACF,CAGA,eACE,cAAe,CACf,mBACF,CACA,wCACE,kBACF,CACA,yCACE,iBACF,CACA,4CACE,YACF,CAGA,eACE,kBAAmB,CACnB,mBACF,CACA,wCACE,kBACF,CACA,yCACE,iBACF,CAGA,eACE,iBAAkB,CAClB,mBACF,CACA,wCACE,mBACF,CACA,yCACE,kBACF","file":"bootstrap5-toggle.min.css","sourcesContent":["/*\r\n* @added 3.0.0: Return support for \"*-xs\" removed in Bootstrap-4\r\n* @see: [Comment](https://github.com/twbs/bootstrap/issues/21881#issuecomment-341972830)\r\n*/\r\n.btn-group-xs > .btn,\r\n.btn-xs {\r\n padding: 0.35rem 0.4rem 0.25rem 0.4rem;\r\n font-size: 0.875rem;\r\n line-height: 0.5;\r\n border-radius: 0.2rem;\r\n}\r\n\r\n.checkbox label .toggle,\r\n.checkbox-inline .toggle {\r\n margin-left: -1.25rem;\r\n margin-right: 0.35rem;\r\n}\r\n\r\n.toggle {\r\n position: relative;\r\n overflow: hidden;\r\n}\r\n.toggle:focus > .toggle-group > .btn,\r\n.toggle:hover > .toggle-group > .btn {\r\n color: var(--bs-btn-hover-color);\r\n background-color: var(--bs-btn-hover-bg);\r\n border-color: var(--bs-btn-hover-border-color);\r\n}\r\n.toggle:hover > .toggle-group > .toggle-handle,\r\n.toggle:focus > .toggle-group > .toggle-handle {\r\n background-color: var(--bs-light);\r\n opacity: 0.5;\r\n}\r\n.toggle > input[type=\"checkbox\"] {\r\n display: none;\r\n}\r\n.toggle > .toggle-group {\r\n position: absolute;\r\n width: 200%;\r\n top: 0;\r\n bottom: 0;\r\n left: 0;\r\n transition: left 0.35s;\r\n -webkit-transition: left 0.35s;\r\n user-select: none;\r\n -moz-user-select: none;\r\n -webkit-user-select: none;\r\n}\r\n.toggle > .toggle-group > span {\r\n cursor: pointer;\r\n}\r\n.toggle.off > .toggle-group {\r\n left: -100%;\r\n}\r\n.toggle.indeterminate > .toggle-group {\r\n left: -50%;\r\n}\r\n.toggle > .toggle-group > .toggle-on {\r\n position: absolute;\r\n top: 0;\r\n bottom: 0;\r\n left: 0;\r\n right: 50%;\r\n margin: 0;\r\n border: 0;\r\n border-radius: 0;\r\n}\r\n.toggle > .toggle-group > .toggle-off {\r\n position: absolute;\r\n top: 0;\r\n bottom: 0;\r\n left: 50%;\r\n right: 0;\r\n margin: 0;\r\n border: 0;\r\n border-radius: 0;\r\n box-shadow: none; /* Bootstrap 4.0 Support via (Issue #186)[https://github.com/minhur/bootstrap-toggle/issues/186]) */\r\n}\r\n.toggle > .toggle-group > .toggle-handle {\r\n position: relative;\r\n margin: 0 auto;\r\n padding-top: 0px;\r\n padding-bottom: 0px;\r\n height: 100%;\r\n width: 0px;\r\n border-width: 0 1px;\r\n background-color: var(--bs-light);\r\n border-color: var(--bs-light);\r\n}\r\n\r\n/** Support for input-group\r\n * @author (bryan-brancotte)[https://github.com/bryan-brancotte]\r\n * @see https://github.com/gitbrent/bootstrap4-toggle/issues/32#issuecomment-616974580\r\n */\r\n.input-group .toggle > .toggle-group > .toggle-on,\r\n.input-group .toggle > .toggle-group > .toggle-off {\r\n position: absolute;\r\n}\r\n\r\n.toggle:not(:hover):not(:focus).btn-outline-primary\r\n > .toggle-group\r\n > .toggle-handle {\r\n background-color: var(--bs-primary);\r\n border-color: var(--bs-primary);\r\n}\r\n.toggle:not(:hover):not(:focus).btn-outline-secondary\r\n > .toggle-group\r\n > .toggle-handle {\r\n background-color: var(--bs-secondary);\r\n border-color: var(--bs-secondary);\r\n}\r\n.toggle:not(:hover):not(:focus).btn-outline-success\r\n > .toggle-group\r\n > .toggle-handle {\r\n background-color: var(--bs-success);\r\n border-color: var(--bs-success);\r\n}\r\n.toggle:not(:hover):not(:focus).btn-outline-danger\r\n > .toggle-group\r\n > .toggle-handle {\r\n background-color: var(--bs-danger);\r\n border-color: var(--bs-danger);\r\n}\r\n.toggle:not(:hover):not(:focus).btn-outline-warning\r\n > .toggle-group\r\n > .toggle-handle {\r\n background-color: var(--bs-warning);\r\n border-color: var(--bs-warning);\r\n}\r\n.toggle:not(:hover):not(:focus).btn-outline-info\r\n > .toggle-group\r\n > .toggle-handle {\r\n background-color: var(--bs-info);\r\n border-color: var(--bs-info);\r\n}\r\n.toggle:not(:hover):not(:focus).btn-outline-light\r\n > .toggle-group\r\n > .toggle-handle {\r\n background-color: var(--bs-light);\r\n border-color: var(--bs-light);\r\n}\r\n.toggle:not(:hover):not(:focus).btn-outline-dark\r\n > .toggle-group\r\n > .toggle-handle {\r\n background-color: var(--bs-dark);\r\n border-color: var(--bs-dark);\r\n}\r\n\r\n/* NOTE: Must come first, so classes below override as needed */\r\n/* [default] (bootstrap-4.1.3 - .btn - h:38px) */\r\n.toggle.btn {\r\n min-width: 3.7rem;\r\n min-height: 2.15rem;\r\n}\r\n.toggle > .toggle-group > .toggle-on.btn {\r\n padding-right: 1.5rem;\r\n}\r\n.toggle > .toggle-group > .toggle-off.btn {\r\n padding-left: 1.5rem;\r\n}\r\n\r\n/* `lg` (bootstrap-4.1.3 - .btn - h:48px) */\r\n.toggle.btn-lg {\r\n min-width: 5rem;\r\n min-height: 2.815rem;\r\n}\r\n.toggle > .toggle-group > .toggle-on.btn-lg {\r\n padding-right: 2rem;\r\n}\r\n.toggle > .toggle-group > .toggle-off.btn-lg {\r\n padding-left: 2rem;\r\n}\r\n.toggle > .toggle-group > .toggle-handle.btn-lg {\r\n width: 2.5rem;\r\n}\r\n\r\n/* `sm` (bootstrap-4.1.3 - .btn - h:31px) */\r\n.toggle.btn-sm {\r\n min-width: 3.125rem;\r\n min-height: 1.938rem;\r\n}\r\n.toggle > .toggle-group > .toggle-on.btn-sm {\r\n padding-right: 1rem;\r\n}\r\n.toggle > .toggle-group > .toggle-off.btn-sm {\r\n padding-left: 1rem;\r\n}\r\n\r\n/* `xs` (bootstrap-3.3 - .btn - h:22px) */\r\n.toggle.btn-xs {\r\n min-width: 2.19rem;\r\n min-height: 1.375rem;\r\n}\r\n.toggle > .toggle-group > .toggle-on.btn-xs {\r\n padding-right: 0.8rem;\r\n}\r\n.toggle > .toggle-group > .toggle-off.btn-xs {\r\n padding-left: 0.8rem;\r\n}\r\n"]} \ No newline at end of file diff --git a/vendor/datatables-buttons/buttons.bootstrap5.min.css b/vendor/datatables-buttons/buttons.bootstrap5.min.css new file mode 100644 index 0000000000..6c0c20c93c --- /dev/null +++ b/vendor/datatables-buttons/buttons.bootstrap5.min.css @@ -0,0 +1 @@ +@keyframes dtb-spinner{100%{transform:rotate(360deg)}}@-o-keyframes dtb-spinner{100%{-o-transform:rotate(360deg);transform:rotate(360deg)}}@-ms-keyframes dtb-spinner{100%{-ms-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes dtb-spinner{100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-moz-keyframes dtb-spinner{100%{-moz-transform:rotate(360deg);transform:rotate(360deg)}}div.dataTables_wrapper{position:relative}div.dt-buttons{position:initial}div.dt-buttons .dt-button{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}div.dt-button-info{position:fixed;top:50%;left:50%;width:400px;margin-top:-100px;margin-left:-200px;background-color:white;border-radius:.75em;box-shadow:3px 4px 10px 1px rgba(0, 0, 0, 0.8);text-align:center;z-index:2003;overflow:hidden}div.dt-button-info h2{padding:2rem 2rem 1rem 2rem;margin:0;font-weight:normal}div.dt-button-info>div{padding:1em 2em 2em 2em}div.dtb-popover-close{position:absolute;top:6px;right:6px;width:22px;height:22px;text-align:center;border-radius:3px;cursor:pointer;z-index:2003}button.dtb-hide-drop{display:none !important}div.dt-button-collection-title{text-align:center;padding:.3em .5em .5em;margin-left:.5em;margin-right:.5em;font-size:.9em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}div.dt-button-collection-title:empty{display:none}span.dt-button-spacer{display:inline-block;margin:.5em;white-space:nowrap}span.dt-button-spacer.bar{border-left:1px solid rgba(0, 0, 0, 0.3);vertical-align:middle;padding-left:.5em}span.dt-button-spacer.bar:empty{height:1em;width:1px;padding-left:0}div.dt-button-collection .dt-button-active{padding-right:3em}div.dt-button-collection .dt-button-active:after{position:absolute;top:50%;margin-top:-10px;right:1em;display:inline-block;content:"✓";color:inherit}div.dt-button-collection .dt-button-active.dt-button-split{padding-right:0}div.dt-button-collection .dt-button-active.dt-button-split:after{display:none}div.dt-button-collection .dt-button-active.dt-button-split>*:first-child{padding-right:3em}div.dt-button-collection .dt-button-active.dt-button-split>*:first-child:after{position:absolute;top:50%;margin-top:-10px;right:1em;display:inline-block;content:"✓";color:inherit}div.dt-button-collection .dt-button-active-a a{padding-right:3em}div.dt-button-collection .dt-button-active-a a:after{position:absolute;right:1em;display:inline-block;content:"✓";color:inherit}div.dt-button-collection span.dt-button-spacer{width:100%;font-size:.9em;text-align:center;margin:.5em 0}div.dt-button-collection span.dt-button-spacer:empty{height:0;width:100%}div.dt-button-collection span.dt-button-spacer.bar{border-left:none;border-bottom:1px solid rgba(0, 0, 0, 0.1);padding-left:0}@media print{table.dataTable tr>*{box-shadow:none !important}}div.dt-buttons div.btn-group{position:initial}div.dt-buttons span.dt-button-spacer.empty{margin:1px}div.dt-buttons span.dt-button-spacer.bar:empty{height:inherit}div.dt-buttons .btn.processing{color:rgba(0, 0, 0, 0.2)}div.dt-buttons .btn.processing:after{position:absolute;top:50%;left:50%;width:16px;height:16px;margin:-8px 0 0 -8px;box-sizing:border-box;display:block;content:" ";border:2px solid rgb(40, 40, 40);border-radius:50%;border-left-color:transparent;border-right-color:transparent;animation:dtb-spinner 1500ms infinite linear;-o-animation:dtb-spinner 1500ms infinite linear;-ms-animation:dtb-spinner 1500ms infinite linear;-webkit-animation:dtb-spinner 1500ms infinite linear;-moz-animation:dtb-spinner 1500ms infinite linear}div.dt-button-collection{position:absolute;min-width:200px;margin-top:4px;z-index:2002;background-color:var(--bs-body-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);box-shadow:var(--bs-box-shadow)}div.dt-button-collection div.dt-button-collection-title{padding:.75em 0 .25em}div.dt-button-collection .dropdown-menu{position:relative;display:block;width:100%;background-color:transparent;border:none;border-radius:0;box-shadow:none}div.dt-button-collection .dt-button{position:relative}div.dt-button-collection .dt-button.dropdown-toggle::after{position:absolute;right:12px;top:14px}div.dt-button-collection div.dt-button-split{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;align-content:flex-start;align-items:stretch}div.dt-button-collection div.dt-button-split>*:first-child{min-width:auto;flex:1 0 50px}div.dt-button-collection div.dt-button-split button:last-child{min-width:33px;flex:0;background:transparent;border:none;line-height:1rem;color:var(--bs-dropdown-link-color);padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);overflow:visible}div.dt-button-collection div.dt-button-split button:last-child:hover{color:var(--bs-dropdown-link-hover-color);background-color:var(--bs-dropdown-link-hover-bg)}div.dt-button-collection.fixed{position:fixed;display:block;top:50%;left:50%;margin-left:-75px;border-radius:5px;background-color:white;padding:.5em}div.dt-button-collection.fixed.two-column{margin-left:-200px}div.dt-button-collection.fixed.three-column{margin-left:-225px}div.dt-button-collection.fixed.four-column{margin-left:-300px}div.dt-button-collection.fixed.columns{margin-left:-409px}@media screen and (max-width: 1024px){div.dt-button-collection.fixed.columns{margin-left:-308px}}@media screen and (max-width: 640px){div.dt-button-collection.fixed.columns{margin-left:-203px}}@media screen and (max-width: 460px){div.dt-button-collection.fixed.columns{margin-left:-100px}}div.dt-button-collection.fixed>:last-child{max-height:100vh;overflow:auto}div.dt-button-collection.two-column>:last-child,div.dt-button-collection.three-column>:last-child,div.dt-button-collection.four-column>:last-child{display:block !important;column-gap:8px}div.dt-button-collection.two-column>:last-child>*,div.dt-button-collection.three-column>:last-child>*,div.dt-button-collection.four-column>:last-child>*{-webkit-column-break-inside:avoid;break-inside:avoid}div.dt-button-collection.two-column{width:400px}div.dt-button-collection.two-column>:last-child{padding-bottom:1px;column-count:2}div.dt-button-collection.three-column{width:450px}div.dt-button-collection.three-column>:last-child{padding-bottom:1px;column-count:3}div.dt-button-collection.four-column{width:600px}div.dt-button-collection.four-column>:last-child{padding-bottom:1px;column-count:4}div.dt-button-collection .dt-button{border-radius:0}div.dt-button-collection.columns{width:auto}div.dt-button-collection.columns>:last-child{display:flex;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:6px;width:818px;padding-bottom:1px}div.dt-button-collection.columns>:last-child .dt-button{min-width:200px;flex:0 1;margin:0}div.dt-button-collection.columns.dtb-b3>:last-child,div.dt-button-collection.columns.dtb-b2>:last-child,div.dt-button-collection.columns.dtb-b1>:last-child{justify-content:space-between}div.dt-button-collection.columns.dtb-b3 .dt-button{flex:1 1 32%}div.dt-button-collection.columns.dtb-b2 .dt-button{flex:1 1 48%}div.dt-button-collection.columns.dtb-b1 .dt-button{flex:1 1 100%}@media screen and (max-width: 1024px){div.dt-button-collection.columns>:last-child{width:612px}}@media screen and (max-width: 640px){div.dt-button-collection.columns>:last-child{width:406px}div.dt-button-collection.columns.dtb-b3 .dt-button{flex:0 1 32%}}@media screen and (max-width: 460px){div.dt-button-collection.columns>:last-child{width:200px}}div.dt-button-background{position:fixed;top:0;left:0;width:100%;height:100%;z-index:999}@media screen and (max-width: 767px){div.dt-buttons{float:none;width:100%;text-align:center;margin-bottom:.5em}div.dt-buttons a.btn{float:none}}div.dt-button-info{background-color:var(--bs-body-bg);border:1px solid var(--bs-border-color-translucent)}:root[data-bs-theme=dark] div.dt-button-collection.fixed{background-color:var(--bs-body-bg);border:1px solid var(--bs-border-color-translucent)} diff --git a/vendor/datatables-buttons/buttons.bootstrap5.min.js b/vendor/datatables-buttons/buttons.bootstrap5.min.js new file mode 100644 index 0000000000..5e6b386350 --- /dev/null +++ b/vendor/datatables-buttons/buttons.bootstrap5.min.js @@ -0,0 +1,4 @@ +/*! Bootstrap integration for DataTables' Buttons + * © SpryMedia Ltd - datatables.net/license + */ +(e=>{var o,a;"function"==typeof define&&define.amd?define(["jquery","datatables.net-bs5","datatables.net-buttons"],function(t){return e(t,window,document)}):"object"==typeof exports?(o=require("jquery"),a=function(t,n){n.fn.dataTable||require("datatables.net-bs5")(t,n),n.fn.dataTable.Buttons||require("datatables.net-buttons")(t,n)},"undefined"==typeof window?module.exports=function(t,n){return t=t||window,n=n||o(t),a(t,n),e(n,0,t.document)}:(a(window,o),module.exports=e(o,window,window.document))):e(jQuery,window,document)})(function(e,t,n){var o=e.fn.dataTable;return e.extend(!0,o.Buttons.defaults,{dom:{container:{className:"dt-buttons btn-group flex-wrap"},button:{className:"btn btn-secondary",active:"active",dropHtml:"",dropClass:"dropdown-toggle"},collection:{container:{tag:"div",className:"dt-button-collection",content:{tag:"ul",className:"dropdown-menu show"}},closeButton:!1,button:{tag:"li",className:"dt-button",active:"dt-button-active-a",disabled:"disabled",liner:{tag:"a",className:"dropdown-item"},spacer:{className:"divider",tag:"li"}}},split:{action:{tag:"a",className:"btn btn-secondary dt-button-split-drop-button",closeButton:!1},dropdown:{tag:"button",className:"btn btn-secondary dt-button-split-drop dropdown-toggle-split",closeButton:!1,align:"split-left",splitAlignClass:"dt-button-split-left"},wrapper:{tag:"div",className:"dt-button-split btn-group",closeButton:!1}}},buttonCreated:function(t,n){return t.buttons?e('
    ').append(n):n}}),o.ext.buttons.collection.rightAlignClassName="dropdown-menu-right",o}); \ No newline at end of file diff --git a/vendor/datatables-buttons/dataTables.buttons.min.js b/vendor/datatables-buttons/dataTables.buttons.min.js new file mode 100644 index 0000000000..481754d594 --- /dev/null +++ b/vendor/datatables-buttons/dataTables.buttons.min.js @@ -0,0 +1,4 @@ +/*! Buttons for DataTables 3.2.6 + * © SpryMedia Ltd - datatables.net/license + */ +(e=>{var o,i;"function"==typeof define&&define.amd?define(["jquery","datatables.net"],function(t){return e(t,window,document)}):"object"==typeof exports?(o=require("jquery"),i=function(t,n){n.fn.dataTable||require("datatables.net")(t,n)},"undefined"==typeof window?module.exports=function(t,n){return t=t||window,n=n||o(t),i(t,n),e(n,t,t.document)}:(i(window,o),module.exports=e(o,window,window.document))):e(jQuery,window,document)})(function(x,m,v){var e=x.fn.dataTable,o=0,C=0,_=e.ext.buttons,i=null;function y(t,n,e){x.fn.animate?t.stop().fadeIn(n,e):(t.css("display","block"),e&&e.call(t))}function w(t,n,e){x.fn.animate?t.stop().fadeOut(n,e):(t.css("display","none"),e&&e.call(t))}function A(n,t){if(!e.versionCheck("2"))throw"Warning: Buttons requires DataTables 2 or newer";if(!(this instanceof A))return function(t){return new A(t,n).container()};!0===(t=void 0===t?{}:t)&&(t={}),Array.isArray(t)&&(t={buttons:t}),this.c=x.extend(!0,{},A.defaults,t),t.buttons&&(this.c.buttons=t.buttons),this.s={dt:new e.Api(n),buttons:[],listenKeys:"",namespace:"dtb"+o++},this.dom={container:x("<"+this.c.dom.container.tag+"/>").addClass(this.c.dom.container.className)},this._constructor()}x.extend(A.prototype,{action:function(t,n){t=this._nodeToButton(t);return void 0===n?t.conf.action:(t.conf.action=n,this)},active:function(t,n){var t=this._nodeToButton(t),e=this.c.dom.button.active,o=x(t.node);return t.inCollection&&this.c.dom.collection.button&&void 0!==this.c.dom.collection.button.active&&(e=this.c.dom.collection.button.active),void 0===n?o.hasClass(e):(o.toggleClass(e,void 0===n||n),this)},add:function(t,n,e){var o=this.s.buttons;if("string"==typeof n){for(var i=n.split("-"),s=this.s,r=0,a=i.length-1;r"),b.conf._collection=b.collection,this._expandButton(b.buttons,b.conf.buttons,b.conf.split,!a,a,s,b.conf)),b.conf.split){b.collection=x("<"+u.container.tag+"/>"),b.conf._collection=b.collection;for(var g=0;g").addClass("dt-button-spacer "+n.style+" "+h.spacer.className).html(i(n.text)),{conf:n,node:d,nodeChild:null,inserter:d,buttons:[],inCollection:t,isSplit:e,collection:null,textNode:d};if(n.available&&!n.available(f,n)&&!n.html)return!1;n.html?c=x(n.html):(s=function(t,n,e,o,i){o.action.call(n.button(e),t,n,e,o,i),x(n.table().node()).triggerHandler("buttons-action.dt",[n.button(e),n,e,o])},r=function(t,n,e,o){o.async?(u.processing(e[0],!0),setTimeout(function(){s(t,n,e,o,function(){u.processing(e[0],!1)})},o.async)):s(t,n,e,o,function(){})},d=n.tag||h.tag,a=void 0===n.clickBlurs||n.clickBlurs,c=x("<"+d+"/>").addClass(h.className).attr("aria-controls",this.s.dt.table().node().id).on("click.dtb",function(t){t.preventDefault(),!c.hasClass(h.disabled)&&n.action&&r(t,f,c,n),a&&c.trigger("blur")}).on("keypress.dtb",function(t){13===t.keyCode&&(t.preventDefault(),!c.hasClass(h.disabled))&&n.action&&r(t,f,c,n)}),"a"===d.toLowerCase()&&c.attr("href","#"),"button"===d.toLowerCase()&&c.attr("type","button"),l=h.liner.tag?(d=h.liner.tag.toLowerCase(),l=x("<"+d+"/>").html(i(n.text)).addClass(h.liner.className),"a"===d&&l.attr("href","#"),"a"!==d&&"button"!==d||(l.attr("tabindex",this.s.dt.settings()[0].iTabIndex),p=!0),c.append(l),l):(c.html(i(n.text)),c),p||c.attr("tabindex",this.s.dt.settings()[0].iTabIndex),!1===n.enabled&&c.addClass(h.disabled),n.className&&c.addClass(n.className),n.titleAttr&&c.attr("title",i(n.titleAttr)),n.attr&&c.attr(n.attr),n.namespace||(n.namespace=".dt-button-"+C++),void 0!==n.config&&n.config.split&&(n.split=n.config.split));var b,g,m,v,d=this.c.dom.buttonContainer,p=d&&d.tag?x("<"+d.tag+"/>").addClass(d.className).append(c):c,y=(this._addKey(n),this.c.buttonCreated&&(p=this.c.buttonCreated(n,p)),e&&(y=(d=t?x.extend(!0,this.c.dom.split,this.c.dom.collection.split):this.c.dom.split).wrapper,b=x("<"+y.tag+"/>").addClass(y.className).append(c),g=x.extend(n,{autoClose:!0,align:d.dropdown.align,attr:{"aria-haspopup":"dialog","aria-expanded":!1},className:d.dropdown.className,closeButton:!1,splitAlignClass:d.dropdown.splitAlignClass,text:d.dropdown.text}),this._addKey(g),m=function(t,n,e,o){_.split.action.call(n.button(b),t,n,e,o),x(n.table().node()).triggerHandler("buttons-action.dt",[n.button(e),n,e,o]),e.attr("aria-expanded",!0)},v=x('').html(this.c.dom.button.dropHtml).addClass(this.c.dom.button.dropClass).on("click.dtb",function(t){t.preventDefault(),t.stopPropagation(),v.hasClass(h.disabled)||m(t,f,v,g),a&&v.trigger("blur")}).on("keypress.dtb",function(t){13===t.keyCode&&(t.preventDefault(),v.hasClass(h.disabled)||m(t,f,v,g))}),0===n.split.length&&v.addClass("dtb-hide-drop"),b.append(v).attr(g.attr)),(e?b:c).get(0));return{conf:n,node:y,nodeChild:y&&y.children&&y.children.length?y.children[0]:null,inserter:e?b:p,buttons:[],inCollection:t,isSplit:e,inSplit:o,collection:null,textNode:l}},_checkSplitEnable:function(t){t=t||this.s.buttons;for(var n=0;n").addClass(h.containerClassName).addClass(h.collectionLayout).addClass(h.splitAlignClass).addClass(a).css("display","none").attr({"aria-modal":!0,role:"dialog"}),o=x(o).addClass(h.contentClassName).attr("role","menu").appendTo(e),f.attr("aria-expanded","true"),g.parents("body")[0]!==v.body&&(g=x(v.body).children("div, section, p").last()),h.popoverTitle?e.prepend('
    '+h.popoverTitle+"
    "):h.collectionTitle&&e.prepend('
    '+h.collectionTitle+"
    "),h.closeButton&&e.prepend('
    ×
    ').addClass("dtb-collection-closeable"),y(e.insertAfter(g),h.fade),n=x(t.table().container()),a=e.css("position"),"container"!==h.span&&"dt-container"!==h.align||(g=g.parent(),e.css("width",n.width())),"absolute"===a?(f=x(g[0].offsetParent),t=g.position(),n=g.offset(),a=f.offset(),s=f.position(),r=m.getComputedStyle(f[0]),a.height=f.outerHeight(),a.width=f.width()+parseFloat(r.paddingLeft),a.right=a.left+a.width,a.bottom=a.top+a.height,a=t.top+g.outerHeight(),l=t.left,e.css({top:a,left:l}),r=m.getComputedStyle(e[0]),(c=e.offset()).height=e.outerHeight(),c.width=e.outerWidth(),c.right=c.left+c.width,c.bottom=c.top+c.height,c.marginTop=parseFloat(r.marginTop),c.marginBottom=parseFloat(r.marginBottom),h.dropup&&(a=t.top-c.height-c.marginTop-c.marginBottom),"button-right"!==h.align&&!e.hasClass(h.rightAlignClassName)||(l=t.left-c.width+g.outerWidth()),"dt-container"!==h.align&&"container"!==h.align||lx(m).width()&&(l=x(m).width()-c.width-s.left),n.left+l<0&&(l=-n.left),s.top+a+c.height>x(m).height()+x(m).scrollTop()&&(a=t.top-c.height-c.marginTop-c.marginBottom),f.offset().top+a").addClass(n).css("display","none").insertAfter(o),e):w(x("div."+n),e,function(){x(this).removeClass(n).remove()})},A.instanceSelector=function(t,s){var r,a,l;return null==t?x.map(s,function(t){return t.inst}):(r=[],a=x.map(s,function(t){return t.name}),(l=function(t){var n;if(Array.isArray(t))for(var e=0,o=t.length;e)|(Cxf^z#3|K%LOye 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%0A8es9J-O#B^k2hB|GY_q0Qg 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

    U+sF;mB=o`u{Kv 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

    J5RPh~>9IQEDv|8fkW zLDez@VVM2N$;nAoldu7vmZYhZl&%eK#pMYRByK;X0O(XEz|=+o%T!-?3Jml&O$bM| zs1Be+P*xD4Q*8phOb4$ zsR+p0F~LrpLMBE=ME{i13r9>C@cDWhls&32R9{gwmZ(B##}x%n3zw^k*A8prEzZS$ zogY(y`wA#?x^|xH*Xqk{BAIWd1gfLCn9kz%<3vbVjQFJI4WrH|uoPdpkq<96(S{ZX zvVB=>{&4&}US7J+#LuYu&f}(nxB?cIv7)K(`j;y|{NWGH_~X8e3DFIE_6qA?p3$`_ zuu8;pu&{Z0k@I(@>&JK?N1}Tj9B2X<(A+hUB~`2Nn;GN4?Mtk~Xhl!MB#qAG!F_iu zGb%I7vbwX3TBr5VG>UpyMWT}BdjUp`!=t%ZVo{QK=ru~^K1#wsQ0yv+Z{^10p#WNO zKi|Spt_Zj=yu>8(tGYcdY55-nHk;`+Ruoa!`4mc zel)b$GDfqbkWQA3W!6X$l2N!AIcqW8L4bQXH{yc)?!rd5N22piVa|=tw_DVIm z2^^!?maD!sujtWKJTo2SP3x51$$T8M)KE_OGx&^Lhv(kH-T0{}igeHA5uxR{R;S1N zIO9+5*|UebZtkgTk#L4G#jLj5?ZXh=b=O_#PLC-j{f6pI#F38tDK1iuTKbzN>buVV z>!2U8VEp`!9XnjEdpkedQqLfD>P1H~Na#Cy{g1pG zec&n=IXD33=sn^A<@M4S2|SdD|wo-N@y2q&vU&JpfB-TlBz;=^iv|Ibb)p z*>Y=$bIYrc!Z}$GZ2Z5BjZc$V7H;UoYEdIa@CU8r58P;QN5k zLWOuPYb>65Q=r$rZ$$0FrC$q#<(Nicy5D}ubiptkO9c1~r0`ev4dcOHT`I2UUI)`O zEXUl96q+cGqc(w|k#$2ZPl%=~$&AE$#(5OLKx4(L4-&H+_EelluLH1A`3?mS8dh?y zg_2=_1NCo0n4**Kq}2IDKyWJ&ASt9_`3h^>?AB{A&bS3!7sT&)@Q$QBBp3-#FP-`e zkOYfL^t11xU}%_tbI?4kn+$=W+^NX&&?;v z8*>SPDC@ecDQmj-2caEFM`w-9c=l;%hb^!M2S@(aYq9Y!vbO6bUK4PNrpUbAHBGoJ z;Em3@t%S$u}n!%s7})KQ^(TI`p(7OUA`qwp6q|&(2kH z*^7oGJJU?6zD7rP-F27e-L;LLiU|k4O-YclLk&%4+2VTB({&fj>xFGG(}E9QtD{fV zYBk1c=g)sL$X^uPD%1e#2B4sk9MyC!&MzSH2;V&~udueZrQ()Q9velaJOS^#Y)B%!;>zUBz zcd_SI5&(TChh38I*HqgIvkWL-)O9_tVnVQ*Gi*(t>U5@b%|2^cR@CYbTdh`P_2DuQ z1w%d;GgSa&K%2kS13_sn0A0d2XY2K8>)U)8r|b3X%~;YQ$WbZ+T~%3}%L7&jT!Abh zS-Yj^q&-sf))G29{!yENt+hu6TQHCsAx6HWti-L2htS?kLDA{(&tVdRR zyDrVw=jnV-=;7{<6$%C2b9rG%nWC#_-uP$Cvb-{Owr5#vpIQxNc9;}kw5skK)xjfp zhG2>zfyk;{q`)$*-Cn}YoShqB{^}N1rHj(pS{Nsg%1()ky2gbYSW$ZnUrVXDT zqiN1evDhp*3yQ@VrMBaZ1Gm18bTrS!)XQ=s)+7;h5@#$|P89LHQalIZTMlB=x3gxNxm>A~%bDiV0~@<1CP4JL%@Y&5 z>-lc&e?72XOG`8F*IRRY^<{d3y>l%+ekInJcx(;433LN0q7T71K41%-tVbYQo*+pZ zz0mERSxwbcfvP_w&jCW{m5wxbq|xWoonEMD^hH~T@kZcD0XSHGPl3apGZoGWjQ$eE97xmPPz#m-`vy*JSwK6@GBu*-~ za_ZFd3KgHHTMrUlR4(@m717v_zSGi~W*)!B!L)IXRqlwj^inII;OPi_?&IwC+HP94 zud762Wsh0laAr2U-R6NZlZZNq-KV5{pp<;h6#&C)kT*4}CG(YuS7tE;wejHjRBRim zDl2E_p_AmjFBJ)bvWXX};8YZ|fwsQ3}tJ zkhML+dFCTOh2CLVCEF`)y+LPm@t{M;1-JDtL&CYoJ#8A5c|0Xo@-pnQ>nQK(@p69a z<;pXeKok>^v_A_;Q3NwPGV8~hh&IhzzQ^?(+RMj}zA-EXrs@7HKv2w7Aba1egs7g{ zs-p#TJlZhDvQB~8qFCFIxh;im@E%FQ_g>=fgD`UIX)4&mTtB6(6}K!b_Ia!(lm%^A z%-!i`@8N6~zaF%<9cEF?DigQ@P?H7n^Qb6pu~dc4GKaFH?yZ8S?DCcefRKsGDowv; zLDbeoe^WWo>yc)7t-t%9_~o8zX*+icmet)aAKdEU%Kj5;#jrf{Y?{jKAY7dGQe<4{ z6<;9BPubP;m-IjU6INI}7mf-PO8!ZmpjyQ%^`j2_4`eoLjnEQWjeCE&lH){EnJm|I zlrWlCS7+$z{wSdW_r00t7-Vf*h+MH2qKnVb$O>WG+2SP`6~4y7 zmHBYnsB{LU+-ie9d>QSQSdFPAlrWUvlz39uv5+pLB@|t5C)?|lMb)=zksBIKl&(@f z(_f87W5+X3e?lb^>)%<_m`_DxC<=Kv##H2V)+>%WMe+ZPs4DA^f487sh*5+rd@roW z5M8Htn0M!hoN53JWENJI6~%6Kuj`c*pZS2=YVAMcit+mJ2!znrgjmysfI3I_YTf-` z;q2bYsm9dg-VpevEN}6eZLg_>T8m-vU545iALm5{ov;k;2$VI;(Qb$yEmamiiZHT} z1?%U-cA`uxbjx6Lu1EV+r5CuB)`T+RnNM`$*09YGh-edu+^orWgeTMw2ujRZlLI@y|KN-E*XwoPz;#o(1V z-@a=1fsyHs)A7R$Ly)>5LI!H@Y-<~incv8?7-Iw&9`{rx(r&LJ6L0H|S6JsoX_2d|rzrzlO zL-d|w%V=OfVIRtpKg*QHziL-TqtWQ?{-pk@*CWe!**@-%tH^z4iV-=}2{e@)+`04f zK14;evv#E-ReM-F^^|7rN$+kYBE4l9r`3NGC#Gc;yXX+}p}0%?N!NSm=OXN>?8LHZ zcQc$1p0C;qa8b|H^`AuV)jJHhchjoeHmp4xMCPTbFpzJ%97KEyIE6PtDZl3VNt zGi)})#V4P9^6=_vE3R@$y-BewJZsw3Ab|h>;DZl7_=bNsK@iAAu7`RpJJ^eb`qK$`3Olw7t;z`?~X9#(pF#;|6-<5^*Op%F-h{~kVQXzh1Ho#Wr0uKOY z=1F=awZQ-9Jg$Ka;eLg#td&+V2>g%BD{iT=BbmgcY`@)%%FQ*)EZ&p4s~i7SFn>+h zf{~>3#Ra@37sKc@zMXnr_*4afKqLiU#d|T(9&}_<1ZXYr0`s`klK+IXIF)^6MK?WZ^|uj*awGJk6tM50ZfcotU6fQr0fN zgen+$1CKeWlPRmC3AQ8p!-+>WNP!sN*F065pRMXg42hWgzGVrM5T;n)`={rzrxqBl zD-3M7=kq&Rt9S3-JskrsXQ(hFzfTlqS*9R+(R+@DGa~~XUO?n$`LW%~A33lRUKMQQ>Z%9qT{*a+Bm!v3&zbw3Vys(OO?5F3JMBF-=z4!bT!k+n zUh}1aDQrPo&AVc3J8}f_F3<8Y8aMC;v2G4)B+0L2zich&U`v&!h(<>1SZOyVg!HbT z<1}TaQZ-IUffR7ay2J(4B*qM(YEpyvE?t86y5n{aO*6h?Vc>5vc=sRkT`Ea(=W?1S zJNm`$-5p<$G8#QTNn^6^K;7?TQ#3_m)DQ)Um^>=`cX(&^&tZ9zRrcn5Asv`}edG)5=s|YFDlxW0?N_9jtI!JNx~g z`OIgYHFVh$PWd+g>STsh&Ya9Tw$%5~8o~uM1;qu6%Q%Ru0*&nep;=oaQ%mS;InM_q zAs~+nja_H@0!_?1ty-3Pdihzv_sx6m8ULPC27E9S=9n`lZK?!aebbvSHH?>L)O!L7 z6l(wWZ@YqX`~#;y+Jn)=xLEIpu(Pey&+lZ&4hYj=CuCyXgO8`(9N^$=;9M-IR+;N- z^%XM3j$Y0gd8kz`1xA!#FdZK8HRhf$m3(cmP8mJlZ^LSZ=MMG15LcZ-+#Tfe80_v! zf=?3OlO;f7OeY~4Qw_Bc5;h+0M>N#a-6is&8c?T%Xv_pVmin}#84W#FQp&TFW`QWI z<7u}yK(awK1gD?TSW?75t8N7z-;Ni3zx`+};y^aEvc;Fvl6TyCHkWqtA{l8x&%EFr zbY=+$OQ^7H3&QsBpjOkeRs;N=uP;AX6EHi2{rLD_@K}D%Z-TD2jt;msWPw43N?x|( z>zWR7eP)E1n>*UBcMr2wZCh{Kzpb-kWq^VNIgP zcupL_CYqyh1WwgXKR4Z)tfB`bTcw=N^sTKG!5eF8n*PiKngS+gY;rE1uh%UYJ}oGt z*Y19#e^W>mg5moaXg%^Nv;vhtph*C|0TBWtDGTes@udf%2-#wS(CR9t*}FqhT5;Vz zJs@)+_gs?CH(M+uDE6#ppM6%6p1t`E@&|tf#%qgl@v8tH9X|w*&J)Ir@gJFN86I3- zULHTxmKihPxXIdj`m=p|<#DefB}rK?7FrdA!n^_J$}3*CrZyfDH>N`9*fmv_$qhh% zDp214OVL6HeO}Q*Rj7OWnG7UZ{ISNua7D&~e!c$C_y@st{Rr1tRnRs$Eh10kSQ!TRx0k(0nJia7xabHv=8=y^jzcoceQsM+K>`@wyWuQ5;07I2aH zKF>&$;S3KvQpAOv?lRTaC#I$*^qWFyq|*g3yxG&t^HrjeHl?QnPW;1^9`*?jPE*<@ z8kq_SJ8he&0wcD|sI>iQ_y@mjHV&dwI3Dg>hp)MC)GS&B0{g|u$3d@$)WWgh80aY) zNi2^=H6e8#ike~H6`=E!LKy0Ej@YZkZZ!LkiTQ&b@mzAOG?$qum&-0$expGL_HjdF z_sCRH?g5Xq%tS(DZ*ULh^uei|d(2n?^Uir<{>B@F<8=ND>hM<&J@inRJnwzB^V=HZ z#vf3b;y<8a0et-nOVJ{_3Z2Wh3zghD4x^zn7fX#;>CIDMiWxTQWauA4DxH;I!M141puWBr7a?(W0{^AB(R>X!qFjXlFTX#N$mr>XQ*zQOp zNm!VXBKGQcko)IN+q%6TWcJKS3d)_5g@vnG(IT%vj$xx|NnwI%O0nK+g>v`$b zUN{S*c~jxdqza!j^wQM;L(*6d@Q?NGl{C^1YOFsDA%wi`Uv2*devMu9wGSz&7o+}H zpSMi^H^nQ_>(E=!yV3j5$Iu9U8~r)@d&J98X%JNCNUIRB^;^2Vc>C_{AHMw|3cVGp z40n*>Eqvr~t&;8i**0UhI>9_9l6E6w_e~4m{rP7CCfD~?ta7-6uKjoLk*zfvY#w-D z-7jyKe(b61{TP7qV<@`Ne>bTwU#`!-MjM+ud@uI?0$M@$px2<^LLWlk(U=q^LN!fG zN5aD9YP{U*?TxsVE~HgmAoaWjZ_d$5S=uADB*KelA!cP14c&>18HnB}E;qVJq+?Re zNtvRa#r8&AWt8fRfdHG6-5$KLh&Ta2qPk`3BL|8}aNx>DOrS-4&{8qoO|7DVM1HNDm$^opse>HUTp7PKSd ze|TqQ!hoib?!fYg(f!X%1{eo$P>voc`m^$fpYj^??A(zNYc!3tQC)(iVhy1Mh!?D+Z}{lZ$k2HLNzJ12h}Ck#rZ{C>qF&9zgr z<-10F0`*jsYm)y{qzre&LCo+BBZ#1Yu#NLV8u;_Q&AqIMLKSpnkhJh1>f`97hHAp% zg`^R~uO=oY$hGmqiScMS6hVbQ4qlormkCx?VJHglR(jwvpPsQHD$@d_W>Z5|4P2BtJjyu%yOxh|(H`^j1JeqYq zf#20_?WQ3C?i*QzB?!SJ?tcCDoQqLc9i@f{=h#w*q9xX@V#9Fagb? zq0wru8`scLXec2QuLn|#4M~s7uuO-O=>f~8^)sp9er(d{;mEe9%EKpeyoKXG&1SQK zf#KUfd^VTM{c&UWXJ~42&*fS2u$Ix}cQ{#$zbO$vJDBwjj*R7vGFtM3PS9H1$hT~w zd7Vkpo1`gcx~pslAnn?SY7V5`UOm8-zgQ5?w_9mFrLkn+^>$MLU8IqwQ?t6B{q<@; z9KRLr9KY4l;bb8*zWDoRO(x^-OXSag52~_MtSl_dUv2#7P#XUolze~uE5-Qm@6nH9 z&}9^mj^n;=9oa?N*qnPzg}EstZQ4}1K8%L_8*uw@PX^;%yD-j-UkwAZ7{&UR&zaJA zv){)VN?!LmLNl1x*1~N(gdwV+6W)g#9irFdODby@hK=6zdWb?n83~m^g8!T&vz7W! z_!;wZ3V=29E*f$sq3=CYgOmVBBet#Rog@uJovEbUW z6kO}L#mwsDdbkRcOxw`~fcfh2N6m=OtFJ{BFg4*GCc#{b>T1^kcOE}}Ts2L@z><2k zqUqW{Z|tFoi3vxRGnste-KSWst!ehKE8{B0!gO8niW4)7Vuo|EHL3tQQ}3aA#RM=f zF=b=1R+Oqop-VD|%1FJ_6Y40?pLH!s+KBt3(P;GBrt6A#ja>0%d(yB_nJ*~&CDVQW zjc6C2RCgML+SFfUo}_e~!{hO;~ig0LFZ&YdW(wpQAy20{kn=C$#b$05lUcYaeQ zUT3OU@2@Yg&4jQ*aPZLo&_0D0(Lr==BoVJn+Vt3#n=X?SbuQ_^Rjeh@BpMEfexL5i zT+Sd(<;iWMq*6CTn&5R#zn%6hd(IM0L!>el#7@j4DYY}tSM2QD8@$Ob7Hj=lv1sRO z^{J_PEkC}yTX;5V`kv=EA4PpW+`w(?I_#61Z9!bC#qiak85R$(`v>dbx$UKQ{?w56 zBi}}Y55GG!%hmkRjpEId!hD-?-HsZl#3NOojo?-eH(7|pS?1f>Ca$n`c8)dJpCR~? znYpJ%$jfvw(7KF){^i2|8}-37gL{HF%GvP^71nP_d->wc@<3%7M9|qa(@heMf4bL; znr5H^sDGBWl2w%V7r=W%#ss61l^uCJi0W+Cr>ui8QqDDI!U6_eM_Ya?y<&=#PUKj5 zPzmcHVEwqC2H{w0UD*08RBXdOpYb~Ji_iowQK7r6Cd^3>!|8D1k1eE4ixa)=IFi6T zF8Lq0j{lwy{ZC;Z`sJRN{!d{q{e>WbOWGg0SkDQJ8ip0wh^k($C=;N@O zWD)f^96+OfAks{ODUP@lf4hVofN5ekyjwb3rcI%XgZr9lnyPJK$p;~9doz9`_9#S^ zl2vL>6$)K%zM;x|Ry1oXo-9Pa9t=B8Rnx3eR4IUM3$YnSoh@I&mTec?v8nNwHumQp zQrzEVc78e;pADc8yJPZEZ;V*?&S&IvJjQpX($2m$kW}=z08~1XRj0hM!(wG5@xX4c zlU4?xQ`w~8D7viqml9@BvJ5kfDn7cd2njYi>_e;~i+imPEW@}DFV#Ud4XYHGLLB-# z(iI1&8A9M!K6G%$eQ5l1%d(~meu*>|YpuzN!n9Ri11y+69!aCjdGkX$xR0ek!hMYb zdZLqdd&6XovbHF>ogOeA9HSmJRYj%3t=Jx&nStH)AfPJr9D<;Z$x6LGr+@CCUSA;? zW5Nv@+w%-gaEdeg?*>k9$T=1>#`37gEk|!2EKd+dKPwvkd-@g5m0jNBeZ#FZ6$TAU`W;37Td_!P# zp&x$JdB_}9!c3FR%Of}*Rg*S3SP$fw=hBx^6?kk zD_T%q+Q-!?9M!Bm3wptBxp6h<*|cU%|)B9Mb0sLc$Yn+DEmL*Bh1h+=&?-D2vUR6jfq@;gl zaJG6oP8uYgfoqpHZH#62oU~qr-j3dbLm}f)j{c-6OHx)l_^yF3IGuo3O;y^|G-~t0 zBS15z@fchTnHckQtjKdLSV7FA`rP zCnA^7>AP5x)F%B|0%2D&j0r7=p4c7+R9$yE)OR;CscUQQ3=2O;B9@Ek+K1PE1z z5=N+X!q^X4>cgg5D(4FrzaE!)`*;%!A(sZ6@C0E%yu6Yu3;?cR9SebVtZ-<-2u#sP z4y_9)aYLMo;rbQ9xn)Sk6I_imSs9PxrsQlUR{0Z#WW1UKC{G9g@q_}vU;Q+o*f~13 zH(|Ps>TbSic`)xMZ%fM>7}Jbh1j7SyRS|AxAooq zw5d^Q-MfW@p+%`SIW6>PKi_Oq7XlDZxREllngw&i@I0&K6zvbwPJ8BY^LlrCYp>9c zvoaJ8hwmFlFF^2c$~8Oar%73W&Fc%IXde(Ssy?8g%=VywY>;hc?HkOe!}bVuBfkT; zWwGpsZ47B7-CjH7Nx&+E>dh|EWpwcZR(WVAP1DYsayrp;Lz=!t_35R>rKRafNf5L` ze(}7`w7)xj)f#!#FQnu}K$@@Ul*mNWjoJFNDTJ7w)F`!vbSsZGXXl<<%CdR=K81F) zzT9>w9>AwIZTvi^h3l|blvwUncvFFJ)?;MThhQC@p%rnp*%PfW+Fb zB3w}vC1d=!-WSX5g!aAY6uN|7VVw>`l^YY@bMjd38FZmL4a|`^{YusuSq^dLh`=B9 zrdAuB7D+o8oDxZHLQpNd;tN)1&3w+b*pNjKALvcX&gIutgr6NAO9+Hv?bwM48khFa zeM~c9vl(V62JO8Xz~_K5MHfA6S96?v$pOzR*L>o7dERQfqxMtM&MF^#NaN!u=fSm_rkwz?L1tkKTsGR8=Qqh`VSDUhDn-Z94VG)u$#iwm zESNKL6t=zE>%|w1p^#co=%&(kooAb{H2nGAo&$GRWIl}ivco%cU9aw{>cLkn7R#zC z?hCB12LH`Dr|ftr$sw50H%-$F^y;pv7MhMT;pVblYhz#N~=!!RT`yqZxS2@DSjA;L|sO?bJim$>eGH#Rmn*R>7KHC?x(MX(K@LpG|x z7jy~Vy`KWdC2(h&rjMj=Z1T{LfBfSkY4fe0JOc0E;=0{j)|+sgLqGY+Pt4#xp{jDs z%%41hWVA(^Zz-cAWe7PspC9ECZ8GA9>@&Fd$va z`UYbg)e632lkpbF)HMqgF@jq^2V2%(>O%p#mBaj$vJaZthN5gJ0paXx+^7=uQ~yGh z1U^S!Jy3vKnJLd=SSrzy2SR26{a zIVP@#z3kdyABZD#-+<6LyZ3Xg3YtL6lG9^o$diOi{LRPJ42k`>&J`Akkt|znXH4qI zL~2F+eJ#HygwXZkp`u}0#=kuL@WY25)>>p7Oo{dn?K>2lzw(S391#Wxd@q`d%qku# z>iS1s>U@BXh2DxO+2|ZzA!o>h7R%_O1ttj%o7f>25*jm&0|S(gB9d=HvG9n*#rW4Y zHa4oM;}ge^PY6Wwdt<|*RGT<{d_tqt+G0J}T)Ac&J9O}A5tnbM0i$OVC3{LA86>jn z;+Nk6W*p_`LR2BC&N%Gs4la zFJE6@XDTP7dx5IT)>ZZWX4Ugc*O~XRq=0UxqxHQjm)QgL*q7eKBHA|D)FS$n!|UE|Fm1C^%b@t7rMh~c8#j)FZ)_Q_gSG4*otL({OhHOA zLX5vL`!L(H58MVZ8CwZZj7qf}+?;{WnV2*uV(q!6ZUUc-;n;3)v%qz&=5x*M`uir; zCRh%m!Fl5g@e&@IPvV1)WOId8k6!Wz0s@6<@maLp`Szd^iA@}$v_=($9-2_N3g*V( z!i^18l}#L?ib89Y9-3g1tZfLrvfDp}5qud{A~;B9SU?=AiAtBWGh*f1!3#BlV@E#U+%%<;-eh5seGBdgB}pJ%OByAL z;`2CMMSqhR(eY^wkdC@i6FEQ=3}}G{w3M}Y*FefwJvW=7KSR#_glF`rsU16}rnor- z*A><+UZh(#QSfD5aU@@H$C$O^J(q`a9>pAd3b+g_;;2ZFL3Aeqo|3)UIwZ4Q!}{(m zQg8GE4I^mw&cyrsyfck_jzl=)IhfB2%D(BPH-`v(`FHjcmz65rF9^X9K4dbD?R}^q zHs`Y9Q`m=jm>|*OXZv^Y-SK67Yinz(eW(A&W}eA=k?(~^NO@8T)7e<{GjX-n3oU&{ zvJg+qr>(a5N4{&S{tML0nf|=a)>Z9COw-tpGoqvrxZ|Nd6S31i)dkyA;Un%(b?zs+DzfUBjX#j zo62_hgvkLmk(*0$wW41tB5N4yz~ENF#UL>CCLwST={A=;f)TQD zb)$*UEnnJWNP}8ZLBhQ)`M#a2vxL3TV7p@V>I^|`1lS9)Gl-s}smE5=ge`c1B;?VW zlJ$~=#Zbabr%y}`pxgG)xOBBmQsxg3&tX;w?~$OS+b!`3D6c7*QuWgA)oAm`U~^NC zO(p3hL66HbM>Z@=wgZfa2eiIaN^Wk>AY^lqB#WkJftR$ly$)`W6-xm#v##}Gx>&@M zeT)8{wYIgjwFRppOLZ6$97Fblh&}YqQ;HsIUf#zZ0ub>2G-9{e=X z4al5~A9y#Q8lE{dT#pm?y!l-Q<|G}c)1?&K6sPRoQo?IdFOOAmva;jr+Pj)T8eJ7H zo|FYy4UUt6{a*7Zn6m$8l8l2zqkeQP2U{U$!+wbsRKt>6Zmc<z5B6I&R&+kFoyq2~!T&NAqIkEj17VZF!aK$7NkaFH(E`^kohiC5D2n!+t|-^3&llSMuHNrj z3%Pfczsiok*0pGb1MMd;gQ$cC+W`;Ox6Szbi45WTcUPB6Ws}&Z}==-}u$=!1&d1x4X1Fdlj9zKwg^$^VSVMOvQcIka6ODeKgr( zl!YdO^WUj4l_jfD^*lGrMSlgq$KI1%CJPdd`@UAYj%MTJx(3l9hMtCjv~fnv^L{D; zc!idbCe&~Z=vwHnRe4ut?Fs{ZVYU@((b5l6h`G+*#~fjH2ywqV#4GE!@J;(?XE5gm ze8J!x&&=-stfThd%m~lS?l(B++}J-mgJDGP3OGae*6!iObQPER3*rD9eu^qt(ab(+aFH)whpZ7(7N(*nXwUk-M2Ra2!g-*?FV>k;r%uH{_om^r@PZwar$(AaVS44cgSTGE zgn)NFx3aJb-(5&DA=xmQ7Qgqx1*gK5m6hiXT=@2C!SK|nQ3_}yK z)#VZ7A6Mug zT_d^FB_^3QNE56ZS5}(D!xe}NL?JT+!x1^PdvBS@0MK|>ZX=+34p?w7RB(WCAX`sZ z;r%xYR{%Q;o3sW~Q&YqQBMF(>baAF86p42uQ^QEf<5$W>#hfkfBdP{OQBYsncMFkX(55Kaou%Pqu>S~$m3o=OOtVcxia3qTA zIHpgZTKLcatrVcK!sUno49Vkau(q;|Q~JFXnkfc{&(<0Z2^`xSdA0+Pxu9vPdPk#{ zjnTFP)|$;G!#+4ZX3Z^tyqnI^%JPn@V$bLKJomkLv30AeYT6yk6`B*Ak6(5?_c8W4 zYa+aO9t$|lE$B|akuWrWSQY z(pkNwl?dI+SF@hBHC;M3-a01fn*H=Mhu~a%qSZhTVbF0 z1XFBHS2^I^mf(DxG|#Vt6Rj`X(oHYf?Z`4Y(L_pof+^w|rx#c5UficgyfCEJQIIar zSE-V+fngY~(88=FOY@qhfHKSi^otVic2B(C!J40GC=b7xVIN-NW7ZsxnqlC0csKu; ztumouEY%rfoYON-^e)>ryVj;0ovQm^K8c<2I}fVXZ1&mc7JQ}cNmkh3X>{kK_p=&= z0m{gCS0KOo;-~EUfnh+gG(BA^f?LyP<9he? z7s60*F7jl3o#X}Q|Mlkla;BxD9y(};Q?H9LV%TX4ovqfMhd3T*X$k zR4UidmL4G8e_zoDXvR~#>1j{#GL%|&XbD585+-+A1b>ZY!sh?oXHK#$1|!aF2z`@rhAPXsJtu(Zf%TjMROZNx4tO34bCchbH6d)}C! zjSbr>!=68ZrQ6uB)W*g}L$wAvr#_4cpSZ6?2Ct-tUhGFcP{b2Rg|7anb(+m-D7wZ3 zyg|mr!9hFj ztqr|MZ@Q}KAd2|**Wp+2QDmYJRifqry4X`!HkEke-Ch#XrW*;tItC&c07*pD8(XpP z*S>ShOkV#N@8RKo{wu|#{+a!s8UOGzpZSbp5&z8oUU(qW_wKF5A3tUnS!BvG}m5aMoE>`w^mz!KUXWcO*oAFZAZcgTMlg;)p$3c4pS20sm zZW>(T^NUM`p-Nn++N5$s&h<8bN4=(Qd zUObwQT_Ns`cchiB(xl+@`IaAudz_D|4Ex2qu+Lf5+7#c7@q6#N=N>XQwetfWX0MVY zEVnfbRVCf`i`FhY?(xnURT=m3T}2WK5dyXT&J_N9}6J(b-p$r8@WdKxQpuNX)KN)=e5oF9PEM(Jfu;C08tZ8Dt)7RVhQoGvNyAeYWoF z{`VkdG{$J6N%Mv7HSKvU^X!omCs%9BEB!sYeune;*@;if-hB1(mE9{kX6h4`udP*YljDtwVQRER!AkjhOV{yioWb+DE#2g7rAr`6Y;LFa z1okTLrKnmv09zA0&_+(&a+DGn84OtVME5;(C+mw^8%KlhYA8TfjzNF@wI4pCP{*V$ zMZAC$4Fw|t8~`fRLqPm%Nf5Qt&^)qNZnxX*D=#UE&s@23r7emtxdLk9j9c8^Z(O{1 zaR|AK7jrO-MoNWWSJH=(h7NWePTEOIFTItR#wF5U>D!$ujp1~;PuJ3_oc(P<`_~f_ z6EuWW^h-Al;Y|pws|2x7)7t>gJ>djIo15!rg|?#DAy*%}{+isnU7`B6(Pxo`@Uz(b zT*7iT9ZS@2VS^^!i$qfHO$V$&%Ww?r zu-tF}HghU%eFR5$mC2dPpMEv%h}-+n86aAcu-Y~-R|uKOBcfDb6ot5#9Be9HUKqm5 z0bt?95>*r`y?8;#z3w&FbbDAkPb(-dj^a#{Q$-$vs?{o}QQ_l+LcB zsY|kLxsI`KZO<0~WB{oIml(oZU*Fo=qUbgBgT?Hp6Gh1vXJ#fA#wzm}YF`KR9nUi~ zNwRNQyyjDOY%Hw?y z74=lqz7qjYvOI^a=4MUd60J#PbzyUMr5=*$T$c2(SBe2uKB}TZieQShDZMRs?dS;U zb3q98l2F8r2)IeLowgKs^oFi(+@d7vUBz#qd%_6kXm=6>7z-DzY9OjkViWEQuBD6f z^YIce?2olAC zma=l}_D87!h~=&M8hovmBYUFaSgHDCY)E%*VJ#l*>T!u7`E-f+OAO(zA5!4LkNv|MX9$3K`Y>r==m|AF1YIp&aG!L0bRr z&eUq9W)15)0G5g8YZ}2Agvgglwc5kkXg|5K*KnDth?SwquEDpO)SEi{d!e5aS_x;OqAj`wNt+Sosl1L%8; zS_SYp7cUT+M$8p=#gr*A-o6{>81*nFzRK>VIZzG4oU7O_G~G4+>$hLHB1zUsKOowjDn2W$kkI~c+nC|pSrMd6-q zlFO)Kj;#O@D`v+VP?TlaQiIbokF1SGhSQ{leK$CfNiIiZ!Z-YHjaHwZCfIv>{>V@YAe|`Z(BD0sT8!I zQ9EtJSxBO&k5iHxt~{A-RAKe#YS|HZyw`TwXxx8giD~~Zzz+4kYYcm}u2H-)V9|A1 z|H#P4@8m9BGK?3-Ll8e^dS9gD5s$7~`Ep$;324Oqx_RP;3CecQhlyygPq^ZFQ zmx5X+&G`i6-;BhPjD|yUt8~k&tHvQ^tk)?QUx;M}FAq(Vf^jL#B_dU??b@pU%^SZ? z1yD&Bn^Q!*6+Afdg!V1iM0vC?1~VBHP=L@tBLs?r*&h5nkaeBG6AYmVR5E~8fb^+>==a((@BXQF)>6+2K0fM zKJ-vLMO9V#lmcoz%_P0lC5mtuI5iRbZc1RF!&h+&DHJ@BCPz zg7PUvRcXG#bkXD0ddWZ~r2{}WV;s_hl8Z_J&(oLIL)@$sf>|dx8Pr2oSbrpfFUX)( zZg3mL5k-1D$fNe(uUZyOqHEthg%5wHchIMoQg$R=hxd&m!$aEPJaXu-$0Q-{jW+l^ zYN8j6ADt>p!lLv(1}qUCkf`;#6ZZ+~cgO9VLxzS@#HxZK1_FpshzBg%;P0Ew=JkGF zUZ}Io95aN{^m*O4_7eun%u-<}&l-l|xlv?lCz^s-v6xl?d8~f_`e?V?#X*48=z@;5 z6&wUutKF<)(B4+gfmFv=^`R0X%)ygj~}sDxHaiCQ_zY3ZPVyfIC0U6&Orc@g@JC>LW9MFQ8H zGX#XI?TNyU-)XF8NE7#3RTNmgJDIW^(}pWDv5Z*$=X)HzZoB=|12BT7&pWE-?`$A; zA3no|@)p{4)YCe)wYf<^1y2LZj2F~)P zfG~BXc1U?>ke_D&=iI2H>oq-;!SFmI$tk^ASX#t-tT&&we6lu^VLI;{!4AYoplXo- z?W(1r@QEmjA|Y(sZ1}}kuR3qL(rd)d!i)Rom6a8+78fn}oE4s1vTY%j?5QP9Q`M!( zhu8@bsniXZ8pAK#m0pAPX8x@^x%`q4w!L&Nw5FF-RnwLxAC4g;$HiU+iO7yHJ3P_T ztx>enZ#g2UPJ5$Q=~OBe*clpj9~Lltn`(Sb)f;KCTF=fc&@ z(^v>7TfmKLme)wISElo`qivYzfD?E43wuLyi_uRR2p;bsz zPTDs%TLdT;r>9C=);S?;`&|1$PuaW~O42|PgCY!X3_z-yK`lwGIM85e?0Cm1&eidc zu>e~%DL}~UZEwz_LG;?Eo_eZ1xD6ujW)>g+xG+I-ry7J_4r)e&=vSMnIvD2K(-}>4 z6*}2(V%rc9vE5sO2$od@eAlM8^)%vKEc&Nf(6c|kg7YU@tyb&l=W_sT8;?EZNhV2p zywT=n^fgd+9XNw_p#A6=LZNNj3%#ym4dEkTW4A6r^-ou-#j+l=O9+Y~j!-tkFl=XG zIMOr+bX^DC(KKI62{}%3ywqjkN8`(|HohES7~)|3G2I%KFD$I+<*O$S;;$nc;`~7}@u(r0gR)3K;s6Exog$zFg0ssIHB0Z9=V_P$w zd_d}kSqwb+e6QOX>i2yKB^$@hW*lc1Yg?)pVDaKWtICF870#1SYHK=JntVs=yG?Dv z9lvR5#|4v(tGPXH);0SY)ss-MWpAp9;)^UfWGHYAb|GNbAf5{m?Tgg`bWlvgb3L$H zcRroVFp7g(9uZ3Ca~Sup&KjU0@Mx_3`wKkeNrvv2TId3}p=LU|A$f;3(NV;~@vhZS{7{6Ew!MX4 z4(~$c*^@fmZHH+O>mMDU&>0N86A>y*CUpH!NG($v){*}k>kgv*=YMKsl2T$m8;X-B zMfj{qD4hh_>-BWk3tpwF*0)XTTb8O0eb3c<7~aOqWqz$N3^GgH*S*dqv&1mOwWrUY zKkq6Et^K}b7;;;d+p=L;zh9$@;+{tc$-cihdJVdO_!-cDbB!Jvq8)J&$|&>VmJj0z zj=nMV+-+KX<#%bXP9r@z07w%vUQTh=t&c|Fukfi$M#vSnocAGprSEiRfg zsd4?%n#(l4GPrwkd$PFD%6K^7*x16QPH84=WXBYa&|!T>2}iIwWl;~RQr|DNS|#77 z)%A)#qr?iA&l7nz?Ls8I(u$&%3^T_+gnl2PI*qG*qGXI`iZbd~=dlOK3lkKl36WhR zzggs+r6bj(Dp$5g&>svvnH+Po)9Ne`Yfgf8z;(xThJ~s@h!HT^N#nHfhR^MxXPyX$ zs`Ywxwz8;{)$eA!2msOaAqR7oVG?DU>tdfv08Di?69dK$lWmZMg&hYgEJr0uHO~W| z%bdG1W3odfo9o!QVp&#ca&ch=eJCYq$kf5uAy`t2rZ5zpP>O*_^QPom0LzX;u|yp_{@)}U zMcKq$sfcaGWQ0*1GC_Z)IEd|#YJ(AwK!oDq5pp87j6c)BP~4r_?j8Uf5DXydVU@Ab zL%-WEH0!a9ZJh_XcSX}P6B7<~4C?Z)oALcZ-g~VgNklX!c2W80Rr_aVa0!EUVa!C0 zZ~jKzl(j>pJiEuCl9K7qmCI#_uw_=Oiw11k#iG8rtb;F+2Io0=3- z=-6@jA$8jMd(k7PjrQib%t=s01i6b8XX z)iC&N@RnG^{k9LiOsO0Of#U>0ST1E=psFwUs<5p1!j)r9M(8HV47kT24z$fls=k*e zAf!sgI>jIngF%V~jieek;zm3x)1vkzIn(WQJ1J!Z&Wd>GVr5h7CSXxje3=Edp(_$d z+y%$YNI0u%HnF0>47@3fJ;HsAF?LOzNdQD~vEzo4l;xX#(g3CI0q@l`4I~!$G9egl z^jl12&4{Wd#ae)Ipvf`-4?F?@3}g%-flLUf+=(FC5}^AI{b$foIMEOYLo z=?X&kTvlXo%5 z30t}2G7CrS5d^Xfop}l&Sir`Uk-j*I|8GjeDJcu#*l!197%vyH?%Q>T4|kXx}g&y!*~Q?`s!AzCC|&2b?RyOObz?Oo;`co znt9&P)JUhi%<1E9?rhe!0Lq8R(Zb>?N6DcwfMsXT=G^0_qiSy9c~fieDQKi5G{)|@ zM6|-+-Fxr7>5V#xW{Ls$)1#dkKYQ=J_u43@c4Jx((|un`Bhqske#h^B>09WS6t}|W z<(t!OdLlxiQd(_-f2ANFB7f+D4eX^P%P9-#mvqapwh{f{aU_1xZTmpiYfHL z*}-6NNf)M4*6b4q$!*FV9d}v<6aw?97htR?9be% z(2voLO;z3@ZqcUJj5P4;rjfvw|AXNs$8n- zoD+2wvl(V1KQLdp8EaX`CxRqRPWR4CZuGaKhpO}X+@=zw@g~h%?#GEb5!jVg61^xP z6HeJwAskfe+O>tH4h_%d>JXO!d~8`PVfhXDjB2PXTdQT6YN*2ZU2e7vKZfNrMKww# zLuG0=T@LAk6veon=#eey^u_{CQS}pm>{1jLnsz%F^@}E96z; zwAa4R^HEn^|GiJ25tePa+K})Dhy2SCSRcOz?j65o9B&J%JKgce?^n6PT|lne4X=S_ z-=B9J*fG8U$@niJktF(^62Kf}E{IbW0q4dP zSDhA8xwJt4K>}&uyU|)Gl_jybv9Up3P2gFbD+<@2>oq6!3n|%tL7!~)p1T#i(4FU* z|Dv*JQZOUP4~5eZx8tO3NNjW51Z@0QJ#a0_B|Aw&dp-P*<2e7ZgVdiljA6g%v6AB; zisoN5CL>CJz;z~iHth}6M>nI_#(<7c`$QFmX+_%*cAsMsElNUd(xFC+mJJH$u1pQv ze0vgly5tMX+U+1fU?COAO4P;&xm40qJuke}O_KTfByn|xb46c6$*pB=uFCU1A-vuMOErV$IMY2GvW{oJho&j7g9dRXiEI+r8KI*I!>QaL>=+kElk+OMBPlA{nSerTNiCH=OYw> zf2nemGrBfe*iFdTbj)gHl3OP3V>>l<^}e z`!~q|gKF8frGlyS#O zVhYQ19Mb^IK5?oNcq(T%P_1$!4$$QoI~@uYx&ceNBecV@aeTmm(Gz!5|Eo{@i^b9&{^3Ipr<*u#e6eBfw2g@t-p_RG49n8R zM@*!4iiZz9eBbIc&TW@F7n&q-J1#!9wc7LTTq=_2+&K;7WyzfOy!kb+d5z*a6_BJ| zrQec2YL!di6dH1ZEJJp6TuC^}Y?2fT$9(`n)a*7ZJ_u}5MJVPM^oVAEeAN0Ej!lg* z_-qq?=;#L`5KHoBAEHv#_HIrGN`3!suiN`8LcZnzIL8R^4{2FIWF=yRK*PLB&e!g= z^+URTNVn%pW#HTxztZ3w%B6Yu9KeL^y2M-}x&LC9)IG-;rIfPchp6q!6XQ=1zZNeE!QWM*ARjt@TElSt-n(zLt2q@OeaRFE0`$T-juyxB&s@hz~p5Q@1 zUe@y*L+23c)!afjwsE@-XWRW(qWE=|OVhf2m9J7GiMOVsih;o}O-%qH8rL+g5duOp zO@qmHvD9GqaP=*y*LHBW%P@8^zN1!$L(XkVd2@p!$Yc|YH9`Ok-4upG2-iQsjG~lX zml4I4|8Do}oQ0K>hH+BC*4*sw+C}b>8j_ad{lh$5r+BokLf2X*T(^ORH^p&X=qa!# zwmq`@9PpQ)Mkfs~+pptelC%_rkj-5Wo%`+!p#9G~=a;Y_%-?kJevZ?<#aVWBs}=nE z7n9}F6V1u|ryFfD*mBtUD5K z1U2=SdZjwU&f_X^=f3fu(fRbSp>X`2vf6dmbk;shscnwQ{-q;8O+`lT%A2 zz_6vMNr8>09xN+L^e2@nu^uvP7VSeXN6&%=nO_{CXZ$!|%#oS=m|F;r4rD)Zm-r^l z7(9U-q8R2abSj@oCr#tNjz)e-I*8^%XQAV;lxmd`@uu2nlr{^HHG4H(n#!XJB!rRT z;|^CwA@=UM8H=q5D}ZX834*t)lAz9pK%-11WoKuh*E5uEK;M**4?i|x_s{+IaRT(~ zIf=-`aRkRfKHuD9$(QCSRIhpaXDoYZ^T(xyw*KMw1 zjD=}xvLuyC)7PuABx6Dq4V$J3psA{=Y5=BbN-8G=%d(_OLP)A45lo1pNv3InuBxi4 z0hp$cG=<8NEXk@Qg!FcBJw^1Gy$e zkpN?cv7vB~Rn-zg8MJHrw5n;jaNc|#AX&ODVJzvoB>}wR*2`qNScKnUnxe=GoTk66a5 zQm=PFj>)8HE3bd-43Wm4c#e>m)ycnm@IfsL{?V}?!1bbBfqJ@vNNnen4AT9)` zYKs;A_$5{YE>|n?U$Q%xzU@@F>KRoU^@2K(VJWVJ{EzL-dsdPUIs>3=nz%*>ORtyXeA0L$HHfVip;eqt z*Ubz{FX5yU(Fr}Ay8@0_t%M`3_Tr8c>VF!;X{(|G2!-(w4P){sC|2SEZhJ7+Jge}i z>=2RB#Yq2=zxkK{zZJ%a8Aa2LN+qyCVLTgEO1VC^89S zN(K{|!~IM)G!4jt+{E~eoDj?z1Ewg7!hkW33E}V(vLSncrWrCDKh9+md&t8_xDQ`M z8I+={(5+GLNc>$GVubs_NG2Ck?-;@e4q03Sg^^`<5zN})3^1>4vb)l?K(jfAP6&a& zT6O}_Mt^gXjWh)3+J3a>9S1(5XdVeHj{$ESV z-jl+OImh6-guTINH^KJX^(nOCx9d`>fVH-aCFxZRd+%SFnj>KMZJ!!!W&G!qV6R1q zQ(ewtNtW(rs)u1R-3QBz@ydZLvXEogX4{)xzhiJhk4Yz>5P?-h)Eym5Zku6dD05`P z3;}$d2$r#nCDxtuV33JY>%@Mcl^Fj z$KocYLJ^qWpd;hM#J@W61)$I;?T^ ze>VDVhK|2u=CAjJ0spf2(ct_%J8v%j3!;HLEI^0QS@a-!BYKuEJMe3DRdO)NZ49ZG zlVlqX(h~lA4;8^tDT5-3cO8SrG+XIHC*y|tvnZZ~P!tWKFqoUf)V4@^x^tD`(EE=o(i5LsSg2u9@p?omt7cyg+Zj&90n*^}L^@63zmE zpYLA!vRwmQ5q^PE&jeH9P{82l^PZ4Z7oG_#pGiN!q(A^x zH^Xs^K*w89i<~7z2;-arTzz?6vtfqVP6$Eh*klIa%`anXx^m7CLRo^-dH{odiBNl~ zAxr8ZRcsgi&x|XG{s&NdxUShkJ)}yq@lvG3G2f0Md0ofusqqfB_+?G{~XkI9IzFh{}P4L;ANXH>4)Fm zH9fYU-J24Mr~LAQ3MpPk)jIkl#}o>M;APdBkXVNJ@#ty4;OmQACZuitY)0UOLTQ*< zXJNu(X~OEII#9p!EjL2IH`9NQK2~gRThBVxA1{^sL-%*!Czt;$*D+O^EaSD5e*W*b znc-ZPjNS%h*bJQ)=pna~=O%5-kG;3TXV8bC^3x@?CXIESp4;WP*fYLPU=ITK!7}C{ z?}jjU_~`nb<^dUVll72vj9IUxG(NX$k(~cP--MqfWw=QLYU160lX!l&egc=_ZT;`- z%ppCVeS5*X(lX{MjlK{~C>QmCQ_HbdOA#hQVsRYmp1}*oX)o)#)+d3x(uJV=kV-e( z`)w}SLB2q1>tkp2mGz;{oyM7e^{xv;fN>+ezvK%jKMLwvZ+gJDsR&NAJE_fbNAfSS z@&$Q?a>l6t%8)-LyEDW@N*#$Irai zQ$#Q-u5#lX0b&fmKb$qhZ6R^o9)#+oPG~h1G%Q`B^7ICU$h_&&)#9NICDvUH!a!U2 zG78&X+JAJnB1x(O^cqF>I4XNPJ#SIbwh9bhL>xGL(b%)+1P%OBy^IV@yQk+xIck}H)j4_n$$JSe&KC+n zxpYv|Rep%b0!xmY%?6azPv;#vPX5{h2d1Z$q67LI+yQ+~>o>IT0YV_W$sI}B#1mP4 z-B9->uZauVrg=YYq&!aZTxlF}i)bqKY*uoEeSAYihGAL9Tq71t>YA;j38!EVD7dTJ zks2`64RHhSpq3r>Bg-<3V{YEaL{FnkK0#z_8n|`8WT^Cm4}ahKf9NY{ixZe(Sa0J& z7^IOK>FG5Kv7Jnh7!I(8jx>_SHi-4$dF`~-Yqk9)+82a|gTUYc!~N2f+f~{r(cR7w zHLunQLp8q1z{3F;!8Uf@n3Z6S+rl;wC*qfF#TLT0JkzFp}kby_T0HkU$vTbf5adb#UIT0oKW zu0NbiH4NIj9l$#CeAOV9nf-LMepi~7ytNBT#n~X3EtbfOR;;Er_y>MEYg)umeV6L^ zKc}XqkZrGIxU&E%fC_kWYHDhE9A;f(YT`(KF$p7hk8RhL#mF=fEZ7N<)UCZVk=aFR zpY_T@FL4F>vm@P(Q2Qo+`AfL#n&w)zTNbso- z-$%#%Y%WHrQj}YwI2#sm(qSAvurU?zAZd<{_@Ni0^X!O#GJZyTJ{)obRoKmmrG4;b zKXO-z@)}bPv6HvdhHvLc{$~PqKJHhX%Z<+XM~9qb@~+irT>Z{$Uu>5HAbS&&depk! z!A85E5fZF)Wq7;WYs3x*byqH9S&kQ7=Vm9pN}}MpLwLnBh?7$HohDPW&=KyV+3oe( zL6`0{%*QEXXsXOtS63(3d|=HKxT~wHGiUxeLKs%7nbqt5)!*H=Ik~zzIqBwgY1KcZ zdH8U%YOc-}y+&9q?dh!5)z#I^I?xHxf0G}@JH7k@`k%mRkWK`2UJ7QANS_JiaIj2@ zKyVMk!Z?%7<`)?|I1$cl< zvi7`sWldERd2c08cc-Sad+la$Vl%)vXfyTGg-psl<&Iu!(i=TOQsnXewCCwaSEkZB zy#A(o|9JHCp#OpKTU2Fo**;*WyG!?Bi0bG@^fL5XwAtbSo;NNQp^M~n-b9rc9e}7^ zB3E-qOC;OuTGe%{$?y!?FH5-(;B&zJC90Szry9bd5yXDTd$4Xx#GOsX6_8Y8Kc-QU z%L%F-I`ofbC{TK9hB%P1Y*HSjhjBzl>s;6|eZW>T0Xka}n_*%_@M@e!BxPn%RE!_1 zD^c8ck091W7RiGlt}H4p_K&hL_+u}{gbAba)II@sOidXbe4v~IQpnTYy;`+FctsZD9_>HCefT|8@u^(0icY{f!#|~fYRZM^P6TR6k0qLoctnKi z7pMf+<5aBVERziJPzZ8+_U_rUbLY+-j%fnq_UzfaX51Af@RSgkR}wOo8VxjpCnI^{ zXr=3h@qbH$WZ?m}nX5`~*GSKWW5$f6!M9Vg$nq*$%L>9VDJuOLoe zBu(Z{p$^)O4$FSh*^gzB0VT&kIMm2>>eU0HQ`r-&$DzZSN{0vD^)c~JI#0vO_>U7v z#6kJcVgH~-!kxtYP7wu#eRBZ+JU#vdEg(76i=oKy5o>#+{{l0V&|yE(L)X;twn{E@L0?ryS46@AX0vq1s5?)=y-irjsh8p|&G#2?1^u z4iP!3A$kO%s4kyxl_CMRj<~5(c4dM#iU^^%;CfB9CFOJ z(sbWF6vo)K421&YE_Uod!Wng|45|3xhX*|^guoJYY)J+plR3zPu}S+v)^6|5A<6om?upGEdHP@Ij{f^*!#fp2*LM|fEQX}LB_Mawo>DxM3Flw8 zw13dI&wJ-tUYe$!Pv-;_V@T%}5}Z<`v%tV4;X*z1kVu}L77Z0?vTnCy1in|e1q|sc zATdy}DKeCh&J2|EY9ZLY=cDSjj{qQV+Y?vzPKgizUXXDdOp%kQbNYS5y$$y1KkN5> zep(Y~HFt5KL^y1@oO+YMY6!M~b2q)OziBjV*#QPKz6-IYZdZ$#3_ZC#JfWfuq0+x^ zx&WYLa>qQoUDIO%s5NPUdDy2U30$ck4sqOb5_e$YX#SNDf2Vk~sXVQ@uH&A*a1)lvVI)`pU_o3JN%L(Vw?~~_qjB7A29bzx-WmcaOH4;BAO--Fe z3_wbJ*X`f}NjhnpzlXh#=2v}uh5DDhPqj`|z&9M2i-ji~Tv2!$s(9OY!?G@zJ{O9CQJ_Bb@gI4$menw@W1eBv4r6bbw&KBJN zbxpp<;De^?n%4`_ZfP3lt;sot8+d5i+wC^~(yS2Io33lNryy?E$uFk;rGNY-9_7gZ zq4Ix6&~8_T@l*I!dFz9%6Ym54`G5*VWZIttVPUufwr?dZfK;zBf=4QikNS?GuSnZg z!L$~@r#{W`Xdu~RtcCh`2(f48`*ly=X9vfbx}LgOO3-Ci)(5Y3mdGot^2U1DJPdCw zZHn__U~D3kCl_OxQ8F$$dG)7dBX|Q&R5;s>o2XmskW>b=JX+_RJ^&RA!9yyFF}akVB znv)x^KU?^vIvkcJ7O6 zjWC6;=x&BH0DB!l^)M!lsgp>R4g&koY+AhDKQ`@4{ItqBJ>AvWnr2Ll-@CrPuE5hv zT@QjxxtxJd7}^@syQe8vwA1{OZBC5;Wqo~Jo2K)xXUgSF5by`mk&gZGt#V~LJx~gV z3%HWinB1P|!lgMoN_EM&N3H$7m|UzuxV)wHSG`Estkmnd9K_j-=Vdc-so5--G1TJr zLOR}J_d+eK??SrJj%$F+0(zK#-o-00&3?W1k2)JtJfQ##s^JMV0D zTIu|c_9I&B31D+NmnAiSifnHBj;8y#IG)ZYMVO1$XQkztnJzV?@y_f_Irjz=B|Jjj zS9lX0q|!c*JqM<>Wugq4gSd~@WgWr{*+#RX875(pfngHogNC1D4!E8ZTZw^i6f#I4 zVFD3Dvu~Uq%)M~@`0>H@Etk??@yAgVooq*O9Gd{^^j+bO2AI~iBhah;ShTw7kA#mQG+ z_DyS&(q=Z(oXBP;CbF|U`Ft&fJN9@qv6E@8Q5-Js3QWrP(nRqlaQ{eLibk z$KC(?2JX(lf$P^#K+t=>wWdx{v)54`6cMjc#skj_6av&j1fu_Csn1 zei!^X3{wIl;=>PpVpKl3lMnmk!Igit=g{lWThKG;_s}20Di78h>YJu60ahZzNA?OX zp^65-0DrH-QUkWq!uxt;o~o1VrP?GO29|WKTGcdFt;{Uy8s|&1YYwbdRaMifvrC+7 z`r=IGmp4$=bk3_YOPa>{;>@ApYdN8RnGO) zBY2q6%*?ysHG=;EdBzh1UF}Irmj4K?)Swr(*mAa_A~C~RrLQ45uq$oJnSIh_<1KmE zY+-+GO%^<{pk#+Uydbe4yu$E_90&%t;iU;LZcU2?;du{trc1_l9zTaOk(rw1l?C9X z%3erDpce!z;0!AS8dslJRyyv779SDf1!JL?=P$i0JTt#kxwM& z(!65RVsj7Hp)1uNInpkU$qx(0B@bOY<|4*HVMsWQ_%RSEPA0-TQms}o85zQl5jro~AvZkaSpaO; zghLsg?LJ~w!6pdX17$ew6OHiF6LV>w(N6Mmx7E6fpWofxC1hho@?G|2(KZ|d$?>jN z|6hKP(%Z%(nbaC}M_YTQ(2@@L8_6MLz@5tvx7-Jce-5B1pqZ>I*pNTLF;ra`GUfdW zCf1(yI{c8_yh@019^l;D5;)S%GFN27L@%>{Qu6Df9N0$vtXZ)|T6ZdG$4-oUk+xK} zmaZGet}C_u-9}1n7%^uJ!%o|0I(r|;mLbfXbucrw>9o=_!dvz&+BRAPXl-mQm6Ae8 zrR2M%Gzej04C`RWFqKl5?HH+;ad3wj2NQ%7&ppRFrg@k?a-R3O+!rUUOT}M=F!i`c zS1He;256=0Q>3zAXSo0?mVV}-w-Cpnv%C`bCXhv|)wibBwR3y)tk+u?tarmt6SO1D z9_Z;C-+egGgrm~WtK#)lqGa4;e3l5f4Y+H7#!AhXF@|6jOFi^3>&(1lyfhsv%vet$ z=Q9YMj_q|j%SkKzefV*T5M@lE<5)4erg2-YtjIRjx6#FTeSh9=x3ON4?RL8@S2RAd zhlXTq0t^f1UIsR%e(89z_FMLAC;(+n((fk@Q;p$z`aS9TuyF?sjXUv%jdZ=Uo;HTJ zyz)jYi(LKU)t`W`gP*k?v|ew0i}fS4q0EF!8TFz?T%;~S9yKWp5KZS-;JuJgA%?pY zeJU%4vyuua;lYe#1^DL^OwwXpTKjDlEqOVPKc~)d>+`%nSq~dEZS%4$rp4>Wis=NR z4Tk#t&i_~t1X9O|QdC9(Vz$;cLt!YXQgNbXu+2Y57$T;%*5^rLErWAJB7XQT|9yRZ z9b~+k1VRjmlC--e8O5I)3PCxpW37Q89RSRg-;RP_@aK{{Q2_` zt{~79pOyfk5Wt1lIeq#xrW(*n2oR9!WV+bJMPhjPnD*D_IIC5G zFeEvyY21A1@>gr&vr;}A)?fm~(dE}gRb=@VX$W~y`2UsTsQ(`h8lKc)qd^P$Gr(Ic z5!TZ+=(+`dezaMqhUt^-L@N~cF?SUfina^dr$7}qlLl_aZILH{a4t#*+wWYpnESe= zK8I|=D9@#17<+3l8j4;r3a;H~)Cq0W*hTB+&BnCZ*f6z4&1^K96mN4LLhFq~*X&Hc z)ir`1bW4LXLeJsMk8YdBll-jY*bq_js5rn{2V;$mZeJel*dM zy7~k8PXgzh9Kg@(AY8fK^5R5|Pik&SzlbL_ahw`kN0`aPnL%Sf6b^%zu8YYWhB^mc zM*W)iXI`z37W=|CnVoVfm5PybuDD(UXnT#nZ+LBhv@%l9)p(K!9qQjU62D&elg*2l zE?v5GNibzHL+Vs26?5u5@A{!~=WrY!-kGee)tI=H7c1CD;i+yW5;2SQmY|TH1fvQd zXo(x0>S0$~Ldzs{0ZXMfo^=}4yD84z;l2y8kfRtghGWE3WE@a%dhHWW>F;W$3%WDi zFk{R8gW;wH@F~Woj7=j3ruA~7RKm56*4LMRYtsnfYxTB6K`UXjcJF|svwBjcn&JG2|!9YLxD40NvY?MpCtfCC;hn!V8>M+Hg~pj^bQW~Y*9L!~0F z7PzZ8qs@~ELdnS{VN7+g&@Ppd8l6-+%~mWp1)^1;oI|5tvk`E3OZM?tn0^G#Eps^P zIo-lSJOO>+8;|Hc$Az(91grn>L?eb&@f-yUR#m_0DF5V%Jt;41>1qBkWE>{YW5p-+{AH`iBTfDpEaWu`B1dUnwZ~dTc zEIH8bsTaa=B-3pr^Kf_{W;P+ze-O1VL+;tyLU4e#w(g1I7d?tLAWSLZWSN8H8bi8z z_t@#v$98oW=eF=NEbT&K*;juB{tG@5;R^azoi*&Rz9#iKPc%Y-`|g@4{;>?0wr|@1 z_F6Z!ycL%jR^6%g?p#&K?oJ@ceWTY)oLIWlo9w@aL8J_wfKi^3QJ|B(g?BVSBCF1mN2Jujli4(M z_Z4XF^5Tm-SeCwH{R*$2%57HkPd6drY4CpwZda<>MYUemdS*C&Q__q?ox+QVEgfp1 z3RYdnrn_LEz^lMnIa`@duj{PLH#XV^uR7G|=+WzE`IfM^1Q&cK@&us&)kYkV@&=Aa zyT`@o5EEQ%*<$pT3l^8{{%|%4z9Mr^zg4A4X7;K>jGGMz&e^<92$iLyANOZ;H0^wo ze0#t<=?(v0)V)PJrKE(^xqSn8##P!O?N<=M|GGf z7eoDYsMMh{hsqfx=+MbHh5z=I37?qmidXo56s|`}g2uZjNzm>XB?-D7<6Ex#sl{U9 zD-*sc2^vBI2+=wpmygvpZdhAeGoi0;q+Dw)Kq7&eg$3yt$U4O zLkDW3)6*J0%zQ6NJfAf?o#sb|jb0bz(q3mn1-h{XWShP`(CT(ua2dM2or7cDUax!X zV5irGec>3_=IcRRkF;=HL3>JkHyW}>E-!UVxm0(>>S0M5kh1pfZfh3Qksq_ad^OK=2Wp;RjPGZ^ zvA_TRwWT*hhL1A8{i4`As8N(=znH~R#Zb#D8od7v_QBZ~B|rAQqaVvmVf`rm*ReK`4<&`QJ3G@lPbUx6#aEm*N(*X-7djAM;{0c6s7r^6Ai$Vm7YeqN zNA+$yhT-4g(jZUC_3dXLjfRsT$^O&;EL`KYaJ*EE~PwRNYXZP&DR5LobUpT%B) z_D~R@(KzqS0uHPPVeQkd(r7mJ^l-e_FXVbI3Pu_7FQ1himKw^h$CQUnD8(*}kR3`8 z6ou(!rk4C|?1Pu>BY~mA+t`60#4bOQg#yOoB9KX%G=()g#k{WO#OK5mf((1 zlu{HtEm^Lg;%J^LP^p?RE5qc!4i>8LO>FX0@Naeoim!{_2aIT?QP|_FfWn~>SW)a? zMPibtxvJr&wB_Wr-f^bcd`oLMY`qf4&nC@gGQ0iuqA2<*_aDy~dzR9*%9o3xIKvPeU;AQa@3;!t zi961BsSwolPvZ2)rMzR7B<7VQI^fLh%5l`6jmP6NT&yLHnWa=^`FDZyxS-Ria9-(j zLg^9oR`30pq;2Kn`1u!MvssR|x9`hGt4%L(o&I>dE#*8(#PDVO zWuC;Cpd>-`i_NNyu&@KqpAS}m0B3ecC@RJ`KOv;zDUGSrR9zc@C-9-X)3F z%BHrU{4J>t2euFpuC7&YF2?A30b+Bvy0T(R1>X94b+r?C8tV1c>U^rD1hajts#p84 z>U^$+0PpBd)!J4EB?u+euei%iBn!Q-d^jew7hU~=<)Q1~N$>M;4Hu&z(z~IW;rXl# zqJhMX<|T&XHGQ<1WqF=ut!5N!&UG9$TWjYwtHJ$o;7%~2Q{5j_IXoxhS`Z}nd)2D- zTI{-UtzP}Qts1AZnMHJTmPSv#62zW87*5RNMv}`YD?Cx0;;xkyp)Tmh*0t?+8rn(k zVKz8RS8wcsrxN&P5TNmQeR+jOMtrc43N2*!t0sl}_E0#bYdCi0{5J$sr8l@8Wag(F zkQcwF%!h=QnN1!XPO@`TW-rr-hYU;hc_@E-d#B{9fbJZJ-dfjR0G zejHP(8rHiWSCnFV^yRL`#Ms9-uN3_N5z6#q(YG!Z3m7iGPj{)*zs=FXEj2WN}z&ivY!eRLWi7n7C5>FezI(Y<=*TOI>4QlR-@FArXA+|EY zb}3VwP}Z~oycMlGlxmrI@cO^cNohP)br=glbQzPj8)@d$!}j(aE%$RBc6^@I^_1JbS~Z;PffYh zd!FlCPkJ!%iK+3jR!&o}%7NAVuf)u=X}jHaq$jn_qzE);m|@Os9NSt*PY~kxHubtI z_ib+@0?#6Zu&X&zexMj4D~3?Um}^|@893rEXK(`ko6sd}Ixa<~eC7YMNN4mU6 z{yys&uKD6??McR2-|yObY$gUQ*W>sPn+cF-Y!VDb=8j(l5hjkN8LMq8uN+0p2q zJ06WZ-`1loZTlkuw0wHdep&jE3M)EhbZPoTr?NynA!Lbyl}W0-KUJZ4O7P(QfDhGGl{0KpRn98Q1`Z1xKMOV~V?^UN4c(qy8@s8uHw z@xbRwPlNuC$hTV9KZs>Ke*2D=uC#ayixp`71k>SP_HVa-BF?Es>i+zp$PH8Qd^|7m zxLME0a)z)k zG^38mi#(nb+Z1yOq8WCVaYs$~Q^qBR`Mv21dlVgPB{HBL;kW$FI* z_1AAJ#xQUCGcjZ8`_Abp7{%XuzP!OZ1g=5GiG%|1JWny^rWMb(ZSr0iQECUhBmsJO z{wAPN%#!6#1p#JEv8(@8RE*)%XFPB{gznLQ+23Zp)+V01;VL6*;sa&<#3uNCX(F&2 zkNhv!?Q{!1YdFI`Gbaq=nAqBQgxK1=NC@$awh89X|9bQ>IMp-hwjPJ|yoJdJ>j4`KpeH~MdF;;~97|p5J zZ) z#GrT_n=YRD%RbAm=NM$vuG%}h^}i@V z%*RE8N=bYv`zxE9hi<_@w+N;P_(PI0)WnR@pM2<{hZJLYMGdpB!8*<(zu)@m{vyoe zDdZk*@vu?Wi@1-HG$5BrsHT$1#vfgj5hv}-@+{#@?VLJ!Omc>!(P%Oqjl%z>$RAQb zq``p@((4gIc%1;ELm$zDEuIVksq=5Cl>vK81<|{aet-TQ+M_@zt`8{2CgvCRm=T-tv0Kt@U6Nat>V9U$w-Eh7xaO|da!n(_PijonF-owQfa09l*Ma22fBhy`d z*%t~?VdK7t5<)x!7u9#sf;_*?9R!$hwR7^+j$)hy1NXK(uL`kt4$_1T^^so9Lsb+| zEG4D^s-hOj9UR?jqYv)(-}=opgnuxRg1(j% zudfrLFvh$BaWc!FPUJlOW{%qg*YmEpWEPW*Gd}L+Wm>Jch|+MVt=jKJsh1rz=?p*rg7v%XM&u=w@Apf{bFfg%lw5YDERD~9FsPL`ey4GtZ z2QF9Tp77GiRhcop9{{Pi5`m~N1l~RJ)f*d$=q9ZF*F#?84yR1u z@Od3AvYw*e0-XSUGEtwInbAWNvVTrmB@?iWnvW2xRrwfnv0!Ts`K?bNu zh1PK4I2{L2M~EuH=P5TeE2brEf8YZjX#V~^pN0^8Z33sX#V?u4shC^8m1CuK(^ z_{la`*C&X7?eG8o?>9ei4?R^eza*Tw6Bv8>Zvj-58V7HB^vw2iQ9>2B#GDpw9awd1 zSHj6z=dBCYB}=9yQ2mpEO`y1wo&92xX0i?wVvvimmvZRu#2J5aLx1B@W>h@M4f zD{j(>`A=FrhA#iW^E~Khg5^$}MHu(jzS&|jS$4~PZbMjnk}V0^uZXA^L)8{ew#2#e zQ~x&W1J;LRDi%TnU^WAYc1ObE6qZ=7Xh=k%DrKvWjR*GwUXe~!=!w&0GO@%iwl8bU z;>cMGm1XEbe353S=XYS&pE<5g{oU;=BQ=11yVYK=T9t@#b&=_h&?k4)62Ll|y5oM3 z_ju0I@t*r=_FU)cOdW8pI{)W@nCvLdWf~9}(US|-H{E^ll*=OD5L`2oe3WcmSV*xY z%~1MI!If7x5;Si_-=MM_$4H*`NK_}20d;c!9WZn$g7Fx4mAX{>(|Kj8&Qd~r6R;DT zr6=#itFZsf;^p^oakN;i+D`LJTmY$YUv+L*S4W5QjcYl6%yxf23~%80vFaeq0f6K4 zl>s?_{(Rc^w6?YXBFEgB=IMKm#U_#u{h8eC#_QYq%F_oujzJnN2nJxj&kV_akk(Qn z_AbMpL+o7*c<_dwd)K?(RY#z0Z_n2@V*SzoR(#s}HR~_9>y*ZDWH~iJeMmss+H71^ zkS4+SFw6Ufvm<4`JT6(X80dzsjsA`b>>##RkWR791E?gi@mTVq08i2q-hQ z*^FUAFdKx~fROcnI#58Y9xMKxqr`{&IiWNc3?YP=5K0NbG_a_qIS>;{8ODrKf&lEICRYYG8*e> z)c)hvPg%cf{kvb%yq+!8w)I#$Z^7pMlR8hct1~~#K?3>DlNUukndUnAJm-?@aHAyc ztmu+x|BWvp|V~+PQl>q zxl!p)_mq4Wj#K0MzK|rP?%lqSl(;5{=<7#^S`BDH{3qi`>eKC7O$x`UAug_{9fIqZ zvaHN?kWNZBT`}Ua+nt9!KI>e92mV^<~2Pdx>={wUR1v)5j-2bwEtM#LI2UJW45HT5GVU{O7 z-)-;6{Q_ydibpf54z?(@uEBp<-)Nn?D@O9uF31OG@ICbJ>VJL&{{!@JFm3*2eT{YJ zr(#}86WZaOxlD3|X8w_@Wl{q{(8ft_ulTZGyncz*c^!{l%>C!8+ zsgm!|a|yWEF&(TqU0h81l#_`nGQ#@8?VBnlI0 zVD57l`TEj7OUJ6!unOy1-3xKwd7d{xKOId>5^^OI*bpYXh$aAC%?BJkmcedvm~lF; zI5aNOVg`r(N;M2)f0SZ?^xDI)TJf2b?5i$ax?}*9bS?m;%Qr0_`hAoN@-FzQZtAD0 zpLP$vA@21DgU0KBGkd*BV=(CVV$Of!=+UFh1J~i4ZUO)(wfs%k;okB;4C7?-C8eUI zxUOh~VWaq|^7A;xa?D9?T{A~g!~zm=F&ZjJz5GAlg9oOw`K)9hHO>ov&}|uW)=|3D zm@>}(w<+L9m0BM>chG^vm=cu21tS~Iy|nyCA}BSv;ncfcNxKJ0P#DQjRfkjm1X884 zr{=JZ-n7i&_s+k2>?j=GO(LbfG$EWBFdi>{s!@Et{HdZ5h97aGFx&8B>`U;OsD0)L zo=|wJ3|5aB-T;h7gRueC7GI3AguiGE1`XFqn$6@MV|@P}-*+xN{k`@2r=NcM>BUX4 z={>&in-=h$^}6fC@jbq8%ss|97oPs!#$eD`{`AvNKYijxlYSIV3SKw zAw^_)mpPgL)8{9IND&>|d<9EF*ajgR4oDy?+#XYu!V8S22;8UC^o18*cwwrZasj2B zEq~9B&ENS4mD(i0sqPb6FoJQ4P)bZeNncYAWD}1Bcu|=#!yJ)0#AsY0UVQXaHc*}X zZ&bM)VIX8}I%)hup0j6%#jcF3=yuOs&ik}QTzfWD=4G{vI=7Bavm_mX4m{Nx1IaEd zEcX?6hJmXq?CqYGt)TstfUVAwSjqr-DlYQIR(%nxUymXD)x~N8%@!IWt)I1AtL{S^ zx+Gg^SagecjLu^wY%-S!15DbV=c8Kh5g09B9Rb;EvKp=Kz1_YNI0X`HYFC9%E44@H z@)fv-lD*}BBi#9#O}lj1lApA^C@4j{%Ww@v`=^;}wxbA5O9oQ`b7E&)53kUL&k5Vs zzj^7k0>m;d-mj)0#Oqzr>3?OildHUggu zW9_1A24af1C`FhhUM!HAV2$T6lUbenRi)Aqp7n_9Niv}W`xd?N_Nvvfa;vn_Y;u?N zrkKt5j?$O0BTDyh(+=)FGGXLn_-MRFlJaN!K5wFrItWoIFl1j7!<(#qa-qQf$;D)$#gztf{PR z6v_FGT2ky$J6d0l?AcxKr6+C=x^RHY`1eLve=6~1hV1vvN)Nb zS-lpeMuKU=ThkS(+^(bc>w2L+`YT%Ng$jB7LuW}C-wriW!h>T`zZ1TX=ZY|*z%eTu&y8T`ZcZ9nalBj66sq$j@w0XH@ zQ5G3IS(fE{wmfe$NRnVrN_nwu-^ZL6s7jHqDmW(6>Uk4@Xsbi${qSR3TU+lbgCq$y zJ?~b8&>_`cel9T2D_u|}`Q8`4;IRAb_C@*r`U#aEU~`ycV4adNC~T6Ij|5=z!c{R+ zV(v)Z&xcQx=D5gbwp|(M6${Li;(&C0zQQH^ZlzKQf+J5I32W78dEeEmSD(77oyU!m zxJA^jJoC&m_ZoAX8-{KK`Uua1jmsMw8#7F_#v$%~27a_ssf4v^bmXZcL9qPL=Kf5I zw6Ij>aihNQ$6_}O-P??bKr3PSnya;x3y6M<-1|(u4e{fgoUrclheBf(&ra~wv@p4n znM}tC{|+8jyR}c9C&)CO^el0h~|I9aVzqNw3l+V}A zM`06XfRu&QG9wk(!D~p&=vi&2j?#ns6Gp3yk@$2)DIn;aAC~aY7r*$$Ty|Cg<*8ej zg;5dwuxh?WVPGFBGEMWB%K1yQF9RSA;A3m%a0pXn7G@ql)Qq5DE^qTq+&$K{v z#!tNxhbFlm$>8q!2iEIji`u6TE`=0(`WwYP64i#u?B2EEA6N%3eEs$?H< z@;!%#VCC~kJ#2Op)4OzdPubFbr`2LTamcR%w9+KG;% zTP(anv{}Jwoz(abM;dn&TW3U3?~Ui%zz0J5fzDJq-}8Ae56p2@*OHED-Li%$bVMrf zybLs-x+VFC=Ugzg8nR{rZtEIXCzX+%Wq4L5G?Ajt^bB!Dd@RCc`~E#N?$DHpiMR=TpOn3iu4v+w~s4(boiGJwCk=9+7+dC%Vs z2H8d+ysnkLXJ~KP#q-Mdfn9Q6Z1OX7CHN_h^(9yeXV0EJI{Xc4bQpzgAL0uoaw(L3po?mVTM$@@bCtS5i)-So% zp@wi?A@4&z0(MW+)XE8oFo57)X467oD9;;zL)GDEt>ZeCW;4gL*~)6k_Wr6SUJ;@6{4yELj1X?9YEVQHf$Y1H=?^ENUrPqe3|5%_+9G%)K1`Yd|JI* z;9dq9y_Ugf4V>ecBpjp~Swd9wWEY-i0Oc31HQ~Nv|C>UFAN@IO608jT*ojG{4B#UCg6ob&iG zD&f6wJF5HQqY@?oO`WICJwe~DoS#Vv9xzn})q@8m%m&fxhwf`%`&tYD#ZtLod!C(- zEQ{>gePd~3N55Hl+dH%Du00tS_uhMNx~`G>i0mnIL*82C-Xp{QR-1}qD3*ud0fQ%H;n(&b1AsReco=>>{_p+o z_~c2e-b$N=NViu{uXjw1#WrxyEE{xYI7HuA0s`=Sfhd+&hyID~_|FR%ce^J(!EmJ# zGKXh~OeX*P8cdA6a{SNMy5tMlm7tG%KV6zS(e2_lWOH*7ba;kUsZ2g9?NM}#^rJa5 z<_?4PuzxFdqjTsbwp&V)PFZTvW_EU5L%KUCaQuy&^HwG-6vB*Ut14rP*PN24nx4WK zaMdnD@kAdJ3HvYXY{zjFLL|jB6^RhVaUA=j^f=%zx6w`5j9L$=ze|DJp$IM0fsrdi zSkffPCv%!t+&V2}QjIt+DJq46QY5ZJY7z@IC={mZ1=-US)yUN0^`2MLUbT!rC&YIg z4E6&#jB^jzfSvCMG3RHb$wC1#lBwyM;uh=LNgqB1E1{2CDS_mKb_h^p*;eN|H(hOpyVAY&Pr2-MsWYsUVG?Q3w%-q~fy7wVj=X+T|b!zEa-&i^FBk zd4@1*?(BA(x_Hqo}nJcR_Brsab;a(eu%76qP1qhY{kF zr{!^*rMTGUrK(IG(F&aVsG$IYwMq=9`hs@GuZUmzZx%Xh8#-Af!VFR5SJBsC zg_vxA!#bL#y;{RT7{_6NVWi5+^Xgpr=IdVfy4S_o3_vCu^OSJwy)8VPw%%bqpGCdg z>gr%HbK2FSIPbHZ<)ROYIYf_D2$c(CUQd~nTsoP)dXMSdY4fYf9>kuFSGdAz-IvB# zl>Ws=J+yHJwWL$;YoV#~Tjo9{YT4o+#b^$%g`s2!?^wxx9he-u;8noa{|&U=$3kcm z{iEw63%ZUs5$I>qp}n01+%PvmZ$)E*&?*N3aub8?6QO6=3^%@#&l{wC`>S-N-Z&B` zNziNtNfIAv)KPx;xMPfRY;BCQo977jATc+{D+Gsod8f!RV_a*_7|x5GbGy4JgwYPh zgrMEsbCzXEtA6zW{zi^{*lnV9)_Q~WZj1U>twCFgPIM%IAU0#1WdKwoKv%w`M4Tr#iM9m>=`^Fpcw{q?q6vOz2c)&OTq9V4??{EQl8zs| zQsvz3-QkgPe!AWrJ(u(9{I~8JL{cFDfun3jkgXg*AVhlS_GShCcOY6>v7vRc(s?Qr z+3GK)y7zlZzi$dbtBe6KR%QI#d);nhrbbDcCL=X#bi2K|-+^nBh!Tvook;oPVIpN> zYm5nnd}EshJ-w#6u+}-FM9N~LQ6~hYMKNJZep9eFaO*`ItsHSSg@{*2o?Q6U5h!(P z@i5Qu7pPLsfuj^vVPr9@78)@&5{&+rQ;kBk$`CkgD=C$oINo4bkSByOlH}^+p0txJ z_xT2WIyEcT=jMUb_x%iY7}N=pBn=frmufK=Wx8G#Tl@QYFYolv){&H^b#AY-cdlim zMD?@%P7cxjbS=*AnnF$tbE-!ch5X>ibN{ z)c06oj4=uG{8S3&`)TT{Fs#&~NGi=LJV}h%s=25WAnX?nznAKptXWw8_|kAm8^9bVQcxWLO(IfQ&hLjjw^_I>ZioHp8if4@B>jvY-C-JQHVDuc8` zrG)<@{xL25hH+ZWX434QGYT+Vin3_83Io@T?s4(rMP^yvTHR4sN_+#>TypAbz8=*@ zf0??uAZ(Rpmyo?LnD;Mo#46B2)Ynewa(M0Jg-X|KL?8nk$&|!ilwd+I(jjnTm6R%b zVfvz~kw+;6EY4wHHfljjFDQt7~f12k^zDjS+6%QB-zdGGWgb|tmo z+MMgM8skdvC=2`t+V7;0WmPkLS@A!&fE6%7l$}#Q4F{nm4=frKzOoQ-6W5m!mg+~v zD#=OdNT%>nCXfr&D*mb{EOF^>b~~_x^Uq_arUF7OsF^AD8xTZ zh2?U!S}w;PVYytbp3SjJG@LCir#J9?-nIFy!ST;kM8CPg;HV3O!C;_Y3lBZ?Pz<(} zzob~Ezb-f*tVza#AijM$&P8iJj@cjPsO$x~U*TNu!Fm78K8(=q5w*U7omRk^0(#CT zH%4uC)NTOU4baiunL?{WfYyvqdDt)xqXYRpjohHgU6|r)D?kb%}-t2(~70=J>a*tc>U`Bc0Q*3QK z9@Vp1fegPXPBQI?swx9UnRW!Y#s-YS3a_(*qQ}K2q_SSv=mLS1gK^t>={vhg@(=!} znxpIAKf_cZgXtCDuGv>rwx+6U@L|tY(e1X^Fo~#(v|uP|EpE$%MU_ZwP1DwpjM%jq zG;;5VuC6ArrJ$`AvN$~klU~{jNT(`g!>!QzpRi3aA;*SvrX6-TlHe z9GJ@YNQChj`J5O>Q4##> z;PuMI7op8vCGR+(EXsyy8uFq7j|Sb2b=JSH6}`7hs}v)-y>w*yFO}&nD8WO!X&q@jk%A%nu9zGSg%izju5)lgWHP_sl`dI{1}?2M>N15wFf@uZ^H0=sQP;BFo#n}Bl9MY_liDcGFs@BbtyFW;mZYmVUKm!9sC&GF z4Y^A;+(v-tel$gpOpzk9U-7>EW5V7RMfJ5L9JFk_VLYIorl$MUOmbsDN#h=nI0X_J z0^UUGZwNpo>{Y@Jsem6VTH#^C=7&JVbK$(fsdm@2#<@0qlc6(ioCnvdtZG^#n}rd- zMyq}vpdI$PJeD)*Y|(RJ1h4s?;n{5U@G{j5exSfOXN8@d8ya0cT+L>=Bf-F1vquqJ zuQ*H1++%QtPJJ$!L?@(1@XD?Z_J)JO;Si8BQXYz7PXgrDJsOo%-2wZJg~QNmmUT zQM^y%=pJG1cLD&=a(x0u3t(zdx|7??D*P+i8&h5jLm(t?y~|HL-XLG6>?TVTKEZ(G zbM;|mp<|m|J}U%aRp<(9Pe^Pub-reSz@=>!l9_llP3O&l*z}>(7h0{Z5q5CL;RCLy z&d5;}KFI5uy+M8ONjGdw-^6agz!qRPtsiyf=J@*?8~1xmU9-P-f`d$>7w&D3;Ab#` z4q&my86|=G-U^}oRL-X>_+^uFB5@q3b*_APzRf?N>jtx^BRcHd?j|LWu!?gQc|cRl@>Bt2@z zXSpQfJmu-!eQHg}Qyg=++i(0Vnn8QfX>=!g6?zMLFZv7)rBBKbp!K<4|CzI}8(Eo+ z+b2X2aoNrFK+x5~3@b0oRw3b)N~s_KQ9)Q>!G$56^3~kI@s$6z)7 zXi~{YirPp{o}8W*8qV{Qab$Qb40KhM0SryoMVPU5>vxuuzak2NWf&4xxeXi> z2`fLV*Xvx)WQ)o2@0z-u$p}r;glhiI^87m$ED_AXRymdo!vauJh)qY}871oye{AqSm&?L3%;s4jcl+ay3Du0XkF`(7I;nmUO}ugKOJ_8%cy#%DaLC zW6LYF&4510Cq~28+M~yg9b2ojFAXY{iHS-j=ue=mMM23+**5n>(jEV&Wm%rAX_l!O z8kJm(U5RRjW?GsidzL3_s=fH!wyMdVl7BO*5UtG&*g26+itr}EF!MH z(Jhn`$NPeFjL%O(_MaXo`1Jg-zF`E&zYD%`mT+%{XSYWyXnc_tB$ApSkAA&Gwq8A{qJ_ov;B z`1QK41J}SY#J8UyGzdl5Hsrg9w1dv!1PDv?<2wfsq^_gEcSY(4y9mSMio!iZxYTCc zFub|S7uWGv(dWjTXZStFA$D?I!r?V^*xpog8Y$r>NMbN~+q4}V&bZ{%1?WUA|>M61xqH97#T7}DSRS%k) zq)>_JeH=B#-aYSG=j|!{cs-=k)##wBWlPT*qjj8~rzjt*&PTeOkoQHX;np!<5E1p` zR+L=y%aa&{xr4q93FG zp~I9*khG-g?@a-woa;GmHKZA*9XDHvoI~eG5E8o=%0X6=tW@>ul@B$)yuO{XWUZ3$ zul0TQIGz3oKie_b0&&pc;xY1QpHvQx00LD8^Xnx4i{q3K&#f=?Mg@kx@s)qNJOc6? z|Ms@j2d)3b*7iL|=(_?{=T`M-(5o*(g$ga9b#B=hk2as-rz?PTCXNE`Q+FM*UubRL zeW8AQg3~$JwVTL;`!<`2pzC^BvMY2-Iu21w{cm|1=hFfTSz)lHV0vlDv>5|Ap|a?vD8p# z7(Q1Nj>j@|jU`eV>duOHi(Epx9i5pz)k6D21|isW0y0aieb63>@eAuB;8u){aSdC3yw+w7&nCNP${kw z$ftHG5k)CxJ-^-W^2No|3ZrRyC?+X~YoJjY0@UIq=)GYt4Kux5(o`7;A(A2yPyl4h zQ2>Z!uJwY9sHCfe5Q2$Jh-5nqV;i9AVceVvq>cwcA`o)iOT^X>a?i{-LsKJ)U2E)! z*GSNWX2bkE&MFR|dJ*m=IZ}VE2u6sb`_aSbHRwt7cJyxa9QqLYicORoLCA)Gg-R#= z+|}ahxn78#@p(ClmD0vp+9}7=dE5HwtymTqn!DOgO-Z5`{L0`K&Z4>}D{Be6twZSu z>mmEnJugnzd*N3#VKhEB3PK;-Uj|OJS}mXLk(Af-s^%u)p)j*U;X-g_#|+qL`>Rc> zau8fqxqub7si4B22adm7su9ze+Qa;oBJC+W%1doss+Xn=Q@*!YCzd|7hk2>tAPIs9Y+K^=-#*n=+Dcv2 z@I(E@p+ol$q%Z(Oc*o|2>ze7Y&g0pkG|P`>!t1~R|Oa;v#G?u)Gk_0B8O6Dk0 zK==&|?hCIy3Fd9N$NHnVW*U|LSw-HsCwm~*)$eWeB0-)%VeX|!eNtt0 z=v%imNavq*Fp|*9eU9D7p-Ub|J1q2UyG=wt7Gn9NusvqNd@LK8iS!n_*O-#@n)Tkc z`=_4I$k0sxAq2#2?N+)FZGr=Lt_-#?T?NJ3?Sn(G&6j zMHQALnM5)GV@+JEg`E2!*_LUowefSopbWF&`1flA!zzGf84E!$j+e5VE?bo} zi?mJ0Gcz-0gfgNe6_{EK=8UPT{B-0U!Pgg^=BjG`bt#+C3DGmz(idJLZjEn(`8Bqf zvmSFWc7BIN=B(dwFm@iB)?bt3;hGKgrmEw*PW2|$FjW;hj!qSY>c)Ci-+t%(0)$a^ z`x7{^3xEHCQ2(9xN!DV}ZeU%59c?A@X$&mwUQflt&OLyyQm^vW4MY{%*5ip`luPuJt97xjx~x>mALo3?W3eOkvtX z1QWs!d_$0Se9v(JY3X}PBd{GWa5TcMA9_-7;Tq4S1P&lQJ+qCM+$C^Y(b2s}om_FdN?5Zw1{hZ3#)z;yr|H}I7v z)UiFE3qZzoeJv^T0?Pu+yLy0fIIuo!S!I@DDO8FiI9@4SUTyidc*ZPabR4JvC4 zDB7gb6{x>h+6Jc5A+- z)9ElmaEJ)hH~?S%ErAFV!a5jn#2DfTuk~N_eMEL;ub&?o*ml%v_N%EDf;LxI#~3#R zW|Y>d2o4Jj;=0vUfYsIO1R%MIP_;%WL$ZPKcy+Z&h0tlW-)u#;Jvfs0d-51XJ|>Uq zw@+@GTE78dy>=5Bw%fBbV{sl!Lrs_QdRDaM$DFw3lCqc<(_)%^Mw`QI7-uUD5x4+~ zaXhDyO1Htq`oj9W$ckwnLx-@93FehSf0DA`pVN8sY*3{&H z7*&*^G+vUbAdE4>0~#|*Y0XKgU8Th3x{Zc=rCBn-IFLiX(%({GD8WE&gb@+}#(@Ap z0H9G@bC=MnO;e{%h@jjD{9}?No(Iq&l%jYvD*6qsRE9Ca2xHs<@ZFeF%4#(q*h-V} zq}CRF2?!w<1I9oMLP$MH$eRR02ph5hPwVo$D_XUbv*ro|zgDL#j}0}8Z^!lp{G=tU zm53(Ok4dab!9$?45M}LICb*m$&)8fz7^v= zo_g_VfYY&;^1bE%+C(WE{(9`(x^pU2S?O( zaHO!~Qkznnx(>Dh>@wL>fS-YT;Ve8Mskm>yJGAVOg8VJcc*OlJt>bADI&gE87VP>U zG%zsIfKgA*ahWOR<(#j#s3<0rXp&4s8dQ*Y^t+CdFx_dnOR^%x8L09?@;t=0fsUDI zpcuhnl1Ea-M&rZbSqqkx1>>w`YF596j3C28E5L^t1Pp&L2kCW!mtZBw60B zDb4a=7Ikdl(l)p}h)?`s%RM9IiwI-%qAc6{K<692;TyE$=x-2ln-Deh0pE9V@v`kW z1DUQyG4vu_dq+y+ycq!C&5n`s?nfVelmqZbzxk?K{N}zZo$_rv@FDA6*8j176d2SY zhwH)TpiE)T!}fVR)3Tf_qftX6!`-rM?XLN!r8qf2822h@>b+HSL7~#IL2DVaZitYx zj;EOTq-D3hSnrW1A5y*Gx+hm_(Yd^DUS8*@@Y2&<(%clfzO?kEj8n6gba4Y;`1{Vdbb-SyC5V8T#T)xx<*uaF))o!;&MHB=v zdne(mO{BSB+yatnHG#z+DdkmNbJ@66?}p2lFSig=w&eFO@qqPe)jGl$x64D#)_U2- z2;+LS)?-WSR2Qkc^Wm_lTY!>NM_XYWhpnUVMaJx?(d;19X*MGJ#cvD-`^K?3&>(d1 z4(I=@_DmASqudp}cofG)9*^Vb*_f$w zgo|^jDtLSUkYZZ&$!|zD&jZ)dIEr(+s4(eg0#=~J*)Wv~Ni*+R@Gh-Am4rUSly?qO z07d``7P}B;oH%YAt~*5|P%#|_2#D}%-I^nYQ?9Y^v;BUnbM+hmArb-)2MnuK<1&l@ z5JseCMJB1d4op42)0xc&E8wSDqb`kG%bG(+U~?txizsz40B1=$f^NAA9X0CGDKvE2 z`LH?er;Na-U&2tWyLnx*PiZLjl|}b2A%^O{@YZqKp&OUxbRfCF zl|ddT4nuTO$$)xy3VtS<9K4%ZKSzk--ei_7ocfSW-*S^wB_QHc&2pGU+aF>5&ip8= zFsMhcWpQ45p{c`D_qStGxoqQ!*&iqhMih=afz;c{ez3oR1=*f^UVSjATk69>`?yAo z+;$`d0FuHbm{7qTQ!B7zdZO-AR`UPrfeE8n=~R1elpvIZ@gKLwF86%ZGliD>Z zK`0r@kkZw-^@ho-6WFoE793dI3axs? zs4pyM@r)NqnuT!(I)Drvi3ylU>S$b~c0KDh$2(eZ<$=-s>%ac%zkY}(`o^lj;DHAo zn2%PguyN>yuV0?V6Z=t!-|>!j+}f89yzz~1{4r-Ty>YfSzV+5y-y!?swb_l+iSuJ` zd=LvseRjuRvDPiS{#N3d{x(i!K`I6i!hvOaByE>+98O^USz(WWtyfkPBLsX-tMV4D zZ;?O$^MpI!@P;>3O#N^4q5eiV`!{t{d4nTwk@6Pl{HgH)VnW*z(Ye_HB&y)5dj)1+ zdv&)go#hS=B&wQPNmaGYK^c>8^7hQZS12Y)daz!%(nln0^G`M%ZePDB*XPCqZIOd& zPG$5gcVG#bSM0fGP;)y#>@(ZGqdxA1ovR1%o$!m6&3h|9)LP{CE=(nY5s(jzM&q1KH=Q&%o>RKfX?cC+OHov#0=t6#@p?G{@!_m~k zexcLpI2h?u+QUP+jM`Y~f^A1%*=o1qOw;{YP^$;`+}~HPKUO&XlPN!zYRD}#0Heh zt4sxujxI3$QrL?nR~qPJuz)OP4!uoEnMxW^8AUf+sbuU!@Yjpl6k(?1YJSHqSe1%l zMBA{}9RoApx_?ZP1c-1Gg>4(F#1$ANLafaPD-aRJ071Pz8rADcL|1S`;vr|z5Yml2 z#qO2ml0iuZys*;1b|(Q@ju+_9^zN<*3|+Qd>NStUy{!ynoYx<&8}dwbw%5d>Y82)(`O(5{FP(>xLXt0LR4i0>CoR?5*ofR#X|9>igKNPvR^S9L z%s{lU^c-iB-B%(@aY|$H($zoYRivl5qUXC*0nyGN5o6(9@T0VuCS^_}-~w!^PkkNm`OWCC3;FCWVReU#C-fwEqkZ_lObkgdO9`D{bgBSidrc$+BgBJn$^5j2B|~AKwBwj!NLZVm=TrEK-78Tll`%O)0n2Sk2O`tmvb>uT z8FZ;FW1xo!E|2bV)FFoPxgFOH;yljH-%CiJfC_}l^Ab5oWl5@FT#+Q19wgGdOjl_3 z5mM|oeJ#(!2vOvsqv#~M4&96{p%-UNP^Fz36kNw#->dCZv1~pV;4K*EOWs&fY!-ry z^ADXwAxIQkC%oEb;|!i)FJXBF-hy}Z{Z;99yAO1`4|Ml-IvuKM=8G1MOvYGzk*R5P zuI_pXZ`g%=KA-QtV{&rR|1FvH@BeOpZM9mhcF%q#XU?1%RjID|dKbXGUeipCpE<)d zQ`63S0N(lU7kW01<9Km;dU|>>j^9|VR;$-dPft&u1NIxjmrwoZ%9?SDYr$Rn_|oU>Oo> z_jL;j_kW{67$be1!L%M0u-_KFPZ%SGuQFyunrvCJ7Fp9v;nRw8F;joZj|$F*`q4}3 znTul?wDEs}77=ntIFFS$Y35rt{!eh6{9}$dL`ZbMq7<-ND5$tFRYypkTja?`tAsk} zw!BJP{4ja~y$QVyJ!5f2K{kzTrkNHDC=AyFxl5_qQIFy93WB5xSBN|nf{J9lr-Xu{ zBtX(_+r3ue)c9*rn?2lUnD$15gNPlN_l3DZI}qQFHo-c#!fm{~j6N4%aOm3Mv$>gvE`s(@RX^p+MWwem1U)5j?onw+*N;;j?qCiuF-cK* zzLW@YHZb`Z>7@a^!RX{5GQg&jth766A~D+Tq>gZFhio>R#klNsGdSB`2_;M<3V^Z9 zIHR zu}+)-*T{pn7vjJndb}5;yL`7~D$5c8H*zvjT0|nUtTKWzvubzr`pwDR?*)7<-1PwX0ZKhDWQSZAnT)^WG~iRA1F$xRuZ6u@C`N zY%#NX%lBsZB(Rr#y`UJ~0|yQq=o&o7iX7NJXdv`pyb8jv0JSoQ1X8X$c!??PgEn9d znNbCr@6li^1;`r#q<_0EW5z~h)3q{kB)S0Z>;b`KuPufl{O&(2PBy@BB6qB$87sO=E!jZ88%O~WvinwFqgJ6fMAQfg)X z<9cbB#&Ex)=}tXKJU?G){nSsc`gw1S?yLW_b?)AK@4ffF`{4EZ>(tX!$(;vwj{nMX z$=6&V<62PPIeyu1{T7l@S&qEX1L*bk1tSO)m{6eTU#9|Uivv_4ZZwjihzqrLloixR zXx!Zsb$GrZxZHIL*lSvzoH1>O+0*)%b^2lQ>*wu{A@9Wj>GCl(KQ zy>XhU zd&3J4jpT=Uvh7#bP!s@~%Qa3VVF-BwWy-?BzylRzyH07{mO%w?kPAx2`9C~mlwzD$ zC3?bENsQ6pwEDYseA;1L;6gj&U>NvkDNve{1iCt=^6ORux5m!Ay<51^YJJUBEylU? zs<`Y#p*DAE)g5ob#+55qz8uaD1GQoQ;czzm@|EYojx1A<(^sJsb*5=rkxhGCKO{?* zJp!+wu1#j1xVnP+BO0>>2~i0LJvaXO;gxyQ@VugE66RIU1Ke!xG7OE%N@q<7JC@3& z8GFUIw;&9v-=Tc@V{6(za?`WrX1H>Q&P) znmkJrX0D=TxNo+kwII7^XhXr`lp;%{AxoXg>Uz6W*Yd7IvP@a)4bRULNmfn?tSIcz zA*OJfe2DP;KD3|P!j_&5C4_w?k*U24-FetO+k{B2ENAJ}XYZUdV}qHXg`oKr0U?UPQk9B=voAwX${T zafsRABx@vz;ojR!8%z^S2b7p5IGyUiNN^r0lOpTrhV03@Ruw}!eyJS4df2X3WqmwX z*0KOftn>B;#`iMpf6&J)thQR!a4U*ToHzTdN;4)vLORR=Ff&w5>aPPgqj{n4_CQnZ z+dP|`@T=hgR~0M^s?~PaEjtEeO!u+TM8mh-_0SPlM*CLt&!3pr5NkPrYu7or1Pv(Q zcsLiXgNNYx@UVZS~qpC@R5(?TJsHZLJ4D<61*YS0jiXt$wdx7?c`QN!!Gk zUeRuto=aU9=VH#hSu2R1D5i}x;p*e(@adqFmeIcSoe5X_K zcQs+uyD|&pV4n^fq~9@q=4iTUvzAqUdebBmTkm_BIjQ7g{FT7CG+? zZ+L?xrU6^BJRl~EM^&p;9X#79yo|;2(*5_}uNBe-k)2>BxAW|0KReJ>w!)X8ayyQg zCv0>9E2Z!MN1CQ8+R%6e`SC@lHzJkBJ{|Fda=A>*FBNl-h*4wr+;fkSmj@TRqobpFt(S8* zq6+PQ^lbF|U&!-!3!;2NsI0F1h3qw%@l*bapiP8OuaOY(Fy@olV5{`<5>O0Pu1`HQ9sdk>-l)=4P!85%|a4 zdX_ZIDyMIUzBhDSMzKcb3Qb}*+4M}lzMl6B9+$&jp68SXrnFIxMhl&q~o{(TK`M>v@JVM_lT5!qMB)G>W7q ze=)Ke>oz-+dvN5~6HxP!~f%PK4B;giESiJmn2E1x_$ z_7y&}JcLJwVMxyBO4ay2woVC?aui}3W}WP)WOQ_Dd1eNYBi78ZR!tQdT3kMA@xVfY zAW$k(7`J?d_Uy^Ed9=PcWE7n*Hv<45z+-zj#636~pkFp-RX22}-Oxsx44w|KeR{+1 z8w^ngKBfIduYVGBPWGwn*a;U#p_ZYzK>N3DdaP7J<)NK$;knjXu_Y!qIW;xum}uITjn<}Yr-%PBsO-@r38ISi3|Z@{qj(S^R|XkULeAM^ zBN~3xI!6g%HmEQvijG|y3m!Ml(+FTK5^^y${F-$j|M>?H+26LuVHrsT{(@TE3 zsg>uN_U1U2IrW#Gt1SQEOm%(y0$ZFi&Hw-WP@EI^94>@-za!q&HK=peS!uG_wHUVh4es{9FT}QZSW<;hd>zV`ip- ztg)b25MyMah;Bv3Ik_|3!97Tz3O(3_2v=n2ZBLE}TF}Ef^i?`cRxlEm5oU(o_0+Tr z1)%ro^!z%f1ZhfPuD^lkTn?GeK?US8XjeW%JCU{Hm3U+(KrRX*C-#?IL^-c!c%s?&gTT(P2z#;SPA6D|XKWDo_v}YCMaWw7ttFLU)Moo#82%+u zWChVRw4V0;X{{R$Q82x00I6Qp>Gkopw6jOs^cd7Q;6DKF$v2sXUeY=W{z)`~h0rQw z1|?Kv4~?%~Y;^L0pk1Dv9yxGsvFQ>il}6K1=@6q)B&FelzxmB?*tD(tRNf50o|_u~ zrm3|@tHA<0%as7zbFI}xqG+^KI_K75r1Y%)`}Z5uw)(f@h?T6`jQ!$z0{u7bBhZ2# zoR}4HFXSP30Xz(kz#e=JehR;b|KS;u+=(AlpQPQW8=hUrXXG@Q_q%^Rx?-ZsEh>^N zFae(1JKkLyye5M`#yibX?s?I2a(a7&7P|^q=?k;=W`2(t@4CqG@f?9 z(xv}>Z0`wgC;Uj2Vb^wt`6F(X@62V`kmW#E!pEt74?iw(9Os_j1;nv<-pZ_8G5J@f z#Bp4#G3x+~FG&(6n4RBdUuNWYA!7yaU7aZilSvu@w@23Q!fQ?S;4HXdoM*xbLS2{1 zM#iRrhAbh;#ZiYA897EijYisL0-hzQ3SZo{*It{izKC?9@DR_t@M}TWA-ZlvzE9Eg z?FG;KzS3Ih3UfvO>iVxZ+Im~6zy0lRi~hqX-zZ@lWcjU3QIsq3_VDAvVsI$+=#~e) z@#ri-@E-};{;X{=w4McK$S_sME^$%Fan8F8Q#DRNMq!~E6mSHCSxQut+$M&dWn-rA zyGob<(6(0weyzf;R<}*LYmFz;9)$86#PKfu^YBfS8b8_x^ese6= zYBlP&R7!AG@x6kqGlms+U-Yq~M~}`6@7!)3dh)7ld~MD!D9cW9W6+Bft@iysc-}8w z``Xu1I(fnK;fI6k-tdMuxLCmo*UslHi*p?j{~-+7z5zw)p*qD#_0aoFFq zZCjEe+ca%k2txTZ&4h ztR%@o9OlRyoh6VwfrGP9(QtY&4)>%GHnW7VZNm*Mrn+vn8Djgw*(L3cq+!U^?Yp%t zpA#A^`RGwyx992&-rIDU=BJK#VsViuOp~x|+n;z~#TZz%EBbo2N}rb=WlCcO)wO^m zh*ky;VZvi1$OLYwdL6@pMM2{pijiEfVAbZ;n~8Q__VlGvWp*fxELC+~FT&uDdk}hU z6fm4UIMT{ieE+I+-4@o0nvpdfC8*k*6JJtv|5{2Lbw)~fhaT{~tFOM=a~Wf1e6-}u zUtFtqaY8bgDwmRBzUJDKzCS&`;ETqz>uy!i{h};oF#N_z=A6G%n#CW0eFR>95A1=@ zqpP*Rpqy`^h8qEoc6vxnSi_1sx7}eUfa^|CTA(k4dEW9(;W+tMG_KL~m+PFfou^b< zzAc|2`sU6yEZa%(7P8LEH{d=)zkw-SKY57j3ouUb@oPaYZqONydF&QFijUA*(3uCi z?QCfZg*_nMiG>BKkJLlr%`;ulS85%O7(U`|y$7f;X6?Hdjp10D9p_*otl}2>YM>!%vE7_=G4;MT%nMTTtTBvICKY-0M%hqjO%v* zQ+Y?VOO3MYu=tcd-fc63?r*rDQsrs^jiw1m9YezvtV@T z(xq2r45MnmRwg5)NYxQ-_-Ti#y-L@1DZRQ7Wp0y2ini^5Nz1&Bb2zS7NlCI=Nv;lC ze=cPHp?D~%Ypu0yb+dTDnI_&`z7e1WTt&@qeKSw`AKg!4+VUz9dBNpsJT3yiYPJ*|bb>!WmnoHEFzraJgT-0GByc66&i4TPid(g9x|Ad&D0+8}-AJui8 zYmTnVU%61%9hDo3&XUk%DAN_iFbu=>DFNNWdo;C)OTrm$;;sm$3BDgIh9nDb|Ky|# zG85R`6-H*)X_p90uMf4RSEE72vL;HsEXpd$F4!j#Tn1?Ka4S1 zH=N9lTkIIR%w&ZqhQ-}OA&NZD7^CW7q{Hkwv-xiWlmIqAn3(fNZwg z2f>o9mn)Xq^SdAki#||0z)}GmhXb2}k0mvS_rrmbYdB63)O(&=WZfiY`RKb%5DcZc zYwbX&NB1!YL=LdXW1shg;A2u_igenb!Qd5aB%MAuhb~<@d*{ye@|rq2w9sB% zZ7&?!Mv%!=S1(>%trEOa)7SdE?$iP5j?RT)<}uEjhTszrjlypfChGaT9RtL6K3^aF zOJF|DXLBQ&Z0r#D8t=B}+uf4P?B9fV$hjn6rlo9xIx-r_004{n5Pfn6Se!00!U?m4 zjo?iCe!&bRsmvI2&*TP>r+teuC1R;e^e|J(%!J*1PBTj_+i6uZC=U~1ykkf7i(J^j zlF)cwix1O1hSrUN=NX-I#;AmJ;ziRmmD&kC?-cXJuGw`>0+kRG!iJa<^YS@r7n<;~ zkWnpiTZycz2}iCC1QGS3h(|it!4n8&^J)c-0BId2UH!)q=fY;i6dvobg<0RU?CkHd zn@FCAf%Se8^FOmWCZ#Wj)0ELm;6AoU*0!LcuE&nBXqtet7ENavH1!vJ ziPCDLgXn$@r@^<+s}Xpyo4X8_MN@rdM24~u5|7MLt+3;S|kp%fnCT~p?eCgjrxFg$33FU zGC6mS_}aO?Z(qpX1?MZfx$DPs%ogL2VG=Mp9>!VX`Ko>X@3N)C$1Hu^a%>gdH~HV~ zPt$pdpY^DCM5$=1@~>2J1xipP8x%Tmx;9MsQ?qO1-63(Xa(Zq3Ryh-a<&b; z*-qj5C;b-CB&tDuzi$2t|2B04UePj3YcjYz@QBOvJ9p+(mv{kpL0((RXcZo~G{SO( zu>qe1M>3A?`!l(fU)1;iYpq&_?kR+VX#yq8*Nv8pBY0Q9se7uLTgrpHmjOH^*o#kK_NMw}dL4K3!&{4&cS~mF{kqnr&+X8MAG0APcDqY^LQ}fMM zw+ElD8olHoVJN0)|BIt4++dsqG2|8~><3GtTz7ImK=D}AUez(Ds(Fr`)Q5~33k&o2 z96XSB+#l0!6-rU3a};1X90jL^AuS2&W|D2nwo{Z*A3%uj&278^y$wB!{vY~0>RW^5 zYhjUKK^_LWn9z#?-k@&i*B~XFfPAYdXE9|X1VX$LiMFNw2s3ZeV^U5cnNHeE)!GTs z7gW`hLp5UmP0h8VM1^P$EWN|CETwgajn5e`RZMR5f%ps4}QyaMsUs;=2HIWy1k?Bjl7-FP_F(4Sz%pa~G*k7`m%chOz@kj>U-bC#UR z#_m%XK@6^1(`+@JJ%tXSYtgN8Ym7G%)(b!5Bki=uk;BAH%^2{rk)#RpJwQXEGHe@_ zV2M#CB6neYSKR1$NG-aCZs++Iyx;|TW?v&)Y?dSQ#QD%v(PN;_VHZr}ExVR0b8~b1 zQ}o=PNE@VGRP7nA7}b((v&MX-TT8a4!FtJ?->-uo)b{@e)aqSDQIu}I28)D!`qF?M zKYkp7u$uR|VP)S^_#;E%zn_h3O~(@k+$0%>1Jf5J5r(k?DwT@SZvxd`hkasixuRrQLR2q~MI}d|LBiZ!`bt z1FqPXB8<~Am=+`BU#O-~Csl2ofEiO6+=ybcO=;W2lwz?!>4Ly?{9e;svJ1ucQOxp` z=7|CG)Jum?8bYz`fy{gp$oPt;PO8FGZzZfCu>8yMKW)H&sE7N(!orgE=)vvNV|ujF zlSy>S6Wem+=jM9^xGW7VkL4pWLj3>;6dZYPb*FkrT=vP7G~NcdjnQ9|^wBrbnZXl| zTDfP_L^uOB0+991@WSVm{MOhx$E&zMT|#Nsx&y2?|7Fs@|Y02zuO z;_AWSP~zBJA&tt#8nkEJ68PIRj+MM+dRH*Vh;1%4=yfRvPM0;@0TyDD|Ol8pE5+ zCXS6WZf#IoOve~Ca2gs~dLLQ0=kB|VGZ=uUV?3N`HTHvoAvGQ$E-xb9EI#d97>b_9 z!=~2k@iAABGXykM2ZIp--cK_ydG3AUP=L?-7$M)9&;&%&t0Qi6SmzsJ=mr?NR9J z3G~^Q#q;W&G=coHETTb zNUXZO>l-A=lO;*A0tx$z{qv2bz>*|M_LgS6r?ihyy}9*j^d|Ili~u;69H%B#sDf=n zMJjN_ptWzLm(FL-2dnEY1EveU99W#-@8p6YX^FD!wyAP9HyF#c-y$=6_gLjhE^8e< zUY*&y$J(`T_rb-^oN&z7D%U+k(M^_7%%4jTux_B&evj6yOo0h0k~CH+=)3H&!19Ku zn0m-6d1IcfMun|edvn_lR{BvtS~~XB!|>ylwq`PYj0InWA$%5Q)@~u`ON(o3 zi;KeS8UwYC{qwaSeeONoW#A<7m+kj5N*s!8;929lXho zN;+2_lC0X`=lsN+@&Bx@t`hyt7EcCX+xZ@RW6O=fROcZkcUbyD8%FXO7{%C*xz)bq z#lQk_iVlkHl`;@Hl%qiy#AbiosO(AZfS9m;R|w5ML808;O1sI=xx07&-o9UN^2qZl zZHHjtrm$?okR?`hDmtZ_BXSeZi?kYi3jrVuYcs04sYtSRaDnj2TMr{(Ofig#X@leB z9g}7irQMu*Bj>0B&u z8~UcKMz$2D$oD!Kh-ITr>@5S7WDowGQtuE*OsmYBCgPn@pHdwTsQqAS^6=`pbE}6Z zr{)rsyJ9}vkOF_1&B^sjMN7M@VZkyQkjfMK1b7HMoXiKgJff;AvxUfktVRHEPLN1? z_I;NviI5%AmjgdyXgdNFHop#i?;AUBqLOy%(v7B+GD{MrcVh+z-NEW>l5BLl-;OKb zHHslgOl#3me3t2;INd^cW@f*5A%Bzf|F&RL#(Gi0AbCWRQ z>Gf^P$FV#b8MBYyd$u5UX(Tvo48xA)@BjUNU&_iL$&#CwF~+)%u_WbPNtQs)N|Llj z)?by)h;%Nqt*|XhpXIF_*D!;+4tzm{sLjlur;r8{4@nE8G%w+!p-CqQY!gv$B*U`< zgU0&HnHC5dGbt#z=e;7HpO5o43>;#aR;g5I#y~Gb?DJ49NX&KyF zT5OaG87>GXA3Ab*8F-cQ;kI&iZ&nx6gAG`!7vE!SeTr@mM^UN2m>S^CCLc|KOKBRJT&rzK6^u5MoE!H}_O& zV>SIwfF7pfE)#N3rB>sN(W~98 z40yWHW}QcHDbYNXq5@`!s}K{LXv|oI5x}cMVML+}S^CgGt7med*V_aOIY-8JYc)5_ z(tc|KJK~nbBRjBKt(Ik%gGd#Qs_roTN#EQ_+~U;aRPk+wX$Ipj}(K4=NG8rX^RMXsRS^K0x8KC@}=>?_20%74UKenVjb4W zN@^2NyMhG3L@(_oqDdk3@kGxQ^of8Zk?s&bh4dW9jfb#g+b^CALXOr@i17>Pc8wEm`;; z_$1O%2OWi)@gPBPMN%J2(|u#WJw;fVC5@yZ|KtEmNs3d4K@>_qsZh4j)4e%)8tjX4 zYt~iE618T#-K+`AQdJ2XbuS!+UQJ+0y>92uowwp3y2tDR1#v#Ogy zZ9PyeTc;=8{z;7B<4CvcMs#(~6EmOdS{M=|_aGOj3g}$xpCD;;+U+q#rVzr|h}1U= zrCe@W)iw5VFc~4X`o?WLDmR-m)053|WZPSt<00ZHkf4^ggBE9JOB74$b5ZTCt>37{ z`TVd|_*uxuwMKtC&Zk;rdwcs6<3Nr+I(kke_oFA|u9bd!QUSXf&YuSu92*TQgja;2 zC<@c);EiGk2Ym2P*XVVVLyL-|rctV_y4B((l4U{n2DME~%bWj&hgI48B|MAmYI(r} zEVIeQrADPt=uwQN#cs*-%AG|CW7;beDvhPZDJo;|I;EwnVaqBmX|8Vw8u(R}-7#I4sOot^;CU*Q8dI;+N?2uT)eopJd>2M|?$AUp2^2h1d^)mmAGhD@=vP_pI9#GyG1yw+$8Qh86%Xw*0iuZ~}` zH#L_g8}z;lnL^-V z5?Z;liua48T|`f)AOt$4dvMG2ik_$FjCev&c!@&c#3~k#NT7;Xw-hC};fdyo{TJzW z*=CMXsNAJ6gO&-@38NE(lBT-9-LkaQ&Xwi_CJJu0${rSCrR3-Mcv(m|CpR>d+-h1G z%0m2Lfc3p55cVaue=qWP?OphK-c$LwR?t84NgHqdC)XFANHZ98_)}@LgLeCvSYLpS z0s?zrY!MYXfqnc##HXHN=E!5&SV*UcI7yWjRuL>P@$%pX!hCFu{~#n(nAuDQu8my} zPfqox>iPMvV7@IZk2AwRH#<9PsI!V$Tv=I>*e;Gw@7%ewv{JrnWo4zbQhLF^Umom~ zu}@9@XJ$5&2?-T{8dl>b?N3eO(EfTQ>}$BZf@Nh_XKrpzHD*n=!}C1L^o4bz(P+30 zci&gro_f9R)_qJE1hxovl{Q&lys_aN1D^YH~$)wGohvFAg* z(SuKN+YXDiZM&)loGV08h+%x+!IBJI$>d#^Q~C&=UC}gE?TvqF>Kfg>plPbQbJmWc zq}Qm+K(loZI_^nO%dN?+8 zm^_gJJrGsU&>t81{R9F1&IA~XbZ`gf zdsBdsylL$Q3Q!r%md0_k!!J8Dg7A?UOKm&tM0MLJi#Yr%aq4|Z52!W{JF()*RKAB= z`|8DMFRjemGzZwdF?arNZp}UzJ@n8+xm%yP@x~in3^{6FmmQy!WtHiwx_7M?VkO2K z&p59j%VPwaU|lOoE*}0i3%inZtrZpSC?fc6g51|&BD))*eP5g7C*SO4bTfJc{br9a z+!F-wSd7MiQQPw2wvEM4pHAHfav)^%D4z>;Dzsc2cgzIXBIzV^TuiUoA=u7_F$t!Z zU_64Eogbs!tmvq$OQ#k7j9O0wpc8t$*j^;u9s!zV>&9H9w^J;`K350m%_N@ zdmwV<#KvfABbR!A)0O+Iy7E@zRJyVUDN#I(}hCeI^)PM zjvhTK&gJ0`12#L$g11jiPvuXWG9iYcYb2MO`s;0;mU6k-J$q(zIq9@XG~F-=k#o5} zUa(GyY@W_fO;5eO*XeYk<$OM$UyeF*ptWPzL?MbKqmO7*k}>qXc7aJG-~N7+(n=&$ z70;6(DF0t62*^BERWa@_x~>cNxZ}&PscGi;xsu}oIBp5fn3^_n4WE0RPhN=L2K|rN z{2*FoW}Z~55b7rSQ*;ZE6meH)#Ic~=r7A;}6bKm=S1)f)NdZb~5GDx~YO8JotA}r~ zW$i>47d!!~xe9uFn%KaF9u)b1=K<78rNTjzrAbK!6(o=AIaPL4t{9FY%bdx!M1>4Q z_jSN_(F8DkO(7DfI%iap7^RLCG8HfOPW?ZkaAxSXspXxF?^^i+xR&Ai0fz3>RCat7 zRJg88d`i=zAzJK~!$vNbqZ-!$7ci(q^0>?;mCBAPWJBR#Dhl<9WJo$?vSFJ7r(Gcu zQGw}V{v(r7MWK#Ws-9k6rsHqP%+S@))EuuO=UmIcfh>_iapnSNH$Eg>ex+YNi~c=&`6Etxcr1sOXqI0u}M+wJKl zq18fSsH#NlOsy6lvp{ay_QZc-XTUD*34-6s(=o&&CV!+9xPnPq)`8b54Yg=HxR!fs zmHDGsS|@}^JFk-=oL(4pSSTXHIQ0Xs6W&6#tB**MBwdnanci|#CcAUW=*p6NE(rvw zuM}gW41DKcPWw8_!^62Bi$e6)yl=^!IKVqc%OdxY8U~9R#eG~l)M3ZzR5gscvh%^m z=9qhHp}S#x`<6Ef3G zt5UXarS0T(#$=f*MB?0Z3kCh_0}?r}@CpSTnrVw5RH`pw>III#^UC2SWYZ>E__`G^ zome+AuKiY-F+F;wn_QE>g7ojg`6g#NKeYF^N4NtYZM~_XP$Oqtm`6Rv(5cbv3u+ut zIBKk#RAmo96ORdLrZX8TTgN^BGW20~_Uh+s!vM2VFBXkdA;ihXax+)4J(UwO6LLeR zZn@lOQBYOurwxOuMtm!+r=EK1y7&;M zNn+)rDz!0O?@Y?&YEx&Slk;PB&mYuCg|lYh_A7Jr$dMzUC^~$_Q1~&~H070|Y?`D{ zluc7E7Kmw*H+f2oRE=4nC|ohHG!D#*1+cbZ0*JeZz^-#%UN-?mov@`L50yAYk!SH> zUaQghFdU-|mD>kVMH13VkOvHJhyx-fw4=$Tz`8;!?xun;hW_{$$*x^TEi3BH%#<&W zKf8DD-T@TfljCl>UwpKe`$tKP;F}*ow6_QY`0ZD|@|8QPRlu*j|Ni@pa(Oly9$X#{ zhmlNtcGy8n(VNj)i-yCYU5H}bR*RTYYE&u}7Lo$aMFl=0dP{6TB0^Oet_1=V)qRyJ z416+h$Q=YH6FcPjM#G3~uO#Ii8|>qutSLqzByrzwu>Wn>+cA+~D3;P!dLcM=KI@#W zXz)$9?6ahRmeFB!8yd%^h)uML;1z0h>gzOeAKWR5p+H8(eh3$XDrPlK1GOO2_KrUr zU@&w8bV(4@v|SY7gmk17IEsN*#38t3^KQ=cP#EE$Xxl2Nijw3u?!PE$!4$LugMrvS zJI(b5Ke~&1{}w_r0{*=1Z$UO{pk-^HG36)jp`8xGFr4oLp=l~kYAHHSLF1$u2JJTfm;;qh01&$BlF(?r8;!b5(~01GQUJw<^l#20 z|Wiqi4I#v!LOfm{16$BArEDi^g}u3F9Iw30-rP6&_K z+Dx%cdyVfj3DGp;LdkJmr*y&4G(yaGE*~4hAUR`q!j%B`0)KCh*9Lo#rW-d! zuIIVYO+wQM!1B1UB zNu$HU7>$lX-~e&uh(kBWEr2y6sU1sn>CO)}xm$T`Iho>nL8*Fcxw1 z?2a8+Fd_73drC0z(6@Qxj4o3X%HduYgcbpq6m zd2f?^ok<=wegD9@5Z=eq(Cc%Av>sr-g*bX`&p8hIANtUTa_%vEa7vNFZgxeKuT3n0 zk$cR|jlaD*I%NuHlPfLLw3kPgNgg$!jP+s4OVNvPlR(13?TmXwyS1$! z4g3AU+zh*+WONV8KFer(Go<(-whx@?WCWvg@$4mZ1l@ujsJp3?C+o>cGG}s!j(3hk zca7<_x4V?HX`N)DN3f;23IM3>$xhl0Bdq{@e);@xiZEc6pS`v?7w@WST6opYv+6Zm z?O_PKBZBj}GiS~)!#_brZ!zo>7>H@QL%7OthY)l8@03#8wnh4sK8KyUMGb`-w6$+z zO>mA2h3vtdI6Bp1fmS(-#owMjecIH6lcEkx4`dU&EG!OhV}VPOBq>-jc50fc?$D@2 z4Z+Tp$wx7{wwf7lO9UuTXvJw1NdSXS^bGw7Zi;`eAoMlpTV@r0$ZQtnCG zZJXuf$b2X#dbbhH8mZ1nqWk>e(04kbJ3` zv&~57JEAV5p&8r(us9W996S#2+W;Rcr`2*32M6+)UoKh6+X+<_+WCBbI*_SPmf!|} zO8-WRk_VnR>nZ9h0b`Oe6Bz&c4A}6zviOu27~l_aPf(XUcNzv%-J zvf{Mxp-L0z#{d~#)rUwea%g(7)jAPH>4DQ;hq&_+=y>k2=h_w-(WGzG9|n0yOv@{S zX=awvv_yiq+LR@ZBkXqq2jk3r^^cIixLJ`R$DFj|+mz2YSutOwnK4bs=TjE@z6@cB ziNVs7#5_5Ytt)ZY47rN`8onJpg+AenLgySweBscp&2WNXuk?ZWjuQ+oyyiy?iLsEd zMz=njC!s_oY@Y}Wwt!4((bKB<#fR9`RLeC1Oqbx2rKwgvNT^OExMTwOuDg646aMdT znrb~A$8pRw4NMbUqA0`#D){tOjR|F({M1tKeqMsHtGhFLsV^I9sT!S|o10T4S!1Ko zYUL=+krbR7XtJc}YdLp>0lt8)%TZNC1YIr^5P)UNjM<5n=^;pmgh`Y-XQs;IVcO^r z4Mjj>*<_9Jo)jinkG%Vf%&%;_d{5VPmYpnRUa6_(L58+^sA4lFJF>SaTQc&m6DkyvaBC^*Sp>&VH>j!MAt&Std4-(nVDCpdyCsNhAl<~ z5%|FolU77KYSG832u7O@O)p8`Jx!Ohox}+-EzIk>&c?sHva-VY5tU9mRlNW=Rz_sp z#uz0qg3;11>UMF5dXC1wy6;RI2km(-hl8)Nb(6;1do`FkaNxjt|IRm`IdjHoz5*JOM+}Tz0JX{y zXj5*tELZO>@nN60B>I4l0fRdDLL-2TTNi!*rt8CB1<s#Nd<2>!) zT--T~UrgtMcFuKP%VhWDsY6WNpZg&v=#*timb6&6t%p>u>?qI7Ro7YK-JpY57x0=i zonMj^DXO{{Y7&mEnyB=y=Iq|ER5oivr&N(j^5x;aIXG8k$>-XmPK z09h(0ZZ4<+WF@IE^M=Oja0v(t=GNBc0!CnZVDbAx6@o(OE^o!yiw{oa%$<3T^rCi} zxv7J(E8(}|Ai&!Q%aj=gqcR3El@J&bWK+ayh2~v5g0G+{w8J)}P74R(ubQ1P$EPDO zb*(j+;8>BQD*+7wIOppnDXT9eoHv->Y%U>xX2K%7WkPYF@^R4%q27030pFO^eM)QX{|IT@To$+;9K=D zfbqxTdEir;F=5)5_zQz<##C{ku*BOm=~Nml`X2 zH?*K2M#UW9ei5zePz$|xSe8XK7n`SQo`=))Dkr8*D;+5W(73DT)$tm2$iaJj-{;s3 zJ#kGuH`~4{O)>6vPsm5R62tzvMw#Q}g4bwtrm8S1?VrT^;ESl?X*ceTrfZ0)-bQH( z=&Vui$S0=K&OEZU3F=zthmY8H{`Uh-68M-S=5nWIW=a@}bF=5-qJ|~&^vq0AD$TXd zjvvovvp1z_8JCmfYM2Ujnb=3;dKs7J+qZc36nswBTS|6vGL`1ibj~j5mZeO$=H{ey zW+pf88itWBETmGaUe6ez;n*~+R$Efq?Y6l&jU5X}WV~44WWC9PjQ?&* zj0`@sc3TAHv<)cQ<#U_0Z%%b;4VdNhOCt)gJPh+8SYEAPcu%`EI&m^l*e+qX|={FsfIo-BtP zRhqkRa=sDAv6sJ#vs>D47u?ElhPv^Qd;iQ;`&-yP##z6!oFDXIjFITR+*RauP{V|~ zWQalrC^Bt0Lk6zpz+#AdnuOxk!^MZkI~OK=XN$%+*$BFaEi8L*x-AG zUAnGLR?3#2wJk73wjN_c_=UXZQAQm*Q}vI25|r-i-pAv|3m!F1Goxv;D%*B3>lE!w z);8=+(Xy!_<+27?b~c;$ebqD*-?C&vU8hhEO#y{R|5Pi4H610S-vsi|&V<(eMbVp`l9(<-!} zSel#bF7MhsHI4D~)b3r&-MP6^5#SC@=Sn=E4k}Pb8Z*2~`*vG+zEBP~1C#UC zxB4#LCs0HByV5YvoqZ@ok+r=A&%-9lqZ*n)U33h}UPUu^+Z*x#=uy~*&dEbzt)Uj$ozD6p6 z3E!eEuIQ3v)a%tM#?@-QZb*`@P&QP&Io{hUT&YMCZ!}^*Cl@%971fEOwETX#ex=qV zyzc9iK?S3&Pg?c`e-L>0`Sauc6{F*V*ob*n4#0l_vji^7hV{pEz~s|M!IJI zj=VP&b~rJSnizxi9T8$yBmF3T()5ST$HhGQbYC~j$=wLSGl!}-h&3w^dLUXaZ2Sj4 zHX{kk516=9-A*H^NCJEaPNmjjwF(&FN_DX%Q9hFE9Q>~qP;>wOM<3n4-=tvu-`_TGr?aoWci+N7;aURx!ca)`x;DXLL}as)l+6mlEZz#b5BHXwN0;OfLRm-| zKDm%i;d6*1Rra%uWhd_Bs(6aD+Z)5(ypLzxXrdx2Kcp&2v~g=87{dF3>exjL;Kn7( zO16(+3Vsa0CH)Xc{zftB4{ft$-yQ<2`jLFC)el+dN<8Er zLzgEqeTEcb9%pGQE^5S7%xtM1p$H;VrX}iuq4W)P>*}Qfq>gVn^X_Y(ok##+e33$e zEcfa{n!u04aJ-p~qD&?OgG>}x5vCbP<4Vh&jJr3=ec6gsQF^{jbiA z`&hR99Xpe;tq)8be!OMDbJ-}$jyJ9_Fj9yxS z7ZXOZfRSGB{scGu>M;Jr?YG~~EQ{T~jUZAKi$JfdC@qJ#G5p^5zGna!-$V2Sbyi!- zAkCQU8k8oK_+S;M1QdmTjDj$c+jMS6o1mVi1%iH}$cwCR z1Ysygnw{w2Lc}bn*GPk@4&?mFSc@jDPSHpD5b*yzg9y+kffLT#KYLOEQ@k| zDpmyH&UpKV8*a#X-CJ=qvvS?}J9jvSp>k_}xd5Nx4$l>fx#>NHtO0sP2T3^&1YK85 zuTW5Yef-=fKlw>5Rj$-JF*^r_;aIvZYoasOX6VnsJ||VwEm!Lo!*juButE=C2kNrf zo=hX-Nh5KG8>Q(+QjJ@<=H2Q_e5aXSBF)Yci{9rLI?(~hN$xsrsVcD9xvP#`|4+b5 z#}jfSWIP9H^=_O_%cW06NhP=lUa8&CRm$3kXS*tBZ^uea_-wm$E{Z-7TU=LmkgO<8*s~-89jrs^!)-EPS#GX(sqMeEA~%2fc{t(HE$qD ze2S_!kGDS@4#&R$s18-f(bt+?E0<=O`}3i~V1x`fHI~i_srk=CndQ|sx1^1hM{3YN z3%m-w8odF%1-%o=NJ{vc82+yqR~ofn)9&dYSPy75Mo@{wx+n?5w$&W~Z&FD*rje<% zd&=EPFttbF)+4su32obs1S!3#KNCU}geVjWvMj5;0^ywG7desTLcv1LJoo*oeCT{W zznIT2=7kUSFD7Ig`m`GObpNv%xlK9mc0&>hpZ&H@$kV zN+x6I5$Alb75`N+>|ef{ppOiq9}^`3k!&D%-_3$=INt+5@AY#oMK4%j7p^WMs&$CNjPiBd z0W)OqUA)tTM!P%>^s@)x4K!^aer%&#t2boQ@FsXNk?oztXdnj-$wT8#ULE?&%ga8m z$#RYR%d$K{GkJ1CmRs$bPik3D6T@wZr-zJXZI%SC5g7|5tJvz zM~2Pw2)z3|4S__O&J|%T+Uo}7u-H4lYu7Hrvc$;{Lv}c?og=1pHn~=sY;?wNAaVy% zcj>y`Mjt1G2V!{XYlR>HcTLk&Rr_wCU^ia8U*`;MwUAbZ8sYw}CNaEJopd`|N9b*n z%+Y@-D9Fxl+<2I~xb*ixvp#i+E9mdhFM&e==3pM zZU6g)BA=*mrdz8Rt%9E`xV7RKbS3~u6IkBcXhvY&<=Kv}{;prU3DCJ7*hb5JWcq*z zF1YRBgx5<9VlKqtq7tUlwvA_JDp+_B0kv9B zX~_mSVF-B_;OTAcr6Dtw>;H=CdtrV)DVL1+cvZ74KH!S#Y$HJ%_ld&sWsjX)Utgz= zT3@LGI&0`|4apn#D7{|wuWz+lieH`|JCb{`R}Duu zDgxFI?F70{yDzHZeD;NjbmnOPmeLD&W!95W+>NNyN-o-lq$<;PNJ+wbt5r?bULxrV z2hr*7%LPU^%+#K0RVB-E=1=v;k?!Z6-pPB6;?|qpBHP>BpN@%kJxQ-mKj3u(kI@AR z+3T`&E{f*@*Pkuq;_v_lt zK0wCLE^SK}d@CWb-)pXVixzb?3y=T_0gDj0CKK={GafCn{szysf^cF6mXI}D= z>#n;_)!4ei6m8TSSkiK#-6Hr7~4Uy6kd=KL66(2Ccc0YE#fdJ{dJcmda?@Q|Y;!Y}ot`Nd7EN-hN2ph#kz1f^vEln{fgj=;=4$+T z0nMgo#VKWgA~Yvu$GvU;pBV;Qv=vQL`kXRzZ6p|FgYRJt=kV&tAUj0Tu*89&qDY!1 zv0$>@AbWJk{4QZ@Kg`)^u`F_$v+DDxVKiDEcdprNbzj0grJg*{JaeTF)V*p_+j;_d z%>wp%d7>OHC*b{0TWDi+W)=nmz(+GA<|lfx$@Kgg@Gg{N)$7{Ra!VJW1EgM&>#nJp zkqh2+(E=!5pC!r~?`nD@AwJ#|y}2!JYs$*>+}vb(}`- zD=|Uh;%sA=Jt&?#t{XYCqh?vn=2_Y6`9l1f&bo9=6D79)KMwXk1e5=GczM?Pf4zqz z(?4||E=xr9D_9e>Jp>L698uhDRg5{<3b`8sej-|oJKcwIZaDwnU9tVYvD5mqgC7-- zr)?lDF8!D1NMt*M2AY!|+@vM%=H|Hc@9?0E-Yr_9fVl?284n&Y{+}zv)O3%?2RCU+ zNBa{mA+%5Zo1q{4)!~8ZXS>z1>_=_NOOYg2LL+w;#hE{4!-0df6ekEvrxQMeHj_kH zB{u^p1C&@+QJ4S#CM&*J`Q%7rwWttr!BxfPb12cyfdVk=ZhXpdR!Osl{r?)JMD>5K z?t}B0jW;ZnaqpX>{{K-u932(Y|DpY@^63+}`%d6c7ZWZXpR9u1;QvQf(eQhS>o&&b zUl(=IeSpsPclMC~|71iN5&hq5=m@60ebOU8#{BUlSK69KnlT*{32}yCxJW}e0=c>AY137G74>SK}rP&r+o znw9QNHd$>}ccui@h>40;k0&=T!x|SC7iZ1L%k_9PIx5D{zuQM!MXaOk_6deLF7dML ztO*lTCrrrl7AMA;jR|%iqqKq&BEu6njhMn1+4)SAJS_k*0aUgSedU)omNFv)dKVa} zH^0kbvBX&{B{RjDo@f{{X3V5X&Ph=T39eDGu^(i{?y6Y)Hbq9xOwNs)nwgmtZIz

    aj6P+xsdz zDWhis*B4p9WZAMZzf5ha%}CoUmC<1;Gi`MZ$Yj2?boXy|jdcC_mlO|&2bRGqZi-SG zMHks8M9A2t%y~FY6CBf<>N!6I;{qz-#x?p}AF-OOBdsA%Gj%e)5cf1)9b8{ET(Y<; z>0CX(#bGsB9ThEMx?8}%@{Dig z|F5=D)etoV(bW(=3^AP$TL!T|gSj2z46qnr=>%gu7)@XdLwq+_`(bndYzEjGA;AF& zEs$t~#BQ*cf&BnDeBkJVBo8FDg3|%cPDm~SmkC^LFs2{I7QxsK80Ua-tuVd_#<#%) z7ff`(q;hZ@kTM-ogOJt>8D%ip2H7Ua9s=(WOzndiZkXwT+(yWEK|vK1)~O%n0SH#YeU)&35FY4F~sOcp?l94e(?+JOw-z zg2r;#SqZ-$hNt_WX#k$-foD6RxdL`I!*i|hd>CG6f){NNYJ``@!^_?9N*TOb4Q;?{ zo$y8pwD-fC1Mt=mygeS?@j_=6{K*gRl|ff8yk7@@c@%b^hdn>T-X7Q&f^Z9bPz4`0 z!2U;}I|3j1;NxyM=!Qe9;qZ9q>4#4u(Ay86^+Vqfd>(@SCir(f94UvRN8orTeAx(J z`CySYAp-$xC7UYp5$YT!V@c{BfC-S5Td9nj}svr4P zAF{IndD@RW<3*lrL7D@|E(h|Q33=XuJl~D9^dK*EA}_j-P%ZLO4f3*qw1TwOA+Pw5 zS3St@O-P#wY1@sw7C>IFMcQr1A4-rnhmp5}NJks;wh4JBfOIw>@2*DP>p=eOMc!{l zc2^*KLG}$I;Q{2sCZxL>`KurK=m7F@2XdehIrt!Qs2MrjgYBw6b|e2dkNmR~`Me4Fq7>;jkbl)8|0zR`v?E8SBS*WDW7Wv92y#4t93Mdb+kt%P zN4_dY2HeO%J#qr%L_2bFI&#W^oGwDnR3m3gk+VI>xfbO7gUE$+YY#G5jeHY} zeA9${>qowAL%u6Qh87|J2l+l0`TkL4*pK|+MSge``LP!H$&38dhy2`v{4yRHnT}j4 zMe(BILe+%o5NdLxQF&;zAB~QnF(EV-G`1c!+t9dJ)KY?4+EJqfH9Apa7>#d0<0Ggw zfLc$ZqXX#Ze$?hgZ4aUeUNoT{O{_o@2T^+jb#$OkFY4?=lYMA%7wYn&t`>BR7ai+I z$JL_ay3p~f(Fu>D6Z6oCL#W$^rr6MwHZ;|TrkzI9htZ5CG}DJ>wxF4VXjVV!X-6kJ z(8;an6dyX}G@5-L^@h=$)#$V^I=us(VM1pNpfevubL-H&0Gb~}3u@59GPJN8Evi9_ zZD?^fdRZ%ac_UgT~SEH5P=q>%|t*z*))#&OH zbPed5-RL?4ttvy;8|eBrbVC)o@c?>T33_`4y2+2$l%X|)=;kJLOA)%|2zo~ltxZR3 z>(JU>bgKv5T90lWM(?agw}EaOMC&5xb_cq>8oj#?tq-F2tVVbE(cl5}eh+$o7y3X8 z9&mVb9KIe$^v02!anx@dJsHQ$#<7cWTq2I|j1vMlF##tI#!0C-IRPg>#wqP_%5R)H z9H+(O^eUW@i8I^d%KhAECv%lk<*EqL1&i#z@2IKr_oPQh_)W?P0aZvyl9mmB* zxcE9QIgd-{Wr)NaLs63dmh)v;Fd((8jf3g?v7_(<2mqrE}p-Q7v|%||9I&%ULK8Cs_<$qUaODS`{RuwyqSo%>f`Nb zygeN6w8p#5@$PH9za1Ym$A@M3s0bgo#;1w+EE=Dk#}~o);xoPmUmwRewef8_;EXa%EQm#=gat|F@C*|-@D_F>G-of{+f)x=j$QzPJBb&slnu(-a_8l(d3=W zlJ|E8nTF@J{{NK-2kB^x92V`2#kLGf@c*Cguw-D#-?7vOSo$I?lfbf#v0QO1SBT{g zV1;Y3Vj)&KfR#sM39NnsYbLSg9<0?F6C3dS-dH<!h)6WvqJ-*1H4iKZ6aE*su^A-Ghy1VUzLLG=a^kW3xhRz64v;#}>b1%Qe{Y18j8w zTX)7brLk>sY*!lFC$U2kJNCvd)v;T9?0yD&F2LU9u}>2FWU*gy>~|UV--81lz=0cZ z&}bZ-!66%P=o%ch0*5cb5#w=GYaCr4$6SkJlQ=ewzk6`K+%O9_6ynAVZc5;$9k@A(n{UBP3NvT$A4l+?X_YuSFOOScHq@V@R}T6*B-BLjMwkM8y>(d zIoz7UZG&-p0(W%BojKff0(ZZIdjt1Af%`JJKZOSZ4_3xQfrkq4a2AjB$D;{6HXM)N zga7T0H#Wx`f5-oA!CYg!De$Iu@c+-?Ev@mELcFay-u40Behc22#=FvZci`PW;Jq2V zZyMfz03Ub(AN&CydIlfK$48&R$9CWo34G!Xd~yvwbrC*23!h2hvv=Tg3-I~C=d<`? zdwdCexj4S^48D2?zIG43p2at=#Wx4zTch#q{`mF__|84}?hgFmTKw=G{5Xl9^u|w% z<7XG)=gsl+SMZBx@XI6k^?3Xyjo&uMZ%^R&-SLME{+Pv|%Hz)$Vc{(Nr854K!(RvE zZ*d^|lGPyc{tGk9(X{#`(DhB)sT!u~{*CW@qpq6wnt zH$<^7h!Sa{WO<_G??kB_QF=5{<{hH!0;1doqWl`7!aYRAEK#XHQRxIx`ZxCy)CDtAw)^#TMu>B3xVGZgOK%JJL&LPyLBkDR7 zbt{Rwr$jwUqMrYtUPDpu6R2-X)UPM%A4L7{pn)^cpt@-A&uB;h4S9ivUO>a6qY+^g zu8Ky6(WsngbWt>>CmI_>V=tibOVEV6Xi`Qr88mqhnsNnAi;kuT(2OvexdF}o8O>gT z=Bz<;XP|j)(fl!J!4b6Z1X|P=EiQ|eL`O^Bpk)=&@-=8hRkY#_TJ;32O^MbgM(dxT zO-<0|F=)#iw6!DJ)&y-|fOZAZ?kQ+*2<`oV4g}D_AUe1L9cqFO-$6&4qGL!hS0tE=ze7MKR)ipFs{`U*8$f}iR+HR_50%bUvPuAI8+da zPT)o}aO0l1No3sQ3I1~^{%Z~XJBjB(7h`S%aJr>}eV{oqk?$r|a4&gpEao@7IUrOA+B_04C z@Bj~rj0f$(gWKXEYw)lpc-R{}`~V&?1&2H0ku&h<*m%quJhmeqR}qg-i6_*>6Ty>) z;>l_8^!Rwj7Cdtgo;3&0DT(Lo!F+f(M%^DoJrLBx%cw_pP>+A1o_3<1-9Wuqje2<) z^=dup)eqF`>!>&DQE%6y-U;gcB&6G=}`SJ2wl z*VWP1-X-isI94LStxt*8eswH`T7yM3Fsl9od(~4etYd^ngoreg<}{hgcRZ&=|;Sk!7?w{`4(2ojF23s z*n7|-njCdlgeoQhDI7+KF~rPMAxnY~J_=}igkaHYHY`g-0l{H#ufI%)BcO=G5o75m nLx#B(C}vd$nE5IvJrT9FOhTB-8noM^Bu~Q}GR*MgQ&a;0W`qcU diff --git a/vendor/font-awesome/webfonts/fa-v4compatibility.ttf b/vendor/font-awesome/webfonts/fa-v4compatibility.ttf deleted file mode 100644 index 3bcb67ffcc1b85d1456ddb767f2172688d7138d8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10836 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%0Dubs~75obR(Bt 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 Date: Mon, 6 Jul 2026 13:53:56 +0100 Subject: [PATCH 06/12] Fix Bootstrap 5 tab-switching: active state must live on the link itself Found via manual verification of every page: two places set up tabs using the Bootstrap 3 pattern of putting the "active" state on the

  • wrapper (and, for the domains page, only in aria-expanded) rather than on the /tab-link element itself. Bootstrap 5's Tab component tracks the active tab exclusively via the "active" class on the link, so with neither page marking any link "active" at load, Tab.js could never find a previous tab to deactivate - clicking a different tab just added a second active pane on top of the first instead of replacing it. - groups-domains.lp: the Domain/RegEx filter tabs. Added class="active" to the initially-selected tab's , and swapped the stale Bootstrap 3/4 "in" class for "show" on its pane (harmless leftover, but dead code once "active" is what actually matters). Also fixed groups-domains.js's addDomain(), which was reading aria-expanded="true" to figure out which tab is active - Bootstrap 5 never touches that attribute for plain tabs (only aria-selected/the active class), so that lookup would have always resolved to the Domain tab even when the RegEx tab was showing, silently misfiling regex entries as exact-domain ones. Switched it to read the .active class instead. - settings-advanced.js: the All Settings page's topic pills (DNS/DHCP/NTP/etc.). Same fix - add "active" to the first pill's in both the initial-load and "only changed settings" code paths. Verified against a live container: groups/domains now correctly shows only one tab's content at a time and addDomain() resolves to the right tab; settings/all now correctly switches between topic panes instead of stacking them, confirmed via the pane class list before/after a real click. Zero console errors. Co-Authored-By: Claude Sonnet 5 Signed-off-by: Adam Warner --- groups-domains.lp | 4 ++-- scripts/js/groups-domains.js | 2 +- scripts/js/settings-advanced.js | 8 +++++++- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/groups-domains.lp b/groups-domains.lp index d20736083c..3aab714b9d 100644 --- a/groups-domains.lp +++ b/groups-domains.lp @@ -29,7 +29,7 @@ mg.include('scripts/lua/header_authenticated.lp','r')
  • ), so that's what needs to be set + // here for tab switching to correctly deactivate this initial tab. $("#advanced-settings-menu ul li:first-child").addClass("active"); + $("#advanced-settings-menu ul li:first-child > a").addClass("active"); $("#advanced-settings-tabs > div:first-child").addClass("active show"); applyOnlyChanged(); @@ -386,7 +390,9 @@ function applyOnlyChanged() { // Show the tabs menu and activate only the first button (deactivate other buttons) $("#advanced-settings-menu").show(); $("#advanced-settings-menu ul li").removeClass("active"); + $("#advanced-settings-menu ul li > a").removeClass("active"); $("#advanced-settings-menu ul li:first-child").addClass("active"); + $("#advanced-settings-menu ul li:first-child > a").addClass("active"); // Hide all tabs, except the first one (removing the classes used by Boostrap3) $("#advanced-settings-tabs > .tab-pane:not(:first-child)").removeClass("show active"); From 9f1d2155781a4ec7efdcbb9c14485121587e995f Mon Sep 17 00:00:00 2001 From: Adam Warner Date: Mon, 6 Jul 2026 16:38:10 +0100 Subject: [PATCH 07/12] Fix theme/layout regressions and CSP-blocked icons found in manual testing Reviewed and built on top of a round of fixes already applied to the working tree (boxed layout, badge alignment, sidebar treeview links, bootstrap5-toggle's on/off->onlabel/offlabel rename, and forcing data-bs-theme explicitly instead of leaving Bootstrap 5 to fall back to the OS's prefers-color-scheme, plus the new scripts/js/theme.js that locks the resolved theme so AdminLTE's own color-mode logic can't silently override Pi-hole's own theme selection). On top of that: - Fixed the "day theme still shows dark" gap: the anti-FOUC inline background style in header.lp only covered the case where the theme is unconditionally dark, never the "auto" theme (whose Lua-side flag is literally the string "auto", not "dark") - added a prefers-color-scheme media query fallback so the auto theme also avoids a white flash without needing to wait for theme.js/CSS to load. - Fixed a strict Content-Security-Policy (img-src 'self', set by FTL's webserver) blocking every checkbox/radio checkmark, the modal close button, and the select2 dropdown arrow/clear icon: Bootstrap 5 and its plugins ship these as inline data: URI SVGs, which the CSP rejects outright. Re-hosted the exact same icons as local files under style/icons/ and pointed the same CSS custom properties at them. Learned the hard way that a url() stored in a custom property resolves relative to the stylesheet that *consumes* it via var(), not the one that declares it - the consumer here is always vendor/adminLTE/adminlte.min.css, so the override paths needed to account for that rather than being relative to pi-hole.css itself. - Found and fixed three more leftover .box-* selectors in pi-hole.css that never got updated to .card-* during the earlier card-conversion phase: the query-types/forward-destinations pie chart flex layout, the domains-list filter row header, and the dynamically-generated settings cards' sizing/hidden-state selectors - all on pages that render in normal use, unlike the handful of genuinely-unreachable .box-solid/.box-comment selectors left alone in the theme files (those modifier classes are never applied by any current markup). Verified against a live container: boxed layout now visibly constrains and centers the page, day theme renders light content with checkmarks/ close icons/dropdown arrows all visible with zero console errors, clicking Settings/Tools now expands the submenu instead of navigating to the dashboard, and sidebar badges are aligned to a consistent right edge. Co-Authored-By: Claude Sonnet 5 Signed-off-by: Adam Warner --- scripts/js/footer.js | 4 +- scripts/js/groups-domains.js | 4 +- scripts/js/groups-lists.js | 4 +- scripts/js/groups.js | 4 +- scripts/js/settings-advanced.js | 4 +- scripts/js/theme.js | 44 +++++++++ scripts/lua/header.lp | 23 ++++- scripts/lua/header_authenticated.lp | 2 +- scripts/lua/sidebar.lp | 36 +++---- style/icons/btn-close.svg | 1 + style/icons/form-check-checkbox-checked.svg | 1 + .../form-check-checkbox-indeterminate.svg | 1 + style/icons/form-check-radio-checked.svg | 1 + style/icons/select2-arrow.svg | 1 + style/icons/select2-clear-hover.svg | 1 + style/icons/select2-clear.svg | 1 + style/pi-hole.css | 76 +++++++++++--- style/themes/default-dark.css | 29 +++--- style/themes/default-light.css | 98 +++++-------------- .../select2/select2-bootstrap-5-theme.min.css | 2 +- 20 files changed, 199 insertions(+), 138 deletions(-) create mode 100644 scripts/js/theme.js create mode 100644 style/icons/btn-close.svg create mode 100644 style/icons/form-check-checkbox-checked.svg create mode 100644 style/icons/form-check-checkbox-indeterminate.svg create mode 100644 style/icons/form-check-radio-checked.svg create mode 100644 style/icons/select2-arrow.svg create mode 100644 style/icons/select2-clear-hover.svg create mode 100644 style/icons/select2-clear.svg diff --git a/scripts/js/footer.js b/scripts/js/footer.js index 068a2d3536..4dee8848f0 100644 --- a/scripts/js/footer.js +++ b/scripts/js/footer.js @@ -653,8 +653,8 @@ function initSettingsLevel() { // Init the settings level toggle $(expertSettingsElement).bootstrapToggle({ - on: "Expert", - off: "Basic", + onlabel: "Expert", + offlabel: "Basic", size: "small", offstyle: "success", onstyle: "danger", diff --git a/scripts/js/groups-domains.js b/scripts/js/groups-domains.js index 18bd229968..3254e05f6c 100644 --- a/scripts/js/groups-domains.js +++ b/scripts/js/groups-domains.js @@ -204,8 +204,8 @@ function initTable() { ); const statusEl = $("#enabled_" + dataId, row); statusEl.bootstrapToggle({ - on: "Enabled", - off: "Disabled", + onlabel: "Enabled", + offlabel: "Disabled", size: "small", onstyle: "success", width: "80px", diff --git a/scripts/js/groups-lists.js b/scripts/js/groups-lists.js index e9c29d680f..77fd2cd98a 100644 --- a/scripts/js/groups-lists.js +++ b/scripts/js/groups-lists.js @@ -256,8 +256,8 @@ function initTable() { ); const statusEl = $("#enabled_" + dataId, row); statusEl.bootstrapToggle({ - on: "Enabled", - off: "Disabled", + onlabel: "Enabled", + offlabel: "Disabled", size: "small", onstyle: "success", width: "80px", diff --git a/scripts/js/groups.js b/scripts/js/groups.js index bf399ddacb..899f0c98a4 100644 --- a/scripts/js/groups.js +++ b/scripts/js/groups.js @@ -89,8 +89,8 @@ $(() => { ); const enabledEl = $("#enabled_" + dataId, row); enabledEl.bootstrapToggle({ - on: "Enabled", - off: "Disabled", + onlabel: "Enabled", + offlabel: "Disabled", size: "small", onstyle: "success", width: "80px", diff --git a/scripts/js/settings-advanced.js b/scripts/js/settings-advanced.js index 4ac545e3ae..e2d99e66fc 100644 --- a/scripts/js/settings-advanced.js +++ b/scripts/js/settings-advanced.js @@ -353,8 +353,8 @@ function initOnlyChanged() { elem.prop("checked", localStorage.getItem("only-changed") === "true"); elem.bootstrapToggle({ - on: "Modified settings", - off: "All settings", + onlabel: "Only modified", + offlabel: "Show all", onstyle: "primary", offstyle: "success", size: "small", diff --git a/scripts/js/theme.js b/scripts/js/theme.js new file mode 100644 index 0000000000..b07f24f4e8 --- /dev/null +++ b/scripts/js/theme.js @@ -0,0 +1,44 @@ +/* Pi-hole: A black hole for Internet advertisements + * (c) 2017 Pi-hole, LLC (https://pi-hole.net) + * Network-wide ad blocking via your own hardware. + * + * This file is copyright under the latest version of the EUPL. + * Please see LICENSE file for your rights under this license. */ + +"use strict"; + +const currentBsTheme = document.documentElement.dataset.bsTheme; +let lockedTheme = currentBsTheme; + +const setAutoTheme = () => { + lockedTheme = globalThis.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light"; + document.documentElement.dataset.bsTheme = lockedTheme; + localStorage.setItem("theme", lockedTheme); +}; + +if (currentBsTheme === "auto") { + setAutoTheme(); + // Listen for OS theme changes + globalThis.matchMedia("(prefers-color-scheme: dark)").addEventListener("change", () => { + setAutoTheme(); + }); +} else { + // Sync Pi-hole's explicitly configured theme to localStorage + localStorage.setItem("theme", lockedTheme); +} + +// Lock the theme aggressively so AdminLTE cannot override it based on OS preferences +const observer = new MutationObserver(mutations => { + for (const mutation of mutations) { + if ( + mutation.attributeName === "data-bs-theme" && + document.documentElement.dataset.bsTheme !== lockedTheme + ) { + document.documentElement.dataset.bsTheme = lockedTheme; + } + } +}); +observer.observe(document.documentElement, { + attributes: true, + attributeFilter: ["data-bs-theme"], +}); diff --git a/scripts/lua/header.lp b/scripts/lua/header.lp index 52c5a28c01..ec96285632 100644 --- a/scripts/lua/header.lp +++ b/scripts/lua/header.lp @@ -62,9 +62,18 @@ hostname = sanitize_hostname(hostname) -- Variable to check if user is already authenticated is_authenticated = mg.request_info.is_authenticated +local bs_theme = theme.dark and 'dark' or 'light' +if theme.name == 'default-auto' then + bs_theme = 'auto' +elseif theme.name == 'default-light' then + bs_theme = 'light' +elseif theme.name == 'default-dark' or theme.name == 'lcars' then + bs_theme = 'dark' +end ?> - + + Pi-hole <?=hostname?> @@ -88,10 +97,20 @@ is_authenticated = mg.request_info.is_authenticated - + + + + diff --git a/scripts/lua/header_authenticated.lp b/scripts/lua/header_authenticated.lp index a9a81386b1..efa8863e69 100644 --- a/scripts/lua/header_authenticated.lp +++ b/scripts/lua/header_authenticated.lp @@ -42,7 +42,7 @@ mg.include('header.lp','r')
    -
  • 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

    -
    - - +
    + +