vscode-apollo 2.5.6 → 2.6.0

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 (178) hide show
  1. package/.circleci/config.yml +17 -0
  2. package/.github/workflows/E2E.yml +3 -2
  3. package/.github/workflows/build-prs.yml +2 -1
  4. package/.prettierignore +3 -0
  5. package/.semgrepignore +2 -0
  6. package/.vscode/settings.json +7 -2
  7. package/CHANGELOG.md +6 -0
  8. package/apollo.connectors.mapping.configuration.json +10 -0
  9. package/package.json +37 -3
  10. package/sampleWorkspace/connectors-community/.github/ISSUE_TEMPLATE/connector-bug-report.md +36 -0
  11. package/sampleWorkspace/connectors-community/.github/ISSUE_TEMPLATE/new-connector.md +10 -0
  12. package/sampleWorkspace/connectors-community/.github/renovate.json5 +3 -0
  13. package/sampleWorkspace/connectors-community/.vscode/extensions.json +3 -0
  14. package/sampleWorkspace/connectors-community/.vscode/settings.json +13 -0
  15. package/sampleWorkspace/connectors-community/.vscode/tasks.json +10 -0
  16. package/sampleWorkspace/connectors-community/README.md +108 -0
  17. package/sampleWorkspace/connectors-community/apollo.config.json +5 -0
  18. package/sampleWorkspace/connectors-community/connectors/.template/Dockerfile +5 -0
  19. package/sampleWorkspace/connectors-community/connectors/.template/README +46 -0
  20. package/sampleWorkspace/connectors-community/connectors/.template/connector.graphql +31 -0
  21. package/sampleWorkspace/connectors-community/connectors/.template/router.yaml +18 -0
  22. package/sampleWorkspace/connectors-community/connectors/.template/supergraph.yaml +6 -0
  23. package/sampleWorkspace/connectors-community/connectors/JSONPlaceholder/README +12 -0
  24. package/sampleWorkspace/connectors-community/connectors/JSONPlaceholder/albums.graphql +48 -0
  25. package/sampleWorkspace/connectors-community/connectors/JSONPlaceholder/comments.graphql +54 -0
  26. package/sampleWorkspace/connectors-community/connectors/JSONPlaceholder/photos.graphql +54 -0
  27. package/sampleWorkspace/connectors-community/connectors/JSONPlaceholder/posts.graphql +51 -0
  28. package/sampleWorkspace/connectors-community/connectors/JSONPlaceholder/supergraph.yaml +26 -0
  29. package/sampleWorkspace/connectors-community/connectors/JSONPlaceholder/todos.graphql +51 -0
  30. package/sampleWorkspace/connectors-community/connectors/JSONPlaceholder/users.graphql +80 -0
  31. package/sampleWorkspace/connectors-community/connectors/TM-Forum/README.md +9 -0
  32. package/sampleWorkspace/connectors-community/connectors/TM-Forum/router.yaml +18 -0
  33. package/sampleWorkspace/connectors-community/connectors/TM-Forum/supergraph.yaml +6 -0
  34. package/sampleWorkspace/connectors-community/connectors/TM-Forum/tmf622-ProductOrdering.graphql +296 -0
  35. package/sampleWorkspace/connectors-community/connectors/adobe-commerce-cloud/README.md +7 -0
  36. package/sampleWorkspace/connectors-community/connectors/adobe-commerce-cloud/addresses.graphql +30 -0
  37. package/sampleWorkspace/connectors-community/connectors/adobe-commerce-cloud/customer.graphql +77 -0
  38. package/sampleWorkspace/connectors-community/connectors/adobe-commerce-cloud/products.graphql +70 -0
  39. package/sampleWorkspace/connectors-community/connectors/adobe-commerce-cloud/router.yaml +24 -0
  40. package/sampleWorkspace/connectors-community/connectors/adobe-commerce-cloud/supergraph.yaml +14 -0
  41. package/sampleWorkspace/connectors-community/connectors/adobe-commerce-cloud/swagger.json +69226 -0
  42. package/sampleWorkspace/connectors-community/connectors/anthropic/Dockerfile +5 -0
  43. package/sampleWorkspace/connectors-community/connectors/anthropic/README +61 -0
  44. package/sampleWorkspace/connectors-community/connectors/anthropic/messages.graphql +258 -0
  45. package/sampleWorkspace/connectors-community/connectors/anthropic/router.yaml +18 -0
  46. package/sampleWorkspace/connectors-community/connectors/anthropic/supergraph.yaml +6 -0
  47. package/sampleWorkspace/connectors-community/connectors/apollo-ecomm-simple/README +3 -0
  48. package/sampleWorkspace/connectors-community/connectors/apollo-ecomm-simple/connector.graphql +38 -0
  49. package/sampleWorkspace/connectors-community/connectors/apollo-ecomm-simple/router.yaml +18 -0
  50. package/sampleWorkspace/connectors-community/connectors/apollo-ecomm-simple/supergraph.yaml +6 -0
  51. package/sampleWorkspace/connectors-community/connectors/apple/README +36 -0
  52. package/sampleWorkspace/connectors-community/connectors/apple/app-store-connect.graphql +100 -0
  53. package/sampleWorkspace/connectors-community/connectors/apple/router.yaml +18 -0
  54. package/sampleWorkspace/connectors-community/connectors/apple/supergraph.yaml +6 -0
  55. package/sampleWorkspace/connectors-community/connectors/aws/README +125 -0
  56. package/sampleWorkspace/connectors-community/connectors/aws/dynamodb.graphql +130 -0
  57. package/sampleWorkspace/connectors-community/connectors/aws/json-responses/product-price.json +10 -0
  58. package/sampleWorkspace/connectors-community/connectors/aws/json-responses/products.json +53 -0
  59. package/sampleWorkspace/connectors-community/connectors/aws/lambda.graphql +179 -0
  60. package/sampleWorkspace/connectors-community/connectors/aws/router.yaml +54 -0
  61. package/sampleWorkspace/connectors-community/connectors/aws/supergraph.yaml +10 -0
  62. package/sampleWorkspace/connectors-community/connectors/bored/README.md +35 -0
  63. package/sampleWorkspace/connectors-community/connectors/bored/bored.graphql +87 -0
  64. package/sampleWorkspace/connectors-community/connectors/bored/supergraph.yaml +6 -0
  65. package/sampleWorkspace/connectors-community/connectors/common-room/README.md +23 -0
  66. package/sampleWorkspace/connectors-community/connectors/common-room/contacts.graphql +141 -0
  67. package/sampleWorkspace/connectors-community/connectors/common-room/json-responses/members_email_.json +61 -0
  68. package/sampleWorkspace/connectors-community/connectors/common-room/router.yaml +18 -0
  69. package/sampleWorkspace/connectors-community/connectors/common-room/supergraph.yaml +6 -0
  70. package/sampleWorkspace/connectors-community/connectors/googlemaps/README.md +58 -0
  71. package/sampleWorkspace/connectors-community/connectors/googlemaps/distancematrix.graphql +155 -0
  72. package/sampleWorkspace/connectors-community/connectors/googlemaps/places-legacy.graphql +117 -0
  73. package/sampleWorkspace/connectors-community/connectors/googlemaps/places.graphql +399 -0
  74. package/sampleWorkspace/connectors-community/connectors/googlemaps/router.yaml +18 -0
  75. package/sampleWorkspace/connectors-community/connectors/googlemaps/supergraph.yaml +18 -0
  76. package/sampleWorkspace/connectors-community/connectors/googlemaps/timezone.graphql +64 -0
  77. package/sampleWorkspace/connectors-community/connectors/heygen/README +105 -0
  78. package/sampleWorkspace/connectors-community/connectors/heygen/avatars.graphql +79 -0
  79. package/sampleWorkspace/connectors-community/connectors/heygen/photo-avatars.graphql +454 -0
  80. package/sampleWorkspace/connectors-community/connectors/heygen/router.yaml +21 -0
  81. package/sampleWorkspace/connectors-community/connectors/heygen/supergraph.yaml +10 -0
  82. package/sampleWorkspace/connectors-community/connectors/jira/README +36 -0
  83. package/sampleWorkspace/connectors-community/connectors/jira/connector.graphql +197 -0
  84. package/sampleWorkspace/connectors-community/connectors/jira/router.yaml +18 -0
  85. package/sampleWorkspace/connectors-community/connectors/jira/supergraph.yaml +6 -0
  86. package/sampleWorkspace/connectors-community/connectors/museums/README.md +40 -0
  87. package/sampleWorkspace/connectors-community/connectors/museums/chicagoArt.graphql +150 -0
  88. package/sampleWorkspace/connectors-community/connectors/museums/met.graphql +119 -0
  89. package/sampleWorkspace/connectors-community/connectors/museums/supergraph.yaml +10 -0
  90. package/sampleWorkspace/connectors-community/connectors/nws/README.md +45 -0
  91. package/sampleWorkspace/connectors-community/connectors/nws/alerts.graphql +598 -0
  92. package/sampleWorkspace/connectors-community/connectors/nws/supergraph.yaml +6 -0
  93. package/sampleWorkspace/connectors-community/connectors/odata/README +18 -0
  94. package/sampleWorkspace/connectors-community/connectors/odata/connector.graphql +171 -0
  95. package/sampleWorkspace/connectors-community/connectors/odata/router.yaml +18 -0
  96. package/sampleWorkspace/connectors-community/connectors/odata/supergraph.yaml +6 -0
  97. package/sampleWorkspace/connectors-community/connectors/openai/README.md +61 -0
  98. package/sampleWorkspace/connectors-community/connectors/openai/assistants.graphql +285 -0
  99. package/sampleWorkspace/connectors-community/connectors/openai/chat-completions.graphql +169 -0
  100. package/sampleWorkspace/connectors-community/connectors/openai/models.graphql +47 -0
  101. package/sampleWorkspace/connectors-community/connectors/openai/router.yaml +24 -0
  102. package/sampleWorkspace/connectors-community/connectors/openai/supergraph.yaml +14 -0
  103. package/sampleWorkspace/connectors-community/connectors/pokeapi/README +45 -0
  104. package/sampleWorkspace/connectors-community/connectors/pokeapi/games.graphql +70 -0
  105. package/sampleWorkspace/connectors-community/connectors/pokeapi/locations.graphql +127 -0
  106. package/sampleWorkspace/connectors-community/connectors/pokeapi/moves.graphql +107 -0
  107. package/sampleWorkspace/connectors-community/connectors/pokeapi/pokemon.graphql +539 -0
  108. package/sampleWorkspace/connectors-community/connectors/pokeapi/router.yaml +18 -0
  109. package/sampleWorkspace/connectors-community/connectors/pokeapi/supergraph.yaml +18 -0
  110. package/sampleWorkspace/connectors-community/connectors/strapi/README.md +75 -0
  111. package/sampleWorkspace/connectors-community/connectors/strapi/router.yaml +19 -0
  112. package/sampleWorkspace/connectors-community/connectors/strapi/supergraph.yaml +6 -0
  113. package/sampleWorkspace/connectors-community/connectors/strapi/users.graphql +227 -0
  114. package/sampleWorkspace/connectors-community/connectors/stripe/README.md +83 -0
  115. package/sampleWorkspace/connectors-community/connectors/stripe/checkout.graphql +112 -0
  116. package/sampleWorkspace/connectors-community/connectors/stripe/core-resources.graphql +868 -0
  117. package/sampleWorkspace/connectors-community/connectors/stripe/payment-methods.graphql +526 -0
  118. package/sampleWorkspace/connectors-community/connectors/stripe/products.graphql +162 -0
  119. package/sampleWorkspace/connectors-community/connectors/stripe/router.yaml +26 -0
  120. package/sampleWorkspace/connectors-community/connectors/stripe/supergraph.yaml +18 -0
  121. package/sampleWorkspace/connectors-community/connectors/supabase/README.md +80 -0
  122. package/sampleWorkspace/connectors-community/connectors/supabase/router.yaml +5 -0
  123. package/sampleWorkspace/connectors-community/connectors/supabase/supabase.graphql +143 -0
  124. package/sampleWorkspace/connectors-community/connectors/supabase/supergraph.yaml +6 -0
  125. package/sampleWorkspace/connectors-community/connectors/thespacedevs/README +46 -0
  126. package/sampleWorkspace/connectors-community/connectors/thespacedevs/agencies.graphql +193 -0
  127. package/sampleWorkspace/connectors-community/connectors/thespacedevs/api-throttle.graphql +33 -0
  128. package/sampleWorkspace/connectors-community/connectors/thespacedevs/astronauts.graphql +237 -0
  129. package/sampleWorkspace/connectors-community/connectors/thespacedevs/celestial-bodies.graphql +131 -0
  130. package/sampleWorkspace/connectors-community/connectors/thespacedevs/docking-events.graphql +3460 -0
  131. package/sampleWorkspace/connectors-community/connectors/thespacedevs/launches.graphql +1156 -0
  132. package/sampleWorkspace/connectors-community/connectors/thespacedevs/supergraph.yaml +77 -0
  133. package/sampleWorkspace/connectors-community/connectors/tint/README +35 -0
  134. package/sampleWorkspace/connectors-community/connectors/tint/accounts.graphql +69 -0
  135. package/sampleWorkspace/connectors-community/connectors/tint/router.yaml +21 -0
  136. package/sampleWorkspace/connectors-community/connectors/tint/social-feeds.graphql +62 -0
  137. package/sampleWorkspace/connectors-community/connectors/tint/supergraph.yaml +10 -0
  138. package/sampleWorkspace/connectors-community/connectors/todoist/README.md +48 -0
  139. package/sampleWorkspace/connectors-community/connectors/todoist/supergraph.yaml +6 -0
  140. package/sampleWorkspace/connectors-community/connectors/todoist/todoist.graphql +381 -0
  141. package/sampleWorkspace/connectors-community/connectors/trimblemaps/README +99 -0
  142. package/sampleWorkspace/connectors-community/connectors/trimblemaps/connector.graphql +66 -0
  143. package/sampleWorkspace/connectors-community/connectors/trimblemaps/router.yaml +18 -0
  144. package/sampleWorkspace/connectors-community/connectors/trimblemaps/supergraph.yaml +6 -0
  145. package/sampleWorkspace/connectors-community/connectors/twilio/README.md +44 -0
  146. package/sampleWorkspace/connectors-community/connectors/twilio/messages.graphql +107 -0
  147. package/sampleWorkspace/connectors-community/connectors/twilio/router.yaml +6 -0
  148. package/sampleWorkspace/connectors-community/connectors/twilio/supergraph.yaml +6 -0
  149. package/sampleWorkspace/connectors-community/connectors/usgs/earthquakes/README.md +44 -0
  150. package/sampleWorkspace/connectors-community/connectors/usgs/earthquakes/earthquakes.graphql +235 -0
  151. package/sampleWorkspace/connectors-community/connectors/usgs/earthquakes/supergraph.yaml +6 -0
  152. package/sampleWorkspace/connectors-community/connectors/usgs/earthquakes-nominatum/README.md +44 -0
  153. package/sampleWorkspace/connectors-community/connectors/usgs/earthquakes-nominatum/earthquake-simple.graphql +87 -0
  154. package/sampleWorkspace/connectors-community/connectors/usgs/earthquakes-nominatum/router.yaml +3 -0
  155. package/sampleWorkspace/connectors-community/connectors/usgs/earthquakes-nominatum/supergraph.yaml +6 -0
  156. package/sampleWorkspace/connectors-community/connectors/usps/README +36 -0
  157. package/sampleWorkspace/connectors-community/connectors/usps/router.yaml +18 -0
  158. package/sampleWorkspace/connectors-community/connectors/usps/supergraph.yaml +6 -0
  159. package/sampleWorkspace/connectors-community/connectors/usps/tracking.graphql +118 -0
  160. package/sampleWorkspace/connectors-community/connectors/zendesk/README +36 -0
  161. package/sampleWorkspace/connectors-community/connectors/zendesk/connector.graphql +98 -0
  162. package/sampleWorkspace/connectors-community/connectors/zendesk/router.yaml +18 -0
  163. package/sampleWorkspace/connectors-community/connectors/zendesk/supergraph.yaml +6 -0
  164. package/sampleWorkspace/connectors-community/file-new/index.js +520 -0
  165. package/sampleWorkspace/connectors-community/package-lock.json +119 -0
  166. package/sampleWorkspace/connectors-community/package.json +20 -0
  167. package/sampleWorkspace/connectors-community/supergraph.yaml +6 -0
  168. package/sampleWorkspace/sampleWorkspace.code-workspace +29 -8
  169. package/src/__tests__/fixtures/textmate/test.apollo.connectors.mapping +213 -0
  170. package/src/__tests__/fixtures/textmate/test.connect.graphql +104 -0
  171. package/src/language-server/__tests__/fixtures/documents/functionCall.ts.snap +3 -3
  172. package/syntaxes/build.ts +266 -0
  173. package/syntaxes/connectors.mapping.json +532 -0
  174. package/syntaxes/connectors.mapping.yaml +440 -0
  175. package/syntaxes/graphql.connectors.json +426 -0
  176. package/syntaxes/graphql.connectors.yaml +254 -0
  177. package/syntaxes/graphql.json +8 -1
  178. package/syntaxes/tsconfig.json +6 -0
