@heroiclands/package-build 22.14.4 → 22.15.1

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 (60) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/CONTENT.md +25 -1
  3. package/bin/content-build.mjs +3 -7
  4. package/bin/package-build.mjs +25 -0
  5. package/docs/api.md +61 -34
  6. package/docs/commands.md +65 -9
  7. package/docs/configuration.md +6 -3
  8. package/docs/content-format.md +165 -121
  9. package/docs/diagnostics.md +1 -1
  10. package/docs/getting-started.md +23 -0
  11. package/engine/base-compiler.mjs +3 -1
  12. package/engine/being-age.mjs +16 -24
  13. package/engine/calendar-artifacts.mjs +153 -0
  14. package/engine/calendar-notes.mjs +64 -16
  15. package/engine/calendars.mjs +129 -0
  16. package/engine/content-index.mjs +3 -1
  17. package/engine/exported-scene.mjs +230 -0
  18. package/engine/generate.mjs +1 -0
  19. package/engine/ids.mjs +1 -1
  20. package/engine/index.mjs +6 -0
  21. package/engine/infobox.mjs +4 -0
  22. package/engine/itinerary-scenes.mjs +172 -0
  23. package/engine/map-build.mjs +10 -45
  24. package/engine/map-dot.mjs +6 -3
  25. package/engine/map-graphviz.mjs +50 -131
  26. package/engine/map-notes.mjs +26 -3
  27. package/engine/map-places.mjs +12 -6
  28. package/engine/map-raster.mjs +51 -0
  29. package/engine/note-dates.mjs +125 -85
  30. package/engine/note-vocabulary.mjs +22 -6
  31. package/engine/pdf-build.mjs +57 -1
  32. package/engine/pdf-render.mjs +18 -0
  33. package/engine/reckoning-markers.mjs +207 -0
  34. package/engine/scenes.mjs +113 -26
  35. package/engine/site-build.mjs +11 -13
  36. package/engine/site-maps.mjs +5 -35
  37. package/engine/site-preview.mjs +6 -1
  38. package/engine/social-tie-terms.mjs +3 -0
  39. package/engine/social-ties.mjs +30 -19
  40. package/package.json +3 -1
  41. package/types/engine/being-age.d.mts +2 -2
  42. package/types/engine/calendar-artifacts.d.mts +16 -0
  43. package/types/engine/calendar-notes.d.mts +1 -1
  44. package/types/engine/calendars.d.mts +65 -0
  45. package/types/engine/exported-scene.d.mts +12 -0
  46. package/types/engine/index.d.mts +2 -0
  47. package/types/engine/itinerary-scenes.d.mts +29 -0
  48. package/types/engine/map-build.d.mts +4 -13
  49. package/types/engine/map-graphviz.d.mts +17 -59
  50. package/types/engine/map-places.d.mts +5 -1
  51. package/types/engine/map-raster.d.mts +8 -0
  52. package/types/engine/note-dates.d.mts +6 -0
  53. package/types/engine/note-vocabulary.d.mts +3 -3
  54. package/types/engine/pdf-render.d.mts +7 -1
  55. package/types/engine/reckoning-markers.d.mts +27 -0
  56. package/types/engine/scenes.d.mts +9 -2
  57. package/types/engine/site-build.d.mts +1 -5
  58. package/types/engine/site-maps.d.mts +2 -7
  59. package/types/engine/social-tie-terms.d.mts +2 -0
  60. package/types/engine/social-ties.d.mts +2 -1
@@ -23,7 +23,7 @@ export function collectKnownActionNames(repoRoot: string): Set<string>;
23
23
  * scene's id-based references resolve on import.
24
24
  */
