@kohost/api-client 3.1.24 → 3.2.0

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.
Files changed (73) hide show
  1. package/dist/cjs/Client/index.js +471 -62
  2. package/dist/cjs/Models/Policy.js +34 -0
  3. package/dist/cjs/Models/User.js +17 -2
  4. package/dist/cjs/Models/index.js +2 -2
  5. package/dist/cjs/SocketIoClient/index.js +4 -0
  6. package/dist/cjs/index.js +1 -1
  7. package/dist/cjs/schemas/AnnouncementSchema.d.ts +1 -1
  8. package/dist/cjs/schemas/CategorySchema.d.ts +1 -1
  9. package/dist/cjs/schemas/CredentialSchema.d.ts +3 -3
  10. package/dist/cjs/schemas/DeviceRouterSchema.d.ts +1 -1
  11. package/dist/cjs/schemas/EmailMessageSchema.d.ts +1 -1
  12. package/dist/cjs/schemas/MediaFileSchema.d.ts +1 -1
  13. package/dist/cjs/schemas/MediaSourceSchema.d.ts +1 -1
  14. package/dist/cjs/schemas/OrderSchema.d.ts +7 -2
  15. package/dist/cjs/schemas/OrganizationSchema.d.ts +1 -1
  16. package/dist/cjs/schemas/PolicySchema.d.ts +25 -0
  17. package/dist/cjs/schemas/ProductSchema.d.ts +2 -2
  18. package/dist/cjs/schemas/PropertySchema.d.ts +2 -2
  19. package/dist/cjs/schemas/ReservationSchema.d.ts +1 -1
  20. package/dist/cjs/schemas/RoomSchema.d.ts +2 -1
  21. package/dist/cjs/schemas/SceneSchema.d.ts +1 -0
  22. package/dist/cjs/schemas/ShortLinkSchema.d.ts +1 -1
  23. package/dist/cjs/schemas/SmsMessageSchema.d.ts +1 -1
  24. package/dist/cjs/schemas/SpaceSchema.d.ts +1 -1
  25. package/dist/cjs/schemas/SystemUserSchema.d.ts +3 -3
  26. package/dist/cjs/schemas/TicketSchema.d.ts +2 -1
  27. package/dist/cjs/schemas/TimeSheetSchema.d.ts +1 -1
  28. package/dist/cjs/schemas/UserSchema.d.ts +26 -12
  29. package/dist/cjs/schemas/camera.json +2 -1
  30. package/dist/cjs/schemas/credential.json +3 -3
  31. package/dist/cjs/schemas/deviceRouter.json +2 -1
  32. package/dist/cjs/schemas/emailMessage.json +2 -1
  33. package/dist/cjs/schemas/mediaFile.json +2 -1
  34. package/dist/cjs/schemas/mediaSource.json +2 -1
  35. package/dist/cjs/schemas/order.json +10 -2
  36. package/dist/cjs/schemas/organization.json +2 -1
  37. package/dist/cjs/schemas/policy.json +62 -0
  38. package/dist/cjs/schemas/product.json +2 -1
  39. package/dist/cjs/schemas/property.json +3 -2
  40. package/dist/cjs/schemas/reservation.json +2 -1
  41. package/dist/cjs/schemas/room.json +5 -0
  42. package/dist/cjs/schemas/scene.json +5 -0
  43. package/dist/cjs/schemas/shortLink.json +2 -1
  44. package/dist/cjs/schemas/smsMessage.json +2 -1
  45. package/dist/cjs/schemas/space.json +2 -1
  46. package/dist/cjs/schemas/systemUser.json +10 -2
  47. package/dist/cjs/schemas/ticket.json +5 -0
  48. package/dist/cjs/schemas/timeSheet.json +1 -1
  49. package/dist/cjs/schemas/user.json +23 -26
  50. package/dist/cjs/utils/entityFactory.js +80 -0
  51. package/dist/cjs/utils/index.js +2 -0
  52. package/dist/esm/Client.js +473 -64
  53. package/dist/esm/Client.js.map +3 -3
  54. package/dist/esm/Models.js +210 -50
  55. package/dist/esm/Models.js.map +3 -3
  56. package/dist/esm/SocketIoClient.js +41 -17
  57. package/dist/esm/SocketIoClient.js.map +2 -2
  58. package/dist/esm/defs.js +33 -24
  59. package/dist/esm/defs.js.map +2 -2
  60. package/dist/esm/utils.js +5975 -1
  61. package/dist/esm/utils.js.map +4 -4
  62. package/dist/useCases/CreatePolicy.js +32 -0
  63. package/dist/useCases/DeletePolicy.js +32 -0
  64. package/dist/useCases/{SetCustomScene.js → DescribePolicy.js} +3 -3
  65. package/dist/useCases/DescribeReservationPetProducts.js +32 -0
  66. package/dist/useCases/DescribeReservationPromos.js +32 -0
  67. package/dist/useCases/ListPolicies.js +32 -0
  68. package/dist/useCases/ListProducts.js +32 -0
  69. package/dist/useCases/PurchaseReservationPetProducts.js +32 -0
  70. package/dist/useCases/PurchaseReservationPromos.js +32 -0
  71. package/dist/useCases/SetScene.js +32 -0
  72. package/dist/useCases/UpdatePolicy.js +32 -0
  73. package/package.json +4 -4
