(name)
| 154 | } |
| 155 | |
| 156 | function validateProjectName(name) { |
| 157 | if (typeof name !== 'string') { |
| 158 | return 'Project name must be a string' |
| 159 | } |
| 160 | |
| 161 | const trimmed = name.trim() |
| 162 | if (trimmed.length < 3) { |
| 163 | return 'Project name must be at least 3 characters' |
| 164 | } |
| 165 | |
| 166 | if (trimmed.length > 60) { |
| 167 | return 'Project name must be 60 characters or fewer' |
| 168 | } |
| 169 | |
| 170 | return null |
| 171 | } |
| 172 | |
| 173 | function validateOwner(owner) { |
| 174 | if (typeof owner !== 'string') { |