I'm trying to setup a glob array for my javascript concat build task in gulp. The directory structure looks as follows:
├── about
│   └── about.js
├── assets
├── contact
├── core
│   ├── navbar
│   │   ├── navbar.js
│   │   └── navbar.test.js
│   ├── routing.js
│   ├── routing.test.js
│   ├── utils.js
│   └── utils.test.js
├── generated
│   ├── footer.js
│   ├── header.js
│   └── templates.js
├── home
├── app.js
└── config.js
The order of the files is important:
- generated/header.js
 - app.js
 - any of the *.js files, except those here below
 - generated/templates.js
 - generated/footer.js
 
I've wildly tried all kinds of wildcards combination, but the globbing isn't strong with me.
var inputFiles = [
  'generated/header.js',
  'app.js',
  '!(generated)**/*.js',    // <=---- ???
  'generated/templates.js',
  'generated/footer.js',
  '!**/*.test.js'
];
So how do I include all *.js files except those from a subdirectory? 
Thanks.