@alpacakit/channels 0.1.0-beta.37 → 0.2.0-beta.2

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 (99) hide show
  1. package/README.md +204 -723
  2. package/dist/binding-compiler.d.ts +12 -2
  3. package/dist/binding-compiler.d.ts.map +1 -1
  4. package/dist/binding-compiler.js +25 -0
  5. package/dist/cli-coercion.d.ts +1 -1
  6. package/dist/cli-coercion.d.ts.map +1 -1
  7. package/dist/cli-coercion.js +14 -29
  8. package/dist/cli-compiler.d.ts +4 -17
  9. package/dist/cli-compiler.d.ts.map +1 -1
  10. package/dist/cli-compiler.js +78 -39
  11. package/dist/cli-help-projection.d.ts.map +1 -1
  12. package/dist/cli-help-projection.js +41 -36
  13. package/dist/cli-model.d.ts +50 -65
  14. package/dist/cli-model.d.ts.map +1 -1
  15. package/dist/cli-model.js +26 -34
  16. package/dist/cli-tree.d.ts +6 -3
  17. package/dist/cli-tree.d.ts.map +1 -1
  18. package/dist/cli-tree.js +161 -387
  19. package/dist/cli.d.ts +1 -5
  20. package/dist/cli.d.ts.map +1 -1
  21. package/dist/cli.js +1 -5
  22. package/dist/codecs.d.ts +20 -18
  23. package/dist/codecs.d.ts.map +1 -1
  24. package/dist/codecs.js +21 -31
  25. package/dist/contract.d.ts.map +1 -1
  26. package/dist/contract.js +8 -3
  27. package/dist/definition-error.d.ts +5 -0
  28. package/dist/definition-error.d.ts.map +1 -0
  29. package/dist/definition-error.js +8 -0
  30. package/dist/factory.d.ts +25 -11
  31. package/dist/factory.d.ts.map +1 -1
  32. package/dist/factory.js +28 -18
  33. package/dist/http-compiler.d.ts +15 -0
  34. package/dist/http-compiler.d.ts.map +1 -0
  35. package/dist/http-compiler.js +37 -0
  36. package/dist/http-model.d.ts +42 -0
  37. package/dist/http-model.d.ts.map +1 -0
  38. package/dist/http-model.js +20 -0
  39. package/dist/http-tree.d.ts +7 -0
  40. package/dist/http-tree.d.ts.map +1 -0
  41. package/dist/http-tree.js +181 -0
  42. package/dist/http.d.ts +3 -0
  43. package/dist/http.d.ts.map +1 -0
  44. package/dist/http.js +2 -0
  45. package/dist/index.d.ts +2 -1
  46. package/dist/index.d.ts.map +1 -1
  47. package/dist/index.js +1 -1
  48. package/dist/input-compiler.d.ts +13 -0
  49. package/dist/input-compiler.d.ts.map +1 -0
  50. package/dist/input-compiler.js +122 -0
  51. package/dist/introspection.d.ts +1 -1
  52. package/dist/introspection.d.ts.map +1 -1
  53. package/dist/introspection.js +30 -16
  54. package/dist/mcp.d.ts +25 -24
  55. package/dist/mcp.d.ts.map +1 -1
  56. package/dist/mcp.js +87 -65
  57. package/dist/model.d.ts +44 -42
  58. package/dist/model.d.ts.map +1 -1
  59. package/dist/model.js +44 -9
  60. package/dist/owned.d.ts +12 -0
  61. package/dist/owned.d.ts.map +1 -0
  62. package/dist/owned.js +61 -0
  63. package/dist/registration.d.ts +41 -0
  64. package/dist/registration.d.ts.map +1 -0
  65. package/dist/registration.js +14 -0
  66. package/dist/runtime.d.ts +2 -35
  67. package/dist/runtime.d.ts.map +1 -1
  68. package/dist/runtime.js +2 -127
  69. package/dist/schema.d.ts +11 -8
  70. package/dist/schema.d.ts.map +1 -1
  71. package/dist/schema.js +110 -47
  72. package/dist/string-coercion.d.ts +4 -0
  73. package/dist/string-coercion.d.ts.map +1 -0
  74. package/dist/string-coercion.js +24 -0
  75. package/dist/tree-internal.d.ts +4 -2
  76. package/dist/tree-internal.d.ts.map +1 -1
  77. package/dist/tree-internal.js +5 -2
  78. package/dist/values.d.ts +1 -6
  79. package/dist/values.d.ts.map +1 -1
  80. package/dist/values.js +1 -6
  81. package/examples/README.md +28 -0
  82. package/examples/book-search.ts +151 -0
  83. package/examples/greeting.ts +193 -0
  84. package/package.json +9 -4
  85. package/dist/cli-application.d.ts +0 -40
  86. package/dist/cli-application.d.ts.map +0 -1
  87. package/dist/cli-application.js +0 -90
  88. package/dist/cli-executor.d.ts +0 -25
  89. package/dist/cli-executor.d.ts.map +0 -1
  90. package/dist/cli-executor.js +0 -44
  91. package/dist/cli-presentation.d.ts +0 -38
  92. package/dist/cli-presentation.d.ts.map +0 -1
  93. package/dist/cli-presentation.js +0 -301
  94. package/dist/cli-result-envelope.d.ts +0 -104
  95. package/dist/cli-result-envelope.d.ts.map +0 -1
  96. package/dist/cli-result-envelope.js +0 -137
  97. package/dist/cli-schema.d.ts +0 -4
  98. package/dist/cli-schema.d.ts.map +0 -1
  99. package/dist/cli-schema.js +0 -7
