@vivantel/virage-chunker-ce-ts 0.1.1

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.
@@ -0,0 +1,4 @@
1
+ import type { ArtifactChunker, BaseOptions } from "@vivantel/virage-chunker-ce-ast";
2
+ export type TsChunkerOptions = BaseOptions;
3
+ export declare function createChunker(opts?: TsChunkerOptions): ArtifactChunker;
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,eAAe,EAAsC,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAKxH,MAAM,MAAM,gBAAgB,GAAG,WAAW,CAAC;AA2I3C,wBAAgB,aAAa,CAAC,IAAI,CAAC,EAAE,gBAAgB,GAAG,eAAe,CA+CtE"}
package/dist/index.js ADDED
@@ -0,0 +1,175 @@
1
+ import { createHash } from "node:crypto";
2
+ import { readFile, stat } from "node:fs/promises";
3
+ import * as ts from "typescript";
4
+ import { minimatch } from "minimatch";
5
+ import { walkToChunks } from "@vivantel/virage-chunker-ce-ast";
6
+ const NAME = "@vivantel/virage-chunker-ce-ts";
7
+ const VERSION = "0.1.0";
8
+ function makeGeneratorId(role, opts) {
9
+ const fp = JSON.stringify({
10
+ maxTokens: opts.maxTokens,
11
+ minTokens: opts.minTokens,
12
+ overlap: opts.overlap,
13
+ adaptiveSize: opts.adaptiveSize,
14
+ recursive: opts.recursive,
15
+ });
16
+ return createHash("sha256")
17
+ .update(`${NAME}@${VERSION}:${role}:${fp}`)
18
+ .digest("hex")
19
+ .slice(0, 16);
20
+ }
21
+ function emptyAttrs(byteStart = 0, byteEnd = 0) {
22
+ return { byteStart, byteEnd };
23
+ }
24
+ /**
25
+ * Build a ViDoc DocNode from a TypeScript/JavaScript source file.
26
+ * Top-level declarations become sections; imports form a preamble code node.
27
+ */
28
+ function buildDocNode(filePath, content) {
29
+ const sourceFile = ts.createSourceFile(filePath, content, ts.ScriptTarget.Latest, true);
30
+ const children = [];
31
+ // Gather import declarations as a single preamble code node.
32
+ const importLines = [];
33
+ for (const stmt of sourceFile.statements) {
34
+ if (ts.isImportDeclaration(stmt) ||
35
+ ts.isImportEqualsDeclaration(stmt)) {
36
+ importLines.push(stmt.getText(sourceFile).trim());
37
+ }
38
+ }
39
+ if (importLines.length > 0) {
40
+ const importText = importLines.join("\n");
41
+ children.push({
42
+ type: "code",
43
+ text: importText,
44
+ attrs: {
45
+ ...emptyAttrs(sourceFile.getStart(), sourceFile.getEnd()),
46
+ codeLanguage: "typescript",
47
+ sourceFormat: "ts",
48
+ },
49
+ });
50
+ }
51
+ // Each top-level non-import declaration becomes a section.
52
+ for (const stmt of sourceFile.statements) {
53
+ if (ts.isImportDeclaration(stmt) ||
54
+ ts.isImportEqualsDeclaration(stmt)) {
55
+ continue;
56
+ }
57
+ const start = stmt.getStart(sourceFile);
58
+ const end = stmt.getEnd();
59
+ const text = content.slice(start, end);
60
+ const startLine = sourceFile.getLineAndCharacterOfPosition(start).line + 1;
61
+ const endLine = sourceFile.getLineAndCharacterOfPosition(end).line + 1;
62
+ let heading;
63
+ if (ts.isFunctionDeclaration(stmt) || ts.isFunctionExpression(stmt)) {
64
+ heading = stmt.name ? stmt.name.text : "(anonymous function)";
65
+ }
66
+ else if (ts.isClassDeclaration(stmt)) {
67
+ heading = stmt.name ? stmt.name.text : "(anonymous class)";
68
+ }
69
+ else if (ts.isInterfaceDeclaration(stmt)) {
70
+ heading = stmt.name.text;
71
+ }
72
+ else if (ts.isTypeAliasDeclaration(stmt)) {
73
+ heading = stmt.name.text;
74
+ }
75
+ else if (ts.isEnumDeclaration(stmt)) {
76
+ heading = stmt.name.text;
77
+ }
78
+ else if (ts.isVariableStatement(stmt)) {
79
+ const decls = stmt.declarationList.declarations;
80
+ const names = decls
81
+ .map((d) => (ts.isIdentifier(d.name) ? d.name.text : ""))
82
+ .filter(Boolean);
83
+ heading = names.join(", ") || "(variable)";
84
+ }
85
+ else if (ts.isExportDeclaration(stmt) || ts.isExportAssignment(stmt)) {
86
+ heading = "export";
87
+ }
88
+ else {
89
+ heading = "(statement)";
90
+ }
91
+ const sectionNode = {
92
+ type: "section",
93
+ attrs: {
94
+ byteStart: start,
95
+ byteEnd: end,
96
+ lineStart: startLine,
97
+ lineEnd: endLine,
98
+ headingLevel: 1,
99
+ breadcrumb: [heading],
100
+ codeLanguage: "typescript",
101
+ sourceFormat: "ts",
102
+ },
103
+ children: [
104
+ {
105
+ type: "heading",
106
+ text: heading,
107
+ attrs: {
108
+ byteStart: start,
109
+ byteEnd: start,
110
+ headingLevel: 1,
111
+ },
112
+ },
113
+ {
114
+ type: "code",
115
+ text,
116
+ attrs: {
117
+ byteStart: start,
118
+ byteEnd: end,
119
+ lineStart: startLine,
120
+ lineEnd: endLine,
121
+ codeLanguage: "typescript",
122
+ },
123
+ },
124
+ ],
125
+ };
126
+ children.push(sectionNode);
127
+ }
128
+ return {
129
+ type: "document",
130
+ attrs: emptyAttrs(0, content.length),
131
+ children,
132
+ };
133
+ }
134
+ export function createChunker(opts) {
135
+ const resolvedOpts = opts ?? {};
136
+ const ignore = resolvedOpts.ignore ?? [];
137
+ const sparseTextGeneratorId = makeGeneratorId("sparse", resolvedOpts);
138
+ const metadataGeneratorId = makeGeneratorId("meta", resolvedOpts);
139
+ return {
140
+ name: NAME,
141
+ version: VERSION,
142
+ patterns: ["**/*.ts", "**/*.tsx", "**/*.js", "**/*.jsx", "**/*.mjs", "**/*.cjs"],
143
+ sparseTextGeneratorId,
144
+ metadataGeneratorId,
145
+ async chunk(filePath, commitHash) {
146
+ const content = await readFile(filePath, "utf-8");
147
+ const fileStat = await stat(filePath);
148
+ const fileHash = createHash("sha256").update(content).digest("hex").slice(0, 16);
149
+ const docNode = buildDocNode(filePath, content);
150
+ return walkToChunks(docNode, {
151
+ sourceFile: filePath,
152
+ sourceFormat: "ts",
153
+ commitHash,
154
+ strategy: NAME,
155
+ sparseTextGeneratorId,
156
+ metadataGeneratorId,
157
+ ...(resolvedOpts.maxTokens != null ? { maxTokens: resolvedOpts.maxTokens } : {}),
158
+ ...(resolvedOpts.minTokens != null ? { minTokens: resolvedOpts.minTokens } : {}),
159
+ ...(resolvedOpts.overlap != null ? { overlap: resolvedOpts.overlap } : {}),
160
+ ...(resolvedOpts.adaptiveSize != null ? { adaptiveSize: resolvedOpts.adaptiveSize } : {}),
161
+ ...(resolvedOpts.recursive != null ? { recursive: resolvedOpts.recursive } : {}),
162
+ fileHash,
163
+ fileSizeBytes: fileStat.size,
164
+ fileModifiedAt: fileStat.mtime.toISOString(),
165
+ });
166
+ },
167
+ async canProcess(filePath) {
168
+ if (ignore.some((p) => minimatch(filePath, p, { matchBase: true }))) {
169
+ return false;
170
+ }
171
+ return ["**/*.ts", "**/*.tsx", "**/*.js", "**/*.jsx", "**/*.mjs", "**/*.cjs"].some((p) => minimatch(filePath, p, { matchBase: true }));
172
+ },
173
+ };
174
+ }
175
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAG/D,MAAM,IAAI,GAAG,gCAAgC,CAAC;AAC9C,MAAM,OAAO,GAAG,OAAO,CAAC;AAIxB,SAAS,eAAe,CAAC,IAAY,EAAE,IAAsB;IAC3D,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;QACxB,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,SAAS,EAAE,IAAI,CAAC,SAAS;KAC1B,CAAC,CAAC;IACH,OAAO,UAAU,CAAC,QAAQ,CAAC;SACxB,MAAM,CAAC,GAAG,IAAI,IAAI,OAAO,IAAI,IAAI,IAAI,EAAE,EAAE,CAAC;SAC1C,MAAM,CAAC,KAAK,CAAC;SACb,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAClB,CAAC;AAED,SAAS,UAAU,CAAC,SAAS,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC;IAC5C,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;AAChC,CAAC;AAED;;;GAGG;AACH,SAAS,YAAY,CACnB,QAAgB,EAChB,OAAe;IAEf,MAAM,UAAU,GAAG,EAAE,CAAC,gBAAgB,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACxF,MAAM,QAAQ,GAAc,EAAE,CAAC;IAE/B,6DAA6D;IAC7D,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,UAAU,EAAE,CAAC;QACzC,IACE,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC;YAC5B,EAAE,CAAC,yBAAyB,CAAC,IAAI,CAAC,EAClC,CAAC;YACD,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IACD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1C,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE;gBACL,GAAG,UAAU,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC;gBACzD,YAAY,EAAE,YAAY;gBAC1B,YAAY,EAAE,IAAI;aACnB;SACF,CAAC,CAAC;IACL,CAAC;IAED,2DAA2D;IAC3D,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,UAAU,EAAE,CAAC;QACzC,IACE,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC;YAC5B,EAAE,CAAC,yBAAyB,CAAC,IAAI,CAAC,EAClC,CAAC;YACD,SAAS;QACX,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACvC,MAAM,SAAS,GAAG,UAAU,CAAC,6BAA6B,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;QAC3E,MAAM,OAAO,GAAG,UAAU,CAAC,6BAA6B,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;QAEvE,IAAI,OAAe,CAAC;QAEpB,IAAI,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;YACpE,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,sBAAsB,CAAC;QAChE,CAAC;aAAM,IAAI,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;YACvC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC;QAC7D,CAAC;aAAM,IAAI,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3C,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAC3B,CAAC;aAAM,IAAI,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3C,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAC3B,CAAC;aAAM,IAAI,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;YACtC,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;QAC3B,CAAC;aAAM,IAAI,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;YACxC,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC;YAChD,MAAM,KAAK,GAAG,KAAK;iBAChB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;iBACxD,MAAM,CAAC,OAAO,CAAC,CAAC;YACnB,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC;QAC7C,CAAC;aAAM,IAAI,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;YACvE,OAAO,GAAG,QAAQ,CAAC;QACrB,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,aAAa,CAAC;QAC1B,CAAC;QAED,MAAM,WAAW,GAAY;YAC3B,IAAI,EAAE,SAAS;YACf,KAAK,EAAE;gBACL,SAAS,EAAE,KAAK;gBAChB,OAAO,EAAE,GAAG;gBACZ,SAAS,EAAE,SAAS;gBACpB,OAAO,EAAE,OAAO;gBAChB,YAAY,EAAE,CAAC;gBACf,UAAU,EAAE,CAAC,OAAO,CAAC;gBACrB,YAAY,EAAE,YAAY;gBAC1B,YAAY,EAAE,IAAI;aACnB;YACD,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE;wBACL,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE,KAAK;wBACd,YAAY,EAAE,CAAC;qBAChB;iBACF;gBACD;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI;oBACJ,KAAK,EAAE;wBACL,SAAS,EAAE,KAAK;wBAChB,OAAO,EAAE,GAAG;wBACZ,SAAS,EAAE,SAAS;wBACpB,OAAO,EAAE,OAAO;wBAChB,YAAY,EAAE,YAAY;qBAC3B;iBACF;aACF;SACF,CAAC;QAEF,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC7B,CAAC;IAED,OAAO;QACL,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC;QACpC,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAuB;IACnD,MAAM,YAAY,GAAG,IAAI,IAAI,EAAE,CAAC;IAChC,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,IAAI,EAAE,CAAC;IACzC,MAAM,qBAAqB,GAAG,eAAe,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IACtE,MAAM,mBAAmB,GAAG,eAAe,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAElE,OAAO;QACL,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,OAAO;QAChB,QAAQ,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC;QAChF,qBAAqB;QACrB,mBAAmB;QAEnB,KAAK,CAAC,KAAK,CAAC,QAAgB,EAAE,UAAkB;YAC9C,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAClD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC;YACtC,MAAM,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAEjF,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAEhD,OAAO,YAAY,CAAC,OAAO,EAAE;gBAC3B,UAAU,EAAE,QAAQ;gBACpB,YAAY,EAAE,IAAI;gBAClB,UAAU;gBACV,QAAQ,EAAE,IAAI;gBACd,qBAAqB;gBACrB,mBAAmB;gBACnB,GAAG,CAAC,YAAY,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChF,GAAG,CAAC,YAAY,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChF,GAAG,CAAC,YAAY,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1E,GAAG,CAAC,YAAY,CAAC,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,YAAY,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACzF,GAAG,CAAC,YAAY,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChF,QAAQ;gBACR,aAAa,EAAE,QAAQ,CAAC,IAAI;gBAC5B,cAAc,EAAE,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE;aAC7C,CAAC,CAAC;QACL,CAAC;QAED,KAAK,CAAC,UAAU,CAAC,QAAgB;YAC/B,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;gBACpE,OAAO,KAAK,CAAC;YACf,CAAC;YACD,OAAO,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,IAAI,CAChF,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CACnD,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
package/package.json ADDED
@@ -0,0 +1,46 @@
1
+ {
2
+ "name": "@vivantel/virage-chunker-ce-ts",
3
+ "version": "0.1.1",
4
+ "description": "TypeScript / JavaScript chunker for Virage — pure TypeScript, no native binary",
5
+ "type": "module",
6
+ "main": "./dist/index.js",
7
+ "exports": {
8
+ ".": {
9
+ "import": "./dist/index.js",
10
+ "types": "./dist/index.d.ts"
11
+ }
12
+ },
13
+ "files": [
14
+ "dist"
15
+ ],
16
+ "scripts": {
17
+ "build": "tsc --build",
18
+ "type-check": "tsc --build --noEmit",
19
+ "test": "vitest run",
20
+ "prepublishOnly": "npm run build"
21
+ },
22
+ "peerDependencies": {
23
+ "@vivantel/virage-chunker-ce-ast": ">=0.1"
24
+ },
25
+ "dependencies": {
26
+ "minimatch": "^10.0.0",
27
+ "typescript": "^5.0.0"
28
+ },
29
+ "rag-plugin": {
30
+ "type": "chunker",
31
+ "label": "TypeScript / JavaScript",
32
+ "key": "ts",
33
+ "defaultConfig": {
34
+ "maxTokens": 512
35
+ }
36
+ },
37
+ "publishConfig": {
38
+ "access": "public"
39
+ },
40
+ "license": "MIT OR Apache-2.0",
41
+ "repository": {
42
+ "type": "git",
43
+ "url": "https://github.com/vivantel/virage-chunkers-ce.git",
44
+ "directory": "packages/virage-chunker-ce-ts"
45
+ }
46
+ }