Compare commits

...

8 Commits

Author SHA1 Message Date
Darius
9b02c09677 1.0.12 2025-11-18 19:35:04 +01:00
Darius
45f4ca4d63 Generic Commit; Most likely a fix or small feature 2025-11-18 19:35:01 +01:00
Darius
1aade62ddb 1.0.11 2025-11-18 01:16:00 +01:00
Darius
31a02625e8 Generic Commit; Most likely a fix or small feature 2025-11-18 01:15:56 +01:00
Darius
16c262f2c4 1.0.10 2025-11-18 01:10:22 +01:00
Darius
dfa93723ef Generic Commit; Most likely a fix or small feature 2025-11-18 01:10:18 +01:00
Darius
59900bf294 1.0.9 2025-11-18 01:09:11 +01:00
Darius
1ab38c4c87 Generic Commit; Most likely a fix or small feature 2025-11-18 01:09:00 +01:00
8 changed files with 27 additions and 16 deletions

View File

@@ -1,3 +1,4 @@
import { TimeBetween } from "./timehelper";
export type HomeAssistantEntity = {
entity_id: string;
state: string;
@@ -19,12 +20,13 @@ export type HomeAssistantEntity = {
};
export interface HomeAssistantDeskPositionResult {
raw: HomeAssistantEntity;
asBoolean: boolean;
asText: () => string;
as_boolean: boolean;
as_text: () => string;
last_changed: TimeBetween;
}
export type API_HA_DeskPosition = {
position: string;
isStanding: boolean;
standingTime: string;
is_standing: boolean;
last_changed: string;
};
//# sourceMappingURL=homeassistant.d.ts.map

View File

@@ -1 +1 @@
{"version":3,"file":"homeassistant.d.ts","sourceRoot":"","sources":["../src/homeassistant.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,mBAAmB,GAAG;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE;QACV,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACxB,CAAC;IACF,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE;QACP,EAAE,EAAE,MAAM,CAAC;QACX,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;KACxB,CAAC;CACH,CAAC;AAEF,MAAM,WAAW,+BAA+B;IAC9C,GAAG,EAAE,mBAAmB,CAAC;IACzB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,MAAM,CAAC;CACtB;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC"}
{"version":3,"file":"homeassistant.d.ts","sourceRoot":"","sources":["../src/homeassistant.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,MAAM,mBAAmB,GAAG;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE;QACV,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACxB,CAAC;IACF,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE;QACP,EAAE,EAAE,MAAM,CAAC;QACX,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;KACxB,CAAC;CACH,CAAC;AAEF,MAAM,WAAW,+BAA+B;IAC9C,GAAG,EAAE,mBAAmB,CAAC;IACzB,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,MAAM,MAAM,CAAC;IACtB,YAAY,EAAE,WAAW,CAAC;CAC3B;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC"}

View File

@@ -5,9 +5,10 @@ export declare class TimeSpan {
private parseTime;
contains(timestamp?: number): boolean;
}
export declare function calculateSecondsBetween(start: number, end: number): {
export interface TimeBetween {
seconds: number;
toReadable: (roundToMinutes?: boolean) => string;
};
}
export declare function calculateSecondsBetween(start: number, end: number): TimeBetween;
export declare function secondsToReadable(secs: number, roundToMinutes?: boolean): string;
//# sourceMappingURL=timehelper.d.ts.map

View File

@@ -1 +1 @@
{"version":3,"file":"timehelper.d.ts","sourceRoot":"","sources":["../src/timehelper.ts"],"names":[],"mappings":"AAAA,qBAAa,QAAQ;IACnB,OAAO,CAAC,KAAK,CAAqC;IAClD,OAAO,CAAC,GAAG,CAAqC;gBAEpC,WAAW,EAAE,MAAM;IAM/B,OAAO,CAAC,SAAS;IAKjB,QAAQ,CAAC,SAAS,GAAE,MAAmB,GAAG,OAAO;CAgBlD;AAED,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,GACV;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,CAAC,cAAc,CAAC,EAAE,OAAO,KAAK,MAAM,CAAA;CAAE,CAOvE;AAED,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,EACZ,cAAc,GAAE,OAAe,GAC9B,MAAM,CAmBR"}
{"version":3,"file":"timehelper.d.ts","sourceRoot":"","sources":["../src/timehelper.ts"],"names":[],"mappings":"AAAA,qBAAa,QAAQ;IACnB,OAAO,CAAC,KAAK,CAAqC;IAClD,OAAO,CAAC,GAAG,CAAqC;gBAEpC,WAAW,EAAE,MAAM;IAM/B,OAAO,CAAC,SAAS;IAKjB,QAAQ,CAAC,SAAS,GAAE,MAAmB,GAAG,OAAO;CAgBlD;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,CAAC,cAAc,CAAC,EAAE,OAAO,KAAK,MAAM,CAAC;CAClD;AAED,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,GACV,WAAW,CAOb;AAED,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,EACZ,cAAc,GAAE,OAAe,GAC9B,MAAM,CAmBR"}

4
package-lock.json generated
View File

@@ -1,12 +1,12 @@
{
"name": "@dpu/shared",
"version": "1.0.8",
"version": "1.0.12",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@dpu/shared",
"version": "1.0.8",
"version": "1.0.12",
"dependencies": {
"axios": "^1.7.9",
"chalk": "^5.6.2"

View File

@@ -1,6 +1,6 @@
{
"name": "@dpu/shared",
"version": "1.0.8",
"version": "1.0.12",
"description": "",
"main": "dist/index.js",
"types": "dist/index.d.ts",

View File

@@ -1,3 +1,5 @@
import { TimeBetween } from "./timehelper";
export type HomeAssistantEntity = {
entity_id: string;
state: string;
@@ -20,12 +22,13 @@ export type HomeAssistantEntity = {
export interface HomeAssistantDeskPositionResult {
raw: HomeAssistantEntity;
asBoolean: boolean;
asText: () => string;
as_boolean: boolean;
as_text: () => string;
last_changed: TimeBetween;
}
export type API_HA_DeskPosition = {
position: string;
isStanding: boolean;
standingTime: string;
is_standing: boolean;
last_changed: string;
};

View File

@@ -31,10 +31,15 @@ export class TimeSpan {
}
}
export interface TimeBetween {
seconds: number;
toReadable: (roundToMinutes?: boolean) => string;
}
export function calculateSecondsBetween(
start: number,
end: number,
): { seconds: number; toReadable: (roundToMinutes?: boolean) => string } {
): TimeBetween {
const seconds = Math.max(60, (end - start) / 1000);
return {
seconds,