@starbemtech/star-db-query-builder 1.0.34 → 1.0.36

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.
@@ -1,6 +1,6 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
- <coverage generated="1741700793027" clover="3.2.0">
3
- <project timestamp="1741700793027" name="All files">
2
+ <coverage generated="1745450914749" clover="3.2.0">
3
+ <project timestamp="1745450914749" name="All files">
4
4
  <metrics statements="0" coveredstatements="0" conditionals="0" coveredconditionals="0" methods="0" coveredmethods="0" elements="0" coveredelements="0" complexity="0" loc="0" ncloc="0" packages="0" files="0" classes="0"/>
5
5
  </project>
6
6
  </coverage>
@@ -86,7 +86,7 @@
86
86
  <div class='footer quiet pad2 space-top1 center small'>
87
87
  Code coverage generated by
88
88
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
89
- at 2025-03-11T13:46:33.021Z
89
+ at 2025-04-23T23:28:34.744Z
90
90
  </div>
91
91
  <script src="prettify.js"></script>
92
92
  <script>
package/dist/index.d.ts CHANGED
@@ -3,5 +3,5 @@ import { PoolOptions as MySqlPoolOptions } from 'mysql2';
3
3
  import { Conditions as TypeConditions } from './src/default/types';
4
4
  export * from './src/db/initDb';
5
5
  export * from './src/default/genericRepository';
6
- export * from './src/monitor/monitor';
6
+ export * from './src/services/payment';
7
7
  export type { PgPoolConfig, MySqlPoolOptions, TypeConditions };
package/dist/index.js CHANGED
@@ -18,6 +18,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
18
18
  __exportStar(require("./src/db/initDb"), exports);
19
19
  // Generic Repository
20
20
  __exportStar(require("./src/default/genericRepository"), exports);
21
- // Monitor
22
- __exportStar(require("./src/monitor/monitor"), exports);
21
+ // Services Repository
22
+ __exportStar(require("./src/services/payment"), exports);
23
23
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAIA,UAAU;AACV,kDAA+B;AAE/B,qBAAqB;AACrB,kEAA+C;AAE/C,UAAU;AACV,wDAAqC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAIA,UAAU;AACV,kDAA+B;AAE/B,qBAAqB;AACrB,kEAA+C;AAE/C,sBAAsB;AACtB,yDAAsC"}
@@ -1,10 +1,7 @@
1
1
  import { IDatabaseClient } from './IDatabaseClient';
2
- import { DBClients, RetryOptions } from '../default/types';
2
+ import { DBClients } from '../default/types';
3
3
  export declare const initDb: <T>(config: {
4
- name: string;
5
4
  type: DBClients;
6
5
  options: T;
7
- retryOptions?: RetryOptions;
8
- }) => Promise<void>;
9
- export declare const getDbClient: (name: string) => IDatabaseClient;
10
- export declare const getAllDbClients: () => Record<string, IDatabaseClient>;
6
+ }) => void;
7
+ export declare const getDbClient: () => IDatabaseClient;
@@ -1,42 +1,36 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getAllDbClients = exports.getDbClient = exports.initDb = void 0;
3
+ exports.getDbClient = exports.initDb = void 0;
4
4
  const pg_1 = require("pg");
5
5
  const promise_1 = require("mysql2/promise");
6
6
  const pgClient_1 = require("./pgClient");
7
7
  const mysqlClient_1 = require("./mysqlClient");
