@expressms/smartapp-ui 2.1.3 → 2.1.5

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.
Files changed (49) hide show
  1. package/build/main/assets/icons/attachment-loader.svg +3 -0
  2. package/build/main/assets/icons/crown.svg +7 -0
  3. package/build/main/assets/icons/delete-chip.svg +2 -9
  4. package/build/main/assets/icons/external-link.svg +3 -0
  5. package/build/main/assets/icons/info.svg +5 -0
  6. package/build/main/assets/icons/tick.svg +10 -0
  7. package/build/main/constants/constants.d.ts +1 -0
  8. package/build/main/constants/constants.js +1 -0
  9. package/build/main/constants/constants.js.map +1 -1
  10. package/build/main/constants/types.d.ts +5 -0
  11. package/build/main/helpers/index.d.ts +3 -2
  12. package/build/main/helpers/index.js +6 -1
  13. package/build/main/helpers/index.js.map +1 -1
  14. package/build/main/styles/styles.scss +2 -2
  15. package/build/main//321/201omponents/ActionModal/ActionModal.d.ts +1 -1
  16. package/build/main//321/201omponents/ActionModal/ActionModal.js +5 -5
  17. package/build/main//321/201omponents/ActionModal/ActionModal.js.map +1 -1
  18. package/build/main//321/201omponents/ActionModal/types.d.ts +1 -1
  19. package/build/main//321/201omponents/AttachedFile/AttachedFile.d.ts +5 -1
  20. package/build/main//321/201omponents/AttachedFile/AttachedFile.js +41 -6
  21. package/build/main//321/201omponents/AttachedFile/AttachedFile.js.map +1 -1
  22. package/build/main//321/201omponents/AttachedFile/types.d.ts +10 -5
  23. package/build/main//321/201omponents/Avatar/Avatar.d.ts +1 -1
  24. package/build/main//321/201omponents/Avatar/Avatar.js +75 -6
  25. package/build/main//321/201omponents/Avatar/Avatar.js.map +1 -1
  26. package/build/main//321/201omponents/Avatar/types.d.ts +14 -6
  27. package/build/main//321/201omponents/Avatar/types.js +4 -3
  28. package/build/main//321/201omponents/Avatar/types.js.map +1 -1
  29. package/build/main//321/201omponents/Button/Button.d.ts +1 -1
  30. package/build/main//321/201omponents/Button/Button.js +5 -3
  31. package/build/main//321/201omponents/Button/Button.js.map +1 -1
  32. package/build/main//321/201omponents/Button/types.d.ts +4 -1
  33. package/build/main//321/201omponents/Button/types.js.map +1 -1
  34. package/build/main//321/201omponents/ConfirmationModal/ConfirmationModal.d.ts +1 -1
  35. package/build/main//321/201omponents/ConfirmationModal/ConfirmationModal.js +5 -5
  36. package/build/main//321/201omponents/ConfirmationModal/ConfirmationModal.js.map +1 -1
  37. package/build/main//321/201omponents/ConfirmationModal/types.d.ts +1 -1
  38. package/build/main//321/201omponents/Modal/Modal.d.ts +1 -1
  39. package/build/main//321/201omponents/Modal/Modal.js +5 -5
  40. package/build/main//321/201omponents/Modal/Modal.js.map +1 -1
  41. package/build/main//321/201omponents/Modal/types.d.ts +1 -1
  42. package/build/main//321/201omponents/Notification/Notification.d.ts +1 -1
  43. package/build/main//321/201omponents/Notification/Notification.js +4 -11
  44. package/build/main//321/201omponents/Notification/Notification.js.map +1 -1
  45. package/build/main//321/201omponents/Notification/types.d.ts +1 -1
  46. package/build/main//321/201omponents/Stories/Stories.js +3 -2
  47. package/build/main//321/201omponents/Stories/Stories.js.map +1 -1
  48. package/build/main//321/201omponents/Stories/types.d.ts +1 -0
  49. package/package.json +1 -1
@@ -1,4 +1,4 @@
1
1
  import { IActionModalProps } from './types';
2
2
  import '../../styles/styles.scss';
3
- declare const ActionModal: ({ isModalOpen, isFullScreen, isCloseIconVisible, title, buttonName, confirmButtonFunction, cancelButtonFunction, theme, platform, placeholder, defaultValue, isButtonDisabled, titleStyles, iconColor, buttonWidth, backgroundColor, }: IActionModalProps) => import("react/jsx-runtime").JSX.Element;
3
+ declare const ActionModal: ({ isModalOpen, isFullScreen, isClosableOutside, title, buttonName, confirmButtonFunction, cancelButtonFunction, theme, platform, placeholder, defaultValue, isButtonDisabled, titleStyles, iconColor, buttonWidth, backgroundColor, }: IActionModalProps) => import("react/jsx-runtime").JSX.Element;
4
4
  export default ActionModal;
@@ -15,11 +15,11 @@ import Popup from 'reactjs-popup';
15
15
  import { ReactComponent as CloseIcon } from '../../assets/icons/cancel-cross.svg';
16
16
  import Button from '../Button';
17
17
  import Input from '../Input';
18
- import { getClassNames, getColor, getDefaultColorForCloseIcon, isMobilePlatform } from '../../helpers';
18
+ import { getClassNames, getColor, getDefaultGrayColorForIcon, isMobilePlatform } from '../../helpers';
19
19
  import { COLORS, FULL_SCREEN_CLASS_NAME, PLATFORM, THEME } from '../../constants';
20
20
  import '../../styles/styles.scss';
21
21
  var ActionModal = function (_a) {
22
- var isModalOpen = _a.isModalOpen, _b = _a.isFullScreen, isFullScreen = _b === void 0 ? false : _b, _c = _a.isCloseIconVisible, isCloseIconVisible = _c === void 0 ? true : _c, title = _a.title, buttonName = _a.buttonName, confirmButtonFunction = _a.confirmButtonFunction, cancelButtonFunction = _a.cancelButtonFunction, _d = _a.theme, theme = _d === void 0 ? THEME.default : _d, _e = _a.platform, platform = _e === void 0 ? PLATFORM.web : _e, placeholder = _a.placeholder, _f = _a.defaultValue, defaultValue = _f === void 0 ? '' : _f, isButtonDisabled = _a.isButtonDisabled, titleStyles = _a.titleStyles, iconColor = _a.iconColor, _g = _a.buttonWidth, buttonWidth = _g === void 0 ? 100 : _g, backgroundColor = _a.backgroundColor;
22
+ var isModalOpen = _a.isModalOpen, _b = _a.isFullScreen, isFullScreen = _b === void 0 ? false : _b, _c = _a.isClosableOutside, isClosableOutside = _c === void 0 ? true : _c, title = _a.title, buttonName = _a.buttonName, confirmButtonFunction = _a.confirmButtonFunction, cancelButtonFunction = _a.cancelButtonFunction, _d = _a.theme, theme = _d === void 0 ? THEME.default : _d, _e = _a.platform, platform = _e === void 0 ? PLATFORM.web : _e, placeholder = _a.placeholder, _f = _a.defaultValue, defaultValue = _f === void 0 ? '' : _f, isButtonDisabled = _a.isButtonDisabled, titleStyles = _a.titleStyles, iconColor = _a.iconColor, _g = _a.buttonWidth, buttonWidth = _g === void 0 ? 100 : _g, backgroundColor = _a.backgroundColor;
23
23
  var additionalClassName = isFullScreen ? [theme, platform, FULL_SCREEN_CLASS_NAME] : [theme, platform];
24
24
  var ref = useRef(null);
25
25
  var _h = useState(defaultValue), value = _h[0], setValue = _h[1];
@@ -36,7 +36,7 @@ var ActionModal = function (_a) {
36
36
  }, [backgroundColor]);
37
37
  useEffect(function () {
38
38
  var checkIfClickedOutside = function (e) {
39
- if (isModalOpen && ref.current && !ref.current.contains(e.target)) {
39
+ if (isModalOpen && isClosableOutside && ref.current && !ref.current.contains(e.target)) {
40
40
  onCloseModal();
41
41
  }
42
42
  };
@@ -45,11 +45,11 @@ var ActionModal = function (_a) {
45
45
  document === null || document === void 0 ? void 0 : document.removeEventListener('click', checkIfClickedOutside, true);
46
46
  };
47
47
  // eslint-disable-next-line
48
- }, [isModalOpen, cancelButtonFunction]);
48
+ }, [isModalOpen, isClosableOutside, cancelButtonFunction]);
49
49
  var onChange = function (value) {
50
50
  setValue(value);
51
51
  };
