@graphql-box/cache-manager 3.1.2 → 3.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/lib/browser/index.js +1 -1
  2. package/lib/browser/index.js.map +1 -1
  3. package/lib/browser/production.analysis.txt +44 -56
  4. package/lib/main/debug/log-cache-entry/index.js +8 -3
  5. package/lib/main/debug/log-cache-entry/index.js.map +1 -1
  6. package/lib/main/debug/log-cache-query/index.js +8 -3
  7. package/lib/main/debug/log-cache-query/index.js.map +1 -1
  8. package/lib/main/helpers/createFragmentSpreadChecklist.js +10 -15
  9. package/lib/main/helpers/createFragmentSpreadChecklist.js.map +1 -1
  10. package/lib/main/helpers/filterField.js +1 -3
  11. package/lib/main/helpers/filterField.js.map +1 -1
  12. package/lib/main/helpers/filterFragmentDefinitions.js +3 -3
  13. package/lib/main/helpers/filterFragmentDefinitions.js.map +1 -1
  14. package/lib/main/helpers/filterOutPropsWithArgsOrDirectives.js +1 -3
  15. package/lib/main/helpers/filterOutPropsWithArgsOrDirectives.js.map +1 -1
  16. package/lib/main/helpers/filterQuery.js +2 -4
  17. package/lib/main/helpers/filterQuery.js.map +1 -1
  18. package/lib/main/main/index.js +25 -14
  19. package/lib/main/main/index.js.map +1 -1
  20. package/lib/module/debug/log-cache-entry/index.js +8 -3
  21. package/lib/module/debug/log-cache-entry/index.js.map +1 -1
  22. package/lib/module/debug/log-cache-query/index.js +8 -3
  23. package/lib/module/debug/log-cache-query/index.js.map +1 -1
  24. package/lib/module/helpers/createFragmentSpreadChecklist.js +10 -14
  25. package/lib/module/helpers/createFragmentSpreadChecklist.js.map +1 -1
  26. package/lib/module/helpers/filterField.js +1 -2
  27. package/lib/module/helpers/filterField.js.map +1 -1
  28. package/lib/module/helpers/filterFragmentDefinitions.js +4 -4
  29. package/lib/module/helpers/filterFragmentDefinitions.js.map +1 -1
  30. package/lib/module/helpers/filterOutPropsWithArgsOrDirectives.js +1 -2
  31. package/lib/module/helpers/filterOutPropsWithArgsOrDirectives.js.map +1 -1
  32. package/lib/module/helpers/filterQuery.js +2 -3
  33. package/lib/module/helpers/filterQuery.js.map +1 -1
  34. package/lib/module/main/index.js +22 -10
  35. package/lib/module/main/index.js.map +1 -1
  36. package/lib/types/debug/log-cache-entry/index.d.ts.map +1 -1
  37. package/lib/types/debug/log-cache-query/index.d.ts.map +1 -1
  38. package/lib/types/defs/index.d.ts +3 -16
  39. package/lib/types/defs/index.d.ts.map +1 -1
  40. package/lib/types/helpers/createFragmentSpreadChecklist.d.ts +2 -1
  41. package/lib/types/helpers/createFragmentSpreadChecklist.d.ts.map +1 -1
  42. package/lib/types/helpers/filterField.d.ts.map +1 -1
  43. package/lib/types/helpers/filterOutPropsWithArgsOrDirectives.d.ts +2 -1
  44. package/lib/types/helpers/filterOutPropsWithArgsOrDirectives.d.ts.map +1 -1
  45. package/lib/types/helpers/filterQuery.d.ts.map +1 -1
  46. package/lib/types/main/index.d.ts +6 -3
  47. package/lib/types/main/index.d.ts.map +1 -1
  48. package/package.json +1 -1
  49. package/src/__snapshots__/index.test.ts.snap +1082 -1082
  50. package/src/debug/log-cache-entry/index.ts +8 -3
  51. package/src/debug/log-cache-query/index.ts +8 -3
  52. package/src/defs/index.ts +8 -17
  53. package/src/helpers/createFragmentSpreadChecklist.ts +3 -3
  54. package/src/helpers/filterField.ts +8 -2
  55. package/src/helpers/filterFragmentDefinitions.ts +2 -2
  56. package/src/helpers/filterOutPropsWithArgsOrDirectives.ts +2 -3
  57. package/src/helpers/filterQuery.ts +7 -3
  58. package/src/main/index.ts +30 -14
  59. package/lib/main/helpers/buildKeysAndPaths.js +0 -73
  60. package/lib/main/helpers/buildKeysAndPaths.js.map +0 -1
  61. package/lib/module/helpers/buildKeysAndPaths.js +0 -54
  62. package/lib/module/helpers/buildKeysAndPaths.js.map +0 -1
  63. package/lib/types/helpers/buildKeysAndPaths.d.ts +0 -10
  64. package/lib/types/helpers/buildKeysAndPaths.d.ts.map +0 -1
  65. package/src/helpers/buildKeysAndPaths.ts +0 -71
@@ -1,41 +1,41 @@
1
1
  -----------------------------
2
2
  Rollup File Analysis
3
3
  -----------------------------
4
- bundle size: 93.189 KB
5
- original size: 64.831 KB
4
+ bundle size: 94.706 KB
5
+ original size: 63.429 KB
6
6
  code reduction: 0 %
7
- module count: 25
7
+ module count: 24
8
8
 
9
- ██████████████████████████████████░░░░░░░░░░░░░░░░
9
+ ███████████████████████████████████░░░░░░░░░░░░░░░
10
10
  file: /src/main/index.ts
11
- bundle space: 69.72 %
12
- rendered size: 64.975 KB
13
- original size: 37.778 KB
11
+ bundle space: 70.35 %
12
+ rendered size: 66.625 KB
13
+ original size: 38.471 KB
14
14
  code reduction: 0 %
15
15
  dependents: 1
16
16
  - /src/index.ts
17
17
 
18
18
  ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
19
19
  file: /src/debug/log-cache-query/index.ts
20
- bundle space: 4.12 %
21
- rendered size: 3.839 KB
22
- original size: 1.282 KB
20
+ bundle space: 5.31 %
21
+ rendered size: 5.03 KB
22
+ original size: 1.489 KB
23
23
  code reduction: 0 %
24
24
  dependents: 1
25
25
  - /src/debug/index.ts
26
26
 
27
- █░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
27
+ ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
28
28
  file: /src/debug/log-cache-entry/index.ts
29
- bundle space: 3.7 %
30
- rendered size: 3.451 KB
31
- original size: 1.197 KB
29
+ bundle space: 4.89 %
30
+ rendered size: 4.632 KB
31
+ original size: 1.396 KB
32
32
  code reduction: 0 %
33
33
  dependents: 1
34
34
  - /src/debug/index.ts
35
35
 
36
36
  █░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
37
37
  file: /src/debug/log-partial-compiled/index.ts
38
- bundle space: 3.62 %
38
+ bundle space: 3.56 %
39
39
  rendered size: 3.37 KB
40
40
  original size: 1.161 KB
41
41
  code reduction: 0 %
@@ -44,30 +44,18 @@ dependents: 1
44
44
 
45
45
  █░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
46
46
  file: /src/helpers/filterField.ts
47
- bundle space: 3.04 %
47
+ bundle space: 2.99 %
48
48
  rendered size: 2.834 KB
49
- original size: 2.965 KB
50
- code reduction: 4.42 %
49
+ original size: 2.94 KB
50
+ code reduction: 3.61 %
51
51
  dependents: 2
52
52
  - /src/helpers/filterFragmentDefinitions.ts
53
53
  - /src/helpers/filterQuery.ts
54
54
 
55
- █░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
56
- file: /src/helpers/buildKeysAndPaths.ts
57
- bundle space: 2.64 %
58
- rendered size: 2.461 KB
59
- original size: 2.196 KB
60
- code reduction: 0 %
61
- dependents: 4
62
- - /src/helpers/filterOutPropsWithArgsOrDirectives.ts
63
- - /src/helpers/filterField.ts
64
- - /src/helpers/filterQuery.ts
65
- - /src/main/index.ts
66
-
67
55
  ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
68
56
  file: /src/helpers/mergeResponseDataSets.ts
69
- bundle space: 1.84 %
70
- rendered size: 1.716 KB
57
+ bundle space: 1.82 %
58
+ rendered size: 1.728 KB
71
59
  original size: 907 Bytes
72
60
  code reduction: 0 %
73
61
  dependents: 1
@@ -75,16 +63,16 @@ dependents: 1
75
63
 
76
64
  ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
77
65
  file: /src/helpers/filterFragmentDefinitions.ts
78
- bundle space: 1.61 %
79
- rendered size: 1.499 KB
80
- original size: 1.558 KB
81
- code reduction: 3.79 %
66
+ bundle space: 1.54 %
67
+ rendered size: 1.462 KB
68
+ original size: 1.517 KB
69
+ code reduction: 3.63 %
82
70
  dependents: 1
83
71
  - /src/helpers/filterQuery.ts
84
72
 
85
73
  ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
86
74
  file: /src/helpers/normalizePatchResponseData.ts
87
- bundle space: 1.4 %
75
+ bundle space: 1.38 %
88
76
  rendered size: 1.309 KB
89
77
  original size: 478 Bytes
90
78
  code reduction: 0 %
@@ -93,16 +81,16 @@ dependents: 1
93
81
 
94
82
  ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
95
83
  file: /src/helpers/filterQuery.ts
96
- bundle space: 1.19 %
97
- rendered size: 1.108 KB
98
- original size: 1.51 KB
99
- code reduction: 26.62 %
84
+ bundle space: 1.18 %
85
+ rendered size: 1.117 KB
86
+ original size: 1.49 KB
87
+ code reduction: 25.03 %
100
88
  dependents: 1
101
89
  - /src/main/index.ts
102
90
 
103
91
  ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
104
92
  file: /src/helpers/filterIDsAndTypeNames.ts
105
- bundle space: 1.07 %
93
+ bundle space: 1.05 %
106
94
  rendered size: 998 Bytes
107
95
  original size: 1.165 KB
108
96
  code reduction: 14.33 %
@@ -111,7 +99,7 @@ dependents: 1
111
99
 
112
100
  ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
113
101
  file: /src/helpers/checkFieldPathChecklist.ts
114
- bundle space: 1.03 %
102
+ bundle space: 1.01 %
115
103
  rendered size: 957 Bytes
116
104
  original size: 828 Bytes
117
105
  code reduction: 0 %
@@ -120,16 +108,16 @@ dependents: 1
120
108
 
121
109
  ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
122
110
  file: /src/helpers/filterOutPropsWithArgsOrDirectives.ts
123
- bundle space: 0.99 %
111
+ bundle space: 0.98 %
124
112
  rendered size: 927 Bytes
125
- original size: 1.119 KB
126
- code reduction: 17.16 %
113
+ original size: 1.081 KB
114
+ code reduction: 14.25 %
127
115
  dependents: 1
128
116
  - /src/main/index.ts
