velocious 1.0.145 → 1.0.147

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 (291) hide show
  1. package/build/src/application.d.ts +8 -8
  2. package/build/src/application.d.ts.map +1 -1
  3. package/build/src/application.js +9 -9
  4. package/build/src/cli/base-command.d.ts +5 -5
  5. package/build/src/cli/base-command.d.ts.map +1 -1
  6. package/build/src/cli/base-command.js +6 -6
  7. package/build/src/cli/browser-cli.d.ts +2 -2
  8. package/build/src/cli/browser-cli.js +3 -3
  9. package/build/src/cli/commands/db/create.d.ts +3 -3
  10. package/build/src/cli/commands/db/create.js +4 -4
  11. package/build/src/cli/index.d.ts +1 -1
  12. package/build/src/cli/index.d.ts.map +1 -1
  13. package/build/src/cli/index.js +2 -2
  14. package/build/src/configuration-resolver.d.ts +1 -1
  15. package/build/src/configuration-resolver.js +2 -2
  16. package/build/src/configuration-types.d.ts +2 -0
  17. package/build/src/configuration-types.d.ts.map +1 -1
  18. package/build/src/configuration-types.js +2 -1
  19. package/build/src/configuration.d.ts +34 -34
  20. package/build/src/configuration.d.ts.map +1 -1
  21. package/build/src/configuration.js +35 -35
  22. package/build/src/controller.d.ts +13 -13
  23. package/build/src/controller.d.ts.map +1 -1
  24. package/build/src/controller.js +14 -14
  25. package/build/src/database/drivers/base-column.d.ts +13 -13
  26. package/build/src/database/drivers/base-column.js +14 -14
  27. package/build/src/database/drivers/base-columns-index.d.ts +8 -8
  28. package/build/src/database/drivers/base-columns-index.js +9 -9
  29. package/build/src/database/drivers/base-foreign-key.d.ts +9 -9
  30. package/build/src/database/drivers/base-foreign-key.js +10 -10
  31. package/build/src/database/drivers/base-table.d.ts +11 -11
  32. package/build/src/database/drivers/base-table.d.ts.map +1 -1
  33. package/build/src/database/drivers/base-table.js +13 -12
  34. package/build/src/database/drivers/base.d.ts +78 -62
  35. package/build/src/database/drivers/base.d.ts.map +1 -1
  36. package/build/src/database/drivers/base.js +132 -63
  37. package/build/src/database/drivers/mssql/index.d.ts +5 -5
  38. package/build/src/database/drivers/mssql/index.d.ts.map +1 -1
  39. package/build/src/database/drivers/mssql/index.js +26 -25
  40. package/build/src/database/drivers/mssql/options.js +6 -6
  41. package/build/src/database/drivers/mssql/structure-sql.d.ts +2 -2
  42. package/build/src/database/drivers/mssql/structure-sql.js +3 -3
  43. package/build/src/database/drivers/mssql/table.d.ts.map +1 -1
  44. package/build/src/database/drivers/mssql/table.js +3 -2
  45. package/build/src/database/drivers/mysql/index.d.ts +5 -5
  46. package/build/src/database/drivers/mysql/index.js +27 -27
  47. package/build/src/database/drivers/mysql/options.js +2 -2
  48. package/build/src/database/drivers/mysql/query.d.ts +2 -1
  49. package/build/src/database/drivers/mysql/query.d.ts.map +1 -1
  50. package/build/src/database/drivers/mysql/query.js +2 -1
  51. package/build/src/database/drivers/mysql/structure-sql.d.ts +3 -3
  52. package/build/src/database/drivers/mysql/structure-sql.js +4 -4
  53. package/build/src/database/drivers/pgsql/index.d.ts +1 -1
  54. package/build/src/database/drivers/pgsql/index.js +14 -14
  55. package/build/src/database/drivers/pgsql/options.d.ts +1 -1
  56. package/build/src/database/drivers/pgsql/options.js +2 -2
  57. package/build/src/database/drivers/pgsql/structure-sql.d.ts +2 -2
  58. package/build/src/database/drivers/pgsql/structure-sql.js +3 -3
  59. package/build/src/database/drivers/sqlite/base.d.ts +4 -4
  60. package/build/src/database/drivers/sqlite/base.d.ts.map +1 -1
  61. package/build/src/database/drivers/sqlite/base.js +24 -21
  62. package/build/src/database/drivers/sqlite/connection-sql-js.d.ts +1 -1
  63. package/build/src/database/drivers/sqlite/connection-sql-js.js +2 -2
  64. package/build/src/database/drivers/sqlite/index.js +2 -2
  65. package/build/src/database/drivers/sqlite/index.web.d.ts +1 -1
  66. package/build/src/database/drivers/sqlite/index.web.d.ts.map +1 -1
  67. package/build/src/database/drivers/sqlite/index.web.js +3 -3
  68. package/build/src/database/drivers/sqlite/options.d.ts +1 -1
  69. package/build/src/database/drivers/sqlite/options.js +2 -2
  70. package/build/src/database/drivers/sqlite/query.d.ts +1 -1
  71. package/build/src/database/drivers/sqlite/query.js +2 -2
  72. package/build/src/database/drivers/sqlite/query.web.d.ts +1 -1
  73. package/build/src/database/drivers/sqlite/query.web.js +2 -2
  74. package/build/src/database/drivers/sqlite/sql/alter-table.js +2 -2
  75. package/build/src/database/drivers/sqlite/structure-sql.d.ts +1 -1
  76. package/build/src/database/drivers/sqlite/structure-sql.js +2 -2
  77. package/build/src/database/drivers/sqlite/table.d.ts +4 -1
  78. package/build/src/database/drivers/sqlite/table.d.ts.map +1 -1
  79. package/build/src/database/drivers/sqlite/table.js +6 -3
  80. package/build/src/database/drivers/structure-sql/utils.d.ts +2 -2
  81. package/build/src/database/drivers/structure-sql/utils.js +3 -3
  82. package/build/src/database/handler.d.ts +1 -1
  83. package/build/src/database/handler.js +2 -2
  84. package/build/src/database/initializer-from-require-context.d.ts +1 -1
  85. package/build/src/database/initializer-from-require-context.js +2 -2
  86. package/build/src/database/migration/index.d.ts +17 -17
  87. package/build/src/database/migration/index.d.ts.map +1 -1
  88. package/build/src/database/migration/index.js +19 -19
  89. package/build/src/database/migrator/files-finder.d.ts +1 -1
  90. package/build/src/database/migrator/files-finder.js +2 -2
  91. package/build/src/database/migrator.d.ts +10 -10
  92. package/build/src/database/migrator.d.ts.map +1 -1
  93. package/build/src/database/migrator.js +11 -11
  94. package/build/src/database/pool/async-tracked-multi-connection.d.ts +4 -4
  95. package/build/src/database/pool/async-tracked-multi-connection.js +9 -9
  96. package/build/src/database/pool/base-methods-forward.d.ts +1 -1
  97. package/build/src/database/pool/base-methods-forward.js +2 -2
  98. package/build/src/database/pool/base.d.ts +11 -11
  99. package/build/src/database/pool/base.js +12 -12
  100. package/build/src/database/pool/single-multi-use.js +4 -4
  101. package/build/src/database/query/alter-table-base.js +2 -2
  102. package/build/src/database/query/base.d.ts +2 -2
  103. package/build/src/database/query/base.js +3 -3
  104. package/build/src/database/query/create-database-base.d.ts +1 -1
  105. package/build/src/database/query/create-database-base.js +2 -2
  106. package/build/src/database/query/create-index-base.js +2 -2
  107. package/build/src/database/query/create-table-base.d.ts +1 -1
  108. package/build/src/database/query/create-table-base.js +2 -2
  109. package/build/src/database/query/drop-table-base.js +2 -2
  110. package/build/src/database/query/from-base.d.ts +3 -3
  111. package/build/src/database/query/from-base.js +4 -4
  112. package/build/src/database/query/index.d.ts +18 -18
  113. package/build/src/database/query/index.d.ts.map +1 -1
  114. package/build/src/database/query/index.js +19 -19
  115. package/build/src/database/query/insert-base.d.ts +2 -1
  116. package/build/src/database/query/insert-base.d.ts.map +1 -1
  117. package/build/src/database/query/insert-base.js +3 -2
  118. package/build/src/database/query/join-base.d.ts +2 -2
  119. package/build/src/database/query/join-base.js +3 -3
  120. package/build/src/database/query/join-object.d.ts +1 -1
  121. package/build/src/database/query/join-object.js +2 -2
  122. package/build/src/database/query/model-class-query.d.ts +14 -14
  123. package/build/src/database/query/model-class-query.d.ts.map +1 -1
  124. package/build/src/database/query/model-class-query.js +15 -15
  125. package/build/src/database/query/order-base.d.ts +2 -2
  126. package/build/src/database/query/order-base.js +3 -3
  127. package/build/src/database/query/select-base.d.ts +2 -2
  128. package/build/src/database/query/select-base.js +3 -3
  129. package/build/src/database/query/update-base.d.ts +1 -1
  130. package/build/src/database/query/update-base.js +2 -2
  131. package/build/src/database/query/where-base.d.ts +3 -3
  132. package/build/src/database/query/where-base.js +4 -4
  133. package/build/src/database/query/where-hash.d.ts +1 -0
  134. package/build/src/database/query/where-hash.d.ts.map +1 -1
  135. package/build/src/database/query/where-hash.js +5 -1
  136. package/build/src/database/query-parser/from-parser.d.ts +1 -1
  137. package/build/src/database/query-parser/from-parser.d.ts.map +1 -1
  138. package/build/src/database/query-parser/from-parser.js +2 -2
  139. package/build/src/database/query-parser/group-parser.d.ts +1 -1
  140. package/build/src/database/query-parser/group-parser.js +2 -2
  141. package/build/src/database/query-parser/options.d.ts +6 -6
  142. package/build/src/database/query-parser/options.js +7 -7
  143. package/build/src/database/record/index.d.ts +99 -87
  144. package/build/src/database/record/index.d.ts.map +1 -1
  145. package/build/src/database/record/index.js +121 -91
  146. package/build/src/database/record/instance-relationships/base.d.ts +7 -7
  147. package/build/src/database/record/instance-relationships/base.d.ts.map +1 -1
  148. package/build/src/database/record/instance-relationships/base.js +8 -8
  149. package/build/src/database/record/instance-relationships/belongs-to.d.ts +1 -1
  150. package/build/src/database/record/instance-relationships/belongs-to.js +2 -2
  151. package/build/src/database/record/instance-relationships/has-many.d.ts +7 -7
  152. package/build/src/database/record/instance-relationships/has-many.d.ts.map +1 -1
  153. package/build/src/database/record/instance-relationships/has-many.js +9 -9
  154. package/build/src/database/record/instance-relationships/has-one.d.ts +1 -1
  155. package/build/src/database/record/instance-relationships/has-one.js +2 -2
  156. package/build/src/database/record/relationships/base.d.ts +3 -3
  157. package/build/src/database/record/relationships/base.d.ts.map +1 -1
  158. package/build/src/database/record/relationships/base.js +4 -4
  159. package/build/src/database/record/relationships/belongs-to.js +3 -3
  160. package/build/src/database/record/relationships/has-many.js +3 -3
  161. package/build/src/database/record/relationships/has-one.js +3 -3
  162. package/build/src/database/record/validators/base.d.ts +1 -1
  163. package/build/src/database/record/validators/base.js +2 -2
  164. package/build/src/database/record/validators/uniqueness.js +2 -2
  165. package/build/src/database/table-data/index.d.ts +19 -19
  166. package/build/src/database/table-data/index.js +20 -20
  167. package/build/src/database/table-data/table-column.d.ts +23 -23
  168. package/build/src/database/table-data/table-column.js +24 -24
  169. package/build/src/database/table-data/table-foreign-key.d.ts +7 -7
  170. package/build/src/database/table-data/table-foreign-key.js +8 -8
  171. package/build/src/database/table-data/table-index.d.ts +3 -3
  172. package/build/src/database/table-data/table-index.js +4 -4
  173. package/build/src/database/use-database.d.ts +1 -1
  174. package/build/src/database/use-database.js +2 -2
  175. package/build/src/environment-handlers/base.d.ts +24 -24
  176. package/build/src/environment-handlers/base.js +25 -25
  177. package/build/src/environment-handlers/browser.d.ts +4 -4
  178. package/build/src/environment-handlers/browser.js +9 -9
  179. package/build/src/environment-handlers/node/cli/commands/destroy/migration.d.ts +1 -1
  180. package/build/src/environment-handlers/node/cli/commands/destroy/migration.js +2 -2
  181. package/build/src/environment-handlers/node/cli/commands/generate/base-models.d.ts +2 -2
  182. package/build/src/environment-handlers/node/cli/commands/generate/base-models.js +3 -3
  183. package/build/src/environment-handlers/node/cli/commands/generate/migration.d.ts +1 -1
  184. package/build/src/environment-handlers/node/cli/commands/generate/migration.js +2 -2
  185. package/build/src/environment-handlers/node/cli/commands/generate/model.d.ts +1 -1
  186. package/build/src/environment-handlers/node/cli/commands/generate/model.js +2 -2
  187. package/build/src/environment-handlers/node/cli/commands/init.d.ts +1 -1
  188. package/build/src/environment-handlers/node/cli/commands/init.js +2 -2
  189. package/build/src/environment-handlers/node/cli/commands/routes.d.ts +2 -2
  190. package/build/src/environment-handlers/node/cli/commands/routes.js +3 -3
  191. package/build/src/environment-handlers/node.d.ts +9 -9
  192. package/build/src/environment-handlers/node.js +21 -21
  193. package/build/src/error-logger.d.ts +1 -0
  194. package/build/src/error-logger.d.ts.map +1 -1
  195. package/build/src/error-logger.js +3 -2
  196. package/build/src/http-client/index.d.ts +1 -1
  197. package/build/src/http-client/index.js +2 -2
  198. package/build/src/http-client/request.d.ts +6 -0
  199. package/build/src/http-client/request.d.ts.map +1 -1
  200. package/build/src/http-client/request.js +7 -1
  201. package/build/src/http-client/response.d.ts +2 -2
  202. package/build/src/http-client/response.js +3 -3
  203. package/build/src/http-client/websocket-client.d.ts +7 -7
  204. package/build/src/http-client/websocket-client.d.ts.map +1 -1
  205. package/build/src/http-client/websocket-client.js +8 -8
  206. package/build/src/http-server/client/index.d.ts +5 -5
  207. package/build/src/http-server/client/index.d.ts.map +1 -1
  208. package/build/src/http-server/client/index.js +6 -6
  209. package/build/src/http-server/client/params-to-object.d.ts +3 -3
  210. package/build/src/http-server/client/params-to-object.d.ts.map +1 -1
  211. package/build/src/http-server/client/params-to-object.js +4 -4
  212. package/build/src/http-server/client/request-buffer/form-data-part.d.ts +2 -2
  213. package/build/src/http-server/client/request-buffer/form-data-part.js +3 -3
  214. package/build/src/http-server/client/request-buffer/index.d.ts +10 -10
  215. package/build/src/http-server/client/request-buffer/index.js +11 -11
  216. package/build/src/http-server/client/request-parser.d.ts +14 -14
  217. package/build/src/http-server/client/request-parser.d.ts.map +1 -1
  218. package/build/src/http-server/client/request-parser.js +15 -15
  219. package/build/src/http-server/client/request.d.ts +2 -2
  220. package/build/src/http-server/client/request.js +3 -3
  221. package/build/src/http-server/client/response.d.ts +8 -8
  222. package/build/src/http-server/client/response.js +9 -9
  223. package/build/src/http-server/client/uploaded-file/memory-uploaded-file.js +2 -2
  224. package/build/src/http-server/client/uploaded-file/temporary-uploaded-file.js +2 -2
  225. package/build/src/http-server/client/uploaded-file/uploaded-file.d.ts +1 -1
  226. package/build/src/http-server/client/uploaded-file/uploaded-file.js +2 -2
  227. package/build/src/http-server/client/websocket-session.d.ts +10 -10
  228. package/build/src/http-server/client/websocket-session.js +11 -11
  229. package/build/src/http-server/index.d.ts +12 -12
  230. package/build/src/http-server/index.d.ts.map +1 -1
  231. package/build/src/http-server/index.js +13 -13
  232. package/build/src/http-server/server-client.d.ts +6 -6
  233. package/build/src/http-server/server-client.d.ts.map +1 -1
  234. package/build/src/http-server/server-client.js +7 -7
  235. package/build/src/http-server/websocket-events-host.d.ts +2 -2
  236. package/build/src/http-server/websocket-events-host.js +3 -3
  237. package/build/src/http-server/websocket-events.d.ts +1 -1
  238. package/build/src/http-server/websocket-events.js +2 -2
  239. package/build/src/http-server/worker-handler/index.d.ts +4 -4
  240. package/build/src/http-server/worker-handler/index.js +5 -5
  241. package/build/src/http-server/worker-handler/worker-thread.d.ts +2 -2
  242. package/build/src/http-server/worker-handler/worker-thread.js +3 -3
  243. package/build/src/initializer.d.ts +3 -3
  244. package/build/src/initializer.js +4 -4
  245. package/build/src/logger.d.ts +9 -9
  246. package/build/src/logger.js +17 -17
  247. package/build/src/routes/app-routes.d.ts +1 -1
  248. package/build/src/routes/app-routes.js +2 -2
  249. package/build/src/routes/base-route.d.ts +6 -6
  250. package/build/src/routes/base-route.d.ts.map +1 -1
  251. package/build/src/routes/base-route.js +7 -7
  252. package/build/src/routes/basic-route.d.ts +1 -1
  253. package/build/src/routes/basic-route.js +5 -5
  254. package/build/src/routes/get-route.js +2 -2
  255. package/build/src/routes/index.d.ts +1 -1
  256. package/build/src/routes/index.js +2 -2
  257. package/build/src/routes/namespace-route.js +2 -2
  258. package/build/src/routes/post-route.js +2 -2
  259. package/build/src/routes/resolver.d.ts +4 -4
  260. package/build/src/routes/resolver.d.ts.map +1 -1
  261. package/build/src/routes/resolver.js +9 -6
  262. package/build/src/routes/resource-route.js +2 -2
  263. package/build/src/testing/format-value.d.ts +2 -2
  264. package/build/src/testing/format-value.js +5 -5
  265. package/build/src/testing/request-client.d.ts +6 -6
  266. package/build/src/testing/request-client.d.ts.map +1 -1
  267. package/build/src/testing/request-client.js +7 -7
  268. package/build/src/testing/test-files-finder.d.ts +8 -7
  269. package/build/src/testing/test-files-finder.d.ts.map +1 -1
  270. package/build/src/testing/test-files-finder.js +8 -7
  271. package/build/src/testing/test-runner.d.ts +14 -14
  272. package/build/src/testing/test-runner.js +15 -15
  273. package/build/src/testing/test.d.ts +26 -26
  274. package/build/src/testing/test.js +27 -27
  275. package/build/src/utils/backtrace-cleaner.d.ts +2 -2
  276. package/build/src/utils/backtrace-cleaner.js +3 -3
  277. package/build/src/utils/ensure-error.d.ts +1 -1
  278. package/build/src/utils/ensure-error.js +2 -2
  279. package/build/src/utils/file-exists.d.ts +1 -1
  280. package/build/src/utils/file-exists.js +2 -2
  281. package/build/src/utils/nest-callbacks.d.ts +1 -1
  282. package/build/src/utils/nest-callbacks.js +2 -2
  283. package/build/src/utils/rest-args-error.d.ts +1 -1
  284. package/build/src/utils/rest-args-error.js +2 -2
  285. package/build/src/utils/singularize-model-name.d.ts +1 -1
  286. package/build/src/utils/singularize-model-name.js +2 -2
  287. package/build/src/utils/with-tracked-stack-async-hooks.d.ts +1 -1
  288. package/build/src/utils/with-tracked-stack-async-hooks.js +2 -2
  289. package/build/src/utils/with-tracked-stack.d.ts +1 -1
  290. package/build/src/utils/with-tracked-stack.js +2 -2
  291. package/package.json +1 -1
@@ -16,7 +16,7 @@ export default class VelociousDatabaseQueryCreateTableBase extends QueryBase {
16
16
  indexInCreateTable: boolean;
17
17
  tableData: TableData;
18
18
  /**
19
- * @returns {Promise<string[]>}
19
+ * @returns {Promise<string[]>} - Result.
20
20
  */
21
21
  toSql(): Promise<string[]>;
22
22
  }
@@ -21,7 +21,7 @@ export default class VelociousDatabaseQueryCreateTableBase extends QueryBase {
21
21
  this.tableData = tableData;
22
22
  }
23
23
  /**
24
- * @returns {Promise<string[]>}
24
+ * @returns {Promise<string[]>} - Result.
25
25
  */
26
26
  async toSql() {
27
27
  const databaseType = this.getDatabaseType();
@@ -134,4 +134,4 @@ export default class VelociousDatabaseQueryCreateTableBase extends QueryBase {
134
134
  return sqls;
135
135
  }
136
136
  }
137
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXRhYmxlLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZGF0YWJhc2UvcXVlcnkvY3JlYXRlLXRhYmxlLWJhc2UuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTtBQUVaLE9BQU8sZUFBZSxNQUFNLHdCQUF3QixDQUFBO0FBQ3BELE9BQU8sU0FBUyxNQUFNLFdBQVcsQ0FBQTtBQUNqQyxPQUFPLGFBQWEsTUFBTSxnQ0FBZ0MsQ0FBQTtBQUMxRCxPQUFPLFNBQVMsTUFBTSx3QkFBd0IsQ0FBQTtBQUM5QyxPQUFPLFdBQVcsTUFBTSwrQkFBK0IsQ0FBQTtBQUV2RCxNQUFNLENBQUMsT0FBTyxPQUFPLHFDQUFzQyxTQUFRLFNBQVM7SUFDMUU7Ozs7OztPQU1HO0lBQ0gsWUFBWSxFQUFDLE1BQU0sRUFBRSxXQUFXLEVBQUUsa0JBQWtCLEdBQUcsSUFBSSxFQUFFLFNBQVMsRUFBQztRQUNyRSxJQUFJLENBQUMsQ0FBQyxTQUFTLFlBQVksU0FBUyxDQUFDO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyw4QkFBOEIsQ0FBQyxDQUFBO1FBRXRGLEtBQUssQ0FBQyxFQUFDLE1BQU0sRUFBQyxDQUFDLENBQUE7UUFDZixJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQTtRQUM5QixJQUFJLENBQUMsa0JBQWtCLEdBQUcsa0JBQWtCLENBQUE7UUFDNUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUE7SUFDNUIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsS0FBSyxDQUFDLEtBQUs7UUFDVCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUE7UUFDM0MsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFBO1FBQy9CLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQTtRQUNqQyxNQUFNLEVBQUMsU0FBUyxFQUFDLEdBQUcsSUFBSSxDQUFB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WyIvLyBAdHMtY2hlY2tcblxuaW1wb3J0IENyZWF0ZUluZGV4QmFzZSBmcm9tIFwiLi9jcmVhdGUtaW5kZXgtYmFzZS5qc1wiXG5pbXBvcnQgUXVlcnlCYXNlIGZyb20gXCIuL2Jhc2UuanNcIlxuaW1wb3J0IHJlc3RBcmdzRXJyb3IgZnJvbSBcIi4uLy4uL3V0aWxzL3Jlc3QtYXJncy1lcnJvci5qc1wiXG5pbXBvcnQgVGFibGVEYXRhIGZyb20gXCIuLi90YWJsZS1kYXRhL2luZGV4LmpzXCJcbmltcG9ydCBUYWJsZUNvbHVtbiBmcm9tIFwiLi4vdGFibGUtZGF0YS90YWJsZS1jb2x1bW4uanNcIlxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBWZWxvY2lvdXNEYXRhYmFzZVF1ZXJ5Q3JlYXRlVGFibGVCYXNlIGV4dGVuZHMgUXVlcnlCYXNlIHtcbiAgLyoqXG4gICAqIEBwYXJhbSB7b2JqZWN0fSBhcmdzXG4gICAqIEBwYXJhbSB7aW1wb3J0KFwiLi4vZHJpdmVycy9iYXNlLmpzXCIpLmRlZmF1bHR9IGFyZ3MuZHJpdmVyXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gW2FyZ3MuaWZOb3RFeGlzdHNdXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gW2FyZ3MuaW5kZXhJbkNyZWF0ZVRhYmxlXVxuICAgKiBAcGFyYW0ge1RhYmxlRGF0YX0gYXJncy50YWJsZURhdGFcbiAgICovXG4gIGNvbnN0cnVjdG9yKHtkcml2ZXIsIGlmTm90RXhpc3RzLCBpbmRleEluQ3JlYXRlVGFibGUgPSB0cnVlLCB0YWJsZURhdGF9KSB7XG4gICAgaWYgKCEodGFibGVEYXRhIGluc3RhbmNlb2YgVGFibGVEYXRhKSkgdGhyb3cgbmV3IEVycm9yKFwiSW52YWxpZCB0YWJsZSBkYXRhIHdhcyBnaXZlblwiKVxuXG4gICAgc3VwZXIoe2RyaXZlcn0pXG4gICAgdGhpcy5pZk5vdEV4aXN0cyA9IGlmTm90RXhpc3RzXG4gICAgdGhpcy5pbmRleEluQ3JlYXRlVGFibGUgPSBpbmRleEluQ3JlYXRlVGFibGVcbiAgICB0aGlzLnRhYmxlRGF0YSA9IHRhYmxlRGF0YVxuICB9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHN0cmluZ1tdPn1cbiAgICovXG4gIGFzeW5jIHRvU3FsKCkge1xuICAgIGNvbnN0IGRhdGFiYXNlVHlwZSA9IHRoaXMuZ2V0RGF0YWJhc2VUeXBlKClcbiAgICBjb25zdCBkcml2ZXIgPSB0aGlzLmdldERyaXZlcigpXG4gICAgY29uc3Qgb3B0aW9ucyA9IHRoaXMuZ2V0T3B0aW9ucygpXG4gICAgY29uc3Qge3RhYmxlRGF0YX0gPSB0aGlzXG4gICAgY29uc3Qgc3FscyA9IFtdXG4gICAgY29uc3QgaWZOb3RFeGlzdHMgPSB0aGlzLmlmTm90RXhpc3RzIHx8IHRhYmxlRGF0YS5nZXRJZk5vdEV4aXN0cygpXG4gICAgbGV0IHNxbCA9IFwiXCJcblxuICAgIGlmIChkYXRhYmFzZVR5cGUgPT0gXCJtc3NxbFwiICYmIGlmTm90RXhpc3RzKSB7XG4gICAgICBzcWwgKz0gYElGIE5PVCBFWElTVFMoU0VMRUNUICogRlJPTSBbc3lzb2JqZWN0c10gV0hFUkUgW25hbWVdID0gJHtvcHRpb25zLnF1b3RlKHRhYmxlRGF0YS5nZXROYW1lKCkpfSBBTkQgW3h0eXBlXSA9ICdVJykgQkVHSU4gYFxuICAgIH1cblxuICAgIHNxbCArPSBcIkNSRUFURSBUQUJMRVwiXG5cbiAgICBpZiAoZGF0YWJhc2VUeXBlICE9IFwibXNzcWxcIiAmJiBpZk5vdEV4aXN0cykgc3FsICs9IFwiIElGIE5PVCBFWElTVFNcIlxuXG4gICAgc3FsICs9IGAgJHtvcHRpb25zLnF1b3RlVGFibGVOYW1lKHRhYmxlRGF0YS5nZXROYW1lKCkpfSAoYFxuXG4gICAgbGV0IGNvbHVtbkNvdW50ID0gMFxuXG4gICAgZm9yIChjb25zdCBjb2x1bW4gb2YgdGFibGVEYXRhLmdldENvbHVtbnMoKSkge1xuICAgICAgY29sdW1uQ291bnQrK1xuXG4gICAgICBpZiAoY29sdW1uQ291bnQgPiAxKSBzcWwgKz0gXCIsIFwiXG5cbiAgICAgIHNxbCArPSBjb2x1bW4uZ2V0U1FMKHtkcml2ZXIsIGZvckFsdGVyVGFibGU6IGZhbHNlfSlcbiAgICB9XG5cbiAgICBpZiAodGhpcy5pbmRleEluQ3JlYXRlVGFibGUpIHtcbiAgICAgIGZvciAoY29uc3QgaW5kZXggb2YgdGFibGVEYXRhLmdldEluZGV4ZXMoKSkge1xuICAgICAgICBzcWwgKz0gXCIsXCJcblxuICAgICAgICBpZiAoaW5kZXguZ2V0VW5pcXVlKCkpIHtcbiAgICAgICAgICBzcWwgKz0gXCIgVU5JUVVFXCJcbiAgICAgICAgfVxuXG4gICAgICAgIHNxbCArPSBcIiBJTkRFWFwiXG5cbiAgICAgICAgaWYgKGluZGV4LmdldE5hbWUoKSkge1xuICAgICAgICAgIHNxbCArPSBgICR7b3B0aW9ucy5xdW90ZUluZGV4TmFtZShpbmRleC5nZXROYW1lKCkpfWBcbiAgICAgICAgfVxuXG4gICAgICAgIHNxbCArPSBcIiAoXCJcblxuICAgICAgICBpbmRleC5nZXRDb2x1bW5zKCkuZm9yRWFjaCgoY29sdW1uLCBjb2x1bW5JbmRleCkgPT4ge1xuICAgICAgICAgIGlmIChjb2x1bW5JbmRleCA+IDApIHNxbCArPSBcIiwgXCJcblxuICAgICAgICAgIGlmIChjb2x1bW4gaW5zdGFuY2VvZiBUYWJsZUNvbHVtbikge1xuICAgICAgICAgICAgc3FsICs9IGRyaXZlci5xdW90ZUNvbHVtbihjb2x1bW4uZ2V0TmFtZSgpKVxuICAgICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGNvbHVtbiA9PSBcInN0cmluZ1wiKSB7XG4gICAgICAgICAgICBzcWwgKz0gZHJpdmVyLnF1b3RlQ29sdW1uKGNvbHVtbilcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIGNvbHVtbiB0eXBlOiAke3R5cGVvZiBjb2x1bW59YClcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG5cbiAgICAgICAgc3FsICs9IFwiKVwiXG4gICAgICB9XG5cbiAgICAgIC8vIENyZWF0ZSBpbmRleGVzIGZvciBhbGwgY29sdW1ucyB3aXRoIHRoZSBpbmRleCBhcmd1bWVudFxuICAgICAgZm9yIChjb25zdCBjb2x1bW4gb2YgdGFibGVEYXRhLmdldENvbHVtbnMoKSkge1xuICAgICAgICBpZiAoIWNvbHVtbi5nZXRJbmRleCgpKSBjb250aW51ZVxuXG4gICAgICAgIGxldCBpbmRleE5hbWUgPSBgaW5kZXhfb25fYFxuXG4gICAgICAgIGlmIChkYXRhYmFzZVR5cGUgPT0gXCJzcWxpdGVcIikgc3FsICs9IGAke3RhYmxlRGF0YS5nZXROYW1lKCl9X2BcblxuICAgICAgICBpbmRleE5hbWUgKz0gY29sdW1uLmdldE5hbWUoKVxuXG4gICAgICAgIHNxbCArPSBcIixcIlxuXG4gICAgICAgIGNvbnN0IHt1bmlxdWUsIC4uLnJlc3RJbmRleEFyZ3N9ID0gY29sdW1uLmdldEluZGV4QXJncygpXG5cbiAgICAgICAgcmVzdEFyZ3NFcnJvcihyZXN0SW5kZXhBcmdzKVxuXG4gICAgICAgIGlmICh1bmlxdWUpIHtcbiAgICAgICAgICBzcWwgKz0gXCIgVU5JUVVFXCJcbiAgICAgICAgfVxuXG4gICAgICAgIHNxbCArPSBgIElOREVYICR7b3B0aW9ucy5xdW90ZUluZGV4TmFtZShpbmRleE5hbWUpfSAoJHtvcHRpb25zLnF1b3RlQ29sdW1uTmFtZShjb2x1bW4uZ2V0TmFtZSgpKX0pYFxuICAgICAgfVxuICAgIH1cblxuICAgIHNxbCArPSBcIilcIlxuXG4gICAgaWYgKGRhdGFiYXNlVHlwZSA9PSBcIm1zc3FsXCIgJiYgaWZOb3RFeGlzdHMpIHtcbiAgICAgIHNxbCArPSBcIiBFTkRcIlxuICAgIH1cblxuICAgIHNxbHMucHVzaChzcWwpXG5cbiAgICBpZiAoIXRoaXMuaW5kZXhJbkNyZWF0ZVRhYmxlKSB7XG4gICAgICBmb3IgKGNvbnN0IGluZGV4IG9mIHRhYmxlRGF0YS5nZXRJbmRleGVzKCkpIHtcbiAgICAgICAgY29uc3QgY3JlYXRlSW5kZXhBcmdzID0ge1xuICAgICAgICAgIGNvbHVtbnM6IGluZGV4LmdldENvbHVtbnMoKSxcbiAgICAgICAgICBkcml2ZXI6IHRoaXMuZ2V0RHJpdmVyKCksXG4gICAgICAgICAgaWZOb3RFeGlzdHM6IHRydWUsXG4gICAgICAgICAgbmFtZTogaW5kZXguZ2V0TmFtZSgpLFxuICAgICAgICAgIHRhYmxlTmFtZTogdGFibGVEYXRhLmdldE5hbWUoKSxcbiAgICAgICAgICB1bmlxdWU6IGluZGV4LmdldFVuaXF1ZSgpXG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgY3JlYXRlSW5kZXhTUUxzID0gYXdhaXQgbmV3IENyZWF0ZUluZGV4QmFzZShjcmVhdGVJbmRleEFyZ3MpLnRvU1FMcygpXG5cbiAgICAgICAgZm9yIChjb25zdCBjcmVhdGVJbmRleFNRTCBvZiBjcmVhdGVJbmRleFNRTHMpIHtcbiAgICAgICAgICBzcWxzLnB1c2goY3JlYXRlSW5kZXhTUUwpXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gQ3JlYXRlIGluZGV4ZXMgZm9yIGFsbCBjb2x1bW5zIHdpdGggdGhlIGluZGV4IGFyZ3VtZW50XG4gICAgICBmb3IgKGNvbnN0IGNvbHVtbiBvZiB0YWJsZURhdGEuZ2V0Q29sdW1ucygpKSB7XG4gICAgICAgIGlmICghY29sdW1uLmdldEluZGV4KCkpIGNvbnRpbnVlXG5cbiAgICAgICAgY29uc3Qge3VuaXF1ZSwgLi4ucmVzdEluZGV4QXJnc30gPSBjb2x1bW4uZ2V0SW5kZXhBcmdzKClcblxuICAgICAgICByZXN0QXJnc0Vycm9yKHJlc3RJbmRleEFyZ3MpXG5cbiAgICAgICAgbGV0IGluZGV4TmFtZSA9IGBpbmRleF9vbl9gXG5cbiAgICAgICAgaWYgKGRhdGFiYXNlVHlwZSA9PSBcInNxbGl0ZVwiKSBpbmRleE5hbWUgKz0gYCR7dGFibGVEYXRhLmdldE5hbWUoKX1fYFxuXG4gICAgICAgIGluZGV4TmFtZSArPSBjb2x1bW4uZ2V0TmFtZSgpXG5cbiAgICAgICAgY29uc3QgY3JlYXRlSW5kZXhBcmdzID0ge1xuICAgICAgICAgIGNvbHVtbnM6IFtjb2x1bW4uZ2V0TmFtZSgpXSxcbiAgICAgICAgICBkcml2ZXI6IHRoaXMuZ2V0RHJpdmVyKCksXG4gICAgICAgICAgbmFtZTogaW5kZXhOYW1lLFxuICAgICAgICAgIHRhYmxlTmFtZTogdGFibGVEYXRhLmdldE5hbWUoKSxcbiAgICAgICAgICB1bmlxdWVcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBjcmVhdGVJbmRleFNRTHMgPSBhd2FpdCBuZXcgQ3JlYXRlSW5kZXhCYXNlKGNyZWF0ZUluZGV4QXJncykudG9TUUxzKClcblxuICAgICAgICBmb3IgKGNvbnN0IGNyZWF0ZUluZGV4U1FMIG9mIGNyZWF0ZUluZGV4U1FMcykge1xuICAgICAgICAgIHNxbHMucHVzaChjcmVhdGVJbmRleFNRTClcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBzcWxzXG4gIH1cbn1cbiJdfQ==
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXRhYmxlLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZGF0YWJhc2UvcXVlcnkvY3JlYXRlLXRhYmxlLWJhc2UuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTtBQUVaLE9BQU8sZUFBZSxNQUFNLHdCQUF3QixDQUFBO0FBQ3BELE9BQU8sU0FBUyxNQUFNLFdBQVcsQ0FBQTtBQUNqQyxPQUFPLGFBQWEsTUFBTSxnQ0FBZ0MsQ0FBQTtBQUMxRCxPQUFPLFNBQVMsTUFBTSx3QkFBd0IsQ0FBQTtBQUM5QyxPQUFPLFdBQVcsTUFBTSwrQkFBK0IsQ0FBQTtBQUV2RCxNQUFNLENBQUMsT0FBTyxPQUFPLHFDQUFzQyxTQUFRLFNBQVM7SUFDMUU7Ozs7OztPQU1HO0lBQ0gsWUFBWSxFQUFDLE1BQU0sRUFBRSxXQUFXLEVBQUUsa0JBQWtCLEdBQUcsSUFBSSxFQUFFLFNBQVMsRUFBQztRQUNyRSxJQUFJLENBQUMsQ0FBQyxTQUFTLFlBQVksU0FBUyxDQUFDO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyw4QkFBOEIsQ0FBQyxDQUFBO1FBRXRGLEtBQUssQ0FBQyxFQUFDLE1BQU0sRUFBQyxDQUFDLENBQUE7UUFDZixJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQTtRQUM5QixJQUFJLENBQUMsa0JBQWtCLEdBQUcsa0JBQWtCLENBQUE7UUFDNUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUE7SUFDNUIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsS0FBSyxDQUFDLEtBQUs7UUFDVCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUE7UUFDM0MsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFBO1FBQy9CLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQTtRQUNqQyxNQUFNLEVBQUMsU0FBUyxFQUFDLEdBQUcsSUFBSSxDQUFBO1FBQ3hCLE1BQU0sSUFBSSxHQUFHLEVBQUUsQ0FBQTtRQUNmLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxXQUFXLElBQUksU0FBUyxDQUFDLGNBQWMsRUFBRSxDQUFBO1FBQ2xFLElBQUksR0FBRyxHQUFHLEVBQUUsQ0FBQTtRQUVaLElBQUksWUFBWSxJQUFJLE9BQU8sSUFBSSxXQUFXLEVBQUUsQ0FBQztZQUMzQyxHQUFHLElBQUksMkRBQTJELE9BQU8sQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDLDRCQUE0QixDQUFBO1FBQ2xJLENBQUM7UUFFRCxHQUFHLElBQUksY0FBYyxDQUFBO1FBRXJCLElBQUksWUFBWSxJQUFJLE9BQU8sSUFBSSxXQUFXO1lBQUUsR0FBRyxJQUFJLGdCQUFnQixDQUFBO1FBRW5FLEdBQUcsSUFBSSxJQUFJLE9BQU8sQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQTtRQUUxRCxJQUFJLFdBQVcsR0FBRyxDQUFDLENBQUE7UUFFbkIsS0FBSyxNQUFNLE1BQU0sSUFBSSxTQUFTLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQztZQUM1QyxXQUFXLEVBQUUsQ0FBQTtZQUViLElBQUksV0FBVyxHQUFHLENBQUM7Z0JBQUUsR0FBRyxJQUFJLElBQUksQ0FBQTtZQUVoQyxHQUFHLElBQUksTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFDLE1BQU0sRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFDLENBQUMsQ0FBQTtRQUN0RCxDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUM1QixLQUFLLE1BQU0sS0FBSyxJQUFJLFNBQVMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDO2dCQUMzQyxHQUFHLElBQUksR0FBRyxDQUFBO2dCQUVWLElBQUksS0FBSyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUM7b0JBQ3RCLEdBQUcsSUFBSSxTQUFTLENBQUE7Z0JBQ2xCLENBQUM7Z0JBRUQsR0FBRyxJQUFJLFFBQVEsQ0FBQTtnQkFFZixJQUFJLEtBQUssQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDO29CQUNwQixHQUFHLElBQUksSUFBSSxPQUFPLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUE7Z0JBQ3RELENBQUM7Z0JBRUQsR0FBRyxJQUFJLElBQUksQ0FBQTtnQkFFWCxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLFdBQVcsRUFBRSxFQUFFO29CQUNqRCxJQUFJLFdBQVcsR0FBRyxDQUFDO3dCQUFFLEdBQUcsSUFBSSxJQUFJLENBQUE7b0JBRWhDLElBQUksTUFBTSxZQUFZLFdBQVcsRUFBRSxDQUFDO3dCQUNsQyxHQUFHLElBQUksTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQTtvQkFDN0MsQ0FBQzt5QkFBTSxJQUFJLE9BQU8sTUFBTSxJQUFJLFFBQVEsRUFBRSxDQUFDO3dCQUNyQyxHQUFHLElBQUksTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQTtvQkFDbkMsQ0FBQzt5QkFBTSxDQUFDO3dCQUNOLE1BQU0sSUFBSSxLQUFLLENBQUMsd0JBQXdCLE9BQU8sTUFBTSxFQUFFLENBQUMsQ0FBQTtvQkFDMUQsQ0FBQztnQkFDSCxDQUFDLENBQUMsQ0FBQTtnQkFFRixHQUFHLElBQUksR0FBRyxDQUFBO1lBQ1osQ0FBQztZQUVELHlEQUF5RDtZQUN6RCxLQUFLLE1BQU0sTUFBTSxJQUFJLFNBQVMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDO2dCQUM1QyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRTtvQkFBRSxTQUFRO2dCQUVoQyxJQUFJLFNBQVMsR0FBRyxXQUFXLENBQUE7Z0JBRTNCLElBQUksWUFBWSxJQUFJLFFBQVE7b0JBQUUsR0FBRyxJQUFJLEdBQUcsU0FBUyxDQUFDLE9BQU8sRUFBRSxHQUFHLENBQUE7Z0JBRTlELFNBQVMsSUFBSSxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUE7Z0JBRTdCLEdBQUcsSUFBSSxHQUFHLENBQUE7Z0JBRVYsTUFBTSxFQUFDLE1BQU0sRUFBRSxHQUFHLGFBQWEsRUFBQyxHQUFHLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQTtnQkFFeEQsYUFBYSxDQUFDLGFBQWEsQ0FBQyxDQUFBO2dCQUU1QixJQUFJLE1BQU0sRUFBRSxDQUFDO29CQUNYLEdBQUcsSUFBSSxTQUFTLENBQUE7Z0JBQ2xCLENBQUM7Z0JBRUQsR0FBRyxJQUFJLFVBQVUsT0FBTyxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsS0FBSyxPQUFPLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLENBQUE7WUFDckcsQ0FBQztRQUNILENBQUM7UUFFRCxHQUFHLElBQUksR0FBRyxDQUFBO1FBRVYsSUFBSSxZQUFZLElBQUksT0FBTyxJQUFJLFdBQVcsRUFBRSxDQUFDO1lBQzNDLEdBQUcsSUFBSSxNQUFNLENBQUE7UUFDZixDQUFDO1FBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUVkLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUM3QixLQUFLLE1BQU0sS0FBSyxJQUFJLFNBQVMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDO2dCQUMzQyxNQUFNLGVBQWUsR0FBRztvQkFDdEIsT0FBTyxFQUFFLEtBQUssQ0FBQyxVQUFVLEVBQUU7b0JBQzNCLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxFQUFFO29CQUN4QixXQUFXLEVBQUUsSUFBSTtvQkFDakIsSUFBSSxFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQUU7b0JBQ3JCLFNBQVMsRUFBRSxTQUFTLENBQUMsT0FBTyxFQUFFO29CQUM5QixNQUFNLEVBQUUsS0FBSyxDQUFDLFNBQVMsRUFBRTtpQkFDMUIsQ0FBQTtnQkFDRCxNQUFNLGVBQWUsR0FBRyxNQUFNLElBQUksZUFBZSxDQUFDLGVBQWUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFBO2dCQUUzRSxLQUFLLE1BQU0sY0FBYyxJQUFJLGVBQWUsRUFBRSxDQUFDO29CQUM3QyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFBO2dCQUMzQixDQUFDO1lBQ0gsQ0FBQztZQUVELHlEQUF5RDtZQUN6RCxLQUFLLE1BQU0sTUFBTSxJQUFJLFNBQVMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDO2dCQUM1QyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRTtvQkFBRSxTQUFRO2dCQUVoQyxNQUFNLEVBQUMsTUFBTSxFQUFFLEdBQUcsYUFBYSxFQUFDLEdBQUcsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFBO2dCQUV4RCxhQUFhLENBQUMsYUFBYSxDQUFDLENBQUE7Z0JBRTVCLElBQUksU0FBUyxHQUFHLFdBQVcsQ0FBQTtnQkFFM0IsSUFBSSxZQUFZLElBQUksUUFBUTtvQkFBRSxTQUFTLElBQUksR0FBRyxTQUFTLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQTtnQkFFcEUsU0FBUyxJQUFJLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQTtnQkFFN0IsTUFBTSxlQUFlLEdBQUc7b0JBQ3RCLE9BQU8sRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztvQkFDM0IsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUU7b0JBQ3hCLElBQUksRUFBRSxTQUFTO29CQUNmLFNBQVMsRUFBRSxTQUFTLENBQUMsT0FBTyxFQUFFO29CQUM5QixNQUFNO2lCQUNQLENBQUE7Z0JBQ0QsTUFBTSxlQUFlLEdBQUcsTUFBTSxJQUFJLGVBQWUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQTtnQkFFM0UsS0FBSyxNQUFNLGNBQWMsSUFBSSxlQUFlLEVBQUUsQ0FBQztvQkFDN0MsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQTtnQkFDM0IsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtY2hlY2tcblxuaW1wb3J0IENyZWF0ZUluZGV4QmFzZSBmcm9tIFwiLi9jcmVhdGUtaW5kZXgtYmFzZS5qc1wiXG5pbXBvcnQgUXVlcnlCYXNlIGZyb20gXCIuL2Jhc2UuanNcIlxuaW1wb3J0IHJlc3RBcmdzRXJyb3IgZnJvbSBcIi4uLy4uL3V0aWxzL3Jlc3QtYXJncy1lcnJvci5qc1wiXG5pbXBvcnQgVGFibGVEYXRhIGZyb20gXCIuLi90YWJsZS1kYXRhL2luZGV4LmpzXCJcbmltcG9ydCBUYWJsZUNvbHVtbiBmcm9tIFwiLi4vdGFibGUtZGF0YS90YWJsZS1jb2x1bW4uanNcIlxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBWZWxvY2lvdXNEYXRhYmFzZVF1ZXJ5Q3JlYXRlVGFibGVCYXNlIGV4dGVuZHMgUXVlcnlCYXNlIHtcbiAgLyoqXG4gICAqIEBwYXJhbSB7b2JqZWN0fSBhcmdzXG4gICAqIEBwYXJhbSB7aW1wb3J0KFwiLi4vZHJpdmVycy9iYXNlLmpzXCIpLmRlZmF1bHR9IGFyZ3MuZHJpdmVyXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gW2FyZ3MuaWZOb3RFeGlzdHNdXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gW2FyZ3MuaW5kZXhJbkNyZWF0ZVRhYmxlXVxuICAgKiBAcGFyYW0ge1RhYmxlRGF0YX0gYXJncy50YWJsZURhdGFcbiAgICovXG4gIGNvbnN0cnVjdG9yKHtkcml2ZXIsIGlmTm90RXhpc3RzLCBpbmRleEluQ3JlYXRlVGFibGUgPSB0cnVlLCB0YWJsZURhdGF9KSB7XG4gICAgaWYgKCEodGFibGVEYXRhIGluc3RhbmNlb2YgVGFibGVEYXRhKSkgdGhyb3cgbmV3IEVycm9yKFwiSW52YWxpZCB0YWJsZSBkYXRhIHdhcyBnaXZlblwiKVxuXG4gICAgc3VwZXIoe2RyaXZlcn0pXG4gICAgdGhpcy5pZk5vdEV4aXN0cyA9IGlmTm90RXhpc3RzXG4gICAgdGhpcy5pbmRleEluQ3JlYXRlVGFibGUgPSBpbmRleEluQ3JlYXRlVGFibGVcbiAgICB0aGlzLnRhYmxlRGF0YSA9IHRhYmxlRGF0YVxuICB9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHN0cmluZ1tdPn0gLSBSZXN1bHQuXG4gICAqL1xuICBhc3luYyB0b1NxbCgpIHtcbiAgICBjb25zdCBkYXRhYmFzZVR5cGUgPSB0aGlzLmdldERhdGFiYXNlVHlwZSgpXG4gICAgY29uc3QgZHJpdmVyID0gdGhpcy5nZXREcml2ZXIoKVxuICAgIGNvbnN0IG9wdGlvbnMgPSB0aGlzLmdldE9wdGlvbnMoKVxuICAgIGNvbnN0IHt0YWJsZURhdGF9ID0gdGhpc1xuICAgIGNvbnN0IHNxbHMgPSBbXVxuICAgIGNvbnN0IGlmTm90RXhpc3RzID0gdGhpcy5pZk5vdEV4aXN0cyB8fCB0YWJsZURhdGEuZ2V0SWZOb3RFeGlzdHMoKVxuICAgIGxldCBzcWwgPSBcIlwiXG5cbiAgICBpZiAoZGF0YWJhc2VUeXBlID09IFwibXNzcWxcIiAmJiBpZk5vdEV4aXN0cykge1xuICAgICAgc3FsICs9IGBJRiBOT1QgRVhJU1RTKFNFTEVDVCAqIEZST00gW3N5c29iamVjdHNdIFdIRVJFIFtuYW1lXSA9ICR7b3B0aW9ucy5xdW90ZSh0YWJsZURhdGEuZ2V0TmFtZSgpKX0gQU5EIFt4dHlwZV0gPSAnVScpIEJFR0lOIGBcbiAgICB9XG5cbiAgICBzcWwgKz0gXCJDUkVBVEUgVEFCTEVcIlxuXG4gICAgaWYgKGRhdGFiYXNlVHlwZSAhPSBcIm1zc3FsXCIgJiYgaWZOb3RFeGlzdHMpIHNxbCArPSBcIiBJRiBOT1QgRVhJU1RTXCJcblxuICAgIHNxbCArPSBgICR7b3B0aW9ucy5xdW90ZVRhYmxlTmFtZSh0YWJsZURhdGEuZ2V0TmFtZSgpKX0gKGBcblxuICAgIGxldCBjb2x1bW5Db3VudCA9IDBcblxuICAgIGZvciAoY29uc3QgY29sdW1uIG9mIHRhYmxlRGF0YS5nZXRDb2x1bW5zKCkpIHtcbiAgICAgIGNvbHVtbkNvdW50KytcblxuICAgICAgaWYgKGNvbHVtbkNvdW50ID4gMSkgc3FsICs9IFwiLCBcIlxuXG4gICAgICBzcWwgKz0gY29sdW1uLmdldFNRTCh7ZHJpdmVyLCBmb3JBbHRlclRhYmxlOiBmYWxzZX0pXG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaW5kZXhJbkNyZWF0ZVRhYmxlKSB7XG4gICAgICBmb3IgKGNvbnN0IGluZGV4IG9mIHRhYmxlRGF0YS5nZXRJbmRleGVzKCkpIHtcbiAgICAgICAgc3FsICs9IFwiLFwiXG5cbiAgICAgICAgaWYgKGluZGV4LmdldFVuaXF1ZSgpKSB7XG4gICAgICAgICAgc3FsICs9IFwiIFVOSVFVRVwiXG4gICAgICAgIH1cblxuICAgICAgICBzcWwgKz0gXCIgSU5ERVhcIlxuXG4gICAgICAgIGlmIChpbmRleC5nZXROYW1lKCkpIHtcbiAgICAgICAgICBzcWwgKz0gYCAke29wdGlvbnMucXVvdGVJbmRleE5hbWUoaW5kZXguZ2V0TmFtZSgpKX1gXG4gICAgICAgIH1cblxuICAgICAgICBzcWwgKz0gXCIgKFwiXG5cbiAgICAgICAgaW5kZXguZ2V0Q29sdW1ucygpLmZvckVhY2goKGNvbHVtbiwgY29sdW1uSW5kZXgpID0+IHtcbiAgICAgICAgICBpZiAoY29sdW1uSW5kZXggPiAwKSBzcWwgKz0gXCIsIFwiXG5cbiAgICAgICAgICBpZiAoY29sdW1uIGluc3RhbmNlb2YgVGFibGVDb2x1bW4pIHtcbiAgICAgICAgICAgIHNxbCArPSBkcml2ZXIucXVvdGVDb2x1bW4oY29sdW1uLmdldE5hbWUoKSlcbiAgICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiBjb2x1bW4gPT0gXCJzdHJpbmdcIikge1xuICAgICAgICAgICAgc3FsICs9IGRyaXZlci5xdW90ZUNvbHVtbihjb2x1bW4pXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBjb2x1bW4gdHlwZTogJHt0eXBlb2YgY29sdW1ufWApXG4gICAgICAgICAgfVxuICAgICAgICB9KVxuXG4gICAgICAgIHNxbCArPSBcIilcIlxuICAgICAgfVxuXG4gICAgICAvLyBDcmVhdGUgaW5kZXhlcyBmb3IgYWxsIGNvbHVtbnMgd2l0aCB0aGUgaW5kZXggYXJndW1lbnRcbiAgICAgIGZvciAoY29uc3QgY29sdW1uIG9mIHRhYmxlRGF0YS5nZXRDb2x1bW5zKCkpIHtcbiAgICAgICAgaWYgKCFjb2x1bW4uZ2V0SW5kZXgoKSkgY29udGludWVcblxuICAgICAgICBsZXQgaW5kZXhOYW1lID0gYGluZGV4X29uX2BcblxuICAgICAgICBpZiAoZGF0YWJhc2VUeXBlID09IFwic3FsaXRlXCIpIHNxbCArPSBgJHt0YWJsZURhdGEuZ2V0TmFtZSgpfV9gXG5cbiAgICAgICAgaW5kZXhOYW1lICs9IGNvbHVtbi5nZXROYW1lKClcblxuICAgICAgICBzcWwgKz0gXCIsXCJcblxuICAgICAgICBjb25zdCB7dW5pcXVlLCAuLi5yZXN0SW5kZXhBcmdzfSA9IGNvbHVtbi5nZXRJbmRleEFyZ3MoKVxuXG4gICAgICAgIHJlc3RBcmdzRXJyb3IocmVzdEluZGV4QXJncylcblxuICAgICAgICBpZiAodW5pcXVlKSB7XG4gICAgICAgICAgc3FsICs9IFwiIFVOSVFVRVwiXG4gICAgICAgIH1cblxuICAgICAgICBzcWwgKz0gYCBJTkRFWCAke29wdGlvbnMucXVvdGVJbmRleE5hbWUoaW5kZXhOYW1lKX0gKCR7b3B0aW9ucy5xdW90ZUNvbHVtbk5hbWUoY29sdW1uLmdldE5hbWUoKSl9KWBcbiAgICAgIH1cbiAgICB9XG5cbiAgICBzcWwgKz0gXCIpXCJcblxuICAgIGlmIChkYXRhYmFzZVR5cGUgPT0gXCJtc3NxbFwiICYmIGlmTm90RXhpc3RzKSB7XG4gICAgICBzcWwgKz0gXCIgRU5EXCJcbiAgICB9XG5cbiAgICBzcWxzLnB1c2goc3FsKVxuXG4gICAgaWYgKCF0aGlzLmluZGV4SW5DcmVhdGVUYWJsZSkge1xuICAgICAgZm9yIChjb25zdCBpbmRleCBvZiB0YWJsZURhdGEuZ2V0SW5kZXhlcygpKSB7XG4gICAgICAgIGNvbnN0IGNyZWF0ZUluZGV4QXJncyA9IHtcbiAgICAgICAgICBjb2x1bW5zOiBpbmRleC5nZXRDb2x1bW5zKCksXG4gICAgICAgICAgZHJpdmVyOiB0aGlzLmdldERyaXZlcigpLFxuICAgICAgICAgIGlmTm90RXhpc3RzOiB0cnVlLFxuICAgICAgICAgIG5hbWU6IGluZGV4LmdldE5hbWUoKSxcbiAgICAgICAgICB0YWJsZU5hbWU6IHRhYmxlRGF0YS5nZXROYW1lKCksXG4gICAgICAgICAgdW5pcXVlOiBpbmRleC5nZXRVbmlxdWUoKVxuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGNyZWF0ZUluZGV4U1FMcyA9IGF3YWl0IG5ldyBDcmVhdGVJbmRleEJhc2UoY3JlYXRlSW5kZXhBcmdzKS50b1NRTHMoKVxuXG4gICAgICAgIGZvciAoY29uc3QgY3JlYXRlSW5kZXhTUUwgb2YgY3JlYXRlSW5kZXhTUUxzKSB7XG4gICAgICAgICAgc3Fscy5wdXNoKGNyZWF0ZUluZGV4U1FMKVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIENyZWF0ZSBpbmRleGVzIGZvciBhbGwgY29sdW1ucyB3aXRoIHRoZSBpbmRleCBhcmd1bWVudFxuICAgICAgZm9yIChjb25zdCBjb2x1bW4gb2YgdGFibGVEYXRhLmdldENvbHVtbnMoKSkge1xuICAgICAgICBpZiAoIWNvbHVtbi5nZXRJbmRleCgpKSBjb250aW51ZVxuXG4gICAgICAgIGNvbnN0IHt1bmlxdWUsIC4uLnJlc3RJbmRleEFyZ3N9ID0gY29sdW1uLmdldEluZGV4QXJncygpXG5cbiAgICAgICAgcmVzdEFyZ3NFcnJvcihyZXN0SW5kZXhBcmdzKVxuXG4gICAgICAgIGxldCBpbmRleE5hbWUgPSBgaW5kZXhfb25fYFxuXG4gICAgICAgIGlmIChkYXRhYmFzZVR5cGUgPT0gXCJzcWxpdGVcIikgaW5kZXhOYW1lICs9IGAke3RhYmxlRGF0YS5nZXROYW1lKCl9X2BcblxuICAgICAgICBpbmRleE5hbWUgKz0gY29sdW1uLmdldE5hbWUoKVxuXG4gICAgICAgIGNvbnN0IGNyZWF0ZUluZGV4QXJncyA9IHtcbiAgICAgICAgICBjb2x1bW5zOiBbY29sdW1uLmdldE5hbWUoKV0sXG4gICAgICAgICAgZHJpdmVyOiB0aGlzLmdldERyaXZlcigpLFxuICAgICAgICAgIG5hbWU6IGluZGV4TmFtZSxcbiAgICAgICAgICB0YWJsZU5hbWU6IHRhYmxlRGF0YS5nZXROYW1lKCksXG4gICAgICAgICAgdW5pcXVlXG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgY3JlYXRlSW5kZXhTUUxzID0gYXdhaXQgbmV3IENyZWF0ZUluZGV4QmFzZShjcmVhdGVJbmRleEFyZ3MpLnRvU1FMcygpXG5cbiAgICAgICAgZm9yIChjb25zdCBjcmVhdGVJbmRleFNRTCBvZiBjcmVhdGVJbmRleFNRTHMpIHtcbiAgICAgICAgICBzcWxzLnB1c2goY3JlYXRlSW5kZXhTUUwpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gc3Fsc1xuICB9XG59XG4iXX0=
@@ -17,7 +17,7 @@ export default class VelociousDatabaseQueryDropTableBase extends QueryBase {
17
17
  this.tableName = tableName;
18
18
  }
19
19
  /**
20
- * @returns {Promise<string[]>}
20
+ * @returns {Promise<string[]>} - Result.
21
21
  */
22
22
  async toSQLs() {
23
23
  const databaseType = this.getDatabaseType();
@@ -42,4 +42,4 @@ export default class VelociousDatabaseQueryDropTableBase extends QueryBase {
42
42
  return sqls;
43
43
  }
44
44
  }
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcC10YWJsZS1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2RhdGFiYXNlL3F1ZXJ5L2Ryb3AtdGFibGUtYmFzZS5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxZQUFZO0FBRVosT0FBTyxTQUFTLE1BQU0sV0FBVyxDQUFBO0FBQ2pDLE9BQU8sYUFBYSxNQUFNLGdDQUFnQyxDQUFBO0FBRTFELE1BQU0sQ0FBQyxPQUFPLE9BQU8sbUNBQW9DLFNBQVEsU0FBUztJQUN4RTs7Ozs7O09BTUc7SUFDSCxZQUFZLEVBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLEdBQUcsUUFBUSxFQUFDO1FBQzdELEtBQUssQ0FBQyxFQUFDLE1BQU0sRUFBQyxDQUFDLENBQUE7UUFFZixhQUFhLENBQUMsUUFBUSxDQUFDLENBQUE7UUFFdkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUE7UUFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUE7UUFDeEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUE7SUFDNUIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsS0FBSyxDQUFDLE1BQU07UUFDVixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUE7UUFDM0MsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFBO1FBQ2pDLE1BQU0sRUFBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBQyxHQUFHLElBQUksQ0FBQTtRQUMzQyxNQUFNLElBQUksR0FBRyxFQUFFLENBQUE7UUFDZixJQUFJLEdBQUcsR0FBRyxFQUFFLENBQUE7UUFFWixJQUFJLFlBQVksSUFBSSxPQUFPLElBQUksUUFBUSxFQUFFLENBQUM7WUFDeEMsR0FBRyxJQUFJLHVEQUF1RCxPQUFPLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyw0QkFBNEIsQ0FBQTtRQUNwSCxDQUFDO1FBRUQsR0FBRyxJQUFJLFlBQVksQ0FBQTtRQUVuQixJQUFJLFlBQVksSUFBSSxPQUFPLElBQUksUUFBUTtZQUFFLEdBQUcsSUFBSSxZQUFZLENBQUE7UUFFNUQsR0FBRyxJQUFJLElBQUksT0FBTyxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFBO1FBRTlDLElBQUksT0FBTyxJQUFJLFlBQVksSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUN2QyxHQUFHLElBQUksVUFBVSxDQUFBO1FBQ25CLENBQUM7UUFFRCxJQUFJLFlBQVksSUFBSSxPQUFPLElBQUksUUFBUSxFQUFFLENBQUM7WUFDeEMsR0FBRyxJQUFJLE1BQU0sQ0FBQTtRQUNmLENBQUM7UUFFRCxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBRWQsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtY2hlY2tcblxuaW1wb3J0IFF1ZXJ5QmFzZSBmcm9tIFwiLi9iYXNlLmpzXCJcbmltcG9ydCByZXN0QXJnc0Vycm9yIGZyb20gXCIuLi8uLi91dGlscy9yZXN0LWFyZ3MtZXJyb3IuanNcIlxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBWZWxvY2lvdXNEYXRhYmFzZVF1ZXJ5RHJvcFRhYmxlQmFzZSBleHRlbmRzIFF1ZXJ5QmFzZSB7XG4gIC8qKlxuICAgKiBAcGFyYW0ge29iamVjdH0gYXJnc1xuICAgKiBAcGFyYW0ge2Jvb2xlYW59IFthcmdzLmNhc2NhZGVdXG4gICAqIEBwYXJhbSB7aW1wb3J0KFwiLi8uLi9kcml2ZXJzL2Jhc2UuanNcIikuZGVmYXVsdH0gYXJncy5kcml2ZXJcbiAgICogQHBhcmFtIHtib29sZWFufSBbYXJncy5pZkV4aXN0c11cbiAgICogQHBhcmFtIHtzdHJpbmd9IGFyZ3MudGFibGVOYW1lXG4gICAqL1xuICBjb25zdHJ1Y3Rvcih7Y2FzY2FkZSwgZHJpdmVyLCBpZkV4aXN0cywgdGFibGVOYW1lLCAuLi5yZXN0QXJnc30pIHtcbiAgICBzdXBlcih7ZHJpdmVyfSlcblxuICAgIHJlc3RBcmdzRXJyb3IocmVzdEFyZ3MpXG5cbiAgICB0aGlzLmNhc2NhZGUgPSBjYXNjYWRlXG4gICAgdGhpcy5pZkV4aXN0cyA9IGlmRXhpc3RzXG4gICAgdGhpcy50YWJsZU5hbWUgPSB0YWJsZU5hbWVcbiAgfVxuXG4gIC8qKlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxzdHJpbmdbXT59XG4gICAqL1xuICBhc3luYyB0b1NRTHMoKSB7XG4gICAgY29uc3QgZGF0YWJhc2VUeXBlID0gdGhpcy5nZXREYXRhYmFzZVR5cGUoKVxuICAgIGNvbnN0IG9wdGlvbnMgPSB0aGlzLmdldE9wdGlvbnMoKVxuICAgIGNvbnN0IHtjYXNjYWRlLCBpZkV4aXN0cywgdGFibGVOYW1lfSA9IHRoaXNcbiAgICBjb25zdCBzcWxzID0gW11cbiAgICBsZXQgc3FsID0gXCJcIlxuXG4gICAgaWYgKGRhdGFiYXNlVHlwZSA9PSBcIm1zc3FsXCIgJiYgaWZFeGlzdHMpIHtcbiAgICAgIHNxbCArPSBgSUYgRVhJU1RTKFNFTEVDVCAqIEZST00gW3N5c29iamVjdHNdIFdIRVJFIFtuYW1lXSA9ICR7b3B0aW9ucy5xdW90ZSh0YWJsZU5hbWUpfSBBTkQgW3h0eXBlXSA9ICdVJykgQkVHSU4gYFxuICAgIH1cblxuICAgIHNxbCArPSBcIkRST1AgVEFCTEVcIlxuXG4gICAgaWYgKGRhdGFiYXNlVHlwZSAhPSBcIm1zc3FsXCIgJiYgaWZFeGlzdHMpIHNxbCArPSBcIiBJRiBFWElTVFNcIlxuXG4gICAgc3FsICs9IGAgJHtvcHRpb25zLnF1b3RlVGFibGVOYW1lKHRhYmxlTmFtZSl9YFxuXG4gICAgaWYgKGNhc2NhZGUgJiYgZGF0YWJhc2VUeXBlID09IFwicGdzcWxcIikge1xuICAgICAgc3FsICs9IFwiIGNhc2NhZGVcIlxuICAgIH1cblxuICAgIGlmIChkYXRhYmFzZVR5cGUgPT0gXCJtc3NxbFwiICYmIGlmRXhpc3RzKSB7XG4gICAgICBzcWwgKz0gXCIgRU5EXCJcbiAgICB9XG5cbiAgICBzcWxzLnB1c2goc3FsKVxuXG4gICAgcmV0dXJuIHNxbHNcbiAgfVxufVxuIl19
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcC10YWJsZS1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2RhdGFiYXNlL3F1ZXJ5L2Ryb3AtdGFibGUtYmFzZS5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxZQUFZO0FBRVosT0FBTyxTQUFTLE1BQU0sV0FBVyxDQUFBO0FBQ2pDLE9BQU8sYUFBYSxNQUFNLGdDQUFnQyxDQUFBO0FBRTFELE1BQU0sQ0FBQyxPQUFPLE9BQU8sbUNBQW9DLFNBQVEsU0FBUztJQUN4RTs7Ozs7O09BTUc7SUFDSCxZQUFZLEVBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLEdBQUcsUUFBUSxFQUFDO1FBQzdELEtBQUssQ0FBQyxFQUFDLE1BQU0sRUFBQyxDQUFDLENBQUE7UUFFZixhQUFhLENBQUMsUUFBUSxDQUFDLENBQUE7UUFFdkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUE7UUFDdEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUE7UUFDeEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUE7SUFDNUIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsS0FBSyxDQUFDLE1BQU07UUFDVixNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUE7UUFDM0MsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFBO1FBQ2pDLE1BQU0sRUFBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBQyxHQUFHLElBQUksQ0FBQTtRQUMzQyxNQUFNLElBQUksR0FBRyxFQUFFLENBQUE7UUFDZixJQUFJLEdBQUcsR0FBRyxFQUFFLENBQUE7UUFFWixJQUFJLFlBQVksSUFBSSxPQUFPLElBQUksUUFBUSxFQUFFLENBQUM7WUFDeEMsR0FBRyxJQUFJLHVEQUF1RCxPQUFPLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyw0QkFBNEIsQ0FBQTtRQUNwSCxDQUFDO1FBRUQsR0FBRyxJQUFJLFlBQVksQ0FBQTtRQUVuQixJQUFJLFlBQVksSUFBSSxPQUFPLElBQUksUUFBUTtZQUFFLEdBQUcsSUFBSSxZQUFZLENBQUE7UUFFNUQsR0FBRyxJQUFJLElBQUksT0FBTyxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFBO1FBRTlDLElBQUksT0FBTyxJQUFJLFlBQVksSUFBSSxPQUFPLEVBQUUsQ0FBQztZQUN2QyxHQUFHLElBQUksVUFBVSxDQUFBO1FBQ25CLENBQUM7UUFFRCxJQUFJLFlBQVksSUFBSSxPQUFPLElBQUksUUFBUSxFQUFFLENBQUM7WUFDeEMsR0FBRyxJQUFJLE1BQU0sQ0FBQTtRQUNmLENBQUM7UUFFRCxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBRWQsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtY2hlY2tcblxuaW1wb3J0IFF1ZXJ5QmFzZSBmcm9tIFwiLi9iYXNlLmpzXCJcbmltcG9ydCByZXN0QXJnc0Vycm9yIGZyb20gXCIuLi8uLi91dGlscy9yZXN0LWFyZ3MtZXJyb3IuanNcIlxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBWZWxvY2lvdXNEYXRhYmFzZVF1ZXJ5RHJvcFRhYmxlQmFzZSBleHRlbmRzIFF1ZXJ5QmFzZSB7XG4gIC8qKlxuICAgKiBAcGFyYW0ge29iamVjdH0gYXJnc1xuICAgKiBAcGFyYW0ge2Jvb2xlYW59IFthcmdzLmNhc2NhZGVdXG4gICAqIEBwYXJhbSB7aW1wb3J0KFwiLi8uLi9kcml2ZXJzL2Jhc2UuanNcIikuZGVmYXVsdH0gYXJncy5kcml2ZXJcbiAgICogQHBhcmFtIHtib29sZWFufSBbYXJncy5pZkV4aXN0c11cbiAgICogQHBhcmFtIHtzdHJpbmd9IGFyZ3MudGFibGVOYW1lXG4gICAqL1xuICBjb25zdHJ1Y3Rvcih7Y2FzY2FkZSwgZHJpdmVyLCBpZkV4aXN0cywgdGFibGVOYW1lLCAuLi5yZXN0QXJnc30pIHtcbiAgICBzdXBlcih7ZHJpdmVyfSlcblxuICAgIHJlc3RBcmdzRXJyb3IocmVzdEFyZ3MpXG5cbiAgICB0aGlzLmNhc2NhZGUgPSBjYXNjYWRlXG4gICAgdGhpcy5pZkV4aXN0cyA9IGlmRXhpc3RzXG4gICAgdGhpcy50YWJsZU5hbWUgPSB0YWJsZU5hbWVcbiAgfVxuXG4gIC8qKlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxzdHJpbmdbXT59IC0gUmVzdWx0LlxuICAgKi9cbiAgYXN5bmMgdG9TUUxzKCkge1xuICAgIGNvbnN0IGRhdGFiYXNlVHlwZSA9IHRoaXMuZ2V0RGF0YWJhc2VUeXBlKClcbiAgICBjb25zdCBvcHRpb25zID0gdGhpcy5nZXRPcHRpb25zKClcbiAgICBjb25zdCB7Y2FzY2FkZSwgaWZFeGlzdHMsIHRhYmxlTmFtZX0gPSB0aGlzXG4gICAgY29uc3Qgc3FscyA9IFtdXG4gICAgbGV0IHNxbCA9IFwiXCJcblxuICAgIGlmIChkYXRhYmFzZVR5cGUgPT0gXCJtc3NxbFwiICYmIGlmRXhpc3RzKSB7XG4gICAgICBzcWwgKz0gYElGIEVYSVNUUyhTRUxFQ1QgKiBGUk9NIFtzeXNvYmplY3RzXSBXSEVSRSBbbmFtZV0gPSAke29wdGlvbnMucXVvdGUodGFibGVOYW1lKX0gQU5EIFt4dHlwZV0gPSAnVScpIEJFR0lOIGBcbiAgICB9XG5cbiAgICBzcWwgKz0gXCJEUk9QIFRBQkxFXCJcblxuICAgIGlmIChkYXRhYmFzZVR5cGUgIT0gXCJtc3NxbFwiICYmIGlmRXhpc3RzKSBzcWwgKz0gXCIgSUYgRVhJU1RTXCJcblxuICAgIHNxbCArPSBgICR7b3B0aW9ucy5xdW90ZVRhYmxlTmFtZSh0YWJsZU5hbWUpfWBcblxuICAgIGlmIChjYXNjYWRlICYmIGRhdGFiYXNlVHlwZSA9PSBcInBnc3FsXCIpIHtcbiAgICAgIHNxbCArPSBcIiBjYXNjYWRlXCJcbiAgICB9XG5cbiAgICBpZiAoZGF0YWJhc2VUeXBlID09IFwibXNzcWxcIiAmJiBpZkV4aXN0cykge1xuICAgICAgc3FsICs9IFwiIEVORFwiXG4gICAgfVxuXG4gICAgc3Fscy5wdXNoKHNxbClcblxuICAgIHJldHVybiBzcWxzXG4gIH1cbn1cbiJdfQ==
@@ -3,16 +3,16 @@ export default class VelociousDatabaseQueryFromBase {
3
3
  query: import("./index.js").default | null;
4
4
  /**
5
5
  * @param {import("./index.js").default} query
6
- * @returns {void}
6
+ * @returns {void} - Result.
7
7
  */
8
8
  setQuery(query: import("./index.js").default): void;
9
9
  /**
10
- * @returns {import("../query-parser/options.js").default}
10
+ * @returns {import("../query-parser/options.js").default} - Result.
11
11
  */
12
12
  getOptions(): import("../query-parser/options.js").default;
13
13
  /**
14
14
  * @abstract
15
- * @returns {string[]}
15
+ * @returns {string[]} - Result.
16
16
  */
17
17
  toSql(): string[];
18
18
  }
