@equinor/echo-components 0.6.2 → 0.6.3

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.
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import React, { CSSProperties } from 'react';
2
2
  import { LayerInfo } from '@types';
3
3
  interface MainLegendProps {
4
4
  /**
@@ -9,6 +9,14 @@ interface MainLegendProps {
9
9
  * Layer information
10
10
  */
11
11
  layers: LayerInfo[];
12
+ /**
13
+ * Styling for the main legend
14
+ */
15
+ legendStyle?: CSSProperties;
16
+ /**
17
+ * Styling for the content of the legend
18
+ */
19
+ legendContentStyle?: CSSProperties;
12
20
  }
13
- declare function MainLegend({ legends, layers }: MainLegendProps): JSX.Element;
21
+ declare function MainLegend({ legends, layers, legendStyle, legendContentStyle }: MainLegendProps): JSX.Element;
14
22
  export { MainLegend };
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import React, { CSSProperties } from 'react';
2
2
  interface LayerLegendProps {
3
3
  /**
4
4
  * Layer title
@@ -24,6 +24,10 @@ interface LayerLegendProps {
24
24
  * Used to disable layer legend usage
25
25
  */
26
26
  disabled?: boolean;
27
+ /**
28
+ * Styling for the content of the legend
29
+ */
30
+ style?: CSSProperties;
27
31
  }
28
- declare function LayerLegend({ title, iconName, itemsCount, itemsTitle, children, disabled }: LayerLegendProps): JSX.Element;
32
+ declare function LayerLegend({ title, iconName, itemsCount, itemsTitle, children, disabled, style }: LayerLegendProps): JSX.Element;
29
33
  export { LayerLegend };
package/dist/index.js CHANGED
@@ -17675,198 +17675,6 @@ var FloatingActionButton = function FloatingActionButton(_ref) {
17675
17675
  }), variant === 'square_icon_with_text' && label);
17676
17676
  };
17677
17677
 
