gremlin 4.0.0-beta.2 → 4.0.0-beta.3

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 (261) hide show
  1. package/build/cjs/driver/auth.cjs +11 -4
  2. package/build/cjs/driver/auth.d.cts +1 -1
  3. package/build/cjs/driver/client.cjs +82 -38
  4. package/build/cjs/driver/client.d.cts +30 -27
  5. package/build/cjs/driver/connection.cjs +173 -60
  6. package/build/cjs/driver/connection.d.cts +69 -26
  7. package/build/cjs/driver/dispatcher.browser.cjs +57 -0
  8. package/build/cjs/driver/dispatcher.browser.d.cts +35 -0
  9. package/build/cjs/driver/dispatcher.cjs +101 -0
  10. package/build/cjs/driver/dispatcher.d.cts +48 -0
  11. package/build/cjs/driver/driver-remote-connection.cjs +27 -15
  12. package/build/cjs/driver/driver-remote-connection.d.cts +10 -4
  13. package/build/cjs/driver/http-request.cjs +64 -0
  14. package/build/cjs/driver/http-request.d.cts +28 -0
  15. package/build/cjs/driver/logger.cjs +45 -0
  16. package/build/cjs/driver/logger.d.cts +29 -0
  17. package/build/cjs/driver/remote-connection.cjs +5 -8
  18. package/build/cjs/driver/remote-connection.d.cts +6 -21
  19. package/build/cjs/driver/request-message.cjs +110 -21
  20. package/build/cjs/driver/request-message.d.cts +38 -8
  21. package/build/cjs/driver/response-error.cjs +3 -3
  22. package/build/cjs/driver/response-error.d.cts +2 -2
  23. package/build/cjs/index.cjs +21 -0
  24. package/build/cjs/index.d.cts +47 -0
  25. package/build/cjs/language/grammar/GremlinLexer.cjs +1669 -1615
  26. package/build/cjs/language/grammar/GremlinLexer.d.cts +325 -316
  27. package/build/cjs/language/grammar/GremlinListener.cjs +322 -8
  28. package/build/cjs/language/grammar/GremlinListener.d.cts +351 -10
  29. package/build/cjs/language/grammar/GremlinParser.cjs +8700 -5798
  30. package/build/cjs/language/grammar/GremlinParser.d.cts +998 -619
  31. package/build/cjs/language/translator/AnonymizedTranslateVisitor.cjs +9 -0
  32. package/build/cjs/language/translator/AnonymizedTranslateVisitor.d.cts +3 -0
  33. package/build/cjs/language/translator/DotNetTranslateVisitor.cjs +113 -4
  34. package/build/cjs/language/translator/DotNetTranslateVisitor.d.cts +13 -2
  35. package/build/cjs/language/translator/GoTranslateVisitor.cjs +82 -0
  36. package/build/cjs/language/translator/GoTranslateVisitor.d.cts +9 -0
  37. package/build/cjs/language/translator/GroovyTranslateVisitor.cjs +23 -0
  38. package/build/cjs/language/translator/GroovyTranslateVisitor.d.cts +3 -0
  39. package/build/cjs/language/translator/JavaTranslateVisitor.cjs +23 -0
  40. package/build/cjs/language/translator/JavaTranslateVisitor.d.cts +3 -0
  41. package/build/cjs/language/translator/JavascriptTranslateVisitor.cjs +11 -0
  42. package/build/cjs/language/translator/JavascriptTranslateVisitor.d.cts +3 -0
  43. package/build/cjs/language/translator/PythonTranslateVisitor.cjs +39 -3
  44. package/build/cjs/language/translator/PythonTranslateVisitor.d.cts +3 -0
  45. package/build/cjs/language/translator/TranslateVisitor.cjs +9 -0
  46. package/build/cjs/language/translator/TranslateVisitor.d.cts +3 -0
  47. package/build/cjs/process/anonymous-traversal.cjs +5 -1
  48. package/build/cjs/process/graph-traversal.cjs +139 -8
  49. package/build/cjs/process/graph-traversal.d.cts +84 -3
  50. package/build/cjs/process/gremlin-lang.cjs +119 -7
  51. package/build/cjs/process/gremlin-lang.d.cts +6 -1
  52. package/build/cjs/process/gvalue.cjs +42 -0
  53. package/build/cjs/process/gvalue.d.cts +7 -0
  54. package/build/cjs/process/transaction.cjs +125 -23
  55. package/build/cjs/process/transaction.d.cts +50 -14
  56. package/build/cjs/process/traversal.cjs +105 -48
  57. package/build/cjs/process/traversal.d.cts +36 -10
  58. package/build/cjs/structure/PDTRegistry.cjs +116 -0
  59. package/build/cjs/structure/PDTRegistry.d.cts +34 -0
  60. package/build/cjs/structure/graph.cjs +351 -8
  61. package/build/cjs/structure/graph.d.cts +122 -3
  62. package/build/cjs/structure/io/binary/GraphBinary.cjs +68 -39
  63. package/build/cjs/structure/io/binary/GraphBinary.d.cts +15 -1
  64. package/build/cjs/structure/io/binary/internals/AnySerializer.cjs +34 -17
  65. package/build/cjs/structure/io/binary/internals/AnySerializer.d.cts +12 -2
  66. package/build/cjs/structure/io/binary/internals/ArraySerializer.cjs +41 -72
  67. package/build/cjs/structure/io/binary/internals/ArraySerializer.d.cts +14 -7
  68. package/build/cjs/structure/io/binary/internals/BigIntegerSerializer.cjs +34 -54
  69. package/build/cjs/structure/io/binary/internals/BigIntegerSerializer.d.cts +12 -7
  70. package/build/cjs/structure/io/binary/internals/BinarySerializer.cjs +31 -51
  71. package/build/cjs/structure/io/binary/internals/BinarySerializer.d.cts +12 -4
  72. package/build/cjs/structure/io/binary/internals/BooleanSerializer.cjs +28 -42
  73. package/build/cjs/structure/io/binary/internals/BooleanSerializer.d.cts +12 -4
  74. package/build/cjs/structure/io/binary/internals/ByteSerializer.cjs +24 -38
  75. package/build/cjs/structure/io/binary/internals/ByteSerializer.d.cts +12 -4
  76. package/build/cjs/structure/io/binary/internals/CompositePDTSerializer.cjs +81 -0
  77. package/build/cjs/structure/io/binary/internals/CompositePDTSerializer.d.cts +10 -0
  78. package/build/cjs/structure/io/binary/internals/DateTimeSerializer.cjs +52 -69
  79. package/build/cjs/structure/io/binary/internals/DateTimeSerializer.d.cts +12 -7
  80. package/build/cjs/structure/io/binary/internals/DoubleSerializer.cjs +24 -38
  81. package/build/cjs/structure/io/binary/internals/DoubleSerializer.d.cts +12 -4
  82. package/build/cjs/structure/io/binary/internals/EdgeSerializer.cjs +69 -124
  83. package/build/cjs/structure/io/binary/internals/EdgeSerializer.d.cts +14 -12
  84. package/build/cjs/structure/io/binary/internals/EnumSerializer.cjs +47 -59
  85. package/build/cjs/structure/io/binary/internals/EnumSerializer.d.cts +19 -4
  86. package/build/cjs/structure/io/binary/internals/FloatSerializer.cjs +24 -38
  87. package/build/cjs/structure/io/binary/internals/FloatSerializer.d.cts +12 -4
  88. package/build/cjs/structure/io/binary/internals/GraphBinaryReader.cjs +111 -37
  89. package/build/cjs/structure/io/binary/internals/GraphBinaryReader.d.cts +26 -2
  90. package/build/cjs/structure/io/binary/internals/GraphBinaryWriter.cjs +6 -6
  91. package/build/cjs/structure/io/binary/internals/GraphSerializer.cjs +184 -0
  92. package/build/cjs/structure/io/binary/internals/GraphSerializer.d.cts +22 -0
  93. package/build/cjs/structure/io/binary/internals/IntSerializer.cjs +33 -38
  94. package/build/cjs/structure/io/binary/internals/IntSerializer.d.cts +19 -4
  95. package/build/cjs/structure/io/binary/internals/LongSerializer.cjs +29 -42
  96. package/build/cjs/structure/io/binary/internals/LongSerializer.d.cts +13 -4
  97. package/build/cjs/structure/io/binary/internals/MapSerializer.cjs +36 -70
  98. package/build/cjs/structure/io/binary/internals/MapSerializer.d.cts +14 -7
  99. package/build/cjs/structure/io/binary/internals/MarkerSerializer.cjs +30 -33
  100. package/build/cjs/structure/io/binary/internals/MarkerSerializer.d.cts +13 -4
  101. package/build/cjs/structure/io/binary/internals/NumberSerializationStrategy.cjs +28 -2
  102. package/build/cjs/structure/io/binary/internals/NumberSerializationStrategy.d.cts +0 -3
  103. package/build/cjs/structure/io/binary/internals/PathSerializer.cjs +30 -55
  104. package/build/cjs/structure/io/binary/internals/PathSerializer.d.cts +14 -7
  105. package/build/cjs/structure/io/binary/internals/PrimitivePDTSerializer.cjs +80 -0
  106. package/build/cjs/structure/io/binary/internals/PrimitivePDTSerializer.d.cts +10 -0
  107. package/build/cjs/structure/io/binary/internals/PropertySerializer.cjs +32 -69
  108. package/build/cjs/structure/io/binary/internals/PropertySerializer.d.cts +14 -7
  109. package/build/cjs/structure/io/binary/internals/SetSerializer.cjs +39 -73
  110. package/build/cjs/structure/io/binary/internals/SetSerializer.d.cts +14 -7
  111. package/build/cjs/structure/io/binary/internals/ShortSerializer.cjs +24 -38
  112. package/build/cjs/structure/io/binary/internals/ShortSerializer.d.cts +12 -4
  113. package/build/cjs/structure/io/binary/internals/StreamReader.cjs +184 -0
  114. package/build/cjs/structure/io/binary/internals/StreamReader.d.cts +69 -0
  115. package/build/cjs/structure/io/binary/internals/StringSerializer.cjs +34 -53
  116. package/build/cjs/structure/io/binary/internals/StringSerializer.d.cts +14 -4
  117. package/build/cjs/structure/io/binary/internals/StubSerializer.cjs +2 -1
  118. package/build/cjs/structure/io/binary/internals/StubSerializer.d.cts +1 -1
  119. package/build/cjs/structure/io/binary/internals/TreeSerializer.cjs +139 -0
  120. package/build/cjs/structure/io/binary/internals/TreeSerializer.d.cts +54 -0
  121. package/build/cjs/structure/io/binary/internals/UnspecifiedNullSerializer.cjs +8 -31
  122. package/build/cjs/structure/io/binary/internals/UnspecifiedNullSerializer.d.cts +6 -4
  123. package/build/cjs/structure/io/binary/internals/UuidSerializer.cjs +33 -49
  124. package/build/cjs/structure/io/binary/internals/UuidSerializer.d.cts +12 -7
  125. package/build/cjs/structure/io/binary/internals/VertexPropertySerializer.cjs +37 -95
  126. package/build/cjs/structure/io/binary/internals/VertexPropertySerializer.d.cts +14 -7
  127. package/build/cjs/structure/io/binary/internals/VertexSerializer.cjs +41 -68
  128. package/build/cjs/structure/io/binary/internals/VertexSerializer.d.cts +14 -9
  129. package/build/cjs/utils.cjs +157 -40
  130. package/build/cjs/utils.d.cts +62 -4
  131. package/build/esm/driver/auth.d.ts +1 -1
  132. package/build/esm/driver/auth.js +11 -4
  133. package/build/esm/driver/client.d.ts +30 -27
  134. package/build/esm/driver/client.js +82 -38
  135. package/build/esm/driver/connection.d.ts +69 -26
  136. package/build/esm/driver/connection.js +172 -60
  137. package/build/esm/driver/dispatcher.browser.d.ts +35 -0
  138. package/build/esm/driver/dispatcher.browser.js +53 -0
  139. package/build/esm/driver/dispatcher.d.ts +48 -0
  140. package/build/esm/driver/dispatcher.js +94 -0
  141. package/build/esm/driver/driver-remote-connection.d.ts +10 -4
  142. package/build/esm/driver/driver-remote-connection.js +27 -15
  143. package/build/esm/driver/http-request.d.ts +28 -0
  144. package/build/esm/driver/http-request.js +60 -0
  145. package/build/esm/driver/logger.d.ts +29 -0
  146. package/build/esm/driver/logger.js +42 -0
  147. package/build/esm/driver/remote-connection.d.ts +6 -21
  148. package/build/esm/driver/remote-connection.js +5 -8
  149. package/build/esm/driver/request-message.d.ts +38 -8
  150. package/build/esm/driver/request-message.js +107 -21
  151. package/build/esm/driver/response-error.d.ts +2 -2
  152. package/build/esm/driver/response-error.js +3 -3
  153. package/build/esm/index.d.ts +47 -0
  154. package/build/esm/index.js +21 -0
  155. package/build/esm/language/grammar/GremlinLexer.d.ts +325 -316
  156. package/build/esm/language/grammar/GremlinLexer.js +1669 -1615
  157. package/build/esm/language/grammar/GremlinListener.d.ts +351 -10
  158. package/build/esm/language/grammar/GremlinListener.js +322 -8
  159. package/build/esm/language/grammar/GremlinParser.d.ts +998 -619
  160. package/build/esm/language/grammar/GremlinParser.js +8646 -5778
  161. package/build/esm/language/translator/AnonymizedTranslateVisitor.d.ts +3 -0
  162. package/build/esm/language/translator/AnonymizedTranslateVisitor.js +9 -0
  163. package/build/esm/language/translator/DotNetTranslateVisitor.d.ts +13 -2
  164. package/build/esm/language/translator/DotNetTranslateVisitor.js +113 -4
  165. package/build/esm/language/translator/GoTranslateVisitor.d.ts +9 -0
  166. package/build/esm/language/translator/GoTranslateVisitor.js +82 -0
  167. package/build/esm/language/translator/GroovyTranslateVisitor.d.ts +3 -0
  168. package/build/esm/language/translator/GroovyTranslateVisitor.js +23 -0
  169. package/build/esm/language/translator/JavaTranslateVisitor.d.ts +3 -0
  170. package/build/esm/language/translator/JavaTranslateVisitor.js +23 -0
  171. package/build/esm/language/translator/JavascriptTranslateVisitor.d.ts +3 -0
  172. package/build/esm/language/translator/JavascriptTranslateVisitor.js +11 -0
  173. package/build/esm/language/translator/PythonTranslateVisitor.d.ts +3 -0
  174. package/build/esm/language/translator/PythonTranslateVisitor.js +39 -3
  175. package/build/esm/language/translator/TranslateVisitor.d.ts +3 -0
  176. package/build/esm/language/translator/TranslateVisitor.js +9 -0
  177. package/build/esm/process/anonymous-traversal.js +5 -1
  178. package/build/esm/process/graph-traversal.d.ts +84 -3
  179. package/build/esm/process/graph-traversal.js +139 -8
  180. package/build/esm/process/gremlin-lang.d.ts +6 -1
  181. package/build/esm/process/gremlin-lang.js +121 -9
  182. package/build/esm/process/gvalue.d.ts +7 -0
  183. package/build/esm/process/gvalue.js +38 -0
  184. package/build/esm/process/transaction.d.ts +50 -14
  185. package/build/esm/process/transaction.js +122 -23
  186. package/build/esm/process/traversal.d.ts +36 -10
  187. package/build/esm/process/traversal.js +104 -47
  188. package/build/esm/structure/PDTRegistry.d.ts +34 -0
  189. package/build/esm/structure/PDTRegistry.js +112 -0
  190. package/build/esm/structure/graph.d.ts +122 -3
  191. package/build/esm/structure/graph.js +347 -7
  192. package/build/esm/structure/io/binary/GraphBinary.d.ts +15 -1
  193. package/build/esm/structure/io/binary/GraphBinary.js +66 -38
  194. package/build/esm/structure/io/binary/internals/AnySerializer.d.ts +12 -2
  195. package/build/esm/structure/io/binary/internals/AnySerializer.js +34 -17
  196. package/build/esm/structure/io/binary/internals/ArraySerializer.d.ts +14 -7
  197. package/build/esm/structure/io/binary/internals/ArraySerializer.js +41 -72
  198. package/build/esm/structure/io/binary/internals/BigIntegerSerializer.d.ts +12 -7
  199. package/build/esm/structure/io/binary/internals/BigIntegerSerializer.js +34 -54
  200. package/build/esm/structure/io/binary/internals/BinarySerializer.d.ts +12 -4
  201. package/build/esm/structure/io/binary/internals/BinarySerializer.js +31 -51
  202. package/build/esm/structure/io/binary/internals/BooleanSerializer.d.ts +12 -4
  203. package/build/esm/structure/io/binary/internals/BooleanSerializer.js +28 -42
  204. package/build/esm/structure/io/binary/internals/ByteSerializer.d.ts +12 -4
  205. package/build/esm/structure/io/binary/internals/ByteSerializer.js +24 -38
  206. package/build/esm/structure/io/binary/internals/CompositePDTSerializer.d.ts +10 -0
  207. package/build/esm/structure/io/binary/internals/CompositePDTSerializer.js +78 -0
  208. package/build/esm/structure/io/binary/internals/DateTimeSerializer.d.ts +12 -7
  209. package/build/esm/structure/io/binary/internals/DateTimeSerializer.js +52 -69
  210. package/build/esm/structure/io/binary/internals/DoubleSerializer.d.ts +12 -4
  211. package/build/esm/structure/io/binary/internals/DoubleSerializer.js +24 -38
  212. package/build/esm/structure/io/binary/internals/EdgeSerializer.d.ts +14 -12
  213. package/build/esm/structure/io/binary/internals/EdgeSerializer.js +69 -124
  214. package/build/esm/structure/io/binary/internals/EnumSerializer.d.ts +19 -4
  215. package/build/esm/structure/io/binary/internals/EnumSerializer.js +47 -59
  216. package/build/esm/structure/io/binary/internals/FloatSerializer.d.ts +12 -4
  217. package/build/esm/structure/io/binary/internals/FloatSerializer.js +24 -38
  218. package/build/esm/structure/io/binary/internals/GraphBinaryReader.d.ts +26 -2
  219. package/build/esm/structure/io/binary/internals/GraphBinaryReader.js +108 -37
  220. package/build/esm/structure/io/binary/internals/GraphBinaryWriter.js +6 -6
  221. package/build/esm/structure/io/binary/internals/GraphSerializer.d.ts +22 -0
  222. package/build/esm/structure/io/binary/internals/GraphSerializer.js +181 -0
  223. package/build/esm/structure/io/binary/internals/IntSerializer.d.ts +19 -4
  224. package/build/esm/structure/io/binary/internals/IntSerializer.js +33 -38
  225. package/build/esm/structure/io/binary/internals/LongSerializer.d.ts +13 -4
  226. package/build/esm/structure/io/binary/internals/LongSerializer.js +29 -42
  227. package/build/esm/structure/io/binary/internals/MapSerializer.d.ts +14 -7
  228. package/build/esm/structure/io/binary/internals/MapSerializer.js +36 -70
  229. package/build/esm/structure/io/binary/internals/MarkerSerializer.d.ts +13 -4
  230. package/build/esm/structure/io/binary/internals/MarkerSerializer.js +29 -33
  231. package/build/esm/structure/io/binary/internals/NumberSerializationStrategy.d.ts +0 -3
  232. package/build/esm/structure/io/binary/internals/NumberSerializationStrategy.js +28 -2
  233. package/build/esm/structure/io/binary/internals/PathSerializer.d.ts +14 -7
  234. package/build/esm/structure/io/binary/internals/PathSerializer.js +30 -55
  235. package/build/esm/structure/io/binary/internals/PrimitivePDTSerializer.d.ts +10 -0
  236. package/build/esm/structure/io/binary/internals/PrimitivePDTSerializer.js +77 -0
  237. package/build/esm/structure/io/binary/internals/PropertySerializer.d.ts +14 -7
  238. package/build/esm/structure/io/binary/internals/PropertySerializer.js +32 -69
  239. package/build/esm/structure/io/binary/internals/SetSerializer.d.ts +14 -7
  240. package/build/esm/structure/io/binary/internals/SetSerializer.js +39 -73
  241. package/build/esm/structure/io/binary/internals/ShortSerializer.d.ts +12 -4
  242. package/build/esm/structure/io/binary/internals/ShortSerializer.js +24 -38
  243. package/build/esm/structure/io/binary/internals/StreamReader.d.ts +69 -0
  244. package/build/esm/structure/io/binary/internals/StreamReader.js +181 -0
  245. package/build/esm/structure/io/binary/internals/StringSerializer.d.ts +14 -4
  246. package/build/esm/structure/io/binary/internals/StringSerializer.js +34 -53
  247. package/build/esm/structure/io/binary/internals/StubSerializer.d.ts +1 -1
  248. package/build/esm/structure/io/binary/internals/StubSerializer.js +2 -1
  249. package/build/esm/structure/io/binary/internals/TreeSerializer.d.ts +54 -0
  250. package/build/esm/structure/io/binary/internals/TreeSerializer.js +136 -0
  251. package/build/esm/structure/io/binary/internals/UnspecifiedNullSerializer.d.ts +6 -4
  252. package/build/esm/structure/io/binary/internals/UnspecifiedNullSerializer.js +8 -31
  253. package/build/esm/structure/io/binary/internals/UuidSerializer.d.ts +12 -7
  254. package/build/esm/structure/io/binary/internals/UuidSerializer.js +33 -49
  255. package/build/esm/structure/io/binary/internals/VertexPropertySerializer.d.ts +14 -7
  256. package/build/esm/structure/io/binary/internals/VertexPropertySerializer.js +37 -95
  257. package/build/esm/structure/io/binary/internals/VertexSerializer.d.ts +14 -9
  258. package/build/esm/structure/io/binary/internals/VertexSerializer.js +41 -68
  259. package/build/esm/utils.d.ts +62 -4
  260. package/build/esm/utils.js +145 -6
  261. package/package.json +27 -18
