@spacefast/common 0.0.9 → 0.0.10

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 (78) hide show
  1. package/dist/contracts/activity.d.ts +1 -1
  2. package/dist/contracts/activity.js +11 -6
  3. package/dist/contracts/annotations.d.ts +2 -0
  4. package/dist/contracts/annotations.js +2 -1
  5. package/dist/contracts/api-keys.d.ts +4 -0
  6. package/dist/contracts/api-keys.js +4 -0
  7. package/dist/contracts/archives.d.ts +2 -8
  8. package/dist/contracts/archives.js +3 -8
  9. package/dist/contracts/builds.d.ts +1 -0
  10. package/dist/contracts/builds.js +5 -0
  11. package/dist/contracts/comments.d.ts +309 -0
  12. package/dist/contracts/comments.js +200 -0
  13. package/dist/contracts/device-auth.d.ts +221 -1
  14. package/dist/contracts/device-auth.js +106 -4
  15. package/dist/contracts/device-team-scope.d.ts +10 -0
  16. package/dist/contracts/device-team-scope.js +17 -0
  17. package/dist/contracts/error-code-meta.d.ts +52 -0
  18. package/dist/contracts/error-code-meta.js +13 -0
  19. package/dist/contracts/error-codes.d.ts +1 -1
  20. package/dist/contracts/error-codes.js +13 -0
  21. package/dist/contracts/features.d.ts +37 -38
  22. package/dist/contracts/features.js +51 -59
  23. package/dist/contracts/generated-feature-launch-entries.d.ts +2 -2
  24. package/dist/contracts/generated-feature-launch-entries.js +6 -6
  25. package/dist/contracts/ids.d.ts +1 -1
  26. package/dist/contracts/ids.js +1 -1
  27. package/dist/contracts/oauth-resources.d.ts +7 -0
  28. package/dist/contracts/oauth-resources.js +10 -2
  29. package/dist/contracts/operations.d.ts +1 -3
  30. package/dist/contracts/operations.js +5 -1
  31. package/dist/contracts/pages.d.ts +70 -0
  32. package/dist/contracts/pages.js +89 -0
  33. package/dist/contracts/publishes.d.ts +5 -0
  34. package/dist/contracts/publishes.js +25 -8
  35. package/dist/contracts/resources.d.ts +14 -62
  36. package/dist/contracts/runtime-api.d.ts +13 -15
  37. package/dist/contracts/runtime-api.js +12 -70
  38. package/dist/contracts/space-config.d.ts +32 -90
  39. package/dist/contracts/space-config.js +49 -54
  40. package/dist/contracts/spaces.d.ts +47 -187
  41. package/dist/contracts/spaces.js +19 -3
  42. package/dist/contracts/superadmin-spaces.d.ts +14 -62
  43. package/dist/contracts/superadmin-teams.d.ts +79 -0
  44. package/dist/contracts/superadmin-teams.js +36 -0
  45. package/dist/contracts/superadmin.d.ts +2 -0
  46. package/dist/contracts/superadmin.js +1 -0
  47. package/dist/contracts/teams.d.ts +1 -0
  48. package/dist/contracts/teams.js +8 -0
  49. package/dist/contracts/theme-json.js +4 -5
  50. package/dist/dashboard-paths/index.d.ts +31 -0
  51. package/dist/dashboard-paths/index.js +80 -0
  52. package/dist/docs/agent-handoff-document.d.ts +15 -0
  53. package/dist/docs/agent-handoff-document.js +179 -0
  54. package/dist/docs/agent-setup.d.ts +12 -1
  55. package/dist/docs/agent-setup.js +30 -16
  56. package/dist/docs/catalog.d.ts +2 -2
  57. package/dist/docs/catalog.js +2 -2
  58. package/dist/docs/error-docs.js +52 -0
  59. package/dist/utils/asset-fingerprint.d.ts +53 -0
  60. package/dist/utils/asset-fingerprint.js +574 -0
  61. package/dist/utils/credential-policy.d.ts +5 -0
  62. package/dist/utils/credential-policy.js +31 -8
  63. package/dist/utils/pages.d.ts +53 -0
  64. package/dist/utils/pages.js +274 -0
  65. package/dist/utils/query-keys.d.ts +4 -3
  66. package/dist/utils/query-keys.js +4 -3
  67. package/dist/utils/space-config.d.ts +2 -2
  68. package/dist/utils/space-config.js +1 -1
  69. package/dist/utils/wpcom-auth-redirects.d.ts +0 -4
  70. package/dist/utils/wpcom-auth-redirects.js +0 -6
  71. package/dist/vocabulary.d.ts +2 -2
  72. package/package.json +6 -1
  73. package/dist/contracts/space-theme.d.ts +0 -25
  74. package/dist/contracts/space-theme.js +0 -49
  75. package/dist/utils/gate-theme.d.ts +0 -61
  76. package/dist/utils/gate-theme.js +0 -217
  77. package/dist/utils/space-theme.d.ts +0 -18
  78. package/dist/utils/space-theme.js +0 -98