17678
- var css_248z$m = ".floatingSearchBar-module_searchbarWrapper__-sSMM{max-width:344px;position:relative}.floatingSearchBar-module_searchbar__0U3fZ div[class^=Input__Container]{background:none;box-shadow:none;height:48px}.floatingSearchBar-module_searchbar__0U3fZ div[class^=Input__Container]:focus-within{outline:none}.floatingSearchBar-module_searchbar__0U3fZ input{background:rgba(0,0,0,.8);border-radius:4px;color:#dee5e7}.floatingSearchBar-module_searchbar__0U3fZ svg{color:#dee5e7}.floatingSearchBar-module_searchbar__0U3fZ input::placeholder{color:#dee5e7}.floatingSearchBar-module_searchbar__0U3fZ input:focus,.floatingSearchBar-module_searchbar__0U3fZ input:hover{background:rgba(0,0,0,.9)}.floatingSearchBar-module_searchbar__0U3fZ button{opacity:.6}.floatingSearchBar-module_searchbar__0U3fZ button:hover{background:transparent;opacity:1}.floatingSearchBar-module_searchbar__0U3fZ button:focus{opacity:1;outline-color:var(--white)}.floatingSearchBar-module_items__oxyVh{background:rgba(0,0,0,.9);border-radius:4px;margin-top:4px;max-height:400px;overflow:auto;padding:8px 0;position:absolute;width:100%}.floatingSearchBar-module_items__oxyVh::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.25);border:2px solid hsla(0,0%,100%,.06)}.floatingSearchBar-module_items__oxyVh::-webkit-scrollbar-track{background:rgba(0,0,0,.9)}.floatingSearchBar-module_groupWrapper__B6-q3{color:var(--white);font-size:1rem;font-style:normal;font-weight:400;line-height:1rem;list-style:none;margin:0;padding:0}.floatingSearchBar-module_groupTitle__3fYBM{border-bottom:1px solid hsla(0,0%,100%,.16);padding:.5rem 1rem}.floatingSearchBar-module_item__nxfxG{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;gap:1rem;padding:1rem 1.25rem}.floatingSearchBar-module_item__nxfxG svg{min-width:24px}.floatingSearchBar-module_loading__lY-99{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;gap:1rem;justify-content:center;padding:1rem 1.25rem}.floatingSearchBar-module_item__nxfxG:hover{background:hsla(0,0%,100%,.16);cursor:pointer}.floatingSearchBar-module_activeItem__IQ7gz{background:hsla(0,0%,100%,.16)}";
17679
- var style$2 = {"searchbarWrapper":"floatingSearchBar-module_searchbarWrapper__-sSMM","searchbar":"floatingSearchBar-module_searchbar__0U3fZ","items":"floatingSearchBar-module_items__oxyVh","groupWrapper":"floatingSearchBar-module_groupWrapper__B6-q3","groupTitle":"floatingSearchBar-module_groupTitle__3fYBM","item":"floatingSearchBar-module_item__nxfxG","loading":"floatingSearchBar-module_loading__lY-99","activeItem":"floatingSearchBar-module_activeItem__IQ7gz"};
17680
- styleInject(css_248z$m);
17681
-
17682
- var useEventListener = function useEventListener(eventName, handler, options) {
17683
- var element = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : document;
17684
- var savedHandler = useRef();
17685
- useEffect(function () {
17686
- savedHandler.current = handler;
17687
- }, [handler]);
17688
- useEffect(function () {
17689
- if (!element || !element.addEventListener) {
17690
- return;
17691
- }
17692
- var eventListener = function eventListener(event) {
17693
- return savedHandler.current(event);
17694
- };
17695
- element.addEventListener(eventName, eventListener, options);
17696
- return function () {
17697
- element.removeEventListener(eventName, eventListener, options);
17698
- };
17699
- }, [eventName, element, options]);
17700
- };
17701
-
17702
- var useInitial = EchoUtils.Hooks.useInitial;
17703
- /**
17704
- * Hook for checking if page is loaded from mobile device.
17705
- * @returns boolean true if on mobile.
17706
- */
17707
- function useIsMobile() {
17708
- var _useState = useState(false),
17709
- _useState2 = _slicedToArray(_useState, 2),
17710
- isMobile = _useState2[0],
17711
- setIsMobile = _useState2[1];
17712
- useInitial(function () {
17713
- if (/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)) {
17714
- // true for mobile device
17715
- setIsMobile(true);
17716
- } else {
17717
- // false for not mobile device
17718
- setIsMobile(false);
17719
- }
17720
- });
17721
- return isMobile;
17722
- }
17723
-
17724
- var Keys = {
17725
- ArrowUp: 'up',
17726
- ArrowRight: 'right',
17727
- ArrowDown: 'down',
17728
- ArrowLeft: 'left',
17729
- Enter: 'enter',
17730
- Escape: 'escape'
17731
- };
17732
- var useListNavigator = function useListNavigator(listLength) {
17733
- var initialIndex = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
17734
- var keyboardEvents = arguments.length > 2 ? arguments[2] : undefined;
17735
- var listenerTarget = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : document;
17736
- var _useState = useState(initialIndex),
17737
- _useState2 = _slicedToArray(_useState, 2),
17738
- currIndex = _useState2[0],
17739
- setCurrIndex = _useState2[1];
17740
- var downHandler = useCallback(function (e) {
17741
- setCurrIndex(function (c) {
17742
- return c < listLength - 1 ? c + 1 : listLength - 1;
17743
- });
17744
- }, [listLength]);
17745
- var upHandler = useCallback(function (e) {
17746
- setCurrIndex(function (c) {
17747
- return c < 0 ? -1 : c - 1;
17748
- });
17749
- }, [listLength]);
17750
- var enter = useCallback(function () {
17751
- if (keyboardEvents === null || keyboardEvents === void 0 ? void 0 : keyboardEvents.enter) {
17752
- if (currIndex === -1) {
17753
- return;
17754
- }
17755
- keyboardEvents.enter(currIndex);
17756
- }
17757
- }, [currIndex, keyboardEvents]);
17758
- useKeyboardNavigation({
17759
- up: upHandler,
17760
- down: downHandler,
17761
- enter: enter
17762
- }, listenerTarget);
17763
- return currIndex;
17764
- };
17765
- /**
17766
- * 1. On open: focus should be undefined/inactive. (list should scroll/show selected item if any).
17767
- * 2. user presses a key (usually down) - scroll list to focused element, which should be first item
17768
- * in the first section. Also set focused section.
17769
- * 3. Potentially jump to last in list if user goes up?
17770
- */
17771
- var useSectionNavigator = function useSectionNavigator(sections, initialSelected, keyboardEvents) {
17772
- var listenerTarget = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : document;
17773
- var _useState3 = useState(initialSelected),
17774
- _useState4 = _slicedToArray(_useState3, 2),
17775
- focusedSection = _useState4[0],
17776
- setFocusedSection = _useState4[1];
17777
- var _useState5 = useState(initialSelected),
17778
- _useState6 = _slicedToArray(_useState5, 2),
17779
- focusedOption = _useState6[0],
17780
- setFocusedOption = _useState6[1];
17781
- var up = useCallback(function () {
17782
- var nextSection = focusedSection;
17783
- var nextOption = focusedOption;
17784
- if (nextOption > 0) {
17785
- // there exists more options in this section
17786
- setFocusedOption(nextOption - 1);
17787
- } else {
17788
- // we're on the first option in section and should move to a previous section.
17789
- if (nextSection > 0) {
17790
- nextSection -= 1;
17791
- // getting last index of option in section
17792
- nextOption = sections[nextSection].options.length - 1;
17793
- setFocusedSection(nextSection);
17794
- setFocusedOption(nextOption);
17795
- } else {
17796
- // if initial is deselected -- we add this step.
17797
- if (initialSelected === -1 && focusedOption === 0 && focusedSection === 0) {
17798
- // deselect
17799
- setFocusedSection(-1);
17800
- setFocusedOption(-1);
17801
- } else {
17802
- // we're at deselected - move user down to end
17803
- nextSection = sections.length - 1;
17804
- nextOption = sections[nextSection].options.length - 1;
17805
- setFocusedSection(nextSection);
17806
- setFocusedOption(nextOption);
17807
- }
17808
- }
17809
- }
17810
- }, [sections, focusedSection, focusedOption]);
17811
- var down = useCallback(function () {
17812
- var _a, _b;
17813
- var nextSection = focusedSection;
17814
- var nextOption = focusedOption;
17815
- if (nextOption < ((_b = (_a = sections[nextSection]) === null || _a === void 0 ? void 0 : _a.options.length) !== null && _b !== void 0 ? _b : 0) - 1) {
17816
- setFocusedOption(nextOption + 1);
17817
- } else {
17818
- // we're at the end of options in section
17819
- if (nextSection < sections.length - 1) {
17820
- // there exists more sections
17821
- setFocusedSection(nextSection + 1);
17822
- setFocusedOption(0);
17823
- } else {
17824
- // we're at the end of sections - back to start (de-selected).
17825
- // props says we need a deselected step
17826
- if (initialSelected === -1) {
17827
- setFocusedSection(-1);
17828
- setFocusedOption(-1);
17829
- } else {
17830
- setFocusedSection(0);
17831
- setFocusedOption(0);
17832
- }
17833
- }
17834
- }
17835
- }, [sections, focusedSection, focusedOption]);
17836
- var enter = useCallback(function () {
17837
- if (keyboardEvents.enter) {
17838
- if (focusedOption === -1 && focusedSection === -1) {
17839
- return;
17840
- }
17841
- keyboardEvents.enter(focusedSection, focusedOption);
17842
- }
17843
- }, [focusedSection, focusedOption, keyboardEvents]);
17844
- var escape = useCallback(function () {
17845
- keyboardEvents.escape && keyboardEvents.escape();
17846
- }, [focusedSection, focusedOption, keyboardEvents]);
17847
- useKeyboardNavigation({
17848
- up: up,
17849
- down: down,
17850
- enter: enter,
17851
- escape: escape
17852
- }, listenerTarget);
17853
- return {
17854
- focusedSection: focusedSection,
17855
- focusedOption: focusedOption
17856
- };
17857
- };
17858
- var useKeyboardNavigation = function useKeyboardNavigation(keyboardEvents) {
17859
- var listenerTarget = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : document;
17860
- var handleKeyDown = useCallback(function (e) {
17861
- var key = Keys[e.key];
17862
- var handler = keyboardEvents[key];
17863
- if (handler) {
17864
- handler(e);
17865
- }
17866
- }, [keyboardEvents]);
17867
- useEventListener('keydown', handleKeyDown, false, listenerTarget);
17868
- };
17869
-
17870
17678
  function classnames$1() {
17871
17679
  for (var _len = arguments.length, parts = new Array(_len), _key = 0; _key < _len; _key++) {
17872
17680
  parts[_key] = arguments[_key];
@@ -18220,6 +18028,198 @@ function getIcon(tagCategoryDescription) {
18220
18028
  });
18221
18029
  }
