1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-01-01 00:08:27 +01:00
unleash.unleash/frontend/src/utils/sortStrategyParameters.ts
Christopher Kolstad 53354224fc
chore: Bump biome and configure husky (#6589)
Upgrades biome to 1.6.1, and updates husky pre-commit hook.

Most changes here are making type imports explicit.
2024-03-18 13:58:05 +01:00

25 lines
712 B
TypeScript

import type {
IFeatureStrategyParameters,
IStrategy,
IFeatureStrategy,
} from 'interfaces/strategy';
// Sort the keys in a parameters payload object by the
// order of the parameters in the strategy definition.
export const sortStrategyParameters = (
parameters: IFeatureStrategyParameters,
strategyDefinition: IStrategy,
): Partial<IFeatureStrategy> => {
const sortedParameterNames = strategyDefinition.parameters.map(
(parameter) => parameter.name,
);
return Object.fromEntries(
Object.entries(parameters).sort(
(a, b) =>
sortedParameterNames.indexOf(a[0]) -
sortedParameterNames.indexOf(b[0]),
),
);
};