sentry-vir 0.0.0 → 0.0.2

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.
Files changed (52) hide show
  1. package/LICENSE-CC0 +121 -0
  2. package/LICENSE-MIT +21 -0
  3. package/README.md +92 -0
  4. package/dist/cjs/env/execution-env.d.ts +181 -0
  5. package/dist/cjs/env/execution-env.js +47 -0
  6. package/dist/cjs/env/release-env.d.ts +8 -0
  7. package/dist/cjs/env/release-env.js +13 -0
  8. package/dist/cjs/event-context/event-context.d.ts +16 -0
  9. package/dist/cjs/event-context/event-context.js +11 -0
  10. package/dist/cjs/event-context/event-severity.d.ts +21 -0
  11. package/dist/cjs/event-context/event-severity.js +37 -0
  12. package/dist/cjs/event-context/extra-context.error.d.ts +24 -0
  13. package/dist/cjs/event-context/extra-context.error.js +35 -0
  14. package/dist/cjs/event-context/extra-event-context.d.ts +17 -0
  15. package/dist/cjs/event-context/extra-event-context.js +27 -0
  16. package/dist/cjs/index.d.ts +11 -0
  17. package/dist/cjs/index.js +27 -0
  18. package/dist/cjs/init-sentry/event-processor.d.ts +10 -0
  19. package/dist/cjs/init-sentry/event-processor.js +28 -0
  20. package/dist/cjs/init-sentry/handle-sentry-send.d.ts +16 -0
  21. package/dist/cjs/init-sentry/handle-sentry-send.js +48 -0
  22. package/dist/cjs/init-sentry/init-sentry.d.ts +194 -0
  23. package/dist/cjs/init-sentry/init-sentry.js +24 -0
  24. package/dist/cjs/init-sentry/sentry-config.d.ts +9 -0
  25. package/dist/cjs/init-sentry/sentry-config.js +51 -0
  26. package/dist/cjs/init-sentry/sentry-logger.d.ts +40 -0
  27. package/dist/cjs/init-sentry/sentry-logger.js +96 -0
  28. package/dist/esm/env/execution-env.js +20 -0
  29. package/dist/esm/env/release-env.js +10 -0
  30. package/dist/esm/event-context/event-context.js +7 -0
  31. package/dist/esm/event-context/event-severity.js +32 -0
  32. package/dist/esm/event-context/extra-context.error.js +30 -0
  33. package/dist/esm/event-context/extra-event-context.js +22 -0
  34. package/dist/esm/index.js +11 -0
  35. package/dist/esm/init-sentry/event-processor.js +24 -0
  36. package/dist/esm/init-sentry/handle-sentry-send.js +43 -0
  37. package/dist/esm/init-sentry/init-sentry.js +20 -0
  38. package/dist/esm/init-sentry/sentry-config.js +47 -0
  39. package/dist/esm/init-sentry/sentry-logger.js +91 -0
  40. package/dist/types/env/execution-env.d.ts +181 -0
  41. package/dist/types/env/release-env.d.ts +8 -0
  42. package/dist/types/event-context/event-context.d.ts +16 -0
  43. package/dist/types/event-context/event-severity.d.ts +21 -0
  44. package/dist/types/event-context/extra-context.error.d.ts +24 -0
  45. package/dist/types/event-context/extra-event-context.d.ts +17 -0
  46. package/dist/types/index.d.ts +11 -0
  47. package/dist/types/init-sentry/event-processor.d.ts +10 -0
  48. package/dist/types/init-sentry/handle-sentry-send.d.ts +16 -0
  49. package/dist/types/init-sentry/init-sentry.d.ts +194 -0
  50. package/dist/types/init-sentry/sentry-config.d.ts +9 -0
  51. package/dist/types/init-sentry/sentry-logger.d.ts +40 -0
  52. package/package.json +68 -10
