@noodleseed/one 0.20.1 → 0.22.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 (116) hide show
  1. package/dist/agents.d.ts +12 -0
  2. package/dist/agents.d.ts.map +1 -1
  3. package/dist/agents.js +36 -3
  4. package/dist/agents.js.map +1 -1
  5. package/dist/commands/analytics-ops.d.ts.map +1 -1
  6. package/dist/commands/analytics-ops.js +5 -3
  7. package/dist/commands/analytics-ops.js.map +1 -1
  8. package/dist/commands/author-loop.d.ts.map +1 -1
  9. package/dist/commands/author-loop.js +58 -21
  10. package/dist/commands/author-loop.js.map +1 -1
  11. package/dist/commands/catalog-data-core.d.ts.map +1 -1
  12. package/dist/commands/catalog-data-core.js +15 -3
  13. package/dist/commands/catalog-data-core.js.map +1 -1
  14. package/dist/commands/deploy-ops.d.ts +6 -0
  15. package/dist/commands/deploy-ops.d.ts.map +1 -1
  16. package/dist/commands/deploy-ops.js +108 -38
  17. package/dist/commands/deploy-ops.js.map +1 -1
  18. package/dist/commands/mcp-apps.d.ts.map +1 -1
  19. package/dist/commands/mcp-apps.js +31 -7
  20. package/dist/commands/mcp-apps.js.map +1 -1
  21. package/dist/commands/output.d.ts +52 -0
  22. package/dist/commands/output.d.ts.map +1 -1
  23. package/dist/commands/output.js +12 -0
  24. package/dist/commands/output.js.map +1 -1
  25. package/dist/commands/project-setup.d.ts.map +1 -1
  26. package/dist/commands/project-setup.js +35 -4
  27. package/dist/commands/project-setup.js.map +1 -1
  28. package/dist/commands/update-ops.d.ts.map +1 -1
  29. package/dist/commands/update-ops.js +11 -1
  30. package/dist/commands/update-ops.js.map +1 -1
  31. package/dist/first-run.d.ts.map +1 -1
  32. package/dist/first-run.js +57 -29
  33. package/dist/first-run.js.map +1 -1
  34. package/dist/project.js +17 -1
  35. package/dist/project.js.map +1 -1
  36. package/dist/react.d.ts +2 -2
  37. package/dist/react.d.ts.map +1 -1
  38. package/dist/react.js +1 -1
  39. package/dist/react.js.map +1 -1
  40. package/node_modules/@noodle-borg/agent-kit/dist/curated/hook-notes.d.ts.map +1 -1
  41. package/node_modules/@noodle-borg/agent-kit/dist/curated/hook-notes.js +5 -2
  42. package/node_modules/@noodle-borg/agent-kit/dist/curated/hook-notes.js.map +1 -1
  43. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.d.ts +1 -1
  44. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.d.ts.map +1 -1
  45. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.js +4 -1
  46. package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.js.map +1 -1
  47. package/node_modules/@noodle-borg/agent-kit/dist/index.d.ts.map +1 -1
  48. package/node_modules/@noodle-borg/agent-kit/dist/index.js +17 -11
  49. package/node_modules/@noodle-borg/agent-kit/dist/index.js.map +1 -1
  50. package/node_modules/@noodle-borg/agent-kit/dist/skill-authoring-refs.d.ts.map +1 -1
  51. package/node_modules/@noodle-borg/agent-kit/dist/skill-authoring-refs.js +225 -26
  52. package/node_modules/@noodle-borg/agent-kit/dist/skill-authoring-refs.js.map +1 -1
  53. package/node_modules/@noodle-borg/agent-kit/dist/skill-content.d.ts +1 -0
  54. package/node_modules/@noodle-borg/agent-kit/dist/skill-content.d.ts.map +1 -1
  55. package/node_modules/@noodle-borg/agent-kit/dist/skill-content.js +217 -52
  56. package/node_modules/@noodle-borg/agent-kit/dist/skill-content.js.map +1 -1
  57. package/node_modules/@noodle-borg/agent-kit/dist/skill-operations-refs.d.ts.map +1 -1
  58. package/node_modules/@noodle-borg/agent-kit/dist/skill-operations-refs.js +20 -0
  59. package/node_modules/@noodle-borg/agent-kit/dist/skill-operations-refs.js.map +1 -1
  60. package/node_modules/@noodle-borg/agent-kit/package.json +1 -1
  61. package/node_modules/@noodle-borg/authoring/dist/index.d.ts +2 -2
  62. package/node_modules/@noodle-borg/authoring/dist/index.d.ts.map +1 -1
  63. package/node_modules/@noodle-borg/authoring/dist/index.js +1 -1
  64. package/node_modules/@noodle-borg/authoring/dist/index.js.map +1 -1
  65. package/node_modules/@noodle-borg/authoring/dist/react/app-flow.d.ts +33 -0
  66. package/node_modules/@noodle-borg/authoring/dist/react/app-flow.d.ts.map +1 -0
  67. package/node_modules/@noodle-borg/authoring/dist/react/app-flow.js +93 -0
  68. package/node_modules/@noodle-borg/authoring/dist/react/app-flow.js.map +1 -0
  69. package/node_modules/@noodle-borg/authoring/dist/react/bridge.d.ts +41 -0
  70. package/node_modules/@noodle-borg/authoring/dist/react/bridge.d.ts.map +1 -0
  71. package/node_modules/@noodle-borg/authoring/dist/react/bridge.js +85 -0
  72. package/node_modules/@noodle-borg/authoring/dist/react/bridge.js.map +1 -0
  73. package/node_modules/@noodle-borg/authoring/dist/react/components.d.ts +5167 -0
  74. package/node_modules/@noodle-borg/authoring/dist/react/components.d.ts.map +1 -0
  75. package/node_modules/@noodle-borg/authoring/dist/react/components.js +149 -0
  76. package/node_modules/@noodle-borg/authoring/dist/react/components.js.map +1 -0
  77. package/node_modules/@noodle-borg/authoring/dist/react/handoff.d.ts +12 -0
  78. package/node_modules/@noodle-borg/authoring/dist/react/handoff.d.ts.map +1 -0
  79. package/node_modules/@noodle-borg/authoring/dist/react/handoff.js +54 -0
  80. package/node_modules/@noodle-borg/authoring/dist/react/handoff.js.map +1 -0
  81. package/node_modules/@noodle-borg/authoring/dist/react/hooks.d.ts +47 -0
  82. package/node_modules/@noodle-borg/authoring/dist/react/hooks.d.ts.map +1 -0
  83. package/node_modules/@noodle-borg/authoring/dist/react/hooks.js +125 -0
  84. package/node_modules/@noodle-borg/authoring/dist/react/hooks.js.map +1 -0
  85. package/node_modules/@noodle-borg/authoring/dist/react/index.d.ts +13 -0
  86. package/node_modules/@noodle-borg/authoring/dist/react/index.d.ts.map +1 -0
  87. package/node_modules/@noodle-borg/authoring/dist/react/index.js +7 -0
  88. package/node_modules/@noodle-borg/authoring/dist/react/index.js.map +1 -0
  89. package/node_modules/@noodle-borg/authoring/dist/react/native-components.d.ts +1159 -0
  90. package/node_modules/@noodle-borg/authoring/dist/react/native-components.d.ts.map +1 -0
  91. package/node_modules/@noodle-borg/authoring/dist/react/native-components.js +66 -0
  92. package/node_modules/@noodle-borg/authoring/dist/react/native-components.js.map +1 -0
  93. package/node_modules/@noodle-borg/authoring/dist/react/store.d.ts +9 -0
  94. package/node_modules/@noodle-borg/authoring/dist/react/store.d.ts.map +1 -0
  95. package/node_modules/@noodle-borg/authoring/dist/react/store.js +25 -0
  96. package/node_modules/@noodle-borg/authoring/dist/react/store.js.map +1 -0
  97. package/node_modules/@noodle-borg/authoring/dist/react.d.ts +2 -28
  98. package/node_modules/@noodle-borg/authoring/dist/react.d.ts.map +1 -1
  99. package/node_modules/@noodle-borg/authoring/dist/react.js +1 -152
  100. package/node_modules/@noodle-borg/authoring/dist/react.js.map +1 -1
  101. package/node_modules/@noodle-borg/connector-defs/dist/compile.d.ts.map +1 -1
  102. package/node_modules/@noodle-borg/connector-defs/dist/compile.js +23 -8
  103. package/node_modules/@noodle-borg/connector-defs/dist/compile.js.map +1 -1
  104. package/node_modules/@noodle-borg/connector-defs/dist/schema.d.ts +8 -4
  105. package/node_modules/@noodle-borg/connector-defs/dist/schema.d.ts.map +1 -1
  106. package/node_modules/@noodle-borg/connector-defs/dist/schema.js +3 -3
  107. package/node_modules/@noodle-borg/connector-defs/dist/schema.js.map +1 -1
  108. package/node_modules/@noodle-borg/connector-defs/dist/variables.d.ts +1 -0
  109. package/node_modules/@noodle-borg/connector-defs/dist/variables.d.ts.map +1 -1
  110. package/node_modules/@noodle-borg/connector-defs/dist/variables.js +1 -1
  111. package/node_modules/@noodle-borg/connector-defs/dist/variables.js.map +1 -1
  112. package/node_modules/@noodle-borg/connector-http/dist/http-connector.d.ts +3 -2
  113. package/node_modules/@noodle-borg/connector-http/dist/http-connector.d.ts.map +1 -1
  114. package/node_modules/@noodle-borg/connector-http/dist/http-connector.js.map +1 -1
  115. package/package.json +6 -4
  116. package/react/styles.css +346 -0
