intelicoreact 1.8.6 → 1.8.7
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/Atomic/FormElements/Dropdown/components/DropdownLoader.jsx +1 -18
- package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN_old.jsx +1 -121
- package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.jsx +1 -507
- package/dist/Atomic/FormElements/MultiSelect/MultiSelect.jsx +1 -46
- package/dist/Atomic/FormElements/NumericInput/NumericInput.jsx +1 -337
- package/dist/Atomic/FormElements/RadioGroup/RadioGroup.jsx +1 -66
- package/dist/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.jsx +1 -78
- package/dist/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.jsx +1 -54
- package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.jsx +1 -183
- package/dist/Atomic/FormElements/RangeList/RangeList.jsx +1 -181
- package/dist/Atomic/FormElements/RangeList/partial/RangeListRow.jsx +1 -41
- package/dist/Atomic/FormElements/RangeSlider/RangeSlider.jsx +1 -449
- package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.jsx +1 -865
- package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.jsx +1 -37
- package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.jsx +1 -48
- package/dist/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.jsx +1 -62
- package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.jsx +1 -175
- package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.jsx +1 -65
- package/dist/Atomic/FormElements/TagListToDropdown/TagListToDropdown.jsx +1 -118
- package/dist/Atomic/FormElements/Text/Text.jsx +1 -126
- package/dist/Atomic/FormElements/Textarea/Textarea.jsx +1 -61
- package/dist/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.jsx +1 -181
- package/dist/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.jsx +1 -60
- package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.jsx +1 -83
- package/dist/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.jsx +1 -80
- package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.jsx +1 -103
- package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.jsx +1 -115
- package/dist/Atomic/Layout/Header/Header.jsx +1 -86
- package/dist/Atomic/Layout/MainMenu/MainMenu.jsx +1 -164
- package/dist/Atomic/UI/AccordionTable/AccordionTable.jsx +1 -250
- package/dist/Atomic/UI/AccordionText/AccordionText.jsx +1 -68
- package/dist/Atomic/UI/Arrow/Arrow.jsx +1 -134
- package/dist/Atomic/UI/Box/Box.jsx +1 -53
- package/dist/Atomic/UI/Chart/Chart.jsx +1 -178
- package/dist/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.jsx +1 -78
- package/dist/Atomic/UI/Chart/partial/optionsConstructor.jsx +1 -334
- package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.jsx +1 -111
- package/dist/Atomic/UI/DateTime/DateTime.jsx +1 -57
- package/dist/Atomic/UI/DebugContainer/DebugContainer.jsx +1 -44
- package/dist/Atomic/UI/DebugContainer/useDebugContainer.jsx +1 -15
- package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.jsx +1 -223
- package/dist/Atomic/UI/MonoAccordion/MonoAccordion._test.jsx +1 -75
- package/dist/Atomic/UI/MonoAccordion/MonoAccordion.jsx +1 -86
- package/dist/Atomic/UI/PieChart/PieChart.jsx +1 -41
- package/dist/Atomic/UI/Table/Partials/TdCell.jsx +1 -87
- package/dist/Atomic/UI/Table/Partials/TdHeader.jsx +1 -36
- package/dist/Atomic/UI/Table/Partials/TdRow.jsx +1 -103
- package/dist/Atomic/UI/Table/Partials/TdTitle.jsx +1 -55
- package/dist/Atomic/UI/Table/Table.jsx +1 -63
- package/dist/Atomic/UI/Table/TdTypes/TdActions.jsx +1 -80
- package/dist/Atomic/UI/Table/TdTypes/TdPriority.jsx +1 -26
- package/dist/Atomic/UI/Table/TdTypes/TdRange.jsx +1 -13
- package/dist/Atomic/UI/Table/TdTypes/TdWeight.jsx +1 -56
- package/dist/Atomic/UI/TagList/TagList.jsx +1 -256
- package/dist/Atomic/UI/WizardStepper/constructor.jsx +1 -86
- package/dist/Classes/RESTAPI/partials/CredentialsProcessing.jsx +1 -254
- package/dist/Functions/customEventListener.jsx +1 -96
- package/dist/Functions/operations.jsx +1 -138
- package/dist/Functions/useFormTools/functions/RenderFields.jsx +1 -108
- package/dist/Functions/useFormTools/index.jsx +1 -777
- package/dist/Functions/usePasswordChecker.jsx +1 -128
- package/dist/Functions/utils.jsx +1 -492
- package/dist/Molecular/CustomIcons/components/AffiliateNetworks.jsx +1 -22
- package/dist/Molecular/CustomIcons/components/AlertCircle.jsx +1 -24
- package/dist/Molecular/CustomIcons/components/AppStore.jsx +1 -30
- package/dist/Molecular/CustomIcons/components/Arrow.jsx +1 -33
- package/dist/Molecular/CustomIcons/components/ArrowDown.jsx +1 -18
- package/dist/Molecular/CustomIcons/components/ArrowLeft.jsx +1 -23
- package/dist/Molecular/CustomIcons/components/ArrowRight.jsx +1 -23
- package/dist/Molecular/CustomIcons/components/ArrowUp.jsx +1 -18
- package/dist/Molecular/CustomIcons/components/Bell.jsx +1 -16
- package/dist/Molecular/CustomIcons/components/Button.jsx +1 -13
- package/dist/Molecular/CustomIcons/components/Campaigns.jsx +1 -17
- package/dist/Molecular/CustomIcons/components/Check.jsx +1 -15
- package/dist/Molecular/CustomIcons/components/Check2.jsx +1 -13
- package/dist/Molecular/CustomIcons/components/ChevronDown.jsx +1 -13
- package/dist/Molecular/CustomIcons/components/ChevronDownDisabled.jsx +1 -12
- package/dist/Molecular/CustomIcons/components/ChevronLeft.jsx +1 -12
- package/dist/Molecular/CustomIcons/components/ChevronRight.jsx +1 -12
- package/dist/Molecular/CustomIcons/components/ChevronUp.jsx +1 -12
- package/dist/Molecular/CustomIcons/components/ChevronUpDown.jsx +1 -28
- package/dist/Molecular/CustomIcons/components/Close.jsx +1 -15
- package/dist/Molecular/CustomIcons/components/ColumnsOrder.jsx +1 -18
- package/dist/Molecular/CustomIcons/components/Delete.jsx +1 -17
- package/dist/Molecular/CustomIcons/components/Edit.jsx +1 -16
- package/dist/Molecular/CustomIcons/components/Email.jsx +1 -32
- package/dist/Molecular/CustomIcons/components/FinturfLogo.jsx +1 -19
- package/dist/Molecular/CustomIcons/components/FinturfLogo2.jsx +1 -36
- package/dist/Molecular/CustomIcons/components/Flows.jsx +1 -16
- package/dist/Molecular/CustomIcons/components/Gift.jsx +1 -26
- package/dist/Molecular/CustomIcons/components/GoogleAuth.jsx +1 -30
- package/dist/Molecular/CustomIcons/components/GooglePlay.jsx +1 -30
- package/dist/Molecular/CustomIcons/components/HelpCircle.jsx +1 -20
- package/dist/Molecular/CustomIcons/components/HelpCircle2.jsx +1 -21
- package/dist/Molecular/CustomIcons/components/HelpCircleFilled.jsx +1 -20
- package/dist/Molecular/CustomIcons/components/Home.jsx +1 -17
- package/dist/Molecular/CustomIcons/components/Home2.jsx +1 -23
- package/dist/Molecular/CustomIcons/components/Key.jsx +1 -24
- package/dist/Molecular/CustomIcons/components/Landers.jsx +1 -21
- package/dist/Molecular/CustomIcons/components/Lock.jsx +1 -16
- package/dist/Molecular/CustomIcons/components/Mail.jsx +1 -27
- package/dist/Molecular/CustomIcons/components/Mastercard.jsx +1 -74
- package/dist/Molecular/CustomIcons/components/Minus.jsx +1 -26
- package/dist/Molecular/CustomIcons/components/Offers.jsx +1 -17
- package/dist/Molecular/CustomIcons/components/Pause.jsx +1 -29
- package/dist/Molecular/CustomIcons/components/PayPal.jsx +1 -42
- package/dist/Molecular/CustomIcons/components/PayPalLightLarge.jsx +1 -29
- package/dist/Molecular/CustomIcons/components/Phone.jsx +1 -31
- package/dist/Molecular/CustomIcons/components/Play.jsx +1 -26
- package/dist/Molecular/CustomIcons/components/Plus.jsx +1 -26
- package/dist/Molecular/CustomIcons/components/Profile.jsx +1 -17
- package/dist/Molecular/CustomIcons/components/QRCode.jsx +1 -30
- package/dist/Molecular/CustomIcons/components/Rectangle.jsx +1 -13
- package/dist/Molecular/CustomIcons/components/Revert.jsx +1 -14
- package/dist/Molecular/CustomIcons/components/Star.jsx +1 -15
- package/dist/Molecular/CustomIcons/components/Star2.jsx +1 -17
- package/dist/Molecular/CustomIcons/components/TrafficSources.jsx +1 -15
- package/dist/Molecular/CustomIcons/components/Trash.jsx +1 -16
- package/dist/Molecular/CustomIcons/components/TrashRed.jsx +1 -16
- package/dist/Molecular/CustomIcons/components/Triggers.jsx +1 -16
- package/dist/Molecular/CustomIcons/components/User.jsx +1 -26
- package/dist/Molecular/CustomIcons/components/Visa.jsx +1 -32
- package/dist/Molecular/CustomIcons/components/X.jsx +1 -13
- package/dist/Molecular/FormElement/FormElement.jsx +1 -52
- package/dist/Molecular/FormWithDependOn/FormWithDependOn.jsx +1 -161
- package/dist/Molecular/InputAddress/InputAddress.jsx +1 -641
- package/dist/Molecular/InputPassword/InputPassword.jsx +1 -50
- package/package.json +1 -1
- package/dist/Atomic/FormElements/RangeInputs/RangeInputs.d.ts +0 -5
- package/dist/Atomic/FormElements/RangeInputs/RangeInputs.js.map +0 -1
- /package/dist/Atomic/FormElements/ActionAlert/{ActionAlert.js → ActionAlert.jsx} +0 -0
- /package/dist/Atomic/FormElements/AdvancedStatus/{AdvancedStatus.js → AdvancedStatus.jsx} +0 -0
- /package/dist/Atomic/FormElements/Calendar/{Calendar.js → Calendar.jsx} +0 -0
- /package/dist/Atomic/FormElements/Calendar/{Calendar.props.js → Calendar.props.jsx} +0 -0
- /package/dist/Atomic/FormElements/CheckboxInput/{CheckboxInput.js → CheckboxInput.jsx} +0 -0
- /package/dist/Atomic/FormElements/CheckboxesLine/{CheckboxesLine.js → CheckboxesLine.jsx} +0 -0
- /package/dist/Atomic/FormElements/Datepicker/{Datepicker.js → Datepicker.jsx} +0 -0
- /package/dist/Atomic/FormElements/Datepicker/{Datepicker.props.js → Datepicker.props.jsx} +0 -0
- /package/dist/Atomic/FormElements/Datepicker/components/{DatepickerCalendar.js → DatepickerCalendar.jsx} +0 -0
- /package/dist/Atomic/FormElements/Datepicker/components/{DatepickerCalendar.props.js → DatepickerCalendar.props.jsx} +0 -0
- /package/dist/Atomic/FormElements/Dropdown/{Dropdown.js → Dropdown.jsx} +0 -0
- /package/dist/Atomic/FormElements/DropdownLiveSearch/{DropdownLiveSearch.js → DropdownLiveSearch.jsx} +0 -0
- /package/dist/Atomic/FormElements/FileLoader/{FileLoader.js → FileLoader.jsx} +0 -0
- /package/dist/Atomic/FormElements/FileLoader/partial/{LoadZone.js → LoadZone.jsx} +0 -0
- /package/dist/Atomic/FormElements/FileLoader/partial/{LoadedContent.js → LoadedContent.jsx} +0 -0
- /package/dist/Atomic/FormElements/FileLoaderDescription/{FileLoaderDescription.js → FileLoaderDescription.jsx} +0 -0
- /package/dist/Atomic/FormElements/FileLoaderLocal/{FileLoaderLocal.js → FileLoaderLocal.jsx} +0 -0
- /package/dist/Atomic/FormElements/FileLoaderLocalGroup/{FileLoaderLocalGroup.js → FileLoaderLocalGroup.jsx} +0 -0
- /package/dist/Atomic/FormElements/FormattedRawSSN/{FormattedRawSSN.js → FormattedRawSSN.jsx} +0 -0
- /package/dist/Atomic/FormElements/Input/{Input.js → Input.jsx} +0 -0
- /package/dist/Atomic/FormElements/Input/hooks/{useErrorBlink.js → useErrorBlink.jsx} +0 -0
- /package/dist/Atomic/FormElements/Input/hooks/{useInputFocus.js → useInputFocus.jsx} +0 -0
- /package/dist/Atomic/FormElements/Input/hooks/{useInputHover.js → useInputHover.jsx} +0 -0
- /package/dist/Atomic/FormElements/Input/hooks/{useInputValueProcessing.js → useInputValueProcessing.jsx} +0 -0
- /package/dist/Atomic/FormElements/Input/hooks/{useKeyboardHandling.js → useKeyboardHandling.jsx} +0 -0
- /package/dist/Atomic/FormElements/Input/lib/{autocomplete.js → autocomplete.jsx} +0 -0
- /package/dist/Atomic/FormElements/Input/{types.js → types.jsx} +0 -0
- /package/dist/Atomic/FormElements/InputCalendar/{InputCalendar.js → InputCalendar.jsx} +0 -0
- /package/dist/Atomic/FormElements/InputColor/{InputColor.js → InputColor.jsx} +0 -0
- /package/dist/Atomic/FormElements/InputCurrency/{InputCurrency.js → InputCurrency.jsx} +0 -0
- /package/dist/Atomic/FormElements/InputDateRange/{InputDateRange.js → InputDateRange.jsx} +0 -0
- /package/dist/Atomic/FormElements/InputDateRange/components/{DateInput.js → DateInput.jsx} +0 -0
- /package/dist/Atomic/FormElements/InputDateRange/components/{Datepicker.js → Datepicker.jsx} +0 -0
- /package/dist/Atomic/FormElements/InputDateRange/components/{OpenedPart.js → OpenedPart.jsx} +0 -0
- /package/dist/Atomic/FormElements/InputDateRange/components/{SelectItem.js → SelectItem.jsx} +0 -0
- /package/dist/Atomic/FormElements/InputDateRange/{dependencies.js → dependencies.jsx} +0 -0
- /package/dist/Atomic/FormElements/InputLink/{InputLink.js → InputLink.jsx} +0 -0
- /package/dist/Atomic/FormElements/InputMask/{InputMask.js → InputMask.jsx} +0 -0
- /package/dist/Atomic/FormElements/InputMask3/{InputMask3.js → InputMask3.jsx} +0 -0
- /package/dist/Atomic/FormElements/InputMask3/{config.js → config.jsx} +0 -0
- /package/dist/Atomic/FormElements/InputMask3/{functions.js → functions.jsx} +0 -0
- /package/dist/Atomic/FormElements/InputWithAction/{InputWithAction.js → InputWithAction.jsx} +0 -0
- /package/dist/Atomic/FormElements/InputsRow/{InputsRow.js → InputsRow.jsx} +0 -0
- /package/dist/Atomic/FormElements/Label/{Label.js → Label.jsx} +0 -0
- /package/dist/Atomic/FormElements/RadioInput/{RadioInput.js → RadioInput.jsx} +0 -0
- /package/dist/Atomic/FormElements/RangeInputs/{RangeInputs.js → RangeInputs.jsx} +0 -0
- /package/dist/Atomic/FormElements/Switcher/{Switcher.js → Switcher.jsx} +0 -0
- /package/dist/Atomic/FormElements/SwitcherHide/{SwitcherHide.js → SwitcherHide.jsx} +0 -0
- /package/dist/Atomic/FormElements/SwitcherRadio/{SwitcherRadio.js → SwitcherRadio.jsx} +0 -0
- /package/dist/Atomic/FormElements/SwitcherRange/{SwitcherRange.js → SwitcherRange.jsx} +0 -0
- /package/dist/Atomic/FormElements/TagsDropdown/{TagsDropdown.js → TagsDropdown.jsx} +0 -0
- /package/dist/Atomic/FormElements/TextSwitcher/{TextSwitcher.js → TextSwitcher.jsx} +0 -0
- /package/dist/Atomic/FormElements/TimeRange/{TimeRange.js → TimeRange.jsx} +0 -0
- /package/dist/Atomic/FormElements/UserContacts/{UserContacts.js → UserContacts.jsx} +0 -0
- /package/dist/Atomic/Layout/Spinner/{Spinner.js → Spinner.jsx} +0 -0
- /package/dist/Atomic/UI/Accordion/{Accordion.js → Accordion.jsx} +0 -0
- /package/dist/Atomic/UI/Accordion/{AccordionItem.js → AccordionItem.jsx} +0 -0
- /package/dist/Atomic/UI/AdvancedTag/{AdvTag.js → AdvTag.jsx} +0 -0
- /package/dist/Atomic/UI/AdvancedTag/{AdvancedTags.js → AdvancedTags.jsx} +0 -0
- /package/dist/Atomic/UI/Alert/{Alert.js → Alert.jsx} +0 -0
- /package/dist/Atomic/UI/Button/{Button.js → Button.jsx} +0 -0
- /package/dist/Atomic/UI/ButtonsBar/{ButtonsBar.js → ButtonsBar.jsx} +0 -0
- /package/dist/Atomic/UI/DoubleString/{DoubleString.js → DoubleString.jsx} +0 -0
- /package/dist/Atomic/UI/DynamicIcon/{DynamicIcon.js → DynamicIcon.jsx} +0 -0
- /package/dist/Atomic/UI/Hint/{Hint.js → Hint.jsx} +0 -0
- /package/dist/Atomic/UI/Hint/partials/{_constants.js → _constants.jsx} +0 -0
- /package/dist/Atomic/UI/Hint/partials/{_utils.js → _utils.jsx} +0 -0
- /package/dist/Atomic/UI/Modal/{Modal.js → Modal.jsx} +0 -0
- /package/dist/Atomic/UI/Modal/{ModalHOC.js → ModalHOC.jsx} +0 -0
- /package/dist/Atomic/UI/Modal/partials/{ModalFooter.js → ModalFooter.jsx} +0 -0
- /package/dist/Atomic/UI/Modal/partials/{ModalTitle.js → ModalTitle.jsx} +0 -0
- /package/dist/Atomic/UI/Modal/partials/{_constants.js → _constants.jsx} +0 -0
- /package/dist/Atomic/UI/Modal/partials/{_utils.js → _utils.jsx} +0 -0
- /package/dist/Atomic/UI/Modal/partials/{useMobileModal.js → useMobileModal.jsx} +0 -0
- /package/dist/Atomic/UI/NavLine/{NavLine.js → NavLine.jsx} +0 -0
- /package/dist/Atomic/UI/PageTitle/{PageTitle.js → PageTitle.jsx} +0 -0
- /package/dist/Atomic/UI/Price/{Price.js → Price.jsx} +0 -0
- /package/dist/Atomic/UI/PriceRange/{PriceRange.js → PriceRange.jsx} +0 -0
- /package/dist/Atomic/UI/ProgressLine/{ProgressLine.js → ProgressLine.jsx} +0 -0
- /package/dist/Atomic/UI/Status/{Status.js → Status.jsx} +0 -0
- /package/dist/Atomic/UI/Tag/{Tag.js → Tag.jsx} +0 -0
- /package/dist/Atomic/UI/UserBox/{UserBox.js → UserBox.jsx} +0 -0
- /package/dist/Atomic/UI/WizardStepper/ui/StateIcon/{StateIcon.js → StateIcon.jsx} +0 -0
- /package/dist/Atomic/UI/WizardStepper/ui/StepRow/{StepRow.js → StepRow.jsx} +0 -0
- /package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/{StepWrapper.js → StepWrapper.jsx} +0 -0
- /package/dist/Atomic/UI/WizardStepper/ui/{icons.js → icons.jsx} +0 -0
- /package/dist/Functions/guards/{assertions.js → assertions.jsx} +0 -0
- /package/dist/Functions/guards/{safeValue.js → safeValue.jsx} +0 -0
- /package/dist/Functions/guards/{typeGuards.js → typeGuards.jsx} +0 -0
- /package/dist/Functions/useIsMobile/{useIsMobile.js → useIsMobile.jsx} +0 -0
- /package/dist/Functions/useKeyPress/{useHandleKeyPress.js → useHandleKeyPress.jsx} +0 -0
- /package/dist/Functions/useKeyPress/{useKeyPress.js → useKeyPress.jsx} +0 -0
- /package/dist/Functions/utils/{disableDefaultBehavior.js → disableDefaultBehavior.jsx} +0 -0
- /package/dist/Functions/utils/{getLimitedMask.js → getLimitedMask.jsx} +0 -0
- /package/dist/types/declaration/TWithEventManagementAsObj/innerTypes/{Modal.js → Modal.jsx} +0 -0
|
@@ -1,223 +1 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
import { useLayoutEffect, useMemo, useState } from 'react';
|
|
4
|
-
|
|
5
|
-
import { formatToPriceWithUSD } from '../../../Functions/fieldValueFormatters';
|
|
6
|
-
import { clone } from '../../../Functions/utils';
|
|
7
|
-
import InputDateRange from '../../FormElements/InputDateRange/InputDateRange';
|
|
8
|
-
import Chart from '../Chart/Chart';
|
|
9
|
-
|
|
10
|
-
import {
|
|
11
|
-
getLabels,
|
|
12
|
-
getMockValue,
|
|
13
|
-
getSafelyDateRange,
|
|
14
|
-
getTab,
|
|
15
|
-
} from './partial/utils';
|
|
16
|
-
|
|
17
|
-
import './partial/AnyOuterClass.scss';
|
|
18
|
-
|
|
19
|
-
function ExampleChartIntegration(props) {
|
|
20
|
-
const { inputDateRangeProps, chartProps } = props || {};
|
|
21
|
-
const { value: outerDateRange, onChange: changeDateRange }
|
|
22
|
-
= inputDateRangeProps || {};
|
|
23
|
-
const { initialChartType } = chartProps || {};
|
|
24
|
-
const dateRange = useMemo(
|
|
25
|
-
() => getSafelyDateRange(outerDateRange),
|
|
26
|
-
[outerDateRange],
|
|
27
|
-
);
|
|
28
|
-
|
|
29
|
-
const [chartType, setChartType] = useState(initialChartType || 'Bar');
|
|
30
|
-
const [tab, setTab] = useState('tab1');
|
|
31
|
-
const [initialModel, setInitialModel] = useState(
|
|
32
|
-
chartType === 'Bar' ? 'finturfLoadingModeBar' : 'finturfLoadingModeLine',
|
|
33
|
-
);
|
|
34
|
-
|
|
35
|
-
const [tab1, setTab1] = useState(null);
|
|
36
|
-
const [tab2, setTab2] = useState(null);
|
|
37
|
-
const [tab3, setTab3] = useState(null);
|
|
38
|
-
const [tab4, setTab4] = useState(null);
|
|
39
|
-
|
|
40
|
-
const [dataForRender, setDataForRender] = useState(null);
|
|
41
|
-
|
|
42
|
-
const getMockData = () => {
|
|
43
|
-
const labels = getLabels(dateRange);
|
|
44
|
-
const mock = () => labels.map(label => getMockValue());
|
|
45
|
-
return {
|
|
46
|
-
labels,
|
|
47
|
-
datasets: [
|
|
48
|
-
{
|
|
49
|
-
data: mock(),
|
|
50
|
-
},
|
|
51
|
-
],
|
|
52
|
-
};
|
|
53
|
-
};
|
|
54
|
-
|
|
55
|
-
const getTabData = (tabId) => {
|
|
56
|
-
switch (tabId) {
|
|
57
|
-
case 'tab1':
|
|
58
|
-
return !tab1 ? null : clone(tab1);
|
|
59
|
-
case 'tab2':
|
|
60
|
-
return !tab2 ? null : clone(tab2);
|
|
61
|
-
case 'tab3':
|
|
62
|
-
return !tab3 ? null : clone(tab3);
|
|
63
|
-
case 'tab4':
|
|
64
|
-
return !tab4 ? null : clone(tab4);
|
|
65
|
-
default:
|
|
66
|
-
return null;
|
|
67
|
-
}
|
|
68
|
-
};
|
|
69
|
-
|
|
70
|
-
const getDescription = (tabId) => {
|
|
71
|
-
switch (tabId) {
|
|
72
|
-
case 'tab1':
|
|
73
|
-
return 'Tab 1';
|
|
74
|
-
case 'tab2':
|
|
75
|
-
return 'Tab 2';
|
|
76
|
-
case 'tab3':
|
|
77
|
-
return 'Tab 3';
|
|
78
|
-
case 'tab4':
|
|
79
|
-
return 'Tab 4';
|
|
80
|
-
default:
|
|
81
|
-
return null;
|
|
82
|
-
}
|
|
83
|
-
};
|
|
84
|
-
|
|
85
|
-
const selectData = () => (getTabData(tab) ? getTabData(tab) : getMockData());
|
|
86
|
-
|
|
87
|
-
const modelsForSwitch = useMemo(
|
|
88
|
-
() =>
|
|
89
|
-
getTabData(tab)
|
|
90
|
-
? ['finturfChartBar', 'finturfChartLine']
|
|
91
|
-
: ['finturfLoadingModeBar', 'finturfLoadingModeLine'],
|
|
92
|
-
[Boolean(getTabData(tab))],
|
|
93
|
-
);
|
|
94
|
-
|
|
95
|
-
const handleChangeChartType = (model) => {
|
|
96
|
-
setChartType(model.includes('Line') ? 'Line' : 'Bar');
|
|
97
|
-
setInitialModel(model);
|
|
98
|
-
};
|
|
99
|
-
|
|
100
|
-
const getModel = () => {
|
|
101
|
-
if (!getTabData(tab)) {
|
|
102
|
-
return chartType === 'Bar'
|
|
103
|
-
? 'finturfLoadingModeBar'
|
|
104
|
-
: 'finturfLoadingModeLine';
|
|
105
|
-
}
|
|
106
|
-
else {
|
|
107
|
-
return chartType === 'Bar' ? 'finturfChartBar' : 'finturfChartLine';
|
|
108
|
-
}
|
|
109
|
-
};
|
|
110
|
-
|
|
111
|
-
const processResponse = (res, tabId) => {
|
|
112
|
-
switch (tabId) {
|
|
113
|
-
case 'tab1':
|
|
114
|
-
setTab1(res);
|
|
115
|
-
break;
|
|
116
|
-
case 'tab2':
|
|
117
|
-
setTab2(res);
|
|
118
|
-
break;
|
|
119
|
-
case 'tab3':
|
|
120
|
-
setTab3(res);
|
|
121
|
-
break;
|
|
122
|
-
case 'tab4':
|
|
123
|
-
setTab4(res);
|
|
124
|
-
break;
|
|
125
|
-
default:
|
|
126
|
-
break;
|
|
127
|
-
}
|
|
128
|
-
return res;
|
|
129
|
-
};
|
|
130
|
-
|
|
131
|
-
useLayoutEffect(() => {
|
|
132
|
-
setTab1(null);
|
|
133
|
-
setTab2(null);
|
|
134
|
-
setTab3(null);
|
|
135
|
-
setTab4(null);
|
|
136
|
-
|
|
137
|
-
// эмуляция запросов
|
|
138
|
-
// вся логика происходит в самих входящих промисах
|
|
139
|
-
// Promise.all добавлен для расширения на случай надобности описания эффектов по завершении всех запросов
|
|
140
|
-
Promise.all([
|
|
141
|
-
getTab('tab1', dateRange, processResponse),
|
|
142
|
-
getTab('tab2', dateRange, processResponse),
|
|
143
|
-
getTab('tab3', dateRange, processResponse),
|
|
144
|
-
getTab('tab4', dateRange, processResponse),
|
|
145
|
-
]);
|
|
146
|
-
}, [dateRange]);
|
|
147
|
-
|
|
148
|
-
useLayoutEffect(() => {
|
|
149
|
-
setInitialModel(getModel());
|
|
150
|
-
setDataForRender(selectData());
|
|
151
|
-
}, [Boolean(getTabData(tab)), tab, chartType]);
|
|
152
|
-
|
|
153
|
-
return (
|
|
154
|
-
<div className="example-wrapper">
|
|
155
|
-
<InputDateRange
|
|
156
|
-
{...inputDateRangeProps}
|
|
157
|
-
value={outerDateRange}
|
|
158
|
-
onChange={changeDateRange}
|
|
159
|
-
/>
|
|
160
|
-
|
|
161
|
-
<div className="buttons-block">
|
|
162
|
-
<button
|
|
163
|
-
className={cn('tab-button', { 'tab-button_active': tab === 'tab1' })}
|
|
164
|
-
onClick={() => setTab('tab1')}
|
|
165
|
-
>
|
|
166
|
-
Tab 1
|
|
167
|
-
</button>
|
|
168
|
-
<button
|
|
169
|
-
className={cn('tab-button', { 'tab-button_active': tab === 'tab2' })}
|
|
170
|
-
onClick={() => setTab('tab2')}
|
|
171
|
-
>
|
|
172
|
-
Tab 2
|
|
173
|
-
</button>
|
|
174
|
-
<button
|
|
175
|
-
className={cn('tab-button', { 'tab-button_active': tab === 'tab3' })}
|
|
176
|
-
onClick={() => setTab('tab3')}
|
|
177
|
-
>
|
|
178
|
-
Tab 3
|
|
179
|
-
</button>
|
|
180
|
-
<button
|
|
181
|
-
className={cn('tab-button', { 'tab-button_active': tab === 'tab4' })}
|
|
182
|
-
onClick={() => setTab('tab4')}
|
|
183
|
-
>
|
|
184
|
-
Tab 4
|
|
185
|
-
</button>
|
|
186
|
-
</div>
|
|
187
|
-
|
|
188
|
-
<Chart
|
|
189
|
-
{...chartProps}
|
|
190
|
-
key={JSON.stringify(dataForRender)}
|
|
191
|
-
data={dataForRender}
|
|
192
|
-
setModelExternalValue={handleChangeChartType}
|
|
193
|
-
initialModel={initialModel}
|
|
194
|
-
modelsForSwitch={modelsForSwitch}
|
|
195
|
-
description={{ label: getDescription(tab) }}
|
|
196
|
-
addToDatasets={{ id: tab }}
|
|
197
|
-
modifyOptions={options => ({
|
|
198
|
-
...options,
|
|
199
|
-
options: {
|
|
200
|
-
...options?.options,
|
|
201
|
-
plugins: {
|
|
202
|
-
...options?.options?.plugins,
|
|
203
|
-
tooltip: {
|
|
204
|
-
...options?.options?.plugins?.tooltip,
|
|
205
|
-
callbacks: {
|
|
206
|
-
...options?.options?.plugins?.tooltip?.callbacks,
|
|
207
|
-
label: (context) => {
|
|
208
|
-
return context.dataset.id === 'tab3'
|
|
209
|
-
|| context.dataset.id === 'tab4'
|
|
210
|
-
? formatToPriceWithUSD(context.raw || '0')
|
|
211
|
-
: context.raw || '0';
|
|
212
|
-
},
|
|
213
|
-
},
|
|
214
|
-
},
|
|
215
|
-
},
|
|
216
|
-
},
|
|
217
|
-
})}
|
|
218
|
-
/>
|
|
219
|
-
</div>
|
|
220
|
-
);
|
|
221
|
-
}
|
|
222
|
-
|
|
223
|
-
export default ExampleChartIntegration;
|
|
1
|
+
function t(t,n){(null==n||n>t.length)&&(n=t.length);for(var r=0,e=Array(n);r<n;r++)e[r]=t[r];return e}function n(t){for(var n=1;n<arguments.length;n++){var r=null!=arguments[n]?arguments[n]:{},e=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(e=e.concat(Object.getOwnPropertySymbols(r).filter(function(t){return Object.getOwnPropertyDescriptor(r,t).enumerable}))),e.forEach(function(n){var e;e=r[n],n in t?Object.defineProperty(t,n,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[n]=e})}return t}function r(t,n){return n=null!=n?n:{},Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):(function(t,n){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var e=Object.getOwnPropertySymbols(t);r.push.apply(r,e)}return r})(Object(n)).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(n,r))}),t}function e(n,r){return function(t){if(Array.isArray(t))return t}(n)||function(t,n){var r,e,a=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=a){var o=[],i=!0,l=!1;try{for(a=a.call(t);!(i=(r=a.next()).done)&&(o.push(r.value),!n||o.length!==n);i=!0);}catch(t){l=!0,e=t}finally{try{i||null==a.return||a.return()}finally{if(l)throw e}}return o}}(n,r)||function(n,r){if(n){if("string"==typeof n)return t(n,r);var e=Object.prototype.toString.call(n).slice(8,-1);if("Object"===e&&n.constructor&&(e=n.constructor.name),"Map"===e||"Set"===e)return Array.from(e);if("Arguments"===e||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))return t(n,r)}}(n,r)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}import{jsx as a,jsxs as o}from"react/jsx-runtime";import{createElement as i}from"react";import l from"classnames";import{useLayoutEffect as u,useMemo as c,useState as s}from"react";import{formatToPriceWithUSD as b}from"../../../Functions/fieldValueFormatters";import{clone as f}from"../../../Functions/utils";import p from"../../FormElements/InputDateRange/InputDateRange";import d from"../Chart/Chart";import{getLabels as m,getMockValue as y,getSafelyDateRange as h,getTab as g}from"./partial/utils";import"./partial/AnyOuterClass.scss";export default function(t){var v=t||{},O=v.inputDateRangeProps,j=v.chartProps,w=O||{},C=w.value,P=w.onChange,k=(j||{}).initialChartType,L=c(function(){return h(C)},[C]),S=e(s(k||"Bar"),2),T=S[0],B=S[1],M=e(s("tab1"),2),D=M[0],x=M[1],A=e(s("Bar"===T?"finturfLoadingModeBar":"finturfLoadingModeLine"),2),N=A[0],E=A[1],F=e(s(null),2),I=F[0],_=F[1],R=e(s(null),2),V=R[0],J=R[1],U=e(s(null),2),$=U[0],q=U[1],z=e(s(null),2),G=z[0],H=z[1],K=e(s(null),2),Q=K[0],W=K[1],X=function(){var t=m(L);return{labels:t,datasets:[{data:t.map(function(t){return y()})}]}},Y=function(t){switch(t){case"tab1":return I?f(I):null;case"tab2":return V?f(V):null;case"tab3":return $?f($):null;case"tab4":return G?f(G):null;default:return null}},Z=c(function(){return Y(D)?["finturfChartBar","finturfChartLine"]:["finturfLoadingModeBar","finturfLoadingModeLine"]},[!!Y(D)]),tt=function(t,n){switch(n){case"tab1":_(t);break;case"tab2":J(t);break;case"tab3":q(t);break;case"tab4":H(t)}return t};return u(function(){_(null),J(null),q(null),H(null),Promise.all([g("tab1",L,tt),g("tab2",L,tt),g("tab3",L,tt),g("tab4",L,tt)])},[L]),u(function(){E(Y(D)?"Bar"===T?"finturfChartBar":"finturfChartLine":"Bar"===T?"finturfLoadingModeBar":"finturfLoadingModeLine"),W(Y(D)?Y(D):X())},[!!Y(D),D,T]),o("div",{className:"example-wrapper",children:[a(p,r(n({},O),{value:C,onChange:P})),o("div",{className:"buttons-block",children:[a("button",{className:l("tab-button",{"tab-button_active":"tab1"===D}),onClick:function(){return x("tab1")},children:"Tab 1"}),a("button",{className:l("tab-button",{"tab-button_active":"tab2"===D}),onClick:function(){return x("tab2")},children:"Tab 2"}),a("button",{className:l("tab-button",{"tab-button_active":"tab3"===D}),onClick:function(){return x("tab3")},children:"Tab 3"}),a("button",{className:l("tab-button",{"tab-button_active":"tab4"===D}),onClick:function(){return x("tab4")},children:"Tab 4"})]}),i(d,r(n({},j),{key:JSON.stringify(Q),data:Q,setModelExternalValue:function(t){B(t.includes("Line")?"Line":"Bar"),E(t)},initialModel:N,modelsForSwitch:Z,description:{label:function(t){switch(t){case"tab1":return"Tab 1";case"tab2":return"Tab 2";case"tab3":return"Tab 3";case"tab4":return"Tab 4";default:return null}}(D)},addToDatasets:{id:D},modifyOptions:function(t){var e,a,o,i,l,u;return r(n({},t),{options:r(n({},null==t?void 0:t.options),{plugins:r(n({},null==t||null==(e=t.options)?void 0:e.plugins),{tooltip:r(n({},null==t||null==(o=t.options)||null==(a=o.plugins)?void 0:a.tooltip),{callbacks:r(n({},null==t||null==(u=t.options)||null==(l=u.plugins)||null==(i=l.tooltip)?void 0:i.callbacks),{label:function(t){return"tab3"===t.dataset.id||"tab4"===t.dataset.id?b(t.raw||"0"):t.raw||"0"}})})})})})}}))]})}
|
|
@@ -1,75 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import MonoAccordion from './MonoAccordion';
|
|
4
|
-
|
|
5
|
-
describe('monoAccordion', () => {
|
|
6
|
-
const defaultProps = {
|
|
7
|
-
titleJSX: <div>Accordion Title</div>,
|
|
8
|
-
icon: <span>▼</span>,
|
|
9
|
-
isOpen: false,
|
|
10
|
-
onClick: jest.fn(),
|
|
11
|
-
testId: 'test-accordion',
|
|
12
|
-
};
|
|
13
|
-
|
|
14
|
-
it('renders correctly with default props', () => {
|
|
15
|
-
render(
|
|
16
|
-
<MonoAccordion {...defaultProps}>
|
|
17
|
-
<div>Accordion Content</div>
|
|
18
|
-
</MonoAccordion>,
|
|
19
|
-
);
|
|
20
|
-
|
|
21
|
-
expect(screen.getByTestId('test-accordion')).toBeInTheDocument();
|
|
22
|
-
expect(screen.getByText('Accordion Title')).toBeInTheDocument();
|
|
23
|
-
});
|
|
24
|
-
|
|
25
|
-
it('handles click events correctly', () => {
|
|
26
|
-
render(
|
|
27
|
-
<MonoAccordion {...defaultProps}>
|
|
28
|
-
<div>Accordion Content</div>
|
|
29
|
-
</MonoAccordion>,
|
|
30
|
-
);
|
|
31
|
-
|
|
32
|
-
fireEvent.click(screen.getByRole('button'));
|
|
33
|
-
expect(defaultProps.onClick).toHaveBeenCalled();
|
|
34
|
-
});
|
|
35
|
-
|
|
36
|
-
it('applies correct classes when open', () => {
|
|
37
|
-
render(
|
|
38
|
-
<MonoAccordion {...defaultProps} isOpen={true}>
|
|
39
|
-
<div>Accordion Content</div>
|
|
40
|
-
</MonoAccordion>,
|
|
41
|
-
);
|
|
42
|
-
|
|
43
|
-
expect(screen.getByTestId('test-accordion')).toHaveClass('mono-accordion--is-open');
|
|
44
|
-
});
|
|
45
|
-
|
|
46
|
-
it('applies disabled state correctly', () => {
|
|
47
|
-
render(
|
|
48
|
-
<MonoAccordion {...defaultProps} disabled={true}>
|
|
49
|
-
<div>Accordion Content</div>
|
|
50
|
-
</MonoAccordion>,
|
|
51
|
-
);
|
|
52
|
-
|
|
53
|
-
const button = screen.getByRole('button');
|
|
54
|
-
expect(button).toBeDisabled();
|
|
55
|
-
expect(screen.getByTestId('test-accordion')).toHaveClass('mono-accordion--disabled');
|
|
56
|
-
});
|
|
57
|
-
|
|
58
|
-
it('handles aria attributes correctly', () => {
|
|
59
|
-
const { rerender } = render(
|
|
60
|
-
<MonoAccordion {...defaultProps}>
|
|
61
|
-
<div>Accordion Content</div>
|
|
62
|
-
</MonoAccordion>,
|
|
63
|
-
);
|
|
64
|
-
|
|
65
|
-
expect(screen.getByRole('button')).toHaveAttribute('aria-expanded', 'false');
|
|
66
|
-
|
|
67
|
-
rerender(
|
|
68
|
-
<MonoAccordion {...defaultProps} isOpen={true}>
|
|
69
|
-
<div>Accordion Content</div>
|
|
70
|
-
</MonoAccordion>,
|
|
71
|
-
);
|
|
72
|
-
|
|
73
|
-
expect(screen.getByRole('button')).toHaveAttribute('aria-expanded', 'true');
|
|
74
|
-
});
|
|
75
|
-
});
|
|
1
|
+
function e(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),o.forEach(function(t){var o;o=n[t],t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o})}return e}function t(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n.push.apply(n,o)}return n})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}import{jsx as n}from"react/jsx-runtime";import{fireEvent as o,render as r,screen as c}from"@testing-library/react";import i from"./MonoAccordion";describe("monoAccordion",function(){var d={titleJSX:n("div",{children:"Accordion Title"}),icon:n("span",{children:"▼"}),isOpen:!1,onClick:jest.fn(),testId:"test-accordion"};it("renders correctly with default props",function(){r(n(i,t(e({},d),{children:n("div",{children:"Accordion Content"})}))),expect(c.getByTestId("test-accordion")).toBeInTheDocument(),expect(c.getByText("Accordion Title")).toBeInTheDocument()}),it("handles click events correctly",function(){r(n(i,t(e({},d),{children:n("div",{children:"Accordion Content"})}))),o.click(c.getByRole("button")),expect(d.onClick).toHaveBeenCalled()}),it("applies correct classes when open",function(){r(n(i,t(e({},d),{isOpen:!0,children:n("div",{children:"Accordion Content"})}))),expect(c.getByTestId("test-accordion")).toHaveClass("mono-accordion--is-open")}),it("applies disabled state correctly",function(){r(n(i,t(e({},d),{disabled:!0,children:n("div",{children:"Accordion Content"})}))),expect(c.getByRole("button")).toBeDisabled(),expect(c.getByTestId("test-accordion")).toHaveClass("mono-accordion--disabled")}),it("handles aria attributes correctly",function(){var o=r(n(i,t(e({},d),{children:n("div",{children:"Accordion Content"})}))).rerender;expect(c.getByRole("button")).toHaveAttribute("aria-expanded","false"),o(n(i,t(e({},d),{isOpen:!0,children:n("div",{children:"Accordion Content"})}))),expect(c.getByRole("button")).toHaveAttribute("aria-expanded","true")})});
|
|
@@ -1,86 +1 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
import { useEffect, useRef, useState } from 'react';
|
|
4
|
-
|
|
5
|
-
import './MonoAccordion.scss';
|
|
6
|
-
|
|
7
|
-
const RC = 'mono-accordion';
|
|
8
|
-
|
|
9
|
-
function MonoAccordion({
|
|
10
|
-
titleJSX,
|
|
11
|
-
icon,
|
|
12
|
-
children,
|
|
13
|
-
isOpen,
|
|
14
|
-
onClick,
|
|
15
|
-
className,
|
|
16
|
-
disabled,
|
|
17
|
-
testId = 'mono-accordion',
|
|
18
|
-
datasetProp = {},
|
|
19
|
-
}) {
|
|
20
|
-
const [maxHeight, setMaxHeight] = useState();
|
|
21
|
-
const titleRef = useRef();
|
|
22
|
-
const containerRef = useRef();
|
|
23
|
-
|
|
24
|
-
const setHeight = (value) => {
|
|
25
|
-
if (value !== undefined) {
|
|
26
|
-
setMaxHeight(state => `${value}px`);
|
|
27
|
-
}
|
|
28
|
-
else {
|
|
29
|
-
setMaxHeight(
|
|
30
|
-
state =>
|
|
31
|
-
`${Array.from(containerRef.current?.childNodes)?.reduce?.((acc, el) => acc + el.offsetHeight, 0)}px`,
|
|
32
|
-
);
|
|
33
|
-
}
|
|
34
|
-
};
|
|
35
|
-
|
|
36
|
-
const handleClick = (e) => {
|
|
37
|
-
if (
|
|
38
|
-
!Array.from(titleRef.current.childNodes).some(el =>
|
|
39
|
-
el.contains(e.target),
|
|
40
|
-
)
|
|
41
|
-
) {
|
|
42
|
-
onClick(e);
|
|
43
|
-
e?.preventDefault();
|
|
44
|
-
e?.stopPropagation();
|
|
45
|
-
}
|
|
46
|
-
else {
|
|
47
|
-
return e;
|
|
48
|
-
}
|
|
49
|
-
};
|
|
50
|
-
|
|
51
|
-
useEffect(() => {
|
|
52
|
-
if (!isOpen) setHeight(0);
|
|
53
|
-
else setHeight();
|
|
54
|
-
}, [isOpen, children]);
|
|
55
|
-
|
|
56
|
-
return (
|
|
57
|
-
<div
|
|
58
|
-
{...datasetProp}
|
|
59
|
-
data-testid={testId}
|
|
60
|
-
className={cn(RC, className, {
|
|
61
|
-
[`${RC}_is-open`]: isOpen,
|
|
62
|
-
[`${RC}_disabled`]: disabled,
|
|
63
|
-
})}
|
|
64
|
-
>
|
|
65
|
-
<div
|
|
66
|
-
className={`${RC}__head`}
|
|
67
|
-
onClick={handleClick}
|
|
68
|
-
>
|
|
69
|
-
<div ref={titleRef} className={`${RC}__tile-container`}>
|
|
70
|
-
{titleJSX}
|
|
71
|
-
</div>
|
|
72
|
-
<span className={`${RC}__icon-container`}>{icon}</span>
|
|
73
|
-
</div>
|
|
74
|
-
|
|
75
|
-
<div
|
|
76
|
-
ref={containerRef}
|
|
77
|
-
style={{ maxHeight }}
|
|
78
|
-
className={cn(`${RC}__container`)}
|
|
79
|
-
>
|
|
80
|
-
<div className={`${RC}__content-wrapper`}>{children}</div>
|
|
81
|
-
</div>
|
|
82
|
-
</div>
|
|
83
|
-
);
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
export default MonoAccordion;
|
|
1
|
+
function t(t,r){(null==r||r>t.length)&&(r=t.length);for(var e=0,n=Array(r);e<r;e++)n[e]=t[e];return n}function r(t,r,e){return r in t?Object.defineProperty(t,r,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[r]=e,t}import{jsx as e,jsxs as n}from"react/jsx-runtime";import o from"classnames";import{useEffect as c,useRef as i,useState as a}from"react";import"./MonoAccordion.scss";var l="mono-accordion";export default function(u){var s,f,d,p,m=u.titleJSX,y=u.icon,b=u.children,v=u.isOpen,h=u.onClick,O=u.className,g=u.disabled,j=u.testId,P=u.datasetProp,w=(s=a(),function(t){if(Array.isArray(t))return t}(s)||function(t,r){var e,n,o=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=o){var c=[],i=!0,a=!1;try{for(o=o.call(t);!(i=(e=o.next()).done)&&(c.push(e.value),c.length!==r);i=!0);}catch(t){a=!0,n=t}finally{try{i||null==o.return||o.return()}finally{if(a)throw n}}return c}}(s,2)||function(r,e){if(r){if("string"==typeof r)return t(r,2);var n=Object.prototype.toString.call(r).slice(8,-1);if("Object"===n&&r.constructor&&(n=r.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return t(r,e)}}(s,2)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),_=w[0],S=w[1],A=i(),N=i(),x=function(t){void 0!==t?S(function(r){return"".concat(t,"px")}):S(function(t){var r,e,n;return"".concat(null==(e=Array.from(null==(n=N.current)?void 0:n.childNodes))||null==(r=e.reduce)?void 0:r.call(e,function(t,r){return t+r.offsetHeight},0),"px")})};return c(function(){v?x():x(0)},[v,b]),n("div",(f=function(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter(function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),o.forEach(function(e){r(t,e,n[e])})}return t}({},void 0===P?{}:P),d=d={"data-testid":void 0===j?"mono-accordion":j,className:o(l,O,(r(p={},"".concat(l,"_is-open"),v),r(p,"".concat(l,"_disabled"),g),p)),children:[n("div",{className:"".concat(l,"__head"),onClick:function(t){if(Array.from(A.current.childNodes).some(function(r){return r.contains(t.target)}))return t;h(t),null==t||t.preventDefault(),null==t||t.stopPropagation()},children:[e("div",{ref:A,className:"".concat(l,"__tile-container"),children:m}),e("span",{className:"".concat(l,"__icon-container"),children:y})]}),e("div",{ref:N,style:{maxHeight:_},className:o("".concat(l,"__container")),children:e("div",{className:"".concat(l,"__content-wrapper"),children:b})})]},Object.getOwnPropertyDescriptors?Object.defineProperties(f,Object.getOwnPropertyDescriptors(d)):(function(t,r){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e.push.apply(e,n)}return e})(Object(d)).forEach(function(t){Object.defineProperty(f,t,Object.getOwnPropertyDescriptor(d,t))}),f))}
|
|
@@ -1,41 +1 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { Pie } from 'react-chartjs-2';
|
|
3
|
-
|
|
4
|
-
import './PieChart.scss';
|
|
5
|
-
|
|
6
|
-
ChartJS.register(ArcElement, Tooltip);
|
|
7
|
-
|
|
8
|
-
function PieChart({
|
|
9
|
-
data,
|
|
10
|
-
cutout = '80%',
|
|
11
|
-
resultLabel,
|
|
12
|
-
resultValue = 0,
|
|
13
|
-
withLegend = false,
|
|
14
|
-
}) {
|
|
15
|
-
const options = {
|
|
16
|
-
cutout,
|
|
17
|
-
plugins: {
|
|
18
|
-
legend: {
|
|
19
|
-
display: withLegend,
|
|
20
|
-
},
|
|
21
|
-
},
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
return (
|
|
25
|
-
<div className="pie-chart-box" style={{ maxWidth: `320px` }}>
|
|
26
|
-
<Pie data={data} options={options} />
|
|
27
|
-
{Boolean(resultLabel) && (
|
|
28
|
-
<div className="pie-chart__result">
|
|
29
|
-
<div className="pie-chart__result-value">
|
|
30
|
-
{resultValue}
|
|
31
|
-
<span className="pie-chart__result-percent">%</span>
|
|
32
|
-
{' '}
|
|
33
|
-
</div>
|
|
34
|
-
<div className="pie-chart__result-label">{resultLabel}</div>
|
|
35
|
-
</div>
|
|
36
|
-
)}
|
|
37
|
-
</div>
|
|
38
|
-
);
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
export default PieChart;
|
|
1
|
+
import{jsx as e,jsxs as t}from"react/jsx-runtime";import{ArcElement as a,Chart as r,Tooltip as s}from"chart.js";import{Pie as i}from"react-chartjs-2";import"./PieChart.scss";r.register(a,s);export default function(a){var r=a.data,s=a.cutout,l=a.resultLabel,c=a.resultValue,d=a.withLegend;return t("div",{className:"pie-chart-box",style:{maxWidth:"320px"},children:[e(i,{data:r,options:{cutout:void 0===s?"80%":s,plugins:{legend:{display:void 0!==d&&d}}}}),!!l&&t("div",{className:"pie-chart__result",children:[t("div",{className:"pie-chart__result-value",children:[void 0===c?0:c,e("span",{className:"pie-chart__result-percent",children:"%"})," "]}),e("div",{className:"pie-chart__result-label",children:l})]})]})}
|
|
@@ -1,87 +1 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
import AccordionItem from '../../Accordion/AccordionItem';
|
|
4
|
-
import AdvancedTags from '../../AdvancedTag/AdvancedTags';
|
|
5
|
-
import Status from '../../Status/Status';
|
|
6
|
-
import Tag from '../../Tag/Tag';
|
|
7
|
-
import Table from '../Table';
|
|
8
|
-
import { TdActions } from '../TdTypes/TdActions';
|
|
9
|
-
import TdPriority from '../TdTypes/TdPriority';
|
|
10
|
-
import TdWeight from '../TdTypes/TdWeight';
|
|
11
|
-
|
|
12
|
-
import '../Table.scss';
|
|
13
|
-
|
|
14
|
-
function TdCell({
|
|
15
|
-
type,
|
|
16
|
-
item,
|
|
17
|
-
rowIndex,
|
|
18
|
-
onChange,
|
|
19
|
-
cardLength,
|
|
20
|
-
changePriority,
|
|
21
|
-
getAdviceWeight,
|
|
22
|
-
onActionClick,
|
|
23
|
-
rowItem,
|
|
24
|
-
isDeleted,
|
|
25
|
-
}) {
|
|
26
|
-
const [isAccordionOpen, setIsAccordionOpen] = useState(item.isOpen);
|
|
27
|
-
|
|
28
|
-
const percent
|
|
29
|
-
= item.type === 'weight' && getAdviceWeight(isDeleted ? 0 : item.value);
|
|
30
|
-
|
|
31
|
-
switch (type) {
|
|
32
|
-
case 'accordion':
|
|
33
|
-
return (
|
|
34
|
-
<AccordionItem
|
|
35
|
-
className={item.itemClassName}
|
|
36
|
-
item={item}
|
|
37
|
-
isOpen={isAccordionOpen}
|
|
38
|
-
onClick={e => setIsAccordionOpen(e)}
|
|
39
|
-
>
|
|
40
|
-
<Table rows={item.rows} className="accordion--table" />
|
|
41
|
-
</AccordionItem>
|
|
42
|
-
);
|
|
43
|
-
case 'actions':
|
|
44
|
-
return (
|
|
45
|
-
<TdActions
|
|
46
|
-
rowItem={rowItem}
|
|
47
|
-
actions={item}
|
|
48
|
-
onChange={onChange}
|
|
49
|
-
onActionClick={onActionClick}
|
|
50
|
-
/>
|
|
51
|
-
);
|
|
52
|
-
case 'advancedTags':
|
|
53
|
-
return <AdvancedTags items={item} />;
|
|
54
|
-
case 'link':
|
|
55
|
-
return <a href={item.link}>{item.label}</a>;
|
|
56
|
-
case 'priority':
|
|
57
|
-
return (
|
|
58
|
-
<TdPriority
|
|
59
|
-
rowIndex={rowIndex}
|
|
60
|
-
cardLength={cardLength}
|
|
61
|
-
onClick={changePriority}
|
|
62
|
-
/>
|
|
63
|
-
);
|
|
64
|
-
case 'status':
|
|
65
|
-
return (
|
|
66
|
-
<Status
|
|
67
|
-
className={item.className}
|
|
68
|
-
label={item.label}
|
|
69
|
-
status={item.status}
|
|
70
|
-
/>
|
|
71
|
-
);
|
|
72
|
-
case 'tags':
|
|
73
|
-
return item.map((tag, index) => <Tag key={index} label={tag.label} />);
|
|
74
|
-
case 'weight':
|
|
75
|
-
return (
|
|
76
|
-
<TdWeight
|
|
77
|
-
value={item.value}
|
|
78
|
-
percent={percent}
|
|
79
|
-
onChange={value => onChange({ ...item, value })}
|
|
80
|
-
/>
|
|
81
|
-
);
|
|
82
|
-
default:
|
|
83
|
-
return <span className={item.className}>{item.value}</span>;
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
export default TdCell;
|
|
1
|
+
function e(e,r){(null==r||r>e.length)&&(r=e.length);for(var t=0,n=Array(r);t<r;t++)n[t]=e[t];return n}import{jsx as r}from"react/jsx-runtime";import{useState as t}from"react";import n from"../../Accordion/AccordionItem";import o from"../../AdvancedTag/AdvancedTags";import a from"../../Status/Status";import i from"../../Tag/Tag";import c from"../Table";import{TdActions as l}from"../TdTypes/TdActions";import s from"../TdTypes/TdPriority";import u from"../TdTypes/TdWeight";import"../Table.scss";export default function(f){var m,p=f.type,y=f.item,b=f.rowIndex,d=f.onChange,g=f.cardLength,h=f.changePriority,O=f.getAdviceWeight,v=f.onActionClick,w=f.rowItem,j=f.isDeleted,T=(m=t(y.isOpen),function(e){if(Array.isArray(e))return e}(m)||function(e,r){var t,n,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var a=[],i=!0,c=!1;try{for(o=o.call(e);!(i=(t=o.next()).done)&&(a.push(t.value),a.length!==r);i=!0);}catch(e){c=!0,n=e}finally{try{i||null==o.return||o.return()}finally{if(c)throw n}}return a}}(m,2)||function(r,t){if(r){if("string"==typeof r)return e(r,2);var n=Object.prototype.toString.call(r).slice(8,-1);if("Object"===n&&r.constructor&&(n=r.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return e(r,t)}}(m,2)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),A=T[0],P=T[1],S="weight"===y.type&&O(j?0:y.value);switch(p){case"accordion":return r(n,{className:y.itemClassName,item:y,isOpen:A,onClick:function(e){return P(e)},children:r(c,{rows:y.rows,className:"accordion--table"})});case"actions":return r(l,{rowItem:w,actions:y,onChange:d,onActionClick:v});case"advancedTags":return r(o,{items:y});case"link":return r("a",{href:y.link,children:y.label});case"priority":return r(s,{rowIndex:b,cardLength:g,onClick:h});case"status":return r(a,{className:y.className,label:y.label,status:y.status});case"tags":return y.map(function(e,t){return r(i,{label:e.label},t)});case"weight":return r(u,{value:y.value,percent:S,onChange:function(e){var r,t;return d((r=function(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{},n=Object.keys(t);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(t).filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),n.forEach(function(r){var n;n=t[r],r in e?Object.defineProperty(e,r,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[r]=n})}return e}({},y),t=t={value:e},Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):(function(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(t)).forEach(function(e){Object.defineProperty(r,e,Object.getOwnPropertyDescriptor(t,e))}),r))}});default:return r("span",{className:y.className,children:y.value})}}
|
|
@@ -1,36 +1 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
import Langs from '../../../../Langs';
|
|
4
|
-
|
|
5
|
-
import '../Table.scss';
|
|
6
|
-
|
|
7
|
-
function TdHeader({ item, testId = 'td-header' }) {
|
|
8
|
-
const txt = Langs[globalThis.lng];
|
|
9
|
-
|
|
10
|
-
switch (item.type) {
|
|
11
|
-
case 'double':
|
|
12
|
-
return (
|
|
13
|
-
<th data-testid={testId}>
|
|
14
|
-
<div className="j46">
|
|
15
|
-
<div className="">{txt.labels[item.left] || item.left}</div>
|
|
16
|
-
<div className="">{txt.labels[item.right] || item.right}</div>
|
|
17
|
-
</div>
|
|
18
|
-
</th>
|
|
19
|
-
);
|
|
20
|
-
default:
|
|
21
|
-
return (
|
|
22
|
-
<th data-testid={testId} className={cn(item.className)}>
|
|
23
|
-
<div className={cn({ df: item.button })}>
|
|
24
|
-
<div className="mr5">{txt.labels[item.label] || item.label}</div>
|
|
25
|
-
{item.button && (
|
|
26
|
-
<div className="cards-table__btn">
|
|
27
|
-
{txt.buttons[item.button] || item.button}
|
|
28
|
-
</div>
|
|
29
|
-
)}
|
|
30
|
-
</div>
|
|
31
|
-
</th>
|
|
32
|
-
);
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
export default TdHeader;
|
|
1
|
+
import{jsx as e,jsxs as t}from"react/jsx-runtime";import a from"classnames";import s from"../../../../Langs";import"../Table.scss";export default function(l){var i=l.item,d=l.testId,r=void 0===d?"td-header":d,c=s[globalThis.lng];return"double"===i.type?e("th",{"data-testid":r,children:t("div",{className:"j46",children:[e("div",{className:"",children:c.labels[i.left]||i.left}),e("div",{className:"",children:c.labels[i.right]||i.right})]})}):e("th",{"data-testid":r,className:a(i.className),children:t("div",{className:a({df:i.button}),children:[e("div",{className:"mr5",children:c.labels[i.label]||i.label}),i.button&&e("div",{className:"cards-table__btn",children:c.buttons[i.button]||i.button})]})})}
|