sentry-vir 0.0.4 → 0.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/README.md +7 -5
- package/dist/cjs/auto.d.ts +15 -0
- package/dist/cjs/auto.js +63 -0
- package/dist/cjs/browser.d.ts +93 -0
- package/dist/cjs/browser.js +48 -0
- package/dist/cjs/env/execution-env.d.ts +2 -170
- package/dist/cjs/env/execution-env.js +1 -38
- package/dist/cjs/event-context/event-context.d.ts +1 -1
- package/dist/cjs/index.d.ts +5 -5
- package/dist/cjs/index.js +5 -5
- package/dist/cjs/init-sentry/base-sentry-init.d.ts +38 -0
- package/dist/cjs/init-sentry/{init-sentry.js → base-sentry-init.js} +7 -8
- package/dist/cjs/node.d.ts +82 -0
- package/dist/cjs/node.js +48 -0
- package/dist/cjs/{init-sentry → processing}/event-processor.d.ts +1 -1
- package/dist/cjs/{init-sentry → processing}/sentry-config.js +2 -0
- package/dist/esm/auto.d.ts +15 -0
- package/dist/esm/auto.js +36 -0
- package/dist/esm/browser.d.ts +93 -0
- package/dist/esm/browser.js +21 -0
- package/dist/esm/env/execution-env.d.ts +13 -0
- package/dist/esm/env/execution-env.js +0 -13
- package/dist/{types → esm}/event-context/event-context.d.ts +1 -1
- package/dist/{types → esm}/index.d.ts +5 -5
- package/dist/esm/index.js +5 -5
- package/dist/esm/init-sentry/base-sentry-init.d.ts +38 -0
- package/dist/esm/init-sentry/{init-sentry.js → base-sentry-init.js} +5 -6
- package/dist/esm/node.d.ts +82 -0
- package/dist/esm/node.js +21 -0
- package/dist/{types/init-sentry → esm/processing}/event-processor.d.ts +1 -1
- package/dist/esm/{init-sentry → processing}/sentry-config.js +2 -0
- package/package.json +6 -3
- package/dist/cjs/init-sentry/init-sentry.d.ts +0 -194
- package/dist/types/env/execution-env.d.ts +0 -181
- package/dist/types/init-sentry/init-sentry.d.ts +0 -194
- /package/dist/cjs/{init-sentry → processing}/event-processor.js +0 -0
- /package/dist/cjs/{init-sentry → processing}/handle-sentry-send.d.ts +0 -0
- /package/dist/cjs/{init-sentry → processing}/handle-sentry-send.js +0 -0
- /package/dist/cjs/{init-sentry → processing}/sentry-config.d.ts +0 -0
- /package/dist/cjs/{init-sentry → processing}/sentry-logger.d.ts +0 -0
- /package/dist/cjs/{init-sentry → processing}/sentry-logger.js +0 -0
- /package/dist/{types → esm}/env/release-env.d.ts +0 -0
- /package/dist/{types → esm}/event-context/event-severity.d.ts +0 -0
- /package/dist/{types → esm}/event-context/extra-context.error.d.ts +0 -0
- /package/dist/{types → esm}/event-context/extra-event-context.d.ts +0 -0
- /package/dist/esm/{init-sentry → processing}/event-processor.js +0 -0
- /package/dist/{types/init-sentry → esm/processing}/handle-sentry-send.d.ts +0 -0
- /package/dist/esm/{init-sentry → processing}/handle-sentry-send.js +0 -0
- /package/dist/{types/init-sentry → esm/processing}/sentry-config.d.ts +0 -0
- /package/dist/{types/init-sentry → esm/processing}/sentry-logger.d.ts +0 -0
- /package/dist/esm/{init-sentry → processing}/sentry-logger.js +0 -0
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { InitSentryInput } from './init-sentry/base-sentry-init';
|
|
2
|
+
/**
|
|
3
|
+
* Base Sentry init. Requires the Sentry module to already have been imported. Setup a sentry client
|
|
4
|
+
* with all the default sentry-vir integrations and configs.
|
|
5
|
+
*
|
|
6
|
+
* To override any default sentry-vir settings, include them in the userConfig input.
|
|
7
|
+
*/
|
|
8
|
+
export declare function initSentry({ dsn, releaseEnv, releaseName, sentryConfigOverrides, createUniversalContext, }: Omit<InitSentryInput, 'executionEnv'>): Promise<{
|
|
9
|
+
default: typeof import("@sentry/node");
|
|
10
|
+
addGlobalEventProcessor: typeof import("@sentry/node").addGlobalEventProcessor;
|
|
11
|
+
addBreadcrumb: typeof import("@sentry/node").addBreadcrumb;
|
|
12
|
+
captureException: typeof import("@sentry/node").captureException;
|
|
13
|
+
captureEvent: typeof import("@sentry/node").captureEvent;
|
|
14
|
+
captureMessage: typeof import("@sentry/node").captureMessage;
|
|
15
|
+
close: typeof import("@sentry/node").close;
|
|
16
|
+
configureScope: typeof import("@sentry/node").configureScope;
|
|
17
|
+
createTransport: typeof import("@sentry/node").createTransport;
|
|
18
|
+
extractTraceparentData: typeof import("@sentry/node").extractTraceparentData;
|
|
19
|
+
flush: typeof import("@sentry/node").flush;
|
|
20
|
+
getActiveTransaction: typeof import("@sentry/node").getActiveTransaction;
|
|
21
|
+
getHubFromCarrier: typeof import("@sentry/node").getHubFromCarrier;
|
|
22
|
+
getCurrentHub: typeof import("@sentry/node").getCurrentHub;
|
|
23
|
+
Hub: typeof import("@sentry/node").Hub;
|
|
24
|
+
lastEventId: typeof import("@sentry/node").lastEventId;
|
|
25
|
+
makeMain: typeof import("@sentry/node").makeMain;
|
|
26
|
+
runWithAsyncContext: typeof import("@sentry/node").runWithAsyncContext;
|
|
27
|
+
Scope: typeof import("@sentry/node").Scope;
|
|
28
|
+
startTransaction: typeof import("@sentry/node").startTransaction;
|
|
29
|
+
SDK_VERSION: "7.73.0";
|
|
30
|
+
setContext: typeof import("@sentry/node").setContext;
|
|
31
|
+
setExtra: typeof import("@sentry/node").setExtra;
|
|
32
|
+
setExtras: typeof import("@sentry/node").setExtras;
|
|
33
|
+
setTag: typeof import("@sentry/node").setTag;
|
|
34
|
+
setTags: typeof import("@sentry/node").setTags;
|
|
35
|
+
setUser: typeof import("@sentry/node").setUser;
|
|
36
|
+
spanStatusfromHttpCode: typeof import("@sentry/node").spanStatusfromHttpCode;
|
|
37
|
+
trace: typeof import("@sentry/node").trace;
|
|
38
|
+
withScope: typeof import("@sentry/node").withScope;
|
|
39
|
+
captureCheckIn: typeof import("@sentry/node").captureCheckIn;
|
|
40
|
+
setMeasurement: typeof import("@sentry/node").setMeasurement;
|
|
41
|
+
getActiveSpan: typeof import("@sentry/node").getActiveSpan;
|
|
42
|
+
startSpan: typeof import("@sentry/node").startSpan;
|
|
43
|
+
startActiveSpan: typeof import("@sentry/node").startSpan;
|
|
44
|
+
startInactiveSpan: typeof import("@sentry/node").startInactiveSpan;
|
|
45
|
+
startSpanManual: typeof import("@sentry/node").startSpanManual;
|
|
46
|
+
autoDiscoverNodePerformanceMonitoringIntegrations: typeof import("@sentry/node").autoDiscoverNodePerformanceMonitoringIntegrations;
|
|
47
|
+
NodeClient: typeof import("@sentry/node").NodeClient;
|
|
48
|
+
makeNodeTransport: typeof import("@sentry/node").makeNodeTransport;
|
|
49
|
+
defaultIntegrations: (import("@sentry/core").InboundFilters | import("@sentry/core").FunctionToString | import("@sentry/node/types/integrations").OnUncaughtException | import("@sentry/node/types/integrations").OnUnhandledRejection | import("@sentry/node/types/integrations").ContextLines | import("@sentry/node/types/integrations").Context | import("@sentry/node/types/integrations").Console | import("@sentry/node/types/integrations").Http | import("@sentry/node/types/integrations").LinkedErrors | import("@sentry/node/types/integrations").Modules | import("@sentry/node/types/integrations").RequestData | import("@sentry/node/types/integrations").LocalVariables | import("@sentry/node/types/integrations").Undici)[];
|
|
50
|
+
init: typeof import("@sentry/node").init;
|
|
51
|
+
defaultStackParser: import("@sentry/types").StackParser;
|
|
52
|
+
getSentryRelease: typeof import("@sentry/node").getSentryRelease;
|
|
53
|
+
addRequestDataToEvent: typeof import("@sentry/node").addRequestDataToEvent;
|
|
54
|
+
DEFAULT_USER_INCLUDES: string[];
|
|
55
|
+
extractRequestData: typeof import("@sentry/node").extractRequestData;
|
|
56
|
+
deepReadDirSync: typeof import("@sentry/node").deepReadDirSync;
|
|
57
|
+
getModuleFromFilename: typeof import("@sentry/node").getModuleFromFilename;
|
|
58
|
+
enableAnrDetection: typeof import("@sentry/node").enableAnrDetection;
|
|
59
|
+
Integrations: {
|
|
60
|
+
Apollo: typeof import("@sentry-internal/tracing").Apollo;
|
|
61
|
+
Express: typeof import("@sentry-internal/tracing").Express;
|
|
62
|
+
GraphQL: typeof import("@sentry-internal/tracing").GraphQL;
|
|
63
|
+
Mongo: typeof import("@sentry-internal/tracing").Mongo;
|
|
64
|
+
Mysql: typeof import("@sentry-internal/tracing").Mysql;
|
|
65
|
+
Postgres: typeof import("@sentry-internal/tracing").Postgres;
|
|
66
|
+
Prisma: typeof import("@sentry-internal/tracing").Prisma;
|
|
67
|
+
Console: typeof import("@sentry/node/types/integrations").Console;
|
|
68
|
+
Http: typeof import("@sentry/node/types/integrations").Http;
|
|
69
|
+
OnUncaughtException: typeof import("@sentry/node/types/integrations").OnUncaughtException;
|
|
70
|
+
OnUnhandledRejection: typeof import("@sentry/node/types/integrations").OnUnhandledRejection;
|
|
71
|
+
LinkedErrors: typeof import("@sentry/node/types/integrations").LinkedErrors;
|
|
72
|
+
Modules: typeof import("@sentry/node/types/integrations").Modules;
|
|
73
|
+
ContextLines: typeof import("@sentry/node/types/integrations").ContextLines;
|
|
74
|
+
Context: typeof import("@sentry/node/types/integrations").Context;
|
|
75
|
+
RequestData: typeof import("@sentry/node/types/integrations").RequestData;
|
|
76
|
+
LocalVariables: typeof import("@sentry/node/types/integrations").LocalVariables;
|
|
77
|
+
Undici: typeof import("@sentry/node/types/integrations").Undici;
|
|
78
|
+
FunctionToString: typeof import("@sentry/core").FunctionToString;
|
|
79
|
+
InboundFilters: typeof import("@sentry/core").InboundFilters;
|
|
80
|
+
};
|
|
81
|
+
Handlers: typeof import("@sentry/node/types/handlers");
|
|
82
|
+
}>;
|
package/dist/cjs/node.js
ADDED
|
@@ -0,0 +1,48 @@
|
|
|
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 __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.initSentry = void 0;
|
|
27
|
+
const execution_env_1 = require("./env/execution-env");
|
|
28
|
+
const event_processor_1 = require("./processing/event-processor");
|
|
29
|
+
const sentry_config_1 = require("./processing/sentry-config");
|
|
30
|
+
/**
|
|
31
|
+
* Base Sentry init. Requires the Sentry module to already have been imported. Setup a sentry client
|
|
32
|
+
* with all the default sentry-vir integrations and configs.
|
|
33
|
+
*
|
|
34
|
+
* To override any default sentry-vir settings, include them in the userConfig input.
|
|
35
|
+
*/
|
|
36
|
+
/* c8 ignore next */
|
|
37
|
+
async function initSentry({ dsn, releaseEnv, releaseName, sentryConfigOverrides, createUniversalContext, }) {
|
|
38
|
+
const sentryDep = await Promise.resolve().then(() => __importStar(require('@sentry/node')));
|
|
39
|
+
const finalSentryConfig = await (0, sentry_config_1.createSentryConfig)(execution_env_1.SentryExecutionEnvEnum.Node, sentryDep, {
|
|
40
|
+
dsn,
|
|
41
|
+
environment: releaseEnv,
|
|
42
|
+
release: releaseName,
|
|
43
|
+
}, sentryConfigOverrides, releaseEnv);
|
|
44
|
+
sentryDep.init(finalSentryConfig);
|
|
45
|
+
sentryDep.addGlobalEventProcessor((event, hint) => (0, event_processor_1.processSentryEvent)(event, hint, createUniversalContext));
|
|
46
|
+
return sentryDep;
|
|
47
|
+
}
|
|
48
|
+
exports.initSentry = initSentry;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { EventHint, Event as SentryEvent } from '@sentry/types';
|
|
1
|
+
import type { EventHint, Event as SentryEvent } from '@sentry/types';
|
|
2
2
|
import { EventExtraContextCreator } from '../event-context/event-context';
|
|
3
3
|
/** Attach extra event data for a sentry event. */
|
|
4
4
|
export declare function processSentryEvent(
|
|
@@ -5,6 +5,8 @@ const common_1 = require("@augment-vir/common");
|
|
|
5
5
|
const execution_env_1 = require("../env/execution-env");
|
|
6
6
|
const handle_sentry_send_1 = require("./handle-sentry-send");
|
|
7
7
|
/** Creates the sentry config used internally by sentry-vir. */
|
|
8
|
+
// can't test config creation because it depends on execution environment
|
|
9
|
+
/* c8 ignore next 60 */
|
|
8
10
|
async function createSentryConfig(env, sentryDep, requiredSentryOptions, userOverrides, releaseEnv) {
|
|
9
11
|
const sharedSentryConfig = {
|
|
10
12
|
beforeSend: (0, handle_sentry_send_1.createSentryHandler)(releaseEnv),
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { SentryDep, SentryExecutionEnvEnum } from './env/execution-env';
|
|
2
|
+
import { InitSentryInput } from './init-sentry/base-sentry-init';
|
|
3
|
+
/** A function which imports a Sentry dep. */
|
|
4
|
+
export type SentryDepImporter = () => Promise<SentryDep>;
|
|
5
|
+
/** The sentry dep import for each execution env. */
|
|
6
|
+
export declare const sentryDepByEnv: Record<SentryExecutionEnvEnum, SentryDepImporter>;
|
|
7
|
+
/**
|
|
8
|
+
* Automatically determines which Sentry module to import based on the given execution env. Warning:
|
|
9
|
+
* using this function will likely cause both Sentry modules to be included in your bundles.
|
|
10
|
+
*
|
|
11
|
+
* Setup a Sentry client with all the default sentry-vir integrations and configs.
|
|
12
|
+
*
|
|
13
|
+
* To override any default sentry-vir settings, include them in the userConfig input.
|
|
14
|
+
*/
|
|
15
|
+
export declare function autoInitSentry({ executionEnv, dsn, releaseEnv, releaseName, sentryConfigOverrides, createUniversalContext, }: InitSentryInput): Promise<typeof import("@sentry/browser") | typeof import("@sentry/node")>;
|
package/dist/esm/auto.js
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { SentryExecutionEnvEnum } from './env/execution-env';
|
|
2
|
+
import { processSentryEvent } from './processing/event-processor';
|
|
3
|
+
import { createSentryConfig } from './processing/sentry-config';
|
|
4
|
+
/** The sentry dep import for each execution env. */
|
|
5
|
+
/* c8 ignore next 6 */
|
|
6
|
+
export const sentryDepByEnv = {
|
|
7
|
+
/** Sentry client for the browser. */
|
|
8
|
+
[SentryExecutionEnvEnum.Browser]: () => import('@sentry/browser'),
|
|
9
|
+
/** Sentry client for the Node.js. */
|
|
10
|
+
[SentryExecutionEnvEnum.Node]: () => import('@sentry/node'),
|
|
11
|
+
};
|
|
12
|
+
/* c8 ignore next 6 */
|
|
13
|
+
/** Determine which Sentry client dependency to use and then import it. */
|
|
14
|
+
async function getSentryByEnv(env) {
|
|
15
|
+
return (await sentryDepByEnv[env]());
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Automatically determines which Sentry module to import based on the given execution env. Warning:
|
|
19
|
+
* using this function will likely cause both Sentry modules to be included in your bundles.
|
|
20
|
+
*
|
|
21
|
+
* Setup a Sentry client with all the default sentry-vir integrations and configs.
|
|
22
|
+
*
|
|
23
|
+
* To override any default sentry-vir settings, include them in the userConfig input.
|
|
24
|
+
*/
|
|
25
|
+
/* c8 ignore next 30 */
|
|
26
|
+
export async function autoInitSentry({ executionEnv, dsn, releaseEnv, releaseName, sentryConfigOverrides, createUniversalContext, }) {
|
|
27
|
+
const sentryDep = await getSentryByEnv(executionEnv);
|
|
28
|
+
const finalSentryConfig = await createSentryConfig(executionEnv, sentryDep, {
|
|
29
|
+
dsn,
|
|
30
|
+
environment: releaseEnv,
|
|
31
|
+
release: releaseName,
|
|
32
|
+
}, sentryConfigOverrides, releaseEnv);
|
|
33
|
+
sentryDep.init(finalSentryConfig);
|
|
34
|
+
sentryDep.addGlobalEventProcessor((event, hint) => processSentryEvent(event, hint, createUniversalContext));
|
|
35
|
+
return sentryDep;
|
|
36
|
+
}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { InitSentryInput } from './init-sentry/base-sentry-init';
|
|
2
|
+
/**
|
|
3
|
+
* Base Sentry init. Requires the Sentry module to already have been imported. Setup a sentry client
|
|
4
|
+
* with all the default sentry-vir integrations and configs.
|
|
5
|
+
*
|
|
6
|
+
* To override any default sentry-vir settings, include them in the userConfig input.
|
|
7
|
+
*/
|
|
8
|
+
export declare function initSentry({ dsn, releaseEnv, releaseName, sentryConfigOverrides, createUniversalContext, }: Omit<InitSentryInput, 'executionEnv'>): Promise<{
|
|
9
|
+
default: typeof import("@sentry/browser");
|
|
10
|
+
Integrations: {
|
|
11
|
+
GlobalHandlers: typeof import("@sentry/browser").GlobalHandlers;
|
|
12
|
+
TryCatch: typeof import("@sentry/browser").TryCatch;
|
|
13
|
+
Breadcrumbs: typeof import("@sentry/browser").Breadcrumbs;
|
|
14
|
+
LinkedErrors: typeof import("@sentry/browser").LinkedErrors;
|
|
15
|
+
HttpContext: typeof import("@sentry/browser").HttpContext;
|
|
16
|
+
Dedupe: typeof import("@sentry/browser").Dedupe;
|
|
17
|
+
FunctionToString: typeof import("@sentry/browser").FunctionToString;
|
|
18
|
+
InboundFilters: typeof import("@sentry/browser").InboundFilters;
|
|
19
|
+
};
|
|
20
|
+
Replay: typeof import("@sentry/browser").Replay;
|
|
21
|
+
BrowserTracing: typeof import("@sentry/browser").BrowserTracing;
|
|
22
|
+
defaultRequestInstrumentationOptions: import("@sentry/browser").RequestInstrumentationOptions;
|
|
23
|
+
instrumentOutgoingRequests: typeof import("@sentry/browser").instrumentOutgoingRequests;
|
|
24
|
+
addTracingExtensions: typeof import("@sentry/browser").addTracingExtensions;
|
|
25
|
+
setMeasurement: typeof import("@sentry/browser").setMeasurement;
|
|
26
|
+
extractTraceparentData: typeof import("@sentry/browser").extractTraceparentData;
|
|
27
|
+
getActiveTransaction: typeof import("@sentry/browser").getActiveTransaction;
|
|
28
|
+
spanStatusfromHttpCode: typeof import("@sentry/browser").spanStatusfromHttpCode;
|
|
29
|
+
trace: typeof import("@sentry/browser").trace;
|
|
30
|
+
makeMultiplexedTransport: typeof import("@sentry/browser").makeMultiplexedTransport;
|
|
31
|
+
ModuleMetadata: typeof import("@sentry/browser").ModuleMetadata;
|
|
32
|
+
makeBrowserOfflineTransport: typeof import("@sentry/browser").makeBrowserOfflineTransport;
|
|
33
|
+
onProfilingStartRouteTransaction: typeof import("@sentry/browser").onProfilingStartRouteTransaction;
|
|
34
|
+
BrowserProfilingIntegration: typeof import("@sentry/browser").BrowserProfilingIntegration;
|
|
35
|
+
addGlobalEventProcessor: typeof import("@sentry/browser").addGlobalEventProcessor;
|
|
36
|
+
addBreadcrumb: typeof import("@sentry/browser").addBreadcrumb;
|
|
37
|
+
captureException: typeof import("@sentry/browser").captureException;
|
|
38
|
+
captureEvent: typeof import("@sentry/browser").captureEvent;
|
|
39
|
+
captureMessage: typeof import("@sentry/browser").captureMessage;
|
|
40
|
+
close: typeof import("@sentry/browser").close;
|
|
41
|
+
configureScope: typeof import("@sentry/browser").configureScope;
|
|
42
|
+
createTransport: typeof import("@sentry/browser").createTransport;
|
|
43
|
+
flush: typeof import("@sentry/browser").flush;
|
|
44
|
+
getHubFromCarrier: typeof import("@sentry/browser").getHubFromCarrier;
|
|
45
|
+
getCurrentHub: typeof import("@sentry/browser").getCurrentHub;
|
|
46
|
+
Hub: typeof import("@sentry/browser").Hub;
|
|
47
|
+
lastEventId: typeof import("@sentry/browser").lastEventId;
|
|
48
|
+
makeMain: typeof import("@sentry/browser").makeMain;
|
|
49
|
+
Scope: typeof import("@sentry/browser").Scope;
|
|
50
|
+
startTransaction: typeof import("@sentry/browser").startTransaction;
|
|
51
|
+
getActiveSpan: typeof import("@sentry/browser").getActiveSpan;
|
|
52
|
+
startSpan: typeof import("@sentry/browser").startSpan;
|
|
53
|
+
startInactiveSpan: typeof import("@sentry/browser").startInactiveSpan;
|
|
54
|
+
startSpanManual: typeof import("@sentry/browser").startSpanManual;
|
|
55
|
+
SDK_VERSION: "7.73.0";
|
|
56
|
+
setContext: typeof import("@sentry/browser").setContext;
|
|
57
|
+
setExtra: typeof import("@sentry/browser").setExtra;
|
|
58
|
+
setExtras: typeof import("@sentry/browser").setExtras;
|
|
59
|
+
setTag: typeof import("@sentry/browser").setTag;
|
|
60
|
+
setTags: typeof import("@sentry/browser").setTags;
|
|
61
|
+
setUser: typeof import("@sentry/browser").setUser;
|
|
62
|
+
withScope: typeof import("@sentry/browser").withScope;
|
|
63
|
+
FunctionToString: typeof import("@sentry/browser").FunctionToString;
|
|
64
|
+
InboundFilters: typeof import("@sentry/browser").InboundFilters;
|
|
65
|
+
WINDOW: import("@sentry/utils").InternalGlobal & Window;
|
|
66
|
+
BrowserClient: typeof import("@sentry/browser").BrowserClient;
|
|
67
|
+
makeFetchTransport: typeof import("@sentry/browser").makeFetchTransport;
|
|
68
|
+
makeXHRTransport: typeof import("@sentry/browser").makeXHRTransport;
|
|
69
|
+
defaultStackParser: import("@sentry/types").StackParser;
|
|
70
|
+
defaultStackLineParsers: import("@sentry/types").StackLineParser[];
|
|
71
|
+
chromeStackLineParser: import("@sentry/types").StackLineParser;
|
|
72
|
+
geckoStackLineParser: import("@sentry/types").StackLineParser;
|
|
73
|
+
opera10StackLineParser: import("@sentry/types").StackLineParser;
|
|
74
|
+
opera11StackLineParser: import("@sentry/types").StackLineParser;
|
|
75
|
+
winjsStackLineParser: import("@sentry/types").StackLineParser;
|
|
76
|
+
eventFromException: typeof import("@sentry/browser").eventFromException;
|
|
77
|
+
eventFromMessage: typeof import("@sentry/browser").eventFromMessage;
|
|
78
|
+
exceptionFromError: typeof import("@sentry/browser").exceptionFromError;
|
|
79
|
+
createUserFeedbackEnvelope: typeof import("@sentry/browser").createUserFeedbackEnvelope;
|
|
80
|
+
defaultIntegrations: (import("@sentry/browser").HttpContext | import("@sentry/browser").Dedupe | import("@sentry/browser").InboundFilters | import("@sentry/browser").FunctionToString | import("@sentry/browser").GlobalHandlers | import("@sentry/browser").TryCatch | import("@sentry/browser").Breadcrumbs | import("@sentry/browser").LinkedErrors)[];
|
|
81
|
+
forceLoad: typeof import("@sentry/browser").forceLoad;
|
|
82
|
+
init: typeof import("@sentry/browser").init;
|
|
83
|
+
onLoad: typeof import("@sentry/browser").onLoad;
|
|
84
|
+
showReportDialog: typeof import("@sentry/browser").showReportDialog;
|
|
85
|
+
captureUserFeedback: typeof import("@sentry/browser").captureUserFeedback;
|
|
86
|
+
wrap: typeof import("@sentry/browser").wrap;
|
|
87
|
+
GlobalHandlers: typeof import("@sentry/browser").GlobalHandlers;
|
|
88
|
+
TryCatch: typeof import("@sentry/browser").TryCatch;
|
|
89
|
+
Breadcrumbs: typeof import("@sentry/browser").Breadcrumbs;
|
|
90
|
+
LinkedErrors: typeof import("@sentry/browser").LinkedErrors;
|
|
91
|
+
HttpContext: typeof import("@sentry/browser").HttpContext;
|
|
92
|
+
Dedupe: typeof import("@sentry/browser").Dedupe;
|
|
93
|
+
}>;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { SentryExecutionEnvEnum } from './env/execution-env';
|
|
2
|
+
import { processSentryEvent } from './processing/event-processor';
|
|
3
|
+
import { createSentryConfig } from './processing/sentry-config';
|
|
4
|
+
/**
|
|
5
|
+
* Base Sentry init. Requires the Sentry module to already have been imported. Setup a sentry client
|
|
6
|
+
* with all the default sentry-vir integrations and configs.
|
|
7
|
+
*
|
|
8
|
+
* To override any default sentry-vir settings, include them in the userConfig input.
|
|
9
|
+
*/
|
|
10
|
+
/* c8 ignore next */
|
|
11
|
+
export async function initSentry({ dsn, releaseEnv, releaseName, sentryConfigOverrides, createUniversalContext, }) {
|
|
12
|
+
const sentryDep = await import('@sentry/browser');
|
|
13
|
+
const finalSentryConfig = await createSentryConfig(SentryExecutionEnvEnum.Browser, sentryDep, {
|
|
14
|
+
dsn,
|
|
15
|
+
environment: releaseEnv,
|
|
16
|
+
release: releaseName,
|
|
17
|
+
}, sentryConfigOverrides, releaseEnv);
|
|
18
|
+
sentryDep.init(finalSentryConfig);
|
|
19
|
+
sentryDep.addGlobalEventProcessor((event, hint) => processSentryEvent(event, hint, createUniversalContext));
|
|
20
|
+
return sentryDep;
|
|
21
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/** Used to determine which Sentry client dependency to import. */
|
|
2
|
+
export declare enum SentryExecutionEnvEnum {
|
|
3
|
+
Browser = "browser",
|
|
4
|
+
Node = "node"
|
|
5
|
+
}
|
|
6
|
+
/** Sentry client dependency used only in the browser. */
|
|
7
|
+
export type SentryBrowserDep = typeof import('@sentry/browser');
|
|
8
|
+
/** Sentry client dependency used only in Node.js. */
|
|
9
|
+
export type SentryNodeDep = typeof import('@sentry/node');
|
|
10
|
+
/** Any of the Sentry client dependencies. */
|
|
11
|
+
export type SentryDep = SentryBrowserDep | SentryNodeDep;
|
|
12
|
+
/** Pick a Sentry client dependency based on the given environment. */
|
|
13
|
+
export type SentryDepByEnv<Env extends SentryExecutionEnvEnum> = Env extends SentryExecutionEnvEnum.Browser ? SentryBrowserDep : SentryNodeDep;
|
|
@@ -5,16 +5,3 @@ export var SentryExecutionEnvEnum;
|
|
|
5
5
|
SentryExecutionEnvEnum["Browser"] = "browser";
|
|
6
6
|
SentryExecutionEnvEnum["Node"] = "node";
|
|
7
7
|
})(SentryExecutionEnvEnum || (SentryExecutionEnvEnum = {}));
|
|
8
|
-
/** The sentry dep import for each execution env. */
|
|
9
|
-
/* c8 ignore next 6 */
|
|
10
|
-
export const sentryDepByEnv = {
|
|
11
|
-
/** Sentry client for the browser. */
|
|
12
|
-
[SentryExecutionEnvEnum.Browser]: () => import('@sentry/browser'),
|
|
13
|
-
/** Sentry client for the Node.js. */
|
|
14
|
-
[SentryExecutionEnvEnum.Node]: () => import('@sentry/node'),
|
|
15
|
-
};
|
|
16
|
-
/* c8 ignore next 6 */
|
|
17
|
-
/** Determine which Sentry client dependency to use and then import it. */
|
|
18
|
-
export async function getSentryByEnv(env) {
|
|
19
|
-
return (await sentryDepByEnv[env]());
|
|
20
|
-
}
|
|
@@ -4,8 +4,8 @@ export * from './event-context/event-context';
|
|
|
4
4
|
export * from './event-context/event-severity';
|
|
5
5
|
export * from './event-context/extra-context.error';
|
|
6
6
|
export * from './event-context/extra-event-context';
|
|
7
|
-
export * from './init-sentry/
|
|
8
|
-
export * from './
|
|
9
|
-
export * from './
|
|
10
|
-
export * from './
|
|
11
|
-
export * from './
|
|
7
|
+
export * from './init-sentry/base-sentry-init';
|
|
8
|
+
export * from './processing/event-processor';
|
|
9
|
+
export * from './processing/handle-sentry-send';
|
|
10
|
+
export * from './processing/sentry-config';
|
|
11
|
+
export * from './processing/sentry-logger';
|
package/dist/esm/index.js
CHANGED
|
@@ -4,8 +4,8 @@ export * from './event-context/event-context';
|
|
|
4
4
|
export * from './event-context/event-severity';
|
|
5
5
|
export * from './event-context/extra-context.error';
|
|
6
6
|
export * from './event-context/extra-event-context';
|
|
7
|
-
export * from './init-sentry/
|
|
8
|
-
export * from './
|
|
9
|
-
export * from './
|
|
10
|
-
export * from './
|
|
11
|
-
export * from './
|
|
7
|
+
export * from './init-sentry/base-sentry-init';
|
|
8
|
+
export * from './processing/event-processor';
|
|
9
|
+
export * from './processing/handle-sentry-send';
|
|
10
|
+
export * from './processing/sentry-config';
|
|
11
|
+
export * from './processing/sentry-logger';
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { Options } from '@sentry/types';
|
|
2
|
+
import { SentryDep, SentryExecutionEnvEnum } from '../env/execution-env';
|
|
3
|
+
import { SentryReleaseEnvEnum } from '../env/release-env';
|
|
4
|
+
import { EventExtraContextCreator } from '../event-context/event-context';
|
|
5
|
+
import { UserOverrides } from '../processing/sentry-config';
|
|
6
|
+
/** Configuration for initializing Sentry. */
|
|
7
|
+
export type InitSentryInput = {
|
|
8
|
+
/**
|
|
9
|
+
* The release environment, prod vs dev rather than browser vs node. In dev, events won't be
|
|
10
|
+
* sent to sentry. In both options, all events will be logged to the local console.
|
|
11
|
+
*/
|
|
12
|
+
releaseEnv: SentryReleaseEnvEnum;
|
|
13
|
+
/**
|
|
14
|
+
* The environment wherein the Sentry client will execute. Used to determine which Sentry client
|
|
15
|
+
* to load: browser or node.
|
|
16
|
+
*/
|
|
17
|
+
executionEnv: SentryExecutionEnvEnum;
|
|
18
|
+
/** Name for the current release. */
|
|
19
|
+
releaseName: Required<Options>['release'];
|
|
20
|
+
/** DSN needed for Sentry to hook up to your sentry project. */
|
|
21
|
+
dsn: Required<Options>['dsn'];
|
|
22
|
+
/**
|
|
23
|
+
* Optionally create extra context to be included in all Sentry events. This will execute for
|
|
24
|
+
* each event that is processed.
|
|
25
|
+
*/
|
|
26
|
+
createUniversalContext?: EventExtraContextCreator | undefined;
|
|
27
|
+
/** Optionally override any Sentry config properties that this package sets. */
|
|
28
|
+
sentryConfigOverrides?: UserOverrides;
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* Base Sentry init. Requires the Sentry module to already have been imported. Setup a sentry client
|
|
32
|
+
* with all the default sentry-vir integrations and configs.
|
|
33
|
+
*
|
|
34
|
+
* To override any default sentry-vir settings, include them in the userConfig input.
|
|
35
|
+
*/
|
|
36
|
+
export declare function baseInitSentry({ dsn, releaseEnv, releaseName, sentryConfigOverrides, createUniversalContext, sentryDep, executionEnv, }: InitSentryInput & {
|
|
37
|
+
sentryDep: SentryDep;
|
|
38
|
+
}): Promise<SentryDep>;
|
|
@@ -1,14 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { createSentryConfig } from './sentry-config';
|
|
1
|
+
import { processSentryEvent } from '../processing/event-processor';
|
|
2
|
+
import { createSentryConfig } from '../processing/sentry-config';
|
|
4
3
|
/**
|
|
5
|
-
*
|
|
4
|
+
* Base Sentry init. Requires the Sentry module to already have been imported. Setup a sentry client
|
|
5
|
+
* with all the default sentry-vir integrations and configs.
|
|
6
6
|
*
|
|
7
7
|
* To override any default sentry-vir settings, include them in the userConfig input.
|
|
8
8
|
*/
|
|
9
9
|
/* c8 ignore next */
|
|
10
|
-
export async function
|
|
11
|
-
const sentryDep = await getSentryByEnv(executionEnv);
|
|
10
|
+
export async function baseInitSentry({ dsn, releaseEnv, releaseName, sentryConfigOverrides, createUniversalContext, sentryDep, executionEnv, }) {
|
|
12
11
|
const finalSentryConfig = await createSentryConfig(executionEnv, sentryDep, {
|
|
13
12
|
dsn,
|
|
14
13
|
environment: releaseEnv,
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { InitSentryInput } from './init-sentry/base-sentry-init';
|
|
2
|
+
/**
|
|
3
|
+
* Base Sentry init. Requires the Sentry module to already have been imported. Setup a sentry client
|
|
4
|
+
* with all the default sentry-vir integrations and configs.
|
|
5
|
+
*
|
|
6
|
+
* To override any default sentry-vir settings, include them in the userConfig input.
|
|
7
|
+
*/
|
|
8
|
+
export declare function initSentry({ dsn, releaseEnv, releaseName, sentryConfigOverrides, createUniversalContext, }: Omit<InitSentryInput, 'executionEnv'>): Promise<{
|
|
9
|
+
default: typeof import("@sentry/node");
|
|
10
|
+
addGlobalEventProcessor: typeof import("@sentry/node").addGlobalEventProcessor;
|
|
11
|
+
addBreadcrumb: typeof import("@sentry/node").addBreadcrumb;
|
|
12
|
+
captureException: typeof import("@sentry/node").captureException;
|
|
13
|
+
captureEvent: typeof import("@sentry/node").captureEvent;
|
|
14
|
+
captureMessage: typeof import("@sentry/node").captureMessage;
|
|
15
|
+
close: typeof import("@sentry/node").close;
|
|
16
|
+
configureScope: typeof import("@sentry/node").configureScope;
|
|
17
|
+
createTransport: typeof import("@sentry/node").createTransport;
|
|
18
|
+
extractTraceparentData: typeof import("@sentry/node").extractTraceparentData;
|
|
19
|
+
flush: typeof import("@sentry/node").flush;
|
|
20
|
+
getActiveTransaction: typeof import("@sentry/node").getActiveTransaction;
|
|
21
|
+
getHubFromCarrier: typeof import("@sentry/node").getHubFromCarrier;
|
|
22
|
+
getCurrentHub: typeof import("@sentry/node").getCurrentHub;
|
|
23
|
+
Hub: typeof import("@sentry/node").Hub;
|
|
24
|
+
lastEventId: typeof import("@sentry/node").lastEventId;
|
|
25
|
+
makeMain: typeof import("@sentry/node").makeMain;
|
|
26
|
+
runWithAsyncContext: typeof import("@sentry/node").runWithAsyncContext;
|
|
27
|
+
Scope: typeof import("@sentry/node").Scope;
|
|
28
|
+
startTransaction: typeof import("@sentry/node").startTransaction;
|
|
29
|
+
SDK_VERSION: "7.73.0";
|
|
30
|
+
setContext: typeof import("@sentry/node").setContext;
|
|
31
|
+
setExtra: typeof import("@sentry/node").setExtra;
|
|
32
|
+
setExtras: typeof import("@sentry/node").setExtras;
|
|
33
|
+
setTag: typeof import("@sentry/node").setTag;
|
|
34
|
+
setTags: typeof import("@sentry/node").setTags;
|
|
35
|
+
setUser: typeof import("@sentry/node").setUser;
|
|
36
|
+
spanStatusfromHttpCode: typeof import("@sentry/node").spanStatusfromHttpCode;
|
|
37
|
+
trace: typeof import("@sentry/node").trace;
|
|
38
|
+
withScope: typeof import("@sentry/node").withScope;
|
|
39
|
+
captureCheckIn: typeof import("@sentry/node").captureCheckIn;
|
|
40
|
+
setMeasurement: typeof import("@sentry/node").setMeasurement;
|
|
41
|
+
getActiveSpan: typeof import("@sentry/node").getActiveSpan;
|
|
42
|
+
startSpan: typeof import("@sentry/node").startSpan;
|
|
43
|
+
startActiveSpan: typeof import("@sentry/node").startSpan;
|
|
44
|
+
startInactiveSpan: typeof import("@sentry/node").startInactiveSpan;
|
|
45
|
+
startSpanManual: typeof import("@sentry/node").startSpanManual;
|
|
46
|
+
autoDiscoverNodePerformanceMonitoringIntegrations: typeof import("@sentry/node").autoDiscoverNodePerformanceMonitoringIntegrations;
|
|
47
|
+
NodeClient: typeof import("@sentry/node").NodeClient;
|
|
48
|
+
makeNodeTransport: typeof import("@sentry/node").makeNodeTransport;
|
|
49
|
+
defaultIntegrations: (import("@sentry/core").InboundFilters | import("@sentry/core").FunctionToString | import("@sentry/node/types/integrations").OnUncaughtException | import("@sentry/node/types/integrations").OnUnhandledRejection | import("@sentry/node/types/integrations").ContextLines | import("@sentry/node/types/integrations").Context | import("@sentry/node/types/integrations").Console | import("@sentry/node/types/integrations").Http | import("@sentry/node/types/integrations").LinkedErrors | import("@sentry/node/types/integrations").Modules | import("@sentry/node/types/integrations").RequestData | import("@sentry/node/types/integrations").LocalVariables | import("@sentry/node/types/integrations").Undici)[];
|
|
50
|
+
init: typeof import("@sentry/node").init;
|
|
51
|
+
defaultStackParser: import("@sentry/types").StackParser;
|
|
52
|
+
getSentryRelease: typeof import("@sentry/node").getSentryRelease;
|
|
53
|
+
addRequestDataToEvent: typeof import("@sentry/node").addRequestDataToEvent;
|
|
54
|
+
DEFAULT_USER_INCLUDES: string[];
|
|
55
|
+
extractRequestData: typeof import("@sentry/node").extractRequestData;
|
|
56
|
+
deepReadDirSync: typeof import("@sentry/node").deepReadDirSync;
|
|
57
|
+
getModuleFromFilename: typeof import("@sentry/node").getModuleFromFilename;
|
|
58
|
+
enableAnrDetection: typeof import("@sentry/node").enableAnrDetection;
|
|
59
|
+
Integrations: {
|
|
60
|
+
Apollo: typeof import("@sentry-internal/tracing").Apollo;
|
|
61
|
+
Express: typeof import("@sentry-internal/tracing").Express;
|
|
62
|
+
GraphQL: typeof import("@sentry-internal/tracing").GraphQL;
|
|
63
|
+
Mongo: typeof import("@sentry-internal/tracing").Mongo;
|
|
64
|
+
Mysql: typeof import("@sentry-internal/tracing").Mysql;
|
|
65
|
+
Postgres: typeof import("@sentry-internal/tracing").Postgres;
|
|
66
|
+
Prisma: typeof import("@sentry-internal/tracing").Prisma;
|
|
67
|
+
Console: typeof import("@sentry/node/types/integrations").Console;
|
|
68
|
+
Http: typeof import("@sentry/node/types/integrations").Http;
|
|
69
|
+
OnUncaughtException: typeof import("@sentry/node/types/integrations").OnUncaughtException;
|
|
70
|
+
OnUnhandledRejection: typeof import("@sentry/node/types/integrations").OnUnhandledRejection;
|
|
71
|
+
LinkedErrors: typeof import("@sentry/node/types/integrations").LinkedErrors;
|
|
72
|
+
Modules: typeof import("@sentry/node/types/integrations").Modules;
|
|
73
|
+
ContextLines: typeof import("@sentry/node/types/integrations").ContextLines;
|
|
74
|
+
Context: typeof import("@sentry/node/types/integrations").Context;
|
|
75
|
+
RequestData: typeof import("@sentry/node/types/integrations").RequestData;
|
|
76
|
+
LocalVariables: typeof import("@sentry/node/types/integrations").LocalVariables;
|
|
77
|
+
Undici: typeof import("@sentry/node/types/integrations").Undici;
|
|
78
|
+
FunctionToString: typeof import("@sentry/core").FunctionToString;
|
|
79
|
+
InboundFilters: typeof import("@sentry/core").InboundFilters;
|
|
80
|
+
};
|
|
81
|
+
Handlers: typeof import("@sentry/node/types/handlers");
|
|
82
|
+
}>;
|
package/dist/esm/node.js
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { SentryExecutionEnvEnum } from './env/execution-env';
|
|
2
|
+
import { processSentryEvent } from './processing/event-processor';
|
|
3
|
+
import { createSentryConfig } from './processing/sentry-config';
|
|
4
|
+
/**
|
|
5
|
+
* Base Sentry init. Requires the Sentry module to already have been imported. Setup a sentry client
|
|
6
|
+
* with all the default sentry-vir integrations and configs.
|
|
7
|
+
*
|
|
8
|
+
* To override any default sentry-vir settings, include them in the userConfig input.
|
|
9
|
+
*/
|
|
10
|
+
/* c8 ignore next */
|
|
11
|
+
export async function initSentry({ dsn, releaseEnv, releaseName, sentryConfigOverrides, createUniversalContext, }) {
|
|
12
|
+
const sentryDep = await import('@sentry/node');
|
|
13
|
+
const finalSentryConfig = await createSentryConfig(SentryExecutionEnvEnum.Node, sentryDep, {
|
|
14
|
+
dsn,
|
|
15
|
+
environment: releaseEnv,
|
|
16
|
+
release: releaseName,
|
|
17
|
+
}, sentryConfigOverrides, releaseEnv);
|
|
18
|
+
sentryDep.init(finalSentryConfig);
|
|
19
|
+
sentryDep.addGlobalEventProcessor((event, hint) => processSentryEvent(event, hint, createUniversalContext));
|
|
20
|
+
return sentryDep;
|
|
21
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { EventHint, Event as SentryEvent } from '@sentry/types';
|
|
1
|
+
import type { EventHint, Event as SentryEvent } from '@sentry/types';
|
|
2
2
|
import { EventExtraContextCreator } from '../event-context/event-context';
|
|
3
3
|
/** Attach extra event data for a sentry event. */
|
|
4
4
|
export declare function processSentryEvent(
|
|
@@ -2,6 +2,8 @@ import { mergeDeep } from '@augment-vir/common';
|
|
|
2
2
|
import { SentryExecutionEnvEnum, } from '../env/execution-env';
|
|
3
3
|
import { createSentryHandler } from './handle-sentry-send';
|
|
4
4
|
/** Creates the sentry config used internally by sentry-vir. */
|
|
5
|
+
// can't test config creation because it depends on execution environment
|
|
6
|
+
/* c8 ignore next 60 */
|
|
5
7
|
export async function createSentryConfig(env, sentryDep, requiredSentryOptions, userOverrides, releaseEnv) {
|
|
6
8
|
const sharedSentryConfig = {
|
|
7
9
|
beforeSend: createSentryHandler(releaseEnv),
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sentry-vir",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"keywords": [
|
|
5
5
|
"config",
|
|
6
6
|
"helper",
|
|
@@ -22,9 +22,12 @@
|
|
|
22
22
|
},
|
|
23
23
|
"main": "dist/cjs/index.js",
|
|
24
24
|
"module": "dist/esm/index.js",
|
|
25
|
-
"types": "dist/
|
|
25
|
+
"types": "dist/esm/index.d.ts",
|
|
26
|
+
"workspaces": [
|
|
27
|
+
"./"
|
|
28
|
+
],
|
|
26
29
|
"scripts": {
|
|
27
|
-
"compile": "rm -rf dist && tsc --project tsconfig.json && tsc --project tsconfig.cjs.json",
|
|
30
|
+
"compile": "rm -rf dist && tsc --project tsconfig.json && npm i && tsc --project tsconfig.cjs.json",
|
|
28
31
|
"docs": "virmator docs",
|
|
29
32
|
"format": "virmator format",
|
|
30
33
|
"publish": "virmator publish \"npm run compile && npm run test:all\"",
|