@rathnasgala2/schemas 3.21.0 → 3.23.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 (50) hide show
  1. package/THIRD_PARTY_LICENSES.json +1 -1
  2. package/diagnostics/diagnostic-map.json +236 -24
  3. package/docs/catalogs/app-components.json +1397 -95
  4. package/docs/catalogs/app-routes.json +413 -3
  5. package/docs/catalogs/schema-inventory.json +5 -5
  6. package/examples/valid/build-input/rules.json +229 -28
  7. package/examples/valid/interactions-config/rules.json +22 -0
  8. package/examples/valid/publication/rules.json +192 -13
  9. package/fixtures/boundary/build-input/rules.json +265 -33
  10. package/fixtures/boundary/interactions-config/rules.json +22 -0
  11. package/fixtures/boundary/publication/rules.json +243 -33
  12. package/fixtures/invalid/build-input/GRAPHEME_LENGTH_INVALID/cases.json +19 -8
  13. package/fixtures/invalid/build-input/REQUEST_FIELD_UNKNOWN/cases.json +80 -16
  14. package/fixtures/invalid/build-input/SCHEMA_ARRAY_DUPLICATE/cases.json +11 -0
  15. package/fixtures/invalid/build-input/SCHEMA_ARRAY_TOO_LONG/cases.json +15 -0
  16. package/fixtures/invalid/build-input/SCHEMA_CONSTANT_INVALID/cases.json +22 -0
  17. package/fixtures/invalid/build-input/SCHEMA_ENUM_INVALID/cases.json +22 -0
  18. package/fixtures/invalid/build-input/SCHEMA_REQUIRED_FIELD_MISSING/cases.json +171 -39
  19. package/fixtures/invalid/build-input/SCHEMA_TYPE_INVALID/cases.json +122 -11
  20. package/fixtures/invalid/build-input/SCHEMA_UNION_INVALID/cases.json +9 -0
  21. package/fixtures/invalid/interactions-config/REQUEST_FIELD_UNKNOWN/cases.json +11 -0
  22. package/fixtures/invalid/interactions-config/SCHEMA_REQUIRED_FIELD_MISSING/cases.json +11 -0
  23. package/fixtures/invalid/interactions-config/SCHEMA_TYPE_INVALID/cases.json +20 -0
  24. package/fixtures/invalid/publication/GRAPHEME_LENGTH_INVALID/cases.json +22 -11
  25. package/fixtures/invalid/publication/REQUEST_FIELD_UNKNOWN/cases.json +62 -9
  26. package/fixtures/invalid/publication/SCHEMA_ARRAY_DUPLICATE/cases.json +13 -0
  27. package/fixtures/invalid/publication/SCHEMA_ARRAY_TOO_LONG/cases.json +15 -0
  28. package/fixtures/invalid/publication/SCHEMA_CONSTANT_INVALID/cases.json +22 -0
  29. package/fixtures/invalid/publication/SCHEMA_ENUM_INVALID/cases.json +22 -0
  30. package/fixtures/invalid/publication/SCHEMA_REQUIRED_FIELD_MISSING/cases.json +143 -20
  31. package/fixtures/invalid/publication/SCHEMA_TYPE_INVALID/cases.json +95 -4
  32. package/fixtures/invalid/publication/SCHEMA_UNION_INVALID/cases.json +11 -0
  33. package/fixtures/manifest.json +1827 -179
  34. package/fixtures/s2/empty-modules-placements.json +943 -0
  35. package/fixtures/s2/manifest.json +13 -1
  36. package/fixtures/s2/normalized-inputs.json +1704 -0
  37. package/fixtures/unknown-field/build-input/rules.json +118 -21
  38. package/fixtures/unknown-field/interactions-config/rules.json +14 -0
  39. package/fixtures/unknown-field/publication/rules.json +92 -9
  40. package/generated/browser/validator-core.mjs +3 -3
  41. package/generated/typescript/contracts/build-input.d.ts +46 -5
  42. package/generated/typescript/contracts/interactions-config.d.ts +3 -0
  43. package/generated/typescript/contracts/publication.d.ts +40 -5
  44. package/openapi/http-catalog.json +496 -2
  45. package/openapi/openapi.yaml +16725 -10691
  46. package/package.json +1 -1
  47. package/sbom.cdx.json +23 -23
  48. package/schemas/build-input.schema.json +91 -4
  49. package/schemas/interactions-config.schema.json +7 -0
  50. package/schemas/publication.schema.json +85 -7
