d2-ui
Version:
2 lines • 52.7 kB
JavaScript
!function(e,t){for(var n in t)e[n]=t[n]}(exports,function(e){function t(r){if(n[r])return n[r].exports;var i=n[r]={exports:{},id:r,loaded:!1};return e[r].call(i.exports,i,i.exports,t),i.loaded=!0,i.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}(function(e){for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t))switch(typeof e[t]){case"function":break;case"object":e[t]=function(t){var n=t.slice(1),r=e[t[0]];return function(e,t,i){r.apply(this,[e,t,i].concat(n))}}(e[t]);break;default:e[t]=e[e[t]]}return e}([function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function i(e){var t=new h["default"](j["default"]);t.setBaseUrl("");var n={getBaseUrl:function(){return this.activities.dhis.href}};return t.get(""+e).then(function(e){return Object.assign({},e,n)})}function o(){var e=h["default"].getApi();return _.baseUrl&&E&&e.setBaseUrl(_.baseUrl),e.get("userSettings")}function a(e){var t=h["default"].getApi(),n=c["default"].getLogger(),r=k["default"].create(_,e),i={models:void 0,model:d["default"],Api:h["default"],system:v["default"].getSystem(),i18n:m["default"].getI18n()};return k["default"].processConfigForD2(r,i),E?E=!1:T=s.Deferred.create(),Promise.all([t.get("schemas"),t.get("attributes",{fields:":all,optionSet[:all,options[:all]]",paging:!1}),t.get("me",{fields:":all,organisationUnits[id],userGroups[id],userCredentials[:all,!user,userRoles[id]"}),t.get("me/authorization"),o(),t.get("system/info"),t.get("apps"),i.i18n.load()]).then(function(e){var t={schemas:(0,s.pick)("schemas")(e[0]),attributes:(0,s.pick)("attributes")(e[1]),currentUser:e[2],authorities:e[3],userSettings:e[4],systemInfo:e[5],apps:e[6]};return t.schemas.forEach(function(e){var n=t.attributes.filter(function(t){var n=[e.name,"Attribute"].join("");return t[n]===!0});Object.prototype.hasOwnProperty.call(i.models,e.name)||i.models.add(d["default"].ModelDefinition.createFromSchema(e,n))}),i.currentUser=O["default"].create(t.currentUser,t.authorities,i.models,t.userSettings),i.system.setSystemInfo(t.systemInfo),i.system.setInstalledApps(t.apps),T.resolve(i),T.promise})["catch"](function(e){return n.error("Unable to get schemas from the api",JSON.stringify(e),e),T.reject("Unable to get schemas from the DHIS2 API"),T.promise})}function u(){return T.promise}Object.defineProperty(t,"__esModule",{value:!0}),t.getManifest=i,t.getUserSettings=o,t.init=a,t.getInstance=u;var s=n(1),l=n(2),c=r(l),f=n(4),d=r(f),p=n(7),h=r(p),y=n(9),v=r(y),g=n(28),m=r(g),b=n(29),k=r(b),w=n(31),O=r(w),P=n(8),j=r(P),E=!0,T=s.Deferred.create(),_=k["default"].create(),C=_;t.config=C,t["default"]={init:a,config:C,getInstance:u,getUserSettings:o,getManifest:i}},function(e,t){"use strict";function n(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function r(e){throw new Error(e)}function i(e,t){return function(){for(var n=arguments.length,r=Array(n),i=0;n>i;i++)r[i]=arguments[i];return e.apply(this,[t].concat(r))}}function o(e,t,n){var r={enumerable:!0,configurable:!1,writable:!1,value:n};Object.defineProperty(e,t,r)}function a(e,t){var n=void 0;for(n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return e}function u(e){return function(t){return t?t[e]:void 0}}Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}();t.throwError=r,t.curry=i,t.addLockedProperty=o,t.copyOwnProperties=a,t.pick=u;var l=function(){function e(){var t=this;n(this,e),this.promise=new Promise(function(e,n){t.resolve=e,t.reject=n})}return s(e,null,[{key:"create",value:function(){return new e}}]),e}();t.Deferred=l},function(e,t,n){(function(r){"use strict";function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var o=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),a=n(3),u=function(){function e(t){i(this,e),(0,a.checkType)(t,"object","console"),this.logger=t}return o(e,[{key:"canLog",value:function(e){return!!(e&&console&&(0,a.isType)(this.logger[e],"function"))}},{key:"debug",value:function(){if(this.canLog("debug")){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n];return this.logger.debug.apply(console,t),!0}return!1}},{key:"error",value:function(){if(this.canLog("error")){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n];return this.logger.error.apply(console,t),!0}return!1}},{key:"log",value:function(){if(this.canLog("log")){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n];return this.logger.log.apply(console,t),!0}return!1}},{key:"warn",value:function(){if(this.canLog("warn")){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n];return this.logger.warn.apply(console,t),!0}return!1}}],[{key:"getLogger",value:function(){var t=void 0;try{t=r.console}catch(n){t=window.console}return this.logger?this.logger:this.logger=new e(t)}}]),e}();t["default"]=u,e.exports=t["default"]}).call(t,function(){return this}())},function(e,t){"use strict";function n(e,t){if(void 0!==e)return!0;throw new Error([t||"Value","should be provided"].join(" "))}function r(e,t,r){if(n(e,r),n(t,"Type"),"function"==typeof t&&e instanceof t||"string"==typeof t&&typeof e===t)return!0;throw new Error(["Expected",r||e,"to have type",t].join(" "))}function i(e,t){function n(){}try{return r(e,t),!0}catch(i){n()}return!1}function o(e){return i(e,"string")}function a(e){return Array.isArray(e)}function u(e){return i(e,Object)}function s(e){return void 0!==e}function l(e){return"number"==typeof e&&isFinite(e)&&e>-9007199254740992&&9007199254740992>e&&Math.floor(e)===e}function c(e){return"number"==typeof e&&isFinite(e)&&e-parseFloat(e)+1>=0}function f(e,t){var n=a(t)&&t||[];return n.indexOf(e)>=0}function d(e){return e&&11===e.length}Object.defineProperty(t,"__esModule",{value:!0}),t.checkDefined=n,t.checkType=r,t.isType=i,t.isString=o,t.isArray=a,t.isObject=u,t.isDefined=s,t.isInteger=l,t.isNumeric=c,t.contains=f,t.isValidUid=d,Number.isInteger||(Number.isInteger=l),t["default"]={checkType:r,checkDefined:n,isArray:a,isDefined:s,isInteger:l,isNumeric:c,isString:o,isType:i,contains:f,isValidUid:d}},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}Object.defineProperty(t,"__esModule",{value:!0});var i=n(5),o=r(i),a=n(12),u=r(a),s=n(13),l=r(s),c=n(14),f=r(c),d=n(6),p=r(d);t["default"]={ModelBase:o["default"],Model:u["default"],ModelDefinition:l["default"],ModelDefinitions:f["default"],ModelValidation:p["default"]},e.exports=t["default"]},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){return Boolean(e.modelDefinition&&e.modelDefinition.modelValidations&&e.modelDefinition.modelValidations[t]&&Object.prototype.hasOwnProperty.call(e.modelDefinition.modelValidations,t))}Object.defineProperty(t,"__esModule",{value:!0});var a=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=n(6),s=r(u),l=n(3),c=s["default"].getModelValidation(),f=Symbol("List to keep track of dirty properties");t.DIRTY_PROPERTY_LIST=f;var d=function(){function e(){i(this,e)}return a(e,[{key:"save",value:function(){var e=this,t=arguments.length<=0||void 0===arguments[0]?!0:arguments[0];return this.dirty||t===!0&&this.hasDirtyChildren()?this.validate().then(function(t){return t.status?e.modelDefinition.save(e).then(function(t){return t&&1===t.response.importCount.imported&&(0,l.isValidUid)(t.response.lastImported)&&(e.dataValues.id=t.response.lastImported,e.dataValues.href=[e.modelDefinition.apiEndpoint,e.dataValues.id].join("/")),e.dirty=!1,e.getDirtyChildren().forEach(function(e){e.dirty=!1}),e[f].clear(),t}):Promise.reject(t)}):Promise.reject("No changes to be saved")}},{key:"validate",value:function(){var e=this;return new Promise(function(t,n){function r(e,t){return t&&-1===e.indexOf(t)&&e.push(t),e}function i(e){return c.validateAgainstSchema(e)}var o=[];i(e).then(function(e){o=o.concat(e);var n={status:0===e.length,fields:o.map(function(e){return e.property}).reduce(r,[]),messages:o};t(n)})["catch"](function(e){return n(e)})})}},{key:"delete",value:function(){return this.modelDefinition["delete"](this)}},{key:"getDirtyPropertyNames",value:function(){return Array.from(this[f].values())}},{key:"getCollectionChildren",value:function(){var e=this;return Object.keys(this).filter(function(t){return e[t]&&o(e,t)&&e.modelDefinition.modelValidations[t].owner&&e[t].size>=0}).map(function(t){return e[t]})}},{key:"getCollectionChildrenPropertyNames",value:function(){var e=this;return Object.keys(this).filter(function(t){return e.modelDefinition&&e.modelDefinition.modelValidations&&e.modelDefinition.modelValidations[t]&&"COLLECTION"===e.modelDefinition.modelValidations[t].type})}},{key:"getDirtyChildren",value:function(){return this.getCollectionChildren().filter(function(e){return e&&e.dirty===!0})}},{key:"hasDirtyChildren",value:function(){return this.getDirtyChildren().length>0}}]),e}();t["default"]=new d},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var o=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),a=n(3),u=n(2),s=r(u),l=n(7),c=r(l),f=function(){function e(t){i(this,e),(0,a.checkType)(t,"object","logger (Logger)"),this.logger=t}return o(e,[{key:"validate",value:function(){throw this.logger.warn("Client side model validation is deprecated"),new Error("Client side model validation is deprecated")}},{key:"validateAgainstSchema",value:function(e){function t(e){if(e.response&&(e.response.validationViolations||e.response.errorReports))return e.response.validationViolations||e.response.errorReports;throw new Error("Response was not a WebMessage with the expected format")}if(!(e&&e.modelDefinition&&e.modelDefinition.name))return Promise.reject("model.modelDefinition.name can not be found");var n="schemas/"+e.modelDefinition.name;return c["default"].getApi().post(n,e.modelDefinition.getOwnedPropertyJSON(e)).then(function(e){return"OK"===e.status?[]:Promise.reject(e)})["catch"](t)}}],[{key:"getModelValidation",value:function(){return this.modelValidation?this.modelValidation:this.modelValidation=new e(s["default"].getLogger(console))}}]),e}();t["default"]=f,e.exports=t["default"]},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(){var e=arguments.length<=0||void 0===arguments[0]?"REPLACE":arguments[0],t=y["default"].getSystem();return t.version&&Number(t.version.minor)<=22?"mergeStrategy="+e:"mergeMode="+e}function a(e){return function(t){e(t)}}function u(e){return function(t){return t.responseJSON?e(t.responseJSON):(delete t.then,e(t))}}function s(e,t){if(new RegExp("^(:?https?:)?//").test(t))return t;var n=[];return e&&n.push(e),n.push(t),n.join("/").replace(new RegExp("(.(?:[^:]))//+","g"),"$1/").replace(new RegExp("/$"),"")}function l(){return l.api?l.api:l.api=new v(p["default"])}Object.defineProperty(t,"__esModule",{value:!0});var c=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),f=n(3),d=n(8),p=r(d),h=n(9),y=r(h),v=function(){function e(t){if(i(this,e),!t)throw new Error("D2 requires jQuery");this.jquery=t,this.baseUrl="/api",this.defaultRequestSettings={data:{},contentType:"application/json",type:void 0,url:void 0}}return c(e,[{key:"get",value:function(e,t,n){return this.request("GET",s(this.baseUrl,e),t,n)}},{key:"post",value:function(e,t,n){var r=!n||void 0===n.contentType||"text/plain"!==n.contentType&&n.contentType!==!1?JSON.stringify(t):t;return this.request("POST",s(this.baseUrl,e),r,n)}},{key:"delete",value:function(e,t){return this.request("DELETE",s(this.baseUrl,e),void 0,t)}},{key:"update",value:function(e,t){var n=arguments.length<=2||void 0===arguments[2]?!1:arguments[2],r=n===!0?e+"?"+o():e;return this.request("PUT",s(this.baseUrl,r),JSON.stringify(t))}},{key:"request",value:function(e,t,n){function r(t,n){var r=Object.assign({},l.defaultRequestSettings,t);return r.type=e,r.url=o,r.data=n,r.dataType=void 0!==i.dataType?i.dataType:"json",r.contentType=void 0!==i.contentType?i.contentType:"application/json",r}var i=arguments.length<=3||void 0===arguments[3]?{}:arguments[3];(0,f.checkType)(e,"string","Request type"),(0,f.checkType)(t,"string","Url");var o=t;if(n&&n.filter){var s=n.filter.reduce(function(e,t){var n=e.length?"&":"",r="filter="+t;return""+e+n+r},"");delete n.filter,o+="?"+s}var l=this;return new Promise(function(e,t){var o=n;void 0===o?o={}:(o===!0||o===!1)&&(o=o.toString()),l.jquery.ajax(r(i,o)).then(a(e),u(t))})}},{key:"setBaseUrl",value:function(e){return(0,f.checkType)(e,"string","Base url"),this.baseUrl=e,this}}]),e}();v.getApi=l,t["default"]=v,e.exports=t["default"]},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}Object.defineProperty(t,"__esModule",{value:!0});var i=n(2),o=r(i),a=void 0;try{a=window.jQuery}catch(u){o["default"].getLogger().error("JQuery not found"),a={}}t["default"]=a,e.exports=t["default"]},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var o=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),a=n(7),u=r(a),s=n(10),l=r(s),c=n(11),f=r(c),d=function(){function e(t,n){i(this,e),this.settings=t,this.configuration=n,this.systemInfo=void 0,this.version=void 0,this.installedApps=void 0}return o(e,[{key:"setSystemInfo",value:function(t){this.version=e.parseVersionString(t.version),this.systemInfo=t}},{key:"setInstalledApps",value:function(e){this.installedApps=e}},{key:"loadInstalledApps",value:function(){var e=this,t=u["default"].getApi();return t.get("apps").then(function(t){return e.setInstalledApps(t),t})}},{key:"uploadApp",value:function(e,t){var n=u["default"].getApi(),r=new FormData,i=void 0;return r.append("file",e),void 0!==t&&(i=new XMLHttpRequest,i.upload.onprogress=function(e){e.lengthComputable&&t(e.loaded/e.total)}),n.post("apps",r,{contentType:!1,processData:!1,xhr:void 0!==i?function(){return i}:void 0})}},{key:"loadAppStore",value:function(){var t=this,n=arguments.length<=0||void 0===arguments[0]?!0:arguments[0];return new Promise(function(r,i){var o=u["default"].getApi();o.get("appStore").then(function(i){var o=Object.assign({},i);o.apps=o.apps.map(function(r){var i=Object.assign({},r);return n&&(i.versions=i.versions.filter(function(n){return e.isVersionCompatible(t.version,n)})),i}).filter(function(e){return e.versions.length>0}),r(o)})["catch"](function(e){i(e)})})}},{key:"installAppVersion",value:function(e){var t=u["default"].getApi();return new Promise(function(n,r){t.post(["appStore",e].join("/"),"",{dataType:"text"}).then(function(){n()})["catch"](function(e){r(e)})})}},{key:"uninstallApp",value:function(e){var t=u["default"].getApi();return t["delete"](["apps",e].join("/"))["catch"](function(){})}},{key:"reloadApps",value:function(){var e=this,t=u["default"].getApi();return t.update("apps").then(function(){return e.loadInstalledApps()})}}],[{key:"parseVersionString",value:function(e){return{major:Number.parseInt(e,10),minor:Number.parseInt(e.substring(e.indexOf(".")+1),10),snapshot:e.indexOf("-SNAPSHOT")>=0}}},{key:"compareVersions",value:function(t,n){var r="string"==typeof t||t instanceof String?e.parseVersionString(t):t,i="string"==typeof n||n instanceof String?e.parseVersionString(n):n;return r.major!==i.major?r.major-i.major:r.minor!==i.minor?r.minor-i.minor:(r.snapshot?0:1)-(i.snapshot?0:1)}},{key:"isVersionCompatible",value:function(t,n){var r=n.min_platform_version?e.compareVersions(t,n.min_platform_version)>=0:!0,i=n.max_platform_version?e.compareVersions(t,n.max_platform_version)<=0:!0;return r&&i}},{key:"getSystem",value:function(){return e.getSystem.system||(e.getSystem.system=new e(new l["default"],new f["default"])),e.getSystem.system}}]),e}();t["default"]=d,e.exports=t["default"]},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var o=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),a=n(3),u=n(7),s=r(u),l=function(){function e(){var t=arguments.length<=0||void 0===arguments[0]?s["default"].getApi():arguments[0];i(this,e),this.api=t}return o(e,[{key:"all",value:function(){return this.api.get("systemSettings")}},{key:"get",value:function(e){function t(e){try{return JSON.parse(e)}catch(t){return e}}var n=this;return new Promise(function(r,i){if(!(0,a.isString)(e))throw new TypeError('A "key" parameter should be specified when calling get() on systemSettings');n.api.get(["systemSettings",e].join("/"),void 0,{dataType:"text"}).then(function(e){var n=t(e);n&&r(t(e)),i(new Error("The requested systemSetting has no value or does not exist."))})})}},{key:"set",value:function(e,t){var n=["systemSettings",e].join("/");return null===t||0===(""+t).length?this.api["delete"](n,{dataType:"text"}):this.api.post(n,t,{dataType:"text",contentType:"text/plain"})}}]),e}();t["default"]=l,e.exports=t["default"]},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var o=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),a=n(7),u=r(a),s=function(){function e(){var t=arguments.length<=0||void 0===arguments[0]?u["default"].getApi():arguments[0];i(this,e),this.api=t,this._configuration=void 0,this._configPromise=null}return o(e,[{key:"all",value:function(e){var t=this;return(null===this._configPromise||e===!0)&&(this._configPromise=this.api.get("configuration").then(function(e){return t._configuration=e,t._configuration})),this._configPromise}},{key:"get",value:function(e,t){return this.all(t).then(function(t){return t.hasOwnProperty(e)?Promise.resolve(t[e]):Promise.reject("Unknown config option: "+e)})}},{key:"set",value:function(e,t){var n=this,r=void 0;return"systemId"===e?Promise.reject("The system ID can't be changed"):(r="feedbackRecipients"!==e&&"selfRegistrationOrgUnit"!==e&&"selfRegistrationRole"!==e||"null"!==t&&null!==t?"corsWhitelist"===e?this.api.post(["configuration",e].join("/"),t.trim().split("\n"),{dataType:"text"}):this.api.post(["configuration",e].join("/"),t,{dataType:"text",contentType:"text/plain"}):this.api["delete"](["configuration",e].join("/"),{dataType:"text"}),r.then(function(){return n._configuration=void 0,Promise.resolve()})["catch"](function(){return Promise.reject("No configuration found for "+e)}))}}]),e}();t["default"]=s,e.exports=t["default"]},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var o=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),a=n(3),u=n(5),s=r(u),l=function(){function e(t){var n=this;i(this,e),(0,a.checkType)(t,"object","modelDefinition"),(0,a.checkType)(t.modelProperties,"object","modelProperties"),Object.defineProperty(this,"modelDefinition",{enumerable:!1,configurable:!1,writable:!1,value:t}),Object.defineProperty(this,"dirty",{enumerable:!1,configurable:!1,writable:!0,value:!1}),Object.defineProperty(this,"dataValues",{enumerable:!1,configurable:!0,writable:!0,value:{}});var r=function(e){return e&&!!Object.keys(e).length},o={},s=t.attributeProperties;r(s)&&(Object.defineProperty(this,"attributes",{enumerable:!1,value:o}),Object.keys(s).forEach(function(e){Object.defineProperty(o,e,{enumerable:!0,get:function(){return Array.isArray(n.attributeValues)?n.attributeValues.filter(function(t){return t.attribute.name===e}).reduce(function(e,t){return t.value},void 0):void 0},set:function(t){n.attributeValues||(n.attributeValues=[]);var r=n.attributeValues.filter(function(t){return t.attribute.name===e}).reduce(function(e,t){return t},void 0);if(r){if(r.value===t)return;r.value=t}else n.attributeValues.push({value:t,attribute:{id:s[e].id,name:s[e].name}});n.dirty=!0}})})),Object.defineProperties(this,t.modelProperties),this[u.DIRTY_PROPERTY_LIST]=new Set([])}return o(e,null,[{key:"create",value:function(t){return new e(t)}}]),e}();l.prototype=s["default"],t["default"]=l,e.exports=t["default"]},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function i(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e,t){var n=t.collection?t.collectionName:t.name,r={configurable:!1,enumerable:!0,get:function(){return this.dataValues[n]}};t.writable&&(r.set=function(e){(!(0,y.isObject)(e)&&e!==this.dataValues[n]||(0,y.isObject)(e))&&(this.dirty=!0,this[A.DIRTY_PROPERTY_LIST].add(n),this.dataValues[n]=e)}),n&&(e[n]=r)}function u(e){var t={},n=(0,v.curry)(a,t);return(e||[]).forEach(n),t}function s(e,t){function n(e){return e.href?e.href.split("/").pop():void 0}var r=t.collection?t.collectionName:t.name,i={persisted:t.persisted,type:T["default"].typeLookup(t.propertyType),required:t.required,min:t.min,max:t.max,owner:t.owner,unique:t.unique,writable:t.writable,constants:t.constants,ordered:Boolean(t.ordered)};("REFERENCE"===i.type||"COLLECTION"===i.type&&"REFERENCE"===t.itemPropertyType)&&(i.referenceType=n(t)),r&&(e[r]=i)}function l(e){var t={},n=(0,v.curry)(s,t);return(e||[]).forEach(n),t}function c(e,t){return function(n){return e&&t&&e.modelDefinition&&e.modelDefinition.modelValidations&&e.modelDefinition.modelValidations[n]&&"COLLECTION"===e.modelDefinition.modelValidations[n].type&&t.hasOwnProperty(e.modelDefinition.modelValidations[n].referenceType)}}function f(e){var t={},n=this.getOwnedPropertyNames(),r=e.getCollectionChildrenPropertyNames();return Object.keys(this.modelValidations).forEach(function(i){n.indexOf(i)>=0&&void 0!==e.dataValues[i]&&null!==e.dataValues[i]&&(-1===r.indexOf(i)?t[i]=e.dataValues[i]:t[i]=Array.from(e.dataValues[i].values()).filter(function(e){return e.id}).map(function(e){var t=e.id;return{id:t}}))}),t}function d(e){return Boolean(e.id)}Object.defineProperty(t,"__esModule",{value:!0});var p=function(e,t,n){for(var r=!0;r;){var i=e,o=t,a=n;r=!1,null===i&&(i=Function.prototype);var u=Object.getOwnPropertyDescriptor(i,o);if(void 0!==u){if("value"in u)return u.value;var s=u.get;if(void 0===s)return;return s.call(a)}var l=Object.getPrototypeOf(i);if(null===l)return;e=l,t=o,n=a,r=!0,u=l=void 0}},h=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),y=n(3),v=n(1),g=n(14),m=r(g),b=n(12),k=r(b),w=n(15),O=r(w),P=n(17),j=r(P),E=n(18),T=r(E),_=n(19),C=r(_),A=n(5),M=n(21),D=function(){function e(t,n,r,i,a,u,s){o(this,e),(0,y.checkType)(t,"string"),(0,y.checkType)(n,"string","Plural"),(0,v.addLockedProperty)(this,"name",t),(0,v.addLockedProperty)(this,"plural",n),(0,v.addLockedProperty)(this,"isSharable",r&&r.shareable||!1),(0,v.addLockedProperty)(this,"isMetaData",r&&r.metadata||!1),(0,v.addLockedProperty)(this,"apiEndpoint",r&&r.apiEndpoint),(0,v.addLockedProperty)(this,"javaClass",r&&r.klass),(0,v.addLockedProperty)(this,"identifiableObject",r&&r.identifiableObject),(0,v.addLockedProperty)(this,"modelProperties",i),(0,v.addLockedProperty)(this,"modelValidations",a),(0,v.addLockedProperty)(this,"attributeProperties",u),(0,v.addLockedProperty)(this,"authorities",s),this.filters=C["default"].getFilters(this),this.getOwnedPropertyJSON=f.bind(this)}return h(e,[{key:"filter",value:function(){return this.clone().filters}},{key:"create",value:function(e){var t=k["default"].create(this),n=t.modelDefinition.modelValidations,r=m["default"].getModelDefinitions(),i=Object.assign({},e);return e?Object.keys(t).forEach(function(o){var a=n[o].hasOwnProperty("referenceType")&&n[o].referenceType||r.hasOwnProperty(o)&&o;a&&r.hasOwnProperty(a)&&Array.isArray(e[o])&&(i[o]=j["default"].create(t,r[a],e[o].map(function(e){return r[a].create(e)}))),t.dataValues[o]=i[o]}):!function(){Object.keys(t).filter(c(t,r)).forEach(function(e){var n=t.modelDefinition.modelValidations[e].referenceType;t.dataValues[e]=j["default"].create(t,r[n],[])});var e=(0,M.getDefaultValuesForModelType)(t.modelDefinition.name),n=c(t,r);Object.keys(t).filter(function(e){return!n(e)}).forEach(function(n){t.dataValues[n]=e[n]})}(),t}},{key:"clone",value:function(){var e=Object.getPrototypeOf(this),t=this.filters.filters,n=Object.create(e);return n=(0,v.copyOwnProperties)(n,this),n.filters=C["default"].getFilters(n),n.filters.filters=t.map(function(e){return e}),n}},{key:"get",value:function(e){var t=this,n=arguments.length<=1||void 0===arguments[1]?{fields:":all,attributeValues[:all,attribute[id,name,displayName]]"}:arguments[1];return(0,y.checkDefined)(e,"Identifier"),Array.isArray(e)?this.list({filter:["id:in:["+e.join(",")+"]"]}):this.api.get([this.apiEndpoint,e].join("/"),n).then(function(e){return t.create(e)})["catch"](function(e){return e.message?Promise.reject(e.message):Promise.reject(e)})}},{key:"list",value:function(){var e=this,t=arguments.length<=0||void 0===arguments[0]?{}:arguments[0],n=this.filters.getFilters();return!(0,y.isDefined)(t.filter)&&n.length&&(t.filter=n),this.api.get(this.apiEndpoint,Object.assign({fields:":all"},t)).then(function(t){return O["default"].create(e,t[e.plural].map(function(t){return e.create(t)}),t.pager)})}},{key:"save",value:function(e){var t=f.bind(this)(e);if(d(e)){var n=e.dataValues.href;return this.api.update(n,t,!0)}return this.api.post(this.apiEndpoint,t)}},{key:"getOwnedPropertyNames",value:function(){var e=this;return Object.keys(this.modelValidations).filter(function(t){return e.modelValidations[t].owner})}},{key:"delete",value:function(e){return e.dataValues.href?this.api["delete"](e.dataValues.href):this.api["delete"]([e.modelDefinition.apiEndpoint,e.dataValues.id].join("/"))}}],[{key:"createFromSchema",value:function(t){var n=arguments.length<=1||void 0===arguments[1]?[]:arguments[1],r=void 0;return(0,y.checkType)(t,Object,"Schema"),r="function"==typeof e.specialClasses[t.name]?e.specialClasses[t.name]:e,Object.freeze(new r(t.name,t.plural,t,Object.freeze(u(t.properties)),Object.freeze(l(t.properties)),n.reduce(function(e,t){return e[t.name]=t,e},{}),t.authorities))}}]),e}(),S=function(e){function t(){o(this,t),p(Object.getPrototypeOf(t.prototype),"constructor",this).apply(this,arguments)}return i(t,e),h(t,[{key:"get",value:function(e){var n=arguments.length<=1||void 0===arguments[1]?{fields:":all,userCredentials[:owner]"}:arguments[1];return p(Object.getPrototypeOf(t.prototype),"get",this).call(this,e,n)}}]),t}(D),V=function(e){function t(){o(this,t),p(Object.getPrototypeOf(t.prototype),"constructor",this).apply(this,arguments)}return i(t,e),h(t,[{key:"create",value:function(){var e=arguments.length<=0||void 0===arguments[0]?{}:arguments[0],n=Object.keys(e).filter(function(e){return"compulsoryDataElementOperands"!==e}).reduce(function(t,n){return t[n]=e[n],t},{}),r=p(Object.getPrototypeOf(t.prototype),"create",this).call(this,n);return r.dataValues.compulsoryDataElementOperands=e.compulsoryDataElementOperands,r}}]),t}(D);D.specialClasses={user:S,dataSet:V},t["default"]=D,e.exports=t["default"]},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(){return i.modelDefinitions?i.modelDefinitions:i.modelDefinitions=new u}Object.defineProperty(t,"__esModule",{value:!0});var o=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),a=n(3),u=function(){function e(){r(this,e)}return o(e,[{key:"add",value:function(e){try{(0,a.checkType)(e.name,"string")}catch(t){throw new Error("Name should be set on the passed ModelDefinition to add one")}if(this[e.name])throw new Error(["Model",e.name,"already exists"].join(" "));this[e.name]=e,(0,a.isType)(e.plural,"string")&&(this[e.plural]=e)}},{key:"mapThroughDefinitions",value:function(e){var t=[],n=void 0;(0,a.checkType)(e,"function","transformer");for(n in this)this.hasOwnProperty(n)&&this[n].plural!==n&&t.push(e(this[n]));return t}}]),e}();u.getModelDefinitions=i,t["default"]=u,e.exports=t["default"]},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function i(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t<e.length;t++)n[t]=e[t];return n}return Array.from(e)}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function a(e){if(e&&e[Symbol.iterator]){var t=[].concat(i(e));t.forEach(function(e){e instanceof d["default"]||(0,c.throwError)("Values of a ModelCollection must be instances of Model")})}}function u(e){if(e&&e[Symbol.iterator]){var t=[].concat(i(e));t.forEach(function(e){(0,l.isValidUid)(e.id)||(0,c.throwError)("Can not add a Model without id to a ModelCollection")})}}Object.defineProperty(t,"__esModule",{value:!0});var s=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),l=n(3),c=n(1),f=n(12),d=r(f),p=n(13),h=r(p),y=n(16),v=r(y),g=function(){function e(t,n,r){var i=this;o(this,e),(0,l.checkType)(t,h["default"]),this.modelDefinition=t,this.pager=new v["default"](r,t),this.valuesContainerMap=new Map,this[Symbol.iterator]=this.valuesContainerMap[Symbol.iterator].bind(this.valuesContainerMap),
a(n),u(n),(0,l.isArray)(n)&&n.forEach(function(e){return i.valuesContainerMap.set(e.id,e)})}return s(e,[{key:"add",value:function(e){return a([e]),u([e]),this.set(e.id,e),this}},{key:"toArray",value:function(){var e=[];return this.forEach(function(t){e.push(t)}),e}},{key:"clear",value:function(){return this.valuesContainerMap.clear.apply(this.valuesContainerMap)}},{key:"delete",value:function(){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n];return this.valuesContainerMap["delete"].apply(this.valuesContainerMap,t)}},{key:"entries",value:function(){return this.valuesContainerMap.entries.apply(this.valuesContainerMap)}},{key:"forEach",value:function(){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n];return this.valuesContainerMap.forEach.apply(this.valuesContainerMap,t)}},{key:"get",value:function(){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n];return this.valuesContainerMap.get.apply(this.valuesContainerMap,t)}},{key:"has",value:function(){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n];return this.valuesContainerMap.has.apply(this.valuesContainerMap,t)}},{key:"keys",value:function(){return this.valuesContainerMap.keys.apply(this.valuesContainerMap)}},{key:"set",value:function(){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n];return this.valuesContainerMap.set.apply(this.valuesContainerMap,t)}},{key:"values",value:function(){return this.valuesContainerMap.values.apply(this.valuesContainerMap)}},{key:"size",get:function(){return this.valuesContainerMap.size}}],[{key:"create",value:function(t,n,r){return new e(t,n,r)}},{key:"throwIfContainsOtherThanModelObjects",value:function(e){return a(e)}},{key:"throwIfContainsModelWithoutUid",value:function(e){return u(e)}}]),e}();t["default"]=g,e.exports=t["default"]},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),o=n(3),a=function(){function e(){var t=arguments.length<=0||void 0===arguments[0]?{page:1,pageCount:1}:arguments[0],n=arguments.length<=1||void 0===arguments[1]?{list:function(){return Promise.reject("No handler available")}}:arguments[1];r(this,e),this.page=t.page,this.pageCount=t.pageCount,this.total=t.total,this.nextPage=t.nextPage,this.prevPage=t.prevPage,this.pagingHandler=n}return i(e,[{key:"hasNextPage",value:function(){return(0,o.isDefined)(this.nextPage)}},{key:"hasPreviousPage",value:function(){return(0,o.isDefined)(this.prevPage)}},{key:"getNextPage",value:function(){return this.hasNextPage()?this.goToPage(this.page+1):Promise.reject("There is no next page for this collection")}},{key:"getPreviousPage",value:function(){return this.hasPreviousPage()?this.goToPage(this.page-1):Promise.reject("There is no previous page for this collection")}},{key:"goToPage",value:function(e){if(1>e)throw new Error("PageNr can not be less than 1");if(e>this.pageCount)throw new Error("PageNr can not be larger than the total page count of "+this.pageCount);return this.pagingHandler.list({page:e})}}]),e}();t["default"]=a,e.exports=t["default"]},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,"__esModule",{value:!0});var a=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=function(e,t,n){for(var r=!0;r;){var i=e,o=t,a=n;r=!1,null===i&&(i=Function.prototype);var u=Object.getOwnPropertyDescriptor(i,o);if(void 0!==u){if("value"in u)return u.value;var s=u.get;if(void 0===s)return;return s.call(a)}var l=Object.getPrototypeOf(i);if(null===l)return;e=l,t=o,n=a,r=!0,u=l=void 0}},s=n(15),l=r(s),c=function(e){function t(e,n,r){i(this,t),u(Object.getPrototypeOf(t.prototype),"constructor",this).call(this,n,r,void 0),this.dirty=!1,this.added=new Set,this.removed=new Set,this.parentModel=e}return o(t,e),a(t,[{key:"add",value:function(e){return this.valuesContainerMap.has(e.id)?this:(u(Object.getPrototypeOf(t.prototype),"add",this).call(this,e),this.removed.has(e.id)?this.removed["delete"](e.id):this.added.add(e.id),this.updateDirty(),this)}},{key:"remove",value:function(e){return l["default"].throwIfContainsOtherThanModelObjects([e]),l["default"].throwIfContainsModelWithoutUid([e]),this["delete"](e.id)&&(this.added.has(e.id)?this.added["delete"](e.id):this.removed.add(e.id)),this.updateDirty(),this}},{key:"updateDirty",value:function(){return this.dirty=this.added.size>0||this.removed.size>0,this.dirty}},{key:"save",value:function(){var e=this;if(!this.dirty)return Promise.reject("Nothing to save!");var t=this.modelDefinition.api,n=[];return this.added.size&&Array.from(this.added).forEach(function(r){n.push(t.post([e.parentModel.href,e.modelDefinition.plural,r].join("/")))}),this.removed.size&&Array.from(this.removed).forEach(function(r){n.push(t["delete"]([e.parentModel.href,e.modelDefinition.plural,r].join("/")))}),Promise.all(n).then(function(){return e.added=new Set,e.removed=new Set,e.updateDirty(),Promise.resolve()})["catch"](function(e){return Promise.reject("Failed to alter collection:",e)})}}],[{key:"create",value:function(e,n,r){return new t(e,n,r)}}]),t}(l["default"]);t["default"]=c,e.exports=t["default"]},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),o=n(1),a=n(3),u=function(){function e(){r(this,e)}return i(e,[{key:"getTypes",value:function(){return["TEXT","NUMBER","INTEGER","BOOLEAN","EMAIL","PASSWORD","URL","PHONENUMBER","GEOLOCATION","COLOR","COMPLEX","COLLECTION","REFERENCE","DATE","COMPLEX","IDENTIFIER","CONSTANT"]}},{key:"typeLookup",value:function(e){return this.getTypes().indexOf(e)>=0&&(0,a.isString)(e)?e:(0,o.throwError)(['Type from schema "',e,'" not found available type list.'].join(""))}}]),e}();t["default"]=new u,e.exports=t["default"]},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var o=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),a=n(3),u=n(20),s=r(u),l=function(){function e(t){i(this,e),this.filters=[],this.modelDefinition=t}return o(e,[{key:"on",value:function(e){return s["default"].getFilter(this).on(e)}},{key:"add",value:function(e){if(!(0,a.isType)(e,s["default"]))throw new TypeError("filter should be an instance of Filter");this.filters.push(e)}},{key:"list",value:function(){return this.modelDefinition.list()}},{key:"getFilters",value:function(){return this.filters.map(function(e){return e.getQueryParamFormat()})}},{key:"getReturn",value:function(){return this.modelDefinition}}],[{key:"getFilters",value:function(t){return new e(t)}}]),e}();t["default"]=l,e.exports=t["default"]},function(e,t,n){"use strict";function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var i=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),o=n(3),a={equals:"eq",like:"like",ilike:"ilike",notEqual:"ne"},u=function(){function e(t){r(this,e),this.filters=t,this.propertyName="name",this.comparator="like",this.filterValue=void 0}return i(e,[{key:"on",value:function(e){return(0,o.checkDefined)(e,"Property name to filter on"),this.propertyName=e,this}},{key:"getQueryParamFormat",value:function(){return[this.propertyName,this.comparator,this.filterValue].join(":")}}],[{key:"getFilter",value:function(t){return new e(t)}}]),e}();Object.keys(a).forEach(function(e){Object.defineProperty(u.prototype,e,{value:function(t){return(0,o.checkDefined)(t,"filterValue"),this.comparator=a[e],this.filterValue=t,this.filters.add(this),this.filters.getReturn()}})}),t["default"]=u,e.exports=t["default"]},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function i(e){return g.has(e)?g.get(e):{}}Object.defineProperty(t,"__esModule",{value:!0}),t.getDefaultValuesForModelType=i;var o=n(22),a=r(o),u=n(23),s=r(u),l=n(24),c=r(l),f=n(25),d=r(f),p=n(26),h=r(p),y=n(27),v=r(y),g=new Map([["organisationUnitGroupSet",a["default"]],["category",s["default"]],["categoryOptionGroupSet",c["default"]],["dataElement",d["default"]],["dataElementGroupSet",h["default"]],["dataSet",v["default"]]]);t.defaultValues=g},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t["default"]={dataDimension:!0},e.exports=t["default"]},22,22,function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t["default"]={aggregationType:"NONE",valueType:"TEXT"},e.exports=t["default"]},22,function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t["default"]={expiryDays:0,openFuturePeriods:0,timelyDays:15},e.exports=t["default"]},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var o=function(){function e(e,t){var n=[],r=!0,i=!1,o=void 0;try{for(var a,u=e[Symbol.iterator]();!(r=(a=u.next()).done)&&(n.push(a.value),!t||n.length!==t);r=!0);}catch(s){i=!0,o=s}finally{try{!r&&u["return"]&&u["return"]()}finally{if(i)throw o}}return n}return function(t,n){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return e(t,n);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),a=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),u=n(7),s=r(u),l=function(){function e(){var t=arguments.length<=0||void 0===arguments[0]?[]:arguments[0],n=arguments.length<=1||void 0===arguments[1]?s["default"].getApi():arguments[1];i(this,e),this.sources=t,this.api=n,this.strings=new Set,this.translations=void 0}return a(e,[{key:"addSource",value:function(e){this.sources.push(e)}},{key:"addStrings",value:function(e){var t=this;"string"==typeof e&&e.trim().length>0?this.strings.add(e.trim()):Array.from(e).filter(function(e){return e&&(""+e).trim().length>0}).forEach(function(e){return t.strings.add(e)})}},{key:"load",value:function(){function e(e){return e.split("\n").reduce(function(e,t){var n=t.split("=").map(function(e){return e.trim()}),r=o(n,2),i=r[0],a=r[1];return void 0===i||void 0===a||e.hasOwnProperty(i)||(e[i]=a.replace(/\\u([0-9a-f]{4})/gi,function(e,t){return String.fromCharCode(parseInt(t,16))})),e},{})}var t=this,n=this;n.translations={};var r=[];return this.sources.forEach(function(t){r.push(n.api.request("GET",t,void 0,{dataType:"text"}).then(function(t){return Promise.resolve(e(t))},function(){return Promise.resolve({})}))}),Promise.all(r).then(function(e){return e.forEach(function(e){Object.keys(e).forEach(function(r){n.translations.hasOwnProperty(r)||(n.translations[r]=e[r]),t.strings["delete"](r)})}),t.strings.size>0?n.api.post("i18n",Array.from(n.strings)).then(function(e){return Object.keys(e).filter(function(t){return t!==e[t]}).forEach(function(t){n.translations[t]=e[t],n.strings["delete"](t)}),Promise.resolve(n.translations)}):Promise.resolve(n.translations)})}},{key:"getTranslation",value:function(e){var t=arguments.length<=1||void 0===arguments[1]?{}:arguments[1];if(void 0===this.translations)throw new Error("Tried to translate before loading translations!");var n=this.translations.hasOwnProperty(e)?this.translations[e]:"** "+e+" **";return Object.keys(t).length?n.replace(/\$\$(.+?)\$\$/gi,function(e,n){return t[n]||""}):n}},{key:"isTranslated",value:function(e){if(void 0===this.translations)throw new Error("Tried to translate before loading translations!");return this.translations.hasOwnProperty(e)}},{key:"getUntranslatedStrings",value:function(){return this.translations?Array.from(this.strings):void 0}}],[{key:"getI18n",value:function(){return new e}}]),e}();t["default"]=l,e.exports=t["default"]},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0});var o=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),a=n(30),u=r(a),s=n(3),l=function(){function e(){i(this,e)}return o(e,null,[{key:"create",value:function(){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n];var r=t.filter(function(e){return e});if(!r.every(function(e){return(0,s.isType)(e,"object")}))throw new Error("Expected Config parameter to have type object");return Object.assign.apply(Object,[{},u["default"]].concat(t))}},{key:"processConfigForD2",value:function(e,t){var n=t.Api.getApi();t.model.ModelDefinition.prototype.api=n,t.models=t.model.ModelDefinitions.getModelDefinitions(),(0,s.isString)(e.baseUrl)?n.setBaseUrl(e.baseUrl):n.setBaseUrl("/api"),e.i18n&&e.i18n.sources&&Array.from(e.i18n.sources).forEach(function(e){return t.i18n.addSource(e)}),e.i18n&&e.i18n.strings&&t.i18n.addStrings(Array.from(e.i18n.strings))}}]),e}();t["default"]=l,e.exports=t["default"]},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=new Set(["categoryOptionCombo"]);t.noCreateAllowedFor=n,t["default"]={baseUrl:"/api",i18n:{sources:new Set,strings:new Set}}},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{"default":e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e){var t=void 0;return t=e.userCredentials?Object.assign({},e.userCredentials,e):Object.assign({},e),Object.keys(t).reduce(function(e,n){return h.has(n)?t[n].map&&(e[v[n]]=t[n].map(function(e){return e.id})):e[n]=t[n],e},{})}function a(e){return e&&d.noCreateAllowedFor.has(e.name)}Object.defineProperty(t,"__esModule",{value:!0});var u=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),s=n(32),l=r(s),c=n(33),f=r(c),d=n(30),p=Symbol("models"),h=new Set(["userCredentials","userGroups","userRoles","organisationUnits","dataViewOrganisationUnits"]),y={READ:["READ"],CREATE:["CREATE","CREATE_PUBLIC","CREATE_PRIVATE"],CREATE_PUBLIC:["CREATE_PUBLIC"],CREATE_PRIVATE:["CREATE_PRIVATE"],DELETE:["DELETE"],UPDATE:["UPDATE"],EXTERNALIZE:["EXTERNALIZE"]},v=Array.from(h).reduce(function(e,t){return e[t]=Symbol(t),e},{}),g=function(){function e(t,n,r,a){i(this,e),Object.assign(this,o(t)),this.authorities=n,this[p]=r,this.userSettings=a}return u(e,[{key:"getUserGroups",value:function(){var e=this[v.userGroups];return this[p].userGroup.get({filter:["id:in:["+e.join(",")+"]"]})}},{key:"getUserRoles",value:function(){var e=this[v.userRoles];return this[p].userRole.get({filter:["id:in:["+e.join(",")+"]"]})}},{key:"getOrganisationUnits",value:function(){var e=arguments.length<=0||void 0===arguments[0]?{fields:":all,displayName,children[id,displayName,path,children::isNotEmpty]"}:arguments[0],t=this[v.organisationUnits];return this[p].organisationUnit.list(Object.assign({},e,{filter:["id:in:["+t.join(",")+"]"]}))}},{key:"getDataViewOrganisationUnits",value:function(){var e=arguments.length<=0||void 0===arguments[0]?{fields:":all,displayName,children[id,displayName,path,children::isNotEmpty]"}:arguments[0],t=this[v.dataViewOrganisationUnits];return this[p].organisationUnit.list(Object.assign({},e,{filter:["id:in:["+t.join(",")+"]"]}))}},{key:"checkAuthorityForType",value:function(e,t){var n=this;return t&&Array.isArray(t.authorities)?t.authorities.filter(function(t){return e.some(function(e){return e===t.type})}).some(function(e){return e.authorities.some(function(e){return n.authorities.has(e)})}):!1}},{key:"checkCreateAuthorityForType",value:function(e,t){return a(t)?!1:this.checkAuthorityForType(e,t)}},{key:"canCreate",value:function(e){return this.checkCreateAuthorityForType(y.CREATE,e)}},{key:"canCreatePublic",value:function(e){return this.checkCreateAuthorityForType(y.CREATE_PUBLIC,e)}},{key:"canCreatePrivate",value:function(e){return this.checkCreateAuthorityForType(y.CREATE_P