8
- const dbClients = {};
9
- const initDb = async (config) => {
8
+ let dbClient = null;
9
+ const initDb = (config) => {
10
10
  if (!config.type)
11
11
  throw new Error('Type is required. Accept values: pg | mysql');
12
12
  if (!config.options)
13
13
  throw new Error('Connection options is required');
14
14
  if (config.type === 'pg') {
15
- const poolConfig = config.options;
16
15
  const pool = new pg_1.Pool(config.options);
17
- dbClients[config.name] = await (0, pgClient_1.createPgClient)(pool, config.retryOptions, poolConfig);
18
- console.log(`@starbemtech/star-db-query-builder: Postgres db client "${config.name}" created successfully`);
16
+ dbClient = (0, pgClient_1.createPgClient)(pool);
17
+ console.log(`@starbemtech/star-db-query-builder: Postgres db client created success`);
19
18
  }
20
19
  else if (config.type === 'mysql') {
21
20
  const pool = (0, promise_1.createPool)(config.options);
22
- dbClients[config.name] = (0, mysqlClient_1.createMysqlClient)(pool, config.retryOptions);
23
- console.info(`@starbemtech/star-db-query-builder: Postgres db client "${config.name}" created successfully`);
21
+ dbClient = (0, mysqlClient_1.createMysqlClient)(pool);
22
+ console.info(`@starbemtech/star-db-query-builder: MySQL db client created success.`);
24
23
  }
25
24
  else {
26
25
  throw new Error('Unsupported database type');
27
26
  }
28
27
  };
29
28
  exports.initDb = initDb;
30
- const getDbClient = (name) => {
31
- const client = dbClients[name];
32
- if (!client) {
33
- throw new Error(`Database client "${name}" is not initialized`);
29
+ const getDbClient = () => {
30
+ if (!dbClient) {
31
+ throw new Error('Database client is not initialized');
34
32
  }
35
- return client;
33
+ return dbClient;
36
34
  };
37
35
  exports.getDbClient = getDbClient;
38
- const getAllDbClients = () => {
39
- return dbClients;
40
- };
41
- exports.getAllDbClients = getAllDbClients;
42
36
  //# sourceMappingURL=initDb.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"initDb.js","sourceRoot":"","sources":["../../../src/db/initDb.ts"],"names":[],"mappings":";;;AAAA,2BAAqC;AACrC,4CAA8D;AAC9D,yCAA2C;AAC3C,+CAAiD;AAIjD,MAAM,SAAS,GAAoC,EAAE,CAAA;AAE9C,MAAM,MAAM,GAAG,KAAK,EAAK,MAK/B,EAAiB,EAAE;IAClB,IAAI,CAAC,MAAM,CAAC,IAAI;QACd,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;IAEhE,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;IAEtE,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QACzB,MAAM,UAAU,GAAG,MAAM,CAAC,OAAgC,CAAA;QAC1D,MAAM,IAAI,GAAG,IAAI,SAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QACrC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,IAAA,yBAAc,EAC3C,IAAI,EACJ,MAAM,CAAC,YAAY,EACnB,UAAU,CACX,CAAA;QAED,OAAO,CAAC,GAAG,CACT,2DAA2D,MAAM,CAAC,IAAI,wBAAwB,CAC/F,CAAA;IACH,CAAC;SAAM,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,IAAA,oBAAe,EAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QAC5C,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAA,+BAAiB,EAAC,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC,CAAA;QAErE,OAAO,CAAC,IAAI,CACV,2DAA2D,MAAM,CAAC,IAAI,wBAAwB,CAC/F,CAAA;IACH,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAA;IAC9C,CAAC;AACH,CAAC,CAAA;AAjCY,QAAA,MAAM,UAiClB;AAEM,MAAM,WAAW,GAAG,CAAC,IAAY,EAAmB,EAAE;IAC3D,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;IAC9B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,oBAAoB,IAAI,sBAAsB,CAAC,CAAA;IACjE,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAPY,QAAA,WAAW,eAOvB;AAEM,MAAM,eAAe,GAAG,GAAoC,EAAE;IACnE,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AAFY,QAAA,eAAe,mBAE3B"}
1
+ {"version":3,"file":"initDb.js","sourceRoot":"","sources":["../../../src/db/initDb.ts"],"names":[],"mappings":";;;AAAA,2BAAmC;AACnC,4CAA8D;AAC9D,yCAA2C;AAC3C,+CAAiD;AAIjD,IAAI,QAAQ,GAA2B,IAAI,CAAA;AAEpC,MAAM,MAAM,GAAG,CAAI,MAAuC,EAAQ,EAAE;IACzE,IAAI,CAAC,MAAM,CAAC,IAAI;QACd,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;IAEhE,IAAI,CAAC,MAAM,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;IAEtE,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,IAAI,SAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QACvC,QAAQ,GAAG,IAAA,yBAAc,EAAC,IAAI,CAAC,CAAA;QAE/B,OAAO,CAAC,GAAG,CACT,wEAAwE,CACzE,CAAA;IACH,CAAC;SAAM,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,IAAA,oBAAe,EAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QAC5C,QAAQ,GAAG,IAAA,+BAAiB,EAAC,IAAI,CAAC,CAAA;QAElC,OAAO,CAAC,IAAI,CACV,sEAAsE,CACvE,CAAA;IACH,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAA;IAC9C,CAAC;AACH,CAAC,CAAA;AAvBY,QAAA,MAAM,UAuBlB;AAEM,MAAM,WAAW,GAAG,GAAoB,EAAE;IAC/C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;IACvD,CAAC;IAED,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA;AANY,QAAA,WAAW,eAMvB"}
@@ -1,4 +1,3 @@
1
1
  import { Pool } from 'mysql2/promise';
2
2
  import { IDatabaseClient } from './IDatabaseClient';
3
- import { RetryOptions } from '../default/types';
4
- export declare const createMysqlClient: (pool: Pool, retryOptions?: RetryOptions) => IDatabaseClient;
3
+ export declare const createMysqlClient: (pool: Pool) => IDatabaseClient;
@@ -1,74 +1,12 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.createMysqlClient = void 0;
7
- const promise_retry_1 = __importDefault(require("promise-retry"));
8
- const monitor_1 = require("../monitor/monitor");
9
- const transientErrorCodes = new Set([
10
- 'ECONNRESET',
11
- 'ETIMEDOUT',
12
- 'PROTOCOL_CONNECTION_LOST',
13
- 'ECONNREFUSED',
14
- ]);
15
- function isTransientError(error) {
16
- return error && error.code && transientErrorCodes.has(error.code);
17
- }
18
- const createMysqlClient = (pool, retryOptions) => {
19
- monitor_1.monitor.emit(monitor_1.MonitorEvents.CONNECTION_CREATED, {
20
- clientType: 'mysql',
21
- poolOptions: pool.config,
22
- });
23
- return {
24
- clientType: 'mysql',
25
- query: async (sql, params) => {
26
- return (0, promise_retry_1.default)(async (retry, attempt) => {
27
- const startTime = Date.now();
28
- try {
29
- monitor_1.monitor.emit(monitor_1.MonitorEvents.QUERY_START, {
30
- clientType: 'mysql',
31
- sql,
32
- params,
33
- attempt,
34
- });
35
- const [rows] = await pool.execute(sql, params);
36
- const elapsedTime = Date.now() - startTime;
37
- monitor_1.monitor.emit(monitor_1.MonitorEvents.QUERY_END, {
38
- clientType: 'mysql',
39
- sql,
40
- params,
41
- attempt,
42
- elapsedTime,
43
- });
44
- return rows;
45
- }
46
- catch (error) {
47
- const elapsedTime = Date.now() - startTime;
48
- monitor_1.monitor.emit(monitor_1.MonitorEvents.QUERY_ERROR, {
49
- clientType: 'mysql',
50
- sql,
51
- params,
52
- attempt,
53
- elapsedTime,
54
- error,
55
- });
56
- if (isTransientError(error)) {
57
- console.warn(`MySQL query attempt ${attempt} failed, retrying...`, error);
58
- monitor_1.monitor.emit(monitor_1.MonitorEvents.RETRY_ATTEMPT, {
59
- clientType: 'mysql',
60
- sql,
61
- params,
62
- attempt,
63
- error,
64
- });
65
- return retry(error);
66
- }
67
- throw error;
68
- }
69
- }, retryOptions);
70
- },
71
- };
72
- };
4
+ const createMysqlClient = (pool) => ({
5
+ clientType: 'mysql',
6
+ query: async (sql, params) => {
7
+ const [rows] = await pool.execute(sql, params);
8
+ return rows;
9
+ },
10
+ });
73
11
  exports.createMysqlClient = createMysqlClient;
74
12
  //# sourceMappingURL=mysqlClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mysqlClient.js","sourceRoot":"","sources":["../../../src/db/mysqlClient.ts"],"names":[],"mappings":";;;;;;AACA,kEAAwC;AAGxC,gDAA2D;AAE3D,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC;IAClC,YAAY;IACZ,WAAW;IACX,0BAA0B;IAC1B,cAAc;CACf,CAAC,CAAA;AAEF,SAAS,gBAAgB,CAAC,KAAU;IAClC,OAAO,KAAK,IAAI,KAAK,CAAC,IAAI,IAAI,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;AACnE,CAAC;AAEM,MAAM,iBAAiB,GAAG,CAC/B,IAAU,EACV,YAA2B,EACV,EAAE;IACnB,iBAAO,CAAC,IAAI,CAAC,uBAAa,CAAC,kBAAkB,EAAE;QAC7C,UAAU,EAAE,OAAO;QACnB,WAAW,EAAE,IAAI,CAAC,MAAM;KACzB,CAAC,CAAA;IAEF,OAAO;QACL,UAAU,EAAE,OAAO;QACnB,KAAK,EAAE,KAAK,EAAK,GAAW,EAAE,MAAc,EAAc,EAAE;YAC1D,OAAO,IAAA,uBAAY,EAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;gBAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;gBAC5B,IAAI,CAAC;oBACH,iBAAO,CAAC,IAAI,CAAC,uBAAa,CAAC,WAAW,EAAE;wBACtC,UAAU,EAAE,OAAO;wBACnB,GAAG;wBACH,MAAM;wBACN,OAAO;qBACR,CAAC,CAAA;oBAEF,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;oBAE9C,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;oBAC1C,iBAAO,CAAC,IAAI,CAAC,uBAAa,CAAC,SAAS,EAAE;wBACpC,UAAU,EAAE,OAAO;wBACnB,GAAG;wBACH,MAAM;wBACN,OAAO;wBACP,WAAW;qBACZ,CAAC,CAAA;oBAEF,OAAO,IAAoB,CAAA;gBAC7B,CAAC;gBAAC,OAAO,KAAU,EAAE,CAAC;oBACpB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;oBAC1C,iBAAO,CAAC,IAAI,CAAC,uBAAa,CAAC,WAAW,EAAE;wBACtC,UAAU,EAAE,OAAO;wBACnB,GAAG;wBACH,MAAM;wBACN,OAAO;wBACP,WAAW;wBACX,KAAK;qBACN,CAAC,CAAA;oBAEF,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;wBAC5B,OAAO,CAAC,IAAI,CACV,uBAAuB,OAAO,sBAAsB,EACpD,KAAK,CACN,CAAA;wBACD,iBAAO,CAAC,IAAI,CAAC,uBAAa,CAAC,aAAa,EAAE;4BACxC,UAAU,EAAE,OAAO;4BACnB,GAAG;4BACH,MAAM;4BACN,OAAO;4BACP,KAAK;yBACN,CAAC,CAAA;wBAEF,OAAO,KAAK,CAAC,KAAK,CAAC,CAAA;oBACrB,CAAC;oBAED,MAAM,KAAK,CAAA;gBACb,CAAC;YACH,CAAC,EAAE,YAAY,CAAC,CAAA;QAClB,CAAC;KACF,CAAA;AACH,CAAC,CAAA;AAlEY,QAAA,iBAAiB,qBAkE7B"}
1
+ {"version":3,"file":"mysqlClient.js","sourceRoot":"","sources":["../../../src/db/mysqlClient.ts"],"names":[],"mappings":";;;AAGO,MAAM,iBAAiB,GAAG,CAAC,IAAU,EAAmB,EAAE,CAAC,CAAC;IACjE,UAAU,EAAE,OAAO;IACnB,KAAK,EAAE,KAAK,EAAK,GAAW,EAAE,MAAc,EAAc,EAAE;QAC1D,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;QAC9C,OAAO,IAAoB,CAAA;IAC7B,CAAC;CACF,CAAC,CAAA;AANW,QAAA,iBAAiB,qBAM5B"}
@@ -1,4 +1,3 @@
1
- import { Pool, PoolConfig } from 'pg';
1
+ import { Pool } from 'pg';
2
2
  import { IDatabaseClient } from './IDatabaseClient';
3
- import { RetryOptions } from '../default/types';
4
- export declare const createPgClient: (pool: Pool, retryOptions?: RetryOptions, poolConfig?: PoolConfig) => Promise<IDatabaseClient>;
3
+ export declare const createPgClient: (pool: Pool) => IDatabaseClient;
@@ -1,95 +1,12 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.createPgClient = void 0;
7
- const promise_retry_1 = __importDefault(require("promise-retry"));
8
- const monitor_1 = require("../monitor/monitor");
9
- const transientErrorCodes = new Set(['ECONNRESET', 'ETIMEDOUT', 'ECONNREFUSED']);
10
- function isTransientError(error) {
11
- return error && error.code && transientErrorCodes.has(error.code);
12
- }
13
- async function ensureUnaccentExtension(pool) {
14
- try {
15
- const checkResult = await pool.query(`
16
- SELECT 1 FROM pg_extension WHERE extname = 'unaccent'
17
- `);
18
- if (checkResult.rows.length === 0) {
19
- await pool.query('CREATE EXTENSION IF NOT EXISTS unaccent');
20
- monitor_1.monitor.emit(monitor_1.MonitorEvents.CONNECTION_CREATED, {
21
- clientType: 'pg',
22
- extension: 'unaccent',
23
- status: 'installed',
24
- });
25
- console.info('@starbemtech/star-db-query-builder: Extensão unaccent instalada com sucesso.');
26
- }
27
- }
28
- catch (error) {
29
- monitor_1.monitor.emit(monitor_1.MonitorEvents.QUERY_ERROR, {
30
- clientType: 'pg',
31
- action: 'install_unaccent',
32
- error,
33
- });
34
- throw new Error(`@starbemtech/star-db-query-builder: Não foi possível instalar a extensão unaccent:
35
- ${error}`);
36
- }
37
- }
38
- const createPgClient = async (pool, retryOptions, poolConfig) => {
39
- await ensureUnaccentExtension(pool);
40
- monitor_1.monitor.emit(monitor_1.MonitorEvents.CONNECTION_CREATED, {
41
- clientType: 'pg',
42
- poolOptions: poolConfig,
43
- });
44
- return {
45
- clientType: 'pg',
46
- query: async (sql, params) => {
47
- return (0, promise_retry_1.default)(async (retry, attempt) => {
48
- const startTime = Date.now();
49
- try {
50
- monitor_1.monitor.emit(monitor_1.MonitorEvents.QUERY_START, {
51
- clientType: 'pg',
52
- sql,
53
- params,
54
- attempt,
55
- });
56
- const { rows } = await pool.query(sql, params);
57
- const elapsedTime = Date.now() - startTime;
58
- monitor_1.monitor.emit(monitor_1.MonitorEvents.QUERY_END, {
59
- clientType: 'pg',
60
- sql,
61
- params,
62
- attempt,
63
- elapsedTime,
64
- });
65
- return rows;
66
- }
67
- catch (error) {
68
- const elapsedTime = Date.now() - startTime;
69
- monitor_1.monitor.emit(monitor_1.MonitorEvents.QUERY_ERROR, {
70
- clientType: 'pg',
71
- sql,
72
- params,
73
- attempt,
74
- elapsedTime,
75
- error,
76
- });
77
- if (isTransientError(error)) {
78
- console.warn(`Postgres query attempt ${attempt} failed, retrying...`, error);
79
- monitor_1.monitor.emit(monitor_1.MonitorEvents.RETRY_ATTEMPT, {
80
- clientType: 'pg',
81
- sql,
82
- params,
83
- attempt,
84
- error,
85
- });
86
- return retry(error);
87
- }
88
- throw error;
89
- }
90
- }, retryOptions);
91
- },
92
- };
93
- };
4
+ const createPgClient = (pool) => ({
5
+ clientType: 'pg',
6
+ query: async (sql, params) => {
7
+ const { rows } = await pool.query(sql, params);
8
+ return rows;
9
+ },
10
+ });
94
11
  exports.createPgClient = createPgClient;
95
12
  //# sourceMappingURL=pgClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pgClient.js","sourceRoot":"","sources":["../../../src/db/pgClient.ts"],"names":[],"mappings":";;;;;;AACA,kEAAwC;AAGxC,gDAA2D;AAE3D,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,CAAC,YAAY,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC,CAAA;AAEhF,SAAS,gBAAgB,CAAC,KAAU;IAClC,OAAO,KAAK,IAAI,KAAK,CAAC,IAAI,IAAI,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;AACnE,CAAC;AAED,KAAK,UAAU,uBAAuB,CAAC,IAAU;IAC/C,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC;;KAEpC,CAAC,CAAA;QAEF,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAA;YAE3D,iBAAO,CAAC,IAAI,CAAC,uBAAa,CAAC,kBAAkB,EAAE;gBAC7C,UAAU,EAAE,IAAI;gBAChB,SAAS,EAAE,UAAU;gBACrB,MAAM,EAAE,WAAW;aACpB,CAAC,CAAA;YAEF,OAAO,CAAC,IAAI,CACV,8EAA8E,CAC/E,CAAA;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,iBAAO,CAAC,IAAI,CAAC,uBAAa,CAAC,WAAW,EAAE;YACtC,UAAU,EAAE,IAAI;YAChB,MAAM,EAAE,kBAAkB;YAC1B,KAAK;SACN,CAAC,CAAA;QACF,MAAM,IAAI,KAAK,CACb;QACE,KAAK,EAAE,CACV,CAAA;IACH,CAAC;AACH,CAAC;AAEM,MAAM,cAAc,GAAG,KAAK,EACjC,IAAU,EACV,YAA2B,EAC3B,UAAuB,EACG,EAAE;IAC5B,MAAM,uBAAuB,CAAC,IAAI,CAAC,CAAA;IAEnC,iBAAO,CAAC,IAAI,CAAC,uBAAa,CAAC,kBAAkB,EAAE;QAC7C,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,UAAU;KACxB,CAAC,CAAA;IAEF,OAAO;QACL,UAAU,EAAE,IAAI;QAChB,KAAK,EAAE,KAAK,EAAK,GAAW,EAAE,MAAc,EAAc,EAAE;YAC1D,OAAO,IAAA,uBAAY,EAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;gBAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;gBAC5B,IAAI,CAAC;oBACH,iBAAO,CAAC,IAAI,CAAC,uBAAa,CAAC,WAAW,EAAE;wBACtC,UAAU,EAAE,IAAI;wBAChB,GAAG;wBACH,MAAM;wBACN,OAAO;qBACR,CAAC,CAAA;oBAEF,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;oBAE9C,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;oBAC1C,iBAAO,CAAC,IAAI,CAAC,uBAAa,CAAC,SAAS,EAAE;wBACpC,UAAU,EAAE,IAAI;wBAChB,GAAG;wBACH,MAAM;wBACN,OAAO;wBACP,WAAW;qBACZ,CAAC,CAAA;oBAEF,OAAO,IAAoB,CAAA;gBAC7B,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;oBAC1C,iBAAO,CAAC,IAAI,CAAC,uBAAa,CAAC,WAAW,EAAE;wBACtC,UAAU,EAAE,IAAI;wBAChB,GAAG;wBACH,MAAM;wBACN,OAAO;wBACP,WAAW;wBACX,KAAK;qBACN,CAAC,CAAA;oBAEF,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;wBAC5B,OAAO,CAAC,IAAI,CACV,0BAA0B,OAAO,sBAAsB,EACvD,KAAK,CACN,CAAA;wBAED,iBAAO,CAAC,IAAI,CAAC,uBAAa,CAAC,aAAa,EAAE;4BACxC,UAAU,EAAE,IAAI;4BAChB,GAAG;4BACH,MAAM;4BACN,OAAO;4BACP,KAAK;yBACN,CAAC,CAAA;wBAEF,OAAO,KAAK,CAAC,KAAK,CAAC,CAAA;oBACrB,CAAC;oBAED,MAAM,KAAK,CAAA;gBACb,CAAC;YACH,CAAC,EAAE,YAAY,CAAC,CAAA;QAClB,CAAC;KACF,CAAA;AACH,CAAC,CAAA;AAtEY,QAAA,cAAc,kBAsE1B"}
1
+ {"version":3,"file":"pgClient.js","sourceRoot":"","sources":["../../../src/db/pgClient.ts"],"names":[],"mappings":";;;AAGO,MAAM,cAAc,GAAG,CAAC,IAAU,EAAmB,EAAE,CAAC,CAAC;IAC9D,UAAU,EAAE,IAAI;IAChB,KAAK,EAAE,KAAK,EAAK,GAAW,EAAE,MAAc,EAAc,EAAE;QAC1D,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;QAC9C,OAAO,IAAoB,CAAA;IAC7B,CAAC;CACF,CAAC,CAAA;AANW,QAAA,cAAc,kBAMzB"}
@@ -1,6 +1,6 @@
1
1
  import { QueryParams } from './types';
2
2
  export declare const findFirst: <T>({ tableName, dbClient, select, where, groupBy, orderBy, }: QueryParams<T>) => Promise<T | null>;
3
- export declare const findMany: <T>({ tableName, dbClient, select, where, groupBy, orderBy, limit, offset, unaccent, }: QueryParams<T>) => Promise<T[]>;
3
+ export declare const findMany: <T>({ tableName, dbClient, select, where, groupBy, orderBy, limit, offset, }: QueryParams<T>) => Promise<T[]>;
4
4
  export declare const insert: <P, R>({ tableName, dbClient, data, returning, }: QueryParams<R> & {
5
5
  data: P;
6
6
  returning?: string[];
@@ -12,9 +12,4 @@ export declare const update: <P, R>({ tableName, dbClient, id, data, returning,
12
12
  export declare const deleteOne: <T>({ tableName, dbClient, id, permanently, }: QueryParams<T> & {
13
13
  permanently?: boolean;
14
14
  }) => Promise<void>;
15
- export declare const deleteMany: <T>({ tableName, dbClient, ids, field, permanently, }: QueryParams<T> & {
16
- ids: string[] | number[];
17
- field?: string;
18
- permanently?: boolean;
19
- }) => Promise<void>;
20
- export declare const joins: <T>({ tableName, dbClient, select, joins, where, groupBy, orderBy, limit, offset, unaccent, }: QueryParams<T>) => Promise<T[]>;
15
+ export declare const joins: <T>({ tableName, dbClient, select, joins, where, groupBy, orderBy, limit, offset, }: QueryParams<T>) => Promise<T[]>;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.joins = exports.deleteMany = exports.deleteOne = exports.update = exports.insert = exports.findMany = exports.findFirst = void 0;
3
+ exports.joins = exports.deleteOne = exports.update = exports.insert = exports.findMany = exports.findFirst = void 0;
4
4
  const uuid_1 = require("uuid");
5
5
  const utils_1 = require("./utils");
6
6
  const findFirst = async ({ tableName, dbClient, select, where, groupBy, orderBy, }) => {
@@ -20,13 +20,13 @@ const findFirst = async ({ tableName, dbClient, select, where, groupBy, orderBy,
20
20
  return rows[0] || null;
21
21
  };
22
22
  exports.findFirst = findFirst;
23
- const findMany = async ({ tableName, dbClient, select, where, groupBy, orderBy, limit, offset, unaccent, }) => {
23
+ const findMany = async ({ tableName, dbClient, select, where, groupBy, orderBy, limit, offset, }) => {
24
24
  if (!tableName)
25
25
  throw new Error('Table name is required');
26
26
  if (!dbClient)
27
27
  throw new Error('DB client is required');
28
28
  const fields = (0, utils_1.createSelectFields)(select, dbClient.clientType);
29
- const [whereClause, params] = (0, utils_1.createWhereClause)(where, 1, dbClient.clientType, unaccent);
29
+ const [whereClause, params] = (0, utils_1.createWhereClause)(where, 1, dbClient.clientType);
30
30
  const orderByClause = (0, utils_1.createOrderByClause)(orderBy);
31
31
  const groupByClause = (0, utils_1.createGroupByClause)(groupBy);
32
32
  const limitClause = (0, utils_1.createLimitClause)(limit);
@@ -48,9 +48,7 @@ const insert = async ({ tableName, dbClient, data, returning, }) => {
48
48
  throw new Error('DB client is required');
49
49
  if (!data)
50
50
  throw new Error('Data object is required');
51
- const keys = dbClient.clientType === 'pg'
52
- ? Object.keys(data).map((key) => key === 'authorization' ? `"${key}"` : key)
53
- : Object.keys(data);
51
+ const keys = Object.keys(data);
54
52
  const values = Object.values(data);
55
53
  keys.unshift('id');
56
54
  const generatedUUID = (0, uuid_1.v4)();
@@ -120,32 +118,14 @@ const deleteOne = async ({ tableName, dbClient, id, permanently = false, }) => {
120
118
  : `UPDATE ${tableName} SET status = 'deleted' WHERE id = ${dbClient.clientType === 'pg' ? '$1' : '?'}`, [id]);
121
119
  };
122
120
  exports.deleteOne = deleteOne;
123
- const deleteMany = async ({ tableName, dbClient, ids, field = 'id', permanently = false, }) => {
124
- if (!tableName)
125
- throw new Error('Table name is required');
126
- if (!dbClient)
127
- throw new Error('DB client is required');
128
- if (!ids || ids.length === 0)
129
- throw new Error('IDs are required and cannot be empty');
130
- if (!field)
131
- throw new Error('Field is required');
132
- const placeholders = dbClient.clientType === 'pg'
133
- ? ids.map((_, index) => `$${index + 1}`).join(', ')
134
- : ids.map(() => '?').join(', ');
135
- const query = permanently
136
- ? `DELETE FROM ${tableName} WHERE ${field} IN (${placeholders})`
137
- : `UPDATE ${tableName} SET status = 'deleted' WHERE ${field} IN (${placeholders})`;
138
- await dbClient.query(query, ids);
139
- };
140
- exports.deleteMany = deleteMany;
141
- const joins = async ({ tableName, dbClient, select, joins, where, groupBy, orderBy, limit, offset, unaccent, }) => {
121
+ const joins = async ({ tableName, dbClient, select, joins, where, groupBy, orderBy, limit, offset, }) => {
142
122
  if (!tableName)
143
123
  throw new Error('Table name is required');
144
124
  if (!dbClient)
145
125
  throw new Error('DB client is required');
146
126
  const fields = Array.isArray(select) ? select : [];
147
127
  const selectFields = (0, utils_1.createSelectFields)(fields, dbClient.clientType);
148
- const [whereClause, params] = (0, utils_1.createWhereClause)(where, 1, dbClient.clientType, unaccent);
128
+ const [whereClause, params] = (0, utils_1.createWhereClause)(where, 1, dbClient.clientType);
149
129
  const groupByClause = (0, utils_1.createGroupByClause)(groupBy);
150
130
  const orderByClause = (0, utils_1.createOrderByClause)(orderBy);
151
131
  const limitClause = (0, utils_1.createLimitClause)(limit);
@@ -1 +1 @@
1
- {"version":3,"file":"genericRepository.js","sourceRoot":"","sources":["../../../src/default/genericRepository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"genericRepository.js","sourceRoot":"","sources":["../../../src/default/genericRepository.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,11 @@
1
1
  import { IDatabaseClient } from '../db/IDatabaseClient';
2
- export interface RetryOptions {
3
- retries?: number;
4
- factor?: number;
5
- minTimeout?: number;
6
- maxTimeout?: number;
7
- randomize?: boolean;
8
- }
9
2
  export interface QueryExec {
10
3
  text: string;
11
4
  values?: any[];
12
5
  }
13
6
  type SimpleValue = string | number | boolean | Date;
14
7
  export interface OperatorCondition {
15
- operator: 'ILIKE' | 'LIKE' | '=' | '>' | '<' | 'IN' | 'BETWEEN' | '!=' | '<=' | '>=' | 'NOT IN' | 'LIKE' | 'NOT LIKE' | 'IS NULL' | 'IS NOT NULL' | 'NOT EXISTS';
8
+ operator: 'LIKE' | '=' | '>' | '<' | 'IN' | 'BETWEEN' | '!=' | '<=' | '>=' | 'NOT IN' | 'LIKE' | 'NOT LIKE';
16
9
  value: SimpleValue | SimpleValue[];
17
10
  }
18
11
  export type LogicalOperator = 'OR' | 'AND';
@@ -21,7 +14,6 @@ interface LogicalCondition<T> {
21
14
  OR?: Conditions<T>[];
22
15
  AND?: Conditions<T>[];
23
16
  JOINS?: Conditions<object>;
24
- notExists?: OperatorCondition;
25
17
  }
26
18
  export type Conditions<T> = {
27
19
  [P in keyof T]?: Condition<T[P]>;
@@ -42,7 +34,6 @@ export interface QueryParams<T> {
42
34
  limit?: number;
43
35
  offset?: number;
44
36
  joins?: JoinClause[];
45
- unaccent?: boolean;
46
37
  }
47
38
  interface JoinClause {
48
39
  type: 'INNER' | 'LEFT' | 'RIGHT' | 'FULL';
@@ -2,7 +2,7 @@ import { Conditions, OrderBy, DBClients } from './types';
2
2
  export declare const createSelectFields: (fields: string[] | undefined, clientType: DBClients) => string;
3
3
  export declare const generatePlaceholders: (keys: any[], clientType: DBClients) => string;
4
4
  export declare const generateSetClause: (keys: any[], clientType: DBClients) => string;
5
- export declare const createWhereClause: <T>(conditions: Conditions<T> | undefined, startIndex: number | undefined, clientType: DBClients, unaccent?: boolean) => [string, any[], number];
5
+ export declare const createWhereClause: <T>(conditions: Conditions<T> | undefined, startIndex: number | undefined, clientType: DBClients) => [string, any[], number];
6
6
  export declare const createOrderByClause: (orderBy?: OrderBy) => string;
7
7
  export declare const createGroupByClause: (groupBy?: string[]) => string;
8
8
  export declare const createLimitClause: (limit?: number) => string;
@@ -25,7 +25,7 @@ const generateSetClause = (keys, clientType) => {
25
25
  .join(', ');
26
26
  };
27
27
  exports.generateSetClause = generateSetClause;
28
- const createWhereClause = (conditions = {}, startIndex = 1, clientType, unaccent) => {
28
+ const createWhereClause = (conditions = {}, startIndex = 1, clientType) => {
29
29
  let index = startIndex;
30
30
  const whereParts = [];
31
31
  const values = [];
@@ -33,44 +33,33 @@ const createWhereClause = (conditions = {}, startIndex = 1, clientType, unaccent
33
33
  if (typeof condition === 'object' && condition !== null) {
34
34
  if ('operator' in condition && 'value' in condition) {
35
35
  const { operator, value } = condition;
36
- if (operator === 'NOT EXISTS' && typeof value === 'string') {
37
- whereParts.push(`NOT EXISTS (${value})`);
38
- }
39
- else if (operator.includes('NULL')) {
40
- whereParts.push(`${key} ${operator}`);
41
- }
42
- else if (Array.isArray(value)) {
36
+ if (Array.isArray(value)) {
43
37
  const placeholders = value
44
38
  .map(() => clientType === 'pg'
45
39
  ? pgPlaceholderGenerator(index++)
46
40
  : mysqlPlaceholderGenerator())
47
41
  .join(', ');
48
42
  if (operator === 'BETWEEN') {
49
- whereParts.push(`${key} ${operator} ${placeholders.replace(', ', ' AND ')}`);
43
+ whereParts.push(clientType === 'pg'
44
+ ? `${key} ${operator} ${placeholders.replace(', ', ' AND ')}`
45
+ : `${key} ${operator} ${placeholders.replace(', ', ' AND ')}`);
50
46
  }
51
47
  else if (operator === 'IN') {
52
- whereParts.push(`${key} ${operator} (${placeholders})`);
48
+ whereParts.push(clientType === 'pg'
49
+ ? `${key} ${operator} ${placeholders.replace(', ', ' AND ')}`
50
+ : `${key} ${operator} (${placeholders})`);
53
51
  }
54
52
  else {
55
- whereParts.push(`${key} ${operator} (${placeholders})`);
53
+ whereParts.push(clientType === 'pg'
54
+ ? `${key} ${operator} (${placeholders})`
55
+ : `${key} ${operator} ${placeholders}`);
56
56
  }
57
57
  values.push(...value);
58
58
  }
59
59
  else {
60
- if (unaccent && clientType === 'pg') {
61
- if (operator.toUpperCase() === 'ILIKE') {
62
- whereParts.push(`unaccent(${key}::text) ILIKE unaccent(${pgPlaceholderGenerator(index)})`);
63
- }
64
- else {
65
- whereParts.push(`unaccent(${key}::text) ${operator} unaccent(${pgPlaceholderGenerator(index)})`);
66
- }
67
- }
68
- else {
69
- whereParts.push(clientType === 'pg'
70
- ? `${key} ${operator} ${pgPlaceholderGenerator(index)}`
71
- : `${key} ${operator} ${mysqlPlaceholderGenerator()}`);
72
- }
73
- index++;
60
+ whereParts.push(clientType === 'pg'
61
+ ? `${key} ${operator} ${pgPlaceholderGenerator(index++)}`
62
+ : `${key} ${operator} ${mysqlPlaceholderGenerator()}`);
74
63
  values.push(value);
75
64
  }
76
65
  }
@@ -87,18 +76,23 @@ const createWhereClause = (conditions = {}, startIndex = 1, clientType, unaccent
87
76
  subCondition !== null) {
88
77
  const key = Object.keys(subCondition)[0];
89
78
  const condition = subCondition[key];
90
- // Adiciona o tratamento de unaccent nas condições de JOINS
91
79
  processCondition(key, condition);
92
80
  return whereParts.pop();
93
81
  }
94
82
  return '';
95
83
  })
96
84
  .filter((part) => part);
97
- whereParts.push(`(${subWhereParts.join(` ${logicalOperator} `)})`);
85
+ whereParts.push(clientType === 'pg'
86
+ ? `(${subWhereParts.join(` ${logicalOperator} `)})`
87
+ : `${subWhereParts.join(` ${logicalOperator} `)}`);
98
88
  }
99
89
  }
100
90
  else {
101
- Object.entries(conditions).forEach(([key, value]) => processCondition(key, value));
91
+ Object.entries(conditions).forEach(([key, value]) => {
92
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
93
+ // @ts-expect-error
94
+ processCondition(key, value);
95
+ });
102
96
  }
103
97
  if ('OR' in conditions || 'AND' in conditions) {
104
98
  const logicalOperator = conditions.OR ? 'OR' : 'AND';
@@ -111,15 +105,24 @@ const createWhereClause = (conditions = {}, startIndex = 1, clientType, unaccent
111
105
  subCondition !== null) {
112
106
  const key = Object.keys(subCondition)[0];
113
107
  const condition = subCondition[key];
114
- processCondition(key, condition); // Certifica que o unaccent é processado aqui também
108
+ processCondition(key, condition);
115
109
  return whereParts.pop();
116
110
  }
117
111
  return '';
118
112
  })
119
113
  .filter((part) => part);
120
- whereParts.push(`(${subWhereParts.join(` ${logicalOperator} `)})`);
114
+ whereParts.push(clientType === 'pg'
115
+ ? `(${subWhereParts.join(` ${logicalOperator} `)})`
116
+ : `${subWhereParts.join(` ${logicalOperator} `)}`);
121
117
  }
122
118
  }
119
+ else {
120
+ Object.entries(conditions).forEach(([key, value]) => {
121
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
122
+ // @ts-expect-error
123
+ processCondition(key, value);
124
+ });
125
+ }
123
126
  const whereClause = whereParts.length > 0 ? ` WHERE ${whereParts.join(' AND ')}` : '';
124
127
  return [whereClause, values, index];
125
128
  };
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/default/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/default/utils.ts"],"names":[],"mappings":"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"}
package/index.d.ts CHANGED
@@ -2,7 +2,7 @@ import { IDatabaseClient } from './src/db/IDatabaseClient'
2
2
  import { DBClients, QueryParams } from './src/default/types'
3
3
 
4
4
  export declare function initDb<T>(config: { type: DBClients; options: T }): void
5
- export declare function getDbClient(): IDatabaseClient
5
+ export declare function getDbClient(name?: string): IDatabaseClient
6
6
 
7
7
  // Generic Methods
8
8
  export declare function findFirst<T>({
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@starbemtech/star-db-query-builder",
3
- "version": "1.0.34",
3
+ "version": "1.0.36",
4
4
  "description": "A query builder to be used with mysql or postgres",
5
5
  "author": "Julio Sousa <julio.sousa@starbem.app>",
6
6
  "main": "./dist/index.js",
package/src/db/initDb.ts CHANGED
@@ -6,12 +6,14 @@ import { IDatabaseClient } from './IDatabaseClient'
6
6
  import { DBClients, RetryOptions } from '../default/types'
7
7
 
8
8
  const dbClients: Record<string, IDatabaseClient> = {}
9
+ const defaultName = 'default'
9
10
 
10
11
  export const initDb = async <T>(config: {
11
- name: string
12
+ name?: string
12
13
  type: DBClients
13
14
  options: T
14
15
  retryOptions?: RetryOptions
16
+ installUnaccentExtension?: boolean
15
17
  }): Promise<void> => {
16
18
  if (!config.type)
17
19
  throw new Error('Type is required. Accept values: pg | mysql')
@@ -21,10 +23,11 @@ export const initDb = async <T>(config: {
21
23
  if (config.type === 'pg') {
22
24
  const poolConfig = config.options as unknown as PoolConfig
23
25
  const pool = new Pool(config.options)
24
- dbClients[config.name] = await createPgClient(
26
+ dbClients[config.name || defaultName] = await createPgClient(
25
27
  pool,
26
28
  config.retryOptions,
27
- poolConfig
29
+ poolConfig,
30
+ config.installUnaccentExtension
28
31
  )
29
32
 
30
33
  console.log(
@@ -32,7 +35,10 @@ export const initDb = async <T>(config: {
32
35
  )
33
36
  } else if (config.type === 'mysql') {
34
37
  const pool = createMySqlPool(config.options)
35
- dbClients[config.name] = createMysqlClient(pool, config.retryOptions)
38
+ dbClients[config.name || defaultName] = createMysqlClient(
39
+ pool,
40
+ config.retryOptions
41
+ )
36
42
 
37
43
  console.info(
38
44
  `@starbemtech/star-db-query-builder: Postgres db client "${config.name}" created successfully`
@@ -42,8 +48,8 @@ export const initDb = async <T>(config: {
42
48
  }
43
49
  }
44
50
 
45
- export const getDbClient = (name: string): IDatabaseClient => {
46
- const client = dbClients[name]
51
+ export const getDbClient = (name?: string): IDatabaseClient => {
52
+ const client = dbClients[name || defaultName]
47
53
  if (!client) {
48
54
  throw new Error(`Database client "${name}" is not initialized`)
49
55
  }
@@ -45,9 +45,12 @@ async function ensureUnaccentExtension(pool: Pool): Promise<void> {
45
45
  export const createPgClient = async (
46
46
  pool: Pool,
47
47
  retryOptions?: RetryOptions,
48
- poolConfig?: PoolConfig
48
+ poolConfig?: PoolConfig,
49
+ installUnaccentExtension?: boolean
49
50
  ): Promise<IDatabaseClient> => {
50
- await ensureUnaccentExtension(pool)
51
+ if (installUnaccentExtension) {
52
+ await ensureUnaccentExtension(pool)
53
+ }
51
54
 
52
55
  monitor.emit(MonitorEvents.CONNECTION_CREATED, {
53
56
  clientType: 'pg',
@@ -1,9 +0,0 @@
1
- import { EventEmitter } from 'stream';
2
- export declare enum MonitorEvents {
3
- CONNECTION_CREATED = "connection_created",
4
- QUERY_START = "query_start",
5
- QUERY_END = "query_end",
6
- QUERY_ERROR = "query_error",
7
- RETRY_ATTEMPT = "retry_attempt"
8
- }
9
- export declare const monitor: EventEmitter<[never]>;
@@ -1,14 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.monitor = exports.MonitorEvents = void 0;
4
- const stream_1 = require("stream");
5
- var MonitorEvents;
6
- (function (MonitorEvents) {
7
- MonitorEvents["CONNECTION_CREATED"] = "connection_created";
8
- MonitorEvents["QUERY_START"] = "query_start";
9
- MonitorEvents["QUERY_END"] = "query_end";
10
- MonitorEvents["QUERY_ERROR"] = "query_error";
11
- MonitorEvents["RETRY_ATTEMPT"] = "retry_attempt";
12
- })(MonitorEvents || (exports.MonitorEvents = MonitorEvents = {}));
13
- exports.monitor = new stream_1.EventEmitter();
14
- //# sourceMappingURL=monitor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../../src/monitor/monitor.ts"],"names":[],"mappings":";;;AAAA,mCAAqC;AAErC,IAAY,aAMX;AAND,WAAY,aAAa;IACvB,0DAAyC,CAAA;IACzC,4CAA2B,CAAA;IAC3B,wCAAuB,CAAA;IACvB,4CAA2B,CAAA;IAC3B,gDAA+B,CAAA;AACjC,CAAC,EANW,aAAa,6BAAb,aAAa,QAMxB;AAEY,QAAA,OAAO,GAAG,IAAI,qBAAY,EAAE,CAAA"}