@feathersjs/rest-client 5.0.9 → 5.0.11

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/CHANGELOG.md CHANGED
@@ -3,6 +3,17 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [5.0.11](https://github.com/feathersjs/feathers/compare/v5.0.10...v5.0.11) (2023-10-11)
7
+
8
+ ### Bug Fixes
9
+
10
+ - **client:** Replace placeholders in URL with route params ([#3270](https://github.com/feathersjs/feathers/issues/3270)) ([a0624eb](https://github.com/feathersjs/feathers/commit/a0624eb5a7919aa1b179a71beb1c1b9cab574525))
11
+ - **knex:** Update all dependencies and Knex peer ([#3308](https://github.com/feathersjs/feathers/issues/3308)) ([d2f9860](https://github.com/feathersjs/feathers/commit/d2f986036c4741cce2339d8abbcc6b2eb037a12a))
12
+
13
+ ## [5.0.10](https://github.com/feathersjs/feathers/compare/v5.0.9...v5.0.10) (2023-10-03)
14
+
15
+ **Note:** Version bump only for package @feathersjs/rest-client
16
+
6
17
  ## [5.0.9](https://github.com/feathersjs/feathers/compare/v5.0.8...v5.0.9) (2023-09-27)
7
18
 
8
19
  ### Bug Fixes
package/lib/base.d.ts CHANGED
@@ -14,7 +14,9 @@ export declare abstract class Base<T = any, D = Partial<T>, P extends Params = R
14
14
  connection: any;
15
15
  options: any;
16
16
  constructor(settings: RestClientSettings);
17
- makeUrl(query: Query, id?: string | number | null): string;
17
+ makeUrl(query: Query, id?: string | number | null, route?: {
18
+ [key: string]: string;
19
+ }): string;
18
20
  getQuery(query: Query): string;
19
21
  abstract request(options: any, params: P): any;
20
22
  methods(this: any, ...names: string[]): any;
package/lib/base.js CHANGED
@@ -20,8 +20,13 @@ class Base {
20
20
  this.connection = settings.connection;
21
21
  this.base = `${settings.base}/${this.name}`;
22
22
  }
23
- makeUrl(query, id) {
23
+ makeUrl(query, id, route) {
24
24
  let url = this.base;
25
+ if (route) {
26
+ Object.keys(route).forEach((key) => {
27
+ url = url.replace(`:${key}`, route[key]);
28
+ });
29
+ }
25
30
  query = query || {};
26
31
  if (typeof id !== 'undefined' && id !== null) {
27
32
  url += `/${encodeURIComponent(id)}`;
@@ -41,7 +46,7 @@ class Base {
41
46
  this[_method] = function (data, params = {}) {
42
47
  return this.request({
43
48
  body: data,
44
- url: this.makeUrl(params.query),
49
+ url: this.makeUrl(params.query, null, params.route),
45
50
  method: 'POST',
46
51
  headers: Object.assign({
47
52
  'Content-Type': 'application/json',
@@ -57,7 +62,7 @@ class Base {
57
62
  }
58
63
  _find(params) {
59
64
  return this.request({
60
- url: this.makeUrl(params.query),
65
+ url: this.makeUrl(params.query, null, params.route),
61
66
  method: 'GET',
62
67
  headers: Object.assign({}, params.headers)
63
68
  }, params).catch(toError);
@@ -70,7 +75,7 @@ class Base {
70
75
  return Promise.reject(new Error("id for 'get' can not be undefined"));
71
76
  }
72
77
  return this.request({
73
- url: this.makeUrl(params.query, id),
78
+ url: this.makeUrl(params.query, id, params.route),
74
79
  method: 'GET',
75
80
  headers: Object.assign({}, params.headers)
76
81
  }, params).catch(toError);
@@ -80,7 +85,7 @@ class Base {
80
85
  }
81
86
  _create(data, params) {
82
87
  return this.request({
83
- url: this.makeUrl(params.query),
88
+ url: this.makeUrl(params.query, null, params.route),
84
89
  body: data,
85
90
  method: 'POST',
86
91
  headers: Object.assign({ 'Content-Type': 'application/json' }, params.headers)
@@ -94,7 +99,7 @@ class Base {
94
99
  return Promise.reject(new Error("id for 'update' can not be undefined, only 'null' when updating multiple entries"));
95
100
  }
96
101
  return this.request({
97
- url: this.makeUrl(params.query, id),
102
+ url: this.makeUrl(params.query, id, params.route),
98
103
  body: data,
99
104
  method: 'PUT',
100
105
  headers: Object.assign({ 'Content-Type': 'application/json' }, params.headers)
@@ -108,7 +113,7 @@ class Base {
108
113
  return Promise.reject(new Error("id for 'patch' can not be undefined, only 'null' when updating multiple entries"));
109
114
  }
110
115
  return this.request({
111
- url: this.makeUrl(params.query, id),
116
+ url: this.makeUrl(params.query, id, params.route),
112
117
  body: data,
113
118
  method: 'PATCH',
114
119
  headers: Object.assign({ 'Content-Type': 'application/json' }, params.headers)
@@ -122,7 +127,7 @@ class Base {
122
127
  return Promise.reject(new Error("id for 'remove' can not be undefined, only 'null' when removing multiple entries"));
123
128
  }
124
129
  return this.request({
125
- url: this.makeUrl(params.query, id),
130
+ url: this.makeUrl(params.query, id, params.route),
126
131
  method: 'DELETE',
127
132
  headers: Object.assign({}, params.headers)
128
133
  }, params).catch(toError);
package/lib/base.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../src/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../src/base.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@feathersjs/rest-client",
3
3
  "description": "REST client services for different Ajax libraries",
4
- "version": "5.0.9",
4
+ "version": "5.0.11",
5
5
  "homepage": "https://feathersjs.com",
6
6
  "main": "lib/",
7
7
  "types": "lib/",
@@ -53,21 +53,21 @@
53
53
  "access": "public"
54
54
  },
55
55
  "dependencies": {
56
- "@feathersjs/commons": "^5.0.9",
57
- "@feathersjs/errors": "^5.0.9",
58
- "@feathersjs/feathers": "^5.0.9",
56
+ "@feathersjs/commons": "^5.0.11",
57
+ "@feathersjs/errors": "^5.0.11",
58
+ "@feathersjs/feathers": "^5.0.11",
59
59
  "@types/superagent": "^4.1.19",
60
60
  "qs": "^6.11.2"
61
61
  },
62
62
  "devDependencies": {
63
- "@feathersjs/express": "^5.0.9",
64
- "@feathersjs/memory": "^5.0.9",
65
- "@feathersjs/tests": "^5.0.9",
66
- "@types/mocha": "^10.0.1",
67
- "@types/node": "^20.7.0",
63
+ "@feathersjs/express": "^5.0.11",
64
+ "@feathersjs/memory": "^5.0.11",
65
+ "@feathersjs/tests": "^5.0.11",
66
+ "@types/mocha": "^10.0.2",
67
+ "@types/node": "^20.8.4",
68
68
  "@types/node-fetch": "^2.6.6",
69
69
  "@types/qs": "^6.9.8",
70
- "axios": "^1.5.0",
70
+ "axios": "^1.5.1",
71
71
  "mocha": "^10.2.0",
72
72
  "node-fetch": "^2.6.1",
73
73
  "rxjs": "^7.8.1",
@@ -76,5 +76,5 @@
76
76
  "ts-node": "^10.9.1",
77
77
  "typescript": "^5.2.2"
78
78
  },
79
- "gitHead": "64ee98dadf02dac34f31e3cb7b6b10e1f7405bfa"
79
+ "gitHead": "91294817845178ff0e9d4709127cb3e46d3562be"
80
80
  }
package/src/base.ts CHANGED
@@ -37,9 +37,15 @@ export abstract class Base<T = any, D = Partial<T>, P extends Params = RestClien
37
37
  this.base = `${settings.base}/${this.name}`
38
38
  }
39
39
 
40
- makeUrl(query: Query, id?: string | number | null) {
40
+ makeUrl(query: Query, id?: string | number | null, route?: { [key: string]: string }) {
41
41
  let url = this.base
42
42
 
43
+ if (route) {
44
+ Object.keys(route).forEach((key) => {
45
+ url = url.replace(`:${key}`, route[key])
46
+ })
47
+ }
48
+
43
49
  query = query || {}
44
50
 
45
51
  if (typeof id !== 'undefined' && id !== null) {
@@ -68,7 +74,7 @@ export abstract class Base<T = any, D = Partial<T>, P extends Params = RestClien
68
74
  return this.request(
69
75
  {
70
76
  body: data,
71
- url: this.makeUrl(params.query),
77
+ url: this.makeUrl(params.query, null, params.route),
72
78
  method: 'POST',
73
79
  headers: Object.assign(
74
80
  {
@@ -92,7 +98,7 @@ export abstract class Base<T = any, D = Partial<T>, P extends Params = RestClien
92
98
  _find(params?: P) {
93
99
  return this.request(
94
100
  {
95
- url: this.makeUrl(params.query),
101
+ url: this.makeUrl(params.query, null, params.route),
96
102
  method: 'GET',
97
103
  headers: Object.assign({}, params.headers)
98
104
  },
@@ -111,7 +117,7 @@ export abstract class Base<T = any, D = Partial<T>, P extends Params = RestClien
111
117
 
112
118
  return this.request(
113
119
  {
114
- url: this.makeUrl(params.query, id),
120
+ url: this.makeUrl(params.query, id, params.route),
115
121
  method: 'GET',
116
122
  headers: Object.assign({}, params.headers)
117
123
  },
@@ -126,7 +132,7 @@ export abstract class Base<T = any, D = Partial<T>, P extends Params = RestClien
126
132
  _create(data: D, params?: P) {
127
133
  return this.request(
128
134
  {
129
- url: this.makeUrl(params.query),
135
+ url: this.makeUrl(params.query, null, params.route),
130
136
  body: data,
131
137
  method: 'POST',
132
138
  headers: Object.assign({ 'Content-Type': 'application/json' }, params.headers)
@@ -148,7 +154,7 @@ export abstract class Base<T = any, D = Partial<T>, P extends Params = RestClien
148
154
 
149
155
  return this.request(
150
156
  {
151
- url: this.makeUrl(params.query, id),
157
+ url: this.makeUrl(params.query, id, params.route),
152
158
  body: data,
153
159
  method: 'PUT',
154
160
  headers: Object.assign({ 'Content-Type': 'application/json' }, params.headers)
@@ -170,7 +176,7 @@ export abstract class Base<T = any, D = Partial<T>, P extends Params = RestClien
170
176
 
171
177
  return this.request(
172
178
  {
173
- url: this.makeUrl(params.query, id),
179
+ url: this.makeUrl(params.query, id, params.route),
174
180
  body: data,
175
181
  method: 'PATCH',
176
182
  headers: Object.assign({ 'Content-Type': 'application/json' }, params.headers)
@@ -192,7 +198,7 @@ export abstract class Base<T = any, D = Partial<T>, P extends Params = RestClien
192
198
 
193
199
  return this.request(
194
200
  {
195
- url: this.makeUrl(params.query, id),
201
+ url: this.makeUrl(params.query, id, params.route),
196
202
  method: 'DELETE',
197
203
  headers: Object.assign({}, params.headers)
198
204
  },