@napp/dti-client 4.2.2 → 4.3.2

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.
package/bundler.d.ts CHANGED
@@ -7,6 +7,7 @@ export interface BundleMeta<RESULT, PARAM> {
7
7
  export declare class DtiClientBandler {
8
8
  private bundleMetas;
9
9
  private builder;
10
+ private base62;
10
11
  constructor(bundleMetas: Array<BundleMeta<any, any>>, builder: DtiClientBuilder);
11
12
  validate(): void;
12
13
  private getMethod;
package/bundler.js CHANGED
@@ -8,20 +8,17 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
9
  });
10
10
  };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
11
  Object.defineProperty(exports, "__esModule", { value: true });
15
12
  exports.DtiClientBandler = void 0;
16
13
  const dti_core_1 = require("@napp/dti-core");
17
14
  const exception_1 = require("@napp/exception");
18
15
  const cross_fetch_1 = require("cross-fetch");
19
- const base64url_1 = __importDefault(require("base64url"));
20
16
  const errorhandle_1 = require("./errorhandle");
21
17
  class DtiClientBandler {
22
18
  constructor(bundleMetas, builder) {
23
19
  this.bundleMetas = bundleMetas;
24
20
  this.builder = builder;
21
+ this.base62 = new dti_core_1.Base62();
25
22
  }
26
23
  validate() {
27
24
  for (let it of this.bundleMetas) {
@@ -83,7 +80,7 @@ class DtiClientBandler {
83
80
  let baseUrl = this.getBase();
84
81
  let param = this.getParam();
85
82
  let headers = this.getHeaders();
86
- let p = base64url_1.default.encode(JSON.stringify(param));
83
+ let p = this.base62.encode(JSON.stringify(param));
87
84
  let q = new URLSearchParams({ p }).toString();
88
85
  let resp = yield (0, cross_fetch_1.fetch)(`${baseUrl}/__bundler_get__?${q}`, {
89
86
  method: 'get', headers
package/caller.d.ts CHANGED
@@ -4,6 +4,7 @@ import { BundleMeta } from "./bundler";
4
4
  export declare class DtiClientCaller<RESULT, PARAM> {
5
5
  private meta;
6
6
  private builder;
7
+ private base62;
7
8
  private routeClient;
8
9
  constructor(meta: DtiAction<RESULT, PARAM>, builder: DtiClientBuilder);
9
10
  validate(param: PARAM): void;
@@ -14,4 +15,5 @@ export declare class DtiClientCaller<RESULT, PARAM> {
14
15
  private getUrl;
15
16
  bundler(param: PARAM): BundleMeta<RESULT, PARAM>;
16
17
  call(param: PARAM): Promise<RESULT>;
18
+ callRaw(param: PARAM): Promise<Response>;
17
19
  }
package/caller.js CHANGED
@@ -8,20 +8,17 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
9
  });
10
10
  };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
11
  Object.defineProperty(exports, "__esModule", { value: true });
15
12
  exports.DtiClientCaller = void 0;
16
13
  const dti_core_1 = require("@napp/dti-core");
17
14
  const cross_fetch_1 = require("cross-fetch");
18
- const base64url_1 = __importDefault(require("base64url"));
19
15
  const route_1 = require("./route");
20
16
  const errorhandle_1 = require("./errorhandle");
21
17
  class DtiClientCaller {
22
18
  constructor(meta, builder) {
23
19
  this.meta = meta;
24
20
  this.builder = builder;
21
+ this.base62 = new dti_core_1.Base62();
25
22
  this.routeClient = new route_1.DtiClientRoute(meta.getRoute(), builder);
26
23
  }
27
24
  validate(param) {
@@ -54,7 +51,7 @@ class DtiClientCaller {
54
51
  let m = this.meta.getMode();
55
52
  if (m === dti_core_1.DtiMode.QJson) {
56
53
  if (param) {
57
- let p = base64url_1.default.encode(JSON.stringify(param));
54
+ let p = this.base62.encode(JSON.stringify(param));
58
55
  return new URLSearchParams({ p }).toString();
59
56
  }
60
57
  }
@@ -90,6 +87,12 @@ class DtiClientCaller {
90
87
  return { meta: this.meta, param };
91
88
  }
92
89
  call(param) {
90
+ return __awaiter(this, void 0, void 0, function* () {
91
+ let resp = yield this.callRaw(param);
92
+ return yield (0, errorhandle_1.responseHandle)(resp);
93
+ });
94
+ }
95
+ callRaw(param) {
93
96
  return __awaiter(this, void 0, void 0, function* () {
94
97
  this.validate(param);
95
98
  let url = this.getUrl();
@@ -97,10 +100,9 @@ class DtiClientCaller {
97
100
  let method = this.getMethod();
98
101
  let headers = this.getHeaders(param);
99
102
  let body = this.getBody(param);
100
- let resp = yield (0, cross_fetch_1.fetch)(url + (query ? `?${query}` : ''), {
103
+ return yield (0, cross_fetch_1.fetch)(url + (query ? `?${query}` : ''), {
101
104
  method, headers, body
102
105
  });
103
- return (0, errorhandle_1.responseHandle)(resp);
104
106
  });
105
107
  }
106
108
  }
package/errorhandle.d.ts CHANGED
@@ -1 +1 @@
1
- export declare function responseHandle(resp: Response): Promise<any>;
1
+ export declare function responseHandle<T>(resp: Response): Promise<any>;
package/errorhandle.js CHANGED
@@ -14,21 +14,37 @@ const exception_1 = require("@napp/exception");
14
14
  function responseHandle(resp) {
15
15
  return __awaiter(this, void 0, void 0, function* () {
16
16
  try {
17
- let resu = yield resp.text();
17
+ let rsu = yield resp.text();
18
18
  if (resp.ok) {
19
+ if (rsu) {
20
+ try {
21
+ let value = JSON.parse(rsu);
22
+ return value;
23
+ }
24
+ catch (error) {
25
+ throw new exception_1.Exception(rsu, {
26
+ name: exception_1.ExceptionNames.Server,
27
+ });
28
+ }
29
+ }
30
+ return void 0;
31
+ }
32
+ if (rsu) {
33
+ let err;
19
34
  try {
20
- return resu ? JSON.parse(resu) : undefined;
35
+ let errObject = JSON.parse(rsu);
36
+ err = exception_1.Exception.from(errObject);
21
37
  }
22
38
  catch (error) {
23
- throw new exception_1.Exception("api response invalid json")
24
- .addException(exception_1.Exception.from(error));
39
+ err = new exception_1.Exception(rsu, {
40
+ name: exception_1.ExceptionNames.Server,
41
+ });
25
42
  }
43
+ throw err;
26
44
  }
27
- if (resu) {
28
- let errObject = JSON.parse(resu);
29
- throw exception_1.Exception.from(errObject);
30
- }
31
- throw new exception_1.Exception(resp.statusText).setStatus(resp.status);
45
+ throw new exception_1.Exception(`status=${resp.status}. ${resp.statusText}`, {
46
+ name: exception_1.ExceptionNames.Server,
47
+ });
32
48
  }
33
49
  catch (error) {
34
50
  throw exception_1.Exception.from(error);
package/index.d.ts CHANGED
@@ -3,3 +3,4 @@ export * from './caller';
3
3
  export * from './client';
4
4
  export * from './route';
5
5
  export * from './tree';
6
+ export * from './errorhandle';
package/index.js CHANGED
@@ -19,3 +19,4 @@ __exportStar(require("./caller"), exports);
19
19
  __exportStar(require("./client"), exports);
20
20
  __exportStar(require("./route"), exports);
21
21
  __exportStar(require("./tree"), exports);
22
+ __exportStar(require("./errorhandle"), exports);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@napp/dti-client",
3
- "version": "4.2.2",
3
+ "version": "4.3.2",
4
4
  "description": "data transaction interface client library",
5
5
  "repository": {
6
6
  "type": "git",
@@ -16,9 +16,8 @@
16
16
  "author": "Farcek <farcek@gmail.com>",
17
17
  "license": "ISC",
18
18
  "dependencies": {
19
- "@napp/exception": "^4.1.2",
20
- "@napp/dti-core": "4.2.2",
21
- "base64url": "latest",
19
+ "@napp/exception": "^5.1.7",
20
+ "@napp/dti-core": "4.3.2",
22
21
  "cross-fetch": "latest"
23
22
  }
24
23
  }