@typespec/tspd 0.47.0-dev.0

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 (47) hide show
  1. package/LICENSE +21 -0
  2. package/cmd/tspd.js +2 -0
  3. package/dist/src/cli.d.ts +2 -0
  4. package/dist/src/cli.d.ts.map +1 -0
  5. package/dist/src/cli.js +99 -0
  6. package/dist/src/cli.js.map +1 -0
  7. package/dist/src/ref-doc/api-docs.d.ts +4 -0
  8. package/dist/src/ref-doc/api-docs.d.ts.map +1 -0
  9. package/dist/src/ref-doc/api-docs.js +71 -0
  10. package/dist/src/ref-doc/api-docs.js.map +1 -0
  11. package/dist/src/ref-doc/emitters/docusaurus.d.ts +24 -0
  12. package/dist/src/ref-doc/emitters/docusaurus.d.ts.map +1 -0
  13. package/dist/src/ref-doc/emitters/docusaurus.js +232 -0
  14. package/dist/src/ref-doc/emitters/docusaurus.js.map +1 -0
  15. package/dist/src/ref-doc/emitters/markdown.d.ts +32 -0
  16. package/dist/src/ref-doc/emitters/markdown.d.ts.map +1 -0
  17. package/dist/src/ref-doc/emitters/markdown.js +229 -0
  18. package/dist/src/ref-doc/emitters/markdown.js.map +1 -0
  19. package/dist/src/ref-doc/experimental.d.ts +9 -0
  20. package/dist/src/ref-doc/experimental.d.ts.map +1 -0
  21. package/dist/src/ref-doc/experimental.js +63 -0
  22. package/dist/src/ref-doc/experimental.js.map +1 -0
  23. package/dist/src/ref-doc/extractor.d.ts +11 -0
  24. package/dist/src/ref-doc/extractor.d.ts.map +1 -0
  25. package/dist/src/ref-doc/extractor.js +497 -0
  26. package/dist/src/ref-doc/extractor.js.map +1 -0
  27. package/dist/src/ref-doc/index.d.ts +5 -0
  28. package/dist/src/ref-doc/index.d.ts.map +1 -0
  29. package/dist/src/ref-doc/index.js +5 -0
  30. package/dist/src/ref-doc/index.js.map +1 -0
  31. package/dist/src/ref-doc/lib.d.ts +63 -0
  32. package/dist/src/ref-doc/lib.d.ts.map +1 -0
  33. package/dist/src/ref-doc/lib.js +24 -0
  34. package/dist/src/ref-doc/lib.js.map +1 -0
  35. package/dist/src/ref-doc/types.d.ts +109 -0
  36. package/dist/src/ref-doc/types.d.ts.map +1 -0
  37. package/dist/src/ref-doc/types.js +2 -0
  38. package/dist/src/ref-doc/types.js.map +1 -0
  39. package/dist/src/ref-doc/utils/markdown.d.ts +27 -0
  40. package/dist/src/ref-doc/utils/markdown.d.ts.map +1 -0
  41. package/dist/src/ref-doc/utils/markdown.js +70 -0
  42. package/dist/src/ref-doc/utils/markdown.js.map +1 -0
  43. package/dist/src/ref-doc/utils/type-signature.d.ts +5 -0
  44. package/dist/src/ref-doc/utils/type-signature.d.ts.map +1 -0
  45. package/dist/src/ref-doc/utils/type-signature.js +136 -0
  46. package/dist/src/ref-doc/utils/type-signature.js.map +1 -0
  47. package/package.json +81 -0
