{"version":3,"sources":["webpack:///scripts/components/adaptiveFields--ddfeedb4bae9c7ed8f0e.js","webpack:///./client/src/site__fus078/components/adaptive-form-fields/component.js","webpack:///./client/src/site__fus078/components/careers/component.js"],"names":["webpackJsonp","/opt/app/node_modules/babel-loader/lib/index.js??ref--5-0!/opt/app/node_modules/eslint-loader/index.js!/opt/app/client/src/site__fus078/components/adaptive-form-fields/component.js","module","exports","__webpack_require__","_classCallCheck","instance","Constructor","TypeError","_possibleConstructorReturn","self","call","ReferenceError","_inherits","subClass","superClass","prototype","Object","create","constructor","value","enumerable","writable","configurable","setPrototypeOf","__proto__","defineProperty","adaptiveField","undefined","_createClass","defineProperties","target","props","i","length","descriptor","key","protoProps","staticProps","_debug","_debug2","obj","__esModule","default","_baseBehaviour","log","_Base","element","options","this","_this","getPrototypeOf","$label","$element","find","labelselector","$field","fieldselector","addClass","name","watch","indicate","on","onChange","bind","onClick","onFocus","onBlur","val","hascontentclassname","removeClass","focus","Base","componentName","DEFAULTS","focusclassname","/opt/app/node_modules/babel-loader/lib/index.js??ref--5-0!/opt/app/node_modules/eslint-loader/index.js!/opt/app/client/src/site__fus078/components/careers/component.js","$","careerApplicationForm","_BaseAjaxForm","apply","arguments","validator","$form","validate","ignore","highlight","hasClass","parent","unhighlight","parents","rules","firstName","required","lastName","email","phone","coverLetterFileName","resumeFileName","position","messages","BaseAjaxForm","formselector","payloaditemselector","submitbuttonselector","messagesuccessselector","messagewaitselector","messageerrorselector"],"mappings":"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","file":"scripts/components/adaptiveFields--ddfeedb4bae9c7ed8f0e.js","sourcesContent":["webpackJsonp([\"components/adaptiveFields\"],{\n\n/***/ \"/opt/app/node_modules/babel-loader/lib/index.js??ref--5-0!/opt/app/node_modules/eslint-loader/index.js!/opt/app/client/src/site__fus078/components/adaptive-form-fields/component.js\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.adaptiveField = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _debug = __webpack_require__(\"/opt/app/node_modules/babel-loader/lib/index.js??ref--5-0!/opt/app/node_modules/eslint-loader/index.js!/opt/app/node_modules/debug/src/browser.js\");\n\nvar _debug2 = _interopRequireDefault(_debug);\n\nvar _baseBehaviour = __webpack_require__(\"/opt/app/node_modules/babel-loader/lib/index.js??ref--5-0!/opt/app/node_modules/eslint-loader/index.js!/opt/app/client/src/site__fus078/components/base-behaviour/index.js\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar log = (0, _debug2.default)('fus078/components/adaptive-form-fields');\n\nvar adaptiveField = exports.adaptiveField = function (_Base) {\n _inherits(adaptiveField, _Base);\n\n function adaptiveField(element, options) {\n _classCallCheck(this, adaptiveField);\n\n var _this = _possibleConstructorReturn(this, (adaptiveField.__proto__ || Object.getPrototypeOf(adaptiveField)).call(this, element, options));\n\n _this.$label = _this.$element.find(_this.options.labelselector);\n _this.$field = _this.$element.find(_this.options.fieldselector);\n _this.$element.addClass('JS-' + _this.constructor.name);\n log('attached', _this.element);\n _this.watch();\n return _this;\n }\n\n _createClass(adaptiveField, [{\n key: 'watch',\n value: function watch() {\n this.indicate();\n\n this.$field.on('change', this.onChange.bind(this));\n this.$field.on('click', this.onClick.bind(this));\n this.$field.on('focus', this.onFocus.bind(this));\n this.$field.on('blur', this.onBlur.bind(this));\n\n log('watching', this.element);\n }\n }, {\n key: 'indicate',\n value: function indicate() {\n if (this.$field && typeof this.$field.val() !== 'undefined' && this.$field.val().length > 0) {\n this.$label.addClass(this.options.hascontentclassname);\n } else {\n this.$label.removeClass(this.options.hascontentclassname);\n }\n }\n }, {\n key: 'onChange',\n value: function onChange() {\n this.indicate();\n }\n }, {\n key: 'onClick',\n value: function onClick() {\n this.$field.focus();\n }\n }, {\n key: 'onFocus',\n value: function onFocus() {\n this.$label.addClass('focus');\n }\n }, {\n key: 'onBlur',\n value: function onBlur() {\n this.$label.removeClass('focus');this.indicate();\n }\n }]);\n\n return adaptiveField;\n}(_baseBehaviour.Base);\n\nadaptiveField.componentName = 'adaptivefield';\n\nadaptiveField.DEFAULTS = {\n labelselector: '.adaptive-label',\n fieldselector: '.adaptive-field',\n focusclassname: 'focus',\n hascontentclassname: 'adaptive-label--has-content'\n};\n\n/***/ }),\n\n/***/ \"/opt/app/node_modules/babel-loader/lib/index.js??ref--5-0!/opt/app/node_modules/eslint-loader/index.js!/opt/app/client/src/site__fus078/components/careers/component.js\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function($) {\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.careerApplicationForm = undefined;\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _debug = __webpack_require__(\"/opt/app/node_modules/babel-loader/lib/index.js??ref--5-0!/opt/app/node_modules/eslint-loader/index.js!/opt/app/node_modules/debug/src/browser.js\");\n\nvar _debug2 = _interopRequireDefault(_debug);\n\nvar _baseBehaviour = __webpack_require__(\"/opt/app/node_modules/babel-loader/lib/index.js??ref--5-0!/opt/app/node_modules/eslint-loader/index.js!/opt/app/client/src/site__fus078/components/base-behaviour/index.js\");\n\nvar _index = __webpack_require__(\"/opt/app/node_modules/babel-loader/lib/index.js??ref--5-0!/opt/app/node_modules/eslint-loader/index.js!/opt/app/client/src/site__fus078/components/careers/index.js\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } /*\r\n Career Application Form\r\n \r\n Markup:\r\n
\r\n
\r\n

Tell us a bit about yourself

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n Files must be smaller than 4MB, and only the following file types are allowed: pdf, doc

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n

Thank you for your application. We will be in touch shortly.

\r\n
\r\n
\r\n

Sorry something went wrong with your application. Please try again later.

\r\n
\r\n
\r\n
\r\n \r\n Styleguide FUS078.Components.CareerApplicationForm\r\n */\n\nvar careerApplicationForm = exports.careerApplicationForm = function (_BaseAjaxForm) {\n _inherits(careerApplicationForm, _BaseAjaxForm);\n\n function careerApplicationForm() {\n _classCallCheck(this, careerApplicationForm);\n\n return _possibleConstructorReturn(this, (careerApplicationForm.__proto__ || Object.getPrototypeOf(careerApplicationForm)).apply(this, arguments));\n }\n\n _createClass(careerApplicationForm, [{\n key: 'attachValidation',\n value: function attachValidation() {\n\n this.validator = this.$form.validate({\n ignore: [],\n highlight: function highlight(element) {\n if ($(element).hasClass('file-upload-field')) {\n $(element).parent().addClass('error');\n } else {\n $(element).addClass('error');\n }\n //label\n var parent = $(element).parent().parent();\n if ($(parent).hasClass('radio')) {\n $(parent).addClass('error');\n } else if ($(element).parent().hasClass('selector')) {\n $(element).parent().addClass('error');\n } else {\n $(element).addClass('error').removeClass('valid');\n $(element).parent().find('.adaptive-label').addClass('error-lbl').removeClass('valid-lbl');\n }\n },\n\n unhighlight: function unhighlight(element) {\n $(element).parents('.form-field').removeClass('error');\n\n if ($(element).hasClass('file-upload-field')) {\n $(element).parent().removeClass('error');\n } else {\n $(element).removeClass('error');\n }\n //label\n var parent = $(element).parent().parent();\n if ($(parent).hasClass('radio')) {\n $(parent).removeClass('error');\n } else if ($(element).parent().hasClass('selector')) {\n $(element).parent().removeClass('error');\n } else {\n $(element).addClass('valid').removeClass('error');\n $(element).parent().find('.adaptive-label').addClass('valid-lbl').removeClass('error-lbl');\n }\n },\n rules: {\n firstName: {\n required: true\n },\n lastName: {\n required: true\n },\n email: {\n email: true,\n required: true\n },\n phone: {\n required: true\n },\n coverLetterFileName: {\n required: true\n },\n resumeFileName: {\n required: true\n },\n position: {\n required: true\n }\n },\n messages: {\n firstName: 'Please provide your name',\n lastName: 'Please provide your surname',\n email: 'Enter your email address',\n phone: 'Please provide your phone number',\n position: 'Select the position you’re applying for',\n coverLetterFileName: 'Please attach your cover letter',\n resumeFileName: 'Please attach your resume'\n }\n });\n }\n }]);\n\n return careerApplicationForm;\n}(_baseBehaviour.BaseAjaxForm);\n\ncareerApplicationForm.componentName = 'careerapplicationform';\n\ncareerApplicationForm.DEFAULTS = {\n formselector: 'form',\n payloaditemselector: '[data-career-form-payload]',\n submitbuttonselector: '[data-career-form-submit]',\n messagesuccessselector: '[data-career-form-message=\"success\"]',\n messagewaitselector: '[data-career-form-message=\"wait\"]',\n messageerrorselector: '[data-career-form-message=\"error\"]'\n};\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(\"/opt/app/client/src/vendor/jquery@2.1.1.js\")))\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// scripts/components/adaptiveFields--ddfeedb4bae9c7ed8f0e.js","import debug from 'debug';\r\nimport {Base} from '@fus078/components/base-behaviour';\r\nconst log = debug('fus078/components/adaptive-form-fields');\r\n\r\nexport class adaptiveField extends Base {\r\n\r\n constructor (element, options) {\r\n super(element, options);\r\n this.$label = this.$element.find(this.options.labelselector);\r\n this.$field = this.$element.find(this.options.fieldselector);\r\n this.$element.addClass(`JS-${this.constructor.name}`);\r\n log('attached', this.element);\r\n this.watch();\r\n }\r\n\r\n watch () {\r\n this.indicate();\r\n\r\n this.$field.on('change', this.onChange.bind(this));\r\n this.$field.on('click', this.onClick.bind(this));\r\n this.$field.on('focus', this.onFocus.bind(this));\r\n this.$field.on('blur', this.onBlur.bind(this));\r\n\r\n log('watching', this.element);\r\n }\r\n\r\n indicate () {\r\n if (this.$field &&\r\n typeof (this.$field.val()) !== 'undefined' &&\r\n this.$field.val().length > 0) {\r\n this.$label.addClass(this.options.hascontentclassname);\r\n } else {\r\n this.$label.removeClass(this.options.hascontentclassname);\r\n }\r\n }\r\n onChange () { this.indicate(); }\r\n onClick() { this.$field.focus(); }\r\n onFocus() { this.$label.addClass('focus'); }\r\n onBlur() { this.$label.removeClass('focus'); this.indicate(); }\r\n\r\n}\r\n\r\nadaptiveField.componentName = 'adaptivefield';\r\n\r\nadaptiveField.DEFAULTS = {\r\n labelselector: '.adaptive-label',\r\n fieldselector: '.adaptive-field',\r\n focusclassname: 'focus',\r\n hascontentclassname: 'adaptive-label--has-content'\r\n};\r\n\n\n\n// WEBPACK FOOTER //\n// ./client/src/site__fus078/components/adaptive-form-fields/component.js","/*\r\nCareer Application Form\r\n\r\nMarkup:\r\n
\r\n
\r\n

Tell us a bit about yourself

\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n Files must be smaller than 4MB, and only the following file types are allowed: pdf, doc

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n

Thank you for your application. We will be in touch shortly.

\r\n
\r\n
\r\n

Sorry something went wrong with your application. Please try again later.

\r\n
\r\n
\r\n
\r\n\r\nStyleguide FUS078.Components.CareerApplicationForm\r\n*/\r\n\r\nimport debug from 'debug';\r\nimport { BaseAjaxForm } from \"../base-behaviour\";\r\nimport { ELEMENT_SELECTOR } from './index';\r\nexport class careerApplicationForm extends BaseAjaxForm {\r\n\r\n\tattachValidation () {\r\n\r\n\t\tthis.validator = this.$form.validate({\r\n\t\t\tignore: [],\r\n\t\t\thighlight: function (element) {\r\n\t\t\t\tif ($(element).hasClass('file-upload-field')) {\r\n\t\t\t\t\t$(element).parent().addClass('error');\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\t$(element).addClass('error');\r\n\t\t\t\t}\r\n\t\t\t\t//label\r\n\t\t\t\tvar parent = $(element).parent().parent();\r\n\t\t\t\tif ($(parent).hasClass('radio')) {\r\n\t\t\t\t\t$(parent).addClass('error');\r\n\t\t\t\t}\r\n\t\t\t\telse if ($(element).parent().hasClass('selector')) {\r\n\t\t\t\t\t$(element).parent().addClass('error');\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\t$(element).addClass('error').removeClass('valid');\r\n\t\t\t\t\t$(element).parent().find('.adaptive-label').addClass('error-lbl').removeClass('valid-lbl');\r\n\t\t\t\t}\r\n\t\t\t},\r\n\r\n\t\t\tunhighlight: function (element) {\r\n\t\t\t\t$(element).parents('.form-field').removeClass('error');\r\n\r\n\t\t\t\tif ($(element).hasClass('file-upload-field')) {\r\n\t\t\t\t\t$(element).parent().removeClass('error');\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\t$(element).removeClass('error');\r\n\t\t\t\t}\r\n\t\t\t\t//label\r\n\t\t\t\tvar parent = $(element).parent().parent();\r\n\t\t\t\tif ($(parent).hasClass('radio')) {\r\n\t\t\t\t\t$(parent).removeClass('error');\r\n\t\t\t\t}\r\n\t\t\t\telse if ($(element).parent().hasClass('selector')) {\r\n\t\t\t\t\t$(element).parent().removeClass('error');\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\t$(element).addClass('valid').removeClass('error');\r\n\t\t\t\t\t$(element).parent().find('.adaptive-label').addClass('valid-lbl').removeClass('error-lbl');\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\trules: {\r\n\t\t\t\tfirstName: {\r\n\t\t\t\t\trequired: true\r\n\t\t\t\t},\r\n\t\t\t\tlastName: {\r\n\t\t\t\t\trequired: true\r\n\t\t\t\t},\r\n\t\t\t\temail: {\r\n\t\t\t\t\temail: true,\r\n\t\t\t\t\trequired: true\r\n\t\t\t\t},\r\n\t\t\t\tphone: {\r\n\t\t\t\t\trequired: true\r\n\t\t\t\t},\r\n\t\t\t\tcoverLetterFileName: {\r\n\t\t\t\t\trequired: true\r\n\t\t\t\t},\r\n\t\t\t\tresumeFileName: {\r\n\t\t\t\t\trequired: true\r\n\t\t\t\t},\r\n\t\t\t\tposition: {\r\n\t\t\t\t\trequired: true\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tmessages: {\r\n\t\t\t\tfirstName: 'Please provide your name',\r\n\t\t\t\tlastName: 'Please provide your surname',\r\n\t\t\t\temail: 'Enter your email address',\r\n\t\t\t\tphone: 'Please provide your phone number',\r\n\t\t\t\tposition: 'Select the position you’re applying for',\r\n\t\t\t\tcoverLetterFileName: 'Please attach your cover letter',\r\n\t\t\t\tresumeFileName: 'Please attach your resume',\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n}\r\n\r\ncareerApplicationForm.componentName = 'careerapplicationform';\r\n\r\ncareerApplicationForm.DEFAULTS = {\r\n\tformselector: 'form',\r\n\tpayloaditemselector: '[data-career-form-payload]',\r\n\tsubmitbuttonselector: '[data-career-form-submit]',\r\n\tmessagesuccessselector: '[data-career-form-message=\"success\"]',\r\n\tmessagewaitselector: '[data-career-form-message=\"wait\"]',\r\n\tmessageerrorselector: '[data-career-form-message=\"error\"]'\r\n};\r\n\n\n\n// WEBPACK FOOTER //\n// ./client/src/site__fus078/components/careers/component.js"],"sourceRoot":""}