@evergis/react 3.1.74 → 3.1.76

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/dist/react.esm.js CHANGED
@@ -22,9 +22,9 @@ import 'mapbox-gl/dist/mapbox-gl.css';
22
22
  import { Swiper, SwiperSlide } from 'swiper/react';
23
23
  import ReactMarkdown from 'react-markdown';
24
24
  import remarkGfm from 'remark-gfm';
25
- import '@xterm/xterm/css/xterm.css';
26
25
  import { Terminal } from '@xterm/xterm';
27
26
  import { FitAddon } from '@xterm/addon-fit';
27
+ import '@xterm/xterm/css/xterm.css';
28
28
 
29
29
  const AddFeatureButton = ({ title, icon = "feature_add" /* , layerName, geometryType*/ }) => {
30
30
  // const [, handleAddFeature] = useFeatureCreator(layerName, geometryType);
@@ -5693,8 +5693,8 @@ const TwoColumnContainer = memo(({ config, elementConfig, type, renderElement })
5693
5693
  const icon = children?.[iconIndex];
5694
5694
  const hasIcon = !!icon;
5695
5695
  const elementChildren = elementConfig?.children?.map(child => ({
5696
- ...child,
5697
5696
  type: "attributeValue",
5697
+ ...child,
5698
5698
  attributeName: attribute,
5699
5699
  options: { noUnits: hasUnits, ...child.options },
5700
5700
  }));
@@ -6846,121 +6846,6 @@ const StatusBadge = styled(Chip) `
6846
6846
  color: ${({ theme }) => theme.palette.iconContrast};
6847
6847
  `;
6848
6848
 
6849
- const TerminalWrapper = styled.div `
6850
- flex: 1;
6851
- overflow: hidden;
6852
- padding: 0;
6853
- margin: 0;
6854
- box-sizing: border-box;
6855
- min-height: 0;
6856
-
6857
- .xterm-viewport {
6858
- overflow-y: auto;
6859
- }
6860
-
6861
- .xterm-screen .xterm-rows span {
6862
- letter-spacing: 0 !important;
6863
- }
6864
- `;
6865
-
6866
- const LogTerminal = ({ log }) => {
6867
- const terminalRef = useRef(null);
6868
- const xtermRef = useRef(null);
6869
- const fitAddonRef = useRef(null);
6870
- const previousLogRef = useRef("");
6871
- const theme = useTheme();
6872
- useEffect(() => {
6873
- if (!terminalRef.current)
6874
- return;
6875
- // Create terminal instance
6876
- const terminal = new Terminal({
6877
- cursorBlink: false,
6878
- fontSize: 12,
6879
- fontFamily: '"Monaco", "Menlo", "Ubuntu Mono", "Consolas", "source-code-pro", monospace',
6880
- scrollback: 10000,
6881
- convertEol: true,
6882
- lineHeight: 1.5,
6883
- theme: {
6884
- background: theme.palette.background,
6885
- foreground: theme.palette.textPrimary,
6886
- cursor: theme.palette.primary,
6887
- },
6888
- });
6889
- // Create fit addon
6890
- const fitAddon = new FitAddon();
6891
- terminal.loadAddon(fitAddon);
6892
- // Open terminal
6893
- terminal.open(terminalRef.current);
6894
- fitAddon.fit();
6895
- // Store refs
6896
- xtermRef.current = terminal;
6897
- fitAddonRef.current = fitAddon;
6898
- // Handle window resize
6899
- const handleResize = () => {
6900
- fitAddon.fit();
6901
- };
6902
- window.addEventListener("resize", handleResize);
6903
- // Cleanup
6904
- return () => {
6905
- window.removeEventListener("resize", handleResize);
6906
- terminal.dispose();
6907
- xtermRef.current = null;
6908
- fitAddonRef.current = null;
6909
- };
6910
- }, [theme]);
6911
- // Update log content
6912
- useEffect(() => {
6913
- if (!xtermRef.current)
6914
- return;
6915
- // Handle different log types
6916
- if (typeof log === "string") {
6917
- // For string logs, only write the new content (append mode)
6918
- const previousLog = previousLogRef.current;
6919
- if (log !== previousLog) {
6920
- if (log.startsWith(previousLog)) {
6921
- // Log is accumulated - write only the new part
6922
- const newContent = log.substring(previousLog.length);
6923
- xtermRef.current.write(newContent);
6924
- }
6925
- else {
6926
- // Log was replaced completely - clear and write all
6927
- xtermRef.current.clear();
6928
- xtermRef.current.write(log);
6929
- }
6930
- previousLogRef.current = log;
6931
- }
6932
- }
6933
- else if (typeof log === "object") {
6934
- // JSON object (results) - always replace
6935
- xtermRef.current.clear();
6936
- const formatted = JSON.stringify(log, null, 2);
6937
- xtermRef.current.write(formatted);
6938
- previousLogRef.current = "";
6939
- }
6940
- else if (!log) {
6941
- // No log - clear terminal
6942
- xtermRef.current.clear();
6943
- previousLogRef.current = "";
6944
- }
6945
- // Scroll to bottom
6946
- xtermRef.current.scrollToBottom();
6947
- }, [log]);
6948
- useEffect(() => {
6949
- if (!fitAddonRef.current)
6950
- return;
6951
- const resizeObserver = new ResizeObserver(() => {
6952
- fitAddonRef.current?.fit();
6953
- });
6954
- if (terminalRef.current) {
6955
- resizeObserver.observe(terminalRef.current);
6956
- }
6957
- return () => {
6958
- resizeObserver.disconnect();
6959
- };
6960
- }, []);
6961
- return jsx(TerminalWrapper, { ref: terminalRef });
6962
- };
6963
-
6964
6849
  const STATUS_TRANSLATION_KEYS = {
6965
6850
  [RemoteTaskStatus.Process]: "taskProcess",
6966
6851
  [RemoteTaskStatus.Completed]: "taskCompleted",
@@ -7430,7 +7315,7 @@ const FeatureCardGradientHeader = ({ isRow }) => {
7430
7315
  };
7431
7316
 
7432
7317
  const HeaderFontColorMixin = css `
7433
- ${HeaderTitleContainer}, ${LayerDescription} {
7318
+ ${HeaderTitleContainer}, ${HeaderTitleContainer} *, ${LayerDescription} {
7434
7319
  color: ${({ $fontColor }) => $fontColor};
7435
7320
  }
7436
7321
  `;
@@ -7959,15 +7844,14 @@ const ExternalLink = styled(IconButton).attrs(() => ({
7959
7844
  color: ${({ theme: { palette } }) => palette.primaryDeep};
7960
7845
  }
7961
7846
  `;
7962
- const LocalLinkBlank = styled(Blank) `
7963
- min-width: 13.5rem;
7964
- padding: 0.5rem 0.75rem 0;
7965
-
7966
- a {
7847
+ const Link = styled.a `
7967
7848
  text-decoration: none;
7968
7849
  font-size: 0.75rem;
7969
7850
  color: ${({ theme: { palette } }) => palette.primary};
7970
- }
7851
+ `;
7852
+ const LocalLinkBlank = styled(Blank) `
7853
+ min-width: 13.5rem;
7854
+ padding: 0.5rem 0.75rem 0;
7971
7855
 
7972
7856
  ${IconButtonButton} {
7973
7857
  font-size: 0.75rem;
@@ -7979,8 +7863,13 @@ const LocalLinkButton = styled(IconButton).attrs(() => ({
7979
7863
  width: 1rem;
7980
7864
  height: 1rem;
7981
7865
  background-color: ${({ theme: { palette } }) => palette.primary};
7866
+ padding: 0;
7982
7867
  border-radius: 50%;
7983
7868
 
7869
+ :hover {
7870
+ background-color: ${({ theme: { palette } }) => palette.primary};
7871
+ }
7872
+
7984
7873
  span[kind] {
7985
7874
  display: flex;
7986
7875
  justify-content: center;
@@ -7997,23 +7886,30 @@ const LocalLinkCopy = styled(Flex) `
7997
7886
  justify-content: center;
7998
7887
  `;
7999
7888
 
8000
- const LocalLink = memo(({ link }) => {
7889
+ const LocalLink = memo(({ link, style }) => {
8001
7890
  const { t } = useGlobalContext();
8002
7891
  const [isOpen, toggleOpen] = useToggle();
8003
7892
  const onCopy = useCallback(() => {
8004
7893
  navigator.clipboard.writeText(link);
8005
7894
  toggleOpen();
8006
7895
  }, [link, toggleOpen]);
8007
- return (jsx(Popover, { open: isOpen, zIndex: 10, onRequestClose: toggleOpen, anchorOrigin: "bottom-right", targetOrigin: "top-right", anchor: jsx(LocalLinkButton, { onClick: toggleOpen }), children: jsxs(LocalLinkBlank, { children: [jsx("a", { href: link, target: "_blank", rel: "noreferrer", children: link }), jsx(LocalLinkCopy, { children: jsx(IconButton, { kind: "copy", onClick: onCopy, children: t("copy", { ns: "dashboard", defaultValue: "Копировать" }) }) })] }) }));
7896
+ return (jsx(Popover, { open: isOpen, zIndex: 10, onRequestClose: toggleOpen, anchorOrigin: "bottom-right", targetOrigin: "top-right", anchor: jsx(LocalLinkButton, { onClick: toggleOpen }), children: jsxs(LocalLinkBlank, { children: [jsx(Link, { href: link, target: "_blank", rel: "noreferrer", style: style, children: link }), jsx(LocalLinkCopy, { children: jsx(IconButton, { kind: "copy", onClick: onCopy, children: t("copy", { ns: "dashboard", defaultValue: "Копировать" }) }) })] }) }));
8008
7897
  });
8009
7898
 
8010
7899
  const ElementLink = memo(({ type, elementConfig }) => {
8011
7900
  const { attributes } = useWidgetContext(type);
8012
- const attribute = getAttributeByName(elementConfig?.attributeName, attributes);
8013
- const link = attribute?.value;
8014
- if (!link || typeof link !== "string")
7901
+ const { options, style } = elementConfig || {};
7902
+ const { simple, title } = options || {};
7903
+ const attribute = useMemo(() => getAttributeByName(elementConfig?.attributeName, attributes), [attributes, elementConfig?.attributeName]);
7904
+ const link = useMemo(() => getResourceUrl(attribute?.value?.toString()), [attribute?.value]);
7905
+ if (!link)
8015
7906
  return null;
8016
- return link.startsWith("http") ? jsx(ExternalLink, { onClick: () => window.open(link) }) : jsx(LocalLink, { link: link });
7907
+ if (simple) {
7908
+ return (jsx(Link, { href: link, target: "_blank", rel: "noreferrer", style: style, children: title ?? link }));
7909
+ }
7910
+ return link.startsWith("http")
7911
+ ? jsx(ExternalLink, { style: style, onClick: () => window.open(link) })
7912
+ : jsx(LocalLink, { style: style, link: link });
8017
7913
  });
8018
7914
 
8019
7915
  const MarkdownWrapper = styled.div `
@@ -10792,6 +10688,122 @@ const HiddenTitleItems = memo(({ elementConfig, config, type, filter }) => {
10792
10688
  getConfigFilter(filterName, configFilters)?.defaultValue, index)) }));
10793
10689
  });
10794
10690
 
10691
+ const TerminalWrapper = styled.div `
10692
+ flex: 1;
10693
+ overflow: hidden;
10694
+ padding: 0;
10695
+ margin: 0;
10696
+ box-sizing: border-box;
10697
+ min-height: 0;
10698
+
10699
+ .xterm-viewport {
10700
+ overflow-y: auto;
10701
+ }
10702
+
10703
+ .xterm-screen .xterm-rows span {
10704
+ letter-spacing: 0 !important;
10705
+ }
10706
+ `;
10707
+
10708
+ const LogTerminal = ({ log, terminalOptions, className, styles }) => {
10709
+ const terminalRef = useRef(null);
10710
+ const xtermRef = useRef(null);
10711
+ const fitAddonRef = useRef(null);
10712
+ const previousLogRef = useRef("");
10713
+ const theme = useTheme();
10714
+ useEffect(() => {
10715
+ if (!terminalRef.current)
10716
+ return;
10717
+ // Create terminal instance
10718
+ const terminal = new Terminal({
10719
+ cursorBlink: false,
10720
+ fontSize: 12,
10721
+ fontFamily: '"Monaco", "Menlo", "Ubuntu Mono", "Consolas", "source-code-pro", monospace',
10722
+ scrollback: 10000,
10723
+ convertEol: true,
10724
+ lineHeight: 1.5,
10725
+ theme: {
10726
+ background: theme.palette.background,
10727
+ foreground: theme.palette.textPrimary,
10728
+ cursor: theme.palette.primary,
10729
+ },
10730
+ ...terminalOptions,
10731
+ });
10732
+ // Create fit addon
10733
+ const fitAddon = new FitAddon();
10734
+ terminal.loadAddon(fitAddon);
10735
+ // Open terminal
10736
+ terminal.open(terminalRef.current);
10737
+ fitAddon.fit();
10738
+ // Store refs
10739
+ xtermRef.current = terminal;
10740
+ fitAddonRef.current = fitAddon;
10741
+ // Handle window resize
10742
+ const handleResize = () => {
10743
+ fitAddon.fit();
10744
+ };
10745
+ window.addEventListener("resize", handleResize);
10746
+ // Cleanup
10747
+ return () => {
10748
+ window.removeEventListener("resize", handleResize);
10749
+ terminal.dispose();
10750
+ xtermRef.current = null;
10751
+ fitAddonRef.current = null;
10752
+ };
10753
+ }, [theme, terminalOptions]);
10754
+ // Update log content
10755
+ useEffect(() => {
10756
+ if (!xtermRef.current)
10757
+ return;
10758
+ // Handle different log types
10759
+ if (typeof log === "string") {
10760
+ // For string logs, only write the new content (append mode)
10761
+ const previousLog = previousLogRef.current;
10762
+ if (log !== previousLog) {
10763
+ if (log.startsWith(previousLog)) {
10764
+ // Log is accumulated - write only the new part
10765
+ const newContent = log.substring(previousLog.length);
10766
+ xtermRef.current.write(newContent);
10767
+ }
10768
+ else {
10769
+ // Log was replaced completely - clear and write all
10770
+ xtermRef.current.clear();
10771
+ xtermRef.current.write(log);
10772
+ }
10773
+ previousLogRef.current = log;
10774
+ }
10775
+ }
10776
+ else if (typeof log === "object") {
10777
+ // JSON object (results) - always replace
10778
+ xtermRef.current.clear();
10779
+ const formatted = JSON.stringify(log, null, 2);
10780
+ xtermRef.current.write(formatted);
10781
+ previousLogRef.current = "";
10782
+ }
10783
+ else if (!log) {
10784
+ // No log - clear terminal
10785
+ xtermRef.current.clear();
10786
+ previousLogRef.current = "";
10787
+ }
10788
+ // Scroll to bottom
10789
+ xtermRef.current.scrollToBottom();
10790
+ }, [log]);
10791
+ useEffect(() => {
10792
+ if (!fitAddonRef.current)
10793
+ return;
10794
+ const resizeObserver = new ResizeObserver(() => {
10795
+ fitAddonRef.current?.fit();
10796
+ });
10797
+ if (terminalRef.current) {
10798
+ resizeObserver.observe(terminalRef.current);
10799
+ }
10800
+ return () => {
10801
+ resizeObserver.disconnect();
10802
+ };
10803
+ }, []);
10804
+ return jsx(TerminalWrapper, { ref: terminalRef, className: className, style: styles });
10805
+ };
10806
+
10795
10807
  const PageNavigator = styled(Flex) `
10796
10808
  margin-right: -0.5rem;
10797
10809
  align-items: center;
@@ -11109,5 +11121,5 @@ const Map$1 = ({ zIndex, lowerSiblings, upperSiblings, onError, children, ...res
11109
11121
  }, children: children }), upperSiblings] }));
11110
11122
  };
11111
11123
 
11112
- export { AddFeatureButton, AddFeatureContainer, AttributeGalleryContainer, AttributeLabel, BaseMapTheme, CONFIG_PAGES_ID, CONFIG_PAGE_ID, CameraContainer, Chart, ChartContainer, ChartLegend, ChartLoading, Container, ContainerChildren, ContainerLoading, ContainerTemplate, ContainerWrapper, ContainersGroupContainer, DEFAULT_ATTRIBUTE_NAME, DEFAULT_BARCHART_RADIUS, DEFAULT_BASE_MAP, DEFAULT_CHART_ANGLE, DEFAULT_CHART_HEIGHT, DEFAULT_CHART_WIDTH, DEFAULT_CIRCLE_PAINT, DEFAULT_DASHBOARD_CONFIG, DEFAULT_DATA_SOURCE_LIMIT, DEFAULT_FILL_EXTRUSION_PAINT, DEFAULT_FILL_PAINT, DEFAULT_ID_ATTRIBUTE_NAME, DEFAULT_LAT, DEFAULT_LINE_PAINT, DEFAULT_LNG, DEFAULT_PAGES_CONFIG, DEFAULT_PIECHART_RADIUS, DEFAULT_ZOOM, Dashboard, DashboardCheckbox, DashboardChip, DashboardContent, DashboardContext, DashboardDefaultHeader, DashboardHeader, DashboardLoading, DashboardPlaceholder, DashboardPlaceholderWrap, DashboardProvider, DashboardWrapper, DataSourceContainer, DataSourceError, DataSourceErrorContainer, DataSourceInnerContainer, DataSourceProgressContainer, DateFormat, DefaultAttributesContainer, DefaultHeaderContainer, DefaultHeaderWrapper, DividerContainer, EditGeometryType, ElementButton, ElementCamera, ElementChart, ElementChips, ElementIcon, ElementImage, ElementLegend, ElementLink, ElementMarkdown, ElementSlideshow, ElementSvg, ElementTooltip, ElementValueWrapper, ExpandableTitle, FEATURE_CARD_DEFAULT_COLORS, FEATURE_CARD_OTHER_COLOR, FILTERED_VALUE_OPACITY, FILTER_PREFIX, FeatureCardButtons, FeatureCardContext, FeatureCardDefaultHeader, FeatureCardGradientHeader, FeatureCardHeader, FeatureCardIconHeader, FeatureCardProvider, FeatureCardSlideshowHeader, FeatureCardTitle, FeatureControls, FeatureTitleContainer, FiltersContainer, GEOMETRY_ATTRIBUTE, GlobalContext, GlobalProvider, Header, HeaderContainer, HeaderFrontView, HeaderTemplate, HeaderTitleContainer, HiddenTitleItems, IconContainer, ImageContainer, LEFT_PANEL_HEADER_HEIGHT, Layer, LayerDescription, LayerGroup, LayerGroupList, LayerIcon, LayerListContainer, LayerTree, LayersContainer, LayersListWrapper, LinearProgressContainer, LogoContainer, MAX_CHART_WIDTH, Map$1 as Map, MapContext, MapProvider, NO_CONTENT_VALUE, NUMERIC_ATTRIBUTE_TYPES, NoLiveSnapshotContainer, OneColumnContainer, PageNavigator, PageTitle, PagesContainer, Pagination, PresentationHeader, PresentationHeaderButtons, PresentationHeaderTools, PresentationPanelContainer, PresentationPanelWrapper, PresentationWrapper, ProgressContainer, RoundedBackgroundContainer, SERVER_NOTIFICATION_EVENT, ScalingFactor, ServerNotificationsContext, ServerNotificationsProvider, SlideshowContainer, SmallPreviewContainer$1 as SmallPreviewContainer, SmallPreviewControl, SmallPreviewCounter, SmallPreviewImages, SmallPreviewLeft, SmallPreviewRight, StackBar, SvgImage, TIME_ZONE_FORMAT, TabsContainer, TextTrim, ThemeName, TitleContainer, TmsType, TopContainer, TopContainerButtons, TwoColumnContainer, UploadContainer, WidgetType, addDataSource, addDataSources, adjustColor, applyFiltersToCondition, applyQueryFilters, applyVarsToCondition, checkEqualOrIncludes, checkIsLoading, convertSpToTurfFeature, createConfigLayer, createConfigPage, createNewPageId, createTreeNode, dateOptions, debounce, decimalOpacityToHex, eqlParametersToPayload, findAttributeInExpression, formatArea, formatAttributeValue, formatChartRelatedValue, formatConditionValue, formatDataSourceCondition, formatDate$1 as formatDate, formatElementValue, formatLength, formatNumber, formatPolygonMeasure, getActualExtrusionHeight, getAttributeByName, getAttributeValue, getAttributesConfiguration, getChartAxes, getChartFilterName, getChartMarkers, getConfigFilter, getContainerComponent, getDashboardHeader, getDataFromAttributes, getDataFromRelatedFeatures, getDataSource, getDataSourceFilterValue, getDate, getDefaultConfig, getElementValue, getFeatureAttributes, getFeatureCardHeader, getFilterComponent, getFilterSelectedItems, getFilterValue, getFormattedAttributes, getGradientColors, getLayerDefinition, getLayerInfo, getLayerInfoFromDataSources, getPagesFromConfig, getPagesFromProjectInfo, getProxyService, getRelatedAttribute, getRenderElement, getResourceUrl, getRootElementId, getSelectedFilterValue, getSlideshowImages, getSvgUrl, getTotalFromAttributes, getTotalFromRelatedFeatures, hexToRgba, isCompositeLayerConfiguration, isEmptyElementValue, isEmptyValue, isHiddenEmptyValue, isLayerService, isNotValidSelectedTab, isNumeric, isObject, isProxyService, isVisibleContainer, numberOptions, parseClientStyle, pieChartTooltipFromAttributes, pieChartTooltipFromRelatedFeatures, pointOptions, removeDataSource, rgbToHex, roundTotalSum, sliceShownOtherItems, timeOptions, tooltipNameFromAttributes, tooltipValueFromAttributes, tooltipValueFromRelatedFeatures, transparentizeColor, treeNodesToProjectItems, useAppHeight, useChartChange, useChartData, useDashboardHeader, useDataSources, useDebouncedCallback, useDiffPage, useExpandableContainers, useExportPdf, useGetConfigLayer, useGlobalContext, useHeaderRender, useHideIfEmptyDataSource, useLayerParams, useMapContext, useMapDraw, useProjectDashboardInit, usePythonTask, useRedrawLayer, useRelatedDataSourceAttributes, useRenderElement, useServerNotificationsContext, useShownOtherItems, useToggle, useUpdateDataSource, useWidgetConfig, useWidgetContext, useWidgetFilters, useWidgetPage, useWindowResize, useZoomToFeatures, useZoomToPoint };
11124
+ export { AddFeatureButton, AddFeatureContainer, AttributeGalleryContainer, AttributeLabel, BaseMapTheme, CONFIG_PAGES_ID, CONFIG_PAGE_ID, CameraContainer, Chart, ChartContainer, ChartLegend, ChartLoading, Container, ContainerChildren, ContainerLoading, ContainerTemplate, ContainerWrapper, ContainersGroupContainer, DEFAULT_ATTRIBUTE_NAME, DEFAULT_BARCHART_RADIUS, DEFAULT_BASE_MAP, DEFAULT_CHART_ANGLE, DEFAULT_CHART_HEIGHT, DEFAULT_CHART_WIDTH, DEFAULT_CIRCLE_PAINT, DEFAULT_DASHBOARD_CONFIG, DEFAULT_DATA_SOURCE_LIMIT, DEFAULT_FILL_EXTRUSION_PAINT, DEFAULT_FILL_PAINT, DEFAULT_ID_ATTRIBUTE_NAME, DEFAULT_LAT, DEFAULT_LINE_PAINT, DEFAULT_LNG, DEFAULT_PAGES_CONFIG, DEFAULT_PIECHART_RADIUS, DEFAULT_ZOOM, Dashboard, DashboardCheckbox, DashboardChip, DashboardContent, DashboardContext, DashboardDefaultHeader, DashboardHeader, DashboardLoading, DashboardPlaceholder, DashboardPlaceholderWrap, DashboardProvider, DashboardWrapper, DataSourceContainer, DataSourceError, DataSourceErrorContainer, DataSourceInnerContainer, DataSourceProgressContainer, DateFormat, DefaultAttributesContainer, DefaultHeaderContainer, DefaultHeaderWrapper, DividerContainer, EditGeometryType, ElementButton, ElementCamera, ElementChart, ElementChips, ElementIcon, ElementImage, ElementLegend, ElementLink, ElementMarkdown, ElementSlideshow, ElementSvg, ElementTooltip, ElementValueWrapper, ExpandableTitle, FEATURE_CARD_DEFAULT_COLORS, FEATURE_CARD_OTHER_COLOR, FILTERED_VALUE_OPACITY, FILTER_PREFIX, FeatureCardButtons, FeatureCardContext, FeatureCardDefaultHeader, FeatureCardGradientHeader, FeatureCardHeader, FeatureCardIconHeader, FeatureCardProvider, FeatureCardSlideshowHeader, FeatureCardTitle, FeatureControls, FeatureTitleContainer, FiltersContainer, GEOMETRY_ATTRIBUTE, GlobalContext, GlobalProvider, Header, HeaderContainer, HeaderFrontView, HeaderTemplate, HeaderTitleContainer, HiddenTitleItems, IconContainer, ImageContainer, LEFT_PANEL_HEADER_HEIGHT, Layer, LayerDescription, LayerGroup, LayerGroupList, LayerIcon, LayerListContainer, LayerTree, LayersContainer, LayersListWrapper, LinearProgressContainer, LogTerminal, LogoContainer, MAX_CHART_WIDTH, Map$1 as Map, MapContext, MapProvider, NO_CONTENT_VALUE, NUMERIC_ATTRIBUTE_TYPES, NoLiveSnapshotContainer, OneColumnContainer, PageNavigator, PageTitle, PagesContainer, Pagination, PresentationHeader, PresentationHeaderButtons, PresentationHeaderTools, PresentationPanelContainer, PresentationPanelWrapper, PresentationWrapper, ProgressContainer, RoundedBackgroundContainer, SERVER_NOTIFICATION_EVENT, ScalingFactor, ServerNotificationsContext, ServerNotificationsProvider, SlideshowContainer, SmallPreviewContainer$1 as SmallPreviewContainer, SmallPreviewControl, SmallPreviewCounter, SmallPreviewImages, SmallPreviewLeft, SmallPreviewRight, StackBar, SvgImage, TIME_ZONE_FORMAT, TabsContainer, TextTrim, ThemeName, TitleContainer, TmsType, TopContainer, TopContainerButtons, TwoColumnContainer, UploadContainer, WidgetType, addDataSource, addDataSources, adjustColor, applyFiltersToCondition, applyQueryFilters, applyVarsToCondition, checkEqualOrIncludes, checkIsLoading, convertSpToTurfFeature, createConfigLayer, createConfigPage, createNewPageId, createTreeNode, dateOptions, debounce, decimalOpacityToHex, eqlParametersToPayload, findAttributeInExpression, formatArea, formatAttributeValue, formatChartRelatedValue, formatConditionValue, formatDataSourceCondition, formatDate$1 as formatDate, formatElementValue, formatLength, formatNumber, formatPolygonMeasure, getActualExtrusionHeight, getAttributeByName, getAttributeValue, getAttributesConfiguration, getChartAxes, getChartFilterName, getChartMarkers, getConfigFilter, getContainerComponent, getDashboardHeader, getDataFromAttributes, getDataFromRelatedFeatures, getDataSource, getDataSourceFilterValue, getDate, getDefaultConfig, getElementValue, getFeatureAttributes, getFeatureCardHeader, getFilterComponent, getFilterSelectedItems, getFilterValue, getFormattedAttributes, getGradientColors, getLayerDefinition, getLayerInfo, getLayerInfoFromDataSources, getPagesFromConfig, getPagesFromProjectInfo, getProxyService, getRelatedAttribute, getRenderElement, getResourceUrl, getRootElementId, getSelectedFilterValue, getSlideshowImages, getSvgUrl, getTotalFromAttributes, getTotalFromRelatedFeatures, hexToRgba, isCompositeLayerConfiguration, isEmptyElementValue, isEmptyValue, isHiddenEmptyValue, isLayerService, isNotValidSelectedTab, isNumeric, isObject, isProxyService, isVisibleContainer, numberOptions, parseClientStyle, pieChartTooltipFromAttributes, pieChartTooltipFromRelatedFeatures, pointOptions, removeDataSource, rgbToHex, roundTotalSum, sliceShownOtherItems, timeOptions, tooltipNameFromAttributes, tooltipValueFromAttributes, tooltipValueFromRelatedFeatures, transparentizeColor, treeNodesToProjectItems, useAppHeight, useChartChange, useChartData, useDashboardHeader, useDataSources, useDebouncedCallback, useDiffPage, useExpandableContainers, useExportPdf, useGetConfigLayer, useGlobalContext, useHeaderRender, useHideIfEmptyDataSource, useLayerParams, useMapContext, useMapDraw, useProjectDashboardInit, usePythonTask, useRedrawLayer, useRelatedDataSourceAttributes, useRenderElement, useServerNotificationsContext, useShownOtherItems, useToggle, useUpdateDataSource, useWidgetConfig, useWidgetContext, useWidgetFilters, useWidgetPage, useWindowResize, useZoomToFeatures, useZoomToPoint };
11113
11125
  //# sourceMappingURL=react.esm.js.map