@onmark/cli 0.3.0 → 0.4.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.
Files changed (34) hide show
  1. package/onmark-release.json +83 -53
  2. package/package.json +4 -4
  3. package/packages/authoring/dist/src/frame-motion.d.ts +10 -2
  4. package/packages/authoring/dist/src/frame-motion.js +29 -6
  5. package/packages/authoring/dist/src/index.d.ts +2 -2
  6. package/packages/authoring/dist/src/motion.d.ts +16 -4
  7. package/packages/authoring/dist/src/presentation.js +34 -1
  8. package/packages/authoring/dist/src/types.d.ts +1 -1
  9. package/packages/bundler/dist/src/authored_html.d.ts +17 -7
  10. package/packages/bundler/dist/src/authored_html.js +79 -21
  11. package/packages/bundler/dist/src/bundle_projection.d.ts +9 -0
  12. package/packages/bundler/dist/src/bundle_projection.js +66 -0
  13. package/packages/bundler/dist/src/command.js +28 -8
  14. package/packages/bundler/dist/src/generated/bundle-projection-validator.d.ts +7 -0
  15. package/packages/bundler/dist/src/generated/bundle-projection-validator.js +432 -0
  16. package/packages/bundler/dist/src/generated/bundle-projection.d.ts +25 -0
  17. package/packages/bundler/dist/src/generated/bundle-projection.js +2 -0
  18. package/packages/bundler/dist/src/index.d.ts +1 -1
  19. package/packages/bundler/dist/src/presentation.d.ts +13 -6
  20. package/packages/bundler/dist/src/presentation.js +58 -28
  21. package/packages/motion-gsap/dist/src/index.d.ts +10 -2
  22. package/packages/motion-gsap/dist/src/index.js +27 -5
  23. package/packages/runtime/dist/src/generated/browser-request.d.ts +15 -2
  24. package/packages/runtime/dist/src/generated/browser-response.d.ts +1 -1
  25. package/packages/runtime/dist/src/generated/runtime-contract.d.ts +2 -0
  26. package/packages/runtime/dist/src/generated/runtime-contract.js +2 -0
  27. package/packages/runtime/dist/src/generated/validators.d.ts +2 -2
  28. package/packages/runtime/dist/src/generated/validators.js +331 -128
  29. package/packages/runtime/dist/src/index.d.ts +2 -2
  30. package/packages/runtime/dist/src/index.js +1 -1
  31. package/packages/runtime/dist/src/presentation.d.ts +10 -0
  32. package/packages/runtime/dist/src/presentation.js +18 -3
  33. package/packages/runtime/dist/src/session.js +61 -12
  34. package/packages/runtime/dist/src/types.d.ts +1 -1
@@ -1,12 +1,12 @@
1
1
  // Generated by `cargo xtask schema`; do not edit.
2
2
  "use strict";
3
3
  export const validateBrowserRequest = validate20;