129
117
 
130
118
  ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
131
119
  file: /src/helpers/filterInlineFragments.ts
132
- bundle space: 0.85 %
120
+ bundle space: 0.83 %
133
121
  rendered size: 788 Bytes
134
122
  original size: 999 Bytes
135
123
  code reduction: 21.12 %
@@ -138,7 +126,7 @@ dependents: 1
138
126
 
139
127
  ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
140
128
  file: /src/helpers/deriveOpCacheability.ts
141
- bundle space: 0.84 %
129
+ bundle space: 0.83 %
142
130
  rendered size: 786 Bytes
143
131
  original size: 858 Bytes
144
132
  code reduction: 8.39 %
@@ -147,7 +135,7 @@ dependents: 1
147
135
 
148
136
  ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
149
137
  file: /src/helpers/filterFragmentSpreads.ts
150
- bundle space: 0.66 %
138
+ bundle space: 0.65 %
151
139
  rendered size: 616 Bytes
152
140
  original size: 942 Bytes
153
141
  code reduction: 34.61 %
@@ -156,16 +144,16 @@ dependents: 1
156
144
 
157
145
  ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
158
146
  file: /src/helpers/createFragmentSpreadChecklist.ts
159
- bundle space: 0.52 %
160
- rendered size: 485 Bytes
161
- original size: 555 Bytes
162
- code reduction: 12.61 %
147
+ bundle space: 0.48 %
148
+ rendered size: 457 Bytes
149
+ original size: 572 Bytes
150
+ code reduction: 20.1 %
163
151
  dependents: 1
164
152
  - /src/helpers/filterQuery.ts
165
153
 
166
154
  ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
167
155
  file: /src/consts/index.ts
168
- bundle space: 0.34 %
156
+ bundle space: 0.33 %
169
157
  rendered size: 315 Bytes
170
158
  original size: 390 Bytes
171
159
  code reduction: 19.23 %
@@ -197,7 +185,7 @@ dependents: 1
197
185
 
198
186
  ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
199
187
  file: /src/helpers/isLastResponseChunk.ts
200
- bundle space: 0.17 %
188
+ bundle space: 0.16 %
201
189
  rendered size: 156 Bytes
202
190
  original size: 304 Bytes
203
191
  code reduction: 48.68 %
@@ -217,7 +205,7 @@ dependents: 1
217
205
  file: /src/defs/index.ts
218
206
  bundle space: 0 %
219
207
  rendered size: 0 Byte
220
- original size: 5.249 KB
208
+ original size: 5.051 KB
221
209
  code reduction: 100 %
222
210
  dependents: 1
223
211
  - /src/index.ts
