@tripup-company/element-ui-extended 0.0.63 → 0.0.66

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.
@@ -1 +1 @@
1
- {"version":3,"file":"filter-convertor.d.ts","sourceRoot":"","sources":["../../../../src/components/GenericFilters/filter-convertor.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,OAAO,eAAe;IAGlC,WAAW,CAAC,MAAM,KAAA;;;;CAgBnB"}
1
+ {"version":3,"file":"filter-convertor.d.ts","sourceRoot":"","sources":["../../../../src/components/GenericFilters/filter-convertor.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,OAAO,eAAe;IAGlC,WAAW,CAAC,MAAM,KAAA;;;;CAiBnB"}
@@ -12,6 +12,7 @@ import { IsNotNullFilter } from "./filters/is-not-null-filter";
12
12
  import { BetweenFilter } from "./filters/between-filter";
13
13
  import { InFilter } from "./filters/in-filter";
14
14
  import { InObject } from "./filters/in-object";
15
+ import { InArrayOfObject } from "./filters/in-array-of-object";
15
16
  import { InArray } from "./filters/in-array";
16
17
  import { WeekDayFilter } from "./filters/week-day-filter";
17
18
  import { YoungerWeekFilter } from "./filters/younger-week-filter";
@@ -34,6 +35,7 @@ export default class FilterFactory {
34
35
  group_by_fields: (field: string, value: string) => GroupByFilter;
35
36
  in_object: (field: string, value: string) => InObject;
36
37
  in_array: (field: string, value: string) => InArray;
38
+ in_array_of_object: (field: string, value: string) => InArrayOfObject;
37
39
  };
38
40
  createFilter(field: any, condition: Condition): BaseFilter;
39
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"filter-factory.d.ts","sourceRoot":"","sources":["../../../../src/components/GenericFilters/filter-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,6BAA6B,EAAE,MAAM,4CAA4C,CAAC;AAC3F,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1D,MAAM,CAAC,OAAO,OAAO,aAAa;WAClB,oBAAoB;uBAEf,GAAG,SAAS,GAAG;2BACX,GAAG,SAAS,GAAG;0BAChB,GAAG,SAAS,GAAG;8BACX,GAAG,SAAS,GAAG;yBAEpB,GAAG,SAAS,GAAG;6BACX,GAAG,SAAS,GAAG;4BAEhB,GAAG,SAAS,GAAG;0BACjB,GAAG,SAAS,GAAG;6BACZ,GAAG,SAAS,GAAG;yBAEnB,MAAM,SAAS,MAAM;oBAE3B,MAAM,SAAQ,MAAM;yBACf,MAAM,SAAQ,MAAM;+BACd,MAAM,SAAQ,MAAM;iCAClB,MAAM,SAAQ,MAAM;2BAC1B,MAAM,SAAQ,MAAM;0BACrB,MAAM,SAAQ,MAAM;;IAGlC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,GAAG,UAAU;CAQlE"}
1
+ {"version":3,"file":"filter-factory.d.ts","sourceRoot":"","sources":["../../../../src/components/GenericFilters/filter-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,6BAA6B,EAAE,MAAM,4CAA4C,CAAC;AAC3F,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1D,MAAM,CAAC,OAAO,OAAO,aAAa;WAClB,oBAAoB;uBAEf,GAAG,SAAS,GAAG;2BACX,GAAG,SAAS,GAAG;0BAChB,GAAG,SAAS,GAAG;8BACX,GAAG,SAAS,GAAG;yBAEpB,GAAG,SAAS,GAAG;6BACX,GAAG,SAAS,GAAG;4BAEhB,GAAG,SAAS,GAAG;0BACjB,GAAG,SAAS,GAAG;6BACZ,GAAG,SAAS,GAAG;yBAEnB,MAAM,SAAS,MAAM;oBAE3B,MAAM,SAAQ,MAAM;yBACf,MAAM,SAAQ,MAAM;+BACd,MAAM,SAAQ,MAAM;iCAClB,MAAM,SAAQ,MAAM;2BAC1B,MAAM,SAAQ,MAAM;0BACrB,MAAM,SAAQ,MAAM;oCACV,MAAM,SAAQ,MAAM;;IAG5C,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,GAAG,UAAU;CAQlE"}
@@ -0,0 +1,7 @@
1
+ import { BaseFilter } from "./base-filter";
2
+ import { FilterResponse } from "./interfaces/filter-response";
3
+ export declare class InArrayOfObject extends BaseFilter {
4
+ protected operator: string;
5
+ applyFilter(): FilterResponse;
6
+ }
7
+ //# sourceMappingURL=in-array-of-object.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"in-array-of-object.d.ts","sourceRoot":"","sources":["../../../../../src/components/GenericFilters/filters/in-array-of-object.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AACzC,OAAO,EAAC,cAAc,EAAC,MAAM,8BAA8B,CAAC;AAE5D,qBAAa,eAAgB,SAAQ,UAAU;IAC7C,SAAS,CAAC,QAAQ,SAAwB;IACnC,WAAW,IAAI,cAAc;CAMrC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tripup-company/element-ui-extended",
3
- "version": "0.0.63",
3
+ "version": "0.0.66",
4
4
  "main": "./dist/element-ui-extended.umd.js",
5
5
  "scripts": {
6
6
  "serve": "vue-cli-service serve && tsc --emitDeclarationOnly",
@@ -13,7 +13,7 @@
13
13
  :span="24"
14
14
  class="p-b-10"
15
15
  >
16
- <el-select v-model="search.operator" placeholder="Select">
16
+ <el-select v-model="searchLocal.operator" placeholder="Select">
17
17
  <el-option
18
18
  v-for="operator in operators"
19
19
  :key="operator.value"
@@ -25,12 +25,12 @@
25
25
  <el-col :span="24">
26
26
  <el-input
27
27
  v-if="column.type === 'string'"
28
- v-show="!isDisableInput(search.operator)"
29
- v-model="search.value"
28
+ v-show="!isDisableInput(searchLocal.operator)"
29
+ v-model="searchLocal.value"
30
30
  />
31
31
  <el-date-picker
32
32
  v-else-if="column.type === 'date'"
33
- v-model="search.value"
33
+ v-model="searchLocal.value"
34
34
  class="w-100"
35
35
  end-placeholder="To"
36
36
  format="dd.MM.yy"
@@ -44,7 +44,7 @@
44
44
  <el-select
45
45
  refs="select"
46
46
  v-else
47
- v-model="search.value"
47
+ v-model="searchLocal.value"
48
48
  :multiple="isMultiple"
49
49
  placeholder="Select"
50
50
  :filterable="filterable"
@@ -67,7 +67,7 @@
67
67
  </template>
68
68
  <script>
69
69
  import { upperFirst } from 'lodash'
70
-
70
+ import Vue from "vue";
71
71
  export default {
72
72
  props: {
73
73
  column: {
@@ -82,6 +82,10 @@ export default {
82
82
  return {};
83
83
  },
84
84
  },
85
+ name: {
86
+ type: String,
87
+ default: '',
88
+ },
85
89
  },
86
90
  data() {
87
91
  const boolValues = [
@@ -90,6 +94,7 @@ export default {
90
94
  { value: false, name: "false" },
91
95
  ];
92
96
  return {
97
+ searchLocal: this.search,
93
98
  loading: false,
94
99
  selectKey: this.column.selectKey ?? "value",
95
100
  selectLabel: this.column.selectLabel ?? "name",
@@ -161,16 +166,27 @@ export default {
161
166
  watch: {
162
167
  showFilter() {
163
168
  if (this.showFilter === false) {
164
- this.search.operator = "";
165
- this.search.value = "";
166
- } else if (this.search.operator === "" && this.operators.length === 1) {
167
- this.search.operator = this.operators[0].value;
169
+ this.searchLocal.operator = "";
170
+ this.searchLocal.value = "";
171
+ } else if (this.searchLocal.operator === "" && this.operators.length === 1) {
172
+ this.searchLocal.operator = this.operators[0].value;
168
173
  }
169
174
  },
170
- search: {
175
+ search (newValue ) {
176
+ console.log('seach updated');
177
+ if (newValue !== this.search) {
178
+ this.searchLocal = Object.assign({}, this.search);
179
+ }
180
+
181
+ console.log(this.searchLocal);
182
+ },
183
+ searchLocal: {
171
184
  deep: true,
172
185
  handler() {
173
- if (this.search.operator == '') {
186
+ console.log('searchLocal updated');
187
+ this.$emit("update:search", { name: this.name, value: this.searchLocal});
188
+ console.log(this.searchLocal);
189
+ if (this.searchLocal.operator == '') {
174
190
  this.showFilter = false;
175
191
  }
176
192
  }
@@ -180,7 +196,7 @@ export default {
180
196
  isDisableInput(operator) {
181
197
  const disable = this.disabledInputOperations.includes(operator);
182
198
  if (disable) {
183
- this.search.value = "";
199
+ this.searchLocal.value = "";
184
200
  }
185
201
  return disable;
186
202
  },
@@ -191,7 +207,7 @@ export default {
191
207
  searchFields: this.selectLabel + ":like",
192
208
  });
193
209
  this.selectListLocal = response.data;
194
- this.search["selectList"] = response.data;
210
+ this.searchLocal["selectList"] = response.data;
195
211
  this.loading = false;
196
212
  },
197
213
  updateSearch(key) {
@@ -200,7 +216,7 @@ export default {
200
216
  for (const item of this.selectListLocal) {
201
217
  if (item[this.selectKey] === key) {
202
218
  obj[this.selectLabel] = item[this.selectLabel];
203
- this.search.selectList = [obj];
219
+ this.searchLocal.selectList = [obj];
204
220
  }
205
221
  }
206
222
  }
@@ -1,10 +1,12 @@
1
1
  <template>
2
2
  <el-card>
3
3
  <filter-row
4
- v-for="(column) in filters"
4
+ v-for="column in filters"
5
5
  :key="column.name"
6
+ :name="column.name"
6
7
  :column="column"
7
8
  :search="search[column.name]"
9
+ @search:upate="filterRowUpdate"
8
10
  />
9
11
  <el-button @click="applyFilter">Filter</el-button>
10
12
  <el-button @click="resetFilter">Reset filter</el-button>
@@ -16,15 +18,19 @@ import FilterRow from "./FilterRow";
16
18
  import FilterConverter from "./filter-convertor";
17
19
 
18
20
  export default {
19
- name: "GenericFilter",
21
+ name: "GenericFilter",
20
22
  props: {
21
23
  filters: {
22
24
  type: Array,
23
- default: () => { return {}}
25
+ default: () => {
26
+ return {};
27
+ },
24
28
  },
25
29
  search: {
26
30
  type: Object,
27
- default: () => { return {}}
31
+ default: () => {
32
+ return {};
33
+ },
28
34
  },
29
35
  },
30
36
  components: { FilterRow },
@@ -39,15 +45,17 @@ name: "GenericFilter",
39
45
  return this.filterConvertor.applyFilter(this.search);
40
46
  },
41
47
  applyFilter() {
42
- this.$emit('apply:filter', this.filterConvertor.applyFilter(this.search) );
48
+ console.log(this.search);
49
+ this.$emit("apply:filter", this.search);
43
50
  },
44
51
  resetFilter() {
45
- this.$emit('reset:filter', {});
52
+ this.$emit("reset:filter", {});
46
53
  },
47
- }
48
- }
54
+ filterRowUpdate(name, value) {
55
+ this.$set(this.search, name, value);
56
+ },
57
+ },
58
+ };
49
59
  </script>
50
60
 
51
- <style scoped>
52
-
53
- </style>
61
+ <style scoped></style>