@xifan0/monitor-core 0.0.2-beta.6 → 0.0.2-beta.7

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/dist/index.d.mts CHANGED
@@ -25,6 +25,6 @@ interface Monitor {
25
25
  [key: string]: any;
26
26
  }
27
27
 
28
- declare const createMonitor: <TOptions = any>(sentry: any) => Monitor;
28
+ declare function createMonitor<TOptions = any>(sentry: any): Monitor;
29
29
 
30
- export { type CaptureContext, type Monitor, type MonitorUser, createMonitor, createMonitor as default };
30
+ export { type CaptureContext, type Monitor, type MonitorUser, createMonitor };
package/dist/index.d.ts CHANGED
@@ -25,6 +25,6 @@ interface Monitor {
25
25
  [key: string]: any;
26
26
  }
27
27
 
28
- declare const createMonitor: <TOptions = any>(sentry: any) => Monitor;
28
+ declare function createMonitor<TOptions = any>(sentry: any): Monitor;
29
29
 
30
- export { type CaptureContext, type Monitor, type MonitorUser, createMonitor, createMonitor as default };
30
+ export { type CaptureContext, type Monitor, type MonitorUser, createMonitor };
package/dist/index.js CHANGED
@@ -20,20 +20,25 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
20
20
  // src/index.ts
21
21
  var index_exports = {};
22
22
  __export(index_exports, {
23
- createMonitor: () => createMonitor,
24
- default: () => createMonitor
23
+ createMonitor: () => createMonitor
25
24
  });
26
25
  module.exports = __toCommonJS(index_exports);
27
26
 
28
27
  // src/createMonitor.ts
