custom-electron-titlebar 3.2.5 → 3.2.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.vscode/launch.json +49 -0
- package/.vscode/tasks.json +34 -0
- package/README.md +15 -24
- package/_config.yml +1 -0
- package/{lib → build}/browser/browser.d.ts +0 -0
- package/{lib → build}/browser/browser.js +1 -0
- package/build/browser/browser.js.map +1 -0
- package/{lib → build}/browser/event.d.ts +0 -0
- package/{lib → build}/browser/event.js +3 -1
- package/build/browser/event.js.map +1 -0
- package/{lib → build}/browser/iframe.d.ts +0 -0
- package/{lib/base → build}/browser/iframe.js +1 -0
- package/build/browser/iframe.js.map +1 -0
- package/{lib → build}/browser/keyboardEvent.d.ts +0 -0
- package/{lib → build}/browser/keyboardEvent.js +1 -0
- package/build/browser/keyboardEvent.js.map +1 -0
- package/{lib → build}/browser/mouseEvent.d.ts +0 -0
- package/{lib → build}/browser/mouseEvent.js +1 -0
- package/build/browser/mouseEvent.js.map +1 -0
- package/{lib → build}/common/arrays.d.ts +0 -0
- package/{lib → build}/common/arrays.js +1 -0
- package/build/common/arrays.js.map +1 -0
- package/{lib → build}/common/async.d.ts +0 -0
- package/{lib → build}/common/async.js +1 -0
- package/build/common/async.js.map +1 -0
- package/{lib → build}/common/charCode.d.ts +0 -0
- package/{lib/base → build}/common/charCode.js +1 -0
- package/build/common/charCode.js.map +1 -0
- package/{lib → build}/common/color.d.ts +0 -0
- package/{lib → build}/common/color.js +1 -0
- package/build/common/color.js.map +1 -0
- package/{lib → build}/common/dom.d.ts +0 -0
- package/{lib → build}/common/dom.js +17 -14
- package/build/common/dom.js.map +1 -0
- package/{lib → build}/common/event.d.ts +0 -0
- package/{lib → build}/common/event.js +2 -1
- package/build/common/event.js.map +1 -0
- package/{lib → build}/common/iterator.d.ts +0 -0
- package/{lib → build}/common/iterator.js +1 -0
- package/build/common/iterator.js.map +1 -0
- package/{lib → build}/common/keyCodes.d.ts +0 -0
- package/{lib → build}/common/keyCodes.js +1 -0
- package/build/common/keyCodes.js.map +1 -0
- package/{lib → build}/common/lifecycle.d.ts +0 -0
- package/{lib → build}/common/lifecycle.js +1 -0
- package/build/common/lifecycle.js.map +1 -0
- package/{lib → build}/common/linkedList.d.ts +0 -0
- package/{lib → build}/common/linkedList.js +1 -0
- package/build/common/linkedList.js.map +1 -0
- package/{lib → build}/common/platform.d.ts +0 -0
- package/{lib → build}/common/platform.js +1 -0
- package/build/common/platform.js.map +1 -0
- package/{lib → build}/index.d.ts +0 -0
- package/{lib → build}/index.js +1 -0
- package/build/index.js.map +1 -0
- package/{lib → build}/menu/menu.d.ts +0 -0
- package/{lib → build}/menu/menu.js +39 -38
- package/build/menu/menu.js.map +1 -0
- package/{lib → build}/menu/menuitem.d.ts +10 -2
- package/{lib → build}/menu/menuitem.js +71 -29
- package/build/menu/menuitem.js.map +1 -0
- package/{lib → build}/menubar.d.ts +0 -0
- package/{lib → build}/menubar.js +38 -34
- package/build/menubar.js.map +1 -0
- package/{lib → build}/themebar.d.ts +0 -0
- package/{lib → build}/themebar.js +31 -2
- package/build/themebar.js.map +1 -0
- package/{lib → build}/titlebar.d.ts +0 -0
- package/{lib → build}/titlebar.js +72 -59
- package/build/titlebar.js.map +1 -0
- package/package.json +13 -7
- package/lib/base/browser/browser.d.ts +0 -25
- package/lib/base/browser/browser.js +0 -117
- package/lib/base/browser/canIUse.d.ts +0 -18
- package/lib/base/browser/canIUse.js +0 -63
- package/lib/base/browser/dom.d.ts +0 -230
- package/lib/base/browser/dom.js +0 -1080
- package/lib/base/browser/event.d.ts +0 -12
- package/lib/base/browser/event.js +0 -28
- package/lib/base/browser/iframe.d.ts +0 -33
- package/lib/base/browser/keyboardEvent.d.ts +0 -40
- package/lib/base/browser/keyboardEvent.js +0 -256
- package/lib/base/browser/mouseEvent.d.ts +0 -69
- package/lib/base/browser/mouseEvent.js +0 -146
- package/lib/base/common/arrays.d.ts +0 -149
- package/lib/base/common/arrays.js +0 -549
- package/lib/base/common/async.d.ts +0 -259
- package/lib/base/common/async.js +0 -728
- package/lib/base/common/cancellation.d.ts +0 -29
- package/lib/base/common/cancellation.js +0 -114
- package/lib/base/common/charCode.d.ts +0 -415
- package/lib/base/common/color.d.ts +0 -163
- package/lib/base/common/color.js +0 -495
- package/lib/base/common/errors.d.ts +0 -65
- package/lib/base/common/errors.js +0 -164
- package/lib/base/common/event.d.ts +0 -248
- package/lib/base/common/event.js +0 -703
- package/lib/base/common/functional.d.ts +0 -1
- package/lib/base/common/functional.js +0 -21
- package/lib/base/common/iterator.d.ts +0 -16
- package/lib/base/common/iterator.js +0 -82
- package/lib/base/common/keyCodes.d.ts +0 -268
- package/lib/base/common/keyCodes.js +0 -292
- package/lib/base/common/lifecycle.d.ts +0 -67
- package/lib/base/common/lifecycle.js +0 -234
- package/lib/base/common/linkedList.d.ts +0 -16
- package/lib/base/common/linkedList.js +0 -128
- package/lib/base/common/network.d.ts +0 -65
- package/lib/base/common/network.js +0 -124
- package/lib/base/common/path.d.ts +0 -39
- package/lib/base/common/path.js +0 -1407
- package/lib/base/common/platform.d.ts +0 -53
- package/lib/base/common/platform.js +0 -176
- package/lib/base/common/process.d.ts +0 -5
- package/lib/base/common/process.js +0 -18
- package/lib/base/common/sequence.d.ts +0 -27
- package/lib/base/common/sequence.js +0 -32
- package/lib/base/common/uri.d.ts +0 -153
- package/lib/base/common/uri.js +0 -612
- package/lib/browser/iframe.js +0 -109
- package/lib/common/charCode.js +0 -6
- package/lib/menu.d.ts +0 -53
- package/lib/menu.js +0 -532
- package/lib/menuitem.d.ts +0 -46
- package/lib/menuitem.js +0 -295
- package/lib/vs/base/browser/browser.d.ts +0 -25
- package/lib/vs/base/browser/browser.js +0 -117
- package/lib/vs/base/browser/canIUse.d.ts +0 -18
- package/lib/vs/base/browser/canIUse.js +0 -63
- package/lib/vs/base/browser/dom.d.ts +0 -230
- package/lib/vs/base/browser/dom.js +0 -1080
- package/lib/vs/base/browser/event.d.ts +0 -12
- package/lib/vs/base/browser/event.js +0 -28
- package/lib/vs/base/browser/iframe.d.ts +0 -33
- package/lib/vs/base/browser/iframe.js +0 -109
- package/lib/vs/base/browser/keyboardEvent.d.ts +0 -40
- package/lib/vs/base/browser/keyboardEvent.js +0 -256
- package/lib/vs/base/browser/mouseEvent.d.ts +0 -69
- package/lib/vs/base/browser/mouseEvent.js +0 -146
- package/lib/vs/base/common/arrays.d.ts +0 -149
- package/lib/vs/base/common/arrays.js +0 -549
- package/lib/vs/base/common/async.d.ts +0 -259
- package/lib/vs/base/common/async.js +0 -728
- package/lib/vs/base/common/cancellation.d.ts +0 -29
- package/lib/vs/base/common/cancellation.js +0 -114
- package/lib/vs/base/common/charCode.d.ts +0 -415
- package/lib/vs/base/common/charCode.js +0 -6
- package/lib/vs/base/common/color.d.ts +0 -163
- package/lib/vs/base/common/color.js +0 -495
- package/lib/vs/base/common/errors.d.ts +0 -65
- package/lib/vs/base/common/errors.js +0 -164
- package/lib/vs/base/common/event.d.ts +0 -248
- package/lib/vs/base/common/event.js +0 -703
- package/lib/vs/base/common/functional.d.ts +0 -1
- package/lib/vs/base/common/functional.js +0 -21
- package/lib/vs/base/common/iterator.d.ts +0 -16
- package/lib/vs/base/common/iterator.js +0 -82
- package/lib/vs/base/common/keyCodes.d.ts +0 -268
- package/lib/vs/base/common/keyCodes.js +0 -292
- package/lib/vs/base/common/lifecycle.d.ts +0 -67
- package/lib/vs/base/common/lifecycle.js +0 -234
- package/lib/vs/base/common/linkedList.d.ts +0 -16
- package/lib/vs/base/common/linkedList.js +0 -128
- package/lib/vs/base/common/network.d.ts +0 -65
- package/lib/vs/base/common/network.js +0 -124
- package/lib/vs/base/common/path.d.ts +0 -39
- package/lib/vs/base/common/path.js +0 -1407
- package/lib/vs/base/common/platform.d.ts +0 -53
- package/lib/vs/base/common/platform.js +0 -176
- package/lib/vs/base/common/process.d.ts +0 -5
- package/lib/vs/base/common/process.js +0 -18
- package/lib/vs/base/common/sequence.d.ts +0 -27
- package/lib/vs/base/common/sequence.js +0 -32
- package/lib/vs/base/common/uri.d.ts +0 -153
- package/lib/vs/base/common/uri.js +0 -612
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
export interface ErrorListenerCallback {
|
|
2
|
-
(error: any): void;
|
|
3
|
-
}
|
|
4
|
-
export interface ErrorListenerUnbind {
|
|
5
|
-
(): void;
|
|
6
|
-
}
|
|
7
|
-
export declare class ErrorHandler {
|
|
8
|
-
private unexpectedErrorHandler;
|
|
9
|
-
private listeners;
|
|
10
|
-
constructor();
|
|
11
|
-
addListener(listener: ErrorListenerCallback): ErrorListenerUnbind;
|
|
12
|
-
private emit;
|
|
13
|
-
private _removeListener;
|
|
14
|
-
setUnexpectedErrorHandler(newUnexpectedErrorHandler: (e: any) => void): void;
|
|
15
|
-
getUnexpectedErrorHandler(): (e: any) => void;
|
|
16
|
-
onUnexpectedError(e: any): void;
|
|
17
|
-
onUnexpectedExternalError(e: any): void;
|
|
18
|
-
}
|
|
19
|
-
export declare const errorHandler: ErrorHandler;
|
|
20
|
-
export declare function setUnexpectedErrorHandler(newUnexpectedErrorHandler: (e: any) => void): void;
|
|
21
|
-
export declare function onUnexpectedError(e: any): undefined;
|
|
22
|
-
export declare function onUnexpectedExternalError(e: any): undefined;
|
|
23
|
-
export interface SerializedError {
|
|
24
|
-
readonly $isError: true;
|
|
25
|
-
readonly name: string;
|
|
26
|
-
readonly message: string;
|
|
27
|
-
readonly stack: string;
|
|
28
|
-
}
|
|
29
|
-
export declare function transformErrorForSerialization(error: Error): SerializedError;
|
|
30
|
-
export declare function transformErrorForSerialization(error: any): any;
|
|
31
|
-
export interface V8CallSite {
|
|
32
|
-
getThis(): any;
|
|
33
|
-
getTypeName(): string;
|
|
34
|
-
getFunction(): string;
|
|
35
|
-
getFunctionName(): string;
|
|
36
|
-
getMethodName(): string;
|
|
37
|
-
getFileName(): string;
|
|
38
|
-
getLineNumber(): number;
|
|
39
|
-
getColumnNumber(): number;
|
|
40
|
-
getEvalOrigin(): string;
|
|
41
|
-
isToplevel(): boolean;
|
|
42
|
-
isEval(): boolean;
|
|
43
|
-
isNative(): boolean;
|
|
44
|
-
isConstructor(): boolean;
|
|
45
|
-
toString(): string;
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* Checks if the given error is a promise in canceled state
|
|
49
|
-
*/
|
|
50
|
-
export declare function isPromiseCanceledError(error: any): boolean;
|
|
51
|
-
/**
|
|
52
|
-
* Returns an error that signals cancellation.
|
|
53
|
-
*/
|
|
54
|
-
export declare function canceled(): Error;
|
|
55
|
-
export declare function illegalArgument(name?: string): Error;
|
|
56
|
-
export declare function illegalState(name?: string): Error;
|
|
57
|
-
export declare function readonly(name?: string): Error;
|
|
58
|
-
export declare function disposed(what: string): Error;
|
|
59
|
-
export declare function getErrorMessage(err: any): string;
|
|
60
|
-
export declare class NotImplementedError extends Error {
|
|
61
|
-
constructor(message?: string);
|
|
62
|
-
}
|
|
63
|
-
export declare class NotSupportedError extends Error {
|
|
64
|
-
constructor(message?: string);
|
|
65
|
-
}
|
|
@@ -1,164 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/*---------------------------------------------------------------------------------------------
|
|
3
|
-
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
4
|
-
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
5
|
-
*--------------------------------------------------------------------------------------------*/
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.NotSupportedError = exports.NotImplementedError = exports.getErrorMessage = exports.disposed = exports.readonly = exports.illegalState = exports.illegalArgument = exports.canceled = exports.isPromiseCanceledError = exports.transformErrorForSerialization = exports.onUnexpectedExternalError = exports.onUnexpectedError = exports.setUnexpectedErrorHandler = exports.errorHandler = exports.ErrorHandler = void 0;
|
|
8
|
-
// Avoid circular dependency on EventEmitter by implementing a subset of the interface.
|
|
9
|
-
class ErrorHandler {
|
|
10
|
-
constructor() {
|
|
11
|
-
this.listeners = [];
|
|
12
|
-
this.unexpectedErrorHandler = function (e) {
|
|
13
|
-
setTimeout(() => {
|
|
14
|
-
if (e.stack) {
|
|
15
|
-
throw new Error(e.message + '\n\n' + e.stack);
|
|
16
|
-
}
|
|
17
|
-
throw e;
|
|
18
|
-
}, 0);
|
|
19
|
-
};
|
|
20
|
-
}
|
|
21
|
-
addListener(listener) {
|
|
22
|
-
this.listeners.push(listener);
|
|
23
|
-
return () => {
|
|
24
|
-
this._removeListener(listener);
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
emit(e) {
|
|
28
|
-
this.listeners.forEach((listener) => {
|
|
29
|
-
listener(e);
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
_removeListener(listener) {
|
|
33
|
-
this.listeners.splice(this.listeners.indexOf(listener), 1);
|
|
34
|
-
}
|
|
35
|
-
setUnexpectedErrorHandler(newUnexpectedErrorHandler) {
|
|
36
|
-
this.unexpectedErrorHandler = newUnexpectedErrorHandler;
|
|
37
|
-
}
|
|
38
|
-
getUnexpectedErrorHandler() {
|
|
39
|
-
return this.unexpectedErrorHandler;
|
|
40
|
-
}
|
|
41
|
-
onUnexpectedError(e) {
|
|
42
|
-
this.unexpectedErrorHandler(e);
|
|
43
|
-
this.emit(e);
|
|
44
|
-
}
|
|
45
|
-
// For external errors, we don't want the listeners to be called
|
|
46
|
-
onUnexpectedExternalError(e) {
|
|
47
|
-
this.unexpectedErrorHandler(e);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
exports.ErrorHandler = ErrorHandler;
|
|
51
|
-
exports.errorHandler = new ErrorHandler();
|
|
52
|
-
function setUnexpectedErrorHandler(newUnexpectedErrorHandler) {
|
|
53
|
-
exports.errorHandler.setUnexpectedErrorHandler(newUnexpectedErrorHandler);
|
|
54
|
-
}
|
|
55
|
-
exports.setUnexpectedErrorHandler = setUnexpectedErrorHandler;
|
|
56
|
-
function onUnexpectedError(e) {
|
|
57
|
-
// ignore errors from cancelled promises
|
|
58
|
-
if (!isPromiseCanceledError(e)) {
|
|
59
|
-
exports.errorHandler.onUnexpectedError(e);
|
|
60
|
-
}
|
|
61
|
-
return undefined;
|
|
62
|
-
}
|
|
63
|
-
exports.onUnexpectedError = onUnexpectedError;
|
|
64
|
-
function onUnexpectedExternalError(e) {
|
|
65
|
-
// ignore errors from cancelled promises
|
|
66
|
-
if (!isPromiseCanceledError(e)) {
|
|
67
|
-
exports.errorHandler.onUnexpectedExternalError(e);
|
|
68
|
-
}
|
|
69
|
-
return undefined;
|
|
70
|
-
}
|
|
71
|
-
exports.onUnexpectedExternalError = onUnexpectedExternalError;
|
|
72
|
-
function transformErrorForSerialization(error) {
|
|
73
|
-
if (error instanceof Error) {
|
|
74
|
-
let { name, message } = error;
|
|
75
|
-
const stack = error.stacktrace || error.stack;
|
|
76
|
-
return {
|
|
77
|
-
$isError: true,
|
|
78
|
-
name,
|
|
79
|
-
message,
|
|
80
|
-
stack
|
|
81
|
-
};
|
|
82
|
-
}
|
|
83
|
-
// return as is
|
|
84
|
-
return error;
|
|
85
|
-
}
|
|
86
|
-
exports.transformErrorForSerialization = transformErrorForSerialization;
|
|
87
|
-
const canceledName = 'Canceled';
|
|
88
|
-
/**
|
|
89
|
-
* Checks if the given error is a promise in canceled state
|
|
90
|
-
*/
|
|
91
|
-
function isPromiseCanceledError(error) {
|
|
92
|
-
return error instanceof Error && error.name === canceledName && error.message === canceledName;
|
|
93
|
-
}
|
|
94
|
-
exports.isPromiseCanceledError = isPromiseCanceledError;
|
|
95
|
-
/**
|
|
96
|
-
* Returns an error that signals cancellation.
|
|
97
|
-
*/
|
|
98
|
-
function canceled() {
|
|
99
|
-
const error = new Error(canceledName);
|
|
100
|
-
error.name = error.message;
|
|
101
|
-
return error;
|
|
102
|
-
}
|
|
103
|
-
exports.canceled = canceled;
|
|
104
|
-
function illegalArgument(name) {
|
|
105
|
-
if (name) {
|
|
106
|
-
return new Error(`Illegal argument: ${name}`);
|
|
107
|
-
}
|
|
108
|
-
else {
|
|
109
|
-
return new Error('Illegal argument');
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
exports.illegalArgument = illegalArgument;
|
|
113
|
-
function illegalState(name) {
|
|
114
|
-
if (name) {
|
|
115
|
-
return new Error(`Illegal state: ${name}`);
|
|
116
|
-
}
|
|
117
|
-
else {
|
|
118
|
-
return new Error('Illegal state');
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
exports.illegalState = illegalState;
|
|
122
|
-
function readonly(name) {
|
|
123
|
-
return name
|
|
124
|
-
? new Error(`readonly property '${name} cannot be changed'`)
|
|
125
|
-
: new Error('readonly property cannot be changed');
|
|
126
|
-
}
|
|
127
|
-
exports.readonly = readonly;
|
|
128
|
-
function disposed(what) {
|
|
129
|
-
const result = new Error(`${what} has been disposed`);
|
|
130
|
-
result.name = 'DISPOSED';
|
|
131
|
-
return result;
|
|
132
|
-
}
|
|
133
|
-
exports.disposed = disposed;
|
|
134
|
-
function getErrorMessage(err) {
|
|
135
|
-
if (!err) {
|
|
136
|
-
return 'Error';
|
|
137
|
-
}
|
|
138
|
-
if (err.message) {
|
|
139
|
-
return err.message;
|
|
140
|
-
}
|
|
141
|
-
if (err.stack) {
|
|
142
|
-
return err.stack.split('\n')[0];
|
|
143
|
-
}
|
|
144
|
-
return String(err);
|
|
145
|
-
}
|
|
146
|
-
exports.getErrorMessage = getErrorMessage;
|
|
147
|
-
class NotImplementedError extends Error {
|
|
148
|
-
constructor(message) {
|
|
149
|
-
super('NotImplemented');
|
|
150
|
-
if (message) {
|
|
151
|
-
this.message = message;
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
exports.NotImplementedError = NotImplementedError;
|
|
156
|
-
class NotSupportedError extends Error {
|
|
157
|
-
constructor(message) {
|
|
158
|
-
super('NotSupported');
|
|
159
|
-
if (message) {
|
|
160
|
-
this.message = message;
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
exports.NotSupportedError = NotSupportedError;
|
|
@@ -1,248 +0,0 @@
|
|
|
1
|
-
import { IDisposable, DisposableStore } from './lifecycle';
|
|
2
|
-
import { LinkedList } from './linkedList';
|
|
3
|
-
import { CancellationToken } from './cancellation';
|
|
4
|
-
/**
|
|
5
|
-
* To an event a function with one or zero parameters
|
|
6
|
-
* can be subscribed. The event is the subscriber function itself.
|
|
7
|
-
*/
|
|
8
|
-
export interface Event<T> {
|
|
9
|
-
(listener: (e: T) => any, thisArgs?: any, disposables?: IDisposable[] | DisposableStore): IDisposable;
|
|
10
|
-
}
|
|
11
|
-
export declare namespace Event {
|
|
12
|
-
const None: Event<any>;
|
|
13
|
-
/**
|
|
14
|
-
* Given an event, returns another event which only fires once.
|
|
15
|
-
*/
|
|
16
|
-
function once<T>(event: Event<T>): Event<T>;
|
|
17
|
-
/**
|
|
18
|
-
* Given an event and a `map` function, returns another event which maps each element
|
|
19
|
-
* through the mapping function.
|
|
20
|
-
*/
|
|
21
|
-
function map<I, O>(event: Event<I>, map: (i: I) => O): Event<O>;
|
|
22
|
-
/**
|
|
23
|
-
* Given an event and an `each` function, returns another identical event and calls
|
|
24
|
-
* the `each` function per each element.
|
|
25
|
-
*/
|
|
26
|
-
function forEach<I>(event: Event<I>, each: (i: I) => void): Event<I>;
|
|
27
|
-
/**
|
|
28
|
-
* Given an event and a `filter` function, returns another event which emits those
|
|
29
|
-
* elements for which the `filter` function returns `true`.
|
|
30
|
-
*/
|
|
31
|
-
function filter<T>(event: Event<T>, filter: (e: T) => boolean): Event<T>;
|
|
32
|
-
function filter<T, R>(event: Event<T | R>, filter: (e: T | R) => e is R): Event<R>;
|
|
33
|
-
/**
|
|
34
|
-
* Given an event, returns the same event but typed as `Event<void>`.
|
|
35
|
-
*/
|
|
36
|
-
function signal<T>(event: Event<T>): Event<void>;
|
|
37
|
-
/**
|
|
38
|
-
* Given a collection of events, returns a single event which emits
|
|
39
|
-
* whenever any of the provided events emit.
|
|
40
|
-
*/
|
|
41
|
-
function any<T>(...events: Event<T>[]): Event<T>;
|
|
42
|
-
function any(...events: Event<any>[]): Event<void>;
|
|
43
|
-
/**
|
|
44
|
-
* Given an event and a `merge` function, returns another event which maps each element
|
|
45
|
-
* and the cumulative result through the `merge` function. Similar to `map`, but with memory.
|
|
46
|
-
*/
|
|
47
|
-
function reduce<I, O>(event: Event<I>, merge: (last: O | undefined, event: I) => O, initial?: O): Event<O>;
|
|
48
|
-
/**
|
|
49
|
-
* Given a chain of event processing functions (filter, map, etc), each
|
|
50
|
-
* function will be invoked per event & per listener. Snapshotting an event
|
|
51
|
-
* chain allows each function to be invoked just once per event.
|
|
52
|
-
*/
|
|
53
|
-
function snapshot<T>(event: Event<T>): Event<T>;
|
|
54
|
-
/**
|
|
55
|
-
* Debounces the provided event, given a `merge` function.
|
|
56
|
-
*
|
|
57
|
-
* @param event The input event.
|
|
58
|
-
* @param merge The reducing function.
|
|
59
|
-
* @param delay The debouncing delay in millis.
|
|
60
|
-
* @param leading Whether the event should fire in the leading phase of the timeout.
|
|
61
|
-
* @param leakWarningThreshold The leak warning threshold override.
|
|
62
|
-
*/
|
|
63
|
-
function debounce<T>(event: Event<T>, merge: (last: T | undefined, event: T) => T, delay?: number, leading?: boolean, leakWarningThreshold?: number): Event<T>;
|
|
64
|
-
function debounce<I, O>(event: Event<I>, merge: (last: O | undefined, event: I) => O, delay?: number, leading?: boolean, leakWarningThreshold?: number): Event<O>;
|
|
65
|
-
/**
|
|
66
|
-
* Given an event, it returns another event which fires only once and as soon as
|
|
67
|
-
* the input event emits. The event data is the number of millis it took for the
|
|
68
|
-
* event to fire.
|
|
69
|
-
*/
|
|
70
|
-
function stopwatch<T>(event: Event<T>): Event<number>;
|
|
71
|
-
/**
|
|
72
|
-
* Given an event, it returns another event which fires only when the event
|
|
73
|
-
* element changes.
|
|
74
|
-
*/
|
|
75
|
-
function latch<T>(event: Event<T>): Event<T>;
|
|
76
|
-
/**
|
|
77
|
-
* Buffers the provided event until a first listener comes
|
|
78
|
-
* along, at which point fire all the events at once and
|
|
79
|
-
* pipe the event from then on.
|
|
80
|
-
*
|
|
81
|
-
* ```typescript
|
|
82
|
-
* const emitter = new Emitter<number>();
|
|
83
|
-
* const event = emitter.event;
|
|
84
|
-
* const bufferedEvent = buffer(event);
|
|
85
|
-
*
|
|
86
|
-
* emitter.fire(1);
|
|
87
|
-
* emitter.fire(2);
|
|
88
|
-
* emitter.fire(3);
|
|
89
|
-
* // nothing...
|
|
90
|
-
*
|
|
91
|
-
* const listener = bufferedEvent(num => console.log(num));
|
|
92
|
-
* // 1, 2, 3
|
|
93
|
-
*
|
|
94
|
-
* emitter.fire(4);
|
|
95
|
-
* // 4
|
|
96
|
-
* ```
|
|
97
|
-
*/
|
|
98
|
-
function buffer<T>(event: Event<T>, nextTick?: boolean, _buffer?: T[]): Event<T>;
|
|
99
|
-
interface IChainableEvent<T> {
|
|
100
|
-
event: Event<T>;
|
|
101
|
-
map<O>(fn: (i: T) => O): IChainableEvent<O>;
|
|
102
|
-
forEach(fn: (i: T) => void): IChainableEvent<T>;
|
|
103
|
-
filter(fn: (e: T) => boolean): IChainableEvent<T>;
|
|
104
|
-
filter<R>(fn: (e: T | R) => e is R): IChainableEvent<R>;
|
|
105
|
-
reduce<R>(merge: (last: R | undefined, event: T) => R, initial?: R): IChainableEvent<R>;
|
|
106
|
-
latch(): IChainableEvent<T>;
|
|
107
|
-
debounce(merge: (last: T | undefined, event: T) => T, delay?: number, leading?: boolean, leakWarningThreshold?: number): IChainableEvent<T>;
|
|
108
|
-
debounce<R>(merge: (last: R | undefined, event: T) => R, delay?: number, leading?: boolean, leakWarningThreshold?: number): IChainableEvent<R>;
|
|
109
|
-
on(listener: (e: T) => any, thisArgs?: any, disposables?: IDisposable[] | DisposableStore): IDisposable;
|
|
110
|
-
once(listener: (e: T) => any, thisArgs?: any, disposables?: IDisposable[]): IDisposable;
|
|
111
|
-
}
|
|
112
|
-
function chain<T>(event: Event<T>): IChainableEvent<T>;
|
|
113
|
-
interface NodeEventEmitter {
|
|
114
|
-
on(event: string | symbol, listener: Function): unknown;
|
|
115
|
-
removeListener(event: string | symbol, listener: Function): unknown;
|
|
116
|
-
}
|
|
117
|
-
function fromNodeEventEmitter<T>(emitter: NodeEventEmitter, eventName: string, map?: (...args: any[]) => T): Event<T>;
|
|
118
|
-
interface DOMEventEmitter {
|
|
119
|
-
addEventListener(event: string | symbol, listener: Function): void;
|
|
120
|
-
removeEventListener(event: string | symbol, listener: Function): void;
|
|
121
|
-
}
|
|
122
|
-
function fromDOMEventEmitter<T>(emitter: DOMEventEmitter, eventName: string, map?: (...args: any[]) => T): Event<T>;
|
|
123
|
-
function fromPromise<T = any>(promise: Promise<T>): Event<undefined>;
|
|
124
|
-
function toPromise<T>(event: Event<T>): Promise<T>;
|
|
125
|
-
}
|
|
126
|
-
declare type Listener<T> = [(e: T) => void, any] | ((e: T) => void);
|
|
127
|
-
export interface EmitterOptions {
|
|
128
|
-
onFirstListenerAdd?: Function;
|
|
129
|
-
onFirstListenerDidAdd?: Function;
|
|
130
|
-
onListenerDidAdd?: Function;
|
|
131
|
-
onLastListenerRemove?: Function;
|
|
132
|
-
leakWarningThreshold?: number;
|
|
133
|
-
}
|
|
134
|
-
export declare function setGlobalLeakWarningThreshold(n: number): IDisposable;
|
|
135
|
-
/**
|
|
136
|
-
* The Emitter can be used to expose an Event to the public
|
|
137
|
-
* to fire it from the insides.
|
|
138
|
-
* Sample:
|
|
139
|
-
class Document {
|
|
140
|
-
|
|
141
|
-
private readonly _onDidChange = new Emitter<(value:string)=>any>();
|
|
142
|
-
|
|
143
|
-
public onDidChange = this._onDidChange.event;
|
|
144
|
-
|
|
145
|
-
// getter-style
|
|
146
|
-
// get onDidChange(): Event<(value:string)=>any> {
|
|
147
|
-
// return this._onDidChange.event;
|
|
148
|
-
// }
|
|
149
|
-
|
|
150
|
-
private _doIt() {
|
|
151
|
-
//...
|
|
152
|
-
this._onDidChange.fire(value);
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
*/
|
|
156
|
-
export declare class Emitter<T> {
|
|
157
|
-
private static readonly _noop;
|
|
158
|
-
private readonly _options?;
|
|
159
|
-
private readonly _leakageMon?;
|
|
160
|
-
private _disposed;
|
|
161
|
-
private _event?;
|
|
162
|
-
private _deliveryQueue?;
|
|
163
|
-
protected _listeners?: LinkedList<Listener<T>>;
|
|
164
|
-
constructor(options?: EmitterOptions);
|
|
165
|
-
/**
|
|
166
|
-
* For the public to allow to subscribe
|
|
167
|
-
* to events from this Emitter
|
|
168
|
-
*/
|
|
169
|
-
get event(): Event<T>;
|
|
170
|
-
/**
|
|
171
|
-
* To be kept private to fire an event to
|
|
172
|
-
* subscribers
|
|
173
|
-
*/
|
|
174
|
-
fire(event: T): void;
|
|
175
|
-
dispose(): void;
|
|
176
|
-
}
|
|
177
|
-
export declare class PauseableEmitter<T> extends Emitter<T> {
|
|
178
|
-
private _isPaused;
|
|
179
|
-
private _eventQueue;
|
|
180
|
-
private _mergeFn?;
|
|
181
|
-
constructor(options?: EmitterOptions & {
|
|
182
|
-
merge?: (input: T[]) => T;
|
|
183
|
-
});
|
|
184
|
-
pause(): void;
|
|
185
|
-
resume(): void;
|
|
186
|
-
fire(event: T): void;
|
|
187
|
-
}
|
|
188
|
-
export interface IWaitUntil {
|
|
189
|
-
waitUntil(thenable: Promise<any>): void;
|
|
190
|
-
}
|
|
191
|
-
export declare class AsyncEmitter<T extends IWaitUntil> extends Emitter<T> {
|
|
192
|
-
private _asyncDeliveryQueue?;
|
|
193
|
-
fireAsync(data: Omit<T, 'waitUntil'>, token: CancellationToken, promiseJoin?: (p: Promise<any>, listener: Function) => Promise<any>): Promise<void>;
|
|
194
|
-
}
|
|
195
|
-
export declare class EventMultiplexer<T> implements IDisposable {
|
|
196
|
-
private readonly emitter;
|
|
197
|
-
private hasListeners;
|
|
198
|
-
private events;
|
|
199
|
-
constructor();
|
|
200
|
-
get event(): Event<T>;
|
|
201
|
-
add(event: Event<T>): IDisposable;
|
|
202
|
-
private onFirstListenerAdd;
|
|
203
|
-
private onLastListenerRemove;
|
|
204
|
-
private hook;
|
|
205
|
-
private unhook;
|
|
206
|
-
dispose(): void;
|
|
207
|
-
}
|
|
208
|
-
/**
|
|
209
|
-
* The EventBufferer is useful in situations in which you want
|
|
210
|
-
* to delay firing your events during some code.
|
|
211
|
-
* You can wrap that code and be sure that the event will not
|
|
212
|
-
* be fired during that wrap.
|
|
213
|
-
*
|
|
214
|
-
* ```
|
|
215
|
-
* const emitter: Emitter;
|
|
216
|
-
* const delayer = new EventDelayer();
|
|
217
|
-
* const delayedEvent = delayer.wrapEvent(emitter.event);
|
|
218
|
-
*
|
|
219
|
-
* delayedEvent(console.log);
|
|
220
|
-
*
|
|
221
|
-
* delayer.bufferEvents(() => {
|
|
222
|
-
* emitter.fire(); // event will not be fired yet
|
|
223
|
-
* });
|
|
224
|
-
*
|
|
225
|
-
* // event will only be fired at this point
|
|
226
|
-
* ```
|
|
227
|
-
*/
|
|
228
|
-
export declare class EventBufferer {
|
|
229
|
-
private buffers;
|
|
230
|
-
wrapEvent<T>(event: Event<T>): Event<T>;
|
|
231
|
-
bufferEvents<R = void>(fn: () => R): R;
|
|
232
|
-
}
|
|
233
|
-
/**
|
|
234
|
-
* A Relay is an event forwarder which functions as a replugabble event pipe.
|
|
235
|
-
* Once created, you can connect an input event to it and it will simply forward
|
|
236
|
-
* events from that input event through its own `event` property. The `input`
|
|
237
|
-
* can be changed at any point in time.
|
|
238
|
-
*/
|
|
239
|
-
export declare class Relay<T> implements IDisposable {
|
|
240
|
-
private listening;
|
|
241
|
-
private inputEvent;
|
|
242
|
-
private inputEventListener;
|
|
243
|
-
private readonly emitter;
|
|
244
|
-
readonly event: Event<T>;
|
|
245
|
-
set input(event: Event<T>);
|
|
246
|
-
dispose(): void;
|
|
247
|
-
}
|
|
248
|
-
export {};
|