@@ -685,18 +685,86 @@ <h4 class="text-center" style="color: black !important">
685685 </ mat-accordion >
686686 </ ng-container >
687687
688- <!-- Script Service Configuration (unchanged) -->
688+ <!-- Script Service Configuration -->
689689 < ng-container *ngIf ="this.isScriptService ">
690+ <!-- Script Content - Always visible -->
690691 < ng-container *ngIf ="getConfigControl('storageServiceId') ">
691692 < df-script-editor
692693 [isScript] ="this.isScriptService "
693694 [type] ="getControl('type') "
694695 [storageServiceId] ="getConfigControl('storageServiceId') "
695696 [storagePath] ="getConfigControl('storagePath') "
696- [content] ="getConfigControl('serviceDefinition ') "
697+ [content] ="getConfigControl('content ') "
697698 [cache] ="serviceData ? serviceData.name : '' "
698699 class ="full-width "> </ df-script-editor >
699700 </ ng-container >
701+
702+ <!-- Advanced Options Section for Script Services -->
703+ < mat-accordion class ="full-width ">
704+ < mat-expansion-panel [expanded] ="false ">
705+ < mat-expansion-panel-header >
706+ Advanced Options
707+ </ mat-expansion-panel-header >
708+ < div class ="details-section ">
709+ <!-- OpenAPI Service Definition Section -->
710+ < mat-button-toggle-group
711+ aria-label ="Service Definition Type "
712+ [(ngModel)] ="serviceDefinitionType "
713+ [ngModelOptions] ="{ standalone: true } "
714+ (change) ="
715+ onServiceDefinitionTypeChange(serviceDefinitionType)
716+ ">
717+ < mat-button-toggle value ="0 "> JSON</ mat-button-toggle >
718+ < mat-button-toggle value ="1 "> YAML</ mat-button-toggle >
719+ </ mat-button-toggle-group >
720+ < mat-label class ="full-width "> OpenAPI Service Definition (Optional)</ mat-label >
721+
722+ < df-ace-editor
723+ class ="full-width "
724+ [formControl] ="getServiceDocByServiceIdControl('content') "
725+ [mode] ="serviceDefinitionMode ">
726+ </ df-ace-editor >
727+
728+ <!-- Other configuration fields if any -->
729+ < ng-container *ngFor ="let item of viewSchema ">
730+ < ng-container *ngIf ="item.name !== 'content' ">
731+ < df-dynamic-field
732+ *ngIf ="
733+ [
734+ 'integer',
735+ 'password',
736+ 'string',
737+ 'text',
738+ 'picklist',
739+ 'multi_picklist',
740+ 'boolean',
741+ 'file_certificate',
742+ 'file_certificate_api'
743+ ].includes(item.type)
744+ "
745+ color ="primary "
746+ [schema] ="item "
747+ [formControl] ="getConfigControl(item.name) "
748+ [class.dynamic-width] ="
749+ ['file_certificate', 'file_certificate_api'].indexOf(
750+ item.type
751+ ) === -1
752+ "
753+ [class.full-width] ="
754+ ['file_certificate', 'file_certificate_api'].indexOf(
755+ item.type
756+ ) !== -1
757+ "> </ df-dynamic-field >
758+ < df-array-field
759+ *ngIf ="item.type === 'array' || item.type === 'object' "
760+ [schema] ="item "
761+ [formControl] ="getConfigControl(item.name) "
762+ class ="full-width "> </ df-array-field >
763+ </ ng-container >
764+ </ ng-container >
765+ </ div >
766+ </ mat-expansion-panel >
767+ </ mat-accordion >
700768 </ ng-container >
701769
702770 <!-- Other Service Types (unchanged) -->
0 commit comments