tgwidget 0.1.1 → 0.1.3
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/builder.js +1 -1
- package/dist/parser.js +6 -0
- package/dist/pattern.js +7 -4
- package/dist/types.d.ts +2 -1
- package/package.json +1 -1
package/dist/builder.js
CHANGED
|
@@ -2,7 +2,7 @@ import { parseDate, parseColor, parseSchedule } from "./parser";
|
|
|
2
2
|
import { getPattern } from "./pattern";
|
|
3
3
|
const BASE_URL = "https://tgwidget.github.io/";
|
|
4
4
|
const HEX_RE = /^#?[0-9A-Fa-f]{6}$/;
|
|
5
|
-
const VALID_DATE_MODES = new Set(["date", "time", "datetime", "date-range", "time-range"]);
|
|
5
|
+
const VALID_DATE_MODES = new Set(["date", "time", "time-seconds", "datetime", "date-range", "time-range"]);
|
|
6
6
|
const VALID_DATE_FORMATS = new Set(["default", "unix-s", "unix-ms"]);
|
|
7
7
|
const VALID_DATE_ORDERS = new Set(["ymd", "dmy", "mdy"]);
|
|
8
8
|
const VALID_COLOR_FORMATS = new Set(["hex", "rgb", "hsl"]);
|
package/dist/parser.js
CHANGED
|
@@ -53,6 +53,12 @@ export function parseDate(value, opts = {}) {
|
|
|
53
53
|
result.time = `${h}:${m}`;
|
|
54
54
|
break;
|
|
55
55
|
}
|
|
56
|
+
case "time-seconds": {
|
|
57
|
+
const [h, m, s] = value.split("-");
|
|
58
|
+
result.time = `${h}:${m}:${s}`;
|
|
59
|
+
result.seconds = parseInt(s, 10);
|
|
60
|
+
break;
|
|
61
|
+
}
|
|
56
62
|
case "datetime": {
|
|
57
63
|
const [datePart, timePart] = value.split("_");
|
|
58
64
|
const dateStr = parseDateStr(datePart, order);
|
package/dist/pattern.js
CHANGED
|
@@ -3,7 +3,8 @@ const DATE_PATTERNS = {
|
|
|
3
3
|
dmy: "DD-MM-YYYY",
|
|
4
4
|
mdy: "MM-DD-YYYY",
|
|
5
5
|
};
|
|
6
|
-
const TIME_PATTERN = "HH
|
|
6
|
+
const TIME_PATTERN = "HH-MM";
|
|
7
|
+
const TIME_SEC_PATTERN = "HH-MM-SS";
|
|
7
8
|
export function getPattern(widget, payload) {
|
|
8
9
|
if (widget === "date") {
|
|
9
10
|
const mode = payload.mode ?? "date";
|
|
@@ -14,12 +15,14 @@ export function getPattern(widget, payload) {
|
|
|
14
15
|
return datePat;
|
|
15
16
|
case "time":
|
|
16
17
|
return TIME_PATTERN;
|
|
18
|
+
case "time-seconds":
|
|
19
|
+
return TIME_SEC_PATTERN;
|
|
17
20
|
case "datetime":
|
|
18
|
-
return `${datePat}
|
|
21
|
+
return `${datePat}_${TIME_PATTERN}`;
|
|
19
22
|
case "date-range":
|
|
20
|
-
return `${datePat}
|
|
23
|
+
return `${datePat}_${datePat}`;
|
|
21
24
|
case "time-range":
|
|
22
|
-
return `${TIME_PATTERN}
|
|
25
|
+
return `${TIME_PATTERN}_${TIME_PATTERN}`;
|
|
23
26
|
}
|
|
24
27
|
}
|
|
25
28
|
if (widget === "color") {
|
package/dist/types.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type DateMode = "date" | "time" | "datetime" | "date-range" | "time-range";
|
|
1
|
+
export type DateMode = "date" | "time" | "time-seconds" | "datetime" | "date-range" | "time-range";
|
|
2
2
|
export type DateFormat = "default" | "unix-s" | "unix-ms";
|
|
3
3
|
export type DateOrder = "ymd" | "dmy" | "mdy";
|
|
4
4
|
export type ColorFormat = "hex" | "rgb" | "hsl";
|
|
@@ -15,6 +15,7 @@ export interface WidgetStyle {
|
|
|
15
15
|
export interface DateResult {
|
|
16
16
|
date?: string;
|
|
17
17
|
time?: string;
|
|
18
|
+
seconds?: number;
|
|
18
19
|
dateEnd?: string;
|
|
19
20
|
timeEnd?: string;
|
|
20
21
|
timestamp?: number;
|