acp-sdk 0.10.0 → 0.12.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +29 -0
- data/README.md +19 -5
- data/lib/acp/agent_connection/client.rb +7 -19
- data/lib/acp/agent_connection/optional_method/spec.rb +42 -0
- data/lib/acp/agent_connection/optional_method.rb +36 -0
- data/lib/acp/agent_connection.rb +17 -40
- data/lib/acp/agent_process.rb +0 -13
- data/lib/acp/client_connection/streams.rb +183 -0
- data/lib/acp/client_connection.rb +227 -384
- data/lib/acp/protocol.rb +33 -0
- data/lib/acp/request_error.rb +17 -17
- data/lib/acp/transport/cancellation.rb +0 -7
- data/lib/acp/transport/reply.rb +0 -2
- data/lib/acp/transport/stderr_logger.rb +1 -2
- data/lib/acp/transport/stdio/serving.rb +18 -0
- data/lib/acp/transport/stdio.rb +67 -59
- data/lib/acp/types/audio_content.rb +3 -46
- data/lib/acp/types/auth_method_terminal.rb +3 -59
- data/lib/acp/types/available_commands_update.rb +3 -32
- data/lib/acp/types/boolean_property_schema.rb +3 -41
- data/lib/acp/types/check.rb +210 -0
- data/lib/acp/types/config_option_update.rb +3 -32
- data/lib/acp/types/content.rb +3 -29
- data/lib/acp/types/{elicitation_url_mode → create_elicitation_request/mode/form}/scope.rb +1 -1
- data/lib/acp/types/create_elicitation_request/mode/form.rb +3 -3
- data/lib/acp/types/{elicitation_form_mode → create_elicitation_request/mode/url}/scope.rb +1 -1
- data/lib/acp/types/create_elicitation_request/mode/url.rb +3 -3
- data/lib/acp/types/current_mode_update.rb +3 -29
- data/lib/acp/types/diff.rb +3 -41
- data/lib/acp/types/elicitation_accept_action.rb +3 -26
- data/lib/acp/types/elicitation_form_mode.rb +3 -33
- data/lib/acp/types/elicitation_url_mode.rb +3 -35
- data/lib/acp/types/embedded_resource.rb +3 -44
- data/lib/acp/types/image_content.rb +3 -58
- data/lib/acp/types/integer_property_schema.rb +3 -60
- data/lib/acp/types/mcp_server_http.rb +3 -44
- data/lib/acp/types/mcp_server_sse.rb +3 -44
- data/lib/acp/types/multi_select_property_schema.rb +3 -70
- data/lib/acp/types/number_property_schema.rb +3 -60
- data/lib/acp/types/parse_error.rb +37 -0
- data/lib/acp/types/plan.rb +3 -29
- data/lib/acp/types/resource_link.rb +3 -79
- data/lib/acp/types/selected_permission_outcome.rb +3 -26
- data/lib/acp/types/session_config_boolean.rb +3 -21
- data/lib/acp/types/session_config_select.rb +3 -33
- data/lib/acp/types/session_info_update.rb +3 -42
- data/lib/acp/types/string_multi_select_items.rb +3 -29
- data/lib/acp/types/string_property_schema.rb +3 -105
- data/lib/acp/types/terminal.rb +3 -29
- data/lib/acp/types/text_content.rb +3 -40
- data/lib/acp/types/tool_call.rb +3 -115
- data/lib/acp/types/unstable/compaction_summary_chunk.rb +3 -35
- data/lib/acp/types/unstable/compaction_update.rb +3 -56
- data/lib/acp/types/unstable/idle_state_update.rb +3 -40
- data/lib/acp/types/unstable/mcp_server_acp.rb +3 -35
- data/lib/acp/types/unstable/nes_edit_suggestion.rb +3 -61
- data/lib/acp/types/unstable/nes_jump_suggestion.rb +3 -45
- data/lib/acp/types/unstable/nes_rename_suggestion.rb +3 -51
- data/lib/acp/types/unstable/nes_search_and_replace_suggestion.rb +3 -60
- data/lib/acp/types/unstable/notice.rb +3 -41
- data/lib/acp/types/unstable/plan_file.rb +3 -35
- data/lib/acp/types/unstable/plan_items.rb +3 -38
- data/lib/acp/types/unstable/plan_markdown.rb +3 -35
- data/lib/acp/types/unstable/plan_removed.rb +3 -26
- data/lib/acp/types/unstable/plan_update.rb +3 -33
- data/lib/acp/types/unstable/requires_action_state_update.rb +3 -21
- data/lib/acp/types/unstable/running_state_update.rb +3 -21
- data/lib/acp/types/unstable/session_message.rb +3 -56
- data/lib/acp/types/unstable/session_message_chunk.rb +3 -53
- data/lib/acp/types/unstable/subagent_update.rb +3 -65
- data/lib/acp/types/unstable/unknown_state_update.rb +3 -21
- data/lib/acp/types/unstable.rb +20 -20
- data/lib/acp/types/usage_update.rb +3 -41
- data/lib/acp/types.rb +7 -246
- data/lib/acp/version.rb +1 -1
- data/sig/generated/acp/agent_connection/client.rbs +10 -19
- data/sig/generated/acp/agent_connection/optional_method/spec.rbs +32 -0
- data/sig/generated/acp/agent_connection/optional_method.rbs +3 -0
- data/sig/generated/acp/agent_connection.rbs +16 -24
- data/sig/generated/acp/agent_process.rbs +0 -13
- data/sig/generated/acp/client_connection/streams.rbs +94 -0
- data/sig/generated/acp/client_connection.rbs +100 -159
- data/sig/generated/acp/protocol.rbs +9 -0
- data/sig/generated/acp/request_error.rbs +15 -17
- data/sig/generated/acp/transport/cancellation.rbs +0 -7
- data/sig/generated/acp/transport/reply.rbs +0 -2
- data/sig/generated/acp/transport/stderr_logger.rbs +1 -2
- data/sig/generated/acp/transport/stdio/serving.rbs +14 -0
- data/sig/generated/acp/transport/stdio.rbs +31 -35
- data/sig/generated/acp/types/audio_content.rbs +1 -27
- data/sig/generated/acp/types/auth_method_terminal.rbs +1 -35
- data/sig/generated/acp/types/available_commands_update.rbs +1 -19
- data/sig/generated/acp/types/boolean_property_schema.rbs +1 -27
- data/sig/generated/acp/types/check.rbs +115 -0
- data/sig/generated/acp/types/config_option_update.rbs +1 -19
- data/sig/generated/acp/types/content.rbs +1 -19
- data/sig/generated/acp/types/{elicitation_url_mode → create_elicitation_request/mode/form}/scope.rbs +2 -2
- data/sig/generated/acp/types/create_elicitation_request/mode/form.rbs +3 -3
- data/sig/generated/acp/types/{elicitation_form_mode → create_elicitation_request/mode/url}/scope.rbs +2 -2
- data/sig/generated/acp/types/create_elicitation_request/mode/url.rbs +3 -3
- data/sig/generated/acp/types/current_mode_update.rbs +1 -19
- data/sig/generated/acp/types/diff.rbs +1 -27
- data/sig/generated/acp/types/elicitation_accept_action.rbs +1 -15
- data/sig/generated/acp/types/elicitation_form_mode.rbs +1 -19
- data/sig/generated/acp/types/elicitation_url_mode.rbs +1 -23
- data/sig/generated/acp/types/embedded_resource.rbs +1 -23
- data/sig/generated/acp/types/image_content.rbs +1 -31
- data/sig/generated/acp/types/integer_property_schema.rbs +1 -35
- data/sig/generated/acp/types/mcp_server_http.rbs +1 -27
- data/sig/generated/acp/types/mcp_server_sse.rbs +1 -27
- data/sig/generated/acp/types/multi_select_property_schema.rbs +1 -39
- data/sig/generated/acp/types/number_property_schema.rbs +1 -35
- data/sig/generated/acp/types/parse_error.rbs +22 -0
- data/sig/generated/acp/types/plan.rbs +1 -19
- data/sig/generated/acp/types/resource_link.rbs +1 -43
- data/sig/generated/acp/types/selected_permission_outcome.rbs +1 -19
- data/sig/generated/acp/types/session_config_boolean.rbs +1 -15
- data/sig/generated/acp/types/session_config_select.rbs +1 -19
- data/sig/generated/acp/types/session_info_update.rbs +1 -23
- data/sig/generated/acp/types/string_multi_select_items.rbs +1 -19
- data/sig/generated/acp/types/string_property_schema.rbs +1 -51
- data/sig/generated/acp/types/terminal.rbs +1 -19
- data/sig/generated/acp/types/text_content.rbs +1 -23
- data/sig/generated/acp/types/tool_call.rbs +1 -51
- data/sig/generated/acp/types/unstable/compaction_summary_chunk.rbs +1 -23
- data/sig/generated/acp/types/unstable/compaction_update.rbs +1 -31
- data/sig/generated/acp/types/unstable/idle_state_update.rbs +1 -23
- data/sig/generated/acp/types/unstable/mcp_server_acp.rbs +1 -23
- data/sig/generated/acp/types/unstable/nes_edit_suggestion.rbs +1 -31
- data/sig/generated/acp/types/unstable/nes_jump_suggestion.rbs +1 -27
- data/sig/generated/acp/types/unstable/nes_rename_suggestion.rbs +1 -31
- data/sig/generated/acp/types/unstable/nes_search_and_replace_suggestion.rbs +1 -35
- data/sig/generated/acp/types/unstable/notice.rbs +1 -27
- data/sig/generated/acp/types/unstable/plan_file.rbs +1 -23
- data/sig/generated/acp/types/unstable/plan_items.rbs +1 -23
- data/sig/generated/acp/types/unstable/plan_markdown.rbs +1 -23
- data/sig/generated/acp/types/unstable/plan_removed.rbs +1 -19
- data/sig/generated/acp/types/unstable/plan_update.rbs +1 -19
- data/sig/generated/acp/types/unstable/requires_action_state_update.rbs +1 -15
- data/sig/generated/acp/types/unstable/running_state_update.rbs +1 -15
- data/sig/generated/acp/types/unstable/session_message.rbs +1 -31
- data/sig/generated/acp/types/unstable/session_message_chunk.rbs +1 -31
- data/sig/generated/acp/types/unstable/subagent_update.rbs +1 -35
- data/sig/generated/acp/types/unstable/unknown_state_update.rbs +1 -15
- data/sig/generated/acp/types/usage_update.rbs +1 -27
- data/sig/generated/acp/types.rbs +6 -143
- data/sig/manual/acp/agent_connection.rbs +0 -30
- data/sig/manual/acp/client_connection.rbs +7 -2
- data/sig/manual/acp/{agent_connection/optional_method/logout.rbs → protocol.rbs} +3 -3
- data/sig/manual/acp/transport/stdio.rbs +0 -2
- data/sig/manual/acp/transport.rbs +25 -2
- metadata +18 -40
- data/lib/acp/agent_connection/optional_method/authenticate.rb +0 -21
- data/lib/acp/agent_connection/optional_method/close_session.rb +0 -21
- data/lib/acp/agent_connection/optional_method/delete_session.rb +0 -21
- data/lib/acp/agent_connection/optional_method/disable_provider.rb +0 -23
- data/lib/acp/agent_connection/optional_method/fork_session.rb +0 -23
- data/lib/acp/agent_connection/optional_method/list_providers.rb +0 -23
- data/lib/acp/agent_connection/optional_method/list_sessions.rb +0 -21
- data/lib/acp/agent_connection/optional_method/load_session.rb +0 -21
- data/lib/acp/agent_connection/optional_method/logout.rb +0 -21
- data/lib/acp/agent_connection/optional_method/resume_session.rb +0 -21
- data/lib/acp/agent_connection/optional_method/set_provider.rb +0 -23
- data/lib/acp/types/content_chunk.rb +0 -40
- data/sig/generated/acp/agent_connection/optional_method/authenticate.rbs +0 -13
- data/sig/generated/acp/agent_connection/optional_method/close_session.rbs +0 -13
- data/sig/generated/acp/agent_connection/optional_method/delete_session.rbs +0 -13
- data/sig/generated/acp/agent_connection/optional_method/disable_provider.rbs +0 -13
- data/sig/generated/acp/agent_connection/optional_method/fork_session.rbs +0 -13
- data/sig/generated/acp/agent_connection/optional_method/list_providers.rbs +0 -13
- data/sig/generated/acp/agent_connection/optional_method/list_sessions.rbs +0 -13
- data/sig/generated/acp/agent_connection/optional_method/load_session.rbs +0 -13
- data/sig/generated/acp/agent_connection/optional_method/logout.rbs +0 -13
- data/sig/generated/acp/agent_connection/optional_method/resume_session.rbs +0 -13
- data/sig/generated/acp/agent_connection/optional_method/set_provider.rbs +0 -13
- data/sig/generated/acp/types/content_chunk.rbs +0 -25
- data/sig/manual/acp/agent_connection/optional_method/authenticate.rbs +0 -6
- data/sig/manual/acp/agent_connection/optional_method/close_session.rbs +0 -6
- data/sig/manual/acp/agent_connection/optional_method/delete_session.rbs +0 -6
- data/sig/manual/acp/agent_connection/optional_method/disable_provider.rbs +0 -6
- data/sig/manual/acp/agent_connection/optional_method/fork_session.rbs +0 -6
- data/sig/manual/acp/agent_connection/optional_method/list_providers.rbs +0 -6
- data/sig/manual/acp/agent_connection/optional_method/list_sessions.rbs +0 -6
- data/sig/manual/acp/agent_connection/optional_method/load_session.rbs +0 -6
- data/sig/manual/acp/agent_connection/optional_method/resume_session.rbs +0 -6
- data/sig/manual/acp/agent_connection/optional_method/set_provider.rbs +0 -6
|
@@ -2,64 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Generated by bin/types from schema/schema.json. Do not edit.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
attr_reader :title #: String?
|
|
5
|
+
# @rbs!
|
|
6
|
+
# class ACP::Types::IntegerPropertySchema = ACP::Types::ElicitationPropertySchema::IntegerPropertySchema
|
|
8
7
|
|
|
9
|
-
|
|
10
|
-
attr_reader :description #: String?
|
|
11
|
-
|
|
12
|
-
# @dynamic minimum
|
|
13
|
-
attr_reader :minimum #: Integer?
|
|
14
|
-
|
|
15
|
-
# @dynamic maximum
|
|
16
|
-
attr_reader :maximum #: Integer?
|
|
17
|
-
|
|
18
|
-
# @dynamic default
|
|
19
|
-
attr_reader :default #: Integer?
|
|
20
|
-
|
|
21
|
-
# @dynamic meta
|
|
22
|
-
attr_reader :meta #: Hash[String, untyped]?
|
|
23
|
-
|
|
24
|
-
# @rbs title: String?
|
|
25
|
-
# @rbs description: String?
|
|
26
|
-
# @rbs minimum: Integer?
|
|
27
|
-
# @rbs maximum: Integer?
|
|
28
|
-
# @rbs default: Integer?
|
|
29
|
-
# @rbs meta: Hash[String, untyped]?
|
|
30
|
-
# @rbs return: void
|
|
31
|
-
def initialize(title: nil, description: nil, minimum: nil, maximum: nil, default: nil, meta: nil)
|
|
32
|
-
@title = title
|
|
33
|
-
@description = description
|
|
34
|
-
@minimum = minimum
|
|
35
|
-
@maximum = maximum
|
|
36
|
-
@default = default
|
|
37
|
-
@meta = meta
|
|
38
|
-
freeze
|
|
39
|
-
end
|
|
40
|
-
|
|
41
|
-
# @rbs hash: Hash[String, untyped]
|
|
42
|
-
# @rbs return: ACP::Types::IntegerPropertySchema
|
|
43
|
-
def self.from_h(hash)
|
|
44
|
-
new(
|
|
45
|
-
title: ACP::Types::Check.string(hash['title'], 'title', allow_nil: true),
|
|
46
|
-
description: ACP::Types::Check.string(hash['description'], 'description', allow_nil: true),
|
|
47
|
-
minimum: ACP::Types::Check.integer(hash['minimum'], 'minimum', allow_nil: true),
|
|
48
|
-
maximum: ACP::Types::Check.integer(hash['maximum'], 'maximum', allow_nil: true),
|
|
49
|
-
default: ACP::Types::Check.integer(hash['default'], 'default', allow_nil: true),
|
|
50
|
-
meta: hash['_meta']
|
|
51
|
-
)
|
|
52
|
-
end
|
|
53
|
-
|
|
54
|
-
# @rbs return: Hash[String, untyped]
|
|
55
|
-
def to_h
|
|
56
|
-
{
|
|
57
|
-
'title' => title,
|
|
58
|
-
'description' => description,
|
|
59
|
-
'minimum' => minimum,
|
|
60
|
-
'maximum' => maximum,
|
|
61
|
-
'default' => default,
|
|
62
|
-
'_meta' => meta
|
|
63
|
-
}.compact
|
|
64
|
-
end
|
|
65
|
-
end
|
|
8
|
+
ACP::Types::IntegerPropertySchema = ACP::Types::ElicitationPropertySchema::IntegerPropertySchema
|
|
@@ -2,48 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Generated by bin/types from schema/schema.json. Do not edit.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
attr_reader :name #: String
|
|
5
|
+
# @rbs!
|
|
6
|
+
# class ACP::Types::McpServerHttp = ACP::Types::McpServer::Http
|
|
8
7
|
|
|
9
|
-
|
|
10
|
-
attr_reader :url #: String
|
|
11
|
-
|
|
12
|
-
# @dynamic headers
|
|
13
|
-
attr_reader :headers #: Array[ACP::Types::HttpHeader]
|
|
14
|
-
|
|
15
|
-
# @dynamic meta
|
|
16
|
-
attr_reader :meta #: Hash[String, untyped]?
|
|
17
|
-
|
|
18
|
-
# @rbs name: String
|
|
19
|
-
# @rbs url: String
|
|
20
|
-
# @rbs headers: Array[ACP::Types::HttpHeader]
|
|
21
|
-
# @rbs meta: Hash[String, untyped]?
|
|
22
|
-
# @rbs return: void
|
|
23
|
-
def initialize(name:, url:, headers:, meta: nil)
|
|
24
|
-
@name = name
|
|
25
|
-
@url = url
|
|
26
|
-
@headers = headers
|
|
27
|
-
@meta = meta
|
|
28
|
-
freeze
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
# @rbs hash: Hash[String, untyped]
|
|
32
|
-
# @rbs return: ACP::Types::McpServerHttp
|
|
33
|
-
def self.from_h(hash)
|
|
34
|
-
headers = ACP::Types::Check.array(ACP::Types::Check.key(hash, 'headers'), 'headers') do |item, path|
|
|
35
|
-
ACP::Types::Check.object(item, path, ACP::Types::HttpHeader)
|
|
36
|
-
end
|
|
37
|
-
new(
|
|
38
|
-
name: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'name'), 'name'),
|
|
39
|
-
url: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'url'), 'url'),
|
|
40
|
-
headers:,
|
|
41
|
-
meta: hash['_meta']
|
|
42
|
-
)
|
|
43
|
-
end
|
|
44
|
-
|
|
45
|
-
# @rbs return: Hash[String, untyped]
|
|
46
|
-
def to_h
|
|
47
|
-
{ 'name' => name, 'url' => url, 'headers' => headers.map(&:to_h), '_meta' => meta }.compact
|
|
48
|
-
end
|
|
49
|
-
end
|
|
8
|
+
ACP::Types::McpServerHttp = ACP::Types::McpServer::Http
|
|
@@ -2,48 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Generated by bin/types from schema/schema.json. Do not edit.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
attr_reader :name #: String
|
|
5
|
+
# @rbs!
|
|
6
|
+
# class ACP::Types::McpServerSse = ACP::Types::McpServer::Sse
|
|
8
7
|
|
|
9
|
-
|
|
10
|
-
attr_reader :url #: String
|
|
11
|
-
|
|
12
|
-
# @dynamic headers
|
|
13
|
-
attr_reader :headers #: Array[ACP::Types::HttpHeader]
|
|
14
|
-
|
|
15
|
-
# @dynamic meta
|
|
16
|
-
attr_reader :meta #: Hash[String, untyped]?
|
|
17
|
-
|
|
18
|
-
# @rbs name: String
|
|
19
|
-
# @rbs url: String
|
|
20
|
-
# @rbs headers: Array[ACP::Types::HttpHeader]
|
|
21
|
-
# @rbs meta: Hash[String, untyped]?
|
|
22
|
-
# @rbs return: void
|
|
23
|
-
def initialize(name:, url:, headers:, meta: nil)
|
|
24
|
-
@name = name
|
|
25
|
-
@url = url
|
|
26
|
-
@headers = headers
|
|
27
|
-
@meta = meta
|
|
28
|
-
freeze
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
# @rbs hash: Hash[String, untyped]
|
|
32
|
-
# @rbs return: ACP::Types::McpServerSse
|
|
33
|
-
def self.from_h(hash)
|
|
34
|
-
headers = ACP::Types::Check.array(ACP::Types::Check.key(hash, 'headers'), 'headers') do |item, path|
|
|
35
|
-
ACP::Types::Check.object(item, path, ACP::Types::HttpHeader)
|
|
36
|
-
end
|
|
37
|
-
new(
|
|
38
|
-
name: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'name'), 'name'),
|
|
39
|
-
url: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'url'), 'url'),
|
|
40
|
-
headers:,
|
|
41
|
-
meta: hash['_meta']
|
|
42
|
-
)
|
|
43
|
-
end
|
|
44
|
-
|
|
45
|
-
# @rbs return: Hash[String, untyped]
|
|
46
|
-
def to_h
|
|
47
|
-
{ 'name' => name, 'url' => url, 'headers' => headers.map(&:to_h), '_meta' => meta }.compact
|
|
48
|
-
end
|
|
49
|
-
end
|
|
8
|
+
ACP::Types::McpServerSse = ACP::Types::McpServer::Sse
|
|
@@ -2,74 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Generated by bin/types from schema/schema.json. Do not edit.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
attr_reader :title #: String?
|
|
5
|
+
# @rbs!
|
|
6
|
+
# class ACP::Types::MultiSelectPropertySchema = ACP::Types::ElicitationPropertySchema::MultiSelectPropertySchema
|
|
8
7
|
|
|
9
|
-
|
|
10
|
-
attr_reader :description #: String?
|
|
11
|
-
|
|
12
|
-
# @dynamic min_items
|
|
13
|
-
attr_reader :min_items #: Integer?
|
|
14
|
-
|
|
15
|
-
# @dynamic max_items
|
|
16
|
-
attr_reader :max_items #: Integer?
|
|
17
|
-
|
|
18
|
-
# @dynamic items
|
|
19
|
-
attr_reader :items #: ACP::Types::MultiSelectItems::t
|
|
20
|
-
|
|
21
|
-
# @dynamic default
|
|
22
|
-
attr_reader :default #: Array[String]?
|
|
23
|
-
|
|
24
|
-
# @dynamic meta
|
|
25
|
-
attr_reader :meta #: Hash[String, untyped]?
|
|
26
|
-
|
|
27
|
-
# @rbs title: String?
|
|
28
|
-
# @rbs description: String?
|
|
29
|
-
# @rbs min_items: Integer?
|
|
30
|
-
# @rbs max_items: Integer?
|
|
31
|
-
# @rbs items: ACP::Types::MultiSelectItems::t
|
|
32
|
-
# @rbs default: Array[String]?
|
|
33
|
-
# @rbs meta: Hash[String, untyped]?
|
|
34
|
-
# @rbs return: void
|
|
35
|
-
def initialize(items:, title: nil, description: nil, min_items: nil, max_items: nil, default: nil, meta: nil)
|
|
36
|
-
@title = title
|
|
37
|
-
@description = description
|
|
38
|
-
@min_items = min_items
|
|
39
|
-
@max_items = max_items
|
|
40
|
-
@items = items
|
|
41
|
-
@default = default
|
|
42
|
-
@meta = meta
|
|
43
|
-
freeze
|
|
44
|
-
end
|
|
45
|
-
|
|
46
|
-
# @rbs hash: Hash[String, untyped]
|
|
47
|
-
# @rbs return: ACP::Types::MultiSelectPropertySchema
|
|
48
|
-
def self.from_h(hash)
|
|
49
|
-
default = ACP::Types::Check.array(hash['default'], 'default', allow_nil: true) do |item, path|
|
|
50
|
-
ACP::Types::Check.string(item, path)
|
|
51
|
-
end
|
|
52
|
-
new(
|
|
53
|
-
title: ACP::Types::Check.string(hash['title'], 'title', allow_nil: true),
|
|
54
|
-
description: ACP::Types::Check.string(hash['description'], 'description', allow_nil: true),
|
|
55
|
-
min_items: ACP::Types::Check.integer(hash['minItems'], 'minItems', min: 0, allow_nil: true),
|
|
56
|
-
max_items: ACP::Types::Check.integer(hash['maxItems'], 'maxItems', min: 0, allow_nil: true),
|
|
57
|
-
items: ACP::Types::Check.object(ACP::Types::Check.key(hash, 'items'), 'items', ACP::Types::MultiSelectItems),
|
|
58
|
-
default:,
|
|
59
|
-
meta: hash['_meta']
|
|
60
|
-
)
|
|
61
|
-
end
|
|
62
|
-
|
|
63
|
-
# @rbs return: Hash[String, untyped]
|
|
64
|
-
def to_h
|
|
65
|
-
{
|
|
66
|
-
'items' => items.to_h,
|
|
67
|
-
'title' => title,
|
|
68
|
-
'description' => description,
|
|
69
|
-
'minItems' => min_items,
|
|
70
|
-
'maxItems' => max_items,
|
|
71
|
-
'default' => default,
|
|
72
|
-
'_meta' => meta
|
|
73
|
-
}.compact
|
|
74
|
-
end
|
|
75
|
-
end
|
|
8
|
+
ACP::Types::MultiSelectPropertySchema = ACP::Types::ElicitationPropertySchema::MultiSelectPropertySchema
|
|
@@ -2,64 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Generated by bin/types from schema/schema.json. Do not edit.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
attr_reader :title #: String?
|
|
5
|
+
# @rbs!
|
|
6
|
+
# class ACP::Types::NumberPropertySchema = ACP::Types::ElicitationPropertySchema::NumberPropertySchema
|
|
8
7
|
|
|
9
|
-
|
|
10
|
-
attr_reader :description #: String?
|
|
11
|
-
|
|
12
|
-
# @dynamic minimum
|
|
13
|
-
attr_reader :minimum #: Numeric?
|
|
14
|
-
|
|
15
|
-
# @dynamic maximum
|
|
16
|
-
attr_reader :maximum #: Numeric?
|
|
17
|
-
|
|
18
|
-
# @dynamic default
|
|
19
|
-
attr_reader :default #: Numeric?
|
|
20
|
-
|
|
21
|
-
# @dynamic meta
|
|
22
|
-
attr_reader :meta #: Hash[String, untyped]?
|
|
23
|
-
|
|
24
|
-
# @rbs title: String?
|
|
25
|
-
# @rbs description: String?
|
|
26
|
-
# @rbs minimum: Numeric?
|
|
27
|
-
# @rbs maximum: Numeric?
|
|
28
|
-
# @rbs default: Numeric?
|
|
29
|
-
# @rbs meta: Hash[String, untyped]?
|
|
30
|
-
# @rbs return: void
|
|
31
|
-
def initialize(title: nil, description: nil, minimum: nil, maximum: nil, default: nil, meta: nil)
|
|
32
|
-
@title = title
|
|
33
|
-
@description = description
|
|
34
|
-
@minimum = minimum
|
|
35
|
-
@maximum = maximum
|
|
36
|
-
@default = default
|
|
37
|
-
@meta = meta
|
|
38
|
-
freeze
|
|
39
|
-
end
|
|
40
|
-
|
|
41
|
-
# @rbs hash: Hash[String, untyped]
|
|
42
|
-
# @rbs return: ACP::Types::NumberPropertySchema
|
|
43
|
-
def self.from_h(hash)
|
|
44
|
-
new(
|
|
45
|
-
title: ACP::Types::Check.string(hash['title'], 'title', allow_nil: true),
|
|
46
|
-
description: ACP::Types::Check.string(hash['description'], 'description', allow_nil: true),
|
|
47
|
-
minimum: ACP::Types::Check.number(hash['minimum'], 'minimum', allow_nil: true),
|
|
48
|
-
maximum: ACP::Types::Check.number(hash['maximum'], 'maximum', allow_nil: true),
|
|
49
|
-
default: ACP::Types::Check.number(hash['default'], 'default', allow_nil: true),
|
|
50
|
-
meta: hash['_meta']
|
|
51
|
-
)
|
|
52
|
-
end
|
|
53
|
-
|
|
54
|
-
# @rbs return: Hash[String, untyped]
|
|
55
|
-
def to_h
|
|
56
|
-
{
|
|
57
|
-
'title' => title,
|
|
58
|
-
'description' => description,
|
|
59
|
-
'minimum' => minimum,
|
|
60
|
-
'maximum' => maximum,
|
|
61
|
-
'default' => default,
|
|
62
|
-
'_meta' => meta
|
|
63
|
-
}.compact
|
|
64
|
-
end
|
|
65
|
-
end
|
|
8
|
+
ACP::Types::NumberPropertySchema = ACP::Types::ElicitationPropertySchema::NumberPropertySchema
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Hand-authored support for the generated types: the generator neither emits
|
|
4
|
+
# nor deletes this file (see TypeGenerator::SUPPORT_FILES).
|
|
5
|
+
|
|
6
|
+
class ACP::Types::ParseError < StandardError
|
|
7
|
+
# @rbs @segments: Array[String | Integer]
|
|
8
|
+
# @rbs @detail: String
|
|
9
|
+
|
|
10
|
+
# @rbs segments: Array[String | Integer]
|
|
11
|
+
# @rbs detail: String
|
|
12
|
+
# @rbs return: void
|
|
13
|
+
def initialize(segments, detail)
|
|
14
|
+
@segments = segments.freeze
|
|
15
|
+
@detail = detail
|
|
16
|
+
super("#{path}: #{detail}")
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
# @dynamic segments
|
|
20
|
+
attr_reader :segments #: Array[String | Integer]
|
|
21
|
+
|
|
22
|
+
# @rbs return: String
|
|
23
|
+
def path
|
|
24
|
+
segments.each_with_index.map do |segment, index|
|
|
25
|
+
if segment.is_a?(Integer) then "[#{segment}]"
|
|
26
|
+
elsif index.zero? then segment
|
|
27
|
+
else ".#{segment}"
|
|
28
|
+
end
|
|
29
|
+
end.join
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
# @rbs *segments: (String | Integer)
|
|
33
|
+
# @rbs return: ACP::Types::ParseError
|
|
34
|
+
def prefix(*segments)
|
|
35
|
+
ACP::Types::ParseError.new([*segments, *@segments], @detail)
|
|
36
|
+
end
|
|
37
|
+
end
|
data/lib/acp/types/plan.rb
CHANGED
|
@@ -2,33 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Generated by bin/types from schema/schema.json. Do not edit.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
attr_reader :entries #: Array[ACP::Types::PlanEntry]
|
|
5
|
+
# @rbs!
|
|
6
|
+
# class ACP::Types::Plan = ACP::Types::SessionUpdate::Plan
|
|
8
7
|
|
|
9
|
-
|
|
10
|
-
attr_reader :meta #: Hash[String, untyped]?
|
|
11
|
-
|
|
12
|
-
# @rbs entries: Array[ACP::Types::PlanEntry]
|
|
13
|
-
# @rbs meta: Hash[String, untyped]?
|
|
14
|
-
# @rbs return: void
|
|
15
|
-
def initialize(entries:, meta: nil)
|
|
16
|
-
@entries = entries
|
|
17
|
-
@meta = meta
|
|
18
|
-
freeze
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
# @rbs hash: Hash[String, untyped]
|
|
22
|
-
# @rbs return: ACP::Types::Plan
|
|
23
|
-
def self.from_h(hash)
|
|
24
|
-
entries = ACP::Types::Check.array(ACP::Types::Check.key(hash, 'entries'), 'entries') do |item, path|
|
|
25
|
-
ACP::Types::Check.object(item, path, ACP::Types::PlanEntry)
|
|
26
|
-
end
|
|
27
|
-
new(entries:, meta: hash['_meta'])
|
|
28
|
-
end
|
|
29
|
-
|
|
30
|
-
# @rbs return: Hash[String, untyped]
|
|
31
|
-
def to_h
|
|
32
|
-
{ 'entries' => entries.map(&:to_h), '_meta' => meta }.compact
|
|
33
|
-
end
|
|
34
|
-
end
|
|
8
|
+
ACP::Types::Plan = ACP::Types::SessionUpdate::Plan
|
|
@@ -2,83 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Generated by bin/types from schema/schema.json. Do not edit.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
attr_reader :annotations #: ACP::Types::Annotations?
|
|
5
|
+
# @rbs!
|
|
6
|
+
# class ACP::Types::ResourceLink = ACP::Types::ContentBlock::ResourceLink
|
|
8
7
|
|
|
9
|
-
|
|
10
|
-
attr_reader :description #: String?
|
|
11
|
-
|
|
12
|
-
# @dynamic mime_type
|
|
13
|
-
attr_reader :mime_type #: String?
|
|
14
|
-
|
|
15
|
-
# @dynamic name
|
|
16
|
-
attr_reader :name #: String
|
|
17
|
-
|
|
18
|
-
# @dynamic size
|
|
19
|
-
attr_reader :size #: Integer?
|
|
20
|
-
|
|
21
|
-
# @dynamic title
|
|
22
|
-
attr_reader :title #: String?
|
|
23
|
-
|
|
24
|
-
# @dynamic uri
|
|
25
|
-
attr_reader :uri #: String
|
|
26
|
-
|
|
27
|
-
# @dynamic meta
|
|
28
|
-
attr_reader :meta #: Hash[String, untyped]?
|
|
29
|
-
|
|
30
|
-
# @rbs annotations: ACP::Types::Annotations?
|
|
31
|
-
# @rbs description: String?
|
|
32
|
-
# @rbs mime_type: String?
|
|
33
|
-
# @rbs name: String
|
|
34
|
-
# @rbs size: Integer?
|
|
35
|
-
# @rbs title: String?
|
|
36
|
-
# @rbs uri: String
|
|
37
|
-
# @rbs meta: Hash[String, untyped]?
|
|
38
|
-
# @rbs return: void
|
|
39
|
-
def initialize(name:, uri:, annotations: nil, description: nil, mime_type: nil, size: nil, title: nil, meta: nil)
|
|
40
|
-
@annotations = annotations
|
|
41
|
-
@description = description
|
|
42
|
-
@mime_type = mime_type
|
|
43
|
-
@name = name
|
|
44
|
-
@size = size
|
|
45
|
-
@title = title
|
|
46
|
-
@uri = uri
|
|
47
|
-
@meta = meta
|
|
48
|
-
freeze
|
|
49
|
-
end
|
|
50
|
-
|
|
51
|
-
# @rbs hash: Hash[String, untyped]
|
|
52
|
-
# @rbs return: ACP::Types::ResourceLink
|
|
53
|
-
def self.from_h(hash)
|
|
54
|
-
new(
|
|
55
|
-
annotations: ACP::Types::Check.object(
|
|
56
|
-
hash['annotations'],
|
|
57
|
-
'annotations',
|
|
58
|
-
ACP::Types::Annotations,
|
|
59
|
-
allow_nil: true
|
|
60
|
-
),
|
|
61
|
-
description: ACP::Types::Check.string(hash['description'], 'description', allow_nil: true),
|
|
62
|
-
mime_type: ACP::Types::Check.string(hash['mimeType'], 'mimeType', allow_nil: true),
|
|
63
|
-
name: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'name'), 'name'),
|
|
64
|
-
size: ACP::Types::Check.integer(hash['size'], 'size', allow_nil: true),
|
|
65
|
-
title: ACP::Types::Check.string(hash['title'], 'title', allow_nil: true),
|
|
66
|
-
uri: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'uri'), 'uri'),
|
|
67
|
-
meta: hash['_meta']
|
|
68
|
-
)
|
|
69
|
-
end
|
|
70
|
-
|
|
71
|
-
# @rbs return: Hash[String, untyped]
|
|
72
|
-
def to_h
|
|
73
|
-
{
|
|
74
|
-
'name' => name,
|
|
75
|
-
'uri' => uri,
|
|
76
|
-
'annotations' => annotations&.to_h,
|
|
77
|
-
'description' => description,
|
|
78
|
-
'mimeType' => mime_type,
|
|
79
|
-
'size' => size,
|
|
80
|
-
'title' => title,
|
|
81
|
-
'_meta' => meta
|
|
82
|
-
}.compact
|
|
83
|
-
end
|
|
84
|
-
end
|
|
8
|
+
ACP::Types::ResourceLink = ACP::Types::ContentBlock::ResourceLink
|
|
@@ -2,30 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Generated by bin/types from schema/schema.json. Do not edit.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
attr_reader :option_id #: String
|
|
5
|
+
# @rbs!
|
|
6
|
+
# class ACP::Types::SelectedPermissionOutcome = ACP::Types::RequestPermissionOutcome::Selected
|
|
8
7
|
|
|
9
|
-
|
|
10
|
-
attr_reader :meta #: Hash[String, untyped]?
|
|
11
|
-
|
|
12
|
-
# @rbs option_id: String
|
|
13
|
-
# @rbs meta: Hash[String, untyped]?
|
|
14
|
-
# @rbs return: void
|
|
15
|
-
def initialize(option_id:, meta: nil)
|
|
16
|
-
@option_id = option_id
|
|
17
|
-
@meta = meta
|
|
18
|
-
freeze
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
# @rbs hash: Hash[String, untyped]
|
|
22
|
-
# @rbs return: ACP::Types::SelectedPermissionOutcome
|
|
23
|
-
def self.from_h(hash)
|
|
24
|
-
new(option_id: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'optionId'), 'optionId'), meta: hash['_meta'])
|
|
25
|
-
end
|
|
26
|
-
|
|
27
|
-
# @rbs return: Hash[String, untyped]
|
|
28
|
-
def to_h
|
|
29
|
-
{ 'optionId' => option_id, '_meta' => meta }.compact
|
|
30
|
-
end
|
|
31
|
-
end
|
|
8
|
+
ACP::Types::SelectedPermissionOutcome = ACP::Types::RequestPermissionOutcome::Selected
|
|
@@ -2,25 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Generated by bin/types from schema/schema.json. Do not edit.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
attr_reader :current_value #: bool
|
|
5
|
+
# @rbs!
|
|
6
|
+
# class ACP::Types::SessionConfigBoolean = ACP::Types::SessionConfigOption::Kind::Boolean
|
|
8
7
|
|
|
9
|
-
|
|
10
|
-
# @rbs return: void
|
|
11
|
-
def initialize(current_value:)
|
|
12
|
-
@current_value = current_value
|
|
13
|
-
freeze
|
|
14
|
-
end
|
|
15
|
-
|
|
16
|
-
# @rbs hash: Hash[String, untyped]
|
|
17
|
-
# @rbs return: ACP::Types::SessionConfigBoolean
|
|
18
|
-
def self.from_h(hash)
|
|
19
|
-
new(current_value: ACP::Types::Check.boolean(ACP::Types::Check.key(hash, 'currentValue'), 'currentValue'))
|
|
20
|
-
end
|
|
21
|
-
|
|
22
|
-
# @rbs return: Hash[String, untyped]
|
|
23
|
-
def to_h
|
|
24
|
-
{ 'currentValue' => current_value }
|
|
25
|
-
end
|
|
26
|
-
end
|
|
8
|
+
ACP::Types::SessionConfigBoolean = ACP::Types::SessionConfigOption::Kind::Boolean
|
|
@@ -2,37 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Generated by bin/types from schema/schema.json. Do not edit.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
attr_reader :current_value #: String
|
|
5
|
+
# @rbs!
|
|
6
|
+
# class ACP::Types::SessionConfigSelect = ACP::Types::SessionConfigOption::Kind::Select
|
|
8
7
|
|
|
9
|
-
|
|
10
|
-
attr_reader :options #: ACP::Types::SessionConfigSelectOptions::t
|
|
11
|
-
|
|
12
|
-
# @rbs current_value: String
|
|
13
|
-
# @rbs options: ACP::Types::SessionConfigSelectOptions::t
|
|
14
|
-
# @rbs return: void
|
|
15
|
-
def initialize(current_value:, options:)
|
|
16
|
-
@current_value = current_value
|
|
17
|
-
@options = options
|
|
18
|
-
freeze
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
# @rbs hash: Hash[String, untyped]
|
|
22
|
-
# @rbs return: ACP::Types::SessionConfigSelect
|
|
23
|
-
def self.from_h(hash)
|
|
24
|
-
new(
|
|
25
|
-
current_value: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'currentValue'), 'currentValue'),
|
|
26
|
-
options: ACP::Types::Check.objects(
|
|
27
|
-
ACP::Types::Check.key(hash, 'options'),
|
|
28
|
-
'options',
|
|
29
|
-
ACP::Types::SessionConfigSelectOptions
|
|
30
|
-
)
|
|
31
|
-
)
|
|
32
|
-
end
|
|
33
|
-
|
|
34
|
-
# @rbs return: Hash[String, untyped]
|
|
35
|
-
def to_h
|
|
36
|
-
{ 'currentValue' => current_value, 'options' => options.map(&:to_h) }
|
|
37
|
-
end
|
|
38
|
-
end
|
|
8
|
+
ACP::Types::SessionConfigSelect = ACP::Types::SessionConfigOption::Kind::Select
|
|
@@ -2,46 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Generated by bin/types from schema/schema.json. Do not edit.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
attr_reader :title #: String? | :unset
|
|
5
|
+
# @rbs!
|
|
6
|
+
# class ACP::Types::SessionInfoUpdate = ACP::Types::SessionUpdate::SessionInfoUpdate
|
|
8
7
|
|
|
9
|
-
|
|
10
|
-
attr_reader :updated_at #: String? | :unset
|
|
11
|
-
|
|
12
|
-
# @dynamic meta
|
|
13
|
-
attr_reader :meta #: Hash[String, untyped]?
|
|
14
|
-
|
|
15
|
-
# @rbs title: String? | :unset
|
|
16
|
-
# @rbs updated_at: String? | :unset
|
|
17
|
-
# @rbs meta: Hash[String, untyped]?
|
|
18
|
-
# @rbs return: void
|
|
19
|
-
def initialize(title: :unset, updated_at: :unset, meta: nil)
|
|
20
|
-
@title = title
|
|
21
|
-
@updated_at = updated_at
|
|
22
|
-
@meta = meta
|
|
23
|
-
freeze
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
# @rbs hash: Hash[String, untyped]
|
|
27
|
-
# @rbs return: ACP::Types::SessionInfoUpdate
|
|
28
|
-
def self.from_h(hash)
|
|
29
|
-
new(
|
|
30
|
-
title: ACP::Types::Check.string(hash.fetch('title', :unset), 'title', allow_nil: true, allow_unset: true),
|
|
31
|
-
updated_at: ACP::Types::Check.string(
|
|
32
|
-
hash.fetch('updatedAt', :unset),
|
|
33
|
-
'updatedAt',
|
|
34
|
-
allow_nil: true,
|
|
35
|
-
allow_unset: true
|
|
36
|
-
),
|
|
37
|
-
meta: hash['_meta']
|
|
38
|
-
)
|
|
39
|
-
end
|
|
40
|
-
|
|
41
|
-
# @rbs return: Hash[String, untyped]
|
|
42
|
-
def to_h
|
|
43
|
-
{
|
|
44
|
-
'_meta' => meta
|
|
45
|
-
}.compact.merge({ 'title' => title, 'updatedAt' => updated_at }.reject { |_, value| value == :unset })
|
|
46
|
-
end
|
|
47
|
-
end
|
|
8
|
+
ACP::Types::SessionInfoUpdate = ACP::Types::SessionUpdate::SessionInfoUpdate
|
|
@@ -2,33 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Generated by bin/types from schema/schema.json. Do not edit.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
attr_reader :enum #: Array[String]
|
|
5
|
+
# @rbs!
|
|
6
|
+
# class ACP::Types::StringMultiSelectItems = ACP::Types::MultiSelectItems::StringMultiSelectItems
|
|
8
7
|
|
|
9
|
-
|
|
10
|
-
attr_reader :meta #: Hash[String, untyped]?
|
|
11
|
-
|
|
12
|
-
# @rbs enum: Array[String]
|
|
13
|
-
# @rbs meta: Hash[String, untyped]?
|
|
14
|
-
# @rbs return: void
|
|
15
|
-
def initialize(enum:, meta: nil)
|
|
16
|
-
@enum = enum
|
|
17
|
-
@meta = meta
|
|
18
|
-
freeze
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
# @rbs hash: Hash[String, untyped]
|
|
22
|
-
# @rbs return: ACP::Types::StringMultiSelectItems
|
|
23
|
-
def self.from_h(hash)
|
|
24
|
-
enum = ACP::Types::Check.array(ACP::Types::Check.key(hash, 'enum'), 'enum') do |item, path|
|
|
25
|
-
ACP::Types::Check.string(item, path)
|
|
26
|
-
end
|
|
27
|
-
new(enum:, meta: hash['_meta'])
|
|
28
|
-
end
|
|
29
|
-
|
|
30
|
-
# @rbs return: Hash[String, untyped]
|
|
31
|
-
def to_h
|
|
32
|
-
{ 'enum' => enum, '_meta' => meta }.compact
|
|
33
|
-
end
|
|
34
|
-
end
|
|
8
|
+
ACP::Types::StringMultiSelectItems = ACP::Types::MultiSelectItems::StringMultiSelectItems
|