@@ -129,37 +129,13 @@ export declare const SpaceCreateResponseSchema: z.ZodObject<{
129
129
  }, z.core.$strip>>;
130
130
  templates: z.ZodOptional<z.ZodArray<z.ZodString>>;
131
131
  theme: z.ZodOptional<z.ZodObject<{
132
- color: z.ZodOptional<z.ZodObject<{
133
- palette: z.ZodOptional<z.ZodArray<z.ZodObject<{
134
- slug: z.ZodString;
135
- color: z.ZodString;
136
- name: z.ZodOptional<z.ZodString>;
137
- }, z.core.$strip>>>;
138
- }, z.core.$strip>>;
139
- typography: z.ZodOptional<z.ZodObject<{
140
- fontSizes: z.ZodOptional<z.ZodArray<z.ZodObject<{
141
- slug: z.ZodString;
142
- size: z.ZodString;
143
- name: z.ZodOptional<z.ZodString>;
144
- }, z.core.$strip>>>;
145
- fontFamily: z.ZodOptional<z.ZodString>;
146
- }, z.core.$strip>>;
147
- spacing: z.ZodOptional<z.ZodObject<{
148
- spacingScale: z.ZodOptional<z.ZodArray<z.ZodObject<{
149
- slug: z.ZodString;
150
- size: z.ZodString;
151
- }, z.core.$strip>>>;
152
- }, z.core.$strip>>;
153
- }, z.core.$strip>>;
154
- pages: z.ZodOptional<z.ZodObject<{
155
- theme: z.ZodOptional<z.ZodObject<{
156
- accent: z.ZodOptional<z.ZodString>;
157
- background: z.ZodOptional<z.ZodString>;
158
- logo: z.ZodOptional<z.ZodString>;
159
- name: z.ZodOptional<z.ZodString>;
160
- fontFamily: z.ZodOptional<z.ZodString>;
161
- }, z.core.$strip>>;
162
- }, z.core.$strip>>;
132
+ accent: z.ZodOptional<z.ZodString>;
133
+ background: z.ZodOptional<z.ZodString>;
134
+ logo: z.ZodOptional<z.ZodString>;
135
+ name: z.ZodOptional<z.ZodString>;
136
+ font: z.ZodOptional<z.ZodString>;
137
+ hideSpacefastBranding: z.ZodOptional<z.ZodBoolean>;
138
+ }, z.core.$strict>>;
163
139
  build: z.ZodOptional<z.ZodObject<{
164
140
  rootDirectory: z.ZodOptional<z.ZodNullable<z.ZodString>>;
165
141
  installDirectory: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -419,37 +395,13 @@ export declare const spaceCreateSchema: z.ZodDefault<z.ZodOptional<z.ZodObject<{
419
395
  }, z.core.$strip>>;
420
396
  templates: z.ZodOptional<z.ZodArray<z.ZodString>>;
421
397
  theme: z.ZodOptional<z.ZodObject<{
422
- color: z.ZodOptional<z.ZodObject<{
423
- palette: z.ZodOptional<z.ZodArray<z.ZodObject<{
424
- slug: z.ZodString;
425
- color: z.ZodString;
426
- name: z.ZodOptional<z.ZodString>;
427
- }, z.core.$strip>>>;
428
- }, z.core.$strip>>;
429
- typography: z.ZodOptional<z.ZodObject<{
430
- fontSizes: z.ZodOptional<z.ZodArray<z.ZodObject<{
431
- slug: z.ZodString;
432
- size: z.ZodString;
433
- name: z.ZodOptional<z.ZodString>;
434
- }, z.core.$strip>>>;
435
- fontFamily: z.ZodOptional<z.ZodString>;
436
- }, z.core.$strip>>;
437
- spacing: z.ZodOptional<z.ZodObject<{
438
- spacingScale: z.ZodOptional<z.ZodArray<z.ZodObject<{
439
- slug: z.ZodString;
440
- size: z.ZodString;
441
- }, z.core.$strip>>>;
442
- }, z.core.$strip>>;
443
- }, z.core.$strip>>;
444
- pages: z.ZodOptional<z.ZodObject<{
445
- theme: z.ZodOptional<z.ZodObject<{
446
- accent: z.ZodOptional<z.ZodString>;
447
- background: z.ZodOptional<z.ZodString>;
448
- logo: z.ZodOptional<z.ZodString>;
449
- name: z.ZodOptional<z.ZodString>;
450
- fontFamily: z.ZodOptional<z.ZodString>;
451
- }, z.core.$strip>>;
452
- }, z.core.$strip>>;
398
+ accent: z.ZodOptional<z.ZodString>;
399
+ background: z.ZodOptional<z.ZodString>;
400
+ logo: z.ZodOptional<z.ZodString>;
401
+ name: z.ZodOptional<z.ZodString>;
402
+ font: z.ZodOptional<z.ZodString>;
403
+ hideSpacefastBranding: z.ZodOptional<z.ZodBoolean>;
404
+ }, z.core.$strict>>;
453
405
  build: z.ZodOptional<z.ZodObject<{
454
406
  rootDirectory: z.ZodOptional<z.ZodNullable<z.ZodString>>;
455
407
  installDirectory: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -527,37 +479,13 @@ export declare const spacePatchSchema: z.ZodObject<{
527
479
  }, z.core.$strip>>;
528
480
  templates: z.ZodOptional<z.ZodArray<z.ZodString>>;
529
481
  theme: z.ZodOptional<z.ZodObject<{
530
- color: z.ZodOptional<z.ZodObject<{
531
- palette: z.ZodOptional<z.ZodArray<z.ZodObject<{
532
- slug: z.ZodString;
533
- color: z.ZodString;
534
- name: z.ZodOptional<z.ZodString>;
535
- }, z.core.$strip>>>;
536
- }, z.core.$strip>>;
537
- typography: z.ZodOptional<z.ZodObject<{
538
- fontSizes: z.ZodOptional<z.ZodArray<z.ZodObject<{
539
- slug: z.ZodString;
540
- size: z.ZodString;
541
- name: z.ZodOptional<z.ZodString>;
542
- }, z.core.$strip>>>;
543
- fontFamily: z.ZodOptional<z.ZodString>;
544
- }, z.core.$strip>>;
545
- spacing: z.ZodOptional<z.ZodObject<{
546
- spacingScale: z.ZodOptional<z.ZodArray<z.ZodObject<{
547
- slug: z.ZodString;
548
- size: z.ZodString;
549
- }, z.core.$strip>>>;
550
- }, z.core.$strip>>;
551
- }, z.core.$strip>>;
552
- pages: z.ZodOptional<z.ZodObject<{
553
- theme: z.ZodOptional<z.ZodObject<{
554
- accent: z.ZodOptional<z.ZodString>;
555
- background: z.ZodOptional<z.ZodString>;
556
- logo: z.ZodOptional<z.ZodString>;
557
- name: z.ZodOptional<z.ZodString>;
558
- fontFamily: z.ZodOptional<z.ZodString>;
559
- }, z.core.$strip>>;
560
- }, z.core.$strip>>;
482
+ accent: z.ZodOptional<z.ZodString>;
483
+ background: z.ZodOptional<z.ZodString>;
484
+ logo: z.ZodOptional<z.ZodString>;
485
+ name: z.ZodOptional<z.ZodString>;
486
+ font: z.ZodOptional<z.ZodString>;
487
+ hideSpacefastBranding: z.ZodOptional<z.ZodBoolean>;
488
+ }, z.core.$strict>>;
561
489
  build: z.ZodOptional<z.ZodObject<{
562
490
  rootDirectory: z.ZodOptional<z.ZodNullable<z.ZodString>>;
563
491
  installDirectory: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -600,7 +528,7 @@ export declare const spacePatchSchema: z.ZodObject<{
600
528
  }, z.core.$strict>>;
601
529
  noindex: z.ZodOptional<z.ZodBoolean>;
602
530
  password: z.ZodOptional<z.ZodNullable<z.ZodString>>;
603
- }, z.core.$strip>;
531
+ }, z.core.$strict>;
604
532
  export declare const spaceClaimSchema: z.ZodObject<{
605
533
  claimToken: z.ZodString;
606
534
  teamId: z.ZodOptional<z.ZodString>;
@@ -648,6 +576,10 @@ export declare const anonymousClaimResponseSchema: z.ZodObject<{
648
576
  expiresAt: z.ZodNullable<z.ZodString>;
649
577
  claimedAt: z.ZodNullable<z.ZodString>;
650
578
  }, z.core.$strip>;
579
+ continuation: z.ZodObject<{
580
+ eligible: z.ZodBoolean;
581
+ granted: z.ZodBoolean;
582
+ }, z.core.$strip>;
651
583
  teams: z.ZodOptional<z.ZodArray<z.ZodObject<{
652
584
  id: z.ZodString;
653
585
  slug: z.ZodString;
@@ -888,37 +820,13 @@ export declare const spaceVersionListSchema: z.ZodObject<{
888
820
  }, z.core.$strip>>;
889
821
  templates: z.ZodOptional<z.ZodArray<z.ZodString>>;
890
822
  theme: z.ZodOptional<z.ZodObject<{
891
- color: z.ZodOptional<z.ZodObject<{
892
- palette: z.ZodOptional<z.ZodArray<z.ZodObject<{
893
- slug: z.ZodString;
894
- color: z.ZodString;
895
- name: z.ZodOptional<z.ZodString>;
896
- }, z.core.$strip>>>;
897
- }, z.core.$strip>>;
898
- typography: z.ZodOptional<z.ZodObject<{
899
- fontSizes: z.ZodOptional<z.ZodArray<z.ZodObject<{
900
- slug: z.ZodString;
901
- size: z.ZodString;
902
- name: z.ZodOptional<z.ZodString>;
903
- }, z.core.$strip>>>;
904
- fontFamily: z.ZodOptional<z.ZodString>;
905
- }, z.core.$strip>>;
906
- spacing: z.ZodOptional<z.ZodObject<{
907
- spacingScale: z.ZodOptional<z.ZodArray<z.ZodObject<{
908
- slug: z.ZodString;
909
- size: z.ZodString;
910
- }, z.core.$strip>>>;
911
- }, z.core.$strip>>;
912
- }, z.core.$strip>>;
913
- pages: z.ZodOptional<z.ZodObject<{
914
- theme: z.ZodOptional<z.ZodObject<{
915
- accent: z.ZodOptional<z.ZodString>;
916
- background: z.ZodOptional<z.ZodString>;
917
- logo: z.ZodOptional<z.ZodString>;
918
- name: z.ZodOptional<z.ZodString>;
919
- fontFamily: z.ZodOptional<z.ZodString>;
920
- }, z.core.$strip>>;
921
- }, z.core.$strip>>;
823
+ accent: z.ZodOptional<z.ZodString>;
824
+ background: z.ZodOptional<z.ZodString>;
825
+ logo: z.ZodOptional<z.ZodString>;
826
+ name: z.ZodOptional<z.ZodString>;
827
+ font: z.ZodOptional<z.ZodString>;
828
+ hideSpacefastBranding: z.ZodOptional<z.ZodBoolean>;
829
+ }, z.core.$strict>>;
922
830
  build: z.ZodOptional<z.ZodObject<{
923
831
  rootDirectory: z.ZodOptional<z.ZodNullable<z.ZodString>>;
924
832
  installDirectory: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -1151,37 +1059,13 @@ export declare const spaceListSchema: z.ZodObject<{
1151
1059
  }, z.core.$strip>>;
1152
1060
  templates: z.ZodOptional<z.ZodArray<z.ZodString>>;
1153
1061
  theme: z.ZodOptional<z.ZodObject<{
1154
- color: z.ZodOptional<z.ZodObject<{
1155
- palette: z.ZodOptional<z.ZodArray<z.ZodObject<{
1156
- slug: z.ZodString;
1157
- color: z.ZodString;
1158
- name: z.ZodOptional<z.ZodString>;
1159
- }, z.core.$strip>>>;
1160
- }, z.core.$strip>>;
1161
- typography: z.ZodOptional<z.ZodObject<{
1162
- fontSizes: z.ZodOptional<z.ZodArray<z.ZodObject<{
1163
- slug: z.ZodString;
1164
- size: z.ZodString;
1165
- name: z.ZodOptional<z.ZodString>;
1166
- }, z.core.$strip>>>;
1167
- fontFamily: z.ZodOptional<z.ZodString>;
1168
- }, z.core.$strip>>;
1169
- spacing: z.ZodOptional<z.ZodObject<{
1170
- spacingScale: z.ZodOptional<z.ZodArray<z.ZodObject<{
1171
- slug: z.ZodString;
1172
- size: z.ZodString;
1173
- }, z.core.$strip>>>;
1174
- }, z.core.$strip>>;
1175
- }, z.core.$strip>>;
1176
- pages: z.ZodOptional<z.ZodObject<{
1177
- theme: z.ZodOptional<z.ZodObject<{
1178
- accent: z.ZodOptional<z.ZodString>;
1179
- background: z.ZodOptional<z.ZodString>;
1180
- logo: z.ZodOptional<z.ZodString>;
1181
- name: z.ZodOptional<z.ZodString>;
1182
- fontFamily: z.ZodOptional<z.ZodString>;
1183
- }, z.core.$strip>>;
1184
- }, z.core.$strip>>;
1062
+ accent: z.ZodOptional<z.ZodString>;
1063
+ background: z.ZodOptional<z.ZodString>;
1064
+ logo: z.ZodOptional<z.ZodString>;
1065
+ name: z.ZodOptional<z.ZodString>;
1066
+ font: z.ZodOptional<z.ZodString>;
1067
+ hideSpacefastBranding: z.ZodOptional<z.ZodBoolean>;
1068
+ }, z.core.$strict>>;
1185
1069
  build: z.ZodOptional<z.ZodObject<{
1186
1070
  rootDirectory: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1187
1071
  installDirectory: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -2334,37 +2218,13 @@ export declare const publishRequestSchema: z.ZodObject<{
2334
2218
  }, z.core.$strip>>;
2335
2219
  templates: z.ZodOptional<z.ZodArray<z.ZodString>>;
2336
2220
  theme: z.ZodOptional<z.ZodObject<{
2337
- color: z.ZodOptional<z.ZodObject<{
2338
- palette: z.ZodOptional<z.ZodArray<z.ZodObject<{
2339
- slug: z.ZodString;
2340
- color: z.ZodString;
2341
- name: z.ZodOptional<z.ZodString>;
2342
- }, z.core.$strip>>>;
2343
- }, z.core.$strip>>;
2344
- typography: z.ZodOptional<z.ZodObject<{
2345
- fontSizes: z.ZodOptional<z.ZodArray<z.ZodObject<{
2346
- slug: z.ZodString;
2347
- size: z.ZodString;
2348
- name: z.ZodOptional<z.ZodString>;
2349
- }, z.core.$strip>>>;
2350
- fontFamily: z.ZodOptional<z.ZodString>;
2351
- }, z.core.$strip>>;
2352
- spacing: z.ZodOptional<z.ZodObject<{
2353
- spacingScale: z.ZodOptional<z.ZodArray<z.ZodObject<{
2354
- slug: z.ZodString;
2355
- size: z.ZodString;
2356
- }, z.core.$strip>>>;
2357
- }, z.core.$strip>>;
2358
- }, z.core.$strip>>;
2359
- pages: z.ZodOptional<z.ZodObject<{
2360
- theme: z.ZodOptional<z.ZodObject<{
2361
- accent: z.ZodOptional<z.ZodString>;
2362
- background: z.ZodOptional<z.ZodString>;
2363
- logo: z.ZodOptional<z.ZodString>;
2364
- name: z.ZodOptional<z.ZodString>;
2365
- fontFamily: z.ZodOptional<z.ZodString>;
2366
- }, z.core.$strip>>;
2367
- }, z.core.$strip>>;
2221
+ accent: z.ZodOptional<z.ZodString>;
2222
+ background: z.ZodOptional<z.ZodString>;
2223
+ logo: z.ZodOptional<z.ZodString>;
2224
+ name: z.ZodOptional<z.ZodString>;
2225
+ font: z.ZodOptional<z.ZodString>;
2226
+ hideSpacefastBranding: z.ZodOptional<z.ZodBoolean>;
2227
+ }, z.core.$strict>>;
2368
2228
  build: z.ZodOptional<z.ZodObject<{
2369
2229
  rootDirectory: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2370
2230
  installDirectory: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -95,6 +95,12 @@ export const spacePatchSchema = z
95
95
  .optional()
96
96
  .describe("Sets (string) or removes (null) space password protection."),
97
97
  })