52
- return (_jsx(Popup, __assign({ className: getClassNames('action-modal', '-', platform), closeOnDocumentClick: true, modal: true, open: isModalOpen }, { children: _jsx("div", __assign({ ref: ref, className: getClassNames('smartapp-action-modal', '__', additionalClassName) }, { children: _jsxs("div", __assign({ className: getClassNames('smartapp-action-modal__content', '--', platform) }, { children: [_jsx("p", __assign({ className: getClassNames('smartapp-action-modal__content--title', '__', platform), style: titleStyles }, { children: title })), isCloseIconVisible && (_jsx("div", __assign({ onClick: onCloseModal, className: "smartapp-action-modal__content--cancel-cross" }, { children: _jsx(CloseIcon, { style: { color: getColor(iconColor, getDefaultColorForCloseIcon(theme)) } }) }))), _jsx("div", __assign({ className: "smartapp-action-modal__content--input" }, { children: _jsx(Input, { theme: theme, defaultValue: value, placeholder: placeholder, onChange: onChange }) })), isMobilePlatform(platform) && _jsx("div", { className: "smartapp-action-modal__content--delimiter" }), _jsx("div", __assign({ className: "smartapp-action-modal__content--buttons" }, { children: _jsx(Button, { width: buttonWidth, isDisabled: isButtonDisabled, title: buttonName, onClick: onConfirmClick }) }))] })) })) })));
52
+ return (_jsx(Popup, __assign({ className: getClassNames('action-modal', '-', platform), closeOnDocumentClick: isClosableOutside, modal: true, open: isModalOpen }, { children: _jsx("div", __assign({ ref: ref, className: getClassNames('smartapp-action-modal', '__', additionalClassName) }, { children: _jsxs("div", __assign({ className: getClassNames('smartapp-action-modal__content', '--', platform) }, { children: [_jsx("p", __assign({ className: getClassNames('smartapp-action-modal__content--title', '__', platform), style: titleStyles }, { children: title })), isClosableOutside && (_jsx("div", __assign({ onClick: onCloseModal, className: "smartapp-action-modal__content--cancel-cross" }, { children: _jsx(CloseIcon, { style: { color: getColor(iconColor, getDefaultGrayColorForIcon(theme)) } }) }))), _jsx("div", __assign({ className: "smartapp-action-modal__content--input" }, { children: _jsx(Input, { theme: theme, defaultValue: value, placeholder: placeholder, onChange: onChange }) })), isMobilePlatform(platform) && _jsx("div", { className: "smartapp-action-modal__content--delimiter" }), _jsx("div", __assign({ className: "smartapp-action-modal__content--buttons" }, { children: _jsx(Button, { width: buttonWidth, isDisabled: isButtonDisabled, title: buttonName, onClick: onConfirmClick }) }))] })) })) })));
53
53
  };
54
54
  export default ActionModal;
55
55
  //# sourceMappingURL=ActionModal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ActionModal.js","sourceRoot":"","sources":["../../../../src/сomponents/ActionModal/ActionModal.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ActionModal.js","sourceRoot":"","sources":["../../../../src/сomponents/ActionModal/ActionModal.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAc,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAC1D,OAAO,KAAK,MAAM,eAAe,CAAA;AACjC,OAAO,EAAE,cAAc,IAAI,SAAS,EAAE,MAAM,qCAAqC,CAAA;AACjF,OAAO,MAAM,MAAM,WAAW,CAAA;AAC9B,OAAO,KAAK,MAAM,UAAU,CAAA;AAE5B,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACrG,OAAO,EAAE,MAAM,EAAE,sBAAsB,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACjF,OAAO,0BAA0B,CAAA;AAEjC,IAAM,WAAW,GAAG,UAAC,EAiBD;QAhBlB,WAAW,iBAAA,EACX,oBAAoB,EAApB,YAAY,mBAAG,KAAK,KAAA,EACpB,yBAAwB,EAAxB,iBAAiB,mBAAG,IAAI,KAAA,EACxB,KAAK,WAAA,EACL,UAAU,gBAAA,EACV,qBAAqB,2BAAA,EACrB,oBAAoB,0BAAA,EACpB,aAAqB,EAArB,KAAK,mBAAG,KAAK,CAAC,OAAO,KAAA,EACrB,gBAAuB,EAAvB,QAAQ,mBAAG,QAAQ,CAAC,GAAG,KAAA,EACvB,WAAW,iBAAA,EACX,oBAAiB,EAAjB,YAAY,mBAAG,EAAE,KAAA,EACjB,gBAAgB,sBAAA,EAChB,WAAW,iBAAA,EACX,SAAS,eAAA,EACT,mBAAiB,EAAjB,WAAW,mBAAG,GAAG,KAAA,EACjB,eAAe,qBAAA;IAEf,IAAM,mBAAmB,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAA;IACxG,IAAM,GAAG,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAA;IAClC,IAAA,KAAoB,QAAQ,CAAS,YAAY,CAAC,EAAjD,KAAK,QAAA,EAAE,QAAQ,QAAkC,CAAA;IAExD,IAAM,cAAc,GAAG;QACrB,qBAAqB,CAAC,KAAK,CAAC,CAAA;QAC5B,QAAQ,CAAC,EAAE,CAAC,CAAA;IACd,CAAC,CAAA;IAED,IAAM,YAAY,GAAG;QACnB,QAAQ,CAAC,EAAE,CAAC,CAAA;QACZ,oBAAoB,EAAE,CAAA;IACxB,CAAC,CAAA;IAED,SAAS,CAAC;QACR,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,WAAW,CAAC,2BAA2B,EAAE,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAA;IACtH,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAA;IAErB,SAAS,CAAC;QACR,IAAM,qBAAqB,GAAG,UAAC,CAAkB;YAC/C,IAAI,WAAW,IAAI,iBAAiB,IAAI,GAAG,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE;gBACtF,YAAY,EAAE,CAAA;aACf;QACH,CAAC,CAAA;QAED,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,gBAAgB,CAAC,OAAO,EAAE,qBAAqB,EAAE,IAAI,CAAC,CAAA;QAEhE,OAAO;YACL,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,mBAAmB,CAAC,OAAO,EAAE,qBAAqB,EAAE,IAAI,CAAC,CAAA;QACrE,CAAC,CAAA;QACD,2BAA2B;IAC7B,CAAC,EAAE,CAAC,WAAW,EAAE,iBAAiB,EAAE,oBAAoB,CAAC,CAAC,CAAA;IAE1D,IAAM,QAAQ,GAAG,UAAC,KAAa;QAC7B,QAAQ,CAAC,KAAK,CAAC,CAAA;IACjB,CAAC,CAAA;IAED,OAAO,CACL,KAAC,KAAK,aAAC,SAAS,EAAE,aAAa,CAAC,cAAc,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,KAAK,QAAC,IAAI,EAAE,WAAW,gBAC9H,uBAAK,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,aAAa,CAAC,uBAAuB,EAAE,IAAI,EAAE,mBAAmB,CAAC,gBACzF,wBAAK,SAAS,EAAE,aAAa,CAAC,gCAAgC,EAAE,IAAI,EAAE,QAAQ,CAAC,iBAC7E,qBAAG,SAAS,EAAE,aAAa,CAAC,uCAAuC,EAAE,IAAI,EAAE,QAAQ,CAAC,EAAE,KAAK,EAAE,WAAW,gBACrG,KAAK,IACJ,EACH,iBAAiB,IAAI,CACpB,uBAAK,OAAO,EAAE,YAAY,EAAE,SAAS,EAAC,8CAA8C,gBAClF,KAAC,SAAS,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,SAAS,EAAE,0BAA0B,CAAC,KAAK,CAAC,CAAC,EAAE,GAAI,IACnF,CACP,EACD,uBAAK,SAAS,EAAC,uCAAuC,gBACpD,KAAC,KAAK,IAAC,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,GAAI,IACtF,EACL,gBAAgB,CAAC,QAAQ,CAAC,IAAI,cAAK,SAAS,EAAC,2CAA2C,GAAG,EAC5F,uBAAK,SAAS,EAAC,yCAAyC,gBACtD,KAAC,MAAM,IAAC,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,gBAAgB,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,GAAI,IACpG,KACF,IACF,IACA,CACT,CAAA;AACH,CAAC,CAAA;AAED,eAAe,WAAW,CAAA"}
