All Downloads are FREE. Search and download functionalities are using the official Maven repository.

mnt-report.1.0.8.source-code.jreport-package.schema.json Maven / Gradle / Ivy

There is a newer version: 1.2.2
Show newest version
{
  "$id": "https://json-schema.hyperjump.io/schema",
  "$schema": "https://json-schema.org/draft/2019-09/schema",
  "type": "object",
  "properties": {
    "connection": {
      "type": "object",
      "not": {"type":  null},
      "properties": {
        "url": {
          "type": "string"
        },
        "userName": {
          "type": "string"
        },
        "password": {
          "type": "string"
        },
        "tag": {
          "type": "string"
        }
      },
      "additionalProperties": false,
      "oneOf": [
        {
          "required": [
            "url",
            "userName",
            "password"
          ]
        },
        {
          "required": [
            "tag"
          ]
        }
      ]
    },
    "outputs": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "file": {
            "type": "object",
            "properties": {
              "path": {
                "type": "string"
              }
            },
            "additionalProperties": false,
            "required": [
              "path"
            ]
          },
          "mail": {
            "type": "object",
            "properties": {
              "from": {
                "type": "string"
              },
              "to": {
                "type": "string"
              },
              "subject": {
                "type": "string"
              },
              "body": {
                "type": "string"
              },
              "host": {
                "type": "string"
              },
              "userName": {
                "type": "string"
              },
              "password": {
                "type": "string"
              },
              "port": {
                "type": "string"
              },
              "isAttachment": {
                "type": "boolean"
              },
              "props" : {
                "type": "object",
                "additionalProperties": true
              }
            },
            "additionalProperties": false
          },
          "telegram": {
            "type": "object",
            "properties": {
              "botId": {
                "type": "string"
              },
              "chatId": {
                "type": "string"
              },
              "message": {
                "type": "string"
              },
              "url": {
                "type": "string"
              }
            },
            "additionalProperties": false
          },
          "buf": {
            "type": "object",
            "properties": {}
          }
        },
        "additionalProperties": false,
        "oneOf": [
          {
            "required": [
              "file"
            ]
          },
          {
            "required": [
              "mail"
            ]
          },
          {
            "required": [
              "telegram"
            ]
          },
          {
            "required": [
              "buf"
            ]
          }
        ]
      }
    },
    "params": {
      "$ref": "#/$defs/params"
    },
    "reports": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "exportType": {
            "type": "string",
            "enum": [
              "XLSX",
              "PDF",
              "CSV"
            ]
          },
          "fileName": {
            "type": "string"
          },
          "path": {
            "type": "string"
          },
          "template": {
            "description": "jasper report template",
            "type": "object",
            "properties": {
              "source": {
                "type": "object",
                "description": "source of the jrxml",
                "properties": {
                  "file": {
                    "type": "object",
                    "properties": {
                      "name": {
                        "type": "string"
                      },
                      "path": {
                        "type": "string"
                      }
                    },
                    "additionalProperties": false
                  },
                  "db": {
                    "type": "object",
                    "properties": {
                      "tag": {
                        "type": "string"
                      },
                      "additionalProperties": false
                    }
                  },
                  "inline": {
                    "type": "object",
                    "properties": {
                      "data": {
                        "type": "string"
                      },
                      "additionalProperties": false
                    }
                  },
                  "additionalProperties": false
                },
                "additionalProperties": false,
                "oneOf": [
                  {
                    "required": [
                      "file"
                    ]
                  },
                  {
                    "required": [
                      "db"
                    ]
                  },
                  {
                    "required": [
                      "inline"
                    ]
                  }
                ]
              }
            },
            "additionalProperties": false,
            "required": [
              "source"
            ]
          },
          "input": {
            "description": "input source",
            "type": "object",
            "properties": {
              "source": {
                "type": "object",
                "description": "source of db",
                "properties": {
                  "db": {
                    "type": "object",
                    "properties": {
                      "connection": {
                        "type": "object",
                        "not": {"type":  null},
                        "properties": {
                          "url": {
                            "type": "string"
                          },
                          "userName": {
                            "type": "string"
                          },
                          "password": {
                            "type": "string"
                          },
                          "tag": {
                            "type": "string"
                          }
                        },
                        "additionalProperties": false,
                        "oneOf": [
                          {
                            "required": [
                              "url",
                              "userName",
                              "password"
                            ]
                          },
                          {
                            "required": [
                              "tag"
                            ]
                          }
                        ]
                      }
                    },
                    "additionalProperties": false
                  },
                  "null": {
                    "type": "object"
                  },
                  "additionalProperties": false
                },
                "additionalProperties": false,
                "oneOf": [
                  {
                    "required": [
                      "db"
                    ]
                  },
                  {
                    "required": [
                      "null"
                    ]
                  }
                ]
              }
            },
            "additionalProperties": false,
            "required": [
              "source"
            ]
          },
          "params": {
               "$ref": "#/$defs/params"
          },
          "isZip": {
            "type": "boolean"
          },
          "configScript": {
            "type": "string"
          }
        },
        "required": [
          "exportType",
          "template",
          "input"
        ],
        "additionalProperties": false
      },
      "additionalProperties": false
    },
    "isZip": {
      "type": "boolean"
    },
    "profile": {
      "type": "string"
    }
  },
  "additionalProperties": false,
  "$defs": {
    "params": {
      "type": "array",
      "uniqueItems": true,
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "string",
              "number"
            ]
          },
          "key": {
            "type": "string"
          },
          "val": {
            "oneOf": [
              {
                "type": "string"
              },
              {
                "type": "number"
              }
            ]
          }
        },
        "additionalProperties": false,
        "required": [
          "type",
          "key",
          "val"
        ]
      }
    }
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy