{"version":3,"file":"js/formTogglers.f08120e765354aeed1f8.min.js","mappings":"omBACA,IAIUA,EAJJC,EAAkB,cAClBC,EAAqB,iBAErBC,EAmEK,CACHC,SApEkB,oCA8ClB,WAAYC,GAAW,6BACnB,cAAMA,EAAW,UACZC,OAAS,EAAKC,WAAWC,cAAhB,WAAkCP,EAAlC,YACd,EAAKQ,QAAU,EAAKF,WAAWC,cAAhB,WAAkCP,EAAlC,aACf,EAAKS,OAAS,EAAKH,WAAWC,cAAhB,WAAkCP,EAAlC,YAEd,EAAKU,OANc,EA9CL,UAChBX,EADgB,WAElB,WAAYK,EAAWO,IAAM,eACzBC,KAAKN,WAAaF,EAClBQ,KAAKP,OAAS,KACdO,KAAKJ,QAAU,KACfI,KAAKH,OAAS,KACdG,KAAKD,KAAOA,EAPE,mCAUlB,WACIC,KAAKC,gBACLD,KAAKE,gBAZS,2BAelB,WACQF,KAAKJ,SAASI,KAAKJ,QAAQO,SAE/BH,KAAKJ,QAAUQ,SAASC,cAAc,QACpB,UAAdL,KAAKD,KACLC,KAAKJ,QAAQU,UAAUC,IAAvB,UAA8BnB,EAA9B,aACqB,aAAdY,KAAKD,MACZC,KAAKJ,QAAQU,UAAUC,IAAvB,UAA8BlB,EAA9B,aAGJW,KAAKJ,QAAQY,aAAa,cAAe,IACzCR,KAAKJ,QAAQY,aAAa,qBAAsB,QAEhD,IAAIC,EAAAA,QAAOT,KAAKJ,SAEhBI,KAAKH,OAAOa,QAAQV,KAAKJ,WA9BX,sBAkClB,WACQI,KAAKJ,SAASI,KAAKJ,QAAQe,YAAYC,eAnC7B,yBAsClB,WAAc,WACVZ,KAAKP,OAAOoB,iBAAiB,UAAU,kBAAM,EAAKC,kBAvCpC,MAqElBC,YArEkB,oCAyDlB,WAAYvB,GAAW,6BACnB,cAAMA,EAAW,aACZC,OAAS,EAAKC,WAAWC,cAAhB,WAAkCN,EAAlC,YACd,EAAKO,QAAU,EAAKF,WAAWC,cAAhB,WAAkCN,EAAlC,aACf,EAAKQ,OAAS,EAAKH,WAAWC,cAAhB,WAAkCN,EAAlC,YAEd,EAAKS,OANc,EAzDL,UAwDIX,IAiB9B,a,wGC5EqBsB,EAAAA,WACjB,WAAYjB,IAAW,eACnBQ,KAAKgB,IAAMxB,GAAaY,SAASa,KACjCjB,KAAKkB,OAAS,KACdlB,KAAKmB,WAAa,GAClBnB,KAAKoB,MAAQ,KACbpB,KAAKqB,aAAe,KACpBrB,KAAKsB,SAAWtB,KAAKgB,IAAIO,QAAQC,eAAgB,EACjDxB,KAAKF,O,mCAGT,WAAO,WACHE,KAAKyB,cACLzB,KAAKgB,IAAIL,UAAY,kBAAM,K,yBAG/B,WACIX,KAAKkB,QAAUlB,KAAKkB,OAAOf,SAC3BH,KAAKoB,OAASpB,KAAKoB,MAAMM,OACzB1B,KAAK2B,QAAU,KACf3B,KAAKoB,MAAQ,O,wBAGjB,SAAWQ,GAAG,WACV5B,KAAK6B,cACL7B,KAAKqB,cAAgBS,aAAa9B,KAAKqB,cACvCrB,KAAKkB,OAASd,SAASC,cAAc,QACrC,IAAM0B,EAAWC,KAAKC,IAAIjC,KAAKgB,IAAIkB,YAAalC,KAAKgB,IAAImB,cACnDC,EAASL,EAAW,EACpBM,EAAUrC,KAAKgB,IAAIsB,wBACzBtC,KAAKkB,OAAOqB,MAAMC,MAAQxC,KAAKkB,OAAOqB,MAAME,OAAS,UAAAV,EAAW,GAAQA,EAAkB/B,KAAKmB,WAA1C,MACrDnB,KAAKkB,OAAOqB,MAAMG,KAAQ1C,KAAKsB,OAAsD,MAA5D,UAAkBM,EAAEe,SAAWN,EAAQK,KAAON,GAA9C,MACzBpC,KAAKkB,OAAOqB,MAAMK,IAAO5C,KAAKsB,OAAqD,MAA3D,UAAkBM,EAAEiB,SAAWR,EAAQO,IAAMR,GAA7C,MACxBpC,KAAKkB,OAAOZ,UAAUC,IAAI,eAE1BuC,EAAAA,GAAAA,IAAS9C,KAAKkB,OAAQ,CAAE6B,MAAO,IAC3B/C,KAAKsB,QAAQwB,EAAAA,GAAAA,IAAS9C,KAAKkB,OAAQ,CAAE6B,MAAO,EAAGC,UAAW,GAAIC,UAAW,KAE7EjD,KAAKgB,IAAIkC,YAAYlD,KAAKkB,QAE1BlB,KAAKoB,MAAQ0B,EAAAA,GAAAA,GAAQ9C,KAAKkB,OAAQ,CAC9B6B,MAAO,EACPI,UAAW,EACXC,SAAU,KAIdpD,KAAKqB,aAAegC,YAAW,WAC3B,EAAKxB,gBACN,O,yBAGP,WAAc,WACV7B,KAAKgB,IAAIH,iBAAiB,SAAS,SAACe,GAAD,OAAO,EAAKhB,WAAWgB,U,EArD7CnB,GA0DjBL,SAASkD,iBAAiB,iBAAiBC,SAAQ,SAACC,GAAD,OAAS,IAAI/C,EAAO+C,O,sBC3D5D,SAASC,EAAgBC,GAItC,OAHAD,EAAkBE,OAAOC,eAAiBD,OAAOE,eAAiB,SAAyBH,GACzF,OAAOA,EAAEI,WAAaH,OAAOE,eAAeH,IAEvCD,EAAgBC,G,qGCHV,SAASK,EAAUC,EAAUC,GAC1C,GAA0B,mBAAfA,GAA4C,OAAfA,EACtC,MAAM,IAAIC,UAAU,sDAGtBF,EAASG,UAAYR,OAAOS,OAAOH,GAAcA,EAAWE,UAAW,CACrEE,YAAa,CACXC,MAAON,EACPO,UAAU,EACVC,cAAc,KAGdP,IAAY,OAAeD,EAAUC,K,sBCb5B,SAASQ,EAAQC,GAa9B,OATED,EADoB,mBAAXE,QAAoD,iBAApBA,OAAOC,SACtC,SAAiBF,GACzB,cAAcA,GAGN,SAAiBA,GACzB,OAAOA,GAAyB,mBAAXC,QAAyBD,EAAIL,cAAgBM,QAAUD,IAAQC,OAAOR,UAAY,gBAAkBO,GAItHD,EAAQC,GCXF,SAASG,EAA2BC,EAAMC,GACvD,GAAIA,IAA2B,WAAlBN,EAAQM,IAAsC,mBAATA,GAChD,OAAOA,EACF,QAAa,IAATA,EACT,MAAM,IAAIb,UAAU,4DAGtB,OCTa,SAAgCY,GAC7C,QAAa,IAATA,EACF,MAAM,IAAIE,eAAe,6DAG3B,OAAOF,EDIA,CAAsBA,G,sDEThB,SAASG,EAAgBvB,EAAGwB,GAMzC,OALAD,EAAkBtB,OAAOC,gBAAkB,SAAyBF,EAAGwB,GAErE,OADAxB,EAAEI,UAAYoB,EACPxB,GAGFuB,EAAgBvB,EAAGwB,G","sources":["webpack:///./scripts/forms/Form.js","webpack:///./scripts/ripple.js","webpack:///../node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","webpack:///../node_modules/@babel/runtime/helpers/esm/inherits.js","webpack:///../node_modules/@babel/runtime/helpers/esm/typeof.js","webpack:///../node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","webpack:///../node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack:///../node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js"],"sourcesContent":["import Ripple from '../ripple'\r\nconst CLASS_RADIO_PRE = 'radio-group'\r\nconst CLASS_CHECKBOX_PRE = 'checkbox-group'\r\n\r\nconst Form = (function () {\r\n class FormMain {\r\n constructor(container, type) {\r\n this.$formGroup = container\r\n this.$input = null\r\n this.$circle = null\r\n this.$label = null\r\n this.type = type\r\n }\r\n\r\n init() {\r\n this._createCircle()\r\n this.addListener()\r\n }\r\n\r\n _createCircle() {\r\n if (this.$circle) this.$circle.remove()\r\n\r\n this.$circle = document.createElement('span')\r\n if (this.type === 'radio') {\r\n this.$circle.classList.add(`${CLASS_RADIO_PRE}__circle`)\r\n } else if (this.type === 'checkbox') {\r\n this.$circle.classList.add(`${CLASS_CHECKBOX_PRE}__circle`)\r\n }\r\n\r\n this.$circle.setAttribute('data-ripple', '')\r\n this.$circle.setAttribute('data-ripple-center', 'true')\r\n\r\n new Ripple(this.$circle)\r\n\r\n this.$label.prepend(this.$circle)\r\n }\r\n\r\n // Callbacks\r\n onChange() {\r\n if (this.$circle) this.$circle.getRipple().drawRipple()\r\n }\r\n\r\n addListener() {\r\n this.$input.addEventListener('change', () => this.onChange())\r\n }\r\n\r\n }\r\n\r\n\r\n class RadioGrp extends FormMain {\r\n constructor(container) {\r\n super(container, 'radio')\r\n this.$input = this.$formGroup.querySelector(`.${CLASS_RADIO_PRE}__input`)\r\n this.$circle = this.$formGroup.querySelector(`.${CLASS_RADIO_PRE}__circle`)\r\n this.$label = this.$formGroup.querySelector(`.${CLASS_RADIO_PRE}__label`)\r\n\r\n this.init()\r\n }\r\n }\r\n\r\n class CheckboxGrp extends FormMain {\r\n constructor(container) {\r\n super(container, 'checkbox')\r\n this.$input = this.$formGroup.querySelector(`.${CLASS_CHECKBOX_PRE}__input`)\r\n this.$circle = this.$formGroup.querySelector(`.${CLASS_CHECKBOX_PRE}__circle`)\r\n this.$label = this.$formGroup.querySelector(`.${CLASS_CHECKBOX_PRE}__label`)\r\n\r\n this.init()\r\n }\r\n }\r\n\r\n return {\r\n RadioGrp,\r\n CheckboxGrp\r\n }\r\n})()\r\n\r\nexport default Form","import { gsap } from \"gsap\";\r\nexport default class Ripple {\r\n constructor(container) {\r\n this.$el = container || document.body\r\n this.ripple = null\r\n this.rippleSize = 20\r\n this.tween = null\r\n this.cleanUpTimer = null\r\n this.center = !!this.$el.dataset.rippleCenter || false\r\n this.init()\r\n }\r\n\r\n init() {\r\n this.addListners()\r\n this.$el.getRipple = () => this\r\n }\r\n\r\n clearRipple() {\r\n this.ripple && this.ripple.remove()\r\n this.tween && this.tween.kill()\r\n this.rippple = null\r\n this.tween = null\r\n }\r\n\r\n drawRipple(e) {\r\n this.clearRipple()\r\n this.cleanUpTimer && clearTimeout(this.cleanUpTimer)\r\n this.ripple = document.createElement('span')\r\n const diameter = Math.max(this.$el.clientWidth, this.$el.clientHeight)\r\n const radius = diameter / 2\r\n const eleRect = this.$el.getBoundingClientRect()\r\n this.ripple.style.width = this.ripple.style.height = diameter > 20 ? `${diameter}px` : `${this.rippleSize}px`\r\n this.ripple.style.left = !this.center ? `${e.clientX - (eleRect.left + radius)}px` : '50%'\r\n this.ripple.style.top = !this.center ? `${e.clientY - (eleRect.top + radius)}px` : '50%'\r\n this.ripple.classList.add('ripple-wave')\r\n\r\n gsap.set(this.ripple, { scale: 0 })\r\n if (this.center) gsap.set(this.ripple, { scale: 0, xPercent: -50, yPercent: -50 })\r\n\r\n this.$el.appendChild(this.ripple)\r\n\r\n this.tween = gsap.to(this.ripple, {\r\n scale: 2,\r\n autoAlpha: 0,\r\n duration: 0.4,\r\n //onComplete: () => this.clearRipple()\r\n })\r\n\r\n this.cleanUpTimer = setTimeout(() => {\r\n this.clearRipple()\r\n }, 2000)\r\n }\r\n\r\n addListners() {\r\n this.$el.addEventListener('click', (e) => this.drawRipple(e))\r\n }\r\n}\r\n\r\n(function () {\r\n document.querySelectorAll('[data-ripple]').forEach((ele) => new Ripple(ele))\r\n})()","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}","import _typeof from \"@babel/runtime/helpers/typeof\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n\n return assertThisInitialized(self);\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}"],"names":["FormMain","CLASS_RADIO_PRE","CLASS_CHECKBOX_PRE","Form","RadioGrp","container","$input","$formGroup","querySelector","$circle","$label","init","type","this","_createCircle","addListener","remove","document","createElement","classList","add","setAttribute","Ripple","prepend","getRipple","drawRipple","addEventListener","onChange","CheckboxGrp","$el","body","ripple","rippleSize","tween","cleanUpTimer","center","dataset","rippleCenter","addListners","kill","rippple","e","clearRipple","clearTimeout","diameter","Math","max","clientWidth","clientHeight","radius","eleRect","getBoundingClientRect","style","width","height","left","clientX","top","clientY","gsap","scale","xPercent","yPercent","appendChild","autoAlpha","duration","setTimeout","querySelectorAll","forEach","ele","_getPrototypeOf","o","Object","setPrototypeOf","getPrototypeOf","__proto__","_inherits","subClass","superClass","TypeError","prototype","create","constructor","value","writable","configurable","_typeof","obj","Symbol","iterator","_possibleConstructorReturn","self","call","ReferenceError","_setPrototypeOf","p"],"sourceRoot":""}