@simplysm/service-client 14.0.16 → 14.0.17

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,9 +1,9 @@
1
1
  import type { OrmConnectOptions } from "./orm-connect-options";
2
- import { type DbContextDef, type DbContextInstance } from "@simplysm/orm-common";
2
+ import { type DbContext } from "@simplysm/orm-common";
3
3
  import type { ServiceClient } from "../../service-client";
4
4
  export interface OrmClientConnector {
5
- connect<TDef extends DbContextDef<any, any, any>, R>(config: OrmConnectOptions<TDef>, callback: (db: DbContextInstance<TDef>) => Promise<R> | R): Promise<R>;
6
- connectWithoutTransaction<TDef extends DbContextDef<any, any, any>, R>(config: OrmConnectOptions<TDef>, callback: (db: DbContextInstance<TDef>) => Promise<R> | R): Promise<R>;
5
+ connect<T extends DbContext, R>(config: OrmConnectOptions<T>, callback: (db: T) => Promise<R> | R): Promise<R>;
6
+ connectWithoutTransaction<T extends DbContext, R>(config: OrmConnectOptions<T>, callback: (db: T) => Promise<R> | R): Promise<R>;
7
7
  }
8
8
  export declare function createOrmClientConnector(serviceClient: ServiceClient): OrmClientConnector;
9
9
  //# sourceMappingURL=orm-client-connector.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"orm-client-connector.d.ts","sourceRoot":"","sources":["../../../src/features/orm/orm-client-connector.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAmB,KAAK,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAClG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,IAAI,SAAS,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,EACjD,MAAM,EAAE,iBAAiB,CAAC,IAAI,CAAC,EAC/B,QAAQ,EAAE,CAAC,EAAE,EAAE,iBAAiB,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GACxD,OAAO,CAAC,CAAC,CAAC,CAAC;IACd,yBAAyB,CAAC,IAAI,SAAS,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,EACnE,MAAM,EAAE,iBAAiB,CAAC,IAAI,CAAC,EAC/B,QAAQ,EAAE,CAAC,EAAE,EAAE,iBAAiB,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GACxD,OAAO,CAAC,CAAC,CAAC,CAAC;CACf;AAED,wBAAgB,wBAAwB,CAAC,aAAa,EAAE,aAAa,GAAG,kBAAkB,CAkDzF"}
1
+ {"version":3,"file":"orm-client-connector.d.ts","sourceRoot":"","sources":["../../../src/features/orm/orm-client-connector.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,CAAC,SAAS,SAAS,EAAE,CAAC,EAC5B,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAC5B,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAClC,OAAO,CAAC,CAAC,CAAC,CAAC;IACd,yBAAyB,CAAC,CAAC,SAAS,SAAS,EAAE,CAAC,EAC9C,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAC5B,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAClC,OAAO,CAAC,CAAC,CAAC,CAAC;CACf;AAED,wBAAgB,wBAAwB,CAAC,aAAa,EAAE,aAAa,GAAG,kBAAkB,CAkDzF"}
@@ -1,5 +1,5 @@
1
1
  import { OrmClientDbContextExecutor } from "./orm-client-db-context-executor.js";
2
- import { createDbContext } from "@simplysm/orm-common";
2
+ import {} from "@simplysm/orm-common";
3
3
  export function createOrmClientConnector(serviceClient) {
4
4
  async function _createConfiguredDb(config) {
5
5
  const executor = new OrmClientDbContextExecutor(serviceClient, config.connOpt);
@@ -8,7 +8,7 @@ export function createOrmClientConnector(serviceClient) {
8
8
  if (database == null || database === "") {
9
9
  throw new Error("database는 필수입니다.");
10
10
  }
11
- return createDbContext(config.dbContextDef, executor, {
11
+ return new config.DbClass(executor, {
12
12
  database,
13
13
  schema: config.dbContextOpt?.schema ?? info.schema,
14
14
  });
@@ -1 +1 @@
1
- {"version":3,"file":"orm-client-connector.js","sourceRoot":"","sources":["../../../src/features/orm/orm-client-connector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAE9E,OAAO,EAAE,eAAe,EAA6C,MAAM,sBAAsB,CAAC;AAclG,MAAM,UAAU,wBAAwB,CAAC,aAA4B;IACnE,KAAK,UAAU,mBAAmB,CAChC,MAA+B;QAE/B,MAAM,QAAQ,GAAG,IAAI,0BAA0B,CAAC,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAC/E,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAC;QACtC,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAY,EAAE,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC;QAChE,IAAI,QAAQ,IAAI,IAAI,IAAI,QAAQ,KAAK,EAAE,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACtC,CAAC;QACD,OAAO,eAAe,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,EAAE;YACpD,QAAQ;YACR,MAAM,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,IAAI,IAAI,CAAC,MAAM;SACnD,CAAC,CAAC;IACL,CAAC;IAED,KAAK,UAAU,OAAO,CACpB,MAA+B,EAC/B,QAAyD;QAEzD,MAAM,EAAE,GAAG,MAAM,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAC7C,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;YAC3B,IAAI,CAAC;gBACH,OAAO,MAAM,QAAQ,CAAC,EAAE,CAAC,CAAC;YAC5B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IACE,GAAG,YAAY,KAAK;oBACpB,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,wCAAwC,CAAC;wBAC7D,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,+BAA+B,CAAC,CAAC,EACxD,CAAC;oBACD,MAAM,IAAI,KAAK,CAAC,8CAA8C,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;gBAClF,CAAC;gBAED,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,UAAU,yBAAyB,CACtC,MAA+B,EAC/B,QAAyD;QAEzD,MAAM,EAAE,GAAG,MAAM,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAC7C,OAAO,EAAE,CAAC,yBAAyB,CAAC,KAAK,IAAI,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,OAAO;QACL,OAAO;QACP,yBAAyB;KAC1B,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"orm-client-connector.js","sourceRoot":"","sources":["../../../src/features/orm/orm-client-connector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAE9E,OAAO,EAAkB,MAAM,sBAAsB,CAAC;AActD,MAAM,UAAU,wBAAwB,CAAC,aAA4B;IACnE,KAAK,UAAU,mBAAmB,CAChC,MAA4B;QAE5B,MAAM,QAAQ,GAAG,IAAI,0BAA0B,CAAC,aAAa,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAC/E,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,CAAC;QACtC,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAY,EAAE,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC;QAChE,IAAI,QAAQ,IAAI,IAAI,IAAI,QAAQ,KAAK,EAAE,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACtC,CAAC;QACD,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE;YAClC,QAAQ;YACR,MAAM,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,IAAI,IAAI,CAAC,MAAM;SACnD,CAAC,CAAC;IACL,CAAC;IAED,KAAK,UAAU,OAAO,CACpB,MAA4B,EAC5B,QAAmC;QAEnC,MAAM,EAAE,GAAG,MAAM,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAC7C,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE;YAC3B,IAAI,CAAC;gBACH,OAAO,MAAM,QAAQ,CAAC,EAAE,CAAC,CAAC;YAC5B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IACE,GAAG,YAAY,KAAK;oBACpB,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,wCAAwC,CAAC;wBAC7D,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,+BAA+B,CAAC,CAAC,EACxD,CAAC;oBACD,MAAM,IAAI,KAAK,CAAC,8CAA8C,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;gBAClF,CAAC;gBAED,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,UAAU,yBAAyB,CACtC,MAA4B,EAC5B,QAAmC;QAEnC,MAAM,EAAE,GAAG,MAAM,mBAAmB,CAAC,MAAM,CAAC,CAAC;QAC7C,OAAO,EAAE,CAAC,yBAAyB,CAAC,KAAK,IAAI,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,OAAO;QACL,OAAO;QACP,yBAAyB;KAC1B,CAAC;AACJ,CAAC"}
@@ -1,7 +1,10 @@
1
- import type { DbContextDef } from "@simplysm/orm-common";
1
+ import type { DbContext, DbContextExecutor } from "@simplysm/orm-common";
2
2
  import type { DbConnOptions } from "@simplysm/service-common";
3
- export interface OrmConnectOptions<TDef extends DbContextDef<any, any, any>> {
4
- dbContextDef: TDef;
3
+ export interface OrmConnectOptions<T extends DbContext> {
4
+ DbClass: new (executor: DbContextExecutor, opt: {
5
+ database: string;
6
+ schema?: string;
7
+ }) => T;
5
8
  connOpt: DbConnOptions & {
6
9
  configName: string;
7
10
  };
@@ -1 +1 @@
1
- {"version":3,"file":"orm-connect-options.d.ts","sourceRoot":"","sources":["../../../src/features/orm/orm-connect-options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D,MAAM,WAAW,iBAAiB,CAAC,IAAI,SAAS,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;IACzE,YAAY,EAAE,IAAI,CAAC;IACnB,OAAO,EAAE,aAAa,GAAG;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAChD,YAAY,CAAC,EAAE;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CACH"}
1
+ {"version":3,"file":"orm-connect-options.d.ts","sourceRoot":"","sources":["../../../src/features/orm/orm-connect-options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D,MAAM,WAAW,iBAAiB,CAAC,CAAC,SAAS,SAAS;IACpD,OAAO,EAAE,KAAK,QAAQ,EAAE,iBAAiB,EAAE,GAAG,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,CAAC,CAAC;IAC5F,OAAO,EAAE,aAAa,GAAG;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAChD,YAAY,CAAC,EAAE;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CACH"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@simplysm/service-client",
3
- "version": "14.0.16",
3
+ "version": "14.0.17",
4
4
  "description": "심플리즘 패키지 - 서비스 (client)",
5
5
  "author": "심플리즘",
6
6
  "license": "Apache-2.0",
@@ -20,9 +20,9 @@
20
20
  "sideEffects": false,
21
21
  "dependencies": {
22
22
  "consola": "^3.4.2",
23
- "@simplysm/core-common": "14.0.16",
24
- "@simplysm/orm-common": "14.0.16",
25
- "@simplysm/service-common": "14.0.16"
23
+ "@simplysm/core-common": "14.0.17",
24
+ "@simplysm/orm-common": "14.0.17",
25
+ "@simplysm/service-common": "14.0.17"
26
26
  },
27
27
  "devDependencies": {
28
28
  "@types/ws": "^8.18.1",
@@ -1,38 +1,38 @@
1
1
  import { OrmClientDbContextExecutor } from "./orm-client-db-context-executor";
2
2
  import type { OrmConnectOptions } from "./orm-connect-options";
3
- import { createDbContext, type DbContextDef, type DbContextInstance } from "@simplysm/orm-common";
3
+ import { type DbContext } from "@simplysm/orm-common";
4
4
  import type { ServiceClient } from "../../service-client";
5
5
 
6
6
  export interface OrmClientConnector {
7
- connect<TDef extends DbContextDef<any, any, any>, R>(
8
- config: OrmConnectOptions<TDef>,
9
- callback: (db: DbContextInstance<TDef>) => Promise<R> | R,
7
+ connect<T extends DbContext, R>(
8
+ config: OrmConnectOptions<T>,
9
+ callback: (db: T) => Promise<R> | R,
10
10
  ): Promise<R>;
11
- connectWithoutTransaction<TDef extends DbContextDef<any, any, any>, R>(
12
- config: OrmConnectOptions<TDef>,
13
- callback: (db: DbContextInstance<TDef>) => Promise<R> | R,
11
+ connectWithoutTransaction<T extends DbContext, R>(
12
+ config: OrmConnectOptions<T>,
13
+ callback: (db: T) => Promise<R> | R,
14
14
  ): Promise<R>;
15
15
  }
16
16
 
17
17
  export function createOrmClientConnector(serviceClient: ServiceClient): OrmClientConnector {
18
- async function _createConfiguredDb<TDef extends DbContextDef<any, any, any>>(
19
- config: OrmConnectOptions<TDef>,
20
- ): Promise<DbContextInstance<TDef>> {
18
+ async function _createConfiguredDb<T extends DbContext>(
19
+ config: OrmConnectOptions<T>,
20
+ ): Promise<T> {
21
21
  const executor = new OrmClientDbContextExecutor(serviceClient, config.connOpt);
22
22
  const info = await executor.getInfo();
23
23
  const database = config.dbContextOpt?.database ?? info.database;
24
24
  if (database == null || database === "") {
25
25
  throw new Error("database는 필수입니다.");
26
26
  }
27
- return createDbContext(config.dbContextDef, executor, {
27
+ return new config.DbClass(executor, {
28
28
  database,
29
29
  schema: config.dbContextOpt?.schema ?? info.schema,
30
30
  });
31
31
  }
32
32
 
33
- async function connect<TDef extends DbContextDef<any, any, any>, R>(
34
- config: OrmConnectOptions<TDef>,
35
- callback: (db: DbContextInstance<TDef>) => Promise<R> | R,
33
+ async function connect<T extends DbContext, R>(
34
+ config: OrmConnectOptions<T>,
35
+ callback: (db: T) => Promise<R> | R,
36
36
  ): Promise<R> {
37
37
  const db = await _createConfiguredDb(config);
38
38
  return db.connect(async () => {
@@ -52,9 +52,9 @@ export function createOrmClientConnector(serviceClient: ServiceClient): OrmClien
52
52
  });
53
53
  }
54
54
 
55
- async function connectWithoutTransaction<TDef extends DbContextDef<any, any, any>, R>(
56
- config: OrmConnectOptions<TDef>,
57
- callback: (db: DbContextInstance<TDef>) => Promise<R> | R,
55
+ async function connectWithoutTransaction<T extends DbContext, R>(
56
+ config: OrmConnectOptions<T>,
57
+ callback: (db: T) => Promise<R> | R,
58
58
  ): Promise<R> {
59
59
  const db = await _createConfiguredDb(config);
60
60
  return db.connectWithoutTransaction(async () => callback(db));
@@ -1,8 +1,8 @@
1
- import type { DbContextDef } from "@simplysm/orm-common";
1
+ import type { DbContext, DbContextExecutor } from "@simplysm/orm-common";
2
2
  import type { DbConnOptions } from "@simplysm/service-common";
3
3
 
4
- export interface OrmConnectOptions<TDef extends DbContextDef<any, any, any>> {
5
- dbContextDef: TDef;
4
+ export interface OrmConnectOptions<T extends DbContext> {
5
+ DbClass: new (executor: DbContextExecutor, opt: { database: string; schema?: string }) => T;
6
6
  connOpt: DbConnOptions & { configName: string };
7
7
  dbContextOpt?: {
8
8
  database: string;