{"version":3,"file":"MyContributionStatement.js","mappings":"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","sources":["webpack://portalcomponents/./ClientApp/Components/Shared/Configuration.js","webpack://portalcomponents/./ClientApp/Components/Shared/ComponentBase.js","webpack://portalcomponents/./ClientApp/Components/Shared/I18n.js","webpack://portalcomponents/./ClientApp/Components/Shared/Exceptions.js","webpack://portalcomponents/./ClientApp/Components/Shared/LocalStorageManager.js","webpack://portalcomponents/./ClientApp/Components/Shared/SessionStorageManager.js","webpack://portalcomponents/./ClientApp/Components/Shared/URLSearchParameters.js","webpack://portalcomponents/./ClientApp/Components/Services/OAuthService.js","webpack://portalcomponents/./ClientApp/Components/Services/Ajax.js","webpack://portalcomponents/./ClientApp/Components/Services/ContributionsApiService.js","webpack://portalcomponents/./ClientApp/Components/Services/UserService.js","webpack://portalcomponents/./ClientApp/Components/Helpers/CollapseBuilder.js","webpack://portalcomponents/./ClientApp/Components/Helpers/DateTimeFormatter.js","webpack://portalcomponents/./ClientApp/Components/Shared/UrlUtils.js","webpack://portalcomponents/./ClientApp/Components/Helpers/TextFormatter.js","webpack://portalcomponents/./ClientApp/Components/Helpers/CardBuilder.js","webpack://portalcomponents/./ClientApp/Components/Helpers/MyContributionFormBuilder.js","webpack://portalcomponents/./ClientApp/Components/mpp-my-contribution-statement.js"],"sourcesContent":["function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n/*jshint esversion: 8 */\nvar authConfigurationCache = null;\nexport var Configuration = /*#__PURE__*/function () {\n function Configuration() {\n _classCallCheck(this, Configuration);\n\n this.SCRIPT_NAME = \"/dist/MPWidgets.\";\n }\n\n _createClass(Configuration, [{\n key: \"GetAuthConfiguration\",\n value: function GetAuthConfiguration(useCacheIfAvailable) {\n if (useCacheIfAvailable === true && authConfigurationCache != null) {\n return Promise.resolve(authConfigurationCache);\n }\n\n var appRoot = this.GetAppRoot();\n\n if (appRoot === \"\") {\n return;\n }\n\n var url = \"\".concat(appRoot, \"/Api/Auth\");\n return fetch(url).then(function (authInfo) {\n return authInfo.json().then(function (authConfiguration) {\n authConfigurationCache = authConfiguration;\n return authConfiguration;\n });\n }, function (err) {\n console.error(\"Unable to retrieve auth info!\");\n console.error(err);\n throw new Error(err);\n });\n }\n }, {\n key: \"GetAuthToken\",\n value: function GetAuthToken(cacheKey) {\n var appRoot = this.GetAppRoot();\n var url = \"\".concat(appRoot, \"/Home/Tokens?cacheKey=\").concat(cacheKey);\n return fetch(url).then(function (authInfo) {\n return authInfo.json();\n }, function (err) {\n console.error(\"Unable to retrieve auth token!\");\n console.error(err);\n throw new Error(err);\n });\n }\n }, {\n key: \"GetCSRFToken\",\n value: function GetCSRFToken() {\n var appRoot = this.GetAppRoot();\n var url = \"\".concat(appRoot, \"/Home/CSRFToken\");\n return fetch(url).then(function (authInfo) {\n return authInfo.json();\n }, function (err) {\n console.error(\"Unable to retrieve CSRF token!\");\n console.error(err);\n throw new Error(err);\n });\n }\n }, {\n key: \"GetAppRoot\",\n value: function GetAppRoot() {\n //if (sessionStorage.appRoot) {\n //\treturn sessionStorage.appRoot;\n //} else {\n //Find base URL of main components script and put it into session storage:\n if (document.getElementById(\"MPWidgets\") !== null && document.getElementById(\"MPWidgets\") !== undefined) {\n var currentScriptSrc = document.getElementById(\"MPWidgets\").src;\n\n if (currentScriptSrc) {\n var appRoot = currentScriptSrc.substring(0, currentScriptSrc.indexOf(this.SCRIPT_NAME));\n sessionStorage.appRoot = appRoot;\n return appRoot;\n } else {\n // eslint-disable-next-line no-console\n console.log(\"Error: Could not find script in header of page with id='MPWidgets'\");\n }\n } // }\n\n }\n }, {\n key: \"GetConfigurationSetting\",\n value: function GetConfigurationSetting(keyName) {\n return fetch(\"\".concat(this.GetAppRoot(), \"/Api/ConfigurationApi/GetConfigurationSettingValue?keyName=\").concat(keyName)).then(function (response) {\n return response.text();\n });\n }\n }, {\n key: \"GetCustomStyles\",\n value: function GetCustomStyles() {\n return fetch(\"\".concat(this.GetAppRoot(), \"/Api/ConfigurationApi/GetCustomStyles\")).then(function (response) {\n return response.json();\n });\n }\n }, {\n key: \"GetLocalCountryCode\",\n value: function GetLocalCountryCode(countryList) {\n var result = \"US\";\n\n if (!!window.navigator && !!countryList && !!countryList.length) {\n var locale = window.navigator.language || result;\n var localeParts = locale.split(\"-\");\n var countryCode = localeParts[localeParts.length - 1];\n var matches = countryList.filter(function (country) {\n return country.abbreviation == countryCode;\n });\n\n if (!!matches && matches.length > 0) {\n result = countryCode;\n }\n }\n\n return result;\n }\n }, {\n key: \"GetSiteInfo\",\n value: function GetSiteInfo() {\n var appRoot = this.GetAppRoot();\n var url = \"\".concat(appRoot, \"/api/ConfigurationApi/GetSiteInfo\");\n return fetch(url).then(function (response) {\n if (!response.ok) {\n throw new Error('Failed to fetch site info');\n }\n\n return response.json();\n }).then(function (data) {\n if (_typeof(data) !== 'object' || data === null) {\n throw new Error('Invalid site info data');\n }\n\n return data;\n })[\"catch\"](function () {\n return {};\n });\n }\n }]);\n\n return Configuration;\n}();\nexport var ConfigurationService = new Configuration();","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _wrapNativeSuper(Class) { var _cache = typeof Map === \"function\" ? new Map() : undefined; _wrapNativeSuper = function _wrapNativeSuper(Class) { if (Class === null || !_isNativeFunction(Class)) return Class; if (typeof Class !== \"function\") { throw new TypeError(\"Super expression must either be null or a function\"); } if (typeof _cache !== \"undefined\") { if (_cache.has(Class)) return _cache.get(Class); _cache.set(Class, Wrapper); } function Wrapper() { return _construct(Class, arguments, _getPrototypeOf(this).constructor); } Wrapper.prototype = Object.create(Class.prototype, { constructor: { value: Wrapper, enumerable: false, writable: true, configurable: true } }); return _setPrototypeOf(Wrapper, Class); }; return _wrapNativeSuper(Class); }\n\nfunction _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct; } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _isNativeFunction(fn) { return Function.toString.call(fn).indexOf(\"[native code]\") !== -1; }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n/*jshint esversion: 6 */\nimport { Configuration } from \"./Configuration\";\nexport var ComponentBase = /*#__PURE__*/function (_HTMLElement) {\n _inherits(ComponentBase, _HTMLElement);\n\n var _super = _createSuper(ComponentBase);\n\n function ComponentBase() {\n var _this;\n\n _classCallCheck(this, ComponentBase);\n\n _this = _super.call(this);\n _this._baseRoot = _this.attachShadow({\n mode: \"open\"\n });\n _this._root = document.createElement(\"div\");\n\n _this._baseRoot.appendChild(_this._root);\n\n _this._Init();\n\n return _this;\n }\n\n _createClass(ComponentBase, [{\n key: \"_Init\",\n value: function _Init() {\n this.setStyleFiles();\n }\n }, {\n key: \"setStyleFiles\",\n value: function () {\n var _setStyleFiles = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n var _this2 = this;\n\n var config, customCss;\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n this.customCssUrl = this.getAttribute(\"customCss\");\n config = new Configuration();\n this._appRoot = config.GetAppRoot();\n\n if (this._appRoot) {\n _context.next = 5;\n break;\n }\n\n return _context.abrupt(\"return\");\n\n case 5:\n _context.next = 7;\n return config.GetCustomStyles().then(function (customCssFiles) {\n customCssFiles.forEach(function (cssFile) {\n var customCss = document.createElement('link');\n customCss.rel = \"stylesheet\";\n customCss.type = \"text/css\";\n customCss.media = \"screen\";\n customCss.href = cssFile;\n\n _this2._baseRoot.appendChild(customCss);\n });\n });\n\n case 7:\n if (!!this.customCssUrl) {\n customCss = document.createElement('link');\n customCss.rel = \"stylesheet\";\n customCss.type = \"text/css\";\n customCss.media = \"screen\";\n customCss.href = this.customCssUrl;\n\n this._baseRoot.appendChild(customCss);\n }\n\n case 8:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function setStyleFiles() {\n return _setStyleFiles.apply(this, arguments);\n }\n\n return setStyleFiles;\n }()\n }], [{\n key: \"registerComponent\",\n value: function registerComponent(customElementName, componentType) {\n window.customElements.define(customElementName, componentType);\n Array.from(document.getElementsByClassName(customElementName + \"-widget\")).forEach(function (el) {\n var myWidget = new componentType();\n el.getAttributeNames().forEach(function (attr) {\n if (attr === \"class\") {\n return;\n }\n\n myWidget.setAttribute(attr, el.getAttribute(attr));\n });\n el.appendChild(myWidget);\n });\n }\n }]);\n\n return ComponentBase;\n}( /*#__PURE__*/_wrapNativeSuper(HTMLElement));","function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nimport { Configuration } from \"./Configuration\";\nexport var I18N = /*#__PURE__*/function () {\n function I18N(componentName) {\n _classCallCheck(this, I18N);\n\n this._componentName = componentName;\n this._locale = I18N.GetCurrentLocale();\n var config = new Configuration();\n this._appRoot = config.GetAppRoot();\n return fetch(\"\".concat(this._appRoot, \"/Api/ConfigurationApi/GetLabels?componentName=\").concat(this._componentName, \"&locale=\").concat(this._locale), {\n credentials: \"include\",\n mode: \"cors\",\n withCredentials: true\n }).then(function (response) {\n return response.json();\n });\n /*\r\n \t.catch((a, b) => {\r\n \t\t//TODO: Write this error into HTML:\r\n \t\tconsole.log(\"a\", a);\r\n \t\t//console.log(\"b\", b);\r\n \t\tvar h = this; //.getRootNode().host;\r\n \t\tconsole.log(\"h\", h);\r\n \t\tthis.parentNode.innerHTML = `Error: ${a}`;\r\n });\r\n */\n }\n\n _createClass(I18N, null, [{\n key: \"GetCurrentLocale\",\n value: function GetCurrentLocale() {\n return localStorage.userLocale || \"en\";\n }\n }]);\n\n return I18N;\n}();","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _wrapNativeSuper(Class) { var _cache = typeof Map === \"function\" ? new Map() : undefined; _wrapNativeSuper = function _wrapNativeSuper(Class) { if (Class === null || !_isNativeFunction(Class)) return Class; if (typeof Class !== \"function\") { throw new TypeError(\"Super expression must either be null or a function\"); } if (typeof _cache !== \"undefined\") { if (_cache.has(Class)) return _cache.get(Class); _cache.set(Class, Wrapper); } function Wrapper() { return _construct(Class, arguments, _getPrototypeOf(this).constructor); } Wrapper.prototype = Object.create(Class.prototype, { constructor: { value: Wrapper, enumerable: false, writable: true, configurable: true } }); return _setPrototypeOf(Wrapper, Class); }; return _wrapNativeSuper(Class); }\n\nfunction _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct; } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _isNativeFunction(fn) { return Function.toString.call(fn).indexOf(\"[native code]\") !== -1; }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n/*jshint esversion: 8 */\nexport var ArgumentException = /*#__PURE__*/function (_Error) {\n _inherits(ArgumentException, _Error);\n\n var _super = _createSuper(ArgumentException);\n\n function ArgumentException(argName) {\n _classCallCheck(this, ArgumentException);\n\n return _super.call(this, \"Argument \".concat(argName, \" is invalid, null or undefined\"));\n }\n\n return ArgumentException;\n}( /*#__PURE__*/_wrapNativeSuper(Error));\nexport var ArgumentTypeException = /*#__PURE__*/function (_Error2) {\n _inherits(ArgumentTypeException, _Error2);\n\n var _super2 = _createSuper(ArgumentTypeException);\n\n function ArgumentTypeException(argName) {\n _classCallCheck(this, ArgumentTypeException);\n\n return _super2.call(this, \"Type of argument \".concat(argName, \" is invalid\"));\n }\n\n return ArgumentTypeException;\n}( /*#__PURE__*/_wrapNativeSuper(Error));","function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n/*jshint esversion: 8 */\nimport { ArgumentException } from \"./Exceptions\";\nimport { ArgumentTypeException } from \"./Exceptions\";\n\nvar _getKey = function _getKey(key) {\n return \"mpp-widgets_\".concat(key);\n};\n/**\r\n * Static storage wrapper class. Provides get, set and clear abilities\r\n */\n\n\nexport var LocalStorageManager = /*#__PURE__*/function () {\n function LocalStorageManager() {\n _classCallCheck(this, LocalStorageManager);\n }\n\n _createClass(LocalStorageManager, null, [{\n key: \"setItem\",\n value:\n /**\r\n * Sets item in storage under provided key name\r\n * @param {string} key Key under which item is stored\r\n * @param {object} item Item to be stored\r\n * @throws {ArgumentException}\r\n * @throws {ArgumentTypeException}\r\n */\n function setItem(key, item) {\n if (!key) {\n throw new ArgumentException(\"key\");\n }\n\n if (typeof key !== \"string\") {\n throw new ArgumentTypeException(\"key\");\n }\n\n if (!!window.localStorage && !!window.localStorage.setItem) {\n var fullKey = _getKey(key);\n\n window.localStorage.setItem(fullKey, item);\n }\n }\n /**\r\n * Gets item from storage, if not available returns null\r\n * @param {string} key Key under which item is stored\r\n * @returns {object} Item object if available, otherwise returns null\r\n * @throws {ArgumentException}\r\n * @throws {ArgumentTypeException}\r\n */\n\n }, {\n key: \"getItem\",\n value: function getItem(key) {\n if (!key) {\n throw new ArgumentException(\"key\");\n }\n\n if (typeof key !== \"string\") {\n throw new ArgumentTypeException(\"key\");\n }\n\n var item = null;\n\n if (!!window.localStorage && !!window.localStorage.getItem) {\n var fullKey = _getKey(key);\n\n item = window.localStorage.getItem(fullKey) || null;\n }\n\n return item;\n }\n /**\r\n * Clears all \"context\" items in localStorage\r\n */\n\n }, {\n key: \"clear\",\n value: function clear(startsWith) {\n if (!!window.localStorage && !!window.localStorage.removeItem) {\n var storageKeys = Object.keys(window.localStorage);\n\n if (!!storageKeys.length) {\n var searchFor = _getKey(startsWith);\n\n for (var key in storageKeys) {\n if (!!key) {\n var keyValue = storageKeys[key];\n\n if (!!keyValue && !!keyValue.startsWith && !!keyValue.startsWith(searchFor)) {\n window.localStorage.removeItem(keyValue);\n }\n }\n }\n }\n }\n }\n }]);\n\n return LocalStorageManager;\n}();","function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n/*jshint esversion: 8 */\nimport { ArgumentException } from \"./Exceptions\";\nimport { ArgumentTypeException } from \"./Exceptions\";\n\nvar _getKey = function _getKey(key) {\n return \"mpp-widgets_\".concat(key);\n};\n/**\r\n * Static storage wrapper class. Provides get, set and clear abilities\r\n */\n\n\nexport var SessionStorageManager = /*#__PURE__*/function () {\n function SessionStorageManager() {\n _classCallCheck(this, SessionStorageManager);\n }\n\n _createClass(SessionStorageManager, null, [{\n key: \"setItem\",\n value:\n /**\r\n * Sets item in storage under provided key name\r\n * @param {string} key Key under which item is stored\r\n * @param {object} item Item to be stored\r\n * @throws {ArgumentException}\r\n * @throws {ArgumentTypeException}\r\n */\n function setItem(key, item) {\n if (!key) {\n throw new ArgumentException(\"key\");\n }\n\n if (typeof key !== \"string\") {\n throw new ArgumentTypeException(\"key\");\n }\n\n if (!!window.sessionStorage && !!window.sessionStorage.setItem) {\n var fullKey = _getKey(key);\n\n window.sessionStorage.setItem(fullKey, item);\n }\n }\n /**\r\n * Gets item from storage, if not available returns null\r\n * @param {string} key Key under which item is stored\r\n * @returns {object} Item object if available, otherwise returns null\r\n * @throws {ArgumentException}\r\n * @throws {ArgumentTypeException}\r\n */\n\n }, {\n key: \"getItem\",\n value: function getItem(key) {\n if (!key) {\n throw new ArgumentException(\"key\");\n }\n\n if (typeof key !== \"string\") {\n throw new ArgumentTypeException(\"key\");\n }\n\n var item = null;\n\n if (!!window.sessionStorage && !!window.sessionStorage.getItem) {\n var fullKey = _getKey(key);\n\n item = window.sessionStorage.getItem(fullKey) || null;\n }\n\n return item;\n }\n /**\r\n * Clears all \"context\" items in sessionStorage\r\n */\n\n }, {\n key: \"clear\",\n value: function clear(startsWith) {\n if (!!window.sessionStorage && !!window.sessionStorage.removeItem) {\n var storageKeys = Object.keys(window.sessionStorage);\n\n if (!!storageKeys.length) {\n var searchFor = _getKey(startsWith);\n\n for (var key in storageKeys) {\n if (!!key) {\n var keyValue = storageKeys[key];\n\n if (!!keyValue && !!keyValue.startsWith && !!keyValue.startsWith(searchFor)) {\n window.sessionStorage.removeItem(keyValue);\n }\n }\n }\n }\n }\n }\n }]);\n\n return SessionStorageManager;\n}();","function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nvar privateMethods = {\n getUrlParameter: function getUrlParameter(params, name) {\n name = name.replace(/[\\[]/, '\\\\[').replace(/[\\]]/, '\\\\]');\n var regex = new RegExp('[\\\\?&]' + name + '=([^&#]*)');\n var results = regex.exec(params);\n return results === null ? '' : decodeURIComponent(results[1].replace(/\\+/g, ' '));\n }\n};\nexport var URLSearchParameters = /*#__PURE__*/function () {\n /**\r\n * @return {URLSearchParameters}\r\n */\n function URLSearchParameters(params) {\n _classCallCheck(this, URLSearchParameters);\n\n this._params = params;\n if (URLSearchParams) this._urlSearchParams = new URLSearchParams(this._params);\n return this;\n }\n\n _createClass(URLSearchParameters, [{\n key: \"get\",\n value: function get(name) {\n if (this._params === \"\") return \"\";\n return URLSearchParams ? this._urlSearchParams.get(name) : privateMethods.getUrlParameter.call(this._params, name);\n }\n }, {\n key: \"has\",\n value: function has(name) {\n if (this._params === \"\") return false;\n\n if (URLSearchParams) {\n return this._urlSearchParams.has(name);\n } else {\n var param = privateMethods.getUrlParameter.call(this._params, name);\n return param !== undefined;\n }\n }\n }, {\n key: \"toString\",\n value: function toString() {\n return this._params ? this._params.substr(1) : \"\";\n }\n }, {\n key: \"isValid\",\n value: function isValid() {\n return this._params !== \"\";\n }\n }]);\n\n return URLSearchParameters;\n}();","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n/* jshint esversion: 8 */\nimport { ConfigurationService } from '../Shared/Configuration';\nimport { LocalStorageManager } from '../Shared/LocalStorageManager';\nimport { SessionStorageManager } from '../Shared/SessionStorageManager';\nimport { URLSearchParameters } from '../Shared/URLSearchParameters';\nvar _tokenKeyName = \"AuthToken\";\nvar _idTokenKeyName = \"IdToken\";\nvar _expiresAfterName = \"ExpiresAfter\";\nvar _csrfToken = \"CSRFToken\";\nwindow.mppw_refreshTokenPromise = null;\nexport var OAuthService = /*#__PURE__*/function () {\n function OAuthService() {\n _classCallCheck(this, OAuthService);\n }\n\n _createClass(OAuthService, null, [{\n key: \"Token\",\n get: function get() {\n var tokenValue = LocalStorageManager.getItem(_tokenKeyName);\n var token = tokenValue === \"null\" ? null : tokenValue;\n return token;\n },\n set: function set(token) {\n LocalStorageManager.setItem(_tokenKeyName, token);\n }\n }, {\n key: \"IdToken\",\n get: function get() {\n var idTokenValue = LocalStorageManager.getItem(_idTokenKeyName);\n var idToken = idTokenValue === \"null\" ? null : idTokenValue;\n return idToken;\n },\n set: function set(idToken) {\n LocalStorageManager.setItem(_idTokenKeyName, idToken);\n }\n }, {\n key: \"ExpiresAfter\",\n get: function get() {\n var expiresAfterValue = LocalStorageManager.getItem(_expiresAfterName);\n var expiresAfter = expiresAfterValue === \"null\" ? null : new Date(expiresAfterValue);\n return expiresAfter;\n },\n set: function set(expiresAfter) {\n LocalStorageManager.setItem(_expiresAfterName, expiresAfter);\n }\n }, {\n key: \"CSRFToken\",\n get: function get() {\n try {\n var token = JSON.parse(SessionStorageManager.getItem(_csrfToken));\n return token;\n } catch (_unused) {\n return null;\n }\n },\n set: function set(token) {\n SessionStorageManager.setItem(_csrfToken, JSON.stringify(token));\n }\n }, {\n key: \"SignIn\",\n value: function SignIn() {\n ConfigurationService.GetAuthConfiguration().then(function (oauthConfig) {\n if (!!oauthConfig) {\n var url = \"\".concat(oauthConfig.signInUrl, \"?\") + \"response_type=\".concat(oauthConfig.responseType) + \"&scope=\".concat(oauthConfig.scope) + \"&client_id=\".concat(oauthConfig.clientId) + \"&redirect_uri=\".concat(oauthConfig.redirectUrl) + \"&nonce=\".concat(oauthConfig.nonce) + \"&state=\".concat(encodeURIComponent(window.location));\n OAuthService.Token = null;\n window.location.replace(url);\n }\n });\n }\n }, {\n key: \"SignOut\",\n value: function SignOut() {\n ConfigurationService.GetAuthConfiguration(true).then(function (oauthConfig) {\n if (!!oauthConfig) {\n var url = \"\".concat(oauthConfig.signOutUrl, \"?\") + \"id_token_hint=\".concat(OAuthService.IdToken) + \"&post_logout_redirect_uri=\".concat(oauthConfig.postLogoutRedirectUrl) + \"&state=\".concat(encodeURI(window.location));\n OAuthService.Token = null;\n OAuthService.IdToken = null;\n window.location.replace(url);\n }\n });\n }\n }, {\n key: \"SaveCSRFTokenAsync\",\n value: function () {\n var _SaveCSRFTokenAsync = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n var result;\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return ConfigurationService.GetCSRFToken();\n\n case 2:\n result = _context.sent;\n OAuthService.CSRFToken = result;\n\n case 4:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n function SaveCSRFTokenAsync() {\n return _SaveCSRFTokenAsync.apply(this, arguments);\n }\n\n return SaveCSRFTokenAsync;\n }()\n }, {\n key: \"SaveAuthTokensAsync\",\n value: function () {\n var _SaveAuthTokensAsync = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {\n var tokenParamName, userSearchParameters, token, url, tokens;\n return regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n tokenParamName = \"cacheKey\";\n userSearchParameters = new URLSearchParameters(window.location.search);\n token = userSearchParameters.get(tokenParamName);\n\n if (!token) {\n _context2.next = 9;\n break;\n }\n\n if (!!window.history && !!window.history.replaceState && !!token) {\n url = String(window.location);\n url = url.replace(\"?\" + tokenParamName + \"=\", \"\").replace(\"&\" + tokenParamName + \"=\", \"\").replace(token, \"\");\n window.history.replaceState({}, document.title, url);\n }\n\n _context2.next = 7;\n return ConfigurationService.GetAuthToken(token);\n\n case 7:\n tokens = _context2.sent;\n\n OAuthService._SaveTokens(tokens);\n\n case 9:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n\n function SaveAuthTokensAsync() {\n return _SaveAuthTokensAsync.apply(this, arguments);\n }\n\n return SaveAuthTokensAsync;\n }()\n }, {\n key: \"RefreshTokensAsync\",\n value: function () {\n var _RefreshTokensAsync = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() {\n return regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n if (!(window.mppw_refreshTokenPromise != null)) {\n _context3.next = 2;\n break;\n }\n\n return _context3.abrupt(\"return\", window.mppw_refreshTokenPromise);\n\n case 2:\n // Put RE-AUTH promise into a global var so that other requests may reuse existing promise until it is resolved\n window.mppw_refreshTokenPromise = new Promise(function (resolve) {\n if (!OAuthService.Token || !OAuthService.IdToken || !OAuthService.ExpiresAfter) {\n resolve();\n return;\n }\n\n ConfigurationService.GetAuthConfiguration(true).then(function (oauthConfig) {\n if (!!oauthConfig) {\n var url = \"\".concat(oauthConfig.signInUrl, \"?\") + \"response_type=\".concat(oauthConfig.responseType) + \"&scope=\".concat(oauthConfig.scope) + \"&client_id=\".concat(oauthConfig.clientId) + \"&redirect_uri=\".concat(oauthConfig.redirectUrl) + \"&nonce=\".concat(oauthConfig.nonce) + \"&state=REAUTH\";\n fetch(url, {\n credentials: \"include\"\n }).then(function (response) {\n return response.json().then(function (tokens) {\n OAuthService._SaveTokens(tokens);\n\n resolve();\n })[\"catch\"](function () {\n OAuthService._ClearTokens();\n\n resolve();\n });\n })[\"catch\"](function () {\n OAuthService._ClearTokens();\n\n resolve();\n });\n }\n });\n })[\"finally\"](function () {\n // Remove resolved promise from the global var\n window.mppw_refreshTokenPromise = null;\n });\n return _context3.abrupt(\"return\", window.mppw_refreshTokenPromise);\n\n case 4:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n\n function RefreshTokensAsync() {\n return _RefreshTokensAsync.apply(this, arguments);\n }\n\n return RefreshTokensAsync;\n }()\n }, {\n key: \"_SaveTokens\",\n value: function _SaveTokens(tokens) {\n OAuthService.Token = tokens.accessToken;\n OAuthService.IdToken = tokens.idToken;\n var expiresAfter = new Date();\n expiresAfter.setSeconds(expiresAfter.getSeconds() + tokens.expiresIn - 60);\n OAuthService.ExpiresAfter = expiresAfter;\n }\n }, {\n key: \"_ClearTokens\",\n value: function _ClearTokens() {\n OAuthService.Token = null;\n OAuthService.IdToken = null;\n OAuthService.ExpiresAfter = null;\n }\n }]);\n\n return OAuthService;\n}();","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nimport { OAuthService } from './OAuthService'; // adapted from: https://stackoverflow.com/questions/51297206/fetch-api-global-error-handler\n\nvar _addAuth = function _addAuth(options) {\n options = options || {};\n\n if (!!OAuthService.Token) {\n options.credentials = \"include\";\n options.withCredentials = true;\n options.headers = options.headers || {};\n options.headers.Authorization = \"Bearer \".concat(OAuthService.Token);\n }\n\n return options;\n};\n\nvar _addCSRF = function _addCSRF(options) {\n return new Promise(function (resolve) {\n options = options || {};\n options.headers = options.headers || {};\n\n if (!!OAuthService.CSRFToken && !!OAuthService.CSRFToken.token && !!OAuthService.CSRFToken.expiresAfterUtc) {\n var expiresAfterUTC = new Date(OAuthService.CSRFToken.expiresAfterUtc);\n\n var nowUTC = _getCurrentUTCDateTime();\n\n if (nowUTC >= expiresAfterUTC) {\n OAuthService.SaveCSRFTokenAsync().then(function () {\n options.headers[\"x-csrf-token\"] = OAuthService.CSRFToken.token;\n resolve(options);\n });\n } else {\n options.headers[\"x-csrf-token\"] = OAuthService.CSRFToken.token;\n resolve(options);\n }\n } else {\n resolve(options);\n }\n });\n};\n\nvar _getCurrentUTCDateTime = function _getCurrentUTCDateTime() {\n var now = new Date();\n var utcDateTime = Date.UTC(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate(), now.getUTCHours(), now.getUTCMinutes(), now.getUTCSeconds(), now.getUTCMilliseconds());\n return utcDateTime;\n};\n\nvar _htmlSanitizer = /<\\/?(embed|form|frame|frameset|html|iframe|input|keygen|link|meta|noembed|noframes|noscript|object|plaintext|pre|script|select|style|svg|video|wbr|xmp)[^>]*>/ig;\nvar _eventSanitizer = /(<[^>]+\\s)on[^=]+/ig;\n\nvar _htmlSanitize = function _htmlSanitize(textObj) {\n var sanitize = function sanitize(str) {\n return str.replace(_htmlSanitizer, \"\").replace(_eventSanitizer, \"$1 sanitizedEvent\");\n };\n\n var cleanKeys = function cleanKeys(obj, depth) {\n if (!obj) {\n return obj;\n }\n\n Object.getOwnPropertyNames(obj).forEach(function (key) {\n if (typeof obj[key] === \"string\") {\n obj[key] = sanitize(obj[key]);\n }\n\n if (_typeof(obj[key]) === \"object\" && depth < 40) {\n obj[key] = cleanKeys(obj[key], depth + 1);\n }\n });\n return obj;\n };\n\n return cleanKeys(textObj, 0);\n};\n\nexport var Ajax = /*#__PURE__*/function () {\n function Ajax() {\n _classCallCheck(this, Ajax);\n }\n\n _createClass(Ajax, null, [{\n key: \"Get\",\n value: function Get(url) {\n return Ajax.RefreshTokensIfNeededAsync().then(function () {\n return new Promise(function (resolve, reject) {\n var options = _addAuth();\n\n fetch(url, options).then(function (response) {\n if (response.ok) {\n response.json().then(function (json) {\n resolve(_htmlSanitize(json));\n })[\"catch\"](function (err) {\n reject(err);\n });\n } else {\n if (response.status === 401) {\n OAuthService.SignIn();\n } else {\n reject(response);\n }\n }\n });\n });\n });\n }\n }, {\n key: \"Post\",\n value: function () {\n var _Post = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(url, data, additionalHeaders) {\n var retry,\n options,\n response,\n json,\n err,\n _args = arguments;\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n retry = _args.length > 3 && _args[3] !== undefined ? _args[3] : true;\n _context.next = 3;\n return Ajax.RefreshTokensIfNeededAsync();\n\n case 3:\n options = _addAuth({\n method: \"POST\",\n body: data\n });\n\n if (additionalHeaders) {\n Object.keys(additionalHeaders).forEach(function (header) {\n options.headers[header] = additionalHeaders[header];\n });\n }\n\n _context.next = 7;\n return _addCSRF(options);\n\n case 7:\n options = _context.sent;\n _context.prev = 8;\n _context.next = 11;\n return fetch(url, options);\n\n case 11:\n response = _context.sent;\n\n if (!response.ok) {\n _context.next = 21;\n break;\n }\n\n _context.next = 15;\n return response.json();\n\n case 15:\n json = _context.sent;\n _context.next = 18;\n return _htmlSanitize(json);\n\n case 18:\n return _context.abrupt(\"return\", _context.sent);\n\n case 21:\n _context.next = 23;\n return response.json();\n\n case 23:\n err = _context.sent;\n throw err;\n\n case 25:\n _context.next = 36;\n break;\n\n case 27:\n _context.prev = 27;\n _context.t0 = _context[\"catch\"](8);\n\n if (!(retry && _context.t0.SecondaryStatusCode && _context.t0.SecondaryStatusCode === \"CSRF\")) {\n _context.next = 35;\n break;\n }\n\n _context.next = 32;\n return OAuthService.SaveCSRFTokenAsync();\n\n case 32:\n return _context.abrupt(\"return\", this.Post(url, data, additionalHeaders, false));\n\n case 35:\n throw _context.t0;\n\n case 36:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this, [[8, 27]]);\n }));\n\n function Post(_x, _x2, _x3) {\n return _Post.apply(this, arguments);\n }\n\n return Post;\n }()\n }, {\n key: \"RefreshTokensIfNeededAsync\",\n value: function () {\n var _RefreshTokensIfNeededAsync = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {\n var currentTime, expiresAfter;\n return regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n currentTime = new Date();\n expiresAfter = OAuthService.ExpiresAfter;\n\n if (!(currentTime > expiresAfter)) {\n _context2.next = 5;\n break;\n }\n\n _context2.next = 5;\n return OAuthService.RefreshTokensAsync();\n\n case 5:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n\n function RefreshTokensIfNeededAsync() {\n return _RefreshTokensIfNeededAsync.apply(this, arguments);\n }\n\n return RefreshTokensIfNeededAsync;\n }()\n }]);\n\n return Ajax;\n}();","function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nimport { Configuration } from \"../Shared/Configuration\";\nimport { Ajax } from \"./Ajax\";\nexport var ContributionsApiService = /*#__PURE__*/function () {\n function ContributionsApiService() {\n _classCallCheck(this, ContributionsApiService);\n\n var config = new Configuration();\n this._appRoot = config.GetAppRoot();\n }\n\n _createClass(ContributionsApiService, [{\n key: \"GetMyContributions\",\n value: function GetMyContributions() {\n var url = \"\".concat(this._appRoot, \"/Api/ContributionsApi/MyContributionStatement\");\n return Ajax.Get(url);\n }\n }, {\n key: \"SetStatementMethod\",\n value: function SetStatementMethod(goPaperless) {\n var url = \"\".concat(this._appRoot, \"/Api/ContributionsApi/SetStatementMethod?goPaperless=\").concat(goPaperless);\n return Ajax.Get(url);\n }\n }]);\n\n return ContributionsApiService;\n}();","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n/* jshint esversion: 8 */\nimport { ConfigurationService } from \"../Shared/Configuration\";\nimport { Ajax } from \"./Ajax\";\nimport { I18N } from \"../Shared/I18n\";\nimport { OAuthService } from \"./OAuthService\";\nexport var UserService = /*#__PURE__*/function () {\n function UserService() {\n _classCallCheck(this, UserService);\n }\n\n _createClass(UserService, null, [{\n key: \"GetCurrentUser\",\n value: function () {\n var _GetCurrentUser = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n var i18n, userNotAuthenticatedMsg, userNotFoundMsg, appRoot, url, currentUser;\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return new I18N(\"mpp-user-service\");\n\n case 2:\n i18n = _context.sent;\n userNotAuthenticatedMsg = i18n.notAuthenticatedMessage;\n userNotFoundMsg = i18n.userNotFound; // Get configuration\n\n appRoot = ConfigurationService.GetAppRoot();\n url = \"\".concat(appRoot, \"/Api/Auth/User\"); // Get current user\n\n currentUser = new Promise(function (resolve, reject) {\n Ajax.Get(url).then(function (userInfo) {\n if (!!userInfo) {\n resolve(userInfo);\n } else {\n console.info(userNotAuthenticatedMsg);\n reject(userNotFoundMsg);\n }\n }, function () {\n console.info(userNotAuthenticatedMsg);\n reject(userNotFoundMsg);\n });\n }); // Return currentUser\n\n _context.next = 10;\n return currentUser;\n\n case 10:\n return _context.abrupt(\"return\", _context.sent);\n\n case 11:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n function GetCurrentUser() {\n return _GetCurrentUser.apply(this, arguments);\n }\n\n return GetCurrentUser;\n }()\n }, {\n key: \"GetCurrentUserAttributes\",\n value: function () {\n var _GetCurrentUserAttributes = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {\n var appRoot, url, currentUserAttributes;\n return regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n // Get configuration\n appRoot = ConfigurationService.GetAppRoot();\n url = \"\".concat(appRoot, \"/Api/Attributes/ContactAttributes\"); // Get current user attributes\n\n currentUserAttributes = new Promise(function (resolve, reject) {\n Ajax.Get(url).then(function (userAttributesInfo) {\n if (!!userAttributesInfo) {\n resolve(userAttributesInfo);\n } else {\n reject(0);\n }\n }, function () {\n reject(0);\n });\n }); // Return currentUser\n\n _context2.next = 5;\n return currentUserAttributes;\n\n case 5:\n return _context2.abrupt(\"return\", _context2.sent);\n\n case 6:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n\n function GetCurrentUserAttributes() {\n return _GetCurrentUserAttributes.apply(this, arguments);\n }\n\n return GetCurrentUserAttributes;\n }()\n }, {\n key: \"GetAllActiveAttributes\",\n value: function () {\n var _GetAllActiveAttributes = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() {\n var appRoot, url, allActiveAttributes;\n return regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n // Get configuration\n appRoot = ConfigurationService.GetAppRoot();\n url = \"\".concat(appRoot, \"/Api/Attributes/Available\");\n allActiveAttributes = new Promise(function (resolve, reject) {\n Ajax.Get(url).then(function (allAttributesInfo) {\n if (!!allAttributesInfo) {\n resolve(allAttributesInfo);\n } else {\n reject(0);\n }\n }, function () {\n reject(0);\n });\n }); // Return all attributes\n\n _context3.next = 5;\n return allActiveAttributes;\n\n case 5:\n return _context3.abrupt(\"return\", _context3.sent);\n\n case 6:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n\n function GetAllActiveAttributes() {\n return _GetAllActiveAttributes.apply(this, arguments);\n }\n\n return GetAllActiveAttributes;\n }()\n }, {\n key: \"SaveUserAttributes\",\n value: function () {\n var _SaveUserAttributes = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee4(data) {\n var appRoot, url, allActiveAttributes;\n return regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n // Get configuration\n appRoot = ConfigurationService.GetAppRoot();\n url = \"\".concat(appRoot, \"/Api/Attributes\");\n allActiveAttributes = new Promise(function (resolve, reject) {\n Ajax.Post(url, data, {\n 'Content-Type': \"application/json\"\n }).then(function () {\n resolve(1);\n }, function (err) {\n reject(err);\n });\n }); // Return all attributes\n\n _context4.next = 5;\n return allActiveAttributes;\n\n case 5:\n return _context4.abrupt(\"return\", _context4.sent);\n\n case 6:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4);\n }));\n\n function SaveUserAttributes(_x) {\n return _SaveUserAttributes.apply(this, arguments);\n }\n\n return SaveUserAttributes;\n }()\n }]);\n\n return UserService;\n}();","function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nexport var CollapseBuilder = /*#__PURE__*/function () {\n function CollapseBuilder() {\n _classCallCheck(this, CollapseBuilder);\n }\n\n _createClass(CollapseBuilder, null, [{\n key: \"BuildCollapse\",\n value: //static _toggleCollapse(event) {\n //\tconst $collapseLabel = event.currentTarget;\n //\t$collapseLabel.innerText = $collapseLabel.previousElementSibling.checked ? 'Show Description' : 'Hide Description';\n //}\n function BuildCollapse(id, description, noDescriptionText, showDescriptionText, hideDescriptionText) {\n return \"
\\n\\t\\t\\t\\n\\t\\t\\t\\n\\t\\t\\t\\n\\t\\t\\t
\\n\\t\\t\\t\\t

\").concat(description === null ? noDescriptionText : description, \"

\\n\\t\\t\\t
\\n\\t\\t
\");\n }\n }]);\n\n return CollapseBuilder;\n}();","function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n/*jshint esversion: 6 */\nimport { StringUtils } from \"./StringUtils\";\nexport var DateTimeFormatter = /*#__PURE__*/function () {\n function DateTimeFormatter() {\n _classCallCheck(this, DateTimeFormatter);\n\n this._locale = localStorage.userLocale || \"en\";\n this._dayMonthOptions = {\n month: 'short',\n day: 'numeric'\n };\n this._shortOptions = {\n weekday: 'short',\n year: 'numeric',\n month: 'short',\n day: 'numeric'\n };\n this._timeOptions = {\n hour: 'numeric',\n minute: '2-digit'\n };\n this._weekDays = ['Sundays', 'Mondays', 'Tuesdays', 'Wednesdays', 'Thursdays', 'Fridays', 'Saturdays'];\n }\n /**\r\n * This function is needed to normalize date/time string value without timezone offset specified\r\n * which causes issues in Safari browsers\r\n * @param {*} dateValue - date time string\r\n */\n\n\n _createClass(DateTimeFormatter, [{\n key: \"NormalizeDateTime\",\n value: function NormalizeDateTime(dateValue) {\n if (!dateValue) return null;\n var parts = dateValue.split(/[^0-9]/).map(Number);\n\n var _parts = _slicedToArray(parts, 6),\n year = _parts[0],\n month = _parts[1],\n day = _parts[2],\n hour = _parts[3],\n minute = _parts[4],\n second = _parts[5];\n\n return parts.length >= 3 ? new Date(year, month - 1, day, hour || 0, minute || 0, second || 0) : null;\n }\n }, {\n key: \"ToShortDate\",\n value: function ToShortDate(dateValue) {\n if (!(dateValue = this.NormalizeDateTime(dateValue))) {\n return \"\";\n }\n\n var d = new Date(dateValue);\n return d.toLocaleDateString(this._locale, this._shortOptions);\n }\n }, {\n key: \"ToShortDateTime\",\n value: function ToShortDateTime(dateValue) {\n if (!(dateValue = this.NormalizeDateTime(dateValue))) {\n return \"\";\n }\n\n var d = new Date(dateValue);\n return d.toLocaleDateString(this._locale, this._shortOptions) + ' ' + d.toLocaleTimeString(this._locale, this._timeOptions);\n }\n }, {\n key: \"ToShortTime\",\n value: function ToShortTime(dateValue) {\n if (!(dateValue = this.NormalizeDateTime(dateValue))) {\n return \"\";\n }\n\n var d = new Date(dateValue);\n return d.toLocaleTimeString(this._locale, this._timeOptions);\n }\n }, {\n key: \"ToShortDateRange\",\n value: function ToShortDateRange(startDate, endDate) {\n if (!(startDate = this.NormalizeDateTime(startDate)) || !(endDate = this.NormalizeDateTime(endDate))) {\n return \"\";\n }\n\n startDate = new Date(startDate);\n endDate = new Date(endDate);\n var start = startDate.toLocaleDateString(this._locale, this._shortOptions);\n var end = endDate.toLocaleDateString(this._locale, this._shortOptions);\n return start + ' - ' + end;\n }\n }, {\n key: \"ToShortDayMonthOnlyRange\",\n value: function ToShortDayMonthOnlyRange(startDate, endDate) {\n if (!(startDate = this.NormalizeDateTime(startDate)) || !(endDate = this.NormalizeDateTime(endDate))) {\n return \"\";\n }\n\n startDate = new Date(startDate);\n endDate = new Date(endDate);\n var start = startDate.toLocaleDateString(this._locale, this._dayMonthOptions);\n var end = endDate.toLocaleDateString(this._locale, this._dayMonthOptions);\n return start + ' - ' + end;\n }\n }, {\n key: \"ToShortDateTimeRange\",\n value: function ToShortDateTimeRange(startDate, endDate) {\n if (!(startDate = this.NormalizeDateTime(startDate)) || !(endDate = this.NormalizeDateTime(endDate))) {\n return \"\";\n }\n\n startDate = new Date(startDate);\n endDate = new Date(endDate);\n var start = startDate.toLocaleDateString(this._locale, this._shortOptions);\n var end = endDate.toLocaleDateString(this._locale, this._shortOptions);\n\n if (start === end) {\n return start + ' ' + startDate.toLocaleTimeString(this._locale, this._timeOptions) + ' - ' + endDate.toLocaleTimeString(this._locale, this._timeOptions);\n } else {\n return start + ' ' + startDate.toLocaleTimeString(this._locale, this._timeOptions) + ' - ' + end + ' ' + endDate.toLocaleTimeString(this._locale, this._timeOptions);\n }\n }\n }, {\n key: \"IsInThePast\",\n value: function IsInThePast(dateValue) {\n if (!(dateValue = this.NormalizeDateTime(dateValue))) {\n return false;\n }\n\n return new Date(dateValue) < new Date();\n }\n }, {\n key: \"IsBeforeThisDate\",\n value: function IsBeforeThisDate(dateValue, dateValueToCompare) {\n if (!(dateValue = this.NormalizeDateTime(dateValue))) {\n return false;\n }\n\n if (!(dateValueToCompare = this.NormalizeDateTime(dateValueToCompare))) {\n return false;\n }\n\n return new Date(dateValue) < new Date(dateValueToCompare);\n }\n }, {\n key: \"IsAfterThisDate\",\n value: function IsAfterThisDate(dateValue, dateValueToCompare) {\n if (!(dateValue = this.NormalizeDateTime(dateValue))) {\n return false;\n }\n\n if (!(dateValueToCompare = this.NormalizeDateTime(dateValueToCompare))) {\n return false;\n }\n\n return new Date(dateValue) > new Date(dateValueToCompare);\n }\n }, {\n key: \"GetDayOfWeekFromString\",\n value: function GetDayOfWeekFromString(dayOfWeek) {\n return this._weekDays.indexOf(dayOfWeek);\n }\n }, {\n key: \"GetDayOfWeekAfterThisDate\",\n value: function GetDayOfWeekAfterThisDate(dateValue, dayOfWeek) {\n if (!(dateValue = this.NormalizeDateTime(dateValue))) {\n return false;\n }\n\n var finalDate = new Date(dateValue);\n var currentDayOfWeek = finalDate.getDay();\n var targetDayOfWeek = this.GetDayOfWeekFromString(dayOfWeek);\n\n while (currentDayOfWeek !== targetDayOfWeek) {\n finalDate.setDate(finalDate.getDate() + 1);\n currentDayOfWeek = finalDate.getDay();\n }\n\n return finalDate;\n }\n }, {\n key: \"ToShortDateFormatted\",\n value: function ToShortDateFormatted(dateValue) {\n var standardFormat = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n if (!(dateValue = this.NormalizeDateTime(dateValue))) {\n return false;\n }\n\n var d = dateValue ? new Date(dateValue) : new Date();\n var dd = d.getDate();\n var mm = d.getMonth() + 1;\n var yyyy = d.getFullYear();\n\n if (dd < 10) {\n dd = '0' + dd;\n }\n\n if (mm < 10) {\n mm = '0' + mm;\n }\n\n if (standardFormat === true) {\n return mm + '/' + dd + '/' + yyyy;\n } else {\n return yyyy + '-' + mm + '-' + dd;\n }\n }\n }, {\n key: \"MonthDiff\",\n value: function MonthDiff(a, b) {\n if (a.getDate() < b.getDate()) {\n // end-of-month calculations work correct when the start month has more\n // days than the end month.\n return -this.MonthDiff(b, a);\n } // difference in months\n\n\n var wholeMonthDiff = (b.getFullYear() - a.getFullYear()) * 12 + (b.getMonth() - a.getMonth()); // b is in (anchor - 1 month, anchor + 1 month)\n\n var clonedA = new Date(a);\n var anchor = clonedA.setMonth(clonedA.getMonth() + wholeMonthDiff);\n var anchor2;\n var adjust;\n\n if (b - anchor < 0) {\n var cloned2A = new Date(a);\n anchor2 = cloned2A.setMonth(cloned2A.getMonth() + wholeMonthDiff - 1); // linear across the month\n\n adjust = (b - anchor) / (anchor - anchor2);\n } else {\n var _cloned2A = new Date(a);\n\n anchor2 = _cloned2A.setMonth(_cloned2A.getMonth() + wholeMonthDiff + 1); // linear across the month\n\n adjust = (b - anchor) / (anchor2 - anchor);\n } //check for negative zero, return zero if negative zero\n\n\n return Math.floor(wholeMonthDiff + adjust) || 0;\n }\n }, {\n key: \"YearDiff\",\n value: function YearDiff(a, b) {\n return Math.floor(this.MonthDiff(a, b) / 12);\n }\n }]);\n\n return DateTimeFormatter;\n}();","function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nexport var UrlUtils = /*#__PURE__*/function () {\n function UrlUtils() {\n _classCallCheck(this, UrlUtils);\n }\n\n _createClass(UrlUtils, null, [{\n key: \"AddQueryStringParams\",\n value: function AddQueryStringParams(url, params) {\n var result = url || \"\";\n\n if (params != null) {\n // let's lose the hash\n if (result.indexOf(\"#\") !== -1) {\n result = result.split(\"#\")[0];\n }\n\n var questionMarkIdx = result.indexOf(\"?\");\n\n if (questionMarkIdx === -1) {\n result += \"?\";\n } else if (questionMarkIdx < result.length - 1) {\n result += \"&\";\n }\n\n result += Object.entries(params).map(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n key = _ref2[0],\n value = _ref2[1];\n\n return \"\".concat(key, \"=\").concat(value !== null && value !== void 0 ? value : \"\");\n }).join(\"&\");\n }\n\n return result;\n }\n }]);\n\n return UrlUtils;\n}();","function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n/*jshint esversion: 6 */\nexport var TextFormatter = /*#__PURE__*/function () {\n function TextFormatter(value) {\n _classCallCheck(this, TextFormatter);\n\n this._value = !!value ? String(value) : \"\";\n }\n /**\r\n * This function is needed to honor line breaks\r\n * @param {*} textValue - string\r\n */\n\n\n _createClass(TextFormatter, [{\n key: \"addLineBreaks\",\n value: function addLineBreaks() {\n return this._value.replace(/(?:\\r\\n|\\r|\\n)/g, \"
\");\n }\n }]);\n\n return TextFormatter;\n}();","function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n/*jshint esversion: 6 */\nimport { CollapseBuilder } from \"./CollapseBuilder\";\nimport { Configuration } from \"../Shared/Configuration\";\nimport { DateTimeFormatter } from \"./DateTimeFormatter\";\nimport { UrlUtils } from \"../Shared/UrlUtils\";\nimport { TextFormatter } from \"./TextFormatter\";\nexport var CardBuilder = /*#__PURE__*/function () {\n function CardBuilder() {\n _classCallCheck(this, CardBuilder);\n }\n\n _createClass(CardBuilder, null, [{\n key: \"BuildBadge\",\n value: function BuildBadge(isBadge, badgeText) {\n var cardClass = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : \"mpp-card\";\n\n if (isBadge) {\n return \"\").concat(!!badgeText ? badgeText : \"\", \"\");\n } else {\n return \"\";\n }\n }\n }, {\n key: \"BuildImage\",\n value: function BuildImage(imageUrl, type) {\n var src = imageUrl;\n var style = \"\";\n\n if (imageUrl === null || imageUrl === undefined) {\n src = \"\".concat(new Configuration().GetAppRoot(), \"/Content/icons/icon-\").concat(type, \".svg\");\n style = \"margin:40px;height:80px;width:80px;\";\n }\n\n return \"\");\n }\n }, {\n key: \"BuildCloudAppDetailsButton\",\n value: function BuildCloudAppDetailsButton(id, targetUrl, btnText) {\n if (!!targetUrl) {\n var finalTargetUrl = \"\".concat(targetUrl).concat(id);\n return \"\").concat(btnText, \"\");\n } else {\n return \"\";\n }\n }\n }, {\n key: \"BuildDetailsButton\",\n value: function BuildDetailsButton(id, targetUrl, btnText) {\n return !!targetUrl ? \"\").concat(btnText, \"\") : \"\";\n }\n }, {\n key: \"BuildButtons\",\n value: function BuildButtons(buttons) {\n return \"
\\n\\t\\t\\t\".concat(buttons.map(function (button) {\n return \"\");\n }).join(\"\"), \"\\n\\t\\t
\");\n }\n }, {\n key: \"BuildText\",\n value: function BuildText(title) {\n var subtitles = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n var description = arguments.length > 2 ? arguments[2] : undefined;\n return \"
\\n\\t\\t\\t

\".concat(title, \"

\\n\\t\\t\\t\").concat(subtitles.map(function (subtitle) {\n return \"

\").concat(subtitle.text, \"

\");\n }).join(\"\"), \"\\n\\t\\t\\t
\").concat(description === null ? \"\" : new TextFormatter(description).addLineBreaks(), \"
\\n\\t\\t
\");\n }\n }, {\n key: \"BuildTextRow\",\n value: function BuildTextRow() {\n var subtitles = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n return \"
\\n\\t\\t\\t\".concat(subtitles.map(function (subtitle) {\n return \"
\").concat(subtitle.text, \"
\");\n }).join(\"\"), \"\\n\\t\\t
\");\n }\n }, {\n key: \"BuildProgress\",\n value: function BuildProgress() {\n var header = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : \"$750 of $1,000 Goal (75%)\";\n var percentage = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : \"75\";\n var description = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : \"12 installments beginning 05/15/2019\";\n return \"
\\n\\t\\t\\t

\".concat(header, \"

\\n\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\n\\t\\t\\t\\n\\t\\t\\t

\").concat(description, \"

\\n\\t\\t
\");\n }\n }, {\n key: \"BuildProgressRow\",\n value: function BuildProgressRow(header, progressHeader) {\n var percentage = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : \"75\";\n var description = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : \"12 installments beginning 05/15/2019\";\n return \"
\\n\\t\\t\\t
\".concat(header, \"
\\n\\t\\t\\t
\\n\\t\\t\\t\\t
\\n\\t\\t\\t\\t\\t
\\n\\t\\t\\t\\t\\t\\t\").concat(progressHeader, \"\\n\\t\\t\\t\\t\\t
\\n\\t\\t\\t\\t\\t
\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t
\\n\\t\\t\\t\\t
\\n\\t\\t\\t
\\n\\t\\t
\");\n }\n }, {\n key: \"BuildCard\",\n value: function BuildCard(header, body, footer, targetUrl) {\n var isTransparent = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n return \"
\\n\\t\\t\\t
\\n\\t\\t\\t\\t\").concat(header, \"\\n\\t\\t\\t
\\n\\t\\t\\t
\\n\\t\\t\\t\\t\").concat(body, \"\\n\\t\\t\\t
\\n\\t\\t\\t
\\n\\t\\t\\t\\t\").concat(footer, \"\\n\\t\\t\\t
\\n\\t\\t
\");\n }\n }, {\n key: \"BuildCardRow\",\n value: function BuildCardRow(headerBadge, headerImage, campaignName, tripDatesText, body, footer) {\n var CardRowToggle = function CardRowToggle() {\n var itemDown = element.querySelector(\".mpp-card-row--svg-down\");\n var itemUp = element.querySelector(\".mpp-card-row--svg-up\");\n var details = element.querySelector(\".mpp-card-row-transition\");\n var main = element.querySelector(\".mpp-card-row--main\");\n var isHidden = itemDown.classList.contains(\"hidden\");\n\n if (isHidden) {\n itemDown.classList.remove(\"hidden\");\n itemUp.classList.add(\"hidden\");\n details.classList.remove(\"mpp-card-row-transition-expanded\");\n main.classList.remove(\"mpp-card-row-expanded--main\");\n } else {\n itemDown.classList.add(\"hidden\");\n itemUp.classList.remove(\"hidden\");\n details.classList.add(\"mpp-card-row-transition-expanded\");\n main.classList.add(\"mpp-card-row-expanded--main\");\n }\n };\n\n var element = document.createElement(\"div\");\n element.innerHTML = \"
\\n\\t\\t\\t
\\n\\t\\t\\t\\t
\\n\\t\\t\\t\\t\\t\".concat(headerImage, \"\\n\\t\\t\\t\\t\\t\").concat(headerBadge, \"\\n\\t\\t\\t\\t\\t
\\n\\t\\t\\t\\t\\t\\t
\").concat(campaignName, \"
\\n\\t\\t\\t\\t\\t\\t
\").concat(tripDatesText, \"
\\n\\t\\t\\t\\t\\t
\\n\\t\\t\\t\\t
\\n\\t\\t\\t\\t
\\n\\t\\t\\t\\t\\t\").concat(body, \"\\n\\t\\t\\t\\t\\t
\\n\\t\\t\\t\\t\\t\\t
\\n\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t
\\n\\t\\t\\t\\t\\t\\t
\\n\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t\\t\\n\\t\\t\\t\\t\\t\\t
\\n\\t\\t\\t\\t\\t
\\n\\t\\t\\t\\t
\\n\\t\\t\\t
\\n\\t\\t\\t
\\n\\t\\t\\t\\t
\\n\\t\\t\\t\\t\\t
\\n\\t\\t\\t\\t\\t\\t\").concat(footer, \"\\n\\t\\t\\t\\t\\t
\\n\\t\\t\\t\\t
\\n\\t\\t\\t
\\n\\t\\t
\");\n element.querySelector(\".mpp-card-row--collapsed\").addEventListener(\"click\", function () {\n return CardRowToggle();\n });\n return element;\n }\n }, {\n key: \"BuildCardRowFooter\",\n value: function BuildCardRowFooter(i, imageUrl, details) {\n return \"
\\n\\t\\t\\t\".concat(details, \"\\n\\t\\t
\");\n }\n }, {\n key: \"BuildUrl\",\n value: function BuildUrl(targetUrl, id) {\n return !!targetUrl ? UrlUtils.AddQueryStringParams(targetUrl, {\n id: id\n }) : null;\n }\n }, {\n key: \"BuildCheckbox\",\n value: function BuildCheckbox(uniqueId, isChecked) {\n var cardClass = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : \"mpp-card\";\n return \"\");\n }\n }, {\n key: \"BuildSubscriptionCheckbox\",\n value: function BuildSubscriptionCheckbox(uniqueId, isChecked) {\n var cardClass = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : \"mpp-card\";\n return \"\");\n }\n }, {\n key: \"BuildPills\",\n value: function BuildPills() {\n var labels = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var cardClass = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : \"mpp-card\";\n labels = labels.filter(function (i) {\n return i;\n });\n return \"\");\n }\n }, {\n key: \"BuildMyInvoicesSubtitlesArr\",\n value: function BuildMyInvoicesSubtitlesArr() {\n var invoiceDate = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : \"\";\n var invoiceTotal = arguments.length > 1 ? arguments[1] : undefined;\n var invoiceStatus = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : \"\";\n var subtitlesArr = [];\n\n if (!!invoiceDate) {\n subtitlesArr.push({\n className: \"invoice-date\",\n text: \"\".concat(new DateTimeFormatter().ToShortDateFormatted(invoiceDate, true))\n });\n }\n\n if (!!invoiceTotal) {\n var total = \"$\".concat(Number(invoiceTotal).toFixed(2).toLocaleString());\n subtitlesArr.push({\n className: \"invoice-total\",\n text: total\n });\n }\n\n if (!!invoiceStatus) {\n subtitlesArr.push({\n className: \"invoice-status\",\n text: \"\".concat(invoiceStatus)\n });\n }\n\n return subtitlesArr;\n }\n }, {\n key: \"BuildGroupSubtitlesArr\",\n value: function BuildGroupSubtitlesArr() {\n var location = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : \"\";\n var meetingDay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : \"\";\n var meetingTime = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : \"\";\n var startDate = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : \"\";\n var alreadyMeetingText = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : \"Already Meeting\";\n var capacityTitle = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : \"\";\n var capacityLabel = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : \"\";\n var dateTimeFormatter = new DateTimeFormatter();\n var subtitlesArr = [];\n if (!!location) subtitlesArr.push({\n className: \"group-location\",\n text: location\n });\n\n if (!!meetingDay) {\n if (meetingDay.length) subtitlesArr.push({\n className: \"group-meeting-day\",\n text: \"\".concat(meetingDay, \" \").concat(meetingTime !== null ? \"@ \".concat(dateTimeFormatter.ToShortTime(meetingTime)) : \"\")\n });\n }\n\n if (!!capacityLabel) {\n subtitlesArr.push({\n className: \"group-capacity\",\n text: capacityTitle + \": \" + capacityLabel\n });\n }\n\n if (!!startDate) {\n if (startDate.length) subtitlesArr.push({\n className: \"group-start-date\",\n text: \"\".concat(dateTimeFormatter.IsInThePast(startDate) ? alreadyMeetingText : \"Starts: \".concat(dateTimeFormatter.ToShortDate(startDate)))\n });\n }\n\n return subtitlesArr;\n }\n }, {\n key: \"BuildOpportunitySubtitlesArr\",\n value: function BuildOpportunitySubtitlesArr() {\n var location = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : \"\";\n var meetingDay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : \"\";\n var startDate = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : \"\";\n var subtitlesArr = []; // need logic to prioritize 'Location', 'Location Name or Congregation Name', 'Congregation Name from Program'\n // location is coming in as Congregation Name from Program\n\n subtitlesArr.push({\n className: \"opportunity-location\",\n text: location\n });\n subtitlesArr.push({\n className: \"opportunity-start-date\",\n text: startDate === null ? meetingDay : \"\".concat(new DateTimeFormatter().ToShortDateTime(startDate))\n });\n return subtitlesArr;\n }\n }, {\n key: \"BuildEventSubtitlesArr\",\n value: function BuildEventSubtitlesArr() {\n var location = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : \"\";\n var startDate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : \"\";\n var endDate = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : \"\";\n var dateTimeFormatter = new DateTimeFormatter();\n var subtitlesArr = [];\n subtitlesArr.push({\n className: \"event-date-range\",\n text: dateTimeFormatter.ToShortDateTimeRange(startDate, endDate)\n });\n\n if (location) {\n subtitlesArr.push({\n className: \"event-location\",\n text: location\n });\n }\n\n return subtitlesArr;\n }\n }, {\n key: \"BuildMultiSelectCard\",\n value: function BuildMultiSelectCard(index, imageUrl, title, publicationId, description, subscribed, noDescriptionText, showDescriptionText, hideDescriptionText) {\n return \"
\\n\\t\\t\\t\\n\\t\\t\\t
\\n\\t\\t\\t\\t
\\n\\t\\t\\t\\t\\t

\").concat(title, \"

\\n\\t\\t\\t\\t\\t\").concat(CollapseBuilder.BuildCollapse(publicationId, description, noDescriptionText, showDescriptionText, hideDescriptionText), \"\\n\\t\\t\\t\\t
\\n\\t\\t\\t\\t\").concat(this.BuildCheckbox(publicationId, subscribed), \"\\n\\t\\t\\t
\\n\\t\\t
\");\n }\n }]);\n\n return CardBuilder;\n}();","function _createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === \"undefined\" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it[\"return\"] != null) it[\"return\"](); } finally { if (didErr) throw err; } } }; }\n\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { if (typeof Symbol === \"undefined\" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nexport var MyContributionFormBuilder = /*#__PURE__*/function () {\n function MyContributionFormBuilder() {\n _classCallCheck(this, MyContributionFormBuilder);\n }\n\n _createClass(MyContributionFormBuilder, null, [{\n key: \"DrawForm\",\n value: function DrawForm(container, data, labels) {\n // Loop over each dictionary item of >\n for (var _i = 0, _Object$entries = Object.entries(data); _i < _Object$entries.length; _i++) {\n var _Object$entries$_i = _slicedToArray(_Object$entries[_i], 2),\n key = _Object$entries$_i[0],\n value = _Object$entries$_i[1];\n\n var keyTrimmed = key.replace(/\\s/g, '');\n var dataContainer = document.createElement(\"div\");\n dataContainer.classList.add(\"mppw-form-field__control\");\n dataContainer.classList.add(\"mpp-mb-10\"); // Set accounting name header\n\n var accountingNameLabel = document.createElement(\"h2\");\n accountingNameLabel.classList.add(\"mpp-mt-0\");\n accountingNameLabel.innerHTML = key;\n dataContainer.appendChild(accountingNameLabel);\n var statementDescription = document.createElement(\"p\");\n statementDescription.innerHTML = labels.selectStatementYear;\n dataContainer.appendChild(statementDescription); // Build row of buttons div element\n\n var buttonRow = document.createElement(\"div\");\n buttonRow.classList.add(\"mppw-row\");\n var buttonCol = document.createElement(\"div\");\n buttonCol.classList.add(\"mppw-col\");\n var buttonGroupDiv = document.createElement(\"div\");\n buttonGroupDiv.classList.add(\"mppw-btn-group\");\n buttonGroupDiv.classList.add(\"mppw-btn-group-toggle\");\n buttonGroupDiv.setAttribute(\"data-toggle\", \"buttons\"); // Set active classes on the most recent statement year\n\n var mostRecentYear = Math.max.apply(Math, _toConsumableArray(value.map(function (o) {\n return o.statement_Year;\n })).concat([0]));\n var defaultFileUrl = \"\"; // Iterate over each object in the key\n\n var _iterator = _createForOfIteratorHelper(value),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var keyData = _step.value;\n var fileBaseUrl = keyData.fileBaseUrl; // Display my contribution buttons\n\n var buttonGroupLabel = document.createElement(\"label\");\n buttonGroupLabel.setAttribute(\"data-accounting-group-label\", keyTrimmed);\n buttonGroupLabel.classList.add(\"mppw-btn\");\n buttonGroupLabel.classList.add(\"secondary\");\n buttonGroupLabel.classList.add(\"mr-5\");\n\n if (keyData.statement_Year === mostRecentYear) {\n buttonGroupLabel.classList.add(\"active\");\n defaultFileUrl = \"\".concat(fileBaseUrl).concat(keyData.unique_Name);\n }\n\n buttonGroupLabel.innerHTML = \" \").concat(keyData.statement_Year);\n buttonGroupDiv.appendChild(buttonGroupLabel);\n } // Build save as pdf button\n\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n\n var savePdfCol = document.createElement(\"div\");\n savePdfCol.classList.add(\"mppw-col\"); //\n\n var savePdfButton = document.createElement(\"input\");\n savePdfButton.setAttribute(\"type\", \"button\");\n savePdfButton.setAttribute(\"id\", \"saveAsPDFButton\");\n savePdfButton.setAttribute(\"data-file-group\", keyTrimmed);\n savePdfButton.setAttribute(\"data-file-url\", defaultFileUrl);\n savePdfButton.value = labels.saveAsPdfButtonText;\n savePdfButton.classList.add(\"mppw-btn\");\n savePdfButton.classList.add(\"mppw-btn-right\");\n savePdfButton.classList.add(\"primary\");\n savePdfButton.classList.add(\"save-as-pdf\");\n savePdfCol.appendChild(savePdfButton); // Append elements\n\n buttonCol.appendChild(buttonGroupDiv);\n buttonRow.appendChild(buttonCol);\n buttonRow.appendChild(savePdfCol);\n dataContainer.appendChild(buttonRow);\n container.appendChild(dataContainer);\n }\n }\n }]);\n\n return MyContributionFormBuilder;\n}();","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }\n\nfunction _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err); } _next(undefined); }); }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n//Shared:\nimport { ComponentBase } from \"./Shared/ComponentBase\";\nimport { I18N } from \"./Shared/I18n\"; //Services:\n\nimport { ContributionsApiService } from \"./Services/ContributionsApiService\";\nimport { UserService } from \"./Services/UserService\";\nimport { OAuthService } from \"./Services/OAuthService\";\nimport { CardBuilder } from \"./Helpers/CardBuilder\"; //Helpers:\n\nimport { MyContributionFormBuilder } from \"./Helpers/MyContributionFormBuilder\";\nexport var MppMyContributionStatement = /*#__PURE__*/function (_ComponentBase) {\n _inherits(MppMyContributionStatement, _ComponentBase);\n\n var _super = _createSuper(MppMyContributionStatement);\n\n function MppMyContributionStatement() {\n _classCallCheck(this, MppMyContributionStatement);\n\n return _super.call(this);\n }\n\n _createClass(MppMyContributionStatement, [{\n key: \"getContributionsApiService\",\n value: // istanbul ignore next\n function getContributionsApiService() {\n return new ContributionsApiService();\n }\n }, {\n key: \"connectedCallback\",\n value: function () {\n var _connectedCallback = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {\n return regeneratorRuntime.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return this.LoadLabels();\n\n case 2:\n this._i18n = _context.sent;\n this.LoadAttributes(); // Services\n\n this._contributionsService = this.getContributionsApiService(); //View HTML:\n\n this._root.innerHTML = `

${this._i18n.pageTitle}

${this._i18n.pleaseLoginMessage}
${CardBuilder.BuildSubscriptionCheckbox('StatementMethod', false)} ${this._i18n.goPaperlessMessage}

${this._i18n.myGivingPageUrlMessage} ${this._i18n.myGivingPageUrlLabel}

` ;\n this.BindHtmlElements(); //Get Event\n\n this.ShowSpinner();\n _context.next = 10;\n return this._checkUserIsAuthenticated();\n\n case 10:\n this.BindEventListeners();\n this.HideSpinner();\n\n case 12:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function connectedCallback() {\n return _connectedCallback.apply(this, arguments);\n }\n\n return connectedCallback;\n }() // istanbul ignore next\n\n }, {\n key: \"getUserIsAuthenticated\",\n value: function getUserIsAuthenticated() {\n return this.UserIsAuthenticated();\n }\n }, {\n key: \"_checkUserIsAuthenticated\",\n value: function () {\n var _checkUserIsAuthenticated2 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {\n return regeneratorRuntime.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.next = 2;\n return this.getUserIsAuthenticated();\n\n case 2:\n this._userIsAuthenticated = _context2.sent;\n\n if (!(this._userIsAuthenticated === true)) {\n _context2.next = 17;\n break;\n }\n\n _context2.next = 6;\n return this.LoadMyContributionData()[\"catch\"](function (e) {\n return console.error(e);\n });\n\n case 6:\n this._contributionData = _context2.sent;\n this._userInfo = null;\n\n if (!(!!this._contributionData && !this.IsEmptyObject(this._contributionData.myContributionStatements))) {\n _context2.next = 14;\n break;\n }\n\n _context2.next = 11;\n return this.RenderMyContributionStatements();\n\n case 11:\n this.RenderMyGivingUrl();\n _context2.next = 15;\n break;\n\n case 14:\n // Display Message\n this.SetMessage(\"warning\", this._i18n.notAvailableMessage, false);\n\n case 15:\n _context2.next = 18;\n break;\n\n case 17:\n this._$loginButton.addEventListener(\"click\", function () {\n OAuthService.SignIn();\n });\n\n case 18:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n\n function _checkUserIsAuthenticated() {\n return _checkUserIsAuthenticated2.apply(this, arguments);\n }\n\n return _checkUserIsAuthenticated;\n }()\n }, {\n key: \"LoadAttributes\",\n value: function LoadAttributes() {\n this.myGivingWidgetUrl = this.getAttribute(\"mygivingwidgettargeturl\");\n } // istanbul ignore next\n\n }, {\n key: \"LoadMyContributionData\",\n value: function () {\n var _LoadMyContributionData = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() {\n return regeneratorRuntime.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n _context3.next = 2;\n return this._contributionsService.GetMyContributions();\n\n case 2:\n return _context3.abrupt(\"return\", _context3.sent);\n\n case 3:\n case \"end\":\n return _context3.stop();\n }\n }\n }, _callee3, this);\n }));\n\n function LoadMyContributionData() {\n return _LoadMyContributionData.apply(this, arguments);\n }\n\n return LoadMyContributionData;\n }() // istanbul ignore next\n\n }, {\n key: \"createI18N\",\n value: function createI18N() {\n return new I18N(\"mpp-my-contribution-statement\");\n }\n }, {\n key: \"LoadLabels\",\n value: function () {\n var _LoadLabels = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee4() {\n var i18n;\n return regeneratorRuntime.wrap(function _callee4$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n _context4.prev = 0;\n _context4.next = 3;\n return this.createI18N();\n\n case 3:\n i18n = _context4.sent;\n _context4.next = 10;\n break;\n\n case 6:\n _context4.prev = 6;\n _context4.t0 = _context4[\"catch\"](0);\n\n if (_context4.t0.toString().startsWith(\"TypeError\")) {\n this._root.innerHTML = \"Unable to connect. Please check Permitted URLs.\";\n } else {\n this._root.innerHTML = \"\".concat(_context4.t0);\n }\n\n return _context4.abrupt(\"return\");\n\n case 10:\n return _context4.abrupt(\"return\", i18n);\n\n case 11:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee4, this, [[0, 6]]);\n }));\n\n function LoadLabels() {\n return _LoadLabels.apply(this, arguments);\n }\n\n return LoadLabels;\n }() // istanbul ignore next\n\n }, {\n key: \"BindHtmlElements\",\n value: function BindHtmlElements() {\n this._$spinner = this._root.querySelector(\"#spinner\");\n this._$myContributionsDiv = this._root.querySelector(\"#myContributionsDiv\");\n this._$myContributionsDataContainer = this._root.querySelector(\"#myContributionsDataContainer\");\n this._$myContributionFooter = this._root.querySelector(\"#myContributionFooter\");\n this._$resultMessageContainer = this._root.querySelector(\"#resultMessageContainer\");\n this._$resultMessageText = this._root.querySelector(\"#resultMessageText\");\n this._$statementMethodCheck = this._root.querySelector('#StatementMethod');\n this._$myGivingWidgetLink = this._root.querySelector(\"#myGivingWidgetLink\");\n this._$loginButtonContainer = this._root.querySelector(\"#loginButtonContainer\");\n this._$loginButton = this._root.querySelector(\"#loginButton\");\n this._$pageTitle = this._root.querySelector(\"#pageTitle\");\n }\n }, {\n key: \"RenderMyContributionStatements\",\n value: function () {\n var _RenderMyContributionStatements = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee5() {\n return regeneratorRuntime.wrap(function _callee5$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n this._$myContributionsDiv.style.display = \"\";\n this._$myContributionsDataContainer.style.display = \"\";\n this._$myContributionsDataContainer.innerHTML = \"\"; // Draw statements\n\n MyContributionFormBuilder.DrawForm(this._$myContributionsDataContainer, this._contributionData.myContributionStatements, this._i18n); // Set default checkbox value\n\n if (this._contributionData.donorStatmentMethodId == 2) {\n this._$statementMethodCheck.checked = true;\n }\n\n case 5:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee5, this);\n }));\n\n function RenderMyContributionStatements() {\n return _RenderMyContributionStatements.apply(this, arguments);\n }\n\n return RenderMyContributionStatements;\n }()\n }, {\n key: \"RenderMyGivingUrl\",\n value: function RenderMyGivingUrl() {\n if (!!this.myGivingWidgetUrl) {\n this._$myGivingWidgetLink.style.display = \"\";\n }\n }\n }, {\n key: \"BindEventListeners\",\n value: function BindEventListeners() {\n var _this = this;\n\n this._$saveAsPdfButtons = this._root.querySelectorAll(\".save-as-pdf\");\n this._$statementYearButtons = this._root.querySelectorAll(\".statement-year-button\");\n\n this._$saveAsPdfButtons.forEach(function (el) {\n var element = el;\n element.addEventListener(\"click\", function (event) {\n _this.DisplayPDF(element);\n });\n });\n\n this._$statementYearButtons.forEach(function (el) {\n var element = el;\n var accountingCompanyName = el.getAttribute(\"data-accounting-group\");\n var fileUrl = el.getAttribute(\"data-file-url\");\n\n if (!!accountingCompanyName) {\n element.addEventListener(\"click\", function (event) {\n _this.SetSaveAsPDFUrl(accountingCompanyName, fileUrl);\n\n _this.SetStatementYearButtonActive(accountingCompanyName, element);\n });\n }\n });\n\n this._$statementMethodCheck.addEventListener('change', function (event) {\n _this.SetStatementMethod(event.target.checked);\n });\n }\n }, {\n key: \"SetStatementMethod\",\n value: function SetStatementMethod(goPaperless) {\n var _this2 = this;\n\n return this._contributionsService.SetStatementMethod(goPaperless).then(function (data) {\n _this2.SetMessage(\"success\", _this2._i18n.statementMethodUpdated);\n })[\"catch\"](function (error) {\n console.error(error);\n\n _this2.SetMessage(\"danger\", _this2._i18n.statementMethodUpdateError, false);\n });\n }\n }, {\n key: \"SetStatementYearButtonActive\",\n value: function SetStatementYearButtonActive(accountingCompanyName, element) {\n // Remove all active classes for the accounting group labels found\n Array.from(this._root.querySelectorAll(\"[data-accounting-group-label=\\\"\".concat(accountingCompanyName, \"\\\"]\"))).forEach(function (el) {\n el.classList.remove('active');\n }); // Set the active class to closest label, since the element is the input element\n\n element.closest('label').classList.add('active');\n }\n }, {\n key: \"SetSaveAsPDFUrl\",\n value: function SetSaveAsPDFUrl(accountingCompanyName, fileUrl) {\n // Find the correct pdf button and sets its data file url\n // The data-file-url will then be used to display the pdf\n var saveAsPDFButton = this._root.querySelector(\"[data-file-group=\\\"\".concat(accountingCompanyName, \"\\\"]\"));\n\n saveAsPDFButton.setAttribute(\"data-file-url\", fileUrl);\n }\n }, {\n key: \"DisplayPDF\",\n value: function DisplayPDF(element) {\n // Get pdf buttons data-file-url and display file\n var fileUrl = element.getAttribute(\"data-file-url\");\n window.location.href = fileUrl;\n }\n }, {\n key: \"UserIsAuthenticated\",\n value: function () {\n var _UserIsAuthenticated = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee6() {\n return regeneratorRuntime.wrap(function _callee6$(_context6) {\n while (1) {\n switch (_context6.prev = _context6.next) {\n case 0:\n _context6.prev = 0;\n _context6.next = 3;\n return UserService.GetCurrentUser();\n\n case 3:\n this._$loginButtonContainer.style.display = \"none\";\n this._$pageTitle.style.display = \"\";\n return _context6.abrupt(\"return\", true);\n\n case 8:\n _context6.prev = 8;\n _context6.t0 = _context6[\"catch\"](0);\n this._$loginButtonContainer.style.display = \"\";\n this._$pageTitle.style.display = \"none\";\n return _context6.abrupt(\"return\", false);\n\n case 13:\n case \"end\":\n return _context6.stop();\n }\n }\n }, _callee6, this, [[0, 8]]);\n }));\n\n function UserIsAuthenticated() {\n return _UserIsAuthenticated.apply(this, arguments);\n }\n\n return UserIsAuthenticated;\n }()\n }, {\n key: \"SetMessage\",\n value: function SetMessage(status, message) {\n var _this3 = this;\n\n var autoHideMessage = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;\n\n this._$resultMessageContainer.classList.remove(\"mppw-alert__success\");\n\n this._$resultMessageContainer.classList.remove(\"mppw-alert__info\");\n\n this._$resultMessageContainer.classList.remove(\"mppw-alert__warning\");\n\n this._$resultMessageContainer.classList.remove(\"mppw-alert__danger\");\n\n this._$resultMessageContainer.classList.add(\"mppw-alert__\".concat(status));\n\n this._$resultMessageText.innerHTML = message;\n this._$resultMessageContainer.style.display = \"\";\n\n if (autoHideMessage) {\n setTimeout(function () {\n _this3.HideMessage();\n }, 6000);\n }\n }\n }, {\n key: \"HideMessage\",\n value: function HideMessage() {\n this._$resultMessageText.innerHTML = \"\";\n this._$resultMessageContainer.style.display = \"none\";\n }\n }, {\n key: \"ShowSpinner\",\n value: function ShowSpinner() {\n this._$spinner.style.display = \"\";\n }\n }, {\n key: \"HideSpinner\",\n value: function HideSpinner() {\n this._$spinner.style.display = \"none\";\n }\n }, {\n key: \"IsEmptyObject\",\n value: function IsEmptyObject(obj) {\n return Object.keys(obj).length === 0;\n }\n }], [{\n key: \"observedAttributes\",\n get: function get() {\n return [\"mygivingwidgettargeturl\"];\n }\n }]);\n\n return MppMyContributionStatement;\n}(ComponentBase);\nMppMyContributionStatement.registerComponent(\"mpp-my-contribution-statement\", MppMyContributionStatement);"],"names":["_typeof","obj","Symbol","iterator","constructor","prototype","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","authConfigurationCache","Configuration","instance","Constructor","TypeError","_classCallCheck","this","SCRIPT_NAME","protoProps","value","useCacheIfAvailable","Promise","resolve","appRoot","GetAppRoot","url","concat","fetch","then","authInfo","json","authConfiguration","err","console","error","Error","cacheKey","document","getElementById","undefined","currentScriptSrc","src","substring","indexOf","sessionStorage","log","keyName","response","text","countryList","result","window","navigator","localeParts","language","split","countryCode","matches","filter","country","abbreviation","ok","data","ConfigurationService","asyncGeneratorStep","gen","reject","_next","_throw","arg","info","done","_wrapNativeSuper","Class","_cache","Map","fn","Function","toString","call","has","get","set","Wrapper","_construct","arguments","_getPrototypeOf","create","_setPrototypeOf","Parent","args","_isNativeReflectConstruct","Reflect","construct","a","push","apply","bind","sham","Proxy","Boolean","valueOf","e","o","p","setPrototypeOf","__proto__","getPrototypeOf","ComponentBase","_HTMLElement","subClass","superClass","_inherits","staticProps","_setStyleFiles","Derived","hasNativeReflectConstruct","_super","self","Super","NewTarget","ReferenceError","_assertThisInitialized","_this","_baseRoot","attachShadow","mode","_root","createElement","appendChild","_Init","setStyleFiles","regeneratorRuntime","mark","_callee","config","customCss","_this2","wrap","_context","prev","next","customCssUrl","getAttribute","_appRoot","abrupt","GetCustomStyles","customCssFiles","forEach","cssFile","rel","type","media","href","stop","customElementName","componentType","customElements","define","Array","from","getElementsByClassName","el","myWidget","getAttributeNames","attr","setAttribute","HTMLElement","I18N","componentName","_componentName","_locale","GetCurrentLocale","credentials","withCredentials","localStorage","userLocale","ArgumentException","_Error","argName","ArgumentTypeException","_Error2","_super2","_getKey","LocalStorageManager","item","setItem","fullKey","getItem","startsWith","removeItem","storageKeys","keys","searchFor","keyValue","SessionStorageManager","privateMethods","getUrlParameter","params","name","replace","results","RegExp","exec","decodeURIComponent","URLSearchParameters","_params","URLSearchParams","_urlSearchParams","substr","_tokenKeyName","_idTokenKeyName","_expiresAfterName","_csrfToken","mppw_refreshTokenPromise","OAuthService","_RefreshTokensAsync","_SaveAuthTokensAsync","_SaveCSRFTokenAsync","tokenValue","token","idTokenValue","idToken","expiresAfterValue","Date","expiresAfter","JSON","parse","_unused","stringify","GetAuthConfiguration","oauthConfig","signInUrl","responseType","scope","clientId","redirectUrl","nonce","encodeURIComponent","location","Token","signOutUrl","IdToken","postLogoutRedirectUrl","encodeURI","GetCSRFToken","sent","CSRFToken","_callee2","tokenParamName","userSearchParameters","tokens","_context2","search","history","replaceState","String","title","GetAuthToken","_SaveTokens","_callee3","_context3","ExpiresAfter","_ClearTokens","accessToken","setSeconds","getSeconds","expiresIn","_addAuth","options","headers","Authorization","_addCSRF","expiresAfterUtc","expiresAfterUTC","_getCurrentUTCDateTime","SaveCSRFTokenAsync","now","UTC","getUTCFullYear","getUTCMonth","getUTCDate","getUTCHours","getUTCMinutes","getUTCSeconds","getUTCMilliseconds","_htmlSanitizer","_eventSanitizer","_htmlSanitize","textObj","cleanKeys","depth","getOwnPropertyNames","Ajax","_RefreshTokensIfNeededAsync","_Post","RefreshTokensIfNeededAsync","status","SignIn","additionalHeaders","retry","_args","method","body","header","t0","SecondaryStatusCode","Post","_x","_x2","_x3","currentTime","RefreshTokensAsync","ContributionsApiService","Get","goPaperless","UserService","_SaveUserAttributes","_GetAllActiveAttributes","_GetCurrentUserAttributes","_GetCurrentUser","i18n","userNotAuthenticatedMsg","userNotFoundMsg","currentUser","notAuthenticatedMessage","userNotFound","userInfo","currentUserAttributes","userAttributesInfo","allActiveAttributes","allAttributesInfo","_callee4","_context4","CollapseBuilder","id","description","noDescriptionText","showDescriptionText","hideDescriptionText","_arrayLikeToArray","arr","len","arr2","DateTimeFormatter","_dayMonthOptions","month","day","_shortOptions","weekday","year","_timeOptions","hour","minute","_weekDays","dateValue","parts","map","Number","_parts","isArray","_arrayWithHoles","_arr","_n","_d","_e","_s","_i","_iterableToArrayLimit","minLen","n","slice","test","_unsupportedIterableToArray","_nonIterableRest","second","NormalizeDateTime","toLocaleDateString","d","toLocaleTimeString","startDate","endDate","start","end","dateValueToCompare","dayOfWeek","finalDate","currentDayOfWeek","getDay","targetDayOfWeek","GetDayOfWeekFromString","setDate","getDate","standardFormat","dd","mm","getMonth","yyyy","getFullYear","b","MonthDiff","adjust","wholeMonthDiff","clonedA","anchor","setMonth","cloned2A","_cloned2A","Math","floor","UrlUtils","questionMarkIdx","entries","_ref","_ref2","join","TextFormatter","_value","CardBuilder","isBadge","badgeText","imageUrl","style","targetUrl","btnText","finalTargetUrl","buttons","button","subtitles","subtitle","className","addLineBreaks","percentage","progressHeader","footer","isTransparent","headerBadge","headerImage","campaignName","tripDatesText","element","innerHTML","querySelector","addEventListener","itemDown","itemUp","details","main","classList","contains","remove","add","AddQueryStringParams","uniqueId","isChecked","labels","cardClass","label","invoiceDate","invoiceTotal","invoiceStatus","subtitlesArr","ToShortDateFormatted","total","toFixed","toLocaleString","meetingDay","meetingTime","alreadyMeetingText","capacityTitle","capacityLabel","dateTimeFormatter","ToShortTime","IsInThePast","ToShortDate","ToShortDateTime","ToShortDateTimeRange","index","publicationId","subscribed","BuildCollapse","BuildCheckbox","_createForOfIteratorHelper","allowArrayLike","it","F","s","_e2","f","normalCompletion","didErr","step","_e3","_toConsumableArray","_arrayWithoutHoles","iter","_iterableToArray","_nonIterableSpread","MyContributionFormBuilder","container","_Object$entries","_Object$entries$_i","keyTrimmed","dataContainer","accountingNameLabel","statementDescription","selectStatementYear","buttonRow","buttonCol","buttonGroupDiv","_step","mostRecentYear","max","statement_Year","defaultFileUrl","_iterator","keyData","fileBaseUrl","buttonGroupLabel","unique_Name","savePdfCol","savePdfButton","saveAsPdfButtonText","MppMyContributionStatement","_ComponentBase","_UserIsAuthenticated","_RenderMyContributionStatements","_LoadLabels","_LoadMyContributionData","_checkUserIsAuthenticated2","_connectedCallback","LoadLabels","_i18n","LoadAttributes","_contributionsService","getContributionsApiService","pageTitle","pleaseLoginMessage","BuildSubscriptionCheckbox","goPaperlessMessage","myGivingPageUrlMessage","myGivingWidgetUrl","myGivingPageUrlLabel","BindHtmlElements","ShowSpinner","_checkUserIsAuthenticated","BindEventListeners","HideSpinner","UserIsAuthenticated","getUserIsAuthenticated","_userIsAuthenticated","LoadMyContributionData","_contributionData","_userInfo","IsEmptyObject","myContributionStatements","RenderMyContributionStatements","RenderMyGivingUrl","SetMessage","notAvailableMessage","_$loginButton","GetMyContributions","createI18N","_$spinner","_$myContributionsDiv","_$myContributionsDataContainer","_$myContributionFooter","_$resultMessageContainer","_$resultMessageText","_$statementMethodCheck","_$myGivingWidgetLink","_$loginButtonContainer","_$pageTitle","_callee5","_context5","display","DrawForm","donorStatmentMethodId","checked","_$saveAsPdfButtons","querySelectorAll","_$statementYearButtons","event","DisplayPDF","accountingCompanyName","fileUrl","SetSaveAsPDFUrl","SetStatementYearButtonActive","SetStatementMethod","statementMethodUpdated","statementMethodUpdateError","closest","_callee6","_context6","GetCurrentUser","message","_this3","autoHideMessage","setTimeout","HideMessage","registerComponent"],"sourceRoot":""}