@finbheara/archive-client 0.27.0 → 0.28.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.
package/README.md CHANGED
@@ -662,7 +662,7 @@ o.feises; // [{ occurrence_id, occurrence_ids, name_printed, date_lo, date_hi
662
662
  const f = await rel.upcoming.fields({ state: "pending" }); // state, feis, field_id, from, to
663
663
  f.fields; // [{ field_id, feis_id, source, host_id, competition_code, count_only, occurrence_id,
664
664
  // name_printed, date_lo, date_hi, year, feis_brand_id, comp, state, flags,
665
- // results_competitions, results_feis_ids, version, versions, captured_date, sha256,
665
+ // results_competitions, results_feis_ids, held_out, version, versions, captured_date, sha256,
666
666
  // limits, entrants, stated_rows, printed_total }]
667
667
  const e = await rel.upcoming.entrants({ field_id: "fweb:ABC26/101" }); // version: an older capture
668
668
  e.entrants; // [{ name_printed, school_printed, school_id, yob, arm, candidates, flags,
@@ -677,8 +677,10 @@ says how; `none` leaves `feis_brand_id` null, the unjoined ones).
677
677
  A FIELD is one competition a competitor list names, `<feis_id>/<code>`, the same id on every cut. A later capture of the host is a new `version`
678
678
  (a capture id; `versions` lists them), never a new field. `state` says how it stands on the cut:
679
679
  `pending` (on the list), `results` (the release holds its results, `results_competitions` the
680
- join), `passed` (its first day is before the cut's day and no result is held) or `withdrawn` (the
681
- host's newest capture no longer lists it). `comp` is the competition reading of its code (`arm`,
680
+ join), `held-out` (the results exist and the release holds them out: the platform door's knockout
681
+ lists the competition, a team, music or arts event, and `held_out` names each competition with the
682
+ knockout's reason, so there is nothing to score against), `passed` (its first day is before the
683
+ cut's day and no result is held) or `withdrawn` (the host's newest capture no longer lists it). `comp` is the competition reading of its code (`arm`,
682
684
  `level`, `feis_level`, `age`, `population`, `kind`, `title`, `why`), null on a count list. A
683
685
  QuickFeis registrant list's field reads it off the list's own by-event label (`source`
684
686
  `registration-list`, `title` the label as printed), and `flags` holds the cross-check of the
@@ -3950,7 +3950,13 @@ function needsRelease2(tag, c) {
3950
3950
  return new Error(`archive-client: ${tag} is too old for ${c.feature} (${c.calls}): it lacks ${c.missing.join(", ")}. Open a release of cut ${c.since} or later`);
3951
3951
  }
3952
3952
 
3953
- var FIELD_STATES2 = ["pending", "results", "passed", "withdrawn"];
3953
+ var FIELD_STATES2 = [
3954
+ "pending",
3955
+ "results",
3956
+ "held-out",
3957
+ "passed",
3958
+ "withdrawn"
3959
+ ];
3954
3960
  var json = (s, empty) => typeof s === "string" && s !== "" ? JSON.parse(s) : empty;
