crossflow 0.0.5

Reactive programming and workflow engine in bevy
Documentation
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "DiagramElementRegistry",
  "type": "object",
  "properties": {
    "messages": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/$defs/MessageRegistration"
      }
    },
    "nodes": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/$defs/NodeRegistration"
      }
    },
    "schemas": {
      "type": "object",
      "additionalProperties": true
    },
    "sections": {
      "type": "object",
      "additionalProperties": {
        "$ref": "#/$defs/SectionRegistration"
      }
    },
    "trace_supported": {
      "type": "boolean"
    }
  },
  "required": [
    "nodes",
    "sections",
    "trace_supported",
    "messages",
    "schemas"
  ],
  "$defs": {
    "ConfigExample": {
      "type": "object",
      "properties": {
        "description": {
          "description": "A description of what this config is for",
          "type": "string"
        },
        "config": {
          "description": "The value of the config"
        }
      },
      "required": [
        "description",
        "config"
      ]
    },
    "MessageOperation": {
      "type": "object",
      "properties": {
        "deserialize": {
          "type": [
            "object",
            "null"
          ]
        },
        "fork_clone": {
          "type": [
            "object",
            "null"
          ]
        },
        "fork_result": {
          "type": [
            "object",
            "null"
          ]
        },
        "join": {
          "type": [
            "object",
            "null"
          ]
        },
        "serialize": {
          "type": [
            "object",
            "null"
          ]
        },
        "split": {
          "type": [
            "object",
            "null"
          ]
        },
        "unzip": {
          "type": [
            "array",
            "null"
          ],
          "items": {
            "type": "string"
          }
        }
      }
    },
    "MessageRegistration": {
      "type": "object",
      "properties": {
        "operations": {
          "$ref": "#/$defs/MessageOperation"
        },
        "schema": {
          "anyOf": [
            {
              "$ref": "#/$defs/Schema"
            },
            {
              "type": "null"
            }
          ]
        },
        "type_name": {
          "type": "string"
        }
      },
      "required": [
        "type_name",
        "operations"
      ]
    },
    "NodeRegistration": {
      "type": "object",
      "properties": {
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "config_examples": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ConfigExample"
          }
        },
        "config_schema": {
          "$ref": "#/$defs/Schema"
        },
        "default_display_text": {
          "description": "If the user does not specify a default display text, the node ID will\n be used here.",
          "type": "string"
        },
        "request": {
          "type": "string"
        },
        "response": {
          "type": "string"
        },
        "streams": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "required": [
        "default_display_text",
        "request",
        "response",
        "streams",
        "config_schema",
        "config_examples"
      ]
    },
    "Schema": {
      "type": [
        "object",
        "boolean"
      ]
    },
    "SectionBuffer": {
      "type": "object",
      "properties": {
        "item_type": {
          "type": [
            "string",
            "null"
          ]
        }
      }
    },
    "SectionInput": {
      "type": "object",
      "properties": {
        "message_type": {
          "type": "string"
        }
      },
      "required": [
        "message_type"
      ]
    },
    "SectionMetadata": {
      "type": "object",
      "properties": {
        "buffers": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/$defs/SectionBuffer"
          }
        },
        "inputs": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/$defs/SectionInput"
          }
        },
        "outputs": {
          "type": "object",
          "additionalProperties": {
            "$ref": "#/$defs/SectionOutput"
          }
        }
      },
      "required": [
        "inputs",
        "outputs",
        "buffers"
      ]
    },
    "SectionOutput": {
      "type": "object",
      "properties": {
        "message_type": {
          "type": "string"
        }
      },
      "required": [
        "message_type"
      ]
    },
    "SectionRegistration": {
      "type": "object",
      "properties": {
        "description": {
          "type": [
            "string",
            "null"
          ]
        },
        "config_examples": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/ConfigExample"
          }
        },
        "config_schema": {
          "$ref": "#/$defs/Schema"
        },
        "default_display_text": {
          "type": "string"
        },
        "metadata": {
          "$ref": "#/$defs/SectionMetadata"
        }
      },
      "required": [
        "default_display_text",
        "metadata",
        "config_schema",
        "config_examples"
      ]
    }
  }
}