UNPKG

843 BJavaScriptView Raw
1"use strict";
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6exports.validateProjectName = validateProjectName;
7
8var _InvalidNameError = _interopRequireDefault(require("./errors/InvalidNameError"));
9
10var _ReservedNameError = _interopRequireDefault(require("./errors/ReservedNameError"));
11
12var _HelloWorldError = _interopRequireDefault(require("./errors/HelloWorldError"));
13
14function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
16const NAME_REGEX = /^[$A-Z_][0-9A-Z_$]*$/i;
17
18function validateProjectName(name) {
19 if (!String(name).match(NAME_REGEX)) {
20 throw new _InvalidNameError.default(name);
21 }
22
23 if (name === 'React' || name === 'react') {
24 throw new _ReservedNameError.default();
25 }
26
27 if (name.match(/helloworld/gi)) {
28 throw new _HelloWorldError.default();
29 }
30}
\No newline at end of file