Patch Changes
-
Add
subtract,multiply, anddividemath functions for computed columns (#1151)These functions enable complex calculations in
selectandorderByclauses, such as ranking algorithms that combine multiple factors (e.g., HN-style scoring that balances recency and rating).import { subtract, multiply, divide } from '@tanstack/db' // Example: Sort by computed ranking score const ranked = createLiveQueryCollection((q) => q .from({ r: recipesCollection }) .orderBy( ({ r }) => subtract( multiply(r.rating, r.timesMade), divide(r.ageInMs, 86400000), ), 'desc', ), )
subtract(a, b)- Subtractionmultiply(a, b)- Multiplicationdivide(a, b)- Division (returnsnullon divide-by-zero)
-
Use a safe
randomUUIDhelper that falls back tocrypto.getRandomValueswhencrypto.randomUUIDis unavailable (non-secure browser contexts such as dev servers reached via a LAN IP over HTTP). Fixes #1541. (#1593)