@expressms/smartapp-ui 2.8.0 → 2.8.2-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/main/assets/icons/more.svg +3 -0
- package/build/main/assets/storybook/index.d.ts +2 -0
- package/build/main/assets/storybook/index.js +2 -0
- package/build/main/assets/storybook/index.js.map +1 -1
- package/build/main/constants/constants.d.ts +6 -3
- package/build/main/constants/constants.js +8 -3
- package/build/main/constants/constants.js.map +1 -1
- package/build/main/styles/styles.scss +2 -2
- package/build/main//321/201omponents/CustomSelect/CustomSelect.d.ts +9 -1
- package/build/main//321/201omponents/CustomSelect/CustomSelect.js +57 -10
- package/build/main//321/201omponents/CustomSelect/CustomSelect.js.map +1 -1
- package/build/main//321/201omponents/CustomSelect/selectStyles.js +6 -0
- package/build/main//321/201omponents/CustomSelect/selectStyles.js.map +1 -1
- package/build/main//321/201omponents/CustomSelect/types.d.ts +1 -1
- package/build/main//321/201omponents/DraggablePopup/DraggablePopup.d.ts +4 -0
- package/build/main//321/201omponents/DraggablePopup/DraggablePopup.js +124 -0
- package/build/main//321/201omponents/DraggablePopup/DraggablePopup.js.map +1 -0
- package/build/main//321/201omponents/DraggablePopup/index.d.ts +1 -0
- package/build/main//321/201omponents/DraggablePopup/index.js +2 -0
- package/build/main//321/201omponents/DraggablePopup/index.js.map +1 -0
- package/build/main//321/201omponents/DraggablePopup/types.d.ts +60 -0
- package/build/main//321/201omponents/DraggablePopup/types.js +2 -0
- package/build/main//321/201omponents/DraggablePopup/types.js.map +1 -0
- package/build/main//321/201omponents/ListItem/ListItem.js +2 -2
- package/build/main//321/201omponents/ListItem/ListItem.js.map +1 -1
- package/build/main//321/201omponents/ListItem/types.d.ts +2 -1
- package/build/main//321/201omponents/Loader/Loader.d.ts +1 -1
- package/build/main//321/201omponents/Loader/Loader.js +9 -2
- package/build/main//321/201omponents/Loader/Loader.js.map +1 -1
- package/build/main//321/201omponents/Loader/types.d.ts +2 -0
- package/build/main//321/201omponents/Modal/Modal.d.ts +1 -1
- package/build/main//321/201omponents/Modal/Modal.js +45 -12
- package/build/main//321/201omponents/Modal/Modal.js.map +1 -1
- package/build/main//321/201omponents/Modal/types.d.ts +11 -5
- package/build/main//321/201omponents/ScrollBar/ScrollBar.d.ts +1 -1
- package/build/main//321/201omponents/ScrollBar/ScrollBar.js +2 -2
- package/build/main//321/201omponents/ScrollBar/ScrollBar.js.map +1 -1
- package/build/main//321/201omponents/ScrollBar/types.d.ts +1 -0
- package/build/main//321/201omponents/Skeleton/Skeleton.d.ts +1 -1
- package/build/main//321/201omponents/Skeleton/Skeleton.js +8 -23
- package/build/main//321/201omponents/Skeleton/Skeleton.js.map +1 -1
- package/build/main//321/201omponents/Stories/Stories.js +49 -34
- package/build/main//321/201omponents/Stories/Stories.js.map +1 -1
- package/build/main//321/201omponents/UserDropdown/LoadingMessage/LoadingMessage.d.ts +1 -1
- package/build/main//321/201omponents/UserDropdown/LoadingMessage/LoadingMessage.js +2 -2
- package/build/main//321/201omponents/UserDropdown/LoadingMessage/LoadingMessage.js.map +1 -1
- package/build/main//321/201omponents/UserDropdown/MenuList/MenuList.js +2 -2
- package/build/main//321/201omponents/UserDropdown/MenuList/MenuList.js.map +1 -1
- package/build/main//321/201omponents/UserDropdown/Option/Option.js +2 -1
- package/build/main//321/201omponents/UserDropdown/Option/Option.js.map +1 -1
- package/build/main//321/201omponents/UserDropdown/UserDropdown.d.ts +1 -1
- package/build/main//321/201omponents/UserDropdown/UserDropdown.js +15 -15
- package/build/main//321/201omponents/UserDropdown/UserDropdown.js.map +1 -1
- package/build/main//321/201omponents/UserDropdown/types.d.ts +0 -2
- package/build/main//321/201omponents/index.d.ts +1 -0
- package/build/main//321/201omponents/index.js +1 -0
- package/build/main//321/201omponents/index.js.map +1 -1
- package/package.json +2 -1
|
@@ -10,13 +10,14 @@ var __assign = (this && this.__assign) || function () {
|
|
|
10
10
|
return __assign.apply(this, arguments);
|
|
11
11
|
};
|
|
12
12
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
|
+
import { cloneElement } from 'react';
|
|
13
14
|
import classNames from 'classnames';
|
|
14
15
|
import { COLORS, FONT_SIZE, LINE_HEIGHT, THEME } from '../../constants';
|
|
15
16
|
import { generateColor, isDarkTheme } from '../../helpers';
|
|
16
17
|
import { ReactComponent as LoaderIcon } from '../../assets/icons/loader.svg';
|
|
17
18
|
import '../../styles/styles.scss';
|
|
18
19
|
var Loader = function (_a) {
|
|
19
|
-
var isLoader = _a.isLoader, _b = _a.isFullScreen, isFullScreen = _b === void 0 ? true : _b, _c = _a.isTextItalic, isTextItalic = _c === void 0 ? false : _c, title = _a.title, _d = _a.textSize, textSize = _d === void 0 ? 'small' : _d, _e = _a.width, width = _e === void 0 ? 150 : _e, _f = _a.iconSize, iconSize = _f === void 0 ? 25 : _f, containerClassName = _a.containerClassName, className = _a.className, containerStyles = _a.containerStyles, styles = _a.styles, color = _a.color, backgroundColor = _a.backgroundColor, _g = _a.theme, theme = _g === void 0 ? THEME.default : _g;
|
|
20
|
+
var isLoader = _a.isLoader, _b = _a.isFullScreen, isFullScreen = _b === void 0 ? true : _b, _c = _a.isTextItalic, isTextItalic = _c === void 0 ? false : _c, title = _a.title, _d = _a.textSize, textSize = _d === void 0 ? 'small' : _d, _e = _a.width, width = _e === void 0 ? 150 : _e, _f = _a.iconSize, iconSize = _f === void 0 ? 25 : _f, containerClassName = _a.containerClassName, className = _a.className, containerStyles = _a.containerStyles, styles = _a.styles, color = _a.color, backgroundColor = _a.backgroundColor, _g = _a.theme, theme = _g === void 0 ? THEME.default : _g, _h = _a.icon, icon = _h === void 0 ? _jsx(LoaderIcon, {}) : _h;
|
|
20
21
|
var loaderColor = generateColor(color, COLORS.blue);
|
|
21
22
|
var generateTextStyles = function () { return ({
|
|
22
23
|
fontSize: FONT_SIZE[textSize],
|
|
@@ -31,7 +32,13 @@ var Loader = function (_a) {
|
|
|
31
32
|
if (!isLoader) {
|
|
32
33
|
return null;
|
|
33
34
|
}
|
|
34
|
-
|
|
35
|
+
var iconProps = {
|
|
36
|
+
className: 'smartapp-loader__icon',
|
|
37
|
+
width: iconSize,
|
|
38
|
+
height: iconSize,
|
|
39
|
+
style: { color: loaderColor },
|
|
40
|
+
};
|
|
41
|
+
return (_jsx("div", __assign({ className: classNames('smartapp-loader-wrapper', { 'smartapp-loader-wrapper__full-screen': isFullScreen }, containerClassName), style: __assign({ background: generateBackgroundColor() }, containerStyles) }, { children: _jsxs("div", __assign({ className: classNames('smartapp-loader', className), style: __assign({ width: "".concat(width, "px") }, styles) }, { children: [cloneElement(icon, iconProps), title && (_jsx("p", __assign({ className: "smartapp-loader__title", style: generateTextStyles() }, { children: title })))] })) })));
|
|
35
42
|
};
|
|
36
43
|
export default Loader;
|
|
37
44
|
//# sourceMappingURL=Loader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Loader.js","sourceRoot":"","sources":["../../../../src/сomponents/Loader/Loader.tsx"],"names":[],"mappings":";;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"Loader.js","sourceRoot":"","sources":["../../../../src/сomponents/Loader/Loader.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAc,EAAE,YAAY,EAAE,MAAM,OAAO,CAAA;AAC3C,OAAO,UAAU,MAAM,YAAY,CAAA;AAEnC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAC1D,OAAO,EAAE,cAAc,IAAI,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAC5E,OAAO,0BAA0B,CAAA;AAEjC,IAAM,MAAM,GAAG,UAAC,EAgBD;QAfb,QAAQ,cAAA,EACR,oBAAmB,EAAnB,YAAY,mBAAG,IAAI,KAAA,EACnB,oBAAoB,EAApB,YAAY,mBAAG,KAAK,KAAA,EACpB,KAAK,WAAA,EACL,gBAAkB,EAAlB,QAAQ,mBAAG,OAAO,KAAA,EAClB,aAAW,EAAX,KAAK,mBAAG,GAAG,KAAA,EACX,gBAAa,EAAb,QAAQ,mBAAG,EAAE,KAAA,EACb,kBAAkB,wBAAA,EAClB,SAAS,eAAA,EACT,eAAe,qBAAA,EACf,MAAM,YAAA,EACN,KAAK,WAAA,EACL,eAAe,qBAAA,EACf,aAAqB,EAArB,KAAK,mBAAG,KAAK,CAAC,OAAO,KAAA,EACrB,YAAqB,EAArB,IAAI,mBAAG,KAAC,UAAU,KAAG,KAAA;IAErB,IAAM,WAAW,GAAG,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;IAErD,IAAM,kBAAkB,GAAG,cAAM,OAAA,CAAC;QAChC,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAAC;QAC7B,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;QAC7C,UAAU,EAAE,WAAW,CAAC,QAAQ,CAAC;KAClC,CAAC,EAJ+B,CAI/B,CAAA;IAEF,IAAM,uBAAuB,GAAG;QAC9B,IAAM,oBAAoB,GAAG,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAA;QAC7E,IAAM,YAAY,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,oBAAoB,CAAA;QAE9E,OAAO,aAAa,CAAC,eAAe,EAAE,YAAY,CAAC,CAAA;IACrD,CAAC,CAAA;IAED,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO,IAAI,CAAA;KACZ;IAED,IAAM,SAAS,GAAG;QAChB,SAAS,EAAE,uBAAuB;QAClC,KAAK,EAAE,QAAQ;QACf,MAAM,EAAE,QAAQ;QAChB,KAAK,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE;KAC9B,CAAA;IAED,OAAO,CACL,uBACE,SAAS,EAAE,UAAU,CAAC,yBAAyB,EAAE,EAAE,sCAAsC,EAAE,YAAY,EAAE,EAAE,kBAAkB,CAAC,EAC9H,KAAK,aAAI,UAAU,EAAE,uBAAuB,EAAE,IAAK,eAAe,iBAElE,wBAAK,SAAS,EAAE,UAAU,CAAC,iBAAiB,EAAE,SAAS,CAAC,EAAE,KAAK,aAAI,KAAK,EAAE,UAAG,KAAK,OAAI,IAAK,MAAM,kBAC9F,YAAY,CAAC,IAAI,EAAE,SAAS,CAAC,EAC7B,KAAK,IAAI,CACR,qBAAG,SAAS,EAAC,wBAAwB,EAAC,KAAK,EAAE,kBAAkB,EAAE,gBAC9D,KAAK,IACJ,CACL,KACG,IACF,CACP,CAAA;AACH,CAAC,CAAA;AAED,eAAe,MAAM,CAAA"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { ReactElement } from 'react';
|
|
1
2
|
import { IThemeProps, TStyles } from '../../constants';
|
|
2
3
|
export interface ILoaderProps extends IThemeProps {
|
|
3
4
|
isLoader: boolean;
|
|
@@ -13,4 +14,5 @@ export interface ILoaderProps extends IThemeProps {
|
|
|
13
14
|
styles?: TStyles;
|
|
14
15
|
color?: string;
|
|
15
16
|
backgroundColor?: string;
|
|
17
|
+
icon?: ReactElement;
|
|
16
18
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { IModalProps } from './types';
|
|
2
2
|
import '../../styles/styles.scss';
|
|
3
|
-
declare const Modal: ({ isModalOpen, isClosableOutside, isCloseIconHidden, modalId, content, bottomContent,
|
|
3
|
+
declare const Modal: ({ isModalOpen, isClosableOutside, isCloseIconHidden, isPopup, isBottomSheet, isDisabledBottomSheet, isCloseButtonDisabled, modalId, content, bottomContent, title, platform, popupClassName, className, popupStyles, styles, titleStyles, contentStyles, iconColor, backgroundColor, modalMaxHeight, bottomSheetProps, externalBottomSheetScrollContainer, contextMenuProps, handleCloseModal, }: IModalProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
4
4
|
export default Modal;
|
|
@@ -9,13 +9,26 @@ var __assign = (this && this.__assign) || function () {
|
|
|
9
9
|
};
|
|
10
10
|
return __assign.apply(this, arguments);
|
|
11
11
|
};
|
|
12
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
13
|
+
var t = {};
|
|
14
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
15
|
+
t[p] = s[p];
|
|
16
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
17
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
18
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
19
|
+
t[p[i]] = s[p[i]];
|
|
20
|
+
}
|
|
21
|
+
return t;
|
|
22
|
+
};
|
|
12
23
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
24
|
import { useEffect, useRef, useState } from 'react';
|
|
14
25
|
import classNames from 'classnames';
|
|
15
26
|
import ScrollBar from '../ScrollBar';
|
|
27
|
+
import ContextMenu from '../ContextMenu';
|
|
16
28
|
import { DEFAULT_SCROLL_BAR_HEIGHT } from '../ScrollBar/ScrollBar';
|
|
17
29
|
import { ReactComponent as CloseIcon } from '../../assets/icons/cancel-cross.svg';
|
|
18
|
-
import {
|
|
30
|
+
import { ReactComponent as MoreIcon } from '../../assets/icons/more.svg';
|
|
31
|
+
import { EVENT_LISTENER_TYPES, PLATFORM } from '../../constants';
|
|
19
32
|
import { checkIfContentIsCentered, generateClassNames, generateColor, generateIsCloseIconHidden, generateBottomSheetClassName, isMobilePlatform, } from '../../helpers';
|
|
20
33
|
import { useModal } from '../../hooks/useModal';
|
|
21
34
|
import '../../styles/styles.scss';
|
|
@@ -25,7 +38,7 @@ var CONTENT_PADDING_TOP = 20;
|
|
|
25
38
|
var MODAL_TITLE_MARGIN_BOTTOM = 16;
|
|
26
39
|
var MODAL_MARGIN_SIZE_MOBILE = 136;
|
|
27
40
|
var Modal = function (_a) {
|
|
28
|
-
var isModalOpen = _a.isModalOpen, _b = _a.isClosableOutside, isClosableOutside = _b === void 0 ? true : _b, isCloseIconHidden = _a.isCloseIconHidden,
|
|
41
|
+
var isModalOpen = _a.isModalOpen, _b = _a.isClosableOutside, isClosableOutside = _b === void 0 ? true : _b, isCloseIconHidden = _a.isCloseIconHidden, isPopup = _a.isPopup, _c = _a.isBottomSheet, isBottomSheet = _c === void 0 ? false : _c, _d = _a.isDisabledBottomSheet, isDisabledBottomSheet = _d === void 0 ? false : _d, _e = _a.isCloseButtonDisabled, isCloseButtonDisabled = _e === void 0 ? false : _e, modalId = _a.modalId, content = _a.content, bottomContent = _a.bottomContent, title = _a.title, _f = _a.platform, platform = _f === void 0 ? PLATFORM.web : _f, popupClassName = _a.popupClassName, className = _a.className, popupStyles = _a.popupStyles, styles = _a.styles, titleStyles = _a.titleStyles, contentStyles = _a.contentStyles, iconColor = _a.iconColor, backgroundColor = _a.backgroundColor, modalMaxHeight = _a.modalMaxHeight, bottomSheetProps = _a.bottomSheetProps, externalBottomSheetScrollContainer = _a.externalBottomSheetScrollContainer, contextMenuProps = _a.contextMenuProps, handleCloseModal = _a.handleCloseModal;
|
|
29
42
|
var ref = useRef(null);
|
|
30
43
|
var titleRef = useRef(null);
|
|
31
44
|
var scrollableContentRef = useRef(null);
|
|
@@ -47,8 +60,9 @@ var Modal = function (_a) {
|
|
|
47
60
|
}), shouldUseBottomSheet = _h.shouldUseBottomSheet, renderModal = _h.renderModal;
|
|
48
61
|
var additionalClassName = generateBottomSheetClassName(platform, shouldUseBottomSheet);
|
|
49
62
|
var isCloseIconInvisible = generateIsCloseIconHidden(platform, isCloseIconHidden);
|
|
50
|
-
var
|
|
51
|
-
var
|
|
63
|
+
var modalMargins = isMobilePlatform(platform) ? MODAL_MARGIN_SIZE_MOBILE : 2 * MODAL_MARGIN_SIZE_WEB;
|
|
64
|
+
var MAX_MODAL_HEIGHT = modalMaxHeight || window.innerHeight - modalMargins;
|
|
65
|
+
var handleMouseDown = function (event) { return !isPopup && event.stopPropagation(); };
|
|
52
66
|
var handleSetContainerHeight = function (contentRef) {
|
|
53
67
|
var _a, _b;
|
|
54
68
|
if (!contentRef)
|
|
@@ -70,23 +84,42 @@ var Modal = function (_a) {
|
|
|
70
84
|
handleCloseModal();
|
|
71
85
|
}
|
|
72
86
|
};
|
|
73
|
-
document === null || document === void 0 ? void 0 : document.addEventListener(
|
|
87
|
+
!isPopup && (document === null || document === void 0 ? void 0 : document.addEventListener(EVENT_LISTENER_TYPES.click, checkIfClickedOutside, true));
|
|
74
88
|
return function () {
|
|
75
|
-
document === null || document === void 0 ? void 0 : document.removeEventListener(
|
|
89
|
+
document === null || document === void 0 ? void 0 : document.removeEventListener(EVENT_LISTENER_TYPES.click, checkIfClickedOutside, true);
|
|
76
90
|
};
|
|
77
|
-
}, [isModalOpen, isClosableOutside, handleCloseModal]);
|
|
91
|
+
}, [isModalOpen, isClosableOutside, handleCloseModal, isPopup]);
|
|
92
|
+
var renderTitle = function () {
|
|
93
|
+
return title && (_jsxs("div", { children: [!isCloseIconInvisible && renderCloseIconSpace({ elementRef: titleRef, isLarge: true }), _jsx("p", __assign({ ref: titleRef, className: "smartapp-modal__content--title", style: titleStyles }, { children: title }))] }));
|
|
94
|
+
};
|
|
95
|
+
var renderCloseIcon = function () {
|
|
96
|
+
return !isCloseIconInvisible && (_jsx("div", __assign({ onClick: !isCloseButtonDisabled ? handleCloseModal : function () { }, className: classNames('smartapp-modal__content--close-icon', {
|
|
97
|
+
'smartapp-modal__content--close-icon__disabled': isCloseButtonDisabled,
|
|
98
|
+
}) }, { children: _jsx(CloseIcon, { style: { color: generateColor(iconColor) } }) })));
|
|
99
|
+
};
|
|
78
100
|
var renderCloseIconSpace = function (_a) {
|
|
79
101
|
var elementRef = _a.elementRef, _b = _a.isLarge, isLarge = _b === void 0 ? false : _b, _c = _a.isContent, isContent = _c === void 0 ? false : _c;
|
|
102
|
+
var isContentCentered = checkIfContentIsCentered(elementRef);
|
|
80
103
|
return (_jsx("div", { className: classNames('close-icon-space', {
|
|
81
104
|
'close-icon-space__large': isLarge,
|
|
105
|
+
'close-icon-space__large--with-context-menu': isLarge && contextMenuProps,
|
|
82
106
|
'close-icon-space__content': isContent,
|
|
83
|
-
'close-icon-
|
|
107
|
+
'close-icon-space__content--with-context-menu': isContent && contextMenuProps,
|
|
108
|
+
'close-icon-space__centered': isContentCentered,
|
|
109
|
+
'close-icon-space__centered--with-context-menu': isContentCentered && contextMenuProps,
|
|
84
110
|
}) }));
|
|
85
111
|
};
|
|
86
|
-
var
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
112
|
+
var renderContextMenuIcon = function () {
|
|
113
|
+
if (contextMenuProps) {
|
|
114
|
+
var openMenu = contextMenuProps.openMenu, isMenuOpen = contextMenuProps.isMenuOpen, remainingProps = __rest(contextMenuProps, ["openMenu", "isMenuOpen"]);
|
|
115
|
+
return (_jsxs("div", __assign({ className: classNames('smartapp-modal__content--context-menu-icon', { 'smartapp-modal__content--context-menu-icon__active': isMenuOpen }), onClick: openMenu }, { children: [_jsx(MoreIcon, {}), _jsx(ContextMenu, __assign({ isMenuOpen: isMenuOpen }, remainingProps))] })));
|
|
116
|
+
}
|
|
117
|
+
};
|
|
118
|
+
var renderBottomContent = function () {
|
|
119
|
+
return bottomContent && (_jsx("div", __assign({ ref: bottomContentRef, className: classNames('smartapp-modal__content--bottom', 'smartapp-modal__content--pr', 'smartapp-modal__content--pb') }, { children: bottomContent })));
|
|
120
|
+
};
|
|
121
|
+
var modalContent = (_jsx("div", __assign({ ref: ref, className: classNames('smartapp-modal', { 'smartapp-modal__bottom-sheet': shouldUseBottomSheet }, className), style: styles, onMouseDown: handleMouseDown }, { children: _jsxs("div", __assign({ className: generateClassNames({ className: 'smartapp-modal__content', delimiter: '--', additionalClassName: additionalClassName }), style: contentStyles }, { children: [renderTitle(), _jsxs("div", __assign({ className: "smartapp-modal__content--icons" }, { children: [renderContextMenuIcon(), renderCloseIcon()] })), _jsx(ScrollBar, { contentId: modalId, scrollerProps: { elementRef: function (el) { return (scrollerRef.current = el); } }, content: _jsxs("div", __assign({ ref: handleSetContainerHeight, className: classNames('smartapp-modal__content--pr', { 'smartapp-modal__content--pb': !bottomContent }) }, { children: [!title && !isCloseIconInvisible && renderCloseIconSpace({ elementRef: scrollableContentRef, isContent: true }), _jsx("div", __assign({ ref: scrollableContentRef }, { children: content }))] })), containerHeight: containerHeight, trackHeight: bottomContent ? DEFAULT_SCROLL_BAR_HEIGHT : SCROLL_BAR_HEIGHT_WITH_PADDING }), renderBottomContent()] })) })));
|
|
122
|
+
return isPopup ? modalContent : renderModal(modalContent);
|
|
90
123
|
};
|
|
91
124
|
export default Modal;
|
|
92
125
|
//# sourceMappingURL=Modal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Modal.js","sourceRoot":"","sources":["../../../../src/сomponents/Modal/Modal.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Modal.js","sourceRoot":"","sources":["../../../../src/сomponents/Modal/Modal.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,18 @@
|
|
|
1
|
-
import { ReactElement, RefObject } from 'react';
|
|
1
|
+
import React, { ReactElement, RefObject } from 'react';
|
|
2
2
|
import { BottomSheetProps } from 'alex.chus-react-spring-bottom-sheet';
|
|
3
3
|
import { ICommonProps, TStyles } from '../../constants';
|
|
4
|
+
import { IContextMenuProps } from '../ContextMenu/types';
|
|
4
5
|
export interface IModalProps extends ICommonProps {
|
|
5
6
|
isModalOpen: boolean;
|
|
6
7
|
isClosableOutside?: boolean;
|
|
7
8
|
isCloseIconHidden?: boolean;
|
|
9
|
+
isCloseButtonDisabled?: boolean;
|
|
10
|
+
isPopup?: boolean;
|
|
11
|
+
isBottomSheet?: boolean;
|
|
12
|
+
isDisabledBottomSheet?: boolean;
|
|
8
13
|
modalId?: string;
|
|
9
14
|
content: ReactElement;
|
|
10
15
|
bottomContent?: ReactElement;
|
|
11
|
-
handleCloseModal: () => void;
|
|
12
16
|
title?: string;
|
|
13
17
|
popupClassName?: string;
|
|
14
18
|
className?: string;
|
|
@@ -18,9 +22,11 @@ export interface IModalProps extends ICommonProps {
|
|
|
18
22
|
contentStyles?: TStyles;
|
|
19
23
|
iconColor?: string;
|
|
20
24
|
backgroundColor?: string;
|
|
21
|
-
|
|
22
|
-
isDisabledBottomSheet?: boolean;
|
|
25
|
+
modalMaxHeight?: number;
|
|
23
26
|
bottomSheetProps?: Partial<BottomSheetProps>;
|
|
24
|
-
isCloseButtonDisabled?: boolean;
|
|
25
27
|
externalBottomSheetScrollContainer?: RefObject<HTMLDivElement | null>;
|
|
28
|
+
contextMenuProps?: IContextMenuProps & {
|
|
29
|
+
openMenu: (event?: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;
|
|
30
|
+
};
|
|
31
|
+
handleCloseModal: () => void;
|
|
26
32
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { IScrollBarProps } from './types';
|
|
2
2
|
import '../../styles/styles.scss';
|
|
3
3
|
export declare const DEFAULT_SCROLL_BAR_HEIGHT = "100%";
|
|
4
|
-
declare const ScrollBar: ({ platform, contentId, content, handleScroll, hideDuration, containerHeight, trackHeight, containerClassName, containerStyles, scrollbarRef, ...restProps }: IScrollBarProps) => import("react/jsx-runtime").JSX.Element;
|
|
4
|
+
declare const ScrollBar: ({ platform, contentId, content, handleScroll, hideDuration, containerHeight, trackHeight, containerClassName, containerStyles, scrollbarRef, containerScrollRef, ...restProps }: IScrollBarProps) => import("react/jsx-runtime").JSX.Element;
|
|
5
5
|
export default ScrollBar;
|
|
@@ -31,7 +31,7 @@ export var DEFAULT_SCROLL_BAR_HEIGHT = '100%';
|
|
|
31
31
|
var HIDE_THUMB_CLASSNAME = 'smartapp-scroll__thumb';
|
|
32
32
|
var SHOW_THUMB_CLASSNAME = "".concat(HIDE_THUMB_CLASSNAME, "--show ").concat(HIDE_THUMB_CLASSNAME);
|
|
33
33
|
var ScrollBar = function (_a) {
|
|
34
|
-
var _b = _a.platform, platform = _b === void 0 ? PLATFORM.web : _b, contentId = _a.contentId, content = _a.content, handleScroll = _a.handleScroll, _c = _a.hideDuration, hideDuration = _c === void 0 ? DEFAULT_SCROLL_BAR_HIDE_DURATION : _c, _d = _a.containerHeight, containerHeight = _d === void 0 ? DEFAULT_SCROLL_BAR_HEIGHT : _d, _e = _a.trackHeight, trackHeight = _e === void 0 ? DEFAULT_SCROLL_BAR_HEIGHT : _e, containerClassName = _a.containerClassName, containerStyles = _a.containerStyles, scrollbarRef = _a.scrollbarRef, restProps = __rest(_a, ["platform", "contentId", "content", "handleScroll", "hideDuration", "containerHeight", "trackHeight", "containerClassName", "containerStyles", "scrollbarRef"]);
|
|
34
|
+
var _b = _a.platform, platform = _b === void 0 ? PLATFORM.web : _b, contentId = _a.contentId, content = _a.content, handleScroll = _a.handleScroll, _c = _a.hideDuration, hideDuration = _c === void 0 ? DEFAULT_SCROLL_BAR_HIDE_DURATION : _c, _d = _a.containerHeight, containerHeight = _d === void 0 ? DEFAULT_SCROLL_BAR_HEIGHT : _d, _e = _a.trackHeight, trackHeight = _e === void 0 ? DEFAULT_SCROLL_BAR_HEIGHT : _e, containerClassName = _a.containerClassName, containerStyles = _a.containerStyles, scrollbarRef = _a.scrollbarRef, containerScrollRef = _a.containerScrollRef, restProps = __rest(_a, ["platform", "contentId", "content", "handleScroll", "hideDuration", "containerHeight", "trackHeight", "containerClassName", "containerStyles", "scrollbarRef", "containerScrollRef"]);
|
|
35
35
|
var _f = useState(generateId()), scrollbarKey = _f[0], setScrollbarKey = _f[1];
|
|
36
36
|
var _g = useState(false), scrolling = _g[0], setScrolling = _g[1];
|
|
37
37
|
useEffect(function () {
|
|
@@ -57,7 +57,7 @@ var ScrollBar = function (_a) {
|
|
|
57
57
|
}),
|
|
58
58
|
style: generateScrollerStyles(),
|
|
59
59
|
}); };
|
|
60
|
-
return (_jsx("div", __assign({ style: __assign({ height: containerHeight }, containerStyles), className: classNames('smartapp-scroll', containerClassName) }, { children: _jsx(Scrollbar, __assign({ ref: scrollbarRef, native: false, mobileNative: false, removeTracksWhenNotUsed: true, onScroll: onScroll, wrapperProps: { className: 'smartapp-scroll__wrapper' }, thumbYProps: { className: generateThumbClassName() }, trackYProps: generateTrackYProps() }, restProps, { children: content }), scrollbarKey) })));
|
|
60
|
+
return (_jsx("div", __assign({ ref: containerScrollRef, style: __assign({ height: containerHeight }, containerStyles), className: classNames('smartapp-scroll', containerClassName) }, { children: _jsx(Scrollbar, __assign({ ref: scrollbarRef, native: false, mobileNative: false, removeTracksWhenNotUsed: true, onScroll: onScroll, wrapperProps: { className: 'smartapp-scroll__wrapper' }, thumbYProps: { className: generateThumbClassName() }, trackYProps: generateTrackYProps() }, restProps, { children: content }), scrollbarKey) })));
|
|
61
61
|
};
|
|
62
62
|
export default ScrollBar;
|
|
63
63
|
//# sourceMappingURL=ScrollBar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScrollBar.js","sourceRoot":"","sources":["../../../../src/сomponents/ScrollBar/ScrollBar.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAc,EAAE,WAAW,EAAE,SAAS,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAChF,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,SAAS,MAAM,yBAAyB,CAAA;AAE/C,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AACzD,OAAO,EAAE,gCAAgC,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAE5E,OAAO,0BAA0B,CAAA;AAEjC,MAAM,CAAC,IAAM,yBAAyB,GAAG,MAAM,CAAA;AAC/C,IAAM,oBAAoB,GAAG,wBAAwB,CAAA;AACrD,IAAM,oBAAoB,GAAG,UAAG,oBAAoB,oBAAU,oBAAoB,CAAE,CAAA;AAEpF,IAAM,SAAS,GAAG,UAAC,
|
|
1
|
+
{"version":3,"file":"ScrollBar.js","sourceRoot":"","sources":["../../../../src/сomponents/ScrollBar/ScrollBar.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAc,EAAE,WAAW,EAAE,SAAS,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAChF,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,SAAS,MAAM,yBAAyB,CAAA;AAE/C,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AACzD,OAAO,EAAE,gCAAgC,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAE5E,OAAO,0BAA0B,CAAA;AAEjC,MAAM,CAAC,IAAM,yBAAyB,GAAG,MAAM,CAAA;AAC/C,IAAM,oBAAoB,GAAG,wBAAwB,CAAA;AACrD,IAAM,oBAAoB,GAAG,UAAG,oBAAoB,oBAAU,oBAAoB,CAAE,CAAA;AAEpF,IAAM,SAAS,GAAG,UAAC,EAaD;IAZhB,IAAA,gBAAuB,EAAvB,QAAQ,mBAAG,QAAQ,CAAC,GAAG,KAAA,EACvB,SAAS,eAAA,EACT,OAAO,aAAA,EACP,YAAY,kBAAA,EACZ,oBAA+C,EAA/C,YAAY,mBAAG,gCAAgC,KAAA,EAC/C,uBAA2C,EAA3C,eAAe,mBAAG,yBAAyB,KAAA,EAC3C,mBAAuC,EAAvC,WAAW,mBAAG,yBAAyB,KAAA,EACvC,kBAAkB,wBAAA,EAClB,eAAe,qBAAA,EACf,YAAY,kBAAA,EACZ,kBAAkB,wBAAA,EACf,SAAS,cAZK,qLAalB,CADa;IAEN,IAAA,KAAkC,QAAQ,CAAC,UAAU,EAAE,CAAC,EAAvD,YAAY,QAAA,EAAE,eAAe,QAA0B,CAAA;IACxD,IAAA,KAA4B,QAAQ,CAAC,KAAK,CAAC,EAA1C,SAAS,QAAA,EAAE,YAAY,QAAmB,CAAA;IAEjD,SAAS,CAAC;QACR,IAAM,eAAe,GAAG,UAAU,CAAC,cAAM,OAAA,YAAY,CAAC,KAAK,CAAC,EAAnB,CAAmB,EAAE,YAAY,CAAC,CAAA;QAC3E,OAAO,cAAM,OAAA,YAAY,CAAC,eAAe,CAAC,EAA7B,CAA6B,CAAA;QAC1C,8BAA8B;IAChC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAEf,eAAe,CAAC;QACd,IAAI,SAAS,EAAE;YACb,YAAY,CAAC,KAAK,CAAC,CAAA;YACnB,eAAe,CAAC,SAAS,CAAC,CAAA;SAC3B;IACH,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAEf,IAAM,QAAQ,GAAG,UAAC,YAAkE;QAClF,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAG,YAAY,CAAC,CAAA;QAC5B,YAAY,CAAC,IAAI,CAAC,CAAA;IACpB,CAAC,CAAA;IAED,IAAM,sBAAsB,GAAG,WAAW,CAAC,cAAM,OAAA,CAAC,SAAS,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,oBAAoB,CAAC,EAAzD,CAAyD,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAExH,IAAM,sBAAsB,GAAG,cAAM,OAAA,CAAC,EAAE,mBAAmB,EAAE,WAAW,EAA0B,CAAA,EAA7D,CAA6D,CAAA;IAElG,IAAM,mBAAmB,GAAG,cAAM,OAAA,CAAC;QACjC,SAAS,EAAE,UAAU,CAAC,2BAA2B,EAAE;YACjD,kCAAkC,EAAE,aAAa,CAAC,QAAQ,CAAC;SAC5D,CAAC;QACF,KAAK,EAAE,sBAAsB,EAAE;KAChC,CAAC,EALgC,CAKhC,CAAA;IAEF,OAAO,CACL,uBACE,GAAG,EAAE,kBAAkB,EACvB,KAAK,aAAI,MAAM,EAAE,eAAe,IAAK,eAAe,GACpD,SAAS,EAAE,UAAU,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,gBAE5D,KAAC,SAAS,aACR,GAAG,EAAE,YAAY,EAEjB,MAAM,EAAE,KAAK,EACb,YAAY,EAAE,KAAK,EACnB,uBAAuB,QACvB,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,EAAE,SAAS,EAAE,0BAA0B,EAAE,EACvD,WAAW,EAAE,EAAE,SAAS,EAAE,sBAAsB,EAAE,EAAE,EACpD,WAAW,EAAE,mBAAmB,EAAE,IAC9B,SAAS,cAEZ,OAAO,KAVH,YAAY,CAWP,IACR,CACP,CAAA;AACH,CAAC,CAAA;AAED,eAAe,SAAS,CAAA"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { ISkeletonProps } from './types';
|
|
2
2
|
import '../../styles/styles.scss';
|
|
3
|
-
export declare const Skeleton: ({ className, styles, baseColor, width, height, borderRadius, circle,
|
|
3
|
+
export declare const Skeleton: ({ className, styles, baseColor, width, height, borderRadius, circle, containerRef, animationDuration, initialOffset, }: ISkeletonProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -5,31 +5,22 @@ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cook
|
|
|
5
5
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
6
6
|
import { useEffect, useRef, useState } from 'react';
|
|
7
7
|
import styled, { css, keyframes } from 'styled-components';
|
|
8
|
-
import {
|
|
9
|
-
import { generateColor, isDarkTheme as checkIsDarkTheme } from '../../helpers';
|
|
8
|
+
import { generateColor } from '../../helpers';
|
|
10
9
|
import '../../styles/styles.scss';
|
|
11
|
-
// animation gradient size
|
|
12
|
-
var startEdgeGradientSizeDefault = '8.26%';
|
|
13
|
-
var startEdgeGradientSizeDark = '0%';
|
|
14
|
-
var centerGradientSizeDefault = '39.24%';
|
|
15
|
-
var centerGradientSizeDark = '46.36%';
|
|
16
|
-
var endEdgeGradientSizeDefault = '70.22%';
|
|
17
|
-
var endEdgeGradientSizeDark = '100%';
|
|
18
10
|
export var Skeleton = function (_a) {
|
|
19
|
-
var className = _a.className, styles = _a.styles, baseColor = _a.baseColor, width = _a.width, height = _a.height, _b = _a.borderRadius, borderRadius = _b === void 0 ? 8 : _b, circle = _a.circle,
|
|
11
|
+
var className = _a.className, styles = _a.styles, baseColor = _a.baseColor, width = _a.width, height = _a.height, _b = _a.borderRadius, borderRadius = _b === void 0 ? 8 : _b, circle = _a.circle,
|
|
20
12
|
// needed to determine the offset, the left border must coincide with the left border of the skeletons (without padding in container)
|
|
21
13
|
containerRef = _a.containerRef,
|
|
22
14
|
// if not default, then it must be specified for all skeletons
|
|
23
|
-
|
|
15
|
+
_c = _a.animationDuration,
|
|
24
16
|
// if not default, then it must be specified for all skeletons
|
|
25
|
-
animationDuration =
|
|
17
|
+
animationDuration = _c === void 0 ? 2 : _c,
|
|
26
18
|
// equal to gradient width
|
|
27
|
-
|
|
19
|
+
_d = _a.initialOffset,
|
|
28
20
|
// equal to gradient width
|
|
29
|
-
initialOffset =
|
|
21
|
+
initialOffset = _d === void 0 ? -230 : _d;
|
|
30
22
|
var skeletonRef = useRef(null);
|
|
31
|
-
var
|
|
32
|
-
var isDarkTheme = checkIsDarkTheme(theme);
|
|
23
|
+
var _e = useState({ container: { left: 0, width: 0 }, item: { left: 0, width: 0 } }), position = _e[0], setPosition = _e[1];
|
|
33
24
|
//after mount set offset sizes
|
|
34
25
|
useEffect(function () {
|
|
35
26
|
var containerRefCurrent = containerRef === null || containerRef === void 0 ? void 0 : containerRef.current;
|
|
@@ -49,22 +40,16 @@ export var Skeleton = function (_a) {
|
|
|
49
40
|
return { startOffset: startOffset, finalOffset: finalOffset };
|
|
50
41
|
};
|
|
51
42
|
var skeletonBackgroundColor = generateColor(baseColor, 'var(--color-input-primary)');
|
|
52
|
-
var skeletonGradientCenter = isDarkTheme ? COLORS.skeletonDarkGradientCenter : COLORS.skeletonGradientCenter;
|
|
53
|
-
var skeletonGradientEdge = COLORS.skeletonGradientEdge;
|
|
54
|
-
var startEdgeGradientSize = isDarkTheme ? startEdgeGradientSizeDark : startEdgeGradientSizeDefault;
|
|
55
|
-
var centerGradientSize = isDarkTheme ? centerGradientSizeDark : centerGradientSizeDefault;
|
|
56
|
-
var endEdgeGradientSize = isDarkTheme ? endEdgeGradientSizeDark : endEdgeGradientSizeDefault;
|
|
57
43
|
var skeletonCSS = {
|
|
58
44
|
width: width,
|
|
59
45
|
height: circle ? width : height,
|
|
60
46
|
minWidth: circle ? width : 0,
|
|
61
47
|
borderRadius: circle ? '50%' : borderRadius,
|
|
62
48
|
backgroundColor: skeletonBackgroundColor,
|
|
63
|
-
backgroundImage: "linear-gradient(\n 90deg,\n ".concat(skeletonGradientEdge, " ").concat(startEdgeGradientSize, ",\n ").concat(skeletonGradientCenter, " ").concat(centerGradientSize, ",\n ").concat(skeletonGradientEdge, " ").concat(endEdgeGradientSize, "\n );"),
|
|
64
49
|
};
|
|
65
50
|
return (_jsx(StyledSkeleton, { "$animationDuration": animationDuration, "$initialOffset": calculateOffset().startOffset, "$finalOffset": calculateOffset().finalOffset, "$CSS": skeletonCSS, ref: skeletonRef, className: className, style: styles }));
|
|
66
51
|
};
|
|
67
|
-
var StyledSkeleton = styled.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n position: relative;\n overflow: hidden;\n background-size: 230px;\n background-repeat: no-repeat;\n ", ";\n"], ["\n position: relative;\n overflow: hidden;\n background-size: 230px;\n background-repeat: no-repeat;\n ", ";\n"])), function (_a) {
|
|
52
|
+
var StyledSkeleton = styled.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n position: relative;\n overflow: hidden;\n background-size: 230px;\n background-repeat: no-repeat;\n background-image: linear-gradient(\n 90deg,\n var(--color-skeleton-gradient-edge) var(--skeleton-start-edge-gradient-size),\n var(--color-skeleton-gradient-center) var(--skeleton-center-gradient-size),\n var(--color-skeleton-gradient-edge) var(--skeleton-end-edge-gradient-size)\n );\n ", ";\n"], ["\n position: relative;\n overflow: hidden;\n background-size: 230px;\n background-repeat: no-repeat;\n background-image: linear-gradient(\n 90deg,\n var(--color-skeleton-gradient-edge) var(--skeleton-start-edge-gradient-size),\n var(--color-skeleton-gradient-center) var(--skeleton-center-gradient-size),\n var(--color-skeleton-gradient-edge) var(--skeleton-end-edge-gradient-size)\n );\n ", ";\n"])), function (_a) {
|
|
68
53
|
var $CSS = _a.$CSS, $animationDuration = _a.$animationDuration, $initialOffset = _a.$initialOffset, $finalOffset = _a.$finalOffset;
|
|
69
54
|
return css(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n animation: ", " ", "s infinite linear;\n ", ";\n "], ["\n animation: ", " ", "s infinite linear;\n ", ";\n "])), flash($initialOffset, $finalOffset), $animationDuration, $CSS);
|
|
70
55
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Skeleton.js","sourceRoot":"","sources":["../../../../src/сomponents/Skeleton/Skeleton.tsx"],"names":[],"mappings":";;;;;AAAA,OAAc,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAC1D,OAAO,MAAM,EAAE,EAAE,GAAG,EAAW,SAAS,EAAE,MAAM,mBAAmB,CAAA;AACnE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Skeleton.js","sourceRoot":"","sources":["../../../../src/сomponents/Skeleton/Skeleton.tsx"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,9 @@ var __assign = (this && this.__assign) || function () {
|
|
|
9
9
|
};
|
|
10
10
|
return __assign.apply(this, arguments);
|
|
11
11
|
};
|
|
12
|
+
var _a, _b;
|
|
12
13
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
14
|
+
/* eslint-disable max-lines */
|
|
13
15
|
import { useCallback, useEffect, useLayoutEffect, useState } from 'react';
|
|
14
16
|
import classNames from 'classnames';
|
|
15
17
|
import { isNull, sortBy, isEmpty } from 'lodash';
|
|
@@ -49,26 +51,53 @@ var progressStyles = {
|
|
|
49
51
|
background: 'rgba(255, 255, 255, 1)',
|
|
50
52
|
};
|
|
51
53
|
var DEFAULT_STORY_DURATION = 5000;
|
|
52
|
-
var
|
|
53
|
-
|
|
54
|
+
var STORY_SIZE;
|
|
55
|
+
(function (STORY_SIZE) {
|
|
56
|
+
STORY_SIZE["xs"] = "xs";
|
|
57
|
+
STORY_SIZE["sm"] = "sm";
|
|
58
|
+
STORY_SIZE["l"] = "l";
|
|
59
|
+
})(STORY_SIZE || (STORY_SIZE = {}));
|
|
60
|
+
var STORY_SIZE_HEIGHT = (_a = {},
|
|
61
|
+
_a[STORY_SIZE.xs] = 620,
|
|
62
|
+
_a[STORY_SIZE.sm] = 768,
|
|
63
|
+
_a[STORY_SIZE.l] = 812,
|
|
64
|
+
_a);
|
|
65
|
+
var STORY_WIDTH_BREAKPOINT = (_b = {},
|
|
66
|
+
_b[STORY_SIZE.xs] = 377,
|
|
67
|
+
_b[STORY_SIZE.sm] = 399,
|
|
68
|
+
_b);
|
|
69
|
+
var generateSize = function (width, height) {
|
|
70
|
+
var isSizeXS = width < STORY_WIDTH_BREAKPOINT[STORY_SIZE.xs] || height < STORY_SIZE_HEIGHT[STORY_SIZE.sm];
|
|
71
|
+
var isSizeSM = width < STORY_WIDTH_BREAKPOINT[STORY_SIZE.sm] || height < STORY_SIZE_HEIGHT[STORY_SIZE.l];
|
|
72
|
+
if (isSizeXS)
|
|
73
|
+
return STORY_SIZE.xs;
|
|
74
|
+
if (isSizeSM)
|
|
75
|
+
return STORY_SIZE.sm;
|
|
76
|
+
return STORY_SIZE.l;
|
|
77
|
+
};
|
|
78
|
+
var PERCENTAGE_OF_IMAGE_WIDTH = 0.827;
|
|
54
79
|
var StoriesComponent = function (_a) {
|
|
55
|
-
var _b
|
|
56
|
-
var _d;
|
|
57
|
-
var _e = _a.platform, platform = _e === void 0 ? PLATFORM.web : _e, _f = _a.fontFamily, fontFamily = _f === void 0 ? DEFAULT_FONT_FAMILY : _f, contentClassName = _a.contentClassName, contentStyles = _a.contentStyles, groupStories = _a.groupStories, allGroupsStories = _a.allGroupsStories, changeStoryToViewed = _a.changeStoryToViewed, changeGroupStoriesToViewed = _a.changeGroupStoriesToViewed, handleCloseGroupStories = _a.handleCloseGroupStories;
|
|
80
|
+
var _b;
|
|
81
|
+
var _c = _a.platform, platform = _c === void 0 ? PLATFORM.web : _c, _d = _a.fontFamily, fontFamily = _d === void 0 ? DEFAULT_FONT_FAMILY : _d, contentClassName = _a.contentClassName, contentStyles = _a.contentStyles, groupStories = _a.groupStories, allGroupsStories = _a.allGroupsStories, changeStoryToViewed = _a.changeStoryToViewed, changeGroupStoriesToViewed = _a.changeGroupStoriesToViewed, handleCloseGroupStories = _a.handleCloseGroupStories;
|
|
58
82
|
var sortStoriesByOrder = function (stories) { return sortBy(stories, ['order']); };
|
|
59
83
|
var generateActiveGroupStoriesIndex = function () { return allGroupsStories.findIndex(function (_a) {
|
|
60
84
|
var id = _a.id;
|
|
61
85
|
return id === (activeGroupStories === null || activeGroupStories === void 0 ? void 0 : activeGroupStories.id);
|
|
62
86
|
}); };
|
|
63
|
-
var
|
|
64
|
-
var
|
|
65
|
-
var
|
|
66
|
-
var
|
|
67
|
-
var
|
|
87
|
+
var _e = useState(groupStories), activeGroupStories = _e[0], setActiveGroupStories = _e[1];
|
|
88
|
+
var _f = useState(sortStoriesByOrder((groupStories === null || groupStories === void 0 ? void 0 : groupStories.stories) || [])), stories = _f[0], setStories = _f[1];
|
|
89
|
+
var _g = useState((_b = stories[0]) === null || _b === void 0 ? void 0 : _b.id), activeStoryId = _g[0], setActiveStoryId = _g[1];
|
|
90
|
+
var _h = useState(false), isAnimateToRight = _h[0], setIsAnimateToRight = _h[1];
|
|
91
|
+
var _j = useState(false), isAnimateToLeft = _j[0], setIsAnimateToLeft = _j[1];
|
|
68
92
|
var activeStory = stories.find(function (_a) {
|
|
69
93
|
var id = _a.id;
|
|
70
94
|
return id === activeStoryId;
|
|
71
95
|
});
|
|
96
|
+
var popupElement = document.querySelector('.smartapp-stories-content');
|
|
97
|
+
var containerHeight = (popupElement === null || popupElement === void 0 ? void 0 : popupElement.offsetHeight) || 0;
|
|
98
|
+
var containerWidth = (popupElement === null || popupElement === void 0 ? void 0 : popupElement.offsetWidth) || 0;
|
|
99
|
+
var size = generateSize(containerWidth, containerHeight);
|
|
100
|
+
var isShowCloseIconInsideStory = STORY_SIZE_HEIGHT[size] < containerHeight;
|
|
72
101
|
var isColorOnBackground = function (type) { return type === STORY_BACKGROUND_TYPES.color; };
|
|
73
102
|
var isImageOnBackground = function (_a) {
|
|
74
103
|
var type = _a.type;
|
|
@@ -141,15 +170,13 @@ var StoriesComponent = function (_a) {
|
|
|
141
170
|
var action = _a.action;
|
|
142
171
|
// eslint-disable-next-line react-hooks/rules-of-hooks
|
|
143
172
|
var _b = useState(false), isImageLoaded = _b[0], setIsImageLoaded = _b[1];
|
|
144
|
-
// eslint-disable-next-line react-hooks/rules-of-hooks
|
|
145
|
-
var _c = useState(0), storyWidth = _c[0], setStoryWidth = _c[1];
|
|
146
|
-
var imageContainerWidth = storyWidth - IMAGE_PADDINGS;
|
|
147
|
-
var imageContainerHeight = (imageContainerWidth * PERCENTAGE_OF_IMAGE_WIDTH) / 100;
|
|
148
173
|
var isLoaderVisible = image && (!isImageLoaded || isAnimateToLeft || isAnimateToRight);
|
|
174
|
+
var storyContainer = document.querySelector('.smartapp-stories');
|
|
175
|
+
var containerWidth = (storyContainer === null || storyContainer === void 0 ? void 0 : storyContainer.offsetWidth) || 0;
|
|
176
|
+
var imageContainerHeight = containerWidth * PERCENTAGE_OF_IMAGE_WIDTH;
|
|
149
177
|
// eslint-disable-next-line react-hooks/rules-of-hooks
|
|
150
178
|
useLayoutEffect(function () {
|
|
151
179
|
setActiveStoryId(id);
|
|
152
|
-
setStoryElementWidth();
|
|
153
180
|
}, []);
|
|
154
181
|
// eslint-disable-next-line react-hooks/rules-of-hooks
|
|
155
182
|
useLayoutEffect(function () {
|
|
@@ -158,19 +185,13 @@ var StoriesComponent = function (_a) {
|
|
|
158
185
|
return function () { return clearTimeout(timeoutId); };
|
|
159
186
|
// eslint-disable-next-line
|
|
160
187
|
}, [isLoaderVisible]);
|
|
161
|
-
var setStoryElementWidth = function () {
|
|
162
|
-
var storyElement = document.querySelector('.smartapp-stories__story');
|
|
163
|
-
var storyElementWidth = (storyElement === null || storyElement === void 0 ? void 0 : storyElement.getBoundingClientRect().width) || 0;
|
|
164
|
-
setStoryWidth(storyElementWidth);
|
|
165
|
-
};
|
|
166
188
|
var handleImageLoad = function () {
|
|
167
189
|
setTimeout(function () {
|
|
168
190
|
action('play');
|
|
169
191
|
setIsImageLoaded(true);
|
|
170
192
|
}, 0);
|
|
171
193
|
};
|
|
172
|
-
|
|
173
|
-
return (_jsx("div", __assign({ style: generateStoryStyles(backgroundSource) }, { children: _jsxs("div", __assign({ style: __assign({ fontFamily: "".concat(fontFamily, ", sans-serif") }, contentStyles), className: classNames('smartapp-stories__story', { 'smartapp-stories__story--image-bg': isImageOnBackground(backgroundSource) }, contentClassName) }, { children: [_jsxs("div", __assign({ style: { opacity: isLoaderVisible ? '0' : '1' } }, { children: [image && (_jsx("div", __assign({ className: "smartapp-stories__story--image", style: { width: "".concat(imageContainerWidth, "px"), height: "".concat(imageContainerHeight, "px") } }, { children: _jsx("img", { src: image, alt: "", onLoad: handleImageLoad, onError: handleImageLoad }) }))), title && _jsx("div", __assign({ className: "smartapp-stories__story--title" }, { children: title })), body && _jsx("div", __assign({ className: "smartapp-stories__story--body" }, { children: body })), button && (_jsxs("div", __assign({ style: {
|
|
194
|
+
return (_jsx("div", __assign({ style: generateStoryStyles(backgroundSource) }, { children: _jsxs("div", __assign({ style: __assign({ fontFamily: "".concat(fontFamily, ", sans-serif") }, contentStyles), className: classNames('smartapp-stories__story', { 'smartapp-stories__story--image-bg': isImageOnBackground(backgroundSource) }, contentClassName) }, { children: [_jsxs("div", __assign({ style: { opacity: isLoaderVisible ? '0' : '1' } }, { children: [image && (_jsx("div", __assign({ className: "smartapp-stories__story--image", style: { maxHeight: "".concat(imageContainerHeight, "px") } }, { children: _jsx("img", { src: image, alt: "", onLoad: handleImageLoad, onError: handleImageLoad }) }))), title && _jsx("div", __assign({ className: "smartapp-stories__story--title" }, { children: title })), body && _jsx("div", __assign({ className: "smartapp-stories__story--body" }, { children: body })), button && (_jsxs("div", __assign({ style: {
|
|
174
195
|
color: generateColor(button.textColor, COLORS.darkBlack),
|
|
175
196
|
background: generateColor(button.backgroundColor, COLORS.white),
|
|
176
197
|
}, className: classNames('smartapp-stories__story--button', "smartapp-stories__story--button__".concat(platform), {
|
|
@@ -264,18 +285,12 @@ var StoriesComponent = function (_a) {
|
|
|
264
285
|
if (isNull(activeGroupStories)) {
|
|
265
286
|
return null;
|
|
266
287
|
}
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
_b['smartapp-stories__animate-left'] = isAnimateToLeft,
|
|
274
|
-
_b)) }, swipeableHandlers, { children: _jsx(Stories, { defaultInterval: 6000, width: "100%", height: "100%", stories: generateStories(), onStoryStart: onStoryStart, onPrevious: onPrevious, onNext: onNext, onAllStoriesEnd: handleNext, progressContainerStyles: progressContainerStyles(platform, stories.length), progressWrapperStyles: progressWrapperStyles, progressStyles: progressStyles }, activeGroupStories.id) })), _jsx(CloseStoriesIcon, { className: classNames((_c = {
|
|
275
|
-
'smartapp-stories__icon': true
|
|
276
|
-
},
|
|
277
|
-
_c["smartapp-stories__icon--".concat(platform)] = true,
|
|
278
|
-
_c)), onClick: handleCloseGroupStories })] })));
|
|
288
|
+
var closeIcon = (_jsx(CloseStoriesIcon, { className: classNames('smartapp-stories__icon', "smartapp-stories__icon--".concat(platform)), onClick: handleCloseGroupStories }));
|
|
289
|
+
return (_jsxs(Popup, __assign({ className: "smartapp-stories", open: true }, { children: [_jsxs("div", __assign({ className: classNames('smartapp-stories', "smartapp-stories__".concat(size), "smartapp-stories__".concat(platform), {
|
|
290
|
+
'smartapp-stories__video': (activeStory === null || activeStory === void 0 ? void 0 : activeStory.type) === STORY_TYPE.video,
|
|
291
|
+
'smartapp-stories__animate-right': isAnimateToRight,
|
|
292
|
+
'smartapp-stories__animate-left': isAnimateToLeft,
|
|
293
|
+
}) }, swipeableHandlers, { children: [_jsx(Stories, { defaultInterval: 6000, width: "100%", height: "100%", stories: generateStories(), onStoryStart: onStoryStart, onPrevious: onPrevious, onNext: onNext, onAllStoriesEnd: handleNext, progressContainerStyles: progressContainerStyles(platform, stories.length), progressWrapperStyles: progressWrapperStyles, progressStyles: progressStyles }, activeGroupStories.id), isShowCloseIconInsideStory && closeIcon] })), !isShowCloseIconInsideStory && closeIcon] })));
|
|
279
294
|
};
|
|
280
295
|
export default StoriesComponent;
|
|
281
296
|
//# sourceMappingURL=Stories.js.map
|