teamshare-bridge 0.14.50 → 0.14.51

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,12 +1,17 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.ChartBuilderTool = void 0;
4
7
  /**
5
8
  * Chart Builder tool.
6
- * Creates PNG chart images from CSV data using Chart.js + chartjs-node-canvas.
7
- * Supports line, bar, pie, scatter, and heatmap chart types.
9
+ * Creates PNG chart images from CSV data using Chart.js + @napi-rs/canvas.
10
+ * Supports line, bar, pie, scatter chart types.
11
+ * Zero deprecation warnings — no native build tools required.
8
12
  */
9
- const chartjs_node_canvas_1 = require("chartjs-node-canvas");
13
+ const canvas_1 = require("@napi-rs/canvas");
14
+ const auto_1 = __importDefault(require("chart.js/auto"));
10
15
  function parseCsv(csv) {
11
16
  const lines = csv.trim().split(/\r?\n/);
12
17
  if (lines.length === 0)
@@ -44,6 +49,19 @@ const PALETTE = [
44
49
  '#3b82f6', '#ef4444', '#10b981', '#f59e0b', '#8b5cf6',
45
50
  '#ec4899', '#06b6d4', '#84cc16', '#f97316', '#6366f1',
46
51
  ];
52
+ /** Render a Chart.js config to a PNG buffer using @napi-rs/canvas. */
53
+ async function renderChart(config, width, height) {
54
+ const canvas = (0, canvas_1.createCanvas)(width, height);
55
+ const ctx = canvas.getContext('2d');
56
+ const chart = new auto_1.default(ctx, config);
57
+ // Wait for Chart.js to finish rendering
58
+ await new Promise((resolve) => {
59
+ setTimeout(resolve, 0);
60
+ });
61
+ const buffer = canvas.toBuffer('image/png');
62
+ chart.destroy();
63
+ return buffer;
64
+ }
47
65
  class ChartBuilderTool {
48
66
  key = 'chart-builder';
49
67
  async run(params) {
@@ -71,11 +89,6 @@ class ChartBuilderTool {
71
89
  const bgColor = isDark ? '#1f2937' : '#ffffff';
72
90
  const textColor = isDark ? '#e5e7eb' : '#374151';
73
91
  const gridColor = isDark ? '#4b5563' : '#e5e7eb';
74
- const canvas = new chartjs_node_canvas_1.ChartJSNodeCanvas({
75
- width,
76
- height,
77
- backgroundColour: bgColor,
78
- });
79
92
  const outputs = [];
80
93
  for (const chartType of chartTypes) {
81
94
  let config;
@@ -92,6 +105,7 @@ class ChartBuilderTool {
92
105
  ],
93
106
  },
94
107
  options: {
108
+ animation: false,
95
109
  plugins: {
96
110
  legend: { labels: { color: textColor, font: { size: 14 } } },
97
111
  title: { display: true, text: `${yKey ?? 'Value'} by ${xKey ?? 'Category'}`, color: textColor },
@@ -117,6 +131,7 @@ class ChartBuilderTool {
117
131
  ],
118
132
  },
119
133
  options: {
134
+ animation: false,
120
135
  plugins: {
121
136
  legend: { labels: { color: textColor } },
122
137
  title: { display: true, text: `${yKey ?? 'Y'} vs ${xKey ?? 'X'}`, color: textColor },
@@ -129,9 +144,9 @@ class ChartBuilderTool {
129
144
  };
130
145
  }
131
146
  else {
132
- // line, bar, horizontalBar
147
+ // line, bar
133
148
  config = {
134
- type: chartType === 'horizontalBar' ? 'bar' : chartType,
149
+ type: chartType === 'bar' ? 'bar' : 'line',
135
150
  data: {
136
151
  labels,
137
152
  datasets: [
@@ -149,7 +164,7 @@ class ChartBuilderTool {
149
164
  ],
150
165
  },
151
166
  options: {
152
- indexAxis: chartType === 'horizontalBar' ? 'y' : 'x',
167
+ animation: false,
153
168
  plugins: {
154
169
  legend: { labels: { color: textColor } },
155
170
  title: { display: true, text: `${yKey ?? 'Value'} by ${xKey ?? 'Category'}`, color: textColor },
@@ -161,14 +176,13 @@ class ChartBuilderTool {
161
176
  },
162
177
  };
163
178
  }
164
- const buffer = await canvas.renderToBuffer(config);
179
+ const buffer = await renderChart(config, width, height);
165
180
  outputs.push({
166
181
  buffer,
167
182
  fileName: `chart-${chartType}.png`,
168
183
  mime: 'image/png',
169
184
  });
170
185
  }
171
- const safeName = (yKey ?? 'data').replace(/[^a-zA-Z0-9_-]/g, '_').slice(0, 32);
172
186
  return {
173
187
  outputs,
174
188
  log: [
@@ -1 +1 @@
1
- {"version":3,"file":"chart-builder.js","sourceRoot":"","sources":["../../../src/lib/tools/chart-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chart-builder.js","sourceRoot":"","sources":["../../../src/lib/tools/chart-builder.ts"],"names":[],"mappings":"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"}
@@ -7,9 +7,23 @@ exports.XlsxWorkbookTool = void 0;
7
7
  /**
8
8
  * Excel Workbook Builder tool.
9
9
  * Creates .xlsx files with styled headers, freeze panes, auto-fit columns,
10
- * conditional formatting, and formula support using exceljs.
10
+ * and formula support using xlsx-populate (zero deprecation warnings).
11
11
  */
12
- const exceljs_1 = __importDefault(require("exceljs"));
12
+ const xlsx_populate_1 = __importDefault(require("xlsx-populate"));
13
+ /** Convert column index (0-based) to Excel column letter (A, B, ... Z, AA, ...). */
14
+ function colLetter(idx) {
15
+ let letter = '';
16
+ let n = idx;
17
+ while (n >= 0) {
18
+ letter = String.fromCharCode(65 + (n % 26)) + letter;
19
+ n = Math.floor(n / 26) - 1;
20
+ }
21
+ return letter;
22
+ }
23
+ const HEADER_FILL = { type: 'solid', color: { rgb: '1a56db' } };
24
+ const HEADER_BORDER = { style: 'thin', color: { rgb: 'CCCCCC' } };
25
+ const DATA_BORDER = { style: 'thin', color: { rgb: 'E5E7EB' } };
26
+ const ALT_FILL = { type: 'solid', color: { rgb: 'F9FAFB' } };
13
27
  class XlsxWorkbookTool {
14
28
  key = 'xlsx-workbook';
15
29
  async run(params) {
@@ -19,82 +33,77 @@ class XlsxWorkbookTool {
19
33
  if (sheets.length === 0) {
20
34
  return { outputs: [], error: 'No sheets provided' };
21
35
  }
22
- const workbook = new exceljs_1.default.Workbook();
23
- workbook.creator = 'TeamShare';
24
- workbook.created = new Date();
36
+ const workbook = await xlsx_populate_1.default.fromBlankAsync();
25
37
  for (const sheetDef of sheets) {
26
- const ws = workbook.addWorksheet(sheetDef.name || 'Sheet1');
38
+ const sheet = workbook.addSheet(sheetDef.name || 'Sheet1');
27
39
  const headers = sheetDef.headers ?? [];
28
40
  const rows = sheetDef.rows ?? [];
29
- // Add headers
41
+ // Write headers with styling
30
42
  if (headers.length > 0) {
31
- const headerRow = ws.addRow(headers);
32
- headerRow.eachCell((cell) => {
33
- cell.font = { bold: true, color: { argb: 'FFFFFFFF' }, size: 11 };
34
- cell.fill = {
35
- type: 'pattern',
36
- pattern: 'solid',
37
- fgColor: { argb: 'FF1a56db' },
38
- };
39
- cell.border = {
40
- top: { style: 'thin' },
41
- bottom: { style: 'thin' },
42
- left: { style: 'thin' },
43
- right: { style: 'thin' },
44
- };
45
- cell.alignment = { vertical: 'middle', horizontal: 'center' };
46
- });
47
- headerRow.height = 22;
43
+ for (let c = 0; c < headers.length; c++) {
44
+ const col = colLetter(c);
45
+ sheet.cell(`${col}1`).value(headers[c]).style({
46
+ bold: true,
47
+ fontColor: 'FFFFFF',
48
+ fill: HEADER_FILL,
49
+ horizontalAlignment: 'center',
50
+ verticalAlignment: 'center',
51
+ border: {
52
+ top: HEADER_BORDER,
53
+ bottom: HEADER_BORDER,
54
+ left: HEADER_BORDER,
55
+ right: HEADER_BORDER,
56
+ },
57
+ });
58
+ }
48
59
  }
49
- // Add data rows
50
- for (const rowData of rows) {
51
- const row = ws.addRow(rowData);
52
- row.eachCell((cell, colNumber) => {
53
- cell.border = {
54
- top: { style: 'thin', color: { argb: 'FFE5E7EB' } },
55
- bottom: { style: 'thin', color: { argb: 'FFE5E7EB' } },
56
- left: { style: 'thin', color: { argb: 'FFE5E7EB' } },
57
- right: { style: 'thin', color: { argb: 'FFE5E7EB' } },
60
+ // Write data rows
61
+ for (let r = 0; r < rows.length; r++) {
62
+ const rowData = rows[r];
63
+ for (let c = 0; c < rowData.length; c++) {
64
+ const col = colLetter(c);
65
+ const rowNum = r + 2; // row 1 is headers
66
+ const cell = sheet.cell(`${col}${rowNum}`).value(rowData[c]);
67
+ const style = {
68
+ border: {
69
+ top: DATA_BORDER,
70
+ bottom: DATA_BORDER,
71
+ left: DATA_BORDER,
72
+ right: DATA_BORDER,
73
+ },
58
74
  };
59
75
  // Alternate row shading
60
- if (row.number % 2 === 0) {
61
- cell.fill = {
62
- type: 'pattern',
63
- pattern: 'solid',
64
- fgColor: { argb: 'FFF9FAFB' },
65
- };
76
+ if (r % 2 === 1) {
77
+ style.fill = ALT_FILL;
66
78
  }
67
- });
79
+ cell.style(style);
80
+ }
68
81
  }
69
- // Auto-fit column widths
82
+ // Column widths
70
83
  if (sheetDef.columnWidths) {
71
- sheetDef.columnWidths.forEach((w, idx) => {
72
- ws.getColumn(idx + 1).width = w;
73
- });
84
+ for (let c = 0; c < sheetDef.columnWidths.length; c++) {
85
+ sheet.column(colLetter(c)).width(sheetDef.columnWidths[c]);
86
+ }
74
87
  }
75
88
  else if (headers.length > 0) {
76
- const colWidths = headers.map((h, idx) => {
77
- const maxData = rows.reduce((max, r) => Math.max(max, String(r[idx] ?? '').length), 0);
78
- return Math.min(Math.max(h.length, maxData) + 4, 50);
79
- });
80
- colWidths.forEach((w, idx) => {
81
- ws.getColumn(idx + 1).width = w;
82
- });
89
+ for (let c = 0; c < headers.length; c++) {
90
+ const maxData = rows.reduce((max, row) => Math.max(max, String(row[c] ?? '').length), 0);
91
+ const width = Math.min(Math.max(headers[c].length, maxData) + 4, 50);
92
+ sheet.column(colLetter(c)).width(width);
93
+ }
83
94
  }
84
95
  // Freeze header row
85
96
  if (sheetDef.freezeHeader && headers.length > 0) {
86
- ws.views = [{ state: 'frozen', ySplit: 1 }];
97
+ sheet.freezePanes(0, 1);
87
98
  }
88
- // Auto-filter
99
+ // Auto-filter on header row
89
100
  if (headers.length > 0 && rows.length > 0) {
90
- ws.autoFilter = {
91
- from: { row: 1, column: 1 },
92
- to: { row: rows.length + 1, column: headers.length },
93
- };
101
+ const lastCol = colLetter(headers.length - 1);
102
+ const lastRow = rows.length + 1;
103
+ sheet.autoFilter(sheet.range(`A1:${lastCol}${lastRow}`));
94
104
  }
95
105
  }
96
- const buffer = await workbook.xlsx.writeBuffer();
97
- const buf = Buffer.from(buffer);
106
+ const buffer = (await workbook.outputAsync());
98
107
  const sheetNames = sheets.map((s) => s.name || 'Sheet1').join(', ');
99
108
  const safeName = (sheets[0]?.name ?? 'workbook')
100
109
  .replace(/[^a-zA-Z0-9_-]/g, '_')
@@ -102,7 +111,7 @@ class XlsxWorkbookTool {
102
111
  return {
103
112
  outputs: [
104
113
  {
105
- buffer: buf,
114
+ buffer: Buffer.from(buffer),
106
115
  fileName: `${safeName}.xlsx`,
107
116
  mime: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
108
117
  },
@@ -1 +1 @@
1
- {"version":3,"file":"xlsx-workbook.js","sourceRoot":"","sources":["../../../src/lib/tools/xlsx-workbook.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"xlsx-workbook.js","sourceRoot":"","sources":["../../../src/lib/tools/xlsx-workbook.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "teamshare-bridge",
3
- "version": "0.14.50",
3
+ "version": "0.14.51",
4
4
  "description": "Local bridge for TeamShare agents - CLI session runner, auto-wake WebSocket daemon, and teamshare:// protocol handler.",
5
5
  "type": "commonjs",
6
6
  "license": "MIT",
@@ -38,17 +38,17 @@
38
38
  "typecheck": "tsc --noEmit -p tsconfig.json"
39
39
  },
40
40
  "dependencies": {
41
+ "@napi-rs/canvas": "^1.0.8",
41
42
  "@napi-rs/keyring": "^1.3.0",
42
43
  "@types/better-sqlite3": "^9.6.0",
43
44
  "better-sqlite3": "^13.0.3",
44
45
  "chart.js": "^4.5.1",
45
- "chartjs-node-canvas": "^5.0.0",
46
46
  "docx": "^9.7.1",
47
- "exceljs": "^4.4.0",
48
47
  "pdfkit": "^0.20.2",
49
48
  "pptxgenjs": "^4.0.1",
50
49
  "sharp": "^0.35.4",
51
- "socket.io-client": "^4.8.3"
50
+ "socket.io-client": "^4.8.3",
51
+ "xlsx-populate": "^1.21.0"
52
52
  },
53
53
  "devDependencies": {
54
54
  "@types/node": "^22.20.1",