@kohost/api-client 3.0.1 → 3.1.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.
- package/dist/cjs/Client/index.js +440 -0
- package/dist/cjs/Models/TimeSheet.js +60 -0
- package/dist/cjs/Models/index.js +2 -0
- package/dist/cjs/schemas/PropertySchema.d.ts +6 -2
- package/dist/cjs/schemas/TimeSheetSchema.d.ts +38 -0
- package/dist/cjs/schemas/UserSchema.d.ts +5 -1
- package/dist/cjs/schemas/property.json +14 -2
- package/dist/cjs/schemas/timeSheet.json +61 -0
- package/dist/cjs/schemas/user.json +13 -1
- package/dist/esm/Client.js +478 -47
- package/dist/esm/Client.js.map +3 -3
- package/dist/esm/Models.js +160 -5
- package/dist/esm/Models.js.map +4 -4
- package/dist/esm/SocketIoClient.js +1 -1
- package/dist/esm/SocketIoClient.js.map +1 -1
- package/dist/esm/defs.js +38 -47
- package/dist/esm/defs.js.map +2 -2
- package/dist/esm/utils.js +1 -1
- package/dist/useCases/CreateTimeSheet.js +32 -0
- package/dist/useCases/CreateTimeSheetTimeEntry.js +32 -0
- package/dist/useCases/DeleteTimeSheet.js +32 -0
- package/dist/useCases/DeleteTimeSheetTimeEntry.js +32 -0
- package/dist/useCases/DescribeTicketStats.js +32 -0
- package/dist/useCases/DescribeTimeSheet.js +32 -0
- package/dist/useCases/DescribeTimeSheetStats.js +32 -0
- package/dist/useCases/ListMyTimeSheets.js +32 -0
- package/dist/useCases/ListTimeSheets.js +32 -0
- package/dist/useCases/UpdateTimeSheet.js +32 -0
- package/dist/useCases/UpdateTimeSheetTimeEntry.js +32 -0
- package/package.json +2 -1
package/dist/esm/Models.js
CHANGED
|
@@ -3431,7 +3431,7 @@ var require_uri_all = __commonJS({
|
|
|
3431
3431
|
__name(buildExps, "buildExps");
|
|
3432
3432
|
var URI_PROTOCOL = buildExps(false);
|
|
3433
3433
|
var IRI_PROTOCOL = buildExps(true);
|
|
3434
|
-
var slicedToArray = function() {
|
|
3434
|
+
var slicedToArray = /* @__PURE__ */ function() {
|
|
3435
3435
|
function sliceIterator(arr, i) {
|
|
3436
3436
|
var _arr = [];
|
|
3437
3437
|
var _n = true;
|
|
@@ -9392,7 +9392,19 @@ var require_user = __commonJS({
|
|
|
9392
9392
|
customPermissions: {
|
|
9393
9393
|
type: "array",
|
|
9394
9394
|
items: {
|
|
9395
|
-
type: "
|
|
9395
|
+
type: "object",
|
|
9396
|
+
properties: {
|
|
9397
|
+
discriminator: {
|
|
9398
|
+
type: "string",
|
|
9399
|
+
enum: ["RoomControl.spaces", "Concierge.timeTracking"]
|
|
9400
|
+
},
|
|
9401
|
+
onlyIncludeIds: {
|
|
9402
|
+
type: "array",
|
|
9403
|
+
items: {
|
|
9404
|
+
type: "string"
|
|
9405
|
+
}
|
|
9406
|
+
}
|
|
9407
|
+
}
|
|
9396
9408
|
}
|
|
9397
9409
|
}
|
|
9398
9410
|
},
|
|
@@ -12806,6 +12818,135 @@ var require_Announcement = __commonJS({
|
|
|
12806
12818
|
}
|
|
12807
12819
|
});
|
|
12808
12820
|
|
|
12821
|
+
// src/schemas/timeSheet.json
|
|
12822
|
+
var require_timeSheet = __commonJS({
|
|
12823
|
+
"src/schemas/timeSheet.json"(exports, module) {
|
|
12824
|
+
module.exports = {
|
|
12825
|
+
$schema: "http://json-schema.org/draft-07/schema",
|
|
12826
|
+
$id: "timeSheet.json",
|
|
12827
|
+
title: "Time Sheet",
|
|
12828
|
+
type: "object",
|
|
12829
|
+
required: ["userId", "day"],
|
|
12830
|
+
properties: {
|
|
12831
|
+
id: {
|
|
12832
|
+
$ref: "definitions.json#/definitions/id"
|
|
12833
|
+
},
|
|
12834
|
+
type: {
|
|
12835
|
+
type: "string",
|
|
12836
|
+
default: "timeSheet",
|
|
12837
|
+
enum: ["timeSheet"]
|
|
12838
|
+
},
|
|
12839
|
+
userId: {
|
|
12840
|
+
$ref: "definitions.json#/definitions/id"
|
|
12841
|
+
},
|
|
12842
|
+
day: {
|
|
12843
|
+
type: ["string", "object"],
|
|
12844
|
+
format: "date-time"
|
|
12845
|
+
},
|
|
12846
|
+
locked: {
|
|
12847
|
+
type: "boolean",
|
|
12848
|
+
default: false,
|
|
12849
|
+
description: "If true, the time sheet is locked and cannot be modified"
|
|
12850
|
+
},
|
|
12851
|
+
timeEntries: {
|
|
12852
|
+
type: "array",
|
|
12853
|
+
default: [],
|
|
12854
|
+
items: {
|
|
12855
|
+
type: "object",
|
|
12856
|
+
properties: {
|
|
12857
|
+
id: {
|
|
12858
|
+
$ref: "definitions.json#/definitions/id"
|
|
12859
|
+
},
|
|
12860
|
+
discriminator: {
|
|
12861
|
+
type: "string",
|
|
12862
|
+
enum: ["working", "driving", "meeting"]
|
|
12863
|
+
},
|
|
12864
|
+
start: {
|
|
12865
|
+
type: ["string", "object"],
|
|
12866
|
+
format: "date-time"
|
|
12867
|
+
},
|
|
12868
|
+
end: {
|
|
12869
|
+
type: ["string", "object"],
|
|
12870
|
+
format: "date-time"
|
|
12871
|
+
},
|
|
12872
|
+
comment: {
|
|
12873
|
+
type: "string"
|
|
12874
|
+
},
|
|
12875
|
+
ticketId: {
|
|
12876
|
+
type: "string"
|
|
12877
|
+
}
|
|
12878
|
+
},
|
|
12879
|
+
required: ["start", "discriminator"],
|
|
12880
|
+
additionalProperties: false
|
|
12881
|
+
}
|
|
12882
|
+
}
|
|
12883
|
+
}
|
|
12884
|
+
};
|
|
12885
|
+
}
|
|
12886
|
+
});
|
|
12887
|
+
|
|
12888
|
+
// src/Models/TimeSheet.js
|
|
12889
|
+
var require_TimeSheet = __commonJS({
|
|
12890
|
+
"src/Models/TimeSheet.js"(exports, module) {
|
|
12891
|
+
var schemas = require_schema();
|
|
12892
|
+
var schema = require_timeSheet();
|
|
12893
|
+
var Entity = require_Entity();
|
|
12894
|
+
var { nanoid: nanoid3 } = (init_index_browser(), __toCommonJS(index_browser_exports));
|
|
12895
|
+
schemas.add(schema);
|
|
12896
|
+
var validator = schemas.compile(schema);
|
|
12897
|
+
var TimeSheet = class _TimeSheet extends Entity {
|
|
12898
|
+
static {
|
|
12899
|
+
__name(this, "TimeSheet");
|
|
12900
|
+
}
|
|
12901
|
+
/**
|
|
12902
|
+
* @typedef {import("../schemas/TimeSheetSchema").TimeSheet} TimeSheetType
|
|
12903
|
+
* Create a TimeSheet instance.
|
|
12904
|
+
* @constructor
|
|
12905
|
+
* @param {TimeSheetType} timesheet - The timesheet object of type TimeSheet.
|
|
12906
|
+
*/
|
|
12907
|
+
constructor(timesheet) {
|
|
12908
|
+
if (timesheet.day) {
|
|
12909
|
+
timesheet.day = new Date(timesheet.day);
|
|
12910
|
+
}
|
|
12911
|
+
if (timesheet.timeEntries && Array.isArray(timesheet.timeEntries)) {
|
|
12912
|
+
timesheet.timeEntries = timesheet.timeEntries.map((t) => {
|
|
12913
|
+
if (!t.id)
|
|
12914
|
+
t.id = _TimeSheet.generateTimeEntryId();
|
|
12915
|
+
if (t.start)
|
|
12916
|
+
t.start = new Date(t.start);
|
|
12917
|
+
if (t.end)
|
|
12918
|
+
t.end = new Date(t.end);
|
|
12919
|
+
return t;
|
|
12920
|
+
});
|
|
12921
|
+
timesheet.timeEntries.sort((a, b) => {
|
|
12922
|
+
if (a.start < b.start)
|
|
12923
|
+
return -1;
|
|
12924
|
+
if (a.start > b.start)
|
|
12925
|
+
return 1;
|
|
12926
|
+
return 0;
|
|
12927
|
+
});
|
|
12928
|
+
}
|
|
12929
|
+
super(timesheet);
|
|
12930
|
+
}
|
|
12931
|
+
static generateTimeEntryId(len = 16) {
|
|
12932
|
+
return nanoid3(len);
|
|
12933
|
+
}
|
|
12934
|
+
};
|
|
12935
|
+
Object.defineProperty(TimeSheet.prototype, "schema", {
|
|
12936
|
+
value: schema
|
|
12937
|
+
});
|
|
12938
|
+
Object.defineProperty(TimeSheet.prototype, "validator", {
|
|
12939
|
+
get: function() {
|
|
12940
|
+
return validator;
|
|
12941
|
+
}
|
|
12942
|
+
});
|
|
12943
|
+
Object.defineProperty(TimeSheet, "validProperties", {
|
|
12944
|
+
value: Object.keys(schema.properties)
|
|
12945
|
+
});
|
|
12946
|
+
module.exports = TimeSheet;
|
|
12947
|
+
}
|
|
12948
|
+
});
|
|
12949
|
+
|
|
12809
12950
|
// src/schemas/property.json
|
|
12810
12951
|
var require_property = __commonJS({
|
|
12811
12952
|
"src/schemas/property.json"(exports, module) {
|
|
@@ -12972,13 +13113,25 @@ var require_property = __commonJS({
|
|
|
12972
13113
|
}
|
|
12973
13114
|
}
|
|
12974
13115
|
},
|
|
12975
|
-
Concierge: {
|
|
13116
|
+
Concierge: {
|
|
13117
|
+
type: "object",
|
|
13118
|
+
properties: {
|
|
13119
|
+
timeTracking: {
|
|
13120
|
+
type: "boolean",
|
|
13121
|
+
default: false
|
|
13122
|
+
},
|
|
13123
|
+
tipping: {
|
|
13124
|
+
type: "boolean",
|
|
13125
|
+
default: false
|
|
13126
|
+
}
|
|
13127
|
+
}
|
|
13128
|
+
},
|
|
12976
13129
|
DigitalKey: {
|
|
12977
13130
|
type: "object",
|
|
12978
13131
|
properties: {
|
|
12979
13132
|
system: {
|
|
12980
13133
|
type: "string",
|
|
12981
|
-
enum: ["salto", "
|
|
13134
|
+
enum: ["salto", "dormakaba"]
|
|
12982
13135
|
},
|
|
12983
13136
|
systemOnline: {
|
|
12984
13137
|
type: "boolean",
|
|
@@ -13345,6 +13498,7 @@ var require_Models = __commonJS({
|
|
|
13345
13498
|
var SMSMessage = require_SmsMessage();
|
|
13346
13499
|
var EmailMessage = require_EmailMessage();
|
|
13347
13500
|
var Announcement = require_Announcement();
|
|
13501
|
+
var TimeSheet = require_TimeSheet();
|
|
13348
13502
|
var Property = require_Property();
|
|
13349
13503
|
var Organization = require_Organization();
|
|
13350
13504
|
var Entity = require_Entity();
|
|
@@ -13383,7 +13537,8 @@ var require_Models = __commonJS({
|
|
|
13383
13537
|
SMSMessage,
|
|
13384
13538
|
EmailMessage,
|
|
13385
13539
|
Order,
|
|
13386
|
-
Announcement
|
|
13540
|
+
Announcement,
|
|
13541
|
+
TimeSheet
|
|
13387
13542
|
};
|
|
13388
13543
|
}
|
|
13389
13544
|
});
|