geoserver-node-client 1.3.0 → 1.4.1

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,37 +1,24 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.GeoServerResponseError = void 0;
9
8
  exports.getGeoServerResponseText = getGeoServerResponseText;
10
-
11
9
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
12
-
13
10
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
14
-
15
11
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
16
-
17
12
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
18
-
19
13
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
20
-
21
14
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
22
-
23
15
  var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapNativeSuper"));
24
-
25
16
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
26
-
27
17
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
28
-
29
18
  function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
30
-
31
19
  /**
32
20
  * Utility functions and classes
33
21
  */
34
-
35
22
  /**
36
23
  * Return the GeoServer response text if available.
37
24
  *
@@ -45,53 +32,42 @@ function getGeoServerResponseText(_x) {
45
32
  /**
46
33
  * Generic GeoServer error
47
34
  */
48
-
49
-
50
35
  function _getGeoServerResponseText() {
51
36
  _getGeoServerResponseText = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(response) {
52
37
  return _regenerator["default"].wrap(function _callee$(_context) {
53
- while (1) {
54
- switch (_context.prev = _context.next) {
55
- case 0:
56
- _context.prev = 0;
57
- return _context.abrupt("return", response.text());
58
-
59
- case 4:
60
- _context.prev = 4;
61
- _context.t0 = _context["catch"](0);
62
-
63
- case 6:
64
- case "end":
65
- return _context.stop();
66
- }
38
+ while (1) switch (_context.prev = _context.next) {
39
+ case 0:
40
+ _context.prev = 0;
41
+ return _context.abrupt("return", response.text());
42
+ case 4:
43
+ _context.prev = 4;
44
+ _context.t0 = _context["catch"](0);
45
+ case 6:
46
+ case "end":
47
+ return _context.stop();
67
48
  }
68
49
  }, _callee, null, [[0, 4]]);
69
50
  }));
70
51
  return _getGeoServerResponseText.apply(this, arguments);
71
52
  }
72
-
73
53
  var GeoServerResponseError = /*#__PURE__*/function (_Error) {
74
54
  (0, _inherits2["default"])(GeoServerResponseError, _Error);
75
-
76
55
  var _super = _createSuper(GeoServerResponseError);
77
-
78
56
  /**
79
57
  * @param {String} [message=GeoServer Response Error] The error message
80
58
  * @param {String} [geoServerOutput] The error output from GeoServer (useful for debugging)
81
59
  */
82
60
  function GeoServerResponseError(message, geoServerOutput) {
83
61
  var _this;
84
-
85
62
  (0, _classCallCheck2["default"])(this, GeoServerResponseError);
86
63
  _this = _super.call(this, message);
87
64
  _this.name = 'GeoServerResponseError';
88
- _this.message = message || 'GeoServer Response Error'; // custom property as explained here: https://xjamundx.medium.com/custom-javascript-errors-in-es6-aa891b173f87
65
+ _this.message = message || 'GeoServer Response Error';
89
66
 
67
+ // custom property as explained here: https://xjamundx.medium.com/custom-javascript-errors-in-es6-aa891b173f87
90
68
  _this.geoServerOutput = geoServerOutput;
91
69
  return _this;
92
70
  }
93
-
94
71
  return (0, _createClass2["default"])(GeoServerResponseError);
95
72
  }( /*#__PURE__*/(0, _wrapNativeSuper2["default"])(Error));
96
-
97
73
  exports.GeoServerResponseError = GeoServerResponseError;
@@ -1,26 +1,17 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports["default"] = void 0;
9
-
10
8
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
-
12
9
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
-
14
10
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
15
-
16
11
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
17
-
18
12
  var _nodeFetch = _interopRequireDefault(require("node-fetch"));
19
-
20
13
  var _geoserver = require("./util/geoserver.js");
21
-
22
14
  var _about = _interopRequireDefault(require("./about.js"));
23
-
24
15
  /**
25
16
  * Client for GeoServer workspaces
26
17
  *
@@ -40,6 +31,7 @@ var WorkspaceClient = /*#__PURE__*/function () {
40
31
  this.url = url;
41
32
  this.auth = auth;
42
33
  }