3955
3961
  function fieldOf(r) {
3956
3962
  const countOnly = r.count_only === 1;
@@ -3982,6 +3988,7 @@ function fieldOf(r) {
3982
3988
  flags: json(r.flags, []),
3983
3989
  results_competitions: json(r.results_competitions, []),
3984
3990
  results_feis_ids: json(r.results_feis_ids, []),
3991
+ held_out: json(r.held_out, []),
3985
3992
  version: r.version,
3986
3993
  versions: json(r.versions, []),
3987
3994
  captured_date: r.captured_date,
package/dist/cli.js CHANGED
@@ -21,7 +21,7 @@ import {
21
21
  latestCheck2,
22
22
  within,
23
23
  staleWarning2
24
- } from "./chunks/index-8c1pk7gw.js";
24
+ } from "./chunks/index-5rnb63kw.js";
25
25
  import"./chunks/index-hghdy980.js";
26
26
 
27
27
  var USAGE_HEADER = "usage: idq <verb> [--cache <dir>] [--repo <owner/name>] [--json] [--live]";
@@ -374,7 +374,7 @@ var VERBS = [
374
374
  ],
375
375
  bool: ["--feises"],
376
376
  usage: [
377
- " upcoming [--release <spec>] [--state pending,results,passed,withdrawn] [--feis <id>]",
377
+ " upcoming [--release <spec>] [--state pending,results,held-out,passed,withdrawn] [--feis <id>]",
378
378
  " [--from <date>] [--to <date>]",
379
379
  " the competitor lists' fields, each with its state, version",
380
380
  " and competition reading; --feis a feis, series or",
package/dist/index.js CHANGED
@@ -74,7 +74,7 @@ import {
74
74
  readLatestCheck2,
75
75
  latestCheck2,
76
76
  staleWarning2
77
- } from "./chunks/index-8c1pk7gw.js";
77
+ } from "./chunks/index-5rnb63kw.js";
78
78
  import {
79
79
  cacheRoot2,
80
80
  repoOf2
@@ -24,5 +24,5 @@ export { type Capability, FEATURES, type Feature, type SchemaProbe, capabilityOf
24
24
  export { type EntryRow, type StreamQuery, type StreamRow, type StreamScope, entryRank, } from "./stream.js";
25
25
  export { type FeisPanelSeat, FeisPanelFinder, PanelFinder, type PanelSeat, type RegisterRow, type TabAnswer, TabFinder, type TabQuery, type TabRow, type TabStreamQuery, } from "./tabs.js";
26
26
  export { EventFinder, type EventYear, type EventYearQuery, type ResultRoster, type RosterMember, type RosterTeam, TeamFinder, type TeamResult, } from "./teams.js";
27
- export { type EntrantCandidate, FIELD_STATES, type FieldComp, type FieldState, type UpcomingEntrant, type UpcomingEntrantAnswer, type UpcomingEntrantQuery, type UpcomingFeis, type UpcomingFeisAnswer, type UpcomingFeisQuery, type UpcomingFeisState, type UpcomingField, type UpcomingFieldAnswer, type UpcomingFieldQuery, UpcomingFinder, type UpcomingHost, } from "./upcoming.js";
27
+ export { type EntrantCandidate, FIELD_STATES, type FieldComp, type FieldState, type HeldOut, type UpcomingEntrant, type UpcomingEntrantAnswer, type UpcomingEntrantQuery, type UpcomingFeis, type UpcomingFeisAnswer, type UpcomingFeisQuery, type UpcomingFeisState, type UpcomingField, type UpcomingFieldAnswer, type UpcomingFieldQuery, UpcomingFinder, type UpcomingHost, } from "./upcoming.js";
28
28
  export { ARCHIVE_TAG, type ArchiveTag, type ReleaseSpec, compareTagsNewestFirst, cutOf, parseArchiveTag, parseReleaseSpec, pickTag, renderArchiveTag, } from "./tag.js";
@@ -1,6 +1,10 @@
1
1
  import type { Release } from "./release.js";
2
- export type FieldState = "pending" | "results" | "passed" | "withdrawn";
2
+ export type FieldState = "pending" | "results" | "held-out" | "passed" | "withdrawn";
3
3
  export declare const FIELD_STATES: readonly FieldState[];
4
+ export interface HeldOut {
5
+ competition: string;
6
+ reason: string;
7
+ }
4
8
  export type UpcomingFeisState = "upcoming" | "no-results";
5
9
  export interface UpcomingHost {
6
10
  source: string;
@@ -56,6 +60,7 @@ export interface UpcomingField {
56
60
  flags: string[];
57
61
  results_competitions: string[];
58
62
  results_feis_ids: string[];
63
+ held_out: HeldOut[];
59
64
  version: string;
60
65
  versions: string[];
61
66
  captured_date: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@finbheara/archive-client",
3
- "version": "0.27.0",
3
+ "version": "0.28.0",
4
4
  "description": "Open a versioned release of an Irish dance results archive: download, verify, decompress and cache it by tag, keep the cache, and resolve feises and schools against it",
5
5
  "keywords": ["irish-dance", "results", "release", "cache", "sqlite"],
6
6
  "license": "MIT",
@@ -44,7 +44,7 @@
44
44
  "prepublishOnly": "bun scripts/build.ts && bun ../../tools/checks/archive-client-tarball.ts"
45
45
  },
46
46
  "dependencies": {
47
- "@finbheara/domain": "0.57.2",
47
+ "@finbheara/domain": "0.58.0",
48
48
  "@finbheara/names": "0.30.0",
49
49
  "hyparquet": "1.31.2"
50
50
  },