1 | export function generateQueryVariablesSignature(hasRequiredVariables, operationVariablesTypes) {
|
2 | return `variables${hasRequiredVariables ? '' : '?'}: ${operationVariablesTypes}`;
|
3 | }
|
4 | export function generateInfiniteQueryKey(node, hasRequiredVariables) {
|
5 | if (hasRequiredVariables)
|
6 | return `['${node.name.value}.infinite', variables]`;
|
7 | return `variables === undefined ? ['${node.name.value}.infinite'] : ['${node.name.value}.infinite', variables]`;
|
8 | }
|
9 | export function generateInfiniteQueryKeyMaker(node, operationName, operationVariablesTypes, hasRequiredVariables) {
|
10 | const signature = generateQueryVariablesSignature(hasRequiredVariables, operationVariablesTypes);
|
11 | return `\nuseInfinite${operationName}.getKey = (${signature}) => ${generateInfiniteQueryKey(node, hasRequiredVariables)};\n`;
|
12 | }
|
13 | export function generateQueryKey(node, hasRequiredVariables) {
|
14 | if (hasRequiredVariables)
|
15 | return `['${node.name.value}', variables]`;
|
16 | return `variables === undefined ? ['${node.name.value}'] : ['${node.name.value}', variables]`;
|
17 | }
|
18 | export function generateQueryKeyMaker(node, operationName, operationVariablesTypes, hasRequiredVariables) {
|
19 | const signature = generateQueryVariablesSignature(hasRequiredVariables, operationVariablesTypes);
|
20 | return `\nuse${operationName}.getKey = (${signature}) => ${generateQueryKey(node, hasRequiredVariables)};\n`;
|
21 | }
|
22 | export function generateMutationKey(node) {
|
23 | return `['${node.name.value}']`;
|
24 | }
|
25 | export function generateMutationKeyMaker(node, operationName) {
|
26 | return `\nuse${operationName}.getKey = () => ${generateMutationKey(node)};\n`;
|
27 | }
|