18222
18030
 
18031
+ var useEventListener = function useEventListener(eventName, handler, options) {
18032
+ var element = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : document;
18033
+ var savedHandler = useRef();
18034
+ useEffect(function () {
18035
+ savedHandler.current = handler;
18036
+ }, [handler]);
18037
+ useEffect(function () {
18038
+ if (!element || !element.addEventListener) {
18039
+ return;
18040
+ }
18041
+ var eventListener = function eventListener(event) {
18042
+ return savedHandler.current(event);
18043
+ };
18044
+ element.addEventListener(eventName, eventListener, options);
18045
+ return function () {
18046
+ element.removeEventListener(eventName, eventListener, options);
18047
+ };
18048
+ }, [eventName, element, options]);
18049
+ };
18050
+
18051
+ var useInitial = EchoUtils.Hooks.useInitial;
18052
+ /**
18053
+ * Hook for checking if page is loaded from mobile device.
18054
+ * @returns boolean true if on mobile.
18055
+ */
18056
+ function useIsMobile() {
18057
+ var _useState = useState(false),
18058
+ _useState2 = _slicedToArray(_useState, 2),
18059
+ isMobile = _useState2[0],
18060
+ setIsMobile = _useState2[1];
18061
+ useInitial(function () {
18062
+ if (/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)) {
18063
+ // true for mobile device
18064
+ setIsMobile(true);
18065
+ } else {
18066
+ // false for not mobile device
18067
+ setIsMobile(false);
18068
+ }
18069
+ });
18070
+ return isMobile;
18071
+ }
18072
+
18073
+ var Keys = {
18074
+ ArrowUp: 'up',
18075
+ ArrowRight: 'right',
18076
+ ArrowDown: 'down',
18077
+ ArrowLeft: 'left',
18078
+ Enter: 'enter',
18079
+ Escape: 'escape'
18080
+ };
18081
+ var useListNavigator = function useListNavigator(listLength) {
18082
+ var initialIndex = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
18083
+ var keyboardEvents = arguments.length > 2 ? arguments[2] : undefined;
18084
+ var listenerTarget = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : document;
18085
+ var _useState = useState(initialIndex),
18086
+ _useState2 = _slicedToArray(_useState, 2),
18087
+ currIndex = _useState2[0],
18088
+ setCurrIndex = _useState2[1];
18089
+ var downHandler = useCallback(function (e) {
18090
+ setCurrIndex(function (c) {
18091
+ return c < listLength - 1 ? c + 1 : listLength - 1;
18092
+ });
18093
+ }, [listLength]);
18094
+ var upHandler = useCallback(function (e) {
18095
+ setCurrIndex(function (c) {
18096
+ return c < 0 ? -1 : c - 1;
18097
+ });
18098
+ }, [listLength]);
18099
+ var enter = useCallback(function () {
18100
+ if (keyboardEvents === null || keyboardEvents === void 0 ? void 0 : keyboardEvents.enter) {
18101
+ if (currIndex === -1) {
18102
+ return;
18103
+ }
18104
+ keyboardEvents.enter(currIndex);
18105
+ }
18106
+ }, [currIndex, keyboardEvents]);
18107
+ useKeyboardNavigation({
18108
+ up: upHandler,
18109
+ down: downHandler,
18110
+ enter: enter
18111
+ }, listenerTarget);
18112
+ return currIndex;
18113
+ };
18114
+ /**
18115
+ * 1. On open: focus should be undefined/inactive. (list should scroll/show selected item if any).
18116
+ * 2. user presses a key (usually down) - scroll list to focused element, which should be first item
18117
+ * in the first section. Also set focused section.
18118
+ * 3. Potentially jump to last in list if user goes up?
18119
+ */
18120
+ var useSectionNavigator = function useSectionNavigator(sections, initialSelected, keyboardEvents) {
18121
+ var listenerTarget = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : document;
18122
+ var _useState3 = useState(initialSelected),
18123
+ _useState4 = _slicedToArray(_useState3, 2),
18124
+ focusedSection = _useState4[0],
18125
+ setFocusedSection = _useState4[1];
18126
+ var _useState5 = useState(initialSelected),
18127
+ _useState6 = _slicedToArray(_useState5, 2),
18128
+ focusedOption = _useState6[0],
18129
+ setFocusedOption = _useState6[1];
18130
+ var up = useCallback(function () {
18131
+ var nextSection = focusedSection;
18132
+ var nextOption = focusedOption;
18133
+ if (nextOption > 0) {
18134
+ // there exists more options in this section
18135
+ setFocusedOption(nextOption - 1);
18136
+ } else {
18137
+ // we're on the first option in section and should move to a previous section.
18138
+ if (nextSection > 0) {
18139
+ nextSection -= 1;
18140
+ // getting last index of option in section
18141
+ nextOption = sections[nextSection].options.length - 1;
18142
+ setFocusedSection(nextSection);
18143
+ setFocusedOption(nextOption);
18144
+ } else {
18145
+ // if initial is deselected -- we add this step.
18146
+ if (initialSelected === -1 && focusedOption === 0 && focusedSection === 0) {
18147
+ // deselect
18148
+ setFocusedSection(-1);
18149
+ setFocusedOption(-1);
18150
+ } else {
18151
+ // we're at deselected - move user down to end
18152
+ nextSection = sections.length - 1;
18153
+ nextOption = sections[nextSection].options.length - 1;
18154
+ setFocusedSection(nextSection);
18155
+ setFocusedOption(nextOption);
18156
+ }
18157
+ }
18158
+ }
18159
+ }, [sections, focusedSection, focusedOption]);
18160
+ var down = useCallback(function () {
18161
+ var _a, _b;
18162
+ var nextSection = focusedSection;
18163
+ var nextOption = focusedOption;
18164
+ if (nextOption < ((_b = (_a = sections[nextSection]) === null || _a === void 0 ? void 0 : _a.options.length) !== null && _b !== void 0 ? _b : 0) - 1) {
18165
+ setFocusedOption(nextOption + 1);
18166
+ } else {
18167
+ // we're at the end of options in section
18168
+ if (nextSection < sections.length - 1) {
18169
+ // there exists more sections
18170
+ setFocusedSection(nextSection + 1);
18171
+ setFocusedOption(0);
18172
+ } else {
18173
+ // we're at the end of sections - back to start (de-selected).
18174
+ // props says we need a deselected step
18175
+ if (initialSelected === -1) {
18176
+ setFocusedSection(-1);
18177
+ setFocusedOption(-1);
18178
+ } else {
18179
+ setFocusedSection(0);
18180
+ setFocusedOption(0);
18181
+ }
18182
+ }
18183
+ }
18184
+ }, [sections, focusedSection, focusedOption]);
18185
+ var enter = useCallback(function () {
18186
+ if (keyboardEvents.enter) {
18187
+ if (focusedOption === -1 && focusedSection === -1) {
18188
+ return;
18189
+ }
18190
+ keyboardEvents.enter(focusedSection, focusedOption);
18191
+ }
18192
+ }, [focusedSection, focusedOption, keyboardEvents]);
18193
+ var escape = useCallback(function () {
18194
+ keyboardEvents.escape && keyboardEvents.escape();
18195
+ }, [focusedSection, focusedOption, keyboardEvents]);
18196
+ useKeyboardNavigation({
18197
+ up: up,
18198
+ down: down,
18199
+ enter: enter,
18200
+ escape: escape
18201
+ }, listenerTarget);
18202
+ return {
18203
+ focusedSection: focusedSection,
18204
+ focusedOption: focusedOption
18205
+ };
18206
+ };
18207
+ var useKeyboardNavigation = function useKeyboardNavigation(keyboardEvents) {
18208
+ var listenerTarget = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : document;
18209
+ var handleKeyDown = useCallback(function (e) {
18210
+ var key = Keys[e.key];
18211
+ var handler = keyboardEvents[key];
18212
+ if (handler) {
18213
+ handler(e);
18214
+ }
18215
+ }, [keyboardEvents]);
18216
+ useEventListener('keydown', handleKeyDown, false, listenerTarget);
18217
+ };
18218
+
18219
+ var css_248z$m = ".floatingSearchBar-module_searchbarWrapper__-sSMM{max-width:404px;position:relative}.floatingSearchBar-module_searchbar__0U3fZ div[class^=Input__Container]{background:none;box-shadow:none;height:48px}.floatingSearchBar-module_searchbar__0U3fZ div[class^=Input__Container]:focus-within{outline:none}.floatingSearchBar-module_searchbar__0U3fZ input{background:rgba(0,0,0,.8);border-radius:4px;color:#dee5e7}.floatingSearchBar-module_searchbar__0U3fZ svg{color:#dee5e7}.floatingSearchBar-module_searchbar__0U3fZ input::placeholder{color:#dee5e7}.floatingSearchBar-module_searchbar__0U3fZ input:focus,.floatingSearchBar-module_searchbar__0U3fZ input:hover{background:rgba(0,0,0,.9)}.floatingSearchBar-module_searchbar__0U3fZ button{opacity:.6}.floatingSearchBar-module_searchbar__0U3fZ button:hover{background:transparent;opacity:1}.floatingSearchBar-module_searchbar__0U3fZ button:focus{opacity:1;outline-color:var(--white)}.floatingSearchBar-module_items__oxyVh{background:rgba(0,0,0,.9);border-radius:4px;margin-top:4px;max-height:400px;overflow:auto;padding:8px 0;position:absolute;width:100%}.floatingSearchBar-module_items__oxyVh::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.25);border:2px solid hsla(0,0%,100%,.06)}.floatingSearchBar-module_items__oxyVh::-webkit-scrollbar-track{background:rgba(0,0,0,.9)}.floatingSearchBar-module_groupWrapper__B6-q3{color:var(--white);font-size:1rem;font-style:normal;font-weight:400;line-height:1rem;list-style:none;margin:0;padding:0}.floatingSearchBar-module_groupTitle__3fYBM{border-bottom:1px solid hsla(0,0%,100%,.16);padding:.5rem 1rem}.floatingSearchBar-module_item__nxfxG{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;gap:1rem;padding:1rem 1.25rem}.floatingSearchBar-module_item__nxfxG svg{min-width:24px}.floatingSearchBar-module_loading__lY-99{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;gap:1rem;justify-content:center;padding:1rem 1.25rem}.floatingSearchBar-module_item__nxfxG:hover{background:hsla(0,0%,100%,.16);cursor:pointer}.floatingSearchBar-module_activeItem__IQ7gz{background:hsla(0,0%,100%,.16)}";
18220
+ var style$2 = {"searchbarWrapper":"floatingSearchBar-module_searchbarWrapper__-sSMM","searchbar":"floatingSearchBar-module_searchbar__0U3fZ","items":"floatingSearchBar-module_items__oxyVh","groupWrapper":"floatingSearchBar-module_groupWrapper__B6-q3","groupTitle":"floatingSearchBar-module_groupTitle__3fYBM","item":"floatingSearchBar-module_item__nxfxG","loading":"floatingSearchBar-module_loading__lY-99","activeItem":"floatingSearchBar-module_activeItem__IQ7gz"};
18221
+ styleInject(css_248z$m);
18222
+
18223
18223
  /**
18224
18224
  * Floating search bar
18225
18225
  *
@@ -18263,7 +18263,9 @@ var FloatingSearchBar = function FloatingSearchBar(_ref) {
18263
18263
  ref: containerRef,
18264
18264
  className: style$2.searchbarWrapper,
18265
18265
  onFocus: function onFocus() {
18266
- return openMenu();
18266
+ if (value) {
18267
+ openMenu();
18268
+ }
18267
18269
  },
18268
18270
  autoComplete: 'off',
18269
18271
  onSubmit: function onSubmit(e) {
@@ -18277,17 +18279,17 @@ var FloatingSearchBar = function FloatingSearchBar(_ref) {
18277
18279
  "aria-haspopup": "true",
18278
18280
  className: style$2.searchbar,
18279
18281
  onChange: function onChange(e) {
18280
- var value = e.target.value;
18281
- setValue(value);
18282
- onSearchQueryChange(value);
18283
- if (value === '') {
18282
+ var val = e.target.value;
18283
+ setValue(val);
18284
+ onSearchQueryChange(val);
18285
+ if (val === '') {
18284
18286
  closeMenu();
18285
18287
  } else if (!isOpen) {
18286
18288
  openMenu();
18287
18289
  }
18288
18290
  },
18289
18291
  value: value
18290
- }), (isLoading || isOpen) && /*#__PURE__*/React__default.createElement("div", {
18292
+ }), isOpen && /*#__PURE__*/React__default.createElement("div", {
18291
18293
  className: style$2.items
18292
18294
  }, isLoading && /*#__PURE__*/React__default.createElement("li", {
18293
18295
  className: style$2.loading,
@@ -18411,7 +18413,7 @@ var InlineTagIconLink = function InlineTagIconLink(_ref) {
18411
18413
  }, description)));
