@amboss/design-system 3.8.0 → 3.8.1
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/build/cjs/components/BinaryFeedback/BinaryFeedbackOption.js +1 -1
- package/build/cjs/components/Card/Card.d.ts +1 -3
- package/build/cjs/components/Card/Card.js +1 -1
- package/build/cjs/components/Card/CardHeader/CardHeader.d.ts +1 -3
- package/build/cjs/components/Card/CardHeader/CardHeader.js +1 -1
- package/build/cjs/components/DataTable/DataTable.js +1 -1
- package/build/cjs/components/EntityList/EntityListItem.js +1 -1
- package/build/cjs/components/EntityTree/BaseEntityTree.js +1 -1
- package/build/cjs/components/Form/Combobox/OptionsList.js +1 -1
- package/build/cjs/components/Form/FormField/FormField.js +1 -1
- package/build/cjs/components/Form/FormFieldGroup/FormFieldGroup.js +1 -1
- package/build/cjs/components/Form/SegmentedControl/SegmentedControlOption.js +1 -1
- package/build/cjs/components/LoadingSpinner/LoadingSpinner.js +1 -1
- package/build/cjs/components/SegmentedProgressBar/SegmentedProgressBar.js +1 -1
- package/build/cjs/components/SegmentedProgressBar/SegmentedProgressBarUtil.d.ts +1 -0
- package/build/cjs/components/SegmentedProgressBar/SegmentedProgressBarUtil.js +1 -1
- package/build/cjs/components/Toggletip/BasePopover.d.ts +1 -1
- package/build/cjs/components/Toggletip/BasePopover.js +1 -1
- package/build/cjs/components/Tooltip/BaseTooltip.d.ts +1 -1
- package/build/cjs/components/Tooltip/TooltipContent.d.ts +5 -2
- package/build/cjs/components/Tooltip/TooltipContent.js +1 -1
- package/build/cjs/components/Tooltip/utils.d.ts +13 -2
- package/build/cjs/components/Tooltip/utils.js +1 -1
- package/build/cjs/components/Typography/Text/Text.d.ts +6 -4
- package/build/cjs/components/Typography/Text/Text.js +1 -1
- package/build/cjs/components/Typography/TextClamped/TextClamped.d.ts +1 -1
- package/build/cjs/components/Typography/TextClamped/TextClamped.js +1 -1
- package/build/cjs/components/UserHighlightTooltip/UserHighlightTooltip.js +1 -1
- package/build/cjs/components/Utilities/ScreenReaderText/ScreenReaderText.js +1 -0
- package/build/cjs/index.d.ts +1 -0
- package/build/cjs/index.js +1 -1
- package/build/esm/components/BinaryFeedback/BinaryFeedbackOption.js +1 -1
- package/build/esm/components/Card/Card.d.ts +1 -3
- package/build/esm/components/Card/Card.js +1 -1
- package/build/esm/components/Card/CardHeader/CardHeader.d.ts +1 -3
- package/build/esm/components/Card/CardHeader/CardHeader.js +1 -1
- package/build/esm/components/DataTable/DataTable.js +1 -1
- package/build/esm/components/EntityList/EntityListItem.js +1 -1
- package/build/esm/components/EntityTree/BaseEntityTree.js +1 -1
- package/build/esm/components/Form/Combobox/OptionsList.js +1 -1
- package/build/esm/components/Form/FormField/FormField.js +1 -1
- package/build/esm/components/Form/FormFieldGroup/FormFieldGroup.js +1 -1
- package/build/esm/components/Form/SegmentedControl/SegmentedControlOption.js +1 -1
- package/build/esm/components/LoadingSpinner/LoadingSpinner.js +1 -1
- package/build/esm/components/SegmentedProgressBar/SegmentedProgressBar.js +1 -1
- package/build/esm/components/SegmentedProgressBar/SegmentedProgressBarUtil.d.ts +1 -0
- package/build/esm/components/SegmentedProgressBar/SegmentedProgressBarUtil.js +1 -1
- package/build/esm/components/Toggletip/BasePopover.d.ts +1 -1
- package/build/esm/components/Toggletip/BasePopover.js +1 -1
- package/build/esm/components/Tooltip/BaseTooltip.d.ts +1 -1
- package/build/esm/components/Tooltip/TooltipContent.d.ts +5 -2
- package/build/esm/components/Tooltip/TooltipContent.js +1 -1
- package/build/esm/components/Tooltip/utils.d.ts +13 -2
- package/build/esm/components/Tooltip/utils.js +1 -1
- package/build/esm/components/Typography/Text/Text.d.ts +6 -4
- package/build/esm/components/Typography/Text/Text.js +1 -1
- package/build/esm/components/Typography/TextClamped/TextClamped.d.ts +1 -1
- package/build/esm/components/Typography/TextClamped/TextClamped.js +1 -1
- package/build/esm/components/UserHighlightTooltip/UserHighlightTooltip.js +1 -1
- package/build/esm/components/Utilities/ScreenReaderText/ScreenReaderText.js +1 -0
- package/build/esm/index.d.ts +1 -0
- package/build/esm/index.js +1 -1
- package/package.json +1 -1
- package/build/cjs/shared/ScreenReaderText.js +0 -1
- package/build/esm/shared/ScreenReaderText.js +0 -1
- /package/build/cjs/{shared → components/Utilities/ScreenReaderText}/ScreenReaderText.d.ts +0 -0
- /package/build/esm/{shared → components/Utilities/ScreenReaderText}/ScreenReaderText.d.ts +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import React from"react";import styled from"@emotion/styled";import{getPercentagesForVariants,sanitizeInputValues}from"./SegmentedProgressBarUtil";let getBackgroundColor=(theme,style,monochrome)=>{let monochromeColor=theme.values.color.segmentedProgressBar.monochrome;switch(style){case"success":return monochrome?monochromeColor:theme.values.color.segmentedProgressBar.success;case"warning":return monochrome?monochromeColor:theme.values.color.segmentedProgressBar.warning;case"alert":return monochrome?monochromeColor:theme.values.color.segmentedProgressBar.alert;case"inProgress":return theme.values.color.segmentedProgressBar.inProgress;default:return theme.values.color.border.secondary.default}},StyledSegmentedProgressBar=styled("div",{target:"e1lixuvp0",label:"StyledSegmentedProgressBar"})(({theme,squareCorners,weight})=>({width:"100%",display:"flex",flexDirection:"row",borderRadius:squareCorners?0:theme.variables.size.borderRadius.xs,overflow:"hidden",height:"thin"===weight?theme.variables.size.spacing.xxs:theme.variables.size.spacing.xs}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvU2VnbWVudGVkUHJvZ3Jlc3NCYXIvU2VnbWVudGVkUHJvZ3Jlc3NCYXIudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9TZWdtZW50ZWRQcm9ncmVzc0Jhci9TZWdtZW50ZWRQcm9ncmVzc0Jhci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLWN5Y2xlXG5pbXBvcnQge1xuICBnZXRQZXJjZW50YWdlc0ZvclZhcmlhbnRzLFxuICBzYW5pdGl6ZUlucHV0VmFsdWVzLFxufSBmcm9tIFwiLi9TZWdtZW50ZWRQcm9ncmVzc0JhclV0aWxcIjtcblxuZXhwb3J0IHR5cGUgVmFsdWVzVmFyaWFudCA9IFwic3VjY2Vzc1wiIHwgXCJ3YXJuaW5nXCIgfCBcImFsZXJ0XCI7XG5cbmV4cG9ydCB0eXBlIFN0eWxlVmFyaWFudCA9IFZhbHVlc1ZhcmlhbnQgfCBcImluUHJvZ3Jlc3NcIjtcblxuZXhwb3J0IHR5cGUgVmFsdWUgPSBudW1iZXI7XG5cbmV4cG9ydCB0eXBlIFByb2dyZXNzQmFyV2VpZ2h0ID0gXCJ0aGluXCIgfCBcImZhdFwiO1xuXG5leHBvcnQgdHlwZSBTZWdtZW50ZWRQcm9ncmVzc0JhclByb3BzID0ge1xuICAvKiogVGhlIHZhbHVlIGZvciAxMDAlIHByb2dyZXNzLiBDb25zdW1lciBkb2VzIG5vdCBuZWVkIHRvIGRvIHBlcmNlbnRhZ2UgY2FsY3VsYXRpb24uXG4gICAqIEp1c3QgcGFzcyB0aGlzIG51bWJlciBhbmQgc29tZSB2YWx1ZXMuIFRoZSBwcm9ncmVzcyBiYXIgZG9lcyBhbGwgcGVyY2VudGFnIGNhbGN1bGF0aW9ucyAqL1xuICBtYXhWYWx1ZTogbnVtYmVyO1xuICAvKiogVGhlIHZhbHVlcyBhbHJlYWR5IHByb2dyZXNzZWQuIFBvc3NpYmxlIFZhbHVlc1ZhcmlhbnRzIGFyZSB1c2VkIHRvIGRpc3BsYXkgcHJvZ3Jlc3MgaW4gYSBkaWZmZXJlbnQgY29sb3IuXG4gICAqIFZhcmlhbnRzIGFyZTpcbiAgICogc3VjY2VzcyA9PiBncmVlbjtcbiAgICogd2FybmluZyA9PiB5ZWxsb3c7XG4gICAqIGFsZXJ0ID0+IHJlZCAqL1xuICB2YWx1ZXM6IFBhcnRpYWw8UmVjb3JkPFZhbHVlc1ZhcmlhbnQsIFZhbHVlPj47XG4gIHNxdWFyZUNvcm5lcnM/OiBib29sZWFuO1xuICB3ZWlnaHQ/OiBQcm9ncmVzc0JhcldlaWdodDtcbiAgcHJpdmF0ZVByb3BzPzogU2VnbWVudGVkUHJvZ3Jlc3NCYXJQcml2YXRlUHJvcHM7XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xufTtcblxudHlwZSBTZWdtZW50ZWRQcm9ncmVzc0JhclByaXZhdGVQcm9wcyA9IHtcbiAgbW9ub2Nocm9tZT86IGJvb2xlYW47XG59O1xuXG50eXBlIFNlZ21lbnRQcm9wcyA9IHtcbiAgc3R5bGVWYXJpYW50OiBTdHlsZVZhcmlhbnQ7XG4gIHBlcmNlbnRhZ2U6IG51bWJlcjtcbiAgbW9ub2Nocm9tZTogYm9vbGVhbjtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG59O1xuXG5jb25zdCBnZXRCYWNrZ3JvdW5kQ29sb3IgPSAoXG4gIHRoZW1lOiBUaGVtZSxcbiAgc3R5bGU6IFN0eWxlVmFyaWFudCxcbiAgbW9ub2Nocm9tZTogYm9vbGVhblxuKSA9PiB7XG4gIGNvbnN0IG1vbm9jaHJvbWVDb2xvciA9IHRoZW1lLnZhbHVlcy5jb2xvci5zZWdtZW50ZWRQcm9ncmVzc0Jhci5tb25vY2hyb21lO1xuICBzd2l0Y2ggKHN0eWxlKSB7XG4gICAgY2FzZSBcInN1Y2Nlc3NcIjpcbiAgICAgIHJldHVybiBtb25vY2hyb21lXG4gICAgICAgID8gbW9ub2Nocm9tZUNvbG9yXG4gICAgICAgIDogdGhlbWUudmFsdWVzLmNvbG9yLnNlZ21lbnRlZFByb2dyZXNzQmFyLnN1Y2Nlc3M7XG4gICAgY2FzZSBcIndhcm5pbmdcIjpcbiAgICAgIHJldHVybiBtb25vY2hyb21lXG4gICAgICAgID8gbW9ub2Nocm9tZUNvbG9yXG4gICAgICAgIDogdGhlbWUudmFsdWVzLmNvbG9yLnNlZ21lbnRlZFByb2dyZXNzQmFyLndhcm5pbmc7XG4gICAgY2FzZSBcImFsZXJ0XCI6XG4gICAgICByZXR1cm4gbW9ub2Nocm9tZVxuICAgICAgICA/IG1vbm9jaHJvbWVDb2xvclxuICAgICAgICA6IHRoZW1lLnZhbHVlcy5jb2xvci5zZWdtZW50ZWRQcm9ncmVzc0Jhci5hbGVydDtcbiAgICBjYXNlIFwiaW5Qcm9ncmVzc1wiOlxuICAgICAgcmV0dXJuIHRoZW1lLnZhbHVlcy5jb2xvci5zZWdtZW50ZWRQcm9ncmVzc0Jhci5pblByb2dyZXNzO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gdGhlbWUudmFsdWVzLmNvbG9yLmJvcmRlci5zZWNvbmRhcnkuZGVmYXVsdDtcbiAgfVxufTtcblxuY29uc3QgU3R5bGVkU2VnbWVudGVkUHJvZ3Jlc3NCYXIgPSBzdHlsZWQuZGl2PFxuICBQYXJ0aWFsPFNlZ21lbnRlZFByb2dyZXNzQmFyUHJvcHM+XG4+KCh7IHRoZW1lLCBzcXVhcmVDb3JuZXJzLCB3ZWlnaHQgfSkgPT4gKHtcbiAgd2lkdGg6IFwiMTAwJVwiLFxuICBkaXNwbGF5OiBcImZsZXhcIixcbiAgZmxleERpcmVjdGlvbjogXCJyb3dcIixcbiAgYm9yZGVyUmFkaXVzOiBzcXVhcmVDb3JuZXJzID8gMCA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmJvcmRlclJhZGl1cy54cyxcbiAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG4gIGhlaWdodDpcbiAgICB3ZWlnaHQgPT09IFwidGhpblwiXG4gICAgICA/IHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHhzXG4gICAgICA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHMsXG59KSk7XG5cbmNvbnN0IFN0eWxlZFNlZ21lbnQgPSBzdHlsZWQuZGl2PFBhcnRpYWw8U2VnbWVudFByb3BzPj4oXG4gICh7IHRoZW1lLCBzdHlsZVZhcmlhbnQsIHBlcmNlbnRhZ2UsIG1vbm9jaHJvbWUgfSkgPT4gKHtcbiAgICBoZWlnaHQ6IFwiMTAwJVwiLFxuICAgIGJhY2tncm91bmRDb2xvcjogZ2V0QmFja2dyb3VuZENvbG9yKHRoZW1lLCBzdHlsZVZhcmlhbnQsIG1vbm9jaHJvbWUpLFxuICAgIHdpZHRoOiBgJHtwZXJjZW50YWdlfSVgLFxuICB9KVxuKTtcblxuZXhwb3J0IGZ1bmN0aW9uIFNlZ21lbnRlZFByb2dyZXNzQmFyKHtcbiAgbWF4VmFsdWUsXG4gIHZhbHVlcyxcbiAgd2VpZ2h0ID0gXCJmYXRcIixcbiAgc3F1YXJlQ29ybmVycyA9IGZhbHNlLFxuICBwcml2YXRlUHJvcHM6IHsgbW9ub2Nocm9tZSB9ID0geyBtb25vY2hyb21lOiBmYWxzZSB9LFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IFNlZ21lbnRlZFByb2dyZXNzQmFyUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCB7IHNhbml0aXplZE1heFZhbHVlLCBzYW5pdGl6ZWRWYWx1ZXMgfSA9IHNhbml0aXplSW5wdXRWYWx1ZXMoXG4gICAgbWF4VmFsdWUsXG4gICAgdmFsdWVzXG4gICk7XG5cbiAgY29uc3QgcGVyY2VudGFnZXM6IHtcbiAgICBwZXJjZW50YWdlOiBudW1iZXI7XG4gICAgc3R5bGU6IFN0eWxlVmFyaWFudDtcbiAgfVtdID0gZ2V0UGVyY2VudGFnZXNGb3JWYXJpYW50cyhzYW5pdGl6ZWRNYXhWYWx1ZSwgc2FuaXRpemVkVmFsdWVzKTtcblxuICByZXR1cm4gKFxuICAgIDxTdHlsZWRTZWdtZW50ZWRQcm9ncmVzc0JhclxuICAgICAgZGF0YS1lMmUtdGVzdC1pZD17ZGF0YUUyZVRlc3RJZH1cbiAgICAgIGRhdGEtZHMtaWQ9XCJTZWdtZW50ZWRQcm9ncmVzc0JhclwiXG4gICAgICBzcXVhcmVDb3JuZXJzPXtzcXVhcmVDb3JuZXJzfVxuICAgICAgd2VpZ2h0PXt3ZWlnaHR9XG4gICAgPlxuICAgICAge3BlcmNlbnRhZ2VzLm1hcCgoeyBwZXJjZW50YWdlLCBzdHlsZSB9KSA9PiAoXG4gICAgICAgIDxTdHlsZWRTZWdtZW50XG4gICAgICAgICAga2V5PXtzdHlsZX1cbiAgICAgICAgICBkYXRhLWUyZS10ZXN0LWlkPXtzdHlsZSBhcyBzdHJpbmd9XG4gICAgICAgICAgc3R5bGVWYXJpYW50PXtzdHlsZX1cbiAgICAgICAgICBtb25vY2hyb21lPXttb25vY2hyb21lfVxuICAgICAgICAgIHBlcmNlbnRhZ2U9e3BlcmNlbnRhZ2V9XG4gICAgICAgIC8+XG4gICAgICApKX1cbiAgICA8L1N0eWxlZFNlZ21lbnRlZFByb2dyZXNzQmFyPlxuICApO1xufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXNFbUMifQ== */"),StyledSegment=styled("div",{target:"e1lixuvp1",label:"StyledSegment"})(({theme,styleVariant,percentage,monochrome})=>({height:"100%",backgroundColor:getBackgroundColor(theme,styleVariant,monochrome),width:`${percentage}%`}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvU2VnbWVudGVkUHJvZ3Jlc3NCYXIvU2VnbWVudGVkUHJvZ3Jlc3NCYXIudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9TZWdtZW50ZWRQcm9ncmVzc0Jhci9TZWdtZW50ZWRQcm9ncmVzc0Jhci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLWN5Y2xlXG5pbXBvcnQge1xuICBnZXRQZXJjZW50YWdlc0ZvclZhcmlhbnRzLFxuICBzYW5pdGl6ZUlucHV0VmFsdWVzLFxufSBmcm9tIFwiLi9TZWdtZW50ZWRQcm9ncmVzc0JhclV0aWxcIjtcblxuZXhwb3J0IHR5cGUgVmFsdWVzVmFyaWFudCA9IFwic3VjY2Vzc1wiIHwgXCJ3YXJuaW5nXCIgfCBcImFsZXJ0XCI7XG5cbmV4cG9ydCB0eXBlIFN0eWxlVmFyaWFudCA9IFZhbHVlc1ZhcmlhbnQgfCBcImluUHJvZ3Jlc3NcIjtcblxuZXhwb3J0IHR5cGUgVmFsdWUgPSBudW1iZXI7XG5cbmV4cG9ydCB0eXBlIFByb2dyZXNzQmFyV2VpZ2h0ID0gXCJ0aGluXCIgfCBcImZhdFwiO1xuXG5leHBvcnQgdHlwZSBTZWdtZW50ZWRQcm9ncmVzc0JhclByb3BzID0ge1xuICAvKiogVGhlIHZhbHVlIGZvciAxMDAlIHByb2dyZXNzLiBDb25zdW1lciBkb2VzIG5vdCBuZWVkIHRvIGRvIHBlcmNlbnRhZ2UgY2FsY3VsYXRpb24uXG4gICAqIEp1c3QgcGFzcyB0aGlzIG51bWJlciBhbmQgc29tZSB2YWx1ZXMuIFRoZSBwcm9ncmVzcyBiYXIgZG9lcyBhbGwgcGVyY2VudGFnIGNhbGN1bGF0aW9ucyAqL1xuICBtYXhWYWx1ZTogbnVtYmVyO1xuICAvKiogVGhlIHZhbHVlcyBhbHJlYWR5IHByb2dyZXNzZWQuIFBvc3NpYmxlIFZhbHVlc1ZhcmlhbnRzIGFyZSB1c2VkIHRvIGRpc3BsYXkgcHJvZ3Jlc3MgaW4gYSBkaWZmZXJlbnQgY29sb3IuXG4gICAqIFZhcmlhbnRzIGFyZTpcbiAgICogc3VjY2VzcyA9PiBncmVlbjtcbiAgICogd2FybmluZyA9PiB5ZWxsb3c7XG4gICAqIGFsZXJ0ID0+IHJlZCAqL1xuICB2YWx1ZXM6IFBhcnRpYWw8UmVjb3JkPFZhbHVlc1ZhcmlhbnQsIFZhbHVlPj47XG4gIHNxdWFyZUNvcm5lcnM/OiBib29sZWFuO1xuICB3ZWlnaHQ/OiBQcm9ncmVzc0JhcldlaWdodDtcbiAgcHJpdmF0ZVByb3BzPzogU2VnbWVudGVkUHJvZ3Jlc3NCYXJQcml2YXRlUHJvcHM7XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xufTtcblxudHlwZSBTZWdtZW50ZWRQcm9ncmVzc0JhclByaXZhdGVQcm9wcyA9IHtcbiAgbW9ub2Nocm9tZT86IGJvb2xlYW47XG59O1xuXG50eXBlIFNlZ21lbnRQcm9wcyA9IHtcbiAgc3R5bGVWYXJpYW50OiBTdHlsZVZhcmlhbnQ7XG4gIHBlcmNlbnRhZ2U6IG51bWJlcjtcbiAgbW9ub2Nocm9tZTogYm9vbGVhbjtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG59O1xuXG5jb25zdCBnZXRCYWNrZ3JvdW5kQ29sb3IgPSAoXG4gIHRoZW1lOiBUaGVtZSxcbiAgc3R5bGU6IFN0eWxlVmFyaWFudCxcbiAgbW9ub2Nocm9tZTogYm9vbGVhblxuKSA9PiB7XG4gIGNvbnN0IG1vbm9jaHJvbWVDb2xvciA9IHRoZW1lLnZhbHVlcy5jb2xvci5zZWdtZW50ZWRQcm9ncmVzc0Jhci5tb25vY2hyb21lO1xuICBzd2l0Y2ggKHN0eWxlKSB7XG4gICAgY2FzZSBcInN1Y2Nlc3NcIjpcbiAgICAgIHJldHVybiBtb25vY2hyb21lXG4gICAgICAgID8gbW9ub2Nocm9tZUNvbG9yXG4gICAgICAgIDogdGhlbWUudmFsdWVzLmNvbG9yLnNlZ21lbnRlZFByb2dyZXNzQmFyLnN1Y2Nlc3M7XG4gICAgY2FzZSBcIndhcm5pbmdcIjpcbiAgICAgIHJldHVybiBtb25vY2hyb21lXG4gICAgICAgID8gbW9ub2Nocm9tZUNvbG9yXG4gICAgICAgIDogdGhlbWUudmFsdWVzLmNvbG9yLnNlZ21lbnRlZFByb2dyZXNzQmFyLndhcm5pbmc7XG4gICAgY2FzZSBcImFsZXJ0XCI6XG4gICAgICByZXR1cm4gbW9ub2Nocm9tZVxuICAgICAgICA/IG1vbm9jaHJvbWVDb2xvclxuICAgICAgICA6IHRoZW1lLnZhbHVlcy5jb2xvci5zZWdtZW50ZWRQcm9ncmVzc0Jhci5hbGVydDtcbiAgICBjYXNlIFwiaW5Qcm9ncmVzc1wiOlxuICAgICAgcmV0dXJuIHRoZW1lLnZhbHVlcy5jb2xvci5zZWdtZW50ZWRQcm9ncmVzc0Jhci5pblByb2dyZXNzO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gdGhlbWUudmFsdWVzLmNvbG9yLmJvcmRlci5zZWNvbmRhcnkuZGVmYXVsdDtcbiAgfVxufTtcblxuY29uc3QgU3R5bGVkU2VnbWVudGVkUHJvZ3Jlc3NCYXIgPSBzdHlsZWQuZGl2PFxuICBQYXJ0aWFsPFNlZ21lbnRlZFByb2dyZXNzQmFyUHJvcHM+XG4+KCh7IHRoZW1lLCBzcXVhcmVDb3JuZXJzLCB3ZWlnaHQgfSkgPT4gKHtcbiAgd2lkdGg6IFwiMTAwJVwiLFxuICBkaXNwbGF5OiBcImZsZXhcIixcbiAgZmxleERpcmVjdGlvbjogXCJyb3dcIixcbiAgYm9yZGVyUmFkaXVzOiBzcXVhcmVDb3JuZXJzID8gMCA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmJvcmRlclJhZGl1cy54cyxcbiAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG4gIGhlaWdodDpcbiAgICB3ZWlnaHQgPT09IFwidGhpblwiXG4gICAgICA/IHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHhzXG4gICAgICA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHMsXG59KSk7XG5cbmNvbnN0IFN0eWxlZFNlZ21lbnQgPSBzdHlsZWQuZGl2PFBhcnRpYWw8U2VnbWVudFByb3BzPj4oXG4gICh7IHRoZW1lLCBzdHlsZVZhcmlhbnQsIHBlcmNlbnRhZ2UsIG1vbm9jaHJvbWUgfSkgPT4gKHtcbiAgICBoZWlnaHQ6IFwiMTAwJVwiLFxuICAgIGJhY2tncm91bmRDb2xvcjogZ2V0QmFja2dyb3VuZENvbG9yKHRoZW1lLCBzdHlsZVZhcmlhbnQsIG1vbm9jaHJvbWUpLFxuICAgIHdpZHRoOiBgJHtwZXJjZW50YWdlfSVgLFxuICB9KVxuKTtcblxuZXhwb3J0IGZ1bmN0aW9uIFNlZ21lbnRlZFByb2dyZXNzQmFyKHtcbiAgbWF4VmFsdWUsXG4gIHZhbHVlcyxcbiAgd2VpZ2h0ID0gXCJmYXRcIixcbiAgc3F1YXJlQ29ybmVycyA9IGZhbHNlLFxuICBwcml2YXRlUHJvcHM6IHsgbW9ub2Nocm9tZSB9ID0geyBtb25vY2hyb21lOiBmYWxzZSB9LFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IFNlZ21lbnRlZFByb2dyZXNzQmFyUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCB7IHNhbml0aXplZE1heFZhbHVlLCBzYW5pdGl6ZWRWYWx1ZXMgfSA9IHNhbml0aXplSW5wdXRWYWx1ZXMoXG4gICAgbWF4VmFsdWUsXG4gICAgdmFsdWVzXG4gICk7XG5cbiAgY29uc3QgcGVyY2VudGFnZXM6IHtcbiAgICBwZXJjZW50YWdlOiBudW1iZXI7XG4gICAgc3R5bGU6IFN0eWxlVmFyaWFudDtcbiAgfVtdID0gZ2V0UGVyY2VudGFnZXNGb3JWYXJpYW50cyhzYW5pdGl6ZWRNYXhWYWx1ZSwgc2FuaXRpemVkVmFsdWVzKTtcblxuICByZXR1cm4gKFxuICAgIDxTdHlsZWRTZWdtZW50ZWRQcm9ncmVzc0JhclxuICAgICAgZGF0YS1lMmUtdGVzdC1pZD17ZGF0YUUyZVRlc3RJZH1cbiAgICAgIGRhdGEtZHMtaWQ9XCJTZWdtZW50ZWRQcm9ncmVzc0JhclwiXG4gICAgICBzcXVhcmVDb3JuZXJzPXtzcXVhcmVDb3JuZXJzfVxuICAgICAgd2VpZ2h0PXt3ZWlnaHR9XG4gICAgPlxuICAgICAge3BlcmNlbnRhZ2VzLm1hcCgoeyBwZXJjZW50YWdlLCBzdHlsZSB9KSA9PiAoXG4gICAgICAgIDxTdHlsZWRTZWdtZW50XG4gICAgICAgICAga2V5PXtzdHlsZX1cbiAgICAgICAgICBkYXRhLWUyZS10ZXN0LWlkPXtzdHlsZSBhcyBzdHJpbmd9XG4gICAgICAgICAgc3R5bGVWYXJpYW50PXtzdHlsZX1cbiAgICAgICAgICBtb25vY2hyb21lPXttb25vY2hyb21lfVxuICAgICAgICAgIHBlcmNlbnRhZ2U9e3BlcmNlbnRhZ2V9XG4gICAgICAgIC8+XG4gICAgICApKX1cbiAgICA8L1N0eWxlZFNlZ21lbnRlZFByb2dyZXNzQmFyPlxuICApO1xufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW9Gc0IifQ== */");export function SegmentedProgressBar({maxValue,values,weight="fat",squareCorners=!1,privateProps:{monochrome}={monochrome:!1},"data-e2e-test-id":dataE2eTestId}){let{sanitizedMaxValue,sanitizedValues}=sanitizeInputValues(maxValue,values),percentages=getPercentagesForVariants(sanitizedMaxValue,sanitizedValues);return React.createElement(StyledSegmentedProgressBar,{"data-e2e-test-id":dataE2eTestId,"data-ds-id":"SegmentedProgressBar",squareCorners:squareCorners,weight:weight},percentages.map(({percentage,style})=>React.createElement(StyledSegment,{key:style,"data-e2e-test-id":style,styleVariant:style,monochrome:monochrome,percentage:percentage})))}
|
|
1
|
+
import React from"react";import styled from"@emotion/styled";import{getPercentagesForVariants,getTotalFilledValue,sanitizeInputValues}from"./SegmentedProgressBarUtil";let getBackgroundColor=(theme,style,monochrome)=>{let monochromeColor=theme.values.color.segmentedProgressBar.monochrome;switch(style){case"success":return monochrome?monochromeColor:theme.values.color.segmentedProgressBar.success;case"warning":return monochrome?monochromeColor:theme.values.color.segmentedProgressBar.warning;case"alert":return monochrome?monochromeColor:theme.values.color.segmentedProgressBar.alert;case"inProgress":return theme.values.color.segmentedProgressBar.inProgress;default:return theme.values.color.border.secondary.default}},StyledSegmentedProgressBar=styled("div",{target:"e18h6xgi0",label:"StyledSegmentedProgressBar"})(({theme,squareCorners,weight})=>({width:"100%",display:"flex",flexDirection:"row",borderRadius:squareCorners?0:theme.variables.size.borderRadius.xs,overflow:"hidden",height:"thin"===weight?theme.variables.size.spacing.xxs:theme.variables.size.spacing.xs}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvU2VnbWVudGVkUHJvZ3Jlc3NCYXIvU2VnbWVudGVkUHJvZ3Jlc3NCYXIudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9TZWdtZW50ZWRQcm9ncmVzc0Jhci9TZWdtZW50ZWRQcm9ncmVzc0Jhci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLWN5Y2xlXG5pbXBvcnQge1xuICBnZXRQZXJjZW50YWdlc0ZvclZhcmlhbnRzLFxuICBnZXRUb3RhbEZpbGxlZFZhbHVlLFxuICBzYW5pdGl6ZUlucHV0VmFsdWVzLFxufSBmcm9tIFwiLi9TZWdtZW50ZWRQcm9ncmVzc0JhclV0aWxcIjtcblxuZXhwb3J0IHR5cGUgVmFsdWVzVmFyaWFudCA9IFwic3VjY2Vzc1wiIHwgXCJ3YXJuaW5nXCIgfCBcImFsZXJ0XCI7XG5cbmV4cG9ydCB0eXBlIFN0eWxlVmFyaWFudCA9IFZhbHVlc1ZhcmlhbnQgfCBcImluUHJvZ3Jlc3NcIjtcblxuZXhwb3J0IHR5cGUgVmFsdWUgPSBudW1iZXI7XG5cbmV4cG9ydCB0eXBlIFByb2dyZXNzQmFyV2VpZ2h0ID0gXCJ0aGluXCIgfCBcImZhdFwiO1xuXG5leHBvcnQgdHlwZSBTZWdtZW50ZWRQcm9ncmVzc0JhclByb3BzID0ge1xuICAvKiogVGhlIHZhbHVlIGZvciAxMDAlIHByb2dyZXNzLiBDb25zdW1lciBkb2VzIG5vdCBuZWVkIHRvIGRvIHBlcmNlbnRhZ2UgY2FsY3VsYXRpb24uXG4gICAqIEp1c3QgcGFzcyB0aGlzIG51bWJlciBhbmQgc29tZSB2YWx1ZXMuIFRoZSBwcm9ncmVzcyBiYXIgZG9lcyBhbGwgcGVyY2VudGFnIGNhbGN1bGF0aW9ucyAqL1xuICBtYXhWYWx1ZTogbnVtYmVyO1xuICAvKiogVGhlIHZhbHVlcyBhbHJlYWR5IHByb2dyZXNzZWQuIFBvc3NpYmxlIFZhbHVlc1ZhcmlhbnRzIGFyZSB1c2VkIHRvIGRpc3BsYXkgcHJvZ3Jlc3MgaW4gYSBkaWZmZXJlbnQgY29sb3IuXG4gICAqIFZhcmlhbnRzIGFyZTpcbiAgICogc3VjY2VzcyA9PiBncmVlbjtcbiAgICogd2FybmluZyA9PiB5ZWxsb3c7XG4gICAqIGFsZXJ0ID0+IHJlZCAqL1xuICB2YWx1ZXM6IFBhcnRpYWw8UmVjb3JkPFZhbHVlc1ZhcmlhbnQsIFZhbHVlPj47XG4gIHNxdWFyZUNvcm5lcnM/OiBib29sZWFuO1xuICB3ZWlnaHQ/OiBQcm9ncmVzc0JhcldlaWdodDtcbiAgcHJpdmF0ZVByb3BzPzogU2VnbWVudGVkUHJvZ3Jlc3NCYXJQcml2YXRlUHJvcHM7XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xufTtcblxudHlwZSBTZWdtZW50ZWRQcm9ncmVzc0JhclByaXZhdGVQcm9wcyA9IHtcbiAgbW9ub2Nocm9tZT86IGJvb2xlYW47XG59O1xuXG50eXBlIFNlZ21lbnRQcm9wcyA9IHtcbiAgc3R5bGVWYXJpYW50OiBTdHlsZVZhcmlhbnQ7XG4gIHBlcmNlbnRhZ2U6IG51bWJlcjtcbiAgbW9ub2Nocm9tZTogYm9vbGVhbjtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG59O1xuXG5jb25zdCBnZXRCYWNrZ3JvdW5kQ29sb3IgPSAoXG4gIHRoZW1lOiBUaGVtZSxcbiAgc3R5bGU6IFN0eWxlVmFyaWFudCxcbiAgbW9ub2Nocm9tZTogYm9vbGVhblxuKSA9PiB7XG4gIGNvbnN0IG1vbm9jaHJvbWVDb2xvciA9IHRoZW1lLnZhbHVlcy5jb2xvci5zZWdtZW50ZWRQcm9ncmVzc0Jhci5tb25vY2hyb21lO1xuICBzd2l0Y2ggKHN0eWxlKSB7XG4gICAgY2FzZSBcInN1Y2Nlc3NcIjpcbiAgICAgIHJldHVybiBtb25vY2hyb21lXG4gICAgICAgID8gbW9ub2Nocm9tZUNvbG9yXG4gICAgICAgIDogdGhlbWUudmFsdWVzLmNvbG9yLnNlZ21lbnRlZFByb2dyZXNzQmFyLnN1Y2Nlc3M7XG4gICAgY2FzZSBcIndhcm5pbmdcIjpcbiAgICAgIHJldHVybiBtb25vY2hyb21lXG4gICAgICAgID8gbW9ub2Nocm9tZUNvbG9yXG4gICAgICAgIDogdGhlbWUudmFsdWVzLmNvbG9yLnNlZ21lbnRlZFByb2dyZXNzQmFyLndhcm5pbmc7XG4gICAgY2FzZSBcImFsZXJ0XCI6XG4gICAgICByZXR1cm4gbW9ub2Nocm9tZVxuICAgICAgICA/IG1vbm9jaHJvbWVDb2xvclxuICAgICAgICA6IHRoZW1lLnZhbHVlcy5jb2xvci5zZWdtZW50ZWRQcm9ncmVzc0Jhci5hbGVydDtcbiAgICBjYXNlIFwiaW5Qcm9ncmVzc1wiOlxuICAgICAgcmV0dXJuIHRoZW1lLnZhbHVlcy5jb2xvci5zZWdtZW50ZWRQcm9ncmVzc0Jhci5pblByb2dyZXNzO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gdGhlbWUudmFsdWVzLmNvbG9yLmJvcmRlci5zZWNvbmRhcnkuZGVmYXVsdDtcbiAgfVxufTtcblxuY29uc3QgU3R5bGVkU2VnbWVudGVkUHJvZ3Jlc3NCYXIgPSBzdHlsZWQuZGl2PFxuICBQYXJ0aWFsPFNlZ21lbnRlZFByb2dyZXNzQmFyUHJvcHM+XG4+KCh7IHRoZW1lLCBzcXVhcmVDb3JuZXJzLCB3ZWlnaHQgfSkgPT4gKHtcbiAgd2lkdGg6IFwiMTAwJVwiLFxuICBkaXNwbGF5OiBcImZsZXhcIixcbiAgZmxleERpcmVjdGlvbjogXCJyb3dcIixcbiAgYm9yZGVyUmFkaXVzOiBzcXVhcmVDb3JuZXJzID8gMCA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmJvcmRlclJhZGl1cy54cyxcbiAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG4gIGhlaWdodDpcbiAgICB3ZWlnaHQgPT09IFwidGhpblwiXG4gICAgICA/IHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHhzXG4gICAgICA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHMsXG59KSk7XG5cbmNvbnN0IFN0eWxlZFNlZ21lbnQgPSBzdHlsZWQuZGl2PFBhcnRpYWw8U2VnbWVudFByb3BzPj4oXG4gICh7IHRoZW1lLCBzdHlsZVZhcmlhbnQsIHBlcmNlbnRhZ2UsIG1vbm9jaHJvbWUgfSkgPT4gKHtcbiAgICBoZWlnaHQ6IFwiMTAwJVwiLFxuICAgIGJhY2tncm91bmRDb2xvcjogZ2V0QmFja2dyb3VuZENvbG9yKHRoZW1lLCBzdHlsZVZhcmlhbnQsIG1vbm9jaHJvbWUpLFxuICAgIHdpZHRoOiBgJHtwZXJjZW50YWdlfSVgLFxuICB9KVxuKTtcblxuY29uc3QgU3R5bGVkUHJvZ3Jlc3NFbGVtZW50ID0gc3R5bGVkLnByb2dyZXNzKHtcbiAgaGVpZ2h0OiAxLFxuICB3aWR0aDogMSxcbiAgbWFyZ2luOiAtMSxcbiAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG4gIHBhZGRpbmc6IDAsXG59KTtcblxuZXhwb3J0IGZ1bmN0aW9uIFNlZ21lbnRlZFByb2dyZXNzQmFyKHtcbiAgbWF4VmFsdWUsXG4gIHZhbHVlcyxcbiAgd2VpZ2h0ID0gXCJmYXRcIixcbiAgc3F1YXJlQ29ybmVycyA9IGZhbHNlLFxuICBwcml2YXRlUHJvcHM6IHsgbW9ub2Nocm9tZSB9ID0geyBtb25vY2hyb21lOiBmYWxzZSB9LFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IFNlZ21lbnRlZFByb2dyZXNzQmFyUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCB7IHNhbml0aXplZE1heFZhbHVlLCBzYW5pdGl6ZWRWYWx1ZXMgfSA9IHNhbml0aXplSW5wdXRWYWx1ZXMoXG4gICAgbWF4VmFsdWUsXG4gICAgdmFsdWVzXG4gICk7XG5cbiAgY29uc3QgcGVyY2VudGFnZXM6IHtcbiAgICBwZXJjZW50YWdlOiBudW1iZXI7XG4gICAgc3R5bGU6IFN0eWxlVmFyaWFudDtcbiAgfVtdID0gZ2V0UGVyY2VudGFnZXNGb3JWYXJpYW50cyhzYW5pdGl6ZWRNYXhWYWx1ZSwgc2FuaXRpemVkVmFsdWVzKTtcblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8U3R5bGVkU2VnbWVudGVkUHJvZ3Jlc3NCYXJcbiAgICAgICAgZGF0YS1lMmUtdGVzdC1pZD17ZGF0YUUyZVRlc3RJZH1cbiAgICAgICAgZGF0YS1kcy1pZD1cIlNlZ21lbnRlZFByb2dyZXNzQmFyXCJcbiAgICAgICAgc3F1YXJlQ29ybmVycz17c3F1YXJlQ29ybmVyc31cbiAgICAgICAgd2VpZ2h0PXt3ZWlnaHR9XG4gICAgICA+XG4gICAgICAgIDxTdHlsZWRQcm9ncmVzc0VsZW1lbnRcbiAgICAgICAgICBtYXg9e3Nhbml0aXplZE1heFZhbHVlfVxuICAgICAgICAgIHZhbHVlPXtnZXRUb3RhbEZpbGxlZFZhbHVlKHNhbml0aXplZFZhbHVlcyl9XG4gICAgICAgIC8+XG4gICAgICAgIHtwZXJjZW50YWdlcy5tYXAoKHsgcGVyY2VudGFnZSwgc3R5bGUgfSkgPT4gKFxuICAgICAgICAgIDxTdHlsZWRTZWdtZW50XG4gICAgICAgICAgICBrZXk9e3N0eWxlfVxuICAgICAgICAgICAgZGF0YS1lMmUtdGVzdC1pZD17c3R5bGUgYXMgc3RyaW5nfVxuICAgICAgICAgICAgc3R5bGVWYXJpYW50PXtzdHlsZX1cbiAgICAgICAgICAgIG1vbm9jaHJvbWU9e21vbm9jaHJvbWV9XG4gICAgICAgICAgICBwZXJjZW50YWdlPXtwZXJjZW50YWdlfVxuICAgICAgICAgICAgYXJpYS1oaWRkZW5cbiAgICAgICAgICAvPlxuICAgICAgICApKX1cbiAgICAgIDwvU3R5bGVkU2VnbWVudGVkUHJvZ3Jlc3NCYXI+XG4gICAgPC8+XG4gICk7XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBdUVtQyJ9 */"),StyledSegment=styled("div",{target:"e18h6xgi1",label:"StyledSegment"})(({theme,styleVariant,percentage,monochrome})=>({height:"100%",backgroundColor:getBackgroundColor(theme,styleVariant,monochrome),width:`${percentage}%`}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvU2VnbWVudGVkUHJvZ3Jlc3NCYXIvU2VnbWVudGVkUHJvZ3Jlc3NCYXIudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9TZWdtZW50ZWRQcm9ncmVzc0Jhci9TZWdtZW50ZWRQcm9ncmVzc0Jhci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLWN5Y2xlXG5pbXBvcnQge1xuICBnZXRQZXJjZW50YWdlc0ZvclZhcmlhbnRzLFxuICBnZXRUb3RhbEZpbGxlZFZhbHVlLFxuICBzYW5pdGl6ZUlucHV0VmFsdWVzLFxufSBmcm9tIFwiLi9TZWdtZW50ZWRQcm9ncmVzc0JhclV0aWxcIjtcblxuZXhwb3J0IHR5cGUgVmFsdWVzVmFyaWFudCA9IFwic3VjY2Vzc1wiIHwgXCJ3YXJuaW5nXCIgfCBcImFsZXJ0XCI7XG5cbmV4cG9ydCB0eXBlIFN0eWxlVmFyaWFudCA9IFZhbHVlc1ZhcmlhbnQgfCBcImluUHJvZ3Jlc3NcIjtcblxuZXhwb3J0IHR5cGUgVmFsdWUgPSBudW1iZXI7XG5cbmV4cG9ydCB0eXBlIFByb2dyZXNzQmFyV2VpZ2h0ID0gXCJ0aGluXCIgfCBcImZhdFwiO1xuXG5leHBvcnQgdHlwZSBTZWdtZW50ZWRQcm9ncmVzc0JhclByb3BzID0ge1xuICAvKiogVGhlIHZhbHVlIGZvciAxMDAlIHByb2dyZXNzLiBDb25zdW1lciBkb2VzIG5vdCBuZWVkIHRvIGRvIHBlcmNlbnRhZ2UgY2FsY3VsYXRpb24uXG4gICAqIEp1c3QgcGFzcyB0aGlzIG51bWJlciBhbmQgc29tZSB2YWx1ZXMuIFRoZSBwcm9ncmVzcyBiYXIgZG9lcyBhbGwgcGVyY2VudGFnIGNhbGN1bGF0aW9ucyAqL1xuICBtYXhWYWx1ZTogbnVtYmVyO1xuICAvKiogVGhlIHZhbHVlcyBhbHJlYWR5IHByb2dyZXNzZWQuIFBvc3NpYmxlIFZhbHVlc1ZhcmlhbnRzIGFyZSB1c2VkIHRvIGRpc3BsYXkgcHJvZ3Jlc3MgaW4gYSBkaWZmZXJlbnQgY29sb3IuXG4gICAqIFZhcmlhbnRzIGFyZTpcbiAgICogc3VjY2VzcyA9PiBncmVlbjtcbiAgICogd2FybmluZyA9PiB5ZWxsb3c7XG4gICAqIGFsZXJ0ID0+IHJlZCAqL1xuICB2YWx1ZXM6IFBhcnRpYWw8UmVjb3JkPFZhbHVlc1ZhcmlhbnQsIFZhbHVlPj47XG4gIHNxdWFyZUNvcm5lcnM/OiBib29sZWFuO1xuICB3ZWlnaHQ/OiBQcm9ncmVzc0JhcldlaWdodDtcbiAgcHJpdmF0ZVByb3BzPzogU2VnbWVudGVkUHJvZ3Jlc3NCYXJQcml2YXRlUHJvcHM7XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xufTtcblxudHlwZSBTZWdtZW50ZWRQcm9ncmVzc0JhclByaXZhdGVQcm9wcyA9IHtcbiAgbW9ub2Nocm9tZT86IGJvb2xlYW47XG59O1xuXG50eXBlIFNlZ21lbnRQcm9wcyA9IHtcbiAgc3R5bGVWYXJpYW50OiBTdHlsZVZhcmlhbnQ7XG4gIHBlcmNlbnRhZ2U6IG51bWJlcjtcbiAgbW9ub2Nocm9tZTogYm9vbGVhbjtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG59O1xuXG5jb25zdCBnZXRCYWNrZ3JvdW5kQ29sb3IgPSAoXG4gIHRoZW1lOiBUaGVtZSxcbiAgc3R5bGU6IFN0eWxlVmFyaWFudCxcbiAgbW9ub2Nocm9tZTogYm9vbGVhblxuKSA9PiB7XG4gIGNvbnN0IG1vbm9jaHJvbWVDb2xvciA9IHRoZW1lLnZhbHVlcy5jb2xvci5zZWdtZW50ZWRQcm9ncmVzc0Jhci5tb25vY2hyb21lO1xuICBzd2l0Y2ggKHN0eWxlKSB7XG4gICAgY2FzZSBcInN1Y2Nlc3NcIjpcbiAgICAgIHJldHVybiBtb25vY2hyb21lXG4gICAgICAgID8gbW9ub2Nocm9tZUNvbG9yXG4gICAgICAgIDogdGhlbWUudmFsdWVzLmNvbG9yLnNlZ21lbnRlZFByb2dyZXNzQmFyLnN1Y2Nlc3M7XG4gICAgY2FzZSBcIndhcm5pbmdcIjpcbiAgICAgIHJldHVybiBtb25vY2hyb21lXG4gICAgICAgID8gbW9ub2Nocm9tZUNvbG9yXG4gICAgICAgIDogdGhlbWUudmFsdWVzLmNvbG9yLnNlZ21lbnRlZFByb2dyZXNzQmFyLndhcm5pbmc7XG4gICAgY2FzZSBcImFsZXJ0XCI6XG4gICAgICByZXR1cm4gbW9ub2Nocm9tZVxuICAgICAgICA/IG1vbm9jaHJvbWVDb2xvclxuICAgICAgICA6IHRoZW1lLnZhbHVlcy5jb2xvci5zZWdtZW50ZWRQcm9ncmVzc0Jhci5hbGVydDtcbiAgICBjYXNlIFwiaW5Qcm9ncmVzc1wiOlxuICAgICAgcmV0dXJuIHRoZW1lLnZhbHVlcy5jb2xvci5zZWdtZW50ZWRQcm9ncmVzc0Jhci5pblByb2dyZXNzO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gdGhlbWUudmFsdWVzLmNvbG9yLmJvcmRlci5zZWNvbmRhcnkuZGVmYXVsdDtcbiAgfVxufTtcblxuY29uc3QgU3R5bGVkU2VnbWVudGVkUHJvZ3Jlc3NCYXIgPSBzdHlsZWQuZGl2PFxuICBQYXJ0aWFsPFNlZ21lbnRlZFByb2dyZXNzQmFyUHJvcHM+XG4+KCh7IHRoZW1lLCBzcXVhcmVDb3JuZXJzLCB3ZWlnaHQgfSkgPT4gKHtcbiAgd2lkdGg6IFwiMTAwJVwiLFxuICBkaXNwbGF5OiBcImZsZXhcIixcbiAgZmxleERpcmVjdGlvbjogXCJyb3dcIixcbiAgYm9yZGVyUmFkaXVzOiBzcXVhcmVDb3JuZXJzID8gMCA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmJvcmRlclJhZGl1cy54cyxcbiAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG4gIGhlaWdodDpcbiAgICB3ZWlnaHQgPT09IFwidGhpblwiXG4gICAgICA/IHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHhzXG4gICAgICA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHMsXG59KSk7XG5cbmNvbnN0IFN0eWxlZFNlZ21lbnQgPSBzdHlsZWQuZGl2PFBhcnRpYWw8U2VnbWVudFByb3BzPj4oXG4gICh7IHRoZW1lLCBzdHlsZVZhcmlhbnQsIHBlcmNlbnRhZ2UsIG1vbm9jaHJvbWUgfSkgPT4gKHtcbiAgICBoZWlnaHQ6IFwiMTAwJVwiLFxuICAgIGJhY2tncm91bmRDb2xvcjogZ2V0QmFja2dyb3VuZENvbG9yKHRoZW1lLCBzdHlsZVZhcmlhbnQsIG1vbm9jaHJvbWUpLFxuICAgIHdpZHRoOiBgJHtwZXJjZW50YWdlfSVgLFxuICB9KVxuKTtcblxuY29uc3QgU3R5bGVkUHJvZ3Jlc3NFbGVtZW50ID0gc3R5bGVkLnByb2dyZXNzKHtcbiAgaGVpZ2h0OiAxLFxuICB3aWR0aDogMSxcbiAgbWFyZ2luOiAtMSxcbiAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG4gIHBhZGRpbmc6IDAsXG59KTtcblxuZXhwb3J0IGZ1bmN0aW9uIFNlZ21lbnRlZFByb2dyZXNzQmFyKHtcbiAgbWF4VmFsdWUsXG4gIHZhbHVlcyxcbiAgd2VpZ2h0ID0gXCJmYXRcIixcbiAgc3F1YXJlQ29ybmVycyA9IGZhbHNlLFxuICBwcml2YXRlUHJvcHM6IHsgbW9ub2Nocm9tZSB9ID0geyBtb25vY2hyb21lOiBmYWxzZSB9LFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IFNlZ21lbnRlZFByb2dyZXNzQmFyUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCB7IHNhbml0aXplZE1heFZhbHVlLCBzYW5pdGl6ZWRWYWx1ZXMgfSA9IHNhbml0aXplSW5wdXRWYWx1ZXMoXG4gICAgbWF4VmFsdWUsXG4gICAgdmFsdWVzXG4gICk7XG5cbiAgY29uc3QgcGVyY2VudGFnZXM6IHtcbiAgICBwZXJjZW50YWdlOiBudW1iZXI7XG4gICAgc3R5bGU6IFN0eWxlVmFyaWFudDtcbiAgfVtdID0gZ2V0UGVyY2VudGFnZXNGb3JWYXJpYW50cyhzYW5pdGl6ZWRNYXhWYWx1ZSwgc2FuaXRpemVkVmFsdWVzKTtcblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8U3R5bGVkU2VnbWVudGVkUHJvZ3Jlc3NCYXJcbiAgICAgICAgZGF0YS1lMmUtdGVzdC1pZD17ZGF0YUUyZVRlc3RJZH1cbiAgICAgICAgZGF0YS1kcy1pZD1cIlNlZ21lbnRlZFByb2dyZXNzQmFyXCJcbiAgICAgICAgc3F1YXJlQ29ybmVycz17c3F1YXJlQ29ybmVyc31cbiAgICAgICAgd2VpZ2h0PXt3ZWlnaHR9XG4gICAgICA+XG4gICAgICAgIDxTdHlsZWRQcm9ncmVzc0VsZW1lbnRcbiAgICAgICAgICBtYXg9e3Nhbml0aXplZE1heFZhbHVlfVxuICAgICAgICAgIHZhbHVlPXtnZXRUb3RhbEZpbGxlZFZhbHVlKHNhbml0aXplZFZhbHVlcyl9XG4gICAgICAgIC8+XG4gICAgICAgIHtwZXJjZW50YWdlcy5tYXAoKHsgcGVyY2VudGFnZSwgc3R5bGUgfSkgPT4gKFxuICAgICAgICAgIDxTdHlsZWRTZWdtZW50XG4gICAgICAgICAgICBrZXk9e3N0eWxlfVxuICAgICAgICAgICAgZGF0YS1lMmUtdGVzdC1pZD17c3R5bGUgYXMgc3RyaW5nfVxuICAgICAgICAgICAgc3R5bGVWYXJpYW50PXtzdHlsZX1cbiAgICAgICAgICAgIG1vbm9jaHJvbWU9e21vbm9jaHJvbWV9XG4gICAgICAgICAgICBwZXJjZW50YWdlPXtwZXJjZW50YWdlfVxuICAgICAgICAgICAgYXJpYS1oaWRkZW5cbiAgICAgICAgICAvPlxuICAgICAgICApKX1cbiAgICAgIDwvU3R5bGVkU2VnbWVudGVkUHJvZ3Jlc3NCYXI+XG4gICAgPC8+XG4gICk7XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBcUZzQiJ9 */"),StyledProgressElement=styled("progress",{target:"e18h6xgi2",label:"StyledProgressElement"})({height:1,width:1,margin:-1,overflow:"hidden",padding:0},"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvU2VnbWVudGVkUHJvZ3Jlc3NCYXIvU2VnbWVudGVkUHJvZ3Jlc3NCYXIudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9TZWdtZW50ZWRQcm9ncmVzc0Jhci9TZWdtZW50ZWRQcm9ncmVzc0Jhci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRoZW1lIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgaW1wb3J0L25vLWN5Y2xlXG5pbXBvcnQge1xuICBnZXRQZXJjZW50YWdlc0ZvclZhcmlhbnRzLFxuICBnZXRUb3RhbEZpbGxlZFZhbHVlLFxuICBzYW5pdGl6ZUlucHV0VmFsdWVzLFxufSBmcm9tIFwiLi9TZWdtZW50ZWRQcm9ncmVzc0JhclV0aWxcIjtcblxuZXhwb3J0IHR5cGUgVmFsdWVzVmFyaWFudCA9IFwic3VjY2Vzc1wiIHwgXCJ3YXJuaW5nXCIgfCBcImFsZXJ0XCI7XG5cbmV4cG9ydCB0eXBlIFN0eWxlVmFyaWFudCA9IFZhbHVlc1ZhcmlhbnQgfCBcImluUHJvZ3Jlc3NcIjtcblxuZXhwb3J0IHR5cGUgVmFsdWUgPSBudW1iZXI7XG5cbmV4cG9ydCB0eXBlIFByb2dyZXNzQmFyV2VpZ2h0ID0gXCJ0aGluXCIgfCBcImZhdFwiO1xuXG5leHBvcnQgdHlwZSBTZWdtZW50ZWRQcm9ncmVzc0JhclByb3BzID0ge1xuICAvKiogVGhlIHZhbHVlIGZvciAxMDAlIHByb2dyZXNzLiBDb25zdW1lciBkb2VzIG5vdCBuZWVkIHRvIGRvIHBlcmNlbnRhZ2UgY2FsY3VsYXRpb24uXG4gICAqIEp1c3QgcGFzcyB0aGlzIG51bWJlciBhbmQgc29tZSB2YWx1ZXMuIFRoZSBwcm9ncmVzcyBiYXIgZG9lcyBhbGwgcGVyY2VudGFnIGNhbGN1bGF0aW9ucyAqL1xuICBtYXhWYWx1ZTogbnVtYmVyO1xuICAvKiogVGhlIHZhbHVlcyBhbHJlYWR5IHByb2dyZXNzZWQuIFBvc3NpYmxlIFZhbHVlc1ZhcmlhbnRzIGFyZSB1c2VkIHRvIGRpc3BsYXkgcHJvZ3Jlc3MgaW4gYSBkaWZmZXJlbnQgY29sb3IuXG4gICAqIFZhcmlhbnRzIGFyZTpcbiAgICogc3VjY2VzcyA9PiBncmVlbjtcbiAgICogd2FybmluZyA9PiB5ZWxsb3c7XG4gICAqIGFsZXJ0ID0+IHJlZCAqL1xuICB2YWx1ZXM6IFBhcnRpYWw8UmVjb3JkPFZhbHVlc1ZhcmlhbnQsIFZhbHVlPj47XG4gIHNxdWFyZUNvcm5lcnM/OiBib29sZWFuO1xuICB3ZWlnaHQ/OiBQcm9ncmVzc0JhcldlaWdodDtcbiAgcHJpdmF0ZVByb3BzPzogU2VnbWVudGVkUHJvZ3Jlc3NCYXJQcml2YXRlUHJvcHM7XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xufTtcblxudHlwZSBTZWdtZW50ZWRQcm9ncmVzc0JhclByaXZhdGVQcm9wcyA9IHtcbiAgbW9ub2Nocm9tZT86IGJvb2xlYW47XG59O1xuXG50eXBlIFNlZ21lbnRQcm9wcyA9IHtcbiAgc3R5bGVWYXJpYW50OiBTdHlsZVZhcmlhbnQ7XG4gIHBlcmNlbnRhZ2U6IG51bWJlcjtcbiAgbW9ub2Nocm9tZTogYm9vbGVhbjtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG59O1xuXG5jb25zdCBnZXRCYWNrZ3JvdW5kQ29sb3IgPSAoXG4gIHRoZW1lOiBUaGVtZSxcbiAgc3R5bGU6IFN0eWxlVmFyaWFudCxcbiAgbW9ub2Nocm9tZTogYm9vbGVhblxuKSA9PiB7XG4gIGNvbnN0IG1vbm9jaHJvbWVDb2xvciA9IHRoZW1lLnZhbHVlcy5jb2xvci5zZWdtZW50ZWRQcm9ncmVzc0Jhci5tb25vY2hyb21lO1xuICBzd2l0Y2ggKHN0eWxlKSB7XG4gICAgY2FzZSBcInN1Y2Nlc3NcIjpcbiAgICAgIHJldHVybiBtb25vY2hyb21lXG4gICAgICAgID8gbW9ub2Nocm9tZUNvbG9yXG4gICAgICAgIDogdGhlbWUudmFsdWVzLmNvbG9yLnNlZ21lbnRlZFByb2dyZXNzQmFyLnN1Y2Nlc3M7XG4gICAgY2FzZSBcIndhcm5pbmdcIjpcbiAgICAgIHJldHVybiBtb25vY2hyb21lXG4gICAgICAgID8gbW9ub2Nocm9tZUNvbG9yXG4gICAgICAgIDogdGhlbWUudmFsdWVzLmNvbG9yLnNlZ21lbnRlZFByb2dyZXNzQmFyLndhcm5pbmc7XG4gICAgY2FzZSBcImFsZXJ0XCI6XG4gICAgICByZXR1cm4gbW9ub2Nocm9tZVxuICAgICAgICA/IG1vbm9jaHJvbWVDb2xvclxuICAgICAgICA6IHRoZW1lLnZhbHVlcy5jb2xvci5zZWdtZW50ZWRQcm9ncmVzc0Jhci5hbGVydDtcbiAgICBjYXNlIFwiaW5Qcm9ncmVzc1wiOlxuICAgICAgcmV0dXJuIHRoZW1lLnZhbHVlcy5jb2xvci5zZWdtZW50ZWRQcm9ncmVzc0Jhci5pblByb2dyZXNzO1xuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gdGhlbWUudmFsdWVzLmNvbG9yLmJvcmRlci5zZWNvbmRhcnkuZGVmYXVsdDtcbiAgfVxufTtcblxuY29uc3QgU3R5bGVkU2VnbWVudGVkUHJvZ3Jlc3NCYXIgPSBzdHlsZWQuZGl2PFxuICBQYXJ0aWFsPFNlZ21lbnRlZFByb2dyZXNzQmFyUHJvcHM+XG4+KCh7IHRoZW1lLCBzcXVhcmVDb3JuZXJzLCB3ZWlnaHQgfSkgPT4gKHtcbiAgd2lkdGg6IFwiMTAwJVwiLFxuICBkaXNwbGF5OiBcImZsZXhcIixcbiAgZmxleERpcmVjdGlvbjogXCJyb3dcIixcbiAgYm9yZGVyUmFkaXVzOiBzcXVhcmVDb3JuZXJzID8gMCA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmJvcmRlclJhZGl1cy54cyxcbiAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG4gIGhlaWdodDpcbiAgICB3ZWlnaHQgPT09IFwidGhpblwiXG4gICAgICA/IHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHhzXG4gICAgICA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHMsXG59KSk7XG5cbmNvbnN0IFN0eWxlZFNlZ21lbnQgPSBzdHlsZWQuZGl2PFBhcnRpYWw8U2VnbWVudFByb3BzPj4oXG4gICh7IHRoZW1lLCBzdHlsZVZhcmlhbnQsIHBlcmNlbnRhZ2UsIG1vbm9jaHJvbWUgfSkgPT4gKHtcbiAgICBoZWlnaHQ6IFwiMTAwJVwiLFxuICAgIGJhY2tncm91bmRDb2xvcjogZ2V0QmFja2dyb3VuZENvbG9yKHRoZW1lLCBzdHlsZVZhcmlhbnQsIG1vbm9jaHJvbWUpLFxuICAgIHdpZHRoOiBgJHtwZXJjZW50YWdlfSVgLFxuICB9KVxuKTtcblxuY29uc3QgU3R5bGVkUHJvZ3Jlc3NFbGVtZW50ID0gc3R5bGVkLnByb2dyZXNzKHtcbiAgaGVpZ2h0OiAxLFxuICB3aWR0aDogMSxcbiAgbWFyZ2luOiAtMSxcbiAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG4gIHBhZGRpbmc6IDAsXG59KTtcblxuZXhwb3J0IGZ1bmN0aW9uIFNlZ21lbnRlZFByb2dyZXNzQmFyKHtcbiAgbWF4VmFsdWUsXG4gIHZhbHVlcyxcbiAgd2VpZ2h0ID0gXCJmYXRcIixcbiAgc3F1YXJlQ29ybmVycyA9IGZhbHNlLFxuICBwcml2YXRlUHJvcHM6IHsgbW9ub2Nocm9tZSB9ID0geyBtb25vY2hyb21lOiBmYWxzZSB9LFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbn06IFNlZ21lbnRlZFByb2dyZXNzQmFyUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCB7IHNhbml0aXplZE1heFZhbHVlLCBzYW5pdGl6ZWRWYWx1ZXMgfSA9IHNhbml0aXplSW5wdXRWYWx1ZXMoXG4gICAgbWF4VmFsdWUsXG4gICAgdmFsdWVzXG4gICk7XG5cbiAgY29uc3QgcGVyY2VudGFnZXM6IHtcbiAgICBwZXJjZW50YWdlOiBudW1iZXI7XG4gICAgc3R5bGU6IFN0eWxlVmFyaWFudDtcbiAgfVtdID0gZ2V0UGVyY2VudGFnZXNGb3JWYXJpYW50cyhzYW5pdGl6ZWRNYXhWYWx1ZSwgc2FuaXRpemVkVmFsdWVzKTtcblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8U3R5bGVkU2VnbWVudGVkUHJvZ3Jlc3NCYXJcbiAgICAgICAgZGF0YS1lMmUtdGVzdC1pZD17ZGF0YUUyZVRlc3RJZH1cbiAgICAgICAgZGF0YS1kcy1pZD1cIlNlZ21lbnRlZFByb2dyZXNzQmFyXCJcbiAgICAgICAgc3F1YXJlQ29ybmVycz17c3F1YXJlQ29ybmVyc31cbiAgICAgICAgd2VpZ2h0PXt3ZWlnaHR9XG4gICAgICA+XG4gICAgICAgIDxTdHlsZWRQcm9ncmVzc0VsZW1lbnRcbiAgICAgICAgICBtYXg9e3Nhbml0aXplZE1heFZhbHVlfVxuICAgICAgICAgIHZhbHVlPXtnZXRUb3RhbEZpbGxlZFZhbHVlKHNhbml0aXplZFZhbHVlcyl9XG4gICAgICAgIC8+XG4gICAgICAgIHtwZXJjZW50YWdlcy5tYXAoKHsgcGVyY2VudGFnZSwgc3R5bGUgfSkgPT4gKFxuICAgICAgICAgIDxTdHlsZWRTZWdtZW50XG4gICAgICAgICAgICBrZXk9e3N0eWxlfVxuICAgICAgICAgICAgZGF0YS1lMmUtdGVzdC1pZD17c3R5bGUgYXMgc3RyaW5nfVxuICAgICAgICAgICAgc3R5bGVWYXJpYW50PXtzdHlsZX1cbiAgICAgICAgICAgIG1vbm9jaHJvbWU9e21vbm9jaHJvbWV9XG4gICAgICAgICAgICBwZXJjZW50YWdlPXtwZXJjZW50YWdlfVxuICAgICAgICAgICAgYXJpYS1oaWRkZW5cbiAgICAgICAgICAvPlxuICAgICAgICApKX1cbiAgICAgIDwvU3R5bGVkU2VnbWVudGVkUHJvZ3Jlc3NCYXI+XG4gICAgPC8+XG4gICk7XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNkY4QiJ9 */");export function SegmentedProgressBar({maxValue,values,weight="fat",squareCorners=!1,privateProps:{monochrome}={monochrome:!1},"data-e2e-test-id":dataE2eTestId}){let{sanitizedMaxValue,sanitizedValues}=sanitizeInputValues(maxValue,values),percentages=getPercentagesForVariants(sanitizedMaxValue,sanitizedValues);return React.createElement(React.Fragment,null,React.createElement(StyledSegmentedProgressBar,{"data-e2e-test-id":dataE2eTestId,"data-ds-id":"SegmentedProgressBar",squareCorners:squareCorners,weight:weight},React.createElement(StyledProgressElement,{max:sanitizedMaxValue,value:getTotalFilledValue(sanitizedValues)}),percentages.map(({percentage,style})=>React.createElement(StyledSegment,{key:style,"data-e2e-test-id":style,styleVariant:style,monochrome:monochrome,percentage:percentage,"aria-hidden":!0}))))}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { StyleVariant, Value, ValuesVariant } from "./SegmentedProgressBar";
|
|
2
|
+
export declare const getTotalFilledValue: (values: Partial<Record<ValuesVariant, Value>>) => number;
|
|
2
3
|
declare const getPercentagesForVariants: (maxValue: number, values: Partial<Record<ValuesVariant, Value>>) => {
|
|
3
4
|
percentage: number;
|
|
4
5
|
style: StyleVariant;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
let variants=["success","warning","alert"]
|
|
1
|
+
let variants=["success","warning","alert"];export const getTotalFilledValue=values=>variants.reduce((currentValue,variant)=>values[variant]&&values[variant]>0?currentValue+values[variant]:currentValue,0);let getPercentagesForVariants=(maxValue,values)=>{let result=variants.map(variant=>{let percentage=100*values[variant]/maxValue;return percentage>0?{percentage,style:variant}:null}),usedPercentage=result.reduce((currentValue,item)=>currentValue+(item?item.percentage:0),0);return usedPercentage<100&&result.push({percentage:100-usedPercentage,style:"inProgress"}),result.filter(Boolean)},sanitizeInputValues=(maxValue,values)=>{let totalFilledValue=getTotalFilledValue(values),sanitizedValues={};return variants.forEach(variant=>{sanitizedValues[variant]=values[variant]&&values[variant]>0?values[variant]:0}),{sanitizedMaxValue:maxValue>totalFilledValue?maxValue:totalFilledValue,sanitizedValues}};export{sanitizeInputValues,getPercentagesForVariants};
|
|
@@ -2,7 +2,7 @@ import type { ReactElement } from "react";
|
|
|
2
2
|
import React from "react";
|
|
3
3
|
import type { TooltipContentProps } from "../Tooltip/TooltipContent";
|
|
4
4
|
import type { TooltipConditionalProps } from "../Tooltip/types";
|
|
5
|
-
type BaseProps = Pick<TooltipContentProps, "placement" | "portalContainer" | "maxWidth" | "contentPadding" | "hideArrow" | "subTheme" | "defaultVerticalPlacement"> & {
|
|
5
|
+
type BaseProps = Pick<TooltipContentProps, "placement" | "portalContainer" | "maxWidth" | "contentPadding" | "hideArrow" | "subTheme" | "defaultVerticalPlacement" | "onOverflowViewport"> & {
|
|
6
6
|
name?: string;
|
|
7
7
|
/** Popover content */
|
|
8
8
|
content: ReactElement;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import React,{useState,useRef,useEffect,useCallback,useMemo}from"react";import styled from"@emotion/styled";import{TooltipContent}from"../Tooltip/TooltipContent";import{Sheet}from"../Sheet/Sheet";import{FocusTrapWrapper}from"../../shared/FocusTrapWrapper";import breakpoints from"../../web-tokens/_breakpoints.json";let StyledContainer=styled("div",{target:"e1l9klzw0",label:"StyledContainer"})(()=>({borderRadius:"inherit"}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvVG9nZ2xldGlwL0Jhc2VQb3BvdmVyLnRzeCIsInNvdXJjZXMiOlsic3JjL2NvbXBvbmVudHMvVG9nZ2xldGlwL0Jhc2VQb3BvdmVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSByZWFjdC9qc3gtcHJvcHMtbm8tc3ByZWFkaW5nICovXG5pbXBvcnQgdHlwZSB7IFJlYWN0RWxlbWVudCwgUHJvcHNXaXRoQ2hpbGRyZW4gfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBSZWFjdCwge1xuICB1c2VTdGF0ZSxcbiAgdXNlUmVmLFxuICB1c2VFZmZlY3QsXG4gIHVzZUNhbGxiYWNrLFxuICB1c2VNZW1vLFxufSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBzdHlsZWQgZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHR5cGUgeyBUb29sdGlwQ29udGVudFByb3BzIH0gZnJvbSBcIi4uL1Rvb2x0aXAvVG9vbHRpcENvbnRlbnRcIjtcbmltcG9ydCB7IFRvb2x0aXBDb250ZW50IH0gZnJvbSBcIi4uL1Rvb2x0aXAvVG9vbHRpcENvbnRlbnRcIjtcbmltcG9ydCB0eXBlIHsgVG9vbHRpcENvbmRpdGlvbmFsUHJvcHMgfSBmcm9tIFwiLi4vVG9vbHRpcC90eXBlc1wiO1xuaW1wb3J0IHsgU2hlZXQgfSBmcm9tIFwiLi4vU2hlZXQvU2hlZXRcIjtcbmltcG9ydCB7IEZvY3VzVHJhcFdyYXBwZXIgfSBmcm9tIFwiLi4vLi4vc2hhcmVkL0ZvY3VzVHJhcFdyYXBwZXJcIjtcbmltcG9ydCBicmVha3BvaW50cyBmcm9tIFwiLi4vLi4vd2ViLXRva2Vucy9fYnJlYWtwb2ludHMuanNvblwiO1xuXG50eXBlIEJhc2VQcm9wcyA9IFBpY2s8XG4gIFRvb2x0aXBDb250ZW50UHJvcHMsXG4gIHwgXCJwbGFjZW1lbnRcIlxuICB8IFwicG9ydGFsQ29udGFpbmVyXCJcbiAgfCBcIm1heFdpZHRoXCJcbiAgfCBcImNvbnRlbnRQYWRkaW5nXCJcbiAgfCBcImhpZGVBcnJvd1wiXG4gIHwgXCJzdWJUaGVtZVwiXG4gIHwgXCJkZWZhdWx0VmVydGljYWxQbGFjZW1lbnRcIlxuPiAmIHtcbiAgbmFtZT86IHN0cmluZztcbiAgLyoqICBQb3BvdmVyIGNvbnRlbnQgKi9cbiAgY29udGVudDogUmVhY3RFbGVtZW50O1xuICBcImRhdGEtZTJlLXRlc3QtaWRcIj86IHN0cmluZztcbiAgLyoqICBQcm9ncmFtbWF0aWNhbGx5IHRvZ2dsZSBQb3BvdmVyIHZpc2liaWxpdHkgd2l0aCB0aGlzIHByb3AgKi9cbiAgaXNWaXNpYmxlPzogYm9vbGVhbjtcbiAgLyoqICBDYWxsZWQgd2hlbiB0b29sdGlwIGFwcGVhcnMgYW5kIGRpc2FwcGVhcnMgKi9cbiAgb25WaXNpYmlsaXR5Q2hhbmdlPzogKGlzVmlzaWJsZTogYm9vbGVhbiwgcmVhc29uOiBzdHJpbmcpID0+IHZvaWQ7XG4gIC8qKiAgQ29udHJvbHMgd2hldGhlciBCYXNlUG9wb3ZlciAgY2xvc2VzIG9uIG91dHNpZGUgY2xpY2sgKi9cbiAgZGlzbWlzc09uT3V0c2lkZUNsaWNrPzogYm9vbGVhbjtcbiAgLyoqICBPcHRpb24gZm9yIGZvY3VzLXRyYXAsIGNvbnRyb2xzIHdoZXRoZXIgdGhlIGZpcnN0IGZvY3VhYmxlIGl0ZW0gcmVjaWV2ZXMgZm9jdXMgKi9cbiAgZGlzYWJsZUluaXRpYWxGb2N1cz86IGJvb2xlYW47XG4gIC8qKiAgT3B0aW9uIGZvciBmb2N1cy10cmFwLCBjb250cm9scyB3aGV0aGVyIHRoZSB0cmlnZ2VyIHNob3VsZCByZWNlaXZlIGJhY2sgdGhlIGZvY3VzIG9uIHBvcG92ZXIgY2xvc2UgKi9cbiAgZGlzYWJsZVJldHVybkZvY3VzVG9UcmlnZ2VyPzogYm9vbGVhbjtcbiAgLyoqICBSZW5kZXIgYXMgc2hlZXQgb24gbW9iaWxlIHdlYiAqL1xuICByZW5kZXJBc1NoZWV0T25Nb2JpbGU/OiBib29sZWFuO1xuICAvKiogIFByb3BzIGZvciBjb25maWd1cmluZyB0aGUgc2hlZXQgb24gbW9iaWxlIHdlYiAqL1xuICBzaGVldFByb3BzPzoge1xuICAgIC8qKiAgU2hvdyB0aGUgZGFyayBzY3JpbSBiYWNrZHJvcCBvbiBtb2JpbGUgd2ViIHdoZW4gcmVuZGVyaW5nIGFzIFNoZWV0ICovXG4gICAgaGFzQmFja2Ryb3A/OiBib29sZWFuO1xuICB9O1xufTtcblxuZXhwb3J0IHR5cGUgQmFzZVBvcG92ZXJQcm9wcyA9IEJhc2VQcm9wcyAmIFRvb2x0aXBDb25kaXRpb25hbFByb3BzO1xuXG5jb25zdCBTdHlsZWRDb250YWluZXIgPSBzdHlsZWQuZGl2KCgpID0+ICh7XG4gIGJvcmRlclJhZGl1czogXCJpbmhlcml0XCIsXG59KSk7XG5cbmNvbnN0IEZvY3VzVHJhcENvbnRlbnQgPSBSZWFjdC5mb3J3YXJkUmVmPFxuICBIVE1MRGl2RWxlbWVudCxcbiAgUHJvcHNXaXRoQ2hpbGRyZW48dW5rbm93bj5cbj4oKHsgY2hpbGRyZW4gfSwgcmVmKSA9PiAoXG4gIDxTdHlsZWRDb250YWluZXIgcmVmPXtyZWZ9PntjaGlsZHJlbn08L1N0eWxlZENvbnRhaW5lcj5cbikpO1xuXG5jb25zdCBWaXNpYmlsaXR5Q2hhbmdlUmVhc29uID0ge1xuICB0cmlnZ2VyQ2xpY2s6IFwidHJpZ2dlckNsaWNrXCIsXG4gIG91dHNpZGVDbGljazogXCJvdXRzaWRlQ2xpY2tcIixcbn07XG5cbmZ1bmN0aW9uIGdldE1vYmlsZUJyZWFrcG9pbnQocmVuZGVyQXNTaGVldE9uTW9iaWxlOiBib29sZWFuKSB7XG4gIHJldHVybiAoXG4gICAgISF3aW5kb3cgJiZcbiAgICByZW5kZXJBc1NoZWV0T25Nb2JpbGUgJiZcbiAgICB3aW5kb3cuaW5uZXJXaWR0aCA8PSBicmVha3BvaW50cy5tZWRpdW0udmFsdWVcbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIEJhc2VQb3BvdmVyKHtcbiAgcGxhY2VtZW50ID0gXCJhdXRvXCIsXG4gIGNvbnRlbnQsXG4gIGNoaWxkcmVuLFxuICBjb250ZW50UGFkZGluZyA9IFwibVwiLFxuICBtYXhXaWR0aCxcbiAgZXh0ZXJuYWxUcmlnZ2VyUmVmLFxuICBwb3J0YWxDb250YWluZXIsXG4gIG5hbWUgPSBcIlBvcG92ZXJcIixcbiAgaXNWaXNpYmxlOiBpc1BvcG92ZXJWaXNpYmxlLFxuICBkaXNtaXNzT25PdXRzaWRlQ2xpY2sgPSB0cnVlLFxuICBcImRhdGEtZTJlLXRlc3QtaWRcIjogZGF0YUUyZVRlc3RJZCxcbiAgc3ViVGhlbWUsXG4gIGRlZmF1bHRWZXJ0aWNhbFBsYWNlbWVudCxcbiAgb25WaXNpYmlsaXR5Q2hhbmdlLFxuICBkaXNhYmxlSW5pdGlhbEZvY3VzID0gZmFsc2UsXG4gIGRpc2FibGVSZXR1cm5Gb2N1c1RvVHJpZ2dlciA9IGZhbHNlLFxuICByZW5kZXJBc1NoZWV0T25Nb2JpbGUgPSBmYWxzZSxcbiAgc2hlZXRQcm9wcyxcbiAgLi4ucmVzdENvbnRlbnRQcm9wc1xufTogQmFzZVBvcG92ZXJQcm9wcyk6IFJlYWN0LlJlYWN0RWxlbWVudCB7XG4gIGNvbnN0IHRvb2x0aXBJZCA9IHVzZU1lbW8oXG4gICAgKCkgPT4gYERTJHtuYW1lfV8ke01hdGguZmxvb3IoRGF0ZS5ub3coKSAqIE1hdGgucmFuZG9tKCkpfWAsXG4gICAgW25hbWVdXG4gICk7XG4gIGNvbnN0IFtpc1Zpc2libGUsIHNldFZpc2libGVdID0gdXNlU3RhdGUoaXNQb3BvdmVyVmlzaWJsZSk7XG4gIGNvbnN0IFtpc01vYmlsZUJyZWFrUG9pbnQsIHNldElzTW9iaWxlQnJlYWtwb2ludF0gPSB1c2VTdGF0ZShcbiAgICBnZXRNb2JpbGVCcmVha3BvaW50KHJlbmRlckFzU2hlZXRPbk1vYmlsZSlcbiAgKTtcbiAgY29uc3QgaW50ZXJuYWxUcmlnZ2VyUmVmID0gdXNlUmVmKG51bGwpO1xuICBjb25zdCB0cmlnZ2VyUmVmID0gZXh0ZXJuYWxUcmlnZ2VyUmVmIHx8IGludGVybmFsVHJpZ2dlclJlZjtcbiAgY29uc3QgaXNPdXRzaWRlQ2xpY2tPblRyaWdnZXIgPSB1c2VSZWYoZmFsc2UpO1xuXG4gIGNvbnN0IHRvZ2dsZVZpc2liaWxpdHkgPSB1c2VDYWxsYmFjayhcbiAgICAoc3RhdHVzOiBib29sZWFuLCByZWFzb246IHN0cmluZykgPT4ge1xuICAgICAgc2V0VmlzaWJsZShzdGF0dXMpO1xuXG4gICAgICBpZiAob25WaXNpYmlsaXR5Q2hhbmdlKSB7XG4gICAgICAgIG9uVmlzaWJpbGl0eUNoYW5nZShzdGF0dXMsIHJlYXNvbik7XG4gICAgICB9XG4gICAgfSxcbiAgICBbb25WaXNpYmlsaXR5Q2hhbmdlXVxuICApO1xuXG4gIC8vIE91dHNpZGUgY2xpY2sgaXMgYWxzbyBmaXJlZCB3aGVuIHRoZSBQb3BvdmVyIGlzIG9wZW4gYW5kIHRyaWdnZXIgaXMgY2xpY2tlZC4gYGlzT3V0c2lkZUNsaWNrT25UcmlnZ2VyYCBzYXZlcyB0aGlzIGNvbmRpdGlvbiBhbmQgd2UgY2hlY2sgZm9yIGl0IHNvIGFzIHRvIG5vdCB0b2dnbGUgdGhlIFBvcG92ZXIgdHdpY2UuXG4gIGNvbnN0IGhhbmRsZVRyaWdnZXJDbGljayA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAoIWlzT3V0c2lkZUNsaWNrT25UcmlnZ2VyLmN1cnJlbnQpIHtcbiAgICAgIHRvZ2dsZVZpc2liaWxpdHkoIWlzVmlzaWJsZSwgVmlzaWJpbGl0eUNoYW5nZVJlYXNvbi50cmlnZ2VyQ2xpY2spO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyByZXNldCB0aGlzIHZhbHVlIHNvIHRoYXQgUG9wb3ZlciBjYW4gb3BlbiBpbiBuZXh0IGNsaWNrXG4gICAgICBpc091dHNpZGVDbGlja09uVHJpZ2dlci5jdXJyZW50ID0gZmFsc2U7XG4gICAgfVxuICB9LCBbdG9nZ2xlVmlzaWJpbGl0eSwgaXNWaXNpYmxlXSk7XG5cbiAgY29uc3QgaGFuZGxlQ2xpY2tPdXRzaWRlRGVhY3RpdmF0ZXMgPSB1c2VDYWxsYmFjayhcbiAgICAoZXZ0OiBNb3VzZUV2ZW50KSA9PiB7XG4gICAgICBpZiAodHJpZ2dlclJlZi5jdXJyZW50LmNvbnRhaW5zKGV2dC50YXJnZXQpKSB7XG4gICAgICAgIGlzT3V0c2lkZUNsaWNrT25UcmlnZ2VyLmN1cnJlbnQgPSB0cnVlO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfSxcbiAgICBbdHJpZ2dlclJlZiwgaXNPdXRzaWRlQ2xpY2tPblRyaWdnZXJdXG4gICk7XG5cbiAgY29uc3QgaGFuZGxlUG9zdERlYWN0aXZhdGUgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgY29uc3QgcmVhc29uID0gaXNPdXRzaWRlQ2xpY2tPblRyaWdnZXIuY3VycmVudFxuICAgICAgPyBWaXNpYmlsaXR5Q2hhbmdlUmVhc29uLnRyaWdnZXJDbGlja1xuICAgICAgOiBWaXNpYmlsaXR5Q2hhbmdlUmVhc29uLm91dHNpZGVDbGljaztcblxuICAgIHRvZ2dsZVZpc2liaWxpdHkoZmFsc2UsIHJlYXNvbik7XG4gIH0sIFt0b2dnbGVWaXNpYmlsaXR5XSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBzZXRWaXNpYmxlKGlzUG9wb3ZlclZpc2libGUpO1xuICB9LCBbaXNQb3BvdmVyVmlzaWJsZV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgLy8gQ2hlY2sgaWYgdGhpcyBpcyBhIG1vYmlsZSBicmVha3BvaW50XG4gICAgc2V0SXNNb2JpbGVCcmVha3BvaW50KGdldE1vYmlsZUJyZWFrcG9pbnQocmVuZGVyQXNTaGVldE9uTW9iaWxlKSk7XG4gIH0sIFtpc1Zpc2libGUsIHJlbmRlckFzU2hlZXRPbk1vYmlsZV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgbGV0IHRyaWdnZXI6IEhUTUxFbGVtZW50O1xuXG4gICAgaWYgKGV4dGVybmFsVHJpZ2dlclJlZj8uY3VycmVudCAmJiAhY2hpbGRyZW4pIHtcbiAgICAgIHRyaWdnZXIgPSBleHRlcm5hbFRyaWdnZXJSZWYuY3VycmVudDtcblxuICAgICAgdHJpZ2dlci5zZXRBdHRyaWJ1dGUoXCJ0YWJpbmRleFwiLCBcIjBcIik7XG4gICAgICB0cmlnZ2VyLmFkZEV2ZW50TGlzdGVuZXIoXCJjbGlja1wiLCBoYW5kbGVUcmlnZ2VyQ2xpY2spO1xuICAgIH1cblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBpZiAodHJpZ2dlcikge1xuICAgICAgICB0cmlnZ2VyLnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJjbGlja1wiLCBoYW5kbGVUcmlnZ2VyQ2xpY2spO1xuICAgICAgfVxuICAgIH07XG4gIH0sIFtleHRlcm5hbFRyaWdnZXJSZWYsIGNoaWxkcmVuLCBoYW5kbGVUcmlnZ2VyQ2xpY2tdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChleHRlcm5hbFRyaWdnZXJSZWY/LmN1cnJlbnQgJiYgIWNoaWxkcmVuKSB7XG4gICAgICBjb25zdCB0cmlnZ2VyID0gZXh0ZXJuYWxUcmlnZ2VyUmVmLmN1cnJlbnQ7XG5cbiAgICAgIGlmIChpc1Zpc2libGUpIHtcbiAgICAgICAgdHJpZ2dlci5zZXRBdHRyaWJ1dGUoXCJhcmlhLWV4cGFuZGVkXCIsIHRydWUpO1xuICAgICAgICB0cmlnZ2VyLnNldEF0dHJpYnV0ZShcImFyaWEtY29udHJvbHNcIiwgdG9vbHRpcElkKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRyaWdnZXIucmVtb3ZlQXR0cmlidXRlKFwiYXJpYS1leHBhbmRlZFwiKTtcbiAgICAgICAgdHJpZ2dlci5yZW1vdmVBdHRyaWJ1dGUoXCJhcmlhLWNvbnRyb2xzXCIpO1xuICAgICAgfVxuICAgIH1cbiAgfSwgW2V4dGVybmFsVHJpZ2dlclJlZiwgY2hpbGRyZW4sIHRvb2x0aXBJZCwgaXNWaXNpYmxlXSk7XG5cbiAgY29uc3QgdHJpZ2dlckVsbSA9IGNoaWxkcmVuXG4gICAgPyBSZWFjdC5jbG9uZUVsZW1lbnQoY2hpbGRyZW4sIHtcbiAgICAgICAgcmVmOiB0cmlnZ2VyUmVmLFxuICAgICAgICAuLi4oaXNWaXNpYmxlICYmIHtcbiAgICAgICAgICBcImFyaWEtZXhwYW5kZWRcIjogdHJ1ZSxcbiAgICAgICAgICBcImFyaWEtY29udHJvbHNcIjogdG9vbHRpcElkLFxuICAgICAgICB9KSxcbiAgICAgICAgdGFiSW5kZXg6IDAsXG4gICAgICAgIG9uQ2xpY2s6IChldnQ6IFJlYWN0Lk1vdXNlRXZlbnQpID0+IHtcbiAgICAgICAgICBoYW5kbGVUcmlnZ2VyQ2xpY2soKTtcbiAgICAgICAgICBpZiAoY2hpbGRyZW4ucHJvcHMub25DbGljaykge1xuICAgICAgICAgICAgY2hpbGRyZW4ucHJvcHMub25DbGljayhldnQpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgIH0pXG4gICAgOiBudWxsO1xuXG4gIGlmIChpc01vYmlsZUJyZWFrUG9pbnQpIHtcbiAgICAvLyByZW5kZXIgYXMgU2hlZXRcbiAgICBjb25zdCBzaGVldEVsbSA9IChcbiAgICAgIDxTaGVldFxuICAgICAgICBpZD17dG9vbHRpcElkfVxuICAgICAgICBpc1Zpc2libGU9e2lzVmlzaWJsZX1cbiAgICAgICAgcG9ydGFsQ29udGFpbmVyPXtwb3J0YWxDb250YWluZXJ9XG4gICAgICAgIGRpc21pc3NPbk91dHNpZGVDbGljaz17ZGlzbWlzc09uT3V0c2lkZUNsaWNrfVxuICAgICAgICBkaXNhYmxlSW5pdGlhbEZvY3VzPXtkaXNhYmxlSW5pdGlhbEZvY3VzfVxuICAgICAgICBkaXNhYmxlUmV0dXJuRm9jdXNUb1RyaWdnZXI9e2Rpc2FibGVSZXR1cm5Gb2N1c1RvVHJpZ2dlcn1cbiAgICAgICAgb25DbG9zZT17aGFuZGxlUG9zdERlYWN0aXZhdGV9XG4gICAgICAgIG9uQ2xpY2tPdXRzaWRlRGVhY3RpdmF0ZXM9e2hhbmRsZUNsaWNrT3V0c2lkZURlYWN0aXZhdGVzfVxuICAgICAgICB7Li4uKHNoZWV0UHJvcHMgPz8ge30pfVxuICAgICAgPlxuICAgICAgICB7Y29udGVudH1cbiAgICAgIDwvU2hlZXQ+XG4gICAgKTtcblxuICAgIHJldHVybiAoXG4gICAgICA8PlxuICAgICAgICB7dHJpZ2dlckVsbX1cbiAgICAgICAge3NoZWV0RWxtfVxuICAgICAgPC8+XG4gICAgKTtcbiAgfVxuXG4gIC8vIHJlbmRlciBhcyBQb3BvdmVyXG4gIGNvbnN0IGNvbnRlbnRFbG0gPSAoXG4gICAgPEZvY3VzVHJhcFdyYXBwZXJcbiAgICAgIGFjdGl2ZT17aXNWaXNpYmxlfVxuICAgICAgZm9jdXNUcmFwT3B0aW9ucz17e1xuICAgICAgICBjbGlja091dHNpZGVEZWFjdGl2YXRlczpcbiAgICAgICAgICBkaXNtaXNzT25PdXRzaWRlQ2xpY2sgJiYgaGFuZGxlQ2xpY2tPdXRzaWRlRGVhY3RpdmF0ZXMsIC8vIGRlLWFjdGl2YXRlIGZvY3VzIHRyYXAgb24gb3V0c2lkZSBjbGlja1xuICAgICAgICBhbGxvd091dHNpZGVDbGljazogdHJ1ZSxcbiAgICAgICAgZXNjYXBlRGVhY3RpdmF0ZXM6IHRydWUsXG4gICAgICAgIGZhbGxiYWNrRm9jdXM6IGAjJHt0b29sdGlwSWR9YCwgLy8gc2V0IGZvY3VzIHRvIHRvb2x0aXAgY29udGVudCBjb250YWluZXIgaWYgaXQgaGFzIG5vIGZvY3VzYWJsZSBlbGVtZW50XG4gICAgICAgIG9uUG9zdERlYWN0aXZhdGU6IGhhbmRsZVBvc3REZWFjdGl2YXRlLFxuICAgICAgICBwcmV2ZW50U2Nyb2xsOiB0cnVlLFxuICAgICAgICBpbml0aWFsRm9jdXM6ICgpID0+ICFkaXNhYmxlSW5pdGlhbEZvY3VzLFxuICAgICAgICByZXR1cm5Gb2N1c09uRGVhY3RpdmF0ZTogIWRpc2FibGVSZXR1cm5Gb2N1c1RvVHJpZ2dlcixcbiAgICAgIH19XG4gICAgPlxuICAgICAgPEZvY3VzVHJhcENvbnRlbnQ+e2NvbnRlbnR9PC9Gb2N1c1RyYXBDb250ZW50PlxuICAgIDwvRm9jdXNUcmFwV3JhcHBlcj5cbiAgKTtcblxuICBjb25zdCB0b29sdGlwRWxtID0gKFxuICAgIDxUb29sdGlwQ29udGVudFxuICAgICAgey4uLnJlc3RDb250ZW50UHJvcHN9IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZ1xuICAgICAgZGVmYXVsdFZlcnRpY2FsUGxhY2VtZW50PXtkZWZhdWx0VmVydGljYWxQbGFjZW1lbnR9XG4gICAgICBkYXRhRFNJZD17bmFtZX1cbiAgICAgIGNvbnRlbnQ9e2NvbnRlbnRFbG19XG4gICAgICBjb250ZW50UGFkZGluZz17Y29udGVudFBhZGRpbmd9XG4gICAgICBtYXhXaWR0aD17bWF4V2lkdGh9XG4gICAgICBwbGFjZW1lbnQ9e3BsYWNlbWVudH1cbiAgICAgIHBvcnRhbENvbnRhaW5lcj17cG9ydGFsQ29udGFpbmVyfVxuICAgICAgZGF0YUUyZVRlc3RJZD17ZGF0YUUyZVRlc3RJZH1cbiAgICAgIHN1YlRoZW1lPXtzdWJUaGVtZX1cbiAgICAgIGlzVmlzaWJsZT17aXNWaXNpYmxlfVxuICAgICAgdG9vbHRpcElkPXt0b29sdGlwSWR9XG4gICAgICB0cmlnZ2VyUmVmPXt0cmlnZ2VyUmVmfVxuICAgIC8+XG4gICk7XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAge3RyaWdnZXJFbG19XG4gICAgICB7dG9vbHRpcEVsbX1cbiAgICA8Lz5cbiAgKTtcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFvRHdCIn0= */"),FocusTrapContent=React.forwardRef(({children},ref)=>React.createElement(StyledContainer,{ref:ref},children)),VisibilityChangeReason={triggerClick:"triggerClick",outsideClick:"outsideClick"};function getMobileBreakpoint(renderAsSheetOnMobile){return!!window&&renderAsSheetOnMobile&&window.innerWidth<=breakpoints.medium.value}export function BasePopover({placement="auto",content,children,contentPadding="m",maxWidth,externalTriggerRef,portalContainer,name="Popover",isVisible:isPopoverVisible,dismissOnOutsideClick=!0,"data-e2e-test-id":dataE2eTestId,subTheme,defaultVerticalPlacement,onVisibilityChange,disableInitialFocus=!1,disableReturnFocusToTrigger=!1,renderAsSheetOnMobile=!1,sheetProps,...restContentProps}){let tooltipId=useMemo(()=>`DS${name}_${Math.floor(Date.now()*Math.random())}`,[name]),[isVisible,setVisible]=useState(isPopoverVisible),[isMobileBreakPoint,setIsMobileBreakpoint]=useState(getMobileBreakpoint(renderAsSheetOnMobile)),internalTriggerRef=useRef(null),triggerRef=externalTriggerRef||internalTriggerRef,isOutsideClickOnTrigger=useRef(!1),toggleVisibility=useCallback((status,reason)=>{setVisible(status),onVisibilityChange&&onVisibilityChange(status,reason)},[onVisibilityChange]),handleTriggerClick=useCallback(()=>{isOutsideClickOnTrigger.current?isOutsideClickOnTrigger.current=!1:toggleVisibility(!isVisible,VisibilityChangeReason.triggerClick)},[toggleVisibility,isVisible]),handleClickOutsideDeactivates=useCallback(evt=>(triggerRef.current.contains(evt.target)&&(isOutsideClickOnTrigger.current=!0),!0),[triggerRef,isOutsideClickOnTrigger]),handlePostDeactivate=useCallback(()=>{toggleVisibility(!1,isOutsideClickOnTrigger.current?VisibilityChangeReason.triggerClick:VisibilityChangeReason.outsideClick)},[toggleVisibility]);useEffect(()=>{setVisible(isPopoverVisible)},[isPopoverVisible]),useEffect(()=>{setIsMobileBreakpoint(getMobileBreakpoint(renderAsSheetOnMobile))},[isVisible,renderAsSheetOnMobile]),useEffect(()=>{let trigger;return externalTriggerRef?.current&&!children&&((trigger=externalTriggerRef.current).setAttribute("tabindex","0"),trigger.addEventListener("click",handleTriggerClick)),()=>{trigger&&trigger.removeEventListener("click",handleTriggerClick)}},[externalTriggerRef,children,handleTriggerClick]),useEffect(()=>{if(externalTriggerRef?.current&&!children){let trigger=externalTriggerRef.current;isVisible?(trigger.setAttribute("aria-expanded",!0),trigger.setAttribute("aria-controls",tooltipId)):(trigger.removeAttribute("aria-expanded"),trigger.removeAttribute("aria-controls"))}},[externalTriggerRef,children,tooltipId,isVisible]);let triggerElm=children?React.cloneElement(children,{ref:triggerRef,...isVisible&&{"aria-expanded":!0,"aria-controls":tooltipId},tabIndex:0,onClick:evt=>{handleTriggerClick(),children.props.onClick&&children.props.onClick(evt)}}):null;if(isMobileBreakPoint){let sheetElm=React.createElement(Sheet,{id:tooltipId,isVisible:isVisible,portalContainer:portalContainer,dismissOnOutsideClick:dismissOnOutsideClick,disableInitialFocus:disableInitialFocus,disableReturnFocusToTrigger:disableReturnFocusToTrigger,onClose:handlePostDeactivate,onClickOutsideDeactivates:handleClickOutsideDeactivates,...sheetProps??{}},content);return React.createElement(React.Fragment,null,triggerElm,sheetElm)}let contentElm=React.createElement(FocusTrapWrapper,{active:isVisible,focusTrapOptions:{clickOutsideDeactivates:dismissOnOutsideClick&&handleClickOutsideDeactivates,allowOutsideClick:!0,escapeDeactivates:!0,fallbackFocus:`#${tooltipId}`,onPostDeactivate:handlePostDeactivate,preventScroll:!0,initialFocus:()=>!disableInitialFocus,returnFocusOnDeactivate:!disableReturnFocusToTrigger}},React.createElement(FocusTrapContent,null,content)),tooltipElm=React.createElement(TooltipContent,{...restContentProps,defaultVerticalPlacement:defaultVerticalPlacement,dataDSId:name,content:contentElm,contentPadding:contentPadding,maxWidth:maxWidth,placement:placement,portalContainer:portalContainer,dataE2eTestId:dataE2eTestId,subTheme:subTheme,isVisible:isVisible,tooltipId:tooltipId,triggerRef:triggerRef});return React.createElement(React.Fragment,null,triggerElm,tooltipElm)}
|
|
1
|
+
import React,{useState,useRef,useEffect,useCallback,useMemo}from"react";import styled from"@emotion/styled";import{TooltipContent}from"../Tooltip/TooltipContent";import{Sheet}from"../Sheet/Sheet";import{FocusTrapWrapper}from"../../shared/FocusTrapWrapper";import breakpoints from"../../web-tokens/_breakpoints.json";let StyledContainer=styled("div",{target:"excivao0",label:"StyledContainer"})(()=>({borderRadius:"inherit"}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvVG9nZ2xldGlwL0Jhc2VQb3BvdmVyLnRzeCIsInNvdXJjZXMiOlsic3JjL2NvbXBvbmVudHMvVG9nZ2xldGlwL0Jhc2VQb3BvdmVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSByZWFjdC9qc3gtcHJvcHMtbm8tc3ByZWFkaW5nICovXG5pbXBvcnQgdHlwZSB7IFJlYWN0RWxlbWVudCwgUHJvcHNXaXRoQ2hpbGRyZW4gfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBSZWFjdCwge1xuICB1c2VTdGF0ZSxcbiAgdXNlUmVmLFxuICB1c2VFZmZlY3QsXG4gIHVzZUNhbGxiYWNrLFxuICB1c2VNZW1vLFxufSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBzdHlsZWQgZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHR5cGUgeyBUb29sdGlwQ29udGVudFByb3BzIH0gZnJvbSBcIi4uL1Rvb2x0aXAvVG9vbHRpcENvbnRlbnRcIjtcbmltcG9ydCB7IFRvb2x0aXBDb250ZW50IH0gZnJvbSBcIi4uL1Rvb2x0aXAvVG9vbHRpcENvbnRlbnRcIjtcbmltcG9ydCB0eXBlIHsgVG9vbHRpcENvbmRpdGlvbmFsUHJvcHMgfSBmcm9tIFwiLi4vVG9vbHRpcC90eXBlc1wiO1xuaW1wb3J0IHsgU2hlZXQgfSBmcm9tIFwiLi4vU2hlZXQvU2hlZXRcIjtcbmltcG9ydCB7IEZvY3VzVHJhcFdyYXBwZXIgfSBmcm9tIFwiLi4vLi4vc2hhcmVkL0ZvY3VzVHJhcFdyYXBwZXJcIjtcbmltcG9ydCBicmVha3BvaW50cyBmcm9tIFwiLi4vLi4vd2ViLXRva2Vucy9fYnJlYWtwb2ludHMuanNvblwiO1xuXG50eXBlIEJhc2VQcm9wcyA9IFBpY2s8XG4gIFRvb2x0aXBDb250ZW50UHJvcHMsXG4gIHwgXCJwbGFjZW1lbnRcIlxuICB8IFwicG9ydGFsQ29udGFpbmVyXCJcbiAgfCBcIm1heFdpZHRoXCJcbiAgfCBcImNvbnRlbnRQYWRkaW5nXCJcbiAgfCBcImhpZGVBcnJvd1wiXG4gIHwgXCJzdWJUaGVtZVwiXG4gIHwgXCJkZWZhdWx0VmVydGljYWxQbGFjZW1lbnRcIlxuICB8IFwib25PdmVyZmxvd1ZpZXdwb3J0XCJcbj4gJiB7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIC8qKiAgUG9wb3ZlciBjb250ZW50ICovXG4gIGNvbnRlbnQ6IFJlYWN0RWxlbWVudDtcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI/OiBzdHJpbmc7XG4gIC8qKiAgUHJvZ3JhbW1hdGljYWxseSB0b2dnbGUgUG9wb3ZlciB2aXNpYmlsaXR5IHdpdGggdGhpcyBwcm9wICovXG4gIGlzVmlzaWJsZT86IGJvb2xlYW47XG4gIC8qKiAgQ2FsbGVkIHdoZW4gdG9vbHRpcCBhcHBlYXJzIGFuZCBkaXNhcHBlYXJzICovXG4gIG9uVmlzaWJpbGl0eUNoYW5nZT86IChpc1Zpc2libGU6IGJvb2xlYW4sIHJlYXNvbjogc3RyaW5nKSA9PiB2b2lkO1xuICAvKiogIENvbnRyb2xzIHdoZXRoZXIgQmFzZVBvcG92ZXIgIGNsb3NlcyBvbiBvdXRzaWRlIGNsaWNrICovXG4gIGRpc21pc3NPbk91dHNpZGVDbGljaz86IGJvb2xlYW47XG4gIC8qKiAgT3B0aW9uIGZvciBmb2N1cy10cmFwLCBjb250cm9scyB3aGV0aGVyIHRoZSBmaXJzdCBmb2N1YWJsZSBpdGVtIHJlY2lldmVzIGZvY3VzICovXG4gIGRpc2FibGVJbml0aWFsRm9jdXM/OiBib29sZWFuO1xuICAvKiogIE9wdGlvbiBmb3IgZm9jdXMtdHJhcCwgY29udHJvbHMgd2hldGhlciB0aGUgdHJpZ2dlciBzaG91bGQgcmVjZWl2ZSBiYWNrIHRoZSBmb2N1cyBvbiBwb3BvdmVyIGNsb3NlICovXG4gIGRpc2FibGVSZXR1cm5Gb2N1c1RvVHJpZ2dlcj86IGJvb2xlYW47XG4gIC8qKiAgUmVuZGVyIGFzIHNoZWV0IG9uIG1vYmlsZSB3ZWIgKi9cbiAgcmVuZGVyQXNTaGVldE9uTW9iaWxlPzogYm9vbGVhbjtcbiAgLyoqICBQcm9wcyBmb3IgY29uZmlndXJpbmcgdGhlIHNoZWV0IG9uIG1vYmlsZSB3ZWIgKi9cbiAgc2hlZXRQcm9wcz86IHtcbiAgICAvKiogIFNob3cgdGhlIGRhcmsgc2NyaW0gYmFja2Ryb3Agb24gbW9iaWxlIHdlYiB3aGVuIHJlbmRlcmluZyBhcyBTaGVldCAqL1xuICAgIGhhc0JhY2tkcm9wPzogYm9vbGVhbjtcbiAgfTtcbn07XG5cbmV4cG9ydCB0eXBlIEJhc2VQb3BvdmVyUHJvcHMgPSBCYXNlUHJvcHMgJiBUb29sdGlwQ29uZGl0aW9uYWxQcm9wcztcblxuY29uc3QgU3R5bGVkQ29udGFpbmVyID0gc3R5bGVkLmRpdigoKSA9PiAoe1xuICBib3JkZXJSYWRpdXM6IFwiaW5oZXJpdFwiLFxufSkpO1xuXG5jb25zdCBGb2N1c1RyYXBDb250ZW50ID0gUmVhY3QuZm9yd2FyZFJlZjxcbiAgSFRNTERpdkVsZW1lbnQsXG4gIFByb3BzV2l0aENoaWxkcmVuPHVua25vd24+XG4+KCh7IGNoaWxkcmVuIH0sIHJlZikgPT4gKFxuICA8U3R5bGVkQ29udGFpbmVyIHJlZj17cmVmfT57Y2hpbGRyZW59PC9TdHlsZWRDb250YWluZXI+XG4pKTtcblxuY29uc3QgVmlzaWJpbGl0eUNoYW5nZVJlYXNvbiA9IHtcbiAgdHJpZ2dlckNsaWNrOiBcInRyaWdnZXJDbGlja1wiLFxuICBvdXRzaWRlQ2xpY2s6IFwib3V0c2lkZUNsaWNrXCIsXG59O1xuXG5mdW5jdGlvbiBnZXRNb2JpbGVCcmVha3BvaW50KHJlbmRlckFzU2hlZXRPbk1vYmlsZTogYm9vbGVhbikge1xuICByZXR1cm4gKFxuICAgICEhd2luZG93ICYmXG4gICAgcmVuZGVyQXNTaGVldE9uTW9iaWxlICYmXG4gICAgd2luZG93LmlubmVyV2lkdGggPD0gYnJlYWtwb2ludHMubWVkaXVtLnZhbHVlXG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBCYXNlUG9wb3Zlcih7XG4gIHBsYWNlbWVudCA9IFwiYXV0b1wiLFxuICBjb250ZW50LFxuICBjaGlsZHJlbixcbiAgY29udGVudFBhZGRpbmcgPSBcIm1cIixcbiAgbWF4V2lkdGgsXG4gIGV4dGVybmFsVHJpZ2dlclJlZixcbiAgcG9ydGFsQ29udGFpbmVyLFxuICBuYW1lID0gXCJQb3BvdmVyXCIsXG4gIGlzVmlzaWJsZTogaXNQb3BvdmVyVmlzaWJsZSxcbiAgZGlzbWlzc09uT3V0c2lkZUNsaWNrID0gdHJ1ZSxcbiAgXCJkYXRhLWUyZS10ZXN0LWlkXCI6IGRhdGFFMmVUZXN0SWQsXG4gIHN1YlRoZW1lLFxuICBkZWZhdWx0VmVydGljYWxQbGFjZW1lbnQsXG4gIG9uVmlzaWJpbGl0eUNoYW5nZSxcbiAgZGlzYWJsZUluaXRpYWxGb2N1cyA9IGZhbHNlLFxuICBkaXNhYmxlUmV0dXJuRm9jdXNUb1RyaWdnZXIgPSBmYWxzZSxcbiAgcmVuZGVyQXNTaGVldE9uTW9iaWxlID0gZmFsc2UsXG4gIHNoZWV0UHJvcHMsXG4gIC4uLnJlc3RDb250ZW50UHJvcHNcbn06IEJhc2VQb3BvdmVyUHJvcHMpOiBSZWFjdC5SZWFjdEVsZW1lbnQge1xuICBjb25zdCB0b29sdGlwSWQgPSB1c2VNZW1vKFxuICAgICgpID0+IGBEUyR7bmFtZX1fJHtNYXRoLmZsb29yKERhdGUubm93KCkgKiBNYXRoLnJhbmRvbSgpKX1gLFxuICAgIFtuYW1lXVxuICApO1xuICBjb25zdCBbaXNWaXNpYmxlLCBzZXRWaXNpYmxlXSA9IHVzZVN0YXRlKGlzUG9wb3ZlclZpc2libGUpO1xuICBjb25zdCBbaXNNb2JpbGVCcmVha1BvaW50LCBzZXRJc01vYmlsZUJyZWFrcG9pbnRdID0gdXNlU3RhdGUoXG4gICAgZ2V0TW9iaWxlQnJlYWtwb2ludChyZW5kZXJBc1NoZWV0T25Nb2JpbGUpXG4gICk7XG4gIGNvbnN0IGludGVybmFsVHJpZ2dlclJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgdHJpZ2dlclJlZiA9IGV4dGVybmFsVHJpZ2dlclJlZiB8fCBpbnRlcm5hbFRyaWdnZXJSZWY7XG4gIGNvbnN0IGlzT3V0c2lkZUNsaWNrT25UcmlnZ2VyID0gdXNlUmVmKGZhbHNlKTtcblxuICBjb25zdCB0b2dnbGVWaXNpYmlsaXR5ID0gdXNlQ2FsbGJhY2soXG4gICAgKHN0YXR1czogYm9vbGVhbiwgcmVhc29uOiBzdHJpbmcpID0+IHtcbiAgICAgIHNldFZpc2libGUoc3RhdHVzKTtcblxuICAgICAgaWYgKG9uVmlzaWJpbGl0eUNoYW5nZSkge1xuICAgICAgICBvblZpc2liaWxpdHlDaGFuZ2Uoc3RhdHVzLCByZWFzb24pO1xuICAgICAgfVxuICAgIH0sXG4gICAgW29uVmlzaWJpbGl0eUNoYW5nZV1cbiAgKTtcblxuICAvLyBPdXRzaWRlIGNsaWNrIGlzIGFsc28gZmlyZWQgd2hlbiB0aGUgUG9wb3ZlciBpcyBvcGVuIGFuZCB0cmlnZ2VyIGlzIGNsaWNrZWQuIGBpc091dHNpZGVDbGlja09uVHJpZ2dlcmAgc2F2ZXMgdGhpcyBjb25kaXRpb24gYW5kIHdlIGNoZWNrIGZvciBpdCBzbyBhcyB0byBub3QgdG9nZ2xlIHRoZSBQb3BvdmVyIHR3aWNlLlxuICBjb25zdCBoYW5kbGVUcmlnZ2VyQ2xpY2sgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgaWYgKCFpc091dHNpZGVDbGlja09uVHJpZ2dlci5jdXJyZW50KSB7XG4gICAgICB0b2dnbGVWaXNpYmlsaXR5KCFpc1Zpc2libGUsIFZpc2liaWxpdHlDaGFuZ2VSZWFzb24udHJpZ2dlckNsaWNrKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gcmVzZXQgdGhpcyB2YWx1ZSBzbyB0aGF0IFBvcG92ZXIgY2FuIG9wZW4gaW4gbmV4dCBjbGlja1xuICAgICAgaXNPdXRzaWRlQ2xpY2tPblRyaWdnZXIuY3VycmVudCA9IGZhbHNlO1xuICAgIH1cbiAgfSwgW3RvZ2dsZVZpc2liaWxpdHksIGlzVmlzaWJsZV0pO1xuXG4gIGNvbnN0IGhhbmRsZUNsaWNrT3V0c2lkZURlYWN0aXZhdGVzID0gdXNlQ2FsbGJhY2soXG4gICAgKGV2dDogTW91c2VFdmVudCkgPT4ge1xuICAgICAgaWYgKHRyaWdnZXJSZWYuY3VycmVudC5jb250YWlucyhldnQudGFyZ2V0KSkge1xuICAgICAgICBpc091dHNpZGVDbGlja09uVHJpZ2dlci5jdXJyZW50ID0gdHJ1ZTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0sXG4gICAgW3RyaWdnZXJSZWYsIGlzT3V0c2lkZUNsaWNrT25UcmlnZ2VyXVxuICApO1xuXG4gIGNvbnN0IGhhbmRsZVBvc3REZWFjdGl2YXRlID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGNvbnN0IHJlYXNvbiA9IGlzT3V0c2lkZUNsaWNrT25UcmlnZ2VyLmN1cnJlbnRcbiAgICAgID8gVmlzaWJpbGl0eUNoYW5nZVJlYXNvbi50cmlnZ2VyQ2xpY2tcbiAgICAgIDogVmlzaWJpbGl0eUNoYW5nZVJlYXNvbi5vdXRzaWRlQ2xpY2s7XG5cbiAgICB0b2dnbGVWaXNpYmlsaXR5KGZhbHNlLCByZWFzb24pO1xuICB9LCBbdG9nZ2xlVmlzaWJpbGl0eV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgc2V0VmlzaWJsZShpc1BvcG92ZXJWaXNpYmxlKTtcbiAgfSwgW2lzUG9wb3ZlclZpc2libGVdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIENoZWNrIGlmIHRoaXMgaXMgYSBtb2JpbGUgYnJlYWtwb2ludFxuICAgIHNldElzTW9iaWxlQnJlYWtwb2ludChnZXRNb2JpbGVCcmVha3BvaW50KHJlbmRlckFzU2hlZXRPbk1vYmlsZSkpO1xuICB9LCBbaXNWaXNpYmxlLCByZW5kZXJBc1NoZWV0T25Nb2JpbGVdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGxldCB0cmlnZ2VyOiBIVE1MRWxlbWVudDtcblxuICAgIGlmIChleHRlcm5hbFRyaWdnZXJSZWY/LmN1cnJlbnQgJiYgIWNoaWxkcmVuKSB7XG4gICAgICB0cmlnZ2VyID0gZXh0ZXJuYWxUcmlnZ2VyUmVmLmN1cnJlbnQ7XG5cbiAgICAgIHRyaWdnZXIuc2V0QXR0cmlidXRlKFwidGFiaW5kZXhcIiwgXCIwXCIpO1xuICAgICAgdHJpZ2dlci5hZGRFdmVudExpc3RlbmVyKFwiY2xpY2tcIiwgaGFuZGxlVHJpZ2dlckNsaWNrKTtcbiAgICB9XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgaWYgKHRyaWdnZXIpIHtcbiAgICAgICAgdHJpZ2dlci5yZW1vdmVFdmVudExpc3RlbmVyKFwiY2xpY2tcIiwgaGFuZGxlVHJpZ2dlckNsaWNrKTtcbiAgICAgIH1cbiAgICB9O1xuICB9LCBbZXh0ZXJuYWxUcmlnZ2VyUmVmLCBjaGlsZHJlbiwgaGFuZGxlVHJpZ2dlckNsaWNrXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoZXh0ZXJuYWxUcmlnZ2VyUmVmPy5jdXJyZW50ICYmICFjaGlsZHJlbikge1xuICAgICAgY29uc3QgdHJpZ2dlciA9IGV4dGVybmFsVHJpZ2dlclJlZi5jdXJyZW50O1xuXG4gICAgICBpZiAoaXNWaXNpYmxlKSB7XG4gICAgICAgIHRyaWdnZXIuc2V0QXR0cmlidXRlKFwiYXJpYS1leHBhbmRlZFwiLCB0cnVlKTtcbiAgICAgICAgdHJpZ2dlci5zZXRBdHRyaWJ1dGUoXCJhcmlhLWNvbnRyb2xzXCIsIHRvb2x0aXBJZCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0cmlnZ2VyLnJlbW92ZUF0dHJpYnV0ZShcImFyaWEtZXhwYW5kZWRcIik7XG4gICAgICAgIHRyaWdnZXIucmVtb3ZlQXR0cmlidXRlKFwiYXJpYS1jb250cm9sc1wiKTtcbiAgICAgIH1cbiAgICB9XG4gIH0sIFtleHRlcm5hbFRyaWdnZXJSZWYsIGNoaWxkcmVuLCB0b29sdGlwSWQsIGlzVmlzaWJsZV0pO1xuXG4gIGNvbnN0IHRyaWdnZXJFbG0gPSBjaGlsZHJlblxuICAgID8gUmVhY3QuY2xvbmVFbGVtZW50KGNoaWxkcmVuLCB7XG4gICAgICAgIHJlZjogdHJpZ2dlclJlZixcbiAgICAgICAgLi4uKGlzVmlzaWJsZSAmJiB7XG4gICAgICAgICAgXCJhcmlhLWV4cGFuZGVkXCI6IHRydWUsXG4gICAgICAgICAgXCJhcmlhLWNvbnRyb2xzXCI6IHRvb2x0aXBJZCxcbiAgICAgICAgfSksXG4gICAgICAgIHRhYkluZGV4OiAwLFxuICAgICAgICBvbkNsaWNrOiAoZXZ0OiBSZWFjdC5Nb3VzZUV2ZW50KSA9PiB7XG4gICAgICAgICAgaGFuZGxlVHJpZ2dlckNsaWNrKCk7XG4gICAgICAgICAgaWYgKGNoaWxkcmVuLnByb3BzLm9uQ2xpY2spIHtcbiAgICAgICAgICAgIGNoaWxkcmVuLnByb3BzLm9uQ2xpY2soZXZ0KTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sXG4gICAgICB9KVxuICAgIDogbnVsbDtcblxuICBpZiAoaXNNb2JpbGVCcmVha1BvaW50KSB7XG4gICAgLy8gcmVuZGVyIGFzIFNoZWV0XG4gICAgY29uc3Qgc2hlZXRFbG0gPSAoXG4gICAgICA8U2hlZXRcbiAgICAgICAgaWQ9e3Rvb2x0aXBJZH1cbiAgICAgICAgaXNWaXNpYmxlPXtpc1Zpc2libGV9XG4gICAgICAgIHBvcnRhbENvbnRhaW5lcj17cG9ydGFsQ29udGFpbmVyfVxuICAgICAgICBkaXNtaXNzT25PdXRzaWRlQ2xpY2s9e2Rpc21pc3NPbk91dHNpZGVDbGlja31cbiAgICAgICAgZGlzYWJsZUluaXRpYWxGb2N1cz17ZGlzYWJsZUluaXRpYWxGb2N1c31cbiAgICAgICAgZGlzYWJsZVJldHVybkZvY3VzVG9UcmlnZ2VyPXtkaXNhYmxlUmV0dXJuRm9jdXNUb1RyaWdnZXJ9XG4gICAgICAgIG9uQ2xvc2U9e2hhbmRsZVBvc3REZWFjdGl2YXRlfVxuICAgICAgICBvbkNsaWNrT3V0c2lkZURlYWN0aXZhdGVzPXtoYW5kbGVDbGlja091dHNpZGVEZWFjdGl2YXRlc31cbiAgICAgICAgey4uLihzaGVldFByb3BzID8/IHt9KX1cbiAgICAgID5cbiAgICAgICAge2NvbnRlbnR9XG4gICAgICA8L1NoZWV0PlxuICAgICk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAge3RyaWdnZXJFbG19XG4gICAgICAgIHtzaGVldEVsbX1cbiAgICAgIDwvPlxuICAgICk7XG4gIH1cblxuICAvLyByZW5kZXIgYXMgUG9wb3ZlclxuICBjb25zdCBjb250ZW50RWxtID0gKFxuICAgIDxGb2N1c1RyYXBXcmFwcGVyXG4gICAgICBhY3RpdmU9e2lzVmlzaWJsZX1cbiAgICAgIGZvY3VzVHJhcE9wdGlvbnM9e3tcbiAgICAgICAgY2xpY2tPdXRzaWRlRGVhY3RpdmF0ZXM6XG4gICAgICAgICAgZGlzbWlzc09uT3V0c2lkZUNsaWNrICYmIGhhbmRsZUNsaWNrT3V0c2lkZURlYWN0aXZhdGVzLCAvLyBkZS1hY3RpdmF0ZSBmb2N1cyB0cmFwIG9uIG91dHNpZGUgY2xpY2tcbiAgICAgICAgYWxsb3dPdXRzaWRlQ2xpY2s6IHRydWUsXG4gICAgICAgIGVzY2FwZURlYWN0aXZhdGVzOiB0cnVlLFxuICAgICAgICBmYWxsYmFja0ZvY3VzOiBgIyR7dG9vbHRpcElkfWAsIC8vIHNldCBmb2N1cyB0byB0b29sdGlwIGNvbnRlbnQgY29udGFpbmVyIGlmIGl0IGhhcyBubyBmb2N1c2FibGUgZWxlbWVudFxuICAgICAgICBvblBvc3REZWFjdGl2YXRlOiBoYW5kbGVQb3N0RGVhY3RpdmF0ZSxcbiAgICAgICAgcHJldmVudFNjcm9sbDogdHJ1ZSxcbiAgICAgICAgaW5pdGlhbEZvY3VzOiAoKSA9PiAhZGlzYWJsZUluaXRpYWxGb2N1cyxcbiAgICAgICAgcmV0dXJuRm9jdXNPbkRlYWN0aXZhdGU6ICFkaXNhYmxlUmV0dXJuRm9jdXNUb1RyaWdnZXIsXG4gICAgICB9fVxuICAgID5cbiAgICAgIDxGb2N1c1RyYXBDb250ZW50Pntjb250ZW50fTwvRm9jdXNUcmFwQ29udGVudD5cbiAgICA8L0ZvY3VzVHJhcFdyYXBwZXI+XG4gICk7XG5cbiAgY29uc3QgdG9vbHRpcEVsbSA9IChcbiAgICA8VG9vbHRpcENvbnRlbnRcbiAgICAgIHsuLi5yZXN0Q29udGVudFByb3BzfSAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIHJlYWN0L2pzeC1wcm9wcy1uby1zcHJlYWRpbmdcbiAgICAgIGRlZmF1bHRWZXJ0aWNhbFBsYWNlbWVudD17ZGVmYXVsdFZlcnRpY2FsUGxhY2VtZW50fVxuICAgICAgZGF0YURTSWQ9e25hbWV9XG4gICAgICBjb250ZW50PXtjb250ZW50RWxtfVxuICAgICAgY29udGVudFBhZGRpbmc9e2NvbnRlbnRQYWRkaW5nfVxuICAgICAgbWF4V2lkdGg9e21heFdpZHRofVxuICAgICAgcGxhY2VtZW50PXtwbGFjZW1lbnR9XG4gICAgICBwb3J0YWxDb250YWluZXI9e3BvcnRhbENvbnRhaW5lcn1cbiAgICAgIGRhdGFFMmVUZXN0SWQ9e2RhdGFFMmVUZXN0SWR9XG4gICAgICBzdWJUaGVtZT17c3ViVGhlbWV9XG4gICAgICBpc1Zpc2libGU9e2lzVmlzaWJsZX1cbiAgICAgIHRvb2x0aXBJZD17dG9vbHRpcElkfVxuICAgICAgdHJpZ2dlclJlZj17dHJpZ2dlclJlZn1cbiAgICAvPlxuICApO1xuXG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIHt0cmlnZ2VyRWxtfVxuICAgICAge3Rvb2x0aXBFbG19XG4gICAgPC8+XG4gICk7XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBcUR3QiJ9 */"),FocusTrapContent=React.forwardRef(({children},ref)=>React.createElement(StyledContainer,{ref:ref},children)),VisibilityChangeReason={triggerClick:"triggerClick",outsideClick:"outsideClick"};function getMobileBreakpoint(renderAsSheetOnMobile){return!!window&&renderAsSheetOnMobile&&window.innerWidth<=breakpoints.medium.value}export function BasePopover({placement="auto",content,children,contentPadding="m",maxWidth,externalTriggerRef,portalContainer,name="Popover",isVisible:isPopoverVisible,dismissOnOutsideClick=!0,"data-e2e-test-id":dataE2eTestId,subTheme,defaultVerticalPlacement,onVisibilityChange,disableInitialFocus=!1,disableReturnFocusToTrigger=!1,renderAsSheetOnMobile=!1,sheetProps,...restContentProps}){let tooltipId=useMemo(()=>`DS${name}_${Math.floor(Date.now()*Math.random())}`,[name]),[isVisible,setVisible]=useState(isPopoverVisible),[isMobileBreakPoint,setIsMobileBreakpoint]=useState(getMobileBreakpoint(renderAsSheetOnMobile)),internalTriggerRef=useRef(null),triggerRef=externalTriggerRef||internalTriggerRef,isOutsideClickOnTrigger=useRef(!1),toggleVisibility=useCallback((status,reason)=>{setVisible(status),onVisibilityChange&&onVisibilityChange(status,reason)},[onVisibilityChange]),handleTriggerClick=useCallback(()=>{isOutsideClickOnTrigger.current?isOutsideClickOnTrigger.current=!1:toggleVisibility(!isVisible,VisibilityChangeReason.triggerClick)},[toggleVisibility,isVisible]),handleClickOutsideDeactivates=useCallback(evt=>(triggerRef.current.contains(evt.target)&&(isOutsideClickOnTrigger.current=!0),!0),[triggerRef,isOutsideClickOnTrigger]),handlePostDeactivate=useCallback(()=>{toggleVisibility(!1,isOutsideClickOnTrigger.current?VisibilityChangeReason.triggerClick:VisibilityChangeReason.outsideClick)},[toggleVisibility]);useEffect(()=>{setVisible(isPopoverVisible)},[isPopoverVisible]),useEffect(()=>{setIsMobileBreakpoint(getMobileBreakpoint(renderAsSheetOnMobile))},[isVisible,renderAsSheetOnMobile]),useEffect(()=>{let trigger;return externalTriggerRef?.current&&!children&&((trigger=externalTriggerRef.current).setAttribute("tabindex","0"),trigger.addEventListener("click",handleTriggerClick)),()=>{trigger&&trigger.removeEventListener("click",handleTriggerClick)}},[externalTriggerRef,children,handleTriggerClick]),useEffect(()=>{if(externalTriggerRef?.current&&!children){let trigger=externalTriggerRef.current;isVisible?(trigger.setAttribute("aria-expanded",!0),trigger.setAttribute("aria-controls",tooltipId)):(trigger.removeAttribute("aria-expanded"),trigger.removeAttribute("aria-controls"))}},[externalTriggerRef,children,tooltipId,isVisible]);let triggerElm=children?React.cloneElement(children,{ref:triggerRef,...isVisible&&{"aria-expanded":!0,"aria-controls":tooltipId},tabIndex:0,onClick:evt=>{handleTriggerClick(),children.props.onClick&&children.props.onClick(evt)}}):null;if(isMobileBreakPoint){let sheetElm=React.createElement(Sheet,{id:tooltipId,isVisible:isVisible,portalContainer:portalContainer,dismissOnOutsideClick:dismissOnOutsideClick,disableInitialFocus:disableInitialFocus,disableReturnFocusToTrigger:disableReturnFocusToTrigger,onClose:handlePostDeactivate,onClickOutsideDeactivates:handleClickOutsideDeactivates,...sheetProps??{}},content);return React.createElement(React.Fragment,null,triggerElm,sheetElm)}let contentElm=React.createElement(FocusTrapWrapper,{active:isVisible,focusTrapOptions:{clickOutsideDeactivates:dismissOnOutsideClick&&handleClickOutsideDeactivates,allowOutsideClick:!0,escapeDeactivates:!0,fallbackFocus:`#${tooltipId}`,onPostDeactivate:handlePostDeactivate,preventScroll:!0,initialFocus:()=>!disableInitialFocus,returnFocusOnDeactivate:!disableReturnFocusToTrigger}},React.createElement(FocusTrapContent,null,content)),tooltipElm=React.createElement(TooltipContent,{...restContentProps,defaultVerticalPlacement:defaultVerticalPlacement,dataDSId:name,content:contentElm,contentPadding:contentPadding,maxWidth:maxWidth,placement:placement,portalContainer:portalContainer,dataE2eTestId:dataE2eTestId,subTheme:subTheme,isVisible:isVisible,tooltipId:tooltipId,triggerRef:triggerRef});return React.createElement(React.Fragment,null,triggerElm,tooltipElm)}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import type { TooltipContentProps } from "./TooltipContent";
|
|
3
3
|
import type { TooltipConditionalProps } from "./types";
|
|
4
|
-
type BaseProps = Pick<TooltipContentProps, "placement" | "portalContainer" | "contentPadding" | "maxWidth" | "subTheme"> & {
|
|
4
|
+
type BaseProps = Pick<TooltipContentProps, "placement" | "portalContainer" | "contentPadding" | "maxWidth" | "subTheme" | "onOverflowViewport"> & {
|
|
5
5
|
/** Tooltip content */
|
|
6
6
|
content: React.ReactElement;
|
|
7
7
|
"data-e2e-test-id"?: string;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { MutableRefObject, ReactElement } from "react";
|
|
2
2
|
import React from "react";
|
|
3
|
+
import type { Property } from "csstype";
|
|
3
4
|
import type { SubThemeTypes } from "../../web-tokens/_subThemeType";
|
|
4
5
|
import { type PortalProps } from "../Portal/Portal";
|
|
5
6
|
export type TooltipContentProps = {
|
|
@@ -15,11 +16,13 @@ export type TooltipContentProps = {
|
|
|
15
16
|
tabIndex?: number;
|
|
16
17
|
contentPadding?: "s" | "m";
|
|
17
18
|
subTheme?: SubThemeTypes;
|
|
18
|
-
maxWidth?: number;
|
|
19
|
+
maxWidth?: Property.MaxWidth | number;
|
|
19
20
|
defaultVerticalPlacement?: TooltipStyle["verticalPlacement"];
|
|
20
21
|
onTooltipPointerEnter?: React.PointerEventHandler<HTMLDivElement>;
|
|
21
22
|
onTooltipPointerLeave?: React.PointerEventHandler<HTMLDivElement>;
|
|
22
23
|
hideArrow?: boolean;
|
|
24
|
+
/** This callback is triggered when content overflows the viewport both above and below trigger. Use this for tracking purposes or re-rendering Popover with a larger maxWidth */
|
|
25
|
+
onOverflowViewport?: (triggerRect: DOMRect, tooltipRect: DOMRect, viewportHeight: number) => void;
|
|
23
26
|
} & Pick<PortalProps, "portalContainer">;
|
|
24
27
|
export type TooltipStyle = {
|
|
25
28
|
top: number;
|
|
@@ -28,4 +31,4 @@ export type TooltipStyle = {
|
|
|
28
31
|
verticalPlacement: "top" | "bottom";
|
|
29
32
|
};
|
|
30
33
|
/** This component is used to display the overlay for both Toggletip and Tooltip components */
|
|
31
|
-
export declare function TooltipContent({ placement, content, tooltipId, triggerRef, portalContainer, dataE2eTestId, dataDSId, isVisible, "aria-hidden": ariaHidden, role, tabIndex, contentPadding, maxWidth, subTheme, defaultVerticalPlacement, onTooltipPointerEnter, onTooltipPointerLeave, hideArrow, }: TooltipContentProps): React.ReactElement;
|
|
34
|
+
export declare function TooltipContent({ placement, content, tooltipId, triggerRef, portalContainer, dataE2eTestId, dataDSId, isVisible, "aria-hidden": ariaHidden, role, tabIndex, contentPadding, maxWidth, subTheme, defaultVerticalPlacement, onTooltipPointerEnter, onTooltipPointerLeave, hideArrow, onOverflowViewport, }: TooltipContentProps): React.ReactElement;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import React,{useCallback,useEffect,useLayoutEffect,useMemo,useRef,useState}from"react";import styled from"@emotion/styled";import{keyframes}from"@emotion/react";import{useDocument}from"../../shared/useDocument";import{useWindow}from"../../shared/useWindow";import{SubThemeProvider}from"../SubThemeProvider/SubThemeProvider";import{Portal}from"../Portal/Portal";import zIndices from"../../web-tokens/_zindex.json";import{ANIMATION_DISTANCE,ARROW_SIZE,ARROW_SIZE_BIG,DISTANCE_FROM_TRIGGER,getArrowOffset,getTooltipStyle}from"./utils";let StyledContainer=styled("div",{target:"es2ixfw0",label:"StyledContainer"})(({theme,horizontalPlacement,verticalPlacement,maxWidth,contentPadding,subTheme})=>{let animationDistance="top"===verticalPlacement?`${ANIMATION_DISTANCE}px`:`-${ANIMATION_DISTANCE}px`,animation=keyframes({to:{opacity:theme.variables.opacity.visible,transform:"center"===horizontalPlacement?`translate(-50%, ${animationDistance})`:`translateY(${animationDistance})`}}),contentPaddingMap={s:theme.variables.size.spacing.xxs,m:theme.variables.size.spacing.s},invertedSubThemeStyles={padding:`${theme.variables.size.spacing.xs} ${theme.variables.size.spacing.s}`,...contentPadding&&{padding:contentPaddingMap[contentPadding]}};return{position:"absolute",zIndex:zIndices.tooltip.value,opacity:theme.variables.opacity.hidden,animation:`200ms ease-out forwards ${animation}`,maxWidth,width:"max-content",boxSizing:"border-box",backgroundColor:subTheme?theme.values.color.background.primary.default:theme.values.color.background.elevated.default,borderRadius:subTheme?theme.variables.size.borderRadius.xs:theme.variables.size.borderRadius.s,...!!subTheme&&invertedSubThemeStyles,..."center"===horizontalPlacement&&{transform:"translate(-50%)"},...!subTheme&&{":after":{content:'" "',position:"absolute",top:0,left:0,width:"100%",height:"100%",pointerEvents:"none",borderRadius:"inherit",boxShadow:theme.values.elevation[3]}}}},"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvVG9vbHRpcC9Ub29sdGlwQ29udGVudC50c3giLCJzb3VyY2VzIjpbInNyYy9jb21wb25lbnRzL1Rvb2x0aXAvVG9vbHRpcENvbnRlbnQudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTXV0YWJsZVJlZk9iamVjdCwgUmVhY3RFbGVtZW50IH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgUmVhY3QsIHtcbiAgdXNlQ2FsbGJhY2ssXG4gIHVzZUVmZmVjdCxcbiAgdXNlTGF5b3V0RWZmZWN0LFxuICB1c2VNZW1vLFxuICB1c2VSZWYsXG4gIHVzZVN0YXRlLFxufSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBzdHlsZWQgZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHsga2V5ZnJhbWVzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyB1c2VEb2N1bWVudCB9IGZyb20gXCIuLi8uLi9zaGFyZWQvdXNlRG9jdW1lbnRcIjtcbmltcG9ydCB7IHVzZVdpbmRvdyB9IGZyb20gXCIuLi8uLi9zaGFyZWQvdXNlV2luZG93XCI7XG5pbXBvcnQgeyBTdWJUaGVtZVByb3ZpZGVyIH0gZnJvbSBcIi4uL1N1YlRoZW1lUHJvdmlkZXIvU3ViVGhlbWVQcm92aWRlclwiO1xuaW1wb3J0IHR5cGUgeyBTdWJUaGVtZVR5cGVzIH0gZnJvbSBcIi4uLy4uL3dlYi10b2tlbnMvX3N1YlRoZW1lVHlwZVwiO1xuaW1wb3J0IHsgUG9ydGFsLCB0eXBlIFBvcnRhbFByb3BzIH0gZnJvbSBcIi4uL1BvcnRhbC9Qb3J0YWxcIjtcbmltcG9ydCB6SW5kaWNlcyBmcm9tIFwiLi4vLi4vd2ViLXRva2Vucy9femluZGV4Lmpzb25cIjtcblxuaW1wb3J0IHtcbiAgQU5JTUFUSU9OX0RJU1RBTkNFLFxuICBBUlJPV19TSVpFLFxuICBBUlJPV19TSVpFX0JJRyxcbiAgRElTVEFOQ0VfRlJPTV9UUklHR0VSLFxuICBnZXRBcnJvd09mZnNldCxcbiAgZ2V0VG9vbHRpcFN0eWxlLFxufSBmcm9tIFwiLi91dGlsc1wiO1xuXG5leHBvcnQgdHlwZSBUb29sdGlwQ29udGVudFByb3BzID0ge1xuICBjb250ZW50OiBSZWFjdEVsZW1lbnQ7XG4gIHRyaWdnZXJSZWY6IE11dGFibGVSZWZPYmplY3Q8YW55PjtcbiAgcGxhY2VtZW50PzpcbiAgICB8IFwiYXV0b1wiXG4gICAgfCBcInRvcFwiXG4gICAgfCBcImJvdHRvbVwiXG4gICAgfCBcInRvcC1sZWZ0XCJcbiAgICB8IFwidG9wLXJpZ2h0XCJcbiAgICB8IFwiYm90dG9tLWxlZnRcIlxuICAgIHwgXCJib3R0b20tcmlnaHRcIjtcbiAgZGF0YUUyZVRlc3RJZD86IHN0cmluZztcbiAgZGF0YURTSWQ6IHN0cmluZztcbiAgaXNWaXNpYmxlPzogYm9vbGVhbjtcbiAgdG9vbHRpcElkPzogc3RyaW5nO1xuICBcImFyaWEtaGlkZGVuXCI/OiBib29sZWFuO1xuICByb2xlPzogc3RyaW5nO1xuICB0YWJJbmRleD86IG51bWJlcjtcbiAgY29udGVudFBhZGRpbmc/OiBcInNcIiB8IFwibVwiO1xuICBzdWJUaGVtZT86IFN1YlRoZW1lVHlwZXM7XG4gIG1heFdpZHRoPzogbnVtYmVyO1xuICBkZWZhdWx0VmVydGljYWxQbGFjZW1lbnQ/OiBUb29sdGlwU3R5bGVbXCJ2ZXJ0aWNhbFBsYWNlbWVudFwiXTtcbiAgb25Ub29sdGlwUG9pbnRlckVudGVyPzogUmVhY3QuUG9pbnRlckV2ZW50SGFuZGxlcjxIVE1MRGl2RWxlbWVudD47XG4gIG9uVG9vbHRpcFBvaW50ZXJMZWF2ZT86IFJlYWN0LlBvaW50ZXJFdmVudEhhbmRsZXI8SFRNTERpdkVsZW1lbnQ+O1xuICBoaWRlQXJyb3c/OiBib29sZWFuO1xufSAmIFBpY2s8UG9ydGFsUHJvcHMsIFwicG9ydGFsQ29udGFpbmVyXCI+O1xuXG5leHBvcnQgdHlwZSBUb29sdGlwU3R5bGUgPSB7XG4gIHRvcDogbnVtYmVyO1xuICBsZWZ0OiBudW1iZXI7XG4gIGhvcml6b250YWxQbGFjZW1lbnQ6IFwibGVmdFwiIHwgXCJyaWdodFwiIHwgXCJjZW50ZXJcIjtcbiAgdmVydGljYWxQbGFjZW1lbnQ6IFwidG9wXCIgfCBcImJvdHRvbVwiO1xufTtcblxudHlwZSBTdHlsZWRDb250YWluZXJQcm9wcyA9IFBpY2s8XG4gIFRvb2x0aXBDb250ZW50UHJvcHMsXG4gIFwiY29udGVudFBhZGRpbmdcIiB8IFwibWF4V2lkdGhcIiB8IFwic3ViVGhlbWVcIlxuPiAmIHtcbiAgaG9yaXpvbnRhbFBsYWNlbWVudDogVG9vbHRpcFN0eWxlW1wiaG9yaXpvbnRhbFBsYWNlbWVudFwiXTtcbiAgdmVydGljYWxQbGFjZW1lbnQ6IFRvb2x0aXBTdHlsZVtcInZlcnRpY2FsUGxhY2VtZW50XCJdO1xufTtcblxuY29uc3QgQU5JTUFUSU9OX0RVUkFUSU9OID0gMjAwO1xuY29uc3QgU0hPV19ISURFX0RFTEFZID0gMjAwO1xuY29uc3QgTUFYX0NPTlRFTlRfV0lEVEggPSAyMjQ7XG5cbmNvbnN0IFN0eWxlZENvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkQ29udGFpbmVyUHJvcHM+KFxuICAoe1xuICAgIHRoZW1lLFxuICAgIGhvcml6b250YWxQbGFjZW1lbnQsXG4gICAgdmVydGljYWxQbGFjZW1lbnQsXG4gICAgbWF4V2lkdGgsXG4gICAgY29udGVudFBhZGRpbmcsXG4gICAgc3ViVGhlbWUsXG4gIH0pID0+IHtcbiAgICBjb25zdCBhbmltYXRpb25EaXN0YW5jZSA9XG4gICAgICB2ZXJ0aWNhbFBsYWNlbWVudCA9PT0gXCJ0b3BcIlxuICAgICAgICA/IGAke0FOSU1BVElPTl9ESVNUQU5DRX1weGBcbiAgICAgICAgOiBgLSR7QU5JTUFUSU9OX0RJU1RBTkNFfXB4YDtcbiAgICBjb25zdCBhbmltYXRpb24gPSBrZXlmcmFtZXMoe1xuICAgICAgdG86IHtcbiAgICAgICAgb3BhY2l0eTogdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZSxcbiAgICAgICAgdHJhbnNmb3JtOlxuICAgICAgICAgIGhvcml6b250YWxQbGFjZW1lbnQgPT09IFwiY2VudGVyXCJcbiAgICAgICAgICAgID8gYHRyYW5zbGF0ZSgtNTAlLCAke2FuaW1hdGlvbkRpc3RhbmNlfSlgXG4gICAgICAgICAgICA6IGB0cmFuc2xhdGVZKCR7YW5pbWF0aW9uRGlzdGFuY2V9KWAsXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgY29uc3QgY29udGVudFBhZGRpbmdNYXAgPSB7XG4gICAgICBzOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnh4cyxcbiAgICAgIG06IHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcucyxcbiAgICB9O1xuXG4gICAgY29uc3QgaW52ZXJ0ZWRTdWJUaGVtZVN0eWxlcyA9IHtcbiAgICAgIHBhZGRpbmc6IGAke3RoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHN9ICR7dGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zfWAsXG4gICAgICAuLi4oY29udGVudFBhZGRpbmcgJiYge1xuICAgICAgICBwYWRkaW5nOiBjb250ZW50UGFkZGluZ01hcFtjb250ZW50UGFkZGluZ10sXG4gICAgICB9KSxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHBvc2l0aW9uOiBcImFic29sdXRlXCIsXG4gICAgICB6SW5kZXg6IHpJbmRpY2VzLnRvb2x0aXAudmFsdWUsXG4gICAgICBvcGFjaXR5OiB0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW4sXG4gICAgICBhbmltYXRpb246IGAke0FOSU1BVElPTl9EVVJBVElPTn1tcyBlYXNlLW91dCBmb3J3YXJkcyAke2FuaW1hdGlvbn1gLFxuICAgICAgbWF4V2lkdGgsXG4gICAgICB3aWR0aDogXCJtYXgtY29udGVudFwiLFxuICAgICAgYm94U2l6aW5nOiBcImJvcmRlci1ib3hcIixcbiAgICAgIGJhY2tncm91bmRDb2xvcjogc3ViVGhlbWVcbiAgICAgICAgPyB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LmRlZmF1bHRcbiAgICAgICAgOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5lbGV2YXRlZC5kZWZhdWx0LFxuICAgICAgYm9yZGVyUmFkaXVzOiBzdWJUaGVtZVxuICAgICAgICA/IHRoZW1lLnZhcmlhYmxlcy5zaXplLmJvcmRlclJhZGl1cy54c1xuICAgICAgICA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmJvcmRlclJhZGl1cy5zLFxuXG4gICAgICAuLi4oISFzdWJUaGVtZSAmJiBpbnZlcnRlZFN1YlRoZW1lU3R5bGVzKSxcbiAgICAgIC4uLihob3Jpem9udGFsUGxhY2VtZW50ID09PSBcImNlbnRlclwiICYmIHtcbiAgICAgICAgdHJhbnNmb3JtOiBcInRyYW5zbGF0ZSgtNTAlKVwiLFxuICAgICAgfSksXG5cbiAgICAgIC4uLighc3ViVGhlbWUgJiYge1xuICAgICAgICBcIjphZnRlclwiOiB7XG4gICAgICAgICAgY29udGVudDogJ1wiIFwiJyxcbiAgICAgICAgICBwb3NpdGlvbjogXCJhYnNvbHV0ZVwiLFxuICAgICAgICAgIHRvcDogMCxcbiAgICAgICAgICBsZWZ0OiAwLFxuICAgICAgICAgIHdpZHRoOiBcIjEwMCVcIixcbiAgICAgICAgICBoZWlnaHQ6IFwiMTAwJVwiLFxuICAgICAgICAgIHBvaW50ZXJFdmVudHM6IFwibm9uZVwiLFxuICAgICAgICAgIGJvcmRlclJhZGl1czogXCJpbmhlcml0XCIsXG4gICAgICAgICAgYm94U2hhZG93OiB0aGVtZS52YWx1ZXMuZWxldmF0aW9uWzNdLFxuICAgICAgICB9LFxuICAgICAgfSksXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRBcnJvd1Byb3BzID0gUGljazxUb29sdGlwQ29udGVudFByb3BzLCBcInN1YlRoZW1lXCI+ICYge1xuICB2ZXJ0aWNhbFBsYWNlbWVudDogVG9vbHRpcFN0eWxlW1widmVydGljYWxQbGFjZW1lbnRcIl07XG4gIGhvcml6b250YWxQbGFjZW1lbnQ6IFRvb2x0aXBTdHlsZVtcImhvcml6b250YWxQbGFjZW1lbnRcIl07XG4gIHNpemU/OiAwIHwgdHlwZW9mIEFSUk9XX1NJWkUgfCB0eXBlb2YgQVJST1dfU0laRV9CSUc7XG59O1xuXG4vLyBUaGlzIGNvbnRhaW5lciBpcyBsYXJnZSBlbm91Z2ggdG8gY29udGFpbiB0aGUgYXJyb3cgc2hhZG93IGJsdXJcbmNvbnN0IEFSUk9XX0NPTlRBSU5FUl9XSURUSCA9IDQwO1xuXG5jb25zdCBTdHlsZWRBcnJvdyA9IHN0eWxlZC5kaXY8U3R5bGVkQXJyb3dQcm9wcz4oXG4gICh7XG4gICAgdGhlbWUsXG4gICAgc3ViVGhlbWUsXG4gICAgdmVydGljYWxQbGFjZW1lbnQsXG4gICAgaG9yaXpvbnRhbFBsYWNlbWVudCxcbiAgICBzaXplID0gQVJST1dfU0laRSxcbiAgfSkgPT4ge1xuICAgIGNvbnN0IG9mZnNldCA9IGdldEFycm93T2Zmc2V0KHNpemUpO1xuICAgIGNvbnN0IGFkanVzdG1lbnRGb3JTaGFkb3cgPSBzdWJUaGVtZSA/IDAgOiAxO1xuICAgIGNvbnN0IGFycm93Q29udGFpbmVySGVpZ2h0ID0gc2l6ZSArIERJU1RBTkNFX0ZST01fVFJJR0dFUjtcbiAgICAvLyBHZXQgYXJyb3cgd2lkdGggYW5kIGhlaWdodCB1c2luZyBweXRob2dvcmFzIHRoZW9yZW0gYW5kIGFkZCAxIHRvIGhlaWdodCB0byBhY2NvdW50IGZvciBkYXJrIG1vZGUgc2hhZG93LlxuICAgIGNvbnN0IGFycm93U2lkZUxlbmd0aCA9IE1hdGguc3FydChcbiAgICAgIHNpemUgKiogMiArIChzaXplICsgYWRqdXN0bWVudEZvclNoYWRvdykgKiogMlxuICAgICk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgICAgIHdpZHRoOiBBUlJPV19DT05UQUlORVJfV0lEVEgsXG4gICAgICBoZWlnaHQ6IGFycm93Q29udGFpbmVySGVpZ2h0LFxuICAgICAgekluZGV4OiAxLFxuICAgICAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG5cbiAgICAgIC4uLih2ZXJ0aWNhbFBsYWNlbWVudCA9PT0gXCJ0b3BcIiAmJiB7XG4gICAgICAgIC8vIHBsYWNlIHRoZSBhcnJvdyBjb250YWluZXIgMXB4IGluc2lkZSB0b29sdGlwIGNvbnRhaW5lciB0byBhY2NvdW50IGZvciBkYXJrIG1vZGUgYm94LXNoYWRvd1xuICAgICAgICB0b3A6IGBjYWxjKDEwMCUgLSAke2FkanVzdG1lbnRGb3JTaGFkb3d9cHgpYCxcbiAgICAgIH0pLFxuXG4gICAgICAuLi4odmVydGljYWxQbGFjZW1lbnQgPT09IFwiYm90dG9tXCIgJiYge1xuICAgICAgICAvLyBwbGFjZSB0aGUgYXJyb3cgY29udGFpbmVyIDFweCBpbnNpZGUgdG9vbHRpcCBjb250YWluZXIgdG8gYWNjb3VudCBmb3IgZGFyayBtb2RlIGJveC1zaGFkb3dcbiAgICAgICAgdG9wOiBgLSR7YXJyb3dDb250YWluZXJIZWlnaHQgLSBhZGp1c3RtZW50Rm9yU2hhZG93fXB4YCxcbiAgICAgIH0pLFxuXG4gICAgICAuLi4oaG9yaXpvbnRhbFBsYWNlbWVudCA9PT0gXCJjZW50ZXJcIiAmJiB7XG4gICAgICAgIGxlZnQ6IFwiNTAlXCIsXG4gICAgICAgIHRyYW5zZm9ybTogXCJ0cmFuc2xhdGUoLTUwJSlcIixcbiAgICAgIH0pLFxuXG4gICAgICAuLi4oaG9yaXpvbnRhbFBsYWNlbWVudCA9PT0gXCJyaWdodFwiICYmIHtcbiAgICAgICAgbGVmdDogYCR7b2Zmc2V0IC0gKEFSUk9XX0NPTlRBSU5FUl9XSURUSCAvIDIgLSBzaXplKX1weGAsXG4gICAgICB9KSxcblxuICAgICAgLi4uKGhvcml6b250YWxQbGFjZW1lbnQgPT09IFwibGVmdFwiICYmIHtcbiAgICAgICAgcmlnaHQ6IGAke29mZnNldCAtIChBUlJPV19DT05UQUlORVJfV0lEVEggLyAyIC0gc2l6ZSl9cHhgLFxuICAgICAgfSksXG5cbiAgICAgIFwiJjo6YWZ0ZXJcIjoge1xuICAgICAgICBjb250ZW50OiAnXCIgXCInLFxuICAgICAgICBwb3NpdGlvbjogXCJhYnNvbHV0ZVwiLFxuICAgICAgICB0b3A6IHZlcnRpY2FsUGxhY2VtZW50ID09PSBcInRvcFwiID8gMCA6IFwiMTAwJVwiLFxuICAgICAgICBsZWZ0OiBcIjUwJVwiLFxuICAgICAgICB3aWR0aDogYXJyb3dTaWRlTGVuZ3RoLFxuICAgICAgICBoZWlnaHQ6IGFycm93U2lkZUxlbmd0aCxcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiBzdWJUaGVtZVxuICAgICAgICAgID8gdGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQucHJpbWFyeS5kZWZhdWx0XG4gICAgICAgICAgOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5lbGV2YXRlZC5kZWZhdWx0LFxuICAgICAgICB0cmFuc2Zvcm06IFwidHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSg0NWRlZylcIixcblxuICAgICAgICAuLi4oIXN1YlRoZW1lICYmIHtcbiAgICAgICAgICBib3hTaGFkb3c6IHRoZW1lLnZhbHVlcy5lbGV2YXRpb25bM10sXG4gICAgICAgIH0pLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG4pO1xuXG5jb25zdCBpbml0aWFsU3R5bGU6IFRvb2x0aXBTdHlsZSA9IHtcbiAgdG9wOiAwLFxuICBsZWZ0OiAwLFxuICB2ZXJ0aWNhbFBsYWNlbWVudDogXCJ0b3BcIixcbiAgaG9yaXpvbnRhbFBsYWNlbWVudDogXCJjZW50ZXJcIixcbn07XG5cbmxldCBsYXN0VG9vbHRpcEhpZGVUaW1lc3RhbXAgPSAwO1xuXG4vKiBEaXNhYmxlIGFuaW1hdGlvbiBpZiB0aW1lIGJldHdlZW4gbGFzdCBjbG9zZSBhbmQgbmV3IG9wZW4gaXMgbGVzcyB0aGFuIDUwMG1zICsgU0hPV19ISURFX0RFTEFZICovXG5mdW5jdGlvbiBnZXRBbmltYXRpb25EdXJhdGlvbigpIHtcbiAgbGV0IGFuaW1hdGlvbkR1cmF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OfW1zYDtcblxuICBpZiAobGFzdFRvb2x0aXBIaWRlVGltZXN0YW1wKSB7XG4gICAgY29uc3QgdGltZVNpbmNlTGFzdFRvb2x0aXAgPSBEYXRlLm5vdygpIC0gbGFzdFRvb2x0aXBIaWRlVGltZXN0YW1wO1xuXG4gICAgaWYgKHRpbWVTaW5jZUxhc3RUb29sdGlwIDwgNTAwICsgU0hPV19ISURFX0RFTEFZKSB7XG4gICAgICBhbmltYXRpb25EdXJhdGlvbiA9IFwiMG1zXCI7XG4gICAgfVxuICB9XG4gIHJldHVybiBhbmltYXRpb25EdXJhdGlvbjtcbn1cblxuLyoqIFRoaXMgY29tcG9uZW50IGlzIHVzZWQgdG8gZGlzcGxheSB0aGUgb3ZlcmxheSBmb3IgYm90aCBUb2dnbGV0aXAgYW5kIFRvb2x0aXAgY29tcG9uZW50cyAqL1xuZXhwb3J0IGZ1bmN0aW9uIFRvb2x0aXBDb250ZW50KHtcbiAgcGxhY2VtZW50ID0gXCJhdXRvXCIsXG4gIGNvbnRlbnQsXG4gIHRvb2x0aXBJZCxcbiAgdHJpZ2dlclJlZixcbiAgcG9ydGFsQ29udGFpbmVyLFxuICBkYXRhRTJlVGVzdElkLFxuICBkYXRhRFNJZCxcbiAgaXNWaXNpYmxlLFxuICBcImFyaWEtaGlkZGVuXCI6IGFyaWFIaWRkZW4sXG4gIHJvbGUsXG4gIHRhYkluZGV4LFxuICBjb250ZW50UGFkZGluZyxcbiAgbWF4V2lkdGggPSBNQVhfQ09OVEVOVF9XSURUSCxcbiAgc3ViVGhlbWUsXG4gIGRlZmF1bHRWZXJ0aWNhbFBsYWNlbWVudCxcbiAgb25Ub29sdGlwUG9pbnRlckVudGVyLFxuICBvblRvb2x0aXBQb2ludGVyTGVhdmUsXG4gIGhpZGVBcnJvdyA9IGZhbHNlLFxufTogVG9vbHRpcENvbnRlbnRQcm9wcyk6IFJlYWN0LlJlYWN0RWxlbWVudCB7XG4gIGNvbnN0IFtzdHlsZSwgc2V0U3R5bGVdID0gdXNlU3RhdGUoaW5pdGlhbFN0eWxlKTtcbiAgY29uc3QgdG9vbHRpcFJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgZG9jdW1lbnQgPSB1c2VEb2N1bWVudCgpO1xuICBjb25zdCB3aW5kb3cgPSB1c2VXaW5kb3coKTtcblxuICBjb25zdCBhcnJvd1NpemUgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoaGlkZUFycm93KSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIHN1YlRoZW1lID8gQVJST1dfU0laRSA6IEFSUk9XX1NJWkVfQklHO1xuICB9LCBbc3ViVGhlbWUsIGhpZGVBcnJvd10pO1xuXG4gIGNvbnN0IGNhbGN1bGF0ZVN0eWxlID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGlmICh0cmlnZ2VyUmVmLmN1cnJlbnQgJiYgdG9vbHRpcFJlZi5jdXJyZW50KSB7XG4gICAgICAvLyBjYWxjdWxhdGUgdG9vbHRpcCBzdHlsZVxuICAgICAgc2V0U3R5bGUoXG4gICAgICAgIGdldFRvb2x0aXBTdHlsZShcbiAgICAgICAgICBwbGFjZW1lbnQsXG4gICAgICAgICAgZGVmYXVsdFZlcnRpY2FsUGxhY2VtZW50LFxuICAgICAgICAgIHRyaWdnZXJSZWYsXG4gICAgICAgICAgdG9vbHRpcFJlZixcbiAgICAgICAgICBkb2N1bWVudCxcbiAgICAgICAgICB3aW5kb3csXG4gICAgICAgICAgYXJyb3dTaXplXG4gICAgICAgIClcbiAgICAgICk7XG4gICAgfVxuICB9LCBbXG4gICAgdHJpZ2dlclJlZixcbiAgICB0b29sdGlwUmVmLFxuICAgIGRvY3VtZW50LFxuICAgIHdpbmRvdyxcbiAgICBwbGFjZW1lbnQsXG4gICAgYXJyb3dTaXplLFxuICAgIGRlZmF1bHRWZXJ0aWNhbFBsYWNlbWVudCxcbiAgXSk7XG5cbiAgLy8gVGhpcyBsYXlvdXQgZWZmZWN0IHRvIHJlLXJlbmRlciB3aXRoIHVwZGF0ZWQgcG9zaXRpb24gYWZ0ZXIgZGV0ZXJtaW5pbmcgY29udGVudCB3aWR0aFxuICB1c2VMYXlvdXRFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChpc1Zpc2libGUpIHtcbiAgICAgIGNhbGN1bGF0ZVN0eWxlKCk7XG4gICAgfVxuICB9LCBbaXNWaXNpYmxlLCBjYWxjdWxhdGVTdHlsZSwgY29udGVudFBhZGRpbmcsIGNvbnRlbnRdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChpc1Zpc2libGUgJiYgdG9vbHRpcFJlZi5jdXJyZW50KSB7XG4gICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcInJlc2l6ZVwiLCBjYWxjdWxhdGVTdHlsZSk7XG4gICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcInNjcm9sbFwiLCBjYWxjdWxhdGVTdHlsZSwgdHJ1ZSk7IC8vIHVzZSBjYXB0dXJlIGhlcmUgdG8gZGV0ZWN0IHNjcm9sbCBvbiBhbnkgcGFyZW50XG4gICAgfSBlbHNlIGlmICghaXNWaXNpYmxlKSB7XG4gICAgICAvLyBsb2cgdGltZSB3aGVuIHRvb2x0aXAgY2xvc2VzXG4gICAgICBsYXN0VG9vbHRpcEhpZGVUaW1lc3RhbXAgPSBEYXRlLm5vdygpO1xuICAgIH1cblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcihcInJlc2l6ZVwiLCBjYWxjdWxhdGVTdHlsZSk7XG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcihcInNjcm9sbFwiLCBjYWxjdWxhdGVTdHlsZSwgdHJ1ZSk7XG4gICAgfTtcbiAgfSwgW2lzVmlzaWJsZSwgY2FsY3VsYXRlU3R5bGUsIHdpbmRvdywgdG9vbHRpcFJlZl0pO1xuXG4gIGlmICghaXNWaXNpYmxlKSByZXR1cm4gbnVsbDtcblxuICBjb25zdCB0b29sdGlwRWxtID0gKFxuICAgIDxTdHlsZWRDb250YWluZXJcbiAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9e2RhdGFFMmVUZXN0SWR9XG4gICAgICBkYXRhLWRzLWlkPXtkYXRhRFNJZH1cbiAgICAgIHN0eWxlPXt7XG4gICAgICAgIHRvcDogc3R5bGUudG9wLFxuICAgICAgICBsZWZ0OiBzdHlsZS5sZWZ0LFxuICAgICAgICBhbmltYXRpb25EdXJhdGlvbjogZ2V0QW5pbWF0aW9uRHVyYXRpb24oKSxcbiAgICAgIH19XG4gICAgICByZWY9e3Rvb2x0aXBSZWZ9XG4gICAgICBpZD17dG9vbHRpcElkfVxuICAgICAgcm9sZT17cm9sZX1cbiAgICAgIGFyaWEtaGlkZGVuPXthcmlhSGlkZGVufVxuICAgICAgc3ViVGhlbWU9e3N1YlRoZW1lfVxuICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgaG9yaXpvbnRhbFBsYWNlbWVudD17c3R5bGUuaG9yaXpvbnRhbFBsYWNlbWVudH1cbiAgICAgIHZlcnRpY2FsUGxhY2VtZW50PXtzdHlsZS52ZXJ0aWNhbFBsYWNlbWVudH1cbiAgICAgIG1heFdpZHRoPXttYXhXaWR0aH1cbiAgICAgIGNvbnRlbnRQYWRkaW5nPXtjb250ZW50UGFkZGluZ31cbiAgICAgIG9uUG9pbnRlckVudGVyPXtvblRvb2x0aXBQb2ludGVyRW50ZXJ9XG4gICAgICBvblBvaW50ZXJMZWF2ZT17b25Ub29sdGlwUG9pbnRlckxlYXZlfVxuICAgID5cbiAgICAgIHtjb250ZW50fVxuICAgICAgeyFoaWRlQXJyb3cgJiYgKFxuICAgICAgICA8U3R5bGVkQXJyb3dcbiAgICAgICAgICBkYXRhLWUyZS10ZXN0LWlkPXtgJHtkYXRhRTJlVGVzdElkfV9hcnJvd2B9XG4gICAgICAgICAgc3ViVGhlbWU9e3N1YlRoZW1lfVxuICAgICAgICAgIGhvcml6b250YWxQbGFjZW1lbnQ9e3N0eWxlLmhvcml6b250YWxQbGFjZW1lbnR9XG4gICAgICAgICAgdmVydGljYWxQbGFjZW1lbnQ9e3N0eWxlLnZlcnRpY2FsUGxhY2VtZW50fVxuICAgICAgICAgIHNpemU9e2Fycm93U2l6ZX1cbiAgICAgICAgLz5cbiAgICAgICl9XG4gICAgPC9TdHlsZWRDb250YWluZXI+XG4gICk7XG5cbiAgY29uc3Qgd3JhcHBlckVsbSA9IHN1YlRoZW1lID8gKFxuICAgIDxTdWJUaGVtZVByb3ZpZGVyIG5hbWU9e3N1YlRoZW1lfT57dG9vbHRpcEVsbX08L1N1YlRoZW1lUHJvdmlkZXI+XG4gICkgOiAoXG4gICAgdG9vbHRpcEVsbVxuICApO1xuXG4gIHJldHVybiA8UG9ydGFsIHBvcnRhbENvbnRhaW5lcj17cG9ydGFsQ29udGFpbmVyfT57d3JhcHBlckVsbX08L1BvcnRhbD47XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBeUV3QiJ9 */"),StyledArrow=styled("div",{target:"es2ixfw1",label:"StyledArrow"})(({theme,subTheme,verticalPlacement,horizontalPlacement,size=ARROW_SIZE})=>{let offset=getArrowOffset(size),adjustmentForShadow=+!subTheme,arrowContainerHeight=size+DISTANCE_FROM_TRIGGER,arrowSideLength=Math.sqrt(size**2+(size+adjustmentForShadow)**2);return{position:"absolute",width:40,height:arrowContainerHeight,zIndex:1,overflow:"hidden",..."top"===verticalPlacement&&{top:`calc(100% - ${adjustmentForShadow}px)`},..."bottom"===verticalPlacement&&{top:`-${arrowContainerHeight-adjustmentForShadow}px`},..."center"===horizontalPlacement&&{left:"50%",transform:"translate(-50%)"},..."right"===horizontalPlacement&&{left:`${offset-(20-size)}px`},..."left"===horizontalPlacement&&{right:`${offset-(20-size)}px`},"&::after":{content:'" "',position:"absolute",top:"top"===verticalPlacement?0:"100%",left:"50%",width:arrowSideLength,height:arrowSideLength,backgroundColor:subTheme?theme.values.color.background.primary.default:theme.values.color.background.elevated.default,transform:"translate(-50%, -50%) rotate(45deg)",...!subTheme&&{boxShadow:theme.values.elevation[3]}}}},"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvVG9vbHRpcC9Ub29sdGlwQ29udGVudC50c3giLCJzb3VyY2VzIjpbInNyYy9jb21wb25lbnRzL1Rvb2x0aXAvVG9vbHRpcENvbnRlbnQudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTXV0YWJsZVJlZk9iamVjdCwgUmVhY3RFbGVtZW50IH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgUmVhY3QsIHtcbiAgdXNlQ2FsbGJhY2ssXG4gIHVzZUVmZmVjdCxcbiAgdXNlTGF5b3V0RWZmZWN0LFxuICB1c2VNZW1vLFxuICB1c2VSZWYsXG4gIHVzZVN0YXRlLFxufSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBzdHlsZWQgZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHsga2V5ZnJhbWVzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgeyB1c2VEb2N1bWVudCB9IGZyb20gXCIuLi8uLi9zaGFyZWQvdXNlRG9jdW1lbnRcIjtcbmltcG9ydCB7IHVzZVdpbmRvdyB9IGZyb20gXCIuLi8uLi9zaGFyZWQvdXNlV2luZG93XCI7XG5pbXBvcnQgeyBTdWJUaGVtZVByb3ZpZGVyIH0gZnJvbSBcIi4uL1N1YlRoZW1lUHJvdmlkZXIvU3ViVGhlbWVQcm92aWRlclwiO1xuaW1wb3J0IHR5cGUgeyBTdWJUaGVtZVR5cGVzIH0gZnJvbSBcIi4uLy4uL3dlYi10b2tlbnMvX3N1YlRoZW1lVHlwZVwiO1xuaW1wb3J0IHsgUG9ydGFsLCB0eXBlIFBvcnRhbFByb3BzIH0gZnJvbSBcIi4uL1BvcnRhbC9Qb3J0YWxcIjtcbmltcG9ydCB6SW5kaWNlcyBmcm9tIFwiLi4vLi4vd2ViLXRva2Vucy9femluZGV4Lmpzb25cIjtcblxuaW1wb3J0IHtcbiAgQU5JTUFUSU9OX0RJU1RBTkNFLFxuICBBUlJPV19TSVpFLFxuICBBUlJPV19TSVpFX0JJRyxcbiAgRElTVEFOQ0VfRlJPTV9UUklHR0VSLFxuICBnZXRBcnJvd09mZnNldCxcbiAgZ2V0VG9vbHRpcFN0eWxlLFxufSBmcm9tIFwiLi91dGlsc1wiO1xuXG5leHBvcnQgdHlwZSBUb29sdGlwQ29udGVudFByb3BzID0ge1xuICBjb250ZW50OiBSZWFjdEVsZW1lbnQ7XG4gIHRyaWdnZXJSZWY6IE11dGFibGVSZWZPYmplY3Q8YW55PjtcbiAgcGxhY2VtZW50PzpcbiAgICB8IFwiYXV0b1wiXG4gICAgfCBcInRvcFwiXG4gICAgfCBcImJvdHRvbVwiXG4gICAgfCBcInRvcC1sZWZ0XCJcbiAgICB8IFwidG9wLXJpZ2h0XCJcbiAgICB8IFwiYm90dG9tLWxlZnRcIlxuICAgIHwgXCJib3R0b20tcmlnaHRcIjtcbiAgZGF0YUUyZVRlc3RJZD86IHN0cmluZztcbiAgZGF0YURTSWQ6IHN0cmluZztcbiAgaXNWaXNpYmxlPzogYm9vbGVhbjtcbiAgdG9vbHRpcElkPzogc3RyaW5nO1xuICBcImFyaWEtaGlkZGVuXCI/OiBib29sZWFuO1xuICByb2xlPzogc3RyaW5nO1xuICB0YWJJbmRleD86IG51bWJlcjtcbiAgY29udGVudFBhZGRpbmc/OiBcInNcIiB8IFwibVwiO1xuICBzdWJUaGVtZT86IFN1YlRoZW1lVHlwZXM7XG4gIG1heFdpZHRoPzogbnVtYmVyO1xuICBkZWZhdWx0VmVydGljYWxQbGFjZW1lbnQ/OiBUb29sdGlwU3R5bGVbXCJ2ZXJ0aWNhbFBsYWNlbWVudFwiXTtcbiAgb25Ub29sdGlwUG9pbnRlckVudGVyPzogUmVhY3QuUG9pbnRlckV2ZW50SGFuZGxlcjxIVE1MRGl2RWxlbWVudD47XG4gIG9uVG9vbHRpcFBvaW50ZXJMZWF2ZT86IFJlYWN0LlBvaW50ZXJFdmVudEhhbmRsZXI8SFRNTERpdkVsZW1lbnQ+O1xuICBoaWRlQXJyb3c/OiBib29sZWFuO1xufSAmIFBpY2s8UG9ydGFsUHJvcHMsIFwicG9ydGFsQ29udGFpbmVyXCI+O1xuXG5leHBvcnQgdHlwZSBUb29sdGlwU3R5bGUgPSB7XG4gIHRvcDogbnVtYmVyO1xuICBsZWZ0OiBudW1iZXI7XG4gIGhvcml6b250YWxQbGFjZW1lbnQ6IFwibGVmdFwiIHwgXCJyaWdodFwiIHwgXCJjZW50ZXJcIjtcbiAgdmVydGljYWxQbGFjZW1lbnQ6IFwidG9wXCIgfCBcImJvdHRvbVwiO1xufTtcblxudHlwZSBTdHlsZWRDb250YWluZXJQcm9wcyA9IFBpY2s8XG4gIFRvb2x0aXBDb250ZW50UHJvcHMsXG4gIFwiY29udGVudFBhZGRpbmdcIiB8IFwibWF4V2lkdGhcIiB8IFwic3ViVGhlbWVcIlxuPiAmIHtcbiAgaG9yaXpvbnRhbFBsYWNlbWVudDogVG9vbHRpcFN0eWxlW1wiaG9yaXpvbnRhbFBsYWNlbWVudFwiXTtcbiAgdmVydGljYWxQbGFjZW1lbnQ6IFRvb2x0aXBTdHlsZVtcInZlcnRpY2FsUGxhY2VtZW50XCJdO1xufTtcblxuY29uc3QgQU5JTUFUSU9OX0RVUkFUSU9OID0gMjAwO1xuY29uc3QgU0hPV19ISURFX0RFTEFZID0gMjAwO1xuY29uc3QgTUFYX0NPTlRFTlRfV0lEVEggPSAyMjQ7XG5cbmNvbnN0IFN0eWxlZENvbnRhaW5lciA9IHN0eWxlZC5kaXY8U3R5bGVkQ29udGFpbmVyUHJvcHM+KFxuICAoe1xuICAgIHRoZW1lLFxuICAgIGhvcml6b250YWxQbGFjZW1lbnQsXG4gICAgdmVydGljYWxQbGFjZW1lbnQsXG4gICAgbWF4V2lkdGgsXG4gICAgY29udGVudFBhZGRpbmcsXG4gICAgc3ViVGhlbWUsXG4gIH0pID0+IHtcbiAgICBjb25zdCBhbmltYXRpb25EaXN0YW5jZSA9XG4gICAgICB2ZXJ0aWNhbFBsYWNlbWVudCA9PT0gXCJ0b3BcIlxuICAgICAgICA/IGAke0FOSU1BVElPTl9ESVNUQU5DRX1weGBcbiAgICAgICAgOiBgLSR7QU5JTUFUSU9OX0RJU1RBTkNFfXB4YDtcbiAgICBjb25zdCBhbmltYXRpb24gPSBrZXlmcmFtZXMoe1xuICAgICAgdG86IHtcbiAgICAgICAgb3BhY2l0eTogdGhlbWUudmFyaWFibGVzLm9wYWNpdHkudmlzaWJsZSxcbiAgICAgICAgdHJhbnNmb3JtOlxuICAgICAgICAgIGhvcml6b250YWxQbGFjZW1lbnQgPT09IFwiY2VudGVyXCJcbiAgICAgICAgICAgID8gYHRyYW5zbGF0ZSgtNTAlLCAke2FuaW1hdGlvbkRpc3RhbmNlfSlgXG4gICAgICAgICAgICA6IGB0cmFuc2xhdGVZKCR7YW5pbWF0aW9uRGlzdGFuY2V9KWAsXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgY29uc3QgY29udGVudFBhZGRpbmdNYXAgPSB7XG4gICAgICBzOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnh4cyxcbiAgICAgIG06IHRoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcucyxcbiAgICB9O1xuXG4gICAgY29uc3QgaW52ZXJ0ZWRTdWJUaGVtZVN0eWxlcyA9IHtcbiAgICAgIHBhZGRpbmc6IGAke3RoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcueHN9ICR7dGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy5zfWAsXG4gICAgICAuLi4oY29udGVudFBhZGRpbmcgJiYge1xuICAgICAgICBwYWRkaW5nOiBjb250ZW50UGFkZGluZ01hcFtjb250ZW50UGFkZGluZ10sXG4gICAgICB9KSxcbiAgICB9O1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHBvc2l0aW9uOiBcImFic29sdXRlXCIsXG4gICAgICB6SW5kZXg6IHpJbmRpY2VzLnRvb2x0aXAudmFsdWUsXG4gICAgICBvcGFjaXR5OiB0aGVtZS52YXJpYWJsZXMub3BhY2l0eS5oaWRkZW4sXG4gICAgICBhbmltYXRpb246IGAke0FOSU1BVElPTl9EVVJBVElPTn1tcyBlYXNlLW91dCBmb3J3YXJkcyAke2FuaW1hdGlvbn1gLFxuICAgICAgbWF4V2lkdGgsXG4gICAgICB3aWR0aDogXCJtYXgtY29udGVudFwiLFxuICAgICAgYm94U2l6aW5nOiBcImJvcmRlci1ib3hcIixcbiAgICAgIGJhY2tncm91bmRDb2xvcjogc3ViVGhlbWVcbiAgICAgICAgPyB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5wcmltYXJ5LmRlZmF1bHRcbiAgICAgICAgOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5lbGV2YXRlZC5kZWZhdWx0LFxuICAgICAgYm9yZGVyUmFkaXVzOiBzdWJUaGVtZVxuICAgICAgICA/IHRoZW1lLnZhcmlhYmxlcy5zaXplLmJvcmRlclJhZGl1cy54c1xuICAgICAgICA6IHRoZW1lLnZhcmlhYmxlcy5zaXplLmJvcmRlclJhZGl1cy5zLFxuXG4gICAgICAuLi4oISFzdWJUaGVtZSAmJiBpbnZlcnRlZFN1YlRoZW1lU3R5bGVzKSxcbiAgICAgIC4uLihob3Jpem9udGFsUGxhY2VtZW50ID09PSBcImNlbnRlclwiICYmIHtcbiAgICAgICAgdHJhbnNmb3JtOiBcInRyYW5zbGF0ZSgtNTAlKVwiLFxuICAgICAgfSksXG5cbiAgICAgIC4uLighc3ViVGhlbWUgJiYge1xuICAgICAgICBcIjphZnRlclwiOiB7XG4gICAgICAgICAgY29udGVudDogJ1wiIFwiJyxcbiAgICAgICAgICBwb3NpdGlvbjogXCJhYnNvbHV0ZVwiLFxuICAgICAgICAgIHRvcDogMCxcbiAgICAgICAgICBsZWZ0OiAwLFxuICAgICAgICAgIHdpZHRoOiBcIjEwMCVcIixcbiAgICAgICAgICBoZWlnaHQ6IFwiMTAwJVwiLFxuICAgICAgICAgIHBvaW50ZXJFdmVudHM6IFwibm9uZVwiLFxuICAgICAgICAgIGJvcmRlclJhZGl1czogXCJpbmhlcml0XCIsXG4gICAgICAgICAgYm94U2hhZG93OiB0aGVtZS52YWx1ZXMuZWxldmF0aW9uWzNdLFxuICAgICAgICB9LFxuICAgICAgfSksXG4gICAgfTtcbiAgfVxuKTtcblxudHlwZSBTdHlsZWRBcnJvd1Byb3BzID0gUGljazxUb29sdGlwQ29udGVudFByb3BzLCBcInN1YlRoZW1lXCI+ICYge1xuICB2ZXJ0aWNhbFBsYWNlbWVudDogVG9vbHRpcFN0eWxlW1widmVydGljYWxQbGFjZW1lbnRcIl07XG4gIGhvcml6b250YWxQbGFjZW1lbnQ6IFRvb2x0aXBTdHlsZVtcImhvcml6b250YWxQbGFjZW1lbnRcIl07XG4gIHNpemU/OiAwIHwgdHlwZW9mIEFSUk9XX1NJWkUgfCB0eXBlb2YgQVJST1dfU0laRV9CSUc7XG59O1xuXG4vLyBUaGlzIGNvbnRhaW5lciBpcyBsYXJnZSBlbm91Z2ggdG8gY29udGFpbiB0aGUgYXJyb3cgc2hhZG93IGJsdXJcbmNvbnN0IEFSUk9XX0NPTlRBSU5FUl9XSURUSCA9IDQwO1xuXG5jb25zdCBTdHlsZWRBcnJvdyA9IHN0eWxlZC5kaXY8U3R5bGVkQXJyb3dQcm9wcz4oXG4gICh7XG4gICAgdGhlbWUsXG4gICAgc3ViVGhlbWUsXG4gICAgdmVydGljYWxQbGFjZW1lbnQsXG4gICAgaG9yaXpvbnRhbFBsYWNlbWVudCxcbiAgICBzaXplID0gQVJST1dfU0laRSxcbiAgfSkgPT4ge1xuICAgIGNvbnN0IG9mZnNldCA9IGdldEFycm93T2Zmc2V0KHNpemUpO1xuICAgIGNvbnN0IGFkanVzdG1lbnRGb3JTaGFkb3cgPSBzdWJUaGVtZSA/IDAgOiAxO1xuICAgIGNvbnN0IGFycm93Q29udGFpbmVySGVpZ2h0ID0gc2l6ZSArIERJU1RBTkNFX0ZST01fVFJJR0dFUjtcbiAgICAvLyBHZXQgYXJyb3cgd2lkdGggYW5kIGhlaWdodCB1c2luZyBweXRob2dvcmFzIHRoZW9yZW0gYW5kIGFkZCAxIHRvIGhlaWdodCB0byBhY2NvdW50IGZvciBkYXJrIG1vZGUgc2hhZG93LlxuICAgIGNvbnN0IGFycm93U2lkZUxlbmd0aCA9IE1hdGguc3FydChcbiAgICAgIHNpemUgKiogMiArIChzaXplICsgYWRqdXN0bWVudEZvclNoYWRvdykgKiogMlxuICAgICk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgICAgIHdpZHRoOiBBUlJPV19DT05UQUlORVJfV0lEVEgsXG4gICAgICBoZWlnaHQ6IGFycm93Q29udGFpbmVySGVpZ2h0LFxuICAgICAgekluZGV4OiAxLFxuICAgICAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG5cbiAgICAgIC4uLih2ZXJ0aWNhbFBsYWNlbWVudCA9PT0gXCJ0b3BcIiAmJiB7XG4gICAgICAgIC8vIHBsYWNlIHRoZSBhcnJvdyBjb250YWluZXIgMXB4IGluc2lkZSB0b29sdGlwIGNvbnRhaW5lciB0byBhY2NvdW50IGZvciBkYXJrIG1vZGUgYm94LXNoYWRvd1xuICAgICAgICB0b3A6IGBjYWxjKDEwMCUgLSAke2FkanVzdG1lbnRGb3JTaGFkb3d9cHgpYCxcbiAgICAgIH0pLFxuXG4gICAgICAuLi4odmVydGljYWxQbGFjZW1lbnQgPT09IFwiYm90dG9tXCIgJiYge1xuICAgICAgICAvLyBwbGFjZSB0aGUgYXJyb3cgY29udGFpbmVyIDFweCBpbnNpZGUgdG9vbHRpcCBjb250YWluZXIgdG8gYWNjb3VudCBmb3IgZGFyayBtb2RlIGJveC1zaGFkb3dcbiAgICAgICAgdG9wOiBgLSR7YXJyb3dDb250YWluZXJIZWlnaHQgLSBhZGp1c3RtZW50Rm9yU2hhZG93fXB4YCxcbiAgICAgIH0pLFxuXG4gICAgICAuLi4oaG9yaXpvbnRhbFBsYWNlbWVudCA9PT0gXCJjZW50ZXJcIiAmJiB7XG4gICAgICAgIGxlZnQ6IFwiNTAlXCIsXG4gICAgICAgIHRyYW5zZm9ybTogXCJ0cmFuc2xhdGUoLTUwJSlcIixcbiAgICAgIH0pLFxuXG4gICAgICAuLi4oaG9yaXpvbnRhbFBsYWNlbWVudCA9PT0gXCJyaWdodFwiICYmIHtcbiAgICAgICAgbGVmdDogYCR7b2Zmc2V0IC0gKEFSUk9XX0NPTlRBSU5FUl9XSURUSCAvIDIgLSBzaXplKX1weGAsXG4gICAgICB9KSxcblxuICAgICAgLi4uKGhvcml6b250YWxQbGFjZW1lbnQgPT09IFwibGVmdFwiICYmIHtcbiAgICAgICAgcmlnaHQ6IGAke29mZnNldCAtIChBUlJPV19DT05UQUlORVJfV0lEVEggLyAyIC0gc2l6ZSl9cHhgLFxuICAgICAgfSksXG5cbiAgICAgIFwiJjo6YWZ0ZXJcIjoge1xuICAgICAgICBjb250ZW50OiAnXCIgXCInLFxuICAgICAgICBwb3NpdGlvbjogXCJhYnNvbHV0ZVwiLFxuICAgICAgICB0b3A6IHZlcnRpY2FsUGxhY2VtZW50ID09PSBcInRvcFwiID8gMCA6IFwiMTAwJVwiLFxuICAgICAgICBsZWZ0OiBcIjUwJVwiLFxuICAgICAgICB3aWR0aDogYXJyb3dTaWRlTGVuZ3RoLFxuICAgICAgICBoZWlnaHQ6IGFycm93U2lkZUxlbmd0aCxcbiAgICAgICAgYmFja2dyb3VuZENvbG9yOiBzdWJUaGVtZVxuICAgICAgICAgID8gdGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQucHJpbWFyeS5kZWZhdWx0XG4gICAgICAgICAgOiB0aGVtZS52YWx1ZXMuY29sb3IuYmFja2dyb3VuZC5lbGV2YXRlZC5kZWZhdWx0LFxuICAgICAgICB0cmFuc2Zvcm06IFwidHJhbnNsYXRlKC01MCUsIC01MCUpIHJvdGF0ZSg0NWRlZylcIixcblxuICAgICAgICAuLi4oIXN1YlRoZW1lICYmIHtcbiAgICAgICAgICBib3hTaGFkb3c6IHRoZW1lLnZhbHVlcy5lbGV2YXRpb25bM10sXG4gICAgICAgIH0pLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG4pO1xuXG5jb25zdCBpbml0aWFsU3R5bGU6IFRvb2x0aXBTdHlsZSA9IHtcbiAgdG9wOiAwLFxuICBsZWZ0OiAwLFxuICB2ZXJ0aWNhbFBsYWNlbWVudDogXCJ0b3BcIixcbiAgaG9yaXpvbnRhbFBsYWNlbWVudDogXCJjZW50ZXJcIixcbn07XG5cbmxldCBsYXN0VG9vbHRpcEhpZGVUaW1lc3RhbXAgPSAwO1xuXG4vKiBEaXNhYmxlIGFuaW1hdGlvbiBpZiB0aW1lIGJldHdlZW4gbGFzdCBjbG9zZSBhbmQgbmV3IG9wZW4gaXMgbGVzcyB0aGFuIDUwMG1zICsgU0hPV19ISURFX0RFTEFZICovXG5mdW5jdGlvbiBnZXRBbmltYXRpb25EdXJhdGlvbigpIHtcbiAgbGV0IGFuaW1hdGlvbkR1cmF0aW9uID0gYCR7QU5JTUFUSU9OX0RVUkFUSU9OfW1zYDtcblxuICBpZiAobGFzdFRvb2x0aXBIaWRlVGltZXN0YW1wKSB7XG4gICAgY29uc3QgdGltZVNpbmNlTGFzdFRvb2x0aXAgPSBEYXRlLm5vdygpIC0gbGFzdFRvb2x0aXBIaWRlVGltZXN0YW1wO1xuXG4gICAgaWYgKHRpbWVTaW5jZUxhc3RUb29sdGlwIDwgNTAwICsgU0hPV19ISURFX0RFTEFZKSB7XG4gICAgICBhbmltYXRpb25EdXJhdGlvbiA9IFwiMG1zXCI7XG4gICAgfVxuICB9XG4gIHJldHVybiBhbmltYXRpb25EdXJhdGlvbjtcbn1cblxuLyoqIFRoaXMgY29tcG9uZW50IGlzIHVzZWQgdG8gZGlzcGxheSB0aGUgb3ZlcmxheSBmb3IgYm90aCBUb2dnbGV0aXAgYW5kIFRvb2x0aXAgY29tcG9uZW50cyAqL1xuZXhwb3J0IGZ1bmN0aW9uIFRvb2x0aXBDb250ZW50KHtcbiAgcGxhY2VtZW50ID0gXCJhdXRvXCIsXG4gIGNvbnRlbnQsXG4gIHRvb2x0aXBJZCxcbiAgdHJpZ2dlclJlZixcbiAgcG9ydGFsQ29udGFpbmVyLFxuICBkYXRhRTJlVGVzdElkLFxuICBkYXRhRFNJZCxcbiAgaXNWaXNpYmxlLFxuICBcImFyaWEtaGlkZGVuXCI6IGFyaWFIaWRkZW4sXG4gIHJvbGUsXG4gIHRhYkluZGV4LFxuICBjb250ZW50UGFkZGluZyxcbiAgbWF4V2lkdGggPSBNQVhfQ09OVEVOVF9XSURUSCxcbiAgc3ViVGhlbWUsXG4gIGRlZmF1bHRWZXJ0aWNhbFBsYWNlbWVudCxcbiAgb25Ub29sdGlwUG9pbnRlckVudGVyLFxuICBvblRvb2x0aXBQb2ludGVyTGVhdmUsXG4gIGhpZGVBcnJvdyA9IGZhbHNlLFxufTogVG9vbHRpcENvbnRlbnRQcm9wcyk6IFJlYWN0LlJlYWN0RWxlbWVudCB7XG4gIGNvbnN0IFtzdHlsZSwgc2V0U3R5bGVdID0gdXNlU3RhdGUoaW5pdGlhbFN0eWxlKTtcbiAgY29uc3QgdG9vbHRpcFJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgZG9jdW1lbnQgPSB1c2VEb2N1bWVudCgpO1xuICBjb25zdCB3aW5kb3cgPSB1c2VXaW5kb3coKTtcblxuICBjb25zdCBhcnJvd1NpemUgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoaGlkZUFycm93KSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIHN1YlRoZW1lID8gQVJST1dfU0laRSA6IEFSUk9XX1NJWkVfQklHO1xuICB9LCBbc3ViVGhlbWUsIGhpZGVBcnJvd10pO1xuXG4gIGNvbnN0IGNhbGN1bGF0ZVN0eWxlID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGlmICh0cmlnZ2VyUmVmLmN1cnJlbnQgJiYgdG9vbHRpcFJlZi5jdXJyZW50KSB7XG4gICAgICAvLyBjYWxjdWxhdGUgdG9vbHRpcCBzdHlsZVxuICAgICAgc2V0U3R5bGUoXG4gICAgICAgIGdldFRvb2x0aXBTdHlsZShcbiAgICAgICAgICBwbGFjZW1lbnQsXG4gICAgICAgICAgZGVmYXVsdFZlcnRpY2FsUGxhY2VtZW50LFxuICAgICAgICAgIHRyaWdnZXJSZWYsXG4gICAgICAgICAgdG9vbHRpcFJlZixcbiAgICAgICAgICBkb2N1bWVudCxcbiAgICAgICAgICB3aW5kb3csXG4gICAgICAgICAgYXJyb3dTaXplXG4gICAgICAgIClcbiAgICAgICk7XG4gICAgfVxuICB9LCBbXG4gICAgdHJpZ2dlclJlZixcbiAgICB0b29sdGlwUmVmLFxuICAgIGRvY3VtZW50LFxuICAgIHdpbmRvdyxcbiAgICBwbGFjZW1lbnQsXG4gICAgYXJyb3dTaXplLFxuICAgIGRlZmF1bHRWZXJ0aWNhbFBsYWNlbWVudCxcbiAgXSk7XG5cbiAgLy8gVGhpcyBsYXlvdXQgZWZmZWN0IHRvIHJlLXJlbmRlciB3aXRoIHVwZGF0ZWQgcG9zaXRpb24gYWZ0ZXIgZGV0ZXJtaW5pbmcgY29udGVudCB3aWR0aFxuICB1c2VMYXlvdXRFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChpc1Zpc2libGUpIHtcbiAgICAgIGNhbGN1bGF0ZVN0eWxlKCk7XG4gICAgfVxuICB9LCBbaXNWaXNpYmxlLCBjYWxjdWxhdGVTdHlsZSwgY29udGVudFBhZGRpbmcsIGNvbnRlbnRdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChpc1Zpc2libGUgJiYgdG9vbHRpcFJlZi5jdXJyZW50KSB7XG4gICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcInJlc2l6ZVwiLCBjYWxjdWxhdGVTdHlsZSk7XG4gICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcInNjcm9sbFwiLCBjYWxjdWxhdGVTdHlsZSwgdHJ1ZSk7IC8vIHVzZSBjYXB0dXJlIGhlcmUgdG8gZGV0ZWN0IHNjcm9sbCBvbiBhbnkgcGFyZW50XG4gICAgfSBlbHNlIGlmICghaXNWaXNpYmxlKSB7XG4gICAgICAvLyBsb2cgdGltZSB3aGVuIHRvb2x0aXAgY2xvc2VzXG4gICAgICBsYXN0VG9vbHRpcEhpZGVUaW1lc3RhbXAgPSBEYXRlLm5vdygpO1xuICAgIH1cblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcihcInJlc2l6ZVwiLCBjYWxjdWxhdGVTdHlsZSk7XG4gICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcihcInNjcm9sbFwiLCBjYWxjdWxhdGVTdHlsZSwgdHJ1ZSk7XG4gICAgfTtcbiAgfSwgW2lzVmlzaWJsZSwgY2FsY3VsYXRlU3R5bGUsIHdpbmRvdywgdG9vbHRpcFJlZl0pO1xuXG4gIGlmICghaXNWaXNpYmxlKSByZXR1cm4gbnVsbDtcblxuICBjb25zdCB0b29sdGlwRWxtID0gKFxuICAgIDxTdHlsZWRDb250YWluZXJcbiAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9e2RhdGFFMmVUZXN0SWR9XG4gICAgICBkYXRhLWRzLWlkPXtkYXRhRFNJZH1cbiAgICAgIHN0eWxlPXt7XG4gICAgICAgIHRvcDogc3R5bGUudG9wLFxuICAgICAgICBsZWZ0OiBzdHlsZS5sZWZ0LFxuICAgICAgICBhbmltYXRpb25EdXJhdGlvbjogZ2V0QW5pbWF0aW9uRHVyYXRpb24oKSxcbiAgICAgIH19XG4gICAgICByZWY9e3Rvb2x0aXBSZWZ9XG4gICAgICBpZD17dG9vbHRpcElkfVxuICAgICAgcm9sZT17cm9sZX1cbiAgICAgIGFyaWEtaGlkZGVuPXthcmlhSGlkZGVufVxuICAgICAgc3ViVGhlbWU9e3N1YlRoZW1lfVxuICAgICAgdGFiSW5kZXg9e3RhYkluZGV4fVxuICAgICAgaG9yaXpvbnRhbFBsYWNlbWVudD17c3R5bGUuaG9yaXpvbnRhbFBsYWNlbWVudH1cbiAgICAgIHZlcnRpY2FsUGxhY2VtZW50PXtzdHlsZS52ZXJ0aWNhbFBsYWNlbWVudH1cbiAgICAgIG1heFdpZHRoPXttYXhXaWR0aH1cbiAgICAgIGNvbnRlbnRQYWRkaW5nPXtjb250ZW50UGFkZGluZ31cbiAgICAgIG9uUG9pbnRlckVudGVyPXtvblRvb2x0aXBQb2ludGVyRW50ZXJ9XG4gICAgICBvblBvaW50ZXJMZWF2ZT17b25Ub29sdGlwUG9pbnRlckxlYXZlfVxuICAgID5cbiAgICAgIHtjb250ZW50fVxuICAgICAgeyFoaWRlQXJyb3cgJiYgKFxuICAgICAgICA8U3R5bGVkQXJyb3dcbiAgICAgICAgICBkYXRhLWUyZS10ZXN0LWlkPXtgJHtkYXRhRTJlVGVzdElkfV9hcnJvd2B9XG4gICAgICAgICAgc3ViVGhlbWU9e3N1YlRoZW1lfVxuICAgICAgICAgIGhvcml6b250YWxQbGFjZW1lbnQ9e3N0eWxlLmhvcml6b250YWxQbGFjZW1lbnR9XG4gICAgICAgICAgdmVydGljYWxQbGFjZW1lbnQ9e3N0eWxlLnZlcnRpY2FsUGxhY2VtZW50fVxuICAgICAgICAgIHNpemU9e2Fycm93U2l6ZX1cbiAgICAgICAgLz5cbiAgICAgICl9XG4gICAgPC9TdHlsZWRDb250YWluZXI+XG4gICk7XG5cbiAgY29uc3Qgd3JhcHBlckVsbSA9IHN1YlRoZW1lID8gKFxuICAgIDxTdWJUaGVtZVByb3ZpZGVyIG5hbWU9e3N1YlRoZW1lfT57dG9vbHRpcEVsbX08L1N1YlRoZW1lUHJvdmlkZXI+XG4gICkgOiAoXG4gICAgdG9vbHRpcEVsbVxuICApO1xuXG4gIHJldHVybiA8UG9ydGFsIHBvcnRhbENvbnRhaW5lcj17cG9ydGFsQ29udGFpbmVyfT57d3JhcHBlckVsbX08L1BvcnRhbD47XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMEpvQiJ9 */"),initialStyle={top:0,left:0,verticalPlacement:"top",horizontalPlacement:"center"},lastTooltipHideTimestamp=0;export function TooltipContent({placement="auto",content,tooltipId,triggerRef,portalContainer,dataE2eTestId,dataDSId,isVisible,"aria-hidden":ariaHidden,role,tabIndex,contentPadding,maxWidth=224,subTheme,defaultVerticalPlacement,onTooltipPointerEnter,onTooltipPointerLeave,hideArrow=!1}){let animationDuration,[style,setStyle]=useState(initialStyle),tooltipRef=useRef(null),document=useDocument(),window=useWindow(),arrowSize=useMemo(()=>hideArrow?0:subTheme?ARROW_SIZE:ARROW_SIZE_BIG,[subTheme,hideArrow]),calculateStyle=useCallback(()=>{triggerRef.current&&tooltipRef.current&&setStyle(getTooltipStyle(placement,defaultVerticalPlacement,triggerRef,tooltipRef,document,window,arrowSize))},[triggerRef,tooltipRef,document,window,placement,arrowSize,defaultVerticalPlacement]);if(useLayoutEffect(()=>{isVisible&&calculateStyle()},[isVisible,calculateStyle,contentPadding,content]),useEffect(()=>(isVisible&&tooltipRef.current?(window.addEventListener("resize",calculateStyle),window.addEventListener("scroll",calculateStyle,!0)):isVisible||(lastTooltipHideTimestamp=Date.now()),()=>{window.removeEventListener("resize",calculateStyle),window.removeEventListener("scroll",calculateStyle,!0)}),[isVisible,calculateStyle,window,tooltipRef]),!isVisible)return null;let tooltipElm=React.createElement(StyledContainer,{"data-e2e-test-id":dataE2eTestId,"data-ds-id":dataDSId,style:{top:style.top,left:style.left,animationDuration:(animationDuration="200ms",lastTooltipHideTimestamp&&Date.now()-lastTooltipHideTimestamp<700&&(animationDuration="0ms"),animationDuration)},ref:tooltipRef,id:tooltipId,role:role,"aria-hidden":ariaHidden,subTheme:subTheme,tabIndex:tabIndex,horizontalPlacement:style.horizontalPlacement,verticalPlacement:style.verticalPlacement,maxWidth:maxWidth,contentPadding:contentPadding,onPointerEnter:onTooltipPointerEnter,onPointerLeave:onTooltipPointerLeave},content,!hideArrow&&React.createElement(StyledArrow,{"data-e2e-test-id":`${dataE2eTestId}_arrow`,subTheme:subTheme,horizontalPlacement:style.horizontalPlacement,verticalPlacement:style.verticalPlacement,size:arrowSize})),wrapperElm=subTheme?React.createElement(SubThemeProvider,{name:subTheme},tooltipElm):tooltipElm;return React.createElement(Portal,{portalContainer:portalContainer},wrapperElm)}
|
|
1
|
+
import React,{useCallback,useEffect,useLayoutEffect,useMemo,useRef,useState}from"react";import styled from"@emotion/styled";import{keyframes}from"@emotion/react";import{useDocument}from"../../shared/useDocument";import{useWindow}from"../../shared/useWindow";import{SubThemeProvider}from"../SubThemeProvider/SubThemeProvider";import{Portal}from"../Portal/Portal";import zIndices from"../../web-tokens/_zindex.json";import{ANIMATION_DISTANCE,ARROW_SIZE,ARROW_SIZE_BIG,DISTANCE_FROM_TRIGGER,getArrowOffset,getTooltipStyle}from"./utils";let StyledContainer=styled("div",{target:"e16lrqlb0",label:"StyledContainer"})(({theme,horizontalPlacement,verticalPlacement,maxWidth,contentPadding,subTheme})=>{let animationDistance="top"===verticalPlacement?`${ANIMATION_DISTANCE}px`:`-${ANIMATION_DISTANCE}px`,animation=keyframes({to:{opacity:theme.variables.opacity.visible,transform:"center"===horizontalPlacement?`translate(-50%, ${animationDistance})`:`translateY(${animationDistance})`}}),contentPaddingMap={s:theme.variables.size.spacing.xxs,m:theme.variables.size.spacing.s},invertedSubThemeStyles={padding:`${theme.variables.size.spacing.xs} ${theme.variables.size.spacing.s}`,...contentPadding&&{padding:contentPaddingMap[contentPadding]}};return{position:"absolute",zIndex:zIndices.tooltip.value,opacity:theme.variables.opacity.hidden,animation:`200ms ease-out forwards ${animation}`,maxWidth,width:"max-content",boxSizing:"border-box",backgroundColor:subTheme?theme.values.color.background.primary.default:theme.values.color.background.elevated.default,borderRadius:subTheme?theme.variables.size.borderRadius.xs:theme.variables.size.borderRadius.s,...!!subTheme&&invertedSubThemeStyles,..."center"===horizontalPlacement&&{transform:"translate(-50%)"},...!subTheme&&{":after":{content:'" "',position:"absolute",top:0,left:0,width:"100%",height:"100%",pointerEvents:"none",borderRadius:"inherit",boxShadow:theme.values.elevation[3]}}}},"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvVG9vbHRpcC9Ub29sdGlwQ29udGVudC50c3giLCJzb3VyY2VzIjpbInNyYy9jb21wb25lbnRzL1Rvb2x0aXAvVG9vbHRpcENvbnRlbnQudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTXV0YWJsZVJlZk9iamVjdCwgUmVhY3RFbGVtZW50IH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgUmVhY3QsIHtcbiAgdXNlQ2FsbGJhY2ssXG4gIHVzZUVmZmVjdCxcbiAgdXNlTGF5b3V0RWZmZWN0LFxuICB1c2VNZW1vLFxuICB1c2VSZWYsXG4gIHVzZVN0YXRlLFxufSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBzdHlsZWQgZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHsga2V5ZnJhbWVzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgdHlwZSB7IFByb3BlcnR5IH0gZnJvbSBcImNzc3R5cGVcIjtcbmltcG9ydCB7IHVzZURvY3VtZW50IH0gZnJvbSBcIi4uLy4uL3NoYXJlZC91c2VEb2N1bWVudFwiO1xuaW1wb3J0IHsgdXNlV2luZG93IH0gZnJvbSBcIi4uLy4uL3NoYXJlZC91c2VXaW5kb3dcIjtcbmltcG9ydCB7IFN1YlRoZW1lUHJvdmlkZXIgfSBmcm9tIFwiLi4vU3ViVGhlbWVQcm92aWRlci9TdWJUaGVtZVByb3ZpZGVyXCI7XG5pbXBvcnQgdHlwZSB7IFN1YlRoZW1lVHlwZXMgfSBmcm9tIFwiLi4vLi4vd2ViLXRva2Vucy9fc3ViVGhlbWVUeXBlXCI7XG5pbXBvcnQgeyBQb3J0YWwsIHR5cGUgUG9ydGFsUHJvcHMgfSBmcm9tIFwiLi4vUG9ydGFsL1BvcnRhbFwiO1xuaW1wb3J0IHpJbmRpY2VzIGZyb20gXCIuLi8uLi93ZWItdG9rZW5zL196aW5kZXguanNvblwiO1xuXG5pbXBvcnQge1xuICBBTklNQVRJT05fRElTVEFOQ0UsXG4gIEFSUk9XX1NJWkUsXG4gIEFSUk9XX1NJWkVfQklHLFxuICBESVNUQU5DRV9GUk9NX1RSSUdHRVIsXG4gIGdldEFycm93T2Zmc2V0LFxuICBnZXRUb29sdGlwU3R5bGUsXG59IGZyb20gXCIuL3V0aWxzXCI7XG5cbmV4cG9ydCB0eXBlIFRvb2x0aXBDb250ZW50UHJvcHMgPSB7XG4gIGNvbnRlbnQ6IFJlYWN0RWxlbWVudDtcbiAgdHJpZ2dlclJlZjogTXV0YWJsZVJlZk9iamVjdDxhbnk+O1xuICBwbGFjZW1lbnQ/OlxuICAgIHwgXCJhdXRvXCJcbiAgICB8IFwidG9wXCJcbiAgICB8IFwiYm90dG9tXCJcbiAgICB8IFwidG9wLWxlZnRcIlxuICAgIHwgXCJ0b3AtcmlnaHRcIlxuICAgIHwgXCJib3R0b20tbGVmdFwiXG4gICAgfCBcImJvdHRvbS1yaWdodFwiO1xuICBkYXRhRTJlVGVzdElkPzogc3RyaW5nO1xuICBkYXRhRFNJZDogc3RyaW5nO1xuICBpc1Zpc2libGU/OiBib29sZWFuO1xuICB0b29sdGlwSWQ/OiBzdHJpbmc7XG4gIFwiYXJpYS1oaWRkZW5cIj86IGJvb2xlYW47XG4gIHJvbGU/OiBzdHJpbmc7XG4gIHRhYkluZGV4PzogbnVtYmVyO1xuICBjb250ZW50UGFkZGluZz86IFwic1wiIHwgXCJtXCI7XG4gIHN1YlRoZW1lPzogU3ViVGhlbWVUeXBlcztcbiAgbWF4V2lkdGg/OiBQcm9wZXJ0eS5NYXhXaWR0aCB8IG51bWJlcjtcbiAgZGVmYXVsdFZlcnRpY2FsUGxhY2VtZW50PzogVG9vbHRpcFN0eWxlW1widmVydGljYWxQbGFjZW1lbnRcIl07XG4gIG9uVG9vbHRpcFBvaW50ZXJFbnRlcj86IFJlYWN0LlBvaW50ZXJFdmVudEhhbmRsZXI8SFRNTERpdkVsZW1lbnQ+O1xuICBvblRvb2x0aXBQb2ludGVyTGVhdmU/OiBSZWFjdC5Qb2ludGVyRXZlbnRIYW5kbGVyPEhUTUxEaXZFbGVtZW50PjtcbiAgaGlkZUFycm93PzogYm9vbGVhbjtcbiAgLyoqIFRoaXMgY2FsbGJhY2sgaXMgdHJpZ2dlcmVkIHdoZW4gY29udGVudCBvdmVyZmxvd3MgdGhlIHZpZXdwb3J0IGJvdGggYWJvdmUgYW5kIGJlbG93IHRyaWdnZXIuIFVzZSB0aGlzIGZvciB0cmFja2luZyBwdXJwb3NlcyBvciByZS1yZW5kZXJpbmcgUG9wb3ZlciB3aXRoIGEgbGFyZ2VyIG1heFdpZHRoICovXG4gIG9uT3ZlcmZsb3dWaWV3cG9ydD86IChcbiAgICB0cmlnZ2VyUmVjdDogRE9NUmVjdCxcbiAgICB0b29sdGlwUmVjdDogRE9NUmVjdCxcbiAgICB2aWV3cG9ydEhlaWdodDogbnVtYmVyXG4gICkgPT4gdm9pZDtcbn0gJiBQaWNrPFBvcnRhbFByb3BzLCBcInBvcnRhbENvbnRhaW5lclwiPjtcblxuZXhwb3J0IHR5cGUgVG9vbHRpcFN0eWxlID0ge1xuICB0b3A6IG51bWJlcjtcbiAgbGVmdDogbnVtYmVyO1xuICBob3Jpem9udGFsUGxhY2VtZW50OiBcImxlZnRcIiB8IFwicmlnaHRcIiB8IFwiY2VudGVyXCI7XG4gIHZlcnRpY2FsUGxhY2VtZW50OiBcInRvcFwiIHwgXCJib3R0b21cIjtcbn07XG5cbnR5cGUgU3R5bGVkQ29udGFpbmVyUHJvcHMgPSBQaWNrPFxuICBUb29sdGlwQ29udGVudFByb3BzLFxuICBcImNvbnRlbnRQYWRkaW5nXCIgfCBcIm1heFdpZHRoXCIgfCBcInN1YlRoZW1lXCJcbj4gJiB7XG4gIGhvcml6b250YWxQbGFjZW1lbnQ6IFRvb2x0aXBTdHlsZVtcImhvcml6b250YWxQbGFjZW1lbnRcIl07XG4gIHZlcnRpY2FsUGxhY2VtZW50OiBUb29sdGlwU3R5bGVbXCJ2ZXJ0aWNhbFBsYWNlbWVudFwiXTtcbn07XG5cbmNvbnN0IEFOSU1BVElPTl9EVVJBVElPTiA9IDIwMDtcbmNvbnN0IFNIT1dfSElERV9ERUxBWSA9IDIwMDtcbmNvbnN0IE1BWF9DT05URU5UX1dJRFRIID0gMjI0O1xuXG5jb25zdCBTdHlsZWRDb250YWluZXIgPSBzdHlsZWQuZGl2PFN0eWxlZENvbnRhaW5lclByb3BzPihcbiAgKHtcbiAgICB0aGVtZSxcbiAgICBob3Jpem9udGFsUGxhY2VtZW50LFxuICAgIHZlcnRpY2FsUGxhY2VtZW50LFxuICAgIG1heFdpZHRoLFxuICAgIGNvbnRlbnRQYWRkaW5nLFxuICAgIHN1YlRoZW1lLFxuICB9KSA9PiB7XG4gICAgY29uc3QgYW5pbWF0aW9uRGlzdGFuY2UgPVxuICAgICAgdmVydGljYWxQbGFjZW1lbnQgPT09IFwidG9wXCJcbiAgICAgICAgPyBgJHtBTklNQVRJT05fRElTVEFOQ0V9cHhgXG4gICAgICAgIDogYC0ke0FOSU1BVElPTl9ESVNUQU5DRX1weGA7XG4gICAgY29uc3QgYW5pbWF0aW9uID0ga2V5ZnJhbWVzKHtcbiAgICAgIHRvOiB7XG4gICAgICAgIG9wYWNpdHk6IHRoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGUsXG4gICAgICAgIHRyYW5zZm9ybTpcbiAgICAgICAgICBob3Jpem9udGFsUGxhY2VtZW50ID09PSBcImNlbnRlclwiXG4gICAgICAgICAgICA/IGB0cmFuc2xhdGUoLTUwJSwgJHthbmltYXRpb25EaXN0YW5jZX0pYFxuICAgICAgICAgICAgOiBgdHJhbnNsYXRlWSgke2FuaW1hdGlvbkRpc3RhbmNlfSlgLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGNvbnRlbnRQYWRkaW5nTWFwID0ge1xuICAgICAgczogdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy54eHMsXG4gICAgICBtOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsXG4gICAgfTtcblxuICAgIGNvbnN0IGludmVydGVkU3ViVGhlbWVTdHlsZXMgPSB7XG4gICAgICBwYWRkaW5nOiBgJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnhzfSAke3RoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcuc31gLFxuICAgICAgLi4uKGNvbnRlbnRQYWRkaW5nICYmIHtcbiAgICAgICAgcGFkZGluZzogY29udGVudFBhZGRpbmdNYXBbY29udGVudFBhZGRpbmddLFxuICAgICAgfSksXG4gICAgfTtcblxuICAgIHJldHVybiB7XG4gICAgICBwb3NpdGlvbjogXCJhYnNvbHV0ZVwiLFxuICAgICAgekluZGV4OiB6SW5kaWNlcy50b29sdGlwLnZhbHVlLFxuICAgICAgb3BhY2l0eTogdGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVuLFxuICAgICAgYW5pbWF0aW9uOiBgJHtBTklNQVRJT05fRFVSQVRJT059bXMgZWFzZS1vdXQgZm9yd2FyZHMgJHthbmltYXRpb259YCxcbiAgICAgIG1heFdpZHRoLFxuICAgICAgd2lkdGg6IFwibWF4LWNvbnRlbnRcIixcbiAgICAgIGJveFNpemluZzogXCJib3JkZXItYm94XCIsXG4gICAgICBiYWNrZ3JvdW5kQ29sb3I6IHN1YlRoZW1lXG4gICAgICAgID8gdGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQucHJpbWFyeS5kZWZhdWx0XG4gICAgICAgIDogdGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQuZWxldmF0ZWQuZGVmYXVsdCxcbiAgICAgIGJvcmRlclJhZGl1czogc3ViVGhlbWVcbiAgICAgICAgPyB0aGVtZS52YXJpYWJsZXMuc2l6ZS5ib3JkZXJSYWRpdXMueHNcbiAgICAgICAgOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5ib3JkZXJSYWRpdXMucyxcblxuICAgICAgLi4uKCEhc3ViVGhlbWUgJiYgaW52ZXJ0ZWRTdWJUaGVtZVN0eWxlcyksXG4gICAgICAuLi4oaG9yaXpvbnRhbFBsYWNlbWVudCA9PT0gXCJjZW50ZXJcIiAmJiB7XG4gICAgICAgIHRyYW5zZm9ybTogXCJ0cmFuc2xhdGUoLTUwJSlcIixcbiAgICAgIH0pLFxuXG4gICAgICAuLi4oIXN1YlRoZW1lICYmIHtcbiAgICAgICAgXCI6YWZ0ZXJcIjoge1xuICAgICAgICAgIGNvbnRlbnQ6ICdcIiBcIicsXG4gICAgICAgICAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgICAgICAgICB0b3A6IDAsXG4gICAgICAgICAgbGVmdDogMCxcbiAgICAgICAgICB3aWR0aDogXCIxMDAlXCIsXG4gICAgICAgICAgaGVpZ2h0OiBcIjEwMCVcIixcbiAgICAgICAgICBwb2ludGVyRXZlbnRzOiBcIm5vbmVcIixcbiAgICAgICAgICBib3JkZXJSYWRpdXM6IFwiaW5oZXJpdFwiLFxuICAgICAgICAgIGJveFNoYWRvdzogdGhlbWUudmFsdWVzLmVsZXZhdGlvblszXSxcbiAgICAgICAgfSxcbiAgICAgIH0pLFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkQXJyb3dQcm9wcyA9IFBpY2s8VG9vbHRpcENvbnRlbnRQcm9wcywgXCJzdWJUaGVtZVwiPiAmIHtcbiAgdmVydGljYWxQbGFjZW1lbnQ6IFRvb2x0aXBTdHlsZVtcInZlcnRpY2FsUGxhY2VtZW50XCJdO1xuICBob3Jpem9udGFsUGxhY2VtZW50OiBUb29sdGlwU3R5bGVbXCJob3Jpem9udGFsUGxhY2VtZW50XCJdO1xuICBzaXplPzogMCB8IHR5cGVvZiBBUlJPV19TSVpFIHwgdHlwZW9mIEFSUk9XX1NJWkVfQklHO1xufTtcblxuLy8gVGhpcyBjb250YWluZXIgaXMgbGFyZ2UgZW5vdWdoIHRvIGNvbnRhaW4gdGhlIGFycm93IHNoYWRvdyBibHVyXG5jb25zdCBBUlJPV19DT05UQUlORVJfV0lEVEggPSA0MDtcblxuY29uc3QgU3R5bGVkQXJyb3cgPSBzdHlsZWQuZGl2PFN0eWxlZEFycm93UHJvcHM+KFxuICAoe1xuICAgIHRoZW1lLFxuICAgIHN1YlRoZW1lLFxuICAgIHZlcnRpY2FsUGxhY2VtZW50LFxuICAgIGhvcml6b250YWxQbGFjZW1lbnQsXG4gICAgc2l6ZSA9IEFSUk9XX1NJWkUsXG4gIH0pID0+IHtcbiAgICBjb25zdCBvZmZzZXQgPSBnZXRBcnJvd09mZnNldChzaXplKTtcbiAgICBjb25zdCBhZGp1c3RtZW50Rm9yU2hhZG93ID0gc3ViVGhlbWUgPyAwIDogMTtcbiAgICBjb25zdCBhcnJvd0NvbnRhaW5lckhlaWdodCA9IHNpemUgKyBESVNUQU5DRV9GUk9NX1RSSUdHRVI7XG4gICAgLy8gR2V0IGFycm93IHdpZHRoIGFuZCBoZWlnaHQgdXNpbmcgcHl0aG9nb3JhcyB0aGVvcmVtIGFuZCBhZGQgMSB0byBoZWlnaHQgdG8gYWNjb3VudCBmb3IgZGFyayBtb2RlIHNoYWRvdy5cbiAgICBjb25zdCBhcnJvd1NpZGVMZW5ndGggPSBNYXRoLnNxcnQoXG4gICAgICBzaXplICoqIDIgKyAoc2l6ZSArIGFkanVzdG1lbnRGb3JTaGFkb3cpICoqIDJcbiAgICApO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHBvc2l0aW9uOiBcImFic29sdXRlXCIsXG4gICAgICB3aWR0aDogQVJST1dfQ09OVEFJTkVSX1dJRFRILFxuICAgICAgaGVpZ2h0OiBhcnJvd0NvbnRhaW5lckhlaWdodCxcbiAgICAgIHpJbmRleDogMSxcbiAgICAgIG92ZXJmbG93OiBcImhpZGRlblwiLFxuXG4gICAgICAuLi4odmVydGljYWxQbGFjZW1lbnQgPT09IFwidG9wXCIgJiYge1xuICAgICAgICAvLyBwbGFjZSB0aGUgYXJyb3cgY29udGFpbmVyIDFweCBpbnNpZGUgdG9vbHRpcCBjb250YWluZXIgdG8gYWNjb3VudCBmb3IgZGFyayBtb2RlIGJveC1zaGFkb3dcbiAgICAgICAgdG9wOiBgY2FsYygxMDAlIC0gJHthZGp1c3RtZW50Rm9yU2hhZG93fXB4KWAsXG4gICAgICB9KSxcblxuICAgICAgLi4uKHZlcnRpY2FsUGxhY2VtZW50ID09PSBcImJvdHRvbVwiICYmIHtcbiAgICAgICAgLy8gcGxhY2UgdGhlIGFycm93IGNvbnRhaW5lciAxcHggaW5zaWRlIHRvb2x0aXAgY29udGFpbmVyIHRvIGFjY291bnQgZm9yIGRhcmsgbW9kZSBib3gtc2hhZG93XG4gICAgICAgIHRvcDogYC0ke2Fycm93Q29udGFpbmVySGVpZ2h0IC0gYWRqdXN0bWVudEZvclNoYWRvd31weGAsXG4gICAgICB9KSxcblxuICAgICAgLi4uKGhvcml6b250YWxQbGFjZW1lbnQgPT09IFwiY2VudGVyXCIgJiYge1xuICAgICAgICBsZWZ0OiBcIjUwJVwiLFxuICAgICAgICB0cmFuc2Zvcm06IFwidHJhbnNsYXRlKC01MCUpXCIsXG4gICAgICB9KSxcblxuICAgICAgLi4uKGhvcml6b250YWxQbGFjZW1lbnQgPT09IFwicmlnaHRcIiAmJiB7XG4gICAgICAgIGxlZnQ6IGAke29mZnNldCAtIChBUlJPV19DT05UQUlORVJfV0lEVEggLyAyIC0gc2l6ZSl9cHhgLFxuICAgICAgfSksXG5cbiAgICAgIC4uLihob3Jpem9udGFsUGxhY2VtZW50ID09PSBcImxlZnRcIiAmJiB7XG4gICAgICAgIHJpZ2h0OiBgJHtvZmZzZXQgLSAoQVJST1dfQ09OVEFJTkVSX1dJRFRIIC8gMiAtIHNpemUpfXB4YCxcbiAgICAgIH0pLFxuXG4gICAgICBcIiY6OmFmdGVyXCI6IHtcbiAgICAgICAgY29udGVudDogJ1wiIFwiJyxcbiAgICAgICAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgICAgICAgdG9wOiB2ZXJ0aWNhbFBsYWNlbWVudCA9PT0gXCJ0b3BcIiA/IDAgOiBcIjEwMCVcIixcbiAgICAgICAgbGVmdDogXCI1MCVcIixcbiAgICAgICAgd2lkdGg6IGFycm93U2lkZUxlbmd0aCxcbiAgICAgICAgaGVpZ2h0OiBhcnJvd1NpZGVMZW5ndGgsXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogc3ViVGhlbWVcbiAgICAgICAgICA/IHRoZW1lLnZhbHVlcy5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnkuZGVmYXVsdFxuICAgICAgICAgIDogdGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQuZWxldmF0ZWQuZGVmYXVsdCxcbiAgICAgICAgdHJhbnNmb3JtOiBcInRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoNDVkZWcpXCIsXG5cbiAgICAgICAgLi4uKCFzdWJUaGVtZSAmJiB7XG4gICAgICAgICAgYm94U2hhZG93OiB0aGVtZS52YWx1ZXMuZWxldmF0aW9uWzNdLFxuICAgICAgICB9KSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuKTtcblxuY29uc3QgaW5pdGlhbFN0eWxlOiBUb29sdGlwU3R5bGUgPSB7XG4gIHRvcDogMCxcbiAgbGVmdDogMCxcbiAgdmVydGljYWxQbGFjZW1lbnQ6IFwidG9wXCIsXG4gIGhvcml6b250YWxQbGFjZW1lbnQ6IFwiY2VudGVyXCIsXG59O1xuXG5sZXQgbGFzdFRvb2x0aXBIaWRlVGltZXN0YW1wID0gMDtcblxuLyogRGlzYWJsZSBhbmltYXRpb24gaWYgdGltZSBiZXR3ZWVuIGxhc3QgY2xvc2UgYW5kIG5ldyBvcGVuIGlzIGxlc3MgdGhhbiA1MDBtcyArIFNIT1dfSElERV9ERUxBWSAqL1xuZnVuY3Rpb24gZ2V0QW5pbWF0aW9uRHVyYXRpb24oKSB7XG4gIGxldCBhbmltYXRpb25EdXJhdGlvbiA9IGAke0FOSU1BVElPTl9EVVJBVElPTn1tc2A7XG5cbiAgaWYgKGxhc3RUb29sdGlwSGlkZVRpbWVzdGFtcCkge1xuICAgIGNvbnN0IHRpbWVTaW5jZUxhc3RUb29sdGlwID0gRGF0ZS5ub3coKSAtIGxhc3RUb29sdGlwSGlkZVRpbWVzdGFtcDtcblxuICAgIGlmICh0aW1lU2luY2VMYXN0VG9vbHRpcCA8IDUwMCArIFNIT1dfSElERV9ERUxBWSkge1xuICAgICAgYW5pbWF0aW9uRHVyYXRpb24gPSBcIjBtc1wiO1xuICAgIH1cbiAgfVxuICByZXR1cm4gYW5pbWF0aW9uRHVyYXRpb247XG59XG5cbi8qKiBUaGlzIGNvbXBvbmVudCBpcyB1c2VkIHRvIGRpc3BsYXkgdGhlIG92ZXJsYXkgZm9yIGJvdGggVG9nZ2xldGlwIGFuZCBUb29sdGlwIGNvbXBvbmVudHMgKi9cbmV4cG9ydCBmdW5jdGlvbiBUb29sdGlwQ29udGVudCh7XG4gIHBsYWNlbWVudCA9IFwiYXV0b1wiLFxuICBjb250ZW50LFxuICB0b29sdGlwSWQsXG4gIHRyaWdnZXJSZWYsXG4gIHBvcnRhbENvbnRhaW5lcixcbiAgZGF0YUUyZVRlc3RJZCxcbiAgZGF0YURTSWQsXG4gIGlzVmlzaWJsZSxcbiAgXCJhcmlhLWhpZGRlblwiOiBhcmlhSGlkZGVuLFxuICByb2xlLFxuICB0YWJJbmRleCxcbiAgY29udGVudFBhZGRpbmcsXG4gIG1heFdpZHRoID0gTUFYX0NPTlRFTlRfV0lEVEgsXG4gIHN1YlRoZW1lLFxuICBkZWZhdWx0VmVydGljYWxQbGFjZW1lbnQsXG4gIG9uVG9vbHRpcFBvaW50ZXJFbnRlcixcbiAgb25Ub29sdGlwUG9pbnRlckxlYXZlLFxuICBoaWRlQXJyb3cgPSBmYWxzZSxcbiAgb25PdmVyZmxvd1ZpZXdwb3J0LFxufTogVG9vbHRpcENvbnRlbnRQcm9wcyk6IFJlYWN0LlJlYWN0RWxlbWVudCB7XG4gIGNvbnN0IFtzdHlsZSwgc2V0U3R5bGVdID0gdXNlU3RhdGUoaW5pdGlhbFN0eWxlKTtcbiAgY29uc3QgdG9vbHRpcFJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgaXNPdmVyZmxvd0NhbGxiYWNrQ2FsbGVkUmVmID0gdXNlUmVmKGZhbHNlKTtcbiAgY29uc3QgZG9jdW1lbnQgPSB1c2VEb2N1bWVudCgpO1xuICBjb25zdCB3aW5kb3cgPSB1c2VXaW5kb3coKTtcblxuICBjb25zdCBhcnJvd1NpemUgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoaGlkZUFycm93KSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIHN1YlRoZW1lID8gQVJST1dfU0laRSA6IEFSUk9XX1NJWkVfQklHO1xuICB9LCBbc3ViVGhlbWUsIGhpZGVBcnJvd10pO1xuXG4gIGNvbnN0IGhhbmRsZVZpZXdwb3J0T3ZlcmZsb3cgPSB1c2VDYWxsYmFjazxcbiAgICBUb29sdGlwQ29udGVudFByb3BzW1wib25PdmVyZmxvd1ZpZXdwb3J0XCJdXG4gID4oXG4gICAgKHRyaWdnZXJSZWN0LCB0b29sdGlwUmVjdCwgdmlld3BvcnRIZWlnaHQpID0+IHtcbiAgICAgIGlmICghaXNPdmVyZmxvd0NhbGxiYWNrQ2FsbGVkUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgb25PdmVyZmxvd1ZpZXdwb3J0Py4odHJpZ2dlclJlY3QsIHRvb2x0aXBSZWN0LCB2aWV3cG9ydEhlaWdodCk7XG4gICAgICAgIGlzT3ZlcmZsb3dDYWxsYmFja0NhbGxlZFJlZi5jdXJyZW50ID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFtvbk92ZXJmbG93Vmlld3BvcnQsIGlzT3ZlcmZsb3dDYWxsYmFja0NhbGxlZFJlZl1cbiAgKTtcblxuICBjb25zdCBjYWxjdWxhdGVTdHlsZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAodHJpZ2dlclJlZi5jdXJyZW50ICYmIHRvb2x0aXBSZWYuY3VycmVudCkge1xuICAgICAgLy8gY2FsY3VsYXRlIHRvb2x0aXAgc3R5bGVcbiAgICAgIHNldFN0eWxlKFxuICAgICAgICBnZXRUb29sdGlwU3R5bGUoe1xuICAgICAgICAgIHBsYWNlbWVudCxcbiAgICAgICAgICBkZWZhdWx0VmVydGljYWxQbGFjZW1lbnQsXG4gICAgICAgICAgdHJpZ2dlclJlZixcbiAgICAgICAgICB0b29sdGlwUmVmLFxuICAgICAgICAgIGRvY3VtZW50LFxuICAgICAgICAgIHdpbmRvdyxcbiAgICAgICAgICBhcnJvd1NpemUsXG4gICAgICAgICAgb25PdmVyZmxvd1ZpZXdwb3J0OiBoYW5kbGVWaWV3cG9ydE92ZXJmbG93LFxuICAgICAgICB9KVxuICAgICAgKTtcbiAgICB9XG4gIH0sIFtcbiAgICB0cmlnZ2VyUmVmLFxuICAgIHRvb2x0aXBSZWYsXG4gICAgZG9jdW1lbnQsXG4gICAgd2luZG93LFxuICAgIHBsYWNlbWVudCxcbiAgICBhcnJvd1NpemUsXG4gICAgZGVmYXVsdFZlcnRpY2FsUGxhY2VtZW50LFxuICAgIGhhbmRsZVZpZXdwb3J0T3ZlcmZsb3csXG4gIF0pO1xuXG4gIC8vIFRoaXMgbGF5b3V0IGVmZmVjdCB0byByZS1yZW5kZXIgd2l0aCB1cGRhdGVkIHBvc2l0aW9uIGFmdGVyIGRldGVybWluaW5nIGNvbnRlbnQgd2lkdGhcbiAgdXNlTGF5b3V0RWZmZWN0KCgpID0+IHtcbiAgICBpZiAoaXNWaXNpYmxlKSB7XG4gICAgICBjYWxjdWxhdGVTdHlsZSgpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgY2FsY3VsYXRlU3R5bGUsIGNvbnRlbnRQYWRkaW5nLCBjb250ZW50LCBtYXhXaWR0aF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiB0b29sdGlwUmVmLmN1cnJlbnQpIHtcbiAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKFwicmVzaXplXCIsIGNhbGN1bGF0ZVN0eWxlKTtcbiAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKFwic2Nyb2xsXCIsIGNhbGN1bGF0ZVN0eWxlLCB0cnVlKTsgLy8gdXNlIGNhcHR1cmUgaGVyZSB0byBkZXRlY3Qgc2Nyb2xsIG9uIGFueSBwYXJlbnRcbiAgICB9IGVsc2UgaWYgKCFpc1Zpc2libGUpIHtcbiAgICAgIC8vIGxvZyB0aW1lIHdoZW4gdG9vbHRpcCBjbG9zZXNcbiAgICAgIGxhc3RUb29sdGlwSGlkZVRpbWVzdGFtcCA9IERhdGUubm93KCk7XG4gICAgfVxuXG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKFwicmVzaXplXCIsIGNhbGN1bGF0ZVN0eWxlKTtcbiAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKFwic2Nyb2xsXCIsIGNhbGN1bGF0ZVN0eWxlLCB0cnVlKTtcbiAgICB9O1xuICB9LCBbaXNWaXNpYmxlLCBjYWxjdWxhdGVTdHlsZSwgd2luZG93LCB0b29sdGlwUmVmXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpc092ZXJmbG93Q2FsbGJhY2tDYWxsZWRSZWYuY3VycmVudCA9IGZhbHNlO1xuICB9LCBbaXNWaXNpYmxlLCBpc092ZXJmbG93Q2FsbGJhY2tDYWxsZWRSZWZdKTtcblxuICBpZiAoIWlzVmlzaWJsZSkgcmV0dXJuIG51bGw7XG5cbiAgY29uc3QgdG9vbHRpcEVsbSA9IChcbiAgICA8U3R5bGVkQ29udGFpbmVyXG4gICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgZGF0YS1kcy1pZD17ZGF0YURTSWR9XG4gICAgICBzdHlsZT17e1xuICAgICAgICB0b3A6IHN0eWxlLnRvcCxcbiAgICAgICAgbGVmdDogc3R5bGUubGVmdCxcbiAgICAgICAgYW5pbWF0aW9uRHVyYXRpb246IGdldEFuaW1hdGlvbkR1cmF0aW9uKCksXG4gICAgICB9fVxuICAgICAgcmVmPXt0b29sdGlwUmVmfVxuICAgICAgaWQ9e3Rvb2x0aXBJZH1cbiAgICAgIHJvbGU9e3JvbGV9XG4gICAgICBhcmlhLWhpZGRlbj17YXJpYUhpZGRlbn1cbiAgICAgIHN1YlRoZW1lPXtzdWJUaGVtZX1cbiAgICAgIHRhYkluZGV4PXt0YWJJbmRleH1cbiAgICAgIGhvcml6b250YWxQbGFjZW1lbnQ9e3N0eWxlLmhvcml6b250YWxQbGFjZW1lbnR9XG4gICAgICB2ZXJ0aWNhbFBsYWNlbWVudD17c3R5bGUudmVydGljYWxQbGFjZW1lbnR9XG4gICAgICBtYXhXaWR0aD17bWF4V2lkdGh9XG4gICAgICBjb250ZW50UGFkZGluZz17Y29udGVudFBhZGRpbmd9XG4gICAgICBvblBvaW50ZXJFbnRlcj17b25Ub29sdGlwUG9pbnRlckVudGVyfVxuICAgICAgb25Qb2ludGVyTGVhdmU9e29uVG9vbHRpcFBvaW50ZXJMZWF2ZX1cbiAgICA+XG4gICAgICB7Y29udGVudH1cbiAgICAgIHshaGlkZUFycm93ICYmIChcbiAgICAgICAgPFN0eWxlZEFycm93XG4gICAgICAgICAgZGF0YS1lMmUtdGVzdC1pZD17YCR7ZGF0YUUyZVRlc3RJZH1fYXJyb3dgfVxuICAgICAgICAgIHN1YlRoZW1lPXtzdWJUaGVtZX1cbiAgICAgICAgICBob3Jpem9udGFsUGxhY2VtZW50PXtzdHlsZS5ob3Jpem9udGFsUGxhY2VtZW50fVxuICAgICAgICAgIHZlcnRpY2FsUGxhY2VtZW50PXtzdHlsZS52ZXJ0aWNhbFBsYWNlbWVudH1cbiAgICAgICAgICBzaXplPXthcnJvd1NpemV9XG4gICAgICAgIC8+XG4gICAgICApfVxuICAgIDwvU3R5bGVkQ29udGFpbmVyPlxuICApO1xuXG4gIGNvbnN0IHdyYXBwZXJFbG0gPSBzdWJUaGVtZSA/IChcbiAgICA8U3ViVGhlbWVQcm92aWRlciBuYW1lPXtzdWJUaGVtZX0+e3Rvb2x0aXBFbG19PC9TdWJUaGVtZVByb3ZpZGVyPlxuICApIDogKFxuICAgIHRvb2x0aXBFbG1cbiAgKTtcblxuICByZXR1cm4gPFBvcnRhbCBwb3J0YWxDb250YWluZXI9e3BvcnRhbENvbnRhaW5lcn0+e3dyYXBwZXJFbG19PC9Qb3J0YWw+O1xufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWdGd0IifQ== */"),StyledArrow=styled("div",{target:"e16lrqlb1",label:"StyledArrow"})(({theme,subTheme,verticalPlacement,horizontalPlacement,size=ARROW_SIZE})=>{let offset=getArrowOffset(size),adjustmentForShadow=+!subTheme,arrowContainerHeight=size+DISTANCE_FROM_TRIGGER,arrowSideLength=Math.sqrt(size**2+(size+adjustmentForShadow)**2);return{position:"absolute",width:40,height:arrowContainerHeight,zIndex:1,overflow:"hidden",..."top"===verticalPlacement&&{top:`calc(100% - ${adjustmentForShadow}px)`},..."bottom"===verticalPlacement&&{top:`-${arrowContainerHeight-adjustmentForShadow}px`},..."center"===horizontalPlacement&&{left:"50%",transform:"translate(-50%)"},..."right"===horizontalPlacement&&{left:`${offset-(20-size)}px`},..."left"===horizontalPlacement&&{right:`${offset-(20-size)}px`},"&::after":{content:'" "',position:"absolute",top:"top"===verticalPlacement?0:"100%",left:"50%",width:arrowSideLength,height:arrowSideLength,backgroundColor:subTheme?theme.values.color.background.primary.default:theme.values.color.background.elevated.default,transform:"translate(-50%, -50%) rotate(45deg)",...!subTheme&&{boxShadow:theme.values.elevation[3]}}}},"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvVG9vbHRpcC9Ub29sdGlwQ29udGVudC50c3giLCJzb3VyY2VzIjpbInNyYy9jb21wb25lbnRzL1Rvb2x0aXAvVG9vbHRpcENvbnRlbnQudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgTXV0YWJsZVJlZk9iamVjdCwgUmVhY3RFbGVtZW50IH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgUmVhY3QsIHtcbiAgdXNlQ2FsbGJhY2ssXG4gIHVzZUVmZmVjdCxcbiAgdXNlTGF5b3V0RWZmZWN0LFxuICB1c2VNZW1vLFxuICB1c2VSZWYsXG4gIHVzZVN0YXRlLFxufSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBzdHlsZWQgZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHsga2V5ZnJhbWVzIH0gZnJvbSBcIkBlbW90aW9uL3JlYWN0XCI7XG5pbXBvcnQgdHlwZSB7IFByb3BlcnR5IH0gZnJvbSBcImNzc3R5cGVcIjtcbmltcG9ydCB7IHVzZURvY3VtZW50IH0gZnJvbSBcIi4uLy4uL3NoYXJlZC91c2VEb2N1bWVudFwiO1xuaW1wb3J0IHsgdXNlV2luZG93IH0gZnJvbSBcIi4uLy4uL3NoYXJlZC91c2VXaW5kb3dcIjtcbmltcG9ydCB7IFN1YlRoZW1lUHJvdmlkZXIgfSBmcm9tIFwiLi4vU3ViVGhlbWVQcm92aWRlci9TdWJUaGVtZVByb3ZpZGVyXCI7XG5pbXBvcnQgdHlwZSB7IFN1YlRoZW1lVHlwZXMgfSBmcm9tIFwiLi4vLi4vd2ViLXRva2Vucy9fc3ViVGhlbWVUeXBlXCI7XG5pbXBvcnQgeyBQb3J0YWwsIHR5cGUgUG9ydGFsUHJvcHMgfSBmcm9tIFwiLi4vUG9ydGFsL1BvcnRhbFwiO1xuaW1wb3J0IHpJbmRpY2VzIGZyb20gXCIuLi8uLi93ZWItdG9rZW5zL196aW5kZXguanNvblwiO1xuXG5pbXBvcnQge1xuICBBTklNQVRJT05fRElTVEFOQ0UsXG4gIEFSUk9XX1NJWkUsXG4gIEFSUk9XX1NJWkVfQklHLFxuICBESVNUQU5DRV9GUk9NX1RSSUdHRVIsXG4gIGdldEFycm93T2Zmc2V0LFxuICBnZXRUb29sdGlwU3R5bGUsXG59IGZyb20gXCIuL3V0aWxzXCI7XG5cbmV4cG9ydCB0eXBlIFRvb2x0aXBDb250ZW50UHJvcHMgPSB7XG4gIGNvbnRlbnQ6IFJlYWN0RWxlbWVudDtcbiAgdHJpZ2dlclJlZjogTXV0YWJsZVJlZk9iamVjdDxhbnk+O1xuICBwbGFjZW1lbnQ/OlxuICAgIHwgXCJhdXRvXCJcbiAgICB8IFwidG9wXCJcbiAgICB8IFwiYm90dG9tXCJcbiAgICB8IFwidG9wLWxlZnRcIlxuICAgIHwgXCJ0b3AtcmlnaHRcIlxuICAgIHwgXCJib3R0b20tbGVmdFwiXG4gICAgfCBcImJvdHRvbS1yaWdodFwiO1xuICBkYXRhRTJlVGVzdElkPzogc3RyaW5nO1xuICBkYXRhRFNJZDogc3RyaW5nO1xuICBpc1Zpc2libGU/OiBib29sZWFuO1xuICB0b29sdGlwSWQ/OiBzdHJpbmc7XG4gIFwiYXJpYS1oaWRkZW5cIj86IGJvb2xlYW47XG4gIHJvbGU/OiBzdHJpbmc7XG4gIHRhYkluZGV4PzogbnVtYmVyO1xuICBjb250ZW50UGFkZGluZz86IFwic1wiIHwgXCJtXCI7XG4gIHN1YlRoZW1lPzogU3ViVGhlbWVUeXBlcztcbiAgbWF4V2lkdGg/OiBQcm9wZXJ0eS5NYXhXaWR0aCB8IG51bWJlcjtcbiAgZGVmYXVsdFZlcnRpY2FsUGxhY2VtZW50PzogVG9vbHRpcFN0eWxlW1widmVydGljYWxQbGFjZW1lbnRcIl07XG4gIG9uVG9vbHRpcFBvaW50ZXJFbnRlcj86IFJlYWN0LlBvaW50ZXJFdmVudEhhbmRsZXI8SFRNTERpdkVsZW1lbnQ+O1xuICBvblRvb2x0aXBQb2ludGVyTGVhdmU/OiBSZWFjdC5Qb2ludGVyRXZlbnRIYW5kbGVyPEhUTUxEaXZFbGVtZW50PjtcbiAgaGlkZUFycm93PzogYm9vbGVhbjtcbiAgLyoqIFRoaXMgY2FsbGJhY2sgaXMgdHJpZ2dlcmVkIHdoZW4gY29udGVudCBvdmVyZmxvd3MgdGhlIHZpZXdwb3J0IGJvdGggYWJvdmUgYW5kIGJlbG93IHRyaWdnZXIuIFVzZSB0aGlzIGZvciB0cmFja2luZyBwdXJwb3NlcyBvciByZS1yZW5kZXJpbmcgUG9wb3ZlciB3aXRoIGEgbGFyZ2VyIG1heFdpZHRoICovXG4gIG9uT3ZlcmZsb3dWaWV3cG9ydD86IChcbiAgICB0cmlnZ2VyUmVjdDogRE9NUmVjdCxcbiAgICB0b29sdGlwUmVjdDogRE9NUmVjdCxcbiAgICB2aWV3cG9ydEhlaWdodDogbnVtYmVyXG4gICkgPT4gdm9pZDtcbn0gJiBQaWNrPFBvcnRhbFByb3BzLCBcInBvcnRhbENvbnRhaW5lclwiPjtcblxuZXhwb3J0IHR5cGUgVG9vbHRpcFN0eWxlID0ge1xuICB0b3A6IG51bWJlcjtcbiAgbGVmdDogbnVtYmVyO1xuICBob3Jpem9udGFsUGxhY2VtZW50OiBcImxlZnRcIiB8IFwicmlnaHRcIiB8IFwiY2VudGVyXCI7XG4gIHZlcnRpY2FsUGxhY2VtZW50OiBcInRvcFwiIHwgXCJib3R0b21cIjtcbn07XG5cbnR5cGUgU3R5bGVkQ29udGFpbmVyUHJvcHMgPSBQaWNrPFxuICBUb29sdGlwQ29udGVudFByb3BzLFxuICBcImNvbnRlbnRQYWRkaW5nXCIgfCBcIm1heFdpZHRoXCIgfCBcInN1YlRoZW1lXCJcbj4gJiB7XG4gIGhvcml6b250YWxQbGFjZW1lbnQ6IFRvb2x0aXBTdHlsZVtcImhvcml6b250YWxQbGFjZW1lbnRcIl07XG4gIHZlcnRpY2FsUGxhY2VtZW50OiBUb29sdGlwU3R5bGVbXCJ2ZXJ0aWNhbFBsYWNlbWVudFwiXTtcbn07XG5cbmNvbnN0IEFOSU1BVElPTl9EVVJBVElPTiA9IDIwMDtcbmNvbnN0IFNIT1dfSElERV9ERUxBWSA9IDIwMDtcbmNvbnN0IE1BWF9DT05URU5UX1dJRFRIID0gMjI0O1xuXG5jb25zdCBTdHlsZWRDb250YWluZXIgPSBzdHlsZWQuZGl2PFN0eWxlZENvbnRhaW5lclByb3BzPihcbiAgKHtcbiAgICB0aGVtZSxcbiAgICBob3Jpem9udGFsUGxhY2VtZW50LFxuICAgIHZlcnRpY2FsUGxhY2VtZW50LFxuICAgIG1heFdpZHRoLFxuICAgIGNvbnRlbnRQYWRkaW5nLFxuICAgIHN1YlRoZW1lLFxuICB9KSA9PiB7XG4gICAgY29uc3QgYW5pbWF0aW9uRGlzdGFuY2UgPVxuICAgICAgdmVydGljYWxQbGFjZW1lbnQgPT09IFwidG9wXCJcbiAgICAgICAgPyBgJHtBTklNQVRJT05fRElTVEFOQ0V9cHhgXG4gICAgICAgIDogYC0ke0FOSU1BVElPTl9ESVNUQU5DRX1weGA7XG4gICAgY29uc3QgYW5pbWF0aW9uID0ga2V5ZnJhbWVzKHtcbiAgICAgIHRvOiB7XG4gICAgICAgIG9wYWNpdHk6IHRoZW1lLnZhcmlhYmxlcy5vcGFjaXR5LnZpc2libGUsXG4gICAgICAgIHRyYW5zZm9ybTpcbiAgICAgICAgICBob3Jpem9udGFsUGxhY2VtZW50ID09PSBcImNlbnRlclwiXG4gICAgICAgICAgICA/IGB0cmFuc2xhdGUoLTUwJSwgJHthbmltYXRpb25EaXN0YW5jZX0pYFxuICAgICAgICAgICAgOiBgdHJhbnNsYXRlWSgke2FuaW1hdGlvbkRpc3RhbmNlfSlgLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGNvbnRlbnRQYWRkaW5nTWFwID0ge1xuICAgICAgczogdGhlbWUudmFyaWFibGVzLnNpemUuc3BhY2luZy54eHMsXG4gICAgICBtOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnMsXG4gICAgfTtcblxuICAgIGNvbnN0IGludmVydGVkU3ViVGhlbWVTdHlsZXMgPSB7XG4gICAgICBwYWRkaW5nOiBgJHt0aGVtZS52YXJpYWJsZXMuc2l6ZS5zcGFjaW5nLnhzfSAke3RoZW1lLnZhcmlhYmxlcy5zaXplLnNwYWNpbmcuc31gLFxuICAgICAgLi4uKGNvbnRlbnRQYWRkaW5nICYmIHtcbiAgICAgICAgcGFkZGluZzogY29udGVudFBhZGRpbmdNYXBbY29udGVudFBhZGRpbmddLFxuICAgICAgfSksXG4gICAgfTtcblxuICAgIHJldHVybiB7XG4gICAgICBwb3NpdGlvbjogXCJhYnNvbHV0ZVwiLFxuICAgICAgekluZGV4OiB6SW5kaWNlcy50b29sdGlwLnZhbHVlLFxuICAgICAgb3BhY2l0eTogdGhlbWUudmFyaWFibGVzLm9wYWNpdHkuaGlkZGVuLFxuICAgICAgYW5pbWF0aW9uOiBgJHtBTklNQVRJT05fRFVSQVRJT059bXMgZWFzZS1vdXQgZm9yd2FyZHMgJHthbmltYXRpb259YCxcbiAgICAgIG1heFdpZHRoLFxuICAgICAgd2lkdGg6IFwibWF4LWNvbnRlbnRcIixcbiAgICAgIGJveFNpemluZzogXCJib3JkZXItYm94XCIsXG4gICAgICBiYWNrZ3JvdW5kQ29sb3I6IHN1YlRoZW1lXG4gICAgICAgID8gdGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQucHJpbWFyeS5kZWZhdWx0XG4gICAgICAgIDogdGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQuZWxldmF0ZWQuZGVmYXVsdCxcbiAgICAgIGJvcmRlclJhZGl1czogc3ViVGhlbWVcbiAgICAgICAgPyB0aGVtZS52YXJpYWJsZXMuc2l6ZS5ib3JkZXJSYWRpdXMueHNcbiAgICAgICAgOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5ib3JkZXJSYWRpdXMucyxcblxuICAgICAgLi4uKCEhc3ViVGhlbWUgJiYgaW52ZXJ0ZWRTdWJUaGVtZVN0eWxlcyksXG4gICAgICAuLi4oaG9yaXpvbnRhbFBsYWNlbWVudCA9PT0gXCJjZW50ZXJcIiAmJiB7XG4gICAgICAgIHRyYW5zZm9ybTogXCJ0cmFuc2xhdGUoLTUwJSlcIixcbiAgICAgIH0pLFxuXG4gICAgICAuLi4oIXN1YlRoZW1lICYmIHtcbiAgICAgICAgXCI6YWZ0ZXJcIjoge1xuICAgICAgICAgIGNvbnRlbnQ6ICdcIiBcIicsXG4gICAgICAgICAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgICAgICAgICB0b3A6IDAsXG4gICAgICAgICAgbGVmdDogMCxcbiAgICAgICAgICB3aWR0aDogXCIxMDAlXCIsXG4gICAgICAgICAgaGVpZ2h0OiBcIjEwMCVcIixcbiAgICAgICAgICBwb2ludGVyRXZlbnRzOiBcIm5vbmVcIixcbiAgICAgICAgICBib3JkZXJSYWRpdXM6IFwiaW5oZXJpdFwiLFxuICAgICAgICAgIGJveFNoYWRvdzogdGhlbWUudmFsdWVzLmVsZXZhdGlvblszXSxcbiAgICAgICAgfSxcbiAgICAgIH0pLFxuICAgIH07XG4gIH1cbik7XG5cbnR5cGUgU3R5bGVkQXJyb3dQcm9wcyA9IFBpY2s8VG9vbHRpcENvbnRlbnRQcm9wcywgXCJzdWJUaGVtZVwiPiAmIHtcbiAgdmVydGljYWxQbGFjZW1lbnQ6IFRvb2x0aXBTdHlsZVtcInZlcnRpY2FsUGxhY2VtZW50XCJdO1xuICBob3Jpem9udGFsUGxhY2VtZW50OiBUb29sdGlwU3R5bGVbXCJob3Jpem9udGFsUGxhY2VtZW50XCJdO1xuICBzaXplPzogMCB8IHR5cGVvZiBBUlJPV19TSVpFIHwgdHlwZW9mIEFSUk9XX1NJWkVfQklHO1xufTtcblxuLy8gVGhpcyBjb250YWluZXIgaXMgbGFyZ2UgZW5vdWdoIHRvIGNvbnRhaW4gdGhlIGFycm93IHNoYWRvdyBibHVyXG5jb25zdCBBUlJPV19DT05UQUlORVJfV0lEVEggPSA0MDtcblxuY29uc3QgU3R5bGVkQXJyb3cgPSBzdHlsZWQuZGl2PFN0eWxlZEFycm93UHJvcHM+KFxuICAoe1xuICAgIHRoZW1lLFxuICAgIHN1YlRoZW1lLFxuICAgIHZlcnRpY2FsUGxhY2VtZW50LFxuICAgIGhvcml6b250YWxQbGFjZW1lbnQsXG4gICAgc2l6ZSA9IEFSUk9XX1NJWkUsXG4gIH0pID0+IHtcbiAgICBjb25zdCBvZmZzZXQgPSBnZXRBcnJvd09mZnNldChzaXplKTtcbiAgICBjb25zdCBhZGp1c3RtZW50Rm9yU2hhZG93ID0gc3ViVGhlbWUgPyAwIDogMTtcbiAgICBjb25zdCBhcnJvd0NvbnRhaW5lckhlaWdodCA9IHNpemUgKyBESVNUQU5DRV9GUk9NX1RSSUdHRVI7XG4gICAgLy8gR2V0IGFycm93IHdpZHRoIGFuZCBoZWlnaHQgdXNpbmcgcHl0aG9nb3JhcyB0aGVvcmVtIGFuZCBhZGQgMSB0byBoZWlnaHQgdG8gYWNjb3VudCBmb3IgZGFyayBtb2RlIHNoYWRvdy5cbiAgICBjb25zdCBhcnJvd1NpZGVMZW5ndGggPSBNYXRoLnNxcnQoXG4gICAgICBzaXplICoqIDIgKyAoc2l6ZSArIGFkanVzdG1lbnRGb3JTaGFkb3cpICoqIDJcbiAgICApO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHBvc2l0aW9uOiBcImFic29sdXRlXCIsXG4gICAgICB3aWR0aDogQVJST1dfQ09OVEFJTkVSX1dJRFRILFxuICAgICAgaGVpZ2h0OiBhcnJvd0NvbnRhaW5lckhlaWdodCxcbiAgICAgIHpJbmRleDogMSxcbiAgICAgIG92ZXJmbG93OiBcImhpZGRlblwiLFxuXG4gICAgICAuLi4odmVydGljYWxQbGFjZW1lbnQgPT09IFwidG9wXCIgJiYge1xuICAgICAgICAvLyBwbGFjZSB0aGUgYXJyb3cgY29udGFpbmVyIDFweCBpbnNpZGUgdG9vbHRpcCBjb250YWluZXIgdG8gYWNjb3VudCBmb3IgZGFyayBtb2RlIGJveC1zaGFkb3dcbiAgICAgICAgdG9wOiBgY2FsYygxMDAlIC0gJHthZGp1c3RtZW50Rm9yU2hhZG93fXB4KWAsXG4gICAgICB9KSxcblxuICAgICAgLi4uKHZlcnRpY2FsUGxhY2VtZW50ID09PSBcImJvdHRvbVwiICYmIHtcbiAgICAgICAgLy8gcGxhY2UgdGhlIGFycm93IGNvbnRhaW5lciAxcHggaW5zaWRlIHRvb2x0aXAgY29udGFpbmVyIHRvIGFjY291bnQgZm9yIGRhcmsgbW9kZSBib3gtc2hhZG93XG4gICAgICAgIHRvcDogYC0ke2Fycm93Q29udGFpbmVySGVpZ2h0IC0gYWRqdXN0bWVudEZvclNoYWRvd31weGAsXG4gICAgICB9KSxcblxuICAgICAgLi4uKGhvcml6b250YWxQbGFjZW1lbnQgPT09IFwiY2VudGVyXCIgJiYge1xuICAgICAgICBsZWZ0OiBcIjUwJVwiLFxuICAgICAgICB0cmFuc2Zvcm06IFwidHJhbnNsYXRlKC01MCUpXCIsXG4gICAgICB9KSxcblxuICAgICAgLi4uKGhvcml6b250YWxQbGFjZW1lbnQgPT09IFwicmlnaHRcIiAmJiB7XG4gICAgICAgIGxlZnQ6IGAke29mZnNldCAtIChBUlJPV19DT05UQUlORVJfV0lEVEggLyAyIC0gc2l6ZSl9cHhgLFxuICAgICAgfSksXG5cbiAgICAgIC4uLihob3Jpem9udGFsUGxhY2VtZW50ID09PSBcImxlZnRcIiAmJiB7XG4gICAgICAgIHJpZ2h0OiBgJHtvZmZzZXQgLSAoQVJST1dfQ09OVEFJTkVSX1dJRFRIIC8gMiAtIHNpemUpfXB4YCxcbiAgICAgIH0pLFxuXG4gICAgICBcIiY6OmFmdGVyXCI6IHtcbiAgICAgICAgY29udGVudDogJ1wiIFwiJyxcbiAgICAgICAgcG9zaXRpb246IFwiYWJzb2x1dGVcIixcbiAgICAgICAgdG9wOiB2ZXJ0aWNhbFBsYWNlbWVudCA9PT0gXCJ0b3BcIiA/IDAgOiBcIjEwMCVcIixcbiAgICAgICAgbGVmdDogXCI1MCVcIixcbiAgICAgICAgd2lkdGg6IGFycm93U2lkZUxlbmd0aCxcbiAgICAgICAgaGVpZ2h0OiBhcnJvd1NpZGVMZW5ndGgsXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogc3ViVGhlbWVcbiAgICAgICAgICA/IHRoZW1lLnZhbHVlcy5jb2xvci5iYWNrZ3JvdW5kLnByaW1hcnkuZGVmYXVsdFxuICAgICAgICAgIDogdGhlbWUudmFsdWVzLmNvbG9yLmJhY2tncm91bmQuZWxldmF0ZWQuZGVmYXVsdCxcbiAgICAgICAgdHJhbnNmb3JtOiBcInRyYW5zbGF0ZSgtNTAlLCAtNTAlKSByb3RhdGUoNDVkZWcpXCIsXG5cbiAgICAgICAgLi4uKCFzdWJUaGVtZSAmJiB7XG4gICAgICAgICAgYm94U2hhZG93OiB0aGVtZS52YWx1ZXMuZWxldmF0aW9uWzNdLFxuICAgICAgICB9KSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuKTtcblxuY29uc3QgaW5pdGlhbFN0eWxlOiBUb29sdGlwU3R5bGUgPSB7XG4gIHRvcDogMCxcbiAgbGVmdDogMCxcbiAgdmVydGljYWxQbGFjZW1lbnQ6IFwidG9wXCIsXG4gIGhvcml6b250YWxQbGFjZW1lbnQ6IFwiY2VudGVyXCIsXG59O1xuXG5sZXQgbGFzdFRvb2x0aXBIaWRlVGltZXN0YW1wID0gMDtcblxuLyogRGlzYWJsZSBhbmltYXRpb24gaWYgdGltZSBiZXR3ZWVuIGxhc3QgY2xvc2UgYW5kIG5ldyBvcGVuIGlzIGxlc3MgdGhhbiA1MDBtcyArIFNIT1dfSElERV9ERUxBWSAqL1xuZnVuY3Rpb24gZ2V0QW5pbWF0aW9uRHVyYXRpb24oKSB7XG4gIGxldCBhbmltYXRpb25EdXJhdGlvbiA9IGAke0FOSU1BVElPTl9EVVJBVElPTn1tc2A7XG5cbiAgaWYgKGxhc3RUb29sdGlwSGlkZVRpbWVzdGFtcCkge1xuICAgIGNvbnN0IHRpbWVTaW5jZUxhc3RUb29sdGlwID0gRGF0ZS5ub3coKSAtIGxhc3RUb29sdGlwSGlkZVRpbWVzdGFtcDtcblxuICAgIGlmICh0aW1lU2luY2VMYXN0VG9vbHRpcCA8IDUwMCArIFNIT1dfSElERV9ERUxBWSkge1xuICAgICAgYW5pbWF0aW9uRHVyYXRpb24gPSBcIjBtc1wiO1xuICAgIH1cbiAgfVxuICByZXR1cm4gYW5pbWF0aW9uRHVyYXRpb247XG59XG5cbi8qKiBUaGlzIGNvbXBvbmVudCBpcyB1c2VkIHRvIGRpc3BsYXkgdGhlIG92ZXJsYXkgZm9yIGJvdGggVG9nZ2xldGlwIGFuZCBUb29sdGlwIGNvbXBvbmVudHMgKi9cbmV4cG9ydCBmdW5jdGlvbiBUb29sdGlwQ29udGVudCh7XG4gIHBsYWNlbWVudCA9IFwiYXV0b1wiLFxuICBjb250ZW50LFxuICB0b29sdGlwSWQsXG4gIHRyaWdnZXJSZWYsXG4gIHBvcnRhbENvbnRhaW5lcixcbiAgZGF0YUUyZVRlc3RJZCxcbiAgZGF0YURTSWQsXG4gIGlzVmlzaWJsZSxcbiAgXCJhcmlhLWhpZGRlblwiOiBhcmlhSGlkZGVuLFxuICByb2xlLFxuICB0YWJJbmRleCxcbiAgY29udGVudFBhZGRpbmcsXG4gIG1heFdpZHRoID0gTUFYX0NPTlRFTlRfV0lEVEgsXG4gIHN1YlRoZW1lLFxuICBkZWZhdWx0VmVydGljYWxQbGFjZW1lbnQsXG4gIG9uVG9vbHRpcFBvaW50ZXJFbnRlcixcbiAgb25Ub29sdGlwUG9pbnRlckxlYXZlLFxuICBoaWRlQXJyb3cgPSBmYWxzZSxcbiAgb25PdmVyZmxvd1ZpZXdwb3J0LFxufTogVG9vbHRpcENvbnRlbnRQcm9wcyk6IFJlYWN0LlJlYWN0RWxlbWVudCB7XG4gIGNvbnN0IFtzdHlsZSwgc2V0U3R5bGVdID0gdXNlU3RhdGUoaW5pdGlhbFN0eWxlKTtcbiAgY29uc3QgdG9vbHRpcFJlZiA9IHVzZVJlZihudWxsKTtcbiAgY29uc3QgaXNPdmVyZmxvd0NhbGxiYWNrQ2FsbGVkUmVmID0gdXNlUmVmKGZhbHNlKTtcbiAgY29uc3QgZG9jdW1lbnQgPSB1c2VEb2N1bWVudCgpO1xuICBjb25zdCB3aW5kb3cgPSB1c2VXaW5kb3coKTtcblxuICBjb25zdCBhcnJvd1NpemUgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoaGlkZUFycm93KSB7XG4gICAgICByZXR1cm4gMDtcbiAgICB9XG4gICAgcmV0dXJuIHN1YlRoZW1lID8gQVJST1dfU0laRSA6IEFSUk9XX1NJWkVfQklHO1xuICB9LCBbc3ViVGhlbWUsIGhpZGVBcnJvd10pO1xuXG4gIGNvbnN0IGhhbmRsZVZpZXdwb3J0T3ZlcmZsb3cgPSB1c2VDYWxsYmFjazxcbiAgICBUb29sdGlwQ29udGVudFByb3BzW1wib25PdmVyZmxvd1ZpZXdwb3J0XCJdXG4gID4oXG4gICAgKHRyaWdnZXJSZWN0LCB0b29sdGlwUmVjdCwgdmlld3BvcnRIZWlnaHQpID0+IHtcbiAgICAgIGlmICghaXNPdmVyZmxvd0NhbGxiYWNrQ2FsbGVkUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgb25PdmVyZmxvd1ZpZXdwb3J0Py4odHJpZ2dlclJlY3QsIHRvb2x0aXBSZWN0LCB2aWV3cG9ydEhlaWdodCk7XG4gICAgICAgIGlzT3ZlcmZsb3dDYWxsYmFja0NhbGxlZFJlZi5jdXJyZW50ID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFtvbk92ZXJmbG93Vmlld3BvcnQsIGlzT3ZlcmZsb3dDYWxsYmFja0NhbGxlZFJlZl1cbiAgKTtcblxuICBjb25zdCBjYWxjdWxhdGVTdHlsZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAodHJpZ2dlclJlZi5jdXJyZW50ICYmIHRvb2x0aXBSZWYuY3VycmVudCkge1xuICAgICAgLy8gY2FsY3VsYXRlIHRvb2x0aXAgc3R5bGVcbiAgICAgIHNldFN0eWxlKFxuICAgICAgICBnZXRUb29sdGlwU3R5bGUoe1xuICAgICAgICAgIHBsYWNlbWVudCxcbiAgICAgICAgICBkZWZhdWx0VmVydGljYWxQbGFjZW1lbnQsXG4gICAgICAgICAgdHJpZ2dlclJlZixcbiAgICAgICAgICB0b29sdGlwUmVmLFxuICAgICAgICAgIGRvY3VtZW50LFxuICAgICAgICAgIHdpbmRvdyxcbiAgICAgICAgICBhcnJvd1NpemUsXG4gICAgICAgICAgb25PdmVyZmxvd1ZpZXdwb3J0OiBoYW5kbGVWaWV3cG9ydE92ZXJmbG93LFxuICAgICAgICB9KVxuICAgICAgKTtcbiAgICB9XG4gIH0sIFtcbiAgICB0cmlnZ2VyUmVmLFxuICAgIHRvb2x0aXBSZWYsXG4gICAgZG9jdW1lbnQsXG4gICAgd2luZG93LFxuICAgIHBsYWNlbWVudCxcbiAgICBhcnJvd1NpemUsXG4gICAgZGVmYXVsdFZlcnRpY2FsUGxhY2VtZW50LFxuICAgIGhhbmRsZVZpZXdwb3J0T3ZlcmZsb3csXG4gIF0pO1xuXG4gIC8vIFRoaXMgbGF5b3V0IGVmZmVjdCB0byByZS1yZW5kZXIgd2l0aCB1cGRhdGVkIHBvc2l0aW9uIGFmdGVyIGRldGVybWluaW5nIGNvbnRlbnQgd2lkdGhcbiAgdXNlTGF5b3V0RWZmZWN0KCgpID0+IHtcbiAgICBpZiAoaXNWaXNpYmxlKSB7XG4gICAgICBjYWxjdWxhdGVTdHlsZSgpO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgY2FsY3VsYXRlU3R5bGUsIGNvbnRlbnRQYWRkaW5nLCBjb250ZW50LCBtYXhXaWR0aF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzVmlzaWJsZSAmJiB0b29sdGlwUmVmLmN1cnJlbnQpIHtcbiAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKFwicmVzaXplXCIsIGNhbGN1bGF0ZVN0eWxlKTtcbiAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKFwic2Nyb2xsXCIsIGNhbGN1bGF0ZVN0eWxlLCB0cnVlKTsgLy8gdXNlIGNhcHR1cmUgaGVyZSB0byBkZXRlY3Qgc2Nyb2xsIG9uIGFueSBwYXJlbnRcbiAgICB9IGVsc2UgaWYgKCFpc1Zpc2libGUpIHtcbiAgICAgIC8vIGxvZyB0aW1lIHdoZW4gdG9vbHRpcCBjbG9zZXNcbiAgICAgIGxhc3RUb29sdGlwSGlkZVRpbWVzdGFtcCA9IERhdGUubm93KCk7XG4gICAgfVxuXG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKFwicmVzaXplXCIsIGNhbGN1bGF0ZVN0eWxlKTtcbiAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKFwic2Nyb2xsXCIsIGNhbGN1bGF0ZVN0eWxlLCB0cnVlKTtcbiAgICB9O1xuICB9LCBbaXNWaXNpYmxlLCBjYWxjdWxhdGVTdHlsZSwgd2luZG93LCB0b29sdGlwUmVmXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpc092ZXJmbG93Q2FsbGJhY2tDYWxsZWRSZWYuY3VycmVudCA9IGZhbHNlO1xuICB9LCBbaXNWaXNpYmxlLCBpc092ZXJmbG93Q2FsbGJhY2tDYWxsZWRSZWZdKTtcblxuICBpZiAoIWlzVmlzaWJsZSkgcmV0dXJuIG51bGw7XG5cbiAgY29uc3QgdG9vbHRpcEVsbSA9IChcbiAgICA8U3R5bGVkQ29udGFpbmVyXG4gICAgICBkYXRhLWUyZS10ZXN0LWlkPXtkYXRhRTJlVGVzdElkfVxuICAgICAgZGF0YS1kcy1pZD17ZGF0YURTSWR9XG4gICAgICBzdHlsZT17e1xuICAgICAgICB0b3A6IHN0eWxlLnRvcCxcbiAgICAgICAgbGVmdDogc3R5bGUubGVmdCxcbiAgICAgICAgYW5pbWF0aW9uRHVyYXRpb246IGdldEFuaW1hdGlvbkR1cmF0aW9uKCksXG4gICAgICB9fVxuICAgICAgcmVmPXt0b29sdGlwUmVmfVxuICAgICAgaWQ9e3Rvb2x0aXBJZH1cbiAgICAgIHJvbGU9e3JvbGV9XG4gICAgICBhcmlhLWhpZGRlbj17YXJpYUhpZGRlbn1cbiAgICAgIHN1YlRoZW1lPXtzdWJUaGVtZX1cbiAgICAgIHRhYkluZGV4PXt0YWJJbmRleH1cbiAgICAgIGhvcml6b250YWxQbGFjZW1lbnQ9e3N0eWxlLmhvcml6b250YWxQbGFjZW1lbnR9XG4gICAgICB2ZXJ0aWNhbFBsYWNlbWVudD17c3R5bGUudmVydGljYWxQbGFjZW1lbnR9XG4gICAgICBtYXhXaWR0aD17bWF4V2lkdGh9XG4gICAgICBjb250ZW50UGFkZGluZz17Y29udGVudFBhZGRpbmd9XG4gICAgICBvblBvaW50ZXJFbnRlcj17b25Ub29sdGlwUG9pbnRlckVudGVyfVxuICAgICAgb25Qb2ludGVyTGVhdmU9e29uVG9vbHRpcFBvaW50ZXJMZWF2ZX1cbiAgICA+XG4gICAgICB7Y29udGVudH1cbiAgICAgIHshaGlkZUFycm93ICYmIChcbiAgICAgICAgPFN0eWxlZEFycm93XG4gICAgICAgICAgZGF0YS1lMmUtdGVzdC1pZD17YCR7ZGF0YUUyZVRlc3RJZH1fYXJyb3dgfVxuICAgICAgICAgIHN1YlRoZW1lPXtzdWJUaGVtZX1cbiAgICAgICAgICBob3Jpem9udGFsUGxhY2VtZW50PXtzdHlsZS5ob3Jpem9udGFsUGxhY2VtZW50fVxuICAgICAgICAgIHZlcnRpY2FsUGxhY2VtZW50PXtzdHlsZS52ZXJ0aWNhbFBsYWNlbWVudH1cbiAgICAgICAgICBzaXplPXthcnJvd1NpemV9XG4gICAgICAgIC8+XG4gICAgICApfVxuICAgIDwvU3R5bGVkQ29udGFpbmVyPlxuICApO1xuXG4gIGNvbnN0IHdyYXBwZXJFbG0gPSBzdWJUaGVtZSA/IChcbiAgICA8U3ViVGhlbWVQcm92aWRlciBuYW1lPXtzdWJUaGVtZX0+e3Rvb2x0aXBFbG19PC9TdWJUaGVtZVByb3ZpZGVyPlxuICApIDogKFxuICAgIHRvb2x0aXBFbG1cbiAgKTtcblxuICByZXR1cm4gPFBvcnRhbCBwb3J0YWxDb250YWluZXI9e3BvcnRhbENvbnRhaW5lcn0+e3dyYXBwZXJFbG19PC9Qb3J0YWw+O1xufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlLb0IifQ== */"),initialStyle={top:0,left:0,verticalPlacement:"top",horizontalPlacement:"center"},lastTooltipHideTimestamp=0;export function TooltipContent({placement="auto",content,tooltipId,triggerRef,portalContainer,dataE2eTestId,dataDSId,isVisible,"aria-hidden":ariaHidden,role,tabIndex,contentPadding,maxWidth=224,subTheme,defaultVerticalPlacement,onTooltipPointerEnter,onTooltipPointerLeave,hideArrow=!1,onOverflowViewport}){let animationDuration,[style,setStyle]=useState(initialStyle),tooltipRef=useRef(null),isOverflowCallbackCalledRef=useRef(!1),document=useDocument(),window=useWindow(),arrowSize=useMemo(()=>hideArrow?0:subTheme?ARROW_SIZE:ARROW_SIZE_BIG,[subTheme,hideArrow]),handleViewportOverflow=useCallback((triggerRect,tooltipRect,viewportHeight)=>{isOverflowCallbackCalledRef.current||(onOverflowViewport?.(triggerRect,tooltipRect,viewportHeight),isOverflowCallbackCalledRef.current=!0)},[onOverflowViewport,isOverflowCallbackCalledRef]),calculateStyle=useCallback(()=>{triggerRef.current&&tooltipRef.current&&setStyle(getTooltipStyle({placement,defaultVerticalPlacement,triggerRef,tooltipRef,document,window,arrowSize,onOverflowViewport:handleViewportOverflow}))},[triggerRef,tooltipRef,document,window,placement,arrowSize,defaultVerticalPlacement,handleViewportOverflow]);if(useLayoutEffect(()=>{isVisible&&calculateStyle()},[isVisible,calculateStyle,contentPadding,content,maxWidth]),useEffect(()=>(isVisible&&tooltipRef.current?(window.addEventListener("resize",calculateStyle),window.addEventListener("scroll",calculateStyle,!0)):isVisible||(lastTooltipHideTimestamp=Date.now()),()=>{window.removeEventListener("resize",calculateStyle),window.removeEventListener("scroll",calculateStyle,!0)}),[isVisible,calculateStyle,window,tooltipRef]),useEffect(()=>{isOverflowCallbackCalledRef.current=!1},[isVisible,isOverflowCallbackCalledRef]),!isVisible)return null;let tooltipElm=React.createElement(StyledContainer,{"data-e2e-test-id":dataE2eTestId,"data-ds-id":dataDSId,style:{top:style.top,left:style.left,animationDuration:(animationDuration="200ms",lastTooltipHideTimestamp&&Date.now()-lastTooltipHideTimestamp<700&&(animationDuration="0ms"),animationDuration)},ref:tooltipRef,id:tooltipId,role:role,"aria-hidden":ariaHidden,subTheme:subTheme,tabIndex:tabIndex,horizontalPlacement:style.horizontalPlacement,verticalPlacement:style.verticalPlacement,maxWidth:maxWidth,contentPadding:contentPadding,onPointerEnter:onTooltipPointerEnter,onPointerLeave:onTooltipPointerLeave},content,!hideArrow&&React.createElement(StyledArrow,{"data-e2e-test-id":`${dataE2eTestId}_arrow`,subTheme:subTheme,horizontalPlacement:style.horizontalPlacement,verticalPlacement:style.verticalPlacement,size:arrowSize})),wrapperElm=subTheme?React.createElement(SubThemeProvider,{name:subTheme},tooltipElm):tooltipElm;return React.createElement(Portal,{portalContainer:portalContainer},wrapperElm)}
|
|
@@ -1,12 +1,23 @@
|
|
|
1
1
|
import type { RefObject } from "react";
|
|
2
2
|
import type { TooltipProps } from "./Tooltip";
|
|
3
|
-
import type { TooltipStyle } from "./TooltipContent";
|
|
3
|
+
import type { TooltipStyle, TooltipContentProps } from "./TooltipContent";
|
|
4
4
|
export declare const DISTANCE_FROM_TRIGGER = 4;
|
|
5
5
|
export declare const ANIMATION_DISTANCE = 8;
|
|
6
6
|
export declare const ARROW_SIZE = 6;
|
|
7
7
|
export declare const ARROW_SIZE_BIG = 8;
|
|
8
8
|
export declare const getArrowOffset: (size: number) => number;
|
|
9
|
+
type GetTooltipStyleParams = {
|
|
10
|
+
placement: TooltipProps["placement"];
|
|
11
|
+
defaultVerticalPlacement?: TooltipStyle["verticalPlacement"];
|
|
12
|
+
triggerRef: RefObject<any>;
|
|
13
|
+
tooltipRef: RefObject<any>;
|
|
14
|
+
document: Document;
|
|
15
|
+
window: Window;
|
|
16
|
+
arrowSize: number;
|
|
17
|
+
onOverflowViewport: TooltipContentProps["onOverflowViewport"];
|
|
18
|
+
};
|
|
9
19
|
/**
|
|
10
20
|
* Get tooltip position and width
|
|
11
21
|
*/
|
|
12
|
-
export declare function getTooltipStyle(
|
|
22
|
+
export declare function getTooltipStyle({ placement, defaultVerticalPlacement, triggerRef, tooltipRef, document, window, arrowSize, onOverflowViewport, }: GetTooltipStyleParams): TooltipStyle;
|
|
23
|
+
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export const DISTANCE_FROM_TRIGGER=4;export const ANIMATION_DISTANCE=8;export const ARROW_SIZE=6;export const ARROW_SIZE_BIG=8;export const getArrowOffset=size=>2*size;export function getTooltipStyle(placement,defaultVerticalPlacement="top",triggerRef,tooltipRef,document,window,arrowSize){let triggerRect=triggerRef.current.getBoundingClientRect(),tooltipRect=tooltipRef.current.getBoundingClientRect(),viewportWidth=document.documentElement.clientWidth,viewportHeight=document.documentElement.clientHeight,top=0,left=0,verticalPlacement=defaultVerticalPlacement,horizontalPlacement="center",arrowOffset=getArrowOffset(arrowSize),tooltipMargin=arrowSize+8+4;switch(placement){case"top":case"bottom":verticalPlacement=placement;break;case"top-left":case"top-right":case"bottom-left":case"bottom-right":{let placements=placement.split("-");verticalPlacement=placements[0],horizontalPlacement=placements[1];break}default:
|
|
1
|
+
export const DISTANCE_FROM_TRIGGER=4;export const ANIMATION_DISTANCE=8;export const ARROW_SIZE=6;export const ARROW_SIZE_BIG=8;export const getArrowOffset=size=>2*size;export function getTooltipStyle({placement,defaultVerticalPlacement="top",triggerRef,tooltipRef,document,window,arrowSize,onOverflowViewport}){let triggerRect=triggerRef.current.getBoundingClientRect(),tooltipRect=tooltipRef.current.getBoundingClientRect(),viewportWidth=document.documentElement.clientWidth,viewportHeight=document.documentElement.clientHeight,top=0,left=0,verticalPlacement=defaultVerticalPlacement,horizontalPlacement="center",arrowOffset=getArrowOffset(arrowSize),tooltipMargin=arrowSize+8+4;switch(placement){case"top":case"bottom":verticalPlacement=placement;break;case"top-left":case"top-right":case"bottom-left":case"bottom-right":{let placements=placement.split("-");verticalPlacement=placements[0],horizontalPlacement=placements[1];break}default:{let canPlaceAboveTrigger=triggerRect.top>=tooltipRect.height,canPlaceBelowTrigger=triggerRect.bottom+tooltipRect.height<viewportHeight;canPlaceBelowTrigger||canPlaceAboveTrigger||onOverflowViewport?.(triggerRect,tooltipRect,viewportHeight),"top"===verticalPlacement&&!canPlaceAboveTrigger&&canPlaceBelowTrigger?verticalPlacement="bottom":"bottom"!==verticalPlacement||canPlaceBelowTrigger||(verticalPlacement="top"),triggerRect.left>=tooltipRect.width/2?triggerRect.left+triggerRect.width/2+tooltipRect.width/2>=viewportWidth&&(horizontalPlacement="left"):horizontalPlacement="right"}}switch(top="top"===verticalPlacement?triggerRect.top-tooltipRect.height-tooltipMargin:triggerRect.bottom+tooltipMargin,horizontalPlacement){case"left":left=arrowSize?triggerRect.left+triggerRect.width/2-tooltipRect.width+arrowOffset+arrowSize:triggerRect.right-tooltipRect.width;break;case"right":left=arrowSize?triggerRect.left+triggerRect.width/2-arrowOffset-arrowSize:triggerRect.left;break;default:left=triggerRect.left+triggerRect.width/2}return{top:top+window.scrollY,left:left+window.scrollX,horizontalPlacement,verticalPlacement}}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React, { type
|
|
1
|
+
import React, { type ReactNode, type ComponentProps } from "react";
|
|
2
2
|
import type { Theme } from "@emotion/react";
|
|
3
3
|
import type { TextAlignment, TextVariations, TextColors, TextSize, TextWeight, MQ, Hyphens, OverflowWrap } from "../../../types";
|
|
4
4
|
export type BaseTextProps = {
|
|
@@ -18,7 +18,6 @@ export type BaseTextProps = {
|
|
|
18
18
|
"data-ds-id"?: string;
|
|
19
19
|
};
|
|
20
20
|
export declare const TextContext: React.Context<Pick<BaseTextProps, "color" | "size" | "weight">>;
|
|
21
|
-
export type ValidTextHtmlProp = keyof Omit<HTMLAttributes<HTMLParagraphElement>, "transform">;
|
|
22
21
|
export declare const getTextLineHeight: ({ theme, size, }: {
|
|
23
22
|
theme: Theme;
|
|
24
23
|
size: TextSize;
|
|
@@ -26,7 +25,10 @@ export declare const getTextLineHeight: ({ theme, size, }: {
|
|
|
26
25
|
declare const StyledText: import("@emotion/styled").StyledComponent<{
|
|
27
26
|
theme?: Theme;
|
|
28
27
|
as?: React.ElementType;
|
|
29
|
-
} & BaseTextProps,
|
|
28
|
+
} & BaseTextProps, React.DetailedHTMLProps<React.HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>, {}>;
|
|
30
29
|
export type TextProps = ComponentProps<typeof StyledText>;
|
|
31
|
-
export declare const Text:
|
|
30
|
+
export declare const Text: React.ForwardRefExoticComponent<Omit<{
|
|
31
|
+
theme?: Theme;
|
|
32
|
+
as?: React.ElementType;
|
|
33
|
+
} & BaseTextProps & React.ClassAttributes<HTMLParagraphElement> & React.HTMLAttributes<HTMLParagraphElement>, "ref"> & React.RefAttributes<HTMLParagraphElement>>;
|
|
32
34
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import React,{createContext,useMemo}from"react";import styled from"@emotion/styled";import
|
|
1
|
+
import React,{createContext,useMemo,forwardRef}from"react";import styled from"@emotion/styled";import{useResponsiveStyles}from"../../../shared/mediaQueries";export const TextContext=createContext(null);export const getTextLineHeight=({theme,size})=>({xs:theme.variables.size.lineHeight.m,s:theme.variables.size.lineHeight.l,m:theme.variables.size.lineHeight.xl})[size];let StyledText=styled("p",{target:"esvupxe0",label:"StyledText"})(({theme,align,weight,size,transform,hyphens,overflowWrap,color,variant})=>({fontFamily:theme.variables.fontFamily.lato,margin:0,textTransform:transform,textAlign:align,fontWeight:theme.variables.weight[weight],color:theme.values.color.text[color].default,...variant&&{color:theme.values.color.text[variant].default,..."primary"===variant&&{color:theme.values.color.text.accent.default},..."secondary"===variant&&{color:theme.values.color.text.primary.default}},fontSize:theme.variables.size.font[size],lineHeight:getTextLineHeight({theme,size}),...useResponsiveStyles({hyphens:[hyphens,{none:"none",auto:"auto",manual:"manual"}]}),overflowWrap}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvVHlwb2dyYXBoeS9UZXh0L1RleHQudHN4Iiwic291cmNlcyI6WyJzcmMvY29tcG9uZW50cy9UeXBvZ3JhcGh5L1RleHQvVGV4dC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgcmVhY3QvanN4LXByb3BzLW5vLXNwcmVhZGluZyAqL1xuXG5pbXBvcnQgUmVhY3QsIHtcbiAgY3JlYXRlQ29udGV4dCxcbiAgdHlwZSBSZWFjdE5vZGUsXG4gIHR5cGUgQ29tcG9uZW50UHJvcHMsXG4gIHR5cGUgUmVmT2JqZWN0LFxuICB1c2VNZW1vLFxuICBmb3J3YXJkUmVmLFxufSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB0eXBlIHsgVGhlbWUgfSBmcm9tIFwiQGVtb3Rpb24vcmVhY3RcIjtcbmltcG9ydCB0eXBlIHsgQ1NTT2JqZWN0IH0gZnJvbSBcIkBlbW90aW9uL3N0eWxlZFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgeyB1c2VSZXNwb25zaXZlU3R5bGVzIH0gZnJvbSBcIi4uLy4uLy4uL3NoYXJlZC9tZWRpYVF1ZXJpZXNcIjtcblxuaW1wb3J0IHR5cGUge1xuICBUZXh0QWxpZ25tZW50LFxuICBUZXh0VmFyaWF0aW9ucyxcbiAgVGV4dENvbG9ycyxcbiAgVGV4dFNpemUsXG4gIFRleHRXZWlnaHQsXG4gIE1RLFxuICBIeXBoZW5zLFxuICBPdmVyZmxvd1dyYXAsXG59IGZyb20gXCIuLi8uLi8uLi90eXBlc1wiO1xuXG5leHBvcnQgdHlwZSBCYXNlVGV4dFByb3BzID0ge1xuICBjaGlsZHJlbjogUmVhY3ROb2RlO1xuICBzaXplPzogVGV4dFNpemU7XG4gIHdlaWdodD86IFRleHRXZWlnaHQ7XG4gIHRyYW5zZm9ybT86IFwibm9uZVwiIHwgXCJjYXBpdGFsaXplXCIgfCBcInVwcGVyY2FzZVwiIHwgXCJsb3dlcmNhc2VcIjtcbiAgYXM/OiBcInBcIiB8IFwic3BhblwiO1xuICAvKiogQGRlcHJlY2F0ZWQgdmFyaWFudCBwcm9wZXJ0eSBpcyBkZXByZWNhdGVkIG5vdy4gUGxlYXNlIHVzZSBjb2xvciBwcm9wLiAqL1xuICB2YXJpYW50PzogVGV4dFZhcmlhdGlvbnM7XG4gIGNvbG9yPzogVGV4dENvbG9ycztcbiAgYWxpZ24/OiBUZXh0QWxpZ25tZW50O1xuICBvdmVyZmxvd1dyYXA/OiBPdmVyZmxvd1dyYXA7XG4gIGh5cGhlbnM/OiBIeXBoZW5zIHwgTVE8SHlwaGVucz47XG4gIFwiZGF0YS1lMmUtdGVzdC1pZFwiPzogc3RyaW5nO1xuICAvKiogQGlnbm9yZSAqL1xuICBcImRhdGEtZHMtaWRcIj86IHN0cmluZztcbn07XG5cbmV4cG9ydCBjb25zdCBUZXh0Q29udGV4dCA9IGNyZWF0ZUNvbnRleHQ8UGljazxcbiAgQmFzZVRleHRQcm9wcyxcbiAgXCJjb2xvclwiIHwgXCJzaXplXCIgfCBcIndlaWdodFwiXG4+IHwgbnVsbD4obnVsbCk7XG5cbmV4cG9ydCBjb25zdCBnZXRUZXh0TGluZUhlaWdodCA9ICh7XG4gIHRoZW1lLFxuICBzaXplLFxufToge1xuICB0aGVtZTogVGhlbWU7XG4gIHNpemU6IFRleHRTaXplO1xufSk6IG51bWJlciA9PlxuICAoe1xuICAgIHhzOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5saW5lSGVpZ2h0Lm0sXG4gICAgczogdGhlbWUudmFyaWFibGVzLnNpemUubGluZUhlaWdodC5sLFxuICAgIG06IHRoZW1lLnZhcmlhYmxlcy5zaXplLmxpbmVIZWlnaHQueGwsXG4gIH1bc2l6ZV0pO1xuXG5jb25zdCBTdHlsZWRUZXh0ID0gc3R5bGVkLnA8QmFzZVRleHRQcm9wcz4oXG4gICh7XG4gICAgdGhlbWUsXG4gICAgYWxpZ24sXG4gICAgd2VpZ2h0LFxuICAgIHNpemUsXG4gICAgdHJhbnNmb3JtLFxuICAgIGh5cGhlbnMsXG4gICAgb3ZlcmZsb3dXcmFwLFxuICAgIGNvbG9yLFxuICAgIHZhcmlhbnQsXG4gIH0pID0+XG4gICAgKHtcbiAgICAgIGZvbnRGYW1pbHk6IHRoZW1lLnZhcmlhYmxlcy5mb250RmFtaWx5LmxhdG8sXG4gICAgICBtYXJnaW46IDAsXG4gICAgICB0ZXh0VHJhbnNmb3JtOiB0cmFuc2Zvcm0sXG4gICAgICB0ZXh0QWxpZ246IGFsaWduLFxuICAgICAgZm9udFdlaWdodDogdGhlbWUudmFyaWFibGVzLndlaWdodFt3ZWlnaHRdLFxuICAgICAgY29sb3I6IHRoZW1lLnZhbHVlcy5jb2xvci50ZXh0W2NvbG9yXS5kZWZhdWx0LFxuXG4gICAgICAvLyB2YXJpYW50IGlzIGRlcHJlY2F0ZWQgYW5kIGl0IHNob3VsZCBiZSBkZWxldGVkIGFzYXBcbiAgICAgIC4uLih2YXJpYW50ICYmIHtcbiAgICAgICAgY29sb3I6IHRoZW1lLnZhbHVlcy5jb2xvci50ZXh0W3ZhcmlhbnRdLmRlZmF1bHQsXG4gICAgICAgIC4uLih2YXJpYW50ID09PSBcInByaW1hcnlcIiAmJiB7XG4gICAgICAgICAgY29sb3I6IHRoZW1lLnZhbHVlcy5jb2xvci50ZXh0LmFjY2VudC5kZWZhdWx0LFxuICAgICAgICB9KSxcbiAgICAgICAgLi4uKHZhcmlhbnQgPT09IFwic2Vjb25kYXJ5XCIgJiYge1xuICAgICAgICAgIGNvbG9yOiB0aGVtZS52YWx1ZXMuY29sb3IudGV4dC5wcmltYXJ5LmRlZmF1bHQsXG4gICAgICAgIH0pLFxuICAgICAgfSksXG5cbiAgICAgIGZvbnRTaXplOiB0aGVtZS52YXJpYWJsZXMuc2l6ZS5mb250W3NpemVdLFxuICAgICAgbGluZUhlaWdodDogZ2V0VGV4dExpbmVIZWlnaHQoeyB0aGVtZSwgc2l6ZSB9KSxcbiAgICAgIC4uLnVzZVJlc3BvbnNpdmVTdHlsZXMoe1xuICAgICAgICBoeXBoZW5zOiBbaHlwaGVucywgeyBub25lOiBcIm5vbmVcIiwgYXV0bzogXCJhdXRvXCIsIG1hbnVhbDogXCJtYW51YWxcIiB9XSxcbiAgICAgIH0pLFxuICAgICAgb3ZlcmZsb3dXcmFwLFxuICAgIH0gYXMgQ1NTT2JqZWN0KVxuKTtcblxuZXhwb3J0IHR5cGUgVGV4dFByb3BzID0gQ29tcG9uZW50UHJvcHM8dHlwZW9mIFN0eWxlZFRleHQ+O1xuXG5leHBvcnQgY29uc3QgVGV4dCA9IGZvcndhcmRSZWYoXG4gIChcbiAgICB7XG4gICAgICBzaXplID0gXCJtXCIsXG4gICAgICB3ZWlnaHQgPSBcIm5vcm1hbFwiLFxuICAgICAgdHJhbnNmb3JtID0gXCJub25lXCIsXG4gICAgICBhcyA9IFwicFwiLFxuICAgICAgY29sb3I6IGNvbG9yUHJvcCA9IFwicHJpbWFyeVwiLFxuICAgICAgYWxpZ24gPSBcImxlZnRcIixcbiAgICAgIGh5cGhlbnMgPSBcIm5vbmVcIixcbiAgICAgIG92ZXJmbG93V3JhcCA9IFwibm9ybWFsXCIsXG4gICAgICB2YXJpYW50LFxuICAgICAgXCJkYXRhLWUyZS10ZXN0LWlkXCI6IGRhdGFFMmVUZXN0SWQsXG4gICAgICBjaGlsZHJlbixcbiAgICAgIC4uLnJlc3RcbiAgICB9OiBUZXh0UHJvcHMsXG4gICAgcmVmOiBSZWZPYmplY3Q8SFRNTFBhcmFncmFwaEVsZW1lbnQ+XG4gICkgPT4ge1xuICAgIGxldCBjb2xvciA9IGNvbG9yUHJvcDtcblxuICAgIC8vIHRoaXMgaXMgZ29pbmcgdG8gYmUgZGVsZXRlZCBhZnRlciBtaWdyYXRpb25cbiAgICBpZiAodmFyaWFudCkge1xuICAgICAgaWYgKHZhcmlhbnQgPT09IFwicHJpbWFyeVwiKSB7XG4gICAgICAgIGNvbG9yID0gXCJhY2NlbnRcIjtcbiAgICAgIH0gZWxzZSBpZiAodmFyaWFudCA9PT0gXCJzZWNvbmRhcnlcIikge1xuICAgICAgICBjb2xvciA9IFwicHJpbWFyeVwiO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29sb3IgPSB2YXJpYW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IGNvbnRleHRWYWx1ZXMgPSB1c2VNZW1vKFxuICAgICAgKCkgPT4gKHsgY29sb3IsIHNpemUsIHdlaWdodCB9KSxcbiAgICAgIFtjb2xvciwgc2l6ZSwgd2VpZ2h0XVxuICAgICk7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPFN0eWxlZFRleHRcbiAgICAgICAgcmVmPXtyZWZ9XG4gICAgICAgIHZhcmlhbnQ9e3ZhcmlhbnR9XG4gICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgIHdlaWdodD17d2VpZ2h0fVxuICAgICAgICB0cmFuc2Zvcm09e3RyYW5zZm9ybX1cbiAgICAgICAgYXM9e2FzfVxuICAgICAgICBjb2xvcj17Y29sb3J9XG4gICAgICAgIGFsaWduPXthbGlnbn1cbiAgICAgICAgaHlwaGVucz17aHlwaGVuc31cbiAgICAgICAgb3ZlcmZsb3dXcmFwPXtvdmVyZmxvd1dyYXB9XG4gICAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9e2RhdGFFMmVUZXN0SWR9XG4gICAgICAgIGRhdGEtZHMtaWQ9XCJUZXh0XCJcbiAgICAgICAgey4uLnJlc3R9XG4gICAgICA+XG4gICAgICAgIDxUZXh0Q29udGV4dC5Qcm92aWRlciB2YWx1ZT17Y29udGV4dFZhbHVlc30+XG4gICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICA8L1RleHRDb250ZXh0LlByb3ZpZGVyPlxuICAgICAgPC9TdHlsZWRUZXh0PlxuICAgICk7XG4gIH1cbik7XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNkRtQiJ9 */");export const Text=forwardRef(({size="m",weight="normal",transform="none",as="p",color:colorProp="primary",align="left",hyphens="none",overflowWrap="normal",variant,"data-e2e-test-id":dataE2eTestId,children,...rest},ref)=>{let color=colorProp;variant&&(color="primary"===variant?"accent":"secondary"===variant?"primary":variant);let contextValues=useMemo(()=>({color,size,weight}),[color,size,weight]);return React.createElement(StyledText,{ref:ref,variant:variant,size:size,weight:weight,transform:transform,as:as,color:color,align:align,hyphens:hyphens,overflowWrap:overflowWrap,"data-e2e-test-id":dataE2eTestId,"data-ds-id":"Text",...rest},React.createElement(TextContext.Provider,{value:contextValues},children))});
|
|
@@ -4,4 +4,4 @@ export type TextClampedProps = TextProps & {
|
|
|
4
4
|
/** The maximum number of lines. Default is 1. */
|
|
5
5
|
lines?: number;
|
|
6
6
|
};
|
|
7
|
-
export declare
|
|
7
|
+
export declare const TextClamped: React.ForwardRefExoticComponent<Omit<TextClampedProps, "ref"> & React.RefAttributes<HTMLParagraphElement>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import React
|
|
1
|
+
import React,{forwardRef}from"react";import styled from"@emotion/styled";import{Text}from"../Text/Text";let Container=styled("span",{target:"e1ygqhdj0",label:"Container"})(({lines})=>({display:"-webkit-box",WebkitBoxOrient:"vertical",overflow:"hidden",WebkitLineClamp:lines}),"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvVHlwb2dyYXBoeS9UZXh0Q2xhbXBlZC9UZXh0Q2xhbXBlZC50c3giLCJzb3VyY2VzIjpbInNyYy9jb21wb25lbnRzL1R5cG9ncmFwaHkvVGV4dENsYW1wZWQvVGV4dENsYW1wZWQudHN4Il0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIHJlYWN0L2pzeC1wcm9wcy1uby1zcHJlYWRpbmcgKi9cbmltcG9ydCBSZWFjdCwgeyBmb3J3YXJkUmVmLCB0eXBlIFJlZk9iamVjdCB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHN0eWxlZCBmcm9tIFwiQGVtb3Rpb24vc3R5bGVkXCI7XG5pbXBvcnQgdHlwZSB7IFRleHRQcm9wcyB9IGZyb20gXCIuLi9UZXh0L1RleHRcIjtcbmltcG9ydCB7IFRleHQgfSBmcm9tIFwiLi4vVGV4dC9UZXh0XCI7XG5cbmV4cG9ydCB0eXBlIFRleHRDbGFtcGVkUHJvcHMgPSBUZXh0UHJvcHMgJiB7XG4gIC8qKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgbGluZXMuIERlZmF1bHQgaXMgMS4gKi9cbiAgbGluZXM/OiBudW1iZXI7XG59O1xuXG5jb25zdCBDb250YWluZXIgPSBzdHlsZWQuc3BhbjxUZXh0Q2xhbXBlZFByb3BzPigoeyBsaW5lcyB9KSA9PiAoe1xuICBkaXNwbGF5OiBcIi13ZWJraXQtYm94XCIsXG4gIFdlYmtpdEJveE9yaWVudDogXCJ2ZXJ0aWNhbFwiLFxuICBvdmVyZmxvdzogXCJoaWRkZW5cIixcbiAgV2Via2l0TGluZUNsYW1wOiBsaW5lcyxcbn0pKTtcblxuZXhwb3J0IGNvbnN0IFRleHRDbGFtcGVkID0gZm9yd2FyZFJlZihcbiAgKFxuICAgIHByb3BzOiBUZXh0Q2xhbXBlZFByb3BzLFxuICAgIHJlZjogUmVmT2JqZWN0PEhUTUxQYXJhZ3JhcGhFbGVtZW50PlxuICApOiBSZWFjdC5SZWFjdEVsZW1lbnQgPT4ge1xuICAgIGNvbnN0IHtcbiAgICAgIGxpbmVzID0gMSxcbiAgICAgIGNoaWxkcmVuLFxuICAgICAgXCJkYXRhLWUyZS10ZXN0LWlkXCI6IGRhdGFFMmVUZXN0SWQsXG4gICAgICAuLi50ZXh0UHJvcHNcbiAgICB9ID0gcHJvcHM7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPFRleHRcbiAgICAgICAgcmVmPXtyZWZ9XG4gICAgICAgIGRhdGEtZTJlLXRlc3QtaWQ9e2RhdGFFMmVUZXN0SWR9XG4gICAgICAgIGRhdGEtZHMtaWQ9XCJUZXh0Q2xhbXBlZFwiXG4gICAgICAgIHsuLi50ZXh0UHJvcHN9XG4gICAgICA+XG4gICAgICAgIDxDb250YWluZXIgbGluZXM9e2xpbmVzfSBzaXplPXt0ZXh0UHJvcHMuc2l6ZX0+XG4gICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICA8L0NvbnRhaW5lcj5cbiAgICAgIDwvVGV4dD5cbiAgICApO1xuICB9XG4pO1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVdrQiJ9 */");export const TextClamped=forwardRef((props,ref)=>{let{lines=1,children,"data-e2e-test-id":dataE2eTestId,...textProps}=props;return React.createElement(Text,{ref:ref,"data-e2e-test-id":dataE2eTestId,"data-ds-id":"TextClamped",...textProps},React.createElement(Container,{lines:lines,size:textProps.size},children))});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import React,{useCallback,useEffect,useMemo,useRef,useState}from"react";import{TooltipContent}from"../Tooltip/TooltipContent";export function UserHighlightTooltip({content,contentPadding="s",placement="auto",maxWidth,portalContainer,"data-e2e-test-id":dataE2eTestId,triggerElements,selectedRange,onVisibilityChange,positionAtStart}){let tooltipId=useMemo(()=>`DSUserHighlightTooltip_${Math.floor(Date.now()*Math.random())}`,[]),isTooltipHovered=useRef(!1),showTooltipTimeoutId=useRef(null),hideTooltipTimeoutId=useRef(null),triggerHovered=useRef(!1),rangeRef=useRef(null);useEffect(()=>{if(selectedRange)rangeRef.current=selectedRange;else{let range=document.createRange();if(positionAtStart){let text=triggerElements[0].childNodes[0];range.setStart(text,0),range.setEnd(text,1)}else range.setStart(triggerElements[0],0),range.setEnd(triggerElements[triggerElements.length-1],1);rangeRef.current=range}},[triggerElements,selectedRange,positionAtStart]);let[tooltipVisible,setTooltipVisible]=useState(!1),toggleVisibility=useCallback(status=>{setTooltipVisible(status),onVisibilityChange&&onVisibilityChange(status)},[onVisibilityChange]);useEffect(()=>{selectedRange&&toggleVisibility(!0)},[]);let hideTooltipAfterDelay=useCallback(()=>{hideTooltipTimeoutId.current=setTimeout(()=>{triggerHovered.current||isTooltipHovered.current||!tooltipVisible||toggleVisibility(!1)},200)},[toggleVisibility,tooltipVisible]),handleTriggerPointerEnter=useCallback(()=>{triggerHovered.current=!0,tooltipVisible||(clearTimeout(showTooltipTimeoutId.current),showTooltipTimeoutId.current=setTimeout(()=>{!tooltipVisible&&triggerHovered.current&&toggleVisibility(!0)},200))},[toggleVisibility,tooltipVisible]),handleTriggerPointerLeave=useCallback(()=>{clearTimeout(hideTooltipTimeoutId.current),triggerHovered.current=!1,hideTooltipAfterDelay()},[hideTooltipAfterDelay]);return(useEffect(()=>()=>{clearTimeout(showTooltipTimeoutId.current),clearTimeout(hideTooltipTimeoutId.current)},[]),useEffect(()=>(triggerElements.forEach(node=>{node.addEventListener("pointerenter",handleTriggerPointerEnter),node.addEventListener("pointerleave",handleTriggerPointerLeave)}),()=>{triggerElements.forEach(node=>{node.removeEventListener("pointerenter",handleTriggerPointerEnter),node.removeEventListener("pointerleave",handleTriggerPointerLeave)})}),[handleTriggerPointerEnter,handleTriggerPointerLeave,triggerElements]),useEffect(()=>{triggerElements.forEach(node=>{tooltipVisible?node.setAttribute("aria-describedby",tooltipId):node.removeAttribute("aria-describedby")})},[tooltipId,tooltipVisible,triggerElements]),rangeRef.current)?React.createElement(TooltipContent,{dataDSId:"UserHighlightTooltip",content:content,placement:placement,portalContainer:portalContainer,dataE2eTestId:dataE2eTestId,isVisible:tooltipVisible,tooltipId:tooltipId,triggerRef:rangeRef,
|
|
1
|
+
import React,{useCallback,useEffect,useMemo,useRef,useState}from"react";import{TooltipContent}from"../Tooltip/TooltipContent";export function UserHighlightTooltip({content,contentPadding="s",placement="auto",maxWidth,portalContainer,"data-e2e-test-id":dataE2eTestId,triggerElements,selectedRange,onVisibilityChange,positionAtStart}){let tooltipId=useMemo(()=>`DSUserHighlightTooltip_${Math.floor(Date.now()*Math.random())}`,[]),isTooltipHovered=useRef(!1),showTooltipTimeoutId=useRef(null),hideTooltipTimeoutId=useRef(null),triggerHovered=useRef(!1),rangeRef=useRef(null);useEffect(()=>{if(selectedRange)rangeRef.current=selectedRange;else{let range=document.createRange();if(positionAtStart){let text=triggerElements[0].childNodes[0];range.setStart(text,0),range.setEnd(text,1)}else range.setStart(triggerElements[0],0),range.setEnd(triggerElements[triggerElements.length-1],1);rangeRef.current=range}},[triggerElements,selectedRange,positionAtStart]);let[tooltipVisible,setTooltipVisible]=useState(!1),toggleVisibility=useCallback(status=>{setTooltipVisible(status),onVisibilityChange&&onVisibilityChange(status)},[onVisibilityChange]);useEffect(()=>{selectedRange&&toggleVisibility(!0)},[]);let hideTooltipAfterDelay=useCallback(()=>{hideTooltipTimeoutId.current=setTimeout(()=>{triggerHovered.current||isTooltipHovered.current||!tooltipVisible||toggleVisibility(!1)},200)},[toggleVisibility,tooltipVisible]),handleTriggerPointerEnter=useCallback(()=>{triggerHovered.current=!0,tooltipVisible||(clearTimeout(showTooltipTimeoutId.current),showTooltipTimeoutId.current=setTimeout(()=>{!tooltipVisible&&triggerHovered.current&&toggleVisibility(!0)},200))},[toggleVisibility,tooltipVisible]),handleTriggerPointerLeave=useCallback(()=>{clearTimeout(hideTooltipTimeoutId.current),triggerHovered.current=!1,hideTooltipAfterDelay()},[hideTooltipAfterDelay]);return(useEffect(()=>()=>{clearTimeout(showTooltipTimeoutId.current),clearTimeout(hideTooltipTimeoutId.current)},[]),useEffect(()=>(triggerElements.forEach(node=>{node.addEventListener("pointerenter",handleTriggerPointerEnter),node.addEventListener("pointerleave",handleTriggerPointerLeave)}),()=>{triggerElements.forEach(node=>{node.removeEventListener("pointerenter",handleTriggerPointerEnter),node.removeEventListener("pointerleave",handleTriggerPointerLeave)})}),[handleTriggerPointerEnter,handleTriggerPointerLeave,triggerElements]),useEffect(()=>{triggerElements.forEach(node=>{tooltipVisible?node.setAttribute("aria-describedby",tooltipId):node.removeAttribute("aria-describedby")})},[tooltipId,tooltipVisible,triggerElements]),rangeRef.current)?React.createElement(TooltipContent,{dataDSId:"UserHighlightTooltip",content:content,placement:placement,portalContainer:portalContainer,dataE2eTestId:dataE2eTestId,isVisible:tooltipVisible,tooltipId:tooltipId,triggerRef:rangeRef,role:"tooltip",contentPadding:contentPadding,maxWidth:maxWidth,subTheme:"inverted",onTooltipPointerEnter:()=>{isTooltipHovered.current=!0},onTooltipPointerLeave:()=>{clearTimeout(hideTooltipTimeoutId.current),isTooltipHovered.current=!1,hideTooltipAfterDelay()}}):null}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import styled from"@emotion/styled";export const ScreenReaderText=styled("div",{target:"e1skx7qu0",label:"ScreenReaderText"})({width:1,height:1,position:"absolute",left:"-10000px",top:0,overflow:"hidden"},"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjL2NvbXBvbmVudHMvVXRpbGl0aWVzL1NjcmVlblJlYWRlclRleHQvU2NyZWVuUmVhZGVyVGV4dC50cyIsInNvdXJjZXMiOlsic3JjL2NvbXBvbmVudHMvVXRpbGl0aWVzL1NjcmVlblJlYWRlclRleHQvU2NyZWVuUmVhZGVyVGV4dC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gXCJAZW1vdGlvbi9zdHlsZWRcIjtcblxuLy8gQ29udGVudCByZXF1aXJlZCB0byBiZSByZWFkIGJ5IHNjcmVlbiByZWFkZXJzIGJ1dCB2aXN1YWxseSBoaWRkZW5cbmV4cG9ydCBjb25zdCBTY3JlZW5SZWFkZXJUZXh0ID0gc3R5bGVkLmRpdih7XG4gIHdpZHRoOiAxLFxuICBoZWlnaHQ6IDEsXG4gIHBvc2l0aW9uOiBcImFic29sdXRlXCIsXG4gIGxlZnQ6IFwiLTEwMDAwcHhcIixcbiAgdG9wOiAwLFxuICBvdmVyZmxvdzogXCJoaWRkZW5cIixcbn0pO1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdnQyJ9 */");
|
package/build/esm/index.d.ts
CHANGED
|
@@ -75,3 +75,4 @@ export * from "./components/Form/DateInput/DateInput";
|
|
|
75
75
|
export * from "./components/CheckboxCard/CheckboxCard";
|
|
76
76
|
export * from "./components/RadioCard/RadioCard";
|
|
77
77
|
export * from "./components/Utilities/ContainerQuery/ContainerQuery";
|
|
78
|
+
export * from "./components/Utilities/ScreenReaderText/ScreenReaderText";
|
package/build/esm/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{ambossVisualConfiguration}from"./web-tokens/visualConfig";export const{dark,light}=ambossVisualConfiguration;export{ThemeProvider,CacheProvider}from"@emotion/react";export{default as createCache}from"@emotion/cache";export*from"./components/Card/Card";export*from"./components/Card/CardBox";export*from"./components/Box/Box";export*from"./components/Inline/Inline";export*from"./components/Stack/Stack";export*from"./components/Typography/Header/Header";export*from"./components/Typography/Text/Text";export*from"./components/Typography/TextClamped/TextClamped";export*from"./components/Typography/StyledText/StyledText";export*from"./components/Link/Link";export*from"./components/Icon/Icon";export*from"./components/Button/Button";export*from"./components/BulkActionsToolbar/BulkActionsToolbar";export*from"./components/Divider/Divider";export*from"./components/Column/Columns";export*from"./components/Form/SearchInput/SearchInput";export*from"./components/Tabs/Tabs";export*from"./components/Badge/Badge";export*from"./components/SearchResult/SearchResult";export*from"./components/Form/ToggleButton/ToggleButton";export*from"./components/DropdownMenu/DropdownMenu";export*from"./components/Form/FormFieldGroup/FormFieldGroup";export*from"./components/Form/Input";export*from"./components/Form/Checkbox/Checkbox";export*from"./components/Form/Toggle/Toggle";export*from"./components/Form/Radio/Radio";export*from"./components/Form/RadioButton/RadioButton";export*from"./components/Form/RangeInput/RangeInput";export*from"./components/Form/Textarea/Textarea";export*from"./components/Form/Combobox/Combobox";export*from"./components/SubThemeProvider/SubThemeProvider";export*from"./components/PictogramButton/PictogramButton";export*from"./components/MediaViewerBar/MediaViewerBar";export*from"./components/SegmentedProgressBar/SegmentedProgressBar";export*from"./components/ProgressBar/ProgressBar";export*from"./components/Container/Container";export*from"./components/Form/PasswordInput";export*from"./components/RoundButton/RoundButton";export*from"./components/Notification/Notification";export*from"./components/Logo/Logo";export*from"./components/MediaItem/MediaItem";export*from"./components/Callout/Callout";export*from"./components/Patterns/Modal/Modal";export*from"./components/Patterns/ButtonGroup/ButtonGroup";export*from"./components/Collapsible/Collapsible";export*from"./components/LoadingSpinner/LoadingSpinner";export*from"./components/Pagination/Pagination";export*from"./components/DataTable";export*from"./components/Form/SegmentedControl/SegmentedControl";export*from"./components/Tooltip/Tooltip";export*from"./components/Tag/Tag";export*from"./components/TagGroup/TagGroup";export*from"./components/Toggletip/Toggletip";export*from"./components/Popover/Popover";export*from"./components/UserHighlightTooltip/UserHighlightTooltip";export*from"./components/Sheet/Sheet";export*from"./components/Image/Image";export*from"./components/Form/MaskedInput/MaskedInput";export*from"./components/Utilities/Expandable/Expandable";export*from"./components/QBankRichText/QBankRichText";export*from"./components/Tutorialtip/Tutorialtip";export*from"./components/EntityTree";export*from"./components/EntityList";export*from"./components/Form/Select";export*from"./components/BinaryFeedback/BinaryFeedback";export*from"./components/Grid/Grid";export*from"./components/AccessCardItem/AccessCardItem";export*from"./components/Toast";export*from"./components/Form/DateInput/DateInput";export*from"./components/CheckboxCard/CheckboxCard";export*from"./components/RadioCard/RadioCard";export*from"./components/Utilities/ContainerQuery/ContainerQuery";
|
|
1
|
+
import{ambossVisualConfiguration}from"./web-tokens/visualConfig";export const{dark,light}=ambossVisualConfiguration;export{ThemeProvider,CacheProvider}from"@emotion/react";export{default as createCache}from"@emotion/cache";export*from"./components/Card/Card";export*from"./components/Card/CardBox";export*from"./components/Box/Box";export*from"./components/Inline/Inline";export*from"./components/Stack/Stack";export*from"./components/Typography/Header/Header";export*from"./components/Typography/Text/Text";export*from"./components/Typography/TextClamped/TextClamped";export*from"./components/Typography/StyledText/StyledText";export*from"./components/Link/Link";export*from"./components/Icon/Icon";export*from"./components/Button/Button";export*from"./components/BulkActionsToolbar/BulkActionsToolbar";export*from"./components/Divider/Divider";export*from"./components/Column/Columns";export*from"./components/Form/SearchInput/SearchInput";export*from"./components/Tabs/Tabs";export*from"./components/Badge/Badge";export*from"./components/SearchResult/SearchResult";export*from"./components/Form/ToggleButton/ToggleButton";export*from"./components/DropdownMenu/DropdownMenu";export*from"./components/Form/FormFieldGroup/FormFieldGroup";export*from"./components/Form/Input";export*from"./components/Form/Checkbox/Checkbox";export*from"./components/Form/Toggle/Toggle";export*from"./components/Form/Radio/Radio";export*from"./components/Form/RadioButton/RadioButton";export*from"./components/Form/RangeInput/RangeInput";export*from"./components/Form/Textarea/Textarea";export*from"./components/Form/Combobox/Combobox";export*from"./components/SubThemeProvider/SubThemeProvider";export*from"./components/PictogramButton/PictogramButton";export*from"./components/MediaViewerBar/MediaViewerBar";export*from"./components/SegmentedProgressBar/SegmentedProgressBar";export*from"./components/ProgressBar/ProgressBar";export*from"./components/Container/Container";export*from"./components/Form/PasswordInput";export*from"./components/RoundButton/RoundButton";export*from"./components/Notification/Notification";export*from"./components/Logo/Logo";export*from"./components/MediaItem/MediaItem";export*from"./components/Callout/Callout";export*from"./components/Patterns/Modal/Modal";export*from"./components/Patterns/ButtonGroup/ButtonGroup";export*from"./components/Collapsible/Collapsible";export*from"./components/LoadingSpinner/LoadingSpinner";export*from"./components/Pagination/Pagination";export*from"./components/DataTable";export*from"./components/Form/SegmentedControl/SegmentedControl";export*from"./components/Tooltip/Tooltip";export*from"./components/Tag/Tag";export*from"./components/TagGroup/TagGroup";export*from"./components/Toggletip/Toggletip";export*from"./components/Popover/Popover";export*from"./components/UserHighlightTooltip/UserHighlightTooltip";export*from"./components/Sheet/Sheet";export*from"./components/Image/Image";export*from"./components/Form/MaskedInput/MaskedInput";export*from"./components/Utilities/Expandable/Expandable";export*from"./components/QBankRichText/QBankRichText";export*from"./components/Tutorialtip/Tutorialtip";export*from"./components/EntityTree";export*from"./components/EntityList";export*from"./components/Form/Select";export*from"./components/BinaryFeedback/BinaryFeedback";export*from"./components/Grid/Grid";export*from"./components/AccessCardItem/AccessCardItem";export*from"./components/Toast";export*from"./components/Form/DateInput/DateInput";export*from"./components/CheckboxCard/CheckboxCard";export*from"./components/RadioCard/RadioCard";export*from"./components/Utilities/ContainerQuery/ContainerQuery";export*from"./components/Utilities/ScreenReaderText/ScreenReaderText";
|