@ultipa-graph/ultipa-driver 5.0.0-s5.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 (202) hide show
  1. package/dist/.DS_Store +0 -0
  2. package/dist/connection/connection.final.d.ts +45 -0
  3. package/dist/connection/connection.final.js +600 -0
  4. package/dist/connection/connection.final.js.map +1 -0
  5. package/dist/connection/connection.pool.d.ts +26 -0
  6. package/dist/connection/connection.pool.js +121 -0
  7. package/dist/connection/connection.pool.js.map +1 -0
  8. package/dist/connection/extra/algos/algo.extra.d.ts +34 -0
  9. package/dist/connection/extra/algos/algo.extra.js +81 -0
  10. package/dist/connection/extra/algos/algo.extra.js.map +1 -0
  11. package/dist/connection/extra/algos/algo.utils.d.ts +3 -0
  12. package/dist/connection/extra/algos/algo.utils.js +71 -0
  13. package/dist/connection/extra/algos/algo.utils.js.map +1 -0
  14. package/dist/connection/extra/algos/community.d.ts +27 -0
  15. package/dist/connection/extra/algos/community.js +129 -0
  16. package/dist/connection/extra/algos/community.js.map +1 -0
  17. package/dist/connection/extra/algos/degrees.d.ts +10 -0
  18. package/dist/connection/extra/algos/degrees.js +43 -0
  19. package/dist/connection/extra/algos/degrees.js.map +1 -0
  20. package/dist/connection/extra/algos/embedding.d.ts +13 -0
  21. package/dist/connection/extra/algos/embedding.js +58 -0
  22. package/dist/connection/extra/algos/embedding.js.map +1 -0
  23. package/dist/connection/extra/algos/index.d.ts +5 -0
  24. package/dist/connection/extra/algos/index.js +14 -0
  25. package/dist/connection/extra/algos/index.js.map +1 -0
  26. package/dist/connection/extra/base.extra.d.ts +71 -0
  27. package/dist/connection/extra/base.extra.js +183 -0
  28. package/dist/connection/extra/base.extra.js.map +1 -0
  29. package/dist/connection/extra/connection.base.d.ts +82 -0
  30. package/dist/connection/extra/connection.base.js +623 -0
  31. package/dist/connection/extra/connection.base.js.map +1 -0
  32. package/dist/connection/extra/connection.d.ts +16 -0
  33. package/dist/connection/extra/connection.js +46 -0
  34. package/dist/connection/extra/connection.js.map +1 -0
  35. package/dist/connection/extra/graph.extra.d.ts +85 -0
  36. package/dist/connection/extra/graph.extra.js +241 -0
  37. package/dist/connection/extra/graph.extra.js.map +1 -0
  38. package/dist/connection/extra/index.extra.d.ts +70 -0
  39. package/dist/connection/extra/index.extra.js +201 -0
  40. package/dist/connection/extra/index.extra.js.map +1 -0
  41. package/dist/connection/extra/job.extra.d.ts +32 -0
  42. package/dist/connection/extra/job.extra.js +145 -0
  43. package/dist/connection/extra/job.extra.js.map +1 -0
  44. package/dist/connection/extra/meta.extra.d.ts +91 -0
  45. package/dist/connection/extra/meta.extra.js +441 -0
  46. package/dist/connection/extra/meta.extra.js.map +1 -0
  47. package/dist/connection/extra/property.extra.d.ts +81 -0
  48. package/dist/connection/extra/property.extra.js +268 -0
  49. package/dist/connection/extra/property.extra.js.map +1 -0
  50. package/dist/connection/extra/schema.extra.d.ts +50 -0
  51. package/dist/connection/extra/schema.extra.js +248 -0
  52. package/dist/connection/extra/schema.extra.js.map +1 -0
  53. package/dist/connection/extra/search.extra.d.ts +12 -0
  54. package/dist/connection/extra/search.extra.js +126 -0
  55. package/dist/connection/extra/search.extra.js.map +1 -0
  56. package/dist/connection/extra/task.extra.d.ts +24 -0
  57. package/dist/connection/extra/task.extra.js +126 -0
  58. package/dist/connection/extra/task.extra.js.map +1 -0
  59. package/dist/connection/extra/user.privilege.extra.d.ts +64 -0
  60. package/dist/connection/extra/user.privilege.extra.js +348 -0
  61. package/dist/connection/extra/user.privilege.extra.js.map +1 -0
  62. package/dist/connection/index.d.ts +4 -0
  63. package/dist/connection/index.js +10 -0
  64. package/dist/connection/index.js.map +1 -0
  65. package/dist/connection/network.manager.d.ts +27 -0
  66. package/dist/connection/network.manager.js +178 -0
  67. package/dist/connection/network.manager.js.map +1 -0
  68. package/dist/index.d.ts +4 -0
  69. package/dist/index.js +14 -0
  70. package/dist/index.js.map +1 -0
  71. package/dist/printers/alias.d.ts +2 -0
  72. package/dist/printers/alias.js +15 -0
  73. package/dist/printers/alias.js.map +1 -0
  74. package/dist/printers/any.d.ts +2 -0
  75. package/dist/printers/any.js +40 -0
  76. package/dist/printers/any.js.map +1 -0
  77. package/dist/printers/array.aio.d.ts +44 -0
  78. package/dist/printers/array.aio.js +240 -0
  79. package/dist/printers/array.aio.js.map +1 -0
  80. package/dist/printers/common.d.ts +0 -0
  81. package/dist/printers/common.js +1 -0
  82. package/dist/printers/common.js.map +1 -0
  83. package/dist/printers/edge.d.ts +5 -0
  84. package/dist/printers/edge.js +49 -0
  85. package/dist/printers/edge.js.map +1 -0
  86. package/dist/printers/explain.plan.d.ts +2 -0
  87. package/dist/printers/explain.plan.js +24 -0
  88. package/dist/printers/explain.plan.js.map +1 -0
  89. package/dist/printers/graph.d.ts +2 -0
  90. package/dist/printers/graph.js +34 -0
  91. package/dist/printers/graph.js.map +1 -0
  92. package/dist/printers/index.d.ts +25 -0
  93. package/dist/printers/index.js +44 -0
  94. package/dist/printers/index.js.map +1 -0
  95. package/dist/printers/node.d.ts +5 -0
  96. package/dist/printers/node.js +49 -0
  97. package/dist/printers/node.js.map +1 -0
  98. package/dist/printers/path.d.ts +3 -0
  99. package/dist/printers/path.js +42 -0
  100. package/dist/printers/path.js.map +1 -0
  101. package/dist/printers/status.d.ts +3 -0
  102. package/dist/printers/status.js +45 -0
  103. package/dist/printers/status.js.map +1 -0
  104. package/dist/printers/table.d.ts +2 -0
  105. package/dist/printers/table.js +31 -0
  106. package/dist/printers/table.js.map +1 -0
  107. package/dist/proto/tmp.js +366 -0
  108. package/dist/proto/ultipa_grpc_pb.d.ts +257 -0
  109. package/dist/proto/ultipa_grpc_pb.js +366 -0
  110. package/dist/proto/ultipa_grpc_pb.js.map +1 -0
  111. package/dist/proto/ultipa_pb.d.ts +1 -0
  112. package/dist/proto/ultipa_pb.js +11002 -0
  113. package/dist/proto/ultipa_pb.js.map +1 -0
  114. package/dist/transaction/UltipaSession.d.ts +28 -0
  115. package/dist/transaction/UltipaSession.js +148 -0
  116. package/dist/transaction/UltipaSession.js.map +1 -0
  117. package/dist/transaction/UltipaTransaction.Recorder.d.ts +20 -0
  118. package/dist/transaction/UltipaTransaction.Recorder.js +23 -0
  119. package/dist/transaction/UltipaTransaction.Recorder.js.map +1 -0
  120. package/dist/transaction/UltipaTransaction.d.ts +35 -0
  121. package/dist/transaction/UltipaTransaction.js +203 -0
  122. package/dist/transaction/UltipaTransaction.js.map +1 -0
  123. package/dist/transaction/UltipaTransactionSession.d.ts +15 -0
  124. package/dist/transaction/UltipaTransactionSession.js +46 -0
  125. package/dist/transaction/UltipaTransactionSession.js.map +1 -0
  126. package/dist/transaction/operations/Transaction.Deletes.d.ts +4 -0
  127. package/dist/transaction/operations/Transaction.Deletes.js +52 -0
  128. package/dist/transaction/operations/Transaction.Deletes.js.map +1 -0
  129. package/dist/transaction/operations/Transaction.Inserts.d.ts +4 -0
  130. package/dist/transaction/operations/Transaction.Inserts.js +78 -0
  131. package/dist/transaction/operations/Transaction.Inserts.js.map +1 -0
  132. package/dist/transaction/operations/Transaction.Update.d.ts +4 -0
  133. package/dist/transaction/operations/Transaction.Update.js +43 -0
  134. package/dist/transaction/operations/Transaction.Update.js.map +1 -0
  135. package/dist/types/index.d.ts +4 -0
  136. package/dist/types/index.js +13 -0
  137. package/dist/types/index.js.map +1 -0
  138. package/dist/types/types.algos.params.d.ts +545 -0
  139. package/dist/types/types.algos.params.js +16 -0
  140. package/dist/types/types.algos.params.js.map +1 -0
  141. package/dist/types/types.d.ts +496 -0
  142. package/dist/types/types.extra.d.ts +788 -0
  143. package/dist/types/types.extra.js +49 -0
  144. package/dist/types/types.extra.js.map +1 -0
  145. package/dist/types/types.js +706 -0
  146. package/dist/types/types.js.map +1 -0
  147. package/dist/types/util.d.ts +15 -0
  148. package/dist/types/util.js +163 -0
  149. package/dist/types/util.js.map +1 -0
  150. package/dist/utils/common.d.ts +3 -0
  151. package/dist/utils/common.js +31 -0
  152. package/dist/utils/common.js.map +1 -0
  153. package/dist/utils/config.d.ts +3 -0
  154. package/dist/utils/config.js +7 -0
  155. package/dist/utils/config.js.map +1 -0
  156. package/dist/utils/format.d.ts +49 -0
  157. package/dist/utils/format.js +990 -0
  158. package/dist/utils/format.js.map +1 -0
  159. package/dist/utils/index.d.ts +12 -0
  160. package/dist/utils/index.js +34 -0
  161. package/dist/utils/index.js.map +1 -0
  162. package/dist/utils/params.validate.d.ts +4 -0
  163. package/dist/utils/params.validate.js +14 -0
  164. package/dist/utils/params.validate.js.map +1 -0
  165. package/dist/utils/property.d.ts +15 -0
  166. package/dist/utils/property.js +117 -0
  167. package/dist/utils/property.js.map +1 -0
  168. package/dist/utils/raft.retry.d.ts +0 -0
  169. package/dist/utils/raft.retry.js +1 -0
  170. package/dist/utils/raft.retry.js.map +1 -0
  171. package/dist/utils/serialize/commont.d.ts +12 -0
  172. package/dist/utils/serialize/commont.js +46 -0
  173. package/dist/utils/serialize/commont.js.map +1 -0
  174. package/dist/utils/serialize/deserialize.d.ts +9 -0
  175. package/dist/utils/serialize/deserialize.js +164 -0
  176. package/dist/utils/serialize/deserialize.js.map +1 -0
  177. package/dist/utils/serialize/null.d.ts +24 -0
  178. package/dist/utils/serialize/null.js +133 -0
  179. package/dist/utils/serialize/null.js.map +1 -0
  180. package/dist/utils/serialize/serialize.d.ts +10 -0
  181. package/dist/utils/serialize/serialize.js +135 -0
  182. package/dist/utils/serialize/serialize.js.map +1 -0
  183. package/dist/utils/stream.helper.d.ts +9 -0
  184. package/dist/utils/stream.helper.js +97 -0
  185. package/dist/utils/stream.helper.js.map +1 -0
  186. package/dist/utils/time.record.d.ts +15 -0
  187. package/dist/utils/time.record.js +50 -0
  188. package/dist/utils/time.record.js.map +1 -0
  189. package/dist/utils/timezone.d.ts +7 -0
  190. package/dist/utils/timezone.js +21 -0
  191. package/dist/utils/timezone.js.map +1 -0
  192. package/dist/utils/ultipa.datetime.d.ts +8 -0
  193. package/dist/utils/ultipa.datetime.js +120 -0
  194. package/dist/utils/ultipa.datetime.js.map +1 -0
  195. package/dist/utils/uql-maker.d.ts +164 -0
  196. package/dist/utils/uql-maker.js +400 -0
  197. package/dist/utils/uql-maker.js.map +1 -0
  198. package/dist/utils/uql.parse.d.ts +27 -0
  199. package/dist/utils/uql.parse.js +206 -0
  200. package/dist/utils/uql.parse.js.map +1 -0
  201. package/package.json +62 -0
  202. package/readme.md +63 -0
