@fungi.computer/agar 0.1.0 → 0.3.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.
Files changed (73) hide show
  1. package/README.md +34 -18
  2. package/dist/agent-message-meta.d.ts +21 -16
  3. package/dist/agent-message-meta.js +17 -6
  4. package/dist/agents.d.ts +86 -13
  5. package/dist/agents.js +48 -25
  6. package/dist/approvals.d.ts +5 -0
  7. package/dist/approvals.js +36 -0
  8. package/dist/apps.js +4 -4
  9. package/dist/backend-definition.d.ts +41 -4
  10. package/dist/backend-definition.js +70 -10
  11. package/dist/backend-refusal.d.ts +1 -0
  12. package/dist/backend-refusal.js +1 -0
  13. package/dist/backend.js +4 -4
  14. package/dist/channels.js +4 -4
  15. package/dist/computer-contracts.d.ts +11 -28
  16. package/dist/computer-contracts.js +10 -29
  17. package/dist/computer.js +16 -16
  18. package/dist/connect.d.ts +3 -3
  19. package/dist/connect.js +7 -17
  20. package/dist/errors.d.ts +39 -1
  21. package/dist/errors.js +62 -5
  22. package/dist/game-servers.js +2 -2
  23. package/dist/git-rpc.d.ts +23 -23
  24. package/dist/git-rpc.js +14 -16
  25. package/dist/git.d.ts +9 -9
  26. package/dist/git.js +8 -8
  27. package/dist/host.d.ts +3 -1
  28. package/dist/host.js +5 -1
  29. package/dist/index.d.ts +8 -4
  30. package/dist/index.js +5 -2
  31. package/dist/inference.js +2 -1
  32. package/dist/internal/app-session.js +37 -1
  33. package/dist/internal/media-diagnostic.d.ts +11 -0
  34. package/dist/internal/media-diagnostic.js +21 -0
  35. package/dist/internal/protocol.d.ts +4 -4
  36. package/dist/internal/schemas.d.ts +40 -7
  37. package/dist/internal/schemas.js +122 -35
  38. package/dist/marketplace.js +7 -5
  39. package/dist/media-json.d.ts +14 -0
  40. package/dist/media-json.js +1 -0
  41. package/dist/media-request-id.d.ts +1 -1
  42. package/dist/media-request-id.js +2 -2
  43. package/dist/media.d.ts +11 -0
  44. package/dist/media.js +8 -2
  45. package/dist/method-presentation.d.ts +7 -0
  46. package/dist/method-presentation.js +14 -0
  47. package/dist/method-refusal.d.ts +5 -5
  48. package/dist/method-refusal.js +4 -4
  49. package/dist/query.d.ts +2 -2
  50. package/dist/react-mount.d.ts +7 -1
  51. package/dist/react-mount.js +28 -8
  52. package/dist/react.d.ts +14 -2
  53. package/dist/react.js +40 -4
  54. package/dist/read-copy.d.ts +1 -1
  55. package/dist/read-copy.js +3 -6
  56. package/dist/storage.js +1 -1
  57. package/dist/test-kit/git.js +19 -2
  58. package/dist/window.d.ts +68 -0
  59. package/dist/window.js +31 -0
  60. package/docs/api/README.md +15 -15
  61. package/docs/api/backend-definition.md +83 -9
  62. package/docs/api/backend.md +45 -38
  63. package/docs/api/errors.md +104 -0
  64. package/docs/api/git-rpc.md +35 -35
  65. package/docs/api/git.md +66 -80
  66. package/docs/api/index.md +851 -143
  67. package/docs/api/media-json.md +32 -59
  68. package/docs/api/media-request-id.md +1 -1
  69. package/docs/api/method-presentation.md +21 -0
  70. package/docs/api/modules.md +1 -0
  71. package/docs/api/query.md +1 -1
  72. package/docs/api/react.md +23 -10
  73. package/package.json +16 -6