4
- const schema31 = { "$defs": { "BrowserCommand": { "description": "Closed commands understood by the browser runtime.", "oneOf": [{ "additionalProperties": false, "description": "Install one immutable browser plan.", "properties": { "plan": { "$ref": "#/$defs/BrowserPlan", "description": "Solved frame facts consumed by the runtime clock." }, "type": { "const": "load", "type": "string" } }, "required": ["type", "plan"], "type": "object" }, { "additionalProperties": false, "description": "Stabilize resources at the evaluation start frame.", "properties": { "evaluationStart": { "$ref": "#/$defs/WireFrame", "description": "First frame that may be evaluated by this unit." }, "type": { "const": "prepare", "type": "string" } }, "required": ["type", "evaluationStart"], "type": "object" }, { "additionalProperties": false, "description": "Evaluate one exact absolute frame.", "properties": { "frame": { "$ref": "#/$defs/WireFrame", "description": "Frame selected by the native executor." }, "type": { "const": "seek", "type": "string" } }, "required": ["type", "frame"], "type": "object" }, { "additionalProperties": false, "description": "Confirm staged media reached the compositor before accepting capture.", "properties": { "frame": { "$ref": "#/$defs/WireFrame", "description": "Frame whose staged media must be compositor-confirmed." }, "type": { "const": "confirm", "type": "string" } }, "required": ["type", "frame"], "type": "object" }, { "additionalProperties": false, "description": "Release page-owned resources for this session.", "properties": { "type": { "const": "dispose", "type": "string" } }, "required": ["type"], "type": "object" }] }, "BrowserNode": { "additionalProperties": false, "description": "Browser-facing identity retained from one Timeline element.", "properties": { "authoredId": { "type": ["string", "null"] }, "nodeId": { "$ref": "#/$defs/BrowserNodeId" } }, "required": ["nodeId"], "type": "object" }, "BrowserNodeId": { "description": "Browser identity for one Timeline element or imported caption.\n\nIDs form dense renderable-semantic preorder within one Browser Plan.\n\nAuthored IDs, rather than this unit-local key, retain cross-projection\nsemantic identity.", "format": "uint32", "maximum": 4294967295, "minimum": 0, "type": "integer" }, "BrowserOverlay": { "additionalProperties": false, "description": "One solved overlay placement consumed by the browser presentation.", "properties": { "interval": { "$ref": "#/$defs/WireInterval" }, "kind": { "$ref": "#/$defs/BrowserOverlayKind" }, "node": { "$ref": "#/$defs/BrowserNode" }, "shotId": { "anyOf": [{ "$ref": "#/$defs/BrowserNodeId" }, { "type": "null" }] }, "text": { "maxLength": 65536, "type": "string" } }, "required": ["node", "kind", "text", "interval"], "type": "object" }, "BrowserOverlayKind": { "description": "Closed overlay roles understood by the browser presentation.", "oneOf": [{ "const": "title", "description": "Authored title content.", "type": "string" }, { "const": "callToAction", "description": "Authored call-to-action content.", "type": "string" }, { "const": "caption", "description": "Imported caption text.", "type": "string" }] }, "BrowserPlan": { "additionalProperties": false, "description": "Timeline facts consumed by the browser clock and presentation.", "properties": { "evaluation": { "$ref": "#/$defs/WireInterval" }, "film": { "$ref": "#/$defs/BrowserNode" }, "frameRate": { "$ref": "#/$defs/WireFrameRate" }, "output": { "$ref": "#/$defs/WireInterval" }, "overlays": { "items": { "$ref": "#/$defs/BrowserOverlay" }, "maxItems": 10000, "type": "array" }, "scenes": { "items": { "$ref": "#/$defs/BrowserScene" }, "maxItems": 10000, "type": "array" }, "shots": { "items": { "$ref": "#/$defs/BrowserShot" }, "maxItems": 10000, "type": "array" }, "timeline": { "$ref": "#/$defs/WireInterval" }, "timelineVersion": { "const": 2, "format": "uint16", "maximum": 65535, "minimum": 0, "type": "integer" }, "videos": { "items": { "$ref": "#/$defs/BrowserVideo" }, "maxItems": 10000, "type": "array" } }, "required": ["timelineVersion", "frameRate", "timeline", "evaluation", "output", "film", "scenes", "shots", "videos", "overlays"], "type": "object" }, "BrowserScene": { "additionalProperties": false, "description": "One scene container intersecting this unit, with its complete Timeline interval.", "properties": { "interval": { "$ref": "#/$defs/WireInterval" }, "node": { "$ref": "#/$defs/BrowserNode" } }, "required": ["node", "interval"], "type": "object" }, "BrowserShot": { "additionalProperties": false, "description": "One shot container intersecting this unit, with its complete Timeline interval.", "properties": { "interval": { "$ref": "#/$defs/WireInterval" }, "node": { "$ref": "#/$defs/BrowserNode" }, "sceneId": { "$ref": "#/$defs/BrowserNodeId" } }, "required": ["node", "sceneId", "interval"], "type": "object" }, "BrowserVideo": { "additionalProperties": false, "description": "One primary video placement consumed by the browser presentation adapter.", "properties": { "assetId": { "pattern": "^sha256:[0-9a-f]{64}$", "type": "string" }, "interval": { "$ref": "#/$defs/WireInterval" }, "node": { "$ref": "#/$defs/BrowserNode" }, "shotId": { "$ref": "#/$defs/BrowserNodeId" }, "source": { "$ref": "#/$defs/BrowserVideoSource" }, "sourceTiming": { "$ref": "#/$defs/BrowserVideoTiming" } }, "required": ["node", "shotId", "assetId", "interval", "sourceTiming", "source"], "type": "object" }, "BrowserVideoSource": { "additionalProperties": false, "description": "Exact source-time mapping for one browser video placement.", "properties": { "endNanoseconds": { "maxLength": 20, "minLength": 1, "pattern": "^(0|[1-9][0-9]*)$", "type": "string" }, "holdLastNanoseconds": { "maxLength": 20, "minLength": 1, "pattern": "^(0|[1-9][0-9]*)$", "type": "string" }, "naturalEndNanoseconds": { "maxLength": 20, "minLength": 1, "pattern": "^(0|[1-9][0-9]*)$", "type": "string" }, "playbackRate": { "$ref": "#/$defs/WirePlaybackRate" }, "plays": { "format": "uint32", "minimum": 1, "type": "integer" }, "startNanoseconds": { "maxLength": 20, "minLength": 1, "pattern": "^(0|[1-9][0-9]*)$", "type": "string" } }, "required": ["startNanoseconds", "endNanoseconds", "naturalEndNanoseconds", "playbackRate", "plays", "holdLastNanoseconds"], "type": "object" }, "BrowserVideoTiming": { "description": "Exact source-frame timing projected into the browser runtime.", "oneOf": [{ "additionalProperties": false, "description": "Every source frame has one exact rational rate.", "properties": { "frameRate": { "$ref": "#/$defs/WireFrameRate", "description": "Exact source frames per second." }, "kind": { "const": "constant", "type": "string" } }, "required": ["kind", "frameRate"], "type": "object" }, { "additionalProperties": false, "description": "Every source frame carries one half-open timestamp interval.", "properties": { "boundaries": { "description": "Canonical decimal ticks from source zero through terminal end.", "items": { "type": "string" }, "maxItems": 100000, "minItems": 3, "type": "array" }, "kind": { "const": "variable", "type": "string" }, "timebase": { "$ref": "#/$defs/WireMediaTimebase", "description": "Exact seconds represented by one source timestamp tick." } }, "required": ["kind", "timebase", "boundaries"], "type": "object" }] }, "ProtocolVersion": { "const": 3, "description": "Version of the native-to-browser message contract.", "format": "uint16", "maximum": 65535, "minimum": 0, "type": "integer" }, "RequestId": { "description": "Correlation identity shared by one request and its response events.", "format": "uint32", "maximum": 4294967295, "minimum": 0, "type": "integer" }, "WireFrame": { "description": "Exact frame integer accepted by JavaScript without rounding.", "format": "uint64", "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "WireFrameRate": { "additionalProperties": false, "description": "Exact rational frame rate represented with browser-safe integers.", "properties": { "denominator": { "format": "uint32", "maximum": 4294967295, "minimum": 1, "type": "integer" }, "numerator": { "format": "uint32", "maximum": 4294967295, "minimum": 1, "type": "integer" } }, "required": ["numerator", "denominator"], "type": "object" }, "WireInterval": { "additionalProperties": false, "description": "One half-open browser frame interval.", "properties": { "end": { "$ref": "#/$defs/WireFrame" }, "start": { "$ref": "#/$defs/WireFrame" } }, "required": ["start", "end"], "type": "object" }, "WireMediaTimebase": { "additionalProperties": false, "description": "Exact media timestamp unit represented with browser-safe integers.", "properties": { "denominator": { "format": "uint32", "maximum": 4294967295, "minimum": 1, "type": "integer" }, "numerator": { "format": "uint32", "maximum": 4294967295, "minimum": 1, "type": "integer" } }, "required": ["numerator", "denominator"], "type": "object" }, "WirePlaybackRate": { "additionalProperties": false, "description": "Exact canonical playback ratio represented with browser-safe integers.", "properties": { "denominator": { "format": "uint32", "maximum": 4294967295, "minimum": 1, "type": "integer" }, "numerator": { "format": "uint32", "maximum": 4294967295, "minimum": 1, "type": "integer" } }, "required": ["numerator", "denominator"], "type": "object" } }, "$id": "https://onmark.dev/schemas/browser-request-v3.schema.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "One versioned command sent from the native executor to the browser.", "properties": { "command": { "$ref": "#/$defs/BrowserCommand" }, "requestId": { "$ref": "#/$defs/RequestId" }, "version": { "$ref": "#/$defs/ProtocolVersion" } }, "required": ["version", "requestId", "command"], "title": "BrowserRequest", "type": "object", "x-onmark-runtime-host": "__ONMARK_RUNTIME__" };
5
- const schema56 = { "description": "Correlation identity shared by one request and its response events.", "format": "uint32", "maximum": 4294967295, "minimum": 0, "type": "integer" };
6
- const schema57 = { "const": 3, "description": "Version of the native-to-browser message contract.", "format": "uint16", "maximum": 65535, "minimum": 0, "type": "integer" };
4
+ const schema31 = { "$defs": { "BrowserCommand": { "description": "Closed commands understood by the browser runtime.", "oneOf": [{ "additionalProperties": false, "description": "Install one immutable browser plan.", "properties": { "plan": { "$ref": "#/$defs/BrowserPlan", "description": "Solved frame facts consumed by the runtime clock." }, "type": { "const": "load", "type": "string" } }, "required": ["type", "plan"], "type": "object" }, { "additionalProperties": false, "description": "Stabilize resources at the evaluation start frame.", "properties": { "evaluationStart": { "$ref": "#/$defs/WireFrame", "description": "First frame that may be evaluated by this unit." }, "type": { "const": "prepare", "type": "string" } }, "required": ["type", "evaluationStart"], "type": "object" }, { "additionalProperties": false, "description": "Evaluate one exact absolute frame.", "properties": { "frame": { "$ref": "#/$defs/WireFrame", "description": "Frame selected by the native executor." }, "type": { "const": "seek", "type": "string" } }, "required": ["type", "frame"], "type": "object" }, { "additionalProperties": false, "description": "Confirm staged media reached the compositor before accepting capture.", "properties": { "frame": { "$ref": "#/$defs/WireFrame", "description": "Frame whose staged media must be compositor-confirmed." }, "type": { "const": "confirm", "type": "string" } }, "required": ["type", "frame"], "type": "object" }, { "additionalProperties": false, "description": "Release page-owned resources for this session.", "properties": { "type": { "const": "dispose", "type": "string" } }, "required": ["type"], "type": "object" }] }, "BrowserNode": { "additionalProperties": false, "description": "Browser-facing identity retained from one Timeline element.", "properties": { "authoredId": { "type": ["string", "null"] }, "nodeId": { "$ref": "#/$defs/BrowserNodeId" } }, "required": ["nodeId"], "type": "object" }, "BrowserNodeId": { "description": "Browser identity for one Timeline element or imported caption.\n\nIDs form dense renderable-semantic preorder within one Browser Plan.\n\nAuthored IDs, rather than this unit-local key, retain cross-projection\nsemantic identity.", "format": "uint32", "maximum": 4294967295, "minimum": 0, "type": "integer" }, "BrowserOverlay": { "additionalProperties": false, "description": "One solved overlay placement consumed by the browser presentation.", "properties": { "interval": { "$ref": "#/$defs/WireInterval" }, "kind": { "$ref": "#/$defs/BrowserOverlayKind" }, "node": { "$ref": "#/$defs/BrowserNode" }, "shotId": { "anyOf": [{ "$ref": "#/$defs/BrowserNodeId" }, { "type": "null" }] }, "text": { "maxLength": 65536, "type": "string" } }, "required": ["node", "kind", "text", "interval"], "type": "object" }, "BrowserOverlayKind": { "description": "Closed overlay roles understood by the browser presentation.", "oneOf": [{ "const": "title", "description": "Authored title content.", "type": "string" }, { "const": "callToAction", "description": "Authored call-to-action content.", "type": "string" }, { "const": "caption", "description": "Imported caption text.", "type": "string" }] }, "BrowserPlan": { "additionalProperties": false, "description": "Timeline facts consumed by the browser clock and presentation.", "properties": { "evaluation": { "$ref": "#/$defs/WireInterval" }, "film": { "$ref": "#/$defs/BrowserNode" }, "frameRate": { "$ref": "#/$defs/WireFrameRate" }, "output": { "$ref": "#/$defs/WireInterval" }, "overlays": { "items": { "$ref": "#/$defs/BrowserOverlay" }, "maxItems": 10000, "type": "array" }, "scenes": { "items": { "$ref": "#/$defs/BrowserScene" }, "maxItems": 10000, "type": "array" }, "shots": { "items": { "$ref": "#/$defs/BrowserShot" }, "maxItems": 10000, "type": "array" }, "timeline": { "$ref": "#/$defs/WireInterval" }, "timelineVersion": { "const": 3, "format": "uint16", "maximum": 65535, "minimum": 0, "type": "integer" }, "transitions": { "items": { "$ref": "#/$defs/BrowserTransition" }, "maxItems": 10000, "type": "array" }, "videos": { "items": { "$ref": "#/$defs/BrowserVideo" }, "maxItems": 10000, "type": "array" } }, "required": ["timelineVersion", "frameRate", "timeline", "evaluation", "output", "film", "scenes", "shots", "transitions", "videos", "overlays"], "type": "object" }, "BrowserScene": { "additionalProperties": false, "description": "One scene container intersecting this unit, with its complete Timeline interval.", "properties": { "interval": { "$ref": "#/$defs/WireInterval" }, "node": { "$ref": "#/$defs/BrowserNode" } }, "required": ["node", "interval"], "type": "object" }, "BrowserShot": { "additionalProperties": false, "description": "One shot container intersecting this unit, with its complete Timeline interval.", "properties": { "interval": { "$ref": "#/$defs/WireInterval" }, "node": { "$ref": "#/$defs/BrowserNode" }, "sceneId": { "$ref": "#/$defs/BrowserNodeId" } }, "required": ["node", "sceneId", "interval"], "type": "object" }, "BrowserTransition": { "additionalProperties": false, "description": "One solved transition between two adjacent browser shots.", "properties": { "incomingShotId": { "$ref": "#/$defs/BrowserNodeId" }, "interval": { "$ref": "#/$defs/WireInterval" }, "node": { "$ref": "#/$defs/BrowserNode" }, "outgoingShotId": { "$ref": "#/$defs/BrowserNodeId" } }, "required": ["node", "outgoingShotId", "incomingShotId", "interval"], "type": "object" }, "BrowserVideo": { "additionalProperties": false, "description": "One primary video placement consumed by the browser presentation adapter.", "properties": { "assetId": { "pattern": "^sha256:[0-9a-f]{64}$", "type": "string" }, "interval": { "$ref": "#/$defs/WireInterval" }, "node": { "$ref": "#/$defs/BrowserNode" }, "shotId": { "$ref": "#/$defs/BrowserNodeId" }, "source": { "$ref": "#/$defs/BrowserVideoSource" }, "sourceTiming": { "$ref": "#/$defs/BrowserVideoTiming" } }, "required": ["node", "shotId", "assetId", "interval", "sourceTiming", "source"], "type": "object" }, "BrowserVideoSource": { "additionalProperties": false, "description": "Exact source-time mapping for one browser video placement.", "properties": { "endNanoseconds": { "maxLength": 20, "minLength": 1, "pattern": "^(0|[1-9][0-9]*)$", "type": "string" }, "holdLastNanoseconds": { "maxLength": 20, "minLength": 1, "pattern": "^(0|[1-9][0-9]*)$", "type": "string" }, "naturalEndNanoseconds": { "maxLength": 20, "minLength": 1, "pattern": "^(0|[1-9][0-9]*)$", "type": "string" }, "playbackRate": { "$ref": "#/$defs/WirePlaybackRate" }, "plays": { "format": "uint32", "minimum": 1, "type": "integer" }, "startNanoseconds": { "maxLength": 20, "minLength": 1, "pattern": "^(0|[1-9][0-9]*)$", "type": "string" } }, "required": ["startNanoseconds", "endNanoseconds", "naturalEndNanoseconds", "playbackRate", "plays", "holdLastNanoseconds"], "type": "object" }, "BrowserVideoTiming": { "description": "Exact source-frame timing projected into the browser runtime.", "oneOf": [{ "additionalProperties": false, "description": "Every source frame has one exact rational rate.", "properties": { "frameRate": { "$ref": "#/$defs/WireFrameRate", "description": "Exact source frames per second." }, "kind": { "const": "constant", "type": "string" } }, "required": ["kind", "frameRate"], "type": "object" }, { "additionalProperties": false, "description": "Every source frame carries one half-open timestamp interval.", "properties": { "boundaries": { "description": "Canonical decimal ticks from source zero through terminal end.", "items": { "type": "string" }, "maxItems": 100000, "minItems": 3, "type": "array" }, "kind": { "const": "variable", "type": "string" }, "timebase": { "$ref": "#/$defs/WireMediaTimebase", "description": "Exact seconds represented by one source timestamp tick." } }, "required": ["kind", "timebase", "boundaries"], "type": "object" }] }, "ProtocolVersion": { "const": 4, "description": "Version of the native-to-browser message contract.", "format": "uint16", "maximum": 65535, "minimum": 0, "type": "integer" }, "RequestId": { "description": "Correlation identity shared by one request and its response events.", "format": "uint32", "maximum": 4294967295, "minimum": 0, "type": "integer" }, "WireFrame": { "description": "Exact frame integer accepted by JavaScript without rounding.", "format": "uint64", "maximum": 9007199254740991, "minimum": 0, "type": "integer" }, "WireFrameRate": { "additionalProperties": false, "description": "Exact rational frame rate represented with browser-safe integers.", "properties": { "denominator": { "format": "uint32", "maximum": 4294967295, "minimum": 1, "type": "integer" }, "numerator": { "format": "uint32", "maximum": 4294967295, "minimum": 1, "type": "integer" } }, "required": ["numerator", "denominator"], "type": "object" }, "WireInterval": { "additionalProperties": false, "description": "One half-open browser frame interval.", "properties": { "end": { "$ref": "#/$defs/WireFrame" }, "start": { "$ref": "#/$defs/WireFrame" } }, "required": ["start", "end"], "type": "object" }, "WireMediaTimebase": { "additionalProperties": false, "description": "Exact media timestamp unit represented with browser-safe integers.", "properties": { "denominator": { "format": "uint32", "maximum": 4294967295, "minimum": 1, "type": "integer" }, "numerator": { "format": "uint32", "maximum": 4294967295, "minimum": 1, "type": "integer" } }, "required": ["numerator", "denominator"], "type": "object" }, "WirePlaybackRate": { "additionalProperties": false, "description": "Exact canonical playback ratio represented with browser-safe integers.", "properties": { "denominator": { "format": "uint32", "maximum": 4294967295, "minimum": 1, "type": "integer" }, "numerator": { "format": "uint32", "maximum": 4294967295, "minimum": 1, "type": "integer" } }, "required": ["numerator", "denominator"], "type": "object" } }, "$id": "https://onmark.dev/schemas/browser-request-v4.schema.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "One versioned command sent from the native executor to the browser.", "properties": { "command": { "$ref": "#/$defs/BrowserCommand" }, "requestId": { "$ref": "#/$defs/RequestId" }, "version": { "$ref": "#/$defs/ProtocolVersion" } }, "required": ["version", "requestId", "command"], "title": "BrowserRequest", "type": "object", "x-onmark-runtime-host": "__ONMARK_RUNTIME__" };
5
+ const schema59 = { "description": "Correlation identity shared by one request and its response events.", "format": "uint32", "maximum": 4294967295, "minimum": 0, "type": "integer" };
6
+ const schema60 = { "const": 4, "description": "Version of the native-to-browser message contract.", "format": "uint16", "maximum": 65535, "minimum": 0, "type": "integer" };
7
7
  const schema32 = { "description": "Closed commands understood by the browser runtime.", "oneOf": [{ "additionalProperties": false, "description": "Install one immutable browser plan.", "properties": { "plan": { "$ref": "#/$defs/BrowserPlan", "description": "Solved frame facts consumed by the runtime clock." }, "type": { "const": "load", "type": "string" } }, "required": ["type", "plan"], "type": "object" }, { "additionalProperties": false, "description": "Stabilize resources at the evaluation start frame.", "properties": { "evaluationStart": { "$ref": "#/$defs/WireFrame", "description": "First frame that may be evaluated by this unit." }, "type": { "const": "prepare", "type": "string" } }, "required": ["type", "evaluationStart"], "type": "object" }, { "additionalProperties": false, "description": "Evaluate one exact absolute frame.", "properties": { "frame": { "$ref": "#/$defs/WireFrame", "description": "Frame selected by the native executor." }, "type": { "const": "seek", "type": "string" } }, "required": ["type", "frame"], "type": "object" }, { "additionalProperties": false, "description": "Confirm staged media reached the compositor before accepting capture.", "properties": { "frame": { "$ref": "#/$defs/WireFrame", "description": "Frame whose staged media must be compositor-confirmed." }, "type": { "const": "confirm", "type": "string" } }, "required": ["type", "frame"], "type": "object" }, { "additionalProperties": false, "description": "Release page-owned resources for this session.", "properties": { "type": { "const": "dispose", "type": "string" } }, "required": ["type"], "type": "object" }] };
8
8
  const schema35 = { "description": "Exact frame integer accepted by JavaScript without rounding.", "format": "uint64", "maximum": 9007199254740991, "minimum": 0, "type": "integer" };
9
- const schema33 = { "additionalProperties": false, "description": "Timeline facts consumed by the browser clock and presentation.", "properties": { "evaluation": { "$ref": "#/$defs/WireInterval" }, "film": { "$ref": "#/$defs/BrowserNode" }, "frameRate": { "$ref": "#/$defs/WireFrameRate" }, "output": { "$ref": "#/$defs/WireInterval" }, "overlays": { "items": { "$ref": "#/$defs/BrowserOverlay" }, "maxItems": 10000, "type": "array" }, "scenes": { "items": { "$ref": "#/$defs/BrowserScene" }, "maxItems": 10000, "type": "array" }, "shots": { "items": { "$ref": "#/$defs/BrowserShot" }, "maxItems": 10000, "type": "array" }, "timeline": { "$ref": "#/$defs/WireInterval" }, "timelineVersion": { "const": 2, "format": "uint16", "maximum": 65535, "minimum": 0, "type": "integer" }, "videos": { "items": { "$ref": "#/$defs/BrowserVideo" }, "maxItems": 10000, "type": "array" } }, "required": ["timelineVersion", "frameRate", "timeline", "evaluation", "output", "film", "scenes", "shots", "videos", "overlays"], "type": "object" };
9
+ const schema33 = { "additionalProperties": false, "description": "Timeline facts consumed by the browser clock and presentation.", "properties": { "evaluation": { "$ref": "#/$defs/WireInterval" }, "film": { "$ref": "#/$defs/BrowserNode" }, "frameRate": { "$ref": "#/$defs/WireFrameRate" }, "output": { "$ref": "#/$defs/WireInterval" }, "overlays": { "items": { "$ref": "#/$defs/BrowserOverlay" }, "maxItems": 10000, "type": "array" }, "scenes": { "items": { "$ref": "#/$defs/BrowserScene" }, "maxItems": 10000, "type": "array" }, "shots": { "items": { "$ref": "#/$defs/BrowserShot" }, "maxItems": 10000, "type": "array" }, "timeline": { "$ref": "#/$defs/WireInterval" }, "timelineVersion": { "const": 3, "format": "uint16", "maximum": 65535, "minimum": 0, "type": "integer" }, "transitions": { "items": { "$ref": "#/$defs/BrowserTransition" }, "maxItems": 10000, "type": "array" }, "videos": { "items": { "$ref": "#/$defs/BrowserVideo" }, "maxItems": 10000, "type": "array" } }, "required": ["timelineVersion", "frameRate", "timeline", "evaluation", "output", "film", "scenes", "shots", "transitions", "videos", "overlays"], "type": "object" };
10
10
  const schema39 = { "additionalProperties": false, "description": "Exact rational frame rate represented with browser-safe integers.", "properties": { "denominator": { "format": "uint32", "maximum": 4294967295, "minimum": 1, "type": "integer" }, "numerator": { "format": "uint32", "maximum": 4294967295, "minimum": 1, "type": "integer" } }, "required": ["numerator", "denominator"], "type": "object" };
11
11
  const func1 = Object.prototype.hasOwnProperty;
12
12
  const schema34 = { "additionalProperties": false, "description": "One half-open browser frame interval.", "properties": { "end": { "$ref": "#/$defs/WireFrame" }, "start": { "$ref": "#/$defs/WireFrame" } }, "required": ["start", "end"], "type": "object" };
@@ -733,15 +733,176 @@ function validate36(data, { instancePath = "", parentData, parentDataProperty, r
733
733
  return errors === 0;
734
734
  }
735
735
  validate36.evaluated = { "props": true, "dynamicProps": false, "dynamicItems": false };
736
- const schema46 = { "additionalProperties": false, "description": "One primary video placement consumed by the browser presentation adapter.", "properties": { "assetId": { "pattern": "^sha256:[0-9a-f]{64}$", "type": "string" }, "interval": { "$ref": "#/$defs/WireInterval" }, "node": { "$ref": "#/$defs/BrowserNode" }, "shotId": { "$ref": "#/$defs/BrowserNodeId" }, "source": { "$ref": "#/$defs/BrowserVideoSource" }, "sourceTiming": { "$ref": "#/$defs/BrowserVideoTiming" } }, "required": ["node", "shotId", "assetId", "interval", "sourceTiming", "source"], "type": "object" };
736
+ const schema46 = { "additionalProperties": false, "description": "One solved transition between two adjacent browser shots.", "properties": { "incomingShotId": { "$ref": "#/$defs/BrowserNodeId" }, "interval": { "$ref": "#/$defs/WireInterval" }, "node": { "$ref": "#/$defs/BrowserNode" }, "outgoingShotId": { "$ref": "#/$defs/BrowserNodeId" } }, "required": ["node", "outgoingShotId", "incomingShotId", "interval"], "type": "object" };
737
+ function validate41(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
738
+ let vErrors = null;
739
+ let errors = 0;
740
+ const evaluated0 = validate41.evaluated;
741
+ if (evaluated0.dynamicProps) {
742
+ evaluated0.props = undefined;
743
+ }
744
+ if (evaluated0.dynamicItems) {
745
+ evaluated0.items = undefined;
746
+ }
747
+ if (data && typeof data == "object" && !Array.isArray(data)) {
748
+ if (data.node === undefined) {
749
+ const err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "node" }, message: "must have required property '" + "node" + "'" };
750
+ if (vErrors === null) {
751
+ vErrors = [err0];
752
+ }
753
+ else {
754
+ vErrors.push(err0);
755
+ }
756
+ errors++;
757
+ }
758
+ if (data.outgoingShotId === undefined) {
759
+ const err1 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "outgoingShotId" }, message: "must have required property '" + "outgoingShotId" + "'" };
760
+ if (vErrors === null) {
761
+ vErrors = [err1];
762
+ }
763
+ else {
764
+ vErrors.push(err1);
765
+ }
766
+ errors++;
767
+ }
768
+ if (data.incomingShotId === undefined) {
769
+ const err2 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "incomingShotId" }, message: "must have required property '" + "incomingShotId" + "'" };
770
+ if (vErrors === null) {
771
+ vErrors = [err2];
772
+ }
773
+ else {
774
+ vErrors.push(err2);
775
+ }
776
+ errors++;
777
+ }
778
+ if (data.interval === undefined) {
779
+ const err3 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "interval" }, message: "must have required property '" + "interval" + "'" };
780
+ if (vErrors === null) {
781
+ vErrors = [err3];
782
+ }
783
+ else {
784
+ vErrors.push(err3);
785
+ }
786
+ errors++;
787
+ }
788
+ for (const key0 in data) {
789
+ if (!((((key0 === "incomingShotId") || (key0 === "interval")) || (key0 === "node")) || (key0 === "outgoingShotId"))) {
790
+ const err4 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
791
+ if (vErrors === null) {
792
+ vErrors = [err4];
793
+ }
794
+ else {
795
+ vErrors.push(err4);
796
+ }
797
+ errors++;
798
+ }
799
+ }
800
+ if (data.incomingShotId !== undefined) {
801
+ let data0 = data.incomingShotId;
802
+ if (!(((typeof data0 == "number") && (!(data0 % 1) && !isNaN(data0))) && (isFinite(data0)))) {
803
+ const err5 = { instancePath: instancePath + "/incomingShotId", schemaPath: "#/$defs/BrowserNodeId/type", keyword: "type", params: { type: "integer" }, message: "must be integer" };
804
+ if (vErrors === null) {
805
+ vErrors = [err5];
806
+ }
807
+ else {
808
+ vErrors.push(err5);
809
+ }
810
+ errors++;
811
+ }
812
+ if ((typeof data0 == "number") && (isFinite(data0))) {
813
+ if (data0 > 4294967295 || isNaN(data0)) {
814
+ const err6 = { instancePath: instancePath + "/incomingShotId", schemaPath: "#/$defs/BrowserNodeId/maximum", keyword: "maximum", params: { comparison: "<=", limit: 4294967295 }, message: "must be <= 4294967295" };
815
+ if (vErrors === null) {
816
+ vErrors = [err6];
817
+ }
818
+ else {
819
+ vErrors.push(err6);
820
+ }
821
+ errors++;
822
+ }
823
+ if (data0 < 0 || isNaN(data0)) {
824
+ const err7 = { instancePath: instancePath + "/incomingShotId", schemaPath: "#/$defs/BrowserNodeId/minimum", keyword: "minimum", params: { comparison: ">=", limit: 0 }, message: "must be >= 0" };
825
+ if (vErrors === null) {
826
+ vErrors = [err7];
827
+ }
828
+ else {
829
+ vErrors.push(err7);
830
+ }
831
+ errors++;
832
+ }
833
+ }
834
+ }
835
+ if (data.interval !== undefined) {
836
+ if (!(validate23(data.interval, { instancePath: instancePath + "/interval", parentData: data, parentDataProperty: "interval", rootData, dynamicAnchors }))) {
837
+ vErrors = vErrors === null ? validate23.errors : vErrors.concat(validate23.errors);
838
+ errors = vErrors.length;
839
+ }
840
+ }
841
+ if (data.node !== undefined) {
842
+ if (!(validate25(data.node, { instancePath: instancePath + "/node", parentData: data, parentDataProperty: "node", rootData, dynamicAnchors }))) {
843
+ vErrors = vErrors === null ? validate25.errors : vErrors.concat(validate25.errors);
844
+ errors = vErrors.length;
845
+ }
846
+ }
847
+ if (data.outgoingShotId !== undefined) {
848
+ let data3 = data.outgoingShotId;
849
+ if (!(((typeof data3 == "number") && (!(data3 % 1) && !isNaN(data3))) && (isFinite(data3)))) {
850
+ const err8 = { instancePath: instancePath + "/outgoingShotId", schemaPath: "#/$defs/BrowserNodeId/type", keyword: "type", params: { type: "integer" }, message: "must be integer" };
851
+ if (vErrors === null) {
852
+ vErrors = [err8];
853
+ }
854
+ else {
855
+ vErrors.push(err8);
856
+ }
857
+ errors++;
858
+ }
859
+ if ((typeof data3 == "number") && (isFinite(data3))) {
860
+ if (data3 > 4294967295 || isNaN(data3)) {
861
+ const err9 = { instancePath: instancePath + "/outgoingShotId", schemaPath: "#/$defs/BrowserNodeId/maximum", keyword: "maximum", params: { comparison: "<=", limit: 4294967295 }, message: "must be <= 4294967295" };
862
+ if (vErrors === null) {
863
+ vErrors = [err9];
864
+ }
865
+ else {
866
+ vErrors.push(err9);
867
+ }
868
+ errors++;
869
+ }
870
+ if (data3 < 0 || isNaN(data3)) {
871
+ const err10 = { instancePath: instancePath + "/outgoingShotId", schemaPath: "#/$defs/BrowserNodeId/minimum", keyword: "minimum", params: { comparison: ">=", limit: 0 }, message: "must be >= 0" };
872
+ if (vErrors === null) {
873
+ vErrors = [err10];
874
+ }
875
+ else {
876
+ vErrors.push(err10);
877
+ }
878
+ errors++;
879
+ }
880
+ }
881
+ }
882
+ }
883
+ else {
884
+ const err11 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
885
+ if (vErrors === null) {
886
+ vErrors = [err11];
887
+ }
888
+ else {
889
+ vErrors.push(err11);
890
+ }
891
+ errors++;
892
+ }
893
+ validate41.errors = vErrors;
894
+ return errors === 0;
895
+ }
896
+ validate41.evaluated = { "props": true, "dynamicProps": false, "dynamicItems": false };
897
+ const schema49 = { "additionalProperties": false, "description": "One primary video placement consumed by the browser presentation adapter.", "properties": { "assetId": { "pattern": "^sha256:[0-9a-f]{64}$", "type": "string" }, "interval": { "$ref": "#/$defs/WireInterval" }, "node": { "$ref": "#/$defs/BrowserNode" }, "shotId": { "$ref": "#/$defs/BrowserNodeId" }, "source": { "$ref": "#/$defs/BrowserVideoSource" }, "sourceTiming": { "$ref": "#/$defs/BrowserVideoTiming" } }, "required": ["node", "shotId", "assetId", "interval", "sourceTiming", "source"], "type": "object" };
737
898
  const pattern4 = new RegExp("^sha256:[0-9a-f]{64}$", "u");
