UNPKG

fedapay-cli

Version:
65 lines (64 loc) 2.46 kB
"use strict"; 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;