openvibers/openvibe.sdk Commits
openvibe-contracts v0.399.0 (was v0.385.0) (#203)
Changes
@@@ -664,7 +664,7 @@ Nothing at runtime. `openvibe-contracts` and `@electric-sql/pglite` are devDepenPart of the [OpenVibe network](https://openvibe.network). Built in the open by [OpenVibers](https://github.com/OpenVibers).<!-- versions:start -->--- openvibe-contracts: v0.384.0++- openvibe-contracts: v0.399.0<!-- versions:end -->### Network-wide sharing (Node)@@@ -4,10 +4,10 @@"code": true,"wave": "W2","version": "0.146.0",-- "plan": "OpenVibe End-to-End Realignment & Implementation Plan, revision 3 (20 Sep 2026), \u00a73.2; roadmap \u00a730",++ "plan": "OpenVibe End-to-End Realignment & Implementation Plan, revision 3 (20 Sep 2026), §3.2; roadmap §30","deployed": false,"deployment": "none: a package released as git tags; services and apps pin a tag",-- "contracts": "openvibe-contracts v0.385.0",++ "contracts": "openvibe-contracts v0.399.0","features": ["menu (openvibe-sdk/menu): menuCard() builds one validated frame.menu-card@1 (plain text, the contract caps, https links on the site own origin or an openvibe.* host, an optional item picture) and menuRoute() is the Express/node:http GET /.well-known/openvibe-menu.json handler (public cache, CORS *, [] and one log line when the cards cannot be built)","cam (openvibe-sdk/cam): defineOvCamera({ src }) injects the <ov-camera> element from openvibe.cam once and resolves to its class, with typed attributes, events and methods (start/stop/capture/flip); browser-only, upload=\"off\" by default",@@@ -14,7 +14,7 @@"devDependencies": {"@electric-sql/pglite": "^0.5.8","iovalkey": "^0.4.0",-- "openvibe-contracts": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.385.0",++ "openvibe-contracts": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.399.0","pg": "^8.23.0"},"engines": {@@@ -198,9 +198,9 @@"license": "MIT"},"node_modules/openvibe-contracts": {-- "version": "0.385.0",-- "resolved": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.385.0",-- "integrity": "sha512-3wf2bLck5fcOblMYOcIutxRCYeJRqEOqf1bEReCUkJ/AvzVS7/Uq2Cpp9zmSjNkajTd8b3DKQ7WRSaMppQ92yg==",++ "version": "0.399.0",++ "resolved": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.399.0",++ "integrity": "sha512-7QqSrMH2BT6ZOJu+xxusjEPICaVKGrr+3ij3tg0leE3sy4jfPwvWVTwaXZSCPM1feoP7heUDnSO4/9QBmjguJw==","dev": true,"license": "AGPL-3.0-only","dependencies": {@@@ -634,7 +634,7 @@"devDependencies": {"@electric-sql/pglite": "^0.5.8","iovalkey": "^0.4.0",-- "openvibe-contracts": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.385.0",++ "openvibe-contracts": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.399.0","pg": "^8.23.0"},"peerDependencies": {@@@ -1972,6 +1972,79 @@ export interface ServiceManifest {* The room's launcher group in OpenVibe.Shared rooms.js and OpenVibe.Network frame/sites.js; optional so older manifests retain their meaning.*/neighbourhood?: "streams" | "games" | "answers" | "make" | "shop" | "people" | "build";++ /**++ * This site's own items on the network's footer strip, read with the rest of it at openvibe.network GET /api/frame/online?site=<id>: a label, an icon from the shared glyph set, an https link on an OpenVibe domain (any openvibe.* host), and either a count the site reports or a fixed line. Network checks every field again before it reaches a page.++ *++ * @maxItems 3++ */++ strip?:++ | []++ | [++ (++ | {++ [k: string]: unknown | undefined;++ }++ | {++ [k: string]: unknown | undefined;++ }++ ) & {++ [k: string]: unknown | undefined;++ }++ ]++ | [++ (++ | {++ [k: string]: unknown | undefined;++ }++ | {++ [k: string]: unknown | undefined;++ }++ ) & {++ [k: string]: unknown | undefined;++ },++ (++ | {++ [k: string]: unknown | undefined;++ }++ | {++ [k: string]: unknown | undefined;++ }++ ) & {++ [k: string]: unknown | undefined;++ }++ ]++ | [++ (++ | {++ [k: string]: unknown | undefined;++ }++ | {++ [k: string]: unknown | undefined;++ }++ ) & {++ [k: string]: unknown | undefined;++ },++ (++ | {++ [k: string]: unknown | undefined;++ }++ | {++ [k: string]: unknown | undefined;++ }++ ) & {++ [k: string]: unknown | undefined;++ },++ (++ | {++ [k: string]: unknown | undefined;++ }++ | {++ [k: string]: unknown | undefined;++ }++ ) & {++ [k: string]: unknown | undefined;++ }++ ];};capabilities: string[];eventsProduced: string[];
@@ -664,7 +664,7 @@ Nothing at runtime. `openvibe-contracts` and `@electric-sql/pglite` are devDepen
@@ -664,7 +664,7 @@ Nothing at runtime. `openvibe-contracts` and `@electric-sql/pglite` are devDepen
Part of the [OpenVibe network](https://openvibe.network). Built in the open by [OpenVibers](https://github.com/OpenVibers).
Part of the [OpenVibe network](https://openvibe.network). Built in the open by [OpenVibers](https://github.com/OpenVibers).
<!-- versions:start -->
<!-- versions:start -->
-- openvibe-contracts: v0.384.0
+- openvibe-contracts: v0.399.0
<!-- versions:end -->
<!-- versions:end -->
### Network-wide sharing (Node)
### Network-wide sharing (Node)
@@ -4,10 +4,10 @@
@@ -4,10 +4,10 @@
"code": true,
"code": true,
"wave": "W2",
"wave": "W2",
"version": "0.146.0",
"version": "0.146.0",
- "plan": "OpenVibe End-to-End Realignment & Implementation Plan, revision 3 (20 Sep 2026), \u00a73.2; roadmap \u00a730",
+ "plan": "OpenVibe End-to-End Realignment & Implementation Plan, revision 3 (20 Sep 2026), §3.2; roadmap §30",
"deployed": false,
"deployed": false,
"deployment": "none: a package released as git tags; services and apps pin a tag",
"deployment": "none: a package released as git tags; services and apps pin a tag",
- "contracts": "openvibe-contracts v0.385.0",
+ "contracts": "openvibe-contracts v0.399.0",
"features": [
"features": [
"menu (openvibe-sdk/menu): menuCard() builds one validated frame.menu-card@1 (plain text, the contract caps, https links on the site own origin or an openvibe.* host, an optional item picture) and menuRoute() is the Express/node:http GET /.well-known/openvibe-menu.json handler (public cache, CORS *, [] and one log line when the cards cannot be built)",
"menu (openvibe-sdk/menu): menuCard() builds one validated frame.menu-card@1 (plain text, the contract caps, https links on the site own origin or an openvibe.* host, an optional item picture) and menuRoute() is the Express/node:http GET /.well-known/openvibe-menu.json handler (public cache, CORS *, [] and one log line when the cards cannot be built)",
"cam (openvibe-sdk/cam): defineOvCamera({ src }) injects the <ov-camera> element from openvibe.cam once and resolves to its class, with typed attributes, events and methods (start/stop/capture/flip); browser-only, upload=\"off\" by default",
"cam (openvibe-sdk/cam): defineOvCamera({ src }) injects the <ov-camera> element from openvibe.cam once and resolves to its class, with typed attributes, events and methods (start/stop/capture/flip); browser-only, upload=\"off\" by default",
@@ -14,7 +14,7 @@
@@ -14,7 +14,7 @@
"devDependencies": {
"devDependencies": {
"@electric-sql/pglite": "^0.5.8",
"@electric-sql/pglite": "^0.5.8",
"iovalkey": "^0.4.0",
"iovalkey": "^0.4.0",
- "openvibe-contracts": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.385.0",
+ "openvibe-contracts": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.399.0",
"pg": "^8.23.0"
"pg": "^8.23.0"
},
},
"engines": {
"engines": {
@@ -198,9 +198,9 @@
@@ -198,9 +198,9 @@
"license": "MIT"
"license": "MIT"
},
},
"node_modules/openvibe-contracts": {
"node_modules/openvibe-contracts": {
- "version": "0.385.0",
- "resolved": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.385.0",
- "integrity": "sha512-3wf2bLck5fcOblMYOcIutxRCYeJRqEOqf1bEReCUkJ/AvzVS7/Uq2Cpp9zmSjNkajTd8b3DKQ7WRSaMppQ92yg==",
+ "version": "0.399.0",
+ "resolved": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.399.0",
+ "integrity": "sha512-7QqSrMH2BT6ZOJu+xxusjEPICaVKGrr+3ij3tg0leE3sy4jfPwvWVTwaXZSCPM1feoP7heUDnSO4/9QBmjguJw==",
"dev": true,
"dev": true,
"license": "AGPL-3.0-only",
"license": "AGPL-3.0-only",
"dependencies": {
"dependencies": {
@@ -634,7 +634,7 @@
@@ -634,7 +634,7 @@
"devDependencies": {
"devDependencies": {
"@electric-sql/pglite": "^0.5.8",
"@electric-sql/pglite": "^0.5.8",
"iovalkey": "^0.4.0",
"iovalkey": "^0.4.0",
- "openvibe-contracts": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.385.0",
+ "openvibe-contracts": "https://codeload.github.com/OpenVibers/OpenVibe.Contracts/tar.gz/refs/tags/v0.399.0",
"pg": "^8.23.0"
"pg": "^8.23.0"
},
},
"peerDependencies": {
"peerDependencies": {
@@ -1972,6 +1972,79 @@ export interface ServiceManifest {
@@ -1972,6 +1972,79 @@ export interface ServiceManifest {
* The room's launcher group in OpenVibe.Shared rooms.js and OpenVibe.Network frame/sites.js; optional so older manifests retain their meaning.
* The room's launcher group in OpenVibe.Shared rooms.js and OpenVibe.Network frame/sites.js; optional so older manifests retain their meaning.
*/
*/
neighbourhood?: "streams" | "games" | "answers" | "make" | "shop" | "people" | "build";
neighbourhood?: "streams" | "games" | "answers" | "make" | "shop" | "people" | "build";
+ /**
+ * This site's own items on the network's footer strip, read with the rest of it at openvibe.network GET /api/frame/online?site=<id>: a label, an icon from the shared glyph set, an https link on an OpenVibe domain (any openvibe.* host), and either a count the site reports or a fixed line. Network checks every field again before it reaches a page.
+ *
+ * @maxItems 3
+ */
+ strip?:
+ | []
+ | [
+ (
+ | {
+ [k: string]: unknown | undefined;
+ }
+ | {
+ [k: string]: unknown | undefined;
+ }
+ ) & {
+ [k: string]: unknown | undefined;
+ }
+ ]
+ | [
+ (
+ | {
+ [k: string]: unknown | undefined;
+ }
+ | {
+ [k: string]: unknown | undefined;
+ }
+ ) & {
+ [k: string]: unknown | undefined;
+ },
+ (
+ | {
+ [k: string]: unknown | undefined;
+ }
+ | {
+ [k: string]: unknown | undefined;
+ }
+ ) & {
+ [k: string]: unknown | undefined;
+ }
+ ]
+ | [
+ (
+ | {
+ [k: string]: unknown | undefined;
+ }
+ | {
+ [k: string]: unknown | undefined;
+ }
+ ) & {
+ [k: string]: unknown | undefined;
+ },
+ (
+ | {
+ [k: string]: unknown | undefined;
+ }
+ | {
+ [k: string]: unknown | undefined;
+ }
+ ) & {
+ [k: string]: unknown | undefined;
+ },
+ (
+ | {
+ [k: string]: unknown | undefined;
+ }
+ | {
+ [k: string]: unknown | undefined;
+ }
+ ) & {
+ [k: string]: unknown | undefined;
+ }
+ ];
};
};
capabilities: string[];
capabilities: string[];
eventsProduced: string[];
eventsProduced: string[];