738
- const schema48 = { "additionalProperties": false, "description": "Exact source-time mapping for one browser video placement.", "properties": { "endNanoseconds": { "maxLength": 20, "minLength": 1, "pattern": "^(0|[1-9][0-9]*)$", "type": "string" }, "holdLastNanoseconds": { "maxLength": 20, "minLength": 1, "pattern": "^(0|[1-9][0-9]*)$", "type": "string" }, "naturalEndNanoseconds": { "maxLength": 20, "minLength": 1, "pattern": "^(0|[1-9][0-9]*)$", "type": "string" }, "playbackRate": { "$ref": "#/$defs/WirePlaybackRate" }, "plays": { "format": "uint32", "minimum": 1, "type": "integer" }, "startNanoseconds": { "maxLength": 20, "minLength": 1, "pattern": "^(0|[1-9][0-9]*)$", "type": "string" } }, "required": ["startNanoseconds", "endNanoseconds", "naturalEndNanoseconds", "playbackRate", "plays", "holdLastNanoseconds"], "type": "object" };
739
- const schema49 = { "additionalProperties": false, "description": "Exact canonical playback ratio represented with browser-safe integers.", "properties": { "denominator": { "format": "uint32", "maximum": 4294967295, "minimum": 1, "type": "integer" }, "numerator": { "format": "uint32", "maximum": 4294967295, "minimum": 1, "type": "integer" } }, "required": ["numerator", "denominator"], "type": "object" };
899
+ const schema51 = { "additionalProperties": false, "description": "Exact source-time mapping for one browser video placement.", "properties": { "endNanoseconds": { "maxLength": 20, "minLength": 1, "pattern": "^(0|[1-9][0-9]*)$", "type": "string" }, "holdLastNanoseconds": { "maxLength": 20, "minLength": 1, "pattern": "^(0|[1-9][0-9]*)$", "type": "string" }, "naturalEndNanoseconds": { "maxLength": 20, "minLength": 1, "pattern": "^(0|[1-9][0-9]*)$", "type": "string" }, "playbackRate": { "$ref": "#/$defs/WirePlaybackRate" }, "plays": { "format": "uint32", "minimum": 1, "type": "integer" }, "startNanoseconds": { "maxLength": 20, "minLength": 1, "pattern": "^(0|[1-9][0-9]*)$", "type": "string" } }, "required": ["startNanoseconds", "endNanoseconds", "naturalEndNanoseconds", "playbackRate", "plays", "holdLastNanoseconds"], "type": "object" };
900
+ const schema52 = { "additionalProperties": false, "description": "Exact canonical playback ratio represented with browser-safe integers.", "properties": { "denominator": { "format": "uint32", "maximum": 4294967295, "minimum": 1, "type": "integer" }, "numerator": { "format": "uint32", "maximum": 4294967295, "minimum": 1, "type": "integer" } }, "required": ["numerator", "denominator"], "type": "object" };
740
901
  const pattern5 = new RegExp("^(0|[1-9][0-9]*)$", "u");
