forked from MapComplete/MapComplete
		
	
		
			
	
	
		
			51 lines
		
	
	
	
		
			2.3 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
		
		
			
		
	
	
			51 lines
		
	
	
	
		
			2.3 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
|  | import Combine from "./Base/Combine" | ||
|  | import { FixedUiElement } from "./Base/FixedUiElement" | ||
|  | import { SubtleButton } from "./Base/SubtleButton" | ||
|  | import Svg from "../Svg" | ||
|  | import { LocalStorageSource } from "../Logic/Web/LocalStorageSource" | ||
|  | import Toggle from "./Input/Toggle" | ||
|  | 
 | ||
|  | export default class UserSurveyPanel extends Toggle { | ||
|  |     private static readonly userSurveyHasBeenTaken = LocalStorageSource.GetParsed( | ||
|  |         "usersurvey-has-been-taken", | ||
|  |         false | ||
|  |     ) | ||
|  | 
 | ||
|  |     constructor() { | ||
|  |         super( | ||
|  |             new Combine([ | ||
|  |                 new FixedUiElement("Thanks for taking the survey!").SetClass("thanks px-2"), | ||
|  |                 new SubtleButton(Svg.star_svg(), "Take the user survey again", { | ||
|  |                     imgSize: "h-6 w-6", | ||
|  |                 }) | ||
|  |                     .onClick(() => { | ||
|  |                         window.open( | ||
|  |                             "https://framaforms.org/mapcomplete-usage-survey-1672687708", | ||
|  |                             "_blank" | ||
|  |                         ) | ||
|  |                         UserSurveyPanel.userSurveyHasBeenTaken.setData(false) | ||
|  |                     }) | ||
|  |                     .SetClass("h-12"), | ||
|  |             ]), | ||
|  |             new Combine([ | ||
|  |                 new FixedUiElement("Please, fill in the user survey").SetClass("alert"), | ||
|  |                 "Hey! We'd like to get to know you better - would you mind to help out by filling out this form? Your opinion is important", | ||
|  |                 new FixedUiElement( | ||
|  |                     "We are specifically searching responses from underrepresented groups, such as non-technical people, minorities, women, people without an account, people of colour, ..." | ||
|  |                 ).SetClass("font-bold"), | ||
|  |                 "Results are fully anonymous and are used to improve MapComplete. We don't ask private information. So, don't hesitate and fill it out!", | ||
|  |                 new SubtleButton(Svg.star_outline_svg(), "Take the survey").onClick(() => { | ||
|  |                     window.open( | ||
|  |                         "https://framaforms.org/mapcomplete-usage-survey-1672687708", | ||
|  |                         "_blank" | ||
|  |                     ) | ||
|  |                     UserSurveyPanel.userSurveyHasBeenTaken.setData(true) | ||
|  |                 }), | ||
|  |             ]).SetClass("block border-2 border-black rounded-xl flex flex-col p-2"), | ||
|  |             UserSurveyPanel.userSurveyHasBeenTaken | ||
|  |         ) | ||
|  | 
 | ||
|  |         this.SetStyle("max-width: 40rem") | ||
|  |     } | ||
|  | } |