gutterpress 0.11.22-alpha.1 → 0.11.22-alpha.2

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 (44) hide show
  1. package/dist/api/index.js +6 -6
  2. package/dist/{build-se85j9ec.js → build-84retk4k.js} +9 -9
  3. package/dist/{cli-sth219v1.js → cli-2ppw6q9v.js} +26 -6
  4. package/dist/{cli-gc9av5hs.js → cli-3twpesca.js} +1 -1
  5. package/dist/{cli-9vy4b6ec.js → cli-5et23z83.js} +4 -4
  6. package/dist/{cli-yejbb9f8.js → cli-5qhjwne5.js} +1 -1
  7. package/dist/{cli-5553w972.js → cli-80t93x2r.js} +1 -1
  8. package/dist/{cli-fbwqv7p4.js → cli-885pcze8.js} +173 -61
  9. package/dist/{cli-8hccw62p.js → cli-9pk65fqf.js} +2 -2
  10. package/dist/{cli-gmm3bdeq.js → cli-hndkg7bn.js} +2 -2
  11. package/dist/{cli-pfrg1r9x.js → cli-pn3z0y9p.js} +1 -1
  12. package/dist/cli.js +12 -12
  13. package/dist/{doctor-bv2t82zd.js → doctor-fmzpg7ag.js} +3 -3
  14. package/dist/engine/shared/print-area.d.ts +77 -1
  15. package/dist/{engine-h4ehmrvf.js → engine-5p8tn9b4.js} +2 -2
  16. package/dist/{engine-qwkyhrej.js → engine-9710cd7x.js} +3 -3
  17. package/dist/{ext-a8ndp142.js → ext-hsdnad5c.js} +9 -9
  18. package/dist/{extension-restore-926mv2qk.js → extension-restore-05pae3cp.js} +3 -3
  19. package/dist/{extension-restore-q1f7njec.js → extension-restore-3r7phztr.js} +5 -5
  20. package/dist/{gutterpress-viewer-w7njnkj7.js → gutterpress-viewer-w9jzx6sb.js} +56 -52
  21. package/dist/{index-gmfh6n05.js → index-2d8j0enc.js} +2 -2
  22. package/dist/{index-sth219v1.js → index-2ppw6q9v.js} +26 -6
  23. package/dist/{index-tkjvs1gf.js → index-3wcr69ba.js} +162 -58
  24. package/dist/{index-5h9a38jn.js → index-apc8w9w8.js} +55 -55
  25. package/dist/{index-dm7hx46j.js → index-ew7cyk7c.js} +3 -3
  26. package/dist/{index-dhknsvfz.js → index-jsz0s3dy.js} +2 -2
  27. package/dist/{index-38e18a7j.js → index-kx03e4m4.js} +1 -1
  28. package/dist/index.js +7 -7
  29. package/dist/lib/markdown/assemble.d.ts +3 -2
  30. package/dist/lib/page-size.d.ts +3 -4
  31. package/dist/lib/pdf-inspect.d.ts +12 -0
  32. package/dist/lib/project-scaffold.d.ts +3 -3
  33. package/dist/{manifest.schema-n292sb77.json → manifest.schema-nvawq0xv.json} +2 -2
  34. package/dist/{new-nadp2hvb.js → new-fqtt022k.js} +9 -9
  35. package/dist/{pdf-inspect-zdmy7qca.js → pdf-inspect-wnw4za71.js} +1 -1
  36. package/dist/{plugins-yeh4shd7.js → plugins-gfvsgnxb.js} +1 -1
  37. package/dist/{plugins-gy4q9vaa.js → plugins-nfxr831f.js} +3 -3
  38. package/dist/{preflight-c6q25xqa.js → preflight-gr9mscjw.js} +9 -9
  39. package/dist/{preview-y8chv4cb.js → preview-52w9pdps.js} +9 -9
  40. package/dist/{publish-3qwvxsxa.js → publish-esmcyhpb.js} +9 -9
  41. package/dist/render.js +586 -0
  42. package/dist/schema/manifest.types.d.ts +8 -3
  43. package/dist/{validate-w108kk87.js → validate-vt1d7h6k.js} +9 -9
  44. package/package.json +1 -1
