ywana-core8 0.0.681 → 0.0.682

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.
@@ -5634,6 +5634,82 @@ var EditContentDialog = function EditContentDialog(_ref) {
5634
5634
  }));
5635
5635
  };
5636
5636
 
5637
+ /**
5638
+ * Collection API
5639
+ */
5640
+
5641
+ var CollectionAPI = function CollectionAPI(url, host) {
5642
+ var http = HTTPClient(host || window.API || process.env.REACT_APP_API, Session);
5643
+ /**
5644
+ * objectToQueryParamString
5645
+ *
5646
+ * @param {*} obj
5647
+ * @returns
5648
+ */
5649
+
5650
+ function objectToQueryParamString(obj, likes) {
5651
+ if (isEmpty(obj)) {
5652
+ return "";
5653
+ }
5654
+
5655
+ var notEmptyFields = Object.keys(obj).filter(function (key) {
5656
+ return !isEmpty(obj[key]);
5657
+ });
5658
+ var paramString = notEmptyFields.reduce(function (query, key) {
5659
+ var value = obj[key];
5660
+ var like = likes.includes(key) ? '%' : '';
5661
+
5662
+ if (Array.isArray(value)) {
5663
+ var values = value.map(function (v) {
5664
+ return key + "=" + like + v + like;
5665
+ }).join("&");
5666
+ return "" + query + values + "&";
5667
+ } else if (typeof value === "object") {
5668
+ var params = objectToQueryParamString(value, likes);
5669
+ params.split("&").forEach(function (param) {
5670
+ query = query.concat(key + "." + param + "&");
5671
+ });
5672
+ return query;
5673
+ } else {
5674
+ return "" + query + key + "=" + like + value + like + "&";
5675
+ }
5676
+ }, "");
5677
+ return paramString;
5678
+ }
5679
+
5680
+ return {
5681
+ all: function all(filters, likes, page) {
5682
+ var queryParams = page ? "?page=" + page + "&" : "?";
5683
+ var filterQuery = objectToQueryParamString(filters, likes);
5684
+ queryParams = "" + queryParams + filterQuery;
5685
+ queryParams = queryParams.substring(0, queryParams.length - 1);
5686
+ return http.GET("" + url + queryParams);
5687
+ },
5688
+ find: function find(id) {
5689
+ return http.GET(url + "/" + id);
5690
+ },
5691
+ create: function create(form) {
5692
+ var body = JSON.stringify(form);
5693
+ return http.POST(url, body);
5694
+ },
5695
+ update: function update(form) {
5696
+ var body = JSON.stringify(form);
5697
+ return http.PUT(url + "/" + form.id, body);
5698
+ },
5699
+ updateProperty: function updateProperty(id, propertyName, form) {
5700
+ var body = JSON.stringify(form);
5701
+ return http.PUT(url + "/" + id + "/" + propertyName, body);
5702
+ },
5703
+ patch: function patch(id, form) {
5704
+ var body = JSON.stringify(form);
5705
+ return http.PATCH(url + "/" + id, body);
5706
+ },
5707
+ remove: function remove(id) {
5708
+ return http.DELETE(url + "/" + id);
5709
+ }
5710
+ };
5711
+ };
5712
+
5637
5713
  /**
5638
5714
  * Collection Page
5639
5715
  */
@@ -6443,61 +6519,6 @@ var CollectionContext = function CollectionContext(url, field, host, page, fetch
6443
6519
  }
6444
6520
  };
6445
6521
  };
6446
- /**
6447
- * Collection API
6448
- */
6449
-
6450
- var CollectionAPI = function CollectionAPI(url, host) {
6451
- var http = HTTPClient(host || window.API || process.env.REACT_APP_API, Session);
6452
- return {
6453
- all: function all(filters, page) {
6454
- var queryParams = page ? "?page=" + page + "&" : "?";
6455
-
6456
- if (filters) {
6457
- var filterQuery = Object.keys(filters).reduce(function (query, key) {
6458
- var value = filters[key];
6459
-
6460
- if (typeof value === 'boolean') {
6461
- return query.concat(key + "=" + value + "&");
6462
- } else if (Array.isArray(value)) {
6463
- var param = value.length === 0 ? '' : value.reduce(function (param, item) {
6464
- param = param.concat(key + "=" + item + "&");
6465
- return param;
6466
- }, "");
6467
- return query.concat(param);
6468
- } else {
6469
- return query.concat(key + "=%" + filters[key] + "%&");
6470
- }
6471
- }, "");
6472
- queryParams = queryParams.concat(filterQuery);
6473
- }
6474
-
6475
- return http.GET(url + queryParams);
6476
- },
6477
- find: function find(id) {
6478
- return http.GET(url + "/" + id);
6479
- },
6480
- create: function create(form) {
6481
- var body = JSON.stringify(form);
6482
- return http.POST(url, body);
6483
- },
6484
- update: function update(form) {
6485
- var body = JSON.stringify(form);
6486
- return http.PUT(url + "/" + form.id, body);
6487
- },
6488
- patch: function patch(id, form) {
6489
- var body = JSON.stringify(form);
6490
- return http.PATCH(url + "/" + id, body);
6491
- },
6492
- updateProperty: function updateProperty(id, propertyName, form) {
6493
- var body = JSON.stringify(form);
6494
- return http.PUT(url + "/" + id + "/" + propertyName, body);
6495
- },
6496
- remove: function remove(id) {
6497
- return http.DELETE(url + "/" + id);
6498
- }
6499
- };
6500
- };
6501
6522
 
6502
6523
  var QUERY = {
6503
6524
  id: {