@@ -1,6 +1,7 @@
1
1
  import { type CLI_BOOLEAN_MODE, CLI_HELP_USAGE_KIND, type CLI_OPTION_KIND, CLI_OPTION_VALUE_MODE } from "./cli-values.js";
2
2
  import type { ParameterRequirementDescription } from "./introspection.js";
3
- import type { ChannelSegmentOverride, EntryChannelBinding, EntryTreeEndpoint } from "./model.js";
3
+ import type { ChannelSegmentOverride, EntryChannelBinding, RawValueMap, ValueShape } from "./model.js";
4
+ import type { InputPlan, Registration } from "./registration.js";
4
5
  import { CHANNEL } from "./values.js";
5
6
  export declare const CLI_ARG_KIND: {
6
7
  readonly option: "option";
@@ -10,14 +11,6 @@ export declare const CLI_VALUE_COERCION: {
10
11
  readonly json: "json";
11
12
  readonly jsonOrString: "json_or_string";
12
13
  };
13
- export declare const CLI_ROUTER_RESULT_KIND: {
14
- readonly resolved: "resolved";
15
- readonly unknownCommand: "unknown_command";
16
- readonly incompleteCommand: "incomplete_command";
17
- readonly invalidInput: "invalid_input";
18
- readonly invalidParameter: "invalid_parameter";
19
- readonly internalError: "internal_error";
20
- };
21
14
  export type CliBooleanMode = (typeof CLI_BOOLEAN_MODE)[keyof typeof CLI_BOOLEAN_MODE];
22
15
  export type CliOptionValueMode = (typeof CLI_OPTION_VALUE_MODE)[keyof typeof CLI_OPTION_VALUE_MODE];
23
16
  export type CliValueCoercion = (typeof CLI_VALUE_COERCION)[keyof typeof CLI_VALUE_COERCION];
@@ -131,11 +124,11 @@ type CliOptionParameterName<Bindings extends readonly CliArgBindingInput[]> = Ex
131
124
  export declare function bindCliEntry<const Bindings extends readonly CliArgBindingInput[]>(binding: {
132
125
  readonly parameters: Bindings;
133
126
  readonly help?: CliCommandHelpInput<CliOptionParameterName<Bindings>>;
134
- }): EntryChannelBinding<typeof CHANNEL.cli, Bindings[number]["parameterName"]>;
127
+ }): EntryChannelBinding<typeof CHANNEL.cli, CliEntryBinding<Bindings[number]["parameterName"]>>;
135
128
  export declare function overrideCliSegment(segment: {
136
129
  readonly token: string;
137
130
  readonly help?: CliGroupHelpInput;
138
- }): ChannelSegmentOverride;
131
+ }): ChannelSegmentOverride<typeof CHANNEL.cli, CliSegment>;
139
132
  type CliHelpOptionBase = {
140
133
  readonly parameterName: string;
141
134
  readonly flags: readonly CliOptionFlag[];
@@ -181,64 +174,56 @@ export type CliHelpSurface = {
181
174
  readonly examples: readonly CliHelpExample[];
182
175
  readonly subcommandHint: string | null;
183
176
  };
184
- export type CliHelpRenderContext = {
185
- /** Full selected command name, including the executable and command path. */
186
- readonly programName: string;
187
- /** Root executable name used to prefix authored invocation examples. */
188
- readonly executableName: string;
189
- /** Canonical CLI segment-token path for the supplied surface. */
190
- readonly path: CliCommandPath;
191
- readonly withDescription: boolean;
177
+ type CliParameterBase = {
178
+ readonly parameterName: string;
179
+ readonly description: string;
180
+ readonly requirement: ParameterRequirementDescription;
181
+ readonly shape: ValueShape;
182
+ readonly coercion: CliValueCoercion | null;
192
183
  };
193
- export type CliHelpRender = (surface: CliHelpSurface, context: CliHelpRenderContext) => string;
194
- export type CliHelpSurfaceLocation = {
195
- readonly surface: CliHelpSurface;
196
- readonly path: CliCommandPath;
184
+ export type CliParameterView = (CliParameterBase & {
185
+ readonly kind: typeof CLI_ARG_KIND.option;
186
+ readonly optionKind: typeof CLI_OPTION_KIND.booleanFlag;
187
+ readonly flags: readonly CliOptionFlag[];
188
+ readonly negativeFlags: readonly CliLongOptionFlag[];
189
+ readonly valueName: null;
190
+ readonly valueMode: null;
191
+ }) | (CliParameterBase & {
192
+ readonly kind: typeof CLI_ARG_KIND.option;
193
+ readonly optionKind: typeof CLI_OPTION_KIND.value;
194
+ readonly flags: readonly CliOptionFlag[];
195
+ readonly negativeFlags: readonly [];
196
+ readonly valueName: string;
197
+ readonly valueMode: CliOptionValueMode;
198
+ }) | (CliParameterBase & {
199
+ readonly kind: typeof CLI_ARG_KIND.positional;
200
+ readonly valueName: string;
201
+ readonly variadic: boolean;
202
+ });
203
+ export type CliInputPlan<Values extends RawValueMap, Input> = InputPlan<Values, Input> & {
204
+ readonly parseOptions: (raw: RawValueMap) => Input;
197
205
  };
198
- export type CliEndpointLocation = {
199
- readonly endpoint: EntryTreeEndpoint;
206
+ export type CliRegistration<Values extends RawValueMap, Input, Context, Output> = Omit<Registration<Values, Input, Context, Output>, "binding" | "input" | "parameters"> & {
200
207
  readonly path: CliCommandPath;
201
- /** The normalized CLI parameter binding compiled for this exact endpoint. */
202
- readonly binding: CliEntryBinding;
203
- };
204
- export type CliRouterResult = {
205
- readonly kind: typeof CLI_ROUTER_RESULT_KIND.resolved;
206
- readonly path: readonly string[];
207
- readonly endpoint: EntryTreeEndpoint;
208
- readonly projection: unknown;
209
- } | {
210
- readonly kind: typeof CLI_ROUTER_RESULT_KIND.unknownCommand;
211
- readonly path: readonly string[];
208
+ readonly binding: EntryChannelBinding<typeof CHANNEL.cli, CliEntryBinding>;
209
+ readonly parameters: readonly CliParameterView[];
210
+ readonly input: CliInputPlan<Values, Input>;
211
+ };
212
+ export interface CliRegistrationCollection<Context, Output> {
213
+ readonly length: number;
214
+ readonly forEach: (visit: <Values extends RawValueMap, Input>(item: CliRegistration<Values, Input, Context, Output>) => void) => void;
215
+ }
216
+ export type CliCommandNode<Context, Output> = {
212
217
  readonly token: string;
213
- } | {
214
- readonly kind: typeof CLI_ROUTER_RESULT_KIND.incompleteCommand;
215
- readonly path: readonly string[];
216
- } | {
217
- readonly kind: typeof CLI_ROUTER_RESULT_KIND.invalidInput;
218
- readonly path: readonly string[];
219
- readonly issues: readonly string[];
220
- } | {
221
- readonly kind: typeof CLI_ROUTER_RESULT_KIND.invalidParameter;
222
- readonly path: readonly string[];
223
- readonly parameterName: string;
224
- readonly issues: readonly string[];
225
- } | {
226
- readonly kind: typeof CLI_ROUTER_RESULT_KIND.internalError;
227
- readonly path: readonly string[];
228
- readonly error: unknown;
229
- };
230
- export type CliResolvedEndpointResult<Endpoint extends EntryTreeEndpoint> = Omit<Extract<CliRouterResult, {
231
- readonly kind: typeof CLI_ROUTER_RESULT_KIND.resolved;
232
- }>, "endpoint" | "projection"> & {
233
- readonly endpoint: Endpoint;
234
- readonly projection: ReturnType<Endpoint["entry"]["project"]>;
235
- };
236
- export declare function isCliResolvedEndpoint<const Endpoint extends EntryTreeEndpoint>(result: CliRouterResult, endpoint: Endpoint): result is CliResolvedEndpointResult<Endpoint>;
237
- export interface CliRouter {
218
+ readonly path: CliCommandPath;
219
+ readonly description: string;
220
+ readonly documentation: import("./model.js").CommandDocumentation;
238
221
  readonly help: CliHelpSurface;
239
- readonly endpoints: readonly EntryTreeEndpoint[];
240
- readonly endpointLocations: readonly CliEndpointLocation[];
241
- resolve(argv: readonly string[]): CliRouterResult;
242
- }
222
+ readonly commands: CliRegistrationCollection<Context, Output>;
223
+ readonly children: readonly CliCommandNode<Context, Output>[];
224
+ };
225
+ export type CliCommandTree<Context, Output> = {
226
+ readonly root: CliCommandNode<Context, Output>;
227
+ };
243
228
  export {};
244
229
  //# sourceMappingURL=cli-model.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cli-model.d.ts","sourceRoot":"","sources":["../src/cli-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli-model.d.ts","sourceRoot":"","sources":["../src/cli-model.ts"],"names":[],"mappings":"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"}
package/dist/cli-model.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import { CLI_HELP_USAGE_KIND, CLI_OPTION_VALUE_MODE, defaultCliOptionFlag, defaultCliValueName, } from "./cli-values.js";
2
+ import { ownedArray, ownedRecord } from "./owned.js";
2
3
  import { createChannelSegmentOverride, createEntryChannelBinding, PAYLOAD_KIND, registerChannelPayload, } from "./tree-internal.js";
3
4
  import { CHANNEL } from "./values.js";
4
5
  export const CLI_ARG_KIND = {
@@ -9,80 +10,71 @@ export const CLI_VALUE_COERCION = {
9
10
  json: "json",
10
11
  jsonOrString: "json_or_string",
11
12
  };
12
- export const CLI_ROUTER_RESULT_KIND = {
13
- resolved: "resolved",
14
- unknownCommand: "unknown_command",
15
- incompleteCommand: "incomplete_command",
16
- invalidInput: "invalid_input",
17
- invalidParameter: "invalid_parameter",
18
- internalError: "internal_error",
19
- };
20
13
  export function bindCliEntry(binding) {
21
- const payload = {
22
- parameters: binding.parameters.map(normalizeCliArgBinding),
14
+ const payload = ownedRecord({
15
+ parameters: ownedArray(binding.parameters.map(normalizeCliArgBinding)),
23
16
  help: normalizeCliCommandHelp(binding.help),
24
- };
17
+ });
25
18
  registerChannelPayload(PAYLOAD_KIND.cliBinding, payload);
26
19
  return createEntryChannelBinding(CHANNEL.cli, payload);
27
20
  }
28
21
  export function overrideCliSegment(segment) {
29
- const payload = {
22
+ const payload = ownedRecord({
30
23
  token: segment.token,
31
24
  help: normalizeCliGroupHelp(segment.help),
32
- };
25
+ });
33
26
  registerChannelPayload(PAYLOAD_KIND.cliSegment, payload);
34
27
  return createChannelSegmentOverride(CHANNEL.cli, payload);
35
28
  }
36
29
  function normalizeCliArgBinding(input) {
37
30
  if (input.kind === CLI_ARG_KIND.option) {
38
- return {
31
+ return ownedRecord({
39
32
  kind: input.kind,
40
33
  parameterName: input.parameterName,
41
- flags: input.flags ?? [defaultCliOptionFlag(input.parameterName)],
34
+ flags: ownedArray(input.flags ?? [defaultCliOptionFlag(input.parameterName)]),
42
35
  valueName: input.valueName ?? defaultCliValueName(input.parameterName),
43
36
  valueNameAuthored: input.valueName !== undefined,
44
37
  coercion: input.coercion ?? null,
45
38
  booleanMode: input.booleanMode ?? null,
46
39
  negated: input.negated ?? false,
47
40
  repeatable: input.repeatMode === CLI_OPTION_VALUE_MODE.commaOrRepeat,
48
- };
41
+ });
49
42
  }
50
- return {
43
+ return ownedRecord({
51
44
  kind: input.kind,
52
45
  parameterName: input.parameterName,
53
46
  valueName: input.valueName ?? defaultCliValueName(input.parameterName),
54
47
  coercion: input.coercion ?? null,
55
48
  variadic: input.variadic ?? false,
56
- };
49
+ });
57
50
  }
58
51
  function normalizeCliCommandHelp(input) {
59
- return {
52
+ return ownedRecord({
60
53
  usage: input?.usages === undefined
61
- ? { kind: CLI_HELP_USAGE_KIND.derived }
62
- : { kind: CLI_HELP_USAGE_KIND.authored, values: input.usages },
54
+ ? ownedRecord({ kind: CLI_HELP_USAGE_KIND.derived })
55
+ : ownedRecord({
56
+ kind: CLI_HELP_USAGE_KIND.authored,
57
+ values: ownedArray(input.usages),
58
+ }),
63
59
  examples: normalizeCliHelpExamples(input?.examples),
64
- optionSections: (input?.optionSections ?? []).map((section) => ({
60
+ optionSections: ownedArray((input?.optionSections ?? []).map((section) => ownedRecord({
65
61
  heading: section.heading,
66
62
  description: section.description ?? null,
67
- parameterNames: section.parameterNames,
68
- })),
69
- };
63
+ parameterNames: ownedArray(section.parameterNames),
64
+ }))),
65
+ });
70
66
  }
71
67
  function normalizeCliGroupHelp(input) {
72
- return {
68
+ return ownedRecord({
73
69
  subcommandHint: input?.subcommandHint ?? null,
74
70
  examples: normalizeCliHelpExamples(input?.examples),
75
- };
71
+ });
76
72
  }
77
73
  function normalizeCliHelpExamples(examples) {
78
- return (examples ?? []).map((example) => ({
74
+ return ownedArray((examples ?? []).map((example) => ownedRecord({
79
75
  title: example.title,
80
76
  useWhen: example.useWhen,
81
77
  command: example.command,
82
- expectedResult: example.expectedResult ?? [],
83
- }));
84
- }
85
- export function isCliResolvedEndpoint(result, endpoint) {
86
- return (result.kind === CLI_ROUTER_RESULT_KIND.resolved &&
87
- result.endpoint === endpoint);
78
+ expectedResult: ownedArray(example.expectedResult ?? []),
79
+ })));
88
80
  }
@@ -1,4 +1,7 @@
1
- import { type CliRouter } from "./cli-model.js";
2
- import type { EntryTreeDefinition } from "./model.js";
3
- export declare function createCliRouter(tree: EntryTreeDefinition): CliRouter;
1
+ import { type CliCommandTree } from "./cli-model.js";
2
+ import { type ContextFor, type EndpointForChannel, type EndpointsOfSource, type EntryTreeSource, type OutputFor } from "./registration.js";
3
+ import { CHANNEL } from "./values.js";
4
+ type CliEndpointFor<Source extends EntryTreeSource> = EndpointForChannel<EndpointsOfSource<Source>, typeof CHANNEL.cli>;
5
+ export declare function collectCliCommands<const Source extends EntryTreeSource>(source: Source): CliCommandTree<ContextFor<CliEndpointFor<Source>>, OutputFor<CliEndpointFor<Source>>>;
6
+ export {};
4
7
  //# sourceMappingURL=cli-tree.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"cli-tree.d.ts","sourceRoot":"","sources":["../src/cli-tree.ts"],"names":[],"mappings":"AAaA,OAAO,EAKL,KAAK,SAAS,EAIf,MAAM,gBAAgB,CAAC;AAOxB,OAAO,KAAK,EACV,mBAAmB,EAGpB,MAAM,YAAY,CAAC;AAkDpB,wBAAgB,eAAe,CAAC,IAAI,EAAE,mBAAmB,GAAG,SAAS,CASpE"}
1
+ {"version":3,"file":"cli-tree.d.ts","sourceRoot":"","sources":["../src/cli-tree.ts"],"names":[],"mappings":"AAWA,OAAO,EAIL,KAAK,cAAc,EAMpB,MAAM,gBAAgB,CAAC;AASxB,OAAO,EACL,KAAK,UAAU,EACf,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,SAAS,EAEf,MAAM,mBAAmB,CAAC;AAS3B,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAOtC,KAAK,cAAc,CAAC,MAAM,SAAS,eAAe,IAAI,kBAAkB,CACtE,iBAAiB,CAAC,MAAM,CAAC,EACzB,OAAO,OAAO,CAAC,GAAG,CACnB,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,KAAK,CAAC,MAAM,SAAS,eAAe,EACrE,MAAM,EAAE,MAAM,GACb,cAAc,CACf,UAAU,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,EAClC,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAClC,CAgBA"}