@@ -122,6 +122,18 @@ export interface ImageRef {
122
122
  */
123
123
  x: number;
124
124
  y: number;
125
+ /**
126
+ * The drawn rect in points, y up from the sheet's bottom: the unit square
127
+ * under the CTM as its axis-aligned bounds, so it holds for an image drawn
128
+ * flipped or rotated where `x`/`y`/`placedW`/`placedH` do not. The
129
+ * `pdf.print.safe-margins` check judges it against the art rule.
130
+ */
131
+ bounds: {
132
+ x: number;
133
+ y: number;
134
+ w: number;
135
+ h: number;
136
+ };
125
137
  /** 1-based page number. */
126
138
  page: number;
127
139
  }
@@ -64,9 +64,9 @@ export interface CreateProjectOptions {
64
64
  /**
65
65
  * Page geometry written into the generated manifest (points; 72pt = 1in).
66
66
  * REQUIRED when `preset` is `"custom"` (it has no built-in trim); allowed
67
- * with any preset to override its trim. These are the validation bounds
68
- * the built PDF is checked against — the actual trim comes from the
69
- * stylesheet's `@page` rule, and the two should match.
67
+ * with any preset to override its trim. This is the size the book prints
68
+ * at, unless a stylesheet sets its own plain `@page { size }` (#415), and
69
+ * the size the built PDF is checked against — so the two should match.
70
70
  */
71
71
  customPage?: CustomPageOptions;
72
72
  /** Version-history mode for the new project. Defaults to `"local-git"`. */
@@ -234,13 +234,13 @@
234
234
  },
235
235
  "artSafe": {
236
236
  "type": "number",
237
- "description": "The ART rule, in points: how far inside the trim art that does not bleed (images, backgrounds, borders, rules) must stay on the top, bottom and OUTER edge; at the binding edge art uses `gutter`. For DriveThruRPG it is the \"non-bleeding art at least 0.25in from the outside edges (0.5in at the binding)\" rule. Art that runs out to the page's edge is a bleed and is not judged on that edge. The preview's overlay outlines it (dotted) and flags art outside it, and an image pinned to the top, bottom or outer edge (`.gp-pin`) sits on it unless it carries `.gp-flush`. Absent = the same as `safe`. Preset default: dtrpg 18 (0.25in); book and custom none.",
237
+ "description": "The ART rule, in points: how far inside the trim art that does not bleed (images, backgrounds, borders, rules) must stay on the top, bottom and OUTER edge; at the binding edge art uses `gutter`. For DriveThruRPG it is the \"non-bleeding art at least 0.25in from the outside edges (0.5in at the binding)\" rule. Art that runs out to the page's edge is a bleed and is not judged on that edge. The preview's overlay outlines it (dotted) and flags art outside it, the `pdf.print.safe-margins` check fails a PDF with an image closer (or one that stops in the bleed band), and an image pinned to the top, bottom or outer edge (`.gp-pin`) sits on it unless it carries `.gp-flush`. Absent = the same as `safe`. Preset default: dtrpg 18 (0.25in); book and custom none.",
238
238
  "minimum": 0,
239
239
  "examples": [18]
240
240
  },
241
241
  "gutter": {
242
242
  "type": "number",
243
- "description": "The binding allowance, in points: how far content stays from the spine, measured from the trim at the binding edge (the left edge of a right-hand page, the right edge of a left-hand one). It stands in for `safe` there, for text and for art alike: the preview's overlay draws and judges that edge against it, the `pdf.print.safe-margins` check fails text closer to the spine than it, and an image pinned to the binding edge (`.gp-pin`) sits on it. The other edges keep `safe` and `artSafe`. Use it when your book keeps its text further from the spine than the printer's minimum: the Field Guide keeps 0.75in (54) where DriveThruRPG asks for 0.5in. Absent = the same as `safe`. Presets leave it unset.",
243
+ "description": "The binding allowance, in points: how far content stays from the spine, measured from the trim at the binding edge (the left edge of a right-hand page, the right edge of a left-hand one). It stands in for `safe` there, for text and for art alike: the preview's overlay draws and judges that edge against it, the `pdf.print.safe-margins` check fails text or an image closer to the spine than it, and an image pinned to the binding edge (`.gp-pin`) sits on it. The other edges keep `safe` and `artSafe`. Use it when your book keeps its text further from the spine than the printer's minimum: the Field Guide keeps 0.75in (54) where DriveThruRPG asks for 0.5in. Absent = the same as `safe`. Preset default: dtrpg 36 (0.5in, DriveThruRPG's rule for text and non-bleeding art at the binding — the same as its `safe`, declared so a book inherits it visibly); book and custom none.",
244
244
  "minimum": 0,
245
245
  "examples": [54]
246
246
  }
