fedapay-cli
Version:
A command-line tool for FedaPay
65 lines (64 loc) • 2.46 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
const jquery_deparam_1 = tslib_1.__importDefault(require("jquery-deparam"));
const jquery_param_1 = tslib_1.__importDefault(require("jquery-param"));
const query_string_1 = tslib_1.__importDefault(require("query-string"));
class DataFlagTransformer {
/**
* Use to parse string to Typescript Object
* @param {string|string[]} inputs The string array to transform
* @returns {Object} a ja
*/
static transform(inputs) {
if (!Array.isArray(inputs)) {
inputs = [inputs];
}
const data = inputs.join('&');
const obj = jquery_deparam_1.default(data);
return obj;
}
static transformFilters(inputs) {
const filters = DataFlagTransformer.transform(inputs);
const includes = {};
const compare = {};
for (const n in filters) {
if (typeof filters[n] === 'object') {
includes[n] = filters[n];
}
else {
compare[n] = { op: '=', value: filters[n] };
}
}
const filtersString = jquery_param_1.default({ filters: { includes, compare } });
return query_string_1.default.parse(filtersString);
}
static transformFilterForES(inputs) {
const filtersTransform = DataFlagTransformer.transform(inputs);
const filters = {};
for (const n in filtersTransform) {
if (n === 'type' || n === 'object_id' || n === 'object' || n === 'entity') {
filters[`filters[${n}]`] = filtersTransform[n];
}
}
const filtersString = jquery_param_1.default(filters);
return query_string_1.default.parse(filtersString);
}
static transformFiltersForES(inputs) {
const filters = DataFlagTransformer.transform(inputs);
const filtersObject = {};
for (const n in filters) {
if (typeof filters[n] !== 'object') {
const key = `filters[${n}]`;
filtersObject[key] = filters[n];
}
else {
const error = 'Invalid input. Check --help to see an exampple';
return error;
}
}
const filtersString = jquery_param_1.default(filtersObject);
return query_string_1.default.parse(filtersString);
}
}
exports.default = DataFlagTransformer;