@expressms/smartapp-ui 2.1.0 → 2.1.2

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.
@@ -1,4 +1,4 @@
1
1
  import { IAttachedFileProps } from './types';
2
2
  import '../../styles/styles.scss';
3
- declare const AttachedFile: ({ fileName, weight, weightType, isSpaceBetween, onClickDownloadFile, onClickRemoveFile, isRemoveFile, isDownloadFile, width, fileColor, downloadColor, removeColor, fileIcon, }: IAttachedFileProps) => import("react/jsx-runtime").JSX.Element;
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;
4
4
  export default AttachedFile;
@@ -18,11 +18,10 @@ import { getColor } from '../../helpers';
18
18
  import { COLORS } from '../../constants';
19
19
  import '../../styles/styles.scss';
20
20
  var AttachedFile = function (_a) {
21
- var fileName = _a.fileName, weight = _a.weight, weightType = _a.weightType, _b = _a.isSpaceBetween, isSpaceBetween = _b === void 0 ? false : _b, _c = _a.onClickDownloadFile, onClickDownloadFile = _c === void 0 ? undefined : _c, _d = _a.onClickRemoveFile, onClickRemoveFile = _d === void 0 ? undefined : _d, _e = _a.isRemoveFile, isRemoveFile = _e === void 0 ? false : _e, _f = _a.isDownloadFile, isDownloadFile = _f === void 0 ? false : _f, _g = _a.width, width = _g === void 0 ? 100 : _g, 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: "smartapp-attached-file--icon" }, { children: fileIcon || _jsx(FileIcon, { style: { color: getColor(fileColor, COLORS.gray) } }) })), _jsxs("div", __assign({ className: classNames({
23
- 'smartapp-attached-file__value': true,
24
- 'justify-space-between': isSpaceBetween,
25
- }) }, { children: [_jsxs("div", __assign({ className: "smartapp-attached-file__value--info" }, { 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.blue) } }) }))), 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));
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));
26
25
  };
27
26
  export default AttachedFile;
28
27
  //# 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,EAcD;QAbnB,QAAQ,cAAA,EACR,MAAM,YAAA,EACN,UAAU,gBAAA,EACV,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,EAAC,8BAA8B,gBAAE,QAAQ,IAAI,KAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,GAAI,IAAO,EAClI,wBACE,SAAS,EAAE,UAAU,CAAC;oBACpB,+BAA+B,EAAE,IAAI;oBACrC,uBAAuB,EAAE,cAAc;iBACxC,CAAC,iBAEF,wBAAK,SAAS,EAAC,qCAAqC,iBAClD,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,IAAI,CAAC,EAAE,GAAI,IAChE,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,MAxBE,MAAM,CAyBV,CACP;AA3ByB,CA2BzB,CAAA;AAED,eAAe,YAAY,CAAA"}
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"}
@@ -4,6 +4,7 @@ export interface IAttachedFileProps {
4
4
  fileName: string;
5
5
  weight: number;
6
6
  weightType: string;
7
+ isIconEnclosedWithinBorders?: boolean;
7
8
  isSpaceBetween?: boolean;
8
9
  onClickRemoveFile?: (file: any) => void;
9
10
  onClickDownloadFile?: (file: any) => void;
@@ -24,7 +24,7 @@ var Loader = function (_a) {
24
24
  lineHeight: LINE_HEIGHT[textSize],
25
25
  }); };
