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