warp_resolver_pkg/
lib.rs

1pub mod condition;
2pub mod variable;
3
4use warp_controller_pkg::job::{ExternalInput, JobStatus};
5use cosmwasm_schema::{cw_serde, QueryResponses};
6use cosmwasm_std::{CosmosMsg, QueryRequest};
7#[cw_serde]
8pub struct InstantiateMsg {}
9
10#[cw_serde]
11pub enum ExecuteMsg {
12    ExecuteSimulateQuery(ExecuteSimulateQueryMsg),
13    ExecuteValidateJobCreation(ExecuteValidateJobCreationMsg),
14    ExecuteHydrateVars(ExecuteHydrateVarsMsg),
15    ExecuteResolveCondition(ExecuteResolveConditionMsg),
16    ExecuteApplyVarFn(ExecuteApplyVarFnMsg),
17    ExecuteHydrateMsgs(ExecuteHydrateMsgsMsg),
18}
19
20#[derive(QueryResponses)]
21#[cw_serde]
22pub enum QueryMsg {
23    #[returns(SimulateResponse)]
24    SimulateQuery(SimulateQueryMsg),
25    #[returns(String)]
26    QueryValidateJobCreation(QueryValidateJobCreationMsg),
27    #[returns(String)]
28    QueryHydrateVars(QueryHydrateVarsMsg),
29    #[returns(bool)]
30    QueryResolveCondition(QueryResolveConditionMsg),
31    #[returns(String)]
32    QueryApplyVarFn(QueryApplyVarFnMsg),
33    #[returns(Vec<CosmosMsg>)]
34    QueryHydrateMsgs(QueryHydrateMsgsMsg),
35}
36
37#[cw_serde]
38pub struct MigrateMsg {}
39
40#[cw_serde]
41pub struct ExecuteSimulateQueryMsg {
42    pub query: QueryRequest<String>,
43}
44
45#[cw_serde]
46pub struct ExecuteHydrateMsgsMsg {
47    pub msgs: String,
48    pub vars: String,
49}
50
51#[cw_serde]
52pub struct ExecuteHydrateVarsMsg {
53    pub vars: String,
54    pub external_inputs: Option<Vec<ExternalInput>>,
55}
56
57#[cw_serde]
58pub struct ExecuteResolveConditionMsg {
59    pub condition: String,
60    pub vars: String,
61}
62
63#[cw_serde]
64pub struct ExecuteApplyVarFnMsg {
65    pub vars: String,
66    pub status: JobStatus,
67}
68
69#[cw_serde]
70pub struct ExecuteValidateJobCreationMsg {
71    pub condition: String,
72    pub terminate_condition: Option<String>,
73    pub vars: String,
74    pub msgs: String,
75}
76
77#[cw_serde]
78pub struct QueryValidateJobCreationMsg {
79    pub condition: String,
80    pub terminate_condition: Option<String>,
81    pub vars: String,
82    pub msgs: String,
83}
84
85#[cw_serde]
86pub struct QueryHydrateMsgsMsg {
87    pub msgs: String,
88    pub vars: String,
89}
90
91#[cw_serde]
92pub struct QueryHydrateVarsMsg {
93    pub vars: String,
94    pub external_inputs: Option<Vec<ExternalInput>>,
95}
96
97#[cw_serde]
98pub struct QueryResolveConditionMsg {
99    pub condition: String,
100    pub vars: String,
101}
102
103#[cw_serde]
104pub struct QueryApplyVarFnMsg {
105    pub vars: String,
106    pub status: JobStatus,
107}
108
109#[cw_serde]
110pub struct SimulateQueryMsg {
111    pub query: QueryRequest<String>,
112}
113
114#[cw_serde]
115pub struct SimulateResponse {
116    pub response: String,
117}