@kohost/api-client 3.0.0-beta.53 → 3.0.0-beta.55
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/dist/cjs/AMQPClient/index.js +1 -0
- package/dist/cjs/Client/index.js +40 -0
- package/dist/cjs/Errors/ConflictError.js +9 -0
- package/dist/cjs/Errors/index.js +1 -0
- package/dist/cjs/Events/SceneSetEvent.js +17 -0
- package/dist/cjs/Events/index.js +3 -0
- package/dist/cjs/Models/Identification.js +1 -1
- package/dist/cjs/Models/Notification.js +34 -0
- package/dist/cjs/Models/Order.js +48 -0
- package/dist/cjs/Models/Reservation.js +10 -0
- package/dist/cjs/Models/Scene.js +15 -35
- package/dist/cjs/Models/User.js +36 -0
- package/dist/cjs/Models/index.js +4 -0
- package/dist/cjs/schemas/AlarmSchema.d.ts +150 -0
- package/dist/cjs/schemas/CameraSchema.d.ts +142 -0
- package/dist/cjs/schemas/CourtesySchema.d.ts +140 -0
- package/dist/cjs/schemas/CredentialSchema.d.ts +22 -0
- package/dist/cjs/schemas/DefinitionsSchema.d.ts +10 -0
- package/dist/cjs/schemas/DimmerSchema.d.ts +140 -0
- package/dist/cjs/schemas/DiscoveredDeviceSchema.d.ts +39 -0
- package/dist/cjs/schemas/EmailMessageSchema.d.ts +52 -0
- package/dist/cjs/schemas/EnergyReportSchema.d.ts +57 -0
- package/dist/cjs/schemas/EnergyReportShardSchema.d.ts +61 -0
- package/dist/cjs/schemas/GatewaySchema.d.ts +137 -0
- package/dist/cjs/schemas/IdentificationSchema.d.ts +48 -0
- package/dist/cjs/schemas/LockSchema.d.ts +140 -0
- package/dist/cjs/schemas/MediaFileSchema.d.ts +46 -0
- package/dist/cjs/schemas/MediaSourceSchema.d.ts +237 -0
- package/dist/cjs/schemas/MotionSensorSchema.d.ts +136 -0
- package/dist/cjs/schemas/NotificationSchema.d.ts +57 -0
- package/dist/cjs/schemas/OrderSchema.d.ts +90 -0
- package/dist/cjs/schemas/OrganizationSchema.d.ts +33 -0
- package/dist/cjs/schemas/PaymentSchema.d.ts +36 -0
- package/dist/cjs/schemas/ProductSchema.d.ts +65 -0
- package/dist/cjs/schemas/PropertySchema.d.ts +119 -0
- package/dist/cjs/schemas/ReservationSchema.d.ts +89 -0
- package/dist/cjs/schemas/RoomSchema.d.ts +1035 -0
- package/dist/cjs/schemas/SceneSchema.d.ts +57 -0
- package/dist/cjs/schemas/ShortLinkSchema.d.ts +23 -0
- package/dist/cjs/schemas/SmsMessageSchema.d.ts +43 -0
- package/dist/cjs/schemas/SpaceSchema.d.ts +64 -0
- package/dist/cjs/schemas/SpaceTypeSchema.d.ts +80 -0
- package/dist/cjs/schemas/SwitchSchema.d.ts +140 -0
- package/dist/cjs/schemas/SystemUserSchema.d.ts +184 -0
- package/dist/cjs/schemas/ThermostatSchema.d.ts +170 -0
- package/dist/cjs/schemas/TicketSchema.d.ts +76 -0
- package/dist/cjs/schemas/UserSchema.d.ts +259 -0
- package/dist/cjs/schemas/WindowCoveringSchema.d.ts +139 -0
- package/dist/cjs/schemas/alarm.json +7 -21
- package/dist/cjs/schemas/courtesy.json +3 -0
- package/dist/cjs/schemas/dimmer.json +3 -0
- package/dist/cjs/schemas/mediaFile.json +4 -1
- package/dist/cjs/schemas/mediaSource.json +3 -0
- package/dist/cjs/schemas/notification.json +29 -0
- package/dist/cjs/schemas/order.json +179 -0
- package/dist/cjs/schemas/space.json +5 -1
- package/dist/cjs/schemas/spaceType.json +6 -0
- package/dist/cjs/schemas/switch.json +3 -0
- package/dist/cjs/schemas/windowCovering.json +4 -4
- package/dist/esm/Client.js +40 -0
- package/dist/esm/Client.js.map +3 -3
- package/dist/esm/Commands.js +18 -0
- package/dist/esm/Commands.js.map +3 -3
- package/dist/esm/Errors.js +18 -0
- package/dist/esm/Errors.js.map +3 -3
- package/dist/esm/Events.js +24 -0
- package/dist/esm/Events.js.map +3 -3
- package/dist/esm/Models.js +421 -119
- package/dist/esm/Models.js.map +3 -3
- package/dist/esm/utils.js +18 -0
- package/dist/esm/utils.js.map +3 -3
- package/dist/useCases/RequestPWAToken.js +32 -0
- package/package.json +1 -1
package/dist/esm/Models.js
CHANGED
|
@@ -7853,6 +7853,23 @@ var require_AuthorizationError = __commonJS({
|
|
|
7853
7853
|
}
|
|
7854
7854
|
});
|
|
7855
7855
|
|
|
7856
|
+
// src/Errors/ConflictError.js
|
|
7857
|
+
var require_ConflictError = __commonJS({
|
|
7858
|
+
"src/Errors/ConflictError.js"(exports, module) {
|
|
7859
|
+
var AppError = require_AppError();
|
|
7860
|
+
module.exports = class ConflictError extends AppError {
|
|
7861
|
+
static {
|
|
7862
|
+
__name(this, "ConflictError");
|
|
7863
|
+
}
|
|
7864
|
+
constructor(message = "Bad Request", options = {}) {
|
|
7865
|
+
super(message, options);
|
|
7866
|
+
this.statusCode = 409;
|
|
7867
|
+
Object.setPrototypeOf(this, ConflictError.prototype);
|
|
7868
|
+
}
|
|
7869
|
+
};
|
|
7870
|
+
}
|
|
7871
|
+
});
|
|
7872
|
+
|
|
7856
7873
|
// src/Errors/DeviceCommError.js
|
|
7857
7874
|
var require_DeviceCommError = __commonJS({
|
|
7858
7875
|
"src/Errors/DeviceCommError.js"(exports, module) {
|
|
@@ -7996,6 +8013,7 @@ var require_Errors = __commonJS({
|
|
|
7996
8013
|
AppError: require_AppError(),
|
|
7997
8014
|
AuthenticationError: require_AuthenticationError(),
|
|
7998
8015
|
AuthorizationError: require_AuthorizationError(),
|
|
8016
|
+
ConflictError: require_ConflictError(),
|
|
7999
8017
|
DeviceCommError: require_DeviceCommError(),
|
|
8000
8018
|
LoginError: require_LoginError(),
|
|
8001
8019
|
NotFoundError: require_NotFoundError(),
|
|
@@ -8178,6 +8196,15 @@ var require_Reservation = __commonJS({
|
|
|
8178
8196
|
get hasPayment() {
|
|
8179
8197
|
return this.paymentId?.length > 0;
|
|
8180
8198
|
}
|
|
8199
|
+
get nights() {
|
|
8200
|
+
const start = new Date(this.checkInDateTime);
|
|
8201
|
+
const end = new Date(this.checkOutDateTime);
|
|
8202
|
+
let nights = Math.round((end - start) / (1e3 * 60 * 60 * 24));
|
|
8203
|
+
if (nights <= 0) {
|
|
8204
|
+
nights = 1;
|
|
8205
|
+
}
|
|
8206
|
+
return nights;
|
|
8207
|
+
}
|
|
8181
8208
|
range(tz) {
|
|
8182
8209
|
const start = new Date(this.checkInDateTime);
|
|
8183
8210
|
const end = new Date(this.checkOutDateTime);
|
|
@@ -8257,6 +8284,9 @@ var require_mediaFile = __commonJS({
|
|
|
8257
8284
|
type: "string",
|
|
8258
8285
|
default: "mediaFile"
|
|
8259
8286
|
},
|
|
8287
|
+
name: {
|
|
8288
|
+
type: "string"
|
|
8289
|
+
},
|
|
8260
8290
|
fileHash: {
|
|
8261
8291
|
type: "string"
|
|
8262
8292
|
},
|
|
@@ -8308,7 +8338,7 @@ var require_mediaFile = __commonJS({
|
|
|
8308
8338
|
}
|
|
8309
8339
|
},
|
|
8310
8340
|
additionalProperties: false,
|
|
8311
|
-
required: ["
|
|
8341
|
+
required: ["type"]
|
|
8312
8342
|
};
|
|
8313
8343
|
}
|
|
8314
8344
|
});
|
|
@@ -8388,6 +8418,9 @@ var require_switch = __commonJS({
|
|
|
8388
8418
|
driver: {
|
|
8389
8419
|
$ref: "definitions.json#/definitions/driver"
|
|
8390
8420
|
},
|
|
8421
|
+
offline: {
|
|
8422
|
+
type: "boolean"
|
|
8423
|
+
},
|
|
8391
8424
|
state: {
|
|
8392
8425
|
type: "string",
|
|
8393
8426
|
enum: ["on", "off"]
|
|
@@ -8461,6 +8494,9 @@ var require_alarm = __commonJS({
|
|
|
8461
8494
|
name: {
|
|
8462
8495
|
type: "string"
|
|
8463
8496
|
},
|
|
8497
|
+
offline: {
|
|
8498
|
+
type: "boolean"
|
|
8499
|
+
},
|
|
8464
8500
|
type: {
|
|
8465
8501
|
$ref: "definitions.json#/definitions/type"
|
|
8466
8502
|
},
|
|
@@ -8488,11 +8524,11 @@ var require_alarm = __commonJS({
|
|
|
8488
8524
|
type: "string"
|
|
8489
8525
|
},
|
|
8490
8526
|
securityMode: {
|
|
8491
|
-
type: "string",
|
|
8492
|
-
enum: ["arming", "disarming", "armed", "disarmed", "alarm"]
|
|
8527
|
+
type: ["string", "null"],
|
|
8528
|
+
enum: ["arming", "disarming", "armed", "disarmed", "alarm", null]
|
|
8493
8529
|
},
|
|
8494
8530
|
readyToArm: {
|
|
8495
|
-
type: "boolean"
|
|
8531
|
+
type: ["boolean", "null"]
|
|
8496
8532
|
}
|
|
8497
8533
|
},
|
|
8498
8534
|
additionalProperties: false
|
|
@@ -8514,27 +8550,12 @@ var require_alarm = __commonJS({
|
|
|
8514
8550
|
type: "boolean"
|
|
8515
8551
|
},
|
|
8516
8552
|
bypassed: {
|
|
8517
|
-
type: "boolean"
|
|
8553
|
+
type: ["boolean", "null"]
|
|
8518
8554
|
}
|
|
8519
8555
|
},
|
|
8520
8556
|
additionalProperties: false
|
|
8521
8557
|
}
|
|
8522
8558
|
},
|
|
8523
|
-
supportedTroubles: {
|
|
8524
|
-
type: "array",
|
|
8525
|
-
uniqueItems: true,
|
|
8526
|
-
items: {
|
|
8527
|
-
type: "string",
|
|
8528
|
-
enum: ["battery", "ac", "phone", "bell", "fire"]
|
|
8529
|
-
}
|
|
8530
|
-
},
|
|
8531
|
-
troubles: {
|
|
8532
|
-
type: "array",
|
|
8533
|
-
uniqueItems: true,
|
|
8534
|
-
items: {
|
|
8535
|
-
$ref: "#/properties/supportedTroubles/items"
|
|
8536
|
-
}
|
|
8537
|
-
},
|
|
8538
8559
|
watts: {
|
|
8539
8560
|
$ref: "definitions.json#/definitions/watts"
|
|
8540
8561
|
}
|
|
@@ -8546,8 +8567,6 @@ var require_alarm = __commonJS({
|
|
|
8546
8567
|
"systemData",
|
|
8547
8568
|
"areas",
|
|
8548
8569
|
"zones",
|
|
8549
|
-
"supportedTroubles",
|
|
8550
|
-
"troubles",
|
|
8551
8570
|
"driver"
|
|
8552
8571
|
]
|
|
8553
8572
|
};
|
|
@@ -8622,6 +8641,9 @@ var require_dimmer = __commonJS({
|
|
|
8622
8641
|
driver: {
|
|
8623
8642
|
$ref: "definitions.json#/definitions/driver"
|
|
8624
8643
|
},
|
|
8644
|
+
offline: {
|
|
8645
|
+
type: "boolean"
|
|
8646
|
+
},
|
|
8625
8647
|
level: {
|
|
8626
8648
|
type: "number",
|
|
8627
8649
|
minimum: 0,
|
|
@@ -9045,9 +9067,6 @@ var require_windowCovering = __commonJS({
|
|
|
9045
9067
|
type: {
|
|
9046
9068
|
$ref: "definitions.json#/definitions/type"
|
|
9047
9069
|
},
|
|
9048
|
-
subType: {
|
|
9049
|
-
$ref: "definitions.json#/definitions/subType"
|
|
9050
|
-
},
|
|
9051
9070
|
supportedNotifications: {
|
|
9052
9071
|
$ref: "definitions.json#/definitions/supportedNotifications"
|
|
9053
9072
|
},
|
|
@@ -9057,6 +9076,9 @@ var require_windowCovering = __commonJS({
|
|
|
9057
9076
|
driver: {
|
|
9058
9077
|
$ref: "definitions.json#/definitions/driver"
|
|
9059
9078
|
},
|
|
9079
|
+
offline: {
|
|
9080
|
+
type: "boolean"
|
|
9081
|
+
},
|
|
9060
9082
|
position: {
|
|
9061
9083
|
type: "number",
|
|
9062
9084
|
minimum: 0,
|
|
@@ -9219,7 +9241,7 @@ var require_Identification = __commonJS({
|
|
|
9219
9241
|
super(identification);
|
|
9220
9242
|
}
|
|
9221
9243
|
get isExpired() {
|
|
9222
|
-
return new Date(this.
|
|
9244
|
+
return new Date(this.expires) < /* @__PURE__ */ new Date();
|
|
9223
9245
|
}
|
|
9224
9246
|
};
|
|
9225
9247
|
Object.defineProperty(Identification.prototype, "schema", {
|
|
@@ -9504,6 +9526,7 @@ var require_User = __commonJS({
|
|
|
9504
9526
|
var Kohost = require_Kohost();
|
|
9505
9527
|
var MediaFile = require_MediaFile();
|
|
9506
9528
|
var Reservation = require_Reservation();
|
|
9529
|
+
var Identification = require_Identification();
|
|
9507
9530
|
var { nanoid: nanoid3 } = (init_index_browser2(), __toCommonJS(index_browser_exports2));
|
|
9508
9531
|
schemas.add(paymentSchema);
|
|
9509
9532
|
schemas.add(schema);
|
|
@@ -9523,6 +9546,10 @@ var require_User = __commonJS({
|
|
|
9523
9546
|
user.photo = new MediaFile(user.photo);
|
|
9524
9547
|
if (user.reservations)
|
|
9525
9548
|
user.reservations = user.reservations.map((res) => new Reservation(res));
|
|
9549
|
+
if (user.identifications)
|
|
9550
|
+
user.identifications = user.identifications.map(
|
|
9551
|
+
(id) => new Identification(id)
|
|
9552
|
+
);
|
|
9526
9553
|
super(user);
|
|
9527
9554
|
}
|
|
9528
9555
|
static validatePhone(phoneNumber) {
|
|
@@ -9564,6 +9591,31 @@ var require_User = __commonJS({
|
|
|
9564
9591
|
return Array.from(roles);
|
|
9565
9592
|
}
|
|
9566
9593
|
});
|
|
9594
|
+
Object.defineProperty(User.prototype, "isSuperAdmin", {
|
|
9595
|
+
get: function() {
|
|
9596
|
+
return this.roles.includes("SuperAdmin");
|
|
9597
|
+
}
|
|
9598
|
+
});
|
|
9599
|
+
Object.defineProperty(User.prototype, "isAdmin", {
|
|
9600
|
+
get: function() {
|
|
9601
|
+
return this.roles.includes("Admin") || this.roles.includes("Administrator");
|
|
9602
|
+
}
|
|
9603
|
+
});
|
|
9604
|
+
Object.defineProperty(User.prototype, "isManager", {
|
|
9605
|
+
get: function() {
|
|
9606
|
+
return this.roles.includes("Manager");
|
|
9607
|
+
}
|
|
9608
|
+
});
|
|
9609
|
+
Object.defineProperty(User.prototype, "isUser", {
|
|
9610
|
+
get: function() {
|
|
9611
|
+
return this.roles.includes("User");
|
|
9612
|
+
}
|
|
9613
|
+
});
|
|
9614
|
+
Object.defineProperty(User.prototype, "isGuest", {
|
|
9615
|
+
get: function() {
|
|
9616
|
+
return this.roles.includes("Guest");
|
|
9617
|
+
}
|
|
9618
|
+
});
|
|
9567
9619
|
module.exports = User;
|
|
9568
9620
|
}
|
|
9569
9621
|
});
|
|
@@ -9747,6 +9799,9 @@ var require_courtesy = __commonJS({
|
|
|
9747
9799
|
driver: {
|
|
9748
9800
|
$ref: "definitions.json#/definitions/driver"
|
|
9749
9801
|
},
|
|
9802
|
+
offline: {
|
|
9803
|
+
type: "boolean"
|
|
9804
|
+
},
|
|
9750
9805
|
supportedStates: {
|
|
9751
9806
|
type: "array",
|
|
9752
9807
|
uniqueItems: true,
|
|
@@ -10010,6 +10065,9 @@ var require_mediaSource = __commonJS({
|
|
|
10010
10065
|
driver: {
|
|
10011
10066
|
$ref: "definitions.json#/definitions/driver"
|
|
10012
10067
|
},
|
|
10068
|
+
offline: {
|
|
10069
|
+
type: "boolean"
|
|
10070
|
+
},
|
|
10013
10071
|
audio: {
|
|
10014
10072
|
type: "boolean"
|
|
10015
10073
|
},
|
|
@@ -11138,72 +11196,12 @@ var require_scene = __commonJS({
|
|
|
11138
11196
|
}
|
|
11139
11197
|
});
|
|
11140
11198
|
|
|
11141
|
-
// src/Commands/Command.js
|
|
11142
|
-
var require_Command = __commonJS({
|
|
11143
|
-
"src/Commands/Command.js"(exports, module) {
|
|
11144
|
-
var Command = class {
|
|
11145
|
-
static {
|
|
11146
|
-
__name(this, "Command");
|
|
11147
|
-
}
|
|
11148
|
-
constructor(data) {
|
|
11149
|
-
this.data = {};
|
|
11150
|
-
if (!data)
|
|
11151
|
-
throw new Error("Command data is required");
|
|
11152
|
-
if (typeof data !== "object")
|
|
11153
|
-
throw new Error("Command data must be an object");
|
|
11154
|
-
for (const key in data) {
|
|
11155
|
-
this.data[key] = data[key];
|
|
11156
|
-
}
|
|
11157
|
-
}
|
|
11158
|
-
get name() {
|
|
11159
|
-
throw new Error("Command name is required");
|
|
11160
|
-
}
|
|
11161
|
-
get type() {
|
|
11162
|
-
return "Command";
|
|
11163
|
-
}
|
|
11164
|
-
get routingKey() {
|
|
11165
|
-
return "";
|
|
11166
|
-
}
|
|
11167
|
-
get exchange() {
|
|
11168
|
-
return "Commands";
|
|
11169
|
-
}
|
|
11170
|
-
build() {
|
|
11171
|
-
return { data: { ...this.data } };
|
|
11172
|
-
}
|
|
11173
|
-
};
|
|
11174
|
-
module.exports = Command;
|
|
11175
|
-
}
|
|
11176
|
-
});
|
|
11177
|
-
|
|
11178
|
-
// src/Commands/SetSceneCommand.js
|
|
11179
|
-
var require_SetSceneCommand = __commonJS({
|
|
11180
|
-
"src/Commands/SetSceneCommand.js"(exports, module) {
|
|
11181
|
-
var Command = require_Command();
|
|
11182
|
-
var SetSceneCommand = class extends Command {
|
|
11183
|
-
static {
|
|
11184
|
-
__name(this, "SetSceneCommand");
|
|
11185
|
-
}
|
|
11186
|
-
constructor({ id, devices, ...rest }) {
|
|
11187
|
-
super({ id, devices, ...rest });
|
|
11188
|
-
}
|
|
11189
|
-
get name() {
|
|
11190
|
-
return "SetScene";
|
|
11191
|
-
}
|
|
11192
|
-
get routingKey() {
|
|
11193
|
-
return `scene.${this.data.id}.set`;
|
|
11194
|
-
}
|
|
11195
|
-
};
|
|
11196
|
-
module.exports = SetSceneCommand;
|
|
11197
|
-
}
|
|
11198
|
-
});
|
|
11199
|
-
|
|
11200
11199
|
// src/Models/Scene.js
|
|
11201
11200
|
var require_Scene = __commonJS({
|
|
11202
11201
|
"src/Models/Scene.js"(exports, module) {
|
|
11203
11202
|
var schemas = require_schema();
|
|
11204
11203
|
var schema = require_scene();
|
|
11205
11204
|
var Kohost = require_Kohost();
|
|
11206
|
-
var SetSceneCommand = require_SetSceneCommand();
|
|
11207
11205
|
schemas.add(schema);
|
|
11208
11206
|
var validator = schemas.compile(schema);
|
|
11209
11207
|
var Scene = class extends Kohost {
|
|
@@ -11219,8 +11217,8 @@ var require_Scene = __commonJS({
|
|
|
11219
11217
|
constructor(scene) {
|
|
11220
11218
|
super(scene);
|
|
11221
11219
|
}
|
|
11222
|
-
static
|
|
11223
|
-
const
|
|
11220
|
+
static getRoomSceneDeviceData(room, scene, restore) {
|
|
11221
|
+
const deviceData = [];
|
|
11224
11222
|
const sceneDevices = scene?.devices || {};
|
|
11225
11223
|
const sceneId = scene.id;
|
|
11226
11224
|
for (const deviceType in sceneDevices) {
|
|
@@ -11232,9 +11230,12 @@ var require_Scene = __commonJS({
|
|
|
11232
11230
|
const { id, ...deviceProps } = data;
|
|
11233
11231
|
if (id === "*") {
|
|
11234
11232
|
for (const device of roomDevices) {
|
|
11235
|
-
const driver = device.driver;
|
|
11236
11233
|
const deviceCmd = {
|
|
11237
|
-
id: device.
|
|
11234
|
+
id: device.id,
|
|
11235
|
+
systemId: device.systemData?.id,
|
|
11236
|
+
type: device.type,
|
|
11237
|
+
driver: device.driver,
|
|
11238
|
+
commandData: {}
|
|
11238
11239
|
};
|
|
11239
11240
|
for (const prop in deviceProps) {
|
|
11240
11241
|
if (prop === "setpointDelta") {
|
|
@@ -11254,7 +11255,7 @@ var require_Scene = __commonJS({
|
|
|
11254
11255
|
currentSetpoint.value + delta
|
|
11255
11256
|
);
|
|
11256
11257
|
}
|
|
11257
|
-
deviceCmd.setpoints = {
|
|
11258
|
+
deviceCmd.commandData.setpoints = {
|
|
11258
11259
|
heat: {
|
|
11259
11260
|
value: setpointValue
|
|
11260
11261
|
}
|
|
@@ -11271,7 +11272,7 @@ var require_Scene = __commonJS({
|
|
|
11271
11272
|
currentSetpoint.value - delta
|
|
11272
11273
|
);
|
|
11273
11274
|
}
|
|
11274
|
-
deviceCmd.setpoints = {
|
|
11275
|
+
deviceCmd.commandData.setpoints = {
|
|
11275
11276
|
cool: {
|
|
11276
11277
|
value: setpointValue
|
|
11277
11278
|
}
|
|
@@ -11300,7 +11301,7 @@ var require_Scene = __commonJS({
|
|
|
11300
11301
|
if (Math.abs(heatSetpoint - coolSetpoint) < minAutoDelta) {
|
|
11301
11302
|
continue;
|
|
11302
11303
|
}
|
|
11303
|
-
deviceCmd.setpoints = {
|
|
11304
|
+
deviceCmd.commandData.setpoints = {
|
|
11304
11305
|
heat: {
|
|
11305
11306
|
value: heatSetpoint
|
|
11306
11307
|
},
|
|
@@ -11314,38 +11315,18 @@ var require_Scene = __commonJS({
|
|
|
11314
11315
|
continue;
|
|
11315
11316
|
}
|
|
11316
11317
|
} else {
|
|
11317
|
-
deviceCmd[prop] = deviceProps[prop];
|
|
11318
|
+
deviceCmd.commandData[prop] = deviceProps[prop];
|
|
11318
11319
|
}
|
|
11319
11320
|
}
|
|
11320
|
-
if (Object.keys(deviceCmd).length ===
|
|
11321
|
+
if (Object.keys(deviceCmd.commandData).length === 0) {
|
|
11321
11322
|
continue;
|
|
11322
11323
|
}
|
|
11323
|
-
|
|
11324
|
-
(c) => c.driver === driver
|
|
11325
|
-
);
|
|
11326
|
-
if (driverIndex >= 0) {
|
|
11327
|
-
commandsByDriver[driverIndex].command.devices.push(deviceCmd);
|
|
11328
|
-
} else {
|
|
11329
|
-
commandsByDriver.push({
|
|
11330
|
-
driver,
|
|
11331
|
-
command: {
|
|
11332
|
-
id: sceneId,
|
|
11333
|
-
devices: [deviceCmd]
|
|
11334
|
-
}
|
|
11335
|
-
});
|
|
11336
|
-
}
|
|
11324
|
+
deviceData.push(deviceCmd);
|
|
11337
11325
|
}
|
|
11338
11326
|
}
|
|
11339
11327
|
}
|
|
11340
11328
|
}
|
|
11341
|
-
|
|
11342
|
-
const command = new SetSceneCommand(c.command);
|
|
11343
|
-
return {
|
|
11344
|
-
driver: c.driver,
|
|
11345
|
-
command
|
|
11346
|
-
};
|
|
11347
|
-
});
|
|
11348
|
-
return commands;
|
|
11329
|
+
return deviceData;
|
|
11349
11330
|
}
|
|
11350
11331
|
};
|
|
11351
11332
|
Object.defineProperty(Scene.prototype, "schema", {
|
|
@@ -11599,7 +11580,11 @@ var require_space = __commonJS({
|
|
|
11599
11580
|
"office",
|
|
11600
11581
|
"building",
|
|
11601
11582
|
"commonArea",
|
|
11602
|
-
"
|
|
11583
|
+
"conferenceRoom",
|
|
11584
|
+
"lobby",
|
|
11585
|
+
"gym",
|
|
11586
|
+
"pool",
|
|
11587
|
+
"restaurant"
|
|
11603
11588
|
]
|
|
11604
11589
|
},
|
|
11605
11590
|
driver: {
|
|
@@ -11817,6 +11802,12 @@ var require_spaceType = __commonJS({
|
|
|
11817
11802
|
image: {
|
|
11818
11803
|
$ref: "mediaFile.json"
|
|
11819
11804
|
},
|
|
11805
|
+
rating: {
|
|
11806
|
+
type: "number",
|
|
11807
|
+
minimum: 0,
|
|
11808
|
+
maximum: 10,
|
|
11809
|
+
default: 9
|
|
11810
|
+
},
|
|
11820
11811
|
systemData: {
|
|
11821
11812
|
$ref: "definitions.json#/definitions/systemData"
|
|
11822
11813
|
}
|
|
@@ -14291,6 +14282,241 @@ var require_Product = __commonJS({
|
|
|
14291
14282
|
}
|
|
14292
14283
|
});
|
|
14293
14284
|
|
|
14285
|
+
// src/schemas/order.json
|
|
14286
|
+
var require_order = __commonJS({
|
|
14287
|
+
"src/schemas/order.json"(exports, module) {
|
|
14288
|
+
module.exports = {
|
|
14289
|
+
$schema: "http://json-schema.org/draft-07/schema",
|
|
14290
|
+
$id: "order.json",
|
|
14291
|
+
title: "Order",
|
|
14292
|
+
description: "A purchase order for products or services.",
|
|
14293
|
+
type: "object",
|
|
14294
|
+
required: ["type", "status"],
|
|
14295
|
+
properties: {
|
|
14296
|
+
id: {
|
|
14297
|
+
$ref: "definitions.json#/definitions/id"
|
|
14298
|
+
},
|
|
14299
|
+
type: {
|
|
14300
|
+
type: "string",
|
|
14301
|
+
default: "order"
|
|
14302
|
+
},
|
|
14303
|
+
status: {
|
|
14304
|
+
type: "string",
|
|
14305
|
+
enum: [
|
|
14306
|
+
"draft",
|
|
14307
|
+
"pendingPayment",
|
|
14308
|
+
"processing",
|
|
14309
|
+
"outForDelivery",
|
|
14310
|
+
"completed",
|
|
14311
|
+
"paymentFailed",
|
|
14312
|
+
"cancelled",
|
|
14313
|
+
"refunded"
|
|
14314
|
+
]
|
|
14315
|
+
},
|
|
14316
|
+
user: {
|
|
14317
|
+
$ref: "definitions.json#/definitions/id",
|
|
14318
|
+
description: "User id of purchaser"
|
|
14319
|
+
},
|
|
14320
|
+
date: {
|
|
14321
|
+
$ref: "definitions.json#/definitions/date"
|
|
14322
|
+
},
|
|
14323
|
+
items: {
|
|
14324
|
+
type: "array",
|
|
14325
|
+
default: [],
|
|
14326
|
+
items: {
|
|
14327
|
+
type: "object",
|
|
14328
|
+
required: ["name", "price"],
|
|
14329
|
+
properties: {
|
|
14330
|
+
additionalProperties: false,
|
|
14331
|
+
name: {
|
|
14332
|
+
type: "string"
|
|
14333
|
+
},
|
|
14334
|
+
sku: {
|
|
14335
|
+
type: "string"
|
|
14336
|
+
},
|
|
14337
|
+
quantity: {
|
|
14338
|
+
type: "number",
|
|
14339
|
+
default: 1
|
|
14340
|
+
},
|
|
14341
|
+
price: {
|
|
14342
|
+
type: "number"
|
|
14343
|
+
},
|
|
14344
|
+
taxClass: {
|
|
14345
|
+
type: "string"
|
|
14346
|
+
},
|
|
14347
|
+
deliveryClass: {
|
|
14348
|
+
type: "string"
|
|
14349
|
+
}
|
|
14350
|
+
}
|
|
14351
|
+
}
|
|
14352
|
+
},
|
|
14353
|
+
taxes: {
|
|
14354
|
+
type: "array",
|
|
14355
|
+
default: [],
|
|
14356
|
+
items: {
|
|
14357
|
+
type: "object",
|
|
14358
|
+
required: ["name", "rate"],
|
|
14359
|
+
properties: {
|
|
14360
|
+
additionalProperties: false,
|
|
14361
|
+
name: {
|
|
14362
|
+
type: "string"
|
|
14363
|
+
},
|
|
14364
|
+
class: {
|
|
14365
|
+
type: "string"
|
|
14366
|
+
},
|
|
14367
|
+
rateType: {
|
|
14368
|
+
type: "string",
|
|
14369
|
+
enum: ["percentage", "flat"],
|
|
14370
|
+
default: "percentage"
|
|
14371
|
+
},
|
|
14372
|
+
rate: {
|
|
14373
|
+
type: "number"
|
|
14374
|
+
},
|
|
14375
|
+
total: {
|
|
14376
|
+
type: "number"
|
|
14377
|
+
}
|
|
14378
|
+
}
|
|
14379
|
+
}
|
|
14380
|
+
},
|
|
14381
|
+
fees: {
|
|
14382
|
+
type: "array",
|
|
14383
|
+
default: [],
|
|
14384
|
+
items: {
|
|
14385
|
+
type: "object",
|
|
14386
|
+
required: ["name", "price"],
|
|
14387
|
+
properties: {
|
|
14388
|
+
additionalProperties: false,
|
|
14389
|
+
name: {
|
|
14390
|
+
type: "string"
|
|
14391
|
+
},
|
|
14392
|
+
price: {
|
|
14393
|
+
type: "number"
|
|
14394
|
+
}
|
|
14395
|
+
}
|
|
14396
|
+
}
|
|
14397
|
+
},
|
|
14398
|
+
delivery: {
|
|
14399
|
+
type: "array",
|
|
14400
|
+
default: [],
|
|
14401
|
+
items: {
|
|
14402
|
+
type: "object",
|
|
14403
|
+
required: ["name", "rate"],
|
|
14404
|
+
properties: {
|
|
14405
|
+
additionalProperties: false,
|
|
14406
|
+
name: {
|
|
14407
|
+
type: "string"
|
|
14408
|
+
},
|
|
14409
|
+
class: {
|
|
14410
|
+
type: "string"
|
|
14411
|
+
},
|
|
14412
|
+
rateType: {
|
|
14413
|
+
type: "string",
|
|
14414
|
+
enum: ["percentage", "flat"],
|
|
14415
|
+
default: "percentage"
|
|
14416
|
+
},
|
|
14417
|
+
rate: {
|
|
14418
|
+
type: "number"
|
|
14419
|
+
},
|
|
14420
|
+
total: {
|
|
14421
|
+
type: "number"
|
|
14422
|
+
}
|
|
14423
|
+
}
|
|
14424
|
+
}
|
|
14425
|
+
},
|
|
14426
|
+
payments: {
|
|
14427
|
+
type: "array",
|
|
14428
|
+
default: [],
|
|
14429
|
+
items: {
|
|
14430
|
+
type: "object",
|
|
14431
|
+
properties: {
|
|
14432
|
+
method: {
|
|
14433
|
+
type: "string",
|
|
14434
|
+
enum: [
|
|
14435
|
+
"folio",
|
|
14436
|
+
"invoice",
|
|
14437
|
+
"amex",
|
|
14438
|
+
"visa",
|
|
14439
|
+
"masterCard",
|
|
14440
|
+
"maestro",
|
|
14441
|
+
"discover",
|
|
14442
|
+
"diners",
|
|
14443
|
+
"jcb",
|
|
14444
|
+
"applePay",
|
|
14445
|
+
"alipay",
|
|
14446
|
+
"chinaUnionPay",
|
|
14447
|
+
"vpay"
|
|
14448
|
+
]
|
|
14449
|
+
},
|
|
14450
|
+
name: {
|
|
14451
|
+
type: "string"
|
|
14452
|
+
},
|
|
14453
|
+
date: {
|
|
14454
|
+
$ref: "definitions.json#/definitions/date"
|
|
14455
|
+
},
|
|
14456
|
+
amount: {
|
|
14457
|
+
type: "number"
|
|
14458
|
+
},
|
|
14459
|
+
transactionReference: {
|
|
14460
|
+
type: "string"
|
|
14461
|
+
}
|
|
14462
|
+
}
|
|
14463
|
+
}
|
|
14464
|
+
}
|
|
14465
|
+
}
|
|
14466
|
+
};
|
|
14467
|
+
}
|
|
14468
|
+
});
|
|
14469
|
+
|
|
14470
|
+
// src/Models/Order.js
|
|
14471
|
+
var require_Order = __commonJS({
|
|
14472
|
+
"src/Models/Order.js"(exports, module) {
|
|
14473
|
+
var schemas = require_schema();
|
|
14474
|
+
var schema = require_order();
|
|
14475
|
+
var Kohost = require_Kohost();
|
|
14476
|
+
schemas.add(schema);
|
|
14477
|
+
var validator = schemas.compile(schema);
|
|
14478
|
+
var Order = class extends Kohost {
|
|
14479
|
+
static {
|
|
14480
|
+
__name(this, "Order");
|
|
14481
|
+
}
|
|
14482
|
+
/**
|
|
14483
|
+
* @typedef {import("../schemas/OrderSchema").Order} OrderType
|
|
14484
|
+
* Create a Order instance.
|
|
14485
|
+
* @constructor
|
|
14486
|
+
* @param {OrderType} order - The order object of type Order.
|
|
14487
|
+
*/
|
|
14488
|
+
constructor(order) {
|
|
14489
|
+
super(order);
|
|
14490
|
+
}
|
|
14491
|
+
getSubTotal() {
|
|
14492
|
+
return this.items.reduce((acc, item) => {
|
|
14493
|
+
return acc + item.price;
|
|
14494
|
+
}, 0);
|
|
14495
|
+
}
|
|
14496
|
+
getTaxTotal() {
|
|
14497
|
+
}
|
|
14498
|
+
getTotal() {
|
|
14499
|
+
}
|
|
14500
|
+
getDeliveryTotal() {
|
|
14501
|
+
}
|
|
14502
|
+
getFeesTotal() {
|
|
14503
|
+
}
|
|
14504
|
+
};
|
|
14505
|
+
Object.defineProperty(Order.prototype, "schema", {
|
|
14506
|
+
value: schema
|
|
14507
|
+
});
|
|
14508
|
+
Object.defineProperty(Order.prototype, "validator", {
|
|
14509
|
+
get: function() {
|
|
14510
|
+
return validator;
|
|
14511
|
+
}
|
|
14512
|
+
});
|
|
14513
|
+
Object.defineProperty(Order, "validProperties", {
|
|
14514
|
+
value: Object.keys(schema.properties)
|
|
14515
|
+
});
|
|
14516
|
+
module.exports = Order;
|
|
14517
|
+
}
|
|
14518
|
+
});
|
|
14519
|
+
|
|
14294
14520
|
// src/schemas/discoveredDevice.json
|
|
14295
14521
|
var require_discoveredDevice = __commonJS({
|
|
14296
14522
|
"src/schemas/discoveredDevice.json"(exports, module) {
|
|
@@ -14977,6 +15203,78 @@ var require_EmailMessage = __commonJS({
|
|
|
14977
15203
|
}
|
|
14978
15204
|
});
|
|
14979
15205
|
|
|
15206
|
+
// src/schemas/notification.json
|
|
15207
|
+
var require_notification = __commonJS({
|
|
15208
|
+
"src/schemas/notification.json"(exports, module) {
|
|
15209
|
+
module.exports = {
|
|
15210
|
+
$schema: "http://json-schema.org/draft-07/schema",
|
|
15211
|
+
$id: "notification.json",
|
|
15212
|
+
"title ": "Notification",
|
|
15213
|
+
description: "Notification sent to users",
|
|
15214
|
+
type: "object",
|
|
15215
|
+
properties: {
|
|
15216
|
+
id: { $ref: "definitions.json#/definitions/id" },
|
|
15217
|
+
title: {
|
|
15218
|
+
type: "string",
|
|
15219
|
+
maxLength: 30
|
|
15220
|
+
},
|
|
15221
|
+
body: {
|
|
15222
|
+
type: "string",
|
|
15223
|
+
maxLength: 85
|
|
15224
|
+
},
|
|
15225
|
+
image: {
|
|
15226
|
+
$ref: "mediaFile.json"
|
|
15227
|
+
},
|
|
15228
|
+
tag: {
|
|
15229
|
+
type: "string"
|
|
15230
|
+
},
|
|
15231
|
+
createdAt: {
|
|
15232
|
+
$ref: "definitions.json#/definitions/date"
|
|
15233
|
+
}
|
|
15234
|
+
},
|
|
15235
|
+
required: ["title", "body"],
|
|
15236
|
+
additionalProperties: false
|
|
15237
|
+
};
|
|
15238
|
+
}
|
|
15239
|
+
});
|
|
15240
|
+
|
|
15241
|
+
// src/Models/Notification.js
|
|
15242
|
+
var require_Notification = __commonJS({
|
|
15243
|
+
"src/Models/Notification.js"(exports, module) {
|
|
15244
|
+
var schemas = require_schema();
|
|
15245
|
+
var schema = require_notification();
|
|
15246
|
+
var Kohost = require_Kohost();
|
|
15247
|
+
schemas.add(schema);
|
|
15248
|
+
var validator = schemas.compile(schema);
|
|
15249
|
+
var Notification = class extends Kohost {
|
|
15250
|
+
static {
|
|
15251
|
+
__name(this, "Notification");
|
|
15252
|
+
}
|
|
15253
|
+
/**
|
|
15254
|
+
* @typedef {import("../schemas/NotificationSchema").Notification} NotificationType
|
|
15255
|
+
* Create a Notification instance.
|
|
15256
|
+
* @constructor
|
|
15257
|
+
* @param {NotificationType} property - The property object of type Notification.
|
|
15258
|
+
*/
|
|
15259
|
+
constructor(notification) {
|
|
15260
|
+
super(notification);
|
|
15261
|
+
}
|
|
15262
|
+
};
|
|
15263
|
+
Object.defineProperty(Notification.prototype, "schema", {
|
|
15264
|
+
value: schema
|
|
15265
|
+
});
|
|
15266
|
+
Object.defineProperty(Notification.prototype, "validator", {
|
|
15267
|
+
get: function() {
|
|
15268
|
+
return validator;
|
|
15269
|
+
}
|
|
15270
|
+
});
|
|
15271
|
+
Object.defineProperty(Notification, "validProperties", {
|
|
15272
|
+
value: Object.keys(schema.properties)
|
|
15273
|
+
});
|
|
15274
|
+
module.exports = Notification;
|
|
15275
|
+
}
|
|
15276
|
+
});
|
|
15277
|
+
|
|
14980
15278
|
// src/schemas/property.json
|
|
14981
15279
|
var require_property = __commonJS({
|
|
14982
15280
|
"src/schemas/property.json"(exports, module) {
|
|
@@ -15429,6 +15727,7 @@ var require_Models = __commonJS({
|
|
|
15429
15727
|
var Scene = require_Scene();
|
|
15430
15728
|
var Gateway = require_Gateway();
|
|
15431
15729
|
var Product = require_Product();
|
|
15730
|
+
var Order = require_Order();
|
|
15432
15731
|
var DiscoveredDevice = require_DiscoveredDevice();
|
|
15433
15732
|
var Credential = require_Credential();
|
|
15434
15733
|
var ShortLink = require_ShortLink();
|
|
@@ -15436,6 +15735,7 @@ var require_Models = __commonJS({
|
|
|
15436
15735
|
var EnergyReport = require_EnergyReport();
|
|
15437
15736
|
var SMSMessage = require_SmsMessage();
|
|
15438
15737
|
var EmailMessage = require_EmailMessage();
|
|
15738
|
+
var Notification = require_Notification();
|
|
15439
15739
|
var Property = require_Property();
|
|
15440
15740
|
var Organization = require_Organization();
|
|
15441
15741
|
module.exports = {
|
|
@@ -15469,7 +15769,9 @@ var require_Models = __commonJS({
|
|
|
15469
15769
|
EnergyReportShard,
|
|
15470
15770
|
EnergyReport,
|
|
15471
15771
|
SMSMessage,
|
|
15472
|
-
EmailMessage
|
|
15772
|
+
EmailMessage,
|
|
15773
|
+
Order,
|
|
15774
|
+
Notification
|
|
15473
15775
|
};
|
|
15474
15776
|
}
|
|
15475
15777
|
});
|