@maplibre/maplibre-react-native 11.0.0-alpha.17 → 11.0.0-alpha.18
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/android/src/main/java/org/maplibre/reactnative/MLRNPackage.kt +6 -6
- package/android/src/main/java/org/maplibre/reactnative/modules/MLRNLogModule.kt +99 -0
- package/ios/modules/logging/MLRNLogModule.h +10 -0
- package/ios/modules/logging/MLRNLogModule.mm +39 -0
- package/ios/modules/logging/MLRNLogging.h +15 -2
- package/ios/modules/logging/MLRNLogging.m +22 -55
- package/lib/commonjs/components/map-view/MapView.js +3 -3
- package/lib/commonjs/components/map-view/MapView.js.map +1 -1
- package/lib/commonjs/index.js +4 -4
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/modules/log/LogManager.js +99 -0
- package/lib/commonjs/modules/log/LogManager.js.map +1 -0
- package/lib/commonjs/modules/log/NativeLogModule.js +9 -0
- package/lib/commonjs/modules/log/NativeLogModule.js.map +1 -0
- package/lib/module/components/map-view/MapView.js +3 -3
- package/lib/module/components/map-view/MapView.js.map +1 -1
- package/lib/module/index.js +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/modules/log/LogManager.js +96 -0
- package/lib/module/modules/log/LogManager.js.map +1 -0
- package/lib/module/modules/log/NativeLogModule.js +5 -0
- package/lib/module/modules/log/NativeLogModule.js.map +1 -0
- package/lib/typescript/commonjs/src/index.d.ts +1 -1
- package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/log/LogManager.d.ts +45 -0
- package/lib/typescript/commonjs/src/modules/log/LogManager.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/log/NativeLogModule.d.ts +13 -0
- package/lib/typescript/commonjs/src/modules/log/NativeLogModule.d.ts.map +1 -0
- package/lib/typescript/module/src/index.d.ts +1 -1
- package/lib/typescript/module/src/index.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/log/LogManager.d.ts +45 -0
- package/lib/typescript/module/src/modules/log/LogManager.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/log/NativeLogModule.d.ts +13 -0
- package/lib/typescript/module/src/modules/log/NativeLogModule.d.ts.map +1 -0
- package/package.json +2 -1
- package/src/components/map-view/MapView.tsx +3 -3
- package/src/index.ts +1 -1
- package/src/modules/log/LogManager.ts +114 -0
- package/src/modules/log/NativeLogModule.ts +16 -0
- package/android/src/main/java/org/maplibre/reactnative/modules/MLRNLogging.java +0 -140
- package/lib/commonjs/modules/Logger.js +0 -112
- package/lib/commonjs/modules/Logger.js.map +0 -1
- package/lib/module/modules/Logger.js +0 -107
- package/lib/module/modules/Logger.js.map +0 -1
- package/lib/typescript/commonjs/src/modules/Logger.d.ts +0 -49
- package/lib/typescript/commonjs/src/modules/Logger.d.ts.map +0 -1
- package/lib/typescript/module/src/modules/Logger.d.ts +0 -49
- package/lib/typescript/module/src/modules/Logger.d.ts.map +0 -1
- package/src/modules/Logger.ts +0 -127
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import NativeLogModule from "./NativeLogModule.js";
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Log levels in decreasing order of severity
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Handler for `onLog` events
|
|
11
|
+
*
|
|
12
|
+
* Called before logging a message, return false to proceed with default logging.
|
|
13
|
+
*
|
|
14
|
+
* @param event
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
class LogManager {
|
|
18
|
+
logLevel = "warn";
|
|
19
|
+
startedCount = 0;
|
|
20
|
+
logHandler = undefined;
|
|
21
|
+
subscription = undefined;
|
|
22
|
+
constructor() {
|
|
23
|
+
this.handleLog = this.handleLog.bind(this);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Override logging behavior
|
|
28
|
+
*
|
|
29
|
+
* @param logHandler
|
|
30
|
+
*/
|
|
31
|
+
onLog(logHandler) {
|
|
32
|
+
this.logHandler = logHandler;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Set the minimum log level for a message to be logged
|
|
37
|
+
*
|
|
38
|
+
* @param level Minimum log level
|
|
39
|
+
*/
|
|
40
|
+
setLogLevel(level) {
|
|
41
|
+
this.logLevel = level;
|
|
42
|
+
NativeLogModule.setLogLevel(level);
|
|
43
|
+
}
|
|
44
|
+
start() {
|
|
45
|
+
if (this.startedCount === 0) {
|
|
46
|
+
this.subscribe();
|
|
47
|
+
}
|
|
48
|
+
this.startedCount += 1;
|
|
49
|
+
}
|
|
50
|
+
stop() {
|
|
51
|
+
this.startedCount -= 1;
|
|
52
|
+
if (this.startedCount === 0) {
|
|
53
|
+
this.unsubscribe();
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
subscribe() {
|
|
57
|
+
this.subscription = NativeLogModule.onLog(this.handleLog);
|
|
58
|
+
}
|
|
59
|
+
unsubscribe() {
|
|
60
|
+
if (this.subscription) {
|
|
61
|
+
this.subscription.remove();
|
|
62
|
+
this.subscription = undefined;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
effectiveLevel({
|
|
66
|
+
level,
|
|
67
|
+
message,
|
|
68
|
+
tag
|
|
69
|
+
}) {
|
|
70
|
+
// Reduce level of cancelled HTTP requests from warn to info
|
|
71
|
+
if (level === "warn" && tag === "Mbgl-HttpRequest" && message.startsWith("Request failed due to a permanent error: Canceled")) {
|
|
72
|
+
return "info";
|
|
73
|
+
}
|
|
74
|
+
return level;
|
|
75
|
+
}
|
|
76
|
+
handleLog(log) {
|
|
77
|
+
if (!this.logHandler || !this.logHandler(log)) {
|
|
78
|
+
const {
|
|
79
|
+
message,
|
|
80
|
+
tag
|
|
81
|
+
} = log;
|
|
82
|
+
const level = this.effectiveLevel(log);
|
|
83
|
+
const consoleMessage = `MapLibre Native [${level.toUpperCase()}] [${tag}] ${message}`;
|
|
84
|
+
if (level === "error") {
|
|
85
|
+
console.error(consoleMessage);
|
|
86
|
+
} else if (level === "warn" && this.logLevel !== "error") {
|
|
87
|
+
console.warn(consoleMessage);
|
|
88
|
+
} else if (this.logLevel !== "error" && this.logLevel !== "warn") {
|
|
89
|
+
console.info(consoleMessage);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
const logManager = new LogManager();
|
|
95
|
+
export { logManager as LogManager };
|
|
96
|
+
//# sourceMappingURL=LogManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["NativeLogModule","LogManager","logLevel","startedCount","logHandler","undefined","subscription","constructor","handleLog","bind","onLog","setLogLevel","level","start","subscribe","stop","unsubscribe","remove","effectiveLevel","message","tag","startsWith","log","consoleMessage","toUpperCase","console","error","warn","info","logManager"],"sourceRoot":"../../../../src","sources":["modules/log/LogManager.ts"],"mappings":";;AAEA,OAAOA,eAAe,MAAM,sBAAmB;;AAE/C;AACA;AACA;;AASA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA,MAAMC,UAAU,CAAC;EACPC,QAAQ,GAAa,MAAM;EAC3BC,YAAY,GAAW,CAAC;EACxBC,UAAU,GAA2BC,SAAS;EAC9CC,YAAY,GAAkCD,SAAS;EAE/DE,WAAWA,CAAA,EAAG;IACZ,IAAI,CAACC,SAAS,GAAG,IAAI,CAACA,SAAS,CAACC,IAAI,CAAC,IAAI,CAAC;EAC5C;;EAEA;AACF;AACA;AACA;AACA;EACEC,KAAKA,CAACN,UAAsB,EAAQ;IAClC,IAAI,CAACA,UAAU,GAAGA,UAAU;EAC9B;;EAEA;AACF;AACA;AACA;AACA;EACEO,WAAWA,CAACC,KAAe,EAAQ;IACjC,IAAI,CAACV,QAAQ,GAAGU,KAAK;IACrBZ,eAAe,CAACW,WAAW,CAACC,KAAK,CAAC;EACpC;EAEAC,KAAKA,CAAA,EAAS;IACZ,IAAI,IAAI,CAACV,YAAY,KAAK,CAAC,EAAE;MAC3B,IAAI,CAACW,SAAS,CAAC,CAAC;IAClB;IAEA,IAAI,CAACX,YAAY,IAAI,CAAC;EACxB;EAEAY,IAAIA,CAAA,EAAS;IACX,IAAI,CAACZ,YAAY,IAAI,CAAC;IAEtB,IAAI,IAAI,CAACA,YAAY,KAAK,CAAC,EAAE;MAC3B,IAAI,CAACa,WAAW,CAAC,CAAC;IACpB;EACF;EAEQF,SAASA,CAAA,EAAS;IACxB,IAAI,CAACR,YAAY,GAAGN,eAAe,CAACU,KAAK,CAAC,IAAI,CAACF,SAAS,CAAC;EAC3D;EAEQQ,WAAWA,CAAA,EAAS;IAC1B,IAAI,IAAI,CAACV,YAAY,EAAE;MACrB,IAAI,CAACA,YAAY,CAACW,MAAM,CAAC,CAAC;MAC1B,IAAI,CAACX,YAAY,GAAGD,SAAS;IAC/B;EACF;EAEQa,cAAcA,CAAC;IAAEN,KAAK;IAAEO,OAAO;IAAEC;EAAc,CAAC,EAAY;IAClE;IACA,IACER,KAAK,KAAK,MAAM,IAChBQ,GAAG,KAAK,kBAAkB,IAC1BD,OAAO,CAACE,UAAU,CAAC,mDAAmD,CAAC,EACvE;MACA,OAAO,MAAM;IACf;IAEA,OAAOT,KAAK;EACd;EAEQJ,SAASA,CAACc,GAAa,EAAQ;IACrC,IAAI,CAAC,IAAI,CAAClB,UAAU,IAAI,CAAC,IAAI,CAACA,UAAU,CAACkB,GAAG,CAAC,EAAE;MAC7C,MAAM;QAAEH,OAAO;QAAEC;MAAI,CAAC,GAAGE,GAAG;MAC5B,MAAMV,KAAK,GAAG,IAAI,CAACM,cAAc,CAACI,GAAG,CAAC;MAEtC,MAAMC,cAAc,GAAG,oBAAoBX,KAAK,CAACY,WAAW,CAAC,CAAC,MAAMJ,GAAG,KAAKD,OAAO,EAAE;MAErF,IAAIP,KAAK,KAAK,OAAO,EAAE;QACrBa,OAAO,CAACC,KAAK,CAACH,cAAc,CAAC;MAC/B,CAAC,MAAM,IAAIX,KAAK,KAAK,MAAM,IAAI,IAAI,CAACV,QAAQ,KAAK,OAAO,EAAE;QACxDuB,OAAO,CAACE,IAAI,CAACJ,cAAc,CAAC;MAC9B,CAAC,MAAM,IAAI,IAAI,CAACrB,QAAQ,KAAK,OAAO,IAAI,IAAI,CAACA,QAAQ,KAAK,MAAM,EAAE;QAChEuB,OAAO,CAACG,IAAI,CAACL,cAAc,CAAC;MAC9B;IACF;EACF;AACF;AAEA,MAAMM,UAAU,GAAG,IAAI5B,UAAU,CAAC,CAAC;AAEnC,SAAS4B,UAAU,IAAI5B,UAAU","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../../../src","sources":["modules/log/NativeLogModule.ts"],"mappings":";;AACA,SAASA,mBAAmB,QAAQ,cAAc;AAclD,eAAeA,mBAAmB,CAACC,YAAY,CAAO,eAAe,CAAC","ignoreList":[]}
|
|
@@ -36,6 +36,6 @@ export type { FillLayerStyle, LineLayerStyle, SymbolLayerStyle, CircleLayerStyle
|
|
|
36
36
|
export type { PressEvent, PressEventWithFeatures } from "./types/PressEvent";
|
|
37
37
|
export type { ViewPadding } from "./types/ViewPadding";
|
|
38
38
|
export { Animated } from "./utils/animated/Animated";
|
|
39
|
-
export {
|
|
39
|
+
export { LogManager, type LogLevel } from "./modules/log/LogManager";
|
|
40
40
|
export type { MapLibrePluginProps } from "./plugin/MapLibrePluginProps";
|
|
41
41
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAE7B,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,UAAU,EACf,KAAK,gBAAgB,EACrB,KAAK,SAAS,EACd,KAAK,iBAAiB,EACtB,KAAK,4BAA4B,EACjC,KAAK,WAAW,EAChB,MAAM,GACP,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,OAAO,EACP,KAAK,UAAU,EACf,KAAK,SAAS,EACd,KAAK,oBAAoB,GAC1B,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAC;AAC3E,YAAY,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AACnF,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,kCAAkC,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+CAA+C,CAAC;AACnF,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAEhE,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,YAAY,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,wCAAwC,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,qCAAqC,CAAC;AAEjE,OAAO,EACL,eAAe,EACf,KAAK,mBAAmB,GACzB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAClE,YAAY,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACzE,YAAY,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,wBAAwB,EAAE,MAAM,4CAA4C,CAAC;AACtF,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,YAAY,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAE/E,YAAY,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC7C,YAAY,EACV,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,uBAAuB,EACvB,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,UAAU,GACX,MAAM,0BAA0B,CAAC;AAClC,YAAY,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC7E,YAAY,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,KAAK,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAErE,YAAY,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Log levels in decreasing order of severity
|
|
3
|
+
*/
|
|
4
|
+
export type LogLevel = "error" | "warn" | "info" | "debug" | "verbose";
|
|
5
|
+
interface LogEvent {
|
|
6
|
+
level: LogLevel;
|
|
7
|
+
tag: string;
|
|
8
|
+
message: string;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Handler for `onLog` events
|
|
12
|
+
*
|
|
13
|
+
* Called before logging a message, return false to proceed with default logging.
|
|
14
|
+
*
|
|
15
|
+
* @param event
|
|
16
|
+
*/
|
|
17
|
+
type LogHandler = (event: LogEvent) => boolean;
|
|
18
|
+
declare class LogManager {
|
|
19
|
+
private logLevel;
|
|
20
|
+
private startedCount;
|
|
21
|
+
private logHandler;
|
|
22
|
+
private subscription;
|
|
23
|
+
constructor();
|
|
24
|
+
/**
|
|
25
|
+
* Override logging behavior
|
|
26
|
+
*
|
|
27
|
+
* @param logHandler
|
|
28
|
+
*/
|
|
29
|
+
onLog(logHandler: LogHandler): void;
|
|
30
|
+
/**
|
|
31
|
+
* Set the minimum log level for a message to be logged
|
|
32
|
+
*
|
|
33
|
+
* @param level Minimum log level
|
|
34
|
+
*/
|
|
35
|
+
setLogLevel(level: LogLevel): void;
|
|
36
|
+
start(): void;
|
|
37
|
+
stop(): void;
|
|
38
|
+
private subscribe;
|
|
39
|
+
private unsubscribe;
|
|
40
|
+
private effectiveLevel;
|
|
41
|
+
private handleLog;
|
|
42
|
+
}
|
|
43
|
+
declare const logManager: LogManager;
|
|
44
|
+
export { logManager as LogManager };
|
|
45
|
+
//# sourceMappingURL=LogManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LogManager.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/log/LogManager.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;AAEvE,UAAU,QAAQ;IAChB,KAAK,EAAE,QAAQ,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;GAMG;AACH,KAAK,UAAU,GAAG,CAAC,KAAK,EAAE,QAAQ,KAAK,OAAO,CAAC;AAE/C,cAAM,UAAU;IACd,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,YAAY,CAAa;IACjC,OAAO,CAAC,UAAU,CAAqC;IACvD,OAAO,CAAC,YAAY,CAA4C;;IAMhE;;;;OAIG;IACH,KAAK,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IAInC;;;;OAIG;IACH,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;IAKlC,KAAK,IAAI,IAAI;IAQb,IAAI,IAAI,IAAI;IAQZ,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,SAAS;CAgBlB;AAED,QAAA,MAAM,UAAU,YAAmB,CAAC;AAEpC,OAAO,EAAE,UAAU,IAAI,UAAU,EAAE,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { TurboModule, CodegenTypes } from "react-native";
|
|
2
|
+
type NativeLogLevel = "error" | "warn" | "info" | "debug" | "verbose";
|
|
3
|
+
export interface Spec extends TurboModule {
|
|
4
|
+
setLogLevel(logLevel: NativeLogLevel): void;
|
|
5
|
+
readonly onLog: CodegenTypes.EventEmitter<{
|
|
6
|
+
level: NativeLogLevel;
|
|
7
|
+
tag: string;
|
|
8
|
+
message: string;
|
|
9
|
+
}>;
|
|
10
|
+
}
|
|
11
|
+
declare const _default: Spec;
|
|
12
|
+
export default _default;
|
|
13
|
+
//# sourceMappingURL=NativeLogModule.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NativeLogModule.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/log/NativeLogModule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAG9D,KAAK,cAAc,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;AAEtE,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,WAAW,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI,CAAC;IAE5C,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC,YAAY,CAAC;QACxC,KAAK,EAAE,cAAc,CAAC;QACtB,GAAG,EAAE,MAAM,CAAC;QACZ,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;CACJ;;AAED,wBAAuE"}
|
|
@@ -36,6 +36,6 @@ export type { FillLayerStyle, LineLayerStyle, SymbolLayerStyle, CircleLayerStyle
|
|
|
36
36
|
export type { PressEvent, PressEventWithFeatures } from "./types/PressEvent";
|
|
37
37
|
export type { ViewPadding } from "./types/ViewPadding";
|
|
38
38
|
export { Animated } from "./utils/animated/Animated";
|
|
39
|
-
export {
|
|
39
|
+
export { LogManager, type LogLevel } from "./modules/log/LogManager";
|
|
40
40
|
export type { MapLibrePluginProps } from "./plugin/MapLibrePluginProps";
|
|
41
41
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Log levels in decreasing order of severity
|
|
3
|
+
*/
|
|
4
|
+
export type LogLevel = "error" | "warn" | "info" | "debug" | "verbose";
|
|
5
|
+
interface LogEvent {
|
|
6
|
+
level: LogLevel;
|
|
7
|
+
tag: string;
|
|
8
|
+
message: string;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Handler for `onLog` events
|
|
12
|
+
*
|
|
13
|
+
* Called before logging a message, return false to proceed with default logging.
|
|
14
|
+
*
|
|
15
|
+
* @param event
|
|
16
|
+
*/
|
|
17
|
+
type LogHandler = (event: LogEvent) => boolean;
|
|
18
|
+
declare class LogManager {
|
|
19
|
+
private logLevel;
|
|
20
|
+
private startedCount;
|
|
21
|
+
private logHandler;
|
|
22
|
+
private subscription;
|
|
23
|
+
constructor();
|
|
24
|
+
/**
|
|
25
|
+
* Override logging behavior
|
|
26
|
+
*
|
|
27
|
+
* @param logHandler
|
|
28
|
+
*/
|
|
29
|
+
onLog(logHandler: LogHandler): void;
|
|
30
|
+
/**
|
|
31
|
+
* Set the minimum log level for a message to be logged
|
|
32
|
+
*
|
|
33
|
+
* @param level Minimum log level
|
|
34
|
+
*/
|
|
35
|
+
setLogLevel(level: LogLevel): void;
|
|
36
|
+
start(): void;
|
|
37
|
+
stop(): void;
|
|
38
|
+
private subscribe;
|
|
39
|
+
private unsubscribe;
|
|
40
|
+
private effectiveLevel;
|
|
41
|
+
private handleLog;
|
|
42
|
+
}
|
|
43
|
+
declare const logManager: LogManager;
|
|
44
|
+
export { logManager as LogManager };
|
|
45
|
+
//# sourceMappingURL=LogManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LogManager.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/log/LogManager.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;AAEvE,UAAU,QAAQ;IAChB,KAAK,EAAE,QAAQ,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;GAMG;AACH,KAAK,UAAU,GAAG,CAAC,KAAK,EAAE,QAAQ,KAAK,OAAO,CAAC;AAE/C,cAAM,UAAU;IACd,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,YAAY,CAAa;IACjC,OAAO,CAAC,UAAU,CAAqC;IACvD,OAAO,CAAC,YAAY,CAA4C;;IAMhE;;;;OAIG;IACH,KAAK,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;IAInC;;;;OAIG;IACH,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;IAKlC,KAAK,IAAI,IAAI;IAQb,IAAI,IAAI,IAAI;IAQZ,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,SAAS;CAgBlB;AAED,QAAA,MAAM,UAAU,YAAmB,CAAC;AAEpC,OAAO,EAAE,UAAU,IAAI,UAAU,EAAE,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { TurboModule, CodegenTypes } from "react-native";
|
|
2
|
+
type NativeLogLevel = "error" | "warn" | "info" | "debug" | "verbose";
|
|
3
|
+
export interface Spec extends TurboModule {
|
|
4
|
+
setLogLevel(logLevel: NativeLogLevel): void;
|
|
5
|
+
readonly onLog: CodegenTypes.EventEmitter<{
|
|
6
|
+
level: NativeLogLevel;
|
|
7
|
+
tag: string;
|
|
8
|
+
message: string;
|
|
9
|
+
}>;
|
|
10
|
+
}
|
|
11
|
+
declare const _default: Spec;
|
|
12
|
+
export default _default;
|
|
13
|
+
//# sourceMappingURL=NativeLogModule.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NativeLogModule.d.ts","sourceRoot":"","sources":["../../../../../../src/modules/log/NativeLogModule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAG9D,KAAK,cAAc,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;AAEtE,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,WAAW,CAAC,QAAQ,EAAE,cAAc,GAAG,IAAI,CAAC;IAE5C,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC,YAAY,CAAC;QACxC,KAAK,EAAE,cAAc,CAAC;QACtB,GAAG,EAAE,MAAM,CAAC;QACZ,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;CACJ;;AAED,wBAAuE"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@maplibre/maplibre-react-native",
|
|
3
3
|
"description": "React Native library for creating maps with MapLibre Native for Android & iOS",
|
|
4
|
-
"version": "11.0.0-alpha.
|
|
4
|
+
"version": "11.0.0-alpha.18",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public",
|
|
7
7
|
"provenance": true
|
|
@@ -134,6 +134,7 @@
|
|
|
134
134
|
"modulesProvider": {
|
|
135
135
|
"MLRNCameraModule": "MLRNCameraModule",
|
|
136
136
|
"MLRNLocationModule": "MLRNLocationModule",
|
|
137
|
+
"MLRNLogModule": "MLRNLogModule",
|
|
137
138
|
"MLRNMapViewModule": "MLRNMapViewModule"
|
|
138
139
|
}
|
|
139
140
|
}
|
|
@@ -27,7 +27,7 @@ import MapViewNativeComponent, {
|
|
|
27
27
|
type NativeProps,
|
|
28
28
|
} from "./MapViewNativeComponent";
|
|
29
29
|
import NativeMapViewModule from "./NativeMapViewModule";
|
|
30
|
-
import {
|
|
30
|
+
import { LogManager } from "../../modules/log/LogManager";
|
|
31
31
|
import { type BaseProps } from "../../types/BaseProps";
|
|
32
32
|
import type { Bounds } from "../../types/Bounds";
|
|
33
33
|
import {
|
|
@@ -547,10 +547,10 @@ export const MapView = memo(
|
|
|
547
547
|
|
|
548
548
|
// Start before rendering
|
|
549
549
|
useLayoutEffect(() => {
|
|
550
|
-
|
|
550
|
+
LogManager.start();
|
|
551
551
|
|
|
552
552
|
return () => {
|
|
553
|
-
|
|
553
|
+
LogManager.stop();
|
|
554
554
|
};
|
|
555
555
|
}, []);
|
|
556
556
|
|
package/src/index.ts
CHANGED
|
@@ -80,6 +80,6 @@ export type { PressEvent, PressEventWithFeatures } from "./types/PressEvent";
|
|
|
80
80
|
export type { ViewPadding } from "./types/ViewPadding";
|
|
81
81
|
|
|
82
82
|
export { Animated } from "./utils/animated/Animated";
|
|
83
|
-
export {
|
|
83
|
+
export { LogManager, type LogLevel } from "./modules/log/LogManager";
|
|
84
84
|
|
|
85
85
|
export type { MapLibrePluginProps } from "./plugin/MapLibrePluginProps";
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { type EventSubscription } from "react-native";
|
|
2
|
+
|
|
3
|
+
import NativeLogModule from "./NativeLogModule";
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Log levels in decreasing order of severity
|
|
7
|
+
*/
|
|
8
|
+
export type LogLevel = "error" | "warn" | "info" | "debug" | "verbose";
|
|
9
|
+
|
|
10
|
+
interface LogEvent {
|
|
11
|
+
level: LogLevel;
|
|
12
|
+
tag: string;
|
|
13
|
+
message: string;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Handler for `onLog` events
|
|
18
|
+
*
|
|
19
|
+
* Called before logging a message, return false to proceed with default logging.
|
|
20
|
+
*
|
|
21
|
+
* @param event
|
|
22
|
+
*/
|
|
23
|
+
type LogHandler = (event: LogEvent) => boolean;
|
|
24
|
+
|
|
25
|
+
class LogManager {
|
|
26
|
+
private logLevel: LogLevel = "warn";
|
|
27
|
+
private startedCount: number = 0;
|
|
28
|
+
private logHandler: LogHandler | undefined = undefined;
|
|
29
|
+
private subscription: EventSubscription | undefined = undefined;
|
|
30
|
+
|
|
31
|
+
constructor() {
|
|
32
|
+
this.handleLog = this.handleLog.bind(this);
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* Override logging behavior
|
|
37
|
+
*
|
|
38
|
+
* @param logHandler
|
|
39
|
+
*/
|
|
40
|
+
onLog(logHandler: LogHandler): void {
|
|
41
|
+
this.logHandler = logHandler;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Set the minimum log level for a message to be logged
|
|
46
|
+
*
|
|
47
|
+
* @param level Minimum log level
|
|
48
|
+
*/
|
|
49
|
+
setLogLevel(level: LogLevel): void {
|
|
50
|
+
this.logLevel = level;
|
|
51
|
+
NativeLogModule.setLogLevel(level);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
start(): void {
|
|
55
|
+
if (this.startedCount === 0) {
|
|
56
|
+
this.subscribe();
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
this.startedCount += 1;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
stop(): void {
|
|
63
|
+
this.startedCount -= 1;
|
|
64
|
+
|
|
65
|
+
if (this.startedCount === 0) {
|
|
66
|
+
this.unsubscribe();
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
private subscribe(): void {
|
|
71
|
+
this.subscription = NativeLogModule.onLog(this.handleLog);
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
private unsubscribe(): void {
|
|
75
|
+
if (this.subscription) {
|
|
76
|
+
this.subscription.remove();
|
|
77
|
+
this.subscription = undefined;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
private effectiveLevel({ level, message, tag }: LogEvent): LogLevel {
|
|
82
|
+
// Reduce level of cancelled HTTP requests from warn to info
|
|
83
|
+
if (
|
|
84
|
+
level === "warn" &&
|
|
85
|
+
tag === "Mbgl-HttpRequest" &&
|
|
86
|
+
message.startsWith("Request failed due to a permanent error: Canceled")
|
|
87
|
+
) {
|
|
88
|
+
return "info";
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
return level;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
private handleLog(log: LogEvent): void {
|
|
95
|
+
if (!this.logHandler || !this.logHandler(log)) {
|
|
96
|
+
const { message, tag } = log;
|
|
97
|
+
const level = this.effectiveLevel(log);
|
|
98
|
+
|
|
99
|
+
const consoleMessage = `MapLibre Native [${level.toUpperCase()}] [${tag}] ${message}`;
|
|
100
|
+
|
|
101
|
+
if (level === "error") {
|
|
102
|
+
console.error(consoleMessage);
|
|
103
|
+
} else if (level === "warn" && this.logLevel !== "error") {
|
|
104
|
+
console.warn(consoleMessage);
|
|
105
|
+
} else if (this.logLevel !== "error" && this.logLevel !== "warn") {
|
|
106
|
+
console.info(consoleMessage);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
const logManager = new LogManager();
|
|
113
|
+
|
|
114
|
+
export { logManager as LogManager };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { TurboModule, CodegenTypes } from "react-native";
|
|
2
|
+
import { TurboModuleRegistry } from "react-native";
|
|
3
|
+
|
|
4
|
+
type NativeLogLevel = "error" | "warn" | "info" | "debug" | "verbose";
|
|
5
|
+
|
|
6
|
+
export interface Spec extends TurboModule {
|
|
7
|
+
setLogLevel(logLevel: NativeLogLevel): void;
|
|
8
|
+
|
|
9
|
+
readonly onLog: CodegenTypes.EventEmitter<{
|
|
10
|
+
level: NativeLogLevel;
|
|
11
|
+
tag: string;
|
|
12
|
+
message: string;
|
|
13
|
+
}>;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export default TurboModuleRegistry.getEnforcing<Spec>("MLRNLogModule");
|
|
@@ -1,140 +0,0 @@
|
|
|
1
|
-
package org.maplibre.reactnative.modules;
|
|
2
|
-
|
|
3
|
-
import com.facebook.react.bridge.Arguments;
|
|
4
|
-
import com.facebook.react.bridge.ReactApplicationContext;
|
|
5
|
-
import com.facebook.react.bridge.ReactContextBaseJavaModule;
|
|
6
|
-
import com.facebook.react.bridge.ReactMethod;
|
|
7
|
-
import com.facebook.react.bridge.WritableMap;
|
|
8
|
-
import com.facebook.react.module.annotations.ReactModule;
|
|
9
|
-
import com.facebook.react.modules.core.DeviceEventManagerModule;
|
|
10
|
-
import org.maplibre.android.log.Logger;
|
|
11
|
-
import org.maplibre.android.log.LoggerDefinition;
|
|
12
|
-
import android.util.Log;
|
|
13
|
-
|
|
14
|
-
@ReactModule(name = MLRNLogging.REACT_CLASS)
|
|
15
|
-
public class MLRNLogging extends ReactContextBaseJavaModule {
|
|
16
|
-
public static final String REACT_CLASS = "MLRNLogging";
|
|
17
|
-
private ReactApplicationContext mReactContext;
|
|
18
|
-
|
|
19
|
-
public MLRNLogging(ReactApplicationContext reactApplicationContext) {
|
|
20
|
-
super(reactApplicationContext);
|
|
21
|
-
mReactContext = reactApplicationContext;
|
|
22
|
-
|
|
23
|
-
Logger.setVerbosity(Logger.WARN);
|
|
24
|
-
Logger.setLoggerDefinition(new LoggerDefinition() {
|
|
25
|
-
@Override
|
|
26
|
-
public void v(String tag, String msg) {
|
|
27
|
-
Log.v(tag, msg);
|
|
28
|
-
onLog("verbose", tag, msg, null);
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
@Override
|
|
32
|
-
public void v(String tag, String msg, Throwable tr) {
|
|
33
|
-
Log.v(tag, msg, tr);
|
|
34
|
-
onLog("verbose", tag, msg, tr);
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
@Override
|
|
38
|
-
public void d(String tag, String msg) {
|
|
39
|
-
Log.d(tag, msg);
|
|
40
|
-
onLog("debug", tag, msg, null);
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
@Override
|
|
44
|
-
public void d(String tag, String msg, Throwable tr) {
|
|
45
|
-
Log.d(tag, msg, tr);
|
|
46
|
-
onLog("debug",tag,msg,tr);
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
@Override
|
|
50
|
-
public void i(String tag, String msg) {
|
|
51
|
-
Log.i(tag, msg);
|
|
52
|
-
onLog("info", tag, msg, null);
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
@Override
|
|
56
|
-
public void i(String tag, String msg, Throwable tr) {
|
|
57
|
-
Log.i(tag, msg, tr);
|
|
58
|
-
onLog("info", tag, msg, tr);
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
@Override
|
|
62
|
-
public void w(String tag, String msg) {
|
|
63
|
-
Log.w(tag, msg);
|
|
64
|
-
onLog("warning", tag, msg, null);
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
@Override
|
|
68
|
-
public void w(String tag, String msg, Throwable tr) {
|
|
69
|
-
Log.w(tag, msg, tr);
|
|
70
|
-
onLog("warning", tag, msg, tr);
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
@Override
|
|
74
|
-
public void e(String tag, String msg) {
|
|
75
|
-
Log.e(tag, msg);
|
|
76
|
-
onLog("error", tag, msg, null);
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
@Override
|
|
80
|
-
public void e(String tag, String msg, Throwable tr) {
|
|
81
|
-
Log.e(tag, msg, tr);
|
|
82
|
-
onLog("error", tag, msg, tr);
|
|
83
|
-
}
|
|
84
|
-
});
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
@Override
|
|
88
|
-
public String getName() {
|
|
89
|
-
return REACT_CLASS;
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
@ReactMethod
|
|
93
|
-
public void setLogLevel(String level) {
|
|
94
|
-
@Logger.LogLevel int logLevel = Logger.NONE;
|
|
95
|
-
switch(level)
|
|
96
|
-
{
|
|
97
|
-
case "error":
|
|
98
|
-
logLevel = Logger.ERROR;
|
|
99
|
-
break;
|
|
100
|
-
case "warning":
|
|
101
|
-
logLevel = Logger.WARN;
|
|
102
|
-
break;
|
|
103
|
-
case "info":
|
|
104
|
-
logLevel = Logger.INFO;
|
|
105
|
-
break;
|
|
106
|
-
case "debug":
|
|
107
|
-
logLevel = Logger.DEBUG;
|
|
108
|
-
break;
|
|
109
|
-
case "verbose":
|
|
110
|
-
logLevel = Logger.VERBOSE;
|
|
111
|
-
break;
|
|
112
|
-
default:
|
|
113
|
-
logLevel = Logger.NONE;
|
|
114
|
-
break;
|
|
115
|
-
}
|
|
116
|
-
Logger.setVerbosity(logLevel);
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
@ReactMethod
|
|
120
|
-
public void addListener(String eventName) {
|
|
121
|
-
// Set up any upstream listeners or background tasks as necessary
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
@ReactMethod
|
|
125
|
-
public void removeListeners(Integer count) {
|
|
126
|
-
// Remove upstream listeners, stop unnecessary background tasks
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
public void onLog(String level, String tag, String msg, Throwable tr) {
|
|
130
|
-
WritableMap event = Arguments.createMap();
|
|
131
|
-
event.putString("message", msg);
|
|
132
|
-
event.putString("tag", tag);
|
|
133
|
-
event.putString("level", level);
|
|
134
|
-
|
|
135
|
-
mReactContext
|
|
136
|
-
.getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class)
|
|
137
|
-
.emit("LogEvent", event);
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
}
|