{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:////home/deploy/petservi-production/shared/node_modules/rater-js/index.js","webpack:///./app/javascript/packs/rater-form.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","e","f","u","a","Error","code","length","1","require","options","showToolTip","element","step","myRating","elem","reverse","stars","max","starSize","onHover","onLeave","rating","classList","add","div","document","createElement","style","backgroundSize","appendChild","width","height","disableText","currentRating","ratingText","callback","rateCallback","disabled","readOnly","isRating","isBusyText","setRating","dataRating","dataset","onMouseMove","onMove","isTouch","percent","offsetWidth","parentOffset","getBoundingClientRect","changedTouches","pageX","left","window","scrollX","offsetX","Math","ceil","rat","querySelector","toolTip","replace","setAttribute","onStarOut","removeAttribute","onStarClick","this","remove","disable","addEventListener","getRating","enable","clear","dispose","removeEventListener","handleMove","handleStart","handleEnd","handleCancel","preventDefault","evt","2","css","createStyle","3","styleElementsInsertedAtTop","insertStyleElement","styleElement","head","getElementsByTagName","lastStyleElementInsertedAtTop","insertAt","nextSibling","insertBefore","firstChild","push","createLink","href","attributes","link","rel","cssText","extraOptions","type","sheet","innerHTML","styleSheet","createTextNode","ratable","querySelectorAll","Array","from","el","done","concat","parseFloat","rater"],"mappings":"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","file":"js/rater-form-835f7a6979dd50ec57de.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"https://d25azvc2hn1mu6.cloudfront.net/packs/\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 465);\n","(function (f) {\n if (typeof exports === \"object\" && typeof module !== \"undefined\") {\n module.exports = f();\n } else if (typeof define === \"function\" && define.amd) {\n define([], f);\n } else {\n var g;\n if (typeof window !== \"undefined\") {\n g = window;\n } else if (typeof global !== \"undefined\") {\n g = global;\n } else if (typeof self !== \"undefined\") {\n g = self;\n } else {\n g = this;\n }\n g.raterJs = f();\n }\n})(function () {\n var define, module, exports;\n return function () {\n function r(e, n, t) {\n function o(i, f) {\n if (!n[i]) {\n if (!e[i]) {\n var c = \"function\" == typeof require && require;\n if (!f && c) return c(i, !0);\n if (u) return u(i, !0);\n var a = new Error(\"Cannot find module '\" + i + \"'\");\n throw a.code = \"MODULE_NOT_FOUND\", a;\n }\n var p = n[i] = {\n exports: {}\n };\n e[i][0].call(p.exports, function (r) {\n var n = e[i][1][r];\n return o(n || r);\n }, p, p.exports, r, e, n, t);\n }\n return n[i].exports;\n }\n for (var u = \"function\" == typeof require && require, i = 0; i < t.length; i++) o(t[i]);\n return o;\n }\n return r;\n }()({\n 1: [function (require, module, exports) {\n \"use strict\";\n\n /*! rater-js. [c] 2018 Fredrik Olsson. MIT License */\n var css = require('./style.css');\n module.exports = function (options) {\n //private fields\n var showToolTip = true;\n if (typeof options.element === \"undefined\" || options.element === null) {\n throw new Error(\"element required\");\n }\n if (typeof options.showToolTip !== \"undefined\") {\n showToolTip = !!options.showToolTip;\n }\n if (typeof options.step !== \"undefined\") {\n if (options.step <= 0 || options.step > 1) {\n throw new Error(\"step must be a number between 0 and 1\");\n }\n }\n var elem = options.element;\n var reverse = options.reverse;\n var stars = options.max || 5;\n var starSize = options.starSize || 16;\n var step = options.step || 1;\n var onHover = options.onHover;\n var onLeave = options.onLeave;\n var rating = null;\n var myRating;\n elem.classList.add(\"star-rating\");\n var div = document.createElement(\"div\");\n div.classList.add(\"star-value\");\n if (reverse) {\n div.classList.add(\"rtl\");\n }\n div.style.backgroundSize = starSize + \"px\";\n elem.appendChild(div);\n elem.style.width = starSize * stars + \"px\";\n elem.style.height = starSize + \"px\";\n elem.style.backgroundSize = starSize + \"px\";\n var callback = options.rateCallback;\n var disabled = !!options.readOnly;\n var disableText;\n var isRating = false;\n var isBusyText = options.isBusyText;\n var currentRating;\n var ratingText;\n if (typeof options.disableText !== \"undefined\") {\n disableText = options.disableText;\n } else {\n disableText = \"{rating}/{maxRating}\";\n }\n if (typeof options.ratingText !== \"undefined\") {\n ratingText = options.ratingText;\n } else {\n ratingText = \"{rating}/{maxRating}\";\n }\n if (options.rating) {\n setRating(options.rating);\n } else {\n var dataRating = elem.dataset.rating;\n if (dataRating) {\n setRating(+dataRating);\n }\n }\n if (!rating) {\n elem.querySelector(\".star-value\").style.width = \"0px\";\n }\n if (disabled) {\n disable();\n } //private methods\n\n function onMouseMove(e) {\n onMove(e, false);\n }\n /**\r\n * Called by eventhandlers when mouse or touch events are triggered\r\n * @param {MouseEvent} e\r\n */\n\n function onMove(e, isTouch) {\n if (disabled === true || isRating === true) {\n return;\n }\n var xCoor = null;\n var percent;\n var width = elem.offsetWidth;\n var parentOffset = elem.getBoundingClientRect();\n if (reverse) {\n if (isTouch) {\n xCoor = e.changedTouches[0].pageX - parentOffset.left;\n } else {\n xCoor = e.pageX - window.scrollX - parentOffset.left;\n }\n var relXRtl = width - xCoor;\n var valueForDivision = width / 100;\n percent = relXRtl / valueForDivision;\n } else {\n if (isTouch) {\n xCoor = e.changedTouches[0].pageX - parentOffset.left;\n } else {\n xCoor = e.offsetX;\n }\n percent = xCoor / width * 100;\n }\n if (percent < 101) {\n if (step === 1) {\n currentRating = Math.ceil(percent / 100 * stars);\n } else {\n var rat = percent / 100 * stars;\n for (var i = 0;; i += step) {\n if (i >= rat) {\n currentRating = i;\n break;\n }\n }\n } //todo: check why this happens and fix\n\n if (currentRating > stars) {\n currentRating = stars;\n }\n elem.querySelector(\".star-value\").style.width = currentRating / stars * 100 + \"%\";\n if (showToolTip) {\n var toolTip = ratingText.replace(\"{rating}\", currentRating);\n toolTip = toolTip.replace(\"{maxRating}\", stars);\n elem.setAttribute(\"title\", toolTip);\n }\n if (typeof onHover === \"function\") {\n onHover(currentRating, rating);\n }\n }\n }\n /**\r\n * Called when mouse is released. This function will update the view with the rating.\r\n * @param {MouseEvent} e\r\n */\n\n function onStarOut(e) {\n if (!rating) {\n elem.querySelector(\".star-value\").style.width = \"0%\";\n elem.removeAttribute(\"data-rating\");\n } else {\n elem.querySelector(\".star-value\").style.width = rating / stars * 100 + \"%\";\n elem.setAttribute(\"data-rating\", rating);\n }\n if (typeof onLeave === \"function\") {\n onLeave(currentRating, rating);\n }\n }\n /**\r\n * Called when star is clicked.\r\n * @param {MouseEvent} e\r\n */\n\n function onStarClick(e) {\n if (disabled === true) {\n return;\n }\n if (isRating === true) {\n return;\n }\n if (typeof callback !== \"undefined\") {\n isRating = true;\n myRating = currentRating;\n if (typeof isBusyText === \"undefined\") {\n elem.removeAttribute(\"title\");\n } else {\n elem.setAttribute(\"title\", isBusyText);\n }\n elem.classList.add(\"is-busy\");\n callback.call(this, myRating, function () {\n if (disabled === false) {\n elem.removeAttribute(\"title\");\n }\n isRating = false;\n elem.classList.remove(\"is-busy\");\n });\n }\n }\n /**\r\n * Disables the rater so that it's not possible to click the stars.\r\n */\n\n function disable() {\n disabled = true;\n elem.classList.add(\"disabled\");\n if (showToolTip && !!disableText) {\n var toolTip = disableText.replace(\"{rating}\", !!rating ? rating : 0);\n toolTip = toolTip.replace(\"{maxRating}\", stars);\n elem.setAttribute(\"title\", toolTip);\n } else {\n elem.removeAttribute(\"title\");\n }\n }\n /**\r\n * Enabled the rater so that it's possible to click the stars.\r\n */\n\n function enable() {\n disabled = false;\n elem.removeAttribute(\"title\");\n elem.classList.remove(\"disabled\");\n }\n /**\r\n * Sets the rating\r\n */\n\n function setRating(value) {\n if (typeof value === \"undefined\") {\n throw new Error(\"Value not set.\");\n }\n if (value === null) {\n throw new Error(\"Value cannot be null.\");\n }\n if (typeof value !== \"number\") {\n throw new Error(\"Value must be a number.\");\n }\n if (value < 0 || value > stars) {\n throw new Error(\"Value too high. Please set a rating of \" + stars + \" or below.\");\n }\n rating = value;\n elem.querySelector(\".star-value\").style.width = value / stars * 100 + \"%\";\n elem.setAttribute(\"data-rating\", value);\n }\n /**\r\n * Gets the rating\r\n */\n\n function getRating() {\n return rating;\n }\n /**\r\n * Set the rating to a value to inducate it's not rated.\r\n */\n\n function clear() {\n rating = null;\n elem.querySelector(\".star-value\").style.width = \"0px\";\n elem.removeAttribute(\"title\");\n }\n /**\r\n * Remove event handlers.\r\n */\n\n function dispose() {\n elem.removeEventListener(\"mousemove\", onMouseMove);\n elem.removeEventListener(\"mouseleave\", onStarOut);\n elem.removeEventListener(\"click\", onStarClick);\n elem.removeEventListener(\"touchmove\", handleMove, false);\n elem.removeEventListener(\"touchstart\", handleStart, false);\n elem.removeEventListener(\"touchend\", handleEnd, false);\n elem.removeEventListener(\"touchcancel\", handleCancel, false);\n }\n elem.addEventListener(\"mousemove\", onMouseMove);\n elem.addEventListener(\"mouseleave\", onStarOut);\n var module = {\n setRating: setRating,\n getRating: getRating,\n disable: disable,\n enable: enable,\n clear: clear,\n dispose: dispose,\n get element() {\n return elem;\n }\n };\n /**\r\n * Handles touchmove event.\r\n * @param {TouchEvent} e\r\n */\n\n function handleMove(e) {\n e.preventDefault();\n onMove(e, true);\n }\n /**\r\n * Handles touchstart event.\r\n * @param {TouchEvent} e \r\n */\n\n function handleStart(e) {\n e.preventDefault();\n onMove(e, true);\n }\n /**\r\n * Handles touchend event.\r\n * @param {TouchEvent} e \r\n */\n\n function handleEnd(evt) {\n evt.preventDefault();\n onMove(evt, true);\n onStarClick.call(module);\n }\n /**\r\n * Handles touchend event.\r\n * @param {TouchEvent} e \r\n */\n\n function handleCancel(e) {\n e.preventDefault();\n onStarOut(e);\n }\n elem.addEventListener(\"click\", onStarClick.bind(module));\n elem.addEventListener(\"touchmove\", handleMove, false);\n elem.addEventListener(\"touchstart\", handleStart, false);\n elem.addEventListener(\"touchend\", handleEnd, false);\n elem.addEventListener(\"touchcancel\", handleCancel, false);\n return module;\n };\n }, {\n \"./style.css\": 2\n }],\n 2: [function (require, module, exports) {\n var css = \".star-rating {\\n width: 0;\\n position: relative;\\n display: inline-block;\\n background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDguOSIgaGVpZ2h0PSIxMDMuNiIgdmlld0JveD0iMCAwIDEwOC45IDEwMy42Ij48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6I2UzZTZlNjt9PC9zdHlsZT48L2RlZnM+PHRpdGxlPnN0YXJfMDwvdGl0bGU+PGcgaWQ9IkxheWVyXzIiIGRhdGEtbmFtZT0iTGF5ZXIgMiI+PGcgaWQ9IkxheWVyXzEtMiIgZGF0YS1uYW1lPSJMYXllciAxIj48cG9seWdvbiBjbGFzcz0iY2xzLTEiIHBvaW50cz0iMTA4LjkgMzkuNiA3MS4zIDM0LjEgNTQuNCAwIDM3LjYgMzQuMSAwIDM5LjYgMjcuMiA2Ni4xIDIwLjggMTAzLjYgNTQuNCA4NS45IDg4LjEgMTAzLjYgODEuNyA2Ni4xIDEwOC45IDM5LjYiLz48L2c+PC9nPjwvc3ZnPg0K);\\n background-position: 0 0;\\n background-repeat: repeat-x;\\n cursor: pointer;\\n}\\n.star-rating .star-value {\\n position: absolute;\\n height: 100%;\\n width: 100%;\\n background: url('data:image/svg+xml;base64,PHN2Zw0KCXhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwOC45IiBoZWlnaHQ9IjEwMy42IiB2aWV3Qm94PSIwIDAgMTA4LjkgMTAzLjYiPg0KCTxkZWZzPg0KCQk8c3R5bGU+LmNscy0xe2ZpbGw6I2YxYzk0Nzt9PC9zdHlsZT4NCgk8L2RlZnM+DQoJPHRpdGxlPnN0YXIxPC90aXRsZT4NCgk8ZyBpZD0iTGF5ZXJfMiIgZGF0YS1uYW1lPSJMYXllciAyIj4NCgkJPGcgaWQ9IkxheWVyXzEtMiIgZGF0YS1uYW1lPSJMYXllciAxIj4NCgkJCTxwb2x5Z29uIGNsYXNzPSJjbHMtMSIgcG9pbnRzPSI1NC40IDAgNzEuMyAzNC4xIDEwOC45IDM5LjYgODEuNyA2Ni4xIDg4LjEgMTAzLjYgNTQuNCA4NS45IDIwLjggMTAzLjYgMjcuMiA2Ni4xIDAgMzkuNiAzNy42IDM0LjEgNTQuNCAwIi8+DQoJCTwvZz4NCgk8L2c+DQo8L3N2Zz4NCg==');\\n background-repeat: repeat-x;\\n}\\n.star-rating.disabled {\\n cursor: default;\\n}\\n.star-rating.is-busy {\\n cursor: wait;\\n}\\n.star-rating .star-value.rtl {\\n -moz-transform: scaleX(-1);\\n -o-transform: scaleX(-1);\\n -webkit-transform: scaleX(-1);\\n transform: scaleX(-1);\\n filter: FlipH;\\n -ms-filter: \\\"FlipH\\\";\\n right: 0;\\n left: auto;\\n}\\n\";\n require(\"browserify-css\").createStyle(css, {\n \"href\": \"lib\\\\style.css\"\n }, {\n \"insertAt\": \"bottom\"\n });\n module.exports = css;\n }, {\n \"browserify-css\": 3\n }],\n 3: [function (require, module, exports) {\n 'use strict';\n\n // For more information about browser field, check out the browser field at https://github.com/substack/browserify-handbook#browser-field.\n var styleElementsInsertedAtTop = [];\n var insertStyleElement = function (styleElement, options) {\n var head = document.head || document.getElementsByTagName('head')[0];\n var lastStyleElementInsertedAtTop = styleElementsInsertedAtTop[styleElementsInsertedAtTop.length - 1];\n options = options || {};\n options.insertAt = options.insertAt || 'bottom';\n if (options.insertAt === 'top') {\n if (!lastStyleElementInsertedAtTop) {\n head.insertBefore(styleElement, head.firstChild);\n } else if (lastStyleElementInsertedAtTop.nextSibling) {\n head.insertBefore(styleElement, lastStyleElementInsertedAtTop.nextSibling);\n } else {\n head.appendChild(styleElement);\n }\n styleElementsInsertedAtTop.push(styleElement);\n } else if (options.insertAt === 'bottom') {\n head.appendChild(styleElement);\n } else {\n throw new Error('Invalid value for parameter \\'insertAt\\'. Must be \\'top\\' or \\'bottom\\'.');\n }\n };\n module.exports = {\n // Create a tag with optional data attributes\n createLink: function (href, attributes) {\n var head = document.head || document.getElementsByTagName('head')[0];\n var link = document.createElement('link');\n link.href = href;\n link.rel = 'stylesheet';\n for (var key in attributes) {\n if (!attributes.hasOwnProperty(key)) {\n continue;\n }\n var value = attributes[key];\n link.setAttribute('data-' + key, value);\n }\n head.appendChild(link);\n },\n // Create a