@beinformed/ui 1.25.2 → 1.25.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (243) hide show
  1. package/CHANGELOG.md +18 -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 +7 -1
  8. package/esm/hooks/useModularUIBasic.js.map +1 -1
  9. package/esm/hooks/useModularUIModel.js +9 -1
  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 +54 -10
  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 +2 -0
  69. package/esm/redux/_modularui/ModularUIActions.js.map +1 -1
  70. package/esm/redux/_modularui/ModularUIMiddleware.js +1 -0
  71. package/esm/redux/_modularui/ModularUIMiddleware.js.map +1 -1
  72. package/esm/redux/_modularui/types.js.map +1 -1
  73. package/esm/redux/_modularui/withModularUI.js.map +1 -1
  74. package/esm/utils/fetch/types.js.map +1 -1
  75. package/lib/constants/Constants.js +7 -1
  76. package/lib/constants/Constants.js.flow +6 -0
  77. package/lib/constants/Constants.js.map +1 -1
  78. package/lib/hooks/__tests__/UseModularUIModel.spec.js.flow +1 -1
  79. package/lib/hooks/__tests__/useModelCatalog.spec.js.flow +1 -1
  80. package/lib/hooks/__tests__/useModularUIBasic.spec.js.flow +2 -2
  81. package/lib/hooks/useAuthentication.js +4 -4
  82. package/lib/hooks/useAuthentication.js.flow +17 -5
  83. package/lib/hooks/useAuthentication.js.map +1 -1
  84. package/lib/hooks/useModularUI.js.flow +2 -2
  85. package/lib/hooks/useModularUI.js.map +1 -1
  86. package/lib/hooks/useModularUIBasic.js +7 -1
  87. package/lib/hooks/useModularUIBasic.js.flow +14 -4
  88. package/lib/hooks/useModularUIBasic.js.map +1 -1
  89. package/lib/hooks/useModularUIModel.js +11 -2
  90. package/lib/hooks/useModularUIModel.js.flow +19 -10
  91. package/lib/hooks/useModularUIModel.js.map +1 -1
  92. package/lib/hooks/useModularUIRequest.js +5 -7
  93. package/lib/hooks/useModularUIRequest.js.flow +12 -11
  94. package/lib/hooks/useModularUIRequest.js.map +1 -1
  95. package/lib/models/application/ApplicationModel.js +8 -1
  96. package/lib/models/application/ApplicationModel.js.flow +10 -1
  97. package/lib/models/application/ApplicationModel.js.map +1 -1
  98. package/lib/models/base/ResourceModel.js +7 -0
  99. package/lib/models/base/ResourceModel.js.flow +7 -0
  100. package/lib/models/base/ResourceModel.js.map +1 -1
  101. package/lib/models/caseview/CaseViewModel.js +6 -0
  102. package/lib/models/caseview/CaseViewModel.js.flow +6 -0
  103. package/lib/models/caseview/CaseViewModel.js.map +1 -1
  104. package/lib/models/concepts/BusinessScenarioModel.js +6 -0
  105. package/lib/models/concepts/BusinessScenarioModel.js.flow +6 -0
  106. package/lib/models/concepts/BusinessScenarioModel.js.map +1 -1
  107. package/lib/models/concepts/ConceptDetailModel.js +6 -0
  108. package/lib/models/concepts/ConceptDetailModel.js.flow +6 -0
  109. package/lib/models/concepts/ConceptDetailModel.js.map +1 -1
  110. package/lib/models/concepts/ConceptIndexModel.js +6 -0
  111. package/lib/models/concepts/ConceptIndexModel.js.flow +6 -0
  112. package/lib/models/concepts/ConceptIndexModel.js.map +1 -1
  113. package/lib/models/concepts/ConceptTypeDetailModel.js +6 -0
  114. package/lib/models/concepts/ConceptTypeDetailModel.js.flow +6 -0
  115. package/lib/models/concepts/ConceptTypeDetailModel.js.map +1 -1
  116. package/lib/models/content/ContentIndexModel.js +6 -0
  117. package/lib/models/content/ContentIndexModel.js.flow +6 -0
  118. package/lib/models/content/ContentIndexModel.js.map +1 -1
  119. package/lib/models/content/ContentModel.js +6 -0
  120. package/lib/models/content/ContentModel.js.flow +6 -0
  121. package/lib/models/content/ContentModel.js.map +1 -1
  122. package/lib/models/content/ContentTOCModel.js +6 -0
  123. package/lib/models/content/ContentTOCModel.js.flow +6 -0
  124. package/lib/models/content/ContentTOCModel.js.map +1 -1
  125. package/lib/models/content/ContentTypeModel.js +6 -0
  126. package/lib/models/content/ContentTypeModel.js.flow +6 -0
  127. package/lib/models/content/ContentTypeModel.js.map +1 -1
  128. package/lib/models/detail/DetailModel.js +6 -0
  129. package/lib/models/detail/DetailModel.js.flow +6 -0
  130. package/lib/models/detail/DetailModel.js.map +1 -1
  131. package/lib/models/form/FormModel.js +6 -0
  132. package/lib/models/form/FormModel.js.flow +6 -0
  133. package/lib/models/form/FormModel.js.map +1 -1
  134. package/lib/models/list/ListDetailModel.js +6 -0
  135. package/lib/models/list/ListDetailModel.js.flow +6 -0
  136. package/lib/models/list/ListDetailModel.js.map +1 -1
  137. package/lib/models/list/ListModel.js +6 -0
  138. package/lib/models/list/ListModel.js.flow +6 -0
  139. package/lib/models/list/ListModel.js.map +1 -1
  140. package/lib/models/lookup/LookupOptionsModel.js +6 -0
  141. package/lib/models/lookup/LookupOptionsModel.js.flow +6 -0
  142. package/lib/models/lookup/LookupOptionsModel.js.map +1 -1
  143. package/lib/models/modelcatalog/ModelCatalogModel.js +6 -0
  144. package/lib/models/modelcatalog/ModelCatalogModel.js.flow +6 -0
  145. package/lib/models/modelcatalog/ModelCatalogModel.js.map +1 -1
  146. package/lib/models/panels/GroupingPanelModel.js +6 -0
  147. package/lib/models/panels/GroupingPanelModel.js.flow +6 -0
  148. package/lib/models/panels/GroupingPanelModel.js.map +1 -1
  149. package/lib/models/resolveModel.js +4 -3
  150. package/lib/models/resolveModel.js.flow +6 -4
  151. package/lib/models/resolveModel.js.map +1 -1
  152. package/lib/models/search/CaseSearchModel.js +6 -0
  153. package/lib/models/search/CaseSearchModel.js.flow +6 -0
  154. package/lib/models/search/CaseSearchModel.js.map +1 -1
  155. package/lib/models/tab/TabModel.js +6 -0
  156. package/lib/models/tab/TabModel.js.flow +6 -0
  157. package/lib/models/tab/TabModel.js.map +1 -1
  158. package/lib/models/taskgroup/TaskGroupModel.js +6 -0
  159. package/lib/models/taskgroup/TaskGroupModel.js.flow +6 -0
  160. package/lib/models/taskgroup/TaskGroupModel.js.map +1 -1
  161. package/lib/models/types.js.flow +1 -1
  162. package/lib/models/types.js.map +1 -1
  163. package/lib/models/user/UserModel.js +6 -0
  164. package/lib/models/user/UserModel.js.flow +6 -0
  165. package/lib/models/user/UserModel.js.map +1 -1
  166. package/lib/models/user/UserProfileModel.js +6 -0
  167. package/lib/models/user/UserProfileModel.js.flow +6 -0
  168. package/lib/models/user/UserProfileModel.js.map +1 -1
  169. package/lib/models/user/UserServicesModel.js +6 -0
  170. package/lib/models/user/UserServicesModel.js.flow +6 -0
  171. package/lib/models/user/UserServicesModel.js.map +1 -1
  172. package/lib/modularui/ModularUIRequest.js +54 -10
  173. package/lib/modularui/ModularUIRequest.js.flow +83 -17
  174. package/lib/modularui/ModularUIRequest.js.map +1 -1
  175. package/lib/modularui/__tests__/ModularUIRequest.spec.js.flow +4 -9
  176. package/lib/modularui/types.js +2 -0
  177. package/lib/modularui/types.js.flow +4 -0
  178. package/lib/modularui/types.js.map +1 -0
  179. package/lib/redux/_modularui/ModularUIActions.js +2 -0
  180. package/lib/redux/_modularui/ModularUIActions.js.flow +6 -4
  181. package/lib/redux/_modularui/ModularUIActions.js.map +1 -1
  182. package/lib/redux/_modularui/ModularUIMiddleware.js +1 -0
  183. package/lib/redux/_modularui/ModularUIMiddleware.js.flow +5 -2
  184. package/lib/redux/_modularui/ModularUIMiddleware.js.map +1 -1
  185. package/lib/redux/_modularui/types.js.flow +5 -3
  186. package/lib/redux/_modularui/types.js.map +1 -1
  187. package/lib/redux/_modularui/withModularUI.js.flow +2 -2
  188. package/lib/redux/_modularui/withModularUI.js.map +1 -1
  189. package/lib/utils/fetch/types.js.flow +12 -4
  190. package/lib/utils/fetch/types.js.map +1 -1
  191. package/package.json +7 -7
  192. package/src/constants/Constants.js +6 -0
  193. package/src/hooks/__tests__/UseModularUIModel.spec.js +1 -1
  194. package/src/hooks/__tests__/useModelCatalog.spec.js +1 -1
  195. package/src/hooks/__tests__/useModularUIBasic.spec.js +2 -2
  196. package/src/hooks/useAuthentication.js +17 -5
  197. package/src/hooks/useModularUI.js +2 -2
  198. package/src/hooks/useModularUIBasic.js +14 -4
  199. package/src/hooks/useModularUIModel.js +19 -10
  200. package/src/hooks/useModularUIRequest.js +12 -11
  201. package/src/models/application/ApplicationModel.js +10 -1
  202. package/src/models/base/ResourceModel.js +7 -0
  203. package/src/models/caseview/CaseViewModel.js +6 -0
  204. package/src/models/concepts/BusinessScenarioModel.js +6 -0
  205. package/src/models/concepts/ConceptDetailModel.js +6 -0
  206. package/src/models/concepts/ConceptIndexModel.js +6 -0
  207. package/src/models/concepts/ConceptTypeDetailModel.js +6 -0
  208. package/src/models/content/ContentIndexModel.js +6 -0
  209. package/src/models/content/ContentModel.js +6 -0
  210. package/src/models/content/ContentTOCModel.js +6 -0
  211. package/src/models/content/ContentTypeModel.js +6 -0
  212. package/src/models/detail/DetailModel.js +6 -0
  213. package/src/models/form/FormModel.js +6 -0
  214. package/src/models/list/ListDetailModel.js +6 -0
  215. package/src/models/list/ListModel.js +6 -0
  216. package/src/models/lookup/LookupOptionsModel.js +6 -0
  217. package/src/models/modelcatalog/ModelCatalogModel.js +6 -0
  218. package/src/models/panels/GroupingPanelModel.js +6 -0
  219. package/src/models/resolveModel.js +6 -4
  220. package/src/models/search/CaseSearchModel.js +6 -0
  221. package/src/models/tab/TabModel.js +6 -0
  222. package/src/models/taskgroup/TaskGroupModel.js +6 -0
  223. package/src/models/types.js +1 -1
  224. package/src/models/user/UserModel.js +6 -0
  225. package/src/models/user/UserProfileModel.js +6 -0
  226. package/src/models/user/UserServicesModel.js +6 -0
  227. package/src/modularui/ModularUIRequest.js +83 -17
  228. package/src/modularui/__tests__/ModularUIRequest.spec.js +4 -9
  229. package/src/modularui/types.js +4 -0
  230. package/src/redux/_modularui/ModularUIActions.js +6 -4
  231. package/src/redux/_modularui/ModularUIMiddleware.js +5 -2
  232. package/src/redux/_modularui/types.js +5 -3
  233. package/src/redux/_modularui/withModularUI.js +2 -2
  234. package/src/utils/fetch/types.js +12 -4
  235. package/types/constants/Constants.d.ts +5 -0
  236. package/types/models/base/ResourceModel.d.ts +4 -0
  237. package/types/models/form/FormObjectModel.d.ts +28 -2
  238. package/types/models/resolveModel.d.ts +1 -1
  239. package/types/models/types.d.ts +1 -1
  240. package/types/modularui/ModularUIRequest.d.ts +15 -7
  241. package/types/modularui/types.d.ts +2 -0
  242. package/types/redux/_modularui/types.d.ts +2 -2
  243. package/types/utils/fetch/types.d.ts +8 -5
