@bikdotai/bik-component-library 0.0.661 → 0.0.662-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/dist/cjs/components/QueryBuilder/Triggers/EVENTS/components/EventsTrigger.d.ts +1 -1
- package/dist/cjs/components/QueryBuilder/Triggers/EVENTS/selectors/useIGTriggerNameCacheSelector.d.ts +1 -1
- package/dist/cjs/components/QueryBuilder/Triggers/IG/components/IGTrigger.d.ts +1 -1
- package/dist/cjs/components/QueryBuilder/Triggers/IG/selectors/useIGTriggerNameCacheSelector.d.ts +1 -1
- package/dist/cjs/components/QueryBuilder/Triggers/components/BaseTriggerQueryBuilderNode.d.ts +2 -2
- package/dist/cjs/components/QueryBuilder/components/QueryBuilderNodes.js +1 -1
- package/dist/cjs/components/ai-assist/AiAssist.d.ts +19 -0
- package/dist/cjs/components/ai-assist/AiAssist.style.d.ts +6 -0
- package/dist/cjs/components/ai-assist/Components/SelectionModal.d.ts +13 -0
- package/dist/cjs/components/ai-assist/constants.d.ts +3 -0
- package/dist/cjs/components/ai-assist/model.d.ts +41 -0
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/LineChart/LineChart.d.ts +0 -2
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/LineChart/LineChart.js +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/Pie/PieChartAnalytics.js +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/StackedBarChart/StackedBarChart.js +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/StackedBarChart/StackedBarChart.model.d.ts +0 -2
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/StackedBarChart/StackedBarChart.styles.d.ts +0 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/StackedBarChart/StackedBarChart.styles.js +2 -6
- package/dist/cjs/components/buttonGroup/ButtonGroup.d.ts +2 -0
- package/dist/cjs/components/buttonGroup/ButtonGroup.js +1 -1
- package/dist/cjs/components/buttonGroup/ButtonGroupStyle.d.ts +2 -0
- package/dist/cjs/components/buttonGroup/ButtonGroupStyle.js +2 -2
- package/dist/cjs/components/plans/NewSubscriptionPlan.js +1 -1
- package/dist/cjs/components/plans/SubscriptionPlan.d.ts +0 -1
- package/dist/cjs/components/plans/SubscriptionPlan.js +1 -1
- package/dist/cjs/components/side-modal/SideModal.d.ts +1 -0
- package/dist/cjs/components/side-modal/SideModal.js +1 -1
- package/dist/cjs/components/side-modal/SideModal.style.d.ts +1 -0
- package/dist/cjs/components/side-modal/SideModal.style.js +5 -5
- package/dist/cjs/components/text-picker/TextPickerCategoryCard.d.ts +13 -0
- package/dist/cjs/components/text-picker/TextPickerCategoryCard.js +13 -0
- package/dist/cjs/components/text-picker/TextPickerFooter.d.ts +6 -0
- package/dist/cjs/components/text-picker/TextPickerFooter.js +15 -0
- package/dist/cjs/components/text-picker/TextPickerItemRow.d.ts +11 -0
- package/dist/cjs/components/text-picker/TextPickerItemRow.js +17 -0
- package/dist/cjs/components/text-picker/TextPickerModal.d.ts +30 -0
- package/dist/cjs/components/text-picker/TextPickerModal.js +25 -0
- package/dist/cjs/components/text-picker/TextPickerSelectAllRow.d.ts +7 -0
- package/dist/cjs/components/text-picker/TextPickerSelectAllRow.js +17 -0
- package/dist/cjs/components/text-picker/index.d.ts +1 -0
- package/dist/cjs/index.d.ts +1 -0
- package/dist/cjs/index.js +1 -1
- package/dist/esm/components/QueryBuilder/Triggers/EVENTS/components/EventsTrigger.d.ts +1 -1
- package/dist/esm/components/QueryBuilder/Triggers/EVENTS/selectors/useIGTriggerNameCacheSelector.d.ts +1 -1
- package/dist/esm/components/QueryBuilder/Triggers/IG/components/IGTrigger.d.ts +1 -1
- package/dist/esm/components/QueryBuilder/Triggers/IG/selectors/useIGTriggerNameCacheSelector.d.ts +1 -1
- package/dist/esm/components/QueryBuilder/Triggers/components/BaseTriggerQueryBuilderNode.d.ts +2 -2
- package/dist/esm/components/QueryBuilder/components/QueryBuilderNodes.js +1 -1
- package/dist/esm/components/ai-assist/AiAssist.d.ts +19 -0
- package/dist/esm/components/ai-assist/AiAssist.style.d.ts +6 -0
- package/dist/esm/components/ai-assist/Components/SelectionModal.d.ts +13 -0
- package/dist/esm/components/ai-assist/constants.d.ts +3 -0
- package/dist/esm/components/ai-assist/model.d.ts +41 -0
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/LineChart/LineChart.d.ts +0 -2
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/LineChart/LineChart.js +1 -1
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/Pie/PieChartAnalytics.js +1 -1
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/StackedBarChart/StackedBarChart.js +1 -1
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/StackedBarChart/StackedBarChart.model.d.ts +0 -2
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/StackedBarChart/StackedBarChart.styles.d.ts +0 -1
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/StackedBarChart/StackedBarChart.styles.js +1 -5
- package/dist/esm/components/buttonGroup/ButtonGroup.d.ts +2 -0
- package/dist/esm/components/buttonGroup/ButtonGroup.js +1 -1
- package/dist/esm/components/buttonGroup/ButtonGroupStyle.d.ts +2 -0
- package/dist/esm/components/buttonGroup/ButtonGroupStyle.js +12 -12
- package/dist/esm/components/plans/NewSubscriptionPlan.js +1 -1
- package/dist/esm/components/plans/SubscriptionPlan.d.ts +0 -1
- package/dist/esm/components/plans/SubscriptionPlan.js +1 -1
- package/dist/esm/components/side-modal/SideModal.d.ts +1 -0
- package/dist/esm/components/side-modal/SideModal.js +1 -1
- package/dist/esm/components/side-modal/SideModal.style.d.ts +1 -0
- package/dist/esm/components/side-modal/SideModal.style.js +16 -16
- package/dist/esm/components/text-picker/TextPickerCategoryCard.d.ts +13 -0
- package/dist/esm/components/text-picker/TextPickerCategoryCard.js +13 -0
- package/dist/esm/components/text-picker/TextPickerFooter.d.ts +6 -0
- package/dist/esm/components/text-picker/TextPickerFooter.js +15 -0
- package/dist/esm/components/text-picker/TextPickerItemRow.d.ts +11 -0
- package/dist/esm/components/text-picker/TextPickerItemRow.js +17 -0
- package/dist/esm/components/text-picker/TextPickerModal.d.ts +30 -0
- package/dist/esm/components/text-picker/TextPickerModal.js +25 -0
- package/dist/esm/components/text-picker/TextPickerSelectAllRow.d.ts +7 -0
- package/dist/esm/components/text-picker/TextPickerSelectAllRow.js +17 -0
- package/dist/esm/components/text-picker/index.d.ts +1 -0
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import g from"@emotion/styled/base";import{jsx as I,Fragment as C,jsxs as A}from"react/jsx-runtime";import t from"../../../../assets/icons/ChartBar.svg.js";import e from"../../../../assets/icons/maximize.svg.js";import"@amplitude/analytics-browser";import"../../../../amplitude/model.js";import o from"../../../../utils/StringUtils.js";import{COLORS as i}from"../../../../constants/Theme.js";import"../../../../constants/zindex.js";import{useState as c,useEffect as l}from"react";import"../../../checkBox/CheckBox.styled.js";import{TitleMedium as s}from"../../../TypographyStyle.js";import"../../../list-item/ListItem.js";import"../../../pagination/Pagination.js";import"../../../radioButton/RadioButton.styled.js";import"react-dom";import"react-toastify";import"../../../button/Button.js";import"../../../toaster/Toaster.styled.js";import"../../../tooltips/Tooltip.js";import"../../../spinner/Spinner.js";import"../../../stepper/Stepper.styled.js";import"../../../tag/Tag.js";import{IconButton as r}from"../../../icon-button/IconButton.js";import"../../../template-preview/TemplatePreview.js";import"../../../template-preview/WhatsApp/WhatsAppLikePreview.js";import"../../../template-preview/WhatsApp/WhatsAppLikePreviewV2.js";import"../../../curtain/CurtainHelper.js";import"../../../variable-picker-v3/model.js";import"../../../template-preview/models/TemplateMeta.js";import"../../../template-preview/models/WhatsAppTemplate.js";import"../../../template-preview/models/Channels.js";import"lodash";import{StyledModal as a}from"../../../modals/styledModal.js";import"../../../template-preview/models/RCSTemplate.js";import"../../../template-context-mapper/context/templateModalContext.js";import"../../../template-context-mapper/modalElements/Footer.js";import"../../../template-context-mapper/styles/TemplateAnalyticsStyles.js";import"../../../template-context-mapper/utils/TemplateConstants.js";import"../../../shimmer/ShimmerComponent/ShimmerStyled.js";import"../../../template-context-mapper/modalElements/Body.js";import"../../../template-context-mapper/modalElements/Header.js";import"../../../../_virtual/_tslib.js";import"../../../zeroState/ZeroState.js";import"../../../dropdown/OpenedDropdown/components/description/Description.styled.js";import"../../../dropdown/OpenedDropdown/components/menu/FreeFormMenu.styled.js";import"../../../dropdown/OpenedDropdown/components/menu/MenuItem.js";import"../../../dropdown/OpenedDropdown/components/menu/MenuList.styled.js";import"../../../dropdown/OpenedDropdown/components/multiSelect/MultiSelectDropdownBottomBar.styled.js";import"../../../dropdown/OpenedDropdown/components/OpennedDropdown.styled.js";import"../../../input/Input.js";import"react-bootstrap";import"../../../floating-action-button/FloatingActionButton.styles.js";import"../../../image-compress/ImageCompress.js";import"../../../progress-bar/ProgressBarComponent.js";import"../../../progress-bar-v2/ProgressBarV2.js";import"../../../QueryBuilder/QueryBuilder.js";import"../../../QueryBuilder/components/QueryBuilderNode/Base/BaseQueryBuilderNode.js";import"../../../QueryBuilder/constants/connectorPosition.js";import"../../../QueryBuilder/constants/connector.js";import"../../../QueryBuilder/types/QueryBuilder.type.js";import"../../../dropdown/Dropdown.js";import"../../../QueryBuilder/components/InputLoader.js";import"../../../QueryBuilder/components/Connectors/Components/EmojiPicker.js";import"react-chips";import"../../../input/ChipInput.styled.js";import"../../../QueryBuilder/components/Connectors/Components/FrequencyIntegerPositiveSingle.js";import"../../../QueryBuilder/components/Connectors/Components/IgPicker.js";import"../../../QueryBuilder/components/Connectors/Components/InTheLast.js";import"../../../QueryBuilder/components/Connectors/Components/InTwoLast.js";import"../../../datePicker/DatePickerWrapper.js";import"../../../QueryBuilder/components/Connectors/Connector.styled.js";import"../../../QueryBuilder/components/QueryBuilderNode/Property/PropertyNode.styled.js";import"../../../QueryBuilder/components/QueryBuilderNode/Property/PropertyNodeUIWrapper.styled.js";import"../../../QueryBuilder/redux/queryBuilder.reducer.js";import"../../../QueryBuilder/redux/queryBuilderCache.reducer.js";import"../../../QueryBuilder/types/QueryBuilderOperator.type.js";import"../../../dropdown/DropdownPopover/index.js";import"../../../dropdown/ChipDropdown.js";import"../../../dropdown/MenuItem/MenuItem.js";import"../../../analytics-card/AnalyticsCard.styled.js";import"../../CommonStyles.js";import"react-calendar";import"../../../datePicker/DatePicker.styled.js";import"../../AnalyticsMetric.js";import"../../../../utils/DateUtils.js";import{truncateValueForInternationalStore as d,truncateValueForIndianStore as p}from"../utils/calcPercentage.js";import"../LineChart/LineChart.js";import"../linearChipGroupedChart/LinearChipGroupedChart.styled.js";import{PieChart as n}from"./PieChart.js";import"../HorizontalBarGraph/HorizontalGraph.js";import"../StackedBarChart/StackedBarChart.js";import"../StackedBarChart/StackedBarDistributionChart.js";import"../StackedBarChart/StackedBarDistributionChart.model.js";import{VerticalGraph as m}from"../VerticalBarGraph/VerticalGraph.js";import"../VerticalBarGraph/FunnelVerticalBarGraph.js";import"../heatmap/HeatMap.js";import"../heatmap/HeatMapVertical.js";import"../VerticalBarAndLinearGraph/VerticalBarAndLinearGraph.js";import"../../../avatar/Avatar.js";import"../../../avatar/AvatarHelper.js";import"../../../alerts/Alert.styled.js";import"../../../alerts/AlertHelper.js";import"../../../thumbnail/Thumbnail.js";import"../../../curtain/Curtain.styled.js";import"../../../switch/Switch.js";import"../../../plans/SubscriptionPlanStyled.js";import"../../../plans/SubscriptionPlanSelector.js";import"../../../plans/SubscriptionPlansCollected.js";import"../../../tabs/Tabs.js";import"../../../TablePagination/TablePagination.styled.js";import"../../../TablePagination/TablePaginationCard.js";import"../../../states/StateComponent.js";import"../../../WhatsAppTextEditor/WhatsAppTextEditor.js";import"../../../WhatsAppTextEditor/WhatsAppTextEditorHeader.js";import"../../../card-selection-modal/CardSelectionModal.styled.js";import"react-image-crop";import"../../../buttonGroup/ButtonGroupStyle.js";import"../../../accordion/Accordion.style.js";import"../../../accordion/AccordionArrow.js";import"../../../file-uploader/FileUploaderStyle.js";import"../../../colourInput/ColourInput.styled.js";import"../../../bik-layout/CommonStyles.js";import"../../../navigation-hyperlink/NavigationHyperlink.js";import"../../../bik-layout/SidebarStyles.js";import"date-fns";import"react-popper";import"../../../dropdown/Common.styled.js";import"../../../custom-date-time/CustomDateTime.styled.js";import"../../../../node_modules/lodash.debounce/index.js";import"../../../product-picker/ProductPicker.styled.js";import"../../../discount-modal/type.js";import"../../../product-picker-v2/modal.js";import"../../../modals/modal.styled.js";import"../../../variable-picker-v3/NoResult.js";import"../../../variable-picker-v3/styles.js";import"../../../discount-modal/DiscountModal.styled.js";import"../../../discount-modal/DynamicCoupon/DynamicCoupon.js";import"../../../country-code-picker/CountryCodePicker.styled.js";import"../../../carousel/carousel.js";import"../../../carousel-secondary/CarouselSecondary.js";import"../../../access-token-troubleshoot-dialog/AccessTokenTroubleshootDialog.styles.js";import"../../../radioList/RadioList.styled.js";import"../../../checkList/CheckList.styled.js";import"../../../postPicker/postPicker.js";import"../../../dropdown-button/DropdownButton.style.js";import"../../../side-modal/SideModal.style.js";import"../../../add-variableV2/AddVariableV2.styled.js";import"../../../SearchFilter/types/SearchFilter.type.js";import"../../../SearchFilter/components/DatePickerButton.js";import"../../../SearchFilter/components/DateRangeOnlyButton.js";import"../../../input-with-vars/InputWithVariables.js";import"../../../star-rating/StarRating.js";import"../../../dashboard-review-popup/components/FiveStar.styled.js";import"../../../dashboard-review-popup/components/Form.styled.js";import"../../../dashboard-review-popup/components/ZeroState.js";import"../../../dashboard-review-popup/DashboardReviewPopUp.styled.js";import"../../../testimonial-card/TestimonialCard.style.js";import"../../../slider/slider.js";import"react-slick";import"../../../carousel-preview/CarouselPreview.style.js";import"../../../template-preview/RCS/RCSPreview.styled.js";import"../../../card-selector/CardSelector.styled.js";import"../../../action-button/ActionButton.styled.js";import"../../../floating-input-dropdown/FloatingInputDropdown.js";import"../../../dropdown/MultilevelDropdownPopover/index.js";import"../../../multi-level-dropdown/MultiLevelDropdown.styled.js";import"../../../data-source-panel/DataSourceInfoFooter.js";import"../../../data-source-panel/DataSourcePanel.style.js";import"../../../data-source-panel/model.js";import"../../../unsatisfactory-response-list/UnsatisfactoryCountIntentWiseModal.style.js";import"../../../unsatisfactory-response-list/UnsatisfactoryResponseList.style.js";import{Chart as b,ArcElement as G,Legend as y}from"chart.js";import{Doughnut as u}from"react-chartjs-2";b.register(G,y);const h=g=>({plugins:{legend:{display:!1},tooltip:{enabled:!0,callbacks:{label:I=>{var C;if(!I.label)return" 0%";const A=I.dataset.data.reduce(((g,I)=>g+I),0),t=parseFloat((I.raw/A*100).toFixed(1)),{label:e,raw:o}=I,i=null!==(C=null==g?void 0:g.symbol)&&void 0!==C?C:"",c=null==g?void 0:g.isInternationalStore;return[` ${e}`,` ${i}${void 0!==c?c?d(o):p(o):o} (${t}% of ${i}${void 0!==c?c?d(A):p(A):A})`]}}}}}),X=["#5E07BB","#9E77ED","#D2AEFF","#CDE1FF","#92AFFA","#3935E1"],B=g("div","production"===process.env.NODE_ENV?{target:"elaov7f0"}:{target:"elaov7f0",label:"CartStyled"})("background:",(g=>i.surface.standard),";border:1px solid ",(g=>i.stroke.primary),";border-radius:4px;"+("production"===process.env.NODE_ENV?"":"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlBpZUNoYXJ0QW5hbHl0aWNzLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUErRThCIiwiZmlsZSI6IlBpZUNoYXJ0QW5hbHl0aWNzLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4LCBGcmFnbWVudCBhcyBfRnJhZ21lbnQsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwicmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgQmFyQ2hhcnRJY29uIGZyb20gJ0BzcmMvYXNzZXRzL2ljb25zL0NoYXJ0QmFyLnN2Zyc7XHJcbmltcG9ydCBNYXhpbWl6ZUljb24gZnJvbSAnQHNyYy9hc3NldHMvaWNvbnMvbWF4aW1pemUuc3ZnJztcclxuaW1wb3J0IHsgU3RyaW5nVXRpbHMgfSBmcm9tIFwiLi4vLi4vLi4vLi4vaW5kZXhcIjtcclxuaW1wb3J0IHsgQXJjRWxlbWVudCwgQ2hhcnQgYXMgQ2hhcnRKUywgTGVnZW5kIH0gZnJvbSAnY2hhcnQuanMnO1xyXG5pbXBvcnQgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xyXG5pbXBvcnQgeyBEb3VnaG51dCB9IGZyb20gJ3JlYWN0LWNoYXJ0anMtMic7XHJcbmltcG9ydCB7IEljb25CdXR0b24gfSBmcm9tIFwiLi4vLi4vLi4vaWNvbi1idXR0b25cIjtcclxuaW1wb3J0IHsgU3R5bGVkTW9kYWwgfSBmcm9tIFwiLi4vLi4vLi4vbW9kYWxzXCI7XHJcbmltcG9ydCB7IFRpdGxlTWVkaXVtIH0gZnJvbSBcIi4uLy4uLy4uL1R5cG9ncmFwaHlTdHlsZVwiO1xyXG5pbXBvcnQgeyBDT0xPUlMgfSBmcm9tIFwiLi4vLi4vLi4vLi4vY29uc3RhbnRzL1RoZW1lXCI7XHJcbmltcG9ydCB7IHRydW5jYXRlVmFsdWVGb3JJbmRpYW5TdG9yZSwgdHJ1bmNhdGVWYWx1ZUZvckludGVybmF0aW9uYWxTdG9yZSwgfSBmcm9tICcuLi91dGlscy9jYWxjUGVyY2VudGFnZSc7XHJcbmltcG9ydCB7IFZlcnRpY2FsR3JhcGggfSBmcm9tICcuLi9WZXJ0aWNhbEJhckdyYXBoL1ZlcnRpY2FsR3JhcGgnO1xyXG5pbXBvcnQgeyBQaWVDaGFydCB9IGZyb20gJy4vUGllQ2hhcnQnO1xyXG5DaGFydEpTLnJlZ2lzdGVyKEFyY0VsZW1lbnQsIExlZ2VuZCk7XHJcbmNvbnN0IGNvbnZlcnRUb0JhckNoYXJ0RGF0YSA9IChkYXRhLCB4QXhpc1RpdGxlLCB5QXhpc1RpdGxlKSA9PiB7XHJcbiAgICBjb25zdCB4QXhpc0RhdGEgPSBkYXRhLm1hcCgoaXRlbSkgPT4gaXRlbS5uYW1lKTtcclxuICAgIGNvbnN0IHlBeGlzRGF0YSA9IGRhdGEubWFwKChpdGVtKSA9PiBpdGVtLmNvdW50KTtcclxuICAgIGNvbnN0IHhBeGlzID0ge1xyXG4gICAgICAgIGRhdGE6IHhBeGlzRGF0YSxcclxuICAgICAgICB0aXRsZTogeEF4aXNUaXRsZSAhPT0gbnVsbCAmJiB4QXhpc1RpdGxlICE9PSB2b2lkIDAgPyB4QXhpc1RpdGxlIDogJycsXHJcbiAgICB9O1xyXG4gICAgY29uc3QgeUF4aXMgPSB7XHJcbiAgICAgICAgZGF0YTogeUF4aXNEYXRhLFxyXG4gICAgICAgIHRpdGxlOiB5QXhpc1RpdGxlICE9PSBudWxsICYmIHlBeGlzVGl0bGUgIT09IHZvaWQgMCA/IHlBeGlzVGl0bGUgOiAnJyxcclxuICAgIH07XHJcbiAgICBjb25zdCBiYXJDaGFydERhdGEgPSB7XHJcbiAgICAgICAgeEF4aXMsXHJcbiAgICAgICAgeUF4aXMsXHJcbiAgICAgICAgYmFyQ29sb3JSR0JBOiB7IHI6IDIxMCwgZzogMTc0LCBiOiAyNTUsIGE6IDEgfSxcclxuICAgIH07XHJcbiAgICByZXR1cm4gYmFyQ2hhcnREYXRhO1xyXG59O1xyXG5jb25zdCBvcHRpb25zID0gKGN1cnJlbmN5UHJvcHMpID0+ICh7XHJcbiAgICBwbHVnaW5zOiB7XHJcbiAgICAgICAgbGVnZW5kOiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZhbHNlLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgdG9vbHRpcDoge1xyXG4gICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxyXG4gICAgICAgICAgICBjYWxsYmFja3M6IHtcclxuICAgICAgICAgICAgICAgIGxhYmVsOiAodG9vbHRpcEl0ZW0pID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB2YXIgX2E7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKCF0b29sdGlwSXRlbS5sYWJlbCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gYCAwJWA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHRvdGFsID0gdG9vbHRpcEl0ZW0uZGF0YXNldC5kYXRhLnJlZHVjZSgoYWNjLCBjdXIpID0+IGFjYyArIGN1ciwgMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcGVyY2VudGFnZSA9IHBhcnNlRmxvYXQoKCh0b29sdGlwSXRlbS5yYXcgLyB0b3RhbCkgKiAxMDApLnRvRml4ZWQoMSkpO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgbGFiZWwsIHJhdyB9ID0gdG9vbHRpcEl0ZW07XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3ltYm9sID0gKF9hID0gY3VycmVuY3lQcm9wcyA9PT0gbnVsbCB8fCBjdXJyZW5jeVByb3BzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjdXJyZW5jeVByb3BzLnN5bWJvbCkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaXNJbnRsID0gY3VycmVuY3lQcm9wcyA9PT0gbnVsbCB8fCBjdXJyZW5jeVByb3BzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjdXJyZW5jeVByb3BzLmlzSW50ZXJuYXRpb25hbFN0b3JlO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gaXNJbnRsICE9PSB1bmRlZmluZWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgPyBpc0ludGxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gdHJ1bmNhdGVWYWx1ZUZvckludGVybmF0aW9uYWxTdG9yZShyYXcpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IHRydW5jYXRlVmFsdWVGb3JJbmRpYW5TdG9yZShyYXcpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDogcmF3O1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHRvdGFsVmFsdWUgPSBpc0ludGwgIT09IHVuZGVmaW5lZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA/IGlzSW50bFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyB0cnVuY2F0ZVZhbHVlRm9ySW50ZXJuYXRpb25hbFN0b3JlKHRvdGFsKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiB0cnVuY2F0ZVZhbHVlRm9ySW5kaWFuU3RvcmUodG90YWwpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDogdG90YWw7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYCAke2xhYmVsfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGAgJHtzeW1ib2x9JHt2YWx1ZX0gKCR7cGVyY2VudGFnZX0lIG9mICR7c3ltYm9sfSR7dG90YWxWYWx1ZX0pYCxcclxuICAgICAgICAgICAgICAgICAgICBdO1xyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgfSxcclxufSk7XHJcbmNvbnN0IEdSQVBIX0NPTE9SUyA9IFtcclxuICAgICcjNUUwN0JCJyxcclxuICAgICcjOUU3N0VEJyxcclxuICAgICcjRDJBRUZGJyxcclxuICAgICcjQ0RFMUZGJyxcclxuICAgICcjOTJBRkZBJyxcclxuICAgICcjMzkzNUUxJyxcclxuXTtcclxuY29uc3QgQ2FydFN0eWxlZCA9IHN0eWxlZC5kaXYgYFxuXHRiYWNrZ3JvdW5kOiAkeyhwcm9wcykgPT4gQ09MT1JTLnN1cmZhY2Uuc3RhbmRhcmR9O1xuXHRib3JkZXI6IDFweCBzb2xpZCAkeyhwcm9wcykgPT4gQ09MT1JTLnN0cm9rZS5wcmltYXJ5fTtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IENhcmQgPSAocHJvcHMpID0+IHtcclxuICAgIHJldHVybiBfanN4KENhcnRTdHlsZWQsIE9iamVjdC5hc3NpZ24oeyBzdHlsZTogeyBwYWRkaW5nOiAyNCB9IH0sIHsgY2hpbGRyZW46IHByb3BzLmNoaWxkcmVuIH0pKTtcclxufTtcclxuZXhwb3J0IGNvbnN0IFBpZUNoYXJ0QW5hbHl0aWNzID0gKHsgdGl0bGUsIHNsaWNlcywgc2l6ZSwgYWxsb3dDaGFydFBvcHVwLCBzaG93Q29udmVydFRvQmFyQ2hhcnQsIHRydW5jYXRlU2xpY2VzLCBiYXJDaGFydFhBeGlzVGl0bGUsIGJhckNoYXJ0WUF4aXNUaXRsZSwgaGlkZVRpdGxlID0gZmFsc2UsIGN1cnJlbmN5UHJvcHMsIH0pID0+IHtcclxuICAgIGNvbnN0IFtzaG93UG9wdXAsIHNldFNob3dQb3B1cF0gPSB1c2VTdGF0ZShmYWxzZSk7XHJcbiAgICBjb25zdCBbc2hvd0JhckNoYXJ0LCBzZXRTaG93QmFyQ2hhcnRdID0gdXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgW3NsaWNlc1dpdGhDb2xvciwgc2V0U2xpY2VzV2l0aENvbG9yXSA9IHVzZVN0YXRlKFtdKTtcclxuICAgIGNvbnN0IFtkYXRhLCBzZXREYXRhXSA9IHVzZVN0YXRlKCk7XHJcbiAgICBjb25zdCBbdHJ1bmNhdGVkRGF0YSwgc2V0VHJ1bmNhdGVkRGF0YV0gPSB1c2VTdGF0ZSgpO1xyXG4gICAgY29uc3QgW3RydW5jYXRlZFNsaWNlc1dpdGhDb2xvciwgc2V0VHJ1bmNhdGVkU2xpY2VzV2l0aENvbG9yXSA9IHVzZVN0YXRlKFtdKTtcclxuICAgIGNvbnN0IFtiYXJDaGFydERhdGEsIHNldEJhckNoYXJ0RGF0YV0gPSB1c2VTdGF0ZShudWxsKTtcclxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgdG90YWxTdW0gPSBzbGljZXMucmVkdWNlKChzdW0sIHNsaWNlKSA9PiBzdW0gKyBzbGljZS5jb3VudCwgMCk7XHJcbiAgICAgICAgbGV0IHVwZGF0ZWRTbGljZXNXaXRoQ29sb3IgPSBbXTtcclxuICAgICAgICB1cGRhdGVkU2xpY2VzV2l0aENvbG9yID0gT2JqZWN0LmtleXMoc2xpY2VzKS5tYXAoKGtleSwgaW5kZXgpID0+IChPYmplY3QuYXNzaWduKHsgY29sb3I6IEdSQVBIX0NPTE9SU1tpbmRleCAlIEdSQVBIX0NPTE9SUy5sZW5ndGhdIH0sIHNsaWNlc1trZXldKSkpO1xyXG4gICAgICAgIHNldFNsaWNlc1dpdGhDb2xvcihbLi4udXBkYXRlZFNsaWNlc1dpdGhDb2xvcl0pO1xyXG4gICAgICAgIGlmICh0b3RhbFN1bSA9PT0gMCkge1xyXG4gICAgICAgICAgICBjb25zdCBkYXRhU2V0ID0ge1xyXG4gICAgICAgICAgICAgICAgZGF0YXNldHM6IFtcclxuICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGE6IFsxMDBdLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IFsnI0YwRjBGMCddLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXJXaWR0aDogMCxcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgICAgIGxhYmVsczogW10sXHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgIHNldERhdGEoZGF0YVNldCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICBjb25zdCBkYXRhU2V0ID0ge1xyXG4gICAgICAgICAgICAgICAgbGFiZWxzOiBzbGljZXMubWFwKChzbGljZSkgPT4gU3RyaW5nVXRpbHMuY2FwaXRhbGl6ZUVhY2hXb3JkKHNsaWNlLm5hbWUpKSxcclxuICAgICAgICAgICAgICAgIGRhdGFzZXRzOiBbXHJcbiAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhOiBzbGljZXMubWFwKChzbGljZSkgPT4gc2xpY2UuY291bnQpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IHNsaWNlcy5tYXAoKHNsaWNlLCBpbmRleCkgPT4geyB2YXIgX2E7IHJldHVybiAoX2EgPSBzbGljZS5jb2xvcikgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogR1JBUEhfQ09MT1JTW2luZGV4ICUgR1JBUEhfQ09MT1JTLmxlbmd0aF07IH0pLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXJDb2xvcjogWyd3aGl0ZScsICd3aGl0ZScsICd3aGl0ZScsICd3aGl0ZScsICd3aGl0ZScsICd3aGl0ZSddLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXJXaWR0aDogNCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiA4LFxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICBzZXREYXRhKGRhdGFTZXQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodHJ1bmNhdGVTbGljZXMgJiYgc2xpY2VzLmxlbmd0aCA+IHRydW5jYXRlU2xpY2VzKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHRydW5jYXRlZFNsaWNlcyA9IHNsaWNlcy5zbGljZSgwLCB0cnVuY2F0ZVNsaWNlcyk7XHJcbiAgICAgICAgICAgIGNvbnN0IG90aGVyU2xpY2VzID0gc2xpY2VzLnNsaWNlKHRydW5jYXRlU2xpY2VzKTtcclxuICAgICAgICAgICAgY29uc3Qgb3RoZXJDb3VudCA9IG90aGVyU2xpY2VzLnJlZHVjZSgoc3VtLCBzbGljZSkgPT4gc3VtICsgc2xpY2UuY291bnQsIDApO1xyXG4gICAgICAgICAgICB0cnVuY2F0ZWRTbGljZXMucHVzaCh7IG5hbWU6ICdPdGhlcicsIGNvdW50OiBvdGhlckNvdW50IH0pO1xyXG4gICAgICAgICAgICBjb25zdCB0cnVuY2F0ZWREYXRhU2V0ID0ge1xyXG4gICAgICAgICAgICAgICAgbGFiZWxzOiB0cnVuY2F0ZWRTbGljZXMubWFwKChzbGljZSkgPT4gU3RyaW5nVXRpbHMuY2FwaXRhbGl6ZShzbGljZS5uYW1lKSksXHJcbiAgICAgICAgICAgICAgICBkYXRhc2V0czogW1xyXG4gICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YTogdHJ1bmNhdGVkU2xpY2VzLm1hcCgoc2xpY2UpID0+IHNsaWNlLmNvdW50KSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiB0cnVuY2F0ZWRTbGljZXMubWFwKChzbGljZSwgaW5kZXgpID0+IHsgdmFyIF9hOyByZXR1cm4gKF9hID0gc2xpY2UuY29sb3IpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IEdSQVBIX0NPTE9SU1tpbmRleCAlIEdSQVBIX0NPTE9SUy5sZW5ndGhdOyB9KSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyQ29sb3I6IFsnd2hpdGUnLCAnd2hpdGUnLCAnd2hpdGUnLCAnd2hpdGUnLCAnd2hpdGUnLCAnd2hpdGUnXSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyV2lkdGg6IDQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlclJhZGl1czogOCxcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgc2V0VHJ1bmNhdGVkRGF0YSh0cnVuY2F0ZWREYXRhU2V0KTtcclxuICAgICAgICAgICAgY29uc3QgdHJ1bmNhdGVkU2xpY2VzV2l0aENvbG9yID0gdHJ1bmNhdGVkU2xpY2VzLm1hcCgoc2xpY2UsIGluZGV4KSA9PiAoT2JqZWN0LmFzc2lnbih7IGNvbG9yOiBHUkFQSF9DT0xPUlNbaW5kZXggJSBHUkFQSF9DT0xPUlMubGVuZ3RoXSB9LCBzbGljZSkpKTtcclxuICAgICAgICAgICAgc2V0VHJ1bmNhdGVkU2xpY2VzV2l0aENvbG9yKHRydW5jYXRlZFNsaWNlc1dpdGhDb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChzaG93Q29udmVydFRvQmFyQ2hhcnQpIHtcclxuICAgICAgICAgICAgc2V0QmFyQ2hhcnREYXRhKGNvbnZlcnRUb0JhckNoYXJ0RGF0YShzbGljZXMsIGJhckNoYXJ0WEF4aXNUaXRsZSwgYmFyQ2hhcnRZQXhpc1RpdGxlKSk7XHJcbiAgICAgICAgfVxyXG4gICAgfSwgW3NsaWNlcywgdHJ1bmNhdGVTbGljZXNdKTtcclxuICAgIGlmICghZGF0YSkge1xyXG4gICAgICAgIHJldHVybiBfanN4KF9GcmFnbWVudCwge30pO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIChfanN4cyhfRnJhZ21lbnQsIHsgY2hpbGRyZW46IFtfanN4cyhcImRpdlwiLCBPYmplY3QuYXNzaWduKHsgc3R5bGU6IHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ6IGhpZGVUaXRsZSB8fCAodGl0bGUgPT09IG51bGwgfHwgdGl0bGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHRpdGxlLmxlbmd0aCkgPT09IDAgPyAnZmxleC1lbmQnIDogJ3NwYWNlLWJldHdlZW4nLFxyXG4gICAgICAgICAgICAgICAgfSB9LCB7IGNoaWxkcmVuOiBbIWhpZGVUaXRsZSAmJiB0aXRsZSAmJiAoX2pzeChUaXRsZU1lZGl1bSwgT2JqZWN0LmFzc2lnbih7IHN0eWxlOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW5Cb3R0b206IDE2LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9IH0sIHsgY2hpbGRyZW46IHRpdGxlIH0pKSksIF9qc3hzKFwiZGl2XCIsIHsgY2hpbGRyZW46IFtzaG93Q29udmVydFRvQmFyQ2hhcnQgJiYgKF9qc3goSWNvbkJ1dHRvbiwgeyBJY29uOiBCYXJDaGFydEljb24sIG9uQ2xpY2s6ICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0U2hvd0JhckNoYXJ0KHRydWUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gfSkpLCBhbGxvd0NoYXJ0UG9wdXAgJiYgKF9qc3goSWNvbkJ1dHRvbiwgeyBJY29uOiBNYXhpbWl6ZUljb24sIG9uQ2xpY2s6ICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0U2hvd1BvcHVwKHRydWUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gfSkpXSB9KV0gfSkpLCBfanN4cyhcImRpdlwiLCBPYmplY3QuYXNzaWduKHsgY2xhc3NOYW1lOiAncm93JyB9LCB7IGNoaWxkcmVuOiBbX2pzeChcImRpdlwiLCBPYmplY3QuYXNzaWduKHsgY2xhc3NOYW1lOiAnY29sLTYgJywgc3R5bGU6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9IH0sIHsgY2hpbGRyZW46IF9qc3goXCJkaXZcIiwgT2JqZWN0LmFzc2lnbih7IHN0eWxlOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHNpemUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBzaXplLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSB9LCB7IGNoaWxkcmVuOiBfanN4KERvdWdobnV0LCB7IGRhdGE6ICh0cnVuY2F0ZVNsaWNlcyA/IHRydW5jYXRlZERhdGEgOiBkYXRhKSwgb3B0aW9uczogT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBvcHRpb25zKGN1cnJlbmN5UHJvcHMpKSwgeyBtYWludGFpbkFzcGVjdFJhdGlvOiBzaXplID8gZmFsc2UgOiB0cnVlIH0pIH0pIH0pKSB9KSksIF9qc3goXCJkaXZcIiwgT2JqZWN0LmFzc2lnbih7IGNsYXNzTmFtZTogJ2NvbC02Jywgc3R5bGU6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmdMZWZ0OiA0OCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdmbGV4LXN0YXJ0JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSB9LCB7IGNoaWxkcmVuOiBfanN4KFBpZUNoYXJ0LCB7IHNsaWNlczogdHJ1bmNhdGVTbGljZXMgPyB0cnVuY2F0ZWRTbGljZXNXaXRoQ29sb3IgOiBzbGljZXNXaXRoQ29sb3IsIHNpemU6IHNpemUgfSkgfSkpXSB9KSksIHNob3dQb3B1cCAmJiAoX2pzeChTdHlsZWRNb2RhbCwgT2JqZWN0LmFzc2lnbih7IG9wZW46IHNob3dQb3B1cCwgb25DbG9zZTogKCkgPT4gc2V0U2hvd1BvcHVwKGZhbHNlKSwgY2xvc2VPbk91dHNpZGVDbGljazogdHJ1ZSwgaGVhZGluZ1RpdGxlOiB0aXRsZSwgd2lkdGg6IFwiNzUlXCIgfSwgeyBjaGlsZHJlbjogX2pzeHMoXCJkaXZcIiwgT2JqZWN0LmFzc2lnbih7IHN0eWxlOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDI0LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogJzgwdmgnLFxyXG4gICAgICAgICAgICAgICAgICAgIH0gfSwgeyBjaGlsZHJlbjogW19qc3goXCJkaXZcIiwgT2JqZWN0LmFzc2lnbih7IHN0eWxlOiB7IHdpZHRoOiAnNTUlJywgbWFyZ2luTGVmdDogJzQlJyB9IH0sIHsgY2hpbGRyZW46IF9qc3goXCJkaXZcIiwgT2JqZWN0LmFzc2lnbih7IHN0eWxlOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5Q29udGVudDogJ2NlbnRlcicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSB9LCB7IGNoaWxkcmVuOiBfanN4KERvdWdobnV0LCB7IGRhdGE6IGRhdGEsIG9wdGlvbnM6IE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgb3B0aW9ucyhjdXJyZW5jeVByb3BzKSksIHsgbWFpbnRhaW5Bc3BlY3RSYXRpbzogc2l6ZSA/IGZhbHNlIDogdHJ1ZSB9KSB9KSB9KSkgfSkpLCBfanN4KFwiZGl2XCIsIE9iamVjdC5hc3NpZ24oeyBzdHlsZToge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAnMzAlJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvd1k6ICdhdXRvJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gfSwgeyBjaGlsZHJlbjogX2pzeChQaWVDaGFydCwgeyBzbGljZXM6IHNsaWNlc1dpdGhDb2xvciB9KSB9KSldIH0pKSB9KSkpLCBzaG93QmFyQ2hhcnQgJiYgYmFyQ2hhcnREYXRhICYmIChfanN4KFN0eWxlZE1vZGFsLCBPYmplY3QuYXNzaWduKHsgb3Blbjogc2hvd0JhckNoYXJ0LCBvbkNsb3NlOiAoKSA9PiBzZXRTaG93QmFyQ2hhcnQoZmFsc2UpLCBjbG9zZU9uT3V0c2lkZUNsaWNrOiB0cnVlLCBoZWFkaW5nVGl0bGU6IHRpdGxlLCB3aWR0aDogXCI4NSVcIiB9LCB7IGNoaWxkcmVuOiBfanN4KFwiZGl2XCIsIE9iamVjdC5hc3NpZ24oeyBzdHlsZToge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAnMjRweCAwJyxcclxuICAgICAgICAgICAgICAgICAgICB9IH0sIHsgY2hpbGRyZW46IF9qc3goVmVydGljYWxHcmFwaCwgeyB4QXhpczogYmFyQ2hhcnREYXRhLnhBeGlzLCB5QXhpczogYmFyQ2hhcnREYXRhLnlBeGlzLCBiYXJDb2xvclJHQkE6IGJhckNoYXJ0RGF0YSA9PT0gbnVsbCB8fCBiYXJDaGFydERhdGEgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGJhckNoYXJ0RGF0YS5iYXJDb2xvclJHQkEgfSkgfSkpIH0pKSldIH0pKTtcclxufTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9UGllQ2hhcnRBbmFseXRpY3MuanMubWFwIl19 */")),x=g=>I(B,Object.assign({style:{padding:24}},{children:g.children})),Z=g=>{let{title:i,slices:d,size:p,allowChartPopup:b,showConvertToBarChart:G,truncateSlices:y,barChartXAxisTitle:B,barChartYAxisTitle:x,hideTitle:Z=!1,currencyProps:j}=g;const[H,N]=c(!1),[W,Y]=c(!1),[R,J]=c([]),[V,F]=c(),[S,v]=c(),[w,k]=c([]),[z,Q]=c(null);return l((()=>{const g=d.reduce(((g,I)=>g+I.count),0);let I=[];if(I=Object.keys(d).map(((g,I)=>Object.assign({color:X[I%X.length]},d[g]))),J([...I]),0===g){F({datasets:[{data:[100],backgroundColor:["#F0F0F0"],borderWidth:0}],labels:[]})}else{const g={labels:d.map((g=>o.capitalizeEachWord(g.name))),datasets:[{data:d.map((g=>g.count)),backgroundColor:d.map(((g,I)=>{var C;return null!==(C=g.color)&&void 0!==C?C:X[I%X.length]})),borderColor:["white","white","white","white","white","white"],borderWidth:4,borderRadius:8}]};F(g)}if(y&&d.length>y){const g=d.slice(0,y),I=d.slice(y).reduce(((g,I)=>g+I.count),0);g.push({name:"Other",count:I});const C={labels:g.map((g=>o.capitalize(g.name))),datasets:[{data:g.map((g=>g.count)),backgroundColor:g.map(((g,I)=>{var C;return null!==(C=g.color)&&void 0!==C?C:X[I%X.length]})),borderColor:["white","white","white","white","white","white"],borderWidth:4,borderRadius:8}]};v(C);const A=g.map(((g,I)=>Object.assign({color:X[I%X.length]},g)));k(A)}G&&Q(((g,I,C)=>({xAxis:{data:g.map((g=>g.name)),title:null!=I?I:""},yAxis:{data:g.map((g=>g.count)),title:null!=C?C:""},barColorRGBA:{r:210,g:174,b:255,a:1}}))(d,B,x))}),[d,y]),V?A(C,{children:[A("div",Object.assign({style:{display:"flex",justifyContent:Z||0===(null==i?void 0:i.length)?"flex-end":"space-between"}},{children:[!Z&&i&&I(s,Object.assign({style:{marginBottom:16}},{children:i})),A("div",{children:[G&&I(r,{Icon:t,onClick:()=>{Y(!0)}}),b&&I(r,{Icon:e,onClick:()=>{N(!0)}})]})]})),A("div",Object.assign({className:"row"},{children:[I("div",Object.assign({className:"col-6 ",style:{display:"flex",alignItems:"center",justifyContent:"center"}},{children:I("div",Object.assign({style:{width:p,height:p}},{children:I(u,{data:y?S:V,options:Object.assign(Object.assign({},h(j)),{maintainAspectRatio:!p})})}))})),I("div",Object.assign({className:"col-6",style:{paddingLeft:48,display:"flex",flexDirection:"column",justifyContent:"flex-start"}},{children:I(n,{slices:y?w:R,size:p})}))]})),H&&I(a,Object.assign({open:H,onClose:()=>N(!1),closeOnOutsideClick:!0,headingTitle:i,width:"75%"},{children:A("div",Object.assign({style:{padding:24,display:"flex",justifyContent:"space-between",height:"80vh"}},{children:[I("div",Object.assign({style:{width:"55%",marginLeft:"4%"}},{children:I("div",Object.assign({style:{width:"100%",height:"100%",display:"flex",alignItems:"center",justifyContent:"center"}},{children:I(u,{data:V,options:Object.assign(Object.assign({},h(j)),{maintainAspectRatio:!p})})}))})),I("div",Object.assign({style:{width:"30%",height:"100%",overflowY:"auto"}},{children:I(n,{slices:R})}))]}))})),W&&z&&I(a,Object.assign({open:W,onClose:()=>Y(!1),closeOnOutsideClick:!0,headingTitle:i,width:"85%"},{children:I("div",Object.assign({style:{padding:"24px 0"}},{children:I(m,{xAxis:z.xAxis,yAxis:z.yAxis,barColorRGBA:null==z?void 0:z.barColorRGBA})}))}))]}):I(C,{})};export{x as Card,Z as PieChartAnalytics};
|
|
1
|
+
import g from"@emotion/styled/base";import{jsx as I,Fragment as C,jsxs as A}from"react/jsx-runtime";import t from"../../../../assets/icons/ChartBar.svg.js";import e from"../../../../assets/icons/maximize.svg.js";import"@amplitude/analytics-browser";import"../../../../amplitude/model.js";import o from"../../../../utils/StringUtils.js";import{COLORS as i}from"../../../../constants/Theme.js";import"../../../../constants/zindex.js";import{useState as c,useEffect as l}from"react";import"../../../checkBox/CheckBox.styled.js";import{TitleMedium as s}from"../../../TypographyStyle.js";import"../../../list-item/ListItem.js";import"../../../pagination/Pagination.js";import"../../../radioButton/RadioButton.styled.js";import"react-dom";import"react-toastify";import"../../../button/Button.js";import"../../../toaster/Toaster.styled.js";import"../../../tooltips/Tooltip.js";import"../../../spinner/Spinner.js";import"../../../stepper/Stepper.styled.js";import"../../../tag/Tag.js";import{IconButton as r}from"../../../icon-button/IconButton.js";import"../../../template-preview/TemplatePreview.js";import"../../../template-preview/WhatsApp/WhatsAppLikePreview.js";import"../../../template-preview/WhatsApp/WhatsAppLikePreviewV2.js";import"../../../curtain/CurtainHelper.js";import"../../../variable-picker-v3/model.js";import"../../../template-preview/models/TemplateMeta.js";import"../../../template-preview/models/WhatsAppTemplate.js";import"../../../template-preview/models/Channels.js";import"lodash";import{StyledModal as a}from"../../../modals/styledModal.js";import"../../../template-preview/models/RCSTemplate.js";import"../../../template-context-mapper/context/templateModalContext.js";import"../../../template-context-mapper/modalElements/Footer.js";import"../../../template-context-mapper/styles/TemplateAnalyticsStyles.js";import"../../../template-context-mapper/utils/TemplateConstants.js";import"../../../shimmer/ShimmerComponent/ShimmerStyled.js";import"../../../template-context-mapper/modalElements/Body.js";import"../../../template-context-mapper/modalElements/Header.js";import"../../../../_virtual/_tslib.js";import"../../../zeroState/ZeroState.js";import"../../../dropdown/OpenedDropdown/components/description/Description.styled.js";import"../../../dropdown/OpenedDropdown/components/menu/FreeFormMenu.styled.js";import"../../../dropdown/OpenedDropdown/components/menu/MenuItem.js";import"../../../dropdown/OpenedDropdown/components/menu/MenuList.styled.js";import"../../../dropdown/OpenedDropdown/components/multiSelect/MultiSelectDropdownBottomBar.styled.js";import"../../../dropdown/OpenedDropdown/components/OpennedDropdown.styled.js";import"../../../input/Input.js";import"react-bootstrap";import"../../../floating-action-button/FloatingActionButton.styles.js";import"../../../image-compress/ImageCompress.js";import"../../../progress-bar/ProgressBarComponent.js";import"../../../progress-bar-v2/ProgressBarV2.js";import"../../../QueryBuilder/QueryBuilder.js";import"../../../QueryBuilder/components/QueryBuilderNode/Base/BaseQueryBuilderNode.js";import"../../../QueryBuilder/constants/connectorPosition.js";import"../../../QueryBuilder/constants/connector.js";import"../../../QueryBuilder/types/QueryBuilder.type.js";import"../../../dropdown/Dropdown.js";import"../../../QueryBuilder/components/InputLoader.js";import"../../../QueryBuilder/components/Connectors/Components/EmojiPicker.js";import"react-chips";import"../../../input/ChipInput.styled.js";import"../../../QueryBuilder/components/Connectors/Components/FrequencyIntegerPositiveSingle.js";import"../../../QueryBuilder/components/Connectors/Components/IgPicker.js";import"../../../QueryBuilder/components/Connectors/Components/InTheLast.js";import"../../../QueryBuilder/components/Connectors/Components/InTwoLast.js";import"../../../datePicker/DatePickerWrapper.js";import"../../../QueryBuilder/components/Connectors/Connector.styled.js";import"../../../QueryBuilder/components/QueryBuilderNode/Property/PropertyNode.styled.js";import"../../../QueryBuilder/components/QueryBuilderNode/Property/PropertyNodeUIWrapper.styled.js";import"../../../QueryBuilder/redux/queryBuilder.reducer.js";import"../../../QueryBuilder/redux/queryBuilderCache.reducer.js";import"../../../QueryBuilder/types/QueryBuilderOperator.type.js";import"../../../dropdown/DropdownPopover/index.js";import"../../../dropdown/ChipDropdown.js";import"../../../dropdown/MenuItem/MenuItem.js";import"../../../analytics-card/AnalyticsCard.styled.js";import"../../CommonStyles.js";import"react-calendar";import"../../../datePicker/DatePicker.styled.js";import"../../AnalyticsMetric.js";import"../../../../utils/DateUtils.js";import{truncateValueForInternationalStore as d,truncateValueForIndianStore as p}from"../utils/calcPercentage.js";import"../LineChart/LineChart.js";import"../linearChipGroupedChart/LinearChipGroupedChart.styled.js";import{PieChart as n}from"./PieChart.js";import"../HorizontalBarGraph/HorizontalGraph.js";import"../StackedBarChart/StackedBarChart.js";import"../StackedBarChart/StackedBarDistributionChart.js";import"../StackedBarChart/StackedBarDistributionChart.model.js";import{VerticalGraph as m}from"../VerticalBarGraph/VerticalGraph.js";import"../VerticalBarGraph/FunnelVerticalBarGraph.js";import"../heatmap/HeatMap.js";import"../heatmap/HeatMapVertical.js";import"../VerticalBarAndLinearGraph/VerticalBarAndLinearGraph.js";import"../../../avatar/Avatar.js";import"../../../avatar/AvatarHelper.js";import"../../../alerts/Alert.styled.js";import"../../../alerts/AlertHelper.js";import"../../../thumbnail/Thumbnail.js";import"../../../curtain/Curtain.styled.js";import"../../../switch/Switch.js";import"../../../plans/SubscriptionPlanStyled.js";import"../../../plans/SubscriptionPlanSelector.js";import"../../../plans/SubscriptionPlansCollected.js";import"../../../tabs/Tabs.js";import"../../../TablePagination/TablePagination.styled.js";import"../../../TablePagination/TablePaginationCard.js";import"../../../states/StateComponent.js";import"../../../WhatsAppTextEditor/WhatsAppTextEditor.js";import"../../../WhatsAppTextEditor/WhatsAppTextEditorHeader.js";import"../../../card-selection-modal/CardSelectionModal.styled.js";import"react-image-crop";import"../../../buttonGroup/ButtonGroupStyle.js";import"../../../accordion/Accordion.style.js";import"../../../accordion/AccordionArrow.js";import"../../../file-uploader/FileUploaderStyle.js";import"../../../colourInput/ColourInput.styled.js";import"../../../bik-layout/CommonStyles.js";import"../../../navigation-hyperlink/NavigationHyperlink.js";import"../../../bik-layout/SidebarStyles.js";import"date-fns";import"react-popper";import"../../../dropdown/Common.styled.js";import"../../../custom-date-time/CustomDateTime.styled.js";import"../../../../node_modules/lodash.debounce/index.js";import"../../../product-picker/ProductPicker.styled.js";import"../../../discount-modal/type.js";import"../../../product-picker-v2/modal.js";import"../../../modals/modal.styled.js";import"../../../variable-picker-v3/NoResult.js";import"../../../variable-picker-v3/styles.js";import"../../../discount-modal/DiscountModal.styled.js";import"../../../discount-modal/DynamicCoupon/DynamicCoupon.js";import"../../../country-code-picker/CountryCodePicker.styled.js";import"../../../carousel/carousel.js";import"../../../carousel-secondary/CarouselSecondary.js";import"../../../access-token-troubleshoot-dialog/AccessTokenTroubleshootDialog.styles.js";import"../../../radioList/RadioList.styled.js";import"../../../checkList/CheckList.styled.js";import"../../../postPicker/postPicker.js";import"../../../dropdown-button/DropdownButton.style.js";import"../../../side-modal/SideModal.style.js";import"../../../add-variableV2/AddVariableV2.styled.js";import"../../../SearchFilter/types/SearchFilter.type.js";import"../../../SearchFilter/components/DatePickerButton.js";import"../../../SearchFilter/components/DateRangeOnlyButton.js";import"../../../input-with-vars/InputWithVariables.js";import"../../../star-rating/StarRating.js";import"../../../dashboard-review-popup/components/FiveStar.styled.js";import"../../../dashboard-review-popup/components/Form.styled.js";import"../../../dashboard-review-popup/components/ZeroState.js";import"../../../dashboard-review-popup/DashboardReviewPopUp.styled.js";import"../../../testimonial-card/TestimonialCard.style.js";import"../../../slider/slider.js";import"react-slick";import"../../../carousel-preview/CarouselPreview.style.js";import"../../../template-preview/RCS/RCSPreview.styled.js";import"../../../card-selector/CardSelector.styled.js";import"../../../action-button/ActionButton.styled.js";import"../../../floating-input-dropdown/FloatingInputDropdown.js";import"../../../dropdown/MultilevelDropdownPopover/index.js";import"../../../multi-level-dropdown/MultiLevelDropdown.styled.js";import"../../../data-source-panel/DataSourceInfoFooter.js";import"../../../data-source-panel/DataSourcePanel.style.js";import"../../../data-source-panel/model.js";import"../../../unsatisfactory-response-list/UnsatisfactoryCountIntentWiseModal.style.js";import"../../../unsatisfactory-response-list/UnsatisfactoryResponseList.style.js";import"../../../text-picker/TextPickerModal.js";import{Chart as b,ArcElement as G,Legend as y}from"chart.js";import{Doughnut as u}from"react-chartjs-2";b.register(G,y);const h=g=>({plugins:{legend:{display:!1},tooltip:{enabled:!0,callbacks:{label:I=>{var C;if(!I.label)return" 0%";const A=I.dataset.data.reduce(((g,I)=>g+I),0),t=parseFloat((I.raw/A*100).toFixed(1)),{label:e,raw:o}=I,i=null!==(C=null==g?void 0:g.symbol)&&void 0!==C?C:"",c=null==g?void 0:g.isInternationalStore;return[` ${e}`,` ${i}${void 0!==c?c?d(o):p(o):o} (${t}% of ${i}${void 0!==c?c?d(A):p(A):A})`]}}}}}),X=["#5E07BB","#9E77ED","#D2AEFF","#CDE1FF","#92AFFA","#3935E1"],B=g("div","production"===process.env.NODE_ENV?{target:"elaov7f0"}:{target:"elaov7f0",label:"CartStyled"})("background:",(g=>i.surface.standard),";border:1px solid ",(g=>i.stroke.primary),";border-radius:4px;"+("production"===process.env.NODE_ENV?"":"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIlBpZUNoYXJ0QW5hbHl0aWNzLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUErRThCIiwiZmlsZSI6IlBpZUNoYXJ0QW5hbHl0aWNzLnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpzeCBhcyBfanN4LCBGcmFnbWVudCBhcyBfRnJhZ21lbnQsIGpzeHMgYXMgX2pzeHMgfSBmcm9tIFwicmVhY3QvanN4LXJ1bnRpbWVcIjtcclxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xyXG5pbXBvcnQgQmFyQ2hhcnRJY29uIGZyb20gJ0BzcmMvYXNzZXRzL2ljb25zL0NoYXJ0QmFyLnN2Zyc7XHJcbmltcG9ydCBNYXhpbWl6ZUljb24gZnJvbSAnQHNyYy9hc3NldHMvaWNvbnMvbWF4aW1pemUuc3ZnJztcclxuaW1wb3J0IHsgU3RyaW5nVXRpbHMgfSBmcm9tIFwiLi4vLi4vLi4vLi4vaW5kZXhcIjtcclxuaW1wb3J0IHsgQXJjRWxlbWVudCwgQ2hhcnQgYXMgQ2hhcnRKUywgTGVnZW5kIH0gZnJvbSAnY2hhcnQuanMnO1xyXG5pbXBvcnQgeyB1c2VFZmZlY3QsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xyXG5pbXBvcnQgeyBEb3VnaG51dCB9IGZyb20gJ3JlYWN0LWNoYXJ0anMtMic7XHJcbmltcG9ydCB7IEljb25CdXR0b24gfSBmcm9tIFwiLi4vLi4vLi4vaWNvbi1idXR0b25cIjtcclxuaW1wb3J0IHsgU3R5bGVkTW9kYWwgfSBmcm9tIFwiLi4vLi4vLi4vbW9kYWxzXCI7XHJcbmltcG9ydCB7IFRpdGxlTWVkaXVtIH0gZnJvbSBcIi4uLy4uLy4uL1R5cG9ncmFwaHlTdHlsZVwiO1xyXG5pbXBvcnQgeyBDT0xPUlMgfSBmcm9tIFwiLi4vLi4vLi4vLi4vY29uc3RhbnRzL1RoZW1lXCI7XHJcbmltcG9ydCB7IHRydW5jYXRlVmFsdWVGb3JJbmRpYW5TdG9yZSwgdHJ1bmNhdGVWYWx1ZUZvckludGVybmF0aW9uYWxTdG9yZSwgfSBmcm9tICcuLi91dGlscy9jYWxjUGVyY2VudGFnZSc7XHJcbmltcG9ydCB7IFZlcnRpY2FsR3JhcGggfSBmcm9tICcuLi9WZXJ0aWNhbEJhckdyYXBoL1ZlcnRpY2FsR3JhcGgnO1xyXG5pbXBvcnQgeyBQaWVDaGFydCB9IGZyb20gJy4vUGllQ2hhcnQnO1xyXG5DaGFydEpTLnJlZ2lzdGVyKEFyY0VsZW1lbnQsIExlZ2VuZCk7XHJcbmNvbnN0IGNvbnZlcnRUb0JhckNoYXJ0RGF0YSA9IChkYXRhLCB4QXhpc1RpdGxlLCB5QXhpc1RpdGxlKSA9PiB7XHJcbiAgICBjb25zdCB4QXhpc0RhdGEgPSBkYXRhLm1hcCgoaXRlbSkgPT4gaXRlbS5uYW1lKTtcclxuICAgIGNvbnN0IHlBeGlzRGF0YSA9IGRhdGEubWFwKChpdGVtKSA9PiBpdGVtLmNvdW50KTtcclxuICAgIGNvbnN0IHhBeGlzID0ge1xyXG4gICAgICAgIGRhdGE6IHhBeGlzRGF0YSxcclxuICAgICAgICB0aXRsZTogeEF4aXNUaXRsZSAhPT0gbnVsbCAmJiB4QXhpc1RpdGxlICE9PSB2b2lkIDAgPyB4QXhpc1RpdGxlIDogJycsXHJcbiAgICB9O1xyXG4gICAgY29uc3QgeUF4aXMgPSB7XHJcbiAgICAgICAgZGF0YTogeUF4aXNEYXRhLFxyXG4gICAgICAgIHRpdGxlOiB5QXhpc1RpdGxlICE9PSBudWxsICYmIHlBeGlzVGl0bGUgIT09IHZvaWQgMCA/IHlBeGlzVGl0bGUgOiAnJyxcclxuICAgIH07XHJcbiAgICBjb25zdCBiYXJDaGFydERhdGEgPSB7XHJcbiAgICAgICAgeEF4aXMsXHJcbiAgICAgICAgeUF4aXMsXHJcbiAgICAgICAgYmFyQ29sb3JSR0JBOiB7IHI6IDIxMCwgZzogMTc0LCBiOiAyNTUsIGE6IDEgfSxcclxuICAgIH07XHJcbiAgICByZXR1cm4gYmFyQ2hhcnREYXRhO1xyXG59O1xyXG5jb25zdCBvcHRpb25zID0gKGN1cnJlbmN5UHJvcHMpID0+ICh7XHJcbiAgICBwbHVnaW5zOiB7XHJcbiAgICAgICAgbGVnZW5kOiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZhbHNlLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgdG9vbHRpcDoge1xyXG4gICAgICAgICAgICBlbmFibGVkOiB0cnVlLFxyXG4gICAgICAgICAgICBjYWxsYmFja3M6IHtcclxuICAgICAgICAgICAgICAgIGxhYmVsOiAodG9vbHRpcEl0ZW0pID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB2YXIgX2E7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKCF0b29sdGlwSXRlbS5sYWJlbCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gYCAwJWA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHRvdGFsID0gdG9vbHRpcEl0ZW0uZGF0YXNldC5kYXRhLnJlZHVjZSgoYWNjLCBjdXIpID0+IGFjYyArIGN1ciwgMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcGVyY2VudGFnZSA9IHBhcnNlRmxvYXQoKCh0b29sdGlwSXRlbS5yYXcgLyB0b3RhbCkgKiAxMDApLnRvRml4ZWQoMSkpO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgbGFiZWwsIHJhdyB9ID0gdG9vbHRpcEl0ZW07XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3ltYm9sID0gKF9hID0gY3VycmVuY3lQcm9wcyA9PT0gbnVsbCB8fCBjdXJyZW5jeVByb3BzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjdXJyZW5jeVByb3BzLnN5bWJvbCkgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaXNJbnRsID0gY3VycmVuY3lQcm9wcyA9PT0gbnVsbCB8fCBjdXJyZW5jeVByb3BzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjdXJyZW5jeVByb3BzLmlzSW50ZXJuYXRpb25hbFN0b3JlO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gaXNJbnRsICE9PSB1bmRlZmluZWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgPyBpc0ludGxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gdHJ1bmNhdGVWYWx1ZUZvckludGVybmF0aW9uYWxTdG9yZShyYXcpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IHRydW5jYXRlVmFsdWVGb3JJbmRpYW5TdG9yZShyYXcpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDogcmF3O1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHRvdGFsVmFsdWUgPSBpc0ludGwgIT09IHVuZGVmaW5lZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA/IGlzSW50bFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyB0cnVuY2F0ZVZhbHVlRm9ySW50ZXJuYXRpb25hbFN0b3JlKHRvdGFsKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiB0cnVuY2F0ZVZhbHVlRm9ySW5kaWFuU3RvcmUodG90YWwpXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDogdG90YWw7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIFtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYCAke2xhYmVsfWAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGAgJHtzeW1ib2x9JHt2YWx1ZX0gKCR7cGVyY2VudGFnZX0lIG9mICR7c3ltYm9sfSR7dG90YWxWYWx1ZX0pYCxcclxuICAgICAgICAgICAgICAgICAgICBdO1xyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgfSxcclxufSk7XHJcbmNvbnN0IEdSQVBIX0NPTE9SUyA9IFtcclxuICAgICcjNUUwN0JCJyxcclxuICAgICcjOUU3N0VEJyxcclxuICAgICcjRDJBRUZGJyxcclxuICAgICcjQ0RFMUZGJyxcclxuICAgICcjOTJBRkZBJyxcclxuICAgICcjMzkzNUUxJyxcclxuXTtcclxuY29uc3QgQ2FydFN0eWxlZCA9IHN0eWxlZC5kaXYgYFxuXHRiYWNrZ3JvdW5kOiAkeyhwcm9wcykgPT4gQ09MT1JTLnN1cmZhY2Uuc3RhbmRhcmR9O1xuXHRib3JkZXI6IDFweCBzb2xpZCAkeyhwcm9wcykgPT4gQ09MT1JTLnN0cm9rZS5wcmltYXJ5fTtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuYDtcclxuZXhwb3J0IGNvbnN0IENhcmQgPSAocHJvcHMpID0+IHtcclxuICAgIHJldHVybiBfanN4KENhcnRTdHlsZWQsIE9iamVjdC5hc3NpZ24oeyBzdHlsZTogeyBwYWRkaW5nOiAyNCB9IH0sIHsgY2hpbGRyZW46IHByb3BzLmNoaWxkcmVuIH0pKTtcclxufTtcclxuZXhwb3J0IGNvbnN0IFBpZUNoYXJ0QW5hbHl0aWNzID0gKHsgdGl0bGUsIHNsaWNlcywgc2l6ZSwgYWxsb3dDaGFydFBvcHVwLCBzaG93Q29udmVydFRvQmFyQ2hhcnQsIHRydW5jYXRlU2xpY2VzLCBiYXJDaGFydFhBeGlzVGl0bGUsIGJhckNoYXJ0WUF4aXNUaXRsZSwgaGlkZVRpdGxlID0gZmFsc2UsIGN1cnJlbmN5UHJvcHMsIH0pID0+IHtcclxuICAgIGNvbnN0IFtzaG93UG9wdXAsIHNldFNob3dQb3B1cF0gPSB1c2VTdGF0ZShmYWxzZSk7XHJcbiAgICBjb25zdCBbc2hvd0JhckNoYXJ0LCBzZXRTaG93QmFyQ2hhcnRdID0gdXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgY29uc3QgW3NsaWNlc1dpdGhDb2xvciwgc2V0U2xpY2VzV2l0aENvbG9yXSA9IHVzZVN0YXRlKFtdKTtcclxuICAgIGNvbnN0IFtkYXRhLCBzZXREYXRhXSA9IHVzZVN0YXRlKCk7XHJcbiAgICBjb25zdCBbdHJ1bmNhdGVkRGF0YSwgc2V0VHJ1bmNhdGVkRGF0YV0gPSB1c2VTdGF0ZSgpO1xyXG4gICAgY29uc3QgW3RydW5jYXRlZFNsaWNlc1dpdGhDb2xvciwgc2V0VHJ1bmNhdGVkU2xpY2VzV2l0aENvbG9yXSA9IHVzZVN0YXRlKFtdKTtcclxuICAgIGNvbnN0IFtiYXJDaGFydERhdGEsIHNldEJhckNoYXJ0RGF0YV0gPSB1c2VTdGF0ZShudWxsKTtcclxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XHJcbiAgICAgICAgY29uc3QgdG90YWxTdW0gPSBzbGljZXMucmVkdWNlKChzdW0sIHNsaWNlKSA9PiBzdW0gKyBzbGljZS5jb3VudCwgMCk7XHJcbiAgICAgICAgbGV0IHVwZGF0ZWRTbGljZXNXaXRoQ29sb3IgPSBbXTtcclxuICAgICAgICB1cGRhdGVkU2xpY2VzV2l0aENvbG9yID0gT2JqZWN0LmtleXMoc2xpY2VzKS5tYXAoKGtleSwgaW5kZXgpID0+IChPYmplY3QuYXNzaWduKHsgY29sb3I6IEdSQVBIX0NPTE9SU1tpbmRleCAlIEdSQVBIX0NPTE9SUy5sZW5ndGhdIH0sIHNsaWNlc1trZXldKSkpO1xyXG4gICAgICAgIHNldFNsaWNlc1dpdGhDb2xvcihbLi4udXBkYXRlZFNsaWNlc1dpdGhDb2xvcl0pO1xyXG4gICAgICAgIGlmICh0b3RhbFN1bSA9PT0gMCkge1xyXG4gICAgICAgICAgICBjb25zdCBkYXRhU2V0ID0ge1xyXG4gICAgICAgICAgICAgICAgZGF0YXNldHM6IFtcclxuICAgICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGE6IFsxMDBdLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IFsnI0YwRjBGMCddLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXJXaWR0aDogMCxcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgICAgIGxhYmVsczogW10sXHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgIHNldERhdGEoZGF0YVNldCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICBjb25zdCBkYXRhU2V0ID0ge1xyXG4gICAgICAgICAgICAgICAgbGFiZWxzOiBzbGljZXMubWFwKChzbGljZSkgPT4gU3RyaW5nVXRpbHMuY2FwaXRhbGl6ZUVhY2hXb3JkKHNsaWNlLm5hbWUpKSxcclxuICAgICAgICAgICAgICAgIGRhdGFzZXRzOiBbXHJcbiAgICAgICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhOiBzbGljZXMubWFwKChzbGljZSkgPT4gc2xpY2UuY291bnQpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IHNsaWNlcy5tYXAoKHNsaWNlLCBpbmRleCkgPT4geyB2YXIgX2E7IHJldHVybiAoX2EgPSBzbGljZS5jb2xvcikgIT09IG51bGwgJiYgX2EgIT09IHZvaWQgMCA/IF9hIDogR1JBUEhfQ09MT1JTW2luZGV4ICUgR1JBUEhfQ09MT1JTLmxlbmd0aF07IH0pLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXJDb2xvcjogWyd3aGl0ZScsICd3aGl0ZScsICd3aGl0ZScsICd3aGl0ZScsICd3aGl0ZScsICd3aGl0ZSddLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXJXaWR0aDogNCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiA4LFxyXG4gICAgICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICBzZXREYXRhKGRhdGFTZXQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodHJ1bmNhdGVTbGljZXMgJiYgc2xpY2VzLmxlbmd0aCA+IHRydW5jYXRlU2xpY2VzKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHRydW5jYXRlZFNsaWNlcyA9IHNsaWNlcy5zbGljZSgwLCB0cnVuY2F0ZVNsaWNlcyk7XHJcbiAgICAgICAgICAgIGNvbnN0IG90aGVyU2xpY2VzID0gc2xpY2VzLnNsaWNlKHRydW5jYXRlU2xpY2VzKTtcclxuICAgICAgICAgICAgY29uc3Qgb3RoZXJDb3VudCA9IG90aGVyU2xpY2VzLnJlZHVjZSgoc3VtLCBzbGljZSkgPT4gc3VtICsgc2xpY2UuY291bnQsIDApO1xyXG4gICAgICAgICAgICB0cnVuY2F0ZWRTbGljZXMucHVzaCh7IG5hbWU6ICdPdGhlcicsIGNvdW50OiBvdGhlckNvdW50IH0pO1xyXG4gICAgICAgICAgICBjb25zdCB0cnVuY2F0ZWREYXRhU2V0ID0ge1xyXG4gICAgICAgICAgICAgICAgbGFiZWxzOiB0cnVuY2F0ZWRTbGljZXMubWFwKChzbGljZSkgPT4gU3RyaW5nVXRpbHMuY2FwaXRhbGl6ZShzbGljZS5uYW1lKSksXHJcbiAgICAgICAgICAgICAgICBkYXRhc2V0czogW1xyXG4gICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGF0YTogdHJ1bmNhdGVkU2xpY2VzLm1hcCgoc2xpY2UpID0+IHNsaWNlLmNvdW50KSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiB0cnVuY2F0ZWRTbGljZXMubWFwKChzbGljZSwgaW5kZXgpID0+IHsgdmFyIF9hOyByZXR1cm4gKF9hID0gc2xpY2UuY29sb3IpICE9PSBudWxsICYmIF9hICE9PSB2b2lkIDAgPyBfYSA6IEdSQVBIX0NPTE9SU1tpbmRleCAlIEdSQVBIX0NPTE9SUy5sZW5ndGhdOyB9KSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyQ29sb3I6IFsnd2hpdGUnLCAnd2hpdGUnLCAnd2hpdGUnLCAnd2hpdGUnLCAnd2hpdGUnLCAnd2hpdGUnXSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyV2lkdGg6IDQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlclJhZGl1czogOCxcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgc2V0VHJ1bmNhdGVkRGF0YSh0cnVuY2F0ZWREYXRhU2V0KTtcclxuICAgICAgICAgICAgY29uc3QgdHJ1bmNhdGVkU2xpY2VzV2l0aENvbG9yID0gdHJ1bmNhdGVkU2xpY2VzLm1hcCgoc2xpY2UsIGluZGV4KSA9PiAoT2JqZWN0LmFzc2lnbih7IGNvbG9yOiBHUkFQSF9DT0xPUlNbaW5kZXggJSBHUkFQSF9DT0xPUlMubGVuZ3RoXSB9LCBzbGljZSkpKTtcclxuICAgICAgICAgICAgc2V0VHJ1bmNhdGVkU2xpY2VzV2l0aENvbG9yKHRydW5jYXRlZFNsaWNlc1dpdGhDb2xvcik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChzaG93Q29udmVydFRvQmFyQ2hhcnQpIHtcclxuICAgICAgICAgICAgc2V0QmFyQ2hhcnREYXRhKGNvbnZlcnRUb0JhckNoYXJ0RGF0YShzbGljZXMsIGJhckNoYXJ0WEF4aXNUaXRsZSwgYmFyQ2hhcnRZQXhpc1RpdGxlKSk7XHJcbiAgICAgICAgfVxyXG4gICAgfSwgW3NsaWNlcywgdHJ1bmNhdGVTbGljZXNdKTtcclxuICAgIGlmICghZGF0YSkge1xyXG4gICAgICAgIHJldHVybiBfanN4KF9GcmFnbWVudCwge30pO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIChfanN4cyhfRnJhZ21lbnQsIHsgY2hpbGRyZW46IFtfanN4cyhcImRpdlwiLCBPYmplY3QuYXNzaWduKHsgc3R5bGU6IHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ6IGhpZGVUaXRsZSB8fCAodGl0bGUgPT09IG51bGwgfHwgdGl0bGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHRpdGxlLmxlbmd0aCkgPT09IDAgPyAnZmxleC1lbmQnIDogJ3NwYWNlLWJldHdlZW4nLFxyXG4gICAgICAgICAgICAgICAgfSB9LCB7IGNoaWxkcmVuOiBbIWhpZGVUaXRsZSAmJiB0aXRsZSAmJiAoX2pzeChUaXRsZU1lZGl1bSwgT2JqZWN0LmFzc2lnbih7IHN0eWxlOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW5Cb3R0b206IDE2LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9IH0sIHsgY2hpbGRyZW46IHRpdGxlIH0pKSksIF9qc3hzKFwiZGl2XCIsIHsgY2hpbGRyZW46IFtzaG93Q29udmVydFRvQmFyQ2hhcnQgJiYgKF9qc3goSWNvbkJ1dHRvbiwgeyBJY29uOiBCYXJDaGFydEljb24sIG9uQ2xpY2s6ICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0U2hvd0JhckNoYXJ0KHRydWUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gfSkpLCBhbGxvd0NoYXJ0UG9wdXAgJiYgKF9qc3goSWNvbkJ1dHRvbiwgeyBJY29uOiBNYXhpbWl6ZUljb24sIG9uQ2xpY2s6ICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0U2hvd1BvcHVwKHRydWUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gfSkpXSB9KV0gfSkpLCBfanN4cyhcImRpdlwiLCBPYmplY3QuYXNzaWduKHsgY2xhc3NOYW1lOiAncm93JyB9LCB7IGNoaWxkcmVuOiBbX2pzeChcImRpdlwiLCBPYmplY3QuYXNzaWduKHsgY2xhc3NOYW1lOiAnY29sLTYgJywgc3R5bGU6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9IH0sIHsgY2hpbGRyZW46IF9qc3goXCJkaXZcIiwgT2JqZWN0LmFzc2lnbih7IHN0eWxlOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IHNpemUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBzaXplLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSB9LCB7IGNoaWxkcmVuOiBfanN4KERvdWdobnV0LCB7IGRhdGE6ICh0cnVuY2F0ZVNsaWNlcyA/IHRydW5jYXRlZERhdGEgOiBkYXRhKSwgb3B0aW9uczogT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBvcHRpb25zKGN1cnJlbmN5UHJvcHMpKSwgeyBtYWludGFpbkFzcGVjdFJhdGlvOiBzaXplID8gZmFsc2UgOiB0cnVlIH0pIH0pIH0pKSB9KSksIF9qc3goXCJkaXZcIiwgT2JqZWN0LmFzc2lnbih7IGNsYXNzTmFtZTogJ2NvbC02Jywgc3R5bGU6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmdMZWZ0OiA0OCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdmbGV4LXN0YXJ0JyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSB9LCB7IGNoaWxkcmVuOiBfanN4KFBpZUNoYXJ0LCB7IHNsaWNlczogdHJ1bmNhdGVTbGljZXMgPyB0cnVuY2F0ZWRTbGljZXNXaXRoQ29sb3IgOiBzbGljZXNXaXRoQ29sb3IsIHNpemU6IHNpemUgfSkgfSkpXSB9KSksIHNob3dQb3B1cCAmJiAoX2pzeChTdHlsZWRNb2RhbCwgT2JqZWN0LmFzc2lnbih7IG9wZW46IHNob3dQb3B1cCwgb25DbG9zZTogKCkgPT4gc2V0U2hvd1BvcHVwKGZhbHNlKSwgY2xvc2VPbk91dHNpZGVDbGljazogdHJ1ZSwgaGVhZGluZ1RpdGxlOiB0aXRsZSwgd2lkdGg6IFwiNzUlXCIgfSwgeyBjaGlsZHJlbjogX2pzeHMoXCJkaXZcIiwgT2JqZWN0LmFzc2lnbih7IHN0eWxlOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDI0LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnc3BhY2UtYmV0d2VlbicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogJzgwdmgnLFxyXG4gICAgICAgICAgICAgICAgICAgIH0gfSwgeyBjaGlsZHJlbjogW19qc3goXCJkaXZcIiwgT2JqZWN0LmFzc2lnbih7IHN0eWxlOiB7IHdpZHRoOiAnNTUlJywgbWFyZ2luTGVmdDogJzQlJyB9IH0sIHsgY2hpbGRyZW46IF9qc3goXCJkaXZcIiwgT2JqZWN0LmFzc2lnbih7IHN0eWxlOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAnMTAwJScsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogJzEwMCUnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduSXRlbXM6ICdjZW50ZXInLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5Q29udGVudDogJ2NlbnRlcicsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSB9LCB7IGNoaWxkcmVuOiBfanN4KERvdWdobnV0LCB7IGRhdGE6IGRhdGEsIG9wdGlvbnM6IE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgb3B0aW9ucyhjdXJyZW5jeVByb3BzKSksIHsgbWFpbnRhaW5Bc3BlY3RSYXRpbzogc2l6ZSA/IGZhbHNlIDogdHJ1ZSB9KSB9KSB9KSkgfSkpLCBfanN4KFwiZGl2XCIsIE9iamVjdC5hc3NpZ24oeyBzdHlsZToge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAnMzAlJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6ICcxMDAlJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvd1k6ICdhdXRvJyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gfSwgeyBjaGlsZHJlbjogX2pzeChQaWVDaGFydCwgeyBzbGljZXM6IHNsaWNlc1dpdGhDb2xvciB9KSB9KSldIH0pKSB9KSkpLCBzaG93QmFyQ2hhcnQgJiYgYmFyQ2hhcnREYXRhICYmIChfanN4KFN0eWxlZE1vZGFsLCBPYmplY3QuYXNzaWduKHsgb3Blbjogc2hvd0JhckNoYXJ0LCBvbkNsb3NlOiAoKSA9PiBzZXRTaG93QmFyQ2hhcnQoZmFsc2UpLCBjbG9zZU9uT3V0c2lkZUNsaWNrOiB0cnVlLCBoZWFkaW5nVGl0bGU6IHRpdGxlLCB3aWR0aDogXCI4NSVcIiB9LCB7IGNoaWxkcmVuOiBfanN4KFwiZGl2XCIsIE9iamVjdC5hc3NpZ24oeyBzdHlsZToge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAnMjRweCAwJyxcclxuICAgICAgICAgICAgICAgICAgICB9IH0sIHsgY2hpbGRyZW46IF9qc3goVmVydGljYWxHcmFwaCwgeyB4QXhpczogYmFyQ2hhcnREYXRhLnhBeGlzLCB5QXhpczogYmFyQ2hhcnREYXRhLnlBeGlzLCBiYXJDb2xvclJHQkE6IGJhckNoYXJ0RGF0YSA9PT0gbnVsbCB8fCBiYXJDaGFydERhdGEgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGJhckNoYXJ0RGF0YS5iYXJDb2xvclJHQkEgfSkgfSkpIH0pKSldIH0pKTtcclxufTtcclxuLy8jIHNvdXJjZU1hcHBpbmdVUkw9UGllQ2hhcnRBbmFseXRpY3MuanMubWFwIl19 */")),x=g=>I(B,Object.assign({style:{padding:24}},{children:g.children})),Z=g=>{let{title:i,slices:d,size:p,allowChartPopup:b,showConvertToBarChart:G,truncateSlices:y,barChartXAxisTitle:B,barChartYAxisTitle:x,hideTitle:Z=!1,currencyProps:j}=g;const[H,N]=c(!1),[W,Y]=c(!1),[R,J]=c([]),[V,F]=c(),[S,v]=c(),[w,k]=c([]),[z,Q]=c(null);return l((()=>{const g=d.reduce(((g,I)=>g+I.count),0);let I=[];if(I=Object.keys(d).map(((g,I)=>Object.assign({color:X[I%X.length]},d[g]))),J([...I]),0===g){F({datasets:[{data:[100],backgroundColor:["#F0F0F0"],borderWidth:0}],labels:[]})}else{const g={labels:d.map((g=>o.capitalizeEachWord(g.name))),datasets:[{data:d.map((g=>g.count)),backgroundColor:d.map(((g,I)=>{var C;return null!==(C=g.color)&&void 0!==C?C:X[I%X.length]})),borderColor:["white","white","white","white","white","white"],borderWidth:4,borderRadius:8}]};F(g)}if(y&&d.length>y){const g=d.slice(0,y),I=d.slice(y).reduce(((g,I)=>g+I.count),0);g.push({name:"Other",count:I});const C={labels:g.map((g=>o.capitalize(g.name))),datasets:[{data:g.map((g=>g.count)),backgroundColor:g.map(((g,I)=>{var C;return null!==(C=g.color)&&void 0!==C?C:X[I%X.length]})),borderColor:["white","white","white","white","white","white"],borderWidth:4,borderRadius:8}]};v(C);const A=g.map(((g,I)=>Object.assign({color:X[I%X.length]},g)));k(A)}G&&Q(((g,I,C)=>({xAxis:{data:g.map((g=>g.name)),title:null!=I?I:""},yAxis:{data:g.map((g=>g.count)),title:null!=C?C:""},barColorRGBA:{r:210,g:174,b:255,a:1}}))(d,B,x))}),[d,y]),V?A(C,{children:[A("div",Object.assign({style:{display:"flex",justifyContent:Z||0===(null==i?void 0:i.length)?"flex-end":"space-between"}},{children:[!Z&&i&&I(s,Object.assign({style:{marginBottom:16}},{children:i})),A("div",{children:[G&&I(r,{Icon:t,onClick:()=>{Y(!0)}}),b&&I(r,{Icon:e,onClick:()=>{N(!0)}})]})]})),A("div",Object.assign({className:"row"},{children:[I("div",Object.assign({className:"col-6 ",style:{display:"flex",alignItems:"center",justifyContent:"center"}},{children:I("div",Object.assign({style:{width:p,height:p}},{children:I(u,{data:y?S:V,options:Object.assign(Object.assign({},h(j)),{maintainAspectRatio:!p})})}))})),I("div",Object.assign({className:"col-6",style:{paddingLeft:48,display:"flex",flexDirection:"column",justifyContent:"flex-start"}},{children:I(n,{slices:y?w:R,size:p})}))]})),H&&I(a,Object.assign({open:H,onClose:()=>N(!1),closeOnOutsideClick:!0,headingTitle:i,width:"75%"},{children:A("div",Object.assign({style:{padding:24,display:"flex",justifyContent:"space-between",height:"80vh"}},{children:[I("div",Object.assign({style:{width:"55%",marginLeft:"4%"}},{children:I("div",Object.assign({style:{width:"100%",height:"100%",display:"flex",alignItems:"center",justifyContent:"center"}},{children:I(u,{data:V,options:Object.assign(Object.assign({},h(j)),{maintainAspectRatio:!p})})}))})),I("div",Object.assign({style:{width:"30%",height:"100%",overflowY:"auto"}},{children:I(n,{slices:R})}))]}))})),W&&z&&I(a,Object.assign({open:W,onClose:()=>Y(!1),closeOnOutsideClick:!0,headingTitle:i,width:"85%"},{children:I("div",Object.assign({style:{padding:"24px 0"}},{children:I(m,{xAxis:z.xAxis,yAxis:z.yAxis,barColorRGBA:null==z?void 0:z.barColorRGBA})}))}))]}):I(C,{})};export{x as Card,Z as PieChartAnalytics};
|
package/dist/esm/components/analytics-chips-and-dropdowns/chart/StackedBarChart/StackedBarChart.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as o,jsx as i}from"react/jsx-runtime";import t from"../../../../assets/icons/maximize.svg.js";import{Chart as e,CategoryScale as a,LinearScale as l,BarElement as n,Tooltip as d,Legend as s}from"chart.js";import r from"chartjs-plugin-datalabels";import{useState as c,useMemo as u}from"react";import{Bar as v}from"react-chartjs-2";import{IconButton as p}from"../../../icon-button/IconButton.js";import{StyledModal as g}from"../../../modals/styledModal.js";import{TitleRegular as b,BodyTiny as
|
|
1
|
+
import{jsxs as o,jsx as i}from"react/jsx-runtime";import t from"../../../../assets/icons/maximize.svg.js";import{Chart as e,CategoryScale as a,LinearScale as l,BarElement as n,Tooltip as d,Legend as s}from"chart.js";import r from"chartjs-plugin-datalabels";import{useState as c,useMemo as u}from"react";import{Bar as v}from"react-chartjs-2";import{IconButton as p}from"../../../icon-button/IconButton.js";import{StyledModal as g}from"../../../modals/styledModal.js";import{TitleRegular as b,BodyTiny as x}from"../../../TypographyStyle.js";import{COLORS as h,FONTS as m}from"../../../../constants/Theme.js";import{truncateValueForInternationalStore as y,truncateValueForIndianStore as f}from"../utils/calcPercentage.js";import{COLOR_SCHEMA as O,GRAPH_ORIENTATION as A}from"./StackedBarChart.model.js";import{GraphContainerWrapper as C}from"./StackedBarChart.styles.js";e.register(a,l,n,d,s,r);const k=e=>{var a,l,n,d,s,r,k,j,L,F,S,H,T,I,R,E,w,B,D,N,Z,z,P,G,W,_,q,M,V,Y,J,K,Q,U,X,$,oo,io,to,eo,ao,lo;const[no,so]=c(!1),ro=[250,1e3,800,1500,300,600],co=0===e.yAxis.data.length,uo=void 0===e.customColourScaleBrand&&void 0===e.customColourScalePastel?e.colorSchema===O.PASTEL?["#E6C7FF","#FEC6C6","#FEDEF3","#DEEFFF","#FFD8B1","#C7E5FF","#FFD3E6","#C9FFE5","#FFE3C7","#D9D9FF"]:["#5E07BB","#9E77ED","#D2AEFF","#F7D7FF","#CDE1FF","#92AFFA","#3935E1"]:e.colorSchema===O.PASTEL?e.customColourScalePastel:e.customColourScaleBrand,vo=e.customHoverColour,po=u((()=>{var o,i,t;return Object.assign(Object.assign({barPercentage:(null==e?void 0:e.barPercentage)||.4,categoryPercentage:1,pointStyle:"circle",barWidth:e.barWidth,borderRadius:(null==e?void 0:e.borderRadius)||void 0},"object"==typeof(null==e?void 0:e.borderRadius)?{borderSkipped:!1}:{}),(null===(o=null==e?void 0:e.addBarGap)||void 0===o?void 0:o.flag)?{borderWidth:{top:(null===(i=null==e?void 0:e.addBarGap)||void 0===i?void 0:i.value)||2,bottom:(null===(t=null==e?void 0:e.addBarGap)||void 0===t?void 0:t.value)||2,right:0,left:0},borderColor:"transparent"}:{})}),[e.barWidth,null==e?void 0:e.borderRadius,null==e?void 0:e.barPercentage,null==e?void 0:e.addBarGap]),go={};e.yAxis.data.map((o=>{o.map((o=>{go[o.name]?go[o.name].push(o.value):go[o.name]=[o.value]}))}));const bo=Object.keys(go).map(((o,i)=>Object.assign({label:o,data:go[o],backgroundColor:null==uo?void 0:uo[i],hoverBackgroundColor:void 0===vo?void 0:vo[i]},po)));let xo=e.xAxis.data.map((o=>"string"==typeof o?o:o.name)),ho=bo;if(e.truncateBars){const o=((o,i,t)=>{if(i.length<=t)return{truncatedData:o,truncatedLabels:i,originalData:o,originalLabels:i};const e=o.map((o=>o.slice(0,t))),a=o.map((o=>o.slice(t).reduce(((o,i)=>o+i),0)));e.forEach(((o,i)=>o.push(a[i])));const l=i.slice(0,t);return l.push("Others"),{truncatedData:e,truncatedLabels:l,originalData:o,originalLabels:i}})(bo.map((o=>o.data)),xo,e.truncateBars);bo.forEach(((i,t)=>i.data=o.truncatedData[t])),xo=o.truncatedLabels,ho=o.originalData.map(((o,i)=>Object.assign(Object.assign({},bo[i]),{data:o})))}const mo={plugins:{legend:{display:!co&&!e.customLegend,labels:{usePointStyle:!0,fontSize:2}},tooltip:{enabled:!co,callbacks:{label:null===(a=e.tooltipConfig)||void 0===a?void 0:a.labelCallback,title:null===(l=e.tooltipConfig)||void 0===l?void 0:l.titleCallback,footer:null===(n=e.tooltipConfig)||void 0===n?void 0:n.footerCallback},footerFont:null===(s=null===(d=e.tooltipConfig)||void 0===d?void 0:d.footerStyles)||void 0===s?void 0:s.footerFont},datalabels:{display:null!==(r=e.showTotal)&&void 0!==r&&r,anchor:"end",align:"end",clamp:!0,formatter:(o,i)=>{var t;const e=i.datasetIndex,a=i.chart.data.datasets;if(e!==a.length-1)return"";const l=i.dataIndex;let n=0;for(let o=0;o<a.length;o++)n+=null!==(t=a[o].data[l])&&void 0!==t?t:0;return n?n<1e3?n:(n/1e3).toString().substring(0,4)+"k":""},color:h.content.secondary}},layout:{padding:{right:e.showTotal&&e.orientation===A.HORIZONTAL?50:0,top:e.showTotal&&e.orientation!=A.HORIZONTAL?50:0}},responsive:!0,maintainAspectRatio:!1,legend:{display:!e.customLegend,labels:{usePointStyle:!0}},indexAxis:e.orientation===A.HORIZONTAL?"y":"x",scales:{x:{title:{display:!!(e.orientation===A.HORIZONTAL?null===(k=e.yAxis)||void 0===k?void 0:k.title:null===(j=e.xAxis)||void 0===j?void 0:j.title),text:e.orientation===A.HORIZONTAL?null===(L=e.yAxis)||void 0===L?void 0:L.title:null===(F=e.xAxis)||void 0===F?void 0:F.title,color:null!==(T=e.orientation===A.HORIZONTAL?null===(S=e.yAxis)||void 0===S?void 0:S.titleColor:null===(H=e.xAxis)||void 0===H?void 0:H.titleColor)&&void 0!==T?T:h.content.secondary,font:{size:m.caption.fontSize}},grid:{display:e.orientation===A.HORIZONTAL&&(void 0===(null===(I=null==e?void 0:e.showGridLines)||void 0===I?void 0:I.x)||(null===(R=null==e?void 0:e.showGridLines)||void 0===R?void 0:R.x)),color:h.background.base},ticks:{fontSize:m.caption.fontSize,color:null!==(E=e.yAxis.labelColor)&&void 0!==E?E:h.content.secondary,callback:e.orientation===A.HORIZONTAL?e.isInternationalStore?y:f:void 0},stacked:e.orientation===A.HORIZONTAL?"boolean"!=typeof(null===(w=e.yAxis)||void 0===w?void 0:w.stacked)||(null===(B=e.yAxis)||void 0===B?void 0:B.stacked):"boolean"!=typeof(null===(D=e.xAxis)||void 0===D?void 0:D.stacked)||(null===(N=e.xAxis)||void 0===N?void 0:N.stacked)},y:Object.assign(Object.assign({},(null===(Z=null==e?void 0:e.equalHeight)||void 0===Z?void 0:Z.flag)?{suggestedMin:-(null==e?void 0:e.equalHeight.max),suggestedMax:null==e?void 0:e.equalHeight.max}:{}),{title:{display:!!(e.orientation===A.HORIZONTAL?null===(z=e.xAxis)||void 0===z?void 0:z.title:null===(P=e.yAxis)||void 0===P?void 0:P.title),text:e.orientation===A.HORIZONTAL?null===(G=e.xAxis)||void 0===G?void 0:G.title:null===(W=e.yAxis)||void 0===W?void 0:W.title,color:null!==(M=e.orientation===A.HORIZONTAL?null===(_=e.xAxis)||void 0===_?void 0:_.titleColor:null===(q=e.yAxis)||void 0===q?void 0:q.titleColor)&&void 0!==M?M:h.content.secondary,font:{size:m.caption.fontSize}},grid:{display:e.orientation!==A.HORIZONTAL&&(void 0===(null===(V=null==e?void 0:e.showGridLines)||void 0===V?void 0:V.y)||(null===(Y=null==e?void 0:e.showGridLines)||void 0===Y?void 0:Y.y)),color:h.background.base},ticks:Object.assign(Object.assign({stepSize:e.orientation===A.HORIZONTAL?null===(J=e.xAxis)||void 0===J?void 0:J.stepSize:null===(K=e.yAxis)||void 0===K?void 0:K.stepSize,fontSize:m.caption.fontSize,color:null!==(Q=e.xAxis.labelColor)&&void 0!==Q?Q:h.content.secondary},co?{min:0,max:2e3,stepSize:200}:{}),{callback:(null==e?void 0:e.ticksCallback)?null==e?void 0:e.ticksCallback:e.orientation!==A.VERTICAL?e.isInternationalStore?y:f:void 0}),stacked:e.orientation===A.HORIZONTAL?"boolean"!=typeof(null===(U=e.xAxis)||void 0===U?void 0:U.stacked)||(null===(X=e.xAxis)||void 0===X?void 0:X.stacked):"boolean"!=typeof(null===($=e.yAxis)||void 0===$?void 0:$.stacked)||(null===(oo=e.yAxis)||void 0===oo?void 0:oo.stacked)})},onClick:(o,i)=>{if(!e.onBarClick)return;const t=i[0].datasetIndex,a=i[0].index,l=o.chart.data.datasets[t].label,n=o.chart.data.labels[a];e.onBarClick(n,l)},onHover:(o,i)=>{e.onBarClick&&i.length&&(o.native.target.style.cursor="pointer")}};e.orientation&&e.orientation!==A.VERTICAL?delete mo.scales.y.ticks.callback:delete mo.scales.x.ticks.callback;const yo={labels:xo,datasets:co?[{data:ro,backgroundColor:"rgba(0,0,0,0)"}]:bo},fo={labels:e.xAxis.data.map((o=>"string"==typeof o?o:o.name)),datasets:co?[{data:ro,backgroundColor:"rgba(0,0,0,0)"}]:ho},Oo=function(){let t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return i("div",Object.assign({style:{overflowY:"scroll",display:"flex",flexDirection:"row",gap:"10px",padding:"0px 24px 12px 24px",justifyContent:e.allowChartPopup&&!t?"flex-start":"flex-end",flexWrap:"wrap"}},{children:bo.map((t=>o("div",Object.assign({style:{display:"flex",alignItems:"center",gap:"8px",marginTop:"4px"}},{children:[i("div",{style:{backgroundColor:t.backgroundColor,width:"16px",height:"16px",borderRadius:"2px"}}),i(x,Object.assign({color:h.content.secondary},{children:t.label}))]}),t.label.replace(" ","_"))))}))};return o(C,Object.assign({style:null!==(io=e.wrapperStyle)&&void 0!==io?io:{},padding:e.outerPadding,customLegend:e.customLegend},{children:[e.chartHeading&&o("div",Object.assign({style:{marginBottom:24,display:"flex",justifyContent:e.hideHeading?"flex-end":"space-between"}},{children:[!0!==e.hideHeading&&i(b,Object.assign({color:null!==(to=e.chartHeading.color)&&void 0!==to?to:h.content.secondary},{children:e.chartHeading.heading})),e.allowChartPopup&&i("div",Object.assign({style:{display:"flex",justifyContent:"flex-end"}},{children:i("div",{children:i(p,{Icon:t,onClick:()=>{so(!0)}})})}))]})),e.customLegend&&Oo(),i("div",Object.assign({className:"graph__wrapper"},{children:i("div",Object.assign({style:{height:null!==(eo=e.graphCanvasHeight)&&void 0!==eo?eo:500,width:null!==(ao=e.graphCanvasWidth)&&void 0!==ao?ao:"auto"}},{children:i(v,{options:mo,data:yo})}))})),no&&i(g,Object.assign({open:no,onClose:()=>so(!1),closeOnOutsideClick:!0,headingTitle:null===(lo=e.chartHeading)||void 0===lo?void 0:lo.heading,width:"85%"},{children:o("div",Object.assign({className:"graph__wrapper",style:{padding:"8px"}},{children:[e.customLegend&&Oo(!0),i("div",Object.assign({style:{height:"70vh",width:"100%",padding:"16px",borderRadius:"8px"}},{children:i(v,{options:mo,data:fo})}))]}))}))]}))};export{k as StackedBarChart};
|
|
@@ -28,8 +28,4 @@ import e from"styled-components";import{COLORS as r}from"../../../../constants/T
|
|
|
28
28
|
.legend__set {
|
|
29
29
|
margin-top: 16px;
|
|
30
30
|
}
|
|
31
|
-
|
|
32
|
-
display: flex;
|
|
33
|
-
align-items: center;
|
|
34
|
-
gap: 8px;
|
|
35
|
-
`;export{n as GraphContainerWrapper,p as HeaderIconWrapper};
|
|
31
|
+
`;export{n as GraphContainerWrapper};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as i,jsxs as o}from"react/jsx-runtime";import{useState as t,useEffect as n}from"react";import{BodySecondary as e}from"../TypographyStyle.js";import{COLORS as r}from"../../constants/Theme.js";import{ButtonGroupStyle as c,Button as s}from"./ButtonGroupStyle.js";const d=d=>{const[a,l]=t(void 0);n((()=>{l(d.activeButtonId||void 0)}),[null==d?void 0:d.activeButtonId]);return i(c,Object.assign({className:"button-group",width:d.width||"100%",gap:d.gap,size:d.size},{children:d.buttonGroup.map((t=>{var n,c;const u=null==t?void 0:t.icon;return o(s,Object.assign({borderRadius:null!==(n=d.borderRadius)&&void 0!==n?n:"4px",matchParentWidth:null===(c=d.matchParentWidth)||void 0===c||c,className:"button",isActive:a===t.id,onClick:()=>(i=>{l(i.id),d.onButtonClick(i.id)})(t),iconPosition:d.iconPosition,size:d.size,backgroundColor:d.backgroundColor||r.surface.subdued},{children:[(null==d?void 0:d.iconPosition)&&u&&i("div",Object.assign({className:"button__image"},{children:i(u,{color:a===t.id?r.background.inverseLight:r.content.secondary,width:(null==d?void 0:d.iconWidth)||"18px",height:(null==d?void 0:d.iconHeight)||"18px"})})),i("div",Object.assign({className:"button__name"},{children:i(e,Object.assign({style:{color:a===t.id?r.background.inverseLight:r.content.secondary}},{children:t.title}))}))]}),t.id)}))}))};export{d as ButtonGroup};
|
|
1
|
+
import{jsx as i,jsxs as o}from"react/jsx-runtime";import{useState as t,useEffect as n}from"react";import{BodySecondary as e}from"../TypographyStyle.js";import{COLORS as r}from"../../constants/Theme.js";import{ButtonGroupStyle as c,Button as s}from"./ButtonGroupStyle.js";const d=d=>{const[a,l]=t(void 0);n((()=>{l(d.activeButtonId||void 0)}),[null==d?void 0:d.activeButtonId]);return i(c,Object.assign({className:"button-group",width:d.width||"100%",height:d.height,gap:d.gap,size:d.size},{children:d.buttonGroup.map((t=>{var n,c;const u=null==t?void 0:t.icon;return o(s,Object.assign({borderRadius:null!==(n=d.borderRadius)&&void 0!==n?n:"4px",matchParentWidth:null===(c=d.matchParentWidth)||void 0===c||c,className:"button",isActive:a===t.id,onClick:()=>(i=>{l(i.id),d.onButtonClick(i.id)})(t),iconPosition:d.iconPosition,size:d.size,backgroundColor:d.backgroundColor||r.surface.subdued,iconGap:d.iconGap},{children:[(null==d?void 0:d.iconPosition)&&u&&i("div",Object.assign({className:"button__image"},{children:i(u,{color:a===t.id?r.background.inverseLight:r.content.secondary,width:(null==d?void 0:d.iconWidth)||"18px",height:(null==d?void 0:d.iconHeight)||"18px"})})),i("div",Object.assign({className:"button__name"},{children:i(e,Object.assign({style:{color:a===t.id?r.background.inverseLight:r.content.secondary}},{children:t.title}))}))]}),t.id)}))}))};export{d as ButtonGroup};
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export declare const ButtonGroupStyle: import("styled-components").StyledComponent<"div", any, {
|
|
2
2
|
width: string | undefined;
|
|
3
|
+
height: string | undefined;
|
|
3
4
|
size: 'small' | 'medium' | 'large';
|
|
4
5
|
gap: string | undefined;
|
|
5
6
|
}, never>;
|
|
@@ -10,4 +11,5 @@ export declare const Button: import("styled-components").StyledComponent<"div",
|
|
|
10
11
|
iconPosition?: "left" | "right" | "top" | undefined;
|
|
11
12
|
size: 'small' | 'medium' | 'large';
|
|
12
13
|
backgroundColor?: string | undefined;
|
|
14
|
+
iconGap?: string | undefined;
|
|
13
15
|
}, never>;
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import
|
|
1
|
+
import i from"styled-components";import{COLORS as e}from"../../constants/Theme.js";const t={small:"8px 12px",medium:"10px 12px",large:"14px 12px"},o={small:"36px",medium:"40px",large:"48px"},n=i.div`
|
|
2
2
|
display: flex;
|
|
3
3
|
flex-direction: row;
|
|
4
|
-
width: ${
|
|
5
|
-
height: ${
|
|
6
|
-
gap: ${
|
|
7
|
-
`,r=
|
|
4
|
+
width: ${i=>i.width||"100%"};
|
|
5
|
+
height: ${i=>i.height?i.height:i.size?o[i.size]:"36px"};
|
|
6
|
+
gap: ${i=>i.gap||"12px"};
|
|
7
|
+
`,r=i.div`
|
|
8
8
|
display: flex;
|
|
9
|
-
flex-direction: ${
|
|
10
|
-
flex: ${
|
|
9
|
+
flex-direction: ${i=>"top"!==i.iconPosition?"left"===i.iconPosition?"row":"row-reverse":"column"};
|
|
10
|
+
flex: ${i=>i.matchParentWidth?1:"unset"};
|
|
11
11
|
height: 100%;
|
|
12
|
-
background: ${
|
|
12
|
+
background: ${i=>i.isActive?e.background.brandLight:i.backgroundColor};
|
|
13
13
|
border: 1px solid
|
|
14
|
-
${
|
|
15
|
-
border-radius: ${
|
|
14
|
+
${i=>i.isActive?e.background.inverseLight:e.stroke.primary};
|
|
15
|
+
border-radius: ${i=>i.borderRadius};
|
|
16
16
|
align-items: center;
|
|
17
17
|
justify-content: center;
|
|
18
|
-
padding: ${
|
|
19
|
-
gap: ${
|
|
18
|
+
padding: ${i=>i.size?t[i.size]:"8px 10px"};
|
|
19
|
+
gap: ${i=>i.iconGap?i.iconGap:i.iconPosition&&"top"!==i.iconPosition?"10px":"2px"};
|
|
20
20
|
.button {
|
|
21
21
|
align-items: center;
|
|
22
22
|
justify-content: center;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e,jsxs as t,Fragment as s}from"react/jsx-runtime";import i from"../../assets/icons/check.svg.js";import a from"../../assets/icons/checkCircle.svg.js";import n from"../../assets/icons/quotes.svg.js";import o from"../../assets/icons/WhiteStarFilled.svg.js";import{Button as r}from"../button/Button.js";import{NewSubscriptionStyled as l}from"./SubscriptionPlanStyled.js";import{Caption as c,TitleRegular as d,BodyCaption as h,TitleLarge as m,TitleSmall as p}from"../TypographyStyle.js";import{useCurrency as g}from"../../hooks/useCurreny.js";import{COLORS as b}from"../../constants/Theme.js";import{Tag as u}from"../tag/Tag.js";import{Tooltip as y}from"../tooltips/Tooltip.js";const j=j=>{var O;const{formatCurrency:f}=g(),v=j.showMonthlyOptions?j.features:j.annualFeatures||[],T=j.showMonthlyOptions?j.monthlyPlan:j.yearlyPlan,N=!j.isDisabled&&j.isMostPopular,x=j.showMonthlyOptions?j.code:null!==(O=j.yearlyCode)&&void 0!==O?O:j.code,{planName:P,isSelected:
|
|
1
|
+
import{jsx as e,jsxs as t,Fragment as s}from"react/jsx-runtime";import i from"../../assets/icons/check.svg.js";import a from"../../assets/icons/checkCircle.svg.js";import n from"../../assets/icons/quotes.svg.js";import o from"../../assets/icons/WhiteStarFilled.svg.js";import{Button as r}from"../button/Button.js";import{NewSubscriptionStyled as l}from"./SubscriptionPlanStyled.js";import{Caption as c,TitleRegular as d,BodyCaption as h,TitleLarge as m,TitleSmall as p}from"../TypographyStyle.js";import{useCurrency as g}from"../../hooks/useCurreny.js";import{COLORS as b}from"../../constants/Theme.js";import{Tag as u}from"../tag/Tag.js";import{Tooltip as y}from"../tooltips/Tooltip.js";const j=j=>{var O;const{formatCurrency:f}=g(),v=j.showMonthlyOptions?j.features:j.annualFeatures||[],T=j.showMonthlyOptions?j.monthlyPlan:j.yearlyPlan,N=!j.isDisabled&&j.isMostPopular,x=j.showMonthlyOptions?j.code:null!==(O=j.yearlyCode)&&void 0!==O?O:j.code,{planName:P,isSelected:S=!1,isDisabled:k=!1,onPlanSelect:C,oldPrice:M,hideMonthYearTag:w,planDescription:D,planDescriptionDiscount:L,showTrialOptions:F,freeTrialMessages:$,extraBlockMessage:z,isLoading:B,buttonText:H,bottomDescription:W,showMonthlyOptions:_,popularTestimony:I,skipRadioSelection:U=!1,includeText:Y,height:q,showFeaturesButton:A,businessDescription:R,isPlanSelected:E=!1,onClickShowAllFeatures:G,showSelectedPlanChip:J=!1,perMonthForYearly:K=!1,minHeightOfFeatures:Q,hoverTooltip:V}=j,X=e=>K&&!_?0==e?"$0":f(Math.round(e/12),"USD"):0==e?"$0":f(e,"USD");return e(y,Object.assign({body:V},{children:t(l,Object.assign({height:q,showMostPopularChip:N||!1,onClick:()=>C(x)},{children:[N&&t("div",Object.assign({className:"most-popular-chip"},{children:[e(c,Object.assign({className:"popular-text"},{children:"Most popular "})),e(o,{height:12,width:12})]})),t("div",Object.assign({className:`box ${k?"disabled":""} \n\t\t\t\t`},{children:[t("div",Object.assign({className:"radio-flex"},{children:[!U&&e("input",{type:"radio",id:"html",name:"fav_language",value:"HTML",disabled:null!=k&&k,onChange:()=>C(x),className:"radio-button",checked:E}),e(d,Object.assign({style:{color:b.content.secondary,marginBottom:4}},{children:P})),J&&e("div",Object.assign({style:{marginLeft:"auto"}},{children:e(u,{tagText:"Current plan",type:"positive",theme:"dark"})}))]})),t("div",Object.assign({className:"price-block"},{children:[M?e(h,Object.assign({className:"old--price"},{children:X(T.price)})):e(s,{}),e(m,Object.assign({style:{color:b.content.primary}},{children:X(M||T.price)})),e(c,Object.assign({style:{color:b.content.secondary,marginLeft:4}},{children:w?"":"/ "+(_?"month":K?"month billed annually":"year")}))]})),D&&t("div",Object.assign({className:"per-message-price"},{children:[e(h,Object.assign({style:{color:b.content.secondary}},{children:D})),L&&e(h,Object.assign({style:{color:b.background.positive.vibrant,marginLeft:4}},{children:L}))]})),R&&R.length&&e("div",Object.assign({style:{marginTop:4}},{children:R.map(((t,s)=>e(h,{style:{color:b.content.secondary},dangerouslySetInnerHTML:{__html:t}},s)))})),F&&t(c,Object.assign({className:"trial "+(S?"selected":"")},{children:["7 day free trial with ",$," messages"]})),z&&e(c,Object.assign({className:"trial "+(S?"selected":"")},{children:z})),e(p,Object.assign({className:"extra-include-margin",style:{height:Y?"":"20px"}},{children:Y||""})),e("div",Object.assign({className:"features",style:{minHeight:Q}},{children:v.map(((s,i)=>t("div",Object.assign({className:"feature"},{children:[e("div",{children:e(a,{height:20,width:20,color:b.content.primary})}),e(h,Object.assign({className:"feature-text"},{children:s.detail}),i)]}),s.detail)))})),A&&e(r,{isLoading:!1,buttonType:"tertiary",buttonText:"See all features",size:"small",onClick:e=>{e.stopPropagation(),G&&G()}}),U&&e("div",Object.assign({className:"button-box"},{children:B?e(r,{isLoading:!0,buttonType:"primary",buttonText:"Choose plan",size:"medium",matchParentWidth:!0}):t(s,{children:[S&&e(r,{disabled:k,LeadingIcon:i,buttonType:"tertiary",size:"medium",matchParentWidth:!0,buttonText:H||"Selected Plan"}),!S&&!k&&e(r,{buttonType:"primary",size:"medium",onClick:e=>{e.stopPropagation(),C(x)},matchParentWidth:!0,buttonText:H||"Choose plan"})]})})),I&&t("div",Object.assign({className:"popular-testimony"},{children:[e(n,{height:26,width:70}),e("div",Object.assign({className:"testimony-text"},{children:e("i",{children:I})}))]}))]})),W&&e("div",Object.assign({className:`plan-bottom-information\n\t\t\t\t\t${k?"disabled":""}\n\t\t\t\t\t${S?"selected":""}\n\t\t\t\t`},{children:e(c,Object.assign({className:"text",style:{color:b.background.inverse}},{children:W}))}))]}))}))};export{j as NewSubscriptionPlan};
|
|
@@ -31,7 +31,6 @@ export interface SubscriptionPlanProps {
|
|
|
31
31
|
hideMonthYearTag?: boolean;
|
|
32
32
|
buttonText?: string;
|
|
33
33
|
hoverTooltip?: string;
|
|
34
|
-
hidePriceBlock?: boolean;
|
|
35
34
|
}
|
|
36
35
|
type Props = SubscriptionPlanProps;
|
|
37
36
|
export declare const SubscriptionPlan: FunctionComponent<Props>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as e,jsx as t,Fragment as s}from"react/jsx-runtime";import i from"../../assets/icons/check.svg.js";import{Button as n}from"../button/Button.js";import{SubscriptionPlanStyled as a}from"./SubscriptionPlanStyled.js";import{Caption as c,TitleRegular as o,BodyCaption as r,TitleMedium as l,BodyPrimary as d}from"../TypographyStyle.js";import{useCurrency as m}from"../../hooks/useCurreny.js";import{COLORS as h}from"../../constants/Theme.js";const p=p=>{const{formatCurrency:b}=m(),g=p.showMonthlyOptions?p.features:p.annualFeatures||[],u=p.showMonthlyOptions?p.monthlyPlan:p.yearlyPlan,y=!p.isDisabled&&p.isMostPopular,j=e=>0==e?"$0":b(e,"USD");return e(a,Object.assign({isManifestPlan:!0,isSelected:p.isSelected||!1,style:{marginTop:y?0:24}},{children:[y&&t("div",Object.assign({className:"most-popular"},{children:t(c,Object.assign({className:"text"},{children:"Most popular ⭐️"}))})),e("div",Object.assign({className:`box ${p.isSelected?"selected":""} ${p.isDisabled?"disabled":""} ${y?"":"rounded-corners"}\n\t\t\t\t`},{children:[e("div",{children:[t(o,Object.assign({style:{color:h.content.secondary,marginBottom:4}},{children:p.planName})),
|
|
1
|
+
import{jsxs as e,jsx as t,Fragment as s}from"react/jsx-runtime";import i from"../../assets/icons/check.svg.js";import{Button as n}from"../button/Button.js";import{SubscriptionPlanStyled as a}from"./SubscriptionPlanStyled.js";import{Caption as c,TitleRegular as o,BodyCaption as r,TitleMedium as l,BodyPrimary as d}from"../TypographyStyle.js";import{useCurrency as m}from"../../hooks/useCurreny.js";import{COLORS as h}from"../../constants/Theme.js";const p=p=>{const{formatCurrency:b}=m(),g=p.showMonthlyOptions?p.features:p.annualFeatures||[],u=p.showMonthlyOptions?p.monthlyPlan:p.yearlyPlan,y=!p.isDisabled&&p.isMostPopular,j=e=>0==e?"$0":b(e,"USD");return e(a,Object.assign({isManifestPlan:!0,isSelected:p.isSelected||!1,style:{marginTop:y?0:24}},{children:[y&&t("div",Object.assign({className:"most-popular"},{children:t(c,Object.assign({className:"text"},{children:"Most popular ⭐️"}))})),e("div",Object.assign({className:`box ${p.isSelected?"selected":""} ${p.isDisabled?"disabled":""} ${y?"":"rounded-corners"}\n\t\t\t\t`},{children:[e("div",{children:[t(o,Object.assign({style:{color:h.content.secondary,marginBottom:4}},{children:p.planName})),e("div",Object.assign({className:"price-block"},{children:[p.oldPrice?t(r,Object.assign({className:"old--price"},{children:j(u.price)})):t(s,{}),t(l,Object.assign({style:{color:h.content.primary}},{children:p.oldPrice?j(p.oldPrice):j(u.price)})),t(d,Object.assign({style:{color:h.content.secondary,marginLeft:4}},{children:p.hideMonthYearTag?"":"/ "+(p.showMonthlyOptions?"month":"year")}))]})),e("div",Object.assign({className:"per-message-price"},{children:[p.planDescription&&t(r,Object.assign({style:{color:h.content.secondary}},{children:p.planDescription})),p.planDescriptionDiscount&&t(r,Object.assign({style:{color:h.background.positive.vibrant,marginLeft:4}},{children:p.planDescriptionDiscount}))]})),p.showTrialOptions&&e(c,Object.assign({className:"trial "+(p.isSelected?"selected":"")},{children:["7 day free trial with ",p.freeTrialMessages," messages"]})),p.extraBlockMessage&&t(c,Object.assign({className:"trial "+(p.isSelected?"selected":"")},{children:p.extraBlockMessage})),t("div",Object.assign({className:"features"},{children:g.map(((s,n)=>e("div",Object.assign({className:"feature"},{children:[t("div",{children:t(i,{height:12,width:12,color:h.content.primary})}),t(r,Object.assign({className:"feature-text"},{children:s.detail}),n)]}),s.detail)))}))]}),t("div",Object.assign({className:"button-box"},{children:p.isLoading?t(n,{isLoading:!0,buttonType:"primary",buttonText:"Choose plan",size:"medium",matchParentWidth:!0}):e(s,{children:[p.isSelected&&t(n,{disabled:p.isDisabled,LeadingIcon:i,buttonType:"tertiary",size:"medium",matchParentWidth:!0,buttonText:p.buttonText||"Selected Plan"}),!p.isSelected&&!p.isDisabled&&t(n,{buttonType:"primary",size:"medium",onClick:()=>p.onPlanSelect(p.code),matchParentWidth:!0,buttonText:p.buttonText||"Choose plan"})]})}))]})),p.bottomDescription&&t("div",Object.assign({className:`plan-bottom-information\n\t\t\t\t\t${p.isDisabled?"disabled":""}\n\t\t\t\t\t${p.isSelected?"selected":""}\n\t\t\t\t`},{children:t(c,Object.assign({className:"text",style:{color:h.background.inverse}},{children:p.bottomDescription}))}))]}))};export{p as SubscriptionPlan};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as
|
|
1
|
+
import{jsx as o,jsxs as t,Fragment as e}from"react/jsx-runtime";import r from"react-dom";import n from"../../assets/icons/cross.svg.js";import{Button as s}from"../button/Button.js";import{TitleMedium as i}from"../TypographyStyle.js";import{SideModalStyle as c,SideModalContainer as d,SideModalHeader as l,SideModalBody as a,SideModalFooter as h,FooterButtonWrapper as m}from"./SideModal.style.js";const p=p=>{var u;return r.createPortal(o(c,Object.assign({zIndex:p.zIndex,position:p.position},{children:t(d,Object.assign({width:p.width},{children:[t(l,Object.assign({headerStyle:Object.assign({},p.headerStyle)},{children:[(null==p?void 0:p.headerCustomComponent)||o(i,{children:p.header}),!p.hideCrossButton&&o(n,{width:24,height:24,onClick:p.onClose})]})),o(a,Object.assign({hideFooter:p.hideFooter,bodyStyle:Object.assign({},p.bodyStyle)},{children:p.children})),!0===p.hideFooter?null:t(h,Object.assign({footerDirection:p.footerDirection,footerStyle:Object.assign({},p.footerStyle)},{children:[(p.saveButtonProps||p.cancelButtonProps)&&t(m,Object.assign({footerDirection:p.footerDirection},{children:[p.saveButtonProps&&o(s,Object.assign({},p.saveButtonProps)),p.cancelButtonProps&&o(s,Object.assign({},p.cancelButtonProps))]})),p.footerCustomComponent?p.footerCustomComponent:o(e,{})]}))]}))})),null!==(u=p.element)&&void 0!==u?u:document.body)};export{p as SideModal};
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export declare const SideModalStyle: import("styled-components").StyledComponent<"div", any, {
|
|
2
2
|
zIndex?: number | undefined;
|
|
3
|
+
position?: "left" | "right" | undefined;
|
|
3
4
|
}, never>;
|
|
4
5
|
export declare const SideModalContainer: import("styled-components").StyledComponent<"div", any, {
|
|
5
6
|
width?: string | undefined;
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import e,{css as t}from"styled-components";import{COLORS as
|
|
1
|
+
import e,{css as t}from"styled-components";import{COLORS as i}from"../../constants/Theme.js";import{ComponentZindex as o}from"../../constants/zindex.js";const r=e.div`
|
|
2
2
|
position: fixed;
|
|
3
|
+
${e=>"left"===e.position?"left":"right"}: 0;
|
|
3
4
|
top: 0;
|
|
4
|
-
|
|
5
|
-
z-index: ${e=>e.zIndex||i.SIDE_MODAL};
|
|
5
|
+
z-index: ${e=>e.zIndex||o.SIDE_MODAL};
|
|
6
6
|
height: 100%;
|
|
7
7
|
width: 100%;
|
|
8
8
|
background-color: rgba(0, 0, 0, 0.4);
|
|
9
9
|
display: flex;
|
|
10
10
|
align-items: center;
|
|
11
|
-
justify-content: flex-end;
|
|
11
|
+
justify-content: ${e=>"left"===e.position?"flex-start":"flex-end"};
|
|
12
12
|
`,n=e.div`
|
|
13
13
|
height: 100%;
|
|
14
14
|
width: ${e=>e.width||"566px"};
|
|
15
|
-
background: ${
|
|
15
|
+
background: ${i.surface.standard};
|
|
16
16
|
position: relative;
|
|
17
17
|
display: flex;
|
|
18
18
|
flex-direction: column;
|
|
@@ -25,23 +25,23 @@ import e,{css as t}from"styled-components";import{COLORS as o}from"../../constan
|
|
|
25
25
|
flex-direction: row;
|
|
26
26
|
align-items: center;
|
|
27
27
|
justify-content: space-between;
|
|
28
|
-
background: ${
|
|
28
|
+
background: ${i.surface.standard};
|
|
29
29
|
padding: 0px 24px;
|
|
30
|
-
border-bottom: 1px solid ${
|
|
30
|
+
border-bottom: 1px solid ${i.stroke.primary};
|
|
31
31
|
svg:hover {
|
|
32
32
|
cursor: pointer;
|
|
33
|
-
background: ${
|
|
33
|
+
background: ${i.background.base};
|
|
34
34
|
border-radius: 4px;
|
|
35
35
|
}
|
|
36
|
-
${e=>{let{headerStyle:
|
|
37
|
-
${Object.keys(
|
|
36
|
+
${e=>{let{headerStyle:i}=e;return t`
|
|
37
|
+
${Object.keys(i).map((e=>`${e}: ${i[e]};`)).join("\n")}
|
|
38
38
|
`}}
|
|
39
39
|
`,s=e.div`
|
|
40
40
|
overflow-y: auto;
|
|
41
41
|
padding: 24px;
|
|
42
42
|
height: ${e=>e.hideFooter?"calc(100% - 60px)":"calc(100% - 120px)"};
|
|
43
|
-
${e=>{let{bodyStyle:
|
|
44
|
-
${Object.keys(
|
|
43
|
+
${e=>{let{bodyStyle:i}=e;return t`
|
|
44
|
+
${Object.keys(i).map((e=>`${e}: ${i[e]};`)).join("\n")}
|
|
45
45
|
`}}
|
|
46
46
|
`,a=e.div`
|
|
47
47
|
height: 60px;
|
|
@@ -52,11 +52,11 @@ import e,{css as t}from"styled-components";import{COLORS as o}from"../../constan
|
|
|
52
52
|
flex-direction: ${e=>e.footerDirection||"row"};
|
|
53
53
|
justify-content: space-between;
|
|
54
54
|
align-items: center;
|
|
55
|
-
background: ${
|
|
56
|
-
border-top: 1px solid ${
|
|
55
|
+
background: ${i.surface.standard};
|
|
56
|
+
border-top: 1px solid ${i.stroke.primary};
|
|
57
57
|
padding: 0px 24px;
|
|
58
|
-
${e=>{let{footerStyle:
|
|
59
|
-
${Object.keys(
|
|
58
|
+
${e=>{let{footerStyle:i}=e;return t`
|
|
59
|
+
${Object.keys(i).map((e=>`${e}: ${i[e]};`)).join("\n")}
|
|
60
60
|
`}}
|
|
61
61
|
`,p=e.div`
|
|
62
62
|
display: flex;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export interface TextPickerCategoryCardProps {
|
|
3
|
+
id: string;
|
|
4
|
+
name: string;
|
|
5
|
+
itemsCount: number;
|
|
6
|
+
selectedCount: number;
|
|
7
|
+
isOneDimensional: boolean;
|
|
8
|
+
isChecked: boolean;
|
|
9
|
+
isPartiallyChecked: boolean;
|
|
10
|
+
onCheck: (checked: boolean, e?: React.MouseEvent) => void;
|
|
11
|
+
onClick: (e: React.MouseEvent) => void;
|
|
12
|
+
}
|
|
13
|
+
export declare const TextPickerCategoryCard: React.FC<TextPickerCategoryCardProps>;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import{jsxs as e,jsx as t}from"react/jsx-runtime";import o from"../../assets/icons/chevronRight.svg.js";import i from"styled-components";import{COLORS as r}from"../../constants/Theme.js";import{CheckBox as s}from"../checkBox/CheckBox.js";import{IconButton as n}from"../icon-button/IconButton.js";import{Tag as c}from"../tag/Tag.js";import{BodyPrimary as l,BodyCaption as a}from"../TypographyStyle.js";const d=i.div`
|
|
2
|
+
height: 64px;
|
|
3
|
+
background-color: ${e=>{let{isSelected:t,isActive:o}=e;return t?r.background.positive.light:o?r.surface.hovered:r.surface.standard}};
|
|
4
|
+
border-bottom: 1px solid ${r.stroke.primary};
|
|
5
|
+
padding: 12px 24px;
|
|
6
|
+
display: flex;
|
|
7
|
+
align-items: center;
|
|
8
|
+
cursor: pointer;
|
|
9
|
+
transition: background 0.2s;
|
|
10
|
+
&:hover {
|
|
11
|
+
background-color: ${e=>{let{isSelected:t}=e;return t?r.background.positive.light:r.surface.hovered}};
|
|
12
|
+
}
|
|
13
|
+
`,m=i=>{let{id:m,name:h,itemsCount:p,selectedCount:g,isChecked:u,isOneDimensional:f,isPartiallyChecked:y,onCheck:k,onClick:x}=i;return e(d,Object.assign({isActive:u||y,isSelected:u,onClick:x},{children:[t(s,{isChecked:u||y,isPartiallyChecked:y&&!u,onValueChange:function(e,t,o){null==o||o.stopPropagation(),k(e,o)},style:{marginRight:16}}),e("div",Object.assign({style:{flex:1,display:"flex",flexDirection:"column"}},{children:[t(l,{children:h}),!f&&e(a,Object.assign({style:{color:r.text.secondary,fontSize:13}},{children:[p," document",1!==p?"s":""]}))]})),!!g&&t(c,{tagText:`${g} selected`,type:"positive",style:{marginLeft:12}}),!f&&t(n,{Icon:o,height:16,width:16,style:{marginLeft:8}})]}))};export{m as TextPickerCategoryCard};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import{jsx as t}from"react/jsx-runtime";import{Tag as e}from"../tag/Tag.js";import{BodyCaption as n}from"../TypographyStyle.js";import{COLORS as o}from"../../constants/Theme.js";import i from"styled-components";const r=i.div`
|
|
2
|
+
box-sizing: border-box;
|
|
3
|
+
width: 100%;
|
|
4
|
+
margin: 0;
|
|
5
|
+
display: flex;
|
|
6
|
+
justify-content: flex-start;
|
|
7
|
+
align-items: center;
|
|
8
|
+
`,s=i.div`
|
|
9
|
+
display: flex;
|
|
10
|
+
align-items: center;
|
|
11
|
+
`,c=i(n)`
|
|
12
|
+
color: ${t=>{let{$isInactive:e}=t;return e?o.content.inactive:o.content.brand}};
|
|
13
|
+
font-weight: 600;
|
|
14
|
+
font-size: 18px;
|
|
15
|
+
`,a=n=>{let{totalSelected:o,maxDocuments:i}=n;return t(r,{children:t(s,{children:i!==1/0&&o>i?t(e,{tagText:`You can only select ${i} documents`,type:"negative"}):t(c,Object.assign({$isInactive:0===o},{children:i!==1/0?`${o}/${i} documents selected`:`${o} documents selected`}))})})};export{a as TextPickerFooter};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export interface TextPickerItemRowProps {
|
|
3
|
+
item: {
|
|
4
|
+
id: string;
|
|
5
|
+
name: string;
|
|
6
|
+
};
|
|
7
|
+
selected: boolean;
|
|
8
|
+
onCheck: (checked: boolean) => void;
|
|
9
|
+
onClick: () => void;
|
|
10
|
+
}
|
|
11
|
+
export declare const TextPickerItemRow: React.FC<TextPickerItemRowProps>;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import{jsxs as e,jsx as r}from"react/jsx-runtime";import t from"styled-components";import{COLORS as i}from"../../constants/Theme.js";import{CheckBox as n}from"../checkBox/CheckBox.js";import{BodyPrimary as o}from"../TypographyStyle.js";const c=t.div`
|
|
2
|
+
min-height: 48px;
|
|
3
|
+
background: ${e=>{let{selected:r}=e;return r?i.surface.hovered:i.surface.standard}};
|
|
4
|
+
border-bottom: 1px solid ${i.stroke.primary};
|
|
5
|
+
padding: 12px 24px;
|
|
6
|
+
display: flex;
|
|
7
|
+
align-items: center;
|
|
8
|
+
cursor: pointer;
|
|
9
|
+
`,s=t.div`
|
|
10
|
+
margin-right: 16px;
|
|
11
|
+
display: flex;
|
|
12
|
+
flex-direction: column;
|
|
13
|
+
justify-content: center;
|
|
14
|
+
align-items: center;
|
|
15
|
+
`,l=t.div`
|
|
16
|
+
flex: 1;
|
|
17
|
+
`,d=t=>{let{item:i,selected:d,onCheck:m,onClick:a}=t;return e(c,Object.assign({selected:d,onClick:a},{children:[r(s,{children:r(n,{isChecked:d,onValueChange:m})}),r(l,{children:r(o,{children:i.name})})]}))};export{d as TextPickerItemRow};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { ButtonProps } from '../button/model';
|
|
3
|
+
export interface TextPickerCategory {
|
|
4
|
+
id: string;
|
|
5
|
+
name: string;
|
|
6
|
+
items: {
|
|
7
|
+
id: string;
|
|
8
|
+
name: string;
|
|
9
|
+
}[];
|
|
10
|
+
}
|
|
11
|
+
export interface TextPickerProps {
|
|
12
|
+
visible: boolean;
|
|
13
|
+
isOneDimensional?: boolean;
|
|
14
|
+
categories: TextPickerCategory[];
|
|
15
|
+
selectedItems: {
|
|
16
|
+
[categoryId: string]: string[];
|
|
17
|
+
};
|
|
18
|
+
onAdd: (selected: {
|
|
19
|
+
[categoryId: string]: string[];
|
|
20
|
+
}) => void;
|
|
21
|
+
onClose?: () => void;
|
|
22
|
+
title?: string;
|
|
23
|
+
subtitle?: string;
|
|
24
|
+
width?: string;
|
|
25
|
+
zIndex?: number;
|
|
26
|
+
maxDocuments?: number;
|
|
27
|
+
primaryButton?: ButtonProps;
|
|
28
|
+
secondaryButton?: ButtonProps;
|
|
29
|
+
}
|
|
30
|
+
export declare const TextPickerModal: React.FC<TextPickerProps>;
|