@paged-media/plugin-api 0.2.6-canary.0 → 0.2.8-canary.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.
- package/dist/assets.d.ts +49 -0
- package/dist/contributions.d.ts +1 -1
- package/dist/editor.d.ts +152 -2
- package/dist/host.d.ts +464 -14
- package/dist/index.d.ts +5 -2
- package/dist/manifest.d.ts +137 -4
- package/dist/mutations.d.ts +1 -1
- package/dist/panel-schema.d.ts +92 -0
- package/dist/widgets.d.ts +48 -0
- package/dist/wire.d.ts +370 -27
- package/package.json +1 -1
- package/src/manifest.schema.json +103 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@paged-media/plugin-api",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.8-canary.0",
|
|
4
4
|
"description": "The Paged plugin contract: manifest, bundle lifecycle, the BundleHost surface, and the contribution + engine wire types. Type-only.",
|
|
5
5
|
"license": "MPL-2.0 OR LicenseRef-PMEL",
|
|
6
6
|
"type": "module",
|
package/src/manifest.schema.json
CHANGED
|
@@ -63,14 +63,68 @@
|
|
|
63
63
|
]
|
|
64
64
|
}
|
|
65
65
|
},
|
|
66
|
+
"keybindings": {
|
|
67
|
+
"type": "boolean",
|
|
68
|
+
"description": "The bundle registers keybindings directly via contribute.keybinding. Keybindings have no id to list under contributes, so this boolean is their capability declaration."
|
|
69
|
+
},
|
|
66
70
|
"editContext": {
|
|
67
71
|
"type": "array",
|
|
68
72
|
"items": {
|
|
69
73
|
"type": "string"
|
|
70
74
|
}
|
|
71
75
|
},
|
|
76
|
+
"assets": {
|
|
77
|
+
"type": "array",
|
|
78
|
+
"description": "Asset-store reads the bundle uses (W-06). v1 vocabulary: \"fonts\" only (gates host.assets.getFontFace). \"images\" is reserved for v2 and rejected today. See DESIGN.md §13.",
|
|
79
|
+
"items": {
|
|
80
|
+
"enum": [
|
|
81
|
+
"fonts"
|
|
82
|
+
]
|
|
83
|
+
}
|
|
84
|
+
},
|
|
72
85
|
"network": {
|
|
73
|
-
"
|
|
86
|
+
"description": "Network reach the bundle declares (D-03). Boolean shorthand, or a per-origin allow-list + purpose. Reach is always consent-gated; documents do not fetch on open.",
|
|
87
|
+
"oneOf": [
|
|
88
|
+
{ "type": "boolean" },
|
|
89
|
+
{
|
|
90
|
+
"type": "object",
|
|
91
|
+
"additionalProperties": false,
|
|
92
|
+
"required": ["origins"],
|
|
93
|
+
"properties": {
|
|
94
|
+
"origins": {
|
|
95
|
+
"oneOf": [
|
|
96
|
+
{
|
|
97
|
+
"type": "array",
|
|
98
|
+
"items": {
|
|
99
|
+
"type": "string",
|
|
100
|
+
"pattern": "^https?://[^/]+$"
|
|
101
|
+
}
|
|
102
|
+
},
|
|
103
|
+
{ "const": "consent" }
|
|
104
|
+
]
|
|
105
|
+
},
|
|
106
|
+
"purpose": { "type": "string" }
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
]
|
|
110
|
+
},
|
|
111
|
+
"dataProviders": {
|
|
112
|
+
"type": "object",
|
|
113
|
+
"description": "Data-provider roles (paged.data §7.1 / D-09). 'publish' = categories the bundle may register providers in; 'consume' = categories it may discover + read. The neutral cross-plugin composition; plugins rendezvous at host.dataProviders, never by direct contact.",
|
|
114
|
+
"additionalProperties": false,
|
|
115
|
+
"properties": {
|
|
116
|
+
"publish": { "type": "array", "items": { "type": "string" } },
|
|
117
|
+
"consume": { "type": "array", "items": { "type": "string" } }
|
|
118
|
+
}
|
|
119
|
+
},
|
|
120
|
+
"storage": {
|
|
121
|
+
"type": "object",
|
|
122
|
+
"description": "Persistent binary storage (K-4 / S-08). 'blob' gates the OPFS-backed host.blob byte store; 'quotaBytes' requests a ceiling (host enforces the stricter of it and its hard per-plugin cap).",
|
|
123
|
+
"additionalProperties": false,
|
|
124
|
+
"properties": {
|
|
125
|
+
"blob": { "type": "boolean" },
|
|
126
|
+
"quotaBytes": { "type": "integer" }
|
|
127
|
+
}
|
|
74
128
|
},
|
|
75
129
|
"clipboard": {
|
|
76
130
|
"enum": [
|
|
@@ -78,6 +132,42 @@
|
|
|
78
132
|
"vector",
|
|
79
133
|
"full"
|
|
80
134
|
]
|
|
135
|
+
},
|
|
136
|
+
"wasm": {
|
|
137
|
+
"type": "array",
|
|
138
|
+
"description": "Declared WebAssembly artifacts the bundle ships and loads at runtime (capability-gated, declared-only, budgeted). See docs/wasm-packaging.md.",
|
|
139
|
+
"items": {
|
|
140
|
+
"type": "object",
|
|
141
|
+
"required": [
|
|
142
|
+
"name",
|
|
143
|
+
"path",
|
|
144
|
+
"purpose"
|
|
145
|
+
],
|
|
146
|
+
"additionalProperties": false,
|
|
147
|
+
"properties": {
|
|
148
|
+
"name": {
|
|
149
|
+
"type": "string",
|
|
150
|
+
"minLength": 1
|
|
151
|
+
},
|
|
152
|
+
"path": {
|
|
153
|
+
"type": "string",
|
|
154
|
+
"pattern": "^(?!/)(?!.*\\.\\.).+\\.wasm$",
|
|
155
|
+
"description": "Bundle-relative path to the .wasm file; no leading slash, no '..' segment."
|
|
156
|
+
},
|
|
157
|
+
"purpose": {
|
|
158
|
+
"enum": [
|
|
159
|
+
"layout",
|
|
160
|
+
"codec",
|
|
161
|
+
"compute"
|
|
162
|
+
]
|
|
163
|
+
},
|
|
164
|
+
"maxBytes": {
|
|
165
|
+
"type": "integer",
|
|
166
|
+
"minimum": 1,
|
|
167
|
+
"maximum": 8388608
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
}
|
|
81
171
|
}
|
|
82
172
|
}
|
|
83
173
|
},
|
|
@@ -150,6 +240,18 @@
|
|
|
150
240
|
}
|
|
151
241
|
}
|
|
152
242
|
}
|
|
243
|
+
},
|
|
244
|
+
"importers": {
|
|
245
|
+
"type": "array",
|
|
246
|
+
"items": {
|
|
247
|
+
"type": "string"
|
|
248
|
+
}
|
|
249
|
+
},
|
|
250
|
+
"exporters": {
|
|
251
|
+
"type": "array",
|
|
252
|
+
"items": {
|
|
253
|
+
"type": "string"
|
|
254
|
+
}
|
|
153
255
|
}
|
|
154
256
|
}
|
|
155
257
|
}
|