WidgetRotation

Deterministic hourly rotation shared by Kotlin and Swift readers so both platforms show the same item.

Functions

Link copied to clipboard
fun hourSlot(epochMs: Long, zoneOffsetSeconds: Int): Long

Local wall-clock hour slot; zoneOffsetSeconds is the zone offset at epochMs.

Link copied to clipboard
fun index(slot: Long, count: Int): Int

Index into a list of count items for slot; wraps and handles negative slots.

Link copied to clipboard
fun stableHash(value: String): UInt

FNV-1a 32-bit over UTF-8 bytes, for stable per-item salts.