@beinformed/ui 1.20.2 → 1.20.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 (86) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/esm/constants/Constants.js +0 -15
  3. package/esm/constants/Constants.js.map +1 -1
  4. package/esm/constants/Settings.js +6 -0
  5. package/esm/constants/Settings.js.map +1 -1
  6. package/esm/hooks/useAuthentication.js +41 -5
  7. package/esm/hooks/useAuthentication.js.map +1 -1
  8. package/esm/i18n/translations/beinformed_error_messages_en.nl.js +3 -2
  9. package/esm/i18n/translations/beinformed_error_messages_en.nl.js.map +1 -1
  10. package/esm/i18n/translations/beinformed_error_messages_nl.nl.js +4 -3
  11. package/esm/i18n/translations/beinformed_error_messages_nl.nl.js.map +1 -1
  12. package/esm/models/application/ApplicationModel.js +6 -1
  13. package/esm/models/application/ApplicationModel.js.map +1 -1
  14. package/esm/models/form/FormModel.js +7 -6
  15. package/esm/models/form/FormModel.js.map +1 -1
  16. package/esm/redux/_modularui/actions.js +1 -1
  17. package/esm/redux/_modularui/actions.js.map +1 -1
  18. package/esm/redux/actions/Authorization.js +5 -9
  19. package/esm/redux/actions/Authorization.js.map +1 -1
  20. package/esm/redux/actions/Error.js +3 -1
  21. package/esm/redux/actions/Error.js.map +1 -1
  22. package/esm/redux/actions/SignIn.js +7 -0
  23. package/esm/redux/actions/SignIn.js.map +1 -1
  24. package/esm/redux/index.js +3 -1
  25. package/esm/redux/index.js.map +1 -1
  26. package/esm/redux/selectors/index.js +2 -0
  27. package/esm/redux/selectors/index.js.map +1 -0
  28. package/esm/redux/types.js.map +1 -1
  29. package/lib/constants/Constants.js +2 -20
  30. package/lib/constants/Constants.js.flow +0 -15
  31. package/lib/constants/Constants.js.map +1 -1
  32. package/lib/constants/Settings.js +6 -0
  33. package/lib/constants/Settings.js.flow +9 -0
  34. package/lib/constants/Settings.js.map +1 -1
  35. package/lib/hooks/useAuthentication.js +49 -5
  36. package/lib/hooks/useAuthentication.js.flow +42 -3
  37. package/lib/hooks/useAuthentication.js.map +1 -1
  38. package/lib/i18n/translations/beinformed_error_messages_en.nl.js +3 -2
  39. package/lib/i18n/translations/beinformed_error_messages_en.nl.js.flow +3 -2
  40. package/lib/i18n/translations/beinformed_error_messages_en.nl.js.map +1 -1
  41. package/lib/i18n/translations/beinformed_error_messages_nl.nl.js +4 -3
  42. package/lib/i18n/translations/beinformed_error_messages_nl.nl.js.flow +4 -3
  43. package/lib/i18n/translations/beinformed_error_messages_nl.nl.js.map +1 -1
  44. package/lib/models/application/ApplicationModel.js +7 -1
  45. package/lib/models/application/ApplicationModel.js.flow +7 -1
  46. package/lib/models/application/ApplicationModel.js.map +1 -1
  47. package/lib/models/form/FormModel.js +7 -7
  48. package/lib/models/form/FormModel.js.flow +2 -3
  49. package/lib/models/form/FormModel.js.map +1 -1
  50. package/lib/redux/_modularui/actions.js +1 -1
  51. package/lib/redux/_modularui/actions.js.flow +1 -4
  52. package/lib/redux/_modularui/actions.js.map +1 -1
  53. package/lib/redux/actions/Authorization.js +7 -12
  54. package/lib/redux/actions/Authorization.js.flow +4 -16
  55. package/lib/redux/actions/Authorization.js.map +1 -1
  56. package/lib/redux/actions/Error.js +4 -1
  57. package/lib/redux/actions/Error.js.flow +3 -1
  58. package/lib/redux/actions/Error.js.map +1 -1
  59. package/lib/redux/actions/SignIn.js +12 -2
  60. package/lib/redux/actions/SignIn.js.flow +11 -2
  61. package/lib/redux/actions/SignIn.js.map +1 -1
  62. package/lib/redux/actions/__tests__/Authorization.spec.js.flow +4 -18
  63. package/lib/redux/index.js +14 -0
  64. package/lib/redux/index.js.flow +3 -0
  65. package/lib/redux/index.js.map +1 -1
  66. package/lib/redux/selectors/index.js +21 -0
  67. package/lib/redux/selectors/index.js.flow +2 -0
  68. package/lib/redux/selectors/index.js.map +1 -0
  69. package/lib/redux/types.js.flow +2 -2
  70. package/lib/redux/types.js.map +1 -1
  71. package/package.json +19 -18
  72. package/src/constants/Constants.js +0 -15
  73. package/src/constants/Settings.js +9 -0
  74. package/src/hooks/useAuthentication.js +42 -3
  75. package/src/i18n/translations/beinformed_error_messages_en.nl.js +3 -2
  76. package/src/i18n/translations/beinformed_error_messages_nl.nl.js +4 -3
  77. package/src/models/application/ApplicationModel.js +7 -1
  78. package/src/models/form/FormModel.js +2 -3
  79. package/src/redux/_modularui/actions.js +1 -4
  80. package/src/redux/actions/Authorization.js +4 -16
  81. package/src/redux/actions/Error.js +3 -1
  82. package/src/redux/actions/SignIn.js +11 -2
  83. package/src/redux/actions/__tests__/Authorization.spec.js +4 -18
  84. package/src/redux/index.js +3 -0
  85. package/src/redux/selectors/index.js +2 -0
  86. package/src/redux/types.js +2 -2