@@ -3,13 +3,13 @@ import {
3
3
  EXTENSION_KINDS,
4
4
  scaffoldExtension,
5
5
  scaffoldProject
6
- } from "./cli-fbwqv7p4.js";
6
+ } from "./cli-885pcze8.js";
7
7
  import {
8
8
  resolveGhostscript
9
- } from "./cli-yejbb9f8.js";
9
+ } from "./cli-5qhjwne5.js";
10
10
  import"./cli-ht1bcqdd.js";
11
- import"./cli-8hccw62p.js";
12
- import"./cli-sth219v1.js";
11
+ import"./cli-9pk65fqf.js";
12
+ import"./cli-2ppw6q9v.js";
13
13
  import"./cli-eyyggect.js";
14
14
  import {
15
15
  isToolAvailable
@@ -21,16 +21,16 @@ import {
21
21
  PRESET_IDS,
22
22
  TARGETS,
23
23
  TARGET_IDS
24
- } from "./cli-9vy4b6ec.js";
25
- import"./cli-pfrg1r9x.js";
26
- import"./cli-5553w972.js";
24
+ } from "./cli-5et23z83.js";
25
+ import"./cli-pn3z0y9p.js";
26
+ import"./cli-80t93x2r.js";
27
27
  import {
28
28
  UsageError,
29
29
  rejectExtraPositionals,
30
30
  rejectUnknownFlags
31
31
  } from "./cli-d8xjns66.js";
32
- import"./cli-gc9av5hs.js";
33
- import"./cli-gmm3bdeq.js";
32
+ import"./cli-3twpesca.js";
33
+ import"./cli-hndkg7bn.js";
34
34
  import {
35
35
  EXIT_CODES
36
36
  } from "./cli-46ycxe6r.js";
@@ -14,7 +14,7 @@ import {
14
14
  pendingGraceDestroyCount,
15
15
  retainPdfCache,
16
16
  unsplittableTextReasons
17
- } from "./cli-sth219v1.js";
17
+ } from "./cli-2ppw6q9v.js";
18
18
  import"./cli-37x76zdn.js";
19
19
  export {
20
20
  unsplittableTextReasons,
@@ -8,7 +8,7 @@ import {
8
8
  loadPlugins,
9
9
  loadPluginsWithCss,
10
10
  loadPublishFunction
11
- } from "./index-38e18a7j.js";
11
+ } from "./index-kx03e4m4.js";
12
12
  import"./index-r7jcsk6h.js";
13
13
  import"./index-37x76zdn.js";
14
14
  export {
@@ -8,9 +8,9 @@ import {
8
8
  loadPlugins,
9
9
  loadPluginsWithCss,
10
10
  loadPublishFunction
11
- } from "./cli-pfrg1r9x.js";
12
- import"./cli-5553w972.js";
13
- import"./cli-gc9av5hs.js";
11
+ } from "./cli-pn3z0y9p.js";
12
+ import"./cli-80t93x2r.js";
13
+ import"./cli-3twpesca.js";
14
14
  import"./cli-h3phdstf.js";
15
15
  import"./cli-37x76zdn.js";
16
16
  export {
@@ -1,29 +1,29 @@
1
1
  import {
2
2
  executeValidation,
3
3
  reportMissingTools
4
- } from "./cli-fbwqv7p4.js";
5
- import"./cli-yejbb9f8.js";
4
+ } from "./cli-885pcze8.js";
5
+ import"./cli-5qhjwne5.js";
6
6
  import"./cli-ht1bcqdd.js";
7
- import"./cli-8hccw62p.js";
8
- import"./cli-sth219v1.js";
7
+ import"./cli-9pk65fqf.js";
8
+ import"./cli-2ppw6q9v.js";
9
9
  import"./cli-eyyggect.js";
10
10
  import"./cli-asap4t1z.js";
11
11
  import"./cli-habkc5ng.js";
12
12
  import"./cli-v5mp7a6q.js";
