@beinformed/ui 1.25.2 → 1.25.4

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 (239) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/esm/constants/Constants.js +5 -0
  3. package/esm/constants/Constants.js.map +1 -1
  4. package/esm/hooks/useAuthentication.js +5 -5
  5. package/esm/hooks/useAuthentication.js.map +1 -1
  6. package/esm/hooks/useModularUI.js.map +1 -1
  7. package/esm/hooks/useModularUIBasic.js +3 -0
  8. package/esm/hooks/useModularUIBasic.js.map +1 -1
  9. package/esm/hooks/useModularUIModel.js +7 -0
  10. package/esm/hooks/useModularUIModel.js.map +1 -1
  11. package/esm/hooks/useModularUIRequest.js +5 -7
  12. package/esm/hooks/useModularUIRequest.js.map +1 -1
  13. package/esm/models/application/ApplicationModel.js +9 -1
  14. package/esm/models/application/ApplicationModel.js.map +1 -1
  15. package/esm/models/base/ResourceModel.js +7 -0
  16. package/esm/models/base/ResourceModel.js.map +1 -1
  17. package/esm/models/caseview/CaseViewModel.js +6 -0
  18. package/esm/models/caseview/CaseViewModel.js.map +1 -1
  19. package/esm/models/concepts/BusinessScenarioModel.js +6 -0
  20. package/esm/models/concepts/BusinessScenarioModel.js.map +1 -1
  21. package/esm/models/concepts/ConceptDetailModel.js +6 -0
  22. package/esm/models/concepts/ConceptDetailModel.js.map +1 -1
  23. package/esm/models/concepts/ConceptIndexModel.js +6 -0
  24. package/esm/models/concepts/ConceptIndexModel.js.map +1 -1
  25. package/esm/models/concepts/ConceptTypeDetailModel.js +6 -0
  26. package/esm/models/concepts/ConceptTypeDetailModel.js.map +1 -1
  27. package/esm/models/content/ContentIndexModel.js +6 -0
  28. package/esm/models/content/ContentIndexModel.js.map +1 -1
  29. package/esm/models/content/ContentModel.js +6 -0
  30. package/esm/models/content/ContentModel.js.map +1 -1
  31. package/esm/models/content/ContentTOCModel.js +6 -0
  32. package/esm/models/content/ContentTOCModel.js.map +1 -1
  33. package/esm/models/content/ContentTypeModel.js +6 -0
  34. package/esm/models/content/ContentTypeModel.js.map +1 -1
  35. package/esm/models/detail/DetailModel.js +6 -0
  36. package/esm/models/detail/DetailModel.js.map +1 -1
  37. package/esm/models/form/FormModel.js +6 -0
  38. package/esm/models/form/FormModel.js.map +1 -1
  39. package/esm/models/list/ListDetailModel.js +6 -0
  40. package/esm/models/list/ListDetailModel.js.map +1 -1
  41. package/esm/models/list/ListModel.js +6 -0
  42. package/esm/models/list/ListModel.js.map +1 -1
  43. package/esm/models/lookup/LookupOptionsModel.js +6 -0
  44. package/esm/models/lookup/LookupOptionsModel.js.map +1 -1
  45. package/esm/models/modelcatalog/ModelCatalogModel.js +6 -0
  46. package/esm/models/modelcatalog/ModelCatalogModel.js.map +1 -1
  47. package/esm/models/panels/GroupingPanelModel.js +6 -0
  48. package/esm/models/panels/GroupingPanelModel.js.map +1 -1
  49. package/esm/models/resolveModel.js +4 -4
  50. package/esm/models/resolveModel.js.map +1 -1
  51. package/esm/models/search/CaseSearchModel.js +6 -0
  52. package/esm/models/search/CaseSearchModel.js.map +1 -1
  53. package/esm/models/tab/TabModel.js +6 -0
  54. package/esm/models/tab/TabModel.js.map +1 -1
  55. package/esm/models/taskgroup/TaskGroupModel.js +6 -0
  56. package/esm/models/taskgroup/TaskGroupModel.js.map +1 -1
  57. package/esm/models/types.js.map +1 -1
  58. package/esm/models/user/UserModel.js +6 -0
  59. package/esm/models/user/UserModel.js.map +1 -1
  60. package/esm/models/user/UserProfileModel.js +6 -0
  61. package/esm/models/user/UserProfileModel.js.map +1 -1
  62. package/esm/models/user/UserServicesModel.js +6 -0
  63. package/esm/models/user/UserServicesModel.js.map +1 -1
  64. package/esm/modularui/ModularUIRequest.js +38 -11
  65. package/esm/modularui/ModularUIRequest.js.map +1 -1
  66. package/esm/modularui/types.js +2 -0
  67. package/esm/modularui/types.js.map +1 -0
  68. package/esm/redux/_modularui/ModularUIActions.js.map +1 -1
  69. package/esm/redux/_modularui/ModularUIMiddleware.js.map +1 -1
  70. package/esm/redux/_modularui/types.js.map +1 -1
  71. package/esm/redux/_modularui/withModularUI.js.map +1 -1
  72. package/esm/utils/fetch/types.js.map +1 -1
  73. package/lib/constants/Constants.js +7 -1
  74. package/lib/constants/Constants.js.flow +6 -0
  75. package/lib/constants/Constants.js.map +1 -1
  76. package/lib/hooks/__tests__/UseModularUIModel.spec.js.flow +1 -1
  77. package/lib/hooks/__tests__/useModelCatalog.spec.js.flow +1 -1
  78. package/lib/hooks/__tests__/useModularUIBasic.spec.js.flow +2 -2
  79. package/lib/hooks/useAuthentication.js +4 -4
  80. package/lib/hooks/useAuthentication.js.flow +17 -5
  81. package/lib/hooks/useAuthentication.js.map +1 -1
  82. package/lib/hooks/useModularUI.js.flow +2 -2
  83. package/lib/hooks/useModularUI.js.map +1 -1
  84. package/lib/hooks/useModularUIBasic.js +3 -0
  85. package/lib/hooks/useModularUIBasic.js.flow +6 -3
  86. package/lib/hooks/useModularUIBasic.js.map +1 -1
  87. package/lib/hooks/useModularUIModel.js +9 -1
  88. package/lib/hooks/useModularUIModel.js.flow +18 -10
  89. package/lib/hooks/useModularUIModel.js.map +1 -1
  90. package/lib/hooks/useModularUIRequest.js +5 -7
  91. package/lib/hooks/useModularUIRequest.js.flow +12 -11
  92. package/lib/hooks/useModularUIRequest.js.map +1 -1
  93. package/lib/models/application/ApplicationModel.js +8 -1
  94. package/lib/models/application/ApplicationModel.js.flow +10 -1
  95. package/lib/models/application/ApplicationModel.js.map +1 -1
  96. package/lib/models/base/ResourceModel.js +7 -0
  97. package/lib/models/base/ResourceModel.js.flow +7 -0
  98. package/lib/models/base/ResourceModel.js.map +1 -1
  99. package/lib/models/caseview/CaseViewModel.js +6 -0
  100. package/lib/models/caseview/CaseViewModel.js.flow +6 -0
  101. package/lib/models/caseview/CaseViewModel.js.map +1 -1
  102. package/lib/models/concepts/BusinessScenarioModel.js +6 -0
  103. package/lib/models/concepts/BusinessScenarioModel.js.flow +6 -0
  104. package/lib/models/concepts/BusinessScenarioModel.js.map +1 -1
  105. package/lib/models/concepts/ConceptDetailModel.js +6 -0
  106. package/lib/models/concepts/ConceptDetailModel.js.flow +6 -0
  107. package/lib/models/concepts/ConceptDetailModel.js.map +1 -1
  108. package/lib/models/concepts/ConceptIndexModel.js +6 -0
  109. package/lib/models/concepts/ConceptIndexModel.js.flow +6 -0
  110. package/lib/models/concepts/ConceptIndexModel.js.map +1 -1
  111. package/lib/models/concepts/ConceptTypeDetailModel.js +6 -0
  112. package/lib/models/concepts/ConceptTypeDetailModel.js.flow +6 -0
  113. package/lib/models/concepts/ConceptTypeDetailModel.js.map +1 -1
  114. package/lib/models/content/ContentIndexModel.js +6 -0
  115. package/lib/models/content/ContentIndexModel.js.flow +6 -0
  116. package/lib/models/content/ContentIndexModel.js.map +1 -1
  117. package/lib/models/content/ContentModel.js +6 -0
  118. package/lib/models/content/ContentModel.js.flow +6 -0
  119. package/lib/models/content/ContentModel.js.map +1 -1
  120. package/lib/models/content/ContentTOCModel.js +6 -0
  121. package/lib/models/content/ContentTOCModel.js.flow +6 -0
  122. package/lib/models/content/ContentTOCModel.js.map +1 -1
  123. package/lib/models/content/ContentTypeModel.js +6 -0
  124. package/lib/models/content/ContentTypeModel.js.flow +6 -0
  125. package/lib/models/content/ContentTypeModel.js.map +1 -1
  126. package/lib/models/detail/DetailModel.js +6 -0
  127. package/lib/models/detail/DetailModel.js.flow +6 -0
  128. package/lib/models/detail/DetailModel.js.map +1 -1
  129. package/lib/models/form/FormModel.js +6 -0
  130. package/lib/models/form/FormModel.js.flow +6 -0
  131. package/lib/models/form/FormModel.js.map +1 -1
  132. package/lib/models/list/ListDetailModel.js +6 -0
  133. package/lib/models/list/ListDetailModel.js.flow +6 -0
  134. package/lib/models/list/ListDetailModel.js.map +1 -1
  135. package/lib/models/list/ListModel.js +6 -0
  136. package/lib/models/list/ListModel.js.flow +6 -0
  137. package/lib/models/list/ListModel.js.map +1 -1
  138. package/lib/models/lookup/LookupOptionsModel.js +6 -0
  139. package/lib/models/lookup/LookupOptionsModel.js.flow +6 -0
  140. package/lib/models/lookup/LookupOptionsModel.js.map +1 -1
  141. package/lib/models/modelcatalog/ModelCatalogModel.js +6 -0
  142. package/lib/models/modelcatalog/ModelCatalogModel.js.flow +6 -0
  143. package/lib/models/modelcatalog/ModelCatalogModel.js.map +1 -1
  144. package/lib/models/panels/GroupingPanelModel.js +6 -0
  145. package/lib/models/panels/GroupingPanelModel.js.flow +6 -0
  146. package/lib/models/panels/GroupingPanelModel.js.map +1 -1
  147. package/lib/models/resolveModel.js +4 -3
  148. package/lib/models/resolveModel.js.flow +6 -4
  149. package/lib/models/resolveModel.js.map +1 -1
  150. package/lib/models/search/CaseSearchModel.js +6 -0
  151. package/lib/models/search/CaseSearchModel.js.flow +6 -0
  152. package/lib/models/search/CaseSearchModel.js.map +1 -1
  153. package/lib/models/tab/TabModel.js +6 -0
  154. package/lib/models/tab/TabModel.js.flow +6 -0
  155. package/lib/models/tab/TabModel.js.map +1 -1
  156. package/lib/models/taskgroup/TaskGroupModel.js +6 -0
  157. package/lib/models/taskgroup/TaskGroupModel.js.flow +6 -0
  158. package/lib/models/taskgroup/TaskGroupModel.js.map +1 -1
  159. package/lib/models/types.js.flow +1 -1
  160. package/lib/models/types.js.map +1 -1
  161. package/lib/models/user/UserModel.js +6 -0
  162. package/lib/models/user/UserModel.js.flow +6 -0
  163. package/lib/models/user/UserModel.js.map +1 -1
  164. package/lib/models/user/UserProfileModel.js +6 -0
  165. package/lib/models/user/UserProfileModel.js.flow +6 -0
  166. package/lib/models/user/UserProfileModel.js.map +1 -1
  167. package/lib/models/user/UserServicesModel.js +6 -0
  168. package/lib/models/user/UserServicesModel.js.flow +6 -0
  169. package/lib/models/user/UserServicesModel.js.map +1 -1
  170. package/lib/modularui/ModularUIRequest.js +38 -11
  171. package/lib/modularui/ModularUIRequest.js.flow +65 -17
  172. package/lib/modularui/ModularUIRequest.js.map +1 -1
  173. package/lib/modularui/__tests__/ModularUIRequest.spec.js.flow +4 -9
  174. package/lib/modularui/types.js +2 -0
  175. package/lib/modularui/types.js.flow +4 -0
  176. package/lib/modularui/types.js.map +1 -0
  177. package/lib/redux/_modularui/ModularUIActions.js.flow +4 -4
  178. package/lib/redux/_modularui/ModularUIActions.js.map +1 -1
  179. package/lib/redux/_modularui/ModularUIMiddleware.js.flow +3 -2
  180. package/lib/redux/_modularui/ModularUIMiddleware.js.map +1 -1
  181. package/lib/redux/_modularui/types.js.flow +4 -3
  182. package/lib/redux/_modularui/types.js.map +1 -1
  183. package/lib/redux/_modularui/withModularUI.js.flow +2 -2
  184. package/lib/redux/_modularui/withModularUI.js.map +1 -1
  185. package/lib/utils/fetch/types.js.flow +12 -4
  186. package/lib/utils/fetch/types.js.map +1 -1
  187. package/package.json +7 -7
  188. package/src/constants/Constants.js +6 -0
  189. package/src/hooks/__tests__/UseModularUIModel.spec.js +1 -1
  190. package/src/hooks/__tests__/useModelCatalog.spec.js +1 -1
  191. package/src/hooks/__tests__/useModularUIBasic.spec.js +2 -2
  192. package/src/hooks/useAuthentication.js +17 -5
  193. package/src/hooks/useModularUI.js +2 -2
  194. package/src/hooks/useModularUIBasic.js +6 -3
  195. package/src/hooks/useModularUIModel.js +18 -10
  196. package/src/hooks/useModularUIRequest.js +12 -11
  197. package/src/models/application/ApplicationModel.js +10 -1
  198. package/src/models/base/ResourceModel.js +7 -0
  199. package/src/models/caseview/CaseViewModel.js +6 -0
  200. package/src/models/concepts/BusinessScenarioModel.js +6 -0
  201. package/src/models/concepts/ConceptDetailModel.js +6 -0
  202. package/src/models/concepts/ConceptIndexModel.js +6 -0
  203. package/src/models/concepts/ConceptTypeDetailModel.js +6 -0
  204. package/src/models/content/ContentIndexModel.js +6 -0
  205. package/src/models/content/ContentModel.js +6 -0
  206. package/src/models/content/ContentTOCModel.js +6 -0
  207. package/src/models/content/ContentTypeModel.js +6 -0
  208. package/src/models/detail/DetailModel.js +6 -0
  209. package/src/models/form/FormModel.js +6 -0
  210. package/src/models/list/ListDetailModel.js +6 -0
  211. package/src/models/list/ListModel.js +6 -0
  212. package/src/models/lookup/LookupOptionsModel.js +6 -0
  213. package/src/models/modelcatalog/ModelCatalogModel.js +6 -0
  214. package/src/models/panels/GroupingPanelModel.js +6 -0
  215. package/src/models/resolveModel.js +6 -4
  216. package/src/models/search/CaseSearchModel.js +6 -0
  217. package/src/models/tab/TabModel.js +6 -0
  218. package/src/models/taskgroup/TaskGroupModel.js +6 -0
  219. package/src/models/types.js +1 -1
  220. package/src/models/user/UserModel.js +6 -0
  221. package/src/models/user/UserProfileModel.js +6 -0
  222. package/src/models/user/UserServicesModel.js +6 -0
  223. package/src/modularui/ModularUIRequest.js +65 -17
  224. package/src/modularui/__tests__/ModularUIRequest.spec.js +4 -9
  225. package/src/modularui/types.js +4 -0
  226. package/src/redux/_modularui/ModularUIActions.js +4 -4
  227. package/src/redux/_modularui/ModularUIMiddleware.js +3 -2
  228. package/src/redux/_modularui/types.js +4 -3
  229. package/src/redux/_modularui/withModularUI.js +2 -2
  230. package/src/utils/fetch/types.js +12 -4
  231. package/types/constants/Constants.d.ts +5 -0
  232. package/types/models/base/ResourceModel.d.ts +4 -0
  233. package/types/models/form/FormObjectModel.d.ts +28 -2
  234. package/types/models/resolveModel.d.ts +1 -1
  235. package/types/models/types.d.ts +1 -1
  236. package/types/modularui/ModularUIRequest.d.ts +15 -7
  237. package/types/modularui/types.d.ts +2 -0
  238. package/types/redux/_modularui/types.d.ts +2 -2
  239. package/types/utils/fetch/types.d.ts +8 -5