@@ -18,6 +18,7 @@ function logCacheEntry() {
18
18
  return new Promise(async resolve => {
19
19
  const {
20
20
  debugManager,
21
+ requestFieldCacheKey,
21
22
  ...otherContext
22
23
  } = args[5];
23
24
 
@@ -32,7 +33,7 @@ function logCacheEntry() {
32
33
  const endTime = debugManager.now();
33
34
  const duration = endTime - startTime;
34
35
  resolve();
35
- debugManager.emit(_consts.CACHE_ENTRY_ADDED, {
36
+ const payload = {
36
37
  cachemapOptions: args[3],
37
38
  cacheType: args[0],
38
39
  context: otherContext,
@@ -43,8 +44,12 @@ function logCacheEntry() {
43
44
  endTime,
44
45
  startTime
45
46
  },
46
- value: args[2]
47
- });
47
+ value: args[2],
48
+ ...(requestFieldCacheKey ? {
49
+ decryptedCacheKey: requestFieldCacheKey
50
+ } : {})
51
+ };
52
+ debugManager.emit(_consts.CACHE_ENTRY_ADDED, payload);
48
53
  });
49
54
  };
50
55
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/debug/log-cache-entry/index.ts"],"names":["logCacheEntry","_target","_propertyName","descriptor","method","value","descriptorValue","args","Promise","resolve","debugManager","otherContext","apply","startTime","now","endTime","duration","emit","CACHE_ENTRY_ADDED","cachemapOptions","cacheType","context","hash","options","stats"],"mappings":";;;;;;;;;AACA;;AAEe,SAASA,aAAT,GAAyB;AACtC,SAAO,CACLC,OADK,EAELC,aAFK,EAGLC,UAHK,KAII;AACT,UAAMC,MAAM,GAAGD,UAAU,CAACE,KAA1B;AACA,QAAI,CAACD,MAAL,EAAa;;AAEbD,IAAAA,UAAU,CAACE,KAAX,GAAmB,eAAeC,eAAf,CAA+B,GAAGC,IAAlC,EAA6D;AAC9E,aAAO,IAAIC,OAAJ,CAAkB,MAAMC,OAAN,IAAiB;AACxC,cAAM;AAAEC,UAAAA,YAAF;AAAgB,aAAGC;AAAnB,YAAoCJ,IAAI,CAAC,CAAD,CAA9C;;AAEA,YAAI,CAACG,YAAL,EAAmB;AACjB,gBAAMN,MAAM,CAACQ,KAAP,CAAa,IAAb,EAAmBL,IAAnB,CAAN;AACAE,UAAAA,OAAO;AACP;AACD;;AAED,cAAMI,SAAS,GAAGH,YAAY,CAACI,GAAb,EAAlB;AACA,cAAMV,MAAM,CAACQ,KAAP,CAAa,IAAb,EAAmBL,IAAnB,CAAN;AACA,cAAMQ,OAAO,GAAGL,YAAY,CAACI,GAAb,EAAhB;AACA,cAAME,QAAQ,GAAGD,OAAO,GAAGF,SAA3B;AACAJ,QAAAA,OAAO;AAEPC,QAAAA,YAAY,CAACO,IAAb,CAAkBC,yBAAlB,EAAqC;AACnCC,UAAAA,eAAe,EAAEZ,IAAI,CAAC,CAAD,CADc;AAEnCa,UAAAA,SAAS,EAAEb,IAAI,CAAC,CAAD,CAFoB;AAGnCc,UAAAA,OAAO,EAAEV,YAH0B;AAInCW,UAAAA,IAAI,EAAEf,IAAI,CAAC,CAAD,CAJyB;AAKnCgB,UAAAA,OAAO,EAAEhB,IAAI,CAAC,CAAD,CALsB;AAMnCiB,UAAAA,KAAK,EAAE;AAAER,YAAAA,QAAF;AAAYD,YAAAA,OAAZ;AAAqBF,YAAAA;AAArB,WAN4B;AAOnCR,UAAAA,KAAK,EAAEE,IAAI,CAAC,CAAD;AAPwB,SAArC;AASD,OAxBM,CAAP;AAyBD,KA1BD;AA2BD,GAnCD;AAoCD","sourcesContent":["import { RequestContext } from \"@graphql-box/core\";\nimport { CACHE_ENTRY_ADDED } from \"../../consts\";\n\nexport default function logCacheEntry() {\n return (\n _target: any,\n _propertyName: string,\n descriptor: TypedPropertyDescriptor<(...args: any[]) => Promise<any>>,\n ): void => {\n const method = descriptor.value;\n if (!method) return;\n\n descriptor.value = async function descriptorValue(...args: any[]): Promise<any> {\n return new Promise<void>(async resolve => {\n const { debugManager, ...otherContext } = args[5] as RequestContext;\n\n if (!debugManager) {\n await method.apply(this, args);\n resolve();\n return;\n }\n\n const startTime = debugManager.now();\n await method.apply(this, args);\n const endTime = debugManager.now();\n const duration = endTime - startTime;\n resolve();\n\n debugManager.emit(CACHE_ENTRY_ADDED, {\n cachemapOptions: args[3],\n cacheType: args[0],\n context: otherContext,\n hash: args[1],\n options: args[4],\n stats: { duration, endTime, startTime },\n value: args[2],\n });\n });\n };\n };\n}\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../../src/debug/log-cache-entry/index.ts"],"names":["logCacheEntry","_target","_propertyName","descriptor","method","value","descriptorValue","args","Promise","resolve","debugManager","requestFieldCacheKey","otherContext","apply","startTime","now","endTime","duration","payload","cachemapOptions","cacheType","context","hash","options","stats","decryptedCacheKey","emit","CACHE_ENTRY_ADDED"],"mappings":";;;;;;;;;AACA;;AAEe,SAASA,aAAT,GAAyB;AACtC,SAAO,CACLC,OADK,EAELC,aAFK,EAGLC,UAHK,KAII;AACT,UAAMC,MAAM,GAAGD,UAAU,CAACE,KAA1B;AACA,QAAI,CAACD,MAAL,EAAa;;AAEbD,IAAAA,UAAU,CAACE,KAAX,GAAmB,eAAeC,eAAf,CAA+B,GAAGC,IAAlC,EAA6D;AAC9E,aAAO,IAAIC,OAAJ,CAAkB,MAAMC,OAAN,IAAiB;AACxC,cAAM;AAAEC,UAAAA,YAAF;AAAgBC,UAAAA,oBAAhB;AAAsC,aAAGC;AAAzC,YAA0DL,IAAI,CAAC,CAAD,CAApE;;AAIA,YAAI,CAACG,YAAL,EAAmB;AACjB,gBAAMN,MAAM,CAACS,KAAP,CAAa,IAAb,EAAmBN,IAAnB,CAAN;AACAE,UAAAA,OAAO;AACP;AACD;;AAED,cAAMK,SAAS,GAAGJ,YAAY,CAACK,GAAb,EAAlB;AACA,cAAMX,MAAM,CAACS,KAAP,CAAa,IAAb,EAAmBN,IAAnB,CAAN;AACA,cAAMS,OAAO,GAAGN,YAAY,CAACK,GAAb,EAAhB;AACA,cAAME,QAAQ,GAAGD,OAAO,GAAGF,SAA3B;AACAL,QAAAA,OAAO;AAEP,cAAMS,OAAO,GAAG;AACdC,UAAAA,eAAe,EAAEZ,IAAI,CAAC,CAAD,CADP;AAEda,UAAAA,SAAS,EAAEb,IAAI,CAAC,CAAD,CAFD;AAGdc,UAAAA,OAAO,EAAET,YAHK;AAIdU,UAAAA,IAAI,EAAEf,IAAI,CAAC,CAAD,CAJI;AAKdgB,UAAAA,OAAO,EAAEhB,IAAI,CAAC,CAAD,CALC;AAMdiB,UAAAA,KAAK,EAAE;AAAEP,YAAAA,QAAF;AAAYD,YAAAA,OAAZ;AAAqBF,YAAAA;AAArB,WANO;AAOdT,UAAAA,KAAK,EAAEE,IAAI,CAAC,CAAD,CAPG;AAQd,cAAII,oBAAoB,GAAG;AAAEc,YAAAA,iBAAiB,EAAEd;AAArB,WAAH,GAAiD,EAAzE;AARc,SAAhB;AAWAD,QAAAA,YAAY,CAACgB,IAAb,CAAkBC,yBAAlB,EAAqCT,OAArC;AACD,OA7BM,CAAP;AA8BD,KA/BD;AAgCD,GAxCD;AAyCD","sourcesContent":["import { RequestContext } from \"@graphql-box/core\";\nimport { CACHE_ENTRY_ADDED } from \"../../consts\";\n\nexport default function logCacheEntry() {\n return (\n _target: any,\n _propertyName: string,\n descriptor: TypedPropertyDescriptor<(...args: any[]) => Promise<any>>,\n ): void => {\n const method = descriptor.value;\n if (!method) return;\n\n descriptor.value = async function descriptorValue(...args: any[]): Promise<any> {\n return new Promise<void>(async resolve => {\n const { debugManager, requestFieldCacheKey, ...otherContext } = args[5] as RequestContext & {\n requestFieldCacheKey?: string;\n };\n\n if (!debugManager) {\n await method.apply(this, args);\n resolve();\n return;\n }\n\n const startTime = debugManager.now();\n await method.apply(this, args);\n const endTime = debugManager.now();\n const duration = endTime - startTime;\n resolve();\n\n const payload = {\n cachemapOptions: args[3],\n cacheType: args[0],\n context: otherContext,\n hash: args[1],\n options: args[4],\n stats: { duration, endTime, startTime },\n value: args[2],\n ...(requestFieldCacheKey ? { decryptedCacheKey: requestFieldCacheKey } : {}),\n };\n\n debugManager.emit(CACHE_ENTRY_ADDED, payload);\n });\n };\n };\n}\n"],"file":"index.js"}
@@ -19,6 +19,7 @@ function logCacheQuery() {
19
19
  return new Promise(async resolve => {
20
20
  const {
21
21
  debugManager,
22
+ requestFieldCacheKey,
22
23
  ...otherContext
23
24
  } = args[3];
24
25
 
@@ -32,7 +33,7 @@ function logCacheQuery() {
32
33
  const endTime = debugManager.now();
33
34
  const duration = endTime - startTime;
34
35
  resolve(result);
35
- debugManager.emit(_consts.CACHE_ENTRY_QUERIED, {
36
+ const payload = {
36
37
  cacheType: args[0],
37
38
  context: otherContext,
38
39
  hash: args[1],
@@ -42,8 +43,12 @@ function logCacheQuery() {
42
43
  duration,
43
44
  endTime,
44
45
  startTime
45
- }
46
- });
46
+ },
47
+ ...(requestFieldCacheKey ? {
48
+ decryptedCacheKey: requestFieldCacheKey
49
+ } : {})
50
+ };
51
+ debugManager.emit(_consts.CACHE_ENTRY_QUERIED, payload);
47
52
  });
48
53
  } catch (error) {
49
54
  return Promise.reject(error);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/debug/log-cache-query/index.ts"],"names":["logCacheQuery","_target","_propertyName","descriptor","method","value","descriptorValue","args","Promise","resolve","debugManager","otherContext","apply","startTime","now","result","endTime","duration","emit","CACHE_ENTRY_QUERIED","cacheType","context","hash","options","stats","error","reject"],"mappings":";;;;;;;;;AACA;;AAEe,SAASA,aAAT,GAAyB;AACtC,SAAO,CACLC,OADK,EAELC,aAFK,EAGLC,UAHK,KAII;AACT,UAAMC,MAAM,GAAGD,UAAU,CAACE,KAA1B;AACA,QAAI,CAACD,MAAL,EAAa;;AAEbD,IAAAA,UAAU,CAACE,KAAX,GAAmB,eAAeC,eAAf,CAA+B,GAAGC,IAAlC,EAA6D;AAC9E,UAAI;AACF,eAAO,IAAIC,OAAJ,CAAY,MAAMC,OAAN,IAAiB;AAClC,gBAAM;AAAEC,YAAAA,YAAF;AAAgB,eAAGC;AAAnB,cAAoCJ,IAAI,CAAC,CAAD,CAA9C;;AAEA,cAAI,CAACG,YAAL,EAAmB;AACjBD,YAAAA,OAAO,CAAC,MAAML,MAAM,CAACQ,KAAP,CAAa,IAAb,EAAmBL,IAAnB,CAAP,CAAP;AACA;AACD;;AAED,gBAAMM,SAAS,GAAGH,YAAY,CAACI,GAAb,EAAlB;AACA,gBAAMC,MAAM,GAAG,MAAMX,MAAM,CAACQ,KAAP,CAAa,IAAb,EAAmBL,IAAnB,CAArB;AACA,gBAAMS,OAAO,GAAGN,YAAY,CAACI,GAAb,EAAhB;AACA,gBAAMG,QAAQ,GAAGD,OAAO,GAAGH,SAA3B;AACAJ,UAAAA,OAAO,CAACM,MAAD,CAAP;AAEAL,UAAAA,YAAY,CAACQ,IAAb,CAAkBC,2BAAlB,EAAuC;AACrCC,YAAAA,SAAS,EAAEb,IAAI,CAAC,CAAD,CADsB;AAErCc,YAAAA,OAAO,EAAEV,YAF4B;AAGrCW,YAAAA,IAAI,EAAEf,IAAI,CAAC,CAAD,CAH2B;AAIrCgB,YAAAA,OAAO,EAAEhB,IAAI,CAAC,CAAD,CAJwB;AAKrCQ,YAAAA,MALqC;AAMrCS,YAAAA,KAAK,EAAE;AAAEP,cAAAA,QAAF;AAAYD,cAAAA,OAAZ;AAAqBH,cAAAA;AAArB;AAN8B,WAAvC;AAQD,SAtBM,CAAP;AAuBD,OAxBD,CAwBE,OAAOY,KAAP,EAAc;AACd,eAAOjB,OAAO,CAACkB,MAAR,CAAeD,KAAf,CAAP;AACD;AACF,KA5BD;AA6BD,GArCD;AAsCD","sourcesContent":["import { RequestContext } from \"@graphql-box/core\";\nimport { CACHE_ENTRY_QUERIED } from \"../../consts\";\n\nexport default function logCacheQuery() {\n return (\n _target: any,\n _propertyName: string,\n descriptor: TypedPropertyDescriptor<(...args: any[]) => Promise<any>>,\n ): void => {\n const method = descriptor.value;\n if (!method) return;\n\n descriptor.value = async function descriptorValue(...args: any[]): Promise<any> {\n try {\n return new Promise(async resolve => {\n const { debugManager, ...otherContext } = args[3] as RequestContext;\n\n if (!debugManager) {\n resolve(await method.apply(this, args));\n return;\n }\n\n const startTime = debugManager.now();\n const result = await method.apply(this, args);\n const endTime = debugManager.now();\n const duration = endTime - startTime;\n resolve(result);\n\n debugManager.emit(CACHE_ENTRY_QUERIED, {\n cacheType: args[0],\n context: otherContext,\n hash: args[1],\n options: args[2],\n result,\n stats: { duration, endTime, startTime },\n });\n });\n } catch (error) {\n return Promise.reject(error);\n }\n };\n };\n}\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../../src/debug/log-cache-query/index.ts"],"names":["logCacheQuery","_target","_propertyName","descriptor","method","value","descriptorValue","args","Promise","resolve","debugManager","requestFieldCacheKey","otherContext","apply","startTime","now","result","endTime","duration","payload","cacheType","context","hash","options","stats","decryptedCacheKey","emit","CACHE_ENTRY_QUERIED","error","reject"],"mappings":";;;;;;;;;AACA;;AAEe,SAASA,aAAT,GAAyB;AACtC,SAAO,CACLC,OADK,EAELC,aAFK,EAGLC,UAHK,KAII;AACT,UAAMC,MAAM,GAAGD,UAAU,CAACE,KAA1B;AACA,QAAI,CAACD,MAAL,EAAa;;AAEbD,IAAAA,UAAU,CAACE,KAAX,GAAmB,eAAeC,eAAf,CAA+B,GAAGC,IAAlC,EAA6D;AAC9E,UAAI;AACF,eAAO,IAAIC,OAAJ,CAAY,MAAMC,OAAN,IAAiB;AAClC,gBAAM;AAAEC,YAAAA,YAAF;AAAgBC,YAAAA,oBAAhB;AAAsC,eAAGC;AAAzC,cAA0DL,IAAI,CAAC,CAAD,CAApE;;AAIA,cAAI,CAACG,YAAL,EAAmB;AACjBD,YAAAA,OAAO,CAAC,MAAML,MAAM,CAACS,KAAP,CAAa,IAAb,EAAmBN,IAAnB,CAAP,CAAP;AACA;AACD;;AAED,gBAAMO,SAAS,GAAGJ,YAAY,CAACK,GAAb,EAAlB;AACA,gBAAMC,MAAM,GAAG,MAAMZ,MAAM,CAACS,KAAP,CAAa,IAAb,EAAmBN,IAAnB,CAArB;AACA,gBAAMU,OAAO,GAAGP,YAAY,CAACK,GAAb,EAAhB;AACA,gBAAMG,QAAQ,GAAGD,OAAO,GAAGH,SAA3B;AACAL,UAAAA,OAAO,CAACO,MAAD,CAAP;AAEA,gBAAMG,OAAO,GAAG;AACdC,YAAAA,SAAS,EAAEb,IAAI,CAAC,CAAD,CADD;AAEdc,YAAAA,OAAO,EAAET,YAFK;AAGdU,YAAAA,IAAI,EAAEf,IAAI,CAAC,CAAD,CAHI;AAIdgB,YAAAA,OAAO,EAAEhB,IAAI,CAAC,CAAD,CAJC;AAKdS,YAAAA,MALc;AAMdQ,YAAAA,KAAK,EAAE;AAAEN,cAAAA,QAAF;AAAYD,cAAAA,OAAZ;AAAqBH,cAAAA;AAArB,aANO;AAOd,gBAAIH,oBAAoB,GAAG;AAAEc,cAAAA,iBAAiB,EAAEd;AAArB,aAAH,GAAiD,EAAzE;AAPc,WAAhB;AAUAD,UAAAA,YAAY,CAACgB,IAAb,CAAkBC,2BAAlB,EAAuCR,OAAvC;AACD,SA3BM,CAAP;AA4BD,OA7BD,CA6BE,OAAOS,KAAP,EAAc;AACd,eAAOpB,OAAO,CAACqB,MAAR,CAAeD,KAAf,CAAP;AACD;AACF,KAjCD;AAkCD,GA1CD;AA2CD","sourcesContent":["import { RequestContext } from \"@graphql-box/core\";\nimport { CACHE_ENTRY_QUERIED } from \"../../consts\";\n\nexport default function logCacheQuery() {\n return (\n _target: any,\n _propertyName: string,\n descriptor: TypedPropertyDescriptor<(...args: any[]) => Promise<any>>,\n ): void => {\n const method = descriptor.value;\n if (!method) return;\n\n descriptor.value = async function descriptorValue(...args: any[]): Promise<any> {\n try {\n return new Promise(async resolve => {\n const { debugManager, requestFieldCacheKey, ...otherContext } = args[3] as RequestContext & {\n requestFieldCacheKey?: string;\n };\n\n if (!debugManager) {\n resolve(await method.apply(this, args));\n return;\n }\n\n const startTime = debugManager.now();\n const result = await method.apply(this, args);\n const endTime = debugManager.now();\n const duration = endTime - startTime;\n resolve(result);\n\n const payload = {\n cacheType: args[0],\n context: otherContext,\n hash: args[1],\n options: args[2],\n result,\n stats: { duration, endTime, startTime },\n ...(requestFieldCacheKey ? { decryptedCacheKey: requestFieldCacheKey } : {}),\n };\n\n debugManager.emit(CACHE_ENTRY_QUERIED, payload);\n });\n } catch (error) {\n return Promise.reject(error);\n }\n };\n };\n}\n"],"file":"index.js"}
