File tree Expand file tree Collapse file tree 5 files changed +38
-12
lines changed Expand file tree Collapse file tree 5 files changed +38
-12
lines changed Original file line number Diff line number Diff line change @@ -15,40 +15,36 @@ import 'src/homepageExperience/components/HomepageExperience.scss'
1515
1616type OwnProps = {
1717 wizardEventName : string
18- }
19- type State = {
2018 selectedFeedback : number
19+ onFeedbackSelection : ( feedbackValue : number ) => void
2120}
2221
2322enum feedbackValue {
2423 THUMBS_DOWN ,
2524 THUMBS_UP ,
2625}
2726
28- export default class FeedbackBar extends React . Component < OwnProps , State > {
27+ export default class FeedbackBar extends React . Component < OwnProps > {
2928 constructor ( props ) {
3029 super ( props )
31- this . state = {
32- selectedFeedback : null ,
33- }
3430 }
3531
3632 // for now, we're only registering the first feedback user selects.
3733 private handleThumbsUpClick = ( ) => {
38- if ( this . state . selectedFeedback === null ) {
34+ if ( this . props . selectedFeedback === null ) {
3935 event ( `firstMile.${ this . props . wizardEventName } .thumbsUp.clicked` )
40- this . setState ( { selectedFeedback : feedbackValue . THUMBS_UP } )
36+ this . props . onFeedbackSelection ( feedbackValue . THUMBS_UP )
4137 }
4238 }
4339 private handleThumbsDownClick = ( ) => {
44- if ( this . state . selectedFeedback === null ) {
40+ if ( this . props . selectedFeedback === null ) {
4541 event ( `firstMile.${ this . props . wizardEventName } .thumbsDown.clicked` )
46- this . setState ( { selectedFeedback : feedbackValue . THUMBS_DOWN } )
42+ this . props . onFeedbackSelection ( feedbackValue . THUMBS_DOWN )
4743 }
4844 }
4945
5046 render ( ) {
51- const { selectedFeedback} = this . state
47+ const { selectedFeedback} = this . props
5248 return (
5349 < FlexBox
5450 margin = { ComponentSize . Large }
Original file line number Diff line number Diff line change @@ -21,6 +21,8 @@ type OwnProps = {
2121 wizardEventName : string
2222 markStepAsCompleted : ( ) => void
2323 finishStepCompleted : boolean
24+ finalFeedback : number
25+ setFinalFeedback : ( feedbackValue : number ) => void
2426}
2527
2628const fireConfetti = ( ) => {
@@ -82,7 +84,11 @@ export const Finish = (props: OwnProps) => {
8284 < >
8385 < h1 > Congrats!</ h1 >
8486 < p > You completed setting up, writing, and querying data.</ p >
85- < FeedbackBar wizardEventName = { props . wizardEventName } />
87+ < FeedbackBar
88+ wizardEventName = { props . wizardEventName }
89+ selectedFeedback = { props . finalFeedback }
90+ onFeedbackSelection = { props . setFinalFeedback }
91+ />
8692 < p style = { { marginTop : '80px' } } >
8793 Curious to learn more? Try these next steps!
8894 </ p >
Original file line number Diff line number Diff line change @@ -32,6 +32,7 @@ interface State {
3232 selectedBucket : string
3333 finishStepCompleted : boolean
3434 tokenValue : string
35+ finalFeedback : number
3536}
3637
3738export class GoWizard extends PureComponent < null , State > {
@@ -40,6 +41,7 @@ export class GoWizard extends PureComponent<null, State> {
4041 selectedBucket : 'my-bucket' ,
4142 finishStepCompleted : false ,
4243 tokenValue : null ,
44+ finalFeedback : null ,
4345 }
4446
4547 private handleSelectBucket = ( bucketName : string ) => {
@@ -54,6 +56,10 @@ export class GoWizard extends PureComponent<null, State> {
5456 this . setState ( { tokenValue} )
5557 }
5658
59+ private setFinalFeedback = ( feedbackValue : number ) => {
60+ this . setState ( { finalFeedback : feedbackValue } )
61+ }
62+
5763 handleNextClick = ( ) => {
5864 this . setState (
5965 {
@@ -116,6 +122,8 @@ export class GoWizard extends PureComponent<null, State> {
116122 wizardEventName = "goWizard"
117123 markStepAsCompleted = { this . handleMarkStepAsCompleted }
118124 finishStepCompleted = { this . state . finishStepCompleted }
125+ finalFeedback = { this . state . finalFeedback }
126+ setFinalFeedback = { this . setFinalFeedback }
119127 />
120128 )
121129 }
Original file line number Diff line number Diff line change @@ -32,6 +32,7 @@ interface State {
3232 selectedBucket : string
3333 finishStepCompleted : boolean
3434 tokenValue : string
35+ finalFeedback : number
3536}
3637
3738export class NodejsWizard extends PureComponent < null , State > {
@@ -40,6 +41,7 @@ export class NodejsWizard extends PureComponent<null, State> {
4041 selectedBucket : 'my-bucket' ,
4142 finishStepCompleted : false ,
4243 tokenValue : null ,
44+ finalFeedback : null ,
4345 }
4446
4547 private handleSelectBucket = ( bucketName : string ) => {
@@ -54,6 +56,10 @@ export class NodejsWizard extends PureComponent<null, State> {
5456 this . setState ( { tokenValue} )
5557 }
5658
59+ private setFinalFeedback = ( feedbackValue : number ) => {
60+ this . setState ( { finalFeedback : feedbackValue } )
61+ }
62+
5763 handleNextClick = ( ) => {
5864 this . setState (
5965 {
@@ -116,6 +122,8 @@ export class NodejsWizard extends PureComponent<null, State> {
116122 wizardEventName = "nodejsWizard"
117123 markStepAsCompleted = { this . handleMarkStepAsCompleted }
118124 finishStepCompleted = { this . state . finishStepCompleted }
125+ finalFeedback = { this . state . finalFeedback }
126+ setFinalFeedback = { this . setFinalFeedback }
119127 />
120128 )
121129 }
Original file line number Diff line number Diff line change @@ -32,6 +32,7 @@ interface State {
3232 selectedBucket : string
3333 finishStepCompleted : boolean
3434 tokenValue : string
35+ finalFeedback : number
3536}
3637
3738export class PythonWizard extends PureComponent < null , State > {
@@ -40,6 +41,7 @@ export class PythonWizard extends PureComponent<null, State> {
4041 selectedBucket : 'my-bucket' ,
4142 finishStepCompleted : false ,
4243 tokenValue : null ,
44+ finalFeedback : null ,
4345 }
4446
4547 private handleSelectBucket = ( bucketName : string ) => {
@@ -54,6 +56,10 @@ export class PythonWizard extends PureComponent<null, State> {
5456 this . setState ( { tokenValue} )
5557 }
5658
59+ private setFinalFeedback = ( feedbackValue : number ) => {
60+ this . setState ( { finalFeedback : feedbackValue } )
61+ }
62+
5763 handleNextClick = ( ) => {
5864 this . setState (
5965 {
@@ -116,6 +122,8 @@ export class PythonWizard extends PureComponent<null, State> {
116122 wizardEventName = "pythonWizard"
117123 markStepAsCompleted = { this . handleMarkStepAsCompleted }
118124 finishStepCompleted = { this . state . finishStepCompleted }
125+ finalFeedback = { this . state . finalFeedback }
126+ setFinalFeedback = { this . setFinalFeedback }
119127 />
120128 )
121129 }
You can’t perform that action at this time.
0 commit comments