@@ -4,13 +4,13 @@ export default class VelociousDatabaseQueryFromBase {
4
4
  query = null;
5
5
  /**
6
6
  * @param {import("./index.js").default} query
7
- * @returns {void}
7
+ * @returns {void} - Result.
8
8
  */
9
9
  setQuery(query) {
10
10
  this.query = query;
11
11
  }
12
12
  /**
13
- * @returns {import("../query-parser/options.js").default}
13
+ * @returns {import("../query-parser/options.js").default} - Result.
14
14
  */
15
15
  getOptions() {
16
16
  if (!this.query)
@@ -19,10 +19,10 @@ export default class VelociousDatabaseQueryFromBase {
19
19
  }
20
20
  /**
21
21
  * @abstract
22
- * @returns {string[]}
22
+ * @returns {string[]} - Result.
23
23
  */
24
24
  toSql() {
25
25
  throw new Error("'toSql' wasn't implemented");
26
26
  }
27
27
  }
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbS1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2RhdGFiYXNlL3F1ZXJ5L2Zyb20tYmFzZS5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxZQUFZO0FBRVosTUFBTSxDQUFDLE9BQU8sT0FBTyw4QkFBOEI7SUFDakQsbURBQW1EO0lBQ25ELEtBQUssR0FBRyxJQUFJLENBQUE7SUFFWjs7O09BR0c7SUFDSCxRQUFRLENBQUMsS0FBSztRQUNaLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFBO0lBQ3BCLENBQUM7SUFFRDs7T0FFRztJQUNILFVBQVU7UUFDUixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUs7WUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUE7UUFFM0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFBO0lBQ2hDLENBQUM7SUFFRDs7O09BR0c7SUFDSCxLQUFLO1FBQ0gsTUFBTSxJQUFJLEtBQUssQ0FBQyw0QkFBNEIsQ0FBQyxDQUFBO0lBQy9DLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8vIEB0cy1jaGVja1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBWZWxvY2lvdXNEYXRhYmFzZVF1ZXJ5RnJvbUJhc2Uge1xuICAvKiogQHR5cGUge2ltcG9ydChcIi4vaW5kZXguanNcIikuZGVmYXVsdCAgfCBudWxsfSAqL1xuICBxdWVyeSA9IG51bGxcblxuICAvKipcbiAgICogQHBhcmFtIHtpbXBvcnQoXCIuL2luZGV4LmpzXCIpLmRlZmF1bHR9IHF1ZXJ5XG4gICAqIEByZXR1cm5zIHt2b2lkfVxuICAgKi9cbiAgc2V0UXVlcnkocXVlcnkpIHtcbiAgICB0aGlzLnF1ZXJ5ID0gcXVlcnlcbiAgfVxuXG4gIC8qKlxuICAgKiBAcmV0dXJucyB7aW1wb3J0KFwiLi4vcXVlcnktcGFyc2VyL29wdGlvbnMuanNcIikuZGVmYXVsdH1cbiAgICovXG4gIGdldE9wdGlvbnMoKSB7XG4gICAgaWYgKCF0aGlzLnF1ZXJ5KSB0aHJvdyBuZXcgRXJyb3IoXCIncXVlcnknIGhhc24ndCBiZWVuIHNldFwiKVxuXG4gICAgcmV0dXJuIHRoaXMucXVlcnkuZ2V0T3B0aW9ucygpXG4gIH1cblxuICAvKipcbiAgICogQGFic3RyYWN0XG4gICAqIEByZXR1cm5zIHtzdHJpbmdbXX1cbiAgICovXG4gIHRvU3FsKCkge1xuICAgIHRocm93IG5ldyBFcnJvcihcIid0b1NxbCcgd2Fzbid0IGltcGxlbWVudGVkXCIpXG4gIH1cbn1cbiJdfQ==
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJvbS1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2RhdGFiYXNlL3F1ZXJ5L2Zyb20tYmFzZS5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxZQUFZO0FBRVosTUFBTSxDQUFDLE9BQU8sT0FBTyw4QkFBOEI7SUFDakQsbURBQW1EO0lBQ25ELEtBQUssR0FBRyxJQUFJLENBQUE7SUFFWjs7O09BR0c7SUFDSCxRQUFRLENBQUMsS0FBSztRQUNaLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFBO0lBQ3BCLENBQUM7SUFFRDs7T0FFRztJQUNILFVBQVU7UUFDUixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUs7WUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUE7UUFFM0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFBO0lBQ2hDLENBQUM7SUFFRDs7O09BR0c7SUFDSCxLQUFLO1FBQ0gsTUFBTSxJQUFJLEtBQUssQ0FBQyw0QkFBNEIsQ0FBQyxDQUFBO0lBQy9DLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8vIEB0cy1jaGVja1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBWZWxvY2lvdXNEYXRhYmFzZVF1ZXJ5RnJvbUJhc2Uge1xuICAvKiogQHR5cGUge2ltcG9ydChcIi4vaW5kZXguanNcIikuZGVmYXVsdCAgfCBudWxsfSAqL1xuICBxdWVyeSA9IG51bGxcblxuICAvKipcbiAgICogQHBhcmFtIHtpbXBvcnQoXCIuL2luZGV4LmpzXCIpLmRlZmF1bHR9IHF1ZXJ5XG4gICAqIEByZXR1cm5zIHt2b2lkfSAtIFJlc3VsdC5cbiAgICovXG4gIHNldFF1ZXJ5KHF1ZXJ5KSB7XG4gICAgdGhpcy5xdWVyeSA9IHF1ZXJ5XG4gIH1cblxuICAvKipcbiAgICogQHJldHVybnMge2ltcG9ydChcIi4uL3F1ZXJ5LXBhcnNlci9vcHRpb25zLmpzXCIpLmRlZmF1bHR9IC0gUmVzdWx0LlxuICAgKi9cbiAgZ2V0T3B0aW9ucygpIHtcbiAgICBpZiAoIXRoaXMucXVlcnkpIHRocm93IG5ldyBFcnJvcihcIidxdWVyeScgaGFzbid0IGJlZW4gc2V0XCIpXG5cbiAgICByZXR1cm4gdGhpcy5xdWVyeS5nZXRPcHRpb25zKClcbiAgfVxuXG4gIC8qKlxuICAgKiBAYWJzdHJhY3RcbiAgICogQHJldHVybnMge3N0cmluZ1tdfSAtIFJlc3VsdC5cbiAgICovXG4gIHRvU3FsKCkge1xuICAgIHRocm93IG5ldyBFcnJvcihcIid0b1NxbCcgd2Fzbid0IGltcGxlbWVudGVkXCIpXG4gIH1cbn1cbiJdfQ==
@@ -42,73 +42,73 @@ export default class VelociousDatabaseQuery {
42
42
  _selects: SelectBase[];
43
43
  /** @type {import("./where-base.js").default[]} */
44
44
  _wheres: import("./where-base.js").default[];
45
- /** @returns {this} */
45
+ /** @returns {this} - Result. */
46
46
  clone(): this;
47
- /** @returns {import("./from-base.js").default[]} */
47
+ /** @returns {import("./from-base.js").default[]} - Result. */
48
48
  getFroms(): import("./from-base.js").default[];
49
- /** @returns {string[]} */
49
+ /** @returns {string[]} - Result. */
50
50
  getGroups(): string[];
51
- /** @returns {import("../query-parser/options.js").default} */
51
+ /** @returns {import("../query-parser/options.js").default} - Result. */
52
52
  getOptions(): import("../query-parser/options.js").default;
53
- /** @returns {Array<import("./select-base.js").default>} */
53
+ /** @returns {Array<import("./select-base.js").default>} - Result. */
54
54
  getSelects(): Array<import("./select-base.js").default>;
55
55
  /**
56
56
  * @param {string|import("./from-base.js").default} from
57
- * @returns {this}
57
+ * @returns {this} - Result.
58
58
  */
59
59
  from(from: string | import("./from-base.js").default): this;
60
60
  /**
61
61
  * @param {string} group
62
- * @returns {this}
62
+ * @returns {this} - Result.
63
63
  */
64
64
  group(group: string): this;
65
65
  /**
66
66
  * @param {string|{[key: string]: any}} join
67
- * @returns {this}
67
+ * @returns {this} - Result.
68
68
  */
69
69
  joins(join: string | {
70
70
  [key: string]: any;
71
71
  }): this;
72
72
  /**
73
73
  * @param {number} value
74
- * @returns {this}
74
+ * @returns {this} - Result.
75
75
  */
76
76
  limit(value: number): this;
77
77
  /**
78
78
  * @param {number} value
79
- * @returns {this}
79
+ * @returns {this} - Result.
80
80
  */
81
81
  offset(value: number): this;
82
82
  /**
83
83
  * @param {string | number} order
84
- * @returns {this}
84
+ * @returns {this} - Result.
85
85
  */
86
86
  order(order: string | number): this;
87
87
  /**
88
88
  * @param {number} pageNumber
89
- * @returns {this}
89
+ * @returns {this} - Result.
90
90
  */
91
91
  page(pageNumber: number): this;
92
92
  /**
93
93
  * @param {number} perPage
94
- * @returns {this}
94
+ * @returns {this} - Result.
95
95
  */
96
96
  perPage(perPage: number): this;
97
97
  /**
98
98
  * @param {string | number} order
99
- * @returns {this}
99
+ * @returns {this} - Result.
100
100
  */
101
101
  reorder(order: string | number): this;
102
- /** @returns {this} */
102
+ /** @returns {this} - Result. */
103
103
  reverseOrder(): this;
104
104
  /**
105
105
  * @param {boolean} [value]
106
- * @returns {this}
106
+ * @returns {this} - Result.
107
107
  */
108
108
  distinct(value?: boolean): this;
109
109
  /**
110
110
  * @param {SelectArgumentType} select
111
- * @returns {this}
111
+ * @returns {this} - Result.
112
112
  */
113
113
  select(select: SelectArgumentType): this;
114
114
  /**
@@ -129,7 +129,7 @@ export default class VelociousDatabaseQuery {
129
129
  where(where: WhereArgumentType): this;
130
130
  /**
131
131
  * Resolves the current driver lazily.
132
- * @returns {import("../drivers/base.js").default}
132
+ * @returns {import("../drivers/base.js").default} - Result.
133
133
  */
134
134
  get driver(): import("../drivers/base.js").default;
135
135
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/database/query/index.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/database/query/index.js"],"names":[],"mappings":"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"}
@@ -58,7 +58,7 @@ export default class VelociousDatabaseQuery {
58
58
  /** @type {import("./where-base.js").default[]} */
59
59
  this._wheres = wheres;
60
60
  }
61
- /** @returns {this} */
61
+ /** @returns {this} - Result. */
62
62
  clone() {
63
63
  const QueryClass = /** @type {new (args: QueryArgsType) => this} */ (this.constructor);
64
64
  const newQuery = new QueryClass({
@@ -79,21 +79,21 @@ export default class VelociousDatabaseQuery {
79
79
  });
80
80
  return newQuery;
81
81
  }
82
- /** @returns {import("./from-base.js").default[]} */
82
+ /** @returns {import("./from-base.js").default[]} - Result. */
83
83
  getFroms() {
84
84
  return this._froms;
85
85
  }
86
- /** @returns {string[]} */
86
+ /** @returns {string[]} - Result. */
87
87
  getGroups() {
88
88
  return this._groups;
89
89
  }
90
- /** @returns {import("../query-parser/options.js").default} */
90
+ /** @returns {import("../query-parser/options.js").default} - Result. */
91
91
  getOptions() { return this.driver.options(); }
92
- /** @returns {Array<import("./select-base.js").default>} */
92
+ /** @returns {Array<import("./select-base.js").default>} - Result. */
93
93
  getSelects() { return this._selects; }
94
94
  /**
95
95
  * @param {string|import("./from-base.js").default} from
96
- * @returns {this}
96
+ * @returns {this} - Result.
97
97
  */
98
98
  from(from) {
99
99
  if (typeof from == "string")
@@ -103,7 +103,7 @@ export default class VelociousDatabaseQuery {
103
103
  }
104
104
  /**
105
105
  * @param {string} group
106
- * @returns {this}
106
+ * @returns {this} - Result.
107
107
  */
108
108
  group(group) {
109
109
  this._groups.push(group);
@@ -111,7 +111,7 @@ export default class VelociousDatabaseQuery {
111
111
  }
112
112
  /**
113
113
  * @param {string|{[key: string]: any}} join
114
- * @returns {this}
114
+ * @returns {this} - Result.
115
115
  */
116
116
  joins(join) {
117
117
  if (typeof join == "string") {
@@ -127,7 +127,7 @@ export default class VelociousDatabaseQuery {
127
127
  }
128
128
  /**
129
129
  * @param {number} value
130
- * @returns {this}
130
+ * @returns {this} - Result.
131
131
  */
132
132
  limit(value) {
133
133
  this._limit = value;
@@ -135,7 +135,7 @@ export default class VelociousDatabaseQuery {
135
135
  }
136
136
  /**
137
137
  * @param {number} value
138
- * @returns {this}
138
+ * @returns {this} - Result.
139
139
  */
140
140
  offset(value) {
141
141
  this._offset = value;
@@ -143,7 +143,7 @@ export default class VelociousDatabaseQuery {
143
143
  }
144
144
  /**
145
145
  * @param {string | number} order
146
- * @returns {this}
146
+ * @returns {this} - Result.
147
147
  */
148
148
  order(order) {
149
149
  if (typeof order == "string") {
@@ -159,7 +159,7 @@ export default class VelociousDatabaseQuery {
159
159
  }
160
160
  /**
161
161
  * @param {number} pageNumber
162
- * @returns {this}
162
+ * @returns {this} - Result.
163
163
  */
164
164
  page(pageNumber) {
165
165
  const perPage = this._perPage || 30;
@@ -172,7 +172,7 @@ export default class VelociousDatabaseQuery {
172
172
  }
173
173
  /**
174
174
  * @param {number} perPage
175
- * @returns {this}
175
+ * @returns {this} - Result.
176
176
  */
177
177
  perPage(perPage) {
178
178
  this._perPage = perPage;
@@ -180,14 +180,14 @@ export default class VelociousDatabaseQuery {
180
180
  }
181
181
  /**
182
182
  * @param {string | number} order
183
- * @returns {this}
183
+ * @returns {this} - Result.
184
184
  */
185
185
  reorder(order) {
186
186
  this._orders = [];
187
187
  this.order(order);
188
188
  return this;
189
189
  }
190
- /** @returns {this} */
190
+ /** @returns {this} - Result. */
191
191
  reverseOrder() {
192
192
  for (const order of this._orders) {
193
193
  order.setReverseOrder(true);
@@ -196,7 +196,7 @@ export default class VelociousDatabaseQuery {
196
196
  }
197
197
  /**
198
198
  * @param {boolean} [value]
199
- * @returns {this}
199
+ * @returns {this} - Result.
200
200
  */
201
201
  distinct(value = true) {
202
202
  this._distinct = value;
@@ -204,7 +204,7 @@ export default class VelociousDatabaseQuery {
204
204
  }
205
205
  /**
206
206
  * @param {SelectArgumentType} select
207
- * @returns {this}
207
+ * @returns {this} - Result.
208
208
  */
209
209
  select(select) {
210
210
  if (Array.isArray(select)) {
@@ -260,10 +260,10 @@ export default class VelociousDatabaseQuery {
260
260
  }
261
261
  /**
262
262
  * Resolves the current driver lazily.
263
- * @returns {import("../drivers/base.js").default}
263
+ * @returns {import("../drivers/base.js").default} - Result.
264
264
  */
265
265
  get driver() {
266
266
  return this._driverFn();
267
267
  }
268
268
  }
269
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZGF0YWJhc2UvcXVlcnkvaW5kZXguanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTtBQUVaLE9BQU8sU0FBUyxNQUFNLGlCQUFpQixDQUFBO0FBQ3ZDLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQTtBQUM3QyxPQUFPLFVBQVUsTUFBTSxrQkFBa0IsQ0FBQTtBQUN6QyxPQUFPLFNBQVMsTUFBTSxpQkFBaUIsQ0FBQTtBQUN2QyxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0saUJBQWlCLENBQUE7QUFDdEMsT0FBTyxVQUFVLE1BQU0sa0JBQWtCLENBQUE7QUFDekMsT0FBTyxVQUFVLE1BQU0sa0JBQWtCLENBQUE7QUFDekMsT0FBTyxXQUFXLE1BQU0sbUJBQW1CLENBQUE7QUFDM0MsT0FBTyxTQUFTLE1BQU0saUJBQWlCLENBQUE7QUFDdkMsT0FBTyxVQUFVLE1BQU0sa0JBQWtCLENBQUE7QUFFekM7Ozs7R0FJRztBQUVIOzs7Ozs7Ozs7Ozs7Ozs7O0dBZ0JHO0FBRUgsTUFBTSxDQUFDLE9BQU8sT0FBTyxzQkFBc0I7SUFDekM7O09BRUc7SUFDSCxZQUFZLEVBQ1YsTUFBTSxFQUNOLEtBQUssR0FBRyxFQUFFLEVBQ1YsTUFBTSxHQUFHLEVBQUUsRUFDWCxLQUFLLEdBQUcsRUFBRSxFQUNWLE9BQU8sRUFDUCxLQUFLLEdBQUcsSUFBSSxFQUNaLE1BQU0sR0FBRyxJQUFJLEVBQ2IsTUFBTSxHQUFHLEVBQUUsRUFDWCxJQUFJLEdBQUcsSUFBSSxFQUNYLE9BQU8sRUFDUCxPQUFPLEdBQUcsRUFBRSxFQUNaLFFBQVEsR0FBRyxLQUFLLEVBQ2hCLE9BQU8sR0FBRyxFQUFFLEVBQ1osTUFBTSxHQUFHLEVBQUUsRUFDWjtRQUNDLElBQUksQ0FBQyxNQUFNO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO1FBQ3hE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LENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8vIEB0cy1jaGVja1xuXG5pbXBvcnQgRnJvbVBsYWluIGZyb20gXCIuL2Zyb20tcGxhaW4uanNcIlxuaW1wb3J0IHtpc1BsYWluT2JqZWN0fSBmcm9tIFwiaXMtcGxhaW4tb2JqZWN0XCJcbmltcG9ydCBKb2luT2JqZWN0IGZyb20gXCIuL2pvaW4tb2JqZWN0LmpzXCJcbmltcG9ydCBKb2luUGxhaW4gZnJvbSBcIi4vam9pbi1wbGFpbi5qc1wiXG5pbXBvcnQge0xvZ2dlcn0gZnJvbSBcIi4uLy4uL2xvZ2dlci5qc1wiXG5pbXBvcnQgT3JkZXJQbGFpbiBmcm9tIFwiLi9vcmRlci1wbGFpbi5qc1wiXG5pbXBvcnQgU2VsZWN0QmFzZSBmcm9tIFwiLi9zZWxlY3QtYmFzZS5qc1wiXG5pbXBvcnQgU2VsZWN0UGxhaW4gZnJvbSBcIi4vc2VsZWN0LXBsYWluLmpzXCJcbmltcG9ydCBXaGVyZUhhc2ggZnJvbSBcIi4vd2hlcmUtaGFzaC5qc1wiXG5pbXBvcnQgV2hlcmVQbGFpbiBmcm9tIFwiLi93aGVyZS1wbGFpbi5qc1wiXG5cbi8qKlxuICogQHR5cGVkZWYge3tba2V5OiBzdHJpbmddOiBib29sZWFuIHwgTmVzdGVkUHJlbG9hZFJlY29yZCB9fSBOZXN0ZWRQcmVsb2FkUmVjb3JkXG4gKiBAdHlwZWRlZiB7c3RyaW5nIHwgc3RyaW5nW10gfCBpbXBvcnQoXCIuL3NlbGVjdC1iYXNlLmpzXCIpLmRlZmF1bHQgfCBpbXBvcnQoXCIuL3NlbGVjdC1iYXNlLmpzXCIpLmRlZmF1bHRbXX0gU2VsZWN0QXJndW1lbnRUeXBlXG4gKiBAdHlwZWRlZiB7b2JqZWN0IHwgc3RyaW5nfSBXaGVyZUFyZ3VtZW50VHlwZVxuICovXG5cbi8qKlxuICogQHR5cGVkZWYge29iamVjdH0gUXVlcnlBcmdzVHlwZVxuICogQHByb3BlcnR5IHtpbXBvcnQoXCIuLi9kcml2ZXJzL2Jhc2UuanNcIikuZGVmYXVsdCB8ICgoKSA9PiBpbXBvcnQoXCIuLi9kcml2ZXJzL2Jhc2UuanNcIikuZGVmYXVsdCl9IGRyaXZlclxuICogQHByb3BlcnR5IHtBcnJheTxpbXBvcnQoXCIuL2Zyb20tYmFzZS5qc1wiKS5kZWZhdWx0Pn0gW2Zyb21zXVxuICogQHByb3BlcnR5IHtzdHJpbmdbXX0gW2dyb3Vwc11cbiAqIEBwcm9wZXJ0eSB7QXJyYXk8aW1wb3J0KFwiLi9qb2luLWJhc2UuanNcIikuZGVmYXVsdD59IFtqb2luc11cbiAqIEBwcm9wZXJ0eSB7aW1wb3J0KFwiLi4vaGFuZGxlci5qc1wiKS5kZWZhdWx0fSBoYW5kbGVyXG4gKiBAcHJvcGVydHkge251bWJlciB8IG51bGx9IFtsaW1pdF1cbiAqIEBwcm9wZXJ0eSB7bnVtYmVyIHwgbnVsbH0gW29mZnNldF1cbiAqIEBwcm9wZXJ0eSB7QXJyYXk8aW1wb3J0KFwiLi9vcmRlci1iYXNlLmpzXCIpLmRlZmF1bHQ+fSBbb3JkZXJzXVxuICogQHByb3BlcnR5IHtudW1iZXIgfCBudWxsfSBbcGFnZV1cbiAqIEBwcm9wZXJ0eSB7bnVtYmVyfSBbcGVyUGFnZV1cbiAqIEBwcm9wZXJ0eSB7TmVzdGVkUHJlbG9hZFJlY29yZH0gW3ByZWxvYWRdXG4gKiBAcHJvcGVydHkge0FycmF5PGltcG9ydChcIi4vc2VsZWN0LWJhc2UuanNcIikuZGVmYXVsdD59IFtzZWxlY3RzXVxuICogQHByb3BlcnR5IHtib29sZWFufSBbZGlzdGluY3RdXG4gKiBAcHJvcGVydHkge0FycmF5PGltcG9ydChcIi4vd2hlcmUtYmFzZS5qc1wiKS5kZWZhdWx0Pn0gW3doZXJlc11cbiAqL1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBWZWxvY2lvdXNEYXRhYmFzZVF1ZXJ5IHtcbiAgLyoqXG4gICAqIEBwYXJhbSB7UXVlcnlBcmdzVHlwZX0gYXJnc1xuICAgKi9cbiAgY29uc3RydWN0b3Ioe1xuICAgIGRyaXZlcixcbiAgICBmcm9tcyA9IFtdLFxuICAgIGdyb3VwcyA9IFtdLFxuICAgIGpvaW5zID0gW10sXG4gICAgaGFuZGxlcixcbiAgICBsaW1pdCA9IG51bGwsXG4gICAgb2Zmc2V0ID0gbnVsbCxcbiAgICBvcmRlcnMgPSBbXSxcbiAgICBwYWdlID0gbnVsbCxcbiAgICBwZXJQYWdlLFxuICAgIHByZWxvYWQgPSB7fSxcbiAgICBkaXN0aW5jdCA9IGZhbHNlLFxuICAgIHNlbGVjdHMgPSBbXSxcbiAgICB3aGVyZXMgPSBbXVxuICB9KSB7XG4gICAgaWYgKCFkcml2ZXIpIHRocm93IG5ldyBFcnJvcihcIk5vIGRyaXZlciBnaXZlbiB0byBxdWVyeVwiKVxuICAgIGlmICghaGFuZGxlcikgdGhyb3cgbmV3IEVycm9yKFwiTm8gaGFuZGxlciBnaXZlbiB0byBxdWVyeVwiKVxuXG4gICAgLyoqIEB0eXBlIHsoKSA9PiBpbXBvcnQoXCIuLi9kcml2ZXJzL2Jhc2UuanNcIikuZGVmYXVsdH0gKi9cbiAgICB0aGlzLl9kcml2ZXJGbiA9IHR5cGVvZiBkcml2ZXIgPT09IFwiZnVuY3Rpb25cIiA/IGRyaXZlciA6ICgpID0+IGRyaXZlclxuICAgIHRoaXMuaGFuZGxlciA9IGhhbmRsZXJcbiAgICB0aGlzLmxvZ2dlciA9IG5ldyBMb2dnZXIodGhpcylcbiAgICB0aGlzLl9mcm9tcyA9IGZyb21zXG4gICAgdGhpcy5fZ3JvdXBzID0gZ3JvdXBzXG4gICAgdGhpcy5fam9pbnMgPSBqb2luc1xuICAgIHRoaXMuX2xpbWl0ID0gbGltaXRcbiAgICB0aGlzLl9vZmZzZXQgPSBvZmZzZXRcbiAgICB0aGlzLl9vcmRlcnMgPSBvcmRlcnNcbiAgICB0aGlzLl9wYWdlID0gcGFnZVxuICAgIHRoaXMuX3BlclBhZ2UgPSBwZXJQYWdlXG4gICAgdGhpcy5fcHJlbG9hZCA9IHByZWxvYWRcbiAgICB0aGlzLl9kaXN0aW5jdCA9IGRpc3RpbmN0XG4gICAgdGhpcy5fc2VsZWN0cyA9IHNlbGVjdHNcblxuICAgIC8qKiBAdHlwZSB7aW1wb3J0KFwiLi93aGVyZS1iYXNlLmpzXCIpLmRlZmF1bHRbXX0gKi9cbiAgICB0aGlzLl93aGVyZXMgPSB3aGVyZXNcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7dGhpc30gKi9cbiAgY2xvbmUoKSB7XG4gICAgY29uc3QgUXVlcnlDbGFzcyA9IC8qKiBAdHlwZSB7bmV3IChhcmdzOiBRdWVyeUFyZ3NUeXBlKSA9PiB0aGlzfSAqLyAodGhpcy5jb25zdHJ1Y3RvcilcbiAgICBjb25zdCBuZXdRdWVyeSA9IG5ldyBRdWVyeUNsYXNzKHtcbiAgICAgIGRyaXZlcjogdGhpcy5fZHJpdmVyRm4sXG4gICAgICBmcm9tczogWy4uLnRoaXMuX2Zyb21zXSxcbiAgICAgIGhhbmRsZXI6IHRoaXMuaGFuZGxlci5jbG9uZSgpLFxuICAgICAgZ3JvdXBzOiBbLi4udGhpcy5fZ3JvdXBzXSxcbiAgICAgIGpvaW5zOiBbLi4udGhpcy5fam9pbnNdLFxuICAgICAgbGltaXQ6IHRoaXMuX2xpbWl0LFxuICAgICAgb2Zmc2V0OiB0aGlzLl9vZmZzZXQsXG4gICAgICBvcmRlcnM6IFsuLi50aGlzLl9vcmRlcnNdLFxuICAgICAgcGFnZTogdGhpcy5fcGFnZSxcbiAgICAgIHBlclBhZ2U6IHRoaXMuX3BlclBhZ2UsXG4gICAgICBwcmVsb2FkOiB7Li4udGhpcy5fcHJlbG9hZH0sXG4gICAgICBkaXN0aW5jdDogdGhpcy5fZGlzdGluY3QsXG4gICAgICBzZWxlY3RzOiBbLi4udGhpcy5fc2VsZWN0c10sXG4gICAgICB3aGVyZXM6IFsuLi50aGlzLl93aGVyZXNdXG4gICAgfSlcblxuICAgIHJldHVybiBuZXdRdWVyeVxuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtpbXBvcnQoXCIuL2Zyb20tYmFzZS5qc1wiKS5kZWZhdWx0W119ICovXG4gIGdldEZyb21zKCkge1xuICAgIHJldHVybiB0aGlzLl9mcm9tc1xuICB9XG5cbiAgLyoqIEByZXR1cm5zIHtzdHJpbmdbXX0gKi9cbiAgZ2V0R3JvdXBzKCkge1xuICAgIHJldHVybiB0aGlzLl9ncm91cHNcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7aW1wb3J0KFwiLi4vcXVlcnktcGFyc2VyL29wdGlvbnMuanNcIikuZGVmYXVsdH0gKi9cbiAgZ2V0T3B0aW9ucygpIHsgcmV0dXJuIHRoaXMuZHJpdmVyLm9wdGlvbnMoKSB9XG5cbiAgLyoqIEByZXR1cm5zIHtBcnJheTxpbXBvcnQoXCIuL3NlbGVjdC1iYXNlLmpzXCIpLmRlZmF1bHQ+fSAqL1xuICBnZXRTZWxlY3RzKCkgeyByZXR1cm4gdGhpcy5fc2VsZWN0cyB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7c3RyaW5nfGltcG9ydChcIi4vZnJvbS1iYXNlLmpzXCIpLmRlZmF1bHR9IGZyb21cbiAgICogQHJldHVybnMge3RoaXN9XG4gICAqL1xuICBmcm9tKGZyb20pIHtcbiAgICBpZiAodHlwZW9mIGZyb20gPT0gXCJzdHJpbmdcIikgZnJvbSA9IG5ldyBGcm9tUGxhaW4oZnJvbSlcblxuICAgIHRoaXMuX2Zyb21zLnB1c2goZnJvbSlcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBncm91cFxuICAgKiBAcmV0dXJucyB7dGhpc31cbiAgICovXG4gIGdyb3VwKGdyb3VwKSB7XG4gICAgdGhpcy5fZ3JvdXBzLnB1c2goZ3JvdXApXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge3N0cmluZ3x7W2tleTogc3RyaW5nXTogYW55fX0gam9pblxuICAgKiBAcmV0dXJucyB7dGhpc31cbiAgICovXG4gIGpvaW5zKGpvaW4pIHtcbiAgICBpZiAodHlwZW9mIGpvaW4gPT0gXCJzdHJpbmdcIikge1xuICAgICAgdGhpcy5fam9pbnMucHVzaChuZXcgSm9pblBsYWluKGpvaW4pKVxuICAgIH0gZWxzZSBpZiAoaXNQbGFpbk9iamVjdChqb2luKSkge1xuICAgICAgdGhpcy5fam9pbnMucHVzaChuZXcgSm9pbk9iamVjdChqb2luKSlcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIHR5cGUgb2Ygam9pbjogJHt0eXBlb2Ygam9pbn1gKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtudW1iZXJ9IHZhbHVlXG4gICAqIEByZXR1cm5zIHt0aGlzfVxuICAgKi9cbiAgbGltaXQodmFsdWUpIHtcbiAgICB0aGlzLl9saW1pdCA9IHZhbHVlXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge251bWJlcn0gdmFsdWVcbiAgICogQHJldHVybnMge3RoaXN9XG4gICAqL1xuICBvZmZzZXQodmFsdWUpIHtcbiAgICB0aGlzLl9vZmZzZXQgPSB2YWx1ZVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtzdHJpbmcgfCBudW1iZXJ9IG9yZGVyXG4gICAqIEByZXR1cm5zIHt0aGlzfVxuICAgKi9cbiAgb3JkZXIob3JkZXIpIHtcbiAgICBpZiAodHlwZW9mIG9yZGVyID09IFwic3RyaW5nXCIpIHtcbiAgICAgIHRoaXMuX29yZGVycy5wdXNoKG5ldyBPcmRlclBsYWluKHRoaXMsIG9yZGVyKSlcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiBvcmRlciA9PSBcIm51bWJlclwiKSB7XG4gICAgICB0aGlzLl9vcmRlcnMucHVzaChuZXcgT3JkZXJQbGFpbih0aGlzLCBgJHtvcmRlcn1gKSlcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIG9yZGVyIHR5cGU6ICR7dHlwZW9mIG9yZGVyfWApXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge251bWJlcn0gcGFnZU51bWJlclxuICAgKiBAcmV0dXJucyB7dGhpc31cbiAgICovXG4gIHBhZ2UocGFnZU51bWJlcikge1xuICAgIGNvbnN0IHBlclBhZ2UgPSB0aGlzLl9wZXJQYWdlIHx8IDMwXG4gICAgY29uc3Qgb2Zmc2V0ID0gKHBhZ2VOdW1iZXIgLSAxKSAqIHBlclBhZ2VcbiAgICBjb25zdCBsaW1pdCA9IHBlclBhZ2VcblxuICAgIHRoaXMuX3BhZ2UgPSBwYWdlTnVtYmVyXG4gICAgdGhpcy5saW1pdChsaW1pdClcbiAgICB0aGlzLm9mZnNldChvZmZzZXQpXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge251bWJlcn0gcGVyUGFnZVxuICAgKiBAcmV0dXJucyB7dGhpc31cbiAgICovXG4gIHBlclBhZ2UocGVyUGFnZSkge1xuICAgIHRoaXMuX3BlclBhZ2UgPSBwZXJQYWdlXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge3N0cmluZyB8IG51bWJlcn0gb3JkZXJcbiAgICogQHJldHVybnMge3RoaXN9XG4gICAqL1xuICByZW9yZGVyKG9yZGVyKSB7XG4gICAgdGhpcy5fb3JkZXJzID0gW11cbiAgICB0aGlzLm9yZGVyKG9yZGVyKVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKiogQHJldHVybnMge3RoaXN9ICovXG4gIHJldmVyc2VPcmRlcigpIHtcbiAgICBmb3IgKGNvbnN0IG9yZGVyIG9mIHRoaXMuX29yZGVycykge1xuICAgICAgb3JkZXIuc2V0UmV2ZXJzZU9yZGVyKHRydWUpXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IFt2YWx1ZV1cbiAgICogQHJldHVybnMge3RoaXN9XG4gICAqL1xuICBkaXN0aW5jdCh2YWx1ZSA9IHRydWUpIHtcbiAgICB0aGlzLl9kaXN0aW5jdCA9IHZhbHVlXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge1NlbGVjdEFyZ3VtZW50VHlwZX0gc2VsZWN0XG4gICAqIEByZXR1cm5zIHt0aGlzfVxuICAgKi9cbiAgc2VsZWN0KHNlbGVjdCkge1xuICAgIGlmIChBcnJheS5pc0FycmF5KHNlbGVjdCkpIHtcbiAgICAgIGZvciAoY29uc3Qgc2VsZWN0SW5BcnJheSBvZiBzZWxlY3QpIHtcbiAgICAgICAgdGhpcy5zZWxlY3Qoc2VsZWN0SW5BcnJheSlcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRoaXNcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIHNlbGVjdCA9PSBcInN0cmluZ1wiKSB7XG4gICAgICB0aGlzLl9zZWxlY3RzLnB1c2gobmV3IFNlbGVjdFBsYWluKHNlbGVjdCkpXG4gICAgfSBlbHNlIGlmIChzZWxlY3QgaW5zdGFuY2VvZiBTZWxlY3RCYXNlKSB7XG4gICAgICB0aGlzLl9zZWxlY3RzLnB1c2goc2VsZWN0KVxuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgc2VsZWN0IHR5cGU6ICR7dHlwZW9mIHNlbGVjdH1gKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogQHJldHVybnMge1Byb21pc2U8QXJyYXk8b2JqZWN0Pj59IEFycmF5IG9mIHJlc3VsdHMgZnJvbSB0aGUgZGF0YWJhc2VcbiAgICovXG4gIGFzeW5jIF9leGVjdXRlUXVlcnkoKSB7XG4gICAgY29uc3Qgc3FsID0gdGhpcy50b1NxbCgpXG4gICAgY29uc3QgcmVzdWx0cyA9IGF3YWl0IHRoaXMuZHJpdmVyLnF1ZXJ5KHNxbClcblxuICAgIHRoaXMubG9nZ2VyLmRlYnVnKCgpID0+IFtcIlNRTDpcIiwgc3FsXSlcblxuICAgIHJldHVybiByZXN1bHRzXG4gIH1cblxuICAvKiogQHJldHVybnMge1Byb21pc2U8QXJyYXk8b2JqZWN0Pj59IEFycmF5IG9mIHJlc3VsdHMgZnJvbSB0aGUgZGF0YWJhc2UgKi9cbiAgYXN5bmMgcmVzdWx0cygpIHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5fZXhlY3V0ZVF1ZXJ5KClcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZXMgU1FMIHN0cmluZyByZXByZXNlbnRpbmcgdGhpcyBxdWVyeVxuICAgKiBAcmV0dXJucyB7c3RyaW5nfSBTUUwgc3RyaW5nIHJlcHJlc2VudGluZyB0aGlzIHF1ZXJ5XG4gICAqL1xuICB0b1NxbCgpIHsgcmV0dXJuIHRoaXMuZHJpdmVyLnF1ZXJ5VG9TcWwodGhpcykgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge1doZXJlQXJndW1lbnRUeXBlfSB3aGVyZVxuICAgKiBAcmV0dXJucyB7dGhpc30gVGhpcyBxdWVyeSBpbnN0YW5jZVxuICAgKi9cbiAgd2hlcmUod2hlcmUpIHtcbiAgICBpZiAodHlwZW9mIHdoZXJlID09IFwic3RyaW5nXCIpIHtcbiAgICAgIHRoaXMuX3doZXJlcy5wdXNoKG5ldyBXaGVyZVBsYWluKHRoaXMsIHdoZXJlKSlcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiB3aGVyZSA9PSBcIm9iamVjdFwiICYmICh3aGVyZS5jb25zdHJ1Y3Rvci5uYW1lID09IFwib2JqZWN0XCIgfHwgd2hlcmUuY29uc3RydWN0b3IubmFtZSA9PSBcIk9iamVjdFwiKSkge1xuICAgICAgdGhpcy5fd2hlcmVzLnB1c2gobmV3IFdoZXJlSGFzaCh0aGlzLCB3aGVyZSkpXG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCB0eXBlIG9mIHdoZXJlOiAke3R5cGVvZiB3aGVyZX0gKCR7d2hlcmUuY29uc3RydWN0b3IubmFtZX0pYClcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc29sdmVzIHRoZSBjdXJyZW50IGRyaXZlciBsYXppbHkuXG4gICAqIEByZXR1cm5zIHtpbXBvcnQoXCIuLi9kcml2ZXJzL2Jhc2UuanNcIikuZGVmYXVsdH1cbiAgICovXG4gIGdldCBkcml2ZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2RyaXZlckZuKClcbiAgfVxufVxuIl19
269
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZGF0YWJhc2UvcXVlcnkvaW5kZXguanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTtBQUVaLE9BQU8sU0FBUyxNQUFNLGlCQUFpQixDQUFBO0FBQ3ZDLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQTtBQUM3QyxPQUFPLFVBQVUsTUFBTSxrQkFBa0IsQ0FBQTtBQUN6QyxPQUFPLFNBQVMsTUFBTSxpQkFBaUIsQ0FBQTtBQUN2QyxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0saUJBQWlCLENBQUE7QUFDdEMsT0FBTyxVQUFVLE1BQU0sa0JBQWtCLENBQUE7QUFDekMsT0FBTyxVQUFVLE1BQU0sa0JBQWtCLENBQUE7QUFDekMsT0FBTyxXQUFXLE1BQU0sbUJBQW1CLENBQUE7QUFDM0MsT0FBTyxTQUFTLE1BQU0saUJBQWlCLENBQUE7QUFDdkMsT0FBTyxVQUFVLE1BQU0sa0JBQWtCLENBQUE7QUFFekM7Ozs7R0FJRztBQUVIOzs7Ozs7Ozs7Ozs7Ozs7O0dBZ0JHO0FBRUgsTUFBTSxDQUFDLE9BQU8sT0FBTyxzQkFBc0I7SUFDekM7O09BRUc7SUFDSCxZQUFZLEVBQ1YsTUFBTSxFQUNOLEtBQUssR0FBRyxFQUFFLEVBQ1YsTUFBTSxHQUFHLEVBQUUsRUFDWCxLQUFLLEdBQUcsRUFBRSxFQUNWLE9BQU8sRUFDUCxLQUFLLEdBQUcsSUFBSSxFQUNaLE1BQU0sR0FBRyxJQUFJLEVBQ2IsTUFBTSxHQUFHLEVBQUUsRUFDWCxJQUFJLEdBQUcsSUFBSSxFQUNYLE9BQU8sRUFDUCxPQUFPLEdBQUcsRUFBRSxFQUNaLFFBQVEsR0FBRyxLQUFLLEVBQ2hCLE9BQU8sR0FBRyxFQUFFLEVBQ1osTUFBTSxHQUFHLEVBQUUsRUFDWjtRQUNDLElBQUksQ0FBQyxNQUFNO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQywwQkFBMEIsQ0FBQyxDQUFBO1FBQ3hELElBQUksQ0FBQyxPQUFPO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQywyQkFBMkIsQ0FBQyxDQUFBO1FBRTFELHlEQUF5RDtRQUN6RCxJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sTUFBTSxLQUFLLFVBQVUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUE7UUFDckUsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUE7UUFDdEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUM5QixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQTtRQUNuQixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQTtRQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQTtRQUNuQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQTtRQUNuQixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQTtRQUNyQixJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQTtRQUNyQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQTtRQUNqQixJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQTtRQUN2QixJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQTtRQUN2QixJQUFJLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQTtRQUN6QixJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQTtRQUV2QixrREFBa0Q7UUFDbEQsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUE7SUFDdkIsQ0FBQztJQUVELGlDQUFpQztJQUNqQyxLQUFLO1FBQ0gsTUFBTSxVQUFVLEdBQUcsZ0RBQWdELENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUE7UUFDdEYsTUFBTSxRQUFRLEdBQUcsSUFBSSxVQUFVLENBQUM7WUFDOUIsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3RCLEtBQUssRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztZQUN2QixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUU7WUFDN0IsTUFBTSxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1lBQ3pCLEtBQUssRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztZQUN2QixLQUFLLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDbEIsTUFBTSxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ3BCLE1BQU0sRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztZQUN6QixJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDaEIsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3RCLE9BQU8sRUFBRSxFQUFDLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBQztZQUMzQixRQUFRLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDeEIsT0FBTyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1lBQzNCLE1BQU0sRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztTQUMxQixDQUFDLENBQUE7UUFFRixPQUFPLFFBQVEsQ0FBQTtJQUNqQixDQUFDO0lBRUQsK0RBQStEO0lBQy9ELFFBQVE7UUFDTixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUE7SUFDcEIsQ0FBQztJQUVELHFDQUFxQztJQUNyQyxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFBO0lBQ3JCLENBQUM7SUFFRCx5RUFBeUU7SUFDekUsVUFBVSxLQUFLLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQSxDQUFDLENBQUM7SUFFN0Msc0VBQXNFO0lBQ3RFLFVBQVUsS0FBSyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUEsQ0FBQyxDQUFDO0lBRXJDOzs7T0FHRztJQUNILElBQUksQ0FBQyxJQUFJO1FBQ1AsSUFBSSxPQUFPLElBQUksSUFBSSxRQUFRO1lBQUUsSUFBSSxHQUFHLElBQUksU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFBO1FBRXZELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQ3RCLE9BQU8sSUFBSSxDQUFBO0lBQ2IsQ0FBQztJQUVEOzs7T0FHRztJQUNILEtBQUssQ0FBQyxLQUFLO1FBQ1QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDeEIsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsS0FBSyxDQUFDLElBQUk7UUFDUixJQUFJLE9BQU8sSUFBSSxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQzVCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUE7UUFDdkMsQ0FBQzthQUFNLElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDL0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQTtRQUN4QyxDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLE9BQU8sSUFBSSxFQUFFLENBQUMsQ0FBQTtRQUN6RCxDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsS0FBSyxDQUFDLEtBQUs7UUFDVCxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQTtRQUNuQixPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7SUFFRDs7O09BR0c7SUFDSCxNQUFNLENBQUMsS0FBSztRQUNWLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFBO1FBQ3BCLE9BQU8sSUFBSSxDQUFBO0lBQ2IsQ0FBQztJQUVEOzs7T0FHRztJQUNILEtBQUssQ0FBQyxLQUFLO1FBQ1QsSUFBSSxPQUFPLEtBQUssSUFBSSxRQUFRLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLFVBQVUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQTtRQUNoRCxDQUFDO2FBQU0sSUFBSSxPQUFPLEtBQUssSUFBSSxRQUFRLEVBQUUsQ0FBQztZQUNwQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLFVBQVUsQ0FBQyxJQUFJLEVBQUUsR0FBRyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUE7UUFDckQsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLElBQUksS0FBSyxDQUFDLHVCQUF1QixPQUFPLEtBQUssRUFBRSxDQUFDLENBQUE7UUFDeEQsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFBO0lBQ2IsQ0FBQztJQUVEOzs7T0FHRztJQUNILElBQUksQ0FBQyxVQUFVO1FBQ2IsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUE7UUFDbkMsTUFBTSxNQUFNLEdBQUcsQ0FBQyxVQUFVLEdBQUcsQ0FBQyxDQUFDLEdBQUcsT0FBTyxDQUFBO1FBQ3pDLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQTtRQUVyQixJQUFJLENBQUMsS0FBSyxHQUFHLFVBQVUsQ0FBQTtRQUN2QixJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ2pCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUE7UUFDbkIsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsT0FBTyxDQUFDLE9BQU87UUFDYixJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQTtRQUN2QixPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7SUFFRDs7O09BR0c7SUFDSCxPQUFPLENBQUMsS0FBSztRQUNYLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFBO1FBQ2pCLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDakIsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0lBRUQsaUNBQWlDO0lBQ2pDLFlBQVk7UUFDVixLQUFLLE1BQU0sS0FBSyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNqQyxLQUFLLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFBO1FBQzdCLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7SUFFRDs7O09BR0c7SUFDSCxRQUFRLENBQUMsS0FBSyxHQUFHLElBQUk7UUFDbkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUE7UUFDdEIsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsTUFBTSxDQUFDLE1BQU07UUFDWCxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUMxQixLQUFLLE1BQU0sYUFBYSxJQUFJLE1BQU0sRUFBRSxDQUFDO2dCQUNuQyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFBO1lBQzVCLENBQUM7WUFFRCxPQUFPLElBQUksQ0FBQTtRQUNiLENBQUM7UUFFRCxJQUFJLE9BQU8sTUFBTSxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQzlCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUE7UUFDN0MsQ0FBQzthQUFNLElBQUksTUFBTSxZQUFZLFVBQVUsRUFBRSxDQUFDO1lBQ3hDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO1FBQzVCLENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsT0FBTyxNQUFNLEVBQUUsQ0FBQyxDQUFBO1FBQzFELENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUssQ0FBQyxhQUFhO1FBQ2pCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQTtRQUN4QixNQUFNLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBRTVDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUE7UUFFdEMsT0FBTyxPQUFPLENBQUE7SUFDaEIsQ0FBQztJQUVELDJFQUEyRTtJQUMzRSxLQUFLLENBQUMsT0FBTztRQUNYLE9BQU8sTUFBTSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUE7SUFDbkMsQ0FBQztJQUVEOzs7T0FHRztJQUNILEtBQUssS0FBSyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFBLENBQUMsQ0FBQztJQUUvQzs7O09BR0c7SUFDSCxLQUFLLENBQUMsS0FBSztRQUNULElBQUksT0FBTyxLQUFLLElBQUksUUFBUSxFQUFFLENBQUM7WUFDN0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxVQUFVLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUE7UUFDaEQsQ0FBQzthQUFNLElBQUksT0FBTyxLQUFLLElBQUksUUFBUSxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxJQUFJLElBQUksUUFBUSxJQUFJLEtBQUssQ0FBQyxXQUFXLENBQUMsSUFBSSxJQUFJLFFBQVEsQ0FBQyxFQUFFLENBQUM7WUFDbEgsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxTQUFTLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUE7UUFDL0MsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLElBQUksS0FBSyxDQUFDLDBCQUEwQixPQUFPLEtBQUssS0FBSyxLQUFLLENBQUMsV0FBVyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUE7UUFDdkYsQ0FBQztRQUVELE9BQU8sSUFBSSxDQUFBO0lBQ2IsQ0FBQztJQUVEOzs7T0FHRztJQUNILElBQUksTUFBTTtRQUNSLE9BQU8sSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFBO0lBQ3pCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8vIEB0cy1jaGVja1xuXG5pbXBvcnQgRnJvbVBsYWluIGZyb20gXCIuL2Zyb20tcGxhaW4uanNcIlxuaW1wb3J0IHtpc1BsYWluT2JqZWN0fSBmcm9tIFwiaXMtcGxhaW4tb2JqZWN0XCJcbmltcG9ydCBKb2luT2JqZWN0IGZyb20gXCIuL2pvaW4tb2JqZWN0LmpzXCJcbmltcG9ydCBKb2luUGxhaW4gZnJvbSBcIi4vam9pbi1wbGFpbi5qc1wiXG5pbXBvcnQge0xvZ2dlcn0gZnJvbSBcIi4uLy4uL2xvZ2dlci5qc1wiXG5pbXBvcnQgT3JkZXJQbGFpbiBmcm9tIFwiLi9vcmRlci1wbGFpbi5qc1wiXG5pbXBvcnQgU2VsZWN0QmFzZSBmcm9tIFwiLi9zZWxlY3QtYmFzZS5qc1wiXG5pbXBvcnQgU2VsZWN0UGxhaW4gZnJvbSBcIi4vc2VsZWN0LXBsYWluLmpzXCJcbmltcG9ydCBXaGVyZUhhc2ggZnJvbSBcIi4vd2hlcmUtaGFzaC5qc1wiXG5pbXBvcnQgV2hlcmVQbGFpbiBmcm9tIFwiLi93aGVyZS1wbGFpbi5qc1wiXG5cbi8qKlxuICogQHR5cGVkZWYge3tba2V5OiBzdHJpbmddOiBib29sZWFuIHwgTmVzdGVkUHJlbG9hZFJlY29yZCB9fSBOZXN0ZWRQcmVsb2FkUmVjb3JkXG4gKiBAdHlwZWRlZiB7c3RyaW5nIHwgc3RyaW5nW10gfCBpbXBvcnQoXCIuL3NlbGVjdC1iYXNlLmpzXCIpLmRlZmF1bHQgfCBpbXBvcnQoXCIuL3NlbGVjdC1iYXNlLmpzXCIpLmRlZmF1bHRbXX0gU2VsZWN0QXJndW1lbnRUeXBlXG4gKiBAdHlwZWRlZiB7b2JqZWN0IHwgc3RyaW5nfSBXaGVyZUFyZ3VtZW50VHlwZVxuICovXG5cbi8qKlxuICogQHR5cGVkZWYge29iamVjdH0gUXVlcnlBcmdzVHlwZVxuICogQHByb3BlcnR5IHtpbXBvcnQoXCIuLi9kcml2ZXJzL2Jhc2UuanNcIikuZGVmYXVsdCB8ICgoKSA9PiBpbXBvcnQoXCIuLi9kcml2ZXJzL2Jhc2UuanNcIikuZGVmYXVsdCl9IGRyaXZlclxuICogQHByb3BlcnR5IHtBcnJheTxpbXBvcnQoXCIuL2Zyb20tYmFzZS5qc1wiKS5kZWZhdWx0Pn0gW2Zyb21zXVxuICogQHByb3BlcnR5IHtzdHJpbmdbXX0gW2dyb3Vwc11cbiAqIEBwcm9wZXJ0eSB7QXJyYXk8aW1wb3J0KFwiLi9qb2luLWJhc2UuanNcIikuZGVmYXVsdD59IFtqb2luc11cbiAqIEBwcm9wZXJ0eSB7aW1wb3J0KFwiLi4vaGFuZGxlci5qc1wiKS5kZWZhdWx0fSBoYW5kbGVyXG4gKiBAcHJvcGVydHkge251bWJlciB8IG51bGx9IFtsaW1pdF1cbiAqIEBwcm9wZXJ0eSB7bnVtYmVyIHwgbnVsbH0gW29mZnNldF1cbiAqIEBwcm9wZXJ0eSB7QXJyYXk8aW1wb3J0KFwiLi9vcmRlci1iYXNlLmpzXCIpLmRlZmF1bHQ+fSBbb3JkZXJzXVxuICogQHByb3BlcnR5IHtudW1iZXIgfCBudWxsfSBbcGFnZV1cbiAqIEBwcm9wZXJ0eSB7bnVtYmVyfSBbcGVyUGFnZV1cbiAqIEBwcm9wZXJ0eSB7TmVzdGVkUHJlbG9hZFJlY29yZH0gW3ByZWxvYWRdXG4gKiBAcHJvcGVydHkge0FycmF5PGltcG9ydChcIi4vc2VsZWN0LWJhc2UuanNcIikuZGVmYXVsdD59IFtzZWxlY3RzXVxuICogQHByb3BlcnR5IHtib29sZWFufSBbZGlzdGluY3RdXG4gKiBAcHJvcGVydHkge0FycmF5PGltcG9ydChcIi4vd2hlcmUtYmFzZS5qc1wiKS5kZWZhdWx0Pn0gW3doZXJlc11cbiAqL1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBWZWxvY2lvdXNEYXRhYmFzZVF1ZXJ5IHtcbiAgLyoqXG4gICAqIEBwYXJhbSB7UXVlcnlBcmdzVHlwZX0gYXJnc1xuICAgKi9cbiAgY29uc3RydWN0b3Ioe1xuICAgIGRyaXZlcixcbiAgICBmcm9tcyA9IFtdLFxuICAgIGdyb3VwcyA9IFtdLFxuICAgIGpvaW5zID0gW10sXG4gICAgaGFuZGxlcixcbiAgICBsaW1pdCA9IG51bGwsXG4gICAgb2Zmc2V0ID0gbnVsbCxcbiAgICBvcmRlcnMgPSBbXSxcbiAgICBwYWdlID0gbnVsbCxcbiAgICBwZXJQYWdlLFxuICAgIHByZWxvYWQgPSB7fSxcbiAgICBkaXN0aW5jdCA9IGZhbHNlLFxuICAgIHNlbGVjdHMgPSBbXSxcbiAgICB3aGVyZXMgPSBbXVxuICB9KSB7XG4gICAgaWYgKCFkcml2ZXIpIHRocm93IG5ldyBFcnJvcihcIk5vIGRyaXZlciBnaXZlbiB0byBxdWVyeVwiKVxuICAgIGlmICghaGFuZGxlcikgdGhyb3cgbmV3IEVycm9yKFwiTm8gaGFuZGxlciBnaXZlbiB0byBxdWVyeVwiKVxuXG4gICAgLyoqIEB0eXBlIHsoKSA9PiBpbXBvcnQoXCIuLi9kcml2ZXJzL2Jhc2UuanNcIikuZGVmYXVsdH0gKi9cbiAgICB0aGlzLl9kcml2ZXJGbiA9IHR5cGVvZiBkcml2ZXIgPT09IFwiZnVuY3Rpb25cIiA/IGRyaXZlciA6ICgpID0+IGRyaXZlclxuICAgIHRoaXMuaGFuZGxlciA9IGhhbmRsZXJcbiAgICB0aGlzLmxvZ2dlciA9IG5ldyBMb2dnZXIodGhpcylcbiAgICB0aGlzLl9mcm9tcyA9IGZyb21zXG4gICAgdGhpcy5fZ3JvdXBzID0gZ3JvdXBzXG4gICAgdGhpcy5fam9pbnMgPSBqb2luc1xuICAgIHRoaXMuX2xpbWl0ID0gbGltaXRcbiAgICB0aGlzLl9vZmZzZXQgPSBvZmZzZXRcbiAgICB0aGlzLl9vcmRlcnMgPSBvcmRlcnNcbiAgICB0aGlzLl9wYWdlID0gcGFnZVxuICAgIHRoaXMuX3BlclBhZ2UgPSBwZXJQYWdlXG4gICAgdGhpcy5fcHJlbG9hZCA9IHByZWxvYWRcbiAgICB0aGlzLl9kaXN0aW5jdCA9IGRpc3RpbmN0XG4gICAgdGhpcy5fc2VsZWN0cyA9IHNlbGVjdHNcblxuICAgIC8qKiBAdHlwZSB7aW1wb3J0KFwiLi93aGVyZS1iYXNlLmpzXCIpLmRlZmF1bHRbXX0gKi9cbiAgICB0aGlzLl93aGVyZXMgPSB3aGVyZXNcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7dGhpc30gLSBSZXN1bHQuICAqL1xuICBjbG9uZSgpIHtcbiAgICBjb25zdCBRdWVyeUNsYXNzID0gLyoqIEB0eXBlIHtuZXcgKGFyZ3M6IFF1ZXJ5QXJnc1R5cGUpID0+IHRoaXN9ICovICh0aGlzLmNvbnN0cnVjdG9yKVxuICAgIGNvbnN0IG5ld1F1ZXJ5ID0gbmV3IFF1ZXJ5Q2xhc3Moe1xuICAgICAgZHJpdmVyOiB0aGlzLl9kcml2ZXJGbixcbiAgICAgIGZyb21zOiBbLi4udGhpcy5fZnJvbXNdLFxuICAgICAgaGFuZGxlcjogdGhpcy5oYW5kbGVyLmNsb25lKCksXG4gICAgICBncm91cHM6IFsuLi50aGlzLl9ncm91cHNdLFxuICAgICAgam9pbnM6IFsuLi50aGlzLl9qb2luc10sXG4gICAgICBsaW1pdDogdGhpcy5fbGltaXQsXG4gICAgICBvZmZzZXQ6IHRoaXMuX29mZnNldCxcbiAgICAgIG9yZGVyczogWy4uLnRoaXMuX29yZGVyc10sXG4gICAgICBwYWdlOiB0aGlzLl9wYWdlLFxuICAgICAgcGVyUGFnZTogdGhpcy5fcGVyUGFnZSxcbiAgICAgIHByZWxvYWQ6IHsuLi50aGlzLl9wcmVsb2FkfSxcbiAgICAgIGRpc3RpbmN0OiB0aGlzLl9kaXN0aW5jdCxcbiAgICAgIHNlbGVjdHM6IFsuLi50aGlzLl9zZWxlY3RzXSxcbiAgICAgIHdoZXJlczogWy4uLnRoaXMuX3doZXJlc11cbiAgICB9KVxuXG4gICAgcmV0dXJuIG5ld1F1ZXJ5XG4gIH1cblxuICAvKiogQHJldHVybnMge2ltcG9ydChcIi4vZnJvbS1iYXNlLmpzXCIpLmRlZmF1bHRbXX0gLSBSZXN1bHQuICAqL1xuICBnZXRGcm9tcygpIHtcbiAgICByZXR1cm4gdGhpcy5fZnJvbXNcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7c3RyaW5nW119IC0gUmVzdWx0LiAgKi9cbiAgZ2V0R3JvdXBzKCkge1xuICAgIHJldHVybiB0aGlzLl9ncm91cHNcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7aW1wb3J0KFwiLi4vcXVlcnktcGFyc2VyL29wdGlvbnMuanNcIikuZGVmYXVsdH0gLSBSZXN1bHQuICAqL1xuICBnZXRPcHRpb25zKCkgeyByZXR1cm4gdGhpcy5kcml2ZXIub3B0aW9ucygpIH1cblxuICAvKiogQHJldHVybnMge0FycmF5PGltcG9ydChcIi4vc2VsZWN0LWJhc2UuanNcIikuZGVmYXVsdD59IC0gUmVzdWx0LiAgKi9cbiAgZ2V0U2VsZWN0cygpIHsgcmV0dXJuIHRoaXMuX3NlbGVjdHMgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge3N0cmluZ3xpbXBvcnQoXCIuL2Zyb20tYmFzZS5qc1wiKS5kZWZhdWx0fSBmcm9tXG4gICAqIEByZXR1cm5zIHt0aGlzfSAtIFJlc3VsdC5cbiAgICovXG4gIGZyb20oZnJvbSkge1xuICAgIGlmICh0eXBlb2YgZnJvbSA9PSBcInN0cmluZ1wiKSBmcm9tID0gbmV3IEZyb21QbGFpbihmcm9tKVxuXG4gICAgdGhpcy5fZnJvbXMucHVzaChmcm9tKVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtzdHJpbmd9IGdyb3VwXG4gICAqIEByZXR1cm5zIHt0aGlzfSAtIFJlc3VsdC5cbiAgICovXG4gIGdyb3VwKGdyb3VwKSB7XG4gICAgdGhpcy5fZ3JvdXBzLnB1c2goZ3JvdXApXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge3N0cmluZ3x7W2tleTogc3RyaW5nXTogYW55fX0gam9pblxuICAgKiBAcmV0dXJucyB7dGhpc30gLSBSZXN1bHQuXG4gICAqL1xuICBqb2lucyhqb2luKSB7XG4gICAgaWYgKHR5cGVvZiBqb2luID09IFwic3RyaW5nXCIpIHtcbiAgICAgIHRoaXMuX2pvaW5zLnB1c2gobmV3IEpvaW5QbGFpbihqb2luKSlcbiAgICB9IGVsc2UgaWYgKGlzUGxhaW5PYmplY3Qoam9pbikpIHtcbiAgICAgIHRoaXMuX2pvaW5zLnB1c2gobmV3IEpvaW5PYmplY3Qoam9pbikpXG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biB0eXBlIG9mIGpvaW46ICR7dHlwZW9mIGpvaW59YClcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSB2YWx1ZVxuICAgKiBAcmV0dXJucyB7dGhpc30gLSBSZXN1bHQuXG4gICAqL1xuICBsaW1pdCh2YWx1ZSkge1xuICAgIHRoaXMuX2xpbWl0ID0gdmFsdWVcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSB2YWx1ZVxuICAgKiBAcmV0dXJucyB7dGhpc30gLSBSZXN1bHQuXG4gICAqL1xuICBvZmZzZXQodmFsdWUpIHtcbiAgICB0aGlzLl9vZmZzZXQgPSB2YWx1ZVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtzdHJpbmcgfCBudW1iZXJ9IG9yZGVyXG4gICAqIEByZXR1cm5zIHt0aGlzfSAtIFJlc3VsdC5cbiAgICovXG4gIG9yZGVyKG9yZGVyKSB7XG4gICAgaWYgKHR5cGVvZiBvcmRlciA9PSBcInN0cmluZ1wiKSB7XG4gICAgICB0aGlzLl9vcmRlcnMucHVzaChuZXcgT3JkZXJQbGFpbih0aGlzLCBvcmRlcikpXG4gICAgfSBlbHNlIGlmICh0eXBlb2Ygb3JkZXIgPT0gXCJudW1iZXJcIikge1xuICAgICAgdGhpcy5fb3JkZXJzLnB1c2gobmV3IE9yZGVyUGxhaW4odGhpcywgYCR7b3JkZXJ9YCkpXG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBvcmRlciB0eXBlOiAke3R5cGVvZiBvcmRlcn1gKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtudW1iZXJ9IHBhZ2VOdW1iZXJcbiAgICogQHJldHVybnMge3RoaXN9IC0gUmVzdWx0LlxuICAgKi9cbiAgcGFnZShwYWdlTnVtYmVyKSB7XG4gICAgY29uc3QgcGVyUGFnZSA9IHRoaXMuX3BlclBhZ2UgfHwgMzBcbiAgICBjb25zdCBvZmZzZXQgPSAocGFnZU51bWJlciAtIDEpICogcGVyUGFnZVxuICAgIGNvbnN0IGxpbWl0ID0gcGVyUGFnZVxuXG4gICAgdGhpcy5fcGFnZSA9IHBhZ2VOdW1iZXJcbiAgICB0aGlzLmxpbWl0KGxpbWl0KVxuICAgIHRoaXMub2Zmc2V0KG9mZnNldClcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7bnVtYmVyfSBwZXJQYWdlXG4gICAqIEByZXR1cm5zIHt0aGlzfSAtIFJlc3VsdC5cbiAgICovXG4gIHBlclBhZ2UocGVyUGFnZSkge1xuICAgIHRoaXMuX3BlclBhZ2UgPSBwZXJQYWdlXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge3N0cmluZyB8IG51bWJlcn0gb3JkZXJcbiAgICogQHJldHVybnMge3RoaXN9IC0gUmVzdWx0LlxuICAgKi9cbiAgcmVvcmRlcihvcmRlcikge1xuICAgIHRoaXMuX29yZGVycyA9IFtdXG4gICAgdGhpcy5vcmRlcihvcmRlcilcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgLyoqIEByZXR1cm5zIHt0aGlzfSAtIFJlc3VsdC4gICovXG4gIHJldmVyc2VPcmRlcigpIHtcbiAgICBmb3IgKGNvbnN0IG9yZGVyIG9mIHRoaXMuX29yZGVycykge1xuICAgICAgb3JkZXIuc2V0UmV2ZXJzZU9yZGVyKHRydWUpXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IFt2YWx1ZV1cbiAgICogQHJldHVybnMge3RoaXN9IC0gUmVzdWx0LlxuICAgKi9cbiAgZGlzdGluY3QodmFsdWUgPSB0cnVlKSB7XG4gICAgdGhpcy5fZGlzdGluY3QgPSB2YWx1ZVxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtTZWxlY3RBcmd1bWVudFR5cGV9IHNlbGVjdFxuICAgKiBAcmV0dXJucyB7dGhpc30gLSBSZXN1bHQuXG4gICAqL1xuICBzZWxlY3Qoc2VsZWN0KSB7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkoc2VsZWN0KSkge1xuICAgICAgZm9yIChjb25zdCBzZWxlY3RJbkFycmF5IG9mIHNlbGVjdCkge1xuICAgICAgICB0aGlzLnNlbGVjdChzZWxlY3RJbkFycmF5KVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gdGhpc1xuICAgIH1cblxuICAgIGlmICh0eXBlb2Ygc2VsZWN0ID09IFwic3RyaW5nXCIpIHtcbiAgICAgIHRoaXMuX3NlbGVjdHMucHVzaChuZXcgU2VsZWN0UGxhaW4oc2VsZWN0KSlcbiAgICB9IGVsc2UgaWYgKHNlbGVjdCBpbnN0YW5jZW9mIFNlbGVjdEJhc2UpIHtcbiAgICAgIHRoaXMuX3NlbGVjdHMucHVzaChzZWxlY3QpXG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBzZWxlY3QgdHlwZTogJHt0eXBlb2Ygc2VsZWN0fWApXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXNcbiAgfVxuXG4gIC8qKlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxBcnJheTxvYmplY3Q+Pn0gQXJyYXkgb2YgcmVzdWx0cyBmcm9tIHRoZSBkYXRhYmFzZVxuICAgKi9cbiAgYXN5bmMgX2V4ZWN1dGVRdWVyeSgpIHtcbiAgICBjb25zdCBzcWwgPSB0aGlzLnRvU3FsKClcbiAgICBjb25zdCByZXN1bHRzID0gYXdhaXQgdGhpcy5kcml2ZXIucXVlcnkoc3FsKVxuXG4gICAgdGhpcy5sb2dnZXIuZGVidWcoKCkgPT4gW1wiU1FMOlwiLCBzcWxdKVxuXG4gICAgcmV0dXJuIHJlc3VsdHNcbiAgfVxuXG4gIC8qKiBAcmV0dXJucyB7UHJvbWlzZTxBcnJheTxvYmplY3Q+Pn0gQXJyYXkgb2YgcmVzdWx0cyBmcm9tIHRoZSBkYXRhYmFzZSAqL1xuICBhc3luYyByZXN1bHRzKCkge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLl9leGVjdXRlUXVlcnkoKVxuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlcyBTUUwgc3RyaW5nIHJlcHJlc2VudGluZyB0aGlzIHF1ZXJ5XG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IFNRTCBzdHJpbmcgcmVwcmVzZW50aW5nIHRoaXMgcXVlcnlcbiAgICovXG4gIHRvU3FsKCkgeyByZXR1cm4gdGhpcy5kcml2ZXIucXVlcnlUb1NxbCh0aGlzKSB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7V2hlcmVBcmd1bWVudFR5cGV9IHdoZXJlXG4gICAqIEByZXR1cm5zIHt0aGlzfSBUaGlzIHF1ZXJ5IGluc3RhbmNlXG4gICAqL1xuICB3aGVyZSh3aGVyZSkge1xuICAgIGlmICh0eXBlb2Ygd2hlcmUgPT0gXCJzdHJpbmdcIikge1xuICAgICAgdGhpcy5fd2hlcmVzLnB1c2gobmV3IFdoZXJlUGxhaW4odGhpcywgd2hlcmUpKVxuICAgIH0gZWxzZSBpZiAodHlwZW9mIHdoZXJlID09IFwib2JqZWN0XCIgJiYgKHdoZXJlLmNvbnN0cnVjdG9yLm5hbWUgPT0gXCJvYmplY3RcIiB8fCB3aGVyZS5jb25zdHJ1Y3Rvci5uYW1lID09IFwiT2JqZWN0XCIpKSB7XG4gICAgICB0aGlzLl93aGVyZXMucHVzaChuZXcgV2hlcmVIYXNoKHRoaXMsIHdoZXJlKSlcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIHR5cGUgb2Ygd2hlcmU6ICR7dHlwZW9mIHdoZXJlfSAoJHt3aGVyZS5jb25zdHJ1Y3Rvci5uYW1lfSlgKVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzXG4gIH1cblxuICAvKipcbiAgICogUmVzb2x2ZXMgdGhlIGN1cnJlbnQgZHJpdmVyIGxhemlseS5cbiAgICogQHJldHVybnMge2ltcG9ydChcIi4uL2RyaXZlcnMvYmFzZS5qc1wiKS5kZWZhdWx0fSAtIFJlc3VsdC5cbiAgICovXG4gIGdldCBkcml2ZXIoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2RyaXZlckZuKClcbiAgfVxufVxuIl19
@@ -26,7 +26,7 @@ export default class VelociousDatabaseQueryInsertBase {
26
26
  rows: string[][];
27
27
  tableName: string;
28
28
  /**
29
- * @returns {import("../query-parser/options.js").default}
29
+ * @returns {import("../query-parser/options.js").default} - Result.
30
30
  */
31
31
  getOptions(): import("../query-parser/options.js").default;
32
32
  /**
@@ -35,6 +35,7 @@ export default class VelociousDatabaseQueryInsertBase {
35
35
  toSql(): string;
36
36
  /**
37
37
  * @param {any[]} data
38
+ * @returns {string} - Result.
38
39
  */
39
40
  _valuesSql(data: any[]): string;
40
41
  }
@@ -1 +1 @@
1
- {"version":3,"file":"insert-base.d.ts","sourceRoot":"","sources":["../../../../src/database/query/insert-base.js"],"names":[],"mappings":"AAIA;IACE;;;;;;;;;OASG;IACH,8GARG;QAAmC,IAAI,GAA/B,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;QACwB,MAAM,EAAjD,OAAO,oBAAoB,EAAE,OAAO;QACvB,SAAS,EAAtB,MAAM;QACe,OAAO,GAA5B,KAAK,CAAC,MAAM,CAAC;QACE,QAAQ,GAAvB,OAAO;QACS,6BAA6B,GAA7C,MAAM,EAAE;QACoB,IAAI,GAAhC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;KAAa,EAe3C;IAPC,kBAAsB;IACtB,0BAAgB;IAChB,6CAAoB;IACpB,kBAAwB;IACxB,wCAAkE;IAClE,iBAAgB;IAChB,kBAA0B;IAG5B;;OAEG;IACH,cAFa,OAAO,4BAA4B,EAAE,OAAO,CAIxD;IAED;;OAEG;IACH,SAFa,MAAM,CAiGlB;IAED;;OAEG;IACH,iBAFW,GAAG,EAAE,UAgBf;CACF"}
1
+ {"version":3,"file":"insert-base.d.ts","sourceRoot":"","sources":["../../../../src/database/query/insert-base.js"],"names":[],"mappings":"AAIA;IACE;;;;;;;;;OASG;IACH,8GARG;QAAmC,IAAI,GAA/B,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;QACwB,MAAM,EAAjD,OAAO,oBAAoB,EAAE,OAAO;QACvB,SAAS,EAAtB,MAAM;QACe,OAAO,GAA5B,KAAK,CAAC,MAAM,CAAC;QACE,QAAQ,GAAvB,OAAO;QACS,6BAA6B,GAA7C,MAAM,EAAE;QACoB,IAAI,GAAhC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;KAAa,EAe3C;IAPC,kBAAsB;IACtB,0BAAgB;IAChB,6CAAoB;IACpB,kBAAwB;IACxB,wCAAkE;IAClE,iBAAgB;IAChB,kBAA0B;IAG5B;;OAEG;IACH,cAFa,OAAO,4BAA4B,EAAE,OAAO,CAIxD;IAED;;OAEG;IACH,SAFa,MAAM,CAiGlB;IAED;;;OAGG;IACH,iBAHW,GAAG,EAAE,GACH,MAAM,CAgBlB;CACF"}
@@ -26,7 +26,7 @@ export default class VelociousDatabaseQueryInsertBase {
26
26
  this.tableName = tableName;
27
27
  }
28
28
  /**
29
- * @returns {import("../query-parser/options.js").default}
29
+ * @returns {import("../query-parser/options.js").default} - Result.
30
30
  */
31
31
  getOptions() {
32
32
  return this.driver.options();
@@ -119,6 +119,7 @@ export default class VelociousDatabaseQueryInsertBase {
119
119
  }
120
120
  /**
121
121
  * @param {any[]} data
122
+ * @returns {string} - Result.
122
123
  */
123
124
  _valuesSql(data) {
124
125
  let count = 0;
@@ -133,4 +134,4 @@ export default class VelociousDatabaseQueryInsertBase {
133
134
  return sql;
134
135
  }
135
136
  }
136
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zZXJ0LWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZGF0YWJhc2UvcXVlcnkvaW5zZXJ0LWJhc2UuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTtBQUVaLE9BQU8sYUFBYSxNQUFNLGdDQUFnQyxDQUFBO0FBRTFELE1BQU0sQ0FBQyxPQUFPLE9BQU8sZ0NBQWdDO0lBQ25EOzs7Ozs7Ozs7T0FTRztJQUNILFlBQVksRUFBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLDZCQUE2QixFQUFFLElBQUksRUFBRSxHQUFHLFFBQVEsRUFBQztRQUN4RyxJQUFJLENBQUMsTUFBTTtZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsZ0NBQWdDLENBQUMsQ0FBQTtRQUM5RCxJQUFJLENBQUMsU0FBUztZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsNENBQTRDLFNBQVMsRUFBRSxDQUFDLENBQUE7UUFFeEYsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBRXZCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFBO1FBQ3RCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFBO1FBQ2hCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFBO1FBQ3BCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFBO1FBQ3hCLElBQUksQ0FBQyw2QkFBNkIsR0FBRyw2QkFBNkIsQ0FBQTtRQUNsRSxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQTtRQUNoQixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQTtJQUM1QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFBO0lBQzlCLENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUs7UUFDSCxNQUFNLEVBQUMsTUFBTSxFQUFDLEdBQUcsSUFBSSxD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QUMxQixDQUFDO2lCQUFNLElBQUksTUFBTSxDQUFDLE9BQU8sRUFBRSxJQUFJLE9BQU8sRUFBRSxDQUFDO2dCQUN2QyxHQUFHLElBQUksZUFBZSxDQUFBO1lBQ3hCLENBQUM7UUFDSCxDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsNkJBQTZCLEVBQUUsQ0FBQztZQUN2QyxJQUFJLE1BQU0sQ0FBQyxPQUFPLEVBQUUsSUFBSSxPQUFPLElBQUksTUFBTSxDQUFDLE9BQU8sRUFBRSxJQUFJLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsSUFBSSxRQUFRLElBQUksTUFBTSxDQUFDLDJCQUEyQixFQUFFLENBQUMsRUFBRSxDQUFDO2dCQUN6SSxHQUFHLElBQUksZUFBZSxDQUFBO1lBQ3hCLENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxHQUFHLENBQUE7SUFDWixDQUFDO0lBRUQ7O09BRUc7SUFDSCxVQUFVLENBQUMsSUFBSTtRQUNiLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQTtRQUNiLElBQUksR0FBRyxHQUFHLEdBQUcsQ0FBQTtRQUViLEtBQUssTUFBTSxLQUFLLElBQUksSUFBSSxFQUFFLENBQUM7WUFDekIsSUFBSSxLQUFLLEdBQUcsQ0FBQztnQkFBRSxHQUFHLElBQUksSUFBSSxDQUFBO1lBRTFCLEdBQUcsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFBO1lBQ3JDLEtBQUssRUFBRSxDQUFBO1FBQ1QsQ0FBQztRQUVELEdBQUcsSUFBSSxHQUFHLENBQUE7UUFFVixPQUFPLEdBQUcsQ0FBQTtJQUNaLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8vIEB0cy1jaGVja1xuXG5pbXBvcnQgcmVzdEFyZ3NFcnJvciBmcm9tIFwiLi4vLi4vdXRpbHMvcmVzdC1hcmdzLWVycm9yLmpzXCJcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVmVsb2Npb3VzRGF0YWJhc2VRdWVyeUluc2VydEJhc2Uge1xuICAvKipcbiAgICogQHBhcmFtIHtvYmplY3R9IGFyZ3NcbiAgICogQHBhcmFtIHtSZWNvcmQ8c3RyaW5nLCBhbnk+fSBbYXJncy5kYXRhXVxuICAgKiBAcGFyYW0ge2ltcG9ydChcIi4uL2RyaXZlcnMvYmFzZS5qc1wiKS5kZWZhdWx0fSBhcmdzLmRyaXZlclxuICAgKiBAcGFyYW0ge3N0cmluZ30gYXJncy50YWJsZU5hbWVcbiAgICogQHBhcmFtIHtBcnJheTxzdHJpbmc+fSBbYXJncy5jb2x1bW5zXVxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IFthcmdzLm11bHRpcGxlXVxuICAgKiBAcGFyYW0ge3N0cmluZ1tdfSBbYXJncy5yZXR1cm5MYXN0SW5zZXJ0ZWRDb2x1bW5OYW1lc11cbiAgICogQHBhcmFtIHtBcnJheTxBcnJheTxzdHJpbmc+Pn0gW2FyZ3Mucm93c11cbiAgICovXG4gIGNvbnN0cnVjdG9yKHtjb2x1bW5zLCBkYXRhLCBkcml2ZXIsIG11bHRpcGxlLCB0YWJsZU5hbWUsIHJldHVybkxhc3RJbnNlcnRlZENvbHVtbk5hbWVzLCByb3dzLCAuLi5yZXN0QXJnc30pIHtcbiAgICBpZiAoIWRyaXZlcikgdGhyb3cgbmV3IEVycm9yKFwiTm8gZHJpdmVyIGdpdmVuIHRvIGluc2VydCBiYXNlXCIpXG4gICAgaWYgKCF0YWJsZU5hbWUpIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCB0YWJsZSBuYW1lIGdpdmVuIHRvIGluc2VydCBiYXNlOiAke3RhYmxlTmFtZX1gKVxuXG4gICAgcmVzdEFyZ3NFcnJvcihyZXN0QXJncylcblxuICAgIHRoaXMuY29sdW1ucyA9IGNvbHVtbnNcbiAgICB0aGlzLmRhdGEgPSBkYXRhXG4gICAgdGhpcy5kcml2ZXIgPSBkcml2ZXJcbiAgICB0aGlzLm11bHRpcGxlID0gbXVsdGlwbGVcbiAgICB0aGlzLnJldHVybkxhc3RJbnNlcnRlZENvbHVtbk5hbWVzID0gcmV0dXJuTGFzdEluc2VydGVkQ29sdW1uTmFtZXNcbiAgICB0aGlzLnJvd3MgPSByb3dzXG4gICAgdGhpcy50YWJsZU5hbWUgPSB0YWJsZU5hbWVcbiAgfVxuXG4gIC8qKlxuICAgKiBAcmV0dXJucyB7aW1wb3J0KFwiLi4vcXVlcnktcGFyc2VyL29wdGlvbnMuanNcIikuZGVmYXVsdH1cbiAgICovXG4gIGdldE9wdGlvbnMoKSB7XG4gICAgcmV0dXJuIHRoaXMuZHJpdmVyLm9wdGlvbnMoKVxuICB9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IFNRTCBzdGF0ZW1lbnRcbiAgICovXG4gIHRvU3FsKCkge1xuICAgIGNvbnN0IHtkcml2ZXJ9ID0gdGhpc1xuXG4gICAgbGV0IHNxbCA9IGBJTlNFUlQgSU5UTyAke2RyaXZlci5xdW90ZVRhYmxlKHRoaXMudGFibGVOYW1lKX1gXG4gICAgbGV0IGNvdW50ID0gMFxuICAgIGxldCBjb2x1bW5zLCBsYXN0SW5zZXJ0ZWRTUUxcblxuICAgIGlmICh0aGlzLnJldHVybkxhc3RJbnNlcnRlZENvbHVtbk5hbWVzKSB7XG4gICAgICBpZiAoZHJpdmVyLmdldFR5cGUoKSA9PSBcIm1zc3FsXCIpIHtcbiAgICAgICAgbGFzdEluc2VydGVkU1FMID0gYCBPVVRQVVQgYFxuXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5yZXR1cm5MYXN0SW5zZXJ0ZWRDb2x1bW5OYW1lcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgIGNvbnN0IGNvbHVtbk5hbWUgPSB0aGlzLnJldHVybkxhc3RJbnNlcnRlZENvbHVtbk5hbWVzW2ldXG5cbiAgICAgICAgICBpZiAoaSA+IDApIHtcbiAgICAgICAgICAgIGxhc3RJbnNlcnRlZFNRTCArPSBcIiwgXCJcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBsYXN0SW5zZXJ0ZWRTUUwgKz0gYCBJTlNFUlRFRC4ke2RyaXZlci5xdW90ZUNvbHVtbihjb2x1bW5OYW1lKX1gXG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5kYXRhICYmIE9iamVjdC5rZXlzKHRoaXMuZGF0YSkubGVuZ3RoIDw9IDApIHtcbiAgICAgICAgICBzcWwgKz0gbGFzdEluc2VydGVkU1FMXG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZiAoZHJpdmVyLmdldFR5cGUoKSA9PSBcIm15c3FsXCIgfHwgZHJpdmVyLmdldFR5cGUoKSA9PSBcInBnc3FsXCIgfHwgKGRyaXZlci5nZXRUeXBlKCkgPT0gXCJzcWxpdGVcIiAmJiBkcml2ZXIuc3VwcG9ydHNJbnNlcnRJbnRvUmV0dXJuaW5nKCkpKSB7XG4gICAgICAgIGxhc3RJbnNlcnRlZFNRTCA9IFwiIFJFVFVSTklORyBcIlxuXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5yZXR1cm5MYXN0SW5zZXJ0ZWRDb2x1bW5OYW1lcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgIGNvbnN0IGNvbHVtbk5hbWUgPSB0aGlzLnJldHVybkxhc3RJbnNlcnRlZENvbHVtbk5hbWVzW2ldXG5cbiAgICAgICAgICBpZiAoaSA+IDApIHtcbiAgICAgICAgICAgIGxhc3RJbnNlcnRlZFNRTCArPSBcIiwgXCJcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBsYXN0SW5zZXJ0ZWRTUUwgKz0gYCAke2RyaXZlci5xdW90ZUNvbHVtbihjb2x1bW5OYW1lKX1gXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodGhpcy5jb2x1bW5zICYmIHRoaXMucm93cykge1xuICAgICAgY29sdW1ucyA9IHRoaXMuY29sdW1uc1xuICAgIH0gZWxzZSBpZiAodGhpcy5kYXRhKSB7XG4gICAgICBjb2x1bW5zID0gT2JqZWN0LmtleXModGhpcy5kYXRhKVxuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJOZWl0aGVyICdjb2x1bW4nIGFuZCAncm93cycgb3IgZGF0YSB3YXMgZ2l2ZW5cIilcbiAgICB9XG5cbiAgICBpZiAoY29sdW1ucy5sZW5ndGggPiAwKSB7XG4gICAgICBzcWwgKz0gXCIgKFwiXG5cbiAgICAgIGZvciAoY29uc3QgY29sdW1uTmFtZSBvZiBjb2x1bW5zKSB7XG4gICAgICAgIGlmIChjb3VudCA+IDApIHNxbCArPSBcIiwgXCJcblxuICAgICAgICBzcWwgKz0gZHJpdmVyLnF1b3RlQ29sdW1uKGNvbHVtbk5hbWUpXG4gICAgICAgIGNvdW50KytcbiAgICAgIH1cblxuICAgICAgc3FsICs9IFwiKVwiXG4gICAgfVxuXG4gICAgaWYgKHRoaXMucmV0dXJuTGFzdEluc2VydGVkQ29sdW1uTmFtZXMgJiYgZHJpdmVyLmdldFR5cGUoKSA9PSBcIm1zc3FsXCIgJiYgdGhpcy5kYXRhICYmIE9iamVjdC5rZXlzKHRoaXMuZGF0YSkubGVuZ3RoID4gMCkge1xuICAgICAgc3FsICs9IGxhc3RJbnNlcnRlZFNRTFxuICAgIH1cblxuICAgIGlmICh0aGlzLmNvbHVtbnMgJiYgdGhpcy5yb3dzKSB7XG4gICAgICBpZiAodGhpcy5yb3dzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgc3FsICs9IFwiIFZBTFVFUyBcIlxuICAgICAgfVxuXG4gICAgICBsZXQgY291bnQgPSAwXG5cbiAgICAgIGZvciAoY29uc3Qgcm93IG9mIHRoaXMucm93cykge1xuICAgICAgICBpZiAoY291bnQgPj0gMSkgc3FsICs9IFwiLCBcIlxuXG4gICAgICAgIGNvdW50KytcbiAgICAgICAgc3FsICs9IHRoaXMuX3ZhbHVlc1NxbChyb3cpXG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGlmICh0aGlzLmRhdGEgJiYgT2JqZWN0LmtleXModGhpcy5kYXRhKS5sZW5ndGggPiAwKSB7XG4gICAgICAgIHNxbCArPSBcIiBWQUxVRVMgXCJcbiAgICAgICAgc3FsICs9IHRoaXMuX3ZhbHVlc1NxbChPYmplY3QudmFsdWVzKHRoaXMuZGF0YSkpXG4gICAgICB9IGVsc2UgaWYgKGRyaXZlci5nZXRUeXBlKCkgPT0gXCJzcWxpdGVcIiB8fCBkcml2ZXIuZ2V0VHlwZSgpID09IFwibXNzcWxcIikge1xuICAgICAgICBzcWwgKz0gXCIgREVGQVVMVCBWQUxVRVNcIlxuICAgICAgfSBlbHNlIGlmIChkcml2ZXIuZ2V0VHlwZSgpID09IFwibXlzcWxcIikge1xuICAgICAgICBzcWwgKz0gXCIgKCkgVkFMVUVTICgpXCJcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodGhpcy5yZXR1cm5MYXN0SW5zZXJ0ZWRDb2x1bW5OYW1lcykge1xuICAgICAgaWYgKGRyaXZlci5nZXRUeXBlKCkgPT0gXCJwZ3NxbFwiIHx8IGRyaXZlci5nZXRUeXBlKCkgPT0gXCJteXNxbFwiIHx8IChkcml2ZXIuZ2V0VHlwZSgpID09IFwic3FsaXRlXCIgJiYgZHJpdmVyLnN1cHBvcnRzSW5zZXJ0SW50b1JldHVybmluZygpKSkge1xuICAgICAgICBzcWwgKz0gbGFzdEluc2VydGVkU1FMXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHNxbFxuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7YW55W119IGRhdGFcbiAgICovXG4gIF92YWx1ZXNTcWwoZGF0YSkge1xuICAgIGxldCBjb3VudCA9IDBcbiAgICBsZXQgc3FsID0gXCIoXCJcblxuICAgIGZvciAoY29uc3QgdmFsdWUgb2YgZGF0YSkge1xuICAgICAgaWYgKGNvdW50ID4gMCkgc3FsICs9IFwiLCBcIlxuXG4gICAgICBzcWwgKz0gdGhpcy5nZXRPcHRpb25zKCkucXVvdGUodmFsdWUpXG4gICAgICBjb3VudCsrXG4gICAgfVxuXG4gICAgc3FsICs9IFwiKVwiXG5cbiAgICByZXR1cm4gc3FsXG4gIH1cbn1cbiJdfQ==
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zZXJ0LWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZGF0YWJhc2UvcXVlcnkvaW5zZXJ0LWJhc2UuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWTtBQUVaLE9BQU8sYUFBYSxNQUFNLGdDQUFnQyxDQUFBO0FBRTFELE1BQU0sQ0FBQyxPQUFPLE9BQU8sZ0NBQWdDO0lBQ25EOzs7Ozs7Ozs7T0FTRztJQUNILFlBQVksRUFBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLDZCQUE2QixFQUFFLElBQUksRUFBRSxHQUFHLFFBQVEsRUFBQztRQUN4RyxJQUFJLENBQUMsTUFBTTtZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsZ0NBQWdDLENBQUMsQ0FBQTtRQUM5RCxJQUFJLENBQUMsU0FBUztZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsNENBQTRDLFNBQVMsRUFBRSxDQUFDLENBQUE7UUFFeEYsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBRXZCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFBO1FBQ3RCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFBO1FBQ2hCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFBO1FBQ3BCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFBO1FBQ3hCLElBQUksQ0FBQyw2QkFBNkIsR0FBRyw2QkFBNkIsQ0FBQTtRQUNsRSxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQTtRQUNoQixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQTtJQUM1QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFBO0lBQzlCLENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUs7UUFDSCxNQUFNLEVBQUMsTUFBTSxFQUFDLEdBQUcsSUFBSSxD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QUMxQixDQUFDO2lCQUFNLElBQUksTUFBTSxDQUFDLE9BQU8sRUFBRSxJQUFJLE9BQU8sRUFBRSxDQUFDO2dCQUN2QyxHQUFHLElBQUksZUFBZSxDQUFBO1lBQ3hCLENBQUM7UUFDSCxDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsNkJBQTZCLEVBQUUsQ0FBQztZQUN2QyxJQUFJLE1BQU0sQ0FBQyxPQUFPLEVBQUUsSUFBSSxPQUFPLElBQUksTUFBTSxDQUFDLE9BQU8sRUFBRSxJQUFJLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsSUFBSSxRQUFRLElBQUksTUFBTSxDQUFDLDJCQUEyQixFQUFFLENBQUMsRUFBRSxDQUFDO2dCQUN6SSxHQUFHLElBQUksZUFBZSxDQUFBO1lBQ3hCLENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxHQUFHLENBQUE7SUFDWixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsVUFBVSxDQUFDLElBQUk7UUFDYixJQUFJLEtBQUssR0FBRyxDQUFDLENBQUE7UUFDYixJQUFJLEdBQUcsR0FBRyxHQUFHLENBQUE7UUFFYixLQUFLLE1BQU0sS0FBSyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ3pCLElBQUksS0FBSyxHQUFHLENBQUM7Z0JBQUUsR0FBRyxJQUFJLElBQUksQ0FBQTtZQUUxQixHQUFHLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQTtZQUNyQyxLQUFLLEVBQUUsQ0FBQTtRQUNULENBQUM7UUFFRCxHQUFHLElBQUksR0FBRyxDQUFBO1FBRVYsT0FBTyxHQUFHLENBQUE7SUFDWixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAdHMtY2hlY2tcblxuaW1wb3J0IHJlc3RBcmdzRXJyb3IgZnJvbSBcIi4uLy4uL3V0aWxzL3Jlc3QtYXJncy1lcnJvci5qc1wiXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFZlbG9jaW91c0RhdGFiYXNlUXVlcnlJbnNlcnRCYXNlIHtcbiAgLyoqXG4gICAqIEBwYXJhbSB7b2JqZWN0fSBhcmdzXG4gICAqIEBwYXJhbSB7UmVjb3JkPHN0cmluZywgYW55Pn0gW2FyZ3MuZGF0YV1cbiAgICogQHBhcmFtIHtpbXBvcnQoXCIuLi9kcml2ZXJzL2Jhc2UuanNcIikuZGVmYXVsdH0gYXJncy5kcml2ZXJcbiAgICogQHBhcmFtIHtzdHJpbmd9IGFyZ3MudGFibGVOYW1lXG4gICAqIEBwYXJhbSB7QXJyYXk8c3RyaW5nPn0gW2FyZ3MuY29sdW1uc11cbiAgICogQHBhcmFtIHtib29sZWFufSBbYXJncy5tdWx0aXBsZV1cbiAgICogQHBhcmFtIHtzdHJpbmdbXX0gW2FyZ3MucmV0dXJuTGFzdEluc2VydGVkQ29sdW1uTmFtZXNdXG4gICAqIEBwYXJhbSB7QXJyYXk8QXJyYXk8c3RyaW5nPj59IFthcmdzLnJvd3NdXG4gICAqL1xuICBjb25zdHJ1Y3Rvcih7Y29sdW1ucywgZGF0YSwgZHJpdmVyLCBtdWx0aXBsZSwgdGFibGVOYW1lLCByZXR1cm5MYXN0SW5zZXJ0ZWRDb2x1bW5OYW1lcywgcm93cywgLi4ucmVzdEFyZ3N9KSB7XG4gICAgaWYgKCFkcml2ZXIpIHRocm93IG5ldyBFcnJvcihcIk5vIGRyaXZlciBnaXZlbiB0byBpbnNlcnQgYmFzZVwiKVxuICAgIGlmICghdGFibGVOYW1lKSB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgdGFibGUgbmFtZSBnaXZlbiB0byBpbnNlcnQgYmFzZTogJHt0YWJsZU5hbWV9YClcblxuICAgIHJlc3RBcmdzRXJyb3IocmVzdEFyZ3MpXG5cbiAgICB0aGlzLmNvbHVtbnMgPSBjb2x1bW5zXG4gICAgdGhpcy5kYXRhID0gZGF0YVxuICAgIHRoaXMuZHJpdmVyID0gZHJpdmVyXG4gICAgdGhpcy5tdWx0aXBsZSA9IG11bHRpcGxlXG4gICAgdGhpcy5yZXR1cm5MYXN0SW5zZXJ0ZWRDb2x1bW5OYW1lcyA9IHJldHVybkxhc3RJbnNlcnRlZENvbHVtbk5hbWVzXG4gICAgdGhpcy5yb3dzID0gcm93c1xuICAgIHRoaXMudGFibGVOYW1lID0gdGFibGVOYW1lXG4gIH1cblxuICAvKipcbiAgICogQHJldHVybnMge2ltcG9ydChcIi4uL3F1ZXJ5LXBhcnNlci9vcHRpb25zLmpzXCIpLmRlZmF1bHR9IC0gUmVzdWx0LlxuICAgKi9cbiAgZ2V0T3B0aW9ucygpIHtcbiAgICByZXR1cm4gdGhpcy5kcml2ZXIub3B0aW9ucygpXG4gIH1cblxuICAvKipcbiAgICogQHJldHVybnMge3N0cmluZ30gU1FMIHN0YXRlbWVudFxuICAgKi9cbiAgdG9TcWwoKSB7XG4gICAgY29uc3Qge2RyaXZlcn0gPSB0aGlzXG5cbiAgICBsZXQgc3FsID0gYElOU0VSVCBJTlRPICR7ZHJpdmVyLnF1b3RlVGFibGUodGhpcy50YWJsZU5hbWUpfWBcbiAgICBsZXQgY291bnQgPSAwXG4gICAgbGV0IGNvbHVtbnMsIGxhc3RJbnNlcnRlZFNRTFxuXG4gICAgaWYgKHRoaXMucmV0dXJuTGFzdEluc2VydGVkQ29sdW1uTmFtZXMpIHtcbiAgICAgIGlmIChkcml2ZXIuZ2V0VHlwZSgpID09IFwibXNzcWxcIikge1xuICAgICAgICBsYXN0SW5zZXJ0ZWRTUUwgPSBgIE9VVFBVVCBgXG5cbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnJldHVybkxhc3RJbnNlcnRlZENvbHVtbk5hbWVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgY29uc3QgY29sdW1uTmFtZSA9IHRoaXMucmV0dXJuTGFzdEluc2VydGVkQ29sdW1uTmFtZXNbaV1cblxuICAgICAgICAgIGlmIChpID4gMCkge1xuICAgICAgICAgICAgbGFzdEluc2VydGVkU1FMICs9IFwiLCBcIlxuICAgICAgICAgIH1cblxuICAgICAgICAgIGxhc3RJbnNlcnRlZFNRTCArPSBgIElOU0VSVEVELiR7ZHJpdmVyLnF1b3RlQ29sdW1uKGNvbHVtbk5hbWUpfWBcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmRhdGEgJiYgT2JqZWN0LmtleXModGhpcy5kYXRhKS5sZW5ndGggPD0gMCkge1xuICAgICAgICAgIHNxbCArPSBsYXN0SW5zZXJ0ZWRTUUxcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIGlmIChkcml2ZXIuZ2V0VHlwZSgpID09IFwibXlzcWxcIiB8fCBkcml2ZXIuZ2V0VHlwZSgpID09IFwicGdzcWxcIiB8fCAoZHJpdmVyLmdldFR5cGUoKSA9PSBcInNxbGl0ZVwiICYmIGRyaXZlci5zdXBwb3J0c0luc2VydEludG9SZXR1cm5pbmcoKSkpIHtcbiAgICAgICAgbGFzdEluc2VydGVkU1FMID0gXCIgUkVUVVJOSU5HIFwiXG5cbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnJldHVybkxhc3RJbnNlcnRlZENvbHVtbk5hbWVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgY29uc3QgY29sdW1uTmFtZSA9IHRoaXMucmV0dXJuTGFzdEluc2VydGVkQ29sdW1uTmFtZXNbaV1cblxuICAgICAgICAgIGlmIChpID4gMCkge1xuICAgICAgICAgICAgbGFzdEluc2VydGVkU1FMICs9IFwiLCBcIlxuICAgICAgICAgIH1cblxuICAgICAgICAgIGxhc3RJbnNlcnRlZFNRTCArPSBgICR7ZHJpdmVyLnF1b3RlQ29sdW1uKGNvbHVtbk5hbWUpfWBcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0aGlzLmNvbHVtbnMgJiYgdGhpcy5yb3dzKSB7XG4gICAgICBjb2x1bW5zID0gdGhpcy5jb2x1bW5zXG4gICAgfSBlbHNlIGlmICh0aGlzLmRhdGEpIHtcbiAgICAgIGNvbHVtbnMgPSBPYmplY3Qua2V5cyh0aGlzLmRhdGEpXG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIk5laXRoZXIgJ2NvbHVtbicgYW5kICdyb3dzJyBvciBkYXRhIHdhcyBnaXZlblwiKVxuICAgIH1cblxuICAgIGlmIChjb2x1bW5zLmxlbmd0aCA+IDApIHtcbiAgICAgIHNxbCArPSBcIiAoXCJcblxuICAgICAgZm9yIChjb25zdCBjb2x1bW5OYW1lIG9mIGNvbHVtbnMpIHtcbiAgICAgICAgaWYgKGNvdW50ID4gMCkgc3FsICs9IFwiLCBcIlxuXG4gICAgICAgIHNxbCArPSBkcml2ZXIucXVvdGVDb2x1bW4oY29sdW1uTmFtZSlcbiAgICAgICAgY291bnQrK1xuICAgICAgfVxuXG4gICAgICBzcWwgKz0gXCIpXCJcbiAgICB9XG5cbiAgICBpZiAodGhpcy5yZXR1cm5MYXN0SW5zZXJ0ZWRDb2x1bW5OYW1lcyAmJiBkcml2ZXIuZ2V0VHlwZSgpID09IFwibXNzcWxcIiAmJiB0aGlzLmRhdGEgJiYgT2JqZWN0LmtleXModGhpcy5kYXRhKS5sZW5ndGggPiAwKSB7XG4gICAgICBzcWwgKz0gbGFzdEluc2VydGVkU1FMXG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY29sdW1ucyAmJiB0aGlzLnJvd3MpIHtcbiAgICAgIGlmICh0aGlzLnJvd3MubGVuZ3RoID4gMCkge1xuICAgICAgICBzcWwgKz0gXCIgVkFMVUVTIFwiXG4gICAgICB9XG5cbiAgICAgIGxldCBjb3VudCA9IDBcblxuICAgICAgZm9yIChjb25zdCByb3cgb2YgdGhpcy5yb3dzKSB7XG4gICAgICAgIGlmIChjb3VudCA+PSAxKSBzcWwgKz0gXCIsIFwiXG5cbiAgICAgICAgY291bnQrK1xuICAgICAgICBzcWwgKz0gdGhpcy5fdmFsdWVzU3FsKHJvdylcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHRoaXMuZGF0YSAmJiBPYmplY3Qua2V5cyh0aGlzLmRhdGEpLmxlbmd0aCA+IDApIHtcbiAgICAgICAgc3FsICs9IFwiIFZBTFVFUyBcIlxuICAgICAgICBzcWwgKz0gdGhpcy5fdmFsdWVzU3FsKE9iamVjdC52YWx1ZXModGhpcy5kYXRhKSlcbiAgICAgIH0gZWxzZSBpZiAoZHJpdmVyLmdldFR5cGUoKSA9PSBcInNxbGl0ZVwiIHx8IGRyaXZlci5nZXRUeXBlKCkgPT0gXCJtc3NxbFwiKSB7XG4gICAgICAgIHNxbCArPSBcIiBERUZBVUxUIFZBTFVFU1wiXG4gICAgICB9IGVsc2UgaWYgKGRyaXZlci5nZXRUeXBlKCkgPT0gXCJteXNxbFwiKSB7XG4gICAgICAgIHNxbCArPSBcIiAoKSBWQUxVRVMgKClcIlxuICAgICAgfVxuICAgIH1cblxuICAgIGlmICh0aGlzLnJldHVybkxhc3RJbnNlcnRlZENvbHVtbk5hbWVzKSB7XG4gICAgICBpZiAoZHJpdmVyLmdldFR5cGUoKSA9PSBcInBnc3FsXCIgfHwgZHJpdmVyLmdldFR5cGUoKSA9PSBcIm15c3FsXCIgfHwgKGRyaXZlci5nZXRUeXBlKCkgPT0gXCJzcWxpdGVcIiAmJiBkcml2ZXIuc3VwcG9ydHNJbnNlcnRJbnRvUmV0dXJuaW5nKCkpKSB7XG4gICAgICAgIHNxbCArPSBsYXN0SW5zZXJ0ZWRTUUxcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gc3FsXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHthbnlbXX0gZGF0YVxuICAgKiBAcmV0dXJucyB7c3RyaW5nfSAtIFJlc3VsdC5cbiAgICovXG4gIF92YWx1ZXNTcWwoZGF0YSkge1xuICAgIGxldCBjb3VudCA9IDBcbiAgICBsZXQgc3FsID0gXCIoXCJcblxuICAgIGZvciAoY29uc3QgdmFsdWUgb2YgZGF0YSkge1xuICAgICAgaWYgKGNvdW50ID4gMCkgc3FsICs9IFwiLCBcIlxuXG4gICAgICBzcWwgKz0gdGhpcy5nZXRPcHRpb25zKCkucXVvdGUodmFsdWUpXG4gICAgICBjb3VudCsrXG4gICAgfVxuXG4gICAgc3FsICs9IFwiKVwiXG5cbiAgICByZXR1cm4gc3FsXG4gIH1cbn1cbiJdfQ==
@@ -1,11 +1,11 @@
1
1
  export default class VelociousDatabaseQueryJoinBase {
2
2
  pretty: boolean;
3
3
  /**
4
- * @returns {import("../query-parser/options.js").default}
4
+ * @returns {import("../query-parser/options.js").default} - Result.
5
5
  */
6
6
  getOptions(): import("../query-parser/options.js").default;
7
7
  /**
8
- * @returns {import("./index.js").default}
8
+ * @returns {import("./index.js").default} - Result.
9
9
  */
10
10
  getQuery(): import("./index.js").default;
11
11
  /**