paperlint 11.0.0 → 11.1.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 (76) hide show
  1. package/dist/adapters/hotcrp/index.d.ts +1 -1
  2. package/dist/adapters/hotcrp/index.d.ts.map +1 -1
  3. package/dist/adapters/hotcrp/index.js +1 -1
  4. package/dist/adapters/hotcrp/index.js.map +1 -1
  5. package/dist/adapters/hotcrp/portal.io.d.ts.map +1 -1
  6. package/dist/adapters/hotcrp/portal.io.js +17 -2
  7. package/dist/adapters/hotcrp/portal.io.js.map +1 -1
  8. package/dist/adapters/hotcrp/response.d.ts +7 -1
  9. package/dist/adapters/hotcrp/response.d.ts.map +1 -1
  10. package/dist/adapters/hotcrp/response.js +35 -3
  11. package/dist/adapters/hotcrp/response.js.map +1 -1
  12. package/dist/adapters/hotcrp/site.d.ts +1 -1
  13. package/dist/adapters/hotcrp/site.d.ts.map +1 -1
  14. package/dist/adapters/hotcrp/site.js +1 -2
  15. package/dist/adapters/hotcrp/site.js.map +1 -1
  16. package/dist/cli.d.ts.map +1 -1
  17. package/dist/cli.js +6 -1
  18. package/dist/cli.js.map +1 -1
  19. package/dist/domain/submission-fields.d.ts +77 -0
  20. package/dist/domain/submission-fields.d.ts.map +1 -0
  21. package/dist/domain/submission-fields.js +127 -0
  22. package/dist/domain/submission-fields.js.map +1 -0
  23. package/dist/domain/submission.d.ts +10 -0
  24. package/dist/domain/submission.d.ts.map +1 -1
  25. package/dist/domain/submission.js.map +1 -1
  26. package/dist/lib/paper-config.d.ts.map +1 -1
  27. package/dist/lib/paper-config.js +2 -0
  28. package/dist/lib/paper-config.js.map +1 -1
  29. package/dist/paper-settings.d.ts +5 -0
  30. package/dist/paper-settings.d.ts.map +1 -1
  31. package/dist/paper-settings.js +5 -2
  32. package/dist/paper-settings.js.map +1 -1
  33. package/dist/ports/submission-portal.d.ts +3 -1
  34. package/dist/ports/submission-portal.d.ts.map +1 -1
  35. package/dist/presets.d.ts +3 -0
  36. package/dist/presets.d.ts.map +1 -1
  37. package/dist/presets.js +3 -1
  38. package/dist/presets.js.map +1 -1
  39. package/dist/submission.d.ts +24 -5
  40. package/dist/submission.d.ts.map +1 -1
  41. package/dist/submission.js +140 -50
  42. package/dist/submission.js.map +1 -1
  43. package/dist/tex-requirements.d.ts +3 -0
  44. package/dist/tex-requirements.d.ts.map +1 -1
  45. package/dist/tex-requirements.js +30 -2
  46. package/dist/tex-requirements.js.map +1 -1
  47. package/docs/submission.md +29 -6
  48. package/lib/paper-config.ts +3 -0
  49. package/package.json +1 -1
  50. package/presets/msr.jsonc +66 -0
  51. package/presets/venue-profile.schema.json +41 -0
  52. package/skills/submission-portal/SKILL.md +51 -20
  53. package/skills/submission-portal/SKILL.md.spec.ts +50 -19
  54. package/src/adapters/hotcrp/cassette/README.md +7 -6
  55. package/src/adapters/hotcrp/cassette/get-searchcompletion.json +100 -0
  56. package/src/adapters/hotcrp/index.ts +1 -0
  57. package/src/adapters/hotcrp/portal.io.ts +22 -2
  58. package/src/adapters/hotcrp/portal.test.ts +103 -2
  59. package/src/adapters/hotcrp/response.ts +45 -4
  60. package/src/adapters/hotcrp/site.ts +2 -3
  61. package/src/cli.ts +6 -1
  62. package/src/domain/submission-fields.test.ts +183 -0
  63. package/src/domain/submission-fields.ts +190 -0
  64. package/src/domain/submission.ts +11 -0
  65. package/src/new-paper.test.ts +1 -0
  66. package/src/paper-settings.test.ts +6 -0
  67. package/src/paper-settings.ts +11 -3
  68. package/src/ports/submission-portal.ts +3 -0
  69. package/src/presets.ts +12 -2
  70. package/src/submission-fields-run.test.ts +247 -0
  71. package/src/submission-new.test.ts +4 -4
  72. package/src/submission-update.test.ts +7 -1
  73. package/src/submission.test.ts +1 -1
  74. package/src/submission.ts +207 -54
  75. package/src/tex-requirements.test.ts +21 -0
  76. package/src/tex-requirements.ts +67 -2
@@ -1,6 +1,7 @@
1
1
  import { type Result } from "./domain/result.ts";
2
2
  import { type Sha256 } from "./domain/sha256.ts";
3
- import { type Author, type CreateOutcome, type PortalFailure, type SubmissionView, type SupportedPortal, type UpdateOutcome } from "./domain/submission.ts";
3
+ import { type Author, type CreateOutcome, type NewSubmission, type PortalFailure, type SubmissionView, type SupportedPortal, type UpdateOutcome } from "./domain/submission.ts";
4
+ import { type FieldValues, type VenueFields } from "./domain/submission-fields.ts";
4
5
  import type { Files } from "./ports/files.ts";