@@ -1,10 +1,11 @@
1
1
  // Renderers for the hierarchical `noodle-seed` skill: one SKILL.md router plus one-level-deep
2
2
  // reference files. Factual sections (SDK surface, CLI commands, compile errors, React hooks) are
3
3
  // derived from the generated surface (./generated/surface.ts) + curated maps (./curated/*), so
4
- // they never drift from the real SDK/CLI/compiler. Prose references are curated and live in
5
- // ./skill-authoring-refs.ts and ./skill-operations-refs.ts. The drift gate enforces both currency
6
- // (every generated name rendered) and structure (router < 500 lines, references one level deep,
7
- // long references open with a Contents TOC).
4
+ // they never drift from the real SDK/CLI/compiler. This module owns the machine-first router, the
5
+ // generated references, and the curated agent-contract reference; the rest of the curated prose
6
+ // references live in ./skill-authoring-refs.ts and ./skill-operations-refs.ts. The drift gate
7
+ // enforces both currency (every generated name rendered) and structure (router < 500 lines,
8
+ // references one level deep, long references open with a Contents TOC).
8
9
  import { COMMAND_GROUP_ORDER, COMMAND_GROUPS } from './curated/command-groups.js';
9
10
  import { ERROR_FIXES } from './curated/error-fixes.js';
10
11
  import { CLI_COMMANDS, COMPILE_ERROR_CODES, SDK_EXPORTS } from './generated/surface.js';
