]> gerrit.simantics Code Review - simantics/district.git/blobdiff - org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/node_modules/npm-user-validate/npm-user-validate.js
Adding integrated tile server
[simantics/district.git] / org.simantics.maps.server / node / node-v4.8.0-win-x64 / node_modules / npm / node_modules / npm-user-validate / npm-user-validate.js
diff --git a/org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/node_modules/npm-user-validate/npm-user-validate.js b/org.simantics.maps.server/node/node-v4.8.0-win-x64/node_modules/npm/node_modules/npm-user-validate/npm-user-validate.js
new file mode 100644 (file)
index 0000000..3a645ec
--- /dev/null
@@ -0,0 +1,48 @@
+exports.email = email
+exports.pw = pw
+exports.username = username
+
+var requirements = exports.requirements = {
+  username: {
+    length: 'Name length must be less than or equal to 214 characters long',
+    lowerCase: 'Name must be lowercase',
+    urlSafe: 'Name may not contain non-url-safe chars',
+    dot: 'Name may not start with "."'
+  },
+  password: {},
+  email: {
+    valid: 'Email must be an email address'
+  }
+};
+
+function username (un) {
+  if (un !== un.toLowerCase()) {
+    return new Error(requirements.username.lowerCase)
+  }
+
+  if (un !== encodeURIComponent(un)) {
+    return new Error(requirements.username.urlSafe)
+  }
+
+  if (un.charAt(0) === '.') {
+    return new Error(requirements.username.dot)
+  }
+
+  if (un.length > 214) {
+    return new Error(requirements.username.length)
+  }
+
+  return null
+}
+
+function email (em) {
+  if (!em.match(/^.+@.+\..+$/)) {
+    return new Error(requirements.email.valid)
+  }
+
+  return null
+}
+
+function pw (pw) {
+  return null
+}