@kumwe/studio-protocol 0.1.0-alpha.4 → 0.1.0-alpha.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/guards.d.ts.map +1 -1
- package/dist/guards.js +44 -0
- package/dist/guards.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/schemas.d.ts +7 -0
- package/dist/schemas.d.ts.map +1 -1
- package/dist/schemas.js +21 -0
- package/dist/schemas.js.map +1 -1
- package/dist/types.d.ts +69 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/schemas/canonical-vector.schema.json +65 -0
- package/schemas/corpus-manifest.schema.json +48 -0
- package/schemas/field-adapter.schema.json +51 -0
- package/schemas/host-capabilities.schema.json +3 -2
- package/schemas/host-operations.schema.json +162 -0
- package/schemas/host-request.schema.json +71 -0
- package/schemas/host-result.schema.json +19 -0
- package/schemas/host-vector.schema.json +197 -0
- package/schemas/inspector.schema.json +44 -0
- package/schemas/manifest.json +47 -2
- package/schemas/media-upload-grant.schema.json +48 -0
- package/schemas/preview-message.schema.json +385 -60
package/schemas/manifest.json
CHANGED
|
@@ -13,6 +13,11 @@
|
|
|
13
13
|
"file": "blueprint.schema.json",
|
|
14
14
|
"id": "https://schemas.kumwe.org/studio/v1/blueprint.schema.json"
|
|
15
15
|
},
|
|
16
|
+
{
|
|
17
|
+
"digest": "sha256-WrqnuGMzdcSi5geh9LXT5uhL1AsimMgw1jhizsAKyBA=",
|
|
18
|
+
"file": "canonical-vector.schema.json",
|
|
19
|
+
"id": "https://schemas.kumwe.org/studio/v1/canonical-vector.schema.json"
|
|
20
|
+
},
|
|
16
21
|
{
|
|
17
22
|
"digest": "sha256-GEoWp72qtRDvyf9V7pyQzshlqDecOjtUxIYCY7TJ8SA=",
|
|
18
23
|
"file": "command-vector.schema.json",
|
|
@@ -33,6 +38,11 @@
|
|
|
33
38
|
"file": "content-model.schema.json",
|
|
34
39
|
"id": "https://schemas.kumwe.org/studio/v1/content-model.schema.json"
|
|
35
40
|
},
|
|
41
|
+
{
|
|
42
|
+
"digest": "sha256-DuM7fZghcN9YsMdEHf5Eap7jijiPBLl4B68OFMFIJZo=",
|
|
43
|
+
"file": "corpus-manifest.schema.json",
|
|
44
|
+
"id": "https://schemas.kumwe.org/studio/v1/corpus-manifest.schema.json"
|
|
45
|
+
},
|
|
36
46
|
{
|
|
37
47
|
"digest": "sha256-KoGp/qlqlsqabqtELbd/bdRHyM1wU8sRxyyLvOg/OFg=",
|
|
38
48
|
"file": "design-vocabulary.schema.json",
|
|
@@ -44,7 +54,12 @@
|
|
|
44
54
|
"id": "https://schemas.kumwe.org/studio/v1/entry.schema.json"
|
|
45
55
|
},
|
|
46
56
|
{
|
|
47
|
-
"digest": "sha256-
|
|
57
|
+
"digest": "sha256-pmSxOOQO2G0OAxej15ISDEd9tS16w3XwZXyBxXyalzk=",
|
|
58
|
+
"file": "field-adapter.schema.json",
|
|
59
|
+
"id": "https://schemas.kumwe.org/studio/v1/field-adapter.schema.json"
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"digest": "sha256-dcyPPmPmKLyU3jwajgfQd17xBtrI8sL9nhweAF3LsnY=",
|
|
48
63
|
"file": "host-capabilities.schema.json",
|
|
49
64
|
"id": "https://schemas.kumwe.org/studio/v1/host-capabilities.schema.json"
|
|
50
65
|
},
|
|
@@ -53,6 +68,31 @@
|
|
|
53
68
|
"file": "host-error.schema.json",
|
|
54
69
|
"id": "https://schemas.kumwe.org/studio/v1/host-error.schema.json"
|
|
55
70
|
},
|
|
71
|
+
{
|
|
72
|
+
"digest": "sha256-dKcbTVV2gn4IWAAH1RMpK5Ve12V+RswsDuhlrC1Ohm4=",
|
|
73
|
+
"file": "host-operations.schema.json",
|
|
74
|
+
"id": "https://schemas.kumwe.org/studio/v1/host-operations.schema.json"
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
"digest": "sha256-pOVrjkIA0RiBKF2aKfmOnmE1DlAFYgg+QBuiH+L5hIk=",
|
|
78
|
+
"file": "host-request.schema.json",
|
|
79
|
+
"id": "https://schemas.kumwe.org/studio/v1/host-request.schema.json"
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"digest": "sha256-yNKi6fS95rlh9UubTz2FA+neXY0KDNYKs3NX0vGY+c0=",
|
|
83
|
+
"file": "host-result.schema.json",
|
|
84
|
+
"id": "https://schemas.kumwe.org/studio/v1/host-result.schema.json"
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
"digest": "sha256-KETVqPMNQCSN8faoNW7fHuSWc6rT/Jkp4+Lh31gQuQM=",
|
|
88
|
+
"file": "host-vector.schema.json",
|
|
89
|
+
"id": "https://schemas.kumwe.org/studio/v1/host-vector.schema.json"
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
"digest": "sha256-gCIQyhwXC4DwTYwg2g+L05rrw2HIu0Ckni22Y7CDbEQ=",
|
|
93
|
+
"file": "inspector.schema.json",
|
|
94
|
+
"id": "https://schemas.kumwe.org/studio/v1/inspector.schema.json"
|
|
95
|
+
},
|
|
56
96
|
{
|
|
57
97
|
"digest": "sha256-tOiXLsL+sv+gnL3sUeAjA/+oumRb5AGSjkeC/1GI+/8=",
|
|
58
98
|
"file": "media-asset.schema.json",
|
|
@@ -63,6 +103,11 @@
|
|
|
63
103
|
"file": "media-reference.schema.json",
|
|
64
104
|
"id": "https://schemas.kumwe.org/studio/v1/media-reference.schema.json"
|
|
65
105
|
},
|
|
106
|
+
{
|
|
107
|
+
"digest": "sha256-sJCtOlIcYAvnMhMS2zPdFo8xJFzKjNlgJLz+HT7J2mg=",
|
|
108
|
+
"file": "media-upload-grant.schema.json",
|
|
109
|
+
"id": "https://schemas.kumwe.org/studio/v1/media-upload-grant.schema.json"
|
|
110
|
+
},
|
|
66
111
|
{
|
|
67
112
|
"digest": "sha256-46XVlSre/jC+J75IDUDtCBq8yawymUGuVmUWyhM0GV8=",
|
|
68
113
|
"file": "media-upload-session.schema.json",
|
|
@@ -89,7 +134,7 @@
|
|
|
89
134
|
"id": "https://schemas.kumwe.org/studio/v1/plugin-manifest.schema.json"
|
|
90
135
|
},
|
|
91
136
|
{
|
|
92
|
-
"digest": "sha256-
|
|
137
|
+
"digest": "sha256-wg6mVwubXmfpzfOZzlSamDJtyhdpD9/7vtqjb22SYB8=",
|
|
93
138
|
"file": "preview-message.schema.json",
|
|
94
139
|
"id": "https://schemas.kumwe.org/studio/v1/preview-message.schema.json"
|
|
95
140
|
},
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://schemas.kumwe.org/studio/v1/media-upload-grant.schema.json",
|
|
4
|
+
"title": "Studio media upload grant",
|
|
5
|
+
"description": "The host's authorization to transfer one upload. Bytes never cross the JSON port: the host issues a short-lived, single-purpose destination it controls and the client transfers directly to it, so custody, quotas and storage placement stay host-owned and a large body never traverses the port transport. A grant authorizes exactly the declared upload and expires; it is not a credential the client may reuse, cache, or apply to another upload.",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"additionalProperties": false,
|
|
8
|
+
"required": ["expiresAt", "method", "plan", "uploadId", "url"],
|
|
9
|
+
"properties": {
|
|
10
|
+
"expiresAt": {
|
|
11
|
+
"description": "When the grant stops being honoured. A client that has not completed by then re-authorizes rather than retrying against a dead destination.",
|
|
12
|
+
"$ref": "common.schema.json#/$defs/rfc3339Instant"
|
|
13
|
+
},
|
|
14
|
+
"headers": {
|
|
15
|
+
"description": "Headers the client must send verbatim on the transfer. They carry no user credential and are never logged by the client.",
|
|
16
|
+
"type": "object",
|
|
17
|
+
"maxProperties": 20,
|
|
18
|
+
"propertyNames": {
|
|
19
|
+
"type": "string",
|
|
20
|
+
"pattern": "^[A-Za-z][A-Za-z0-9-]*(?![\\s\\S])",
|
|
21
|
+
"maxLength": 100
|
|
22
|
+
},
|
|
23
|
+
"additionalProperties": { "type": "string", "maxLength": 2000 }
|
|
24
|
+
},
|
|
25
|
+
"method": { "enum": ["POST", "PUT"] },
|
|
26
|
+
"plan": {
|
|
27
|
+
"description": "The bounded transfer plan the host derived from its policy. The client transfers within it and never negotiates a larger bound.",
|
|
28
|
+
"type": "object",
|
|
29
|
+
"additionalProperties": false,
|
|
30
|
+
"required": ["maximumBytes", "resumable"],
|
|
31
|
+
"properties": {
|
|
32
|
+
"chunkBytes": { "type": "integer", "minimum": 1024, "maximum": 1073741824 },
|
|
33
|
+
"maximumBytes": { "type": "integer", "minimum": 1, "maximum": 1099511627776 },
|
|
34
|
+
"resumable": { "type": "boolean" }
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
"uploadId": {
|
|
38
|
+
"description": "The opaque host-issued upload identity used to complete or abort the transfer.",
|
|
39
|
+
"$ref": "common.schema.json#/$defs/stableId"
|
|
40
|
+
},
|
|
41
|
+
"url": {
|
|
42
|
+
"description": "The absolute https destination the host controls. It is never an author-supplied value and never a Studio-derived address.",
|
|
43
|
+
"type": "string",
|
|
44
|
+
"pattern": "^https://",
|
|
45
|
+
"maxLength": 2000
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|