conductor/examples/project-definitions/valid-dropdown-basic.json
2026-07-18 10:23:13 -04:00

121 lines
3.6 KiB
JSON

{
"$schema": "../../shared/schemas/conductor-project.schema.json",
"schemaVersion": "0.1.0",
"project": {
"id": "proj_dropdown_basic",
"name": "Dropdown Basic Demo",
"description": "Step 17.2 example: a Dropdown whose selected value feeds a REST action via {{components.environmentDropdown.value}} template interpolation. The response is displayed in a JsonViewer.",
"pages": [
{
"id": "page_main",
"name": "Main Page",
"order": 0,
"components": [
{
"id": "lbl_env",
"type": "Label",
"name": "environmentLabel",
"position": { "x": 40, "y": 20 },
"size": { "width": 320, "height": 28 },
"properties": {
"label": "Select an environment and click Fetch Data.",
"visible": true,
"disabled": false
},
"events": []
},
{
"id": "dropdown_env",
"type": "Dropdown",
"name": "environmentDropdown",
"position": { "x": 40, "y": 56 },
"size": { "width": 260, "height": 72 },
"properties": {
"label": "Environment",
"placeholder": "Select an environment",
"options": [
{ "label": "Development", "value": "dev" },
{ "label": "Test", "value": "test" },
{ "label": "Production", "value": "prod" }
],
"value": "dev",
"visible": true,
"disabled": false
},
"events": []
},
{
"id": "btn_fetch",
"type": "Button",
"name": "fetchButton",
"position": { "x": 40, "y": 144 },
"size": { "width": 160, "height": 40 },
"properties": {
"label": "Fetch Data",
"visible": true,
"disabled": false
},
"events": [
{
"event": "onClick",
"actionId": "action_httpbin_env"
}
]
},
{
"id": "viewer_result",
"type": "JsonViewer",
"name": "resultsViewer",
"position": { "x": 40, "y": 200 },
"size": { "width": 560, "height": 300 },
"properties": {
"label": "Response",
"visible": true,
"disabled": false
},
"events": [],
"bindings": [
{ "bindingId": "bind_body_to_viewer" }
]
}
],
"events": []
}
],
"actions": [
{
"id": "action_httpbin_env",
"name": "Httpbin GET with Environment",
"description": "GET to httpbin.org with the selected environment as a query parameter, interpolated from {{components.environmentDropdown.value}}.",
"method": "GET",
"url": "https://httpbin.org/get",
"headers": {
"Accept": "application/json"
},
"queryParameters": {
"env": "{{components.environmentDropdown.value}}",
"source": "conductor-step-17-2"
},
"pathParameters": {},
"bodyTemplate": "",
"authenticationType": "anonymous",
"responseMapping": []
}
],
"bindings": [
{
"id": "bind_body_to_viewer",
"source": "actions.action_httpbin_env.response.body",
"target": "components.resultsViewer.value",
"trigger": "onSuccess"
}
],
"variables": {},
"settings": {}
}
}