Skip to content

Commit

Permalink
#128 reduce exported types and use @types/har-format
Browse files Browse the repository at this point in the history
  • Loading branch information
Michael Mrowetz committed Mar 12, 2017
1 parent 90cd727 commit 489ac54
Show file tree
Hide file tree
Showing 11 changed files with 28 additions and 564 deletions.
3 changes: 2 additions & 1 deletion build-utils/npm-export/index.d.ts
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
export * from "./types/main"
export * from "./types/typing/index"
import * as typesHar from "har-format";
export { typesHar }
5 changes: 4 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
"types": "./index.d.ts",
"license": "MIT",
"devDependencies": {
"conventional-changelog": "^1.1.0",
"conventional-changelog": "^1.1.3",
"grunt": "^1.0.1",
"grunt-banner": "^0.6.0",
"grunt-browserify": "^5.0.0",
Expand All @@ -50,5 +50,8 @@
"tsify": "^3.0.1",
"tslint": "^4.5.1",
"typescript": "^2.2.1"
},
"dependencies": {
"@types/har-format": "^1.2.0"
}
}
2 changes: 1 addition & 1 deletion src/ts/file-reader.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Har } from "./typing/har";
import { Har } from "har-format";

declare const zip: any;

Expand Down
2 changes: 1 addition & 1 deletion src/ts/helpers/har.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import {Header} from "../typing/har";
import {Header} from "har-format";

function matchHeaderFilter(lowercaseName: string): (header: Header) => boolean {
return (header: Header) => header.name.toLowerCase() === lowercaseName;
Expand Down
13 changes: 6 additions & 7 deletions src/ts/main.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import { Har } from "har-format";
import { validateOptions } from "./helpers/parse";
import { makeLegend } from "./legend/legend";
import Paging from "./paging/paging";
import * as HarTransformer from "./transformers/har";
import { Har } from "./typing/har";
import { ChartOptions } from "./typing/options";
import { WaterfallDocs } from "./typing/waterfall";
import { createWaterfallSvg } from "./waterfall/svg-chart";
Expand Down Expand Up @@ -69,9 +69,8 @@ function fromPerfCascadeFormat(waterfallDocsData: WaterfallDocs, options: Partia
let transformHarToPerfCascade = HarTransformer.transformDoc;

// global members that get exported via UMD
export { fromHar }
export { fromPerfCascadeFormat }
export { transformHarToPerfCascade }
export { makeLegend }
// export typings
export * from "./typing/index"
export { fromHar };
export { fromPerfCascadeFormat };
export { transformHarToPerfCascade };
export { makeLegend };
export { ChartOptions };
2 changes: 1 addition & 1 deletion src/ts/transformers/extract-details-keys.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import { Entry, Header } from "har-format";
import { getHeader } from "../helpers/har";
import {
formatBytes, formatDateLocalized, formatMilliseconds, formatSeconds, parseAndFormat, parseDate, parseNonEmpty,
parseNonNegative, parsePositive,
} from "../helpers/parse";
import { Entry, Header } from "../typing/har";

const byteSizeProperty = (title: string, input: string |  number): KvTuple => {
return [title, parseAndFormat(input, parsePositive, formatBytes)];
Expand Down
2 changes: 1 addition & 1 deletion src/ts/transformers/har-heuristics.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@
* Heuristics used at parse-time for HAR data
*/

import { Entry } from "har-format";
import { hasHeader } from "../helpers/har";
import * as misc from "../helpers/misc";
import { Entry } from "../typing/har";
import { WaterfallEntryIndicator } from "../typing/waterfall";
import { RequestType } from "../typing/waterfall";

Expand Down
2 changes: 1 addition & 1 deletion src/ts/transformers/har-tabs.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { Entry } from "har-format";
import { escapeHtml } from "../helpers/parse";
import { Entry } from "../typing/har";
import {
RequestType,
TabRenderer,
Expand Down
21 changes: 11 additions & 10 deletions src/ts/transformers/har.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
import { roundNumber } from "../helpers/misc";
import { toInt } from "../helpers/parse";
import {
Entry,
Har,
Log,
Page,
PageTimings,
} from "../typing/har";
PageTiming,
} from "har-format";
import { roundNumber } from "../helpers/misc";
import { toInt } from "../helpers/parse";
import {
Mark,
TimingType,
Expand All @@ -30,9 +31,9 @@ import {
* @param {Har} harData - raw hhar object
* @returns WaterfallDocs
*/
export function transformDoc(harData: Har): WaterfallDocs {
export function transformDoc(harData: Har | Log): WaterfallDocs {
// make sure it's the *.log base node
let data = (harData["log"] !== undefined ? harData["log"] : harData) as Har;
let data = (harData["log"] !== undefined ? harData["log"] : harData) as Log;
const pages = getPages(data);
console.log("HAR created by %s(%s) %s page(s)", data.creator.name, data.creator.version, pages.length);

Expand Down Expand Up @@ -65,7 +66,7 @@ function toWaterFallEntry(entry: Entry, index: number, startRelative: number, is
}

/** retuns the page or a mock page object */
function getPages(data: Har) {
function getPages(data: Log) {
if (data.pages && data.pages.length > 0) {
return data.pages;
}
Expand All @@ -88,9 +89,9 @@ function getPages(data: Har) {
* @param {number=0} pageIndex - page to parse (for multi-page HAR)
* @returns WaterfallData
*/
export function transformPage(harData: Har, pageIndex: number = 0): WaterfallData {
export function transformPage(harData: Har | Log, pageIndex: number = 0): WaterfallData {
// make sure it's the *.log base node
let data = (harData["log"] !== undefined ? harData["log"] : harData) as Har;
let data = (harData["log"] !== undefined ? harData["log"] : harData) as Log;

const pages = getPages(data);
const currPage = pages[pageIndex];
Expand Down Expand Up @@ -119,7 +120,7 @@ export function transformPage(harData: Har, pageIndex: number = 0): WaterfallDat
});

const marks = Object.keys(pageTimings)
.filter((k: keyof PageTimings) => (typeof pageTimings[k] === "number" && pageTimings[k] >= 0))
.filter((k: keyof PageTiming) => (typeof pageTimings[k] === "number" && pageTimings[k] >= 0))
.sort((a: string, b: string) => pageTimings[a] > pageTimings[b] ? 1 : -1)
.map((k) => {
const startRelative: number = pageTimings[k];
Expand Down
Loading

0 comments on commit 489ac54

Please sign in to comment.