@jomae/catalog 0.7.0 → 0.10.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.
Files changed (300) hide show
  1. package/dist/baseline.d.ts +41 -2
  2. package/dist/baseline.d.ts.map +1 -1
  3. package/dist/baseline.js +52 -10
  4. package/dist/baseline.js.map +1 -1
  5. package/dist/detect.d.ts +26 -0
  6. package/dist/detect.d.ts.map +1 -1
  7. package/dist/detect.js +27 -1
  8. package/dist/detect.js.map +1 -1
  9. package/dist/generated/baseline-history.d.ts.map +1 -1
  10. package/dist/generated/baseline-history.js +17 -5
  11. package/dist/generated/baseline-history.js.map +1 -1
  12. package/dist/generated/baseline.d.ts.map +1 -1
  13. package/dist/generated/baseline.js +411 -35
  14. package/dist/generated/baseline.js.map +1 -1
  15. package/dist/generated/guides.d.ts.map +1 -1
  16. package/dist/generated/guides.js +26 -3
  17. package/dist/generated/guides.js.map +1 -1
  18. package/dist/generated/lint-rules.d.ts +26 -0
  19. package/dist/generated/lint-rules.d.ts.map +1 -0
  20. package/dist/generated/lint-rules.js +361 -0
  21. package/dist/generated/lint-rules.js.map +1 -0
  22. package/dist/generated/sizes.d.ts.map +1 -1
  23. package/dist/generated/sizes.js +408 -38
  24. package/dist/generated/sizes.js.map +1 -1
  25. package/dist/generated/support-claims.d.ts.map +1 -1
  26. package/dist/generated/support-claims.js +34 -3
  27. package/dist/generated/support-claims.js.map +1 -1
  28. package/dist/index.d.ts +5 -3
  29. package/dist/index.d.ts.map +1 -1
  30. package/dist/index.js +5 -3
  31. package/dist/index.js.map +1 -1
  32. package/dist/lint.d.ts +53 -0
  33. package/dist/lint.d.ts.map +1 -0
  34. package/dist/lint.js +41 -0
  35. package/dist/lint.js.map +1 -0
  36. package/dist/markdown.d.ts +7 -0
  37. package/dist/markdown.d.ts.map +1 -1
  38. package/dist/markdown.js +81 -2
  39. package/dist/markdown.js.map +1 -1
  40. package/dist/rules/abort-controller.d.ts.map +1 -1
  41. package/dist/rules/abort-controller.js +3 -0
  42. package/dist/rules/abort-controller.js.map +1 -1
  43. package/dist/rules/accordion.d.ts.map +1 -1
  44. package/dist/rules/accordion.js +3 -0
  45. package/dist/rules/accordion.js.map +1 -1
  46. package/dist/rules/array-grouping.d.ts.map +1 -1
  47. package/dist/rules/array-grouping.js +1 -0
  48. package/dist/rules/array-grouping.js.map +1 -1
  49. package/dist/rules/aspect-ratio.d.ts.map +1 -1
  50. package/dist/rules/aspect-ratio.js +4 -0
  51. package/dist/rules/aspect-ratio.js.map +1 -1
  52. package/dist/rules/base64.d.ts.map +1 -1
  53. package/dist/rules/base64.js +3 -0
  54. package/dist/rules/base64.js.map +1 -1
  55. package/dist/rules/broadcast-channel.d.ts.map +1 -1
  56. package/dist/rules/broadcast-channel.js +3 -0
  57. package/dist/rules/broadcast-channel.js.map +1 -1
  58. package/dist/rules/carousel.d.ts.map +1 -1
  59. package/dist/rules/carousel.js +5 -0
  60. package/dist/rules/carousel.js.map +1 -1
  61. package/dist/rules/clipboard.d.ts.map +1 -1
  62. package/dist/rules/clipboard.js +3 -0
  63. package/dist/rules/clipboard.js.map +1 -1
  64. package/dist/rules/color-functions.d.ts.map +1 -1
  65. package/dist/rules/color-functions.js +4 -0
  66. package/dist/rules/color-functions.js.map +1 -1
  67. package/dist/rules/container-queries.d.ts.map +1 -1
  68. package/dist/rules/container-queries.js +4 -0
  69. package/dist/rules/container-queries.js.map +1 -1
  70. package/dist/rules/cookie-store.d.ts +3 -0
  71. package/dist/rules/cookie-store.d.ts.map +1 -0
  72. package/dist/rules/cookie-store.js +38 -0
  73. package/dist/rules/cookie-store.js.map +1 -0
  74. package/dist/rules/css-has.d.ts +3 -0
  75. package/dist/rules/css-has.d.ts.map +1 -0
  76. package/dist/rules/css-has.js +35 -0
  77. package/dist/rules/css-has.js.map +1 -0
  78. package/dist/rules/css-nesting.d.ts +3 -0
  79. package/dist/rules/css-nesting.d.ts.map +1 -0
  80. package/dist/rules/css-nesting.js +35 -0
  81. package/dist/rules/css-nesting.js.map +1 -0
  82. package/dist/rules/date-format.d.ts +3 -0
  83. package/dist/rules/date-format.d.ts.map +1 -0
  84. package/dist/rules/date-format.js +33 -0
  85. package/dist/rules/date-format.js.map +1 -0
  86. package/dist/rules/date-time-input.d.ts.map +1 -1
  87. package/dist/rules/date-time-input.js +4 -0
  88. package/dist/rules/date-time-input.js.map +1 -1
  89. package/dist/rules/diacritics.d.ts +3 -0
  90. package/dist/rules/diacritics.d.ts.map +1 -0
  91. package/dist/rules/diacritics.js +34 -0
  92. package/dist/rules/diacritics.js.map +1 -0
  93. package/dist/rules/dialog.d.ts.map +1 -1
  94. package/dist/rules/dialog.js +4 -0
  95. package/dist/rules/dialog.js.map +1 -1
  96. package/dist/rules/discrete-transitions.d.ts.map +1 -1
  97. package/dist/rules/discrete-transitions.js +4 -0
  98. package/dist/rules/discrete-transitions.js.map +1 -1
  99. package/dist/rules/display-names.d.ts +3 -0
  100. package/dist/rules/display-names.d.ts.map +1 -0
  101. package/dist/rules/display-names.js +37 -0
  102. package/dist/rules/display-names.js.map +1 -0
  103. package/dist/rules/drag-and-drop.d.ts.map +1 -1
  104. package/dist/rules/drag-and-drop.js +4 -0
  105. package/dist/rules/drag-and-drop.js.map +1 -1
  106. package/dist/rules/duration-format.d.ts.map +1 -1
  107. package/dist/rules/duration-format.js +3 -0
  108. package/dist/rules/duration-format.js.map +1 -1
  109. package/dist/rules/event-target.d.ts.map +1 -1
  110. package/dist/rules/event-target.js +1 -0
  111. package/dist/rules/event-target.js.map +1 -1
  112. package/dist/rules/fetch.d.ts.map +1 -1
  113. package/dist/rules/fetch.js +4 -0
  114. package/dist/rules/fetch.js.map +1 -1
  115. package/dist/rules/field-sizing.d.ts.map +1 -1
  116. package/dist/rules/field-sizing.js +4 -0
  117. package/dist/rules/field-sizing.js.map +1 -1
  118. package/dist/rules/file-download.d.ts +3 -0
  119. package/dist/rules/file-download.d.ts.map +1 -0
  120. package/dist/rules/file-download.js +40 -0
  121. package/dist/rules/file-download.js.map +1 -0
  122. package/dist/rules/file-drop.d.ts +3 -0
  123. package/dist/rules/file-drop.d.ts.map +1 -0
  124. package/dist/rules/file-drop.js +40 -0
  125. package/dist/rules/file-drop.js.map +1 -0
  126. package/dist/rules/focus-visible.d.ts.map +1 -1
  127. package/dist/rules/focus-visible.js +4 -0
  128. package/dist/rules/focus-visible.js.map +1 -1
  129. package/dist/rules/font-loading.d.ts +3 -0
  130. package/dist/rules/font-loading.d.ts.map +1 -0
  131. package/dist/rules/font-loading.js +33 -0
  132. package/dist/rules/font-loading.js.map +1 -0
  133. package/dist/rules/form-validation.d.ts +3 -0
  134. package/dist/rules/form-validation.d.ts.map +1 -0
  135. package/dist/rules/form-validation.js +40 -0
  136. package/dist/rules/form-validation.js.map +1 -0
  137. package/dist/rules/fullscreen.d.ts.map +1 -1
  138. package/dist/rules/fullscreen.js +3 -0
  139. package/dist/rules/fullscreen.js.map +1 -1
  140. package/dist/rules/height-animation.d.ts.map +1 -1
  141. package/dist/rules/height-animation.js +4 -0
  142. package/dist/rules/height-animation.js.map +1 -1
  143. package/dist/rules/index.d.ts.map +1 -1
  144. package/dist/rules/index.js +50 -0
  145. package/dist/rules/index.js.map +1 -1
  146. package/dist/rules/inert.d.ts.map +1 -1
  147. package/dist/rules/inert.js +6 -0
  148. package/dist/rules/inert.js.map +1 -1
  149. package/dist/rules/intersection-observer.d.ts.map +1 -1
  150. package/dist/rules/intersection-observer.js +1 -0
  151. package/dist/rules/intersection-observer.js.map +1 -1
  152. package/dist/rules/jquery.d.ts +3 -0
  153. package/dist/rules/jquery.d.ts.map +1 -0
  154. package/dist/rules/jquery.js +37 -0
  155. package/dist/rules/jquery.js.map +1 -0
  156. package/dist/rules/lazy-loading.d.ts.map +1 -1
  157. package/dist/rules/lazy-loading.js +4 -0
  158. package/dist/rules/lazy-loading.js.map +1 -1
  159. package/dist/rules/light-dark.d.ts +3 -0
  160. package/dist/rules/light-dark.d.ts.map +1 -0
  161. package/dist/rules/light-dark.js +37 -0
  162. package/dist/rules/light-dark.js.map +1 -0
  163. package/dist/rules/line-clamp.d.ts.map +1 -1
  164. package/dist/rules/line-clamp.js +4 -0
  165. package/dist/rules/line-clamp.js.map +1 -1
  166. package/dist/rules/list-format.d.ts +3 -0
  167. package/dist/rules/list-format.d.ts.map +1 -0
  168. package/dist/rules/list-format.js +40 -0
  169. package/dist/rules/list-format.js.map +1 -0
  170. package/dist/rules/masonry.d.ts.map +1 -1
  171. package/dist/rules/masonry.js +4 -0
  172. package/dist/rules/masonry.js.map +1 -1
  173. package/dist/rules/match-media.d.ts +3 -0
  174. package/dist/rules/match-media.d.ts.map +1 -0
  175. package/dist/rules/match-media.js +36 -0
  176. package/dist/rules/match-media.js.map +1 -0
  177. package/dist/rules/natural-sort.d.ts.map +1 -1
  178. package/dist/rules/natural-sort.js +4 -0
  179. package/dist/rules/natural-sort.js.map +1 -1
  180. package/dist/rules/number-format.d.ts.map +1 -1
  181. package/dist/rules/number-format.js +14 -1
  182. package/dist/rules/number-format.js.map +1 -1
  183. package/dist/rules/page-visibility.d.ts.map +1 -1
  184. package/dist/rules/page-visibility.js +3 -0
  185. package/dist/rules/page-visibility.js.map +1 -1
  186. package/dist/rules/passkeys.d.ts +3 -0
  187. package/dist/rules/passkeys.d.ts.map +1 -0
  188. package/dist/rules/passkeys.js +44 -0
  189. package/dist/rules/passkeys.js.map +1 -0
  190. package/dist/rules/plural-rules.d.ts +3 -0
  191. package/dist/rules/plural-rules.d.ts.map +1 -0
  192. package/dist/rules/plural-rules.js +33 -0
  193. package/dist/rules/plural-rules.js.map +1 -0
  194. package/dist/rules/pointer-events.d.ts +3 -0
  195. package/dist/rules/pointer-events.d.ts.map +1 -0
  196. package/dist/rules/pointer-events.js +43 -0
  197. package/dist/rules/pointer-events.js.map +1 -0
  198. package/dist/rules/popover.d.ts.map +1 -1
  199. package/dist/rules/popover.js +5 -0
  200. package/dist/rules/popover.js.map +1 -1
  201. package/dist/rules/progress-indicator.d.ts +3 -0
  202. package/dist/rules/progress-indicator.d.ts.map +1 -0
  203. package/dist/rules/progress-indicator.js +39 -0
  204. package/dist/rules/progress-indicator.js.map +1 -0
  205. package/dist/rules/random-uuid.d.ts.map +1 -1
  206. package/dist/rules/random-uuid.js +4 -0
  207. package/dist/rules/random-uuid.js.map +1 -1
  208. package/dist/rules/relative-time.d.ts.map +1 -1
  209. package/dist/rules/relative-time.js +4 -0
  210. package/dist/rules/relative-time.js.map +1 -1
  211. package/dist/rules/resizable-panels.d.ts.map +1 -1
  212. package/dist/rules/resizable-panels.js +3 -0
  213. package/dist/rules/resizable-panels.js.map +1 -1
  214. package/dist/rules/resize-observer.d.ts.map +1 -1
  215. package/dist/rules/resize-observer.js +4 -0
  216. package/dist/rules/resize-observer.js.map +1 -1
  217. package/dist/rules/screen-wake-lock.d.ts.map +1 -1
  218. package/dist/rules/screen-wake-lock.js +4 -0
  219. package/dist/rules/screen-wake-lock.js.map +1 -1
  220. package/dist/rules/scroll-animations.d.ts.map +1 -1
  221. package/dist/rules/scroll-animations.js +4 -0
  222. package/dist/rules/scroll-animations.js.map +1 -1
  223. package/dist/rules/scroll-into-view.d.ts +3 -0
  224. package/dist/rules/scroll-into-view.d.ts.map +1 -0
  225. package/dist/rules/scroll-into-view.js +38 -0
  226. package/dist/rules/scroll-into-view.js.map +1 -0
  227. package/dist/rules/scroll-lock.d.ts.map +1 -1
  228. package/dist/rules/scroll-lock.js +3 -0
  229. package/dist/rules/scroll-lock.js.map +1 -1
  230. package/dist/rules/scrollbars.d.ts.map +1 -1
  231. package/dist/rules/scrollbars.js +3 -0
  232. package/dist/rules/scrollbars.js.map +1 -1
  233. package/dist/rules/segmenter.d.ts +3 -0
  234. package/dist/rules/segmenter.d.ts.map +1 -0
  235. package/dist/rules/segmenter.js +45 -0
  236. package/dist/rules/segmenter.js.map +1 -0
  237. package/dist/rules/select.d.ts.map +1 -1
  238. package/dist/rules/select.js +4 -0
  239. package/dist/rules/select.js.map +1 -1
  240. package/dist/rules/server-sent-events.d.ts.map +1 -1
  241. package/dist/rules/server-sent-events.js +4 -0
  242. package/dist/rules/server-sent-events.js.map +1 -1
  243. package/dist/rules/signal-timeout.d.ts +3 -0
  244. package/dist/rules/signal-timeout.d.ts.map +1 -0
  245. package/dist/rules/signal-timeout.js +31 -0
  246. package/dist/rules/signal-timeout.js.map +1 -0
  247. package/dist/rules/smooth-scroll.d.ts.map +1 -1
  248. package/dist/rules/smooth-scroll.js +4 -0
  249. package/dist/rules/smooth-scroll.js.map +1 -1
  250. package/dist/rules/speculation-rules.d.ts +3 -0
  251. package/dist/rules/speculation-rules.d.ts.map +1 -0
  252. package/dist/rules/speculation-rules.js +35 -0
  253. package/dist/rules/speculation-rules.js.map +1 -0
  254. package/dist/rules/sticky.d.ts.map +1 -1
  255. package/dist/rules/sticky.js +4 -0
  256. package/dist/rules/sticky.js.map +1 -1
  257. package/dist/rules/structured-clone.d.ts.map +1 -1
  258. package/dist/rules/structured-clone.js +1 -0
  259. package/dist/rules/structured-clone.js.map +1 -1
  260. package/dist/rules/temporal.d.ts +3 -0
  261. package/dist/rules/temporal.d.ts.map +1 -0
  262. package/dist/rules/temporal.js +34 -0
  263. package/dist/rules/temporal.js.map +1 -0
  264. package/dist/rules/text-wrap-balance.d.ts.map +1 -1
  265. package/dist/rules/text-wrap-balance.js +3 -0
  266. package/dist/rules/text-wrap-balance.js.map +1 -1
  267. package/dist/rules/url-pattern.d.ts +3 -0
  268. package/dist/rules/url-pattern.d.ts.map +1 -0
  269. package/dist/rules/url-pattern.js +40 -0
  270. package/dist/rules/url-pattern.js.map +1 -0
  271. package/dist/rules/url-search-params.d.ts.map +1 -1
  272. package/dist/rules/url-search-params.js +1 -0
  273. package/dist/rules/url-search-params.js.map +1 -1
  274. package/dist/rules/web-animations.d.ts +3 -0
  275. package/dist/rules/web-animations.d.ts.map +1 -0
  276. package/dist/rules/web-animations.js +44 -0
  277. package/dist/rules/web-animations.js.map +1 -0
  278. package/dist/rules/web-crypto.d.ts.map +1 -1
  279. package/dist/rules/web-crypto.js +4 -0
  280. package/dist/rules/web-crypto.js.map +1 -1
  281. package/dist/rules/web-locks.d.ts +3 -0
  282. package/dist/rules/web-locks.d.ts.map +1 -0
  283. package/dist/rules/web-locks.js +39 -0
  284. package/dist/rules/web-locks.js.map +1 -0
  285. package/dist/rules/web-share.d.ts.map +1 -1
  286. package/dist/rules/web-share.js +3 -0
  287. package/dist/rules/web-share.js.map +1 -1
  288. package/dist/rules/with-resolvers.d.ts +3 -0
  289. package/dist/rules/with-resolvers.d.ts.map +1 -0
  290. package/dist/rules/with-resolvers.js +30 -0
  291. package/dist/rules/with-resolvers.js.map +1 -0
  292. package/dist/schema.d.ts +4 -0
  293. package/dist/schema.d.ts.map +1 -1
  294. package/dist/schema.js +34 -0
  295. package/dist/schema.js.map +1 -1
  296. package/dist/tier-diff.d.ts +55 -0
  297. package/dist/tier-diff.d.ts.map +1 -0
  298. package/dist/tier-diff.js +61 -0
  299. package/dist/tier-diff.js.map +1 -0
  300. package/package.json +1 -1
