{
    type: 'panel',
    label: 'ioBroker',
    items: {
        _checkConfig: {
            // this component is not visible in the UI
            // it checks the configuration
            type: 'custom',
            bundlerType: 'module',
            i18n: true,
            url: 'custom/customComponents.js',
            name: 'ConfigCustomBackItUpSet/Components/CheckAllConfigInvisible',
        },
        _header: {
            type: 'header',
            size: 2,
            text: 'ioBroker backup',
            xs: 12,
            sm: 12,
            md: 12,
            lg: 12,
            xl: 12,
        },
        backupNow: {
            type: 'custom',
            bundlerType: 'module',
            custom: {
                backUpType: 'iobroker',
                // icon: 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0iY3VycmVudENvbG9yIj4NCiAgICA8cGF0aCBkPSJNMTkuMzUgMTAuMDRDMTguNjcgNi41OSAxNS42NCA0IDEyIDQgOS4xMSA0IDYuNiA1LjY0IDUuMzUgOC4wNCAyLjM0IDguMzYgMCAxMC45MSAwIDE0YzAgMy4zMSAyLjY5IDYgNiA2aDEzYzIuNzYgMCA1LTIuMjQgNS01IDAtMi42NC0yLjA1LTQuNzgtNC42NS00Ljk2ek0xNCAxM3Y0aC00di00SDdsNS01IDUgNWgtM3oiLz4NCjwvc3ZnPg0K',
            },
            url: 'custom/customComponents.js',
            name: 'ConfigCustomBackItUpSet/Components/BackupNow',
            label: 'Backup now',
            newLine: true,
            xs: 12,
            sm: 9,
            md: 6,
            lg: 6,
            xl: 6,
        },
        _helpLine1: {
            newLine: true,
            type: 'divider',
            color: 'primary',
        },
        minimalTime: {
            hidden: 'data.iobrokerCron',
            newLine: true,
            type: 'timePicker',
            label: 'Backup time',
            help: 'Backup start time in hh:mm',
            format: 'HH:mm',
            views: ['hours', 'minutes'],
            timeSteps: { hours: 1, minutes: 1 },
            returnFormat: 'HH:mm',
            xs: 12,
            sm: 9,
            md: 6,
            lg: 3,
            xl: 3,
        },
        iobrokerCronJob: {
            hidden: '!data.iobrokerCron',
            newLine: true,
            type: 'cron',
            label: 'Backup CRON job',
            complex: true,
            xs: 12,
            sm: 9,
            md: 6,
            lg: 3,
            xl: 3,
        },
        minimalEveryXDays: {
            hidden: 'data.iobrokerCron',
            newLine: true,
            xs: 12,
            sm: 9,
            md: 6,
            lg: 3,
            xl: 3,
            min: 1,
            max: 100,
            type: 'number',
            label: 'days',
            help: 'Backup will run every X days',
        },
        minimalDeleteAfter: {
            xs: 12,
            sm: 9,
            md: 6,
            lg: 3,
            xl: 3,
            min: 1,
            max: 100,
            type: 'number',
            label: 'piece',
            help: 'Delete old ioBroker backups with the exception of the last X pieces',
        },
        minimalNameSuffix: {
            xs: 12,
            sm: 9,
            md: 6,
            lg: 3,
            xl: 3,
            type: 'text',
            label: 'Name suffix',
            help: 'Name suffix for the file name of the backup',
        },
        iobrokerCron: {
            newLine: true,
            type: 'checkbox',
            label: 'Create your own CRON job (for experts only)',
            xs: 12,
            sm: 9,
            md: 6,
            lg: 3,
            xl: 3,
        },
    },
}
