Add electron.hideInternalModules
This commit is contained in:
parent
c649c4cf4f
commit
2ca5a33d28
3 changed files with 13 additions and 6 deletions
|
@ -13,13 +13,13 @@ require path.resolve(__dirname, '..', '..', 'common', 'lib', 'reset-search-paths
|
||||||
# Import common settings.
|
# Import common settings.
|
||||||
require path.resolve(__dirname, '..', '..', 'common', 'lib', 'init')
|
require path.resolve(__dirname, '..', '..', 'common', 'lib', 'init')
|
||||||
|
|
||||||
# Expose public APIs.
|
|
||||||
globalPaths = Module.globalPaths
|
globalPaths = Module.globalPaths
|
||||||
globalPaths.push path.resolve(__dirname, '..', 'api', 'lib', 'exports')
|
|
||||||
|
|
||||||
unless process.env.ELECTRON_HIDE_INTERNAL_MODULES
|
unless process.env.ELECTRON_HIDE_INTERNAL_MODULES
|
||||||
globalPaths.push path.resolve(__dirname, '..', 'api', 'lib')
|
globalPaths.push path.resolve(__dirname, '..', 'api', 'lib')
|
||||||
|
|
||||||
|
# Expose public APIs.
|
||||||
|
globalPaths.push path.resolve(__dirname, '..', 'api', 'lib', 'exports')
|
||||||
|
|
||||||
if process.platform is 'win32'
|
if process.platform is 'win32'
|
||||||
# Redirect node's console to use our own implementations, since node can not
|
# Redirect node's console to use our own implementations, since node can not
|
||||||
# handle console output when running as GUI program.
|
# handle console output when running as GUI program.
|
||||||
|
|
|
@ -1,3 +1,10 @@
|
||||||
|
# Do not expose the internal modules to `require`.
|
||||||
|
exports.hideInternalModules = ->
|
||||||
|
{globalPaths} = require 'module'
|
||||||
|
if globalPaths.length is 3
|
||||||
|
# Remove the "common/api/lib" and "browser-or-renderer/api/lib".
|
||||||
|
globalPaths.splice 0, 2
|
||||||
|
|
||||||
Object.defineProperties exports,
|
Object.defineProperties exports,
|
||||||
# Common modules, please sort with alphabet order.
|
# Common modules, please sort with alphabet order.
|
||||||
clipboard:
|
clipboard:
|
||||||
|
|
|
@ -13,13 +13,13 @@ require path.resolve(__dirname, '..', '..', 'common', 'lib', 'reset-search-paths
|
||||||
# Import common settings.
|
# Import common settings.
|
||||||
require path.resolve(__dirname, '..', '..', 'common', 'lib', 'init')
|
require path.resolve(__dirname, '..', '..', 'common', 'lib', 'init')
|
||||||
|
|
||||||
# Expose public APIs.
|
|
||||||
globalPaths = Module.globalPaths
|
globalPaths = Module.globalPaths
|
||||||
globalPaths.push path.resolve(__dirname, '..', 'api', 'lib', 'exports')
|
|
||||||
|
|
||||||
unless process.env.ELECTRON_HIDE_INTERNAL_MODULES
|
unless process.env.ELECTRON_HIDE_INTERNAL_MODULES
|
||||||
globalPaths.push path.resolve(__dirname, '..', 'api', 'lib')
|
globalPaths.push path.resolve(__dirname, '..', 'api', 'lib')
|
||||||
|
|
||||||
|
# Expose public APIs.
|
||||||
|
globalPaths.push path.resolve(__dirname, '..', 'api', 'lib', 'exports')
|
||||||
|
|
||||||
# The global variable will be used by ipc for event dispatching
|
# The global variable will be used by ipc for event dispatching
|
||||||
v8Util = process.atomBinding 'v8_util'
|
v8Util = process.atomBinding 'v8_util'
|
||||||
v8Util.setHiddenValue global, 'ipc', new events.EventEmitter
|
v8Util.setHiddenValue global, 'ipc', new events.EventEmitter
|
||||||
|
|
Loading…
Reference in a new issue