@reventlessdev/reventless-spec 3.0.0-alpha.82 → 3.0.0-alpha.83
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/CHANGELOG.md +7 -0
- package/package.json +1 -1
- package/src/components/Plugin.res +15 -0
- package/src/components/Plugin.res.mjs +2 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,13 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# 3.0.0-alpha.83 (2026-07-28)
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
* **platform:** provision object stores from the fields that declare them ([b5e2a1e](https://github.com/ReventlessDev/reventless-core/commit/b5e2a1ec88099941c113e4963f9c4b346b96b0d6))
|
|
11
|
+
|
|
12
|
+
|
|
6
13
|
# 3.0.0-alpha.82 (2026-07-28)
|
|
7
14
|
|
|
8
15
|
### Features
|
package/package.json
CHANGED
|
@@ -374,6 +374,21 @@ type pluginStructure = {
|
|
|
374
374
|
// read as []). js_nullable keeps it JSON-safe inside union variant payloads.
|
|
375
375
|
extensionPoints: @s.matches(extensionPointDefArrayOptionSchema)
|
|
376
376
|
option<array<extensionPointDef>>,
|
|
377
|
+
/**
|
|
378
|
+
The object stores this plugin's fields declare they need, deduplicated and
|
|
379
|
+
fully qualified as `{plugin}.{store}`.
|
|
380
|
+
|
|
381
|
+
A field typed as a storage ref states a *requirement*: the deployment needs
|
|
382
|
+
that store to exist. Collecting the requirement here is what lets it be read
|
|
383
|
+
without re-walking every component's schema — the same reason
|
|
384
|
+
`producedEventTypes` is carried rather than recomputed.
|
|
385
|
+
|
|
386
|
+
Qualified even for the common same-plugin case, so one entry has one shape
|
|
387
|
+
and the string is directly the store's identity. Optional and js_nullable for
|
|
388
|
+
the same reason as `extensionPoints`: definitions persisted before this field
|
|
389
|
+
existed still decode (absent → None, read as []).
|
|
390
|
+
*/
|
|
391
|
+
requiredStores: @s.matches(stringArrayOptionSchema) option<array<string>>,
|
|
377
392
|
}
|
|
378
393
|
|
|
379
394
|
let pluginStructureOptionSchema = _jsNullable(pluginStructureSchema, ())
|
|
@@ -186,7 +186,8 @@ let pluginStructureSchema = S.schema(s => ({
|
|
|
186
186
|
outboundTranslationSlices: s.m(S.array(outboundTranslationSliceDefSchema)),
|
|
187
187
|
inboundTranslationSlices: s.m(S.array(inboundTranslationSliceDefSchema)),
|
|
188
188
|
extensions: s.m(S.array(extensionDefSchema)),
|
|
189
|
-
extensionPoints: s.m(extensionPointDefArrayOptionSchema)
|
|
189
|
+
extensionPoints: s.m(extensionPointDefArrayOptionSchema),
|
|
190
|
+
requiredStores: s.m(stringArrayOptionSchema)
|
|
190
191
|
}));
|
|
191
192
|
|
|
192
193
|
let pluginStructureOptionSchema = SuryResMjs.js_nullable(pluginStructureSchema);
|