@@ -17,16 +17,21 @@
17
17
  * specific language governing permissions and limitations
18
18
  * under the License.
19
19
  */
20
+ var __importDefault = (this && this.__importDefault) || function (mod) {
21
+ return (mod && mod.__esModule) ? mod : { "default": mod };
22
+ };
20
23
  Object.defineProperty(exports, "__esModule", { value: true });
21
24
  exports.Builder = exports.RequestMessage = void 0;
25
+ const gremlin_lang_js_1 = __importDefault(require("../process/gremlin-lang.cjs"));
22
26
  // Token constants
23
27
  const Tokens = {
24
28
  ARGS_LANGUAGE: 'language',
25
- ARGS_BINDINGS: 'bindings',
29
+ ARGS_PARAMETERS: 'parameters',
26
30
  ARGS_G: 'g',
27
31
  ARGS_MATERIALIZE_PROPERTIES: 'materializeProperties',
28
- TIMEOUT_MS: 'timeoutMs',
32
+ TIMEOUT_MILLIS: 'timeoutMillis',
29
33
  BULK_RESULTS: 'bulkResults',
34
+ BATCH_SIZE: 'batchSize',
30
35
  MATERIALIZE_PROPERTIES_TOKENS: 'tokens',
31
36
  MATERIALIZE_PROPERTIES_ALL: 'all'
32
37
  };
