{"version":3,"file":"tablet-frontend-06956ec4cf37d8a718a0d2126a38174c.js","names":["_exports","default","_ActiveModelAdapter","_inherits","Application","_super","_createSuper","_classCallCheck","this","apply","arguments","ActiveModelAdapter","App","_Application","_this","_len","length","args","Array","_key","_defineProperty","_assertThisInitialized","call","concat","config","modulePrefix","podModulePrefix","Resolver","loadInitializers","Component","extend","_Controller","ApplicationController","Controller","integerFormat","style","useGrouping","minimumFractionDigits","maximumFractionDigits","time","hhmmss","hour","minute","second","date","dayMonth","day","month","dateTime","year","hour12","number","eur","currency","usd","surveyScores","planPrice","analyticsPercentage","appVersion","_","hash","undefined","version","APP","versionOnly","hideSha","shaOnly","hideVersion","match","showExtended","versionExtendedRegExp","versionRegExp","shaRegExp","helper","pluralize","map","path","podNames","join","singularize","name","initialize","initializerFactory","Ember","reopen","StyleNamespacingExtras","register","ContainerDebugAdapter","setupContainer","application","exportApplicationGlobal","theGlobal","window","global","self","globalName","value","String","classify","willDestroy","Config","load","ENV","registerLibrary","lookup","container","_dec","attr","_dec2","_dec3","_class","_Model","Answer","_initializerDefineProperty","_descriptor","_descriptor2","_descriptor3","Model","_applyDecoratedDescriptor","prototype","configurable","enumerable","writable","initializer","_dec4","_dec5","_dec6","_dec7","_dec8","_dec9","_dec10","_dec11","_dec12","_dec13","_dec14","_dec15","_dec16","_dec17","_dec18","_dec19","_dec20","_dec21","_dec22","_dec23","_dec24","_dec25","_dec26","_dec27","Survey","_descriptor4","_descriptor5","_descriptor6","_descriptor7","_descriptor8","_descriptor9","_descriptor10","_descriptor11","_descriptor12","_descriptor13","_descriptor14","_descriptor15","_descriptor16","_descriptor17","_descriptor18","_descriptor19","_descriptor20","_descriptor21","_descriptor22","_descriptor23","_descriptor24","_descriptor25","_descriptor26","_descriptor27","_Component","AnswerMessage","key","inputString","targetString","replacementElement","result","parts","split","forEach","part","idx","push","get","message","enableByScore","score","promoterMessage","detractorMessage","passiveMessage","isPresent","text","replaceWithElement","toString","scoreSelectedHtml","id","block","moduleName","isStrictMode","AppFooter","htmlSafe","AppLogo","url","hasLogo","AppMain","survey","logoUrls","email","AppSvgIconComponent","updateSvgName","FaNameMapping","svgName","type","pop","includes","fontSize","getSvgName","tracked","action","Object","getOwnPropertyDescriptor","AppTopLine","color","_regeneratorRuntime","e","t","r","n","hasOwnProperty","o","defineProperty","i","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","arg","h","l","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","_invoke","AsyncIterator","invoke","_typeof","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","return","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","isNaN","displayName","isGeneratorFunction","constructor","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","prev","charAt","slice","stop","rval","handle","complete","finish","catch","delegateYield","service","task","_callee","_context","timeout","onTimerEnd","timerCompleted","ResetModal","timerTask","cancelAll","ResetTimer","modalTimeout","_this2","counter","instance","setInterval","clearInterval","document","querySelector","strokeDashoffset","_get","_getPrototypeOf","StyledButton","isNone","_this$args$survey","actionButtonColor","textColor","SurveyQuestion","question","replace","questionSubject","NotFoundController","_Route","NotFoundRoute","Route","store","pushPayload","answer","response","router","transitionTo","drop","_callee2","_context2","resetModalService","set","sendScoreWithComment","isTest","AnswerController","startTask","perform","queryParams","answer_id","AnswerRoute","params","peekRecord","controller","model","setProperties","modelFor","collapsedLogo","resetInterval","IndexRoute","asyncGeneratorStep","gen","reject","_next","_throw","info","error","target","property","descriptor","context","_defineProperties","props","_toPropertyKey","Reflect","bind","receiver","base","object","_superPropBase","desc","_setPrototypeOf","Derived","hasNativeReflectConstruct","construct","sham","Proxy","Boolean","valueOf","_isNativeReflectConstruct","Super","NewTarget","_possibleConstructorReturn","ReferenceError","obj","input","hint","prim","toPrimitive","res","Number","_toPrimitive","decorators","reduce","decorator","subClass","superClass","SurveyRoute","Constructor","protoProps","staticProps","fn","_getConfiguration","surveyPayload","fetch","configHost","surveyHash","json","overlay_settings","cookieService","exists","cookies","reload","raven","captureException","write","defaultOptions","run","later","location","reloadTimeout","clear","sessionService","loadTranslation","intl","setLocale","defaultLanguageLocale","t0","err","transition","getConfiguration","to","is_a_test","isEmpty","cookieUtil","pollId","pollService","addPoll","interval","pollInterval","callback","stopPoll","answerId","selectedScore","createRecord","v1","ScoreController","ScoreRoute","apiHost","publicHashId","SetupController","_validateForm","isValidForm","deviceName","acceptCookies","device","parent","postMessage","displayDeviceNameError","displayCookiesNotCheckedError","SetupRoute","read","thankYouTimeout","ThankYouRoute","finalizeSurveyTask","Router","_EmberRouter","locationType","rootURL","EmberRouter","route","ApplicationRoute","_beforeModel","_args","UnknownRoute","_ActiveModelSerialize","ActiveModelSerializer","CookiesService","_Service","DeviceService","Service","restartable","ResetModalService","modalVisible","SessionService","_loadTranslation","locale","formattedLocale","translations","dasherize","t1","t2","addTranslations","_x","_Transform","TestTransform","serialized","deserialized","Transform","hashFromParams","surveyHashFromCookie","deviceNameFromCookie","_sendScoreWithComment","scoreData","answerPayload","answerData","FormData","append","body","_x2","_x3","_x4","metaName","prefix","rawConfig","getAttribute","exports","JSON","parse","decodeURIComponent","runningTests","require"],"sources":["vendor/ember-cli/app-prefix.js","tablet-frontend/adapters/application.js","tablet-frontend/app.js","tablet-frontend/components/-dynamic-element-alt.js","tablet-frontend/components/-dynamic-element.js","tablet-frontend/controllers/application.js","tablet-frontend/formats.js","tablet-frontend/helpers/app-version.js","tablet-frontend/helpers/format-date.js","tablet-frontend/helpers/format-message.js","tablet-frontend/helpers/format-number.js","tablet-frontend/helpers/format-relative.js","tablet-frontend/helpers/format-time.js","tablet-frontend/helpers/pluralize.js","tablet-frontend/helpers/pod-styles.js","tablet-frontend/helpers/singularize.js","tablet-frontend/helpers/t.js","tablet-frontend/initializers/app-version.js","tablet-frontend/initializers/component-styles.js","tablet-frontend/initializers/container-debug-adapter.js","tablet-frontend/initializers/ember-cli-mirage.js","tablet-frontend/initializers/ember-data.js","tablet-frontend/initializers/export-application-global.js","tablet-frontend/initializers/load-bootstrap-config.js","tablet-frontend/instance-initializers/ember-data.js","tablet-frontend/instance-initializers/raven-setup.js","tablet-frontend/instance-initializers/route-styles.js","tablet-frontend/models/answer.js","tablet-frontend/models/survey.js","tablet-frontend/modules/components/answer-message/component.js","tablet-frontend/modules/components/answer-message/template.js","tablet-frontend/modules/components/app-footer/component.js","tablet-frontend/modules/components/app-footer/template.js","tablet-frontend/modules/components/app-logo/component.js","tablet-frontend/modules/components/app-logo/template.js","tablet-frontend/modules/components/app-main/component.js","tablet-frontend/modules/components/app-main/template.js","tablet-frontend/modules/components/app-svg-icon/component.js","tablet-frontend/modules/components/app-svg-icon/icon-names.js","tablet-frontend/modules/components/app-svg-icon/template.js","tablet-frontend/modules/components/app-top-line/component.js","tablet-frontend/modules/components/app-top-line/template.js","tablet-frontend/modules/components/reset-modal/component.js","tablet-frontend/modules/components/reset-modal/template.js","tablet-frontend/modules/components/reset-timer/component.js","tablet-frontend/modules/components/reset-timer/template.js","tablet-frontend/modules/components/styled-button/component.js","tablet-frontend/modules/components/styled-button/template.js","tablet-frontend/modules/components/survey-extremes/template.js","tablet-frontend/modules/components/survey-question/component.js","tablet-frontend/modules/components/survey-question/template.js","tablet-frontend/modules/components/survey-scale/template.js","tablet-frontend/modules/not-found/controller.js","tablet-frontend/modules/not-found/route.js","tablet-frontend/modules/not-found/template.js","tablet-frontend/modules/survey/answer/controller.js","tablet-frontend/modules/survey/answer/route.js","tablet-frontend/modules/survey/answer/template.js","tablet-frontend/modules/survey/index/route.js","tablet-frontend/modules/survey/route.js","tablet-frontend/modules/survey/score/controller.js","tablet-frontend/modules/survey/score/route.js","tablet-frontend/modules/survey/score/template.js","tablet-frontend/modules/survey/setup/controller.js","tablet-frontend/modules/survey/setup/route.js","tablet-frontend/modules/survey/setup/template.js","tablet-frontend/modules/survey/thank-you/route.js","tablet-frontend/modules/survey/thank-you/template.js","tablet-frontend/router.js","tablet-frontend/routes/application.js","tablet-frontend/routes/index.js","tablet-frontend/routes/unknown.js","tablet-frontend/serializers/application.js","tablet-frontend/services/cookies.js","tablet-frontend/services/device.js","tablet-frontend/services/intl.js","tablet-frontend/services/reset-modal.js","tablet-frontend/services/session.js","tablet-frontend/templates/application.js","tablet-frontend/transforms/object.js","tablet-frontend/utils/cookie.js","tablet-frontend/utils/survey.js","vendor/ember-cli/app-config.js","vendor/ember-cli/app-boot.js"],"sourcesContent":["'use strict';\n\n\n","import ActiveModelAdapter from 'active-model-adapter';\n\nexport default class Application extends ActiveModelAdapter {}\n","import Application from '@ember/application';\nimport Resolver from 'ember-resolver';\nimport loadInitializers from 'ember-load-initializers';\nimport config from 'tablet-frontend/config/environment';\n\nexport default class App extends Application {\n modulePrefix = config.modulePrefix;\n podModulePrefix = config.podModulePrefix;\n Resolver = Resolver;\n}\n\nloadInitializers(App, config.modulePrefix);\n","import Component from '@ember/component';\n\n// This component is not needed anymore. However we can only safely remove it once we have an Embroider release that\n// has the special dependency rule for this addon removed:\n// https://github.com/embroider-build/embroider/blob/4fad67f16f811e7f93199a1ee92dba8254c42978/packages/compat/src/addon-dependency-rules/ember-element-helper.ts\nexport default Component.extend();\n","import Component from '@ember/component';\n\n// This component is not needed anymore. However we can only safely remove it once we have an Embroider release that\n// has the special dependency rule for this addon removed:\n// https://github.com/embroider-build/embroider/blob/4fad67f16f811e7f93199a1ee92dba8254c42978/packages/compat/src/addon-dependency-rules/ember-element-helper.ts\nexport default Component.extend();\n","import Controller from '@ember/controller';\n\nexport default class ApplicationController extends Controller {}\n","const integerFormat = {\n style: 'decimal',\n useGrouping: false,\n minimumFractionDigits: 0,\n maximumFractionDigits: 0,\n};\n\nexport default {\n time: {\n hhmmss: {\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n },\n },\n date: {\n hhmmss: {\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n },\n dayMonth: {\n // July 22\n day: 'numeric',\n month: 'long',\n },\n dateTime: {\n year: 'numeric',\n month: 'numeric',\n day: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric',\n hour12: false,\n },\n },\n number: {\n eur: {\n style: 'currency',\n currency: 'EUR',\n minimumFractionDigits: 2,\n maximumFractionDigits: 2,\n },\n usd: {\n style: 'currency',\n currency: 'USD',\n minimumFractionDigits: 2,\n maximumFractionDigits: 2,\n },\n surveyScores: integerFormat,\n planPrice: integerFormat,\n analyticsPercentage: integerFormat,\n },\n};\n","import { helper } from '@ember/component/helper';\nimport config from '../config/environment';\nimport {\n shaRegExp,\n versionRegExp,\n versionExtendedRegExp,\n} from 'ember-cli-app-version/utils/regexp';\n\nexport function appVersion(_, hash = {}) {\n const version = config.APP.version;\n // e.g. 1.0.0-alpha.1+4jds75hf\n\n // Allow use of 'hideSha' and 'hideVersion' For backwards compatibility\n let versionOnly = hash.versionOnly || hash.hideSha;\n let shaOnly = hash.shaOnly || hash.hideVersion;\n\n let match = null;\n\n if (versionOnly) {\n if (hash.showExtended) {\n match = version.match(versionExtendedRegExp); // 1.0.0-alpha.1\n }\n // Fallback to just version\n if (!match) {\n match = version.match(versionRegExp); // 1.0.0\n }\n }\n\n if (shaOnly) {\n match = version.match(shaRegExp); // 4jds75hf\n }\n\n return match ? match[0] : version;\n}\n\nexport default helper(appVersion);\n","/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\n\nexport { default } from 'ember-intl/helpers/format-date';\n","/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\n\nexport { default } from 'ember-intl/helpers/format-message';\n","/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\n\nexport { default } from 'ember-intl/helpers/format-number';\n","/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\n\nexport { default } from 'ember-intl/helpers/format-relative';\n","/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\n\nexport { default } from 'ember-intl/helpers/format-time';\n","import pluralize from 'ember-inflector/lib/helpers/pluralize';\nexport default pluralize;\n","import { helper } from '@ember/component/helper';\nimport podNames from 'ember-component-css/pod-names';\nimport { assert } from '@ember/debug';\nimport { isPresent } from '@ember/utils';\n\nexport default helper(function podStyles() {\n assert('pod path must be present', isPresent(arguments[0]));\n\n let podClasses = '';\n podClasses = arguments[0].map((path) => podNames[path]).join(' ');\n\n return podClasses;\n});\n","import singularize from 'ember-inflector/lib/helpers/singularize';\nexport default singularize;\n","/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\n\nexport { default } from 'ember-intl/helpers/t';\n","import initializerFactory from 'ember-cli-app-version/initializer-factory';\nimport config from '../config/environment';\n\nlet name, version;\nif (config.APP) {\n name = config.APP.name;\n version = config.APP.version;\n}\n\nexport default {\n name: 'App Version',\n initialize: initializerFactory(name, version),\n};\n","export { default, initialize } from 'ember-component-css/initializers/component-styles';\n\nimport Ember from 'ember';\n\nimport StyleNamespacingExtras from '../mixins/style-namespacing-extras';\n\n// eslint-disable-next-line ember/new-module-imports\nEmber.Component.reopen(StyleNamespacingExtras);\n","import ContainerDebugAdapter from 'ember-resolver/resolvers/classic/container-debug-adapter';\n\nexport default {\n name: 'container-debug-adapter',\n\n initialize() {\n let app = arguments[1] || arguments[0];\n\n app.register('container-debug-adapter:main', ContainerDebugAdapter);\n }\n};\n","\n export default {\n name: 'ember-cli-mirage',\n initialize() {}\n };\n ","import 'ember-data';\n\nimport setupContainer from 'ember-data/setup-container';\n\n/*\n This code initializes EmberData in an Ember application.\n\n It ensures that the `store` service is automatically injected\n as the `store` property on all routes and controllers.\n*/\nexport default {\n name: 'ember-data',\n initialize: setupContainer,\n};\n","import Ember from 'ember';\nimport config from '../config/environment';\n\nexport function initialize() {\n var application = arguments[1] || arguments[0];\n if (config.exportApplicationGlobal !== false) {\n var theGlobal;\n if (typeof window !== 'undefined') {\n theGlobal = window;\n } else if (typeof global !== 'undefined') {\n theGlobal = global\n } else if (typeof self !== 'undefined') {\n theGlobal = self;\n } else {\n // no reasonable global, just bail\n return;\n }\n\n var value = config.exportApplicationGlobal;\n var globalName;\n\n if (typeof value === 'string') {\n globalName = value;\n } else {\n globalName = Ember.String.classify(config.modulePrefix);\n }\n\n if (!theGlobal[globalName]) {\n theGlobal[globalName] = application;\n\n application.reopen({\n willDestroy: function() {\n this._super.apply(this, arguments);\n delete theGlobal[globalName];\n }\n });\n }\n }\n}\n\nexport default {\n name: 'export-application-global',\n\n initialize: initialize\n};\n","import ENV from '../config/environment';\nimport Config from 'ember-bootstrap/config';\nimport { registerLibrary } from 'ember-bootstrap/version';\n\nexport function initialize(/* container, application */) {\n Config.load(ENV['ember-bootstrap'] || {});\n registerLibrary();\n}\n\nexport default {\n name: 'load-bootstrap-config',\n initialize,\n};\n","/* exists only for things that historically used \"after\" or \"before\" */\nexport default {\n name: 'ember-data',\n initialize() {},\n};\n","import { initialize } from 'ember-cli-sentry';\nimport config from '../config/environment';\n\nexport default {\n name: 'sentry-setup',\n initialize(application) {\n initialize(application.lookup ? application : application.container, config);\n },\n};\n","// This file is removed from the build in Ember < 3.6\nexport { default, initialize } from 'ember-component-css/instance-initializers/route-styles';\n","import Model, { attr } from '@ember-data/model';\n\nexport default class Answer extends Model {\n @attr('string') answerId;\n @attr('string') response;\n @attr('number') score;\n}\n","import Model, { attr } from '@ember-data/model';\n\nexport default class Survey extends Model {\n @attr('string') actionButtonColor;\n @attr('boolean') commentByScoreEnabled;\n @attr('string') commentDetractorMessage;\n @attr('string') commentPageMessage;\n @attr('string') commentPagePlaceholder;\n @attr('string') commentPageSubmit;\n @attr('string') commentPassiveMessage;\n @attr('string') commentPromoterMessage;\n @attr('string') footer;\n @attr('boolean') isWhiteLabel;\n @attr('string') languageLocale;\n @attr('object') logoUrls;\n @attr('string') publicHashId;\n @attr('string') question;\n @attr('string') questionSubject;\n @attr('number') resetInterval;\n @attr('boolean') hasLabels;\n @attr('string') labelScoreMax;\n @attr('string') labelScoreMin;\n @attr('string') textColor;\n @attr('boolean') thankYouByScoreEnabled;\n @attr('string') thankYouDetractorMessage;\n @attr('string') thankYouPageMessage;\n @attr('string') thankYouPassiveMessage;\n @attr('string') thankYouPromoterMessage;\n @attr('string') topBannerColor;\n @attr('string') version;\n}\n","import Component from '@glimmer/component';\nimport { isPresent } from '@ember/utils';\n\nexport default class AnswerMessage extends Component {\n replaceWithElement(inputString, targetString, replacementElement) {\n let result = [];\n const parts = inputString.split(targetString);\n\n if (parts.length === 1) {\n result = parts;\n } else {\n parts.forEach((part, idx) => {\n result.push(part);\n\n if (idx < parts.length - 1) {\n result.push(replacementElement);\n }\n });\n }\n return result;\n }\n\n get text() {\n let message = this.args.message;\n\n if (this.args.enableByScore) {\n if (this.args.score >= 9) {\n message = this.args.promoterMessage;\n } else if (this.args.score <= 6) {\n message = this.args.detractorMessage;\n } else {\n message = this.args.passiveMessage;\n }\n }\n\n return message;\n }\n\n get scoreSelectedHtml() {\n return `${this.args.score}`;\n }\n\n get textTransformed() {\n return isPresent(this.text)\n ? this.replaceWithElement(\n this.text.toString(),\n `%[score]`,\n this.scoreSelectedHtml\n )\n : [];\n }\n}\n","import { hbs } from 'ember-cli-htmlbars';\nexport default hbs('