Challenge Overview
Welcome to the TOSCA Value Editor POC - Get op output & constant Challenge. In this challenge, we are looking for you to create the Value Editor POC application using Angular 2+ framework based on the requirements listed below.
In the previous challenges Challenge 1 , Challenge 2, Challenge 3, Challenge 4, Challegne 5 & Challegne 6 we have developed Constraint Editor & valiue editor. Here we need update the functionalities of the Value Editor.
Let us know any question you have!
Technology stack
- Angular 7
- NodeJS
- HTML
- SCSS
- JavaScript
0 Resource & links
- Storyboard & reference docs attached in the challenge forum.
1 Storyboard:
Only the sections marked in green are in scope. Other than that the sidebar should also be updated & button functions should work.
- Value Editor: get_operation_output
- Value Editor: constant
-
The value Editor should update the value of the
default
node. in the Existing.yaml. - If
Required: true
(checked https://d.pr/free/i/Obv5DW) then the value ofdefault
should be null/blank & hide this Value Editor section form the screen otherwise, show the Value Editor section.
2 Value Editor: get_operation_output
- On selecting the get_operation_output option, the right section drop-down options should list the 5 drop-downs & a code viewer section as displayed in the 1. Storyboard section.
- These five drop-downs synched with each other:
2.1 modable_entity
- It should list Self & the values of
imports
node. Ref: https://d.pr/free/i/wT3LXy2.2 target_entity
- If no value is selected in
modable_entity
text-box, it should not show any options. & If Self is selected in themodable_entity
select control then it's drop-down options should show the immediate values ofnode_templates
Ref: https://d.pr/free/i/UJPJNX . In this case, it should the options as newEquipmentProject, newEquipmentScheme, pRouterDevice, pRouterShelf, pRouterCard- If some other option is selected in the
modable_entity
select control (let say it'screate_scheme_node_definitions_v2.yaml
) then it's drop-down options should show the immediate values ofnode_templates
from this selected file. In this case, it should the options as newEquipmentProject_2, newEquipmentScheme_2, pRouterDevice_2, pRouterShelf_2, pRouterCard_2. Ref: https://d.pr/free/i/W2TmaZ2.3 interface_entity
- If target_entity select control's value is null then there should be no drop-down values for the
interface_entity
select control.- If target_entity select control's value is not null then the drop-down options of interface_entity select control should list the values from the
interfaces
node of the target_entity's selected value. Ref: https://d.pr/free/i/eAmVKp . In this case, it's CreateScheme, StartFundamentalPlanning, AddComponents...2.4 operation_entity
- If interface_entity select control's value is null then there should be no drop-down values for the
operation_entity
select control.- If interface_entity select control's value is not null then the drop-down options of operation_entity select control should list the values from the interface_entity's selected value. Ref: https://d.pr/free/i/uVVmoI . Let's say a user has selected
CreateScheme
in the interface_entity select control then, in this case the options of operation_entity select control should be captureSchemeDetails2.5 output_entity
- If operation_entity select control's value is null then there should be no drop-down values for the
output_entity
select control.- If operation_entity select control's value is not null then the drop-down options of output_entity select control should list the values from the
outputs
node of the operation_entity's selected value. Ref: https://d.pr/free/i/f8GQx6 . Let's say a user has selectedcaptureSchemeDetails
in the operation_entity select control then, in this case the options of operation_entity select control should be schemeSysid, schemeNumber, errorCode , errorMessage2.6 Code view
- https://d.pr/free/i/QrqLm0
- Update the code view based on the selected nodes.
2.7 Resultant Syntax
- The resulatant syntax for
get_operation_output
isget_operation_output(modable_entity_val, modable_entity_val.target_entity_val.operation_entity_val, output_entity_val)
.- Ex:
get_operation_output(SELF, newEquipmentScheme.CreateScheme.captureSchemeDetails, schemeSysid)
.
3 Constant
- On selecting the constant option, the right section should show one text-box.
- User shold be able to enter any value in this textbox.
- Resultant Syntax for this is:
constant(text_box_value)
4 Existing functions
- The existing functions implemented on clicking the button on the upper right section should continue to work even after implementing the above requirements.
Final Submission Guidelines
- Full source code with all the requirements implemented.
- Detailed readme in markdown format that describes how to configure, build and run the app.
- Verification video or doc.
Licenses & attribution
- Third-party assets used to build your item must be properly licensed or free for commercial use. MIT, some modified BSD, Apache 2 licenses are ok. If a library is not commercial friendly you will need to get our approval first.
- Sufficient information regarding third-party assets must be present in your documentation. This includes the author, license info and a direct link to the asset online.
FAQs
After submission as a submitter what should be my next step?
Once the challenge submission phase is over the assigned reviewers are going to review all the submissions based on the challenge scorecard. They are expected to raise all issues found in the submissions they are reviewing. After the completion of review phase the Appeal phase status. In this phase, the submitters should go to the Online Review page, select the project & have a look at the issues raised by the reviewers. If you disagree with the reviewer on any issue/comment, raise an appeal by clicking the 'Appeal' button associated with the section and entering the appeal comment.
When & where I can see the challenge results?
After the Appeal response phase is over the results are displayed on the challenge specification page as well as on the online reivew page.