@kernhq/module-quire 0.2.0 → 0.3.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 (44) hide show
  1. package/dist/contract/events.d.ts +11 -0
  2. package/dist/contract/events.d.ts.map +1 -1
  3. package/dist/contract/events.js +2 -0
  4. package/dist/contract/events.js.map +1 -1
  5. package/dist/contract/models.d.ts +29 -0
  6. package/dist/contract/models.d.ts.map +1 -1
  7. package/dist/contract/models.js +19 -0
  8. package/dist/contract/models.js.map +1 -1
  9. package/dist/contract/permissions.d.ts +7 -0
  10. package/dist/contract/permissions.d.ts.map +1 -1
  11. package/dist/contract/permissions.js +8 -0
  12. package/dist/contract/permissions.js.map +1 -1
  13. package/dist/contract/router.d.ts +285 -0
  14. package/dist/contract/router.d.ts.map +1 -1
  15. package/dist/contract/router.js +37 -1
  16. package/dist/contract/router.js.map +1 -1
  17. package/dist/server/_impl.d.ts +319 -0
  18. package/dist/server/_impl.d.ts.map +1 -1
  19. package/dist/server/_impl.js +90 -16
  20. package/dist/server/_impl.js.map +1 -1
  21. package/dist/server/index.d.ts.map +1 -1
  22. package/dist/server/index.js +63 -3
  23. package/dist/server/index.js.map +1 -1
  24. package/dist/server/schema.d.ts +206 -1
  25. package/dist/server/schema.d.ts.map +1 -1
  26. package/dist/server/schema.js +38 -2
  27. package/dist/server/schema.js.map +1 -1
  28. package/dist/server/services/index.d.ts +3 -0
  29. package/dist/server/services/index.d.ts.map +1 -1
  30. package/dist/server/services/index.js +3 -0
  31. package/dist/server/services/index.js.map +1 -1
  32. package/dist/server/services/versions.d.ts +124 -0
  33. package/dist/server/services/versions.d.ts.map +1 -0
  34. package/dist/server/services/versions.js +182 -0
  35. package/dist/server/services/versions.js.map +1 -0
  36. package/migrations/0002_page_versions.sql +25 -0
  37. package/migrations/meta/0002_snapshot.json +491 -0
  38. package/migrations/meta/_journal.json +7 -0
  39. package/package.json +1 -1
  40. package/src/client/index.ts +18 -1
  41. package/src/contract/events.ts +5 -0
  42. package/src/contract/models.ts +23 -0
  43. package/src/contract/permissions.ts +8 -0
  44. package/src/contract/router.ts +39 -1
@@ -47,6 +47,17 @@ export declare const quireEvents: {
47
47
  spaceId: z.ZodUUID;
48
48
  workspaceId: z.core.$ZodBranded<z.ZodUUID, "WorkspaceId", "out">;
49
49
  }, z.core.$strip>>;
50
+ readonly pagePublished: import("@kernhq/contracts").EventDef<"quire.page.published", z.ZodObject<{
51
+ pageId: z.ZodUUID;
52
+ spaceId: z.ZodUUID;
53
+ workspaceId: z.core.$ZodBranded<z.ZodUUID, "WorkspaceId", "out">;
54
+ versionId: z.ZodUUID;
55
+ }, z.core.$strip>>;
56
+ readonly pageRestoredVersion: import("@kernhq/contracts").EventDef<"quire.page.restored_version", z.ZodObject<{
57
+ pageId: z.ZodUUID;
58
+ workspaceId: z.core.$ZodBranded<z.ZodUUID, "WorkspaceId", "out">;
59
+ versionId: z.ZodUUID;
60
+ }, z.core.$strip>>;
50
61
  /** The page and its descendants are gone; anything holding a reference should drop it. */
