@pushwoosh/dumb-components 1.1.134 → 1.1.136
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/AccessForbidden/AccessForbidden.js +19 -5
- package/AccessForbidden/polyglot/index.d.ts +2 -0
- package/AccessForbidden/polyglot/index.js +10 -0
- package/AccessForbidden/polyglot/messages_en.d.ts +3 -0
- package/AccessForbidden/polyglot/messages_en.js +4 -0
- package/AccessForbidden/polyglot/messages_ru.d.ts +3 -0
- package/AccessForbidden/polyglot/messages_ru.js +4 -0
- package/AccessForbidden/polyglot/types.d.ts +5 -0
- package/AccessForbidden/polyglot/types.js +1 -0
- package/Alert/Alert.d.ts +1 -2
- package/Alert/Alert.js +31 -25
- package/ApplicationPreloader/ApplicationPreloader.d.ts +1 -2
- package/ApplicationPreloader/ApplicationPreloader.js +5 -4
- package/Badge/Badge.js +2 -2
- package/Banner/Banner.js +40 -24
- package/Button/Button.js +20 -9
- package/Button/RemoveButton.js +7 -6
- package/Calendar/CalendarDropdown/CalendarDropdown.js +121 -108
- package/Calendar/CalendarMonth/CalendarMonth.js +68 -66
- package/Calendar/CalendarMonthSlider/CalendarMonthSlider.d.ts +2 -2
- package/Calendar/CalendarMonthSlider/CalendarMonthSlider.js +68 -55
- package/Calendar/CalendarSuperForm/CalendarSuperForm.js +75 -70
- package/Calendar/CalendarSuperForm/components/CalendarRangePicker/CalendarRangePicker.d.ts +2 -2
- package/Calendar/CalendarSuperForm/components/CalendarRangePicker/CalendarRangePicker.js +3 -2
- package/Calendar/CalendarSuperForm/components/CalendarTimeAndTimezoneSection/CalendarTimeAndTimezoneSection.js +106 -88
- package/Calendar/CalendarSuperForm/components/CalendarTimeInput.d.ts +1 -2
- package/Calendar/CalendarSuperForm/components/CalendarTimeInput.js +2 -2
- package/Calendar/CalendarSuperForm/components/CalendarTimezoneSelect.js +3 -2
- package/CardMetric/CardChildren.js +9 -6
- package/CardMetric/CardCollapse.js +8 -6
- package/CardMetric/CardMetric.js +52 -33
- package/Checkbox/Checkbox.js +30 -24
- package/Chip/Chip.d.ts +6 -7
- package/Chip/Chip.js +22 -15
- package/CodeEditor/CodeEditor.d.ts +1 -2
- package/CodeEditor/CodeEditor.js +2 -2
- package/CrashScreen/CrashScreen.js +19 -6
- package/CrashScreen/polyglot/index.d.ts +2 -0
- package/CrashScreen/polyglot/index.js +10 -0
- package/CrashScreen/polyglot/messages_en.d.ts +3 -0
- package/CrashScreen/polyglot/messages_en.js +4 -0
- package/CrashScreen/polyglot/messages_ru.d.ts +3 -0
- package/CrashScreen/polyglot/messages_ru.js +4 -0
- package/CrashScreen/polyglot/types.d.ts +5 -0
- package/CrashScreen/polyglot/types.js +1 -0
- package/DateTimePicker/components/AutosizeInput/AutosizeInput.js +17 -13
- package/DateTimePicker/components/DatePicker/DatePicker.js +35 -32
- package/DateTimePicker/components/DatePickerField/DatePickerField.js +32 -22
- package/DateTimePicker/components/DateTimePicker/DateTimePicker.js +22 -20
- package/DateTimePicker/components/DateTimePickerField/DateTimePickerField.js +30 -22
- package/DateTimePicker/components/DecadeView/DecadeView.js +19 -17
- package/DateTimePicker/components/Input/Input.js +2 -2
- package/DateTimePicker/components/Month/Month.js +52 -21
- package/DateTimePicker/components/MonthView/MonthView.js +21 -17
- package/DateTimePicker/components/NumberPicker/NumberPicker.js +49 -40
- package/DateTimePicker/components/PickerPlate/PickerPlate.js +17 -14
- package/DateTimePicker/components/YearView/YearView.js +22 -18
- package/DateTimePicker/polyglot/index.d.ts +2 -0
- package/DateTimePicker/polyglot/index.js +9 -0
- package/DateTimePicker/polyglot/messages_en.d.ts +3 -0
- package/DateTimePicker/polyglot/messages_en.js +11 -0
- package/DateTimePicker/polyglot/messages_ru.d.ts +3 -0
- package/DateTimePicker/polyglot/messages_ru.js +11 -0
- package/DateTimePicker/polyglot/types.d.ts +12 -0
- package/DateTimePicker/polyglot/types.js +1 -0
- package/Drawer/components/Drawer/Drawer.js +18 -13
- package/Drawer/components/Drawer/styles.d.ts +2 -2
- package/Drawer/components/Drawer/styles.js +5 -4
- package/Drawer/components/DrawerDocs/DrawerDocs.js +28 -17
- package/Drawer/polyglot/index.d.ts +2 -0
- package/Drawer/polyglot/index.js +10 -0
- package/Drawer/polyglot/messages_en.d.ts +3 -0
- package/Drawer/polyglot/messages_en.js +4 -0
- package/Drawer/polyglot/messages_ru.d.ts +3 -0
- package/Drawer/polyglot/messages_ru.js +4 -0
- package/Drawer/polyglot/types.d.ts +5 -0
- package/Drawer/polyglot/types.js +1 -0
- package/DropdownMenu/components/DropdownMenu/DropdownMenu.js +28 -24
- package/DropdownMenu/components/DropdownMenuButton/DropdownMenuButton.js +8 -6
- package/DropdownMenu/components/DropdownMenuItem/DropdownMenuItem.js +6 -4
- package/DropdownMenu/components/DropdownMenuSection/DropdownMenuSection.js +13 -10
- package/DropdownMenu/components/DropdownMenuSubmenu/DropdownMenuSubmenu.js +40 -31
- package/EditableField/EditableField.js +56 -39
- package/EditableField/polyglot/index.d.ts +2 -0
- package/EditableField/polyglot/index.js +9 -0
- package/EditableField/polyglot/messages_en.d.ts +3 -0
- package/EditableField/polyglot/messages_en.js +4 -0
- package/EditableField/polyglot/messages_ru.d.ts +3 -0
- package/EditableField/polyglot/messages_ru.js +4 -0
- package/EditableField/polyglot/types.d.ts +5 -0
- package/EditableField/polyglot/types.js +1 -0
- package/EmailTemplatePreview/EmailTemplatePreview.js +10 -8
- package/EmailTemplatePreview/components/NoEmailTemplatePreview/NoEmailTemplatePreview.js +30 -16
- package/EmailTemplatePreview/polyglot/index.d.ts +2 -0
- package/EmailTemplatePreview/polyglot/index.js +10 -0
- package/EmailTemplatePreview/polyglot/messages_en.d.ts +3 -0
- package/EmailTemplatePreview/polyglot/messages_en.js +5 -0
- package/EmailTemplatePreview/polyglot/messages_ru.d.ts +3 -0
- package/EmailTemplatePreview/polyglot/messages_ru.js +5 -0
- package/EmailTemplatePreview/polyglot/types.d.ts +6 -0
- package/EmailTemplatePreview/polyglot/types.js +1 -0
- package/EnhancedInput/EnhancedInput.d.ts +3 -4
- package/EnhancedInput/EnhancedInput.js +14 -10
- package/EnhancedInput/SearchInput.js +3 -3
- package/ExportResult/ExportResult.js +33 -23
- package/ExternalImagePreview/ExternalImagePreview.js +24 -20
- package/FieldBox/FieldBox.js +50 -37
- package/FrequencyCapping/FrequencyCappingEdit.js +41 -33
- package/FrequencyCapping/FrequencyCappingInApps.js +41 -33
- package/FrequencyCapping/FrequencyCappingReadonly.d.ts +1 -2
- package/FrequencyCapping/FrequencyCappingReadonly.js +24 -20
- package/FrequencyCapping/components/Condition/index.d.ts +1 -2
- package/FrequencyCapping/components/Condition/index.js +24 -20
- package/FrequencyCapping/components/Description/index.d.ts +2 -2
- package/FrequencyCapping/components/Description/index.js +7 -5
- package/FrequencyCapping/components/Settings/EditCappingSettings.js +28 -20
- package/FrequencyCapping/components/Settings/EditInAppCappingSettings.js +86 -71
- package/FrequencyCapping/helpers/getReadonlyCappingHelpers.d.ts +1 -2
- package/FrequencyCapping/helpers/getReadonlyCappingHelpers.js +41 -32
- package/GetStartedPage/GetStartedPage.js +44 -25
- package/InputFile/InputFile.js +44 -35
- package/Link/Link.js +2 -2
- package/Modal/components/Modal/Modal.js +17 -12
- package/Modal/components/Modal/styles.js +5 -4
- package/Modal/components/ModalConfirm/ModalConfirm.js +51 -24
- package/Modal/components/ModalConfirm/ModalConfirmProvider.d.ts +2 -2
- package/Modal/components/ModalConfirm/ModalConfirmProvider.js +8 -6
- package/Modal/components/ModalConfirm/types.d.ts +1 -1
- package/Modal/components/ModalTitle/ModalTitle.js +10 -8
- package/Modal/polyglot/index.d.ts +2 -0
- package/Modal/polyglot/index.js +9 -0
- package/Modal/polyglot/messages_en.d.ts +3 -0
- package/Modal/polyglot/messages_en.js +6 -0
- package/Modal/polyglot/messages_ru.d.ts +3 -0
- package/Modal/polyglot/messages_ru.js +6 -0
- package/Modal/polyglot/types.d.ts +7 -0
- package/Modal/polyglot/types.js +1 -0
- package/NotificationInbox/NotificationBar.js +19 -11
- package/NotificationInbox/NotificationBell.js +21 -12
- package/NotificationInbox/NotificationInbox.js +160 -105
- package/NotificationInbox/polyglot/index.d.ts +2 -0
- package/NotificationInbox/polyglot/index.js +10 -0
- package/NotificationInbox/polyglot/messages_en.d.ts +3 -0
- package/NotificationInbox/polyglot/messages_en.js +8 -0
- package/NotificationInbox/polyglot/messages_ru.d.ts +3 -0
- package/NotificationInbox/polyglot/messages_ru.js +8 -0
- package/NotificationInbox/polyglot/types.d.ts +11 -0
- package/NotificationInbox/polyglot/types.js +1 -0
- package/NumberPicker/NumberPicker.js +53 -44
- package/NumberPicker/components/AutosizeInput/AutosizeInput.js +19 -15
- package/PageHeader/components/AutosizeInput/AutosizeInput.js +30 -22
- package/PageHeader/components/PageHeader/PageHeader.js +44 -27
- package/PageHeader/components/PageHeaderEditable/PageHeaderEditable.js +51 -34
- package/PageHeader/components/PageHeaderError/PageHeaderError.js +17 -10
- package/PageHeader/components/PageHeaderSkeleton/PageHeaderSkeleton.js +20 -16
- package/Pagination/Pagination.js +60 -49
- package/Popover/Popover.js +6 -5
- package/ProgressBar/ProgressBar.js +25 -10
- package/PushPreview/PushPreview.js +30 -22
- package/PushPreview/components/MissedContentPreview/MissedContentPreview.js +23 -11
- package/PushPreview/components/SilentPushPreview/SilentPushPreview.js +20 -13
- package/PushPreview/polyglot/index.d.ts +2 -0
- package/PushPreview/polyglot/index.js +9 -0
- package/PushPreview/polyglot/messages_en.d.ts +3 -0
- package/PushPreview/polyglot/messages_en.js +4 -0
- package/PushPreview/polyglot/messages_ru.d.ts +3 -0
- package/PushPreview/polyglot/messages_ru.js +4 -0
- package/PushPreview/polyglot/types.d.ts +5 -0
- package/PushPreview/polyglot/types.js +1 -0
- package/Radio/Radio.js +32 -26
- package/RadioCard/RadioCard.js +17 -9
- package/ReCaptcha/ReCaptcha.js +2 -2
- package/RichMessageEditor/EditorEmojiPicker.js +9 -7
- package/RichMessageEditor/RichMessageEditor.js +77 -67
- package/RichMessageEditor/RichMessageViewer.js +19 -13
- package/RichMessageEditor/slate/DynamicContentElement.d.ts +1 -2
- package/RichMessageEditor/slate/DynamicContentElement.js +13 -9
- package/RichMessageEditor/slate/SlateEditor.js +9 -7
- package/RichmediaPreview/RichmediaPreview.js +13 -11
- package/Select/Select.js +10 -8
- package/SendRate/SendRateEdit.d.ts +1 -2
- package/SendRate/SendRateEdit.js +42 -34
- package/SendRate/SendRateReadonly.d.ts +1 -2
- package/SendRate/SendRateReadonly.js +24 -20
- package/SendRate/components/Condition/index.d.ts +1 -2
- package/SendRate/components/Condition/index.js +15 -13
- package/SendRate/components/Description/index.d.ts +2 -2
- package/SendRate/components/Description/index.js +30 -22
- package/SendRate/components/Settings/index.d.ts +1 -2
- package/SendRate/components/Settings/index.js +20 -14
- package/SendRate/helpers/getReadonlySendRateHelpers.d.ts +1 -2
- package/SendRate/helpers/getReadonlySendRateHelpers.js +39 -30
- package/Skeleton/TextSkeleton.js +5 -4
- package/SortButton/SortButton.js +11 -7
- package/Spinner/Spinner.js +7 -4
- package/StatisticCard/StatisticCard.js +44 -29
- package/Switch/Switch.js +16 -13
- package/Tabs/components/Tab/Tab.d.ts +3 -4
- package/Tabs/components/Tab/Tab.js +6 -4
- package/Tabs/components/TabBar/TabBar.d.ts +3 -4
- package/Tabs/components/TabBar/TabBar.js +12 -4
- package/Tabs/components/TabBarScrollableFrame/TabBarScrollableFrame.d.ts +1 -2
- package/Tabs/components/TabBarScrollableFrame/TabBarScrollableFrame.js +27 -21
- package/Tabs/components/TabBase/TabBase.d.ts +3 -4
- package/Tabs/components/TabBase/TabBase.js +11 -6
- package/Tabs/components/TabPanel/TabPanel.js +4 -2
- package/Tabs/components/Tabs/Tabs.js +8 -4
- package/Toast/Toast.js +31 -18
- package/Toast/ToastProvider.d.ts +2 -3
- package/Toast/ToastProvider.js +10 -8
- package/Tooltip/Tooltip.js +2 -2
- package/Tooltip/TooltipTrigger.js +13 -11
- package/package.json +2 -2
- package/polyglot/__tests__/render.test.js +46 -16
- package/polyglot/liquid/render.d.ts +2 -2
- package/polyglot/liquid/render.js +7 -6
- package/polyglot/react.js +7 -5
|
@@ -1,3 +1,2 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
import type { TabsListSlideFrameProps } from './types';
|
|
3
|
-
export declare const TabBarScrollableFrame:
|
|
2
|
+
export declare const TabBarScrollableFrame: import("react").ForwardRefExoticComponent<TabsListSlideFrameProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
1
2
|
import debounce from 'lodash/debounce';
|
|
2
|
-
import
|
|
3
|
+
import { forwardRef, useCallback, useEffect, useRef, useState } from 'react';
|
|
3
4
|
import { ChevronIcon } from '@pushwoosh/kit-icons';
|
|
4
5
|
import { TabBarContent, TabBarFrame, TabBarArrowContainer, TabBarWindow } from './styles';
|
|
5
6
|
import { widthObserver } from '../../helpers';
|
|
@@ -44,25 +45,30 @@ export const TabBarScrollableFrame = forwardRef(({
|
|
|
44
45
|
stopFrameObserver();
|
|
45
46
|
};
|
|
46
47
|
}, [windowRef, setFrameWidth, contentRef, setContentWidth]);
|
|
47
|
-
return
|
|
48
|
+
return _jsxs(TabBarFrame, {
|
|
48
49
|
...props,
|
|
49
|
-
ref: ref
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
50
|
+
ref: ref,
|
|
51
|
+
children: [_jsx(TabBarWindow, {
|
|
52
|
+
ref: windowRef,
|
|
53
|
+
children: _jsx(TabBarContent, {
|
|
54
|
+
left: scrollLeft,
|
|
55
|
+
ref: contentRef,
|
|
56
|
+
children: children
|
|
57
|
+
})
|
|
58
|
+
}), scrollable && scrollLeft < 0 && _jsx(TabBarArrowContainer, {
|
|
59
|
+
"data-left": true,
|
|
60
|
+
onClick: onClick,
|
|
61
|
+
children: _jsx(ChevronIcon, {
|
|
62
|
+
direction: "left",
|
|
63
|
+
size: "small"
|
|
64
|
+
})
|
|
65
|
+
}), scrollable && scrollLeft > minLeft && _jsx(TabBarArrowContainer, {
|
|
66
|
+
"$right": true,
|
|
67
|
+
onClick: onClick,
|
|
68
|
+
children: _jsx(ChevronIcon, {
|
|
69
|
+
direction: "right",
|
|
70
|
+
size: "small"
|
|
71
|
+
})
|
|
72
|
+
})]
|
|
73
|
+
});
|
|
68
74
|
});
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import
|
|
2
|
-
export declare const TabBase: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & Readonly<{
|
|
1
|
+
export declare const TabBase: import("react").ForwardRefExoticComponent<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & Readonly<{
|
|
3
2
|
isActive?: boolean;
|
|
4
3
|
isDisabled?: boolean;
|
|
5
4
|
isNew?: boolean;
|
|
6
|
-
icon?:
|
|
5
|
+
icon?: import("react").ReactNode;
|
|
7
6
|
className?: string;
|
|
8
7
|
onClick: () => void;
|
|
9
|
-
}> &
|
|
8
|
+
}> & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef } from 'react';
|
|
2
3
|
import { TabIconBox, TabRedDot, TabBody, TabButtonLabel } from './styles';
|
|
3
4
|
export const TabBase = forwardRef((props, ref) => {
|
|
4
5
|
const {
|
|
@@ -9,14 +10,18 @@ export const TabBase = forwardRef((props, ref) => {
|
|
|
9
10
|
icon,
|
|
10
11
|
...rest
|
|
11
12
|
} = props;
|
|
12
|
-
return
|
|
13
|
+
return _jsxs(TabBody, {
|
|
13
14
|
as: "span",
|
|
14
15
|
"$isActive": isActive,
|
|
15
16
|
"$isDisabled": isDisabled,
|
|
16
17
|
"$hasIcon": !!icon,
|
|
17
18
|
ref: ref,
|
|
18
|
-
...rest
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
19
|
+
...rest,
|
|
20
|
+
children: [_jsx(TabButtonLabel, {
|
|
21
|
+
"$isActive": isActive,
|
|
22
|
+
children: children
|
|
23
|
+
}), icon && _jsx(TabIconBox, {
|
|
24
|
+
children: icon
|
|
25
|
+
}), isNew && _jsx(TabRedDot, {})]
|
|
26
|
+
});
|
|
22
27
|
});
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { TabPanelContainer } from './styles';
|
|
3
3
|
import { useTabsContext } from '../../context';
|
|
4
4
|
export const TabPanel = props => {
|
|
@@ -14,5 +14,7 @@ export const TabPanel = props => {
|
|
|
14
14
|
return null;
|
|
15
15
|
}
|
|
16
16
|
const Container = container || TabPanelContainer;
|
|
17
|
-
return
|
|
17
|
+
return _jsx(Container, {
|
|
18
|
+
children: children
|
|
19
|
+
});
|
|
18
20
|
};
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo } from 'react';
|
|
2
3
|
import { TabsContainer } from './styles';
|
|
3
4
|
import { TabContext } from '../../context';
|
|
4
5
|
export function Tabs(props) {
|
|
@@ -13,7 +14,10 @@ export function Tabs(props) {
|
|
|
13
14
|
setActiveTabCode
|
|
14
15
|
}), [activeTabCode, setActiveTabCode]);
|
|
15
16
|
const Container = container || TabsContainer;
|
|
16
|
-
return
|
|
17
|
-
value: contextValue
|
|
18
|
-
|
|
17
|
+
return _jsx(TabContext.Provider, {
|
|
18
|
+
value: contextValue,
|
|
19
|
+
children: _jsx(Container, {
|
|
20
|
+
children: children
|
|
21
|
+
})
|
|
22
|
+
});
|
|
19
23
|
}
|
package/Toast/Toast.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { createPortal } from 'react-dom';
|
|
3
3
|
import { InfoRoundIcon, CheckRoundIcon, WarningRoundIcon, DangerTriangleIcon, CloseIcon } from '@pushwoosh/kit-icons';
|
|
4
4
|
import { H4, Paragraph } from '@pushwoosh/kit-typography';
|
|
@@ -8,32 +8,32 @@ import { RootBox, IconBox, ContentBox, ButtonBox, CloseBox } from './styles';
|
|
|
8
8
|
function getIconByType(type) {
|
|
9
9
|
switch (type) {
|
|
10
10
|
case 'info':
|
|
11
|
-
return
|
|
11
|
+
return _jsx(InfoRoundIcon, {
|
|
12
12
|
view: "filled",
|
|
13
13
|
size: "medium",
|
|
14
14
|
color: TypeColorMap[type]
|
|
15
15
|
});
|
|
16
16
|
case 'success':
|
|
17
|
-
return
|
|
17
|
+
return _jsx(CheckRoundIcon, {
|
|
18
18
|
view: "filled",
|
|
19
19
|
type: "fill",
|
|
20
20
|
size: "medium",
|
|
21
21
|
color: TypeColorMap[type]
|
|
22
22
|
});
|
|
23
23
|
case 'warning':
|
|
24
|
-
return
|
|
24
|
+
return _jsx(WarningRoundIcon, {
|
|
25
25
|
view: "filled",
|
|
26
26
|
size: "medium",
|
|
27
27
|
color: TypeColorMap[type]
|
|
28
28
|
});
|
|
29
29
|
case 'error':
|
|
30
|
-
return
|
|
30
|
+
return _jsx(DangerTriangleIcon, {
|
|
31
31
|
view: "filled",
|
|
32
32
|
size: "medium",
|
|
33
33
|
color: TypeColorMap[type]
|
|
34
34
|
});
|
|
35
35
|
default:
|
|
36
|
-
return
|
|
36
|
+
return _jsx(InfoRoundIcon, {
|
|
37
37
|
view: "filled",
|
|
38
38
|
size: "medium",
|
|
39
39
|
color: TypeColorMap[type]
|
|
@@ -53,18 +53,31 @@ export function Toast(props) {
|
|
|
53
53
|
buttonText,
|
|
54
54
|
onButtonClick
|
|
55
55
|
} = toast;
|
|
56
|
-
return createPortal(
|
|
56
|
+
return createPortal(_jsxs(RootBox, {
|
|
57
57
|
open: open,
|
|
58
58
|
type: type,
|
|
59
|
-
"$hasButton": !!(buttonText && onButtonClick)
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
59
|
+
"$hasButton": !!(buttonText && onButtonClick),
|
|
60
|
+
children: [_jsx(IconBox, {
|
|
61
|
+
children: getIconByType(type)
|
|
62
|
+
}), _jsxs(ContentBox, {
|
|
63
|
+
children: [_jsx(H4, {
|
|
64
|
+
children: title
|
|
65
|
+
}), description && _jsx(Paragraph, {
|
|
66
|
+
children: description
|
|
67
|
+
})]
|
|
68
|
+
}), buttonText && onButtonClick && _jsx(ButtonBox, {
|
|
69
|
+
children: _jsx(Button, {
|
|
70
|
+
view: "ghost",
|
|
71
|
+
size: "compact",
|
|
72
|
+
color: "primary",
|
|
73
|
+
onClick: onButtonClick,
|
|
74
|
+
children: buttonText
|
|
75
|
+
})
|
|
76
|
+
}), _jsx(CloseBox, {
|
|
77
|
+
onClick: onClose,
|
|
78
|
+
children: _jsx(CloseIcon, {
|
|
79
|
+
size: "medium"
|
|
80
|
+
})
|
|
81
|
+
})]
|
|
82
|
+
}), document.body);
|
|
70
83
|
}
|
package/Toast/ToastProvider.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
1
|
import type { ToastContextProps, ToastProviderProps } from './types';
|
|
3
|
-
export declare const ToastContext:
|
|
4
|
-
export declare const ToastProvider: ({ children }: ToastProviderProps) =>
|
|
2
|
+
export declare const ToastContext: import("react").Context<ToastContextProps | null>;
|
|
3
|
+
export declare const ToastProvider: ({ children }: ToastProviderProps) => import("react/jsx-runtime").JSX.Element;
|
package/Toast/ToastProvider.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useState, useMemo, useCallback, createContext } from 'react';
|
|
2
3
|
import { DEFAULT_DURATION } from './constants';
|
|
3
4
|
import { Toast } from './Toast';
|
|
4
5
|
export const ToastContext = createContext(null);
|
|
@@ -39,11 +40,12 @@ export const ToastProvider = ({
|
|
|
39
40
|
openToast,
|
|
40
41
|
closeToast
|
|
41
42
|
}), [openToast, closeToast]);
|
|
42
|
-
return
|
|
43
|
-
value: contextValue
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
43
|
+
return _jsxs(ToastContext.Provider, {
|
|
44
|
+
value: contextValue,
|
|
45
|
+
children: [children, _jsx(Toast, {
|
|
46
|
+
open: open,
|
|
47
|
+
toast: toast,
|
|
48
|
+
onClose: closeToast
|
|
49
|
+
})]
|
|
50
|
+
});
|
|
49
51
|
};
|
package/Tooltip/Tooltip.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { TooltipPositionToArrowOffsetMap, TooltipPositionToTippyOffsetMap, TooltipPositionToTippyPlacementMap } from './maps';
|
|
3
3
|
import { TooltipBox } from './styles';
|
|
4
4
|
export function Tooltip({
|
|
@@ -11,7 +11,7 @@ export function Tooltip({
|
|
|
11
11
|
isVisible,
|
|
12
12
|
...rest
|
|
13
13
|
}) {
|
|
14
|
-
return
|
|
14
|
+
return _jsx(TooltipBox, {
|
|
15
15
|
animation: false,
|
|
16
16
|
delay: 0,
|
|
17
17
|
duration: 0,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { TooltipTriggerViewMap } from './maps';
|
|
3
3
|
import { HelpIconWrapper } from './styles';
|
|
4
4
|
import { Tooltip } from './Tooltip';
|
|
@@ -13,14 +13,16 @@ export function TooltipTrigger({
|
|
|
13
13
|
const {
|
|
14
14
|
icon: Icon
|
|
15
15
|
} = TooltipTriggerViewMap[view];
|
|
16
|
-
return
|
|
17
|
-
...tooltipProps
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
16
|
+
return _jsx(Tooltip, {
|
|
17
|
+
...tooltipProps,
|
|
18
|
+
children: _jsx(HelpIconWrapper, {
|
|
19
|
+
"$padding": padding,
|
|
20
|
+
"$color": TooltipTriggerViewMap[view].color,
|
|
21
|
+
"$hoverColor": hoverColor,
|
|
22
|
+
children: _jsx(Icon, {
|
|
23
|
+
size: size,
|
|
24
|
+
view: "lined"
|
|
25
|
+
})
|
|
26
|
+
})
|
|
27
|
+
});
|
|
26
28
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pushwoosh/dumb-components",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.136",
|
|
4
4
|
"description": "React components to build Pushwoosh products",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"module": "index.js",
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
"npm": ">= 7"
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
|
25
|
-
"@pushwoosh/frontend-builder-engine": "^1.0
|
|
25
|
+
"@pushwoosh/frontend-builder-engine": "^2.1.0",
|
|
26
26
|
"@svgr/webpack": "^8.1.0",
|
|
27
27
|
"@testing-library/jest-dom": "^6.9.1",
|
|
28
28
|
"@testing-library/react": "^16.3.0",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
1
2
|
import '@testing-library/jest-dom';
|
|
2
3
|
import { render, screen } from '@testing-library/react';
|
|
3
|
-
import React from 'react';
|
|
4
4
|
import { stringToAst } from '../liquid/parser';
|
|
5
5
|
import { renderToString, renderToReact } from '../liquid/render';
|
|
6
6
|
const renderString = (template, values = {}, language = 'en') => {
|
|
@@ -139,7 +139,9 @@ describe('renderToReact', () => {
|
|
|
139
139
|
describe('text rendering', () => {
|
|
140
140
|
test('renders plain text', () => {
|
|
141
141
|
const result = renderReactNodes('Hello World');
|
|
142
|
-
render(
|
|
142
|
+
render(_jsx(_Fragment, {
|
|
143
|
+
children: result
|
|
144
|
+
}));
|
|
143
145
|
expect(screen.getByText('Hello World')).toBeInTheDocument();
|
|
144
146
|
});
|
|
145
147
|
});
|
|
@@ -148,7 +150,9 @@ describe('renderToReact', () => {
|
|
|
148
150
|
const result = renderReactNodes('Hello {{ name }}', {
|
|
149
151
|
name: 'John'
|
|
150
152
|
});
|
|
151
|
-
render(
|
|
153
|
+
render(_jsx(_Fragment, {
|
|
154
|
+
children: result
|
|
155
|
+
}));
|
|
152
156
|
expect(screen.getByText(/Hello/)).toBeInTheDocument();
|
|
153
157
|
expect(screen.getByText(/John/)).toBeInTheDocument();
|
|
154
158
|
});
|
|
@@ -156,14 +160,18 @@ describe('renderToReact', () => {
|
|
|
156
160
|
const result = renderReactNodes('{{ name | upperCase }}', {
|
|
157
161
|
name: 'john'
|
|
158
162
|
});
|
|
159
|
-
render(
|
|
163
|
+
render(_jsx(_Fragment, {
|
|
164
|
+
children: result
|
|
165
|
+
}));
|
|
160
166
|
expect(screen.getByText('JOHN')).toBeInTheDocument();
|
|
161
167
|
});
|
|
162
168
|
});
|
|
163
169
|
describe('HTML tag rendering', () => {
|
|
164
170
|
test('renders strong tag', () => {
|
|
165
171
|
const result = renderReactNodes('<strong>bold text</strong>');
|
|
166
|
-
render(
|
|
172
|
+
render(_jsx(_Fragment, {
|
|
173
|
+
children: result
|
|
174
|
+
}));
|
|
167
175
|
const element = screen.getByText('bold text');
|
|
168
176
|
expect(element.tagName).toBe('STRONG');
|
|
169
177
|
});
|
|
@@ -171,25 +179,33 @@ describe('renderToReact', () => {
|
|
|
171
179
|
const result = renderReactNodes('line1<br/>line2');
|
|
172
180
|
const {
|
|
173
181
|
container
|
|
174
|
-
} = render(
|
|
182
|
+
} = render(_jsx(_Fragment, {
|
|
183
|
+
children: result
|
|
184
|
+
}));
|
|
175
185
|
expect(container.querySelector('br')).toBeInTheDocument();
|
|
176
186
|
});
|
|
177
187
|
test('renders img tag with attributes', () => {
|
|
178
188
|
const result = renderReactNodes('<img src="test.png" alt="test image">');
|
|
179
|
-
render(
|
|
189
|
+
render(_jsx(_Fragment, {
|
|
190
|
+
children: result
|
|
191
|
+
}));
|
|
180
192
|
const img = screen.getByAltText('test image');
|
|
181
193
|
expect(img).toHaveAttribute('src', 'test.png');
|
|
182
194
|
});
|
|
183
195
|
test('renders anchor tag with href', () => {
|
|
184
196
|
const result = renderReactNodes('<a href="https://example.com">Link</a>');
|
|
185
|
-
render(
|
|
197
|
+
render(_jsx(_Fragment, {
|
|
198
|
+
children: result
|
|
199
|
+
}));
|
|
186
200
|
const link = screen.getByText('Link');
|
|
187
201
|
expect(link.tagName).toBe('A');
|
|
188
202
|
expect(link).toHaveAttribute('href', 'https://example.com');
|
|
189
203
|
});
|
|
190
204
|
test('renders anchor tag with multiple attributes', () => {
|
|
191
205
|
const result = renderReactNodes('<a href="https://example.com" target="_blank" rel="noreferrer">External Link</a>');
|
|
192
|
-
render(
|
|
206
|
+
render(_jsx(_Fragment, {
|
|
207
|
+
children: result
|
|
208
|
+
}));
|
|
193
209
|
const link = screen.getByText('External Link');
|
|
194
210
|
expect(link).toHaveAttribute('href', 'https://example.com');
|
|
195
211
|
expect(link).toHaveAttribute('target', '_blank');
|
|
@@ -199,7 +215,9 @@ describe('renderToReact', () => {
|
|
|
199
215
|
const result = renderReactNodes('<a href=linkUrl>Custom Link</a>', {
|
|
200
216
|
linkUrl: 'https://custom.com'
|
|
201
217
|
});
|
|
202
|
-
render(
|
|
218
|
+
render(_jsx(_Fragment, {
|
|
219
|
+
children: result
|
|
220
|
+
}));
|
|
203
221
|
const link = screen.getByText('Custom Link');
|
|
204
222
|
expect(link).toHaveAttribute('href', 'https://custom.com');
|
|
205
223
|
});
|
|
@@ -209,21 +227,27 @@ describe('renderToReact', () => {
|
|
|
209
227
|
const result = renderReactNodes('{% if active == true %}visible{% endif %}', {
|
|
210
228
|
active: true
|
|
211
229
|
});
|
|
212
|
-
render(
|
|
230
|
+
render(_jsx(_Fragment, {
|
|
231
|
+
children: result
|
|
232
|
+
}));
|
|
213
233
|
expect(screen.getByText('visible')).toBeInTheDocument();
|
|
214
234
|
});
|
|
215
235
|
test('renders else block when false', () => {
|
|
216
236
|
const result = renderReactNodes('{% if active == true %}yes{% else %}no{% endif %}', {
|
|
217
237
|
active: false
|
|
218
238
|
});
|
|
219
|
-
render(
|
|
239
|
+
render(_jsx(_Fragment, {
|
|
240
|
+
children: result
|
|
241
|
+
}));
|
|
220
242
|
expect(screen.getByText('no')).toBeInTheDocument();
|
|
221
243
|
});
|
|
222
244
|
test('renders for loop', () => {
|
|
223
245
|
const result = renderReactNodes('{% for item in items %}<span>{{ item }}</span>{% endfor %}', {
|
|
224
246
|
items: ['a', 'b', 'c']
|
|
225
247
|
});
|
|
226
|
-
render(
|
|
248
|
+
render(_jsx(_Fragment, {
|
|
249
|
+
children: result
|
|
250
|
+
}));
|
|
227
251
|
expect(screen.getByText('a')).toBeInTheDocument();
|
|
228
252
|
expect(screen.getByText('b')).toBeInTheDocument();
|
|
229
253
|
expect(screen.getByText('c')).toBeInTheDocument();
|
|
@@ -232,7 +256,9 @@ describe('renderToReact', () => {
|
|
|
232
256
|
describe('text tag with styles', () => {
|
|
233
257
|
test('renders text tag', () => {
|
|
234
258
|
const result = renderReactNodes('<text>styled text</text>');
|
|
235
|
-
render(
|
|
259
|
+
render(_jsx(_Fragment, {
|
|
260
|
+
children: result
|
|
261
|
+
}));
|
|
236
262
|
expect(screen.getByText('styled text')).toBeInTheDocument();
|
|
237
263
|
});
|
|
238
264
|
});
|
|
@@ -241,14 +267,18 @@ describe('renderToReact', () => {
|
|
|
241
267
|
const result = renderReactNodes('Hello World');
|
|
242
268
|
const {
|
|
243
269
|
container
|
|
244
|
-
} = render(
|
|
270
|
+
} = render(_jsx(_Fragment, {
|
|
271
|
+
children: result
|
|
272
|
+
}));
|
|
245
273
|
expect(container.textContent).toBe('Hello\u00A0World');
|
|
246
274
|
});
|
|
247
275
|
test('decodes numeric entities in React rendering', () => {
|
|
248
276
|
const result = renderReactNodes('Hello World');
|
|
249
277
|
const {
|
|
250
278
|
container
|
|
251
|
-
} = render(
|
|
279
|
+
} = render(_jsx(_Fragment, {
|
|
280
|
+
children: result
|
|
281
|
+
}));
|
|
252
282
|
expect(container.textContent).toBe('Hello\u00A0World');
|
|
253
283
|
});
|
|
254
284
|
});
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
2
|
import { type ASTNodeList, type Context, type ScalarOrVariable } from './types';
|
|
3
3
|
export declare function applyFilter(filterName: string, value: any, args: ScalarOrVariable[], context: Context): any;
|
|
4
4
|
export declare function renderToString(ast: ASTNodeList, context: Context): string;
|
|
5
|
-
export declare function renderToReact(ast: ASTNodeList, context: Context):
|
|
5
|
+
export declare function renderToReact(ast: ASTNodeList, context: Context): ReactNode[];
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { createElement as _createElement } from "react";
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
3
|
import styled from 'styled-components';
|
|
3
4
|
import { Color } from '@pushwoosh/kit-constants';
|
|
4
5
|
import { variants } from '@pushwoosh/kit-typography/map';
|
|
@@ -105,21 +106,21 @@ export function renderToReact(ast, context) {
|
|
|
105
106
|
const TagName = tagNode.name;
|
|
106
107
|
const props = Object.fromEntries(Object.entries(tagNode.params).map(([key, value]) => [key, unpackScalarOrValue(value, context)]));
|
|
107
108
|
if (TagName === 'text') {
|
|
108
|
-
return [
|
|
109
|
+
return [_jsx(Txt, {
|
|
109
110
|
"$variant": props.variant,
|
|
110
111
|
"$color": props.color && getColor(props.color),
|
|
111
112
|
"$opacity": props.opacity,
|
|
112
113
|
"$transform": props.transform,
|
|
113
|
-
|
|
114
|
-
},
|
|
114
|
+
children: children
|
|
115
|
+
}, key)];
|
|
115
116
|
}
|
|
116
117
|
if (voidTags.has(TagName)) {
|
|
117
|
-
return [
|
|
118
|
+
return [_createElement(TagName, {
|
|
118
119
|
...props,
|
|
119
120
|
key: key
|
|
120
121
|
})];
|
|
121
122
|
}
|
|
122
|
-
return [
|
|
123
|
+
return [_createElement(TagName, {
|
|
123
124
|
...props,
|
|
124
125
|
key: key
|
|
125
126
|
}, children)];
|
package/polyglot/react.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { createContext, useContext, useMemo } from 'react';
|
|
2
3
|
import { stringToAst } from './liquid/parser';
|
|
3
4
|
import { renderToReact, renderToString } from './liquid/render';
|
|
4
5
|
const createLangPack = (language, timezone) => {
|
|
@@ -68,9 +69,10 @@ export const LangProvider = ({
|
|
|
68
69
|
pack.register(languages);
|
|
69
70
|
return pack;
|
|
70
71
|
}, [languages, language, timezone]);
|
|
71
|
-
return
|
|
72
|
-
value: langFnPack
|
|
73
|
-
|
|
72
|
+
return _jsx(LangContext.Provider, {
|
|
73
|
+
value: langFnPack,
|
|
74
|
+
children: children
|
|
75
|
+
});
|
|
74
76
|
};
|
|
75
77
|
export const LangBase = props => {
|
|
76
78
|
return useContext(LangContext).langReact(props);
|
|
@@ -90,7 +92,7 @@ export const useLangLib = languages => {
|
|
|
90
92
|
return ctx.lang;
|
|
91
93
|
};
|
|
92
94
|
export const createLang = languages => ({
|
|
93
|
-
Lang: props =>
|
|
95
|
+
Lang: props => _jsx(LangLib, {
|
|
94
96
|
"$languages": languages,
|
|
95
97
|
...props
|
|
96
98
|
}),
|