@phoenix-cg/v-filters 0.2.12 → 0.2.14

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.
@@ -187,6 +187,23 @@ exports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnProper
187
187
  };
188
188
 
189
189
 
190
+ /***/ }),
191
+
192
+ /***/ "07ac":
193
+ /***/ (function(module, exports, __webpack_require__) {
194
+
195
+ var $ = __webpack_require__("23e7");
196
+ var $values = __webpack_require__("6f53").values;
197
+
198
+ // `Object.values` method
199
+ // https://tc39.es/ecma262/#sec-object.values
200
+ $({ target: 'Object', stat: true }, {
201
+ values: function values(O) {
202
+ return $values(O);
203
+ }
204
+ });
205
+
206
+
190
207
  /***/ }),
191
208
 
192
209
  /***/ "0cfb":
@@ -1192,6 +1209,23 @@ module.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undef
1192
1209
  };
1193
1210
 
1194
1211
 
1212
+ /***/ }),
1213
+
1214
+ /***/ "4fad":
1215
+ /***/ (function(module, exports, __webpack_require__) {
1216
+
1217
+ var $ = __webpack_require__("23e7");
1218
+ var $entries = __webpack_require__("6f53").entries;
1219
+
1220
+ // `Object.entries` method
1221
+ // https://tc39.es/ecma262/#sec-object.entries
1222
+ $({ target: 'Object', stat: true }, {
1223
+ entries: function entries(O) {
1224
+ return $entries(O);
1225
+ }
1226
+ });
1227
+
1228
+
1195
1229
  /***/ }),
1196
1230
 
1197
1231
  /***/ "50c4":
@@ -1529,6 +1563,45 @@ var TEMPLATE = String(String).split('String');
1529
1563
  });
1530
1564
 
1531
1565
 
1566
+ /***/ }),
1567
+
1568
+ /***/ "6f53":
1569
+ /***/ (function(module, exports, __webpack_require__) {
1570
+
1571
+ var DESCRIPTORS = __webpack_require__("83ab");
1572
+ var objectKeys = __webpack_require__("df75");
1573
+ var toIndexedObject = __webpack_require__("fc6a");
1574
+ var propertyIsEnumerable = __webpack_require__("d1e7").f;
1575
+
1576
+ // `Object.{ entries, values }` methods implementation
1577
+ var createMethod = function (TO_ENTRIES) {
1578
+ return function (it) {
1579
+ var O = toIndexedObject(it);
1580
+ var keys = objectKeys(O);
1581
+ var length = keys.length;
1582
+ var i = 0;
1583
+ var result = [];
1584
+ var key;
1585
+ while (length > i) {
1586
+ key = keys[i++];
1587
+ if (!DESCRIPTORS || propertyIsEnumerable.call(O, key)) {
1588
+ result.push(TO_ENTRIES ? [key, O[key]] : O[key]);
1589
+ }
1590
+ }
1591
+ return result;
1592
+ };
1593
+ };
1594
+
1595
+ module.exports = {
1596
+ // `Object.entries` method
1597
+ // https://tc39.es/ecma262/#sec-object.entries
1598
+ entries: createMethod(true),
1599
+ // `Object.values` method
1600
+ // https://tc39.es/ecma262/#sec-object.values
1601
+ values: createMethod(false)
1602
+ };
1603
+
1604
+
1532
1605
  /***/ }),
1533
1606
 
1534
1607
  /***/ "7156":
@@ -2171,35 +2244,6 @@ module.exports = Object.create || function create(O, Properties) {
2171
2244
  };
2172
2245
 
2173
2246
 
