@plusscommunities/pluss-circles-web-groups 1.5.3 → 1.5.5-auth.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs.js +302 -112
- package/dist/index.esm.js +302 -112
- package/dist/index.umd.js +302 -112
- package/package.json +8 -3
- package/package.json-e +52 -0
- package/src/apis/circleActions.js +10 -0
- package/src/screens/AddCircle.js +537 -478
- package/src/screens/Circle.js +852 -751
- package/src/screens/Circles.js +558 -376
- package/src/screens/Circles.module.css +96 -0
package/dist/index.cjs.js
CHANGED
|
@@ -376,12 +376,46 @@ var circleActions = {
|
|
|
376
376
|
}
|
|
377
377
|
|
|
378
378
|
return deleteMessage;
|
|
379
|
+
}(),
|
|
380
|
+
markAsRead: function () {
|
|
381
|
+
var _markAsRead = _asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee4(circleId, userId) {
|
|
382
|
+
return _regeneratorRuntime__default['default'].wrap(function _callee4$(_context4) {
|
|
383
|
+
while (1) {
|
|
384
|
+
switch (_context4.prev = _context4.next) {
|
|
385
|
+
case 0:
|
|
386
|
+
return _context4.abrupt("return", Session$4.authedFunction({
|
|
387
|
+
method: 'post',
|
|
388
|
+
url: Helper$3.getUrl('groups', 'resetunread'),
|
|
389
|
+
data: {
|
|
390
|
+
groupID: circleId,
|
|
391
|
+
userID: userId
|
|
392
|
+
}
|
|
393
|
+
}));
|
|
394
|
+
|
|
395
|
+
case 1:
|
|
396
|
+
case "end":
|
|
397
|
+
return _context4.stop();
|
|
398
|
+
}
|
|
399
|
+
}
|
|
400
|
+
}, _callee4);
|
|
401
|
+
}));
|
|
402
|
+
|
|
403
|
+
function markAsRead(_x9, _x10) {
|
|
404
|
+
return _markAsRead.apply(this, arguments);
|
|
405
|
+
}
|
|
406
|
+
|
|
407
|
+
return markAsRead;
|
|
379
408
|
}()
|
|
380
409
|
};
|
|
381
410
|
|
|
382
411
|
var Apis$1 = PlussCore__namespace.Apis;
|
|
383
412
|
var analyticsActions = Apis$1.analyticsActions;
|
|
384
413
|
|
|
414
|
+
var e=[],t=[];function n(n,r){if(n&&"undefined"!=typeof document){var a,s=!0===r.prepend?"prepend":"append",d=!0===r.singleTag,i="string"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName("head")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c();}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n));}function c(){var e=document.createElement("style");if(e.setAttribute("type","text/css"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a="prepend"===s?"afterbegin":"beforeend";return i.insertAdjacentElement(a,e),e}}
|
|
415
|
+
|
|
416
|
+
var css = "/* Badge styling for unread count */\n:root {\n --badge-bg-color: #597db4; /* COLOUR_BRANDING_OFF */\n}\n\n.badgeTag {\n font-size: 11px;\n font-weight: 400;\n padding: 3px 10px;\n background-color: var(--badge-bg-color) !important;\n color: #fff !important;\n border-radius: 999px !important;\n border: none !important;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n line-height: 1;\n letter-spacing: 0.02em;\n}\n\n/* Unread filter info banner */\n.unreadFilterBanner {\n background-color: #f0f4f8;\n border-left: 3px solid var(--badge-bg-color);\n border-radius: 4px;\n padding: 12px 16px;\n margin-top: 16px;\n margin-bottom: 16px;\n display: flex;\n align-items: center;\n}\n\n.unreadFilterContent {\n display: flex;\n align-items: center;\n gap: 10px;\n width: 100%;\n}\n\n.unreadFilterIcon {\n font-size: 16px;\n color: var(--badge-bg-color);\n flex-shrink: 0;\n}\n\n.unreadFilterText {\n font-size: 14px;\n line-height: 1.5;\n color: #333333;\n}\n\n.unreadFilterButton {\n background: none;\n border: none;\n color: var(--badge-bg-color);\n font-size: 14px;\n font-weight: 500;\n text-decoration: underline;\n cursor: pointer;\n padding: 4px 8px;\n margin-left: 4px;\n min-height: 32px;\n min-width: 32px;\n transition: all 0.2s ease;\n}\n\n.unreadFilterButton:hover {\n background-color: rgba(89, 125, 180, 0.1);\n text-decoration: none;\n}\n\n.unreadFilterButton:focus {\n outline: 2px solid var(--badge-bg-color);\n outline-offset: 2px;\n border-radius: 2px;\n}\n\n/* Mobile responsiveness */\n@media (max-width: 768px) {\n .unreadFilterBanner {\n flex-direction: column;\n align-items: flex-start;\n padding: 12px;\n }\n\n .unreadFilterContent {\n flex-direction: column;\n align-items: flex-start;\n gap: 8px;\n }\n\n .unreadFilterText {\n font-size: 13px;\n }\n}\n\n";
|
|
417
|
+
n(css,{});
|
|
418
|
+
|
|
385
419
|
function _createSuper$7(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$7(); return function _createSuperInternal() { var Super = _getPrototypeOf__default['default'](Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf__default['default'](this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn__default['default'](this, result); }; }
|
|
386
420
|
|
|
387
421
|
function _isNativeReflectConstruct$7() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
@@ -418,7 +452,7 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
418
452
|
|
|
419
453
|
case 3:
|
|
420
454
|
res = _context.sent;
|
|
421
|
-
console.log(
|
|
455
|
+
console.log("getData", res.data);
|
|
422
456
|
|
|
423
457
|
_this.props.circlesLoaded(res.data);
|
|
424
458
|
|
|
@@ -432,7 +466,7 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
432
466
|
case 9:
|
|
433
467
|
_context.prev = 9;
|
|
434
468
|
_context.t0 = _context["catch"](0);
|
|
435
|
-
console.error(
|
|
469
|
+
console.error("getData", _context.t0);
|
|
436
470
|
|
|
437
471
|
_this.setState({
|
|
438
472
|
loadingAll: false
|
|
@@ -447,6 +481,12 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
447
481
|
})));
|
|
448
482
|
});
|
|
449
483
|
|
|
484
|
+
_defineProperty__default['default'](_assertThisInitialized__default['default'](_this), "selectUnreadFilter", function (showUnreadOnly) {
|
|
485
|
+
_this.setState({
|
|
486
|
+
showUnreadOnly: showUnreadOnly
|
|
487
|
+
});
|
|
488
|
+
});
|
|
489
|
+
|
|
450
490
|
_defineProperty__default['default'](_assertThisInitialized__default['default'](_this), "canAddNew", function () {
|
|
451
491
|
var auth = _this.props.auth;
|
|
452
492
|
return Session$3.validateAccess(auth.site, values.permission, auth);
|
|
@@ -514,9 +554,15 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
514
554
|
});
|
|
515
555
|
});
|
|
516
556
|
|
|
557
|
+
_defineProperty__default['default'](_assertThisInitialized__default['default'](_this), "selectSort", function (sortType) {
|
|
558
|
+
_this.setState({
|
|
559
|
+
sortBy: sortType
|
|
560
|
+
});
|
|
561
|
+
});
|
|
562
|
+
|
|
517
563
|
_defineProperty__default['default'](_assertThisInitialized__default['default'](_this), "onHandleChange", function (event) {
|
|
518
564
|
var stateChange = {};
|
|
519
|
-
stateChange[event.target.getAttribute(
|
|
565
|
+
stateChange[event.target.getAttribute("id")] = event.target.value;
|
|
520
566
|
|
|
521
567
|
_this.setState(stateChange);
|
|
522
568
|
});
|
|
@@ -528,14 +574,14 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
528
574
|
circleActions.delete(circle.Id).then(function (res) {
|
|
529
575
|
_this.getData();
|
|
530
576
|
}).catch(function (res) {
|
|
531
|
-
alert(
|
|
577
|
+
alert("Something went wrong with the request. Please try again.");
|
|
532
578
|
});
|
|
533
579
|
}
|
|
534
580
|
});
|
|
535
581
|
|
|
536
582
|
_defineProperty__default['default'](_assertThisInitialized__default['default'](_this), "getTypeFilterText", function (type) {
|
|
537
|
-
if (type ===
|
|
538
|
-
return
|
|
583
|
+
if (type === "private") {
|
|
584
|
+
return "Private Message";
|
|
539
585
|
}
|
|
540
586
|
|
|
541
587
|
return ___default['default'].capitalize(values.entityName);
|
|
@@ -545,14 +591,17 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
545
591
|
if (circle.IsPrivate) {
|
|
546
592
|
return "PM: ".concat(circle.Audience.map(function (user) {
|
|
547
593
|
return user.displayName;
|
|
548
|
-
}).join(
|
|
594
|
+
}).join(", "));
|
|
549
595
|
}
|
|
550
596
|
|
|
551
597
|
return circle.Title;
|
|
552
598
|
});
|
|
553
599
|
|
|
554
600
|
_this.state = {
|
|
555
|
-
userSearch:
|
|
601
|
+
userSearch: "",
|
|
602
|
+
sortBy: "newest",
|
|
603
|
+
showUnreadOnly: false,
|
|
604
|
+
pollingInterval: null
|
|
556
605
|
};
|
|
557
606
|
return _this;
|
|
558
607
|
}
|
|
@@ -560,27 +609,77 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
560
609
|
_createClass__default['default'](Circles, [{
|
|
561
610
|
key: "componentDidMount",
|
|
562
611
|
value: function componentDidMount() {
|
|
563
|
-
this
|
|
612
|
+
var _this2 = this;
|
|
613
|
+
|
|
614
|
+
this.getData(); // Poll for updates every 10 seconds
|
|
615
|
+
|
|
616
|
+
this.pollingInterval = setInterval(function () {
|
|
617
|
+
_this2.getData();
|
|
618
|
+
}, 10000);
|
|
619
|
+
}
|
|
620
|
+
}, {
|
|
621
|
+
key: "componentWillUnmount",
|
|
622
|
+
value: function componentWillUnmount() {
|
|
623
|
+
if (this.pollingInterval) {
|
|
624
|
+
clearInterval(this.pollingInterval);
|
|
625
|
+
}
|
|
626
|
+
}
|
|
627
|
+
}, {
|
|
628
|
+
key: "isCircleUnread",
|
|
629
|
+
value: function isCircleUnread(circle) {
|
|
630
|
+
var userId = this.props.user.Id;
|
|
631
|
+
|
|
632
|
+
if (!circle.Unread || !circle.Unread[userId]) {
|
|
633
|
+
return false;
|
|
634
|
+
}
|
|
635
|
+
|
|
636
|
+
return circle.Unread[userId] > 0;
|
|
637
|
+
}
|
|
638
|
+
}, {
|
|
639
|
+
key: "getUnreadCount",
|
|
640
|
+
value: function getUnreadCount(circle) {
|
|
641
|
+
var userId = this.props.user.Id;
|
|
642
|
+
|
|
643
|
+
if (!circle.Unread || !circle.Unread[userId]) {
|
|
644
|
+
return 0;
|
|
645
|
+
}
|
|
646
|
+
|
|
647
|
+
return circle.Unread[userId];
|
|
564
648
|
}
|
|
565
649
|
}, {
|
|
566
650
|
key: "getCircles",
|
|
567
651
|
value: function getCircles() {
|
|
568
|
-
var
|
|
652
|
+
var _this3 = this;
|
|
569
653
|
|
|
570
654
|
var result = this.props.circles;
|
|
571
655
|
|
|
572
656
|
if (this.state.selectedTypeFilter) {
|
|
573
657
|
result = ___default['default'].filter(result, function (circle) {
|
|
574
|
-
return
|
|
658
|
+
return _this3.state.selectedTypeFilter === "circle" ? !circle.IsPrivate : circle.IsPrivate;
|
|
575
659
|
});
|
|
576
660
|
}
|
|
577
661
|
|
|
578
662
|
if (this.state.selectedUserFilter) {
|
|
579
663
|
result = ___default['default'].filter(result, function (circle) {
|
|
580
664
|
return ___default['default'].some(circle.Audience, function (user) {
|
|
581
|
-
return user.userId ===
|
|
665
|
+
return user.userId === _this3.state.selectedUserFilter.userId;
|
|
582
666
|
});
|
|
583
667
|
});
|
|
668
|
+
} // Apply sorting
|
|
669
|
+
|
|
670
|
+
|
|
671
|
+
result = ___default['default'].sortBy(result, function (circle) {
|
|
672
|
+
return moment__default['default'](circle.Changed).valueOf();
|
|
673
|
+
});
|
|
674
|
+
|
|
675
|
+
if (this.state.sortBy === "newest") {
|
|
676
|
+
result.reverse();
|
|
677
|
+
|
|
678
|
+
if (this.state.showUnreadOnly) {
|
|
679
|
+
result = ___default['default'].filter(result, function (circle) {
|
|
680
|
+
return _this3.isCircleUnread(circle);
|
|
681
|
+
});
|
|
682
|
+
}
|
|
584
683
|
}
|
|
585
684
|
|
|
586
685
|
return result;
|
|
@@ -588,7 +687,7 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
588
687
|
}, {
|
|
589
688
|
key: "getUsers",
|
|
590
689
|
value: function getUsers() {
|
|
591
|
-
var
|
|
690
|
+
var _this4 = this;
|
|
592
691
|
|
|
593
692
|
var users = [];
|
|
594
693
|
this.props.circles.forEach(function (circle) {
|
|
@@ -598,10 +697,10 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
598
697
|
});
|
|
599
698
|
users = ___default['default'].sortBy(___default['default'].uniqBy(users, function (user) {
|
|
600
699
|
return user.userId;
|
|
601
|
-
}),
|
|
700
|
+
}), "displayName");
|
|
602
701
|
return ___default['default'].filter(users, function (u) {
|
|
603
|
-
if (!___default['default'].isEmpty(
|
|
604
|
-
return (u.displayName ||
|
|
702
|
+
if (!___default['default'].isEmpty(_this4.state.userSearch)) {
|
|
703
|
+
return (u.displayName || "").toLowerCase().indexOf(_this4.state.userSearch.toLowerCase()) > -1;
|
|
605
704
|
}
|
|
606
705
|
|
|
607
706
|
return true;
|
|
@@ -610,7 +709,7 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
610
709
|
}, {
|
|
611
710
|
key: "validateCircleAdmin",
|
|
612
711
|
value: function validateCircleAdmin(circle, onlyCreator) {
|
|
613
|
-
var
|
|
712
|
+
var _this5 = this;
|
|
614
713
|
|
|
615
714
|
if (Session$3.validateAccess(this.props.auth.site, values.permission, this.props.auth)) {
|
|
616
715
|
return true;
|
|
@@ -621,21 +720,31 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
621
720
|
}
|
|
622
721
|
|
|
623
722
|
return ___default['default'].some(circle.Audience, function (user) {
|
|
624
|
-
return user.userId ===
|
|
723
|
+
return user.userId === _this5.props.user.Id && user.isAdmin;
|
|
625
724
|
});
|
|
626
725
|
}
|
|
627
726
|
}, {
|
|
628
727
|
key: "renderRow",
|
|
629
728
|
value: function renderRow(circle) {
|
|
630
|
-
var
|
|
729
|
+
var _this6 = this;
|
|
631
730
|
|
|
731
|
+
var unreadCount = this.getUnreadCount(circle);
|
|
732
|
+
var badge = unreadCount > 0 ? /*#__PURE__*/React__default['default'].createElement(Components$4.Tag, {
|
|
733
|
+
className: css.badgeTag,
|
|
734
|
+
text: "".concat(unreadCount, " new")
|
|
735
|
+
}) : null;
|
|
632
736
|
return /*#__PURE__*/React__default['default'].createElement("tr", {
|
|
633
737
|
key: circle.Id
|
|
634
738
|
}, /*#__PURE__*/React__default['default'].createElement("td", {
|
|
635
739
|
className: "table-TitleColumn"
|
|
740
|
+
}, /*#__PURE__*/React__default['default'].createElement("div", {
|
|
741
|
+
className: "flex flex-center",
|
|
742
|
+
style: {
|
|
743
|
+
gap: "8px"
|
|
744
|
+
}
|
|
636
745
|
}, /*#__PURE__*/React__default['default'].createElement(reactRouterDom.Link, {
|
|
637
746
|
to: "/".concat(values.featureKey, "/").concat(values.entityKey, "/").concat(circle.Id)
|
|
638
|
-
}, this.getTitle(circle))), /*#__PURE__*/React__default['default'].createElement("td", null, moment__default['default'](circle.Changed).local().format(
|
|
747
|
+
}, this.getTitle(circle)), badge)), /*#__PURE__*/React__default['default'].createElement("td", null, moment__default['default'](circle.Changed).local().format("D MMM YYYY")), /*#__PURE__*/React__default['default'].createElement("td", null, circle.Audience.map(function (user) {
|
|
639
748
|
return /*#__PURE__*/React__default['default'].createElement(Components$4.ProfilePic, {
|
|
640
749
|
size: 30,
|
|
641
750
|
image: user.profilePic,
|
|
@@ -646,8 +755,8 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
646
755
|
className: "table-options"
|
|
647
756
|
}, /*#__PURE__*/React__default['default'].createElement("div", {
|
|
648
757
|
style: {
|
|
649
|
-
display:
|
|
650
|
-
alignItems:
|
|
758
|
+
display: "flex",
|
|
759
|
+
alignItems: "center"
|
|
651
760
|
}
|
|
652
761
|
}, this.validateCircleAdmin(circle) && !circle.IsPrivate && /*#__PURE__*/React__default['default'].createElement(reactRouterDom.Link, {
|
|
653
762
|
to: "/".concat(values.featureKey, "/edit/").concat(circle.Id)
|
|
@@ -656,31 +765,69 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
656
765
|
fontSize: 20,
|
|
657
766
|
padding: 5,
|
|
658
767
|
marginLeft: 12,
|
|
659
|
-
cursor:
|
|
768
|
+
cursor: "pointer"
|
|
660
769
|
},
|
|
661
770
|
name: "pencil"
|
|
662
771
|
})), this.validateCircleAdmin(circle, true) && !circle.IsPrivate && /*#__PURE__*/React__default['default'].createElement("a", {
|
|
663
772
|
onClick: function onClick() {
|
|
664
|
-
|
|
773
|
+
_this6.removeCircle(circle);
|
|
665
774
|
}
|
|
666
775
|
}, /*#__PURE__*/React__default['default'].createElement(FontAwesome__default['default'], {
|
|
667
776
|
style: {
|
|
668
777
|
fontSize: 20,
|
|
669
778
|
padding: 5,
|
|
670
779
|
marginLeft: 12,
|
|
671
|
-
cursor:
|
|
780
|
+
cursor: "pointer"
|
|
672
781
|
},
|
|
673
782
|
name: "minus-circle"
|
|
674
783
|
})))));
|
|
675
784
|
}
|
|
785
|
+
}, {
|
|
786
|
+
key: "renderUnreadFilterInfo",
|
|
787
|
+
value: function renderUnreadFilterInfo() {
|
|
788
|
+
var _this7 = this;
|
|
789
|
+
|
|
790
|
+
var showUnreadOnly = this.state.showUnreadOnly;
|
|
791
|
+
|
|
792
|
+
if (!showUnreadOnly) {
|
|
793
|
+
return null;
|
|
794
|
+
}
|
|
795
|
+
|
|
796
|
+
return /*#__PURE__*/React__default['default'].createElement("div", {
|
|
797
|
+
className: css.unreadFilterBanner
|
|
798
|
+
}, /*#__PURE__*/React__default['default'].createElement("div", {
|
|
799
|
+
className: css.unreadFilterContent
|
|
800
|
+
}, /*#__PURE__*/React__default['default'].createElement(FontAwesome__default['default'], {
|
|
801
|
+
name: "info-circle",
|
|
802
|
+
className: css.unreadFilterIcon
|
|
803
|
+
}), /*#__PURE__*/React__default['default'].createElement("span", {
|
|
804
|
+
className: css.unreadFilterText
|
|
805
|
+
}, "Showing only items with new messages.", " ", /*#__PURE__*/React__default['default'].createElement("button", {
|
|
806
|
+
className: css.unreadFilterButton,
|
|
807
|
+
onClick: function onClick() {
|
|
808
|
+
return _this7.selectUnreadFilter(false);
|
|
809
|
+
},
|
|
810
|
+
"aria-label": "Turn off unread filter"
|
|
811
|
+
}, "Turn off filter"))));
|
|
812
|
+
}
|
|
676
813
|
}, {
|
|
677
814
|
key: "renderFilters",
|
|
678
815
|
value: function renderFilters() {
|
|
816
|
+
var _this8 = this;
|
|
817
|
+
|
|
679
818
|
var userFilter = /*#__PURE__*/React__default['default'].createElement(Components$4.Tag, {
|
|
680
819
|
className: "marginRight-10",
|
|
681
820
|
onClick: this.openUserFilter,
|
|
682
821
|
text: "User"
|
|
683
822
|
});
|
|
823
|
+
var unreadFilter = /*#__PURE__*/React__default['default'].createElement(Components$4.Tag, {
|
|
824
|
+
className: "marginRight-10",
|
|
825
|
+
onClick: function onClick() {
|
|
826
|
+
return _this8.selectUnreadFilter(!_this8.state.showUnreadOnly);
|
|
827
|
+
},
|
|
828
|
+
leftIcon: this.state.showUnreadOnly ? "check" : null,
|
|
829
|
+
text: "Unread Only"
|
|
830
|
+
});
|
|
684
831
|
var typeFilter = /*#__PURE__*/React__default['default'].createElement(Components$4.Tag, {
|
|
685
832
|
className: "marginRight-10",
|
|
686
833
|
onClick: this.openTypeFilter,
|
|
@@ -715,12 +862,28 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
715
862
|
}, /*#__PURE__*/React__default['default'].createElement(Components$4.Text, {
|
|
716
863
|
type: "h5",
|
|
717
864
|
className: "marginRight-20"
|
|
718
|
-
}, "Filter by"), userFilter, typeFilter
|
|
865
|
+
}, "Filter by"), userFilter, typeFilter, unreadFilter, /*#__PURE__*/React__default['default'].createElement(Components$4.Text, {
|
|
866
|
+
type: "h5",
|
|
867
|
+
className: "marginRight-20 marginLeft-20"
|
|
868
|
+
}, "Sort by:"), /*#__PURE__*/React__default['default'].createElement(Components$4.Tag, {
|
|
869
|
+
className: "marginRight-10",
|
|
870
|
+
onClick: function onClick() {
|
|
871
|
+
return _this8.selectSort("newest");
|
|
872
|
+
},
|
|
873
|
+
leftIcon: this.state.sortBy === "newest" ? "check" : null,
|
|
874
|
+
text: "Newest first"
|
|
875
|
+
}), /*#__PURE__*/React__default['default'].createElement(Components$4.Tag, {
|
|
876
|
+
onClick: function onClick() {
|
|
877
|
+
return _this8.selectSort("oldest");
|
|
878
|
+
},
|
|
879
|
+
leftIcon: this.state.sortBy === "oldest" ? "check" : null,
|
|
880
|
+
text: "Oldest first"
|
|
881
|
+
}));
|
|
719
882
|
}
|
|
720
883
|
}, {
|
|
721
884
|
key: "renderUserFilterPopup",
|
|
722
885
|
value: function renderUserFilterPopup() {
|
|
723
|
-
var
|
|
886
|
+
var _this9 = this;
|
|
724
887
|
|
|
725
888
|
if (!this.state.userFilterOpen) {
|
|
726
889
|
return null;
|
|
@@ -740,7 +903,7 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
740
903
|
placeholder: "Enter name",
|
|
741
904
|
value: this.state.userSearch,
|
|
742
905
|
onChange: function onChange(e) {
|
|
743
|
-
return
|
|
906
|
+
return _this9.onHandleChange(e);
|
|
744
907
|
},
|
|
745
908
|
alwaysShowLabel: true
|
|
746
909
|
}), this.getUsers().map(function (user) {
|
|
@@ -748,7 +911,7 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
748
911
|
key: user.userId,
|
|
749
912
|
user: user,
|
|
750
913
|
onClick: function onClick() {
|
|
751
|
-
|
|
914
|
+
_this9.selectUserFilter(user);
|
|
752
915
|
}
|
|
753
916
|
});
|
|
754
917
|
}));
|
|
@@ -756,7 +919,7 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
756
919
|
}, {
|
|
757
920
|
key: "renderTypeFilterPopup",
|
|
758
921
|
value: function renderTypeFilterPopup() {
|
|
759
|
-
var
|
|
922
|
+
var _this10 = this;
|
|
760
923
|
|
|
761
924
|
if (!this.state.typeFilterOpen) {
|
|
762
925
|
return null;
|
|
@@ -770,13 +933,13 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
770
933
|
onClose: this.closeTypeFilter
|
|
771
934
|
}, /*#__PURE__*/React__default['default'].createElement(Components$4.Tag, {
|
|
772
935
|
onClick: function onClick() {
|
|
773
|
-
|
|
936
|
+
_this10.selectTypeFilter("circle");
|
|
774
937
|
},
|
|
775
938
|
text: ___default['default'].capitalize(values.entityName),
|
|
776
939
|
className: "marginRight-10"
|
|
777
940
|
}), /*#__PURE__*/React__default['default'].createElement(Components$4.Tag, {
|
|
778
941
|
onClick: function onClick() {
|
|
779
|
-
|
|
942
|
+
_this10.selectTypeFilter("private");
|
|
780
943
|
},
|
|
781
944
|
text: "Private Message"
|
|
782
945
|
}));
|
|
@@ -784,7 +947,7 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
784
947
|
}, {
|
|
785
948
|
key: "render",
|
|
786
949
|
value: function render() {
|
|
787
|
-
var
|
|
950
|
+
var _this11 = this;
|
|
788
951
|
|
|
789
952
|
return /*#__PURE__*/React__default['default'].createElement("div", null, this.renderTypeFilterPopup(), this.renderUserFilterPopup(), /*#__PURE__*/React__default['default'].createElement(Components$4.Header, null, this.canAddNew() && /*#__PURE__*/React__default['default'].createElement(Components$4.AddButton, {
|
|
790
953
|
onClick: this.onAddNew,
|
|
@@ -794,21 +957,21 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
794
957
|
}, /*#__PURE__*/React__default['default'].createElement(Components$4.Text, {
|
|
795
958
|
type: "h1",
|
|
796
959
|
className: ""
|
|
797
|
-
}, values.textFeatureTitle), this.renderFilters(), /*#__PURE__*/React__default['default'].createElement(reactBootstrap.Table, {
|
|
960
|
+
}, values.textFeatureTitle), this.renderFilters(), this.renderUnreadFilterInfo(), /*#__PURE__*/React__default['default'].createElement(reactBootstrap.Table, {
|
|
798
961
|
className: "plussTable",
|
|
799
962
|
striped: true,
|
|
800
963
|
bordered: true,
|
|
801
964
|
condensed: true,
|
|
802
965
|
hover: true,
|
|
803
966
|
style: {
|
|
804
|
-
minWidth:
|
|
967
|
+
minWidth: "100%"
|
|
805
968
|
}
|
|
806
969
|
}, /*#__PURE__*/React__default['default'].createElement("thead", null, /*#__PURE__*/React__default['default'].createElement("tr", null, /*#__PURE__*/React__default['default'].createElement("th", null, "Title"), /*#__PURE__*/React__default['default'].createElement("th", null, "Last updated"), /*#__PURE__*/React__default['default'].createElement("th", null, "Members"), /*#__PURE__*/React__default['default'].createElement("th", {
|
|
807
970
|
style: {
|
|
808
971
|
width: 50
|
|
809
972
|
}
|
|
810
973
|
}))), /*#__PURE__*/React__default['default'].createElement("tbody", null, this.getCircles().map(function (circle) {
|
|
811
|
-
return
|
|
974
|
+
return _this11.renderRow(circle);
|
|
812
975
|
})))));
|
|
813
976
|
}
|
|
814
977
|
}]);
|
|
@@ -870,7 +1033,7 @@ var AddCircle = /*#__PURE__*/function (_Component) {
|
|
|
870
1033
|
if (res.data != null && !___default['default'].isEmpty(res.data.results.Items)) {
|
|
871
1034
|
_this.setState({
|
|
872
1035
|
users: ___default['default'].sortBy(res.data.results.Items, function (u) {
|
|
873
|
-
return (u.displayName ||
|
|
1036
|
+
return (u.displayName || "").toLowerCase();
|
|
874
1037
|
}).map(function (u) {
|
|
875
1038
|
return _objectSpread$4(_objectSpread$4({}, u), {}, {
|
|
876
1039
|
userId: u.userId || u.Id
|
|
@@ -894,7 +1057,7 @@ var AddCircle = /*#__PURE__*/function (_Component) {
|
|
|
894
1057
|
}
|
|
895
1058
|
|
|
896
1059
|
if (!___default['default'].isEmpty(_this.state.userSearch)) {
|
|
897
|
-
return (u.displayName ||
|
|
1060
|
+
return (u.displayName || "").toLowerCase().indexOf(_this.state.userSearch.toLowerCase()) > -1;
|
|
898
1061
|
}
|
|
899
1062
|
|
|
900
1063
|
return true;
|
|
@@ -948,7 +1111,7 @@ var AddCircle = /*#__PURE__*/function (_Component) {
|
|
|
948
1111
|
|
|
949
1112
|
case 3:
|
|
950
1113
|
res = _context.sent;
|
|
951
|
-
console.log(
|
|
1114
|
+
console.log("getData", res.data);
|
|
952
1115
|
circle = ___default['default'].find(res.data, function (c) {
|
|
953
1116
|
return c.Id === _this.state.circleId;
|
|
954
1117
|
});
|
|
@@ -968,7 +1131,7 @@ var AddCircle = /*#__PURE__*/function (_Component) {
|
|
|
968
1131
|
case 11:
|
|
969
1132
|
_context.prev = 11;
|
|
970
1133
|
_context.t0 = _context["catch"](0);
|
|
971
|
-
console.error(
|
|
1134
|
+
console.error("getData", _context.t0);
|
|
972
1135
|
|
|
973
1136
|
_this.setState({
|
|
974
1137
|
loadingAll: false
|
|
@@ -985,7 +1148,7 @@ var AddCircle = /*#__PURE__*/function (_Component) {
|
|
|
985
1148
|
|
|
986
1149
|
_defineProperty__default['default'](_assertThisInitialized__default['default'](_this), "onHandleChange", function (event) {
|
|
987
1150
|
var stateChange = {};
|
|
988
|
-
stateChange[event.target.getAttribute(
|
|
1151
|
+
stateChange[event.target.getAttribute("id")] = event.target.value;
|
|
989
1152
|
|
|
990
1153
|
_this.setState(stateChange);
|
|
991
1154
|
});
|
|
@@ -1008,7 +1171,7 @@ var AddCircle = /*#__PURE__*/function (_Component) {
|
|
|
1008
1171
|
};
|
|
1009
1172
|
|
|
1010
1173
|
if (___default['default'].isEmpty(_this.state.title) && ___default['default'].includes(newState.selectedUsers, user)) {
|
|
1011
|
-
newState.title = "".concat(user.displayName.split(
|
|
1174
|
+
newState.title = "".concat(user.displayName.split(" ")[0], "'s Circle");
|
|
1012
1175
|
}
|
|
1013
1176
|
|
|
1014
1177
|
_this.setState(newState);
|
|
@@ -1049,17 +1212,17 @@ var AddCircle = /*#__PURE__*/function (_Component) {
|
|
|
1049
1212
|
updating: false
|
|
1050
1213
|
});
|
|
1051
1214
|
|
|
1052
|
-
console.log(
|
|
1215
|
+
console.log("success");
|
|
1053
1216
|
|
|
1054
1217
|
_this.props.circleUpdated(res.data);
|
|
1055
1218
|
}).catch(function (err) {
|
|
1056
|
-
console.log(
|
|
1219
|
+
console.log("error");
|
|
1057
1220
|
|
|
1058
1221
|
_this.setState({
|
|
1059
1222
|
updating: false
|
|
1060
1223
|
});
|
|
1061
1224
|
|
|
1062
|
-
alert(
|
|
1225
|
+
alert("Something went wrong with the request. Please try again.");
|
|
1063
1226
|
});
|
|
1064
1227
|
} else {
|
|
1065
1228
|
circleActions.add(_this.props.auth.site, _this.state.title, _this.state.image, audience, _this.state.isPublic).then(function (res) {
|
|
@@ -1068,17 +1231,17 @@ var AddCircle = /*#__PURE__*/function (_Component) {
|
|
|
1068
1231
|
updating: false
|
|
1069
1232
|
});
|
|
1070
1233
|
|
|
1071
|
-
console.log(
|
|
1234
|
+
console.log("success");
|
|
1072
1235
|
|
|
1073
1236
|
_this.props.circleUpdated(res.data);
|
|
1074
1237
|
}).catch(function (err) {
|
|
1075
|
-
console.log(
|
|
1238
|
+
console.log("error");
|
|
1076
1239
|
|
|
1077
1240
|
_this.setState({
|
|
1078
1241
|
updating: false
|
|
1079
1242
|
});
|
|
1080
1243
|
|
|
1081
|
-
alert(
|
|
1244
|
+
alert("Something went wrong with the request. Please try again.");
|
|
1082
1245
|
});
|
|
1083
1246
|
}
|
|
1084
1247
|
});
|
|
@@ -1099,20 +1262,20 @@ var AddCircle = /*#__PURE__*/function (_Component) {
|
|
|
1099
1262
|
});
|
|
1100
1263
|
});
|
|
1101
1264
|
|
|
1102
|
-
var circleId = Helper$1.safeReadParams(props,
|
|
1265
|
+
var circleId = Helper$1.safeReadParams(props, "circleId");
|
|
1103
1266
|
_this.state = {
|
|
1104
1267
|
circleId: circleId,
|
|
1105
1268
|
circle: ___default['default'].find(props.circles, function (c) {
|
|
1106
1269
|
return c.Id === circleId;
|
|
1107
1270
|
}),
|
|
1108
|
-
title:
|
|
1271
|
+
title: "",
|
|
1109
1272
|
showWarnings: false,
|
|
1110
1273
|
success: false,
|
|
1111
1274
|
users: [],
|
|
1112
1275
|
selectedUsers: [],
|
|
1113
|
-
userSearch:
|
|
1276
|
+
userSearch: "",
|
|
1114
1277
|
isPublic: false,
|
|
1115
|
-
selectedOption:
|
|
1278
|
+
selectedOption: "visibility"
|
|
1116
1279
|
};
|
|
1117
1280
|
return _this;
|
|
1118
1281
|
}
|
|
@@ -1134,7 +1297,7 @@ var AddCircle = /*#__PURE__*/function (_Component) {
|
|
|
1134
1297
|
this.setState({
|
|
1135
1298
|
image: url
|
|
1136
1299
|
});
|
|
1137
|
-
this.imageInput.
|
|
1300
|
+
this.imageInput.setValue(url);
|
|
1138
1301
|
} else {
|
|
1139
1302
|
setTimeout(function () {
|
|
1140
1303
|
_this2.checkSetImage(url);
|
|
@@ -1167,9 +1330,9 @@ var AddCircle = /*#__PURE__*/function (_Component) {
|
|
|
1167
1330
|
value: function renderSuccess() {
|
|
1168
1331
|
if (!this.state.success) return null;
|
|
1169
1332
|
return /*#__PURE__*/React__default['default'].createElement(Components$3.SuccessPopup, {
|
|
1170
|
-
text: "".concat(___default['default'].capitalize(values.entityName), " has been ").concat(this.state.circleId == null ?
|
|
1333
|
+
text: "".concat(___default['default'].capitalize(values.entityName), " has been ").concat(this.state.circleId == null ? "added" : "edited"),
|
|
1171
1334
|
buttons: [{
|
|
1172
|
-
type:
|
|
1335
|
+
type: "outlined",
|
|
1173
1336
|
onClick: function onClick() {
|
|
1174
1337
|
window.history.back();
|
|
1175
1338
|
},
|
|
@@ -1216,7 +1379,7 @@ var AddCircle = /*#__PURE__*/function (_Component) {
|
|
|
1216
1379
|
label: "Do you want to make this ".concat(values.entityName, " a public ").concat(values.entityName, "?"),
|
|
1217
1380
|
isActive: this.state.isPublic,
|
|
1218
1381
|
options: [{
|
|
1219
|
-
Label:
|
|
1382
|
+
Label: "Yes",
|
|
1220
1383
|
Value: true,
|
|
1221
1384
|
onChange: function onChange() {
|
|
1222
1385
|
return _this5.setState({
|
|
@@ -1224,7 +1387,7 @@ var AddCircle = /*#__PURE__*/function (_Component) {
|
|
|
1224
1387
|
});
|
|
1225
1388
|
}
|
|
1226
1389
|
}, {
|
|
1227
|
-
Label:
|
|
1390
|
+
Label: "No",
|
|
1228
1391
|
Value: false,
|
|
1229
1392
|
onChange: function onChange() {
|
|
1230
1393
|
return _this5.setState({
|
|
@@ -1244,7 +1407,7 @@ var AddCircle = /*#__PURE__*/function (_Component) {
|
|
|
1244
1407
|
value: function renderSelectedOption() {
|
|
1245
1408
|
return /*#__PURE__*/React__default['default'].createElement("div", null, /*#__PURE__*/React__default['default'].createElement("div", {
|
|
1246
1409
|
style: {
|
|
1247
|
-
display: this.state.selectedOption ===
|
|
1410
|
+
display: this.state.selectedOption === "visibility" ? "block" : "none"
|
|
1248
1411
|
}
|
|
1249
1412
|
}, this.renderVisibility()));
|
|
1250
1413
|
}
|
|
@@ -1252,14 +1415,14 @@ var AddCircle = /*#__PURE__*/function (_Component) {
|
|
|
1252
1415
|
key: "renderOptionsSection",
|
|
1253
1416
|
value: function renderOptionsSection() {
|
|
1254
1417
|
var options = [{
|
|
1255
|
-
key:
|
|
1256
|
-
icon:
|
|
1257
|
-
text:
|
|
1418
|
+
key: "visibility",
|
|
1419
|
+
icon: "people3",
|
|
1420
|
+
text: "Visibility"
|
|
1258
1421
|
}];
|
|
1259
1422
|
|
|
1260
1423
|
if (!this.props.circleAllowPublicCircles) {
|
|
1261
1424
|
options = ___default['default'].filter(options, function (o) {
|
|
1262
|
-
return o.key !==
|
|
1425
|
+
return o.key !== "visibility";
|
|
1263
1426
|
});
|
|
1264
1427
|
}
|
|
1265
1428
|
|
|
@@ -1283,7 +1446,7 @@ var AddCircle = /*#__PURE__*/function (_Component) {
|
|
|
1283
1446
|
}, /*#__PURE__*/React__default['default'].createElement(Components$3.Text, {
|
|
1284
1447
|
type: "formTitleLarge",
|
|
1285
1448
|
className: "marginBottom-24"
|
|
1286
|
-
}, this.state.circleId == null ?
|
|
1449
|
+
}, this.state.circleId == null ? "New" : "Edit", " ", ___default['default'].capitalize(values.entityName)), /*#__PURE__*/React__default['default'].createElement("div", {
|
|
1287
1450
|
className: "flex flex-reverse"
|
|
1288
1451
|
}, /*#__PURE__*/React__default['default'].createElement(Components$3.ImageInput, {
|
|
1289
1452
|
ref: function ref(_ref2) {
|
|
@@ -1467,7 +1630,7 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
1467
1630
|
|
|
1468
1631
|
case 3:
|
|
1469
1632
|
res = _context.sent;
|
|
1470
|
-
console.log(
|
|
1633
|
+
console.log("getData", res.data);
|
|
1471
1634
|
circle = ___default['default'].find(res.data, function (c) {
|
|
1472
1635
|
return c.Id === _this.state.circleId;
|
|
1473
1636
|
});
|
|
@@ -1485,7 +1648,7 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
1485
1648
|
case 10:
|
|
1486
1649
|
_context.prev = 10;
|
|
1487
1650
|
_context.t0 = _context["catch"](0);
|
|
1488
|
-
console.error(
|
|
1651
|
+
console.error("getData", _context.t0);
|
|
1489
1652
|
|
|
1490
1653
|
_this.setState({
|
|
1491
1654
|
loadingAll: false
|
|
@@ -1517,8 +1680,8 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
1517
1680
|
while (1) {
|
|
1518
1681
|
switch (_context2.prev = _context2.next) {
|
|
1519
1682
|
case 0:
|
|
1520
|
-
startOf = moment__default['default'](date,
|
|
1521
|
-
endOf = moment__default['default'](date,
|
|
1683
|
+
startOf = moment__default['default'](date, "YYYY-MM-DD").startOf("d");
|
|
1684
|
+
endOf = moment__default['default'](date, "YYYY-MM-DD").endOf("d");
|
|
1522
1685
|
_context2.next = 4;
|
|
1523
1686
|
return circleActions.getMessages(_this.state.circleId, 10000, startOf.valueOf(), endOf.valueOf());
|
|
1524
1687
|
|
|
@@ -1572,13 +1735,13 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
1572
1735
|
var circle = _this.state.circle;
|
|
1573
1736
|
|
|
1574
1737
|
if (!circle) {
|
|
1575
|
-
return
|
|
1738
|
+
return "";
|
|
1576
1739
|
}
|
|
1577
1740
|
|
|
1578
1741
|
if (circle.IsPrivate) {
|
|
1579
1742
|
return "PM: ".concat(circle.Audience.map(function (user) {
|
|
1580
1743
|
return user.displayName;
|
|
1581
|
-
}).join(
|
|
1744
|
+
}).join(", "));
|
|
1582
1745
|
}
|
|
1583
1746
|
|
|
1584
1747
|
return circle.Title;
|
|
@@ -1586,13 +1749,13 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
1586
1749
|
|
|
1587
1750
|
_defineProperty__default['default'](_assertThisInitialized__default['default'](_this), "onHandleChange", function (event) {
|
|
1588
1751
|
var stateChange = {};
|
|
1589
|
-
stateChange[event.target.getAttribute(
|
|
1752
|
+
stateChange[event.target.getAttribute("id")] = event.target.value;
|
|
1590
1753
|
|
|
1591
1754
|
_this.setState(stateChange);
|
|
1592
1755
|
});
|
|
1593
1756
|
|
|
1594
1757
|
_defineProperty__default['default'](_assertThisInitialized__default['default'](_this), "onImageUpdated", function (image) {
|
|
1595
|
-
console.log(
|
|
1758
|
+
console.log("updated image");
|
|
1596
1759
|
console.log(image);
|
|
1597
1760
|
|
|
1598
1761
|
_this.setState({
|
|
@@ -1608,7 +1771,7 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
1608
1771
|
});
|
|
1609
1772
|
|
|
1610
1773
|
_defineProperty__default['default'](_assertThisInitialized__default['default'](_this), "onFileUpdated", function (url) {
|
|
1611
|
-
console.log(
|
|
1774
|
+
console.log("updated url");
|
|
1612
1775
|
console.log(url);
|
|
1613
1776
|
|
|
1614
1777
|
_this.setState({
|
|
@@ -1629,7 +1792,7 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
1629
1792
|
});
|
|
1630
1793
|
|
|
1631
1794
|
if (m) {
|
|
1632
|
-
var input = document.getElementById(
|
|
1795
|
+
var input = document.getElementById("messageInput");
|
|
1633
1796
|
if (input) input.focus();
|
|
1634
1797
|
}
|
|
1635
1798
|
});
|
|
@@ -1637,7 +1800,7 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
1637
1800
|
_defineProperty__default['default'](_assertThisInitialized__default['default'](_this), "handleMessageDateChange", function (date) {
|
|
1638
1801
|
_this.setState({
|
|
1639
1802
|
messageDate: date,
|
|
1640
|
-
messageDateText: moment__default['default'](date,
|
|
1803
|
+
messageDateText: moment__default['default'](date, "YYYY-MM-DD").format("DD/MM/YYYY"),
|
|
1641
1804
|
showMessageDate: false,
|
|
1642
1805
|
messages: []
|
|
1643
1806
|
});
|
|
@@ -1675,7 +1838,7 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
1675
1838
|
});
|
|
1676
1839
|
|
|
1677
1840
|
_defineProperty__default['default'](_assertThisInitialized__default['default'](_this), "onKeyDown", function (event) {
|
|
1678
|
-
if (event.key ===
|
|
1841
|
+
if (event.key === "Enter" && !event.shiftKey) {
|
|
1679
1842
|
event.preventDefault();
|
|
1680
1843
|
|
|
1681
1844
|
_this.sendMessage();
|
|
@@ -1710,7 +1873,7 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
1710
1873
|
if (m._id === messageToDelete._id) {
|
|
1711
1874
|
return _objectSpread$3(_objectSpread$3({}, m), {}, {
|
|
1712
1875
|
deleted: true,
|
|
1713
|
-
text:
|
|
1876
|
+
text: " "
|
|
1714
1877
|
});
|
|
1715
1878
|
}
|
|
1716
1879
|
|
|
@@ -1740,7 +1903,7 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
1740
1903
|
case 11:
|
|
1741
1904
|
_context4.prev = 11;
|
|
1742
1905
|
_context4.t0 = _context4["catch"](5);
|
|
1743
|
-
console.error(
|
|
1906
|
+
console.error("Failed to delete message:", _context4.t0); // Revert the optimistic update on failure
|
|
1744
1907
|
|
|
1745
1908
|
revertedMessages = _this.state.messages.map(function (m) {
|
|
1746
1909
|
if (m._id === messageToDelete._id) {
|
|
@@ -1755,7 +1918,7 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
1755
1918
|
deletingMessageId: null
|
|
1756
1919
|
});
|
|
1757
1920
|
|
|
1758
|
-
alert(
|
|
1921
|
+
alert("Failed to delete message. Please try again.");
|
|
1759
1922
|
|
|
1760
1923
|
case 17:
|
|
1761
1924
|
case "end":
|
|
@@ -1772,6 +1935,32 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
1772
1935
|
});
|
|
1773
1936
|
});
|
|
1774
1937
|
|
|
1938
|
+
_defineProperty__default['default'](_assertThisInitialized__default['default'](_this), "markCircleAsRead", /*#__PURE__*/_asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee5() {
|
|
1939
|
+
return _regeneratorRuntime__default['default'].wrap(function _callee5$(_context5) {
|
|
1940
|
+
while (1) {
|
|
1941
|
+
switch (_context5.prev = _context5.next) {
|
|
1942
|
+
case 0:
|
|
1943
|
+
_context5.prev = 0;
|
|
1944
|
+
_context5.next = 3;
|
|
1945
|
+
return circleActions.markAsRead(_this.state.circleId, _this.props.user.Id);
|
|
1946
|
+
|
|
1947
|
+
case 3:
|
|
1948
|
+
_context5.next = 8;
|
|
1949
|
+
break;
|
|
1950
|
+
|
|
1951
|
+
case 5:
|
|
1952
|
+
_context5.prev = 5;
|
|
1953
|
+
_context5.t0 = _context5["catch"](0);
|
|
1954
|
+
console.error("Failed to mark circle as read:", _context5.t0);
|
|
1955
|
+
|
|
1956
|
+
case 8:
|
|
1957
|
+
case "end":
|
|
1958
|
+
return _context5.stop();
|
|
1959
|
+
}
|
|
1960
|
+
}
|
|
1961
|
+
}, _callee5, null, [[0, 5]]);
|
|
1962
|
+
})));
|
|
1963
|
+
|
|
1775
1964
|
_defineProperty__default['default'](_assertThisInitialized__default['default'](_this), "sendMessage", function () {
|
|
1776
1965
|
var message = {
|
|
1777
1966
|
_id: Helper.randomString(),
|
|
@@ -1813,7 +2002,7 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
1813
2002
|
|
|
1814
2003
|
_this.setState({
|
|
1815
2004
|
messages: [].concat(_toConsumableArray__default['default'](_this.state.messages), [clonedMessage]),
|
|
1816
|
-
messageInput:
|
|
2005
|
+
messageInput: "",
|
|
1817
2006
|
imageInput: null,
|
|
1818
2007
|
imageInputShowing: false,
|
|
1819
2008
|
fileInput: null,
|
|
@@ -1825,18 +2014,18 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
1825
2014
|
|
|
1826
2015
|
_this.scrollToBottom();
|
|
1827
2016
|
|
|
1828
|
-
_this.imageInput && _this.imageInput.
|
|
1829
|
-
_this.fileInput && _this.fileInput.
|
|
2017
|
+
_this.imageInput && _this.imageInput.setValue(null);
|
|
2018
|
+
_this.fileInput && _this.fileInput.setValue(null);
|
|
1830
2019
|
}, 100);
|
|
1831
2020
|
});
|
|
1832
2021
|
|
|
1833
|
-
var circleId = Helper.safeReadParams(props,
|
|
2022
|
+
var circleId = Helper.safeReadParams(props, "circleId");
|
|
1834
2023
|
_this.state = {
|
|
1835
2024
|
circleId: circleId,
|
|
1836
2025
|
circle: ___default['default'].find(props.circles, function (c) {
|
|
1837
2026
|
return c.Id === circleId;
|
|
1838
2027
|
}),
|
|
1839
|
-
messageInput:
|
|
2028
|
+
messageInput: "",
|
|
1840
2029
|
messages: [],
|
|
1841
2030
|
images: [],
|
|
1842
2031
|
files: [],
|
|
@@ -1856,6 +2045,7 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
1856
2045
|
_createClass__default['default'](Circle, [{
|
|
1857
2046
|
key: "componentDidMount",
|
|
1858
2047
|
value: function componentDidMount() {
|
|
2048
|
+
this.markCircleAsRead();
|
|
1859
2049
|
this.checkGetData();
|
|
1860
2050
|
this.connect();
|
|
1861
2051
|
this.props.setNavData({
|
|
@@ -1885,7 +2075,7 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
1885
2075
|
value: function mergeMessages(receivedMessages, excludePending) {
|
|
1886
2076
|
var _this2 = this;
|
|
1887
2077
|
|
|
1888
|
-
var newMessages = ___default['default'].sortBy(___default['default'].concat(this.state.messages, receivedMessages),
|
|
2078
|
+
var newMessages = ___default['default'].sortBy(___default['default'].concat(this.state.messages, receivedMessages), "createdAt");
|
|
1889
2079
|
|
|
1890
2080
|
this.setState({
|
|
1891
2081
|
messages: ___default['default'].filter(___default['default'].uniqBy(newMessages, function (m) {
|
|
@@ -1979,21 +2169,21 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
1979
2169
|
},
|
|
1980
2170
|
onKeyDown: this.onKeyDown
|
|
1981
2171
|
}), /*#__PURE__*/React__default['default'].createElement("div", null, /*#__PURE__*/React__default['default'].createElement(FontAwesome__default['default'], {
|
|
1982
|
-
className: "chat_imageIcon".concat(this.state.imageInputShowing ?
|
|
2172
|
+
className: "chat_imageIcon".concat(this.state.imageInputShowing ? " chat_imageIcon-selected" : ""),
|
|
1983
2173
|
name: "camera",
|
|
1984
2174
|
onClick: this.showImageInput
|
|
1985
2175
|
}), /*#__PURE__*/React__default['default'].createElement(FontAwesome__default['default'], {
|
|
1986
|
-
className: "chat_imageIcon".concat(this.state.fileInputShowing ?
|
|
2176
|
+
className: "chat_imageIcon".concat(this.state.fileInputShowing ? " chat_imageIcon-selected" : ""),
|
|
1987
2177
|
name: "paperclip",
|
|
1988
2178
|
onClick: this.showFileInput
|
|
1989
2179
|
})), /*#__PURE__*/React__default['default'].createElement("div", {
|
|
1990
2180
|
className: "overflow-x",
|
|
1991
2181
|
style: {
|
|
1992
|
-
display: this.state.imageInputShowing ?
|
|
2182
|
+
display: this.state.imageInputShowing ? "block" : "none"
|
|
1993
2183
|
}
|
|
1994
2184
|
}, /*#__PURE__*/React__default['default'].createElement(Components$2.ImageInput, {
|
|
1995
|
-
ref: function ref(
|
|
1996
|
-
_this5.imageInput =
|
|
2185
|
+
ref: function ref(_ref6) {
|
|
2186
|
+
_this5.imageInput = _ref6;
|
|
1997
2187
|
},
|
|
1998
2188
|
multiple: true,
|
|
1999
2189
|
limit: 10,
|
|
@@ -2004,11 +2194,11 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
2004
2194
|
})), /*#__PURE__*/React__default['default'].createElement("div", {
|
|
2005
2195
|
className: "overflow-x",
|
|
2006
2196
|
style: {
|
|
2007
|
-
display: this.state.fileInputShowing ?
|
|
2197
|
+
display: this.state.fileInputShowing ? "block" : "none"
|
|
2008
2198
|
}
|
|
2009
2199
|
}, /*#__PURE__*/React__default['default'].createElement(Components$2.FileInput, {
|
|
2010
|
-
ref: function ref(
|
|
2011
|
-
_this5.fileInput =
|
|
2200
|
+
ref: function ref(_ref7) {
|
|
2201
|
+
_this5.fileInput = _ref7;
|
|
2012
2202
|
},
|
|
2013
2203
|
multiple: true,
|
|
2014
2204
|
limit: 10,
|
|
@@ -2038,11 +2228,11 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
2038
2228
|
var isDeleting = this.state.deletingMessageId === m._id;
|
|
2039
2229
|
return /*#__PURE__*/React__default['default'].createElement("div", {
|
|
2040
2230
|
key: m._id,
|
|
2041
|
-
className: "message".concat(isSelf ?
|
|
2231
|
+
className: "message".concat(isSelf ? " message-self" : "").concat(m.uploading ? " message-uploading" : "").concat(isDeleting ? " message-deleting" : "")
|
|
2042
2232
|
}, /*#__PURE__*/React__default['default'].createElement(Components$2.Text, {
|
|
2043
2233
|
type: "h5-noUpper",
|
|
2044
2234
|
className: "message_time"
|
|
2045
|
-
}, moment__default['default'].utc(m.createdAt).local().format(
|
|
2235
|
+
}, moment__default['default'].utc(m.createdAt).local().format("D MMM YYYY • h:mma")), /*#__PURE__*/React__default['default'].createElement("div", {
|
|
2046
2236
|
className: "message_inner"
|
|
2047
2237
|
}, /*#__PURE__*/React__default['default'].createElement(Components$2.ProfilePic, {
|
|
2048
2238
|
size: 40,
|
|
@@ -2053,17 +2243,17 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
2053
2243
|
}, /*#__PURE__*/React__default['default'].createElement(Components$2.Text, {
|
|
2054
2244
|
type: "body",
|
|
2055
2245
|
className: "message_name"
|
|
2056
|
-
}, m.user.name, m.replyingTo && !isDeleted ? " replied to ".concat(m.replyingTo.user.name) :
|
|
2246
|
+
}, m.user.name, m.replyingTo && !isDeleted ? " replied to ".concat(m.replyingTo.user.name) : ""), m.replyingTo && !isDeleted && /*#__PURE__*/React__default['default'].createElement("div", {
|
|
2057
2247
|
className: "message_replyBubble"
|
|
2058
2248
|
}, /*#__PURE__*/React__default['default'].createElement(Components$2.Text, {
|
|
2059
2249
|
type: "body",
|
|
2060
2250
|
className: "message_text"
|
|
2061
|
-
}, Helper.toParagraphed((m.replyingTo.text ||
|
|
2251
|
+
}, Helper.toParagraphed((m.replyingTo.text || "").substr(0, 100)))), /*#__PURE__*/React__default['default'].createElement("div", {
|
|
2062
2252
|
className: "message_bubble"
|
|
2063
2253
|
}, /*#__PURE__*/React__default['default'].createElement(Components$2.Text, {
|
|
2064
2254
|
type: "body",
|
|
2065
2255
|
className: "message_text"
|
|
2066
|
-
}, isDeleted ?
|
|
2256
|
+
}, isDeleted ? "[Message deleted]" : Helper.toParagraphed(m.text)), !isDeleted && /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement("div", null, (m.image || []).map(function (url, i) {
|
|
2067
2257
|
return /*#__PURE__*/React__default['default'].createElement("a", {
|
|
2068
2258
|
href: url,
|
|
2069
2259
|
target: "_blank",
|
|
@@ -2082,8 +2272,8 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
2082
2272
|
})))), !isDeleted && /*#__PURE__*/React__default['default'].createElement("div", {
|
|
2083
2273
|
className: "message_reply",
|
|
2084
2274
|
style: {
|
|
2085
|
-
display:
|
|
2086
|
-
gap:
|
|
2275
|
+
display: "flex",
|
|
2276
|
+
gap: "16px"
|
|
2087
2277
|
}
|
|
2088
2278
|
}, /*#__PURE__*/React__default['default'].createElement(Components$2.Text, {
|
|
2089
2279
|
type: "button",
|
|
@@ -2120,7 +2310,7 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
2120
2310
|
value: function renderEmptyDate() {
|
|
2121
2311
|
return this.renderMessage({
|
|
2122
2312
|
system: true,
|
|
2123
|
-
text:
|
|
2313
|
+
text: "No messages on this date"
|
|
2124
2314
|
});
|
|
2125
2315
|
}
|
|
2126
2316
|
}, {
|
|
@@ -2135,7 +2325,7 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
2135
2325
|
className: "chat_section_titleSection"
|
|
2136
2326
|
}, /*#__PURE__*/React__default['default'].createElement(FontAwesome__default['default'], {
|
|
2137
2327
|
className: "chat_section_titleSection_caret",
|
|
2138
|
-
name: "chevron-".concat(this.state.membersExpanded ?
|
|
2328
|
+
name: "chevron-".concat(this.state.membersExpanded ? "up" : "down"),
|
|
2139
2329
|
onClick: this.toggleMembers
|
|
2140
2330
|
}), /*#__PURE__*/React__default['default'].createElement("div", {
|
|
2141
2331
|
className: "flex-1"
|
|
@@ -2153,7 +2343,7 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
2153
2343
|
className: "chat_section_titleSection"
|
|
2154
2344
|
}, /*#__PURE__*/React__default['default'].createElement(FontAwesome__default['default'], {
|
|
2155
2345
|
className: "chat_section_titleSection_caret",
|
|
2156
|
-
name: "chevron-".concat(this.state.imagesExpanded ?
|
|
2346
|
+
name: "chevron-".concat(this.state.imagesExpanded ? "up" : "down"),
|
|
2157
2347
|
onClick: this.toggleImages
|
|
2158
2348
|
}), /*#__PURE__*/React__default['default'].createElement("div", {
|
|
2159
2349
|
className: "flex-1"
|
|
@@ -2176,7 +2366,7 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
2176
2366
|
className: "chat_section_titleSection"
|
|
2177
2367
|
}, /*#__PURE__*/React__default['default'].createElement(FontAwesome__default['default'], {
|
|
2178
2368
|
className: "chat_section_titleSection_caret",
|
|
2179
|
-
name: "chevron-".concat(this.state.filesExpanded ?
|
|
2369
|
+
name: "chevron-".concat(this.state.filesExpanded ? "up" : "down"),
|
|
2180
2370
|
onClick: this.toggleFiles
|
|
2181
2371
|
}), /*#__PURE__*/React__default['default'].createElement("div", {
|
|
2182
2372
|
className: "flex-1"
|
|
@@ -2207,7 +2397,7 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
2207
2397
|
className: "chat_replyTo_container"
|
|
2208
2398
|
}, /*#__PURE__*/React__default['default'].createElement(Components$2.Text, {
|
|
2209
2399
|
type: "h5"
|
|
2210
|
-
}, "Replying to ", m && m.user && !___default['default'].isEmpty(m.user.displayName) ? m.user.displayName :
|
|
2400
|
+
}, "Replying to", " ", m && m.user && !___default['default'].isEmpty(m.user.displayName) ? m.user.displayName : ""), m && !___default['default'].isEmpty(m.text) && /*#__PURE__*/React__default['default'].createElement(Components$2.Text, {
|
|
2211
2401
|
type: "body"
|
|
2212
2402
|
}, m.text.substr(0, 50))), /*#__PURE__*/React__default['default'].createElement("div", {
|
|
2213
2403
|
className: "chat_replyTo_remove"
|
|
@@ -2227,14 +2417,14 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
2227
2417
|
return /*#__PURE__*/React__default['default'].createElement(Components$2.Popup, {
|
|
2228
2418
|
title: "Delete Message",
|
|
2229
2419
|
buttons: [{
|
|
2230
|
-
text:
|
|
2420
|
+
text: "Delete",
|
|
2231
2421
|
onClick: this.onConfirmDelete,
|
|
2232
|
-
type:
|
|
2422
|
+
type: "primary",
|
|
2233
2423
|
isActive: true
|
|
2234
2424
|
}, {
|
|
2235
|
-
text:
|
|
2425
|
+
text: "Cancel",
|
|
2236
2426
|
onClick: this.onCancelDelete,
|
|
2237
|
-
type:
|
|
2427
|
+
type: "tertiary",
|
|
2238
2428
|
isActive: true
|
|
2239
2429
|
}],
|
|
2240
2430
|
onClose: this.onCancelDelete,
|
|
@@ -2251,8 +2441,8 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
2251
2441
|
return /*#__PURE__*/React__default['default'].createElement(Components$2.OverlayPage, {
|
|
2252
2442
|
fullPage: true,
|
|
2253
2443
|
fullPageStyle: {
|
|
2254
|
-
display:
|
|
2255
|
-
flexDirection:
|
|
2444
|
+
display: "flex",
|
|
2445
|
+
flexDirection: "column"
|
|
2256
2446
|
}
|
|
2257
2447
|
}, this.renderDeleteConfirmPopup(), /*#__PURE__*/React__default['default'].createElement(Components$2.Header, {
|
|
2258
2448
|
rightContent: this.renderHeaderRight()
|
|
@@ -2302,8 +2492,8 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
2302
2492
|
}, /*#__PURE__*/React__default['default'].createElement("div", {
|
|
2303
2493
|
className: "chat_newMessage"
|
|
2304
2494
|
}, this.renderChatInput()), this.renderReplyTo(), /*#__PURE__*/React__default['default'].createElement("div", {
|
|
2305
|
-
ref: function ref(
|
|
2306
|
-
return _this8.chat =
|
|
2495
|
+
ref: function ref(_ref8) {
|
|
2496
|
+
return _this8.chat = _ref8;
|
|
2307
2497
|
},
|
|
2308
2498
|
className: "chat_messages"
|
|
2309
2499
|
}, ___default['default'].isEmpty(this.state.messages) && !___default['default'].isEmpty(this.state.messageDate) && this.renderEmptyDate(), this.state.messages.map(function (m) {
|