@@ -400,65 +400,37 @@ A generation call carries paths and a replay ID; the host supplies authority.
400
400
  ### mediaGenerationJsonOutcomeSchema
401
401
 
402
402
  ```ts
403
- const mediaGenerationJsonOutcomeSchema: Union<
404
- readonly [
405
- Struct<{
406
- kind: Literal<"succeeded">;
407
- result: Struct<{
408
- [dispose]: optional<Unknown>;
409
- bytes: Number;
410
- costMilliunits: Number;
411
- destination: Struct<{
412
- computerId: String;
413
- path: String;
414
- }>;
415
- format: Literals<readonly ["png", "jpeg", "gif", "webp", "mp4"]>;
416
- height: Number;
417
- model: String;
418
- width: Number;
419
- }>;
420
- }>,
421
- Struct<{
422
- kind: Literal<"failed">;
423
- failure: Struct<{
424
- message: String;
425
- stage: optional<
426
- Literals<
427
- readonly [
428
- "admission",
429
- "generation-authorization",
430
- "settings",
431
- "estimate",
432
- "billing",
433
- "operation",
434
- "provider",
435
- "normalization",
436
- "artifact",
437
- "destination-authorization",
438
- "destination-write",
439
- ]
440
- >
441
- >;
442
- code: Literals<
443
- readonly [
444
- "CANCELLED",
445
- "CAPABILITY_DENIED",
446
- "CAPABILITY_REVOKED",
447
- "DISCONNECTED",
448
- "HOST_FAILURE",
449
- "IDENTITY",
450
- "INSUFFICIENT_CREDIT",
451
- "INVALID_ARGUMENT",
452
- "PROTOCOL",
453
- "SAFETY_FILTER_REFUSED",
454
- "TIMEOUT",
455
- ]
456
- >;
457
- retryable: Boolean;
458
- }>;
459
- }>,
460
- ]
461
- >;
403
+ const mediaGenerationJsonOutcomeSchema: Union<readonly [Struct<{
404
+ kind: Literal<"succeeded">;
405
+ result: Struct<{
406
+ [dispose]: optional<Unknown>;
407
+ bytes: Number;
408
+ costMilliunits: Number;
409
+ destination: Struct<{
410
+ computerId: String;
411
+ path: String;
412
+ }>;
413
+ format: Literals<readonly ["png", "jpeg", "gif", "webp", "mp4"]>;
414
+ height: Number;
415
+ model: String;
416
+ width: Number;
417
+ }>;
418
+ }>, Struct<{
419
+ kind: Literal<"failed">;
420
+ failure: Struct<{
421
+ message: String;
422
+ stage: optional<Literals<readonly ["admission", "generation-authorization", "settings", "estimate", "billing", "operation", "provider", "normalization", "artifact", "destination-authorization", "destination-write"]>>;
423
+ provider: optional<Union<readonly [Struct<{
424
+ category: ...;
425
+ code: ...;
426
+ }>, Struct<{
427
+ category: ...;
428
+ status: ...;
429
+ }>]>>;
430
+ code: Literals<readonly ["CANCELLED", "CAPABILITY_DENIED", "CAPABILITY_REVOKED", "DISCONNECTED", "HOST_FAILURE", "IDENTITY", "INSUFFICIENT_CREDIT", "INVALID_ARGUMENT", "PROTOCOL", "SAFETY_FILTER_REFUSED", "TIMEOUT"]>;
431
+ retryable: Boolean;
432
+ }>;
433
+ }>]>;
462
434
  ```
463
435
 
464
436
  A typed completion or refusal; no live attempt handles cross this boundary.