34
+
43
35
  /**
44
36
  * Returns all workspaces.
45
37
  *
@@ -47,56 +39,44 @@ var WorkspaceClient = /*#__PURE__*/function () {
47
39
  *
48
40
  * @returns {Object} An Object describing the workspaces
49
41
  */
50
-
51
-
52
42
  (0, _createClass2["default"])(WorkspaceClient, [{
53
43
  key: "getAll",
54
44
  value: function () {
55
45
  var _getAll = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
56
46
  var response, geoServerResponse;
57
47
  return _regenerator["default"].wrap(function _callee$(_context) {
58
- while (1) {
59
- switch (_context.prev = _context.next) {
60
- case 0:
61
- _context.next = 2;
62
- return (0, _nodeFetch["default"])(this.url + 'workspaces.json', {
63
- credentials: 'include',
64
- method: 'GET',
65
- headers: {
66
- Authorization: this.auth
67
- }
68
- });
69
-
70
- case 2:
71
- response = _context.sent;
72
-
73
- if (response.ok) {
74
- _context.next = 8;
75
- break;
48
+ while (1) switch (_context.prev = _context.next) {
49
+ case 0:
50
+ _context.next = 2;
51
+ return (0, _nodeFetch["default"])(this.url + 'workspaces.json', {
52
+ credentials: 'include',
53
+ method: 'GET',
54
+ headers: {
55
+ Authorization: this.auth
76
56
  }
77
-
78
- _context.next = 6;
79
- return (0, _geoserver.getGeoServerResponseText)(response);
80
-
81
- case 6:
82
- geoServerResponse = _context.sent;
83
- throw new _geoserver.GeoServerResponseError(null, geoServerResponse);
84
-
85
- case 8:
86
- return _context.abrupt("return", response.json());
87
-
88
- case 9:
89
- case "end":
90
- return _context.stop();
91
- }
57
+ });
58
+ case 2:
59
+ response = _context.sent;
60
+ if (response.ok) {
61
+ _context.next = 8;
62
+ break;
63
+ }
64
+ _context.next = 6;
65
+ return (0, _geoserver.getGeoServerResponseText)(response);
66
+ case 6:
67
+ geoServerResponse = _context.sent;
68
+ throw new _geoserver.GeoServerResponseError(null, geoServerResponse);
69
+ case 8:
70
+ return _context.abrupt("return", response.json());
71
+ case 9:
72
+ case "end":
73
+ return _context.stop();
92
74
  }
93
75
  }, _callee, this);
94
76
  }));
95
-
96
77
  function getAll() {
97
78
  return _getAll.apply(this, arguments);
98
79
  }
99
-
100
80
  return getAll;
101
81
  }()
102
82
  /**
@@ -108,68 +88,54 @@ var WorkspaceClient = /*#__PURE__*/function () {
108
88
  *
109
89
  * @returns {Object} An object describing the workspaces
110
90
  */
111
-
112
91
  }, {
113
92
  key: "get",
114
93
  value: function () {
115
94
  var _get = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(name) {
116
95
  var response, grc, geoServerResponse;
117
96
  return _regenerator["default"].wrap(function _callee2$(_context2) {
118
- while (1) {
119
- switch (_context2.prev = _context2.next) {
120
- case 0:
121
- _context2.next = 2;
122
- return (0, _nodeFetch["default"])(this.url + 'workspaces/' + name + '.json', {
123
- credentials: 'include',
124
- method: 'GET',
125
- headers: {
126
- Authorization: this.auth
127
- }
128
- });
129
-
130
- case 2:
131
- response = _context2.sent;
132
-
133
- if (response.ok) {
134
- _context2.next = 15;
135
- break;
136
- }
137
-
138
- grc = new _about["default"](this.url, this.auth);
139
- _context2.next = 7;
140
- return grc.exists();
141
-
142
- case 7:
143
- if (!_context2.sent) {
144
- _context2.next = 11;
145
- break;
97
+ while (1) switch (_context2.prev = _context2.next) {
98
+ case 0:
99
+ _context2.next = 2;
100
+ return (0, _nodeFetch["default"])(this.url + 'workspaces/' + name + '.json', {
101
+ credentials: 'include',
102
+ method: 'GET',
103
+ headers: {
104
+ Authorization: this.auth
146
105
  }
147
-
148
- return _context2.abrupt("return");
149
-
150
- case 11:
151
- _context2.next = 13;
152
- return (0, _geoserver.getGeoServerResponseText)(response);
153
-
154
- case 13:
155
- geoServerResponse = _context2.sent;
156
- throw new _geoserver.GeoServerResponseError(null, geoServerResponse);
157
-
158
- case 15:
159
- return _context2.abrupt("return", response.json());
160
-
161
- case 16:
162
- case "end":
163
- return _context2.stop();
164
- }
106
+ });
107
+ case 2:
108
+ response = _context2.sent;
109
+ if (response.ok) {
110
+ _context2.next = 15;
111
+ break;
112
+ }
113
+ grc = new _about["default"](this.url, this.auth);
114
+ _context2.next = 7;
115
+ return grc.exists();
116
+ case 7:
117
+ if (!_context2.sent) {
118
+ _context2.next = 11;
119
+ break;
120
+ }
121
+ return _context2.abrupt("return");
122
+ case 11:
123
+ _context2.next = 13;
124
+ return (0, _geoserver.getGeoServerResponseText)(response);
125
+ case 13:
126
+ geoServerResponse = _context2.sent;
127
+ throw new _geoserver.GeoServerResponseError(null, geoServerResponse);
128
+ case 15:
129
+ return _context2.abrupt("return", response.json());
130
+ case 16:
131
+ case "end":
132
+ return _context2.stop();
165
133
  }
166
134
  }, _callee2, this);
167
135
  }));
168
-
169
136
  function get(_x) {
170
137
  return _get.apply(this, arguments);
171
138
  }
172
-
173
139
  return get;
174
140
  }()
175
141
  /**
@@ -181,70 +147,61 @@ var WorkspaceClient = /*#__PURE__*/function () {
181
147
  *
182
148
  * @returns {String} The name of the created workspace
183
149
  */
184
-
185
150
  }, {
186
151
  key: "create",
187
152
  value: function () {
188
153
  var _create = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(name) {
189
- var body, response, geoServerResponse;
154
+ var body, response, geoServerResponse, wsObject;
190
155
  return _regenerator["default"].wrap(function _callee3$(_context3) {
191
- while (1) {
192
- switch (_context3.prev = _context3.next) {
193
- case 0:
194
- body = {
195
- workspace: {
196
- name: name
197
- }
198
- };
199
- _context3.next = 3;
200
- return (0, _nodeFetch["default"])(this.url + 'workspaces', {
201
- credentials: 'include',
202
- method: 'POST',
203
- headers: {
204
- Authorization: this.auth,
205
- 'Content-Type': 'application/json'
206
- },
207
- body: JSON.stringify(body)
208
- });
209
-
210
- case 3:
211
- response = _context3.sent;
212
-
213
- if (response.ok) {
214
- _context3.next = 13;
215
- break;
156
+ while (1) switch (_context3.prev = _context3.next) {
157
+ case 0:
158
+ body = {
159
+ workspace: {
160
+ name: name
216
161
  }
217
-
218
- _context3.next = 7;
219
- return (0, _geoserver.getGeoServerResponseText)(response);
220
-
221
- case 7:
222
- geoServerResponse = _context3.sent;
223
- _context3.t0 = response.status;
224
- _context3.next = _context3.t0 === 409 ? 11 : 12;
162
+ };
163
+ _context3.next = 3;
164
+ return (0, _nodeFetch["default"])(this.url + 'workspaces', {
165
+ credentials: 'include',
166
+ method: 'POST',
167
+ headers: {
168
+ Authorization: this.auth,
169
+ 'Content-Type': 'application/json'
170
+ },
171
+ body: JSON.stringify(body)
172
+ });
173
+ case 3:
174
+ response = _context3.sent;
175
+ if (response.ok) {
176
+ _context3.next = 13;
225
177
  break;
226
-
227
- case 11:
228
- throw new _geoserver.GeoServerResponseError('Unable to add workspace as it already exists', geoServerResponse);
229
-
230
- case 12:
231
- throw new _geoserver.GeoServerResponseError(null, geoServerResponse);
232
-
233
- case 13:
234
- return _context3.abrupt("return", response.text());
235
-
236
- case 14:
237
- case "end":
238
- return _context3.stop();
239
- }
178
+ }
179
+ _context3.next = 7;
180
+ return (0, _geoserver.getGeoServerResponseText)(response);
181
+ case 7:
182
+ geoServerResponse = _context3.sent;
183
+ _context3.t0 = response.status;
184
+ _context3.next = _context3.t0 === 409 ? 11 : 12;
185
+ break;
186
+ case 11:
187
+ throw new _geoserver.GeoServerResponseError('Unable to add workspace as it already exists', geoServerResponse);
188
+ case 12:
189
+ throw new _geoserver.GeoServerResponseError(null, geoServerResponse);
190
+ case 13:
191
+ _context3.next = 15;
192
+ return this.get(name);
193
+ case 15:
194
+ wsObject = _context3.sent;
195
+ return _context3.abrupt("return", wsObject.workspace.name);
196
+ case 17:
197
+ case "end":
198
+ return _context3.stop();
240
199
  }
241
200
  }, _callee3, this);
242
201
  }));
243
-
244
202
  function create(_x2) {
245
203
  return _create.apply(this, arguments);
246
204
  }
247
-
248
205
  return create;
249
206
  }()
250
207
  /**
@@ -255,67 +212,53 @@ var WorkspaceClient = /*#__PURE__*/function () {
255
212
  *
256
213
  * @throws Error if request fails
257
214
  */
258
-
259
215
  }, {
260
216
  key: "delete",
261
217
  value: function () {
262
218
  var _delete2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4(name, recurse) {
263
219
  var response, geoServerResponse;
264
220
  return _regenerator["default"].wrap(function _callee4$(_context4) {
265
- while (1) {
266
- switch (_context4.prev = _context4.next) {
267
- case 0:
268
- _context4.next = 2;
269
- return (0, _nodeFetch["default"])(this.url + 'workspaces/' + name + '?recurse=' + recurse, {
270
- credentials: 'include',
271
- method: 'DELETE',
272
- headers: {
273
- Authorization: this.auth
274
- }
275
- });
276
-
277
- case 2:
278
- response = _context4.sent;
279
-
280
- if (response.ok) {
281
- _context4.next = 13;
282
- break;
221
+ while (1) switch (_context4.prev = _context4.next) {
222
+ case 0:
223
+ _context4.next = 2;
224
+ return (0, _nodeFetch["default"])(this.url + 'workspaces/' + name + '?recurse=' + recurse, {
225
+ credentials: 'include',
226
+ method: 'DELETE',
227
+ headers: {
228
+ Authorization: this.auth
283
229
  }
284
-
285
- _context4.next = 6;
286
- return (0, _geoserver.getGeoServerResponseText)(response);
287
-
288
- case 6:
289
- geoServerResponse = _context4.sent;
290
- _context4.t0 = response.status;
291
- _context4.next = _context4.t0 === 400 ? 10 : _context4.t0 === 404 ? 11 : 12;
230
+ });
231
+ case 2:
232
+ response = _context4.sent;
233
+ if (response.ok) {
234
+ _context4.next = 13;
292
235
  break;
293
-
294
- case 10:
295
- throw new _geoserver.GeoServerResponseError('Workspace or related Namespace is not empty (and recurse not true)', geoServerResponse);
296
-
297
- case 11:
298
- throw new _geoserver.GeoServerResponseError('Workspace doesn\'t exist', geoServerResponse);
299
-
300
- case 12:
301
- throw new _geoserver.GeoServerResponseError(null, geoServerResponse);
302
-
303
- case 13:
304
- case "end":
305
- return _context4.stop();
306
- }
236
+ }
237
+ _context4.next = 6;
238
+ return (0, _geoserver.getGeoServerResponseText)(response);
239
+ case 6:
240
+ geoServerResponse = _context4.sent;
241
+ _context4.t0 = response.status;
242
+ _context4.next = _context4.t0 === 400 ? 10 : _context4.t0 === 404 ? 11 : 12;
243
+ break;
244
+ case 10:
245
+ throw new _geoserver.GeoServerResponseError('Workspace or related Namespace is not empty (and recurse not true)', geoServerResponse);
246
+ case 11:
247
+ throw new _geoserver.GeoServerResponseError('Workspace doesn\'t exist', geoServerResponse);
248
+ case 12:
249
+ throw new _geoserver.GeoServerResponseError(null, geoServerResponse);
250
+ case 13:
251
+ case "end":
252
+ return _context4.stop();
307
253
  }
308
254
  }, _callee4, this);
309
255
  }));
310
-
311
256
  function _delete(_x3, _x4) {
312
257
  return _delete2.apply(this, arguments);
313
258
  }
314
-
315
259
  return _delete;
316
260
  }()
317
261
  }]);
318
262
  return WorkspaceClient;
319
263
  }();
320
-
321
264
  exports["default"] = WorkspaceClient;
@@ -8,6 +8,7 @@ import SettingsClient from './src/settings.js';
8
8
  import NamespaceClient from './src/namespace.js';
9
9
  import AboutClient from './src/about.js';
10
10
  import ResetReloadClient from './src/reset-reload.js';
11
+ import LayerGroupClient from './src/layergroup.js';
11
12
 
12
13
  export { GeoServerResponseError } from './src/util/geoserver.js'
13
14
 
@@ -32,6 +33,8 @@ export class GeoServerRestClient {
32
33
 
33
34
  /** @member {LayerClient} layers GeoServer REST client instance for layers */
34
35
  this.layers = new LayerClient(this.url, this.auth);
36
+ /** @member {LayerGroupClient} layers GeoServer REST client instance for layergroups */
37
+ this.layergroups = new LayerGroupClient(this.url, this.auth);
35
38
  /** @member {StyleClient} styles GeoServer REST client instance for styles */
36
39
  this.styles = new StyleClient(this.url, this.auth);
37
40
  /** @member {WorkspaceClient} workspaces GeoServer REST client instance for workspaces */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "geoserver-node-client",
3
- "version": "1.3.0",
3
+ "version": "1.4.1",
4
4
  "description": "Node.js client for GeoServer REST API",
5
5
  "type": "module",
6
6
  "main": "geoserver-rest-client.js",
@@ -34,23 +34,22 @@
34
34
  "author": "C. Mayer, meggsimum (info_at*meggsimum?dot?de)",
35
35
  "license": "BSD-2-Clause",
36
36
  "dependencies": {
37
- "@babel/runtime": "^7.18.3",
38
- "node-fetch": "^2.6.5"
37
+ "@babel/runtime": "^7.23.1",
38
+ "node-fetch": "^3.3.2"
39
39
  },
40
40
  "devDependencies": {
41
- "@babel/cli": "^7.17.10",
42
- "@babel/core": "^7.17.12",
43
- "@babel/plugin-transform-runtime": "^7.18.0",
44
- "@babel/preset-env": "^7.17.12",
45
- "chai": "^4.3.4",
46
- "eslint": "^7.32.0",
47
- "eslint-config-standard": "^14.1.1",
48
- "eslint-plugin-import": "^2.25.2",
41
+ "@babel/cli": "^7.23.0",
42
+ "@babel/core": "^7.23.0",
43
+ "@babel/plugin-transform-runtime": "^7.22.15",
44
+ "@babel/preset-env": "^7.22.20",
45
+ "chai": "^5.0.3",
46
+ "eslint": "^8.51.0",
47
+ "eslint-config-standard": "^17.1.0",
48
+ "eslint-plugin-import": "^2.28.1",
49
49
  "eslint-plugin-node": "^11.1.0",
50
- "eslint-plugin-promise": "^4.3.1",
51
- "eslint-plugin-standard": "^4.1.0",
52
- "jsdoc": "^4.0.0",
53
- "mocha": "^9.1.3",
54
- "release-it": "^15.4.2"
50
+ "eslint-plugin-promise": "^6.1.1",
51
+ "jsdoc": "^4.0.2",
52
+ "mocha": "^10.2.0",
53
+ "release-it": "^17.0.3"
55
54
  }
56
55
  }