@@ -29,17 +30,23 @@ export function skillRouterBody(target) {
29
30
  '',
30
31
  '## Golden path',
31
32
  '',
32
- '1. `noodle validate` author-time compile/schema/connector check. On failure, fix the cited errors (see `references/compile-errors.md`) and re-validate; do not freeform re-edit.',
33
- '2. `noodle test` — local compile plus a loopback MCP smoke.',
34
- '3. `noodle dev` local loopback runtime that serves and hot-reloads the manifest.',
35
- '4. `noodle check` / `noodle devtools` MCP Apps/widget readiness and preview (see `references/widgets-and-apps.md`).',
36
- '5. `noodle deploy` after `noodle login` + `noodle link` (see `references/deploy-and-ops.md`).',
37
- '6. Prove it in a real host `noodle connect <client>` (see `references/test-in-hosts.md`); debug symptoms with `references/troubleshooting.md`.',
33
+ 'This CLI is agent-native: the cold-agent-path commands speak the `--json` envelope (hosted admin/ops commands are still being normalized). Drive the loop by parsing machine state, not human prose. The full envelope, exit codes, and output modes are in `references/agent-contract.md`.',
34
+ '',
35
+ "1. **Discover** — `noodle commands --json`: every command, subcommand, flag, and exit code (don't read source).",
36
+ '2. **Author** edit `src/server.ts` (the configured entrypoint); follow the capability recipe in `references/sdk-surface.md` and `references/examples.md`.',
37
+ '3. **Validate** — `noodle validate --json`; on failure `{ok:false,error:{code,message,fix,next,errors:[{code,path,message}]}}` the per-field detail is in `error.errors[]`.',
38
+ '4. **Repair** fix each `error.errors[]` entry at its `path`, then re-run `noodle validate --json`; `noodle validate --fix-prompt` emits ready-to-apply repair prose. Never freeform re-edit (see `references/compile-errors.md`).',
39
+ '5. **Smoke** — `noodle test --json`: local compile plus a loopback MCP smoke.',
40
+ '6. **Apps/widgets** — `noodle check --json` (add `--target chatgpt|claude`), then `noodle devtools` (see `references/widgets-and-apps.md`).',
41
+ '7. **Deploy** — `noodle deploy`; auth fails clean with `error.next` = `noodle login` (see `references/deploy-and-ops.md`).',
42
+ '8. **Wire into a host** — `noodle connect <codex|claude-code|chatgpt>` (prove it in a real host per `references/test-in-hosts.md`; debug symptoms with `references/troubleshooting.md`).',
43
+ '9. **Health** — `noodle metrics --agent-output`: a health verdict plus the exact next command per attention item.',
38
44
  '',
39
45
  '## References',
40
46
  '',
41
47
  'Load these on demand:',
42
48
  '',
49
+ '- `references/agent-contract.md` — the `--json` envelope, exit codes, and the three output modes.',
43
50
  '- `references/sdk-surface.md` — what to import from `@noodleseed/one` and which builder to use.',
44
51
  '- `references/cli-commands.md` — every `noodle` command, grouped by area.',
45
52
  '- `references/compile-errors.md` — fix `noodle validate` errors by code.',
@@ -63,7 +70,7 @@ export function skillRouterBody(target) {
63
70
  ].join('\n');
64
71
  }
65
72
  // ----------------------------------------------------------------------------
66
- // references/sdk-surface.md (GENERATED from SDK_EXPORTS)
73
+ // references/sdk-surface.md (GENERATED from SDK_EXPORTS + curated recipes)
67
74
  // ----------------------------------------------------------------------------
