Skip to content
This repository was archived by the owner on Dec 16, 2022. It is now read-only.

Commit a69bc21

Browse files
committed
feat: Wrap retracers in a class
1 parent a8c71dc commit a69bc21

50 files changed

Lines changed: 615 additions & 314 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitignore

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
.idea/
2+
.vscode/
3+
node_modules/
4+
dist
5+
build
6+
.DS_Store
7+
*.tgz
8+
my-app*
9+
template/src/__tests__/__snapshots__/
10+
lerna-debug.log
11+
npm-debug.log*
12+
yarn-debug.log*
13+
yarn-error.log*
14+
/.changelog
15+
yarn.lock

.node-version

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
10.15.3

.prettierignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
dist

.travis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
language: node_js
22
node_js:
3-
- "8"
43
- "10"
4+
- "12"

README.md

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,11 @@
55
### Usage
66

77
```js
8-
import {parseStack, retraceStack}
8+
import { StackRetracer } from "stack-retrace"
99

10-
const stack = parseStack(
10+
const stackRetracer = new StackRetracer()
11+
12+
await stackRetracer.retrace(
1113
"StatusCodeError: No such placement\n" +
1214
" at new StatusCodeError (http://localhost:8080/nfp.js:8961:28)\n" +
1315
" at CollinsFetch.<anonymous> (http://localhost:8080/nfp.js:8867:35)\n" +
@@ -16,12 +18,18 @@ const stack = parseStack(
1618
" at fulfilled (http://localhost:8080/vendors~nfp.js:83680:58)"
1719
)
1820

21+
"new StatusCodeError (webpack:///state-actions/src/client/statusCodeError.ts:18:4)\n" +
22+
"CollinsFetch.<anonymous> (webpack:///state-actions/src/client/collinsFetch.ts:63:12)\n" +
23+
"step (webpack:///Users/mckomo/Projects/revenue-desk/node_modules/tslib/tslib.es6.js:97:0)\n" +
24+
"Object.next (webpack:///Users/mckomo/Projects/revenue-desk/node_modules/tslib/tslib.es6.js:78:44)\n" +
25+
"fulfilled (webpack:///Users/mckomo/Projects/revenue-desk/node_modules/tslib/tslib.es6.js:68:41)"
26+
```
1927

20-
retraceStack(stack).join("\n") // Results in:
28+
### Options
2129

22-
"new StatusCodeError (webpack:///state-actions/src/client/statusCodeError.ts:18:4)\n" +
23-
"CollinsFetch.<anonymous> (webpack:///state-actions/src/client/collinsFetch.ts:63:12)\n" +
24-
"step (webpack:///Users/mckomo/Projects/revenue-desk/node_modules/tslib/tslib.es6.js:97:0)\n" +
25-
"Object.next (webpack:///Users/mckomo/Projects/revenue-desk/node_modules/tslib/tslib.es6.js:78:44)\n" +
26-
"fulfilled (webpack:///Users/mckomo/Projects/revenue-desk/node_modules/tslib/tslib.es6.js:68:41)"
30+
```js
31+
const stackRetracer = new StackRetracer({
32+
stackParser: (rawStack: string) => Stack,
33+
sourceMapProvider: (fileUrl: string) => Promise<SourceMap>
34+
})
2735
```

dist/ErrorMock.d.ts

Lines changed: 0 additions & 6 deletions
This file was deleted.

dist/ErrorMock.js

Lines changed: 0 additions & 12 deletions
This file was deleted.

dist/ErrorMock.js.map

Lines changed: 0 additions & 1 deletion
This file was deleted.

dist/Stack.d.ts

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,11 @@
11
export interface StackFrame {
2-
fileName: string;
3-
lineNumber: number;
4-
columnNumber: number;
5-
functionName: string;
2+
fileName: string | null;
3+
lineNumber: number | null;
4+
columnNumber: number | null;
5+
functionName: string | null;
66
}
77
export declare class StackFrame {
8-
constructor(params: Partial<StackFrame> & {
9-
lineNumber: number;
10-
});
8+
constructor(params: StackFrame);
119
toString(): string;
1210
}
1311
export declare type Stack = StackFrame[];

dist/Stack.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)