@@ -3,7 +3,7 @@ import { ICommonProps, TStyles } from '../../constants';
3
3
  export interface IActionModalProps extends ICommonProps {
4
4
  isModalOpen: boolean;
5
5
  isFullScreen?: boolean;
6
- isCloseIconVisible?: boolean;
6
+ isClosableOutside?: boolean;
7
7
  title: string;
8
8
  buttonName: string;
9
9
  confirmButtonFunction: (str: string) => void;
@@ -1,4 +1,8 @@
1
1
  import { IAttachedFileProps } from './types';
2
2
  import '../../styles/styles.scss';
3
- declare const AttachedFile: ({ fileName, weight, weightType, isIconEnclosedWithinBorders, isSpaceBetween, onClickDownloadFile, onClickRemoveFile, isRemoveFile, isDownloadFile, width, fileColor, downloadColor, removeColor, fileIcon, }: IAttachedFileProps) => import("react/jsx-runtime").JSX.Element;
3
+ export declare enum DISPLAY_SIZE {
4
+ small = "small",
5
+ normal = "normal"
6
+ }
7
+ declare const AttachedFile: ({ theme, fileName, weight, weightType, isIconEnclosedWithinBorders, isSpaceBetween, isRemovable, isDownloadable, isDisabled, isLoading, width, displaySize, fileColor, downloadColor, removeColor, fileIcon, onClick, onRemove, onDownload, }: IAttachedFileProps) => import("react/jsx-runtime").JSX.Element;
4
8
  export default AttachedFile;
@@ -14,14 +14,49 @@ import classNames from 'classnames';
14
14
  import { ReactComponent as FileIcon } from '../../assets/icons/file.svg';
15
15
  import { ReactComponent as RemoveIcon } from '../../assets/icons/close.svg';
16
16
  import { ReactComponent as DownloadIcon } from '../../assets/icons/download.svg';
17
- import { getColor } from '../../helpers';
18
- import { COLORS } from '../../constants';
17
+ import { ReactComponent as LoaderIcon } from '../../assets/icons/attachment-loader.svg';
18
+ import { getColor, getDefaultGrayColorForIcon } from '../../helpers';
19
+ import { COLORS, THEME } from '../../constants';
19
20
  import '../../styles/styles.scss';
21
+ export var DISPLAY_SIZE;
22
+ (function (DISPLAY_SIZE) {
23
+ DISPLAY_SIZE["small"] = "small";
24
+ DISPLAY_SIZE["normal"] = "normal";
25
+ })(DISPLAY_SIZE || (DISPLAY_SIZE = {}));
20
26
  var AttachedFile = function (_a) {
21
- var fileName = _a.fileName, weight = _a.weight, weightType = _a.weightType, _b = _a.isIconEnclosedWithinBorders, isIconEnclosedWithinBorders = _b === void 0 ? false : _b, _c = _a.isSpaceBetween, isSpaceBetween = _c === void 0 ? false : _c, _d = _a.onClickDownloadFile, onClickDownloadFile = _d === void 0 ? undefined : _d, _e = _a.onClickRemoveFile, onClickRemoveFile = _e === void 0 ? undefined : _e, _f = _a.isRemoveFile, isRemoveFile = _f === void 0 ? false : _f, _g = _a.isDownloadFile, isDownloadFile = _g === void 0 ? false : _g, _h = _a.width, width = _h === void 0 ? 100 : _h, fileColor = _a.fileColor, downloadColor = _a.downloadColor, removeColor = _a.removeColor, fileIcon = _a.fileIcon;
22
- return (_jsxs("div", __assign({ style: { width: "".concat(width, "%") }, className: "smartapp-attached-file" }, { children: [_jsx("div", __assign({ className: classNames('smartapp-attached-file--icon', { 'smartapp-attached-file--icon__bordered': isIconEnclosedWithinBorders }) }, { children: fileIcon || _jsx(FileIcon, { style: { color: getColor(fileColor, COLORS.gray) } }) })), _jsxs("div", __assign({ className: classNames('smartapp-attached-file__value', { 'justify-space-between': isSpaceBetween }) }, { children: [_jsxs("div", __assign({ className: classNames('smartapp-attached-file__value--info', {
23
- 'smartapp-attached-file__value--info__paddings': isIconEnclosedWithinBorders,
24
- }) }, { children: [_jsx("p", __assign({ className: "smartapp-attached-file__value--info__name" }, { children: fileName })), _jsx("p", __assign({ className: "smartapp-attached-file__value--info__weight" }, { children: "".concat(weight, " ").concat(weightType) }))] })), _jsxs("div", __assign({ className: "smartapp-attached-file__value--icons" }, { children: [onClickRemoveFile && isRemoveFile && (_jsx("div", __assign({ onClick: function () { return onClickRemoveFile(fileName); }, className: "smartapp-attached-file__value--icons__close" }, { children: _jsx(RemoveIcon, { style: { color: getColor(removeColor, COLORS.lightGray) } }) }))), onClickDownloadFile && isDownloadFile && (_jsx("div", __assign({ onClick: function () { return onClickDownloadFile(fileName); }, className: "smartapp-attached-file__value--icons__download" }, { children: _jsx(DownloadIcon, { style: { color: getColor(downloadColor, COLORS.blue) } }) })))] }))] }))] }), weight));
27
+ var _b = _a.theme, theme = _b === void 0 ? THEME.default : _b, fileName = _a.fileName, weight = _a.weight, weightType = _a.weightType, _c = _a.isIconEnclosedWithinBorders, isIconEnclosedWithinBorders = _c === void 0 ? false : _c, _d = _a.isSpaceBetween, isSpaceBetween = _d === void 0 ? false : _d, _e = _a.isRemovable, isRemovable = _e === void 0 ? false : _e, _f = _a.isDownloadable, isDownloadable = _f === void 0 ? false : _f, _g = _a.isDisabled, isDisabled = _g === void 0 ? false : _g, _h = _a.isLoading, isLoading = _h === void 0 ? false : _h, _j = _a.width, width = _j === void 0 ? 100 : _j, _k = _a.displaySize, displaySize = _k === void 0 ? DISPLAY_SIZE.normal : _k, fileColor = _a.fileColor, downloadColor = _a.downloadColor, removeColor = _a.removeColor, fileIcon = _a.fileIcon, onClick = _a.onClick, onRemove = _a.onRemove, onDownload = _a.onDownload;
28
+ var handleAttachmentClick = function () { return !isLoading && !isDisabled && onClick && onClick(fileName); };
29
+ var handleAttachmentRemove = function (event) {
30
+ if (!isLoading && onRemove) {
31
+ event.stopPropagation();
32
+ onRemove(fileName);
33
+ }
34
+ };
35
+ var handleAttachmentDownload = function (event) {
36
+ if (!isLoading && !isDisabled && onDownload) {
37
+ event.stopPropagation();
38
+ onDownload(fileName);
39
+ }
40
+ };
41
+ return (_jsxs("div", __assign({ style: { width: "".concat(width, "%") }, className: classNames('smartapp-attached-file', "smartapp-attached-file__".concat(theme), {
42
+ 'smartapp-attached-file__clickable': onClick,
43
+ 'smartapp-attached-file__disabled': isDisabled,
44
+ 'smartapp-attached-file__loading': isLoading,
45
+ }), onClick: handleAttachmentClick }, { children: [_jsxs("div", __assign({ className: classNames('smartapp-attached-file__icon', "smartapp-attached-file__icon--".concat(displaySize), {
46
+ 'smartapp-attached-file__icon--bordered': isIconEnclosedWithinBorders,
47
+ 'smartapp-attached-file__icon--disabled': isDisabled,
48
+ 'smartapp-attached-file__icon--loading': isLoading && !isIconEnclosedWithinBorders,
49
+ }) }, { children: [fileIcon || _jsx(FileIcon, { style: { color: getColor(fileColor, getDefaultGrayColorForIcon(theme)) } }), isLoading && (_jsx("div", __assign({ className: classNames('smartapp-attached-file__icon--loader', "smartapp-attached-file__icon--loader__".concat(displaySize)) }, { children: _jsx(LoaderIcon, {}) })))] })), _jsxs("div", __assign({ className: classNames('smartapp-attached-file__value', { 'justify-space-between': isSpaceBetween }) }, { children: [_jsxs("div", __assign({ className: classNames('smartapp-attached-file__value--info', {
50
+ 'smartapp-attached-file__value--info__paddings': isIconEnclosedWithinBorders && displaySize === DISPLAY_SIZE.normal,
51
+ }) }, { children: [_jsx("p", __assign({ className: classNames('smartapp-attached-file__value--info__name', "smartapp-attached-file__value--info__name--".concat(displaySize), {
52
+ 'smartapp-attached-file__value--info__name--disabled': isDisabled,
53
+ 'smartapp-attached-file__value--info__name--loading': isLoading,
54
+ }) }, { children: fileName })), _jsx("p", __assign({ className: "smartapp-attached-file__value--info__weight" }, { children: "".concat(weight, " ").concat(weightType) }))] })), _jsxs("div", __assign({ className: "smartapp-attached-file__value--icons" }, { children: [isRemovable && (_jsx("div", __assign({ onClick: handleAttachmentRemove, className: classNames('smartapp-attached-file__value--icons__close', {
55
+ 'smartapp-attached-file__value--icons__close--loading': isLoading,
56
+ }) }, { children: _jsx(RemoveIcon, { style: { color: getColor(removeColor, getDefaultGrayColorForIcon(theme)) } }) }))), isDownloadable && (_jsx("div", __assign({ onClick: handleAttachmentDownload, className: classNames('smartapp-attached-file__value--icons__download', {
57
+ 'smartapp-attached-file__value--icons__download--disabled': isDisabled,
58
+ 'smartapp-attached-file__value--icons__download--loading': isLoading,
59
+ }) }, { children: _jsx(DownloadIcon, { style: { color: getColor(downloadColor, COLORS.blue) } }) })))] }))] }))] }), weight));
25
60
  };
26
61
  export default AttachedFile;
27
62
  //# sourceMappingURL=AttachedFile.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AttachedFile.js","sourceRoot":"","sources":["../../../../src/сomponents/AttachedFile/AttachedFile.tsx"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,cAAc,IAAI,QAAQ,EAAE,MAAM,6BAA6B,CAAA;AACxE,OAAO,EAAE,cAAc,IAAI,UAAU,EAAE,MAAM,8BAA8B,CAAA;AAC3E,OAAO,EAAE,cAAc,IAAI,YAAY,EAAE,MAAM,iCAAiC,CAAA;AAEhF,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACxC,OAAO,0BAA0B,CAAA;AAEjC,IAAM,YAAY,GAAG,UAAC,EAeD;QAdnB,QAAQ,cAAA,EACR,MAAM,YAAA,EACN,UAAU,gBAAA,EACV,mCAAmC,EAAnC,2BAA2B,mBAAG,KAAK,KAAA,EACnC,sBAAsB,EAAtB,cAAc,mBAAG,KAAK,KAAA,EACtB,2BAA+B,EAA/B,mBAAmB,mBAAG,SAAS,KAAA,EAC/B,yBAA6B,EAA7B,iBAAiB,mBAAG,SAAS,KAAA,EAC7B,oBAAoB,EAApB,YAAY,mBAAG,KAAK,KAAA,EACpB,sBAAsB,EAAtB,cAAc,mBAAG,KAAK,KAAA,EACtB,aAAW,EAAX,KAAK,mBAAG,GAAG,KAAA,EACX,SAAS,eAAA,EACT,aAAa,mBAAA,EACb,WAAW,iBAAA,EACX,QAAQ,cAAA;IACgB,OAAA,CACxB,wBAAkB,KAAK,EAAE,EAAE,KAAK,EAAE,UAAG,KAAK,MAAG,EAAE,EAAE,SAAS,EAAC,wBAAwB,iBACjF,uBAAK,SAAS,EAAE,UAAU,CAAC,8BAA8B,EAAE,EAAE,wCAAwC,EAAE,2BAA2B,EAAE,CAAC,gBAClI,QAAQ,IAAI,KAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,GAAI,IACzE,EACN,wBAAK,SAAS,EAAE,UAAU,CAAC,+BAA+B,EAAE,EAAE,uBAAuB,EAAE,cAAc,EAAE,CAAC,iBACtG,wBACE,SAAS,EAAE,UAAU,CAAC,qCAAqC,EAAE;4BAC3D,+CAA+C,EAAE,2BAA2B;yBAC7E,CAAC,iBAEF,qBAAG,SAAS,EAAC,2CAA2C,gBAAE,QAAQ,IAAK,EACvE,qBAAG,SAAS,EAAC,6CAA6C,gBAAE,UAAG,MAAM,cAAI,UAAU,CAAE,IAAK,KACtF,EACN,wBAAK,SAAS,EAAC,sCAAsC,iBAClD,iBAAiB,IAAI,YAAY,IAAI,CACpC,uBAAK,OAAO,EAAE,cAAM,OAAA,iBAAiB,CAAC,QAAQ,CAAC,EAA3B,CAA2B,EAAE,SAAS,EAAC,6CAA6C,gBACtG,KAAC,UAAU,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,SAAS,CAAC,EAAE,GAAI,IACrE,CACP,EACA,mBAAmB,IAAI,cAAc,IAAI,CACxC,uBAAK,OAAO,EAAE,cAAM,OAAA,mBAAmB,CAAC,QAAQ,CAAC,EAA7B,CAA6B,EAAE,SAAS,EAAC,gDAAgD,gBAC3G,KAAC,YAAY,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,GAAI,IACpE,CACP,KACG,KACF,MAzBE,MAAM,CA0BV,CACP;AA5ByB,CA4BzB,CAAA;AAED,eAAe,YAAY,CAAA"}
1
+ {"version":3,"file":"AttachedFile.js","sourceRoot":"","sources":["../../../../src/сomponents/AttachedFile/AttachedFile.tsx"],"names":[],"mappings":"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"}
@@ -1,18 +1,23 @@
1
1
  import { ReactElement } from 'react';
2
2
  import { IntRange } from '../types';
3
- export interface IAttachedFileProps {
3
+ import { IThemeProps } from '../../constants';
4
+ export interface IAttachedFileProps extends IThemeProps {
4
5
  fileName: string;
5
6
  weight: number;
6
7
  weightType: string;
7
8
  isIconEnclosedWithinBorders?: boolean;
8
9
  isSpaceBetween?: boolean;
9
- onClickRemoveFile?: (file: any) => void;
10
- onClickDownloadFile?: (file: any) => void;
11
- isRemoveFile?: boolean;
12
- isDownloadFile?: boolean;
10
+ isRemovable?: boolean;
11
+ isDownloadable?: boolean;
12
+ isDisabled?: boolean;
13
+ isLoading?: boolean;
13
14
  width?: IntRange<1, 101>;
15
+ displaySize?: 'small' | 'normal';
14
16
  fileColor?: string;
15
17
  downloadColor?: string;
16
18
  removeColor?: string;
17
19
  fileIcon?: ReactElement;
20
+ onClick?: (file: any) => void;
21
+ onRemove?: (file: any) => void;
22
+ onDownload?: (file: any) => void;
18
23
  }
@@ -1,4 +1,4 @@
1
1
  import { IAvatarProps } from './types';
2
2
  import '../../styles/styles.scss';
3
- declare const Avatar: ({ username, avatar, onClick, size }: IAvatarProps) => import("react/jsx-runtime").JSX.Element;
3
+ declare const Avatar: ({ theme, isSelected, isHighlighted, isSpam, isCrown, size, username, initials, avatar, counter, onClick, }: IAvatarProps) => import("react/jsx-runtime").JSX.Element;
4
4
  export default Avatar;
@@ -9,23 +9,46 @@ var __assign = (this && this.__assign) || function () {
9
9
  };
10
10
  return __assign.apply(this, arguments);
11
11
  };
12
- import { jsx as _jsx } from "react/jsx-runtime";
13
- import { getInitials, userNameToColor } from '../../helpers';
12
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
+ import classNames from 'classnames';
14
+ import { getInitials, getPercentageOfValue, isDarkTheme, userNameToColor } from '../../helpers';
14
15
  import { AvatarFontSizes } from './types';
16
+ import { COLORS, THEME } from '../../constants';
17
+ import { ReactComponent as TickIcon } from '../../assets/icons/tick.svg';
18
+ import { ReactComponent as InfoIcon } from '../../assets/icons/info.svg';
19
+ import { ReactComponent as CrownIcon } from '../../assets/icons/crown.svg';
15
20
  import '../../styles/styles.scss';
21
+ var PERCENTS;
22
+ (function (PERCENTS) {
23
+ PERCENTS[PERCENTS["pct_5"] = 5] = "pct_5";
24
+ PERCENTS[PERCENTS["pct_10"] = 10] = "pct_10";
25
+ PERCENTS[PERCENTS["pct_12_5"] = 12.5] = "pct_12_5";
26
+ PERCENTS[PERCENTS["pct_15"] = 15] = "pct_15";
27
+ PERCENTS[PERCENTS["pct_40"] = 40] = "pct_40";
28
+ PERCENTS[PERCENTS["pct_50"] = 50] = "pct_50";
29
+ PERCENTS[PERCENTS["pct_57"] = 57] = "pct_57";
30
+ PERCENTS[PERCENTS["pct_60"] = 60] = "pct_60";
31
+ PERCENTS[PERCENTS["pct_75"] = 75] = "pct_75";
32
+ })(PERCENTS || (PERCENTS = {}));
33
+ var MAX_NUMBER_OF_CHARACTERS_IN_INITIALS = 2;
16
34
  var Avatar = function (_a) {
17
- var username = _a.username, avatar = _a.avatar, _b = _a.onClick, onClick = _b === void 0 ? function () { return undefined; } : _b, _c = _a.size, size = _c === void 0 ? 44 : _c;
35
+ var _b = _a.theme, theme = _b === void 0 ? THEME.default : _b, isSelected = _a.isSelected, isHighlighted = _a.isHighlighted, isSpam = _a.isSpam, isCrown = _a.isCrown, _c = _a.size, size = _c === void 0 ? 44 : _c, _d = _a.username, username = _d === void 0 ? '' : _d, initials = _a.initials, avatar = _a.avatar, _e = _a.counter, counter = _e === void 0 ? 0 : _e, _f = _a.onClick, onClick = _f === void 0 ? function () { return undefined; } : _f;
36
+ var outlineBackground = isDarkTheme(theme) ? COLORS.brightBlack : COLORS.white;
37
+ var outlineWidth = getPercentageOfValue({ value: size, percentage: PERCENTS.pct_5, shouldBeRounded: false });
18
38
  var getFontSizeAvatar = function () {
19
39
  switch (size) {
20
40
  case 20:
21
41
  case 24: {
22
- return AvatarFontSizes.small;
42
+ return AvatarFontSizes.lowest;
23
43
  }
24
44
  case 32:
25
45
  case 40: {
26
- return AvatarFontSizes.average;
46
+ return AvatarFontSizes.small;
27
47
  }
28
48
  case 44: {
49
+ return AvatarFontSizes.average;
50
+ }
51
+ case 56: {
29
52
  return AvatarFontSizes.high;
30
53
  }
31
54
  case 100: {
@@ -33,7 +56,53 @@ var Avatar = function (_a) {
33
56
  }
34
57
  }
35
58
  };
36
- return (_jsx("div", __assign({ style: { width: "".concat(size, "px"), minWidth: "".concat(size, "px"), height: "".concat(size, "px"), fontSize: getFontSizeAvatar(), background: userNameToColor(username) }, onClick: onClick, className: "smartapp-avatar" }, { children: avatar ? _jsx("img", { src: avatar, alt: "avatar" }) : getInitials(username) })));
59
+ var renderUserInitials = function () { return (initials === null || initials === void 0 ? void 0 : initials.slice(0, MAX_NUMBER_OF_CHARACTERS_IN_INITIALS).toUpperCase()) || getInitials(username); };
60
+ var renderContent = function () {
61
+ if (isSelected) {
62
+ var tickSize = getPercentageOfValue({ value: size, percentage: PERCENTS.pct_57 });
63
+ return _jsx(TickIcon, { width: tickSize, height: tickSize });
64
+ }
65
+ if (isSpam) {
66
+ var infoSize = getPercentageOfValue({ value: size, percentage: PERCENTS.pct_60 });
67
+ return _jsx(InfoIcon, { width: infoSize, height: infoSize });
68
+ }
69
+ return avatar ? _jsx("img", { src: avatar, alt: "avatar" }) : renderUserInitials();
70
+ };
71
+ var renderCounter = function () {
72
+ var isSingleDigitNumber = counter <= 9;
73
+ var counterText = isSingleDigitNumber ? counter : '9+';
74
+ var width = getPercentageOfValue({ value: size, percentage: isSingleDigitNumber ? PERCENTS.pct_40 : PERCENTS.pct_50 });
75
+ var height = getPercentageOfValue({ value: size, percentage: PERCENTS.pct_40 });
76
+ var fontSize = getPercentageOfValue({ value: height, percentage: PERCENTS.pct_75 });
77
+ var position = getPercentageOfValue({ value: size, percentage: PERCENTS.pct_15 });
78
+ var borderWidth = getPercentageOfValue({ value: size, percentage: PERCENTS.pct_5, shouldBeRounded: false });
79
+ var borderRadius = isSingleDigitNumber ? '50%' : "".concat(height * 1.5625, "px");
80
+ return (_jsx("div", __assign({ className: "smartapp-avatar__content--counter", style: {
81
+ width: "".concat(width, "px"),
82
+ height: "".concat(height, "px"),
83
+ top: "-".concat(position, "px"),
84
+ right: "-".concat(position, "px"),
85
+ fontSize: "".concat(fontSize, "px"),
86
+ border: "".concat(borderWidth, "px solid ").concat(outlineBackground),
87
+ borderRadius: borderRadius,
88
+ } }, { children: counterText })));
89
+ };
90
+ var renderCrown = function () {
91
+ var bottom = getPercentageOfValue({ value: size, percentage: PERCENTS.pct_10 });
92
+ var right = getPercentageOfValue({ value: size, percentage: PERCENTS.pct_12_5 });
93
+ var crownSize = getPercentageOfValue({ value: size, percentage: PERCENTS.pct_50 });
94
+ return (_jsx(CrownIcon, { className: "smartapp-avatar__content--crown", width: crownSize, height: crownSize, color: outlineBackground, style: { bottom: "-".concat(bottom, "px"), right: "-".concat(right, "px") } }));
95
+ };
96
+ var getAvatarContentStyles = function () { return ({
97
+ width: "".concat(size, "px"),
98
+ minWidth: "".concat(size, "px"),
99
+ height: "".concat(size, "px"),
100
+ fontSize: getFontSizeAvatar(),
101
+ background: userNameToColor(username),
102
+ }); };
103
+ return (_jsx("div", __assign({ className: classNames('smartapp-avatar', "smartapp-avatar__".concat(theme), { 'smartapp-avatar__outline': isHighlighted }), style: { '--avatar-outline-width': "".concat(outlineWidth, "px") }, onClick: onClick }, { children: _jsxs("div", __assign({ style: getAvatarContentStyles(), className: classNames('smartapp-avatar__content', {
104
+ 'smartapp-avatar__content--spam': isSpam,
105
+ }) }, { children: [!!counter && renderCounter(), renderContent(), isCrown && renderCrown()] })) })));
37
106
  };
38
107
  export default Avatar;
39
108
  //# sourceMappingURL=Avatar.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Avatar.js","sourceRoot":"","sources":["../../../../src/сomponents/Avatar/Avatar.tsx"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC5D,OAAO,EAAE,eAAe,EAAgB,MAAM,SAAS,CAAA;AACvD,OAAO,0BAA0B,CAAA;AAEjC,IAAM,MAAM,GAAG,UAAC,EAAwE;QAAtE,QAAQ,cAAA,EAAE,MAAM,YAAA,EAAE,eAAyB,EAAzB,OAAO,mBAAG,cAAM,OAAA,SAAS,EAAT,CAAS,KAAA,EAAE,YAAS,EAAT,IAAI,mBAAG,EAAE,KAAA;IACtE,IAAM,iBAAiB,GAAG;QACxB,QAAQ,IAAI,EAAE;YACZ,KAAK,EAAE,CAAC;YACR,KAAK,EAAE,CAAC,CAAC;gBACP,OAAO,eAAe,CAAC,KAAK,CAAA;aAC7B;YACD,KAAK,EAAE,CAAC;YACR,KAAK,EAAE,CAAC,CAAC;gBACP,OAAO,eAAe,CAAC,OAAO,CAAA;aAC/B;YACD,KAAK,EAAE,CAAC,CAAC;gBACP,OAAO,eAAe,CAAC,IAAI,CAAA;aAC5B;YACD,KAAK,GAAG,CAAC,CAAC;gBACR,OAAO,eAAe,CAAC,QAAQ,CAAA;aAChC;SACF;IACH,CAAC,CAAA;IAED,OAAO,CACL,uBACE,KAAK,EAAE,EAAE,KAAK,EAAE,UAAG,IAAI,OAAI,EAAE,QAAQ,EAAE,UAAG,IAAI,OAAI,EAAE,MAAM,EAAE,UAAG,IAAI,OAAI,EAAE,QAAQ,EAAE,iBAAiB,EAAE,EAAE,UAAU,EAAE,eAAe,CAAC,QAAQ,CAAC,EAAE,EAC/I,OAAO,EAAE,OAAO,EAChB,SAAS,EAAC,iBAAiB,gBAE1B,MAAM,CAAC,CAAC,CAAC,cAAK,GAAG,EAAE,MAAM,EAAE,GAAG,EAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,IAC/D,CACP,CAAA;AACH,CAAC,CAAA;AAED,eAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"Avatar.js","sourceRoot":"","sources":["../../../../src/сomponents/Avatar/Avatar.tsx"],"names":[],"mappings":"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"}
@@ -1,12 +1,20 @@
1
- export interface IAvatarProps {
2
- username: string;
1
+ import { IThemeProps } from '../../constants';
2
+ export interface IAvatarProps extends IThemeProps {
3
+ isSelected?: boolean;
4
+ isHighlighted?: boolean;
5
+ isSpam?: boolean;
6
+ isCrown?: boolean;
7
+ size?: 20 | 24 | 32 | 40 | 44 | 56 | 100;
8
+ username?: string;
9
+ initials?: string;
3
10
  avatar?: string;
11
+ counter?: number;
4
12
  onClick?: () => void;
5
- size?: 20 | 24 | 32 | 40 | 44 | 100;
6
13
  }
7
14
  export declare enum AvatarFontSizes {
8
- small = "12px",
9
- average = "14px",
10
- high = "18px",
15
+ lowest = "12px",
16
+ small = "14px",
17
+ average = "18px",
18
+ high = "24px",
11
19
  greatest = "42px"
12
20
  }
@@ -1,8 +1,9 @@
1
1
  export var AvatarFontSizes;
2
2
  (function (AvatarFontSizes) {
3
- AvatarFontSizes["small"] = "12px";
4
- AvatarFontSizes["average"] = "14px";
5
- AvatarFontSizes["high"] = "18px";
3
+ AvatarFontSizes["lowest"] = "12px";
4
+ AvatarFontSizes["small"] = "14px";
5
+ AvatarFontSizes["average"] = "18px";
6
+ AvatarFontSizes["high"] = "24px";
6
7
  AvatarFontSizes["greatest"] = "42px";
7
8
  })(AvatarFontSizes || (AvatarFontSizes = {}));
8
9
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/сomponents/Avatar/types.ts"],"names":[],"mappings":"AAOA,MAAM,CAAN,IAAY,eAKX;AALD,WAAY,eAAe;IACzB,iCAAc,CAAA;IACd,mCAAgB,CAAA;IAChB,gCAAa,CAAA;IACb,oCAAiB,CAAA;AACnB,CAAC,EALW,eAAe,KAAf,eAAe,QAK1B"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/сomponents/Avatar/types.ts"],"names":[],"mappings":"AAeA,MAAM,CAAN,IAAY,eAMX;AAND,WAAY,eAAe;IACzB,kCAAe,CAAA;IACf,iCAAc,CAAA;IACd,mCAAgB,CAAA;IAChB,gCAAa,CAAA;IACb,oCAAiB,CAAA;AACnB,CAAC,EANW,eAAe,KAAf,eAAe,QAM1B"}
@@ -1,4 +1,4 @@
1
1
  import { IButtonProps } from './types';
2
2
  import '../../styles/styles.scss';
3
- declare const Button: ({ title, isDisabled, isDisabledClickable, isWaitingResponse, type, appearance, width, onClick, }: IButtonProps) => import("react/jsx-runtime").JSX.Element;
3
+ declare const Button: ({ title, isDisabled, isDisabledClickable, isWaitingResponse, type, appearance, icon, width, styles, onClick, }: IButtonProps) => import("react/jsx-runtime").JSX.Element;
4
4
  export default Button;
@@ -12,11 +12,12 @@ var __assign = (this && this.__assign) || function () {
12
12
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
13
  import { useEffect, useRef } from 'react';
14
14
  import classNames from 'classnames';
15
+ import { isNil } from 'lodash';
15
16
  import { ReactComponent as LoaderIcon } from '../../assets/icons/button-loader.svg';
16
17
  import { TButtonType, TButtonAppearance } from './types';
17
18
  import '../../styles/styles.scss';
18
19
  var Button = function (_a) {
19
- var title = _a.title, _b = _a.isDisabled, isDisabled = _b === void 0 ? false : _b, _c = _a.isDisabledClickable, isDisabledClickable = _c === void 0 ? false : _c, _d = _a.isWaitingResponse, isWaitingResponse = _d === void 0 ? false : _d, _e = _a.type, type = _e === void 0 ? TButtonType.primary : _e, _f = _a.appearance, appearance = _f === void 0 ? TButtonAppearance.accent : _f, _g = _a.width, width = _g === void 0 ? 100 : _g, onClick = _a.onClick;
20
+ var title = _a.title, _b = _a.isDisabled, isDisabled = _b === void 0 ? false : _b, _c = _a.isDisabledClickable, isDisabledClickable = _c === void 0 ? false : _c, _d = _a.isWaitingResponse, isWaitingResponse = _d === void 0 ? false : _d, _e = _a.type, type = _e === void 0 ? TButtonType.primary : _e, _f = _a.appearance, appearance = _f === void 0 ? TButtonAppearance.accent : _f, icon = _a.icon, _g = _a.width, width = _g === void 0 ? 100 : _g, styles = _a.styles, onClick = _a.onClick;
20
21
  var buttonRef = useRef(null);
21
22
  var buttonRefCurrent = buttonRef.current;
22
23
  var changeTransitionDelay = function (transitionDelay) { return buttonRefCurrent && (buttonRefCurrent.style.transitionDelay = "".concat(transitionDelay, "ms")); };
@@ -32,9 +33,10 @@ var Button = function (_a) {
32
33
  }
33
34
  // eslint-disable-next-line
34
35
  }, [isWaitingResponse]);
35
- return (_jsxs("div", __assign({ className: classNames('smartapp-button', "smartapp-button__".concat(appearance)), style: { width: "".concat(width, "%") } }, { children: [_jsx("button", __assign({ ref: buttonRef, className: classNames("smartapp-button__".concat(type), "smartapp-button__".concat(type, "--").concat(appearance), {
36
+ return (_jsxs("div", __assign({ className: classNames('smartapp-button', "smartapp-button__".concat(appearance)), style: { width: "".concat(width, "%") } }, { children: [_jsxs("button", __assign({ ref: buttonRef, className: classNames("smartapp-button__".concat(type), "smartapp-button__".concat(type, "--").concat(appearance), {
36
37
  'smartapp-button__disabled': isDisabled,
37
- }), onClick: handleButtonClick }, { children: title })), _jsx("div", __assign({ className: classNames('smartapp-button__loader', { 'smartapp-button__loader--hidden': !isWaitingResponse }) }, { children: _jsx(LoaderIcon, {}) }))] })));
38
+ 'smartapp-button__with-icon': !isNil(icon),
39
+ }), style: styles, onClick: handleButtonClick }, { children: [icon && _jsx("div", { children: icon }), title] })), _jsx("div", __assign({ className: classNames('smartapp-button__loader', { 'smartapp-button__loader--hidden': !isWaitingResponse }) }, { children: _jsx(LoaderIcon, {}) }))] })));
38
40
  };