68
75
  const SDK_GROUPS = [
69
76
  { label: 'Server & tools', members: ['server', 'tool', 'toolWithWidget', 'toolForWidget'] },
@@ -93,6 +100,141 @@ const SDK_NOTES = {
93
100
  handoffSession: '`handoffSession(...)` — typed cross-host handoff session envelopes.',
94
101
  z: '`z` — Zod, for input/output schemas (compiles to JSON Schema 2020-12).',
95
102
  };
103
+ // Worked, minimal-complete recipes for the builders that have no obvious one-line shape (resource,
104
+ // prompt, and a non-trivial tool `fulfil`). The full-server recipes are gate-verified on every
105
+ // `pnpm test` (scripts/verify-skill-snippets.mjs runs `noodle validate` on each); the resource/prompt
106
+ // fragments were validated when authored (assembled into a server) but are illustrative shape, not
107
+ // independently gated.
108
+ const SDK_RECIPES = [
109
+ '## Recipes',
110
+ '',
111
+ 'Minimal, complete, compiling recipes — author in `src/server.ts`, then `noodle validate`. Inside a `fulfil`, `ctx.input` (a prompt’s arguments or a templated resource’s URI variables) and `ctx.connectors` are **symbolic**: reference them to record a flow. Recording is not execution, so never branch on their runtime values with native `if` — use `when(...)`.',
112
+ '',
113
+ '### Resource',
114
+ '',
115
+ '`resource(name, { uri, title?, description?, mimeType?, fulfil })`. `fulfil` returns `{ contents: [{ uri, mimeType, text }] }`. Use a fixed URI for a constant document, or a `{var}` template whose variable arrives on `ctx.input`.',
116
+ '',
117
+ '```ts',
118
+ "import { resource } from '@noodleseed/one';",
119
+ '',
120
+ '// Fixed-URI resource: one constant document the model can read.',
121
+ "resource('changelog', {",
122
+ " uri: 'docs://changelog',",
123
+ " title: 'Changelog',",
124
+ " mimeType: 'text/markdown',",
125
+ ' fulfil: () => ({',
126
+ ' contents: [',
127
+ " { uri: 'docs://changelog', mimeType: 'text/markdown', text: 'Changelog: 1.0.0 first release' },",
128
+ ' ],',
129
+ ' }),',
130
+ '});',
131
+ '',
132
+ '// {var} URI-template resource: the URI variable arrives on ctx.input (a symbolic ref).',
133
+ "resource('ticket', {",
134
+ " uri: 'tickets://{id}',",
135
+ " title: 'Support ticket',",
136
+ " mimeType: 'text/markdown',",
137
+ ' fulfil: (ctx) => ({',
138
+ ' contents: [',
139
+ " { uri: `tickets://${ctx.input.id}`, mimeType: 'text/markdown', text: `Ticket ${ctx.input.id}` },",
140
+ ' ],',
141
+ ' }),',
142
+ '});',
143
+ '```',
144
+ '',
145
+ '### Prompt',
146
+ '',
147
+ "`prompt(name, { title?, description?, arguments?, fulfil })`. `arguments` is a Zod object (each key becomes a `prompts/list` descriptor) or an explicit `[{ name, description?, required? }]` list. `fulfil` returns `{ messages: [{ role, content: { type: 'text', text } }] }`; supplied argument values arrive on `ctx.input`.",
148
+ '',
149
+ '```ts',
150
+ "import { prompt, z } from '@noodleseed/one';",
151
+ '',
152
+ "prompt('summarize_ticket', {",
153
+ " title: 'Summarize ticket',",
154
+ " description: 'Draft a short summary of a support ticket.',",
155
+ ' // A Zod object: each key becomes a prompts/list descriptor (or pass [{ name, description?, required? }]).',
156
+ ' arguments: z.object({',
157
+ " ticket_id: z.string().describe('Ticket to summarize'),",
158
+ " tone: z.enum(['concise', 'detailed']).default('concise'),",
159
+ ' }),',
160
+ ' // Argument values arrive on ctx.input; return the prompts/get messages shape.',
161
+ ' fulfil: (ctx) => ({',
162
+ ' messages: [',
163
+ ' {',
164
+ " role: 'user',",
165
+ ' content: {',
166
+ " type: 'text',",
167
+ ' text: `Summarize ticket ${ctx.input.ticket_id} in a ${ctx.input.tone} tone.`,',
168
+ ' },',
169
+ ' },',
170
+ ' ],',
171
+ ' }),',
172
+ '});',
173
+ '```',
174
+ '',
175
+ '### Non-trivial tool: ctx connectors, annotations, visibility, async',
176
+ '',
177
+ "`ctx` is `{ input, user, connectors }`. Bind connectors with `use` on the server, then call one inside `fulfil` to record a step. `annotations.readOnly()` / `annotations.action()` set the tool hints; `visibility` defaults to `['model', 'app']` — set `['app']` to hide a helper from the model. `fulfil` may be `async` (the compiler awaits it while recording).",
178
+ '',
179
+ '```ts',
180
+ "import { annotations, connector, server, tool, z } from '@noodleseed/one';",
181
+ '',
182
+ '// A tool-facing HTTP connector, bound to the server via `use`, reachable as ctx.connectors.crm.',
183
+ "const crm = connector('crm')",
184
+ " .version('1.0.0')",
185
+ ' .http({',
186
+ " baseUrl: 'https://crm.example.com',",
187
+ " allowedOrigins: ['https://crm.example.com'],",
188
+ ' operations: {',
189
+ ' get_ticket: {',
190
+ " type: 'read',",
191
+ " method: 'GET',",
192
+ " path: '/tickets',",
193
+ " query: ['id'],",
194
+ " input: { id: { type: 'string', required: true } },",
195
+ " output: { subject: { type: 'string' }, status: { type: 'string' } },",
196
+ " response: { subject: '${response.subject}', status: '${response.status}' },",
197
+ ' },',
198
+ ' },',
199
+ ' });',
200
+ '',
201
+ "export default server('support', { title: 'Support', version: '1.0.0', use: { crm } }, [",
202
+ " tool('get_ticket', {",
203
+ " description: 'Fetch a support ticket by id.',",
204
+ ' input: z.object({ id: z.string() }),',
205
+ ' output: z.object({ subject: z.string(), status: z.string() }),',
206
+ ' annotations: annotations.readOnly(), // read-only hint for hosts',
207
+ " visibility: ['model', 'app'], // default; use ['app'] to hide the tool from the model",
208
+ ' // ctx is { input, user, connectors }. A connector call records one flow step (a Ref) —',
209
+ ' // recording is not execution, so never branch on the result with native if (use when).',
210
+ ' fulfil: ({ input, connectors }) => {',
211
+ ' const found = connectors.crm.get_ticket({ id: input.id });',
212
+ ' return { subject: found.subject, status: found.status };',
213
+ ' },',
214
+ ' }),',
215
+ " tool('echo', {",
216
+ " description: 'Echo text back.',",
217
+ ' input: z.object({ text: z.string() }),',
218
+ ' output: z.object({ echo: z.string() }),',
219
+ ' annotations: annotations.action(), // mutating / world-affecting hint',
220
+ ' // fulfil may be async — the compiler awaits it while recording the flow.',
221
+ ' fulfil: async ({ input }) => ({ echo: input.text }),',
222
+ ' }),',
223
+ ']);',
224
+ '```',
225
+ ];
226
+ const SDK_AUTHORING_SIGNATURES = [
227
+ '## Authoring signatures',
228
+ '',
229
+ '- `server(name, options, definitions)` — `options` commonly includes `title`, `version`, `instructions`, `branding`, `auth`, `use`, `provides`, `state`, and `handoff`; `definitions` is the array of tools/resources/prompts/widgets.',
230
+ '- `tool(name, { description, input, output, annotations?, fulfil })` — `input`/`output` are Zod schemas; `fulfil({ input, connectors, user })` returns data matching `output`.',
231
+ '- `toolWithWidget(name, { description, input, output, fulfil, view })` — same as `tool`, plus `view: { component, entry }` for a React widget.',
232
+ '- `toolForWidget(name, { input, output, fulfil })` — helper tool for widget actions; hidden from the model.',
233
+ '- `resource(name, { uri, description?, mimeType?, fulfil })` and `prompt(name, { description?, arguments?, fulfil })` expose MCP resources/prompts.',
234
+ '- `widget(name, { title, view, csp?, domain?, permissions? })` declares reusable view metadata; `asset("./path")` packages local files.',
235
+ '- `customerAuth.*(...)` belongs in `server` options when deployed customer callers need verified identity; inspect `examples/customer-auth` or `examples/sharepoint` before using it.',
236
+ '- `state` defines durable widget state handles; `handoff` declares allowed external domains for safe host handoff.',
237
+ ];
96
238
  export function renderSdkSurfaceReference() {
97
239
  const remaining = new Set(SDK_EXPORTS);
98
240
  const sections = [];
@@ -102,10 +244,10 @@ export function renderSdkSurfaceReference() {
102
244
  continue;
103
245
  for (const name of members)
104
246
  remaining.delete(name);
105
- sections.push(`## ${group.label}`, '', ...members.map((name) => `- ${SDK_NOTES[name] ?? `\`${name}\``}`), '');
247
+ sections.push(`### ${group.label}`, '', ...members.map((name) => `- ${SDK_NOTES[name] ?? `\`${name}\``}`), '');
106
248
  }
107
249
  if (remaining.size > 0) {
108
- sections.push('## Other', '', ...[...remaining].map((name) => `- ${SDK_NOTES[name] ?? `\`${name}\``}`), '');
250
+ sections.push('### Other', '', ...[...remaining].map((name) => `- ${SDK_NOTES[name] ?? `\`${name}\``}`), '');
109
251
  }
110
252
  return [
111
253
  '# @noodleseed/one SDK surface',
@@ -113,18 +255,18 @@ export function renderSdkSurfaceReference() {
113
255
  'Import these from `@noodleseed/one`. They are declarative builders that emit manifest data — do not hand-author the manifest or runtime artifacts. React view helpers come from `@noodleseed/one/react` (`generateHelpers`); the hook surface is documented in `widgets-and-apps.md`.',
114
256
  'Platform helper connectors are explicit subpath imports from `@noodleseed/one/platform` (`noodlePlatform`, `noodlePlatformCatalog`) when an app needs first-party hosted state APIs.',
115
257
  '',
116
- ...sections,
117
- '## Authoring signatures',
258
+ '## Contents',
118
259
  '',
119
- '- `server(name, options, definitions)` — `options` commonly includes `title`, `version`, `instructions`, `branding`, `auth`, `use`, `provides`, `state`, and `handoff`; `definitions` is the array of tools/resources/prompts/widgets.',
120
- '- `tool(name, { description, input, output, annotations?, fulfil })` — `input`/`output` are Zod schemas; `fulfil({ input, connectors, user })` returns data matching `output`.',
121
- '- `toolWithWidget(name, { description, input, output, fulfil, view })` — same as `tool`, plus `view: { component, entry }` for a React widget.',
122
- '- `toolForWidget(name, { input, output, fulfil })` — helper tool for widget actions; hidden from the model.',
123
- '- `resource(name, { uri, description?, mimeType?, fulfil })` and `prompt(name, { description?, arguments?, fulfil })` expose MCP resources/prompts.',
124
- '- `widget(name, { title, view, csp?, domain?, permissions? })` declares reusable view metadata; `asset("./path")` packages local files.',
125
- '- `customerAuth.*(...)` belongs in `server` options when deployed customer callers need verified identity; inspect `examples/customer-auth` or `examples/sharepoint` before using it.',
126
- '- `state` defines durable widget state handles; `handoff` declares allowed external domains for safe host handoff.',
260
+ '- Exports by area',
261
+ '- Authoring signatures',
262
+ '- Recipes',
127
263
  '',
264
+ '## Exports by area',
265
+ '',
266
+ ...sections,
267
+ ...SDK_AUTHORING_SIGNATURES,
268
+ '',
269
+ ...SDK_RECIPES,
128
270
  ]
129
271
  .join('\n')
130
272
  .trimEnd();
@@ -165,6 +307,56 @@ export function renderCliCommandsReference() {
165
307
  .trimEnd();
166
308
  }
167
309
  // ----------------------------------------------------------------------------
310
+ // references/agent-contract.md (CURATED)
311
+ // ----------------------------------------------------------------------------
312
+ export function renderAgentContractReference() {
313
+ return [
314
+ '# Agent contract: --json, exit codes, output modes',
315
+ '',
316
+ 'The cold-agent-path commands (`init`, `validate`, `test`, `check`, `tools`/`resources`/`prompts`, `deploy`, `metrics`, `events`, `agents`) are agent-native and return the envelope below; hosted admin/ops commands (`status`, `inspect`, `smoke`, `logs`, `update`) are still being normalized. Decide what to do next by parsing machine state — do not scrape human prose.',
317
+ '',
318
+ '## Contents',
319
+ '',
320
+ '- Response envelope',
321
+ '- Exit codes',
322
+ '- Output modes',
323
+ '- Repair loop',
324
+ '',
325
+ '## Response envelope',
326
+ '',
327
+ 'A `--json` command returns exactly one JSON object:',
328
+ '',
329
+ '- **Success**: `{ ok: true, data, warnings? }` — `data` is the command payload; `warnings?` is an optional array of non-fatal notes.',
330
+ '- **Failure**: `{ ok: false, error: { code, message, cause?, fix, next, requestId? } }` — `code` is the stable machine code to branch on, `message` is human text, `cause?` is the underlying error, `fix` states the correction, `next` names the command to run next, `requestId?` correlates a hosted call.',
331
+ '- **Field errors** carry a dotted `path`: multi-error commands (e.g. `noodle validate`) nest them under `error.errors[]`, each `{ code, path, message }`. The top-level `error` still carries `code`/`message`/`fix`/`next`; the per-field `path`s live in `error.errors[]`.',
332
+ '- **Repair prose is isolated**: ready-to-apply repair text appears only under `error.fixPrompt` (surfaced by `--fix-prompt`), never mixed into `message` or `data`.',
333
+ '',
334
+ '## Exit codes',
335
+ '',
336
+ 'Branch on the process exit code before parsing the body:',
337
+ '',
338
+ mdTable(['Code', 'Meaning'], [
339
+ ['`0`', 'ok'],
340
+ ['`1`', 'failure (command ran, the work failed)'],
341
+ ['`2`', 'usage (bad flags or arguments)'],
342
+ ['`3`', 'auth (login or permission required)'],
343
+ ['`4`', 'unreachable (service or network)'],
344
+ ['`5`', 'mcp/tool-call error (a `tools`/`resources`/`prompts`/`test` smoke call failed)'],
345
+ ]),
346
+ '',
347
+ '## Output modes',
348
+ '',
349
+ 'Two kinds of output — never mix them:',
350
+ '',
351
+ '- `--json` — **machine state**: the envelope above. Use it to decide what to do next.',
352
+ '- `--fix-prompt` / `--agent-output` (aliases) — **agent-readable text**, not the envelope: a ready-to-apply repair prompt for authoring commands (`validate`/`test`/`check`), or an operational `health` verdict (`ok`/`attention`) with `attention[]` next-commands for ops commands (`metrics`/`doctor`/`alerts`). Use it to author a fix or judge a running deployment.',
353
+ '',
354
+ '## Repair loop',
355
+ '',
356
+ 'On a `validate` failure: parse `error.code` + `path`, fix exactly that field in `src/server.ts`, then re-run `noodle validate --json`. Never freeform re-edit. Repeat until `ok: true`, then `noodle test --json`.',
357
+ ].join('\n');
358
+ }
359
+ // ----------------------------------------------------------------------------
168
360
  // references/compile-errors.md (GENERATED codes + curated fixes)
169
361
  // ----------------------------------------------------------------------------
170
362
  export function renderCompileErrorsReference() {
@@ -175,39 +367,11 @@ export function renderCompileErrorsReference() {
175
367
  '## Contents',
176
368
  '',
177
369
  '- The repair loop',
178
- '- JSON shape',
179
- '- Fix prompt',
180
370
  '- Error codes',
181
371
  '',
182
372
  '## The repair loop',
183
373
  '',
184
- 'Run `noodle validate` (add `--json` for machine-readable output, `--fix-prompt` for an agent repair prompt). Each error carries a `code`, a dotted `path` to the offending field, and a `message`; many also carry `expected`/`got`, `didYouMean`/`suggestions`, and a `docAnchor`. Fix the specific error the `path` locates, then re-validate. Do not freeform re-edit. Once `noodle validate` passes, run `noodle test`, then `noodle dev`.',
185
- '',
186
- '## JSON shape',
187
- '',
188
- 'Use `noodle validate --json` in automated repair loops. Treat `errors[]` as the work queue and change only the cited file/path before re-running validation.',
189
- '',
190
- '```json',
191
- '{',
192
- ' "ok": false,',
193
- ' "errors": [',
194
- ' {',
195
- ' "code": "unknown_operation",',
196
- ' "path": "tools.search.fulfil.steps.0.operation",',
197
- ' "message": "Unknown connector operation.",',
198
- ' "expected": "operation declared on connector alias `crm`",',
199
- ' "got": "crm.find_customer",',
200
- ' "didYouMean": "crm.findCustomer",',
201
- ' "suggestions": ["crm.findCustomer"],',
202
- ' "docAnchor": "connectors.operations"',
203
- ' }',
204
- ' ]',
205
- '}',
206
- '```',
207
- '',
208
- '## Fix prompt',
209
- '',
210
- '`noodle validate --fix-prompt` prints a compact agent repair prompt with the same structured errors. Use it when delegating a repair pass, but still inspect the resulting code and re-run `noodle validate --json`.',
374
+ 'Run `noodle validate` (add `--json` for the machine-readable envelope, `--fix-prompt` for an agent repair prompt). On failure the envelope is `{ok:false,error:{code,message,fix,next,errors:[{code,path,message}]}}`: each entry in `error.errors[]` carries a `code`, a dotted `path` to the offending field, and a `message`; many also carry `expected`/`got`, `didYouMean`/`suggestions`, and a `docAnchor` (the full envelope is in `agent-contract.md`). Fix the specific error the `path` locates, then re-validate. Do not freeform re-edit. Once `noodle validate` passes, run `noodle test`, then `noodle dev`.',
211
375
  '',
212
376
  '## Error codes',
213
377
  '',
@@ -222,6 +386,7 @@ export function renderCompileErrorsReference() {
222
386
  export const SKILL_REFERENCES = [
223
387
  { relPath: 'references/sdk-surface.md', render: renderSdkSurfaceReference },
224
388
  { relPath: 'references/cli-commands.md', render: renderCliCommandsReference },
389
+ { relPath: 'references/agent-contract.md', render: renderAgentContractReference },
225
390
  { relPath: 'references/compile-errors.md', render: renderCompileErrorsReference },
226
391
  { relPath: 'references/authoring-workflow.md', render: renderAuthoringWorkflowReference },
227
392
  { relPath: 'references/widgets-and-apps.md', render: renderWidgetsAndAppsReference },
@@ -1 +1 @@
1
- {"version":3,"file":"skill-content.js","sourceRoot":"","sources":["../src/skill-content.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skill-content.js","sourceRoot":"","sources":["../src/skill-content.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"skill-operations-refs.d.ts","sourceRoot":"","sources":["../src/skill-operations-refs.ts"],"names":[],"mappings":"AASA,wBAAgB,0BAA0B,IAAI,MAAM,CA0CnD;AAMD,wBAAgB,8BAA8B,IAAI,MAAM,CAiFvD;AAMD,wBAAgB,2BAA2B,IAAI,MAAM,CA8DpD;AAMD,wBAAgB,yBAAyB,IAAI,MAAM,CAkClD"}
1
+ {"version":3,"file":"skill-operations-refs.d.ts","sourceRoot":"","sources":["../src/skill-operations-refs.ts"],"names":[],"mappings":"AASA,wBAAgB,0BAA0B,IAAI,MAAM,CA0CnD;AAMD,wBAAgB,8BAA8B,IAAI,MAAM,CAiFvD;AAMD,wBAAgB,2BAA2B,IAAI,MAAM,CAkFpD;AAMD,wBAAgB,yBAAyB,IAAI,MAAM,CAkClD"}
@@ -145,10 +145,12 @@ export function renderDeployAndOpsReference() {
145
145
  '- Authenticate',
146
146
  '- Link and target',
147
147
  '- Deploy and inspect',
148
+ '- Connect into a host',
148
149
  '- Access modes',
149
150
  '- Org and members',
150
151
  '- Config and observability',
151
152
  '- Agent-safe CLI recipes',
153
+ '- Analytics',
152
154
  '',
153
155
  '## Authenticate',
154
156
  '',
@@ -162,6 +164,24 @@ export function renderDeployAndOpsReference() {
162
164
  '',
163
165
  '`noodle deploy` deploys the server. Then `noodle open` (latest URL), `noodle status`, `noodle inspect` (metadata, no secrets), `noodle smoke` (readiness diagnostics), and `noodle rollback <deploymentId>` to revert.',
164
166
  '',
167
+ '## Connect into a host',
168
+ '',
169
+ 'Once deployed, register the server as a tool in a host with `noodle connect <host>` (`claude-code`, `codex`, `chatgpt`, `cursor`, `vscode`, `claude`, `inspector`) — it prints the exact config to paste.',
170
+ '',
171
+ "- **Claude Code / Claude Desktop** (verified) — add the `mcpServers` block, or one-shot `claude mcp add-json noodle-server '<json>'`:",
172
+ '',
173
+ '```json',
174
+ '{',
175
+ ' "mcpServers": {',
176
+ ' "noodle-server": { "type": "https", "url": "https://<app>.mcp.noodleseed.dev" }',
177
+ ' }',
178
+ '}',
179
+ '```',
180
+ '',
181
+ "- **Codex / Cursor / VS Code** — the same `mcpServers` block is emitted as a starting point (these hosts' config formats are not officially documented). Wiring a deployed Noodle server into Codex means registering that block in Codex's MCP config.",
182
+ "- **ChatGPT / Claude.ai** — no config file: open the host's Settings → Connectors → Add custom connector, paste the MCP URL, then authenticate.",
183
+ '- `noodle connect codex|claude-code --write` writes the project-local agent files (only these two targets).',
184
+ '',
165
185
  '## Access modes',
166
186
  '',
167
187
  '`noodle access set owner-only|org-members|authenticated|customers` controls who can call the deployed server. Hosted access is identity-based; never add static data-plane keys.',
@@ -1 +1 @@
1
- {"version":3,"file":"skill-operations-refs.js","sourceRoot":"","sources":["../src/skill-operations-refs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skill-operations-refs.js","sourceRoot":"","sources":["../src/skill-operations-refs.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@noodle-borg/agent-kit",
3
- "version": "0.9.0",
3
+ "version": "0.11.0",
4
4
  "private": true,
5
5
  "type": "module",
6
6
  "engines": {
@@ -6,8 +6,8 @@ export { type ComputeHost, type ComputeLimits, type ComputeOperationOptions, Con
6
6
  export { type CustomerAuth, type CustomerAuthClaimMap, customerAuth } from './customer-auth.js';
7
7
  export { type HandoffPurpose, type HandoffSession, type HandoffStateHandleLink, handoffSession, } from './handoff.js';
8
8
  export { noodlePlatform, noodlePlatformCatalog } from './platform.js';
9
- export type { CallToolState, GeneratedReactHelpers, LayoutState, ToolResult } from './react.js';
10
- export { generateHelpers } from './react.js';
9
+ export type { AppFlow, AppFlowConfig, AppFlowOverlay, AppFlowSnapshot, AppFlowViewParams, CallToolState, ExpandButtonProps, FullscreenShellProps, GeneratedReactHelpers, HandoffController, HandoffState, InlineCardProps, InlineCarouselProps, InlineListItem, InlineListProps, LayoutState, StoreHookResult, ToolResult, ToolStatus, } from './react.js';
10
+ export { ActionBar, AppShell, AsyncBoundary, ChoiceGroup, createViewStore, DataCard, DataList, EmptyState, ErrorState, ExpandButton, Field, FullscreenShell, generateHelpers, HandoffButton, InlineCard, InlineCarousel, InlineList, LoadingState, Overlay, QuantityStepper, ShellHeader, ShellNav, StatusBadge, SubmitButton, useAppFlow, useCallTool, useHandoff, useLayout, useOpenExternal, useRequestDisplayMode, useSendFollowUpMessage, useToolInfo, useViewState, View, ViewStack, } from './react.js';
11
11
  export { type Cond, type ConnectorClient, type Ref, type SymbolicScope, when, } from './recording.js';
12
12
  export { annotations, asset, type CanonicalToolHandler, type CanonicalToolOptions, type CanonicalWidgetOptions, isServerDefinition, type PromptArgument, type PromptOptions, prompt, type ResourceContext, type ResourceOptions, resource, type ServerComponent, type ServerDefinition, type ServerOptions, server, type ToolContext, type ToolForWidgetOptions, type ToolOptions, type ToolWithWidgetOptions, tool, toolForWidget, toolWithWidget, type WidgetCsp, type WidgetOptions, type WidgetPermissionGrant, type WidgetPermissions, widget, widgetResult, } from './server.js';
13
13
  export type { ConnectorFile, HttpConnectorDef };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACnF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,YAAY,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EACL,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,MAAM,EACN,QAAQ,GACT,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,uBAAuB,EAC5B,gBAAgB,EAChB,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,YAAY,EACjB,SAAS,EACT,KAAK,oBAAoB,GAC1B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,oBAAoB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAChG,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,sBAAsB,EAC3B,cAAc,GACf,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtE,YAAY,EAAE,aAAa,EAAE,qBAAqB,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAChG,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EACL,KAAK,IAAI,EACT,KAAK,eAAe,EACpB,KAAK,GAAG,EACR,KAAK,aAAa,EAClB,IAAI,GACL,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,WAAW,EACX,KAAK,EACL,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,kBAAkB,EAClB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,MAAM,EACN,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,QAAQ,EACR,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,MAAM,EACN,KAAK,WAAW,EAChB,KAAK,oBAAoB,EACzB,KAAK,WAAW,EAChB,KAAK,qBAAqB,EAC1B,IAAI,EACJ,aAAa,EACb,cAAc,EACd,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,MAAM,EACN,YAAY,GACb,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,CAAC;AAChD,OAAO,EAAE,CAAC,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AACnF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,YAAY,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EACL,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,MAAM,EACN,QAAQ,GACT,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,uBAAuB,EAC5B,gBAAgB,EAChB,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,YAAY,EACjB,SAAS,EACT,KAAK,oBAAoB,GAC1B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,oBAAoB,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAChG,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,sBAAsB,EAC3B,cAAc,GACf,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtE,YAAY,EACV,OAAO,EACP,aAAa,EACb,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,EACjB,YAAY,EACZ,eAAe,EACf,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,WAAW,EACX,eAAe,EACf,UAAU,EACV,UAAU,GACX,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,SAAS,EACT,QAAQ,EACR,aAAa,EACb,WAAW,EACX,eAAe,EACf,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,UAAU,EACV,YAAY,EACZ,KAAK,EACL,eAAe,EACf,eAAe,EACf,aAAa,EACb,UAAU,EACV,cAAc,EACd,UAAU,EACV,YAAY,EACZ,OAAO,EACP,eAAe,EACf,WAAW,EACX,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,UAAU,EACV,WAAW,EACX,UAAU,EACV,SAAS,EACT,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,WAAW,EACX,YAAY,EACZ,IAAI,EACJ,SAAS,GACV,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,KAAK,IAAI,EACT,KAAK,eAAe,EACpB,KAAK,GAAG,EACR,KAAK,aAAa,EAClB,IAAI,GACL,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,WAAW,EACX,KAAK,EACL,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,kBAAkB,EAClB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,MAAM,EACN,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,QAAQ,EACR,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,MAAM,EACN,KAAK,WAAW,EAChB,KAAK,oBAAoB,EACzB,KAAK,WAAW,EAChB,KAAK,qBAAqB,EAC1B,IAAI,EACJ,aAAa,EACb,cAAc,EACd,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,MAAM,EACN,YAAY,GACb,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,CAAC;AAChD,OAAO,EAAE,CAAC,EAAE,CAAC"}
@@ -4,7 +4,7 @@ export { ConnectorBuilder, connector, } from './connectors.js';
4
4
  export { customerAuth } from './customer-auth.js';
5
5
  export { handoffSession, } from './handoff.js';
6
6
  export { noodlePlatform, noodlePlatformCatalog } from './platform.js';
7
- export { generateHelpers } from './react.js';
7
+ export { ActionBar, AppShell, AsyncBoundary, ChoiceGroup, createViewStore, DataCard, DataList, EmptyState, ErrorState, ExpandButton, Field, FullscreenShell, generateHelpers, HandoffButton, InlineCard, InlineCarousel, InlineList, LoadingState, Overlay, QuantityStepper, ShellHeader, ShellNav, StatusBadge, SubmitButton, useAppFlow, useCallTool, useHandoff, useLayout, useOpenExternal, useRequestDisplayMode, useSendFollowUpMessage, useToolInfo, useViewState, View, ViewStack, } from './react.js';
8
8
  export { when, } from './recording.js';
9
9
  export { annotations, asset, isServerDefinition, prompt, resource, server, tool, toolForWidget, toolWithWidget, widget, widgetResult, } from './server.js';
10
10
  export { z };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAGL,MAAM,EACN,QAAQ,GACT,MAAM,aAAa,CAAC;AACrB,OAAO,EAIL,gBAAgB,EAKhB,SAAS,GAEV,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAgD,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAChG,OAAO,EAIL,cAAc,GACf,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAEtE,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAKL,IAAI,GACL,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,WAAW,EACX,KAAK,EAIL,kBAAkB,EAGlB,MAAM,EAGN,QAAQ,EAIR,MAAM,EAKN,IAAI,EACJ,aAAa,EACb,cAAc,EAKd,MAAM,EACN,YAAY,GACb,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,CAAC,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAGL,MAAM,EACN,QAAQ,GACT,MAAM,aAAa,CAAC;AACrB,OAAO,EAIL,gBAAgB,EAKhB,SAAS,GAEV,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAgD,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAChG,OAAO,EAIL,cAAc,GACf,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAsBtE,OAAO,EACL,SAAS,EACT,QAAQ,EACR,aAAa,EACb,WAAW,EACX,eAAe,EACf,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,UAAU,EACV,YAAY,EACZ,KAAK,EACL,eAAe,EACf,eAAe,EACf,aAAa,EACb,UAAU,EACV,cAAc,EACd,UAAU,EACV,YAAY,EACZ,OAAO,EACP,eAAe,EACf,WAAW,EACX,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,UAAU,EACV,WAAW,EACX,UAAU,EACV,SAAS,EACT,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,WAAW,EACX,YAAY,EACZ,IAAI,EACJ,SAAS,GACV,MAAM,YAAY,CAAC;AACpB,OAAO,EAKL,IAAI,GACL,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,WAAW,EACX,KAAK,EAIL,kBAAkB,EAGlB,MAAM,EAGN,QAAQ,EAIR,MAAM,EAKN,IAAI,EACJ,aAAa,EACb,cAAc,EAKd,MAAM,EACN,YAAY,GACb,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,CAAC,EAAE,CAAC"}
@@ -0,0 +1,33 @@
1
+ export type AppFlowViewParams = Readonly<Record<string, unknown>>;
2
+ export type AppFlowOverlay<ViewName extends string> = {
3
+ readonly view: ViewName;
4
+ readonly mode: 'modal' | 'sheet' | 'detail';
5
+ readonly params: AppFlowViewParams;
6
+ };
7
+ export type AppFlowConfig<ViewName extends string> = {
8
+ readonly key?: string;
9
+ readonly initialView: ViewName;
10
+ readonly views?: readonly ViewName[];
11
+ };
12
+ export type AppFlowSnapshot<ViewName extends string> = {
13
+ readonly activeView: ViewName;
14
+ readonly params: AppFlowViewParams;
15
+ readonly viewStack: readonly ViewName[];
16
+ readonly overlayStack: readonly AppFlowOverlay<ViewName>[];
17
+ readonly refreshToken: number;
18
+ };
19
+ export type AppFlow<ViewName extends string> = AppFlowSnapshot<ViewName> & {
20
+ readonly canGoBack: boolean;
21
+ readonly navigate: (view: ViewName, params?: AppFlowViewParams) => void;
22
+ readonly replace: (view: ViewName, params?: AppFlowViewParams) => void;
23
+ readonly back: () => void;
24
+ readonly reset: (view?: ViewName, params?: AppFlowViewParams) => void;
25
+ readonly refresh: () => void;
26
+ readonly openOverlay: (view: ViewName, options?: {
27
+ readonly mode?: AppFlowOverlay<ViewName>['mode'];
28
+ readonly params?: AppFlowViewParams;
29
+ }) => void;
30
+ readonly closeOverlay: () => void;
31
+ };
32
+ export declare function useAppFlow<ViewName extends string>(config: AppFlowConfig<ViewName>): AppFlow<ViewName>;
33
+ //# sourceMappingURL=app-flow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-flow.d.ts","sourceRoot":"","sources":["../../src/react/app-flow.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,iBAAiB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;AAElE,MAAM,MAAM,cAAc,CAAC,QAAQ,SAAS,MAAM,IAAI;IACpD,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC5C,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,aAAa,CAAC,QAAQ,SAAS,MAAM,IAAI;IACnD,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC;IAC/B,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,QAAQ,EAAE,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,eAAe,CAAC,QAAQ,SAAS,MAAM,IAAI;IACrD,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACnC,QAAQ,CAAC,SAAS,EAAE,SAAS,QAAQ,EAAE,CAAC;IACxC,QAAQ,CAAC,YAAY,EAAE,SAAS,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;IAC3D,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,OAAO,CAAC,QAAQ,SAAS,MAAM,IAAI,eAAe,CAAC,QAAQ,CAAC,GAAG;IACzE,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACxE,QAAQ,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACvE,QAAQ,CAAC,IAAI,EAAE,MAAM,IAAI,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACtE,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,CACpB,IAAI,EAAE,QAAQ,EACd,OAAO,CAAC,EAAE;QACR,QAAQ,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;QACjD,QAAQ,CAAC,MAAM,CAAC,EAAE,iBAAiB,CAAC;KACrC,KACE,IAAI,CAAC;IACV,QAAQ,CAAC,YAAY,EAAE,MAAM,IAAI,CAAC;CACnC,CAAC;AAUF,wBAAgB,UAAU,CAAC,QAAQ,SAAS,MAAM,EAChD,MAAM,EAAE,aAAa,CAAC,QAAQ,CAAC,GAC9B,OAAO,CAAC,QAAQ,CAAC,CAkHnB"}