NuclearDispersionSystem/ant-design-vue-jeecg/node_modules/vxe-table/lib/v-x-e-table/src/interceptor.js
2023-09-14 14:47:11 +08:00

57 lines
1.4 KiB
Java

"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _xeUtils = _interopRequireDefault(require("xe-utils/methods/xe-utils"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function toType(type) {
return _xeUtils.default.toString(type).replace('_', '').toLowerCase();
}
var eventTypes = 'created,mounted,activated,beforeDestroy,destroyed,event.clearActived,event.clearFilter,event.showMenu,event.keydown,event.export,event.import'.split(',').map(toType);
var storeMap = {};
var interceptor = {
mixin: function mixin(map) {
_xeUtils.default.each(map, function (evntFn, type) {
return interceptor.add(type, evntFn);
});
return interceptor;
},
get: function get(type) {
return storeMap[toType(type)] || [];
},
add: function add(type, evntFn) {
type = toType(type);
if (evntFn && eventTypes.indexOf(type) > -1) {
var eList = storeMap[type];
if (!eList) {
eList = storeMap[type] = [];
}
eList.push(evntFn);
}
return interceptor;
},
delete: function _delete(type, evntFn) {
var eList = storeMap[toType(type)];
if (eList) {
_xeUtils.default.remove(eList, function (fn) {
return fn === evntFn;
});
}
return interceptor;
}
};
var _default = interceptor;
exports.default = _default;