dtable-utils
Version:
dtable common utils
68 lines (65 loc) • 5.73 kB
JavaScript
import _defineProperty from '@babel/runtime/helpers/defineProperty';
import { CellType } from '../cell-type.js';
import { FILTER_TERM_MODIFIER_TYPE } from './filter-modifier.js';
import { FILTER_PREDICATE_TYPE } from './filter-predicate.js';
var _FILTER_COLUMN_OPTION;
var textPredicates = [FILTER_PREDICATE_TYPE.CONTAINS, FILTER_PREDICATE_TYPE.NOT_CONTAIN, FILTER_PREDICATE_TYPE.IS, FILTER_PREDICATE_TYPE.IS_NOT, FILTER_PREDICATE_TYPE.EMPTY, FILTER_PREDICATE_TYPE.NOT_EMPTY, FILTER_PREDICATE_TYPE.IS_CURRENT_USER_ID];
var numberPredicates = [FILTER_PREDICATE_TYPE.EQUAL, FILTER_PREDICATE_TYPE.NOT_EQUAL, FILTER_PREDICATE_TYPE.LESS, FILTER_PREDICATE_TYPE.GREATER, FILTER_PREDICATE_TYPE.LESS_OR_EQUAL, FILTER_PREDICATE_TYPE.GREATER_OR_EQUAL, FILTER_PREDICATE_TYPE.EMPTY, FILTER_PREDICATE_TYPE.NOT_EMPTY];
var datePredicates = [FILTER_PREDICATE_TYPE.IS, FILTER_PREDICATE_TYPE.IS_WITHIN, FILTER_PREDICATE_TYPE.IS_BEFORE, FILTER_PREDICATE_TYPE.IS_AFTER, FILTER_PREDICATE_TYPE.IS_ON_OR_BEFORE, FILTER_PREDICATE_TYPE.IS_ON_OR_AFTER, FILTER_PREDICATE_TYPE.IS_NOT, FILTER_PREDICATE_TYPE.EMPTY, FILTER_PREDICATE_TYPE.NOT_EMPTY];
var geolocationPredicates = textPredicates.filter(function (predicate) {
return predicate !== FILTER_PREDICATE_TYPE.IS_CURRENT_USER_ID;
});
var dateTermModifiers = [FILTER_TERM_MODIFIER_TYPE.TODAY, FILTER_TERM_MODIFIER_TYPE.TOMORROW, FILTER_TERM_MODIFIER_TYPE.YESTERDAY, FILTER_TERM_MODIFIER_TYPE.ONE_WEEK_AGO, FILTER_TERM_MODIFIER_TYPE.ONE_WEEK_FROM_NOW, FILTER_TERM_MODIFIER_TYPE.ONE_MONTH_AGO, FILTER_TERM_MODIFIER_TYPE.ONE_MONTH_FROM_NOW, FILTER_TERM_MODIFIER_TYPE.NUMBER_OF_DAYS_AGO, FILTER_TERM_MODIFIER_TYPE.NUMBER_OF_DAYS_FROM_NOW, FILTER_TERM_MODIFIER_TYPE.EXACT_DATE];
var FILTER_COLUMN_OPTIONS = (_FILTER_COLUMN_OPTION = {}, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_FILTER_COLUMN_OPTION, CellType.TEXT, {
filterPredicateList: textPredicates
}), CellType.NUMBER, {
filterPredicateList: numberPredicates
}), CellType.CHECKBOX, {
filterPredicateList: [FILTER_PREDICATE_TYPE.IS]
}), CellType.DATE, {
filterPredicateList: datePredicates,
filterTermModifierList: dateTermModifiers
}), CellType.CTIME, {
filterPredicateList: datePredicates,
filterTermModifierList: dateTermModifiers
}), CellType.MTIME, {
filterPredicateList: datePredicates,
filterTermModifierList: dateTermModifiers
}), CellType.SINGLE_SELECT, {
filterPredicateList: [FILTER_PREDICATE_TYPE.IS, FILTER_PREDICATE_TYPE.IS_NOT, FILTER_PREDICATE_TYPE.IS_ANY_OF, FILTER_PREDICATE_TYPE.IS_NONE_OF, FILTER_PREDICATE_TYPE.EMPTY, FILTER_PREDICATE_TYPE.NOT_EMPTY]
}), CellType.MULTIPLE_SELECT, {
filterPredicateList: [FILTER_PREDICATE_TYPE.HAS_ANY_OF, FILTER_PREDICATE_TYPE.HAS_ALL_OF, FILTER_PREDICATE_TYPE.HAS_NONE_OF, FILTER_PREDICATE_TYPE.IS_EXACTLY, FILTER_PREDICATE_TYPE.EMPTY, FILTER_PREDICATE_TYPE.NOT_EMPTY]
}), CellType.DEPARTMENT_SINGLE_SELECT, {
filterPredicateList: [FILTER_PREDICATE_TYPE.IS, FILTER_PREDICATE_TYPE.IS_NOT, FILTER_PREDICATE_TYPE.IS_ANY_OF, FILTER_PREDICATE_TYPE.IS_NONE_OF, FILTER_PREDICATE_TYPE.EMPTY, FILTER_PREDICATE_TYPE.NOT_EMPTY]
}), CellType.COLLABORATOR, {
filterPredicateList: [FILTER_PREDICATE_TYPE.HAS_ANY_OF, FILTER_PREDICATE_TYPE.HAS_ALL_OF, FILTER_PREDICATE_TYPE.HAS_NONE_OF, FILTER_PREDICATE_TYPE.IS_EXACTLY, FILTER_PREDICATE_TYPE.EMPTY, FILTER_PREDICATE_TYPE.NOT_EMPTY, FILTER_PREDICATE_TYPE.INCLUDE_ME]
}), _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_FILTER_COLUMN_OPTION, CellType.CREATOR, {
filterPredicateList: [FILTER_PREDICATE_TYPE.CONTAINS, FILTER_PREDICATE_TYPE.NOT_CONTAIN, FILTER_PREDICATE_TYPE.INCLUDE_ME, FILTER_PREDICATE_TYPE.IS, FILTER_PREDICATE_TYPE.IS_NOT]
}), CellType.GEOLOCATION, {
filterPredicateList: geolocationPredicates
}), CellType.FORMULA, {}), CellType.LINK_FORMULA, {}), CellType.LINK, {}), CellType.LAST_MODIFIER, {
filterPredicateList: [FILTER_PREDICATE_TYPE.CONTAINS, FILTER_PREDICATE_TYPE.NOT_CONTAIN, FILTER_PREDICATE_TYPE.INCLUDE_ME, FILTER_PREDICATE_TYPE.IS, FILTER_PREDICATE_TYPE.IS_NOT]
}), CellType.AUTO_NUMBER, {
filterPredicateList: [FILTER_PREDICATE_TYPE.CONTAINS, FILTER_PREDICATE_TYPE.NOT_CONTAIN, FILTER_PREDICATE_TYPE.IS, FILTER_PREDICATE_TYPE.IS_NOT]
}), CellType.EMAIL, {
filterPredicateList: [FILTER_PREDICATE_TYPE.CONTAINS, FILTER_PREDICATE_TYPE.NOT_CONTAIN, FILTER_PREDICATE_TYPE.IS, FILTER_PREDICATE_TYPE.IS_NOT, FILTER_PREDICATE_TYPE.EMPTY, FILTER_PREDICATE_TYPE.NOT_EMPTY]
}), CellType.URL, {
filterPredicateList: [FILTER_PREDICATE_TYPE.CONTAINS, FILTER_PREDICATE_TYPE.NOT_CONTAIN, FILTER_PREDICATE_TYPE.IS, FILTER_PREDICATE_TYPE.IS_NOT, FILTER_PREDICATE_TYPE.EMPTY, FILTER_PREDICATE_TYPE.NOT_EMPTY]
}), CellType.IMAGE, {
filterPredicateList: [FILTER_PREDICATE_TYPE.EMPTY, FILTER_PREDICATE_TYPE.NOT_EMPTY]
}), _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_FILTER_COLUMN_OPTION, CellType.FILE, {
filterPredicateList: [FILTER_PREDICATE_TYPE.EMPTY, FILTER_PREDICATE_TYPE.NOT_EMPTY]
}), CellType.LONG_TEXT, {
filterPredicateList: [FILTER_PREDICATE_TYPE.EMPTY, FILTER_PREDICATE_TYPE.NOT_EMPTY]
}), CellType.DURATION, {
filterPredicateList: numberPredicates
}), CellType.RATE, {
filterPredicateList: numberPredicates
}), CellType.DIGITAL_SIGN, {
filterPredicateList: [FILTER_PREDICATE_TYPE.EMPTY, FILTER_PREDICATE_TYPE.NOT_EMPTY]
}), CellType.STRING, {
filterPredicateList: textPredicates
}), CellType.BOOL, {
filterPredicateList: [FILTER_PREDICATE_TYPE.IS]
}));
export { FILTER_COLUMN_OPTIONS };