@@ -36,23 +41,25 @@ const Tokens = {
36
41
  class RequestMessage {
37
42
  gremlin;
38
43
  language;
39
- timeoutMs;
40
- bindings;
44
+ timeoutMillis;
45
+ parameters;
41
46
  g;
42
47
  materializeProperties;
43
48
  bulkResults;
49
+ batchSize;
44
50
  customFields;
45
- constructor(gremlin, language, timeoutMs, bindings, g, materializeProperties, bulkResults, customFields) {
51
+ constructor(gremlin, language, timeoutMillis, parameters, g, materializeProperties, bulkResults, batchSize, customFields) {
46
52
  if (!gremlin) {
47
53
  throw new Error('RequestMessage requires gremlin argument');
48
54
  }
49
55
  this.gremlin = gremlin;
50
56
  this.language = language;
51
- this.timeoutMs = timeoutMs;
52
- this.bindings = bindings;
57
+ this.timeoutMillis = timeoutMillis;
58
+ this.parameters = parameters;
53
59
  this.g = g;
54
60
  this.materializeProperties = materializeProperties;
55
61
  this.bulkResults = bulkResults;
62
+ this.batchSize = batchSize;
56
63
  this.customFields = customFields;
57
64
  }
58
65
  getGremlin() {
@@ -61,11 +68,11 @@ class RequestMessage {
61
68
  getLanguage() {
62
69
  return this.language;
63
70
  }
64
- getTimeoutMs() {
65
- return this.timeoutMs;
71
+ getTimeoutMillis() {
72
+ return this.timeoutMillis;
66
73
  }
67
- getBindings() {
68
- return this.bindings;
74
+ getParameters() {
75
+ return this.parameters;
69
76
  }
70
77
  getG() {
71
78
  return this.g;
@@ -76,9 +83,49 @@ class RequestMessage {
76
83
  getBulkResults() {
77
84
  return this.bulkResults;
78
85
  }
86
+ getBatchSize() {
87
+ return this.batchSize;
88
+ }
79
89
  getFields() {
80
90
  return this.customFields;
81
91
  }
92
+ /**
93
+ * Builds the plain object that represents this message on the wire. Standard fields are
94
+ * included when set, and custom fields are flattened to the top level. This method is
95
+ * invoked automatically by {@link JSON.stringify}.
96
+ *
97
+ * When a new standard field is added to this class, it should be added here as well so that
98
+ * it is included in the serialized request body.
99
+ */
100
+ toJSON() {
101
+ const payload = { gremlin: this.gremlin };
102
+ if (this.language) {
103
+ payload['language'] = this.language;
104
+ }
105
+ if (this.g) {
106
+ payload['g'] = this.g;
107
+ }
108
+ if (this.parameters !== undefined) {
109
+ payload['parameters'] = this.parameters;
110
+ }
111
+ if (this.timeoutMillis !== undefined) {
112
+ payload['timeoutMillis'] = this.timeoutMillis;
113
+ }
114
+ if (this.materializeProperties) {
115
+ payload['materializeProperties'] = this.materializeProperties;
116
+ }
117
+ if (this.bulkResults !== undefined) {
118
+ payload['bulkResults'] = this.bulkResults;
119
+ }
120
+ if (this.batchSize !== undefined) {
121
+ payload['batchSize'] = this.batchSize;
122
+ }
123
+ // Flatten custom/provider fields to the top level
124
+ this.customFields.forEach((v, k) => {
125
+ payload[k] = v;
126
+ });
127
+ return payload;
128
+ }
82
129
  static build(gremlin) {
83
130
  return new Builder(gremlin);
84
131
  }
@@ -89,12 +136,14 @@ exports.RequestMessage = RequestMessage;
89
136
  */
90
137
  class Builder {
91
138
  gremlin;
92
- bindings = {};
139
+ parameters = {};
140
+ parametersString;
93
141
  language;
94
- timeoutMs;
142
+ timeoutMillis;
95
143
  g;
96
144
  materializeProperties;
97
145
  bulkResults;
146
+ batchSize;
98
147
  additionalFields = new Map();
99
148
  constructor(gremlin) {
100
149
  this.gremlin = gremlin;
@@ -106,14 +155,39 @@ class Builder {
106
155
  this.language = language;
107
156
  return this;
108
157
  }
109
- addBinding(key, value) {
110
- Object.assign(this.bindings, { [key]: value });
158
+ /**
159
+ * Adds a single query parameter. The accumulated parameters map is converted to a gremlin-lang
160
+ * map literal string when the message is created.
161
+ * Cannot be mixed with {@link addParametersString}.
162
+ */
163
+ addParameter(key, value) {
164
+ if (this.parametersString)
165
+ throw new Error('Cannot mix addParameter() with addParametersString().');
166
+ Object.assign(this.parameters, { [key]: value });
167
+ return this;
168
+ }
169
+ /**
170
+ * Merges the provided parameters into the accumulated parameters map. The values are converted to a
171
+ * gremlin-lang map literal string when the message is created.
172
+ * Cannot be mixed with {@link addParametersString}.
173
+ */
174
+ addParameters(otherParameters) {
175
+ if (!otherParameters)
176
+ throw new Error('parameters argument cannot be null.');
177
+ if (this.parametersString)
178
+ throw new Error('Cannot mix addParameters() with addParametersString().');
179
+ Object.assign(this.parameters, otherParameters);
111
180
  return this;
112
181
  }
113
- addBindings(otherBindings) {
114
- if (!otherBindings)
115
- throw new Error('bindings argument cannot be null.');
116
- Object.assign(this.bindings, otherBindings);
182
+ /**
183
+ * Sets the query parameters as a pre-formatted gremlin-lang map literal string (e.g. `'["x":1,"y":"knows"]'`).
184
+ * Calling this method replaces any previously set parameters string (last-one-wins).
185
+ * Cannot be mixed with {@link addParameter} or {@link addParameters}.
186
+ */
187
+ addParametersString(parametersString) {
188
+ if (Object.keys(this.parameters).length > 0)
189
+ throw new Error('Cannot mix addParametersString() with addParameter()/addParameters().');
190
+ this.parametersString = parametersString;
117
191
  return this;
118
192
  }
119
193
  addG(g) {
@@ -135,13 +209,19 @@ class Builder {
135
209
  addTimeoutMillis(timeout) {
136
210
  if (timeout < 0)
137
211
  throw new Error('timeout argument cannot be negative.');
138
- this.timeoutMs = timeout;
212
+ this.timeoutMillis = timeout;
139
213
  return this;
140
214
  }
141
215
  addBulkResults(bulking) {
142
216
  this.bulkResults = bulking;
143
217
  return this;
144
218
  }
219
+ addBatchSize(batchSize) {
220
+ if (batchSize <= 0)
221
+ throw new Error('batchSize argument must be positive.');
222
+ this.batchSize = batchSize;
223
+ return this;
224
+ }
145
225
  addField(key, value) {
146
226
  this.additionalFields.set(key, value);
147
227
  return this;
@@ -150,8 +230,17 @@ class Builder {
150
230
  * Create the request message given the settings provided to the Builder.
151
231
  */
152
232
  create() {
233
+ // mutual exclusion between addParameters/addParameter and addParametersString is
234
+ // enforced at call time, so only one path can be set here
235
+ let parameters;
236
+ if (this.parametersString) {
237
+ parameters = this.parametersString;
238
+ }
239
+ else if (Object.keys(this.parameters).length > 0) {
240
+ parameters = gremlin_lang_js_1.default.convertParametersToString(new Map(Object.entries(this.parameters)));
241
+ }
153
242
  // @ts-ignore - accessing private constructor from Builder
154
- return new RequestMessage(this.gremlin, this.language || 'gremlin-lang', this.timeoutMs, Object.keys(this.bindings).length > 0 ? this.bindings : undefined, this.g, this.materializeProperties, this.bulkResults, this.additionalFields);
243
+ return new RequestMessage(this.gremlin, this.language || 'gremlin-lang', this.timeoutMillis, parameters, this.g, this.materializeProperties, this.bulkResults, this.batchSize, this.additionalFields);
155
244
  }
156
245
  }
157
246
  exports.Builder = Builder;
@@ -4,21 +4,32 @@
4
4
  export declare class RequestMessage {
5
5
  private gremlin;
6
6
  private language;
7
- private timeoutMs?;
8
- private bindings?;
7
+ private timeoutMillis?;
8
+ private parameters?;
9
9
  private g?;
10
10
  private materializeProperties?;
11
11
  private bulkResults?;
12
+ private batchSize?;
12
13
  private customFields;
13
14
  private constructor();
14
15
  getGremlin(): string;
15
16
  getLanguage(): string;
16
- getTimeoutMs(): number | undefined;
17
- getBindings(): object | undefined;
17
+ getTimeoutMillis(): number | undefined;
18
+ getParameters(): object | undefined;
18
19
  getG(): string | undefined;
19
20
  getMaterializeProperties(): string | undefined;
20
21
  getBulkResults(): boolean | undefined;
22
+ getBatchSize(): number | undefined;
21
23
  getFields(): ReadonlyMap<string, any>;
24
+ /**
25
+ * Builds the plain object that represents this message on the wire. Standard fields are
26
+ * included when set, and custom fields are flattened to the top level. This method is
27
+ * invoked automatically by {@link JSON.stringify}.
28
+ *
29
+ * When a new standard field is added to this class, it should be added here as well so that
30
+ * it is included in the serialized request body.
31
+ */
32
+ toJSON(): Record<string, any>;
22
33
  static build(gremlin: string): Builder;
23
34
  }
24
35
  /**
@@ -26,21 +37,40 @@ export declare class RequestMessage {
26
37
  */
27
38
  export declare class Builder {
28
39
  private readonly gremlin;
29
- private readonly bindings;
40
+ private readonly parameters;
41
+ private parametersString?;
30
42
  language: string;
31
- timeoutMs?: number;
43
+ timeoutMillis?: number;
32
44
  g?: string;
33
45
  materializeProperties?: string;
34
46
  bulkResults?: boolean;
47
+ batchSize?: number;
35
48
  additionalFields: Map<string, any>;
36
49
  constructor(gremlin: string);
37
50
  addLanguage(language: string): Builder;
38
- addBinding(key: string, value: any): Builder;
39
- addBindings(otherBindings: object): Builder;
51
+ /**
52
+ * Adds a single query parameter. The accumulated parameters map is converted to a gremlin-lang
53
+ * map literal string when the message is created.
54
+ * Cannot be mixed with {@link addParametersString}.
55
+ */
56
+ addParameter(key: string, value: any): Builder;
57
+ /**
58
+ * Merges the provided parameters into the accumulated parameters map. The values are converted to a
59
+ * gremlin-lang map literal string when the message is created.
60
+ * Cannot be mixed with {@link addParametersString}.
61
+ */
62
+ addParameters(otherParameters: object): Builder;
63
+ /**
64
+ * Sets the query parameters as a pre-formatted gremlin-lang map literal string (e.g. `'["x":1,"y":"knows"]'`).
65
+ * Calling this method replaces any previously set parameters string (last-one-wins).
66
+ * Cannot be mixed with {@link addParameter} or {@link addParameters}.
67
+ */
68
+ addParametersString(parametersString: string): Builder;
40
69
  addG(g: string): Builder;
41
70
  addMaterializeProperties(materializeProps: string): Builder;
42
71
  addTimeoutMillis(timeout: number): Builder;
43
72
  addBulkResults(bulking: boolean): Builder;
73
+ addBatchSize(batchSize: number): Builder;
44
74
  addField(key: string, value: any): Builder;
45
75
  /**
46
76
  * Create the request message given the settings provided to the Builder.
@@ -24,7 +24,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
24
24
  class ResponseError extends Error {
25
25
  statusCode;
26
26
  statusMessage;
27
- statusAttributes;
27
+ statusException;
28
28
  constructor(message, responseStatus) {
29
29
  super(message);
30
30
  this.name = 'ResponseError';
@@ -37,9 +37,9 @@ class ResponseError extends Error {
37
37
  */
38
38
  this.statusMessage = responseStatus.message;
39
39
  /**
40
- * Gets the server status attributes as a Map (may contain provider specific status information).
40
+ * Gets the server exception string (v4 protocol).
41
41
  */
42
- this.statusAttributes = responseStatus.attributes || {};
42
+ this.statusException = responseStatus.exception ?? null;
43
43
  }
44
44
  }
45
45
  exports.default = ResponseError;
@@ -4,10 +4,10 @@
4
4
  export default class ResponseError extends Error {
5
5
  statusCode: number;
6
6
  statusMessage: string;
7
- statusAttributes: Map<string, string>;
7
+ statusException: string | null;
8
8
  constructor(message: string, responseStatus: {
9
9
  code: ResponseError['statusCode'];
10
10
  message: ResponseError['statusMessage'];
11
- attributes: ResponseError['statusAttributes'];
11
+ exception?: ResponseError['statusException'];
12
12
  });
13
13
  }
@@ -62,13 +62,16 @@ const t = __importStar(require("./process/traversal.cjs"));
62
62
  const gt = __importStar(require("./process/graph-traversal.cjs"));
63
63
  const strategiesModule = __importStar(require("./process/traversal-strategy.cjs"));
64
64
  const graph = __importStar(require("./structure/graph.cjs"));
65
+ const PDTRegistry_js_1 = require("./structure/PDTRegistry.cjs");
65
66
  const rc = __importStar(require("./driver/remote-connection.cjs"));
66
67
  const gremlin_lang_js_1 = __importDefault(require("./process/gremlin-lang.cjs"));
68
+ const gvalue_js_1 = require("./process/gvalue.cjs");
67
69
  const utils = __importStar(require("./utils.cjs"));
68
70
  const driver_remote_connection_js_1 = __importDefault(require("./driver/driver-remote-connection.cjs"));
69
71
  const response_error_js_1 = __importDefault(require("./driver/response-error.cjs"));
70
72
  const client_js_1 = __importDefault(require("./driver/client.cjs"));
71
73
  const result_set_js_1 = __importDefault(require("./driver/result-set.cjs"));
74
+ const http_request_js_1 = require("./driver/http-request.cjs");
72
75
  const auth_js_1 = require("./driver/auth.cjs");
73
76
  const anonymous_traversal_js_1 = __importDefault(require("./process/anonymous-traversal.cjs"));
74
77
  exports.driver = {
@@ -79,6 +82,7 @@ exports.driver = {
79
82
  DriverRemoteConnection: driver_remote_connection_js_1.default,
80
83
  Client: client_js_1.default,
81
84
  ResultSet: result_set_js_1.default,
85
+ HttpRequest: http_request_js_1.HttpRequest,
82
86
  auth: {
83
87
  basic: auth_js_1.basic,
84
88
  sigv4: auth_js_1.sigv4,
@@ -109,6 +113,7 @@ exports.process = {
109
113
  GraphTraversalSource: gt.GraphTraversalSource,
110
114
  statics: gt.statics,
111
115
  GremlinLang: gremlin_lang_js_1.default,
116
+ GValue: gvalue_js_1.GValue,
112
117
  traversal: anonymous_traversal_js_1.default.traversal,
113
118
  AnonymousTraversalSource: anonymous_traversal_js_1.default,
114
119
  withOptions: t.withOptions,
@@ -117,9 +122,25 @@ exports.structure = {
117
122
  Edge: graph.Edge,
118
123
  Graph: graph.Graph,
119
124
  Path: graph.Path,
125
+ Tree: graph.Tree,
120
126
  Property: graph.Property,
127
+ PrimitivePDT: graph.PrimitivePDT,
128
+ CompositePDT: graph.CompositePDT,
129
+ PDTRegistry: PDTRegistry_js_1.PDTRegistry,
121
130
  Vertex: graph.Vertex,
122
131
  VertexProperty: graph.VertexProperty,
123
132
  toLong: utils.toLong,
133
+ toInt: utils.toInt,
134
+ toFloat: utils.toFloat,
135
+ toDouble: utils.toDouble,
136
+ toShort: utils.toShort,
137
+ toByte: utils.toByte,
138
+ Int: utils.Int,
139
+ Float: utils.Float,
140
+ Double: utils.Double,
141
+ Short: utils.Short,
142
+ Byte: utils.Byte,
143
+ Long: utils.Long,
144
+ unwrap: utils.unwrap,
124
145
  };
125
146
  exports.default = { driver: exports.driver, process: exports.process, structure: exports.structure };
@@ -5,13 +5,16 @@ import * as t from './process/traversal.cjs';
5
5
  import * as gt from './process/graph-traversal.cjs';
6
6
  import * as strategiesModule from './process/traversal-strategy.cjs';
7
7
  import * as graph from './structure/graph.cjs';
8
+ import { PDTRegistry } from './structure/PDTRegistry.cjs';
8
9
  import * as rc from './driver/remote-connection.cjs';
9
10
  import GremlinLang from './process/gremlin-lang.cjs';
11
+ import { GValue } from './process/gvalue.cjs';
10
12
  import * as utils from './utils.cjs';
11
13
  import DriverRemoteConnection from './driver/driver-remote-connection.cjs';
12
14
  import ResponseError from './driver/response-error.cjs';
13
15
  import Client from './driver/client.cjs';
14
16
  import ResultSet from './driver/result-set.cjs';
17
+ import { HttpRequest } from './driver/http-request.cjs';
15
18
  import { basic, sigv4 } from './driver/auth.cjs';
16
19
  import AnonymousTraversalSource from './process/anonymous-traversal.cjs';
17
20
  export declare const driver: {
@@ -22,6 +25,7 @@ export declare const driver: {
22
25
  DriverRemoteConnection: typeof DriverRemoteConnection;
23
26
  Client: typeof Client;
24
27
  ResultSet: typeof ResultSet;
28
+ HttpRequest: typeof HttpRequest;
25
29
  auth: {
26
30
  basic: typeof basic;
27
31
  sigv4: typeof sigv4;
@@ -55,6 +59,7 @@ export declare const process: {
55
59
  V: (...args: any[]) => any;
56
60
  addE: (...args: any[]) => any;
57
61
  addV: (...args: any[]) => any;
62
+ addLabel: (...args: any[]) => any;
58
63
  aggregate: (...args: any[]) => any;
59
64
  all: (...args: any[]) => any;
60
65
  and: (...args: any[]) => any;
@@ -87,6 +92,8 @@ export declare const process: {
87
92
  discard: (...args: any[]) => any;
88
93
  disjunct: (...args: any[]) => any;
89
94
  drop: (...args: any[]) => any;
95
+ dropLabel: (...args: any[]) => any;
96
+ dropLabels: (...args: any[]) => any;
90
97
  element: (...args: any[]) => any;
91
98
  elementMap: (...args: any[]) => any;
92
99
  emit: (...args: any[]) => any;
@@ -114,6 +121,7 @@ export declare const process: {
114
121
  is: (...args: any[]) => any;
115
122
  key: (...args: any[]) => any;
116
123
  label: (...args: any[]) => any;
124
+ labels: (...args: any[]) => any;
117
125
  length: (...args: any[]) => any;
118
126
  limit: (...args: any[]) => any;
119
127
  local: (...args: any[]) => any;
@@ -177,6 +185,7 @@ export declare const process: {
177
185
  where: (...args: any[]) => any;
178
186
  };
179
187
  GremlinLang: typeof GremlinLang;
188
+ GValue: typeof GValue;
180
189
  traversal: typeof AnonymousTraversalSource.traversal;
181
190
  AnonymousTraversalSource: typeof AnonymousTraversalSource;
182
191
  withOptions: {
@@ -196,10 +205,26 @@ export declare const structure: {
196
205
  Edge: typeof graph.Edge;
197
206
  Graph: typeof graph.Graph;
198
207
  Path: typeof graph.Path;
208
+ Tree: typeof graph.Tree;
199
209
  Property: typeof graph.Property;
210
+ PrimitivePDT: typeof graph.PrimitivePDT;
211
+ CompositePDT: typeof graph.CompositePDT;
212
+ PDTRegistry: typeof PDTRegistry;
200
213
  Vertex: typeof graph.Vertex;
201
214
  VertexProperty: typeof graph.VertexProperty;
202
215
  toLong: typeof utils.toLong;
216
+ toInt: typeof utils.toInt;
217
+ toFloat: typeof utils.toFloat;
218
+ toDouble: typeof utils.toDouble;
219
+ toShort: typeof utils.toShort;
220
+ toByte: typeof utils.toByte;
221
+ Int: typeof utils.Int;
222
+ Float: typeof utils.Float;
223
+ Double: typeof utils.Double;
224
+ Short: typeof utils.Short;
225
+ Byte: typeof utils.Byte;
226
+ Long: typeof utils.Long;
227
+ unwrap: typeof utils.unwrap;
203
228
  };
204
229
  declare const _default: {
205
230
  driver: {
@@ -210,6 +235,7 @@ declare const _default: {
210
235
  DriverRemoteConnection: typeof DriverRemoteConnection;
211
236
  Client: typeof Client;
212
237
  ResultSet: typeof ResultSet;
238
+ HttpRequest: typeof HttpRequest;
213
239
  auth: {
214
240
  basic: typeof basic;
215
241
  sigv4: typeof sigv4;
@@ -243,6 +269,7 @@ declare const _default: {
243
269
  V: (...args: any[]) => any;
244
270
  addE: (...args: any[]) => any;
245
271
  addV: (...args: any[]) => any;
272
+ addLabel: (...args: any[]) => any;
246
273
  aggregate: (...args: any[]) => any;
247
274
  all: (...args: any[]) => any;
248
275
  and: (...args: any[]) => any;
@@ -275,6 +302,8 @@ declare const _default: {
275
302
  discard: (...args: any[]) => any;
276
303
  disjunct: (...args: any[]) => any;
277
304
  drop: (...args: any[]) => any;
305
+ dropLabel: (...args: any[]) => any;
306
+ dropLabels: (...args: any[]) => any;
278
307
  element: (...args: any[]) => any;
279
308
  elementMap: (...args: any[]) => any;
280
309
  emit: (...args: any[]) => any;
@@ -302,6 +331,7 @@ declare const _default: {
302
331
  is: (...args: any[]) => any;
303
332
  key: (...args: any[]) => any;
304
333
  label: (...args: any[]) => any;
334
+ labels: (...args: any[]) => any;
305
335
  length: (...args: any[]) => any;
306
336
  limit: (...args: any[]) => any;
307
337
  local: (...args: any[]) => any;
@@ -365,6 +395,7 @@ declare const _default: {
365
395
  where: (...args: any[]) => any;
366
396
  };
367
397
  GremlinLang: typeof GremlinLang;
398
+ GValue: typeof GValue;
368
399
  traversal: typeof AnonymousTraversalSource.traversal;
369
400
  AnonymousTraversalSource: typeof AnonymousTraversalSource;
370
401
  withOptions: {
@@ -384,10 +415,26 @@ declare const _default: {
384
415
  Edge: typeof graph.Edge;
385
416
  Graph: typeof graph.Graph;
386
417
  Path: typeof graph.Path;
418
+ Tree: typeof graph.Tree;
387
419
  Property: typeof graph.Property;
420
+ PrimitivePDT: typeof graph.PrimitivePDT;
421
+ CompositePDT: typeof graph.CompositePDT;
422
+ PDTRegistry: typeof PDTRegistry;
388
423
  Vertex: typeof graph.Vertex;
389
424
  VertexProperty: typeof graph.VertexProperty;
390
425
  toLong: typeof utils.toLong;
426
+ toInt: typeof utils.toInt;
427
+ toFloat: typeof utils.toFloat;
428
+ toDouble: typeof utils.toDouble;
429
+ toShort: typeof utils.toShort;
430
+ toByte: typeof utils.toByte;
431
+ Int: typeof utils.Int;
432
+ Float: typeof utils.Float;
433
+ Double: typeof utils.Double;
434
+ Short: typeof utils.Short;
435
+ Byte: typeof utils.Byte;
436
+ Long: typeof utils.Long;
437
+ unwrap: typeof utils.unwrap;
391
438
  };
392
439
  };
393
440
  export default _default;