@@ -102,6 +102,15 @@ export type BuildInputColorMode = Readonly<{
102
102
  }> &
103
103
  unknown;
104
104
 
105
+ export type BuildInputContactFormNormalized = Readonly<{
106
+ readonly enabled: boolean;
107
+ readonly fields: Readonly<{
108
+ readonly phone: boolean;
109
+ readonly website: boolean;
110
+ }>;
111
+ readonly intro?: BuildInputRenderableBody;
112
+ }>;
113
+
105
114
  export type BuildInputContentBuildMediaFile = Readonly<{
106
115
  readonly byteLength: number;
107
116
  readonly mediaType:
@@ -200,6 +209,9 @@ export type BuildInputInteractionsConfig = Readonly<{
200
209
  readonly enabled: boolean;
201
210
  readonly maxDepth: number;
202
211
  }>;
212
+ readonly follows?: Readonly<{
213
+ readonly enabled: boolean;
214
+ }>;
203
215
  readonly publicCounts: Readonly<{
204
216
  readonly comments: boolean;
205
217
  readonly reactions: boolean;
@@ -263,6 +275,21 @@ export type BuildInputNavigationNormalized = Readonly<{
263
275
  readonly source: BuildInputNormalizedSource;
264
276
  }>;
265
277
 
278
+ export type BuildInputNewsletter =
279
+ | Readonly<{
280
+ readonly emailContent: 'card' | 'full';
281
+ readonly mode: 'galascribe';
282
+ readonly replyToOwner: boolean;
283
+ readonly text: BuildInputPlainText;
284
+ readonly title: BuildInputPlainLabel;
285
+ }>
286
+ | Readonly<{
287
+ readonly mode?: 'link';
288
+ readonly text: BuildInputPlainText;
289
+ readonly title: BuildInputPlainLabel;
290
+ readonly url: BuildInputUrlHttps;
291
+ }>;
292
+
266
293
  export type BuildInputNormalizedSource =
267
294
  | Readonly<{
268
295
  readonly defaultDigest: BuildInputDigest;
@@ -308,6 +335,7 @@ export type BuildInputPublicationNormalized = Readonly<{
308
335
  readonly authorIds: ReadonlyArray<BuildInputStableId>;
309
336
  readonly canonicalBase: BuildInputUrlHttps;
310
337
  readonly contactAuthorId?: BuildInputStableId;
338
+ readonly contactForm?: BuildInputContactFormNormalized;
311
339
  readonly crawlers?: Readonly<{
312
340
  readonly ai: 'allow' | 'block';
313
341
  }>;
@@ -321,15 +349,12 @@ export type BuildInputPublicationNormalized = Readonly<{
321
349
  readonly heading: BuildInputPlainText;
322
350
  }>;
323
351
  readonly id: BuildInputStableId;
324
- readonly newsletter?: Readonly<{
325
- readonly text: BuildInputPlainText;
326
- readonly title: BuildInputPlainLabel;
327
- readonly url: BuildInputUrlHttps;
328
- }>;
352
+ readonly newsletter?: BuildInputNewsletter;
329
353
  readonly profile?: Readonly<{
330
354
  readonly body: BuildInputRenderableBody;
331
355
  readonly route: BuildInputCanonicalRoute;
332
356
  }>;
357
+ readonly sharing?: BuildInputSharing;
333
358
  readonly slug: BuildInputSlug;
334
359
  readonly socialLinks: ReadonlyArray<BuildInputSocialLink>;
335
360
  readonly sourceDigest: BuildInputDigest;
@@ -419,6 +444,22 @@ export type BuildInputSemver = string;
419
444
 
420
445
  export type BuildInputSemverRange = string;
421
446
 
447
+ export type BuildInputSharing = Readonly<{
448
+ readonly targets: ReadonlyArray<
449
+ | 'copy-link'
450
+ | 'native'
451
+ | 'x'
452
+ | 'bluesky'
453
+ | 'linkedin'
454
+ | 'facebook'
455
+ | 'hacker-news'
456
+ | 'whatsapp'
457
+ | 'telegram'
458
+ | 'reddit'
459
+ | 'email'
460
+ >;
461
+ }>;
462
+
422
463
  export type BuildInputSlug = string;
423
464
 
424
465
  export type BuildInputSocialLink = Readonly<{
@@ -78,6 +78,9 @@ export type InteractionsConfigDocument = Readonly<{
78
78
  readonly enabled: boolean;
79
79
  readonly maxDepth: number;
80
80
  }>;
81
+ readonly follows?: Readonly<{
82
+ readonly enabled: boolean;
83
+ }>;
81
84
  readonly publicCounts: Readonly<{
82
85
  readonly comments: boolean;
83
86
  readonly reactions: boolean;
@@ -5,6 +5,14 @@ export type PublicationBcp47 = string;
5
5
 
6
6
  export type PublicationCanonicalRoute = string;
7
7
 
8
+ export type PublicationContactForm = Readonly<{
9
+ readonly enabled: boolean;
10
+ readonly fields: Readonly<{
11
+ readonly phone: boolean;
12
+ readonly website: boolean;
13
+ }>;
14
+ }>;
15
+
8
16
  export type PublicationCrawlers = Readonly<{
9
17
  readonly ai: 'allow' | 'block';
10
18
  }>;
@@ -28,11 +36,20 @@ export type PublicationGlob = string;
28
36
 
29
37
  export type PublicationIsoCountry = string;
30
38
 
31
- export type PublicationNewsletter = Readonly<{
32
- readonly text: PublicationPlainText;
33
- readonly title: PublicationPlainLabel;
34
- readonly url: PublicationUrlHttps;
35
- }>;
39
+ export type PublicationNewsletter =
40
+ | Readonly<{
41
+ readonly emailContent: 'card' | 'full';
42
+ readonly mode: 'galascribe';
43
+ readonly replyToOwner: boolean;
44
+ readonly text: PublicationPlainText;
45
+ readonly title: PublicationPlainLabel;
46
+ }>
47
+ | Readonly<{
48
+ readonly mode?: 'link';
49
+ readonly text: PublicationPlainText;
50
+ readonly title: PublicationPlainLabel;
51
+ readonly url: PublicationUrlHttps;
52
+ }>;
36
53
 
37
54
  export type PublicationPackageExact = string;
38
55
 
@@ -67,6 +84,22 @@ export type PublicationSemver = string;
67
84
 
68
85
  export type PublicationSemverRange = string;
69
86
 
87
+ export type PublicationSharing = Readonly<{
88
+ readonly targets: ReadonlyArray<
89
+ | 'copy-link'
90
+ | 'native'
91
+ | 'x'
92
+ | 'bluesky'
93
+ | 'linkedin'
94
+ | 'facebook'
95
+ | 'hacker-news'
96
+ | 'whatsapp'
97
+ | 'telegram'
98
+ | 'reddit'
99
+ | 'email'
100
+ >;
101
+ }>;
102
+
70
103
  export type PublicationSlug = string;
71
104
 
72
105
  export type PublicationSocialLink = Readonly<{
@@ -94,6 +127,7 @@ export type PublicationUrn = string;
94
127
  export type PublicationDocument = Readonly<{
95
128
  readonly authors: ReadonlyArray<PublicationRepoRelativePath>;
96
129
  readonly canonicalBase: PublicationUrlHttps;
130
+ readonly contactForm?: PublicationContactForm;
97
131
  readonly contactRef?: PublicationRepoRelativePath;
98
132
  readonly crawlers?: PublicationCrawlers;
99
133
  readonly defaultImageRef?: PublicationRepoRelativePath;
@@ -107,6 +141,7 @@ export type PublicationDocument = Readonly<{
107
141
  readonly profile?: PublicationPublicationProfile;
108
142
  readonly schemaId: 'urn:gala:schema:publication:2.0.0';
109
143
  readonly schemaVersion: '2.0.0';
144
+ readonly sharing?: PublicationSharing;
110
145
  readonly slug: PublicationSlug;
111
146
  readonly socialLinks: ReadonlyArray<PublicationSocialLink>;
112
147
  readonly title: PublicationPlainText;