@beinformed/ui 1.18.1 → 1.18.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +18 -0
- package/esm/builder/index.js.map +1 -1
- package/esm/builder/mergeLayoutHintConfigurations.js.map +1 -1
- package/esm/constants/Constants.js +1 -0
- package/esm/constants/Constants.js.map +1 -1
- package/esm/constants/LayoutHintConfig.js.map +1 -1
- package/esm/constants/LayoutHints.js.map +1 -1
- package/esm/constants/Settings.js +10 -3
- package/esm/constants/Settings.js.map +1 -1
- package/esm/constants/index.js.map +1 -1
- package/esm/exceptions/ConfigurationException.js.map +1 -1
- package/esm/exceptions/FetchException.js.map +1 -1
- package/esm/exceptions/IllegalArgumentException.js.map +1 -1
- package/esm/exceptions/IllegalReturnException.js.map +1 -1
- package/esm/exceptions/IllegalStateException.js.map +1 -1
- package/esm/exceptions/JsonParseException.js.map +1 -1
- package/esm/exceptions/MissingPropertyException.js.map +1 -1
- package/esm/exceptions/NetworkException.js.map +1 -1
- package/esm/exceptions/NotAllowedUriException.js.map +1 -1
- package/esm/exceptions/NotFoundException.js.map +1 -1
- package/esm/exceptions/ServerRequestException.js.map +1 -1
- package/esm/exceptions/ThemePropertyException.js.map +1 -1
- package/esm/exceptions/TimeoutException.js.map +1 -1
- package/esm/exceptions/UnauthorizedException.js.map +1 -1
- package/esm/exceptions/UnsupportedOperationException.js.map +1 -1
- package/esm/exceptions/index.js.map +1 -1
- package/esm/hooks/index.js.map +1 -1
- package/esm/hooks/useAllFormsOnModel.js.map +1 -1
- package/esm/hooks/useAuthentication.js.map +1 -1
- package/esm/hooks/useContent.js.map +1 -1
- package/esm/hooks/useDeepCompareEffect.js.map +1 -1
- package/esm/hooks/useForm.js.map +1 -1
- package/esm/hooks/useI18n.js.map +1 -1
- package/esm/hooks/useModal.js.map +1 -1
- package/esm/hooks/useModelCatalog.js.map +1 -1
- package/esm/hooks/useModels.js.map +1 -1
- package/esm/hooks/useModularUI.js.map +1 -1
- package/esm/hooks/useModularUIBasic.js.map +1 -1
- package/esm/hooks/useModularUIModel.js.map +1 -1
- package/esm/hooks/useModularUIRequest.js.map +1 -1
- package/esm/hooks/useNotification.js.map +1 -1
- package/esm/hooks/usePreference.js.map +1 -1
- package/esm/hooks/useProgressIndicator.js.map +1 -1
- package/esm/hooks/useRouter.js.map +1 -1
- package/esm/i18n/Locale.js.map +1 -1
- package/esm/i18n/Locales.js.map +1 -1
- package/esm/i18n/Message.js.map +1 -1
- package/esm/i18n/index.js.map +1 -1
- package/esm/i18n/languages.js.map +1 -1
- package/esm/i18n/translations/beinformed_error_messages_en.nl.js.map +1 -1
- package/esm/i18n/translations/beinformed_error_messages_nl.nl.js.map +1 -1
- package/esm/i18n/types.js.map +1 -1
- package/esm/i18n/withMessage.js.map +1 -1
- package/esm/index.js.map +1 -1
- package/esm/models/actions/ActionCollection.js.map +1 -1
- package/esm/models/actions/ActionModel.js.map +1 -1
- package/esm/models/application/ApplicationModel.js.map +1 -1
- package/esm/models/attributes/AttributeCollection.js.map +1 -1
- package/esm/models/attributes/AttributeContent.js.map +1 -1
- package/esm/models/attributes/AttributeDataHelper.js.map +1 -1
- package/esm/models/attributes/AttributeModel.js.map +1 -1
- package/esm/models/attributes/AttributeSetModel.js.map +1 -1
- package/esm/models/attributes/BooleanAttributeModel.js.map +1 -1
- package/esm/models/attributes/CaptchaAttributeModel.js.map +1 -1
- package/esm/models/attributes/ChoiceAttributeModel.js.map +1 -1
- package/esm/models/attributes/ChoiceAttributeOptionCollection.js.map +1 -1
- package/esm/models/attributes/ChoiceAttributeOptionModel.js.map +1 -1
- package/esm/models/attributes/CompositeAttributeChildCollection.js.map +1 -1
- package/esm/models/attributes/CompositeAttributeModel.js.map +1 -1
- package/esm/models/attributes/DatetimeAttributeModel.js.map +1 -1
- package/esm/models/attributes/HelptextAttributeModel.js.map +1 -1
- package/esm/models/attributes/LabelAttributeModel.js.map +1 -1
- package/esm/models/attributes/MemoAttributeModel.js.map +1 -1
- package/esm/models/attributes/MoneyAttributeModel.js.map +1 -1
- package/esm/models/attributes/NumberAttributeModel.js.map +1 -1
- package/esm/models/attributes/PasswordAttributeModel.js.map +1 -1
- package/esm/models/attributes/StringAttributeModel.js.map +1 -1
- package/esm/models/attributes/UploadAttributeModel.js.map +1 -1
- package/esm/models/attributes/XMLAttributeModel.js.map +1 -1
- package/esm/models/attributes/_createAttribute.js.map +1 -1
- package/esm/models/attributes/input-constraints/BSNConstraint.js.map +1 -1
- package/esm/models/attributes/input-constraints/ConstraintCollection.js.map +1 -1
- package/esm/models/attributes/input-constraints/ConstraintModel.js.map +1 -1
- package/esm/models/attributes/input-constraints/DateBoundaryConstraint.js.map +1 -1
- package/esm/models/attributes/input-constraints/DateTimeDateFormatConstraint.js.map +1 -1
- package/esm/models/attributes/input-constraints/DateTimeTimeFormatConstraint.js.map +1 -1
- package/esm/models/attributes/input-constraints/DatetimeFormatConstraint.js.map +1 -1
- package/esm/models/attributes/input-constraints/FileExtensionConstraint.js.map +1 -1
- package/esm/models/attributes/input-constraints/FileSizeConstraint.js.map +1 -1
- package/esm/models/attributes/input-constraints/IBANConstraint.js.map +1 -1
- package/esm/models/attributes/input-constraints/MandatoryConstraint.js.map +1 -1
- package/esm/models/attributes/input-constraints/MandatoryRangeConstraint.js.map +1 -1
- package/esm/models/attributes/input-constraints/NumberBoundaryConstraint.js.map +1 -1
- package/esm/models/attributes/input-constraints/NumberFormatConstraint.js.map +1 -1
- package/esm/models/attributes/input-constraints/NumberGroupingConstraint.js.map +1 -1
- package/esm/models/attributes/input-constraints/PasswordConfirmConstraint.js.map +1 -1
- package/esm/models/attributes/input-constraints/PasswordLowerAndUpperCaseConstraint.js.map +1 -1
- package/esm/models/attributes/input-constraints/PasswordMinNumericCharactersConstraint.js.map +1 -1
- package/esm/models/attributes/input-constraints/PasswordMinSpecialCharactersConstraint.js.map +1 -1
- package/esm/models/attributes/input-constraints/PasswordThreeConsecutiveCharactersNotAllowedConstraint.js.map +1 -1
- package/esm/models/attributes/input-constraints/RangeConstraint.js.map +1 -1
- package/esm/models/attributes/input-constraints/RegexConstraint.js.map +1 -1
- package/esm/models/attributes/input-constraints/StringLengthConstraint.js.map +1 -1
- package/esm/models/attributes/input-constraints/XMLConstraint.js.map +1 -1
- package/esm/models/attributes/layouthint-rules/BaseLayoutHintRule.js.map +1 -1
- package/esm/models/attributes/layouthint-rules/DependentAttribute.js.map +1 -1
- package/esm/models/attributes/layouthint-rules/LayoutHintRuleCollection.js.map +1 -1
- package/esm/models/attributes/layouthint-rules/RemainingTotalUploadSize.js.map +1 -1
- package/esm/models/base/BaseCollection.js.map +1 -1
- package/esm/models/base/BaseModel.js.map +1 -1
- package/esm/models/base/ResourceCollection.js.map +1 -1
- package/esm/models/base/ResourceModel.js.map +1 -1
- package/esm/models/caseview/CaseViewModel.js.map +1 -1
- package/esm/models/concepts/BusinessScenarioModel.js.map +1 -1
- package/esm/models/concepts/ConceptDetailModel.js.map +1 -1
- package/esm/models/concepts/ConceptIndexModel.js.map +1 -1
- package/esm/models/concepts/ConceptLinkModel.js.map +1 -1
- package/esm/models/concepts/ConceptRelationCollection.js.map +1 -1
- package/esm/models/concepts/ConceptRelationModel.js.map +1 -1
- package/esm/models/concepts/ConceptTypeDetailModel.js.map +1 -1
- package/esm/models/concepts/SourceReferenceCollection.js.map +1 -1
- package/esm/models/concepts/SourceReferenceModel.js.map +1 -1
- package/esm/models/content/ContentIndexModel.js.map +1 -1
- package/esm/models/content/ContentLinkModel.js.map +1 -1
- package/esm/models/content/ContentModel.js.map +1 -1
- package/esm/models/content/ContentTOCModel.js.map +1 -1
- package/esm/models/content/ContentTypeModel.js.map +1 -1
- package/esm/models/content/SectionModel.js.map +1 -1
- package/esm/models/content/SubSectionModel.js.map +1 -1
- package/esm/models/contentconfiguration/ContentConfiguration.js.map +1 -1
- package/esm/models/contentconfiguration/ContentConfigurationElements.js.map +1 -1
- package/esm/models/contentconfiguration/ContentConfigurationEndResults.js.map +1 -1
- package/esm/models/contentconfiguration/ContentConfigurationQuestions.js.map +1 -1
- package/esm/models/contentconfiguration/ContentConfigurationResults.js.map +1 -1
- package/esm/models/detail/DetailModel.js.map +1 -1
- package/esm/models/error/ErrorCollection.js.map +1 -1
- package/esm/models/error/ErrorModel.js.map +1 -1
- package/esm/models/error/ErrorResponse.js.map +1 -1
- package/esm/models/filters/AssignmentFilterModel.js.map +1 -1
- package/esm/models/filters/BaseFilterModel.js.map +1 -1
- package/esm/models/filters/ConceptIndexFilterModel.js.map +1 -1
- package/esm/models/filters/FilterCollection.js.map +1 -1
- package/esm/models/filters/FilterModel.js.map +1 -1
- package/esm/models/filters/RangeFilterModel.js.map +1 -1
- package/esm/models/form/FormModel.js +3 -1
- package/esm/models/form/FormModel.js.map +1 -1
- package/esm/models/form/FormObjectModel.js.map +1 -1
- package/esm/models/grouping/GroupingModel.js.map +1 -1
- package/esm/models/href/Href.js.map +1 -1
- package/esm/models/href/ListHref.js.map +1 -1
- package/esm/models/index.js.map +1 -1
- package/esm/models/layouthint/LayoutHintCollection.js.map +1 -1
- package/esm/models/links/LinkCollection.js.map +1 -1
- package/esm/models/links/LinkModel.js.map +1 -1
- package/esm/models/links/normalizeLinkJSON.js.map +1 -1
- package/esm/models/list/ListDetailModel.js.map +1 -1
- package/esm/models/list/ListHeaderModel.js.map +1 -1
- package/esm/models/list/ListItemCollection.js.map +1 -1
- package/esm/models/list/ListItemModel.js.map +1 -1
- package/esm/models/list/ListModel.js +2 -2
- package/esm/models/list/ListModel.js.map +1 -1
- package/esm/models/lookup/LookupOptionCollection.js.map +1 -1
- package/esm/models/lookup/LookupOptionsModel.js.map +1 -1
- package/esm/models/modelcatalog/ModelCatalogModel.js.map +1 -1
- package/esm/models/paging/PagesizeModel.js.map +1 -1
- package/esm/models/paging/PagingModel.js.map +1 -1
- package/esm/models/panels/GroupingPanelModel.js.map +1 -1
- package/esm/models/parameter/Parameter.js.map +1 -1
- package/esm/models/process/ProcessStatusSettingsModel.js.map +1 -1
- package/esm/models/resolveModel.js.map +1 -1
- package/esm/models/search/CaseSearchModel.js.map +1 -1
- package/esm/models/sorting/SortOptionModel.js.map +1 -1
- package/esm/models/sorting/SortingModel.js.map +1 -1
- package/esm/models/tab/TabModel.js.map +1 -1
- package/esm/models/taskgroup/TaskGroupCollection.js.map +1 -1
- package/esm/models/taskgroup/TaskGroupModel.js.map +1 -1
- package/esm/models/types.js.map +1 -1
- package/esm/models/user/UserModel.js.map +1 -1
- package/esm/models/user/UserProfileModel.js.map +1 -1
- package/esm/models/user/UserServicesModel.js.map +1 -1
- package/esm/modularui/Authenticate.js +98 -20
- package/esm/modularui/Authenticate.js.map +1 -1
- package/esm/modularui/ModularUIError.js.map +1 -1
- package/esm/modularui/ModularUIRequest.js.map +1 -1
- package/esm/modularui/ModularUIResponse.js.map +1 -1
- package/esm/modularui/index.js.map +1 -1
- package/esm/react/ErrorBoundary.js.map +1 -1
- package/esm/react/ErrorBoundaryFallback.js.map +1 -1
- package/esm/react/index.js.map +1 -1
- package/esm/react/utils.js.map +1 -1
- package/esm/react-client/Init.js.map +1 -1
- package/esm/react-client/client.js.map +1 -1
- package/esm/react-client/contextPath.js.map +1 -1
- package/esm/react-client/index.js.map +1 -1
- package/esm/react-client/rehydrate.js.map +1 -1
- package/esm/react-server/contextPath.js.map +1 -1
- package/esm/react-server/createSSRComplete.js.map +1 -1
- package/esm/react-server/htmlpage.js.map +1 -1
- package/esm/react-server/index.js.map +1 -1
- package/esm/react-server/renderSSRComplete.js.map +1 -1
- package/esm/react-server/renderSSRMinimal.js.map +1 -1
- package/esm/react-server/requestInformation.js.map +1 -1
- package/esm/react-server/serverNoSSR.js.map +1 -1
- package/esm/react-server/serverSSR.js.map +1 -1
- package/esm/react-server/serverUtil.js.map +1 -1
- package/esm/react-theme/ThemeProvider.js.map +1 -1
- package/esm/react-theme/createTheme.js.map +1 -1
- package/esm/react-theme/index.js.map +1 -1
- package/esm/react-theme/types.js.map +1 -1
- package/esm/react-theme/useTheme.js.map +1 -1
- package/esm/react-theme/utils/background.js.map +1 -1
- package/esm/react-theme/utils/colors.js.map +1 -1
- package/esm/react-theme/utils/contrast.js.map +1 -1
- package/esm/react-theme/utils/corners.js.map +1 -1
- package/esm/react-theme/utils/spacers.js.map +1 -1
- package/esm/react-theme/utils/themeProps.js.map +1 -1
- package/esm/redux/_i18n/actions.js.map +1 -1
- package/esm/redux/_i18n/index.js.map +1 -1
- package/esm/redux/_i18n/reducer.js.map +1 -1
- package/esm/redux/_i18n/types.js.map +1 -1
- package/esm/redux/_modularui/actions.js.map +1 -1
- package/esm/redux/_modularui/connector.js.map +1 -1
- package/esm/redux/_modularui/index.js.map +1 -1
- package/esm/redux/_modularui/middleware.js.map +1 -1
- package/esm/redux/_modularui/modularuiUtils.js.map +1 -1
- package/esm/redux/_modularui/reducer.js.map +1 -1
- package/esm/redux/_modularui/selectors.js.map +1 -1
- package/esm/redux/_modularui/types.js.map +1 -1
- package/esm/redux/_modularui/withModularUI.js.map +1 -1
- package/esm/redux/_router/actions.js.map +1 -1
- package/esm/redux/_router/connectors.js.map +1 -1
- package/esm/redux/_router/index.js.map +1 -1
- package/esm/redux/_router/middleware.js.map +1 -1
- package/esm/redux/_router/reducer.js.map +1 -1
- package/esm/redux/_router/types.js.map +1 -1
- package/esm/redux/actions/Application.js.map +1 -1
- package/esm/redux/actions/Authorization.js.map +1 -1
- package/esm/redux/actions/Error.js.map +1 -1
- package/esm/redux/actions/Form.js.map +1 -1
- package/esm/redux/actions/FormAttributeSet.js.map +1 -1
- package/esm/redux/actions/FormAttributeSetRepeatable.js.map +1 -1
- package/esm/redux/actions/FormAutosave.js.map +1 -1
- package/esm/redux/actions/FormAutosubmit.js.map +1 -1
- package/esm/redux/actions/FormValidations.js.map +1 -1
- package/esm/redux/actions/Modals.js.map +1 -1
- package/esm/redux/actions/Notification.js.map +1 -1
- package/esm/redux/actions/Preferences.js +2 -2
- package/esm/redux/actions/Preferences.js.map +1 -1
- package/esm/redux/actions/ProgressIndicator.js.map +1 -1
- package/esm/redux/actions/SignIn.js.map +1 -1
- package/esm/redux/actions/SignOut.js.map +1 -1
- package/esm/redux/actions/index.js.map +1 -1
- package/esm/redux/connectors/Application.js.map +1 -1
- package/esm/redux/connectors/Breadcrumb.js.map +1 -1
- package/esm/redux/connectors/CaseView.js.map +1 -1
- package/esm/redux/connectors/ConceptDetail.js.map +1 -1
- package/esm/redux/connectors/ContentBrowser.js.map +1 -1
- package/esm/redux/connectors/ContentDetail.js.map +1 -1
- package/esm/redux/connectors/ContentDetailSection.js.map +1 -1
- package/esm/redux/connectors/Form.js.map +1 -1
- package/esm/redux/connectors/FormAttributeSet.js.map +1 -1
- package/esm/redux/connectors/ListDetail.js.map +1 -1
- package/esm/redux/connectors/Modal.js.map +1 -1
- package/esm/redux/connectors/ModelCatalog.js.map +1 -1
- package/esm/redux/connectors/Notification.js.map +1 -1
- package/esm/redux/connectors/PanelRenderer.js.map +1 -1
- package/esm/redux/connectors/Preferences.js.map +1 -1
- package/esm/redux/connectors/Progress.js.map +1 -1
- package/esm/redux/connectors/ProgressIndicator.js.map +1 -1
- package/esm/redux/connectors/QuickSearch.js.map +1 -1
- package/esm/redux/connectors/SignIn.js.map +1 -1
- package/esm/redux/connectors/SignOut.js.map +1 -1
- package/esm/redux/connectors/Tab.js.map +1 -1
- package/esm/redux/connectors/index.js.map +1 -1
- package/esm/redux/index.js.map +1 -1
- package/esm/redux/reducers/AuthReducer.js.map +1 -1
- package/esm/redux/reducers/ErrorReducer.js.map +1 -1
- package/esm/redux/reducers/ModalsReducer.js.map +1 -1
- package/esm/redux/reducers/NotificationReducer.js.map +1 -1
- package/esm/redux/reducers/PreferencesReducer.js.map +1 -1
- package/esm/redux/reducers/ProgressIndicatorReducer.js.map +1 -1
- package/esm/redux/reducers/createReducer.js.map +1 -1
- package/esm/redux/reducers/index.js.map +1 -1
- package/esm/redux/store/beforeRenderHooks.js.map +1 -1
- package/esm/redux/store/configureStore.js.map +1 -1
- package/esm/redux/types.js.map +1 -1
- package/esm/utils/browser/Cache.js.map +1 -1
- package/esm/utils/browser/Cookies.js.map +1 -1
- package/esm/utils/datetime/DateTimeUtil.js.map +1 -1
- package/esm/utils/fetch/serverFetch.js.map +1 -1
- package/esm/utils/fetch/types.js.map +1 -1
- package/esm/utils/fetch/universalFetch.js.map +1 -1
- package/esm/utils/fetch/xhr.js.map +1 -1
- package/esm/utils/helpers/checkResource.js.map +1 -1
- package/esm/utils/helpers/createHash.js.map +1 -1
- package/esm/utils/helpers/createUUID.js.map +1 -1
- package/esm/utils/helpers/objects.js.map +1 -1
- package/esm/utils/helpers/sanitizeHtml.js.map +1 -1
- package/esm/utils/helpers/text.js.map +1 -1
- package/esm/utils/index.js.map +1 -1
- package/esm/utils/number/DecimalFormat.js.map +1 -1
- package/esm/utils/number/formatValue.js.map +1 -1
- package/esm/utils/number/parseNumbers.js.map +1 -1
- package/lib/builder/index.js.map +1 -1
- package/lib/builder/mergeLayoutHintConfigurations.js.map +1 -1
- package/lib/constants/Constants.js +3 -1
- package/lib/constants/Constants.js.flow +1 -0
- package/lib/constants/Constants.js.map +1 -1
- package/lib/constants/LayoutHintConfig.js.map +1 -1
- package/lib/constants/LayoutHints.js.map +1 -1
- package/lib/constants/Settings.js +13 -3
- package/lib/constants/Settings.js.flow +8 -3
- package/lib/constants/Settings.js.map +1 -1
- package/lib/constants/index.js.map +1 -1
- package/lib/exceptions/ConfigurationException.js.map +1 -1
- package/lib/exceptions/FetchException.js.map +1 -1
- package/lib/exceptions/IllegalArgumentException.js.map +1 -1
- package/lib/exceptions/IllegalReturnException.js.map +1 -1
- package/lib/exceptions/IllegalStateException.js.map +1 -1
- package/lib/exceptions/JsonParseException.js.map +1 -1
- package/lib/exceptions/MissingPropertyException.js.map +1 -1
- package/lib/exceptions/NetworkException.js.map +1 -1
- package/lib/exceptions/NotAllowedUriException.js.map +1 -1
- package/lib/exceptions/NotFoundException.js.map +1 -1
- package/lib/exceptions/ServerRequestException.js.map +1 -1
- package/lib/exceptions/ThemePropertyException.js.map +1 -1
- package/lib/exceptions/TimeoutException.js.map +1 -1
- package/lib/exceptions/UnauthorizedException.js.map +1 -1
- package/lib/exceptions/UnsupportedOperationException.js.map +1 -1
- package/lib/exceptions/index.js.map +1 -1
- package/lib/hooks/index.js.map +1 -1
- package/lib/hooks/useAllFormsOnModel.js.map +1 -1
- package/lib/hooks/useAuthentication.js.map +1 -1
- package/lib/hooks/useContent.js.map +1 -1
- package/lib/hooks/useDeepCompareEffect.js.map +1 -1
- package/lib/hooks/useForm.js.map +1 -1
- package/lib/hooks/useI18n.js.map +1 -1
- package/lib/hooks/useModal.js.map +1 -1
- package/lib/hooks/useModelCatalog.js.map +1 -1
- package/lib/hooks/useModels.js.map +1 -1
- package/lib/hooks/useModularUI.js.map +1 -1
- package/lib/hooks/useModularUIBasic.js.map +1 -1
- package/lib/hooks/useModularUIModel.js.map +1 -1
- package/lib/hooks/useModularUIRequest.js.map +1 -1
- package/lib/hooks/useNotification.js.map +1 -1
- package/lib/hooks/usePreference.js.map +1 -1
- package/lib/hooks/useProgressIndicator.js.map +1 -1
- package/lib/hooks/useRouter.js.map +1 -1
- package/lib/i18n/Locale.js.map +1 -1
- package/lib/i18n/Locales.js.map +1 -1
- package/lib/i18n/Message.js.map +1 -1
- package/lib/i18n/index.js.map +1 -1
- package/lib/i18n/languages.js.map +1 -1
- package/lib/i18n/translations/beinformed_error_messages_en.nl.js.map +1 -1
- package/lib/i18n/translations/beinformed_error_messages_nl.nl.js.map +1 -1
- package/lib/i18n/types.js.map +1 -1
- package/lib/i18n/withMessage.js.map +1 -1
- package/lib/index.js.map +1 -1
- package/lib/models/actions/ActionCollection.js.map +1 -1
- package/lib/models/actions/ActionModel.js.map +1 -1
- package/lib/models/application/ApplicationModel.js.map +1 -1
- package/lib/models/attributes/AttributeCollection.js.map +1 -1
- package/lib/models/attributes/AttributeContent.js.map +1 -1
- package/lib/models/attributes/AttributeDataHelper.js.map +1 -1
- package/lib/models/attributes/AttributeModel.js.map +1 -1
- package/lib/models/attributes/AttributeSetModel.js.map +1 -1
- package/lib/models/attributes/BooleanAttributeModel.js.map +1 -1
- package/lib/models/attributes/CaptchaAttributeModel.js.map +1 -1
- package/lib/models/attributes/ChoiceAttributeModel.js.map +1 -1
- package/lib/models/attributes/ChoiceAttributeOptionCollection.js.map +1 -1
- package/lib/models/attributes/ChoiceAttributeOptionModel.js.map +1 -1
- package/lib/models/attributes/CompositeAttributeChildCollection.js.map +1 -1
- package/lib/models/attributes/CompositeAttributeModel.js.map +1 -1
- package/lib/models/attributes/DatetimeAttributeModel.js.map +1 -1
- package/lib/models/attributes/HelptextAttributeModel.js.map +1 -1
- package/lib/models/attributes/LabelAttributeModel.js.map +1 -1
- package/lib/models/attributes/MemoAttributeModel.js.map +1 -1
- package/lib/models/attributes/MoneyAttributeModel.js.map +1 -1
- package/lib/models/attributes/NumberAttributeModel.js.map +1 -1
- package/lib/models/attributes/PasswordAttributeModel.js.map +1 -1
- package/lib/models/attributes/StringAttributeModel.js.map +1 -1
- package/lib/models/attributes/UploadAttributeModel.js.map +1 -1
- package/lib/models/attributes/XMLAttributeModel.js.map +1 -1
- package/lib/models/attributes/_createAttribute.js.map +1 -1
- package/lib/models/attributes/input-constraints/BSNConstraint.js.map +1 -1
- package/lib/models/attributes/input-constraints/ConstraintCollection.js.map +1 -1
- package/lib/models/attributes/input-constraints/ConstraintModel.js.map +1 -1
- package/lib/models/attributes/input-constraints/DateBoundaryConstraint.js.map +1 -1
- package/lib/models/attributes/input-constraints/DateTimeDateFormatConstraint.js.map +1 -1
- package/lib/models/attributes/input-constraints/DateTimeTimeFormatConstraint.js.map +1 -1
- package/lib/models/attributes/input-constraints/DatetimeFormatConstraint.js.map +1 -1
- package/lib/models/attributes/input-constraints/FileExtensionConstraint.js.map +1 -1
- package/lib/models/attributes/input-constraints/FileSizeConstraint.js.map +1 -1
- package/lib/models/attributes/input-constraints/IBANConstraint.js.map +1 -1
- package/lib/models/attributes/input-constraints/MandatoryConstraint.js.map +1 -1
- package/lib/models/attributes/input-constraints/MandatoryRangeConstraint.js.map +1 -1
- package/lib/models/attributes/input-constraints/NumberBoundaryConstraint.js.map +1 -1
- package/lib/models/attributes/input-constraints/NumberFormatConstraint.js.map +1 -1
- package/lib/models/attributes/input-constraints/NumberGroupingConstraint.js.map +1 -1
- package/lib/models/attributes/input-constraints/PasswordConfirmConstraint.js.map +1 -1
- package/lib/models/attributes/input-constraints/PasswordLowerAndUpperCaseConstraint.js.map +1 -1
- package/lib/models/attributes/input-constraints/PasswordMinNumericCharactersConstraint.js.map +1 -1
- package/lib/models/attributes/input-constraints/PasswordMinSpecialCharactersConstraint.js.map +1 -1
- package/lib/models/attributes/input-constraints/PasswordThreeConsecutiveCharactersNotAllowedConstraint.js.map +1 -1
- package/lib/models/attributes/input-constraints/RangeConstraint.js.map +1 -1
- package/lib/models/attributes/input-constraints/RegexConstraint.js.map +1 -1
- package/lib/models/attributes/input-constraints/StringLengthConstraint.js.map +1 -1
- package/lib/models/attributes/input-constraints/XMLConstraint.js.map +1 -1
- package/lib/models/attributes/layouthint-rules/BaseLayoutHintRule.js.map +1 -1
- package/lib/models/attributes/layouthint-rules/DependentAttribute.js.map +1 -1
- package/lib/models/attributes/layouthint-rules/LayoutHintRuleCollection.js.map +1 -1
- package/lib/models/attributes/layouthint-rules/RemainingTotalUploadSize.js.map +1 -1
- package/lib/models/base/BaseCollection.js.map +1 -1
- package/lib/models/base/BaseModel.js.map +1 -1
- package/lib/models/base/ResourceCollection.js.map +1 -1
- package/lib/models/base/ResourceModel.js.map +1 -1
- package/lib/models/caseview/CaseViewModel.js.map +1 -1
- package/lib/models/concepts/BusinessScenarioModel.js.map +1 -1
- package/lib/models/concepts/ConceptDetailModel.js.map +1 -1
- package/lib/models/concepts/ConceptIndexModel.js.map +1 -1
- package/lib/models/concepts/ConceptLinkModel.js.map +1 -1
- package/lib/models/concepts/ConceptRelationCollection.js.map +1 -1
- package/lib/models/concepts/ConceptRelationModel.js.map +1 -1
- package/lib/models/concepts/ConceptTypeDetailModel.js.map +1 -1
- package/lib/models/concepts/SourceReferenceCollection.js.map +1 -1
- package/lib/models/concepts/SourceReferenceModel.js.map +1 -1
- package/lib/models/content/ContentIndexModel.js.map +1 -1
- package/lib/models/content/ContentLinkModel.js.map +1 -1
- package/lib/models/content/ContentModel.js.map +1 -1
- package/lib/models/content/ContentTOCModel.js.map +1 -1
- package/lib/models/content/ContentTypeModel.js.map +1 -1
- package/lib/models/content/SectionModel.js.map +1 -1
- package/lib/models/content/SubSectionModel.js.map +1 -1
- package/lib/models/contentconfiguration/ContentConfiguration.js.map +1 -1
- package/lib/models/contentconfiguration/ContentConfigurationElements.js.map +1 -1
- package/lib/models/contentconfiguration/ContentConfigurationEndResults.js.map +1 -1
- package/lib/models/contentconfiguration/ContentConfigurationQuestions.js.map +1 -1
- package/lib/models/contentconfiguration/ContentConfigurationResults.js.map +1 -1
- package/lib/models/detail/DetailModel.js.map +1 -1
- package/lib/models/error/ErrorCollection.js.map +1 -1
- package/lib/models/error/ErrorModel.js.map +1 -1
- package/lib/models/error/ErrorResponse.js.map +1 -1
- package/lib/models/filters/AssignmentFilterModel.js.map +1 -1
- package/lib/models/filters/BaseFilterModel.js.map +1 -1
- package/lib/models/filters/ConceptIndexFilterModel.js.map +1 -1
- package/lib/models/filters/FilterCollection.js.map +1 -1
- package/lib/models/filters/FilterModel.js.map +1 -1
- package/lib/models/filters/RangeFilterModel.js.map +1 -1
- package/lib/models/form/FormModel.js +3 -1
- package/lib/models/form/FormModel.js.flow +1 -1
- package/lib/models/form/FormModel.js.map +1 -1
- package/lib/models/form/FormObjectModel.js.map +1 -1
- package/lib/models/grouping/GroupingModel.js.map +1 -1
- package/lib/models/href/Href.js.map +1 -1
- package/lib/models/href/ListHref.js.map +1 -1
- package/lib/models/index.js.map +1 -1
- package/lib/models/layouthint/LayoutHintCollection.js.map +1 -1
- package/lib/models/links/LinkCollection.js.map +1 -1
- package/lib/models/links/LinkModel.js.map +1 -1
- package/lib/models/links/normalizeLinkJSON.js.map +1 -1
- package/lib/models/list/ListDetailModel.js.map +1 -1
- package/lib/models/list/ListHeaderModel.js.map +1 -1
- package/lib/models/list/ListItemCollection.js.map +1 -1
- package/lib/models/list/ListItemModel.js.map +1 -1
- package/lib/models/list/ListModel.js +2 -2
- package/lib/models/list/ListModel.js.flow +1 -2
- package/lib/models/list/ListModel.js.map +1 -1
- package/lib/models/list/__tests__/ListModel.spec.js.flow +13 -0
- package/lib/models/lookup/LookupOptionCollection.js.map +1 -1
- package/lib/models/lookup/LookupOptionsModel.js.map +1 -1
- package/lib/models/modelcatalog/ModelCatalogModel.js.map +1 -1
- package/lib/models/paging/PagesizeModel.js.map +1 -1
- package/lib/models/paging/PagingModel.js.map +1 -1
- package/lib/models/panels/GroupingPanelModel.js.map +1 -1
- package/lib/models/parameter/Parameter.js.map +1 -1
- package/lib/models/process/ProcessStatusSettingsModel.js.map +1 -1
- package/lib/models/resolveModel.js.map +1 -1
- package/lib/models/search/CaseSearchModel.js.map +1 -1
- package/lib/models/sorting/SortOptionModel.js.map +1 -1
- package/lib/models/sorting/SortingModel.js.map +1 -1
- package/lib/models/tab/TabModel.js.map +1 -1
- package/lib/models/taskgroup/TaskGroupCollection.js.map +1 -1
- package/lib/models/taskgroup/TaskGroupModel.js.map +1 -1
- package/lib/models/types.js.map +1 -1
- package/lib/models/user/UserModel.js.map +1 -1
- package/lib/models/user/UserProfileModel.js.map +1 -1
- package/lib/models/user/UserServicesModel.js.map +1 -1
- package/lib/modularui/Authenticate.js +99 -20
- package/lib/modularui/Authenticate.js.flow +72 -18
- package/lib/modularui/Authenticate.js.map +1 -1
- package/lib/modularui/ModularUIError.js.map +1 -1
- package/lib/modularui/ModularUIRequest.js.map +1 -1
- package/lib/modularui/ModularUIResponse.js.map +1 -1
- package/lib/modularui/index.js.map +1 -1
- package/lib/react/ErrorBoundary.js.map +1 -1
- package/lib/react/ErrorBoundaryFallback.js.map +1 -1
- package/lib/react/index.js.map +1 -1
- package/lib/react/utils.js.map +1 -1
- package/lib/react-client/Init.js.map +1 -1
- package/lib/react-client/client.js.map +1 -1
- package/lib/react-client/contextPath.js.map +1 -1
- package/lib/react-client/index.js.map +1 -1
- package/lib/react-client/rehydrate.js.map +1 -1
- package/lib/react-server/__tests__/serverUtil.spec.js.flow +6 -4
- package/lib/react-server/contextPath.js.map +1 -1
- package/lib/react-server/createSSRComplete.js.map +1 -1
- package/lib/react-server/htmlpage.js.map +1 -1
- package/lib/react-server/index.js.map +1 -1
- package/lib/react-server/renderSSRComplete.js.map +1 -1
- package/lib/react-server/renderSSRMinimal.js.map +1 -1
- package/lib/react-server/requestInformation.js.map +1 -1
- package/lib/react-server/serverNoSSR.js.map +1 -1
- package/lib/react-server/serverSSR.js.map +1 -1
- package/lib/react-server/serverUtil.js.map +1 -1
- package/lib/react-theme/ThemeProvider.js.map +1 -1
- package/lib/react-theme/createTheme.js.map +1 -1
- package/lib/react-theme/index.js.map +1 -1
- package/lib/react-theme/types.js.map +1 -1
- package/lib/react-theme/useTheme.js.map +1 -1
- package/lib/react-theme/utils/background.js.map +1 -1
- package/lib/react-theme/utils/colors.js.map +1 -1
- package/lib/react-theme/utils/contrast.js.map +1 -1
- package/lib/react-theme/utils/corners.js.map +1 -1
- package/lib/react-theme/utils/spacers.js.map +1 -1
- package/lib/react-theme/utils/themeProps.js.map +1 -1
- package/lib/redux/_i18n/actions.js.map +1 -1
- package/lib/redux/_i18n/index.js.map +1 -1
- package/lib/redux/_i18n/reducer.js.map +1 -1
- package/lib/redux/_i18n/types.js.map +1 -1
- package/lib/redux/_modularui/actions.js.map +1 -1
- package/lib/redux/_modularui/connector.js.map +1 -1
- package/lib/redux/_modularui/index.js.map +1 -1
- package/lib/redux/_modularui/middleware.js.map +1 -1
- package/lib/redux/_modularui/modularuiUtils.js.map +1 -1
- package/lib/redux/_modularui/reducer.js.map +1 -1
- package/lib/redux/_modularui/selectors.js.map +1 -1
- package/lib/redux/_modularui/types.js.map +1 -1
- package/lib/redux/_modularui/withModularUI.js.map +1 -1
- package/lib/redux/_router/actions.js.map +1 -1
- package/lib/redux/_router/connectors.js.map +1 -1
- package/lib/redux/_router/index.js.map +1 -1
- package/lib/redux/_router/middleware.js.map +1 -1
- package/lib/redux/_router/reducer.js.map +1 -1
- package/lib/redux/_router/types.js.map +1 -1
- package/lib/redux/actions/Application.js.map +1 -1
- package/lib/redux/actions/Authorization.js.map +1 -1
- package/lib/redux/actions/Error.js.map +1 -1
- package/lib/redux/actions/Form.js.map +1 -1
- package/lib/redux/actions/FormAttributeSet.js.map +1 -1
- package/lib/redux/actions/FormAttributeSetRepeatable.js.map +1 -1
- package/lib/redux/actions/FormAutosave.js.map +1 -1
- package/lib/redux/actions/FormAutosubmit.js.map +1 -1
- package/lib/redux/actions/FormValidations.js.map +1 -1
- package/lib/redux/actions/Modals.js.map +1 -1
- package/lib/redux/actions/Notification.js.map +1 -1
- package/lib/redux/actions/Preferences.js +1 -1
- package/lib/redux/actions/Preferences.js.flow +7 -3
- package/lib/redux/actions/Preferences.js.map +1 -1
- package/lib/redux/actions/ProgressIndicator.js.map +1 -1
- package/lib/redux/actions/SignIn.js.map +1 -1
- package/lib/redux/actions/SignOut.js.map +1 -1
- package/lib/redux/actions/index.js.map +1 -1
- package/lib/redux/connectors/Application.js.map +1 -1
- package/lib/redux/connectors/Breadcrumb.js.map +1 -1
- package/lib/redux/connectors/CaseView.js.map +1 -1
- package/lib/redux/connectors/ConceptDetail.js.map +1 -1
- package/lib/redux/connectors/ContentBrowser.js.map +1 -1
- package/lib/redux/connectors/ContentDetail.js.map +1 -1
- package/lib/redux/connectors/ContentDetailSection.js.map +1 -1
- package/lib/redux/connectors/Form.js.map +1 -1
- package/lib/redux/connectors/FormAttributeSet.js.map +1 -1
- package/lib/redux/connectors/ListDetail.js.map +1 -1
- package/lib/redux/connectors/Modal.js.map +1 -1
- package/lib/redux/connectors/ModelCatalog.js.map +1 -1
- package/lib/redux/connectors/Notification.js.map +1 -1
- package/lib/redux/connectors/PanelRenderer.js.map +1 -1
- package/lib/redux/connectors/Preferences.js.map +1 -1
- package/lib/redux/connectors/Progress.js.map +1 -1
- package/lib/redux/connectors/ProgressIndicator.js.map +1 -1
- package/lib/redux/connectors/QuickSearch.js.map +1 -1
- package/lib/redux/connectors/SignIn.js.map +1 -1
- package/lib/redux/connectors/SignOut.js.map +1 -1
- package/lib/redux/connectors/Tab.js.map +1 -1
- package/lib/redux/connectors/index.js.map +1 -1
- package/lib/redux/index.js.map +1 -1
- package/lib/redux/reducers/AuthReducer.js.map +1 -1
- package/lib/redux/reducers/ErrorReducer.js.map +1 -1
- package/lib/redux/reducers/ModalsReducer.js.map +1 -1
- package/lib/redux/reducers/NotificationReducer.js.map +1 -1
- package/lib/redux/reducers/PreferencesReducer.js.map +1 -1
- package/lib/redux/reducers/ProgressIndicatorReducer.js.map +1 -1
- package/lib/redux/reducers/createReducer.js.map +1 -1
- package/lib/redux/reducers/index.js.map +1 -1
- package/lib/redux/store/beforeRenderHooks.js.map +1 -1
- package/lib/redux/store/configureStore.js.map +1 -1
- package/lib/redux/types.js.map +1 -1
- package/lib/utils/browser/Cache.js.map +1 -1
- package/lib/utils/browser/Cookies.js.map +1 -1
- package/lib/utils/datetime/DateTimeUtil.js.map +1 -1
- package/lib/utils/fetch/serverFetch.js.map +1 -1
- package/lib/utils/fetch/types.js.map +1 -1
- package/lib/utils/fetch/universalFetch.js.map +1 -1
- package/lib/utils/fetch/xhr.js.map +1 -1
- package/lib/utils/helpers/checkResource.js.map +1 -1
- package/lib/utils/helpers/createHash.js.map +1 -1
- package/lib/utils/helpers/createUUID.js.map +1 -1
- package/lib/utils/helpers/objects.js.map +1 -1
- package/lib/utils/helpers/sanitizeHtml.js.map +1 -1
- package/lib/utils/helpers/text.js.map +1 -1
- package/lib/utils/index.js.map +1 -1
- package/lib/utils/number/DecimalFormat.js.map +1 -1
- package/lib/utils/number/formatValue.js.map +1 -1
- package/lib/utils/number/parseNumbers.js.map +1 -1
- package/package.json +10 -10
- package/src/constants/Constants.js +1 -0
- package/src/constants/Settings.js +8 -3
- package/src/models/form/FormModel.js +1 -1
- package/src/models/list/ListModel.js +1 -2
- package/src/models/list/__tests__/ListModel.spec.js +13 -0
- package/src/models/list/__tests__/related-contributions.json +42 -0
- package/src/models/list/__tests__/related-data.json +32 -0
- package/src/modularui/Authenticate.js +72 -18
- package/src/react-server/__tests__/serverUtil.spec.js +6 -4
- package/src/redux/actions/Preferences.js +7 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"types.js","names":[],"sources":["../../../src/redux/_i18n/types.js"],"sourcesContent":["// @flow\nimport type Locales from \"../../i18n/Locales\";\n\nexport type I18nState = {\n +locales: Locales,\n +locale: string,\n};\n\nexport type UpdateLocaleAction = {\n type: \"UPDATE_LOCALE\",\n payload: string,\n};\n\nexport type SetLocalesAction = {\n type: \"SET_LOCALES\",\n payload: {\n locales: Locales,\n locale: string,\n },\n};\n"],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"actions.js","names":["setModel","key","model","connectKey","type","payload","updateModel","removeModelByKey","resetModularUI","updateStatus","status","loadModelSuccessAction","modelToUpdate","clonedModel","clone","update","Error","loadModel","href","options","Href","method","HTTP_METHODS","GET","data","locale","childmodels","targetModel","successAction","errorAction","error","errorResponse","ErrorResponse","isChangePassword","isResourceNotFoundAfterReload","isInvalidUsername","MODULARUI_STATUS","ERROR","loadModularUI","dispatch","LOADING","loadModelPromise","resolve","then","response","FINISHED","catch","reloadModel","selfhref","isReload"],"sources":["../../../src/redux/_modularui/actions.js"],"sourcesContent":["// @flow\nimport { HTTP_METHODS, MODULARUI_STATUS } from \"../../constants/Constants\";\nimport Href from \"../../models/href/Href\";\nimport ErrorResponse from \"../../models/error/ErrorResponse\";\nimport { finishProgress, startProgress } from \"../actions/ProgressIndicator\";\nimport { handleError } from \"../actions/Error\";\n\nimport type { ModularUIModel } from \"../../models/types\";\nimport type { Dispatch, ThunkAction } from \"../types\";\nimport type {\n ModularUIAction,\n SetModelAction,\n UpdateModelAction,\n RemoveModelByKeyAction,\n ResetModularUIAction,\n UpdateStatusAction,\n} from \"./types\";\nimport type { RequestBaseOptions } from \"../../utils/fetch/types\";\n\n/**\n */\nexport const setModel = (\n key: string,\n model: ModularUIModel\n): SetModelAction => {\n // set key on model for later reference\n model.connectKey = key;\n return {\n type: \"MODULARUI/SET\",\n payload: {\n key,\n model,\n },\n };\n};\n\n/**\n */\nexport const updateModel = (model: ModularUIModel): UpdateModelAction => ({\n type: \"MODULARUI/UPDATE\",\n payload: model,\n});\n\n/**\n */\nexport const removeModelByKey = (key: string): RemoveModelByKeyAction => ({\n type: \"MODULARUI/REMOVE_KEY\",\n payload: key,\n});\n\n/**\n * Removes all models except the application model from the modular ui reducer\n */\nexport const resetModularUI = (): ResetModularUIAction => ({\n type: \"MODULARUI/RESET\",\n});\n\n/**\n */\nexport const updateStatus = (\n key: string,\n status: $Keys<typeof MODULARUI_STATUS>\n): UpdateStatusAction => ({\n type: \"MODULARUI/STATUS\",\n payload: { key, status },\n});\n\n/**\n */\nconst loadModelSuccessAction = (\n key: string,\n model: ModularUIModel,\n modelToUpdate\n): UpdateModelAction | SetModelAction => {\n if (modelToUpdate) {\n // $FlowFixMe[prop-missing]\n if (typeof modelToUpdate[\"update\"] === \"function\") {\n const clonedModel = modelToUpdate.clone();\n clonedModel.update(model);\n\n return updateModel(clonedModel);\n }\n\n throw new Error(\n `loadModel action: updateModel is set as option for ${key}, but the model is missing an update methode`\n );\n }\n\n return setModel(key, model);\n};\n\n/**\n */\nexport const loadModel = (\n key: string,\n href: Href | string,\n options?: RequestBaseOptions\n): ModularUIAction => ({\n type: \"MODULARUI/FETCH\",\n payload: {\n href: href instanceof Href ? href : new Href(href),\n method: options?.method ?? HTTP_METHODS.GET,\n data: options?.data,\n locale: options?.locale ?? \"en\",\n childmodels: options?.childmodels,\n targetModel: options?.targetModel,\n /**\n */\n successAction: (model) =>\n loadModelSuccessAction(key, model, options?.updateModel),\n /**\n */\n errorAction: (error) => {\n const errorResponse = new ErrorResponse(error, key);\n if (errorResponse.isChangePassword) {\n return {\n type: \"NO_ACTION\",\n };\n } else if (\n errorResponse.isResourceNotFoundAfterReload ||\n errorResponse.isInvalidUsername\n ) {\n return removeModelByKey(key);\n }\n\n return updateStatus(key, MODULARUI_STATUS.ERROR);\n },\n },\n});\n\n/**\n */\nexport const loadModularUI =\n (\n key: string,\n href: Href | string,\n options?: RequestBaseOptions\n ): ThunkAction =>\n (dispatch: Dispatch) => {\n dispatch(updateStatus(key, MODULARUI_STATUS.LOADING));\n dispatch(startProgress());\n\n const loadModelPromise = dispatch(loadModel(key, href, options));\n\n return Promise.resolve(loadModelPromise)\n .then((response) => {\n if (response?.type === \"FINISH_PROGRESS\") {\n dispatch(updateStatus(key, MODULARUI_STATUS.FINISHED));\n }\n\n return dispatch(finishProgress());\n })\n .catch((error) => dispatch(handleError(error)));\n };\n\n/**\n */\nexport const reloadModel = (\n model: ModularUIModel,\n options?: RequestBaseOptions\n): ThunkAction =>\n loadModularUI(model.connectKey, model.selfhref, {\n ...options,\n isReload: true,\n });\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"connector.js","names":["connector","name","resource","options","propName","removeOnUnmount","otherOptions","Component","WrappedComponent","props","dispatch","location","url","displayName","contextId","modelEntry","modelKey","model","connectKey","handleManualReload","reloadOptions","handleFetch","href","fetchOptions","reload","state","doReload","isReload","locale","i18n","newProps","status","lastModification","Boolean"],"sources":["../../../src/redux/_modularui/connector.js"],"sourcesContent":["// @flow\nimport { useEffect } from \"react\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useLocation } from \"react-router\";\n\nimport { loadModularUI, reloadModel, removeModelByKey } from \"./actions\";\n\nimport Href from \"../../models/href/Href\";\nimport { getDisplayName } from \"../../react/utils\";\n\nimport { useUrl, useReload } from \"./modularuiUtils\";\nimport { useModularUI } from \"../../hooks/useModularUI\";\n\nimport type { ComponentType, Node } from \"react\";\nimport type { Location } from \"react-router\";\nimport type { ModularUIModel } from \"../../models/types\";\nimport type { ModularUIOptions } from \"./types\";\n\nexport type InjectedProps = {\n +modelKey: string,\n +location: Location,\n +status: string | null,\n +lastModification: number | null,\n +hasModel: boolean,\n +locale: string,\n +fetchModularUI: (href: string | Href, fetchOptions: Object) => void,\n +reloadModel: (model: ModularUIModel, options: Object) => void,\n +data?: ?ModularUIModel,\n};\n\n/**\n */\nconst connector = (\n name: string,\n resource: string | Function,\n options: ModularUIOptions = { propName: \"data\", removeOnUnmount: false }\n): ((Component: ComponentType<any>) => (props: any) => Node) => {\n const {\n propName = \"data\",\n removeOnUnmount = false,\n ...otherOptions\n } = options;\n\n return (Component: ComponentType<any>) => {\n const WrappedComponent = (props: any) => {\n const dispatch = useDispatch();\n const location = useLocation();\n\n const url = useUrl(resource, { location, ...props });\n const displayName = getDisplayName(Component, name, props.contextId);\n\n // Load the model through the useModUI hook\n const modelEntry = useModularUI(displayName, url, otherOptions);\n const modelKey = modelEntry?.model?.connectKey;\n\n // handle manual reload of model\n const handleManualReload = (\n model: ModularUIModel,\n reloadOptions?: Object\n ) => {\n dispatch(reloadModel(model, reloadOptions));\n };\n\n // Provide connected models with a fetchModularUI method to be able\n // to run the loadModularUI action from a handler / callback in the component\n const handleFetch = (href: string | Href, fetchOptions: Object) => {\n dispatch(loadModularUI(modelKey, href, fetchOptions));\n };\n\n // Check if current model needs a reload\n const reload = location?.state?.reload ?? 0;\n const doReload = useReload(modelEntry, reload);\n useEffect(() => {\n if (doReload) {\n dispatch(\n loadModularUI(modelKey, url, { ...otherOptions, isReload: true })\n );\n }\n }, [dispatch, doReload, url, modelKey]);\n\n // Remove model when hoc unloads\n useEffect(() => {\n return () => {\n if (removeOnUnmount) {\n dispatch(removeModelByKey(modelKey));\n }\n };\n }, [dispatch, modelKey]);\n\n // Create new properties object to inject modularui properties to own props\n const locale = useSelector((state) => state.i18n.locale);\n const newProps: InjectedProps = {\n modelKey,\n [propName]: modelEntry ? modelEntry.model : null,\n location,\n status: modelEntry ? modelEntry.status : null,\n lastModification: modelEntry ? modelEntry.lastModification : null,\n hasModel: Boolean(modelEntry),\n locale,\n fetchModularUI: handleFetch,\n reloadModel: handleManualReload,\n };\n\n return <Component {...props} {...newProps} />;\n };\n\n WrappedComponent.displayName = `BI.modularui(${getDisplayName(\n WrappedComponent,\n name\n )}`;\n\n return WrappedComponent;\n };\n};\n\nexport default connector;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../src/redux/_modularui/index.js"],"sourcesContent":["// @flow\nexport * from \"./middleware\";\nexport * from \"./reducer\";\nexport { default as modularui } from \"./connector\";\nexport { default as withModularUI } from \"./withModularUI\";\n\nexport * from \"./modularuiUtils\";\nexport * from \"./actions\";\nexport * from \"./selectors\";\n\nexport type * from \"./types\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA;;AAAA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AACA;;AAEA;;AAAA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"middleware.js","names":["createRequest","modularui","request","ModularUIRequest","href","method","HTTP_METHODS","GET","data","locale","childmodels","isReload","targetModel","responseHandler","next","dispatch","successAction","model","successResult","then","result","catch","error","Error","errorHandler","errorAction","err","errorResult","handleFetch","action","payload","requestOptions","modularuiRequest","fetch","modularuiMiddleware","api","type","getState","i18n"],"sources":["../../../src/redux/_modularui/middleware.js"],"sourcesContent":["// @flow\nimport ModularUIRequest from \"../../modularui/ModularUIRequest\";\nimport { HTTP_METHODS } from \"../../constants/Constants\";\n\nimport { startProgress, finishProgress } from \"../actions/ProgressIndicator\";\n\nimport { handleError } from \"../actions/Error\";\n\nimport type { Middleware, MiddlewareAPI } from \"redux\";\nimport type {\n ReduxAction,\n ReduxState,\n Dispatch,\n PossibleAction,\n} from \"../types\";\nimport type { ModularUIModel } from \"../../models/types\";\nimport type Href from \"../../models/href/Href\";\nimport type { ModularUIAction } from \"./types\";\n\ntype RequestOptions = {\n href: Href,\n method?: $Keys<typeof HTTP_METHODS>,\n data?: string | { [key: string]: string },\n locale: string,\n childmodels?: boolean,\n targetModel?: Class<ModularUIModel>,\n isReload?: boolean,\n};\n\n/**\n * Symbol key that carries API call info interpreted by this Redux middleware.\n */\nconst createRequest = (modularui: RequestOptions) => {\n const request = new ModularUIRequest(modularui.href, {\n method: modularui.method || HTTP_METHODS.GET,\n data: modularui.data || {},\n locale: modularui.locale,\n childmodels: modularui.childmodels ?? true,\n isReload: modularui.isReload,\n });\n\n if (modularui.targetModel) {\n request.targetModel = modularui.targetModel;\n }\n\n return request;\n};\n\n/**\n */\nconst responseHandler = (next, dispatch, successAction, model) => {\n if (successAction) {\n const successResult = successAction(model);\n\n if (successResult instanceof Promise) {\n successResult\n .then((result) => {\n dispatch(result);\n })\n .catch((error) => {\n next(handleError(error));\n });\n } else {\n try {\n dispatch(successResult);\n } catch (error) {\n throw new Error(\n `Result of successResult is not a valid redux action: ${error}`\n );\n }\n }\n }\n\n return next(finishProgress());\n};\n\n/**\n */\nconst errorHandler = (next, dispatch, errorAction, err) => {\n dispatch(finishProgress());\n\n if (errorAction) {\n const errorResult = errorAction(err);\n\n if (errorResult instanceof Promise) {\n errorResult.then((result) => dispatch(result));\n } else {\n dispatch(errorResult);\n }\n }\n\n return next(handleError(err));\n};\n\n/**\n */\nconst handleFetch = (action: ModularUIAction, locale, dispatch, next) => {\n dispatch(startProgress());\n\n const { successAction, errorAction, ...requestOptions } = action.payload;\n requestOptions.locale = locale;\n\n const modularuiRequest = createRequest(requestOptions);\n\n return modularuiRequest\n .fetch()\n .then((model) => responseHandler(next, dispatch, successAction, model))\n .catch((error) => errorHandler(next, dispatch, errorAction, error));\n};\n\n/**\n */\nexport const modularuiMiddleware: Middleware<\n ReduxState,\n ReduxAction,\n Dispatch\n> =\n (api: MiddlewareAPI<ReduxState, ReduxAction, Dispatch>) =>\n (next: Dispatch) =>\n (action: PossibleAction) => {\n if (action.type === \"MODULARUI/FETCH\") {\n return handleFetch(\n // $FlowExpectedError[incompatible-exact]\n action,\n api.getState().i18n.locale,\n api.dispatch,\n next\n );\n }\n\n return next(action);\n };\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"modularuiUtils.js","names":["getUrl","resource","props","url","Href","toString","useUrl","previousUrl","setPreviousUrl","previousExact","setPreviousExact","match","isDifferentUrl","hasDifferentStartUriPart","isExact","getKey","WrappedComponent","name","split","useReload","modelEntry","reload","isFullyLoaded","status","MODULARUI_STATUS","FINISHED","lastModification"],"sources":["../../../src/redux/_modularui/modularuiUtils.js"],"sourcesContent":["// @flow\nimport { useState } from \"react\";\n\nimport { getDisplayName } from \"../../react/utils\";\nimport { MODULARUI_STATUS } from \"../../constants/Constants\";\nimport Href from \"../../models/href/Href\";\n\nimport type { ComponentType } from \"react\";\n\n/**\n * Generate modular ui url\n */\nconst getUrl = (resource: string | Function, props: Object) => {\n const url = typeof resource === \"function\" ? resource(props) : resource;\n\n if (url instanceof Href) {\n return url.toString();\n }\n\n return url || \"\";\n};\n\n/**\n */\nexport const useUrl = (resource: string | Function, props: Object): string => {\n const [previousUrl, setPreviousUrl] = useState(\"\");\n const [previousExact, setPreviousExact] = useState(false);\n\n const url = getUrl(resource, props);\n\n const { match } = props;\n\n // when match is not available through props,\n // this is a direct call to the modular ui hoc, not using a route\n if (!match) {\n return url;\n }\n\n const isDifferentUrl = url !== previousUrl;\n if (!isDifferentUrl) {\n return previousUrl;\n }\n\n const hasDifferentStartUriPart =\n previousUrl !== \"\" && !previousUrl.startsWith(match.url);\n\n // Always create an url when the match is exact\n // Or when the match is not exact AND the original match also was not exact\n // Or when the new start uri is different from the previous url\n if (\n match.isExact === true ||\n previousExact === match.isExact ||\n hasDifferentStartUriPart\n ) {\n setPreviousUrl(url);\n setPreviousExact(match.isExact);\n\n return url;\n }\n\n return previousUrl;\n};\n\n/**\n * Create key for modularui request based on component name and requested url\n */\nexport const getKey = (\n WrappedComponent: ComponentType<any>,\n name: string,\n url: string\n): string => {\n if (url) {\n return `${getDisplayName(WrappedComponent, name)}(${url.split(\"?\")[0]})`;\n }\n\n return getDisplayName(WrappedComponent, name);\n};\n\n/**\n * Check if the model corresponding to a modular ui service should be reloaded\n */\nexport const useReload = (modelEntry: Object, reload: number = 0): boolean => {\n if (reload > 0) {\n const isFullyLoaded = modelEntry?.status === MODULARUI_STATUS.FINISHED;\n const lastModification = modelEntry?.lastModification ?? 0;\n\n if (isFullyLoaded && lastModification < reload) {\n return true;\n }\n }\n\n return false;\n};\n"],"mappings":";;;;;;;;;;;;;;;AACA;;AAEA;;AACA;;AACA;;AAIA;AACA;AACA;AACA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAACC,QAAD,EAA8BC,KAA9B,EAAgD;EAC7D,IAAMC,GAAG,GAAG,OAAOF,QAAP,KAAoB,UAApB,GAAiCA,QAAQ,CAACC,KAAD,CAAzC,GAAmDD,QAA/D;;EAEA,IAAIE,GAAG,YAAYC,aAAnB,EAAyB;IACvB,OAAOD,GAAG,CAACE,QAAJ,EAAP;EACD;;EAED,OAAOF,GAAG,IAAI,EAAd;AACD,CARD;AAUA;AACA;;;AACO,IAAMG,MAAM,GAAG,SAATA,MAAS,CAACL,QAAD,EAA8BC,KAA9B,EAAwD;EAC5E,gBAAsC,qBAAS,EAAT,CAAtC;EAAA;EAAA,IAAOK,WAAP;EAAA,IAAoBC,cAApB;;EACA,iBAA0C,qBAAS,KAAT,CAA1C;EAAA;EAAA,IAAOC,aAAP;EAAA,IAAsBC,gBAAtB;;EAEA,IAAMP,GAAG,GAAGH,MAAM,CAACC,QAAD,EAAWC,KAAX,CAAlB;EAEA,IAAQS,KAAR,GAAkBT,KAAlB,CAAQS,KAAR,CAN4E,CAQ5E;EACA;;EACA,IAAI,CAACA,KAAL,EAAY;IACV,OAAOR,GAAP;EACD;;EAED,IAAMS,cAAc,GAAGT,GAAG,KAAKI,WAA/B;;EACA,IAAI,CAACK,cAAL,EAAqB;IACnB,OAAOL,WAAP;EACD;;EAED,IAAMM,wBAAwB,GAC5BN,WAAW,KAAK,EAAhB,IAAsB,CAAC,yBAAAA,WAAW,MAAX,CAAAA,WAAW,EAAYI,KAAK,CAACR,GAAlB,CADpC,CAnB4E,CAsB5E;EACA;EACA;;EACA,IACEQ,KAAK,CAACG,OAAN,KAAkB,IAAlB,IACAL,aAAa,KAAKE,KAAK,CAACG,OADxB,IAEAD,wBAHF,EAIE;IACAL,cAAc,CAACL,GAAD,CAAd;IACAO,gBAAgB,CAACC,KAAK,CAACG,OAAP,CAAhB;IAEA,OAAOX,GAAP;EACD;;EAED,OAAOI,WAAP;AACD,CArCM;AAuCP;AACA;AACA;;;;;AACO,IAAMQ,MAAM,GAAG,SAATA,MAAS,CACpBC,gBADoB,EAEpBC,IAFoB,EAGpBd,GAHoB,EAIT;EACX,IAAIA,GAAJ,EAAS;IAAA;;IACP,iDAAU,2BAAea,gBAAf,EAAiCC,IAAjC,CAAV,uBAAoDd,GAAG,CAACe,KAAJ,CAAU,GAAV,EAAe,CAAf,CAApD;EACD;;EAED,OAAO,2BAAeF,gBAAf,EAAiCC,IAAjC,CAAP;AACD,CAVM;AAYP;AACA;AACA;;;;;AACO,IAAME,SAAS,GAAG,SAAZA,SAAY,CAACC,UAAD,EAAqD;EAAA,IAAhCC,MAAgC,uEAAf,CAAe;;EAC5E,IAAIA,MAAM,GAAG,CAAb,EAAgB;IAAA;;IACd,IAAMC,aAAa,GAAG,CAAAF,UAAU,SAAV,IAAAA,UAAU,WAAV,YAAAA,UAAU,CAAEG,MAAZ,MAAuBC,4BAAiBC,QAA9D;IACA,IAAMC,gBAAgB,4BAAGN,UAAH,aAAGA,UAAH,uBAAGA,UAAU,CAAEM,gBAAf,yEAAmC,CAAzD;;IAEA,IAAIJ,aAAa,IAAII,gBAAgB,GAAGL,MAAxC,EAAgD;MAC9C,OAAO,IAAP;IACD;EACF;;EAED,OAAO,KAAP;AACD,CAXM"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"reducer.js","names":["updateStatus","state","key","status","MODULARUI_STATUS","LOADING","lastModification","Date","now","setModel","model","IllegalArgumentException","getModelKey","connectKey","updateModel","modelKey","Error","removeKey","_","newState","resetModularUI","ApplicationModel","initialState","ModularUIReducer","action","type","payload"],"sources":["../../../src/redux/_modularui/reducer.js"],"sourcesContent":["// @flow\nimport { IllegalArgumentException } from \"../../exceptions\";\nimport { MODULARUI_STATUS } from \"../../constants/Constants\";\nimport { ApplicationModel } from \"../../models\";\n\nimport type { Reducer } from \"redux\";\nimport type { ReduxAction } from \"../types\";\nimport type { ModularUIState } from \"./types\";\n\n/**\n */\nconst updateStatus = (state, { key, status }) => {\n // model should always be available when status is not loading\n if (status !== MODULARUI_STATUS.LOADING && !state[key]) {\n return state;\n }\n\n return {\n ...state,\n [key]: {\n ...state[key],\n status,\n lastModification: Date.now(),\n },\n };\n};\n\n/**\n */\nconst setModel = (state, { key, model }) => {\n if (!state[key]) {\n return state;\n }\n\n if (model) {\n return {\n ...state,\n [key]: {\n ...state[key],\n model,\n lastModification: Date.now(),\n },\n };\n }\n\n throw new IllegalArgumentException(\"No model for setModel\");\n};\n\n/**\n */\nconst getModelKey = (state, model) =>\n Object.keys(state).find((key) => {\n const connectKey = state[key]?.model?.connectKey ?? \"\";\n return connectKey === model.connectKey;\n });\n\n/**\n */\nconst updateModel = (state, model) => {\n const modelKey = getModelKey(state, model);\n\n if (modelKey) {\n return setModel(state, { key: modelKey, model });\n }\n\n throw new Error(\n `ModularUIReducer: Cannot update model with key ${model.connectKey}`\n );\n};\n\n/**\n */\nconst removeKey = (modelKey: string, state: ModularUIState): ModularUIState => {\n // eslint-disable-next-line no-unused-vars\n const { [modelKey]: _, ...newState } = state;\n\n return newState;\n};\n\n/**\n * Remove all but application models\n */\nconst resetModularUI = (state: ModularUIState) => {\n const newState = {};\n\n for (const key in state) {\n if (state[key].model instanceof ApplicationModel) {\n newState[key] = { ...state[key] };\n }\n }\n\n return newState;\n};\n\nconst initialState: ModularUIState = {};\n\n/**\n * Modular UI Reducer\n */\nexport const ModularUIReducer: Reducer<ModularUIState, ReduxAction> = (\n state = initialState,\n action\n) => {\n if (!action) {\n return state;\n }\n\n switch (action.type) {\n case \"MODULARUI/RESET\":\n return resetModularUI(state);\n\n case \"MODULARUI/STATUS\":\n return updateStatus(state, action.payload);\n\n case \"MODULARUI/SET\":\n return setModel(state, action.payload);\n\n case \"MODULARUI/UPDATE\":\n return updateModel(state, action.payload);\n\n case \"MODULARUI/REMOVE_KEY\":\n return removeKey(action.payload, state);\n\n default:\n return state;\n }\n};\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/redux/_modularui/selectors.js"],"names":["getAllModelsByInstance","state","instance","locale","i18n","modularui","key","model","getFirstModelByInstance","getActiveModelByInstance","location","getLocation","selfhref","path","getApplication","ApplicationModel","getTab","TabModel","getCaseView","CaseViewModel","getForm","FormModel","modelByHref","href","findHref","Href","modelConfigKey","equals","keyByHref","router","pathname","getModels","models","forEach","modelKey","modelEntry","label","type","modelInfo","selfContentLink","ContentModel","ContentTOCModel","push","getActiveModels","defaultMemoize","value","other","contextModels","locationParts","split","reduce","accumulator","current","comparePath","decodeURIComponent","replace","foundEntry","encodedHref","toString","getPreference","preferenceName","preferences","getModelsByType"],"mappings":"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","sourcesContent":["// @flow\nimport { createSelectorCreator, defaultMemoize } from \"reselect\";\nimport { has } from \"../../utils/helpers/objects\";\n\nimport Href from \"../../models/href/Href\";\nimport ContentModel from \"../../models/content/ContentModel\";\nimport ContentTOCModel from \"../../models/content/ContentTOCModel\";\nimport ApplicationModel from \"../../models/application/ApplicationModel\";\nimport TabModel from \"../../models/tab/TabModel\";\nimport CaseViewModel from \"../../models/caseview/CaseViewModel\";\nimport FormModel from \"../../models/form/FormModel\";\n\nimport type { ReduxState, PreferenceValue } from \"../types\";\nimport type { ModularUIModel } from \"../../models/types\";\n\n/**\n */\nexport const getAllModelsByInstance = <T>(\n state: ReduxState,\n instance: Class<T>\n): Array<ModularUIModel> => {\n const locale = state?.i18n?.locale || \"en\";\n const modularui = state?.modularui;\n\n if (modularui) {\n return Object.keys(modularui)\n .filter((key) => {\n const { model } = modularui[key];\n return model instanceof instance && model.locale === locale;\n })\n .map((key) => modularui[key].model);\n }\n\n return [];\n};\n\n/**\n */\nexport const getFirstModelByInstance = <T>(\n state: ReduxState,\n instance: Class<T>\n): T | null => {\n const locale = state?.i18n?.locale || \"en\";\n const modularui = state?.modularui;\n\n if (modularui) {\n const key = Object.keys(modularui).find((key) => {\n const { model } = modularui[key];\n return model instanceof instance && model.locale === locale;\n });\n\n if (key) {\n const { model } = modularui[key];\n if (model instanceof instance) {\n return model;\n }\n }\n }\n\n return null;\n};\n\n/**\n */\nexport const getActiveModelByInstance = <T>(\n state: ReduxState,\n instance: Class<T>\n): T | null => {\n const location = getLocation(state);\n\n const locale = state?.i18n?.locale || \"en\";\n const modularui = state?.modularui;\n\n if (modularui) {\n const key = Object.keys(modularui).find((key) => {\n const { model } = modularui[key];\n return (\n model instanceof instance &&\n model.locale === locale &&\n location.startsWith(model.selfhref.path)\n );\n });\n\n if (key) {\n const { model } = modularui[key];\n if (model instanceof instance) {\n return model;\n }\n }\n }\n\n return null;\n};\n\n/**\n * Get the application model, which is the model with selfhref '/'\n */\nexport const getApplication = (state: ReduxState): null | ApplicationModel =>\n getFirstModelByInstance(state, ApplicationModel);\n\n/**\n */\nexport const getTab = (state: ReduxState): null | TabModel =>\n getFirstModelByInstance(state, TabModel);\n\n/**\n */\nexport const getCaseView = (state: ReduxState): null | CaseViewModel =>\n getFirstModelByInstance(state, CaseViewModel);\n\n/**\n */\nexport const getForm = (state: ReduxState): null | FormModel =>\n getFirstModelByInstance(state, FormModel);\n\n/**\n * Get the model by it's href\n */\nexport const modelByHref = (\n state: ReduxState,\n href: Href | string\n): null | ModularUIModel => {\n if (state && state.modularui) {\n const findHref = href instanceof Href ? href : new Href(href);\n\n const modelConfigKey = Object.keys(state.modularui).find((key) => {\n const model = state.modularui[key];\n\n return (\n model.model &&\n model.model.selfhref &&\n model.model.selfhref.equals(findHref)\n );\n });\n\n if (modelConfigKey) {\n return state.modularui[modelConfigKey].model;\n }\n }\n\n return null;\n};\n\n/**\n * Return the key of a model by the selfhref the model is saved in the reducer\n */\nexport const keyByHref = (state: ReduxState, href: Href | string): ?string => {\n if (state && state.modularui) {\n const findHref = href instanceof Href ? href : new Href(href);\n\n return Object.keys(state.modularui).find((key) => {\n const { model } = state.modularui[key];\n\n return model && model.selfhref && model.selfhref.equals(findHref);\n });\n }\n\n return null;\n};\n\n/**\n */\nconst getLocation = (state): string => state?.router?.location.pathname;\n\n/**\n */\nconst getModels = (state) => {\n const models = [];\n\n Object.keys(state.modularui).forEach((modelKey: string) => {\n const modelEntry = state.modularui[modelKey];\n\n if (has(modelEntry, \"model\")) {\n const { key, selfhref, label, type } = modelEntry.model;\n\n const modelInfo = {\n key,\n selfhref,\n label,\n type,\n selfContentLink: null,\n };\n\n if (\n modelEntry.model instanceof ContentModel ||\n modelEntry.model instanceof ContentTOCModel\n ) {\n models.push({\n ...modelInfo,\n selfContentLink: modelEntry.model.selfContentLink,\n });\n } else {\n models.push(modelInfo);\n }\n }\n });\n\n return models;\n};\n\nexport const getActiveModels: (state: ReduxState) => Array<{\n key: string,\n href: Href,\n label: string,\n type: string,\n}> = createSelectorCreator(\n defaultMemoize,\n (value, other) => JSON.stringify(value) === JSON.stringify(other)\n)([getLocation, getModels], (location, models) => {\n const contextModels = [];\n\n if (location) {\n const locationParts = location.split(\"/\");\n\n locationParts.reduce((accumulator, current) => {\n const path = `${accumulator}/${current}`;\n\n // Remove modelcatalog part to match breadcrumb parts\n const comparePath = decodeURIComponent(path).replace(\n \"/modelcatalog/\",\n \"/\"\n );\n\n const foundEntry = models.find(\n (model) => model.selfhref && model.selfhref.equals(comparePath)\n );\n\n if (foundEntry) {\n const { key, label, type, selfhref, selfContentLink } = foundEntry;\n\n const href =\n path.startsWith(\"/modelcatalog/\") && selfContentLink\n ? new Href(`/modelcatalog${selfContentLink.encodedHref.toString()}`)\n : selfhref;\n\n contextModels.push({ key, href, label, type });\n }\n\n return path;\n });\n }\n\n return contextModels;\n});\n\n/**\n */\nexport const getPreference = (\n state: ReduxState,\n preferenceName: string\n): null | PreferenceValue => {\n if (state && state.preferences) {\n return state.preferences[preferenceName];\n }\n\n return null;\n};\n\n/**\n * @deprecated - Use getFirstModelByInstance or the appropriate getter for the model type: getApplication, getTab, etc\n */\nexport const getModelsByType = (\n state: ReduxState,\n type: string\n): Array<ModularUIModel> => {\n if (state && state.modularui) {\n return Object.keys(state.modularui)\n .filter(\n (key) =>\n state.modularui[key] &&\n state.modularui[key].model &&\n state.modularui[key].model.type === type\n )\n .map((key) => state.modularui[key].model);\n }\n\n return [];\n};\n"],"file":"selectors.js"}
|
|
1
|
+
{"version":3,"file":"selectors.js","names":["getAllModelsByInstance","state","instance","locale","i18n","modularui","key","model","getFirstModelByInstance","getActiveModelByInstance","location","getLocation","selfhref","path","getApplication","ApplicationModel","getTab","TabModel","getCaseView","CaseViewModel","getForm","FormModel","modelByHref","href","findHref","Href","modelConfigKey","equals","keyByHref","router","pathname","getModels","models","forEach","modelKey","modelEntry","label","type","modelInfo","selfContentLink","ContentModel","ContentTOCModel","push","getActiveModels","defaultMemoize","value","other","contextModels","locationParts","split","reduce","accumulator","current","comparePath","decodeURIComponent","replace","foundEntry","encodedHref","toString","getPreference","preferenceName","preferences","getModelsByType"],"sources":["../../../src/redux/_modularui/selectors.js"],"sourcesContent":["// @flow\nimport { createSelectorCreator, defaultMemoize } from \"reselect\";\nimport { has } from \"../../utils/helpers/objects\";\n\nimport Href from \"../../models/href/Href\";\nimport ContentModel from \"../../models/content/ContentModel\";\nimport ContentTOCModel from \"../../models/content/ContentTOCModel\";\nimport ApplicationModel from \"../../models/application/ApplicationModel\";\nimport TabModel from \"../../models/tab/TabModel\";\nimport CaseViewModel from \"../../models/caseview/CaseViewModel\";\nimport FormModel from \"../../models/form/FormModel\";\n\nimport type { ReduxState, PreferenceValue } from \"../types\";\nimport type { ModularUIModel } from \"../../models/types\";\n\n/**\n */\nexport const getAllModelsByInstance = <T>(\n state: ReduxState,\n instance: Class<T>\n): Array<ModularUIModel> => {\n const locale = state?.i18n?.locale || \"en\";\n const modularui = state?.modularui;\n\n if (modularui) {\n return Object.keys(modularui)\n .filter((key) => {\n const { model } = modularui[key];\n return model instanceof instance && model.locale === locale;\n })\n .map((key) => modularui[key].model);\n }\n\n return [];\n};\n\n/**\n */\nexport const getFirstModelByInstance = <T>(\n state: ReduxState,\n instance: Class<T>\n): T | null => {\n const locale = state?.i18n?.locale || \"en\";\n const modularui = state?.modularui;\n\n if (modularui) {\n const key = Object.keys(modularui).find((key) => {\n const { model } = modularui[key];\n return model instanceof instance && model.locale === locale;\n });\n\n if (key) {\n const { model } = modularui[key];\n if (model instanceof instance) {\n return model;\n }\n }\n }\n\n return null;\n};\n\n/**\n */\nexport const getActiveModelByInstance = <T>(\n state: ReduxState,\n instance: Class<T>\n): T | null => {\n const location = getLocation(state);\n\n const locale = state?.i18n?.locale || \"en\";\n const modularui = state?.modularui;\n\n if (modularui) {\n const key = Object.keys(modularui).find((key) => {\n const { model } = modularui[key];\n return (\n model instanceof instance &&\n model.locale === locale &&\n location.startsWith(model.selfhref.path)\n );\n });\n\n if (key) {\n const { model } = modularui[key];\n if (model instanceof instance) {\n return model;\n }\n }\n }\n\n return null;\n};\n\n/**\n * Get the application model, which is the model with selfhref '/'\n */\nexport const getApplication = (state: ReduxState): null | ApplicationModel =>\n getFirstModelByInstance(state, ApplicationModel);\n\n/**\n */\nexport const getTab = (state: ReduxState): null | TabModel =>\n getFirstModelByInstance(state, TabModel);\n\n/**\n */\nexport const getCaseView = (state: ReduxState): null | CaseViewModel =>\n getFirstModelByInstance(state, CaseViewModel);\n\n/**\n */\nexport const getForm = (state: ReduxState): null | FormModel =>\n getFirstModelByInstance(state, FormModel);\n\n/**\n * Get the model by it's href\n */\nexport const modelByHref = (\n state: ReduxState,\n href: Href | string\n): null | ModularUIModel => {\n if (state && state.modularui) {\n const findHref = href instanceof Href ? href : new Href(href);\n\n const modelConfigKey = Object.keys(state.modularui).find((key) => {\n const model = state.modularui[key];\n\n return (\n model.model &&\n model.model.selfhref &&\n model.model.selfhref.equals(findHref)\n );\n });\n\n if (modelConfigKey) {\n return state.modularui[modelConfigKey].model;\n }\n }\n\n return null;\n};\n\n/**\n * Return the key of a model by the selfhref the model is saved in the reducer\n */\nexport const keyByHref = (state: ReduxState, href: Href | string): ?string => {\n if (state && state.modularui) {\n const findHref = href instanceof Href ? href : new Href(href);\n\n return Object.keys(state.modularui).find((key) => {\n const { model } = state.modularui[key];\n\n return model && model.selfhref && model.selfhref.equals(findHref);\n });\n }\n\n return null;\n};\n\n/**\n */\nconst getLocation = (state): string => state?.router?.location.pathname;\n\n/**\n */\nconst getModels = (state) => {\n const models = [];\n\n Object.keys(state.modularui).forEach((modelKey: string) => {\n const modelEntry = state.modularui[modelKey];\n\n if (has(modelEntry, \"model\")) {\n const { key, selfhref, label, type } = modelEntry.model;\n\n const modelInfo = {\n key,\n selfhref,\n label,\n type,\n selfContentLink: null,\n };\n\n if (\n modelEntry.model instanceof ContentModel ||\n modelEntry.model instanceof ContentTOCModel\n ) {\n models.push({\n ...modelInfo,\n selfContentLink: modelEntry.model.selfContentLink,\n });\n } else {\n models.push(modelInfo);\n }\n }\n });\n\n return models;\n};\n\nexport const getActiveModels: (state: ReduxState) => Array<{\n key: string,\n href: Href,\n label: string,\n type: string,\n}> = createSelectorCreator(\n defaultMemoize,\n (value, other) => JSON.stringify(value) === JSON.stringify(other)\n)([getLocation, getModels], (location, models) => {\n const contextModels = [];\n\n if (location) {\n const locationParts = location.split(\"/\");\n\n locationParts.reduce((accumulator, current) => {\n const path = `${accumulator}/${current}`;\n\n // Remove modelcatalog part to match breadcrumb parts\n const comparePath = decodeURIComponent(path).replace(\n \"/modelcatalog/\",\n \"/\"\n );\n\n const foundEntry = models.find(\n (model) => model.selfhref && model.selfhref.equals(comparePath)\n );\n\n if (foundEntry) {\n const { key, label, type, selfhref, selfContentLink } = foundEntry;\n\n const href =\n path.startsWith(\"/modelcatalog/\") && selfContentLink\n ? new Href(`/modelcatalog${selfContentLink.encodedHref.toString()}`)\n : selfhref;\n\n contextModels.push({ key, href, label, type });\n }\n\n return path;\n });\n }\n\n return contextModels;\n});\n\n/**\n */\nexport const getPreference = (\n state: ReduxState,\n preferenceName: string\n): null | PreferenceValue => {\n if (state && state.preferences) {\n return state.preferences[preferenceName];\n }\n\n return null;\n};\n\n/**\n * @deprecated - Use getFirstModelByInstance or the appropriate getter for the model type: getApplication, getTab, etc\n */\nexport const getModelsByType = (\n state: ReduxState,\n type: string\n): Array<ModularUIModel> => {\n if (state && state.modularui) {\n return Object.keys(state.modularui)\n .filter(\n (key) =>\n state.modularui[key] &&\n state.modularui[key].model &&\n state.modularui[key].model.type === type\n )\n .map((key) => state.modularui[key].model);\n }\n\n return [];\n};\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"types.js","names":[],"sources":["../../../src/redux/_modularui/types.js"],"sourcesContent":["// @flow\nimport type { ModularUIModel } from \"../../models/types\";\nimport type Href from \"../../models/href/Href\";\nimport type { FetchException } from \"../../exceptions\";\nimport type { NoAction } from \"../types\";\nimport typeof {\n HTTP_METHODS,\n MODULARUI_STATUS,\n} from \"../../constants/Constants\";\nimport type { RequestBaseOptions } from \"../../utils/fetch/types\";\nimport type { ComponentType } from \"react\";\n\nexport type ModularUIOptions = {\n propName?: string,\n removeOnUnmount?: boolean,\n ...RequestBaseOptions,\n};\n\nexport type ModelEntry = {\n +status: string,\n +model: ModularUIModel,\n +lastModification: number,\n};\n\nexport type ModularUIState = {\n +[string]: ModelEntry,\n ...\n};\n\nexport type SetModelAction = {\n type: \"MODULARUI/SET\",\n payload: {\n key: string,\n model: ?ModularUIModel,\n },\n};\n\nexport type UpdateModelAction = {\n type: \"MODULARUI/UPDATE\",\n payload: ModularUIModel,\n};\n\nexport type ModularUIAction = {\n type: \"MODULARUI/FETCH\",\n payload: {\n href: Href,\n method?: $Keys<HTTP_METHODS>,\n data?: string | { [key: string]: string },\n locale: string,\n childmodels?: boolean,\n targetModel?: Class<ModularUIModel>,\n successAction: (\n model: ModularUIModel\n ) => UpdateModelAction | SetModelAction,\n errorAction?: (\n error: FetchException\n ) => UpdateStatusAction | RemoveModelByKeyAction | NoAction,\n },\n};\n\nexport type RemoveModelByKeyAction = {\n type: \"MODULARUI/REMOVE_KEY\",\n payload: string,\n};\n\nexport type ResetModularUIAction = {\n type: \"MODULARUI/RESET\",\n};\n\nexport type UpdateStatusAction = {\n type: \"MODULARUI/STATUS\",\n payload: {\n key: string,\n status: $Keys<MODULARUI_STATUS>,\n },\n};\n\nexport type ModularUIConnector = (\n Component: ComponentType<any>\n) => ComponentType<any>;\n"],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"withModularUI.js","names":["getLocaleCode","state","i18n","locale","modularui","localeCode","href","options","modularuiRequest","ModularUIRequest","mapStateToProps","mapDispatchToProps","startProgress","finishProgress","reloadModel","handleError","withModularui"],"sources":["../../../src/redux/_modularui/withModularUI.js"],"sourcesContent":["// @flow\nimport { connect } from \"react-redux\";\n\nimport { createSelector } from \"reselect\";\n\nimport ModularUIRequest from \"../../modularui/ModularUIRequest\";\n\nimport { startProgress, finishProgress } from \"../actions/ProgressIndicator\";\n\nimport { handleError } from \"../actions/Error\";\n\nimport { reloadModel } from \"./actions\";\n\nimport type {\n ReduxState,\n StartProgressAction,\n FinishProgressAction,\n ThunkAction,\n} from \"../types\";\nimport type Href from \"../../models/href/Href\";\nimport type { ModularUIModel } from \"../../models/types\";\nimport type { RequestBaseOptions } from \"../../utils/fetch/types\";\nimport type FetchException from \"../../exceptions/FetchException\";\nimport type { ComponentType } from \"react\";\n\ntype StateProps = {\n modularui: (href: Href, options: any) => ModularUIRequest,\n locale: string,\n};\n\ntype DispatchProps = {\n startProgress: () => StartProgressAction,\n finishProgress: () => FinishProgressAction,\n reloadModel: (\n model: ModularUIModel,\n options?: RequestBaseOptions\n ) => ThunkAction,\n handleError: (error: Error | FetchException) => ThunkAction,\n};\n\ntype Props = {\n ...StateProps,\n ...DispatchProps,\n};\n\n/**\n */\nconst getLocaleCode = (state) => state.i18n.locale ?? \"en\";\n\nconst modularui = createSelector(\n [getLocaleCode],\n (localeCode) =>\n (href, options = {}) => {\n const modularuiRequest = new ModularUIRequest(href, options);\n modularuiRequest.locale = localeCode;\n return modularuiRequest;\n }\n);\n\n/**\n */\nconst mapStateToProps = (state: ReduxState): StateProps => ({\n modularui: modularui(state),\n locale: state.i18n.locale,\n});\n\nconst mapDispatchToProps: DispatchProps = {\n startProgress,\n finishProgress,\n reloadModel,\n handleError,\n};\n\n/**\n * Injects the modular ui service and the progress start and finish actions\n * This can be used to request modular ui services inside react view components\n */\nconst withModularui: ComponentType<any> = connect<\n Props,\n {},\n StateProps,\n _,\n _,\n _\n>(mapStateToProps, mapDispatchToProps);\n\nexport default withModularui;\n"],"mappings":";;;;;;;;;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAkCA;AACA;AACA,IAAMA,aAAa,GAAG,SAAhBA,aAAgB,CAACC,KAAD;EAAA;;EAAA,6BAAWA,KAAK,CAACC,IAAN,CAAWC,MAAtB,mEAAgC,IAAhC;AAAA,CAAtB;;AAEA,IAAMC,SAAS,GAAG,8BAChB,CAACJ,aAAD,CADgB,EAEhB,UAACK,UAAD;EAAA,OACE,UAACC,IAAD,EAAwB;IAAA,IAAjBC,OAAiB,uEAAP,EAAO;IACtB,IAAMC,gBAAgB,GAAG,IAAIC,yBAAJ,CAAqBH,IAArB,EAA2BC,OAA3B,CAAzB;IACAC,gBAAgB,CAACL,MAAjB,GAA0BE,UAA1B;IACA,OAAOG,gBAAP;EACD,CALH;AAAA,CAFgB,CAAlB;AAUA;AACA;;AACA,IAAME,eAAe,GAAG,SAAlBA,eAAkB,CAACT,KAAD;EAAA,OAAoC;IAC1DG,SAAS,EAAEA,SAAS,CAACH,KAAD,CADsC;IAE1DE,MAAM,EAAEF,KAAK,CAACC,IAAN,CAAWC;EAFuC,CAApC;AAAA,CAAxB;;AAKA,IAAMQ,kBAAiC,GAAG;EACxCC,aAAa,EAAbA,gCADwC;EAExCC,cAAc,EAAdA,iCAFwC;EAGxCC,WAAW,EAAXA,oBAHwC;EAIxCC,WAAW,EAAXA;AAJwC,CAA1C;AAOA;AACA;AACA;AACA;;AACA,IAAMC,aAAiC,GAAG,yBAOxCN,eAPwC,EAOvBC,kBAPuB,CAA1C;eASeK,a"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"actions.js","names":["locationChange","location","action","type","payload","push","state","replace","go","delta","goBack","goForward"],"sources":["../../../src/redux/_router/actions.js"],"sourcesContent":["// @flow\nimport type { HistoryAction, Location, LocationShape } from \"react-router\";\n\nimport type {\n GoAction,\n GoBackAction,\n GoForwardAction,\n LocationChangeAction,\n PushAction,\n ReplaceAction,\n} from \"./types\";\n\n/**\n * Action called on location changes, reducer listens to these actions and updates reducers\n */\nexport const locationChange = (\n location: Location,\n action: HistoryAction\n): LocationChangeAction => ({\n type: \"ROUTER/LOCATION_CHANGE\",\n payload: {\n location,\n action,\n },\n});\n\n/**\n * Actions called to navigate, middleware listens to these actions and calls the appropriate history method\n */\nexport const push = (\n location: LocationShape | string,\n state?: { ... }\n): PushAction => ({\n type: \"ROUTER/PUSH\",\n payload: {\n location,\n state,\n },\n});\n\n/**\n */\nexport const replace = (\n location: LocationShape | string,\n state?: { ... }\n): ReplaceAction => {\n return {\n type: \"ROUTER/REPLACE\",\n payload: {\n location,\n state,\n },\n };\n};\n\n/**\n */\nexport const go = (delta: number): GoAction => ({\n type: \"ROUTER/GO\",\n payload: {\n delta,\n },\n});\n\n/**\n */\nexport const goBack = (): GoBackAction => ({\n type: \"ROUTER/GOBACK\",\n});\n\n/**\n */\nexport const goForward = (): GoForwardAction => ({\n type: \"ROUTER/GOFORWARD\",\n});\n"],"mappings":";;;;;;;AAYA;AACA;AACA;AACO,IAAMA,cAAc,GAAG,SAAjBA,cAAiB,CAC5BC,QAD4B,EAE5BC,MAF4B;EAAA,OAGF;IAC1BC,IAAI,EAAE,wBADoB;IAE1BC,OAAO,EAAE;MACPH,QAAQ,EAARA,QADO;MAEPC,MAAM,EAANA;IAFO;EAFiB,CAHE;AAAA,CAAvB;AAWP;AACA;AACA;;;;;AACO,IAAMG,IAAI,GAAG,SAAPA,IAAO,CAClBJ,QADkB,EAElBK,KAFkB;EAAA,OAGF;IAChBH,IAAI,EAAE,aADU;IAEhBC,OAAO,EAAE;MACPH,QAAQ,EAARA,QADO;MAEPK,KAAK,EAALA;IAFO;EAFO,CAHE;AAAA,CAAb;AAWP;AACA;;;;;AACO,IAAMC,OAAO,GAAG,SAAVA,OAAU,CACrBN,QADqB,EAErBK,KAFqB,EAGH;EAClB,OAAO;IACLH,IAAI,EAAE,gBADD;IAELC,OAAO,EAAE;MACPH,QAAQ,EAARA,QADO;MAEPK,KAAK,EAALA;IAFO;EAFJ,CAAP;AAOD,CAXM;AAaP;AACA;;;;;AACO,IAAME,EAAE,GAAG,SAALA,EAAK,CAACC,KAAD;EAAA,OAA8B;IAC9CN,IAAI,EAAE,WADwC;IAE9CC,OAAO,EAAE;MACPK,KAAK,EAALA;IADO;EAFqC,CAA9B;AAAA,CAAX;AAOP;AACA;;;;;AACO,IAAMC,MAAM,GAAG,SAATA,MAAS;EAAA,OAAqB;IACzCP,IAAI,EAAE;EADmC,CAArB;AAAA,CAAf;AAIP;AACA;;;;;AACO,IAAMQ,SAAS,GAAG,SAAZA,SAAY;EAAA,OAAwB;IAC/CR,IAAI,EAAE;EADyC,CAAxB;AAAA,CAAlB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"connectors.js","names":["withKey","state","locationKey","router","location","key","withPathname","pathname","withLocation","withQuerystring","querystring","search","withNavigation","push","replace","go","goBack","goForward"],"sources":["../../../src/redux/_router/connectors.js"],"sourcesContent":["// @flow\nimport { connect } from \"react-redux\";\n\nimport { push, replace, go, goBack, goForward } from \"./actions\";\n\nimport type { Location, LocationShape } from \"react-router\";\nimport type {\n PushAction,\n ReplaceAction,\n GoAction,\n GoBackAction,\n GoForwardAction,\n} from \"./types\";\nimport type { ComponentType } from \"react\";\nimport type { ReduxState } from \"../types\";\n\ntype WithKeyStateProps = { locationKey: string, ... };\n\ntype WithPathnameProps = { pathname: string, ... };\n\ntype WithLocationProps = { location: Location, ... };\n\ntype WithQuerystringProps = { querystring: string, ... };\n\ntype NavigationDispatchProps = {\n push: (location: LocationShape | string, state?: { ... }) => PushAction,\n replace: (location: LocationShape | string, state?: { ... }) => ReplaceAction,\n go: (delta: number) => GoAction,\n goBack: () => GoBackAction,\n goForward: () => GoForwardAction,\n};\n\n/**\n */\nconst withKey: ComponentType<any> = connect<WithKeyStateProps, {}, _, _, _, _>(\n (state: ReduxState) => ({\n locationKey: state.router.location?.key ?? \"\",\n })\n);\n\n/**\n */\nconst withPathname: ComponentType<any> = connect<\n WithPathnameProps,\n {},\n _,\n _,\n _,\n _\n>((state: ReduxState) => ({\n pathname: state.router.location?.pathname,\n}));\n\n/**\n */\nconst withLocation: ComponentType<any> = connect<\n WithLocationProps,\n {},\n _,\n _,\n _,\n _\n>((state: ReduxState) => ({\n location: state.router.location,\n}));\n\n/**\n */\nconst withQuerystring: ComponentType<any> = connect<\n WithQuerystringProps,\n {},\n _,\n _,\n _,\n _\n>((state: ReduxState) => ({\n querystring: state.router.location?.search,\n}));\n\n/**\n */\nconst withNavigation: ComponentType<any> = connect<\n NavigationDispatchProps,\n {},\n _,\n _,\n _,\n _\n>(null, {\n push,\n replace,\n go,\n goBack,\n goForward,\n});\n\nexport { withKey, withPathname, withLocation, withQuerystring, withNavigation };\n"],"mappings":";;;;;;;AACA;;AAEA;;AA6BA;AACA;AACA,IAAMA,OAA2B,GAAG,yBAClC,UAACC,KAAD;EAAA;;EAAA,OAAwB;IACtBC,WAAW,qDAAED,KAAK,CAACE,MAAN,CAAaC,QAAf,2DAAE,uBAAuBC,GAAzB,yEAAgC;EADrB,CAAxB;AAAA,CADkC,CAApC;AAMA;AACA;;;AACA,IAAMC,YAAgC,GAAG,yBAOvC,UAACL,KAAD;EAAA;;EAAA,OAAwB;IACxBM,QAAQ,4BAAEN,KAAK,CAACE,MAAN,CAAaC,QAAf,2DAAE,uBAAuBG;EADT,CAAxB;AAAA,CAPuC,CAAzC;AAWA;AACA;;;AACA,IAAMC,YAAgC,GAAG,yBAOvC,UAACP,KAAD;EAAA,OAAwB;IACxBG,QAAQ,EAAEH,KAAK,CAACE,MAAN,CAAaC;EADC,CAAxB;AAAA,CAPuC,CAAzC;AAWA;AACA;;;AACA,IAAMK,eAAmC,GAAG,yBAO1C,UAACR,KAAD;EAAA;;EAAA,OAAwB;IACxBS,WAAW,4BAAET,KAAK,CAACE,MAAN,CAAaC,QAAf,2DAAE,uBAAuBO;EADZ,CAAxB;AAAA,CAP0C,CAA5C;AAWA;AACA;;;AACA,IAAMC,cAAkC,GAAG,yBAOzC,IAPyC,EAOnC;EACNC,IAAI,EAAJA,aADM;EAENC,OAAO,EAAPA,gBAFM;EAGNC,EAAE,EAAFA,WAHM;EAINC,MAAM,EAANA,eAJM;EAKNC,SAAS,EAATA;AALM,CAPmC,CAA3C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../src/redux/_router/index.js"],"sourcesContent":["// @flow\nexport * from \"./middleware\";\nexport * from \"./reducer\";\n\nexport * from \"./actions\";\nexport * from \"./connectors\";\n\nexport type * from \"./types\";\n"],"mappings":";;;;;;;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AAEA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"middleware.js","names":["routerMiddleware","history","next","action","type","payload","location","state","push","replace","delta","go","goBack","goForward"],"sources":["../../../src/redux/_router/middleware.js"],"sourcesContent":["// @flow\nimport type { RouterHistory } from \"react-router\";\nimport type { Middleware } from \"redux\";\nimport type {\n ReduxAction,\n ReduxState,\n Dispatch,\n PossibleAction,\n} from \"../types\";\n\n/**\n */\nexport const routerMiddleware =\n (history: RouterHistory): Middleware<ReduxState, ReduxAction, Dispatch> =>\n () =>\n (next: Dispatch) =>\n (action: PossibleAction) => {\n if (action.type === \"ROUTER/PUSH\") {\n // $FlowExpectedError[prop-missing]\n const { location, state } = action.payload;\n history.push(location, state);\n } else if (action.type === \"ROUTER/REPLACE\") {\n // $FlowExpectedError[prop-missing]\n const { location, state } = action.payload;\n history.replace(location, state);\n } else if (action.type === \"ROUTER/GO\") {\n // $FlowExpectedError[prop-missing]\n const { delta } = action.payload;\n history.go(delta);\n } else if (action.type === \"ROUTER/GOBACK\") {\n history.goBack();\n } else if (action.type === \"ROUTER/GOFORWARD\") {\n history.goForward();\n }\n\n return next(action);\n };\n"],"mappings":";;;;;;;AAUA;AACA;AACO,IAAMA,gBAAgB,GAC3B,SADWA,gBACX,CAACC,OAAD;EAAA,OACA;IAAA,OACA,UAACC,IAAD;MAAA,OACA,UAACC,MAAD,EAA4B;QAC1B,IAAIA,MAAM,CAACC,IAAP,KAAgB,aAApB,EAAmC;UACjC;UACA,sBAA4BD,MAAM,CAACE,OAAnC;UAAA,IAAQC,QAAR,mBAAQA,QAAR;UAAA,IAAkBC,KAAlB,mBAAkBA,KAAlB;UACAN,OAAO,CAACO,IAAR,CAAaF,QAAb,EAAuBC,KAAvB;QACD,CAJD,MAIO,IAAIJ,MAAM,CAACC,IAAP,KAAgB,gBAApB,EAAsC;UAC3C;UACA,uBAA4BD,MAAM,CAACE,OAAnC;UAAA,IAAQC,SAAR,oBAAQA,QAAR;UAAA,IAAkBC,MAAlB,oBAAkBA,KAAlB;UACAN,OAAO,CAACQ,OAAR,CAAgBH,SAAhB,EAA0BC,MAA1B;QACD,CAJM,MAIA,IAAIJ,MAAM,CAACC,IAAP,KAAgB,WAApB,EAAiC;UACtC;UACA,IAAQM,KAAR,GAAkBP,MAAM,CAACE,OAAzB,CAAQK,KAAR;UACAT,OAAO,CAACU,EAAR,CAAWD,KAAX;QACD,CAJM,MAIA,IAAIP,MAAM,CAACC,IAAP,KAAgB,eAApB,EAAqC;UAC1CH,OAAO,CAACW,MAAR;QACD,CAFM,MAEA,IAAIT,MAAM,CAACC,IAAP,KAAgB,kBAApB,EAAwC;UAC7CH,OAAO,CAACY,SAAR;QACD;;QAED,OAAOX,IAAI,CAACC,MAAD,CAAX;MACD,CArBD;IAAA,CADA;EAAA,CADA;AAAA,CADK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"reducer.js","names":["initialState","RouterReducer","state","action","type","payload"],"sources":["../../../src/redux/_router/reducer.js"],"sourcesContent":["// @flow\nimport type { Reducer } from \"redux\";\nimport type { ReduxAction } from \"../types\";\nimport type { RouterState } from \"./types\";\n\n// REDUCER\nconst initialState: $Shape<RouterState> = {};\n\n/**\n * Router reducer\n */\nexport const RouterReducer: Reducer<RouterState, ReduxAction> = (\n state = initialState,\n action = null\n) => {\n if (action && action.type === \"ROUTER/LOCATION_CHANGE\") {\n return action.payload;\n }\n\n return state;\n};\n"],"mappings":";;;;;;AAKA;AACA,IAAMA,YAAiC,GAAG,EAA1C;AAEA;AACA;AACA;;AACO,IAAMC,aAAgD,GAAG,SAAnDA,aAAmD,GAG3D;EAAA,IAFHC,KAEG,uEAFKF,YAEL;EAAA,IADHG,MACG,uEADM,IACN;;EACH,IAAIA,MAAM,IAAIA,MAAM,CAACC,IAAP,KAAgB,wBAA9B,EAAwD;IACtD,OAAOD,MAAM,CAACE,OAAd;EACD;;EAED,OAAOH,KAAP;AACD,CATM"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"types.js","names":[],"sources":["../../../src/redux/_router/types.js"],"sourcesContent":["// @flow\nimport type { HistoryAction, Location, LocationShape } from \"react-router\";\n\nexport type RouterState = {\n +location: Location,\n +action: HistoryAction,\n};\n\nexport type LocationChangeAction = {\n type: \"ROUTER/LOCATION_CHANGE\",\n payload: {\n location: Location,\n action: HistoryAction,\n },\n};\n\nexport type PushAction = {\n type: \"ROUTER/PUSH\",\n payload: {\n location: string | LocationShape,\n state?: { ... },\n },\n};\nexport type ReplaceAction = {\n type: \"ROUTER/REPLACE\",\n payload: {\n location: string | LocationShape,\n state?: { ... },\n },\n};\nexport type GoAction = {\n type: \"ROUTER/GO\",\n payload: {\n delta: number,\n },\n};\nexport type GoBackAction = {\n type: \"ROUTER/GOBACK\",\n};\n\nexport type GoForwardAction = {\n type: \"ROUTER/GOFORWARD\",\n};\n"],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"Application.js","names":["reloadApplication","dispatch","getState","modelKey","locale","i18n","Href","targetModel","ApplicationModel"],"sources":["../../../src/redux/actions/Application.js"],"sourcesContent":["// @flow\nimport { loadModularUI } from \"../_modularui/actions\";\nimport { keyByHref } from \"../_modularui/selectors\";\nimport { ApplicationModel, Href } from \"../../models\";\n\nimport type { Dispatch, GetState, ThunkAction } from \"../types\";\n\n/**\n */\nexport const reloadApplication =\n (): ThunkAction => (dispatch: Dispatch, getState: GetState) => {\n let modelKey = keyByHref(getState(), \"/\");\n\n if (!modelKey) {\n const locale = getState().i18n?.locale;\n modelKey = `application(/)(${locale})`;\n }\n\n return dispatch(\n loadModularUI(modelKey, new Href(\"/\", \"Application\"), {\n targetModel: ApplicationModel,\n })\n );\n };\n"],"mappings":";;;;;;;AACA;;AACA;;AACA;;AAIA;AACA;AACO,IAAMA,iBAAiB,GAC5B,SADWA,iBACX;EAAA,OAAmB,UAACC,QAAD,EAAqBC,QAArB,EAA4C;IAC7D,IAAIC,QAAQ,GAAG,0BAAUD,QAAQ,EAAlB,EAAsB,GAAtB,CAAf;;IAEA,IAAI,CAACC,QAAL,EAAe;MAAA;;MACb,IAAMC,MAAM,qBAAGF,QAAQ,GAAGG,IAAd,mDAAG,eAAiBD,MAAhC;MACAD,QAAQ,4BAAqBC,MAArB,MAAR;IACD;;IAED,OAAOH,QAAQ,CACb,4BAAcE,QAAd,EAAwB,IAAIG,YAAJ,CAAS,GAAT,EAAc,aAAd,CAAxB,EAAsD;MACpDC,WAAW,EAAEC;IADuC,CAAtD,CADa,CAAf;EAKD,CAbD;AAAA,CADK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"Authorization.js","names":["handleUnauthorized","errorResponse","dispatch","getState","connectKey","response","error","window","location","reload","Cache","getItem","removeItem","isInvalidUsername","WARNING_TIMEOUT","NOTIFICATION_TYPES","WARNING","id","defaultMessage","message","router","pathname","LOGIN_PATH","locationFrom","state","from","modal","type"],"sources":["../../../src/redux/actions/Authorization.js"],"sourcesContent":["// @flow\nimport { LOGIN_PATH, NOTIFICATION_TYPES } from \"../../constants/Constants\";\n\nimport ErrorResponse from \"../../models/error/ErrorResponse\";\n\nimport { replace } from \"../_router/actions\";\nimport { logoutSuccess } from \"./SignOut\";\nimport { showNotification } from \"./Notification\";\n\nimport Cache from \"../../utils/browser/Cache\";\n\nimport { removeModelByKey } from \"../_modularui/actions\";\nimport { reloadApplication } from \"./Application\";\n\nimport { getSetting } from \"../../constants\";\n\nimport type { ThunkAction } from \"../types\";\n\n/**\n */\nexport const handleUnauthorized =\n (errorResponse: ErrorResponse): ThunkAction =>\n (dispatch, getState) => {\n if (errorResponse.connectKey) {\n dispatch(removeModelByKey(errorResponse.connectKey));\n }\n\n if (\n getSetting(\"PAGE_RELOAD_ON_UNAUTHORIZED_ERROR\", false) &&\n errorResponse.response?.error\n ) {\n window.location.reload();\n return;\n }\n\n // reload application when flag auth is set\n if (Cache.getItem(\"auth\")) {\n dispatch(reloadApplication());\n }\n\n // set logged auth\n dispatch(logoutSuccess());\n\n Cache.removeItem(\"auth\");\n\n if (errorResponse.isInvalidUsername) {\n const WARNING_TIMEOUT = 4000;\n dispatch(\n showNotification(\n NOTIFICATION_TYPES.WARNING,\n {\n id: errorResponse.id,\n defaultMessage: errorResponse.message,\n },\n null,\n WARNING_TIMEOUT\n )\n );\n }\n\n // add current location as from location before redirect\n const location = getState().router.location;\n if (location?.pathname !== LOGIN_PATH) {\n const locationFrom = location?.state?.from;\n return dispatch(\n replace(LOGIN_PATH, {\n from: locationFrom ? locationFrom : getState().router.location,\n // cannot open login in a modal, because of previous locations that might be secure\n modal: false,\n })\n );\n }\n\n return { type: \"NO_ACTION\" };\n };\n"],"mappings":";;;;;;;;;AACA;;AAEA;;AAEA;;AACA;;AACA;;AAEA;;AAEA;;AACA;;AAEA;;AAIA;AACA;AACO,IAAMA,kBAAkB,GAC7B,SADWA,kBACX,CAACC,aAAD;EAAA,OACA,UAACC,QAAD,EAAWC,QAAX,EAAwB;IAAA;;IACtB,IAAIF,aAAa,CAACG,UAAlB,EAA8B;MAC5BF,QAAQ,CAAC,gCAAiBD,aAAa,CAACG,UAA/B,CAAD,CAAR;IACD;;IAED,IACE,2BAAW,mCAAX,EAAgD,KAAhD,8BACAH,aAAa,CAACI,QADd,kDACA,sBAAwBC,KAF1B,EAGE;MACAC,MAAM,CAACC,QAAP,CAAgBC,MAAhB;MACA;IACD,CAXqB,CAatB;;;IACA,IAAIC,eAAMC,OAAN,CAAc,MAAd,CAAJ,EAA2B;MACzBT,QAAQ,CAAC,qCAAD,CAAR;IACD,CAhBqB,CAkBtB;;;IACAA,QAAQ,CAAC,6BAAD,CAAR;;IAEAQ,eAAME,UAAN,CAAiB,MAAjB;;IAEA,IAAIX,aAAa,CAACY,iBAAlB,EAAqC;MACnC,IAAMC,eAAe,GAAG,IAAxB;MACAZ,QAAQ,CACN,oCACEa,8BAAmBC,OADrB,EAEE;QACEC,EAAE,EAAEhB,aAAa,CAACgB,EADpB;QAEEC,cAAc,EAAEjB,aAAa,CAACkB;MAFhC,CAFF,EAME,IANF,EAOEL,eAPF,CADM,CAAR;IAWD,CApCqB,CAsCtB;;;IACA,IAAMN,QAAQ,GAAGL,QAAQ,GAAGiB,MAAX,CAAkBZ,QAAnC;;IACA,IAAI,CAAAA,QAAQ,SAAR,IAAAA,QAAQ,WAAR,YAAAA,QAAQ,CAAEa,QAAV,MAAuBC,qBAA3B,EAAuC;MAAA;;MACrC,IAAMC,YAAY,GAAGf,QAAH,aAAGA,QAAH,0CAAGA,QAAQ,CAAEgB,KAAb,oDAAG,gBAAiBC,IAAtC;MACA,OAAOvB,QAAQ,CACb,sBAAQoB,qBAAR,EAAoB;QAClBG,IAAI,EAAEF,YAAY,GAAGA,YAAH,GAAkBpB,QAAQ,GAAGiB,MAAX,CAAkBZ,QADpC;QAElB;QACAkB,KAAK,EAAE;MAHW,CAApB,CADa,CAAf;IAOD;;IAED,OAAO;MAAEC,IAAI,EAAE;IAAR,CAAP;EACD,CArDD;AAAA,CADK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"Error.js","names":["saveError","error","type","payload","defaultErrorResponseHandler","dispatch","isResourceNotFoundAfterReload","isRemoteServiceException","isUnauthorized","isBlocked","isConcurrentUser","LOGOUT_PATH","isChangePassword","IS_SERVER","setTimeout","customErrorResponseHandler","errorResponse","defaultHandler","setCustomErrorResponseHandler","handler","handleError","ErrorResponse"],"sources":["../../../src/redux/actions/Error.js"],"sourcesContent":["// @flow\nimport { LOGOUT_PATH, IS_SERVER } from \"../../constants/Constants\";\n\nimport ErrorResponse from \"../../models/error/ErrorResponse\";\n\nimport { push } from \"../_router/actions\";\nimport { showXHRErrorNotification } from \"./Notification\";\nimport { resetProgress } from \"./ProgressIndicator\";\nimport { changePassword } from \"./SignIn\";\nimport { handleUnauthorized } from \"./Authorization\";\n\nimport type { FetchException } from \"../../exceptions\";\nimport type { Dispatch, SaveErrorAction, ThunkAction } from \"../types\";\n\ntype DefaultErrorResponseHandler = (error: ErrorResponse) => ThunkAction;\ntype CustomErrorResponseHandler = (\n errorResponse: ErrorResponse,\n defaultHandler: DefaultErrorResponseHandler\n) => ThunkAction;\n\n/**\n */\nconst saveError = (error): SaveErrorAction => ({\n type: \"SAVE_ERROR\",\n payload: error,\n});\n\n/**\n */\nconst defaultErrorResponseHandler: DefaultErrorResponseHandler =\n (error: ErrorResponse): ThunkAction =>\n (dispatch: Dispatch) => {\n if (error.isResourceNotFoundAfterReload || error.isRemoteServiceException) {\n return dispatch({ type: \"NO_ACTION\" });\n }\n\n if (error.isUnauthorized) {\n return dispatch(handleUnauthorized(error));\n }\n\n if (error.isBlocked || error.isConcurrentUser) {\n dispatch(push(LOGOUT_PATH));\n }\n\n if (error.isChangePassword) {\n return dispatch(changePassword());\n }\n\n if (IS_SERVER) {\n return dispatch(saveError(error));\n }\n\n setTimeout(() => {\n throw error;\n });\n\n return dispatch(showXHRErrorNotification(error));\n };\n\n/**\n * Standard Custom error response, acts as a proxy and can be overwritten by {@link setCustomErrorResponseHandler}\n */\nlet customErrorResponseHandler: CustomErrorResponseHandler =\n (errorResponse, defaultHandler) => (dispatch: Dispatch) =>\n dispatch(defaultHandler(errorResponse));\n\n/**\n * Set a custom error response handler,\n * can be used when custom functionality is needed on certain (error) response\n * of the modular ui, for example when custom logic is needed when a user is unauthorized<br>\n * It receives an {@link ErrorResponse} and the {@link defaultErrorResponseHandler}\n */\nexport const setCustomErrorResponseHandler = (\n handler: CustomErrorResponseHandler\n) => {\n customErrorResponseHandler = handler;\n};\n\n/**\n * Handle errors by sending an error notification message\n */\nexport const handleError =\n (error: Error | FetchException): ThunkAction =>\n (dispatch: Dispatch) => {\n dispatch(resetProgress());\n\n const errorResponse = new ErrorResponse(error);\n\n return dispatch(\n customErrorResponseHandler(errorResponse, defaultErrorResponseHandler)\n );\n };\n"],"mappings":";;;;;;;;;AACA;;AAEA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AAWA;AACA;AACA,IAAMA,SAAS,GAAG,SAAZA,SAAY,CAACC,KAAD;EAAA,OAA6B;IAC7CC,IAAI,EAAE,YADuC;IAE7CC,OAAO,EAAEF;EAFoC,CAA7B;AAAA,CAAlB;AAKA;AACA;;;AACA,IAAMG,2BAAwD,GAC5D,SADIA,2BACJ,CAACH,KAAD;EAAA,OACA,UAACI,QAAD,EAAwB;IACtB,IAAIJ,KAAK,CAACK,6BAAN,IAAuCL,KAAK,CAACM,wBAAjD,EAA2E;MACzE,OAAOF,QAAQ,CAAC;QAAEH,IAAI,EAAE;MAAR,CAAD,CAAf;IACD;;IAED,IAAID,KAAK,CAACO,cAAV,EAA0B;MACxB,OAAOH,QAAQ,CAAC,uCAAmBJ,KAAnB,CAAD,CAAf;IACD;;IAED,IAAIA,KAAK,CAACQ,SAAN,IAAmBR,KAAK,CAACS,gBAA7B,EAA+C;MAC7CL,QAAQ,CAAC,mBAAKM,sBAAL,CAAD,CAAR;IACD;;IAED,IAAIV,KAAK,CAACW,gBAAV,EAA4B;MAC1B,OAAOP,QAAQ,CAAC,6BAAD,CAAf;IACD;;IAED,IAAIQ,oBAAJ,EAAe;MACb,OAAOR,QAAQ,CAACL,SAAS,CAACC,KAAD,CAAV,CAAf;IACD;;IAEDa,UAAU,CAAC,YAAM;MACf,MAAMb,KAAN;IACD,CAFS,CAAV;IAIA,OAAOI,QAAQ,CAAC,4CAAyBJ,KAAzB,CAAD,CAAf;EACD,CA3BD;AAAA,CADF;AA8BA;AACA;AACA;;;AACA,IAAIc,0BAAsD,GACxD,oCAACC,aAAD,EAAgBC,cAAhB;EAAA,OAAmC,UAACZ,QAAD;IAAA,OACjCA,QAAQ,CAACY,cAAc,CAACD,aAAD,CAAf,CADyB;EAAA,CAAnC;AAAA,CADF;AAIA;AACA;AACA;AACA;AACA;AACA;;;AACO,IAAME,6BAA6B,GAAG,SAAhCA,6BAAgC,CAC3CC,OAD2C,EAExC;EACHJ,0BAA0B,GAAGI,OAA7B;AACD,CAJM;AAMP;AACA;AACA;;;;;AACO,IAAMC,WAAW,GACtB,SADWA,WACX,CAACnB,KAAD;EAAA,OACA,UAACI,QAAD,EAAwB;IACtBA,QAAQ,CAAC,uCAAD,CAAR;IAEA,IAAMW,aAAa,GAAG,IAAIK,sBAAJ,CAAkBpB,KAAlB,CAAtB;IAEA,OAAOI,QAAQ,CACbU,0BAA0B,CAACC,aAAD,EAAgBZ,2BAAhB,CADb,CAAf;EAGD,CATD;AAAA,CADK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"Form.js","names":["previousObject","form","newForm","clone","setPreviousObject","cancelForm","dispatch","getState","key","auth","mustChangePassword","Authenticate","logout","then"],"sources":["../../../src/redux/actions/Form.js"],"sourcesContent":["// @flow\nimport { goBack } from \"../_router/actions\";\nimport { updateModel } from \"../_modularui/actions\";\nimport { logoutSuccess } from \"./SignOut\";\nimport { reloadApplication } from \"./Application\";\nimport { startProgress, finishProgress } from \"./ProgressIndicator\";\n\nimport Authenticate from \"../../modularui/Authenticate\";\n\nimport type { Dispatch, GetState, ThunkAction } from \"../types\";\nimport type FormModel from \"../../models/form/FormModel\";\nimport type { UpdateModelAction } from \"../_modularui/types\";\n\n/**\n * Go back to previous object (back button on form)\n */\nexport const previousObject = (form: FormModel): UpdateModelAction => {\n const newForm = form.clone();\n\n newForm.setPreviousObject();\n\n return updateModel(newForm);\n};\n\n/**\n */\nexport const cancelForm =\n (form: FormModel): ThunkAction =>\n (dispatch: Dispatch, getState: GetState) => {\n if (form.key === \"ChangePassword\" && getState().auth.mustChangePassword) {\n dispatch(startProgress());\n return new Authenticate().logout().then(() => {\n dispatch(logoutSuccess());\n dispatch(reloadApplication());\n dispatch(finishProgress());\n\n return dispatch(goBack());\n });\n }\n\n return dispatch(goBack());\n };\n"],"mappings":";;;;;;;;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AAMA;AACA;AACA;AACO,IAAMA,cAAc,GAAG,SAAjBA,cAAiB,CAACC,IAAD,EAAwC;EACpE,IAAMC,OAAO,GAAGD,IAAI,CAACE,KAAL,EAAhB;EAEAD,OAAO,CAACE,iBAAR;EAEA,OAAO,2BAAYF,OAAZ,CAAP;AACD,CANM;AAQP;AACA;;;;;AACO,IAAMG,UAAU,GACrB,SADWA,UACX,CAACJ,IAAD;EAAA,OACA,UAACK,QAAD,EAAqBC,QAArB,EAA4C;IAC1C,IAAIN,IAAI,CAACO,GAAL,KAAa,gBAAb,IAAiCD,QAAQ,GAAGE,IAAX,CAAgBC,kBAArD,EAAyE;MACvEJ,QAAQ,CAAC,uCAAD,CAAR;MACA,OAAO,IAAIK,qBAAJ,GAAmBC,MAAnB,GAA4BC,IAA5B,CAAiC,YAAM;QAC5CP,QAAQ,CAAC,6BAAD,CAAR;QACAA,QAAQ,CAAC,qCAAD,CAAR;QACAA,QAAQ,CAAC,wCAAD,CAAR;QAEA,OAAOA,QAAQ,CAAC,sBAAD,CAAf;MACD,CANM,CAAP;IAOD;;IAED,OAAOA,QAAQ,CAAC,sBAAD,CAAf;EACD,CAdD;AAAA,CADK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"FormAttributeSet.js","names":["updateFormAttribute","form","formObject","attribute","inputvalue","options","autosubmit","autosave","forceUpdate","validate","dispatch","newForm","clone","undefined","currentFormObject","equals","updateAttribute","completedFormObjects","forEach","completeObject","isValid","autosubmitAction","isChanged","hasDynamicValidations"],"sources":["../../../src/redux/actions/FormAttributeSet.js"],"sourcesContent":["// @flow\nimport { updateModel } from \"../_modularui/actions\";\n\nimport { getSetting } from \"../../constants/Settings\";\n\nimport { validateFormObject } from \"./FormValidations\";\nimport { autosaveFormObject } from \"./FormAutosave\";\nimport { autosubmitFormObject } from \"./FormAutosubmit\";\n\nimport type { Dispatch, ThunkAction, UpdateFormOptions } from \"../types\";\nimport type { AttributeType } from \"../../models/types\";\nimport type FormModel from \"../../models/form/FormModel\";\nimport type FormObjectModel from \"../../models/form/FormObjectModel\";\n\n/**\n * Update an attribute on a form\n */\nexport const updateFormAttribute =\n (\n form: FormModel,\n formObject: FormObjectModel,\n attribute: AttributeType,\n inputvalue: string,\n options: UpdateFormOptions = {\n autosubmit: false,\n autosave: false,\n forceUpdate: false,\n validate: true,\n }\n ): ThunkAction =>\n (dispatch: Dispatch) => {\n const newForm = form.clone();\n\n if (options.validate === undefined) {\n options.validate = true;\n }\n\n if (newForm.currentFormObject?.equals(formObject)) {\n newForm.currentFormObject.updateAttribute(attribute, inputvalue);\n } else {\n newForm.completedFormObjects.forEach((completeObject) => {\n if (completeObject.equals(formObject)) {\n completeObject.updateAttribute(attribute, inputvalue);\n }\n });\n }\n\n if (options.autosubmit && newForm.isValid) {\n const autosubmitAction = autosubmitFormObject(\n newForm,\n attribute,\n options.forceUpdate\n );\n if (autosubmitAction) {\n return dispatch(autosubmitAction);\n }\n }\n\n if (options.autosave && newForm.isValid && newForm.isChanged()) {\n dispatch(autosaveFormObject(newForm));\n }\n\n if (\n options.validate &&\n newForm.currentFormObject?.hasDynamicValidations &&\n getSetting(\"USE_INSTANT_SERVER_VALIDATION\")\n ) {\n // server form validations happens async, don't wait for the form to return\n dispatch(validateFormObject(newForm));\n }\n return dispatch(updateModel(newForm));\n };\n"],"mappings":";;;;;;;AACA;;AAEA;;AAEA;;AACA;;AACA;;AAOA;AACA;AACA;AACO,IAAMA,mBAAmB,GAC9B,SADWA,mBACX,CACEC,IADF,EAEEC,UAFF,EAGEC,SAHF,EAIEC,UAJF;EAAA,IAKEC,OALF,uEAK+B;IAC3BC,UAAU,EAAE,KADe;IAE3BC,QAAQ,EAAE,KAFiB;IAG3BC,WAAW,EAAE,KAHc;IAI3BC,QAAQ,EAAE;EAJiB,CAL/B;EAAA,OAYA,UAACC,QAAD,EAAwB;IAAA;;IACtB,IAAMC,OAAO,GAAGV,IAAI,CAACW,KAAL,EAAhB;;IAEA,IAAIP,OAAO,CAACI,QAAR,KAAqBI,SAAzB,EAAoC;MAClCR,OAAO,CAACI,QAAR,GAAmB,IAAnB;IACD;;IAED,6BAAIE,OAAO,CAACG,iBAAZ,kDAAI,sBAA2BC,MAA3B,CAAkCb,UAAlC,CAAJ,EAAmD;MACjDS,OAAO,CAACG,iBAAR,CAA0BE,eAA1B,CAA0Cb,SAA1C,EAAqDC,UAArD;IACD,CAFD,MAEO;MACLO,OAAO,CAACM,oBAAR,CAA6BC,OAA7B,CAAqC,UAACC,cAAD,EAAoB;QACvD,IAAIA,cAAc,CAACJ,MAAf,CAAsBb,UAAtB,CAAJ,EAAuC;UACrCiB,cAAc,CAACH,eAAf,CAA+Bb,SAA/B,EAA0CC,UAA1C;QACD;MACF,CAJD;IAKD;;IAED,IAAIC,OAAO,CAACC,UAAR,IAAsBK,OAAO,CAACS,OAAlC,EAA2C;MACzC,IAAMC,gBAAgB,GAAG,0CACvBV,OADuB,EAEvBR,SAFuB,EAGvBE,OAAO,CAACG,WAHe,CAAzB;;MAKA,IAAIa,gBAAJ,EAAsB;QACpB,OAAOX,QAAQ,CAACW,gBAAD,CAAf;MACD;IACF;;IAED,IAAIhB,OAAO,CAACE,QAAR,IAAoBI,OAAO,CAACS,OAA5B,IAAuCT,OAAO,CAACW,SAAR,EAA3C,EAAgE;MAC9DZ,QAAQ,CAAC,sCAAmBC,OAAnB,CAAD,CAAR;IACD;;IAED,IACEN,OAAO,CAACI,QAAR,8BACAE,OAAO,CAACG,iBADR,mDACA,uBAA2BS,qBAD3B,IAEA,0BAAW,+BAAX,CAHF,EAIE;MACA;MACAb,QAAQ,CAAC,yCAAmBC,OAAnB,CAAD,CAAR;IACD;;IACD,OAAOD,QAAQ,CAAC,0BAAYC,OAAZ,CAAD,CAAf;EACD,CArDD;AAAA,CADK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"FormAttributeSetRepeatable.js","names":["addRepeatableAttributeSet","form","newForm","clone","addEmptyFormObject","cancelRepeatableAttributeSet","formObject","removeFormObject","removeRepeatableAttributeSet"],"sources":["../../../src/redux/actions/FormAttributeSetRepeatable.js"],"sourcesContent":["// @flow\nimport { updateModel } from \"../_modularui/actions\";\n\nimport type FormModel from \"../../models/form/FormModel\";\nimport type FormObjectModel from \"../../models/form/FormObjectModel\";\nimport type { UpdateModelAction } from \"../_modularui/types\";\n\n/**\n */\nexport const addRepeatableAttributeSet = (\n form: FormModel\n): UpdateModelAction => {\n const newForm = form.clone();\n\n newForm.addEmptyFormObject();\n\n return updateModel(newForm);\n};\n\n/**\n */\nexport const cancelRepeatableAttributeSet = (\n form: FormModel,\n formObject: FormObjectModel\n): UpdateModelAction => {\n const newForm = form.clone();\n\n newForm.addEmptyFormObject();\n newForm.removeFormObject(formObject);\n\n return updateModel(newForm);\n};\n\n/**\n */\nexport const removeRepeatableAttributeSet = (\n form: FormModel,\n formObject: FormObjectModel\n): UpdateModelAction => {\n const newForm = form.clone();\n\n newForm.removeFormObject(formObject);\n\n return updateModel(newForm);\n};\n"],"mappings":";;;;;;;AACA;;AAMA;AACA;AACO,IAAMA,yBAAyB,GAAG,SAA5BA,yBAA4B,CACvCC,IADuC,EAEjB;EACtB,IAAMC,OAAO,GAAGD,IAAI,CAACE,KAAL,EAAhB;EAEAD,OAAO,CAACE,kBAAR;EAEA,OAAO,0BAAYF,OAAZ,CAAP;AACD,CARM;AAUP;AACA;;;;;AACO,IAAMG,4BAA4B,GAAG,SAA/BA,4BAA+B,CAC1CJ,IAD0C,EAE1CK,UAF0C,EAGpB;EACtB,IAAMJ,OAAO,GAAGD,IAAI,CAACE,KAAL,EAAhB;EAEAD,OAAO,CAACE,kBAAR;EACAF,OAAO,CAACK,gBAAR,CAAyBD,UAAzB;EAEA,OAAO,0BAAYJ,OAAZ,CAAP;AACD,CAVM;AAYP;AACA;;;;;AACO,IAAMM,4BAA4B,GAAG,SAA/BA,4BAA+B,CAC1CP,IAD0C,EAE1CK,UAF0C,EAGpB;EACtB,IAAMJ,OAAO,GAAGD,IAAI,CAACE,KAAL,EAAhB;EAEAD,OAAO,CAACK,gBAAR,CAAyBD,UAAzB;EAEA,OAAO,0BAAYJ,OAAZ,CAAP;AACD,CATM"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"FormAutosave.js","names":["updateAutosave","status","model","type","payload","autosave","dispatch","form","AUTOSAVE_STATUS","START","formdata","getFormData","ModularUIRequest","selfhref","setParameter","method","HTTP_METHODS","POST","data","childmodels","locale","fetch","then","savedForm","FormModel","lastServerUpdate","FINISHED","debouncedAutosave","VALIDATE_DEBOUNCE_TIMEOUT","autosaveFormObject"],"sources":["../../../src/redux/actions/FormAutosave.js"],"sourcesContent":["// @flow\nimport debounce from \"lodash/debounce\";\n\nimport ModularUIRequest from \"../../modularui/ModularUIRequest\";\nimport FormModel from \"../../models/form/FormModel\";\n\nimport {\n HTTP_METHODS,\n VALIDATE_DEBOUNCE_TIMEOUT,\n AUTOSAVE_STATUS,\n} from \"../../constants/Constants\";\n\nimport { updateModel } from \"../_modularui/actions\";\n\nimport type { UpdateAutosaveAction, ThunkAction, Dispatch } from \"../types\";\n\n/**\n * Update validations of the form currently in the reducer\n * because of the debounce timeout there might have been an update on the form during validation\n */\nconst updateAutosave = (\n status: $Keys<typeof AUTOSAVE_STATUS>,\n model: FormModel\n): UpdateAutosaveAction => ({\n type: \"UPDATE_AUTOSAVE_STATUS\",\n payload: {\n status,\n model,\n },\n});\n\n/**\n */\nconst autosave = (dispatch: Dispatch, form: FormModel) => {\n dispatch(updateAutosave(AUTOSAVE_STATUS.START, form));\n\n const formdata = form.getFormData(true, false);\n\n new ModularUIRequest(form.selfhref.setParameter(\"commit\", \"true\"), {\n method: HTTP_METHODS.POST,\n data: formdata,\n childmodels: false,\n locale: form.locale,\n })\n .fetch()\n .then((savedForm) => {\n if (savedForm instanceof FormModel) {\n // update last server update to indicate an update has happened\n // send the existing form to prevent updates in the ui based on autosave results\n form.lastServerUpdate = savedForm.lastServerUpdate;\n\n dispatch(updateModel(form));\n dispatch(updateAutosave(AUTOSAVE_STATUS.FINISHED, savedForm));\n }\n });\n};\n\n/**\n * Validates form objects debounced to prevent overloading the (form) service\n * When a form with new errors (or complete) arrives, we send the validations\n * to the current form model where the errors are processed\n * A new form with the new constraints is send to the store\n */\nconst debouncedAutosave = debounce((dispatch, form) => {\n autosave(dispatch, form);\n}, VALIDATE_DEBOUNCE_TIMEOUT);\n\n/**\n */\nexport const autosaveFormObject =\n (form: FormModel): ThunkAction =>\n (dispatch) =>\n debouncedAutosave(dispatch, form);\n"],"mappings":";;;;;;;;;AACA;;AAEA;;AACA;;AAEA;;AAMA;;AAIA;AACA;AACA;AACA;AACA,IAAMA,cAAc,GAAG,SAAjBA,cAAiB,CACrBC,MADqB,EAErBC,KAFqB;EAAA,OAGK;IAC1BC,IAAI,EAAE,wBADoB;IAE1BC,OAAO,EAAE;MACPH,MAAM,EAANA,MADO;MAEPC,KAAK,EAALA;IAFO;EAFiB,CAHL;AAAA,CAAvB;AAWA;AACA;;;AACA,IAAMG,QAAQ,GAAG,SAAXA,QAAW,CAACC,QAAD,EAAqBC,IAArB,EAAyC;EACxDD,QAAQ,CAACN,cAAc,CAACQ,2BAAgBC,KAAjB,EAAwBF,IAAxB,CAAf,CAAR;EAEA,IAAMG,QAAQ,GAAGH,IAAI,CAACI,WAAL,CAAiB,IAAjB,EAAuB,KAAvB,CAAjB;EAEA,IAAIC,yBAAJ,CAAqBL,IAAI,CAACM,QAAL,CAAcC,YAAd,CAA2B,QAA3B,EAAqC,MAArC,CAArB,EAAmE;IACjEC,MAAM,EAAEC,wBAAaC,IAD4C;IAEjEC,IAAI,EAAER,QAF2D;IAGjES,WAAW,EAAE,KAHoD;IAIjEC,MAAM,EAAEb,IAAI,CAACa;EAJoD,CAAnE,EAMGC,KANH,GAOGC,IAPH,CAOQ,UAACC,SAAD,EAAe;IACnB,IAAIA,SAAS,YAAYC,kBAAzB,EAAoC;MAClC;MACA;MACAjB,IAAI,CAACkB,gBAAL,GAAwBF,SAAS,CAACE,gBAAlC;MAEAnB,QAAQ,CAAC,0BAAYC,IAAZ,CAAD,CAAR;MACAD,QAAQ,CAACN,cAAc,CAACQ,2BAAgBkB,QAAjB,EAA2BH,SAA3B,CAAf,CAAR;IACD;EACF,CAhBH;AAiBD,CAtBD;AAwBA;AACA;AACA;AACA;AACA;AACA;;;AACA,IAAMI,iBAAiB,GAAG,uBAAS,UAACrB,QAAD,EAAWC,IAAX,EAAoB;EACrDF,QAAQ,CAACC,QAAD,EAAWC,IAAX,CAAR;AACD,CAFyB,EAEvBqB,oCAFuB,CAA1B;AAIA;AACA;;AACO,IAAMC,kBAAkB,GAC7B,SADWA,kBACX,CAACtB,IAAD;EAAA,OACA,UAACD,QAAD;IAAA,OACEqB,iBAAiB,CAACrB,QAAD,EAAWC,IAAX,CADnB;EAAA,CADA;AAAA,CADK"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"FormAutosubmit.js","names":["autosubmitFormObject","form","attribute","forceUpdate","allObjects","length","currentFormObject","hasAttributeByKey","key","setPreviousObject","isChanged","connectKey","selfhref","method","HTTP_METHODS","POST","data","formdata","updateModel"],"sources":["../../../src/redux/actions/FormAutosubmit.js"],"sourcesContent":["// @flow\nimport { loadModularUI } from \"../_modularui/actions\";\nimport { HTTP_METHODS } from \"../../constants/Constants\";\n\nimport type { AttributeType } from \"../../models/types\";\nimport type FormModel from \"../../models/form/FormModel\";\nimport type { ThunkAction } from \"../types\";\n\n/**\n */\nexport const autosubmitFormObject = (\n form: FormModel,\n attribute: AttributeType,\n forceUpdate: boolean = false\n): ?ThunkAction => {\n // As long as we have form objects,\n // and the current attribute is not found in the current form object, go back.\n // When a form has a result, the current form object is null\n while (\n form.allObjects.length > 0 &&\n (!form.currentFormObject ||\n !form.currentFormObject.hasAttributeByKey(attribute.key))\n ) {\n form.setPreviousObject();\n }\n\n if (form.isChanged() || forceUpdate) {\n return loadModularUI(form.connectKey, form.selfhref, {\n method: HTTP_METHODS.POST,\n data: form.formdata,\n updateModel: form,\n });\n }\n\n return null;\n};\n"],"mappings":";;;;;;;AACA;;AACA;;AAMA;AACA;AACO,IAAMA,oBAAoB,GAAG,SAAvBA,oBAAuB,CAClCC,IADkC,EAElCC,SAFkC,EAIjB;EAAA,IADjBC,WACiB,uEADM,KACN;;EACjB;EACA;EACA;EACA,OACEF,IAAI,CAACG,UAAL,CAAgBC,MAAhB,GAAyB,CAAzB,KACC,CAACJ,IAAI,CAACK,iBAAN,IACC,CAACL,IAAI,CAACK,iBAAL,CAAuBC,iBAAvB,CAAyCL,SAAS,CAACM,GAAnD,CAFH,CADF,EAIE;IACAP,IAAI,CAACQ,iBAAL;EACD;;EAED,IAAIR,IAAI,CAACS,SAAL,MAAoBP,WAAxB,EAAqC;IACnC,OAAO,4BAAcF,IAAI,CAACU,UAAnB,EAA+BV,IAAI,CAACW,QAApC,EAA8C;MACnDC,MAAM,EAAEC,wBAAaC,IAD8B;MAEnDC,IAAI,EAAEf,IAAI,CAACgB,QAFwC;MAGnDC,WAAW,EAAEjB;IAHsC,CAA9C,CAAP;EAKD;;EAED,OAAO,IAAP;AACD,CAzBM"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"FormValidations.js","names":["updateValidations","form","formWithValidations","dispatch","getState","currentForm","modularui","connectKey","validatedForm","model","clone","FormModel","data","debouncedValidateFormObject","ModularUIRequest","selfhref","setParameter","method","HTTP_METHODS","POST","validationData","childmodels","isValidationRequest","locale","fetch","then","VALIDATE_DEBOUNCE_TIMEOUT","leading","trailing","validateFormObject"],"sources":["../../../src/redux/actions/FormValidations.js"],"sourcesContent":["// @flow\nimport debounce from \"lodash/debounce\";\n\nimport { updateModel } from \"../_modularui/actions\";\n\nimport ModularUIRequest from \"../../modularui/ModularUIRequest\";\n\nimport {\n HTTP_METHODS,\n VALIDATE_DEBOUNCE_TIMEOUT,\n} from \"../../constants/Constants\";\n\nimport FormModel from \"../../models/form/FormModel\";\n\nimport type { Dispatch, ThunkAction } from \"../types\";\n\n/**\n * Update validations of the form currently in the reducer\n * because of the debounce timeout there might have been an update on the form during validation\n */\nconst updateValidations =\n (form, formWithValidations) => (dispatch, getState) => {\n const currentForm = getState().modularui[form.connectKey];\n\n if (currentForm) {\n const validatedForm = currentForm.model.clone(true);\n if (validatedForm instanceof FormModel) {\n validatedForm.updateValidations(formWithValidations.data);\n }\n\n dispatch(updateModel(validatedForm));\n }\n };\n\n/**\n * Validates form objects debounced to prevent overloading the (form) service\n * When a form with new errors (or complete) arrives, we send the validations\n * to the current form model where the errors are processed\n * A new form with the new constraints is send to the store\n */\nconst debouncedValidateFormObject = debounce<\n (dispatch: Dispatch, form: FormModel) => void\n>(\n (dispatch, form: FormModel) => {\n new ModularUIRequest(form.selfhref.setParameter(\"commit\", \"false\"), {\n method: HTTP_METHODS.POST,\n data: form.validationData,\n childmodels: false,\n isValidationRequest: true,\n locale: form.locale,\n })\n .fetch()\n .then((formWithValidations) =>\n dispatch(updateValidations(form, formWithValidations))\n );\n },\n VALIDATE_DEBOUNCE_TIMEOUT,\n {\n leading: true,\n trailing: true,\n }\n);\n\n/**\n */\nexport const validateFormObject =\n (form: FormModel): ThunkAction =>\n (dispatch) =>\n debouncedValidateFormObject(dispatch, form);\n"],"mappings":";;;;;;;;;AACA;;AAEA;;AAEA;;AAEA;;AAKA;;AAIA;AACA;AACA;AACA;AACA,IAAMA,iBAAiB,GACrB,SADIA,iBACJ,CAACC,IAAD,EAAOC,mBAAP;EAAA,OAA+B,UAACC,QAAD,EAAWC,QAAX,EAAwB;IACrD,IAAMC,WAAW,GAAGD,QAAQ,GAAGE,SAAX,CAAqBL,IAAI,CAACM,UAA1B,CAApB;;IAEA,IAAIF,WAAJ,EAAiB;MACf,IAAMG,aAAa,GAAGH,WAAW,CAACI,KAAZ,CAAkBC,KAAlB,CAAwB,IAAxB,CAAtB;;MACA,IAAIF,aAAa,YAAYG,kBAA7B,EAAwC;QACtCH,aAAa,CAACR,iBAAd,CAAgCE,mBAAmB,CAACU,IAApD;MACD;;MAEDT,QAAQ,CAAC,0BAAYK,aAAZ,CAAD,CAAR;IACD;EACF,CAXD;AAAA,CADF;AAcA;AACA;AACA;AACA;AACA;AACA;;;AACA,IAAMK,2BAA2B,GAAG,uBAGlC,UAACV,QAAD,EAAWF,IAAX,EAA+B;EAC7B,IAAIa,yBAAJ,CAAqBb,IAAI,CAACc,QAAL,CAAcC,YAAd,CAA2B,QAA3B,EAAqC,OAArC,CAArB,EAAoE;IAClEC,MAAM,EAAEC,wBAAaC,IAD6C;IAElEP,IAAI,EAAEX,IAAI,CAACmB,cAFuD;IAGlEC,WAAW,EAAE,KAHqD;IAIlEC,mBAAmB,EAAE,IAJ6C;IAKlEC,MAAM,EAAEtB,IAAI,CAACsB;EALqD,CAApE,EAOGC,KAPH,GAQGC,IARH,CAQQ,UAACvB,mBAAD;IAAA,OACJC,QAAQ,CAACH,iBAAiB,CAACC,IAAD,EAAOC,mBAAP,CAAlB,CADJ;EAAA,CARR;AAWD,CAfiC,EAgBlCwB,oCAhBkC,EAiBlC;EACEC,OAAO,EAAE,IADX;EAEEC,QAAQ,EAAE;AAFZ,CAjBkC,CAApC;AAuBA;AACA;;AACO,IAAMC,kBAAkB,GAC7B,SADWA,kBACX,CAAC5B,IAAD;EAAA,OACA,UAACE,QAAD;IAAA,OACEU,2BAA2B,CAACV,QAAD,EAAWF,IAAX,CAD7B;EAAA,CADA;AAAA,CADK"}
|