@dile/crud 0.0.25 → 0.0.27

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.
@@ -7,6 +7,7 @@ export class DileAjax extends DileAxios(LitElement) {
7
7
  data: { type: Object },
8
8
  method: { type: String },
9
9
  url: { type: String },
10
+ statusSuccessCodes: { type: Array },
10
11
  }
11
12
  }
12
13
 
@@ -15,6 +16,7 @@ export class DileAjax extends DileAxios(LitElement) {
15
16
  this.data = {};
16
17
  this.method = 'post';
17
18
  this.url = '';
19
+ this.statusSuccessCodes = [200, 201];
18
20
  }
19
21
 
20
22
  generateRequest() {
@@ -39,7 +41,7 @@ export class DileAjax extends DileAxios(LitElement) {
39
41
  break
40
42
  }
41
43
  request.then((response) => {
42
- if(response.status == 200) {
44
+ if(this.statusSuccessCodes.includes(response.status)) {
43
45
  let res = response.data;
44
46
  if(res.error) {
45
47
  this.dispatchError(res.data);
@@ -53,7 +55,7 @@ export class DileAjax extends DileAxios(LitElement) {
53
55
  }));
54
56
  }
55
57
  } else {
56
- this.dispatchError('Bad server response');
58
+ this.dispatchError('Unhandled success server response');
57
59
  }
58
60
  })
59
61
  .catch(err => {
@@ -100,7 +100,11 @@ export class DileAjaxForm extends LitElement {
100
100
  }
101
101
 
102
102
  loadData() {
103
- this.ajaxget.generateRequest();
103
+ if(this.ajaxget) {
104
+ this.ajaxget.generateRequest();
105
+ } else {
106
+ setTimeout(() => this.loadData(), 100);
107
+ }
104
108
  }
105
109
 
106
110
  doAction() {
@@ -111,7 +115,7 @@ export class DileAjaxForm extends LitElement {
111
115
 
112
116
  doErrorGet(e) {
113
117
  this.responseAdapter.setResponse(e.detail);
114
- let msg = this.customMessage(false);
118
+ let msg = this._customErrorMessage();
115
119
  this.feedback.negativeFeedback(msg);
116
120
  this.dispatchEvent(new CustomEvent('dile-ajax-form-get-error', {
117
121
  bubbles: true,
@@ -141,7 +145,7 @@ export class DileAjaxForm extends LitElement {
141
145
 
142
146
  doErrorSave(e) {
143
147
  this.responseAdapter.setResponse(e.detail);
144
- let msg = this.customMessage(true);
148
+ let msg = this._customErrorMessage();
145
149
  this.feedback.negativeFeedbackWithDelay(msg, 5000);
146
150
  let validationErrors = this.responseAdapter.getValidationErrors();
147
151
  this.form.showErrors(validationErrors);
@@ -159,7 +163,7 @@ export class DileAjaxForm extends LitElement {
159
163
  doSuccessSave(e) {
160
164
  this.responseAdapter.setResponse(e.detail);
161
165
  let data = this.responseAdapter.getData();
162
- let msg = this.customMessage(true);
166
+ let msg = this._customSuccessMessage();
163
167
  this.feedback.positiveFeedbackWithDelay(msg, 5000);
164
168
  this.dispatchEvent(new CustomEvent('save-success', {
165
169
  bubbles: true,
@@ -202,7 +206,15 @@ export class DileAjaxForm extends LitElement {
202
206
  }
203
207
  }
204
208
 
205
- customMessage(success) {
209
+ _customErrorMessage() {
210
+ return this._customMessage(false);
211
+ }
212
+
213
+ _customSuccessMessage() {
214
+ return this._customMessage(true);
215
+ }
216
+
217
+ _customMessage(success) {
206
218
  let message = this.responseAdapter.getMessage();
207
219
  if(message) {
208
220
  return message;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dile/crud",
3
- "version": "0.0.25",
3
+ "version": "0.0.27",
4
4
  "description": "Components to create a generic crud system based on Web Components and Lit",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -31,5 +31,5 @@
31
31
  "publishConfig": {
32
32
  "access": "public"
33
33
  },
34
- "gitHead": "3061346aa41fd5a8715167c87144c5326446cd59"
34
+ "gitHead": "447a6986de20316e3d58fbc03f8b07f871b88be7"
35
35
  }