26
26
  var getBackgroundColor = function () {
27
- var colorForDefaultTheme = isFullScreen ? COLORS.lightGray : COLORS.white;
27
+ var colorForDefaultTheme = isFullScreen ? COLORS.lighterGray : COLORS.white;
28
28
  var defaultColor = isDarkTheme(theme) ? COLORS.white3 : colorForDefaultTheme;
29
29
  return getColor(backgroundColor, defaultColor);
30
30
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Loader.js","sourceRoot":"","sources":["../../../../src/сomponents/Loader/Loader.tsx"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,UAAU,MAAM,YAAY,CAAA;AAEnC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EAAE,cAAc,IAAI,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAC5E,OAAO,0BAA0B,CAAA;AAEjC,IAAM,MAAM,GAAG,UAAC,EAWD;QAVb,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,KAAK,WAAA,EACL,eAAe,qBAAA,EACf,aAAqB,EAArB,KAAK,mBAAG,KAAK,CAAC,OAAO,KAAA;IAErB,IAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;IAEhD,IAAM,aAAa,GAAG,cAAM,OAAA,CAAC;QAC3B,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,EAJ0B,CAI1B,CAAA;IAEF,IAAM,kBAAkB,GAAG;QACzB,IAAM,oBAAoB,GAAG,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAA;QAC3E,IAAM,YAAY,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,oBAAoB,CAAA;QAE9E,OAAO,QAAQ,CAAC,eAAe,EAAE,YAAY,CAAC,CAAA;IAChD,CAAC,CAAA;IAED,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO,IAAI,CAAA;KACZ;IAED,OAAO,CACL,uBACE,SAAS,EAAE,UAAU,CAAC;YACpB,yBAAyB,EAAE,IAAI;YAC/B,sCAAsC,EAAE,YAAY;SACrD,CAAC,EACF,KAAK,EAAE,EAAE,UAAU,EAAE,kBAAkB,EAAE,EAAE,gBAE3C,wBAAK,SAAS,EAAC,iBAAiB,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,UAAG,KAAK,OAAI,EAAE,iBAC7D,KAAC,UAAU,IAAC,SAAS,EAAC,uBAAuB,EAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,GAAI,EACjH,KAAK,IAAI,CACR,qBAAG,SAAS,EAAC,wBAAwB,EAAC,KAAK,EAAE,aAAa,EAAE,gBACzD,KAAK,IACJ,CACL,KACG,IACF,CACP,CAAA;AACH,CAAC,CAAA;AAED,eAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"Loader.js","sourceRoot":"","sources":["../../../../src/сomponents/Loader/Loader.tsx"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,UAAU,MAAM,YAAY,CAAA;AAEnC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AACvE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EAAE,cAAc,IAAI,UAAU,EAAE,MAAM,+BAA+B,CAAA;AAC5E,OAAO,0BAA0B,CAAA;AAEjC,IAAM,MAAM,GAAG,UAAC,EAWD;QAVb,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,KAAK,WAAA,EACL,eAAe,qBAAA,EACf,aAAqB,EAArB,KAAK,mBAAG,KAAK,CAAC,OAAO,KAAA;IAErB,IAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;IAEhD,IAAM,aAAa,GAAG,cAAM,OAAA,CAAC;QAC3B,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,EAJ0B,CAI1B,CAAA;IAEF,IAAM,kBAAkB,GAAG;QACzB,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,QAAQ,CAAC,eAAe,EAAE,YAAY,CAAC,CAAA;IAChD,CAAC,CAAA;IAED,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO,IAAI,CAAA;KACZ;IAED,OAAO,CACL,uBACE,SAAS,EAAE,UAAU,CAAC;YACpB,yBAAyB,EAAE,IAAI;YAC/B,sCAAsC,EAAE,YAAY;SACrD,CAAC,EACF,KAAK,EAAE,EAAE,UAAU,EAAE,kBAAkB,EAAE,EAAE,gBAE3C,wBAAK,SAAS,EAAC,iBAAiB,EAAC,KAAK,EAAE,EAAE,KAAK,EAAE,UAAG,KAAK,OAAI,EAAE,iBAC7D,KAAC,UAAU,IAAC,SAAS,EAAC,uBAAuB,EAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,GAAI,EACjH,KAAK,IAAI,CACR,qBAAG,SAAS,EAAC,wBAAwB,EAAC,KAAK,EAAE,aAAa,EAAE,gBACzD,KAAK,IACJ,CACL,KACG,IACF,CACP,CAAA;AACH,CAAC,CAAA;AAED,eAAe,MAAM,CAAA"}
@@ -1,4 +1,4 @@
1
1
  import { INotificationProps } from './types';
