UNPKG

@gooddata/react-components

Version:

GoodData.UI - A powerful JavaScript library for building analytical applications

141 lines 4.94 kB
"use strict"; var __assign = (this && this.__assign) || function () { __assign = Object.assign || function(t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; return __assign.apply(this, arguments); }; Object.defineProperty(exports, "__esModule", { value: true }); var utils_1 = require("./utils"); function positiveAttributeFilter(qualifier, inValues, textFilter) { return { positiveAttributeFilter: __assign({ displayForm: utils_1.getObjQualifier(qualifier), in: inValues }, (textFilter && { textFilter: textFilter })), }; } exports.positiveAttributeFilter = positiveAttributeFilter; function negativeAttributeFilter(qualifier, notInValues, textFilter) { return { negativeAttributeFilter: __assign({ displayForm: utils_1.getObjQualifier(qualifier), notIn: notInValues }, (textFilter && { textFilter: textFilter })), }; } exports.negativeAttributeFilter = negativeAttributeFilter; function absoluteDateFilter(dataSet, from, to) { return { absoluteDateFilter: { dataSet: utils_1.getObjQualifier(dataSet), from: from, to: to, }, }; } exports.absoluteDateFilter = absoluteDateFilter; function relativeDateFilter(dataSet, granularity, from, to) { return { relativeDateFilter: { dataSet: utils_1.getObjQualifier(dataSet), granularity: granularity, from: from, to: to, }, }; } exports.relativeDateFilter = relativeDateFilter; var AttributeFilterBuilder = /** @class */ (function () { function AttributeFilterBuilder(qualifier) { this.qualifier = qualifier; this.qualifier = qualifier; } /** * Creates a new positive attribute value filter for the specified display form. Only attribute elements * matching the specified values will be included in the results. * * @param values textual values of the attribute elements */ AttributeFilterBuilder.prototype.in = function () { var values = []; for (var _i = 0; _i < arguments.length; _i++) { values[_i] = arguments[_i]; } return { positiveAttributeFilter: { displayForm: utils_1.getObjQualifier(this.qualifier), in: values, textFilter: true, }, }; }; /** * Creates a new negative attribute value filter for the specified display form. Attribute elements matching * the specified values will be excluded from the results. * * @param values textual values of the attribute elements */ AttributeFilterBuilder.prototype.notIn = function () { var values = []; for (var _i = 0; _i < arguments.length; _i++) { values[_i] = arguments[_i]; } return { negativeAttributeFilter: { displayForm: utils_1.getObjQualifier(this.qualifier), notIn: values, textFilter: true, }, }; }; /** * Creates a new positive attribute URI filter for the specified display form. Attribute elements with the * specified URIs will be included in the results. * * @param uris URIs of attribute elements */ AttributeFilterBuilder.prototype.inUris = function () { var uris = []; for (var _i = 0; _i < arguments.length; _i++) { uris[_i] = arguments[_i]; } return { positiveAttributeFilter: { displayForm: utils_1.getObjQualifier(this.qualifier), in: uris, textFilter: false, }, }; }; /** * Creates a new negative attribute URI filter for the specified display form. Attribute elements matching * the specified URIs will be excluded from the results. * * @param uris URIs of attribute elements */ AttributeFilterBuilder.prototype.notInUris = function () { var uris = []; for (var _i = 0; _i < arguments.length; _i++) { uris[_i] = arguments[_i]; } return { negativeAttributeFilter: { displayForm: utils_1.getObjQualifier(this.qualifier), notIn: uris, textFilter: false, }, }; }; return AttributeFilterBuilder; }()); exports.AttributeFilterBuilder = AttributeFilterBuilder; /** * Starts building a new attribute filter for the display for with the provided qualifier. * * @param qualifier URI or identifier of display form to filter on */ function attributeFilter(qualifier) { return new AttributeFilterBuilder(qualifier); } exports.attributeFilter = attributeFilter; //# sourceMappingURL=filters.js.map