moblor-vue 0.1.55 → 0.1.56

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.
@@ -4466,17 +4466,7 @@ var DashboardDataConvertor = /** @class */ (function (_super) {
4466
4466
  showTotalIndexArray.push(index);
4467
4467
  }
4468
4468
  var header = {};
4469
- if (column.type === 'aggregate' && aggregateColumnInfo[column.column]) {
4470
- header = aggregateColumnInfo[column.column];
4471
- var groupingSortItems = propGroupings
4472
- .filter(function (item) { return item.sortAggregate === column.column; });
4473
- if (groupingSortItems && groupingSortItems.length === 1) {
4474
- sortIndex = index;
4475
- sortOrder = groupingSortItems[0].sortOrder.toLowerCase();
4476
- }
4477
- aggregateIndexArray.push(index);
4478
- }
4479
- else if (column.type === 'grouping' && groupingColumnInfo[column.column]) {
4469
+ if (column.type === 'grouping' && groupingColumnInfo[column.column]) {
4480
4470
  header = groupingColumnInfo[column.column];
4481
4471
  var groupingSortItems = propGroupings
4482
4472
  .filter(function (item) { return item.name === column.column; });
@@ -4491,6 +4481,16 @@ var DashboardDataConvertor = /** @class */ (function (_super) {
4491
4481
  group2IndexArray.push(index);
4492
4482
  }
4493
4483
  }
4484
+ else if (column.type === 'aggregate' && aggregateColumnInfo[column.column]) {
4485
+ header = aggregateColumnInfo[column.column];
4486
+ var groupingSortItems = propGroupings
4487
+ .filter(function (item) { return item.sortAggregate === column.column; });
4488
+ if (groupingSortItems && groupingSortItems.length === 1) {
4489
+ sortIndex = index;
4490
+ sortOrder = groupingSortItems[0].sortOrder.toLowerCase();
4491
+ }
4492
+ aggregateIndexArray.push(index);
4493
+ }
4494
4494
  else if (detailColumnInfo[column.column]) {
4495
4495
  header = detailColumnInfo[column.column];
4496
4496
  }
@@ -4595,73 +4595,71 @@ var DashboardDataConvertor = /** @class */ (function (_super) {
4595
4595
  }
4596
4596
  };
4597
4597
  var sortTableRows = function () {
4598
+ var convertDateTime = function (dateString) {
4599
+ var datetime = (new Date(dateString)).getTime();
4600
+ return datetime;
4601
+ };
4602
+ var sortNumberFunction = function (aNum, bNum) {
4603
+ if (table.headers[sortIndex].sortOrder === 'desc') {
4604
+ return bNum - aNum;
4605
+ }
4606
+ return aNum - bNum;
4607
+ };
4608
+ var sortStringFunction = function (aLabel, bLabel) {
4609
+ if (table.headers[sortIndex].sortOrder === 'desc') {
4610
+ if (aLabel === '-' && bLabel !== '-') {
4611
+ return 1;
4612
+ }
4613
+ if (aLabel !== '-' && bLabel === '-') {
4614
+ return -1;
4615
+ }
4616
+ return bLabel.localeCompare(aLabel);
4617
+ }
4618
+ if (aLabel === '-' && bLabel !== '-') {
4619
+ return -1;
4620
+ }
4621
+ if (aLabel !== '-' && bLabel === '-') {
4622
+ return 1;
4623
+ }
4624
+ return aLabel.localeCompare(bLabel);
4625
+ };
4598
4626
  var compare = function (a, b) {
4599
4627
  var aValue = a.cells[sortIndex].value;
4600
4628
  var bValue = b.cells[sortIndex].value;
4601
4629
  var aLabel = (a.cells[sortIndex].label).toLowerCase();
4602
4630
  var bLabel = (b.cells[sortIndex].label).toLowerCase();
4631
+ var aNumber = 0;
4632
+ var bNumber = 0;
4603
4633
  if (sortColumnDataType === 'date'
4604
4634
  || sortColumnDataType === 'datetime'
4605
4635
  || sortColumnDataType === 'time') {
4606
- aValue = aValue ? new Date(aValue) : aValue;
4607
- bValue = bValue ? new Date(bValue) : bValue;
4608
- aLabel = (aLabel && aLabel !== '-') ? new Date(aLabel) : new Date('1/1/1970 00:00 am');
4609
- bLabel = (bLabel && bLabel !== '-') ? new Date(bLabel) : new Date('1/1/1970 00:00 am');
4636
+ aNumber = aLabel === '-'
4637
+ ? convertDateTime('1/1/1970 00:00 am')
4638
+ : convertDateTime(aValue);
4639
+ bNumber = bLabel === '-'
4640
+ ? convertDateTime('1/1/1970 00:00 am')
4641
+ : convertDateTime(bValue);
4610
4642
  }
4611
4643
  else if (sortColumnDataType === 'currency'
4612
4644
  || sortColumnDataType === 'percent'
4613
4645
  || sortColumnDataType === 'double'
4614
4646
  || sortColumnDataType === 'int') {
4615
- aValue = aValue && aValue.amount ? aValue.amount : aValue;
4616
- bValue = bValue && bValue.amount ? bValue.amount : bValue;
4647
+ aNumber = !isNaN(parseFloat(aValue))
4648
+ ? parseFloat(aValue) : 0;
4649
+ bNumber = !isNaN(parseFloat(bValue))
4650
+ ? parseFloat(bValue) : 0;
4617
4651
  }
4618
- if (sort.sortOrder === 'desc') {
4619
- if (bValue) {
4620
- return bValue > aValue ? 1 : -1;
4621
- }
4622
- return bLabel.toString().toLowerCase() > aLabel.toString().toLowerCase() ? 1 : -1;
4623
- }
4624
- if (aValue) {
4625
- return aValue > bValue ? 1 : -1;
4652
+ else {
4653
+ return sortStringFunction(aLabel, bLabel);
4626
4654
  }
4627
- return aLabel > bLabel ? 1 : -1;
4655
+ return sortNumberFunction(aNumber, bNumber);
4628
4656
  };
4629
4657
  var sortByAggregateColumn = function () { return table.rows
4630
- .sort(function (a, b) {
4631
- var aValue = a.cells[sortIndex].value;
4632
- var bValue = b.cells[sortIndex].value;
4633
- if (aValue === bValue && group1IndexArray.length > 0) {
4634
- if (a.cells[0].label === b.cells[0].label && group2IndexArray.length > 0) {
4635
- var aLabel = a.cells[group2IndexArray[0]].label;
4636
- var bLabel = b.cells[group2IndexArray[0]].label;
4637
- return aLabel.toLowerCase() > bLabel.toLowerCase() ? 1 : -1;
4638
- }
4639
- return (a.cells[0].label).toLowerCase() > (b.cells[0].label).toLowerCase() ? 1 : -1;
4640
- }
4641
- return compare(a, b);
4642
- }); };
4658
+ .sort(function (a, b) { return compare(a, b); }); };
4643
4659
  var sortByGroup1Column = function () { return table.rows
4644
- .sort(function (a, b) {
4645
- var aLabel = a.cells[sortIndex].label;
4646
- var bLabel = b.cells[sortIndex].label;
4647
- if (aLabel === bLabel && group2IndexArray.length > 0) {
4648
- var aGroupLabel = a.cells[group2IndexArray[0]].label;
4649
- var bGroupLabel = b.cells[group2IndexArray[0]].label;
4650
- return aGroupLabel.toLowerCase() > bGroupLabel.toLowerCase() ? 1 : -1;
4651
- }
4652
- return compare(a, b);
4653
- }); };
4660
+ .sort(function (a, b) { return compare(a, b); }); };
4654
4661
  var sortByGroup2Column = function () { return table.rows
4655
- .sort(function (a, b) {
4656
- var aLabel = a.cells[sortIndex].label;
4657
- var bLabel = b.cells[sortIndex].label;
4658
- if (aLabel === bLabel) {
4659
- var aFirstLabel = a.cells[0].label;
4660
- var bFirstLabel = b.cells[0].label;
4661
- return aFirstLabel.toLowerCase() > bFirstLabel.toLowerCase() ? 1 : -1;
4662
- }
4663
- return compare(a, b);
4664
- }); };
4662
+ .sort(function (a, b) { return compare(a, b); }); };
4665
4663
  if (sort) {
4666
4664
  if (groupingColumnInfo[sort.column]) {
4667
4665
  sortColumnDataType = groupingColumnInfo[sort.column].dataType;
@@ -4722,28 +4720,30 @@ var DashboardDataConvertor = /** @class */ (function (_super) {
4722
4720
  if (visualizationType === 'FlexTable') {
4723
4721
  var aggregateFields_1 = reportMetadata.aggregates;
4724
4722
  var aggregateValues_1 = factMap['T!T'].aggregates;
4725
- tableColumns.forEach(function (c, index) {
4726
- if (index === 0) {
4727
- table.totals[index] = {
4728
- label: 'Total',
4729
- };
4730
- }
4731
- else {
4732
- var field = c.column;
4733
- var arr_1 = [field, "s!" + field, "a!" + field, "m!" + field, "x!" + field];
4734
- var i = aggregateFields_1.findIndex(function (f) { return arr_1.includes(f); });
4735
- if (i >= 0) {
4723
+ if (showTotalIndexArray.length > 0) {
4724
+ tableColumns.forEach(function (c, index) {
4725
+ if (index === 0) {
4736
4726
  table.totals[index] = {
4737
- label: aggregateValues_1[i].label,
4727
+ label: 'Total',
4738
4728
  };
4739
4729
  }
4740
4730
  else {
4741
- table.totals[index] = {
4742
- label: '-',
4743
- };
4731
+ var field = c.column;
4732
+ var arr_1 = [field, "s!" + field, "a!" + field, "m!" + field, "x!" + field];
4733
+ var i = aggregateFields_1.findIndex(function (f) { return arr_1.includes(f); });
4734
+ if (i >= 0) {
4735
+ table.totals[index] = {
4736
+ label: aggregateValues_1[i].label,
4737
+ };
4738
+ }
4739
+ else {
4740
+ table.totals[index] = {
4741
+ label: '-',
4742
+ };
4743
+ }
4744
4744
  }
4745
- }
4746
- });
4745
+ });
4746
+ }
4747
4747
  }
4748
4748
  else {
4749
4749
  var hash_1 = caculateTotal();