@craftrpgs/cli 0.1.4 → 0.1.5

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 (2) hide show
  1. package/dist/bin.js +29 -4
  2. package/package.json +1 -1
package/dist/bin.js CHANGED
@@ -26939,6 +26939,22 @@ var imageObjectSchema = exports_external.preprocess((input) => normalizeImageInp
26939
26939
  variations: exports_external.array(imageVariationSchema).max(MAX_FILE_TYPE_STATES).optional()
26940
26940
  }).strict());
26941
26941
 
26942
+ // ../shared/src/projects/manual.ts
26943
+ var MANUAL_VERSION = 1;
26944
+ var MAX_MANUAL_CHAPTERS = 50;
26945
+ var MAX_MANUAL_TITLE_LENGTH = 120;
26946
+ var MAX_MANUAL_CONTENT_LENGTH = 1e5;
26947
+ var manualChapterSchema = exports_external.object({
26948
+ id: exports_external.string().min(1).max(64),
26949
+ title: exports_external.string().trim().min(1).max(MAX_MANUAL_TITLE_LENGTH),
26950
+ content: exports_external.string().max(MAX_MANUAL_CONTENT_LENGTH)
26951
+ });
26952
+ var manualSchema = exports_external.object({
26953
+ version: exports_external.literal(MANUAL_VERSION),
26954
+ updatedAt: exports_external.string().max(40).optional(),
26955
+ chapters: exports_external.array(manualChapterSchema).max(MAX_MANUAL_CHAPTERS)
26956
+ });
26957
+
26942
26958
  // ../shared/src/projects/project-import.ts
26943
26959
  var projectImportJsonValueSchema = exports_external.lazy(() => exports_external.union([
26944
26960
  exports_external.string(),
@@ -27027,7 +27043,9 @@ var projectImportProjectSettingsSchema = exports_external.object({
27027
27043
  gmToolSettings: gmToolSettingsInputSchema.optional(),
27028
27044
  rootMapFileReferenceId: exports_external.string().uuid().nullable().optional(),
27029
27045
  gm: projectImportGameMasterSettingsSchema.optional(),
27030
- preludeFlow: exports_external.unknown().nullable().optional()
27046
+ preludeFlow: exports_external.unknown().nullable().optional(),
27047
+ playerHandbook: manualSchema.nullable().optional(),
27048
+ builderManual: manualSchema.nullable().optional()
27031
27049
  }).strict();
27032
27050
  var projectImportProjectSchema = exports_external.object({
27033
27051
  name: exports_external.string().trim().min(1),
@@ -41882,7 +41900,7 @@ function describeRemoteSource(resolved) {
41882
41900
  // package.json
41883
41901
  var package_default = {
41884
41902
  name: "@craftrpgs/cli",
41885
- version: "0.1.4",
41903
+ version: "0.1.5",
41886
41904
  description: "Sync Craft projects with a local folder — clone, edit with any coding agent, push back.",
41887
41905
  license: "UNLICENSED",
41888
41906
  homepage: "https://craftrpgs.com",
@@ -50485,12 +50503,19 @@ content. File type changes from the zip apply only with --include-types
50485
50503
  (missing types are created, drifted types updated \u2014 the server revalidates
50486
50504
  existing files against schema changes). Project settings changes from the
50487
50505
  zip's .craft/project.json apply only with --include-settings; without it,
50488
- differing settings are listed but left untouched.
50506
+ differing settings are listed but left untouched. Every field of
50507
+ project.json is diffed and applied individually: name, description, tags,
50508
+ and settings.* \u2014 theme, image, projectIcon, attribution, gameSystemName,
50509
+ headlineLabel, headline, body, authorsNotes, gallery, galleryLayout,
50510
+ isClonable, hideHeroTitle, imageStyleInstructions, autoImageGeneration,
50511
+ defaultImageModel, gmToolSettings, rootMapFileReferenceId, preludeFlow, gm,
50512
+ playerHandbook, builderManual.
50489
50513
 
50490
50514
  --dry-run shows the full plan without writing. --exclude <referenceId>
50491
50515
  skips individual rows from the plan (repeatable, or comma-separated; get the
50492
50516
  ids from a --dry-run --json plan). --exclude-setting <key> vetoes a single
50493
- settings change (e.g. settings.preludeFlow). Runs inside the target
50517
+ settings change, named exactly as the plan's rows are keyed (e.g.
50518
+ settings.preludeFlow, settings.playerHandbook). Runs inside the target
50494
50519
  project's workspace, or anywhere with --project <projectId>. The apply is
50495
50520
  one atomic batch: on any per-file failure (409) nothing is written and every
50496
50521
  failure is listed. Exits 1 while conflicts or failures remain.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@craftrpgs/cli",
3
- "version": "0.1.4",
3
+ "version": "0.1.5",
4
4
  "description": "Sync Craft projects with a local folder — clone, edit with any coding agent, push back.",
5
5
  "license": "UNLICENSED",
6
6
  "homepage": "https://craftrpgs.com",