98
+ // Strict so an unknown field (notably `slug`) is rejected with a validation
99
+ // error rather than silently stripped. Slug rename is a deliberately
100
+ // post-flip surface (its dormant reserve/commit core + retained-hostname 308
101
+ // serving land with the slug-rename activation card); accepting-and-dropping
102
+ // `slug` here would be a silent no-op, so the live PATCH must refuse it.
103
+ .strict()
98
104
  .superRefine((value, ctx) => {
99
105
  if (value.force === true && value.baseSettingsDigest === undefined) {
100
106
  ctx.addIssue({
@@ -123,7 +129,7 @@ export const spaceClaimSchema = z
123
129
  agentContinuation: z
124
130
  .boolean()
125
131
  .optional()
126
- .describe("Keep the publishing agent authorized after the claim (default false unless explicitly granted): the claim token demotes to a one-time voucher exchangeable for a durable publish access token."),
132
+ .describe("User consent to keep the publishing agent authorized after the claim. The server independently proves continuation eligibility; consent cannot grant continuation for an ineligible space."),
127
133
  })
128
134
  .superRefine((value, ctx) => {
129
135
  if (value.teamId && value.targetTeamId && value.teamId !== value.targetTeamId) {
@@ -140,14 +146,14 @@ export const anonymousClaimAssignSchema = z.object({
140
146
  agentContinuation: z
141
147
  .boolean()
142
148
  .optional()
143
- .describe("Keep the publishing agent authorized after the claim (default false unless explicitly granted): the claim token demotes to a one-time voucher exchangeable for a durable publish access token."),
149
+ .describe("User consent to keep the publishing agent authorized after the claim. The server independently proves continuation eligibility; consent cannot grant continuation for an ineligible space."),
144
150
  });
145
151
  export const anonymousClaimResolveSchema = z.object({
146
152
  nonce: z.string().min(1).optional().describe("Browser claim nonce from the claim URL fragment."),
147
153
  agentContinuation: z
148
154
  .boolean()
149
155
  .optional()
150
- .describe("Applied when the resolve auto-claims (signed-in user with exactly one writable team). Defaults to false unless explicitly granted."),
156
+ .describe("User consent applied when resolve auto-claims. The server independently proves continuation eligibility; consent cannot grant continuation for an ineligible space."),
151
157
  });
152
158
  export const anonymousClaimTeamSchema = z.object({
153
159
  id: z.string(),
@@ -168,6 +174,16 @@ export const anonymousClaimResponseSchema = z.object({
168
174
  expiresAt: z.string().datetime().nullable(),
169
175
  claimedAt: z.string().datetime().nullable(),
170
176
  }),
177
+ continuation: z
178
+ .object({
179
+ eligible: z
180
+ .boolean()
181
+ .describe("Server-proven: the publish intent records an originating agent holding the claim token, the one-time exchange is unredeemed, and a safe secretless return exists. Only then may the UI offer continuation."),
182
+ granted: z
183
+ .boolean()
184
+ .describe("True once the claim left the one-time continuation exchange open for the originating agent."),
185
+ })
186
+ .describe("Server-authoritative continuation eligibility and claim result."),
171
187
  teams: z.array(anonymousClaimTeamSchema).optional(),
172
188
  });
173
189
  export const anonymousClaimStatusResponseSchema = z.object({
@@ -238,37 +238,13 @@ export declare const SuperadminSpaceDetailSchema: z.ZodObject<{
238
238
  }, z.core.$strip>>;
239
239
  templates: z.ZodOptional<z.ZodArray<z.ZodString>>;
240
240
  theme: z.ZodOptional<z.ZodObject<{
241
- color: z.ZodOptional<z.ZodObject<{
242
- palette: z.ZodOptional<z.ZodArray<z.ZodObject<{
243
- slug: z.ZodString;
244
- color: z.ZodString;
245
- name: z.ZodOptional<z.ZodString>;
246
- }, z.core.$strip>>>;
247
- }, z.core.$strip>>;
248
- typography: z.ZodOptional<z.ZodObject<{
249
- fontSizes: z.ZodOptional<z.ZodArray<z.ZodObject<{
250
- slug: z.ZodString;
251
- size: z.ZodString;
252
- name: z.ZodOptional<z.ZodString>;
253
- }, z.core.$strip>>>;
254
- fontFamily: z.ZodOptional<z.ZodString>;
255
- }, z.core.$strip>>;
256
- spacing: z.ZodOptional<z.ZodObject<{
257
- spacingScale: z.ZodOptional<z.ZodArray<z.ZodObject<{
258
- slug: z.ZodString;
259
- size: z.ZodString;
260
- }, z.core.$strip>>>;
261
- }, z.core.$strip>>;
262
- }, z.core.$strip>>;
263
- pages: z.ZodOptional<z.ZodObject<{
264
- theme: z.ZodOptional<z.ZodObject<{
265
- accent: z.ZodOptional<z.ZodString>;
266
- background: z.ZodOptional<z.ZodString>;
267
- logo: z.ZodOptional<z.ZodString>;
268
- name: z.ZodOptional<z.ZodString>;
269
- fontFamily: z.ZodOptional<z.ZodString>;
270
- }, z.core.$strip>>;
271
- }, z.core.$strip>>;
241
+ accent: z.ZodOptional<z.ZodString>;
242
+ background: z.ZodOptional<z.ZodString>;
243
+ logo: z.ZodOptional<z.ZodString>;
244
+ name: z.ZodOptional<z.ZodString>;
245
+ font: z.ZodOptional<z.ZodString>;
246
+ hideSpacefastBranding: z.ZodOptional<z.ZodBoolean>;
247
+ }, z.core.$strict>>;
272
248
  build: z.ZodOptional<z.ZodObject<{
273
249
  rootDirectory: z.ZodOptional<z.ZodNullable<z.ZodString>>;
274
250
  installDirectory: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -647,37 +623,13 @@ export declare const SuperadminAnonymousSpaceAssignResponseSchema: z.ZodObject<{
647
623
  }, z.core.$strip>>;
648
624
  templates: z.ZodOptional<z.ZodArray<z.ZodString>>;
649
625
  theme: z.ZodOptional<z.ZodObject<{
650
- color: z.ZodOptional<z.ZodObject<{
651
- palette: z.ZodOptional<z.ZodArray<z.ZodObject<{
652
- slug: z.ZodString;
653
- color: z.ZodString;
654
- name: z.ZodOptional<z.ZodString>;
655
- }, z.core.$strip>>>;
656
- }, z.core.$strip>>;
657
- typography: z.ZodOptional<z.ZodObject<{
658
- fontSizes: z.ZodOptional<z.ZodArray<z.ZodObject<{
659
- slug: z.ZodString;
660
- size: z.ZodString;
661
- name: z.ZodOptional<z.ZodString>;
662
- }, z.core.$strip>>>;
663
- fontFamily: z.ZodOptional<z.ZodString>;
664
- }, z.core.$strip>>;
665
- spacing: z.ZodOptional<z.ZodObject<{
666
- spacingScale: z.ZodOptional<z.ZodArray<z.ZodObject<{
667
- slug: z.ZodString;
668
- size: z.ZodString;
669
- }, z.core.$strip>>>;
670
- }, z.core.$strip>>;
671
- }, z.core.$strip>>;
672
- pages: z.ZodOptional<z.ZodObject<{
673
- theme: z.ZodOptional<z.ZodObject<{
674
- accent: z.ZodOptional<z.ZodString>;
675
- background: z.ZodOptional<z.ZodString>;
676
- logo: z.ZodOptional<z.ZodString>;
677
- name: z.ZodOptional<z.ZodString>;
678
- fontFamily: z.ZodOptional<z.ZodString>;
679
- }, z.core.$strip>>;
680
- }, z.core.$strip>>;
626
+ accent: z.ZodOptional<z.ZodString>;
627
+ background: z.ZodOptional<z.ZodString>;
628
+ logo: z.ZodOptional<z.ZodString>;
629
+ name: z.ZodOptional<z.ZodString>;
630
+ font: z.ZodOptional<z.ZodString>;
631
+ hideSpacefastBranding: z.ZodOptional<z.ZodBoolean>;
632
+ }, z.core.$strict>>;
681
633
  build: z.ZodOptional<z.ZodObject<{
682
634
  rootDirectory: z.ZodOptional<z.ZodNullable<z.ZodString>>;
683
635
  installDirectory: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -0,0 +1,79 @@
1
+ import { z } from "zod";
2
+ export declare const SuperadminTeamSchema: z.ZodObject<{
3
+ id: z.ZodString;
4
+ tenantId: z.ZodString;
5
+ name: z.ZodString;
6
+ slug: z.ZodString;
7
+ logo: z.ZodNullable<z.ZodString>;
8
+ defaultDataLocation: z.ZodNullable<z.ZodString>;
9
+ stripeCustomerId: z.ZodNullable<z.ZodString>;
10
+ deletedAt: z.ZodNullable<z.ZodString>;
11
+ memberCount: z.ZodNumber;
12
+ spaceCount: z.ZodNumber;
13
+ createdAt: z.ZodString;
14
+ updatedAt: z.ZodString;
15
+ }, z.core.$strip>;
16
+ export declare const SuperadminTeamMemberSchema: z.ZodObject<{
17
+ membershipId: z.ZodString;
18
+ role: z.ZodString;
19
+ joinedAt: z.ZodString;
20
+ userId: z.ZodString;
21
+ userName: z.ZodString;
22
+ userEmail: z.ZodString;
23
+ userBanned: z.ZodBoolean;
24
+ }, z.core.$strip>;
25
+ export declare const SuperadminTeamDetailSchema: z.ZodObject<{
26
+ id: z.ZodString;
27
+ tenantId: z.ZodString;
28
+ name: z.ZodString;
29
+ slug: z.ZodString;
30
+ logo: z.ZodNullable<z.ZodString>;
31
+ defaultDataLocation: z.ZodNullable<z.ZodString>;
32
+ stripeCustomerId: z.ZodNullable<z.ZodString>;
33
+ deletedAt: z.ZodNullable<z.ZodString>;
34
+ memberCount: z.ZodNumber;
35
+ spaceCount: z.ZodNumber;
36
+ createdAt: z.ZodString;
37
+ updatedAt: z.ZodString;
38
+ members: z.ZodArray<z.ZodObject<{
39
+ membershipId: z.ZodString;
40
+ role: z.ZodString;
41
+ joinedAt: z.ZodString;
42
+ userId: z.ZodString;
43
+ userName: z.ZodString;
44
+ userEmail: z.ZodString;
45
+ userBanned: z.ZodBoolean;
46
+ }, z.core.$strip>>;
47
+ }, z.core.$strip>;
48
+ export declare const SuperadminTeamListSchema: z.ZodObject<{
49
+ teams: z.ZodArray<z.ZodObject<{
50
+ id: z.ZodString;
51
+ tenantId: z.ZodString;
52
+ name: z.ZodString;
53
+ slug: z.ZodString;
54
+ logo: z.ZodNullable<z.ZodString>;
55
+ defaultDataLocation: z.ZodNullable<z.ZodString>;
56
+ stripeCustomerId: z.ZodNullable<z.ZodString>;
57
+ deletedAt: z.ZodNullable<z.ZodString>;
58
+ memberCount: z.ZodNumber;
59
+ spaceCount: z.ZodNumber;
60
+ createdAt: z.ZodString;
61
+ updatedAt: z.ZodString;
62
+ }, z.core.$strip>>;
63
+ total: z.ZodNumber;
64
+ limit: z.ZodNumber;
65
+ offset: z.ZodNumber;
66
+ pagination: z.ZodObject<{
67
+ count: z.ZodNumber;
68
+ next: z.ZodNullable<z.ZodNumber>;
69
+ prev: z.ZodNullable<z.ZodNumber>;
70
+ }, z.core.$strip>;
71
+ }, z.core.$strip>;
72
+ export declare const superadminTeamListQuerySchema: z.ZodObject<{
73
+ limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
74
+ offset: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
75
+ search: z.ZodOptional<z.ZodString>;
76
+ tenantId: z.ZodOptional<z.ZodString>;
77
+ }, z.core.$strip>;
78
+ export type SuperadminTeam = z.infer<typeof SuperadminTeamSchema>;
79
+ export type SuperadminTeamDetail = z.infer<typeof SuperadminTeamDetailSchema>;
@@ -0,0 +1,36 @@
1
+ import { z } from "zod";
2
+ import { makeOffsetListSchema } from "./common.js";
3
+ import { superadminPaginationSchema } from "./superadmin.js";
4
+ export const SuperadminTeamSchema = z.object({
5
+ id: z.string(),
6
+ tenantId: z.string(),
7
+ name: z.string(),
8
+ slug: z.string(),
9
+ logo: z.string().nullable(),
10
+ defaultDataLocation: z.string().nullable(),
11
+ stripeCustomerId: z.string().nullable(),
12
+ deletedAt: z.string().datetime().nullable(),
13
+ memberCount: z.number().int().nonnegative(),
14
+ spaceCount: z.number().int().nonnegative(),
15
+ createdAt: z.string().datetime(),
16
+ updatedAt: z.string().datetime(),
17
+ });
18
+ export const SuperadminTeamMemberSchema = z.object({
19
+ membershipId: z.string(),
20
+ role: z.string(),
21
+ joinedAt: z.string().datetime(),
22
+ userId: z.string(),
23
+ userName: z.string(),
24
+ userEmail: z.string().email(),
25
+ userBanned: z.boolean(),
26
+ });
27
+ export const SuperadminTeamDetailSchema = SuperadminTeamSchema.extend({
28
+ members: z.array(SuperadminTeamMemberSchema),
29
+ });
30
+ export const SuperadminTeamListSchema = makeOffsetListSchema("teams", SuperadminTeamSchema, superadminPaginationSchema);
31
+ export const superadminTeamListQuerySchema = z.object({
32
+ limit: z.coerce.number().int().min(1).max(100).default(100),
33
+ offset: z.coerce.number().int().min(0).default(0),
34
+ search: z.string().trim().optional(),
35
+ tenantId: z.string().trim().optional(),
36
+ });
@@ -398,6 +398,7 @@ export declare const SuperadminWpCloudSiteSchema: z.ZodObject<{
398
398
  }, z.core.$strip>>;
399
399
  domainName: z.ZodNullable<z.ZodString>;
400
400
  createdAt: z.ZodNullable<z.ZodString>;
401
+ observedAt: z.ZodOptional<z.ZodString>;
401
402
  spaceUsed: z.ZodNullable<z.ZodNumber>;
402
403
  orphaned: z.ZodBoolean;
403
404
  routingStatus: z.ZodEnum<{
@@ -465,6 +466,7 @@ export declare const SuperadminWpCloudSiteListSchema: z.ZodObject<{
465
466
  }, z.core.$strip>>;
466
467
  domainName: z.ZodNullable<z.ZodString>;
467
468
  createdAt: z.ZodNullable<z.ZodString>;
469
+ observedAt: z.ZodOptional<z.ZodString>;
468
470
  spaceUsed: z.ZodNullable<z.ZodNumber>;
469
471
  orphaned: z.ZodBoolean;
470
472
  routingStatus: z.ZodEnum<{
@@ -235,6 +235,7 @@ export const SuperadminWpCloudSiteSchema = z.object({
235
235
  })),
236
236
  domainName: z.string().nullable(),
237
237
  createdAt: z.string().nullable(),
238
+ observedAt: z.string().datetime().optional(),
238
239
  spaceUsed: z.number().nullable(),
239
240
  orphaned: z.boolean(),
240
241
  routingStatus: z.enum([
@@ -237,6 +237,7 @@ export declare const teamInvitationPreviewSchema: z.ZodObject<{
237
237
  }, z.core.$strip>;
238
238
  export declare const teamCreateSchema: z.ZodObject<{
239
239
  name: z.ZodString;
240
+ slug: z.ZodOptional<z.ZodString>;
240
241
  }, z.core.$strip>;
241
242
  export declare const teamUpdateSchema: z.ZodObject<{
242
243
  name: z.ZodOptional<z.ZodString>;
@@ -166,6 +166,14 @@ export const teamInvitationPreviewSchema = z.object({
166
166
  });
167
167
  export const teamCreateSchema = z.object({
168
168
  name: z.string().trim().min(1).max(255).describe("Display name for the new team."),
169
+ slug: z
170
+ .string()
171
+ .trim()
172
+ .min(1)
173
+ .max(255)
174
+ .meta({ pattern: "^[a-z0-9][a-z0-9-]*[a-z0-9]$|^[a-z0-9]$" })
175
+ .optional()
176
+ .describe("Optional URL slug. When omitted, the lowest available slug is generated."),
169
177
  });
170
178
  export const teamUpdateSchema = z
171
179
  .object({
@@ -1,14 +1,13 @@
1
1
  import { z } from "zod";
2
- // WordPress `theme.json`-compatible subset (access-plan §8 tier 3, middle
3
- // precedence: `sf.theme.jsonc` > `theme.json` > `spacefast.jsonc "pages.theme"`).
2
+ // WordPress `theme.json`-compatible subset used only to infer Pages tokens.
4
3
  // Real WP theme.json carries dozens of unrelated keys (layout, blocks,
5
4
  // customTemplates, styles, ...); this schema accepts the file as a loose
6
- // object (`.passthrough()`) and only VALIDATES the two branches gate pages
5
+ // object (`.passthrough()`) and only validates the two branches Pages
7
6
  // actually consume: `settings.color.palette` and
8
7
  // `settings.typography.fontFamilies`. Everything else rides through
9
8
  // unvalidated and is simply never read — this is not a reimplementation of
10
9
  // WP_Theme_JSON, just the safe slice that reaches presentation-only gate
11
- // pages (access-plan §8).
10
+ // pages.
12
11
  const presetSlug = z
13
12
  .string()
14
13
  .min(1)
@@ -45,4 +44,4 @@ export const themeJsonSchema = z
45
44
  .optional(),
46
45
  })
47
46
  .passthrough()
48
- .describe("WordPress theme.json-compatible file; only color.palette/typography.fontFamilies feed gate pages.");
47
+ .describe("WordPress theme.json-compatible file; only color.palette/typography.fontFamilies infer Pages tokens.");