@@ -9,23 +9,18 @@ exports.default = void 0;
9
9
 
10
10
  var _keys2 = _interopRequireDefault(require("lodash/keys"));
11
11
 
12
- var _helpers = require("@graphql-box/helpers");
13
-
14
12
  var _default = ({
15
- ast,
16
13
  request
17
- }) => {
18
- var _getFragmentDefinitio;
19
-
20
- return (0, _keys2.default)((_getFragmentDefinitio = (0, _helpers.getFragmentDefinitions)(ast)) !== null && _getFragmentDefinitio !== void 0 ? _getFragmentDefinitio : {}).reduce((acc, name) => {
21
- acc[name] = {
22
- deleted: 0,
23
- paths: [],
24
- total: (request.match(new RegExp(`\\.\\.\\.${name}`, "g")) || []).length
25
- };
26
- return acc;
27
- }, {});
28
- };
14
+ }, {
15
+ fragmentDefinitions
16
+ }) => (0, _keys2.default)(fragmentDefinitions !== null && fragmentDefinitions !== void 0 ? fragmentDefinitions : {}).reduce((acc, name) => {
17
+ acc[name] = {
18
+ deleted: 0,
19
+ paths: [],
20
+ total: (request.match(new RegExp(`\\.\\.\\.${name}`, "g")) || []).length
21
+ };
22
+ return acc;
23
+ }, {});
29
24
 
30
25
  exports.default = _default;
31
26
  //# sourceMappingURL=createFragmentSpreadChecklist.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/helpers/createFragmentSpreadChecklist.ts"],"names":["ast","request","reduce","acc","name","deleted","paths","total","match","RegExp","length"],"mappings":";;;;;;;;;;;AACA;;eAWe,CAAC;AAAEA,EAAAA,GAAF;AAAOC,EAAAA;AAAP,CAAD;AAAA;;AAAA,SACb,6CAAK,qCAAuBD,GAAvB,CAAL,yEAAoC,EAApC,EAAwCE,MAAxC,CAA+C,CAACC,GAAD,EAA8BC,IAA9B,KAAuC;AACpFD,IAAAA,GAAG,CAACC,IAAD,CAAH,GAAY;AAAEC,MAAAA,OAAO,EAAE,CAAX;AAAcC,MAAAA,KAAK,EAAE,EAArB;AAAyBC,MAAAA,KAAK,EAAE,CAACN,OAAO,CAACO,KAAR,CAAc,IAAIC,MAAJ,CAAY,YAAWL,IAAK,EAA5B,EAA+B,GAA/B,CAAd,KAAsD,EAAvD,EAA2DM;AAA3F,KAAZ;AACA,WAAOP,GAAP;AACD,GAHD,EAGG,EAHH,CADa;AAAA,C","sourcesContent":["import { RequestData } from \"@graphql-box/core\";\nimport { getFragmentDefinitions } from \"@graphql-box/helpers\";\nimport { keys } from \"lodash\";\n\nexport type FragmentSpreadCheckist = {\n [key: string]: {\n deleted: number;\n paths: string[];\n total: number;\n };\n};\n\nexport default ({ ast, request }: RequestData) =>\n keys(getFragmentDefinitions(ast) ?? {}).reduce((acc: FragmentSpreadCheckist, name) => {\n acc[name] = { deleted: 0, paths: [], total: (request.match(new RegExp(`\\\\.\\\\.\\\\.${name}`, \"g\")) || []).length };\n return acc;\n }, {});\n"],"file":"createFragmentSpreadChecklist.js"}
1
+ {"version":3,"sources":["../../../src/helpers/createFragmentSpreadChecklist.ts"],"names":["request","fragmentDefinitions","reduce","acc","name","deleted","paths","total","match","RegExp","length"],"mappings":";;;;;;;;;;;eAYe,CAAC;AAAEA,EAAAA;AAAF,CAAD,EAA2B;AAAEC,EAAAA;AAAF,CAA3B,KACb,oBAAKA,mBAAL,aAAKA,mBAAL,cAAKA,mBAAL,GAA4B,EAA5B,EAAgCC,MAAhC,CAAuC,CAACC,GAAD,EAA8BC,IAA9B,KAAuC;AAC5ED,EAAAA,GAAG,CAACC,IAAD,CAAH,GAAY;AAAEC,IAAAA,OAAO,EAAE,CAAX;AAAcC,IAAAA,KAAK,EAAE,EAArB;AAAyBC,IAAAA,KAAK,EAAE,CAACP,OAAO,CAACQ,KAAR,CAAc,IAAIC,MAAJ,CAAY,YAAWL,IAAK,EAA5B,EAA+B,GAA/B,CAAd,KAAsD,EAAvD,EAA2DM;AAA3F,GAAZ;AACA,SAAOP,GAAP;AACD,CAHD,EAGG,EAHH,C","sourcesContent":["import { RequestData } from \"@graphql-box/core\";\nimport { keys } from \"lodash\";\nimport { CacheManagerContext } from \"../defs\";\n\nexport type FragmentSpreadCheckist = {\n [key: string]: {\n deleted: number;\n paths: string[];\n total: number;\n };\n};\n\nexport default ({ request }: RequestData, { fragmentDefinitions }: CacheManagerContext) =>\n keys(fragmentDefinitions ?? {}).reduce((acc: FragmentSpreadCheckist, name) => {\n acc[name] = { deleted: 0, paths: [], total: (request.match(new RegExp(`\\\\.\\\\.\\\\.${name}`, \"g\")) || []).length };\n return acc;\n }, {});\n"],"file":"createFragmentSpreadChecklist.js"}
@@ -11,8 +11,6 @@ var _core = require("@graphql-box/core");
11
11
 
12
12
  var _helpers = require("@graphql-box/helpers");
13
13
 
14
- var _buildKeysAndPaths = require("./buildKeysAndPaths");
15
-
16
14
  var _checkFieldPathChecklist = _interopRequireDefault(require("./checkFieldPathChecklist"));
17
15
 
18
16
  var _filterFragmentSpreads = _interopRequireDefault(require("./filterFragmentSpreads"));
