summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/pages/admin/application_settings/utils.js
blob: 5462a13d52375339a62177c16a0779140f61bb87 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import { includes } from 'lodash';
import { parseBoolean } from '~/lib/utils/common_utils';

/**
 * Returns a new dataset that has all the values of keys indicated in
 * booleanAttributes transformed by the parseBoolean() helper function
 *
 * @param {Object}
 * @returns {Object}
 */
export const getParsedDataset = ({ dataset = {}, booleanAttributes = [] } = {}) => {
  const parsedDataset = {};

  Object.keys(dataset).forEach((key) => {
    parsedDataset[key] = includes(booleanAttributes, key)
      ? parseBoolean(dataset[key])
      : dataset[key];
  });

  return parsedDataset;
};