stitchkit 0.115.0 → 0.117.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.
- package/CHANGELOG.md +67 -0
- package/dist/agent-runtime/coding-tool-paths.d.ts.map +1 -1
- package/dist/agent-runtime/run-acquisition.d.ts +9 -2
- package/dist/agent-runtime/run-acquisition.d.ts.map +1 -1
- package/dist/agent-runtime/run-execution.d.ts +3 -0
- package/dist/agent-runtime/run-execution.d.ts.map +1 -1
- package/dist/agent-runtime/run-failure.d.ts +4 -1
- package/dist/agent-runtime/run-failure.d.ts.map +1 -1
- package/dist/agent-runtime/run-store-retry.d.ts +8 -0
- package/dist/agent-runtime/run-store-retry.d.ts.map +1 -0
- package/dist/agent-runtime/run-terminal.d.ts.map +1 -1
- package/dist/agent-runtime/run-unacquired.d.ts +19 -0
- package/dist/agent-runtime/run-unacquired.d.ts.map +1 -0
- package/dist/agent-runtime/store-conformance.d.ts +8 -0
- package/dist/agent-runtime/store-conformance.d.ts.map +1 -1
- package/dist/agent-runtime/store-driver-contract.d.ts +5 -0
- package/dist/agent-runtime/store-driver-contract.d.ts.map +1 -1
- package/dist/agent-runtime/terminal-commit.d.ts +34 -4
- package/dist/agent-runtime/terminal-commit.d.ts.map +1 -1
- package/dist/entrypoints/agent-runtime/coding-tools.js +4 -4
- package/dist/entrypoints/agent-runtime/harness.js +4 -4
- package/dist/entrypoints/agent-runtime/sandbox.js +4 -4
- package/dist/entrypoints/agent-runtime/sqlite/bun.js +7 -7
- package/dist/entrypoints/agent-runtime/sqlite/node.js +7 -7
- package/dist/entrypoints/agent-runtime/testing.js +26 -8
- package/dist/entrypoints/agent-runtime.d.ts +1 -1
- package/dist/entrypoints/agent-runtime.d.ts.map +1 -1
- package/dist/entrypoints/agent-runtime.js +17 -15
- package/dist/entrypoints/application/diagnostic-journal.js +1 -1
- package/dist/entrypoints/application/directory-inbox.js +3 -3
- package/dist/entrypoints/cli/publish.js +2 -2
- package/dist/entrypoints/cli.js +3 -3
- package/dist/entrypoints/files.js +2 -2
- package/dist/entrypoints/primitives.js +51 -154
- package/dist/entrypoints/server.js +6 -6
- package/dist/entrypoints/telegram/grammy.js +2 -2
- package/dist/entrypoints/telegram.d.ts +1 -1
- package/dist/entrypoints/telegram.d.ts.map +1 -1
- package/dist/entrypoints/telegram.js +203 -70
- package/dist/entrypoints/tools.js +3 -3
- package/dist/entrypoints/tracking/contract.d.ts +11 -0
- package/dist/entrypoints/tracking/contract.d.ts.map +1 -0
- package/dist/entrypoints/tracking/contract.js +162 -0
- package/dist/entrypoints/tracking/performance.d.ts +8 -0
- package/dist/entrypoints/tracking/performance.d.ts.map +1 -0
- package/dist/entrypoints/tracking/performance.js +181 -0
- package/dist/entrypoints/tracking/server.d.ts +1 -0
- package/dist/entrypoints/tracking/server.d.ts.map +1 -1
- package/dist/entrypoints/tracking/server.js +40 -12
- package/dist/entrypoints/tracking.d.ts +4 -3
- package/dist/entrypoints/tracking.d.ts.map +1 -1
- package/dist/entrypoints/tracking.js +43 -143
- package/dist/entrypoints/xlsx.d.ts +4 -0
- package/dist/entrypoints/xlsx.d.ts.map +1 -0
- package/dist/entrypoints/xlsx.js +406 -0
- package/dist/{index-crmswbrt.js → index-073nw9qr.js} +8 -8
- package/dist/index-1f40z584.js +7 -0
- package/dist/{index-nregbbsc.js → index-6f49krb5.js} +1 -1
- package/dist/{index-fdk4r4r6.js → index-75ns2ybj.js} +1 -1
- package/dist/{index-x0ddbj85.js → index-arjmb6de.js} +36 -1
- package/dist/{index-944x38nv.js → index-cycp3r3e.js} +125 -182
- package/dist/{index-dx5cm9pc.js → index-ghtpfz4z.js} +9 -9
- package/dist/{index-n3v695sb.js → index-hdjmdwsj.js} +277 -96
- package/dist/{index-7yx8j6ay.js → index-n5sv4z0w.js} +12 -3
- package/dist/{index-zqkz4af9.js → index-nqxrm176.js} +1 -1
- package/dist/{index-j8kf56wx.js → index-q968hy6y.js} +1 -1
- package/dist/index-qezhmp51.js +242 -0
- package/dist/index-vv1sch8a.js +94 -0
- package/dist/{index-3qqdqwxe.js → index-w7jq3fz9.js} +25 -5
- package/dist/{index-fggxgbrk.js → index-xx1j310k.js} +165 -102
- package/dist/internal/contained-files.d.ts +10 -0
- package/dist/internal/contained-files.d.ts.map +1 -1
- package/dist/internal/exclusive-lock.d.ts.map +1 -1
- package/dist/primitives/decimal.d.ts +10 -0
- package/dist/primitives/decimal.d.ts.map +1 -1
- package/dist/primitives/index.d.ts +3 -1
- package/dist/primitives/index.d.ts.map +1 -1
- package/dist/primitives/money.d.ts +20 -0
- package/dist/primitives/money.d.ts.map +1 -1
- package/dist/primitives/quantity.d.ts.map +1 -1
- package/dist/primitives/rounding.d.ts +40 -0
- package/dist/primitives/rounding.d.ts.map +1 -0
- package/dist/telegram/budget-transformer.d.ts +6 -3
- package/dist/telegram/budget-transformer.d.ts.map +1 -1
- package/dist/telegram/not-dispatched.d.ts +2 -2
- package/dist/telegram/not-dispatched.d.ts.map +1 -1
- package/dist/telegram/outbound-budget.d.ts +72 -20
- package/dist/telegram/outbound-budget.d.ts.map +1 -1
- package/dist/telegram/outbound-cost.d.ts +5 -0
- package/dist/telegram/outbound-cost.d.ts.map +1 -0
- package/dist/telegram/outbound-pauses.d.ts +17 -0
- package/dist/telegram/outbound-pauses.d.ts.map +1 -0
- package/dist/telegram/outbound-queue.d.ts +17 -0
- package/dist/telegram/outbound-queue.d.ts.map +1 -0
- package/dist/tools/cli/view.d.ts +7 -1
- package/dist/tools/cli/view.d.ts.map +1 -1
- package/dist/tracking/attribution.d.ts +1 -1
- package/dist/tracking/attribution.d.ts.map +1 -1
- package/dist/tracking/client-visit.d.ts +3 -1
- package/dist/tracking/client-visit.d.ts.map +1 -1
- package/dist/tracking/client.d.ts.map +1 -1
- package/dist/tracking/performance/collector.d.ts +61 -0
- package/dist/tracking/performance/collector.d.ts.map +1 -0
- package/dist/tracking/performance/schema.d.ts +45 -0
- package/dist/tracking/performance/schema.d.ts.map +1 -0
- package/dist/tracking/performance/summary.d.ts +12 -0
- package/dist/tracking/performance/summary.d.ts.map +1 -0
- package/dist/tracking/privacy.d.ts +5 -0
- package/dist/tracking/privacy.d.ts.map +1 -0
- package/dist/tracking/server/telemetry-health.d.ts +31 -0
- package/dist/tracking/server/telemetry-health.d.ts.map +1 -0
- package/dist/xlsx/cells.d.ts +17 -0
- package/dist/xlsx/cells.d.ts.map +1 -0
- package/dist/xlsx/render.d.ts +11 -0
- package/dist/xlsx/render.d.ts.map +1 -0
- package/dist/xlsx/schema.d.ts +119 -0
- package/dist/xlsx/schema.d.ts.map +1 -0
- package/dist/xlsx/zip.d.ts +13 -0
- package/dist/xlsx/zip.d.ts.map +1 -0
- package/llms/agent-runtime.2.txt +40 -16
- package/llms/agent-runtime.3.txt +17 -0
- package/llms/agent-runtime.txt +6 -3
- package/llms/cli.txt +3 -1
- package/llms/primitives.txt +21 -0
- package/llms/stitchkit.txt +9 -6
- package/llms/telegram.txt +39 -12
- package/llms/tracking-contract.txt +32 -0
- package/llms/tracking-performance.txt +21 -0
- package/llms/tracking-server.txt +1 -0
- package/llms/tracking.txt +75 -12
- package/llms/{upgrading-0.104.0-0.115.0.txt → upgrading-0.105.0-0.117.0.txt} +73 -124
- package/llms/{upgrading-0.44.0-0.61.0.txt → upgrading-0.44.0-0.62.0.txt} +120 -3
- package/llms/{upgrading-0.62.0-0.78.0.txt → upgrading-0.63.0-0.83.0.txt} +181 -120
- package/llms/{upgrading-0.79.0-0.103.13.txt → upgrading-0.84.0-0.104.0.txt} +124 -181
- package/llms/upgrading.txt +4 -4
- package/llms/xlsx.txt +107 -0
- package/llms-full.txt +390 -34
- package/llms.txt +15 -11
- package/package.json +27 -9
- package/dist/{index-z3d6smer.js → index-tdpmfks8.js} +5 -5
package/llms/xlsx.txt
ADDED
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
# stitchkit/xlsx — stitchkit docs slice
|
|
2
|
+
|
|
3
|
+
> Generated from the `docs/` tree by `bun run gen:llms`. The index of all slices is
|
|
4
|
+
> `llms.txt` in this package.
|
|
5
|
+
|
|
6
|
+
Contains: Guide: XLSX (docs/guide/xlsx.md) · API reference: `stitchkit/xlsx` (docs/api/reference.md)
|
|
7
|
+
|
|
8
|
+
==============================================================================
|
|
9
|
+
# Guide: XLSX (docs/guide/xlsx.md)
|
|
10
|
+
==============================================================================
|
|
11
|
+
|
|
12
|
+
# XLSX
|
|
13
|
+
|
|
14
|
+
`stitchkit/xlsx` turns rows into a workbook. It is evolving, it needs nothing beyond the `zod` the package
|
|
15
|
+
already requires, and it runs wherever
|
|
16
|
+
`CompressionStream` does: Bun, Node and a browser.
|
|
17
|
+
|
|
18
|
+
```ts
|
|
19
|
+
import { defineMoney } from 'stitchkit/primitives'
|
|
20
|
+
import { renderXlsx, XLSX_MEDIA_TYPE } from 'stitchkit/xlsx'
|
|
21
|
+
|
|
22
|
+
const rub = defineMoney('RUB')
|
|
23
|
+
|
|
24
|
+
const bytes = await renderXlsx({
|
|
25
|
+
sheets: [
|
|
26
|
+
{
|
|
27
|
+
name: 'Orders',
|
|
28
|
+
columns: [
|
|
29
|
+
{ key: 'title', header: 'Title', type: 'text' },
|
|
30
|
+
{ key: 'count', header: 'Count', type: 'number', format: '0.00' },
|
|
31
|
+
{ key: 'day', header: 'Day', type: 'date' },
|
|
32
|
+
{ key: 'at', header: 'Created', type: 'datetime', timeZone: 'Asia/Bangkok' },
|
|
33
|
+
{ key: 'total', header: 'Total', type: 'money', currency: 'RUB', scale: 2 },
|
|
34
|
+
{ key: 'paid', header: 'Paid', type: 'boolean' },
|
|
35
|
+
],
|
|
36
|
+
rows: [
|
|
37
|
+
{
|
|
38
|
+
title: 'First order',
|
|
39
|
+
count: '2.5',
|
|
40
|
+
day: '2026-11-03',
|
|
41
|
+
at: new Date(),
|
|
42
|
+
total: rub.create('504182'),
|
|
43
|
+
paid: true,
|
|
44
|
+
},
|
|
45
|
+
],
|
|
46
|
+
},
|
|
47
|
+
],
|
|
48
|
+
})
|
|
49
|
+
|
|
50
|
+
return new Response(bytes, {
|
|
51
|
+
headers: {
|
|
52
|
+
'content-type': XLSX_MEDIA_TYPE,
|
|
53
|
+
'content-disposition': `attachment; filename*=UTF-8''${encodeURIComponent('Übersicht.xlsx')}`,
|
|
54
|
+
},
|
|
55
|
+
})
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
A missing or `null` value leaves the cell empty. The first row holds the headers, stays frozen and carries a
|
|
59
|
+
filter. The same input produces the same bytes on one runtime; Bun and Node compress differently.
|
|
60
|
+
|
|
61
|
+
## Column types
|
|
62
|
+
|
|
63
|
+
| `type` | Cell value | In the file |
|
|
64
|
+
|---|---|---|
|
|
65
|
+
| `text` | string | text, whatever it looks like: `007` keeps its zeros |
|
|
66
|
+
| `number` | number, bigint or decimal string | a number, with an optional Excel `format` |
|
|
67
|
+
| `date` | `YYYY-MM-DD` | a date serial; a calendar date has no time zone to get wrong |
|
|
68
|
+
| `datetime` | `Date` or ISO instant with an offset | the wall clock of the column's `timeZone` to the second, since a cell stores no zone |
|
|
69
|
+
| `money` | `Money` in the column's `currency` | a number with `scale` places and the currency in its format |
|
|
70
|
+
| `boolean` | boolean | a boolean |
|
|
71
|
+
|
|
72
|
+
## What it refuses
|
|
73
|
+
|
|
74
|
+
A value of the wrong type throws `XlsxCellError` naming the cell, such as `sheet "Orders" B2: expected a
|
|
75
|
+
number or a decimal string`, instead of landing as a wrong cell.
|
|
76
|
+
|
|
77
|
+
Excel keeps numbers as doubles, so 15 significant digits are what survives. A decimal string or `Money` with
|
|
78
|
+
more refuses rather than turning into a different amount. Keep such a value in a `text` column if it must
|
|
79
|
+
stay exact and needs no arithmetic. Dates before 1900-03-01 refuse too: Excel counts a leap day that never
|
|
80
|
+
happened, so its serials before it are off by one.
|
|
81
|
+
|
|
82
|
+
A wall clock cannot tell the two hours of a daylight-saving change apart: 05:30Z and 06:30Z on a New York
|
|
83
|
+
autumn night are the same cell. Use `UTC` for a column whose order must survive that hour.
|
|
84
|
+
|
|
85
|
+
## Text is never a formula
|
|
86
|
+
|
|
87
|
+
Cells are written as inline strings, so `=HYPERLINK("x")` from a user's input is text a reader shows,
|
|
88
|
+
and the file has no formula element at all. A cell that starts with `=`, `+`, `-` or `@` also carries Excel's
|
|
89
|
+
quote prefix, so it stays text when a person edits that cell.
|
|
90
|
+
|
|
91
|
+
## Limits
|
|
92
|
+
|
|
93
|
+
Everything is built in memory, up to Excel's own 1 048 576 rows per sheet. There is no reading, no
|
|
94
|
+
charts, no merged cells and no streaming: an application that needs them takes a library.
|
|
95
|
+
|
|
96
|
+
==============================================================================
|
|
97
|
+
# API reference: `stitchkit/xlsx` (docs/api/reference.md)
|
|
98
|
+
==============================================================================
|
|
99
|
+
|
|
100
|
+
## `stitchkit/xlsx`
|
|
101
|
+
|
|
102
|
+
| Export | Kind | Summary |
|
|
103
|
+
|--------|------|---------|
|
|
104
|
+
| `renderXlsx` | function | a workbook from rows and typed columns as XLSX bytes; deterministic, no formula in the file |
|
|
105
|
+
| `XLSX_MEDIA_TYPE` | constant | the media type for `defineExportOperation` and a download response |
|
|
106
|
+
| `XlsxCellError` | class | a value of the wrong type, or one Excel cannot hold exactly, with the cell's address |
|
|
107
|
+
| `XlsxWorkbookSchema` / `XlsxWorkbook` / `XlsxSheetSchema` / `XlsxColumnSchema` / `XlsxColumn` | schemas / _types_ | the workbook, its sheets and the six column types |
|