@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.
- package/lib/browser/index.js +1 -1
- package/lib/browser/index.js.map +1 -1
- package/lib/browser/production.analysis.txt +44 -56
- package/lib/main/debug/log-cache-entry/index.js +8 -3
- package/lib/main/debug/log-cache-entry/index.js.map +1 -1
- package/lib/main/debug/log-cache-query/index.js +8 -3
- package/lib/main/debug/log-cache-query/index.js.map +1 -1
- package/lib/main/helpers/createFragmentSpreadChecklist.js +10 -15
- package/lib/main/helpers/createFragmentSpreadChecklist.js.map +1 -1
- package/lib/main/helpers/filterField.js +1 -3
- package/lib/main/helpers/filterField.js.map +1 -1
- package/lib/main/helpers/filterFragmentDefinitions.js +3 -3
- package/lib/main/helpers/filterFragmentDefinitions.js.map +1 -1
- package/lib/main/helpers/filterOutPropsWithArgsOrDirectives.js +1 -3
- package/lib/main/helpers/filterOutPropsWithArgsOrDirectives.js.map +1 -1
- package/lib/main/helpers/filterQuery.js +2 -4
- package/lib/main/helpers/filterQuery.js.map +1 -1
- package/lib/main/main/index.js +25 -14
- package/lib/main/main/index.js.map +1 -1
- package/lib/module/debug/log-cache-entry/index.js +8 -3
- package/lib/module/debug/log-cache-entry/index.js.map +1 -1
- package/lib/module/debug/log-cache-query/index.js +8 -3
- package/lib/module/debug/log-cache-query/index.js.map +1 -1
- package/lib/module/helpers/createFragmentSpreadChecklist.js +10 -14
- package/lib/module/helpers/createFragmentSpreadChecklist.js.map +1 -1
- package/lib/module/helpers/filterField.js +1 -2
- package/lib/module/helpers/filterField.js.map +1 -1
- package/lib/module/helpers/filterFragmentDefinitions.js +4 -4
- package/lib/module/helpers/filterFragmentDefinitions.js.map +1 -1
- package/lib/module/helpers/filterOutPropsWithArgsOrDirectives.js +1 -2
- package/lib/module/helpers/filterOutPropsWithArgsOrDirectives.js.map +1 -1
- package/lib/module/helpers/filterQuery.js +2 -3
- package/lib/module/helpers/filterQuery.js.map +1 -1
- package/lib/module/main/index.js +22 -10
- package/lib/module/main/index.js.map +1 -1
- package/lib/types/debug/log-cache-entry/index.d.ts.map +1 -1
- package/lib/types/debug/log-cache-query/index.d.ts.map +1 -1
- package/lib/types/defs/index.d.ts +3 -16
- package/lib/types/defs/index.d.ts.map +1 -1
- package/lib/types/helpers/createFragmentSpreadChecklist.d.ts +2 -1
- package/lib/types/helpers/createFragmentSpreadChecklist.d.ts.map +1 -1
- package/lib/types/helpers/filterField.d.ts.map +1 -1
- package/lib/types/helpers/filterOutPropsWithArgsOrDirectives.d.ts +2 -1
- package/lib/types/helpers/filterOutPropsWithArgsOrDirectives.d.ts.map +1 -1
- package/lib/types/helpers/filterQuery.d.ts.map +1 -1
- package/lib/types/main/index.d.ts +6 -3
- package/lib/types/main/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/__snapshots__/index.test.ts.snap +1082 -1082
- package/src/debug/log-cache-entry/index.ts +8 -3
- package/src/debug/log-cache-query/index.ts +8 -3
- package/src/defs/index.ts +8 -17
- package/src/helpers/createFragmentSpreadChecklist.ts +3 -3
- package/src/helpers/filterField.ts +8 -2
- package/src/helpers/filterFragmentDefinitions.ts +2 -2
- package/src/helpers/filterOutPropsWithArgsOrDirectives.ts +2 -3
- package/src/helpers/filterQuery.ts +7 -3
- package/src/main/index.ts +30 -14
- package/lib/main/helpers/buildKeysAndPaths.js +0 -73
- package/lib/main/helpers/buildKeysAndPaths.js.map +0 -1
- package/lib/module/helpers/buildKeysAndPaths.js +0 -54
- package/lib/module/helpers/buildKeysAndPaths.js.map +0 -1
- package/lib/types/helpers/buildKeysAndPaths.d.ts +0 -10
- package/lib/types/helpers/buildKeysAndPaths.d.ts.map +0 -1
- package/src/helpers/buildKeysAndPaths.ts +0 -71
|
@@ -1,41 +1,41 @@
|
|
|
1
1
|
-----------------------------
|
|
2
2
|
Rollup File Analysis
|
|
3
3
|
-----------------------------
|
|
4
|
-
bundle size:
|
|
5
|
-
original size:
|
|
4
|
+
bundle size: 94.706 KB
|
|
5
|
+
original size: 63.429 KB
|
|
6
6
|
code reduction: 0 %
|
|
7
|
-
module count:
|
|
7
|
+
module count: 24
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
███████████████████████████████████░░░░░░░░░░░░░░░
|
|
10
10
|
file: /src/main/index.ts
|
|
11
|
-
bundle space:
|
|
12
|
-
rendered size:
|
|
13
|
-
original size:
|
|
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:
|
|
21
|
-
rendered size:
|
|
22
|
-
original size: 1.
|
|
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:
|
|
30
|
-
rendered size:
|
|
31
|
-
original size: 1.
|
|
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.
|
|
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:
|
|
47
|
+
bundle space: 2.99 %
|
|
48
48
|
rendered size: 2.834 KB
|
|
49
|
-
original size: 2.
|
|
50
|
-
code reduction:
|
|
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.
|
|
70
|
-
rendered size: 1.
|
|
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.
|
|
79
|
-
rendered size: 1.
|
|
80
|
-
original size: 1.
|
|
81
|
-
code reduction: 3.
|
|
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.
|
|
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.
|
|
97
|
-
rendered size: 1.
|
|
98
|
-
original size: 1.
|
|
99
|
-
code reduction:
|
|
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.
|
|
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.
|
|
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.
|
|
111
|
+
bundle space: 0.98 %
|
|
124
112
|
rendered size: 927 Bytes
|
|
125
|
-
original size: 1.
|
|
126
|
-
code reduction:
|
|
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.
|
|
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.
|
|
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.
|
|
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.
|
|
160
|
-
rendered size:
|
|
161
|
-
original size:
|
|
162
|
-
code reduction:
|
|
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.
|
|
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.
|
|
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.
|
|
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
|
-
|
|
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","
|
|
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
|
-
|
|
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","
|
|
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
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
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":["
|
|
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,
|
|
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;;
|
|
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
|
|
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;
|
|
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,
|
|
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;;
|
|
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,
|
|
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;;
|
|
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"}
|