@@ -0,0 +1,109 @@
1
+ import { Decorator, Enum, FunctionParameter, Interface, LinterRuleDefinition, LinterRuleSet, Model, NodePackage, Operation, Scalar, Union } from "@typespec/compiler";
2
+ export type TypeSpecRefDoc = TypeSpecLibraryRefDoc;
3
+ export type TypeSpecLibraryRefDoc = TypeSpecRefDocBase & {
4
+ /**
5
+ * Library name
6
+ */
7
+ name: string;
8
+ /**
9
+ * Library package.json
10
+ */
11
+ packageJson: NodePackage;
12
+ /**
13
+ * Library description
14
+ */
15
+ description?: string;
16
+ emitter?: EmitterRefDoc;
17
+ /** Documentation about the linter rules and ruleset provided in this library. */
18
+ linter?: LinterRefDoc;
19
+ };
20
+ export type TypeSpecRefDocBase = {
21
+ namespaces: NamespaceRefDoc[];
22
+ };
23
+ export type EmitterRefDoc = {
24
+ options: EmitterOptionRefDoc[];
25
+ };
26
+ export type LinterRefDoc = {
27
+ /** List of rulesets provided. */
28
+ ruleSets?: LinterRuleSetRefDoc[];
29
+ rules: LinterRuleRefDoc[];
30
+ };
31
+ export type LinterRuleSetRefDoc = ReferencableElement & {
32
+ ruleSet: LinterRuleSet;
33
+ };
34
+ export type LinterRuleRefDoc = ReferencableElement & {
35
+ rule: LinterRuleDefinition<any, any>;
36
+ };
37
+ export type EmitterOptionRefDoc = {
38
+ name: string;
39
+ type: string;
40
+ doc: string;
41
+ };
42
+ export type NamespaceRefDoc = {
43
+ id: string;
44
+ decorators: DecoratorRefDoc[];
45
+ operations: OperationRefDoc[];
46
+ interfaces: InterfaceRefDoc[];
47
+ models: ModelRefDoc[];
48
+ enums: EnumRefDoc[];
49
+ unions: UnionRefDoc[];
50
+ scalars: ScalarRefDoc[];
51
+ };
52
+ export type ReferencableElement = {
53
+ /**
54
+ * Fully qualified id
55
+ */
56
+ id: string;
57
+ name: string;
58
+ };
59
+ export type NamedTypeRefDoc = ReferencableElement & {
60
+ signature: string;
61
+ doc: string;
62
+ examples: ExampleRefDoc[];
63
+ };
64
+ export type DecoratorRefDoc = NamedTypeRefDoc & {
65
+ type: Decorator;
66
+ target: FunctionParameterRefDoc;
67
+ parameters: FunctionParameterRefDoc[];
68
+ otherTags: string[];
69
+ };
70
+ export type FunctionParameterRefDoc = {
71
+ type: FunctionParameter;
72
+ name: string;
73
+ doc: string;
74
+ optional: boolean;
75
+ rest: boolean;
76
+ };
77
+ export type ExampleRefDoc = {
78
+ title?: string;
79
+ content: string;
80
+ };
81
+ export type OperationRefDoc = NamedTypeRefDoc & {
82
+ type: Operation;
83
+ templateParameters?: TemplateParameterRefDoc[];
84
+ };
85
+ export type InterfaceRefDoc = NamedTypeRefDoc & {
86
+ type: Interface;
87
+ templateParameters?: TemplateParameterRefDoc[];
88
+ interfaceOperations: OperationRefDoc[];
89
+ };
90
+ export type TemplateParameterRefDoc = {
91
+ name: string;
92
+ doc: string;
93
+ };
94
+ export type ModelRefDoc = NamedTypeRefDoc & {
95
+ type: Model;
96
+ templateParameters?: TemplateParameterRefDoc[];
97
+ };
98
+ export type EnumRefDoc = NamedTypeRefDoc & {
99
+ type: Enum;
100
+ };
101
+ export type UnionRefDoc = NamedTypeRefDoc & {
102
+ type: Union;
103
+ templateParameters?: TemplateParameterRefDoc[];
104
+ };
105
+ export type ScalarRefDoc = NamedTypeRefDoc & {
106
+ type: Scalar;
107
+ templateParameters?: TemplateParameterRefDoc[];
108
+ };
109
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/ref-doc/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/ref-doc/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,27 @@
1
+ export declare const headings: {
2
+ h1: (title: string) => string;
3
+ h2: (title: string) => string;
4
+ h3: (title: string) => string;
5
+ h4: (title: string) => string;
6
+ h5: (title: string) => string;
7
+ hx: (number: number, title: string) => string;
8
+ };
9
+ export declare function codeblock(code: string, lang?: string): string;
10
+ export declare function inlinecode(code: string): string;
11
+ export declare function link(text: string, url: string): string;
12
+ export declare function table([header, ...rows]: string[][]): string;
13
+ export type Tab = {
14
+ id: string;
15
+ label: string;
16
+ content: string;
17
+ };
18
+ export declare function tabs(tabs: Tab[]): string;
19
+ export interface MarkdownSection {
20
+ kind: "section";
21
+ title: string;
22
+ body: MarkdownDoc;
23
+ }
24
+ export type MarkdownDoc = string | MarkdownSection | MarkdownDoc[];
25
+ export declare function renderMarkdowDoc(doc: MarkdownDoc, heading?: number): string;
26
+ export declare function section(title: string, body: MarkdownDoc): MarkdownSection;
27
+ //# sourceMappingURL=markdown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../../../src/ref-doc/utils/markdown.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,QAAQ;gBAaJ,MAAM;gBAAN,MAAM;gBAAN,MAAM;gBAAN,MAAM;gBAAN,MAAM;iBAPR,MAAM,SAAS,MAAM;CAGnC,CAAC;AAOF,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,MAAW,UAExD;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,UAEtC;AAED,wBAAgB,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,UAE7C;AAMD,wBAAgB,KAAK,CAAC,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,UAQlD;AAED,MAAM,MAAM,GAAG,GAAG;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,wBAAgB,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,UAa/B;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,WAAW,CAAC;CACnB;AACD,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,eAAe,GAAG,WAAW,EAAE,CAAC;AAEnE,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,SAAI,UAiB7D;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,eAAe,CAMzE"}
@@ -0,0 +1,70 @@
1
+ export const headings = {
2
+ h1: hx(1),
3
+ h2: hx(2),
4
+ h3: hx(3),
5
+ h4: hx(4),
6
+ h5: hx(5),
7
+ hx: (number, title) => {
8
+ return "#".repeat(number) + " " + title;
9
+ },
10
+ };
11
+ function hx(number) {
12
+ const prefix = "#".repeat(number) + " ";
13
+ return (title) => prefix + title;
14
+ }
15
+ export function codeblock(code, lang = "") {
16
+ return "```" + lang + "\n" + code + "\n" + "```";
17
+ }
18
+ export function inlinecode(code) {
19
+ return "`" + code + "`";
20
+ }
21
+ export function link(text, url) {
22
+ return `[${text}](${url})`;
23
+ }
24
+ function escapeMarkdownTable(text) {
25
+ return text.replace(/(\|)/g, "\\$1").replace(/\n/g, "<br />");
26
+ }
27
+ export function table([header, ...rows]) {
28
+ const renderRow = (row) => `| ${row.map(escapeMarkdownTable).join(" | ")} |`;
29
+ return [
30
+ renderRow(header),
31
+ "|" + header.map((x) => "-".repeat(x.length + 2)).join("|") + "|",
32
+ ...rows.map(renderRow),
33
+ ].join("\n");
34
+ }
35
+ export function tabs(tabs) {
36
+ const result = ["<Tabs>"];
37
+ for (const tab of tabs) {
38
+ result.push(`<TabItem value="${tab.id}" label="${tab.label}" default>`, "", tab.content, "", "</TabItem>");
39
+ }
40
+ result.push("</Tabs>", "");
41
+ return result.join("\n");
42
+ }
43
+ export function renderMarkdowDoc(doc, heading = 1) {
44
+ const flattened = [];
45
+ let currentHeading = heading;
46
+ function render(doc) {
47
+ if (typeof doc === "string") {
48
+ flattened.push(doc);
49
+ }
50
+ else if (Array.isArray(doc)) {
51
+ doc.forEach(render);
52
+ }
53
+ else {
54
+ flattened.push(headings.hx(currentHeading, doc.title));
55
+ currentHeading++;
56
+ render(doc.body);
57
+ currentHeading--;
58
+ }
59
+ }
60
+ render(doc);
61
+ return flattened.join("\n");
62
+ }
63
+ export function section(title, body) {
64
+ return {
65
+ kind: "section",
66
+ title,
67
+ body,
68
+ };
69
+ }
70
+ //# sourceMappingURL=markdown.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown.js","sourceRoot":"","sources":["../../../../src/ref-doc/utils/markdown.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { Type } from "@typespec/compiler";
2
+ export declare function getQualifier(parent: (Type & {
3
+ name?: string | symbol;
4
+ }) | undefined): string;
5
+ //# sourceMappingURL=type-signature.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type-signature.d.ts","sourceRoot":"","sources":["../../../../src/ref-doc/utils/type-signature.ts"],"names":[],"mappings":"AAAA,OAAO,EAaL,IAAI,EAGL,MAAM,oBAAoB,CAAC;AA4I5B,wBAAgB,YAAY,CAAC,MAAM,EAAE,CAAC,IAAI,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CAAC,GAAG,SAAS,UAWnF"}
@@ -0,0 +1,136 @@
1
+ import { compilerAssert, getTypeName, } from "@typespec/compiler";
2
+ /** @internal */
3
+ export function getTypeSignature(type) {
4
+ if (type.kind === "Value") {
5
+ return `valueof ${getTypeSignature(type.target)}`;
6
+ }
7
+ if (isReflectionType(type)) {
8
+ return type.name;
9
+ }
10
+ switch (type.kind) {
11
+ case "Scalar":
12
+ case "Enum":
13
+ case "Union":
14
+ case "Model":
15
+ case "Namespace":
16
+ return `${type.kind.toLowerCase()} ${getTypeName(type)}`;
17
+ case "Interface":
18
+ return getInterfaceSignature(type);
19
+ case "Decorator":
20
+ return getDecoratorSignature(type);
21
+ case "Function":
22
+ return getFunctionSignature(type);
23
+ case "Operation":
24
+ return getOperationSignature(type);
25
+ case "String":
26
+ return `(string) ${`"${type.value}"`}`;
27
+ case "Boolean":
28
+ return `(boolean) ${type.value ? "true" : "false"}`;
29
+ case "Number":
30
+ return `(number) ${type.value.toString()}`;
31
+ case "Intrinsic":
32
+ return `(intrinsic) ${type.name}`;
33
+ case "FunctionParameter":
34
+ return getFunctionParameterSignature(type);
35
+ case "StringTemplate":
36
+ return `(string template)\n${getStringTemplateSignature(type)}`;
37
+ case "StringTemplateSpan":
38
+ return `(string template span)\n${getTypeName(type.type)}`;
39
+ case "ModelProperty":
40
+ return `(model property) ${`${type.name}: ${getTypeName(type.type)}`}`;
41
+ case "EnumMember":
42
+ return `(enum member) ${getEnumMemberSignature(type)}`;
43
+ case "TemplateParameter":
44
+ return type.node.id.sv;
45
+ case "UnionVariant":
46
+ return `(union variant) ${getUnionVariantSignature(type)}`;
47
+ case "Tuple":
48
+ return `(tuple) [${type.values.map(getTypeSignature).join(", ")}]`;
49
+ case "Projection":
50
+ return "(projection)";
51
+ case "Object":
52
+ return "(object)";
53
+ default:
54
+ const _assertNever = type;
55
+ compilerAssert(false, "Unexpected type kind");
56
+ }
57
+ }
58
+ function isReflectionType(type) {
59
+ var _a, _b, _c;
60
+ return (type.kind === "Model" &&
61
+ ((_a = type.namespace) === null || _a === void 0 ? void 0 : _a.name) === "Reflection" &&
62
+ ((_c = (_b = type.namespace) === null || _b === void 0 ? void 0 : _b.namespace) === null || _c === void 0 ? void 0 : _c.name) === "TypeSpec");
63
+ }
64
+ function getDecoratorSignature(type) {
65
+ const ns = getQualifier(type.namespace);
66
+ const name = type.name.slice(1);
67
+ const parameters = [...type.parameters].map((x) => getFunctionParameterSignature(x));
68
+ let signature = `@${ns}${name}`;
69
+ if (parameters.length > 0) {
70
+ signature += `(${parameters.join(", ")})`;
71
+ }
72
+ return signature;
73
+ }
74
+ function getFunctionSignature(type) {
75
+ const ns = getQualifier(type.namespace);
76
+ const parameters = type.parameters.map((x) => getFunctionParameterSignature(x));
77
+ return `fn ${ns}${type.name}(${parameters.join(", ")}): ${getTypeName(type.returnType)}`;
78
+ }
79
+ function getInterfaceSignature(type) {
80
+ const ns = getQualifier(type.namespace);
81
+ const templateParams = type.node.templateParameters
82
+ ? getTemplateParameters(type.node.templateParameters)
83
+ : "";
84
+ return `interface ${ns}${type.name}${templateParams}`;
85
+ }
86
+ function getTemplateParameters(templateParameters) {
87
+ const params = templateParameters.map((x) => `${x.id.sv}`);
88
+ return `<${params.join(", ")}>`;
89
+ }
90
+ function getOperationSignature(type) {
91
+ var _a;
92
+ const qualifier = getQualifier((_a = type.interface) !== null && _a !== void 0 ? _a : type.namespace);
93
+ const parameters = [...type.parameters.properties.values()].map(getModelPropertySignature);
94
+ return `op ${qualifier}${type.name}(${parameters.join(", ")}): ${getTypeName(type.returnType)}`;
95
+ }
96
+ function getFunctionParameterSignature(parameter) {
97
+ const rest = parameter.rest ? "..." : "";
98
+ const optional = parameter.optional ? "?" : "";
99
+ return `${rest}${parameter.name}${optional}: ${getTypeName(parameter.type)}`;
100
+ }
101
+ function getStringTemplateSignature(stringTemplate) {
102
+ return ("`" +
103
+ [
104
+ stringTemplate.spans.map((span) => {
105
+ return span.isInterpolated ? "${" + getTypeName(span.type) + "}" : span.type.value;
106
+ }),
107
+ ].join("") +
108
+ "`");
109
+ }
110
+ function getModelPropertySignature(property) {
111
+ const ns = getQualifier(property.model);
112
+ return `${ns}${property.name}: ${getTypeName(property.type)}`;
113
+ }
114
+ function getUnionVariantSignature(variant) {
115
+ if (typeof variant.name !== "string") {
116
+ return getTypeName(variant.type);
117
+ }
118
+ const ns = getQualifier(variant.union);
119
+ return `${ns}${variant.name}: ${getTypeName(variant.type)}`;
120
+ }
121
+ function getEnumMemberSignature(member) {
122
+ const ns = getQualifier(member.enum);
123
+ const value = typeof member.value === "string" ? `"${member.value}"` : member.value;
124
+ return value === undefined ? `${ns}${member.name}` : `${ns}${member.name}: ${value}`;
125
+ }
126
+ export function getQualifier(parent) {
127
+ if (!(parent === null || parent === void 0 ? void 0 : parent.name) || typeof parent.name !== "string") {
128
+ return "";
129
+ }
130
+ const parentName = getTypeName(parent);
131
+ if (!parentName || parentName === "TypeSpec") {
132
+ return "";
133
+ }
134
+ return parentName + ".";
135
+ }
136
+ //# sourceMappingURL=type-signature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"type-signature.js","sourceRoot":"","sources":["../../../../src/ref-doc/utils/type-signature.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,81 @@
1
+ {
2
+ "name": "@typespec/tspd",
3
+ "version": "0.47.0-dev.0",
4
+ "author": "Microsoft Corporation",
5
+ "description": "TypeSpec library for generating TypeSpec docs",
6
+ "homepage": "https://microsoft.github.io/typespec",
7
+ "readme": "https://github.com/microsoft/typespec/blob/main/README.md",
8
+ "license": "MIT",
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "git+https://github.com/microsoft/typespec.git"
12
+ },
13
+ "bugs": {
14
+ "url": "https://github.com/microsoft/typespec/issues"
15
+ },
16
+ "keywords": [
17
+ "typespec"
18
+ ],
19
+ "type": "module",
20
+ "bin": {
21
+ "tspd": "./cmd/tspd.js"
22
+ },
23
+ "main": "./dist/src/index.js",
24
+ "exports": {
25
+ ".": {
26
+ "types": "./dist/src/index.d.ts",
27
+ "default": "./dist/src/index.js"
28
+ },
29
+ "./ref-doc": {
30
+ "types": "./dist/src/ref-doc/index.d.ts",
31
+ "default": "./dist/src/ref-doc/index.js"
32
+ },
33
+ "./ref-doc/emitters/docusaurus": {
34
+ "types": "./dist/src/ref-doc/emitters/docusaurus.d.ts",
35
+ "default": "./dist/src/ref-doc/emitters/docusaurus.js"
36
+ }
37
+ },
38
+ "engines": {
39
+ "node": ">=18.0.0"
40
+ },
41
+ "files": [
42
+ "lib/*.tsp",
43
+ "dist/**",
44
+ "!dist/test/**"
45
+ ],
46
+ "dependencies": {
47
+ "@typespec/compiler": "~0.52.0 || >=0.53.0-dev <0.53.0",
48
+ "yaml": "~2.3.4",
49
+ "prettier": "~3.1.1",
50
+ "picocolors": "~1.0.0",
51
+ "yargs": "~17.7.2"
52
+ },
53
+ "devDependencies": {
54
+ "@typespec/compiler": "~0.52.0 || >=0.53.0-dev <0.53.0",
55
+ "@typespec/eslint-config-typespec": "~0.52.0 || >=0.53.0-dev <0.53.0",
56
+ "@typespec/prettier-plugin-typespec": "~0.52.0 || >=0.53.0-dev <0.53.0",
57
+ "@types/node": "~18.11.9",
58
+ "@types/yargs": "~17.0.32",
59
+ "c8": "~8.0.1",
60
+ "eslint": "^8.55.0",
61
+ "vitest": "^1.2.0",
62
+ "@vitest/coverage-v8": "^1.1.0",
63
+ "@vitest/ui": "~1.1.3",
64
+ "source-map-support": "~0.5.21",
65
+ "rimraf": "~5.0.1",
66
+ "typedoc-plugin-markdown": "~4.0.0-next.22",
67
+ "typedoc": "0.25.4",
68
+ "typescript": "~5.3.3"
69
+ },
70
+ "peerDependencies": {},
71
+ "scripts": {
72
+ "clean": "rimraf ./dist ./temp",
73
+ "build": "tsc -p .",
74
+ "watch": "tsc -p . --watch",
75
+ "test": "vitest run",
76
+ "test:ui": "vitest --ui",
77
+ "test-official": "vitest run --coverage --reporter=junit --reporter=default --no-file-parallelism",
78
+ "lint": "eslint . --ext .ts --max-warnings=0",
79
+ "lint:fix": "eslint . --fix --ext .ts"
80
+ }
81
+ }