2174
- /***/ }),
2175
-
2176
- /***/ "7db0":
2177
- /***/ (function(module, exports, __webpack_require__) {
2178
-
2179
- "use strict";
2180
-
2181
- var $ = __webpack_require__("23e7");
2182
- var $find = __webpack_require__("b727").find;
2183
- var addToUnscopables = __webpack_require__("44d2");
2184
-
2185
- var FIND = 'find';
2186
- var SKIPS_HOLES = true;
2187
-
2188
- // Shouldn't skip holes
2189
- if (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; });
2190
-
2191
- // `Array.prototype.find` method
2192
- // https://tc39.es/ecma262/#sec-array.prototype.find
2193
- $({ target: 'Array', proto: true, forced: SKIPS_HOLES }, {
2194
- find: function find(callbackfn /* , that = undefined */) {
2195
- return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
2196
- }
2197
- });
2198
-
2199
- // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
2200
- addToUnscopables(FIND);
2201
-
2202
-
2203
2247
  /***/ }),
2204
2248
 
2205
2249
  /***/ "7dd0":
@@ -5983,7 +6027,7 @@ if (typeof window !== 'undefined') {
5983
6027
  // Indicate to webpack that this file can be concatenated
5984
6028
  /* harmony default export */ var setPublicPath = (null);
5985
6029
 
5986
- // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"22714775-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/VFilters.vue?vue&type=template&id=10a7cb7b&
6030
+ // CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{"cacheDirectory":"node_modules/.cache/vue-loader","cacheIdentifier":"22714775-vue-loader-template"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/components/VFilters.vue?vue&type=template&id=02ebe153&
5987
6031
  var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"v-filters"},[_c('div',{staticClass:"v-filters_fields"},[_vm._t("before-fields"),_vm._l((_vm.fields),function(field){return _c(_vm.fieldComponentName,{key:field._name,tag:"component",class:[("__" + (field._name))],attrs:{"title":field.title}},[_c(_vm.componentsMap[field._type],_vm._b({key:_vm.fieldKey,tag:"component",on:{"input":function($event){return _vm.handleFieldChange(field._name, $event)}},model:{value:(_vm.filters[field._name]),callback:function ($$v) {_vm.$set(_vm.filters, field._name, $$v)},expression:"filters[field._name]"}},'component',_vm.getFieldProps(field),false))],1)}),_vm._t("after-fields"),_vm._t("actions",[_c(_vm.fieldComponentName,{tag:"component"},[(!_vm.immediate)?_c('button',{staticClass:"v-button v-filters_button",on:{"click":_vm.showResult}},[_vm._v(" "+_vm._s(_vm.actionTitle)+" ")]):_vm._e(),(_vm.edited)?_c('button',{staticClass:"v-button v-filters_button __reset",on:{"click":_vm.resetFilters}},[_vm._v(" Сбросить параметры ")]):_vm._e()])],null,{
5988
6032
  showResult: _vm.showResult,
5989
6033
  resetFilters: _vm.resetFilters,
@@ -6000,7 +6044,7 @@ var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._sel
6000
6044
  var staticRenderFns = []
6001
6045
 
6002
6046
 
6003
- // CONCATENATED MODULE: ./src/components/VFilters.vue?vue&type=template&id=10a7cb7b&
6047
+ // CONCATENATED MODULE: ./src/components/VFilters.vue?vue&type=template&id=02ebe153&
6004
6048
 
6005
6049
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.promise.js
6006
6050
  var es_promise = __webpack_require__("e6cf");
@@ -6047,9 +6091,20 @@ function _asyncToGenerator(fn) {
6047
6091
  });
6048
6092
  };
6049
6093
  }
6050
- // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js
6051
- function _arrayWithHoles(arr) {
6052
- if (Array.isArray(arr)) return arr;
6094
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js
6095
+ function _arrayLikeToArray(arr, len) {
6096
+ if (len == null || len > arr.length) len = arr.length;
6097
+
6098
+ for (var i = 0, arr2 = new Array(len); i < len; i++) {
6099
+ arr2[i] = arr[i];
6100
+ }
6101
+
6102
+ return arr2;
6103
+ }
6104
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js
6105
+
6106
+ function _arrayWithoutHoles(arr) {
6107
+ if (Array.isArray(arr)) return _arrayLikeToArray(arr);
6053
6108
  }
6054
6109
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.symbol.js
6055
6110
  var es_symbol = __webpack_require__("a4d3");
@@ -6069,39 +6124,20 @@ var es_array_iterator = __webpack_require__("e260");
6069
6124
  // EXTERNAL MODULE: ./node_modules/core-js/modules/web.dom-collections.iterator.js
6070
6125
  var web_dom_collections_iterator = __webpack_require__("ddb0");
6071
6126
 
6072
- // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js
6127
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.from.js
6128
+ var es_array_from = __webpack_require__("a630");
6073
6129
 
6130
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArray.js
6074
6131
 
6075
6132
 
6076
6133
 
6077
6134
 
6078
6135
 
6079
6136
 
6080
- function _iterableToArrayLimit(arr, i) {
6081
- if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return;
6082
- var _arr = [];
6083
- var _n = true;
6084
- var _d = false;
6085
- var _e = undefined;
6086
6137
 
6087
- try {
6088
- for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {
6089
- _arr.push(_s.value);
6090
6138
 
6091
- if (i && _arr.length === i) break;
6092
- }
6093
- } catch (err) {
6094
- _d = true;
6095
- _e = err;
6096
- } finally {
6097
- try {
6098
- if (!_n && _i["return"] != null) _i["return"]();
6099
- } finally {
6100
- if (_d) throw _e;
6101
- }
6102
- }
6103
-
6104
- return _arr;
6139
+ function _iterableToArray(iter) {
6140
+ if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter);
6105
6141
  }
6106
6142
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.slice.js
6107
6143
  var es_array_slice = __webpack_require__("fb6a");
@@ -6109,19 +6145,6 @@ var es_array_slice = __webpack_require__("fb6a");
6109
6145
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.function.name.js
6110
6146
  var es_function_name = __webpack_require__("b0c0");
6111
6147
 
6112
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.from.js
6113
- var es_array_from = __webpack_require__("a630");
6114
-
6115
- // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js
6116
- function _arrayLikeToArray(arr, len) {
6117
- if (len == null || len > arr.length) len = arr.length;
6118
-
6119
- for (var i = 0, arr2 = new Array(len); i < len; i++) {
6120
- arr2[i] = arr[i];
6121
- }
6122
-
6123
- return arr2;
6124
- }
6125
6148
  // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js
6126
6149
 
6127
6150
 
@@ -6137,35 +6160,6 @@ function _unsupportedIterableToArray(o, minLen) {
6137
6160
  if (n === "Map" || n === "Set") return Array.from(o);
6138
6161
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
6139
6162
  }
6140
- // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js
6141
- function _nonIterableRest() {
6142
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
6143
- }
6144
- // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js
6145
-
6146
-
6147
-
6148
-
6149
- function _slicedToArray(arr, i) {
6150
- return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
6151
- }
6152
- // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js
6153
-
6154
- function _arrayWithoutHoles(arr) {
6155
- if (Array.isArray(arr)) return _arrayLikeToArray(arr);
6156
- }
6157
- // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArray.js
6158
-
6159
-
6160
-
6161
-
6162
-
6163
-
6164
-
6165
-
6166
- function _iterableToArray(iter) {
6167
- if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter);
6168
- }
6169
6163
  // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js
6170
6164
  function _nonIterableSpread() {
6171
6165
  throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
@@ -6250,6 +6244,56 @@ function _objectSpread2(target) {
6250
6244
 
6251
6245
  return target;
6252
6246
  }
6247
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js
6248
+ function _arrayWithHoles(arr) {
6249
+ if (Array.isArray(arr)) return arr;
6250
+ }
6251
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js
6252
+
6253
+
6254
+
6255
+
6256
+
6257
+
6258
+
6259
+ function _iterableToArrayLimit(arr, i) {
6260
+ if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return;
6261
+ var _arr = [];
6262
+ var _n = true;
6263
+ var _d = false;
6264
+ var _e = undefined;
6265
+
6266
+ try {
6267
+ for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {
6268
+ _arr.push(_s.value);
6269
+
6270
+ if (i && _arr.length === i) break;
6271
+ }
6272
+ } catch (err) {
6273
+ _d = true;
6274
+ _e = err;
6275
+ } finally {
6276
+ try {
6277
+ if (!_n && _i["return"] != null) _i["return"]();
6278
+ } finally {
6279
+ if (_d) throw _e;
6280
+ }
6281
+ }
6282
+
6283
+ return _arr;
6284
+ }
6285
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js
6286
+ function _nonIterableRest() {
6287
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
6288
+ }
6289
+ // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js
6290
+
6291
+
6292
+
6293
+
6294
+ function _slicedToArray(arr, i) {
6295
+ return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
6296
+ }
6253
6297
  // EXTERNAL MODULE: ./node_modules/regenerator-runtime/runtime.js
6254
6298
  var runtime = __webpack_require__("96cf");
6255
6299
 
@@ -6259,6 +6303,15 @@ var es_number_constructor = __webpack_require__("a9e3");
6259
6303
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.concat.js
6260
6304
  var es_array_concat = __webpack_require__("99af");
6261
6305
 
6306
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.reduce.js
6307
+ var es_array_reduce = __webpack_require__("13d5");
6308
+
6309
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.entries.js
6310
+ var es_object_entries = __webpack_require__("4fad");
6311
+
6312
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.values.js
6313
+ var es_object_values = __webpack_require__("07ac");
6314
+
6262
6315
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.includes.js
6263
6316
  var es_array_includes = __webpack_require__("caad");
6264
6317
 
@@ -6268,15 +6321,9 @@ var es_string_includes = __webpack_require__("2532");
6268
6321
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.map.js
6269
6322
  var es_array_map = __webpack_require__("d81d");
6270
6323
 
6271
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.reduce.js
6272
- var es_array_reduce = __webpack_require__("13d5");
6273
-
6274
6324
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.regexp.to-string.js
6275
6325
  var es_regexp_to_string = __webpack_require__("25f0");
6276
6326
 
6277
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.find.js
6278
- var es_array_find = __webpack_require__("7db0");
6279
-
6280
6327
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.search.js
6281
6328
  var es_string_search = __webpack_require__("841c");
6282
6329
 
@@ -6786,6 +6833,7 @@ _curry2(function equals(a, b) {
6786
6833
 
6787
6834
 
6788
6835
 
6836
+
6789
6837
  //
6790
6838
  //
6791
6839
  //
@@ -6963,13 +7011,20 @@ var VFiltersvue_type_script_lang_js_unserialize = function unserialize(input) {
6963
7011
  },
6964
7012
  noDefaultValueForEmptyFields: {
6965
7013
  type: Boolean
7014
+ },
7015
+ fieldDeps: {
7016
+ type: Array,
7017
+ default: function _default() {
7018
+ return [];
7019
+ }
6966
7020
  }
6967
7021
  },
6968
7022
  data: function data() {
6969
7023
  return {
6970
7024
  filters: {},
6971
7025
  editedFields: [],
6972
- inited: false
7026
+ inited: false,
7027
+ initializedEmitted: false
6973
7028
  };
6974
7029
  },
6975
7030
  computed: {
@@ -6990,6 +7045,24 @@ var VFiltersvue_type_script_lang_js_unserialize = function unserialize(input) {
6990
7045
 
6991
7046
  return title;
6992
7047
  },
7048
+ fieldDepsMap: function fieldDepsMap() {
7049
+ var deps = this.fieldDeps;
7050
+
7051
+ if (deps.length) {
7052
+ return deps.reduce(function (acc, item) {
7053
+ Object.entries(item).forEach(function (_ref) {
7054
+ var _ref2 = _slicedToArray(_ref, 2),
7055
+ child = _ref2[0],
7056
+ parentVal = _ref2[1];
7057
+
7058
+ acc[child] = Object.values(parentVal)[0];
7059
+ });
7060
+ return acc;
7061
+ }, {});
7062
+ }
7063
+
7064
+ return deps;
7065
+ },
6993
7066
  flatFilters: function flatFilters() {
6994
7067
  var _this = this;
6995
7068
 
@@ -7132,26 +7205,51 @@ var VFiltersvue_type_script_lang_js_unserialize = function unserialize(input) {
7132
7205
  _this2.$set(_this2.filters, field._name, value);
7133
7206
  });
7134
7207
  this.inited = true;
7135
- !isUpdate && this.setUrlParams();
7136
- !isUpdate && this.doAction(true);
7208
+
7209
+ if (!isUpdate && this.initializedEmitted) {
7210
+ this.setUrlParams();
7211
+ this.doAction(true);
7212
+ }
7213
+
7214
+ if (!this.initializedEmitted) {
7215
+ this.setUrlParams(false, this.getInitialFlatFilters());
7216
+ this.$emit('fields-initialized', this.getInitialFlatFilters());
7217
+ this.initializedEmitted = true;
7218
+ }
7137
7219
  },
7138
- resetFilters: function resetFilters() {
7220
+ getInitialFlatFilters: function getInitialFlatFilters() {
7139
7221
  var _this3 = this;
7140
7222
 
7223
+ var filters = _objectSpread2({}, this.filterParamsToInclude);
7224
+
7225
+ this.fields.forEach(function (field) {
7226
+ var value = _this3.filters[field._name];
7227
+
7228
+ if (!value || !value._id) {
7229
+ return;
7230
+ }
7231
+
7232
+ filters[field._name] = [value._id];
7233
+ });
7234
+ return filters;
7235
+ },
7236
+ resetFilters: function resetFilters() {
7237
+ var _this4 = this;
7238
+
7141
7239
  return _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
7142
7240
  return regeneratorRuntime.wrap(function _callee$(_context) {
7143
7241
  while (1) {
7144
7242
  switch (_context.prev = _context.next) {
7145
7243
  case 0:
7146
- _this3.editedFields = [];
7244
+ _this4.editedFields = [];
7147
7245
 
7148
- _this3.setUrlParams(true, {});
7246
+ _this4.setUrlParams(true, {});
7149
7247
 
7150
7248
  _context.next = 4;
7151
- return _this3.$nextTick();
7249
+ return _this4.$nextTick();
7152
7250
 
7153
7251
  case 4:
7154
- _this3.$emit('reset-filters', _this3.flatFilters);
7252
+ _this4.$emit('reset-filters', _this4.flatFilters);
7155
7253
 
7156
7254
  case 5:
7157
7255
  case "end":
@@ -7172,20 +7270,14 @@ var VFiltersvue_type_script_lang_js_unserialize = function unserialize(input) {
7172
7270
  });
7173
7271
  },
7174
7272
  removeDependentFieldsFromEdited: function removeDependentFieldsFromEdited(name) {
7175
- var field = this.fields.find(function (field) {
7176
- return field._name === name;
7273
+ var map = this.fieldDepsMap;
7274
+ if (!map) return;
7275
+ var toRemove = Object.keys(map).filter(function (child) {
7276
+ return map[child] === name;
7277
+ });
7278
+ this.editedFields = this.editedFields.filter(function (field) {
7279
+ return !toRemove.includes(field);
7177
7280
  });
7178
-
7179
- if (field.reset) {
7180
- var dependentFields = this.fields.filter(function (field) {
7181
- return !field.reset;
7182
- }).map(function (field) {
7183
- return field._name;
7184
- });
7185
- this.editedFields = this.editedFields.filter(function (fieldName) {
7186
- return !dependentFields.includes(fieldName);
7187
- });
7188
- }
7189
7281
  },
7190
7282
  doAction: function doAction() {
7191
7283
  var showResult = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;