1AppRegistry.registerBundle({applicationId:'marketplace.sitevision.feedback|1.2.8',bundle: {"en":{"forPositiveReaction":"Enable with positive reaction","reactionPartiallyPositive":"Partially positive","messageIsMandatory":"Message is mandatory","saveVisitorLanguage":"Save information about the web browser's language","reactPartiallyNegative":"React somewhat negatively","referal":"Referer","thumbUpColor":"Color of positive reaction icon","mustBeV3":"Note that it must be set up for v3 in order for the keys to work","configNeeded":"The module need configuration","hostname":"Website","invalidMessageContent":"Your feedback message could not be saved due to invalid format.","extraInfoRegardingDataStore":"requires Data Storage license","pageRequired":"A page must be selected","text":"Text","buttonPartiallyPositiveReaction":"Text for partially positive reaction button","showPersonalDataLink":"Show link to page about handling of personal data","showInformationAboutFreetextField":"Show information regarding the free text field","reactPartiallyPositive":"React somewhat positive","ip":"IP","secretKeyRequired":"A Secret Key must be provided","userMetadataRequired":"Must be a user metadata","numberOfStepsOnGradingScale":"Number of steps on the grading scale","useProtectionReCaptcha":"Use Google reCaptcha spam protection","fontTellUsMore":"Font for text above message box","wasThisInformationHelpful":"Was this information helpful?","useGoogleReCaptcha":"Use Google reCaptcha to protect the module from spam","textSendButton":"Send button text","howCouldItBeBetter":"How could it be better?","useButtons":"Use buttons with text","saveToDataStore":"Save feedback in Data Storage","dataHandlingRequired":"Select at least one method","useThumbs":"Use thumbs-up and thumbs-down","reactionOptions":"Reaction options","mailSubject":"New reaction from the Feedback module","reCaptchaBannerInfo":"Show reCaptcha-badge (in the lower right corner of the page)","showFreetextField":"Allow user to submit text feedback","reloadInfo":"Reload the page in order to update changes made to reCaptcha.","invalidValue":"Invalid value","useEmojis":"Use emojis","backgroundColor":"Background color","reaction":"Reaction","mandatoryFreetextField":"Free-text field is mandatory","starSelectedColor":"Color of selected stars","informationAboutFreetextField":"Information regarding the free text field (GDPR and such)","emailRecipient":"Recipient","useStars":"Use stars","url":"URL","reactionPositive":"Positive","appearance":"Appearance","selectedReactionNotAvailableForSelectedScale":"The reaction type is not available for the selected scale","validEmailRequired":"Must be a valid e-mail address","texts":"Texts","sendFeedbackUsingMetadata":"Send feedback based on metadata type User","reactPositive":"React positively","timeToReaction":"Time spent on page until reaction","emailContent":"E-mail content","userMetadata":"User metadata","thumbDownColor":"Color of negative reaction icon","reCaptchaNeedsConfiguration":"reCaptcha needs to be configured at Addons/Global Settings before it can be used for this module.","reactNeutral":"React indifferently","fontQuestion":"Font for question","aboutReCaptchaInfo":"In accordance with the terms of service provided by Google reCaptcha, you must inform visitors about your Google reCaptcha integration.","enableProtectionByReCaptcha":"Enable Google reCaptcha spam protection","emailAddress":"E-mail address","mailIntro":"New reaction from the Feedback module","dataHandling":"Manage feedback","reactNegative":"React negatively","buttonPartiallyNegativeReaction":"Text for partially negative reaction button","useBackgroundColor":"Use a background color","noMessageProvided":"(No comment provided)","forNegativeReaction":"Enable with negative reaction","always":"Always","browserLanguage":"Browser language","enableGoogleReCaptcha":"Enable Google reCatpcha v3 for use with this module","freetextField":"Free text field","placeReactionsOnNewLine":"Place reactions on a new line","sendAllFeedbackTo":"Send feedback to e-mail address","never":"Never","descriptionOfScale":"Description of the grading scale","textQuestion":"Question","starBaseColor":"Color of stars","atLestOneReactionMustBeSelected":"Select at least one type of reaction","page":"Page","stringRequired":"A text must be provided","reactionNeutral":"Indifferent","configureAccount":"Configure a free Google reCaptcha v3 account at","send":"Send","textConfirmationMessage":"Confirmation message","buttonNegativeReaction":"Text for negative reaction button","no":"No","emailSubject":"Subject","platform":"Platform","useCustomStarColors":"Use custom colors for stars","buttonPositiveReaction":"Text for positive reaction button","sendFeedbackA
1sEmail":"E-mail feedback","reCaptchaTextInfo":"Show reCaptcha-information as text (in connection to the module)","dataStoreAccessWarning":"Could not access data store. Please check that the module has the necessary permissions to read from the data store.","couldNotHandleFeedback":"Something went wrong","protectedByReCaptcha":"Protected from spam by Google reCaptcha.","thankYouForYourFeedback":"Thank you for your feedback","forSelectedReactions":"For Selected reactions...","fontRecaptchaInfo":"Font for reCaptcha information","readMoreOnOurPolicyPage":"Read more on our policy page","fontUserInputInfo":"Font for information about the free text field","textTellUsMore":"Text above message box","yes":"Yes","message":"Message","siteKeyRequired":"A Site Key must be provided","saveVisitorPlatformInfo":"Save information regarding the visitor's operating system","buttonNeutralReaction":"Text for neutral reaction button","starHoverColor":"Color of stars at hover","reactionPartiallyNegative":"Partially negative","userMessageInvalidFormat":"The user submitted a comment in an invalid format","reactionNegative":"Negative","fontThankYou":"Font for confirmation message","savedData":"Saved data","fontGradingDescription":"Font for describing the scale","showTextDescribingTheScale":"Show text describing the scale"},"sv":{"forPositiveReaction":"Vid positiv reaktion","reactionPartiallyPositive":"Delvis positiv","messageIsMandatory":"Kommentar är obligatorisk","saveVisitorLanguage":"Spara webbläsarens språk","reactPartiallyNegative":"Reagera delvis negativt","referal":"Föregående sida","thumbUpColor":"Färg på ikon för positiv reaktion","mustBeV3":"Observera att kontot måste vara inställt på v3 för att nycklarna ska fungera","configNeeded":"Modulen behöver konfigureras","hostname":"Webbplats","invalidMessageContent":"Ditt meddelande kunde inte sparas eftersom det inte var i ett giltigt format.","extraInfoRegardingDataStore":"kräver att datakälla finns i licensen","pageRequired":"En sida måste anges","text":"Text","buttonPartiallyPositiveReaction":"Knapptext för delvis positiv reaktion","showPersonalDataLink":"Visa länk till sida om hantering av personuppgifter","showInformationAboutFreetextField":"Visa informationstext i anslutning till fritextfältet","reactPartiallyPositive":"Reagera delvis positivt","ip":"IP","secretKeyRequired":"En Secret Key måste anges","userMetadataRequired":"Måste vara ett användarmetadata","numberOfStepsOnGradingScale":"Antal steg på betygsskalan","useProtectionReCaptcha":"Använd Google reCaptcha-spamskydd","fontTellUsMore":"Formatmall för text ovanför inmatningsfält för fritext","wasThisInformationHelpful":"Hjälpte informationen dig?","useGoogleReCaptcha":"Använd Google reCaptcha för att skydda modulen mot spam","textSendButton":"Text på Skicka-knapp","howCouldItBeBetter":"Berätta gärna mer","useButtons":"Använd knappar med text","saveToDataStore":"Spara feedback i datakälla","dataHandlingRequired":"Välj minst en metod för datahantering","useThumbs":"Använd tumme upp och tumme ned","reactionOptions":"Reaktionsalternativ","mailSubject":"Synpunkter på en sida har lämnats i modulen Tyck till","reCaptchaBannerInfo":"Visa reCaptcha-badge (i nedre högra hörnet av sidan)","showFreetextField":"Visa inmatningsfält för fritext","reloadInfo":"Ladda om sidan för att uppdatera alla ändringar av reCaptcha.","invalidValue":"Ogiltigt värde","useEmojis":"Använd emojis","backgroundColor":"Bakgrundsfärg","reaction":"Reaktion","mandatoryFreetextField":"Fritextfältet är obligatoriskt","starSelectedColor":"Färg på valda stjärnor","informationAboutFreetextField":"Informationstext till fritextfältet (GDPR, avrådan från personuppgifter)","emailRecipient":"Mottagare","useStars":"Använd stjärnor","url":"URL","reactionPositive":"Positiv","appearance":"Utseende","selectedReactionNotAvailableForSelectedScale":"Reaktionsalternativet är inte tillgängligt för den valda skalan","validEmailRequired":"Måste vara en giltig e-postadress","texts":"Texter","sendFeedbackUsingMetadata":"Skicka feedback baserat på användarmetadata","reactPositive":"Reagera positivt","timeToReaction":"Tid på sidan innan reaktion","emailContent":"E-postinnehåll","userMetadata":"Användarmetadata","thumbDownColor":"Färg på ikon för negativ reaktion","reCaptchaNeedsConfiguration":"reCaptcha måste konfigureras under Tillägg/Globala inställningar innan det kan användas för den här modulen.","reactNeutral":"Reagera neutralt","fontQuestion":"Formatmall för fråga","aboutReCaptchaInfo":"I enlighet med användarvillkoren för spamskyddet Google reCaptcha måste information om att det används synas tydligt på sidan.","enableProtectionByReCaptcha":"Aktivera Google reCaptcha-spamskydd","emailAddress":"E-postadress","mailIntro":"Synpunkter på en sida har lämnats i modulen Tyck till","dataHandling":"Hantera feedback","reactNegative":"Reagera negativt","buttonPartiallyNegativeReaction":"Knapptext för delvis negativ reaktion","useBackgroun
1dColor":"Använd en bakgrundsfärg","noMessageProvided":"(Ingen fritextkommentar skickad)","forNegativeReaction":"Vid negativ reaktion","always":"Alltid","browserLanguage":"Webbläsarens sprÃ¥k","enableGoogleReCaptcha":"Aktivera Google reCatpcha v3 för användning i modulen","freetextField":"Fritextfält","placeReactionsOnNewLine":"Placera reaktionerna pÃ¥ ny rad","sendAllFeedbackTo":"Skicka feedback till e-postadress","never":"Aldrig","descriptionOfScale":"Beskrivning av skala","textQuestion":"FrÃ¥ga","starBaseColor":"Färg pÃ¥ stjärnor","atLestOneReactionMustBeSelected":"Välj minst en typ av reaktion","page":"Sida","stringRequired":"En text mÃ¥ste anges","reactionNeutral":"Neutral","configureAccount":"Konfigurera ett gratis Google reCaptcha v3-konto pÃ¥","send":"Skicka","textConfirmationMessage":"Bekräftelsemeddelande","buttonNegativeReaction":"Knapptext för negativ reaktion","no":"Nej","emailSubject":"Ãrenderad","platform":"Plattform","useCustomStarColors":"Använd egna färger pÃ¥ stjärnor","buttonPositiveReaction":"Knapptext för positiv reaktion","sendFeedbackA
1sEmail":"Skicka feedback som e-post","reCaptchaTextInfo":"Visa reCaptcha-information som text (i anslutning till modulen)","dataStoreAccessWarning":"Kunde inte hämta datakälla. Kontrollera att modulen har rättigheter att läsa från datakällan.","couldNotHandleFeedback":"Någonting gick fel","protectedByReCaptcha":"Spamskydd genom Google reCaptcha.","thankYouForYourFeedback":"Tack för att du lämnade synpunkter","forSelectedReactions":"För utvalda reaktioner ...","fontRecaptchaInfo":"Formatmall för reCaptcha information","readMoreOnOurPolicyPage":"Läs mer på vår policy sida","fontUserInputInfo":"Formatmall för information vid fritextfältet","textTellUsMore":"Text ovanför inmatningsfält för fritext","yes":"Ja","message":"Meddelande","siteKeyRequired":"En Site Key måste anges","saveVisitorPlatformInfo":"Spara data om besökarens operativsystem","buttonNeutralReaction":"Knapptext för neutral reaktion","starHoverColor":"Färg på stjärnor vid hovring","reactionPartiallyNegative":"Delvis negativ","userMessageInvalidFormat":"Användaren lämnade en kommentar i ett ogiltigt format","reactionNegative":"Negativ","fontThankYou":"Formatmall för bekräftelsemeddelande","savedData":"Data som sparas","fontGradingDescription":"Formatmall för beskrivning av skalan","showTextDescribingTheScale":"Visa text som förklarar skalan"},"no":{"forPositiveReaction":"Aktiver med positiv reaksjon","reactionPartiallyPositive":"Delvis positiv","messageIsMandatory":"Melding er obligatorisk","saveVisitorLanguage":"Lagre informasjon om nettleserens språk","reactPartiallyNegative":"Reager delvis negativt","referal":"Henviser","thumbUpColor":"Farge på positiv reaksjonsikon","mustBeV3":"Merk at det må settes opp for v3 for at nøklene skal fungere","configNeeded":"Modulen trenger konfigurasjon","hostname":"Nettsted","invalidMessageContent":"Din tilbakemeldingsmelding kunne ikke lagres på grunn av ugyldig format.","extraInfoRegardingDataStore":"krever datalagerlisens","pageRequired":"En side må velges","text":"Tekst","buttonPartiallyPositiveReaction":"Tekst for delvis positiv reaksjonsknapp","showPersonalDataLink":"Vis lenke til side om håndtering av personopplysninger","showInformationAboutFreetextField":"Vis informasjon om fritekstfeltet","reactPartiallyPositive":"Reager delvis positivt","ip":"IP","secretKeyRequired":"En Secret Key må oppgis","userMetadataRequired":"Må være en brukermetadata","numberOfStepsOnGradingScale":"Antall trinn på vurderingsskalaen","useProtectionReCaptcha":"Bruk Google reCaptcha spam-beskyttelse","fontTellUsMore":"Skrift for tekst over meldingsboksen","wasThisInformationHelpful":"Var denne informasjonen nyttig?","useGoogleReCaptcha":"Bruk Google reCaptcha for å beskytte modulen mot spam","textSendButton":"Send knappetekst","howCouldItBeBetter":"Hvordan kunne det vært bedre?","useButtons":"Bruk knapper med tekst","saveToDataStore":"Lagre tilbakemeldinger i datalager","dataHandlingRequired":"Velg minst én metode","useThumbs":"Bruk tommel opp og tommel ned","reactionOptions":"Reaksjonsalternativer","mailSubject":"Ny reaksjon fra tilbakemeldingsmodulen","reCaptchaBannerInfo":"Vis reCaptcha-merke (nederst til høyre på siden)","showFreetextField":"Tillat brukeren å sende inn teksttilbakemelding","reloadInfo":"Last inn siden på nytt for å oppdatere endringer gjort til reCaptcha.","invalidValue":"Ugyldig verdi","useEmojis":"Bruk emojis","backgroundColor":"Bakgrunnsfarge","reaction":"Reaksjon","mandatoryFreetextField":"Fritekstfelt er obligatorisk","starSelectedColor":"Farge på valgte stjerner","informationAboutFreetextField":"Informasjon om fritekstfeltet (GDPR og lignende)","emailRecipient":"Mottaker","useStars":"Bruk stjerner","url":"URL","reactionPositive":"Positiv","appearance":"Utseende","selectedReactionNotAvailableForSelectedScale":"Reaksjonstypen er ikke tilgjengelig for den valgte skalaen","validEmailRequired":"Må være en gyldig e-postadresse","texts":"Tekster","sendFeedbackUsingMetadata":"Send tilbakemelding basert på brukermetadata","reactPositive":"Reager positivt","timeToReaction":"Tid brukt på siden til reaksjon","emailContent":"E-postinnhold","userMetadata":"Brukermetadata","thumbDownColor":"Farge på negativ reaksjonsikon","reCaptchaNeedsConfiguration":"reCaptcha må konfigureres under Addons/Global Settings før det kan brukes for denne modulen.","reactNeutral":"Reager nøytralt","fontQuestion":"Skrift for spørsmål","aboutReCaptchaInfo":"I samsvar med vilkårene for bruk levert av Google reCaptcha, må du informere besøkende om din Google reCaptcha-integrasjon.","enableProtectionByReCaptcha":"Aktiver Google reCaptcha spam-beskyttelse","emailAddress":"E-postadresse","mailIntro":"Ny reaksjon fra tilbakemeldingsmodulen","dataHandling":"Administrer tilbakemeldinger","reactNegative":"Reager negativt","buttonPartiallyNegativeReaction":"Tekst for delvis negativ reaksjonsknapp","useBackgroun
1dColor":"Bruk en bakgrunnsfarge","noMessageProvided":"(Ingen kommentar gitt)","forNegativeReaction":"Aktiver med negativ reaksjon","always":"Alltid","browserLanguage":"Nettleserspråk","enableGoogleReCaptcha":"Aktiver Google reCaptcha v3 for bruk med denne modulen","freetextField":"Fritekstfelt","placeReactionsOnNewLine":"Plasser reaksjoner på en ny linje","sendAllFeedbackTo":"Send tilbakemelding til e-postadresse","never":"Aldri","descriptionOfScale":"Beskrivelse av vurderingsskalaen","textQuestion":"Spørsmål","starBaseColor":"Farge på stjerner","atLestOneReactionMustBeSelected":"Velg minst én type reaksjon","page":"Side","stringRequired":"En tekst må oppgis","reactionNeutral":"Nøytral","configureAccount":"Konfigurer en gratis Google reCaptcha v3-konto på","send":"Send","textConfirmationMessage":"Bekreftelsesmelding","buttonNegativeReaction":"Tekst for negativ reaksjonsknapp","no":"Nei","emailSubject":"Emne","platform":"Plattform","useCustomStarColors":"Bruk tilpassede farger for stjerner","buttonPositiveReaction":"Tekst for positiv reaksjonsknapp","sendFeedbackA
1sEmail":"Send tilbakemelding som e-post","reCaptchaTextInfo":"Vis reCaptcha-informasjon som tekst (i forbindelse med modulen)","dataStoreAccessWarning":"Kunne ikke hente datakilde. Kontroller at modulen har nødvendige tillatelser for å lese fra datakilden.","couldNotHandleFeedback":"Noe gikk galt","protectedByReCaptcha":"Beskyttet mot spam av Google reCaptcha.","thankYouForYourFeedback":"Takk for din tilbakemelding","forSelectedReactions":"For valgte reaksjoner...","fontRecaptchaInfo":"Skrift for reCaptcha-informasjon","readMoreOnOurPolicyPage":"Les mer på vår policy side","fontUserInputInfo":"Skrift for informasjon om fritekstfeltet","textTellUsMore":"Tekst over meldingsboksen","yes":"Ja","message":"Melding","siteKeyRequired":"En Site Key må oppgis","saveVisitorPlatformInfo":"Lagre informasjon om besøkendes operativsystem","buttonNeutralReaction":"Tekst for nøytral reaksjonsknapp","starHoverColor":"Farge på stjerner ved hover","reactionPartiallyNegative":"Delvis negativ","userMessageInvalidFormat":"Brukeren la inn en kommentar i et ugyldig format","reactionNegative":"Negativ","fontThankYou":"Skrift for bekreftelsesmelding","savedData":"Lagrede data","fontGradingDescription":"Skrift for beskrivelse av skalaen","showTextDescribingTheScale":"Vis tekst som beskriver skalaen"}}}); 2AppRegistry.registerModule({applicationId:'marketplace.sitevision.feedback|1.2.8',path:'/component/Thumbs',module:function(define){'use strict';define(function (require) { 3 'use strict'; 4 5 var Component = require('Component'); 6 7 var template = require('/template/thumbs'); 8 9 return Component.extend({ 10 template: template, 11 filterState: function filterState(state) { 12 return { 13 colors: state.settings.colors 14 }; 15 } 16 }); 17});}}); 18AppRegistry.registerModule({applicationId:'marketplace.sitevision.feedback|1.2.8',path:'/template/reaction',module:function(define){define(function(require){var _=require('underscore');return function(obj){ 19var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');}; 20with(obj||{}){ 21__p+='<div class="env-d--flex env-flex-wrap--wrap">\n <div class="env-align-self--center '+ 22((__t=( fonts.fontQuestion ))==null?'':_.escape(__t))+ 23' sv-feedback-overflow env-m-right--small '; 24 if (reactionsOnNewLine) { 25__p+=' env-w--100 env-m-bottom--small '; 26 } 27__p+='">\n '+ 28((__t=( texts.question ))==null?'':_.escape(__t))+ 29'\n </div>\n <div class="env-align-self--center">\n '; 30 if (reactionType === 'thumbs') { 31__p+='\n '+ 32((__t=( renderer.renderComponent('Thumbs') ))==null?'':__t)+ 33'\n '; 34 } else if (reactionType === 'emojis') { 35__p+='\n '+ 36((__t=( renderer.renderComponent('Emojis') ))==null?'':__t)+ 37'\n '; 38 } else if (reactionType === 'stars') { 39__p+='\n '+ 40((__t=( renderer.renderComponent('Stars') ))==null?'':__t)+ 41'\n '; 42 } else { 43__p+='\n '+ 44((__t=( renderer.renderComponent('Buttons') ))==null?'':__t)+ 45'\n '; 46 } 47__p+='\n </div>\n</div>\n'; 48 if (showGradingDescription) { 49__p+='<p class="'+ 50((__t=( fonts.fontGradingDescription ))==null?'':_.escape(__t))+ 51'"> '+ 52((__t=( texts.gradingDescriptionText ))==null?'':_.escape(__t))+ 53'</p> '; 54 } 55__p+='\n'; 56 if (useCaptcha && showReCaptchaInfoAsText) { 57__p+='\n <div class="'+ 58((__t=( fonts.fontReCaptchaInfo ))==null?'':_.escape(__t))+ 59'">\n '+ 60((__t=( i18n('protectedByReCaptcha') ))==null?'':_.escape(__t))+ 61'\n '; 62 if (usePersonalDataLink && reCaptchaLink && reCaptchaLinkText) { 63__p+='\n <a href="'+ 64((__t=( reCaptchaLink ))==null?'':_.escape(__t))+ 65'" target="'+ 66((__t=( openInNewWindow ? '_blank' : '_self' ))==null?'':_.escape(__t))+ 67'"'; 68 if (openInNewWindow) { 69__p+=' rel="noopener noreferrer"'; 70 } 71__p+='>'+ 72((__t=( reCaptchaLinkText ))==null?'':_.escape(__t))+ 73'</a>\n '; 74 } 75__p+='\n </div>\n'; 76 } 77__p+='\n<div class="env-p-top--small env-collapse" data-feedback-form-container></div>\n'; 78} 79return __p; 80};});}}); 81AppRegistry.registerModule({applicationId:'marketplace.sitevision.feedback|1.2.8',path:'/template/emojis',module:function(define){define(function(require){var _=require('underscore');return function(obj){ 82var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');}; 83with(obj||{}){ 84__p+='<button class="sv-feedback-thumb-button" data-react data-reaction="negative" data-numeric-reaction="1" aria-label="'+ 85((__t=( i18n('reactNegative') ))==null?'':_.escape(__t))+ 86'">\n <svg class="env-icon env-icon--medium sv-feedback-emoji sv-feedback-svg">\n <use href="'+ 87((__t=( sprite ))==null?'':__t)+ 88'#icon-smiley-sad-1"></use>\n </svg>\n </button>\n\n '; 89 if (numOfGradingSteps > 2) { 90__p+='\n '; 91 if (numOfGradingSteps === 5) { 92__p+='\n <button class="sv-feedback-thumb-button" data-react data-reaction="partiallyNegative" data-numeric-reaction="2" aria-label="'+
93((__t=( i18n('reactPartiallyNegative') ))==null?'':_.escape(__t))+ 94'">\n <svg class="env-icon env-icon--medium sv-feedback-emoji sv-feedback-svg">\n <use href="'+ 95((__t=( sprite ))==null?'':__t)+ 96'#icon-smiley-unhappy"></use>\n </svg>\n </button>\n '; 97 } 98__p+='\n\n <button class="sv-feedback-thumb-button" data-react data-reaction="neutral" data-numeric-reaction="3" aria-label="'+ 99((__t=( i18n('reactNeutral') ))==null?'':_.escape(__t))+ 100'">\n <svg class="env-icon env-icon--medium sv-feedback-emoji sv-feedback-svg">\n <use href="'+ 101((__t=( sprite ))==null?'':__t)+ 102'#icon-smiley-indifferent"></use>\n </svg>\n </button>\n\n '; 103 if (numOfGradingSteps === 5) { 104__p+='\n <button class="sv-feedback-thumb-button" data-react data-reaction="partiallyPositive" data-numeric-reaction="4" aria-label="'+ 105((__t=( i18n('reactPartiallyPositive') ))==null?'':_.escape(__t))+ 106'">\n <svg class="env-icon env-icon--medium sv-feedback-emoji sv-feedback-svg">\n <use href="'+ 107((__t=( sprite ))==null?'':__t)+ 108'#icon-smiley-smirk"></use>\n </svg>\n </button>\n '; 109 } 110__p+='\n'; 111 } 112__p+='\n\n<button class="sv-feedback-thumb-button" data-react data-reaction="positive" data-numeric-reaction="5" aria-label="'+ 113((__t=( i18n('reactPositive') ))==null?'':_.escape(__t))+ 114'">\n <svg class="env-icon env-icon--medium sv-feedback-emoji sv-feedback-svg">\n <use href="'+ 115((__t=( sprite ))==null?'':__t)+ 116'#icon-smiley-smile-2"></use>\n </svg>\n</button>\n'; 117} 118return __p; 119};});}}); 120AppRegistry.registerModule({applicationId:'marketplace.sitevision.feedback|1.2.8',path:'/template/thumbs',module:function(define){define(function(require){var _=require('underscore');return function(obj){ 121var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');}; 122with(obj||{}){ 123__p+='<button class="sv-feedback-thumb-button" style="color: '+ 124((__t=( colors.thumbNegativeColor ))==null?'':_.escape(__t))+ 125';" data-react data-reaction="negative" data-numeric-reaction="1"\n aria-label="'+ 126((__t=( i18n('reactNegative') ))==null?'':_.escape(__t))+ 127'">\n <svg class="env-icon env-icon--large sv-feedback-thumb sv-feedback-thumb-negative">\n <use href="/sitevision/envision-icons.svg#icon-thumb-up"></use>\n </svg>\n </button>\n<button class="sv-feedback-thumb-button" style="color: '+ 128((__t=( colors.thumbPositiveColor ))==null?'':_.escape(__t))+ 129';" data-react data-reaction="positive" data-numeric-reaction="5"\n aria-label="'+ 130((__t=( i18n('reactPositive') ))==null?'':_.escape(__t))+ 131'">\n <svg class="env-icon env-icon--large sv-feedback-thumb sv-feedback-thumb-positive">\n <use href="/sitevision/envision-icons.svg#icon-thumb-up"></use>\n </svg>\n </button>\n'; 132} 133return __p; 134};});}}); 135AppRegistry.registerModule({applicationId:'marketplace.sitevision.feedback|1.2.8',path:'/component/Emojis',module:function(define){'use strict';define(function (require) { 136 'use strict'; 137 138 var Component = require('Component'); 139 140 var template = require('/template/emojis'); 141 142 return Component.extend({ 143 template: template, 144 filterState: function filterState(state) { 145 return { 146 numOfGradingSteps: parseInt(state.settings.numOfGradingSteps, 10), 147 sprite: state.sprite, 148 colors: state.settings.colors 149 }; 150 } 151 }); 152});}}); 153AppRegistry.registerModule({applicationId:'marketplace.sitevision.feedback|1.2.8',path:'/template/invalidMessageContent',module:function(define){define(function(require){var _=require('underscore');return function(obj){ 154var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');}; 155with(obj||{}){ 156__p+=''+ 157((__t=( i18n('invalidMessageContent') ))==null?'':_.escape(__t))+ 158''; 159} 160return __p; 161};});}}); 162AppRegistry.registerModule({applicationId:'marketplace.sitevision.feedback|1.2.8',path:'/component/Reaction',module:function(define){'use strict';/* globals grecaptcha: false */ 163define(function (require) { 164 'use strict'; 165 166 var Component = require('Component'); 167 168 var feedbackTemplate = require('/template/reaction'); 169 170 var thanksTemplate = require('/template/thanks'); 171 172 var errorTemplate = require('/template/error'); 173 174 var invalidMessageContent = require('/template/invalidMessageContent'); 175 176 var requester = require('requester'); 177 178 var router = require('router'); 179 180 var FeedbackText = require('/component/FeedbackText'); 181 182 return Component.extend({ 183 getTemplate: function getTemplate() { 184 if (this.state.display === 'thanks') { 185 return thanksTemplate; 186 } 187 188 if (this.state.display === 'error') { 189 return errorTemplate; 190 } 191
192 if (this.state.display === 'invalidMessageContent') { 193 return invalidMessageContent; 194 } 195 196 return feedbackTemplate; 197 }, 198 className: 'env-p-around--small', 199 events: { 200 dom: { 201 'click button[data-react]': 'handleReaction', 202 'click [data-send-feedback]': 'handleSendFeedback' 203 }, 204 self: { 205 'state:changed:display': 'render' 206 } 207 }, 208 attributes: function attributes() { 209 if (this.state.colors.backgroundColor !== '') { 210 return { 211 style: 'background-color: ' + this.state.colors.backgroundColor 212 }; 213 } 214 215 return {}; 216 }, 217 handleReaction: function handleReaction(event) { 218 var _event$currentTarget$ = event.currentTarget.dataset, 219 reaction = _event$currentTarget$.reaction, 220 numericReaction = _event$currentTarget$.numericReaction; 221 222 if (!this.state.useCaptcha) { 223 this.saveReaction(reaction, numericReaction); 224 return; 225 } 226 227 grecaptcha.ready(this.executeCaptcha.bind(this, reaction, numericReaction)); 228 }, 229 executeCaptcha: function executeCaptcha(reaction, numericReaction) { 230 grecaptcha.execute(this.state.siteKey, { 231 action: 'post_reaction' 232 }).then(this.verifyCaptchaToken.bind(this, reaction, numericReaction)); 233 }, 234 verifyCaptchaToken: function verifyCaptchaToken(reaction, numericReaction, token) { 235 requester.doGet({ 236 url: router.getUrl('/verify'), 237 data: { 238 token: token 239 } 240 }).done(this.handleCaptchaVerification.bind(this, reaction, numericReaction)).fail(this.destroy.bind(this)); 241 }, 242 handleCaptchaVerification: function handleCaptchaVerification(reaction, numericReaction, response) { 243 if (response.verified) { 244 this.saveReaction(reaction, numericReaction); 245 } 246 }, 247 saveReaction: function saveReaction(reaction, numericReaction) { 248 this.setState({ 249 reaction: reaction, 250 timeToReaction: this.getTimeToReaction(), 251 hasReacted: true, 252 numericReaction: Number.parseInt(numericReaction, 10) 253 }); 254 255 if (this.state.useDataStore) { 256 requester.doPost({ 257 url: router.getUrl('/reactions'), 258 data: { 259 reaction: reaction, 260 timeToReaction: this.state.timeToReaction 261 }, 262 context: this 263 }).done(function (res) { 264 this.setState('dsid', res.reactionResponse.dsid); 265 this.setupOrSendFeedback(); 266 }); 267 } else { 268 this.setupOrSendFeedback(); 269 } 270 }, 271 setupOrSendFeedback: function setupOrSendFeedback() { 272 if (this.showTextArea(this.state.reaction)) { 273 this.handleReactionInterface(this.state.reaction); 274 this.setupFeedbackTextField(); 275 } else { 276 this.handleSendFeedback(); 277 } 278 }, 279 setupFeedbackTextField: function setupFeedbackTextField() { 280 var data = { 281 tellUsMoreText: this.state.texts.tellUsMoreText, 282 buttonText: this.state.texts.buttonText, 283 fontTellUsMore: this.state.fonts.fontTellUsMore, 284 userInputInfoText: this.state.texts.userInputInfoText, 285 fontUserInputInfo: this.state.fonts.fontUserInputInfo, 286 showUserInputInfoText: this.state.userInput.showInfoText 287 }; 288 var feedbackText = new FeedbackText(data); 289 var $formContainer = this.$('[data-feedback-form-container]'); 290 feedbackText.render().$el.appendTo($formContainer); 291 $formContainer.envCollapse('show'); 292 }, 293 showTextArea: function showTextArea(reaction) { 294 return this.state.userInput.show === 'always' || this.state.userInput.show === 'selection' && this.state.userInput.showFor[reaction]; 295 }, 296 handleReactionInterface: function handleReactionInterface(reaction) { 297 var _this = this; 298 299 if (this.state.reactionType === 'stars') { 300 this.$('.sv-feedback-star-button').off('mouseenter mouseleave'); 301 this.$('.sv-feedback-star-button').each(function (index, el) { 302 var $element = _this.$(el); 303 304 if ($element.attr('data-numeric-reaction') <= _this.state.numericReaction) { 305 $element.blur().removeClass('sv-feedback-star').find('svg').addClass('sv-feedback-rating-star-selected'); 306 } else { 307 $element.prop('disabled', true).addClass('env-d--none'); 308 } 309 310 $element.removeAttr('data-react'); 311 }); 312 } else { 313 this.$("button[data-react][data-reaction=".concat(reaction, "]")).prop('disabled', true); 314 this.$("button[data-react][data-reaction!=".concat(reaction, "]")).prop('disabled', true).addClass('env-d--none').hide(); 315 } 316 }, 317 getTimeToReaction: function getTimeToReaction() { 318 return Date.now() - this.state.initTime; 319 }, 320 onInit: function onInit() { 321 this.setState('initTime', Date.now()); 322 323 if (this.addBeforeUnloadEvent()) { 324 window.addEventListener('beforeunload', function () { 325 if (this.state.display === 'form' && this.state.hasReacted && this.userInputNotMandatory(this.state.reaction)) { 326 this.handleSendFeedback(); 327 } 328 329 return undefined; 330 }.bind(this)); 331 } 332 }, 333 addBeforeUnloadEvent: function addBeforeUnloadEvent() { 334 return !this.state.isOfflineVersion; 335 },
336 userInputNotMandatory: function userInputNotMandatory(reaction) { 337 return !(this.showTextArea(reaction) && (this.state.userInput.mandatory === 'always' || this.selectionAndReactionMatch('mandatory', reaction))); 338 }, 339 selectionAndReactionMatch: function selectionAndReactionMatch(showOrMandatory, reaction) { 340 return this.state.userInput[showOrMandatory] === 'selection' && this.state.userInput["".concat(showOrMandatory, "For")][reaction]; 341 }, 342 userInputIsInvalid: function userInputIsInvalid(message, reaction) { 343 if (this.showTextArea(reaction)) { 344 if (message.trim().length < 1 && (this.state.userInput.mandatory === 'always' || this.selectionAndReactionMatch('mandatory', reaction))) { 345 return true; 346 } 347 } 348 349 return false; 350 }, 351 removeReaction: function removeReaction() { 352 if (this.state.dsid === undefined || this.state.dsid === null) { 353 return; 354 } 355 356 requester.doDelete({ 357 url: router.getUrl('/remove'), 358 data: { 359 dsid: this.state.dsid 360 } 361 }); 362 }, 363 handleSendFeedback: function handleSendFeedback(event) { 364 var message = String(this.$('[data-feedback-freetext]').val() || ''); 365 var userInputIsInvalid = this.userInputIsInvalid(message, this.state.reaction); 366 367 if (userInputIsInvalid) { 368 this.$('[data-mandatory-field-info]').show(); 369 return false; 370 } 371 372 this.$('[data-mandatory-field-info]').hide(); 373 var referrer = document.referrer.includes('?') ? document.referrer.substring(0, document.referrer.indexOf('?')) : document.referrer; 374 requester.doPost({ 375 url: router.getUrl('/feedback'), 376 data: { 377 dsid: this.state.dsid, 378 feedback: { 379 message: event ? message : '', 380 referrer: referrer, 381 browserLanguage: navigator.language, 382 reaction: this.state.reaction, 383 timeToReaction: this.state.timeToReaction, 384 platform: navigator.platform, 385 numericReaction: this.state.numericReaction 386 } 387 }, 388 context: this 389 }).done(function (response) { 390 this.setState('display', response.display); 391 }); 392 }, 393 filterState: function filterState(state) { 394 return { 395 display: state.display, 396 texts: state.settings.texts, 397 useDataStore: state.useDataStore, 398 reactionType: state.reactionType, 399 fonts: state.settings.fonts, 400 colors: state.settings.colors, 401 isOfflineVersion: state.settings.isOfflineVersion, 402 siteKey: state.settings.captchaSettings.siteKey, 403 useCaptcha: state.settings.captchaSettings.useCaptcha, 404 showReCaptchaInfoAsText: state.settings.captchaSettings.showReCaptchaInfoAs === 'text', 405 usePersonalDataLink: state.settings.captchaSettings.usePersonalDataLink, 406 reCaptchaLink: state.settings.captchaSettings.reCaptchaLink, 407 openInNewWindow: state.settings.captchaSettings.openInNewWindow, 408 reCaptchaLinkText: state.settings.captchaSettings.reCaptchaLinkText, 409 route: state.route, 410 sprite: state.sprite, 411 reactionsOnNewLine: state.settings.reactionsOnNewLine, 412 showGradingDescription: state.settings.showGradingDescription, 413 useBackgroundColor: state.settings.useBackgroundColor, 414 userInput: state.settings.userInput 415 }; 416 } 417 }); 418});}}); 419AppRegistry.registerModule({applicationId:'marketplace.sitevision.feedback|1.2.8',path:'/template/error',module:function(define){define(function(require){var _=require('underscore');return function(obj){ 420var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');}; 421with(obj||{}){ 422__p+=''+ 423((__t=( i18n('couldNotHandleFeedback') ))==null?'':_.escape(__t))+ 424''; 425} 426return __p; 427};});}}); 428AppRegistry.registerModule({applicationId:'marketplace.sitevision.feedback|1.2.8',path:'/template/main',module:function(define){define(function(require){var _=require('underscore');return function(obj){ 429var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');}; 430with(obj||{}){ 431__p+=''; 432 if (route === '/') { 433__p+='\n '+ 434((__t=( renderer.renderComponent('Reaction') ))==null?'':__t)+ 435'\n'; 436 } else if (route === '/configNeeded' && isOfflineVersion) { 437__p+='\n '+ 438((__t=( i18n('configNeeded') ))==null?'':_.escape(__t))+ 439'\n'; 440 } 441__p+=''; 442} 443return __p; 444};});}}); 445AppRegistry.registerModule({applicationId:'marketplace.sitevision.feedback|1.2.8',path:'/template/stars',module:function(define){define(function(require){var _=require('underscore');return function(obj){ 446var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');}; 447with(obj||{}){ 448__p+='<button class="sv-feedback-star-button sv-feedback-star" data-react data-reaction="negative" data-numeric-reaction="1" aria-label="'+ 449((__t=( i18n('reactNegative') ))==null?'':_.escape(__t))+ 450'">\n <svg class="env-icon env-icon--medium sv-feedback-svg sv-feedback-star-icon sv-feedback-icon-rating-star">\n <use href="'+ 451((__t=( sprite ))==null?'':__t)+ 452'#icon-rating-star-3"></use>\n </svg>\n </button>\n\n '; 453 if (numOfGradingSteps > 2) { 454__p+='\n '; 455 if (numOfGradingSteps === 5) { 456__p+='\n <button class="sv-feedback-star-button sv-feedback-star" data-react data-reaction="partiallyNegative" data-numeric-reaction="2" aria-label="'+
457((__t=( i18n('reactPartiallyNegative') ))==null?'':_.escape(__t))+ 458'">\n <svg class="env-icon env-icon--medium sv-feedback-svg sv-feedback-star-icon sv-feedback-icon-rating-star">\n <use href="'+ 459((__t=( sprite ))==null?'':__t)+ 460'#icon-rating-star-3"></use>\n </svg>\n </button>\n '; 461 } 462__p+='\n\n <button class="sv-feedback-star-button sv-feedback-star" data-react data-reaction="neutral" data-numeric-reaction="3" aria-label="'+ 463((__t=( i18n('reactNeutral') ))==null?'':_.escape(__t))+ 464'">\n <svg class="env-icon env-icon--medium sv-feedback-svg sv-feedback-star-icon sv-feedback-icon-rating-star">\n <use href="'+ 465((__t=( sprite ))==null?'':__t)+ 466'#icon-rating-star-3"></use>\n </svg>\n </button>\n\n '; 467 if (numOfGradingSteps === 5) { 468__p+='\n <button class="sv-feedback-star-button sv-feedback-star" data-react data-reaction="partiallyPositive" data-numeric-reaction="4" aria-label="'+ 469((__t=( i18n('reactPartiallyPositive') ))==null?'':_.escape(__t))+ 470'">\n <svg class="env-icon env-icon--medium sv-feedback-svg sv-feedback-star-icon sv-feedback-icon-rating-star">\n <use href="'+ 471((__t=( sprite ))==null?'':__t)+ 472'#icon-rating-star-3"></use>\n </svg>\n </button>\n '; 473 } 474__p+='\n'; 475 } 476__p+='\n\n<button class="sv-feedback-star-button sv-feedback-star" data-react data-reaction="positive" data-numeric-reaction="5" aria-label="'+ 477((__t=( i18n('reactPositive') ))==null?'':_.escape(__t))+ 478'">\n <svg class="env-icon env-icon--medium sv-feedback-svg sv-feedback-star-icon sv-feedback-icon-rating-star">\n <use href="'+ 479((__t=( sprite ))==null?'':__t)+ 480'#icon-rating-star-3"></use>\n </svg>\n</button>\n'; 481} 482return __p; 483};});}}); 484AppRegistry.registerModule({applicationId:'marketplace.sitevision.feedback|1.2.8',path:'/template/buttons',module:function(define){define(function(require){var _=require('underscore');return function(obj){ 485var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');}; 486with(obj||{}){ 487__p+='<div class="env-m-top--small">\n <button class="env-button env-m-bottom--small env-m-right--large" data-react\n data-reaction="negative" data-numeric-reaction="1">\n '+ 488((__t=( texts.negativeButtonText ))==null?'':_.escape(__t))+ 489'\n </button>\n\n '; 490 if (parseInt(numOfGradingSteps) > 2) { 491__p+='\n '; 492 if (parseInt(numOfGradingSteps) === 5) { 493__p+='\n <button class="env-button env-m-bottom--small env-m-right--large" data-react data-reaction="partiallyNegative" data-numeric-reaction="2">\n '+ 494((__t=( texts.partiallyNegativeButtonText ))==null?'':_.escape(__t))+ 495'\n </button>\n '; 496 } 497__p+='\n\n <button class="env-button env-m-bottom--small env-m-right--large" data-react data-reaction="neutral" data-numeric-reaction="3">\n '+ 498((__t=( texts.neutralButtonText ))==null?'':_.escape(__t))+ 499'\n </button>\n\n '; 500 if (parseInt(numOfGradingSteps) === 5) { 501__p+='\n <button class="env-button env-m-bottom--small env-m-right--large" data-react data-reaction="partiallyPositive" data-numeric-reaction="4">\n '+ 502((__t=( texts.partiallyPositiveButtonText ))==null?'':_.escape(__t))+ 503'\n </button>\n '; 504 } 505__p+='\n '; 506 } 507__p+='\n\n <button class="env-button env-m-bottom--small" data-react data-reaction="positive" data-numeric-reaction="5">\n '+ 508((__t=( texts.positiveButtonText ))==null?'':_.escape(__t))+ 509'\n </button>\n </div>'; 510} 511return __p; 512};});}}); 513AppRegistry.registerModule({applicationId:'marketplace.sitevision.feedback|1.2.8',path:'/component/Buttons',module:function(define){'use strict';define(function (require) { 514 'use strict'; 515 516 var Component = require('Component'); 517 518 var template = require('/template/buttons'); 519 520 return Component.extend({ 521 template: template, 522 filterState: function filterState(state) { 523 return { 524 texts: state.settings.texts, 525 numOfGradingSteps: state.settings.numOfGradingSteps 526 }; 527 } 528 }); 529});}}); 530AppRegistry.registerModule({applicationId:'marketplace.sitevision.feedback|1.2.8',path:'/template/thanks',module:function(define){define(function(require){var _=require('underscore');return function(obj){ 531var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');}; 532with(obj||{}){ 533__p+='<p class="'+ 534((__t=( fonts.fontThanks ))==null?'':_.escape(__t))+ 535'">'+ 536((__t=( texts.responseText ))==null?'':_.escape(__t))+ 537'</p>'; 538} 539return __p; 540};});}}); 541AppRegistry.registerModule({applicationId:'marketplace.sitevision.feedback|1.2.8',path:'/component/FeedbackText',module:function(define){'use strict';define(function (require) { 542 'use strict'; 543 544 var Component = require('Component'); 545 546 var template = require('/template/feedbackText'); 547 548 var app = require('app'); 549 550 return Component.extend({ 551 template: template, 552 templateFunctions: function templateFunctions() { 553 return { 554 textareaId: "".concat(app.portletId.replace('.', '_'), "_freetextComment"), 555 sendFeedbackButtonId: "".concat(app.portletId.replace('.', '_'), "_sendFeedbackButton") 556 }; 557 } 558 }); 559});}}); 560AppRegistry.registerModule({applicationId:'marketplace.sitevision.feedback|1.2.8',path:'/component/Stars',module:function(define){'use strict';define(function (require) { 561 'use strict'; 562 563 var Component = require('Component'); 564 565 var template = require('/template/stars'); 566 567 return Component.extend({ 568 template: template, 569 className: 'sv-feedback-star-rating', 570 onRendered: function onRendered() { 571 var _this = this; 572 573 this.$('.sv-feedback-star').hover(function (event) { 574 _this.highlightStars(event.currentTarget.getAttribute('data-numeric-reaction')); 575 }, function (event) { 576 _this.putOutStars(event.currentTarget.getAttribute('data-numeric-reaction')); 577 }); 578 this.$('.sv-feedback-star').on('focus', function (event) { 579 _this.highlightStars(event.currentTarget.getAttribute('data-numeric-reaction')); 580 }); 581 this.$('.sv-feedback-star').on('focusout', function (event) { 582 _this.putOutStars(event.currentTarget.getAttribute('data-numeric-reaction')); 583 }); 584 }, 585 highlightStars: function highlightStars(currentStar) { 586 var _this2 = this; 587 588 this.$('.sv-feedback-star').each(function (index, el) { 589 var $element = _this2.$(el); 590 591 if ($element.attr('data-numeric-reaction') <= currentStar) { 592 $element.find('use').addClass('sv-feedback-icon-rating-star-force-hover'); 593 } 594 }); 595 }, 596 putOutStars: function putOutStars(currentStar) { 597 var _this3 = this; 598 599 this.$('.sv-feedback-star').each(function (index, el) { 600 var $element = _this3.$(el); 601 602 if ($element.attr('data-numeric-reaction') <= currentStar) { 603 $element.find('use').removeClass('sv-feedback-icon-rating-star-force-hover'); 604 } 605 }); 606 }, 607 filterState: function filterState(state) { 608 return { 609 numOfGradingSteps: parseInt(state.settings.numOfGradingSteps, 10), 610 sprite: state.sprite 611 }; 612 } 613 }); 614});}}); 615AppRegistry.registerModule({applicationId:'marketplace.sitevision.feedback|1.2.8',path:'/template/feedbackText',module:function(define){define(function(require){var _=require('underscore');return function(obj){ 616var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');}; 617with(obj||{}){ 618__p+='<div class="env-form ">\n <div class="env-form-element">\n <label class="'+ 619((__t=( fontTellUsMore ))==null?'':_.escape(__t))+ 620'" for="'+ 621((__t=( textareaId ))==null?'':_.escape(__t))+ 622'">'+ 623((__t=( tellUsMoreText ))==null?'':_.escape(__t))+ 624'</label>
624\n <span data-mandatory-field-info class="env-m-left--medium env-text env-text--error env-d--none">'+ 625((__t=( i18n('messageIsMandatory') ))==null?'':_.escape(__t))+ 626'</span>\n <div class="env-form-element__control">\n <textarea id="'+ 627((__t=( textareaId ))==null?'':_.escape(__t))+ 628'" class="env-form-input" rows="3" maxlength="500"\n data-feedback-freetext></textarea>\n </div>\n </div>\n '; 629 if (showUserInputInfoText) { 630__p+='\n <p class="'+ 631((__t=( fontUserInputInfo ))==null?'':_.escape(__t))+ 632'">'+ 633((__t=( userInputInfoText ))==null?'':_.escape(__t))+ 634'</p>\n '; 635 } 636__p+='\n <button id="'+ 637((__t=( sendFeedbackButtonId ))==null?'':_.escape(__t))+ 638'" type="button" class="env-button env-button--primary"\n data-send-feedback>'+ 639((__t=( buttonText ))==null?'':_.escape(__t))+ 640'</button>\n</div>\n'; 641} 642return __p; 643};});}}); 644AppRegistry.registerModule({applicationId:'marketplace.sitevision.feedback|1.2.8',path:'/main',module:function(define){'use strict';define(function (require) { 645 'use strict'; 646 647 var _ = require('underscore'); 648 649 var Component = require('Component'); 650 651 var template = require('/template/main'); 652 653 return Component.extend({ 654 template: template, 655 filterState: function filterState(state) { 656 return _.extend({}, { 657 route: state.route, 658 isOfflineVersion: state.isOfflineVersion 659 }); 660 } 661 }); 662});}});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.