@phoenix-cg/v-filters 0.2.0-beta.1 → 0.2.0-beta.4

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@phoenix-cg/v-filters",
3
- "version": "0.2.0-beta.1",
3
+ "version": "0.2.0-beta.4",
4
4
  "private": false,
5
5
  "scripts": {
6
6
  "serve": "vue-cli-service serve",
@@ -60,7 +60,7 @@
60
60
  </template>
61
61
 
62
62
  <script>
63
- import { declension } from '@phoenix-cg/utils'
63
+ import { declension, getType } from '@phoenix-cg/utils'
64
64
  import queryString from 'query-string'
65
65
  import { equals } from 'ramda'
66
66
 
@@ -122,6 +122,10 @@ export default {
122
122
  fieldKey: {
123
123
  type: [String, Number],
124
124
  default: '1'
125
+ },
126
+ alwaysSendFields: {
127
+ type: Array,
128
+ default: () => []
125
129
  }
126
130
  },
127
131
  data () {
@@ -148,9 +152,12 @@ export default {
148
152
  },
149
153
  flatFilters () {
150
154
  let filters = {}
155
+ const fieldsToInclude = [...this.editedFields, ...this.alwaysSendFields]
151
156
  Object.keys(this.filters).forEach(name => {
152
- if (this.editedFields.includes(name)) {
153
- filters[name] = this.filters[name].map(value => value._id || value)
157
+ if (fieldsToInclude.includes(name)) {
158
+ const filtersValue = this.filters[name]
159
+ const wrappedValue = getType(filtersValue) === 'Object' ? [filtersValue] : filtersValue
160
+ filters[name] = wrappedValue.map(value => value._id || value)
154
161
  }
155
162
  })
156
163
  return filters
@@ -218,7 +225,7 @@ export default {
218
225
  },
219
226
  resetFilters () {
220
227
  this.editedFields = []
221
- this.$emit('reset-filters')
228
+ this.$emit('reset-filters', this.flatFilters)
222
229
  },
223
230
  addEditedField (name) {
224
231
  if (!this.editedFields.includes(name)) {