@plusscommunities/pluss-circles-web-groups 1.5.7-beta.0 → 1.5.7-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs.js +164 -51
- package/dist/index.esm.js +164 -51
- package/dist/index.umd.js +164 -51
- package/package.json +1 -1
- package/src/apis/circleActions.js +10 -0
- package/src/screens/Circle.js +9 -0
- package/src/screens/Circles.js +47 -0
package/dist/index.cjs.js
CHANGED
|
@@ -64,30 +64,30 @@ var _toConsumableArray__default = /*#__PURE__*/_interopDefaultLegacy(_toConsumab
|
|
|
64
64
|
var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray);
|
|
65
65
|
|
|
66
66
|
var values = {
|
|
67
|
-
featureKey: '
|
|
68
|
-
entityKey: '
|
|
69
|
-
entityName: '
|
|
70
|
-
serviceKey: '
|
|
71
|
-
permission: '
|
|
72
|
-
menuIcon: '
|
|
67
|
+
featureKey: 'groups',
|
|
68
|
+
entityKey: 'group',
|
|
69
|
+
entityName: 'group',
|
|
70
|
+
serviceKey: 'groups',
|
|
71
|
+
permission: 'groups',
|
|
72
|
+
menuIcon: 'comments',
|
|
73
73
|
isFontAwesome: true,
|
|
74
|
-
reducerKey: '
|
|
75
|
-
actionCircleKey: '
|
|
76
|
-
textFeatureTitle: '
|
|
77
|
-
textAddMenuTitle: '
|
|
78
|
-
textEmptyGroups: "You aren't in any
|
|
74
|
+
reducerKey: 'groups',
|
|
75
|
+
actionCircleKey: 'GROUP',
|
|
76
|
+
textFeatureTitle: 'Groups',
|
|
77
|
+
textAddMenuTitle: 'Group',
|
|
78
|
+
textEmptyGroups: "You aren't in any Groups",
|
|
79
79
|
textEmptyPeople: 'Contacts will show here',
|
|
80
|
-
componentCircles: '
|
|
81
|
-
componentAddCircle: '
|
|
82
|
-
componentCircle: '
|
|
83
|
-
inviteKey: '
|
|
84
|
-
messageKey: '
|
|
85
|
-
chatRoute: '
|
|
86
|
-
updateKeyUserCircles: '
|
|
87
|
-
allowPublicKey: '
|
|
88
|
-
allowPublicKeyDefault:
|
|
80
|
+
componentCircles: 'Groups',
|
|
81
|
+
componentAddCircle: 'AddGroup',
|
|
82
|
+
componentCircle: 'Group',
|
|
83
|
+
inviteKey: 'groupInvite',
|
|
84
|
+
messageKey: 'groupMessage',
|
|
85
|
+
chatRoute: 'groupChat',
|
|
86
|
+
updateKeyUserCircles: 'userGroups',
|
|
87
|
+
allowPublicKey: 'groupAllowPublicGroups',
|
|
88
|
+
allowPublicKeyDefault: true,
|
|
89
89
|
settings: {
|
|
90
|
-
allowAnyCreate:
|
|
90
|
+
allowAnyCreate: true
|
|
91
91
|
}
|
|
92
92
|
};
|
|
93
93
|
|
|
@@ -376,6 +376,35 @@ 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('notifications', '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
|
|
|
@@ -447,6 +476,12 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
447
476
|
})));
|
|
448
477
|
});
|
|
449
478
|
|
|
479
|
+
_defineProperty__default['default'](_assertThisInitialized__default['default'](_this), "selectUnreadFilter", function (showUnreadOnly) {
|
|
480
|
+
_this.setState({
|
|
481
|
+
showUnreadOnly: showUnreadOnly
|
|
482
|
+
});
|
|
483
|
+
});
|
|
484
|
+
|
|
450
485
|
_defineProperty__default['default'](_assertThisInitialized__default['default'](_this), "canAddNew", function () {
|
|
451
486
|
var auth = _this.props.auth;
|
|
452
487
|
return Session$3.validateAccess(auth.site, values.permission, auth);
|
|
@@ -559,7 +594,9 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
559
594
|
|
|
560
595
|
_this.state = {
|
|
561
596
|
userSearch: "",
|
|
562
|
-
sortBy: "newest"
|
|
597
|
+
sortBy: "newest",
|
|
598
|
+
showUnreadOnly: false,
|
|
599
|
+
pollingInterval: null
|
|
563
600
|
};
|
|
564
601
|
return _this;
|
|
565
602
|
}
|
|
@@ -567,25 +604,60 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
567
604
|
_createClass__default['default'](Circles, [{
|
|
568
605
|
key: "componentDidMount",
|
|
569
606
|
value: function componentDidMount() {
|
|
570
|
-
this
|
|
607
|
+
var _this2 = this;
|
|
608
|
+
|
|
609
|
+
this.getData(); // Poll for updates every 10 seconds
|
|
610
|
+
|
|
611
|
+
this.pollingInterval = setInterval(function () {
|
|
612
|
+
_this2.getData();
|
|
613
|
+
}, 10000);
|
|
614
|
+
}
|
|
615
|
+
}, {
|
|
616
|
+
key: "componentWillUnmount",
|
|
617
|
+
value: function componentWillUnmount() {
|
|
618
|
+
if (this.pollingInterval) {
|
|
619
|
+
clearInterval(this.pollingInterval);
|
|
620
|
+
}
|
|
621
|
+
}
|
|
622
|
+
}, {
|
|
623
|
+
key: "isCircleUnread",
|
|
624
|
+
value: function isCircleUnread(circle) {
|
|
625
|
+
var userId = this.props.user.Id;
|
|
626
|
+
|
|
627
|
+
if (!circle.Unread || !circle.Unread[userId]) {
|
|
628
|
+
return false;
|
|
629
|
+
}
|
|
630
|
+
|
|
631
|
+
return circle.Unread[userId] > 0;
|
|
632
|
+
}
|
|
633
|
+
}, {
|
|
634
|
+
key: "getUnreadCount",
|
|
635
|
+
value: function getUnreadCount(circle) {
|
|
636
|
+
var userId = this.props.user.Id;
|
|
637
|
+
|
|
638
|
+
if (!circle.Unread || !circle.Unread[userId]) {
|
|
639
|
+
return 0;
|
|
640
|
+
}
|
|
641
|
+
|
|
642
|
+
return circle.Unread[userId];
|
|
571
643
|
}
|
|
572
644
|
}, {
|
|
573
645
|
key: "getCircles",
|
|
574
646
|
value: function getCircles() {
|
|
575
|
-
var
|
|
647
|
+
var _this3 = this;
|
|
576
648
|
|
|
577
649
|
var result = this.props.circles;
|
|
578
650
|
|
|
579
651
|
if (this.state.selectedTypeFilter) {
|
|
580
652
|
result = ___default['default'].filter(result, function (circle) {
|
|
581
|
-
return
|
|
653
|
+
return _this3.state.selectedTypeFilter === "circle" ? !circle.IsPrivate : circle.IsPrivate;
|
|
582
654
|
});
|
|
583
655
|
}
|
|
584
656
|
|
|
585
657
|
if (this.state.selectedUserFilter) {
|
|
586
658
|
result = ___default['default'].filter(result, function (circle) {
|
|
587
659
|
return ___default['default'].some(circle.Audience, function (user) {
|
|
588
|
-
return user.userId ===
|
|
660
|
+
return user.userId === _this3.state.selectedUserFilter.userId;
|
|
589
661
|
});
|
|
590
662
|
});
|
|
591
663
|
} // Apply sorting
|
|
@@ -597,6 +669,12 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
597
669
|
|
|
598
670
|
if (this.state.sortBy === "newest") {
|
|
599
671
|
result.reverse();
|
|
672
|
+
|
|
673
|
+
if (this.state.showUnreadOnly) {
|
|
674
|
+
result = ___default['default'].filter(result, function (circle) {
|
|
675
|
+
return _this3.isCircleUnread(circle);
|
|
676
|
+
});
|
|
677
|
+
}
|
|
600
678
|
}
|
|
601
679
|
|
|
602
680
|
return result;
|
|
@@ -604,7 +682,7 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
604
682
|
}, {
|
|
605
683
|
key: "getUsers",
|
|
606
684
|
value: function getUsers() {
|
|
607
|
-
var
|
|
685
|
+
var _this4 = this;
|
|
608
686
|
|
|
609
687
|
var users = [];
|
|
610
688
|
this.props.circles.forEach(function (circle) {
|
|
@@ -616,8 +694,8 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
616
694
|
return user.userId;
|
|
617
695
|
}), "displayName");
|
|
618
696
|
return ___default['default'].filter(users, function (u) {
|
|
619
|
-
if (!___default['default'].isEmpty(
|
|
620
|
-
return (u.displayName || "").toLowerCase().indexOf(
|
|
697
|
+
if (!___default['default'].isEmpty(_this4.state.userSearch)) {
|
|
698
|
+
return (u.displayName || "").toLowerCase().indexOf(_this4.state.userSearch.toLowerCase()) > -1;
|
|
621
699
|
}
|
|
622
700
|
|
|
623
701
|
return true;
|
|
@@ -626,7 +704,7 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
626
704
|
}, {
|
|
627
705
|
key: "validateCircleAdmin",
|
|
628
706
|
value: function validateCircleAdmin(circle, onlyCreator) {
|
|
629
|
-
var
|
|
707
|
+
var _this5 = this;
|
|
630
708
|
|
|
631
709
|
if (Session$3.validateAccess(this.props.auth.site, values.permission, this.props.auth)) {
|
|
632
710
|
return true;
|
|
@@ -637,13 +715,13 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
637
715
|
}
|
|
638
716
|
|
|
639
717
|
return ___default['default'].some(circle.Audience, function (user) {
|
|
640
|
-
return user.userId ===
|
|
718
|
+
return user.userId === _this5.props.user.Id && user.isAdmin;
|
|
641
719
|
});
|
|
642
720
|
}
|
|
643
721
|
}, {
|
|
644
722
|
key: "renderRow",
|
|
645
723
|
value: function renderRow(circle) {
|
|
646
|
-
var
|
|
724
|
+
var _this6 = this;
|
|
647
725
|
|
|
648
726
|
return /*#__PURE__*/React__default['default'].createElement("tr", {
|
|
649
727
|
key: circle.Id
|
|
@@ -677,7 +755,7 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
677
755
|
name: "pencil"
|
|
678
756
|
})), this.validateCircleAdmin(circle, true) && !circle.IsPrivate && /*#__PURE__*/React__default['default'].createElement("a", {
|
|
679
757
|
onClick: function onClick() {
|
|
680
|
-
|
|
758
|
+
_this6.removeCircle(circle);
|
|
681
759
|
}
|
|
682
760
|
}, /*#__PURE__*/React__default['default'].createElement(FontAwesome__default['default'], {
|
|
683
761
|
style: {
|
|
@@ -692,13 +770,21 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
692
770
|
}, {
|
|
693
771
|
key: "renderFilters",
|
|
694
772
|
value: function renderFilters() {
|
|
695
|
-
var
|
|
773
|
+
var _this7 = this;
|
|
696
774
|
|
|
697
775
|
var userFilter = /*#__PURE__*/React__default['default'].createElement(Components$4.Tag, {
|
|
698
776
|
className: "marginRight-10",
|
|
699
777
|
onClick: this.openUserFilter,
|
|
700
778
|
text: "User"
|
|
701
779
|
});
|
|
780
|
+
var unreadFilter = /*#__PURE__*/React__default['default'].createElement(Components$4.Tag, {
|
|
781
|
+
className: "marginRight-10",
|
|
782
|
+
onClick: function onClick() {
|
|
783
|
+
return _this7.selectUnreadFilter(!_this7.state.showUnreadOnly);
|
|
784
|
+
},
|
|
785
|
+
leftIcon: this.state.showUnreadOnly ? "check" : null,
|
|
786
|
+
text: "Unread Only"
|
|
787
|
+
});
|
|
702
788
|
var typeFilter = /*#__PURE__*/React__default['default'].createElement(Components$4.Tag, {
|
|
703
789
|
className: "marginRight-10",
|
|
704
790
|
onClick: this.openTypeFilter,
|
|
@@ -733,19 +819,19 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
733
819
|
}, /*#__PURE__*/React__default['default'].createElement(Components$4.Text, {
|
|
734
820
|
type: "h5",
|
|
735
821
|
className: "marginRight-20"
|
|
736
|
-
}, "Filter by"), userFilter, typeFilter, /*#__PURE__*/React__default['default'].createElement(Components$4.Text, {
|
|
822
|
+
}, "Filter by"), userFilter, unreadFilter, typeFilter, /*#__PURE__*/React__default['default'].createElement(Components$4.Text, {
|
|
737
823
|
type: "h5",
|
|
738
824
|
className: "marginRight-20 marginLeft-20"
|
|
739
825
|
}, "Sort by:"), /*#__PURE__*/React__default['default'].createElement(Components$4.Tag, {
|
|
740
826
|
className: "marginRight-10",
|
|
741
827
|
onClick: function onClick() {
|
|
742
|
-
return
|
|
828
|
+
return _this7.selectSort("newest");
|
|
743
829
|
},
|
|
744
830
|
leftIcon: this.state.sortBy === "newest" ? "check" : null,
|
|
745
831
|
text: "Newest first"
|
|
746
832
|
}), /*#__PURE__*/React__default['default'].createElement(Components$4.Tag, {
|
|
747
833
|
onClick: function onClick() {
|
|
748
|
-
return
|
|
834
|
+
return _this7.selectSort("oldest");
|
|
749
835
|
},
|
|
750
836
|
leftIcon: this.state.sortBy === "oldest" ? "check" : null,
|
|
751
837
|
text: "Oldest first"
|
|
@@ -754,7 +840,7 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
754
840
|
}, {
|
|
755
841
|
key: "renderUserFilterPopup",
|
|
756
842
|
value: function renderUserFilterPopup() {
|
|
757
|
-
var
|
|
843
|
+
var _this8 = this;
|
|
758
844
|
|
|
759
845
|
if (!this.state.userFilterOpen) {
|
|
760
846
|
return null;
|
|
@@ -774,7 +860,7 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
774
860
|
placeholder: "Enter name",
|
|
775
861
|
value: this.state.userSearch,
|
|
776
862
|
onChange: function onChange(e) {
|
|
777
|
-
return
|
|
863
|
+
return _this8.onHandleChange(e);
|
|
778
864
|
},
|
|
779
865
|
alwaysShowLabel: true
|
|
780
866
|
}), this.getUsers().map(function (user) {
|
|
@@ -782,7 +868,7 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
782
868
|
key: user.userId,
|
|
783
869
|
user: user,
|
|
784
870
|
onClick: function onClick() {
|
|
785
|
-
|
|
871
|
+
_this8.selectUserFilter(user);
|
|
786
872
|
}
|
|
787
873
|
});
|
|
788
874
|
}));
|
|
@@ -790,7 +876,7 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
790
876
|
}, {
|
|
791
877
|
key: "renderTypeFilterPopup",
|
|
792
878
|
value: function renderTypeFilterPopup() {
|
|
793
|
-
var
|
|
879
|
+
var _this9 = this;
|
|
794
880
|
|
|
795
881
|
if (!this.state.typeFilterOpen) {
|
|
796
882
|
return null;
|
|
@@ -804,13 +890,13 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
804
890
|
onClose: this.closeTypeFilter
|
|
805
891
|
}, /*#__PURE__*/React__default['default'].createElement(Components$4.Tag, {
|
|
806
892
|
onClick: function onClick() {
|
|
807
|
-
|
|
893
|
+
_this9.selectTypeFilter("circle");
|
|
808
894
|
},
|
|
809
895
|
text: ___default['default'].capitalize(values.entityName),
|
|
810
896
|
className: "marginRight-10"
|
|
811
897
|
}), /*#__PURE__*/React__default['default'].createElement(Components$4.Tag, {
|
|
812
898
|
onClick: function onClick() {
|
|
813
|
-
|
|
899
|
+
_this9.selectTypeFilter("private");
|
|
814
900
|
},
|
|
815
901
|
text: "Private Message"
|
|
816
902
|
}));
|
|
@@ -818,7 +904,7 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
818
904
|
}, {
|
|
819
905
|
key: "render",
|
|
820
906
|
value: function render() {
|
|
821
|
-
var
|
|
907
|
+
var _this10 = this;
|
|
822
908
|
|
|
823
909
|
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, {
|
|
824
910
|
onClick: this.onAddNew,
|
|
@@ -842,7 +928,7 @@ var Circles = /*#__PURE__*/function (_Component) {
|
|
|
842
928
|
width: 50
|
|
843
929
|
}
|
|
844
930
|
}))), /*#__PURE__*/React__default['default'].createElement("tbody", null, this.getCircles().map(function (circle) {
|
|
845
|
-
return
|
|
931
|
+
return _this10.renderRow(circle);
|
|
846
932
|
})))));
|
|
847
933
|
}
|
|
848
934
|
}]);
|
|
@@ -1806,6 +1892,32 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
1806
1892
|
});
|
|
1807
1893
|
});
|
|
1808
1894
|
|
|
1895
|
+
_defineProperty__default['default'](_assertThisInitialized__default['default'](_this), "markCircleAsRead", /*#__PURE__*/_asyncToGenerator__default['default']( /*#__PURE__*/_regeneratorRuntime__default['default'].mark(function _callee5() {
|
|
1896
|
+
return _regeneratorRuntime__default['default'].wrap(function _callee5$(_context5) {
|
|
1897
|
+
while (1) {
|
|
1898
|
+
switch (_context5.prev = _context5.next) {
|
|
1899
|
+
case 0:
|
|
1900
|
+
_context5.prev = 0;
|
|
1901
|
+
_context5.next = 3;
|
|
1902
|
+
return circleActions.markAsRead(_this.state.circleId, _this.props.user.Id);
|
|
1903
|
+
|
|
1904
|
+
case 3:
|
|
1905
|
+
_context5.next = 8;
|
|
1906
|
+
break;
|
|
1907
|
+
|
|
1908
|
+
case 5:
|
|
1909
|
+
_context5.prev = 5;
|
|
1910
|
+
_context5.t0 = _context5["catch"](0);
|
|
1911
|
+
console.error("Failed to mark circle as read:", _context5.t0);
|
|
1912
|
+
|
|
1913
|
+
case 8:
|
|
1914
|
+
case "end":
|
|
1915
|
+
return _context5.stop();
|
|
1916
|
+
}
|
|
1917
|
+
}
|
|
1918
|
+
}, _callee5, null, [[0, 5]]);
|
|
1919
|
+
})));
|
|
1920
|
+
|
|
1809
1921
|
_defineProperty__default['default'](_assertThisInitialized__default['default'](_this), "sendMessage", function () {
|
|
1810
1922
|
var message = {
|
|
1811
1923
|
_id: Helper.randomString(),
|
|
@@ -1890,6 +2002,7 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
1890
2002
|
_createClass__default['default'](Circle, [{
|
|
1891
2003
|
key: "componentDidMount",
|
|
1892
2004
|
value: function componentDidMount() {
|
|
2005
|
+
this.markCircleAsRead();
|
|
1893
2006
|
this.checkGetData();
|
|
1894
2007
|
this.connect();
|
|
1895
2008
|
this.props.setNavData({
|
|
@@ -2026,8 +2139,8 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
2026
2139
|
display: this.state.imageInputShowing ? "block" : "none"
|
|
2027
2140
|
}
|
|
2028
2141
|
}, /*#__PURE__*/React__default['default'].createElement(Components$2.ImageInput, {
|
|
2029
|
-
ref: function ref(
|
|
2030
|
-
_this5.imageInput =
|
|
2142
|
+
ref: function ref(_ref6) {
|
|
2143
|
+
_this5.imageInput = _ref6;
|
|
2031
2144
|
},
|
|
2032
2145
|
multiple: true,
|
|
2033
2146
|
limit: 10,
|
|
@@ -2041,8 +2154,8 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
2041
2154
|
display: this.state.fileInputShowing ? "block" : "none"
|
|
2042
2155
|
}
|
|
2043
2156
|
}, /*#__PURE__*/React__default['default'].createElement(Components$2.FileInput, {
|
|
2044
|
-
ref: function ref(
|
|
2045
|
-
_this5.fileInput =
|
|
2157
|
+
ref: function ref(_ref7) {
|
|
2158
|
+
_this5.fileInput = _ref7;
|
|
2046
2159
|
},
|
|
2047
2160
|
multiple: true,
|
|
2048
2161
|
limit: 10,
|
|
@@ -2336,8 +2449,8 @@ var Circle = /*#__PURE__*/function (_Component) {
|
|
|
2336
2449
|
}, /*#__PURE__*/React__default['default'].createElement("div", {
|
|
2337
2450
|
className: "chat_newMessage"
|
|
2338
2451
|
}, this.renderChatInput()), this.renderReplyTo(), /*#__PURE__*/React__default['default'].createElement("div", {
|
|
2339
|
-
ref: function ref(
|
|
2340
|
-
return _this8.chat =
|
|
2452
|
+
ref: function ref(_ref8) {
|
|
2453
|
+
return _this8.chat = _ref8;
|
|
2341
2454
|
},
|
|
2342
2455
|
className: "chat_messages"
|
|
2343
2456
|
}, ___default['default'].isEmpty(this.state.messages) && !___default['default'].isEmpty(this.state.messageDate) && this.renderEmptyDate(), this.state.messages.map(function (m) {
|