@braincrew-lab/langchain-canvas 0.5.0 → 0.6.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.
@@ -1,5 +1,5 @@
1
- import { useArtifactPatch } from './chunk-K2UZAYW2.js';
2
- import './chunk-EHW446VF.js';
1
+ import { useArtifactPatch } from './chunk-H74O2AEA.js';
2
+ import './chunk-AHDFQGCX.js';
3
3
  import { useState, useRef, useMemo, useEffect } from 'react';
4
4
  import * as echarts from 'echarts/core';
5
5
  import { BarChart, LineChart, PieChart } from 'echarts/charts';
@@ -1,7 +1,7 @@
1
- import { useAssetUrl } from './chunk-FTNRRJ3K.js';
1
+ import { useAssetUrl } from './chunk-W4W5Q7HF.js';
2
2
  import './chunk-7T5DRR3F.js';
3
- import { useArtifactPatch } from './chunk-K2UZAYW2.js';
4
- import './chunk-EHW446VF.js';
3
+ import { useArtifactPatch } from './chunk-H74O2AEA.js';
4
+ import './chunk-AHDFQGCX.js';
5
5
  import { useState, useRef } from 'react';
6
6
  import ReactMarkdown, { defaultUrlTransform } from 'react-markdown';
7
7
  import remarkGfm from 'remark-gfm';
@@ -1,5 +1,5 @@
1
1
  import { isAssetReference, resolveAssetUrl } from './chunk-7T5DRR3F.js';
2
- import { useCanvasStore } from './chunk-EHW446VF.js';
2
+ import { useCanvasStore } from './chunk-AHDFQGCX.js';
3
3
  import { jsxs, jsx } from 'react/jsx-runtime';
4
4
 
5
5
  function formatSize(size) {
@@ -1,8 +1,8 @@
1
1
  import { deckPage, pageAspect, DEFAULT_SLIDE_PAGE_IN, resolveElements, fontScaleFor } from './chunk-SE6AP3A7.js';
2
- import { useAssetUrl } from './chunk-FTNRRJ3K.js';
2
+ import { useAssetUrl } from './chunk-W4W5Q7HF.js';
3
3
  import './chunk-7T5DRR3F.js';
4
- import { useArtifactPatch } from './chunk-K2UZAYW2.js';
5
- import './chunk-EHW446VF.js';
4
+ import { useArtifactPatch } from './chunk-H74O2AEA.js';
5
+ import './chunk-AHDFQGCX.js';
6
6
  import { useState, useRef, useEffect } from 'react';
7
7
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
8
8
 
@@ -1,7 +1,7 @@
1
1
  import { mergeRowsIntoSheet } from './chunk-IFNRLN4Y.js';
2
2
  import { computeFormulas } from './chunk-SGOPRUQ4.js';
3
3
  import './chunk-YZZSJJMQ.js';
4
- import { useCanvasStore } from './chunk-EHW446VF.js';
4
+ import { useCanvasStore } from './chunk-AHDFQGCX.js';
5
5
  import { lazy, useMemo, useState, useRef, useEffect, useCallback, Suspense } from 'react';
6
6
  import '@fortune-sheet/react/dist/index.css';
7
7
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
@@ -58,10 +58,11 @@ function reduceCanvas(state, event) {
58
58
  ...event.revision ? { revision: event.revision } : {}
59
59
  }
60
60
  };
61
+ const keep = event.amends && versions.length > 1 ? -2 : -1;
61
62
  return {
62
63
  ...state,
63
64
  artifacts: { ...state.artifacts, [event.id]: committed },
64
- history: { ...state.history, [event.id]: [...versions.slice(0, -1), committed] }
65
+ history: { ...state.history, [event.id]: [...versions.slice(0, keep), committed] }
65
66
  };
66
67
  }
67
68
  default:
@@ -1,4 +1,4 @@
1
- import { useCanvasStore } from './chunk-EHW446VF.js';
1
+ import { useCanvasStore } from './chunk-AHDFQGCX.js';
2
2
  import { useCallback } from 'react';
