/
angular-schema-form.min.js
18 lines (18 loc) · 36.7 KB
/
angular-schema-form.min.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/*!
* angular-schema-form
* @version 1.0.0-alpha.6
* @date Sat, 14 Jan 2017 15:37:36 GMT
* @link https://github.com/json-schema-form/angular-schema-form
* @license MIT
* Copyright (c) 2014-2017 JSON Schema Form
*/
!function(e){function t(n){if(r[n])return r[n].exports;var i=r[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,t),i.l=!0,i.exports}var r={};return t.m=e,t.c=r,t.i=function(e){return e},t.d=function(e,t,r){Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(r,"a",r),r},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=19)}([function(e,t){e.exports=angular},function(e,t){/*!
* json-schema-form-core
* @version 1.0.0-alpha.6
* @date Sat, 14 Jan 2017 14:01:12 GMT
* @link https://github.com/json-schema-form/json-schema-form-core
* @license MIT
* Copyright (c) 2014-2017 JSON Schema Form
*/
e.exports=function(e){function t(n){if(r[n])return r[n].exports;var i=r[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,t),i.l=!0,i.exports}var r={};return t.m=e,t.c=r,t.i=function(e){return e},t.d=function(e,t,r){Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(r,"a",r),r},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=11)}([function(e,t,r){"use strict";function n(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",n=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(e){var i=e.slice(),o=t||"-";return n&&(i=i.filter(function(e){return"number"!=typeof e})),(0!==r.length?r+o:"")+i.join(o)}return""}var i=r(2);r.n(i);t.name=n,r.o(i,"parse")&&r.d(t,"parse",function(){return i.parse}),r.o(i,"stringify")&&r.d(t,"stringify",function(){return i.stringify}),r.o(i,"normalize")&&r.d(t,"normalize",function(){return i.normalize})},function(e,t,r){"use strict";var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};t.a=function(e,t){if(!Array.isArray(e)){var r=function(){var r=[];return t?t.forEach(function(t){r.push({name:e[t],value:t})}):Object.keys(e).forEach(function(t){r.push({name:e[t],value:t})}),{v:r}}();if("object"===("undefined"==typeof r?"undefined":n(r)))return r.v}return e}},function(e,t,r){e.exports=r(9).ObjectPath},function(e,t,r){"use strict";function n(e,t,r,i){var o=e[g(r.type)];if(o)for(var a=void 0,s=function(t,r,i){return n(e,t,r,i)},l=0;l<o.length;l++)if(a=o[l](t,r,i,s))return a.schema["x-schema-form"]&&Object.assign(a,a.schema["x-schema-form"]),a}function i(e,t,n){n=n||{};var i=n.global&&n.global.formDefaults?Object.assign({},n.global.formDefaults):{};return n.global&&n.global.supressPropertyTitles===!0?i.title=t.title:i.title=t.title||e,t.description&&(i.description=t.description),n.required!==!0&&t.required!==!0||(i.required=!0),t.maxLength&&(i.maxlength=t.maxLength),t.minLength&&(i.minlength=t.minLength),(t.readOnly||t.readonly)&&(i.readonly=!0),t.minimum&&(i.minimum=t.minimum+(t.exclusiveMinimum?1:0)),t.maximum&&(i.maximum=t.maximum-(t.exclusiveMaximum?1:0)),t.validationMessage&&(i.validationMessage=t.validationMessage),t.enumNames&&(i.titleMap=r.i(y.a)(t.enumNames,t.enum)),i.schema=t,i.ngModelOptions=i.ngModelOptions||{},i}function o(e,t,n){if("string"===g(t.type)&&!t.enum){var o=i(e,t,n);return o.key=n.path,o.type="text",n.lookup[r.i(h.stringify)(n.path)]=o,o}}function a(e,t,n){if("number"===g(t.type)){var o=i(e,t,n);return o.key=n.path,o.type="number",n.lookup[r.i(h.stringify)(n.path)]=o,o}}function s(e,t,n){if("integer"===g(t.type)){var o=i(e,t,n);return o.key=n.path,o.type="number",n.lookup[r.i(h.stringify)(n.path)]=o,o}}function l(e,t,n){if("boolean"===g(t.type)){var o=i(e,t,n);return o.key=n.path,o.type="checkbox",n.lookup[r.i(h.stringify)(n.path)]=o,o}}function u(e,t,n){if("string"===g(t.type)&&t.enum){var o=i(e,t,n);return o.key=n.path,o.type="select",o.titleMap||(o.titleMap=$(t.enum)),n.lookup[r.i(h.stringify)(n.path)]=o,o}}function f(e,t,n){if("array"===g(t.type)&&t.items&&t.items.enum){var o=i(e,t,n);return o.key=n.path,o.type="checkboxes",o.titleMap||(o.titleMap=$(t.items.enum)),n.lookup[r.i(h.stringify)(n.path)]=o,o}}function c(e,t,n,o){if("object"===g(t.type)){var a=function(){var a=i(e,t,n);return a.type="fieldset",a.key=n.path,a.items=[],n.lookup[r.i(h.stringify)(n.path)]=a,t.properties&&Object.keys(t.properties).forEach(function(e){var i=t.properties[e],s=n.path.slice();if(s.push(e),n.ignore[r.i(h.stringify)(s)]!==!0){var l=t.required&&t.required.indexOf(e)!==-1,u=o(e,i,{path:s,required:l||!1,lookup:n.lookup,ignore:n.ignore,global:n.global});u&&a.items.push(u)}}),{v:a}}();if("object"===("undefined"==typeof a?"undefined":v(a)))return a.v}}function m(e,t,n,o){if("array"===g(t.type)){var a=i(e,t,n);a.type="array",a.key=n.path,n.lookup[r.i(h.stringify)(n.path)]=a;var s=t.required&&t.required.indexOf(n.path[n.path.length-1])!==-1,l=n.path.slice();return l.push(""),a.items=[o(e,t.items,{path:l,required:s||!1,lookup:n.lookup,ignore:n.ignore,global:n.global})],a}}function d(){return{string:[u,o],object:[c],number:[a],integer:[s],boolean:[l],array:[f,m]}}function p(e,t,r,i){var o=[],a={};if(r=r||{},i=i||{},t=t||d(),!e.properties)throw new Error('Not implemented. Only type "object" allowed at root level of schema.');return Object.keys(e.properties).forEach(function(s){if(r[s]!==!0){var l=e.required&&e.required.indexOf(s)!==-1,u=n(t,s,e.properties[s],{path:[s],lookup:a,ignore:r,required:l,global:i});u&&o.push(u)}}),{form:o,lookup:a}}var h=r(0),y=r(1);t.defaultFormDefinition=n,t.stdFormObj=i,t.text=o,t.number=a,t.integer=s,t.checkbox=l,t.select=u,t.checkboxes=f,t.fieldset=c,t.array=m,t.createDefaults=d,t.defaultForm=p;var v="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},g=function(e){if(Array.isArray(e)&&2===e.length){if("null"===e[0])return e[1];if("null"===e[1])return e[0]}return e},$=function(e){var t=[];return e.forEach(function(e){t.push({name:e,value:e})}),t}},function(e,t,r){"use strict";var n=r(3),i=r(0),o=r(1),a=r(5),s=r(6),l=r(7),u=r(8);r.d(t,"sfPath",function(){return f}),r.d(t,"schemaDefaults",function(){return c}),r.d(t,"canonicalTitleMap",function(){return m}),r.d(t,"merge",function(){return a.a}),r.d(t,"select",function(){return s.a}),r.d(t,"traverseSchema",function(){return l.a}),r.d(t,"traverseForm",function(){return l.b}),r.d(t,"validate",function(){return u.a});var f=i,c=n,m=o.a},function(e,t,r){"use strict";function n(e,t,l,u,f,c){var m=[];t=t||[];var d=t.indexOf("*");if(u=u||{},"object"===("undefined"==typeof e?"undefined":s(e))&&e.hasOwnProperty("properties")){f=f||e.readonly||e.readOnly;var p=r.i(o.defaultForm)(e,r.i(o.createDefaults)(),l,u),h=p.lookup;e=h||e,m=m.concat(p.form)}return d!==-1&&(t=t.slice(0,d).concat(m).concat(t.slice(d+1))),t.map(function(t){if("string"==typeof t&&(t={key:t}),t.key&&"string"==typeof t.key&&(t.key=r.i(i.parse)(t.key)),t.titleMap&&(t.titleMap=r.i(a.a)(t.titleMap)),t.key){var o=r.i(i.stringify)(t.key);e[o]&&!function(){var r=e[o];r&&Object.keys(r).forEach(function(e){void 0===t[e]&&(t[e]=r[e])})}()}return f===!0&&(t.readonly=!0),t.items&&(t.items=n(e,t.items,l,u,t.readonly,c)),t.tabs&&t.tabs.forEach(function(r){r.items&&(r.items=n(e,r.items,l,u,t.readonly,c))}),"checkbox"===t.type&&void 0===t.schema.default&&(t.schema.default=!1),c&&"template"===t.type&&!t.template&&t.templateUrl&&c.push(t),t})}var i=r(0),o=r(3),a=r(1);t.a=n;var s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e}},function(e,t,r){"use strict";function n(e,t,r){t||(t=this);var n="string"==typeof e?i.parse(e):e;if("undefined"!=typeof r&&1===n.length)return t[n[0]]=r,t;"undefined"!=typeof r&&"undefined"==typeof t[n[0]]&&(t[n[0]]=n.length>2&&o.test(n[1])?[]:{});for(var a=t[n[0]],s=1;s<n.length;s++){if(""===n[s])return;if("undefined"!=typeof r){if(s===n.length-1)return a[n[s]]=r,r;var l=a[n[s]];"undefined"!=typeof l&&null!==l||(l=o.test(n[s+1])?[]:{},a[n[s]]=l),a=l}else a&&(a=a[n[s]])}return a}var i=r(0);t.a=n;var o=/^\d+$/},function(e,t,r){"use strict";function n(e,t,r,n){n=void 0===n||n,r=r||[];var i=function e(t,r,i){if(r(t,i),t.properties&&Object.keys(t.properties).forEach(function(n){var o=i.slice();o.push(n),e(t.properties[n],r,o)}),!n&&t.items){var o=i.slice();o.push(""),e(t.items,r,o)}};i(e,t,r||[])}function i(e,t){t(e),e.items&&e.items.forEach(function(e){i(e,t)}),e.tabs&&e.tabs.forEach(function(e){e.items&&e.items.forEach(function(e){i(e,t)})})}t.a=n,t.b=i},function(e,t,r){"use strict";function n(e,t){if(!e)return{valid:!0};var r=e.schema;if(!r)return{valid:!0};""===t&&(t=void 0),"number"===e.type&&null===t&&(t=void 0);var n={type:"object",properties:{},required:void 0},i=e.key[e.key.length-1];n.properties[i]=r,e.required&&(n.required=[i]);var a={};return t&&(a[i]=t),o.a.validateResult(a,n)}var i=r(10),o=r.n(i);t.a=n},function(e,t,r){"use strict";var n;!function(i){var o={parse:function(e){if("string"!=typeof e)throw new TypeError("ObjectPath.parse must be passed a string");for(var t,r,n,i,o=0,a=[];o<e.length;)if(t=e.indexOf(".",o),r=e.indexOf("[",o),t===-1&&r===-1)a.push(e.slice(o,e.length)),o=e.length;else if(r===-1||t!==-1&&t<r)a.push(e.slice(o,t)),o=t+1;else if(r>o&&(a.push(e.slice(o,r)),o=r),n=e.slice(r+1,r+2),'"'!==n&&"'"!==n)i=e.indexOf("]",r),i===-1&&(i=e.length),a.push(e.slice(o+1,i)),o="."===e.slice(i+1,i+2)?i+2:i+1;else{for(i=e.indexOf(n+"]",r),i===-1&&(i=e.length);"\\"===e.slice(i-1,i)&&r<e.length;)r++,i=e.indexOf(n+"]",r);a.push(e.slice(o+2,i).replace(new RegExp("\\"+n,"g"),n)),o="."===e.slice(i+2,i+3)?i+3:i+2}return a},stringify:function(e,t){return Array.isArray(e)||(e=[e.toString()]),t='"'===t?'"':"'",e.map(function(e){return"["+t+e.toString().replace(new RegExp(t,"g"),"\\"+t)+t+"]"}).join("")},normalize:function(e,t){return o.stringify(Array.isArray(e)?e:o.parse(e),t)},registerModule:function(e){e.module("ObjectPath",[]).provider("ObjectPath",function(){this.parse=o.parse,this.stringify=o.stringify,this.normalize=o.normalize,this.$get=function(){return o}})}};n=function(){return{ObjectPath:o}}.call(t,r,t,e),!(n!==i&&(e.exports=n))}()},function(e,t){e.exports=tv4},function(e,t,r){e.exports=r(4)}])},,function(e,t,r){"use strict";var n=r(1),i=r.n(n),o=r(0),a=r.n(o),s=r(13),l=r(11),u=r(12),f=r(14),c=r(15),m=r(6),d=r(7),p=r(9),h=r(5),y=r(8),v=r(10),g=r(4),$=[];try{a.a.module("ngSanitize"),$.push("ngSanitize")}catch(e){}try{a.a.module("ui.sortable"),$.push("ui.sortable")}catch(e){}try{a.a.module("angularSpectrumColorpicker"),$.push("angularSpectrumColorpicker")}catch(e){}a.a.module("schemaForm",$).provider("sfPath",c.a).provider("sfBuilder",["sfPathProvider",s.a]).provider("schemaFormDecorators",["$compileProvider","sfPathProvider",l.a]).provider("sfErrorMessage",f.a).provider("schemaForm",["sfPathProvider",u.a]).factory("sfSelect",function(){return i.a.select}).factory("sfValidator",function(){return i.a.validate}).directive("sfChanged",m.a).directive("sfField",["$parse","$compile","$http","$templateCache","$interpolate","$q","sfErrorMessage","sfPath","sfSelect",d.a]).directive("sfMessage",["$injector","sfErrorMessage",p.a]).directive("sfNewArray",["sfSelect","sfPath","schemaForm",h.a]).directive("sfSchema",["$compile","$http","$templateCache","$q","schemaForm","schemaFormDecorators","sfSelect","sfPath","sfBuilder",v.a]).directive("schemaValidate",["sfValidator","$parse","sfSelect",g.a]).directive("sfKeyController",["schemaForm","sfPath",y.a])},function(e,t,r){"use strict";var n=r(0),i=r.n(n);t.a=function(e,t,r){return{restrict:"A",scope:!1,priority:500,require:"ngModel",link:function(t,n,o,a){t.$emit("schemaFormPropagateNgModelController",a);var s=null,l=t.$eval(o.schemaValidate);l.copyValueTo&&a.$viewChangeListeners.push(function(){var e=l.copyValueTo;i.a.forEach(e,function(e){r(e,t.model,a.$modelValue)})});var u=function(r){if(!l)return r;if(t.options&&t.options.tv4Validation===!1)return r;var n=e(l,r);Object.keys(a.$error).filter(function(e){return 0===e.indexOf("tv4-")}).forEach(function(e){a.$setValidity(e,!0)});{if(n.valid)return r;if(a.$setValidity("tv4-"+n.error.code,!1),s=n.error,a.$validators)return r}};"function"==typeof l.ngModel&&l.ngModel(a),["$parsers","$viewChangeListeners","$formatters"].forEach(function(e){l[e]&&a[e]&&l[e].forEach(function(t){a[e].push(t)})}),["$validators","$asyncValidators"].forEach(function(e){l[e]&&a[e]&&i.a.forEach(l[e],function(t,r){a[e][r]=t})}),a.$parsers.push(u),a.$validators&&(a.$validators.schemaForm=function(){return!Object.keys(a.$error).some(function(e){return"schemaForm"!==e})});var f=l.schema;t.validateField=function(e){void 0!=e&&a.$$parentForm.$name!==e||(f&&f.type.indexOf("array")!==-1&&u(a.$modelValue),a.$setDirty?(a.$setDirty(),a.$setViewValue(a.$viewValue),a.$commitViewValue(),"checkbox"===l.type?l.required&&void 0===a.$modelValue&&a.$setValidity("tv4-302",!1):l.required&&a.$isEmpty(a.$modelValue)&&a.$setValidity("tv4-302",!1)):a.$setViewValue(a.$viewValue))};var c=!0;a.$formatters.push(function(e){return!a.$pristine||!c||t.options&&t.options.validateOnRender===!0?(u(a.$modelValue),e):(c=!1,e)}),t.$on("schemaFormValidate",function(e,r){t.validateField(r)}),t.schemaError=function(){return s}}}}},function(e,t,r){"use strict";var n=r(0),i=r.n(n);t.a=function(e,t,r){return{scope:!0,controller:["$scope",function(e){this.key=e.form&&e.form.key?e.form.key.splice(0,-2):[]}],link:function(n,o,a){n.min=0,n.modelArray=n.$eval(a.sfNewArray);var s=function(){n.modelArray=n.$eval(a.sfNewArray),n.ngModel&&n.ngModel.$pristine&&n.firstDigest&&(!n.options||n.options.validateOnRender!==!0)||n.validateField&&n.validateField()},l=function(){n.form&&n.form.onChange&&(i.a.isFunction(n.form.onChange)?n.form.onChange(n.modelArray,n.form):n.evalExpr(n.form.onChange,{modelValue:n.modelArray,form:n.form}))},u=function(){var r=n.modelArray;if(!r){var i=t.parse(a.sfNewArray);r=[],e(i,n,r),n.modelArray=r}return r},f=n.$watch("form",function(e){if(e){if(e.titleMap||e.startEmpty===!0||n.modelArray&&0!==n.modelArray.length||n.appendToArray(),n.form&&n.form.schema&&n.form.schema.uniqueItems===!0?(n.$watch(a.sfNewArray,s,!0),n.$watch([a.sfNewArray,a.sfNewArray+".length"],l)):n.$watchGroup?n.$watchGroup([a.sfNewArray,a.sfNewArray+".length"],function(){s(),l()}):(n.$watch(a.sfNewArray,function(){s(),l()}),n.$watch(a.sfNewArray+".length",function(){s(),l()})),e.titleMap&&e.titleMap.length>0){n.titleMapValues=[];var t=function(t){n.titleMapValues=[],t=t||[],e.titleMap.forEach(function(e){n.titleMapValues.push(t.indexOf(e.value)!==-1)})};t(n.modelArray),n.$watchCollection("modelArray",t),n.$watchCollection("titleMapValues",function(t,r){if(t&&t!==r){var i=u();e.titleMap.forEach(function(e,r){var n=i.indexOf(e.value);n===-1&&t[r]&&i.push(e.value),n===-1||t[r]||i.splice(n,1)}),n.validateField&&n.validateField()}})}f()}});n.appendToArray=function(){var t,o=u();if(n.form&&n.form.schema&&n.form.schema.items){var a=n.form.schema.items;a.type&&a.type.indexOf("object")!==-1?(t={},n.options&&n.options.setSchemaDefaults===!1||(t=i.a.isDefined(a.default)?a.default:t,t&&r.traverseSchema(a,function(r,n){i.a.isDefined(r.default)&&e(n,t,r.default)}))):a.type&&a.type.indexOf("array")!==-1?(t=[],n.options&&n.options.setSchemaDefaults===!1||(t=a.default||t)):n.options&&n.options.setSchemaDefaults===!1||(t=a.default||t)}return o.push(t),o},n.deleteFromArray=function(e){var t=n.modelArray;return t&&t.splice(e,1),t};var c=function(e){return function(t){t.key&&(t.key[t.key.indexOf("")]=e)}},m={};n.copyWithIndex=function(e){var t=n.form;if(!m[e]){var o=t.items[0];if(t.items.length>1&&(o={type:"section",items:t.items.map(function(e){return e.ngModelOptions=t.ngModelOptions,i.a.isUndefined(e.readonly)&&(e.readonly=t.readonly),e})}),o){var a=i.a.copy(o);a.arrayIndex=e,r.traverseForm(a,c(e)),m[e]=a}}return m[e]}}}}},function(e,t,r){"use strict";var n=r(0),i=r.n(n);t.a=function(){return{require:"ngModel",restrict:"AC",scope:!1,link:function(e,t,r,n){var o=e.$eval(r.sfChanged);o&&o.onChange&&n.$viewChangeListeners.push(function(){i.a.isFunction(o.onChange)?o.onChange(n.$modelValue,o):e.evalExpr(o.onChange,{modelValue:n.$modelValue,form:o,arrayIndex:e.$index,arrayIndices:e.arrayIndices,path:e.path,$i:e.$i,$index:e.$index})})}}}},function(e,t,r){"use strict";var n=r(0),i=r.n(n),o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};t.a=function(e,t,r,n,a,s,l,u,f){var c={COMPLETE:"*",PATH:"string",INDICES:"number"};return{restrict:"AE",replace:!1,transclude:!1,scope:!0,require:["^sfSchema","?^form","?^^sfKeyController"],link:{pre:function(e,t,r,n){var i=n[0];n[1],n[2];e.$on("schemaFormPropagateNgModelController",function(t,r){t.stopPropagation(),t.preventDefault(),e.ngModel=r}),e.initialForm=Object.assign({},i.lookup["f"+r.sfField]),e.form=i.lookup["f"+r.sfField]},post:function(e,t,r,n){var s=n[0],m=n[1];n[2];e.getKey=function(t){var r=t||c.COMPLETE,n=e.parentKey?e.parentKey.slice(0,e.parentKey.length-1):[];if(e.completeKey!==e.form.key&&("number"==typeof e.$index&&(n=n.concat(e.$index)),e.form.key&&e.form.key.length))if("number"==typeof n[n.length-1]&&e.form.key.length>=1){var i=e.form.key.length-n.length;e.completeKey=n.concat(e.form.key.slice(-i))}else e.completeKey=e.form.key.slice();if(Array.isArray(e.completeKey))return r===c.COMPLETE?e.completeKey:e.completeKey.reduce(function(e,t,n){return-1!==[r].indexOf("undefined"==typeof t?"undefined":o(t))?e.concat(t):e},[])},e.form.key&&(e.form.key=e.completeKey=e.getKey()),e.showTitle=function(){return e.form&&e.form.notitle!==!0&&e.form.title},e.fieldId=function(t,r){var n=r||!1,i=t&&m&&m.$name?m.$name:void 0,o=e.completeKey;return Array.isArray(o)?u.name(o,"-",i,n):""},e.listToCheckboxValues=function(e){var t={};return i.a.forEach(e,function(e){t[e]=!0}),t},e.checkboxValuesToList=function(e){var t=[];return i.a.forEach(e,function(e,r){e&&t.push(r)}),t},e.buttonClick=function(t,r){i.a.isFunction(r.onClick)?r.onClick(t,r):i.a.isString(r.onClick)&&(s?s.evalInParentScope(r.onClick,{$event:t,form:r}):e.$eval(r.onClick,{$event:t,form:r}))},e.evalExpr=function(t,r){return s?s.evalInParentScope(t,r):e.$eval(t,r)},e.evalInScope=function(t,r){if(t)return e.$eval(t,r)},e.interp=function(e,t){return e&&a(e)(t)},e.hasSuccess=function(){return!!e.ngModel&&(e.options&&e.options.pristine&&e.options.pristine.success===!1?e.ngModel.$valid&&!e.ngModel.$pristine&&!e.ngModel.$isEmpty(e.ngModel.$modelValue):e.ngModel.$valid&&(!e.ngModel.$pristine||!e.ngModel.$isEmpty(e.ngModel.$modelValue)))},e.hasError=function(){return!!e.ngModel&&(e.options&&e.options.pristine&&e.options.pristine.errors===!1?e.ngModel.$invalid&&!e.ngModel.$pristine:e.ngModel.$invalid)},e.errorMessage=function(t){return l.interpolate(t&&t.code+""||"default",e.ngModel&&e.ngModel.$modelValue||"",e.ngModel&&e.ngModel.$viewValue||"",e.form,e.options&&e.options.validationMessage)},e.form.htmlClass=e.form.htmlClass||"",e.idClass=e.fieldId(!1)+" "+e.fieldId(!1,!0);var d=e.form;d.key&&(e.$on("schemaForm.error."+d.key.join("."),function(t,r,n,i,o){o=i,n!==!0&&n!==!1||(i=n,n=void 0),void 0!=o&&e.ngModel.$$parentForm.$name!==o||e.ngModel&&r&&(e.ngModel.$setDirty?e.ngModel.$setDirty():(e.ngModel.$dirty=!0,e.ngModel.$pristine=!1),n&&(d.validationMessage||(d.validationMessage={}),d.validationMessage[r]=n),e.ngModel.$setValidity(r,i===!0),i===!0&&(e.ngModel.$validate(),e.$broadcast("schemaFormValidate")))}),e.$on("$destroy",function(){var t=e.getKey();if(!e.externalDestructionInProgress){var r=d.destroyStrategy||e.options&&e.options.destroyStrategy||"remove";if(t&&"retain"!==r){var n=e.model;if(t.length>1&&(n=f(t.slice(0,t.length-1),n)),void 0===n)return;var i=d.schema&&d.schema.type||"";"empty"===r&&i.indexOf("string")!==-1?n[t.slice(-1)]="":"empty"===r&&i.indexOf("object")!==-1?n[t.slice(-1)]={}:"empty"===r&&i.indexOf("array")!==-1?n[t.slice(-1)]=[]:"null"===r?n[t.slice(-1)]=null:delete n[t.slice(-1)]}}}))}}}}},function(e,t,r){"use strict";t.a=function(e,t){return{scope:!0,require:["?^^sfNewArray"],link:{pre:function(e,r,n,i){e.parentKey=e.parentKey||[];var o=t.parse(n.sfParentKey),a=o.length-e.parentKey.length;o.length>1&&(o=o.splice(-a)),e.parentKey=e.parentKey.concat(o,Number(n.sfIndex)),e.arrayIndex=Number(n.sfIndex),e.arrayIndices=e.arrayIndices||[],e.arrayIndices=e.arrayIndices.concat(e.arrayIndex),e.$i=e.arrayIndices,e.path=function(t){var r=-1;return t=t.replace(/\[\]/gi,function(t){return r++,"["+e.$i[r]+"]"}),e.evalExpr(t,e)}}}}}},function(e,t,r){"use strict";var n=r(0),i=r.n(n);t.a=function(e,t){var r=e.has("$sanitize")?e.get("$sanitize"):function(e){return e};return{scope:!1,restrict:"EA",link:function(e,n,o){var a="";o.sfMessage&&e.$watch(o.sfMessage,function(t){t&&(a=r(t),u(!!e.ngModel))});var s,l=function(e){e!==s&&(n.html(e),s=e)},u=function(r){if(r)if(e.hasError()){var n=[];i.a.forEach(e.ngModel&&e.ngModel.$error,function(e,t){e&&n.push(t)}),n=n.filter(function(e){return"schemaForm"!==e});var o=n[0];l(o?t.interpolate(o,e.ngModel.$modelValue,e.ngModel.$viewValue,e.form,e.options&&e.options.validationMessage):a)}else l(a);else l(a)};u();var f=e.$watch("ngModel",function(e){e&&(e.$parsers.push(function(e){return u(!0),e}),e.$formatters.push(function(e){return u(!0),e}),f())});e.$watchCollection("ngModel.$error",function(){u(!!e.ngModel)})}}}},function(e,t,r){"use strict";var n=r(0),i=r.n(n);t.a=function(e,t,r,n,o,a,s,l,u){return{scope:{schema:"=sfSchema",initialForm:"=sfForm",model:"=sfModel",options:"=sfOptions"},controller:["$scope",function(e){this.evalInParentScope=function(t,r){return e.$parent.$eval(t,r)};var t=this;e.lookup=function(e){return e&&(t.lookup=e),t.lookup}}],replace:!1,restrict:"A",transclude:!0,require:"?form",link:function(l,f,c,m,d){l.formCtrl=m;var p={};d(l,function(e){if(e.addClass("schema-form-ignore"),f.prepend(e),f[0].querySelectorAll){var t=f[0].querySelectorAll("[ng-model]");if(t)for(var r=0;r<t.length;r++){var n=t[r].getAttribute("ng-model");p[n.substring(n.indexOf(".")+1)]=!0}}});var h,y={},v=function(e,i){var a=[],s=o.merge(e,i,p,l.options,void 0,a);a.length>0?n.all(a.map(function(e){return t.get(e.templateUrl,{cache:r}).then(function(t){e.template=t.data})})).then(function(){g(e,i,s)}):g(e,i,s)},g=function(t,r,n){h&&(l.externalDestructionInProgress=!0,h.$destroy(),l.externalDestructionInProgress=!1),h=l.$new(),h.schemaForm={form:n,schema:t},f.children(":not(.schema-form-ignore)").remove();for(var m={},d=f[0].querySelectorAll("*[sf-insert-field]"),p=0;p<d.length;p++)m[d[p].getAttribute("sf-insert-field")]=d[p];var y=a.decorator(c.sfUseDecorator),v=Object.create(null);l.lookup(v),f[0].appendChild(u.build(n,y,m,v)),h.firstDigest=!0,setTimeout(function(){h.firstDigest=!1},0),e(f.children())(h),l.options&&l.options.setSchemaDefaults===!1||o.traverseSchema(t,function(e,t){if(i.a.isDefined(e.default)){var r=s(t,l.model);i.a.isUndefined(r)&&s(t,l.model,e.default)}}),l.$emit("sf-render-finished",f)},$=["*"];l.$watch(function(){var e=l.schema,t=l.initialForm||$;t&&e&&e.type&&(y.form!==t||y.schema!==e)&&Object.keys(e.properties).length>0&&(y.schema=e,y.form=t,v(e,t))}),l.$on("schemaFormRedraw",function(){var e=l.schema,t=l.initialForm?i.a.copy(l.initialForm):["*"];e&&v(e,t)}),l.$on("$destroy",function(){l.externalDestructionInProgress=!0}),l.evalExpr=function(e,t){return l.$parent.$eval(e,t)}}}}},function(e,t,r){"use strict";var n=r(0),i=r.n(n);t.a=function(e,t){var r="",n={},o=function(e,t){"sfDecorator"===e&&(e=r);var i=n[e];return i[t.type]?i[t.type].template:i.default.template},a=function(r){e.directive(r,["$parse","$compile","$http","$templateCache","$interpolate","$q","sfErrorMessage","sfPath","sfSelect",function(e,n,a,s,l,u,f,c,m){return{restrict:"AE",replace:!1,transclude:!1,scope:!0,require:["?^sfSchema","?^form"],link:function(e,d,p,h){var y=h[0],v=h[1];e.$on("schemaFormPropagateNgModelController",function(t,r){t.stopPropagation(),t.preventDefault(),e.ngModel=r}),e.showTitle=function(){return e.form&&e.form.notitle!==!0&&e.form.title},e.fieldId=function(t,r){var n=e.parentKey||[];if(e.form.key){if("number"==typeof n[n.length-1]){var i=n.concat(e.form.key.slice(-1)),o=t&&v&&v.$name?v.$name:void 0;return c.name(i,"-",o,r)}var o=t&&v&&v.$name?v.$name:void 0;return c.name(e.form.key,"-",o,r)}return""},e.listToCheckboxValues=function(e){var t={};return i.a.forEach(e,function(e){t[e]=!0}),t},e.checkboxValuesToList=function(e){var t=[];return i.a.forEach(e,function(e,r){e&&t.push(r)}),t},e.buttonClick=function(t,r){i.a.isFunction(r.onClick)?r.onClick(t,r):i.a.isString(r.onClick)&&(y?y.evalInParentScope(r.onClick,{$event:t,form:r}):e.$eval(r.onClick,{$event:t,form:r}))},e.evalExpr=function(t,r){return y?y.evalInParentScope(t,r):e.$eval(t,r)},e.evalInScope=function(t,r){if(t)return e.$eval(t,r)},e.interp=function(e,t){return e&&l(e)(t)},e.hasSuccess=function(){return!!e.ngModel&&(e.options&&e.options.pristine&&e.options.pristine.success===!1?e.ngModel.$valid&&!e.ngModel.$pristine&&!e.ngModel.$isEmpty(e.ngModel.$modelValue):e.ngModel.$valid&&(!e.ngModel.$pristine||!e.ngModel.$isEmpty(e.ngModel.$modelValue)))},e.hasError=function(){return!!e.ngModel&&(e.ngModel.$invalid&&!e.ngModel.$pristine)},e.errorMessage=function(t){return f.interpolate(t&&t.code+""||"default",e.ngModel&&e.ngModel.$modelValue||"",e.ngModel&&e.ngModel.$viewValue||"",e.form,e.options&&e.options.validationMessage)};var g=e.$watch(p.form,function(l){if(l){l.ngModelOptions=l.ngModelOptions||{},e.form=l;var f;if("template"===l.type&&l.template)f=u.when(l.template);else{var p="template"===l.type?l.templateUrl:o(r,l);f=a.get(p,{cache:s}).then(function(e){return e.data})}f.then(function(r){if(l.key){var o=l.key?t.stringify(l.key).replace(/"/g,"""):"";r=r.replace(/\$\$value\$\$/g,"model"+("["!==o[0]?".":"")+o)}if(d.html(r),l.condition){var a='evalExpr(form.condition,{ model: model, "arrayIndex": arrayIndex})';l.key&&(a='evalExpr(form.condition, {model: model, "arrayIndex": arrayIndex, "modelValue": model'+c.stringify(l.key)+"})"),i.a.forEach(d.children(),function(e){var t=e.getAttribute("ng-if");e.setAttribute("ng-if",t?"("+t+") || ("+a+")":a)})}n(d.contents())(e)}),l.key&&(e.$on("schemaForm.error."+l.key.join("."),function(t,r,n,i,o){o=i,n!==!0&&n!==!1||(i=n,n=void 0),void 0!=o&&e.ngModel.$$parentForm.$name!==o||void 0!=o&&e.ngModel.$$parentForm.$name!==o||e.ngModel&&r&&(e.ngModel.$setDirty?e.ngModel.$setDirty():(e.ngModel.$dirty=!0,e.ngModel.$pristine=!1),n&&(l.validationMessage||(l.validationMessage={}),l.validationMessage[r]=n),e.ngModel.$setValidity(r,i===!0),i===!0&&(e.ngModel.$validate(),e.$broadcast("schemaFormValidate")))}),e.$on("$destroy",function(){if(!e.externalDestructionInProgress){var t=l.destroyStrategy||e.options&&e.options.destroyStrategy||"remove";if(l.key&&"retain"!==t){var r=e.model;if(l.key.length>1&&(r=m(l.key.slice(0,l.key.length-1),r)),void 0===r)return;var n=l.schema&&l.schema.type||"";"empty"===t&&n.indexOf("string")!==-1?r[l.key.slice(-1)]="":"empty"===t&&n.indexOf("object")!==-1?r[l.key.slice(-1)]={}:"empty"===t&&n.indexOf("array")!==-1?r[l.key.slice(-1)]=[]:"null"===t?r[l.key.slice(-1)]=null:delete r[l.key.slice(-1)]}}})),g()}})}}}])},s=function(t,r,n){n=!!i.a.isDefined(n)&&n,e.directive("sf"+i.a.uppercase(t[0])+t.substr(1),function(){return{restrict:"EAC",scope:!0,replace:!0,transclude:n,template:'<sf-decorator form="form"></sf-decorator>',link:function(e,r,n){var o={items:"c",titleMap:"c",schema:"c"},a={type:t},s=!0;i.a.forEach(n,function(t,r){if("$"!==r[0]&&0!==r.indexOf("ng")&&"sfField"!==r){var l=function(t){i.a.isDefined(t)&&t!==a[r]&&(a[r]=t,s&&a.type&&(a.key||i.a.isUndefined(n.key))&&(e.form=a,s=!1))};"model"===r?e.$watch(t,function(t){t&&e.model!==t&&(e.model=t)}):"c"===o[r]?e.$watchCollection(t,l):n.$observe(r,l)}})}}})};this.createDecorator=function(e,t){n[e]={__name:e},i.a.forEach(t,function(t,r){n[e][r]={template:t,replace:!1,builder:[]}}),n[r]||(r=e),a(e)},this.defineDecorator=function(e,t){n[e]={__name:e},i.a.forEach(t,function(t,r){t.builder=t.builder||[],t.replace=!i.a.isDefined(t.replace)||t.replace,n[e][r]=t}),n[r]||(r=e),a(e)},this.createDirective=s,this.createDirectives=function(e){i.a.forEach(e,function(e,t){s(t,e)})},this.decorator=function(e){return e=e||r,n[e]},this.addMapping=function(e,t,r,i,o){n[e]&&(n[e][t]={template:r,builder:i,replace:!!o})},this.defineAddOn=function(e,t,r,i){n[e]&&(n[e][t]={template:r,builder:i,replace:!0})},this.$get=function(){return{decorator:function(e){return n[e]||n[r]},defaultDecorator:r}},a("sfDecorator")}},function(e,t,r){"use strict";var n=r(0),i=(r.n(n),r(1));r.n(i);t.a=function(){var e=function(e){return e},t=i.schemaDefaults.createDefaults();this.defaults=t,this.stdFormObj=i.schemaDefaults.stdFormObj,this.defaultFormDefinition=i.schemaDefaults.defaultFormDefinition,this.postProcess=function(t){e=t},this.appendRule=function(e,t){this.defaults[e]||(this.defaults[e]=[]),this.defaults[e].push(t)},this.prependRule=function(e,t){this.defaults[e]||(this.defaults[e]=[]),this.defaults[e].unshift(t)},this.createStandardForm=i.schemaDefaults.stdFormObj,this.$get=function(){var t={},n=this.defaults;return t.merge=function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:["*"],o=arguments[2],a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},s=arguments.length>4&&void 0!==arguments[4]&&arguments[4],l=arguments[5],u=r.i(i.merge)(t,n,o,a,s,l);return e(u)},t.defaults=function(e,t,r,o){var a=t||n;return i.schemaDefaults.defaultForm(e,a,r,o)},t.typeDefault=n,t.traverseSchema=i.traverseSchema,t.traverseForm=i.traverseForm,t}}},function(e,t,r){"use strict";t.a=function(e){var t=/[A-Z]/g,r=function(e,r){return r=r||"_",e.replace(t,function(e,t){return(t?r:"")+e.toLowerCase()})},n=0;"firstElementChild"in document.createDocumentFragment()||Object.defineProperty(DocumentFragment.prototype,"firstElementChild",{get:function(){for(var e,t=this.childNodes,r=0,n=t.length;r<n;++r)if(e=t[r],1===e.nodeType)return e;return null}});var i={sfField:function(e){e.fieldFrag.firstElementChild.setAttribute("sf-field",n),e.lookup["f"+n]=e.form,n++},ngModel:function(t){if(t.form.key){var r=t.form.key;t.state.keyRedaction&&(r=r.slice(t.state.keyRedaction));var n;if(t.state.modelValue)n=t.state.modelValue;else{var i=e.stringify(r).replace(/"/g,""");n=t.state.modelName||"model",i&&(n+=("["!==i[0]?".":"")+i)}for(var o=t.fieldFrag.querySelectorAll("[sf-field-model]"),a=0;a<o.length;a++){var s=o[a],l=s.getAttribute("sf-field-model");if(l&&""!==l)if("replaceAll"===l)for(var u=s.attributes,f=0;f<u.length;f++)u[f].value&&u[f].value.indexOf("$$value")!==-1&&(u[f].value=u[f].value.replace(/\$\$value\$\$/g,n));else{var c=s.getAttribute(l);c&&c.indexOf("$$value$$")?s.setAttribute(l,c.replace(/\$\$value\$\$/g,n)):s.setAttribute(l,n)}else s.setAttribute("ng-model",n)}}},simpleTransclusion:function(e){var t=e.build(e.form.items,e.path+".items",e.state);e.fieldFrag.firstChild.appendChild(t)},ngModelOptions:function(e){e.form.ngModelOptions&&Object.keys(e.form.ngModelOptions).length>0&&e.fieldFrag.firstChild.setAttribute("ng-model-options",JSON.stringify(e.form.ngModelOptions))},transclusion:function(e){var t=e.fieldFrag.querySelectorAll("[sf-field-transclude]");if(t.length)for(var r=0;r<t.length;r++){var n=t[r],i=n.getAttribute("sf-field-transclude")||"items",o=e.form[i];if(o){var a=e.build(o,e.path+"."+i,e.state);n.appendChild(a)}}},condition:function(t){var r="",n="undefined",i="";if(t.form.condition){t.form.key&&(r=e.stringify(t.form.key),n="model"+("["===r[0]?"":".")+r);for(var o="evalExpr("+t.path+'.condition, { model: model, "arrayIndex": $index, "arrayIndices": arrayIndices, "path": path, "$i": $i, "$index": $index, "modelValue": '+n+"})",a=t.fieldFrag.children||t.fieldFrag.childNodes,s=0;s<a.length;s++){var l=a[s];l.hasAttribute&&l.hasAttribute("ng-if")&&(i=l.getAttribute("ng-if")),l.setAttribute&&l.setAttribute("ng-if",i?"("+i+") || ("+o+")":o)}}},array:function(t){var r=t.fieldFrag.querySelector("[schema-form-array-items]");if(t.form.key){t.form.key.filter(function(e){return""===e}).length}if(r){var n=angular.copy(t.state);if(n.keyRedaction=0,n.keyRedaction+=t.form.key.length+1,t.form.schema&&t.form.schema.items&&t.form.schema.items.type&&t.form.schema.items.type.indexOf("object")===-1&&t.form.schema.items.type.indexOf("array")===-1){e.stringify(t.form.key).replace(/"/g,""")+"[$index]";n.modelValue="modelArray[$index]"}else n.modelName="item";n.arrayCompatFlag=!0;var i=t.build(t.form.items,t.path+".items",n);
r.appendChild(i)}},numeric:function(e){var t=e.fieldFrag.querySelector("input"),r=e.form.maximum||!1,n=e.form.exclusiveMaximum||!1,i=e.form.minimum||!1,o=e.form.exclusiveMinimum||!1,a=e.form.multipleOf||!1;t&&(a!==!1&&t.setAttribute("step",a),r!==!1&&(n!==!1&&a!==!1&&(r-=a),t.setAttribute("max",r)),i!==!1&&(o!==!1&&a!==!1&&(i+=a),t.setAttribute("min",i)))}};this.builders=i;var o=[i.sfField,i.ngModel,i.ngModelOptions,i.condition];this.stdBuilders=o,this.$get=["$templateCache","schemaFormDecorators","sfPath",function(e,t,n){var a=function(e,t){if(e.key){var r=t[n.stringify(e.key)];if(r){for(;r.firstChild;)r.removeChild(r.firstChild);return r}}},s=function e(t,n,i,o,s,l,u){l=l||{},l=l||{},u=u||Object.create(null),s=s||"schemaForm.form";var f=document.createDocumentFragment();return t.reduce(function(t,f,c){if(!f.type)return t;var m=n[f.type]||n.default;if(m.replace){var d;l.arrayCompatFlag=!1;var p=document.createElement("div"),h=i(f,m)||i(f,n.default);for(p.innerHTML=h,d=document.createDocumentFragment();p.childNodes.length>0;)d.appendChild(p.childNodes[0]);var y={fieldFrag:d,form:f,lookup:u,state:l,path:s+"["+c+"]",build:function(t,r,a){return e(t,n,i,o,r,a,u)}},v=f.builder||m.builder;"function"==typeof v?v(y):v.forEach(function(e){e(y)}),(a(f,o)||t).appendChild(d)}else{var g=document.createElement(r(n.__name,"-"));l.arrayCompatFlag?g.setAttribute("form","copyWithIndex($index)"):g.setAttribute("form",s+"["+c+"]"),(a(f,o)||t).appendChild(g)}return t},f),f};return{build:function(t,r,n,i){return s(t,r,function(t,r){return"template"===t.type?t.template:e.get(r.template)},n,void 0,void 0,i)},builder:i,stdBuilders:o,internalBuild:s}}]}},function(e,t,r){"use strict";var n=r(0),i=r.n(n);t.a=function(){var e={default:"Field does not validate",0:"Invalid type, expected {{schema.type}}",1:"No enum match for: {{viewValue}}",10:'Data does not match any schemas from "anyOf"',11:'Data does not match any schemas from "oneOf"',12:'Data is valid against more than one schema from "oneOf"',13:'Data matches schema from "not"',100:"Value is not a multiple of {{schema.multipleOf}}",101:"{{viewValue}} is less than the allowed minimum of {{schema.minimum}}",102:"{{viewValue}} is equal to the exclusive minimum {{schema.minimum}}",103:"{{viewValue}} is greater than the allowed maximum of {{schema.maximum}}",104:"{{viewValue}} is equal to the exclusive maximum {{schema.maximum}}",105:"Value is not a valid number",200:"String is too short ({{viewValue.length}} chars), minimum {{schema.minLength}}",201:"String is too long ({{viewValue.length}} chars), maximum {{schema.maxLength}}",202:"String does not match pattern: {{schema.pattern}}",300:"Too few properties defined, minimum {{schema.minProperties}}",301:"Too many properties defined, maximum {{schema.maxProperties}}",302:"Required",303:"Additional properties not allowed",304:"Dependency failed - key must exist",400:"Array is too short ({{value.length}}), minimum {{schema.minItems}}",401:"Array is too long ({{value.length}}), maximum {{schema.maxItems}}",402:"Array items are not unique",403:"Additional items not allowed",500:"Format validation failed",501:'Keyword failed: "{{title}}"',600:"Circular $refs",1e3:"Unknown property (not in schema)"};e.number=e[105],e.required=e[302],e.min=e[101],e.max=e[103],e.maxlength=e[201],e.minlength=e[200],e.pattern=e[202],this.setDefaultMessages=function(t){e=t},this.getDefaultMessages=function(){return e},this.setDefaultMessage=function(t,r){e[t]=r},this.$get=["$interpolate",function(t){var r={};return r.defaultMessages=e,r.interpolate=function(r,n,o,a,s){s=s||{};var l=a.validationMessage||{};0===r.indexOf("tv4-")&&(r=r.substring(4));var u=l.default||s.default||"";[l,s,e].some(function(e){return i.a.isString(e)||i.a.isFunction(e)?(u=e,!0):e&&e[r]?(u=e[r],!0):void 0});var f={error:r,value:n,viewValue:o,form:a,schema:a.schema,title:a.title||a.schema&&a.schema.title};return i.a.isFunction(u)?u(f):t(u)(f)},r}]}},function(e,t,r){"use strict";function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var i=r(1),o=(r.n(i),r(0)),a=(r.n(o),function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(t,r,n){return r&&e(t.prototype,r),n&&e(t,n),t}}()),s=function(){function e(){n(this,e),this.name=i.sfPath.name,this.parse=i.sfPath.parse,this.stringify=i.sfPath.stringify,this.normalize=i.sfPath.normalize}return a(e,[{key:"$get",value:function(){return i.sfPath}}]),e}();t.a=s},,,,function(e,t,r){r(1),e.exports=r(3)}]);