gutterpress 0.0.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 (230) hide show
  1. package/README.md +422 -0
  2. package/dist/CGATS21_CRPC1-g0e3k7kr.icc +0 -0
  3. package/dist/api/index.d.ts +76 -0
  4. package/dist/api/index.js +272 -0
  5. package/dist/assets/preview/scripts/pagedjs-bridge.d.ts +1 -0
  6. package/dist/assets/preview/scripts/pagedjs-interface.d.ts +1 -0
  7. package/dist/assets/preview/scripts/preview-shell.d.ts +1 -0
  8. package/dist/audit-1jrwwacz.js +66 -0
  9. package/dist/build-5s92kgpc.js +77 -0
  10. package/dist/chapter-01-6fn9pvd0.md +31 -0
  11. package/dist/chapter-01-7jwqg1ct.md +20 -0
  12. package/dist/chapter-01-jj8ftn4c.md +29 -0
  13. package/dist/chapter-01-rkpyvjna.md +26 -0
  14. package/dist/checks/asset/approved-fonts.d.ts +3 -0
  15. package/dist/checks/asset/extensions.d.ts +41 -0
  16. package/dist/checks/asset/font-license.d.ts +3 -0
  17. package/dist/checks/asset/image-alpha.d.ts +3 -0
  18. package/dist/checks/asset/image-color-space.d.ts +3 -0
  19. package/dist/checks/asset/image-file-size.d.ts +3 -0
  20. package/dist/checks/asset/image-resolution.d.ts +3 -0
  21. package/dist/checks/asset/image-tac.d.ts +3 -0
  22. package/dist/checks/asset/index.d.ts +7 -0
  23. package/dist/checks/formatter.d.ts +3 -0
  24. package/dist/checks/heuristic/index.d.ts +4 -0
  25. package/dist/checks/heuristic/layer-count.d.ts +3 -0
  26. package/dist/checks/heuristic/placement-variance.d.ts +3 -0
  27. package/dist/checks/heuristic/section-density.d.ts +3 -0
  28. package/dist/checks/heuristic/text-density.d.ts +3 -0
  29. package/dist/checks/pdf/bleed.d.ts +3 -0
  30. package/dist/checks/pdf/bookmarks.d.ts +3 -0
  31. package/dist/checks/pdf/color-spaces.d.ts +3 -0
  32. package/dist/checks/pdf/cross-refs.d.ts +3 -0
  33. package/dist/checks/pdf/embedded-fonts.d.ts +3 -0
  34. package/dist/checks/pdf/image-resolution.d.ts +3 -0
  35. package/dist/checks/pdf/index.d.ts +15 -0
  36. package/dist/checks/pdf/ink-coverage.d.ts +3 -0
  37. package/dist/checks/pdf/page-labels.d.ts +3 -0
  38. package/dist/checks/pdf/page-size.d.ts +3 -0
  39. package/dist/checks/pdf/pdfx-markers.d.ts +3 -0
  40. package/dist/checks/pdf/pdfx-metadata.d.ts +3 -0
  41. package/dist/checks/pdf/pdfx-structure.d.ts +6 -0
  42. package/dist/checks/pdf/qpdf-structure.d.ts +3 -0
  43. package/dist/checks/pdf/rasterized-pages.d.ts +3 -0
  44. package/dist/checks/pdf/toc-links.d.ts +3 -0
  45. package/dist/checks/pdf/transparency.d.ts +3 -0
  46. package/dist/checks/policy.d.ts +61 -0
  47. package/dist/checks/register-builtins.d.ts +17 -0
  48. package/dist/checks/registry.d.ts +40 -0
  49. package/dist/checks/runner.d.ts +25 -0
  50. package/dist/checks/source/accessibility-alt-text.d.ts +3 -0
  51. package/dist/checks/source/accessibility-heading-order.d.ts +3 -0
  52. package/dist/checks/source/config-file.d.ts +8 -0
  53. package/dist/checks/source/htmlhint.d.ts +3 -0
  54. package/dist/checks/source/index.d.ts +6 -0
  55. package/dist/checks/source/local-refs.d.ts +3 -0
  56. package/dist/checks/source/markdownlint.d.ts +3 -0
  57. package/dist/checks/source/stylelint.d.ts +3 -0
  58. package/dist/checks/tool-check.d.ts +23 -0
  59. package/dist/checks/types.d.ts +52 -0
  60. package/dist/cli-1tyj4bk3.js +124 -0
  61. package/dist/cli-37x76zdn.js +4 -0
  62. package/dist/cli-506tg37g.js +26 -0
  63. package/dist/cli-5bxx0c4y.js +464 -0
  64. package/dist/cli-7ykx7pp0.js +12378 -0
  65. package/dist/cli-h7phg3ka.js +746 -0
  66. package/dist/cli-hvqjs342.js +284 -0
  67. package/dist/cli-yja077f6.js +92 -0
  68. package/dist/cli.js +157 -0
  69. package/dist/constants.d.ts +17 -0
  70. package/dist/doctor-25zjt8dz.js +57 -0
  71. package/dist/favicon-wkbm9cjn.ico +0 -0
  72. package/dist/git-http-yrb4ag6z.js +17 -0
  73. package/dist/index-1tyj4bk3.js +124 -0
  74. package/dist/index-37x76zdn.js +4 -0
  75. package/dist/index-3h3fef7r.js +15218 -0
  76. package/dist/index-5bxx0c4y.js +464 -0
  77. package/dist/index-yja077f6.js +92 -0
  78. package/dist/index.d.ts +32 -0
  79. package/dist/index.js +310 -0
  80. package/dist/lib/app-heartbeat.d.ts +102 -0
  81. package/dist/lib/asset-inline.d.ts +73 -0
  82. package/dist/lib/browser-pool.d.ts +17 -0
  83. package/dist/lib/build-error.d.ts +52 -0
  84. package/dist/lib/build-fingerprint.d.ts +15 -0
  85. package/dist/lib/build-preflight.d.ts +43 -0
  86. package/dist/lib/build-runner.d.ts +161 -0
  87. package/dist/lib/build-staging.d.ts +64 -0
  88. package/dist/lib/chromium.d.ts +20 -0
  89. package/dist/lib/cli-args.d.ts +45 -0
  90. package/dist/lib/desktop.d.ts +14 -0
  91. package/dist/lib/diagnostics.d.ts +64 -0
  92. package/dist/lib/embedded-assets.d.ts +29 -0
  93. package/dist/lib/exec.d.ts +84 -0
  94. package/dist/lib/fetch-timeout.d.ts +41 -0
  95. package/dist/lib/ghostscript.d.ts +48 -0
  96. package/dist/lib/host-policy.d.ts +75 -0
  97. package/dist/lib/image-inspect.d.ts +32 -0
  98. package/dist/lib/install-hints.d.ts +21 -0
  99. package/dist/lib/lint-runner.d.ts +10 -0
  100. package/dist/lib/manifest-config.d.ts +31 -0
  101. package/dist/lib/manifest-doc.d.ts +25 -0
  102. package/dist/lib/manifest.d.ts +41 -0
  103. package/dist/lib/markdown/assemble.d.ts +78 -0
  104. package/dist/lib/markdown/chapter-id.d.ts +24 -0
  105. package/dist/lib/markdown/images.d.ts +34 -0
  106. package/dist/lib/markdown/index.d.ts +78 -0
  107. package/dist/lib/markdown/markdown-it-paged.d.ts +30 -0
  108. package/dist/lib/markdown/plugins.d.ts +69 -0
  109. package/dist/lib/markdown/renderer.d.ts +111 -0
  110. package/dist/lib/npm-plugin-installer.d.ts +33 -0
  111. package/dist/lib/open-path.d.ts +5 -0
  112. package/dist/lib/output-paths.d.ts +23 -0
  113. package/dist/lib/pagedjs-marker.d.ts +42 -0
  114. package/dist/lib/pagedjs.d.ts +26 -0
  115. package/dist/lib/pagination.d.ts +169 -0
  116. package/dist/lib/pdf-inspect.d.ts +123 -0
  117. package/dist/lib/pdf-parse.d.ts +57 -0
  118. package/dist/lib/plugin-manager.d.ts +108 -0
  119. package/dist/lib/plugin-vendor.d.ts +107 -0
  120. package/dist/lib/presets.d.ts +45 -0
  121. package/dist/lib/printsafe.d.ts +17 -0
  122. package/dist/lib/project-scaffold.d.ts +116 -0
  123. package/dist/lib/project-source.d.ts +140 -0
  124. package/dist/lib/project-templates.d.ts +49 -0
  125. package/dist/lib/publish/butler.d.ts +10 -0
  126. package/dist/lib/publish/command-runner.d.ts +18 -0
  127. package/dist/lib/publish/connect.d.ts +23 -0
  128. package/dist/lib/publish/manifest-publish.d.ts +9 -0
  129. package/dist/lib/publish/providers/azure-swa.d.ts +3 -0
  130. package/dist/lib/publish/providers/drivethrurpg.d.ts +10 -0
  131. package/dist/lib/publish/providers/guided.d.ts +3 -0
  132. package/dist/lib/publish/providers/itch.d.ts +5 -0
  133. package/dist/lib/publish/providers/kdp.d.ts +9 -0
  134. package/dist/lib/publish/providers/shopify.d.ts +5 -0
  135. package/dist/lib/publish/registry.d.ts +5 -0
  136. package/dist/lib/publish/run-publish.d.ts +30 -0
  137. package/dist/lib/publish/selections.d.ts +25 -0
  138. package/dist/lib/publish/types.d.ts +258 -0
  139. package/dist/lib/remote-auth/clone.d.ts +87 -0
  140. package/dist/lib/remote-auth/conflict-resolution.d.ts +29 -0
  141. package/dist/lib/remote-auth/diagnose.d.ts +77 -0
  142. package/dist/lib/remote-auth/generic-auth.d.ts +97 -0
  143. package/dist/lib/remote-auth/git-http.d.ts +85 -0
  144. package/dist/lib/remote-auth/github-auth.d.ts +69 -0
  145. package/dist/lib/remote-auth/github-repos.d.ts +64 -0
  146. package/dist/lib/remote-auth/operation-log.d.ts +66 -0
  147. package/dist/lib/remote-auth/recovery/abort-interrupted-operation.d.ts +103 -0
  148. package/dist/lib/remote-auth/recovery/backup.d.ts +113 -0
  149. package/dist/lib/remote-auth/recovery/classify.d.ts +109 -0
  150. package/dist/lib/remote-auth/recovery/context.d.ts +47 -0
  151. package/dist/lib/remote-auth/recovery/dispatch.d.ts +33 -0
  152. package/dist/lib/remote-auth/recovery/failsafe.d.ts +33 -0
  153. package/dist/lib/remote-auth/recovery/inspect.d.ts +74 -0
  154. package/dist/lib/remote-auth/recovery/manual-guidance.d.ts +28 -0
  155. package/dist/lib/remote-auth/recovery/outcome-mapping.d.ts +58 -0
  156. package/dist/lib/remote-auth/recovery/policy.d.ts +47 -0
  157. package/dist/lib/remote-auth/recovery/recover-auth.d.ts +42 -0
  158. package/dist/lib/remote-auth/recovery/recover-binary-conflict.d.ts +37 -0
  159. package/dist/lib/remote-auth/recovery/recover-corrupt-index.d.ts +40 -0
  160. package/dist/lib/remote-auth/recovery/recover-detached-head.d.ts +70 -0
  161. package/dist/lib/remote-auth/recovery/recover-interrupted-cherry-pick.d.ts +23 -0
  162. package/dist/lib/remote-auth/recovery/recover-interrupted-merge.d.ts +28 -0
  163. package/dist/lib/remote-auth/recovery/recover-interrupted-rebase.d.ts +39 -0
  164. package/dist/lib/remote-auth/recovery/recover-merge-conflict.d.ts +34 -0
  165. package/dist/lib/remote-auth/recovery/recover-missing-git-dir.d.ts +37 -0
  166. package/dist/lib/remote-auth/recovery/recover-missing-objects.d.ts +56 -0
  167. package/dist/lib/remote-auth/recovery/recover-network.d.ts +34 -0
  168. package/dist/lib/remote-auth/recovery/recover-non-fast-forward.d.ts +27 -0
  169. package/dist/lib/remote-auth/recovery/recover-stale-lock.d.ts +76 -0
  170. package/dist/lib/remote-auth/recovery/recover-unrelated-histories.d.ts +44 -0
  171. package/dist/lib/remote-auth/recovery/recover-wrong-remote.d.ts +35 -0
  172. package/dist/lib/remote-auth/recovery/types.d.ts +235 -0
  173. package/dist/lib/remote-auth/resolution-plan.d.ts +64 -0
  174. package/dist/lib/remote-auth/sync-messages.d.ts +26 -0
  175. package/dist/lib/remote-auth/sync-types.d.ts +225 -0
  176. package/dist/lib/remote-auth/sync.d.ts +45 -0
  177. package/dist/lib/remote-auth/test-access.d.ts +47 -0
  178. package/dist/lib/remote-auth/test-support/git-http-server.d.ts +71 -0
  179. package/dist/lib/remote-auth/token-store.d.ts +95 -0
  180. package/dist/lib/remote-auth/transport.d.ts +105 -0
  181. package/dist/lib/slug.d.ts +28 -0
  182. package/dist/lib/snippets.d.ts +39 -0
  183. package/dist/lib/source-provider.d.ts +244 -0
  184. package/dist/lib/static-serve.d.ts +54 -0
  185. package/dist/lib/style-resolver.d.ts +30 -0
  186. package/dist/lib/theme-import.d.ts +70 -0
  187. package/dist/lib/theme-manager.d.ts +128 -0
  188. package/dist/lib/tool-probe.d.ts +37 -0
  189. package/dist/lib/validation-exec.d.ts +47 -0
  190. package/dist/lib/validation-profile.d.ts +18 -0
  191. package/dist/lib/version.d.ts +9 -0
  192. package/dist/lint-f63nxjfj.js +65 -0
  193. package/dist/manifest-n1gh3qw5.yaml +9 -0
  194. package/dist/manifest-ryyg71nf.yaml +9 -0
  195. package/dist/manifest.schema-rn1dpdpn.json +564 -0
  196. package/dist/new-7b08a42h.js +105 -0
  197. package/dist/paged.polyfill-n95pbxfn.js +33288 -0
  198. package/dist/pagedjs-bridge-vn4hk9fx.js +111 -0
  199. package/dist/pagedjs-interface-80g3xa8p.js +498 -0
  200. package/dist/platform.d.ts +100 -0
  201. package/dist/plugin-wf2cbmwc.js +129 -0
  202. package/dist/preflight-tg4mpz1h.js +222 -0
  203. package/dist/preview/file-watcher.d.ts +174 -0
  204. package/dist/preview/http-server.d.ts +45 -0
  205. package/dist/preview/lifecycle.d.ts +67 -0
  206. package/dist/preview/server-context.d.ts +36 -0
  207. package/dist/preview-h2bwbb2x.js +102 -0
  208. package/dist/preview-shell-rghtfmc8.js +155 -0
  209. package/dist/project-source-0tg0r6vm.js +17 -0
  210. package/dist/publish-ztaet53r.js +233 -0
  211. package/dist/render.d.ts +20 -0
  212. package/dist/render.js +682 -0
  213. package/dist/repair-jkp4n3j8.js +171 -0
  214. package/dist/schema/manifest.types.d.ts +218 -0
  215. package/dist/server.d.ts +34 -0
  216. package/dist/source-provider-hp96b5jf.js +46 -0
  217. package/dist/test-helpers/testkit.d.ts +91 -0
  218. package/dist/theme-0yzvthe8.css +65 -0
  219. package/dist/theme-570zmh2t.css +58 -0
  220. package/dist/theme-6a2fngc8.json +6 -0
  221. package/dist/theme-cd6efzjw.json +6 -0
  222. package/dist/theme-nya4nqh6.css +70 -0
  223. package/dist/theme-tqfypc1w.json +6 -0
  224. package/dist/theme-xt0hjb1b.json +6 -0
  225. package/dist/theme-zz2ktzqs.css +60 -0
  226. package/dist/types.d.ts +31 -0
  227. package/dist/utils/file-utils.d.ts +53 -0
  228. package/dist/utils/logger.d.ts +59 -0
  229. package/dist/validate-k2drs19j.js +99 -0
  230. package/package.json +102 -0
