@villedemontreal/http-request 7.4.4
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 +216 -0
- package/dist/src/config/configs.d.ts +38 -0
- package/dist/src/config/configs.js +63 -0
- package/dist/src/config/configs.js.map +1 -0
- package/dist/src/config/constants.d.ts +40 -0
- package/dist/src/config/constants.js +40 -0
- package/dist/src/config/constants.js.map +1 -0
- package/dist/src/config/init.d.ts +22 -0
- package/dist/src/config/init.js +50 -0
- package/dist/src/config/init.js.map +1 -0
- package/dist/src/httpUtils.d.ts +131 -0
- package/dist/src/httpUtils.js +363 -0
- package/dist/src/httpUtils.js.map +1 -0
- package/dist/src/httpUtils.test.d.ts +1 -0
- package/dist/src/httpUtils.test.js +628 -0
- package/dist/src/httpUtils.test.js.map +1 -0
- package/dist/src/index.d.ts +2 -0
- package/dist/src/index.js +24 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/utils/logger.d.ts +11 -0
- package/dist/src/utils/logger.js +54 -0
- package/dist/src/utils/logger.js.map +1 -0
- package/dist/src/utils/testingConfigurations.d.ts +9 -0
- package/dist/src/utils/testingConfigurations.js +18 -0
- package/dist/src/utils/testingConfigurations.js.map +1 -0
- package/package.json +67 -0
- package/src/config/configs.ts +74 -0
- package/src/config/constants.ts +54 -0
- package/src/config/init.ts +55 -0
- package/src/httpUtils.test.ts +764 -0
- package/src/httpUtils.ts +405 -0
- package/src/index.ts +8 -0
- package/src/utils/logger.ts +53 -0
- package/src/utils/testingConfigurations.ts +14 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"httpUtils.test.js","sourceRoot":"","sources":["../../src/httpUtils.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
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("./httpUtils"), exports);
|
|
18
|
+
// ==========================================
|
|
19
|
+
// We do not export the configs instance itself,
|
|
20
|
+
// only the "init()" method, so we can define
|
|
21
|
+
// required parameters.
|
|
22
|
+
// ==========================================
|
|
23
|
+
__exportStar(require("./config/init"), exports);
|
|
24
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAE5B,6CAA6C;AAC7C,gDAAgD;AAChD,6CAA6C;AAC7C,uBAAuB;AACvB,6CAA6C;AAC7C,gDAA8B"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ILogger } from '@villedemontreal/logger';
|
|
2
|
+
/**
|
|
3
|
+
* Creates a Logger.
|
|
4
|
+
*/
|
|
5
|
+
export declare function createLogger(name: string): ILogger;
|
|
6
|
+
/**
|
|
7
|
+
* A Logger that uses a dummy cid provider.
|
|
8
|
+
*
|
|
9
|
+
* Only use this when running the tests!
|
|
10
|
+
*/
|
|
11
|
+
export declare function getTestingLoggerCreator(): (name: string) => ILogger;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getTestingLoggerCreator = exports.createLogger = void 0;
|
|
4
|
+
const logger_1 = require("@villedemontreal/logger");
|
|
5
|
+
const configs_1 = require("../config/configs");
|
|
6
|
+
let testingLoggerLibInitialised = false;
|
|
7
|
+
/**
|
|
8
|
+
* Creates a Logger.
|
|
9
|
+
*/
|
|
10
|
+
function createLogger(name) {
|
|
11
|
+
// ==========================================
|
|
12
|
+
// We use a LazyLogger so the real Logger
|
|
13
|
+
// is only created when the first
|
|
14
|
+
// log is actually performed... At that point,
|
|
15
|
+
// our "configs.loggerCreator" configuration
|
|
16
|
+
// must have been set by the code using our library!
|
|
17
|
+
//
|
|
18
|
+
// This pattern allows calling code to import
|
|
19
|
+
// modules from us in which a logger is
|
|
20
|
+
// created in the global scope :
|
|
21
|
+
//
|
|
22
|
+
// let logger = createLogger('someName');
|
|
23
|
+
//
|
|
24
|
+
// Without a Lazy Logger, the library configurations
|
|
25
|
+
// would at that moment *not* have been set yet
|
|
26
|
+
// (by the calling code) and an Error would be thrown
|
|
27
|
+
// because the "configs.loggerCreator" is required.
|
|
28
|
+
// ==========================================
|
|
29
|
+
return new logger_1.LazyLogger(name, (nameArg) => {
|
|
30
|
+
return configs_1.configs.loggerCreator(nameArg);
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
exports.createLogger = createLogger;
|
|
34
|
+
function initTestingLoggerConfigs() {
|
|
35
|
+
const loggerConfig = new logger_1.LoggerConfigs(() => 'test-cid');
|
|
36
|
+
loggerConfig.setLogLevel(logger_1.LogLevel.DEBUG);
|
|
37
|
+
(0, logger_1.initLogger)(loggerConfig);
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* A Logger that uses a dummy cid provider.
|
|
41
|
+
*
|
|
42
|
+
* Only use this when running the tests!
|
|
43
|
+
*/
|
|
44
|
+
function getTestingLoggerCreator() {
|
|
45
|
+
return (name) => {
|
|
46
|
+
if (!testingLoggerLibInitialised) {
|
|
47
|
+
initTestingLoggerConfigs();
|
|
48
|
+
testingLoggerLibInitialised = true;
|
|
49
|
+
}
|
|
50
|
+
return new logger_1.Logger(name);
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
exports.getTestingLoggerCreator = getTestingLoggerCreator;
|
|
54
|
+
//# sourceMappingURL=logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/utils/logger.ts"],"names":[],"mappings":";;;AAAA,oDAA2G;AAC3G,+CAA4C;AAE5C,IAAI,2BAA2B,GAAG,KAAK,CAAC;AAExC;;GAEG;AACH,SAAgB,YAAY,CAAC,IAAY;IACvC,6CAA6C;IAC7C,yCAAyC;IACzC,iCAAiC;IACjC,8CAA8C;IAC9C,4CAA4C;IAC5C,oDAAoD;IACpD,EAAE;IACF,6CAA6C;IAC7C,uCAAuC;IACvC,gCAAgC;IAChC,EAAE;IACF,yCAAyC;IACzC,EAAE;IACF,oDAAoD;IACpD,+CAA+C;IAC/C,qDAAqD;IACrD,mDAAmD;IACnD,6CAA6C;IAC7C,OAAO,IAAI,mBAAU,CAAC,IAAI,EAAE,CAAC,OAAe,EAAE,EAAE;QAC9C,OAAO,iBAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;AACL,CAAC;AAtBD,oCAsBC;AAED,SAAS,wBAAwB;IAC/B,MAAM,YAAY,GAAkB,IAAI,sBAAa,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC;IACxE,YAAY,CAAC,WAAW,CAAC,iBAAQ,CAAC,KAAK,CAAC,CAAC;IACzC,IAAA,mBAAU,EAAC,YAAY,CAAC,CAAC;AAC3B,CAAC;AAED;;;;GAIG;AACH,SAAgB,uBAAuB;IACrC,OAAO,CAAC,IAAY,EAAW,EAAE;QAC/B,IAAI,CAAC,2BAA2B,EAAE;YAChC,wBAAwB,EAAE,CAAC;YAC3B,2BAA2B,GAAG,IAAI,CAAC;SACpC;QAED,OAAO,IAAI,eAAM,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC,CAAC;AACJ,CAAC;AATD,0DASC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Call this when your need to set
|
|
3
|
+
* *Testing* configurations to the current
|
|
4
|
+
* library, without the need for a calling code
|
|
5
|
+
* to do so.
|
|
6
|
+
*
|
|
7
|
+
* A test Correlation Id will be used!
|
|
8
|
+
*/
|
|
9
|
+
export declare function setTestingConfigurations(caseSensitive?: boolean): void;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.setTestingConfigurations = void 0;
|
|
4
|
+
const init_1 = require("../config/init");
|
|
5
|
+
const logger_1 = require("../utils/logger");
|
|
6
|
+
/**
|
|
7
|
+
* Call this when your need to set
|
|
8
|
+
* *Testing* configurations to the current
|
|
9
|
+
* library, without the need for a calling code
|
|
10
|
+
* to do so.
|
|
11
|
+
*
|
|
12
|
+
* A test Correlation Id will be used!
|
|
13
|
+
*/
|
|
14
|
+
function setTestingConfigurations(caseSensitive = false) {
|
|
15
|
+
(0, init_1.init)((0, logger_1.getTestingLoggerCreator)(), () => 'test-cid', caseSensitive);
|
|
16
|
+
}
|
|
17
|
+
exports.setTestingConfigurations = setTestingConfigurations;
|
|
18
|
+
//# sourceMappingURL=testingConfigurations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"testingConfigurations.js","sourceRoot":"","sources":["../../../src/utils/testingConfigurations.ts"],"names":[],"mappings":";;;AAAA,yCAAsC;AACtC,4CAA0D;AAE1D;;;;;;;GAOG;AACH,SAAgB,wBAAwB,CAAC,aAAa,GAAG,KAAK;IAC5D,IAAA,WAAI,EAAC,IAAA,gCAAuB,GAAE,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;AACnE,CAAC;AAFD,4DAEC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@villedemontreal/http-request",
|
|
3
|
+
"version": "7.4.4",
|
|
4
|
+
"description": "HTTP utilities - send HTTP requests with proper headers, etc.",
|
|
5
|
+
"main": "dist/src/index.js",
|
|
6
|
+
"typings": "dist/src",
|
|
7
|
+
"files": [
|
|
8
|
+
"src",
|
|
9
|
+
"dist"
|
|
10
|
+
],
|
|
11
|
+
"scripts": {
|
|
12
|
+
"start": "echo 'not yet implemented'",
|
|
13
|
+
"test": "mocha --require ts-node/register src/**/*.test.ts",
|
|
14
|
+
"compile": "node run compile",
|
|
15
|
+
"lint": "echo 'not yet implemented'",
|
|
16
|
+
"lint-fix": "echo 'not yet implemented'",
|
|
17
|
+
"prettier": "echo 'not yet implemented'",
|
|
18
|
+
"prettier-fix": "echo 'not yet implemented'",
|
|
19
|
+
"watch": "echo 'not yet implemented'"
|
|
20
|
+
},
|
|
21
|
+
"keywords": [
|
|
22
|
+
"montreal",
|
|
23
|
+
"http",
|
|
24
|
+
"https",
|
|
25
|
+
"request",
|
|
26
|
+
"node.js",
|
|
27
|
+
"utils"
|
|
28
|
+
],
|
|
29
|
+
"author": "Ville de Montréal",
|
|
30
|
+
"license": "MIT",
|
|
31
|
+
"dependencies": {
|
|
32
|
+
"@types/app-root-path": "1.2.4",
|
|
33
|
+
"@types/express": "4.17.13",
|
|
34
|
+
"@types/lodash": "4.14.182",
|
|
35
|
+
"@types/superagent": "4.1.15",
|
|
36
|
+
"@villedemontreal/general-utils": "5.16.6",
|
|
37
|
+
"@villedemontreal/logger": "6.5.6",
|
|
38
|
+
"app-root-path": "3.0.0",
|
|
39
|
+
"http-header-fields-typed": "1.3.0",
|
|
40
|
+
"lodash": "4.17.21",
|
|
41
|
+
"superagent": "7.1.6"
|
|
42
|
+
},
|
|
43
|
+
"peerDependencies": {},
|
|
44
|
+
"devDependencies": {
|
|
45
|
+
"@types/chai": "4.3.1",
|
|
46
|
+
"@types/fs-extra": "9.0.13",
|
|
47
|
+
"@types/mocha": "9.1.1",
|
|
48
|
+
"@types/nock": "10.0.3",
|
|
49
|
+
"@types/sinon": "10.0.12",
|
|
50
|
+
"@types/superagent": "4.1.15",
|
|
51
|
+
"@villedemontreal/scripting": "2.1.5",
|
|
52
|
+
"@villedemontreal/lint-config": "1.7.7",
|
|
53
|
+
"chai": "4.3.6",
|
|
54
|
+
"express": "4.18.1",
|
|
55
|
+
"fs-extra": "10.1.0",
|
|
56
|
+
"http-status-codes": "2.2.0",
|
|
57
|
+
"mocha": "9.2.2",
|
|
58
|
+
"mocha-jenkins-reporter": "0.4.7",
|
|
59
|
+
"nock": "13.2.8",
|
|
60
|
+
"sinon": "14.0.0",
|
|
61
|
+
"source-map-support": "0.5.21",
|
|
62
|
+
"superagent-mocker": "0.5.2",
|
|
63
|
+
"tslint": "6.1.2",
|
|
64
|
+
"ts-node": "^10.8.1",
|
|
65
|
+
"typescript": "4.7.4"
|
|
66
|
+
}
|
|
67
|
+
}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { ILogger } from '@villedemontreal/logger';
|
|
2
|
+
import * as _ from 'lodash';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Http Client Config
|
|
6
|
+
*/
|
|
7
|
+
export class Configs {
|
|
8
|
+
private _correlationIdProvider: () => string;
|
|
9
|
+
private _loggerCreator: (name: string) => ILogger;
|
|
10
|
+
private _urlCaseSensitive: boolean;
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Sets the Logger creator.
|
|
14
|
+
*/
|
|
15
|
+
public setLoggerCreator(loggerCreator: (name: string) => ILogger) {
|
|
16
|
+
this._loggerCreator = loggerCreator;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* The Logger creator
|
|
21
|
+
*/
|
|
22
|
+
get loggerCreator(): (name: string) => ILogger {
|
|
23
|
+
if (!this._loggerCreator) {
|
|
24
|
+
throw new Error(`The Logger Creator HAS to be set as a configuration! Please call the init(...) function first.`);
|
|
25
|
+
}
|
|
26
|
+
return this._loggerCreator;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Sets the Correlation Id provider.
|
|
31
|
+
*/
|
|
32
|
+
public setCorrelationIdProvider(correlationIdProvider: () => string) {
|
|
33
|
+
this._correlationIdProvider = correlationIdProvider;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* The Correlation Id provider
|
|
38
|
+
*/
|
|
39
|
+
get correlationIdProvider(): () => string {
|
|
40
|
+
if (!this._correlationIdProvider) {
|
|
41
|
+
throw new Error(
|
|
42
|
+
`The Correlation Id provider HAS to be set as a configuration! Please call the init(...) function first.`
|
|
43
|
+
);
|
|
44
|
+
}
|
|
45
|
+
return this._correlationIdProvider;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* The current Correlation Id.
|
|
50
|
+
*/
|
|
51
|
+
get correlationId(): string {
|
|
52
|
+
return this.correlationIdProvider();
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Sets the case sensitivity to use for the URLs.
|
|
57
|
+
*/
|
|
58
|
+
public setUrlCaseSensitive(urlCaseSensitive: boolean) {
|
|
59
|
+
this._urlCaseSensitive = urlCaseSensitive;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* Routing info
|
|
64
|
+
*/
|
|
65
|
+
get isUrlCaseSensitive() {
|
|
66
|
+
if (_.isNil(this._urlCaseSensitive)) {
|
|
67
|
+
throw new Error(
|
|
68
|
+
`The Case Sensitivity to use for the URLs HAS to be set as a configuration! Please call the init(...) function first.`
|
|
69
|
+
);
|
|
70
|
+
}
|
|
71
|
+
return this._urlCaseSensitive;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
export let configs: Configs = new Configs();
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { path as appRoot } from 'app-root-path';
|
|
2
|
+
import * as path from 'path';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Library constants
|
|
6
|
+
*/
|
|
7
|
+
export class Constants {
|
|
8
|
+
/**
|
|
9
|
+
* The library root. When this library is used
|
|
10
|
+
* as a dependency in a project, the "libRoot"
|
|
11
|
+
* will be the path to the dependency folder,
|
|
12
|
+
* inside the "node_modules".
|
|
13
|
+
*/
|
|
14
|
+
public libRoot: string;
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* The app root. When this library is used
|
|
18
|
+
* as a dependency in a project, the "appRoot"
|
|
19
|
+
* will be the path to the root project!
|
|
20
|
+
*/
|
|
21
|
+
public appRoot: string;
|
|
22
|
+
|
|
23
|
+
constructor() {
|
|
24
|
+
// From the "dist/src/config" folder
|
|
25
|
+
this.libRoot = path.normalize(__dirname + '/../../..');
|
|
26
|
+
this.appRoot = appRoot;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Requests constants
|
|
31
|
+
*/
|
|
32
|
+
get request() {
|
|
33
|
+
return {
|
|
34
|
+
/**
|
|
35
|
+
* Default timeout constants
|
|
36
|
+
*/
|
|
37
|
+
timeoutsDefault: {
|
|
38
|
+
/**
|
|
39
|
+
* The default number of milliseconds to wait
|
|
40
|
+
* for the server to start sending data.
|
|
41
|
+
*/
|
|
42
|
+
response: 30000,
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* The default number of milliseconds to wait
|
|
46
|
+
* for the data to finish loading.
|
|
47
|
+
*/
|
|
48
|
+
deadline: 60000
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
export let constants: Constants = new Constants();
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { ILogger } from '@villedemontreal/logger';
|
|
2
|
+
import * as _ from 'lodash';
|
|
3
|
+
import { configs } from './configs';
|
|
4
|
+
|
|
5
|
+
let libIsInited: boolean = false;
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Inits the library.
|
|
9
|
+
*/
|
|
10
|
+
export function init(
|
|
11
|
+
loggerCreator: (name: string) => ILogger,
|
|
12
|
+
correlationIdProvider: () => string,
|
|
13
|
+
/**
|
|
14
|
+
* The case sensitivity to use for the URLs.
|
|
15
|
+
*
|
|
16
|
+
* In an API based on "@villemontreal/generator-mtl-node-api",
|
|
17
|
+
* you need to pass `configs.routing.caseSensitive` here!
|
|
18
|
+
*/
|
|
19
|
+
urlCaseSensitive: boolean
|
|
20
|
+
): void {
|
|
21
|
+
if (!loggerCreator) {
|
|
22
|
+
throw new Error(`The Logger Creator is required.`);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
if (!correlationIdProvider) {
|
|
26
|
+
throw new Error(`The Correlation Id provider is required.`);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
if (_.isNil(urlCaseSensitive)) {
|
|
30
|
+
throw new Error(`The Case Sensitivity to use for the URLs is required.`);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
configs.setLoggerCreator(loggerCreator);
|
|
34
|
+
configs.setCorrelationIdProvider(correlationIdProvider);
|
|
35
|
+
configs.setUrlCaseSensitive(urlCaseSensitive);
|
|
36
|
+
|
|
37
|
+
// ==========================================
|
|
38
|
+
// Set as being "properly initialized".
|
|
39
|
+
// At the very end of the "init()" function!
|
|
40
|
+
// ==========================================
|
|
41
|
+
libIsInited = true;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Is the library properly initialized?
|
|
46
|
+
*
|
|
47
|
+
* This function MUST be named "isInited()"!
|
|
48
|
+
* Code using this library may loop over all its "@villemontreal"
|
|
49
|
+
* dependencies and, if one of those exports a "isInited" fonction,
|
|
50
|
+
* it will enforce that the lib has been properly initialized before
|
|
51
|
+
* starting...
|
|
52
|
+
*/
|
|
53
|
+
export function isInited(): boolean {
|
|
54
|
+
return libIsInited;
|
|
55
|
+
}
|