Skip to main content

omena_resolver/
types.rs

1use super::*;
2
3#[derive(Debug, Serialize)]
4#[serde(rename_all = "camelCase")]
5pub struct OmenaResolverBoundarySummaryV0 {
6    pub schema_version: &'static str,
7    pub product: &'static str,
8    pub resolver_name: &'static str,
9    pub input_version: String,
10    pub delegated_source_resolution_products: Vec<&'static str>,
11    pub resolver_owned_products: Vec<&'static str>,
12    pub source_resolution_query_count: usize,
13    pub source_resolution_candidate_count: usize,
14    pub source_resolution_evaluator_candidate_count: usize,
15    pub module_graph_module_count: usize,
16    pub module_graph_source_expression_edge_count: usize,
17    pub runtime_query_module_count: usize,
18    pub runtime_query_ready_module_count: usize,
19    pub source_resolution_runtime_expression_count: usize,
20    pub source_resolution_runtime_resolved_expression_count: usize,
21    pub ready_surfaces: Vec<&'static str>,
22    pub cme_coupled_surfaces: Vec<&'static str>,
23    pub next_decoupling_targets: Vec<&'static str>,
24}
25
26#[derive(Debug, Clone, PartialEq, Eq, Deserialize, Serialize)]
27#[serde(rename_all = "camelCase")]
28pub struct OmenaResolverModuleGraphSummaryV0 {
29    pub schema_version: String,
30    pub product: String,
31    pub input_version: String,
32    pub module_count: usize,
33    pub source_expression_edge_count: usize,
34    pub type_fact_edge_count: usize,
35    pub selector_count: usize,
36    pub unresolved_type_fact_count: usize,
37    pub modules: Vec<OmenaResolverModuleGraphModuleV0>,
38    pub unresolved_type_fact_expression_ids: Vec<String>,
39}
40
41#[derive(Debug, Clone, PartialEq, Eq, Deserialize, Serialize)]
42#[serde(rename_all = "camelCase")]
43pub struct OmenaResolverModuleGraphModuleV0 {
44    pub style_file_path: String,
45    pub source_expression_ids: Vec<String>,
46    pub source_expression_kinds: Vec<String>,
47    pub type_fact_expression_ids: Vec<String>,
48    pub selector_names: Vec<String>,
49    pub canonical_selector_names: Vec<String>,
50    pub has_source_input: bool,
51    pub has_style_input: bool,
52    pub has_type_fact_input: bool,
53}
54
55#[derive(Debug, Clone, PartialEq, Eq, Serialize)]
56#[serde(rename_all = "camelCase")]
57pub struct OmenaResolverRuntimeQueryBoundarySummaryV0 {
58    pub schema_version: &'static str,
59    pub product: &'static str,
60    pub input_product: String,
61    pub input_version: String,
62    pub module_query_count: usize,
63    pub fully_resolvable_module_count: usize,
64    pub source_only_module_count: usize,
65    pub style_only_module_count: usize,
66    pub unresolved_type_fact_count: usize,
67    pub runtime_capabilities: Vec<&'static str>,
68    pub blocking_gaps: Vec<&'static str>,
69    pub module_queries: Vec<OmenaResolverRuntimeModuleQueryV0>,
70}
71
72#[derive(Debug, Clone, PartialEq, Eq, Serialize)]
73#[serde(rename_all = "camelCase")]
74pub struct OmenaResolverRuntimeModuleQueryV0 {
75    pub style_file_path: String,
76    pub source_expression_ids: Vec<String>,
77    pub type_fact_expression_ids: Vec<String>,
78    pub selector_names: Vec<String>,
79    pub canonical_selector_names: Vec<String>,
80    pub can_resolve_source_expressions: bool,
81    pub can_check_type_fact_edges: bool,
82    pub can_query_selector_names: bool,
83    pub status: &'static str,
84}
85
86#[derive(Debug, Clone, PartialEq, Eq, Serialize)]
87#[serde(rename_all = "camelCase")]
88pub struct OmenaResolverSourceResolutionRuntimeIndexV0 {
89    pub schema_version: &'static str,
90    pub product: &'static str,
91    pub input_product: &'static str,
92    pub input_version: String,
93    pub expression_count: usize,
94    pub resolved_expression_count: usize,
95    pub unresolved_expression_count: usize,
96    pub blocking_gaps: Vec<&'static str>,
97    pub entries: Vec<OmenaResolverSourceResolutionRuntimeEntryV0>,
98}
99
100#[derive(Debug, Clone, PartialEq, Eq, Serialize)]
101#[serde(rename_all = "camelCase")]
102pub struct OmenaResolverSourceResolutionRuntimeEntryV0 {
103    pub query_id: String,
104    pub expression_id: String,
105    pub expression_kind: String,
106    pub style_file_path: String,
107    pub selector_names: Vec<String>,
108    pub finite_values: Option<Vec<String>>,
109    pub selector_certainty: String,
110    pub value_certainty: Option<String>,
111    pub selector_certainty_shape_kind: String,
112    pub value_certainty_shape_kind: String,
113    pub has_selector_match: bool,
114    pub has_finite_values: bool,
115    pub can_resolve_source_expression: bool,
116    pub status: &'static str,
117}
118
119#[derive(Debug, Clone, PartialEq, Eq, Serialize)]
120#[serde(rename_all = "camelCase")]
121pub struct OmenaResolverStylePackageManifestV0 {
122    pub package_json_path: String,
123    pub package_json_source: String,
124}
125
126#[derive(Debug, Clone, PartialEq, Eq, Serialize)]
127#[serde(rename_all = "camelCase")]
128pub struct OmenaResolverTsconfigPathMappingV0 {
129    pub base_path: String,
130    pub pattern: String,
131    pub target_patterns: Vec<String>,
132}
133
134#[derive(Debug, Clone, PartialEq, Eq, Serialize)]
135#[serde(rename_all = "camelCase")]
136pub struct OmenaResolverBundlerPathAliasMappingV0 {
137    pub pattern: String,
138    pub target_path: String,
139}
140
141#[derive(Debug, Clone, PartialEq, Eq, Serialize)]
142#[serde(rename_all = "camelCase")]
143pub struct OmenaResolverStyleModuleResolutionV0 {
144    pub schema_version: &'static str,
145    pub product: &'static str,
146    pub from_style_path: String,
147    pub source: String,
148    pub resolved_style_path: Option<String>,
149    pub candidate_count: usize,
150    pub candidates: Vec<String>,
151    pub resolution_kind: &'static str,
152}
153
154#[derive(Debug, Clone, PartialEq, Eq, Serialize)]
155#[serde(rename_all = "camelCase")]
156pub struct OmenaResolverSpecifierResolutionRuntimeV0 {
157    pub schema_version: &'static str,
158    pub product: &'static str,
159    pub from_style_path: String,
160    pub specifier_count: usize,
161    pub resolved_specifier_count: usize,
162    pub external_specifier_count: usize,
163    pub unresolved_specifier_count: usize,
164    pub entries: Vec<OmenaResolverSpecifierResolutionRuntimeEntryV0>,
165    pub ready_surfaces: Vec<&'static str>,
166}
167
168#[derive(Debug, Clone, PartialEq, Eq, Serialize)]
169#[serde(rename_all = "camelCase")]
170pub struct OmenaResolverSpecifierResolutionRuntimeEntryV0 {
171    pub source: String,
172    pub resolved_style_path: Option<String>,
173    pub candidate_count: usize,
174    pub resolution_kind: &'static str,
175    pub status: &'static str,
176}