Adjacent work: PDF receipts, encrypted blob+share mock, NATS tunnel, SHA256 Zapier action
Around remaining blockers (Zapier login, live Verae): generate PDF receipts without extra deps; AES-256-GCM object store with tenant isolation and share tokens; scripts/nats-tunnel.sh to NS1; SHA256 Hash Text local Zapier action; scripts/test-offline.sh for the no-login suite. Learned: other-tenant object GET is 403; share token is the mock unwrap path.
This commit is contained in:
parent
c8f9d01a04
commit
645a24909a
45 changed files with 1053 additions and 24 deletions
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
**Package:** `verae-zapier-middleware`
|
||||
**Source:** `packages/verae-zapier-middleware/src/clients/veraeClient.js`
|
||||
**Lines:** 351
|
||||
**Lines:** 352
|
||||
|
||||
## What this module is
|
||||
|
||||
|
|
|
|||
41
docs/modules/verae-zapier-middleware/lib/receiptPdf.md
Normal file
41
docs/modules/verae-zapier-middleware/lib/receiptPdf.md
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
# `verae-zapier-middleware/lib/receiptPdf`
|
||||
|
||||
**Package:** `verae-zapier-middleware`
|
||||
**Source:** `packages/verae-zapier-middleware/src/lib/receiptPdf.js`
|
||||
**Lines:** 65
|
||||
|
||||
## What this module is
|
||||
|
||||
Implementation module in `verae-zapier-middleware`. The tables below are extracted from the source (signatures + JSDoc).
|
||||
|
||||
## Exports
|
||||
|
||||
`buildReceiptPdf`
|
||||
|
||||
## Types / interfaces / classes
|
||||
|
||||
_None extracted._
|
||||
|
||||
## Functions
|
||||
|
||||
| Name | Parameters | Param types (JSDoc) | Returns | Calls (same file / helpers) |
|
||||
|------|------------|---------------------|---------|-----------------------------|
|
||||
| `pdfEscape` | `s` | s: `string` | `string` | see Call graph |
|
||||
| `buildReceiptPdf` | `receipt` | receipt: `object` | `Buffer` | see Call graph |
|
||||
|
||||
## What it imports / requires
|
||||
|
||||
_No imports detected._
|
||||
|
||||
## Call graph (identifiers invoked)
|
||||
|
||||
`receipts`, `pdfEscape`, `replace`, `buildReceiptPdf`, `slice`, `map`, `join`, `byteLength`, `push`, `padStart`, `from`
|
||||
|
||||
Each identifier is a call site in this file. Follow the import list to see the defining module; open that module’s MD for parameter and return types.
|
||||
|
||||
## Return values (how to read this)
|
||||
|
||||
- HTTP route handlers return Express `res.json(...)` bodies (see route docs).
|
||||
- Zapier `perform` functions return a **single object** (creates) or an **array** (triggers/searches).
|
||||
- Pricing functions return integer **cents** on `Quote.totalCents`.
|
||||
|
||||
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
**Package:** `verae-zapier-middleware`
|
||||
**Source:** `packages/verae-zapier-middleware/src/routes/index.js`
|
||||
**Lines:** 36
|
||||
**Lines:** 41
|
||||
|
||||
## What this module is
|
||||
|
||||
|
|
@ -30,6 +30,8 @@ _No top-level functions extracted._
|
|||
- `./webhookRoutes.js`
|
||||
- `./tenantRoutes.js`
|
||||
- `./hashRoutes.js`
|
||||
- `./receiptRoutes.js`
|
||||
- `./objectRoutes.js`
|
||||
- `../middleware/authenticate.js`
|
||||
- `../middleware/rateLimit.js`
|
||||
|
||||
|
|
|
|||
50
docs/modules/verae-zapier-middleware/routes/objectRoutes.md
Normal file
50
docs/modules/verae-zapier-middleware/routes/objectRoutes.md
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
# `verae-zapier-middleware/routes/objectRoutes`
|
||||
|
||||
**Package:** `verae-zapier-middleware`
|
||||
**Source:** `packages/verae-zapier-middleware/src/routes/objectRoutes.js`
|
||||
**Lines:** 91
|
||||
|
||||
## What this module is
|
||||
|
||||
Implementation module in `verae-zapier-middleware`. The tables below are extracted from the source (signatures + JSDoc).
|
||||
|
||||
## Exports
|
||||
|
||||
`objectRoutes`, `publicShareRoutes`
|
||||
|
||||
## Types / interfaces / classes
|
||||
|
||||
_None extracted._
|
||||
|
||||
## Functions
|
||||
|
||||
_No top-level functions extracted._
|
||||
|
||||
## Methods (class / object)
|
||||
|
||||
| Name | Parameters |
|
||||
|------|------------|
|
||||
| `asyncHandler` | `async (req, res` |
|
||||
| `asyncHandler` | `async (req, res` |
|
||||
| `asyncHandler` | `async (req, res` |
|
||||
| `asyncHandler` | `async (req, res` |
|
||||
|
||||
## What it imports / requires
|
||||
|
||||
- `express`
|
||||
- `../errors.js`
|
||||
- `../store/blobs.js`
|
||||
- `../services/timestampService.js`
|
||||
|
||||
## Call graph (identifiers invoked)
|
||||
|
||||
`post`, `asyncHandler`, `async`, `from`, `createTimestamp`, `toString`, `slice`, `putBlob`, `status`, `json`, `get`, `readBlobPlaintext`, `createShare`, `redeemShare`
|
||||
|
||||
Each identifier is a call site in this file. Follow the import list to see the defining module; open that module’s MD for parameter and return types.
|
||||
|
||||
## Return values (how to read this)
|
||||
|
||||
- HTTP route handlers return Express `res.json(...)` bodies (see route docs).
|
||||
- Zapier `perform` functions return a **single object** (creates) or an **array** (triggers/searches).
|
||||
- Pricing functions return integer **cents** on `Quote.totalCents`.
|
||||
|
||||
47
docs/modules/verae-zapier-middleware/routes/receiptRoutes.md
Normal file
47
docs/modules/verae-zapier-middleware/routes/receiptRoutes.md
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
# `verae-zapier-middleware/routes/receiptRoutes`
|
||||
|
||||
**Package:** `verae-zapier-middleware`
|
||||
**Source:** `packages/verae-zapier-middleware/src/routes/receiptRoutes.js`
|
||||
**Lines:** 46
|
||||
|
||||
## What this module is
|
||||
|
||||
Implementation module in `verae-zapier-middleware`. The tables below are extracted from the source (signatures + JSDoc).
|
||||
|
||||
## Exports
|
||||
|
||||
`receiptRoutes`
|
||||
|
||||
## Types / interfaces / classes
|
||||
|
||||
_None extracted._
|
||||
|
||||
## Functions
|
||||
|
||||
_No top-level functions extracted._
|
||||
|
||||
## Methods (class / object)
|
||||
|
||||
| Name | Parameters |
|
||||
|------|------------|
|
||||
| `asyncHandler` | `async (req, res` |
|
||||
|
||||
## What it imports / requires
|
||||
|
||||
- `express`
|
||||
- `../errors.js`
|
||||
- `../services/timestampService.js`
|
||||
- `../lib/receiptPdf.js`
|
||||
|
||||
## Call graph (identifiers invoked)
|
||||
|
||||
`receipt`, `get`, `asyncHandler`, `async`, `toLowerCase`, `getJobStatus`, `toISOString`, `buildReceiptPdf`, `setHeader`, `send`, `json`
|
||||
|
||||
Each identifier is a call site in this file. Follow the import list to see the defining module; open that module’s MD for parameter and return types.
|
||||
|
||||
## Return values (how to read this)
|
||||
|
||||
- HTTP route handlers return Express `res.json(...)` bodies (see route docs).
|
||||
- Zapier `perform` functions return a **single object** (creates) or an **array** (triggers/searches).
|
||||
- Pricing functions return integer **cents** on `Quote.totalCents`.
|
||||
|
||||
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
**Package:** `verae-zapier-middleware`
|
||||
**Source:** `packages/verae-zapier-middleware/src/routes/statusRoutes.js`
|
||||
**Lines:** 47
|
||||
**Lines:** 52
|
||||
|
||||
## What this module is
|
||||
|
||||
|
|
|
|||
55
docs/modules/verae-zapier-middleware/store/blobs.md
Normal file
55
docs/modules/verae-zapier-middleware/store/blobs.md
Normal file
|
|
@ -0,0 +1,55 @@
|
|||
# `verae-zapier-middleware/store/blobs`
|
||||
|
||||
**Package:** `verae-zapier-middleware`
|
||||
**Source:** `packages/verae-zapier-middleware/src/store/blobs.js`
|
||||
**Lines:** 137
|
||||
|
||||
## What this module is
|
||||
|
||||
Implementation module in `verae-zapier-middleware`. The tables below are extracted from the source (signatures + JSDoc).
|
||||
|
||||
## Exports
|
||||
|
||||
`decryptBlob`, `putBlob`, `getBlobRecord`, `readBlobPlaintext`, `createShare`, `redeemShare`
|
||||
|
||||
## Types / interfaces / classes
|
||||
|
||||
_None extracted._
|
||||
|
||||
## Functions
|
||||
|
||||
| Name | Parameters | Param types (JSDoc) | Returns | Calls (same file / helpers) |
|
||||
|------|------------|---------------------|---------|-----------------------------|
|
||||
| `ensure` | `(none)` | — | `unknown` | see Call graph |
|
||||
| `encrypt` | `plaintext, key` | plaintext: `Buffer`, key: `Buffer` | `unknown` | see Call graph |
|
||||
| `decryptBlob` | `enc, key` | key: `Buffer` | `unknown` | see Call graph |
|
||||
| `putBlob` | `{ tenantId, sha256, filename, bytes, publicMetadata = {}, privateMetadata = {} }` | params: `object`, params.tenantId: `string`, params.sha256: `string`, params.filename: `string`, params.bytes: `Buffer`, params.publicMetadata: `object`, params.privateMetadata: `object` | `unknown` | see Call graph |
|
||||
| `getBlobRecord` | `id` | — | `unknown` | see Call graph |
|
||||
| `readBlobPlaintext` | `id, tenantId` | id: `string`, tenantId: `string` | `unknown` | see Call graph |
|
||||
| `createShare` | `{ blobId, fromTenantId, label }` | — | `unknown` | see Call graph |
|
||||
| `redeemShare` | `token` | token: `string` | `unknown` | see Call graph |
|
||||
|
||||
## Methods (class / object)
|
||||
|
||||
| Name | Parameters |
|
||||
|------|------------|
|
||||
| `persist` | `(none)` |
|
||||
| `persist` | `(none)` |
|
||||
|
||||
## What it imports / requires
|
||||
|
||||
- `node:crypto`
|
||||
- `./db.js`
|
||||
|
||||
## Call graph (identifiers invoked)
|
||||
|
||||
`ensure`, `getStore`, `encrypt`, `randomBytes`, `createCipheriv`, `concat`, `update`, `final`, `getAuthTag`, `toString`, `decryptBlob`, `createDecipheriv`, `from`, `setAuthTag`, `putBlob`, `randomUUID`, `toISOString`, `persist`, `getBlobRecord`, `readBlobPlaintext`, `createShare`, `redeemShare`
|
||||
|
||||
Each identifier is a call site in this file. Follow the import list to see the defining module; open that module’s MD for parameter and return types.
|
||||
|
||||
## Return values (how to read this)
|
||||
|
||||
- HTTP route handlers return Express `res.json(...)` bodies (see route docs).
|
||||
- Zapier `perform` functions return a **single object** (creates) or an **array** (triggers/searches).
|
||||
- Pricing functions return integer **cents** on `Quote.totalCents`.
|
||||
|
||||
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
**Package:** `verae-zapier-middleware`
|
||||
**Source:** `packages/verae-zapier-middleware/src/store/db.js`
|
||||
**Lines:** 115
|
||||
**Lines:** 117
|
||||
|
||||
## What this module is
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue