diff options
Diffstat (limited to 'components/jetpack/jetpack-id/index.js')
-rw-r--r-- | components/jetpack/jetpack-id/index.js | 53 |
1 files changed, 0 insertions, 53 deletions
diff --git a/components/jetpack/jetpack-id/index.js b/components/jetpack/jetpack-id/index.js deleted file mode 100644 index 6c1493f1d..000000000 --- a/components/jetpack/jetpack-id/index.js +++ /dev/null @@ -1,53 +0,0 @@ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ - -/** - * Takes parsed `package.json` manifest and returns - * valid add-on id for it. - */ -function getID(manifest) { - manifest = manifest || {}; - - if (manifest.id) { - - if (typeof manifest.id !== "string") { - return null; - } - - // If manifest.id is already valid (as domain or GUID), use it - if (isValidAOMName(manifest.id)) { - return manifest.id; - } - // Otherwise, this ID is invalid so return `null` - return null; - } - - // If no `id` defined, turn `name` into a domain ID, - // as we transition to `name` being an id, similar to node/npm, but - // append a '@' to make it compatible with Firefox requirements - if (manifest.name) { - - if (typeof manifest.name !== "string") { - return null; - } - - var modifiedName = "@" + manifest.name; - return isValidAOMName(modifiedName) ? modifiedName : null; - } - - // If no `id` or `name` property, return null as this manifest - // is invalid - return null; -} - -module.exports = getID; - -/** - * Regex taken from XPIProvider.jsm in the Addon Manager to validate proper - * IDs that are able to be used. - * http://mxr.mozilla.org/mozilla-central/source/toolkit/mozapps/extensions/internal/XPIProvider.jsm#209 - */ -function isValidAOMName (s) { - return /^(\{[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\}|[a-z0-9-\._]*\@[a-z0-9-\._]+)$/i.test(s || ""); -} |