2
2
  import '../../styles/styles.scss';
3
- declare const Notification: ({ isShown, type, isAutoHidden, isFullScreen, hideDuration, distanceFromBottom, platform, message, action, hideNotification, }: INotificationProps) => import("react/jsx-runtime").JSX.Element;
3
+ declare const Notification: ({ theme, platform, id, type, isAutoHidden, isFullScreen, isAllIndefinitelyNeedToBeClosed, hideDuration, distanceFromBottom, title, avatar, text, boldText, subText, action, }: INotificationProps) => import("react/jsx-runtime").JSX.Element;
4
4
  export default Notification;
@@ -9,39 +9,125 @@ var __assign = (this && this.__assign) || function () {
9
9
  };
10
10
  return __assign.apply(this, arguments);
11
11
  };
12
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
- import { useEffect } from 'react';
14
- import Popup from 'reactjs-popup';
12
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
13
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
14
+ if (ar || !(i in from)) {
15
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
16
+ ar[i] = from[i];
17
+ }
18
+ }
19
+ return to.concat(ar || Array.prototype.slice.call(from));
20
+ };
21
+ var _a;
22
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
23
+ import { useEffect, useState } from 'react';
24
+ import { ToastContainer, toast, cssTransition } from 'react-toastify';
25
+ import classNames from 'classnames';
26
+ import juice from 'juice';
27
+ import DOMPurify from 'dompurify';
28
+ import Avatar from '../Avatar';
29
+ import { isWebPlatform } from '../../helpers';
30
+ import { CANCEL_ACTION_TEXT, DEFAULT_NOTIFICATION_DISTANCE_FROM_TOP, MOBILE_NOTIFICATION_DISTANCE_FROM_BOTTOM, PLATFORM, THEME, WEB_NOTIFICATION_DISTANCE_FROM_BOTTOM, } from '../../constants';
15
31
  import { ReactComponent as NotificationSuccessIcon } from '../../assets/icons/notification-success.svg';
16
32
  import { ReactComponent as NotificationInfoIcon } from '../../assets/icons/notification-info.svg';
17
33
  import { ReactComponent as NotificationWarningIcon } from '../../assets/icons/notification-warning.svg';
18
34
  import { ReactComponent as NotificationErrorIcon } from '../../assets/icons/notification-error.svg';
19
- import { CANCEL_ACTION_TEXT, FULL_SCREEN_CLASS_NAME, MOBILE_NOTIFICATION_DISTANCE_FROM_BOTTOM, PLATFORM, WEB_NOTIFICATION_DISTANCE_FROM_BOTTOM, } from '../../constants';
20
- import { getClassNames, isWebPlatform } from '../../helpers';
35
+ import { ReactComponent as NotificationCloseIcon } from '../../assets/icons/notification-close.svg';
21
36
  import '../../styles/styles.scss';
