Elicitation shows a generic elicitation dialog with a custom schema.
(ctx context.Context, message string, requestedSchema ElicitationSchema)
| 1116 | |
| 1117 | // Elicitation shows a generic elicitation dialog with a custom schema. |
| 1118 | func (ui *SessionUI) Elicitation(ctx context.Context, message string, requestedSchema ElicitationSchema) (*ElicitationResult, error) { |
| 1119 | if err := ui.session.assertElicitation(); err != nil { |
| 1120 | return nil, err |
| 1121 | } |
| 1122 | rpcSchema, err := toRPCUIElicitationSchema(requestedSchema) |
| 1123 | if err != nil { |
| 1124 | return nil, err |
| 1125 | } |
| 1126 | rpcResult, err := ui.session.RPC.UI.Elicitation(ctx, &rpc.UIElicitationRequest{ |
| 1127 | Message: message, |
| 1128 | RequestedSchema: rpcSchema, |
| 1129 | }) |
| 1130 | if err != nil { |
| 1131 | return nil, err |
| 1132 | } |
| 1133 | return fromRPCElicitationResult(rpcResult), nil |
| 1134 | } |
| 1135 | |
| 1136 | func toRPCUIElicitationSchema(schema ElicitationSchema) (rpc.UIElicitationSchema, error) { |
| 1137 | var properties map[string]rpc.UIElicitationSchemaProperty |
no test coverage detected