@openapi-qraft/react
Version:
OpenAPI client for React, providing type-safe requests and dynamic TanStack Query React Hooks via a modular, Proxy-based architecture.
39 lines (35 loc) • 1.32 kB
JavaScript
;
var composeMutationKey = require('./composeMutationKey.cjs');
/**
* Replaces the `parameters` field in the filters with a `mutationKey` field based on the schema.
* If no filters are provided, a `mutationKey` will be composed schema's base query key.
* @param schema
* @param filters
*/ function composeMutationFilters(schema, filters) {
if (!filters) {
return {
exact: false,
mutationKey: composeMutationKey.composeMutationKey(schema, undefined)
};
}
if (filters && 'mutationKey' in filters && 'parameters' in filters) {
throw new Error(`'composeMutationFilters': 'mutationKey' and 'parameters' cannot be used together`);
}
if ('mutationKey' in filters) {
return filters;
}
if ('parameters' in filters) {
const { parameters, ...filtersWithoutParameters } = filters;
Object.assign(filtersWithoutParameters, {
mutationKey: composeMutationKey.composeMutationKey(schema, parameters)
});
return filtersWithoutParameters;
}
return {
exact: false,
mutationKey: composeMutationKey.composeMutationKey(schema, undefined),
...filters
};
}
exports.composeMutationFilters = composeMutationFilters;
//# sourceMappingURL=composeMutationFilters.cjs.map