3
3
 
4
4
  function useArtifactPatch(id) {
@@ -1,5 +1,5 @@
1
1
  import { isAssetReference, resolveAssetUrl } from './chunk-7T5DRR3F.js';
2
- import { useCanvasStore } from './chunk-EHW446VF.js';
2
+ import { useCanvasStore } from './chunk-AHDFQGCX.js';
3
3
  import { useCallback } from 'react';
4
4
 
5
5
  function useAssetUrl() {
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { A as Artifact, a as CanvasEvent, E as ElementSelection, S as StreamEvent, C as CanvasTransport, F as FileData, b as SlidesData, T as TableData, D as DocumentData, c as ChartData, H as HtmlData } from './types-BfGP9R2I.js';
2
- export { d as ArtifactStatus, e as CanvasAppend, f as CanvasCommit, g as CanvasCreate, h as CanvasNodePatch, i as CanvasPatch, j as CanvasReplace, k as CanvasStatus, l as ChartArtifact, m as ChartOptions, n as ChartSeries, o as ChatEvent, p as DocumentArtifact, q as DoneEvent, r as ErrorEvent, s as FileArtifact, t as HtmlArtifact, K as KnownArtifact, M as MessageDelta, u as MessageEnd, v as Slide, w as SlideElement, x as SlidePage, y as SlidesArtifact, z as TableArtifact, B as TableColumn, G as ToolEnd, I as ToolStart, J as TransportRequest, L as isCanvasEvent, N as isChatEvent } from './types-BfGP9R2I.js';
1
+ import { A as Artifact, a as CanvasEvent, E as ElementSelection, S as StreamEvent, C as CanvasTransport, F as FileData, b as SlidesData, T as TableData, D as DocumentData, c as ChartData, H as HtmlData } from './types-CzJ4zeUR.js';
2
+ export { d as ArtifactStatus, e as CanvasAppend, f as CanvasCommit, g as CanvasCreate, h as CanvasNodePatch, i as CanvasPatch, j as CanvasReplace, k as CanvasStatus, l as ChartArtifact, m as ChartOptions, n as ChartSeries, o as ChatEvent, p as DocumentArtifact, q as DoneEvent, r as ErrorEvent, s as FileArtifact, t as HtmlArtifact, K as KnownArtifact, M as MessageDelta, u as MessageEnd, v as Slide, w as SlideElement, x as SlidePage, y as SlidesArtifact, z as TableArtifact, B as TableColumn, G as ToolEnd, I as ToolStart, J as TransportRequest, L as isCanvasEvent, N as isChatEvent } from './types-CzJ4zeUR.js';
3
3
  import * as react from 'react';
4
4
  import { ReactNode, ComponentType } from 'react';
5
5
  import { StoreApi } from 'zustand/vanilla';
package/dist/index.js CHANGED
@@ -2,12 +2,12 @@
2
2
  import { projectSheetIntoRows, mergeRowsIntoSheet } from './chunk-IFNRLN4Y.js';
3
3
  import { loadOptional } from './chunk-YZZSJJMQ.js';
4
4
  import { deckPage, resolveElements } from './chunk-SE6AP3A7.js';
5
- export { useAssetUrl } from './chunk-FTNRRJ3K.js';
5
+ export { useAssetUrl } from './chunk-W4W5Q7HF.js';
6
6
  import { inlineArtifactAssets, inlineHtmlAssets } from './chunk-7T5DRR3F.js';
7
7
  export { ASSET_REFERENCE_PREFIXES, fetchAssetDataUri, inlineArtifactAssets, inlineHtmlAssets, isAssetReference, normalizeAssetReference, resolveAssetUrl } from './chunk-7T5DRR3F.js';
8
- export { useArtifactPatch } from './chunk-K2UZAYW2.js';
9
- import { useCanvasStoreApi, useCanvasStore } from './chunk-EHW446VF.js';
10
- export { CanvasProvider, createCanvasStore, emptyCanvasState, isCanvasEvent, isChatEvent, mergePatch, reduceCanvas, useCanvasStore, useCanvasStoreApi } from './chunk-EHW446VF.js';
8
+ export { useArtifactPatch } from './chunk-H74O2AEA.js';
9
+ import { useCanvasStoreApi, useCanvasStore } from './chunk-AHDFQGCX.js';
10
+ export { CanvasProvider, createCanvasStore, emptyCanvasState, isCanvasEvent, isChatEvent, mergePatch, reduceCanvas, useCanvasStore, useCanvasStoreApi } from './chunk-AHDFQGCX.js';
11
11
  import { createContext, lazy, useMemo, useRef, useCallback, useEffect, useContext, useState, Suspense, Component } from 'react';
12
12
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
13
13
 
@@ -2255,11 +2255,11 @@ function HtmlRenderer({ artifact: artifact2 }) {
2255
2255
  }
2256
2256
 
2257
2257
  // src/components/renderers/index.ts
2258
- var ChartRenderer = lazy(() => import('./ChartRenderer-JGRJ23OB.js').then((m) => ({ default: m.ChartRenderer })));
2259
- var DocumentRenderer = lazy(() => import('./DocumentRenderer-ZQDQMX7X.js').then((m) => ({ default: m.DocumentRenderer })));
2260
- var TableRenderer = lazy(() => import('./TableRenderer-3ESF577F.js').then((m) => ({ default: m.TableRenderer })));
2261
- var SlidesRenderer = lazy(() => import('./SlidesRenderer-4TZNTSEL.js').then((m) => ({ default: m.SlidesRenderer })));
2262
- var FileRenderer = lazy(() => import('./FileRenderer-3ZHNORZJ.js').then((m) => ({ default: m.FileRenderer })));
2258
+ var ChartRenderer = lazy(() => import('./ChartRenderer-KQ25Q3YG.js').then((m) => ({ default: m.ChartRenderer })));
2259
+ var DocumentRenderer = lazy(() => import('./DocumentRenderer-VSVQSVJE.js').then((m) => ({ default: m.DocumentRenderer })));
2260
+ var TableRenderer = lazy(() => import('./TableRenderer-C4RZRE52.js').then((m) => ({ default: m.TableRenderer })));
2261
+ var SlidesRenderer = lazy(() => import('./SlidesRenderer-SZO3OVXV.js').then((m) => ({ default: m.SlidesRenderer })));
2262
+ var FileRenderer = lazy(() => import('./FileRenderer-RW6JR5FL.js').then((m) => ({ default: m.FileRenderer })));
2263
2263
  var builtinRenderers = {
2264
2264
  html: HtmlRenderer,
2265
2265
  document: DocumentRenderer,
@@ -1,4 +1,4 @@
1
- import { C as CanvasTransport, E as ElementSelection, S as StreamEvent } from '../types-BfGP9R2I.js';
1
+ import { C as CanvasTransport, E as ElementSelection, S as StreamEvent } from '../types-CzJ4zeUR.js';
2
2
 
3
3
  /**
4
4
  * `langgraphTransport` — speak to a LangGraph server without a translator
@@ -248,6 +248,10 @@ interface CanvasCommit {
248
248
  id: string;
249
249
  description: string;
250
250
  revision?: string;
251
+ /** Set when this commit continues the version already on the rail: the
252
+ * entry is replaced rather than joined, so a burst of small saves reads
253
+ * as one work unit. */
254
+ amends?: string;
251
255
  }
252
256
  interface ErrorEvent {
253
257
  type: "error";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@braincrew-lab/langchain-canvas",
3
- "version": "0.5.0",
3
+ "version": "0.6.0",
4
4
  "description": "A live canvas for LangChain agents — stream documents, charts, and rich artifacts into a React panel.",
5
5
  "license": "MIT",
6
6
  "author": "Brain Crew (https://github.com/braincrew-lab)",