package/CHANGELOG.md CHANGED
@@ -2,6 +2,27 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ### [1.20.5](https://git.beinformed.com/public/nl.beinformed.bi.layout.lib.ui/compare/v1.20.4...v1.20.5) (2022-06-29)
6
+
7
+ ### Bug Fixes
8
+
9
+ - **export:** export redux selectors ([0017a01](https://git.beinformed.com/public/nl.beinformed.bi.layout.lib.ui/commit/0017a01ba44f2a21295eab7d0c6b749f4388734c))
10
+
11
+ ### [1.20.4](https://git.beinformed.com/public/nl.beinformed.bi.layout.lib.ui/compare/v1.20.3...v1.20.4) (2022-06-29)
12
+
13
+ ### Bug Fixes
14
+
15
+ - **login:** set isRedirectLogin to false on load of hook ([24c1a53](https://git.beinformed.com/public/nl.beinformed.bi.layout.lib.ui/commit/24c1a53913dd483158491c8dce14fcae9e80d70d))
16
+ - **login:** set login errors as error not notifications ([d21871e](https://git.beinformed.com/public/nl.beinformed.bi.layout.lib.ui/commit/d21871eaa6e819c5027d86bdffb5358abbeba38a))
17
+
18
+ ### [1.20.3](https://git.beinformed.com/public/nl.beinformed.bi.layout.lib.ui/compare/v1.20.2...v1.20.3) (2022-06-23)
19
+
20
+ ### Bug Fixes
21
+
22
+ - **authentication:** add authentication types, method for login / logout using pac4j external ([c8e82de](https://git.beinformed.com/public/nl.beinformed.bi.layout.lib.ui/commit/c8e82ded8edf994da3d77adc09ffde2af279c6ec))
23
+ - **authentication:** sort authentication types by default, primary first ([a577000](https://git.beinformed.com/public/nl.beinformed.bi.layout.lib.ui/commit/a57700012752a9609fb264fd1864546ea461c912))
24
+ - **settings:** make login and logout path a setting ([d95f2f4](https://git.beinformed.com/public/nl.beinformed.bi.layout.lib.ui/commit/d95f2f450e316261b7121d6d714ecb42c7203d9c))
25
+
5
26
  ### [1.20.2](https://git.beinformed.com/public/nl.beinformed.bi.layout.lib.ui/compare/v1.20.1...v1.20.2) (2022-06-21)
6
27
 
7
28
  ### Bug Fixes
@@ -43,21 +43,6 @@ export var UPLOAD_PATH = "".concat(BASE, "/uploadFile");
43
43
  */
44
44
 
45
45
  export var CAPTCHA_PATH = "".concat(BASE, "/captchaServices");
46
- /**
47
- * Path to login page / component
48
- */
49
-
50
- export var LOGIN_PATH = "/signin";
51
- /**
52
- * Path to administrator login page / component
53
- */
54
-
55
- export var ADMINISTRATOR_LOGIN_PATH = null;
56
- /**
57
- * Path to logout page / component
58
- */
59
-
60
- export var LOGOUT_PATH = "/signout";
61
46
  /**
62
47
  * Path to change password page / component
63
48
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Constants.js","names":["USE_CACHE","serverBase","__CONTEXT_PATH__","BASE","window","contextPath","MODULARUI_CONTRIBUTIONS","APPLICATION_URI","APPLICATION_PATH","CONTENT_PATH","UPLOAD_PATH","CAPTCHA_PATH","LOGIN_PATH","ADMINISTRATOR_LOGIN_PATH","LOGOUT_PATH","CHANGEPASSWORD_PATH","USERPROFILE_PATH","PARAMETER_SEPARATOR","TIMEVERSION_FILTER_NAME","PARAMETER_OVERVIEW_VIEWTYPE","DEFAULT_UI_PARAMETERS","ISO_DATE_FORMAT","ISO_DATETIME_FORMAT","ISO_TIME_FORMAT","ISO_TIMESTAMP_FORMAT","DEFAULT_WEEK_STARTS_ON","DEFAULT_FIRST_WEEK_CONTAINS_DATE","KEYCODES","TAB","ENTER","ESCAPE","SPACE","PAGE_UP","PAGE_DOWN","ARROW_LEFT","ARROW_UP","ARROW_RIGHT","ARROW_DOWN","IS_SYNC","dataFetcher","IS_SERVER","NOTIFICATION_TYPES","SUCCESS","INFO","WARNING","ERROR","HTTP_METHODS","GET","POST","MODULARUI_STATUS","LOADING","FINISHED","AUTOSAVE_STATUS","START","INPUT_DEBOUNCE_TIMEOUT","VALIDATE_DEBOUNCE_TIMEOUT","ATTRIBUTE_WIDTH","EXTRA_SMALL","SMALL","MEDIUM","LARGE","EXTRA_LARGE","ALL_CONTENT_IN_DATA_SETTING","LOGIN_TYPE","LOGIN_PATH_SETTING","LOGIN_USERNAME_SETTING","LOGIN_PASSWORD_SETTING","LOGOUT_PATH_SETTING"],"sources":["../../src/constants/Constants.js"],"sourcesContent":["// @flow\n/**\n * Indicates if contributions should be cached\n */\nexport const USE_CACHE = true;\n\nconst serverBase =\n typeof __CONTEXT_PATH__ === \"undefined\" ? null : __CONTEXT_PATH__;\n\n/**\n * Base path\n * This uses contextPath set from property from server\n * When requesting a remote server with CORS enabled, add the origin, for example:\n * export const BEINFORMED_PATH = 'http://192.168.128.61:8080/BeInformed';\n */\nexport const BASE: string =\n serverBase ??\n (typeof window !== \"undefined\" && window.contextPath\n ? window.contextPath\n : \"/BeInformed\");\n\n/**\n * Path to the contributions api end point\n * /contributions uri part is added through the _links in the data service\n */\nexport const MODULARUI_CONTRIBUTIONS = \"/contributions\";\n\n/**\n * Application uri\n * @private\n */\nconst APPLICATION_URI = \"/\";\n\n/**\n * Base Path\n */\nexport const APPLICATION_PATH: string = BASE + APPLICATION_URI;\n\n/**\n * path to content service\n */\nexport const CONTENT_PATH = `${BASE}/content`;\n\n/**\n * Upload Path\n */\nexport const UPLOAD_PATH = `${BASE}/uploadFile`;\n\n/**\n * Captcha Path\n */\nexport const CAPTCHA_PATH = `${BASE}/captchaServices`;\n\n/**\n * Path to login page / component\n */\nexport const LOGIN_PATH = \"/signin\";\n\n/**\n * Path to administrator login page / component\n */\nexport const ADMINISTRATOR_LOGIN_PATH = null;\n\n/**\n * Path to logout page / component\n */\nexport const LOGOUT_PATH = \"/signout\";\n\n/**\n * Path to change password page / component\n */\nexport const CHANGEPASSWORD_PATH = \"/change-password\";\n\n/**\n * Path to user profile page / component\n */\nexport const USERPROFILE_PATH = \"/user\";\n\n/**\n * Separator for parameters of a list, makes it possible to render multiple lists on a page in a non-js environment\n */\nexport const PARAMETER_SEPARATOR = \"~\";\n\n/**\n * Timeversion filter name\n */\nexport const TIMEVERSION_FILTER_NAME = \"entryDate\";\n\nconst PARAMETER_OVERVIEW_VIEWTYPE = \"viewType\";\n/**\n * Parameter name for the viewtype toggle\n */\nexport const DEFAULT_UI_PARAMETERS: Array<string> = [\n PARAMETER_OVERVIEW_VIEWTYPE,\n];\n\n/**\n */\nexport const ISO_DATE_FORMAT = \"yyyy-MM-dd\";\n/**\n */\nexport const ISO_DATETIME_FORMAT = \"yyyy-MM-dd'T'HH:mm:ss\";\n/**\n */\nexport const ISO_TIME_FORMAT = \"HH:mm:ss\";\n/**\n */\nexport const ISO_TIMESTAMP_FORMAT = \"yyyy-MM-dd'T'HH:mm:ss.SSS\";\n/**\n * week starts on monday by default\n */\nexport const DEFAULT_WEEK_STARTS_ON = 1;\n\n/**\n * first week indicated by the 1st of january\n */\nexport const DEFAULT_FIRST_WEEK_CONTAINS_DATE = 1;\n\n/**\n * Key codes\n * @type {{SPACE: number, PAGE_DOWN: number, TAB: number, ARROW_RIGHT: number, ARROW_DOWN: number, ENTER: number, ARROW_UP: number, ARROW_LEFT: number, PAGE_UP: number, ESCAPE: number}}\n */\nexport const KEYCODES = {\n TAB: 9,\n ENTER: 13,\n ESCAPE: 27,\n SPACE: 32,\n PAGE_UP: 33,\n PAGE_DOWN: 34,\n ARROW_LEFT: 37,\n ARROW_UP: 38,\n ARROW_RIGHT: 39,\n ARROW_DOWN: 40,\n};\n\n/**\n * @type {boolean}\n */\nexport const IS_SYNC = typeof dataFetcher !== \"undefined\";\n/**\n * @type {boolean}\n */\nexport const IS_SERVER = IS_SYNC;\n\n/**\n * @type {{SUCCESS: string, ERROR: string, INFO: string, WARNING: string}}\n */\nexport const NOTIFICATION_TYPES = {\n SUCCESS: \"SUCCESS\",\n INFO: \"INFO\",\n WARNING: \"WARNING\",\n ERROR: \"ERROR\",\n};\n\n/**\n * SUPPORTED HTTP METHODS\n * @type {{POST: string, GET: string}}\n */\nexport const HTTP_METHODS = {\n GET: \"GET\",\n POST: \"POST\",\n};\n\n/**\n * POSSIBLE MODULARUI STATUSSES\n * @type {{LOADING: string, ERROR: string, FINISHED: string}}\n */\nexport const MODULARUI_STATUS = {\n LOADING: \"LOADING\",\n FINISHED: \"FINISHED\",\n ERROR: \"ERROR\",\n};\n\n/**\n * POSSIBLE AUTOSAVE STATUSSES\n * @type {{START: string, FINISHED: string}}\n */\nexport const AUTOSAVE_STATUS = {\n START: \"START\",\n FINISHED: \"FINISHED\",\n};\n\n/**\n * DEBOUNCE INPUT TIMEOUT\n */\nexport const INPUT_DEBOUNCE_TIMEOUT = 100;\n\n/**\n * DEBOUNCE VALIDATION TIMEOUT\n */\nexport const VALIDATE_DEBOUNCE_TIMEOUT = 500;\n\n/**\n * ATTRIBUTE WIDTH\n */\nexport const ATTRIBUTE_WIDTH = {\n EXTRA_SMALL: \"EXTRA_SMALL\",\n SMALL: \"SMALL\",\n MEDIUM: \"MEDIUM\",\n LARGE: \"LARGE\",\n EXTRA_LARGE: \"EXTRA_LARGE\",\n};\n\nexport const ALL_CONTENT_IN_DATA_SETTING = \"hasAllContentInData\";\n\nexport const LOGIN_TYPE = \"security.clients\";\nexport const LOGIN_PATH_SETTING = \"FormClient.login_url\";\nexport const LOGIN_USERNAME_SETTING = \"FormClient.username_field_name\";\nexport const LOGIN_PASSWORD_SETTING = \"FormClient.password_field_name\";\nexport const LOGOUT_PATH_SETTING = \"FormClient.logout_url\";\n"],"mappings":"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"}
1
+ {"version":3,"file":"Constants.js","names":["USE_CACHE","serverBase","__CONTEXT_PATH__","BASE","window","contextPath","MODULARUI_CONTRIBUTIONS","APPLICATION_URI","APPLICATION_PATH","CONTENT_PATH","UPLOAD_PATH","CAPTCHA_PATH","CHANGEPASSWORD_PATH","USERPROFILE_PATH","PARAMETER_SEPARATOR","TIMEVERSION_FILTER_NAME","PARAMETER_OVERVIEW_VIEWTYPE","DEFAULT_UI_PARAMETERS","ISO_DATE_FORMAT","ISO_DATETIME_FORMAT","ISO_TIME_FORMAT","ISO_TIMESTAMP_FORMAT","DEFAULT_WEEK_STARTS_ON","DEFAULT_FIRST_WEEK_CONTAINS_DATE","KEYCODES","TAB","ENTER","ESCAPE","SPACE","PAGE_UP","PAGE_DOWN","ARROW_LEFT","ARROW_UP","ARROW_RIGHT","ARROW_DOWN","IS_SYNC","dataFetcher","IS_SERVER","NOTIFICATION_TYPES","SUCCESS","INFO","WARNING","ERROR","HTTP_METHODS","GET","POST","MODULARUI_STATUS","LOADING","FINISHED","AUTOSAVE_STATUS","START","INPUT_DEBOUNCE_TIMEOUT","VALIDATE_DEBOUNCE_TIMEOUT","ATTRIBUTE_WIDTH","EXTRA_SMALL","SMALL","MEDIUM","LARGE","EXTRA_LARGE","ALL_CONTENT_IN_DATA_SETTING","LOGIN_TYPE","LOGIN_PATH_SETTING","LOGIN_USERNAME_SETTING","LOGIN_PASSWORD_SETTING","LOGOUT_PATH_SETTING"],"sources":["../../src/constants/Constants.js"],"sourcesContent":["// @flow\n/**\n * Indicates if contributions should be cached\n */\nexport const USE_CACHE = true;\n\nconst serverBase =\n typeof __CONTEXT_PATH__ === \"undefined\" ? null : __CONTEXT_PATH__;\n\n/**\n * Base path\n * This uses contextPath set from property from server\n * When requesting a remote server with CORS enabled, add the origin, for example:\n * export const BEINFORMED_PATH = 'http://192.168.128.61:8080/BeInformed';\n */\nexport const BASE: string =\n serverBase ??\n (typeof window !== \"undefined\" && window.contextPath\n ? window.contextPath\n : \"/BeInformed\");\n\n/**\n * Path to the contributions api end point\n * /contributions uri part is added through the _links in the data service\n */\nexport const MODULARUI_CONTRIBUTIONS = \"/contributions\";\n\n/**\n * Application uri\n * @private\n */\nconst APPLICATION_URI = \"/\";\n\n/**\n * Base Path\n */\nexport const APPLICATION_PATH: string = BASE + APPLICATION_URI;\n\n/**\n * path to content service\n */\nexport const CONTENT_PATH = `${BASE}/content`;\n\n/**\n * Upload Path\n */\nexport const UPLOAD_PATH = `${BASE}/uploadFile`;\n\n/**\n * Captcha Path\n */\nexport const CAPTCHA_PATH = `${BASE}/captchaServices`;\n\n/**\n * Path to change password page / component\n */\nexport const CHANGEPASSWORD_PATH = \"/change-password\";\n\n/**\n * Path to user profile page / component\n */\nexport const USERPROFILE_PATH = \"/user\";\n\n/**\n * Separator for parameters of a list, makes it possible to render multiple lists on a page in a non-js environment\n */\nexport const PARAMETER_SEPARATOR = \"~\";\n\n/**\n * Timeversion filter name\n */\nexport const TIMEVERSION_FILTER_NAME = \"entryDate\";\n\nconst PARAMETER_OVERVIEW_VIEWTYPE = \"viewType\";\n/**\n * Parameter name for the viewtype toggle\n */\nexport const DEFAULT_UI_PARAMETERS: Array<string> = [\n PARAMETER_OVERVIEW_VIEWTYPE,\n];\n\n/**\n */\nexport const ISO_DATE_FORMAT = \"yyyy-MM-dd\";\n/**\n */\nexport const ISO_DATETIME_FORMAT = \"yyyy-MM-dd'T'HH:mm:ss\";\n/**\n */\nexport const ISO_TIME_FORMAT = \"HH:mm:ss\";\n/**\n */\nexport const ISO_TIMESTAMP_FORMAT = \"yyyy-MM-dd'T'HH:mm:ss.SSS\";\n/**\n * week starts on monday by default\n */\nexport const DEFAULT_WEEK_STARTS_ON = 1;\n\n/**\n * first week indicated by the 1st of january\n */\nexport const DEFAULT_FIRST_WEEK_CONTAINS_DATE = 1;\n\n/**\n * Key codes\n * @type {{SPACE: number, PAGE_DOWN: number, TAB: number, ARROW_RIGHT: number, ARROW_DOWN: number, ENTER: number, ARROW_UP: number, ARROW_LEFT: number, PAGE_UP: number, ESCAPE: number}}\n */\nexport const KEYCODES = {\n TAB: 9,\n ENTER: 13,\n ESCAPE: 27,\n SPACE: 32,\n PAGE_UP: 33,\n PAGE_DOWN: 34,\n ARROW_LEFT: 37,\n ARROW_UP: 38,\n ARROW_RIGHT: 39,\n ARROW_DOWN: 40,\n};\n\n/**\n * @type {boolean}\n */\nexport const IS_SYNC = typeof dataFetcher !== \"undefined\";\n/**\n * @type {boolean}\n */\nexport const IS_SERVER = IS_SYNC;\n\n/**\n * @type {{SUCCESS: string, ERROR: string, INFO: string, WARNING: string}}\n */\nexport const NOTIFICATION_TYPES = {\n SUCCESS: \"SUCCESS\",\n INFO: \"INFO\",\n WARNING: \"WARNING\",\n ERROR: \"ERROR\",\n};\n\n/**\n * SUPPORTED HTTP METHODS\n * @type {{POST: string, GET: string}}\n */\nexport const HTTP_METHODS = {\n GET: \"GET\",\n POST: \"POST\",\n};\n\n/**\n * POSSIBLE MODULARUI STATUSSES\n * @type {{LOADING: string, ERROR: string, FINISHED: string}}\n */\nexport const MODULARUI_STATUS = {\n LOADING: \"LOADING\",\n FINISHED: \"FINISHED\",\n ERROR: \"ERROR\",\n};\n\n/**\n * POSSIBLE AUTOSAVE STATUSSES\n * @type {{START: string, FINISHED: string}}\n */\nexport const AUTOSAVE_STATUS = {\n START: \"START\",\n FINISHED: \"FINISHED\",\n};\n\n/**\n * DEBOUNCE INPUT TIMEOUT\n */\nexport const INPUT_DEBOUNCE_TIMEOUT = 100;\n\n/**\n * DEBOUNCE VALIDATION TIMEOUT\n */\nexport const VALIDATE_DEBOUNCE_TIMEOUT = 500;\n\n/**\n * ATTRIBUTE WIDTH\n */\nexport const ATTRIBUTE_WIDTH = {\n EXTRA_SMALL: \"EXTRA_SMALL\",\n SMALL: \"SMALL\",\n MEDIUM: \"MEDIUM\",\n LARGE: \"LARGE\",\n EXTRA_LARGE: \"EXTRA_LARGE\",\n};\n\nexport const ALL_CONTENT_IN_DATA_SETTING = \"hasAllContentInData\";\n\nexport const LOGIN_TYPE = \"security.clients\";\nexport const LOGIN_PATH_SETTING = \"FormClient.login_url\";\nexport const LOGIN_USERNAME_SETTING = \"FormClient.username_field_name\";\nexport const LOGIN_PASSWORD_SETTING = \"FormClient.password_field_name\";\nexport const LOGOUT_PATH_SETTING = \"FormClient.logout_url\";\n"],"mappings":"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"}
@@ -28,6 +28,12 @@ var defaultSettings = {
28
28
  RENDER_GLOBAL_LOGOUT_PAGE: false,
29
29
  // Renders the login variants as option on the global logout page
30
30
  RENDER_MULTI_LOGIN_ON_GLOBAL_LOGOUT_PAGE: false,
31
+ // Path to login page / component
32
+ LOGIN_PATH: "/signin",
33
+ // Path to administrator login page / component
34
+ ADMINISTRATOR_LOGIN_PATH: "",
35
+ // Path to logout page / component
36
+ LOGOUT_PATH: "/signout",
31
37
  // Render forms in a modal
32
38
  RENDER_FORMS_IN_MODAL: true,
33
39
  // Wait timeout before rendering submit wait icon
@@ -1 +1 @@
1
- {"version":3,"file":"Settings.js","names":["isPlainObject","has","ALL_CONTENT_IN_DATA_SETTING","LOGIN_TYPE","LOGIN_PATH_SETTING","LOGIN_USERNAME_SETTING","LOGIN_PASSWORD_SETTING","LOGOUT_PATH_SETTING","defaultSettings","DEBUG_I18N_MESSAGE_NOT_FOUND","HIDE_NOTIFICATION_TIMEOUT","ALWAYS_COMMIT_FORM","RENDER_QUESTION_LABELS","RENDER_MANDATORY_ATTRIBUTE_INDICATION","RENDER_OPTIONAL_ATTRIBUTE_INDICATION","AVAILABLE_LIST_VIEWS","USE_CLIENTSIDE_VALIDATION","USE_INSTANT_SERVER_VALIDATION","ENABLED_LOCALES","RENDER_GLOBAL_LOGIN_PAGE","RENDER_GLOBAL_LOGOUT_PAGE","RENDER_MULTI_LOGIN_ON_GLOBAL_LOGOUT_PAGE","RENDER_FORMS_IN_MODAL","SHOW_SUBMIT_WAIT_TIMEOUT","SWIM_LANE_DIAGRAM_CONFIGURATION","BUSINESS_SCENARIO_CONCEPT_TYPE","BUSINESS_SCENARIO_STEP_CONCEPT_TYPE","BUSINESS_SCENARIO_PERSONA_CONCEPT_TYPE","DATE_INPUT_FORMAT","DATE_READONLY_FORMAT","CALENDAR_WEEK_STARTS_ON","CALENDAR_FIRST_WEEK_CONTAINS_DATE","UI_PARAMETERS","ALLOW_HIDE_WHEN_EMPTY_ON_TABS","PAGE_RELOAD_ON_UNAUTHORIZED_ERROR","XHR_TIMEOUT_MS","settings","setSettings","config","getSetting","key","defaultValue","undefined","Error","setSetting","value","allSettings","hasAllContentInData","loginType","loginPath","loginUsernameField","loginPasswordField","logoutPath"],"sources":["../../src/constants/Settings.js"],"sourcesContent":["// @flow\nimport { isPlainObject, has } from \"../utils/helpers/objects\";\nimport {\n ALL_CONTENT_IN_DATA_SETTING,\n LOGIN_TYPE,\n LOGIN_PATH_SETTING,\n LOGIN_USERNAME_SETTING,\n LOGIN_PASSWORD_SETTING,\n LOGOUT_PATH_SETTING,\n} from \"./Constants\";\n\ntype Setting = boolean | string | number | Array<string>;\n\nconst defaultSettings = {\n // Debug missing i18n messages in layout\n DEBUG_I18N_MESSAGE_NOT_FOUND: true,\n\n // Time to show the notification bar\n HIDE_NOTIFICATION_TIMEOUT: 5000,\n\n // Always commit form, does not show result pages for instruments\n ALWAYS_COMMIT_FORM: false,\n\n // Render instrument and event question labels on forms (might result in duplicate labels)\n RENDER_QUESTION_LABELS: true,\n\n // Render mandatory indications on attributes\n RENDER_MANDATORY_ATTRIBUTE_INDICATION: true,\n\n // Render optional indications on attributes\n RENDER_OPTIONAL_ATTRIBUTE_INDICATION: false,\n\n // Renders a toggle with supported list views, options are ListView and TableView\n AVAILABLE_LIST_VIEWS: [\"ListView\", \"TableView\"],\n\n // Toggle client side validation\n USE_CLIENTSIDE_VALIDATION: true,\n\n // Indicates if server validation should be used when a form field is changed\n USE_INSTANT_SERVER_VALIDATION: true,\n\n // Indicates which locales are enabled\n ENABLED_LOCALES: [\"en\", \"nl\"],\n\n // Renders the global log in page\n RENDER_GLOBAL_LOGIN_PAGE: false,\n\n // Renders the global log out page\n RENDER_GLOBAL_LOGOUT_PAGE: false,\n\n // Renders the login variants as option on the global logout page\n RENDER_MULTI_LOGIN_ON_GLOBAL_LOGOUT_PAGE: false,\n\n // Render forms in a modal\n RENDER_FORMS_IN_MODAL: true,\n\n // Wait timeout before rendering submit wait icon\n SHOW_SUBMIT_WAIT_TIMEOUT: 300,\n\n // Swim lane diagram configuration file\n SWIM_LANE_DIAGRAM_CONFIGURATION: \"/Library/Diagrams/Overviews.json\",\n\n // Business scenario concept types\n BUSINESS_SCENARIO_CONCEPT_TYPE: [\n \"/Library/KMTs/Business scenarios.bixml/BusinessScenario\",\n ],\n BUSINESS_SCENARIO_STEP_CONCEPT_TYPE: [\n \"/Library/KMTs/Business scenarios.bixml/ScenarioStep\",\n ],\n BUSINESS_SCENARIO_PERSONA_CONCEPT_TYPE: [\n \"/Library/KMTs/Business scenarios.bixml/Persona\",\n ],\n\n // Input format for dates. Without this setting having a value, the contributions format is used\n DATE_INPUT_FORMAT: \"\",\n\n // Readonly format for dates. Without this setting having a value, the contributions format is used\n DATE_READONLY_FORMAT: \"\",\n\n // indicates on what day the week starts (0 = Sunday)\n CALENDAR_WEEK_STARTS_ON: 1,\n\n // indicates which date indicates the first week of the year\n CALENDAR_FIRST_WEEK_CONTAINS_DATE: 1,\n\n // parameters that are added for the ui state, but should not be send to the modular ui\n UI_PARAMETERS: [],\n\n // disable hide-when-empty hint for layouts running on Be Informed versions older than 21.1\n ALLOW_HIDE_WHEN_EMPTY_ON_TABS: true,\n\n // reload the complete page on signout, usefull when third party authentication is in place\n PAGE_RELOAD_ON_UNAUTHORIZED_ERROR: false,\n\n XHR_TIMEOUT_MS: 300000,\n};\n\nlet settings = defaultSettings;\n\n/**\n */\nexport const setSettings = (config: Object) => {\n if (isPlainObject(config)) {\n settings = Object.assign(defaultSettings, config);\n }\n};\n\n/**\n */\nexport const getSetting = (key: string, defaultValue?: any): any => {\n if (!has(settings, key) && defaultValue === undefined) {\n throw new Error(\n `Setting with name ${key} not found and no defaultValue given`\n );\n }\n\n return settings[key] ?? defaultValue;\n};\n\n/**\n */\nexport const setSetting = (key: string, value: any) => {\n settings[key] = value;\n};\n\n/**\n */\nexport const allSettings = (): { [name: string]: Setting } => settings;\n\n/**\n */\nexport const hasAllContentInData = (): boolean =>\n getSetting(ALL_CONTENT_IN_DATA_SETTING, true);\n\n/**\n * Login type, only available when pac4j is configured\n */\nexport const loginType = (): string => getSetting(LOGIN_TYPE, \"JAAS\");\n\n/**\n */\nexport const loginPath = (): string =>\n getSetting(LOGIN_PATH_SETTING, \"/j_security_check\");\n/**\n */\nexport const loginUsernameField = (): string =>\n getSetting(LOGIN_USERNAME_SETTING, \"j_username\");\n/**\n */\nexport const loginPasswordField = (): string =>\n getSetting(LOGIN_PASSWORD_SETTING, \"j_password\");\n/**\n */\nexport const logoutPath = (): string =>\n getSetting(LOGOUT_PATH_SETTING, \"/Logoff\");\n"],"mappings":"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"}
1
+ {"version":3,"file":"Settings.js","names":["isPlainObject","has","ALL_CONTENT_IN_DATA_SETTING","LOGIN_TYPE","LOGIN_PATH_SETTING","LOGIN_USERNAME_SETTING","LOGIN_PASSWORD_SETTING","LOGOUT_PATH_SETTING","defaultSettings","DEBUG_I18N_MESSAGE_NOT_FOUND","HIDE_NOTIFICATION_TIMEOUT","ALWAYS_COMMIT_FORM","RENDER_QUESTION_LABELS","RENDER_MANDATORY_ATTRIBUTE_INDICATION","RENDER_OPTIONAL_ATTRIBUTE_INDICATION","AVAILABLE_LIST_VIEWS","USE_CLIENTSIDE_VALIDATION","USE_INSTANT_SERVER_VALIDATION","ENABLED_LOCALES","RENDER_GLOBAL_LOGIN_PAGE","RENDER_GLOBAL_LOGOUT_PAGE","RENDER_MULTI_LOGIN_ON_GLOBAL_LOGOUT_PAGE","LOGIN_PATH","ADMINISTRATOR_LOGIN_PATH","LOGOUT_PATH","RENDER_FORMS_IN_MODAL","SHOW_SUBMIT_WAIT_TIMEOUT","SWIM_LANE_DIAGRAM_CONFIGURATION","BUSINESS_SCENARIO_CONCEPT_TYPE","BUSINESS_SCENARIO_STEP_CONCEPT_TYPE","BUSINESS_SCENARIO_PERSONA_CONCEPT_TYPE","DATE_INPUT_FORMAT","DATE_READONLY_FORMAT","CALENDAR_WEEK_STARTS_ON","CALENDAR_FIRST_WEEK_CONTAINS_DATE","UI_PARAMETERS","ALLOW_HIDE_WHEN_EMPTY_ON_TABS","PAGE_RELOAD_ON_UNAUTHORIZED_ERROR","XHR_TIMEOUT_MS","settings","setSettings","config","getSetting","key","defaultValue","undefined","Error","setSetting","value","allSettings","hasAllContentInData","loginType","loginPath","loginUsernameField","loginPasswordField","logoutPath"],"sources":["../../src/constants/Settings.js"],"sourcesContent":["// @flow\nimport { isPlainObject, has } from \"../utils/helpers/objects\";\nimport {\n ALL_CONTENT_IN_DATA_SETTING,\n LOGIN_TYPE,\n LOGIN_PATH_SETTING,\n LOGIN_USERNAME_SETTING,\n LOGIN_PASSWORD_SETTING,\n LOGOUT_PATH_SETTING,\n} from \"./Constants\";\n\ntype Setting = boolean | string | number | Array<string>;\n\nconst defaultSettings = {\n // Debug missing i18n messages in layout\n DEBUG_I18N_MESSAGE_NOT_FOUND: true,\n\n // Time to show the notification bar\n HIDE_NOTIFICATION_TIMEOUT: 5000,\n\n // Always commit form, does not show result pages for instruments\n ALWAYS_COMMIT_FORM: false,\n\n // Render instrument and event question labels on forms (might result in duplicate labels)\n RENDER_QUESTION_LABELS: true,\n\n // Render mandatory indications on attributes\n RENDER_MANDATORY_ATTRIBUTE_INDICATION: true,\n\n // Render optional indications on attributes\n RENDER_OPTIONAL_ATTRIBUTE_INDICATION: false,\n\n // Renders a toggle with supported list views, options are ListView and TableView\n AVAILABLE_LIST_VIEWS: [\"ListView\", \"TableView\"],\n\n // Toggle client side validation\n USE_CLIENTSIDE_VALIDATION: true,\n\n // Indicates if server validation should be used when a form field is changed\n USE_INSTANT_SERVER_VALIDATION: true,\n\n // Indicates which locales are enabled\n ENABLED_LOCALES: [\"en\", \"nl\"],\n\n // Renders the global log in page\n RENDER_GLOBAL_LOGIN_PAGE: false,\n\n // Renders the global log out page\n RENDER_GLOBAL_LOGOUT_PAGE: false,\n\n // Renders the login variants as option on the global logout page\n RENDER_MULTI_LOGIN_ON_GLOBAL_LOGOUT_PAGE: false,\n\n // Path to login page / component\n LOGIN_PATH: \"/signin\",\n\n // Path to administrator login page / component\n ADMINISTRATOR_LOGIN_PATH: \"\",\n\n // Path to logout page / component\n LOGOUT_PATH: \"/signout\",\n\n // Render forms in a modal\n RENDER_FORMS_IN_MODAL: true,\n\n // Wait timeout before rendering submit wait icon\n SHOW_SUBMIT_WAIT_TIMEOUT: 300,\n\n // Swim lane diagram configuration file\n SWIM_LANE_DIAGRAM_CONFIGURATION: \"/Library/Diagrams/Overviews.json\",\n\n // Business scenario concept types\n BUSINESS_SCENARIO_CONCEPT_TYPE: [\n \"/Library/KMTs/Business scenarios.bixml/BusinessScenario\",\n ],\n BUSINESS_SCENARIO_STEP_CONCEPT_TYPE: [\n \"/Library/KMTs/Business scenarios.bixml/ScenarioStep\",\n ],\n BUSINESS_SCENARIO_PERSONA_CONCEPT_TYPE: [\n \"/Library/KMTs/Business scenarios.bixml/Persona\",\n ],\n\n // Input format for dates. Without this setting having a value, the contributions format is used\n DATE_INPUT_FORMAT: \"\",\n\n // Readonly format for dates. Without this setting having a value, the contributions format is used\n DATE_READONLY_FORMAT: \"\",\n\n // indicates on what day the week starts (0 = Sunday)\n CALENDAR_WEEK_STARTS_ON: 1,\n\n // indicates which date indicates the first week of the year\n CALENDAR_FIRST_WEEK_CONTAINS_DATE: 1,\n\n // parameters that are added for the ui state, but should not be send to the modular ui\n UI_PARAMETERS: [],\n\n // disable hide-when-empty hint for layouts running on Be Informed versions older than 21.1\n ALLOW_HIDE_WHEN_EMPTY_ON_TABS: true,\n\n // reload the complete page on signout, usefull when third party authentication is in place\n PAGE_RELOAD_ON_UNAUTHORIZED_ERROR: false,\n\n XHR_TIMEOUT_MS: 300000,\n};\n\nlet settings = defaultSettings;\n\n/**\n */\nexport const setSettings = (config: Object) => {\n if (isPlainObject(config)) {\n settings = Object.assign(defaultSettings, config);\n }\n};\n\n/**\n */\nexport const getSetting = (key: string, defaultValue?: any): any => {\n if (!has(settings, key) && defaultValue === undefined) {\n throw new Error(\n `Setting with name ${key} not found and no defaultValue given`\n );\n }\n\n return settings[key] ?? defaultValue;\n};\n\n/**\n */\nexport const setSetting = (key: string, value: any) => {\n settings[key] = value;\n};\n\n/**\n */\nexport const allSettings = (): { [name: string]: Setting } => settings;\n\n/**\n */\nexport const hasAllContentInData = (): boolean =>\n getSetting(ALL_CONTENT_IN_DATA_SETTING, true);\n\n/**\n * Login type, only available when pac4j is configured\n */\nexport const loginType = (): string => getSetting(LOGIN_TYPE, \"JAAS\");\n\n/**\n */\nexport const loginPath = (): string =>\n getSetting(LOGIN_PATH_SETTING, \"/j_security_check\");\n/**\n */\nexport const loginUsernameField = (): string =>\n getSetting(LOGIN_USERNAME_SETTING, \"j_username\");\n/**\n */\nexport const loginPasswordField = (): string =>\n getSetting(LOGIN_PASSWORD_SETTING, \"j_password\");\n/**\n */\nexport const logoutPath = (): string =>\n getSetting(LOGOUT_PATH_SETTING, \"/Logoff\");\n"],"mappings":"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"}
@@ -1,25 +1,47 @@
1
+ import _concatInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/concat";
1
2
  import { useSelector, useDispatch } from "react-redux";
2
3
  import { getApplication } from "../redux/_modularui/selectors";
3
4
  import { login as _login, logout as _logout, resetAuthErrors } from "../redux/actions";
5
+ import Cache from "../utils/browser/Cache";
6
+ import { BASE, getSetting } from "../constants";
7
+ import { IllegalStateException } from "../exceptions";
4
8
 
5
9
  /**
6
10
  */
7
11
  export var useLogin = function useLogin() {
8
- var _application$isLogged;
12
+ var _application$isLogged, _application$authenti;
9
13
 
14
+ Cache.setItem("isRedirectLogin", false);
10
15
  var dispatch = useDispatch();
11
16
  var application = useSelector(getApplication);
12
17
  var auth = useSelector(function (state) {
13
18
  return state.auth;
14
19
  });
20
+ var isAuthenticated = (_application$isLogged = application === null || application === void 0 ? void 0 : application.isLoggedIn) !== null && _application$isLogged !== void 0 ? _application$isLogged : false;
15
21
  return {
16
- isAuthenticated: (_application$isLogged = application === null || application === void 0 ? void 0 : application.isLoggedIn) !== null && _application$isLogged !== void 0 ? _application$isLogged : false,
22
+ isAuthenticated: isAuthenticated,
23
+ authenticationTypes: (_application$authenti = application === null || application === void 0 ? void 0 : application.authenticationTypes) !== null && _application$authenti !== void 0 ? _application$authenti : [],
17
24
  errorMessage: auth.error,
18
25
  resetErrors: function resetErrors() {
19
26
  return dispatch(resetAuthErrors());
20
27
  },
21
28
  login: function login(username, password) {
22
29
  return dispatch(_login(username, password));
30
+ },
31
+ redirectLogin: function redirectLogin(authenticationType) {
32
+ if (Cache.getItem("isRedirectLogin")) {
33
+ var _context;
34
+
35
+ // prevent endless loop in redirects when authentication type can't be redirected
36
+ throw new IllegalStateException(_concatInstanceProperty(_context = "Could not redirect to '".concat(authenticationType.authentication, "' using url: '")).call(_context, authenticationType.redirectUri, "'"));
37
+ }
38
+
39
+ if (!isAuthenticated) {
40
+ var _context2;
41
+
42
+ Cache.setItem("isRedirectLogin", true);
43
+ window.location.assign(_concatInstanceProperty(_context2 = "".concat(BASE)).call(_context2, authenticationType.redirectUri));
44
+ }
23
45
  }
24
46
  };
25
47
  };
@@ -27,14 +49,28 @@ export var useLogin = function useLogin() {
27
49
  */
28
50
 
29
51
  export var useLogout = function useLogout() {
30
- var _application$isLogged2;
52
+ var _application$isLogged2, _application$authenti2;
31
53
 
32
54
  var dispatch = useDispatch();
33
55
  var application = useSelector(getApplication);
56
+ var LOGOUT_PATH = getSetting("LOGOUT_PATH", "/signout");
57
+ var isAuthenticated = (_application$isLogged2 = application === null || application === void 0 ? void 0 : application.isLoggedIn) !== null && _application$isLogged2 !== void 0 ? _application$isLogged2 : false;
34
58
  return {
35
- isAuthenticated: (_application$isLogged2 = application === null || application === void 0 ? void 0 : application.isLoggedIn) !== null && _application$isLogged2 !== void 0 ? _application$isLogged2 : false,
59
+ isAuthenticated: isAuthenticated,
60
+ authenticationTypes: (_application$authenti2 = application === null || application === void 0 ? void 0 : application.authenticationTypes) !== null && _application$authenti2 !== void 0 ? _application$authenti2 : [],
36
61
  logout: function logout() {
37
- return dispatch(_logout());
62
+ if (Cache.getItem("isRedirectLogin")) {
63
+ var _context3, _context4, _context5, _context6;
64
+
65
+ var origin = window.location.origin;
66
+
67
+ var url = _concatInstanceProperty(_context3 = _concatInstanceProperty(_context4 = _concatInstanceProperty(_context5 = _concatInstanceProperty(_context6 = "".concat(origin)).call(_context6, BASE, "/logout?url=")).call(_context5, origin)).call(_context4, BASE)).call(_context3, LOGOUT_PATH);
68
+
69
+ Cache.setItem("isRedirectLogin", false);
70
+ window.location.assign(url);
71
+ } else {
72
+ return dispatch(_logout());
73
+ }
38
74
  }
39
75
  };
40
76
  };
@@ -1 +1 @@
1
- {"version":3,"file":"useAuthentication.js","names":["useSelector","useDispatch","getApplication","login","logout","resetAuthErrors","useLogin","dispatch","application","auth","state","isAuthenticated","isLoggedIn","errorMessage","error","resetErrors","username","password","useLogout"],"sources":["../../src/hooks/useAuthentication.js"],"sourcesContent":["// @flow\nimport { useSelector, useDispatch } from \"react-redux\";\n\nimport { getApplication } from \"../redux/_modularui/selectors\";\nimport { login, logout, resetAuthErrors } from \"../redux/actions\";\n\nimport type { ResetAuthErrorsAction } from \"../redux/types\";\ntype LoginHook = {\n isAuthenticated: boolean,\n errorMessage: ?string,\n resetErrors: () => ResetAuthErrorsAction,\n login: (username: string, password: string) => void,\n};\ntype LogoutHook = {\n isAuthenticated: boolean,\n logout: () => void,\n};\n\n/**\n */\nexport const useLogin = (): LoginHook => {\n const dispatch = useDispatch();\n\n const application = useSelector(getApplication);\n const auth = useSelector((state) => state.auth);\n\n return {\n isAuthenticated: application?.isLoggedIn ?? false,\n errorMessage: auth.error,\n resetErrors: () => dispatch(resetAuthErrors()),\n login: (username: string, password: string) =>\n dispatch(login(username, password)),\n };\n};\n\n/**\n */\nexport const useLogout = (): LogoutHook => {\n const dispatch = useDispatch();\n const application = useSelector(getApplication);\n\n return {\n isAuthenticated: application?.isLoggedIn ?? false,\n logout: () => dispatch(logout()),\n };\n};\n"],"mappings":"AACA,SAASA,WAAT,EAAsBC,WAAtB,QAAyC,aAAzC;AAEA,SAASC,cAAT,QAA+B,+BAA/B;AACA,SAASC,KAAK,IAALA,MAAT,EAAgBC,MAAM,IAANA,OAAhB,EAAwBC,eAAxB,QAA+C,kBAA/C;;AAcA;AACA;AACA,OAAO,IAAMC,QAAQ,GAAG,SAAXA,QAAW,GAAiB;EAAA;;EACvC,IAAMC,QAAQ,GAAGN,WAAW,EAA5B;EAEA,IAAMO,WAAW,GAAGR,WAAW,CAACE,cAAD,CAA/B;EACA,IAAMO,IAAI,GAAGT,WAAW,CAAC,UAACU,KAAD;IAAA,OAAWA,KAAK,CAACD,IAAjB;EAAA,CAAD,CAAxB;EAEA,OAAO;IACLE,eAAe,2BAAEH,WAAF,aAAEA,WAAF,uBAAEA,WAAW,CAAEI,UAAf,yEAA6B,KADvC;IAELC,YAAY,EAAEJ,IAAI,CAACK,KAFd;IAGLC,WAAW,EAAE;MAAA,OAAMR,QAAQ,CAACF,eAAe,EAAhB,CAAd;IAAA,CAHR;IAILF,KAAK,EAAE,eAACa,QAAD,EAAmBC,QAAnB;MAAA,OACLV,QAAQ,CAACJ,MAAK,CAACa,QAAD,EAAWC,QAAX,CAAN,CADH;IAAA;EAJF,CAAP;AAOD,CAbM;AAeP;AACA;;AACA,OAAO,IAAMC,SAAS,GAAG,SAAZA,SAAY,GAAkB;EAAA;;EACzC,IAAMX,QAAQ,GAAGN,WAAW,EAA5B;EACA,IAAMO,WAAW,GAAGR,WAAW,CAACE,cAAD,CAA/B;EAEA,OAAO;IACLS,eAAe,4BAAEH,WAAF,aAAEA,WAAF,uBAAEA,WAAW,CAAEI,UAAf,2EAA6B,KADvC;IAELR,MAAM,EAAE;MAAA,OAAMG,QAAQ,CAACH,OAAM,EAAP,CAAd;IAAA;EAFH,CAAP;AAID,CARM"}
1
+ {"version":3,"file":"useAuthentication.js","names":["useSelector","useDispatch","getApplication","login","logout","resetAuthErrors","Cache","BASE","getSetting","IllegalStateException","useLogin","setItem","dispatch","application","auth","state","isAuthenticated","isLoggedIn","authenticationTypes","errorMessage","error","resetErrors","username","password","redirectLogin","authenticationType","getItem","authentication","redirectUri","window","location","assign","useLogout","LOGOUT_PATH","origin","url"],"sources":["../../src/hooks/useAuthentication.js"],"sourcesContent":["// @flow\nimport { useSelector, useDispatch } from \"react-redux\";\n\nimport { getApplication } from \"../redux/_modularui/selectors\";\nimport { login, logout, resetAuthErrors } from \"../redux/actions\";\n\nimport Cache from \"../utils/browser/Cache\";\nimport { BASE, getSetting } from \"../constants\";\n\nimport type { ResetAuthErrorsAction } from \"../redux/types\";\nimport type { AuthenticationType } from \"../models/types\";\nimport { IllegalStateException } from \"../exceptions\";\ntype LoginHook = {\n isAuthenticated: boolean,\n authenticationTypes: Array<AuthenticationType>,\n errorMessage: ?string,\n resetErrors: () => ResetAuthErrorsAction,\n login: (username: string, password: string) => void,\n redirectLogin: (authenticationType: AuthenticationType) => void,\n};\ntype LogoutHook = {\n isAuthenticated: boolean,\n authenticationTypes: Array<AuthenticationType>,\n logout: () => void,\n};\n\n/**\n */\nexport const useLogin = (): LoginHook => {\n Cache.setItem(\"isRedirectLogin\", false);\n\n const dispatch = useDispatch();\n\n const application = useSelector(getApplication);\n const auth = useSelector((state) => state.auth);\n\n const isAuthenticated = application?.isLoggedIn ?? false;\n\n return {\n isAuthenticated,\n authenticationTypes: application?.authenticationTypes ?? [],\n errorMessage: auth.error,\n resetErrors: () => dispatch(resetAuthErrors()),\n login: (username: string, password: string) =>\n dispatch(login(username, password)),\n redirectLogin: (authenticationType: AuthenticationType) => {\n if (Cache.getItem(\"isRedirectLogin\")) {\n // prevent endless loop in redirects when authentication type can't be redirected\n throw new IllegalStateException(\n `Could not redirect to '${authenticationType.authentication}' using url: '${authenticationType.redirectUri}'`\n );\n }\n\n if (!isAuthenticated) {\n Cache.setItem(\"isRedirectLogin\", true);\n window.location.assign(`${BASE}${authenticationType.redirectUri}`);\n }\n },\n };\n};\n\n/**\n */\nexport const useLogout = (): LogoutHook => {\n const dispatch = useDispatch();\n const application = useSelector(getApplication);\n\n const LOGOUT_PATH = getSetting(\"LOGOUT_PATH\", \"/signout\");\n\n const isAuthenticated = application?.isLoggedIn ?? false;\n return {\n isAuthenticated,\n authenticationTypes: application?.authenticationTypes ?? [],\n logout: () => {\n if (Cache.getItem(\"isRedirectLogin\")) {\n const origin = window.location.origin;\n const url = `${origin}${BASE}/logout?url=${origin}${BASE}${LOGOUT_PATH}`;\n Cache.setItem(\"isRedirectLogin\", false);\n window.location.assign(url);\n } else {\n return dispatch(logout());\n }\n },\n };\n};\n"],"mappings":"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"}
@@ -30,6 +30,7 @@ export default {
30
30
  "Constraint.File.InvalidFormat": "Must meet the requirements of the file name",
31
31
  "Constraint.File.InvalidMimeType": "Allowed mime types are: ${mime-types}",
32
32
  "Constraint.File.MaxFileSizeExceeded": "Maximum file upload size is ${max-filesize}",
33
+ "Constraint.File.OnlyAllowsOneFile": "Only one file is allowed",
33
34
  "Constraint.IBAN.InvalidFormat": "Must be a valid IBAN number",
34
35
  "Constraint.InvalidLengthBetween": "Length must be between ${min-length} and ${max-length} characters",
35
36
  "Constraint.InvalidLengthExact": "Length must be precisely ${length} characters",
@@ -64,7 +65,7 @@ export default {
64
65
  "Constraint.TimeStampRange.InvalidRange": "Start value must be before end value",
65
66
  "Constraint.TimeStampRange.Mandatory": "Field is mandatory: must contain at least a start or end value",
66
67
  "Constraint.XML.InvalidFormat": "Must be well-formed XML",
67
- "Constraint.ZipCode.InvalidFormat": "Must be a valid Dutch ZIP code, e.g. 1234 AB",
68
+ "Constraint.ZipCode.InvalidFormat": "Must be a valid Dutch ZIP code, e.g. 1234AB",
68
69
  "Error.AcceptHeaderRequired": "The 'Accept' request-header field must be provided",
69
70
  "Error.Authentication.BlockedUser": "You have been logged out, because your account has been blocked",
70
71
  "Error.Authentication.ConcurrentUser": "You have been logged out, since your username has been used at a different location.",
@@ -75,7 +76,7 @@ export default {
75
76
  "Error.ChangePasswordRequired": "User password is initial or expired, and must be changed ",
76
77
  "Error.CodemapLookup.InvalidToken": "Token for codemap lookup is not valid",
77
78
  "Error.DataStore.ConcurrentModification": "Another user has updated a record used in this task",
78
- "Error.DataStore.RecordAlreadyExists": "Row cannot be overwritten because it already exists",
79
+ "Error.DataStore.RecordAlreadyExists": "",
79
80
  "Error.DataStore.RowCannotBeLocked": "Another user has already locked a record used in this task",
80
81
  "Error.Form.DataNotAvailableForId": "Service can not be completed, data not available for mandatory element ${elementid}",
81
82
  "Error.Form.ObjectNotAllowed": "Object '${objectid}' is not allowed",
@@ -1 +1 @@
1
- {"version":3,"file":"beinformed_error_messages_en.nl.js","names":[],"sources":["../../../src/i18n/translations/beinformed_error_messages_en.nl.js"],"sourcesContent":["// @flow\n// prettier-ignore\nexport default {\n \"Constraint.Attribute.IncorrectValue\": \"Incorrect value\",\n \"Constraint.Boolean.InvalidValue\": \"Invalid boolean value, only values 'true' or 'false' are valid\",\n \"Constraint.BSN.InvalidFormat\": \"Must be a valid BSN\",\n \"Constraint.Captcha.InvalidToken\": \"The captcha is invalid\",\n \"Constraint.Choice.ConflictingAnswer\": \"Cannot select '${answer-option-key}' because this is not a relevant option, given the other answers\",\n \"Constraint.Choice.ConflictingOptions\": \"Cannot select '${answer-option-key1}' and '${answer-option-key2}' at the same time\",\n \"Constraint.Choice.InvalidOption\": \"Allowed options are: ${options}\",\n \"Constraint.Choice.InvalidOption.General\": \"Value '${value}' is not allowed\",\n \"Constraint.Choice.MultipleNotAllowed\": \"Selecting multiple options is not allowed\",\n \"Constraint.ConfirmCurrentPassword.Invalid\": \"Must match the current password\",\n \"Constraint.Date.AboveMaximum\": \"Must be on or before ${max-date}\",\n \"Constraint.Date.BelowMinimum\": \"Must be on or after ${min-date}\",\n \"Constraint.Date.InvalidFormat\": \"Must be entered in the format ${format}\",\n \"Constraint.Date.NotOnDate\": \"Must be on ${date}\",\n \"Constraint.Date.OutOfRange\": \"Must be between ${min-date} and ${max-date}\",\n \"Constraint.DateRange.InvalidRange\": \"Start date must be before end date\",\n \"Constraint.DateRange.Mandatory\": \"Field is mandatory: must contain at least a start or end date\",\n \"Constraint.DateTime.AboveMaximum\": \"Must be before ${max-date-time}\",\n \"Constraint.DateTime.BelowMinimum\": \"Must be at ${min-date-time} or after\",\n \"Constraint.DateTime.InvalidFormat\": \"Must be entered in the format ${format}\",\n \"Constraint.DateTime.OutOfRange\": \"Must be between ${min-date-time} and ${max-date-time}\",\n \"Constraint.DateTimeRange.InvalidRange\": \"Start date-time must be before end date-time\",\n \"Constraint.DateTimeRange.Mandatory\": \"Field is mandatory: must contain at least a start or end date-time\",\n \"Constraint.Document.MimeTypeNotAllowed\": \"The document mime type is not valid for the selected document type\",\n \"Constraint.Email.InvalidFormat\": \"Must be a valid e-mail address\",\n \"Constraint.File.DataEmpty\": \"File does not exist or has no content\",\n \"Constraint.File.InvalidExtension\": \"Allowed extensions are: ${extensions}\",\n \"Constraint.File.InvalidFormat\": \"Must meet the requirements of the file name\",\n \"Constraint.File.InvalidMimeType\": \"Allowed mime types are: ${mime-types}\",\n \"Constraint.File.MaxFileSizeExceeded\": \"Maximum file upload size is ${max-filesize}\",\n \"Constraint.IBAN.InvalidFormat\": \"Must be a valid IBAN number\",\n \"Constraint.InvalidLengthBetween\": \"Length must be between ${min-length} and ${max-length} characters\",\n \"Constraint.InvalidLengthExact\": \"Length must be precisely ${length} characters\",\n \"Constraint.InvalidLengthTooLong\": \"Length must not be larger than ${max-length} characters\",\n \"Constraint.InvalidLengthTooShort\": \"Length must be at least ${min-length} characters\",\n \"Constraint.InvalidRegularExpression\": \"The value is not according the given regular expression ${regexp}\",\n \"Constraint.Mandatory\": \"Field is mandatory\",\n \"Constraint.Missing\": \"Field is mandatory\",\n \"Constraint.Number.AboveMaximum\": \"Must be at most ${max-number}\",\n \"Constraint.Number.BelowMinimum\": \"Must be at least ${min-number}\",\n \"Constraint.Number.InvalidDecimal\": \"Must be a number with up to ${max-digits} decimal places\",\n \"Constraint.Number.InvalidInteger\": \"Must be a whole number\",\n \"Constraint.Number.InvalidLong\": \"Must be a whole number\",\n \"Constraint.Number.OutOfRange\": \"Must be between ${min-number} and ${max-number}\",\n \"Constraint.NumberRange.BothFieldsMandatory\": \"Must contain start and end value\",\n \"Constraint.NumberRange.InvalidRange\": \"Start value must be less than the end value\",\n \"Constraint.NumberRange.Mandatory\": \"Field is mandatory: must contain at least a start or end value\",\n \"Constraint.Password.AlreadyUsed\": \"Must not have been used before\",\n \"Constraint.Password.LowerAndUpperCaseMandatory\": \"Must contain both upper and lowercase characters\",\n \"Constraint.Password.MinNumericCharactersMandatory\": \"Must contain ${min-numeric} or more numerical characters\",\n \"Constraint.Password.MinSpecialCharactersMandatory\": \"Must contain ${min-special} or more special characters\",\n \"Constraint.Password.ThreeConsecutiveCharactersNotAllowed\": \"Must not contain any character more than twice consecutively\",\n \"Constraint.Password.Unchanged\": \"Must not be the same as the old password\",\n \"Constraint.Password.UserNameSubstringNotAllowed\": \"Must not have 5 consecutive characters from username\",\n \"Constraint.SortParameter.InvalidValue\": \"Invalid sort parameter. Allowed values: field+[asc|desc]\",\n \"Constraint.Time.InvalidFormat\": \"Must be entered in the format ${format}\",\n \"Constraint.TimeRange.InvalidRange\": \"Start time must be before end time\",\n \"Constraint.TimeRange.Mandatory\": \"Field is mandatory: must contain at least a start or end time\",\n \"Constraint.TimeStamp.AboveMaximum\": \"Must be on or before ${max-date}\",\n \"Constraint.TimeStamp.BelowMinimum\": \"Must be on or after ${min-date}\",\n \"Constraint.Timestamp.InvalidFormat\": \"Must be entered in the format ${format}\",\n \"Constraint.TimeStampRange.InvalidRange\": \"Start value must be before end value\",\n \"Constraint.TimeStampRange.Mandatory\": \"Field is mandatory: must contain at least a start or end value\",\n \"Constraint.XML.InvalidFormat\": \"Must be well-formed XML\",\n \"Constraint.ZipCode.InvalidFormat\": \"Must be a valid Dutch ZIP code, e.g. 1234 AB\",\n \"Error.AcceptHeaderRequired\": \"The 'Accept' request-header field must be provided\",\n \"Error.Authentication.BlockedUser\": \"You have been logged out, because your account has been blocked\",\n \"Error.Authentication.ConcurrentUser\": \"You have been logged out, since your username has been used at a different location.\",\n \"Error.Authentication.InvalidCredentials\": \"Authentication failed\",\n \"Error.Authentication.InvalidUsername\": \"You have been logged out, because your username is not valid anymore\",\n \"Error.Authentication.Required\": \"Authentication is required\",\n \"Error.Case.ConcurrentModification\": \"Another user has updated a case used in this task. As a result, this task can not be completed.\",\n \"Error.ChangePasswordRequired\": \"User password is initial or expired, and must be changed \",\n \"Error.CodemapLookup.InvalidToken\": \"Token for codemap lookup is not valid\",\n \"Error.DataStore.ConcurrentModification\": \"Another user has updated a record used in this task\",\n \"Error.DataStore.RecordAlreadyExists\": \"Row cannot be overwritten because it already exists\",\n \"Error.DataStore.RowCannotBeLocked\": \"Another user has already locked a record used in this task\",\n \"Error.Form.DataNotAvailableForId\": \"Service can not be completed, data not available for mandatory element ${elementid}\",\n \"Error.Form.ObjectNotAllowed\": \"Object '${objectid}' is not allowed\",\n \"Error.Form.ReadOnlyElementId\": \"Element '${elementid}' is read only\",\n \"Error.Form.TooManyObjects\": \"Too many objects '${objectid}' provided\",\n \"Error.Form.UndefinedElementId\": \"Undefined element '${elementid}'\",\n \"Error.Form.UndefinedObject\": \"Undefined object(s) '${objectid}'\",\n \"Error.GeneralError\": \"An unexpected error occurred\",\n \"Error.MethodNotAllowed\": \"The given HTTP method is not allowed for this resource\",\n \"Error.Parameter.InvalidValue\": \"The parameter contains characters that are not allowed\",\n \"Error.Parameter.Mandatory\": \"Parameter ${parameter} is mandatory\",\n \"Error.Parameter.NotAllowed\": \"Parameter '${parameter}' is not allowed\",\n \"Error.ResourceNotFound\": \"The requested resource cannot be found\",\n \"Validation.StandardCreateAndUpdateUserTask.PasswordsDoNotMatch\": \"Password and password confirmation do not match.\",\n \"Validation.StandardCreateAndUpdateUserTask.UserEmailAlreadyExists\": \"A user with email address '${Email}' already exists\",\n \"Validation.StandardCreateAndUpdateUserTask.UserNameAlreadyExists\": \"A user with username '${Username}' already exists\",\n \"Validation.StandardCreateOrganizationTask.OrganizationAlreadyExists\": \"An organization with id '${ID}' already exists\"\n}\n"],"mappings":"AACA;AACA,eAAe;EACb,uCAAuC,iBAD1B;EAEb,mCAAmC,gEAFtB;EAGb,gCAAgC,qBAHnB;EAIb,mCAAmC,wBAJtB;EAKb,uCAAuC,qGAL1B;EAMb,wCAAwC,oFAN3B;EAOb,mCAAmC,iCAPtB;EAQb,2CAA2C,iCAR9B;EASb,wCAAwC,2CAT3B;EAUb,6CAA6C,iCAVhC;EAWb,gCAAgC,kCAXnB;EAYb,gCAAgC,iCAZnB;EAab,iCAAiC,yCAbpB;EAcb,6BAA6B,oBAdhB;EAeb,8BAA8B,6CAfjB;EAgBb,qCAAqC,oCAhBxB;EAiBb,kCAAkC,+DAjBrB;EAkBb,oCAAoC,iCAlBvB;EAmBb,oCAAoC,sCAnBvB;EAoBb,qCAAqC,yCApBxB;EAqBb,kCAAkC,uDArBrB;EAsBb,yCAAyC,8CAtB5B;EAuBb,sCAAsC,oEAvBzB;EAwBb,0CAA0C,oEAxB7B;EAyBb,kCAAkC,gCAzBrB;EA0Bb,6BAA6B,uCA1BhB;EA2Bb,oCAAoC,uCA3BvB;EA4Bb,iCAAiC,6CA5BpB;EA6Bb,mCAAmC,uCA7BtB;EA8Bb,uCAAuC,6CA9B1B;EA+Bb,iCAAiC,6BA/BpB;EAgCb,mCAAmC,mEAhCtB;EAiCb,iCAAiC,+CAjCpB;EAkCb,mCAAmC,yDAlCtB;EAmCb,oCAAoC,kDAnCvB;EAoCb,uCAAuC,mEApC1B;EAqCb,wBAAwB,oBArCX;EAsCb,sBAAsB,oBAtCT;EAuCb,kCAAkC,+BAvCrB;EAwCb,kCAAkC,gCAxCrB;EAyCb,oCAAoC,0DAzCvB;EA0Cb,oCAAoC,wBA1CvB;EA2Cb,iCAAiC,wBA3CpB;EA4Cb,gCAAgC,iDA5CnB;EA6Cb,8CAA8C,kCA7CjC;EA8Cb,uCAAuC,6CA9C1B;EA+Cb,oCAAoC,gEA/CvB;EAgDb,mCAAmC,gCAhDtB;EAiDb,kDAAkD,kDAjDrC;EAkDb,qDAAqD,0DAlDxC;EAmDb,qDAAqD,wDAnDxC;EAoDb,4DAA4D,8DApD/C;EAqDb,iCAAiC,0CArDpB;EAsDb,mDAAmD,sDAtDtC;EAuDb,yCAAyC,0DAvD5B;EAwDb,iCAAiC,yCAxDpB;EAyDb,qCAAqC,oCAzDxB;EA0Db,kCAAkC,+DA1DrB;EA2Db,qCAAqC,kCA3DxB;EA4Db,qCAAqC,iCA5DxB;EA6Db,sCAAsC,yCA7DzB;EA8Db,0CAA0C,sCA9D7B;EA+Db,uCAAuC,gEA/D1B;EAgEb,gCAAgC,yBAhEnB;EAiEb,oCAAoC,8CAjEvB;EAkEb,8BAA8B,oDAlEjB;EAmEb,oCAAoC,iEAnEvB;EAoEb,uCAAuC,sFApE1B;EAqEb,2CAA2C,uBArE9B;EAsEb,wCAAwC,sEAtE3B;EAuEb,iCAAiC,4BAvEpB;EAwEb,qCAAqC,iGAxExB;EAyEb,gCAAgC,2DAzEnB;EA0Eb,oCAAoC,uCA1EvB;EA2Eb,0CAA0C,qDA3E7B;EA4Eb,uCAAuC,qDA5E1B;EA6Eb,qCAAqC,4DA7ExB;EA8Eb,oCAAoC,qFA9EvB;EA+Eb,+BAA+B,qCA/ElB;EAgFb,gCAAgC,qCAhFnB;EAiFb,6BAA6B,yCAjFhB;EAkFb,iCAAiC,kCAlFpB;EAmFb,8BAA8B,mCAnFjB;EAoFb,sBAAsB,8BApFT;EAqFb,0BAA0B,wDArFb;EAsFb,gCAAgC,wDAtFnB;EAuFb,6BAA6B,qCAvFhB;EAwFb,8BAA8B,yCAxFjB;EAyFb,0BAA0B,wCAzFb;EA0Fb,kEAAkE,kDA1FrD;EA2Fb,qEAAqE,qDA3FxD;EA4Fb,oEAAoE,mDA5FvD;EA6Fb,uEAAuE;AA7F1D,CAAf"}
1
+ {"version":3,"file":"beinformed_error_messages_en.nl.js","names":[],"sources":["../../../src/i18n/translations/beinformed_error_messages_en.nl.js"],"sourcesContent":["// @flow\n// prettier-ignore\nexport default {\n \"Constraint.Attribute.IncorrectValue\": \"Incorrect value\",\n \"Constraint.Boolean.InvalidValue\": \"Invalid boolean value, only values 'true' or 'false' are valid\",\n \"Constraint.BSN.InvalidFormat\": \"Must be a valid BSN\",\n \"Constraint.Captcha.InvalidToken\": \"The captcha is invalid\",\n \"Constraint.Choice.ConflictingAnswer\": \"Cannot select '${answer-option-key}' because this is not a relevant option, given the other answers\",\n \"Constraint.Choice.ConflictingOptions\": \"Cannot select '${answer-option-key1}' and '${answer-option-key2}' at the same time\",\n \"Constraint.Choice.InvalidOption\": \"Allowed options are: ${options}\",\n \"Constraint.Choice.InvalidOption.General\": \"Value '${value}' is not allowed\",\n \"Constraint.Choice.MultipleNotAllowed\": \"Selecting multiple options is not allowed\",\n \"Constraint.ConfirmCurrentPassword.Invalid\": \"Must match the current password\",\n \"Constraint.Date.AboveMaximum\": \"Must be on or before ${max-date}\",\n \"Constraint.Date.BelowMinimum\": \"Must be on or after ${min-date}\",\n \"Constraint.Date.InvalidFormat\": \"Must be entered in the format ${format}\",\n \"Constraint.Date.NotOnDate\": \"Must be on ${date}\",\n \"Constraint.Date.OutOfRange\": \"Must be between ${min-date} and ${max-date}\",\n \"Constraint.DateRange.InvalidRange\": \"Start date must be before end date\",\n \"Constraint.DateRange.Mandatory\": \"Field is mandatory: must contain at least a start or end date\",\n \"Constraint.DateTime.AboveMaximum\": \"Must be before ${max-date-time}\",\n \"Constraint.DateTime.BelowMinimum\": \"Must be at ${min-date-time} or after\",\n \"Constraint.DateTime.InvalidFormat\": \"Must be entered in the format ${format}\",\n \"Constraint.DateTime.OutOfRange\": \"Must be between ${min-date-time} and ${max-date-time}\",\n \"Constraint.DateTimeRange.InvalidRange\": \"Start date-time must be before end date-time\",\n \"Constraint.DateTimeRange.Mandatory\": \"Field is mandatory: must contain at least a start or end date-time\",\n \"Constraint.Document.MimeTypeNotAllowed\": \"The document mime type is not valid for the selected document type\",\n \"Constraint.Email.InvalidFormat\": \"Must be a valid e-mail address\",\n \"Constraint.File.DataEmpty\": \"File does not exist or has no content\",\n \"Constraint.File.InvalidExtension\": \"Allowed extensions are: ${extensions}\",\n \"Constraint.File.InvalidFormat\": \"Must meet the requirements of the file name\",\n \"Constraint.File.InvalidMimeType\": \"Allowed mime types are: ${mime-types}\",\n \"Constraint.File.MaxFileSizeExceeded\": \"Maximum file upload size is ${max-filesize}\",\n \"Constraint.File.OnlyAllowsOneFile\": \"Only one file is allowed\",\n \"Constraint.IBAN.InvalidFormat\": \"Must be a valid IBAN number\",\n \"Constraint.InvalidLengthBetween\": \"Length must be between ${min-length} and ${max-length} characters\",\n \"Constraint.InvalidLengthExact\": \"Length must be precisely ${length} characters\",\n \"Constraint.InvalidLengthTooLong\": \"Length must not be larger than ${max-length} characters\",\n \"Constraint.InvalidLengthTooShort\": \"Length must be at least ${min-length} characters\",\n \"Constraint.InvalidRegularExpression\": \"The value is not according the given regular expression ${regexp}\",\n \"Constraint.Mandatory\": \"Field is mandatory\",\n \"Constraint.Missing\": \"Field is mandatory\",\n \"Constraint.Number.AboveMaximum\": \"Must be at most ${max-number}\",\n \"Constraint.Number.BelowMinimum\": \"Must be at least ${min-number}\",\n \"Constraint.Number.InvalidDecimal\": \"Must be a number with up to ${max-digits} decimal places\",\n \"Constraint.Number.InvalidInteger\": \"Must be a whole number\",\n \"Constraint.Number.InvalidLong\": \"Must be a whole number\",\n \"Constraint.Number.OutOfRange\": \"Must be between ${min-number} and ${max-number}\",\n \"Constraint.NumberRange.BothFieldsMandatory\": \"Must contain start and end value\",\n \"Constraint.NumberRange.InvalidRange\": \"Start value must be less than the end value\",\n \"Constraint.NumberRange.Mandatory\": \"Field is mandatory: must contain at least a start or end value\",\n \"Constraint.Password.AlreadyUsed\": \"Must not have been used before\",\n \"Constraint.Password.LowerAndUpperCaseMandatory\": \"Must contain both upper and lowercase characters\",\n \"Constraint.Password.MinNumericCharactersMandatory\": \"Must contain ${min-numeric} or more numerical characters\",\n \"Constraint.Password.MinSpecialCharactersMandatory\": \"Must contain ${min-special} or more special characters\",\n \"Constraint.Password.ThreeConsecutiveCharactersNotAllowed\": \"Must not contain any character more than twice consecutively\",\n \"Constraint.Password.Unchanged\": \"Must not be the same as the old password\",\n \"Constraint.Password.UserNameSubstringNotAllowed\": \"Must not have 5 consecutive characters from username\",\n \"Constraint.SortParameter.InvalidValue\": \"Invalid sort parameter. Allowed values: field+[asc|desc]\",\n \"Constraint.Time.InvalidFormat\": \"Must be entered in the format ${format}\",\n \"Constraint.TimeRange.InvalidRange\": \"Start time must be before end time\",\n \"Constraint.TimeRange.Mandatory\": \"Field is mandatory: must contain at least a start or end time\",\n \"Constraint.TimeStamp.AboveMaximum\": \"Must be on or before ${max-date}\",\n \"Constraint.TimeStamp.BelowMinimum\": \"Must be on or after ${min-date}\",\n \"Constraint.Timestamp.InvalidFormat\": \"Must be entered in the format ${format}\",\n \"Constraint.TimeStampRange.InvalidRange\": \"Start value must be before end value\",\n \"Constraint.TimeStampRange.Mandatory\": \"Field is mandatory: must contain at least a start or end value\",\n \"Constraint.XML.InvalidFormat\": \"Must be well-formed XML\",\n \"Constraint.ZipCode.InvalidFormat\": \"Must be a valid Dutch ZIP code, e.g. 1234AB\",\n \"Error.AcceptHeaderRequired\": \"The 'Accept' request-header field must be provided\",\n \"Error.Authentication.BlockedUser\": \"You have been logged out, because your account has been blocked\",\n \"Error.Authentication.ConcurrentUser\": \"You have been logged out, since your username has been used at a different location.\",\n \"Error.Authentication.InvalidCredentials\": \"Authentication failed\",\n \"Error.Authentication.InvalidUsername\": \"You have been logged out, because your username is not valid anymore\",\n \"Error.Authentication.Required\": \"Authentication is required\",\n \"Error.Case.ConcurrentModification\": \"Another user has updated a case used in this task. As a result, this task can not be completed.\",\n \"Error.ChangePasswordRequired\": \"User password is initial or expired, and must be changed \",\n \"Error.CodemapLookup.InvalidToken\": \"Token for codemap lookup is not valid\",\n \"Error.DataStore.ConcurrentModification\": \"Another user has updated a record used in this task\",\n \"Error.DataStore.RecordAlreadyExists\": \"\",\n \"Error.DataStore.RowCannotBeLocked\": \"Another user has already locked a record used in this task\",\n \"Error.Form.DataNotAvailableForId\": \"Service can not be completed, data not available for mandatory element ${elementid}\",\n \"Error.Form.ObjectNotAllowed\": \"Object '${objectid}' is not allowed\",\n \"Error.Form.ReadOnlyElementId\": \"Element '${elementid}' is read only\",\n \"Error.Form.TooManyObjects\": \"Too many objects '${objectid}' provided\",\n \"Error.Form.UndefinedElementId\": \"Undefined element '${elementid}'\",\n \"Error.Form.UndefinedObject\": \"Undefined object(s) '${objectid}'\",\n \"Error.GeneralError\": \"An unexpected error occurred\",\n \"Error.MethodNotAllowed\": \"The given HTTP method is not allowed for this resource\",\n \"Error.Parameter.InvalidValue\": \"The parameter contains characters that are not allowed\",\n \"Error.Parameter.Mandatory\": \"Parameter ${parameter} is mandatory\",\n \"Error.Parameter.NotAllowed\": \"Parameter '${parameter}' is not allowed\",\n \"Error.ResourceNotFound\": \"The requested resource cannot be found\",\n \"Validation.StandardCreateAndUpdateUserTask.PasswordsDoNotMatch\": \"Password and password confirmation do not match.\",\n \"Validation.StandardCreateAndUpdateUserTask.UserEmailAlreadyExists\": \"A user with email address '${Email}' already exists\",\n \"Validation.StandardCreateAndUpdateUserTask.UserNameAlreadyExists\": \"A user with username '${Username}' already exists\",\n \"Validation.StandardCreateOrganizationTask.OrganizationAlreadyExists\": \"An organization with id '${ID}' already exists\"\n}\n"],"mappings":"AACA;AACA,eAAe;EACb,uCAAuC,iBAD1B;EAEb,mCAAmC,gEAFtB;EAGb,gCAAgC,qBAHnB;EAIb,mCAAmC,wBAJtB;EAKb,uCAAuC,qGAL1B;EAMb,wCAAwC,oFAN3B;EAOb,mCAAmC,iCAPtB;EAQb,2CAA2C,iCAR9B;EASb,wCAAwC,2CAT3B;EAUb,6CAA6C,iCAVhC;EAWb,gCAAgC,kCAXnB;EAYb,gCAAgC,iCAZnB;EAab,iCAAiC,yCAbpB;EAcb,6BAA6B,oBAdhB;EAeb,8BAA8B,6CAfjB;EAgBb,qCAAqC,oCAhBxB;EAiBb,kCAAkC,+DAjBrB;EAkBb,oCAAoC,iCAlBvB;EAmBb,oCAAoC,sCAnBvB;EAoBb,qCAAqC,yCApBxB;EAqBb,kCAAkC,uDArBrB;EAsBb,yCAAyC,8CAtB5B;EAuBb,sCAAsC,oEAvBzB;EAwBb,0CAA0C,oEAxB7B;EAyBb,kCAAkC,gCAzBrB;EA0Bb,6BAA6B,uCA1BhB;EA2Bb,oCAAoC,uCA3BvB;EA4Bb,iCAAiC,6CA5BpB;EA6Bb,mCAAmC,uCA7BtB;EA8Bb,uCAAuC,6CA9B1B;EA+Bb,qCAAqC,0BA/BxB;EAgCb,iCAAiC,6BAhCpB;EAiCb,mCAAmC,mEAjCtB;EAkCb,iCAAiC,+CAlCpB;EAmCb,mCAAmC,yDAnCtB;EAoCb,oCAAoC,kDApCvB;EAqCb,uCAAuC,mEArC1B;EAsCb,wBAAwB,oBAtCX;EAuCb,sBAAsB,oBAvCT;EAwCb,kCAAkC,+BAxCrB;EAyCb,kCAAkC,gCAzCrB;EA0Cb,oCAAoC,0DA1CvB;EA2Cb,oCAAoC,wBA3CvB;EA4Cb,iCAAiC,wBA5CpB;EA6Cb,gCAAgC,iDA7CnB;EA8Cb,8CAA8C,kCA9CjC;EA+Cb,uCAAuC,6CA/C1B;EAgDb,oCAAoC,gEAhDvB;EAiDb,mCAAmC,gCAjDtB;EAkDb,kDAAkD,kDAlDrC;EAmDb,qDAAqD,0DAnDxC;EAoDb,qDAAqD,wDApDxC;EAqDb,4DAA4D,8DArD/C;EAsDb,iCAAiC,0CAtDpB;EAuDb,mDAAmD,sDAvDtC;EAwDb,yCAAyC,0DAxD5B;EAyDb,iCAAiC,yCAzDpB;EA0Db,qCAAqC,oCA1DxB;EA2Db,kCAAkC,+DA3DrB;EA4Db,qCAAqC,kCA5DxB;EA6Db,qCAAqC,iCA7DxB;EA8Db,sCAAsC,yCA9DzB;EA+Db,0CAA0C,sCA/D7B;EAgEb,uCAAuC,gEAhE1B;EAiEb,gCAAgC,yBAjEnB;EAkEb,oCAAoC,6CAlEvB;EAmEb,8BAA8B,oDAnEjB;EAoEb,oCAAoC,iEApEvB;EAqEb,uCAAuC,sFArE1B;EAsEb,2CAA2C,uBAtE9B;EAuEb,wCAAwC,sEAvE3B;EAwEb,iCAAiC,4BAxEpB;EAyEb,qCAAqC,iGAzExB;EA0Eb,gCAAgC,2DA1EnB;EA2Eb,oCAAoC,uCA3EvB;EA4Eb,0CAA0C,qDA5E7B;EA6Eb,uCAAuC,EA7E1B;EA8Eb,qCAAqC,4DA9ExB;EA+Eb,oCAAoC,qFA/EvB;EAgFb,+BAA+B,qCAhFlB;EAiFb,gCAAgC,qCAjFnB;EAkFb,6BAA6B,yCAlFhB;EAmFb,iCAAiC,kCAnFpB;EAoFb,8BAA8B,mCApFjB;EAqFb,sBAAsB,8BArFT;EAsFb,0BAA0B,wDAtFb;EAuFb,gCAAgC,wDAvFnB;EAwFb,6BAA6B,qCAxFhB;EAyFb,8BAA8B,yCAzFjB;EA0Fb,0BAA0B,wCA1Fb;EA2Fb,kEAAkE,kDA3FrD;EA4Fb,qEAAqE,qDA5FxD;EA6Fb,oEAAoE,mDA7FvD;EA8Fb,uEAAuE;AA9F1D,CAAf"}
@@ -30,6 +30,7 @@ export default {
30
30
  "Constraint.File.InvalidFormat": "Voldoet niet aan de voorwaarden van een bestandsnaam",
31
31
  "Constraint.File.InvalidMimeType": "Toegestane mime-types zijn: ${mime-types}",
32
32
  "Constraint.File.MaxFileSizeExceeded": "De maximum file grootte voor upload is ${max-filesize}",
33
+ "Constraint.File.OnlyAllowsOneFile": "Er is slechts één bestand toegestaan",
33
34
  "Constraint.IBAN.InvalidFormat": "Moet een geldig IBAN nummer zijn",
34
35
  "Constraint.InvalidLengthBetween": "Lengte moet tussen ${min-length} en ${max-length} karakters liggen",
35
36
  "Constraint.InvalidLengthExact": "Lengte moet precies ${length} karakters zijn",
@@ -64,18 +65,18 @@ export default {
64
65
  "Constraint.TimeStampRange.InvalidRange": "De beginwaarde dient voor de eindwaarde te liggen",
65
66
  "Constraint.TimeStampRange.Mandatory": "Veld is verplicht: moet tenminste begin- of eindwaarde bevatten",
66
67
  "Constraint.XML.InvalidFormat": "Moet geldige XML zijn",
67
- "Constraint.ZipCode.InvalidFormat": "Moet een geldige postcode zijn, bijvoorbeeld 1234 AB",
68
+ "Constraint.ZipCode.InvalidFormat": "Moet een geldige postcode zijn, bijvoorbeeld 1234AB",
68
69
  "Error.AcceptHeaderRequired": "De 'Accept' request-header moet worden meegegeven",
69
70
  "Error.Authentication.BlockedUser": "U bent uitgelogd omdat uw account geblokkeerd is",
70
71
  "Error.Authentication.ConcurrentUser": "U bent uitgelogd omdat uw gebruikersnaam op een andere locatie is gebruikt om in te loggen.",
71
72
  "Error.Authentication.InvalidCredentials": "Inloggen is mislukt",
72
- "Error.Authentication.InvalidUsername": "\"U bent uitgelogd omdat uw gebruikersnaam niet meer geldig is",
73
+ "Error.Authentication.InvalidUsername": "U bent uitgelogd omdat uw gebruikersnaam niet meer geldig is",
73
74
  "Error.Authentication.Required": "Autorisatie is vereist",
74
75
  "Error.Case.ConcurrentModification": "Een andere gebruiker heeft het dossier aangepast waardoor deze taak nu niet meer is toegestaan",
75
76
  "Error.ChangePasswordRequired": "Gebruikerswachtwoord is initieel of verlopen, en moet worden aangepast",
76
77
  "Error.CodemapLookup.InvalidToken": "Token voor keuzelijst lookup is niet valide",
77
78
  "Error.DataStore.ConcurrentModification": "Een andere gebruiker heeft de rij in de datastore reeds aangepast",
78
- "Error.DataStore.RecordAlreadyExists": "Rij kan niet worden overschreven aangezien deze reeds bestaat",
79
+ "Error.DataStore.RecordAlreadyExists": "",
79
80
  "Error.DataStore.RowCannotBeLocked": "Een andere gebruiker heeft de rij in bewerking en daarom kan deze taak niet worden volbracht.",
80
81
  "Error.Form.DataNotAvailableForId": "Service kan niet worden afgrond, data voor verplicht element ${elementid} is niet beschikbaar",
81
82
  "Error.Form.ObjectNotAllowed": "Object '${objectid}' is niet toegestaan",
@@ -1 +1 @@
1
- {"version":3,"file":"beinformed_error_messages_nl.nl.js","names":[],"sources":["../../../src/i18n/translations/beinformed_error_messages_nl.nl.js"],"sourcesContent":["// @flow\n// prettier-ignore\nexport default {\n \"Constraint.Attribute.IncorrectValue\": \"Ongeldige waarde\",\n \"Constraint.Boolean.InvalidValue\": \"Waarde voldoet niet aan het boolean formaat, alleen waarden 'true' en 'false' zijn toegestaan\",\n \"Constraint.BSN.InvalidFormat\": \"Moet een geldig BSN zijn\",\n \"Constraint.Captcha.InvalidToken\": \"Captcha is niet correct\",\n \"Constraint.Choice.ConflictingAnswer\": \"'${answer-option-key}' kan niet worden gekozen omdat dit geen relevante optie is, gegeven de andere antwoorden\",\n \"Constraint.Choice.ConflictingOptions\": \"'${answer-option-key1}' and '${answer-option-key2}' kunnen niet tegelijkertijd worden gekozen\",\n \"Constraint.Choice.InvalidOption\": \"Toegestane waarden zijn: ${options}\",\n \"Constraint.Choice.InvalidOption.General\": \"Waarde '${value}' is niet toegestaan\",\n \"Constraint.Choice.MultipleNotAllowed\": \"Meerdere opties selecteren is niet toegestaan\",\n \"Constraint.ConfirmCurrentPassword.Invalid\": \"Moet overeenkomen met het huidige wachtwoord\",\n \"Constraint.Date.AboveMaximum\": \"Moet op of voor ${max-date} liggen\",\n \"Constraint.Date.BelowMinimum\": \"Moet op of na ${min-date} liggen\",\n \"Constraint.Date.InvalidFormat\": \"Moet worden opgegeven in het formaat ${format}\",\n \"Constraint.Date.NotOnDate\": \"Moet op ${date} liggen\",\n \"Constraint.Date.OutOfRange\": \"Moet tussen ${min-date} en ${max-date} liggen\",\n \"Constraint.DateRange.InvalidRange\": \"De begindatum dient voor de einddatum te liggen\",\n \"Constraint.DateRange.Mandatory\": \"Veld is verplicht: moet tenminste begin- of einddatum bevatten\",\n \"Constraint.DateTime.AboveMaximum\": \"Moet voor ${max-date-time} liggen\",\n \"Constraint.DateTime.BelowMinimum\": \"Moet op ${min-date-time} of later liggen\",\n \"Constraint.DateTime.InvalidFormat\": \"Moet worden opgegeven in het formaat ${format}\",\n \"Constraint.DateTime.OutOfRange\": \"Moet tussen ${min-date-time} en ${max-date-time} liggen\",\n \"Constraint.DateTimeRange.InvalidRange\": \"De begindatumtijd dient voor de einddatumtijd te liggen\",\n \"Constraint.DateTimeRange.Mandatory\": \"Veld is verplicht: moet tenminste begin- of einddatumtijd bevatten\",\n \"Constraint.Document.MimeTypeNotAllowed\": \"Het document mime type voldoet niet aan het document type\",\n \"Constraint.Email.InvalidFormat\": \"Moet een geldig emailadres zijn\",\n \"Constraint.File.DataEmpty\": \"Bestand bestaat niet of heeft geen inhoud\",\n \"Constraint.File.InvalidExtension\": \"Toegestane extensies zijn: ${extensions}\",\n \"Constraint.File.InvalidFormat\": \"Voldoet niet aan de voorwaarden van een bestandsnaam\",\n \"Constraint.File.InvalidMimeType\": \"Toegestane mime-types zijn: ${mime-types}\",\n \"Constraint.File.MaxFileSizeExceeded\": \"De maximum file grootte voor upload is ${max-filesize}\",\n \"Constraint.IBAN.InvalidFormat\": \"Moet een geldig IBAN nummer zijn\",\n \"Constraint.InvalidLengthBetween\": \"Lengte moet tussen ${min-length} en ${max-length} karakters liggen\",\n \"Constraint.InvalidLengthExact\": \"Lengte moet precies ${length} karakters zijn\",\n \"Constraint.InvalidLengthTooLong\": \"Lengte mag niet langer dan ${max-length} karakters zijn\",\n \"Constraint.InvalidLengthTooShort\": \"Lengte moet tenminste ${min-length} karakters zijn\",\n \"Constraint.InvalidRegularExpression\": \"De waarde voldoet niet aan de reguliere expressie ${regexp}\",\n \"Constraint.Mandatory\": \"Veld is verplicht\",\n \"Constraint.Missing\": \"Veld is verplicht\",\n \"Constraint.Number.AboveMaximum\": \"Mag niet groter dan ${max-number} zijn\",\n \"Constraint.Number.BelowMinimum\": \"Moet minstens ${min-number} zijn\",\n \"Constraint.Number.InvalidDecimal\": \"Moet een getal zijn met maximaal ${max-digits} decimalen\",\n \"Constraint.Number.InvalidInteger\": \"Moet een geheel getal zijn\",\n \"Constraint.Number.InvalidLong\": \"Moet een geheel getal zijn\",\n \"Constraint.Number.OutOfRange\": \"Moet tussen ${min-number} en ${max-number} liggen\",\n \"Constraint.NumberRange.BothFieldsMandatory\": \"Moet zowel een begin- als een eindwaarde bevatten\",\n \"Constraint.NumberRange.InvalidRange\": \"De beginwaarde dient kleiner te zijn dan de eindwaarde\",\n \"Constraint.NumberRange.Mandatory\": \"Veld is verplicht: moet tenminste begin- of eindwaarde bevatten\",\n \"Constraint.Password.AlreadyUsed\": \"Mag niet eerder zijn gebruikt\",\n \"Constraint.Password.LowerAndUpperCaseMandatory\": \"Moet zowel hoofdletters als kleine letters bevatten\",\n \"Constraint.Password.MinNumericCharactersMandatory\": \"Moet ${min-numeric} of meer numerieke karakters bevatten\",\n \"Constraint.Password.MinSpecialCharactersMandatory\": \"Moet ${min-special} of meer speciale karakters bevatten\",\n \"Constraint.Password.ThreeConsecutiveCharactersNotAllowed\": \"Mag niet meer dan twee dezelfde karakters achter elkaar bevatten\",\n \"Constraint.Password.Unchanged\": \"Mag niet hetzelfde zijn als het oude wachtwoord\",\n \"Constraint.Password.UserNameSubstringNotAllowed\": \"Mag niet vijf opeenvolgende karakters van de gebruikersnaam bevatten\",\n \"Constraint.SortParameter.InvalidValue\": \"Ongeldige sorteerparameter. Toegestane waardes: veld+[asc|desc]\",\n \"Constraint.Time.InvalidFormat\": \"Moet worden opgegeven in het formaat ${format}\",\n \"Constraint.TimeRange.InvalidRange\": \"De begintijd dient voor de eindtijd te liggen\",\n \"Constraint.TimeRange.Mandatory\": \"Veld is verplicht: moet tenminste begin- of eindtijd bevatten\",\n \"Constraint.TimeStamp.AboveMaximum\": \"Moet op of voor ${max-date} liggen\",\n \"Constraint.TimeStamp.BelowMinimum\": \"Moet op of na ${min-date} liggen\",\n \"Constraint.Timestamp.InvalidFormat\": \"Moet worden opgegeven in het formaat ${format}\",\n \"Constraint.TimeStampRange.InvalidRange\": \"De beginwaarde dient voor de eindwaarde te liggen\",\n \"Constraint.TimeStampRange.Mandatory\": \"Veld is verplicht: moet tenminste begin- of eindwaarde bevatten\",\n \"Constraint.XML.InvalidFormat\": \"Moet geldige XML zijn\",\n \"Constraint.ZipCode.InvalidFormat\": \"Moet een geldige postcode zijn, bijvoorbeeld 1234 AB\",\n \"Error.AcceptHeaderRequired\": \"De 'Accept' request-header moet worden meegegeven\",\n \"Error.Authentication.BlockedUser\": \"U bent uitgelogd omdat uw account geblokkeerd is\",\n \"Error.Authentication.ConcurrentUser\": \"U bent uitgelogd omdat uw gebruikersnaam op een andere locatie is gebruikt om in te loggen.\",\n \"Error.Authentication.InvalidCredentials\": \"Inloggen is mislukt\",\n \"Error.Authentication.InvalidUsername\": \"\\\"U bent uitgelogd omdat uw gebruikersnaam niet meer geldig is\",\n \"Error.Authentication.Required\": \"Autorisatie is vereist\",\n \"Error.Case.ConcurrentModification\": \"Een andere gebruiker heeft het dossier aangepast waardoor deze taak nu niet meer is toegestaan\",\n \"Error.ChangePasswordRequired\": \"Gebruikerswachtwoord is initieel of verlopen, en moet worden aangepast\",\n \"Error.CodemapLookup.InvalidToken\": \"Token voor keuzelijst lookup is niet valide\",\n \"Error.DataStore.ConcurrentModification\": \"Een andere gebruiker heeft de rij in de datastore reeds aangepast\",\n \"Error.DataStore.RecordAlreadyExists\": \"Rij kan niet worden overschreven aangezien deze reeds bestaat\",\n \"Error.DataStore.RowCannotBeLocked\": \"Een andere gebruiker heeft de rij in bewerking en daarom kan deze taak niet worden volbracht.\",\n \"Error.Form.DataNotAvailableForId\": \"Service kan niet worden afgrond, data voor verplicht element ${elementid} is niet beschikbaar\",\n \"Error.Form.ObjectNotAllowed\": \"Object '${objectid}' is niet toegestaan\",\n \"Error.Form.ReadOnlyElementId\": \"Element '${elementid}' is alleen lezen\",\n \"Error.Form.TooManyObjects\": \"Te veel objecten '${objectid}' aangeleverd\",\n \"Error.Form.UndefinedElementId\": \"Element '${elementid}' is ongedefinieerd\",\n \"Error.Form.UndefinedObject\": \"Object(en) '${objectid}' ongedefinieerd\",\n \"Error.GeneralError\": \"Er is een onverwachte fout opgetreden\",\n \"Error.MethodNotAllowed\": \"De opgegeven HTTP methode is niet toegestaan op deze resource\",\n \"Error.Parameter.InvalidValue\": \"De parameter bevat karakters die niet zijn toegestaan\",\n \"Error.Parameter.Mandatory\": \"De parameter ${parameter} is verplicht\",\n \"Error.Parameter.NotAllowed\": \"Parameter '${parameter}' is niet toegestaan\",\n \"Error.ResourceNotFound\": \"De opgevraagde resource kan niet worden gevonden\",\n \"Validation.StandardCreateAndUpdateUserTask.PasswordsDoNotMatch\": \"Het wachtwoord en de wachtwoordbevestiging komen niet overeen\",\n \"Validation.StandardCreateAndUpdateUserTask.UserEmailAlreadyExists\": \"Een gebruiker met e-mailadres '${Email}' bestaat al\",\n \"Validation.StandardCreateAndUpdateUserTask.UserNameAlreadyExists\": \"Een gebruiker met gebruikersnaam '${Username}' bestaat al\",\n \"Validation.StandardCreateOrganizationTask.OrganizationAlreadyExists\": \"Een organisatie met id '${ID}' bestaat al\"\n}\n"],"mappings":"AACA;AACA,eAAe;EACb,uCAAuC,kBAD1B;EAEb,mCAAmC,+FAFtB;EAGb,gCAAgC,0BAHnB;EAIb,mCAAmC,yBAJtB;EAKb,uCAAuC,gHAL1B;EAMb,wCAAwC,+FAN3B;EAOb,mCAAmC,qCAPtB;EAQb,2CAA2C,sCAR9B;EASb,wCAAwC,+CAT3B;EAUb,6CAA6C,8CAVhC;EAWb,gCAAgC,oCAXnB;EAYb,gCAAgC,kCAZnB;EAab,iCAAiC,gDAbpB;EAcb,6BAA6B,wBAdhB;EAeb,8BAA8B,+CAfjB;EAgBb,qCAAqC,iDAhBxB;EAiBb,kCAAkC,gEAjBrB;EAkBb,oCAAoC,mCAlBvB;EAmBb,oCAAoC,0CAnBvB;EAoBb,qCAAqC,gDApBxB;EAqBb,kCAAkC,yDArBrB;EAsBb,yCAAyC,yDAtB5B;EAuBb,sCAAsC,oEAvBzB;EAwBb,0CAA0C,2DAxB7B;EAyBb,kCAAkC,iCAzBrB;EA0Bb,6BAA6B,2CA1BhB;EA2Bb,oCAAoC,0CA3BvB;EA4Bb,iCAAiC,sDA5BpB;EA6Bb,mCAAmC,2CA7BtB;EA8Bb,uCAAuC,wDA9B1B;EA+Bb,iCAAiC,kCA/BpB;EAgCb,mCAAmC,oEAhCtB;EAiCb,iCAAiC,8CAjCpB;EAkCb,mCAAmC,yDAlCtB;EAmCb,oCAAoC,oDAnCvB;EAoCb,uCAAuC,6DApC1B;EAqCb,wBAAwB,mBArCX;EAsCb,sBAAsB,mBAtCT;EAuCb,kCAAkC,wCAvCrB;EAwCb,kCAAkC,kCAxCrB;EAyCb,oCAAoC,0DAzCvB;EA0Cb,oCAAoC,4BA1CvB;EA2Cb,iCAAiC,4BA3CpB;EA4Cb,gCAAgC,mDA5CnB;EA6Cb,8CAA8C,mDA7CjC;EA8Cb,uCAAuC,wDA9C1B;EA+Cb,oCAAoC,iEA/CvB;EAgDb,mCAAmC,+BAhDtB;EAiDb,kDAAkD,qDAjDrC;EAkDb,qDAAqD,0DAlDxC;EAmDb,qDAAqD,yDAnDxC;EAoDb,4DAA4D,kEApD/C;EAqDb,iCAAiC,iDArDpB;EAsDb,mDAAmD,sEAtDtC;EAuDb,yCAAyC,iEAvD5B;EAwDb,iCAAiC,gDAxDpB;EAyDb,qCAAqC,+CAzDxB;EA0Db,kCAAkC,+DA1DrB;EA2Db,qCAAqC,oCA3DxB;EA4Db,qCAAqC,kCA5DxB;EA6Db,sCAAsC,gDA7DzB;EA8Db,0CAA0C,mDA9D7B;EA+Db,uCAAuC,iEA/D1B;EAgEb,gCAAgC,uBAhEnB;EAiEb,oCAAoC,sDAjEvB;EAkEb,8BAA8B,mDAlEjB;EAmEb,oCAAoC,kDAnEvB;EAoEb,uCAAuC,6FApE1B;EAqEb,2CAA2C,qBArE9B;EAsEb,wCAAwC,gEAtE3B;EAuEb,iCAAiC,wBAvEpB;EAwEb,qCAAqC,gGAxExB;EAyEb,gCAAgC,wEAzEnB;EA0Eb,oCAAoC,6CA1EvB;EA2Eb,0CAA0C,mEA3E7B;EA4Eb,uCAAuC,+DA5E1B;EA6Eb,qCAAqC,+FA7ExB;EA8Eb,oCAAoC,+FA9EvB;EA+Eb,+BAA+B,yCA/ElB;EAgFb,gCAAgC,wCAhFnB;EAiFb,6BAA6B,4CAjFhB;EAkFb,iCAAiC,0CAlFpB;EAmFb,8BAA8B,yCAnFjB;EAoFb,sBAAsB,uCApFT;EAqFb,0BAA0B,+DArFb;EAsFb,gCAAgC,uDAtFnB;EAuFb,6BAA6B,wCAvFhB;EAwFb,8BAA8B,6CAxFjB;EAyFb,0BAA0B,kDAzFb;EA0Fb,kEAAkE,+DA1FrD;EA2Fb,qEAAqE,qDA3FxD;EA4Fb,oEAAoE,2DA5FvD;EA6Fb,uEAAuE;AA7F1D,CAAf"}
1
+ {"version":3,"file":"beinformed_error_messages_nl.nl.js","names":[],"sources":["../../../src/i18n/translations/beinformed_error_messages_nl.nl.js"],"sourcesContent":["// @flow\n// prettier-ignore\nexport default {\n \"Constraint.Attribute.IncorrectValue\": \"Ongeldige waarde\",\n \"Constraint.Boolean.InvalidValue\": \"Waarde voldoet niet aan het boolean formaat, alleen waarden 'true' en 'false' zijn toegestaan\",\n \"Constraint.BSN.InvalidFormat\": \"Moet een geldig BSN zijn\",\n \"Constraint.Captcha.InvalidToken\": \"Captcha is niet correct\",\n \"Constraint.Choice.ConflictingAnswer\": \"'${answer-option-key}' kan niet worden gekozen omdat dit geen relevante optie is, gegeven de andere antwoorden\",\n \"Constraint.Choice.ConflictingOptions\": \"'${answer-option-key1}' and '${answer-option-key2}' kunnen niet tegelijkertijd worden gekozen\",\n \"Constraint.Choice.InvalidOption\": \"Toegestane waarden zijn: ${options}\",\n \"Constraint.Choice.InvalidOption.General\": \"Waarde '${value}' is niet toegestaan\",\n \"Constraint.Choice.MultipleNotAllowed\": \"Meerdere opties selecteren is niet toegestaan\",\n \"Constraint.ConfirmCurrentPassword.Invalid\": \"Moet overeenkomen met het huidige wachtwoord\",\n \"Constraint.Date.AboveMaximum\": \"Moet op of voor ${max-date} liggen\",\n \"Constraint.Date.BelowMinimum\": \"Moet op of na ${min-date} liggen\",\n \"Constraint.Date.InvalidFormat\": \"Moet worden opgegeven in het formaat ${format}\",\n \"Constraint.Date.NotOnDate\": \"Moet op ${date} liggen\",\n \"Constraint.Date.OutOfRange\": \"Moet tussen ${min-date} en ${max-date} liggen\",\n \"Constraint.DateRange.InvalidRange\": \"De begindatum dient voor de einddatum te liggen\",\n \"Constraint.DateRange.Mandatory\": \"Veld is verplicht: moet tenminste begin- of einddatum bevatten\",\n \"Constraint.DateTime.AboveMaximum\": \"Moet voor ${max-date-time} liggen\",\n \"Constraint.DateTime.BelowMinimum\": \"Moet op ${min-date-time} of later liggen\",\n \"Constraint.DateTime.InvalidFormat\": \"Moet worden opgegeven in het formaat ${format}\",\n \"Constraint.DateTime.OutOfRange\": \"Moet tussen ${min-date-time} en ${max-date-time} liggen\",\n \"Constraint.DateTimeRange.InvalidRange\": \"De begindatumtijd dient voor de einddatumtijd te liggen\",\n \"Constraint.DateTimeRange.Mandatory\": \"Veld is verplicht: moet tenminste begin- of einddatumtijd bevatten\",\n \"Constraint.Document.MimeTypeNotAllowed\": \"Het document mime type voldoet niet aan het document type\",\n \"Constraint.Email.InvalidFormat\": \"Moet een geldig emailadres zijn\",\n \"Constraint.File.DataEmpty\": \"Bestand bestaat niet of heeft geen inhoud\",\n \"Constraint.File.InvalidExtension\": \"Toegestane extensies zijn: ${extensions}\",\n \"Constraint.File.InvalidFormat\": \"Voldoet niet aan de voorwaarden van een bestandsnaam\",\n \"Constraint.File.InvalidMimeType\": \"Toegestane mime-types zijn: ${mime-types}\",\n \"Constraint.File.MaxFileSizeExceeded\": \"De maximum file grootte voor upload is ${max-filesize}\",\n \"Constraint.File.OnlyAllowsOneFile\": \"Er is slechts één bestand toegestaan\",\n \"Constraint.IBAN.InvalidFormat\": \"Moet een geldig IBAN nummer zijn\",\n \"Constraint.InvalidLengthBetween\": \"Lengte moet tussen ${min-length} en ${max-length} karakters liggen\",\n \"Constraint.InvalidLengthExact\": \"Lengte moet precies ${length} karakters zijn\",\n \"Constraint.InvalidLengthTooLong\": \"Lengte mag niet langer dan ${max-length} karakters zijn\",\n \"Constraint.InvalidLengthTooShort\": \"Lengte moet tenminste ${min-length} karakters zijn\",\n \"Constraint.InvalidRegularExpression\": \"De waarde voldoet niet aan de reguliere expressie ${regexp}\",\n \"Constraint.Mandatory\": \"Veld is verplicht\",\n \"Constraint.Missing\": \"Veld is verplicht\",\n \"Constraint.Number.AboveMaximum\": \"Mag niet groter dan ${max-number} zijn\",\n \"Constraint.Number.BelowMinimum\": \"Moet minstens ${min-number} zijn\",\n \"Constraint.Number.InvalidDecimal\": \"Moet een getal zijn met maximaal ${max-digits} decimalen\",\n \"Constraint.Number.InvalidInteger\": \"Moet een geheel getal zijn\",\n \"Constraint.Number.InvalidLong\": \"Moet een geheel getal zijn\",\n \"Constraint.Number.OutOfRange\": \"Moet tussen ${min-number} en ${max-number} liggen\",\n \"Constraint.NumberRange.BothFieldsMandatory\": \"Moet zowel een begin- als een eindwaarde bevatten\",\n \"Constraint.NumberRange.InvalidRange\": \"De beginwaarde dient kleiner te zijn dan de eindwaarde\",\n \"Constraint.NumberRange.Mandatory\": \"Veld is verplicht: moet tenminste begin- of eindwaarde bevatten\",\n \"Constraint.Password.AlreadyUsed\": \"Mag niet eerder zijn gebruikt\",\n \"Constraint.Password.LowerAndUpperCaseMandatory\": \"Moet zowel hoofdletters als kleine letters bevatten\",\n \"Constraint.Password.MinNumericCharactersMandatory\": \"Moet ${min-numeric} of meer numerieke karakters bevatten\",\n \"Constraint.Password.MinSpecialCharactersMandatory\": \"Moet ${min-special} of meer speciale karakters bevatten\",\n \"Constraint.Password.ThreeConsecutiveCharactersNotAllowed\": \"Mag niet meer dan twee dezelfde karakters achter elkaar bevatten\",\n \"Constraint.Password.Unchanged\": \"Mag niet hetzelfde zijn als het oude wachtwoord\",\n \"Constraint.Password.UserNameSubstringNotAllowed\": \"Mag niet vijf opeenvolgende karakters van de gebruikersnaam bevatten\",\n \"Constraint.SortParameter.InvalidValue\": \"Ongeldige sorteerparameter. Toegestane waardes: veld+[asc|desc]\",\n \"Constraint.Time.InvalidFormat\": \"Moet worden opgegeven in het formaat ${format}\",\n \"Constraint.TimeRange.InvalidRange\": \"De begintijd dient voor de eindtijd te liggen\",\n \"Constraint.TimeRange.Mandatory\": \"Veld is verplicht: moet tenminste begin- of eindtijd bevatten\",\n \"Constraint.TimeStamp.AboveMaximum\": \"Moet op of voor ${max-date} liggen\",\n \"Constraint.TimeStamp.BelowMinimum\": \"Moet op of na ${min-date} liggen\",\n \"Constraint.Timestamp.InvalidFormat\": \"Moet worden opgegeven in het formaat ${format}\",\n \"Constraint.TimeStampRange.InvalidRange\": \"De beginwaarde dient voor de eindwaarde te liggen\",\n \"Constraint.TimeStampRange.Mandatory\": \"Veld is verplicht: moet tenminste begin- of eindwaarde bevatten\",\n \"Constraint.XML.InvalidFormat\": \"Moet geldige XML zijn\",\n \"Constraint.ZipCode.InvalidFormat\": \"Moet een geldige postcode zijn, bijvoorbeeld 1234AB\",\n \"Error.AcceptHeaderRequired\": \"De 'Accept' request-header moet worden meegegeven\",\n \"Error.Authentication.BlockedUser\": \"U bent uitgelogd omdat uw account geblokkeerd is\",\n \"Error.Authentication.ConcurrentUser\": \"U bent uitgelogd omdat uw gebruikersnaam op een andere locatie is gebruikt om in te loggen.\",\n \"Error.Authentication.InvalidCredentials\": \"Inloggen is mislukt\",\n \"Error.Authentication.InvalidUsername\": \"U bent uitgelogd omdat uw gebruikersnaam niet meer geldig is\",\n \"Error.Authentication.Required\": \"Autorisatie is vereist\",\n \"Error.Case.ConcurrentModification\": \"Een andere gebruiker heeft het dossier aangepast waardoor deze taak nu niet meer is toegestaan\",\n \"Error.ChangePasswordRequired\": \"Gebruikerswachtwoord is initieel of verlopen, en moet worden aangepast\",\n \"Error.CodemapLookup.InvalidToken\": \"Token voor keuzelijst lookup is niet valide\",\n \"Error.DataStore.ConcurrentModification\": \"Een andere gebruiker heeft de rij in de datastore reeds aangepast\",\n \"Error.DataStore.RecordAlreadyExists\": \"\",\n \"Error.DataStore.RowCannotBeLocked\": \"Een andere gebruiker heeft de rij in bewerking en daarom kan deze taak niet worden volbracht.\",\n \"Error.Form.DataNotAvailableForId\": \"Service kan niet worden afgrond, data voor verplicht element ${elementid} is niet beschikbaar\",\n \"Error.Form.ObjectNotAllowed\": \"Object '${objectid}' is niet toegestaan\",\n \"Error.Form.ReadOnlyElementId\": \"Element '${elementid}' is alleen lezen\",\n \"Error.Form.TooManyObjects\": \"Te veel objecten '${objectid}' aangeleverd\",\n \"Error.Form.UndefinedElementId\": \"Element '${elementid}' is ongedefinieerd\",\n \"Error.Form.UndefinedObject\": \"Object(en) '${objectid}' ongedefinieerd\",\n \"Error.GeneralError\": \"Er is een onverwachte fout opgetreden\",\n \"Error.MethodNotAllowed\": \"De opgegeven HTTP methode is niet toegestaan op deze resource\",\n \"Error.Parameter.InvalidValue\": \"De parameter bevat karakters die niet zijn toegestaan\",\n \"Error.Parameter.Mandatory\": \"De parameter ${parameter} is verplicht\",\n \"Error.Parameter.NotAllowed\": \"Parameter '${parameter}' is niet toegestaan\",\n \"Error.ResourceNotFound\": \"De opgevraagde resource kan niet worden gevonden\",\n \"Validation.StandardCreateAndUpdateUserTask.PasswordsDoNotMatch\": \"Het wachtwoord en de wachtwoordbevestiging komen niet overeen\",\n \"Validation.StandardCreateAndUpdateUserTask.UserEmailAlreadyExists\": \"Een gebruiker met e-mailadres '${Email}' bestaat al\",\n \"Validation.StandardCreateAndUpdateUserTask.UserNameAlreadyExists\": \"Een gebruiker met gebruikersnaam '${Username}' bestaat al\",\n \"Validation.StandardCreateOrganizationTask.OrganizationAlreadyExists\": \"Een organisatie met id '${ID}' bestaat al\"\n}\n"],"mappings":"AACA;AACA,eAAe;EACb,uCAAuC,kBAD1B;EAEb,mCAAmC,+FAFtB;EAGb,gCAAgC,0BAHnB;EAIb,mCAAmC,yBAJtB;EAKb,uCAAuC,gHAL1B;EAMb,wCAAwC,+FAN3B;EAOb,mCAAmC,qCAPtB;EAQb,2CAA2C,sCAR9B;EASb,wCAAwC,+CAT3B;EAUb,6CAA6C,8CAVhC;EAWb,gCAAgC,oCAXnB;EAYb,gCAAgC,kCAZnB;EAab,iCAAiC,gDAbpB;EAcb,6BAA6B,wBAdhB;EAeb,8BAA8B,+CAfjB;EAgBb,qCAAqC,iDAhBxB;EAiBb,kCAAkC,gEAjBrB;EAkBb,oCAAoC,mCAlBvB;EAmBb,oCAAoC,0CAnBvB;EAoBb,qCAAqC,gDApBxB;EAqBb,kCAAkC,yDArBrB;EAsBb,yCAAyC,yDAtB5B;EAuBb,sCAAsC,oEAvBzB;EAwBb,0CAA0C,2DAxB7B;EAyBb,kCAAkC,iCAzBrB;EA0Bb,6BAA6B,2CA1BhB;EA2Bb,oCAAoC,0CA3BvB;EA4Bb,iCAAiC,sDA5BpB;EA6Bb,mCAAmC,2CA7BtB;EA8Bb,uCAAuC,wDA9B1B;EA+Bb,qCAAqC,sCA/BxB;EAgCb,iCAAiC,kCAhCpB;EAiCb,mCAAmC,oEAjCtB;EAkCb,iCAAiC,8CAlCpB;EAmCb,mCAAmC,yDAnCtB;EAoCb,oCAAoC,oDApCvB;EAqCb,uCAAuC,6DArC1B;EAsCb,wBAAwB,mBAtCX;EAuCb,sBAAsB,mBAvCT;EAwCb,kCAAkC,wCAxCrB;EAyCb,kCAAkC,kCAzCrB;EA0Cb,oCAAoC,0DA1CvB;EA2Cb,oCAAoC,4BA3CvB;EA4Cb,iCAAiC,4BA5CpB;EA6Cb,gCAAgC,mDA7CnB;EA8Cb,8CAA8C,mDA9CjC;EA+Cb,uCAAuC,wDA/C1B;EAgDb,oCAAoC,iEAhDvB;EAiDb,mCAAmC,+BAjDtB;EAkDb,kDAAkD,qDAlDrC;EAmDb,qDAAqD,0DAnDxC;EAoDb,qDAAqD,yDApDxC;EAqDb,4DAA4D,kEArD/C;EAsDb,iCAAiC,iDAtDpB;EAuDb,mDAAmD,sEAvDtC;EAwDb,yCAAyC,iEAxD5B;EAyDb,iCAAiC,gDAzDpB;EA0Db,qCAAqC,+CA1DxB;EA2Db,kCAAkC,+DA3DrB;EA4Db,qCAAqC,oCA5DxB;EA6Db,qCAAqC,kCA7DxB;EA8Db,sCAAsC,gDA9DzB;EA+Db,0CAA0C,mDA/D7B;EAgEb,uCAAuC,iEAhE1B;EAiEb,gCAAgC,uBAjEnB;EAkEb,oCAAoC,qDAlEvB;EAmEb,8BAA8B,mDAnEjB;EAoEb,oCAAoC,kDApEvB;EAqEb,uCAAuC,6FArE1B;EAsEb,2CAA2C,qBAtE9B;EAuEb,wCAAwC,8DAvE3B;EAwEb,iCAAiC,wBAxEpB;EAyEb,qCAAqC,gGAzExB;EA0Eb,gCAAgC,wEA1EnB;EA2Eb,oCAAoC,6CA3EvB;EA4Eb,0CAA0C,mEA5E7B;EA6Eb,uCAAuC,EA7E1B;EA8Eb,qCAAqC,+FA9ExB;EA+Eb,oCAAoC,+FA/EvB;EAgFb,+BAA+B,yCAhFlB;EAiFb,gCAAgC,wCAjFnB;EAkFb,6BAA6B,4CAlFhB;EAmFb,iCAAiC,0CAnFpB;EAoFb,8BAA8B,yCApFjB;EAqFb,sBAAsB,uCArFT;EAsFb,0BAA0B,+DAtFb;EAuFb,gCAAgC,uDAvFnB;EAwFb,6BAA6B,wCAxFhB;EAyFb,8BAA8B,6CAzFjB;EA0Fb,0BAA0B,kDA1Fb;EA2Fb,kEAAkE,+DA3FrD;EA4Fb,qEAAqE,qDA5FxD;EA6Fb,oEAAoE,2DA7FvD;EA8Fb,uEAAuE;AA9F1D,CAAf"}
@@ -8,6 +8,7 @@ import _getPrototypeOf from "@babel/runtime-corejs3/helpers/esm/getPrototypeOf";
8
8
  import _defineProperty from "@babel/runtime-corejs3/helpers/esm/defineProperty";
9
9
  import _concatInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/concat";
10
10
  import _findInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/find";
11
+ import _sortInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/sort";
11
12
 
12
13
  function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = _Reflect$construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
13
14
 
@@ -100,7 +101,11 @@ var ApplicationModel = /*#__PURE__*/function (_ResourceModel) {
100
101
  }, {
101
102
  key: "authenticationTypes",
102
103
  get: function get() {
103
- return this.getContribution("security", []);
104
+ var authenticationTypes = this.getContribution("security", []); //put primary first
105
+
106
+ return authenticationTypes === null || authenticationTypes === void 0 ? void 0 : _sortInstanceProperty(authenticationTypes).call(authenticationTypes, function (a, b) {
107
+ return a.isPrimary === b.isPrimary ? 0 : a.isPrimary ? -1 : 1;
108
+ });
104
109
  }
105
110
  /**
106
111
  * Getting the tab links
@@ -1 +1 @@
1
- {"version":3,"file":"ApplicationModel.js","names":["ResourceModel","LinkModel","UserServicesModel","NotAllowedUriException","ApplicationModel","userService","links","getLinkByKey","href","path","models","userServiceModel","model","type","userServices","getContribution","getLinksByGroup","create","_userServices","isLoggedIn","userLink","data","contributions","resourcetype"],"sources":["../../../src/models/application/ApplicationModel.js"],"sourcesContent":["// @flow\nimport ResourceModel from \"../base/ResourceModel\";\nimport LinkModel from \"../links/LinkModel\";\nimport UserServicesModel from \"../user/UserServicesModel\";\n\nimport { NotAllowedUriException } from \"../../exceptions\";\n\nimport type { ModularUIModel, AuthenticationType } from \"../types\";\nimport type { ModularUIResponse } from \"../../modularui\";\nimport type LinkCollection from \"../links/LinkCollection\";\nimport type Href from \"../href/Href\";\n\n/**\n * The Application model\n */\nexport default class ApplicationModel extends ResourceModel {\n _userServices: ?UserServicesModel;\n\n /**\n * Retrieve type of model\n */\n get type(): string {\n return \"Application\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n data.contributions.resourcetype === \"Application\"\n );\n }\n\n /**\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n const userService = this.links.getLinkByKey(\"UserServices\");\n if (userService && userService.href.path === \"/login\") {\n throw new NotAllowedUriException(\n \"The user service (Login panel) should not have the uri '/login', use a different URI because this uri matches the login service.\"\n );\n }\n\n return userService ? [userService] : [];\n }\n\n /**\n */\n setChildModels(models: Array<ModularUIModel>) {\n const userServiceModel = models.find(\n (model) => model.type === \"UserServices\"\n );\n\n if (userServiceModel) {\n this.userServices = userServiceModel;\n }\n }\n\n /**\n * Getting the label of the application\n */\n get label(): string {\n return this.getContribution(\"label\", \"\");\n }\n\n /**\n * Getting the authentication types of the application\n */\n get authenticationTypes(): Array<AuthenticationType> {\n return this.getContribution(\"security\", []);\n }\n /**\n * Getting the tab links\n */\n get tabs(): LinkCollection {\n return this.links.getLinksByGroup(\"tab\");\n }\n\n /**\n * Get modelcatalog link\n */\n get modelcatalog(): LinkModel {\n return LinkModel.create(\"modelcatalog\", \"/modelcatalog\", \"Model catalog\");\n }\n\n /**\n * Set the userservices for this application\n */\n set userServices(model: ?ModularUIModel) {\n this._userServices = model instanceof UserServicesModel ? model : null;\n }\n\n /**\n * returns the userservices configured for this application\n */\n get userServices(): ?UserServicesModel {\n return this._userServices ? this._userServices : null;\n }\n\n /**\n * Indicates if the user is logged in\n */\n get isLoggedIn(): boolean {\n return this.userServices?.isLoggedIn ?? false;\n }\n\n /**\n * Retrieve link to the user information,\n * only available when the user services are available\n */\n get userHref(): Href | null {\n if (this.userServices != null && this.userServices.userLink != null) {\n return this.userServices.userLink.href;\n }\n\n return null;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;AACA,OAAOA,aAAP,MAA0B,uBAA1B;AACA,OAAOC,SAAP,MAAsB,oBAAtB;AACA,OAAOC,iBAAP,MAA8B,2BAA9B;AAEA,SAASC,sBAAT,QAAuC,kBAAvC;;AAOA;AACA;AACA;IACqBC,gB;;;;;;;;;;;;;;;;;;;;;;;;;;IAGnB;AACF;AACA;IACE,eAAmB;MACjB,OAAO,aAAP;IACD;IAED;AACF;;;;;IAQE;AACF;IACE,qCAA8C;MAC5C,IAAMC,WAAW,GAAG,KAAKC,KAAL,CAAWC,YAAX,CAAwB,cAAxB,CAApB;;MACA,IAAIF,WAAW,IAAIA,WAAW,CAACG,IAAZ,CAAiBC,IAAjB,KAA0B,QAA7C,EAAuD;QACrD,MAAM,IAAIN,sBAAJ,CACJ,kIADI,CAAN;MAGD;;MAED,OAAOE,WAAW,GAAG,CAACA,WAAD,CAAH,GAAmB,EAArC;IACD;IAED;AACF;;;;WACE,wBAAeK,MAAf,EAA8C;MAC5C,IAAMC,gBAAgB,GAAG,sBAAAD,MAAM,MAAN,CAAAA,MAAM,EAC7B,UAACE,KAAD;QAAA,OAAWA,KAAK,CAACC,IAAN,KAAe,cAA1B;MAAA,CAD6B,CAA/B;;MAIA,IAAIF,gBAAJ,EAAsB;QACpB,KAAKG,YAAL,GAAoBH,gBAApB;MACD;IACF;IAED;AACF;AACA;;;;SACE,eAAoB;MAClB,OAAO,KAAKI,eAAL,CAAqB,OAArB,EAA8B,EAA9B,CAAP;IACD;IAED;AACF;AACA;;;;SACE,eAAqD;MACnD,OAAO,KAAKA,eAAL,CAAqB,UAArB,EAAiC,EAAjC,CAAP;IACD;IACD;AACF;AACA;;;;SACE,eAA2B;MACzB,OAAO,KAAKT,KAAL,CAAWU,eAAX,CAA2B,KAA3B,CAAP;IACD;IAED;AACF;AACA;;;;SACE,eAA8B;MAC5B,OAAOf,SAAS,CAACgB,MAAV,CAAiB,cAAjB,EAAiC,eAAjC,EAAkD,eAAlD,CAAP;IACD;IAED;AACF;AACA;;;;;IAKE;AACF;AACA;IACE,eAAuC;MACrC,OAAO,KAAKC,aAAL,GAAqB,KAAKA,aAA1B,GAA0C,IAAjD;IACD;IAED;AACF;AACA;;SAbE,aAAiBN,KAAjB,EAAyC;MACvC,KAAKM,aAAL,GAAqBN,KAAK,YAAYV,iBAAjB,GAAqCU,KAArC,GAA6C,IAAlE;IACD;;;SAYD,eAA0B;MAAA;;MACxB,sDAAO,KAAKE,YAAZ,uDAAO,mBAAmBK,UAA1B,yEAAwC,KAAxC;IACD;IAED;AACF;AACA;AACA;;;;SACE,eAA4B;MAC1B,IAAI,KAAKL,YAAL,IAAqB,IAArB,IAA6B,KAAKA,YAAL,CAAkBM,QAAlB,IAA8B,IAA/D,EAAqE;QACnE,OAAO,KAAKN,YAAL,CAAkBM,QAAlB,CAA2BZ,IAAlC;MACD;;MAED,OAAO,IAAP;IACD;;;WA1FD,2BAAyBa,IAAzB,EAA2D;MACzD,OACEA,IAAI,CAACC,aAAL,CAAmBC,YAAnB,IACAF,IAAI,CAACC,aAAL,CAAmBC,YAAnB,KAAoC,aAFtC;IAID;;;;EAjB2CvB,a;;SAAzBI,gB"}
1
+ {"version":3,"file":"ApplicationModel.js","names":["ResourceModel","LinkModel","UserServicesModel","NotAllowedUriException","ApplicationModel","userService","links","getLinkByKey","href","path","models","userServiceModel","model","type","userServices","getContribution","authenticationTypes","a","b","isPrimary","getLinksByGroup","create","_userServices","isLoggedIn","userLink","data","contributions","resourcetype"],"sources":["../../../src/models/application/ApplicationModel.js"],"sourcesContent":["// @flow\nimport ResourceModel from \"../base/ResourceModel\";\nimport LinkModel from \"../links/LinkModel\";\nimport UserServicesModel from \"../user/UserServicesModel\";\n\nimport { NotAllowedUriException } from \"../../exceptions\";\n\nimport type { ModularUIModel, AuthenticationType } from \"../types\";\nimport type { ModularUIResponse } from \"../../modularui\";\nimport type LinkCollection from \"../links/LinkCollection\";\nimport type Href from \"../href/Href\";\n\n/**\n * The Application model\n */\nexport default class ApplicationModel extends ResourceModel {\n _userServices: ?UserServicesModel;\n\n /**\n * Retrieve type of model\n */\n get type(): string {\n return \"Application\";\n }\n\n /**\n */\n static isApplicableModel(data: ModularUIResponse): boolean {\n return (\n data.contributions.resourcetype &&\n data.contributions.resourcetype === \"Application\"\n );\n }\n\n /**\n */\n getInitialChildModelLinks(): Array<LinkModel> {\n const userService = this.links.getLinkByKey(\"UserServices\");\n if (userService && userService.href.path === \"/login\") {\n throw new NotAllowedUriException(\n \"The user service (Login panel) should not have the uri '/login', use a different URI because this uri matches the login service.\"\n );\n }\n\n return userService ? [userService] : [];\n }\n\n /**\n */\n setChildModels(models: Array<ModularUIModel>) {\n const userServiceModel = models.find(\n (model) => model.type === \"UserServices\"\n );\n\n if (userServiceModel) {\n this.userServices = userServiceModel;\n }\n }\n\n /**\n * Getting the label of the application\n */\n get label(): string {\n return this.getContribution(\"label\", \"\");\n }\n\n /**\n * Getting the authentication types of the application\n */\n get authenticationTypes(): Array<AuthenticationType> {\n const authenticationTypes = this.getContribution(\"security\", []);\n\n //put primary first\n return authenticationTypes?.sort(\n (a: AuthenticationType, b: AuthenticationType) =>\n a.isPrimary === b.isPrimary ? 0 : a.isPrimary ? -1 : 1\n );\n }\n /**\n * Getting the tab links\n */\n get tabs(): LinkCollection {\n return this.links.getLinksByGroup(\"tab\");\n }\n\n /**\n * Get modelcatalog link\n */\n get modelcatalog(): LinkModel {\n return LinkModel.create(\"modelcatalog\", \"/modelcatalog\", \"Model catalog\");\n }\n\n /**\n * Set the userservices for this application\n */\n set userServices(model: ?ModularUIModel) {\n this._userServices = model instanceof UserServicesModel ? model : null;\n }\n\n /**\n * returns the userservices configured for this application\n */\n get userServices(): ?UserServicesModel {\n return this._userServices ? this._userServices : null;\n }\n\n /**\n * Indicates if the user is logged in\n */\n get isLoggedIn(): boolean {\n return this.userServices?.isLoggedIn ?? false;\n }\n\n /**\n * Retrieve link to the user information,\n * only available when the user services are available\n */\n get userHref(): Href | null {\n if (this.userServices != null && this.userServices.userLink != null) {\n return this.userServices.userLink.href;\n }\n\n return null;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;AACA,OAAOA,aAAP,MAA0B,uBAA1B;AACA,OAAOC,SAAP,MAAsB,oBAAtB;AACA,OAAOC,iBAAP,MAA8B,2BAA9B;AAEA,SAASC,sBAAT,QAAuC,kBAAvC;;AAOA;AACA;AACA;IACqBC,gB;;;;;;;;;;;;;;;;;;;;;;;;;;IAGnB;AACF;AACA;IACE,eAAmB;MACjB,OAAO,aAAP;IACD;IAED;AACF;;;;;IAQE;AACF;IACE,qCAA8C;MAC5C,IAAMC,WAAW,GAAG,KAAKC,KAAL,CAAWC,YAAX,CAAwB,cAAxB,CAApB;;MACA,IAAIF,WAAW,IAAIA,WAAW,CAACG,IAAZ,CAAiBC,IAAjB,KAA0B,QAA7C,EAAuD;QACrD,MAAM,IAAIN,sBAAJ,CACJ,kIADI,CAAN;MAGD;;MAED,OAAOE,WAAW,GAAG,CAACA,WAAD,CAAH,GAAmB,EAArC;IACD;IAED;AACF;;;;WACE,wBAAeK,MAAf,EAA8C;MAC5C,IAAMC,gBAAgB,GAAG,sBAAAD,MAAM,MAAN,CAAAA,MAAM,EAC7B,UAACE,KAAD;QAAA,OAAWA,KAAK,CAACC,IAAN,KAAe,cAA1B;MAAA,CAD6B,CAA/B;;MAIA,IAAIF,gBAAJ,EAAsB;QACpB,KAAKG,YAAL,GAAoBH,gBAApB;MACD;IACF;IAED;AACF;AACA;;;;SACE,eAAoB;MAClB,OAAO,KAAKI,eAAL,CAAqB,OAArB,EAA8B,EAA9B,CAAP;IACD;IAED;AACF;AACA;;;;SACE,eAAqD;MACnD,IAAMC,mBAAmB,GAAG,KAAKD,eAAL,CAAqB,UAArB,EAAiC,EAAjC,CAA5B,CADmD,CAGnD;;MACA,OAAOC,mBAAP,aAAOA,mBAAP,uBAAO,sBAAAA,mBAAmB,MAAnB,CAAAA,mBAAmB,EACxB,UAACC,CAAD,EAAwBC,CAAxB;QAAA,OACED,CAAC,CAACE,SAAF,KAAgBD,CAAC,CAACC,SAAlB,GAA8B,CAA9B,GAAkCF,CAAC,CAACE,SAAF,GAAc,CAAC,CAAf,GAAmB,CADvD;MAAA,CADwB,CAA1B;IAID;IACD;AACF;AACA;;;;SACE,eAA2B;MACzB,OAAO,KAAKb,KAAL,CAAWc,eAAX,CAA2B,KAA3B,CAAP;IACD;IAED;AACF;AACA;;;;SACE,eAA8B;MAC5B,OAAOnB,SAAS,CAACoB,MAAV,CAAiB,cAAjB,EAAiC,eAAjC,EAAkD,eAAlD,CAAP;IACD;IAED;AACF;AACA;;;;;IAKE;AACF;AACA;IACE,eAAuC;MACrC,OAAO,KAAKC,aAAL,GAAqB,KAAKA,aAA1B,GAA0C,IAAjD;IACD;IAED;AACF;AACA;;SAbE,aAAiBV,KAAjB,EAAyC;MACvC,KAAKU,aAAL,GAAqBV,KAAK,YAAYV,iBAAjB,GAAqCU,KAArC,GAA6C,IAAlE;IACD;;;SAYD,eAA0B;MAAA;;MACxB,sDAAO,KAAKE,YAAZ,uDAAO,mBAAmBS,UAA1B,yEAAwC,KAAxC;IACD;IAED;AACF;AACA;AACA;;;;SACE,eAA4B;MAC1B,IAAI,KAAKT,YAAL,IAAqB,IAArB,IAA6B,KAAKA,YAAL,CAAkBU,QAAlB,IAA8B,IAA/D,EAAqE;QACnE,OAAO,KAAKV,YAAL,CAAkBU,QAAlB,CAA2BhB,IAAlC;MACD;;MAED,OAAO,IAAP;IACD;;;WAhGD,2BAAyBiB,IAAzB,EAA2D;MACzD,OACEA,IAAI,CAACC,aAAL,CAAmBC,YAAnB,IACAF,IAAI,CAACC,aAAL,CAAmBC,YAAnB,KAAoC,aAFtC;IAID;;;;EAjB2C3B,a;;SAAzBI,gB"}
@@ -33,7 +33,6 @@ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !_R
33
33
 
34
34
  import flattenDeep from "lodash/flattenDeep";
35
35
  import deepmerge from "deepmerge";
36
- import { get } from "lodash";
37
36
  import { has } from "../../utils/helpers/objects";
38
37
  import { IllegalArgumentException } from "../../exceptions";
39
38
  import ResourceModel from "../base/ResourceModel";
@@ -191,15 +190,17 @@ var FormModel = /*#__PURE__*/function (_ResourceModel) {
191
190
  }, {
192
191
  key: "getButtonLabel",
193
192
  value: function getButtonLabel(buttonType) {
194
- var _this$currentFormObje;
193
+ var _this$currentFormObje, _this$currentFormObje2, _this$currentFormObje3;
195
194
 
196
195
  // cancel button labels are defined on the form
197
196
  if (buttonType === "cancel") {
198
- return get(this.buttonLabels, "cancel", null);
197
+ var _this$buttonLabels$ca, _this$buttonLabels;
198
+
199
+ return (_this$buttonLabels$ca = (_this$buttonLabels = this.buttonLabels) === null || _this$buttonLabels === void 0 ? void 0 : _this$buttonLabels.cancel) !== null && _this$buttonLabels$ca !== void 0 ? _this$buttonLabels$ca : null;
199
200
  } // all other form related button labels are defined on the object
200
201
 
201
202
 
202
- return get((_this$currentFormObje = this.currentFormObject) === null || _this$currentFormObje === void 0 ? void 0 : _this$currentFormObje.buttonLabels, buttonType, null);
203
+ return (_this$currentFormObje = (_this$currentFormObje2 = this.currentFormObject) === null || _this$currentFormObje2 === void 0 ? void 0 : (_this$currentFormObje3 = _this$currentFormObje2.buttonLabels) === null || _this$currentFormObje3 === void 0 ? void 0 : _this$currentFormObje3[buttonType]) !== null && _this$currentFormObje !== void 0 ? _this$currentFormObje : null;
203
204
  }
204
205
  /**
205
206
  * Get all applicable objects
@@ -572,7 +573,7 @@ var FormModel = /*#__PURE__*/function (_ResourceModel) {
572
573
  var _this6 = this;
573
574
 
574
575
  if (this.currentFormObject) {
575
- var _this$currentFormObje2, _this$currentFormObje3;
576
+ var _this$currentFormObje4, _this$currentFormObje5;
576
577
 
577
578
  if (this.currentFormObject.isRepeatable) {
578
579
  var _context18, _context19;
@@ -589,7 +590,7 @@ var FormModel = /*#__PURE__*/function (_ResourceModel) {
589
590
  }
590
591
  }
591
592
 
592
- return (_this$currentFormObje2 = (_this$currentFormObje3 = this.currentFormObject) === null || _this$currentFormObje3 === void 0 ? void 0 : _this$currentFormObje3.isValid) !== null && _this$currentFormObje2 !== void 0 ? _this$currentFormObje2 : true;
593
+ return (_this$currentFormObje4 = (_this$currentFormObje5 = this.currentFormObject) === null || _this$currentFormObje5 === void 0 ? void 0 : _this$currentFormObje5.isValid) !== null && _this$currentFormObje4 !== void 0 ? _this$currentFormObje4 : true;
593
594
  }
594
595
 
595
596
  return true;