{"version":3,"file":"app/form.elements.input-date.js","sources":["form.elements.input-date.js"],"sourcesContent":["/*----------------------------------------------------------------------------*\\\r\n FORM.ELEMENTS.input-date\r\n Date input enhancement, datepicker for browsers who dont support\r\n it natively\r\n\\*----------------------------------------------------------------------------*/\r\n\r\n/**\r\n * Use strict as per:\r\n * http://ejohn.org/blog/ecmascript-5-strict-mode-json-and-more/\r\n */\r\n'use strict';\r\n\r\n\r\n/**\r\n * Check if oy object exists, otherwise create it\r\n */\r\nvar oy = oy || {};\r\n\r\n\r\n/**\r\n * Jshint global references\r\n * Please define all third party plugins that you use to not break jshinting\r\n */\r\n/*global Pikaday */\r\n/*global moment */\r\n\r\n\r\n/* Component\r\n\\*----------------------------------------------------------------------------*/\r\n\r\noy.form.elements.inputDate = {\r\n init: function(){\r\n if (oy.cutsMustard) {\r\n this.initElement(document);\r\n }\r\n },\r\n\r\n initElement: function($context, selectCallBack){\r\n var self = this;\r\n var $elements = $context.querySelectorAll('.js--input-date');\r\n\r\n for (var i = 0; i < $elements.length; ++i) {\r\n var $element = $elements[i];\r\n self.setupElement($element, selectCallBack);\r\n }\r\n },\r\n\r\n setupElement: function ($element, selectCallBack) {\r\n var $input = $element.querySelector('.js--input-date__input');\r\n var $toggle = $element.querySelector('.js--input-date__toggle');\r\n $input.classList.add('is-initiated');\r\n var options = {\r\n field: $input,\r\n format: oy.translations.dateFormat,\r\n i18n: oy.translations.i18n,\r\n yearRange: 20\r\n };\r\n\r\n if ($input.getAttribute('data-date-min')) {\r\n options['minDate'] = moment($input.getAttribute('data-date-min')).toDate();\r\n }\r\n\r\n if ($input.getAttribute('data-date-max')) {\r\n options['maxDate'] = moment($input.getAttribute('data-date-max')).toDate();\r\n }\r\n\r\n if($input.getAttribute('data-date-default')) {\r\n if($input.getAttribute('data-date-default')!=='') {\r\n options['defaultDate'] = moment($input.getAttribute('data-date-default')).toDate();\r\n options['setDefaultDate'] = true;\r\n }\r\n }\r\n\r\n if(selectCallBack) {\r\n options.onSelect = selectCallBack;\r\n }\r\n\r\n var picker = new Pikaday(options);\r\n\r\n $toggle.addEventListener('click', function () {\r\n picker.show();\r\n });\r\n }\r\n};\r\n\r\n\r\n/**\r\n * Fire ALL the things\r\n */\r\nwindow.addEventListener('load', function () {\r\n oy.form.elements.inputDate.init();\r\n}, false);\r\n"],"names":[],"mappings":"AAAA;;;;;;;;;;AAUA,YAAY,CAAC;;;;;;AAMb,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;;;;;;;;;;;;;;AAclB,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAG;IACzB,IAAI,EAAE,UAAU;QACZ,IAAI,EAAE,CAAC,WAAW,EAAE;YAChB,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;SAC9B;KACJ;;IAED,WAAW,EAAE,SAAS,QAAQ,EAAE,cAAc,CAAC;QAC3C,IAAI,IAAI,GAAG,IAAI,CAAC;QAChB,IAAI,SAAS,GAAG,QAAQ,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;;QAE7D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE;YACvC,IAAI,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;SAC/C;KACJ;;IAED,YAAY,EAAE,UAAU,QAAQ,EAAE,cAAc,EAAE;QAC9C,IAAI,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,wBAAwB,CAAC,CAAC;QAC9D,IAAI,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,yBAAyB,CAAC,CAAC;QAChE,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACrC,IAAI,OAAO,GAAG;YACV,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,UAAU;YAClC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI;YAC1B,SAAS,EAAE,EAAE;SAChB,CAAC;;QAEF,IAAI,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,EAAE;YACtC,OAAO,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SAC9E;;QAED,IAAI,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,EAAE;YACtC,OAAO,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SAC9E;;QAED,GAAG,MAAM,CAAC,YAAY,CAAC,mBAAmB,CAAC,EAAE;YACzC,GAAG,MAAM,CAAC,YAAY,CAAC,mBAAmB,CAAC,GAAG,EAAE,EAAE;gBAC9C,OAAO,CAAC,aAAa,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;gBACnF,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC;aACpC;SACJ;;QAED,GAAG,cAAc,EAAE;YACf,OAAO,CAAC,QAAQ,IAAI,cAAc,CAAC;SACtC;;QAED,IAAI,MAAM,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;;QAElC,OAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,YAAY;YAC1C,MAAM,CAAC,IAAI,EAAE,CAAC;SACjB,CAAC,CAAC;KACN;CACJ,CAAC;;;;;;AAMF,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,YAAY;IACxC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;CACrC,EAAE,KAAK,CAAC,CAAC;","sourceRoot":"/source/"}