@skmtc/core 0.0.719 → 0.0.721
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/esm/helpers/generationStats.d.ts +26 -0
- package/esm/helpers/generationStats.d.ts.map +1 -0
- package/esm/helpers/generationStats.js +64 -0
- package/esm/mod.d.ts +1 -0
- package/esm/mod.d.ts.map +1 -1
- package/esm/mod.js +1 -0
- package/package.json +6 -1
- package/script/helpers/generationStats.d.ts +26 -0
- package/script/helpers/generationStats.d.ts.map +1 -0
- package/script/helpers/generationStats.js +73 -0
- package/script/mod.d.ts +1 -0
- package/script/mod.d.ts.map +1 -1
- package/script/mod.js +1 -0
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import "../_dnt.polyfills.js";
|
|
2
|
+
import type { ManifestContent } from '../types/Manifest.js';
|
|
3
|
+
import type { ResultsItem, ResultType } from '../types/Results.js';
|
|
4
|
+
type GenerationStatsArgs = {
|
|
5
|
+
manifest: ManifestContent;
|
|
6
|
+
artifacts: Record<string, string>;
|
|
7
|
+
};
|
|
8
|
+
export declare const toGenerationStats: ({ manifest, artifacts }: GenerationStatsArgs) => {
|
|
9
|
+
tokens: number;
|
|
10
|
+
lines: number;
|
|
11
|
+
totalTime: number;
|
|
12
|
+
errors: string[][];
|
|
13
|
+
files: number;
|
|
14
|
+
};
|
|
15
|
+
export declare const toManifestTokens: (artifacts: Record<string, string>) => number;
|
|
16
|
+
export declare const toManifestLines: (manifest: ManifestContent) => number;
|
|
17
|
+
export declare const toTotalTime: (manifest: ManifestContent) => number;
|
|
18
|
+
export declare const toManifestErrors: (results: ManifestContent["results"]) => string[][];
|
|
19
|
+
type CheckResultArgs = {
|
|
20
|
+
path: string[];
|
|
21
|
+
result: ResultsItem | (ResultsItem | null)[] | ResultType;
|
|
22
|
+
errors: string[][];
|
|
23
|
+
};
|
|
24
|
+
export declare const checkResult: ({ path, result, errors }: CheckResultArgs) => void;
|
|
25
|
+
export {};
|
|
26
|
+
//# sourceMappingURL=generationStats.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generationStats.d.ts","sourceRoot":"","sources":["../../src/helpers/generationStats.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAIlE,KAAK,mBAAmB,GAAG;IACzB,QAAQ,EAAE,eAAe,CAAA;IACzB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAClC,CAAA;AACD,eAAO,MAAM,iBAAiB,GAAI,yBAAyB,mBAAmB;;;;;;CAc7E,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,WAAW,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,WAOjE,CAAA;AAED,eAAO,MAAM,eAAe,GAAI,UAAU,eAAe,WAOxD,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,UAAU,eAAe,WAIpD,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,SAAS,eAAe,CAAC,SAAS,CAAC,eAQnE,CAAA;AAED,KAAK,eAAe,GAAG;IACrB,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,MAAM,EAAE,WAAW,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,EAAE,GAAG,UAAU,CAAA;IACzD,MAAM,EAAE,MAAM,EAAE,EAAE,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,0BAA0B,eAAe,SA0BpE,CAAA"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import "../_dnt.polyfills.js";
|
|
2
|
+
import { match, P } from 'ts-pattern';
|
|
3
|
+
import { countTokens } from 'gpt-tokenizer';
|
|
4
|
+
export const toGenerationStats = ({ manifest, artifacts }) => {
|
|
5
|
+
const tokens = toManifestTokens(artifacts);
|
|
6
|
+
const lines = toManifestLines(manifest);
|
|
7
|
+
const totalTime = toTotalTime(manifest);
|
|
8
|
+
const errors = toManifestErrors(manifest.results);
|
|
9
|
+
const files = Object.keys(artifacts).length;
|
|
10
|
+
return {
|
|
11
|
+
tokens,
|
|
12
|
+
lines,
|
|
13
|
+
totalTime,
|
|
14
|
+
errors,
|
|
15
|
+
files
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
export const toManifestTokens = (artifacts) => {
|
|
19
|
+
const { tokens } = Object.values(artifacts).reduce((acc, artifact) => ({ tokens: acc.tokens + countTokens(artifact) }), { tokens: 0 });
|
|
20
|
+
return tokens;
|
|
21
|
+
};
|
|
22
|
+
export const toManifestLines = (manifest) => {
|
|
23
|
+
const { lines } = Object.values(manifest.files).reduce((acc, file) => ({ lines: acc.lines + file.lines }), { lines: 0 });
|
|
24
|
+
return lines;
|
|
25
|
+
};
|
|
26
|
+
export const toTotalTime = (manifest) => {
|
|
27
|
+
const totalTime = manifest.endAt - manifest.startAt;
|
|
28
|
+
return totalTime;
|
|
29
|
+
};
|
|
30
|
+
export const toManifestErrors = (results) => {
|
|
31
|
+
const errors = [];
|
|
32
|
+
Object.entries(results).map(([path, result]) => {
|
|
33
|
+
return checkResult({ path: [path], result, errors });
|
|
34
|
+
});
|
|
35
|
+
return errors;
|
|
36
|
+
};
|
|
37
|
+
export const checkResult = ({ path, result, errors }) => {
|
|
38
|
+
match(result)
|
|
39
|
+
.with(P.array(), matchedResult => {
|
|
40
|
+
return matchedResult.map(item => {
|
|
41
|
+
if (item !== null) {
|
|
42
|
+
checkResult({ path, result: item, errors });
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
})
|
|
46
|
+
.with(P.string, matchedResult => {
|
|
47
|
+
if (matchedResult === 'error') {
|
|
48
|
+
errors.push(path);
|
|
49
|
+
}
|
|
50
|
+
})
|
|
51
|
+
.with(P.nullish, matchedResult => {
|
|
52
|
+
return checkResult({ path, result: matchedResult, errors });
|
|
53
|
+
})
|
|
54
|
+
.otherwise(matched => {
|
|
55
|
+
if (typeof matched === 'object') {
|
|
56
|
+
return Object.entries(matched).map(([key, value]) => {
|
|
57
|
+
return checkResult({ path: [...path, key], result: value, errors });
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
throw new Error('Invalid result type');
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
};
|
package/esm/mod.d.ts
CHANGED
|
@@ -24,6 +24,7 @@ export * from './dsl/operation/toOperationEntry.js';
|
|
|
24
24
|
export * from './dsl/operation/types.js';
|
|
25
25
|
export * from './dsl/Stringable.js';
|
|
26
26
|
export * from './helpers/collateExamples.js';
|
|
27
|
+
export * from './helpers/generationStats.js';
|
|
27
28
|
export * from './helpers/isEmpty.js';
|
|
28
29
|
export * from './helpers/isImported.js';
|
|
29
30
|
export * from './helpers/naming.js';
|
package/esm/mod.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../src/mod.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAC7B,cAAc,mBAAmB,CAAA;AACjC,cAAc,0BAA0B,CAAA;AACxC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,2BAA2B,CAAA;AACzC,cAAc,oBAAoB,CAAA;AAClC,cAAc,sBAAsB,CAAA;AACpC,cAAc,0BAA0B,CAAA;AACxC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,qBAAqB,CAAA;AACnC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,mBAAmB,CAAA;AACjC,cAAc,0BAA0B,CAAA;AACxC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,sBAAsB,CAAA;AACpC,cAAc,kCAAkC,CAAA;AAChD,cAAc,oCAAoC,CAAA;AAClD,cAAc,oCAAoC,CAAA;AAClD,cAAc,qCAAqC,CAAA;AACnD,cAAc,0BAA0B,CAAA;AACxC,cAAc,qBAAqB,CAAA;AACnC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AACvC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,sBAAsB,CAAA;AACpC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,qCAAqC,CAAA;AACnD,cAAc,sBAAsB,CAAA;AACpC,cAAc,0BAA0B,CAAA;AACxC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,sCAAsC,CAAA;AACpD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,oBAAoB,CAAA;AAClC,cAAc,0BAA0B,CAAA;AACxC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,kBAAkB,CAAA;AAChC,cAAc,kCAAkC,CAAA;AAChD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,cAAc,0BAA0B,CAAA;AACxC,cAAc,oBAAoB,CAAA;AAClC,cAAc,sBAAsB,CAAA;AACpC,cAAc,2BAA2B,CAAA;AACzC,cAAc,wBAAwB,CAAA;AACtC,cAAc,qBAAqB,CAAA;AACnC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,wBAAwB,CAAA;AACtC,cAAc,2BAA2B,CAAA;AACzC,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAA;AACjC,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AACvC,cAAc,2BAA2B,CAAA;AACzC,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,cAAc,qBAAqB,CAAA;AACnC,cAAc,uBAAuB,CAAA;AACrC,cAAc,mCAAmC,CAAA;AACjD,cAAc,6BAA6B,CAAA;AAC3C,cAAc,2BAA2B,CAAA;AACzC,cAAc,sBAAsB,CAAA;AACpC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,uCAAuC,CAAA;AACrD,cAAc,gCAAgC,CAAA;AAC9C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,iCAAiC,CAAA"}
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../src/mod.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAC7B,cAAc,mBAAmB,CAAA;AACjC,cAAc,0BAA0B,CAAA;AACxC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,2BAA2B,CAAA;AACzC,cAAc,oBAAoB,CAAA;AAClC,cAAc,sBAAsB,CAAA;AACpC,cAAc,0BAA0B,CAAA;AACxC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,qBAAqB,CAAA;AACnC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,mBAAmB,CAAA;AACjC,cAAc,0BAA0B,CAAA;AACxC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,sBAAsB,CAAA;AACpC,cAAc,kCAAkC,CAAA;AAChD,cAAc,oCAAoC,CAAA;AAClD,cAAc,oCAAoC,CAAA;AAClD,cAAc,qCAAqC,CAAA;AACnD,cAAc,0BAA0B,CAAA;AACxC,cAAc,qBAAqB,CAAA;AACnC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AACvC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,sBAAsB,CAAA;AACpC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,qCAAqC,CAAA;AACnD,cAAc,sBAAsB,CAAA;AACpC,cAAc,0BAA0B,CAAA;AACxC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,sCAAsC,CAAA;AACpD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,oBAAoB,CAAA;AAClC,cAAc,0BAA0B,CAAA;AACxC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,kBAAkB,CAAA;AAChC,cAAc,kCAAkC,CAAA;AAChD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,cAAc,0BAA0B,CAAA;AACxC,cAAc,oBAAoB,CAAA;AAClC,cAAc,sBAAsB,CAAA;AACpC,cAAc,2BAA2B,CAAA;AACzC,cAAc,wBAAwB,CAAA;AACtC,cAAc,qBAAqB,CAAA;AACnC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,wBAAwB,CAAA;AACtC,cAAc,2BAA2B,CAAA;AACzC,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAA;AACjC,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AACvC,cAAc,2BAA2B,CAAA;AACzC,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,cAAc,qBAAqB,CAAA;AACnC,cAAc,uBAAuB,CAAA;AACrC,cAAc,mCAAmC,CAAA;AACjD,cAAc,6BAA6B,CAAA;AAC3C,cAAc,2BAA2B,CAAA;AACzC,cAAc,sBAAsB,CAAA;AACpC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,uCAAuC,CAAA;AACrD,cAAc,gCAAgC,CAAA;AAC9C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,iCAAiC,CAAA"}
|
package/esm/mod.js
CHANGED
|
@@ -24,6 +24,7 @@ export * from './dsl/operation/toOperationEntry.js';
|
|
|
24
24
|
export * from './dsl/operation/types.js';
|
|
25
25
|
export * from './dsl/Stringable.js';
|
|
26
26
|
export * from './helpers/collateExamples.js';
|
|
27
|
+
export * from './helpers/generationStats.js';
|
|
27
28
|
export * from './helpers/isEmpty.js';
|
|
28
29
|
export * from './helpers/isImported.js';
|
|
29
30
|
export * from './helpers/naming.js';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@skmtc/core",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.721",
|
|
4
4
|
"main": "./script/mod.js",
|
|
5
5
|
"module": "./esm/mod.js",
|
|
6
6
|
"exports": {
|
|
@@ -28,6 +28,10 @@
|
|
|
28
28
|
"import": "./esm/types/GeneratorKeys.js",
|
|
29
29
|
"require": "./script/types/GeneratorKeys.js"
|
|
30
30
|
},
|
|
31
|
+
"./generationStats": {
|
|
32
|
+
"import": "./esm/helpers/generationStats.js",
|
|
33
|
+
"require": "./script/helpers/generationStats.js"
|
|
34
|
+
},
|
|
31
35
|
"./isEmpty": {
|
|
32
36
|
"import": "./esm/helpers/isEmpty.js",
|
|
33
37
|
"require": "./script/helpers/isEmpty.js"
|
|
@@ -196,6 +200,7 @@
|
|
|
196
200
|
"@types/babel__helper-validator-identifier": "7.15.2",
|
|
197
201
|
"@types/lodash-es": "4.17.12",
|
|
198
202
|
"@types/swagger2openapi": "7.0.4",
|
|
203
|
+
"gpt-tokenizer": "^3.0.1",
|
|
199
204
|
"lodash-es": "4.17.21",
|
|
200
205
|
"openapi-types": "^12.1.3",
|
|
201
206
|
"prettier": "^3.6.2",
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import "../_dnt.polyfills.js";
|
|
2
|
+
import type { ManifestContent } from '../types/Manifest.js';
|
|
3
|
+
import type { ResultsItem, ResultType } from '../types/Results.js';
|
|
4
|
+
type GenerationStatsArgs = {
|
|
5
|
+
manifest: ManifestContent;
|
|
6
|
+
artifacts: Record<string, string>;
|
|
7
|
+
};
|
|
8
|
+
export declare const toGenerationStats: ({ manifest, artifacts }: GenerationStatsArgs) => {
|
|
9
|
+
tokens: number;
|
|
10
|
+
lines: number;
|
|
11
|
+
totalTime: number;
|
|
12
|
+
errors: string[][];
|
|
13
|
+
files: number;
|
|
14
|
+
};
|
|
15
|
+
export declare const toManifestTokens: (artifacts: Record<string, string>) => number;
|
|
16
|
+
export declare const toManifestLines: (manifest: ManifestContent) => number;
|
|
17
|
+
export declare const toTotalTime: (manifest: ManifestContent) => number;
|
|
18
|
+
export declare const toManifestErrors: (results: ManifestContent["results"]) => string[][];
|
|
19
|
+
type CheckResultArgs = {
|
|
20
|
+
path: string[];
|
|
21
|
+
result: ResultsItem | (ResultsItem | null)[] | ResultType;
|
|
22
|
+
errors: string[][];
|
|
23
|
+
};
|
|
24
|
+
export declare const checkResult: ({ path, result, errors }: CheckResultArgs) => void;
|
|
25
|
+
export {};
|
|
26
|
+
//# sourceMappingURL=generationStats.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generationStats.d.ts","sourceRoot":"","sources":["../../src/helpers/generationStats.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAIlE,KAAK,mBAAmB,GAAG;IACzB,QAAQ,EAAE,eAAe,CAAA;IACzB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAClC,CAAA;AACD,eAAO,MAAM,iBAAiB,GAAI,yBAAyB,mBAAmB;;;;;;CAc7E,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,WAAW,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,WAOjE,CAAA;AAED,eAAO,MAAM,eAAe,GAAI,UAAU,eAAe,WAOxD,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,UAAU,eAAe,WAIpD,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,SAAS,eAAe,CAAC,SAAS,CAAC,eAQnE,CAAA;AAED,KAAK,eAAe,GAAG;IACrB,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,MAAM,EAAE,WAAW,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,EAAE,GAAG,UAAU,CAAA;IACzD,MAAM,EAAE,MAAM,EAAE,EAAE,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,WAAW,GAAI,0BAA0B,eAAe,SA0BpE,CAAA"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.checkResult = exports.toManifestErrors = exports.toTotalTime = exports.toManifestLines = exports.toManifestTokens = exports.toGenerationStats = void 0;
|
|
4
|
+
require("../_dnt.polyfills.js");
|
|
5
|
+
const ts_pattern_1 = require("ts-pattern");
|
|
6
|
+
const gpt_tokenizer_1 = require("gpt-tokenizer");
|
|
7
|
+
const toGenerationStats = ({ manifest, artifacts }) => {
|
|
8
|
+
const tokens = (0, exports.toManifestTokens)(artifacts);
|
|
9
|
+
const lines = (0, exports.toManifestLines)(manifest);
|
|
10
|
+
const totalTime = (0, exports.toTotalTime)(manifest);
|
|
11
|
+
const errors = (0, exports.toManifestErrors)(manifest.results);
|
|
12
|
+
const files = Object.keys(artifacts).length;
|
|
13
|
+
return {
|
|
14
|
+
tokens,
|
|
15
|
+
lines,
|
|
16
|
+
totalTime,
|
|
17
|
+
errors,
|
|
18
|
+
files
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
exports.toGenerationStats = toGenerationStats;
|
|
22
|
+
const toManifestTokens = (artifacts) => {
|
|
23
|
+
const { tokens } = Object.values(artifacts).reduce((acc, artifact) => ({ tokens: acc.tokens + (0, gpt_tokenizer_1.countTokens)(artifact) }), { tokens: 0 });
|
|
24
|
+
return tokens;
|
|
25
|
+
};
|
|
26
|
+
exports.toManifestTokens = toManifestTokens;
|
|
27
|
+
const toManifestLines = (manifest) => {
|
|
28
|
+
const { lines } = Object.values(manifest.files).reduce((acc, file) => ({ lines: acc.lines + file.lines }), { lines: 0 });
|
|
29
|
+
return lines;
|
|
30
|
+
};
|
|
31
|
+
exports.toManifestLines = toManifestLines;
|
|
32
|
+
const toTotalTime = (manifest) => {
|
|
33
|
+
const totalTime = manifest.endAt - manifest.startAt;
|
|
34
|
+
return totalTime;
|
|
35
|
+
};
|
|
36
|
+
exports.toTotalTime = toTotalTime;
|
|
37
|
+
const toManifestErrors = (results) => {
|
|
38
|
+
const errors = [];
|
|
39
|
+
Object.entries(results).map(([path, result]) => {
|
|
40
|
+
return (0, exports.checkResult)({ path: [path], result, errors });
|
|
41
|
+
});
|
|
42
|
+
return errors;
|
|
43
|
+
};
|
|
44
|
+
exports.toManifestErrors = toManifestErrors;
|
|
45
|
+
const checkResult = ({ path, result, errors }) => {
|
|
46
|
+
(0, ts_pattern_1.match)(result)
|
|
47
|
+
.with(ts_pattern_1.P.array(), matchedResult => {
|
|
48
|
+
return matchedResult.map(item => {
|
|
49
|
+
if (item !== null) {
|
|
50
|
+
(0, exports.checkResult)({ path, result: item, errors });
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
})
|
|
54
|
+
.with(ts_pattern_1.P.string, matchedResult => {
|
|
55
|
+
if (matchedResult === 'error') {
|
|
56
|
+
errors.push(path);
|
|
57
|
+
}
|
|
58
|
+
})
|
|
59
|
+
.with(ts_pattern_1.P.nullish, matchedResult => {
|
|
60
|
+
return (0, exports.checkResult)({ path, result: matchedResult, errors });
|
|
61
|
+
})
|
|
62
|
+
.otherwise(matched => {
|
|
63
|
+
if (typeof matched === 'object') {
|
|
64
|
+
return Object.entries(matched).map(([key, value]) => {
|
|
65
|
+
return (0, exports.checkResult)({ path: [...path, key], result: value, errors });
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
throw new Error('Invalid result type');
|
|
70
|
+
}
|
|
71
|
+
});
|
|
72
|
+
};
|
|
73
|
+
exports.checkResult = checkResult;
|
package/script/mod.d.ts
CHANGED
|
@@ -24,6 +24,7 @@ export * from './dsl/operation/toOperationEntry.js';
|
|
|
24
24
|
export * from './dsl/operation/types.js';
|
|
25
25
|
export * from './dsl/Stringable.js';
|
|
26
26
|
export * from './helpers/collateExamples.js';
|
|
27
|
+
export * from './helpers/generationStats.js';
|
|
27
28
|
export * from './helpers/isEmpty.js';
|
|
28
29
|
export * from './helpers/isImported.js';
|
|
29
30
|
export * from './helpers/naming.js';
|
package/script/mod.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../src/mod.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAC7B,cAAc,mBAAmB,CAAA;AACjC,cAAc,0BAA0B,CAAA;AACxC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,2BAA2B,CAAA;AACzC,cAAc,oBAAoB,CAAA;AAClC,cAAc,sBAAsB,CAAA;AACpC,cAAc,0BAA0B,CAAA;AACxC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,qBAAqB,CAAA;AACnC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,mBAAmB,CAAA;AACjC,cAAc,0BAA0B,CAAA;AACxC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,sBAAsB,CAAA;AACpC,cAAc,kCAAkC,CAAA;AAChD,cAAc,oCAAoC,CAAA;AAClD,cAAc,oCAAoC,CAAA;AAClD,cAAc,qCAAqC,CAAA;AACnD,cAAc,0BAA0B,CAAA;AACxC,cAAc,qBAAqB,CAAA;AACnC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AACvC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,sBAAsB,CAAA;AACpC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,qCAAqC,CAAA;AACnD,cAAc,sBAAsB,CAAA;AACpC,cAAc,0BAA0B,CAAA;AACxC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,sCAAsC,CAAA;AACpD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,oBAAoB,CAAA;AAClC,cAAc,0BAA0B,CAAA;AACxC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,kBAAkB,CAAA;AAChC,cAAc,kCAAkC,CAAA;AAChD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,cAAc,0BAA0B,CAAA;AACxC,cAAc,oBAAoB,CAAA;AAClC,cAAc,sBAAsB,CAAA;AACpC,cAAc,2BAA2B,CAAA;AACzC,cAAc,wBAAwB,CAAA;AACtC,cAAc,qBAAqB,CAAA;AACnC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,wBAAwB,CAAA;AACtC,cAAc,2BAA2B,CAAA;AACzC,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAA;AACjC,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AACvC,cAAc,2BAA2B,CAAA;AACzC,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,cAAc,qBAAqB,CAAA;AACnC,cAAc,uBAAuB,CAAA;AACrC,cAAc,mCAAmC,CAAA;AACjD,cAAc,6BAA6B,CAAA;AAC3C,cAAc,2BAA2B,CAAA;AACzC,cAAc,sBAAsB,CAAA;AACpC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,uCAAuC,CAAA;AACrD,cAAc,gCAAgC,CAAA;AAC9C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,iCAAiC,CAAA"}
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../src/mod.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAC7B,cAAc,mBAAmB,CAAA;AACjC,cAAc,0BAA0B,CAAA;AACxC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,2BAA2B,CAAA;AACzC,cAAc,oBAAoB,CAAA;AAClC,cAAc,sBAAsB,CAAA;AACpC,cAAc,0BAA0B,CAAA;AACxC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,qBAAqB,CAAA;AACnC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,mBAAmB,CAAA;AACjC,cAAc,0BAA0B,CAAA;AACxC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,sBAAsB,CAAA;AACpC,cAAc,kCAAkC,CAAA;AAChD,cAAc,oCAAoC,CAAA;AAClD,cAAc,oCAAoC,CAAA;AAClD,cAAc,qCAAqC,CAAA;AACnD,cAAc,0BAA0B,CAAA;AACxC,cAAc,qBAAqB,CAAA;AACnC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AACvC,cAAc,qBAAqB,CAAA;AACnC,cAAc,qBAAqB,CAAA;AACnC,cAAc,sBAAsB,CAAA;AACpC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,qCAAqC,CAAA;AACnD,cAAc,sBAAsB,CAAA;AACpC,cAAc,0BAA0B,CAAA;AACxC,cAAc,gCAAgC,CAAA;AAC9C,cAAc,sCAAsC,CAAA;AACpD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,oBAAoB,CAAA;AAClC,cAAc,0BAA0B,CAAA;AACxC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,kBAAkB,CAAA;AAChC,cAAc,kCAAkC,CAAA;AAChD,cAAc,4BAA4B,CAAA;AAC1C,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,cAAc,0BAA0B,CAAA;AACxC,cAAc,oBAAoB,CAAA;AAClC,cAAc,sBAAsB,CAAA;AACpC,cAAc,2BAA2B,CAAA;AACzC,cAAc,wBAAwB,CAAA;AACtC,cAAc,qBAAqB,CAAA;AACnC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,wBAAwB,CAAA;AACtC,cAAc,2BAA2B,CAAA;AACzC,cAAc,0BAA0B,CAAA;AACxC,cAAc,0BAA0B,CAAA;AACxC,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAA;AACjC,cAAc,sBAAsB,CAAA;AACpC,cAAc,yBAAyB,CAAA;AACvC,cAAc,2BAA2B,CAAA;AACzC,cAAc,oBAAoB,CAAA;AAClC,cAAc,oBAAoB,CAAA;AAClC,cAAc,qBAAqB,CAAA;AACnC,cAAc,uBAAuB,CAAA;AACrC,cAAc,mCAAmC,CAAA;AACjD,cAAc,6BAA6B,CAAA;AAC3C,cAAc,2BAA2B,CAAA;AACzC,cAAc,sBAAsB,CAAA;AACpC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,uCAAuC,CAAA;AACrD,cAAc,gCAAgC,CAAA;AAC9C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,iCAAiC,CAAA"}
|
package/script/mod.js
CHANGED
|
@@ -40,6 +40,7 @@ __exportStar(require("./dsl/operation/toOperationEntry.js"), exports);
|
|
|
40
40
|
__exportStar(require("./dsl/operation/types.js"), exports);
|
|
41
41
|
__exportStar(require("./dsl/Stringable.js"), exports);
|
|
42
42
|
__exportStar(require("./helpers/collateExamples.js"), exports);
|
|
43
|
+
__exportStar(require("./helpers/generationStats.js"), exports);
|
|
43
44
|
__exportStar(require("./helpers/isEmpty.js"), exports);
|
|
44
45
|
__exportStar(require("./helpers/isImported.js"), exports);
|
|
45
46
|
__exportStar(require("./helpers/naming.js"), exports);
|