콘텐츠로 이동

relativeBucket — @gj-kit/format

@gj-kit/format에서 공개하는 function입니다. package version 0.1.1의 release declaration을 그대로 표시합니다.

import { relativeBucket } from '@gj-kit/format';
/**
* Pure bucket selection against an explicit clock. Returns null for
* null/undefined/invalid input. Thresholds: <60s just-now, <60m minutes,
* <24h hours, <30d days, <12mo months, then years.
*
* Calendar-unaware by construction: a month is exactly 30 days and a year is
* exactly 12 such months — 360 days, not 365. This reproduces both source apps
* bit for bit; the drift is a systematic early promotion of about five days per
* year, so `days = 360` already renders as one year.
*/
declare function relativeBucket(value: FormatDateInput | null | undefined, now: Date): FormatRelativeBucket | null;

이 선언은 매개변수, optionality, 제네릭, 반환값, 공개 union/type 계약의 정본입니다. 호출 전 필요한 환경·권한·오류 경계는 패키지 Golden path와 이 subpath의 import 조건을 함께 확인하세요.

  • 패키지: @gj-kit/format
  • 버전: 0.1.1
  • 공개 entry: .
  • 소스: GitHub

Pure bucket selection against an explicit clock. Returns null for null/undefined/invalid input. Thresholds: <60s just-now, <60m minutes, <24h hours, <30d days, <12mo months, then years.

Calendar-unaware by construction: a month is exactly 30 days and a year is exactly 12 such months — 360 days, not 365. This reproduces both source apps bit for bit; the drift is a systematic early promotion of about five days per year, so days = 360 already renders as one year.