5
6
  import type { PortalSite } from "./ports/submission-portal.ts";
6
7
  import { type PresetDeps } from "./presets.ts";
@@ -17,7 +18,7 @@ export declare function tokenProblemLines(portal: SupportedPortal, site: PortalS
17
18
  * a token without the scope — both answered with the site's token page. Empty for anything else. Pure.
18
19
  */
19
20
  export declare function tokenRefusedLines(portal: SupportedPortal, site: PortalSite, f: PortalFailure): readonly string[];
20
- export declare const SUBCOMMANDS: readonly ["new", "show", "update"];
21
+ export declare const SUBCOMMANDS: readonly ["new", "show", "update", "topics"];
21
22
  export type Subcommand = (typeof SUBCOMMANDS)[number];
22
23
  /** What one `submission` run was asked, after the command line. */
23
24
  export interface SubmissionArgs {
@@ -59,6 +60,15 @@ export interface SubmissionTarget {
59
60
  readonly config: string;
60
61
  /** The authors the paper declares for the portal; null when it declares none. */
61
62
  readonly authors: readonly Author[] | null;
63
+ /**
64
+ * The paper's answers to the venue's own form fields, checked against `venueFields`: only `new`
65
+ * and `update` send them, so only they stop on a problem — `show` and `topics` read past it.
66
+ */
67
+ readonly answers: Result<FieldValues, string>;
68
+ /** The answers to send: `answers`' value once a sending subcommand checked it; empty otherwise. */
69
+ readonly fields: FieldValues;
70
+ /** The venue's own form fields, as its preset records them; null when it records none. */
71
+ readonly venueFields: VenueFields | null;
62
72
  /** The cycle attempt is accepted: a new submission belongs to a new cycle. */
63
73
  readonly accepted: boolean;
64
74
  /** The paper's built PDF, absolute. */
@@ -88,6 +98,10 @@ export declare function showLines(t: SubmissionTarget, view: SubmissionView, loc
88
98
  * counts. Pure.
89
99
  */
90
100
  export declare const checkPdfLine: (shown: string, call: string | null) => string;
101
+ /** The fields the paper sent, one line each, as the portal will get them. Pure. */
102
+ export declare const fieldLines: (fields: FieldValues) => readonly string[];
103
+ /** The checkbox fields the portal did not take, said; none when it took them all. Pure. */
104
+ export declare function droppedLines(fields: FieldValues, venue: VenueFields | null, o: UpdateOutcome): readonly string[];
91
105
  /** `update`'s report. Pure. */
92
106
  export declare function updateLines(o: UpdateOutcome, local: {
93
107
  readonly shown: string;
@@ -103,11 +117,16 @@ export declare function titleOf(source: {
103
117
  readonly where: (offset: number) => string;
104
118
  } | null, latex: Pick<LatexReader, "headings">, metadata: Readonly<Record<string, string>> | null): Result<string, string>;
105
119
  /** What `new` will send, as the author reads it before saying yes. Pure. */
106
- export declare function newLines(title: string, abstract: string, authors: readonly Author[]): readonly string[];
107
- /** What the author does on the site after `new`: what paperlint does not send. Pure. */
108
- export declare function onTheSiteLines(site: PortalSite, id: number | null, paperArg: string): readonly string[];
120
+ export declare function newLines(p: NewSubmission): readonly string[];
121
+ /** What is left after `new`: the venue's fields the paper did not answer, what only the site takes, the submit. Pure. */
122
+ export declare function onTheSiteLines(site: PortalSite, t: Pick<SubmissionTarget, "fields" | "venueFields">, id: number | null, paperArg: string): readonly string[];
109
123
  /** `new`'s report of the portal's answer. Pure. */
110
124
  export declare function createLines(o: CreateOutcome, save: boolean): readonly string[];
125
+ /** `topics`' report: each topic the portal offers against the preset's options, and whether they agree. Pure. */
126
+ export declare function topicsReport(t: Pick<SubmissionTarget, "portal" | "venueFields">, offered: readonly string[]): {
127
+ readonly lines: readonly string[];
128
+ readonly agrees: boolean;
129
+ };
111
130
  /** Why the command line cannot be run as asked; null when it can. Pure. */
112
131
  export declare function usageProblem(a: SubmissionArgs): string | null;
113
132
  /** `paperlint submission <new|show|update> [paper-dir]` — exit 0, 1 (the portal said no), or 2 (usage). */
@@ -1 +1 @@
1
- {"version":3,"file":"submission.d.ts","sourceRoot":"","sources":["../src/submission.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAW,KAAK,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAa,KAAK,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAIL,KAAK,MAAM,EACX,KAAK,aAAa,EAElB,KAAK,aAAa,EAElB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,aAAa,EACnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EACV,UAAU,EAEX,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAIL,KAAK,UAAU,EAChB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAGL,KAAK,OAAO,EACb,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,0BAA0B,CAAC;AAElC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAIpD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAG7D,sFAAsF;AACtF,wBAAgB,UAAU,CACxB,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,MAAM,GACf,SAAS,MAAM,EAAE,CAOnB;AAED,mFAAmF;AACnF,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,UAAU,EAChB,CAAC,EAAE,YAAY,GACd,SAAS,MAAM,EAAE,CAMnB;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,eAAe,EACvB,IAAI,EAAE,UAAU,EAChB,CAAC,EAAE,aAAa,GACf,SAAS,MAAM,EAAE,CASnB;AAED,eAAO,MAAM,WAAW,oCAAqC,CAAC;AAC9D,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;AAItD,mEAAmE;AACnE,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,8DAA8D;IAC9D,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,oEAAoE;IACpE,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,4EAA4E;IAC5E,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IACnD,2GAA2G;IAC3G,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,eAAe,KAAK,UAAU,CAAC;IAClD,oFAAoF;IACpF,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,gFAAgF;IAChF,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAC7B,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACtC;AAED,4EAA4E;AAC5E,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;IACjC,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,8CAA8C;IAC9C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,iFAAiF;IACjF,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAAC;IAC3C,8EAA8E;IAC9E,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,uCAAuC;IACvC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,6FAA6F;IAC7F,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B;;;OAGG;IACH,QAAQ,CAAC,SAAS,EAAE,SAAS,OAAO,EAAE,CAAC;CACxC;AA6CD,mGAAmG;AACnG,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,UAAU,GACf,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAWlC;AAQD,sFAAsF;AACtF,wBAAgB,WAAW,CAAC,CAAC,EAAE,aAAa,GAAG,MAAM,CAWpD;AAkBD,8EAA8E;AAC9E,wBAAgB,YAAY,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,CAa/C;AAED,6BAA6B;AAC7B,wBAAgB,SAAS,CACvB,CAAC,EAAE,gBAAgB,EACnB,IAAI,EAAE,cAAc,EACpB,KAAK,EAAE;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAChE,SAAS,MAAM,EAAE,CAcnB;AAED;;;;GAIG;AACH,eAAO,MAAM,YAAY,GAAI,OAAO,MAAM,EAAE,MAAM,MAAM,GAAG,IAAI,KAAG,MACoS,CAAC;AAEvW,+BAA+B;AAC/B,wBAAgB,WAAW,CACzB,CAAC,EAAE,aAAa,EAChB,KAAK,EAAE;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAC1D,IAAI,EAAE,OAAO,GACZ,SAAS,MAAM,EAAE,CAcnB;AAgKD;;;GAGG;AACH,wBAAgB,OAAO,CACrB,MAAM,EAAE;IACN,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,kFAAkF;IAClF,QAAQ,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;CAC5C,GAAG,IAAI,EACR,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,EACpC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GAAG,IAAI,GAChD,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAqBxB;AAgBD,4EAA4E;AAC5E,wBAAgB,QAAQ,CACtB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,SAAS,MAAM,EAAE,GACzB,SAAS,MAAM,EAAE,CAUnB;AAED,wFAAwF;AACxF,wBAAgB,cAAc,CAC5B,IAAI,EAAE,UAAU,EAChB,EAAE,EAAE,MAAM,GAAG,IAAI,EACjB,QAAQ,EAAE,MAAM,GACf,SAAS,MAAM,EAAE,CAMnB;AAED,mDAAmD;AACnD,wBAAgB,WAAW,CACzB,CAAC,EAAE,aAAa,EAChB,IAAI,EAAE,OAAO,GACZ,SAAS,MAAM,EAAE,CAanB;AA+KD,2EAA2E;AAC3E,wBAAgB,YAAY,CAAC,CAAC,EAAE,cAAc,GAAG,MAAM,GAAG,IAAI,CAW7D;AAqBD,2GAA2G;AAC3G,wBAAsB,aAAa,CACjC,CAAC,EAAE,cAAc,EACjB,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,MAAM,CAAC,CAwBjB"}
1
+ {"version":3,"file":"submission.d.ts","sourceRoot":"","sources":["../src/submission.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  /**
2
- * `paperlint submission show|update [paper-dir]` — read and change a paper's submission on the
3
- * venue's portal, through the portal's API.
2
+ * `paperlint submission new|show|update|topics [paper-dir]` — create, read and change a paper's
3
+ * submission on the venue's portal, through the portal's API.
4
4
  *
5
5
  * The command is named by the job, not by the portal: WHERE the submission lives is data. The venue
6
6
  * preset declares the portal (`"portal": { "kind": "hotcrp", "url": … }`), the paper's
@@ -11,6 +11,12 @@
11
11
  * whether it is the local `paper.pdf`, by sha256
12
12
  * update send the PDF (and, if asked, an abstract, or "submitted"). A DRY RUN unless `--save`:
13
13
  * the portal checks the change and keeps nothing
14
+ * topics the topics the portal offers, against the ones the venue preset records
15
+ *
16
+ * `new` and `update` also send the paper's `fields` — its answers to the venue's own form fields
17
+ * (topics, PC conflicts, …), checked against the preset's `submission_fields` before anything is
18
+ * sent (`src/domain/submission-fields.ts`). A checkbox field the portal did not take is said, and
19
+ * fails the command: HotCRP keeps an option it does not know as nothing, without an error.
14
20
  *
15
21
  * 🔴 THE TOKEN IS AN INPUT, AND ONLY AN INPUT. It comes from the environment (the root reads it), is
16
22
  * handed to the adapter, and never appears in anything printed here.
@@ -21,6 +27,7 @@ import { messageOf } from "./domain/text.js";
21
27
  import { err, ok } from "./domain/result.js";
22
28
  import { sha256Hex } from "./domain/sha256.js";
23
29
  import { supportedPortal, withSubmissionId, wordCount, } from "./domain/submission.js";
30
+ import { droppedFields, parsePaperFields, } from "./domain/submission-fields.js";
24
31
  import { paperPreset, unusablePresetLine, } from "./presets.js";
25
32
  import { currentDeadlines } from "./domain/cycle.js";
26
33
  import { deadlinesInForce, readingText, } from "./domain/deadline.js";
@@ -60,37 +67,46 @@ export function tokenRefusedLines(portal, site, f) {
60
67
  : `${variable} was used; the site turned the request away — the token may lack a scope this subcommand needs`;
61
68
  return [why, ...tokenSteps(portal, site, variable)];
62
69
  }
63
- export const SUBCOMMANDS = ["new", "show", "update"];
70
+ export const SUBCOMMANDS = ["new", "show", "update", "topics"];
64
71
  const isSubcommand = (s) => SUBCOMMANDS.some((x) => x === s);
65
72
  const configOf = (dir) => join(dir, CONFIG_FILE);
66
73
  /** Why a paper without a venue preset has no portal: the key to set, or — with cycles — where. */
67
74
  const noPresetLine = (paperDir, settings) => settings === null || settings.cycles === null
68
75
  ? `${configOf(paperDir)}: no "extends" — the venue preset it names declares the portal ("portal": { "kind": …, "url": … })`
69
76
  : `${configOf(paperDir)}: the current cycle names no venue preset, and the preset is what declares the portal — set the venue in the current cycle ("venue": { "kind": "preset", "extends": "paperlint:…" }), or upload by hand`;
77
+ /** The paper's `fields`, checked against its venue preset's form, or the line naming what is wrong. */
78
+ function fieldsOf(paperDir, p) {
79
+ const fields = parsePaperFields(p.settings.fields, p.preset.submissionFields, p.preset.chain.join(", "));
80
+ return fields.ok ? fields : err(`${configOf(paperDir)}: ${fields.error}`);
81
+ }
82
+ /** The venue preset's portal, if it declares one that paperlint can talk to; else the line to act on. */
83
+ function portalOfPreset(p) {
84
+ const declared = p.preset.portal;
85
+ return declared === null
86
+ ? err(`the venue preset declares no "portal" (read: ${p.preset.chain.join(", ")}) — add "portal": { "kind": "hotcrp", "url": "<the site>" } to the venue's preset, or upload by hand`)
87
+ : supportedPortal(declared);
88
+ }
70
89
  /** A resolved paper → its portal and submission, or the line naming the file and key to set. */
71
90
  function targetOf(paperDir, p) {
72
- const declared = p.preset.portal;
73
- if (declared === null)
74
- return err(`the venue preset declares no "portal" (read: ${p.preset.chain.join(", ")}) — add "portal": { "kind": "hotcrp", "url": "<the site>" } to the venue's preset, or upload by hand`);
75
- const portal = supportedPortal(declared);
91
+ const portal = portalOfPreset(p);
76
92
  if (!portal.ok)
77
93
  return portal;
78
- const pdf = join(paperDir, p.settings.pdf ?? "paper.pdf");
79
94
  const identity = p.preset.identity;
80
- const call = identity.type === "venue" ? identity.url : null;
81
95
  const own = p.settings.cycles === null
82
96
  ? []
83
97
  : currentDeadlines(p.settings.cycles.current);
84
- const deadlines = deadlinesInForce(own, p.preset.deadlines);
85
98
  return ok({
86
99
  portal: portal.value,
87
100
  id: p.settings.submission?.id ?? null,
88
101
  config: configOf(paperDir),
89
102
  authors: p.settings.authors,
103
+ answers: fieldsOf(paperDir, p),
104
+ fields: {},
105
+ venueFields: p.preset.submissionFields,
90
106
  accepted: p.settings.cycles?.current.kind === "accepted",
91
- pdf,
92
- call,
93
- deadlines,
107
+ pdf: join(paperDir, p.settings.pdf ?? "paper.pdf"),
108
+ call: identity.type === "venue" ? identity.url : null,
109
+ deadlines: deadlinesInForce(own, p.preset.deadlines),
94
110
  });
95
111
  }
96
112
  /** The paper directory → its portal and submission, or the line naming the file and key to set. */
@@ -170,6 +186,16 @@ export function showLines(t, view, local) {
170
186
  * counts. Pure.
171
187
  */
172
188
  export const checkPdfLine = (shown, call) => `before you rely on it, open ${shown} yourself and check it against ${call === null ? "the venue's call for papers" : `the call for papers, ${call}`}: the page count and what counts toward the limit, the template and its class options, anonymity, and that every figure, table and reference renders — paperlint passing is not the venue accepting the format`;
189
+ /** The fields the paper sent, one line each, as the portal will get them. Pure. */
190
+ export const fieldLines = (fields) => Object.entries(fields).map(([key, value]) => `field ${key}: ${JSON.stringify(value)}`);
191
+ /** The checkbox fields the portal did not take, said; none when it took them all. Pure. */
192
+ export function droppedLines(fields, venue, o) {
193
+ const dropped = droppedFields(fields, venue, {
194
+ changes: o.changes,
195
+ messageFields: o.messages.map((m) => m.field),
196
+ });
197
+ return dropped.map((key) => `NOT TAKEN ${key}: the portal kept none of ${JSON.stringify(fields[key])} — an option it does not know is dropped without an error; \`paperlint submission topics\` lists what it offers`);
198
+ }
173
199
  /** `update`'s report. Pure. */
174
200
  export function updateLines(o, local, save) {
175
201
  const mode = save
@@ -189,6 +215,11 @@ export function updateLines(o, local, save) {
189
215
  const shownPath = (cwd, p) => p.startsWith(`${cwd}/`) ? p.slice(cwd.length + 1) : p;
190
216
  /** The file's bytes, or null when there is none. */
191
217
  const bytesAt = (files, p) => files.readBytes(absolutePath(p));
218
+ const logAll = (lines, deps) => {
219
+ lines.forEach((l) => {
220
+ deps.log(l);
221
+ });
222
+ };
192
223
  /** A failure printed — the portal's words, then what to do about the token if it was the token — exit 1. */
193
224
  function failed(f, deps) {
194
225
  [failureText(f), ...deps.refused(f)].forEach((l) => {
@@ -225,11 +256,12 @@ function abstractOf(a, deps) {
225
256
  ? err(`--abstract: no file at ${shownPath(deps.cwd, p)}`)
226
257
  : ok(new TextDecoder().decode(bytes).trim());
227
258
  }
228
- /** What `update` sends: the PDF's bytes, the abstract's text, and whether to mark it submitted. */
229
- const changeOf = (a, bytes, abstract) => ({
259
+ /** What `update` sends: the PDF's bytes, the abstract's text, whether to mark it submitted, the fields. */
260
+ const changeOf = (a, bytes, abstract, fields) => ({
230
261
  pdf: { name: basename(a.pdfPath), bytes },
231
262
  abstract,
232
263
  submit: a.submit,
264
+ fields,
233
265
  });
234
266
  /** `update`: send the PDF (and the abstract, and "submitted" when asked); a dry run unless saving. */
235
267
  async function runUpdate(t, portal, a, deps) {
@@ -241,18 +273,16 @@ async function runUpdate(t, portal, a, deps) {
241
273
  const abstract = abstractOf(a, deps);
242
274
  if (!abstract.ok)
243
275
  return (deps.err(abstract.error), 2);
244
- deps.log(checkPdfLine(shown, t.call));
245
- const r = await portal.update(t.id, changeOf(a, bytes, abstract.value), {
246
- save: a.save,
247
- });
276
+ logAll([checkPdfLine(shown, t.call), ...fieldLines(t.fields)], deps);
277
+ const change = changeOf(a, bytes, abstract.value, t.fields);
278
+ const r = await portal.update(t.id, change, { save: a.save });
248
279
  if (!r.ok)
249
280
  return failed(r.error, deps);
250
281
  const local = { shown, sha256: sha256Hex(bytes) };
251
- updateLines(r.value, local, a.save).forEach((l) => {
252
- deps.log(l);
253
- });
282
+ const dropped = droppedLines(t.fields, t.venueFields, r.value);
283
+ logAll([...updateLines(r.value, local, a.save), ...dropped], deps);
254
284
  const fine = r.value.valid && r.value.httpStatus >= 200 && r.value.httpStatus < 300;
255
- return fine ? 0 : 1;
285
+ return fine && dropped.length === 0 ? 0 : 1;
256
286
  }
257
287
  // ── new ──────────────────────────────────────────────────────────────────────────────
258
288
  /**
@@ -324,19 +354,23 @@ const noReadableTitle = (text) => text === ""
324
354
  ? `no \\title in ${MAIN}, and the PDF names no Title — add \\title{…}, or \\hypersetup{pdftitle={…}}, and rebuild`
325
355
  : `the \\title in ${MAIN} uses a command paperlint does not read («${text.replaceAll(OPAQUE, "…")}»), and the PDF names no Title — set \\hypersetup{pdftitle={<the title as plain text>}} and rebuild`;
326
356
  /** What `new` will send, as the author reads it before saying yes. Pure. */
327
- export function newLines(title, abstract, authors) {
357
+ export function newLines(p) {
328
358
  return [
329
- `title ${title}`,
330
- ...authors.map((a, i) => `author ${String(i + 1).padEnd(6)} ${a.name} <${a.email}>${a.affiliation === null ? "" : `, ${a.affiliation}`}`),
331
- `abstract ${String(wordCount(abstract))} words:`,
332
- ` ${abstract}`,
359
+ `title ${p.title}`,
360
+ ...p.authors.map((a, i) => `author ${String(i + 1).padEnd(6)} ${a.name} <${a.email}>${a.affiliation === null ? "" : `, ${a.affiliation}`}`),
361
+ `abstract ${String(wordCount(p.abstract))} words:`,
362
+ ` ${p.abstract}`,
363
+ ...fieldLines(p.fields),
333
364
  ];
334
365
  }
335
- /** What the author does on the site after `new`: what paperlint does not send. Pure. */
336
- export function onTheSiteLines(site, id, paperArg) {
366
+ /** What is left after `new`: the venue's fields the paper did not answer, what only the site takes, the submit. Pure. */
367
+ export function onTheSiteLines(site, t, id, paperArg) {
368
+ const sent = Object.keys(t.fields);
369
+ const unanswered = Object.keys(t.venueFields?.fields ?? {}).filter((k) => !sent.includes(k));
337
370
  return [
338
- `do on the site, ${site.submissionPage(id)} — paperlint sends only the title, the abstract, the authors and the PDF:`,
339
- ...site.siteOnly.map((f) => ` - ${f}`),
371
+ `still to do for ${site.submissionPage(id)} — paperlint sent the title, the abstract, the authors and the PDF${sent.length ? `, and ${sent.join(", ")}` : ""}:`,
372
+ ...unanswered.map((k) => ` - answer ${k} in the paper's paperlint.json "fields" (the venue preset records it), then: npx paperlint submission update ${paperArg} (a dry run; --save after your yes)`),
373
+ ...site.siteOnly.map((f) => ` - on the site: ${f}`),
340
374
  ` - then mark it submitted: npx paperlint submission update ${paperArg} --submit (a dry run; --save after your yes)`,
341
375
  ];
342
376
  }
@@ -436,6 +470,7 @@ function newSubmissionOf(t, a, deps) {
436
470
  ...text.value,
437
471
  authors: authors.value,
438
472
  pdf: { name: basename(a.pdfPath), bytes: pdf },
473
+ fields: t.fields,
439
474
  };
440
475
  return ok({ paper, shown });
441
476
  }
@@ -451,11 +486,12 @@ function recordCreated(t, id, paperArg, deps) {
451
486
  deps.log(`next npx paperlint submission show ${paperArg} — it should say "match yes"`);
452
487
  return 0;
453
488
  }
454
- const logAll = (lines, deps) => {
455
- lines.forEach((l) => {
456
- deps.log(l);
457
- });
458
- };
489
+ /** After a creation the portal took: what is still to do, and the id recorded when it saved one. */
490
+ function afterCreated(t, id, a, deps) {
491
+ const paperArg = a.paperDir === deps.cwd ? "." : shownPath(deps.cwd, a.paperDir);
492
+ logAll(onTheSiteLines(deps.portalSite, t, id, paperArg), deps);
493
+ return id === null ? 0 : recordCreated(t, id, paperArg, deps);
494
+ }
459
495
  /**
460
496
  * `new`: create the paper's submission — title and abstract from the build, the authors the paper
461
497
  * declares, the PDF. A dry run unless `--save`; after a save, the id goes into `paperlint.json`.
@@ -466,17 +502,68 @@ async function runNew(t, portal, a, deps) {
466
502
  return (deps.err(n.error), 2);
467
503
  const { paper, shown } = n.value;
468
504
  deps.log(checkPdfLine(shown, t.call));
469
- logAll(newLines(paper.title, paper.abstract, paper.authors), deps);
505
+ logAll(newLines(paper), deps);
470
506
  const r = await portal.create(paper, { save: a.save });
471
507
  if (!r.ok)
472
508
  return failed(r.error, deps);
473
- logAll(createLines(r.value, a.save), deps);
509
+ const dropped = droppedLines(t.fields, t.venueFields, r.value);
510
+ logAll([...createLines(r.value, a.save), ...dropped], deps);
474
511
  const fine = r.value.valid && r.value.httpStatus >= 200 && r.value.httpStatus < 300;
475
512
  if (!fine || (a.save && r.value.id === null))
476
513
  return 1;
477
- const paperArg = a.paperDir === deps.cwd ? "." : shownPath(deps.cwd, a.paperDir);
478
- logAll(onTheSiteLines(deps.portalSite, r.value.id, paperArg), deps);
479
- return r.value.id === null ? 0 : recordCreated(t, r.value.id, paperArg, deps);
514
+ const recorded = afterCreated(t, r.value.id, a, deps);
515
+ return dropped.length === 0 ? recorded : 1;
516
+ }
517
+ /** The subcommands that run before the paper has a submission id: `new` creates it, `topics` needs none. */
518
+ const NEEDS_NO_ID = ["new", "topics"];
519
+ /** The subcommands that send the paper's answers to the venue's fields. */
520
+ const SENDS_FIELDS = ["new", "update"];
521
+ /**
522
+ * What the subcommand needs before a token is looked up: the submission id (`show`, `update`) and
523
+ * the paper's checked answers (`new`, `update`) — or the line naming what to fix.
524
+ */
525
+ function readyFor(sub, t) {
526
+ const id = NEEDS_NO_ID.some((s) => s === sub) ? ok(null) : idOf(t);
527
+ if (!id.ok)
528
+ return id;
529
+ const fields = SENDS_FIELDS.some((s) => s === sub) ? t.answers : ok({});
530
+ return fields.ok ? ok({ id: id.value, fields: fields.value }) : fields;
531
+ }
532
+ /** The checkbox field the preset records the portal's topics under: the one named `topics`. */
533
+ const TOPICS = "topics";
534
+ /** `topics`' report: each topic the portal offers against the preset's options, and whether they agree. Pure. */
535
+ export function topicsReport(t, offered) {
536
+ const declared = t.venueFields?.fields[TOPICS];
537
+ const head = `topics on ${t.portal.url}: ${String(offered.length)}`;
538
+ if (t.venueFields === null || declared?.kind !== "checkboxes")
539
+ return {
540
+ lines: [
541
+ head,
542
+ ...offered.map((n) => ` ${n}`),
543
+ `the venue preset records no "submission_fields" with "topics" — record these, spelled as listed, before a paper can send any`,
544
+ ],
545
+ agrees: false,
546
+ };
547
+ const recorded = declared.options;
548
+ const extra = offered.filter((n) => !recorded.includes(n));
549
+ const missing = recorded.filter((n) => !offered.includes(n));
550
+ return {
551
+ lines: [
552
+ `${head}; the preset records ${String(recorded.length)} (read ${t.venueFields.read})`,
553
+ ...offered.map((n) => ` ${recorded.includes(n) ? "✓" : "+ not in the preset:"} ${n}`),
554
+ ...missing.map((n) => ` − in the preset, not offered: ${n}`),
555
+ ],
556
+ agrees: extra.length === 0 && missing.length === 0,
557
+ };
558
+ }
559
+ /** `topics`: what the portal offers, and whether the preset records the same — exit 1 when not. */
560
+ async function runTopics(t, portal, deps) {
561
+ const r = await portal.options();
562
+ if (!r.ok)
563
+ return failed(r.error, deps);
564
+ const report = topicsReport(t, r.value.topics);
565
+ logAll(report.lines, deps);
566
+ return report.agrees ? 0 : 1;
480
567
  }
481
568
  //** The flags that change something, as given. */
482
569
  const writingFlags = (a) => [
@@ -491,8 +578,8 @@ export function usageProblem(a) {
491
578
  if (a.extra.length > 0)
492
579
  return `\`submission ${a.sub}\` takes one paper folder — got also \`${a.extra.join(" ")}\``;
493
580
  const writing = writingFlags(a);
494
- if (a.sub === "show" && writing.length > 0)
495
- return `${writing.join(", ")}: only \`submission new\` and \`submission update\` change anything; \`show\` reads`;
581
+ if ((a.sub === "show" || a.sub === "topics") && writing.length > 0)
582
+ return `${writing.join(", ")}: only \`submission new\` and \`submission update\` change anything; \`${a.sub}\` reads`;
496
583
  return a.sub === "new" && a.submit
497
584
  ? "--submit: `submission new` creates the submission; mark it submitted with `submission update --submit` once `show` says the portal holds this build"
498
585
  : null;
@@ -518,9 +605,9 @@ export async function runSubmission(a, deps) {
518
605
  const t = submissionTarget(paperDir, deps.presets);
519
606
  if (!t.ok)
520
607
  return (deps.err(t.error), 2);
521
- const id = a.sub === "new" ? ok(null) : idOf(t.value);
522
- if (!id.ok)
523
- return (deps.err(id.error), 2);
608
+ const ready = readyFor(a.sub, t.value);
609
+ if (!ready.ok)
610
+ return (deps.err(ready.error), 2);
524
611
  const site = deps.site(t.value.portal);
525
612
  const found = lookUpToken(tokenNames(site), deps.env);
526
613
  if (!found.ok)
@@ -532,9 +619,12 @@ export async function runSubmission(a, deps) {
532
619
  portalSite: site,
533
620
  refused: (f) => tokenRefusedLines(t.value.portal, site, f),
534
621
  };
535
- if (id.value === null)
536
- return runNew(t.value, portal, { ...a, pdfPath, paperDir }, withToken);
537
- const target = { ...t.value, id: id.value };
622
+ const sending = { ...t.value, fields: ready.value.fields };
623
+ if (a.sub === "topics")
624
+ return runTopics(sending, portal, withToken);
625
+ if (ready.value.id === null)
626
+ return runNew(sending, portal, { ...a, pdfPath, paperDir }, withToken);
627
+ const target = { ...sending, id: ready.value.id };
538
628
  return a.sub === "show"
539
629
  ? runShow(target, portal, pdfPath, withToken)
540
630
  : runUpdate(target, portal, { ...a, pdfPath }, withToken);
@@ -1 +1 @@
1
- {"version":3,"file":"submission.js","sourceRoot":"","sources":["../src/submission.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"submission.js","sourceRoot":"","sources":["../src/submission.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import type { RegisterAnchor } from "./domain/register.ts";
3
3
  import { type VenueTalk } from "./domain/talk.ts";
4
4
  import type { VenuePortal } from "./domain/submission.ts";
5
5
  import type { Reading } from "./domain/deadline.ts";
6
+ import { type VenueFields } from "./domain/submission-fields.ts";
6
7
  /** CTAN package name → the names that prove it is installed. */
7
8
  export type PackageProofs = Readonly<Record<string, readonly string[]>>;
8
9
  export interface TexRequirements {
@@ -121,6 +122,8 @@ export interface PresetFile {
121
122
  readonly portal: VenuePortal | null;
122
123
  /** The edition's deadlines as they were read; null when the file names none (a child's list replaces its parent's). */
123
124
  readonly deadlines: readonly Reading[] | null;
125
+ /** The fields the edition's submission form asks, as read; null when the file records none. */
126
+ readonly submissionFields: VenueFields | null;
124
127
  }
125
128
  /** One ajv error, as far as the hints read it. */
126
129
  interface SchemaError {
@@ -1 +1 @@
1
- {"version":3,"file":"tex-requirements.d.ts","sourceRoot":"","sources":["../src/tex-requirements.ts"],"names":[],"mappings":"AA0BA,OAAO,GAAG,MAAM,KAAK,CAAC;AAItB,OAAO,KAAK,EAAE,cAAc,EAAuB,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAEL,KAAK,SAAS,EAEf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEpD,gEAAgE;AAChE,MAAM,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAC;AAExE,MAAM,WAAW,eAAe;IAC9B,wDAAwD;IACxD,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;IACjC,iFAAiF;IACjF,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;CAC/B;AAED,kGAAkG;AAClG,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,GAAG,EAAE,eAAe,CAAC;CAC/B;AAED,yFAAyF;AACzF,eAAO,MAAM,YAAY,mBAAmB,CAAC;AAC7C,eAAO,MAAM,WAAW,8BAA8B,CAAC;AAGvD,eAAO,MAAM,eAAe,EAAE,eAA6C,CAAC;AAE5E,gEAAgE;AAChE,KAAK,OAAO,GAAG,IAAI,CACjB,cAAc,YAAY,CAAC,EAC3B,2BAA2B,GAAG,8BAA8B,CAC7D,CAAC;AAMF,wGAAwG;AACxG,wBAAgB,cAAc,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,GAAG,OAAO,CAOrE;AASD,KAAK,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;AAiB/C;;;GAGG;AACH,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EACZ,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAC1B,MAAM,EAAE,CAIV;AAED,wGAAwG;AACxG,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,4EAA4E;IAC5E,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,qGAAqG;IACrG,QAAQ,CAAC,UAAU,EAAE,YAAY,GAAG,IAAI,CAAC;IACzC;;;OAGG;IACH,QAAQ,CAAC,cAAc,EAAE,OAAO,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;CACjD;AAED,sFAAsF;AACtF,eAAO,MAAM,SAAS,EAAE,WAavB,CAAC;AAEF,wFAAwF;AACxF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,+DAA+D;IAC/D,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC;AAED;;;;GAIG;AACH,MAAM,MAAM,cAAc,GACtB;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GACvE;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,GAC3B;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAE9B,4DAA4D;AAC5D,MAAM,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;AAEhD;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,uEAAuE;IACvE,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,uGAAuG;IACvG,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,6FAA6F;IAC7F,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5C,uFAAuF;IACvF,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,+EAA+E;IAC/E,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;IAC/B,oGAAoG;IACpG,QAAQ,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI,CAAC;IACtC,yGAAyG;IACzG,QAAQ,CAAC,gBAAgB,EAAE,SAAS,eAAe,EAAE,GAAG,IAAI,CAAC;IAC7D,gFAAgF;IAChF,QAAQ,CAAC,GAAG,EAAE,eAAe,GAAG,IAAI,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,yFAAyF;IACzF,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAClD;;;OAGG;IACH,QAAQ,CAAC,eAAe,EAAE,SAAS,cAAc,EAAE,GAAG,IAAI,CAAC;IAC3D,uFAAuF;IACvF,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI,CAAC;IAChC,mGAAmG;IACnG,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IACpC,uHAAuH;IACvH,QAAQ,CAAC,SAAS,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI,CAAC;CAC/C;AA0GD,kDAAkD;AAClD,UAAU,WAAW;IACnB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI,CAW1D;AAED,2FAA2F;AAC3F,eAAO,MAAM,aAAa,GACxB,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,KACpC,SAAS,MAAM,EAIjB,CAAC;AAgEF;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,GAAG,GAAE,MAAqB,GACzB,UAAU,CAyBZ;AAED,qGAAqG;AACrG,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,GAAG,GAAE,MAAqB,GACzB,eAAe,CAEjB;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAM1D;AAMD,4FAA4F;AAC5F,wBAAgB,UAAU,CAAC,GAAG,GAAE,MAAqB,GAAG,MAAM,EAAE,CAK/D;AAED,mGAAmG;AACnG,wBAAgB,iBAAiB,CAC/B,CAAC,EAAE,eAAe,EAClB,CAAC,EAAE,eAAe,GACjB,eAAe,CAWjB;AAED,yFAAyF;AACzF,wBAAgB,YAAY,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,EAAE,CAI3D;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,eAAe,CAAA;CAAE,GAAG,IAAI,EACxE,GAAG,GAAE,MAAqB,GACzB,iBAAiB,CAWnB;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,GAAG,GAAE,MAAqB,EAC1B,KAAK,GAAE,SAAS,eAAe,EAAO,GACrC;IACD,QAAQ,CAAC,GAAG,EAAE,eAAe,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B,CAUA"}
1
+ {"version":3,"file":"tex-requirements.d.ts","sourceRoot":"","sources":["../src/tex-requirements.ts"],"names":[],"mappings":"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"}