@@ -14,6 +14,12 @@ export default class ModelCatalogModel extends ResourceModel {
14
14
  return "ModelCatalog";
15
15
  }
16
16
 
17
+ /**
18
+ */
19
+ static get modelName(): string {
20
+ return "ModelCatalogModel";
21
+ }
22
+
17
23
  /**
18
24
  */
19
25
  static isApplicableModel(data: Object): boolean {
@@ -1 +1 @@
1
- {"version":3,"file":"ModelCatalogModel.js","names":["ModelCatalogModel","ResourceModel","type","isApplicableModel","data","contributions","resourcetype","label","locale","conceptIndexLink","link","links","getLinkByKey","IllegalStateException","contentIndexLink"],"sources":["../../../src/models/modelcatalog/ModelCatalogModel.js"],"sourcesContent":["// @flow\nimport ResourceModel from \"../base/ResourceModel\";\n\nimport type LinkModel from \"../links/LinkModel\";\nimport { IllegalStateException } from \"../../exceptions\";\n\n/**\n * The Application model\n */\nexport default class ModelCatalogModel extends ResourceModel {\n /**\n */\n get type(): string {\n return \"ModelCatalog\";\n }\n\n /**\n */\n static isApplicableModel(data: Object): boolean {\n return (\n data.contributions.resourcetype &&\n data.contributions.resourcetype === \"ModelCatalog\"\n );\n }\n\n /**\n */\n get label(): string {\n return this.locale === \"nl\" ? \"Model catalogus\" : \"Model catalog\";\n }\n\n /**\n * Retrieve link to Concept Index model\n */\n get conceptIndexLink(): LinkModel {\n const link = this.links.getLinkByKey(\"concepts\");\n if (!link) {\n throw new IllegalStateException(\n \"Missing concepts index link in model catalog\"\n );\n }\n return link;\n }\n\n /**\n * Retrieve link to Content Index model\n */\n get contentIndexLink(): LinkModel {\n const link = this.links.getLinkByKey(\"content\");\n if (!link) {\n throw new IllegalStateException(\n \"Missing content index link in model catalog\"\n );\n }\n return link;\n }\n}\n"],"mappings":";;;;;;;AACA;AAGA;AAEA;AACA;AACA;AACe,MAAMA,iBAAiB,SAASC,sBAAa,CAAC;EAC3D;AACF;EACE,IAAIC,IAAI,GAAW;IACjB,OAAO,cAAc;EACvB;;EAEA;AACF;EACE,OAAOC,iBAAiB,CAACC,IAAY,EAAW;IAC9C,OACEA,IAAI,CAACC,aAAa,CAACC,YAAY,IAC/BF,IAAI,CAACC,aAAa,CAACC,YAAY,KAAK,cAAc;EAEtD;;EAEA;AACF;EACE,IAAIC,KAAK,GAAW;IAClB,OAAO,IAAI,CAACC,MAAM,KAAK,IAAI,GAAG,iBAAiB,GAAG,eAAe;EACnE;;EAEA;AACF;AACA;EACE,IAAIC,gBAAgB,GAAc;IAChC,MAAMC,IAAI,GAAG,IAAI,CAACC,KAAK,CAACC,YAAY,CAAC,UAAU,CAAC;IAChD,IAAI,CAACF,IAAI,EAAE;MACT,MAAM,IAAIG,iCAAqB,CAC7B,8CAA8C,CAC/C;IACH;IACA,OAAOH,IAAI;EACb;;EAEA;AACF;AACA;EACE,IAAII,gBAAgB,GAAc;IAChC,MAAMJ,IAAI,GAAG,IAAI,CAACC,KAAK,CAACC,YAAY,CAAC,SAAS,CAAC;IAC/C,IAAI,CAACF,IAAI,EAAE;MACT,MAAM,IAAIG,iCAAqB,CAC7B,6CAA6C,CAC9C;IACH;IACA,OAAOH,IAAI;EACb;AACF;AAAC"}
1
+ {"version":3,"file":"ModelCatalogModel.js","names":["ModelCatalogModel","ResourceModel","type","modelName","isApplicableModel","data","contributions","resourcetype","label","locale","conceptIndexLink","link","links","getLinkByKey","IllegalStateException","contentIndexLink"],"sources":["../../../src/models/modelcatalog/ModelCatalogModel.js"],"sourcesContent":["// @flow\nimport ResourceModel from \"../base/ResourceModel\";\n\nimport type LinkModel from \"../links/LinkModel\";\nimport { IllegalStateException } from \"../../exceptions\";\n\n/**\n * The Application model\n */\nexport default class ModelCatalogModel extends ResourceModel {\n /**\n */\n get type(): string {\n return \"ModelCatalog\";\n }\n\n /**\n */\n static get modelName(): string {\n return \"ModelCatalogModel\";\n }\n\n /**\n */\n static isApplicableModel(data: Object): boolean {\n return (\n data.contributions.resourcetype &&\n data.contributions.resourcetype === \"ModelCatalog\"\n );\n }\n\n /**\n */\n get label(): string {\n return this.locale === \"nl\" ? \"Model catalogus\" : \"Model catalog\";\n }\n\n /**\n * Retrieve link to Concept Index model\n */\n get conceptIndexLink(): LinkModel {\n const link = this.links.getLinkByKey(\"concepts\");\n if (!link) {\n throw new IllegalStateException(\n \"Missing concepts index link in model catalog\"\n );\n }\n return link;\n }\n\n /**\n * Retrieve link to Content Index model\n */\n get contentIndexLink(): LinkModel {\n const link = this.links.getLinkByKey(\"content\");\n if (!link) {\n throw new IllegalStateException(\n \"Missing content index link in model catalog\"\n );\n }\n return link;\n }\n}\n"],"mappings":";;;;;;;AACA;AAGA;AAEA;AACA;AACA;AACe,MAAMA,iBAAiB,SAASC,sBAAa,CAAC;EAC3D;AACF;EACE,IAAIC,IAAI,GAAW;IACjB,OAAO,cAAc;EACvB;;EAEA;AACF;EACE,WAAWC,SAAS,GAAW;IAC7B,OAAO,mBAAmB;EAC5B;;EAEA;AACF;EACE,OAAOC,iBAAiB,CAACC,IAAY,EAAW;IAC9C,OACEA,IAAI,CAACC,aAAa,CAACC,YAAY,IAC/BF,IAAI,CAACC,aAAa,CAACC,YAAY,KAAK,cAAc;EAEtD;;EAEA;AACF;EACE,IAAIC,KAAK,GAAW;IAClB,OAAO,IAAI,CAACC,MAAM,KAAK,IAAI,GAAG,iBAAiB,GAAG,eAAe;EACnE;;EAEA;AACF;AACA;EACE,IAAIC,gBAAgB,GAAc;IAChC,MAAMC,IAAI,GAAG,IAAI,CAACC,KAAK,CAACC,YAAY,CAAC,UAAU,CAAC;IAChD,IAAI,CAACF,IAAI,EAAE;MACT,MAAM,IAAIG,iCAAqB,CAC7B,8CAA8C,CAC/C;IACH;IACA,OAAOH,IAAI;EACb;;EAEA;AACF;AACA;EACE,IAAII,gBAAgB,GAAc;IAChC,MAAMJ,IAAI,GAAG,IAAI,CAACC,KAAK,CAACC,YAAY,CAAC,SAAS,CAAC;IAC/C,IAAI,CAACF,IAAI,EAAE;MACT,MAAM,IAAIG,iCAAqB,CAC7B,6CAA6C,CAC9C;IACH;IACA,OAAOH,IAAI;EACb;AACF;AAAC"}
@@ -32,6 +32,12 @@ class GroupingPanelModel extends _ResourceModel.default {
32
32
  return "GroupingPanel";
33
33
  }
34
34
 
35
+ /**
36
+ */
37
+ static get modelName() {
38
+ return "GroupingPanelModel";
39
+ }
40
+
35
41
  /**
36
42
  */
37
43
  static isApplicableModel(data) {
@@ -30,6 +30,12 @@ export default class GroupingPanelModel extends ResourceModel {
30
30
  return "GroupingPanel";
31
31
  }
32
32
 
33
+ /**
34
+ */
35
+ static get modelName(): string {
36
+ return "GroupingPanelModel";
37
+ }
38
+
33
39
  /**
34
40
  */
35
41
  static isApplicableModel(data: ModularUIResponse): boolean {
@@ -1 +1 @@
1
- {"version":3,"file":"GroupingPanelModel.js","names":["GroupingPanelModel","ResourceModel","constructor","modularuiResponse","createTaskGroupCollection","type","isApplicableModel","data","contributions","resourcetype","label","getInitialChildModelLinks","links","getLinksByGroup","all","panelLinks","setChildModels","models","taskGroups","i","length","TaskGroupModel","push","taskGroupCollection","add","hasIntroText","introtext","_content","text","message","Array","isArray","texts","allTaskgroupsData","getData","allTaskgroupsContributions","getContribution","taskgroup","some","taskgroupContribution","name","taskgroupContributions","create","taskgroups","_taskGroupCollection","TaskGroupCollection","hasTaskGroups","hasItems","hasTasks"],"sources":["../../../src/models/panels/GroupingPanelModel.js"],"sourcesContent":["// @flow\nimport ResourceModel from \"../base/ResourceModel\";\nimport TaskGroupCollection from \"../taskgroup/TaskGroupCollection\";\n\nimport TaskGroupModel from \"../taskgroup/TaskGroupModel\";\n\nimport type { ModularUIResponse } from \"../../modularui\";\nimport type { ModularUIModel } from \"../types\";\nimport type LinkModel from \"../links/LinkModel\";\nimport type LinkCollection from \"../links/LinkCollection\";\n\n/**\n * Panel that groups other panels\n */\nexport default class GroupingPanelModel extends ResourceModel {\n _taskGroupCollection: TaskGroupCollection;\n\n /**\n * Constructs GroupingPanel\n */\n constructor(modularuiResponse: ModularUIResponse) {\n super(modularuiResponse);\n\n this.createTaskGroupCollection();\n }\n\n /**\n */\n get type(): string {\n return \"GroupingPanel\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n [\"GroupingPanel\", \"CaseTabGroupingPanel\", \"TabGroupingPanel\"].includes(\n data.contributions.resourcetype\n )\n );\n }\n\n /**\n * Getting the label of the panel\n */\n get label(): string {\n return this.contributions.label;\n }\n\n /**\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n return this.links.getLinksByGroup(\"taskgroup\").all;\n }\n\n /**\n */\n get panelLinks(): LinkCollection {\n return this.links.getLinksByGroup(\"panel\");\n }\n\n /**\n */\n setChildModels(models: Array<ModularUIModel>) {\n const taskGroups = [];\n\n for (let i = 0; i < models.length; i++) {\n if (models[i] instanceof TaskGroupModel) {\n taskGroups.push(models[i]);\n }\n }\n\n this.taskGroupCollection.add(taskGroups);\n }\n\n /**\n * Check if an introtext exists for this caseview\n */\n hasIntroText(): boolean {\n return this.introtext !== \"\";\n }\n\n /**\n * Getting the introduction text configured on the grouping panel\n */\n get introtext(): string {\n if (this.data._content) {\n return this.data._content.text.message;\n }\n\n if (this.contributions.text) {\n return this.contributions.text.message ?? this.contributions.text;\n }\n\n if (Array.isArray(this.contributions.texts)) {\n return this.contributions.texts[0].text;\n }\n\n return \"\";\n }\n\n /**\n */\n createTaskGroupCollection() {\n const allTaskgroupsData = this.getData(\"taskgroups\", []);\n const allTaskgroupsContributions = this.getContribution(\"taskgroups\", []);\n\n this.taskGroupCollection = allTaskgroupsData\n .filter((taskgroup) =>\n allTaskgroupsContributions.some(\n (taskgroupContribution) =>\n taskgroupContribution.name === taskgroup.name\n )\n )\n .map((taskgroup) => {\n const taskgroupContributions = allTaskgroupsContributions.find(\n (taskgroupContribution) =>\n taskgroupContribution.name === taskgroup.name\n );\n\n return TaskGroupModel.create(\n taskgroup.name,\n taskgroup,\n taskgroupContributions\n );\n });\n }\n\n /**\n * Setting the taskgroup panel collection\n */\n set taskGroupCollection(taskgroups: Array<TaskGroupModel>) {\n this._taskGroupCollection = new TaskGroupCollection(taskgroups);\n }\n\n /**\n * Getting the taskgrouppanels on the tab\n */\n get taskGroupCollection(): TaskGroupCollection {\n return this._taskGroupCollection;\n }\n\n /**\n * Has taskgroups\n */\n hasTaskGroups(): boolean {\n return this.taskGroupCollection && this.taskGroupCollection.hasItems;\n }\n\n /**\n * Has tasks\n */\n hasTasks(): boolean {\n return this.taskGroupCollection.hasTasks();\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"GroupingPanelModel.js","names":["GroupingPanelModel","ResourceModel","constructor","modularuiResponse","createTaskGroupCollection","type","modelName","isApplicableModel","data","contributions","resourcetype","label","getInitialChildModelLinks","links","getLinksByGroup","all","panelLinks","setChildModels","models","taskGroups","i","length","TaskGroupModel","push","taskGroupCollection","add","hasIntroText","introtext","_content","text","message","Array","isArray","texts","allTaskgroupsData","getData","allTaskgroupsContributions","getContribution","taskgroup","some","taskgroupContribution","name","taskgroupContributions","create","taskgroups","_taskGroupCollection","TaskGroupCollection","hasTaskGroups","hasItems","hasTasks"],"sources":["../../../src/models/panels/GroupingPanelModel.js"],"sourcesContent":["// @flow\nimport ResourceModel from \"../base/ResourceModel\";\nimport TaskGroupCollection from \"../taskgroup/TaskGroupCollection\";\n\nimport TaskGroupModel from \"../taskgroup/TaskGroupModel\";\n\nimport type { ModularUIResponse } from \"../../modularui\";\nimport type { ModularUIModel } from \"../types\";\nimport type LinkModel from \"../links/LinkModel\";\nimport type LinkCollection from \"../links/LinkCollection\";\n\n/**\n * Panel that groups other panels\n */\nexport default class GroupingPanelModel extends ResourceModel {\n _taskGroupCollection: TaskGroupCollection;\n\n /**\n * Constructs GroupingPanel\n */\n constructor(modularuiResponse: ModularUIResponse) {\n super(modularuiResponse);\n\n this.createTaskGroupCollection();\n }\n\n /**\n */\n get type(): string {\n return \"GroupingPanel\";\n }\n\n /**\n */\n static get modelName(): string {\n return \"GroupingPanelModel\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n [\"GroupingPanel\", \"CaseTabGroupingPanel\", \"TabGroupingPanel\"].includes(\n data.contributions.resourcetype\n )\n );\n }\n\n /**\n * Getting the label of the panel\n */\n get label(): string {\n return this.contributions.label;\n }\n\n /**\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n return this.links.getLinksByGroup(\"taskgroup\").all;\n }\n\n /**\n */\n get panelLinks(): LinkCollection {\n return this.links.getLinksByGroup(\"panel\");\n }\n\n /**\n */\n setChildModels(models: Array<ModularUIModel>) {\n const taskGroups = [];\n\n for (let i = 0; i < models.length; i++) {\n if (models[i] instanceof TaskGroupModel) {\n taskGroups.push(models[i]);\n }\n }\n\n this.taskGroupCollection.add(taskGroups);\n }\n\n /**\n * Check if an introtext exists for this caseview\n */\n hasIntroText(): boolean {\n return this.introtext !== \"\";\n }\n\n /**\n * Getting the introduction text configured on the grouping panel\n */\n get introtext(): string {\n if (this.data._content) {\n return this.data._content.text.message;\n }\n\n if (this.contributions.text) {\n return this.contributions.text.message ?? this.contributions.text;\n }\n\n if (Array.isArray(this.contributions.texts)) {\n return this.contributions.texts[0].text;\n }\n\n return \"\";\n }\n\n /**\n */\n createTaskGroupCollection() {\n const allTaskgroupsData = this.getData(\"taskgroups\", []);\n const allTaskgroupsContributions = this.getContribution(\"taskgroups\", []);\n\n this.taskGroupCollection = allTaskgroupsData\n .filter((taskgroup) =>\n allTaskgroupsContributions.some(\n (taskgroupContribution) =>\n taskgroupContribution.name === taskgroup.name\n )\n )\n .map((taskgroup) => {\n const taskgroupContributions = allTaskgroupsContributions.find(\n (taskgroupContribution) =>\n taskgroupContribution.name === taskgroup.name\n );\n\n return TaskGroupModel.create(\n taskgroup.name,\n taskgroup,\n taskgroupContributions\n );\n });\n }\n\n /**\n * Setting the taskgroup panel collection\n */\n set taskGroupCollection(taskgroups: Array<TaskGroupModel>) {\n this._taskGroupCollection = new TaskGroupCollection(taskgroups);\n }\n\n /**\n * Getting the taskgrouppanels on the tab\n */\n get taskGroupCollection(): TaskGroupCollection {\n return this._taskGroupCollection;\n }\n\n /**\n * Has taskgroups\n */\n hasTaskGroups(): boolean {\n return this.taskGroupCollection && this.taskGroupCollection.hasItems;\n }\n\n /**\n * Has tasks\n */\n hasTasks(): boolean {\n return this.taskGroupCollection.hasTasks();\n }\n}\n"],"mappings":"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"}
@@ -39,14 +39,15 @@ const RESOURCE_MODELS = [_ApplicationModel.default, _TabModel.default, _ListDeta
39
39
  /**
40
40
  * Resolve a model by resource
41
41
  */
42
- const resolveModel = data => {
42
+ const resolveModel = function (data) {
43
+ let availableModels = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : RESOURCE_MODELS;
43
44
  if (!data) {
44
45
  throw new _exceptions.IllegalArgumentException("No data or contribution available, cannot resolve model");
45
46
  }
46
47
  if (!(0, _objects.has)(data.contributions, "resourcetype")) {
47
- throw new _exceptions.IllegalArgumentException("Data has wrong format, missing resourcetype in contributions, cannot resolve model");
48
+ throw new _exceptions.IllegalArgumentException("Data has wrong format, missing resourcetype property in contributions, cannot resolve model");
48
49
  }
49
- const resourceTypeModel = (0, _find.default)(RESOURCE_MODELS).call(RESOURCE_MODELS, resourceModel => resourceModel.isApplicableModel(data));
50
+ const resourceTypeModel = (0, _find.default)(availableModels).call(availableModels, resourceModel => resourceModel.isApplicableModel(data));
50
51
  if (resourceTypeModel) {
51
52
  return resourceTypeModel;
52
53
  }
@@ -25,9 +25,10 @@ import ContentModel from "./content/ContentModel";
25
25
  import ContentTypeModel from "./content/ContentTypeModel";
26
26
  import LookupOptionsModel from "./lookup/LookupOptionsModel";
27
27
 
28
+ import { IllegalArgumentException } from "../exceptions";
29
+
28
30
  import type ModularUIResponse from "../modularui/ModularUIResponse";
29
31
  import type { ModularUIModel } from "./types";
30
- import { IllegalArgumentException } from "../exceptions";
31
32
 
32
33
  /**
33
34
  * Mapping of models and resourcetypes
@@ -62,7 +63,8 @@ const RESOURCE_MODELS = [
62
63
  * Resolve a model by resource
63
64
  */
64
65
  const resolveModel = (
65
- data: ModularUIResponse
66
+ data: ModularUIResponse,
67
+ availableModels: Array<Class<ModularUIModel>> = RESOURCE_MODELS
66
68
  ): Class<ModularUIModel> | null => {
67
69
  if (!data) {
68
70
  throw new IllegalArgumentException(
@@ -72,11 +74,11 @@ const resolveModel = (
72
74
 
73
75
  if (!has(data.contributions, "resourcetype")) {
74
76
  throw new IllegalArgumentException(
75
- "Data has wrong format, missing resourcetype in contributions, cannot resolve model"
77
+ "Data has wrong format, missing resourcetype property in contributions, cannot resolve model"
76
78
  );
77
79
  }
78
80
 
79
- const resourceTypeModel = RESOURCE_MODELS.find((resourceModel) =>
81
+ const resourceTypeModel = availableModels.find((resourceModel) =>
80
82
  resourceModel.isApplicableModel(data)
81
83
  );
82
84
 
@@ -1 +1 @@
1
- {"version":3,"file":"resolveModel.js","names":["RESOURCE_MODELS","ApplicationModel","TabModel","ListDetailModel","ListModel","GroupingPanelModel","CaseSearchModel","CaseViewModel","DetailModel","TaskGroupModel","FormModel","UserModel","UserProfileModel","UserServicesModel","ModelCatalogModel","ConceptIndexModel","BusinessScenarioModel","ConceptDetailModel","ConceptTypeDetailModel","ContentIndexModel","ContentTOCModel","ContentModel","ContentTypeModel","LookupOptionsModel","resolveModel","data","IllegalArgumentException","has","contributions","resourceTypeModel","resourceModel","isApplicableModel"],"sources":["../../src/models/resolveModel.js"],"sourcesContent":["// @flow\nimport { has } from \"../utils/helpers/objects\";\n\nimport ApplicationModel from \"./application/ApplicationModel\";\nimport CaseSearchModel from \"./search/CaseSearchModel\";\nimport CaseViewModel from \"./caseview/CaseViewModel\";\nimport DetailModel from \"./detail/DetailModel\";\nimport FormModel from \"./form/FormModel\";\nimport GroupingPanelModel from \"./panels/GroupingPanelModel\";\nimport ListModel from \"./list/ListModel\";\nimport ListDetailModel from \"./list/ListDetailModel\";\nimport TabModel from \"./tab/TabModel\";\nimport TaskGroupModel from \"./taskgroup/TaskGroupModel\";\nimport UserModel from \"./user/UserModel\";\nimport UserProfileModel from \"./user/UserProfileModel\";\nimport UserServicesModel from \"./user/UserServicesModel\";\nimport ModelCatalogModel from \"./modelcatalog/ModelCatalogModel\";\nimport ConceptIndexModel from \"./concepts/ConceptIndexModel\";\nimport BusinessScenarioModel from \"./concepts/BusinessScenarioModel\";\nimport ConceptDetailModel from \"./concepts/ConceptDetailModel\";\nimport ConceptTypeDetailModel from \"./concepts/ConceptTypeDetailModel\";\nimport ContentIndexModel from \"./content/ContentIndexModel\";\nimport ContentTOCModel from \"./content/ContentTOCModel\";\nimport ContentModel from \"./content/ContentModel\";\nimport ContentTypeModel from \"./content/ContentTypeModel\";\nimport LookupOptionsModel from \"./lookup/LookupOptionsModel\";\n\nimport type ModularUIResponse from \"../modularui/ModularUIResponse\";\nimport type { ModularUIModel } from \"./types\";\nimport { IllegalArgumentException } from \"../exceptions\";\n\n/**\n * Mapping of models and resourcetypes\n */\nconst RESOURCE_MODELS = [\n ApplicationModel,\n TabModel,\n ListDetailModel,\n ListModel,\n GroupingPanelModel,\n CaseSearchModel,\n CaseViewModel,\n DetailModel,\n TaskGroupModel,\n FormModel,\n UserModel,\n UserProfileModel,\n UserServicesModel,\n ModelCatalogModel,\n ConceptIndexModel,\n BusinessScenarioModel,\n ConceptDetailModel,\n ConceptTypeDetailModel,\n ContentIndexModel,\n ContentTOCModel,\n ContentModel,\n ContentTypeModel,\n LookupOptionsModel,\n];\n\n/**\n * Resolve a model by resource\n */\nconst resolveModel = (\n data: ModularUIResponse\n): Class<ModularUIModel> | null => {\n if (!data) {\n throw new IllegalArgumentException(\n \"No data or contribution available, cannot resolve model\"\n );\n }\n\n if (!has(data.contributions, \"resourcetype\")) {\n throw new IllegalArgumentException(\n \"Data has wrong format, missing resourcetype in contributions, cannot resolve model\"\n );\n }\n\n const resourceTypeModel = RESOURCE_MODELS.find((resourceModel) =>\n resourceModel.isApplicableModel(data)\n );\n\n if (resourceTypeModel) {\n return resourceTypeModel;\n }\n\n return null;\n};\n\nexport default resolveModel;\n"],"mappings":";;;;;;;;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAIA;AAEA;AACA;AACA;AACA,MAAMA,eAAe,GAAG,CACtBC,yBAAgB,EAChBC,iBAAQ,EACRC,wBAAe,EACfC,kBAAS,EACTC,2BAAkB,EAClBC,wBAAe,EACfC,sBAAa,EACbC,oBAAW,EACXC,uBAAc,EACdC,kBAAS,EACTC,kBAAS,EACTC,yBAAgB,EAChBC,0BAAiB,EACjBC,0BAAiB,EACjBC,0BAAiB,EACjBC,8BAAqB,EACrBC,2BAAkB,EAClBC,+BAAsB,EACtBC,0BAAiB,EACjBC,wBAAe,EACfC,qBAAY,EACZC,yBAAgB,EAChBC,2BAAkB,CACnB;;AAED;AACA;AACA;AACA,MAAMC,YAAY,GAChBC,IAAuB,IACU;EACjC,IAAI,CAACA,IAAI,EAAE;IACT,MAAM,IAAIC,oCAAwB,CAChC,yDAAyD,CAC1D;EACH;EAEA,IAAI,CAAC,IAAAC,YAAG,EAACF,IAAI,CAACG,aAAa,EAAE,cAAc,CAAC,EAAE;IAC5C,MAAM,IAAIF,oCAAwB,CAChC,oFAAoF,CACrF;EACH;EAEA,MAAMG,iBAAiB,GAAG,mBAAA7B,eAAe,OAAfA,eAAe,EAAO8B,aAAa,IAC3DA,aAAa,CAACC,iBAAiB,CAACN,IAAI,CAAC,CACtC;EAED,IAAII,iBAAiB,EAAE;IACrB,OAAOA,iBAAiB;EAC1B;EAEA,OAAO,IAAI;AACb,CAAC;AAAC,eAEaL,YAAY;AAAA"}
1
+ {"version":3,"file":"resolveModel.js","names":["RESOURCE_MODELS","ApplicationModel","TabModel","ListDetailModel","ListModel","GroupingPanelModel","CaseSearchModel","CaseViewModel","DetailModel","TaskGroupModel","FormModel","UserModel","UserProfileModel","UserServicesModel","ModelCatalogModel","ConceptIndexModel","BusinessScenarioModel","ConceptDetailModel","ConceptTypeDetailModel","ContentIndexModel","ContentTOCModel","ContentModel","ContentTypeModel","LookupOptionsModel","resolveModel","data","availableModels","IllegalArgumentException","has","contributions","resourceTypeModel","resourceModel","isApplicableModel"],"sources":["../../src/models/resolveModel.js"],"sourcesContent":["// @flow\nimport { has } from \"../utils/helpers/objects\";\n\nimport ApplicationModel from \"./application/ApplicationModel\";\nimport CaseSearchModel from \"./search/CaseSearchModel\";\nimport CaseViewModel from \"./caseview/CaseViewModel\";\nimport DetailModel from \"./detail/DetailModel\";\nimport FormModel from \"./form/FormModel\";\nimport GroupingPanelModel from \"./panels/GroupingPanelModel\";\nimport ListModel from \"./list/ListModel\";\nimport ListDetailModel from \"./list/ListDetailModel\";\nimport TabModel from \"./tab/TabModel\";\nimport TaskGroupModel from \"./taskgroup/TaskGroupModel\";\nimport UserModel from \"./user/UserModel\";\nimport UserProfileModel from \"./user/UserProfileModel\";\nimport UserServicesModel from \"./user/UserServicesModel\";\nimport ModelCatalogModel from \"./modelcatalog/ModelCatalogModel\";\nimport ConceptIndexModel from \"./concepts/ConceptIndexModel\";\nimport BusinessScenarioModel from \"./concepts/BusinessScenarioModel\";\nimport ConceptDetailModel from \"./concepts/ConceptDetailModel\";\nimport ConceptTypeDetailModel from \"./concepts/ConceptTypeDetailModel\";\nimport ContentIndexModel from \"./content/ContentIndexModel\";\nimport ContentTOCModel from \"./content/ContentTOCModel\";\nimport ContentModel from \"./content/ContentModel\";\nimport ContentTypeModel from \"./content/ContentTypeModel\";\nimport LookupOptionsModel from \"./lookup/LookupOptionsModel\";\n\nimport { IllegalArgumentException } from \"../exceptions\";\n\nimport type ModularUIResponse from \"../modularui/ModularUIResponse\";\nimport type { ModularUIModel } from \"./types\";\n\n/**\n * Mapping of models and resourcetypes\n */\nconst RESOURCE_MODELS = [\n ApplicationModel,\n TabModel,\n ListDetailModel,\n ListModel,\n GroupingPanelModel,\n CaseSearchModel,\n CaseViewModel,\n DetailModel,\n TaskGroupModel,\n FormModel,\n UserModel,\n UserProfileModel,\n UserServicesModel,\n ModelCatalogModel,\n ConceptIndexModel,\n BusinessScenarioModel,\n ConceptDetailModel,\n ConceptTypeDetailModel,\n ContentIndexModel,\n ContentTOCModel,\n ContentModel,\n ContentTypeModel,\n LookupOptionsModel,\n];\n\n/**\n * Resolve a model by resource\n */\nconst resolveModel = (\n data: ModularUIResponse,\n availableModels: Array<Class<ModularUIModel>> = RESOURCE_MODELS\n): Class<ModularUIModel> | null => {\n if (!data) {\n throw new IllegalArgumentException(\n \"No data or contribution available, cannot resolve model\"\n );\n }\n\n if (!has(data.contributions, \"resourcetype\")) {\n throw new IllegalArgumentException(\n \"Data has wrong format, missing resourcetype property in contributions, cannot resolve model\"\n );\n }\n\n const resourceTypeModel = availableModels.find((resourceModel) =>\n resourceModel.isApplicableModel(data)\n );\n\n if (resourceTypeModel) {\n return resourceTypeModel;\n }\n\n return null;\n};\n\nexport default resolveModel;\n"],"mappings":";;;;;;;;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAKA;AACA;AACA;AACA,MAAMA,eAAe,GAAG,CACtBC,yBAAgB,EAChBC,iBAAQ,EACRC,wBAAe,EACfC,kBAAS,EACTC,2BAAkB,EAClBC,wBAAe,EACfC,sBAAa,EACbC,oBAAW,EACXC,uBAAc,EACdC,kBAAS,EACTC,kBAAS,EACTC,yBAAgB,EAChBC,0BAAiB,EACjBC,0BAAiB,EACjBC,0BAAiB,EACjBC,8BAAqB,EACrBC,2BAAkB,EAClBC,+BAAsB,EACtBC,0BAAiB,EACjBC,wBAAe,EACfC,qBAAY,EACZC,yBAAgB,EAChBC,2BAAkB,CACnB;;AAED;AACA;AACA;AACA,MAAMC,YAAY,GAAG,UACnBC,IAAuB,EAEU;EAAA,IADjCC,eAA6C,uEAAG1B,eAAe;EAE/D,IAAI,CAACyB,IAAI,EAAE;IACT,MAAM,IAAIE,oCAAwB,CAChC,yDAAyD,CAC1D;EACH;EAEA,IAAI,CAAC,IAAAC,YAAG,EAACH,IAAI,CAACI,aAAa,EAAE,cAAc,CAAC,EAAE;IAC5C,MAAM,IAAIF,oCAAwB,CAChC,6FAA6F,CAC9F;EACH;EAEA,MAAMG,iBAAiB,GAAG,mBAAAJ,eAAe,OAAfA,eAAe,EAAOK,aAAa,IAC3DA,aAAa,CAACC,iBAAiB,CAACP,IAAI,CAAC,CACtC;EAED,IAAIK,iBAAiB,EAAE;IACrB,OAAOA,iBAAiB;EAC1B;EAEA,OAAO,IAAI;AACb,CAAC;AAAC,eAEaN,YAAY;AAAA"}
@@ -17,6 +17,12 @@ class CaseSearchModel extends _ListModel.default {
17
17
  return "CaseSearch";
18
18
  }
19
19
 
20
+ /**
21
+ */
22
+ static get modelName() {
23
+ return "CaseSearchModel";
24
+ }
25
+
20
26
  /**
21
27
  */
22
28
  static isApplicableModel(data) {
@@ -14,6 +14,12 @@ export default class CaseSearchModel extends ListModel {
14
14
  return "CaseSearch";
15
15
  }
16
16
 
17
+ /**
18
+ */
19
+ static get modelName(): string {
20
+ return "CaseSearchModel";
21
+ }
22
+
17
23
  /**
18
24
  */
19
25
  static isApplicableModel(data: ModularUIResponse): boolean {
@@ -1 +1 @@
1
- {"version":3,"file":"CaseSearchModel.js","names":["CaseSearchModel","ListModel","type","isApplicableModel","data","contributions","resourcetype","getQuickSearchFilters","filterCollection","filter","isQuickSearch","hasQuickSearchFilters","length"],"sources":["../../../src/models/search/CaseSearchModel.js"],"sourcesContent":["// @flow\nimport ListModel from \"../list/ListModel\";\n\nimport type { ModularUIResponse } from \"../../modularui\";\nimport type { FilterType } from \"../types\";\n\n/**\n * Case search model\n */\nexport default class CaseSearchModel extends ListModel {\n /**\n */\n get type(): string {\n return \"CaseSearch\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n data.contributions.resourcetype === \"CaseSearch\"\n );\n }\n\n /**\n * Retrieve quick search filters\n */\n getQuickSearchFilters(): Array<FilterType> {\n return this.filterCollection\n ? this.filterCollection.filter((filter) => filter.isQuickSearch())\n : [];\n }\n\n /**\n */\n hasQuickSearchFilters(): boolean {\n return this.getQuickSearchFilters().length > 0;\n }\n}\n"],"mappings":";;;;;;;;AACA;AAKA;AACA;AACA;AACe,MAAMA,eAAe,SAASC,kBAAS,CAAC;EACrD;AACF;EACE,IAAIC,IAAI,GAAW;IACjB,OAAO,YAAY;EACrB;;EAEA;AACF;EACE,OAAOC,iBAAiB,CAACC,IAAuB,EAAW;IACzD,OACEA,IAAI,CAACC,aAAa,CAACC,YAAY,IAC/BF,IAAI,CAACC,aAAa,CAACC,YAAY,KAAK,YAAY;EAEpD;;EAEA;AACF;AACA;EACEC,qBAAqB,GAAsB;IAAA;IACzC,OAAO,IAAI,CAACC,gBAAgB,GACxB,oCAAI,CAACA,gBAAgB,iBAASC,MAAM,IAAKA,MAAM,CAACC,aAAa,EAAE,CAAC,GAChE,EAAE;EACR;;EAEA;AACF;EACEC,qBAAqB,GAAY;IAC/B,OAAO,IAAI,CAACJ,qBAAqB,EAAE,CAACK,MAAM,GAAG,CAAC;EAChD;AACF;AAAC"}
1
+ {"version":3,"file":"CaseSearchModel.js","names":["CaseSearchModel","ListModel","type","modelName","isApplicableModel","data","contributions","resourcetype","getQuickSearchFilters","filterCollection","filter","isQuickSearch","hasQuickSearchFilters","length"],"sources":["../../../src/models/search/CaseSearchModel.js"],"sourcesContent":["// @flow\nimport ListModel from \"../list/ListModel\";\n\nimport type { ModularUIResponse } from \"../../modularui\";\nimport type { FilterType } from \"../types\";\n\n/**\n * Case search model\n */\nexport default class CaseSearchModel extends ListModel {\n /**\n */\n get type(): string {\n return \"CaseSearch\";\n }\n\n /**\n */\n static get modelName(): string {\n return \"CaseSearchModel\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n data.contributions.resourcetype === \"CaseSearch\"\n );\n }\n\n /**\n * Retrieve quick search filters\n */\n getQuickSearchFilters(): Array<FilterType> {\n return this.filterCollection\n ? this.filterCollection.filter((filter) => filter.isQuickSearch())\n : [];\n }\n\n /**\n */\n hasQuickSearchFilters(): boolean {\n return this.getQuickSearchFilters().length > 0;\n }\n}\n"],"mappings":";;;;;;;;AACA;AAKA;AACA;AACA;AACe,MAAMA,eAAe,SAASC,kBAAS,CAAC;EACrD;AACF;EACE,IAAIC,IAAI,GAAW;IACjB,OAAO,YAAY;EACrB;;EAEA;AACF;EACE,WAAWC,SAAS,GAAW;IAC7B,OAAO,iBAAiB;EAC1B;;EAEA;AACF;EACE,OAAOC,iBAAiB,CAACC,IAAuB,EAAW;IACzD,OACEA,IAAI,CAACC,aAAa,CAACC,YAAY,IAC/BF,IAAI,CAACC,aAAa,CAACC,YAAY,KAAK,YAAY;EAEpD;;EAEA;AACF;AACA;EACEC,qBAAqB,GAAsB;IAAA;IACzC,OAAO,IAAI,CAACC,gBAAgB,GACxB,oCAAI,CAACA,gBAAgB,iBAASC,MAAM,IAAKA,MAAM,CAACC,aAAa,EAAE,CAAC,GAChE,EAAE;EACR;;EAEA;AACF;EACEC,qBAAqB,GAAY;IAC/B,OAAO,IAAI,CAACJ,qBAAqB,EAAE,CAACK,MAAM,GAAG,CAAC;EAChD;AACF;AAAC"}
@@ -34,6 +34,12 @@ class TabModel extends _ResourceModel.default {
34
34
  return "Tab";
35
35
  }
36
36
 
37
+ /**
38
+ */
39
+ static get modelName() {
40
+ return "TabModel";
41
+ }
42
+
37
43
  /**
38
44
  */
39
45
  static isApplicableModel(data) {
@@ -35,6 +35,12 @@ export default class TabModel extends ResourceModel {
35
35
  return "Tab";
36
36
  }
37
37
 
38
+ /**
39
+ */
40
+ static get modelName(): string {
41
+ return "TabModel";
42
+ }
43
+
38
44
  /**
39
45
  */
40
46
  static isApplicableModel(data: ModularUIResponse): boolean {
@@ -1 +1 @@
1
- {"version":3,"file":"TabModel.js","names":["TabModel","ResourceModel","constructor","modularuiResponse","createTaskGroupCollection","_actionCollection","ActionCollection","data","actions","contributions","type","isApplicableModel","resourcetype","getInitialChildModelLinks","links","getLinksByGroup","all","setChildModels","models","taskGroups","i","length","TaskGroupModel","push","taskGroupCollection","add","searchLink","first","taskgroups","taskgroup","taskgroupContributions","taskgroupContribution","name","create","_taskGroupCollection","TaskGroupCollection","label","getContribution","components","actionCollection","hasComponents","size","hasTaskGroups","hasItems","hasActions"],"sources":["../../../src/models/tab/TabModel.js"],"sourcesContent":["// @flow\nimport TaskGroupCollection from \"../taskgroup/TaskGroupCollection\";\nimport ResourceModel from \"../base/ResourceModel\";\nimport TaskGroupModel from \"../taskgroup/TaskGroupModel\";\nimport ActionCollection from \"../actions/ActionCollection\";\n\nimport type { ModularUIModel } from \"../types\";\nimport type { ModularUIResponse } from \"../../modularui\";\nimport type LinkModel from \"../links/LinkModel\";\nimport type LinkCollection from \"../links/LinkCollection\";\n\n/**\n * Describes a TabModel\n */\nexport default class TabModel extends ResourceModel {\n _actionCollection: ActionCollection;\n _taskGroupCollection: TaskGroupCollection;\n\n /**\n */\n constructor(modularuiResponse: ModularUIResponse) {\n super(modularuiResponse);\n\n this.createTaskGroupCollection();\n\n this._actionCollection = new ActionCollection(\n this.data.actions,\n this.contributions.actions\n );\n }\n\n /**\n */\n get type(): string {\n return \"Tab\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n (data.contributions.resourcetype.endsWith(\"Tab\") ||\n data.contributions.resourcetype.endsWith(\"KnowledgeBank\"))\n );\n }\n\n /**\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n return this.links.getLinksByGroup(\"taskgroup\", \"actions\").all;\n }\n\n /**\n */\n setChildModels(models: Array<ModularUIModel>) {\n const taskGroups = [];\n\n for (let i = 0; i < models.length; i++) {\n if (models[i] instanceof TaskGroupModel) {\n taskGroups.push(models[i]);\n }\n }\n\n this.taskGroupCollection.add(taskGroups);\n }\n\n /**\n */\n get searchLink(): ?LinkModel {\n return this.links.getLinksByGroup(\"search\").first;\n }\n\n /**\n */\n createTaskGroupCollection() {\n this.taskGroupCollection = this.data.taskgroups\n ? this.data.taskgroups\n .map((taskgroup) => {\n const taskgroupContributions = this.contributions.taskgroups.find(\n (taskgroupContribution) =>\n taskgroupContribution.name === taskgroup.name\n );\n\n if (taskgroupContributions) {\n return TaskGroupModel.create(\n taskgroup.name,\n taskgroup,\n taskgroupContributions\n );\n }\n\n return null;\n })\n .filter((taskgroup) => taskgroup != null)\n : [];\n }\n\n /**\n * Getting the taskgrouppanels on the tab\n */\n get taskGroupCollection(): TaskGroupCollection {\n return this._taskGroupCollection;\n }\n\n /**\n * Setting the taskgroup panel collection\n */\n set taskGroupCollection(taskgroups: Array<TaskGroupModel>) {\n this._taskGroupCollection = new TaskGroupCollection(taskgroups);\n }\n\n /**\n * Getting the label of the tab\n */\n get label(): string {\n return this.getContribution(\"label\", \"\");\n }\n\n /**\n * Getting the component links on the tab\n */\n get components(): LinkCollection {\n return this.links.getLinksByGroup(\"component\", \"search\");\n }\n\n /**\n */\n get actionCollection(): ActionCollection {\n return this._actionCollection;\n }\n\n /**\n * Has component links\n */\n hasComponents(): boolean {\n return this.components.size > 0;\n }\n\n /**\n * Has taskgroups\n */\n hasTaskGroups(): boolean {\n return this.taskGroupCollection && this.taskGroupCollection?.hasItems;\n }\n\n /**\n */\n hasActions(): boolean {\n return this.actionCollection && this.actionCollection.hasItems;\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"TabModel.js","names":["TabModel","ResourceModel","constructor","modularuiResponse","createTaskGroupCollection","_actionCollection","ActionCollection","data","actions","contributions","type","modelName","isApplicableModel","resourcetype","getInitialChildModelLinks","links","getLinksByGroup","all","setChildModels","models","taskGroups","i","length","TaskGroupModel","push","taskGroupCollection","add","searchLink","first","taskgroups","taskgroup","taskgroupContributions","taskgroupContribution","name","create","_taskGroupCollection","TaskGroupCollection","label","getContribution","components","actionCollection","hasComponents","size","hasTaskGroups","hasItems","hasActions"],"sources":["../../../src/models/tab/TabModel.js"],"sourcesContent":["// @flow\nimport TaskGroupCollection from \"../taskgroup/TaskGroupCollection\";\nimport ResourceModel from \"../base/ResourceModel\";\nimport TaskGroupModel from \"../taskgroup/TaskGroupModel\";\nimport ActionCollection from \"../actions/ActionCollection\";\n\nimport type { ModularUIModel } from \"../types\";\nimport type { ModularUIResponse } from \"../../modularui\";\nimport type LinkModel from \"../links/LinkModel\";\nimport type LinkCollection from \"../links/LinkCollection\";\n\n/**\n * Describes a TabModel\n */\nexport default class TabModel extends ResourceModel {\n _actionCollection: ActionCollection;\n _taskGroupCollection: TaskGroupCollection;\n\n /**\n */\n constructor(modularuiResponse: ModularUIResponse) {\n super(modularuiResponse);\n\n this.createTaskGroupCollection();\n\n this._actionCollection = new ActionCollection(\n this.data.actions,\n this.contributions.actions\n );\n }\n\n /**\n */\n get type(): string {\n return \"Tab\";\n }\n\n /**\n */\n static get modelName(): string {\n return \"TabModel\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n (data.contributions.resourcetype.endsWith(\"Tab\") ||\n data.contributions.resourcetype.endsWith(\"KnowledgeBank\"))\n );\n }\n\n /**\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n return this.links.getLinksByGroup(\"taskgroup\", \"actions\").all;\n }\n\n /**\n */\n setChildModels(models: Array<ModularUIModel>) {\n const taskGroups = [];\n\n for (let i = 0; i < models.length; i++) {\n if (models[i] instanceof TaskGroupModel) {\n taskGroups.push(models[i]);\n }\n }\n\n this.taskGroupCollection.add(taskGroups);\n }\n\n /**\n */\n get searchLink(): ?LinkModel {\n return this.links.getLinksByGroup(\"search\").first;\n }\n\n /**\n */\n createTaskGroupCollection() {\n this.taskGroupCollection = this.data.taskgroups\n ? this.data.taskgroups\n .map((taskgroup) => {\n const taskgroupContributions = this.contributions.taskgroups.find(\n (taskgroupContribution) =>\n taskgroupContribution.name === taskgroup.name\n );\n\n if (taskgroupContributions) {\n return TaskGroupModel.create(\n taskgroup.name,\n taskgroup,\n taskgroupContributions\n );\n }\n\n return null;\n })\n .filter((taskgroup) => taskgroup != null)\n : [];\n }\n\n /**\n * Getting the taskgrouppanels on the tab\n */\n get taskGroupCollection(): TaskGroupCollection {\n return this._taskGroupCollection;\n }\n\n /**\n * Setting the taskgroup panel collection\n */\n set taskGroupCollection(taskgroups: Array<TaskGroupModel>) {\n this._taskGroupCollection = new TaskGroupCollection(taskgroups);\n }\n\n /**\n * Getting the label of the tab\n */\n get label(): string {\n return this.getContribution(\"label\", \"\");\n }\n\n /**\n * Getting the component links on the tab\n */\n get components(): LinkCollection {\n return this.links.getLinksByGroup(\"component\", \"search\");\n }\n\n /**\n */\n get actionCollection(): ActionCollection {\n return this._actionCollection;\n }\n\n /**\n * Has component links\n */\n hasComponents(): boolean {\n return this.components.size > 0;\n }\n\n /**\n * Has taskgroups\n */\n hasTaskGroups(): boolean {\n return this.taskGroupCollection && this.taskGroupCollection?.hasItems;\n }\n\n /**\n */\n hasActions(): boolean {\n return this.actionCollection && this.actionCollection.hasItems;\n }\n}\n"],"mappings":"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"}
@@ -40,6 +40,12 @@ class TaskGroupModel extends _ResourceModel.default {
40
40
  return "TaskGroup";
41
41
  }
42
42
 
43
+ /**
44
+ */
45
+ static get modelName() {
46
+ return "TaskGroupModel";
47
+ }
48
+
43
49
  /**
44
50
  */
45
51
  static isApplicableModel(data) {
@@ -51,6 +51,12 @@ export default class TaskGroupModel extends ResourceModel {
51
51
  return "TaskGroup";
52
52
  }
53
53
 
54
+ /**
55
+ */
56
+ static get modelName(): string {
57
+ return "TaskGroupModel";
58
+ }
59
+
54
60
  /**
55
61
  */
56
62
  static isApplicableModel(data: ModularUIResponse): boolean {
@@ -1 +1 @@
1
- {"version":3,"file":"TaskGroupModel.js","names":["TaskGroupModel","ResourceModel","constructor","modularuiResponse","_actionCollection","ActionCollection","data","actions","contributions","selfHref","links","getLinkByKey","selflink","href","_key","substring","lastIndexOf","name","create","key","taskgroup","ModularUIResponse","type","isApplicableModel","resourcetype","label","actionCollection"],"sources":["../../../src/models/taskgroup/TaskGroupModel.js"],"sourcesContent":["// @flow\nimport ActionCollection from \"../actions/ActionCollection\";\nimport ResourceModel from \"../base/ResourceModel\";\n\nimport ModularUIResponse from \"../../modularui/ModularUIResponse\";\n\n/**\n * TaskGroupModel\n */\nexport default class TaskGroupModel extends ResourceModel {\n _key: string;\n _actionCollection: ActionCollection;\n\n /**\n */\n constructor(modularuiResponse: ModularUIResponse) {\n super(modularuiResponse);\n\n this._actionCollection = new ActionCollection(\n this.data.actions,\n this.contributions.actions\n );\n\n const selfHref = this.links.getLinkByKey(\"self\")\n ? this.selflink.href.href\n : null;\n\n this._key = selfHref\n ? selfHref.substring(selfHref.lastIndexOf(\"/\") + 1)\n : this.data.name;\n }\n\n /**\n */\n static create(\n key: string,\n data: Object,\n contributions: Object\n ): TaskGroupModel {\n const taskgroup = new ModularUIResponse();\n taskgroup.key = key;\n taskgroup.data = data;\n taskgroup.contributions = contributions;\n\n return new TaskGroupModel(taskgroup);\n }\n\n /**\n */\n get type(): string {\n return \"TaskGroup\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n data.contributions.resourcetype === \"TaskGroup\"\n );\n }\n\n /**\n * Get the key of the TaskGroup\n */\n get key(): string {\n return this._key;\n }\n\n /**\n * Get the label of the TaskGroup\n */\n get label(): string {\n return this.contributions.label;\n }\n\n /**\n * Retrieve actions of taskgroup\n */\n get actionCollection(): ActionCollection {\n return this._actionCollection;\n }\n}\n"],"mappings":";;;;;;;;AACA;AACA;AAEA;AAEA;AACA;AACA;AACe,MAAMA,cAAc,SAASC,sBAAa,CAAC;EAIxD;AACF;EACEC,WAAW,CAACC,iBAAoC,EAAE;IAChD,KAAK,CAACA,iBAAiB,CAAC;IAAC;IAAA;IAEzB,IAAI,CAACC,iBAAiB,GAAG,IAAIC,yBAAgB,CAC3C,IAAI,CAACC,IAAI,CAACC,OAAO,EACjB,IAAI,CAACC,aAAa,CAACD,OAAO,CAC3B;IAED,MAAME,QAAQ,GAAG,IAAI,CAACC,KAAK,CAACC,YAAY,CAAC,MAAM,CAAC,GAC5C,IAAI,CAACC,QAAQ,CAACC,IAAI,CAACA,IAAI,GACvB,IAAI;IAER,IAAI,CAACC,IAAI,GAAGL,QAAQ,GAChBA,QAAQ,CAACM,SAAS,CAACN,QAAQ,CAACO,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GACjD,IAAI,CAACV,IAAI,CAACW,IAAI;EACpB;;EAEA;AACF;EACE,OAAOC,MAAM,CACXC,GAAW,EACXb,IAAY,EACZE,aAAqB,EACL;IAChB,MAAMY,SAAS,GAAG,IAAIC,0BAAiB,EAAE;IACzCD,SAAS,CAACD,GAAG,GAAGA,GAAG;IACnBC,SAAS,CAACd,IAAI,GAAGA,IAAI;IACrBc,SAAS,CAACZ,aAAa,GAAGA,aAAa;IAEvC,OAAO,IAAIR,cAAc,CAACoB,SAAS,CAAC;EACtC;;EAEA;AACF;EACE,IAAIE,IAAI,GAAW;IACjB,OAAO,WAAW;EACpB;;EAEA;AACF;EACE,OAAOC,iBAAiB,CAACjB,IAAuB,EAAW;IACzD,OACEA,IAAI,CAACE,aAAa,CAACgB,YAAY,IAC/BlB,IAAI,CAACE,aAAa,CAACgB,YAAY,KAAK,WAAW;EAEnD;;EAEA;AACF;AACA;EACE,IAAIL,GAAG,GAAW;IAChB,OAAO,IAAI,CAACL,IAAI;EAClB;;EAEA;AACF;AACA;EACE,IAAIW,KAAK,GAAW;IAClB,OAAO,IAAI,CAACjB,aAAa,CAACiB,KAAK;EACjC;;EAEA;AACF;AACA;EACE,IAAIC,gBAAgB,GAAqB;IACvC,OAAO,IAAI,CAACtB,iBAAiB;EAC/B;AACF;AAAC"}
1
+ {"version":3,"file":"TaskGroupModel.js","names":["TaskGroupModel","ResourceModel","constructor","modularuiResponse","_actionCollection","ActionCollection","data","actions","contributions","selfHref","links","getLinkByKey","selflink","href","_key","substring","lastIndexOf","name","create","key","taskgroup","ModularUIResponse","type","modelName","isApplicableModel","resourcetype","label","actionCollection"],"sources":["../../../src/models/taskgroup/TaskGroupModel.js"],"sourcesContent":["// @flow\nimport ActionCollection from \"../actions/ActionCollection\";\nimport ResourceModel from \"../base/ResourceModel\";\n\nimport ModularUIResponse from \"../../modularui/ModularUIResponse\";\n\n/**\n * TaskGroupModel\n */\nexport default class TaskGroupModel extends ResourceModel {\n _key: string;\n _actionCollection: ActionCollection;\n\n /**\n */\n constructor(modularuiResponse: ModularUIResponse) {\n super(modularuiResponse);\n\n this._actionCollection = new ActionCollection(\n this.data.actions,\n this.contributions.actions\n );\n\n const selfHref = this.links.getLinkByKey(\"self\")\n ? this.selflink.href.href\n : null;\n\n this._key = selfHref\n ? selfHref.substring(selfHref.lastIndexOf(\"/\") + 1)\n : this.data.name;\n }\n\n /**\n */\n static create(\n key: string,\n data: Object,\n contributions: Object\n ): TaskGroupModel {\n const taskgroup = new ModularUIResponse();\n taskgroup.key = key;\n taskgroup.data = data;\n taskgroup.contributions = contributions;\n\n return new TaskGroupModel(taskgroup);\n }\n\n /**\n */\n get type(): string {\n return \"TaskGroup\";\n }\n\n /**\n */\n static get modelName(): string {\n return \"TaskGroupModel\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n data.contributions.resourcetype === \"TaskGroup\"\n );\n }\n\n /**\n * Get the key of the TaskGroup\n */\n get key(): string {\n return this._key;\n }\n\n /**\n * Get the label of the TaskGroup\n */\n get label(): string {\n return this.contributions.label;\n }\n\n /**\n * Retrieve actions of taskgroup\n */\n get actionCollection(): ActionCollection {\n return this._actionCollection;\n }\n}\n"],"mappings":";;;;;;;;AACA;AACA;AAEA;AAEA;AACA;AACA;AACe,MAAMA,cAAc,SAASC,sBAAa,CAAC;EAIxD;AACF;EACEC,WAAW,CAACC,iBAAoC,EAAE;IAChD,KAAK,CAACA,iBAAiB,CAAC;IAAC;IAAA;IAEzB,IAAI,CAACC,iBAAiB,GAAG,IAAIC,yBAAgB,CAC3C,IAAI,CAACC,IAAI,CAACC,OAAO,EACjB,IAAI,CAACC,aAAa,CAACD,OAAO,CAC3B;IAED,MAAME,QAAQ,GAAG,IAAI,CAACC,KAAK,CAACC,YAAY,CAAC,MAAM,CAAC,GAC5C,IAAI,CAACC,QAAQ,CAACC,IAAI,CAACA,IAAI,GACvB,IAAI;IAER,IAAI,CAACC,IAAI,GAAGL,QAAQ,GAChBA,QAAQ,CAACM,SAAS,CAACN,QAAQ,CAACO,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GACjD,IAAI,CAACV,IAAI,CAACW,IAAI;EACpB;;EAEA;AACF;EACE,OAAOC,MAAM,CACXC,GAAW,EACXb,IAAY,EACZE,aAAqB,EACL;IAChB,MAAMY,SAAS,GAAG,IAAIC,0BAAiB,EAAE;IACzCD,SAAS,CAACD,GAAG,GAAGA,GAAG;IACnBC,SAAS,CAACd,IAAI,GAAGA,IAAI;IACrBc,SAAS,CAACZ,aAAa,GAAGA,aAAa;IAEvC,OAAO,IAAIR,cAAc,CAACoB,SAAS,CAAC;EACtC;;EAEA;AACF;EACE,IAAIE,IAAI,GAAW;IACjB,OAAO,WAAW;EACpB;;EAEA;AACF;EACE,WAAWC,SAAS,GAAW;IAC7B,OAAO,gBAAgB;EACzB;;EAEA;AACF;EACE,OAAOC,iBAAiB,CAAClB,IAAuB,EAAW;IACzD,OACEA,IAAI,CAACE,aAAa,CAACiB,YAAY,IAC/BnB,IAAI,CAACE,aAAa,CAACiB,YAAY,KAAK,WAAW;EAEnD;;EAEA;AACF;AACA;EACE,IAAIN,GAAG,GAAW;IAChB,OAAO,IAAI,CAACL,IAAI;EAClB;;EAEA;AACF;AACA;EACE,IAAIY,KAAK,GAAW;IAClB,OAAO,IAAI,CAAClB,aAAa,CAACkB,KAAK;EACjC;;EAEA;AACF;AACA;EACE,IAAIC,gBAAgB,GAAqB;IACvC,OAAO,IAAI,CAACvB,iBAAiB;EAC/B;AACF;AAAC"}
@@ -157,7 +157,7 @@ export interface IModelWithChildModels {
157
157
  export type AuthenticationType = {
158
158
  name: string,
159
159
  authentication: string,
160
- redirectUri: string,
160
+ redirectUri?: string,
161
161
  isPrimary: boolean,
162
162
  };
163
163
 
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../src/models/types.js"],"sourcesContent":["// @flow\nimport type ApplicationModel from \"./application/ApplicationModel\";\nimport type BooleanAttributeModel from \"./attributes/BooleanAttributeModel\";\nimport type CaptchaAttributeModel from \"./attributes/CaptchaAttributeModel\";\nimport type ChoiceAttributeModel from \"./attributes/ChoiceAttributeModel\";\nimport type CompositeAttributeModel from \"./attributes/CompositeAttributeModel\";\nimport type DatetimeAttributeModel from \"./attributes/DatetimeAttributeModel\";\nimport type HelptextAttributeModel from \"./attributes/HelptextAttributeModel\";\nimport type LabelAttributeModel from \"./attributes/LabelAttributeModel\";\nimport type MemoAttributeModel from \"./attributes/MemoAttributeModel\";\nimport type MoneyAttributeModel from \"./attributes/MoneyAttributeModel\";\nimport type NumberAttributeModel from \"./attributes/NumberAttributeModel\";\nimport type PasswordAttributeModel from \"./attributes/PasswordAttributeModel\";\nimport type StringAttributeModel from \"./attributes/StringAttributeModel\";\nimport type UploadAttributeModel from \"./attributes/UploadAttributeModel\";\nimport type XMLAttributeModel from \"./attributes/XMLAttributeModel\";\nimport type CaseViewModel from \"./caseview/CaseViewModel\";\nimport type BusinessScenarioModel from \"./concepts/BusinessScenarioModel\";\nimport type ConceptDetailModel from \"./concepts/ConceptDetailModel\";\nimport type ConceptIndexModel from \"./concepts/ConceptIndexModel\";\nimport type ConceptTypeDetailModel from \"./concepts/ConceptTypeDetailModel\";\nimport type ContentIndexModel from \"./content/ContentIndexModel\";\nimport type ContentModel from \"./content/ContentModel\";\nimport type SectionModel from \"./content/SectionModel\";\nimport type ContentTOCModel from \"./content/ContentTOCModel\";\nimport type ContentTypeModel from \"./content/ContentTypeModel\";\nimport type DetailModel from \"./detail/DetailModel\";\nimport type AssignmentFilterModel from \"./filters/AssignmentFilterModel\";\nimport type FilterModel from \"./filters/FilterModel\";\nimport type RangeFilterModel from \"./filters/RangeFilterModel\";\nimport type ConceptIndexFilterModel from \"./filters/ConceptIndexFilterModel\";\nimport type FormModel from \"./form/FormModel\";\nimport type ListDetailModel from \"./list/ListDetailModel\";\nimport type ListModel from \"./list/ListModel\";\nimport type ModelCatalogModel from \"./modelcatalog/ModelCatalogModel\";\nimport type GroupingPanelModel from \"./panels/GroupingPanelModel\";\nimport type CaseSearchModel from \"./search/CaseSearchModel\";\nimport type TabModel from \"./tab/TabModel\";\nimport type TaskGroupModel from \"./taskgroup/TaskGroupModel\";\nimport type UserModel from \"./user/UserModel\";\nimport type UserServicesModel from \"./user/UserServicesModel\";\nimport type LinkModel from \"./links/LinkModel\";\nimport type LookupOptionsModel from \"./lookup/LookupOptionsModel\";\nimport type BaseFilterModel from \"./filters/BaseFilterModel\";\nimport type AttributeCollection from \"./attributes/AttributeCollection\";\nimport type AttributeModel from \"./attributes/AttributeModel\";\nimport type LayoutHintCollection from \"./layouthint/LayoutHintCollection\";\n\nexport type ModularUIModel =\n | ApplicationModel\n | CaseSearchModel\n | CaseViewModel\n | ListDetailModel\n | DetailModel\n | FormModel\n | GroupingPanelModel\n | ListModel\n | TabModel\n | TaskGroupModel\n | UserModel\n | UserServicesModel\n | ModelCatalogModel\n | ConceptIndexModel\n | ConceptDetailModel\n | BusinessScenarioModel\n | ConceptTypeDetailModel\n | ContentIndexModel\n | ContentTOCModel\n | ContentModel\n | ContentTypeModel\n | LookupOptionsModel;\n\nexport type AttributeType =\n | BooleanAttributeModel\n | CaptchaAttributeModel\n | ChoiceAttributeModel\n | DatetimeAttributeModel\n | HelptextAttributeModel\n | LabelAttributeModel\n | MemoAttributeModel\n | MoneyAttributeModel\n | NumberAttributeModel\n | PasswordAttributeModel\n | CompositeAttributeModel\n | StringAttributeModel\n | UploadAttributeModel\n | XMLAttributeModel;\n\nexport type RangeChildAttributeType =\n | NumberAttributeModel\n | DatetimeAttributeModel;\n\nexport type FilterType =\n | BaseFilterModel\n | FilterModel\n | AssignmentFilterModel\n | RangeFilterModel\n | ConceptIndexFilterModel;\n\nexport type FormErrorAnchor = {\n id: string,\n properties?: {\n [propertyName: string]: string | number,\n },\n anchor?: {\n objectid: string,\n elementid?: string,\n _links?: Object,\n index?: number,\n \"index-identifier\"?: string,\n },\n layouthint: LayoutHintCollection,\n message: string,\n param?: {\n name: string,\n },\n};\n\nexport type labelsJSON = {\n _id: string,\n label: string,\n value: string,\n};\n\nexport type propertyJSON = {\n _id: string,\n type: string,\n mandatory: string,\n label: string,\n value: string,\n};\n\nexport type textfragmentJSON = {\n label: string,\n text: string,\n type: string,\n};\n\nexport interface IConstraintModel {\n +id: string;\n +defaultMessage: string;\n +parameters: Object;\n +isMandatoryConstraint: boolean;\n validate(value: any): boolean;\n hasValidation(): boolean;\n}\n\nexport interface ILayoutHintRule {\n process(attribute: AttributeModel, attributes: AttributeCollection): void;\n}\n\nexport interface IModelWithChildModels {\n getInitialChildModelLinks(): Array<LinkModel>;\n setChildModels(models: Array<ModularUIModel>): void;\n}\n\nexport type AuthenticationType = {\n name: string,\n authentication: string,\n redirectUri: string,\n isPrimary: boolean,\n};\n\nexport type FileEntryType = {\n name: string,\n size?: number,\n progress: number,\n error?: string,\n token?: string,\n};\n\nexport type FilesType = {\n [filename: string]: FileEntryType,\n};\n\nexport type FiletypeConstraintsType = Array<{|\n extensions: Array<string>,\n mimeTypes: Array<string>,\n|}>;\n\nexport type FilesizeConstraintsType = {\n fileSize: ?number,\n maxTotalFileSize: ?number,\n isMaxTotal: boolean,\n};\n\nexport type PropertyData = { type: string, label: string, value: string };\nexport type TextFragmentData = {\n type: string,\n label: string,\n text: string | { id?: string, message: string, properties?: Object },\n};\nexport type SectionData = {\n id: string,\n type: string,\n label?: string,\n number?: string,\n body: string | { id?: string, message: string, properties?: Object },\n _links: { self: { href: string } },\n childSections: Array<SectionData>,\n subSections: Array<SectionData>,\n};\n\nexport type PropertyElement = {\n propertyElement: {\n label: string,\n layouthint: Array<string>,\n properties: Array<PropertyData>,\n },\n};\nexport type TextFragmentElement = {\n textFragmentElement: {\n label: string,\n layouthint: Array<string>,\n textfragments: Array<TextFragmentData>,\n },\n};\nexport type ContentElement = {\n contentElement: {\n label: string,\n layouthint: Array<string>,\n sections: Array<SectionData>,\n },\n};\n\nexport type PropertyElementMapped = {\n propertyElement: {\n label: string,\n layouthint: LayoutHintCollection,\n properties: Array<PropertyData>,\n },\n};\nexport type TextFragmentElementMapped = {\n textFragmentElement: {\n label: string,\n layouthint: LayoutHintCollection,\n textfragments: Array<TextFragmentData>,\n },\n};\nexport type ContentElementMapped = {\n contentElement: {\n label: string,\n layouthint: LayoutHintCollection,\n sections: Array<SectionModel>,\n },\n};\n\nexport type ContentAll = Array<\n PropertyElementMapped | TextFragmentElementMapped | ContentElementMapped\n>;\n\nexport type ContentData = {\n header: {\n label?: string,\n description?: { id?: string, message: string, properties?: Object },\n },\n label?: string,\n elements: Array<PropertyElement | TextFragmentElement | ContentElement>,\n};\n"],"mappings":""}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../src/models/types.js"],"sourcesContent":["// @flow\nimport type ApplicationModel from \"./application/ApplicationModel\";\nimport type BooleanAttributeModel from \"./attributes/BooleanAttributeModel\";\nimport type CaptchaAttributeModel from \"./attributes/CaptchaAttributeModel\";\nimport type ChoiceAttributeModel from \"./attributes/ChoiceAttributeModel\";\nimport type CompositeAttributeModel from \"./attributes/CompositeAttributeModel\";\nimport type DatetimeAttributeModel from \"./attributes/DatetimeAttributeModel\";\nimport type HelptextAttributeModel from \"./attributes/HelptextAttributeModel\";\nimport type LabelAttributeModel from \"./attributes/LabelAttributeModel\";\nimport type MemoAttributeModel from \"./attributes/MemoAttributeModel\";\nimport type MoneyAttributeModel from \"./attributes/MoneyAttributeModel\";\nimport type NumberAttributeModel from \"./attributes/NumberAttributeModel\";\nimport type PasswordAttributeModel from \"./attributes/PasswordAttributeModel\";\nimport type StringAttributeModel from \"./attributes/StringAttributeModel\";\nimport type UploadAttributeModel from \"./attributes/UploadAttributeModel\";\nimport type XMLAttributeModel from \"./attributes/XMLAttributeModel\";\nimport type CaseViewModel from \"./caseview/CaseViewModel\";\nimport type BusinessScenarioModel from \"./concepts/BusinessScenarioModel\";\nimport type ConceptDetailModel from \"./concepts/ConceptDetailModel\";\nimport type ConceptIndexModel from \"./concepts/ConceptIndexModel\";\nimport type ConceptTypeDetailModel from \"./concepts/ConceptTypeDetailModel\";\nimport type ContentIndexModel from \"./content/ContentIndexModel\";\nimport type ContentModel from \"./content/ContentModel\";\nimport type SectionModel from \"./content/SectionModel\";\nimport type ContentTOCModel from \"./content/ContentTOCModel\";\nimport type ContentTypeModel from \"./content/ContentTypeModel\";\nimport type DetailModel from \"./detail/DetailModel\";\nimport type AssignmentFilterModel from \"./filters/AssignmentFilterModel\";\nimport type FilterModel from \"./filters/FilterModel\";\nimport type RangeFilterModel from \"./filters/RangeFilterModel\";\nimport type ConceptIndexFilterModel from \"./filters/ConceptIndexFilterModel\";\nimport type FormModel from \"./form/FormModel\";\nimport type ListDetailModel from \"./list/ListDetailModel\";\nimport type ListModel from \"./list/ListModel\";\nimport type ModelCatalogModel from \"./modelcatalog/ModelCatalogModel\";\nimport type GroupingPanelModel from \"./panels/GroupingPanelModel\";\nimport type CaseSearchModel from \"./search/CaseSearchModel\";\nimport type TabModel from \"./tab/TabModel\";\nimport type TaskGroupModel from \"./taskgroup/TaskGroupModel\";\nimport type UserModel from \"./user/UserModel\";\nimport type UserServicesModel from \"./user/UserServicesModel\";\nimport type LinkModel from \"./links/LinkModel\";\nimport type LookupOptionsModel from \"./lookup/LookupOptionsModel\";\nimport type BaseFilterModel from \"./filters/BaseFilterModel\";\nimport type AttributeCollection from \"./attributes/AttributeCollection\";\nimport type AttributeModel from \"./attributes/AttributeModel\";\nimport type LayoutHintCollection from \"./layouthint/LayoutHintCollection\";\n\nexport type ModularUIModel =\n | ApplicationModel\n | CaseSearchModel\n | CaseViewModel\n | ListDetailModel\n | DetailModel\n | FormModel\n | GroupingPanelModel\n | ListModel\n | TabModel\n | TaskGroupModel\n | UserModel\n | UserServicesModel\n | ModelCatalogModel\n | ConceptIndexModel\n | ConceptDetailModel\n | BusinessScenarioModel\n | ConceptTypeDetailModel\n | ContentIndexModel\n | ContentTOCModel\n | ContentModel\n | ContentTypeModel\n | LookupOptionsModel;\n\nexport type AttributeType =\n | BooleanAttributeModel\n | CaptchaAttributeModel\n | ChoiceAttributeModel\n | DatetimeAttributeModel\n | HelptextAttributeModel\n | LabelAttributeModel\n | MemoAttributeModel\n | MoneyAttributeModel\n | NumberAttributeModel\n | PasswordAttributeModel\n | CompositeAttributeModel\n | StringAttributeModel\n | UploadAttributeModel\n | XMLAttributeModel;\n\nexport type RangeChildAttributeType =\n | NumberAttributeModel\n | DatetimeAttributeModel;\n\nexport type FilterType =\n | BaseFilterModel\n | FilterModel\n | AssignmentFilterModel\n | RangeFilterModel\n | ConceptIndexFilterModel;\n\nexport type FormErrorAnchor = {\n id: string,\n properties?: {\n [propertyName: string]: string | number,\n },\n anchor?: {\n objectid: string,\n elementid?: string,\n _links?: Object,\n index?: number,\n \"index-identifier\"?: string,\n },\n layouthint: LayoutHintCollection,\n message: string,\n param?: {\n name: string,\n },\n};\n\nexport type labelsJSON = {\n _id: string,\n label: string,\n value: string,\n};\n\nexport type propertyJSON = {\n _id: string,\n type: string,\n mandatory: string,\n label: string,\n value: string,\n};\n\nexport type textfragmentJSON = {\n label: string,\n text: string,\n type: string,\n};\n\nexport interface IConstraintModel {\n +id: string;\n +defaultMessage: string;\n +parameters: Object;\n +isMandatoryConstraint: boolean;\n validate(value: any): boolean;\n hasValidation(): boolean;\n}\n\nexport interface ILayoutHintRule {\n process(attribute: AttributeModel, attributes: AttributeCollection): void;\n}\n\nexport interface IModelWithChildModels {\n getInitialChildModelLinks(): Array<LinkModel>;\n setChildModels(models: Array<ModularUIModel>): void;\n}\n\nexport type AuthenticationType = {\n name: string,\n authentication: string,\n redirectUri?: string,\n isPrimary: boolean,\n};\n\nexport type FileEntryType = {\n name: string,\n size?: number,\n progress: number,\n error?: string,\n token?: string,\n};\n\nexport type FilesType = {\n [filename: string]: FileEntryType,\n};\n\nexport type FiletypeConstraintsType = Array<{|\n extensions: Array<string>,\n mimeTypes: Array<string>,\n|}>;\n\nexport type FilesizeConstraintsType = {\n fileSize: ?number,\n maxTotalFileSize: ?number,\n isMaxTotal: boolean,\n};\n\nexport type PropertyData = { type: string, label: string, value: string };\nexport type TextFragmentData = {\n type: string,\n label: string,\n text: string | { id?: string, message: string, properties?: Object },\n};\nexport type SectionData = {\n id: string,\n type: string,\n label?: string,\n number?: string,\n body: string | { id?: string, message: string, properties?: Object },\n _links: { self: { href: string } },\n childSections: Array<SectionData>,\n subSections: Array<SectionData>,\n};\n\nexport type PropertyElement = {\n propertyElement: {\n label: string,\n layouthint: Array<string>,\n properties: Array<PropertyData>,\n },\n};\nexport type TextFragmentElement = {\n textFragmentElement: {\n label: string,\n layouthint: Array<string>,\n textfragments: Array<TextFragmentData>,\n },\n};\nexport type ContentElement = {\n contentElement: {\n label: string,\n layouthint: Array<string>,\n sections: Array<SectionData>,\n },\n};\n\nexport type PropertyElementMapped = {\n propertyElement: {\n label: string,\n layouthint: LayoutHintCollection,\n properties: Array<PropertyData>,\n },\n};\nexport type TextFragmentElementMapped = {\n textFragmentElement: {\n label: string,\n layouthint: LayoutHintCollection,\n textfragments: Array<TextFragmentData>,\n },\n};\nexport type ContentElementMapped = {\n contentElement: {\n label: string,\n layouthint: LayoutHintCollection,\n sections: Array<SectionModel>,\n },\n};\n\nexport type ContentAll = Array<\n PropertyElementMapped | TextFragmentElementMapped | ContentElementMapped\n>;\n\nexport type ContentData = {\n header: {\n label?: string,\n description?: { id?: string, message: string, properties?: Object },\n },\n label?: string,\n elements: Array<PropertyElement | TextFragmentElement | ContentElement>,\n};\n"],"mappings":""}
@@ -16,6 +16,12 @@ class UserModel extends _ResourceModel.default {
16
16
  return "User";
17
17
  }
18
18
 
19
+ /**
20
+ */
21
+ static get modelName() {
22
+ return "UserModel";
23
+ }
24
+
19
25
  /**
20
26
  */
21
27
  static isApplicableModel(data) {
@@ -13,6 +13,12 @@ export default class UserModel extends ResourceModel {
13
13
  return "User";
14
14
  }
15
15
 
16
+ /**
17
+ */
18
+ static get modelName(): string {
19
+ return "UserModel";
20
+ }
21
+
16
22
  /**
17
23
  */
18
24
  static isApplicableModel(data: ModularUIResponse): boolean {
@@ -1 +1 @@
1
- {"version":3,"file":"UserModel.js","names":["UserModel","ResourceModel","type","isApplicableModel","data","contributions","resourcetype","username","Username","fullname","Fullname","label"],"sources":["../../../src/models/user/UserModel.js"],"sourcesContent":["// @flow\nimport ResourceModel from \"../base/ResourceModel\";\n\nimport type { ModularUIResponse } from \"../../modularui\";\n\n/**\n * User model\n */\nexport default class UserModel extends ResourceModel {\n /**\n */\n get type(): string {\n return \"User\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n data.contributions.resourcetype === \"userdata\"\n );\n }\n\n /**\n * Retrieve username of user\n */\n get username(): string {\n return this.data.Username || \"Guest\";\n }\n\n /**\n * retrieve the fullname of the user\n */\n get fullname(): string {\n return this.data.Fullname || \"Guest\";\n }\n\n /**\n */\n get label(): string {\n return this.contributions.label;\n }\n}\n"],"mappings":";;;;;;;AACA;AAIA;AACA;AACA;AACe,MAAMA,SAAS,SAASC,sBAAa,CAAC;EACnD;AACF;EACE,IAAIC,IAAI,GAAW;IACjB,OAAO,MAAM;EACf;;EAEA;AACF;EACE,OAAOC,iBAAiB,CAACC,IAAuB,EAAW;IACzD,OACEA,IAAI,CAACC,aAAa,CAACC,YAAY,IAC/BF,IAAI,CAACC,aAAa,CAACC,YAAY,KAAK,UAAU;EAElD;;EAEA;AACF;AACA;EACE,IAAIC,QAAQ,GAAW;IACrB,OAAO,IAAI,CAACH,IAAI,CAACI,QAAQ,IAAI,OAAO;EACtC;;EAEA;AACF;AACA;EACE,IAAIC,QAAQ,GAAW;IACrB,OAAO,IAAI,CAACL,IAAI,CAACM,QAAQ,IAAI,OAAO;EACtC;;EAEA;AACF;EACE,IAAIC,KAAK,GAAW;IAClB,OAAO,IAAI,CAACN,aAAa,CAACM,KAAK;EACjC;AACF;AAAC"}
1
+ {"version":3,"file":"UserModel.js","names":["UserModel","ResourceModel","type","modelName","isApplicableModel","data","contributions","resourcetype","username","Username","fullname","Fullname","label"],"sources":["../../../src/models/user/UserModel.js"],"sourcesContent":["// @flow\nimport ResourceModel from \"../base/ResourceModel\";\n\nimport type { ModularUIResponse } from \"../../modularui\";\n\n/**\n * User model\n */\nexport default class UserModel extends ResourceModel {\n /**\n */\n get type(): string {\n return \"User\";\n }\n\n /**\n */\n static get modelName(): string {\n return \"UserModel\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n data.contributions.resourcetype === \"userdata\"\n );\n }\n\n /**\n * Retrieve username of user\n */\n get username(): string {\n return this.data.Username || \"Guest\";\n }\n\n /**\n * retrieve the fullname of the user\n */\n get fullname(): string {\n return this.data.Fullname || \"Guest\";\n }\n\n /**\n */\n get label(): string {\n return this.contributions.label;\n }\n}\n"],"mappings":";;;;;;;AACA;AAIA;AACA;AACA;AACe,MAAMA,SAAS,SAASC,sBAAa,CAAC;EACnD;AACF;EACE,IAAIC,IAAI,GAAW;IACjB,OAAO,MAAM;EACf;;EAEA;AACF;EACE,WAAWC,SAAS,GAAW;IAC7B,OAAO,WAAW;EACpB;;EAEA;AACF;EACE,OAAOC,iBAAiB,CAACC,IAAuB,EAAW;IACzD,OACEA,IAAI,CAACC,aAAa,CAACC,YAAY,IAC/BF,IAAI,CAACC,aAAa,CAACC,YAAY,KAAK,UAAU;EAElD;;EAEA;AACF;AACA;EACE,IAAIC,QAAQ,GAAW;IACrB,OAAO,IAAI,CAACH,IAAI,CAACI,QAAQ,IAAI,OAAO;EACtC;;EAEA;AACF;AACA;EACE,IAAIC,QAAQ,GAAW;IACrB,OAAO,IAAI,CAACL,IAAI,CAACM,QAAQ,IAAI,OAAO;EACtC;;EAEA;AACF;EACE,IAAIC,KAAK,GAAW;IAClB,OAAO,IAAI,CAACN,aAAa,CAACM,KAAK;EACjC;AACF;AAAC"}
@@ -41,6 +41,12 @@ class UserProfileModel extends _UserModel.default {
41
41
  get attributeCollection() {
42
42
  return this._attributeCollection;
43
43
  }
44
+
45
+ /**
46
+ */
47
+ static get modelName() {
48
+ return "UserProfileModel";
49
+ }
44
50
  }
45
51
  exports.default = UserProfileModel;
46
52
  //# sourceMappingURL=UserProfileModel.js.map
@@ -44,4 +44,10 @@ export default class UserProfileModel extends UserModel {
44
44
  get attributeCollection(): AttributeCollection {
45
45
  return this._attributeCollection;
46
46
  }
47
+
48
+ /**
49
+ */
50
+ static get modelName(): string {
51
+ return "UserProfileModel";
52
+ }
47
53
  }
@@ -1 +1 @@
1
- {"version":3,"file":"UserProfileModel.js","names":["UserProfileModel","UserModel","constructor","modularuiResponse","attributeContributions","contributions","attributes","contribution","key","has","data","_attributeCollection","AttributeCollection","type","attributeCollection"],"sources":["../../../src/models/user/UserProfileModel.js"],"sourcesContent":["// @flow\nimport { has } from \"../../utils/helpers/objects\";\n\nimport AttributeCollection from \"../attributes/AttributeCollection\";\n\nimport UserModel from \"./UserModel\";\n\nimport type { ModularUIResponse } from \"../../modularui\";\n\n/**\n * User model\n */\nexport default class UserProfileModel extends UserModel {\n _attributeCollection: AttributeCollection;\n\n /**\n * constructor\n */\n constructor(modularuiResponse: ModularUIResponse) {\n super(modularuiResponse);\n\n const attributeContributions = this.contributions.attributes\n ? this.contributions.attributes.filter((contribution) => {\n const [key] = Object.keys(contribution);\n return key !== \"sessiondata\" && has(this.data, key);\n })\n : [];\n\n this._attributeCollection = new AttributeCollection(\n this.data,\n attributeContributions\n );\n }\n\n /**\n */\n get type(): string {\n return \"UserProfile\";\n }\n\n /**\n * returns all the attributes from the attribute collection\n */\n get attributeCollection(): AttributeCollection {\n return this._attributeCollection;\n }\n}\n"],"mappings":";;;;;;;;;;AACA;AAEA;AAEA;AAIA;AACA;AACA;AACe,MAAMA,gBAAgB,SAASC,kBAAS,CAAC;EAGtD;AACF;AACA;EACEC,WAAW,CAACC,iBAAoC,EAAE;IAAA;IAChD,KAAK,CAACA,iBAAiB,CAAC;IAAC;IAEzB,MAAMC,sBAAsB,GAAG,IAAI,CAACC,aAAa,CAACC,UAAU,GACxD,oCAAI,CAACD,aAAa,CAACC,UAAU,iBAASC,YAAY,IAAK;MACrD,MAAM,CAACC,GAAG,CAAC,GAAG,mBAAYD,YAAY,CAAC;MACvC,OAAOC,GAAG,KAAK,aAAa,IAAI,IAAAC,YAAG,EAAC,IAAI,CAACC,IAAI,EAAEF,GAAG,CAAC;IACrD,CAAC,CAAC,GACF,EAAE;IAEN,IAAI,CAACG,oBAAoB,GAAG,IAAIC,4BAAmB,CACjD,IAAI,CAACF,IAAI,EACTN,sBAAsB,CACvB;EACH;;EAEA;AACF;EACE,IAAIS,IAAI,GAAW;IACjB,OAAO,aAAa;EACtB;;EAEA;AACF;AACA;EACE,IAAIC,mBAAmB,GAAwB;IAC7C,OAAO,IAAI,CAACH,oBAAoB;EAClC;AACF;AAAC"}
1
+ {"version":3,"file":"UserProfileModel.js","names":["UserProfileModel","UserModel","constructor","modularuiResponse","attributeContributions","contributions","attributes","contribution","key","has","data","_attributeCollection","AttributeCollection","type","attributeCollection","modelName"],"sources":["../../../src/models/user/UserProfileModel.js"],"sourcesContent":["// @flow\nimport { has } from \"../../utils/helpers/objects\";\n\nimport AttributeCollection from \"../attributes/AttributeCollection\";\n\nimport UserModel from \"./UserModel\";\n\nimport type { ModularUIResponse } from \"../../modularui\";\n\n/**\n * User model\n */\nexport default class UserProfileModel extends UserModel {\n _attributeCollection: AttributeCollection;\n\n /**\n * constructor\n */\n constructor(modularuiResponse: ModularUIResponse) {\n super(modularuiResponse);\n\n const attributeContributions = this.contributions.attributes\n ? this.contributions.attributes.filter((contribution) => {\n const [key] = Object.keys(contribution);\n return key !== \"sessiondata\" && has(this.data, key);\n })\n : [];\n\n this._attributeCollection = new AttributeCollection(\n this.data,\n attributeContributions\n );\n }\n\n /**\n */\n get type(): string {\n return \"UserProfile\";\n }\n\n /**\n * returns all the attributes from the attribute collection\n */\n get attributeCollection(): AttributeCollection {\n return this._attributeCollection;\n }\n\n /**\n */\n static get modelName(): string {\n return \"UserProfileModel\";\n }\n}\n"],"mappings":";;;;;;;;;;AACA;AAEA;AAEA;AAIA;AACA;AACA;AACe,MAAMA,gBAAgB,SAASC,kBAAS,CAAC;EAGtD;AACF;AACA;EACEC,WAAW,CAACC,iBAAoC,EAAE;IAAA;IAChD,KAAK,CAACA,iBAAiB,CAAC;IAAC;IAEzB,MAAMC,sBAAsB,GAAG,IAAI,CAACC,aAAa,CAACC,UAAU,GACxD,oCAAI,CAACD,aAAa,CAACC,UAAU,iBAASC,YAAY,IAAK;MACrD,MAAM,CAACC,GAAG,CAAC,GAAG,mBAAYD,YAAY,CAAC;MACvC,OAAOC,GAAG,KAAK,aAAa,IAAI,IAAAC,YAAG,EAAC,IAAI,CAACC,IAAI,EAAEF,GAAG,CAAC;IACrD,CAAC,CAAC,GACF,EAAE;IAEN,IAAI,CAACG,oBAAoB,GAAG,IAAIC,4BAAmB,CACjD,IAAI,CAACF,IAAI,EACTN,sBAAsB,CACvB;EACH;;EAEA;AACF;EACE,IAAIS,IAAI,GAAW;IACjB,OAAO,aAAa;EACtB;;EAEA;AACF;AACA;EACE,IAAIC,mBAAmB,GAAwB;IAC7C,OAAO,IAAI,CAACH,oBAAoB;EAClC;;EAEA;AACF;EACE,WAAWI,SAAS,GAAW;IAC7B,OAAO,kBAAkB;EAC3B;AACF;AAAC"}
@@ -23,6 +23,12 @@ class UserServicesModel extends _ResourceModel.default {
23
23
  return "UserServices";
24
24
  }
25
25
 
26
+ /**
27
+ */
28
+ static get modelName() {
29
+ return "UserServicesModel";
30
+ }
31
+
26
32
  /**
27
33
  */
28
34
  static isApplicableModel(data) {
@@ -19,6 +19,12 @@ class UserServicesModel extends ResourceModel {
19
19
  return "UserServices";
20
20
  }
21
21
 
22
+ /**
23
+ */
24
+ static get modelName(): string {
25
+ return "UserServicesModel";
26
+ }
27
+
22
28
  /**
23
29
  */
24
30
  static isApplicableModel(data: ModularUIResponse): boolean {
@@ -1 +1 @@
1
- {"version":3,"file":"UserServicesModel.js","names":["UserServicesModel","ResourceModel","type","isApplicableModel","data","contributions","resourcetype","getInitialChildModelLinks","userData","userLink","setChildModels","models","user","model","links","getLinkByKey","_user","UserModel","label","getContribution","changePassword","changePasswordLink","href","isLoggedIn","hasUser","UNSECURE_LINK_COUNT","length"],"sources":["../../../src/models/user/UserServicesModel.js"],"sourcesContent":["// @flow\nimport ResourceModel from \"../base/ResourceModel\";\nimport UserModel from \"../user/UserModel\";\n\nimport type { ModularUIModel } from \"../types\";\nimport type { ModularUIResponse } from \"../../modularui\";\nimport type LinkModel from \"../links/LinkModel\";\nimport type Href from \"../href/Href\";\n\n/**\n * UserServicesModel model\n */\nclass UserServicesModel extends ResourceModel {\n _user: ?UserModel;\n\n /**\n */\n get type(): string {\n return \"UserServices\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n data.contributions.resourcetype === \"user_services\"\n );\n }\n\n /**\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n const userData = this.userLink;\n return userData ? [userData] : [];\n }\n\n /**\n */\n setChildModels(models: Array<ModularUIModel>) {\n this.user = models.find((model) => model.type === \"User\");\n }\n\n /**\n */\n get userLink(): LinkModel | null {\n return this.links.getLinkByKey(\"Userdata\");\n }\n\n /**\n * return the user model for the current user\n */\n get user(): UserModel | null {\n return this._user || null;\n }\n\n /**\n * Set user data\n */\n set user(model: ?ModularUIModel) {\n this._user = model instanceof UserModel ? model : null;\n }\n\n /**\n * Getting the label of the application\n */\n get label(): string {\n return this.getContribution(\"label\", \"\");\n }\n\n /**\n */\n get changePassword(): Href | null {\n const changePasswordLink = this.links.getLinkByKey(\"ChangePassword\");\n\n if (changePasswordLink) {\n return changePasswordLink.href;\n }\n\n return null;\n }\n\n // when more than three unsecure links are present (always present: self, contributions and api-docs),\n // the userservice is permitted and thus we have an indication the user is probably\n // logged in\n /**\n */\n get isLoggedIn(): boolean {\n const hasUser = this.user instanceof UserModel;\n\n const UNSECURE_LINK_COUNT = 3;\n return this.links.length > UNSECURE_LINK_COUNT || hasUser;\n }\n}\n\nexport default UserServicesModel;\n"],"mappings":";;;;;;;;;AACA;AACA;AAOA;AACA;AACA;AACA,MAAMA,iBAAiB,SAASC,sBAAa,CAAC;EAAA;IAAA;IAAA;EAAA;EAG5C;AACF;EACE,IAAIC,IAAI,GAAW;IACjB,OAAO,cAAc;EACvB;;EAEA;AACF;EACE,OAAOC,iBAAiB,CAACC,IAAuB,EAAW;IACzD,OACEA,IAAI,CAACC,aAAa,CAACC,YAAY,IAC/BF,IAAI,CAACC,aAAa,CAACC,YAAY,KAAK,eAAe;EAEvD;;EAEA;AACF;EACEC,yBAAyB,GAAqB;IAC5C,MAAMC,QAAQ,GAAG,IAAI,CAACC,QAAQ;IAC9B,OAAOD,QAAQ,GAAG,CAACA,QAAQ,CAAC,GAAG,EAAE;EACnC;;EAEA;AACF;EACEE,cAAc,CAACC,MAA6B,EAAE;IAC5C,IAAI,CAACC,IAAI,GAAG,mBAAAD,MAAM,OAANA,MAAM,EAAOE,KAAK,IAAKA,KAAK,CAACX,IAAI,KAAK,MAAM,CAAC;EAC3D;;EAEA;AACF;EACE,IAAIO,QAAQ,GAAqB;IAC/B,OAAO,IAAI,CAACK,KAAK,CAACC,YAAY,CAAC,UAAU,CAAC;EAC5C;;EAEA;AACF;AACA;EACE,IAAIH,IAAI,GAAqB;IAC3B,OAAO,IAAI,CAACI,KAAK,IAAI,IAAI;EAC3B;;EAEA;AACF;AACA;EACE,IAAIJ,IAAI,CAACC,KAAsB,EAAE;IAC/B,IAAI,CAACG,KAAK,GAAGH,KAAK,YAAYI,kBAAS,GAAGJ,KAAK,GAAG,IAAI;EACxD;;EAEA;AACF;AACA;EACE,IAAIK,KAAK,GAAW;IAClB,OAAO,IAAI,CAACC,eAAe,CAAC,OAAO,EAAE,EAAE,CAAC;EAC1C;;EAEA;AACF;EACE,IAAIC,cAAc,GAAgB;IAChC,MAAMC,kBAAkB,GAAG,IAAI,CAACP,KAAK,CAACC,YAAY,CAAC,gBAAgB,CAAC;IAEpE,IAAIM,kBAAkB,EAAE;MACtB,OAAOA,kBAAkB,CAACC,IAAI;IAChC;IAEA,OAAO,IAAI;EACb;;EAEA;EACA;EACA;EACA;AACF;EACE,IAAIC,UAAU,GAAY;IACxB,MAAMC,OAAO,GAAG,IAAI,CAACZ,IAAI,YAAYK,kBAAS;IAE9C,MAAMQ,mBAAmB,GAAG,CAAC;IAC7B,OAAO,IAAI,CAACX,KAAK,CAACY,MAAM,GAAGD,mBAAmB,IAAID,OAAO;EAC3D;AACF;AAAC,eAEcxB,iBAAiB;AAAA"}
1
+ {"version":3,"file":"UserServicesModel.js","names":["UserServicesModel","ResourceModel","type","modelName","isApplicableModel","data","contributions","resourcetype","getInitialChildModelLinks","userData","userLink","setChildModels","models","user","model","links","getLinkByKey","_user","UserModel","label","getContribution","changePassword","changePasswordLink","href","isLoggedIn","hasUser","UNSECURE_LINK_COUNT","length"],"sources":["../../../src/models/user/UserServicesModel.js"],"sourcesContent":["// @flow\nimport ResourceModel from \"../base/ResourceModel\";\nimport UserModel from \"../user/UserModel\";\n\nimport type { ModularUIModel } from \"../types\";\nimport type { ModularUIResponse } from \"../../modularui\";\nimport type LinkModel from \"../links/LinkModel\";\nimport type Href from \"../href/Href\";\n\n/**\n * UserServicesModel model\n */\nclass UserServicesModel extends ResourceModel {\n _user: ?UserModel;\n\n /**\n */\n get type(): string {\n return \"UserServices\";\n }\n\n /**\n */\n static get modelName(): string {\n return \"UserServicesModel\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n data.contributions.resourcetype === \"user_services\"\n );\n }\n\n /**\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n const userData = this.userLink;\n return userData ? [userData] : [];\n }\n\n /**\n */\n setChildModels(models: Array<ModularUIModel>) {\n this.user = models.find((model) => model.type === \"User\");\n }\n\n /**\n */\n get userLink(): LinkModel | null {\n return this.links.getLinkByKey(\"Userdata\");\n }\n\n /**\n * return the user model for the current user\n */\n get user(): UserModel | null {\n return this._user || null;\n }\n\n /**\n * Set user data\n */\n set user(model: ?ModularUIModel) {\n this._user = model instanceof UserModel ? model : null;\n }\n\n /**\n * Getting the label of the application\n */\n get label(): string {\n return this.getContribution(\"label\", \"\");\n }\n\n /**\n */\n get changePassword(): Href | null {\n const changePasswordLink = this.links.getLinkByKey(\"ChangePassword\");\n\n if (changePasswordLink) {\n return changePasswordLink.href;\n }\n\n return null;\n }\n\n // when more than three unsecure links are present (always present: self, contributions and api-docs),\n // the userservice is permitted and thus we have an indication the user is probably\n // logged in\n /**\n */\n get isLoggedIn(): boolean {\n const hasUser = this.user instanceof UserModel;\n\n const UNSECURE_LINK_COUNT = 3;\n return this.links.length > UNSECURE_LINK_COUNT || hasUser;\n }\n}\n\nexport default UserServicesModel;\n"],"mappings":";;;;;;;;;AACA;AACA;AAOA;AACA;AACA;AACA,MAAMA,iBAAiB,SAASC,sBAAa,CAAC;EAAA;IAAA;IAAA;EAAA;EAG5C;AACF;EACE,IAAIC,IAAI,GAAW;IACjB,OAAO,cAAc;EACvB;;EAEA;AACF;EACE,WAAWC,SAAS,GAAW;IAC7B,OAAO,mBAAmB;EAC5B;;EAEA;AACF;EACE,OAAOC,iBAAiB,CAACC,IAAuB,EAAW;IACzD,OACEA,IAAI,CAACC,aAAa,CAACC,YAAY,IAC/BF,IAAI,CAACC,aAAa,CAACC,YAAY,KAAK,eAAe;EAEvD;;EAEA;AACF;EACEC,yBAAyB,GAAqB;IAC5C,MAAMC,QAAQ,GAAG,IAAI,CAACC,QAAQ;IAC9B,OAAOD,QAAQ,GAAG,CAACA,QAAQ,CAAC,GAAG,EAAE;EACnC;;EAEA;AACF;EACEE,cAAc,CAACC,MAA6B,EAAE;IAC5C,IAAI,CAACC,IAAI,GAAG,mBAAAD,MAAM,OAANA,MAAM,EAAOE,KAAK,IAAKA,KAAK,CAACZ,IAAI,KAAK,MAAM,CAAC;EAC3D;;EAEA;AACF;EACE,IAAIQ,QAAQ,GAAqB;IAC/B,OAAO,IAAI,CAACK,KAAK,CAACC,YAAY,CAAC,UAAU,CAAC;EAC5C;;EAEA;AACF;AACA;EACE,IAAIH,IAAI,GAAqB;IAC3B,OAAO,IAAI,CAACI,KAAK,IAAI,IAAI;EAC3B;;EAEA;AACF;AACA;EACE,IAAIJ,IAAI,CAACC,KAAsB,EAAE;IAC/B,IAAI,CAACG,KAAK,GAAGH,KAAK,YAAYI,kBAAS,GAAGJ,KAAK,GAAG,IAAI;EACxD;;EAEA;AACF;AACA;EACE,IAAIK,KAAK,GAAW;IAClB,OAAO,IAAI,CAACC,eAAe,CAAC,OAAO,EAAE,EAAE,CAAC;EAC1C;;EAEA;AACF;EACE,IAAIC,cAAc,GAAgB;IAChC,MAAMC,kBAAkB,GAAG,IAAI,CAACP,KAAK,CAACC,YAAY,CAAC,gBAAgB,CAAC;IAEpE,IAAIM,kBAAkB,EAAE;MACtB,OAAOA,kBAAkB,CAACC,IAAI;IAChC;IAEA,OAAO,IAAI;EACb;;EAEA;EACA;EACA;EACA;AACF;EACE,IAAIC,UAAU,GAAY;IACxB,MAAMC,OAAO,GAAG,IAAI,CAACZ,IAAI,YAAYK,kBAAS;IAE9C,MAAMQ,mBAAmB,GAAG,CAAC;IAC7B,OAAO,IAAI,CAACX,KAAK,CAACY,MAAM,GAAGD,mBAAmB,IAAID,OAAO;EAC3D;AACF;AAAC,eAEczB,iBAAiB;AAAA"}