apps 0.0.1-beta.6 → 0.0.1-beta.61

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 (173) hide show
  1. package/README.md +24 -21
  2. package/framework-reference.json +1 -1
  3. package/js/chunk-2A26IT3X.js +171 -0
  4. package/js/chunk-4HYFEAR7.js +49 -0
  5. package/js/chunk-5FHWNLCI.js +88 -0
  6. package/js/{chunk-M3B3DE4K.js → chunk-74YVXBKY.js} +463 -218
  7. package/js/{chunk-MNMNLXBL.js → chunk-7QBUFK6I.js} +316 -69
  8. package/js/{chunk-SB4HEPNJ.js → chunk-A4RQSTHG.js} +883 -189
  9. package/js/{chunk-T7GKZBLP.js → chunk-ANN7H2FL.js} +67 -55
  10. package/js/{chunk-NKLWZJLE.js → chunk-AQU56EPI.js} +9 -5
  11. package/js/chunk-CDXQDN7W.js +92 -0
  12. package/js/{chunk-UK573G7W.js → chunk-EOPQ727L.js} +87 -51
  13. package/js/{chunk-27F7W2LG.js → chunk-H2CJWXA3.js} +2 -2
  14. package/js/{chunk-JU7VHODU.js → chunk-H72MEDMN.js} +65 -10
  15. package/js/{chunk-CDL5PM2Q.js → chunk-IFJU5SYQ.js} +19082 -18402
  16. package/js/{chunk-VFZKSM3T.js → chunk-JPEUKEV4.js} +3 -3
  17. package/js/{chunk-RFVIONFX.js → chunk-JSAZHHWI.js} +79 -41
  18. package/js/{chunk-RJDDBDSN.js → chunk-K6P2US3D.js} +635 -89
  19. package/js/{chunk-5T57N25Q.js → chunk-KGCTYL2S.js} +511 -63
  20. package/js/{chunk-KUMBKVJD.js → chunk-KLYSEHUD.js} +2 -2
  21. package/js/chunk-MWKHKOTL.js +240 -0
  22. package/js/chunk-NFHURZBA.js +340 -0
  23. package/js/chunk-OD3KFKZD.js +1617 -0
  24. package/js/{chunk-57RKNWL2.js → chunk-PD6I2SDG.js} +4 -4
  25. package/js/{chunk-ITM77QPO.js → chunk-QE4JSN3X.js} +126 -31
  26. package/js/chunk-S34PXQUC.js +266 -0
  27. package/js/{chunk-B3EOZTK3.js → chunk-TLWLJ7PD.js} +2227 -453
  28. package/js/{chunk-IJX4CYZO.js → chunk-TUMGL2OC.js} +228 -264
  29. package/js/{chunk-ECQFRCH4.js → chunk-VHUR5HUL.js} +4 -3
  30. package/js/{chunk-IPI4MFSN.js → chunk-XBG7HHXC.js} +2 -2
  31. package/js/client.js +142 -94
  32. package/js/contracts.js +103 -26
  33. package/js/effect.js +19 -19
  34. package/js/{es-APDZKREY.js → es-DIULA3ZF.js} +62 -1659
  35. package/js/graphql.js +50 -40
  36. package/js/host.js +83 -58
  37. package/js/index.js +90 -61
  38. package/js/mcp/effect.js +23 -21
  39. package/js/mcp/stdio.js +44 -34
  40. package/js/mcp.js +76 -53
  41. package/js/openapi.js +4050 -1354
  42. package/js/react.js +2 -3
  43. package/js/skills/effect.js +6 -3
  44. package/js/skills.js +208 -81
  45. package/js/storage/facet.js +1 -540
  46. package/js/ui/auth/contracts.js +2 -2
  47. package/js/ui/auth.js +5 -5
  48. package/js/ui/contracts.js +5 -4
  49. package/js/ui/serving.js +8517 -214
  50. package/package.json +2 -3
  51. package/runtime.json +1 -1
  52. package/types/app-cache/src/index.d.ts +10 -1
  53. package/types/apps/src/contracts/api-response-error.d.ts +4 -0
  54. package/types/apps/src/contracts/app.d.ts +7 -3
  55. package/types/apps/src/contracts/cache.d.ts +20 -0
  56. package/types/apps/src/contracts/context.d.ts +19 -11
  57. package/types/apps/src/contracts/elicitation.d.ts +6 -6
  58. package/types/apps/src/contracts/events.d.ts +93 -0
  59. package/types/apps/src/contracts/failure.d.ts +30 -1
  60. package/types/apps/src/contracts/graphql.d.ts +2 -1
  61. package/types/apps/src/contracts/host.d.ts +48 -13
  62. package/types/apps/src/contracts/live.d.ts +2 -0
  63. package/types/apps/src/contracts/mcp.d.ts +80 -10
  64. package/types/apps/src/contracts/network.d.ts +84 -0
  65. package/types/apps/src/contracts/openapi-compile.d.ts +82 -3
  66. package/types/apps/src/contracts/openapi.d.ts +41 -9
  67. package/types/apps/src/contracts/operations.d.ts +8 -4
  68. package/types/apps/src/contracts/protocol-version.d.ts +2 -2
  69. package/types/apps/src/contracts/protocols/1.d.ts +733 -81
  70. package/types/apps/src/contracts/protocols/10.d.ts +1450 -0
  71. package/types/apps/src/contracts/protocols/2.d.ts +69 -26
  72. package/types/apps/src/contracts/protocols/3.d.ts +133 -33
  73. package/types/apps/src/contracts/protocols/4.d.ts +122 -45
  74. package/types/apps/src/contracts/protocols/5.d.ts +1200 -0
  75. package/types/apps/src/contracts/protocols/6.d.ts +1629 -0
  76. package/types/apps/src/contracts/protocols/7.d.ts +1785 -0
  77. package/types/apps/src/contracts/protocols/8.d.ts +1182 -0
  78. package/types/apps/src/contracts/protocols/9.d.ts +1104 -0
  79. package/types/apps/src/contracts/protocols/current.d.ts +2476 -0
  80. package/types/apps/src/contracts/protocols/oauth-6.d.ts +74 -0
  81. package/types/apps/src/contracts/protocols/oauth.d.ts +134 -0
  82. package/types/apps/src/contracts/provider-error.d.ts +9 -0
  83. package/types/apps/src/contracts/provider.d.ts +115 -10
  84. package/types/apps/src/contracts/skills.d.ts +50 -13
  85. package/types/apps/src/contracts/sql.d.ts +58 -0
  86. package/types/apps/src/contracts/ui.d.ts +19 -1
  87. package/types/apps/src/contracts/workflows.d.ts +6 -0
  88. package/types/apps/src/facet.d.ts +4 -5
  89. package/types/apps/src/host.d.ts +5 -0
  90. package/types/apps/src/implementation/account-router.d.ts +4 -3
  91. package/types/apps/src/implementation/authoring.d.ts +25 -5
  92. package/types/apps/src/implementation/browser-scripts.gen.d.ts +6 -0
  93. package/types/apps/src/implementation/cache.d.ts +4 -0
  94. package/types/apps/src/implementation/catalog-cache.d.ts +35 -4
  95. package/types/apps/src/implementation/elicitation.d.ts +18 -15
  96. package/types/apps/src/implementation/events.d.ts +59 -0
  97. package/types/apps/src/implementation/failure-detail.d.ts +25 -3
  98. package/types/apps/src/implementation/graphql-catalog.d.ts +3 -3
  99. package/types/apps/src/implementation/graphql.d.ts +4 -3
  100. package/types/apps/src/implementation/input-problems.d.ts +6 -2
  101. package/types/apps/src/implementation/invocation-timing.d.ts +16 -0
  102. package/types/apps/src/implementation/live.d.ts +2 -2
  103. package/types/apps/src/implementation/mcp-call.d.ts +6 -5
  104. package/types/apps/src/implementation/mcp-catalog.d.ts +6 -4
  105. package/types/apps/src/implementation/mcp-client.d.ts +17 -9
  106. package/types/apps/src/implementation/mcp-stdio.d.ts +1 -1
  107. package/types/apps/src/implementation/mcp-tools.d.ts +2 -1
  108. package/types/apps/src/implementation/mcp.d.ts +20 -9
  109. package/types/apps/src/implementation/network.d.ts +16 -0
  110. package/types/apps/src/implementation/openapi-compile.d.ts +26 -6
  111. package/types/apps/src/implementation/openapi-document.d.ts +46 -19
  112. package/types/apps/src/implementation/openapi-names.d.ts +9 -4
  113. package/types/apps/src/implementation/openapi-request.d.ts +10 -2
  114. package/types/apps/src/implementation/openapi-source.d.ts +18 -0
  115. package/types/apps/src/implementation/openapi-upgrade.d.ts +4 -0
  116. package/types/apps/src/implementation/operations.d.ts +17 -2
  117. package/types/apps/src/implementation/optimistic.d.ts +1 -1
  118. package/types/apps/src/implementation/protocol-operations.d.ts +3 -0
  119. package/types/apps/src/implementation/provider-error.d.ts +28 -1
  120. package/types/apps/src/implementation/provider.d.ts +19 -5
  121. package/types/apps/src/implementation/query-commit.d.ts +1 -1
  122. package/types/apps/src/implementation/router-catalog.d.ts +11 -13
  123. package/types/apps/src/implementation/router.d.ts +16 -5
  124. package/types/apps/src/implementation/runtime-yield.d.ts +7 -0
  125. package/types/apps/src/implementation/schema.d.ts +90 -10
  126. package/types/apps/src/implementation/skills.d.ts +18 -24
  127. package/types/apps/src/implementation/sql.d.ts +71 -0
  128. package/types/apps/src/implementation/ui-account-notice.d.ts +9 -0
  129. package/types/apps/src/implementation/ui-auth.d.ts +1 -1
  130. package/types/apps/src/implementation/ui-client.d.ts +2 -2
  131. package/types/apps/src/implementation/ui-document.d.ts +5 -0
  132. package/types/apps/src/implementation/ui-errors.d.ts +1 -1
  133. package/types/apps/src/implementation/ui-serving.d.ts +11 -5
  134. package/types/apps/src/implementation/ui-watch.d.ts +1 -1
  135. package/types/apps/src/implementation/upstream-error.d.ts +7 -0
  136. package/types/apps/src/implementation/webhooks.d.ts +1 -1
  137. package/types/apps/src/implementation/workflows.d.ts +1 -1
  138. package/types/apps/src/index.d.ts +30 -12
  139. package/types/apps/src/mcp.d.ts +20 -1
  140. package/types/apps/src/openapi.d.ts +1 -1
  141. package/types/apps/src/react.d.ts +1 -1
  142. package/types/apps/src/skills.d.ts +10 -8
  143. package/types/telemetry/src/app-records.d.ts +42 -0
  144. package/types/telemetry/src/browser-operations.d.ts +7 -4
  145. package/types/telemetry/src/browser.d.ts +8 -3
  146. package/types/telemetry/src/config.d.ts +2 -2
  147. package/types/telemetry/src/index.d.ts +1 -0
  148. package/types/telemetry/src/layer.d.ts +2 -2
  149. package/types/telemetry/src/ownership.d.ts +56 -0
  150. package/types/telemetry/src/recorded-failure.d.ts +29 -0
  151. package/types/telemetry/src/relay.d.ts +11 -3
  152. package/types/telemetry/src/transport.d.ts +8 -1
  153. package/types/utils/src/api-error.d.ts +55 -0
  154. package/types/utils/src/connection-failure.d.ts +33 -0
  155. package/types/utils/src/recorded-message.d.ts +18 -0
  156. package/types/utils/src/user-facing-error.d.ts +83 -0
  157. package/js/chunk-6BSSI67S.js +0 -224
  158. package/js/chunk-MKWZPDR6.js +0 -63
  159. package/js/chunk-N7YDVXYJ.js +0 -186
  160. package/js/chunk-OE3QQTSB.js +0 -222
  161. package/js/chunk-PJJ24GU7.js +0 -877
  162. package/js/chunk-PZB6T6KU.js +0 -19
  163. package/js/chunk-R3EV5FTO.js +0 -97
  164. package/js/chunk-ZQINWV4W.js +0 -630
  165. package/types/app-data/src/implementation/cursor.d.ts +0 -10
  166. package/types/app-data/src/implementation/index-key.d.ts +0 -7
  167. package/types/app-data/src/implementation/promise.d.ts +0 -68
  168. package/types/app-data/src/implementation/range.d.ts +0 -8
  169. package/types/app-data/src/implementation/schema.d.ts +0 -18
  170. package/types/app-data/src/implementation/sqlite.d.ts +0 -11
  171. package/types/app-data/src/index.d.ts +0 -4
  172. package/types/apps/src/contracts/storage.d.ts +0 -68
  173. package/types/apps/src/implementation/storage.d.ts +0 -15