@@ -488,6 +460,7 @@ const mediaGenerationJsonReplySchema: Union<readonly [Union<readonly [Struct<{
488
460
  failure: Struct<{
489
461
  message: String;
490
462
  stage: optional<Literals<readonly [..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...]>>;
463
+ provider: optional<Union<readonly [..., ...]>>;
491
464
  code: Literals<readonly ["CANCELLED", "CAPABILITY_DENIED", "CAPABILITY_REVOKED", "DISCONNECTED", "HOST_FAILURE", "IDENTITY", "INSUFFICIENT_CREDIT", "INVALID_ARGUMENT", "PROTOCOL", "SAFETY_FILTER_REFUSED", "TIMEOUT"]>;
492
465
  retryable: Boolean;
493
466
  }>;
@@ -25,7 +25,7 @@ One canonical identity for a retryable Media operation.
25
25
  ### mediaRequestIdSchema
26
26
 
27
27
  ```ts
28
- const mediaRequestIdSchema: ZodString;
28
+ const mediaRequestIdSchema: ZodLazy<ZodString>;
29
29
  ```
30
30
 
31
31
  Public wire grammar for the canonical retry identity, visible in App JSON
@@ -0,0 +1,21 @@
1
+ <!-- Generated by Botanical API docs (TypeDoc + typedoc-plugin-markdown). Do not edit. -->
2
+
3
+ [**@fungi.computer/agar**](README.md)
4
+
5
+ ---
6
+
7
+ [@fungi.computer/agar](modules.md) / method-presentation
8
+
9
+ # method-presentation
10
+
11
+ ## Variables
12
+
13
+ ### resultRows
14
+
15
+ ```ts
16
+ const resultRows: ResultRowCodec;
17
+ ```
18
+
19
+ The shared result row's decoder and JSON boundary, for
20
+ `defineAppMethod({ present: { verb, row, rows: resultRows } })`. Only backends
21
+ that present import this module, so the rest carry no decoder.
@@ -25,6 +25,7 @@
25
25
  | [index](index.md) | - |
26
26
  | [media-json](media-json.md) | - |
27
27
  | [media-request-id](media-request-id.md) | - |
28
+ | [method-presentation](method-presentation.md) | - |
28
29
  | [query](query.md) | - |
29
30
  | [react](react.md) | - |
30
31
  | [read-copy](read-copy.md) | - |
package/docs/api/query.md CHANGED
@@ -246,7 +246,7 @@ One shared inbox watch; reloads and stream failures retain the last live rows.
246
246
 
247
247
  | Name | Type | Default value | Description |
248
248
  | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------- | ------------------------------------------------------------------------------------------------- |
249
- | `items` | readonly ( \| \{ `agentId`: `string`; `sessionId`: `string`; `title`: `string`; `triggerId?`: `string`; `createdAt`: `number`; `lastActivityAt`: `number`; `settledAt?`: `number`; `visitedAt?`: `number`; `state`: `"running"` \| `"done"` \| `"needs_you"` \| `"errored"`; \} \| \{ `agentId`: `string`; `sessionId`: `string`; `state`: `"unavailable"`; \} \| \{ `kind`: `"workflow-review"`; `key`: \{ `runId`: `string`; `nodeId`: `string`; `iteration`: `string`; \}; `installationId`: `string`; `workflowId`: `string` \| `null`; `workflowTitle`: `string`; `reviewTitle`: `string`; `reviewers`: `"runner"` \| `"owners"`; `show`: readonly `Json`[]; `choices?`: readonly `string`[]; `openedAt`: `number`; `expiresAt`: `number`; `state`: `"pending"` \| `"closed"` \| `"answered"` \| `"delivered"` \| `"timed_out"`; \})[] | - | - |
249
+ | `items` | readonly ( \| \{ `agentId`: `string`; `sessionId`: `string`; `title`: `string`; `triggerId?`: `string`; `createdAt`: `number`; `lastActivityAt`: `number`; `settledAt?`: `number`; `visitedAt?`: `number`; `state`: `"running"` \| `"done"` \| `"needs_you"` \| `"errored"`; \} \| \{ `agentId`: `string`; `sessionId`: `string`; `state`: `"unavailable"`; \} \| \{ `kind`: `"workflow-review"`; `key`: \{ `runId`: `string`; `nodeId`: `string`; `iteration`: `string`; \}; `installationId`: `string`; `workflowId`: `string` \| `null`; `workflowTitle`: `string`; `reviewTitle`: `string`; `reviewers`: `"runner"` \| `"owners"`; `show`: readonly `Json`[]; `choices?`: readonly `string`[]; `openedAt`: `number`; `expiresAt`: `number`; `state`: `"pending"` \| `"answered"` \| `"closed"` \| `"delivered"` \| `"timed_out"`; \})[] | - | - |
250
250
  | `status` | `"error"` \| `"loading"` \| `"live"` | - | - |
251
251
  | `error` | [`AppError`](errors.md#apperror) \| `null` | `query.error` | - |
252
252
  | `refresh()` | () => `void` | - | Restart the inbox watch; use after a change that the live feed would not otherwise observe. |
package/docs/api/react.md CHANGED
@@ -22,11 +22,18 @@ type AppMountState = Readonly<
22
22
  app: null;
23
23
  status: "connecting" | "standalone" | "ended";
24
24
  }
25
+ | {
26
+ app: null;
27
+ status: "not-hosted";
28
+ error: AppError;
29
+ }
25
30
  >;
26
31
  ```
27
32
 
28
33
  The App connection state passed to `mountApp`'s `render` callback: `live` once
29
- connected, or `connecting`/`standalone`/`ended` while there is no usable App.
34
+ connected, or `connecting`/`standalone`/`ended` while there is no usable App. An
35
+ embedded page whose handshake fails is `not-hosted`, never standalone; Agar also
36
+ renders that failure visibly.
30
37
 
31
38
  ---
32
39
 
@@ -49,7 +56,13 @@ Options passed to `mountApp`.
49
56
  type HostNavigationOptions = Readonly<{
50
57
  canGoBack: boolean;
51
58
  title?: string;
59
+ crumbs?: readonly AppCrumb[];
60
+ primary?: readonly AppHeaderCommand[];
61
+ menu?: readonly AppHeaderCommand[];
62
+ status?: readonly AppHeaderStatus[];
52
63
  onBack: AppBackHandler;
64
+ onCrumb?: (crumbId, siblingId?) => void;
65
+ onAction?: (actionId) => void;
53
66
  }>;
54
67
  ```
55
68
 
@@ -182,11 +195,11 @@ with useCallback; changing it replaces the catalog and its availability.
182
195
 
183
196
  #### Parameters
184
197
 
185
- | Parameter | Type |
186
- | ------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
187
- | `app` | [`AppRoot`](index.md#approot) \| `null` \| `undefined` |
188
- | `__namedParameters` | `Pick`\<`WhistleContribution`, `"sourceId"` \| `"namespace"`\> |
189
- | `build` | () => readonly `Readonly`\<\{ `id`: `string`; `title`: `string`; `category`: `string`; `description?`: `string`; `projections?`: \{ `bindings?`: \{ `order?`: `number`; `values`: readonly `string`[]; \}; `agent?`: \{ `keybind?`: `string`; `order?`: `number`; \}; `help?`: \{ `order?`: `number`; \}; `menu?`: \{ `order?`: `number`; \}; `palette?`: \{ `order?`: `number`; \}; `slash?`: \{ `aliases`: readonly `string`[]; `order?`: `number`; `arguments?`: \{ `hint`: `string`; `words?`: ... \| ...; `text?`: ... \| ...; \}; \}; \}; `action?`: \{ `inputSchema?`: \{ \[`key`: `string`\]: \| `string` \| `number` \| `boolean` \| readonly string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| ... 4 more ... \| null)\[\] \| \{ ...; \} \| null)\[\] \| \{ ...; \} \| null)\[\] \| \{ ...; \} \| ...[] \| \{ \[`key`: `string`\]: string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| ... 4 more ... \| null)\[\] \| \{ ...; \} \| null)\[\] \| \{ ...; \} \| null)\[\] \| \{ ...; \} \| ...; \} \| `null`; \}; `outputSchema?`: \{ \[`key`: `string`\]: \| `string` \| `number` \| `boolean` \| readonly string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| ... 4 more ... \| null)\[\] \| \{ ...; \} \| null)\[\] \| \{ ...; \} \| null)\[\] \| \{ ...; \} \| ...[] \| \{ \[`key`: `string`\]: string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| ... 4 more ... \| null)\[\] \| \{ ...; \} \| null)\[\] \| \{ ...; \} \| null)\[\] \| \{ ...; \} \| ...; \} \| `null`; \}; `presentation?`: \| \{ `type`: `"action"`; \} \| \{ `type`: `"custom"`; `data`: \{ \[`key`: `string`\]: \| `string` \| `number` \| `boolean` \| readonly ...[] \| \{ \[`key`: ...\]: ...; \} \| `null`; \}; \} \| \{ `type`: `"choice"`; `options`: readonly `object`[]; \} \| \{ `type`: `"form"`; `submitLabel?`: `string`; \} \| \{ `type`: `"confirmation"`; `message`: `string`; `confirmLabel?`: `string`; `cancelLabel?`: `string`; \}; \}; `availability?`: () => `WhistleAvailability`; `handler`: (`input`) => `unknown`; \}\>[] |
198
+ | Parameter | Type |
199
+ | ------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
200
+ | `app` | [`AppRoot`](index.md#approot) \| `null` \| `undefined` |
201
+ | `__namedParameters` | `Pick`\<`WhistleContribution`, `"sourceId"` \| `"namespace"`\> |
202
+ | `build` | () => readonly `Readonly`\<\{ `id`: `string`; `title`: `string`; `category`: `string`; `description?`: `string`; `projections?`: \{ `bindings?`: \{ `order?`: `number`; `values`: readonly `string`[]; \}; `agent?`: \{ `keybind?`: `string`; `order?`: `number`; \}; `help?`: \{ `order?`: `number`; \}; `menu?`: \{ `order?`: `number`; \}; `palette?`: \{ `order?`: `number`; \}; `slash?`: \{ `aliases`: readonly `string`[]; `consumesDraft?`: `boolean`; `order?`: `number`; `arguments?`: \{ `hint`: `string`; `words?`: ... \| ...; `text?`: ... \| ...; \}; \}; \}; `action?`: \{ `inputSchema?`: \{ \[`key`: `string`\]: \| `string` \| `number` \| `boolean` \| readonly string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| ... 4 more ... \| null)\[\] \| \{ ...; \} \| null)\[\] \| \{ ...; \} \| null)\[\] \| \{ ...; \} \| ...[] \| \{ \[`key`: `string`\]: string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| ... 4 more ... \| null)\[\] \| \{ ...; \} \| null)\[\] \| \{ ...; \} \| null)\[\] \| \{ ...; \} \| ...; \} \| `null`; \}; `outputSchema?`: \{ \[`key`: `string`\]: \| `string` \| `number` \| `boolean` \| readonly string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| ... 4 more ... \| null)\[\] \| \{ ...; \} \| null)\[\] \| \{ ...; \} \| null)\[\] \| \{ ...; \} \| ...[] \| \{ \[`key`: `string`\]: string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| number \| boolean \| readonly (string \| ... 4 more ... \| null)\[\] \| \{ ...; \} \| null)\[\] \| \{ ...; \} \| null)\[\] \| \{ ...; \} \| ...; \} \| `null`; \}; `presentation?`: \| \{ `type`: `"action"`; \} \| \{ `type`: `"custom"`; `data`: \{ \[`key`: `string`\]: \| `string` \| `number` \| `boolean` \| readonly ...[] \| \{ \[`key`: ...\]: ...; \} \| `null`; \}; \} \| \{ `type`: `"choice"`; `options`: readonly `object`[]; \} \| \{ `type`: `"form"`; `submitLabel?`: `string`; \} \| \{ `type`: `"confirmation"`; `message`: `string`; `confirmLabel?`: `string`; `cancelLabel?`: `string`; \}; \}; `availability?`: () => `WhistleAvailability`; `handler`: (`input`) => `unknown`; \}\>[] |
190
203
 
