@beinformed/ui 1.13.1 → 1.13.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (176) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/esm/constants/LayoutHintConfig.js +9 -0
  3. package/esm/constants/LayoutHintConfig.js.map +1 -1
  4. package/esm/constants/LayoutHints.js +5 -0
  5. package/esm/constants/LayoutHints.js.map +1 -1
  6. package/esm/constants/Settings.js +2 -1
  7. package/esm/constants/Settings.js.map +1 -1
  8. package/esm/models/attributes/AttributeContent.js +3 -3
  9. package/esm/models/attributes/AttributeContent.js.map +1 -1
  10. package/esm/models/attributes/AttributeModel.js.map +1 -1
  11. package/esm/models/attributes/BooleanAttributeModel.js +1 -0
  12. package/esm/models/attributes/BooleanAttributeModel.js.map +1 -1
  13. package/esm/models/attributes/ChoiceAttributeModel.js +1 -0
  14. package/esm/models/attributes/ChoiceAttributeModel.js.map +1 -1
  15. package/esm/models/attributes/ChoiceAttributeOptionCollection.js.map +1 -1
  16. package/esm/models/attributes/ChoiceAttributeOptionModel.js.map +1 -1
  17. package/esm/models/attributes/CompositeAttributeChildCollection.js +1 -1
  18. package/esm/models/attributes/CompositeAttributeChildCollection.js.map +1 -1
  19. package/esm/models/attributes/CompositeAttributeModel.js +2 -1
  20. package/esm/models/attributes/CompositeAttributeModel.js.map +1 -1
  21. package/esm/models/attributes/DatetimeAttributeModel.js +8 -3
  22. package/esm/models/attributes/DatetimeAttributeModel.js.map +1 -1
  23. package/esm/models/base/BaseCollection.js.map +1 -1
  24. package/esm/models/base/ResourceCollection.js +4 -2
  25. package/esm/models/base/ResourceCollection.js.map +1 -1
  26. package/esm/models/base/ResourceModel.js +1 -0
  27. package/esm/models/base/ResourceModel.js.map +1 -1
  28. package/esm/models/concepts/BusinessScenarioModel.js +2 -1
  29. package/esm/models/concepts/BusinessScenarioModel.js.map +1 -1
  30. package/esm/models/concepts/ConceptDetailModel.js +2 -1
  31. package/esm/models/concepts/ConceptDetailModel.js.map +1 -1
  32. package/esm/models/concepts/ConceptLinkModel.js.map +1 -1
  33. package/esm/models/concepts/ConceptRelationModel.js.map +1 -1
  34. package/esm/models/content/ContentLinkModel.js +2 -0
  35. package/esm/models/content/ContentLinkModel.js.map +1 -1
  36. package/esm/models/href/Href.js +1 -1
  37. package/esm/models/href/Href.js.map +1 -1
  38. package/esm/react-server/renderSSRComplete.js +1 -2
  39. package/esm/react-server/renderSSRComplete.js.map +1 -1
  40. package/esm/react-server/serverNoSSR.js +1 -1
  41. package/esm/react-server/serverNoSSR.js.map +1 -1
  42. package/esm/redux/_modularui/actions.js +16 -17
  43. package/esm/redux/_modularui/actions.js.map +1 -1
  44. package/esm/redux/_modularui/reducer.js +1 -2
  45. package/esm/redux/_modularui/reducer.js.map +1 -1
  46. package/esm/redux/actions/SignIn.js +5 -9
  47. package/esm/redux/actions/SignIn.js.map +1 -1
  48. package/esm/utils/fetch/xhr.js +2 -1
  49. package/esm/utils/fetch/xhr.js.map +1 -1
  50. package/esm/utils/helpers/objects.js +2 -1
  51. package/esm/utils/helpers/objects.js.map +1 -1
  52. package/lib/constants/LayoutHintConfig.js +9 -0
  53. package/lib/constants/LayoutHintConfig.js.flow +9 -0
  54. package/lib/constants/LayoutHintConfig.js.map +1 -1
  55. package/lib/constants/LayoutHints.js +8 -2
  56. package/lib/constants/LayoutHints.js.flow +4 -0
  57. package/lib/constants/LayoutHints.js.map +1 -1
  58. package/lib/constants/Settings.js +2 -1
  59. package/lib/constants/Settings.js.flow +2 -0
  60. package/lib/constants/Settings.js.map +1 -1
  61. package/lib/hooks/__tests__/useAuthentication.spec.js.flow +1 -0
  62. package/lib/models/attributes/AttributeContent.js +3 -3
  63. package/lib/models/attributes/AttributeContent.js.flow +3 -3
  64. package/lib/models/attributes/AttributeContent.js.map +1 -1
  65. package/lib/models/attributes/AttributeModel.js.flow +10 -2
  66. package/lib/models/attributes/AttributeModel.js.map +1 -1
  67. package/lib/models/attributes/BooleanAttributeModel.js +1 -0
  68. package/lib/models/attributes/BooleanAttributeModel.js.flow +4 -1
  69. package/lib/models/attributes/BooleanAttributeModel.js.map +1 -1
  70. package/lib/models/attributes/ChoiceAttributeModel.js +1 -0
  71. package/lib/models/attributes/ChoiceAttributeModel.js.flow +4 -1
  72. package/lib/models/attributes/ChoiceAttributeModel.js.map +1 -1
  73. package/lib/models/attributes/ChoiceAttributeOptionCollection.js.flow +1 -1
  74. package/lib/models/attributes/ChoiceAttributeOptionCollection.js.map +1 -1
  75. package/lib/models/attributes/ChoiceAttributeOptionModel.js.flow +5 -2
  76. package/lib/models/attributes/ChoiceAttributeOptionModel.js.map +1 -1
  77. package/lib/models/attributes/CompositeAttributeChildCollection.js +1 -1
  78. package/lib/models/attributes/CompositeAttributeChildCollection.js.flow +1 -1
  79. package/lib/models/attributes/CompositeAttributeChildCollection.js.map +1 -1
  80. package/lib/models/attributes/CompositeAttributeModel.js +2 -1
  81. package/lib/models/attributes/CompositeAttributeModel.js.flow +1 -0
  82. package/lib/models/attributes/CompositeAttributeModel.js.map +1 -1
  83. package/lib/models/attributes/DatetimeAttributeModel.js +9 -3
  84. package/lib/models/attributes/DatetimeAttributeModel.js.flow +7 -4
  85. package/lib/models/attributes/DatetimeAttributeModel.js.map +1 -1
  86. package/lib/models/attributes/__tests__/StringAttributeModel.spec.js.flow +1 -1
  87. package/lib/models/base/BaseCollection.js.flow +2 -2
  88. package/lib/models/base/BaseCollection.js.map +1 -1
  89. package/lib/models/base/ResourceCollection.js +4 -2
  90. package/lib/models/base/ResourceCollection.js.flow +4 -6
  91. package/lib/models/base/ResourceCollection.js.map +1 -1
  92. package/lib/models/base/ResourceModel.js +1 -0
  93. package/lib/models/base/ResourceModel.js.flow +3 -2
  94. package/lib/models/base/ResourceModel.js.map +1 -1
  95. package/lib/models/base/__tests__/BaseModel.spec.js.flow +5 -5
  96. package/lib/models/concepts/BusinessScenarioModel.js +3 -1
  97. package/lib/models/concepts/BusinessScenarioModel.js.flow +2 -1
  98. package/lib/models/concepts/BusinessScenarioModel.js.map +1 -1
  99. package/lib/models/concepts/ConceptDetailModel.js +3 -1
  100. package/lib/models/concepts/ConceptDetailModel.js.flow +2 -2
  101. package/lib/models/concepts/ConceptDetailModel.js.map +1 -1
  102. package/lib/models/concepts/ConceptLinkModel.js.flow +5 -2
  103. package/lib/models/concepts/ConceptLinkModel.js.map +1 -1
  104. package/lib/models/concepts/ConceptRelationModel.js.flow +6 -2
  105. package/lib/models/concepts/ConceptRelationModel.js.map +1 -1
  106. package/lib/models/content/ContentLinkModel.js +2 -0
  107. package/lib/models/content/ContentLinkModel.js.flow +2 -0
  108. package/lib/models/content/ContentLinkModel.js.map +1 -1
  109. package/lib/models/href/Href.js +1 -1
  110. package/lib/models/href/Href.js.flow +4 -3
  111. package/lib/models/href/Href.js.map +1 -1
  112. package/lib/models/types.js.flow +2 -2
  113. package/lib/react-server/__tests__/serverUtil.spec.js.flow +15 -14
  114. package/lib/react-server/renderSSRComplete.js +1 -2
  115. package/lib/react-server/renderSSRComplete.js.flow +2 -1
  116. package/lib/react-server/renderSSRComplete.js.map +1 -1
  117. package/lib/react-server/serverNoSSR.js +1 -1
  118. package/lib/react-server/serverNoSSR.js.flow +1 -1
  119. package/lib/react-server/serverNoSSR.js.map +1 -1
  120. package/lib/redux/_modularui/__tests__/actions.spec.js.flow +1 -0
  121. package/lib/redux/_modularui/actions.js +12 -12
  122. package/lib/redux/_modularui/actions.js.flow +12 -12
  123. package/lib/redux/_modularui/actions.js.map +1 -1
  124. package/lib/redux/_modularui/reducer.js +1 -2
  125. package/lib/redux/_modularui/reducer.js.flow +0 -1
  126. package/lib/redux/_modularui/reducer.js.map +1 -1
  127. package/lib/redux/actions/SignIn.js +6 -9
  128. package/lib/redux/actions/SignIn.js.flow +5 -11
  129. package/lib/redux/actions/SignIn.js.map +1 -1
  130. package/lib/redux/actions/__tests__/Application.spec.js.flow +1 -0
  131. package/lib/redux/actions/__tests__/CustomErrorResponseHandler.spec.js.flow +2 -0
  132. package/lib/utils/fetch/__tests__/xhr.spec.js.flow +1 -0
  133. package/lib/utils/fetch/xhr.js +3 -1
  134. package/lib/utils/fetch/xhr.js.flow +3 -1
  135. package/lib/utils/fetch/xhr.js.map +1 -1
  136. package/lib/utils/helpers/objects.js +3 -1
  137. package/lib/utils/helpers/objects.js.flow +2 -2
  138. package/lib/utils/helpers/objects.js.map +1 -1
  139. package/package.json +25 -25
  140. package/src/constants/LayoutHintConfig.js +9 -0
  141. package/src/constants/LayoutHints.js +4 -0
  142. package/src/constants/Settings.js +2 -0
  143. package/src/hooks/__tests__/useAuthentication.spec.js +1 -0
  144. package/src/models/attributes/AttributeContent.js +3 -3
  145. package/src/models/attributes/AttributeModel.js +10 -2
  146. package/src/models/attributes/BooleanAttributeModel.js +4 -1
  147. package/src/models/attributes/ChoiceAttributeModel.js +4 -1
  148. package/src/models/attributes/ChoiceAttributeOptionCollection.js +1 -1
  149. package/src/models/attributes/ChoiceAttributeOptionModel.js +5 -2
  150. package/src/models/attributes/CompositeAttributeChildCollection.js +1 -1
  151. package/src/models/attributes/CompositeAttributeModel.js +1 -0
  152. package/src/models/attributes/DatetimeAttributeModel.js +7 -4
  153. package/src/models/attributes/__tests__/StringAttributeModel.spec.js +1 -1
  154. package/src/models/base/BaseCollection.js +2 -2
  155. package/src/models/base/ResourceCollection.js +4 -6
  156. package/src/models/base/ResourceModel.js +3 -2
  157. package/src/models/base/__tests__/BaseModel.spec.js +5 -5
  158. package/src/models/concepts/BusinessScenarioModel.js +2 -1
  159. package/src/models/concepts/ConceptDetailModel.js +2 -2
  160. package/src/models/concepts/ConceptLinkModel.js +5 -2
  161. package/src/models/concepts/ConceptRelationModel.js +6 -2
  162. package/src/models/content/ContentLinkModel.js +2 -0
  163. package/src/models/href/Href.js +4 -3
  164. package/src/models/types.js +2 -2
  165. package/src/react-server/__tests__/serverUtil.spec.js +15 -14
  166. package/src/react-server/renderSSRComplete.js +2 -1
  167. package/src/react-server/serverNoSSR.js +1 -1
  168. package/src/redux/_modularui/__tests__/actions.spec.js +1 -0
  169. package/src/redux/_modularui/actions.js +12 -12
  170. package/src/redux/_modularui/reducer.js +0 -1
  171. package/src/redux/actions/SignIn.js +5 -11
  172. package/src/redux/actions/__tests__/Application.spec.js +1 -0
  173. package/src/redux/actions/__tests__/CustomErrorResponseHandler.spec.js +2 -0
  174. package/src/utils/fetch/__tests__/xhr.spec.js +1 -0
  175. package/src/utils/fetch/xhr.js +3 -1
  176. package/src/utils/helpers/objects.js +2 -2
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/models/href/Href.js"],"names":["BASE","CONTENT_PATH","HTTP_METHODS","Parameter","IllegalArgumentException","Href","href","resourcetype","path","parameters","hash","state","method","GET","setFromHref","setFromString","setFromLocationOrObject","pathname","_path","search","addParametersFromString","Array","isArray","_parameters","param","addParameter","_name","_value","_prefix","getHashFromString","_hash","_state","getPathFromString","checkAbsoluteUrl","split","forEach","paramFromString","fromString","setParameter","name","value","prefix","removeParameter","push","getParameter","undefined","_method","withPrefix","toQuerystring","join","isModUIParameter","getQuerystring","_resourcetype","isExternal","querystring","length","absolutepath","thisPath","otherPath","equals","thisParams","toString","every","checkAbsolute","RegExp","test","decodedHref","decodeURI","hrefNoHash","substr","indexOf"],"mappings":"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","sourcesContent":["// @flow\nimport { BASE, CONTENT_PATH, HTTP_METHODS } from \"../../constants/Constants\";\n\nimport Parameter from \"../parameter/Parameter\";\nimport { IllegalArgumentException } from \"../../exceptions\";\n\nimport type { LocationShape } from \"react-router\";\n\ntype HrefObject = {\n _path: string,\n _hash: string,\n _parameters: Array<Parameter>,\n _resourcetype: string,\n _method: $Keys<typeof HTTP_METHODS>,\n _state: ?{ [key: string]: any },\n};\n\nexport type HrefInput = Href | HrefObject | LocationShape | string;\n\n/**\n * Defines a Href with the parameters\n */\nclass Href {\n _path: string;\n _hash: string;\n _parameters: Array<Parameter>;\n _resourcetype: string;\n _method: $Keys<typeof HTTP_METHODS>;\n _state: ?{ +[key: string]: any };\n\n /**\n * Create a Href\n */\n constructor(href?: HrefInput, resourcetype?: string) {\n this.path = \"\";\n this.parameters = [];\n this.hash = \"\";\n this.state = null;\n this.method = HTTP_METHODS.GET;\n this.resourcetype = resourcetype || \"\";\n\n if (href instanceof Href) {\n this.setFromHref(href);\n } else if (typeof href === \"string\") {\n this.setFromString(href);\n } else if (typeof href === \"object\") {\n this.setFromLocationOrObject(href);\n }\n }\n\n /**\n * Set parameters from Href model input\n */\n setFromHref(href: Href) {\n this.path = href.path;\n this.parameters = href.parameters;\n this.hash = href.hash;\n this.state = href.state;\n }\n\n /**\n */\n setFromLocationOrObject(href: LocationShape | HrefObject) {\n if (href.pathname) {\n this.path = href.pathname;\n } else if (typeof href._path === \"string\") {\n this.path = href._path;\n }\n\n if (href.search) {\n this.addParametersFromString(href.search);\n } else if (Array.isArray(href._parameters)) {\n // $FlowExpectedError[incompatible-call]\n href._parameters.map((param: Parameter) =>\n this.addParameter(param._name, param._value, param._prefix)\n );\n }\n\n if (href.hash) {\n this.hash = Href.getHashFromString(href.hash);\n } else if (typeof href._hash === \"string\") {\n this.hash = href._hash;\n }\n\n if (href.state) {\n this.state = href.state || null;\n } else if (typeof href._state === \"object\") {\n this.state = href._state;\n }\n }\n\n /**\n * Set parameters from string input\n */\n setFromString(href: string) {\n this.path = Href.getPathFromString(href);\n this.addParametersFromString(href);\n this.hash = Href.getHashFromString(href);\n }\n\n /**\n */\n get isChangePassword(): boolean {\n return this._path.includes(\"/change-password\");\n }\n\n /**\n * check if the path is referencing a camel route\n */\n static isCamelRoute(path: string): boolean {\n return (\n path.startsWith(\"/restServices\") && !path.startsWith(\"/restServices/ui\")\n );\n }\n\n /**\n */\n static checkAbsoluteUrl(href: string): boolean {\n const checkAbsolute = new RegExp(\"^(?:[a-z]+:)?//\", \"i\");\n return checkAbsolute.test(href);\n }\n\n // Check if url is relative (not checking for absolute urls with same domain)\n /**\n */\n get isExternal(): boolean {\n return Href.checkAbsoluteUrl(this.path);\n }\n\n /**\n * Retrieve the relative path part of a href string, e.g. https://www.beinformed.com/BeInformed/tab/view?q=url => /tab/view\n */\n static getPathFromString(href: string): string {\n const decodedHref = decodeURI(href);\n\n const hrefNoHash = decodedHref.includes(\"#\")\n ? decodedHref.substr(0, decodedHref.indexOf(\"#\"))\n : decodedHref;\n\n return hrefNoHash.includes(\"?\") ? hrefNoHash.split(\"?\")[0] : hrefNoHash;\n }\n\n /**\n * Retrieve hash of href string\n */\n static getHashFromString(href: string = \"\"): string {\n return href.includes(\"#\") ? href.substr(href.indexOf(\"#\") + 1) : \"\";\n }\n\n /**\n * Add a parameter for each parameter found in the querystring of an URL string, e.g. https://www.beinformed.com?q=url => q=url\n */\n addParametersFromString(href: string): Href {\n if (href.includes(\"?\")) {\n href\n .split(\"?\")[1]\n .split(\"&\")\n .forEach((param) => {\n const paramFromString = Parameter.fromString(param);\n if (paramFromString) {\n this.setParameter(\n paramFromString.name,\n paramFromString.value,\n paramFromString.prefix\n );\n }\n });\n }\n\n return this;\n }\n\n /**\n * Add a querystring parameter to the parameter collection of this Href, skips parameters that have a value of null\n */\n addParameter(name: string, value: ?string, prefix: ?string): Href {\n if (value !== null) {\n this.removeParameter(name, prefix);\n this._parameters.push(new Parameter(prefix, name, value));\n }\n\n return this;\n }\n\n /**\n * Adds or overwrites a parameter when it exists and value is not null.\n * Removes the parameter when the value is null\n */\n setParameter(name: string, value: ?string, prefix: ?string): Href {\n if (value === null) {\n this.removeParameter(name, prefix);\n } else {\n this.addParameter(name, value, prefix);\n }\n\n return this;\n }\n\n /**\n * Retrieve a parameter by it's name and (optionally) prefix\n */\n getParameter(name: string, prefix: ?string): ?Parameter {\n return this._parameters.find(\n (param) => param.prefix === prefix && param.name === name\n );\n }\n\n /**\n */\n hasParameter(name: string, prefix: ?string): boolean {\n return this.getParameter(name, prefix) !== undefined;\n }\n\n /**\n * Get request method\n */\n get method(): $Keys<typeof HTTP_METHODS> {\n return this._method;\n }\n\n /**\n * Set request method\n */\n set method(method: $Keys<typeof HTTP_METHODS>) {\n this._method = method || HTTP_METHODS.GET;\n }\n\n /**\n * Retrieve all paremters\n */\n get parameters(): Array<Parameter> {\n return this._parameters;\n }\n\n /**\n * Replace parameters of Href\n */\n set parameters(parameters: Array<Parameter>) {\n this._parameters = parameters;\n }\n\n /**\n * Remove a parameter from the parameter collection\n */\n removeParameter(name: string, prefix: ?string): Href {\n this._parameters = this._parameters.filter(\n (param) => param.prefix !== prefix || param.name !== name\n );\n\n return this;\n }\n\n /**\n * Get the parameters as a querystring, e.g. param1=value1&param2=value2, optionally with prefix\n */\n getQuerystring(withPrefix: boolean = false): string {\n return this.parameters\n .filter((param) => param.value != null)\n .map((param) => param.toQuerystring(withPrefix))\n .join(\"&\");\n }\n\n /**\n * Retrieve a querystring that only contains parameter that can be send to the modular ui, parameters are filtered by prefix\n */\n getQuerystringForModularUI(prefix: string = \"\"): string {\n return this.parameters\n .filter(\n (param) =>\n param.isModUIParameter &&\n (!prefix || !param.prefix || param.prefix === prefix) &&\n param.value != null\n )\n .map((param) => param.toQuerystring(false))\n .join(\"&\");\n }\n\n /**\n * Retrieve all parameters from the parameter collection in a querystring style name1=value1&name2=value2, without the prefix\n */\n get querystring(): string {\n return this.getQuerystring(false);\n }\n\n /**\n * Set the path of the Href, the part before the querystring question mark\n */\n set path(path: string) {\n this._path = path;\n }\n\n /**\n * Retrieve the path\n */\n get path(): string {\n return this._path || \"\";\n }\n\n /**\n * Set hash\n */\n set hash(hash: string) {\n this._hash = hash;\n }\n\n /**\n * Retrieve hash\n */\n get hash(): string {\n return this._hash;\n }\n\n /**\n */\n set state(state: ?{ +[key: string]: any }) {\n this._state = state;\n }\n\n /**\n */\n get state(): ?{ +[key: string]: any } {\n return this._state;\n }\n\n /**\n */\n setState(state: { [key: string]: any }): Href {\n this.state = state;\n\n return this;\n }\n\n /**\n * Set resourctype\n */\n set resourcetype(resourcetype: string) {\n this._resourcetype = resourcetype;\n }\n\n /**\n * Retrieve resourceType\n */\n get resourcetype(): string {\n return this._resourcetype;\n }\n\n /**\n * Retrieve the path combined with the BASE of the application, e.g. /BeInformed\n */\n get absolutepath(): string {\n if (this.isExternal) {\n return this.path;\n }\n\n return BASE + this.path;\n }\n\n /**\n * Retrieves the combination of the path and the querystring\n */\n get href(): string {\n return this.querystring.length > 0\n ? [this.path, this.querystring].join(\"?\")\n : this.path;\n }\n\n /**\n * Getting the URL including the base path\n */\n get absolutehref(): string {\n const querystring = this.getQuerystring(true);\n\n return querystring.length > 0\n ? [this.absolutepath, querystring].join(\"?\")\n : this.absolutepath;\n }\n\n /**\n * Checks if the URL starts within the given href\n */\n startsWith(href: Href | string): boolean {\n const thisPath = `${this.path}/`;\n const otherPath = href instanceof Href ? `${href.path}/` : href;\n\n return thisPath.startsWith(otherPath);\n }\n\n /**\n * Checks if the given Href equals this Href\n */\n equals(href: Href | string): boolean {\n if (href instanceof Href) {\n return this.path === href.path;\n }\n\n return this.path === href;\n }\n\n /**\n */\n equalsWithParameters(href: Href): boolean {\n if (!this.equals(href)) {\n return false;\n }\n\n if (href instanceof Href) {\n if (this.parameters.length !== href.parameters.length) {\n return false;\n }\n\n if (this.parameters.length === 0 && href.parameters.length === 0) {\n return true;\n }\n\n const thisParams = this.parameters.map((param) => param.toString());\n\n return href.parameters.every((param) =>\n thisParams.includes(param.toString())\n );\n }\n\n throw new IllegalArgumentException(`${href} is not an instance of Href`);\n }\n\n /**\n * Indicates if the link is a content link\n */\n get isContent(): boolean {\n return this.absolutepath.startsWith(CONTENT_PATH);\n }\n\n /**\n * Returns a complete url from the Href\n */\n toString(): string {\n return this.href;\n }\n\n /**\n */\n toLocation(): LocationShape {\n return {\n pathname: this.path,\n search: this.querystring.length > 0 ? `?${this.querystring}` : \"\",\n hash: this.hash.length > 0 ? `#${this.hash}` : \"\",\n state: this.state,\n };\n }\n}\n\nexport default Href;\n"],"file":"Href.js"}
1
+ {"version":3,"sources":["../../../src/models/href/Href.js"],"names":["BASE","CONTENT_PATH","HTTP_METHODS","Parameter","IllegalArgumentException","Href","href","resourcetype","path","parameters","hash","state","method","GET","setFromHref","setFromString","setFromLocationOrObject","pathname","_path","search","addParametersFromString","Array","isArray","_parameters","param","addParameter","_name","_value","_prefix","getHashFromString","_hash","_state","getPathFromString","checkAbsoluteUrl","split","forEach","paramFromString","fromString","setParameter","name","value","prefix","removeParameter","push","getParameter","undefined","_method","withPrefix","toQuerystring","join","isModUIParameter","getQuerystring","_resourcetype","isExternal","querystring","length","absolutepath","thisPath","otherPath","equals","thisParams","toString","every","checkAbsolute","RegExp","test","decodedHref","decodeURI","hrefNoHash","substr","indexOf"],"mappings":"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","sourcesContent":["// @flow\nimport { BASE, CONTENT_PATH, HTTP_METHODS } from \"../../constants/Constants\";\n\nimport Parameter from \"../parameter/Parameter\";\nimport { IllegalArgumentException } from \"../../exceptions\";\n\nimport type { LocationShape, Location } from \"react-router\";\n\ntype HrefObject = {\n _path: string,\n _hash: string,\n _parameters: Array<Parameter>,\n _resourcetype: string,\n _method: $Keys<typeof HTTP_METHODS>,\n _state: ?{ [key: string]: any },\n pathname: ?string,\n};\n\nexport type HrefInput = Href | HrefObject | LocationShape | string;\n\n/**\n * Defines a Href with the parameters\n */\nclass Href {\n _path: string;\n _hash: string;\n _parameters: Array<Parameter>;\n _resourcetype: string;\n _method: $Keys<typeof HTTP_METHODS>;\n _state: ?{ +[key: string]: any };\n\n /**\n * Create a Href\n */\n constructor(href?: HrefInput, resourcetype?: string) {\n this.path = \"\";\n this.parameters = [];\n this.hash = \"\";\n this.state = null;\n this.method = HTTP_METHODS.GET;\n this.resourcetype = resourcetype || \"\";\n\n if (href instanceof Href) {\n this.setFromHref(href);\n } else if (typeof href === \"string\") {\n this.setFromString(href);\n } else if (typeof href === \"object\") {\n this.setFromLocationOrObject(href);\n }\n }\n\n /**\n * Set parameters from Href model input\n */\n setFromHref(href: Href) {\n this.path = href.path;\n this.parameters = href.parameters;\n this.hash = href.hash;\n this.state = href.state;\n }\n\n /**\n */\n setFromLocationOrObject(href: LocationShape | HrefObject) {\n if (typeof href[\"pathname\"] === \"string\") {\n this.path = href.pathname;\n } else if (typeof href._path === \"string\") {\n this.path = href._path;\n }\n\n if (href.search) {\n this.addParametersFromString(href.search);\n } else if (Array.isArray(href._parameters)) {\n // $FlowExpectedError[incompatible-call]\n href._parameters.map((param: Parameter) =>\n this.addParameter(param._name, param._value, param._prefix)\n );\n }\n\n if (href.hash) {\n this.hash = Href.getHashFromString(href.hash);\n } else if (typeof href._hash === \"string\") {\n this.hash = href._hash;\n }\n\n if (href.state) {\n this.state = href.state || null;\n } else if (typeof href._state === \"object\") {\n this.state = href._state;\n }\n }\n\n /**\n * Set parameters from string input\n */\n setFromString(href: string) {\n this.path = Href.getPathFromString(href);\n this.addParametersFromString(href);\n this.hash = Href.getHashFromString(href);\n }\n\n /**\n */\n get isChangePassword(): boolean {\n return this._path.includes(\"/change-password\");\n }\n\n /**\n * check if the path is referencing a camel route\n */\n static isCamelRoute(path: string): boolean {\n return (\n path.startsWith(\"/restServices\") && !path.startsWith(\"/restServices/ui\")\n );\n }\n\n /**\n */\n static checkAbsoluteUrl(href: string): boolean {\n const checkAbsolute = new RegExp(\"^(?:[a-z]+:)?//\", \"i\");\n return checkAbsolute.test(href);\n }\n\n // Check if url is relative (not checking for absolute urls with same domain)\n /**\n */\n get isExternal(): boolean {\n return Href.checkAbsoluteUrl(this.path);\n }\n\n /**\n * Retrieve the relative path part of a href string, e.g. https://www.beinformed.com/BeInformed/tab/view?q=url => /tab/view\n */\n static getPathFromString(href: string): string {\n const decodedHref = decodeURI(href);\n\n const hrefNoHash = decodedHref.includes(\"#\")\n ? decodedHref.substr(0, decodedHref.indexOf(\"#\"))\n : decodedHref;\n\n return hrefNoHash.includes(\"?\") ? hrefNoHash.split(\"?\")[0] : hrefNoHash;\n }\n\n /**\n * Retrieve hash of href string\n */\n static getHashFromString(href: string = \"\"): string {\n return href.includes(\"#\") ? href.substr(href.indexOf(\"#\") + 1) : \"\";\n }\n\n /**\n * Add a parameter for each parameter found in the querystring of an URL string, e.g. https://www.beinformed.com?q=url => q=url\n */\n addParametersFromString(href: string): Href {\n if (href.includes(\"?\")) {\n href\n .split(\"?\")[1]\n .split(\"&\")\n .forEach((param) => {\n const paramFromString = Parameter.fromString(param);\n if (paramFromString) {\n this.setParameter(\n paramFromString.name,\n paramFromString.value,\n paramFromString.prefix\n );\n }\n });\n }\n\n return this;\n }\n\n /**\n * Add a querystring parameter to the parameter collection of this Href, skips parameters that have a value of null\n */\n addParameter(name: string, value: ?string, prefix: ?string): Href {\n if (value !== null) {\n this.removeParameter(name, prefix);\n this._parameters.push(new Parameter(prefix, name, value));\n }\n\n return this;\n }\n\n /**\n * Adds or overwrites a parameter when it exists and value is not null.\n * Removes the parameter when the value is null\n */\n setParameter(name: string, value: ?string, prefix: ?string): Href {\n if (value === null) {\n this.removeParameter(name, prefix);\n } else {\n this.addParameter(name, value, prefix);\n }\n\n return this;\n }\n\n /**\n * Retrieve a parameter by it's name and (optionally) prefix\n */\n getParameter(name: string, prefix: ?string): ?Parameter {\n return this._parameters.find(\n (param) => param.prefix === prefix && param.name === name\n );\n }\n\n /**\n */\n hasParameter(name: string, prefix: ?string): boolean {\n return this.getParameter(name, prefix) !== undefined;\n }\n\n /**\n * Get request method\n */\n get method(): $Keys<typeof HTTP_METHODS> {\n return this._method;\n }\n\n /**\n * Set request method\n */\n set method(method: $Keys<typeof HTTP_METHODS>) {\n this._method = method || HTTP_METHODS.GET;\n }\n\n /**\n * Retrieve all paremters\n */\n get parameters(): Array<Parameter> {\n return this._parameters;\n }\n\n /**\n * Replace parameters of Href\n */\n set parameters(parameters: Array<Parameter>) {\n this._parameters = parameters;\n }\n\n /**\n * Remove a parameter from the parameter collection\n */\n removeParameter(name: string, prefix: ?string): Href {\n this._parameters = this._parameters.filter(\n (param) => param.prefix !== prefix || param.name !== name\n );\n\n return this;\n }\n\n /**\n * Get the parameters as a querystring, e.g. param1=value1&param2=value2, optionally with prefix\n */\n getQuerystring(withPrefix: boolean = false): string {\n return this.parameters\n .filter((param) => param.value != null)\n .map((param) => param.toQuerystring(withPrefix))\n .join(\"&\");\n }\n\n /**\n * Retrieve a querystring that only contains parameter that can be send to the modular ui, parameters are filtered by prefix\n */\n getQuerystringForModularUI(prefix: string = \"\"): string {\n return this.parameters\n .filter(\n (param) =>\n param.isModUIParameter &&\n (!prefix || !param.prefix || param.prefix === prefix) &&\n param.value != null\n )\n .map((param) => param.toQuerystring(false))\n .join(\"&\");\n }\n\n /**\n * Retrieve all parameters from the parameter collection in a querystring style name1=value1&name2=value2, without the prefix\n */\n get querystring(): string {\n return this.getQuerystring(false);\n }\n\n /**\n * Set the path of the Href, the part before the querystring question mark\n */\n set path(path: string) {\n this._path = path;\n }\n\n /**\n * Retrieve the path\n */\n get path(): string {\n return this._path || \"\";\n }\n\n /**\n * Set hash\n */\n set hash(hash: string) {\n this._hash = hash;\n }\n\n /**\n * Retrieve hash\n */\n get hash(): string {\n return this._hash;\n }\n\n /**\n */\n set state(state: ?{ +[key: string]: any }) {\n this._state = state;\n }\n\n /**\n */\n get state(): ?{ +[key: string]: any } {\n return this._state;\n }\n\n /**\n */\n setState(state: { [key: string]: any }): Href {\n this.state = state;\n\n return this;\n }\n\n /**\n * Set resourctype\n */\n set resourcetype(resourcetype: string) {\n this._resourcetype = resourcetype;\n }\n\n /**\n * Retrieve resourceType\n */\n get resourcetype(): string {\n return this._resourcetype;\n }\n\n /**\n * Retrieve the path combined with the BASE of the application, e.g. /BeInformed\n */\n get absolutepath(): string {\n if (this.isExternal) {\n return this.path;\n }\n\n return BASE + this.path;\n }\n\n /**\n * Retrieves the combination of the path and the querystring\n */\n get href(): string {\n return this.querystring.length > 0\n ? [this.path, this.querystring].join(\"?\")\n : this.path;\n }\n\n /**\n * Getting the URL including the base path\n */\n get absolutehref(): string {\n const querystring = this.getQuerystring(true);\n\n return querystring.length > 0\n ? [this.absolutepath, querystring].join(\"?\")\n : this.absolutepath;\n }\n\n /**\n * Checks if the URL starts within the given href\n */\n startsWith(href: Href | string): boolean {\n const thisPath = `${this.path}/`;\n const otherPath = href instanceof Href ? `${href.path}/` : href;\n\n return thisPath.startsWith(otherPath);\n }\n\n /**\n * Checks if the given Href equals this Href\n */\n equals(href: Href | string): boolean {\n if (href instanceof Href) {\n return this.path === href.path;\n }\n\n return this.path === href;\n }\n\n /**\n */\n equalsWithParameters(href: Href): boolean {\n if (!this.equals(href)) {\n return false;\n }\n\n if (href instanceof Href) {\n if (this.parameters.length !== href.parameters.length) {\n return false;\n }\n\n if (this.parameters.length === 0 && href.parameters.length === 0) {\n return true;\n }\n\n const thisParams = this.parameters.map((param) => param.toString());\n\n return href.parameters.every((param) =>\n thisParams.includes(param.toString())\n );\n }\n\n throw new IllegalArgumentException(`${href} is not an instance of Href`);\n }\n\n /**\n * Indicates if the link is a content link\n */\n get isContent(): boolean {\n return this.absolutepath.startsWith(CONTENT_PATH);\n }\n\n /**\n * Returns a complete url from the Href\n */\n toString(): string {\n return this.href;\n }\n\n /**\n */\n toLocation(): Location {\n return {\n pathname: this.path,\n search: this.querystring.length > 0 ? `?${this.querystring}` : \"\",\n hash: this.hash.length > 0 ? `#${this.hash}` : \"\",\n state: this.state,\n };\n }\n}\n\nexport default Href;\n"],"file":"Href.js"}
@@ -26,8 +26,7 @@ var renderSSRComplete = function renderSSRComplete(_ref) {
26
26
  template = _ref$template === void 0 ? htmlpage : _ref$template;
27
27
  var helmetContext = {};
28
28
  var routerContext = {};
29
- var sheet = new ServerStyleSheet(); // $FlowExpectedError[incompatible-type]
30
-
29
+ var sheet = new ServerStyleSheet();
31
30
  var location = requestHref.toLocation();
32
31
  return createSSRComplete(store, function () {
33
32
  return renderToString( /*#__PURE__*/_jsx(Provider, {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/react-server/renderSSRComplete.js"],"names":["renderToString","Provider","StaticRouter","Router","HelmetProvider","ServerStyleSheet","StyleSheetManager","createSSRComplete","htmlpage","BASE","ThemeProvider","ErrorBoundary","createHead","handleErrors","dehydrate","renderSSRComplete","store","theme","UUID","requestHref","render","ErrorPage","template","helmetContext","routerContext","sheet","location","toLocation","instance","then","appHTML","head","contextPath","html","state","catch","error","message","fileName","lineNumber","stack","helmet"],"mappings":"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","sourcesContent":["// @flow\nimport { renderToString } from \"react-dom/server\";\nimport { Provider } from \"react-redux\";\nimport { StaticRouter as Router } from \"react-router\";\n\nimport { HelmetProvider } from \"react-helmet-async\";\n\nimport { ServerStyleSheet, StyleSheetManager } from \"styled-components\";\n\nimport createSSRComplete from \"./createSSRComplete\";\nimport htmlpage from \"./htmlpage\";\n\nimport { BASE } from \"../constants/Constants\";\n\nimport ThemeProvider from \"../react-theme/ThemeProvider\";\nimport ErrorBoundary from \"../react/ErrorBoundary\";\n\nimport { createHead, handleErrors, dehydrate } from \"./serverUtil\";\n\nimport type { Theme } from \"../react-theme/types\";\nimport type { ReduxStore } from \"../redux/types\";\nimport type Href from \"../models/href/Href\";\nimport type { TemplateProps } from \"./htmlpage\";\ntype Props = {\n store: ReduxStore,\n theme: Theme,\n UUID: string,\n requestHref: Href,\n render: Function,\n ErrorPage: any,\n template?: (TemplateProps) => string,\n};\n/**\n */\nconst renderSSRComplete = ({\n store,\n theme = {},\n UUID = \"\",\n requestHref,\n render,\n ErrorPage,\n template = htmlpage,\n}: Props): Promise<string> => {\n const helmetContext = {};\n const routerContext = {};\n\n const sheet = new ServerStyleSheet();\n\n // $FlowExpectedError[incompatible-type]\n const location: Location = requestHref.toLocation();\n\n return createSSRComplete(store, () =>\n renderToString(\n <Provider store={store}>\n <StyleSheetManager sheet={sheet.instance}>\n <ThemeProvider theme={theme}>\n <HelmetProvider context={helmetContext}>\n <ErrorBoundary>\n <Router\n basename={BASE}\n location={location}\n context={routerContext}\n >\n {render()}\n </Router>\n </ErrorBoundary>\n </HelmetProvider>\n </ThemeProvider>\n </StyleSheetManager>\n </Provider>\n )\n )\n .then((appHTML) => {\n handleErrors(store);\n const head = createHead(sheet, UUID, helmetContext);\n return template({\n contextPath: BASE,\n html: appHTML,\n head,\n state: dehydrate(store),\n UUID,\n });\n })\n .catch((error) =>\n template({\n contextPath: BASE,\n html: renderToString(\n <StyleSheetManager sheet={sheet.instance}>\n <ThemeProvider theme={theme}>\n <ErrorPage\n errorMessage={error.message}\n errorResource={error.fileName}\n errorLine={error.lineNumber}\n errorStack={error.stack}\n />\n </ThemeProvider>\n </StyleSheetManager>\n ),\n head: helmetContext.helmet,\n state: \"\",\n UUID,\n })\n );\n};\n\nexport default renderSSRComplete;\n"],"file":"renderSSRComplete.js"}
1
+ {"version":3,"sources":["../../src/react-server/renderSSRComplete.js"],"names":["renderToString","Provider","StaticRouter","Router","HelmetProvider","ServerStyleSheet","StyleSheetManager","createSSRComplete","htmlpage","BASE","ThemeProvider","ErrorBoundary","createHead","handleErrors","dehydrate","renderSSRComplete","store","theme","UUID","requestHref","render","ErrorPage","template","helmetContext","routerContext","sheet","location","toLocation","instance","then","appHTML","head","contextPath","html","state","catch","error","message","fileName","lineNumber","stack","helmet"],"mappings":"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","sourcesContent":["// @flow\nimport { renderToString } from \"react-dom/server\";\nimport { Provider } from \"react-redux\";\nimport { StaticRouter as Router } from \"react-router\";\n\nimport { HelmetProvider } from \"react-helmet-async\";\n\nimport { ServerStyleSheet, StyleSheetManager } from \"styled-components\";\n\nimport createSSRComplete from \"./createSSRComplete\";\nimport htmlpage from \"./htmlpage\";\n\nimport { BASE } from \"../constants/Constants\";\n\nimport ThemeProvider from \"../react-theme/ThemeProvider\";\nimport ErrorBoundary from \"../react/ErrorBoundary\";\n\nimport { createHead, handleErrors, dehydrate } from \"./serverUtil\";\n\nimport type { Theme } from \"../react-theme/types\";\nimport type { ReduxStore } from \"../redux/types\";\nimport type Href from \"../models/href/Href\";\nimport type { TemplateProps } from \"./htmlpage\";\nimport type { Location } from \"react-router\";\n\ntype Props = {\n store: ReduxStore,\n theme: Theme,\n UUID: string,\n requestHref: Href,\n render: Function,\n ErrorPage: any,\n template?: (TemplateProps) => string,\n};\n/**\n */\nconst renderSSRComplete = ({\n store,\n theme = {},\n UUID = \"\",\n requestHref,\n render,\n ErrorPage,\n template = htmlpage,\n}: Props): Promise<string> => {\n const helmetContext = {};\n const routerContext = {};\n\n const sheet = new ServerStyleSheet();\n\n const location: Location = requestHref.toLocation();\n\n return createSSRComplete(store, () =>\n renderToString(\n <Provider store={store}>\n <StyleSheetManager sheet={sheet.instance}>\n <ThemeProvider theme={theme}>\n <HelmetProvider context={helmetContext}>\n <ErrorBoundary>\n <Router\n basename={BASE}\n location={location}\n context={routerContext}\n >\n {render()}\n </Router>\n </ErrorBoundary>\n </HelmetProvider>\n </ThemeProvider>\n </StyleSheetManager>\n </Provider>\n )\n )\n .then((appHTML) => {\n handleErrors(store);\n const head = createHead(sheet, UUID, helmetContext);\n return template({\n contextPath: BASE,\n html: appHTML,\n head,\n state: dehydrate(store),\n UUID,\n });\n })\n .catch((error) =>\n template({\n contextPath: BASE,\n html: renderToString(\n <StyleSheetManager sheet={sheet.instance}>\n <ThemeProvider theme={theme}>\n <ErrorPage\n errorMessage={error.message}\n errorResource={error.fileName}\n errorLine={error.lineNumber}\n errorStack={error.stack}\n />\n </ThemeProvider>\n </StyleSheetManager>\n ),\n head: helmetContext.helmet,\n state: \"\",\n UUID,\n })\n );\n};\n\nexport default renderSSRComplete;\n"],"file":"renderSSRComplete.js"}
@@ -30,7 +30,7 @@ var serverNoSSR = function serverNoSSR(_ref) {
30
30
  if (theme) {
31
31
  var _store$getState, _store$getState$prefe;
32
32
 
33
- var storedTheme = (_store$getState = store.getState()) === null || _store$getState === void 0 ? void 0 : (_store$getState$prefe = _store$getState.preferences) === null || _store$getState$prefe === void 0 ? void 0 : _store$getState$prefe.theme; // $FlowFixMe
33
+ var storedTheme = (_store$getState = store.getState()) === null || _store$getState === void 0 ? void 0 : (_store$getState$prefe = _store$getState.preferences) === null || _store$getState$prefe === void 0 ? void 0 : _store$getState$prefe.theme; // $FlowFixMe[incompatible-call]
34
34
 
35
35
  createTheme(storedTheme, theme);
36
36
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/react-server/serverNoSSR.js"],"names":["createUUID","getFullRequestHref","createReduxStore","setI18n","setServerPreferences","setConfigurationTheme","handleErrors","handleBeforeRenderHooks","renderSSRMinimal","createTheme","serverNoSSR","request","locales","customReducers","serverPreferences","theme","render","template","beforeRenderHooks","UUID","__webpack_nonce__","requestHref","store","storedTheme","getState","preferences"],"mappings":"AACA,OAAO,eAAP;AAEA,OAAOA,UAAP,MAAuB,6BAAvB;AACA,SAASC,kBAAT,QAAmC,sBAAnC;AAEA,SACEC,gBADF,EAEEC,OAFF,EAGEC,oBAHF,EAIEC,qBAJF,EAKEC,YALF,QAMO,cANP;AAQA,SAASC,uBAAT,QAAwC,kCAAxC;AAEA,OAAOC,gBAAP,MAA6B,oBAA7B;AAEA,OAAOC,WAAP,MAAwB,4BAAxB;;AAiBA;AACA;AACA,IAAMC,WAAW,GAAG,SAAdA,WAAc,OASO;AAAA,MARzBC,OAQyB,QARzBA,OAQyB;AAAA,MAPzBC,OAOyB,QAPzBA,OAOyB;AAAA,MANzBC,cAMyB,QANzBA,cAMyB;AAAA,mCALzBC,iBAKyB;AAAA,MALzBA,iBAKyB,sCALL,EAKK;AAAA,wBAJzBC,KAIyB;AAAA,MAJzBA,KAIyB,2BAJjB,IAIiB;AAAA,MAHzBC,MAGyB,QAHzBA,MAGyB;AAAA,MAFzBC,QAEyB,QAFzBA,QAEyB;AAAA,MADzBC,iBACyB,QADzBA,iBACyB;AACzB,MAAMC,IAAI,GAAGnB,UAAU,EAAvB;AACAoB,EAAAA,iBAAiB,GAAGD,IAApB,CAFyB,CAEC;;AAE1B,MAAME,WAAW,GAAGpB,kBAAkB,CAACU,OAAD,CAAtC;AACA,MAAMW,KAAK,GAAGpB,gBAAgB,CAACmB,WAAD,EAAcR,cAAd,CAA9B;AAEAT,EAAAA,oBAAoB,CAACkB,KAAD,EAAQR,iBAAR,CAApB;AACAT,EAAAA,qBAAqB,CAACiB,KAAD,CAArB;;AAEA,MAAIP,KAAJ,EAAW;AAAA;;AACT,QAAMQ,WAAW,sBAAGD,KAAK,CAACE,QAAN,EAAH,6EAAG,gBAAkBC,WAArB,0DAAG,sBAA+BV,KAAnD,CADS,CAET;;AACAN,IAAAA,WAAW,CAACc,WAAD,EAAcR,KAAd,CAAX;AACD;;AAEDZ,EAAAA,OAAO,CAACmB,KAAD,EAAQV,OAAR,EAAiBD,OAAjB,CAAP;AAEAL,EAAAA,YAAY,CAACgB,KAAD,CAAZ;AAEAf,EAAAA,uBAAuB,CAACW,iBAAD,EAAoB;AAAEI,IAAAA,KAAK,EAALA,KAAF;AAASX,IAAAA,OAAO,EAAPA;AAAT,GAApB,CAAvB;AAEA,SAAOH,gBAAgB,CAAC;AAAEc,IAAAA,KAAK,EAALA,KAAF;AAASP,IAAAA,KAAK,EAALA,KAAT;AAAgBI,IAAAA,IAAI,EAAJA,IAAhB;AAAsBH,IAAAA,MAAM,EAANA,MAAtB;AAA8BC,IAAAA,QAAQ,EAARA;AAA9B,GAAD,CAAvB;AACD,CAhCD;;AAkCA,eAAeP,WAAf","sourcesContent":["// @flow\nimport \"./contextPath\";\n\nimport createUUID from \"../utils/helpers/createUUID\";\nimport { getFullRequestHref } from \"./requestInformation\";\n\nimport {\n createReduxStore,\n setI18n,\n setServerPreferences,\n setConfigurationTheme,\n handleErrors,\n} from \"./serverUtil\";\n\nimport { handleBeforeRenderHooks } from \"../redux/store/beforeRenderHooks\";\n\nimport renderSSRMinimal from \"./renderSSRMinimal\";\n\nimport createTheme from \"../react-theme/createTheme\";\n\nimport type { TemplateProps } from \"./htmlpage\";\nimport type { BeforeRenderHook } from \"../redux/store/beforeRenderHooks\";\nimport type { PreferenceValue } from \"./serverUtil\";\nimport type { LocaleConfiguration } from \"../i18n/types\";\ntype serverProps = {\n request: HttpServletRequestJava,\n locales?: Array<LocaleConfiguration>,\n customReducers?: Object,\n theme?: Object,\n serverPreferences?: Array<string | PreferenceValue>,\n render: Function,\n template?: (TemplateProps) => string,\n beforeRenderHooks?: Array<BeforeRenderHook>,\n};\n\n/**\n */\nconst serverNoSSR = ({\n request,\n locales,\n customReducers,\n serverPreferences = [],\n theme = null,\n render,\n template,\n beforeRenderHooks,\n}: serverProps): string => {\n const UUID = createUUID();\n __webpack_nonce__ = UUID; // NOSONAR\n\n const requestHref = getFullRequestHref(request);\n const store = createReduxStore(requestHref, customReducers);\n\n setServerPreferences(store, serverPreferences);\n setConfigurationTheme(store);\n\n if (theme) {\n const storedTheme = store.getState()?.preferences?.theme;\n // $FlowFixMe\n createTheme(storedTheme, theme);\n }\n\n setI18n(store, locales, request);\n\n handleErrors(store);\n\n handleBeforeRenderHooks(beforeRenderHooks, { store, request });\n\n return renderSSRMinimal({ store, theme, UUID, render, template });\n};\n\nexport default serverNoSSR;\n"],"file":"serverNoSSR.js"}
1
+ {"version":3,"sources":["../../src/react-server/serverNoSSR.js"],"names":["createUUID","getFullRequestHref","createReduxStore","setI18n","setServerPreferences","setConfigurationTheme","handleErrors","handleBeforeRenderHooks","renderSSRMinimal","createTheme","serverNoSSR","request","locales","customReducers","serverPreferences","theme","render","template","beforeRenderHooks","UUID","__webpack_nonce__","requestHref","store","storedTheme","getState","preferences"],"mappings":"AACA,OAAO,eAAP;AAEA,OAAOA,UAAP,MAAuB,6BAAvB;AACA,SAASC,kBAAT,QAAmC,sBAAnC;AAEA,SACEC,gBADF,EAEEC,OAFF,EAGEC,oBAHF,EAIEC,qBAJF,EAKEC,YALF,QAMO,cANP;AAQA,SAASC,uBAAT,QAAwC,kCAAxC;AAEA,OAAOC,gBAAP,MAA6B,oBAA7B;AAEA,OAAOC,WAAP,MAAwB,4BAAxB;;AAiBA;AACA;AACA,IAAMC,WAAW,GAAG,SAAdA,WAAc,OASO;AAAA,MARzBC,OAQyB,QARzBA,OAQyB;AAAA,MAPzBC,OAOyB,QAPzBA,OAOyB;AAAA,MANzBC,cAMyB,QANzBA,cAMyB;AAAA,mCALzBC,iBAKyB;AAAA,MALzBA,iBAKyB,sCALL,EAKK;AAAA,wBAJzBC,KAIyB;AAAA,MAJzBA,KAIyB,2BAJjB,IAIiB;AAAA,MAHzBC,MAGyB,QAHzBA,MAGyB;AAAA,MAFzBC,QAEyB,QAFzBA,QAEyB;AAAA,MADzBC,iBACyB,QADzBA,iBACyB;AACzB,MAAMC,IAAI,GAAGnB,UAAU,EAAvB;AACAoB,EAAAA,iBAAiB,GAAGD,IAApB,CAFyB,CAEC;;AAE1B,MAAME,WAAW,GAAGpB,kBAAkB,CAACU,OAAD,CAAtC;AACA,MAAMW,KAAK,GAAGpB,gBAAgB,CAACmB,WAAD,EAAcR,cAAd,CAA9B;AAEAT,EAAAA,oBAAoB,CAACkB,KAAD,EAAQR,iBAAR,CAApB;AACAT,EAAAA,qBAAqB,CAACiB,KAAD,CAArB;;AAEA,MAAIP,KAAJ,EAAW;AAAA;;AACT,QAAMQ,WAAW,sBAAGD,KAAK,CAACE,QAAN,EAAH,6EAAG,gBAAkBC,WAArB,0DAAG,sBAA+BV,KAAnD,CADS,CAET;;AACAN,IAAAA,WAAW,CAACc,WAAD,EAAcR,KAAd,CAAX;AACD;;AAEDZ,EAAAA,OAAO,CAACmB,KAAD,EAAQV,OAAR,EAAiBD,OAAjB,CAAP;AAEAL,EAAAA,YAAY,CAACgB,KAAD,CAAZ;AAEAf,EAAAA,uBAAuB,CAACW,iBAAD,EAAoB;AAAEI,IAAAA,KAAK,EAALA,KAAF;AAASX,IAAAA,OAAO,EAAPA;AAAT,GAApB,CAAvB;AAEA,SAAOH,gBAAgB,CAAC;AAAEc,IAAAA,KAAK,EAALA,KAAF;AAASP,IAAAA,KAAK,EAALA,KAAT;AAAgBI,IAAAA,IAAI,EAAJA,IAAhB;AAAsBH,IAAAA,MAAM,EAANA,MAAtB;AAA8BC,IAAAA,QAAQ,EAARA;AAA9B,GAAD,CAAvB;AACD,CAhCD;;AAkCA,eAAeP,WAAf","sourcesContent":["// @flow\nimport \"./contextPath\";\n\nimport createUUID from \"../utils/helpers/createUUID\";\nimport { getFullRequestHref } from \"./requestInformation\";\n\nimport {\n createReduxStore,\n setI18n,\n setServerPreferences,\n setConfigurationTheme,\n handleErrors,\n} from \"./serverUtil\";\n\nimport { handleBeforeRenderHooks } from \"../redux/store/beforeRenderHooks\";\n\nimport renderSSRMinimal from \"./renderSSRMinimal\";\n\nimport createTheme from \"../react-theme/createTheme\";\n\nimport type { TemplateProps } from \"./htmlpage\";\nimport type { BeforeRenderHook } from \"../redux/store/beforeRenderHooks\";\nimport type { PreferenceValue } from \"./serverUtil\";\nimport type { LocaleConfiguration } from \"../i18n/types\";\ntype serverProps = {\n request: HttpServletRequestJava,\n locales?: Array<LocaleConfiguration>,\n customReducers?: Object,\n theme?: Object,\n serverPreferences?: Array<string | PreferenceValue>,\n render: Function,\n template?: (TemplateProps) => string,\n beforeRenderHooks?: Array<BeforeRenderHook>,\n};\n\n/**\n */\nconst serverNoSSR = ({\n request,\n locales,\n customReducers,\n serverPreferences = [],\n theme = null,\n render,\n template,\n beforeRenderHooks,\n}: serverProps): string => {\n const UUID = createUUID();\n __webpack_nonce__ = UUID; // NOSONAR\n\n const requestHref = getFullRequestHref(request);\n const store = createReduxStore(requestHref, customReducers);\n\n setServerPreferences(store, serverPreferences);\n setConfigurationTheme(store);\n\n if (theme) {\n const storedTheme = store.getState()?.preferences?.theme;\n // $FlowFixMe[incompatible-call]\n createTheme(storedTheme, theme);\n }\n\n setI18n(store, locales, request);\n\n handleErrors(store);\n\n handleBeforeRenderHooks(beforeRenderHooks, { store, request });\n\n return renderSSRMinimal({ store, theme, UUID, render, template });\n};\n\nexport default serverNoSSR;\n"],"file":"serverNoSSR.js"}
@@ -1,14 +1,15 @@
1
- import _Object$keys from "@babel/runtime-corejs3/core-js-stable/object/keys";
2
- import _Object$getOwnPropertySymbols from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols";
3
- import _filterInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/filter";
4
- import _Object$getOwnPropertyDescriptor from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor";
5
- import _Object$getOwnPropertyDescriptors from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors";
6
1
  import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
7
2
 
8
3
  function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
9
4
 
10
5
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? Object.defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
11
6
 
7
+ import _Promise from "@babel/runtime-corejs3/core-js-stable/promise";
8
+ import _Object$keys from "@babel/runtime-corejs3/core-js-stable/object/keys";
9
+ import _Object$getOwnPropertySymbols from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols";
10
+ import _filterInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/filter";
11
+ import _Object$getOwnPropertyDescriptor from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor";
12
+ import _Object$getOwnPropertyDescriptors from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors";
12
13
  import { HTTP_METHODS, MODULARUI_STATUS } from "../../constants/Constants";
13
14
  import Href from "../../models/href/Href";
14
15
  import ErrorResponse from "../../models/error/ErrorResponse";
@@ -72,7 +73,8 @@ export var updateStatus = function updateStatus(key, status) {
72
73
 
73
74
  var loadModelSuccessAction = function loadModelSuccessAction(key, model, modelToUpdate) {
74
75
  if (modelToUpdate) {
75
- if (typeof modelToUpdate.update === "function") {
76
+ // $FlowFixMe[prop-missing]
77
+ if (typeof modelToUpdate["update"] === "function") {
76
78
  var clonedModel = modelToUpdate.clone();
77
79
  clonedModel.update(model);
78
80
  return updateModel(clonedModel);
@@ -132,18 +134,15 @@ export var loadModularUI = function loadModularUI(key, href, options) {
132
134
  dispatch(updateStatus(key, MODULARUI_STATUS.LOADING));
133
135
  dispatch(startProgress());
134
136
  var loadModelPromise = dispatch(loadModel(key, href, options));
137
+ return _Promise.resolve(loadModelPromise).then(function (response) {
138
+ if ((response === null || response === void 0 ? void 0 : response.type) === "FINISH_PROGRESS") {
139
+ dispatch(updateStatus(key, MODULARUI_STATUS.FINISHED));
140
+ }
135
141
 
136
- if (typeof loadModelPromise !== "function" && loadModelPromise.then) {
137
- return loadModelPromise.then(function (response) {
138
- if ((response === null || response === void 0 ? void 0 : response.type) === "FINISH_PROGRESS") {
139
- dispatch(updateStatus(key, MODULARUI_STATUS.FINISHED));
140
- }
141
-
142
- return dispatch(finishProgress());
143
- }).catch(function (error) {
144
- return dispatch(handleError(error));
145
- });
146
- }
142
+ return dispatch(finishProgress());
143
+ }).catch(function (error) {
144
+ return dispatch(handleError(error));
145
+ });
147
146
  };
148
147
  };
149
148
  /**
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/redux/_modularui/actions.js"],"names":["HTTP_METHODS","MODULARUI_STATUS","Href","ErrorResponse","finishProgress","startProgress","handleError","setModel","key","model","connectKey","type","payload","updateModel","removeModelByKey","resetModularUI","updateStatus","status","loadModelSuccessAction","modelToUpdate","update","clonedModel","clone","Error","loadModel","href","options","method","GET","data","locale","childmodels","targetModel","successAction","errorAction","error","errorResponse","isChangePassword","isResourceNotFoundAfterReload","isInvalidUsername","ERROR","loadModularUI","dispatch","LOADING","loadModelPromise","then","response","FINISHED","catch","reloadModel","selfhref","isReload"],"mappings":"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","sourcesContent":["// @flow\nimport { HTTP_METHODS, MODULARUI_STATUS } from \"../../constants/Constants\";\nimport Href from \"../../models/href/Href\";\nimport ErrorResponse from \"../../models/error/ErrorResponse\";\nimport { finishProgress, startProgress } from \"../actions/ProgressIndicator\";\nimport { handleError } from \"../actions/Error\";\n\nimport type { ModularUIModel } from \"../../models/types\";\nimport type { Dispatch, ThunkAction } from \"../types\";\nimport type {\n ModularUIAction,\n SetModelAction,\n UpdateModelAction,\n RemoveModelByKeyAction,\n ResetModularUIAction,\n UpdateStatusAction,\n} from \"./types\";\nimport type { RequestBaseOptions } from \"../../utils/fetch/types\";\n\n/**\n */\nexport const setModel = (\n key: string,\n model: ModularUIModel\n): SetModelAction => {\n // set key on model for later reference\n model.connectKey = key;\n return {\n type: \"MODULARUI/SET\",\n payload: {\n key,\n model,\n },\n };\n};\n\n/**\n */\nexport const updateModel = (model: ModularUIModel): UpdateModelAction => ({\n type: \"MODULARUI/UPDATE\",\n payload: model,\n});\n\n/**\n */\nexport const removeModelByKey = (key: string): RemoveModelByKeyAction => ({\n type: \"MODULARUI/REMOVE_KEY\",\n payload: key,\n});\n\n/**\n * Removes all models except the application model from the modular ui reducer\n */\nexport const resetModularUI = (): ResetModularUIAction => ({\n type: \"MODULARUI/RESET\",\n});\n\n/**\n */\nexport const updateStatus = (\n key: string,\n status: $Keys<typeof MODULARUI_STATUS>\n): UpdateStatusAction => ({\n type: \"MODULARUI/STATUS\",\n payload: { key, status },\n});\n\n/**\n */\nconst loadModelSuccessAction = (\n key: string,\n model: ModularUIModel,\n modelToUpdate\n): UpdateModelAction | SetModelAction => {\n if (modelToUpdate) {\n if (typeof modelToUpdate.update === \"function\") {\n const clonedModel = modelToUpdate.clone();\n clonedModel.update(model);\n\n return updateModel(clonedModel);\n }\n\n throw new Error(\n `loadModel action: updateModel is set as option for ${key}, but the model is missing an update methode`\n );\n }\n\n return setModel(key, model);\n};\n\n/**\n */\nexport const loadModel = (\n key: string,\n href: Href | string,\n options?: RequestBaseOptions\n): ModularUIAction => ({\n type: \"MODULARUI/FETCH\",\n payload: {\n href: href instanceof Href ? href : new Href(href),\n method: options?.method ?? HTTP_METHODS.GET,\n data: options?.data,\n locale: options?.locale ?? \"en\",\n childmodels: options?.childmodels,\n targetModel: options?.targetModel,\n /**\n */\n successAction: (model) =>\n loadModelSuccessAction(key, model, options?.updateModel),\n /**\n */\n errorAction: (error) => {\n const errorResponse = new ErrorResponse(error, key);\n if (errorResponse.isChangePassword) {\n return {\n type: \"NO_ACTION\",\n };\n } else if (\n errorResponse.isResourceNotFoundAfterReload ||\n errorResponse.isInvalidUsername\n ) {\n return removeModelByKey(key);\n }\n\n return updateStatus(key, MODULARUI_STATUS.ERROR);\n },\n },\n});\n\n/**\n */\nexport const loadModularUI =\n (\n key: string,\n href: Href | string,\n options?: RequestBaseOptions\n ): ThunkAction =>\n (dispatch: Dispatch) => {\n dispatch(updateStatus(key, MODULARUI_STATUS.LOADING));\n dispatch(startProgress());\n\n const loadModelPromise = dispatch(loadModel(key, href, options));\n if (typeof loadModelPromise !== \"function\" && loadModelPromise.then) {\n return loadModelPromise\n .then((response) => {\n if (response?.type === \"FINISH_PROGRESS\") {\n dispatch(updateStatus(key, MODULARUI_STATUS.FINISHED));\n }\n\n return dispatch(finishProgress());\n })\n .catch((error) => dispatch(handleError(error)));\n }\n };\n\n/**\n */\nexport const reloadModel = (\n model: ModularUIModel,\n options?: RequestBaseOptions\n): ThunkAction =>\n loadModularUI(model.connectKey, model.selfhref, {\n ...options,\n isReload: true,\n });\n"],"file":"actions.js"}
1
+ {"version":3,"sources":["../../../src/redux/_modularui/actions.js"],"names":["HTTP_METHODS","MODULARUI_STATUS","Href","ErrorResponse","finishProgress","startProgress","handleError","setModel","key","model","connectKey","type","payload","updateModel","removeModelByKey","resetModularUI","updateStatus","status","loadModelSuccessAction","modelToUpdate","clonedModel","clone","update","Error","loadModel","href","options","method","GET","data","locale","childmodels","targetModel","successAction","errorAction","error","errorResponse","isChangePassword","isResourceNotFoundAfterReload","isInvalidUsername","ERROR","loadModularUI","dispatch","LOADING","loadModelPromise","resolve","then","response","FINISHED","catch","reloadModel","selfhref","isReload"],"mappings":"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","sourcesContent":["// @flow\nimport { HTTP_METHODS, MODULARUI_STATUS } from \"../../constants/Constants\";\nimport Href from \"../../models/href/Href\";\nimport ErrorResponse from \"../../models/error/ErrorResponse\";\nimport { finishProgress, startProgress } from \"../actions/ProgressIndicator\";\nimport { handleError } from \"../actions/Error\";\n\nimport type { ModularUIModel } from \"../../models/types\";\nimport type { Dispatch, ThunkAction } from \"../types\";\nimport type {\n ModularUIAction,\n SetModelAction,\n UpdateModelAction,\n RemoveModelByKeyAction,\n ResetModularUIAction,\n UpdateStatusAction,\n} from \"./types\";\nimport type { RequestBaseOptions } from \"../../utils/fetch/types\";\n\n/**\n */\nexport const setModel = (\n key: string,\n model: ModularUIModel\n): SetModelAction => {\n // set key on model for later reference\n model.connectKey = key;\n return {\n type: \"MODULARUI/SET\",\n payload: {\n key,\n model,\n },\n };\n};\n\n/**\n */\nexport const updateModel = (model: ModularUIModel): UpdateModelAction => ({\n type: \"MODULARUI/UPDATE\",\n payload: model,\n});\n\n/**\n */\nexport const removeModelByKey = (key: string): RemoveModelByKeyAction => ({\n type: \"MODULARUI/REMOVE_KEY\",\n payload: key,\n});\n\n/**\n * Removes all models except the application model from the modular ui reducer\n */\nexport const resetModularUI = (): ResetModularUIAction => ({\n type: \"MODULARUI/RESET\",\n});\n\n/**\n */\nexport const updateStatus = (\n key: string,\n status: $Keys<typeof MODULARUI_STATUS>\n): UpdateStatusAction => ({\n type: \"MODULARUI/STATUS\",\n payload: { key, status },\n});\n\n/**\n */\nconst loadModelSuccessAction = (\n key: string,\n model: ModularUIModel,\n modelToUpdate\n): UpdateModelAction | SetModelAction => {\n if (modelToUpdate) {\n // $FlowFixMe[prop-missing]\n if (typeof modelToUpdate[\"update\"] === \"function\") {\n const clonedModel = modelToUpdate.clone();\n clonedModel.update(model);\n\n return updateModel(clonedModel);\n }\n\n throw new Error(\n `loadModel action: updateModel is set as option for ${key}, but the model is missing an update methode`\n );\n }\n\n return setModel(key, model);\n};\n\n/**\n */\nexport const loadModel = (\n key: string,\n href: Href | string,\n options?: RequestBaseOptions\n): ModularUIAction => ({\n type: \"MODULARUI/FETCH\",\n payload: {\n href: href instanceof Href ? href : new Href(href),\n method: options?.method ?? HTTP_METHODS.GET,\n data: options?.data,\n locale: options?.locale ?? \"en\",\n childmodels: options?.childmodels,\n targetModel: options?.targetModel,\n /**\n */\n successAction: (model) =>\n loadModelSuccessAction(key, model, options?.updateModel),\n /**\n */\n errorAction: (error) => {\n const errorResponse = new ErrorResponse(error, key);\n if (errorResponse.isChangePassword) {\n return {\n type: \"NO_ACTION\",\n };\n } else if (\n errorResponse.isResourceNotFoundAfterReload ||\n errorResponse.isInvalidUsername\n ) {\n return removeModelByKey(key);\n }\n\n return updateStatus(key, MODULARUI_STATUS.ERROR);\n },\n },\n});\n\n/**\n */\nexport const loadModularUI =\n (\n key: string,\n href: Href | string,\n options?: RequestBaseOptions\n ): ThunkAction =>\n (dispatch: Dispatch) => {\n dispatch(updateStatus(key, MODULARUI_STATUS.LOADING));\n dispatch(startProgress());\n\n const loadModelPromise = dispatch(loadModel(key, href, options));\n\n return Promise.resolve(loadModelPromise)\n .then((response) => {\n if (response?.type === \"FINISH_PROGRESS\") {\n dispatch(updateStatus(key, MODULARUI_STATUS.FINISHED));\n }\n\n return dispatch(finishProgress());\n })\n .catch((error) => dispatch(handleError(error)));\n };\n\n/**\n */\nexport const reloadModel = (\n model: ModularUIModel,\n options?: RequestBaseOptions\n): ThunkAction =>\n loadModularUI(model.connectKey, model.selfhref, {\n ...options,\n isReload: true,\n });\n"],"file":"actions.js"}
@@ -99,8 +99,7 @@ var removeKey = function removeKey(modelKey, state) {
99
99
 
100
100
  // eslint-disable-next-line no-unused-vars
101
101
  var _ = state[modelKey],
102
- newState = _objectWithoutProperties(state, _mapInstanceProperty(_context2 = [modelKey]).call(_context2, _toPropertyKey)); // $FlowExpectedError[incompatible-return]
103
-
102
+ newState = _objectWithoutProperties(state, _mapInstanceProperty(_context2 = [modelKey]).call(_context2, _toPropertyKey));
104
103
 
105
104
  return newState;
106
105
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/redux/_modularui/reducer.js"],"names":["IllegalArgumentException","MODULARUI_STATUS","ApplicationModel","updateStatus","state","key","status","LOADING","lastModification","Date","now","setModel","model","getModelKey","connectKey","updateModel","modelKey","Error","removeKey","_","newState","resetModularUI","initialState","ModularUIReducer","action","type","payload"],"mappings":"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","sourcesContent":["// @flow\nimport { IllegalArgumentException } from \"../../exceptions\";\nimport { MODULARUI_STATUS } from \"../../constants/Constants\";\nimport { ApplicationModel } from \"../../models\";\n\nimport type { Reducer } from \"redux\";\nimport type { ReduxAction } from \"../types\";\nimport type { ModularUIState } from \"./types\";\n\n/**\n */\nconst updateStatus = (state, { key, status }) => {\n // model should always be available when status is not loading\n if (status !== MODULARUI_STATUS.LOADING && !state[key]) {\n return state;\n }\n\n return {\n ...state,\n [key]: {\n ...state[key],\n status,\n lastModification: Date.now(),\n },\n };\n};\n\n/**\n */\nconst setModel = (state, { key, model }) => {\n if (!state[key]) {\n return state;\n }\n\n if (model) {\n return {\n ...state,\n [key]: {\n ...state[key],\n model,\n lastModification: Date.now(),\n },\n };\n }\n\n throw new IllegalArgumentException(\"No model for setModel\");\n};\n\n/**\n */\nconst getModelKey = (state, model) =>\n Object.keys(state).find((key) => {\n const connectKey = state[key]?.model?.connectKey ?? \"\";\n return connectKey === model.connectKey;\n });\n\n/**\n */\nconst updateModel = (state, model) => {\n const modelKey = getModelKey(state, model);\n\n if (modelKey) {\n return setModel(state, { key: modelKey, model });\n }\n\n throw new Error(\n `ModularUIReducer: Cannot update model with key ${model.connectKey}`\n );\n};\n\n/**\n */\nconst removeKey = (modelKey: string, state: ModularUIState): ModularUIState => {\n // eslint-disable-next-line no-unused-vars\n const { [modelKey]: _, ...newState } = state;\n\n // $FlowExpectedError[incompatible-return]\n return newState;\n};\n\n/**\n * Remove all but application models\n */\nconst resetModularUI = (state: ModularUIState) => {\n const newState = {};\n\n for (const key in state) {\n if (state[key].model instanceof ApplicationModel) {\n newState[key] = { ...state[key] };\n }\n }\n\n return newState;\n};\n\nconst initialState: ModularUIState = {};\n\n/**\n * Modular UI Reducer\n */\nexport const ModularUIReducer: Reducer<ModularUIState, ReduxAction> = (\n state = initialState,\n action\n) => {\n if (!action) {\n return state;\n }\n\n switch (action.type) {\n case \"MODULARUI/RESET\":\n return resetModularUI(state);\n\n case \"MODULARUI/STATUS\":\n return updateStatus(state, action.payload);\n\n case \"MODULARUI/SET\":\n return setModel(state, action.payload);\n\n case \"MODULARUI/UPDATE\":\n return updateModel(state, action.payload);\n\n case \"MODULARUI/REMOVE_KEY\":\n return removeKey(action.payload, state);\n\n default:\n return state;\n }\n};\n"],"file":"reducer.js"}
1
+ {"version":3,"sources":["../../../src/redux/_modularui/reducer.js"],"names":["IllegalArgumentException","MODULARUI_STATUS","ApplicationModel","updateStatus","state","key","status","LOADING","lastModification","Date","now","setModel","model","getModelKey","connectKey","updateModel","modelKey","Error","removeKey","_","newState","resetModularUI","initialState","ModularUIReducer","action","type","payload"],"mappings":"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","sourcesContent":["// @flow\nimport { IllegalArgumentException } from \"../../exceptions\";\nimport { MODULARUI_STATUS } from \"../../constants/Constants\";\nimport { ApplicationModel } from \"../../models\";\n\nimport type { Reducer } from \"redux\";\nimport type { ReduxAction } from \"../types\";\nimport type { ModularUIState } from \"./types\";\n\n/**\n */\nconst updateStatus = (state, { key, status }) => {\n // model should always be available when status is not loading\n if (status !== MODULARUI_STATUS.LOADING && !state[key]) {\n return state;\n }\n\n return {\n ...state,\n [key]: {\n ...state[key],\n status,\n lastModification: Date.now(),\n },\n };\n};\n\n/**\n */\nconst setModel = (state, { key, model }) => {\n if (!state[key]) {\n return state;\n }\n\n if (model) {\n return {\n ...state,\n [key]: {\n ...state[key],\n model,\n lastModification: Date.now(),\n },\n };\n }\n\n throw new IllegalArgumentException(\"No model for setModel\");\n};\n\n/**\n */\nconst getModelKey = (state, model) =>\n Object.keys(state).find((key) => {\n const connectKey = state[key]?.model?.connectKey ?? \"\";\n return connectKey === model.connectKey;\n });\n\n/**\n */\nconst updateModel = (state, model) => {\n const modelKey = getModelKey(state, model);\n\n if (modelKey) {\n return setModel(state, { key: modelKey, model });\n }\n\n throw new Error(\n `ModularUIReducer: Cannot update model with key ${model.connectKey}`\n );\n};\n\n/**\n */\nconst removeKey = (modelKey: string, state: ModularUIState): ModularUIState => {\n // eslint-disable-next-line no-unused-vars\n const { [modelKey]: _, ...newState } = state;\n\n return newState;\n};\n\n/**\n * Remove all but application models\n */\nconst resetModularUI = (state: ModularUIState) => {\n const newState = {};\n\n for (const key in state) {\n if (state[key].model instanceof ApplicationModel) {\n newState[key] = { ...state[key] };\n }\n }\n\n return newState;\n};\n\nconst initialState: ModularUIState = {};\n\n/**\n * Modular UI Reducer\n */\nexport const ModularUIReducer: Reducer<ModularUIState, ReduxAction> = (\n state = initialState,\n action\n) => {\n if (!action) {\n return state;\n }\n\n switch (action.type) {\n case \"MODULARUI/RESET\":\n return resetModularUI(state);\n\n case \"MODULARUI/STATUS\":\n return updateStatus(state, action.payload);\n\n case \"MODULARUI/SET\":\n return setModel(state, action.payload);\n\n case \"MODULARUI/UPDATE\":\n return updateModel(state, action.payload);\n\n case \"MODULARUI/REMOVE_KEY\":\n return removeKey(action.payload, state);\n\n default:\n return state;\n }\n};\n"],"file":"reducer.js"}
@@ -1,3 +1,4 @@
1
+ import _Promise from "@babel/runtime-corejs3/core-js-stable/promise";
1
2
  import Cache from "../../utils/browser/Cache";
2
3
  import Authenticate from "../../modularui/Authenticate";
3
4
  import { reloadApplication } from "./Application";
@@ -57,15 +58,10 @@ export var login = function login(username, password) {
57
58
  }).catch(function (error) {
58
59
  if (error.id === "Error.ChangePasswordRequired") {
59
60
  var dispatchedReloadApplication = dispatch(reloadApplication());
60
-
61
- if (typeof dispatchedReloadApplication !== "function" && dispatchedReloadApplication.then) {
62
- dispatchedReloadApplication.then(function () {
63
- Cache.addItem("auth", true);
64
- return dispatch(changePassword());
65
- }).then(function () {
66
- return dispatch(finishProgress());
67
- });
68
- }
61
+ return _Promise.resolve(dispatchedReloadApplication).then(function () {
62
+ Cache.addItem("auth", true);
63
+ return dispatch(changePassword());
64
+ });
69
65
  }
70
66
 
71
67
  dispatch(loginFailed(error.id));
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/redux/actions/SignIn.js"],"names":["Cache","Authenticate","reloadApplication","startProgress","finishProgress","push","CHANGEPASSWORD_PATH","loginFailed","errorMessage","type","payload","loginSuccess","changePassword","dispatch","getState","isModal","router","location","state","modal","locationFrom","from","login","username","password","then","addItem","catch","error","id","dispatchedReloadApplication"],"mappings":"AACA,OAAOA,KAAP,MAAkB,2BAAlB;AACA,OAAOC,YAAP,MAAyB,8BAAzB;AAEA,SAASC,iBAAT,QAAkC,eAAlC;AAEA,SAASC,aAAT,EAAwBC,cAAxB,QAA8C,qBAA9C;AACA,SAASC,IAAT,QAAqB,oBAArB;AACA,SAASC,mBAAT,QAAoC,2BAApC;;AAQA;AACA;AACA;AACA,OAAO,IAAMC,WAAW,GAAG,SAAdA,WAAc,CAACC,YAAD;AAAA,SAA8C;AACvEC,IAAAA,IAAI,EAAE,sBADiE;AAEvEC,IAAAA,OAAO,EAAEF;AAF8D,GAA9C;AAAA,CAApB;AAKP;AACA;AACA;;AACA,OAAO,IAAMG,YAAY,GAAG,SAAfA,YAAe;AAAA,SAA2B;AACrDF,IAAAA,IAAI,EAAE;AAD+C,GAA3B;AAAA,CAArB;AAIP;AACA;AACA;;AACA,OAAO,IAAMG,cAAc,GAAG,SAAjBA,cAAiB;AAAA,SAAmB,UAACC,QAAD,EAAWC,QAAX,EAAwB;AAAA;;AACvED,IAAAA,QAAQ,CAAC;AACPJ,MAAAA,IAAI,EAAE;AADC,KAAD,CAAR;AAIA,QAAMM,OAAO,4BAAGD,QAAQ,GAAGE,MAAX,CAAkBC,QAArB,oFAAG,sBAA4BC,KAA/B,2DAAG,uBAAmCC,KAAnD;AACA,QAAMC,YAAY,6BAAGN,QAAQ,GAAGE,MAAX,CAAkBC,QAArB,qFAAG,uBAA4BC,KAA/B,2DAAG,uBAAmCG,IAAxD;AACA,WAAOR,QAAQ,CACbR,IAAI,CAACC,mBAAD,EAAsB;AACxBe,MAAAA,IAAI,EAAED,YAAY,GAAGA,YAAH,GAAkBN,QAAQ,GAAGE,MAAX,CAAkBC,QAD9B;AAExBE,MAAAA,KAAK,EAAEJ;AAFiB,KAAtB,CADS,CAAf;AAMD,GAb6B;AAAA,CAAvB;AAeP;AACA;;AACA,OAAO,IAAMO,KAAK,GAChB,SADWA,KACX,CAACC,QAAD,EAAmBC,QAAnB;AAAA,SACA,UAACX,QAAD,EAAc;AACZA,IAAAA,QAAQ,CAACV,aAAa,EAAd,CAAR;AAEA,WAAO,IAAIF,YAAJ,GACJqB,KADI,CACEC,QADF,EACYC,QADZ,EAEJC,IAFI,CAEC;AAAA,aAAMZ,QAAQ,CAACX,iBAAiB,EAAlB,CAAd;AAAA,KAFD,EAGJuB,IAHI,CAGC,YAAM;AACVzB,MAAAA,KAAK,CAAC0B,OAAN,CAAc,MAAd,EAAsB,IAAtB;AACAb,MAAAA,QAAQ,CAACF,YAAY,EAAb,CAAR;AAEA,aAAOE,QAAQ,CAACT,cAAc,EAAf,CAAf;AACD,KARI,EASJuB,KATI,CASE,UAACC,KAAD,EAAW;AAChB,UAAIA,KAAK,CAACC,EAAN,KAAa,8BAAjB,EAAiD;AAC/C,YAAMC,2BAA2B,GAAGjB,QAAQ,CAACX,iBAAiB,EAAlB,CAA5C;;AACA,YACE,OAAO4B,2BAAP,KAAuC,UAAvC,IACAA,2BAA2B,CAACL,IAF9B,EAGE;AACAK,UAAAA,2BAA2B,CACxBL,IADH,CACQ,YAAM;AACVzB,YAAAA,KAAK,CAAC0B,OAAN,CAAc,MAAd,EAAsB,IAAtB;AACA,mBAAOb,QAAQ,CAACD,cAAc,EAAf,CAAf;AACD,WAJH,EAKGa,IALH,CAKQ;AAAA,mBAAMZ,QAAQ,CAACT,cAAc,EAAf,CAAd;AAAA,WALR;AAMD;AACF;;AAEDS,MAAAA,QAAQ,CAACN,WAAW,CAACqB,KAAK,CAACC,EAAP,CAAZ,CAAR;AACA,aAAOhB,QAAQ,CAACT,cAAc,EAAf,CAAf;AACD,KA3BI,CAAP;AA4BD,GAhCD;AAAA,CADK","sourcesContent":["// @flow\nimport Cache from \"../../utils/browser/Cache\";\nimport Authenticate from \"../../modularui/Authenticate\";\n\nimport { reloadApplication } from \"./Application\";\n\nimport { startProgress, finishProgress } from \"./ProgressIndicator\";\nimport { push } from \"../_router/actions\";\nimport { CHANGEPASSWORD_PATH } from \"../../constants/Constants\";\n\nimport type {\n LoginFailedAction,\n LoginSuccessAction,\n ThunkAction,\n} from \"../types\";\n\n/**\n * Send login failed action\n */\nexport const loginFailed = (errorMessage: string): LoginFailedAction => ({\n type: \"AUTHENTICATION_ERROR\",\n payload: errorMessage,\n});\n\n/**\n * Send login success action\n */\nexport const loginSuccess = (): LoginSuccessAction => ({\n type: \"AUTHENTICATION_SUCCESS\",\n});\n\n/**\n * Send change password action\n */\nexport const changePassword = (): ThunkAction => (dispatch, getState) => {\n dispatch({\n type: \"CHANGE_PASSWORD\",\n });\n\n const isModal = getState().router.location?.state?.modal;\n const locationFrom = getState().router.location?.state?.from;\n return dispatch(\n push(CHANGEPASSWORD_PATH, {\n from: locationFrom ? locationFrom : getState().router.location,\n modal: isModal,\n })\n );\n};\n\n/**\n */\nexport const login =\n (username: string, password: string): ThunkAction =>\n (dispatch) => {\n dispatch(startProgress());\n\n return new Authenticate()\n .login(username, password)\n .then(() => dispatch(reloadApplication()))\n .then(() => {\n Cache.addItem(\"auth\", true);\n dispatch(loginSuccess());\n\n return dispatch(finishProgress());\n })\n .catch((error) => {\n if (error.id === \"Error.ChangePasswordRequired\") {\n const dispatchedReloadApplication = dispatch(reloadApplication());\n if (\n typeof dispatchedReloadApplication !== \"function\" &&\n dispatchedReloadApplication.then\n ) {\n dispatchedReloadApplication\n .then(() => {\n Cache.addItem(\"auth\", true);\n return dispatch(changePassword());\n })\n .then(() => dispatch(finishProgress()));\n }\n }\n\n dispatch(loginFailed(error.id));\n return dispatch(finishProgress());\n });\n };\n"],"file":"SignIn.js"}
1
+ {"version":3,"sources":["../../../src/redux/actions/SignIn.js"],"names":["Cache","Authenticate","reloadApplication","startProgress","finishProgress","push","CHANGEPASSWORD_PATH","loginFailed","errorMessage","type","payload","loginSuccess","changePassword","dispatch","getState","isModal","router","location","state","modal","locationFrom","from","login","username","password","then","addItem","catch","error","id","dispatchedReloadApplication","resolve"],"mappings":";AACA,OAAOA,KAAP,MAAkB,2BAAlB;AACA,OAAOC,YAAP,MAAyB,8BAAzB;AAEA,SAASC,iBAAT,QAAkC,eAAlC;AAEA,SAASC,aAAT,EAAwBC,cAAxB,QAA8C,qBAA9C;AACA,SAASC,IAAT,QAAqB,oBAArB;AACA,SAASC,mBAAT,QAAoC,2BAApC;;AAQA;AACA;AACA;AACA,OAAO,IAAMC,WAAW,GAAG,SAAdA,WAAc,CAACC,YAAD;AAAA,SAA8C;AACvEC,IAAAA,IAAI,EAAE,sBADiE;AAEvEC,IAAAA,OAAO,EAAEF;AAF8D,GAA9C;AAAA,CAApB;AAKP;AACA;AACA;;AACA,OAAO,IAAMG,YAAY,GAAG,SAAfA,YAAe;AAAA,SAA2B;AACrDF,IAAAA,IAAI,EAAE;AAD+C,GAA3B;AAAA,CAArB;AAIP;AACA;AACA;;AACA,OAAO,IAAMG,cAAc,GAAG,SAAjBA,cAAiB;AAAA,SAAmB,UAACC,QAAD,EAAWC,QAAX,EAAwB;AAAA;;AACvED,IAAAA,QAAQ,CAAC;AACPJ,MAAAA,IAAI,EAAE;AADC,KAAD,CAAR;AAIA,QAAMM,OAAO,4BAAGD,QAAQ,GAAGE,MAAX,CAAkBC,QAArB,oFAAG,sBAA4BC,KAA/B,2DAAG,uBAAmCC,KAAnD;AACA,QAAMC,YAAY,6BAAGN,QAAQ,GAAGE,MAAX,CAAkBC,QAArB,qFAAG,uBAA4BC,KAA/B,2DAAG,uBAAmCG,IAAxD;AACA,WAAOR,QAAQ,CACbR,IAAI,CAACC,mBAAD,EAAsB;AACxBe,MAAAA,IAAI,EAAED,YAAY,GAAGA,YAAH,GAAkBN,QAAQ,GAAGE,MAAX,CAAkBC,QAD9B;AAExBE,MAAAA,KAAK,EAAEJ;AAFiB,KAAtB,CADS,CAAf;AAMD,GAb6B;AAAA,CAAvB;AAeP;AACA;;AACA,OAAO,IAAMO,KAAK,GAChB,SADWA,KACX,CAACC,QAAD,EAAmBC,QAAnB;AAAA,SACA,UAACX,QAAD,EAAc;AACZA,IAAAA,QAAQ,CAACV,aAAa,EAAd,CAAR;AAEA,WAAO,IAAIF,YAAJ,GACJqB,KADI,CACEC,QADF,EACYC,QADZ,EAEJC,IAFI,CAEC;AAAA,aAAMZ,QAAQ,CAACX,iBAAiB,EAAlB,CAAd;AAAA,KAFD,EAGJuB,IAHI,CAGC,YAAM;AACVzB,MAAAA,KAAK,CAAC0B,OAAN,CAAc,MAAd,EAAsB,IAAtB;AACAb,MAAAA,QAAQ,CAACF,YAAY,EAAb,CAAR;AAEA,aAAOE,QAAQ,CAACT,cAAc,EAAf,CAAf;AACD,KARI,EASJuB,KATI,CASE,UAACC,KAAD,EAAW;AAChB,UAAIA,KAAK,CAACC,EAAN,KAAa,8BAAjB,EAAiD;AAC/C,YAAMC,2BAA2B,GAAGjB,QAAQ,CAACX,iBAAiB,EAAlB,CAA5C;AAEA,eAAO,SAAQ6B,OAAR,CAAgBD,2BAAhB,EAA6CL,IAA7C,CAAkD,YAAM;AAC7DzB,UAAAA,KAAK,CAAC0B,OAAN,CAAc,MAAd,EAAsB,IAAtB;AACA,iBAAOb,QAAQ,CAACD,cAAc,EAAf,CAAf;AACD,SAHM,CAAP;AAID;;AAEDC,MAAAA,QAAQ,CAACN,WAAW,CAACqB,KAAK,CAACC,EAAP,CAAZ,CAAR;AACA,aAAOhB,QAAQ,CAACT,cAAc,EAAf,CAAf;AACD,KArBI,CAAP;AAsBD,GA1BD;AAAA,CADK","sourcesContent":["// @flow\nimport Cache from \"../../utils/browser/Cache\";\nimport Authenticate from \"../../modularui/Authenticate\";\n\nimport { reloadApplication } from \"./Application\";\n\nimport { startProgress, finishProgress } from \"./ProgressIndicator\";\nimport { push } from \"../_router/actions\";\nimport { CHANGEPASSWORD_PATH } from \"../../constants/Constants\";\n\nimport type {\n LoginFailedAction,\n LoginSuccessAction,\n ThunkAction,\n} from \"../types\";\n\n/**\n * Send login failed action\n */\nexport const loginFailed = (errorMessage: string): LoginFailedAction => ({\n type: \"AUTHENTICATION_ERROR\",\n payload: errorMessage,\n});\n\n/**\n * Send login success action\n */\nexport const loginSuccess = (): LoginSuccessAction => ({\n type: \"AUTHENTICATION_SUCCESS\",\n});\n\n/**\n * Send change password action\n */\nexport const changePassword = (): ThunkAction => (dispatch, getState) => {\n dispatch({\n type: \"CHANGE_PASSWORD\",\n });\n\n const isModal = getState().router.location?.state?.modal;\n const locationFrom = getState().router.location?.state?.from;\n return dispatch(\n push(CHANGEPASSWORD_PATH, {\n from: locationFrom ? locationFrom : getState().router.location,\n modal: isModal,\n })\n );\n};\n\n/**\n */\nexport const login =\n (username: string, password: string): ThunkAction =>\n (dispatch) => {\n dispatch(startProgress());\n\n return new Authenticate()\n .login(username, password)\n .then(() => dispatch(reloadApplication()))\n .then(() => {\n Cache.addItem(\"auth\", true);\n dispatch(loginSuccess());\n\n return dispatch(finishProgress());\n })\n .catch((error) => {\n if (error.id === \"Error.ChangePasswordRequired\") {\n const dispatchedReloadApplication = dispatch(reloadApplication());\n\n return Promise.resolve(dispatchedReloadApplication).then(() => {\n Cache.addItem(\"auth\", true);\n return dispatch(changePassword());\n });\n }\n\n dispatch(loginFailed(error.id));\n return dispatch(finishProgress());\n });\n };\n"],"file":"SignIn.js"}
@@ -21,6 +21,7 @@ import { has, isPlainObject } from "../helpers/objects";
21
21
  import { IllegalArgumentException, UnauthorizedException, FetchException, TimeoutException, NotFoundException, JsonParseException, NetworkException } from "../../exceptions";
22
22
  import Cache from "../browser/Cache";
23
23
  import { HTTP_METHODS } from "../../constants/Constants";
24
+ import { getSetting } from "../../constants/Settings";
24
25
  var NETWORK_ERROR_CODE = 0;
25
26
  var SUCCESS_CODE = 200;
26
27
  var CLIENT_ERROR_CODE = 400;
@@ -144,7 +145,7 @@ var XHR = /*#__PURE__*/function () {
144
145
  }, {
145
146
  key: "timeout",
146
147
  get: function get() {
147
- return this.options.timeout || 300000;
148
+ return this.options.timeout || getSetting("XHR_TIMEOUT_MS", 300000);
148
149
  }
149
150
  /**
150
151
  */
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/fetch/xhr.js"],"names":["has","isPlainObject","IllegalArgumentException","UnauthorizedException","FetchException","TimeoutException","NotFoundException","JsonParseException","NetworkException","Cache","HTTP_METHODS","NETWORK_ERROR_CODE","SUCCESS_CODE","CLIENT_ERROR_CODE","UNAUTHORIZED_CODE","REDIRECTION_CODE","NOT_FOUND_CODE","JSON_TYPE","XHR","options","_options","_attempts","_xmlhttp","xmlhttp","attempts","url","params","aUrl","split","data","method","GET","timeout","responseType","onProgress","events","baseHeaders","Accept","headers","reject","responseJSON","status","isReload","response","getResponseHeader","JSON","parse","error","resolve","getResponse","errorHandler","forEach","eventType","addEventListener","timeoutHandler","responseHandler","eventName","open","hasItem","withCredentials","basicToken","getItem","setRequestHeader","headerName","send","stringData","XMLHttpRequest","setEventListeners","openConnection","setBasicAuthentication","setCustomHeaders","setOtherOptions","sendData","setXMLHttpRequest","fetch","validateInputArguments","args","toString","xhr"],"mappings":"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","sourcesContent":["// @flow\nimport { has, isPlainObject } from \"../helpers/objects\";\n\nimport {\n IllegalArgumentException,\n UnauthorizedException,\n FetchException,\n TimeoutException,\n NotFoundException,\n JsonParseException,\n NetworkException,\n} from \"../../exceptions\";\n\nimport Cache from \"../browser/Cache\";\n\nimport { HTTP_METHODS } from \"../../constants/Constants\";\n\nimport type { RequestOptions } from \"./types\";\n\nconst NETWORK_ERROR_CODE = 0;\nconst SUCCESS_CODE = 200;\nconst CLIENT_ERROR_CODE = 400;\nconst UNAUTHORIZED_CODE = 401;\nconst REDIRECTION_CODE = 300;\nconst NOT_FOUND_CODE = 404;\n\nconst JSON_TYPE = \"application/json\";\n\n/**\n * @private\n */\nclass XHR {\n _options: RequestOptions;\n _xmlhttp: XMLHttpRequest;\n _attempts: number;\n\n /**\n */\n constructor(options: RequestOptions) {\n this._options = options;\n this._attempts = 0;\n }\n\n /**\n */\n get xmlhttp() {\n return this._xmlhttp;\n }\n\n /**\n */\n set xmlhttp(xmlhttp) {\n this._xmlhttp = xmlhttp;\n }\n\n /**\n */\n get options() {\n return this._options;\n }\n\n /**\n */\n set options(options: RequestOptions) {\n this._options = options;\n }\n\n /**\n */\n get attempts() {\n return this._attempts;\n }\n\n /**\n */\n set attempts(attempts) {\n this._attempts = attempts;\n }\n\n /**\n * Create and fix url when params or both querystring and params exist.\n */\n get url() {\n const { url } = this.options;\n if (this.params !== \"\") {\n if (url.includes(\"?\")) {\n const aUrl = url.split(\"?\");\n\n return `${aUrl[0]}?${aUrl[1]}&${this.params}`;\n }\n\n return `${url}?${this.params}`;\n }\n\n return url;\n }\n\n /**\n */\n get params() {\n return this.options.params || \"\";\n }\n\n /**\n */\n get data() {\n return this.options.data || null;\n }\n\n /**\n */\n get method() {\n return this.options.method || HTTP_METHODS.GET;\n }\n\n /**\n */\n get timeout() {\n return this.options.timeout || 300000;\n }\n\n /**\n */\n get responseType() {\n return this.options.responseType || \"json\";\n }\n\n /**\n */\n get onProgress(): ProgressEventHandler {\n if (this.options.onProgress) {\n return this.options.onProgress;\n }\n\n return () => {\n // do nothing\n };\n }\n\n /**\n */\n get events() {\n return this.options.events || {};\n }\n\n /**\n */\n get headers() {\n const baseHeaders = {\n Accept: JSON_TYPE,\n \"Content-Type\": JSON_TYPE,\n\n // needed for csrf, see: https://plaza.beinformed.com/amdoc/csrf-protection-in-modular-ui-services-40054554.html\n \"X-Requested-With\": \"XMLHttpRequest\",\n\n \"Accept-Language\": \"en\",\n };\n\n if (this.options.headers) {\n // $FlowFixMe[cannot-spread-indexer]\n return {\n ...baseHeaders,\n ...this.options.headers,\n };\n }\n\n return baseHeaders;\n }\n\n /**\n */\n timeoutHandler(reject) {\n return reject(new TimeoutException(this.url, this.method));\n }\n\n /**\n */\n errorHandler(reject, responseJSON = null) {\n const { status } = this.xmlhttp;\n const { isReload } = this.options;\n\n if (status === NETWORK_ERROR_CODE) {\n return reject(new NetworkException(this.url, this.method));\n }\n\n if (status === NOT_FOUND_CODE) {\n return reject(new NotFoundException(this.url, this.method, isReload));\n }\n\n if (status === UNAUTHORIZED_CODE) {\n return reject(\n new UnauthorizedException(this.url, this.method, responseJSON)\n );\n }\n\n return reject(new FetchException(responseJSON, this.xmlhttp, this.options));\n }\n\n /**\n */\n getResponse() {\n const { responseType, response } = this.xmlhttp;\n\n if (\n (responseType === \"\" || responseType === \"text\") &&\n this.getResponseHeader(\"Content-Type\") === JSON_TYPE\n ) {\n if (isPlainObject(response)) {\n return response;\n }\n\n try {\n return JSON.parse(response);\n } catch (error) {\n throw new JsonParseException(error);\n }\n }\n\n return response;\n }\n\n /**\n */\n responseHandler(resolve, reject) {\n const { status } = this.xmlhttp;\n\n let response = null;\n try {\n response = this.getResponse();\n } catch (error) {\n return reject(error);\n }\n\n if (\n (status >= SUCCESS_CODE && status < REDIRECTION_CODE) ||\n (status === CLIENT_ERROR_CODE && has(response, \"formresponse\"))\n ) {\n return resolve(response);\n }\n\n return this.errorHandler(reject, response);\n }\n\n /**\n */\n setEventListeners(resolve, reject) {\n if (this.options.onProgress) {\n [\"load\", \"loadend\", \"loadstart\", \"progress\"].forEach((eventType) => {\n this.xmlhttp.addEventListener(eventType, this.onProgress);\n });\n }\n\n [\"abort\", \"error\"].forEach((eventType) => {\n this.xmlhttp.addEventListener(eventType, () => this.errorHandler(reject));\n });\n\n this.xmlhttp.addEventListener(\"timeout\", () => this.timeoutHandler(reject));\n\n this.xmlhttp.addEventListener(\"load\", () =>\n this.responseHandler(resolve, reject)\n );\n\n // Set custom events\n Object.keys(this.events).forEach((eventName) => {\n this.xmlhttp.addEventListener(eventName, this.events[eventName]);\n });\n }\n\n /**\n */\n openConnection() {\n this.xmlhttp.open(this.method, this.url, true);\n }\n\n /**\n */\n setBasicAuthentication() {\n if (Cache.hasItem(\"basic\")) {\n this.xmlhttp.withCredentials = true;\n const basicToken = Cache.getItem(\"basic\");\n\n if (typeof basicToken === \"string\") {\n this.xmlhttp.setRequestHeader(\"Authorization\", `Basic ${basicToken}`);\n }\n }\n }\n\n /**\n */\n getResponseHeader(headerName) {\n return this.xmlhttp.getResponseHeader(headerName);\n }\n\n /**\n */\n setCustomHeaders() {\n Object.keys(this.headers).forEach((headerName) => {\n this.xmlhttp.setRequestHeader(headerName, this.headers[headerName]);\n });\n }\n\n /**\n */\n setOtherOptions() {\n this.xmlhttp.responseType = this.responseType;\n this.xmlhttp.timeout = this.timeout;\n }\n\n /**\n */\n sendData() {\n if (this.data == null) {\n this.xmlhttp.send();\n } else {\n const stringData = isPlainObject(this.data)\n ? JSON.stringify(this.data)\n : this.data;\n this.xmlhttp.send(stringData);\n }\n }\n\n /**\n */\n setXMLHttpRequest() {\n return new Promise((resolve, reject) => {\n this.xmlhttp = new XMLHttpRequest();\n\n this.setEventListeners(resolve, reject);\n\n this.openConnection();\n\n this.setBasicAuthentication();\n\n this.setCustomHeaders();\n\n this.setOtherOptions();\n\n this.sendData();\n });\n }\n\n /**\n */\n async fetch() {\n try {\n return await this.setXMLHttpRequest();\n } catch (err) {\n if (err instanceof NetworkException && this.attempts < 2) {\n this.attempts += 1;\n return this.fetch();\n }\n\n throw err;\n }\n }\n}\n\n/**\n */\nconst validateInputArguments = (args: RequestOptions) => {\n if (args == null) {\n throw new IllegalArgumentException(\n \"Missing request options, expecting an object as argument for xhr\"\n );\n }\n\n if (!isPlainObject(args)) {\n throw new IllegalArgumentException(\n `Expecting an object as argument for xhr, but received: ${args.toString()}`\n );\n }\n\n if (!has(args, \"url\")) {\n throw new IllegalArgumentException(\n `No url property found in arguments of xhr, received: ${JSON.stringify(\n args\n )}`\n );\n }\n\n return true;\n};\n\n/**\n */\nconst xhr = (args: RequestOptions): Promise<any> => {\n validateInputArguments(args);\n\n return new XHR(args).fetch();\n};\n\nexport default xhr;\n"],"file":"xhr.js"}
1
+ {"version":3,"sources":["../../../src/utils/fetch/xhr.js"],"names":["has","isPlainObject","IllegalArgumentException","UnauthorizedException","FetchException","TimeoutException","NotFoundException","JsonParseException","NetworkException","Cache","HTTP_METHODS","getSetting","NETWORK_ERROR_CODE","SUCCESS_CODE","CLIENT_ERROR_CODE","UNAUTHORIZED_CODE","REDIRECTION_CODE","NOT_FOUND_CODE","JSON_TYPE","XHR","options","_options","_attempts","_xmlhttp","xmlhttp","attempts","url","params","aUrl","split","data","method","GET","timeout","responseType","onProgress","events","baseHeaders","Accept","headers","reject","responseJSON","status","isReload","response","getResponseHeader","JSON","parse","error","resolve","getResponse","errorHandler","forEach","eventType","addEventListener","timeoutHandler","responseHandler","eventName","open","hasItem","withCredentials","basicToken","getItem","setRequestHeader","headerName","send","stringData","XMLHttpRequest","setEventListeners","openConnection","setBasicAuthentication","setCustomHeaders","setOtherOptions","sendData","setXMLHttpRequest","fetch","validateInputArguments","args","toString","xhr"],"mappings":"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","sourcesContent":["// @flow\nimport { has, isPlainObject } from \"../helpers/objects\";\n\nimport {\n IllegalArgumentException,\n UnauthorizedException,\n FetchException,\n TimeoutException,\n NotFoundException,\n JsonParseException,\n NetworkException,\n} from \"../../exceptions\";\n\nimport Cache from \"../browser/Cache\";\n\nimport { HTTP_METHODS } from \"../../constants/Constants\";\n\nimport { getSetting } from \"../../constants/Settings\";\n\nimport type { RequestOptions } from \"./types\";\n\nconst NETWORK_ERROR_CODE = 0;\nconst SUCCESS_CODE = 200;\nconst CLIENT_ERROR_CODE = 400;\nconst UNAUTHORIZED_CODE = 401;\nconst REDIRECTION_CODE = 300;\nconst NOT_FOUND_CODE = 404;\n\nconst JSON_TYPE = \"application/json\";\n\n/**\n * @private\n */\nclass XHR {\n _options: RequestOptions;\n _xmlhttp: XMLHttpRequest;\n _attempts: number;\n\n /**\n */\n constructor(options: RequestOptions) {\n this._options = options;\n this._attempts = 0;\n }\n\n /**\n */\n get xmlhttp() {\n return this._xmlhttp;\n }\n\n /**\n */\n set xmlhttp(xmlhttp) {\n this._xmlhttp = xmlhttp;\n }\n\n /**\n */\n get options() {\n return this._options;\n }\n\n /**\n */\n set options(options: RequestOptions) {\n this._options = options;\n }\n\n /**\n */\n get attempts() {\n return this._attempts;\n }\n\n /**\n */\n set attempts(attempts) {\n this._attempts = attempts;\n }\n\n /**\n * Create and fix url when params or both querystring and params exist.\n */\n get url() {\n const { url } = this.options;\n if (this.params !== \"\") {\n if (url.includes(\"?\")) {\n const aUrl = url.split(\"?\");\n\n return `${aUrl[0]}?${aUrl[1]}&${this.params}`;\n }\n\n return `${url}?${this.params}`;\n }\n\n return url;\n }\n\n /**\n */\n get params() {\n return this.options.params || \"\";\n }\n\n /**\n */\n get data() {\n return this.options.data || null;\n }\n\n /**\n */\n get method() {\n return this.options.method || HTTP_METHODS.GET;\n }\n\n /**\n */\n get timeout() {\n return this.options.timeout || getSetting(\"XHR_TIMEOUT_MS\", 300000);\n }\n\n /**\n */\n get responseType() {\n return this.options.responseType || \"json\";\n }\n\n /**\n */\n get onProgress(): ProgressEventHandler {\n if (this.options.onProgress) {\n return this.options.onProgress;\n }\n\n return () => {\n // do nothing\n };\n }\n\n /**\n */\n get events() {\n return this.options.events || {};\n }\n\n /**\n */\n get headers() {\n const baseHeaders = {\n Accept: JSON_TYPE,\n \"Content-Type\": JSON_TYPE,\n\n // needed for csrf, see: https://plaza.beinformed.com/amdoc/csrf-protection-in-modular-ui-services-40054554.html\n \"X-Requested-With\": \"XMLHttpRequest\",\n\n \"Accept-Language\": \"en\",\n };\n\n if (this.options.headers) {\n // $FlowFixMe[cannot-spread-indexer]\n return {\n ...baseHeaders,\n ...this.options.headers,\n };\n }\n\n return baseHeaders;\n }\n\n /**\n */\n timeoutHandler(reject) {\n return reject(new TimeoutException(this.url, this.method));\n }\n\n /**\n */\n errorHandler(reject, responseJSON = null) {\n const { status } = this.xmlhttp;\n const { isReload } = this.options;\n\n if (status === NETWORK_ERROR_CODE) {\n return reject(new NetworkException(this.url, this.method));\n }\n\n if (status === NOT_FOUND_CODE) {\n return reject(new NotFoundException(this.url, this.method, isReload));\n }\n\n if (status === UNAUTHORIZED_CODE) {\n return reject(\n new UnauthorizedException(this.url, this.method, responseJSON)\n );\n }\n\n return reject(new FetchException(responseJSON, this.xmlhttp, this.options));\n }\n\n /**\n */\n getResponse() {\n const { responseType, response } = this.xmlhttp;\n\n if (\n (responseType === \"\" || responseType === \"text\") &&\n this.getResponseHeader(\"Content-Type\") === JSON_TYPE\n ) {\n if (isPlainObject(response)) {\n return response;\n }\n\n try {\n return JSON.parse(response);\n } catch (error) {\n throw new JsonParseException(error);\n }\n }\n\n return response;\n }\n\n /**\n */\n responseHandler(resolve, reject) {\n const { status } = this.xmlhttp;\n\n let response = null;\n try {\n response = this.getResponse();\n } catch (error) {\n return reject(error);\n }\n\n if (\n (status >= SUCCESS_CODE && status < REDIRECTION_CODE) ||\n (status === CLIENT_ERROR_CODE && has(response, \"formresponse\"))\n ) {\n return resolve(response);\n }\n\n return this.errorHandler(reject, response);\n }\n\n /**\n */\n setEventListeners(resolve, reject) {\n if (this.options.onProgress) {\n [\"load\", \"loadend\", \"loadstart\", \"progress\"].forEach((eventType) => {\n this.xmlhttp.addEventListener(eventType, this.onProgress);\n });\n }\n\n [\"abort\", \"error\"].forEach((eventType) => {\n this.xmlhttp.addEventListener(eventType, () => this.errorHandler(reject));\n });\n\n this.xmlhttp.addEventListener(\"timeout\", () => this.timeoutHandler(reject));\n\n this.xmlhttp.addEventListener(\"load\", () =>\n this.responseHandler(resolve, reject)\n );\n\n // Set custom events\n Object.keys(this.events).forEach((eventName) => {\n this.xmlhttp.addEventListener(eventName, this.events[eventName]);\n });\n }\n\n /**\n */\n openConnection() {\n this.xmlhttp.open(this.method, this.url, true);\n }\n\n /**\n */\n setBasicAuthentication() {\n if (Cache.hasItem(\"basic\")) {\n this.xmlhttp.withCredentials = true;\n const basicToken = Cache.getItem(\"basic\");\n\n if (typeof basicToken === \"string\") {\n this.xmlhttp.setRequestHeader(\"Authorization\", `Basic ${basicToken}`);\n }\n }\n }\n\n /**\n */\n getResponseHeader(headerName) {\n return this.xmlhttp.getResponseHeader(headerName);\n }\n\n /**\n */\n setCustomHeaders() {\n Object.keys(this.headers).forEach((headerName) => {\n this.xmlhttp.setRequestHeader(headerName, this.headers[headerName]);\n });\n }\n\n /**\n */\n setOtherOptions() {\n this.xmlhttp.responseType = this.responseType;\n this.xmlhttp.timeout = this.timeout;\n }\n\n /**\n */\n sendData() {\n if (this.data == null) {\n this.xmlhttp.send();\n } else {\n const stringData = isPlainObject(this.data)\n ? JSON.stringify(this.data)\n : this.data;\n this.xmlhttp.send(stringData);\n }\n }\n\n /**\n */\n setXMLHttpRequest() {\n return new Promise((resolve, reject) => {\n this.xmlhttp = new XMLHttpRequest();\n\n this.setEventListeners(resolve, reject);\n\n this.openConnection();\n\n this.setBasicAuthentication();\n\n this.setCustomHeaders();\n\n this.setOtherOptions();\n\n this.sendData();\n });\n }\n\n /**\n */\n async fetch() {\n try {\n return await this.setXMLHttpRequest();\n } catch (err) {\n if (err instanceof NetworkException && this.attempts < 2) {\n this.attempts += 1;\n return this.fetch();\n }\n\n throw err;\n }\n }\n}\n\n/**\n */\nconst validateInputArguments = (args: RequestOptions) => {\n if (args == null) {\n throw new IllegalArgumentException(\n \"Missing request options, expecting an object as argument for xhr\"\n );\n }\n\n if (!isPlainObject(args)) {\n throw new IllegalArgumentException(\n `Expecting an object as argument for xhr, but received: ${args.toString()}`\n );\n }\n\n if (!has(args, \"url\")) {\n throw new IllegalArgumentException(\n `No url property found in arguments of xhr, received: ${JSON.stringify(\n args\n )}`\n );\n }\n\n return true;\n};\n\n/**\n */\nconst xhr = (args: RequestOptions): Promise<any> => {\n validateInputArguments(args);\n\n return new XHR(args).fetch();\n};\n\nexport default xhr;\n"],"file":"xhr.js"}
@@ -1,10 +1,11 @@
1
1
  import _typeof from "@babel/runtime-corejs3/helpers/esm/typeof";
2
2
  import _has from "lodash/has";
3
+ import _isPlainObject from "lodash/isPlainObject";
3
4
  /**
4
5
  */
5
6
 
6
7
  export var isPlainObject = function isPlainObject(value) {
7
- return Object.prototype.toString.call(value) === "[object Object]";
8
+ return _isPlainObject(value);
8
9
  };
9
10
  /**
10
11
  */
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/helpers/objects.js"],"names":["_has","isPlainObject","value","Object","prototype","toString","call","has","obj","propName","get","path","defaultValue","String","split","reduce","acc","v"],"mappings":";AACA,OAAOA,IAAP,MAAiB,YAAjB;AAEA;AACA;;AACA,OAAO,IAAMC,aAAa,GAAG,SAAhBA,aAAgB,CAACC,KAAD;AAAA,SAC3BC,MAAM,CAACC,SAAP,CAAiBC,QAAjB,CAA0BC,IAA1B,CAA+BJ,KAA/B,MAA0C,iBADf;AAAA,CAAtB;AAGP;AACA;;AACA,OAAO,IAAMK,GAAG,GAAG,SAANA,GAAM,CAACC,GAAD,EAAWC,QAAX,EAAyC;AAC1D,MAAI,CAACR,aAAa,CAACO,GAAD,CAAlB,EAAyB;AACvB,WAAO,KAAP;AACD;;AAED,SAAOR,IAAI,CAACQ,GAAD,EAAMC,QAAN,CAAX;AACD,CANM;AAQP;AACA;AACA;AACA;;AACA,OAAO,IAAMC,GAAG,GAAG,SAANA,GAAM,CAACF,GAAD,EAAeG,IAAf,EAA6BC,YAA7B;AAAA,SACjBC,MAAM,CAACF,IAAD,CAAN,CACGG,KADH,CACS,GADT,EAEGC,MAFH,CAEU,UAACC,GAAD,EAAMC,CAAN,EAAY;AAClB,QAAI,QAAOD,GAAP,MAAe,QAAnB,EAA6B;AAAA;;AAC3B,uBAAOA,GAAG,CAACC,CAAD,CAAV,2CAAiBL,YAAjB;AACD;;AACD,WAAOA,YAAP;AACD,GAPH,EAOKJ,GAPL,CADiB;AAAA,CAAZ","sourcesContent":["// @flow\nimport _has from \"lodash/has\";\n\n/**\n */\nexport const isPlainObject = (value: any): boolean =>\n Object.prototype.toString.call(value) === \"[object Object]\";\n\n/**\n */\nexport const has = (obj: any, propName: string): boolean => {\n if (!isPlainObject(obj)) {\n return false;\n }\n\n return _has(obj, propName);\n};\n\n/**\n * Retrieve property of an object\n * When path is only one deep better use optional chaining\n */\nexport const get = (obj: { ... }, path: string, defaultValue?: any): any =>\n String(path)\n .split(\".\")\n .reduce((acc, v) => {\n if (typeof acc === \"object\") {\n return acc[v] ?? defaultValue;\n }\n return defaultValue;\n }, obj);\n"],"file":"objects.js"}
1
+ {"version":3,"sources":["../../../src/utils/helpers/objects.js"],"names":["_has","_isPlainObject","isPlainObject","value","has","obj","propName","get","path","defaultValue","String","split","reduce","acc","v"],"mappings":";AACA,OAAOA,IAAP,MAAiB,YAAjB;AACA,OAAOC,cAAP,MAA2B,sBAA3B;AAEA;AACA;;AACA,OAAO,IAAMC,aAAa,GAAG,SAAhBA,aAAgB,CAACC,KAAD;AAAA,SAAyBF,cAAc,CAACE,KAAD,CAAvC;AAAA,CAAtB;AAEP;AACA;;AACA,OAAO,IAAMC,GAAG,GAAG,SAANA,GAAM,CAACC,GAAD,EAAWC,QAAX,EAAyC;AAC1D,MAAI,CAACJ,aAAa,CAACG,GAAD,CAAlB,EAAyB;AACvB,WAAO,KAAP;AACD;;AAED,SAAOL,IAAI,CAACK,GAAD,EAAMC,QAAN,CAAX;AACD,CANM;AAQP;AACA;AACA;AACA;;AACA,OAAO,IAAMC,GAAG,GAAG,SAANA,GAAM,CAACF,GAAD,EAAeG,IAAf,EAA6BC,YAA7B;AAAA,SACjBC,MAAM,CAACF,IAAD,CAAN,CACGG,KADH,CACS,GADT,EAEGC,MAFH,CAEU,UAACC,GAAD,EAAMC,CAAN,EAAY;AAClB,QAAI,QAAOD,GAAP,MAAe,QAAnB,EAA6B;AAAA;;AAC3B,uBAAOA,GAAG,CAACC,CAAD,CAAV,2CAAiBL,YAAjB;AACD;;AACD,WAAOA,YAAP;AACD,GAPH,EAOKJ,GAPL,CADiB;AAAA,CAAZ","sourcesContent":["// @flow\nimport _has from \"lodash/has\";\nimport _isPlainObject from \"lodash/isPlainObject\";\n\n/**\n */\nexport const isPlainObject = (value: any): boolean => _isPlainObject(value);\n\n/**\n */\nexport const has = (obj: any, propName: string): boolean => {\n if (!isPlainObject(obj)) {\n return false;\n }\n\n return _has(obj, propName);\n};\n\n/**\n * Retrieve property of an object\n * When path is only one deep better use optional chaining\n */\nexport const get = (obj: { ... }, path: string, defaultValue?: any): any =>\n String(path)\n .split(\".\")\n .reduce((acc, v) => {\n if (typeof acc === \"object\") {\n return acc[v] ?? defaultValue;\n }\n return defaultValue;\n }, obj);\n"],"file":"objects.js"}
@@ -95,6 +95,15 @@ var LayoutHintConfiguration = {
95
95
  link: "",
96
96
  component: ["attribute/number"]
97
97
  },
98
+ IGNORE_FORMAT_SETTING: {
99
+ hint: "ignore-format-setting",
100
+ description: {
101
+ NL: "Maakt het mogelijk om de global date format setting te negeren voor een specifiek attribuut",
102
+ EN: "Makes it possible to ignore the global date format for a specific attribute"
103
+ },
104
+ link: "",
105
+ component: ["attribute/date", "attribute/datetime"]
106
+ },
98
107
  CREATE_ACTION: {
99
108
  hint: "create",
100
109
  description: {
@@ -109,6 +109,15 @@ export const LayoutHintConfiguration = {
109
109
  link: "",
110
110
  component: ["attribute/number"],
111
111
  },
112
+ IGNORE_FORMAT_SETTING: {
113
+ hint: "ignore-format-setting",
114
+ description: {
115
+ NL: "Maakt het mogelijk om de global date format setting te negeren voor een specifiek attribuut",
116
+ EN: "Makes it possible to ignore the global date format for a specific attribute",
117
+ },
118
+ link: "",
119
+ component: ["attribute/date", "attribute/datetime"],
120
+ },
112
121
  CREATE_ACTION: {
113
122
  hint: "create",
114
123
  description: {