@@ -0,0 +1,32 @@
1
+ module.exports = function CreatePolicy(requestData = { data: null, query: null, headers: null }, httpConfigOptions = {}) {
2
+ if (!requestData)
3
+ requestData = {};
4
+ const pathParams = null;
5
+ const { data, query, headers } = requestData;
6
+ let url = "/policies";
7
+ if (pathParams && data) {
8
+ for (const param of pathParams) {
9
+ const paramName = param.replace(":", "");
10
+ url = url.replace(param, data[paramName]);
11
+ }
12
+ }
13
+ if (url.match(/:[a-zA-Z0-9]+/g)) {
14
+ const missingParams = url.match(/:[a-zA-Z0-9]+/g);
15
+ const missing = missingParams.map((param) => param.replace(":", ""));
16
+ return Promise.reject(
17
+ new Error("Missing parameters: " + missing.join(", "))
18
+ );
19
+ }
20
+ const config = {
21
+ method: "post",
22
+ url,
23
+ ...httpConfigOptions
24
+ };
25
+ if (data)
26
+ config.data = data;
27
+ if (query)
28
+ config.params = query;
29
+ if (headers)
30
+ config.headers = headers;
31
+ return this._http.request(config);
32
+ };
@@ -0,0 +1,32 @@
1
+ module.exports = function DeletePolicy(requestData = { data: null, query: null, headers: null }, httpConfigOptions = {}) {
2
+ if (!requestData)
3
+ requestData = {};
4
+ const pathParams = [":id"];
5
+ const { data, query, headers } = requestData;
6
+ let url = "/policies/:id";
7
+ if (pathParams && data) {
8
+ for (const param of pathParams) {
9
+ const paramName = param.replace(":", "");
10
+ url = url.replace(param, data[paramName]);
11
+ }
12
+ }
13
+ if (url.match(/:[a-zA-Z0-9]+/g)) {
14
+ const missingParams = url.match(/:[a-zA-Z0-9]+/g);
15
+ const missing = missingParams.map((param) => param.replace(":", ""));
16
+ return Promise.reject(
17
+ new Error("Missing parameters: " + missing.join(", "))
18
+ );
19
+ }
20
+ const config = {
21
+ method: "delete",
22
+ url,
23
+ ...httpConfigOptions
24
+ };
25
+ if (data)
26
+ config.data = data;
27
+ if (query)
28
+ config.params = query;
29
+ if (headers)
30
+ config.headers = headers;
31
+ return this._http.request(config);
32
+ };
@@ -1,9 +1,9 @@
1
- module.exports = function SetCustomScene(requestData = { data: null, query: null, headers: null }, httpConfigOptions = {}) {
1
+ module.exports = function DescribePolicy(requestData = { data: null, query: null, headers: null }, httpConfigOptions = {}) {
2
2
  if (!requestData)
3
3
  requestData = {};
4
4
  const pathParams = [":id"];
5
5
  const { data, query, headers } = requestData;
6
- let url = "/scenes/:id";
6
+ let url = "/policies/:id";
7
7
  if (pathParams && data) {
8
8
  for (const param of pathParams) {
9
9
  const paramName = param.replace(":", "");
@@ -18,7 +18,7 @@ module.exports = function SetCustomScene(requestData = { data: null, query: null
18
18
  );
19
19
  }
20
20
  const config = {
21
- method: "post",
21
+ method: "get",
22
22
  url,
23
23
  ...httpConfigOptions
24
24
  };
@@ -0,0 +1,32 @@
1
+ module.exports = function DescribeReservationPetProducts(requestData = { data: null, query: null, headers: null }, httpConfigOptions = {}) {
2
+ if (!requestData)
3
+ requestData = {};
4
+ const pathParams = [":id"];
5
+ const { data, query, headers } = requestData;
6
+ let url = "/reservations/:id/products/pet";
7
+ if (pathParams && data) {
8
+ for (const param of pathParams) {
9
+ const paramName = param.replace(":", "");
10
+ url = url.replace(param, data[paramName]);
11
+ }
12
+ }
13
+ if (url.match(/:[a-zA-Z0-9]+/g)) {
14
+ const missingParams = url.match(/:[a-zA-Z0-9]+/g);
15
+ const missing = missingParams.map((param) => param.replace(":", ""));
16
+ return Promise.reject(
17
+ new Error("Missing parameters: " + missing.join(", "))
18
+ );
19
+ }
20
+ const config = {
21
+ method: "get",
22
+ url,
23
+ ...httpConfigOptions
24
+ };
25
+ if (data)
26
+ config.data = data;
27
+ if (query)
28
+ config.params = query;
29
+ if (headers)
30
+ config.headers = headers;
31
+ return this._http.request(config);
32
+ };
@@ -0,0 +1,32 @@
1
+ module.exports = function DescribeReservationPromos(requestData = { data: null, query: null, headers: null }, httpConfigOptions = {}) {
2
+ if (!requestData)
3
+ requestData = {};
4
+ const pathParams = [":id"];
5
+ const { data, query, headers } = requestData;
6
+ let url = "/reservations/:id/products/promo";
7
+ if (pathParams && data) {
8
+ for (const param of pathParams) {
9
+ const paramName = param.replace(":", "");
10
+ url = url.replace(param, data[paramName]);
11
+ }
12
+ }
13
+ if (url.match(/:[a-zA-Z0-9]+/g)) {
14
+ const missingParams = url.match(/:[a-zA-Z0-9]+/g);
15
+ const missing = missingParams.map((param) => param.replace(":", ""));
16
+ return Promise.reject(
17
+ new Error("Missing parameters: " + missing.join(", "))
18
+ );
19
+ }
20
+ const config = {
21
+ method: "get",
22
+ url,
23
+ ...httpConfigOptions
24
+ };
25
+ if (data)
26
+ config.data = data;
27
+ if (query)
28
+ config.params = query;
29
+ if (headers)
30
+ config.headers = headers;
31
+ return this._http.request(config);
32
+ };
@@ -0,0 +1,32 @@
1
+ module.exports = function ListPolicies(requestData = { data: null, query: null, headers: null }, httpConfigOptions = {}) {
2
+ if (!requestData)
3
+ requestData = {};
4
+ const pathParams = null;
5
+ const { data, query, headers } = requestData;
6
+ let url = "/policies";
7
+ if (pathParams && data) {
8
+ for (const param of pathParams) {
9
+ const paramName = param.replace(":", "");
10
+ url = url.replace(param, data[paramName]);
11
+ }
12
+ }
13
+ if (url.match(/:[a-zA-Z0-9]+/g)) {
14
+ const missingParams = url.match(/:[a-zA-Z0-9]+/g);
15
+ const missing = missingParams.map((param) => param.replace(":", ""));
16
+ return Promise.reject(
17
+ new Error("Missing parameters: " + missing.join(", "))
18
+ );
19
+ }
20
+ const config = {
21
+ method: "get",
22
+ url,
23
+ ...httpConfigOptions
24
+ };
25
+ if (data)
26
+ config.data = data;
27
+ if (query)
28
+ config.params = query;
29
+ if (headers)
30
+ config.headers = headers;
31
+ return this._http.request(config);
32
+ };
@@ -0,0 +1,32 @@
1
+ module.exports = function ListProducts(requestData = { data: null, query: null, headers: null }, httpConfigOptions = {}) {
2
+ if (!requestData)
3
+ requestData = {};
4
+ const pathParams = null;
5
+ const { data, query, headers } = requestData;
6
+ let url = "/products";
7
+ if (pathParams && data) {
8
+ for (const param of pathParams) {
9
+ const paramName = param.replace(":", "");
10
+ url = url.replace(param, data[paramName]);
11
+ }
12
+ }
13
+ if (url.match(/:[a-zA-Z0-9]+/g)) {
14
+ const missingParams = url.match(/:[a-zA-Z0-9]+/g);
15
+ const missing = missingParams.map((param) => param.replace(":", ""));
16
+ return Promise.reject(
17
+ new Error("Missing parameters: " + missing.join(", "))
18
+ );
19
+ }
20
+ const config = {
21
+ method: "get",
22
+ url,
23
+ ...httpConfigOptions
24
+ };
25
+ if (data)
26
+ config.data = data;
27
+ if (query)
28
+ config.params = query;
29
+ if (headers)
30
+ config.headers = headers;
31
+ return this._http.request(config);
32
+ };
@@ -0,0 +1,32 @@
1
+ module.exports = function PurchaseReservationPetProducts(requestData = { data: null, query: null, headers: null }, httpConfigOptions = {}) {
2
+ if (!requestData)
3
+ requestData = {};
4
+ const pathParams = [":id"];
5
+ const { data, query, headers } = requestData;
6
+ let url = "/reservations/:id/products/pet";
7
+ if (pathParams && data) {
8
+ for (const param of pathParams) {
9
+ const paramName = param.replace(":", "");
10
+ url = url.replace(param, data[paramName]);
11
+ }
12
+ }
13
+ if (url.match(/:[a-zA-Z0-9]+/g)) {
14
+ const missingParams = url.match(/:[a-zA-Z0-9]+/g);
15
+ const missing = missingParams.map((param) => param.replace(":", ""));
16
+ return Promise.reject(
17
+ new Error("Missing parameters: " + missing.join(", "))
18
+ );
19
+ }
20
+ const config = {
21
+ method: "post",
22
+ url,
23
+ ...httpConfigOptions
24
+ };
25
+ if (data)
26
+ config.data = data;
27
+ if (query)
28
+ config.params = query;
29
+ if (headers)
30
+ config.headers = headers;
31
+ return this._http.request(config);
32
+ };
@@ -0,0 +1,32 @@
1
+ module.exports = function PurchaseReservationPromos(requestData = { data: null, query: null, headers: null }, httpConfigOptions = {}) {
2
+ if (!requestData)
3
+ requestData = {};
4
+ const pathParams = [":id"];
5
+ const { data, query, headers } = requestData;
6
+ let url = "/reservations/:id/products/promo";
7
+ if (pathParams && data) {
8
+ for (const param of pathParams) {
9
+ const paramName = param.replace(":", "");
10
+ url = url.replace(param, data[paramName]);
11
+ }
12
+ }
13
+ if (url.match(/:[a-zA-Z0-9]+/g)) {
14
+ const missingParams = url.match(/:[a-zA-Z0-9]+/g);
15
+ const missing = missingParams.map((param) => param.replace(":", ""));
16
+ return Promise.reject(
17
+ new Error("Missing parameters: " + missing.join(", "))
18
+ );
19
+ }
20
+ const config = {
21
+ method: "post",
22
+ url,
23
+ ...httpConfigOptions
24
+ };
25
+ if (data)
26
+ config.data = data;
27
+ if (query)
28
+ config.params = query;
29
+ if (headers)
30
+ config.headers = headers;
31
+ return this._http.request(config);
32
+ };
@@ -0,0 +1,32 @@
1
+ module.exports = function SetScene(requestData = { data: null, query: null, headers: null }, httpConfigOptions = {}) {
2
+ if (!requestData)
3
+ requestData = {};
4
+ const pathParams = [":id"];
5
+ const { data, query, headers } = requestData;
6
+ let url = "/scenes/:id";
7
+ if (pathParams && data) {
8
+ for (const param of pathParams) {
9
+ const paramName = param.replace(":", "");
10
+ url = url.replace(param, data[paramName]);
11
+ }
12
+ }
13
+ if (url.match(/:[a-zA-Z0-9]+/g)) {
14
+ const missingParams = url.match(/:[a-zA-Z0-9]+/g);
15
+ const missing = missingParams.map((param) => param.replace(":", ""));
16
+ return Promise.reject(
17
+ new Error("Missing parameters: " + missing.join(", "))
18
+ );
19
+ }
20
+ const config = {
21
+ method: "post",
22
+ url,
23
+ ...httpConfigOptions
24
+ };
25
+ if (data)
26
+ config.data = data;
27
+ if (query)
28
+ config.params = query;
29
+ if (headers)
30
+ config.headers = headers;
31
+ return this._http.request(config);
32
+ };
@@ -0,0 +1,32 @@
1
+ module.exports = function UpdatePolicy(requestData = { data: null, query: null, headers: null }, httpConfigOptions = {}) {
2
+ if (!requestData)
3
+ requestData = {};
4
+ const pathParams = [":id"];
5
+ const { data, query, headers } = requestData;
6
+ let url = "/policies/:id";
7
+ if (pathParams && data) {
8
+ for (const param of pathParams) {
9
+ const paramName = param.replace(":", "");
10
+ url = url.replace(param, data[paramName]);
11
+ }
12
+ }
13
+ if (url.match(/:[a-zA-Z0-9]+/g)) {
14
+ const missingParams = url.match(/:[a-zA-Z0-9]+/g);
15
+ const missing = missingParams.map((param) => param.replace(":", ""));
16
+ return Promise.reject(
17
+ new Error("Missing parameters: " + missing.join(", "))
18
+ );
19
+ }
20
+ const config = {
21
+ method: "put",
22
+ url,
23
+ ...httpConfigOptions
24
+ };
25
+ if (data)
26
+ config.data = data;
27
+ if (query)
28
+ config.params = query;
29
+ if (headers)
30
+ config.headers = headers;
31
+ return this._http.request(config);
32
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kohost/api-client",
3
- "version": "3.1.24",
3
+ "version": "3.2.0",
4
4
  "description": "API client, models, schemas, commands, and events for Kohost applications",
5
5
  "author": "Ian Rogers",
6
6
  "readme": "README.md",
@@ -50,10 +50,10 @@
50
50
  ],
51
51
  "devDependencies": {
52
52
  "@kohost/eslint-config": "^1.0.0",
53
- "esbuild": "^0.19.5",
53
+ "esbuild": "^0.20.1",
54
54
  "eslint": "^8.6.0",
55
55
  "eslint-plugin-jest": "^27.1.3",
56
- "husky": "^8.0.1",
56
+ "husky": "^8.0.3",
57
57
  "jest": "^29.2.2",
58
58
  "json-schema-to-typescript": "^13.0.2",
59
59
  "lint-staged": "^15.0.2",
@@ -64,7 +64,7 @@
64
64
  "ajv": "^8.11.0",
65
65
  "ajv-formats": "^2.1.1",
66
66
  "amqplib": "^0.10.3",
67
- "axios": "^1.0.0",
67
+ "axios": "^1.6.7",
68
68
  "debug": "^4.3.4",
69
69
  "events": "^3.3.0",
70
70
  "nanoid": "^3.3.4",