@almighty-shogun/utils 1.0.2 → 1.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/formatHour.d.ts +3 -0
- package/dist/formatHour.d.ts.map +1 -0
- package/dist/formatHour.js +5 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/internal/weather.d.ts +1 -2
- package/dist/internal/weather.d.ts.map +1 -1
- package/dist/internal/weather.js +3 -5
- package/package.json +1 -1
- package/src/formatHour.ts +7 -0
- package/src/index.ts +1 -0
- package/src/internal/weather.ts +4 -9
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatHour.d.ts","sourceRoot":"","sources":["../src/formatHour.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAEhC,MAAM,CAAC,OAAO,WAAW,IAAI,EAAE,QAAQ,GAAG,MAAM,CAI/C"}
|
package/dist/index.d.ts
CHANGED
|
@@ -7,6 +7,7 @@ export { default as formatDate } from './formatDate';
|
|
|
7
7
|
export { default as formatDateTime } from './formatDateTime';
|
|
8
8
|
export { default as formatDutchCurrency } from './formatDutchCurrency';
|
|
9
9
|
export { default as formatFullDate } from './formatFullDate';
|
|
10
|
+
export { default as formatHour } from './formatHour';
|
|
10
11
|
export { default as formatMonth } from './formatMonth';
|
|
11
12
|
export { default as formatNumber } from './formatNumber';
|
|
12
13
|
export { default as formatPercentage } from './formatPercentage';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAElE,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AACtE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAA;AACtD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC1D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAA;AACpD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AACtE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAA;AACtD,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAA;AACxD,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAChE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAA;AACpD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC1D,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AACtE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAA;AACpD,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAC9D,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAA;AACtD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAElE,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AACtE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAA;AACtD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC1D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAA;AACpD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AACtE,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAA;AACpD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAA;AACtD,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAA;AACxD,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAChE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAA;AACpD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC1D,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AACtE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAA;AACpD,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAC9D,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAA;AACtD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,kBAAkB,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -7,6 +7,7 @@ export { default as formatDate } from './formatDate';
|
|
|
7
7
|
export { default as formatDateTime } from './formatDateTime';
|
|
8
8
|
export { default as formatDutchCurrency } from './formatDutchCurrency';
|
|
9
9
|
export { default as formatFullDate } from './formatFullDate';
|
|
10
|
+
export { default as formatHour } from './formatHour';
|
|
10
11
|
export { default as formatMonth } from './formatMonth';
|
|
11
12
|
export { default as formatNumber } from './formatNumber';
|
|
12
13
|
export { default as formatPercentage } from './formatPercentage';
|
|
@@ -20,8 +20,7 @@ export type Weather = {
|
|
|
20
20
|
};
|
|
21
21
|
type WeatherIcon = [day: string, night: string];
|
|
22
22
|
export type WeatherCode = keyof typeof weatherCodeMap;
|
|
23
|
-
|
|
24
|
-
declare const weatherCodeMap: Record<string, WeatherIcon>;
|
|
23
|
+
declare const weatherCodeMap: Record<number, WeatherIcon>;
|
|
25
24
|
export declare function callOpenMeteo(latitude: number, longitude: number): Promise<OpenMeteoResponse>;
|
|
26
25
|
export declare function getWeatherIcon(code: number, timeStrings: string[]): string;
|
|
27
26
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"weather.d.ts","sourceRoot":"","sources":["../../src/internal/weather.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAEhD,KAAK,kBAAkB,GAAG;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,kBAAkB,CAAC;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IAClB,OAAO,EAAE,WAAW,CAAC;IACrB,KAAK,EAAE,WAAW,GAAG;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,KAAK,EAAE,WAAW,EAAE,CAAC;CACxB,CAAC;AAEF,KAAK,WAAW,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AAChD,MAAM,MAAM,WAAW,GAAG,MAAM,OAAO,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"weather.d.ts","sourceRoot":"","sources":["../../src/internal/weather.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAA;AAEhD,KAAK,kBAAkB,GAAG;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,kBAAkB,CAAC;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG;IAClB,OAAO,EAAE,WAAW,CAAC;IACrB,KAAK,EAAE,WAAW,GAAG;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,KAAK,EAAE,WAAW,EAAE,CAAC;CACxB,CAAC;AAEF,KAAK,WAAW,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AAChD,MAAM,MAAM,WAAW,GAAG,MAAM,OAAO,cAAc,CAAC;AAEtD,QAAA,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAoD/C,CAAA;AAED,wBAAsB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAcnG;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,MAAM,CAkB1E"}
|
package/dist/internal/weather.js
CHANGED
|
@@ -7,7 +7,7 @@ const weatherCodeMap = {
|
|
|
7
7
|
2: ["images/weather-icons/partly-cloudy-day", "images/weather-icons/partly-cloudy-night"],
|
|
8
8
|
3: ["images/weather-icons/overcast-day", "images/weather-icons/overcast-night"],
|
|
9
9
|
// 45 = Fog, 48 = Depositing rime fog
|
|
10
|
-
45: ["images/weather-icons/fog-day", "images/weather-icons/
|
|
10
|
+
45: ["images/weather-icons/fog-day", "images/weather-icons/fog-night"],
|
|
11
11
|
48: ["images/weather-icons/overcast-day-fog", "images/weather-icons/overcast-night-fog"],
|
|
12
12
|
// 51 = Light drizzle, 53 = Moderate drizzle, 55 = Heavy drizzle
|
|
13
13
|
51: ["images/weather-icons/partly-cloudy-day-drizzle", "images/weather-icons/partly-cloudy-night-drizzle"],
|
|
@@ -41,7 +41,6 @@ const weatherCodeMap = {
|
|
|
41
41
|
96: ["images/weather-icons/thunderstorms-day", "images/weather-icons/thunderstorms-night"],
|
|
42
42
|
99: ["images/weather-icons/thunderstorms-day-extreme", "images/weather-icons/thunderstorms-night-extreme"]
|
|
43
43
|
};
|
|
44
|
-
const weatherCodes = weatherCodeMap;
|
|
45
44
|
export async function callOpenMeteo(latitude, longitude) {
|
|
46
45
|
const params = new URLSearchParams({
|
|
47
46
|
latitude: latitude.toString(),
|
|
@@ -56,14 +55,13 @@ export async function callOpenMeteo(latitude, longitude) {
|
|
|
56
55
|
return await response.json();
|
|
57
56
|
}
|
|
58
57
|
export function getWeatherIcon(code, timeStrings) {
|
|
59
|
-
const weatherCode = code.toString();
|
|
60
58
|
const currentTime = DateTime.fromISO(timeStrings[0]);
|
|
61
59
|
const sunriseTime = DateTime.fromISO(timeStrings[1]);
|
|
62
60
|
const sunsetTime = DateTime.fromISO(timeStrings[2]);
|
|
63
61
|
const isDayTime = currentTime >= sunriseTime && currentTime < sunsetTime;
|
|
64
|
-
const weatherIcon =
|
|
62
|
+
const weatherIcon = weatherCodeMap[code];
|
|
65
63
|
if (!weatherIcon) {
|
|
66
|
-
console.log(`[Weather] Unknown weather code ${
|
|
64
|
+
console.log(`[Weather] Unknown weather code ${code}`);
|
|
67
65
|
return "images/weather-icons/not-available";
|
|
68
66
|
}
|
|
69
67
|
const [day, night] = weatherIcon;
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -8,6 +8,7 @@ export { default as formatDate } from './formatDate'
|
|
|
8
8
|
export { default as formatDateTime } from './formatDateTime'
|
|
9
9
|
export { default as formatDutchCurrency } from './formatDutchCurrency'
|
|
10
10
|
export { default as formatFullDate } from './formatFullDate'
|
|
11
|
+
export { default as formatHour } from './formatHour'
|
|
11
12
|
export { default as formatMonth } from './formatMonth'
|
|
12
13
|
export { default as formatNumber } from './formatNumber'
|
|
13
14
|
export { default as formatPercentage } from './formatPercentage'
|
package/src/internal/weather.ts
CHANGED
|
@@ -25,9 +25,8 @@ export type Weather = {
|
|
|
25
25
|
|
|
26
26
|
type WeatherIcon = [day: string, night: string];
|
|
27
27
|
export type WeatherCode = keyof typeof weatherCodeMap;
|
|
28
|
-
export type WeatherCodes = Record<WeatherCode, WeatherIcon>;
|
|
29
28
|
|
|
30
|
-
const weatherCodeMap: Record<
|
|
29
|
+
const weatherCodeMap: Record<number, WeatherIcon> = {
|
|
31
30
|
// 0 = Clear sky
|
|
32
31
|
0: ["images/weather-icons/clear-day", "images/weather-icons/clear-night"],
|
|
33
32
|
|
|
@@ -37,7 +36,7 @@ const weatherCodeMap: Record<string, WeatherIcon> = {
|
|
|
37
36
|
3: ["images/weather-icons/overcast-day", "images/weather-icons/overcast-night"],
|
|
38
37
|
|
|
39
38
|
// 45 = Fog, 48 = Depositing rime fog
|
|
40
|
-
45: ["images/weather-icons/fog-day", "images/weather-icons/
|
|
39
|
+
45: ["images/weather-icons/fog-day", "images/weather-icons/fog-night"],
|
|
41
40
|
48: ["images/weather-icons/overcast-day-fog", "images/weather-icons/overcast-night-fog"],
|
|
42
41
|
|
|
43
42
|
// 51 = Light drizzle, 53 = Moderate drizzle, 55 = Heavy drizzle
|
|
@@ -81,8 +80,6 @@ const weatherCodeMap: Record<string, WeatherIcon> = {
|
|
|
81
80
|
99: ["images/weather-icons/thunderstorms-day-extreme", "images/weather-icons/thunderstorms-night-extreme"]
|
|
82
81
|
}
|
|
83
82
|
|
|
84
|
-
const weatherCodes: WeatherCodes = weatherCodeMap as WeatherCodes;
|
|
85
|
-
|
|
86
83
|
export async function callOpenMeteo(latitude: number, longitude: number): Promise<OpenMeteoResponse> {
|
|
87
84
|
const params = new URLSearchParams({
|
|
88
85
|
latitude: latitude.toString(),
|
|
@@ -100,18 +97,16 @@ export async function callOpenMeteo(latitude: number, longitude: number): Promis
|
|
|
100
97
|
}
|
|
101
98
|
|
|
102
99
|
export function getWeatherIcon(code: number, timeStrings: string[]): string {
|
|
103
|
-
const weatherCode = code.toString() as WeatherCode;
|
|
104
|
-
|
|
105
100
|
const currentTime = DateTime.fromISO(timeStrings[0]);
|
|
106
101
|
const sunriseTime = DateTime.fromISO(timeStrings[1]);
|
|
107
102
|
const sunsetTime = DateTime.fromISO(timeStrings[2]);
|
|
108
103
|
|
|
109
104
|
const isDayTime = currentTime >= sunriseTime && currentTime < sunsetTime;
|
|
110
105
|
|
|
111
|
-
const weatherIcon =
|
|
106
|
+
const weatherIcon = weatherCodeMap[code];
|
|
112
107
|
|
|
113
108
|
if (!weatherIcon) {
|
|
114
|
-
console.log(`[Weather] Unknown weather code ${
|
|
109
|
+
console.log(`[Weather] Unknown weather code ${code}`);
|
|
115
110
|
|
|
116
111
|
return "images/weather-icons/not-available";
|
|
117
112
|
}
|