39
41
  export default Button;
40
42
  //# sourceMappingURL=Button.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../../src/сomponents/Button/Button.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAc,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAChD,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,cAAc,IAAI,UAAU,EAAE,MAAM,sCAAsC,CAAA;AACnF,OAAO,EAAgB,WAAW,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AACtE,OAAO,0BAA0B,CAAA;AAEjC,IAAM,MAAM,GAAG,UAAC,EASD;QARb,KAAK,WAAA,EACL,kBAAkB,EAAlB,UAAU,mBAAG,KAAK,KAAA,EAClB,2BAA2B,EAA3B,mBAAmB,mBAAG,KAAK,KAAA,EAC3B,yBAAyB,EAAzB,iBAAiB,mBAAG,KAAK,KAAA,EACzB,YAA0B,EAA1B,IAAI,mBAAG,WAAW,CAAC,OAAO,KAAA,EAC1B,kBAAqC,EAArC,UAAU,mBAAG,iBAAiB,CAAC,MAAM,KAAA,EACrC,aAAW,EAAX,KAAK,mBAAG,GAAG,KAAA,EACX,OAAO,aAAA;IAEP,IAAM,SAAS,GAAG,MAAM,CAA2B,IAAI,CAAC,CAAA;IACxD,IAAM,gBAAgB,GAAG,SAAS,CAAC,OAAO,CAAA;IAE1C,IAAM,qBAAqB,GAAG,UAAC,eAAuB,IAAK,OAAA,gBAAgB,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,eAAe,GAAG,UAAG,eAAe,OAAI,CAAC,EAArF,CAAqF,CAAA;IAChJ,IAAM,iBAAiB,GAAG,UAAC,KAA0C,IAAK,OAAA,CAAC,CAAC,UAAU,IAAI,CAAC,UAAU,IAAI,mBAAmB,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,EAAtE,CAAsE,CAAA;IAEhJ,SAAS,CAAC;QACR,IAAI,iBAAiB,EAAE;YACrB,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,SAAS,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAA;YAC1D,UAAU,CAAC,cAAM,OAAA,qBAAqB,CAAC,GAAG,CAAC,EAA1B,CAA0B,EAAE,GAAG,CAAC,CAAA;SAClD;aAAM;YACL,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,SAAS,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAA;YAC7D,UAAU,CAAC,cAAM,OAAA,qBAAqB,CAAC,CAAC,CAAC,EAAxB,CAAwB,EAAE,GAAG,CAAC,CAAA;SAChD;QACD,2BAA2B;IAC7B,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAA;IAEvB,OAAO,CACL,wBAAK,SAAS,EAAE,UAAU,CAAC,iBAAiB,EAAE,2BAAoB,UAAU,CAAE,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,UAAG,KAAK,MAAG,EAAE,iBAC5G,0BACE,GAAG,EAAE,SAAS,EACd,SAAS,EAAE,UAAU,CAAC,2BAAoB,IAAI,CAAE,EAAE,2BAAoB,IAAI,eAAK,UAAU,CAAE,EAAE;oBAC3F,2BAA2B,EAAE,UAAU;iBACxC,CAAC,EACF,OAAO,EAAE,iBAAiB,gBAEzB,KAAK,IACC,EACT,uBAAK,SAAS,EAAE,UAAU,CAAC,yBAAyB,EAAE,EAAE,iCAAiC,EAAE,CAAC,iBAAiB,EAAE,CAAC,gBAC9G,KAAC,UAAU,KAAG,IACV,KACF,CACP,CAAA;AACH,CAAC,CAAA;AAED,eAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../../src/сomponents/Button/Button.tsx"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAc,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAChD,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAC9B,OAAO,EAAE,cAAc,IAAI,UAAU,EAAE,MAAM,sCAAsC,CAAA;AACnF,OAAO,EAAgB,WAAW,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AACtE,OAAO,0BAA0B,CAAA;AAEjC,IAAM,MAAM,GAAG,UAAC,EAWD;QAVb,KAAK,WAAA,EACL,kBAAkB,EAAlB,UAAU,mBAAG,KAAK,KAAA,EAClB,2BAA2B,EAA3B,mBAAmB,mBAAG,KAAK,KAAA,EAC3B,yBAAyB,EAAzB,iBAAiB,mBAAG,KAAK,KAAA,EACzB,YAA0B,EAA1B,IAAI,mBAAG,WAAW,CAAC,OAAO,KAAA,EAC1B,kBAAqC,EAArC,UAAU,mBAAG,iBAAiB,CAAC,MAAM,KAAA,EACrC,IAAI,UAAA,EACJ,aAAW,EAAX,KAAK,mBAAG,GAAG,KAAA,EACX,MAAM,YAAA,EACN,OAAO,aAAA;IAEP,IAAM,SAAS,GAAG,MAAM,CAA2B,IAAI,CAAC,CAAA;IACxD,IAAM,gBAAgB,GAAG,SAAS,CAAC,OAAO,CAAA;IAE1C,IAAM,qBAAqB,GAAG,UAAC,eAAuB,IAAK,OAAA,gBAAgB,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,eAAe,GAAG,UAAG,eAAe,OAAI,CAAC,EAArF,CAAqF,CAAA;IAChJ,IAAM,iBAAiB,GAAG,UAAC,KAA0C,IAAK,OAAA,CAAC,CAAC,UAAU,IAAI,CAAC,UAAU,IAAI,mBAAmB,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,EAAtE,CAAsE,CAAA;IAEhJ,SAAS,CAAC;QACR,IAAI,iBAAiB,EAAE;YACrB,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,SAAS,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAA;YAC1D,UAAU,CAAC,cAAM,OAAA,qBAAqB,CAAC,GAAG,CAAC,EAA1B,CAA0B,EAAE,GAAG,CAAC,CAAA;SAClD;aAAM;YACL,gBAAgB,aAAhB,gBAAgB,uBAAhB,gBAAgB,CAAE,SAAS,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAA;YAC7D,UAAU,CAAC,cAAM,OAAA,qBAAqB,CAAC,CAAC,CAAC,EAAxB,CAAwB,EAAE,GAAG,CAAC,CAAA;SAChD;QACD,2BAA2B;IAC7B,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAA;IAEvB,OAAO,CACL,wBAAK,SAAS,EAAE,UAAU,CAAC,iBAAiB,EAAE,2BAAoB,UAAU,CAAE,CAAC,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,UAAG,KAAK,MAAG,EAAE,iBAC5G,2BACE,GAAG,EAAE,SAAS,EACd,SAAS,EAAE,UAAU,CAAC,2BAAoB,IAAI,CAAE,EAAE,2BAAoB,IAAI,eAAK,UAAU,CAAE,EAAE;oBAC3F,2BAA2B,EAAE,UAAU;oBACvC,4BAA4B,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;iBAC3C,CAAC,EACF,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,iBAAiB,iBAEzB,IAAI,IAAI,wBAAM,IAAI,GAAO,EACzB,KAAK,KACC,EACT,uBAAK,SAAS,EAAE,UAAU,CAAC,yBAAyB,EAAE,EAAE,iCAAiC,EAAE,CAAC,iBAAiB,EAAE,CAAC,gBAC9G,KAAC,UAAU,KAAG,IACV,KACF,CACP,CAAA;AACH,CAAC,CAAA;AAED,eAAe,MAAM,CAAA"}