@@ -0,0 +1,268 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __rest = (this && this.__rest) || function (s, e) {
12
+ var t = {};
13
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
14
+ t[p] = s[p];
15
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
16
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
17
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
18
+ t[p[i]] = s[p[i]];
19
+ }
20
+ return t;
21
+ };
22
+ var __importDefault = (this && this.__importDefault) || function (mod) {
23
+ return (mod && mod.__esModule) ? mod : { "default": mod };
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.PropertyExtra = void 0;
27
+ const connection_base_1 = require("./connection.base");
28
+ const types_1 = require("../../types");
29
+ const utils_1 = require("../../utils");
30
+ const { CommandList, SchemaStringWithDefault } = utils_1.UQLMAKER;
31
+ const lodash_1 = __importDefault(require("lodash"));
32
+ class PropertyExtra extends connection_base_1.ConnectionBase {
33
+ /**
34
+ * 得到点边的属性
35
+ */
36
+ showAllProperty(req, commonReq) {
37
+ var _a, _b;
38
+ return __awaiter(this, void 0, void 0, function* () {
39
+ let command = CommandList.showProperty;
40
+ let uqlMaker = new utils_1.UQLMAKER(command, commonReq);
41
+ let res = yield connection_base_1.ConnectionBase.UqlListSimpleAuto(this, uqlMaker);
42
+ let { data } = res, others = __rest(res, ["data"]);
43
+ return Object.assign(Object.assign({}, others), { data: {
44
+ edge: ((_a = data.find((d) => d.name == "_edgeProperty")) === null || _a === void 0 ? void 0 : _a.values) || [],
45
+ node: ((_b = data.find((d) => d.name == "_nodeProperty")) === null || _b === void 0 ? void 0 : _b.values) || [],
46
+ } });
47
+ });
48
+ }
49
+ /**
50
+ * 得到点或者边的属性
51
+ */
52
+ showProperty(dbType, schemaName, requestConfig) {
53
+ return __awaiter(this, void 0, void 0, function* () {
54
+ let command = CommandList.showProperty;
55
+ let commandP = null;
56
+ if (dbType && schemaName) {
57
+ command = dbType === types_1.ULTIPA.DBType.DBNODE
58
+ ? CommandList.showNodeProperty
59
+ : CommandList.showEdgeProperty;
60
+ if (schemaName) {
61
+ commandP = SchemaStringWithDefault(schemaName);
62
+ }
63
+ }
64
+ let uqlMaker = new utils_1.UQLMAKER(command, requestConfig, commandP);
65
+ return connection_base_1.ConnectionBase.UqlListSimple(this, uqlMaker);
66
+ });
67
+ }
68
+ /**
69
+ * 得到点的属性
70
+ */
71
+ showNodeProperty(schemaName, requestConfig) {
72
+ return __awaiter(this, void 0, void 0, function* () {
73
+ return this.showProperty(types_1.ULTIPA.DBType.DBNODE, schemaName, requestConfig);
74
+ });
75
+ }
76
+ /**
77
+ * 得到边的属性
78
+ */
79
+ showEdgeProperty(schemaName, requestConfig) {
80
+ return __awaiter(this, void 0, void 0, function* () {
81
+ return this.showProperty(types_1.ULTIPA.DBType.DBEDGE, schemaName, requestConfig);
82
+ });
83
+ }
84
+ /**
85
+ * 获取单个属性
86
+ * @param dbType
87
+ * @param schemaName
88
+ * @param propertyName
89
+ * @param requestConfig
90
+ */
91
+ getSingleProperty(dbType, schemaName, propertyName, requestConfig) {
92
+ return __awaiter(this, void 0, void 0, function* () {
93
+ let command = dbType === types_1.ULTIPA.DBType.DBNODE
94
+ ? CommandList.showNodeProperty
95
+ : CommandList.showEdgeProperty;
96
+ let commandP = null;
97
+ if (schemaName) {
98
+ commandP = SchemaStringWithDefault(schemaName);
99
+ }
100
+ let uqlMaker = new utils_1.UQLMAKER(command, requestConfig, commandP);
101
+ let listProperty = yield connection_base_1.ConnectionBase.UqlListSimple(this, uqlMaker);
102
+ let targetProperty = listProperty.data.find((property) => { property.name == propertyName; });
103
+ return Object.assign(Object.assign({}, listProperty), { data: targetProperty });
104
+ });
105
+ }
106
+ /**
107
+ * 获取属性
108
+ * @param dbType: DBType
109
+ * @param schemaName: String
110
+ * @param propertyName: String
111
+ * @param requestConfig: RequestConfig
112
+ */
113
+ getProperty(dbType, schemaName, propertyName, requestConfig) {
114
+ return __awaiter(this, void 0, void 0, function* () {
115
+ let listProperty = yield this.showProperty(dbType, schemaName, requestConfig);
116
+ let propertyItem = listProperty.data.find((property) => property.name === propertyName);
117
+ return Object.assign(Object.assign({}, listProperty), { data: propertyItem || null });
118
+ });
119
+ }
120
+ /**
121
+ * 获取点某个属性
122
+ */
123
+ // async getNodeProperty(req: RequestType.GetNodeEdgeProperty, commonReq?: RequestType.RequestConfig) {
124
+ getNodeProperty(schemaName, propertyName, requestConfig) {
125
+ return __awaiter(this, void 0, void 0, function* () {
126
+ return this.getProperty(types_1.ULTIPA.DBType.DBNODE, schemaName, propertyName, requestConfig);
127
+ });
128
+ }
129
+ /**
130
+ * 获取边某个属性
131
+ * @param req
132
+ * @param commonReq
133
+ */
134
+ getEdgeProperty(schemaName, propertyName, requestConfig) {
135
+ return __awaiter(this, void 0, void 0, function* () {
136
+ return this.getProperty(types_1.ULTIPA.DBType.DBEDGE, schemaName, propertyName, requestConfig);
137
+ });
138
+ }
139
+ /**
140
+ * 属性是否存在
141
+ * @param req
142
+ * @param commonReq
143
+ * @private
144
+ */
145
+ hasProperty(dbType, schemaName, propertyName, requestConfig) {
146
+ return __awaiter(this, void 0, void 0, function* () {
147
+ let res;
148
+ dbType == types_1.ULTIPA.DBType.DBNODE
149
+ ? res = yield this.getNodeProperty(schemaName, propertyName, requestConfig)
150
+ : res = yield this.getEdgeProperty(schemaName, propertyName, requestConfig);
151
+ return {
152
+ status: utils_1.FormatResponse.successStatus(),
153
+ statistics: utils_1.FormatResponse.statisticsSum(),
154
+ data: !lodash_1.default.isEmpty(res.data)
155
+ };
156
+ });
157
+ }
158
+ /**
159
+ * 创建点或者边属性
160
+ */
161
+ createProperty(dbType, schemaName, prop, requestConfig) {
162
+ return __awaiter(this, void 0, void 0, function* () {
163
+ try {
164
+ let command = dbType === types_1.ULTIPA.DBType.DBNODE
165
+ ? CommandList.createNodeProperty
166
+ : CommandList.createEdgeProperty;
167
+ let p_type = prop.type ? prop.type : types_1.ULTIPA.PropertyType.PROPERTY_STRING;
168
+ let commandParams = [
169
+ SchemaStringWithDefault(schemaName),
170
+ utils_1.UQLMAKER.ForceString(prop.name),
171
+ utils_1.PropertyUtils.GetPropertyTypeDesc(p_type, prop.subTypes, prop.extra),
172
+ prop.description || "",
173
+ ];
174
+ let uqlMaker = new utils_1.UQLMAKER(command, requestConfig, commandParams);
175
+ return connection_base_1.ConnectionBase.UqlUpdateSimple(this, uqlMaker);
176
+ }
177
+ catch (error) {
178
+ return utils_1.FormatResponse.catchUltipaUqlError(error);
179
+ }
180
+ });
181
+ }
182
+ /**
183
+ * 不存在,再创建属性
184
+ */
185
+ createPropertyIfNotExist(dbType, schemaName, prop, requestConfig) {
186
+ return __awaiter(this, void 0, void 0, function* () {
187
+ let isPropertyExist = yield this.hasProperty(dbType, schemaName, prop.name, requestConfig);
188
+ if (isPropertyExist.data) {
189
+ return {
190
+ status: utils_1.FormatResponse.successStatus(),
191
+ statistics: utils_1.FormatResponse.statisticsSum(),
192
+ data: true,
193
+ };
194
+ }
195
+ let res = yield this.createProperty(dbType, schemaName, prop, requestConfig);
196
+ return Object.assign(Object.assign({}, res), { data: false });
197
+ });
198
+ }
199
+ /**
200
+ * 删除点或者边属性
201
+ */
202
+ dropProperty(dbType, schemaName, propertyName, requestConfig) {
203
+ return __awaiter(this, void 0, void 0, function* () {
204
+ let command = dbType === types_1.ULTIPA.DBType.DBNODE
205
+ ? CommandList.dropNodeProperty
206
+ : CommandList.dropEdgeProperty;
207
+ let commandParams = SchemaStringWithDefault(schemaName, propertyName);
208
+ let uqlMaker = new utils_1.UQLMAKER(command, requestConfig, commandParams);
209
+ return connection_base_1.ConnectionBase.UqlUpdateSimple(this, uqlMaker);
210
+ });
211
+ }
212
+ /**
213
+ * 更新点或者边属性
214
+ */
215
+ alterProperty(dbType, property, newProperty, requestConfig) {
216
+ return __awaiter(this, void 0, void 0, function* () {
217
+ let command = dbType === types_1.ULTIPA.DBType.DBNODE
218
+ ? CommandList.updateNodeProperty
219
+ : CommandList.updateEdgeProperty;
220
+ let commandParams = SchemaStringWithDefault(property.schema, property.name);
221
+ let uqlMaker = new utils_1.UQLMAKER(command, requestConfig, commandParams);
222
+ let set = {};
223
+ if (newProperty.name) {
224
+ set.name = newProperty.name;
225
+ }
226
+ if ((0, utils_1.isNotNullString)(newProperty.description)) {
227
+ set.description = newProperty.description;
228
+ }
229
+ uqlMaker.addParam("set", set);
230
+ return connection_base_1.ConnectionBase.UqlUpdateSimple(this, uqlMaker);
231
+ });
232
+ }
233
+ /**
234
+ * 加载点或边属性到引擎(LTE)
235
+ */
236
+ LoadToEngine(isNode, req, commonReq) {
237
+ return __awaiter(this, void 0, void 0, function* () {
238
+ let command = isNode ? CommandList.lteNode : CommandList.lteEdge;
239
+ let commandParams = SchemaStringWithDefault(req.schema, req.name);
240
+ let uqlMaker = new utils_1.UQLMAKER(command, commonReq, commandParams);
241
+ return connection_base_1.ConnectionBase.UqlUpdateSimple(this, uqlMaker);
242
+ });
243
+ }
244
+ /**
245
+ * 加载点属性到引擎(LTE)
246
+ */
247
+ lte(dbType, schemaName, propertyName, requestConfig) {
248
+ return __awaiter(this, void 0, void 0, function* () {
249
+ let command = dbType === types_1.ULTIPA.DBType.DBNODE ? CommandList.lteNode : CommandList.lteEdge;
250
+ let commandParams = SchemaStringWithDefault(schemaName, propertyName);
251
+ let uqlMaker = new utils_1.UQLMAKER(command, requestConfig, commandParams);
252
+ return connection_base_1.ConnectionBase.UqlUpdateSimple(this, uqlMaker);
253
+ });
254
+ }
255
+ /**
256
+ * 卸载引擎的点或边属性(UFE)
257
+ */
258
+ ufe(dbType, schemaName, propertyName, requestConfig) {
259
+ return __awaiter(this, void 0, void 0, function* () {
260
+ let command = dbType === types_1.ULTIPA.DBType.DBNODE ? CommandList.ufeNode : CommandList.ufeEdge;
261
+ let commandParams = SchemaStringWithDefault(schemaName, propertyName);
262
+ let uqlMaker = new utils_1.UQLMAKER(command, requestConfig, commandParams);
263
+ return connection_base_1.ConnectionBase.UqlUpdateSimple(this, uqlMaker);
264
+ });
265
+ }
266
+ }
267
+ exports.PropertyExtra = PropertyExtra;
268
+ //# sourceMappingURL=property.extra.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"property.extra.js","sourceRoot":"","sources":["../../../src/connection/extra/property.extra.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ import { ConnectionBase } from "./connection.base";
2
+ import { RequestType, ULTIPA, ResponseType } from "../../types";
3
+ export declare class SchemaExra extends ConnectionBase {
4
+ /**
5
+ * 获得所有schema,或点,边所有schema
6
+ * @param requestConfig
7
+ */
8
+ showSchema(requestConfig?: RequestType.RequestConfig): Promise<ULTIPA.Response<ResponseType.ShowSchema>>;
9
+ /** 获得点或者边的schema */
10
+ private getSchemaBase;
11
+ private getAllSchema;
12
+ /**
13
+ * 获取某个schema
14
+ * @param name
15
+ * @param dbType
16
+ * @param commonReq
17
+ */
18
+ getSchema(schemaName: string, dbType: ULTIPA.DBType, requestConfig?: RequestType.RequestConfig): Promise<ULTIPA.Response<ResponseType.Schema>>;
19
+ /** 获得点的schema
20
+ */
21
+ getNodeSchema(schemaName: string, requestConfig?: RequestType.RequestConfig): Promise<ULTIPA.Response<ResponseType.Schema>>;
22
+ /** 获得点的所有schema */
23
+ showNodeSchema(requestConfig?: RequestType.RequestConfig): Promise<ULTIPA.Response<ResponseType.Schema[]>>;
24
+ /** 获得边的schema
25
+ */
26
+ getEdgeSchema(schemaName: string, requestConfig?: RequestType.RequestConfig): Promise<ULTIPA.Response<ResponseType.Schema>>;
27
+ /** 获得边的所有schema */
28
+ showEdgeSchema(requestConfig?: RequestType.RequestConfig): Promise<ULTIPA.Response<ResponseType.Schema[]>>;
29
+ /** 创建点或者边的schema */
30
+ private createSchemaBase;
31
+ private hasSchema;
32
+ /**
33
+ * 如果不存在schema,创建schema
34
+ * @param req
35
+ * @param commonReq
36
+ */
37
+ createSchemaIfNotExist(schema: ULTIPA.Schema, requestConfig?: RequestType.RequestConfig): Promise<ULTIPA.Response<Boolean>>;
38
+ /** 删除点或者边的schema */
39
+ dropSchema(schema: ULTIPA.Schema, requestConfig?: RequestType.RequestConfig): Promise<ULTIPA.Response<null>>;
40
+ /** 创建点的schema */
41
+ createNodeSchema(req: RequestType.CreateSchema, requestConfig?: RequestType.RequestConfig): Promise<ULTIPA.Response<null>>;
42
+ /** 创建边的schema */
43
+ createEdgeSchema(req: RequestType.CreateSchema, requestConfig?: RequestType.RequestConfig): Promise<ULTIPA.Response<null>>;
44
+ /** 更新点或者边的schema */
45
+ alterSchema(schema: ULTIPA.Schema, newSchema: ULTIPA.Schema, requestConfig?: RequestType.RequestConfig): Promise<ULTIPA.Response<null>>;
46
+ /** 更新点的schema */
47
+ alterNodeSchema(schema: ULTIPA.Schema, newSchema: ULTIPA.Schema, requestConfig?: RequestType.RequestConfig): Promise<ULTIPA.Response<null>>;
48
+ /** 更新边的schema */
49
+ alterEdgeSchema(schema: ULTIPA.Schema, newSchema: ULTIPA.Schema, requestConfig?: RequestType.RequestConfig): Promise<ULTIPA.Response<null>>;
50
+ }
@@ -0,0 +1,248 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.SchemaExra = void 0;
16
+ const connection_base_1 = require("./connection.base");
17
+ const types_1 = require("../../types");
18
+ const utils_1 = require("../../utils");
19
+ const lodash_1 = __importDefault(require("lodash"));
20
+ const { CommandList, SchemaStringWithDefault } = utils_1.UQLMAKER;
21
+ const JSON_KEYS = ["properties"];
22
+ const SCHEMA_PROPERTY_DATA_FORMAT = (schema) => {
23
+ if (schema.totalNodes) {
24
+ schema.total = schema.totalNodes;
25
+ delete schema.totalNodes;
26
+ schema.dbType = types_1.ULTIPA.DBType.DBNODE;
27
+ }
28
+ if (schema.totalEdges) {
29
+ schema.total = schema.totalEdges;
30
+ delete schema.totalEdges;
31
+ schema.dbType = types_1.ULTIPA.DBType.DBEDGE;
32
+ }
33
+ return schema;
34
+ };
35
+ class SchemaExra extends connection_base_1.ConnectionBase {
36
+ /**
37
+ * 获得所有schema,或点,边所有schema
38
+ * @param requestConfig
39
+ */
40
+ showSchema(requestConfig) {
41
+ return __awaiter(this, void 0, void 0, function* () {
42
+ let command = CommandList.listSchema;
43
+ let uqlMaker = new utils_1.UQLMAKER(command, requestConfig);
44
+ let res = yield connection_base_1.ConnectionBase.UqlListSimpleAuto(this, uqlMaker, {
45
+ jsonKeys: JSON_KEYS,
46
+ dataFormat: SCHEMA_PROPERTY_DATA_FORMAT
47
+ });
48
+ // let nodeSchema: ResponseType.Schema[], edgeSchema: ResponseType.Schema[];
49
+ let nodes = [], edges = [];
50
+ let graphCount = [];
51
+ res.data.forEach((d) => {
52
+ switch (d.name) {
53
+ case "_nodeSchema":
54
+ d.values.forEach((data) => {
55
+ data = data;
56
+ data.dbType = types_1.ULTIPA.DBType.DBNODE;
57
+ nodes.push(data);
58
+ });
59
+ break;
60
+ case "_edgeSchema":
61
+ d.values.forEach((data) => {
62
+ data = data;
63
+ data.dbType = types_1.ULTIPA.DBType.DBEDGE;
64
+ edges.push(data);
65
+ });
66
+ break;
67
+ case "_graphCount":
68
+ d.values.forEach((data) => {
69
+ data = data;
70
+ graphCount.push(data);
71
+ });
72
+ break;
73
+ }
74
+ });
75
+ return Object.assign(Object.assign({}, res), { data: {
76
+ nodeSchema: nodes,
77
+ edgeSchema: edges,
78
+ graphCount
79
+ } });
80
+ });
81
+ }
82
+ /** 获得点或者边的schema */
83
+ getSchemaBase(isNode, name, commonReq) {
84
+ return __awaiter(this, void 0, void 0, function* () {
85
+ let command = isNode
86
+ ? CommandList.getNodeSchema
87
+ : CommandList.getEdgeSchema;
88
+ let uqlMaker = new utils_1.UQLMAKER(command, commonReq, SchemaStringWithDefault(name));
89
+ return connection_base_1.ConnectionBase.UqlGetSimple(this, uqlMaker, {
90
+ jsonKeys: JSON_KEYS,
91
+ dataFormat: SCHEMA_PROPERTY_DATA_FORMAT
92
+ });
93
+ });
94
+ }
95
+ getAllSchema(isNode, commonReq) {
96
+ return __awaiter(this, void 0, void 0, function* () {
97
+ let command = isNode
98
+ ? CommandList.getNodeSchema
99
+ : CommandList.getEdgeSchema;
100
+ let uqlMaker = new utils_1.UQLMAKER(command, commonReq);
101
+ return connection_base_1.ConnectionBase.UqlListSimple(this, uqlMaker, {
102
+ jsonKeys: JSON_KEYS,
103
+ dataFormat: SCHEMA_PROPERTY_DATA_FORMAT
104
+ });
105
+ });
106
+ }
107
+ /**
108
+ * 获取某个schema
109
+ * @param name
110
+ * @param dbType
111
+ * @param commonReq
112
+ */
113
+ getSchema(schemaName, dbType, requestConfig) {
114
+ return __awaiter(this, void 0, void 0, function* () {
115
+ return this.getSchemaBase(dbType === types_1.ULTIPA.DBType.DBNODE, schemaName, requestConfig);
116
+ });
117
+ }
118
+ /** 获得点的schema
119
+ */
120
+ getNodeSchema(schemaName, requestConfig) {
121
+ return __awaiter(this, void 0, void 0, function* () {
122
+ return this.getSchema(schemaName, types_1.ULTIPA.DBType.DBNODE, requestConfig);
123
+ });
124
+ }
125
+ /** 获得点的所有schema */
126
+ showNodeSchema(requestConfig) {
127
+ return __awaiter(this, void 0, void 0, function* () {
128
+ return this.getAllSchema(true, requestConfig);
129
+ });
130
+ }
131
+ /** 获得边的schema
132
+ */
133
+ getEdgeSchema(schemaName, requestConfig) {
134
+ return __awaiter(this, void 0, void 0, function* () {
135
+ return this.getSchemaBase(false, schemaName, requestConfig);
136
+ });
137
+ }
138
+ /** 获得边的所有schema */
139
+ showEdgeSchema(requestConfig) {
140
+ return __awaiter(this, void 0, void 0, function* () {
141
+ return this.getAllSchema(false, requestConfig);
142
+ });
143
+ }
144
+ /** 创建点或者边的schema */
145
+ createSchemaBase(req, commonReq) {
146
+ return __awaiter(this, void 0, void 0, function* () {
147
+ let command = req.dbType === types_1.ULTIPA.DBType.DBNODE
148
+ ? CommandList.createNodeSchema
149
+ : CommandList.createEdgeSchema;
150
+ let commandParams = [utils_1.UQLMAKER.ForceString(req.name), req.desc || ""];
151
+ let uqlMaker = new utils_1.UQLMAKER(command, commonReq, commandParams);
152
+ return connection_base_1.ConnectionBase.UqlUpdateSimple(this, uqlMaker);
153
+ });
154
+ }
155
+ hasSchema(req, commonReq) {
156
+ return __awaiter(this, void 0, void 0, function* () {
157
+ let res = yield this.getSchema(req.name, req.dbType, commonReq);
158
+ return Object.assign(Object.assign({}, res), { data: !lodash_1.default.isEmpty(res.data) });
159
+ });
160
+ }
161
+ /**
162
+ * 如果不存在schema,创建schema
163
+ * @param req
164
+ * @param commonReq
165
+ */
166
+ createSchemaIfNotExist(schema, requestConfig) {
167
+ return __awaiter(this, void 0, void 0, function* () {
168
+ let isSchemaExist = yield this.hasSchema(schema, requestConfig);
169
+ if (isSchemaExist.data) {
170
+ return {
171
+ status: utils_1.FormatResponse.successStatus(),
172
+ statistics: utils_1.FormatResponse.statisticsSum(),
173
+ data: true,
174
+ };
175
+ }
176
+ let res = yield this.createSchemaBase(schema, requestConfig);
177
+ return Object.assign(Object.assign({}, res), { data: false });
178
+ });
179
+ }
180
+ /** 删除点或者边的schema */
181
+ // async dropSchema(
182
+ // isNode: boolean,
183
+ // req: RequestType.DeleteSchema,
184
+ // commonReq?: RequestType.RequestConfig
185
+ // )
186
+ dropSchema(schema, requestConfig) {
187
+ return __awaiter(this, void 0, void 0, function* () {
188
+ let command = (schema.dbType === types_1.ULTIPA.DBType.DBNODE)
189
+ ? CommandList.dropNodeSchema
190
+ : CommandList.dropEdgeSchema;
191
+ let commandParams = [SchemaStringWithDefault(schema.name)];
192
+ let uqlMaker = new utils_1.UQLMAKER(command, requestConfig, commandParams);
193
+ return connection_base_1.ConnectionBase.UqlUpdateSimple(this, uqlMaker);
194
+ });
195
+ }
196
+ /** 创建点的schema */
197
+ createNodeSchema(req, requestConfig) {
198
+ return __awaiter(this, void 0, void 0, function* () {
199
+ return this.createSchemaBase(Object.assign(Object.assign({}, req), { dbType: types_1.ULTIPA.DBType.DBNODE }), requestConfig);
200
+ });
201
+ }
202
+ /** 创建边的schema */
203
+ createEdgeSchema(req, requestConfig) {
204
+ return __awaiter(this, void 0, void 0, function* () {
205
+ return this.createSchemaBase(Object.assign(Object.assign({}, req), { dbType: types_1.ULTIPA.DBType.DBEDGE }), requestConfig);
206
+ });
207
+ }
208
+ /** 更新点或者边的schema */
209
+ alterSchema(schema, newSchema, requestConfig) {
210
+ return __awaiter(this, void 0, void 0, function* () {
211
+ // req: RequestType.UpdateSchema,
212
+ let req = {
213
+ name: schema.name,
214
+ dbType: schema.dbType,
215
+ newName: newSchema.name,
216
+ newDesc: newSchema.description,
217
+ };
218
+ let command = req.dbType === types_1.ULTIPA.DBType.DBNODE
219
+ ? CommandList.updateNodeSchema
220
+ : CommandList.updateEdgeSchema;
221
+ let commandParams = [SchemaStringWithDefault(req.name)];
222
+ let uqlMaker = new utils_1.UQLMAKER(command, requestConfig, commandParams);
223
+ let set = {};
224
+ if (req.newName) {
225
+ set.name = req.newName;
226
+ }
227
+ if ((0, utils_1.isNotNullString)(req.newDesc)) {
228
+ set.description = req.newDesc;
229
+ }
230
+ uqlMaker.addParam("set", set);
231
+ return connection_base_1.ConnectionBase.UqlUpdateSimple(this, uqlMaker);
232
+ });
233
+ }
234
+ /** 更新点的schema */
235
+ alterNodeSchema(schema, newSchema, requestConfig) {
236
+ return __awaiter(this, void 0, void 0, function* () {
237
+ return this.alterSchema(schema, newSchema, requestConfig);
238
+ });
239
+ }
240
+ /** 更新边的schema */
241
+ alterEdgeSchema(schema, newSchema, requestConfig) {
242
+ return __awaiter(this, void 0, void 0, function* () {
243
+ return this.alterSchema(schema, newSchema, requestConfig);
244
+ });
245
+ }
246
+ }
247
+ exports.SchemaExra = SchemaExra;
248
+ //# sourceMappingURL=schema.extra.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.extra.js","sourceRoot":"","sources":["../../../src/connection/extra/schema.extra.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { ConnectionBase } from "./connection.base";
2
+ import { RequestType, ULTIPA } from "../../types";
3
+ export declare class SearchExra extends ConnectionBase {
4
+ /** 自动展开 */
5
+ spread(req: RequestType.Spread, commonReq?: RequestType.RequestConfig): Promise<ULTIPA.Response<ULTIPA.Path[]>>;
6
+ /** k邻查询 */
7
+ searchKhop(req: RequestType.SearchKhop, commonReq?: RequestType.RequestConfig): Promise<ULTIPA.Response<ULTIPA.Node[]>>;
8
+ /** AB路径查询 */
9
+ searchAb(req: RequestType.SearchAb, commonReq?: RequestType.RequestConfig): Promise<ULTIPA.Response<ULTIPA.Path[]>>;
10
+ /** 自动组网 */
11
+ searchAutoNet(req: RequestType.SearchAutoNet, commonReq?: RequestType.RequestConfig): Promise<ULTIPA.Response<ULTIPA.Path[]>>;
12
+ }