From de001a9bbfa85e2e00cd0d460017cf5ccf6f79b2 Mon Sep 17 00:00:00 2001 From: Cheng Zhao Date: Sun, 29 May 2016 11:57:20 +0900 Subject: [PATCH] Use meaningful name for extensionId --- lib/browser/chrome-extension.js | 8 +++++--- lib/renderer/chrome-api.js | 2 +- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/lib/browser/chrome-extension.js b/lib/browser/chrome-extension.js index 233f7f1..775a31d 100644 --- a/lib/browser/chrome-extension.js +++ b/lib/browser/chrome-extension.js @@ -14,13 +14,16 @@ const objectValues = function (object) { const manifestMap = {} // extensionId => manifest const manifestNameMap = {} // name => manifest -let nextExtensionId = 0 +const generateExtensionIdFromName = function (name) { + return name.replace(/[\W_]+/g, '-').toLowerCase() +} // Create or get manifest object from |srcDirectory|. const getManifestFromPath = function (srcDirectory) { const manifest = JSON.parse(fs.readFileSync(path.join(srcDirectory, 'manifest.json'))) if (!manifestNameMap[manifest.name]) { - const extensionId = `extension-${++nextExtensionId}` + const extensionId = generateExtensionIdFromName(manifest.name) + console.log(extensionId) manifestMap[extensionId] = manifestNameMap[manifest.name] = manifest Object.assign(manifest, { srcDirectory: srcDirectory, @@ -238,7 +241,6 @@ app.once('ready', function () { const chromeExtensionHandler = function (request, callback) { const parsed = url.parse(request.url) if (!parsed.hostname || !parsed.path) return callback() - if (!/extension-\d+/.test(parsed.hostname)) return callback() const manifest = manifestMap[parsed.hostname] if (!manifest) return callback() diff --git a/lib/renderer/chrome-api.js b/lib/renderer/chrome-api.js index a7a216d..61fce14 100644 --- a/lib/renderer/chrome-api.js +++ b/lib/renderer/chrome-api.js @@ -165,7 +165,7 @@ exports.injectTo = function (extensionId, isBackgroundPage, context) { if (responseCallback) { console.error('responseCallback is not supported') } - ipcRenderer.send(`CHROME_TABS_SEND_MESSAGE`, tabId, extensionId, isBackgroundPage, message) + ipcRenderer.send('CHROME_TABS_SEND_MESSAGE', tabId, extensionId, isBackgroundPage, message) }, onUpdated: new Event(), -- 2.7.4