1 <div class="scrollWrapper">
4 <div class="form-group">
5 <label for="exampleInputEmail1">Action Name</label>
6 <input type="text" class="form-control" placeholder="Action Name" readonly [value]="actionName">
11 <div class="row m-b add-attribute">
13 <h5>Add Attribute</h5>
15 <div class="col pr-0 text-center">
16 <button type="button" data-toggle="modal" data-target="#exampleModalScrollable"
17 class="btn btn-secondary"><i class="icon-custom-attribute" type="button"
18 aria-hidden="true"></i></button>
19 <span>Create Custom</span>
21 <div class="col text-center">
22 <button (click)="printSomethings()" [disabled]="!isFunctionAttributeActive" type="button"
23 data-toggle="modal" data-target="#exampleModalScrollable3" class="btn btn-secondary"><i
24 class="icon-function-attribute" type="button" aria-hidden="true"></i></button>
25 <span>Import From Function</span>
31 <div class="accordion" id="accordionExample">
33 <div class="card-header" id="headingOne">
35 <button class="btn btn-link" type="button" data-toggle="collapse" data-target="#collapseOne"
36 aria-expanded="true" aria-controls="collapseOne">
41 <div id="collapseOne" class="collapse show" aria-labelledby="headingOne" data-parent="#accordionExample">
42 <div class="card-body action-attributes">
45 <div class="form-group" *ngFor="let input of inputs">
46 <label for="exampleFormControlTextarea1">{{input.name}}
47 <i [hidden]="!input.required" class="icon-required-star" type="button"
48 aria-hidden="true"></i>
49 <i [hidden]="input.required" class="icon-required-star optional-attribute"
50 type="button" aria-hidden="true"></i>
52 <div class="attributeOptions">
53 <a data-toggle="modal" data-target="#exampleModalScrollable2"
54 class="accordion-delete editAttribute" tooltip="Edit Attribute"
55 placement="bottom"><i class="icon-edit"></i></a>
56 <a class="accordion-delete deleteAttribute" tooltip="Delete Attribute"
57 placement="bottom"><i class="icon-delete-sm"></i></a>
67 <div class="accordion" id="accordionExample1">
69 <div class="card-header" id="headingOne">
71 <button class="btn btn-link" type="button" data-toggle="collapse" data-target="#collapseTwo"
72 aria-expanded="true" aria-controls="collapseTwo">
78 <div id="collapseTwo" class="collapse show" aria-labelledby="headingOne" data-parent="#accordionExample1">
79 <div class="card-body">
82 <div class="form-group" *ngFor="let output of outputs">
83 <label for="exampleFormControlTextarea1">{{output.name}}
84 <i [hidden]="!output.required" class="icon-required-star" type="button"
85 aria-hidden="true"></i>
86 <i [hidden]="output.required" class="icon-required-star optional-attribute"
87 type="button" aria-hidden="true"></i>
98 <!--Action - Add Custom Attribute - Modal-->
99 <div class="modal fade" id="exampleModalScrollable" tabindex="-1" role="dialog"
100 aria-labelledby="exampleModalScrollableTitle" aria-hidden="true">
101 <div class="modal-dialog modal-dialog-scrollable" role="document">
102 <div class="modal-content">
103 <div class="modal-header">
104 <h5 class="modal-title" id="exampleModalScrollableTitle">
105 Add Custom Attributes</h5>
106 <button type="button" class="close" data-dismiss="modal" aria-label="Close">
107 <img src="assets/img/icon-close.svg" />
110 <div class="modal-body createAttributeTabs">
111 <!--Action - Inputs & Outputs Attribute-->
112 <ul class="nav nav-tabs" id="myTab" role="tablist">
113 <li class="nav-item">
114 <a class="nav-link active" id="home-tab" data-toggle="tab" href="#home" role="tab"
115 aria-controls="home" aria-selected="true">Inputs</a>
117 <li class="nav-item">
118 <a class="nav-link" id="profile-tab" data-toggle="tab" href="#profile" role="tab"
119 aria-controls="profile" aria-selected="false">Outputs</a>
122 <div class="tab-content" id="myTabContent">
124 <div class="tab-pane fade show active create-form" id="home" role="tabpanel"
125 aria-labelledby="home-tab">
126 <div class="form-group row">
127 <label for="inputEmail3" class="col-sm-3 col-form-label">Name <span>*</span></label>
128 <div class="col-sm-9">
129 <input [(ngModel)]="inputActionAttribute.name" type="email" class="form-control"
130 id="inputEmail3" placeholder="Attribute name">
133 <div class="form-group row">
134 <label for="inputPassword3" class="col-sm-3 col-form-label">Description</label>
135 <div class="col-sm-9">
136 <input [(ngModel)]="inputActionAttribute.description" type="text" class="form-control"
137 id="inputPassword3" placeholder="Add some description">
140 <div class="form-group row">
141 <label class="col-form-label col-sm-3 pt-0">Type <span>*</span></label>
142 <div class="col-sm-9">
143 <div class="list-group list-group-horizontal">
144 <button type="button" class="list-group-item list-group-item-action"
145 (click)="setInputType('String')">
148 <button type="button" class="list-group-item list-group-item-action"
149 (click)="setInputType('Integer')">Integer
151 <button type="button" class="list-group-item list-group-item-action"
152 (click)="setInputType('Boolean')">Boolean
154 <button type="button" class="list-group-item list-group-item-action"
155 (click)="setInputType('List')">List
157 <button type="button" class="list-group-item list-group-item-action"
158 (click)="setInputType('Other')">Other
161 <input [hidden]="!isInputOtherType" type="text" class="form-control mt-2 mb-2"
162 id="inputPassword4" placeholder="Add Other type name" [(ngModel)]="inputOtherType"
163 (change)="setInputType(inputOtherType)">
167 <div class="form-group row">
168 <label class="col-form-label col-sm-3 pt-0">Required <span>*</span></label>
169 <div class="col-sm-9">
170 <div class="custom-control custom-radio custom-control-inline">
171 <input type="radio" id="customRadioInline1" name="customRadioInline1"
172 class="custom-control-input" (click)="setInputRequired(true)">
173 <label class="custom-control-label" for="customRadioInline1">True</label>
175 <div class="custom-control custom-radio custom-control-inline">
176 <input type="radio" id="customRadioInline2" name="customRadioInline1"
177 class="custom-control-input" (click)="setInputRequired(false)">
178 <label class="custom-control-label" for="customRadioInline2">False</label>
184 <div class="tab-pane fade create-form" id="profile" role="tabpanel" aria-labelledby="profile-tab">
185 <div class="form-group row">
186 <label for="inputEmail3" class="col-sm-3 col-form-label">Name <span>*</span></label>
187 <div class="col-sm-9">
188 <input [(ngModel)]="outputActionAttribute.name" type="email" class="form-control"
189 id="inputEmail3" placeholder="Attribute name">
192 <div class="form-group row">
193 <label for="inputPassword3" class="col-sm-3 col-form-label">Description</label>
194 <div class="col-sm-9">
195 <input [(ngModel)]="outputActionAttribute.description" type="text" class="form-control"
196 id="inputPassword3" placeholder="Add some description">
199 <div class="form-group row">
200 <label class="col-form-label col-sm-3 pt-0">Required <span>*</span></label>
201 <div class="col-sm-9">
202 <div class="custom-control custom-radio custom-control-inline">
203 <input type="radio" id="customRadioInline3" name="customRadioInline3"
204 class="custom-control-input" (click)="setOutputRequired(true)">
205 <label class="custom-control-label" for="customRadioInline3">True</label>
207 <div class="custom-control custom-radio custom-control-inline">
208 <input type="radio" id="customRadioInline4" name="customRadioInline3"
209 class="custom-control-input">
210 <label class="custom-control-label" for="customRadioInline4"
211 (click)="setOutputRequired(false)">False</label>
215 <div class="form-group row">
216 <label class="col-form-label col-sm-3 pt-0">Type <span>*</span></label>
217 <div class="col-sm-9">
218 <div class="list-group list-group-horizontal">
219 <button type="button" class="list-group-item list-group-item-action"
220 (click)="setOutputType('String')">String
222 <button type="button" class="list-group-item list-group-item-action"
223 (click)="setOutputType('Integer')">
226 <button type="button" class="list-group-item list-group-item-action"
227 (click)="setOutputType('Boolean')">
230 <button type="button" class="list-group-item list-group-item-action"
231 (click)="setOutputType('List')">
234 <button type="button" class="list-group-item list-group-item-action"
235 (click)="setOutputType('Other')">
239 <input [hidden]="!isOutputOtherType" type="text" class="form-control mt-2 mb-2"
240 id="inputPassword3" placeholder="Add Other type name" [(ngModel)]="outputOtherType"
241 (change)="setOutputType(outputOtherType)">
244 <!--Get Attribute Value-->
245 <div class="form-group row mb-0">
246 <label class="col-form-label col pt-0">
247 Value <span class="notation">(get_attribute)</span>
250 <div class="form-group row">
252 <input type="email" class="form-control" id="inputEmail3" placeholder="Attributes">
253 <div class="container">
254 <div *ngFor="let tempInput of steps">{{tempInput}}</div>
258 <div class="row mb-4">
260 <b class="listBoxTitle">1. Choose Function Name</b>
261 <div class="list-group addedFunctionsList" id="list-tab" role="tablist">
262 <input type="text" class="form-control input-search-controller"
263 placeholder="Functions">
264 <div class="scrollWrapper" *ngFor="let step of steps">
265 <a class="list-group-item list-group-item-action active" id="list-home-list"
266 data-toggle="list" href="#list-home" role="tab" aria-controls="home"><i
267 class="icon-resource_resolution mr-1" aria-hidden="true"></i>
268 {{step}} <i class="icon-next_arrow" aria-hidden="true" (click)="getAttributesAndOutputs(
269 this.designerState.template.workflows[actionName]['steps'][step]['target']
275 <b class="listBoxTitle">2. Choose Input Attribute Name</b>
276 <div class="tab-content nestedAttributes mt-0 p-0" id="nav-tabContent">
277 <input type="text" class="form-control input-search-controller"
278 placeholder="Attributes">
279 <div class="tab-pane fade show active" id="list-home" role="tabpanel"
280 aria-labelledby="list-home-list">
281 <div class="scrollWrapper">
282 <div *ngIf="suggestedAttributes.length>0" class="btn-group btn-group-toggle"
283 data-toggle="buttons">
284 <label class="btn btn-secondary active"
285 *ngFor="let suggestedAttribute of suggestedAttributes"
286 (click)="addTempOutputAttr(suggestedAttribute)">
287 <input type="radio" name="options" [id]="suggestedAttribute"
288 autocomplete="off" (click)="addTempOutputAttr(suggestedAttribute)">
289 {{suggestedAttribute}}
295 <div *ngIf="suggestedAttributes.length == 0">
296 <p class="noAttributes">No Attributes Available</p>
297 <!--Attribute Details
298 <div class="nav-item dropdown helpMenu">
299 <input class="dropdown-toggle" type="text">
300 <div class="dropdown-text"><i class="icon-info" aria-hidden="true"></i></div>
301 <ul class="dropdown-content">
303 <i class="icon-get_started" aria-hidden="true"></i>
305 <input id="clicker3" type="checkbox" />
306 <label for="clicker">
308 <span>Quick steps to help you get started</span>
325 <div class="modal-footer">
326 <button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
327 <button type="button" class="btn btn-primary" (click)="submitAttributes()">Submit Attributes</button>
333 <!--Action - Add Attribute From Function - Modal-->
334 <div class="modal fade" id="exampleModalScrollable3" tabindex="-1" role="dialog"
335 aria-labelledby="exampleModalScrollableTitle3" aria-hidden="true">
336 <div class="modal-dialog modal-dialog-scrollable" role="document">
337 <div class="modal-content">
338 <div class="modal-header">
339 <h5 class="modal-title" id="exampleModalScrollableTitle3">
340 Add Attributes from Function</h5>
341 <button type="button" class="close" data-dismiss="modal" aria-label="Close">
342 <img src="assets/img/icon-close.svg" />
345 <div class="modal-body createAttributeTabs">
346 <!--Action - Inputs & Outputs Attribute-->
347 <ul class="nav nav-tabs" id="myTab" role="tablist">
348 <li class="nav-item">
349 <a class="nav-link active" id="home-tab" data-toggle="tab" href="#input" role="tab"
350 aria-controls="home" aria-selected="true">Inputs</a>
352 <li class="nav-item">
353 <a class="nav-link" id="profile-tab" data-toggle="tab" href="#output" role="tab"
354 aria-controls="profile" aria-selected="false">Outputs</a>
357 <div class="tab-content border-0 mt-2" id="myTabContent">
359 <div class="tab-pane fade show active create-form" id="input" role="tabpanel"
360 aria-labelledby="input-tab">
361 <div class="form-group row">
363 <input type="email" class="form-control" id="inputEmail3" placeholder="Attributes">
364 <div class="container">
365 <div *ngFor="let tempInput of tempInputs">{{tempInput}}</div>
372 <b class="listBoxTitle">1. Choose Function Name</b>
373 <div class="list-group addedFunctionsList" id="list-tab" role="tablist">
374 <input type="text" class="form-control input-search-controller"
375 placeholder="Functions">
376 <div class="scrollWrapper" *ngFor="let step of steps">
377 <a class="list-group-item list-group-item-action active" id="list-home-list"
378 data-toggle="list" href="#list-home" role="tab" aria-controls="home"><i
379 class="icon-resource_resolution mr-1" aria-hidden="true"></i>
380 {{step}} <i class="icon-next_arrow" aria-hidden="true" (click)="setInputAndOutputs(
381 this.designerState.template.workflows[actionName]['steps'][step]['target']
387 <b class="listBoxTitle">2. Choose Input Attribute Name</b>
388 <div class="tab-content nestedAttributes mt-0 p-0" id="nav-tabContent">
389 <input type="text" class="form-control input-search-controller"
390 placeholder="Attributes">
391 <div class="tab-pane fade show active" id="list-home" role="tabpanel"
392 aria-labelledby="list-home-list">
393 <div class="scrollWrapper">
394 <div *ngIf="suggestedInputs.length>0" class="btn-group btn-group-toggle"
395 data-toggle="buttons">
396 <label class="btn btn-secondary active"
397 *ngFor="let suggestedInput of suggestedInputs"
398 (click)="addTempInput(suggestedInput)">
399 <input type="radio" name="options" [id]="suggestedInput"
400 autocomplete="off" (click)="addTempInput(suggestedInput)">
404 <div *ngIf="suggestedInputs.length == 0">you don't have data</div>
412 <div class="tab-pane fade create-form" id="output" role="tabpanel" aria-labelledby="output-tab">
413 <div class="form-group row">
415 <input type="email" class="form-control" id="inputEmail3" placeholder="Attributes">
416 <div class="container">
417 <div *ngFor="let tempOutput of tempOutputs">{{tempOutput}}</div>
424 <b class="listBoxTitle">1. Choose Function Name</b>
425 <div class="list-group addedFunctionsList" id="list-tab" role="tablist">
426 <input type="text" class="form-control input-search-controller"
427 placeholder="Functions">
428 <div class="scrollWrapper" *ngFor="let step of steps">
429 <a class="list-group-item list-group-item-action active" id="list-home-list"
430 data-toggle="list" href="#list-home" role="tab" aria-controls="home"><i
431 class="icon-resource_resolution mr-1" aria-hidden="true"></i>
432 {{step}} <i class="icon-next_arrow" aria-hidden="true" (click)="setInputAndOutputs(
433 this.designerState.template.workflows[actionName]['steps'][step]['target']
439 <b class="listBoxTitle">2. Choose output Attribute Name</b>
440 <div class="tab-content nestedAttributes mt-0 p-0" id="nav-tabContent">
441 <input type="text" class="form-control input-search-controller"
442 placeholder="Attributes">
443 <div class="tab-pane fade show active" id="list-home" role="tabpanel"
444 aria-labelledby="list-home-list">
445 <div class="scrollWrapper">
446 <div *ngIf="suggestedOutputs.length > 0" class="btn-group btn-group-toggle"
447 data-toggle="buttons">
448 <label class="btn btn-secondary active"
449 *ngFor="let suggestedOutput of suggestedOutputs">
450 <input type="radio" name="options" [id]="suggestedOutput"
451 autocomplete="off" (dblclick)="addTempOutput(suggestedOutput)">
456 <div *ngIf="suggestedOutputs.length == 0">you don't have data</div>
465 <div class="modal-footer">
466 <button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
467 <button type="button" class="btn btn-primary" (click)="submitTempAttributes()">Submit
474 <!--Delete Action - Modal-->
475 <div class="modal fade" id="exampleModalScrollable1" tabindex="-1" role="dialog"
476 aria-labelledby="exampleModalScrollableTitle1" aria-hidden="true">
477 <div class="modal-dialog modal-dialog-scrollable" role="document">
478 <div class="modal-content">
479 <div class="modal-header">
480 <h5 class="modal-title" id="exampleModalScrollableTitle1">
482 <button type="button" class="close" data-dismiss="modal" aria-label="Close">
483 <img src="assets/img/icon-close.svg" />
486 <div class="modal-body">
487 Are you sure you want to delete <b>resource-assignment</b> action?
489 <div class="modal-footer">
490 <button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
491 <button type="button" class="btn btn-primary">Delete</button>
496 <!--Action - Edit Custom Attribute - Modal-->
497 <div class="modal fade" id="exampleModalScrollable2" tabindex="-1" role="dialog"
498 aria-labelledby="exampleModalScrollableTitle2" aria-hidden="true">
499 <div class="modal-dialog modal-dialog-scrollable" role="document">
500 <div class="modal-content">
501 <div class="modal-header">
502 <h5 class="modal-title" id="exampleModalScrollableTitle2">
503 Edit Custom Attributes</h5>
504 <button type="button" class="close" data-dismiss="modal" aria-label="Close">
505 <img src="assets/img/icon-close.svg" />
508 <div class="modal-body createAttributeTabs">
509 <div class="create-form">
510 <div class="form-group row">
511 <label for="inputEmail3" class="col-sm-3 col-form-label">Name <span>*</span></label>
512 <div class="col-sm-9">
513 <input type="email" class="form-control" id="inputEmail3" placeholder="Attribute name"
514 value="resource-assignment-properties">
517 <div class="form-group row">
518 <label for="inputPassword3" class="col-sm-3 col-form-label">Description</label>
519 <div class="col-sm-9">
520 <input type="text" class="form-control" id="inputPassword3"
521 placeholder="Add some description"
522 value="Dynamic PropertyDefinition for workflow(resource-assignment).">
525 <div class="form-group row">
526 <label class="col-form-label col-sm-3 pt-0">Type <span>*</span></label>
527 <div class="col-sm-9">
528 <div class="list-group list-group-horizontal">
529 <button type="button" class="list-group-item list-group-item-action">String
531 <button type="button" class="list-group-item list-group-item-action">Integer</button>
532 <button type="button" class="list-group-item list-group-item-action">Boolean</button>
533 <button type="button" class="list-group-item list-group-item-action">List</button>
534 <button type="button" class="list-group-item list-group-item-action active">Other
537 <input type="text" class="form-control mt-2 mb-2" id="inputPassword3"
538 placeholder="Add Other type name" value="dt-resource-assignment-properties">
541 <div class="form-group row">
542 <label class="col-form-label col-sm-3 pt-0">Required <span>*</span></label>
543 <div class="col-sm-9">
544 <div class="custom-control custom-radio custom-control-inline">
545 <input type="radio" id="customRadioInline1" name="customRadioInline1"
546 class="custom-control-input" checked>
547 <label class="custom-control-label" for="customRadioInline1">True</label>
549 <div class="custom-control custom-radio custom-control-inline">
550 <input type="radio" id="customRadioInline2" name="customRadioInline1"
551 class="custom-control-input">
552 <label class="custom-control-label" for="customRadioInline2">False</label>
557 <div class="modal-footer">
558 <button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
559 <button type="button" class="btn btn-primary">Save</button>