@@ -0,0 +1,16 @@
1
+ import type { EventHint } from '@sentry/browser';
2
+ import type { ErrorEvent, TransactionEvent } from '@sentry/types';
3
+ import { SentryReleaseEnvEnum } from '../env/release-env';
4
+ /** Creates a handler for Sentry events based on the given env. */
5
+ export declare function createSentryHandler(
6
+ /**
7
+ * The release environment (dev vs prod). Determines whether events should be sent to sentry or
8
+ * not.
9
+ */
10
+ releaseEnv: SentryReleaseEnvEnum): (event: TransactionEvent | ErrorEvent, hint: EventHint) => TransactionEvent | ErrorEvent | null;
11
+ /** Tries to extract the original event message from different possible Sentry types. */
12
+ export declare function extractOriginalMessage(
13
+ /** Event from Sentry. */
14
+ event: TransactionEvent | ErrorEvent,
15
+ /** EventHint generated by Sentry. */
16
+ hint: EventHint): string;
@@ -0,0 +1,194 @@
1
+ import type { Options } from '@sentry/types';
2
+ import { SentryExecutionEnvEnum } from '../env/execution-env';
3
+ import { SentryReleaseEnvEnum } from '../env/release-env';
4
+ import { EventExtraContextCreator } from '../event-context/event-context';
5
+ import { UserOverrides } from './sentry-config';
6
+ /** Configuration for initializing Sentry. */
7
+ export type InitSentryInput = {
8
+ /**
9
+ * The environment wherein the Sentry client will execute. Used to determine which Sentry client
10
+ * to load: browser or node.
11
+ */
12
+ executionEnv: SentryExecutionEnvEnum;
13
+ /**
14
+ * The release environment, prod vs dev rather than browser vs node. In dev, events won't be
15
+ * sent to sentry. In both options, all events will be logged to the local console.
16
+ */
17
+ releaseEnv: SentryReleaseEnvEnum;
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
+ * Setup a sentry client with all the default sentry-vir integrations and configs.
32
+ *
33
+ * To override any default sentry-vir settings, include them in the userConfig input.
34
+ */
35
+ export declare function initSentry({ executionEnv, dsn, releaseEnv, releaseName, sentryConfigOverrides, createUniversalContext, }: InitSentryInput): Promise<{
36
+ default: typeof import("@sentry/browser");
37
+ Integrations: {
38
+ GlobalHandlers: typeof import("@sentry/browser").GlobalHandlers;
39
+ TryCatch: typeof import("@sentry/browser").TryCatch;
40
+ Breadcrumbs: typeof import("@sentry/browser").Breadcrumbs;
41
+ LinkedErrors: typeof import("@sentry/browser").LinkedErrors;
42
+ HttpContext: typeof import("@sentry/browser").HttpContext;
43
+ Dedupe: typeof import("@sentry/browser").Dedupe;
44
+ FunctionToString: typeof import("@sentry/core").FunctionToString;
45
+ InboundFilters: typeof import("@sentry/core").InboundFilters;
46
+ };
47
+ Replay: typeof import("@sentry/replay").Replay;
48
+ BrowserTracing: typeof import("@sentry-internal/tracing").BrowserTracing;
49
+ defaultRequestInstrumentationOptions: import("@sentry-internal/tracing").RequestInstrumentationOptions;
50
+ instrumentOutgoingRequests: typeof import("@sentry-internal/tracing").instrumentOutgoingRequests;
51
+ addTracingExtensions: typeof import("@sentry/core").addTracingExtensions;
52
+ setMeasurement: typeof import("@sentry/core").setMeasurement;
53
+ extractTraceparentData: typeof import("@sentry/utils").extractTraceparentData;
54
+ getActiveTransaction: typeof import("@sentry/core").getActiveTransaction;
55
+ spanStatusfromHttpCode: typeof import("@sentry/core").spanStatusfromHttpCode;
56
+ trace: typeof import("@sentry/core").trace;
57
+ makeMultiplexedTransport: typeof import("@sentry/core").makeMultiplexedTransport;
58
+ ModuleMetadata: typeof import("@sentry/core").ModuleMetadata;
59
+ makeBrowserOfflineTransport: typeof import("@sentry/browser").makeBrowserOfflineTransport;
60
+ onProfilingStartRouteTransaction: typeof import("@sentry/browser").onProfilingStartRouteTransaction;
61
+ BrowserProfilingIntegration: typeof import("@sentry/browser").BrowserProfilingIntegration;
62
+ addGlobalEventProcessor: typeof import("@sentry/core").addGlobalEventProcessor;
63
+ addBreadcrumb: typeof import("@sentry/core").addBreadcrumb;
64
+ captureException: typeof import("@sentry/core").captureException;
65
+ captureEvent: typeof import("@sentry/core").captureEvent;
66
+ captureMessage: typeof import("@sentry/core").captureMessage;
67
+ close: typeof import("@sentry/core").close;
68
+ configureScope: typeof import("@sentry/core").configureScope;
69
+ createTransport: typeof import("@sentry/core").createTransport;
70
+ flush: typeof import("@sentry/core").flush;
71
+ getHubFromCarrier: typeof import("@sentry/core").getHubFromCarrier;
72
+ getCurrentHub: typeof import("@sentry/core").getCurrentHub;
73
+ Hub: typeof import("@sentry/core").Hub;
74
+ lastEventId: typeof import("@sentry/core").lastEventId;
75
+ makeMain: typeof import("@sentry/core").makeMain;
76
+ Scope: typeof import("@sentry/core").Scope;
77
+ startTransaction: typeof import("@sentry/core").startTransaction;
78
+ getActiveSpan: typeof import("@sentry/core").getActiveSpan;
79
+ startSpan: typeof import("@sentry/core").startSpan;
80
+ startInactiveSpan: typeof import("@sentry/core").startInactiveSpan;
81
+ startSpanManual: typeof import("@sentry/core").startSpanManual;
82
+ SDK_VERSION: "7.73.0";
83
+ setContext: typeof import("@sentry/core").setContext;
84
+ setExtra: typeof import("@sentry/core").setExtra;
85
+ setExtras: typeof import("@sentry/core").setExtras;
86
+ setTag: typeof import("@sentry/core").setTag;
87
+ setTags: typeof import("@sentry/core").setTags;
88
+ setUser: typeof import("@sentry/core").setUser;
89
+ withScope: typeof import("@sentry/core").withScope;
90
+ FunctionToString: typeof import("@sentry/core").FunctionToString;
91
+ InboundFilters: typeof import("@sentry/core").InboundFilters;
92
+ WINDOW: import("@sentry/utils").InternalGlobal & Window;
93
+ BrowserClient: typeof import("@sentry/browser").BrowserClient;
94
+ makeFetchTransport: typeof import("@sentry/browser").makeFetchTransport;
95
+ makeXHRTransport: typeof import("@sentry/browser").makeXHRTransport;
96
+ defaultStackParser: import("@sentry/types").StackParser;
97
+ defaultStackLineParsers: import("@sentry/types").StackLineParser[];
98
+ chromeStackLineParser: import("@sentry/types").StackLineParser;
99
+ geckoStackLineParser: import("@sentry/types").StackLineParser;
100
+ opera10StackLineParser: import("@sentry/types").StackLineParser;
101
+ opera11StackLineParser: import("@sentry/types").StackLineParser;
102
+ winjsStackLineParser: import("@sentry/types").StackLineParser;
103
+ eventFromException: typeof import("@sentry/browser").eventFromException;
104
+ eventFromMessage: typeof import("@sentry/browser").eventFromMessage;
105
+ exceptionFromError: typeof import("@sentry/browser").exceptionFromError;
106
+ createUserFeedbackEnvelope: typeof import("@sentry/browser").createUserFeedbackEnvelope;
107
+ defaultIntegrations: (import("@sentry/browser").HttpContext | import("@sentry/browser").Dedupe | import("@sentry/core").InboundFilters | import("@sentry/core").FunctionToString | import("@sentry/browser").GlobalHandlers | import("@sentry/browser").TryCatch | import("@sentry/browser").Breadcrumbs | import("@sentry/browser").LinkedErrors)[];
108
+ forceLoad: typeof import("@sentry/browser").forceLoad;
109
+ init: typeof import("@sentry/browser").init;
110
+ onLoad: typeof import("@sentry/browser").onLoad;
111
+ showReportDialog: typeof import("@sentry/browser").showReportDialog;
112
+ captureUserFeedback: typeof import("@sentry/browser").captureUserFeedback;
113
+ wrap: typeof import("@sentry/browser").wrap;
114
+ GlobalHandlers: typeof import("@sentry/browser").GlobalHandlers;
115
+ TryCatch: typeof import("@sentry/browser").TryCatch;
116
+ Breadcrumbs: typeof import("@sentry/browser").Breadcrumbs;
117
+ LinkedErrors: typeof import("@sentry/browser").LinkedErrors;
118
+ HttpContext: typeof import("@sentry/browser").HttpContext;
119
+ Dedupe: typeof import("@sentry/browser").Dedupe;
120
+ } | {
121
+ default: typeof import("@sentry/node");
122
+ addGlobalEventProcessor: typeof import("@sentry/core").addGlobalEventProcessor;
123
+ addBreadcrumb: typeof import("@sentry/core").addBreadcrumb;
124
+ captureException: typeof import("@sentry/core").captureException;
125
+ captureEvent: typeof import("@sentry/core").captureEvent;
126
+ captureMessage: typeof import("@sentry/core").captureMessage;
127
+ close: typeof import("@sentry/core").close;
128
+ configureScope: typeof import("@sentry/core").configureScope;
129
+ createTransport: typeof import("@sentry/core").createTransport;
130
+ extractTraceparentData: typeof import("@sentry/utils").extractTraceparentData;
131
+ flush: typeof import("@sentry/core").flush;
132
+ getActiveTransaction: typeof import("@sentry/core").getActiveTransaction;
133
+ getHubFromCarrier: typeof import("@sentry/core").getHubFromCarrier;
134
+ getCurrentHub: typeof import("@sentry/core").getCurrentHub;
135
+ Hub: typeof import("@sentry/core").Hub;
136
+ lastEventId: typeof import("@sentry/core").lastEventId;
137
+ makeMain: typeof import("@sentry/core").makeMain;
138
+ runWithAsyncContext: typeof import("@sentry/core").runWithAsyncContext;
139
+ Scope: typeof import("@sentry/core").Scope;
140
+ startTransaction: typeof import("@sentry/core").startTransaction;
141
+ SDK_VERSION: "7.73.0";
142
+ setContext: typeof import("@sentry/core").setContext;
143
+ setExtra: typeof import("@sentry/core").setExtra;
144
+ setExtras: typeof import("@sentry/core").setExtras;
145
+ setTag: typeof import("@sentry/core").setTag;
146
+ setTags: typeof import("@sentry/core").setTags;
147
+ setUser: typeof import("@sentry/core").setUser;
148
+ spanStatusfromHttpCode: typeof import("@sentry/core").spanStatusfromHttpCode;
149
+ trace: typeof import("@sentry/core").trace;
150
+ withScope: typeof import("@sentry/core").withScope;
151
+ captureCheckIn: typeof import("@sentry/core").captureCheckIn;
152
+ setMeasurement: typeof import("@sentry/core").setMeasurement;
153
+ getActiveSpan: typeof import("@sentry/core").getActiveSpan;
154
+ startSpan: typeof import("@sentry/core").startSpan;
155
+ startActiveSpan: typeof import("@sentry/core").startSpan;
156
+ startInactiveSpan: typeof import("@sentry/core").startInactiveSpan;
157
+ startSpanManual: typeof import("@sentry/core").startSpanManual;
158
+ autoDiscoverNodePerformanceMonitoringIntegrations: typeof import("@sentry/node").autoDiscoverNodePerformanceMonitoringIntegrations;
159
+ NodeClient: typeof import("@sentry/node").NodeClient;
160
+ makeNodeTransport: typeof import("@sentry/node").makeNodeTransport;
161
+ 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)[];
162
+ init: typeof import("@sentry/node").init;
163
+ defaultStackParser: import("@sentry/types").StackParser;
164
+ getSentryRelease: typeof import("@sentry/node").getSentryRelease;
165
+ addRequestDataToEvent: typeof import("@sentry/node").addRequestDataToEvent;
166
+ DEFAULT_USER_INCLUDES: string[];
167
+ extractRequestData: typeof import("@sentry/node").extractRequestData;
168
+ deepReadDirSync: typeof import("@sentry/node").deepReadDirSync;
169
+ getModuleFromFilename: typeof import("@sentry/node").getModuleFromFilename;
170
+ enableAnrDetection: typeof import("@sentry/node").enableAnrDetection;
171
+ Integrations: {
172
+ Apollo: typeof import("@sentry-internal/tracing").Apollo;
173
+ Express: typeof import("@sentry-internal/tracing").Express;
174
+ GraphQL: typeof import("@sentry-internal/tracing").GraphQL;
175
+ Mongo: typeof import("@sentry-internal/tracing").Mongo;
176
+ Mysql: typeof import("@sentry-internal/tracing").Mysql;
177
+ Postgres: typeof import("@sentry-internal/tracing").Postgres;
178
+ Prisma: typeof import("@sentry-internal/tracing").Prisma;
179
+ Console: typeof import("@sentry/node/types/integrations").Console;
180
+ Http: typeof import("@sentry/node/types/integrations").Http;
181
+ OnUncaughtException: typeof import("@sentry/node/types/integrations").OnUncaughtException;
182
+ OnUnhandledRejection: typeof import("@sentry/node/types/integrations").OnUnhandledRejection;
183
+ LinkedErrors: typeof import("@sentry/node/types/integrations").LinkedErrors;
184
+ Modules: typeof import("@sentry/node/types/integrations").Modules;
185
+ ContextLines: typeof import("@sentry/node/types/integrations").ContextLines;
186
+ Context: typeof import("@sentry/node/types/integrations").Context;
187
+ RequestData: typeof import("@sentry/node/types/integrations").RequestData;
188
+ LocalVariables: typeof import("@sentry/node/types/integrations").LocalVariables;
189
+ Undici: typeof import("@sentry/node/types/integrations").Undici;
190
+ FunctionToString: typeof import("@sentry/core").FunctionToString;
191
+ InboundFilters: typeof import("@sentry/core").InboundFilters;
192
+ };
193
+ Handlers: typeof import("@sentry/node/types/handlers");
194
+ }>;
@@ -0,0 +1,9 @@
1
+ import type { Options } from '@sentry/types';
2
+ import { SentryBrowserDep, SentryDepByEnv, SentryExecutionEnvEnum, SentryNodeDep } from '../env/execution-env';
3
+ import { SentryReleaseEnvEnum } from '../env/release-env';
4
+ /** Optional UserOverrides of Sentry config values. */
5
+ export type UserOverrides = Omit<Partial<Options>, keyof RequiredSentryOptions> | undefined;
6
+ /** Sentry config options that are required. */
7
+ export type RequiredSentryOptions = Pick<Required<Options>, 'dsn' | 'environment' | 'release'>;
8
+ /** Creates the sentry config used internally by sentry-vir. */
9
+ export declare function createSentryConfig<const Env extends SentryExecutionEnvEnum>(env: Env, sentryDep: SentryDepByEnv<Env>, requiredSentryOptions: RequiredSentryOptions, userOverrides: UserOverrides, releaseEnv: SentryReleaseEnvEnum): Promise<SentryBrowserDep | SentryNodeDep>;
@@ -0,0 +1,40 @@
1
+ import { AnyFunction, MaybePromise } from '@augment-vir/common';
2
+ import type { Event as SentryEvent } from '@sentry/types';
3
+ import type { SentryDep } from '../env/execution-env';
4
+ import { EventDetails, EventExtraContext } from '../event-context/event-context';
5
+ /** The bare minimum Sentry client needed for logging events. */
6
+ export type SentryClientForLogging = Pick<SentryDep, 'captureMessage' | 'captureException' | 'captureEvent'>;
7
+ /** An event that was triggered before setSentryClientForLogging was called. */
8
+ export type PrematureEvent<EntryPointFunction extends AnyFunction> = {
9
+ entryPoint: EntryPointFunction;
10
+ inputs: Parameters<EntryPointFunction>;
11
+ };
12
+ /**
13
+ * Used to store events before the Sentry client is setup. This is exported for testing purposes
14
+ * only, you don't need to do anything with this.
15
+ */
16
+ export declare const prematureSentryEvents: PrematureEvent<any>[];
17
+ /**
18
+ * Asynchronously set the Sentry client for logging. When this is called, any events that were
19
+ * triggered beforehand are handled. Thus, this set can be done at any time, allowing for
20
+ * asynchronous Sentry client setup but synchronous log and error handling.
21
+ *
22
+ * This should be called as soon as possible after you have a return value from initSentry.
23
+ *
24
+ * This can be safely called multiple times (to overwrite the previously set Sentry client) because
25
+ * previous events won't be handled multiple times.
26
+ */
27
+ export declare function setSentryClientForLogging(client: MaybePromise<SentryClientForLogging>): Promise<void>;
28
+ /** Record an error to Sentry without throwing it. */
29
+ export declare function handleError(error: unknown, extraContext?: EventExtraContext): string | undefined;
30
+ /** Send non-error events to Sentry. */
31
+ export declare const sendLog: {
32
+ /** Sends an even to Sentry with debug severity. */
33
+ readonly debug: (info: Parameters<typeof sendLogToSentry>[0], extraContext?: EventExtraContext) => string | undefined;
34
+ /** Sends an even to Sentry with info severity. */
35
+ readonly info: (info: Parameters<typeof sendLogToSentry>[0], extraContext?: EventExtraContext) => string | undefined;
36
+ /** Sends an even to Sentry with warning severity. */
37
+ readonly warning: (info: Parameters<typeof sendLogToSentry>[0], extraContext?: EventExtraContext) => string | undefined;
38
+ };
39
+ declare function sendLogToSentry(logInfo: string | Omit<SentryEvent, 'extra' | 'level'>, eventDetails: EventDetails): string | undefined;
40
+ export {};
package/package.json CHANGED
@@ -1,12 +1,70 @@
1
1
  {
2
- "name": "sentry-vir",
3
- "version": "0.0.0",
4
- "description": "",
5
- "main": "index.js",
6
- "scripts": {
7
- "test": "echo \"Error: no test specified\" && exit 1"
8
- },
9
- "keywords": [],
10
- "author": "",
11
- "license": "MIT"
2
+ "name": "sentry-vir",
3
+ "version": "0.0.2",
4
+ "keywords": [
5
+ "config",
6
+ "helper",
7
+ "sentry",
8
+ "vir"
9
+ ],
10
+ "homepage": "https://github.com/electrovir/sentry-vir",
11
+ "bugs": {
12
+ "url": "https://github.com/electrovir/sentry-vir/issues"
13
+ },
14
+ "repository": {
15
+ "type": "git",
16
+ "url": "https://github.com/electrovir/sentry-vir"
17
+ },
18
+ "license": "(MIT or CC0 1.0)",
19
+ "author": {
20
+ "name": "electrovir",
21
+ "url": "https://github.com/electrovir"
22
+ },
23
+ "main": "dist/cjs/index.js",
24
+ "module": "dist/esm/index.js",
25
+ "types": "dist/types/index.d.ts",
26
+ "scripts": {
27
+ "compile": "rm -rf dist && tsc --project tsconfig.json && tsc --project tsconfig.cjs.json",
28
+ "docs": "virmator docs",
29
+ "format": "virmator format",
30
+ "publish": "virmator publish \"npm run compile && npm run test:all\"",
31
+ "test": "virmator test-web",
32
+ "test:all": "concurrently --colors --kill-others-on-fail -c auto --names types,tests,spelling,format,docs \"npm run test:types\" \"npm run test:coverage\" \"npm run test:spelling\" \"npm run test:format\" \"npm run test:docs\"",
33
+ "test:coverage": "npm run test coverage",
34
+ "test:docs": "virmator docs check",
35
+ "test:format": "virmator format check",
36
+ "test:spelling": "virmator spellcheck",
37
+ "test:types": "tsc --noEmit"
38
+ },
39
+ "dependencies": {
40
+ "@augment-vir/common": "^19.4.1",
41
+ "@sentry/browser": "^7.73.0",
42
+ "@sentry/node": "^7.73.0",
43
+ "type-fest": "^4.3.3"
44
+ },
45
+ "devDependencies": {
46
+ "@augment-vir/browser-testing": "^19.4.1",
47
+ "@open-wc/testing": "^3.2.0",
48
+ "@types/mocha": "^10.0.2",
49
+ "@web/dev-server-esbuild": "^0.4.1",
50
+ "@web/test-runner": "^0.17.1",
51
+ "@web/test-runner-commands": "^0.8.0",
52
+ "@web/test-runner-playwright": "^0.10.1",
53
+ "@web/test-runner-visual-regression": "^0.8.2",
54
+ "cspell": "^7.3.7",
55
+ "esbuild": "^0.19.4",
56
+ "istanbul-smart-text-reporter": "^1.1.2",
57
+ "markdown-code-example-inserter": "^0.3.2",
58
+ "npm-check-updates": "~16.12.3",
59
+ "prettier": "^2.8.8",
60
+ "prettier-plugin-interpolated-html-tags": "^0.0.4",
61
+ "prettier-plugin-jsdoc": "^0.4.2",
62
+ "prettier-plugin-multiline-arrays": "^2.0.0",
63
+ "prettier-plugin-organize-imports": "^3.2.3",
64
+ "prettier-plugin-packagejson": "^2.4.6",
65
+ "prettier-plugin-sort-json": "^2.0.0",
66
+ "prettier-plugin-toml": "^0.3.5",
67
+ "typedoc": "^0.25.1",
68
+ "virmator": "^8.0.5"
69
+ }
12
70
  }