25
25
  export class Scenes extends BasePackCompiler {
26
- constructor({ contentBase, assetsBase, dest, skipDirectories, companionDests, folderResolver, repoRoot, }: {
26
+ constructor({ contentBase, assetsBase, dest, skipDirectories, companionDests, folderResolver, repoRoot, config, packName, bundleSourceDirs, corpus, }: {
27
27
  contentBase: any;
28
28
  assetsBase: any;
29
29
  dest: any;
@@ -31,6 +31,10 @@ export class Scenes extends BasePackCompiler {
31
31
  companionDests?: {} | undefined;
32
32
  folderResolver?: (() => null) | undefined;
33
33
  repoRoot?: string | undefined;
34
+ config: any;
35
+ packName: any;
36
+ bundleSourceDirs?: {} | undefined;
37
+ corpus: any;
34
38
  });
35
39
  /** @type {string} */
36
40
  adventureDir: string;
@@ -40,6 +44,9 @@ export class Scenes extends BasePackCompiler {
40
44
  * @type {number}
41
45
  */
42
46
  adventureCount: number;
47
+ mapConfig: any;
48
+ packName: any;
49
+ journalSourceDirs: any;
43
50
  index: Map<string, object> | undefined;
44
51
  effectsByAddress: Map<string, object> | undefined;
45
52
  knownActions: Set<string> | undefined;
@@ -51,7 +58,7 @@ export class Scenes extends BasePackCompiler {
51
58
  *
52
59
  * @returns {Promise<void>}
53
60
  */
54
- finish(): Promise<void>;
61
+ finish(stats: any): Promise<void>;
55
62
  /** @inheritdoc */
56
63
  reportCompiled(stats: any): void;
57
64
  #private;
@@ -338,18 +338,14 @@ export function sitePageDecorator(config: any, index: any): (data: any, page: an
338
338
  * {@link module:engine/sql-tables.prepareSqlTables}. A page authoring an
339
339
  * `sql` directive with none prepared is a table error: nothing here runs a
340
340
  * query.
341
- * @param {(engine: string) => string|undefined} [options.locate] - How a
342
- * GraphViz engine's binary is found, for the maps; the real lookup by
343
- * default.
344
341
  * @returns {{gates: object, stats: object|null, tableErrors: object[],
345
342
  * wikiErrors: object[], imageErrors: object[], mapFindings: object[],
346
343
  * manifests: object|null}} `mapFindings` is what drawing the maps found —
347
344
  * warnings, never a reason to fail the build.
348
345
  */
349
- export function buildSite({ config, sqlTables, locate }?: {
346
+ export function buildSite({ config, sqlTables }?: {
350
347
  config?: object | undefined;
351
348
  sqlTables?: Map<string, object[]> | undefined;
352
- locate?: ((engine: string) => string | undefined) | undefined;
353
349
  }): {
354
350
  gates: object;
355
351
  stats: object | null;
@@ -34,21 +34,16 @@ export function inlineSvg(svg: string): string;
34
34
  * @param {object} opts.config - The resolved configuration.
35
35
  * @param {string} opts.base - The site base every page is served under,
36
36
  * ending in a slash: what every name in a drawing links through.
37
- * @param {(engine: string) => string|undefined} [opts.locate] - How the
38
- * engine's binary is found; the real lookup by default.
39
37
  * @returns {{maps: Map<string, SiteMap>, findings: Array<{file: string,
40
38
  * line?: number, column?: number, severity: "error"|"warning",
41
39
  * message: string}>}} The drawings, keyed by the URL of the page each
42
- * belongs to, and what the drawing found — one warning naming what to
43
- * install when GraphViz is absent, and a warning for each relation that
44
- * names no place.
40
+ * belongs to, and warnings for relations that name no place.
45
41
  */
46
- export function drawSiteMaps({ records, foreignIndex, config, base, locate }: {
42
+ export function drawSiteMaps({ records, foreignIndex, config, base }: {
47
43
  records: Array<Record<string, any>>;
48
44
  foreignIndex: Map<string, object>;
49
45
  config: object;
50
46
  base: string;
51
- locate?: ((engine: string) => string | undefined) | undefined;
52
47
  }): {
53
48
  maps: Map<string, SiteMap>;
54
49
  findings: Array<{
@@ -3,3 +3,5 @@ export const SOCIAL_TIES: readonly {
3
3
  term: string;
4
4
  meaning: string;
5
5
  }[];
6
+ /** The note types a being can name as a social tie. */
7
+ export const SOCIAL_TIE_TARGET_TYPES: readonly string[];
@@ -6,5 +6,6 @@ export function checkSocialTies(note: any, { index }?: {}): {
6
6
  column?: number;
7
7
  file: any;
8
8
  }[];
9
- export { SOCIAL_TIES };
10
9
  import { SOCIAL_TIES } from "./social-tie-terms.mjs";
10
+ import { SOCIAL_TIE_TARGET_TYPES } from "./social-tie-terms.mjs";
11
+ export { SOCIAL_TIES, SOCIAL_TIE_TARGET_TYPES };