{
  i18n: true,
  type: 'panel',
  items: {
    gotifyDesc: {
      type: 'staticText',
      text: 'Gotify web socket for connection to various notification systems',
      newLine: true,
      style: {
        fontSize: 20,
      },
      xs: 12,
      sm: 10,
      md: 10,
      lg: 10,
      xl: 10,
    },
    gotifySettings: {
      newLine: true,
      type: 'header',
      text: 'Gotify Settings',
      size: 2,
      xs: 12,
      sm: 12,
      md: 12,
      lg: 12,
      xl: 12,
    },
    ip: {
      type: 'text',
      label: 'Gotify IP or Domain',
      xs: 12,
      sm: 12,
      md: 8,
      lg: 4,
      xl: 4,
      help: 'Gotify IP or Domain',
      validator: 'data.ip',
      validatorNoSaveOnError: true,
      placeholder: '10.250.1.10',
      newLine: true,
    },
    port: {
      xs: 12,
      sm: 12,
      md: 8,
      lg: 4,
      xl: 4,
      min: 1,
      max: 65535,
      help: 'Gotify Port',
      type: 'number',
      validator: 'data.port',
      validatorNoSaveOnError: true,
      placeholder: '8080',
      label: 'Gotify Port',
    },
    token: {
      type: 'password',
      visible: true,
      label: 'Gotify Token',
      xs: 12,
      sm: 12,
      md: 8,
      lg: 4,
      xl: 4,
      validator: 'data.token',
      validatorNoSaveOnError: true,
      help: 'Gotify Token',
    },
    notificationSettings: {
      newLine: true,
      type: 'header',
      text: 'Notification Settings',
      size: 2,
      xs: 12,
      sm: 12,
      md: 12,
      lg: 12,
      xl: 12,
    },
    notificationType: {
      type: 'select',
      label: 'Notification type',
      xs: 12,
      sm: 12,
      md: 8,
      lg: 4,
      xl: 4,
      help: 'Notification type',
      options: [
        {
          label: 'E-Mail',
          value: 'email',
        },
        {
          label: 'Matrix',
          value: 'matrix-org',
        },
        {
          label: 'Notification-Manager',
          value: 'notification-manager',
        },
        {
          label: 'Pushover',
          value: 'pushover',
        },
        {
          label: 'Discord',
          value: 'discord',
        },
        {
          label: 'Signal',
          value: 'signal-cmb',
        },
        {
          label: 'Telegram',
          value: 'telegram',
        },
        {
          label: 'Whatsapp',
          value: 'whatsapp-cmb',
        },
      ],
      newLine: true,
    },
    emailInstance: {
      type: 'selectSendTo',
      command: 'sendToInstance',
      jsonData: '{ "type": "email" }',
      hidden: "data.notificationType !== 'email'",
      label: 'E-Mail Instance',
      xs: 12,
      sm: 12,
      md: 8,
      lg: 4,
      xl: 4,
      help: 'E-Mail Instance',
    },
    emailReceiver: {
      type: 'text',
      hidden: "data.notificationType !== 'email'",
      label: 'E-Mail Receiver',
      xs: 12,
      sm: 12,
      md: 8,
      lg: 4,
      xl: 4,
      help: 'E-Mail Receiver',
      validator: 'data.emailReceiver',
      validatorNoSaveOnError: true,
      placeholder: 'xxxx@xxxx.com',
      newLine: true,
    },
    emailSender: {
      type: 'text',
      hidden: "data.notificationType !== 'email'",
      label: 'E-Mail Sender',
      xs: 12,
      sm: 12,
      md: 8,
      lg: 4,
      xl: 4,
      validator: 'data.emailSender',
      validatorNoSaveOnError: true,
      placeholder: 'xxxx@xxxx.com',
      help: 'E-Mail Sender',
    },
    matrixInstance: {
      type: 'selectSendTo',
      command: 'sendToInstance',
      jsonData: '{ "type": "matrix-org" }',
      hidden: "data.notificationType !== 'matrix-org'",
      label: 'Matrix Instance',
      xs: 12,
      sm: 12,
      md: 8,
      lg: 4,
      xl: 4,
      help: 'Matrix Instance',
    },
    notificationManagerInstance: {
      type: 'selectSendTo',
      command: 'sendToInstance',
      jsonData: '{ "type": "notification-manager" }',
      hidden: "data.notificationType !== 'notification-manager'",
      label: 'Notification-Manager Instance',
      xs: 12,
      sm: 12,
      md: 8,
      lg: 4,
      xl: 4,
      help: 'Notification-Manager Instance',
    },
    pushoverInstance: {
      type: 'selectSendTo',
      command: 'sendToInstance',
      jsonData: '{ "type": "pushover" }',
      hidden: "data.notificationType !== 'pushover'",
      label: 'Pushover Instance',
      xs: 12,
      sm: 12,
      md: 8,
      lg: 4,
      xl: 4,
      help: 'Pushover Instance',
    },
    pushoverDeviceID: {
      type: 'text',
      hidden: "data.notificationType !== 'pushover'",
      label: 'Device ID',
      xs: 12,
      sm: 12,
      md: 8,
      lg: 4,
      xl: 4,
      help: 'Device ID',
    },
    pushoverSilentNotice: {
      newLine: true,
      type: 'checkbox',
      hidden: "data.notificationType !== 'pushover'",
      label: 'Silent Notice',
      xs: 12,
      sm: 12,
      md: 8,
      lg: 4,
      xl: 4,
    },
    discordInstance: {
      type: 'selectSendTo',
      command: 'sendToInstance',
      jsonData: '{ "type": "discord" }',
      hidden: "data.notificationType !== 'discord'",
      label: 'Discord Instance',
      xs: 12,
      sm: 12,
      md: 8,
      lg: 4,
      xl: 4,
      help: 'Discord Instance',
    },
    discordTarget: {
      type: 'selectSendTo',
      command: 'sendToDiscordTarget',
      jsonData: '{ "instance": "${data.discordInstance}" }',
      hidden: "data.notificationType !== 'discord'",
      label: 'Discord Target',
      xs: 12,
      sm: 12,
      md: 8,
      lg: 4,
      xl: 4,
      default: 'none',
      help: 'Discord Target',
    },
    signalInstance: {
      type: 'selectSendTo',
      command: 'sendToInstance',
      jsonData: '{ "type": "signal-cmb" }',
      hidden: "data.notificationType !== 'signal-cmb'",
      label: 'Signal Instance',
      xs: 12,
      sm: 12,
      md: 8,
      lg: 4,
      xl: 4,
      help: 'Signal Instance',
    },
    telegramInstance: {
      type: 'selectSendTo',
      command: 'sendToInstance',
      jsonData: '{ "type": "telegram" }',
      hidden: "data.notificationType !== 'telegram'",
      label: 'Telegram Instance',
      xs: 12,
      sm: 12,
      md: 8,
      lg: 4,
      xl: 4,
      help: 'Telegram Instance',
    },
    telegramUser: {
      type: 'selectSendTo',
      command: 'sendToTelegramUser',
      jsonData: '{ "instance": "${data.telegramInstance}" }',
      hidden: "data.notificationType !== 'telegram'",
      label: 'Telegram User',
      noTranslation: false,
      xs: 12,
      sm: 12,
      md: 8,
      lg: 4,
      xl: 4,
      help: 'Telegram User',
    },
    whatsappInstance: {
      type: 'selectSendTo',
      command: 'sendToInstance',
      jsonData: '{ "type": "whatsapp-cmb" }',
      hidden: "data.notificationType !== 'whatsapp-cmb'",
      label: 'Whatsapp Instance',
      xs: 12,
      sm: 12,
      md: 8,
      lg: 4,
      xl: 4,
      help: 'Whatsapp Instance',
    },
    _helpLine2: {
      newLine: true,
      type: 'divider',
      color: 'secondary',
      xs: 12,
      sm: 12,
      md: 12,
      lg: 12,
      xl: 12,
    },
    _donateTxt: {
      type: 'staticText',
      text: 'If you like this project and would like to support its development, you are welcome to leave a donation.',
      newLine: true,
      xs: 12,
      sm: 12,
      md: 12,
      lg: 12,
      xl: 12,
    },
    _donate: {
      type: 'staticImage',
      tooltip: 'PayPal.Me',
      noTranslation: true,
      href: 'https://paypal.me/mk1676',
      src: 'https://img.shields.io/badge/paypal-donate%20%7C%20spenden-blue.svg',
      newLine: true,
      xs: 7,
      sm: 3,
      md: 3,
      lg: 1.2,
      xl: 1.2,
    },
    _githubSponsor: {
      type: 'staticImage',
      tooltip: 'GitHub Sponsors',
      noTranslation: true,
      href: 'https://github.com/sponsors/simatec',
      src: 'https://img.shields.io/static/v1?label=Sponsor&message=%E2%9D%A4&logo=GitHub&color=%23fe8e86',
      xs: 5,
      sm: 2,
      md: 2,
      lg: 0.8,
      xl: 0.8,
    },
  },
}