veryfront 0.1.988 → 0.1.989

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.
@@ -1 +1 @@
1
- {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/knowledge/command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/knowledge/command.ts"],"names":[],"mappings":"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"}
@@ -86,6 +86,35 @@ function createKnowledgeIngestEventLogger() {
86
86
  function buildKnowledgeSourceName(source) {
87
87
  return basename(source.kind === "upload" ? source.uploadPath : source.localPath);
88
88
  }
89
+ function buildExtractionProgressPhase(event) {
90
+ if (event.unit === "page")
91
+ return "pdf_page_completed";
92
+ if (event.unit === "slide")
93
+ return "ppt_slide_completed";
94
+ return "document_file_completed";
95
+ }
96
+ function buildExtractionProgressMetadata(sourceName, event) {
97
+ const total = event.total ?? event.current;
98
+ const metadata = {
99
+ phase: buildExtractionProgressPhase(event),
100
+ progress_unit: event.unit,
101
+ progress_current: event.current,
102
+ progress_total: total,
103
+ source_name: sourceName,
104
+ };
105
+ if (event.unit === "page") {
106
+ metadata.page_current = event.current;
107
+ metadata.page_total = total;
108
+ }
109
+ else if (event.unit === "slide") {
110
+ metadata.slide_current = event.current;
111
+ metadata.slide_total = total;
112
+ }
113
+ if (event.characters !== undefined) {
114
+ metadata.characters = event.characters;
115
+ }
116
+ return metadata;
117
+ }
89
118
  function showKnowledgeUsage() {
90
119
  console.log(`
91
120
  Veryfront Knowledge
@@ -303,13 +332,22 @@ export async function ingestResolvedSources(sources, options, deps) {
303
332
  });
304
333
  let parser;
305
334
  try {
335
+ const sourceName = buildKnowledgeSourceName(source);
336
+ const eventLogger = deps.eventLogger;
337
+ const parserDeps = eventLogger
338
+ ? {
339
+ onProgress: (event) => {
340
+ eventLogger.info("Knowledge source extraction progress", buildExtractionProgressMetadata(sourceName, event));
341
+ },
342
+ }
343
+ : undefined;
306
344
  parser = await deps.runParser({
307
345
  filePath: source.localPath,
308
346
  outputDir: deps.outputDir,
309
347
  description: options.description,
310
348
  slug: slugs[index],
311
349
  sourceReference,
312
- });
350
+ }, parserDeps);
313
351
  }
314
352
  catch (error) {
315
353
  const message = error instanceof Error ? error.message : String(error);
@@ -1,3 +1,4 @@
1
+ import type { DocumentExtractionProgress, DocumentExtractionProgressEvent } from "../../../src/extensions/compat/index.js";
1
2
  export interface KnowledgeParserResult {
2
3
  success: true;
3
4
  source_path: string;
@@ -21,9 +22,11 @@ export interface KnowledgeParserInput {
21
22
  export type ExtractDocumentText = (input: {
22
23
  filePath: string;
23
24
  mimeType: string;
25
+ onProgress?: DocumentExtractionProgress;
24
26
  }) => Promise<string>;
25
27
  export interface RunKnowledgeParsersDeps {
26
28
  extractDocumentText?: ExtractDocumentText;
29
+ onProgress?: (event: DocumentExtractionProgressEvent) => void | Promise<void>;
27
30
  }
28
31
  export declare function slugifyKnowledgeValue(value: string): string;
29
32
  export declare function runKnowledgeParser(input: {
@@ -1 +1 @@
1
- {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/knowledge/parser.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,IAAI,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,mBAAmB,EAAE,MAAM,CAAC;IAC5B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,MAAM,mBAAmB,GAAG,CAChC,KAAK,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,KAC1C,OAAO,CAAC,MAAM,CAAC,CAAC;AAQrB,MAAM,WAAW,uBAAuB;IACtC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CAC3C;AAqFD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAG3D;AA+PD,wBAAsB,kBAAkB,CAAC,KAAK,EAAE;IAC9C,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,EAAE,IAAI,GAAE,uBAA4B,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAgBrE;AAED,wBAAsB,mBAAmB,CAAC,KAAK,EAAE;IAC/C,KAAK,EAAE,oBAAoB,EAAE,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;CACnB,EAAE,IAAI,GAAE,uBAA4B,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAoEvE"}
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/knowledge/parser.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAEV,0BAA0B,EAC1B,+BAA+B,EAChC,MAAM,yCAAyC,CAAC;AAEjD,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,IAAI,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,mBAAmB,EAAE,MAAM,CAAC;IAC5B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,MAAM,mBAAmB,GAAG,CAChC,KAAK,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,0BAA0B,CAAA;CAAE,KACnF,OAAO,CAAC,MAAM,CAAC,CAAC;AAYrB,MAAM,WAAW,uBAAuB;IACtC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,+BAA+B,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/E;AA0FD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAG3D;AAkQD,wBAAsB,kBAAkB,CAAC,KAAK,EAAE;IAC9C,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,EAAE,IAAI,GAAE,uBAA4B,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAgBrE;AAED,wBAAsB,mBAAmB,CAAC,KAAK,EAAE;IAC/C,KAAK,EAAE,oBAAoB,EAAE,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;CACnB,EAAE,IAAI,GAAE,uBAA4B,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAqEvE"}
@@ -216,7 +216,7 @@ async function parseJson(path) {
216
216
  }
217
217
  async function parseWithKreuzberg(path, deps) {
218
218
  const mimeType = MIME_BY_EXTENSION[extname(path).toLowerCase()] ?? "application/octet-stream";
219
- const content = cleanText(await deps.extractDocumentText({ filePath: path, mimeType }));
219
+ const content = cleanText(await deps.extractDocumentText({ filePath: path, mimeType, onProgress: deps.onProgress }));
220
220
  return {
221
221
  content: content || "_No extractable text found in document._",
222
222
  stats: {
@@ -276,7 +276,7 @@ async function defaultExtractDocumentText(input) {
276
276
  const bytes = await dntShim.Deno.readFile(input.filePath);
277
277
  const { KreuzbergDocumentExtractor } = await importFirstPartyExtensionModule("ext-document-kreuzberg", "@veryfront/ext-document-kreuzberg");
278
278
  const extractor = new KreuzbergDocumentExtractor();
279
- return await extractor.extractInWorker(bytes.buffer.slice(bytes.byteOffset, bytes.byteOffset + bytes.byteLength), input.mimeType);
279
+ return await extractor.extractInWorker(bytes.buffer.slice(bytes.byteOffset, bytes.byteOffset + bytes.byteLength), input.mimeType, { onProgress: input.onProgress });
280
280
  }
281
281
  export async function runKnowledgeParser(input, deps = {}) {
282
282
  const [result] = await runKnowledgeParsers({
@@ -299,6 +299,7 @@ export async function runKnowledgeParsers(input, deps = {}) {
299
299
  }
300
300
  const parserDeps = {
301
301
  extractDocumentText: deps.extractDocumentText ?? defaultExtractDocumentText,
302
+ onProgress: deps.onProgress,
302
303
  };
303
304
  await dntShim.Deno.mkdir(input.outputDir, { recursive: true });
304
305
  const results = [];
package/esm/deno.d.ts CHANGED
@@ -66,6 +66,7 @@ declare namespace _default {
66
66
  "./extensions/content": string;
67
67
  "./extensions/contracts": string;
68
68
  "./extensions/compat": string;
69
+ "./extensions/first-party-import": string;
69
70
  "./extensions/css": string;
70
71
  "./extensions/database": string;
71
72
  "./extensions/eval": string;
@@ -168,6 +169,7 @@ declare namespace _default {
168
169
  "veryfront/extensions/content": string;
169
170
  "veryfront/extensions/compat": string;
170
171
  "veryfront/extensions/contracts": string;
172
+ "veryfront/extensions/first-party-import": string;
171
173
  "veryfront/extensions/css": string;
172
174
  "veryfront/extensions/database": string;
173
175
  "veryfront/extensions/eval": string;
package/esm/deno.js CHANGED
@@ -1,6 +1,6 @@
1
1
  export default {
2
2
  "name": "veryfront",
3
- "version": "0.1.988",
3
+ "version": "0.1.989",
4
4
  "license": "Apache-2.0",
5
5
  "nodeModulesDir": "auto",
6
6
  "minimumDependencyAge": {
@@ -122,6 +122,7 @@ export default {
122
122
  "./extensions/content": "./src/extensions/content/index.ts",
123
123
  "./extensions/contracts": "./src/extensions/contracts.ts",
124
124
  "./extensions/compat": "./src/extensions/compat/index.ts",
125
+ "./extensions/first-party-import": "./src/extensions/first-party-import.ts",
125
126
  "./extensions/css": "./src/extensions/css/index.ts",
126
127
  "./extensions/database": "./src/extensions/database/index.ts",
127
128
  "./extensions/eval": "./src/extensions/eval/index.ts",
@@ -224,6 +225,7 @@ export default {
224
225
  "veryfront/extensions/content": "./src/extensions/content/index.ts",
225
226
  "veryfront/extensions/compat": "./src/extensions/compat/index.ts",
226
227
  "veryfront/extensions/contracts": "./src/extensions/contracts.ts",
228
+ "veryfront/extensions/first-party-import": "./src/extensions/first-party-import.ts",
227
229
  "veryfront/extensions/css": "./src/extensions/css/index.ts",
228
230
  "veryfront/extensions/database": "./src/extensions/database/index.ts",
229
231
  "veryfront/extensions/eval": "./src/extensions/eval/index.ts",
@@ -4,5 +4,5 @@
4
4
  * @module extensions/compat
5
5
  */
6
6
  import "../../../_dnt.polyfills.js";
7
- export type { DocumentExtractor, KreuzbergExtractor, SqliteDatabase, SqliteStatement, SqliteStore, } from "./native-services.js";
7
+ export type { DocumentExtractionOptions, DocumentExtractionProgress, DocumentExtractionProgressEvent, DocumentExtractor, KreuzbergExtractor, SqliteDatabase, SqliteStatement, SqliteStore, } from "./native-services.js";
8
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/src/extensions/compat/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,4BAA4B,CAAC;AAGpC,YAAY,EACV,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,WAAW,GACZ,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/src/extensions/compat/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,4BAA4B,CAAC;AAGpC,YAAY,EACV,yBAAyB,EACzB,0BAA0B,EAC1B,+BAA+B,EAC/B,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,eAAe,EACf,WAAW,GACZ,MAAM,sBAAsB,CAAC"}
@@ -40,6 +40,18 @@ export interface KreuzbergExtractor {
40
40
  content: string;
41
41
  }>;
42
42
  }
43
+ export interface DocumentExtractionProgressEvent {
44
+ unit: "file" | "page" | "slide";
45
+ current: number;
46
+ total?: number;
47
+ characters?: number;
48
+ }
49
+ export type DocumentExtractionProgress = (event: DocumentExtractionProgressEvent) => void | Promise<void>;
50
+ export interface DocumentExtractionOptions {
51
+ onProgress?: DocumentExtractionProgress;
52
+ idleTimeoutMs?: number;
53
+ hardTimeoutMs?: number;
54
+ }
43
55
  /**
44
56
  * Document extraction contract.
45
57
  */
@@ -57,7 +69,7 @@ export interface DocumentExtractor {
57
69
  * Implementations may run extraction inside an isolated worker or call a
58
70
  * native implementation directly.
59
71
  */
60
- extractInWorker?(buffer: ArrayBuffer, mimeType: string): Promise<string>;
72
+ extractInWorker?(buffer: ArrayBuffer, mimeType: string, options?: DocumentExtractionOptions): Promise<string>;
61
73
  }
62
74
  /**
63
75
  * SQLite-backed storage contract.
@@ -1 +1 @@
1
- {"version":3,"file":"native-services.d.ts","sourceRoot":"","sources":["../../../../src/src/extensions/compat/native-services.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,GAAG,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IACnC,GAAG,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAChC,GAAG,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC;CACtC;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAAC;IACtC,KAAK,IAAI,IAAI,CAAC;CACf;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,YAAY,CACV,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;;OAKG;IACH,eAAe,CAAC,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAEhD;;;;;OAKG;IACH,eAAe,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAC1E;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;;;;;;;OAQG;IACH,kBAAkB,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CAC7D"}
1
+ {"version":3,"file":"native-services.d.ts","sourceRoot":"","sources":["../../../../src/src/extensions/compat/native-services.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,GAAG,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IACnC,GAAG,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAChC,GAAG,CAAC,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,CAAC;CACtC;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAAC;IACtC,KAAK,IAAI,IAAI,CAAC;CACf;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,YAAY,CACV,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,+BAA+B;IAC9C,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,0BAA0B,GAAG,CACvC,KAAK,EAAE,+BAA+B,KACnC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAE1B,MAAM,WAAW,yBAAyB;IACxC,UAAU,CAAC,EAAE,0BAA0B,CAAC;IACxC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;;OAKG;IACH,eAAe,CAAC,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAEhD;;;;;OAKG;IACH,eAAe,CAAC,CACd,MAAM,EAAE,WAAW,EACnB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,yBAAyB,GAClC,OAAO,CAAC,MAAM,CAAC,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;;;;;;;OAQG;IACH,kBAAkB,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;CAC7D"}
@@ -6,6 +6,7 @@
6
6
  * npm builds should load the separate @veryfront/ext-* packages installed by
7
7
  * the consuming service or app.
8
8
  */
9
+ import "../../_dnt.polyfills.js";
9
10
  export declare function firstPartyExtensionSourceSpecifiers(sourceDirectory: string): string[];
10
11
  export declare function importFirstPartyExtensionModule<TModule>(sourceDirectory: string, packageName: string): Promise<TModule>;
11
12
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"first-party-import.d.ts","sourceRoot":"","sources":["../../../src/src/extensions/first-party-import.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,wBAAgB,mCAAmC,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,EAAE,CAGrF;AAED,wBAAsB,+BAA+B,CAAC,OAAO,EAC3D,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,OAAO,CAAC,CAuBlB;AAmBD;;;;;;;;;;;;GAYG;AACH,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,OAAO,EACd,0BAA0B,CAAC,EAAE,MAAM,EAAE,GACpC,OAAO,CAcT"}
1
+ {"version":3,"file":"first-party-import.d.ts","sourceRoot":"","sources":["../../../src/src/extensions/first-party-import.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,yBAAyB,CAAC;AAKjC,wBAAgB,mCAAmC,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,EAAE,CAGrF;AAED,wBAAsB,+BAA+B,CAAC,OAAO,EAC3D,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,OAAO,CAAC,CAuBlB;AAmBD;;;;;;;;;;;;GAYG;AACH,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,OAAO,EACd,0BAA0B,CAAC,EAAE,MAAM,EAAE,GACpC,OAAO,CAcT"}
@@ -6,6 +6,7 @@
6
6
  * npm builds should load the separate @veryfront/ext-* packages installed by
7
7
  * the consuming service or app.
8
8
  */
9
+ import "../../_dnt.polyfills.js";
9
10
  const SOURCE_EXTENSION_ROOT = "../../extensions";
10
11
  export function firstPartyExtensionSourceSpecifiers(sourceDirectory) {
11
12
  const sourceRoot = `${SOURCE_EXTENSION_ROOT}/${sourceDirectory}/src/index`;
@@ -1,3 +1,3 @@
1
1
  /** Shared version value. */
2
- export declare const VERSION = "0.1.988";
2
+ export declare const VERSION = "0.1.989";
3
3
  //# sourceMappingURL=version-constant.d.ts.map
@@ -1,4 +1,4 @@
1
1
  // Keep in sync with deno.json version.
2
2
  // scripts/release.ts updates this constant during releases.
3
3
  /** Shared version value. */
4
- export const VERSION = "0.1.988";
4
+ export const VERSION = "0.1.989";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "veryfront",
3
- "version": "0.1.988",
3
+ "version": "0.1.989",
4
4
  "description": "The simplest way to build AI-powered apps",
5
5
  "keywords": [
6
6
  "react",
@@ -245,6 +245,10 @@
245
245
  "import": "./esm/src/extensions/compat/index.js",
246
246
  "types": "./esm/src/extensions/compat/index.d.ts"
247
247
  },
248
+ "./extensions/first-party-import": {
249
+ "import": "./esm/src/extensions/first-party-import.js",
250
+ "types": "./esm/src/extensions/first-party-import.d.ts"
251
+ },
248
252
  "./extensions/css": {
249
253
  "import": "./esm/src/extensions/css/index.js",
250
254
  "types": "./esm/src/extensions/css/index.d.ts"