spice-js 2.6.1 → 2.6.3

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.
@@ -759,6 +759,20 @@ class SpiceModel {
759
759
  var _this10 = this;
760
760
 
761
761
  return _asyncToGenerator(function* () {
762
+ function filterResultsByColumns(data, columns) {
763
+ if (columns && columns != "") {
764
+ columns = columns.replace(/`/g, "");
765
+ columns = columns.replace(/meta\(\)\.id/g, "id");
766
+ var columnList = columns.split(","); // Convert comma-separated string to array
767
+
768
+ columnList.push("_permissions"); // Always include _permissions
769
+
770
+ return _.map(data, entry => _.pick(entry, columnList));
771
+ }
772
+
773
+ return data;
774
+ }
775
+
762
776
  try {
763
777
  if (!args) {
764
778
  args = {};
@@ -868,6 +882,8 @@ class SpiceModel {
868
882
  console.log(e);
869
883
  }
870
884
 
885
+ results.data = filterResultsByColumns(results.data, args.columns); //console.log("Trimmed Results", trimmed_results);
886
+
871
887
  return results;
872
888
  } catch (e) {
873
889
  console.log(e.stack);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "spice-js",
3
- "version": "2.6.1",
3
+ "version": "2.6.3",
4
4
  "description": "spice",
5
5
  "main": "build/index.js",
6
6
  "repository": {
@@ -679,6 +679,16 @@ export default class SpiceModel {
679
679
  }
680
680
 
681
681
  async list(args) {
682
+ function filterResultsByColumns(data, columns) {
683
+ if (columns && columns != "") {
684
+ columns = columns.replace(/`/g, "");
685
+ columns = columns.replace(/meta\(\)\.id/g, "id");
686
+ let columnList = columns.split(","); // Convert comma-separated string to array
687
+ columnList.push("_permissions"); // Always include _permissions
688
+ return _.map(data, (entry) => _.pick(entry, columnList));
689
+ }
690
+ return data;
691
+ }
682
692
  try {
683
693
  if (!args) {
684
694
  args = {};
@@ -832,7 +842,8 @@ export default class SpiceModel {
832
842
  } catch (e) {
833
843
  console.log(e);
834
844
  }
835
-
845
+ results.data = filterResultsByColumns(results.data, args.columns);
846
+ //console.log("Trimmed Results", trimmed_results);
836
847
  return results;
837
848
  } catch (e) {
838
849
  console.log(e.stack);