@@ -1,5 +1,6 @@
1
- import React from 'react';
1
+ import React, { ReactElement } from 'react';
2
2
  import { IntRange } from '../types';
3
+ import { TStyles } from '../../constants';
3
4
  export declare enum TButtonType {
4
5
  primary = "primary",
5
6
  secondary = "secondary"
@@ -15,6 +16,8 @@ export interface IButtonProps {
15
16
  isWaitingResponse?: boolean;
16
17
  type?: 'primary' | 'secondary';
17
18
  appearance?: 'accent' | 'negative';
19
+ icon?: ReactElement;
18
20
  width?: IntRange<1, 101>;
21
+ styles?: TStyles;
19
22
  onClick: (event: React.MouseEvent<HTMLButtonElement>) => void;
20
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/сomponents/Button/types.ts"],"names":[],"mappings":"AAGA,MAAM,CAAN,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,kCAAmB,CAAA;IACnB,sCAAuB,CAAA;AACzB,CAAC,EAHW,WAAW,KAAX,WAAW,QAGtB;AAED,MAAM,CAAN,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IAC3B,sCAAiB,CAAA;IACjB,0CAAqB,CAAA;AACvB,CAAC,EAHW,iBAAiB,KAAjB,iBAAiB,QAG5B"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/сomponents/Button/types.ts"],"names":[],"mappings":"AAIA,MAAM,CAAN,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,kCAAmB,CAAA;IACnB,sCAAuB,CAAA;AACzB,CAAC,EAHW,WAAW,KAAX,WAAW,QAGtB;AAED,MAAM,CAAN,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IAC3B,sCAAiB,CAAA;IACjB,0CAAqB,CAAA;AACvB,CAAC,EAHW,iBAAiB,KAAjB,iBAAiB,QAG5B"}
@@ -1,4 +1,4 @@
1
1
  import { IConfirmationModalProps } from './types';
