| 125 | } |
| 126 | |
| 127 | function validateArguments(args) { |
| 128 | const validationErrors = []; |
| 129 | |
| 130 | const validFlags = ['--api', '--chrome', '--chrome-mv2', '--chrome-mv3', '--firefox', '--firefox-mv2', '--thunderbird', '--release', '--debug', '--watch', '--plus', '--log-info', '--log-warn', '--test']; |
| 131 | const invalidFlags = args.filter((flag) => !validFlags.includes(flag) && !flag.startsWith('--version=')); |
| 132 | invalidFlags.forEach((flag) => validationErrors.push(`Invalid flag ${flag}`)); |
| 133 | |
| 134 | if (args.some((arg) => arg.startsWith('--version='))) { |
| 135 | if (!args.includes('--firefox') || !args.includes('--release') || args.length !== 3) { |
| 136 | validationErrors.push('Only Firefox build currently supports signed builds'); |
| 137 | } |
| 138 | } |
| 139 | return validationErrors; |
| 140 | } |
| 141 | |
| 142 | function parseArguments(args) { |
| 143 | return args.filter((arg) => !arg.startsWith('--version=')); |