feat: add @aris/source-weatherkit package

Implements FeedSource for WeatherKit API. Depends on location source,
provides weather context for downstream sources, and produces weather
feed items.

Co-authored-by: Ona <no-reply@ona.com>
This commit is contained in:
2026-01-19 00:43:38 +00:00
parent c2f2aeec1d
commit 5e040470c7
10 changed files with 1203 additions and 0 deletions

View File

@@ -0,0 +1,27 @@
import type { ContextKey } from "@aris/core"
import { contextKey } from "@aris/core"
import type { ConditionCode } from "./weatherkit"
/**
* Simplified weather context for downstream sources.
*/
export interface Weather {
/** Current temperature */
temperature: number
/** Feels-like temperature */
temperatureApparent: number
/** Weather condition */
condition: ConditionCode
/** Relative humidity (0-1) */
humidity: number
/** UV index */
uvIndex: number
/** Wind speed */
windSpeed: number
/** Is it currently daytime */
daylight: boolean
}
export const WeatherKey: ContextKey<Weather> = contextKey("weather")