@@ -0,0 +1,532 @@
1
+ {
2
+ "$schema": "https://raw.githubusercontent.com/martinring/tmlanguage/master/tmlanguage.json",
3
+ "name": "Apollo Connectors Mapping Syntax",
4
+ "scopeName": "source.apollo.connectors.mapping",
5
+ "patterns": [
6
+ {
7
+ "include": "#JSONSelection"
8
+ },
9
+ {
10
+ "include": "#Comment"
11
+ },
12
+ {
13
+ "include": "source.graphql#graphql-skip-newlines"
14
+ }
15
+ ],
16
+ "repository": {
17
+ "JSONSelection": {
18
+ "patterns": [
19
+ {
20
+ "include": "#NamedSelection"
21
+ },
22
+ {
23
+ "include": "#PathSelection"
24
+ },
25
+ {
26
+ "include": "#Comment"
27
+ }
28
+ ]
29
+ },
30
+ "SubSelection": {
31
+ "begin": "\\s*(\\{)",
32
+ "beginCaptures": {
33
+ "1": {
34
+ "name": "punctuation.brace.open"
35
+ }
36
+ },
37
+ "end": "\\s*(})",
38
+ "endCaptures": {
39
+ "1": {
40
+ "name": "punctuation.brace.close"
41
+ }
42
+ },
43
+ "patterns": [
44
+ {
45
+ "include": "#NamedSelection"
46
+ },
47
+ {
48
+ "include": "#Comment"
49
+ }
50
+ ]
51
+ },
52
+ "PathSelection": {
53
+ "begin": "(?=\\$|([A-Z_a-z][0-9A-Z_a-z]*|(?:\"[^\"]*\"|'[^']*'))(?=\\s*\\??(?=\\s*(?:\\.(?:[A-Z_a-z][0-9A-Z_a-z]*|(?:\"[^\"]*\"|'[^']*'))|->[A-Z_a-z][0-9A-Z_a-z]*)))|@|$\\()",
54
+ "end": "(?=.)",
55
+ "applyEndPatternLast": 1,
56
+ "patterns": [
57
+ {
58
+ "include": "#ExprPath"
59
+ },
60
+ {
61
+ "include": "#VarPath"
62
+ },
63
+ {
64
+ "include": "#KeyPath"
65
+ },
66
+ {
67
+ "include": "#AtPath"
68
+ }
69
+ ]
70
+ },
71
+ "NamedSelection": {
72
+ "patterns": [
73
+ {
74
+ "begin": "([A-Z_a-z][0-9A-Z_a-z]*|(?:\"[^\"]*\"|'[^']*'))\\s*(:)\\s*(?=\\$|([A-Z_a-z][0-9A-Z_a-z]*|(?:\"[^\"]*\"|'[^']*'))(?=\\s*\\??(?=\\s*(?:\\.(?:[A-Z_a-z][0-9A-Z_a-z]*|(?:\"[^\"]*\"|'[^']*'))|->[A-Z_a-z][0-9A-Z_a-z]*)))|@|$\\()",
75
+ "beginCaptures": {
76
+ "1": {
77
+ "name": "variable.other.property.alias"
78
+ },
79
+ "2": {
80
+ "name": "punctuation.colon.alias"
81
+ }
82
+ },
83
+ "end": "(?=.)",
84
+ "applyEndPatternLast": 1,
85
+ "patterns": [
86
+ {
87
+ "include": "#PathSelection"
88
+ }
89
+ ]
90
+ },
91
+ {
92
+ "begin": "(\\.\\.\\.)\\s*(?=\\$|([A-Z_a-z][0-9A-Z_a-z]*|(?:\"[^\"]*\"|'[^']*'))(?=\\s*\\??(?=\\s*(?:\\.(?:[A-Z_a-z][0-9A-Z_a-z]*|(?:\"[^\"]*\"|'[^']*'))|->[A-Z_a-z][0-9A-Z_a-z]*)))|@|$\\()",
93
+ "beginCaptures": {
94
+ "1": {
95
+ "name": "keyword.operator.spread"
96
+ }
97
+ },
98
+ "end": "(?=.)",
99
+ "applyEndPatternLast": 1,
100
+ "patterns": [
101
+ {
102
+ "include": "#PathSelection"
103
+ }
104
+ ]
105
+ },
106
+ {
107
+ "include": "#PathSelection"
108
+ },
109
+ {
110
+ "begin": "([A-Z_a-z][0-9A-Z_a-z]*|(?:\"[^\"]*\"|'[^']*'))\\s*(:)\\s*(?=\\s*(\\{))",
111
+ "beginCaptures": {
112
+ "1": {
113
+ "name": "variable.other.property.alias"
114
+ },
115
+ "2": {
116
+ "name": "punctuation.colon.alias"
117
+ }
118
+ },
119
+ "end": "(?=.)",
120
+ "applyEndPatternLast": 1,
121
+ "patterns": [
122
+ {
123
+ "include": "#SubSelection"
124
+ }
125
+ ]
126
+ },
127
+ {
128
+ "include": "#NamedFieldSelection"
129
+ }
130
+ ]
131
+ },
132
+ "NamedFieldSelection": {
133
+ "begin": "(?:([A-Z_a-z][0-9A-Z_a-z]*|(?:\"[^\"]*\"|'[^']*'))\\s*(:)\\s*)?([A-Z_a-z][0-9A-Z_a-z]*|(?:\"[^\"]*\"|'[^']*'))",
134
+ "beginCaptures": {
135
+ "1": {
136
+ "name": "variable.other.property.alias"
137
+ },
138
+ "2": {
139
+ "name": "punctuation.colon.alias"
140
+ },
141
+ "3": {
142
+ "name": "variable.graphql"
143
+ }
144
+ },
145
+ "end": "(?=.)",
146
+ "applyEndPatternLast": 1,
147
+ "patterns": [
148
+ {
149
+ "include": "#SubSelection"
150
+ }
151
+ ]
152
+ },
153
+ "VarPath": {
154
+ "begin": "(\\$)([A-Z_a-z][0-9A-Z_a-z]*)?(?!\\w)",
155
+ "beginCaptures": {
156
+ "1": {
157
+ "name": "variable.other.constant"
158
+ },
159
+ "2": {
160
+ "name": "variable.graphql"
161
+ }
162
+ },
163
+ "end": "(?=.)",
164
+ "applyEndPatternLast": 1,
165
+ "patterns": [
166
+ {
167
+ "include": "#PathTail"
168
+ }
169
+ ]
170
+ },
171
+ "KeyPath": {
172
+ "begin": "([A-Z_a-z][0-9A-Z_a-z]*|(?:\"[^\"]*\"|'[^']*'))(?=\\s*\\??(?=\\s*(?:\\.(?:[A-Z_a-z][0-9A-Z_a-z]*|(?:\"[^\"]*\"|'[^']*'))|->[A-Z_a-z][0-9A-Z_a-z]*)))",
173
+ "beginCaptures": {
174
+ "1": {
175
+ "name": "variable.graphql"
176
+ }
177
+ },
178
+ "end": "(?=.)",
179
+ "applyEndPatternLast": 1,
180
+ "patterns": [
181
+ {
182
+ "include": "#PathTail"
183
+ }
184
+ ]
185
+ },
186
+ "AtPath": {
187
+ "begin": "(@)",
188
+ "beginCaptures": {
189
+ "1": {
190
+ "name": "variable.other.constant"
191
+ }
192
+ },
193
+ "end": "(?=.)",
194
+ "applyEndPatternLast": 1,
195
+ "patterns": [
196
+ {
197
+ "include": "#PathTail"
198
+ }
199
+ ]
200
+ },
201
+ "ExprPath": {
202
+ "begin": "(\\$)(?=\\()",
203
+ "beginCaptures": {
204
+ "1": {
205
+ "name": "variable.other.constant"
206
+ }
207
+ },
208
+ "end": "(?=.)",
209
+ "applyEndPatternLast": 1,
210
+ "patterns": [
211
+ {
212
+ "begin": "(\\()",
213
+ "beginCaptures": {
214
+ "1": {
215
+ "name": "punctuation.paren.open"
216
+ }
217
+ },
218
+ "end": "(\\))",
219
+ "endCaptures": {
220
+ "1": {
221
+ "name": "punctuation.paren.close"
222
+ }
223
+ },
224
+ "patterns": [
225
+ {
226
+ "include": "#LitExpr"
227
+ }
228
+ ]
229
+ },
230
+ {
231
+ "include": "#PathStep"
232
+ }
233
+ ]
234
+ },
235
+ "PathTail": {
236
+ "begin": "(\\?)?(?=\\s*(?:\\.(?:[A-Z_a-z][0-9A-Z_a-z]*|(?:\"[^\"]*\"|'[^']*'))|->[A-Z_a-z][0-9A-Z_a-z]*))",
237
+ "beginCaptures": {
238
+ "1": {
239
+ "name": "variable.question.mark"
240
+ }
241
+ },
242
+ "end": "(?=.)",
243
+ "applyEndPatternLast": 1,
244
+ "patterns": [
245
+ {
246
+ "include": "#PathStep"
247
+ }
248
+ ]
249
+ },
250
+ "PathStepDotAccess": {
251
+ "match": "(\\.)([A-Z_a-z][0-9A-Z_a-z]*|(?:\"[^\"]*\"|'[^']*'))(\\??)",
252
+ "captures": {
253
+ "1": {
254
+ "name": "variable.dot"
255
+ },
256
+ "2": {
257
+ "name": "variable.graphql"
258
+ },
259
+ "3": {
260
+ "name": "variable.question.mark"
261
+ }
262
+ }
263
+ },
264
+ "PathStepArrowMethodArgs": {
265
+ "begin": "(->)((echo|map|eq|match|first|last|slice|size|entries|or|and|jsonStringify|joinNotNull|filter|gte|lte|ne|gt|lt)|[A-Z_a-z][0-9A-Z_a-z]*)(\\()",
266
+ "end": "(\\))(\\??)",
267
+ "applyEndPatternLast": 1,
268
+ "beginCaptures": {
269
+ "1": {
270
+ "name": "keyword.operator.arrow"
271
+ },
272
+ "2": {
273
+ "name": "support.function"
274
+ },
275
+ "3": {
276
+ "name": "support.function.builtin"
277
+ },
278
+ "4": {
279
+ "name": "punctuation.brace.open"
280
+ }
281
+ },
282
+ "endCaptures": {
283
+ "1": {
284
+ "name": "punctuation.brace.close"
285
+ },
286
+ "2": {
287
+ "name": "variable.question.mark"
288
+ }
289
+ },
290
+ "patterns": [
291
+ {
292
+ "include": "#LitExpr"
293
+ },
294
+ {
295
+ "match": ",",
296
+ "name": "punctuation.separator.comma"
297
+ }
298
+ ]
299
+ },
300
+ "PathStepArrowAccess": {
301
+ "match": "(->)([A-Z_a-z][0-9A-Z_a-z]*)(\\??)",
302
+ "captures": {
303
+ "1": {
304
+ "name": "keyword.operator.arrow"
305
+ },
306
+ "2": {
307
+ "name": "variable.graphql"
308
+ },
309
+ "3": {
310
+ "name": "variable.question.mark"
311
+ }
312
+ }
313
+ },
314
+ "PathStep": {
315
+ "patterns": [
316
+ {
317
+ "include": "#PathStepDotAccess"
318
+ },
319
+ {
320
+ "include": "#PathStepArrowMethodArgs"
321
+ },
322
+ {
323
+ "include": "#PathStepArrowAccess"
324
+ }
325
+ ]
326
+ },
327
+ "LitExpr": {
328
+ "patterns": [
329
+ {
330
+ "include": "#LitOpChainCenter"
331
+ },
332
+ {
333
+ "include": "#LitPathTail"
334
+ },
335
+ {
336
+ "include": "#LitPrimitive"
337
+ },
338
+ {
339
+ "include": "#LitObject"
340
+ },
341
+ {
342
+ "include": "#LitArray"
343
+ },
344
+ {
345
+ "include": "#PathSelection"
346
+ },
347
+ {
348
+ "include": "#Comment"
349
+ }
350
+ ]
351
+ },
352
+ "LitPathTail": {
353
+ "begin": "(?<!\\()(?=\\s*\\??(?=\\s*(?:\\.(?:[A-Z_a-z][0-9A-Z_a-z]*|(?:\"[^\"]*\"|'[^']*'))|->[A-Z_a-z][0-9A-Z_a-z]*)))",
354
+ "end": "(?=.)",
355
+ "applyEndPatternLast": 1,
356
+ "patterns": [
357
+ {
358
+ "include": "#PathTail"
359
+ }
360
+ ]
361
+ },
362
+ "LitOpChainCenter": {
363
+ "match": "(?<![-!%\\&(*+/<-?|])(\\?\\?|\\?!|&&|\\|\\||==|!=|<=??|(?<!-)>|(?<!-)>=|\\+|-(?!>)|[%*/])(?!\\s*[-!%\\&)*+/<-?|])",
364
+ "captures": {
365
+ "1": {
366
+ "name": "keyword.operator"
367
+ }
368
+ }
369
+ },
370
+ "LitPrimitive": {
371
+ "patterns": [
372
+ {
373
+ "include": "#LitString"
374
+ },
375
+ {
376
+ "include": "#LitNumber"
377
+ },
378
+ {
379
+ "match": "\\b(true|false|null)\\b",
380
+ "name": "constant.language"
381
+ }
382
+ ]
383
+ },
384
+ "LitString": {
385
+ "begin": "((\")|('))",
386
+ "end": "(?<!\\\\)\\\\{2}*(?=\\1)((\")|('))",
387
+ "contentName": "string.quoted.graphql",
388
+ "beginCaptures": {
389
+ "1": {
390
+ "name": "punctuation.definition.string.begin.graphql"
391
+ },
392
+ "2": {
393
+ "name": "string.quoted.double.graphql"
394
+ },
395
+ "3": {
396
+ "name": "string.quoted.single.graphql"
397
+ }
398
+ },
399
+ "endCaptures": {
400
+ "1": {
401
+ "name": "punctuation.definition.string.end.graphql"
402
+ },
403
+ "2": {
404
+ "name": "string.quoted.double.graphql"
405
+ },
406
+ "3": {
407
+ "name": "string.quoted.single.graphql"
408
+ }
409
+ }
410
+ },
411
+ "LitNumber": {
412
+ "name": "constant.numeric",
413
+ "match": "(-?)([0-9]+(\\.[0-9]*)?|\\.[0-9]+)"
414
+ },
415
+ "LitObject": {
416
+ "begin": "\\s*(\\{)",
417
+ "beginCaptures": {
418
+ "1": {
419
+ "name": "punctuation.brace.open"
420
+ }
421
+ },
422
+ "end": "\\s*(})",
423
+ "endCaptures": {
424
+ "1": {
425
+ "name": "punctuation.brace.close"
426
+ }
427
+ },
428
+ "patterns": [
429
+ {
430
+ "include": "#LitProperty"
431
+ },
432
+ {
433
+ "match": ",",
434
+ "name": "punctuation.separator.comma"
435
+ },
436
+ {
437
+ "include": "#Comment"
438
+ }
439
+ ]
440
+ },
441
+ "LitProperty": {
442
+ "begin": "\\b([A-Z_a-z][0-9A-Z_a-z]*)\\s*(:)\\s*",
443
+ "beginCaptures": {
444
+ "1": {
445
+ "name": "variable.other.property"
446
+ },
447
+ "2": {
448
+ "name": "punctuation.colon.alias"
449
+ }
450
+ },
451
+ "end": "(?=.)",
452
+ "applyEndPatternLast": 1,
453
+ "patterns": [
454
+ {
455
+ "include": "#LitExpr"
456
+ }
457
+ ]
458
+ },
459
+ "LitArray": {
460
+ "begin": "\\s*(\\[)",
461
+ "beginCaptures": {
462
+ "1": {
463
+ "name": "punctuation.bracket.open"
464
+ }
465
+ },
466
+ "end": "\\s*(])",
467
+ "endCaptures": {
468
+ "1": {
469
+ "name": "punctuation.bracket.close"
470
+ }
471
+ },
472
+ "patterns": [
473
+ {
474
+ "include": "#LitExpr"
475
+ },
476
+ {
477
+ "match": ",",
478
+ "name": "punctuation.separator.comma"
479
+ }
480
+ ]
481
+ },
482
+ "Comment": {
483
+ "match": "(\\s*)(#.*?)$",
484
+ "captures": {
485
+ "1": {
486
+ "name": "punctuation.whitespace.comment.leading.connectors.mapping"
487
+ },
488
+ "2": {
489
+ "name": "comment.line.connectors.mapping"
490
+ }
491
+ }
492
+ },
493
+ "JSONSelectionString": {
494
+ "contentName": "string.quoted",
495
+ "begin": "(\")",
496
+ "beginCaptures": {
497
+ "1": {
498
+ "name": "string.quoted.double.graphql punctuation.definition.string.begin.graphql"
499
+ }
500
+ },
501
+ "end": "(\")",
502
+ "endCaptures": {
503
+ "1": {
504
+ "name": "string.quoted.double.graphql punctuation.definition.string.end.graphql"
505
+ }
506
+ },
507
+ "patterns": [
508
+ {
509
+ "begin": "\\s*(\\{)",
510
+ "beginCaptures": {
511
+ "1": {
512
+ "name": "punctuation.section.embedded punctuation.brace.open"
513
+ }
514
+ },
515
+ "end": "\\s*(})",
516
+ "endCaptures": {
517
+ "1": {
518
+ "name": "punctuation.section.embedded punctuation.brace.close"
519
+ }
520
+ },
521
+ "contentName": "meta.embedded.string.connectors.mapping.selectionstring.graphql",
522
+ "debugName": "embedded",
523
+ "patterns": [
524
+ {
525
+ "include": "#PathSelection"
526
+ }
527
+ ]
528
+ }
529
+ ]
530
+ }
531
+ }
532
+ }