@rathnasgala2/schemas 3.18.0 → 3.19.1
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.
- package/THIRD_PARTY_LICENSES.json +3 -3
- package/diagnostics/diagnostic-map.json +6 -0
- package/docs/catalogs/schema-inventory.json +3 -3
- package/examples/valid/content-frontmatter/rules.json +11 -0
- package/fixtures/boundary/content-frontmatter/rules.json +11 -0
- package/fixtures/invalid/content-frontmatter/SCHEMA_PATTERN_INVALID/cases.json +11 -0
- package/fixtures/invalid/content-frontmatter/SCHEMA_TYPE_INVALID/cases.json +9 -0
- package/fixtures/manifest.json +48 -2
- package/fixtures/s2/empty-modules-placements.json +2 -2
- package/fixtures/unknown-field/content-frontmatter/rules.json +2 -0
- package/generated/browser/validator-core.mjs +2 -2
- package/generated/typescript/contracts/content-frontmatter.d.ts +3 -0
- package/openapi/http-catalog.json +2 -2
- package/openapi/openapi.yaml +140 -7
- package/package.json +1 -1
- package/sbom.cdx.json +23 -23
- package/schemas/content-frontmatter.schema.json +6 -0
|
@@ -53,6 +53,8 @@ export type ContentFrontmatterPlainLabel = string;
|
|
|
53
53
|
|
|
54
54
|
export type ContentFrontmatterPlainText = string;
|
|
55
55
|
|
|
56
|
+
export type ContentFrontmatterPublishAfterDate = string;
|
|
57
|
+
|
|
56
58
|
export type ContentFrontmatterRepoRelativePath = string;
|
|
57
59
|
|
|
58
60
|
export type ContentFrontmatterRfc3339 = string;
|
|
@@ -80,6 +82,7 @@ export type ContentFrontmatterDocument = Readonly<{
|
|
|
80
82
|
readonly kind: 'article' | 'page' | 'edition';
|
|
81
83
|
readonly language: ContentFrontmatterBcp47;
|
|
82
84
|
readonly newsletter?: 'ineligible' | 'eligible';
|
|
85
|
+
readonly publishAfter?: ContentFrontmatterPublishAfterDate;
|
|
83
86
|
readonly publishedAt?: ContentFrontmatterRfc3339;
|
|
84
87
|
readonly redirects: ReadonlyArray<ContentFrontmatterCanonicalRoute>;
|
|
85
88
|
readonly route?: ContentFrontmatterCanonicalRoute;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": "2.0.0",
|
|
3
3
|
"sourceDesignRevision": "a53052955ceb6c1aa10c886289dc832eedfe6de0a00004df07d353ac19c4403a",
|
|
4
|
-
"openApiDigest": "sha256:
|
|
4
|
+
"openApiDigest": "sha256:ad69bd463734d47aa91cb5544634209587658435564fbb9e96ceb3d302c15226",
|
|
5
5
|
"operations": [
|
|
6
6
|
{
|
|
7
7
|
"operationId": "getInternalHealth",
|
|
@@ -2699,5 +2699,5 @@
|
|
|
2699
2699
|
"sourceFragment": "workloads"
|
|
2700
2700
|
}
|
|
2701
2701
|
],
|
|
2702
|
-
"digest": "sha256:
|
|
2702
|
+
"digest": "sha256:df68ea5a261750bcbd7c6449ab1fb9b5d0329859cc6d73c7a3e17142430d3918"
|
|
2703
2703
|
}
|
package/openapi/openapi.yaml
CHANGED
|
@@ -1308,7 +1308,9 @@ components:
|
|
|
1308
1308
|
description: |
|
|
1309
1309
|
The header block's own facts about this item, read at inventory time.
|
|
1310
1310
|
`contentId` is the header's `id`; `status` is the header's `status`
|
|
1311
|
-
upper-cased to this contract's enum style.
|
|
1311
|
+
upper-cased to this contract's enum style. `publishAfter`
|
|
1312
|
+
(SCHEMA-3.19.0, optional and nullable) is the header's staggered-release
|
|
1313
|
+
date.
|
|
1312
1314
|
properties:
|
|
1313
1315
|
contentId:
|
|
1314
1316
|
$ref: "#/components/schemas/PortableContentFrontmatterStableId"
|
|
@@ -1316,6 +1318,11 @@ components:
|
|
|
1316
1318
|
$ref: "#/components/schemas/PortableContentFrontmatterRfc3339"
|
|
1317
1319
|
language:
|
|
1318
1320
|
$ref: "#/components/schemas/PortableContentFrontmatterBcp47"
|
|
1321
|
+
publishAfter:
|
|
1322
|
+
description: "SCHEMA-3.19.0: the header's `publishAfter` date (`YYYY-MM-DD`) of a draft waiting for staggered release, `null` or absent when the header carries none."
|
|
1323
|
+
oneOf:
|
|
1324
|
+
- $ref: "#/components/schemas/PortableContentFrontmatterPublishAfterDate"
|
|
1325
|
+
- type: "null"
|
|
1319
1326
|
publishedAt:
|
|
1320
1327
|
$ref: "#/components/schemas/PortableContentFrontmatterRfc3339"
|
|
1321
1328
|
slug:
|
|
@@ -3738,7 +3745,7 @@ components:
|
|
|
3738
3745
|
then:
|
|
3739
3746
|
required:
|
|
3740
3747
|
- publishing
|
|
3741
|
-
description: Everything a Home screen needs in one read. `url` is the live site address, `null` when nothing has been published. `lastPublished` is absent when `state` is `NEVER_PUBLISHED`. `publishing` is present exactly while `state` is `PUBLISHING`. `schedule` (SCHEMA-3.3.0, optional) is present while a scheduled publish is pending; a pending schedule never makes `state` `PUBLISHING` -- the site reads as it would without it until the schedule starts.
|
|
3748
|
+
description: Everything a Home screen needs in one read. `url` is the live site address, `null` when nothing has been published. `lastPublished` is absent when `state` is `NEVER_PUBLISHED`. `publishing` is present exactly while `state` is `PUBLISHING`. `schedule` (SCHEMA-3.3.0, optional) is present while a scheduled publish is pending; a pending schedule never makes `state` `PUBLISHING` -- the site reads as it would without it until the schedule starts. `nextRelease` (SCHEMA-3.19.0, optional and nullable) is the scheduled draft that the staggered release will publish next, the one with the earliest `publishAfter` date; `null` or absent when there is none.
|
|
3742
3749
|
properties:
|
|
3743
3750
|
attention:
|
|
3744
3751
|
items:
|
|
@@ -3747,6 +3754,10 @@ components:
|
|
|
3747
3754
|
type: array
|
|
3748
3755
|
lastPublished:
|
|
3749
3756
|
$ref: "#/components/schemas/SiteLastPublished"
|
|
3757
|
+
nextRelease:
|
|
3758
|
+
oneOf:
|
|
3759
|
+
- $ref: "#/components/schemas/SiteNextRelease"
|
|
3760
|
+
- type: "null"
|
|
3750
3761
|
pendingChanges:
|
|
3751
3762
|
items:
|
|
3752
3763
|
$ref: "#/components/schemas/SitePendingChange"
|
|
@@ -6961,6 +6972,34 @@ components:
|
|
|
6961
6972
|
type: boolean
|
|
6962
6973
|
requireReview:
|
|
6963
6974
|
type: boolean
|
|
6975
|
+
staggeredRelease:
|
|
6976
|
+
additionalProperties: false
|
|
6977
|
+
allOf:
|
|
6978
|
+
- if:
|
|
6979
|
+
properties:
|
|
6980
|
+
enabled:
|
|
6981
|
+
not:
|
|
6982
|
+
enum:
|
|
6983
|
+
- false
|
|
6984
|
+
type: boolean
|
|
6985
|
+
x-gala-const: true
|
|
6986
|
+
required:
|
|
6987
|
+
- enabled
|
|
6988
|
+
then:
|
|
6989
|
+
required:
|
|
6990
|
+
- timezone
|
|
6991
|
+
description: "SCHEMA-3.19.0: a change to the staggered-release setting (the shape of `StaggeredReleaseSetting` as a partial update). An omitted `staggeredRelease` leaves the setting unchanged. `timezone` is required when `enabled` is true. When `enabled` is false it may be omitted (the stored zone is kept) or sent (the zone is stored for the next time the setting is turned on). Turning the setting off never edits a draft: its `publishAfter` stays in the file."
|
|
6992
|
+
properties:
|
|
6993
|
+
enabled:
|
|
6994
|
+
type: boolean
|
|
6995
|
+
timezone:
|
|
6996
|
+
description: An IANA time zone name, as `StaggeredReleaseTimezone`. An unknown name is `422 VALIDATION_FAILED` pointed at `/publishingPolicy/staggeredRelease/timezone`.
|
|
6997
|
+
maxLength: 64
|
|
6998
|
+
pattern: ^(?:[A-Za-z_]+(?:/[A-Za-z0-9_+-]+)+|UTC)$
|
|
6999
|
+
type: string
|
|
7000
|
+
required:
|
|
7001
|
+
- enabled
|
|
7002
|
+
type: object
|
|
6964
7003
|
type: object
|
|
6965
7004
|
slug:
|
|
6966
7005
|
maxLength: 80
|
|
@@ -8163,6 +8202,8 @@ components:
|
|
|
8163
8202
|
enum:
|
|
8164
8203
|
- ineligible
|
|
8165
8204
|
- eligible
|
|
8205
|
+
publishAfter:
|
|
8206
|
+
$ref: "#/components/schemas/PortableContentFrontmatterPublishAfterDate"
|
|
8166
8207
|
publishedAt:
|
|
8167
8208
|
$ref: "#/components/schemas/PortableContentFrontmatterRfc3339"
|
|
8168
8209
|
redirects:
|
|
@@ -8292,6 +8333,10 @@ components:
|
|
|
8292
8333
|
description: NFC Unicode text without disallowed C0/C1 controls or bidi override/isolate controls.
|
|
8293
8334
|
format: gala-plain-text
|
|
8294
8335
|
type: string
|
|
8336
|
+
PortableContentFrontmatterPublishAfterDate:
|
|
8337
|
+
description: "SCHEMA-3.19.0: the calendar date (`YYYY-MM-DD`, day precision, read in the publication's staggered-release timezone) on or after which Galascribe publishes this draft. Meaningful only while `status` is `draft`; Galascribe removes it when the post is published. The API enforces both rules; the schema only fixes the shape."
|
|
8338
|
+
pattern: ^\d{4}-\d{2}-\d{2}$
|
|
8339
|
+
type: string
|
|
8295
8340
|
PortableContentFrontmatterRepoRelativePath:
|
|
8296
8341
|
description: NFC UTF-8 repository-relative path using slash separators, with no leading slash, dot segment, NUL, backslash, or percent-decoded traversal.
|
|
8297
8342
|
format: gala-repository-relative-path
|
|
@@ -14861,6 +14906,11 @@ components:
|
|
|
14861
14906
|
`appearance`, counting as one of the named members: it edits
|
|
14862
14907
|
`gala/publication.json` through one planned `PUT` (see
|
|
14863
14908
|
`ContentChangePublicationProfileEntry`).
|
|
14909
|
+
A `PUT` document whose front matter sets or changes `publishAfter`
|
|
14910
|
+
(SCHEMA-3.19.0) is refused with `409 STAGGERED_RELEASE_DISABLED` while the
|
|
14911
|
+
publication's staggered release is off (`publishingPolicy.staggeredRelease`), and
|
|
14912
|
+
with `422 PUBLISH_AFTER_ON_PUBLISHED_POST` when its `status` is not
|
|
14913
|
+
`draft`; `errors[].pointer` is `/documents/<path>`.
|
|
14864
14914
|
Assets are images only (PNG, JPEG, WebP, GIF, AVIF; SVG is refused):
|
|
14865
14915
|
at most 20 per change, each at most 5 MiB and together at most
|
|
14866
14916
|
20 MiB, measured on the decoded bytes -- `assets[].bytesBase64` is
|
|
@@ -17511,7 +17561,7 @@ components:
|
|
|
17511
17561
|
type: string
|
|
17512
17562
|
PublishingPolicy:
|
|
17513
17563
|
additionalProperties: false
|
|
17514
|
-
description: "How this publication publishes. Absence of the member on the publication resource means the defaults: `requireReview` false, `galascribeMerges` true."
|
|
17564
|
+
description: "How this publication publishes. Absence of the member on the publication resource means the defaults: `requireReview` false, `galascribeMerges` true, and `staggeredRelease` off (`enabled` false, `timezone` null). When the member is present it carries all three (SCHEMA-3.19.0 adds `staggeredRelease`)."
|
|
17515
17565
|
properties:
|
|
17516
17566
|
galascribeMerges:
|
|
17517
17567
|
description: Default true. When true Galascribe opens and merges the pull request itself through the GitHub App; when false each change must already be merged on GitHub before it can be published.
|
|
@@ -17519,9 +17569,12 @@ components:
|
|
|
17519
17569
|
requireReview:
|
|
17520
17570
|
description: Default false. When true a change needs an approved review before it can be published.
|
|
17521
17571
|
type: boolean
|
|
17572
|
+
staggeredRelease:
|
|
17573
|
+
$ref: "#/components/schemas/StaggeredReleaseSetting"
|
|
17522
17574
|
required:
|
|
17523
17575
|
- requireReview
|
|
17524
17576
|
- galascribeMerges
|
|
17577
|
+
- staggeredRelease
|
|
17525
17578
|
type: object
|
|
17526
17579
|
PutOrganizationsByOrganizationIdPublicationsByPublicationIdAnalyticsSettingsRequest:
|
|
17527
17580
|
additionalProperties: false
|
|
@@ -19147,6 +19200,18 @@ components:
|
|
|
19147
19200
|
- at
|
|
19148
19201
|
- actor
|
|
19149
19202
|
type: object
|
|
19203
|
+
SiteNextRelease:
|
|
19204
|
+
additionalProperties: false
|
|
19205
|
+
description: "The next draft the staggered release will publish (SCHEMA-3.19.0): `slug` is the draft's slug and `publishAfter` its `YYYY-MM-DD` date, read in the publication's staggered-release timezone."
|
|
19206
|
+
properties:
|
|
19207
|
+
publishAfter:
|
|
19208
|
+
$ref: "#/components/schemas/PortableContentFrontmatterPublishAfterDate"
|
|
19209
|
+
slug:
|
|
19210
|
+
$ref: "#/components/schemas/PortableContentFrontmatterSlug"
|
|
19211
|
+
required:
|
|
19212
|
+
- slug
|
|
19213
|
+
- publishAfter
|
|
19214
|
+
type: object
|
|
19150
19215
|
SitePendingChange:
|
|
19151
19216
|
additionalProperties: false
|
|
19152
19217
|
allOf:
|
|
@@ -19347,6 +19412,40 @@ components:
|
|
|
19347
19412
|
- from
|
|
19348
19413
|
- to
|
|
19349
19414
|
type: object
|
|
19415
|
+
StaggeredReleaseSetting:
|
|
19416
|
+
additionalProperties: false
|
|
19417
|
+
allOf:
|
|
19418
|
+
- if:
|
|
19419
|
+
properties:
|
|
19420
|
+
enabled:
|
|
19421
|
+
not:
|
|
19422
|
+
enum:
|
|
19423
|
+
- false
|
|
19424
|
+
type: boolean
|
|
19425
|
+
x-gala-const: true
|
|
19426
|
+
required:
|
|
19427
|
+
- enabled
|
|
19428
|
+
then:
|
|
19429
|
+
properties:
|
|
19430
|
+
timezone:
|
|
19431
|
+
type: string
|
|
19432
|
+
description: "SCHEMA-3.19.0: the publication's staggered-release setting as stored, the `staggeredRelease` member of `PublishingPolicy`. When `enabled` is true Galascribe publishes each draft whose `publishAfter` front-matter date has arrived, reading the date in `timezone` and releasing it on the first sweep at or after 00:00 of that date; when false nothing is released by the system and `publishAfter` values are kept untouched. A publication that never set it reads `{enabled: false, timezone: null}`; `timezone` is never null while `enabled` is true."
|
|
19433
|
+
properties:
|
|
19434
|
+
enabled:
|
|
19435
|
+
type: boolean
|
|
19436
|
+
timezone:
|
|
19437
|
+
oneOf:
|
|
19438
|
+
- $ref: "#/components/schemas/StaggeredReleaseTimezone"
|
|
19439
|
+
- type: "null"
|
|
19440
|
+
required:
|
|
19441
|
+
- enabled
|
|
19442
|
+
- timezone
|
|
19443
|
+
type: object
|
|
19444
|
+
StaggeredReleaseTimezone:
|
|
19445
|
+
description: "SCHEMA-3.19.0: an IANA time zone name (`America/Los_Angeles`, `Europe/London`, `UTC`). The API accepts only a name its time-zone database knows; an unknown name is `422 VALIDATION_FAILED` pointed at `/publishingPolicy/staggeredRelease/timezone`. The pattern only fixes the shape."
|
|
19446
|
+
maxLength: 64
|
|
19447
|
+
pattern: ^(?:[A-Za-z_]+(?:/[A-Za-z0-9_+-]+)+|UTC)$
|
|
19448
|
+
type: string
|
|
19350
19449
|
VerificationPlanEntry:
|
|
19351
19450
|
additionalProperties: false
|
|
19352
19451
|
properties:
|
|
@@ -31971,7 +32070,7 @@ paths:
|
|
|
31971
32070
|
x-gala-tenant-scope: ORGANIZATION_AND_PUBLICATION_PATH
|
|
31972
32071
|
patch:
|
|
31973
32072
|
description: |
|
|
31974
|
-
Updates publication metadata and state. As of schema 2.22.0 the request may also carry `publishingPolicy` (`requireReview`, `galascribeMerges`), a partial update: an omitted member keeps its value. The publication resource (`GET` and this response) returns `publishingPolicy`; its absence means the defaults, `requireReview` false and `galascribeMerges` true. The policy governs `POST .../changes:publish` and the review of changes.
|
|
32073
|
+
Updates publication metadata and state. As of schema 2.22.0 the request may also carry `publishingPolicy` (`requireReview`, `galascribeMerges`), a partial update: an omitted member keeps its value. The publication resource (`GET` and this response) returns `publishingPolicy`; its absence means the defaults, `requireReview` false and `galascribeMerges` true. The policy governs `POST .../changes:publish` and the review of changes. SCHEMA-3.19.0 adds `publishingPolicy.staggeredRelease` (`enabled`, `timezone`): staggered release publishes each draft whose `publishAfter` front-matter date has arrived, reading the date in `timezone`. A present `publishingPolicy` always carries it (a publication that never set it reads `enabled` false and `timezone` null; the absence of `publishingPolicy` means the same). In the request it is optional, absent means unchanged, `timezone` is required when `enabled` is true and must be an IANA zone name, else `422 VALIDATION_FAILED` pointed at `/publishingPolicy/staggeredRelease/timezone`.
|
|
31975
32074
|
operationId: patchOrganizationsByOrganizationIdPublicationsByPublicationId
|
|
31976
32075
|
parameters:
|
|
31977
32076
|
- $ref: "#/components/parameters/XCorrelationId"
|
|
@@ -34422,6 +34521,21 @@ paths:
|
|
|
34422
34521
|
status: 409
|
|
34423
34522
|
title: INVALID_SOURCE_STATE
|
|
34424
34523
|
type: urn:gala:problem:invalid-source-state
|
|
34524
|
+
STAGGERED_RELEASE_DISABLED:
|
|
34525
|
+
summary: STAGGERED_RELEASE_DISABLED
|
|
34526
|
+
value:
|
|
34527
|
+
code: STAGGERED_RELEASE_DISABLED
|
|
34528
|
+
correlationId: 018f0000-0000-7000-8000-000000000001
|
|
34529
|
+
detail: A document carries publishAfter but the publication's staggered release is off. See the operation contract.
|
|
34530
|
+
errors:
|
|
34531
|
+
- code: STAGGERED_RELEASE_DISABLED
|
|
34532
|
+
pointer: /documents/content~1articles~1example.md
|
|
34533
|
+
retryable: false
|
|
34534
|
+
schemaId: urn:gala:schema:problem:2.0.0
|
|
34535
|
+
schemaVersion: 2.0.0
|
|
34536
|
+
status: 409
|
|
34537
|
+
title: STAGGERED_RELEASE_DISABLED
|
|
34538
|
+
type: urn:gala:problem:staggered-release-disabled
|
|
34425
34539
|
TRANSFER_PENDING:
|
|
34426
34540
|
summary: TRANSFER_PENDING
|
|
34427
34541
|
value:
|
|
@@ -34437,7 +34551,7 @@ paths:
|
|
|
34437
34551
|
type: urn:gala:problem:transfer-pending
|
|
34438
34552
|
schema:
|
|
34439
34553
|
$ref: "#/components/schemas/Problem"
|
|
34440
|
-
description: COMMAND_REPLAY_CONFLICT, INVALID_SOURCE_STATE, TRANSFER_PENDING
|
|
34554
|
+
description: COMMAND_REPLAY_CONFLICT, INVALID_SOURCE_STATE, STAGGERED_RELEASE_DISABLED, TRANSFER_PENDING
|
|
34441
34555
|
headers:
|
|
34442
34556
|
Cache-Control:
|
|
34443
34557
|
$ref: "#/components/headers/CacheControlNoStore"
|
|
@@ -34448,11 +34562,27 @@ paths:
|
|
|
34448
34562
|
x-gala-problem-codes:
|
|
34449
34563
|
- COMMAND_REPLAY_CONFLICT
|
|
34450
34564
|
- INVALID_SOURCE_STATE
|
|
34565
|
+
- STAGGERED_RELEASE_DISABLED
|
|
34451
34566
|
- TRANSFER_PENDING
|
|
34452
34567
|
"422":
|
|
34453
34568
|
content:
|
|
34454
34569
|
application/problem+json:
|
|
34455
34570
|
examples:
|
|
34571
|
+
PUBLISH_AFTER_ON_PUBLISHED_POST:
|
|
34572
|
+
summary: PUBLISH_AFTER_ON_PUBLISHED_POST
|
|
34573
|
+
value:
|
|
34574
|
+
code: PUBLISH_AFTER_ON_PUBLISHED_POST
|
|
34575
|
+
correlationId: 018f0000-0000-7000-8000-000000000001
|
|
34576
|
+
detail: A document carries publishAfter but its status is not draft. See the operation contract.
|
|
34577
|
+
errors:
|
|
34578
|
+
- code: PUBLISH_AFTER_ON_PUBLISHED_POST
|
|
34579
|
+
pointer: /documents/content~1articles~1example.md
|
|
34580
|
+
retryable: false
|
|
34581
|
+
schemaId: urn:gala:schema:problem:2.0.0
|
|
34582
|
+
schemaVersion: 2.0.0
|
|
34583
|
+
status: 422
|
|
34584
|
+
title: PUBLISH_AFTER_ON_PUBLISHED_POST
|
|
34585
|
+
type: urn:gala:problem:publish-after-on-published-post
|
|
34456
34586
|
VALIDATION_FAILED:
|
|
34457
34587
|
summary: VALIDATION_FAILED
|
|
34458
34588
|
value:
|
|
@@ -34468,13 +34598,14 @@ paths:
|
|
|
34468
34598
|
type: urn:gala:problem:validation-failed
|
|
34469
34599
|
schema:
|
|
34470
34600
|
$ref: "#/components/schemas/Problem"
|
|
34471
|
-
description: VALIDATION_FAILED
|
|
34601
|
+
description: PUBLISH_AFTER_ON_PUBLISHED_POST, VALIDATION_FAILED
|
|
34472
34602
|
headers:
|
|
34473
34603
|
Cache-Control:
|
|
34474
34604
|
$ref: "#/components/headers/CacheControlNoStore"
|
|
34475
34605
|
X-Correlation-Id:
|
|
34476
34606
|
$ref: "#/components/headers/XCorrelationId"
|
|
34477
34607
|
x-gala-problem-codes:
|
|
34608
|
+
- PUBLISH_AFTER_ON_PUBLISHED_POST
|
|
34478
34609
|
- VALIDATION_FAILED
|
|
34479
34610
|
"503":
|
|
34480
34611
|
content:
|
|
@@ -34525,8 +34656,10 @@ paths:
|
|
|
34525
34656
|
- CAPABILITY_UNAVAILABLE
|
|
34526
34657
|
- COMMAND_REPLAY_CONFLICT
|
|
34527
34658
|
- INVALID_SOURCE_STATE
|
|
34659
|
+
- PUBLISH_AFTER_ON_PUBLISHED_POST
|
|
34528
34660
|
- REQUEST_FIELD_UNKNOWN
|
|
34529
34661
|
- RESOURCE_NOT_FOUND
|
|
34662
|
+
- STAGGERED_RELEASE_DISABLED
|
|
34530
34663
|
- TRANSFER_PENDING
|
|
34531
34664
|
- VALIDATION_FAILED
|
|
34532
34665
|
x-gala-replay-identity: idempotency-key
|
|
@@ -42886,7 +43019,7 @@ paths:
|
|
|
42886
43019
|
x-gala-success-category: query
|
|
42887
43020
|
x-gala-tenant-scope: ORGANIZATION_AND_PUBLICATION_PATH
|
|
42888
43021
|
put:
|
|
42889
|
-
description: The server writes `gala/
|
|
43022
|
+
description: The server writes `gala/theme-pages/terms.md`, `gala/theme-pages/privacy.md` and the `policies` member of `gala/publication.json` as one repository change, the way a theme selection writes `gala/appearance.json`. Both pages are always sent. Each page's Markdown is 1 to 131072 UTF-8 bytes as stored in the repository, under the Unicode normalization rules the server applies to other authored text. Publishing the change uses the normal publish flow. `change` has the shape the theme-selection write returns.
|
|
42890
43023
|
operationId: putOrganizationsByOrganizationIdPublicationsByPublicationIdPolicySettings
|
|
42891
43024
|
parameters:
|
|
42892
43025
|
- $ref: "#/components/parameters/XCorrelationId"
|
package/package.json
CHANGED
package/sbom.cdx.json
CHANGED
|
@@ -97,8 +97,8 @@
|
|
|
97
97
|
"type": "library",
|
|
98
98
|
"name": "schemas",
|
|
99
99
|
"group": "@rathnasgala2",
|
|
100
|
-
"version": "3.
|
|
101
|
-
"bom-ref": "@rathnasgala2/schemas@3.
|
|
100
|
+
"version": "3.19.1",
|
|
101
|
+
"bom-ref": "@rathnasgala2/schemas@3.19.1",
|
|
102
102
|
"description": "Executable JSON Schema and OpenAPI contracts for Galascribe",
|
|
103
103
|
"licenses": [
|
|
104
104
|
{
|
|
@@ -108,7 +108,7 @@
|
|
|
108
108
|
}
|
|
109
109
|
}
|
|
110
110
|
],
|
|
111
|
-
"purl": "pkg:npm/%40rathnasgala2/schemas@3.
|
|
111
|
+
"purl": "pkg:npm/%40rathnasgala2/schemas@3.19.1?vcs_url=git%2Bhttps%3A%2F%2Fgithub.com%2Frathnasgala2%2Fschema.git",
|
|
112
112
|
"externalReferences": [
|
|
113
113
|
{
|
|
114
114
|
"url": "https://github.com/rathnasgala2/schema/issues",
|
|
@@ -153,7 +153,7 @@
|
|
|
153
153
|
"type": "library",
|
|
154
154
|
"name": "ajv-formats",
|
|
155
155
|
"version": "3.0.1",
|
|
156
|
-
"bom-ref": "@rathnasgala2/schemas@3.
|
|
156
|
+
"bom-ref": "@rathnasgala2/schemas@3.19.1|ajv-formats@3.0.1",
|
|
157
157
|
"licenses": [
|
|
158
158
|
{
|
|
159
159
|
"license": {
|
|
@@ -187,7 +187,7 @@
|
|
|
187
187
|
"type": "library",
|
|
188
188
|
"name": "ajv",
|
|
189
189
|
"version": "8.20.0",
|
|
190
|
-
"bom-ref": "@rathnasgala2/schemas@3.
|
|
190
|
+
"bom-ref": "@rathnasgala2/schemas@3.19.1|ajv@8.20.0",
|
|
191
191
|
"licenses": [
|
|
192
192
|
{
|
|
193
193
|
"license": {
|
|
@@ -221,7 +221,7 @@
|
|
|
221
221
|
"type": "library",
|
|
222
222
|
"name": "fast-deep-equal",
|
|
223
223
|
"version": "3.1.3",
|
|
224
|
-
"bom-ref": "@rathnasgala2/schemas@3.
|
|
224
|
+
"bom-ref": "@rathnasgala2/schemas@3.19.1|fast-deep-equal@3.1.3",
|
|
225
225
|
"licenses": [
|
|
226
226
|
{
|
|
227
227
|
"license": {
|
|
@@ -255,7 +255,7 @@
|
|
|
255
255
|
"type": "library",
|
|
256
256
|
"name": "fast-uri",
|
|
257
257
|
"version": "3.1.8",
|
|
258
|
-
"bom-ref": "@rathnasgala2/schemas@3.
|
|
258
|
+
"bom-ref": "@rathnasgala2/schemas@3.19.1|fast-uri@3.1.8",
|
|
259
259
|
"licenses": [
|
|
260
260
|
{
|
|
261
261
|
"license": {
|
|
@@ -289,7 +289,7 @@
|
|
|
289
289
|
"type": "library",
|
|
290
290
|
"name": "json-schema-traverse",
|
|
291
291
|
"version": "1.0.0",
|
|
292
|
-
"bom-ref": "@rathnasgala2/schemas@3.
|
|
292
|
+
"bom-ref": "@rathnasgala2/schemas@3.19.1|json-schema-traverse@1.0.0",
|
|
293
293
|
"licenses": [
|
|
294
294
|
{
|
|
295
295
|
"license": {
|
|
@@ -323,7 +323,7 @@
|
|
|
323
323
|
"type": "library",
|
|
324
324
|
"name": "require-from-string",
|
|
325
325
|
"version": "2.0.2",
|
|
326
|
-
"bom-ref": "@rathnasgala2/schemas@3.
|
|
326
|
+
"bom-ref": "@rathnasgala2/schemas@3.19.1|require-from-string@2.0.2",
|
|
327
327
|
"licenses": [
|
|
328
328
|
{
|
|
329
329
|
"license": {
|
|
@@ -1064,10 +1064,10 @@
|
|
|
1064
1064
|
],
|
|
1065
1065
|
"dependencies": [
|
|
1066
1066
|
{
|
|
1067
|
-
"ref": "@rathnasgala2/schemas@3.
|
|
1067
|
+
"ref": "@rathnasgala2/schemas@3.19.1",
|
|
1068
1068
|
"dependsOn": [
|
|
1069
|
-
"@rathnasgala2/schemas@3.
|
|
1070
|
-
"@rathnasgala2/schemas@3.
|
|
1069
|
+
"@rathnasgala2/schemas@3.19.1|ajv-formats@3.0.1",
|
|
1070
|
+
"@rathnasgala2/schemas@3.19.1|ajv@8.20.0",
|
|
1071
1071
|
"pkg:npm/semver@7.8.5",
|
|
1072
1072
|
"urn:gala:source-data:iana-ipv4-special-registry",
|
|
1073
1073
|
"urn:gala:source-data:iana-ipv6-special-registry",
|
|
@@ -1089,31 +1089,31 @@
|
|
|
1089
1089
|
]
|
|
1090
1090
|
},
|
|
1091
1091
|
{
|
|
1092
|
-
"ref": "@rathnasgala2/schemas@3.
|
|
1092
|
+
"ref": "@rathnasgala2/schemas@3.19.1|ajv-formats@3.0.1",
|
|
1093
1093
|
"dependsOn": [
|
|
1094
|
-
"@rathnasgala2/schemas@3.
|
|
1094
|
+
"@rathnasgala2/schemas@3.19.1|ajv@8.20.0"
|
|
1095
1095
|
]
|
|
1096
1096
|
},
|
|
1097
1097
|
{
|
|
1098
|
-
"ref": "@rathnasgala2/schemas@3.
|
|
1098
|
+
"ref": "@rathnasgala2/schemas@3.19.1|ajv@8.20.0",
|
|
1099
1099
|
"dependsOn": [
|
|
1100
|
-
"@rathnasgala2/schemas@3.
|
|
1101
|
-
"@rathnasgala2/schemas@3.
|
|
1102
|
-
"@rathnasgala2/schemas@3.
|
|
1103
|
-
"@rathnasgala2/schemas@3.
|
|
1100
|
+
"@rathnasgala2/schemas@3.19.1|fast-deep-equal@3.1.3",
|
|
1101
|
+
"@rathnasgala2/schemas@3.19.1|fast-uri@3.1.8",
|
|
1102
|
+
"@rathnasgala2/schemas@3.19.1|json-schema-traverse@1.0.0",
|
|
1103
|
+
"@rathnasgala2/schemas@3.19.1|require-from-string@2.0.2"
|
|
1104
1104
|
]
|
|
1105
1105
|
},
|
|
1106
1106
|
{
|
|
1107
|
-
"ref": "@rathnasgala2/schemas@3.
|
|
1107
|
+
"ref": "@rathnasgala2/schemas@3.19.1|fast-deep-equal@3.1.3"
|
|
1108
1108
|
},
|
|
1109
1109
|
{
|
|
1110
|
-
"ref": "@rathnasgala2/schemas@3.
|
|
1110
|
+
"ref": "@rathnasgala2/schemas@3.19.1|fast-uri@3.1.8"
|
|
1111
1111
|
},
|
|
1112
1112
|
{
|
|
1113
|
-
"ref": "@rathnasgala2/schemas@3.
|
|
1113
|
+
"ref": "@rathnasgala2/schemas@3.19.1|json-schema-traverse@1.0.0"
|
|
1114
1114
|
},
|
|
1115
1115
|
{
|
|
1116
|
-
"ref": "@rathnasgala2/schemas@3.
|
|
1116
|
+
"ref": "@rathnasgala2/schemas@3.19.1|require-from-string@2.0.2"
|
|
1117
1117
|
},
|
|
1118
1118
|
{
|
|
1119
1119
|
"ref": "pkg:npm/semver@7.8.5"
|
|
@@ -65,6 +65,7 @@
|
|
|
65
65
|
"newsletter": { "enum": ["ineligible", "eligible"] },
|
|
66
66
|
"edition": { "$ref": "#/$defs/contentEdition" },
|
|
67
67
|
"seo": { "$ref": "#/$defs/contentSeo" },
|
|
68
|
+
"publishAfter": { "$ref": "#/$defs/publishAfterDate" },
|
|
68
69
|
"extensions": { "$ref": "#/$defs/extensionMap" }
|
|
69
70
|
},
|
|
70
71
|
"additionalProperties": false,
|
|
@@ -212,6 +213,11 @@
|
|
|
212
213
|
}
|
|
213
214
|
]
|
|
214
215
|
},
|
|
216
|
+
"publishAfterDate": {
|
|
217
|
+
"type": "string",
|
|
218
|
+
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
|
|
219
|
+
"description": "SCHEMA-3.19.0: the calendar date (`YYYY-MM-DD`, day precision, read in the publication's staggered-release timezone) on or after which Galascribe publishes this draft. Meaningful only while `status` is `draft`; Galascribe removes it when the post is published. The API enforces both rules; the schema only fixes the shape."
|
|
220
|
+
},
|
|
215
221
|
"contentEdition": {
|
|
216
222
|
"type": "object",
|
|
217
223
|
"required": ["of", "kind", "sourceDigest", "generation", "approvedAt"],
|