2
2
  import '../../styles/styles.scss';
3
- declare const ConfirmationModal: ({ isModalOpen, isFullScreen, isCloseIconVisible, title, text, cancelButtonName, confirmButtonName, cancelButtonFunction, confirmButtonFunction, theme, platform, titleStyles, iconColor, backgroundColor, }: IConfirmationModalProps) => import("react/jsx-runtime").JSX.Element;
3
+ declare const ConfirmationModal: ({ isModalOpen, isFullScreen, isClosableOutside, title, text, cancelButtonName, confirmButtonName, cancelButtonFunction, confirmButtonFunction, theme, platform, titleStyles, iconColor, backgroundColor, }: IConfirmationModalProps) => import("react/jsx-runtime").JSX.Element;
4
4
  export default ConfirmationModal;
@@ -16,10 +16,10 @@ import { ReactComponent as CloseIcon } from '../../assets/icons/cancel-cross.svg
16
16
  import Button from '../Button';
17
17
  import { TButtonType } from '../Button/types';
18
18
  import { COLORS, FULL_SCREEN_CLASS_NAME, PLATFORM, THEME } from '../../constants';
19
- import { getClassNames, getColor, getDefaultColorForCloseIcon, isMobilePlatform } from '../../helpers';
19
+ import { getClassNames, getColor, getDefaultGrayColorForIcon, isMobilePlatform } from '../../helpers';
20
20
  import '../../styles/styles.scss';