18412
18414
  };
18413
18415
 
18414
- var css_248z$k = ".MainLegend-module_accordion__xjveF{align-items:center;align-self:flex-start;background:rgba(0,0,0,.65);border-radius:4px;color:var(--white);cursor:pointer;display:flex;font-size:.875rem;font-weight:500;height:2.25rem;justify-content:space-between;padding:8px 14px;user-select:none;width:100%}.MainLegend-module_accordion__xjveF:hover{background:rgba(0,0,0,.9);color:var(--white)}.MainLegend-module_left__NKMwB,.MainLegend-module_right__0BIFF{align-items:center;display:flex}.MainLegend-module_icon__neT4f{margin-right:8px}.MainLegend-module_content__nzDkL{align-self:stretch;display:flex;flex-direction:column}button{padding:0}.MainLegend-module_layerIcon__xI2Mf{margin-right:10px}.MainLegend-module_layerIcon__xI2Mf:last-of-type{margin-right:0}";
18416
+ var css_248z$k = ".MainLegend-module_accordion__xjveF{align-items:center;align-self:flex-start;background:rgba(0,0,0,.65);border-radius:4px;color:var(--white);cursor:pointer;display:flex;font-size:.875rem;font-weight:500;height:2.25rem;justify-content:space-between;margin-top:2px;max-width:460px;padding:8px 14px;user-select:none;width:100%}.MainLegend-module_accordion__xjveF:hover{background:rgba(0,0,0,.9);color:var(--white)}.MainLegend-module_left__NKMwB,.MainLegend-module_right__0BIFF{align-items:center;display:flex}.MainLegend-module_icon__neT4f{margin-right:8px}.MainLegend-module_content__nzDkL{align-self:stretch;display:flex;flex-direction:column;overflow:auto;padding-right:4px}.MainLegend-module_content__nzDkL::-webkit-scrollbar{width:8px}.MainLegend-module_content__nzDkL::-webkit-scrollbar-thumb{background:rgba(0,0,0,.65)}.MainLegend-module_content__nzDkL::-webkit-scrollbar-track{background:none}.MainLegend-module_layerIcon__xI2Mf{margin-right:10px}.MainLegend-module_layerIcon__xI2Mf:last-of-type{margin-right:0}";
18415
18417
  var styles$i = {"accordion":"MainLegend-module_accordion__xjveF","left":"MainLegend-module_left__NKMwB","right":"MainLegend-module_right__0BIFF","icon":"MainLegend-module_icon__neT4f","content":"MainLegend-module_content__nzDkL","layerIcon":"MainLegend-module_layerIcon__xI2Mf"};