22
- var NOTIFICATION_ICONS = {
23
- success: _jsx(NotificationSuccessIcon, {}),
24
- info: _jsx(NotificationInfoIcon, {}),
25
- warning: _jsx(NotificationWarningIcon, {}),
26
- error: _jsx(NotificationErrorIcon, {}),
37
+ var AUTO_HIDDEN_CONTAINER_ID = 'autoHiddenContainerId';
38
+ var INDEFINITELY_CONTAINER_ID = 'indefinitelyContainerId';
39
+ var NOTIFICATION_HEIGHT = 66;
40
+ var NOTIFICATION_TYPES = {
41
+ success: 'success',
42
+ info: 'info',
43
+ warning: 'warning',
44
+ error: 'error',
45
+ mail: 'mail',
27
46
  };
47
+ var NOTIFICATION_ICONS = (_a = {},
48
+ _a[NOTIFICATION_TYPES.success] = _jsx(NotificationSuccessIcon, {}),
49
+ _a[NOTIFICATION_TYPES.info] = _jsx(NotificationInfoIcon, {}),
50
+ _a[NOTIFICATION_TYPES.warning] = _jsx(NotificationWarningIcon, {}),
51
+ _a[NOTIFICATION_TYPES.error] = _jsx(NotificationErrorIcon, {}),
52
+ _a);
28
53
  var Notification = function (_a) {
29
- var isShown = _a.isShown, _b = _a.type, type = _b === void 0 ? 'success' : _b, _c = _a.isAutoHidden, isAutoHidden = _c === void 0 ? true : _c, _d = _a.isFullScreen, isFullScreen = _d === void 0 ? false : _d, _e = _a.hideDuration, hideDuration = _e === void 0 ? 3000 : _e, distanceFromBottom = _a.distanceFromBottom, _f = _a.platform, platform = _f === void 0 ? PLATFORM.web : _f, message = _a.message, action = _a.action, hideNotification = _a.hideNotification;
30
- var popupAdditionalClassName = isFullScreen ? [platform, FULL_SCREEN_CLASS_NAME] : platform;
31
- var contentAdditionalClassName = isFullScreen ? [type, FULL_SCREEN_CLASS_NAME] : type;
54
+ var _b = _a.theme, theme = _b === void 0 ? THEME.default : _b, _c = _a.platform, platform = _c === void 0 ? PLATFORM.web : _c, id = _a.id, _d = _a.type, type = _d === void 0 ? 'success' : _d, _e = _a.isAutoHidden, isAutoHidden = _e === void 0 ? true : _e, _f = _a.isFullScreen, isFullScreen = _f === void 0 ? false : _f, _g = _a.isAllIndefinitelyNeedToBeClosed, isAllIndefinitelyNeedToBeClosed = _g === void 0 ? false : _g, _h = _a.hideDuration, hideDuration = _h === void 0 ? 3000 : _h, distanceFromBottom = _a.distanceFromBottom, title = _a.title, avatar = _a.avatar, text = _a.text, boldText = _a.boldText, subText = _a.subText, action = _a.action;
55
+ var _j = useState([]), indefinitelyIds = _j[0], setIndefinitelyIds = _j[1];
32
56
  var getDistanceFromBottom = function () {
33
57
  var defaultDistanceFromBottom = isWebPlatform(platform) ? WEB_NOTIFICATION_DISTANCE_FROM_BOTTOM : MOBILE_NOTIFICATION_DISTANCE_FROM_BOTTOM;
34
- return "".concat(distanceFromBottom || defaultDistanceFromBottom, "px");
58
+ return distanceFromBottom || defaultDistanceFromBottom;
59
+ };
60
+ var notificationAnimation = cssTransition({
61
+ enter: 'notification-enter-animation',
62
+ exit: 'notification-exit-animation',
63
+ appendPosition: true,
64
+ });
65
+ var handleActionClick = function (_a) {
66
+ var notificationId = _a.notificationId, action = _a.action;
67
+ toast.dismiss(notificationId);
68
+ action && action();
69
+ };
70
+ var handleClickMailCloseIcon = function (_a) {
71
+ var event = _a.event, notificationId = _a.notificationId;
72
+ event.stopPropagation();
73
+ toast.dismiss(notificationId);
74
+ };
75
+ var replaceSpacesInText = function (textWithSpaces) { return textWithSpaces.replace(/ /g, '&nbsp;'); };
76
+ var getSanitizedHtml = function (str) {
77
+ var preparedHtml = juice(replaceSpacesInText(str));
78
+ var html = DOMPurify.sanitize(preparedHtml);
79
+ return { __html: html };
80
+ };
81
+ var renderNotificationText = function () {
82
+ if (boldText && text.includes(boldText)) {
83
+ var _a = text.split(boldText), startOfText = _a[0], endOfText = _a[1];
84
+ return (_jsxs("div", __assign({ className: "smartapp-notification__content--text" }, { children: [_jsx("div", { dangerouslySetInnerHTML: getSanitizedHtml(startOfText) }), _jsx("div", { className: "smartapp-notification__content--text__bold", dangerouslySetInnerHTML: getSanitizedHtml(boldText) }), _jsx("div", { dangerouslySetInnerHTML: getSanitizedHtml(endOfText) })] })));
85
+ }
86
+ return _jsx("div", { children: text });
35
87
  };
88
+ var renderMailNotificationContent = function (notificationId) { return (_jsxs("div", __assign({ onClick: function () { return handleActionClick({ notificationId: notificationId, action: action === null || action === void 0 ? void 0 : action.onClick }); } }, { children: [_jsxs("div", __assign({ className: "smartapp-notification__title" }, { children: [_jsx("div", { children: title }), _jsx(NotificationCloseIcon, { onClick: function (event) { return handleClickMailCloseIcon({ event: event, notificationId: notificationId }); } })] })), _jsxs("div", __assign({ className: "smartapp-notification__body" }, { children: [avatar && _jsx(Avatar, { size: 40, avatar: avatar.src, username: avatar.username }), _jsxs("div", __assign({ className: "smartapp-notification__body--text" }, { children: [_jsx("div", { children: text }), _jsx("div", { children: subText })] }))] }))] }))); };
89
+ var renderNotificationContent = function (notificationId) {
90
+ if (type === NOTIFICATION_TYPES.mail) {
91
+ return renderMailNotificationContent(notificationId);
92
+ }
93
+ return (_jsxs("div", __assign({ className: "smartapp-notification" }, { children: [NOTIFICATION_ICONS[type], _jsxs("div", __assign({ className: "smartapp-notification__content" }, { children: [renderNotificationText(), action && (_jsx("div", __assign({ className: "smartapp-notification__content--action", onClick: function () { return handleActionClick({ notificationId: notificationId, action: action.onClick }); } }, { children: action.text || CANCEL_ACTION_TEXT })))] }))] })));
94
+ };
95
+ var renderToastContainer = function (_a) {
96
+ var containerId = _a.containerId, distanceFromBottom = _a.distanceFromBottom, _b = _a.distanceFromTop, distanceFromTop = _b === void 0 ? DEFAULT_NOTIFICATION_DISTANCE_FROM_TOP : _b;
97
+ return (_jsx(ToastContainer, { enableMultiContainer: true, containerId: containerId, hideProgressBar: true, draggable: false, closeButton: false, pauseOnHover: false, pauseOnFocusLoss: false, closeOnClick: false, className: classNames("Toastify__toast-container--".concat(theme), {
98
+ 'Toastify__toast-container--full-screen': isFullScreen,
99
+ }), style: { '--distance-from-bottom': "".concat(distanceFromBottom, "px"), '--distance-from-top': "".concat(distanceFromTop, "px") }, transition: notificationAnimation, position: isFullScreen ? 'top-right' : 'bottom-center' }));
100
+ };
101
+ useEffect(function () {
102
+ if (id) {
103
+ !isAutoHidden && setIndefinitelyIds(function (prevIds) { return __spreadArray(__spreadArray([], prevIds, true), [id], false); });
104
+ toast(renderNotificationContent(id), {
105
+ containerId: !isAutoHidden ? INDEFINITELY_CONTAINER_ID : AUTO_HIDDEN_CONTAINER_ID,
106
+ toastId: id,
107
+ autoClose: isAutoHidden ? hideDuration : false,
108
+ className: "Toastify__toast--".concat(type),
109
+ });
110
+ }
111
+ // eslint-disable-next-line
112
+ }, [id]);
113
+ useEffect(function () {
114
+ if (isAllIndefinitelyNeedToBeClosed) {
115
+ indefinitelyIds.forEach(function (indefinitelyId) { return toast.dismiss(indefinitelyId); });
116
+ }
117
+ }, [indefinitelyIds, isAllIndefinitelyNeedToBeClosed]);
36
118
  useEffect(function () {
37
- if (isShown && isAutoHidden) {
38
- var timeout_1 = setTimeout(function () {
39
- hideNotification();
40
- }, hideDuration);
41
- return function () { return clearTimeout(timeout_1); };
119
+ if (isAllIndefinitelyNeedToBeClosed) {
120
+ setIndefinitelyIds([]);
42
121
  }
43
- }, [isShown, isAutoHidden, hideDuration, hideNotification]);
44
- return (_jsx(Popup, __assign({ className: getClassNames('notification', '-', popupAdditionalClassName), overlayStyle: { '--distance-from-bottom': getDistanceFromBottom() }, open: isShown, closeOnDocumentClick: false, closeOnEscape: false }, { children: _jsxs("div", __assign({ className: getClassNames('smartapp-notification', '__', contentAdditionalClassName) }, { children: [NOTIFICATION_ICONS[type], _jsxs("div", __assign({ className: "smartapp-notification__content" }, { children: [_jsx("div", { children: message }), action && (_jsx("div", __assign({ className: "smartapp-notification__content--action", onClick: action.onClick }, { children: action.text || CANCEL_ACTION_TEXT })))] }))] })) })));
122
+ }, [isAllIndefinitelyNeedToBeClosed]);
123
+ return (_jsxs(_Fragment, { children: [renderToastContainer({
124
+ containerId: AUTO_HIDDEN_CONTAINER_ID,
125
+ distanceFromBottom: getDistanceFromBottom() + indefinitelyIds.length * NOTIFICATION_HEIGHT,
126
+ distanceFromTop: indefinitelyIds.length * NOTIFICATION_HEIGHT + DEFAULT_NOTIFICATION_DISTANCE_FROM_TOP,
127
+ }), renderToastContainer({
128
+ containerId: INDEFINITELY_CONTAINER_ID,
129
+ distanceFromBottom: getDistanceFromBottom(),
130
+ })] }));
45
131
  };
