refactor: Split 'Event' docs/types into more specific Event types (#17038)
* Event = Base event type (with preventDefault) * IpcMainEvent = Event that ipcMain emits (with sender, reply, etc.) * IpcRendererEvent = Event that ipcRenderer emits (with sender, senderId, etc.) * KeyboardEvent = Event that we emit with keyboard flags (ctrlKey, altKey, etc.) This will dramatically improve peoples TS experience with IPC events
This commit is contained in:
parent
ef2e7d95fe
commit
3b74837020
22 changed files with 515 additions and 285 deletions
|
@ -22,6 +22,9 @@ template("typescript_build") {
|
||||||
invoker.tsconfig,
|
invoker.tsconfig,
|
||||||
"//electron/tsconfig.json",
|
"//electron/tsconfig.json",
|
||||||
"//electron/package-lock.json",
|
"//electron/package-lock.json",
|
||||||
|
"//electron/typings/internal-ambient.d.ts",
|
||||||
|
"//electron/typings/internal-electron.d.ts",
|
||||||
|
"//electron/typings/internal-helpers.d.ts",
|
||||||
]
|
]
|
||||||
|
|
||||||
type_roots = "node_modules/@types,typings"
|
type_roots = "node_modules/@types,typings"
|
||||||
|
|
|
@ -58,6 +58,8 @@ The `ipcMain` module has the following method to listen for events:
|
||||||
|
|
||||||
* `channel` String
|
* `channel` String
|
||||||
* `listener` Function
|
* `listener` Function
|
||||||
|
* `event` IpcMainEvent
|
||||||
|
* `...args` any[]
|
||||||
|
|
||||||
Listens to `channel`, when a new message arrives `listener` would be called with
|
Listens to `channel`, when a new message arrives `listener` would be called with
|
||||||
`listener(event, args...)`.
|
`listener(event, args...)`.
|
||||||
|
@ -66,6 +68,8 @@ Listens to `channel`, when a new message arrives `listener` would be called with
|
||||||
|
|
||||||
* `channel` String
|
* `channel` String
|
||||||
* `listener` Function
|
* `listener` Function
|
||||||
|
* `event` IpcMainEvent
|
||||||
|
* `...args` any[]
|
||||||
|
|
||||||
Adds a one time `listener` function for the event. This `listener` is invoked
|
Adds a one time `listener` function for the event. This `listener` is invoked
|
||||||
only the next time a message is sent to `channel`, after which it is removed.
|
only the next time a message is sent to `channel`, after which it is removed.
|
||||||
|
@ -86,27 +90,5 @@ Removes listeners of the specified `channel`.
|
||||||
|
|
||||||
## Event object
|
## Event object
|
||||||
|
|
||||||
The `event` object passed to the `callback` has the following methods:
|
The documentation for the `event` object passed to the `callback` can be found
|
||||||
|
in the [`ipc-main-event`](structures/ipc-main-event.md) structure docs.
|
||||||
### `event.frameId`
|
|
||||||
|
|
||||||
An `Integer` representing the ID of the renderer frame that sent this message.
|
|
||||||
|
|
||||||
### `event.returnValue`
|
|
||||||
|
|
||||||
Set this to the value to be returned in a synchronous message.
|
|
||||||
|
|
||||||
### `event.sender`
|
|
||||||
|
|
||||||
Returns the `webContents` that sent the message, you can call
|
|
||||||
`event.sender.send` to reply to the asynchronous message, see
|
|
||||||
[webContents.send][web-contents-send] for more information.
|
|
||||||
|
|
||||||
[web-contents-send]: web-contents.md#contentssendchannel-arg1-arg2-
|
|
||||||
|
|
||||||
### `event.reply`
|
|
||||||
|
|
||||||
A function that will send an IPC message to the renderer frane that sent
|
|
||||||
the original message that you are currently handling. You should use this
|
|
||||||
method to "reply" to the sent message in order to guaruntee the reply will go
|
|
||||||
to the correct process and frame.
|
|
||||||
|
|
|
@ -20,6 +20,8 @@ The `ipcRenderer` module has the following method to listen for events and send
|
||||||
|
|
||||||
* `channel` String
|
* `channel` String
|
||||||
* `listener` Function
|
* `listener` Function
|
||||||
|
* `event` IpcRendererEvent
|
||||||
|
* `...args` any[]
|
||||||
|
|
||||||
Listens to `channel`, when a new message arrives `listener` would be called with
|
Listens to `channel`, when a new message arrives `listener` would be called with
|
||||||
`listener(event, args...)`.
|
`listener(event, args...)`.
|
||||||
|
@ -28,6 +30,8 @@ Listens to `channel`, when a new message arrives `listener` would be called with
|
||||||
|
|
||||||
* `channel` String
|
* `channel` String
|
||||||
* `listener` Function
|
* `listener` Function
|
||||||
|
* `event` IpcRendererEvent
|
||||||
|
* `...args` any[]
|
||||||
|
|
||||||
Adds a one time `listener` function for the event. This `listener` is invoked
|
Adds a one time `listener` function for the event. This `listener` is invoked
|
||||||
only the next time a message is sent to `channel`, after which it is removed.
|
only the next time a message is sent to `channel`, after which it is removed.
|
||||||
|
@ -92,14 +96,5 @@ the host page instead of the main process.
|
||||||
|
|
||||||
## Event object
|
## Event object
|
||||||
|
|
||||||
The `event` object passed to the `callback` has the following methods:
|
The documentation for the `event` object passed to the `callback` can be found
|
||||||
|
in the [`ipc-renderer-event`](structures/ipc-renderer-event.md) structure docs.
|
||||||
### `event.senderId`
|
|
||||||
|
|
||||||
Returns the `webContents.id` that sent the message, you can call
|
|
||||||
`event.sender.sendTo(event.senderId, ...)` to reply to the message, see
|
|
||||||
[ipcRenderer.sendTo][ipc-renderer-sendto] for more information.
|
|
||||||
This only applies to messages sent from a different renderer.
|
|
||||||
Messages sent directly from the main process set `event.senderId` to `0`.
|
|
||||||
|
|
||||||
[ipc-renderer-sendto]: #ipcrenderersendtowindowid-channel--arg1-arg2-
|
|
||||||
|
|
|
@ -13,7 +13,7 @@ See [`Menu`](menu.md) for examples.
|
||||||
`click(menuItem, browserWindow, event)` when the menu item is clicked.
|
`click(menuItem, browserWindow, event)` when the menu item is clicked.
|
||||||
* `menuItem` MenuItem
|
* `menuItem` MenuItem
|
||||||
* `browserWindow` [BrowserWindow](browser-window.md)
|
* `browserWindow` [BrowserWindow](browser-window.md)
|
||||||
* `event` Event
|
* `event` [KeyboardEvent](structures/keyboard-event.md)
|
||||||
* `role` String (optional) - Can be `undo`, `redo`, `cut`, `copy`, `paste`, `pasteandmatchstyle`, `delete`, `selectall`, `reload`, `forcereload`, `toggledevtools`, `resetzoom`, `zoomin`, `zoomout`, `togglefullscreen`, `window`, `minimize`, `close`, `help`, `about`, `services`, `hide`, `hideothers`, `unhide`, `quit`, `startspeaking`, `stopspeaking`, `close`, `minimize`, `zoom`, `front`, `appMenu`, `fileMenu`, `editMenu`, `viewMenu` or `windowMenu` - Define the action of the menu item, when specified the
|
* `role` String (optional) - Can be `undo`, `redo`, `cut`, `copy`, `paste`, `pasteandmatchstyle`, `delete`, `selectall`, `reload`, `forcereload`, `toggledevtools`, `resetzoom`, `zoomin`, `zoomout`, `togglefullscreen`, `window`, `minimize`, `close`, `help`, `about`, `services`, `hide`, `hideothers`, `unhide`, `quit`, `startspeaking`, `stopspeaking`, `close`, `minimize`, `zoom`, `front`, `appMenu`, `fileMenu`, `editMenu`, `viewMenu` or `windowMenu` - Define the action of the menu item, when specified the
|
||||||
`click` property will be ignored. See [roles](#roles).
|
`click` property will be ignored. See [roles](#roles).
|
||||||
* `type` String (optional) - Can be `normal`, `separator`, `submenu`, `checkbox` or
|
* `type` String (optional) - Can be `normal`, `separator`, `submenu`, `checkbox` or
|
||||||
|
|
|
@ -1,9 +1,3 @@
|
||||||
# Event Object extends `GlobalEvent`
|
# Event Object extends `GlobalEvent`
|
||||||
|
|
||||||
* `preventDefault` VoidFunction
|
* `preventDefault` VoidFunction
|
||||||
* `sender` WebContents
|
|
||||||
* `returnValue` any
|
|
||||||
* `ctrlKey` Boolean (optional) - whether the Control key was used in an accelerator to trigger the Event
|
|
||||||
* `metaKey` Boolean (optional) - whether a meta key was used in an accelerator to trigger the Event
|
|
||||||
* `shiftKey` Boolean (optional) - whether a Shift key was used in an accelerator to trigger the Event
|
|
||||||
* `altKey` Boolean (optional) - whether an Alt key was used in an accelerator to trigger the Event
|
|
||||||
|
|
8
docs/api/structures/ipc-main-event.md
Normal file
8
docs/api/structures/ipc-main-event.md
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
# IpcMainEvent Object extends `Event`
|
||||||
|
|
||||||
|
* `frameId` Integer - The ID of the renderer frame that sent this message
|
||||||
|
* `returnValue` any - Set this to the value to be returned in a syncronous message
|
||||||
|
* `sender` WebContents - Returns the `webContents` that sent the message
|
||||||
|
* `reply` Function - A function that will send an IPC message to the renderer frane that sent the original message that you are currently handling. You should use this method to "reply" to the sent message in order to guaruntee the reply will go to the correct process and frame.
|
||||||
|
* `...args` any[]
|
||||||
|
IpcRenderer
|
6
docs/api/structures/ipc-renderer-event.md
Normal file
6
docs/api/structures/ipc-renderer-event.md
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
# IpcRendererEvent Object extends `Event`
|
||||||
|
|
||||||
|
* `sender` IpcRenderer - The `IpcRenderer` instance that emitted the event originally
|
||||||
|
* `senderId` Integer - The `webContents.id` that sent the message, you can call `event.sender.sendTo(event.senderId, ...)` to reply to the message, see [ipcRenderer.sendTo][ipc-renderer-sendto] for more information. This only applies to messages sent from a different renderer. Messages sent directly from the main process set `event.senderId` to `0`.
|
||||||
|
|
||||||
|
[ipc-renderer-sendto]: #ipcrenderersendtowindowid-channel--arg1-arg2-
|
6
docs/api/structures/keyboard-event.md
Normal file
6
docs/api/structures/keyboard-event.md
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
# KeyboardEvent Object extends `Event`
|
||||||
|
|
||||||
|
* `ctrlKey` Boolean (optional) - whether the Control key was used in an accelerator to trigger the Event
|
||||||
|
* `metaKey` Boolean (optional) - whether a meta key was used in an accelerator to trigger the Event
|
||||||
|
* `shiftKey` Boolean (optional) - whether a Shift key was used in an accelerator to trigger the Event
|
||||||
|
* `altKey` Boolean (optional) - whether an Alt key was used in an accelerator to trigger the Event
|
|
@ -70,11 +70,7 @@ The `Tray` module emits the following events:
|
||||||
|
|
||||||
#### Event: 'click'
|
#### Event: 'click'
|
||||||
|
|
||||||
* `event` Event
|
* `event` [KeyboardEvent](structures/keyboard-event.md)
|
||||||
* `altKey` Boolean
|
|
||||||
* `shiftKey` Boolean
|
|
||||||
* `ctrlKey` Boolean
|
|
||||||
* `metaKey` Boolean
|
|
||||||
* `bounds` [Rectangle](structures/rectangle.md) - The bounds of tray icon.
|
* `bounds` [Rectangle](structures/rectangle.md) - The bounds of tray icon.
|
||||||
* `position` [Point](structures/point.md) - The position of the event.
|
* `position` [Point](structures/point.md) - The position of the event.
|
||||||
|
|
||||||
|
@ -82,22 +78,14 @@ Emitted when the tray icon is clicked.
|
||||||
|
|
||||||
#### Event: 'right-click' _macOS_ _Windows_
|
#### Event: 'right-click' _macOS_ _Windows_
|
||||||
|
|
||||||
* `event` Event
|
* `event` [KeyboardEvent](structures/keyboard-event.md)
|
||||||
* `altKey` Boolean
|
|
||||||
* `shiftKey` Boolean
|
|
||||||
* `ctrlKey` Boolean
|
|
||||||
* `metaKey` Boolean
|
|
||||||
* `bounds` [Rectangle](structures/rectangle.md) - The bounds of tray icon.
|
* `bounds` [Rectangle](structures/rectangle.md) - The bounds of tray icon.
|
||||||
|
|
||||||
Emitted when the tray icon is right clicked.
|
Emitted when the tray icon is right clicked.
|
||||||
|
|
||||||
#### Event: 'double-click' _macOS_ _Windows_
|
#### Event: 'double-click' _macOS_ _Windows_
|
||||||
|
|
||||||
* `event` Event
|
* `event` [KeyboardEvent](structures/keyboard-event.md)
|
||||||
* `altKey` Boolean
|
|
||||||
* `shiftKey` Boolean
|
|
||||||
* `ctrlKey` Boolean
|
|
||||||
* `metaKey` Boolean
|
|
||||||
* `bounds` [Rectangle](structures/rectangle.md) - The bounds of tray icon.
|
* `bounds` [Rectangle](structures/rectangle.md) - The bounds of tray icon.
|
||||||
|
|
||||||
Emitted when the tray icon is double clicked.
|
Emitted when the tray icon is double clicked.
|
||||||
|
@ -147,33 +135,21 @@ Emitted when a drag operation ends on the tray or ends at another location.
|
||||||
|
|
||||||
#### Event: 'mouse-enter' _macOS_
|
#### Event: 'mouse-enter' _macOS_
|
||||||
|
|
||||||
* `event` Event
|
* `event` [KeyboardEvent](structures/keyboard-event.md)
|
||||||
* `altKey` Boolean
|
|
||||||
* `shiftKey` Boolean
|
|
||||||
* `ctrlKey` Boolean
|
|
||||||
* `metaKey` Boolean
|
|
||||||
* `position` [Point](structures/point.md) - The position of the event.
|
* `position` [Point](structures/point.md) - The position of the event.
|
||||||
|
|
||||||
Emitted when the mouse enters the tray icon.
|
Emitted when the mouse enters the tray icon.
|
||||||
|
|
||||||
#### Event: 'mouse-leave' _macOS_
|
#### Event: 'mouse-leave' _macOS_
|
||||||
|
|
||||||
* `event` Event
|
* `event` [KeyboardEvent](structures/keyboard-event.md)
|
||||||
* `altKey` Boolean
|
|
||||||
* `shiftKey` Boolean
|
|
||||||
* `ctrlKey` Boolean
|
|
||||||
* `metaKey` Boolean
|
|
||||||
* `position` [Point](structures/point.md) - The position of the event.
|
* `position` [Point](structures/point.md) - The position of the event.
|
||||||
|
|
||||||
Emitted when the mouse exits the tray icon.
|
Emitted when the mouse exits the tray icon.
|
||||||
|
|
||||||
#### Event: 'mouse-move' _macOS_
|
#### Event: 'mouse-move' _macOS_
|
||||||
|
|
||||||
* `event` Event
|
* `event` [KeyboardEvent](structures/keyboard-event.md)
|
||||||
* `altKey` Boolean
|
|
||||||
* `shiftKey` Boolean
|
|
||||||
* `ctrlKey` Boolean
|
|
||||||
* `metaKey` Boolean
|
|
||||||
* `position` [Point](structures/point.md) - The position of the event.
|
* `position` [Point](structures/point.md) - The position of the event.
|
||||||
|
|
||||||
Emitted when the mouse moves in the tray icon.
|
Emitted when the mouse moves in the tray icon.
|
||||||
|
|
|
@ -75,8 +75,11 @@ auto_filenames = {
|
||||||
"docs/api/structures/file-filter.md",
|
"docs/api/structures/file-filter.md",
|
||||||
"docs/api/structures/gpu-feature-status.md",
|
"docs/api/structures/gpu-feature-status.md",
|
||||||
"docs/api/structures/io-counters.md",
|
"docs/api/structures/io-counters.md",
|
||||||
|
"docs/api/structures/ipc-main-event.md",
|
||||||
|
"docs/api/structures/ipc-renderer-event.md",
|
||||||
"docs/api/structures/jump-list-category.md",
|
"docs/api/structures/jump-list-category.md",
|
||||||
"docs/api/structures/jump-list-item.md",
|
"docs/api/structures/jump-list-item.md",
|
||||||
|
"docs/api/structures/keyboard-event.md",
|
||||||
"docs/api/structures/memory-info.md",
|
"docs/api/structures/memory-info.md",
|
||||||
"docs/api/structures/memory-usage-details.md",
|
"docs/api/structures/memory-usage-details.md",
|
||||||
"docs/api/structures/mime-typed-buffer.md",
|
"docs/api/structures/mime-typed-buffer.md",
|
||||||
|
|
|
@ -3,7 +3,7 @@ import * as errorUtils from '@electron/internal/common/error-utils'
|
||||||
|
|
||||||
type IPCHandler = (...args: any[]) => any
|
type IPCHandler = (...args: any[]) => any
|
||||||
|
|
||||||
const callHandler = async function (handler: IPCHandler, event: Electron.Event, args: any[], reply: (args: any[]) => void) {
|
const callHandler = async function (handler: IPCHandler, event: ElectronInternal.IpcMainInternalEvent, args: any[], reply: (args: any[]) => void) {
|
||||||
try {
|
try {
|
||||||
const result = await handler(event, ...args)
|
const result = await handler(event, ...args)
|
||||||
reply([null, result])
|
reply([null, result])
|
||||||
|
|
|
@ -5,4 +5,4 @@ const emitter = new EventEmitter()
|
||||||
// Do not throw exception when channel name is "error".
|
// Do not throw exception when channel name is "error".
|
||||||
emitter.on('error', () => {})
|
emitter.on('error', () => {})
|
||||||
|
|
||||||
export const ipcMainInternal = emitter
|
export const ipcMainInternal = emitter as ElectronInternal.IpcMainInternal
|
||||||
|
|
|
@ -84,7 +84,7 @@ const injectContentScript = function (extensionId: string, script: Electron.Cont
|
||||||
|
|
||||||
// Handle the request of chrome.tabs.executeJavaScript.
|
// Handle the request of chrome.tabs.executeJavaScript.
|
||||||
ipcRendererInternal.on('CHROME_TABS_EXECUTESCRIPT', function (
|
ipcRendererInternal.on('CHROME_TABS_EXECUTESCRIPT', function (
|
||||||
event: Electron.Event,
|
event,
|
||||||
senderWebContentsId: number,
|
senderWebContentsId: number,
|
||||||
requestId: number,
|
requestId: number,
|
||||||
extensionId: string,
|
extensionId: string,
|
||||||
|
|
|
@ -7,7 +7,7 @@ export function invoke<T> (command: string, ...args: any[]) {
|
||||||
return new Promise<T>((resolve, reject) => {
|
return new Promise<T>((resolve, reject) => {
|
||||||
const requestId = ++nextId
|
const requestId = ++nextId
|
||||||
ipcRendererInternal.once(`${command}_RESPONSE_${requestId}`, (
|
ipcRendererInternal.once(`${command}_RESPONSE_${requestId}`, (
|
||||||
_event: Electron.Event, error: Electron.SerializedError, result: any
|
_event, error: Electron.SerializedError, result: any
|
||||||
) => {
|
) => {
|
||||||
if (error) {
|
if (error) {
|
||||||
reject(errorUtils.deserialize(error))
|
reject(errorUtils.deserialize(error))
|
||||||
|
|
|
@ -11,7 +11,7 @@ type WebFrameMethod = {
|
||||||
export const webFrameInit = () => {
|
export const webFrameInit = () => {
|
||||||
// Call webFrame method
|
// Call webFrame method
|
||||||
ipcRendererInternal.on('ELECTRON_INTERNAL_RENDERER_WEB_FRAME_METHOD', (
|
ipcRendererInternal.on('ELECTRON_INTERNAL_RENDERER_WEB_FRAME_METHOD', (
|
||||||
_event: Electron.Event, method: keyof WebFrameMethod, args: any[]
|
_event, method: keyof WebFrameMethod, args: any[]
|
||||||
) => {
|
) => {
|
||||||
// The TypeScript compiler cannot handle the sheer number of
|
// The TypeScript compiler cannot handle the sheer number of
|
||||||
// call signatures here and simply gives up. Incorrect invocations
|
// call signatures here and simply gives up. Incorrect invocations
|
||||||
|
@ -20,7 +20,7 @@ export const webFrameInit = () => {
|
||||||
})
|
})
|
||||||
|
|
||||||
ipcRendererInternal.on('ELECTRON_INTERNAL_RENDERER_ASYNC_WEB_FRAME_METHOD', (
|
ipcRendererInternal.on('ELECTRON_INTERNAL_RENDERER_ASYNC_WEB_FRAME_METHOD', (
|
||||||
event: Electron.Event, requestId: number, method: keyof WebFrameMethod, args: any[]
|
event, requestId: number, method: keyof WebFrameMethod, args: any[]
|
||||||
) => {
|
) => {
|
||||||
new Promise(resolve =>
|
new Promise(resolve =>
|
||||||
// The TypeScript compiler cannot handle the sheer number of
|
// The TypeScript compiler cannot handle the sheer number of
|
||||||
|
|
|
@ -206,7 +206,7 @@ export const windowSetup = (
|
||||||
}
|
}
|
||||||
|
|
||||||
ipcRendererInternal.on('ELECTRON_GUEST_WINDOW_POSTMESSAGE', function (
|
ipcRendererInternal.on('ELECTRON_GUEST_WINDOW_POSTMESSAGE', function (
|
||||||
_event: Electron.Event, sourceId: number, message: any, sourceOrigin: string
|
_event, sourceId: number, message: any, sourceOrigin: string
|
||||||
) {
|
) {
|
||||||
// Manually dispatch event instead of using postMessage because we also need to
|
// Manually dispatch event instead of using postMessage because we also need to
|
||||||
// set event.source.
|
// set event.source.
|
||||||
|
@ -253,7 +253,7 @@ export const windowSetup = (
|
||||||
let cachedVisibilityState = isHiddenPage ? 'hidden' : 'visible'
|
let cachedVisibilityState = isHiddenPage ? 'hidden' : 'visible'
|
||||||
|
|
||||||
// Subscribe to visibilityState changes.
|
// Subscribe to visibilityState changes.
|
||||||
ipcRendererInternal.on('ELECTRON_GUEST_INSTANCE_VISIBILITY_CHANGE', function (_event: Electron.Event, visibilityState: VisibilityState) {
|
ipcRendererInternal.on('ELECTRON_GUEST_INSTANCE_VISIBILITY_CHANGE', function (_event, visibilityState: VisibilityState) {
|
||||||
if (cachedVisibilityState !== visibilityState) {
|
if (cachedVisibilityState !== visibilityState) {
|
||||||
cachedVisibilityState = visibilityState
|
cachedVisibilityState = visibilityState
|
||||||
document.dispatchEvent(new Event('visibilitychange'))
|
document.dispatchEvent(new Event('visibilitychange'))
|
||||||
|
|
644
package-lock.json
generated
644
package-lock.json
generated
|
@ -1531,27 +1531,17 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"cheerio": {
|
"cheerio": {
|
||||||
"version": "0.22.0",
|
"version": "1.0.0-rc.2",
|
||||||
"resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz",
|
"resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.2.tgz",
|
||||||
"integrity": "sha1-qbqoYKP5tZWmuBsahocxIe06Jp4=",
|
"integrity": "sha1-S59TqBsn5NXawxwP/Qz6A8xoMNs=",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"css-select": "~1.2.0",
|
"css-select": "~1.2.0",
|
||||||
"dom-serializer": "~0.1.0",
|
"dom-serializer": "~0.1.0",
|
||||||
"entities": "~1.1.1",
|
"entities": "~1.1.1",
|
||||||
"htmlparser2": "^3.9.1",
|
"htmlparser2": "^3.9.1",
|
||||||
"lodash.assignin": "^4.0.9",
|
"lodash": "^4.15.0",
|
||||||
"lodash.bind": "^4.1.4",
|
"parse5": "^3.0.1"
|
||||||
"lodash.defaults": "^4.0.1",
|
|
||||||
"lodash.filter": "^4.4.0",
|
|
||||||
"lodash.flatten": "^4.2.0",
|
|
||||||
"lodash.foreach": "^4.3.0",
|
|
||||||
"lodash.map": "^4.4.0",
|
|
||||||
"lodash.merge": "^4.4.0",
|
|
||||||
"lodash.pick": "^4.2.1",
|
|
||||||
"lodash.reduce": "^4.4.0",
|
|
||||||
"lodash.reject": "^4.4.0",
|
|
||||||
"lodash.some": "^4.4.0"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"chokidar": {
|
"chokidar": {
|
||||||
|
@ -2313,15 +2303,15 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"css-what": {
|
"css-what": {
|
||||||
"version": "2.1.0",
|
"version": "2.1.3",
|
||||||
"resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz",
|
||||||
"integrity": "sha1-lGfQMsOM+u+58teVASUwYvh/ob0=",
|
"integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"cssom": {
|
"cssom": {
|
||||||
"version": "0.3.4",
|
"version": "0.3.6",
|
||||||
"resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.4.tgz",
|
"resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.6.tgz",
|
||||||
"integrity": "sha512-+7prCSORpXNeR4/fUP3rL+TzqtiFfhMvTd7uEqMdgPvLPt4+uzFUeufx5RHjGTACCargg/DiEt/moMQmvnfkog==",
|
"integrity": "sha512-DtUeseGk9/GBW0hl0vVPpU22iHL6YB5BUX7ml1hB+GMpo0NX5G4voX3kdWiMSEguFtcW3Vh3djqNF4aIe6ne0A==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"cssstyle": {
|
"cssstyle": {
|
||||||
|
@ -2446,9 +2436,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"dedent": {
|
"dedent": {
|
||||||
"version": "0.6.0",
|
"version": "0.7.0",
|
||||||
"resolved": "https://registry.npmjs.org/dedent/-/dedent-0.6.0.tgz",
|
"resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz",
|
||||||
"integrity": "sha1-Dm2o8M5Sg471zsXI+TlrDBtko8s=",
|
"integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"deep-extend": {
|
"deep-extend": {
|
||||||
|
@ -2714,21 +2704,13 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"dom-serializer": {
|
"dom-serializer": {
|
||||||
"version": "0.1.0",
|
"version": "0.1.1",
|
||||||
"resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz",
|
||||||
"integrity": "sha1-BzxpdUbOB4DOI75KKOKT5AvDDII=",
|
"integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"domelementtype": "~1.1.1",
|
"domelementtype": "^1.3.0",
|
||||||
"entities": "~1.1.1"
|
"entities": "^1.1.1"
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"domelementtype": {
|
|
||||||
"version": "1.1.3",
|
|
||||||
"resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz",
|
|
||||||
"integrity": "sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs=",
|
|
||||||
"dev": true
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"domain-browser": {
|
"domain-browser": {
|
||||||
|
@ -2738,9 +2720,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"domelementtype": {
|
"domelementtype": {
|
||||||
"version": "1.3.0",
|
"version": "1.3.1",
|
||||||
"resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz",
|
||||||
"integrity": "sha1-sXrtguirWeUt2cGbF1bg/BhyBMI=",
|
"integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"domhandler": {
|
"domhandler": {
|
||||||
|
@ -2848,9 +2830,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"duplexify": {
|
"duplexify": {
|
||||||
"version": "3.6.0",
|
"version": "3.7.1",
|
||||||
"resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.6.0.tgz",
|
"resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz",
|
||||||
"integrity": "sha512-fO3Di4tBKJpYTFHAxTU00BcfWMY9w24r/x21a6rZRbsD/ToUgGxsMbiGRmB7uVAXeGKXD9MwiLZa5E97EVgIRQ==",
|
"integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"end-of-stream": "^1.0.0",
|
"end-of-stream": "^1.0.0",
|
||||||
|
@ -2909,9 +2891,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"electron-docs": {
|
"electron-docs": {
|
||||||
"version": "2.0.1",
|
"version": "3.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/electron-docs/-/electron-docs-2.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/electron-docs/-/electron-docs-3.0.2.tgz",
|
||||||
"integrity": "sha1-ARI6T8y2vieswSgAJ7/LJAxUsdI=",
|
"integrity": "sha1-NA1X5sDb+GqXJJ/UUd/2IhAhdUo=",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"got": "^6.3.0",
|
"got": "^6.3.0",
|
||||||
|
@ -2945,48 +2927,63 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"electron-docs-linter": {
|
"electron-docs-linter": {
|
||||||
"version": "2.4.0",
|
"version": "3.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/electron-docs-linter/-/electron-docs-linter-2.4.0.tgz",
|
"resolved": "https://registry.npmjs.org/electron-docs-linter/-/electron-docs-linter-3.0.0.tgz",
|
||||||
"integrity": "sha512-WvxXsk6kl4x0nrQOqMYAXsMMbSouSwa8VeNd+Bps9HM7QXuNNNVPFB1UEdykq06HWS60lUt4VUiAjQjAJJpcSg==",
|
"integrity": "sha512-XA+cVmPcpEDGsVn+eUZtee1Dp5JHWWT3Ll9f1rERTJUvT6wN63mJxRQII73sm3qIhBD5gCTXKk7vCf4MKr/0JQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"cheerio": "^0.22.0",
|
"cheerio": "^1.0.0-rc.2",
|
||||||
"clean-deep": "^2.0.1",
|
"clean-deep": "^2.0.1",
|
||||||
"decamelize": "^1.2.0",
|
"decamelize": "^2.0.0",
|
||||||
"dedent": "^0.6.0",
|
"dedent": "^0.7.0",
|
||||||
"electron-docs": "^2.0.1",
|
"electron-docs": "^3.0.2",
|
||||||
"entities": "^1.1.1",
|
"entities": "^1.1.2",
|
||||||
"keyed-array": "^2.1.2",
|
"keyed-array": "^2.1.2",
|
||||||
"lodash.merge": "^4.6.0",
|
"lodash.merge": "^4.6.0",
|
||||||
"lodash.pick": "^4.2.1",
|
"lodash.pick": "^4.2.1",
|
||||||
"marky-markdown-lite": "^1.2.0",
|
"marky-markdown-lite": "^1.2.0",
|
||||||
"minimist": "^1.2.0",
|
"minimist": "^1.2.0",
|
||||||
"ora": "^0.3.0",
|
"ora": "^3.0.0",
|
||||||
"path-exists": "^3.0.0",
|
"path-exists": "^3.0.0",
|
||||||
"pify": "^2.3.0",
|
"pify": "^4.0.1",
|
||||||
"revalidator": "^0.3.1",
|
"revalidator": "^0.3.1",
|
||||||
"semver": "^5.3.0"
|
"semver": "^5.6.0"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"decamelize": {
|
||||||
|
"version": "2.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz",
|
||||||
|
"integrity": "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"xregexp": "4.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"path-exists": {
|
"path-exists": {
|
||||||
"version": "3.0.0",
|
"version": "3.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
|
||||||
"integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
|
"integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
|
||||||
"dev": true
|
"dev": true
|
||||||
|
},
|
||||||
|
"pify": {
|
||||||
|
"version": "4.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz",
|
||||||
|
"integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==",
|
||||||
|
"dev": true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"electron-typescript-definitions": {
|
"electron-typescript-definitions": {
|
||||||
"version": "7.0.0",
|
"version": "8.2.1",
|
||||||
"resolved": "https://registry.npmjs.org/electron-typescript-definitions/-/electron-typescript-definitions-7.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/electron-typescript-definitions/-/electron-typescript-definitions-8.2.1.tgz",
|
||||||
"integrity": "sha512-9/BkCl/sJdVn09fn42+bihGsYymBKxzaFM2VY/LYoPe4/7B+3TPhgQyunOgWRaPT1Kx+ZJBgJbYj+rQYEUFR2w==",
|
"integrity": "sha512-fysIldZ7Z8D7JtMK9dyGTQgmHqEvGrnDpbjf9ko570rdBR2bmLsNoyeOCZIa2Pg+S1NYayOkdojtpPX0Q6IPMw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@types/node": "^7.0.18",
|
"@types/node": "^7.0.18",
|
||||||
"colors": "^1.1.2",
|
"colors": "^1.1.2",
|
||||||
"debug": "^2.6.3",
|
"debug": "^2.6.3",
|
||||||
"electron-docs": "^2.0.0",
|
"electron-docs": "^2.0.0",
|
||||||
"electron-docs-linter": "^2.4.0",
|
"electron-docs-linter": "^3.0.0",
|
||||||
"lodash": "^4.17.11",
|
"lodash": "^4.17.11",
|
||||||
"mkdirp": "^0.5.1",
|
"mkdirp": "^0.5.1",
|
||||||
"rimraf": "^2.5.4",
|
"rimraf": "^2.5.4",
|
||||||
|
@ -3000,12 +2997,230 @@
|
||||||
"integrity": "sha512-HeyK+csRk7Khhg9krpMGJeT9pLzjsmiJFHYRzYpPv/dQ5tPclQsbvceiX/HKynRt/9lMLorWUYTbBHC3hRI4sg==",
|
"integrity": "sha512-HeyK+csRk7Khhg9krpMGJeT9pLzjsmiJFHYRzYpPv/dQ5tPclQsbvceiX/HKynRt/9lMLorWUYTbBHC3hRI4sg==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"ansi-regex": {
|
||||||
|
"version": "4.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.0.0.tgz",
|
||||||
|
"integrity": "sha512-iB5Dda8t/UqpPI/IjsejXu5jOGDrzn41wJyljwPH65VCIbk6+1BzFIMJGFwTNrYXT1CrD+B4l19U7awiQ8rk7w==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"ansi-styles": {
|
||||||
|
"version": "3.2.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
|
||||||
|
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"color-convert": "^1.9.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"decamelize": {
|
||||||
|
"version": "2.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz",
|
||||||
|
"integrity": "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"xregexp": "4.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"electron-docs": {
|
||||||
|
"version": "2.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/electron-docs/-/electron-docs-2.0.1.tgz",
|
||||||
|
"integrity": "sha1-ARI6T8y2vieswSgAJ7/LJAxUsdI=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"got": "^6.3.0",
|
||||||
|
"gunzip-maybe": "^1.3.1",
|
||||||
|
"node-dir": "^0.1.12",
|
||||||
|
"ora": "^0.2.3",
|
||||||
|
"path-exists": "^3.0.0",
|
||||||
|
"pify": "^2.3.0",
|
||||||
|
"semver": "^5.1.0",
|
||||||
|
"tar-fs": "^1.13.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"electron-docs-linter": {
|
||||||
|
"version": "3.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/electron-docs-linter/-/electron-docs-linter-3.0.0.tgz",
|
||||||
|
"integrity": "sha512-XA+cVmPcpEDGsVn+eUZtee1Dp5JHWWT3Ll9f1rERTJUvT6wN63mJxRQII73sm3qIhBD5gCTXKk7vCf4MKr/0JQ==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"cheerio": "^1.0.0-rc.2",
|
||||||
|
"clean-deep": "^2.0.1",
|
||||||
|
"decamelize": "^2.0.0",
|
||||||
|
"dedent": "^0.7.0",
|
||||||
|
"electron-docs": "^3.0.2",
|
||||||
|
"entities": "^1.1.2",
|
||||||
|
"keyed-array": "^2.1.2",
|
||||||
|
"lodash.merge": "^4.6.0",
|
||||||
|
"lodash.pick": "^4.2.1",
|
||||||
|
"marky-markdown-lite": "^1.2.0",
|
||||||
|
"minimist": "^1.2.0",
|
||||||
|
"ora": "^3.0.0",
|
||||||
|
"path-exists": "^3.0.0",
|
||||||
|
"pify": "^4.0.1",
|
||||||
|
"revalidator": "^0.3.1",
|
||||||
|
"semver": "^5.6.0"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"electron-docs": {
|
||||||
|
"version": "3.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/electron-docs/-/electron-docs-3.0.2.tgz",
|
||||||
|
"integrity": "sha1-NA1X5sDb+GqXJJ/UUd/2IhAhdUo=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"got": "^6.3.0",
|
||||||
|
"gunzip-maybe": "^1.3.1",
|
||||||
|
"node-dir": "^0.1.12",
|
||||||
|
"ora": "^0.2.3",
|
||||||
|
"path-exists": "^3.0.0",
|
||||||
|
"pify": "^2.3.0",
|
||||||
|
"semver": "^5.1.0",
|
||||||
|
"tar-fs": "^1.13.0"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"ora": {
|
||||||
|
"version": "0.2.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/ora/-/ora-0.2.3.tgz",
|
||||||
|
"integrity": "sha1-N1J9Igrc1Tw5tzVx11QVbV22V6Q=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"chalk": "^1.1.1",
|
||||||
|
"cli-cursor": "^1.0.2",
|
||||||
|
"cli-spinners": "^0.1.2",
|
||||||
|
"object-assign": "^4.0.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"pify": {
|
||||||
|
"version": "2.3.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
|
||||||
|
"integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
|
||||||
|
"dev": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ora": {
|
||||||
|
"version": "3.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/ora/-/ora-3.1.0.tgz",
|
||||||
|
"integrity": "sha512-vRBPaNCclUi8pUxRF/G8+5qEQkc6EgzKK1G2ZNJUIGu088Un5qIxFXeDgymvPRM9nmrcUOGzQgS1Vmtz+NtlMw==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"chalk": "^2.4.2",
|
||||||
|
"cli-cursor": "^2.1.0",
|
||||||
|
"cli-spinners": "^1.3.1",
|
||||||
|
"log-symbols": "^2.2.0",
|
||||||
|
"strip-ansi": "^5.0.0",
|
||||||
|
"wcwidth": "^1.0.1"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"chalk": {
|
||||||
|
"version": "2.4.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
|
||||||
|
"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"ansi-styles": "^3.2.1",
|
||||||
|
"escape-string-regexp": "^1.0.5",
|
||||||
|
"supports-color": "^5.3.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"cli-cursor": {
|
||||||
|
"version": "2.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz",
|
||||||
|
"integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"restore-cursor": "^2.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"cli-spinners": {
|
||||||
|
"version": "1.3.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-1.3.1.tgz",
|
||||||
|
"integrity": "sha512-1QL4544moEsDVH9T/l6Cemov/37iv1RtoKf7NJ04A60+4MREXNfx/QvavbH6QoGdsD4N4Mwy49cmaINR/o2mdg==",
|
||||||
|
"dev": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"pify": {
|
||||||
|
"version": "4.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz",
|
||||||
|
"integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==",
|
||||||
|
"dev": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"lodash": {
|
"lodash": {
|
||||||
"version": "4.17.11",
|
"version": "4.17.11",
|
||||||
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz",
|
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz",
|
||||||
"integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==",
|
"integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"log-symbols": {
|
||||||
|
"version": "2.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz",
|
||||||
|
"integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"chalk": "^2.0.1"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"chalk": {
|
||||||
|
"version": "2.4.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
|
||||||
|
"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"ansi-styles": "^3.2.1",
|
||||||
|
"escape-string-regexp": "^1.0.5",
|
||||||
|
"supports-color": "^5.3.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"onetime": {
|
||||||
|
"version": "2.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz",
|
||||||
|
"integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"mimic-fn": "^1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ora": {
|
||||||
|
"version": "0.2.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/ora/-/ora-0.2.3.tgz",
|
||||||
|
"integrity": "sha1-N1J9Igrc1Tw5tzVx11QVbV22V6Q=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"chalk": "^1.1.1",
|
||||||
|
"cli-cursor": "^1.0.2",
|
||||||
|
"cli-spinners": "^0.1.2",
|
||||||
|
"object-assign": "^4.0.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"path-exists": {
|
||||||
|
"version": "3.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
|
||||||
|
"integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"restore-cursor": {
|
||||||
|
"version": "2.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz",
|
||||||
|
"integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"onetime": "^2.0.0",
|
||||||
|
"signal-exit": "^3.0.2"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"strip-ansi": {
|
||||||
|
"version": "5.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.0.0.tgz",
|
||||||
|
"integrity": "sha512-Uu7gQyZI7J7gn5qLn1Np3G9vcYGTVqB+lFTytnDJv83dd8T22aGH451P3jueT2/QemInJDfxHB5Tde5OzgG1Ow==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"ansi-regex": "^4.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"typescript": {
|
"typescript": {
|
||||||
"version": "2.9.2",
|
"version": "2.9.2",
|
||||||
"resolved": "https://registry.npmjs.org/typescript/-/typescript-2.9.2.tgz",
|
"resolved": "https://registry.npmjs.org/typescript/-/typescript-2.9.2.tgz",
|
||||||
|
@ -3057,9 +3272,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"entities": {
|
"entities": {
|
||||||
"version": "1.1.1",
|
"version": "1.1.2",
|
||||||
"resolved": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz",
|
"resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz",
|
||||||
"integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA=",
|
"integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"error-ex": {
|
"error-ex": {
|
||||||
|
@ -3108,28 +3323,25 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"escodegen": {
|
"escodegen": {
|
||||||
"version": "1.8.1",
|
"version": "1.11.0",
|
||||||
"resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz",
|
"resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.0.tgz",
|
||||||
"integrity": "sha1-WltTr0aTEQvrsIZ6o0MN07cKEBg=",
|
"integrity": "sha512-IeMV45ReixHS53K/OmfKAIztN/igDHzTJUhZM3k1jMhIZWjk45SMwAtBsEXiJp3vSPmTcu6CXn7mDvFHRN66fw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"esprima": "^2.7.1",
|
"esprima": "^3.1.3",
|
||||||
"estraverse": "^1.9.1",
|
"estraverse": "^4.2.0",
|
||||||
"esutils": "^2.0.2",
|
"esutils": "^2.0.2",
|
||||||
"optionator": "^0.8.1",
|
"optionator": "^0.8.1",
|
||||||
"source-map": "~0.2.0"
|
"source-map": "~0.6.1"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"source-map": {
|
"source-map": {
|
||||||
"version": "0.2.0",
|
"version": "0.6.1",
|
||||||
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
|
||||||
"integrity": "sha1-2rc/vPwrqBm03gO9b26qSBZLP50=",
|
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true,
|
"optional": true
|
||||||
"requires": {
|
|
||||||
"amdefine": ">=0.0.4"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -3647,9 +3859,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"esprima": {
|
"esprima": {
|
||||||
"version": "2.7.3",
|
"version": "3.1.3",
|
||||||
"resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz",
|
"resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz",
|
||||||
"integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=",
|
"integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
|
@ -3688,9 +3900,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"estraverse": {
|
"estraverse": {
|
||||||
"version": "1.9.3",
|
"version": "4.2.0",
|
||||||
"resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz",
|
"resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz",
|
||||||
"integrity": "sha1-r2fy3JIlgkFZUJJgkaQAXSnJu0Q=",
|
"integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
|
@ -5332,7 +5544,7 @@
|
||||||
"gunzip-maybe": {
|
"gunzip-maybe": {
|
||||||
"version": "1.4.1",
|
"version": "1.4.1",
|
||||||
"resolved": "https://registry.npmjs.org/gunzip-maybe/-/gunzip-maybe-1.4.1.tgz",
|
"resolved": "https://registry.npmjs.org/gunzip-maybe/-/gunzip-maybe-1.4.1.tgz",
|
||||||
"integrity": "sha1-Occu2J0bSbpwjhh3ZQBIiQKlICc=",
|
"integrity": "sha512-qtutIKMthNJJgeHQS7kZ9FqDq59/Wn0G2HYCRNjpup7yKfVI6/eqwpmroyZGFoCYaG+sW6psNVb4zoLADHpp2g==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"browserify-zlib": "^0.1.4",
|
"browserify-zlib": "^0.1.4",
|
||||||
|
@ -5526,44 +5738,34 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"htmlparser2": {
|
"htmlparser2": {
|
||||||
"version": "3.9.2",
|
"version": "3.10.1",
|
||||||
"resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.9.2.tgz",
|
"resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz",
|
||||||
"integrity": "sha1-G9+HrMoPP55T+k/M6w9LTLsAszg=",
|
"integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"domelementtype": "^1.3.0",
|
"domelementtype": "^1.3.1",
|
||||||
"domhandler": "^2.3.0",
|
"domhandler": "^2.3.0",
|
||||||
"domutils": "^1.5.1",
|
"domutils": "^1.5.1",
|
||||||
"entities": "^1.1.1",
|
"entities": "^1.1.1",
|
||||||
"inherits": "^2.0.1",
|
"inherits": "^2.0.1",
|
||||||
"readable-stream": "^2.0.2"
|
"readable-stream": "^3.1.1"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"isarray": {
|
|
||||||
"version": "1.0.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
|
|
||||||
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"readable-stream": {
|
"readable-stream": {
|
||||||
"version": "2.3.6",
|
"version": "3.1.1",
|
||||||
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
|
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.1.1.tgz",
|
||||||
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
|
"integrity": "sha512-DkN66hPyqDhnIQ6Jcsvx9bFjhw214O4poMBcIMgPVpQvNy9a0e0Uhg5SqySyDKAmUlwt8LonTBz1ezOnM8pUdA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"core-util-is": "~1.0.0",
|
"inherits": "^2.0.3",
|
||||||
"inherits": "~2.0.3",
|
"string_decoder": "^1.1.1",
|
||||||
"isarray": "~1.0.0",
|
"util-deprecate": "^1.0.1"
|
||||||
"process-nextick-args": "~2.0.0",
|
|
||||||
"safe-buffer": "~5.1.1",
|
|
||||||
"string_decoder": "~1.1.1",
|
|
||||||
"util-deprecate": "~1.0.1"
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"string_decoder": {
|
"string_decoder": {
|
||||||
"version": "1.1.1",
|
"version": "1.2.0",
|
||||||
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
|
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.2.0.tgz",
|
||||||
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
|
"integrity": "sha512-6YqyX6ZWEYguAxgZzHGL7SsCeGx3V2TtOTqZz1xSTSWnqsbWwbptafNyvf/ACquZUXV3DANr5BDIwNYe1mN42w==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"safe-buffer": "~5.1.0"
|
"safe-buffer": "~5.1.0"
|
||||||
|
@ -6466,6 +6668,13 @@
|
||||||
"integrity": "sha1-q259nYhqrKiwhbwzEreaGYQz8Oc=",
|
"integrity": "sha1-q259nYhqrKiwhbwzEreaGYQz8Oc=",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
|
},
|
||||||
|
"parse5": {
|
||||||
|
"version": "1.5.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/parse5/-/parse5-1.5.1.tgz",
|
||||||
|
"integrity": "sha1-m387DeMr543CQBsXVzzK8Pb1nZQ=",
|
||||||
|
"dev": true,
|
||||||
|
"optional": true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -7314,42 +7523,12 @@
|
||||||
"integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=",
|
"integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"lodash.assignin": {
|
|
||||||
"version": "4.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz",
|
|
||||||
"integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"lodash.bind": {
|
|
||||||
"version": "4.2.1",
|
|
||||||
"resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz",
|
|
||||||
"integrity": "sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU=",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"lodash.defaults": {
|
|
||||||
"version": "4.2.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz",
|
|
||||||
"integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"lodash.filter": {
|
|
||||||
"version": "4.6.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz",
|
|
||||||
"integrity": "sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4=",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"lodash.flatten": {
|
"lodash.flatten": {
|
||||||
"version": "4.4.0",
|
"version": "4.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz",
|
"resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz",
|
||||||
"integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=",
|
"integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"lodash.foreach": {
|
|
||||||
"version": "4.5.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz",
|
|
||||||
"integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"lodash.get": {
|
"lodash.get": {
|
||||||
"version": "4.4.2",
|
"version": "4.4.2",
|
||||||
"resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz",
|
"resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz",
|
||||||
|
@ -7368,12 +7547,6 @@
|
||||||
"integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=",
|
"integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"lodash.map": {
|
|
||||||
"version": "4.6.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz",
|
|
||||||
"integrity": "sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"lodash.memoize": {
|
"lodash.memoize": {
|
||||||
"version": "3.0.4",
|
"version": "3.0.4",
|
||||||
"resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-3.0.4.tgz",
|
"resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-3.0.4.tgz",
|
||||||
|
@ -7398,30 +7571,12 @@
|
||||||
"integrity": "sha1-9GHliPZmg/fq3q3lE+OKaaVloV0=",
|
"integrity": "sha1-9GHliPZmg/fq3q3lE+OKaaVloV0=",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"lodash.reduce": {
|
|
||||||
"version": "4.6.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz",
|
|
||||||
"integrity": "sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs=",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"lodash.reject": {
|
|
||||||
"version": "4.6.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz",
|
|
||||||
"integrity": "sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU=",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"lodash.set": {
|
"lodash.set": {
|
||||||
"version": "4.3.2",
|
"version": "4.3.2",
|
||||||
"resolved": "https://registry.npmjs.org/lodash.set/-/lodash.set-4.3.2.tgz",
|
"resolved": "https://registry.npmjs.org/lodash.set/-/lodash.set-4.3.2.tgz",
|
||||||
"integrity": "sha1-2HV7HagH3eJIFrDWqEvqGnYjCyM=",
|
"integrity": "sha1-2HV7HagH3eJIFrDWqEvqGnYjCyM=",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"lodash.some": {
|
|
||||||
"version": "4.6.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz",
|
|
||||||
"integrity": "sha1-G7nzFO9ri63tE7VJFpsqlF62jk0=",
|
|
||||||
"dev": true
|
|
||||||
},
|
|
||||||
"lodash.template": {
|
"lodash.template": {
|
||||||
"version": "4.4.0",
|
"version": "4.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.4.0.tgz",
|
"resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.4.0.tgz",
|
||||||
|
@ -8337,9 +8492,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nth-check": {
|
"nth-check": {
|
||||||
"version": "1.0.1",
|
"version": "1.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz",
|
||||||
"integrity": "sha1-mSms32KPwsQQmN6rgqxYDPFJquQ=",
|
"integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"boolbase": "~1.0.0"
|
"boolbase": "~1.0.0"
|
||||||
|
@ -8549,22 +8704,96 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"ora": {
|
"ora": {
|
||||||
"version": "0.3.0",
|
"version": "3.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/ora/-/ora-0.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/ora/-/ora-3.1.0.tgz",
|
||||||
"integrity": "sha1-NnoHitJc+wltpQERXrW0AeB9dJU=",
|
"integrity": "sha512-vRBPaNCclUi8pUxRF/G8+5qEQkc6EgzKK1G2ZNJUIGu088Un5qIxFXeDgymvPRM9nmrcUOGzQgS1Vmtz+NtlMw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"chalk": "^1.1.1",
|
"chalk": "^2.4.2",
|
||||||
"cli-cursor": "^1.0.2",
|
"cli-cursor": "^2.1.0",
|
||||||
"cli-spinners": "^0.2.0",
|
"cli-spinners": "^1.3.1",
|
||||||
"log-symbols": "^1.0.2"
|
"log-symbols": "^2.2.0",
|
||||||
|
"strip-ansi": "^5.0.0",
|
||||||
|
"wcwidth": "^1.0.1"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"cli-spinners": {
|
"ansi-regex": {
|
||||||
"version": "0.2.0",
|
"version": "4.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-0.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.0.0.tgz",
|
||||||
"integrity": "sha1-hQeHN5E7iA9uyf/ntl6D7Hd2KE8=",
|
"integrity": "sha512-iB5Dda8t/UqpPI/IjsejXu5jOGDrzn41wJyljwPH65VCIbk6+1BzFIMJGFwTNrYXT1CrD+B4l19U7awiQ8rk7w==",
|
||||||
"dev": true
|
"dev": true
|
||||||
|
},
|
||||||
|
"ansi-styles": {
|
||||||
|
"version": "3.2.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
|
||||||
|
"integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"color-convert": "^1.9.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"chalk": {
|
||||||
|
"version": "2.4.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
|
||||||
|
"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"ansi-styles": "^3.2.1",
|
||||||
|
"escape-string-regexp": "^1.0.5",
|
||||||
|
"supports-color": "^5.3.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"cli-cursor": {
|
||||||
|
"version": "2.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz",
|
||||||
|
"integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"restore-cursor": "^2.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"cli-spinners": {
|
||||||
|
"version": "1.3.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-1.3.1.tgz",
|
||||||
|
"integrity": "sha512-1QL4544moEsDVH9T/l6Cemov/37iv1RtoKf7NJ04A60+4MREXNfx/QvavbH6QoGdsD4N4Mwy49cmaINR/o2mdg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"log-symbols": {
|
||||||
|
"version": "2.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz",
|
||||||
|
"integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"chalk": "^2.0.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"onetime": {
|
||||||
|
"version": "2.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz",
|
||||||
|
"integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"mimic-fn": "^1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"restore-cursor": {
|
||||||
|
"version": "2.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz",
|
||||||
|
"integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"onetime": "^2.0.0",
|
||||||
|
"signal-exit": "^3.0.2"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"strip-ansi": {
|
||||||
|
"version": "5.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.0.0.tgz",
|
||||||
|
"integrity": "sha512-Uu7gQyZI7J7gn5qLn1Np3G9vcYGTVqB+lFTytnDJv83dd8T22aGH451P3jueT2/QemInJDfxHB5Tde5OzgG1Ow==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"ansi-regex": "^4.0.0"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -8765,11 +8994,13 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"parse5": {
|
"parse5": {
|
||||||
"version": "1.5.1",
|
"version": "3.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/parse5/-/parse5-1.5.1.tgz",
|
"resolved": "https://registry.npmjs.org/parse5/-/parse5-3.0.3.tgz",
|
||||||
"integrity": "sha1-m387DeMr543CQBsXVzzK8Pb1nZQ=",
|
"integrity": "sha512-rgO9Zg5LLLkfJF9E6CCmXlSE4UVceloys8JrFqCcHloC3usd/kJCyPDwH2SOlzix2j3xaP9sUX3e8+kvkuleAA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"requires": {
|
||||||
|
"@types/node": "*"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"pascalcase": {
|
"pascalcase": {
|
||||||
"version": "0.1.1",
|
"version": "0.1.1",
|
||||||
|
@ -10451,7 +10682,7 @@
|
||||||
"sax": {
|
"sax": {
|
||||||
"version": "1.2.4",
|
"version": "1.2.4",
|
||||||
"resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz",
|
"resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz",
|
||||||
"integrity": "sha1-KBYjTiN4vdxOU1T6tcqold9xANk=",
|
"integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
|
@ -10963,7 +11194,7 @@
|
||||||
"split": {
|
"split": {
|
||||||
"version": "1.0.1",
|
"version": "1.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz",
|
||||||
"integrity": "sha1-YFvZvjA6pZ+zX5Ip++oN3snqB9k=",
|
"integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"through": "2"
|
"through": "2"
|
||||||
|
@ -10981,7 +11212,7 @@
|
||||||
"split2": {
|
"split2": {
|
||||||
"version": "2.2.0",
|
"version": "2.2.0",
|
||||||
"resolved": "https://registry.npmjs.org/split2/-/split2-2.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/split2/-/split2-2.2.0.tgz",
|
||||||
"integrity": "sha1-GGsldbz4PoW30YRldWI47k7kJJM=",
|
"integrity": "sha512-RAb22TG39LhI31MbreBgIuKiIKhVsawfTgEGqKHTK87aG+ul/PB8Sqoi3I7kVdRWiCfrKxK3uo4/YUkpNvhPbw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"through2": "^2.0.2"
|
"through2": "^2.0.2"
|
||||||
|
@ -11990,17 +12221,17 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"tar-stream": {
|
"tar-stream": {
|
||||||
"version": "1.6.1",
|
"version": "1.6.2",
|
||||||
"resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.1.tgz",
|
"resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz",
|
||||||
"integrity": "sha512-IFLM5wp3QrJODQFPm6/to3LJZrONdBY/otxcvDIQzu217zKye6yVR3hhi9lAjrC2Z+m/j5oDxMPb1qcd8cIvpA==",
|
"integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"bl": "^1.0.0",
|
"bl": "^1.0.0",
|
||||||
"buffer-alloc": "^1.1.0",
|
"buffer-alloc": "^1.2.0",
|
||||||
"end-of-stream": "^1.0.0",
|
"end-of-stream": "^1.0.0",
|
||||||
"fs-constants": "^1.0.0",
|
"fs-constants": "^1.0.0",
|
||||||
"readable-stream": "^2.3.0",
|
"readable-stream": "^2.3.0",
|
||||||
"to-buffer": "^1.1.0",
|
"to-buffer": "^1.1.1",
|
||||||
"xtend": "^4.0.0"
|
"xtend": "^4.0.0"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
@ -12082,9 +12313,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"text-extensions": {
|
"text-extensions": {
|
||||||
"version": "1.8.0",
|
"version": "1.9.0",
|
||||||
"resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-1.8.0.tgz",
|
"resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-1.9.0.tgz",
|
||||||
"integrity": "sha512-mVzjRxuWnDKs/qH1rbOJEVHLlSX9kty9lpi7lMvLgU9S74mQ8/Ozg9UPcKxShh0qG2NZ+NyPOPpcZU4C1Eld9A==",
|
"integrity": "sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"text-table": {
|
"text-table": {
|
||||||
|
@ -12257,14 +12488,23 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"tough-cookie": {
|
"tough-cookie": {
|
||||||
"version": "2.4.3",
|
"version": "2.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz",
|
"resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz",
|
||||||
"integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==",
|
"integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true,
|
"optional": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"psl": "^1.1.24",
|
"psl": "^1.1.28",
|
||||||
"punycode": "^1.4.1"
|
"punycode": "^2.1.1"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"punycode": {
|
||||||
|
"version": "2.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
|
||||||
|
"integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
|
||||||
|
"dev": true,
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"tr46": {
|
"tr46": {
|
||||||
|
@ -12470,9 +12710,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"uc.micro": {
|
"uc.micro": {
|
||||||
"version": "1.0.5",
|
"version": "1.0.6",
|
||||||
"resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.5.tgz",
|
"resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz",
|
||||||
"integrity": "sha512-JoLI4g5zv5qNyT09f4YAvEZIIV1oOjqnewYg5D38dkQljIzpPT296dbIGvKro3digYI1bkb7W6EP1y4uDlmzLg==",
|
"integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"uglify-js": {
|
"uglify-js": {
|
||||||
|
@ -13352,6 +13592,12 @@
|
||||||
"integrity": "sha1-1QH5ezvbQDr4757MIFcxh6rawOk=",
|
"integrity": "sha1-1QH5ezvbQDr4757MIFcxh6rawOk=",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"xregexp": {
|
||||||
|
"version": "4.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.0.0.tgz",
|
||||||
|
"integrity": "sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"xtend": {
|
"xtend": {
|
||||||
"version": "4.0.1",
|
"version": "4.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz",
|
||||||
|
|
|
@ -14,8 +14,8 @@
|
||||||
"colors": "^1.1.2",
|
"colors": "^1.1.2",
|
||||||
"dotenv-safe": "^4.0.4",
|
"dotenv-safe": "^4.0.4",
|
||||||
"dugite": "^1.45.0",
|
"dugite": "^1.45.0",
|
||||||
"electron-docs-linter": "^2.5.0",
|
"electron-docs-linter": "^3.0.0",
|
||||||
"electron-typescript-definitions": "^8.1.0",
|
"electron-typescript-definitions": "^8.2.1",
|
||||||
"eslint": "^5.13.0",
|
"eslint": "^5.13.0",
|
||||||
"eslint-config-standard": "^12.0.0",
|
"eslint-config-standard": "^12.0.0",
|
||||||
"eslint-plugin-mocha": "^5.2.0",
|
"eslint-plugin-mocha": "^5.2.0",
|
||||||
|
|
|
@ -515,17 +515,17 @@ globalShortcut.unregisterAll()
|
||||||
// ipcMain
|
// ipcMain
|
||||||
// https://github.com/atom/electron/blob/master/docs/api/ipc-main-process.md
|
// https://github.com/atom/electron/blob/master/docs/api/ipc-main-process.md
|
||||||
|
|
||||||
ipcMain.on('asynchronous-message', (event: Electron.Event, arg: any) => {
|
ipcMain.on('asynchronous-message', (event, arg: any) => {
|
||||||
console.log(arg) // prints "ping"
|
console.log(arg) // prints "ping"
|
||||||
event.sender.send('asynchronous-reply', 'pong')
|
event.sender.send('asynchronous-reply', 'pong')
|
||||||
})
|
})
|
||||||
|
|
||||||
ipcMain.on('synchronous-message', (event: Electron.Event, arg: any) => {
|
ipcMain.on('synchronous-message', (event, arg: any) => {
|
||||||
console.log(arg) // prints "ping"
|
console.log(arg) // prints "ping"
|
||||||
event.returnValue = 'pong'
|
event.returnValue = 'pong'
|
||||||
})
|
})
|
||||||
|
|
||||||
ipcMain.on('synchronous-message', (event: Event, arg: any) => {
|
ipcMain.on('synchronous-message', (event, arg: any) => {
|
||||||
console.log("event isn't namespaced and refers to the correct type.")
|
console.log("event isn't namespaced and refers to the correct type.")
|
||||||
event.returnValue = 'pong'
|
event.returnValue = 'pong'
|
||||||
})
|
})
|
||||||
|
|
|
@ -16,7 +16,7 @@ import * as fs from 'fs'
|
||||||
// https://github.com/atom/electron/blob/master/docs/api/ipc-renderer.md
|
// https://github.com/atom/electron/blob/master/docs/api/ipc-renderer.md
|
||||||
console.log(ipcRenderer.sendSync('synchronous-message', 'ping')) // prints "pong"
|
console.log(ipcRenderer.sendSync('synchronous-message', 'ping')) // prints "pong"
|
||||||
|
|
||||||
ipcRenderer.on('asynchronous-reply', (event: Electron.Event, arg: any) => {
|
ipcRenderer.on('asynchronous-reply', (event, arg: any) => {
|
||||||
console.log(arg) // prints "pong"
|
console.log(arg) // prints "pong"
|
||||||
event.sender.send('another-message', 'Hello World!')
|
event.sender.send('another-message', 'Hello World!')
|
||||||
})
|
})
|
||||||
|
|
10
typings/internal-electron.d.ts
vendored
10
typings/internal-electron.d.ts
vendored
|
@ -68,4 +68,14 @@ declare namespace ElectronInternal {
|
||||||
promisify<T extends (...args: any[]) => any>(fn: T): T;
|
promisify<T extends (...args: any[]) => any>(fn: T): T;
|
||||||
promisifyMultiArg<T extends (...args: any[]) => any>(fn: T): T;
|
promisifyMultiArg<T extends (...args: any[]) => any>(fn: T): T;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Internal IPC has _replyInternal and NO reply method
|
||||||
|
interface IpcMainInternalEvent extends Omit<Electron.IpcMainEvent, 'reply'> {
|
||||||
|
_replyInternal(...args: any[]): void;
|
||||||
|
}
|
||||||
|
|
||||||
|
interface IpcMainInternal extends Electron.EventEmitter {
|
||||||
|
on(channel: string, listener: (event: IpcMainInternalEvent, ...args: any[]) => void): this;
|
||||||
|
once(channel: string, listener: (event: IpcMainInternalEvent, ...args: any[]) => void): this;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
1
typings/internal-helpers.d.ts
vendored
Normal file
1
typings/internal-helpers.d.ts
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
declare type Omit<T, K> = Pick<T, Exclude<keyof T, K>>;
|
Loading…
Reference in a new issue