18416
18418
  styleInject(css_248z$k);
18417
18419
 
@@ -18443,7 +18445,9 @@ function separateLayers(layers) {
18443
18445
  }
18444
18446
  function MainLegend(_ref) {
18445
18447
  var legends = _ref.legends,
18446
- layers = _ref.layers;
18448
+ layers = _ref.layers,
18449
+ legendStyle = _ref.legendStyle,
18450
+ legendContentStyle = _ref.legendContentStyle;
18447
18451
  var _useState = useState([]),
18448
18452
  _useState2 = _slicedToArray(_useState, 2),
18449
18453
  defaultLayers = _useState2[0],
@@ -18478,8 +18482,10 @@ function MainLegend(_ref) {
18478
18482
  return undefined;
18479
18483
  };
18480
18484
  return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, isOpen && /*#__PURE__*/React__default.createElement("div", {
18485
+ style: legendContentStyle,
18481
18486
  className: styles$i.content
18482
18487
  }, legends), /*#__PURE__*/React__default.createElement("button", {
18488
+ style: legendStyle,
18483
18489
  className: styles$i.accordion,
18484
18490
  onClick: toggle,
18485
18491
  role: "widget"
@@ -18514,7 +18520,7 @@ function MainLegend(_ref) {
18514
18520
  }, /*#__PURE__*/React__default.createElement("div", null, "+", defaultLayers.length)))));
