@plusscommunities/pluss-core-web 1.4.19 → 1.4.20

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 CHANGED
@@ -549,6 +549,10 @@ var getAnalyticsFilterOptions = function getAnalyticsFilterOptions() {
549
549
  text: 'Last 90 days',
550
550
  dayCount: 90,
551
551
  prevText: 'previous 90 days'
552
+ }, {
553
+ text: 'Last 365 days',
554
+ dayCount: 365,
555
+ prevText: 'previous 365 days'
552
556
  }, {
553
557
  text: 'Custom Range',
554
558
  dayCount: 0,
@@ -572,6 +576,15 @@ var countActivities = function countActivities(data, activityKey, countType) {
572
576
 
573
577
  break;
574
578
 
579
+ case 'uniquearray':
580
+ if (entityStats[activityKey]) {
581
+ ___default['default'].values(entityStats[activityKey]).forEach(function (value) {
582
+ set.add(value);
583
+ });
584
+ }
585
+
586
+ break;
587
+
575
588
  case 'total':
576
589
  if (entityStats[activityKey]) {
577
590
  count += entityStats[activityKey];
@@ -584,6 +597,8 @@ var countActivities = function countActivities(data, activityKey, countType) {
584
597
 
585
598
  switch (countType) {
586
599
  case 'unique':
600
+ case 'uniquearray':
601
+ console.log(countType, set);
587
602
  return set.size;
588
603
 
589
604
  case 'total':
@@ -594,6 +609,7 @@ var countActivities = function countActivities(data, activityKey, countType) {
594
609
  }
595
610
  };
596
611
  var generateDateRangeObjects = function generateDateRangeObjects(startTime, endTime) {
612
+ var groupBy = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'day';
597
613
  var startDate = moment__default['default'](startTime);
598
614
  var endDate = moment__default['default'](endTime);
599
615
  var dates = {};
@@ -605,24 +621,42 @@ var generateDateRangeObjects = function generateDateRangeObjects(startTime, endT
605
621
  Timestamp: startDate.valueOf(),
606
622
  Stats: {}
607
623
  };
608
- startDate.add(1, 'days');
624
+ startDate.add(1, groupBy);
609
625
  }
610
626
 
611
627
  return dates;
612
628
  };
613
629
  var generateDateActivities = function generateDateActivities(data, activityKey, countType, startTime, endTime) {
614
- var dates = generateDateRangeObjects(startTime, endTime);
630
+ var groupBy = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 'day';
631
+ var dates = generateDateRangeObjects(startTime, endTime, groupBy);
615
632
  var result = [];
633
+ var formatToUse = 'DD-MM-YYYY';
634
+ var labelFormat = 'D MMM';
635
+
636
+ switch (groupBy) {
637
+ case 'month':
638
+ formatToUse = 'MM-YYYY';
639
+ labelFormat = 'MMMM';
640
+ break;
641
+
642
+ case 'week':
643
+ formatToUse = 'w-gggg';
644
+ labelFormat = '[Week of] D MMM';
645
+ break;
646
+ }
647
+
616
648
  Object.keys(dates).forEach(function (d) {
617
- var dateToUse = ___default['default'].find(data, function (date) {
618
- return date.Date === d;
619
- }) || dates[d];
649
+ var datesToUse = ___default['default'].filter(data, function (date) {
650
+ return moment__default['default'](date.Date, 'DD-MM-YYYY').format(formatToUse) === moment__default['default'](d, 'DD-MM-YYYY').format(formatToUse);
651
+ }) || [dates[d]];
620
652
  var compiledValue = {
621
653
  date: d,
622
- value: countActivities([dateToUse], activityKey, countType)
654
+ label: moment__default['default'](d, 'DD-MM-YYYY').format(labelFormat),
655
+ value: countActivities(datesToUse, activityKey, countType)
623
656
  };
624
657
  result.push(compiledValue);
625
658
  });
659
+ console.log(result);
626
660
  return result;
627
661
  };
628
662
 
@@ -8690,7 +8724,7 @@ var AnalyticsFilter = /*#__PURE__*/function (_PureComponent) {
8690
8724
  _createClass__default['default'](AnalyticsFilter, [{
8691
8725
  key: "render",
8692
8726
  value: function render() {
8693
- return /*#__PURE__*/React__default['default'].createElement("div", null, /*#__PURE__*/React__default['default'].createElement("div", {
8727
+ return /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement("div", {
8694
8728
  className: "analyticsFilter__dropDown"
8695
8729
  }, /*#__PURE__*/React__default['default'].createElement(reactBootstrap.DropdownButton, {
8696
8730
  id: "secondLevelSort",
package/dist/index.esm.js CHANGED
@@ -519,6 +519,10 @@ var getAnalyticsFilterOptions = function getAnalyticsFilterOptions() {
519
519
  text: 'Last 90 days',
520
520
  dayCount: 90,
521
521
  prevText: 'previous 90 days'
522
+ }, {
523
+ text: 'Last 365 days',
524
+ dayCount: 365,
525
+ prevText: 'previous 365 days'
522
526
  }, {
523
527
  text: 'Custom Range',
524
528
  dayCount: 0,
@@ -542,6 +546,15 @@ var countActivities = function countActivities(data, activityKey, countType) {
542
546
 
543
547
  break;
544
548
 
549
+ case 'uniquearray':
550
+ if (entityStats[activityKey]) {
551
+ _.values(entityStats[activityKey]).forEach(function (value) {
552
+ set.add(value);
553
+ });
554
+ }
555
+
556
+ break;
557
+
545
558
  case 'total':
546
559
  if (entityStats[activityKey]) {
547
560
  count += entityStats[activityKey];
@@ -554,6 +567,8 @@ var countActivities = function countActivities(data, activityKey, countType) {
554
567
 
555
568
  switch (countType) {
556
569
  case 'unique':
570
+ case 'uniquearray':
571
+ console.log(countType, set);
557
572
  return set.size;
558
573
 
559
574
  case 'total':
@@ -564,6 +579,7 @@ var countActivities = function countActivities(data, activityKey, countType) {
564
579
  }
565
580
  };
566
581
  var generateDateRangeObjects = function generateDateRangeObjects(startTime, endTime) {
582
+ var groupBy = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'day';
567
583
  var startDate = moment(startTime);
568
584
  var endDate = moment(endTime);
569
585
  var dates = {};
@@ -575,24 +591,42 @@ var generateDateRangeObjects = function generateDateRangeObjects(startTime, endT
575
591
  Timestamp: startDate.valueOf(),
576
592
  Stats: {}
577
593
  };
578
- startDate.add(1, 'days');
594
+ startDate.add(1, groupBy);
579
595
  }
580
596
 
581
597
  return dates;
582
598
  };
583
599
  var generateDateActivities = function generateDateActivities(data, activityKey, countType, startTime, endTime) {
584
- var dates = generateDateRangeObjects(startTime, endTime);
600
+ var groupBy = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 'day';
601
+ var dates = generateDateRangeObjects(startTime, endTime, groupBy);
585
602
  var result = [];
603
+ var formatToUse = 'DD-MM-YYYY';
604
+ var labelFormat = 'D MMM';
605
+
606
+ switch (groupBy) {
607
+ case 'month':
608
+ formatToUse = 'MM-YYYY';
609
+ labelFormat = 'MMMM';
610
+ break;
611
+
612
+ case 'week':
613
+ formatToUse = 'w-gggg';
614
+ labelFormat = '[Week of] D MMM';
615
+ break;
616
+ }
617
+
586
618
  Object.keys(dates).forEach(function (d) {
587
- var dateToUse = _.find(data, function (date) {
588
- return date.Date === d;
589
- }) || dates[d];
619
+ var datesToUse = _.filter(data, function (date) {
620
+ return moment(date.Date, 'DD-MM-YYYY').format(formatToUse) === moment(d, 'DD-MM-YYYY').format(formatToUse);
621
+ }) || [dates[d]];
590
622
  var compiledValue = {
591
623
  date: d,
592
- value: countActivities([dateToUse], activityKey, countType)
624
+ label: moment(d, 'DD-MM-YYYY').format(labelFormat),
625
+ value: countActivities(datesToUse, activityKey, countType)
593
626
  };
594
627
  result.push(compiledValue);
595
628
  });
629
+ console.log(result);
596
630
  return result;
597
631
  };
598
632
 
@@ -8660,7 +8694,7 @@ var AnalyticsFilter = /*#__PURE__*/function (_PureComponent) {
8660
8694
  _createClass(AnalyticsFilter, [{
8661
8695
  key: "render",
8662
8696
  value: function render() {
8663
- return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
8697
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
8664
8698
  className: "analyticsFilter__dropDown"
8665
8699
  }, /*#__PURE__*/React.createElement(DropdownButton, {
8666
8700
  id: "secondLevelSort",
package/dist/index.umd.js CHANGED
@@ -520,6 +520,10 @@
520
520
  text: 'Last 90 days',
521
521
  dayCount: 90,
522
522
  prevText: 'previous 90 days'
523
+ }, {
524
+ text: 'Last 365 days',
525
+ dayCount: 365,
526
+ prevText: 'previous 365 days'
523
527
  }, {
524
528
  text: 'Custom Range',
525
529
  dayCount: 0,
@@ -543,6 +547,15 @@
543
547
 
544
548
  break;
545
549
 
550
+ case 'uniquearray':
551
+ if (entityStats[activityKey]) {
552
+ ___default['default'].values(entityStats[activityKey]).forEach(function (value) {
553
+ set.add(value);
554
+ });
555
+ }
556
+
557
+ break;
558
+
546
559
  case 'total':
547
560
  if (entityStats[activityKey]) {
548
561
  count += entityStats[activityKey];
@@ -555,6 +568,8 @@
555
568
 
556
569
  switch (countType) {
557
570
  case 'unique':
571
+ case 'uniquearray':
572
+ console.log(countType, set);
558
573
  return set.size;
559
574
 
560
575
  case 'total':
@@ -565,6 +580,7 @@
565
580
  }
566
581
  };
567
582
  var generateDateRangeObjects = function generateDateRangeObjects(startTime, endTime) {
583
+ var groupBy = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'day';
568
584
  var startDate = moment__default['default'](startTime);
569
585
  var endDate = moment__default['default'](endTime);
570
586
  var dates = {};
@@ -576,24 +592,42 @@
576
592
  Timestamp: startDate.valueOf(),
577
593
  Stats: {}
578
594
  };
579
- startDate.add(1, 'days');
595
+ startDate.add(1, groupBy);
580
596
  }
581
597
 
582
598
  return dates;
583
599
  };
584
600
  var generateDateActivities = function generateDateActivities(data, activityKey, countType, startTime, endTime) {
585
- var dates = generateDateRangeObjects(startTime, endTime);
601
+ var groupBy = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 'day';
602
+ var dates = generateDateRangeObjects(startTime, endTime, groupBy);
586
603
  var result = [];
604
+ var formatToUse = 'DD-MM-YYYY';
605
+ var labelFormat = 'D MMM';
606
+
607
+ switch (groupBy) {
608
+ case 'month':
609
+ formatToUse = 'MM-YYYY';
610
+ labelFormat = 'MMMM';
611
+ break;
612
+
613
+ case 'week':
614
+ formatToUse = 'w-gggg';
615
+ labelFormat = '[Week of] D MMM';
616
+ break;
617
+ }
618
+
587
619
  Object.keys(dates).forEach(function (d) {
588
- var dateToUse = ___default['default'].find(data, function (date) {
589
- return date.Date === d;
590
- }) || dates[d];
620
+ var datesToUse = ___default['default'].filter(data, function (date) {
621
+ return moment__default['default'](date.Date, 'DD-MM-YYYY').format(formatToUse) === moment__default['default'](d, 'DD-MM-YYYY').format(formatToUse);
622
+ }) || [dates[d]];
591
623
  var compiledValue = {
592
624
  date: d,
593
- value: countActivities([dateToUse], activityKey, countType)
625
+ label: moment__default['default'](d, 'DD-MM-YYYY').format(labelFormat),
626
+ value: countActivities(datesToUse, activityKey, countType)
594
627
  };
595
628
  result.push(compiledValue);
596
629
  });
630
+ console.log(result);
597
631
  return result;
598
632
  };
599
633
 
@@ -8661,7 +8695,7 @@
8661
8695
  _createClass__default['default'](AnalyticsFilter, [{
8662
8696
  key: "render",
8663
8697
  value: function render() {
8664
- return /*#__PURE__*/React__default['default'].createElement("div", null, /*#__PURE__*/React__default['default'].createElement("div", {
8698
+ return /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement("div", {
8665
8699
  className: "analyticsFilter__dropDown"
8666
8700
  }, /*#__PURE__*/React__default['default'].createElement(reactBootstrap.DropdownButton, {
8667
8701
  id: "secondLevelSort",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plusscommunities/pluss-core-web",
3
- "version": "1.4.19",
3
+ "version": "1.4.20",
4
4
  "description": "Core extension package for Pluss Communities platform",
5
5
  "main": "dist/index.cjs.js",
6
6
  "scripts": {
package/src/analytics.js CHANGED
@@ -70,6 +70,11 @@ export const getAnalyticsFilterOptions = () => {
70
70
  dayCount: 90,
71
71
  prevText: 'previous 90 days',
72
72
  },
73
+ {
74
+ text: 'Last 365 days',
75
+ dayCount: 365,
76
+ prevText: 'previous 365 days',
77
+ },
73
78
  {
74
79
  text: 'Custom Range',
75
80
  dayCount: 0,
@@ -94,6 +99,13 @@ export const countActivities = (data, activityKey, countType) => {
94
99
  set.add(entity);
95
100
  }
96
101
  break;
102
+ case 'uniquearray':
103
+ if (entityStats[activityKey]) {
104
+ _.values(entityStats[activityKey]).forEach((value) => {
105
+ set.add(value);
106
+ });
107
+ }
108
+ break;
97
109
  case 'total':
98
110
  if (entityStats[activityKey]) {
99
111
  count += entityStats[activityKey];
@@ -107,6 +119,8 @@ export const countActivities = (data, activityKey, countType) => {
107
119
 
108
120
  switch (countType) {
109
121
  case 'unique':
122
+ case 'uniquearray':
123
+ console.log(countType, set);
110
124
  return set.size;
111
125
  case 'total':
112
126
  return count;
@@ -115,7 +129,7 @@ export const countActivities = (data, activityKey, countType) => {
115
129
  }
116
130
  };
117
131
 
118
- export const generateDateRangeObjects = (startTime, endTime) => {
132
+ export const generateDateRangeObjects = (startTime, endTime, groupBy = 'day') => {
119
133
  const startDate = moment(startTime);
120
134
  const endDate = moment(endTime);
121
135
  const dates = {};
@@ -127,22 +141,43 @@ export const generateDateRangeObjects = (startTime, endTime) => {
127
141
  Timestamp: startDate.valueOf(),
128
142
  Stats: {},
129
143
  };
130
- startDate.add(1, 'days');
144
+ startDate.add(1, groupBy);
131
145
  }
132
146
 
133
147
  return dates;
134
148
  };
135
149
 
136
- export const generateDateActivities = (data, activityKey, countType, startTime, endTime) => {
137
- const dates = generateDateRangeObjects(startTime, endTime);
150
+ export const generateDateActivities = (data, activityKey, countType, startTime, endTime, groupBy = 'day') => {
151
+ const dates = generateDateRangeObjects(startTime, endTime, groupBy);
138
152
 
139
153
  const result = [];
154
+ let formatToUse = 'DD-MM-YYYY';
155
+ let labelFormat = 'D MMM';
156
+ switch (groupBy) {
157
+ case 'month':
158
+ formatToUse = 'MM-YYYY';
159
+ labelFormat = 'MMMM';
160
+ break;
161
+ case 'week':
162
+ formatToUse = 'w-gggg';
163
+ labelFormat = '[Week of] D MMM';
164
+ break;
165
+ default:
166
+ break;
167
+ }
140
168
 
141
169
  Object.keys(dates).forEach((d) => {
142
- const dateToUse = _.find(data, (date) => date.Date === d) || dates[d];
143
- const compiledValue = { date: d, value: countActivities([dateToUse], activityKey, countType) };
170
+ const datesToUse = _.filter(data, (date) => {
171
+ return moment(date.Date, 'DD-MM-YYYY').format(formatToUse) === moment(d, 'DD-MM-YYYY').format(formatToUse);
172
+ }) || [dates[d]];
173
+ const compiledValue = {
174
+ date: d,
175
+ label: moment(d, 'DD-MM-YYYY').format(labelFormat),
176
+ value: countActivities(datesToUse, activityKey, countType),
177
+ };
144
178
 
145
179
  result.push(compiledValue);
146
180
  });
181
+ console.log(result);
147
182
  return result;
148
183
  };
@@ -78,7 +78,7 @@ class AnalyticsFilter extends PureComponent {
78
78
 
79
79
  render() {
80
80
  return (
81
- <div>
81
+ <>
82
82
  <div className="analyticsFilter__dropDown">
83
83
  <DropdownButton
84
84
  id="secondLevelSort"
@@ -106,7 +106,7 @@ class AnalyticsFilter extends PureComponent {
106
106
  <DatePicker hideTop selectedDate={this.state.endDate} selectDate={this.endDateChanged} />
107
107
  </div>
108
108
  )}
109
- </div>
109
+ </>
110
110
  );
111
111
  }
112
112
  }