51
62
  readonly pageDeleted: import("@kernhq/contracts").EventDef<"quire.page.deleted", z.ZodObject<{
52
63
  pageId: z.ZodUUID;
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/contract/events.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB,8EAA8E;AAC9E,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAatB,0FAA0F;;;;;;;CAElF,CAAA"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/contract/events.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB,8EAA8E;AAC9E,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAkBtB,0FAA0F;;;;;;;CAElF,CAAA"}
@@ -12,6 +12,8 @@ export const quireEvents = {
12
12
  pageArchived: defineEvent('quire.page.archived', page.extend({ archived: z.boolean() })),
13
13
  pageTrashed: defineEvent('quire.page.trashed', page.extend({ count: z.number().int().nonnegative() })),
14
14
  pageRestored: defineEvent('quire.page.restored', page),
15
+ pagePublished: defineEvent('quire.page.published', page.extend({ versionId: Id })),
16
+ pageRestoredVersion: defineEvent('quire.page.restored_version', z.object({ pageId: Id, workspaceId: WorkspaceId, versionId: Id })),
15
17
  /** The page and its descendants are gone; anything holding a reference should drop it. */
16
18
  pageDeleted: defineEvent('quire.page.deleted', page.extend({ pageIds: z.array(Id) })),
17
19
  };
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/contract/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAChE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAA;AAE5E,8EAA8E;AAC9E,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,YAAY,EAAE,WAAW,CAAC,qBAAqB,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC;IACrG,YAAY,EAAE,WAAW,CAAC,qBAAqB,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC;IACrG,aAAa,EAAE,WAAW,CACxB,sBAAsB,EACtB,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAC3E;IACD,WAAW,EAAE,WAAW,CAAC,oBAAoB,EAAE,IAAI,CAAC;IACpD,WAAW,EAAE,WAAW,CAAC,oBAAoB,EAAE,IAAI,CAAC;IACpD,SAAS,EAAE,WAAW,CAAC,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IACpF,YAAY,EAAE,WAAW,CAAC,qBAAqB,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACxF,WAAW,EAAE,WAAW,CAAC,oBAAoB,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IACtG,YAAY,EAAE,WAAW,CAAC,qBAAqB,EAAE,IAAI,CAAC;IACtD,0FAA0F;IAC1F,WAAW,EAAE,WAAW,CAAC,oBAAoB,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;CAC7E,CAAA"}
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/contract/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAChE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAA;AAE5E,8EAA8E;AAC9E,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,YAAY,EAAE,WAAW,CAAC,qBAAqB,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC;IACrG,YAAY,EAAE,WAAW,CAAC,qBAAqB,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC;IACrG,aAAa,EAAE,WAAW,CACxB,sBAAsB,EACtB,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAC3E;IACD,WAAW,EAAE,WAAW,CAAC,oBAAoB,EAAE,IAAI,CAAC;IACpD,WAAW,EAAE,WAAW,CAAC,oBAAoB,EAAE,IAAI,CAAC;IACpD,SAAS,EAAE,WAAW,CAAC,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IACpF,YAAY,EAAE,WAAW,CAAC,qBAAqB,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACxF,WAAW,EAAE,WAAW,CAAC,oBAAoB,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IACtG,YAAY,EAAE,WAAW,CAAC,qBAAqB,EAAE,IAAI,CAAC;IACtD,aAAa,EAAE,WAAW,CAAC,sBAAsB,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;IAClF,mBAAmB,EAAE,WAAW,CAC9B,6BAA6B,EAC7B,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,CAClE;IACD,0FAA0F;IAC1F,WAAW,EAAE,WAAW,CAAC,oBAAoB,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;CAC7E,CAAA"}
@@ -89,6 +89,35 @@ export declare const PageNode: z.ZodObject<{
89
89
  archivedAt: z.ZodNullable<z.ZodISODateTime>;
90
90
  }, z.core.$strip>;
91
91
  export type PageNode = z.infer<typeof PageNode>;
92
+ /**
93
+ * How a version came to exist. `restore` matters: putting an older version back writes a new
94
+ * version rather than rewinding, so restoring is never itself the thing that loses work.
95
+ */
96
+ export declare const VersionKind: z.ZodEnum<{
97
+ auto: "auto";
98
+ publish: "publish";
99
+ restore: "restore";
100
+ import: "import";
101
+ }>;
102
+ export type VersionKind = z.infer<typeof VersionKind>;
103
+ export declare const PageVersion: z.ZodObject<{
104
+ id: z.ZodUUID;
105
+ workspaceId: z.core.$ZodBranded<z.ZodUUID, "WorkspaceId", "out">;
106
+ pageId: z.ZodUUID;
107
+ kind: z.ZodEnum<{
108
+ auto: "auto";
109
+ publish: "publish";
110
+ restore: "restore";
111
+ import: "import";
112
+ }>;
113
+ label: z.ZodNullable<z.ZodString>;
114
+ preview: z.ZodString;
115
+ size: z.ZodNumber;
116
+ authorId: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "UserId", "out">>;
117
+ createdAt: z.ZodISODateTime;
118
+ published: z.ZodBoolean;
119
+ }, z.core.$strip>;
120
+ export type PageVersion = z.infer<typeof PageVersion>;
92
121
  export declare const Ok: z.ZodObject<{
93
122
  ok: z.ZodLiteral<true>;
94
123
  }, z.core.$strip>;