46
132
  export default Notification;
47
133
  //# sourceMappingURL=Notification.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Notification.js","sourceRoot":"","sources":["../../../../src/сomponents/Notification/Notification.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Notification.js","sourceRoot":"","sources":["../../../../src/сomponents/Notification/Notification.tsx"],"names":[],"mappings":"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"}
@@ -1,16 +1,36 @@
1
- import { ReactElement } from 'react';
2
- import { IPlatformProps } from '../../constants';
3
- export interface INotificationProps extends IPlatformProps {
4
- isShown: boolean;
5
- type?: 'success' | 'info' | 'warning' | 'error';
1
+ import React from 'react';
2
+ import { ICommonProps } from '../../constants';
3
+ export type THandleActionClick = {
4
+ notificationId: string;
5
+ action?: () => void;
6
+ };
7
+ export type THandleClickMailCloseIcon = {
8
+ event: React.MouseEvent;
9
+ notificationId: string;
10
+ };
11
+ export type TRenderToastContainer = {
12
+ containerId: string;
13
+ distanceFromBottom: number;
14
+ distanceFromTop?: number;
15
+ };
16
+ export interface INotificationProps extends ICommonProps {
17
+ id: string;
18
+ type?: 'success' | 'info' | 'warning' | 'error' | 'mail';
6
19
  isAutoHidden?: boolean;
7
20
  isFullScreen?: boolean;
21
+ isAllIndefinitelyNeedToBeClosed?: boolean;
8
22
  hideDuration?: number;
9
23
  distanceFromBottom?: number;
10
- message: string | ReactElement;
24
+ title?: string;
25
+ avatar?: {
26
+ src?: string;
27
+ username: string;
28
+ };
29
+ text: string;
30
+ boldText?: string;
31
+ subText?: string;
11
32
  action?: {
12
33
  text?: string;
13
34
  onClick: () => void;
14
35
  };
15
- hideNotification: () => void;
16
36
  }
@@ -1,3 +1,4 @@
1
+ import { ReactElement } from 'react';
1
2
  import { IPlatformProps } from '../../constants';
2
3
  export declare enum STORY_BACKGROUND_TYPES {
3
4
  color = "color",
@@ -21,7 +22,7 @@ export interface TImageStoryItem extends TCommonStoryItem {
21
22
  type: 'image';
22
23
  durationInMs?: number;
23
24
  title: string | null;
24
- body: string | null;
25
+ body: string | ReactElement | null;
25
26
  backgroundSource: TBackgroundSource;
26
27
  button: {
27
28
  text: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/сomponents/Stories/types.ts"],"names":[],"mappings":"AAEA,MAAM,CAAN,IAAY,sBAGX;AAHD,WAAY,sBAAsB;IAChC,yCAAe,CAAA;IACf,yCAAe,CAAA;AACjB,CAAC,EAHW,sBAAsB,KAAtB,sBAAsB,QAGjC;AAED,MAAM,CAAN,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,6BAAe,CAAA;IACf,6BAAe,CAAA;AACjB,CAAC,EAHW,UAAU,KAAV,UAAU,QAGrB"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/сomponents/Stories/types.ts"],"names":[],"mappings":"AAGA,MAAM,CAAN,IAAY,sBAGX;AAHD,WAAY,sBAAsB;IAChC,yCAAe,CAAA;IACf,yCAAe,CAAA;AACjB,CAAC,EAHW,sBAAsB,KAAtB,sBAAsB,QAGjC;AAED,MAAM,CAAN,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,6BAAe,CAAA;IACf,6BAAe,CAAA;AACjB,CAAC,EAHW,UAAU,KAAV,UAAU,QAGrB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@expressms/smartapp-ui",
3
- "version": "2.1.0",
3
+ "version": "2.1.2",
4
4
  "description": "SmartApp UI library",
5
5
  "license": "MIT",
6
6
  "main": "build/main/index.js",
@@ -14,6 +14,7 @@
14
14
  "@svgr/webpack": "5.5",
15
15
  "@testing-library/jest-dom": "^6.4.2",
16
16
  "@types/color": "^3.0.6",
17
+ "@types/dompurify": "^3.0.5",
17
18
  "@types/jest": "^29.5.12",
18
19
  "@types/node": "^16.18.11",
19
20
  "@types/react": "^18.0.27",
@@ -21,6 +22,7 @@
21
22
  "@types/react-datepicker": "^4.8.0",
22
23
  "@types/react-dom": "^18.0.10",
23
24
  "@types/react-slick": "^0.23.10",
25
+ "@types/uuid": "^9.0.8",
24
26
  "@typescript-eslint/eslint-plugin": "^6.6.0",
25
27
  "@typescript-eslint/parser": "^6.6.0",
26
28
  "animate.css": "^4.1.1",
@@ -35,6 +37,7 @@
35
37
  "color-blend": "^4.0.0",
36
38
  "copyfiles": "^2.4.1",
37
39
  "css-loader": "^6.5.1",
40
+ "dompurify": "^3.1.4",
38
41
  "dotenv": "^10.0.0",
39
42
  "dotenv-expand": "^5.1.0",
40
43
  "eslint": "^8.3.0",
@@ -46,6 +49,7 @@
46
49
  "jest": "^25.0.0",
47
50
  "jest-resolve": "^27.4.2",
48
51
  "jest-watch-typeahead": "^1.0.0",
52
+ "juice": "^10.0.0",
49
53
  "mini-css-extract-plugin": "^2.4.5",
50
54
  "react": "^18.2.0",
51
55
  "react-app-polyfill": "^3.0.0",
@@ -59,6 +63,7 @@
59
63
  "react-select": "^5.7.2",
60
64
  "react-slick": "^0.29.0",
61
65
  "react-swipeable": "^7.0.1",
66
+ "react-toastify": "9.0.3",
62
67
  "reactjs-popup": "^2.0.5",
63
68
  "resolve": "^1.20.0",
64
69
  "rollup-plugin-lit-css": "^4.0.1",
@@ -69,7 +74,8 @@
69
74
  "tailwindcss": "^3.0.2",
70
75
  "typescript": "^4.9.4",
71
76
  "typescript-plugin-css-modules": "^5.0.1",
72
- "url-loader": "^4.1.1"
77
+ "url-loader": "^4.1.1",
78
+ "uuid": "^9.0.1"
73
79
  },
74
80
  "scripts": {
75
81
  "start": "node scripts/start.js",