@@ -34,6 +34,8 @@ import {
3434 MODES ,
3535 Icon ,
3636 GenericSectionErrorState ,
37+ ResponseType ,
38+ BulkEditConfigV2Type ,
3739} from '@devtron-labs/devtron-fe-common-lib'
3840import { SERVER_MODE , ViewType } from '../../config'
3941import { BulkEditsProps , BulkEditsState , BulkEditVersion } from './bulkEdits.type'
@@ -53,10 +55,6 @@ import { importComponentFromFELibrary } from '@Components/common'
5355const getBulkEditConfig = importComponentFromFELibrary ( 'getBulkEditConfig' , null , 'function' )
5456
5557const ReadmeVersionOptions = [
56- {
57- label : 'v1beta1/application' ,
58- value : BulkEditVersion . v1 ,
59- } ,
6058 ...( getBulkEditConfig
6159 ? [
6260 {
@@ -65,6 +63,10 @@ const ReadmeVersionOptions = [
6563 } ,
6664 ]
6765 : [ ] ) ,
66+ {
67+ label : 'v1beta1/application' ,
68+ value : BulkEditVersion . v1 ,
69+ } ,
6870]
6971
7072export default class BulkEdits extends Component < BulkEditsProps , BulkEditsState > {
@@ -77,7 +79,6 @@ export default class BulkEdits extends Component<BulkEditsProps, BulkEditsState>
7779 outputResult : undefined ,
7880 impactedObjects : undefined ,
7981 isReadmeLoading : true ,
80- bulkConfig : [ ] ,
8182 readmeVersionOptions : ReadmeVersionOptions ,
8283 selectedReadmeVersionOption : ReadmeVersionOptions [ 0 ] ,
8384 readmeResult : {
@@ -87,6 +88,7 @@ export default class BulkEdits extends Component<BulkEditsProps, BulkEditsState>
8788 showExamples : true ,
8889 activeOutputTab : 'output' ,
8990 codeEditorPayload : undefined ,
91+ schema : null ,
9092 }
9193 }
9294
@@ -101,26 +103,26 @@ export default class BulkEdits extends Component<BulkEditsProps, BulkEditsState>
101103
102104 getInitialized ( ) {
103105 Promise . allSettled ( [
104- getBulkEditConfig ?.( ) . then ( ( { result : { readme } } ) => {
105- return readme
106- } ) ,
106+ ( getBulkEditConfig ?.( ) as Promise < ResponseType < BulkEditConfigV2Type > > ) . then (
107+ ( { result : { readme, schema } } ) => {
108+ this . setState ( { schema } )
109+
110+ return readme
111+ } ,
112+ ) ,
107113 getSeeExample ( ) . then ( ( { result } ) => {
108114 return result [ 0 ] . readme
109115 } ) ,
110- ] )
111- . then ( ( [ v2ReadmeResult , v1ReadmeResult ] ) => {
112- const v2Readme = v2ReadmeResult . status === 'fulfilled' ? v2ReadmeResult . value : null
113- const v1Readme = v1ReadmeResult . status === 'fulfilled' ? v1ReadmeResult . value : null
116+ ] ) . then ( ( [ v2ReadmeResult , v1ReadmeResult ] ) => {
117+ const v2Readme = v2ReadmeResult . status === 'fulfilled' ? v2ReadmeResult . value : null
118+ const v1Readme = v1ReadmeResult . status === 'fulfilled' ? v1ReadmeResult . value : null
114119
115- this . setState ( {
116- isReadmeLoading : false ,
117- readmeResult : { [ BulkEditVersion . v1 ] : v1Readme , [ BulkEditVersion . v2 ] : v2Readme } ,
118- } )
119- } )
120- . catch ( ( error ) => {
121- showError ( error )
122- this . setState ( { isReadmeLoading : false , statusCode : error . code } )
120+ this . setState ( {
121+ isReadmeLoading : false ,
122+ view : ViewType . FORM ,
123+ readmeResult : { [ BulkEditVersion . v1 ] : v1Readme , [ BulkEditVersion . v2 ] : v2Readme } ,
123124 } )
125+ } )
124126 }
125127
126128 handleRunButton = ( ) => {
@@ -248,12 +250,13 @@ export default class BulkEdits extends Component<BulkEditsProps, BulkEditsState>
248250
249251 return (
250252 < div className = "dc__grid-rows-2 flex-grow-1 dc__overflow-hidden" >
251- < div className = "dc__overflow-auto " >
253+ < div className = "dc__overflow-hidden " >
252254 < CodeEditor
253255 mode = { MODES . YAML }
254- height = "auto "
256+ height = "100% "
255257 value = { this . state . codeEditorPayload }
256258 onChange = { this . handleConfigChange }
259+ validatorSchema = { this . state . schema }
257260 />
258261 </ div >
259262 < div className = "bulk-output-drawer bg__primary flexbox-col dc__overflow-auto" >
@@ -449,7 +452,7 @@ export default class BulkEdits extends Component<BulkEditsProps, BulkEditsState>
449452 }
450453
451454 if ( ! readmeJson ) {
452- return < GenericSectionErrorState rootClassName = ' flex-grow-1' />
455+ return < GenericSectionErrorState rootClassName = " flex-grow-1" />
453456 }
454457
455458 return (
0 commit comments