@@ -1,222 +0,0 @@
1
- import {
2
- promiseTable
3
- } from "./chunk-ZQINWV4W.js";
4
- import {
5
- declaredOperations,
6
- fromPromise,
7
- nativeOperation,
8
- nativeRouter
9
- } from "./chunk-T7GKZBLP.js";
10
- import {
11
- ScheduleTiming
12
- } from "./chunk-B3EOZTK3.js";
13
- import {
14
- DatabaseSchema
15
- } from "./chunk-N7YDVXYJ.js";
16
- import {
17
- decoderOf,
18
- isSchema,
19
- storageFieldOf
20
- } from "./chunk-5T57N25Q.js";
21
- import {
22
- AppStorageUnavailable
23
- } from "./chunk-PZB6T6KU.js";
24
- import {
25
- JsonValue
26
- } from "./chunk-27F7W2LG.js";
27
- import {
28
- Effect_exports,
29
- Schema_exports
30
- } from "./chunk-CDL5PM2Q.js";
31
-
32
- // src/implementation/workflows.ts
33
- var NativeWorkflow = /* @__PURE__ */ Symbol("apps.Workflow");
34
- var workflow = (options, run) => ({
35
- [NativeWorkflow]: {
36
- input: decoderOf(options.input),
37
- ...options.output === void 0 ? {} : { output: decoderOf(options.output) },
38
- ...options.description === void 0 ? {} : { description: options.description },
39
- run: (context, input) => Effect_exports.tryPromise({
40
- // SAFETY: defineApp checks required context; the host supplies the pinned run's capabilities.
41
- try: () => run(context, input),
42
- catch: (error) => error
43
- })
44
- }
45
- });
46
- var nativeWorkflow = (value) => {
47
- if (typeof value !== "object" || value === null || !(NativeWorkflow in value)) return void 0;
48
- return value[NativeWorkflow];
49
- };
50
-
51
- // src/implementation/app.ts
52
- var InternalApp = /* @__PURE__ */ Symbol("apps.App");
53
- var isApp = (value) => typeof value === "object" && value !== null && InternalApp in value;
54
- var toEffectApp = (app) => app[InternalApp];
55
- function rejectCatalogs(definition) {
56
- if ("queries" in definition || "mutations" in definition)
57
- throw new Error("Put queries and mutations in a router under tools");
58
- }
59
- function adaptDefinition(definition) {
60
- rejectCatalogs(definition);
61
- const webhooks = definition.webhooks === void 0 ? {} : {
62
- webhooks: Object.fromEntries(
63
- Object.entries(definition.webhooks).map(([name, webhook]) => [
64
- name,
65
- {
66
- ...webhook,
67
- ...webhook.register === void 0 ? {} : { register: fromPromise(webhook.register) },
68
- handle: fromPromise(webhook.handle),
69
- ...webhook.unregister === void 0 ? {} : { unregister: fromPromise(webhook.unregister) },
70
- ..."config" in webhook && isSchema(webhook.config) ? { config: decoderOf(webhook.config) } : {},
71
- ..."state" in webhook && isSchema(webhook.state) ? { state: decoderOf(webhook.state) } : {}
72
- }
73
- ])
74
- )
75
- };
76
- const workflows = definition.workflows === void 0 ? {} : {
77
- workflows: Object.fromEntries(
78
- Object.entries(definition.workflows).map(([name, value]) => {
79
- const declared2 = nativeWorkflow(value);
80
- if (declared2 === void 0) throw new Error("Invalid workflow declaration");
81
- return [name, declared2];
82
- })
83
- )
84
- };
85
- const root = definition.tools === void 0 ? void 0 : nativeRouter(definition.tools);
86
- if (definition.tools !== void 0 && root === void 0)
87
- throw new Error("tools must be a router");
88
- const data = root === void 0 ? {} : { tools: root };
89
- const declared = root?.kind === "router" ? declaredOperations(root) : [];
90
- const mutations = /* @__PURE__ */ new Set();
91
- for (const { operation } of declared) {
92
- if (operation.kind !== "mutation") continue;
93
- if (mutations.has(operation))
94
- throw new Error("A mutation can be mounted at only one path in tools");
95
- mutations.add(operation);
96
- }
97
- const schedules = definition.schedules === void 0 ? {} : {
98
- schedules: Object.fromEntries(
99
- Object.entries(definition.schedules).map(([name, schedule]) => {
100
- const target = nativeOperation(schedule.operation);
101
- const match = declared.find(
102
- ({ operation }) => operation === target && operation.kind === "mutation"
103
- );
104
- if (match === void 0)
105
- throw new Error("A schedule must reference a mutation in this app's tools");
106
- return [
107
- name,
108
- {
109
- timing: Schema_exports.decodeUnknownSync(ScheduleTiming)(schedule.timing),
110
- input: Schema_exports.decodeUnknownSync(JsonValue)(schedule.input),
111
- tool: match.name
112
- }
113
- ];
114
- })
115
- )
116
- };
117
- return {
118
- ...definition,
119
- ...webhooks,
120
- ...workflows,
121
- ...data,
122
- ...schedules
123
- };
124
- }
125
- var defineApp = (requirements, definition) => {
126
- if (typeof definition !== "function") rejectCatalogs(definition);
127
- const evaluate = typeof definition === "function" ? definition : async () => definition;
128
- const factory = fromPromise(evaluate);
129
- const native = {
130
- accounts: requirements.accounts,
131
- ...requirements.database === void 0 ? {} : { database: requirements.database },
132
- evaluate: (context) => factory(context).pipe(Effect_exports.map((value) => adaptDefinition(value)))
133
- };
134
- return {
135
- [InternalApp]: native,
136
- accounts: native.accounts,
137
- evaluate: (context) => Effect_exports.runPromise(factory(context))
138
- };
139
- };
140
-
141
- // src/implementation/storage.ts
142
- var table = (fields) => tableWithIndexes(fields, []);
143
- var tableWithIndexes = (fields, indexes) => ({
144
- fields,
145
- indexes,
146
- index: (name, fieldsInIndex) => tableWithIndexes(fields, [...indexes, { name, fields: fieldsInIndex }])
147
- });
148
- var serialize = (tables) => {
149
- const definitions = Object.fromEntries(
150
- Object.entries(tables).map(([name, table2]) => [
151
- name,
152
- {
153
- fields: Object.fromEntries(
154
- Object.entries(table2.fields).map(([fieldName, schema]) => {
155
- const field = storageFieldOf(schema);
156
- if (field === void 0) throw new Error("Database columns must use a scalar schema");
157
- return [fieldName, field];
158
- })
159
- ),
160
- indexes: table2.indexes
161
- }
162
- ])
163
- );
164
- return Schema_exports.decodeUnknownSync(DatabaseSchema)(definitions);
165
- };
166
- var authorDatabase = (tables, session, signal, writable) => {
167
- return Object.fromEntries(
168
- Object.entries(tables).map(([name, table2]) => {
169
- const api = promiseTable(session, name, signal);
170
- const parseFields = (input, partial) => {
171
- const values = Schema_exports.decodeUnknownSync(
172
- Schema_exports.Record(Schema_exports.String, Schema_exports.Unknown)
173
- )(input);
174
- const fields = {};
175
- for (const [key, value] of Object.entries(values)) {
176
- if (value === void 0) continue;
177
- const field = Object.hasOwn(table2.fields, key) ? table2.fields[key] : void 0;
178
- if (field === void 0) throw new Error("Unknown database column");
179
- const definition = storageFieldOf(field);
180
- fields[key] = value === null && definition?.optional ? null : field.parse(value);
181
- }
182
- if (!partial) {
183
- for (const [key, field] of Object.entries(table2.fields))
184
- if (!Object.hasOwn(fields, key)) {
185
- const value = field.parse(void 0);
186
- if (value !== void 0) fields[key] = value;
187
- }
188
- }
189
- return fields;
190
- };
191
- const read = { get: api.get, withIndex: api.withIndex };
192
- return [
193
- name,
194
- writable ? {
195
- ...read,
196
- insert: (value) => api.insert(parseFields(value, false)),
197
- update: (id, value) => api.update(id, parseFields(value, true)),
198
- delete: api.delete
199
- } : read
200
- ];
201
- })
202
- );
203
- };
204
- var defineDatabase = (tables) => ({
205
- schema: serialize(tables),
206
- tables
207
- });
208
- var unavailableStorage = {
209
- read: () => Effect_exports.fail(new AppStorageUnavailable()),
210
- mutate: () => Effect_exports.fail(new AppStorageUnavailable())
211
- };
212
-
213
- export {
214
- workflow,
215
- isApp,
216
- toEffectApp,
217
- defineApp,
218
- table,
219
- authorDatabase,
220
- defineDatabase,
221
- unavailableStorage
222
- };