191
204
  #### Returns
192
205
 
@@ -206,10 +219,10 @@ nothing. Unmounting withdraws Back from the host chrome.
206
219
 
207
220
  #### Parameters
208
221
 
209
- | Parameter | Type |
210
- | ------------------- | -------------------------------------------------------------------------------------------------------------------------- |
211
- | `navigation` | \| `Readonly`\<\{ `publish`: `Promise`\<`void`\>; `onBack`: [`Disposer`](index.md#disposer); \}\> \| `null` \| `undefined` |
212
- | `__namedParameters` | [`HostNavigationOptions`](#hostnavigationoptions) |
222
+ | Parameter | Type |
223
+ | ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
224
+ | `navigation` | \| `Readonly`\<\{ `publish`: `Promise`\<`void`\>; `onBack`: [`Disposer`](index.md#disposer); `onActivate`: [`Disposer`](index.md#disposer); \}\> \| `null` \| `undefined` |
225
+ | `__namedParameters` | [`HostNavigationOptions`](#hostnavigationoptions) |
213
226
 
214
227
  #### Returns
215
228
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fungi.computer/agar",
3
- "version": "0.1.0",
3
+ "version": "0.3.0",
4
4
  "author": "Levi <levi@technomancy.dev>",
5
5
  "description": "App contract for fungi.computer: typed backend methods, host capabilities and the App frontend connection",
6
6
  "type": "module",
@@ -86,6 +86,10 @@
86
86
  "types": "./dist/backend-definition.d.ts",
87
87
  "import": "./dist/backend-definition.js"
88
88
  },
89
+ "./method-presentation": {
90
+ "types": "./dist/method-presentation.d.ts",
91
+ "import": "./dist/method-presentation.js"
92
+ },
89
93
  "./backend": {
90
94
  "types": "./dist/backend.d.ts",
91
95
  "import": "./dist/backend.js"
@@ -157,21 +161,27 @@
157
161
  "./test-kit/git": {
158
162
  "types": "./dist/test-kit/git.d.ts",
159
163
  "import": "./dist/test-kit/git.js"
164
+ },
165
+ "./approvals": {
166
+ "types": "./dist/approvals.d.ts",
167
+ "import": "./dist/approvals.js"
160
168
  }
161
169
  },
162
170
  "dependencies": {
163
- "@fungi.computer/puffball": "0.0.2",
164
- "@fungi.computer/whistle": "0.0.1",
171
+ "@fungi.computer/puffball": "0.2.0",
172
+ "@fungi.computer/whistle": "0.1.0",
165
173
  "@opentui/keymap": "0.5.10",
166
174
  "@fungi.computer/capnweb": "0.12.0",
167
175
  "effect": "4.0.2",
168
176
  "zod": "4.4.3",
169
- "@fungi.computer/stipe": "0.0.1",
177
+ "@fungi.computer/stipe": "0.1.0",
170
178
  "eventsource": "5.1.1",
171
179
  "isomorphic-git": "1.42.2",
172
180
  "buffer": "6.0.3",
173
- "@fungi.computer/gills": "0.0.1",
174
- "@fungi.computer/cairn": "0.0.1"
181
+ "@fungi.computer/gills": "0.2.0",
182
+ "@fungi.computer/cairn": "0.1.0",
183
+ "@fungi.computer/sprite": "0.2.0",
184
+ "@fungi.computer/approvals": "0.0.2"
175
185
  },
176
186
  "peerDependencies": {
177
187
  "react": "^18.3.1 || ^19.2.0",