@ductape/sdk 0.0.4-v99 → 0.0.5

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 (295) hide show
  1. package/dist/agents/agent-context.d.ts +3 -1
  2. package/dist/agents/agent-context.js +19 -3
  3. package/dist/agents/agent-context.js.map +1 -1
  4. package/dist/agents/agents.service.js +9 -5
  5. package/dist/agents/agents.service.js.map +1 -1
  6. package/dist/agents/types/agents.types.d.ts +14 -1
  7. package/dist/agents/types/agents.types.js.map +1 -1
  8. package/dist/api/services/appApi.service.js +15 -6
  9. package/dist/api/services/appApi.service.js.map +1 -1
  10. package/dist/api/services/logsApi.service.d.ts +51 -0
  11. package/dist/api/services/logsApi.service.js +19 -2
  12. package/dist/api/services/logsApi.service.js.map +1 -1
  13. package/dist/api/services/processorApi.service.d.ts +568 -2
  14. package/dist/api/services/processorApi.service.js +412 -21
  15. package/dist/api/services/processorApi.service.js.map +1 -1
  16. package/dist/api/services/productsApi.service.d.ts +20 -0
  17. package/dist/api/services/productsApi.service.js +44 -15
  18. package/dist/api/services/productsApi.service.js.map +1 -1
  19. package/dist/api/services/secretsApi.service.js +0 -11
  20. package/dist/api/services/secretsApi.service.js.map +1 -1
  21. package/dist/api/services/webhooksApi.service.js +13 -6
  22. package/dist/api/services/webhooksApi.service.js.map +1 -1
  23. package/dist/api/services/workflowApi.service.js +30 -12
  24. package/dist/api/services/workflowApi.service.js.map +1 -1
  25. package/dist/api/urls.d.ts +26 -0
  26. package/dist/api/urls.js +30 -3
  27. package/dist/api/urls.js.map +1 -1
  28. package/dist/apps/validators/joi-validators/update.appAction.validator.js +12 -1
  29. package/dist/apps/validators/joi-validators/update.appAction.validator.js.map +1 -1
  30. package/dist/brokers/brokers.service.d.ts +140 -2
  31. package/dist/brokers/brokers.service.js +444 -36
  32. package/dist/brokers/brokers.service.js.map +1 -1
  33. package/dist/brokers/types/index.d.ts +251 -0
  34. package/dist/brokers/utils/providers/rabbitmq.service.d.ts +14 -4
  35. package/dist/brokers/utils/providers/rabbitmq.service.js +22 -35
  36. package/dist/brokers/utils/providers/rabbitmq.service.js.map +1 -1
  37. package/dist/cache/cache.manager.d.ts +84 -5
  38. package/dist/cache/cache.manager.js +478 -38
  39. package/dist/cache/cache.manager.js.map +1 -1
  40. package/dist/cache/cache.service.d.ts +5 -0
  41. package/dist/cache/cache.service.js +163 -6
  42. package/dist/cache/cache.service.js.map +1 -1
  43. package/dist/cache/index.d.ts +1 -1
  44. package/dist/cache/index.js +3 -1
  45. package/dist/cache/index.js.map +1 -1
  46. package/dist/cache/types/index.d.ts +4 -0
  47. package/dist/database/databases.service.d.ts +70 -2
  48. package/dist/database/databases.service.js +150 -35
  49. package/dist/database/databases.service.js.map +1 -1
  50. package/dist/database/types/dashboard.interface.d.ts +74 -0
  51. package/dist/database/types/dashboard.interface.js +7 -0
  52. package/dist/database/types/dashboard.interface.js.map +1 -0
  53. package/dist/database/types/index.d.ts +1 -0
  54. package/dist/graph/graphs.service.d.ts +50 -12
  55. package/dist/graph/graphs.service.js +689 -203
  56. package/dist/graph/graphs.service.js.map +1 -1
  57. package/dist/graph/types/connection.interface.d.ts +2 -2
  58. package/dist/index.d.ts +286 -4
  59. package/dist/index.js +370 -21
  60. package/dist/index.js.map +1 -1
  61. package/dist/logs/logs.types.d.ts +16 -3
  62. package/dist/logs/logs.types.js +11 -0
  63. package/dist/logs/logs.types.js.map +1 -1
  64. package/dist/notifications/notifications.service.d.ts +3 -0
  65. package/dist/notifications/notifications.service.js +57 -14
  66. package/dist/notifications/notifications.service.js.map +1 -1
  67. package/dist/notifications/types/notifications.types.d.ts +50 -0
  68. package/dist/processor/services/processor.service.d.ts +132 -8
  69. package/dist/processor/services/processor.service.js +1174 -267
  70. package/dist/processor/services/processor.service.js.map +1 -1
  71. package/dist/processor/utils/processor.utils.d.ts +5 -0
  72. package/dist/processor/utils/processor.utils.js +65 -12
  73. package/dist/processor/utils/processor.utils.js.map +1 -1
  74. package/dist/processor/utils/storage.util.js +11 -2
  75. package/dist/processor/utils/storage.util.js.map +1 -1
  76. package/dist/products/services/products.service.d.ts +19 -2
  77. package/dist/products/services/products.service.js +388 -54
  78. package/dist/products/services/products.service.js.map +1 -1
  79. package/dist/products/validators/joi-validators/create.productFeature.validator.js +1 -1
  80. package/dist/products/validators/joi-validators/create.productJob.validator.js +2 -2
  81. package/dist/products/validators/joi-validators/create.productJob.validator.js.map +1 -1
  82. package/dist/products/validators/joi-validators/create.productMessageBrokerTopic.validator.js +1 -0
  83. package/dist/products/validators/joi-validators/create.productMessageBrokerTopic.validator.js.map +1 -1
  84. package/dist/products/validators/joi-validators/create.productNotification.validator.js +23 -12
  85. package/dist/products/validators/joi-validators/create.productNotification.validator.js.map +1 -1
  86. package/dist/resilience/fallback.service.d.ts +1 -0
  87. package/dist/resilience/fallback.service.js +2 -0
  88. package/dist/resilience/fallback.service.js.map +1 -1
  89. package/dist/resilience/quota.service.d.ts +1 -0
  90. package/dist/resilience/quota.service.js +2 -0
  91. package/dist/resilience/quota.service.js.map +1 -1
  92. package/dist/secrets/secrets.resolver.js +4 -1
  93. package/dist/secrets/secrets.resolver.js.map +1 -1
  94. package/dist/secrets/secrets.service.js +0 -12
  95. package/dist/secrets/secrets.service.js.map +1 -1
  96. package/dist/secrets/secrets.types.d.ts +3 -3
  97. package/dist/secrets/secrets.types.js +5 -5
  98. package/dist/secrets/secrets.types.js.map +1 -1
  99. package/dist/sessions/index.d.ts +1 -1
  100. package/dist/sessions/index.js +4 -1
  101. package/dist/sessions/index.js.map +1 -1
  102. package/dist/sessions/sessions.helper.d.ts +23 -3
  103. package/dist/sessions/sessions.helper.js +20 -3
  104. package/dist/sessions/sessions.helper.js.map +1 -1
  105. package/dist/sessions/sessions.resolver.d.ts +31 -0
  106. package/dist/sessions/sessions.resolver.js +230 -1
  107. package/dist/sessions/sessions.resolver.js.map +1 -1
  108. package/dist/sessions/sessions.service.d.ts +18 -2
  109. package/dist/sessions/sessions.service.js +121 -57
  110. package/dist/sessions/sessions.service.js.map +1 -1
  111. package/dist/sessions/types/index.d.ts +65 -21
  112. package/dist/storage/storage.service.d.ts +3 -0
  113. package/dist/storage/storage.service.js +179 -39
  114. package/dist/storage/storage.service.js.map +1 -1
  115. package/dist/types/index.types.d.ts +2 -0
  116. package/dist/types/inputs.types.d.ts +1 -0
  117. package/dist/types/inputs.types.js +3 -2
  118. package/dist/types/inputs.types.js.map +1 -1
  119. package/dist/types/processor.types.d.ts +72 -6
  120. package/dist/types/processor.types.js.map +1 -1
  121. package/dist/types/productsBuilder.types.d.ts +10 -0
  122. package/dist/types/productsBuilder.types.js +4 -0
  123. package/dist/types/productsBuilder.types.js.map +1 -1
  124. package/dist/vector/adapters/weaviate.adapter.js +22 -6
  125. package/dist/vector/adapters/weaviate.adapter.js.map +1 -1
  126. package/dist/vector/vector-database.service.d.ts +4 -2
  127. package/dist/vector/vector-database.service.js +71 -29
  128. package/dist/vector/vector-database.service.js.map +1 -1
  129. package/dist/workflows/types/workflows.types.d.ts +61 -3
  130. package/dist/workflows/types/workflows.types.js.map +1 -1
  131. package/dist/workflows/workflow-builder.js +17 -2
  132. package/dist/workflows/workflow-builder.js.map +1 -1
  133. package/dist/workflows/workflow-executor.d.ts +97 -18
  134. package/dist/workflows/workflow-executor.js +1449 -244
  135. package/dist/workflows/workflow-executor.js.map +1 -1
  136. package/dist/workflows/workflows.service.d.ts +2 -0
  137. package/dist/workflows/workflows.service.js +538 -74
  138. package/dist/workflows/workflows.service.js.map +1 -1
  139. package/package.json +11 -1
  140. package/dist/processor/services/fallback.service.d.ts +0 -5
  141. package/dist/processor/services/fallback.service.js +0 -43
  142. package/dist/processor/services/fallback.service.js.map +0 -1
  143. package/dist/processor/services/messagebrokers/aws-sqs.service.d.ts +0 -15
  144. package/dist/processor/services/messagebrokers/aws-sqs.service.js +0 -77
  145. package/dist/processor/services/messagebrokers/aws-sqs.service.js.map +0 -1
  146. package/dist/processor/services/messagebrokers/google-pubsub.service.d.ts +0 -16
  147. package/dist/processor/services/messagebrokers/google-pubsub.service.js +0 -34
  148. package/dist/processor/services/messagebrokers/google-pubsub.service.js.map +0 -1
  149. package/dist/processor/services/messagebrokers/index.d.ts +0 -3
  150. package/dist/processor/services/messagebrokers/index.js +0 -26
  151. package/dist/processor/services/messagebrokers/index.js.map +0 -1
  152. package/dist/processor/services/messagebrokers/kafka.service.d.ts +0 -14
  153. package/dist/processor/services/messagebrokers/kafka.service.js +0 -45
  154. package/dist/processor/services/messagebrokers/kafka.service.js.map +0 -1
  155. package/dist/processor/services/messagebrokers/messagebrokers.type.d.ts +0 -6
  156. package/dist/processor/services/messagebrokers/messagebrokers.type.js +0 -3
  157. package/dist/processor/services/messagebrokers/messagebrokers.type.js.map +0 -1
  158. package/dist/processor/services/messagebrokers/rabbitmq.service.d.ts +0 -14
  159. package/dist/processor/services/messagebrokers/rabbitmq.service.js +0 -67
  160. package/dist/processor/services/messagebrokers/rabbitmq.service.js.map +0 -1
  161. package/dist/processor/services/messagebrokers/redis.service.d.ts +0 -18
  162. package/dist/processor/services/messagebrokers/redis.service.js +0 -82
  163. package/dist/processor/services/messagebrokers/redis.service.js.map +0 -1
  164. package/dist/processor/services/quota.service.d.ts +0 -15
  165. package/dist/processor/services/quota.service.js +0 -63
  166. package/dist/processor/services/quota.service.js.map +0 -1
  167. package/dist/test/index.d.ts +0 -3
  168. package/dist/test/index.js +0 -11
  169. package/dist/test/index.js.map +0 -1
  170. package/dist/test/test.appBuilder.d.ts +0 -0
  171. package/dist/test/test.appBuilder.js +0 -1
  172. package/dist/test/test.appBuilder.js.map +0 -1
  173. package/dist/test/test.broker.kafka.d.ts +0 -1
  174. package/dist/test/test.broker.kafka.js +0 -172
  175. package/dist/test/test.broker.kafka.js.map +0 -1
  176. package/dist/test/test.broker.nats.d.ts +0 -1
  177. package/dist/test/test.broker.nats.js +0 -193
  178. package/dist/test/test.broker.nats.js.map +0 -1
  179. package/dist/test/test.broker.pubsub.d.ts +0 -1
  180. package/dist/test/test.broker.pubsub.js +0 -171
  181. package/dist/test/test.broker.pubsub.js.map +0 -1
  182. package/dist/test/test.broker.rabbitmq.d.ts +0 -1
  183. package/dist/test/test.broker.rabbitmq.js +0 -164
  184. package/dist/test/test.broker.rabbitmq.js.map +0 -1
  185. package/dist/test/test.broker.redis.d.ts +0 -1
  186. package/dist/test/test.broker.redis.js +0 -168
  187. package/dist/test/test.broker.redis.js.map +0 -1
  188. package/dist/test/test.broker.sqs.d.ts +0 -1
  189. package/dist/test/test.broker.sqs.js +0 -158
  190. package/dist/test/test.broker.sqs.js.map +0 -1
  191. package/dist/test/test.caches.d.ts +0 -1
  192. package/dist/test/test.caches.js +0 -231
  193. package/dist/test/test.caches.js.map +0 -1
  194. package/dist/test/test.database.d.ts +0 -1
  195. package/dist/test/test.database.dynamo.d.ts +0 -1
  196. package/dist/test/test.database.dynamo.js +0 -265
  197. package/dist/test/test.database.dynamo.js.map +0 -1
  198. package/dist/test/test.database.js +0 -140
  199. package/dist/test/test.database.js.map +0 -1
  200. package/dist/test/test.database.mongo.d.ts +0 -1
  201. package/dist/test/test.database.mongo.js +0 -371
  202. package/dist/test/test.database.mongo.js.map +0 -1
  203. package/dist/test/test.database.mysql.d.ts +0 -1
  204. package/dist/test/test.database.mysql.js +0 -415
  205. package/dist/test/test.database.mysql.js.map +0 -1
  206. package/dist/test/test.database.postgres.d.ts +0 -1
  207. package/dist/test/test.database.postgres.js +0 -412
  208. package/dist/test/test.database.postgres.js.map +0 -1
  209. package/dist/test/test.email.brevo.d.ts +0 -1
  210. package/dist/test/test.email.brevo.js +0 -326
  211. package/dist/test/test.email.brevo.js.map +0 -1
  212. package/dist/test/test.email.mailgun.d.ts +0 -1
  213. package/dist/test/test.email.mailgun.js +0 -352
  214. package/dist/test/test.email.mailgun.js.map +0 -1
  215. package/dist/test/test.email.postmark.d.ts +0 -1
  216. package/dist/test/test.email.postmark.js +0 -316
  217. package/dist/test/test.email.postmark.js.map +0 -1
  218. package/dist/test/test.email.sendgrid.d.ts +0 -1
  219. package/dist/test/test.email.sendgrid.js +0 -365
  220. package/dist/test/test.email.sendgrid.js.map +0 -1
  221. package/dist/test/test.email.smtp.d.ts +0 -1
  222. package/dist/test/test.email.smtp.js +0 -323
  223. package/dist/test/test.email.smtp.js.map +0 -1
  224. package/dist/test/test.graph.arangodb.d.ts +0 -1
  225. package/dist/test/test.graph.arangodb.js +0 -358
  226. package/dist/test/test.graph.arangodb.js.map +0 -1
  227. package/dist/test/test.graph.memgraph.d.ts +0 -1
  228. package/dist/test/test.graph.memgraph.js +0 -320
  229. package/dist/test/test.graph.memgraph.js.map +0 -1
  230. package/dist/test/test.graph.neo4j.d.ts +0 -1
  231. package/dist/test/test.graph.neo4j.js +0 -218
  232. package/dist/test/test.graph.neo4j.js.map +0 -1
  233. package/dist/test/test.graph.neptune.d.ts +0 -1
  234. package/dist/test/test.graph.neptune.js +0 -331
  235. package/dist/test/test.graph.neptune.js.map +0 -1
  236. package/dist/test/test.health.d.ts +0 -0
  237. package/dist/test/test.health.js +0 -1
  238. package/dist/test/test.health.js.map +0 -1
  239. package/dist/test/test.import.d.ts +0 -0
  240. package/dist/test/test.import.js +0 -1
  241. package/dist/test/test.import.js.map +0 -1
  242. package/dist/test/test.import.openapi.d.ts +0 -0
  243. package/dist/test/test.import.openapi.js +0 -1
  244. package/dist/test/test.import.openapi.js.map +0 -1
  245. package/dist/test/test.imports.d.ts +0 -1
  246. package/dist/test/test.imports.js +0 -21
  247. package/dist/test/test.imports.js.map +0 -1
  248. package/dist/test/test.logs.d.ts +0 -0
  249. package/dist/test/test.logs.js +0 -1
  250. package/dist/test/test.logs.js.map +0 -1
  251. package/dist/test/test.notifications.d.ts +0 -1
  252. package/dist/test/test.notifications.js +0 -198
  253. package/dist/test/test.notifications.js.map +0 -1
  254. package/dist/test/test.notifiers.d.ts +0 -0
  255. package/dist/test/test.notifiers.js +0 -1
  256. package/dist/test/test.notifiers.js.map +0 -1
  257. package/dist/test/test.processor.d.ts +0 -0
  258. package/dist/test/test.processor.js +0 -1
  259. package/dist/test/test.processor.js.map +0 -1
  260. package/dist/test/test.productBuilder.d.ts +0 -0
  261. package/dist/test/test.productBuilder.js +0 -1
  262. package/dist/test/test.productBuilder.js.map +0 -1
  263. package/dist/test/test.products.d.ts +0 -0
  264. package/dist/test/test.products.js +0 -1
  265. package/dist/test/test.products.js.map +0 -1
  266. package/dist/test/test.push.expo.d.ts +0 -1
  267. package/dist/test/test.push.expo.js +0 -442
  268. package/dist/test/test.push.expo.js.map +0 -1
  269. package/dist/test/test.push.firebase.d.ts +0 -1
  270. package/dist/test/test.push.firebase.js +0 -409
  271. package/dist/test/test.push.firebase.js.map +0 -1
  272. package/dist/test/test.session.d.ts +0 -1
  273. package/dist/test/test.session.js +0 -299
  274. package/dist/test/test.session.js.map +0 -1
  275. package/dist/test/test.sms.nexmo.d.ts +0 -1
  276. package/dist/test/test.sms.nexmo.js +0 -278
  277. package/dist/test/test.sms.nexmo.js.map +0 -1
  278. package/dist/test/test.sms.twilio.d.ts +0 -1
  279. package/dist/test/test.sms.twilio.js +0 -275
  280. package/dist/test/test.sms.twilio.js.map +0 -1
  281. package/dist/test/test.storage.d.ts +0 -1
  282. package/dist/test/test.storage.js +0 -202
  283. package/dist/test/test.storage.js.map +0 -1
  284. package/dist/test/test.triggers.d.ts +0 -1
  285. package/dist/test/test.triggers.js +0 -314
  286. package/dist/test/test.triggers.js.map +0 -1
  287. package/dist/test/test.vector.pinecone.d.ts +0 -1
  288. package/dist/test/test.vector.pinecone.js +0 -238
  289. package/dist/test/test.vector.pinecone.js.map +0 -1
  290. package/dist/test/test.vector.qdrant.d.ts +0 -1
  291. package/dist/test/test.vector.qdrant.js +0 -307
  292. package/dist/test/test.vector.qdrant.js.map +0 -1
  293. package/dist/test/test.vector.weaviate.d.ts +0 -1
  294. package/dist/test/test.vector.weaviate.js +0 -325
  295. package/dist/test/test.vector.weaviate.js.map +0 -1
@@ -1,412 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const database_1 = require("../database");
7
- const index_1 = __importDefault(require("./index"));
8
- /**
9
- * PostgreSQL Database Tests
10
- *
11
- * Comprehensive tests for PostgreSQL database operations:
12
- * - Connection management
13
- * - Schema operations (create, alter, drop tables)
14
- * - CRUD operations (insert, query, update, delete)
15
- * - Aggregations (count, sum, avg, min, max)
16
- * - Transactions
17
- * - Pre-save operations (trim, hash, encrypt, normalize)
18
- * - Raw queries
19
- * - Migrations
20
- */
21
- const { databases } = index_1.default;
22
- databases.create({
23
- product: 'ductape:rematch',
24
- name: 'PostgresDB',
25
- tag: 'postgres-db',
26
- type: database_1.DatabaseType.POSTGRESQL,
27
- envs: [{
28
- slug: 'prd',
29
- connection_url: 'postgres://avnadmin:AVNS_EslAIqyyBg9876k5_NQ@pg-399355e6-ductapetech-postgres.e.aivencloud.com:24999/rematch-prd?sslmode=require'
30
- }, {
31
- slug: 'dev',
32
- connection_url: 'postgres://avnadmin:AVNS_EslAIqyyBg9876k5_NQ@pg-399355e6-ductapetech-postgres.e.aivencloud.com:24999/rematch-dev?sslmode=require'
33
- }]
34
- }).then(() => {
35
- console.log('PostgreSQL database created');
36
- });
37
- // Start timing
38
- const startTime = performance.now();
39
- console.log(`[${new Date().toISOString()}] Starting PostgreSQL database operations...`);
40
- /*databases
41
- .connect({
42
- env: 'prd',
43
- product: 'ductape:rematch',
44
- database: 'postgres-db', // Your PostgreSQL database tag
45
- })
46
- .then(async (connection) => {
47
- const connectTime = performance.now();
48
- console.log(`[TIMING] Connect: ${(connectTime - startTime).toFixed(2)}ms`);
49
- console.log('PostgreSQL connection established:', connection);
50
-
51
- // ==================== SCHEMA OPERATIONS ====================
52
-
53
- console.log('\n--- Schema Operations ---');
54
-
55
- // List existing tables
56
- const listStart = performance.now();
57
- const tables = await databases.schema.list();
58
- console.log(`[TIMING] Schema list: ${(performance.now() - listStart).toFixed(2)}ms`);
59
- console.log('Existing tables:', tables);
60
-
61
- // Drop test table if exists
62
- if (tables.includes('test_users')) {
63
- console.log('Dropping existing "test_users" table...');
64
- await databases.schema.drop('test_users');
65
- }
66
-
67
- // Create table with PostgreSQL-specific types
68
- console.log('Creating table "test_users"...');
69
- const createStart = performance.now();
70
- await databases.schema.create('test_users', {
71
- id: { type: 'serial', primaryKey: true },
72
- uuid: { type: 'uuid', default: 'gen_random_uuid()' },
73
- name: { type: 'varchar(255)', nullable: false },
74
- email: { type: 'varchar(255)', unique: true, nullable: false },
75
- password: { type: 'varchar(255)' },
76
- age: { type: 'integer' },
77
- balance: { type: 'decimal(10,2)', default: '0.00' },
78
- metadata: { type: 'jsonb' },
79
- tags: { type: 'text[]' },
80
- active: { type: 'boolean', default: true },
81
- created_at: { type: 'timestamp', default: 'now()' },
82
- updated_at: { type: 'timestamp', default: 'now()' },
83
- });
84
- console.log(`[TIMING] Schema create: ${(performance.now() - createStart).toFixed(2)}ms`);
85
-
86
- // Get table schema
87
- const schemaStart = performance.now();
88
- const tableSchema = await databases.schema.describe('test_users');
89
- console.log(`[TIMING] Schema describe: ${(performance.now() - schemaStart).toFixed(2)}ms`);
90
- console.log('Table schema:', JSON.stringify(tableSchema, null, 2));
91
-
92
- // Create index
93
- console.log('Creating index on email...');
94
- const indexStart = performance.now();
95
- await databases.schema.createIndex('test_users', {
96
- name: 'idx_test_users_email',
97
- columns: ['email'],
98
- unique: true,
99
- });
100
- console.log(`[TIMING] Create index: ${(performance.now() - indexStart).toFixed(2)}ms`);
101
-
102
- // ==================== INSERT OPERATIONS ====================
103
-
104
- console.log('\n--- Insert Operations ---');
105
-
106
- // Generate unique test data
107
- const timestamp = Date.now();
108
- const testEmail = `test.user.${timestamp}@example.com`;
109
-
110
- // Insert with pre-save operations
111
- console.log('Inserting user with pre-save operations...');
112
- const insertStart = performance.now();
113
- const insertResult = await databases.insert({
114
- table: 'test_users',
115
- data: {
116
- name: ' John Doe ',
117
- email: testEmail.toUpperCase(),
118
- password: 'password123',
119
- age: 30,
120
- balance: 1000.50,
121
- metadata: { role: 'admin', preferences: { theme: 'dark' } },
122
- tags: ['developer', 'nodejs'],
123
- },
124
- returning: true,
125
- preSave: [
126
- PreSave.trim('name'),
127
- PreSave.normalizeEmail('email'),
128
- PreSave.hash('password', { algorithm: 'sha256' }),
129
- ],
130
- });
131
- console.log(`[TIMING] Insert: ${(performance.now() - insertStart).toFixed(2)}ms`);
132
- console.log('Inserted user:', JSON.stringify(insertResult, null, 2));
133
-
134
- // Bulk insert
135
- console.log('Bulk inserting users...');
136
- const bulkStart = performance.now();
137
- const bulkResult = await databases.insert({
138
- table: 'test_users',
139
- data: [
140
- { name: 'Jane Smith', email: `jane.${timestamp}@example.com`, age: 25, balance: 500.00 },
141
- { name: 'Bob Wilson', email: `bob.${timestamp}@example.com`, age: 35, balance: 1500.75 },
142
- { name: 'Alice Brown', email: `alice.${timestamp}@example.com`, age: 28, balance: 750.25 },
143
- ],
144
- returning: true,
145
- });
146
- console.log(`[TIMING] Bulk insert: ${(performance.now() - bulkStart).toFixed(2)}ms`);
147
- console.log(`Inserted ${bulkResult.count} users`);
148
-
149
- // Upsert (ON CONFLICT)
150
- console.log('Testing upsert (ON CONFLICT)...');
151
- const upsertStart = performance.now();
152
- const upsertResult = await databases.insert({
153
- table: 'test_users',
154
- data: { name: 'John Doe Updated', email: testEmail, age: 31 },
155
- onConflict: {
156
- columns: ['email'],
157
- action: 'update',
158
- update: ['name', 'age'],
159
- },
160
- returning: true,
161
- });
162
- console.log(`[TIMING] Upsert: ${(performance.now() - upsertStart).toFixed(2)}ms`);
163
- console.log('Upsert result:', JSON.stringify(upsertResult, null, 2));
164
-
165
- // ==================== QUERY OPERATIONS ====================
166
-
167
- console.log('\n--- Query Operations ---');
168
-
169
- // Simple query
170
- console.log('Querying all users...');
171
- const queryStart = performance.now();
172
- const allUsers = await databases.query({
173
- table: 'test_users',
174
- orderBy: [{ column: 'created_at', order: 'DESC' }],
175
- });
176
- console.log(`[TIMING] Query all: ${(performance.now() - queryStart).toFixed(2)}ms`);
177
- console.log(`Found ${allUsers.data.length} users`);
178
-
179
- // Query with where clause
180
- console.log('Querying users with age > 27...');
181
- const whereStart = performance.now();
182
- const filteredUsers = await databases.query({
183
- table: 'test_users',
184
- where: { age: Operators.gt(27) },
185
- select: ['id', 'name', 'email', 'age'],
186
- });
187
- console.log(`[TIMING] Query with where: ${(performance.now() - whereStart).toFixed(2)}ms`);
188
- console.log('Filtered users:', JSON.stringify(filteredUsers.data, null, 2));
189
-
190
- // Query with complex operators
191
- console.log('Complex query with multiple conditions...');
192
- const complexStart = performance.now();
193
- const complexQuery = await databases.query({
194
- table: 'test_users',
195
- where: {
196
- $and: [
197
- { age: Operators.gte(25) },
198
- { balance: Operators.lt(1000) },
199
- { active: true },
200
- ],
201
- },
202
- orderBy: [{ column: 'balance', order: 'DESC' }],
203
- limit: 10,
204
- });
205
- console.log(`[TIMING] Complex query: ${(performance.now() - complexStart).toFixed(2)}ms`);
206
- console.log('Complex query results:', complexQuery.data.length);
207
-
208
- // Query with LIKE
209
- console.log('Query with LIKE operator...');
210
- const likeStart = performance.now();
211
- const likeQuery = await databases.query({
212
- table: 'test_users',
213
- where: { email: Operators.like('%example.com') },
214
- });
215
- console.log(`[TIMING] LIKE query: ${(performance.now() - likeStart).toFixed(2)}ms`);
216
- console.log('LIKE query results:', likeQuery.data.length);
217
-
218
- // Query with IN
219
- console.log('Query with IN operator...');
220
- const inStart = performance.now();
221
- const inQuery = await databases.query({
222
- table: 'test_users',
223
- where: { age: Operators.in([25, 30, 35]) },
224
- });
225
- console.log(`[TIMING] IN query: ${(performance.now() - inStart).toFixed(2)}ms`);
226
- console.log('IN query results:', inQuery.data.length);
227
-
228
- // ==================== UPDATE OPERATIONS ====================
229
-
230
- console.log('\n--- Update Operations ---');
231
-
232
- // Simple update
233
- console.log('Updating user balance...');
234
- const updateStart = performance.now();
235
- const updateResult = await databases.update({
236
- table: 'test_users',
237
- data: { balance: 2000.00, updated_at: new Date() },
238
- where: { email: testEmail },
239
- returning: true,
240
- });
241
- console.log(`[TIMING] Update: ${(performance.now() - updateStart).toFixed(2)}ms`);
242
- console.log('Update result:', JSON.stringify(updateResult, null, 2));
243
-
244
- // Increment update
245
- console.log('Incrementing all balances by 100...');
246
- const incStart = performance.now();
247
- const incResult = await databases.update({
248
- table: 'test_users',
249
- data: { balance: Operators.increment(100) },
250
- where: { active: true },
251
- });
252
- console.log(`[TIMING] Increment update: ${(performance.now() - incStart).toFixed(2)}ms`);
253
- console.log(`Updated ${incResult.count} rows`);
254
-
255
- // ==================== AGGREGATION OPERATIONS ====================
256
-
257
- console.log('\n--- Aggregation Operations ---');
258
-
259
- // Count
260
- const countStart = performance.now();
261
- const count = await databases.count({ table: 'test_users' });
262
- console.log(`[TIMING] Count: ${(performance.now() - countStart).toFixed(2)}ms`);
263
- console.log('Total users:', count);
264
-
265
- // Count with where
266
- const countWhereStart = performance.now();
267
- const activeCount = await databases.count({
268
- table: 'test_users',
269
- where: { active: true },
270
- });
271
- console.log(`[TIMING] Count with where: ${(performance.now() - countWhereStart).toFixed(2)}ms`);
272
- console.log('Active users:', activeCount);
273
-
274
- // Sum
275
- const sumStart = performance.now();
276
- const totalBalance = await databases.sum({
277
- table: 'test_users',
278
- column: 'balance',
279
- });
280
- console.log(`[TIMING] Sum: ${(performance.now() - sumStart).toFixed(2)}ms`);
281
- console.log('Total balance:', totalBalance);
282
-
283
- // Average
284
- const avgStart = performance.now();
285
- const avgAge = await databases.avg({
286
- table: 'test_users',
287
- column: 'age',
288
- });
289
- console.log(`[TIMING] Avg: ${(performance.now() - avgStart).toFixed(2)}ms`);
290
- console.log('Average age:', avgAge);
291
-
292
- // Min/Max
293
- const minStart = performance.now();
294
- const minAge = await databases.min({ table: 'test_users', column: 'age' });
295
- console.log(`[TIMING] Min: ${(performance.now() - minStart).toFixed(2)}ms`);
296
- console.log('Minimum age:', minAge);
297
-
298
- const maxStart = performance.now();
299
- const maxBalance = await databases.max({ table: 'test_users', column: 'balance' });
300
- console.log(`[TIMING] Max: ${(performance.now() - maxStart).toFixed(2)}ms`);
301
- console.log('Maximum balance:', maxBalance);
302
-
303
- // Group by aggregation
304
- const groupStart = performance.now();
305
- const groupResult = await databases.aggregate({
306
- table: 'test_users',
307
- operations: [
308
- { type: 'count', alias: 'user_count' },
309
- { type: 'avg', column: 'balance', alias: 'avg_balance' },
310
- ],
311
- groupBy: ['active'],
312
- });
313
- console.log(`[TIMING] Group by: ${(performance.now() - groupStart).toFixed(2)}ms`);
314
- console.log('Group by results:', JSON.stringify(groupResult, null, 2));
315
-
316
- // ==================== RAW QUERIES ====================
317
-
318
- console.log('\n--- Raw Queries ---');
319
-
320
- // PostgreSQL-specific raw query
321
- const rawStart = performance.now();
322
- const rawResult = await databases.raw({
323
- query: `
324
- SELECT
325
- name,
326
- email,
327
- age,
328
- balance,
329
- CASE
330
- WHEN balance > 1000 THEN 'high'
331
- WHEN balance > 500 THEN 'medium'
332
- ELSE 'low'
333
- END as balance_tier
334
- FROM test_users
335
- WHERE age > $1
336
- ORDER BY balance DESC
337
- `,
338
- params: [25],
339
- });
340
- console.log(`[TIMING] Raw query: ${(performance.now() - rawStart).toFixed(2)}ms`);
341
- console.log('Raw query results:', JSON.stringify(rawResult.data, null, 2));
342
-
343
- // ==================== TRANSACTION ====================
344
-
345
- console.log('\n--- Transaction ---');
346
-
347
- const txStart = performance.now();
348
- try {
349
- const tx = await databases.beginTransaction({ isolationLevel: 'serializable' });
350
-
351
- // Insert within transaction
352
- await databases.insert({
353
- table: 'test_users',
354
- data: { name: 'TX User', email: `tx.${timestamp}@example.com`, age: 40 },
355
- transaction: tx,
356
- });
357
-
358
- // Update within transaction
359
- await databases.update({
360
- table: 'test_users',
361
- data: { balance: Operators.increment(50) },
362
- where: { email: `tx.${timestamp}@example.com` },
363
- transaction: tx,
364
- });
365
-
366
- // Commit
367
- await tx.commit();
368
- console.log(`[TIMING] Transaction: ${(performance.now() - txStart).toFixed(2)}ms`);
369
- console.log('Transaction committed successfully');
370
- } catch (error) {
371
- console.log('Transaction error:', error);
372
- }
373
-
374
- // ==================== DELETE OPERATIONS ====================
375
-
376
- console.log('\n--- Delete Operations ---');
377
-
378
- // Delete specific record
379
- const deleteStart = performance.now();
380
- const deleteResult = await databases.delete({
381
- table: 'test_users',
382
- where: { email: `tx.${timestamp}@example.com` },
383
- returning: true,
384
- });
385
- console.log(`[TIMING] Delete: ${(performance.now() - deleteStart).toFixed(2)}ms`);
386
- console.log(`Deleted ${deleteResult.count} rows`);
387
-
388
- // ==================== CLEANUP ====================
389
-
390
- console.log('\n--- Cleanup ---');
391
- const cleanupStart = performance.now();
392
-
393
- // Drop index
394
- await databases.schema.dropIndex('test_users', 'idx_test_users_email');
395
- console.log('Dropped index');
396
-
397
- // Drop table
398
- await databases.schema.drop('test_users');
399
- console.log('Dropped table');
400
-
401
- console.log(`[TIMING] Cleanup: ${(performance.now() - cleanupStart).toFixed(2)}ms`);
402
-
403
- // ==================== SUMMARY ====================
404
-
405
- const totalTime = performance.now() - startTime;
406
- console.log(`\n[TIMING SUMMARY]`);
407
- console.log(` Total time: ${totalTime.toFixed(2)}ms`);
408
- })
409
- .catch((err) => {
410
- console.error('Error in PostgreSQL operations:', err);
411
- });*/
412
- //# sourceMappingURL=test.database.postgres.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"test.database.postgres.js","sourceRoot":"","sources":["../../src/test/test.database.postgres.ts"],"names":[],"mappings":";;;;;AAAA,0CAA+D;AAC/D,oDAA8B;AAE9B;;;;;;;;;;;;GAYG;AAEH,MAAM,EAAE,SAAS,EAAE,GAAG,eAAO,CAAC;AAE9B,SAAS,CAAC,MAAM,CAAC;IACf,OAAO,EAAE,iBAAiB;IAC1B,IAAI,EAAE,YAAY;IAClB,GAAG,EAAE,aAAa;IAClB,IAAI,EAAE,uBAAY,CAAC,UAAU;IAC7B,IAAI,EAAE,CAAC;YACL,IAAI,EAAE,KAAK;YACX,cAAc,EAAE,kIAAkI;SACnJ,EAAC;YACA,IAAI,EAAE,KAAK;YACX,cAAc,EAAE,kIAAkI;SACnJ,CAAC;CACH,CAAC,CAAC,IAAI,CAAC,GAAE,EAAE;IACV,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;AAC7C,CAAC,CAAC,CAAA;AAEF,eAAe;AACf,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;AACpC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,8CAA8C,CAAC,CAAC;AAExF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmXO"}
@@ -1 +0,0 @@
1
- export {};