@shlinkio/shlink-frontend-kit 0.7.2 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,3 +1,15 @@
1
1
  # Shlink frontend kit
2
2
 
3
3
  React components and utilities for Shlink frontend projects
4
+
5
+ ## Tailwind alternatives
6
+
7
+ This library provides some tailwindcss-based components. To use them make sure to import components from `@shlinkio/shlink-frontend-kit/tailwind` and you add the following instructions to your tailwind stylesheet:
8
+
9
+ ```css
10
+ @import 'tailwindcss' prefix(tw);
11
+
12
+ /* Add these two lines */
13
+ @source '../node_modules/@shlinkio/shlink-frontend-kit';
14
+ @import '@shlinkio/shlink-frontend-kit/tailwind.preset.css';
15
+ ```
package/dist/index.css CHANGED
@@ -1 +1 @@
1
- @media (max-width: 991px){.responsive-table__header{display:none}}@media (max-width: 991px){.responsive-table.table>:not(:first-child){border:none}}@media (max-width: 991px){.responsive-table__row{display:block;border-bottom:1px solid var(--border-color);border-top:2px solid var(--border-color);position:relative}.responsive-table__row:not(:last-child){margin-bottom:10px}}.responsive-table__cell.responsive-table__cell{vertical-align:middle!important}@media (max-width: 991px){.responsive-table__cell.responsive-table__cell{display:block;width:100%;position:relative;padding:.5rem;font-size:.9rem}.responsive-table__cell.responsive-table__cell[data-th]:before{content:attr(data-th) ": ";font-weight:700}.responsive-table__cell.responsive-table__cell:last-child{position:absolute;top:3.5px;right:.5rem;width:auto;padding:0;border:none}}@media (max-width: 991px){.responsive-table__cell.responsive-table__cell .btn-sm{padding:.1rem .4rem;margin-top:.16rem}}html:not([data-theme=dark]){--color-scheme: initial;--primary-color: #ffffff;--primary-color-alfa: rgba(255, 255, 255, .5);--secondary-color: #f5f6fe;--text-color: #232323;--border-color: rgba(0, 0, 0, .125);--active-color: #eeeeee;--brand-color: #4696e5;--input-color: #ffffff;--input-disabled-color: #f5f6fe;--input-border-color: rgba(0, 0, 0, .19);--input-text-color: #495057;--table-border-color: #dee2e6;--table-highlight-color: rgba(0, 0, 0, .075);--btn-close-filter: initial}html[data-theme=dark]{--color-scheme: dark;--primary-color: #161b22;--primary-color-alfa: rgba(22, 27, 34, .8);--secondary-color: #0f131a;--text-color: rgb(201, 209, 217);--border-color: rgba(255, 255, 255, .15);--active-color: #0f131a;--brand-color: #0b2d4e;--input-color: rgb(17.9928571429, 22.0821428571, 27.8071428571);--input-disabled-color: rgb(26.0071428571, 31.9178571429, 40.1928571429);--input-border-color: rgba(255, 255, 255, .15);--input-text-color: rgb(201, 209, 217);--table-border-color: #393d43;--table-highlight-color: rgba(255, 255, 255, .15);--btn-close-filter: invert(1)}:root{scroll-behavior:auto;color-scheme:var(--color-scheme)}html,body,#root{height:100%;background:var(--secondary-color);color:var(--text-color)}a,.btn-link{text-decoration:none}a:not(.nav-link):not(.navbar-brand):not(.page-link):not(.highlight-card):not(.btn):not(.dropdown-item):hover,.btn-link:hover{text-decoration:underline}.bg-main{background-color:#4696e5!important}.bg-warning{color:#232323}.card-body,.card-header,.list-group-item{background-color:transparent}.card-footer{background-color:var(--primary-color-alfa)}.card.card{box-shadow:0 .125rem .25rem #00000013;background-color:var(--primary-color);border-color:var(--border-color)}.list-group,.modal-content,.page-link,.page-item.disabled .page-link,.dropdown-menu{background-color:var(--primary-color)}.modal-header.modal-header,.modal-footer.modal-footer,.card-header.card-header,.card-footer.card-footer,.table.table thead th,.table.table th,.table.table td,.page-link.page-link,.page-link.page-link:hover,.page-item.page-item.disabled .page-link.page-link,.dropdown-divider.dropdown-divider,.dropdown-menu.dropdown-menu,.list-group-item.list-group-item,.modal-content.modal-content,hr{border-color:var(--border-color)}.table-bordered,.table-bordered thead th,.table-bordered thead td{border-color:var(--table-border-color)}.page-link:hover,.page-link:focus{background-color:var(--secondary-color)}.page-item.active .page-link{background-color:var(--brand-color);border-color:var(--brand-color)}.pagination .page-link{cursor:pointer}@media (min-width: 1200px){.container-xl{max-width:1320px}}@media (max-width: 767px){.container-xl{padding-right:0;padding-left:0}}.btn-block{display:block;width:100%}.btn-primary,.btn-primary:hover,.btn-primary:disabled,.btn-primary:active,.btn-primary:focus-visible,.btn-primary.active,.btn-outline-primary:hover,.btn-outline-primary:active.btn-outline-primary:active,.btn-outline-primary:focus-visible.btn-outline-primary:focus-visible,.btn-outline-primary.active.btn-outline-primary.active{color:#fff}.dropdown-item,.dropdown-item-text{color:var(--text-color)}.dropdown-item:not(:disabled){cursor:pointer}.dropdown-item:focus:not(:disabled),.dropdown-item:hover:not(:disabled),.dropdown-item.active:not(:disabled),.dropdown-item:active:not(:disabled){background-color:var(--active-color)!important;color:var(--text-color)!important}.dropdown-item--danger.dropdown-item--danger{color:#dc3545}.dropdown-item--danger.dropdown-item--danger:hover,.dropdown-item--danger.dropdown-item--danger:active,.dropdown-item--danger.dropdown-item--danger.active{color:#dc3545!important}.badge-main{color:#fff;background-color:var(--brand-color)}.close,.close:hover,.table,.table-hover>tbody>tr:hover>*,.table-hover>tbody>tr>*{color:var(--text-color)}.btn-close{filter:var(--btn-close-filter)}.table-hover tbody tr:hover{background-color:var(--secondary-color)}.form-control.form-control,.form-control.form-control:focus,.form-select.form-select,.form-select.form-select:focus{background-color:var(--primary-color);border-color:var(--input-border-color);color:var(--input-text-color)}.form-control.disabled,.form-control:disabled,.form-select.disabled,.form-select:disabled{background-color:var(--input-disabled-color);cursor:not-allowed}.card .form-control:not(:disabled),.card .form-control:not(:disabled):hover,.card .form-select:not(:disabled),.card .form-select:not(:disabled):hover,.modal .form-control:not(:disabled),.modal .form-control:not(:disabled):hover,.modal .form-select:not(:disabled),.modal .form-select:not(:disabled):hover{background-color:var(--input-color)}.card input[type=text]:not(:disabled),.dropdown input[type=text]:not(:disabled){background-color:var(--input-color)!important}.card input[type=date]:not(:disabled),.dropdown input[type=date]:not(:disabled){background-color:var(--input-color)!important}.card input[type=datetime-local]:not(:disabled),.dropdown input[type=datetime-local]:not(:disabled){background-color:var(--input-color)!important}.card input[type=password]:not(:disabled),.dropdown input[type=password]:not(:disabled){background-color:var(--input-color)!important}.card input[type=number]:not(:disabled),.dropdown input[type=number]:not(:disabled){background-color:var(--input-color)!important}.card input[type=email]:not(:disabled),.dropdown input[type=email]:not(:disabled){background-color:var(--input-color)!important}.card input[type=search]:not(:disabled),.dropdown input[type=search]:not(:disabled){background-color:var(--input-color)!important}.card input[type=url]:not(:disabled),.dropdown input[type=url]:not(:disabled){background-color:var(--input-color)!important}.input-group-text.input-group-text{border-color:var(--input-border-color)}.dropdown label{color:var(--text-color)!important}.table-active,.table-active>th,.table-active>td{background-color:var(--table-highlight-color)!important}@media (max-width: 767px){.navbar-brand{margin:0 auto!important}}.indivisible{white-space:nowrap}.pointer{cursor:pointer}.progress-bar{background-color:#4696e5}@media (max-width: 575px){.btn-xs-block{width:100%;display:block}}@media (max-width: 991px){.btn-md-block{width:100%;display:block}}@media (max-width: 767px){.btn-sm-block{width:100%;display:block}}.search-field{position:relative}.search-field:focus-within{z-index:1}.search-field__input.search-field__input{padding-left:40px;padding-right:40px}.search-field__input--no-border.search-field__input--no-border{border:none;border-radius:0}.search-field__icon{position:absolute;top:50%;transform:translateY(-50%);left:15px;color:#6c757d}.search-field__close{position:absolute;top:50%;transform:translateY(-50%);right:10px;cursor:pointer}.dropdown-btn__toggle.dropdown-btn__toggle{text-align:left}.dropdown-btn__toggle.dropdown-btn__toggle--with-caret{padding-right:1.75rem}.dropdown-btn__toggle.dropdown-btn__toggle,.dropdown-btn__toggle.dropdown-btn__toggle:not(:disabled):not(.disabled).active,.dropdown-btn__toggle.dropdown-btn__toggle:not(:disabled):not(.disabled):active,.dropdown-btn__toggle.dropdown-btn__toggle:not(:disabled):not(.disabled):focus,.dropdown-btn__toggle.dropdown-btn__toggle:not(:disabled):not(.disabled):hover,.show>.dropdown-btn__toggle.dropdown-btn__toggle.dropdown-toggle{color:var(--input-text-color);background-color:var(--primary-color);border-color:var(--input-border-color)}.card .dropdown-btn__toggle.dropdown-btn__toggle,.card .dropdown-btn__toggle.dropdown-btn__toggle:not(:disabled):not(.disabled).active,.card .dropdown-btn__toggle.dropdown-btn__toggle:not(:disabled):not(.disabled):active,.card .dropdown-btn__toggle.dropdown-btn__toggle:not(:disabled):not(.disabled):focus,.card .dropdown-btn__toggle.dropdown-btn__toggle:not(:disabled):not(.disabled):hover,.show>.card .dropdown-btn__toggle.dropdown-btn__toggle.dropdown-toggle{background-color:var(--input-color)}.dropdown-btn__toggle.dropdown-btn__toggle.disabled,.dropdown-btn__toggle.dropdown-btn__toggle:disabled{background-color:var(--input-disabled-color)}.dropdown-btn__toggle.dropdown-btn__toggle:after{position:absolute;top:50%;transform:translateY(-50%);right:.75rem}.nav-pills__nav{position:sticky!important;top:55px;z-index:2}.nav-pills__nav-link.nav-pills__nav-link{border-radius:0!important;padding-bottom:calc(.5rem - 3px)!important;border-bottom:3px solid transparent!important;color:#5d6778;font-weight:700;cursor:pointer;text-decoration:none}@media (min-width: 576px) and (max-width: 991px){.nav-pills__nav-link.nav-pills__nav-link{font-size:89%}}.nav-pills__nav-link:hover{color:#4696e5!important}.nav-pills__nav-link.active{border-color:#4696e5!important;background-color:var(--primary-color)!important;color:#4696e5!important}.ordering-dropdown__menu--link.ordering-dropdown__menu--link{min-width:11rem}.ordering-dropdown__sort-icon{margin:3.5px 0 0;float:right}
1
+ @media (max-width: 991px){.responsive-table__header{display:none}}@media (max-width: 991px){.responsive-table.table>:not(:first-child){border:none}}@media (max-width: 991px){.responsive-table__row{display:block;border-bottom:1px solid var(--border-color);border-top:2px solid var(--border-color);position:relative}.responsive-table__row:not(:last-child){margin-bottom:10px}}.responsive-table__cell.responsive-table__cell{vertical-align:middle!important}@media (max-width: 991px){.responsive-table__cell.responsive-table__cell{display:block;width:100%;position:relative;padding:.5rem;font-size:.9rem}.responsive-table__cell.responsive-table__cell[data-th]:before{content:attr(data-th) ": ";font-weight:700}.responsive-table__cell.responsive-table__cell:last-child{position:absolute;top:3.5px;right:.5rem;width:auto;padding:0;border:none}}@media (max-width: 991px){.responsive-table__cell.responsive-table__cell .btn-sm{padding:.1rem .4rem;margin-top:.16rem}}html:not([data-theme=dark]){--color-scheme: initial;--primary-color: #ffffff;--primary-color-alfa: rgba(255, 255, 255, .5);--secondary-color: #f5f6fe;--text-color: #232323;--border-color: rgba(0, 0, 0, .125);--active-color: #eeeeee;--brand-color: #4696e5;--input-color: #ffffff;--input-disabled-color: #f5f6fe;--input-border-color: rgba(0, 0, 0, .19);--input-text-color: #495057;--table-border-color: #dee2e6;--table-highlight-color: rgba(0, 0, 0, .075);--btn-close-filter: initial}html[data-theme=dark]{--color-scheme: dark;--primary-color: #161b22;--primary-color-alfa: rgba(22, 27, 34, .8);--secondary-color: #0f131a;--text-color: rgb(201, 209, 217);--border-color: rgba(255, 255, 255, .15);--active-color: #0f131a;--brand-color: #0b2d4e;--input-color: rgb(17.9928571429, 22.0821428571, 27.8071428571);--input-disabled-color: rgb(26.0071428571, 31.9178571429, 40.1928571429);--input-border-color: rgba(255, 255, 255, .15);--input-text-color: rgb(201, 209, 217);--table-border-color: #393d43;--table-highlight-color: rgba(255, 255, 255, .15);--btn-close-filter: invert(1)}:root{scroll-behavior:auto;color-scheme:var(--color-scheme)}html,body,#root{height:100%;background:var(--secondary-color);color:var(--text-color)}a,.btn-link{text-decoration:none}a:not(.nav-link):not(.navbar-brand):not(.page-link):not(.highlight-card):not(.btn):not(.dropdown-item):hover,.btn-link:hover{text-decoration:underline}.bg-main{background-color:#4696e5!important}.bg-warning{color:#232323}.card-body,.card-header,.list-group-item{background-color:transparent}.card-footer{background-color:var(--primary-color-alfa)}.card.card{box-shadow:0 .125rem .25rem #00000013;background-color:var(--primary-color);border-color:var(--border-color)}.list-group,.modal-content,.page-link,.page-item.disabled .page-link,.dropdown-menu{background-color:var(--primary-color)}.modal-header.modal-header,.modal-footer.modal-footer,.card-header.card-header,.card-footer.card-footer,.table.table thead th,.table.table th,.table.table td,.page-link.page-link,.page-link.page-link:hover,.page-item.page-item.disabled .page-link.page-link,.dropdown-divider.dropdown-divider,.dropdown-menu.dropdown-menu,.list-group-item.list-group-item,.modal-content.modal-content,hr{border-color:var(--border-color)}.table-bordered,.table-bordered thead th,.table-bordered thead td{border-color:var(--table-border-color)}.page-link:hover,.page-link:focus{background-color:var(--secondary-color)}.page-item.active .page-link{background-color:var(--brand-color);border-color:var(--brand-color)}.pagination .page-link{cursor:pointer}@media (min-width: 1200px){.container-xl{max-width:1320px}}@media (max-width: 767px){.container-xl{padding-right:0;padding-left:0}}.btn-block{display:block;width:100%}.btn-primary,.btn-primary:hover,.btn-primary:disabled,.btn-primary:active,.btn-primary:focus-visible,.btn-primary.active,.btn-outline-primary:hover,.btn-outline-primary:active.btn-outline-primary:active,.btn-outline-primary:focus-visible.btn-outline-primary:focus-visible,.btn-outline-primary.active.btn-outline-primary.active{color:#fff}.dropdown-item,.dropdown-item-text{color:var(--text-color)}.dropdown-item:not(:disabled){cursor:pointer}.dropdown-item:focus:not(:disabled),.dropdown-item:hover:not(:disabled),.dropdown-item.active:not(:disabled),.dropdown-item:active:not(:disabled){background-color:var(--active-color)!important;color:var(--text-color)!important}.dropdown-item--danger.dropdown-item--danger{color:#dc3545}.dropdown-item--danger.dropdown-item--danger:hover,.dropdown-item--danger.dropdown-item--danger:active,.dropdown-item--danger.dropdown-item--danger.active{color:#dc3545!important}.badge-main{color:#fff;background-color:var(--brand-color)}.close,.close:hover,.table,.table-hover>tbody>tr:hover>*,.table-hover>tbody>tr>*{color:var(--text-color)}.btn-close{filter:var(--btn-close-filter)}.table-hover tbody tr:hover{background-color:var(--secondary-color)}.form-control.form-control,.form-control.form-control:focus,.form-select.form-select,.form-select.form-select:focus{background-color:var(--primary-color);border-color:var(--input-border-color);color:var(--input-text-color)}.form-control.disabled,.form-control:disabled,.form-select.disabled,.form-select:disabled{background-color:var(--input-disabled-color);cursor:not-allowed}.card .form-control:not(:disabled),.card .form-control:not(:disabled):hover,.card .form-select:not(:disabled),.card .form-select:not(:disabled):hover,.modal .form-control:not(:disabled),.modal .form-control:not(:disabled):hover,.modal .form-select:not(:disabled),.modal .form-select:not(:disabled):hover{background-color:var(--input-color)}.card input[type=text]:not(:disabled),.dropdown input[type=text]:not(:disabled){background-color:var(--input-color)!important}.card input[type=date]:not(:disabled),.dropdown input[type=date]:not(:disabled){background-color:var(--input-color)!important}.card input[type=datetime-local]:not(:disabled),.dropdown input[type=datetime-local]:not(:disabled){background-color:var(--input-color)!important}.card input[type=password]:not(:disabled),.dropdown input[type=password]:not(:disabled){background-color:var(--input-color)!important}.card input[type=number]:not(:disabled),.dropdown input[type=number]:not(:disabled){background-color:var(--input-color)!important}.card input[type=email]:not(:disabled),.dropdown input[type=email]:not(:disabled){background-color:var(--input-color)!important}.card input[type=search]:not(:disabled),.dropdown input[type=search]:not(:disabled){background-color:var(--input-color)!important}.card input[type=url]:not(:disabled),.dropdown input[type=url]:not(:disabled){background-color:var(--input-color)!important}.input-group-text.input-group-text{border-color:var(--input-border-color)}.dropdown label{color:var(--text-color)!important}.table-active,.table-active>th,.table-active>td{background-color:var(--table-highlight-color)!important}@media (max-width: 767px){.navbar-brand{margin:0 auto!important}}.indivisible{white-space:nowrap}.pointer{cursor:pointer}.progress-bar{background-color:#4696e5}@media (max-width: 575px){.btn-xs-block{width:100%;display:block}}@media (max-width: 991px){.btn-md-block{width:100%;display:block}}@media (max-width: 767px){.btn-sm-block{width:100%;display:block}}.search-field{position:relative}.search-field:focus-within{z-index:1}.search-field__input.search-field__input{padding-left:40px;padding-right:40px}.search-field__input--no-border.search-field__input--no-border{border:none;border-radius:0}.search-field__icon{position:absolute;top:50%;transform:translateY(-50%);left:15px;color:#6c757d}.search-field__close{position:absolute;top:50%;transform:translateY(-50%);right:10px;cursor:pointer}.dropdown-btn__toggle.dropdown-btn__toggle{text-align:left}.dropdown-btn__toggle.dropdown-btn__toggle--with-caret{padding-right:1.75rem}.dropdown-btn__toggle.dropdown-btn__toggle,.dropdown-btn__toggle.dropdown-btn__toggle:not(:disabled):not(.disabled).active,.dropdown-btn__toggle.dropdown-btn__toggle:not(:disabled):not(.disabled):active,.dropdown-btn__toggle.dropdown-btn__toggle:not(:disabled):not(.disabled):focus,.dropdown-btn__toggle.dropdown-btn__toggle:not(:disabled):not(.disabled):hover,.show>.dropdown-btn__toggle.dropdown-btn__toggle.dropdown-toggle{color:var(--input-text-color);background-color:var(--primary-color);border-color:var(--input-border-color)}.card .dropdown-btn__toggle.dropdown-btn__toggle,.card .dropdown-btn__toggle.dropdown-btn__toggle:not(:disabled):not(.disabled).active,.card .dropdown-btn__toggle.dropdown-btn__toggle:not(:disabled):not(.disabled):active,.card .dropdown-btn__toggle.dropdown-btn__toggle:not(:disabled):not(.disabled):focus,.card .dropdown-btn__toggle.dropdown-btn__toggle:not(:disabled):not(.disabled):hover,.show>.card .dropdown-btn__toggle.dropdown-btn__toggle.dropdown-toggle{background-color:var(--input-color)}.dropdown-btn__toggle.dropdown-btn__toggle.disabled,.dropdown-btn__toggle.dropdown-btn__toggle:disabled{background-color:var(--input-disabled-color)}.dropdown-btn__toggle.dropdown-btn__toggle:after{position:absolute;top:50%;transform:translateY(-50%);right:.75rem}.nav-pills__nav{position:sticky!important;top:55px;z-index:2}.nav-pills__nav-link.nav-pills__nav-link{border-radius:0!important;padding-bottom:calc(.5rem - 3px)!important;border-bottom:3px solid transparent!important;color:#5d6778;font-weight:700;cursor:pointer;text-decoration:none}@media (min-width: 576px) and (max-width: 991px){.nav-pills__nav-link.nav-pills__nav-link{font-size:89%}}.nav-pills__nav-link:hover{color:#4696e5!important}.nav-pills__nav-link.active{border-color:#4696e5!important;background-color:var(--primary-color)!important;color:#4696e5!important}
package/dist/index.d.ts CHANGED
@@ -18,7 +18,13 @@ export declare const changeThemeInMarkup: (theme: Theme) => void | undefined;
18
18
 
19
19
  export declare const Checkbox: FC<BooleanControlProps>;
20
20
 
21
- export declare const determineOrderDir: <T extends string = string>(currentField: T, newField?: T, currentOrderDir?: OrderDir) => OrderDir;
21
+ export declare function determineOrder<Fields extends string = string>(orderDirChange: OrderDirChange<Fields>): Order<Fields>;
22
+
23
+ export declare function determineOrder<Fields extends string = string>(currentField: Fields, newField?: Fields, currentOrderDir?: OrderDir): Order<Fields>;
24
+
25
+ export declare function determineOrderDir<Fields extends string = string>(orderDirChange: OrderDirChange<Fields>): OrderDir;
26
+
27
+ export declare function determineOrderDir<Fields extends string = string>(currentField: Fields, newField?: Fields, currentOrderDir?: OrderDir): OrderDir;
22
28
 
23
29
  export declare const DropdownBtn: FC<DropdownBtnProps>;
24
30
 
@@ -104,6 +110,12 @@ export declare type Order<Fields> = {
104
110
 
105
111
  export declare type OrderDir = 'ASC' | 'DESC' | undefined;
106
112
 
113
+ export declare type OrderDirChange<Fields extends string = string> = {
114
+ currentField: Fields;
115
+ newField?: Fields;
116
+ currentOrderDir?: OrderDir;
117
+ };
118
+
107
119
  export declare function OrderingDropdown<T extends string = string>({ items, order, onChange, isButton, right, prefixed }: OrderingDropdownProps<T>): JSX.Element;
108
120
 
109
121
  export declare type OrderingDropdownProps<T extends string = string> = {
@@ -115,6 +127,10 @@ export declare type OrderingDropdownProps<T extends string = string> = {
115
127
  prefixed?: boolean;
116
128
  };
117
129
 
130
+ /**
131
+ * Convert provided order object to string, with the pattern `${order.field}-${order.di}`.
132
+ * @return - A `string` if the `dir` prop is set, `undefined` otherwise.
133
+ */
118
134
  export declare const orderToString: <T>(order: Order<T>) => string | undefined;
119
135
 
120
136
  /**
@@ -177,7 +193,7 @@ declare type ToggleResult = [boolean, () => void, () => void, () => void];
177
193
 
178
194
  export declare const ToggleSwitch: FC<BooleanControlProps>;
179
195
 
180
- export declare const useElementRef: <T>() => RefObject<T | null>;
196
+ export declare const useElementRef: <T extends HTMLElement>() => RefObject<T | null>;
181
197
 
182
198
  export declare const useOrder: <T>(initialOrder: Order<T>) => [Order<T>, (orderField?: T, orderDir?: OrderDir) => void];
183
199
 
package/dist/index.js CHANGED
@@ -1,97 +1,97 @@
1
- import { jsx as s, jsxs as d, Fragment as N } from "react/jsx-runtime";
2
- import { faCircleNotch as I, faSearch as y, faEllipsisV as D, faSortAmountUp as E, faSortAmountDown as P } from "@fortawesome/free-solid-svg-icons";
3
- import { FontAwesomeIcon as g } from "@fortawesome/react-fontawesome";
4
- import { clsx as h } from "clsx";
5
- import { Card as C, CardHeader as F, CardBody as H, Dropdown as M, DropdownToggle as v, DropdownMenu as O, NavItem as $, NavLink as G, Nav as U, UncontrolledDropdown as j, DropdownItem as w } from "reactstrap";
6
- import { useId as S, useState as b, useCallback as f, useRef as _, useMemo as q, Children as Q, isValidElement as V } from "react";
7
- import { useLocation as Y, NavLink as z } from "react-router";
8
- const ie = ({ className: r, children: e, loading: t = !1, type: n = "default", fullWidth: o = !1 }) => /* @__PURE__ */ s(
9
- C,
1
+ import { jsx as o, jsxs as d, Fragment as N } from "react/jsx-runtime";
2
+ import { faCircleNotch as I, faSearch as A, faEllipsisV as E, faSortAmountUp as F, faSortAmountDown as P } from "@fortawesome/free-solid-svg-icons";
3
+ import { FontAwesomeIcon as b } from "@fortawesome/react-fontawesome";
4
+ import { clsx as u } from "clsx";
5
+ import { Card as _, CardHeader as H, CardBody as M, Dropdown as $, DropdownToggle as k, DropdownMenu as S, NavItem as j, NavLink as G, Nav as U, UncontrolledDropdown as q, DropdownItem as g } from "reactstrap";
6
+ import { useId as T, useState as w, useRef as C, useCallback as f, useMemo as Q, Children as V, isValidElement as Y } from "react";
7
+ import { useLocation as W, NavLink as z } from "react-router";
8
+ const de = ({ className: e, children: r, loading: t = !1, type: n = "default", fullWidth: c = !1 }) => /* @__PURE__ */ o(
9
+ _,
10
10
  {
11
11
  body: !0,
12
- className: h(r, {
13
- "w-100": o,
14
- "w-75 mx-auto": !o,
12
+ className: u(e, {
13
+ "w-100": c,
14
+ "w-75 mx-auto": !c,
15
15
  "border-danger": n === "error"
16
16
  }),
17
17
  children: /* @__PURE__ */ d(
18
18
  "h3",
19
19
  {
20
- className: h("text-center mb-0", {
20
+ className: u("text-center mb-0", {
21
21
  "text-muted": n === "default",
22
22
  "text-danger": n === "error"
23
23
  }),
24
24
  children: [
25
- t && /* @__PURE__ */ s(g, { icon: I, spin: !0 }),
26
- t && /* @__PURE__ */ s("span", { className: "ms-2", children: e ?? "Loading..." }),
27
- !t && e
25
+ t && /* @__PURE__ */ o(b, { icon: I, spin: !0 }),
26
+ t && /* @__PURE__ */ o("span", { className: "ms-2", children: r ?? "Loading..." }),
27
+ !t && r
28
28
  ]
29
29
  }
30
30
  )
31
31
  }
32
- ), J = ({ title: r, children: e, bodyClassName: t, ...n }) => /* @__PURE__ */ d(C, { ...n, children: [
33
- r && /* @__PURE__ */ s(F, { role: "heading", "aria-level": 4, children: r }),
34
- /* @__PURE__ */ s(H, { className: t, children: e })
35
- ] }), de = ({ children: r, type: e, className: t, small: n = !1 }) => /* @__PURE__ */ s(
32
+ ), J = ({ title: e, children: r, bodyClassName: t, ...n }) => /* @__PURE__ */ d(_, { ...n, children: [
33
+ e && /* @__PURE__ */ o(H, { role: "heading", "aria-level": 4, children: e }),
34
+ /* @__PURE__ */ o(M, { className: t, children: r })
35
+ ] }), me = ({ children: e, type: r, className: t, small: n = !1 }) => /* @__PURE__ */ o(
36
36
  J,
37
37
  {
38
38
  role: "document",
39
- className: h("text-center", {
39
+ className: u("text-center", {
40
40
  "w-75 mx-auto": !n,
41
41
  "w-100": n,
42
- "bg-main": e === "success",
43
- "bg-danger": e === "error",
44
- "bg-warning": e === "warning",
45
- "text-white": e !== "warning"
42
+ "bg-main": r === "success",
43
+ "bg-danger": r === "error",
44
+ "bg-warning": r === "warning",
45
+ "text-white": r !== "warning"
46
46
  }, t),
47
- bodyClassName: h({ "p-2": n }),
48
- children: r
47
+ bodyClassName: u({ "p-2": n }),
48
+ children: e
49
49
  }
50
- ), A = ({ checked: r = !1, onChange: e, className: t, children: n, type: o, inline: c = !1 }) => {
51
- const l = S(), a = (u) => e == null ? void 0 : e(u.target.checked, u), i = {
52
- "form-switch": o === "switch",
53
- "form-checkbox": o === "checkbox"
54
- }, m = c ? { display: "inline-block" } : {};
55
- return /* @__PURE__ */ d("span", { className: h("form-check", i, t), style: m, children: [
56
- /* @__PURE__ */ s("input", { type: "checkbox", className: "form-check-input", id: l, checked: r, onChange: a }),
57
- /* @__PURE__ */ s("label", { className: "form-check-label", htmlFor: l, children: n })
50
+ ), x = ({ checked: e = !1, onChange: r, className: t, children: n, type: c, inline: s = !1 }) => {
51
+ const l = T(), a = (h) => r == null ? void 0 : r(h.target.checked, h), i = {
52
+ "form-switch": c === "switch",
53
+ "form-checkbox": c === "checkbox"
54
+ }, m = s ? { display: "inline-block" } : {};
55
+ return /* @__PURE__ */ d("span", { className: u("form-check", i, t), style: m, children: [
56
+ /* @__PURE__ */ o("input", { type: "checkbox", className: "form-check-input", id: l, checked: e, onChange: a }),
57
+ /* @__PURE__ */ o("label", { className: "form-check-label", htmlFor: l, children: n })
58
58
  ] });
59
- }, me = (r) => /* @__PURE__ */ s(A, { type: "checkbox", ...r }), he = (r) => /* @__PURE__ */ s(A, { type: "switch", ...r }), W = ({ children: r, label: e, className: t = "", labelClassName: n = "", noMargin: o = !1, id: c }) => /* @__PURE__ */ d("div", { className: `${t} ${o ? "" : "mb-3"}`, children: [
60
- /* @__PURE__ */ s("label", { className: `form-label ${n}`, htmlFor: c, children: e }),
61
- r
62
- ] }), ue = ({ children: r, value: e, onChange: t, type: n, required: o, placeholder: c, className: l, labelClassName: a }) => {
63
- const i = S();
64
- return /* @__PURE__ */ s(W, { label: /* @__PURE__ */ d(N, { children: [
65
- r,
59
+ }, ue = (e) => /* @__PURE__ */ o(x, { type: "checkbox", ...e }), he = (e) => /* @__PURE__ */ o(x, { type: "switch", ...e }), X = ({ children: e, label: r, className: t = "", labelClassName: n = "", noMargin: c = !1, id: s }) => /* @__PURE__ */ d("div", { className: `${t} ${c ? "" : "mb-3"}`, children: [
60
+ /* @__PURE__ */ o("label", { className: `form-label ${n}`, htmlFor: s, children: r }),
61
+ e
62
+ ] }), fe = ({ children: e, value: r, onChange: t, type: n, required: c, placeholder: s, className: l, labelClassName: a }) => {
63
+ const i = T();
64
+ return /* @__PURE__ */ o(X, { label: /* @__PURE__ */ d(N, { children: [
65
+ e,
66
66
  ":"
67
- ] }), className: l, labelClassName: a, id: i, children: /* @__PURE__ */ s(
67
+ ] }), className: l, labelClassName: a, id: i, children: /* @__PURE__ */ o(
68
68
  "input",
69
69
  {
70
70
  id: i,
71
71
  className: "form-control",
72
72
  type: n ?? "text",
73
- value: e,
74
- required: o ?? !0,
75
- placeholder: c,
73
+ value: r,
74
+ required: c ?? !0,
75
+ placeholder: s,
76
76
  onChange: (m) => t(m.target.value)
77
77
  }
78
78
  ) });
79
- }, X = 500;
79
+ }, Z = 500;
80
80
  let p;
81
- const k = () => {
81
+ const v = () => {
82
82
  p !== null && clearTimeout(p), p = null;
83
- }, fe = ({ onChange: r, className: e, large: t = !0, noBorder: n = !1, initialValue: o = "", setTimeout_: c = setTimeout }) => {
84
- const [l, a] = b(o), i = (m, u = X) => {
85
- a(m), k(), p = c(() => {
86
- r(m), k();
87
- }, u);
83
+ }, pe = ({ onChange: e, className: r, large: t = !0, noBorder: n = !1, initialValue: c = "", setTimeout_: s = setTimeout }) => {
84
+ const [l, a] = w(c), i = (m, h = Z) => {
85
+ a(m), v(), p = s(() => {
86
+ e(m), v();
87
+ }, h);
88
88
  };
89
- return /* @__PURE__ */ d("div", { className: h("search-field", e), children: [
90
- /* @__PURE__ */ s(
89
+ return /* @__PURE__ */ d("div", { className: u("search-field", r), children: [
90
+ /* @__PURE__ */ o(
91
91
  "input",
92
92
  {
93
93
  type: "text",
94
- className: h("form-control search-field__input", {
94
+ className: u("form-control search-field__input", {
95
95
  "form-control-lg": t,
96
96
  "search-field__input--no-border": n
97
97
  }),
@@ -100,8 +100,8 @@ const k = () => {
100
100
  onChange: (m) => i(m.target.value)
101
101
  }
102
102
  ),
103
- /* @__PURE__ */ s(g, { icon: y, className: "search-field__icon" }),
104
- /* @__PURE__ */ s(
103
+ /* @__PURE__ */ o(b, { icon: A, className: "search-field__icon" }),
104
+ /* @__PURE__ */ o(
105
105
  "button",
106
106
  {
107
107
  "aria-label": "Clear search",
@@ -113,170 +113,177 @@ const k = () => {
113
113
  }
114
114
  )
115
115
  ] });
116
- }, Z = (r) => {
117
- const e = new URLSearchParams(r), t = {};
118
- return e.forEach((n, o) => {
119
- if (o.endsWith("[]")) {
120
- const c = o.slice(0, -2);
121
- t[c] ?? (t[c] = []), t[c].push(n);
116
+ }, B = (e) => {
117
+ const r = new URLSearchParams(e), t = {};
118
+ return r.forEach((n, c) => {
119
+ if (c.endsWith("[]")) {
120
+ const s = c.slice(0, -2);
121
+ t[s] ?? (t[s] = []), t[s].push(n);
122
122
  } else
123
- t[o] = n;
123
+ t[c] = n;
124
124
  }), t;
125
- }, pe = (r) => {
126
- const e = new URLSearchParams();
127
- for (const [t, n] of Object.entries(r))
128
- n !== void 0 && (Array.isArray(n) ? n.forEach((o) => e.append(`${t}[]`, `${o}`)) : e.append(t, `${n}`));
129
- return e.toString();
130
- }, B = (r = !1) => {
131
- const [e, t] = b(r), n = f(() => t((l) => !l), []), o = f(() => t(!0), []), c = f(() => t(!1), []);
132
- return [e, n, o, c];
133
- }, ge = (r = !1, e = 2e3, t = window.setTimeout, n = window.clearTimeout) => {
134
- const [o, c] = b(r), l = _(r), a = _(void 0), i = f(() => {
135
- c(!l.current), a.current && n(a.current), a.current = t(() => c(l.current), e);
136
- }, [n, e, t]);
137
- return [o, i];
138
- }, be = () => _(null), we = () => {
139
- const { search: r } = Y();
140
- return q(() => Z(r), [r]);
141
- }, K = ({
142
- text: r,
143
- disabled: e = !1,
125
+ }, be = (e) => {
126
+ const r = new URLSearchParams();
127
+ for (const [t, n] of Object.entries(e))
128
+ n !== void 0 && (Array.isArray(n) ? n.forEach((c) => r.append(`${t}[]`, `${c}`)) : r.append(t, `${n}`));
129
+ return r.toString();
130
+ }, K = (e = !1) => {
131
+ const [r, t] = w(e), n = f(() => t((l) => !l), []), c = f(() => t(!0), []), s = f(() => t(!1), []);
132
+ return [r, n, c, s];
133
+ }, we = (e = !1, r = 2e3, t = window.setTimeout, n = window.clearTimeout) => {
134
+ const [c, s] = w(e), l = C(e), a = C(void 0), i = f(() => {
135
+ s(!l.current), a.current && n(a.current), a.current = t(() => s(l.current), r);
136
+ }, [n, r, t]);
137
+ return [c, i];
138
+ }, ge = () => C(null), Ne = () => {
139
+ const { search: e } = W();
140
+ return Q(() => B(e), [e]);
141
+ }, ee = ({
142
+ text: e,
143
+ disabled: r = !1,
144
144
  className: t,
145
145
  children: n,
146
- dropdownClassName: o,
147
- noCaret: c,
146
+ dropdownClassName: c,
147
+ noCaret: s,
148
148
  end: l = !1,
149
149
  minWidth: a,
150
150
  inline: i,
151
151
  size: m,
152
- ...u
152
+ ...h
153
153
  }) => {
154
- const [T, L] = B(), x = h("dropdown-btn__toggle", t, {
154
+ const [y, L] = K(), D = u("dropdown-btn__toggle", t, {
155
155
  "btn-block": !i,
156
- "dropdown-btn__toggle--with-caret": !c
156
+ "dropdown-btn__toggle--with-caret": !s
157
157
  }), R = { minWidth: a && `${a}px` };
158
- return /* @__PURE__ */ d(M, { isOpen: T, toggle: L, disabled: e, className: o, children: [
159
- /* @__PURE__ */ s(v, { size: m, caret: !c, className: x, color: "primary", ...u, children: r }),
160
- /* @__PURE__ */ s(O, { className: "w-100", end: l, style: R, children: n })
158
+ return /* @__PURE__ */ d($, { isOpen: y, toggle: L, disabled: r, className: c, children: [
159
+ /* @__PURE__ */ o(k, { size: m, caret: !s, className: D, color: "primary", ...h, children: e }),
160
+ /* @__PURE__ */ o(S, { className: "w-100", end: l, style: R, children: n })
161
161
  ] });
162
- }, Ne = ({ children: r, minWidth: e, label: t = "Options" }) => /* @__PURE__ */ s(
163
- K,
162
+ }, Ce = ({ children: e, minWidth: r, label: t = "Options" }) => /* @__PURE__ */ o(
163
+ ee,
164
164
  {
165
- text: /* @__PURE__ */ s(g, { className: "px-1", icon: D }),
165
+ text: /* @__PURE__ */ o(b, { className: "px-1", icon: E }),
166
166
  "aria-label": t,
167
167
  size: "sm",
168
- minWidth: e,
168
+ minWidth: r,
169
169
  end: !0,
170
170
  noCaret: !0,
171
171
  inline: !0,
172
- children: r
172
+ children: e
173
173
  }
174
- ), ee = ({ children: r, ...e }) => /* @__PURE__ */ s($, { children: /* @__PURE__ */ s(G, { className: "nav-pills__nav-link", tag: z, ...e, children: r }) }), _e = ({ children: r, fill: e = !1, className: t = "" }) => /* @__PURE__ */ s(C, { className: `nav-pills__nav p-0 overflow-hidden ${t}`, body: !0, children: /* @__PURE__ */ s(U, { pills: !0, fill: e, children: Q.map(r, (n) => {
175
- if (!V(n) || n.type !== ee)
174
+ ), re = ({ children: e, ...r }) => /* @__PURE__ */ o(j, { children: /* @__PURE__ */ o(G, { className: "nav-pills__nav-link", tag: z, ...r, children: e }) }), _e = ({ children: e, fill: r = !1, className: t = "" }) => /* @__PURE__ */ o(_, { className: `nav-pills__nav p-0 overflow-hidden ${t}`, body: !0, children: /* @__PURE__ */ o(U, { pills: !0, fill: r, children: V.map(e, (n) => {
175
+ if (!Y(n) || n.type !== re)
176
176
  throw new Error("Only NavPillItem children are allowed inside NavPills.");
177
177
  return n;
178
- }) }) }), re = (r, e, t) => r !== e ? "ASC" : t ? {
179
- ASC: "DESC",
180
- DESC: void 0
181
- }[t] : "ASC", Ce = (r, { field: e, dir: t }) => !e || !t ? r : r.sort((n, o) => {
182
- const c = t === "ASC" ? 1 : -1, l = t === "ASC" ? -1 : 1;
183
- return n[e] > o[e] ? c : l;
184
- }), ke = (r) => r.dir ? `${r.field}-${r.dir}` : void 0, ve = (r) => {
185
- const [e, t] = r.split("-");
186
- return { field: e, dir: t };
187
- }, Oe = (r) => {
188
- const [e, t] = b(r), n = f((o, c) => t({ field: o, dir: c }), []);
189
- return [e, n];
178
+ }) }) });
179
+ function O(e, r, t) {
180
+ return typeof e == "object" ? O(e.currentField, e.newField, e.currentOrderDir) : e !== r ? "ASC" : t ? {
181
+ ASC: "DESC",
182
+ DESC: void 0
183
+ }[t] : "ASC";
184
+ }
185
+ function te(e, r, t) {
186
+ return typeof e == "object" ? te(e.currentField, e.newField, e.currentOrderDir) : {
187
+ field: r,
188
+ dir: O(e, r, t)
189
+ };
190
+ }
191
+ const Oe = (e, { field: r, dir: t }) => !r || !t ? e : e.sort((n, c) => {
192
+ const s = t === "ASC" ? 1 : -1, l = t === "ASC" ? -1 : 1;
193
+ return n[r] > c[r] ? s : l;
194
+ }), ve = (e) => e.dir ? `${e.field}-${e.dir}` : void 0, ke = (e) => {
195
+ const [r, t] = e.split("-");
196
+ return { field: r, dir: t };
197
+ }, Se = (e) => {
198
+ const [r, t] = w(e), n = f((c, s) => t({ field: c, dir: s }), []);
199
+ return [r, n];
190
200
  };
191
- function Se({ items: r, order: e, onChange: t, isButton: n = !0, right: o = !1, prefixed: c = !0 }) {
201
+ function Te({ items: e, order: r, onChange: t, isButton: n = !0, right: c = !1, prefixed: s = !0 }) {
192
202
  const l = (a) => () => {
193
- const i = re(a, e.field, e.dir);
203
+ const i = O(a, r.field, r.dir);
194
204
  t(i ? a : void 0, i);
195
205
  };
196
- return /* @__PURE__ */ d(j, { children: [
206
+ return /* @__PURE__ */ d(q, { children: [
197
207
  /* @__PURE__ */ d(
198
- v,
208
+ k,
199
209
  {
200
210
  caret: !0,
201
211
  color: n ? "primary" : "link",
202
- className: h({
212
+ className: u({
203
213
  "dropdown-btn__toggle btn-block pe-4 overflow-hidden": n,
204
214
  "btn-sm p-0": !n
205
215
  }),
206
216
  children: [
207
- !n && /* @__PURE__ */ s(N, { children: "Order by" }),
208
- n && !e.field && /* @__PURE__ */ s("i", { children: "Order by..." }),
209
- n && e.field && /* @__PURE__ */ d(N, { children: [
210
- c && "Order by: ",
211
- r[e.field],
217
+ !n && /* @__PURE__ */ o(N, { children: "Order by" }),
218
+ n && !r.field && /* @__PURE__ */ o("i", { children: "Order by..." }),
219
+ n && r.field && /* @__PURE__ */ d(N, { children: [
220
+ s && "Order by: ",
221
+ e[r.field],
212
222
  " - ",
213
- /* @__PURE__ */ s("small", { children: e.dir ?? "DESC" })
223
+ /* @__PURE__ */ o("small", { children: r.dir ?? "DESC" })
214
224
  ] })
215
225
  ]
216
226
  }
217
227
  ),
218
- /* @__PURE__ */ d(
219
- O,
220
- {
221
- end: o,
222
- className: h("w-100", { "ordering-dropdown__menu--link": !n }),
223
- children: [
224
- Object.entries(r).map(([a, i]) => /* @__PURE__ */ d(w, { active: e.field === a, onClick: l(a), children: [
228
+ /* @__PURE__ */ d(S, { end: c, className: "w-100", style: n ? void 0 : { minWidth: "11rem" }, children: [
229
+ Object.entries(e).map(([a, i]) => /* @__PURE__ */ d(
230
+ g,
231
+ {
232
+ active: r.field === a,
233
+ onClick: l(a),
234
+ className: "d-flex justify-content-between align-items-center",
235
+ children: [
225
236
  i,
226
- e.field === a && /* @__PURE__ */ s(
227
- g,
228
- {
229
- icon: e.dir === "ASC" ? E : P,
230
- className: "ordering-dropdown__sort-icon"
231
- }
232
- )
233
- ] }, a)),
234
- /* @__PURE__ */ s(w, { divider: !0 }),
235
- /* @__PURE__ */ s(w, { disabled: !e.field, onClick: () => t(), children: /* @__PURE__ */ s("i", { children: "Clear selection" }) })
236
- ]
237
- }
238
- )
237
+ r.field === a && /* @__PURE__ */ o(b, { icon: r.dir === "ASC" ? F : P })
238
+ ]
239
+ },
240
+ a
241
+ )),
242
+ /* @__PURE__ */ o(g, { divider: !0 }),
243
+ /* @__PURE__ */ o(g, { disabled: !r.field, onClick: () => t(), children: /* @__PURE__ */ o("i", { children: "Clear selection" }) })
244
+ ] })
239
245
  ] });
240
246
  }
241
- const Ae = "#4696e5", Te = "rgba(70, 150, 229, 0.4)", Le = "#f77f28", xe = "rgba(247, 127, 40, 0.4)", Re = "white", Ie = "#161b22", ye = (r) => {
242
- var e;
243
- return (e = document.querySelector("html")) == null ? void 0 : e.setAttribute("data-theme", r);
244
- }, De = () => {
247
+ const xe = "#4696e5", ye = "rgba(70, 150, 229, 0.4)", Le = "#f77f28", De = "rgba(247, 127, 40, 0.4)", Re = "white", Ie = "#161b22", Ae = (e) => {
245
248
  var r;
246
- return ((r = document.querySelector("html")) == null ? void 0 : r.getAttribute("data-theme")) === "dark";
247
- }, Ee = (r = window.matchMedia.bind(window)) => r("(prefers-color-scheme: dark)").matches ? "dark" : "light";
249
+ return (r = document.querySelector("html")) == null ? void 0 : r.setAttribute("data-theme", e);
250
+ }, Ee = () => {
251
+ var e;
252
+ return ((e = document.querySelector("html")) == null ? void 0 : e.getAttribute("data-theme")) === "dark";
253
+ }, Fe = (e = window.matchMedia.bind(window)) => e("(prefers-color-scheme: dark)").matches ? "dark" : "light";
248
254
  export {
249
- me as Checkbox,
250
- K as DropdownBtn,
255
+ ue as Checkbox,
256
+ ee as DropdownBtn,
251
257
  Le as HIGHLIGHTED_COLOR,
252
- xe as HIGHLIGHTED_COLOR_ALPHA,
253
- ue as InputFormGroup,
254
- W as LabeledFormGroup,
255
- Ae as MAIN_COLOR,
256
- Te as MAIN_COLOR_ALPHA,
257
- ie as Message,
258
- ee as NavPillItem,
258
+ De as HIGHLIGHTED_COLOR_ALPHA,
259
+ fe as InputFormGroup,
260
+ X as LabeledFormGroup,
261
+ xe as MAIN_COLOR,
262
+ ye as MAIN_COLOR_ALPHA,
263
+ de as Message,
264
+ re as NavPillItem,
259
265
  _e as NavPills,
260
- Se as OrderingDropdown,
266
+ Te as OrderingDropdown,
261
267
  Ie as PRIMARY_DARK_COLOR,
262
268
  Re as PRIMARY_LIGHT_COLOR,
263
- de as Result,
264
- Ne as RowDropdownBtn,
265
- fe as SearchField,
269
+ me as Result,
270
+ Ce as RowDropdownBtn,
271
+ pe as SearchField,
266
272
  J as SimpleCard,
267
273
  he as ToggleSwitch,
268
- ye as changeThemeInMarkup,
269
- re as determineOrderDir,
270
- Ee as getSystemPreferredTheme,
271
- De as isDarkThemeEnabled,
272
- ke as orderToString,
273
- Z as parseQueryString,
274
- Ce as sortList,
275
- ve as stringToOrder,
276
- pe as stringifyQueryParams,
277
- be as useElementRef,
278
- Oe as useOrder,
279
- we as useParsedQuery,
280
- ge as useTimeoutToggle,
281
- B as useToggle
274
+ Ae as changeThemeInMarkup,
275
+ te as determineOrder,
276
+ O as determineOrderDir,
277
+ Fe as getSystemPreferredTheme,
278
+ Ee as isDarkThemeEnabled,
279
+ ve as orderToString,
280
+ B as parseQueryString,
281
+ Oe as sortList,
282
+ ke as stringToOrder,
283
+ be as stringifyQueryParams,
284
+ ge as useElementRef,
285
+ Se as useOrder,
286
+ Ne as useParsedQuery,
287
+ we as useTimeoutToggle,
288
+ K as useToggle
282
289
  };