UNPKG

@openapi-qraft/react

Version:

OpenAPI client for React, providing type-safe requests and dynamic TanStack Query React Hooks via a modular, Proxy-based architecture.

1 lines 2.38 kB
{"version":3,"file":"composeMutationFilters.cjs","sources":["../../../src/lib/composeMutationFilters.ts"],"sourcesContent":["import type { OperationSchema } from './requestFn.js';\nimport { composeMutationKey } from './composeMutationKey.js';\n\n/**\n * Replaces the `parameters` field in the filters with a `mutationKey` field based on the schema.\n * If no filters are provided, a `mutationKey` will be composed schema's base query key.\n * @param schema\n * @param filters\n */\nexport function composeMutationFilters<Filters extends object>(\n schema: OperationSchema,\n filters: Filters | undefined\n) {\n if (!filters) {\n return {\n exact: false,\n mutationKey: composeMutationKey(schema, undefined),\n };\n }\n\n if (filters && 'mutationKey' in filters && 'parameters' in filters) {\n throw new Error(\n `'composeMutationFilters': 'mutationKey' and 'parameters' cannot be used together`\n );\n }\n\n if ('mutationKey' in filters) {\n return filters;\n }\n\n if ('parameters' in filters) {\n const { parameters, ...filtersWithoutParameters } = filters;\n\n Object.assign(filtersWithoutParameters, {\n mutationKey: composeMutationKey(schema, parameters),\n });\n\n return filtersWithoutParameters;\n }\n\n return {\n exact: false,\n mutationKey: composeMutationKey(schema, undefined),\n ...filters,\n };\n}\n"],"names":["composeMutationFilters","schema","filters","exact","mutationKey","composeMutationKey","undefined","Error","parameters","filtersWithoutParameters","Object","assign"],"mappings":";;;;AAGA;;;;;AAKC,IACM,SAASA,sBACdC,CAAAA,MAAuB,EACvBC,OAA4B,EAAA;AAE5B,IAAA,IAAI,CAACA,OAAS,EAAA;QACZ,OAAO;YACLC,KAAO,EAAA,KAAA;AACPC,YAAAA,WAAAA,EAAaC,sCAAmBJ,MAAQK,EAAAA,SAAAA,CAAAA;AAC1C,SAAA,CAAA;AACF,KAAA;AAEA,IAAA,IAAIJ,OAAW,IAAA,aAAA,IAAiBA,OAAW,IAAA,YAAA,IAAgBA,OAAS,EAAA;AAClE,QAAA,MAAM,IAAIK,KAAAA,CACR,CAAC,gFAAgF,CAAC,CAAA,CAAA;AAEtF,KAAA;AAEA,IAAA,IAAI,iBAAiBL,OAAS,EAAA;QAC5B,OAAOA,OAAAA,CAAAA;AACT,KAAA;AAEA,IAAA,IAAI,gBAAgBA,OAAS,EAAA;AAC3B,QAAA,MAAM,EAAEM,UAAU,EAAE,GAAGC,0BAA0B,GAAGP,OAAAA,CAAAA;QAEpDQ,MAAOC,CAAAA,MAAM,CAACF,wBAA0B,EAAA;AACtCL,YAAAA,WAAAA,EAAaC,sCAAmBJ,MAAQO,EAAAA,UAAAA,CAAAA;AAC1C,SAAA,CAAA,CAAA;QAEA,OAAOC,wBAAAA,CAAAA;AACT,KAAA;IAEA,OAAO;QACLN,KAAO,EAAA,KAAA;AACPC,QAAAA,WAAAA,EAAaC,sCAAmBJ,MAAQK,EAAAA,SAAAA,CAAAA;AACxC,QAAA,GAAGJ,OAAO;AACZ,KAAA,CAAA;AACF;;;;"}