741
- function validate44(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
902
+ function validate48(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
742
903
  let vErrors = null;
743
904
  let errors = 0;
744
- const evaluated0 = validate44.evaluated;
905
+ const evaluated0 = validate48.evaluated;
745
906
  if (evaluated0.dynamicProps) {
746
907
  evaluated0.props = undefined;
747
908
  }
@@ -1154,16 +1315,16 @@ function validate44(data, { instancePath = "", parentData, parentDataProperty, r
1154
1315
  }
1155
1316
  errors++;
1156
1317
  }
1157
- validate44.errors = vErrors;
1318
+ validate48.errors = vErrors;
1158
1319
  return errors === 0;
1159
1320
  }
1160
- validate44.evaluated = { "props": true, "dynamicProps": false, "dynamicItems": false };
1161
- const schema50 = { "description": "Exact source-frame timing projected into the browser runtime.", "oneOf": [{ "additionalProperties": false, "description": "Every source frame has one exact rational rate.", "properties": { "frameRate": { "$ref": "#/$defs/WireFrameRate", "description": "Exact source frames per second." }, "kind": { "const": "constant", "type": "string" } }, "required": ["kind", "frameRate"], "type": "object" }, { "additionalProperties": false, "description": "Every source frame carries one half-open timestamp interval.", "properties": { "boundaries": { "description": "Canonical decimal ticks from source zero through terminal end.", "items": { "type": "string" }, "maxItems": 100000, "minItems": 3, "type": "array" }, "kind": { "const": "variable", "type": "string" }, "timebase": { "$ref": "#/$defs/WireMediaTimebase", "description": "Exact seconds represented by one source timestamp tick." } }, "required": ["kind", "timebase", "boundaries"], "type": "object" }] };
1162
- const schema52 = { "additionalProperties": false, "description": "Exact media timestamp unit represented with browser-safe integers.", "properties": { "denominator": { "format": "uint32", "maximum": 4294967295, "minimum": 1, "type": "integer" }, "numerator": { "format": "uint32", "maximum": 4294967295, "minimum": 1, "type": "integer" } }, "required": ["numerator", "denominator"], "type": "object" };
1163
- function validate46(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
1321
+ validate48.evaluated = { "props": true, "dynamicProps": false, "dynamicItems": false };
1322
+ const schema53 = { "description": "Exact source-frame timing projected into the browser runtime.", "oneOf": [{ "additionalProperties": false, "description": "Every source frame has one exact rational rate.", "properties": { "frameRate": { "$ref": "#/$defs/WireFrameRate", "description": "Exact source frames per second." }, "kind": { "const": "constant", "type": "string" } }, "required": ["kind", "frameRate"], "type": "object" }, { "additionalProperties": false, "description": "Every source frame carries one half-open timestamp interval.", "properties": { "boundaries": { "description": "Canonical decimal ticks from source zero through terminal end.", "items": { "type": "string" }, "maxItems": 100000, "minItems": 3, "type": "array" }, "kind": { "const": "variable", "type": "string" }, "timebase": { "$ref": "#/$defs/WireMediaTimebase", "description": "Exact seconds represented by one source timestamp tick." } }, "required": ["kind", "timebase", "boundaries"], "type": "object" }] };
1323
+ const schema55 = { "additionalProperties": false, "description": "Exact media timestamp unit represented with browser-safe integers.", "properties": { "denominator": { "format": "uint32", "maximum": 4294967295, "minimum": 1, "type": "integer" }, "numerator": { "format": "uint32", "maximum": 4294967295, "minimum": 1, "type": "integer" } }, "required": ["numerator", "denominator"], "type": "object" };
1324
+ function validate50(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
1164
1325
  let vErrors = null;
1165
1326
  let errors = 0;
1166
- const evaluated0 = validate46.evaluated;
1327
+ const evaluated0 = validate50.evaluated;
1167
1328
  if (evaluated0.dynamicProps) {
1168
1329
  evaluated0.props = undefined;
1169
1330
  }
@@ -1642,15 +1803,15 @@ function validate46(data, { instancePath = "", parentData, parentDataProperty, r
1642
1803
  }
1643
1804
  }
1644
1805
  }
1645
- validate46.errors = vErrors;
1806
+ validate50.errors = vErrors;
1646
1807
  evaluated0.props = props0;
1647
1808
  return errors === 0;
1648
1809
  }
1649
- validate46.evaluated = { "dynamicProps": true, "dynamicItems": false };
1650
- function validate41(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
1810
+ validate50.evaluated = { "dynamicProps": true, "dynamicItems": false };
1811
+ function validate45(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
1651
1812
  let vErrors = null;
1652
1813
  let errors = 0;
1653
- const evaluated0 = validate41.evaluated;
1814
+ const evaluated0 = validate45.evaluated;
1654
1815
  if (evaluated0.dynamicProps) {
1655
1816
  evaluated0.props = undefined;
1656
1817
  }
@@ -1803,14 +1964,14 @@ function validate41(data, { instancePath = "", parentData, parentDataProperty, r
1803
1964
  }
1804
1965
  }
1805
1966
  if (data.source !== undefined) {
1806
- if (!(validate44(data.source, { instancePath: instancePath + "/source", parentData: data, parentDataProperty: "source", rootData, dynamicAnchors }))) {
1807
- vErrors = vErrors === null ? validate44.errors : vErrors.concat(validate44.errors);
1967
+ if (!(validate48(data.source, { instancePath: instancePath + "/source", parentData: data, parentDataProperty: "source", rootData, dynamicAnchors }))) {
1968
+ vErrors = vErrors === null ? validate48.errors : vErrors.concat(validate48.errors);
1808
1969
  errors = vErrors.length;
1809
1970
  }
1810
1971
  }
1811
1972
  if (data.sourceTiming !== undefined) {
1812
- if (!(validate46(data.sourceTiming, { instancePath: instancePath + "/sourceTiming", parentData: data, parentDataProperty: "sourceTiming", rootData, dynamicAnchors }))) {
1813
- vErrors = vErrors === null ? validate46.errors : vErrors.concat(validate46.errors);
1973
+ if (!(validate50(data.sourceTiming, { instancePath: instancePath + "/sourceTiming", parentData: data, parentDataProperty: "sourceTiming", rootData, dynamicAnchors }))) {
1974
+ vErrors = vErrors === null ? validate50.errors : vErrors.concat(validate50.errors);
1814
1975
  errors = vErrors.length;
1815
1976
  }
1816
1977
  }
@@ -1825,10 +1986,10 @@ function validate41(data, { instancePath = "", parentData, parentDataProperty, r
1825
1986
  }
1826
1987
  errors++;
1827
1988
  }
1828
- validate41.errors = vErrors;
1989
+ validate45.errors = vErrors;
1829
1990
  return errors === 0;
1830
1991
  }
1831
- validate41.evaluated = { "props": true, "dynamicProps": false, "dynamicItems": false };
1992
+ validate45.evaluated = { "props": true, "dynamicProps": false, "dynamicItems": false };
1832
1993
  function validate22(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
1833
1994
  let vErrors = null;
1834
1995
  let errors = 0;
@@ -1920,8 +2081,8 @@ function validate22(data, { instancePath = "", parentData, parentDataProperty, r
1920
2081
  }
1921
2082
  errors++;
1922
2083
  }
1923
- if (data.videos === undefined) {
1924
- const err8 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "videos" }, message: "must have required property '" + "videos" + "'" };
2084
+ if (data.transitions === undefined) {
2085
+ const err8 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "transitions" }, message: "must have required property '" + "transitions" + "'" };
1925
2086
  if (vErrors === null) {
1926
2087
  vErrors = [err8];
1927
2088
  }
@@ -1930,8 +2091,8 @@ function validate22(data, { instancePath = "", parentData, parentDataProperty, r
1930
2091
  }
1931
2092
  errors++;
1932
2093
  }
1933
- if (data.overlays === undefined) {
1934
- const err9 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "overlays" }, message: "must have required property '" + "overlays" + "'" };
2094
+ if (data.videos === undefined) {
2095
+ const err9 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "videos" }, message: "must have required property '" + "videos" + "'" };
1935
2096
  if (vErrors === null) {
1936
2097
  vErrors = [err9];
1937
2098
  }
@@ -1940,14 +2101,24 @@ function validate22(data, { instancePath = "", parentData, parentDataProperty, r
1940
2101
  }
1941
2102
  errors++;
1942
2103
  }
2104
+ if (data.overlays === undefined) {
2105
+ const err10 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "overlays" }, message: "must have required property '" + "overlays" + "'" };
2106
+ if (vErrors === null) {
2107
+ vErrors = [err10];
2108
+ }
2109
+ else {
2110
+ vErrors.push(err10);
2111
+ }
2112
+ errors++;
2113
+ }
1943
2114
  for (const key0 in data) {
1944
2115
  if (!(func1.call(schema33.properties, key0))) {
1945
- const err10 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
2116
+ const err11 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
1946
2117
  if (vErrors === null) {
1947
- vErrors = [err10];
2118
+ vErrors = [err11];
1948
2119
  }
1949
2120
  else {
1950
- vErrors.push(err10);
2121
+ vErrors.push(err11);
1951
2122
  }
1952
2123
  errors++;
1953
2124
  }
@@ -1968,33 +2139,33 @@ function validate22(data, { instancePath = "", parentData, parentDataProperty, r
1968
2139
  let data2 = data.frameRate;
1969
2140
  if (data2 && typeof data2 == "object" && !Array.isArray(data2)) {
1970
2141
  if (data2.numerator === undefined) {
1971
- const err11 = { instancePath: instancePath + "/frameRate", schemaPath: "#/$defs/WireFrameRate/required", keyword: "required", params: { missingProperty: "numerator" }, message: "must have required property '" + "numerator" + "'" };
2142
+ const err12 = { instancePath: instancePath + "/frameRate", schemaPath: "#/$defs/WireFrameRate/required", keyword: "required", params: { missingProperty: "numerator" }, message: "must have required property '" + "numerator" + "'" };
1972
2143
  if (vErrors === null) {
1973
- vErrors = [err11];
2144
+ vErrors = [err12];
1974
2145
  }
1975
2146
  else {
1976
- vErrors.push(err11);
2147
+ vErrors.push(err12);
1977
2148
  }
1978
2149
  errors++;
1979
2150
  }
1980
2151
  if (data2.denominator === undefined) {
1981
- const err12 = { instancePath: instancePath + "/frameRate", schemaPath: "#/$defs/WireFrameRate/required", keyword: "required", params: { missingProperty: "denominator" }, message: "must have required property '" + "denominator" + "'" };
2152
+ const err13 = { instancePath: instancePath + "/frameRate", schemaPath: "#/$defs/WireFrameRate/required", keyword: "required", params: { missingProperty: "denominator" }, message: "must have required property '" + "denominator" + "'" };
1982
2153
  if (vErrors === null) {
1983
- vErrors = [err12];
2154
+ vErrors = [err13];
1984
2155
  }
1985
2156
  else {
1986
- vErrors.push(err12);
2157
+ vErrors.push(err13);
1987
2158
  }
1988
2159
  errors++;
1989
2160
  }
1990
2161
  for (const key1 in data2) {
1991
2162
  if (!((key1 === "denominator") || (key1 === "numerator"))) {
1992
- const err13 = { instancePath: instancePath + "/frameRate", schemaPath: "#/$defs/WireFrameRate/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key1 }, message: "must NOT have additional properties" };
2163
+ const err14 = { instancePath: instancePath + "/frameRate", schemaPath: "#/$defs/WireFrameRate/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key1 }, message: "must NOT have additional properties" };
1993
2164
  if (vErrors === null) {
1994
- vErrors = [err13];
2165
+ vErrors = [err14];
1995
2166
  }
1996
2167
  else {
1997
- vErrors.push(err13);
2168
+ vErrors.push(err14);
1998
2169
  }
1999
2170
  errors++;
2000
2171
  }
@@ -2002,33 +2173,33 @@ function validate22(data, { instancePath = "", parentData, parentDataProperty, r
2002
2173
  if (data2.denominator !== undefined) {
2003
2174
  let data3 = data2.denominator;
2004
2175
  if (!(((typeof data3 == "number") && (!(data3 % 1) && !isNaN(data3))) && (isFinite(data3)))) {
2005
- const err14 = { instancePath: instancePath + "/frameRate/denominator", schemaPath: "#/$defs/WireFrameRate/properties/denominator/type", keyword: "type", params: { type: "integer" }, message: "must be integer" };
2176
+ const err15 = { instancePath: instancePath + "/frameRate/denominator", schemaPath: "#/$defs/WireFrameRate/properties/denominator/type", keyword: "type", params: { type: "integer" }, message: "must be integer" };
2006
2177
  if (vErrors === null) {
2007
- vErrors = [err14];
2178
+ vErrors = [err15];
2008
2179
  }
2009
2180
  else {
2010
- vErrors.push(err14);
2181
+ vErrors.push(err15);
2011
2182
  }
2012
2183
  errors++;
2013
2184
  }
2014
2185
  if ((typeof data3 == "number") && (isFinite(data3))) {
2015
2186
  if (data3 > 4294967295 || isNaN(data3)) {
2016
- const err15 = { instancePath: instancePath + "/frameRate/denominator", schemaPath: "#/$defs/WireFrameRate/properties/denominator/maximum", keyword: "maximum", params: { comparison: "<=", limit: 4294967295 }, message: "must be <= 4294967295" };
2187
+ const err16 = { instancePath: instancePath + "/frameRate/denominator", schemaPath: "#/$defs/WireFrameRate/properties/denominator/maximum", keyword: "maximum", params: { comparison: "<=", limit: 4294967295 }, message: "must be <= 4294967295" };
2017
2188
  if (vErrors === null) {
2018
- vErrors = [err15];
2189
+ vErrors = [err16];
2019
2190
  }
2020
2191
  else {
2021
- vErrors.push(err15);
2192
+ vErrors.push(err16);
2022
2193
  }
2023
2194
  errors++;
2024
2195
  }
2025
2196
  if (data3 < 1 || isNaN(data3)) {
2026
- const err16 = { instancePath: instancePath + "/frameRate/denominator", schemaPath: "#/$defs/WireFrameRate/properties/denominator/minimum", keyword: "minimum", params: { comparison: ">=", limit: 1 }, message: "must be >= 1" };
2197
+ const err17 = { instancePath: instancePath + "/frameRate/denominator", schemaPath: "#/$defs/WireFrameRate/properties/denominator/minimum", keyword: "minimum", params: { comparison: ">=", limit: 1 }, message: "must be >= 1" };
2027
2198
  if (vErrors === null) {
2028
- vErrors = [err16];
2199
+ vErrors = [err17];
2029
2200
  }
2030
2201
  else {
2031
- vErrors.push(err16);
2202
+ vErrors.push(err17);
2032
2203
  }
2033
2204
  errors++;
2034
2205
  }
@@ -2037,33 +2208,33 @@ function validate22(data, { instancePath = "", parentData, parentDataProperty, r
2037
2208
  if (data2.numerator !== undefined) {
2038
2209
  let data4 = data2.numerator;
2039
2210
  if (!(((typeof data4 == "number") && (!(data4 % 1) && !isNaN(data4))) && (isFinite(data4)))) {
2040
- const err17 = { instancePath: instancePath + "/frameRate/numerator", schemaPath: "#/$defs/WireFrameRate/properties/numerator/type", keyword: "type", params: { type: "integer" }, message: "must be integer" };
2211
+ const err18 = { instancePath: instancePath + "/frameRate/numerator", schemaPath: "#/$defs/WireFrameRate/properties/numerator/type", keyword: "type", params: { type: "integer" }, message: "must be integer" };
2041
2212
  if (vErrors === null) {
2042
- vErrors = [err17];
2213
+ vErrors = [err18];
2043
2214
  }
2044
2215
  else {
2045
- vErrors.push(err17);
2216
+ vErrors.push(err18);
2046
2217
  }
2047
2218
  errors++;
2048
2219
  }
2049
2220
  if ((typeof data4 == "number") && (isFinite(data4))) {
2050
2221
  if (data4 > 4294967295 || isNaN(data4)) {
2051
- const err18 = { instancePath: instancePath + "/frameRate/numerator", schemaPath: "#/$defs/WireFrameRate/properties/numerator/maximum", keyword: "maximum", params: { comparison: "<=", limit: 4294967295 }, message: "must be <= 4294967295" };
2222
+ const err19 = { instancePath: instancePath + "/frameRate/numerator", schemaPath: "#/$defs/WireFrameRate/properties/numerator/maximum", keyword: "maximum", params: { comparison: "<=", limit: 4294967295 }, message: "must be <= 4294967295" };
2052
2223
  if (vErrors === null) {
2053
- vErrors = [err18];
2224
+ vErrors = [err19];
2054
2225
  }
2055
2226
  else {
2056
- vErrors.push(err18);
2227
+ vErrors.push(err19);
2057
2228
  }
2058
2229
  errors++;
2059
2230
  }
2060
2231
  if (data4 < 1 || isNaN(data4)) {
2061
- const err19 = { instancePath: instancePath + "/frameRate/numerator", schemaPath: "#/$defs/WireFrameRate/properties/numerator/minimum", keyword: "minimum", params: { comparison: ">=", limit: 1 }, message: "must be >= 1" };
2232
+ const err20 = { instancePath: instancePath + "/frameRate/numerator", schemaPath: "#/$defs/WireFrameRate/properties/numerator/minimum", keyword: "minimum", params: { comparison: ">=", limit: 1 }, message: "must be >= 1" };
2062
2233
  if (vErrors === null) {
2063
- vErrors = [err19];
2234
+ vErrors = [err20];
2064
2235
  }
2065
2236
  else {
2066
- vErrors.push(err19);
2237
+ vErrors.push(err20);
2067
2238
  }
2068
2239
  errors++;
2069
2240
  }
@@ -2071,12 +2242,12 @@ function validate22(data, { instancePath = "", parentData, parentDataProperty, r
2071
2242
  }
2072
2243
  }
2073
2244
  else {
2074
- const err20 = { instancePath: instancePath + "/frameRate", schemaPath: "#/$defs/WireFrameRate/type", keyword: "type", params: { type: "object" }, message: "must be object" };
2245
+ const err21 = { instancePath: instancePath + "/frameRate", schemaPath: "#/$defs/WireFrameRate/type", keyword: "type", params: { type: "object" }, message: "must be object" };
2075
2246
  if (vErrors === null) {
2076
- vErrors = [err20];
2247
+ vErrors = [err21];
2077
2248
  }
2078
2249
  else {
2079
- vErrors.push(err20);
2250
+ vErrors.push(err21);
2080
2251
  }
2081
2252
  errors++;
2082
2253
  }
@@ -2091,12 +2262,12 @@ function validate22(data, { instancePath = "", parentData, parentDataProperty, r
2091
2262
  let data6 = data.overlays;
2092
2263
  if (Array.isArray(data6)) {
2093
2264
  if (data6.length > 10000) {
2094
- const err21 = { instancePath: instancePath + "/overlays", schemaPath: "#/properties/overlays/maxItems", keyword: "maxItems", params: { limit: 10000 }, message: "must NOT have more than 10000 items" };
2265
+ const err22 = { instancePath: instancePath + "/overlays", schemaPath: "#/properties/overlays/maxItems", keyword: "maxItems", params: { limit: 10000 }, message: "must NOT have more than 10000 items" };
2095
2266
  if (vErrors === null) {
2096
- vErrors = [err21];
2267
+ vErrors = [err22];
2097
2268
  }
2098
2269
  else {
2099
- vErrors.push(err21);
2270
+ vErrors.push(err22);
2100
2271
  }
2101
2272
  errors++;
2102
2273
  }
@@ -2109,12 +2280,12 @@ function validate22(data, { instancePath = "", parentData, parentDataProperty, r
2109
2280
  }
2110
2281
  }
2111
2282
  else {
2112
- const err22 = { instancePath: instancePath + "/overlays", schemaPath: "#/properties/overlays/type", keyword: "type", params: { type: "array" }, message: "must be array" };
2283
+ const err23 = { instancePath: instancePath + "/overlays", schemaPath: "#/properties/overlays/type", keyword: "type", params: { type: "array" }, message: "must be array" };
2113
2284
  if (vErrors === null) {
2114
- vErrors = [err22];
2285
+ vErrors = [err23];
2115
2286
  }
2116
2287
  else {
2117
- vErrors.push(err22);
2288
+ vErrors.push(err23);
2118
2289
  }
2119
2290
  errors++;
2120
2291
  }
@@ -2123,12 +2294,12 @@ function validate22(data, { instancePath = "", parentData, parentDataProperty, r
2123
2294
  let data8 = data.scenes;
2124
2295
  if (Array.isArray(data8)) {
2125
2296
  if (data8.length > 10000) {
2126
- const err23 = { instancePath: instancePath + "/scenes", schemaPath: "#/properties/scenes/maxItems", keyword: "maxItems", params: { limit: 10000 }, message: "must NOT have more than 10000 items" };
2297
+ const err24 = { instancePath: instancePath + "/scenes", schemaPath: "#/properties/scenes/maxItems", keyword: "maxItems", params: { limit: 10000 }, message: "must NOT have more than 10000 items" };
2127
2298
  if (vErrors === null) {
2128
- vErrors = [err23];
2299
+ vErrors = [err24];
2129
2300
  }
2130
2301
  else {
2131
- vErrors.push(err23);
2302
+ vErrors.push(err24);
2132
2303
  }
2133
2304
  errors++;
2134
2305
  }
@@ -2141,12 +2312,12 @@ function validate22(data, { instancePath = "", parentData, parentDataProperty, r
2141
2312
  }
2142
2313
  }
2143
2314
  else {
2144
- const err24 = { instancePath: instancePath + "/scenes", schemaPath: "#/properties/scenes/type", keyword: "type", params: { type: "array" }, message: "must be array" };
2315
+ const err25 = { instancePath: instancePath + "/scenes", schemaPath: "#/properties/scenes/type", keyword: "type", params: { type: "array" }, message: "must be array" };
2145
2316
  if (vErrors === null) {
2146
- vErrors = [err24];
2317
+ vErrors = [err25];
2147
2318
  }
2148
2319
  else {
2149
- vErrors.push(err24);
2320
+ vErrors.push(err25);
2150
2321
  }
2151
2322
  errors++;
2152
2323
  }
@@ -2155,12 +2326,12 @@ function validate22(data, { instancePath = "", parentData, parentDataProperty, r
2155
2326
  let data10 = data.shots;
2156
2327
  if (Array.isArray(data10)) {
2157
2328
  if (data10.length > 10000) {
2158
- const err25 = { instancePath: instancePath + "/shots", schemaPath: "#/properties/shots/maxItems", keyword: "maxItems", params: { limit: 10000 }, message: "must NOT have more than 10000 items" };
2329
+ const err26 = { instancePath: instancePath + "/shots", schemaPath: "#/properties/shots/maxItems", keyword: "maxItems", params: { limit: 10000 }, message: "must NOT have more than 10000 items" };
2159
2330
  if (vErrors === null) {
2160
- vErrors = [err25];
2331
+ vErrors = [err26];
2161
2332
  }
2162
2333
  else {
2163
- vErrors.push(err25);
2334
+ vErrors.push(err26);
2164
2335
  }
2165
2336
  errors++;
2166
2337
  }
@@ -2173,12 +2344,12 @@ function validate22(data, { instancePath = "", parentData, parentDataProperty, r
2173
2344
  }
2174
2345
  }
2175
2346
  else {
2176
- const err26 = { instancePath: instancePath + "/shots", schemaPath: "#/properties/shots/type", keyword: "type", params: { type: "array" }, message: "must be array" };
2347
+ const err27 = { instancePath: instancePath + "/shots", schemaPath: "#/properties/shots/type", keyword: "type", params: { type: "array" }, message: "must be array" };
2177
2348
  if (vErrors === null) {
2178
- vErrors = [err26];
2349
+ vErrors = [err27];
2179
2350
  }
2180
2351
  else {
2181
- vErrors.push(err26);
2352
+ vErrors.push(err27);
2182
2353
  }
2183
2354
  errors++;
2184
2355
  }
@@ -2192,88 +2363,120 @@ function validate22(data, { instancePath = "", parentData, parentDataProperty, r
2192
2363
  if (data.timelineVersion !== undefined) {
2193
2364
  let data13 = data.timelineVersion;
2194
2365
  if (!(((typeof data13 == "number") && (!(data13 % 1) && !isNaN(data13))) && (isFinite(data13)))) {
2195
- const err27 = { instancePath: instancePath + "/timelineVersion", schemaPath: "#/properties/timelineVersion/type", keyword: "type", params: { type: "integer" }, message: "must be integer" };
2366
+ const err28 = { instancePath: instancePath + "/timelineVersion", schemaPath: "#/properties/timelineVersion/type", keyword: "type", params: { type: "integer" }, message: "must be integer" };
2196
2367
  if (vErrors === null) {
2197
- vErrors = [err27];
2368
+ vErrors = [err28];
2198
2369
  }
2199
2370
  else {
2200
- vErrors.push(err27);
2371
+ vErrors.push(err28);
2201
2372
  }
2202
2373
  errors++;
2203
2374
  }
2204
- if (2 !== data13) {
2205
- const err28 = { instancePath: instancePath + "/timelineVersion", schemaPath: "#/properties/timelineVersion/const", keyword: "const", params: { allowedValue: 2 }, message: "must be equal to constant" };
2375
+ if (3 !== data13) {
2376
+ const err29 = { instancePath: instancePath + "/timelineVersion", schemaPath: "#/properties/timelineVersion/const", keyword: "const", params: { allowedValue: 3 }, message: "must be equal to constant" };
2206
2377
  if (vErrors === null) {
2207
- vErrors = [err28];
2378
+ vErrors = [err29];
2208
2379
  }
2209
2380
  else {
2210
- vErrors.push(err28);
2381
+ vErrors.push(err29);
2211
2382
  }
2212
2383
  errors++;
2213
2384
  }
2214
2385
  if ((typeof data13 == "number") && (isFinite(data13))) {
2215
2386
  if (data13 > 65535 || isNaN(data13)) {
2216
- const err29 = { instancePath: instancePath + "/timelineVersion", schemaPath: "#/properties/timelineVersion/maximum", keyword: "maximum", params: { comparison: "<=", limit: 65535 }, message: "must be <= 65535" };
2387
+ const err30 = { instancePath: instancePath + "/timelineVersion", schemaPath: "#/properties/timelineVersion/maximum", keyword: "maximum", params: { comparison: "<=", limit: 65535 }, message: "must be <= 65535" };
2217
2388
  if (vErrors === null) {
2218
- vErrors = [err29];
2389
+ vErrors = [err30];
2219
2390
  }
2220
2391
  else {
2221
- vErrors.push(err29);
2392
+ vErrors.push(err30);
2222
2393
  }
2223
2394
  errors++;
2224
2395
  }
2225
2396
  if (data13 < 0 || isNaN(data13)) {
2226
- const err30 = { instancePath: instancePath + "/timelineVersion", schemaPath: "#/properties/timelineVersion/minimum", keyword: "minimum", params: { comparison: ">=", limit: 0 }, message: "must be >= 0" };
2397
+ const err31 = { instancePath: instancePath + "/timelineVersion", schemaPath: "#/properties/timelineVersion/minimum", keyword: "minimum", params: { comparison: ">=", limit: 0 }, message: "must be >= 0" };
2227
2398
  if (vErrors === null) {
2228
- vErrors = [err30];
2399
+ vErrors = [err31];
2229
2400
  }
2230
2401
  else {
2231
- vErrors.push(err30);
2402
+ vErrors.push(err31);
2232
2403
  }
2233
2404
  errors++;
2234
2405
  }
2235
2406
  }
2236
2407
  }
2237
- if (data.videos !== undefined) {
2238
- let data14 = data.videos;
2408
+ if (data.transitions !== undefined) {
2409
+ let data14 = data.transitions;
2239
2410
  if (Array.isArray(data14)) {
2240
2411
  if (data14.length > 10000) {
2241
- const err31 = { instancePath: instancePath + "/videos", schemaPath: "#/properties/videos/maxItems", keyword: "maxItems", params: { limit: 10000 }, message: "must NOT have more than 10000 items" };
2412
+ const err32 = { instancePath: instancePath + "/transitions", schemaPath: "#/properties/transitions/maxItems", keyword: "maxItems", params: { limit: 10000 }, message: "must NOT have more than 10000 items" };
2242
2413
  if (vErrors === null) {
2243
- vErrors = [err31];
2414
+ vErrors = [err32];
2244
2415
  }
2245
2416
  else {
2246
- vErrors.push(err31);
2417
+ vErrors.push(err32);
2247
2418
  }
2248
2419
  errors++;
2249
2420
  }
2250
2421
  const len3 = data14.length;
2251
2422
  for (let i3 = 0; i3 < len3; i3++) {
2252
- if (!(validate41(data14[i3], { instancePath: instancePath + "/videos/" + i3, parentData: data14, parentDataProperty: i3, rootData, dynamicAnchors }))) {
2423
+ if (!(validate41(data14[i3], { instancePath: instancePath + "/transitions/" + i3, parentData: data14, parentDataProperty: i3, rootData, dynamicAnchors }))) {
2253
2424
  vErrors = vErrors === null ? validate41.errors : vErrors.concat(validate41.errors);
2254
2425
  errors = vErrors.length;
2255
2426
  }
2256
2427
  }
2257
2428
  }
2258
2429
  else {
2259
- const err32 = { instancePath: instancePath + "/videos", schemaPath: "#/properties/videos/type", keyword: "type", params: { type: "array" }, message: "must be array" };
2430
+ const err33 = { instancePath: instancePath + "/transitions", schemaPath: "#/properties/transitions/type", keyword: "type", params: { type: "array" }, message: "must be array" };
2260
2431
  if (vErrors === null) {
2261
- vErrors = [err32];
2432
+ vErrors = [err33];
2262
2433
  }
2263
2434
  else {
2264
- vErrors.push(err32);
2435
+ vErrors.push(err33);
2436
+ }
2437
+ errors++;
2438
+ }
2439
+ }
2440
+ if (data.videos !== undefined) {
2441
+ let data16 = data.videos;
2442
+ if (Array.isArray(data16)) {
2443
+ if (data16.length > 10000) {
2444
+ const err34 = { instancePath: instancePath + "/videos", schemaPath: "#/properties/videos/maxItems", keyword: "maxItems", params: { limit: 10000 }, message: "must NOT have more than 10000 items" };
2445
+ if (vErrors === null) {
2446
+ vErrors = [err34];
2447
+ }
2448
+ else {
2449
+ vErrors.push(err34);
2450
+ }
2451
+ errors++;
2452
+ }
2453
+ const len4 = data16.length;
2454
+ for (let i4 = 0; i4 < len4; i4++) {
2455
+ if (!(validate45(data16[i4], { instancePath: instancePath + "/videos/" + i4, parentData: data16, parentDataProperty: i4, rootData, dynamicAnchors }))) {
2456
+ vErrors = vErrors === null ? validate45.errors : vErrors.concat(validate45.errors);
2457
+ errors = vErrors.length;
2458
+ }
2459
+ }
2460
+ }
2461
+ else {
2462
+ const err35 = { instancePath: instancePath + "/videos", schemaPath: "#/properties/videos/type", keyword: "type", params: { type: "array" }, message: "must be array" };
2463
+ if (vErrors === null) {
2464
+ vErrors = [err35];
2465
+ }
2466
+ else {
2467
+ vErrors.push(err35);
2265
2468
  }
2266
2469
  errors++;
2267
2470
  }
2268
2471
  }
2269
2472
  }
2270
2473
  else {
2271
- const err33 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
2474
+ const err36 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
2272
2475
  if (vErrors === null) {
2273
- vErrors = [err33];
2476
+ vErrors = [err36];
2274
2477
  }
2275
2478
  else {
2276
- vErrors.push(err33);
2479
+ vErrors.push(err36);
2277
2480
  }
2278
2481
  errors++;
2279
2482
  }
@@ -2824,7 +3027,7 @@ function validate21(data, { instancePath = "", parentData, parentDataProperty, r
2824
3027
  }
2825
3028
  validate21.evaluated = { "dynamicProps": true, "dynamicItems": false };
2826
3029
  function validate20(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
2827
- /*# sourceURL="https://onmark.dev/schemas/browser-request-v3.schema.json" */ ;
3030
+ /*# sourceURL="https://onmark.dev/schemas/browser-request-v4.schema.json" */ ;
2828
3031
  let vErrors = null;
2829
3032
  let errors = 0;
2830
3033
  const evaluated0 = validate20.evaluated;
@@ -2930,8 +3133,8 @@ function validate20(data, { instancePath = "", parentData, parentDataProperty, r
2930
3133
  }
2931
3134
  errors++;
2932
3135
  }
2933
- if (3 !== data2) {
2934
- const err8 = { instancePath: instancePath + "/version", schemaPath: "#/$defs/ProtocolVersion/const", keyword: "const", params: { allowedValue: 3 }, message: "must be equal to constant" };
3136
+ if (4 !== data2) {
3137
+ const err8 = { instancePath: instancePath + "/version", schemaPath: "#/$defs/ProtocolVersion/const", keyword: "const", params: { allowedValue: 4 }, message: "must be equal to constant" };
2935
3138
  if (vErrors === null) {
2936
3139
  vErrors = [err8];
2937
3140
  }
@@ -2978,18 +3181,18 @@ function validate20(data, { instancePath = "", parentData, parentDataProperty, r
2978
3181
  return errors === 0;
2979
3182
  }
2980
3183
  validate20.evaluated = { "props": true, "dynamicProps": false, "dynamicItems": false };
2981
- export const validateBrowserResponse = validate51;
2982
- const schema58 = { "$defs": { "BrowserEvent": { "description": "Closed events emitted by the browser runtime.", "oneOf": [{ "additionalProperties": false, "description": "The immutable browser plan was accepted.", "properties": { "type": { "const": "loaded", "type": "string" } }, "required": ["type"], "type": "object" }, { "additionalProperties": false, "description": "Resources required at the evaluation start are stable.", "properties": { "evaluationStart": { "$ref": "#/$defs/WireFrame", "description": "Frame at which preparation completed." }, "type": { "const": "prepared", "type": "string" } }, "required": ["type", "evaluationStart"], "type": "object" }, { "additionalProperties": false, "description": "One requested frame has been staged for the compositor.", "properties": { "frame": { "$ref": "#/$defs/WireFrame", "description": "Exact frame represented by staged browser state." }, "type": { "const": "frameStaged", "type": "string" } }, "required": ["type", "frame"], "type": "object" }, { "additionalProperties": false, "description": "The captured payload's staged media passed compositor confirmation.", "properties": { "frame": { "$ref": "#/$defs/WireFrame", "description": "Exact frame confirmed by browser media state." }, "type": { "const": "frameReady", "type": "string" } }, "required": ["type", "frame"], "type": "object" }, { "additionalProperties": false, "description": "The browser rejected a command or could not reach readiness.", "properties": { "code": { "$ref": "#/$defs/ProtocolFailureCode", "description": "Stable machine-readable failure category." }, "message": { "description": "Direct explanation in browser/runtime terms.", "maxLength": 4096, "pattern": "\\S", "type": "string" }, "pendingResources": { "description": "Resources that prevented readiness, in caller-owned deterministic order.", "items": { "maxLength": 1024, "pattern": "\\S", "type": "string" }, "maxItems": 256, "type": "array" }, "type": { "const": "failed", "type": "string" } }, "required": ["type", "code", "message", "pendingResources"], "type": "object" }, { "additionalProperties": false, "description": "The browser session released its resources.", "properties": { "type": { "const": "disposed", "type": "string" } }, "required": ["type"], "type": "object" }] }, "ProtocolFailureCode": { "description": "Stable browser protocol failure category.", "oneOf": [{ "const": "protocolMismatch", "description": "The envelope version is unsupported.", "type": "string" }, { "const": "invalidRequest", "description": "The command violates its wire contract.", "type": "string" }, { "const": "loadFailed", "description": "The immutable plan could not be installed.", "type": "string" }, { "const": "prepareFailed", "description": "Preparation could not stabilize required resources.", "type": "string" }, { "const": "seekFailed", "description": "The requested frame could not be evaluated.", "type": "string" }, { "const": "confirmFailed", "description": "The staged frame could not be confirmed after compositor capture.", "type": "string" }, { "const": "readinessTimeout", "description": "One or more resources missed the readiness deadline.", "type": "string" }, { "const": "internal", "description": "The runtime violated an internal invariant.", "type": "string" }] }, "ProtocolVersion": { "const": 3, "description": "Version of the native-to-browser message contract.", "format": "uint16", "maximum": 65535, "minimum": 0, "type": "integer" }, "RequestId": { "description": "Correlation identity shared by one request and its response events.", "format": "uint32", "maximum": 4294967295, "minimum": 0, "type": "integer" }, "WireFrame": { "description": "Exact frame integer accepted by JavaScript without rounding.", "format": "uint64", "maximum": 9007199254740991, "minimum": 0, "type": "integer" } }, "$id": "https://onmark.dev/schemas/browser-response-v3.schema.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "One versioned event returned by the browser runtime.", "properties": { "event": { "$ref": "#/$defs/BrowserEvent" }, "requestId": { "$ref": "#/$defs/RequestId" }, "version": { "$ref": "#/$defs/ProtocolVersion" } }, "required": ["version", "requestId", "event"], "title": "BrowserResponse", "type": "object", "x-onmark-max-failure-message-characters": 4096, "x-onmark-max-pending-resource-characters": 1024, "x-onmark-max-pending-resources": 256 };
2983
- const schema64 = { "description": "Correlation identity shared by one request and its response events.", "format": "uint32", "maximum": 4294967295, "minimum": 0, "type": "integer" };
2984
- const schema65 = { "const": 3, "description": "Version of the native-to-browser message contract.", "format": "uint16", "maximum": 65535, "minimum": 0, "type": "integer" };
2985
- const schema59 = { "description": "Closed events emitted by the browser runtime.", "oneOf": [{ "additionalProperties": false, "description": "The immutable browser plan was accepted.", "properties": { "type": { "const": "loaded", "type": "string" } }, "required": ["type"], "type": "object" }, { "additionalProperties": false, "description": "Resources required at the evaluation start are stable.", "properties": { "evaluationStart": { "$ref": "#/$defs/WireFrame", "description": "Frame at which preparation completed." }, "type": { "const": "prepared", "type": "string" } }, "required": ["type", "evaluationStart"], "type": "object" }, { "additionalProperties": false, "description": "One requested frame has been staged for the compositor.", "properties": { "frame": { "$ref": "#/$defs/WireFrame", "description": "Exact frame represented by staged browser state." }, "type": { "const": "frameStaged", "type": "string" } }, "required": ["type", "frame"], "type": "object" }, { "additionalProperties": false, "description": "The captured payload's staged media passed compositor confirmation.", "properties": { "frame": { "$ref": "#/$defs/WireFrame", "description": "Exact frame confirmed by browser media state." }, "type": { "const": "frameReady", "type": "string" } }, "required": ["type", "frame"], "type": "object" }, { "additionalProperties": false, "description": "The browser rejected a command or could not reach readiness.", "properties": { "code": { "$ref": "#/$defs/ProtocolFailureCode", "description": "Stable machine-readable failure category." }, "message": { "description": "Direct explanation in browser/runtime terms.", "maxLength": 4096, "pattern": "\\S", "type": "string" }, "pendingResources": { "description": "Resources that prevented readiness, in caller-owned deterministic order.", "items": { "maxLength": 1024, "pattern": "\\S", "type": "string" }, "maxItems": 256, "type": "array" }, "type": { "const": "failed", "type": "string" } }, "required": ["type", "code", "message", "pendingResources"], "type": "object" }, { "additionalProperties": false, "description": "The browser session released its resources.", "properties": { "type": { "const": "disposed", "type": "string" } }, "required": ["type"], "type": "object" }] };
2986
- const schema60 = { "description": "Exact frame integer accepted by JavaScript without rounding.", "format": "uint64", "maximum": 9007199254740991, "minimum": 0, "type": "integer" };
2987
- const schema63 = { "description": "Stable browser protocol failure category.", "oneOf": [{ "const": "protocolMismatch", "description": "The envelope version is unsupported.", "type": "string" }, { "const": "invalidRequest", "description": "The command violates its wire contract.", "type": "string" }, { "const": "loadFailed", "description": "The immutable plan could not be installed.", "type": "string" }, { "const": "prepareFailed", "description": "Preparation could not stabilize required resources.", "type": "string" }, { "const": "seekFailed", "description": "The requested frame could not be evaluated.", "type": "string" }, { "const": "confirmFailed", "description": "The staged frame could not be confirmed after compositor capture.", "type": "string" }, { "const": "readinessTimeout", "description": "One or more resources missed the readiness deadline.", "type": "string" }, { "const": "internal", "description": "The runtime violated an internal invariant.", "type": "string" }] };
3184
+ export const validateBrowserResponse = validate55;
3185
+ const schema61 = { "$defs": { "BrowserEvent": { "description": "Closed events emitted by the browser runtime.", "oneOf": [{ "additionalProperties": false, "description": "The immutable browser plan was accepted.", "properties": { "type": { "const": "loaded", "type": "string" } }, "required": ["type"], "type": "object" }, { "additionalProperties": false, "description": "Resources required at the evaluation start are stable.", "properties": { "evaluationStart": { "$ref": "#/$defs/WireFrame", "description": "Frame at which preparation completed." }, "type": { "const": "prepared", "type": "string" } }, "required": ["type", "evaluationStart"], "type": "object" }, { "additionalProperties": false, "description": "One requested frame has been staged for the compositor.", "properties": { "frame": { "$ref": "#/$defs/WireFrame", "description": "Exact frame represented by staged browser state." }, "type": { "const": "frameStaged", "type": "string" } }, "required": ["type", "frame"], "type": "object" }, { "additionalProperties": false, "description": "The captured payload's staged media passed compositor confirmation.", "properties": { "frame": { "$ref": "#/$defs/WireFrame", "description": "Exact frame confirmed by browser media state." }, "type": { "const": "frameReady", "type": "string" } }, "required": ["type", "frame"], "type": "object" }, { "additionalProperties": false, "description": "The browser rejected a command or could not reach readiness.", "properties": { "code": { "$ref": "#/$defs/ProtocolFailureCode", "description": "Stable machine-readable failure category." }, "message": { "description": "Direct explanation in browser/runtime terms.", "maxLength": 4096, "pattern": "\\S", "type": "string" }, "pendingResources": { "description": "Resources that prevented readiness, in caller-owned deterministic order.", "items": { "maxLength": 1024, "pattern": "\\S", "type": "string" }, "maxItems": 256, "type": "array" }, "type": { "const": "failed", "type": "string" } }, "required": ["type", "code", "message", "pendingResources"], "type": "object" }, { "additionalProperties": false, "description": "The browser session released its resources.", "properties": { "type": { "const": "disposed", "type": "string" } }, "required": ["type"], "type": "object" }] }, "ProtocolFailureCode": { "description": "Stable browser protocol failure category.", "oneOf": [{ "const": "protocolMismatch", "description": "The envelope version is unsupported.", "type": "string" }, { "const": "invalidRequest", "description": "The command violates its wire contract.", "type": "string" }, { "const": "loadFailed", "description": "The immutable plan could not be installed.", "type": "string" }, { "const": "prepareFailed", "description": "Preparation could not stabilize required resources.", "type": "string" }, { "const": "seekFailed", "description": "The requested frame could not be evaluated.", "type": "string" }, { "const": "confirmFailed", "description": "The staged frame could not be confirmed after compositor capture.", "type": "string" }, { "const": "readinessTimeout", "description": "One or more resources missed the readiness deadline.", "type": "string" }, { "const": "internal", "description": "The runtime violated an internal invariant.", "type": "string" }] }, "ProtocolVersion": { "const": 4, "description": "Version of the native-to-browser message contract.", "format": "uint16", "maximum": 65535, "minimum": 0, "type": "integer" }, "RequestId": { "description": "Correlation identity shared by one request and its response events.", "format": "uint32", "maximum": 4294967295, "minimum": 0, "type": "integer" }, "WireFrame": { "description": "Exact frame integer accepted by JavaScript without rounding.", "format": "uint64", "maximum": 9007199254740991, "minimum": 0, "type": "integer" } }, "$id": "https://onmark.dev/schemas/browser-response-v4.schema.json", "$schema": "https://json-schema.org/draft/2020-12/schema", "additionalProperties": false, "description": "One versioned event returned by the browser runtime.", "properties": { "event": { "$ref": "#/$defs/BrowserEvent" }, "requestId": { "$ref": "#/$defs/RequestId" }, "version": { "$ref": "#/$defs/ProtocolVersion" } }, "required": ["version", "requestId", "event"], "title": "BrowserResponse", "type": "object", "x-onmark-max-failure-message-characters": 4096, "x-onmark-max-pending-resource-characters": 1024, "x-onmark-max-pending-resources": 256 };
3186
+ const schema67 = { "description": "Correlation identity shared by one request and its response events.", "format": "uint32", "maximum": 4294967295, "minimum": 0, "type": "integer" };
3187
+ const schema68 = { "const": 4, "description": "Version of the native-to-browser message contract.", "format": "uint16", "maximum": 65535, "minimum": 0, "type": "integer" };
3188
+ const schema62 = { "description": "Closed events emitted by the browser runtime.", "oneOf": [{ "additionalProperties": false, "description": "The immutable browser plan was accepted.", "properties": { "type": { "const": "loaded", "type": "string" } }, "required": ["type"], "type": "object" }, { "additionalProperties": false, "description": "Resources required at the evaluation start are stable.", "properties": { "evaluationStart": { "$ref": "#/$defs/WireFrame", "description": "Frame at which preparation completed." }, "type": { "const": "prepared", "type": "string" } }, "required": ["type", "evaluationStart"], "type": "object" }, { "additionalProperties": false, "description": "One requested frame has been staged for the compositor.", "properties": { "frame": { "$ref": "#/$defs/WireFrame", "description": "Exact frame represented by staged browser state." }, "type": { "const": "frameStaged", "type": "string" } }, "required": ["type", "frame"], "type": "object" }, { "additionalProperties": false, "description": "The captured payload's staged media passed compositor confirmation.", "properties": { "frame": { "$ref": "#/$defs/WireFrame", "description": "Exact frame confirmed by browser media state." }, "type": { "const": "frameReady", "type": "string" } }, "required": ["type", "frame"], "type": "object" }, { "additionalProperties": false, "description": "The browser rejected a command or could not reach readiness.", "properties": { "code": { "$ref": "#/$defs/ProtocolFailureCode", "description": "Stable machine-readable failure category." }, "message": { "description": "Direct explanation in browser/runtime terms.", "maxLength": 4096, "pattern": "\\S", "type": "string" }, "pendingResources": { "description": "Resources that prevented readiness, in caller-owned deterministic order.", "items": { "maxLength": 1024, "pattern": "\\S", "type": "string" }, "maxItems": 256, "type": "array" }, "type": { "const": "failed", "type": "string" } }, "required": ["type", "code", "message", "pendingResources"], "type": "object" }, { "additionalProperties": false, "description": "The browser session released its resources.", "properties": { "type": { "const": "disposed", "type": "string" } }, "required": ["type"], "type": "object" }] };
3189
+ const schema63 = { "description": "Exact frame integer accepted by JavaScript without rounding.", "format": "uint64", "maximum": 9007199254740991, "minimum": 0, "type": "integer" };
3190
+ const schema66 = { "description": "Stable browser protocol failure category.", "oneOf": [{ "const": "protocolMismatch", "description": "The envelope version is unsupported.", "type": "string" }, { "const": "invalidRequest", "description": "The command violates its wire contract.", "type": "string" }, { "const": "loadFailed", "description": "The immutable plan could not be installed.", "type": "string" }, { "const": "prepareFailed", "description": "Preparation could not stabilize required resources.", "type": "string" }, { "const": "seekFailed", "description": "The requested frame could not be evaluated.", "type": "string" }, { "const": "confirmFailed", "description": "The staged frame could not be confirmed after compositor capture.", "type": "string" }, { "const": "readinessTimeout", "description": "One or more resources missed the readiness deadline.", "type": "string" }, { "const": "internal", "description": "The runtime violated an internal invariant.", "type": "string" }] };
2988
3191
  const pattern9 = new RegExp("\\S", "u");
2989
- function validate52(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
3192
+ function validate56(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
2990
3193
  let vErrors = null;
2991
3194
  let errors = 0;
2992
- const evaluated0 = validate52.evaluated;
3195
+ const evaluated0 = validate56.evaluated;
2993
3196
  if (evaluated0.dynamicProps) {
2994
3197
  evaluated0.props = undefined;
2995
3198
  }
@@ -3982,16 +4185,16 @@ function validate52(data, { instancePath = "", parentData, parentDataProperty, r
3982
4185
  }
3983
4186
  }
3984
4187
  }
3985
- validate52.errors = vErrors;
4188
+ validate56.errors = vErrors;
3986
4189
  evaluated0.props = props0;
3987
4190
  return errors === 0;
3988
4191
  }
3989
- validate52.evaluated = { "dynamicProps": true, "dynamicItems": false };
3990
- function validate51(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
3991
- /*# sourceURL="https://onmark.dev/schemas/browser-response-v3.schema.json" */ ;
4192
+ validate56.evaluated = { "dynamicProps": true, "dynamicItems": false };
4193
+ function validate55(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
4194
+ /*# sourceURL="https://onmark.dev/schemas/browser-response-v4.schema.json" */ ;
3992
4195
  let vErrors = null;
3993
4196
  let errors = 0;
3994
- const evaluated0 = validate51.evaluated;
4197
+ const evaluated0 = validate55.evaluated;
3995
4198
  if (evaluated0.dynamicProps) {
3996
4199
  evaluated0.props = undefined;
3997
4200
  }
@@ -4042,8 +4245,8 @@ function validate51(data, { instancePath = "", parentData, parentDataProperty, r
4042
4245
  }
4043
4246
  }
4044
4247
  if (data.event !== undefined) {
4045
- if (!(validate52(data.event, { instancePath: instancePath + "/event", parentData: data, parentDataProperty: "event", rootData, dynamicAnchors }))) {
4046
- vErrors = vErrors === null ? validate52.errors : vErrors.concat(validate52.errors);
4248
+ if (!(validate56(data.event, { instancePath: instancePath + "/event", parentData: data, parentDataProperty: "event", rootData, dynamicAnchors }))) {
4249
+ vErrors = vErrors === null ? validate56.errors : vErrors.concat(validate56.errors);
4047
4250
  errors = vErrors.length;
4048
4251
  }
4049
4252
  }
@@ -4094,8 +4297,8 @@ function validate51(data, { instancePath = "", parentData, parentDataProperty, r
4094
4297
  }
4095
4298
  errors++;
4096
4299
  }
4097
- if (3 !== data2) {
4098
- const err8 = { instancePath: instancePath + "/version", schemaPath: "#/$defs/ProtocolVersion/const", keyword: "const", params: { allowedValue: 3 }, message: "must be equal to constant" };
4300
+ if (4 !== data2) {
4301
+ const err8 = { instancePath: instancePath + "/version", schemaPath: "#/$defs/ProtocolVersion/const", keyword: "const", params: { allowedValue: 4 }, message: "must be equal to constant" };
4099
4302
  if (vErrors === null) {
4100
4303
  vErrors = [err8];
4101
4304
  }
@@ -4138,7 +4341,7 @@ function validate51(data, { instancePath = "", parentData, parentDataProperty, r
4138
4341
  }
4139
4342
  errors++;
4140
4343
  }
4141
- validate51.errors = vErrors;
4344
+ validate55.errors = vErrors;
4142
4345
  return errors === 0;
4143
4346
  }
4144
- validate51.evaluated = { "props": true, "dynamicProps": false, "dynamicItems": false };
4347
+ validate55.evaluated = { "props": true, "dynamicProps": false, "dynamicItems": false };