@@ -1 +1 @@
1
- {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/contract/models.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,yGAAyG;AACzG,eAAO,MAAM,SAAS,UAAU,CAAA;AAEhC;;;;;;GAMG;AACH,eAAO,MAAM,eAAe;;;;EAA4C,CAAA;AACxE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAA;AAE7D,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;iBAoBhB,CAAA;AACF,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAA;AAEzC;;;;;;;;;GASG;AACH,eAAO,MAAM,QAAQ;;;;EAAuC,CAAA;AAC5D,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAA;AAE/C,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;iBAwBf,CAAA;AACF,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAA;AAEvC,uFAAuF;AACvF,eAAO,MAAM,QAAQ;;;;;;;;;;;;;iBASnB,CAAA;AACF,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAA;AAE/C,eAAO,MAAM,EAAE;;iBAAoC,CAAA"}
1
+ {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/contract/models.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,yGAAyG;AACzG,eAAO,MAAM,SAAS,UAAU,CAAA;AAEhC;;;;;;GAMG;AACH,eAAO,MAAM,eAAe;;;;EAA4C,CAAA;AACxE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAA;AAE7D,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;iBAoBhB,CAAA;AACF,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,CAAA;AAEzC;;;;;;;;;GASG;AACH,eAAO,MAAM,QAAQ;;;;EAAuC,CAAA;AAC5D,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAA;AAE/C,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;iBAwBf,CAAA;AACF,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,CAAA;AAEvC,uFAAuF;AACvF,eAAO,MAAM,QAAQ;;;;;;;;;;;;;iBASnB,CAAA;AACF,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAA;AAE/C;;;GAGG;AACH,eAAO,MAAM,WAAW;;;;;EAAmD,CAAA;AAC3E,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAA;AAErD,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;iBAatB,CAAA;AACF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAA;AAErD,eAAO,MAAM,EAAE;;iBAAoC,CAAA"}
@@ -78,5 +78,24 @@ export const PageNode = z.object({
78
78
  hasChildren: z.boolean(),
79
79
  archivedAt: Timestamp.nullable(),
80
80
  });
81
+ /**
82
+ * How a version came to exist. `restore` matters: putting an older version back writes a new
83
+ * version rather than rewinding, so restoring is never itself the thing that loses work.
84
+ */
85
+ export const VersionKind = z.enum(['auto', 'publish', 'restore', 'import']);
86
+ export const PageVersion = z.object({
87
+ id: Id,
88
+ workspaceId: WorkspaceId,
89
+ pageId: Id,
90
+ kind: VersionKind,
91
+ label: z.string().max(120).nullable(),
92
+ /** the first line or so of the prose, so a list reads without loading a document */
93
+ preview: z.string(),
94
+ size: z.number().int().nonnegative(),
95
+ authorId: UserId.nullable(),
96
+ createdAt: Timestamp,
97
+ /** whether this is the version a reader is currently served */
98
+ published: z.boolean(),
99
+ });
81
100
  export const Ok = z.object({ ok: z.literal(true) });
82
101
  //# sourceMappingURL=models.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/contract/models.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/contract/models.ts"],"names":[],"mappings":"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"}
@@ -40,6 +40,13 @@ export declare const quirePermissions: readonly [{
40
40
  readonly scope: "space";
41
41
  readonly defaultRoles: ["owner", "admin", "member"];
42
42
  readonly dangerous: false;
43
+ }, {
44
+ readonly key: "quire.page.publish";
45
+ readonly label: "Publish pages";
46
+ readonly description: "Decide which version readers and any public site are served";
47
+ readonly scope: "space";
48
+ readonly defaultRoles: ["owner", "admin", "member"];
49
+ readonly dangerous: false;
43
50
  }, {
44
51
  readonly key: "quire.page.delete";
45
52
  readonly label: "Delete pages permanently";
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../src/contract/permissions.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+C3B,CAAA"}
1
+ {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../src/contract/permissions.ts"],"names":[],"mappings":"AAEA;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAuD3B,CAAA"}
@@ -47,6 +47,14 @@ export const quirePermissions = definePermissions([
47
47
  defaultRoles: ['owner', 'admin', 'member'],
48
48
  dangerous: false,
49
49
  },
50
+ {
51
+ key: 'quire.page.publish',
52
+ label: 'Publish pages',
53
+ description: 'Decide which version readers and any public site are served',
54
+ scope: 'space',
55
+ defaultRoles: ['owner', 'admin', 'member'],
56
+ dangerous: false,
57
+ },
50
58
  {
51
59
  key: 'quire.page.delete',
52
60
  label: 'Delete pages permanently',
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../src/contract/permissions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAErD;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,iBAAiB,CAAC;IAChD;QACE,GAAG,EAAE,kBAAkB;QACvB,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,4DAA4D;QACzE,KAAK,EAAE,OAAO;QACd,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC;QACnD,SAAS,EAAE,KAAK;KACjB;IACD;QACE,GAAG,EAAE,oBAAoB;QACzB,KAAK,EAAE,6BAA6B;QACpC,WAAW,EAAE,+DAA+D;QAC5E,KAAK,EAAE,OAAO;QACd,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;QAChC,SAAS,EAAE,KAAK;KACjB;IACD;QACE,GAAG,EAAE,iBAAiB;QACtB,KAAK,EAAE,YAAY;QACnB,KAAK,EAAE,OAAO;QACd,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC;QACnD,SAAS,EAAE,KAAK;KACjB;IACD;QACE,GAAG,EAAE,mBAAmB;QACxB,KAAK,EAAE,cAAc;QACrB,KAAK,EAAE,OAAO;QACd,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC;QAC1C,SAAS,EAAE,KAAK;KACjB;IACD;QACE,GAAG,EAAE,iBAAiB;QACtB,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,qDAAqD;QAClE,KAAK,EAAE,OAAO;QACd,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC;QAC1C,SAAS,EAAE,KAAK;KACjB;IACD;QACE,GAAG,EAAE,mBAAmB;QACxB,KAAK,EAAE,0BAA0B;QACjC,WAAW,EAAE,qEAAqE;QAClF,KAAK,EAAE,OAAO;QACd,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;QAChC,SAAS,EAAE,IAAI;KAChB;CACF,CAAC,CAAA"}
1
+ {"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../src/contract/permissions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAErD;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,iBAAiB,CAAC;IAChD;QACE,GAAG,EAAE,kBAAkB;QACvB,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,4DAA4D;QACzE,KAAK,EAAE,OAAO;QACd,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC;QACnD,SAAS,EAAE,KAAK;KACjB;IACD;QACE,GAAG,EAAE,oBAAoB;QACzB,KAAK,EAAE,6BAA6B;QACpC,WAAW,EAAE,+DAA+D;QAC5E,KAAK,EAAE,OAAO;QACd,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;QAChC,SAAS,EAAE,KAAK;KACjB;IACD;QACE,GAAG,EAAE,iBAAiB;QACtB,KAAK,EAAE,YAAY;QACnB,KAAK,EAAE,OAAO;QACd,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC;QACnD,SAAS,EAAE,KAAK;KACjB;IACD;QACE,GAAG,EAAE,mBAAmB;QACxB,KAAK,EAAE,cAAc;QACrB,KAAK,EAAE,OAAO;QACd,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC;QAC1C,SAAS,EAAE,KAAK;KACjB;IACD;QACE,GAAG,EAAE,iBAAiB;QACtB,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,qDAAqD;QAClE,KAAK,EAAE,OAAO;QACd,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC;QAC1C,SAAS,EAAE,KAAK;KACjB;IACD;QACE,GAAG,EAAE,oBAAoB;QACzB,KAAK,EAAE,eAAe;QACtB,WAAW,EAAE,6DAA6D;QAC1E,KAAK,EAAE,OAAO;QACd,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC;QAC1C,SAAS,EAAE,KAAK;KACjB;IACD;QACE,GAAG,EAAE,mBAAmB;QACxB,KAAK,EAAE,0BAA0B;QACjC,WAAW,EAAE,qEAAqE;QAClF,KAAK,EAAE,OAAO;QACd,YAAY,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;QAChC,SAAS,EAAE,IAAI;KAChB;CACF,CAAC,CAAA"}
@@ -707,6 +707,291 @@ export declare const quireContract: {
707
707
  };
708
708
  }>, Record<never, never>>;
709
709
  };
710
+ readonly versions: {
711
+ readonly list: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
712
+ workspaceId: z.core.$ZodBranded<z.ZodUUID, "WorkspaceId", "out">;
713
+ pageId: z.ZodUUID;
714
+ cursor: z.ZodOptional<z.ZodString>;
715
+ limit: z.ZodDefault<z.ZodNumber>;
716
+ }, z.core.$strip>, z.ZodObject<{
717
+ items: z.ZodArray<z.ZodObject<{
718
+ id: z.ZodUUID;
719
+ workspaceId: z.core.$ZodBranded<z.ZodUUID, "WorkspaceId", "out">;
720
+ pageId: z.ZodUUID;
721
+ kind: z.ZodEnum<{
722
+ auto: "auto";
723
+ publish: "publish";
724
+ restore: "restore";
725
+ import: "import";
726
+ }>;
727
+ label: z.ZodNullable<z.ZodString>;
728
+ preview: z.ZodString;
729
+ size: z.ZodNumber;
730
+ authorId: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "UserId", "out">>;
731
+ createdAt: z.ZodISODateTime;
732
+ published: z.ZodBoolean;
733
+ }, z.core.$strip>>;
734
+ nextCursor: z.ZodNullable<z.ZodString>;
735
+ total: z.ZodOptional<z.ZodNumber>;
736
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
737
+ BAD_REQUEST: {
738
+ data: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
739
+ };
740
+ UNAUTHORIZED: {};
741
+ FORBIDDEN: {
742
+ data: z.ZodOptional<z.ZodObject<{
743
+ permission: z.ZodOptional<z.ZodString>;
744
+ }, z.core.$strip>>;
745
+ };
746
+ NOT_FOUND: {};
747
+ CONFLICT: {
748
+ data: z.ZodOptional<z.ZodObject<{
749
+ reason: z.ZodOptional<z.ZodString>;
750
+ }, z.core.$strip>>;
751
+ };
752
+ RATE_LIMITED: {};
753
+ MODULE_DISABLED: {
754
+ data: z.ZodObject<{
755
+ module: z.ZodString;
756
+ }, z.core.$strip>;
757
+ };
758
+ }>, Record<never, never>>;
759
+ /** The prose of one version, rendered as text — enough to read it and to diff it. */
760
+ readonly get: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
761
+ workspaceId: z.core.$ZodBranded<z.ZodUUID, "WorkspaceId", "out">;
762
+ versionId: z.ZodUUID;
763
+ }, z.core.$strip>, z.ZodObject<{
764
+ id: z.ZodUUID;
765
+ workspaceId: z.core.$ZodBranded<z.ZodUUID, "WorkspaceId", "out">;
766
+ pageId: z.ZodUUID;
767
+ kind: z.ZodEnum<{
768
+ auto: "auto";
769
+ publish: "publish";
770
+ restore: "restore";
771
+ import: "import";
772
+ }>;
773
+ label: z.ZodNullable<z.ZodString>;
774
+ preview: z.ZodString;
775
+ size: z.ZodNumber;
776
+ authorId: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "UserId", "out">>;
777
+ createdAt: z.ZodISODateTime;
778
+ published: z.ZodBoolean;
779
+ text: z.ZodString;
780
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
781
+ BAD_REQUEST: {
782
+ data: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
783
+ };
784
+ UNAUTHORIZED: {};
785
+ FORBIDDEN: {
786
+ data: z.ZodOptional<z.ZodObject<{
787
+ permission: z.ZodOptional<z.ZodString>;
788
+ }, z.core.$strip>>;
789
+ };
790
+ NOT_FOUND: {};
791
+ CONFLICT: {
792
+ data: z.ZodOptional<z.ZodObject<{
793
+ reason: z.ZodOptional<z.ZodString>;
794
+ }, z.core.$strip>>;
795
+ };
796
+ RATE_LIMITED: {};
797
+ MODULE_DISABLED: {
798
+ data: z.ZodObject<{
799
+ module: z.ZodString;
800
+ }, z.core.$strip>;
801
+ };
802
+ }>, Record<never, never>>;
803
+ /** Take one now, and give it a name. */
804
+ readonly create: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
805
+ workspaceId: z.core.$ZodBranded<z.ZodUUID, "WorkspaceId", "out">;
806
+ pageId: z.ZodUUID;
807
+ label: z.ZodDefault<z.ZodNullable<z.ZodString>>;
808
+ }, z.core.$strip>, z.ZodObject<{
809
+ id: z.ZodUUID;
810
+ workspaceId: z.core.$ZodBranded<z.ZodUUID, "WorkspaceId", "out">;
811
+ pageId: z.ZodUUID;
812
+ kind: z.ZodEnum<{
813
+ auto: "auto";
814
+ publish: "publish";
815
+ restore: "restore";
816
+ import: "import";
817
+ }>;
818
+ label: z.ZodNullable<z.ZodString>;
819
+ preview: z.ZodString;
820
+ size: z.ZodNumber;
821
+ authorId: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "UserId", "out">>;
822
+ createdAt: z.ZodISODateTime;
823
+ published: z.ZodBoolean;
824
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
825
+ BAD_REQUEST: {
826
+ data: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
827
+ };
828
+ UNAUTHORIZED: {};
829
+ FORBIDDEN: {
830
+ data: z.ZodOptional<z.ZodObject<{
831
+ permission: z.ZodOptional<z.ZodString>;
832
+ }, z.core.$strip>>;
833
+ };
834
+ NOT_FOUND: {};
835
+ CONFLICT: {
836
+ data: z.ZodOptional<z.ZodObject<{
837
+ reason: z.ZodOptional<z.ZodString>;
838
+ }, z.core.$strip>>;
839
+ };
840
+ RATE_LIMITED: {};
841
+ MODULE_DISABLED: {
842
+ data: z.ZodObject<{
843
+ module: z.ZodString;
844
+ }, z.core.$strip>;
845
+ };
846
+ }>, Record<never, never>>;
847
+ /**
848
+ * Put an older version back. It is applied to the live document rather than written behind the
849
+ * people editing it, and the state it replaced is kept as a version of its own first.
850
+ */
851
+ readonly restore: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
852
+ workspaceId: z.core.$ZodBranded<z.ZodUUID, "WorkspaceId", "out">;
853
+ versionId: z.ZodUUID;
854
+ }, z.core.$strip>, z.ZodObject<{
855
+ id: z.ZodUUID;
856
+ workspaceId: z.core.$ZodBranded<z.ZodUUID, "WorkspaceId", "out">;
857
+ pageId: z.ZodUUID;
858
+ kind: z.ZodEnum<{
859
+ auto: "auto";
860
+ publish: "publish";
861
+ restore: "restore";
862
+ import: "import";
863
+ }>;
864
+ label: z.ZodNullable<z.ZodString>;
865
+ preview: z.ZodString;
866
+ size: z.ZodNumber;
867
+ authorId: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "UserId", "out">>;
868
+ createdAt: z.ZodISODateTime;
869
+ published: z.ZodBoolean;
870
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
871
+ BAD_REQUEST: {
872
+ data: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
873
+ };
874
+ UNAUTHORIZED: {};
875
+ FORBIDDEN: {
876
+ data: z.ZodOptional<z.ZodObject<{
877
+ permission: z.ZodOptional<z.ZodString>;
878
+ }, z.core.$strip>>;
879
+ };
880
+ NOT_FOUND: {};
881
+ CONFLICT: {
882
+ data: z.ZodOptional<z.ZodObject<{
883
+ reason: z.ZodOptional<z.ZodString>;
884
+ }, z.core.$strip>>;
885
+ };
886
+ RATE_LIMITED: {};
887
+ MODULE_DISABLED: {
888
+ data: z.ZodObject<{
889
+ module: z.ZodString;
890
+ }, z.core.$strip>;
891
+ };
892
+ }>, Record<never, never>>;
893
+ };
894
+ readonly publishing: {
895
+ /** Make what is written now the version readers are served. Only meaningful for a `page`. */
896
+ readonly publish: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
897
+ workspaceId: z.core.$ZodBranded<z.ZodUUID, "WorkspaceId", "out">;
898
+ pageId: z.ZodUUID;
899
+ label: z.ZodDefault<z.ZodNullable<z.ZodString>>;
900
+ }, z.core.$strip>, z.ZodObject<{
901
+ id: z.ZodUUID;
902
+ workspaceId: z.core.$ZodBranded<z.ZodUUID, "WorkspaceId", "out">;
903
+ spaceId: z.ZodUUID;
904
+ parentId: z.ZodNullable<z.ZodUUID>;
905
+ position: z.ZodString;
906
+ kind: z.ZodEnum<{
907
+ page: "page";
908
+ live: "live";
909
+ database: "database";
910
+ }>;
911
+ title: z.ZodString;
912
+ icon: z.ZodNullable<z.ZodString>;
913
+ coverUrl: z.ZodNullable<z.ZodString>;
914
+ publishedVersionId: z.ZodNullable<z.ZodUUID>;
915
+ hasUnpublishedChanges: z.ZodBoolean;
916
+ createdBy: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "UserId", "out">>;
917
+ updatedBy: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "UserId", "out">>;
918
+ createdAt: z.ZodISODateTime;
919
+ updatedAt: z.ZodISODateTime;
920
+ archivedAt: z.ZodNullable<z.ZodISODateTime>;
921
+ deletedAt: z.ZodNullable<z.ZodISODateTime>;
922
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
923
+ BAD_REQUEST: {
924
+ data: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
925
+ };
926
+ UNAUTHORIZED: {};
927
+ FORBIDDEN: {
928
+ data: z.ZodOptional<z.ZodObject<{
929
+ permission: z.ZodOptional<z.ZodString>;
930
+ }, z.core.$strip>>;
931
+ };
932
+ NOT_FOUND: {};
933
+ CONFLICT: {
934
+ data: z.ZodOptional<z.ZodObject<{
935
+ reason: z.ZodOptional<z.ZodString>;
936
+ }, z.core.$strip>>;
937
+ };
938
+ RATE_LIMITED: {};
939
+ MODULE_DISABLED: {
940
+ data: z.ZodObject<{
941
+ module: z.ZodString;
942
+ }, z.core.$strip>;
943
+ };
944
+ }>, Record<never, never>>;
945
+ /** Throw the draft away and go back to what readers can already see. */
946
+ readonly revert: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<z.ZodObject<{
947
+ workspaceId: z.core.$ZodBranded<z.ZodUUID, "WorkspaceId", "out">;
948
+ pageId: z.ZodUUID;
949
+ }, z.core.$strip>, z.ZodObject<{
950
+ id: z.ZodUUID;
951
+ workspaceId: z.core.$ZodBranded<z.ZodUUID, "WorkspaceId", "out">;
952
+ spaceId: z.ZodUUID;
953
+ parentId: z.ZodNullable<z.ZodUUID>;
954
+ position: z.ZodString;
955
+ kind: z.ZodEnum<{
956
+ page: "page";
957
+ live: "live";
958
+ database: "database";
959
+ }>;
960
+ title: z.ZodString;
961
+ icon: z.ZodNullable<z.ZodString>;
962
+ coverUrl: z.ZodNullable<z.ZodString>;
963
+ publishedVersionId: z.ZodNullable<z.ZodUUID>;
964
+ hasUnpublishedChanges: z.ZodBoolean;
965
+ createdBy: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "UserId", "out">>;
966
+ updatedBy: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "UserId", "out">>;
967
+ createdAt: z.ZodISODateTime;
968
+ updatedAt: z.ZodISODateTime;
969
+ archivedAt: z.ZodNullable<z.ZodISODateTime>;
970
+ deletedAt: z.ZodNullable<z.ZodISODateTime>;
971
+ }, z.core.$strip>, import("@orpc/contract").MergedErrorMap<Record<never, never>, {
972
+ BAD_REQUEST: {
973
+ data: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
974
+ };
975
+ UNAUTHORIZED: {};
976
+ FORBIDDEN: {
977
+ data: z.ZodOptional<z.ZodObject<{
978
+ permission: z.ZodOptional<z.ZodString>;
979
+ }, z.core.$strip>>;
980
+ };
981
+ NOT_FOUND: {};
982
+ CONFLICT: {
983
+ data: z.ZodOptional<z.ZodObject<{
984
+ reason: z.ZodOptional<z.ZodString>;
985
+ }, z.core.$strip>>;
986
+ };
987
+ RATE_LIMITED: {};
988
+ MODULE_DISABLED: {
989
+ data: z.ZodObject<{
990
+ module: z.ZodString;
991
+ }, z.core.$strip>;
992
+ };
993
+ }>, Record<never, never>>;
994
+ };
710
995
  };