@@ -15,7 +15,7 @@ import type {
15
15
  ResetModularUIAction,
16
16
  UpdateStatusAction,
17
17
  } from "./types";
18
- import type { RequestBaseOptions } from "../../utils/fetch/types";
18
+ import type { RequestModularUIOptions } from "../../utils/fetch/types";
19
19
 
20
20
  /**
21
21
  */
@@ -90,11 +90,12 @@ const loadModelSuccessAction = (
90
90
  };
91
91
 
92
92
  /**
93
+ * This action is handled by the modularui middleware
93
94
  */
94
95
  export const loadModel = (
95
96
  key: string,
96
97
  href: Href | string,
97
- options?: RequestBaseOptions
98
+ options?: RequestModularUIOptions
98
99
  ): ModularUIAction => ({
99
100
  type: "MODULARUI/FETCH",
100
101
  payload: {
@@ -104,6 +105,7 @@ export const loadModel = (
104
105
  locale: options?.locale ?? "en",
105
106
  childmodels: options?.childmodels,
106
107
  targetModel: options?.targetModel,
108
+ forceTargetModel: options?.forceTargetModel,
107
109
  /**
108
110
  */
109
111
  successAction: (model) =>
@@ -131,7 +133,7 @@ export const loadModularUI =
131
133
  (
132
134
  key: string,
133
135
  href: Href | string,
134
- options?: RequestBaseOptions
136
+ options?: RequestModularUIOptions
135
137
  ): ThunkAction =>
136
138
  (dispatch: Dispatch) => {
137
139
  dispatch(updateStatus(key, MODULARUI_STATUS.LOADING));
@@ -154,7 +156,7 @@ export const loadModularUI =
154
156
  */
155
157
  export const reloadModel = (
156
158
  model: ModularUIModel,
157
- options?: RequestBaseOptions
159
+ options?: RequestModularUIOptions
158
160
  ): ThunkAction =>
159
161
  loadModularUI(model.connectKey, model.selfhref, {
160
162
  ...options,
@@ -16,6 +16,7 @@ import type {
16
16
  import type { ModularUIModel } from "../../models/types";
17
17
  import type Href from "../../models/href/Href";
18
18
  import type { ModularUIAction, SuccessAction, ErrorAction } from "./types";
19
+ import type { TargetModel } from "../../modularui/types";
19
20
 
20
21
  type RequestOptions = {
21
22
  href: Href,
@@ -23,14 +24,15 @@ type RequestOptions = {
23
24
  data?: string | { [key: string]: string },
24
25
  locale: string,
25
26
  childmodels?: boolean,
26
- targetModel?: Class<ModularUIModel>,
27
+ targetModel?: TargetModel,
28
+ forceTargetModel?: boolean,
27
29
  isReload?: boolean,
28
30
  };
29
31
 
30
32
  /**
31
33
  * Symbol key that carries API call info interpreted by this Redux middleware.
32
34
  */
33
- const createRequest = (modularui: RequestOptions) => {
35
+ const createRequest = (modularui: RequestOptions): ModularUIRequest => {
34
36
  const request = new ModularUIRequest(modularui.href, {
35
37
  method: modularui.method || HTTP_METHODS.GET,
36
38
  data: modularui.data || {},
@@ -41,6 +43,7 @@ const createRequest = (modularui: RequestOptions) => {
41
43
 
42
44
  if (modularui.targetModel) {
43
45
  request.targetModel = modularui.targetModel;
46
+ request.forceTargetModel = modularui.forceTargetModel ?? false;
44
47
  }
45
48
 
46
49
  return request;
@@ -7,13 +7,14 @@ import typeof {
7
7
  HTTP_METHODS,
8
8
  MODULARUI_STATUS,
9
9
  } from "../../constants/Constants";
10
- import type { RequestBaseOptions } from "../../utils/fetch/types";
11
10
  import type { ComponentType } from "react";
11
+ import type { TargetModel } from "../../modularui/types";
12
+ import type { RequestModularUIOptions } from "../../utils/fetch/types";
12
13
 
13
14
  export type ModularUIOptions = {
14
15
  propName?: string,
15
16
  removeOnUnmount?: boolean,
16
- ...RequestBaseOptions,
17
+ ...RequestModularUIOptions,
17
18
  };
18
19
 
19
20
  export type ModelEntry = {
@@ -56,7 +57,8 @@ export type ModularUIAction = {
56
57
  data?: string | { [key: string]: string },
57
58
  locale: string,
58
59
  childmodels?: boolean,
59
- targetModel?: Class<ModularUIModel>,
60
+ targetModel?: TargetModel,
61
+ forceTargetModel?: boolean,
60
62
  successAction: (
61
63
  model: ModularUIModel
62
64
  ) => UpdateModelAction | SetModelAction,
@@ -21,9 +21,9 @@ import type {
21
21
  } from "../types";
22
22
  import type Href from "../../models/href/Href";
23
23
  import type { ModularUIModel } from "../../models/types";
24
- import type { RequestBaseOptions } from "../../utils/fetch/types";
25
24
  import type FetchException from "../../exceptions/FetchException";
26
25
  import type { ComponentType } from "react";
26
+ import type { RequestModularUIOptions } from "../../utils/fetch/types";
27
27
 
28
28
  type StateProps = {
29
29
  modularui: (href: Href, options: any) => ModularUIRequest,
@@ -35,7 +35,7 @@ type DispatchProps = {
35
35
  finishProgress: () => FinishProgressAction,
36
36
  reloadModel: (
37
37
  model: ModularUIModel,
38
- options?: RequestBaseOptions
38
+ options?: RequestModularUIOptions
39
39
  ) => ThunkAction,
40
40
  handleError: (error: Error | FetchException) => ThunkAction,
41
41
  };
@@ -1,10 +1,12 @@
1
1
  // @flow
2
2
  import typeof { HTTP_METHODS } from "../../constants/Constants";
3
3
  import type { ModularUIModel } from "../../models/types";
4
+ import type { TargetModel } from "../../modularui/types";
4
5
 
5
6
  export type RequestURLOptions = {
6
7
  url: string,
7
8
  };
9
+
8
10
  export type RequestBaseOptions = {
9
11
  method?: $Keys<HTTP_METHODS>,
10
12
  params?: string,
@@ -24,11 +26,17 @@ export type RequestBaseOptions = {
24
26
  includeContext?: boolean,
25
27
  locale?: string,
26
28
  cache?: boolean,
29
+ isReload?: boolean,
30
+ };
31
+
32
+ export type RequestOptions = { ...RequestURLOptions, ...RequestBaseOptions };
33
+
34
+ export type RequestModularUIOptions = {
35
+ ...RequestBaseOptions,
36
+ targetModel?: TargetModel,
37
+ forceTargetModel?: boolean,
38
+ updateModel?: ModularUIModel,
27
39
  childmodels?: boolean,
28
40
  isValidationRequest?: boolean,
29
- targetModel?: Class<ModularUIModel>,
30
- updateModel?: ModularUIModel,
31
- isReload?: boolean,
32
41
  removeOnUnmount?: boolean,
33
42
  };
34
- export type RequestOptions = { ...RequestURLOptions, ...RequestBaseOptions };
@@ -149,3 +149,8 @@ export const LOGIN_PATH_SETTING: "FormClient.login_url";
149
149
  export const LOGIN_USERNAME_SETTING: "FormClient.username_field_name";
150
150
  export const LOGIN_PASSWORD_SETTING: "FormClient.password_field_name";
151
151
  export const LOGOUT_PATH_SETTING: "FormClient.logout_url";
152
+ export namespace fallbackDefaultAuthenticationType {
153
+ const name: string;
154
+ const authentication: string;
155
+ const isPrimary: boolean;
156
+ }
@@ -3,6 +3,10 @@ export default ResourceModel;
3
3
  * Base model, this the foundation for models that represent modular ui services, e.g. application, tab, caseview, etc
4
4
  */
5
5
  declare class ResourceModel extends BaseModel {
6
+ /**
7
+ * Property to render name of a model, is original name after transpilation
8
+ */
9
+ static get modelName(): string;
6
10
  /**
7
11
  * Returns true when the model is supported based on configuration found in contributions
8
12
  *
@@ -145,8 +145,33 @@ export default class FormObjectModel extends BaseModel {
145
145
  /**
146
146
  */
147
147
  get dynamicValidationsLoaded(): boolean;
148
- handleErrorValidations(errors: any): void;
149
- handleMissingValidations(missing: any): void;
148
+ /**
149
+ * Convert error json from a form service to validation messages on the form object and attributes
150
+ */
151
+ handleErrorValidations(errors: Array<{
152
+ anchor: {
153
+ objectid: string;
154
+ elementid?: string;
155
+ };
156
+ id: string;
157
+ message: string;
158
+ properties: MessageParameters;
159
+ layouthint: Array<string>;
160
+ }>): void;
161
+ /**
162
+ * Convert missing json from a form service to mandatory validation constraints and messages
163
+ */
164
+ handleMissingValidations(missing: {
165
+ anchors: Array<{
166
+ elements: Array<{
167
+ elementid: string;
168
+ }>;
169
+ } | {
170
+ anchor: {
171
+ elementid: string;
172
+ };
173
+ }>;
174
+ }): void;
150
175
  /**
151
176
  */
152
177
  updateValidations(data: any): FormObjectModel;
@@ -168,3 +193,4 @@ import { AttributeType } from "../types";
168
193
  import LinkModel from "../links/LinkModel";
169
194
  import { ModularUIModel } from "../types";
170
195
  import { FormErrorAnchor } from "../types";
196
+ import { MessageParameters } from "../../i18n/types";
@@ -2,6 +2,6 @@ export default resolveModel;
2
2
  /**
3
3
  * Resolve a model by resource
4
4
  */
5
- declare function resolveModel(data: ModularUIResponse): Class<ModularUIModel> | null;
5
+ declare function resolveModel(data: ModularUIResponse, availableModels?: Array<Class<ModularUIModel>>): Class<ModularUIModel> | null;
6
6
  import ModularUIResponse from "../modularui/ModularUIResponse";
7
7
  import { ModularUIModel } from "./types";
@@ -49,7 +49,7 @@ export interface IModelWithChildModels {
49
49
  type AuthenticationType = {
50
50
  name: string;
51
51
  authentication: string;
52
- redirectUri: string;
52
+ redirectUri?: string;
53
53
  isPrimary: boolean;
54
54
  };
55
55
  type FileEntryType = {
@@ -6,11 +6,11 @@ export default ModularUIRequest;
6
6
  declare class ModularUIRequest {
7
7
  /**
8
8
  */
9
- constructor(href: Href | string, options?: $Shape<RequestBaseOptions>);
9
+ constructor(href: Href | string, options?: $Shape<RequestModularUIOptions>);
10
10
  _response: ModularUIResponse;
11
11
  _href: Href;
12
- _options: RequestBaseOptions;
13
- _targetModel: Class<ModularUIModel>;
12
+ _options: RequestModularUIOptions;
13
+ _targetModel: TargetModel | null;
14
14
  _contributionsHref: string;
15
15
  _locale: string;
16
16
  _method: $Keys<{
@@ -20,10 +20,10 @@ declare class ModularUIRequest {
20
20
  _progressEvent: ProgressEventHandler;
21
21
  /**
22
22
  */
23
- set options(arg: RequestBaseOptions);
23
+ set options(arg: RequestModularUIOptions);
24
24
  /**
25
25
  */
26
- get options(): RequestBaseOptions;
26
+ get options(): RequestModularUIOptions;
27
27
  /**
28
28
  */
29
29
  set href(arg: Href);
@@ -38,10 +38,10 @@ declare class ModularUIRequest {
38
38
  get locale(): string;
39
39
  /**
40
40
  */
41
- set targetModel(arg: Class<ModularUIModel>);
41
+ set targetModel(arg: any);
42
42
  /**
43
43
  */
44
- get targetModel(): Class<ModularUIModel>;
44
+ get targetModel(): any;
45
45
  /**
46
46
  */
47
47
  set method(arg: $Keys<{
@@ -63,9 +63,15 @@ declare class ModularUIRequest {
63
63
  /**
64
64
  */
65
65
  get response(): ModularUIResponse;
66
+ /**
67
+ */
68
+ get requestOptions(): RequestBaseOptions;
66
69
  /**
67
70
  */
68
71
  get withChildModels(): boolean;
72
+ /**
73
+ */
74
+ resolveModel(): Class<ModularUIModel>;
69
75
  /**
70
76
  */
71
77
  createModel(): ModularUIModel;
@@ -171,6 +177,8 @@ declare class ModularUIRequest {
171
177
  }
172
178
  import ModularUIResponse from "./ModularUIResponse";
173
179
  import Href from "../models/href/Href";
180
+ import { RequestModularUIOptions } from "../utils/fetch/types";
181
+ import { TargetModel } from "./types";
174
182
  import { RequestBaseOptions } from "../utils/fetch/types";
175
183
  import { ModularUIModel } from "../models/types";
176
184
  import ContentModel from "../models/content/ContentModel";
@@ -0,0 +1,2 @@
1
+ type TargetModel = any;
2
+ export {};
@@ -1,7 +1,7 @@
1
1
  type ModularUIOptions = {
2
2
  propName?: string;
3
3
  removeOnUnmount?: boolean;
4
- RequestBaseOptions: any;
4
+ RequestModularUIOptions: any;
5
5
  };
6
6
  type ModelEntry = {};
7
7
  type ModularUIState = {};
@@ -28,7 +28,7 @@ type ModularUIAction = {
28
28
  };
29
29
  locale: string;
30
30
  childmodels?: boolean;
31
- targetModel?: Class<ModularUIModel>;
31
+ targetModel?: any;
32
32
  successAction: (model: ModularUIModel) => SetModelAction | UpdateModelAction;
33
33
  errorAction?: ErrorAction;
34
34
  };
@@ -24,15 +24,18 @@ type RequestBaseOptions = {
24
24
  includeContext?: boolean;
25
25
  locale?: string;
26
26
  cache?: boolean;
27
- childmodels?: boolean;
28
- isValidationRequest?: boolean;
29
- targetModel?: Class<ModularUIModel>;
30
- updateModel?: ModularUIModel;
31
27
  isReload?: boolean;
32
- removeOnUnmount?: boolean;
33
28
  };
34
29
  type RequestOptions = {
35
30
  RequestURLOptions: any;
36
31
  RequestBaseOptions: any;
37
32
  };
33
+ type RequestModularUIOptions = {
34
+ RequestBaseOptions: any;
35
+ targetModel?: any;
36
+ updateModel?: ModularUIModel;
37
+ childmodels?: boolean;
38
+ isValidationRequest?: boolean;
39
+ removeOnUnmount?: boolean;
40
+ };
38
41
  export {};