21
21
  var ConfirmationModal = function (_a) {
22
- var isModalOpen = _a.isModalOpen, _b = _a.isFullScreen, isFullScreen = _b === void 0 ? false : _b, _c = _a.isCloseIconVisible, isCloseIconVisible = _c === void 0 ? false : _c, title = _a.title, text = _a.text, cancelButtonName = _a.cancelButtonName, confirmButtonName = _a.confirmButtonName, cancelButtonFunction = _a.cancelButtonFunction, confirmButtonFunction = _a.confirmButtonFunction, _d = _a.theme, theme = _d === void 0 ? THEME.default : _d, _e = _a.platform, platform = _e === void 0 ? PLATFORM.web : _e, titleStyles = _a.titleStyles, iconColor = _a.iconColor, backgroundColor = _a.backgroundColor;
22
+ var isModalOpen = _a.isModalOpen, _b = _a.isFullScreen, isFullScreen = _b === void 0 ? false : _b, _c = _a.isClosableOutside, isClosableOutside = _c === void 0 ? false : _c, title = _a.title, text = _a.text, cancelButtonName = _a.cancelButtonName, confirmButtonName = _a.confirmButtonName, cancelButtonFunction = _a.cancelButtonFunction, confirmButtonFunction = _a.confirmButtonFunction, _d = _a.theme, theme = _d === void 0 ? THEME.default : _d, _e = _a.platform, platform = _e === void 0 ? PLATFORM.web : _e, titleStyles = _a.titleStyles, iconColor = _a.iconColor, backgroundColor = _a.backgroundColor;
23
23
  var additionalClassName = isFullScreen ? [theme, platform, FULL_SCREEN_CLASS_NAME] : [theme, platform];
24
24
  var confirmButtonWidth = cancelButtonName ? 50 : 100;
25
25
  var ref = useRef(null);
@@ -28,7 +28,7 @@ var ConfirmationModal = function (_a) {
28
28
  }, [backgroundColor]);