13
13
  import {
14
14
  publishTargetFor
15
- } from "./cli-9vy4b6ec.js";
16
- import"./cli-pfrg1r9x.js";
15
+ } from "./cli-5et23z83.js";
16
+ import"./cli-pn3z0y9p.js";
17
17
  import {
18
18
  log
19
- } from "./cli-5553w972.js";
19
+ } from "./cli-80t93x2r.js";
20
20
  import {
21
21
  UsageError,
22
22
  rejectExtraPositionals,
23
23
  rejectUnknownFlags
24
24
  } from "./cli-d8xjns66.js";
25
- import"./cli-gc9av5hs.js";
26
- import"./cli-gmm3bdeq.js";
25
+ import"./cli-3twpesca.js";
26
+ import"./cli-hndkg7bn.js";
27
27
  import {
28
28
  BuildError,
29
29
  EXIT_CODES
@@ -3,23 +3,23 @@ import {
3
3
  runBuild,
4
4
  splitOutPath,
5
5
  startPreviewServer
6
- } from "./cli-fbwqv7p4.js";
7
- import"./cli-yejbb9f8.js";
6
+ } from "./cli-885pcze8.js";
7
+ import"./cli-5qhjwne5.js";
8
8
  import {
9
9
  previewArgs
10
10
  } from "./cli-75qkn0k5.js";
11
11
  import"./cli-ht1bcqdd.js";
12
- import"./cli-8hccw62p.js";
13
- import"./cli-sth219v1.js";
12
+ import"./cli-9pk65fqf.js";
13
+ import"./cli-2ppw6q9v.js";
14
14
  import"./cli-eyyggect.js";
15
15
  import"./cli-asap4t1z.js";
16
16
  import"./cli-habkc5ng.js";
17
17
  import"./cli-v5mp7a6q.js";
18
- import"./cli-9vy4b6ec.js";
19
- import"./cli-pfrg1r9x.js";
18
+ import"./cli-5et23z83.js";
19
+ import"./cli-pn3z0y9p.js";
20
20
  import {
21
21
  log
22
- } from "./cli-5553w972.js";
22
+ } from "./cli-80t93x2r.js";
23
23
  import {
24
24
  UsageError,
25
25
  parseFormat,
@@ -28,8 +28,8 @@ import {
28
28
  rejectUnknownFlags,
29
29
  resolvePort
30
30
  } from "./cli-d8xjns66.js";
31
- import"./cli-gc9av5hs.js";
32
- import"./cli-gmm3bdeq.js";
31
+ import"./cli-3twpesca.js";
32
+ import"./cli-hndkg7bn.js";
33
33
  import {
34
34
  BuildError
35
35
  } from "./cli-46ycxe6r.js";
@@ -10,31 +10,31 @@ import {
10
10
  resolvePublishFormat,
11
11
  resolvePublishProvider,
12
12
  runPublish
13
- } from "./cli-fbwqv7p4.js";
13
+ } from "./cli-885pcze8.js";
14
14
  import {
15
15
  FileTokenStore
16
- } from "./cli-yejbb9f8.js";
16
+ } from "./cli-5qhjwne5.js";
17
17
  import"./cli-ht1bcqdd.js";
18
- import"./cli-8hccw62p.js";
19
- import"./cli-sth219v1.js";
18
+ import"./cli-9pk65fqf.js";
19
+ import"./cli-2ppw6q9v.js";
20
20
  import"./cli-eyyggect.js";
21
21
  import"./cli-asap4t1z.js";
22
22
  import"./cli-habkc5ng.js";
23
23
  import"./cli-v5mp7a6q.js";
24
24
  import {
25
25
  loadManifestWithPath
26
- } from "./cli-9vy4b6ec.js";
27
- import"./cli-pfrg1r9x.js";
26
+ } from "./cli-5et23z83.js";
27
+ import"./cli-pn3z0y9p.js";
28
28
  import {
29
29
  log
30
- } from "./cli-5553w972.js";
30
+ } from "./cli-80t93x2r.js";
31
31
  import {
32
32
  UsageError,
33
33
  rejectExtraPositionals,
34
34
  rejectUnknownFlags
35
35
  } from "./cli-d8xjns66.js";
36
- import"./cli-gc9av5hs.js";
37
- import"./cli-gmm3bdeq.js";
36
+ import"./cli-3twpesca.js";
37
+ import"./cli-hndkg7bn.js";
38
38
  import {
39
39
  BuildError,
40
40
  EXIT_CODES