@@ -0,0 +1,272 @@
1
+ import {
2
+ APP_HEARTBEAT_FRESH_MS,
3
+ AUTO_SNAPSHOT_DEFAULT_MINUTES,
4
+ AUTO_SNAPSHOT_MAX_MINUTES,
5
+ AUTO_SNAPSHOT_MIN_MINUTES,
6
+ AUTO_SYNC_DEFAULT_MINUTES,
7
+ AUTO_SYNC_MAX_MINUTES,
8
+ AUTO_SYNC_MIN_MINUTES,
9
+ BUILT_IN_TEMPLATE_IDS,
10
+ BUILT_IN_THEME_IDS,
11
+ BuildError,
12
+ FileTokenStore,
13
+ GITHUB_HOST,
14
+ GenericTokenAuthProvider,
15
+ GitHubAuthProvider,
16
+ MANIFEST_FILENAMES,
17
+ PLUGINS_DIR,
18
+ PublishSelectionsStore,
19
+ RECOMMENDED_PLUGINS,
20
+ RepoNeedsRecoveryError,
21
+ SNIPPETS_DIR,
22
+ SYNC_SNAPSHOT_MESSAGE,
23
+ THEMES_DIR,
24
+ addLocalPlugin,
25
+ addNpmPlugin,
26
+ adoptFolder,
27
+ appHeartbeatPath,
28
+ applyTheme,
29
+ autoSnapshotDelayMs,
30
+ autoSyncDelayMs,
31
+ buildPreflightDiagnostics,
32
+ buildRecoveryContext,
33
+ classifyFromHealth,
34
+ classifyGitError,
35
+ cloneRepository,
36
+ connectGenericHost,
37
+ connectPublishProvider,
38
+ defaultConfigDir,
39
+ deleteSnippet,
40
+ diagnoseProjectRemote,
41
+ escapeYamlScalar,
42
+ extractUrlCredential,
43
+ extractVariables,
44
+ forgeKindForHost,
45
+ getActiveTheme,
46
+ getPreviousTheme,
47
+ getSystemDiagnostics,
48
+ hasProjectManifest,
49
+ heartbeatTtlMs,
50
+ importTemplateFromFolder,
51
+ importThemeFromFile,
52
+ importThemeFromFolder,
53
+ importThemeFromUrl,
54
+ inspectRepo,
55
+ isAppHeartbeatFresh,
56
+ isGitInternalPath,
57
+ isRepoNeedsRecoveryError,
58
+ isSshRemoteUrl,
59
+ isUnbornRepo,
60
+ knownForgeTokenUrl,
61
+ listBuiltInTemplates,
62
+ listBuiltInThemes,
63
+ listCustomTemplates,
64
+ listGitHubBranches,
65
+ listGitHubRepositories,
66
+ listProjectPlugins,
67
+ listProjectStyles,
68
+ listProjectThemes,
69
+ listPublishAccounts,
70
+ listPublishProviders,
71
+ listRepoBooks,
72
+ listSnippets,
73
+ loadManifestWithPath,
74
+ migrateUrlCredential,
75
+ normalizeForgeHost,
76
+ onlineCopyPath,
77
+ parseRemoteOrigin,
78
+ preflightStructuralReason,
79
+ provenancePath,
80
+ publishConnectionStatus,
81
+ publishCredentialKey,
82
+ publishProviderFor,
83
+ pullChanges,
84
+ pushChanges,
85
+ readAppHeartbeat,
86
+ readManifestFields,
87
+ readProjectProvenance,
88
+ readPublishSettings,
89
+ readSnippet,
90
+ readThemeCss,
91
+ recover,
92
+ redactCredential,
93
+ removeAppHeartbeat,
94
+ removeProjectTheme,
95
+ resolveActiveStyles,
96
+ resolveBuiltInTheme,
97
+ resolveConfig,
98
+ resolveConflicts,
99
+ resolveGitHubClientId,
100
+ resolvePublishRequest,
101
+ revertTheme,
102
+ runBuild,
103
+ runPublish,
104
+ sanitizeCloneFolderName,
105
+ saveProjectAsTemplate,
106
+ saveSnippet,
107
+ scaffoldProject,
108
+ setActiveStyles,
109
+ setManifestFields,
110
+ setPluginEnabled,
111
+ setPublishProviderConfig,
112
+ slugifyProjectName,
113
+ splitOutPath,
114
+ startPreviewServer,
115
+ substituteVariables,
116
+ syncProject,
117
+ testRemoteAccess,
118
+ validateProjectPlugins,
119
+ verifyRepoReadable,
120
+ writeAppHeartbeat
121
+ } from "../index-3h3fef7r.js";
122
+ import {
123
+ AUTO_SNAPSHOT_MESSAGE,
124
+ HISTORY_PAGE_LIMIT,
125
+ RESTORE_BACKUP_MESSAGE,
126
+ isNoChangesError,
127
+ providerFor,
128
+ resolveLogger,
129
+ restoreVersionWithBackup,
130
+ shortOid
131
+ } from "../index-5bxx0c4y.js";
132
+ import {
133
+ capabilitiesFor,
134
+ detectProjectSource,
135
+ findEnclosingRepoDir,
136
+ repoSubPath
137
+ } from "../index-1tyj4bk3.js";
138
+ import"../index-yja077f6.js";
139
+ import"../index-37x76zdn.js";
140
+ export {
141
+ writeAppHeartbeat,
142
+ verifyRepoReadable,
143
+ validateProjectPlugins,
144
+ testRemoteAccess,
145
+ syncProject,
146
+ substituteVariables,
147
+ startPreviewServer,
148
+ splitOutPath,
149
+ slugifyProjectName,
150
+ shortOid,
151
+ setPublishProviderConfig,
152
+ setPluginEnabled,
153
+ setManifestFields,
154
+ setActiveStyles,
155
+ scaffoldProject,
156
+ saveSnippet,
157
+ saveProjectAsTemplate,
158
+ sanitizeCloneFolderName,
159
+ runPublish,
160
+ runBuild,
161
+ revertTheme,
162
+ restoreVersionWithBackup,
163
+ resolvePublishRequest,
164
+ resolveLogger,
165
+ resolveGitHubClientId,
166
+ resolveConflicts,
167
+ resolveConfig,
168
+ resolveBuiltInTheme,
169
+ resolveActiveStyles,
170
+ repoSubPath,
171
+ removeProjectTheme,
172
+ removeAppHeartbeat,
173
+ redactCredential,
174
+ recover,
175
+ readThemeCss,
176
+ readSnippet,
177
+ readPublishSettings,
178
+ readProjectProvenance,
179
+ readManifestFields,
180
+ readAppHeartbeat,
181
+ pushChanges,
182
+ pullChanges,
183
+ publishProviderFor,
184
+ publishCredentialKey,
185
+ publishConnectionStatus,
186
+ providerFor,
187
+ provenancePath,
188
+ preflightStructuralReason,
189
+ parseRemoteOrigin,
190
+ onlineCopyPath,
191
+ normalizeForgeHost,
192
+ migrateUrlCredential,
193
+ loadManifestWithPath,
194
+ listSnippets,
195
+ listRepoBooks,
196
+ listPublishProviders,
197
+ listPublishAccounts,
198
+ listProjectThemes,
199
+ listProjectStyles,
200
+ listProjectPlugins,
201
+ listGitHubRepositories,
202
+ listGitHubBranches,
203
+ listCustomTemplates,
204
+ listBuiltInThemes,
205
+ listBuiltInTemplates,
206
+ knownForgeTokenUrl,
207
+ isUnbornRepo,
208
+ isSshRemoteUrl,
209
+ isRepoNeedsRecoveryError,
210
+ isNoChangesError,
211
+ isGitInternalPath,
212
+ isAppHeartbeatFresh,
213
+ inspectRepo,
214
+ importThemeFromUrl,
215
+ importThemeFromFolder,
216
+ importThemeFromFile,
217
+ importTemplateFromFolder,
218
+ heartbeatTtlMs,
219
+ hasProjectManifest,
220
+ getSystemDiagnostics,
221
+ getPreviousTheme,
222
+ getActiveTheme,
223
+ forgeKindForHost,
224
+ findEnclosingRepoDir,
225
+ extractVariables,
226
+ extractUrlCredential,
227
+ escapeYamlScalar,
228
+ diagnoseProjectRemote,
229
+ detectProjectSource,
230
+ deleteSnippet,
231
+ defaultConfigDir,
232
+ connectPublishProvider,
233
+ connectGenericHost,
234
+ cloneRepository,
235
+ classifyGitError,
236
+ classifyFromHealth,
237
+ capabilitiesFor,
238
+ buildRecoveryContext,
239
+ buildPreflightDiagnostics,
240
+ autoSyncDelayMs,
241
+ autoSnapshotDelayMs,
242
+ applyTheme,
243
+ appHeartbeatPath,
244
+ adoptFolder,
245
+ addNpmPlugin,
246
+ addLocalPlugin,
247
+ THEMES_DIR,
248
+ SYNC_SNAPSHOT_MESSAGE,
249
+ SNIPPETS_DIR,
250
+ RepoNeedsRecoveryError,
251
+ RESTORE_BACKUP_MESSAGE,
252
+ RECOMMENDED_PLUGINS,
253
+ PublishSelectionsStore,
254
+ PLUGINS_DIR,
255
+ MANIFEST_FILENAMES,
256
+ HISTORY_PAGE_LIMIT,
257
+ GitHubAuthProvider,
258
+ GenericTokenAuthProvider,
259
+ GITHUB_HOST,
260
+ FileTokenStore,
261
+ BuildError,
262
+ BUILT_IN_THEME_IDS,
263
+ BUILT_IN_TEMPLATE_IDS,
264
+ AUTO_SYNC_MIN_MINUTES,
265
+ AUTO_SYNC_MAX_MINUTES,
266
+ AUTO_SYNC_DEFAULT_MINUTES,
267
+ AUTO_SNAPSHOT_MIN_MINUTES,
268
+ AUTO_SNAPSHOT_MESSAGE,
269
+ AUTO_SNAPSHOT_MAX_MINUTES,
270
+ AUTO_SNAPSHOT_DEFAULT_MINUTES,
271
+ APP_HEARTBEAT_FRESH_MS
272
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,66 @@
1
+ import {
2
+ executeAndReport
3
+ } from "./cli-7ykx7pp0.js";
4
+ import {
5
+ log
6
+ } from "./cli-h7phg3ka.js";
7
+ import {
8
+ EXIT_CODES,
9
+ UsageError,
10
+ rejectExtraPositionals,
11
+ rejectUnknownFlags
12
+ } from "./cli-hvqjs342.js";
13
+ import"./cli-5bxx0c4y.js";
14
+ import"./cli-1tyj4bk3.js";
15
+ import"./cli-yja077f6.js";
16
+ import"./cli-37x76zdn.js";
17
+
18
+ // src/commands/audit.ts
19
+ import { defineCommand } from "citty";
20
+ import { resolve } from "node:path";
21
+ var commandArgs = {
22
+ dir: {
23
+ type: "positional",
24
+ description: "Asset directory (default: cwd)",
25
+ required: false
26
+ },
27
+ input: {
28
+ type: "string",
29
+ description: "Asset directory (overrides the positional directory)"
30
+ },
31
+ manifest: { type: "string", description: "Path to manifest.yaml" },
32
+ only: { type: "string", description: "Run only these check IDs/selectors (comma-separated)" },
33
+ skip: { type: "string", description: "Skip these check IDs/selectors (comma-separated)" },
34
+ format: { type: "string", description: "Output format: text (default) or json" }
35
+ };
36
+ var audit_default = defineCommand({
37
+ meta: { name: "audit", description: "Run asset-only validation checks" },
38
+ args: commandArgs,
39
+ async run({ args, rawArgs }) {
40
+ const positionalDir = typeof args.dir === "string" ? args.dir : undefined;
41
+ const inputFlag = typeof args.input === "string" ? args.input : undefined;
42
+ const inputDir = resolve(inputFlag ?? positionalDir ?? ".");
43
+ const format = args.format === "json" ? "json" : "text";
44
+ let result;
45
+ try {
46
+ rejectUnknownFlags(rawArgs, commandArgs, "audit");
47
+ rejectExtraPositionals(args._, 1, "audit");
48
+ result = await executeAndReport({
49
+ input: inputDir,
50
+ manifest: typeof args.manifest === "string" ? args.manifest : undefined,
51
+ category: "asset",
52
+ phase: "pre-build",
53
+ only: typeof args.only === "string" ? args.only : undefined,
54
+ skip: typeof args.skip === "string" ? args.skip : undefined
55
+ }, format);
56
+ } catch (error) {
57
+ log.error(error instanceof Error ? error.message : String(error));
58
+ process.exit(error instanceof UsageError ? error.exitCode : EXIT_CODES.USAGE);
59
+ }
60
+ if (!result.ok)
61
+ process.exit(EXIT_CODES.FINDINGS);
62
+ }
63
+ });
64
+ export {
65
+ audit_default as default
66
+ };
@@ -0,0 +1,77 @@
1
+ import {
2
+ runBuild,
3
+ splitOutPath
4
+ } from "./cli-7ykx7pp0.js";
5
+ import {
6
+ log
7
+ } from "./cli-h7phg3ka.js";
8
+ import {
9
+ BuildError,
10
+ UsageError,
11
+ parseFormat,
12
+ parsePdfxFlavor,
13
+ rejectExtraPositionals,
14
+ rejectUnknownFlags
15
+ } from "./cli-hvqjs342.js";
16
+ import"./cli-5bxx0c4y.js";
17
+ import"./cli-1tyj4bk3.js";
18
+ import"./cli-yja077f6.js";
19
+ import"./cli-37x76zdn.js";
20
+
21
+ // src/commands/build.ts
22
+ import { defineCommand } from "citty";
23
+ import path from "node:path";
24
+ var commandArgs = {
25
+ input: { type: "positional", description: "Input directory containing markdown files (default: cwd)", required: false },
26
+ format: { type: "string", description: "Output format: html | pdf | pdfx (default: pdf)" },
27
+ out: { type: "string", description: "Output directory. For --format pdf|pdfx, --out may also be a .pdf file path." },
28
+ title: { type: "string", description: "Document title (overrides manifest)" },
29
+ "pdfx-flavor": { type: "string", description: "PDF/X flavor (x1a or x3). --format pdfx only." },
30
+ icc: { type: "string", description: "Path to ICC profile (required for --format pdfx)" },
31
+ manifest: { type: "string", description: "Path to manifest.yaml" },
32
+ "strip-annotations": { type: "boolean", description: "Strip PDF annotations for PDF/X compliance" },
33
+ "skip-lint": { type: "boolean", description: "Skip CSS linting (default: lint runs for pdf/pdfx)" },
34
+ "skip-pre-validate": { type: "boolean", description: "Skip pre-build validation" },
35
+ "skip-post-validate": { type: "boolean", description: "Skip post-build PDF/X validation" }
36
+ };
37
+ var build_default = defineCommand({
38
+ meta: {
39
+ name: "build",
40
+ description: "Build the book to HTML (static-site desktop), PDF, or PDF/X. Use --format to select. Default: pdf."
41
+ },
42
+ args: commandArgs,
43
+ async run({ args, rawArgs }) {
44
+ try {
45
+ rejectUnknownFlags(rawArgs, commandArgs, "build");
46
+ rejectExtraPositionals(args._, 1, "build");
47
+ const format = parseFormat(args.format, { default: "pdf" });
48
+ log.info(`Format: ${format}`);
49
+ const pdfxFlavor = parsePdfxFlavor(args["pdfx-flavor"], format);
50
+ const { outDir, pdfFileOverride } = splitOutPath(typeof args.out === "string" ? args.out : undefined, format);
51
+ await runBuild({
52
+ inputDir: path.resolve(args.input ?? "."),
53
+ format,
54
+ outDir,
55
+ pdfFileOverride,
56
+ title: typeof args.title === "string" ? args.title : undefined,
57
+ pdfxFlavor,
58
+ iccPath: typeof args.icc === "string" ? args.icc : undefined,
59
+ manifestPath: typeof args.manifest === "string" ? args.manifest : undefined,
60
+ stripAnnotations: typeof args["strip-annotations"] === "boolean" ? args["strip-annotations"] : undefined,
61
+ skipLint: !!args["skip-lint"],
62
+ skipPreValidate: !!args["skip-pre-validate"],
63
+ skipPostValidate: !!args["skip-post-validate"],
64
+ rawArgs: args
65
+ });
66
+ } catch (error) {
67
+ if (error instanceof UsageError || error instanceof BuildError) {
68
+ log.error(error.message);
69
+ process.exit(error.exitCode);
70
+ }
71
+ throw error;
72
+ }
73
+ }
74
+ });
75
+ export {
76
+ build_default as default
77
+ };
@@ -0,0 +1,31 @@
1
+ # Overview
2
+
3
+ This is {{TITLE}}, a technical document. Use this first chapter to tell the
4
+ reader what the document covers and who it is for.
5
+
6
+ ## Getting started
7
+
8
+ Lead with the shortest path to success. Number the steps so the reader can
9
+ follow along:
10
+
11
+ 1. Describe the first thing the reader should do.
12
+ 2. Then the next step, building on the first.
13
+ 3. Finish with how they confirm it worked.
14
+
15
+ ## Reference
16
+
17
+ Use a table when you have a set of options or parameters to document:
18
+
19
+ | Option | Default | Description |
20
+ | --------- | ------- | -------------------------- |
21
+ | `verbose` | `false` | Print extra detail. |
22
+ | `output` | `out/` | Where results are written. |
23
+
24
+ Use `inline code` for commands and identifiers, and fenced blocks for longer
25
+ examples:
26
+
27
+ ```sh
28
+ gutterpress build
29
+ ```
30
+
31
+ Add more files alongside this one for each chapter or section of your document.
@@ -0,0 +1,20 @@
1
+ # {{TITLE}}
2
+
3
+ A zine is short, personal, and made to be photocopied and shared. This page is
4
+ your opening spread — keep it punchy.
5
+
6
+ Write a few lines that set the tone. A zine does not need to explain itself; it
7
+ just needs a voice.
8
+
9
+ ## A short piece
10
+
11
+ Drop in a quick column of text, a list of things you love this month, or a tiny
12
+ manifesto:
13
+
14
+ - One small idea
15
+ - A second, louder one
16
+ - Something to argue about
17
+
18
+ > A pull quote sets a mood and breaks up the page.
19
+
20
+ When you are ready, add more pages alongside this one. Fold, staple, repeat.
@@ -0,0 +1,29 @@
1
+ # Introduction
2
+
3
+ Welcome to {{TITLE}}, a tabletop roleplaying supplement. This first page is a
4
+ starting point — replace it with your own rules, lore, and tables.
5
+
6
+ ## How to use this supplement
7
+
8
+ Write your rules in plain paragraphs, then break out the parts players reach for
9
+ most into clearly labelled blocks. Headings keep long sections easy to scan at
10
+ the table.
11
+
12
+ ## A sample rule
13
+
14
+ > **Quick rule:** When two characters disagree on the outcome of an action, both
15
+ > roll. The higher result decides what happens, and the other player narrates
16
+ > how their character reacts.
17
+
18
+ ## A sample stat block
19
+
20
+ Use a simple table for stat blocks so the numbers line up neatly on the page:
21
+
22
+ | Attribute | Value |
23
+ | --------- | ----- |
24
+ | Health | 10 |
25
+ | Defense | 4 |
26
+ | Speed | 6 |
27
+
28
+ Add more files alongside this one and they become the next sections of your
29
+ supplement. Start writing and watch your rules take shape in the preview.
@@ -0,0 +1,26 @@
1
+ # Chapter One
2
+
3
+ Welcome to {{TITLE}}. This is your first chapter, and it is ready for you to
4
+ make it your own. Everything you see on this page is just an example — replace it
5
+ with your own writing whenever you are ready.
6
+
7
+ You write in plain text. Start a new paragraph by leaving a blank line, like
8
+ this one. Your words will flow onto the page automatically, and gutterpress takes
9
+ care of turning them into a finished, print-ready book.
10
+
11
+ ## A heading for a new section
12
+
13
+ Use a single `#` at the start of a line for a chapter title, and `##` for the
14
+ sections inside it. Headings help your readers find their way around, and they
15
+ make your book look polished with no extra effort.
16
+
17
+ You can make a word **bold** for emphasis, or *slightly softer* with italics.
18
+ You can also gather related points into a list:
19
+
20
+ - A thought worth remembering
21
+ - Another idea, on its own line
22
+ - And one more to round things out
23
+
24
+ When you are happy with this chapter, add more files alongside it and they will
25
+ become the next chapters of your book. For now, write a few sentences here and
26
+ watch them appear, beautifully laid out, in the preview.
@@ -0,0 +1,3 @@
1
+ import type { Check } from "../types";
2
+ declare const check: Check;
3
+ export default check;
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Canonical file-extension sets shared by every asset check.
3
+ *
4
+ * Keeping these in ONE place prevents the divergent glob lists that previously
5
+ * let some formats be size-checked but silently skipped by the header-reader
6
+ * checks. Divergence here is a validation-coverage bug, so the sets and their
7
+ * relationship are pinned by image-extension-coverage.test.ts.
8
+ */
9
+ /**
10
+ * Raster formats the in-process header reader (`inspectImage`) can actually
11
+ * parse. The header-reader checks (color-space, resolution, alpha) operate
12
+ * ONLY over these — they read embedded metadata, which requires a supported
13
+ * parser. This set is the source of truth for inspectImage's real capability;
14
+ * do not add a format here unless inspectImage can decode its header.
15
+ */
16
+ export declare const RASTER_INSPECTABLE_EXTS: readonly ["png", "jpg", "jpeg", "tiff", "tif"];
17
+ /**
18
+ * Every image extension treated as an "image asset" for byte-level checks
19
+ * (e.g. file size) that do not decode the header. Superset of
20
+ * RASTER_INSPECTABLE_EXTS; the extras (webp/svg/gif) are size-checked but
21
+ * INTENTIONALLY exempt from header inspection because inspectImage cannot
22
+ * parse them. This exemption is the documented coverage gap — expanding it
23
+ * requires teaching inspectImage the new format first.
24
+ */
25
+ export declare const ALL_IMAGE_EXTS: readonly ["png", "jpg", "jpeg", "tiff", "tif", "webp", "svg", "gif"];
26
+ /** Font file extensions shared by the approved-fonts and font-license checks. */
27
+ export declare const FONT_EXTS: readonly ["woff", "woff2", "otf", "ttf", "eot"];
28
+ /**
29
+ * Directories no asset scan should ever descend into, as glob patterns.
30
+ *
31
+ * ONE list, applied at the GLOB level by every asset scan (images and fonts
32
+ * alike). Doing the exclusion here rather than by choosing which directories
33
+ * to hand the scanner is what keeps root-level files covered: a previous
34
+ * approach swapped the project root for its subdirectories whenever an ignored
35
+ * directory existed, which silently dropped every file sitting at the root —
36
+ * and scanned NOTHING at all for a project whose only subdirectory was `dist`.
37
+ *
38
+ * `dist` is excluded because it holds the build's own copies of the author's
39
+ * assets; scanning it would double-report every image against itself.
40
+ */
41
+ export declare const ASSET_SCAN_IGNORE_GLOBS: readonly ["**/node_modules/**", "**/.git/**", "**/dist/**"];
@@ -0,0 +1,3 @@
1
+ import type { Check } from "../types";
2
+ declare const check: Check;
3
+ export default check;
@@ -0,0 +1,3 @@
1
+ import type { Check } from "../types";
2
+ declare const check: Check;
3
+ export default check;
@@ -0,0 +1,3 @@
1
+ import type { Check } from "../types";
2
+ declare const check: Check;
3
+ export default check;
@@ -0,0 +1,3 @@
1
+ import type { Check } from "../types";
2
+ declare const check: Check;
3
+ export default check;
@@ -0,0 +1,3 @@
1
+ import type { Check } from "../types";
2
+ declare const check: Check;
3
+ export default check;
@@ -0,0 +1,3 @@
1
+ import type { Check } from "../types";
2
+ declare const check: Check;
3
+ export default check;
@@ -0,0 +1,7 @@
1
+ import "./image-file-size";
2
+ import "./image-resolution";
3
+ import "./image-color-space";
4
+ import "./image-alpha";
5
+ import "./image-tac";
6
+ import "./approved-fonts";
7
+ import "./font-license";
@@ -0,0 +1,3 @@
1
+ import type { RunnerReport } from "./runner";
2
+ export type OutputFormat = "text" | "json";
3
+ export declare function formatReport(report: RunnerReport, format?: OutputFormat): void;
@@ -0,0 +1,4 @@
1
+ import "./text-density";
2
+ import "./section-density";
3
+ import "./layer-count";
4
+ import "./placement-variance";
@@ -0,0 +1,3 @@
1
+ import type { Check } from "../types";
2
+ declare const check: Check;
3
+ export default check;
@@ -0,0 +1,3 @@
1
+ import type { Check } from "../types";
2
+ declare const check: Check;
3
+ export default check;
@@ -0,0 +1,3 @@
1
+ import type { Check } from "../types";
2
+ declare const check: Check;
3
+ export default check;
@@ -0,0 +1,3 @@
1
+ import type { Check } from "../types";
2
+ declare const check: Check;
3
+ export default check;
@@ -0,0 +1,3 @@
1
+ import type { Check } from "../types";
2
+ declare const check: Check;
3
+ export default check;
@@ -0,0 +1,3 @@
1
+ import type { Check } from "../types";
2
+ declare const check: Check;
3
+ export default check;
@@ -0,0 +1,3 @@
1
+ import type { Check } from "../types";
2
+ declare const check: Check;
3
+ export default check;
@@ -0,0 +1,3 @@
1
+ import type { Check } from "../types";
2
+ declare const check: Check;
3
+ export default check;
@@ -0,0 +1,3 @@
1
+ import type { Check } from "../types";
2
+ declare const check: Check;
3
+ export default check;