{"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///formly.min.js","webpack:///webpack/bootstrap 937ccb0de78b055bdddc","webpack:///./index.js","webpack:///./angular-fix/index.js","webpack:///./other/utils.js","webpack:///./directives/formly-custom-validation.js","webpack:///./directives/formly-field.js","webpack:///./directives/formly-focus.js","webpack:///./directives/formly-form.js","webpack:///./index.common.js","webpack:///./providers/formlyApiCheck.js","webpack:///./providers/formlyConfig.js","webpack:///./providers/formlyUsability.js","webpack:///./providers/formlyValidationMessages.js","webpack:///./run/formlyCustomTags.js","webpack:///./run/formlyNgModelAttrsManipulator.js","webpack:///./services/formlyUtil.js","webpack:///./services/formlyWarn.js","webpack:///external \"angular\"","webpack:///external {\"root\":\"apiCheck\",\"amd\":\"api-check\",\"commonjs2\":\"api-check\",\"commonjs\":\"api-check\"}"],"names":["root","factory","exports","module","require","define","amd","this","__WEBPACK_EXTERNAL_MODULE_17__","__WEBPACK_EXTERNAL_MODULE_18__","modules","__webpack_require__","moduleId","installedModules","id","loaded","call","m","c","p","_interopRequire","obj","__esModule","index","angular","version","window","formlyEval","scope","expression","$modelValue","$viewValue","extraLocals","isFunction","$eval","extend","getFieldId","formId","options","type","template","templateUrl","key","join","reverseDeepMerge","dest","forEach","arguments","src","val","prop","isDefined","objAndSameType","copy","obj1","obj2","isObject","Object","getPrototypeOf","findByNodeName","el","nodeName","element","toUpperCase","children","i","length","node","arrayify","isArray","extendFunction","_len","fns","Array","_key","args","fn","apply","formlyCustomValidation","formlyUtil","$q","isPromiseLike","then","checkValidators","validators","allowedProperties","validatorsWithExtraProps","validator","name","isString","extraProps","v","indexOf","push","keys","Error","JSON","stringify","restrict","link","attrs","ctrl","opts","validation","messages","message","useNewValidatorsApi","hasOwnProperty","setupWithValidators","validatorCollection","isPossiblyAsync","modelValue","viewValue","value","when","reject","setupWithParsers","inFlightValidator","undefined","$parsers","unshift","isValid","$pending","$setValidity","$inject","formlyField","$http","$compile","$templateCache","formlyConfig","formlyValidationMessages","formlyApiCheck","formlyUsability","formlyWarn","FormlyFieldController","$scope","$timeout","$parse","$controller","runExpressions","field","currentValue","valueGetterSetter","expressionProperties","setter","assign","promise","newVal","model","simplifyLife","data","templateOptions","to","setDefaultValue","defaultValue","setInitialValue","initialValue","mergeFieldOptionsWithTypeDefaults","mergeOptions","defaultOptions","properOrder","optionsTypes","reverse","typeName","getType","extraOptions","extendOptionsWithDefaults","resetModel","updateInitialValue","addModelWatcher","$watch","formControl","$setViewValue","$render","$setUntouched","$setPristine","addValidationMessages","invokeControllers","controller","setupFieldGroup","formState","fieldGroup","fieldType","getFieldType","checkApi","fieldLink","setFieldGroupTemplate","checkFieldGroupApi","addClass","extraAttributes","elementAttributes","map","setElementTemplate","className","addAttributes","attr","addClasses","templateString","html","asHtml","contents","watchFormControl","watchFieldNameOrExistence","nameExpressionRegex","nameExpression","exec","watchFieldName","watchFieldExistence","stopWatchingField","fc","stopWatchingShowError","addShowMessagesWatcher","customExpression","extras","errorExistsAndShouldBeVisibleExpression","$invalid","show","noTouchedButDirty","isUndefined","$touched","$dirty","errorExistsAndShouldBeVisible","showError","noop","noFormControl","templateEl","ngModelNode","querySelector","getAttribute","callLinkFunctions","thusly","runManipulators","manipulators","chain","manipulator","newTemplate","getFieldTemplate","templateManipulators","preWrapper","transcludeInWrappers","postWrapper","error","wrapper","append","fromOptionsOrType","getFieldError","getTemplate","isUrl","templatePromise","_ret","httpOptions","cache","url","get","response","getWrapperOption","checkWrapper","validateOptions","runApiCheck","promises","w","all","wrappersTemplates","wrapperTemplate","checkWrapperTemplate","totalWrapper","shift","doTransclusion","superWrapper","transcludeEl","find","replaceWith","getWrapper","getWrapperByType","typeWrappers","concat","defaultWrapper","formlyFieldOptions","prefix","_ref","apiCheck","apiCheckInstance","apiCheckFunction","apiCheckOptions","instance","shape","config","output","docsBaseUrl","transclude","fields","form","formlyFocus","$document","previousEl","doc","$observe","activeElement","focus","focusWait","blur","formlyForm","currentFormId","getRootEl","rootEl","getFieldRootEl","fieldRootEl","getHideDirective","hideDirective","defaultHideDirective","getTrackBy","trackBy","getFormName","formName","bindName","minor","getFormlyError","copyAttributes","attributes","excluded","arrayAttrs","nodeValue","toKebabCase","string","replace","$1","toLowerCase","parentFormAttributes","parent","hasClass","onModelOrFormStateChange","hideExpression","hide","setupOptions","formOptionsApi","optional","isFieldGroup","attachKey","setupWatchers","watcher","watchers","listener","watchExpression","getWatchExpression","watchListener","getWatchListener","stopWatching","watchDeep","originalExpression","modifyArgs","_slice","_toConsumableArray","displayName","originalListener","originalArgs","$parent","global","removeChromeAutoComplete","offInstance","onInstance","input","document","createElement","setAttribute","appendChild","arr","arr2","from","prototype","slice","formlyErrorAndWarningsUrlPrefix","formlyNgModelAttrsManipulator","formlyCustomTags","ngModuleName","ngModule","constant","provider","directive","run","shapeRequiredIfNot","otherProps","propChecker","shapeRequiredIfNotDefinition","propName","location","propExists","otherPropsExist","some","otherProp","utils","getError","checkerHelpers","setupChecker","apiCheckFactory","formlyExpression","oneOfType","func","specifyWrapperType","oneOf","typeOrArrayOf","apiCheckProperty","objectOf","apiCheckInstanceProperty","onlyIf","withProperties","warn","throw","apiCheckFunctionProperty","formlyWrapperType","ifNot","types","overwriteOk","bool","object","strict","fieldOptionsApiShape","$$hashKey","any","number","modelOptions","updateOn","debounce","allowInvalid","getterSetter","timezone","ngModelAttrs","attribute","bound","array","arrayOf","typeOptionsDefaultOptions","formlyTypeOptions","extends","formlyUsabilityProvider","setType","checkType","extendTypeOptions","typeMap","checkOverwrite","extendsType","extendTypeControllerFunction","extendTypeLinkFunction","extendTypeValidateOptionsFunction","extendTypeDefaultOptions","extendTemplate","extendsCtrl","optionsCtrl","extendsFn","optionsFn","originalDefaultOptions","mergedOptions","extendsDO","optionsDO","optionsDOIsFn","extendsDOIsFn","extendsDefaultOptions","mergedDefaultOptions","extenderOptionsDefaultOptions","newDefaultOptions","throwError","errorContext","setWrapper","_x","_x2","_again","wrapperOptions","getOptionsTypes","getOptionsName","checkWrapperAPI","templateWrappersMap","defaultWrapperName","checkWrapperTypes","shouldThrow","every","property","newValue","objectName","wrappers","removeWrapperByName","removeWrappersForType","_this","disableWarnings","console","_this2","disableNgModelAttrsManipulator","ngModelAttrsManipulatorPreferUnbound","$get","errorInfoSlug","getErrorMessage","toJson","urlSuffix","additionalInfo","formlyTransclude","addTemplateOptionValueMessage","suffix","alternate","validationMessages","templateOptionValue","addStringMessage","addCustomTags","div","innerHTML","isIeLessThan9","getElementsByTagName","customElements","addFormlyNgModelAttrsManipulator","ngModelAttrsManipulator","addValidation","addIfNotPresent","modelNodes","addModelOptions","addTemplateOptionsAttrs","ep","ngModelAttributes","getBuiltInAttributes","attrVal","attrName","ref","toVal","epVal","getEpValue","inTo","inEp","skipNgModelAttrsManipulator","querySelectorAll","boundOnly","bothBooleanAndBound","bothAttributeAndBound","expressionOnly","attributeOnly","item","boolean","substr","nodes","$log","warnInfoSlug"],"mappings":"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","file":"formly.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"angular\"), require(\"api-check\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"angular\", \"api-check\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"ngFormly\"] = factory(require(\"angular\"), require(\"api-check\"));\n\telse\n\t\troot[\"ngFormly\"] = factory(root[\"angular\"], root[\"apiCheck\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_17__, __WEBPACK_EXTERNAL_MODULE_18__) {\nreturn \n\n\n/** WEBPACK FOOTER **\n ** webpack/universalModuleDefinition\n **/","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"angular\"), require(\"api-check\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"angular\", \"api-check\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"ngFormly\"] = factory(require(\"angular\"), require(\"api-check\"));\n\telse\n\t\troot[\"ngFormly\"] = factory(root[\"angular\"], root[\"apiCheck\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_17__, __WEBPACK_EXTERNAL_MODULE_18__) {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \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/******/\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\texports: {},\n/******/ \t\t\tid: moduleId,\n/******/ \t\t\tloaded: false\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.loaded = 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// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(0);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t\"use strict\";\n\t\n\tvar _interopRequire = function (obj) { return obj && obj.__esModule ? obj[\"default\"] : obj; };\n\t\n\tvar index = _interopRequire(__webpack_require__(8));\n\t\n\tmodule.exports = index;\n\n/***/ },\n/* 1 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t\"use strict\";\n\t\n\tvar _interopRequire = function (obj) { return obj && obj.__esModule ? obj[\"default\"] : obj; };\n\t\n\t// some versions of angular don't export the angular module properly,\n\t// so we get it from window in this case.\n\t\n\tvar angular = _interopRequire(__webpack_require__(17));\n\t\n\tif (!angular.version) {\n\t angular = window.angular;\n\t}\n\tmodule.exports = angular;\n\n/***/ },\n/* 2 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t\"use strict\";\n\t\n\tmodule.exports = \"https://github.com/formly-js/angular-formly/blob/\" + (\"6.5.0\") + \"/other/ERRORS_AND_WARNINGS.md#\";\n\n/***/ },\n/* 3 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t\"use strict\";\n\t\n\tvar _interopRequire = function (obj) { return obj && obj.__esModule ? obj[\"default\"] : obj; };\n\t\n\tvar angular = _interopRequire(__webpack_require__(1));\n\t\n\tmodule.exports = { formlyEval: formlyEval, getFieldId: getFieldId, reverseDeepMerge: reverseDeepMerge, findByNodeName: findByNodeName, arrayify: arrayify, extendFunction: extendFunction };\n\t\n\tfunction formlyEval(scope, expression, $modelValue, $viewValue, extraLocals) {\n\t if (angular.isFunction(expression)) {\n\t return expression($viewValue, $modelValue, scope, extraLocals);\n\t } else {\n\t return scope.$eval(expression, angular.extend({ $viewValue: $viewValue, $modelValue: $modelValue }, extraLocals));\n\t }\n\t}\n\t\n\tfunction getFieldId(formId, options, index) {\n\t var type = options.type;\n\t if (!type && options.template) {\n\t type = \"template\";\n\t } else if (!type && options.templateUrl) {\n\t type = \"templateUrl\";\n\t }\n\t\n\t return [formId, type, options.key, index].join(\"_\");\n\t}\n\t\n\tfunction reverseDeepMerge(dest) {\n\t angular.forEach(arguments, function (src, index) {\n\t if (!index) {\n\t return;\n\t }\n\t angular.forEach(src, function (val, prop) {\n\t if (!angular.isDefined(dest[prop])) {\n\t dest[prop] = angular.copy(val);\n\t } else if (objAndSameType(dest[prop], val)) {\n\t reverseDeepMerge(dest[prop], val);\n\t }\n\t });\n\t });\n\t}\n\t\n\tfunction objAndSameType(obj1, obj2) {\n\t return angular.isObject(obj1) && angular.isObject(obj2) && Object.getPrototypeOf(obj1) === Object.getPrototypeOf(obj2);\n\t}\n\t\n\t//recurse down a node tree to find a node with matching nodeName, for custom tags jQuery.find doesn't work in IE8\n\tfunction findByNodeName(el, nodeName) {\n\t if (!el.prop) {\n\t // not a jQuery or jqLite object -> wrap it\n\t el = angular.element(el);\n\t }\n\t\n\t if (el.prop(\"nodeName\") === nodeName.toUpperCase()) {\n\t return el;\n\t }\n\t\n\t var c = el.children();\n\t for (var i = 0; c && i < c.length; i++) {\n\t var node = findByNodeName(c[i], nodeName);\n\t if (node) {\n\t return node;\n\t }\n\t }\n\t}\n\t\n\tfunction arrayify(obj) {\n\t if (obj && !angular.isArray(obj)) {\n\t obj = [obj];\n\t } else if (!obj) {\n\t obj = [];\n\t }\n\t return obj;\n\t}\n\t\n\tfunction extendFunction() {\n\t for (var _len = arguments.length, fns = Array(_len), _key = 0; _key < _len; _key++) {\n\t fns[_key] = arguments[_key];\n\t }\n\t\n\t return function extendedFunction() {\n\t var args = arguments;\n\t fns.forEach(function (fn) {\n\t return fn.apply(null, args);\n\t });\n\t };\n\t}\n\n/***/ },\n/* 4 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t\"use strict\";\n\t\n\tmodule.exports = formlyCustomValidation;\n\t\n\t// @ngInject\n\tfunction formlyCustomValidation(formlyUtil, $q) {\n\t return {\n\t restrict: \"A\",\n\t require: \"ngModel\",\n\t link: function formlyCustomValidationLink(scope, el, attrs, ctrl) {\n\t var opts = scope.options;\n\t if (opts.validators) {\n\t checkValidators(opts.validators);\n\t }\n\t opts.validation.messages = opts.validation.messages || {};\n\t angular.forEach(opts.validation.messages, function (message, key) {\n\t opts.validation.messages[key] = function () {\n\t return formlyUtil.formlyEval(scope, message, ctrl.$modelValue, ctrl.$viewValue);\n\t };\n\t });\n\t\n\t var useNewValidatorsApi = ctrl.hasOwnProperty(\"$validators\") && !attrs.hasOwnProperty(\"useParsers\");\n\t angular.forEach(opts.validators, function addValidatorToPipeline(validator, name) {\n\t var message = validator.message;\n\t if (message) {\n\t opts.validation.messages[name] = function () {\n\t return formlyUtil.formlyEval(scope, message, ctrl.$modelValue, ctrl.$viewValue);\n\t };\n\t }\n\t validator = angular.isObject(validator) ? validator.expression : validator;\n\t var isPossiblyAsync = !angular.isString(validator);\n\t if (useNewValidatorsApi) {\n\t setupWithValidators();\n\t } else {\n\t setupWithParsers();\n\t }\n\t\n\t function setupWithValidators() {\n\t var validatorCollection = isPossiblyAsync ? \"$asyncValidators\" : \"$validators\";\n\t ctrl[validatorCollection][name] = function evalValidity(modelValue, viewValue) {\n\t var value = formlyUtil.formlyEval(scope, validator, modelValue, viewValue);\n\t if (isPossiblyAsync) {\n\t return isPromiseLike(value) ? value : value ? $q.when(value) : $q.reject(value);\n\t } else {\n\t return value;\n\t }\n\t };\n\t }\n\t\n\t function setupWithParsers() {\n\t var inFlightValidator = undefined;\n\t ctrl.$parsers.unshift(function evalValidityOfParser(viewValue) {\n\t var isValid = formlyUtil.formlyEval(scope, validator, ctrl.$modelValue, viewValue);\n\t if (isPromiseLike(isValid)) {\n\t ctrl.$pending = ctrl.$pending || {};\n\t ctrl.$pending[name] = true;\n\t inFlightValidator = isValid;\n\t isValid.then(function () {\n\t if (inFlightValidator === isValid) {\n\t ctrl.$setValidity(name, true);\n\t }\n\t })[\"catch\"](function () {\n\t if (inFlightValidator === isValid) {\n\t ctrl.$setValidity(name, false);\n\t }\n\t })[\"finally\"](function () {\n\t if (Object.keys(ctrl.$pending).length === 1) {\n\t delete ctrl.$pending;\n\t } else {\n\t delete ctrl.$pending[name];\n\t }\n\t });\n\t } else {\n\t ctrl.$setValidity(name, isValid);\n\t }\n\t return viewValue;\n\t });\n\t }\n\t });\n\t }\n\t };\n\t\n\t function isPromiseLike(obj) {\n\t return obj && angular.isFunction(obj.then);\n\t }\n\t\n\t function checkValidators(validators) {\n\t var allowedProperties = [\"expression\", \"message\"];\n\t var validatorsWithExtraProps = {};\n\t angular.forEach(validators, function (validator, name) {\n\t if (angular.isString(validator)) {\n\t return;\n\t }\n\t var extraProps = [];\n\t angular.forEach(validator, function (v, key) {\n\t if (allowedProperties.indexOf(key) === -1) {\n\t extraProps.push(key);\n\t }\n\t });\n\t if (extraProps.length) {\n\t validatorsWithExtraProps[name] = extraProps;\n\t }\n\t });\n\t if (Object.keys(validatorsWithExtraProps).length) {\n\t throw new Error([\"Validators are only allowed to be functions or objects that have \" + allowedProperties.join(\", \") + \".\", \"You provided some extra properties: \" + JSON.stringify(validatorsWithExtraProps)].join(\" \"));\n\t }\n\t }\n\t}\n\tformlyCustomValidation.$inject = [\"formlyUtil\", \"$q\"];\n\n/***/ },\n/* 5 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t\"use strict\";\n\t\n\tvar _interopRequire = function (obj) { return obj && obj.__esModule ? obj[\"default\"] : obj; };\n\t\n\tvar angular = _interopRequire(__webpack_require__(1));\n\t\n\tmodule.exports = formlyField;\n\t\n\t/**\n\t * @ngdoc directive\n\t * @name formlyField\n\t * @restrict AE\n\t */\n\t// @ngInject\n\tfunction formlyField($http, $q, $compile, $templateCache, formlyConfig, formlyValidationMessages, formlyApiCheck, formlyUtil, formlyUsability, formlyWarn) {\n\t var arrayify = formlyUtil.arrayify;\n\t\n\t FormlyFieldController.$inject = [\"$scope\", \"$timeout\", \"$parse\", \"$controller\"];\n\t return {\n\t restrict: \"AE\",\n\t transclude: true,\n\t scope: {\n\t options: \"=\",\n\t model: \"=\",\n\t formId: \"@\",\n\t index: \"=?\",\n\t fields: \"=?\",\n\t formState: \"=?\",\n\t form: \"=?\"\n\t },\n\t controller: FormlyFieldController,\n\t link: fieldLink\n\t };\n\t\n\t // @ngInject\n\t function FormlyFieldController($scope, $timeout, $parse, $controller) {\n\t /* jshint maxstatements:31 */\n\t if ($scope.options.fieldGroup) {\n\t setupFieldGroup();\n\t return;\n\t }\n\t\n\t var fieldType = getFieldType($scope.options);\n\t simplifyLife($scope.options);\n\t mergeFieldOptionsWithTypeDefaults($scope.options, fieldType);\n\t extendOptionsWithDefaults($scope.options, $scope.index);\n\t checkApi($scope.options);\n\t // set field id to link labels and fields\n\t $scope.id = formlyUtil.getFieldId($scope.formId, $scope.options, $scope.index);\n\t\n\t // initalization\n\t setDefaultValue();\n\t setInitialValue();\n\t runExpressions();\n\t addModelWatcher($scope, $scope.options);\n\t addValidationMessages($scope.options);\n\t invokeControllers($scope, $scope.options, fieldType);\n\t\n\t // function definitions\n\t function runExpressions() {\n\t // must run on next tick to make sure that the current value is correct.\n\t $timeout(function runExpressionsOnNextTick() {\n\t var field = $scope.options;\n\t var currentValue = valueGetterSetter();\n\t angular.forEach(field.expressionProperties, function runExpression(expression, prop) {\n\t var setter = $parse(prop).assign;\n\t var promise = $q.when(formlyUtil.formlyEval($scope, expression, currentValue));\n\t promise.then(function setFieldValue(value) {\n\t setter(field, value);\n\t });\n\t });\n\t });\n\t }\n\t\n\t function valueGetterSetter(newVal) {\n\t if (!$scope.model || !$scope.options.key) {\n\t return;\n\t }\n\t if (angular.isDefined(newVal)) {\n\t $scope.model[$scope.options.key] = newVal;\n\t }\n\t return $scope.model[$scope.options.key];\n\t }\n\t\n\t function simplifyLife(options) {\n\t // add a few empty objects (if they don't already exist) so you don't have to undefined check everywhere\n\t formlyUtil.reverseDeepMerge(options, {\n\t data: {},\n\t templateOptions: {},\n\t validation: {}\n\t });\n\t // create $scope.to so template authors can reference to instead of $scope.options.templateOptions\n\t $scope.to = $scope.options.templateOptions;\n\t }\n\t\n\t function setDefaultValue() {\n\t if (angular.isDefined($scope.options.defaultValue) && !angular.isDefined($scope.model[$scope.options.key])) {\n\t $scope.model[$scope.options.key] = $scope.options.defaultValue;\n\t }\n\t }\n\t\n\t function setInitialValue() {\n\t $scope.options.initialValue = $scope.model && $scope.model[$scope.options.key];\n\t }\n\t\n\t function mergeFieldOptionsWithTypeDefaults(options, type) {\n\t if (type) {\n\t mergeOptions(options, type.defaultOptions);\n\t }\n\t var properOrder = arrayify(options.optionsTypes).reverse(); // so the right things are overridden\n\t angular.forEach(properOrder, function (typeName) {\n\t mergeOptions(options, formlyConfig.getType(typeName, true, options).defaultOptions);\n\t });\n\t }\n\t\n\t function mergeOptions(options, extraOptions) {\n\t if (extraOptions) {\n\t if (angular.isFunction(extraOptions)) {\n\t extraOptions = extraOptions(options);\n\t }\n\t formlyUtil.reverseDeepMerge(options, extraOptions);\n\t }\n\t }\n\t\n\t function extendOptionsWithDefaults(options, index) {\n\t var key = options.key || index || 0;\n\t angular.extend(options, {\n\t // attach the key in case the formly-field directive is used directly\n\t key: key,\n\t value: valueGetterSetter,\n\t runExpressions: runExpressions,\n\t resetModel: resetModel,\n\t updateInitialValue: updateInitialValue\n\t });\n\t }\n\t\n\t // initialization functions\n\t function addModelWatcher(scope, options) {\n\t if (options.model) {\n\t scope.$watch(\"options.model\", runExpressions, true);\n\t }\n\t }\n\t\n\t function resetModel() {\n\t $scope.model[$scope.options.key] = $scope.options.initialValue;\n\t if ($scope.options.formControl) {\n\t $scope.options.formControl.$setViewValue($scope.model[$scope.options.key]);\n\t $scope.options.formControl.$render();\n\t $scope.options.formControl.$setUntouched();\n\t $scope.options.formControl.$setPristine();\n\t }\n\t }\n\t\n\t function updateInitialValue() {\n\t $scope.options.initialValue = $scope.model[$scope.options.key];\n\t }\n\t\n\t function addValidationMessages(options) {\n\t options.validation.messages = options.validation.messages || {};\n\t angular.forEach(formlyValidationMessages.messages, function createFunctionForMessage(expression, name) {\n\t if (!options.validation.messages[name]) {\n\t options.validation.messages[name] = function evaluateMessage(viewValue, modelValue, scope) {\n\t return formlyUtil.formlyEval(scope, expression, modelValue, viewValue);\n\t };\n\t }\n\t });\n\t }\n\t\n\t function invokeControllers(scope) {\n\t var options = arguments[1] === undefined ? {} : arguments[1];\n\t var type = arguments[2] === undefined ? {} : arguments[2];\n\t\n\t angular.forEach([type.controller, options.controller], function (controller) {\n\t if (controller) {\n\t $controller(controller, { $scope: scope });\n\t }\n\t });\n\t }\n\t\n\t function setupFieldGroup() {\n\t $scope.options.options = $scope.options.options || {};\n\t $scope.options.options.formState = $scope.formState;\n\t }\n\t }\n\t\n\t // link function\n\t function fieldLink(scope, el) {\n\t if (scope.options.fieldGroup) {\n\t setFieldGroupTemplate();\n\t return;\n\t }\n\t\n\t addAttributes();\n\t addClasses();\n\t\n\t var type = getFieldType(scope.options);\n\t var args = arguments;\n\t var thusly = this;\n\t getFieldTemplate(scope.options).then(runManipulators(formlyConfig.templateManipulators.preWrapper)).then(transcludeInWrappers(scope.options)).then(runManipulators(formlyConfig.templateManipulators.postWrapper)).then(setElementTemplate).then(watchFormControl).then(callLinkFunctions)[\"catch\"](function (error) {\n\t formlyWarn(\"there-was-a-problem-setting-the-template-for-this-field\", \"There was a problem setting the template for this field \", scope.options, error);\n\t });\n\t\n\t function setFieldGroupTemplate() {\n\t checkFieldGroupApi(scope.options);\n\t el.addClass(\"formly-field-group\");\n\t var extraAttributes = \"\";\n\t if (scope.options.elementAttributes) {\n\t extraAttributes = Object.keys(scope.options.elementAttributes).map(function (key) {\n\t return \"\" + key + \"=\\\"\" + scope.options.elementAttributes[key] + \"\\\"\";\n\t }).join(\" \");\n\t }\n\t setElementTemplate(\"\\n