@leyyo/http-mock 1.1.1
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/LICENSE +21 -0
- package/README.md +8 -0
- package/dist/application/index.d.ts +1 -0
- package/dist/application/index.js +18 -0
- package/dist/application/index.js.map +1 -0
- package/dist/application/mock-application.d.ts +70 -0
- package/dist/application/mock-application.js +120 -0
- package/dist/application/mock-application.js.map +1 -0
- package/dist/http-mock.d.ts +10 -0
- package/dist/http-mock.js +20 -0
- package/dist/http-mock.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +18 -0
- package/dist/index.js.map +1 -0
- package/dist/internal-component.d.ts +3 -0
- package/dist/internal-component.js +8 -0
- package/dist/internal-component.js.map +1 -0
- package/dist/request/index-types.d.ts +20 -0
- package/dist/request/index-types.js +3 -0
- package/dist/request/index-types.js.map +1 -0
- package/dist/request/index.d.ts +2 -0
- package/dist/request/index.js +19 -0
- package/dist/request/index.js.map +1 -0
- package/dist/request/mock-request.d.ts +121 -0
- package/dist/request/mock-request.js +229 -0
- package/dist/request/mock-request.js.map +1 -0
- package/dist/response/index-types.d.ts +21 -0
- package/dist/response/index-types.js +3 -0
- package/dist/response/index-types.js.map +1 -0
- package/dist/response/index.d.ts +2 -0
- package/dist/response/index.js +19 -0
- package/dist/response/index.js.map +1 -0
- package/dist/response/mock-response.d.ts +119 -0
- package/dist/response/mock-response.js +332 -0
- package/dist/response/mock-response.js.map +1 -0
- package/dist/server.d.ts +0 -0
- package/dist/server.js +2 -0
- package/dist/server.js.map +1 -0
- package/package.json +63 -0
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.MockRequest = void 0;
|
|
13
|
+
const core_1 = require("@leyyo/core");
|
|
14
|
+
const fqn_1 = require("@leyyo/fqn");
|
|
15
|
+
const internal_component_1 = require("../internal-component");
|
|
16
|
+
const application_1 = require("../application");
|
|
17
|
+
// noinspection JSUnusedGlobalSymbols
|
|
18
|
+
let MockRequest = class MockRequest {
|
|
19
|
+
constructor(service, origin, custom) {
|
|
20
|
+
var _a, _b;
|
|
21
|
+
if (!core_1.leyyo.is.object(service)) {
|
|
22
|
+
service = {
|
|
23
|
+
method: core_1.HttpMethod.GET,
|
|
24
|
+
url: '/',
|
|
25
|
+
body: {},
|
|
26
|
+
headers: {},
|
|
27
|
+
cookies: {},
|
|
28
|
+
signedCookies: {}
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
this.isFake = true;
|
|
32
|
+
this.method = (_a = service === null || service === void 0 ? void 0 : service.method) !== null && _a !== void 0 ? _a : core_1.HttpMethod.GET;
|
|
33
|
+
this.url = (_b = service === null || service === void 0 ? void 0 : service.url) !== null && _b !== void 0 ? _b : '';
|
|
34
|
+
this.body = service === null || service === void 0 ? void 0 : service.body;
|
|
35
|
+
this.headers = core_1.leyyo.is.object(service === null || service === void 0 ? void 0 : service.headers) ? service.headers : {};
|
|
36
|
+
this.cookies = core_1.leyyo.is.object(service === null || service === void 0 ? void 0 : service.cookies) ? service.cookies : {};
|
|
37
|
+
this.signedCookies = core_1.leyyo.is.object(service === null || service === void 0 ? void 0 : service.signedCookies) ? service.signedCookies : {};
|
|
38
|
+
if (!(origin === null || origin === void 0 ? void 0 : origin.app)) {
|
|
39
|
+
this.app = new application_1.MockApplication();
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
this.app = origin.app;
|
|
43
|
+
}
|
|
44
|
+
if (origin) {
|
|
45
|
+
for (const [prop, value] of Object.entries(origin)) {
|
|
46
|
+
switch (prop) {
|
|
47
|
+
case 'method':
|
|
48
|
+
case 'url':
|
|
49
|
+
case 'body':
|
|
50
|
+
break;
|
|
51
|
+
case 'headers':
|
|
52
|
+
case 'cookies':
|
|
53
|
+
case 'signedCookies':
|
|
54
|
+
if (core_1.leyyo.is.object(value)) {
|
|
55
|
+
for (const [k, v] of Object.entries(value)) {
|
|
56
|
+
if (this[prop][k] === undefined) {
|
|
57
|
+
this[prop][k] = v;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
break;
|
|
62
|
+
default:
|
|
63
|
+
switch (typeof value) {
|
|
64
|
+
case "symbol":
|
|
65
|
+
case "bigint":
|
|
66
|
+
case "number":
|
|
67
|
+
case "string":
|
|
68
|
+
case "boolean":
|
|
69
|
+
this[prop] = value;
|
|
70
|
+
break;
|
|
71
|
+
case "object":
|
|
72
|
+
if (core_1.leyyo.is.array(value, true)) {
|
|
73
|
+
this[prop] = [...value];
|
|
74
|
+
}
|
|
75
|
+
else if (core_1.leyyo.is.object(value, true)) {
|
|
76
|
+
this[prop] = Object.assign({}, value);
|
|
77
|
+
}
|
|
78
|
+
break;
|
|
79
|
+
}
|
|
80
|
+
break;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
if (!this.route) {
|
|
85
|
+
this.route = {
|
|
86
|
+
path: this.path,
|
|
87
|
+
stack: [],
|
|
88
|
+
methods: { [this.method]: true, },
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
if (core_1.leyyo.is.object(custom)) {
|
|
92
|
+
for (const [key, value] of Object.entries(custom)) {
|
|
93
|
+
if (typeof this[key] !== undefined) {
|
|
94
|
+
LOG.warn('request.forbidden.custom', { key, actual: typeof value });
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
this[key] = value;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
[Symbol.asyncIterator]() {
|
|
103
|
+
throw new Error("Method not implemented.");
|
|
104
|
+
}
|
|
105
|
+
_construct(callback) {
|
|
106
|
+
(0, core_1.emptyFn)();
|
|
107
|
+
}
|
|
108
|
+
_destroy(error, callback) {
|
|
109
|
+
(0, core_1.emptyFn)();
|
|
110
|
+
}
|
|
111
|
+
_read(size) {
|
|
112
|
+
(0, core_1.emptyFn)();
|
|
113
|
+
}
|
|
114
|
+
destroy(error) {
|
|
115
|
+
return this;
|
|
116
|
+
}
|
|
117
|
+
read(size) {
|
|
118
|
+
return undefined;
|
|
119
|
+
}
|
|
120
|
+
push(chunk, encoding) {
|
|
121
|
+
return false;
|
|
122
|
+
}
|
|
123
|
+
isPaused() {
|
|
124
|
+
return false;
|
|
125
|
+
}
|
|
126
|
+
resume() {
|
|
127
|
+
return this;
|
|
128
|
+
}
|
|
129
|
+
setEncoding(encoding) {
|
|
130
|
+
return this;
|
|
131
|
+
}
|
|
132
|
+
setTimeout(msecs, callback) {
|
|
133
|
+
return this;
|
|
134
|
+
}
|
|
135
|
+
unpipe(destination) {
|
|
136
|
+
return this;
|
|
137
|
+
}
|
|
138
|
+
unshift(chunk, encoding) {
|
|
139
|
+
(0, core_1.emptyFn)();
|
|
140
|
+
}
|
|
141
|
+
wrap(stream) {
|
|
142
|
+
return undefined;
|
|
143
|
+
}
|
|
144
|
+
accepts(...type) {
|
|
145
|
+
return false;
|
|
146
|
+
}
|
|
147
|
+
acceptsCharsets(...charset) {
|
|
148
|
+
return false;
|
|
149
|
+
}
|
|
150
|
+
acceptsEncodings(...encoding) {
|
|
151
|
+
return false;
|
|
152
|
+
}
|
|
153
|
+
acceptsLanguages(...lang) {
|
|
154
|
+
return false;
|
|
155
|
+
}
|
|
156
|
+
addListener(eventName, listener) {
|
|
157
|
+
return this;
|
|
158
|
+
}
|
|
159
|
+
emit(eventName, ...args) {
|
|
160
|
+
return false;
|
|
161
|
+
}
|
|
162
|
+
eventNames() {
|
|
163
|
+
return [];
|
|
164
|
+
}
|
|
165
|
+
get(name) {
|
|
166
|
+
return this.header(name);
|
|
167
|
+
}
|
|
168
|
+
getMaxListeners() {
|
|
169
|
+
return 0;
|
|
170
|
+
}
|
|
171
|
+
header(name) {
|
|
172
|
+
return (typeof name === 'string') ? this.headers[name] : undefined;
|
|
173
|
+
}
|
|
174
|
+
is(type) {
|
|
175
|
+
return undefined;
|
|
176
|
+
}
|
|
177
|
+
listenerCount(eventName) {
|
|
178
|
+
return 0;
|
|
179
|
+
}
|
|
180
|
+
listeners(eventName) {
|
|
181
|
+
return [];
|
|
182
|
+
}
|
|
183
|
+
off(eventName, listener) {
|
|
184
|
+
return this;
|
|
185
|
+
}
|
|
186
|
+
on(eventName, listener) {
|
|
187
|
+
return this;
|
|
188
|
+
}
|
|
189
|
+
once(eventName, listener) {
|
|
190
|
+
return this;
|
|
191
|
+
}
|
|
192
|
+
param(name, defaultValue) {
|
|
193
|
+
return (typeof name === 'string') ? this.params[name] : undefined;
|
|
194
|
+
}
|
|
195
|
+
pause() {
|
|
196
|
+
return this;
|
|
197
|
+
}
|
|
198
|
+
pipe(destination, options) {
|
|
199
|
+
return destination;
|
|
200
|
+
}
|
|
201
|
+
prependListener(eventName, listener) {
|
|
202
|
+
return this;
|
|
203
|
+
}
|
|
204
|
+
prependOnceListener(eventName, listener) {
|
|
205
|
+
return this;
|
|
206
|
+
}
|
|
207
|
+
range(size, options) {
|
|
208
|
+
return undefined;
|
|
209
|
+
}
|
|
210
|
+
rawListeners(eventName) {
|
|
211
|
+
return [];
|
|
212
|
+
}
|
|
213
|
+
removeAllListeners(event) {
|
|
214
|
+
return this;
|
|
215
|
+
}
|
|
216
|
+
removeListener(eventName, listener) {
|
|
217
|
+
return this;
|
|
218
|
+
}
|
|
219
|
+
setMaxListeners(n) {
|
|
220
|
+
return this;
|
|
221
|
+
}
|
|
222
|
+
};
|
|
223
|
+
MockRequest = __decorate([
|
|
224
|
+
(0, fqn_1.Fqn)(...internal_component_1.FQN_NAME),
|
|
225
|
+
__metadata("design:paramtypes", [Object, Object, Object])
|
|
226
|
+
], MockRequest);
|
|
227
|
+
exports.MockRequest = MockRequest;
|
|
228
|
+
const LOG = core_1.logger.assign(MockRequest);
|
|
229
|
+
//# sourceMappingURL=mock-request.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-request.js","sourceRoot":"","sources":["../../src/request/mock-request.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { ArraySome, OneOrMore, Primitive, RecLike } from "@leyyo/core";
|
|
2
|
+
import { CookieOptions, Response } from "express";
|
|
3
|
+
export declare type ResponseData = ArraySome | RecLike | string | number | boolean | unknown;
|
|
4
|
+
export declare type ResponseErrorCallback = (error?: Error) => void;
|
|
5
|
+
export interface MockServicePreparedResponse {
|
|
6
|
+
status: number;
|
|
7
|
+
statusMessage: string;
|
|
8
|
+
headers: RecLike<OneOrMore<string>>;
|
|
9
|
+
cookies: RecLike<ResponseCookie>;
|
|
10
|
+
clearedCookies: RecLike<CookieOptions>;
|
|
11
|
+
data: ResponseData;
|
|
12
|
+
locals: RecLike;
|
|
13
|
+
}
|
|
14
|
+
export declare type MockResponseResolve = (dto: MockServicePreparedResponse) => void;
|
|
15
|
+
export interface ResponseCookie {
|
|
16
|
+
value: Primitive;
|
|
17
|
+
opt: CookieOptions;
|
|
18
|
+
}
|
|
19
|
+
export interface MockResponseLike<D = ResponseData, L = RecLike> extends Response<D, L> {
|
|
20
|
+
isFake: boolean;
|
|
21
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-types.js","sourceRoot":"","sources":["../../src/response/index-types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./index-types"), exports);
|
|
18
|
+
__exportStar(require("./mock-response"), exports);
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/response/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA8B;AAC9B,kDAAgC"}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
3
|
+
/// <reference types="node" />
|
|
4
|
+
import { Application, CookieOptions, Errback, Request, Response } from "express";
|
|
5
|
+
import { RecLike, OneOrMore, FuncLike, Key } from "@leyyo/core";
|
|
6
|
+
import { OutgoingHttpHeader, OutgoingHttpHeaders } from "http";
|
|
7
|
+
import { Socket } from "net";
|
|
8
|
+
import { MockResponseLike, MockResponseResolve, ResponseData, ResponseErrorCallback } from "./index-types";
|
|
9
|
+
export declare class MockResponse<D = ResponseData, L extends RecLike = RecLike> implements MockResponseLike<D, L>, RecLike {
|
|
10
|
+
private _headersSent;
|
|
11
|
+
readonly isFake: boolean;
|
|
12
|
+
[key: string]: unknown;
|
|
13
|
+
private readonly _resolver;
|
|
14
|
+
readonly app: Application;
|
|
15
|
+
readonly locals: L;
|
|
16
|
+
sendDate: boolean;
|
|
17
|
+
statusMessage: string;
|
|
18
|
+
private _headers;
|
|
19
|
+
private _cookies;
|
|
20
|
+
private _clearedCookies;
|
|
21
|
+
private _data;
|
|
22
|
+
private _status;
|
|
23
|
+
charset: string;
|
|
24
|
+
chunkedEncoding: boolean;
|
|
25
|
+
destroyed: boolean;
|
|
26
|
+
readonly connection: Socket | null;
|
|
27
|
+
finished: boolean;
|
|
28
|
+
readonly req: Request;
|
|
29
|
+
useChunkedEncodingByDefault: boolean;
|
|
30
|
+
readonly writable: boolean;
|
|
31
|
+
readonly writableCorked: number;
|
|
32
|
+
readonly writableEnded: boolean;
|
|
33
|
+
readonly writableFinished: boolean;
|
|
34
|
+
readonly writableHighWaterMark: number;
|
|
35
|
+
readonly writableLength: number;
|
|
36
|
+
readonly writableObjectMode: boolean;
|
|
37
|
+
shouldKeepAlive: boolean;
|
|
38
|
+
readonly socket: Socket | null;
|
|
39
|
+
statusCode: number;
|
|
40
|
+
writeHead: ((statusCode: number, statusMessage?: string, headers?: (OutgoingHttpHeaders | OutgoingHttpHeader[])) => this) & ((statusCode: number, headers?: (OutgoingHttpHeaders | OutgoingHttpHeader[])) => this);
|
|
41
|
+
closed: boolean;
|
|
42
|
+
errored: Error;
|
|
43
|
+
writableNeedDrain: boolean;
|
|
44
|
+
constructor(resolver: MockResponseResolve, origin?: Response);
|
|
45
|
+
private _send;
|
|
46
|
+
private _setHeader;
|
|
47
|
+
private _setCookie;
|
|
48
|
+
private _cancelCookieClear;
|
|
49
|
+
private _clear;
|
|
50
|
+
_construct(callback?: ResponseErrorCallback): void;
|
|
51
|
+
_destroy(error: Error | null, callback: ResponseErrorCallback): void;
|
|
52
|
+
_final(callback: ResponseErrorCallback): void;
|
|
53
|
+
_write(chunk: unknown, encoding: BufferEncoding, callback: ResponseErrorCallback): void;
|
|
54
|
+
_writev(chunks: Array<{
|
|
55
|
+
chunk: unknown;
|
|
56
|
+
encoding: BufferEncoding;
|
|
57
|
+
}>, callback: ResponseErrorCallback): void;
|
|
58
|
+
addTrailers(headers: OutgoingHttpHeaders | Array<[string, string]>): void;
|
|
59
|
+
assignSocket(socket: Socket): void;
|
|
60
|
+
get headersSent(): boolean;
|
|
61
|
+
cork(): void;
|
|
62
|
+
destroy(error: Error | undefined): this;
|
|
63
|
+
detachSocket(socket: Socket): void;
|
|
64
|
+
flushHeaders(): void;
|
|
65
|
+
getHeader(name: string): number | string | string[] | undefined;
|
|
66
|
+
getHeaderNames(): string[];
|
|
67
|
+
getHeaders(): OutgoingHttpHeaders;
|
|
68
|
+
hasHeader(name: string): boolean;
|
|
69
|
+
json(data: D): this;
|
|
70
|
+
jsonp(data: D): this;
|
|
71
|
+
pipe<T>(destination: T, options: {
|
|
72
|
+
end?: boolean | undefined;
|
|
73
|
+
} | undefined): T;
|
|
74
|
+
removeHeader(name: string): void;
|
|
75
|
+
send(body?: unknown): this;
|
|
76
|
+
setDefaultEncoding(encoding: BufferEncoding): this;
|
|
77
|
+
setHeader(name: string, value: number | string | ReadonlyArray<string>): this;
|
|
78
|
+
setTimeout(msecs: number, callback: (() => void) | undefined): this;
|
|
79
|
+
uncork(): void;
|
|
80
|
+
writeContinue(callback: (() => void) | undefined): void;
|
|
81
|
+
writeProcessing(): void;
|
|
82
|
+
addListener(eventName: string | symbol, listener: FuncLike): this;
|
|
83
|
+
append(key: string, value?: OneOrMore<string>): this;
|
|
84
|
+
attachment(filename?: string): this;
|
|
85
|
+
clearCookie(name: string, options?: CookieOptions): this;
|
|
86
|
+
contentType(type: string): this;
|
|
87
|
+
cookie(key: string, value: unknown, option?: CookieOptions): this;
|
|
88
|
+
download(path: string, fn?: Errback | string, err?: unknown, errBack?: Errback): void;
|
|
89
|
+
emit(eventName: string | symbol, ...args: unknown[]): boolean;
|
|
90
|
+
end(): this;
|
|
91
|
+
eventNames(): Array<string | symbol>;
|
|
92
|
+
format(obj: unknown): this;
|
|
93
|
+
get(field: string): string;
|
|
94
|
+
getMaxListeners(): number;
|
|
95
|
+
header(field: unknown, value?: OneOrMore<string>): this;
|
|
96
|
+
links(map: unknown): this;
|
|
97
|
+
listenerCount(eventName: string | symbol): number;
|
|
98
|
+
listeners(eventName: string | symbol): Array<FuncLike>;
|
|
99
|
+
location(url: string): this;
|
|
100
|
+
off(eventName: string | symbol, listener: FuncLike): this;
|
|
101
|
+
on(eventName: string | symbol, listener: FuncLike): this;
|
|
102
|
+
once(eventName: string | symbol, listener: FuncLike): this;
|
|
103
|
+
prependListener(eventName: string | symbol, listener: FuncLike): this;
|
|
104
|
+
prependOnceListener(eventName: string | symbol, listener: FuncLike): this;
|
|
105
|
+
rawListeners(eventName: string | symbol): Function[];
|
|
106
|
+
redirect(url: Key, status?: Key): void;
|
|
107
|
+
removeAllListeners(event?: string | symbol): this;
|
|
108
|
+
removeListener(eventName: string | symbol, listener: FuncLike): this;
|
|
109
|
+
render(view: string, options?: RecLike | ((err: Error, html: string) => void), callback?: (err: Error, html: string) => void): void;
|
|
110
|
+
sendFile(path: string, fn?: unknown, err?: Errback): void;
|
|
111
|
+
sendStatus(status: number): this;
|
|
112
|
+
sendfile(path: string, options?: unknown, fn?: Errback): void;
|
|
113
|
+
set(field: unknown, value?: string | string[]): this;
|
|
114
|
+
setMaxListeners(n: number): this;
|
|
115
|
+
status(status: number): this;
|
|
116
|
+
type(type: string): this;
|
|
117
|
+
vary(field: string): this;
|
|
118
|
+
write(buffer: Uint8Array | string, cb?: ResponseErrorCallback | BufferEncoding, cb2?: ResponseErrorCallback): boolean;
|
|
119
|
+
}
|