@@ -63,7 +61,7 @@ const filterField = (field, fieldPathChecklist, fragmentSpreadChecklist, ancesto
63
61
 
64
62
  const {
65
63
  requestFieldPath
66
- } = (0, _buildKeysAndPaths.buildFieldKeysAndPaths)(childField, {
64
+ } = (0, _helpers.buildFieldKeysAndPaths)(childField, {
67
65
  requestFieldPath: ancestorRequestFieldPath
68
66
  }, context);
69
67
  const {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/helpers/filterField.ts"],"names":["filterField","field","fieldPathChecklist","fragmentSpreadChecklist","ancestorRequestFieldPath","context","fragmentDefinitions","typeIDKey","fieldsAndTypeNames","fragmentSpreadFieldCounter","i","length","fieldNode","childField","fragmentKind","fragmentName","typeName","childTypeName","FRAGMENT_SPREAD","hasData","total","childFieldName","TYPE_NAME_KEY","requestFieldPath","typeUnused","get"],"mappings":";;;;;;;;;AAAA;;AACA;;AAGA;;AACA;;AAEA;;AACA;;AACA;;AAEA,MAAMA,WAAW,GAAG,CAClBC,KADkB,EAElBC,kBAFkB,EAGlBC,uBAHkB,EAIlBC,wBAJkB,EAKlBC,OALkB,KAMN;AACZ,QAAM;AAAEC,IAAAA,mBAAF;AAAuBC,IAAAA;AAAvB,MAAqCF,OAA3C;AACA,QAAMG,kBAAkB,GAAG,6BAAeP,KAAf,EAAsB;AAAEK,IAAAA;AAAF,GAAtB,CAA3B;;AAEA,MAAI,CAACE,kBAAL,EAAyB;AACvB,WAAO,KAAP;AACD;;AAED,QAAMC,0BAAsD,GAAG,EAA/D;;AAEA,OAAK,IAAIC,CAAC,GAAGF,kBAAkB,CAACG,MAAnB,GAA4B,CAAzC,EAA4CD,CAAC,IAAI,CAAjD,EAAoDA,CAAC,IAAI,CAAzD,EAA4D;AAC1D,UAAM;AAAEE,MAAAA,SAAS,EAAEC,UAAb;AAAyBC,MAAAA,YAAzB;AAAuCC,MAAAA,YAAvC;AAAqDC,MAAAA,QAAQ,EAAEC;AAA/D,QAAiFT,kBAAkB,CAACE,CAAD,CAAzG;;AAEA,QAAII,YAAY,KAAKI,wBAAjB,IAAoCH,YAApC,IAAoD,CAACN,0BAA0B,CAACM,YAAD,CAAnF,EAAmG;AAAA;;AACjGN,MAAAA,0BAA0B,CAACM,YAAD,CAA1B,GAA2C;AACzCI,QAAAA,OAAO,EAAE,CADgC;AAEzCC,QAAAA,KAAK,EAAEd,mBAAmB,SAAnB,IAAAA,mBAAmB,WAAnB,IAAAA,mBAAmB,CAAGS,YAAH,CAAnB,+CACH,6BAAeT,mBAAf,aAAeA,mBAAf,uBAAeA,mBAAmB,CAAGS,YAAH,CAAlC,EAAoD;AAAET,UAAAA;AAAF,SAApD,CADG,oDACH,gBAA8EK,MAD3E,yEACqF,CADrF,GAEH;AAJqC,OAA3C;AAMD;;AAED,UAAMU,cAAc,GAAG,sBAAQR,UAAR,CAAvB;;AAEA,QAAIQ,cAAc,KAAKd,SAAnB,IAAgCc,cAAc,KAAKC,mBAAvD,EAAsE;AACpE;AACD;;AAED,UAAM;AAAEC,MAAAA;AAAF,QAAuB,+CAC3BV,UAD2B,EAE3B;AACEU,MAAAA,gBAAgB,EAAEnB;AADpB,KAF2B,EAK3BC,OAL2B,CAA7B;AAQA,UAAM;AAAEc,MAAAA,OAAF;AAAWK,MAAAA;AAAX,QAA0B,sCAAwBtB,kBAAkB,CAACuB,GAAnB,CAAuBF,gBAAvB,CAAxB,EAAkEN,aAAlE,CAAhC;;AAEA,QAAIE,OAAO,IAAIK,UAAf,EAA2B;AACzB,UAAIV,YAAY,KAAKI,wBAArB,EAAsC;AACpCT,QAAAA,0BAA0B,CAACM,YAAD,CAA1B,CAAmDI,OAAnD,IAA8D,CAA9D;AACD,OAFD,MAEO,IAAI,CAAC,6BAAeN,UAAf,EAA2B;AAAEP,QAAAA;AAAF,OAA3B,CAAL,EAA0D;AAC/D,wCAAkBL,KAAlB,EAAyBY,UAAzB;AACD,OAFM,MAEA,IAAIb,WAAW,CAACa,UAAD,EAAaX,kBAAb,EAAiCC,uBAAjC,EAA0DoB,gBAA1D,EAA4ElB,OAA5E,CAAf,EAAqG;AAC1G,wCAAkBJ,KAAlB,EAAyBY,UAAzB;AACD;AACF;AACF;;AAED,sCAAsBZ,KAAtB,EAA6BQ,0BAA7B,EAAyDN,uBAAzD,EAAkFC,wBAAlF;AACA,sCAAsBH,KAAtB,EAA6BI,OAA7B;AACA,sCAAsBJ,KAAtB,EAA6BI,OAA7B;AACA,SAAO,CAAC,6BAAeJ,KAAf,EAAsB;AAAEK,IAAAA;AAAF,GAAtB,CAAR;AACD,CA3DD;;eA6DeN,W","sourcesContent":["import { TYPE_NAME_KEY } from \"@graphql-box/core\";\nimport { FRAGMENT_SPREAD, deleteChildFields, getChildFields, getName, hasChildFields } from \"@graphql-box/helpers\";\nimport { FieldNode, FragmentDefinitionNode, OperationDefinitionNode } from \"graphql\";\nimport { CacheManagerContext, FieldPathChecklist, FragmentSpreadFieldCounter } from \"../defs\";\nimport { buildFieldKeysAndPaths } from \"./buildKeysAndPaths\";\nimport checkFieldPathChecklist from \"./checkFieldPathChecklist\";\nimport { FragmentSpreadCheckist } from \"./createFragmentSpreadChecklist\";\nimport filterFragmentSpreads from \"./filterFragmentSpreads\";\nimport filterIDsAndTypeNames from \"./filterIDsAndTypeNames\";\nimport filterInlineFragments from \"./filterInlineFragments\";\n\nconst filterField = (\n field: FieldNode | FragmentDefinitionNode | OperationDefinitionNode,\n fieldPathChecklist: FieldPathChecklist,\n fragmentSpreadChecklist: FragmentSpreadCheckist,\n ancestorRequestFieldPath: string,\n context: CacheManagerContext,\n): boolean => {\n const { fragmentDefinitions, typeIDKey } = context;\n const fieldsAndTypeNames = getChildFields(field, { fragmentDefinitions });\n\n if (!fieldsAndTypeNames) {\n return false;\n }\n\n const fragmentSpreadFieldCounter: FragmentSpreadFieldCounter = {};\n\n for (let i = fieldsAndTypeNames.length - 1; i >= 0; i -= 1) {\n const { fieldNode: childField, fragmentKind, fragmentName, typeName: childTypeName } = fieldsAndTypeNames[i];\n\n if (fragmentKind === FRAGMENT_SPREAD && fragmentName && !fragmentSpreadFieldCounter[fragmentName]) {\n fragmentSpreadFieldCounter[fragmentName] = {\n hasData: 0,\n total: fragmentDefinitions?.[fragmentName]\n ? getChildFields(fragmentDefinitions?.[fragmentName], { fragmentDefinitions })?.length ?? 0\n : 0,\n };\n }\n\n const childFieldName = getName(childField);\n\n if (childFieldName === typeIDKey || childFieldName === TYPE_NAME_KEY) {\n continue;\n }\n\n const { requestFieldPath } = buildFieldKeysAndPaths(\n childField,\n {\n requestFieldPath: ancestorRequestFieldPath,\n },\n context,\n );\n\n const { hasData, typeUnused } = checkFieldPathChecklist(fieldPathChecklist.get(requestFieldPath), childTypeName);\n\n if (hasData || typeUnused) {\n if (fragmentKind === FRAGMENT_SPREAD) {\n fragmentSpreadFieldCounter[fragmentName as string].hasData += 1;\n } else if (!hasChildFields(childField, { fragmentDefinitions })) {\n deleteChildFields(field, childField);\n } else if (filterField(childField, fieldPathChecklist, fragmentSpreadChecklist, requestFieldPath, context)) {\n deleteChildFields(field, childField);\n }\n }\n }\n\n filterFragmentSpreads(field, fragmentSpreadFieldCounter, fragmentSpreadChecklist, ancestorRequestFieldPath);\n filterInlineFragments(field, context);\n filterIDsAndTypeNames(field, context);\n return !hasChildFields(field, { fragmentDefinitions });\n};\n\nexport default filterField;\n"],"file":"filterField.js"}
1
+ {"version":3,"sources":["../../../src/helpers/filterField.ts"],"names":["filterField","field","fieldPathChecklist","fragmentSpreadChecklist","ancestorRequestFieldPath","context","fragmentDefinitions","typeIDKey","fieldsAndTypeNames","fragmentSpreadFieldCounter","i","length","fieldNode","childField","fragmentKind","fragmentName","typeName","childTypeName","FRAGMENT_SPREAD","hasData","total","childFieldName","TYPE_NAME_KEY","requestFieldPath","typeUnused","get"],"mappings":";;;;;;;;;AAAA;;AACA;;AAUA;;AAEA;;AACA;;AACA;;AAEA,MAAMA,WAAW,GAAG,CAClBC,KADkB,EAElBC,kBAFkB,EAGlBC,uBAHkB,EAIlBC,wBAJkB,EAKlBC,OALkB,KAMN;AACZ,QAAM;AAAEC,IAAAA,mBAAF;AAAuBC,IAAAA;AAAvB,MAAqCF,OAA3C;AACA,QAAMG,kBAAkB,GAAG,6BAAeP,KAAf,EAAsB;AAAEK,IAAAA;AAAF,GAAtB,CAA3B;;AAEA,MAAI,CAACE,kBAAL,EAAyB;AACvB,WAAO,KAAP;AACD;;AAED,QAAMC,0BAAsD,GAAG,EAA/D;;AAEA,OAAK,IAAIC,CAAC,GAAGF,kBAAkB,CAACG,MAAnB,GAA4B,CAAzC,EAA4CD,CAAC,IAAI,CAAjD,EAAoDA,CAAC,IAAI,CAAzD,EAA4D;AAC1D,UAAM;AAAEE,MAAAA,SAAS,EAAEC,UAAb;AAAyBC,MAAAA,YAAzB;AAAuCC,MAAAA,YAAvC;AAAqDC,MAAAA,QAAQ,EAAEC;AAA/D,QAAiFT,kBAAkB,CAACE,CAAD,CAAzG;;AAEA,QAAII,YAAY,KAAKI,wBAAjB,IAAoCH,YAApC,IAAoD,CAACN,0BAA0B,CAACM,YAAD,CAAnF,EAAmG;AAAA;;AACjGN,MAAAA,0BAA0B,CAACM,YAAD,CAA1B,GAA2C;AACzCI,QAAAA,OAAO,EAAE,CADgC;AAEzCC,QAAAA,KAAK,EAAEd,mBAAmB,SAAnB,IAAAA,mBAAmB,WAAnB,IAAAA,mBAAmB,CAAGS,YAAH,CAAnB,+CACH,6BAAeT,mBAAf,aAAeA,mBAAf,uBAAeA,mBAAmB,CAAGS,YAAH,CAAlC,EAAoD;AAAET,UAAAA;AAAF,SAApD,CADG,oDACH,gBAA8EK,MAD3E,yEACqF,CADrF,GAEH;AAJqC,OAA3C;AAMD;;AAED,UAAMU,cAAc,GAAG,sBAAQR,UAAR,CAAvB;;AAEA,QAAIQ,cAAc,KAAKd,SAAnB,IAAgCc,cAAc,KAAKC,mBAAvD,EAAsE;AACpE;AACD;;AAED,UAAM;AAAEC,MAAAA;AAAF,QAAuB,qCAC3BV,UAD2B,EAE3B;AACEU,MAAAA,gBAAgB,EAAEnB;AADpB,KAF2B,EAK3BC,OAL2B,CAA7B;AAQA,UAAM;AAAEc,MAAAA,OAAF;AAAWK,MAAAA;AAAX,QAA0B,sCAAwBtB,kBAAkB,CAACuB,GAAnB,CAAuBF,gBAAvB,CAAxB,EAAkEN,aAAlE,CAAhC;;AAEA,QAAIE,OAAO,IAAIK,UAAf,EAA2B;AACzB,UAAIV,YAAY,KAAKI,wBAArB,EAAsC;AACpCT,QAAAA,0BAA0B,CAACM,YAAD,CAA1B,CAAmDI,OAAnD,IAA8D,CAA9D;AACD,OAFD,MAEO,IAAI,CAAC,6BAAeN,UAAf,EAA2B;AAAEP,QAAAA;AAAF,OAA3B,CAAL,EAA0D;AAC/D,wCAAkBL,KAAlB,EAAyBY,UAAzB;AACD,OAFM,MAEA,IAAIb,WAAW,CAACa,UAAD,EAAaX,kBAAb,EAAiCC,uBAAjC,EAA0DoB,gBAA1D,EAA4ElB,OAA5E,CAAf,EAAqG;AAC1G,wCAAkBJ,KAAlB,EAAyBY,UAAzB;AACD;AACF;AACF;;AAED,sCAAsBZ,KAAtB,EAA6BQ,0BAA7B,EAAyDN,uBAAzD,EAAkFC,wBAAlF;AACA,sCAAsBH,KAAtB,EAA6BI,OAA7B;AACA,sCAAsBJ,KAAtB,EAA6BI,OAA7B;AACA,SAAO,CAAC,6BAAeJ,KAAf,EAAsB;AAAEK,IAAAA;AAAF,GAAtB,CAAR;AACD,CA3DD;;eA6DeN,W","sourcesContent":["import { TYPE_NAME_KEY } from \"@graphql-box/core\";\nimport {\n FRAGMENT_SPREAD,\n buildFieldKeysAndPaths,\n deleteChildFields,\n getChildFields,\n getName,\n hasChildFields,\n} from \"@graphql-box/helpers\";\nimport { FieldNode, FragmentDefinitionNode, OperationDefinitionNode } from \"graphql\";\nimport { CacheManagerContext, FieldPathChecklist, FragmentSpreadFieldCounter } from \"../defs\";\nimport checkFieldPathChecklist from \"./checkFieldPathChecklist\";\nimport { FragmentSpreadCheckist } from \"./createFragmentSpreadChecklist\";\nimport filterFragmentSpreads from \"./filterFragmentSpreads\";\nimport filterIDsAndTypeNames from \"./filterIDsAndTypeNames\";\nimport filterInlineFragments from \"./filterInlineFragments\";\n\nconst filterField = (\n field: FieldNode | FragmentDefinitionNode | OperationDefinitionNode,\n fieldPathChecklist: FieldPathChecklist,\n fragmentSpreadChecklist: FragmentSpreadCheckist,\n ancestorRequestFieldPath: string,\n context: CacheManagerContext,\n): boolean => {\n const { fragmentDefinitions, typeIDKey } = context;\n const fieldsAndTypeNames = getChildFields(field, { fragmentDefinitions });\n\n if (!fieldsAndTypeNames) {\n return false;\n }\n\n const fragmentSpreadFieldCounter: FragmentSpreadFieldCounter = {};\n\n for (let i = fieldsAndTypeNames.length - 1; i >= 0; i -= 1) {\n const { fieldNode: childField, fragmentKind, fragmentName, typeName: childTypeName } = fieldsAndTypeNames[i];\n\n if (fragmentKind === FRAGMENT_SPREAD && fragmentName && !fragmentSpreadFieldCounter[fragmentName]) {\n fragmentSpreadFieldCounter[fragmentName] = {\n hasData: 0,\n total: fragmentDefinitions?.[fragmentName]\n ? getChildFields(fragmentDefinitions?.[fragmentName], { fragmentDefinitions })?.length ?? 0\n : 0,\n };\n }\n\n const childFieldName = getName(childField);\n\n if (childFieldName === typeIDKey || childFieldName === TYPE_NAME_KEY) {\n continue;\n }\n\n const { requestFieldPath } = buildFieldKeysAndPaths(\n childField,\n {\n requestFieldPath: ancestorRequestFieldPath,\n },\n context,\n );\n\n const { hasData, typeUnused } = checkFieldPathChecklist(fieldPathChecklist.get(requestFieldPath), childTypeName);\n\n if (hasData || typeUnused) {\n if (fragmentKind === FRAGMENT_SPREAD) {\n fragmentSpreadFieldCounter[fragmentName as string].hasData += 1;\n } else if (!hasChildFields(childField, { fragmentDefinitions })) {\n deleteChildFields(field, childField);\n } else if (filterField(childField, fieldPathChecklist, fragmentSpreadChecklist, requestFieldPath, context)) {\n deleteChildFields(field, childField);\n }\n }\n }\n\n filterFragmentSpreads(field, fragmentSpreadFieldCounter, fragmentSpreadChecklist, ancestorRequestFieldPath);\n filterInlineFragments(field, context);\n filterIDsAndTypeNames(field, context);\n return !hasChildFields(field, { fragmentDefinitions });\n};\n\nexport default filterField;\n"],"file":"filterField.js"}
@@ -14,8 +14,6 @@ var _helpers = require("@graphql-box/helpers");
14
14
  var _filterField = _interopRequireDefault(require("./filterField"));
15
15
 
16
16
  var _default = (ast, fieldPathChecklist, fragmentSpreadChecklist, context) => {
17
- var _getFragmentDefinitio;
18
-
19
17
  const definitionsToFilter = (0, _keys2.default)(fragmentSpreadChecklist).reduce((namesAndPaths, key) => {
20
18
  const {
21
19
  deleted,
@@ -26,7 +24,9 @@ var _default = (ast, fieldPathChecklist, fragmentSpreadChecklist, context) => {
26
24
  path: fragmentSpreadChecklist[key].paths[0]
27
25
  }] : namesAndPaths;
28
26
  }, []);
29
- const fragmentDefinitions = (_getFragmentDefinitio = (0, _helpers.getFragmentDefinitions)(ast)) !== null && _getFragmentDefinitio !== void 0 ? _getFragmentDefinitio : {};
27
+ const {
28
+ fragmentDefinitions = {}
29
+ } = context;
30
30
  definitionsToFilter.forEach(({
31
31
  name,
32
32
  path
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/helpers/filterFragmentDefinitions.ts"],"names":["ast","fieldPathChecklist","fragmentSpreadChecklist","context","definitionsToFilter","reduce","namesAndPaths","key","deleted","total","name","path","paths","fragmentDefinitions","forEach","fragmentDefinition","definitionsToDelete","names","length","include"],"mappings":";;;;;;;;;;;AAAA;;AAKA;;eAEe,CACbA,GADa,EAEbC,kBAFa,EAGbC,uBAHa,EAIbC,OAJa,KAKV;AAAA;;AACH,QAAMC,mBAAmB,GAAG,oBAAKF,uBAAL,EAA8BG,MAA9B,CAC1B,CAACC,aAAD,EAAkDC,GAAlD,KAA0D;AACxD,UAAM;AAAEC,MAAAA,OAAF;AAAWC,MAAAA;AAAX,QAAqBP,uBAAuB,CAACK,GAAD,CAAlD;AAEA,WAAOC,OAAO,KAAK,CAAZ,IAAiBC,KAAK,KAAK,CAA3B,GACH,CAAC,GAAGH,aAAJ,EAAmB;AAAEI,MAAAA,IAAI,EAAEH,GAAR;AAAaI,MAAAA,IAAI,EAAET,uBAAuB,CAACK,GAAD,CAAvB,CAA6BK,KAA7B,CAAmC,CAAnC;AAAnB,KAAnB,CADG,GAEHN,aAFJ;AAGD,GAPyB,EAQ1B,EAR0B,CAA5B;AAWA,QAAMO,mBAAmB,4BAAG,qCAAuBb,GAAvB,CAAH,yEAAkC,EAA3D;AAEAI,EAAAA,mBAAmB,CAACU,OAApB,CAA4B,CAAC;AAAEJ,IAAAA,IAAF;AAAQC,IAAAA;AAAR,GAAD,KAAoB;AAC9C,UAAMI,kBAAkB,GAAGF,mBAAmB,CAACH,IAAD,CAA9C;AACA,8BAAYK,kBAAZ,EAAgCd,kBAAhC,EAAoDC,uBAApD,EAA6ES,IAA7E,EAAmFR,OAAnF;AACD,GAHD;AAKA,QAAMa,mBAAmB,GAAG,oBAAKd,uBAAL,EAA8BG,MAA9B,CAAqC,CAACY,KAAD,EAAkBV,GAAlB,KAA0B;AACzF,UAAM;AAAEC,MAAAA,OAAF;AAAWC,MAAAA;AAAX,QAAqBP,uBAAuB,CAACK,GAAD,CAAlD;AACA,WAAOC,OAAO,GAAG,CAAV,IAAeA,OAAO,KAAKC,KAA3B,GAAmC,CAAC,GAAGQ,KAAJ,EAAWV,GAAX,CAAnC,GAAqDU,KAA5D;AACD,GAH2B,EAGzB,EAHyB,CAA5B;;AAKA,MAAI,CAACD,mBAAmB,CAACE,MAAzB,EAAiC;AAC/B,WAAOlB,GAAP;AACD;;AAED,SAAO,wCAA0BA,GAA1B,EAA+B;AACpCmB,IAAAA,OAAO,EAAEH;AAD2B,GAA/B,CAAP;AAGD,C","sourcesContent":["import { deleteFragmentDefinitions, getFragmentDefinitions } from \"@graphql-box/helpers\";\nimport { DocumentNode } from \"graphql\";\nimport { keys } from \"lodash\";\nimport { CacheManagerContext, FieldPathChecklist } from \"../defs\";\nimport { FragmentSpreadCheckist } from \"./createFragmentSpreadChecklist\";\nimport filterField from \"./filterField\";\n\nexport default (\n ast: DocumentNode,\n fieldPathChecklist: FieldPathChecklist,\n fragmentSpreadChecklist: FragmentSpreadCheckist,\n context: CacheManagerContext,\n) => {\n const definitionsToFilter = keys(fragmentSpreadChecklist).reduce(\n (namesAndPaths: { name: string; path: string }[], key) => {\n const { deleted, total } = fragmentSpreadChecklist[key];\n\n return deleted === 0 && total === 1\n ? [...namesAndPaths, { name: key, path: fragmentSpreadChecklist[key].paths[0] as string }]\n : namesAndPaths;\n },\n [],\n );\n\n const fragmentDefinitions = getFragmentDefinitions(ast) ?? {};\n\n definitionsToFilter.forEach(({ name, path }) => {\n const fragmentDefinition = fragmentDefinitions[name];\n filterField(fragmentDefinition, fieldPathChecklist, fragmentSpreadChecklist, path, context);\n });\n\n const definitionsToDelete = keys(fragmentSpreadChecklist).reduce((names: string[], key) => {\n const { deleted, total } = fragmentSpreadChecklist[key];\n return deleted > 0 && deleted === total ? [...names, key] : names;\n }, []);\n\n if (!definitionsToDelete.length) {\n return ast;\n }\n\n return deleteFragmentDefinitions(ast, {\n include: definitionsToDelete,\n });\n};\n"],"file":"filterFragmentDefinitions.js"}
1
+ {"version":3,"sources":["../../../src/helpers/filterFragmentDefinitions.ts"],"names":["ast","fieldPathChecklist","fragmentSpreadChecklist","context","definitionsToFilter","reduce","namesAndPaths","key","deleted","total","name","path","paths","fragmentDefinitions","forEach","fragmentDefinition","definitionsToDelete","names","length","include"],"mappings":";;;;;;;;;;;AAAA;;AAKA;;eAEe,CACbA,GADa,EAEbC,kBAFa,EAGbC,uBAHa,EAIbC,OAJa,KAKV;AACH,QAAMC,mBAAmB,GAAG,oBAAKF,uBAAL,EAA8BG,MAA9B,CAC1B,CAACC,aAAD,EAAkDC,GAAlD,KAA0D;AACxD,UAAM;AAAEC,MAAAA,OAAF;AAAWC,MAAAA;AAAX,QAAqBP,uBAAuB,CAACK,GAAD,CAAlD;AAEA,WAAOC,OAAO,KAAK,CAAZ,IAAiBC,KAAK,KAAK,CAA3B,GACH,CAAC,GAAGH,aAAJ,EAAmB;AAAEI,MAAAA,IAAI,EAAEH,GAAR;AAAaI,MAAAA,IAAI,EAAET,uBAAuB,CAACK,GAAD,CAAvB,CAA6BK,KAA7B,CAAmC,CAAnC;AAAnB,KAAnB,CADG,GAEHN,aAFJ;AAGD,GAPyB,EAQ1B,EAR0B,CAA5B;AAWA,QAAM;AAAEO,IAAAA,mBAAmB,GAAG;AAAxB,MAA+BV,OAArC;AAEAC,EAAAA,mBAAmB,CAACU,OAApB,CAA4B,CAAC;AAAEJ,IAAAA,IAAF;AAAQC,IAAAA;AAAR,GAAD,KAAoB;AAC9C,UAAMI,kBAAkB,GAAGF,mBAAmB,CAACH,IAAD,CAA9C;AACA,8BAAYK,kBAAZ,EAAgCd,kBAAhC,EAAoDC,uBAApD,EAA6ES,IAA7E,EAAmFR,OAAnF;AACD,GAHD;AAKA,QAAMa,mBAAmB,GAAG,oBAAKd,uBAAL,EAA8BG,MAA9B,CAAqC,CAACY,KAAD,EAAkBV,GAAlB,KAA0B;AACzF,UAAM;AAAEC,MAAAA,OAAF;AAAWC,MAAAA;AAAX,QAAqBP,uBAAuB,CAACK,GAAD,CAAlD;AACA,WAAOC,OAAO,GAAG,CAAV,IAAeA,OAAO,KAAKC,KAA3B,GAAmC,CAAC,GAAGQ,KAAJ,EAAWV,GAAX,CAAnC,GAAqDU,KAA5D;AACD,GAH2B,EAGzB,EAHyB,CAA5B;;AAKA,MAAI,CAACD,mBAAmB,CAACE,MAAzB,EAAiC;AAC/B,WAAOlB,GAAP;AACD;;AAED,SAAO,wCAA0BA,GAA1B,EAA+B;AACpCmB,IAAAA,OAAO,EAAEH;AAD2B,GAA/B,CAAP;AAGD,C","sourcesContent":["import { deleteFragmentDefinitions } from \"@graphql-box/helpers\";\nimport { DocumentNode } from \"graphql\";\nimport { keys } from \"lodash\";\nimport { CacheManagerContext, FieldPathChecklist } from \"../defs\";\nimport { FragmentSpreadCheckist } from \"./createFragmentSpreadChecklist\";\nimport filterField from \"./filterField\";\n\nexport default (\n ast: DocumentNode,\n fieldPathChecklist: FieldPathChecklist,\n fragmentSpreadChecklist: FragmentSpreadCheckist,\n context: CacheManagerContext,\n) => {\n const definitionsToFilter = keys(fragmentSpreadChecklist).reduce(\n (namesAndPaths: { name: string; path: string }[], key) => {\n const { deleted, total } = fragmentSpreadChecklist[key];\n\n return deleted === 0 && total === 1\n ? [...namesAndPaths, { name: key, path: fragmentSpreadChecklist[key].paths[0] as string }]\n : namesAndPaths;\n },\n [],\n );\n\n const { fragmentDefinitions = {} } = context;\n\n definitionsToFilter.forEach(({ name, path }) => {\n const fragmentDefinition = fragmentDefinitions[name];\n filterField(fragmentDefinition, fieldPathChecklist, fragmentSpreadChecklist, path, context);\n });\n\n const definitionsToDelete = keys(fragmentSpreadChecklist).reduce((names: string[], key) => {\n const { deleted, total } = fragmentSpreadChecklist[key];\n return deleted > 0 && deleted === total ? [...names, key] : names;\n }, []);\n\n if (!definitionsToDelete.length) {\n return ast;\n }\n\n return deleteFragmentDefinitions(ast, {\n include: definitionsToDelete,\n });\n};\n"],"file":"filterFragmentDefinitions.js"}
@@ -11,8 +11,6 @@ var _keys2 = _interopRequireDefault(require("lodash/keys"));
11
11
 
12
12
  var _helpers = require("@graphql-box/helpers");
13
13
 
14
- var _buildKeysAndPaths = require("./buildKeysAndPaths");
15
-
16
14
  var _default = (fieldData, selectionNodes, ancestorKeysAndPaths, context) => {
17
15
  const fieldAndTypeName = (0, _helpers.resolveFragments)(selectionNodes, context.fragmentDefinitions);
18
16
  return (0, _keys2.default)(fieldData).reduce((acc, key) => {
@@ -23,7 +21,7 @@ var _default = (fieldData, selectionNodes, ancestorKeysAndPaths, context) => {
23
21
  if (match) {
24
22
  const {
25
23
  requestFieldPath
26
- } = (0, _buildKeysAndPaths.buildFieldKeysAndPaths)(match.fieldNode, ancestorKeysAndPaths, context);
24
+ } = (0, _helpers.buildFieldKeysAndPaths)(match.fieldNode, ancestorKeysAndPaths, context);
27
25
  const fieldTypeInfo = context.fieldTypeMap.get(requestFieldPath);
28
26
 
29
27
  if (!(fieldTypeInfo !== null && fieldTypeInfo !== void 0 && fieldTypeInfo.hasArguments) && !(fieldTypeInfo !== null && fieldTypeInfo !== void 0 && fieldTypeInfo.hasDirectives)) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/helpers/filterOutPropsWithArgsOrDirectives.ts"],"names":["fieldData","selectionNodes","ancestorKeysAndPaths","context","fieldAndTypeName","fragmentDefinitions","reduce","acc","key","match","find","fieldNode","requestFieldPath","fieldTypeInfo","fieldTypeMap","get","hasArguments","hasDirectives"],"mappings":";;;;;;;;;;;AACA;;AAIA;;eAEe,CACbA,SADa,EAEbC,cAFa,EAGbC,oBAHa,EAIbC,OAJa,KAKV;AACH,QAAMC,gBAAgB,GAAG,+BAAiBH,cAAjB,EAAiCE,OAAO,CAACE,mBAAzC,CAAzB;AAEA,SAAO,oBAAKL,SAAL,EAAgBM,MAAhB,CAAuB,CAACC,GAAD,EAAsBC,GAAtB,KAA8B;AAC1D,UAAMC,KAAK,GAAGL,gBAAgB,CAACM,IAAjB,CAAsB,CAAC;AAAEC,MAAAA;AAAF,KAAD,KAAoB,sBAAQA,SAAR,CAAD,KAAuDH,GAAhG,CAAd;;AAEA,QAAIC,KAAJ,EAAW;AACT,YAAM;AAAEG,QAAAA;AAAF,UAAuB,+CAAuBH,KAAK,CAACE,SAA7B,EAAwCT,oBAAxC,EAA8DC,OAA9D,CAA7B;AACA,YAAMU,aAAa,GAAGV,OAAO,CAACW,YAAR,CAAqBC,GAArB,CAAyBH,gBAAzB,CAAtB;;AAEA,UAAI,EAACC,aAAD,aAACA,aAAD,eAACA,aAAa,CAAEG,YAAhB,KAAgC,EAACH,aAAD,aAACA,aAAD,eAACA,aAAa,CAAEI,aAAhB,CAApC,EAAmE;AACjEV,QAAAA,GAAG,CAACC,GAAD,CAAH,GAAWR,SAAS,CAACQ,GAAD,CAApB;AACD;AACF;;AAED,WAAOD,GAAP;AACD,GAbM,EAaJ,EAbI,CAAP;AAcD,C","sourcesContent":["import { PlainObjectMap } from \"@graphql-box/core\";\nimport { getName, resolveFragments } from \"@graphql-box/helpers\";\nimport { FieldNode, SelectionNode } from \"graphql\";\nimport { keys } from \"lodash\";\nimport { CacheManagerContext, KeysAndPaths } from \"../defs\";\nimport { buildFieldKeysAndPaths } from \"./buildKeysAndPaths\";\n\nexport default (\n fieldData: PlainObjectMap,\n selectionNodes: readonly SelectionNode[],\n ancestorKeysAndPaths: KeysAndPaths,\n context: CacheManagerContext,\n) => {\n const fieldAndTypeName = resolveFragments(selectionNodes, context.fragmentDefinitions);\n\n return keys(fieldData).reduce((acc: PlainObjectMap, key) => {\n const match = fieldAndTypeName.find(({ fieldNode }) => (getName(fieldNode) as FieldNode[\"name\"][\"value\"]) === key);\n\n if (match) {\n const { requestFieldPath } = buildFieldKeysAndPaths(match.fieldNode, ancestorKeysAndPaths, context);\n const fieldTypeInfo = context.fieldTypeMap.get(requestFieldPath);\n\n if (!fieldTypeInfo?.hasArguments && !fieldTypeInfo?.hasDirectives) {\n acc[key] = fieldData[key];\n }\n }\n\n return acc;\n }, {});\n};\n"],"file":"filterOutPropsWithArgsOrDirectives.js"}
1
+ {"version":3,"sources":["../../../src/helpers/filterOutPropsWithArgsOrDirectives.ts"],"names":["fieldData","selectionNodes","ancestorKeysAndPaths","context","fieldAndTypeName","fragmentDefinitions","reduce","acc","key","match","find","fieldNode","requestFieldPath","fieldTypeInfo","fieldTypeMap","get","hasArguments","hasDirectives"],"mappings":";;;;;;;;;;;AACA;;eAKe,CACbA,SADa,EAEbC,cAFa,EAGbC,oBAHa,EAIbC,OAJa,KAKV;AACH,QAAMC,gBAAgB,GAAG,+BAAiBH,cAAjB,EAAiCE,OAAO,CAACE,mBAAzC,CAAzB;AAEA,SAAO,oBAAKL,SAAL,EAAgBM,MAAhB,CAAuB,CAACC,GAAD,EAAsBC,GAAtB,KAA8B;AAC1D,UAAMC,KAAK,GAAGL,gBAAgB,CAACM,IAAjB,CAAsB,CAAC;AAAEC,MAAAA;AAAF,KAAD,KAAoB,sBAAQA,SAAR,CAAD,KAAuDH,GAAhG,CAAd;;AAEA,QAAIC,KAAJ,EAAW;AACT,YAAM;AAAEG,QAAAA;AAAF,UAAuB,qCAAuBH,KAAK,CAACE,SAA7B,EAAwCT,oBAAxC,EAA8DC,OAA9D,CAA7B;AACA,YAAMU,aAAa,GAAGV,OAAO,CAACW,YAAR,CAAqBC,GAArB,CAAyBH,gBAAzB,CAAtB;;AAEA,UAAI,EAACC,aAAD,aAACA,aAAD,eAACA,aAAa,CAAEG,YAAhB,KAAgC,EAACH,aAAD,aAACA,aAAD,eAACA,aAAa,CAAEI,aAAhB,CAApC,EAAmE;AACjEV,QAAAA,GAAG,CAACC,GAAD,CAAH,GAAWR,SAAS,CAACQ,GAAD,CAApB;AACD;AACF;;AAED,WAAOD,GAAP;AACD,GAbM,EAaJ,EAbI,CAAP;AAcD,C","sourcesContent":["import { PlainObjectMap } from \"@graphql-box/core\";\nimport { KeysAndPaths, buildFieldKeysAndPaths, getName, resolveFragments } from \"@graphql-box/helpers\";\nimport { FieldNode, SelectionNode } from \"graphql\";\nimport { keys } from \"lodash\";\nimport { CacheManagerContext } from \"../defs\";\n\nexport default (\n fieldData: PlainObjectMap,\n selectionNodes: readonly SelectionNode[],\n ancestorKeysAndPaths: KeysAndPaths,\n context: CacheManagerContext,\n) => {\n const fieldAndTypeName = resolveFragments(selectionNodes, context.fragmentDefinitions);\n\n return keys(fieldData).reduce((acc: PlainObjectMap, key) => {\n const match = fieldAndTypeName.find(({ fieldNode }) => (getName(fieldNode) as FieldNode[\"name\"][\"value\"]) === key);\n\n if (match) {\n const { requestFieldPath } = buildFieldKeysAndPaths(match.fieldNode, ancestorKeysAndPaths, context);\n const fieldTypeInfo = context.fieldTypeMap.get(requestFieldPath);\n\n if (!fieldTypeInfo?.hasArguments && !fieldTypeInfo?.hasDirectives) {\n acc[key] = fieldData[key];\n }\n }\n\n return acc;\n }, {});\n};\n"],"file":"filterOutPropsWithArgsOrDirectives.js"}
@@ -9,8 +9,6 @@ exports.default = void 0;
9
9
 
10
10
  var _helpers = require("@graphql-box/helpers");
11
11
 
12
- var _buildKeysAndPaths = require("./buildKeysAndPaths");
13
-
14
12
  var _createFragmentSpreadChecklist = _interopRequireDefault(require("./createFragmentSpreadChecklist"));
15
13
 
16
14
  var _filterField = _interopRequireDefault(require("./filterField"));
@@ -35,7 +33,7 @@ var _default = (requestData, {
35
33
  return ast;
36
34
  }
37
35
 
38
- const fragmentSpreadChecklist = (0, _createFragmentSpreadChecklist.default)(requestData);
36
+ const fragmentSpreadChecklist = (0, _createFragmentSpreadChecklist.default)(requestData, context);
39
37
 
40
38
  for (let i = fieldsAndTypeNames.length - 1; i >= 0; i -= 1) {
41
39
  const {
@@ -43,7 +41,7 @@ var _default = (requestData, {
43
41
  } = fieldsAndTypeNames[i];
44
42
  const {
45
43
  requestFieldPath
46
- } = (0, _buildKeysAndPaths.buildFieldKeysAndPaths)(fieldNode, {
44
+ } = (0, _helpers.buildFieldKeysAndPaths)(fieldNode, {
47
45
  requestFieldPath: context.operation
48
46
  }, context);
49
47
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/helpers/filterQuery.ts"],"names":["requestData","fieldPathChecklist","context","ast","queryNode","operation","fragmentDefinitions","fieldsAndTypeNames","fragmentSpreadChecklist","i","length","fieldNode","requestFieldPath","queryFiltered"],"mappings":";;;;;;;;;AACA;;AAEA;;AACA;;AACA;;AACA;;eAEe,CAACA,WAAD,EAA2B;AAAEC,EAAAA;AAAF,CAA3B,EAAuEC,OAAvE,KAAwG;AACrH,QAAM;AAAEC,IAAAA;AAAF,MAAUH,WAAhB;AACA,QAAMI,SAAS,GAAG,sCAAwBD,GAAxB,EAA6BD,OAAO,CAACG,SAArC,EAAgD,CAAhD,CAAlB;AACA,QAAM;AAAEC,IAAAA;AAAF,MAA0BJ,OAAhC;AACA,QAAMK,kBAAkB,GAAG,6BAAeH,SAAf,EAA0B;AAAEE,IAAAA;AAAF,GAA1B,CAA3B;;AAEA,MAAI,CAACC,kBAAL,EAAyB;AACvB,WAAOJ,GAAP;AACD;;AAED,QAAMK,uBAAuB,GAAG,4CAA8BR,WAA9B,CAAhC;;AAEA,OAAK,IAAIS,CAAC,GAAGF,kBAAkB,CAACG,MAAnB,GAA4B,CAAzC,EAA4CD,CAAC,IAAI,CAAjD,EAAoDA,CAAC,IAAI,CAAzD,EAA4D;AAC1D,UAAM;AAAEE,MAAAA;AAAF,QAAgBJ,kBAAkB,CAACE,CAAD,CAAxC;AAEA,UAAM;AAAEG,MAAAA;AAAF,QAAuB,+CAC3BD,SAD2B,EAE3B;AACEC,MAAAA,gBAAgB,EAAEV,OAAO,CAACG;AAD5B,KAF2B,EAK3BH,OAL2B,CAA7B;;AAQA,QAAI,0BAAYS,SAAZ,EAAuBV,kBAAvB,EAA2CO,uBAA3C,EAAoEI,gBAApE,EAAsFV,OAAtF,CAAJ,EAAoG;AAClG,sCAAkBE,SAAlB,EAA6BO,SAA7B;AACD;AACF;;AAEDT,EAAAA,OAAO,CAACW,aAAR,GAAwB,IAAxB;AACA,SAAO,wCAA0BV,GAA1B,EAA+BF,kBAA/B,EAAmDO,uBAAnD,EAA4EN,OAA5E,CAAP;AACD,C","sourcesContent":["import { RequestData } from \"@graphql-box/core\";\nimport { deleteChildFields, getChildFields, getOperationDefinitions } from \"@graphql-box/helpers\";\nimport { CacheManagerContext, CachedResponseData } from \"../defs\";\nimport { buildFieldKeysAndPaths } from \"./buildKeysAndPaths\";\nimport createFragmentSpreadChecklist from \"./createFragmentSpreadChecklist\";\nimport filterField from \"./filterField\";\nimport filterFragmentDefinitions from \"./filterFragmentDefinitions\";\n\nexport default (requestData: RequestData, { fieldPathChecklist }: CachedResponseData, context: CacheManagerContext) => {\n const { ast } = requestData;\n const queryNode = getOperationDefinitions(ast, context.operation)[0];\n const { fragmentDefinitions } = context;\n const fieldsAndTypeNames = getChildFields(queryNode, { fragmentDefinitions });\n\n if (!fieldsAndTypeNames) {\n return ast;\n }\n\n const fragmentSpreadChecklist = createFragmentSpreadChecklist(requestData);\n\n for (let i = fieldsAndTypeNames.length - 1; i >= 0; i -= 1) {\n const { fieldNode } = fieldsAndTypeNames[i];\n\n const { requestFieldPath } = buildFieldKeysAndPaths(\n fieldNode,\n {\n requestFieldPath: context.operation,\n },\n context,\n );\n\n if (filterField(fieldNode, fieldPathChecklist, fragmentSpreadChecklist, requestFieldPath, context)) {\n deleteChildFields(queryNode, fieldNode);\n }\n }\n\n context.queryFiltered = true;\n return filterFragmentDefinitions(ast, fieldPathChecklist, fragmentSpreadChecklist, context);\n};\n"],"file":"filterQuery.js"}
1
+ {"version":3,"sources":["../../../src/helpers/filterQuery.ts"],"names":["requestData","fieldPathChecklist","context","ast","queryNode","operation","fragmentDefinitions","fieldsAndTypeNames","fragmentSpreadChecklist","i","length","fieldNode","requestFieldPath","queryFiltered"],"mappings":";;;;;;;;;AACA;;AAOA;;AACA;;AACA;;eAEe,CAACA,WAAD,EAA2B;AAAEC,EAAAA;AAAF,CAA3B,EAAuEC,OAAvE,KAAwG;AACrH,QAAM;AAAEC,IAAAA;AAAF,MAAUH,WAAhB;AACA,QAAMI,SAAS,GAAG,sCAAwBD,GAAxB,EAA6BD,OAAO,CAACG,SAArC,EAAgD,CAAhD,CAAlB;AACA,QAAM;AAAEC,IAAAA;AAAF,MAA0BJ,OAAhC;AACA,QAAMK,kBAAkB,GAAG,6BAAeH,SAAf,EAA0B;AAAEE,IAAAA;AAAF,GAA1B,CAA3B;;AAEA,MAAI,CAACC,kBAAL,EAAyB;AACvB,WAAOJ,GAAP;AACD;;AAED,QAAMK,uBAAuB,GAAG,4CAA8BR,WAA9B,EAA2CE,OAA3C,CAAhC;;AAEA,OAAK,IAAIO,CAAC,GAAGF,kBAAkB,CAACG,MAAnB,GAA4B,CAAzC,EAA4CD,CAAC,IAAI,CAAjD,EAAoDA,CAAC,IAAI,CAAzD,EAA4D;AAC1D,UAAM;AAAEE,MAAAA;AAAF,QAAgBJ,kBAAkB,CAACE,CAAD,CAAxC;AAEA,UAAM;AAAEG,MAAAA;AAAF,QAAuB,qCAC3BD,SAD2B,EAE3B;AACEC,MAAAA,gBAAgB,EAAEV,OAAO,CAACG;AAD5B,KAF2B,EAK3BH,OAL2B,CAA7B;;AAQA,QAAI,0BAAYS,SAAZ,EAAuBV,kBAAvB,EAA2CO,uBAA3C,EAAoEI,gBAApE,EAAsFV,OAAtF,CAAJ,EAAoG;AAClG,sCAAkBE,SAAlB,EAA6BO,SAA7B;AACD;AACF;;AAEDT,EAAAA,OAAO,CAACW,aAAR,GAAwB,IAAxB;AACA,SAAO,wCAA0BV,GAA1B,EAA+BF,kBAA/B,EAAmDO,uBAAnD,EAA4EN,OAA5E,CAAP;AACD,C","sourcesContent":["import { RequestData } from \"@graphql-box/core\";\nimport {\n buildFieldKeysAndPaths,\n deleteChildFields,\n getChildFields,\n getOperationDefinitions,\n} from \"@graphql-box/helpers\";\nimport { CacheManagerContext, CachedResponseData } from \"../defs\";\nimport createFragmentSpreadChecklist from \"./createFragmentSpreadChecklist\";\nimport filterField from \"./filterField\";\nimport filterFragmentDefinitions from \"./filterFragmentDefinitions\";\n\nexport default (requestData: RequestData, { fieldPathChecklist }: CachedResponseData, context: CacheManagerContext) => {\n const { ast } = requestData;\n const queryNode = getOperationDefinitions(ast, context.operation)[0];\n const { fragmentDefinitions } = context;\n const fieldsAndTypeNames = getChildFields(queryNode, { fragmentDefinitions });\n\n if (!fieldsAndTypeNames) {\n return ast;\n }\n\n const fragmentSpreadChecklist = createFragmentSpreadChecklist(requestData, context);\n\n for (let i = fieldsAndTypeNames.length - 1; i >= 0; i -= 1) {\n const { fieldNode } = fieldsAndTypeNames[i];\n\n const { requestFieldPath } = buildFieldKeysAndPaths(\n fieldNode,\n {\n requestFieldPath: context.operation,\n },\n context,\n );\n\n if (filterField(fieldNode, fieldPathChecklist, fragmentSpreadChecklist, requestFieldPath, context)) {\n deleteChildFields(queryNode, fieldNode);\n }\n }\n\n context.queryFiltered = true;\n return filterFragmentDefinitions(ast, fieldPathChecklist, fragmentSpreadChecklist, context);\n};\n"],"file":"filterQuery.js"}