@xuda.io/xuda-dbs-plugin-xuda 1.0.135 → 1.0.136

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.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/studio.mjs +4 -323
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xuda.io/xuda-dbs-plugin-xuda",
3
- "version": "1.0.135",
3
+ "version": "1.0.136",
4
4
  "description": "Xuda Database Socket for Xuda's proprietary structure powered by CouchDB",
5
5
  "scripts": {
6
6
  "pub": "npm version patch --force && npm publish --access public"
package/studio.mjs CHANGED
@@ -722,329 +722,6 @@ const query_db = async function (e, db, table_obj) {
722
722
  return raw_data();
723
723
  };
724
724
 
725
- // var limit = 99999;
726
- // var skip = 0;
727
-
728
- // if (e.limit) {
729
- // limit = Number(e.limit);
730
- // }
731
-
732
- // if (e.skip) {
733
- // skip = JSON.parse(e.skip);
734
- // }
735
-
736
- // var fields = [];
737
- // if (e.fields) {
738
- // for (const [key, val] of Object.entries(
739
- // typeof e.fields === "string" ? e.fields.split(",") : e.fields
740
- // )) {
741
- // fields.push(val);
742
- // }
743
- // } else {
744
- // for (const [key, val] of Object.entries(table_obj.tableFields)) {
745
- // fields.push(val.data.field_id);
746
- // }
747
- // }
748
-
749
- // var data = {};
750
- // var from = e.filter_from ? JSON.parse(e.filter_from) : {};
751
- // var to = e.filter_to ? JSON.parse(e.filter_to) : {};
752
- // var sort = [];
753
- // for (const [key, val] of Object.entries(from)) {
754
- // var field_name = key;
755
-
756
- // sort.push(field_name);
757
-
758
- // if (val === to[key]) {
759
- // data[field_name] = val;
760
- // } else {
761
- // data[field_name] = { $gte: val };
762
- // }
763
- // }
764
-
765
- // for (const [key, val] of Object.entries(to)) {
766
- // var field_name = key;
767
-
768
- // if (val !== from[key]) {
769
- // data[field_name]["$lte"] = val;
770
- // }
771
- // }
772
-
773
- // var selector = {};
774
-
775
- // if (from && !_.isEmpty(from)) {
776
- // selector = data;
777
- // }
778
-
779
- // var opt = {
780
- // selector,
781
- // limit: limit,
782
- // skip: skip,
783
- // fields: fields,
784
- // };
785
-
786
- // if (sort.length) {
787
- // opt.sort = sort;
788
- // }
789
-
790
- // if (e?.sort_fields?.length) {
791
- // opt.sort = e.sort_fields;
792
- // if (opt.sort) {
793
- // for (const [key, val] of Object.entries(opt.sort)) {
794
- // var field_name = val.colId;
795
- // opt.sort[key] = {
796
- // ["udfData.data." + field_name]: val.sort,
797
- // };
798
- // }
799
- // }
800
- // }
801
-
802
- // if (e.grid_filter_info) {
803
- // for (const [key, val] of Object.entries(e.grid_filter_info)) {
804
- // var field_name = key;
805
- // var condition = "$and";
806
- // const make_selector = function (val) {
807
- // var value = "";
808
- // var operator = "";
809
- // var value_to = "";
810
- // var operator_to = "";
811
-
812
- // if (val.filterType === "date") {
813
- // var date = val.dateFrom.substr(0, 10);
814
- // switch (val.type) {
815
- // case "equals":
816
- // operator = "$regex";
817
- // value = `^${date}`;
818
- // break;
819
-
820
- // case "greaterThan":
821
- // operator = "$gt";
822
- // value = `${date}`;
823
- // break;
824
-
825
- // case "lessThan":
826
- // operator = "$lt";
827
- // value = `${date}`;
828
- // break;
829
-
830
- // case "blank":
831
- // operator = "$eq";
832
- // value = "";
833
- // break;
834
-
835
- // case "inRange":
836
- // operator = "$gte";
837
- // value = date;
838
- // operator_to = "$lte";
839
- // value_to = val.dateTo.substr(0, 10);
840
- // break;
841
-
842
- // case "notEqual":
843
- // operator = "$regex";
844
- // value = `^((?!${date}).)*$`;
845
- // break;
846
-
847
- // case "notBlank":
848
- // operator = "$ne";
849
- // value = "";
850
- // break;
851
-
852
- // default:
853
- // operator = "$regex";
854
- // value = `^${date}`;
855
- // }
856
- // }
857
-
858
- // if (val.filterType === "string" || val.filterType === "text") {
859
- // switch (val.type) {
860
- // case "contains":
861
- // operator = "$regex";
862
- // value = `${val.filter}`;
863
- // break;
864
-
865
- // case "notContains":
866
- // operator = "$regex";
867
- // value = `^((?!${val.filter}).)*$`;
868
- // break;
869
-
870
- // case "equals":
871
- // operator = "$eq";
872
- // value = `${val.filter}`;
873
- // break;
874
-
875
- // case "notEqual":
876
- // operator = "$ne";
877
- // value = `${val.filter}`;
878
- // break;
879
-
880
- // case "startsWith":
881
- // operator = "$regex";
882
- // value = `^${val.filter}`;
883
- // break;
884
-
885
- // case "endsWith":
886
- // operator = "$regex";
887
- // value = `${val.filter}$`;
888
- // break;
889
-
890
- // case "blank":
891
- // operator = "$eq";
892
- // value = "";
893
- // break;
894
-
895
- // case "notBlank":
896
- // operator = "$ne";
897
- // value = "";
898
- // break;
899
-
900
- // default:
901
- // value = "^" + val.filter;
902
- // }
903
- // }
904
-
905
- // if (val.filterType === "number") {
906
- // switch (val.type) {
907
- // case "equals":
908
- // operator = "$eq";
909
- // value = val.filter;
910
- // break;
911
-
912
- // case "notEqual":
913
- // operator = "$ne";
914
- // value = val.filter;
915
- // break;
916
-
917
- // case "lessThanOrEqual":
918
- // operator = "$lte";
919
- // value = val.filter;
920
- // break;
921
-
922
- // case "greaterThanOrEqual":
923
- // operator = "$gte";
924
- // value = val.filter;
925
- // break;
926
-
927
- // case "lessThan":
928
- // operator = "$lt";
929
- // value = val.filter;
930
- // break;
931
-
932
- // case "greaterThan":
933
- // operator = "$gt";
934
- // value = val.filter;
935
- // break;
936
-
937
- // case "blank":
938
- // operator = "$eq";
939
- // value = 0;
940
- // break;
941
-
942
- // case "notBlank":
943
- // operator = "$ne";
944
- // value = 0;
945
- // break;
946
-
947
- // case "inRange":
948
- // operator = "$gte";
949
- // value = val.filter;
950
- // operator_to = "$lte";
951
- // value_to = val.filterTo;
952
- // break;
953
-
954
- // default:
955
- // operator = "$eq";
956
- // value = val.filter;
957
- // }
958
- // }
959
- // if (!opt.selector[field_name]) {
960
- // opt.selector[field_name] = {};
961
- // }
962
- // if (!opt.selector[field_name][condition]) {
963
- // opt.selector[field_name][condition] = [];
964
- // }
965
- // opt.selector[field_name][condition].push({
966
- // [operator]: value,
967
- // });
968
-
969
- // if (operator_to) {
970
- // opt.selector[field_name][condition].push({
971
- // [operator_to]: value_to,
972
- // });
973
- // }
974
- // };
975
-
976
- // if (!val.condition1) {
977
- // make_selector(val);
978
- // } else {
979
- // condition = "$" + val.operator.toLowerCase();
980
- // make_selector(val.condition1);
981
- // make_selector(val.condition2);
982
- // }
983
- // }
984
- // }
985
-
986
- // if (e.total_fields_info) {
987
- // fields = [];
988
- // for (const [key, val] of Object.entries(
989
- // JSON.parse(e.total_fields_info)
990
- // )) {
991
- // var field_name = val.field_id;
992
-
993
- // fields.push(field_name);
994
- // }
995
- // opt.fields = fields;
996
- // }
997
- // // fix names
998
-
999
- // for (const [key, val] of Object.entries(opt.fields)) {
1000
- // opt.fields[key] = "udfData.data." + val;
1001
- // }
1002
- // if (!e?.sort_fields?.length) {
1003
- // // added 2021 09 10
1004
- // if (opt.sort) {
1005
- // for (const [key, val] of Object.entries(opt.sort)) {
1006
- // opt.sort[key] = {
1007
- // ["udfData.data." + val]: e.sortOrder === "des" ? "desc" : "asc",
1008
- // };
1009
- // }
1010
- // }
1011
- // }
1012
-
1013
- // var selector_new = {};
1014
-
1015
- // for (const [key, val] of Object.entries(opt.selector)) {
1016
- // selector_new["udfData.data." + key] = val;
1017
- // }
1018
-
1019
- // if (e.viewDbQuery) {
1020
- // for (const [key, val] of Object.entries(table_obj.tableFields)) {
1021
- // if (e.viewDbQuery.includes(val.id)) {
1022
- // const replacer = new RegExp(val.id, "g");
1023
- // e.viewDbQuery = e.viewDbQuery.replace(
1024
- // replacer,
1025
- // "udfData.data." + val.data.field_id
1026
- // );
1027
- // }
1028
- // }
1029
-
1030
- // let viewDbQuery = JSON.parse(e.viewDbQuery.replace(/\\/g, ""));
1031
-
1032
- // for (const [key, val] of Object.entries(viewDbQuery)) {
1033
- // selector_new[key] = val;
1034
- // }
1035
- // }
1036
-
1037
- // opt.selector = selector_new;
1038
- // opt.selector["udfData.udffileid"] = e.table_id;
1039
- // opt.selector.stat = e.archived ? 4 : 3;
1040
-
1041
- // opt.fields.push("_id");
1042
- // opt.fields.push("_rev");
1043
-
1044
- // if (e.selector) {
1045
- // opt.selector = { ...e.selector, ...opt.selector };
1046
- // }
1047
-
1048
725
  // xuda
1049
726
 
1050
727
  try {
@@ -1099,6 +776,10 @@ const query_db = async function (e, db, table_obj) {
1099
776
 
1100
777
  try {
1101
778
  const result = await db.createIndex(mango_index_obj);
779
+ db.on("indexing", function (event) {
780
+ // called when indexes are updated
781
+ console.log("indexes event", event);
782
+ });
1102
783
 
1103
784
  const doc = await db.find(opt);
1104
785
  return await done(doc);