29
- var createMonitor = (sentry) => {
28
+ function createMonitor(sentry) {
29
+ const sentryInstance = sentry && typeof sentry === "object" && sentry.default ? sentry.default : sentry;
30
30
  const monitor = {
31
31
  init(options) {
32
- return sentry.init(options);
32
+ if (!sentryInstance || typeof sentryInstance.init !== "function") {
33
+ throw new Error(
34
+ "Sentry.init is not a function. Please ensure @sentry/react is properly imported."
35
+ );
36
+ }
37
+ return sentryInstance.init(options);
33
38
  },
34
39
  /** 上报异常 */
35
40
  captureException(error, ctx) {
36
- return sentry.captureException(error, (scope) => {
41
+ return sentryInstance.captureException(error, (scope) => {
37
42
  (ctx == null ? void 0 : ctx.tags) && scope.setTags(ctx.tags);
38
43
  (ctx == null ? void 0 : ctx.extra) && scope.setExtras(ctx.extra);
39
44
  return scope;
@@ -41,7 +46,7 @@ var createMonitor = (sentry) => {
41
46
  },
42
47
  /** 发送消息/提醒/日志 */
43
48
  captureMessage(message, ctx) {
44
- return sentry.captureMessage(message, (scope) => {
49
+ return sentryInstance.captureMessage(message, (scope) => {
45
50
  (ctx == null ? void 0 : ctx.tags) && scope.setTags(ctx.tags);
46
51
  (ctx == null ? void 0 : ctx.extra) && scope.setExtras(ctx.extra);
47
52
  return scope;
@@ -49,7 +54,7 @@ var createMonitor = (sentry) => {
49
54
  },
50
55
  /** 设置用户信息 */
51
56
  setUser(user) {
52
- return sentry.setUser(user);
57
+ return sentryInstance.setUser(user);
53
58
  }
54
59
  };
55
60
  const proxy = new Proxy(monitor, {
@@ -57,19 +62,19 @@ var createMonitor = (sentry) => {
57
62
  if (key in target) {
58
63
  return Reflect.get(target, key, receiver);
59
64
  }
60
- const sentryFn = sentry[key];
65
+ const sentryFn = sentryInstance[key];
61
66
  if (typeof sentryFn === "function") {
62
67
  const isClass = sentryFn.prototype && sentryFn.prototype.constructor === sentryFn && Object.getOwnPropertyNames(sentryFn.prototype).length > 1;
63
68
  if (isClass) {
64
69
  return sentryFn;
65
70
  }
66
- return sentryFn.bind(sentry);
71
+ return sentryFn.bind(sentryInstance);
67
72
  }
68
73
  return sentryFn;
69
74
  }
70
75
  });
71
76
  return proxy;
72
- };
77
+ }
73
78
  // Annotate the CommonJS export names for ESM import in node:
74
79
  0 && (module.exports = {
75
80
  createMonitor
package/dist/index.mjs CHANGED
@@ -1,12 +1,18 @@
1
1
  // src/createMonitor.ts
2
- var createMonitor = (sentry) => {
2
+ function createMonitor(sentry) {
3
+ const sentryInstance = sentry && typeof sentry === "object" && sentry.default ? sentry.default : sentry;
3
4
  const monitor = {
4
5
  init(options) {
5
- return sentry.init(options);
6
+ if (!sentryInstance || typeof sentryInstance.init !== "function") {
7
+ throw new Error(
8
+ "Sentry.init is not a function. Please ensure @sentry/react is properly imported."
9
+ );
10
+ }
11
+ return sentryInstance.init(options);
6
12
  },
7
13
  /** 上报异常 */
8
14
  captureException(error, ctx) {
9
- return sentry.captureException(error, (scope) => {
15
+ return sentryInstance.captureException(error, (scope) => {
10
16
  (ctx == null ? void 0 : ctx.tags) && scope.setTags(ctx.tags);
11
17
  (ctx == null ? void 0 : ctx.extra) && scope.setExtras(ctx.extra);
12
18
  return scope;
@@ -14,7 +20,7 @@ var createMonitor = (sentry) => {
14
20
  },
15
21
  /** 发送消息/提醒/日志 */
16
22
  captureMessage(message, ctx) {
17
- return sentry.captureMessage(message, (scope) => {
23
+ return sentryInstance.captureMessage(message, (scope) => {
18
24
  (ctx == null ? void 0 : ctx.tags) && scope.setTags(ctx.tags);
19
25
  (ctx == null ? void 0 : ctx.extra) && scope.setExtras(ctx.extra);
20
26
  return scope;
@@ -22,7 +28,7 @@ var createMonitor = (sentry) => {
22
28
  },
23
29
  /** 设置用户信息 */
24
30
  setUser(user) {
25
- return sentry.setUser(user);
31
+ return sentryInstance.setUser(user);
26
32
  }
27
33
  };
28
34
  const proxy = new Proxy(monitor, {
@@ -30,20 +36,19 @@ var createMonitor = (sentry) => {
30
36
  if (key in target) {
31
37
  return Reflect.get(target, key, receiver);
32
38
  }
33
- const sentryFn = sentry[key];
39
+ const sentryFn = sentryInstance[key];
34
40
  if (typeof sentryFn === "function") {
35
41
  const isClass = sentryFn.prototype && sentryFn.prototype.constructor === sentryFn && Object.getOwnPropertyNames(sentryFn.prototype).length > 1;
36
42
  if (isClass) {
37
43
  return sentryFn;
38
44
  }
39
- return sentryFn.bind(sentry);
45
+ return sentryFn.bind(sentryInstance);
40
46
  }
41
47
  return sentryFn;
42
48
  }
43
49
  });
44
50
  return proxy;
45
- };
51
+ }
46
52
  export {
47
- createMonitor,
48
- createMonitor as default
53
+ createMonitor
49
54
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xifan0/monitor-core",
3
- "version": "0.0.2-beta.6",
3
+ "version": "0.0.2-beta.7",
4
4
  "main": "dist/index.js",
5
5
  "module": "dist/index.mjs",
6
6
  "types": "dist/index.d.ts",