29
29
  useEffect(function () {
30
30
  var checkIfClickedOutside = function (e) {
31
- if (isModalOpen && ref.current && !ref.current.contains(e.target)) {
31
+ if (isModalOpen && isClosableOutside && ref.current && !ref.current.contains(e.target)) {
32
32
  cancelButtonFunction();
33
33
  }
34
34
  };
@@ -36,8 +36,8 @@ var ConfirmationModal = function (_a) {
36
36
  return function () {
37
37
  document === null || document === void 0 ? void 0 : document.removeEventListener('mousedown', checkIfClickedOutside, true);
38
38
  };
39
- }, [isModalOpen, cancelButtonFunction]);
40
- return (_jsx(Popup, __assign({ className: getClassNames('confirmation-modal', '-', platform), closeOnDocumentClick: true, modal: true, open: isModalOpen }, { children: _jsx("div", __assign({ ref: ref, className: getClassNames('smartapp-confirmation-modal', '__', additionalClassName) }, { children: _jsxs("div", __assign({ className: getClassNames('smartapp-confirmation-modal__content', '--', platform) }, { children: [title && (_jsx("p", __assign({ className: "smartapp-confirmation-modal__content--title", style: titleStyles }, { children: title }))), isCloseIconVisible && (_jsx("div", __assign({ onClick: cancelButtonFunction, className: "smartapp-confirmation-modal__content--close-icon" }, { children: _jsx(CloseIcon, { style: { color: getColor(iconColor, getDefaultColorForCloseIcon(theme)) } }) }))), _jsx("p", __assign({ className: "smartapp-confirmation-modal__content--text" }, { children: text })), isMobilePlatform(platform) && _jsx("div", { className: "smartapp-confirmation-modal__content--delimiter" }), _jsxs("div", __assign({ className: "smartapp-confirmation-modal__content--buttons" }, { children: [cancelButtonName && _jsx(Button, { width: 50, title: cancelButtonName, type: TButtonType.secondary, onClick: cancelButtonFunction }), _jsx(Button, { width: confirmButtonWidth, title: confirmButtonName, onClick: confirmButtonFunction })] }))] })) })) })));
39
+ }, [isModalOpen, isClosableOutside, cancelButtonFunction]);
40
+ return (_jsx(Popup, __assign({ className: getClassNames('confirmation-modal', '-', platform), closeOnDocumentClick: isClosableOutside, modal: true, open: isModalOpen }, { children: _jsx("div", __assign({ ref: ref, className: getClassNames('smartapp-confirmation-modal', '__', additionalClassName) }, { children: _jsxs("div", __assign({ className: getClassNames('smartapp-confirmation-modal__content', '--', platform) }, { children: [title && (_jsx("p", __assign({ className: "smartapp-confirmation-modal__content--title", style: titleStyles }, { children: title }))), isClosableOutside && (_jsx("div", __assign({ onClick: cancelButtonFunction, className: "smartapp-confirmation-modal__content--close-icon" }, { children: _jsx(CloseIcon, { style: { color: getColor(iconColor, getDefaultGrayColorForIcon(theme)) } }) }))), _jsx("p", __assign({ className: "smartapp-confirmation-modal__content--text" }, { children: text })), isMobilePlatform(platform) && _jsx("div", { className: "smartapp-confirmation-modal__content--delimiter" }), _jsxs("div", __assign({ className: "smartapp-confirmation-modal__content--buttons" }, { children: [cancelButtonName && _jsx(Button, { width: 50, title: cancelButtonName, type: TButtonType.secondary, onClick: cancelButtonFunction }), _jsx(Button, { width: confirmButtonWidth, title: confirmButtonName, onClick: confirmButtonFunction })] }))] })) })) })));
41
41
  };
42
42
  export default ConfirmationModal;
43
43
  //# sourceMappingURL=ConfirmationModal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConfirmationModal.js","sourceRoot":"","sources":["../../../../src/сomponents/ConfirmationModal/ConfirmationModal.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConfirmationModal.js","sourceRoot":"","sources":["../../../../src/сomponents/ConfirmationModal/ConfirmationModal.tsx"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { ICommonProps, TStyles } from '../../constants';
2
2
  export interface IConfirmationModalProps extends ICommonProps {
3
3
  isModalOpen: boolean;
4
4
  isFullScreen?: boolean;
5
- isCloseIconVisible?: boolean;
5
+ isClosableOutside?: boolean;
6
6
  title?: string;
7
7
  text: string;
8
8
  cancelButtonName?: string;
@@ -1,4 +1,4 @@
1
1
  import { IModalProps } from './types';
2
2
  import '../../styles/styles.scss';
3
- declare const Modal: ({ isModalOpen, isFullScreen, isCloseIconVisible, content, handleCloseModal, title, theme, platform, titleStyles, iconColor, backgroundColor, }: IModalProps) => import("react/jsx-runtime").JSX.Element;
3
+ declare const Modal: ({ isModalOpen, isFullScreen, isClosableOutside, content, handleCloseModal, title, theme, platform, titleStyles, iconColor, backgroundColor, }: IModalProps) => import("react/jsx-runtime").JSX.Element;
4
4
  export default Modal;
@@ -14,10 +14,10 @@ import { useEffect, useRef } from 'react';
14
14
  import Popup from 'reactjs-popup';
15
15
  import { ReactComponent as CloseIcon } from '../../assets/icons/cancel-cross.svg';
16
16
  import { COLORS, FULL_SCREEN_CLASS_NAME, PLATFORM, THEME } from '../../constants';
17
- import { getClassNames, getColor, getDefaultColorForCloseIcon } from '../../helpers';
17
+ import { getClassNames, getColor, getDefaultGrayColorForIcon } from '../../helpers';
18
18
  import '../../styles/styles.scss';
19
19
  var Modal = function (_a) {
20
- var isModalOpen = _a.isModalOpen, _b = _a.isFullScreen, isFullScreen = _b === void 0 ? false : _b, _c = _a.isCloseIconVisible, isCloseIconVisible = _c === void 0 ? true : _c, content = _a.content, handleCloseModal = _a.handleCloseModal, title = _a.title, _d = _a.theme, theme = _d === void 0 ? THEME.default : _d, _e = _a.platform, platform = _e === void 0 ? PLATFORM.web : _e, titleStyles = _a.titleStyles, iconColor = _a.iconColor, backgroundColor = _a.backgroundColor;
20
+ var isModalOpen = _a.isModalOpen, _b = _a.isFullScreen, isFullScreen = _b === void 0 ? false : _b, _c = _a.isClosableOutside, isClosableOutside = _c === void 0 ? true : _c, content = _a.content, handleCloseModal = _a.handleCloseModal, title = _a.title, _d = _a.theme, theme = _d === void 0 ? THEME.default : _d, _e = _a.platform, platform = _e === void 0 ? PLATFORM.web : _e, titleStyles = _a.titleStyles, iconColor = _a.iconColor, backgroundColor = _a.backgroundColor;
21
21
  var additionalClassName = isFullScreen ? [theme, platform, FULL_SCREEN_CLASS_NAME] : [theme, platform];
22
22
  var ref = useRef(null);
23
23
  useEffect(function () {
@@ -25,7 +25,7 @@ var Modal = function (_a) {
25
25
  }, [backgroundColor]);
26
26
  useEffect(function () {
27
27
  var checkIfClickedOutside = function (e) {
28
- if (isModalOpen && ref.current && !ref.current.contains(e.target)) {
28
+ if (isModalOpen && isClosableOutside && ref.current && !ref.current.contains(e.target)) {
29
29
  handleCloseModal();
30
30
  }
31
31
  };
@@ -33,8 +33,8 @@ var Modal = function (_a) {
33
33
  return function () {
34
34
  document === null || document === void 0 ? void 0 : document.removeEventListener('mousedown', checkIfClickedOutside, true);
35
35
  };
36
- }, [isModalOpen, handleCloseModal]);
37
- return (_jsx(Popup, __assign({ className: getClassNames('modal', '-', platform), closeOnDocumentClick: true, modal: true, open: isModalOpen }, { children: _jsx("div", __assign({ ref: ref, className: getClassNames('smartapp-modal', '__', additionalClassName) }, { children: _jsxs("div", __assign({ className: getClassNames('smartapp-modal__content', '--', platform) }, { children: [title && (_jsx("p", __assign({ className: "smartapp-modal__content--title", style: titleStyles }, { children: title }))), isCloseIconVisible && (_jsx("div", __assign({ onClick: handleCloseModal, className: "smartapp-modal__content--close-icon" }, { children: _jsx(CloseIcon, { style: { color: getColor(iconColor, getDefaultColorForCloseIcon(theme)) } }) }))), content] })) })) })));
36
+ }, [isModalOpen, isClosableOutside, handleCloseModal]);
37
+ return (_jsx(Popup, __assign({ className: getClassNames('modal', '-', platform), closeOnDocumentClick: isClosableOutside, modal: true, open: isModalOpen }, { children: _jsx("div", __assign({ ref: ref, className: getClassNames('smartapp-modal', '__', additionalClassName) }, { children: _jsxs("div", __assign({ className: getClassNames('smartapp-modal__content', '--', platform) }, { children: [title && (_jsx("p", __assign({ className: "smartapp-modal__content--title", style: titleStyles }, { children: title }))), isClosableOutside && (_jsx("div", __assign({ onClick: handleCloseModal, className: "smartapp-modal__content--close-icon" }, { children: _jsx(CloseIcon, { style: { color: getColor(iconColor, getDefaultGrayColorForIcon(theme)) } }) }))), content] })) })) })));
38
38
  };
39
39
  export default Modal;
40
40
  //# sourceMappingURL=Modal.js.map