@@ -8,8 +8,17 @@ export interface ResolvedFeature {
8
8
  /** Human-readable name, e.g. "Scroll snap". */
9
9
  name: string;
10
10
  status: BaselineStatus;
11
- /** Date the feature reached its current status, when known. */
12
- since: string | null;
11
+ /**
12
+ * When this feature crossed each threshold, as published. Null means it has
13
+ * not crossed that one.
14
+ *
15
+ * Deliberately raw. A single collapsed "since" used to live here too, dated
16
+ * against the feature's own tier, and `baselineSince` reading it instead of
17
+ * these is the bug that had light-dark four months late. One derivation, in
18
+ * `featureSince` and `baselineSince`, and nothing to disagree with.
19
+ */
20
+ lowDate: string | null;
21
+ highDate: string | null;
13
22
  spec: string | null;
14
23
  /** Minimum version each tracked browser needs. Null means no data (commonly: never shipped there). */
15
24
  support: Record<string, string | null>;
@@ -49,6 +58,20 @@ export declare function baselineShortLabel(status: BaselineStatus): string;
49
58
  /** The date this catalog's Baseline data was captured. */
50
59
  export declare const BASELINE_DATA_DATE: string;
51
60
  export declare const WEB_FEATURES_VERSION: string;
61
+ /**
62
+ * The date a feature reached its own current tier. Widely available features
63
+ * report when they crossed into widely; newly available ones when they crossed
64
+ * into newly. A limited feature has reached neither, so it has no date.
65
+ *
66
+ * For a RULE, use `baselineSince`. A rule is only as available as its weakest
67
+ * feature, so it has to ask every feature when it reached the rule's tier,
68
+ * which is a different question from this one whenever the two differ.
69
+ */
70
+ export declare function featureSince(feature: {
71
+ status: BaselineStatus;
72
+ lowDate: string | null;
73
+ highDate: string | null;
74
+ }): string | null;
52
75
  /**
53
76
  * Resolves one web-features ID against the snapshot. An unknown ID resolves to
54
77
  * `unknown` rather than throwing, so a stale snapshot degrades into a visible
@@ -65,6 +88,22 @@ export type TrackedBrowser = (typeof TRACKED_BROWSERS)[number];
65
88
  * highest (latest) minimum any single feature demands.
66
89
  */
67
90
  export declare function combinedSupport(features: readonly ResolvedFeature[]): Record<TrackedBrowser, string | null>;
91
+ /**
92
+ * When a rule as a whole reached its current Baseline status, or null when the
93
+ * catalog cannot say.
94
+ *
95
+ * A rule is only as available as its weakest required feature, so the rule
96
+ * crossed on the date the *last* of its features crossed. Dates are
97
+ * YYYY-MM-DD, so the latest one is the largest string and no clock is needed
98
+ * to compare them, which is what keeps this callable from a pure module.
99
+ *
100
+ * Null covers two cases that both mean "no crossing to report": a feature that
101
+ * has not crossed at all (limited or unverified), and a manualBaseline rule,
102
+ * whose `verifiedOn` records a human checking rather than a feature landing.
103
+ * A caller that filters on a date has to name those separately instead of
104
+ * dropping them silently.
105
+ */
106
+ export declare function baselineSince(info: BaselineInfo): string | null;
68
107
  /**
69
108
  * True when a support map names no version for any tracked browser. That is
70
109
  * two different situations wearing the same face: the feature shipped nowhere,
@@ -1 +1 @@
1
- {"version":3,"file":"baseline.d.ts","sourceRoot":"","sources":["../src/baseline.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,2BAA2B;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,+CAA+C;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,cAAc,CAAC;IACvB,+DAA+D;IAC/D,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,sGAAsG;IACtG,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;IACvC;;;;;;;OAOG;IACH,cAAc,EAAE;QACd,GAAG,EAAE,MAAM,CAAC;QACZ,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;KACxC,GAAG,IAAI,CAAC;CACV;AAED,MAAM,WAAW,YAAY;IAC3B,uEAAuE;IACvE,MAAM,EAAE,cAAc,CAAC;IACvB,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B;;;OAGG;IACH,SAAS,EAAE,eAAe,GAAG,IAAI,CAAC;IAClC,MAAM,EAAE,cAAc,GAAG,QAAQ,CAAC;IAClC,yDAAyD;IACzD,QAAQ,EAAE,MAAM,CAAC;IACjB,mEAAmE;IACnE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AAUD,wBAAgB,YAAY,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAE3D;AAED,kCAAkC;AAClC,wBAAgB,eAAe,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,EAAE,cAAc,GAAG,MAAM,CAE5E;AASD,wBAAgB,aAAa,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAE5D;AASD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAEjE;AAED,0DAA0D;AAC1D,eAAO,MAAM,kBAAkB,QAA+B,CAAC;AAC/D,eAAO,MAAM,oBAAoB,QAAsC,CAAC;AAsBxE;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,eAAe,CA4B1D;AAED,iEAAiE;AACjE,eAAO,MAAM,gBAAgB,YAC3B,QAAQ,EACR,MAAM,EACN,SAAS,EACT,QAAQ,CACA,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAyB/D;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,SAAS,eAAe,EAAE,GACnC,MAAM,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC,CAQvC;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG,OAAO,CAI7E;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,SAAS,eAAe,EAAE,GACnC,eAAe,EAAE,CAInB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG,YAAY,CA2CxD"}
1
+ {"version":3,"file":"baseline.d.ts","sourceRoot":"","sources":["../src/baseline.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,2BAA2B;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,+CAA+C;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,cAAc,CAAC;IACvB;;;;;;;;OAQG;IACH,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,sGAAsG;IACtG,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;IACvC;;;;;;;OAOG;IACH,cAAc,EAAE;QACd,GAAG,EAAE,MAAM,CAAC;QACZ,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;KACxC,GAAG,IAAI,CAAC;CACV;AAED,MAAM,WAAW,YAAY;IAC3B,uEAAuE;IACvE,MAAM,EAAE,cAAc,CAAC;IACvB,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B;;;OAGG;IACH,SAAS,EAAE,eAAe,GAAG,IAAI,CAAC;IAClC,MAAM,EAAE,cAAc,GAAG,QAAQ,CAAC;IAClC,yDAAyD;IACzD,QAAQ,EAAE,MAAM,CAAC;IACjB,mEAAmE;IACnE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AAUD,wBAAgB,YAAY,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAE3D;AAED,kCAAkC;AAClC,wBAAgB,eAAe,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,EAAE,cAAc,GAAG,MAAM,CAE5E;AASD,wBAAgB,aAAa,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAE5D;AASD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAEjE;AAED,0DAA0D;AAC1D,eAAO,MAAM,kBAAkB,QAA+B,CAAC;AAC/D,eAAO,MAAM,oBAAoB,QAAsC,CAAC;AAQxE;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE;IACpC,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB,GAAG,MAAM,GAAG,IAAI,CAIhB;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,eAAe,CA8B1D;AAED,iEAAiE;AACjE,eAAO,MAAM,gBAAgB,YAC3B,QAAQ,EACR,MAAM,EACN,SAAS,EACT,QAAQ,CACA,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAyB/D;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,SAAS,eAAe,EAAE,GACnC,MAAM,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC,CAQvC;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,GAAG,IAAI,CAmB/D;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG,OAAO,CAI7E;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,SAAS,eAAe,EAAE,GACnC,eAAe,EAAE,CAInB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG,YAAY,CA2CxD"}
package/dist/baseline.js CHANGED
@@ -42,15 +42,19 @@ function toStatus(baseline) {
42
42
  return "limited";
43
43
  }
44
44
  /**
45
- * The date a feature reached its current tier. Widely available features report
46
- * when they crossed into widely; newly available ones when they crossed into
47
- * newly. A limited feature has not reached either, so it has no date.
45
+ * The date a feature reached its own current tier. Widely available features
46
+ * report when they crossed into widely; newly available ones when they crossed
47
+ * into newly. A limited feature has reached neither, so it has no date.
48
+ *
49
+ * For a RULE, use `baselineSince`. A rule is only as available as its weakest
50
+ * feature, so it has to ask every feature when it reached the rule's tier,
51
+ * which is a different question from this one whenever the two differ.
48
52
  */
49
- function sinceDate(status, entry) {
50
- if (status === "widely")
51
- return entry.highDate;
52
- if (status === "newly")
53
- return entry.lowDate;
53
+ export function featureSince(feature) {
54
+ if (feature.status === "widely")
55
+ return feature.highDate;
56
+ if (feature.status === "newly")
57
+ return feature.lowDate;
54
58
  return null;
55
59
  }
56
60
  /**
@@ -71,7 +75,8 @@ export function resolveFeature(id) {
71
75
  id,
72
76
  name: id,
73
77
  status: "unknown",
74
- since: null,
78
+ lowDate: null,
79
+ highDate: null,
75
80
  spec: null,
76
81
  support: {},
77
82
  partialSupport: null,
@@ -82,7 +87,8 @@ export function resolveFeature(id) {
82
87
  id,
83
88
  name: entry.name,
84
89
  status,
85
- since: sinceDate(status, entry),
90
+ lowDate: entry.lowDate,
91
+ highDate: entry.highDate,
86
92
  spec: entry.spec,
87
93
  support: entry.support,
88
94
  partialSupport: entry.partialSupport,
@@ -129,6 +135,42 @@ export function combinedSupport(features) {
129
135
  }
130
136
  return result;
131
137
  }
138
+ /**
139
+ * When a rule as a whole reached its current Baseline status, or null when the
140
+ * catalog cannot say.
141
+ *
142
+ * A rule is only as available as its weakest required feature, so the rule
143
+ * crossed on the date the *last* of its features crossed. Dates are
144
+ * YYYY-MM-DD, so the latest one is the largest string and no clock is needed
145
+ * to compare them, which is what keeps this callable from a pure module.
146
+ *
147
+ * Null covers two cases that both mean "no crossing to report": a feature that
148
+ * has not crossed at all (limited or unverified), and a manualBaseline rule,
149
+ * whose `verifiedOn` records a human checking rather than a feature landing.
150
+ * A caller that filters on a date has to name those separately instead of
151
+ * dropping them silently.
152
+ */
153
+ export function baselineSince(info) {
154
+ if (info.status === "limited" || info.status === "unknown")
155
+ return null;
156
+ if (info.features.length === 0)
157
+ return null;
158
+ let latest = null;
159
+ for (const feature of info.features) {
160
+ // Against the RULE's tier, never the feature's own: a newly available
161
+ // rule that also needs an already-widely feature must be dated by when
162
+ // that feature reached NEWLY, not widely.
163
+ const crossed = info.status === "widely" ? feature.highDate : feature.lowDate;
164
+ // One undated feature means the rule has no date: the rule is gated by
165
+ // that feature, so a date drawn from its siblings would claim the rule
166
+ // crossed on a day it demonstrably had not.
167
+ if (crossed === null)
168
+ return null;
169
+ if (latest === null || crossed > latest)
170
+ latest = crossed;
171
+ }
172
+ return latest;
173
+ }
132
174
  /**
133
175
  * True when a support map names no version for any tracked browser. That is
134
176
  * two different situations wearing the same face: the feature shipped nowhere,
@@ -1 +1 @@
1
- {"version":3,"file":"baseline.js","sourceRoot":"","sources":["../src/baseline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"baseline.js","sourceRoot":"","sources":["../src/baseline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAwD3D,8EAA8E;AAC9E,MAAM,IAAI,GAAmC;IAC3C,MAAM,EAAE,CAAC;IACT,KAAK,EAAE,CAAC;IACR,OAAO,EAAE,CAAC;IACV,OAAO,EAAE,CAAC;CACX,CAAC;AAEF,MAAM,UAAU,YAAY,CAAC,MAAsB;IACjD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;AACtB,CAAC;AAED,kCAAkC;AAClC,MAAM,UAAU,eAAe,CAAC,CAAiB,EAAE,CAAiB;IAClE,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AAC3B,CAAC;AAED,MAAM,MAAM,GAAmC;IAC7C,MAAM,EAAE,2BAA2B;IACnC,KAAK,EAAE,0BAA0B;IACjC,OAAO,EAAE,sBAAsB;IAC/B,OAAO,EAAE,oBAAoB;CAC9B,CAAC;AAEF,MAAM,UAAU,aAAa,CAAC,MAAsB;IAClD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC;AACxB,CAAC;AAED,MAAM,YAAY,GAAmC;IACnD,MAAM,EAAE,kBAAkB;IAC1B,KAAK,EAAE,iBAAiB;IACxB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,YAAY;CACtB,CAAC;AAEF,MAAM,UAAU,kBAAkB,CAAC,MAAsB;IACvD,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC;AAC9B,CAAC;AAED,0DAA0D;AAC1D,MAAM,CAAC,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,WAAW,CAAC;AAC/D,MAAM,CAAC,MAAM,oBAAoB,GAAG,gBAAgB,CAAC,kBAAkB,CAAC;AAExE,SAAS,QAAQ,CAAC,QAAgC;IAChD,IAAI,QAAQ,KAAK,MAAM;QAAE,OAAO,QAAQ,CAAC;IACzC,IAAI,QAAQ,KAAK,KAAK;QAAE,OAAO,OAAO,CAAC;IACvC,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAAC,OAI5B;IACC,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,OAAO,CAAC,QAAQ,CAAC;IACzD,IAAI,OAAO,CAAC,MAAM,KAAK,OAAO;QAAE,OAAO,OAAO,CAAC,OAAO,CAAC;IACvD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,EAAU;IACvC,4EAA4E;IAC5E,wEAAwE;IACxE,yDAAyD;IACzD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,EAAE,CAAC;QACxD,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/B,CAAC,CAAC,SAAS,CAAC;IACd,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO;YACL,EAAE;YACF,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,SAAS;YACjB,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,IAAI;YACd,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,EAAE;YACX,cAAc,EAAE,IAAI;SACrB,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACxC,OAAO;QACL,EAAE;QACF,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,MAAM;QACN,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,cAAc,EAAE,KAAK,CAAC,cAAc;KACrC,CAAC;AACJ,CAAC;AAED,iEAAiE;AACjE,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,QAAQ;IACR,MAAM;IACN,SAAS;IACT,QAAQ;CACA,CAAC;AAGX;;;;;;;GAOG;AACH,SAAS,cAAc,CAAC,QAAoC;IAC1D,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAElD,IAAI,GAAG,GAAkB,IAAI,CAAC;IAC9B,IAAI,GAAG,GAAkB,IAAI,CAAC;IAC9B,KAAK,MAAM,OAAO,IAAI,QAA6B,EAAE,CAAC;QACpD,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,IAAI,IAAI,MAAM,GAAG,GAAG,CAAC,EAAE,CAAC;YAC5D,GAAG,GAAG,MAAM,CAAC;YACb,GAAG,GAAG,OAAO,CAAC;QAChB,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAC7B,QAAoC;IAEpC,MAAM,MAAM,GAAG,EAA2C,CAAC;IAC3D,KAAK,MAAM,OAAO,IAAI,gBAAgB,EAAE,CAAC;QACvC,MAAM,CAAC,OAAO,CAAC,GAAG,cAAc,CAC9B,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,CAC5D,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,aAAa,CAAC,IAAkB;IAC9C,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACxE,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAE5C,IAAI,MAAM,GAAkB,IAAI,CAAC;IACjC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpC,sEAAsE;QACtE,uEAAuE;QACvE,0CAA0C;QAC1C,MAAM,OAAO,GACX,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;QAEhE,uEAAuE;QACvE,uEAAuE;QACvE,4CAA4C;QAC5C,IAAI,OAAO,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAClC,IAAI,MAAM,KAAK,IAAI,IAAI,OAAO,GAAG,MAAM;YAAE,MAAM,GAAG,OAAO,CAAC;IAC5D,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,OAAsC;IAClE,OAAO,gBAAgB,CAAC,KAAK,CAC3B,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,KAAK,IAAI,CACjD,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAChC,QAAoC;IAEpC,OAAO,QAAQ,CAAC,MAAM,CACpB,CAAC,OAAO,EAAE,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,cAAc,CACtE,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,IAAU;IACxC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC;QACnC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,wEAAwE;YACxE,OAAO;gBACL,MAAM,EAAE,SAAS;gBACjB,QAAQ,EAAE,EAAE;gBACZ,SAAS,EAAE,IAAI;gBACf,MAAM,EAAE,QAAQ;gBAChB,QAAQ,EAAE,kBAAkB;gBAC5B,IAAI,EAAE,IAAI;aACX,CAAC;QACJ,CAAC;QACD,OAAO;YACL,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,QAAQ,EAAE,EAAE;YACZ,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,QAAQ;YAChB,QAAQ,EAAE,MAAM,CAAC,UAAU;YAC3B,IAAI,EAAE,MAAM,CAAC,IAAI;SAClB,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IACrD,IAAI,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAoB,CAAC;IAC7C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;YAAE,OAAO,GAAG,OAAO,CAAC;IACrE,CAAC;IAED,2EAA2E;IAC3E,uEAAuE;IACvE,kCAAkC;IAClC,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAEnE,OAAO;QACL,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,QAAQ;QACR,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;QACpC,MAAM,EAAE,cAAc;QACtB,QAAQ,EAAE,kBAAkB;QAC5B,IAAI,EAAE,IAAI;KACX,CAAC;AACJ,CAAC"}
package/dist/detect.d.ts CHANGED
@@ -73,6 +73,32 @@ export interface Summary {
73
73
  }
74
74
  /** Pure. Rolls findings up into the numbers a report leads with. */
75
75
  export declare function summarize(findings: readonly Finding[]): Summary;
76
+ export interface SinceSplit {
77
+ /** Findings whose rule reached its current status on or after the date. */
78
+ since: Finding[];
79
+ /** Findings that reached their current status before the date. */
80
+ earlier: Finding[];
81
+ /**
82
+ * Findings the catalog holds no crossing date for: a rule still limited or
83
+ * unverified, or one carrying a manualBaseline. They are neither in nor out,
84
+ * so a report has to count them out loud rather than let them vanish.
85
+ */
86
+ undated: Finding[];
87
+ }
88
+ /**
89
+ * Splits findings by when the rule reached its current Baseline status. Pure.
90
+ *
91
+ * `date` is YYYY-MM-DD and the comparison is lexicographic, so this needs no
92
+ * clock and stays callable from the pure core. The boundary is inclusive: a
93
+ * rule that crossed exactly on `date` is in the `since` bucket, because a
94
+ * reader asking "what changed since March 1" means that day included.
95
+ *
96
+ * A `since` bucket can only ever hold widely and newly available findings,
97
+ * since those are the only statuses that carry a crossing date. That is a
98
+ * property worth keeping: a date-filtered view cannot surface something that
99
+ * still needs a fallback written first.
100
+ */
101
+ export declare function splitSince(findings: readonly Finding[], date: string): SinceSplit;
76
102
  export interface Report {
77
103
  findings: Finding[];
78
104
  summary: Summary;
@@ -1 +1 @@
1
- {"version":3,"file":"detect.d.ts","sourceRoot":"","sources":["../src/detect.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,YAAY,EAGlB,MAAM,eAAe,CAAC;AAGvB,OAAO,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAExD;;;;;GAKG;AAEH,eAAO,MAAM,iBAAiB,YAC5B,cAAc,EACd,iBAAiB,EACjB,kBAAkB,EAGlB,sBAAsB,CACd,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjE,wDAAwD;AACxD,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;IAClD,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;IACrD,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;IACtD,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;CAC3D;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,sEAAsE;IACtE,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,uEAAuE;IACvE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,gEAAgE;IAChE,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,IAAI,CAAC;IACX,QAAQ,EAAE,YAAY,CAAC;IACvB,mEAAmE;IACnE,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B;;;OAGG;IACH,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,+DAA+D;IAC/D,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,aAAa;IAC5B,0EAA0E;IAC1E,KAAK,CAAC,EAAE,SAAS,IAAI,EAAE,GAAG,SAAS,CAAC;CACrC;AAgGD;;;;;;GAMG;AACH,wBAAgB,MAAM,CACpB,GAAG,EAAE,eAAe,EACpB,OAAO,GAAE,aAAkB,GAC1B,OAAO,EAAE,CAkBX;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,CAa3D;AAED,MAAM,WAAW,OAAO;IACtB;;;;OAIG;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB,kCAAkC;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,0DAA0D;IAC1D,YAAY,EAAE,MAAM,CAAC;IACrB,6DAA6D;IAC7D,eAAe,EAAE,OAAO,CAAC;IACzB,kDAAkD;IAClD,QAAQ,EAAE,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;CAC1C;AAED,oEAAoE;AACpE,wBAAgB,SAAS,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,GAAG,OAAO,CAyB/D;AAED,MAAM,WAAW,MAAM;IACrB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,wEAAwE;AACxE,wBAAgB,OAAO,CACrB,GAAG,EAAE,eAAe,EACpB,OAAO,GAAE,aAAkB,GAC1B,MAAM,CAGR"}
1
+ {"version":3,"file":"detect.d.ts","sourceRoot":"","sources":["../src/detect.ts"],"names":[],"mappings":"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"}
package/dist/detect.js CHANGED
@@ -1,4 +1,4 @@
1
- import { compareBaseline, resolveBaseline, } from "./baseline.js";
1
+ import { baselineSince, compareBaseline, resolveBaseline, } from "./baseline.js";
2
2
  import { packageSizes } from "./generated/sizes.js";
3
3
  import { rules as defaultRules } from "./rules/index.js";
4
4
  /**
@@ -162,6 +162,32 @@ export function summarize(findings) {
162
162
  byStatus,
163
163
  };
164
164
  }
165
+ /**
166
+ * Splits findings by when the rule reached its current Baseline status. Pure.
167
+ *
168
+ * `date` is YYYY-MM-DD and the comparison is lexicographic, so this needs no
169
+ * clock and stays callable from the pure core. The boundary is inclusive: a
170
+ * rule that crossed exactly on `date` is in the `since` bucket, because a
171
+ * reader asking "what changed since March 1" means that day included.
172
+ *
173
+ * A `since` bucket can only ever hold widely and newly available findings,
174
+ * since those are the only statuses that carry a crossing date. That is a
175
+ * property worth keeping: a date-filtered view cannot surface something that
176
+ * still needs a fallback written first.
177
+ */
178
+ export function splitSince(findings, date) {
179
+ const split = { since: [], earlier: [], undated: [] };
180
+ for (const finding of findings) {
181
+ const crossed = baselineSince(finding.baseline);
182
+ if (crossed === null)
183
+ split.undated.push(finding);
184
+ else if (crossed >= date)
185
+ split.since.push(finding);
186
+ else
187
+ split.earlier.push(finding);
188
+ }
189
+ return split;
190
+ }
165
191
  /** Convenience wrapper: detect() plus summarize() in one call. Pure. */
166
192
  export function analyze(pkg, options = {}) {
167
193
  const findings = detect(pkg, options);
@@ -1 +1 @@
1
- {"version":3,"file":"detect.js","sourceRoot":"","sources":["../src/detect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"detect.js","sourceRoot":"","sources":["../src/detect.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"baseline-history.d.ts","sourceRoot":"","sources":["../../src/generated/baseline-history.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,oBAAoB;IACnC;8EAC0E;IAC1E,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,CAAC;IAC3B;mDAC+C;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAC5E;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,oBAAoB,EAAE,CAAC;CACjC;AAED,eAAO,MAAM,eAAe,EAAE,eAe7B,CAAC"}
1
+ {"version":3,"file":"baseline-history.d.ts","sourceRoot":"","sources":["../../src/generated/baseline-history.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,oBAAoB;IACnC;8EAC0E;IAC1E,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,CAAC;IAC3B;mDAC+C;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAC5E;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,oBAAoB,EAAE,CAAC;CACjC;AAED,eAAO,MAAM,eAAe,EAAE,eA2B7B,CAAC"}
@@ -5,13 +5,25 @@ export const baselineHistory = {
5
5
  "entries": [
6
6
  {
7
7
  "month": "2026-09",
8
- "generatedOn": "2026-09-06",
8
+ "generatedOn": "2026-09-20",
9
9
  "webFeaturesVersion": "3.36.0",
10
- "ruleCount": 56,
10
+ "ruleCount": 81,
11
11
  "tally": {
12
- "widely": 32,
13
- "newly": 12,
14
- "limited": 12,
12
+ "widely": 48,
13
+ "newly": 18,
14
+ "limited": 15,
15
+ "unknown": 0
16
+ }
17
+ },
18
+ {
19
+ "month": "2026-10",
20
+ "generatedOn": "2026-10-04",
21
+ "webFeaturesVersion": "3.40.1",
22
+ "ruleCount": 81,
23
+ "tally": {
24
+ "widely": 50,
25
+ "newly": 16,
26
+ "limited": 15,
15
27
  "unknown": 0
16
28
  }
17
29
  }
@@ -1 +1 @@
1
- {"version":3,"file":"baseline-history.js","sourceRoot":"","sources":["../../src/generated/baseline-history.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,wEAAwE;AACxE,sEAAsE;AAkBtE,MAAM,CAAC,MAAM,eAAe,GAAoB;IAC9C,SAAS,EAAE;QACT;YACE,OAAO,EAAE,SAAS;YAClB,aAAa,EAAE,YAAY;YAC3B,oBAAoB,EAAE,QAAQ;YAC9B,WAAW,EAAE,EAAE;YACf,OAAO,EAAE;gBACP,QAAQ,EAAE,EAAE;gBACZ,OAAO,EAAE,EAAE;gBACX,SAAS,EAAE,EAAE;gBACb,SAAS,EAAE,CAAC;aACb;SACF;KACF;CACF,CAAC"}
1
+ {"version":3,"file":"baseline-history.js","sourceRoot":"","sources":["../../src/generated/baseline-history.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,wEAAwE;AACxE,sEAAsE;AAkBtE,MAAM,CAAC,MAAM,eAAe,GAAoB;IAC9C,SAAS,EAAE;QACT;YACE,OAAO,EAAE,SAAS;YAClB,aAAa,EAAE,YAAY;YAC3B,oBAAoB,EAAE,QAAQ;YAC9B,WAAW,EAAE,EAAE;YACf,OAAO,EAAE;gBACP,QAAQ,EAAE,EAAE;gBACZ,OAAO,EAAE,EAAE;gBACX,SAAS,EAAE,EAAE;gBACb,SAAS,EAAE,CAAC;aACb;SACF;QACD;YACE,OAAO,EAAE,SAAS;YAClB,aAAa,EAAE,YAAY;YAC3B,oBAAoB,EAAE,QAAQ;YAC9B,WAAW,EAAE,EAAE;YACf,OAAO,EAAE;gBACP,QAAQ,EAAE,EAAE;gBACZ,OAAO,EAAE,EAAE;gBACX,SAAS,EAAE,EAAE;gBACb,SAAS,EAAE,CAAC;aACb;SACF;KACF;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"baseline.d.ts","sourceRoot":"","sources":["../../src/generated/baseline.ts"],"names":[],"mappings":"AAGA,sEAAsE;AACtE,MAAM,WAAW,qBAAqB;IACpC,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,8EAA8E;IAC9E,QAAQ,EAAE,MAAM,GAAG,KAAK,GAAG,KAAK,CAAC;IACjC,+CAA+C;IAC/C,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,gDAAgD;IAChD,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,kEAAkE;IAClE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB;;;;OAIG;IACH,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;IACvC;;;;;OAKG;IACH,cAAc,EAAE;QACd,GAAG,EAAE,MAAM,CAAC;QACZ,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;KACxC,GAAG,IAAI,CAAC;CACV;AAED,MAAM,WAAW,gBAAgB;IAC/B,oDAAoD;IACpD,WAAW,EAAE,MAAM,CAAC;IACpB,mDAAmD;IACnD,kBAAkB,EAAE,MAAM,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;CACjD;AAED,eAAO,MAAM,gBAAgB,EAAE,gBAu4B9B,CAAC"}
1
+ {"version":3,"file":"baseline.d.ts","sourceRoot":"","sources":["../../src/generated/baseline.ts"],"names":[],"mappings":"AAGA,sEAAsE;AACtE,MAAM,WAAW,qBAAqB;IACpC,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,8EAA8E;IAC9E,QAAQ,EAAE,MAAM,GAAG,KAAK,GAAG,KAAK,CAAC;IACjC,+CAA+C;IAC/C,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,gDAAgD;IAChD,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,kEAAkE;IAClE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB;;;;OAIG;IACH,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;IACvC;;;;;OAKG;IACH,cAAc,EAAE;QACd,GAAG,EAAE,MAAM,CAAC;QACZ,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;KACxC,GAAG,IAAI,CAAC;CACV;AAED,MAAM,WAAW,gBAAgB;IAC/B,oDAAoD;IACpD,WAAW,EAAE,MAAM,CAAC;IACpB,mDAAmD;IACnD,kBAAkB,EAAE,MAAM,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;CACjD;AAED,eAAO,MAAM,gBAAgB,EAAE,gBA+vC9B,CAAC"}