18515
18521
  }
18516
18522
 
18517
- var css_248z$j = ".LayerLegend-module_layerLegendContainer__DLfLy{background:rgba(0,0,0,.65);border-radius:4px;color:var(--white);cursor:pointer;font-weight:500;margin-bottom:2px;user-select:none}.LayerLegend-module_header__8NHIX{align-items:center;display:flex;height:2.5rem;justify-content:space-between;padding:12px;width:100%}.LayerLegend-module_activeHeader__EBvGl:hover{background:rgba(0,0,0,.9);border-radius:4px;color:var(--white)}.LayerLegend-module_leftInactive__1Lq18{align-items:center;display:flex;font-size:.875rem}.LayerLegend-module_leftActive__KrRDh{font-weight:700}.LayerLegend-module_right__-IwVs{align-items:center;display:flex;font-size:.625rem}.LayerLegend-module_icon__8VwWd{margin-right:8px}.LayerLegend-module_content__ElkbY{height:auto;padding-bottom:14px;padding-top:8px;width:100%}.LayerLegend-module_items__BC1cp{margin-right:4px}";
18523
+ var css_248z$j = ".LayerLegend-module_layerLegendContainer__DLfLy{background:rgba(0,0,0,.65);border-radius:4px;color:var(--white);cursor:pointer;font-weight:500;margin-bottom:2px;max-width:460px;user-select:none}.LayerLegend-module_layerLegendContainer__DLfLy:last-of-type{margin-bottom:0}.LayerLegend-module_header__8NHIX{align-items:center;display:flex;height:2.5rem;justify-content:space-between;padding:12px;width:100%}.LayerLegend-module_activeHeader__EBvGl{cursor:pointer}.LayerLegend-module_activeHeader__EBvGl:hover{background:rgba(0,0,0,.9);border-radius:4px;color:var(--white)}.LayerLegend-module_leftInactive__1Lq18{align-items:center;display:flex;font-size:.875rem}.LayerLegend-module_leftActive__KrRDh{font-weight:700}.LayerLegend-module_right__-IwVs{align-items:center;display:flex;font-size:.625rem}.LayerLegend-module_icon__8VwWd{margin-right:8px}.LayerLegend-module_content__ElkbY{cursor:auto;height:auto;padding-bottom:14px;padding-top:8px;width:100%}.LayerLegend-module_items__BC1cp{margin-right:4px}";
18518
18524
  var styles$h = {"layerLegendContainer":"LayerLegend-module_layerLegendContainer__DLfLy","header":"LayerLegend-module_header__8NHIX","activeHeader":"LayerLegend-module_activeHeader__EBvGl LayerLegend-module_header__8NHIX","disabledHeader":"LayerLegend-module_disabledHeader__Rd25i LayerLegend-module_header__8NHIX","leftInactive":"LayerLegend-module_leftInactive__1Lq18","leftActive":"LayerLegend-module_leftActive__KrRDh LayerLegend-module_leftInactive__1Lq18","right":"LayerLegend-module_right__-IwVs","icon":"LayerLegend-module_icon__8VwWd","content":"LayerLegend-module_content__ElkbY","items":"LayerLegend-module_items__BC1cp"};
18519
18525
  styleInject(css_248z$j);
18520
18526
 
@@ -18525,7 +18531,8 @@ function LayerLegend(_ref) {
18525
18531
  itemsCount = _ref.itemsCount,
18526
18532
  itemsTitle = _ref.itemsTitle,
18527
18533
  children = _ref.children,
18528
- disabled = _ref.disabled;
18534
+ disabled = _ref.disabled,
18535
+ style = _ref.style;
18529
18536
  var _useState = useState(false),
18530
18537
  _useState2 = _slicedToArray(_useState, 2),
18531
18538
  isOpen = _useState2[0],
@@ -18537,6 +18544,7 @@ function LayerLegend(_ref) {
18537
18544
  };
18538
18545
  var left = classnames$1((_classnames = {}, _defineProperty$1(_classnames, styles$h.leftActive, isOpen), _defineProperty$1(_classnames, styles$h.leftInactive, !isOpen), _classnames));
18539
18546
  return /*#__PURE__*/React__default.createElement("div", {
18547
+ style: style,
18540
18548
  className: styles$h.layerLegendContainer
18541
18549
  }, /*#__PURE__*/React__default.createElement("button", {
18542
18550
  className: disabled ? styles$h.disabledHeader : styles$h.activeHeader,