func GetFileList(basePath string, exts []string) ([]string, error) {
	if _, err := ioutil.ReadDir(basePath); err != nil {
		return nil, err
	}
	if len(exts) == 0 {
		return nil, errors.New("no extensions in parameter")
	}
	files := []string{}
	pool := 20
	ch := make(chan string, pool)
	chSmp := make(chan bool, pool)
	wg := &sync.WaitGroup{}
	go checkDir(basePath, exts, ch, chSmp, wg, true)
	for {
		v, ok := <-ch
		if !ok {
			break
		}
		files = append(files, v)
	}
	return files, nil
}
GetFileList returns file path from basePath directory with acceptable extension files
package files
import (
	"io/ioutil"
	"path/filepath"
	"regexp"
	"sync"
	"github.com/pkg/errors"
)