711
996
  export type QuireContract = typeof quireContract;
712
997
  export { Ok };
@@ -1 +1 @@
1
- {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../src/contract/router.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,EAAE,EAAoD,MAAM,aAAa,CAAA;AAKlF,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA0CtB;;;WAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QASH,qDAAqD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA+BrD,6FAA6F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAK7F,kGAAkG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAKlG,uEAAuE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QASvE,kEAAkE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAM5D,CAAA;AACV,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAA;AAEhD,OAAO,EAAE,EAAE,EAAE,CAAA"}
1
+ {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../../src/contract/router.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,EAAE,EAAiE,MAAM,aAAa,CAAA;AAK/F,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA0CtB;;;WAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QASH,qDAAqD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA+BrD,6FAA6F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAK7F,kGAAkG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAKlG,uEAAuE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QASvE,kEAAkE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAYlE,qFAAqF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAKrF,wCAAwC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAKxC;;;WAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAQH,6FAA6F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAK7F,wEAAwE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAMlE,CAAA;AACV,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAA;AAEhD,OAAO,EAAE,EAAE,EAAE,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import { baseContract, Id, PageInput, page, WorkspaceId } from '@kernhq/contracts';
2
2
  import { z } from 'zod';
3
- import { Ok, Page, PageKind, PageNode, Space, SpaceVisibility } from './models.js';
3
+ import { Ok, Page, PageKind, PageNode, PageVersion, Space, SpaceVisibility } from './models.js';
4
4
  const ws = z.object({ workspaceId: WorkspaceId });
5
5
  const t = (...tags) => ({ tags });
6
6
  export const quireContract = {
@@ -104,6 +104,42 @@ export const quireContract = {
104
104
  .input(ws.extend({ pageId: Id }))
105
105
  .output(z.object({ ok: z.literal(true), count: z.number().int().nonnegative() })),
106
106
  },
107
+ versions: {
108
+ list: baseContract
109
+ .route({ method: 'GET', path: '/pages/{pageId}/versions', ...t('versions') })
110
+ .input(ws.extend({ pageId: Id }).extend(PageInput.shape))
111
+ .output(page(PageVersion)),
112
+ /** The prose of one version, rendered as text — enough to read it and to diff it. */
113
+ get: baseContract
114
+ .route({ method: 'GET', path: '/versions/{versionId}', ...t('versions') })
115
+ .input(ws.extend({ versionId: Id }))
116
+ .output(PageVersion.extend({ text: z.string() })),
117
+ /** Take one now, and give it a name. */
118
+ create: baseContract
119
+ .route({ method: 'POST', path: '/pages/{pageId}/versions', ...t('versions') })
120
+ .input(ws.extend({ pageId: Id, label: z.string().min(1).max(120).nullable().default(null) }))
121
+ .output(PageVersion),
122
+ /**
123
+ * Put an older version back. It is applied to the live document rather than written behind the
124
+ * people editing it, and the state it replaced is kept as a version of its own first.
125
+ */
126
+ restore: baseContract
127
+ .route({ method: 'POST', path: '/versions/{versionId}/restore', ...t('versions') })
128
+ .input(ws.extend({ versionId: Id }))
129
+ .output(PageVersion),
130
+ },
131
+ publishing: {
132
+ /** Make what is written now the version readers are served. Only meaningful for a `page`. */
133
+ publish: baseContract
134
+ .route({ method: 'POST', path: '/pages/{pageId}/publish', ...t('publishing') })
135
+ .input(ws.extend({ pageId: Id, label: z.string().min(1).max(120).nullable().default(null) }))
136
+ .output(Page),
137
+ /** Throw the draft away and go back to what readers can already see. */
138
+ revert: baseContract
139
+ .route({ method: 'POST', path: '/pages/{pageId}/revert', ...t('publishing') })
140
+ .input(ws.extend({ pageId: Id }))
141
+ .output(Page),
142
+ },
107
143
  };
108
144
  export { Ok };
109
145
  //# sourceMappingURL=router.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/contract/router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"router.js","sourceRoot":"","sources":["../../src/contract/router.ts"],"names":[],"mappings":"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"}