@beinformed/ui 1.28.2 → 1.28.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 +13 -0
- package/esm/builder/mergeLayoutHintConfigurations.js.map +1 -1
- package/esm/constants/LayoutHints.js.map +1 -1
- package/esm/constants/Settings.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/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/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/withMessage.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/RangeFilterModel.js.map +1 -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/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.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/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.map +1 -1
- package/esm/modularui/CaptchaRequest.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/UploadRequest.js.map +1 -1
- package/esm/react/ErrorBoundary.js.map +1 -1
- package/esm/react/ErrorBoundaryFallback.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 +6 -5
- package/esm/react-client/client.js.map +1 -1
- package/esm/react-client/contextPath.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/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/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/I18nActions.js.map +1 -1
- package/esm/redux/_i18n/I18nReducer.js.map +1 -1
- package/esm/redux/_modularui/ModularUIActions.js.map +1 -1
- package/esm/redux/_modularui/ModularUIConnector.js.map +1 -1
- package/esm/redux/_modularui/ModularUIMiddleware.js.map +1 -1
- package/esm/redux/_modularui/ModularUIReducer.js.map +1 -1
- package/esm/redux/_modularui/ModularUISelectors.js.map +1 -1
- package/esm/redux/_modularui/ModularUIUtils.js.map +1 -1
- package/esm/redux/_modularui/withModularUI.js.map +1 -1
- package/esm/redux/_router/RouterActions.js.map +1 -1
- package/esm/redux/_router/RouterReducer.js.map +1 -1
- package/esm/redux/actions/Application.js.map +1 -1
- package/esm/redux/actions/Error.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/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/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/PanelRenderer.js.map +1 -1
- package/esm/redux/connectors/Preferences.js.map +1 -1
- package/esm/redux/connectors/QuickSearch.js.map +1 -1
- package/esm/redux/connectors/Tab.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/store/beforeRenderHooks.js.map +1 -1
- package/esm/redux/store/configureStore.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/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/createUUID.js.map +1 -1
- package/esm/utils/helpers/objects.js.map +1 -1
- package/esm/utils/helpers/repositoryResource.js.map +1 -1
- package/esm/utils/helpers/sanitizeHtml.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.map +1 -1
- package/lib/constants/LayoutHintConfig.js.map +1 -1
- package/lib/constants/LayoutHints.js.map +1 -1
- 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/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.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.map +1 -1
- 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/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.map +1 -1
- package/lib/modularui/CaptchaRequest.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/UploadRequest.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 +6 -5
- package/lib/react-client/client.js.flow +14 -7
- 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 +4 -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/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/I18nActions.js.map +1 -1
- package/lib/redux/_i18n/I18nReducer.js.map +1 -1
- package/lib/redux/_i18n/index.js.map +1 -1
- package/lib/redux/_modularui/ModularUIActions.js.map +1 -1
- package/lib/redux/_modularui/ModularUIConnector.js.map +1 -1
- package/lib/redux/_modularui/ModularUIMiddleware.js.map +1 -1
- package/lib/redux/_modularui/ModularUIReducer.js.map +1 -1
- package/lib/redux/_modularui/ModularUISelectors.js.map +1 -1
- package/lib/redux/_modularui/ModularUIUtils.js.map +1 -1
- package/lib/redux/_modularui/index.js.map +1 -1
- package/lib/redux/_modularui/withModularUI.js.map +1 -1
- package/lib/redux/_router/RouterActions.js.map +1 -1
- package/lib/redux/_router/RouterConnectors.js.map +1 -1
- package/lib/redux/_router/RouterMiddleware.js.map +1 -1
- package/lib/redux/_router/RouterReducer.js.map +1 -1
- package/lib/redux/_router/index.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 +2 -2
- package/lib/redux/actions/Preferences.js.flow +3 -2
- 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/selectors/i18n.js.map +1 -1
- package/lib/redux/selectors/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/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/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/index.js.map +1 -1
- package/lib/utils/helpers/objects.js.map +1 -1
- package/lib/utils/helpers/repositoryResource.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 +5 -5
- package/src/react-client/client.js +14 -7
- package/src/react-server/__tests__/serverUtil.spec.js +4 -4
- package/src/redux/actions/Preferences.js +3 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LabelAttributeModel.js","names":["LabelAttributeModel","AttributeModel","isApplicableModel","contributions","layouthint","type","Array","isArray","update","value","getFormData"],"sources":["../../../src/models/attributes/LabelAttributeModel.js"],"sourcesContent":["// @flow\nimport AttributeModel from \"./AttributeModel\";\n\n/**\n * Label Attribute model\n */\nexport default class LabelAttributeModel extends AttributeModel {\n /**\n */\n static isApplicableModel(contributions: Object): boolean {\n const layouthint = contributions?.layouthint;\n return (\n contributions.type === \"label\" ||\n (Array.isArray(layouthint) && layouthint.includes(\"label\"))\n );\n }\n\n /**\n */\n get type(): string {\n return \"label\";\n }\n\n /**\n */\n // eslint-disable-next-line no-unused-vars\n update(value: string): LabelAttributeModel {\n return this;\n }\n\n /**\n */\n getFormData(): null {\n return null;\n }\n}\n"],"mappings":";;;;;;;;AACA;AAEA;AACA;AACA;AACe,
|
|
1
|
+
{"version":3,"file":"LabelAttributeModel.js","names":["_AttributeModel","_interopRequireDefault","require","LabelAttributeModel","AttributeModel","isApplicableModel","contributions","layouthint","type","Array","isArray","_includes","default","call","update","value","getFormData","exports"],"sources":["../../../src/models/attributes/LabelAttributeModel.js"],"sourcesContent":["// @flow\nimport AttributeModel from \"./AttributeModel\";\n\n/**\n * Label Attribute model\n */\nexport default class LabelAttributeModel extends AttributeModel {\n /**\n */\n static isApplicableModel(contributions: Object): boolean {\n const layouthint = contributions?.layouthint;\n return (\n contributions.type === \"label\" ||\n (Array.isArray(layouthint) && layouthint.includes(\"label\"))\n );\n }\n\n /**\n */\n get type(): string {\n return \"label\";\n }\n\n /**\n */\n // eslint-disable-next-line no-unused-vars\n update(value: string): LabelAttributeModel {\n return this;\n }\n\n /**\n */\n getFormData(): null {\n return null;\n }\n}\n"],"mappings":";;;;;;;;AACA,IAAAA,eAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA;AACA;AACA;AACe,MAAMC,mBAAmB,SAASC,uBAAc,CAAC;EAC9D;AACF;EACE,OAAOC,iBAAiBA,CAACC,aAAqB,EAAW;IACvD,MAAMC,UAAU,GAAGD,aAAa,EAAEC,UAAU;IAC5C,OACED,aAAa,CAACE,IAAI,KAAK,OAAO,IAC7BC,KAAK,CAACC,OAAO,CAACH,UAAU,CAAC,IAAI,IAAAI,SAAA,CAAAC,OAAA,EAAAL,UAAU,EAAAM,IAAA,CAAVN,UAAU,EAAU,OAAO,CAAE;EAE/D;;EAEA;AACF;EACE,IAAIC,IAAIA,CAAA,EAAW;IACjB,OAAO,OAAO;EAChB;;EAEA;AACF;EACE;EACAM,MAAMA,CAACC,KAAa,EAAuB;IACzC,OAAO,IAAI;EACb;;EAEA;AACF;EACEC,WAAWA,CAAA,EAAS;IAClB,OAAO,IAAI;EACb;AACF;AAACC,OAAA,CAAAL,OAAA,GAAAT,mBAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MemoAttributeModel.js","names":["MemoAttributeModel","StringAttributeModel","isApplicableModel","contributions","rows","type","DEFAULT_ROWS_TO_RENDER","getContribution","formatted","readonlyWidth","ATTRIBUTE_WIDTH","LARGE"],"sources":["../../../src/models/attributes/MemoAttributeModel.js"],"sourcesContent":["// @flow\nimport StringAttributeModel from \"./StringAttributeModel\";\nimport { ATTRIBUTE_WIDTH } from \"../../constants\";\n\n/**\n * Memo attribute\n */\nexport default class MemoAttributeModel extends StringAttributeModel {\n /**\n */\n static isApplicableModel(contributions: Object): boolean {\n const rows = contributions?.rows;\n return contributions.type === \"memo\" || (rows && rows > 1);\n }\n\n /**\n */\n get type(): string {\n return \"memo\";\n }\n\n /**\n * Retrieve number of rows to render in a textarea and wysiwyg input\n */\n get rows(): number {\n const DEFAULT_ROWS_TO_RENDER = 10;\n\n return this.getContribution(\"rows\", DEFAULT_ROWS_TO_RENDER);\n }\n\n /**\n * Get formatted switch\n */\n get formatted(): boolean {\n return this.getContribution(\"formatted\", false);\n }\n\n /**\n */\n get readonlyWidth(): $Keys<typeof ATTRIBUTE_WIDTH> {\n return ATTRIBUTE_WIDTH.LARGE;\n }\n}\n"],"mappings":";;;;;;;AACA;AACA;AAEA;AACA;AACA;AACe,
|
|
1
|
+
{"version":3,"file":"MemoAttributeModel.js","names":["_StringAttributeModel","_interopRequireDefault","require","_constants","MemoAttributeModel","StringAttributeModel","isApplicableModel","contributions","rows","type","DEFAULT_ROWS_TO_RENDER","getContribution","formatted","readonlyWidth","ATTRIBUTE_WIDTH","LARGE","exports","default"],"sources":["../../../src/models/attributes/MemoAttributeModel.js"],"sourcesContent":["// @flow\nimport StringAttributeModel from \"./StringAttributeModel\";\nimport { ATTRIBUTE_WIDTH } from \"../../constants\";\n\n/**\n * Memo attribute\n */\nexport default class MemoAttributeModel extends StringAttributeModel {\n /**\n */\n static isApplicableModel(contributions: Object): boolean {\n const rows = contributions?.rows;\n return contributions.type === \"memo\" || (rows && rows > 1);\n }\n\n /**\n */\n get type(): string {\n return \"memo\";\n }\n\n /**\n * Retrieve number of rows to render in a textarea and wysiwyg input\n */\n get rows(): number {\n const DEFAULT_ROWS_TO_RENDER = 10;\n\n return this.getContribution(\"rows\", DEFAULT_ROWS_TO_RENDER);\n }\n\n /**\n * Get formatted switch\n */\n get formatted(): boolean {\n return this.getContribution(\"formatted\", false);\n }\n\n /**\n */\n get readonlyWidth(): $Keys<typeof ATTRIBUTE_WIDTH> {\n return ATTRIBUTE_WIDTH.LARGE;\n }\n}\n"],"mappings":";;;;;;;AACA,IAAAA,qBAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AAEA;AACA;AACA;AACe,MAAME,kBAAkB,SAASC,6BAAoB,CAAC;EACnE;AACF;EACE,OAAOC,iBAAiBA,CAACC,aAAqB,EAAW;IACvD,MAAMC,IAAI,GAAGD,aAAa,EAAEC,IAAI;IAChC,OAAOD,aAAa,CAACE,IAAI,KAAK,MAAM,IAAKD,IAAI,IAAIA,IAAI,GAAG,CAAE;EAC5D;;EAEA;AACF;EACE,IAAIC,IAAIA,CAAA,EAAW;IACjB,OAAO,MAAM;EACf;;EAEA;AACF;AACA;EACE,IAAID,IAAIA,CAAA,EAAW;IACjB,MAAME,sBAAsB,GAAG,EAAE;IAEjC,OAAO,IAAI,CAACC,eAAe,CAAC,MAAM,EAAED,sBAAsB,CAAC;EAC7D;;EAEA;AACF;AACA;EACE,IAAIE,SAASA,CAAA,EAAY;IACvB,OAAO,IAAI,CAACD,eAAe,CAAC,WAAW,EAAE,KAAK,CAAC;EACjD;;EAEA;AACF;EACE,IAAIE,aAAaA,CAAA,EAAkC;IACjD,OAAOC,0BAAe,CAACC,KAAK;EAC9B;AACF;AAACC,OAAA,CAAAC,OAAA,GAAAb,kBAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MoneyAttributeModel.js","names":["MoneyAttributeModel","NumberAttributeModel","isApplicableModel","contributions","layouthint","type","Array","isArray","currencySymbol","getContribution","prefix","readonlyWidth","ATTRIBUTE_WIDTH","SMALL"],"sources":["../../../src/models/attributes/MoneyAttributeModel.js"],"sourcesContent":["// @flow\nimport NumberAttributeModel from \"./NumberAttributeModel\";\n\nimport { ATTRIBUTE_WIDTH } from \"../../constants\";\n\n/**\n * Money Attribute model\n */\nexport default class MoneyAttributeModel extends NumberAttributeModel {\n /**\n */\n static isApplicableModel(contributions: Object): boolean {\n const layouthint = contributions?.layouthint;\n return (\n contributions.type === \"money\" ||\n (Array.isArray(layouthint) && layouthint.includes(\"money\"))\n );\n }\n\n /**\n */\n get type(): string {\n return \"money\";\n }\n\n /**\n * Retrieve currency symbol\n */\n get currencySymbol(): string {\n return this.getContribution(\"currencySymbol\", \"\");\n }\n\n /**\n * Retrieve currency symbol as prefix\n */\n get prefix(): string {\n return this.currencySymbol;\n }\n\n /**\n */\n get readonlyWidth(): $Keys<typeof ATTRIBUTE_WIDTH> {\n return ATTRIBUTE_WIDTH.SMALL;\n }\n}\n"],"mappings":";;;;;;;;AACA;AAEA;AAEA;AACA;AACA;AACe,
|
|
1
|
+
{"version":3,"file":"MoneyAttributeModel.js","names":["_NumberAttributeModel","_interopRequireDefault","require","_constants","MoneyAttributeModel","NumberAttributeModel","isApplicableModel","contributions","layouthint","type","Array","isArray","_includes","default","call","currencySymbol","getContribution","prefix","readonlyWidth","ATTRIBUTE_WIDTH","SMALL","exports"],"sources":["../../../src/models/attributes/MoneyAttributeModel.js"],"sourcesContent":["// @flow\nimport NumberAttributeModel from \"./NumberAttributeModel\";\n\nimport { ATTRIBUTE_WIDTH } from \"../../constants\";\n\n/**\n * Money Attribute model\n */\nexport default class MoneyAttributeModel extends NumberAttributeModel {\n /**\n */\n static isApplicableModel(contributions: Object): boolean {\n const layouthint = contributions?.layouthint;\n return (\n contributions.type === \"money\" ||\n (Array.isArray(layouthint) && layouthint.includes(\"money\"))\n );\n }\n\n /**\n */\n get type(): string {\n return \"money\";\n }\n\n /**\n * Retrieve currency symbol\n */\n get currencySymbol(): string {\n return this.getContribution(\"currencySymbol\", \"\");\n }\n\n /**\n * Retrieve currency symbol as prefix\n */\n get prefix(): string {\n return this.currencySymbol;\n }\n\n /**\n */\n get readonlyWidth(): $Keys<typeof ATTRIBUTE_WIDTH> {\n return ATTRIBUTE_WIDTH.SMALL;\n }\n}\n"],"mappings":";;;;;;;;AACA,IAAAA,qBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,UAAA,GAAAD,OAAA;AAEA;AACA;AACA;AACe,MAAME,mBAAmB,SAASC,6BAAoB,CAAC;EACpE;AACF;EACE,OAAOC,iBAAiBA,CAACC,aAAqB,EAAW;IACvD,MAAMC,UAAU,GAAGD,aAAa,EAAEC,UAAU;IAC5C,OACED,aAAa,CAACE,IAAI,KAAK,OAAO,IAC7BC,KAAK,CAACC,OAAO,CAACH,UAAU,CAAC,IAAI,IAAAI,SAAA,CAAAC,OAAA,EAAAL,UAAU,EAAAM,IAAA,CAAVN,UAAU,EAAU,OAAO,CAAE;EAE/D;;EAEA;AACF;EACE,IAAIC,IAAIA,CAAA,EAAW;IACjB,OAAO,OAAO;EAChB;;EAEA;AACF;AACA;EACE,IAAIM,cAAcA,CAAA,EAAW;IAC3B,OAAO,IAAI,CAACC,eAAe,CAAC,gBAAgB,EAAE,EAAE,CAAC;EACnD;;EAEA;AACF;AACA;EACE,IAAIC,MAAMA,CAAA,EAAW;IACnB,OAAO,IAAI,CAACF,cAAc;EAC5B;;EAEA;AACF;EACE,IAAIG,aAAaA,CAAA,EAAkC;IACjD,OAAOC,0BAAe,CAACC,KAAK;EAC9B;AACF;AAACC,OAAA,CAAAR,OAAA,GAAAT,mBAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NumberAttributeModel.js","names":["NumberAttributeModel","AttributeModel","isApplicableModel","contributions","type","getInitialInputValue","value","formatValue","groupingSeparator","getContribution","decimalSeparator","minNumber","minimum","maxNumber","maximum","maxDigits","format","split","length","unit","placeholder","operator","addConstraints","constraints","ConstraintCollection","add","NumberFormatConstraint","NumberGroupingConstraint","NumberBoundaryConstraint","reset","inputvalue","toString","readonlyvalue","isPlainObject","getInputValue","_inputvalue","validate","outputNumber","parseToNumber","isNaN","parseNumberToString","getValue","_value","Number","update","updateLastModification","isHidden","layouthint","has","INITIAL_TOTAL_FILESIZE","MAX_TOTAL_FILESIZE","CASEVIEW_LINK","readonlyWidth","ATTRIBUTE_WIDTH","SMALL"],"sources":["../../../src/models/attributes/NumberAttributeModel.js"],"sourcesContent":["// @flow\nimport { isPlainObject } from \"../../utils/helpers/objects\";\nimport formatValue from \"../../utils/number/formatValue\";\nimport {\n parseNumberToString,\n parseToNumber,\n} from \"../../utils/number/parseNumbers\";\n\nimport AttributeModel from \"./AttributeModel\";\nimport ConstraintCollection from \"./input-constraints/ConstraintCollection\";\n\nimport {\n CASEVIEW_LINK,\n INITIAL_TOTAL_FILESIZE,\n MAX_TOTAL_FILESIZE,\n} from \"../../constants/LayoutHints\";\nimport { ATTRIBUTE_WIDTH } from \"../../constants\";\n\nimport NumberFormatConstraint from \"./input-constraints/NumberFormatConstraint\";\nimport NumberGroupingConstraint from \"./input-constraints/NumberGroupingConstraint\";\nimport NumberBoundaryConstraint from \"./input-constraints/NumberBoundaryConstraint\";\n\n/**\n * Number attribute\n */\nexport default class NumberAttributeModel extends AttributeModel {\n /**\n */\n static isApplicableModel(contributions: Object): boolean {\n return contributions.type === \"number\" || contributions.type === \"integer\";\n }\n\n /**\n */\n get type(): string {\n return \"number\";\n }\n\n /**\n * Get initial value\n */\n getInitialInputValue(value?: string): string {\n if (value == null) {\n return \"\";\n }\n\n return this.formatValue(value);\n }\n\n /**\n * Get grouping separator\n */\n get groupingSeparator(): string {\n return this.getContribution(\"groupingSeparator\", \"\");\n }\n\n /**\n * Get decimal separator\n */\n get decimalSeparator(): string {\n return this.getContribution(\"decimalSeparator\", \"\");\n }\n\n /**\n * Get minimum value\n */\n get minNumber(): ?number {\n return this.contributions.minimum;\n }\n\n /**\n * Get maximum value\n */\n get maxNumber(): ?number {\n return this.contributions.maximum;\n }\n\n /**\n * Gets the maximum digits based on the format\n */\n get maxDigits(): number {\n const format = this.format;\n\n if (format != null && format.includes(\".\")) {\n return format.split(\".\")[1].length;\n }\n\n return 0;\n }\n\n /**\n * Get unit text\n */\n get unit(): string {\n return this.getContribution(\"unit\", \"\");\n }\n\n /**\n * Get placeholder text\n */\n get placeholder(): string {\n return this.getContribution(\"placeholder\", \"\");\n }\n\n /**\n */\n get operator(): string {\n return this.getContribution(\"operator\", \"\");\n }\n\n /**\n * Add number constraints\n */\n addConstraints(): ConstraintCollection {\n const constraints = new ConstraintCollection();\n\n constraints.add(\n new NumberFormatConstraint(\n this.groupingSeparator,\n this.decimalSeparator,\n this.format\n )\n );\n constraints.add(\n new NumberGroupingConstraint(\n this.groupingSeparator,\n this.decimalSeparator,\n this.format\n )\n );\n constraints.add(\n new NumberBoundaryConstraint(\n this.minNumber,\n this.maxNumber,\n this.groupingSeparator,\n this.decimalSeparator,\n this.format\n )\n );\n\n return constraints;\n }\n\n /**\n * Reset attribute to empty string\n */\n reset() {\n this.inputvalue = \"\";\n }\n\n /**\n */\n formatValue(value: ?number | ?string): string {\n if (value == null || value.toString() === \"\") {\n return \"\";\n }\n\n return formatValue(\n value,\n this.format,\n this.groupingSeparator,\n this.decimalSeparator\n );\n }\n\n /**\n */\n get readonlyvalue(): string {\n if (!isPlainObject(this.value)) {\n return this.formatValue(this.value);\n }\n\n return this.value;\n }\n\n /**\n * Returns the value as entered by the user. This can differ from the internal iso value that is stored\n */\n get inputvalue(): string {\n return this.getInputValue();\n }\n\n /**\n * Sets the input value to the value entered by the user\n */\n set inputvalue(value: string) {\n this._inputvalue = value;\n this.validate(value);\n\n const outputNumber = parseToNumber(\n value,\n this.groupingSeparator,\n this.decimalSeparator\n );\n\n this.value = isNaN(outputNumber) ? null : parseNumberToString(outputNumber);\n }\n\n /**\n * Getting the value of the attribute\n */\n getValue(): number | null {\n const value = this._value;\n\n return value == null || value === \"\" ? null : Number(value);\n }\n\n /**\n * Update the attribute by name and value\n */\n update(value: string): NumberAttributeModel {\n if (value === this.inputvalue) {\n return this;\n }\n\n this.updateLastModification();\n this.inputvalue = value;\n\n return this;\n }\n\n /**\n */\n get isHidden(): boolean {\n return (\n super.isHidden ||\n this.layouthint.has(\n INITIAL_TOTAL_FILESIZE,\n MAX_TOTAL_FILESIZE,\n CASEVIEW_LINK\n )\n );\n }\n\n /**\n */\n set isHidden(isHidden: boolean) {\n super.isHidden = isHidden;\n }\n\n /**\n */\n get readonlyWidth(): $Keys<typeof ATTRIBUTE_WIDTH> {\n return ATTRIBUTE_WIDTH.SMALL;\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NumberAttributeModel.js","names":["_objects","require","_formatValue","_interopRequireDefault","_parseNumbers","_AttributeModel","_ConstraintCollection","_LayoutHints","_constants","_NumberFormatConstraint","_NumberGroupingConstraint","_NumberBoundaryConstraint","NumberAttributeModel","AttributeModel","isApplicableModel","contributions","type","getInitialInputValue","value","formatValue","groupingSeparator","getContribution","decimalSeparator","minNumber","minimum","maxNumber","maximum","maxDigits","format","_includes","default","call","split","length","unit","placeholder","operator","addConstraints","constraints","ConstraintCollection","add","NumberFormatConstraint","NumberGroupingConstraint","NumberBoundaryConstraint","reset","inputvalue","toString","readonlyvalue","isPlainObject","getInputValue","_inputvalue","validate","outputNumber","parseToNumber","isNaN","parseNumberToString","getValue","_value","Number","update","updateLastModification","isHidden","layouthint","has","INITIAL_TOTAL_FILESIZE","MAX_TOTAL_FILESIZE","CASEVIEW_LINK","readonlyWidth","ATTRIBUTE_WIDTH","SMALL","exports"],"sources":["../../../src/models/attributes/NumberAttributeModel.js"],"sourcesContent":["// @flow\nimport { isPlainObject } from \"../../utils/helpers/objects\";\nimport formatValue from \"../../utils/number/formatValue\";\nimport {\n parseNumberToString,\n parseToNumber,\n} from \"../../utils/number/parseNumbers\";\n\nimport AttributeModel from \"./AttributeModel\";\nimport ConstraintCollection from \"./input-constraints/ConstraintCollection\";\n\nimport {\n CASEVIEW_LINK,\n INITIAL_TOTAL_FILESIZE,\n MAX_TOTAL_FILESIZE,\n} from \"../../constants/LayoutHints\";\nimport { ATTRIBUTE_WIDTH } from \"../../constants\";\n\nimport NumberFormatConstraint from \"./input-constraints/NumberFormatConstraint\";\nimport NumberGroupingConstraint from \"./input-constraints/NumberGroupingConstraint\";\nimport NumberBoundaryConstraint from \"./input-constraints/NumberBoundaryConstraint\";\n\n/**\n * Number attribute\n */\nexport default class NumberAttributeModel extends AttributeModel {\n /**\n */\n static isApplicableModel(contributions: Object): boolean {\n return contributions.type === \"number\" || contributions.type === \"integer\";\n }\n\n /**\n */\n get type(): string {\n return \"number\";\n }\n\n /**\n * Get initial value\n */\n getInitialInputValue(value?: string): string {\n if (value == null) {\n return \"\";\n }\n\n return this.formatValue(value);\n }\n\n /**\n * Get grouping separator\n */\n get groupingSeparator(): string {\n return this.getContribution(\"groupingSeparator\", \"\");\n }\n\n /**\n * Get decimal separator\n */\n get decimalSeparator(): string {\n return this.getContribution(\"decimalSeparator\", \"\");\n }\n\n /**\n * Get minimum value\n */\n get minNumber(): ?number {\n return this.contributions.minimum;\n }\n\n /**\n * Get maximum value\n */\n get maxNumber(): ?number {\n return this.contributions.maximum;\n }\n\n /**\n * Gets the maximum digits based on the format\n */\n get maxDigits(): number {\n const format = this.format;\n\n if (format != null && format.includes(\".\")) {\n return format.split(\".\")[1].length;\n }\n\n return 0;\n }\n\n /**\n * Get unit text\n */\n get unit(): string {\n return this.getContribution(\"unit\", \"\");\n }\n\n /**\n * Get placeholder text\n */\n get placeholder(): string {\n return this.getContribution(\"placeholder\", \"\");\n }\n\n /**\n */\n get operator(): string {\n return this.getContribution(\"operator\", \"\");\n }\n\n /**\n * Add number constraints\n */\n addConstraints(): ConstraintCollection {\n const constraints = new ConstraintCollection();\n\n constraints.add(\n new NumberFormatConstraint(\n this.groupingSeparator,\n this.decimalSeparator,\n this.format\n )\n );\n constraints.add(\n new NumberGroupingConstraint(\n this.groupingSeparator,\n this.decimalSeparator,\n this.format\n )\n );\n constraints.add(\n new NumberBoundaryConstraint(\n this.minNumber,\n this.maxNumber,\n this.groupingSeparator,\n this.decimalSeparator,\n this.format\n )\n );\n\n return constraints;\n }\n\n /**\n * Reset attribute to empty string\n */\n reset() {\n this.inputvalue = \"\";\n }\n\n /**\n */\n formatValue(value: ?number | ?string): string {\n if (value == null || value.toString() === \"\") {\n return \"\";\n }\n\n return formatValue(\n value,\n this.format,\n this.groupingSeparator,\n this.decimalSeparator\n );\n }\n\n /**\n */\n get readonlyvalue(): string {\n if (!isPlainObject(this.value)) {\n return this.formatValue(this.value);\n }\n\n return this.value;\n }\n\n /**\n * Returns the value as entered by the user. This can differ from the internal iso value that is stored\n */\n get inputvalue(): string {\n return this.getInputValue();\n }\n\n /**\n * Sets the input value to the value entered by the user\n */\n set inputvalue(value: string) {\n this._inputvalue = value;\n this.validate(value);\n\n const outputNumber = parseToNumber(\n value,\n this.groupingSeparator,\n this.decimalSeparator\n );\n\n this.value = isNaN(outputNumber) ? null : parseNumberToString(outputNumber);\n }\n\n /**\n * Getting the value of the attribute\n */\n getValue(): number | null {\n const value = this._value;\n\n return value == null || value === \"\" ? null : Number(value);\n }\n\n /**\n * Update the attribute by name and value\n */\n update(value: string): NumberAttributeModel {\n if (value === this.inputvalue) {\n return this;\n }\n\n this.updateLastModification();\n this.inputvalue = value;\n\n return this;\n }\n\n /**\n */\n get isHidden(): boolean {\n return (\n super.isHidden ||\n this.layouthint.has(\n INITIAL_TOTAL_FILESIZE,\n MAX_TOTAL_FILESIZE,\n CASEVIEW_LINK\n )\n );\n }\n\n /**\n */\n set isHidden(isHidden: boolean) {\n super.isHidden = isHidden;\n }\n\n /**\n */\n get readonlyWidth(): $Keys<typeof ATTRIBUTE_WIDTH> {\n return ATTRIBUTE_WIDTH.SMALL;\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PasswordAttributeModel.js","names":["PasswordAttributeModel","StringAttributeModel","isApplicableModel","contributions","layouthint","type","Array","isArray","update","value","updateLastModification","inputvalue","constraints","getContribution","upperAndLowerCaseMandatory","maxSequenceOfIdenticalCharacters","maxSequenceOfUsernameCharacters","minNumberOfNumericCharacters","minNumberOfSpecialCharacters","regexConstraints","regexConstraint","addConstraints","isConfirmPassword","getConfirmPasswordConstraints","getStandardPasswordConstraints","ConstraintCollection","add","PasswordConfirmConstraint","confirmValue","otherLabel","PasswordLowerAndUpperCaseConstraint","PasswordThreeConsecutiveCharactersNotAllowedConstraint","PasswordMinNumericCharactersConstraint","PasswordMinSpecialCharactersConstraint","length","forEach","RegexConstraint","has","CONFIRM_PASSWORD","constraintCollection","_isConfirmPassword","_confirmValue","validate","_otherLabel","useClientsideValidation","isOptionalAndEmpty","_isValid","_validatedValue","getFormData","inError","name"],"sources":["../../../src/models/attributes/PasswordAttributeModel.js"],"sourcesContent":["// @flow\nimport StringAttributeModel from \"./StringAttributeModel\";\nimport ConstraintCollection from \"./input-constraints/ConstraintCollection\";\n\nimport PasswordLowerAndUpperCaseConstraint from \"./input-constraints/PasswordLowerAndUpperCaseConstraint\";\nimport PasswordThreeConsecutiveCharactersNotAllowedConstraint from \"./input-constraints/PasswordThreeConsecutiveCharactersNotAllowedConstraint\";\nimport PasswordMinNumericCharactersConstraint from \"./input-constraints/PasswordMinNumericCharactersConstraint\";\nimport PasswordMinSpecialCharactersConstraint from \"./input-constraints/PasswordMinSpecialCharactersConstraint\";\nimport RegexConstraint from \"./input-constraints/RegexConstraint\";\nimport PasswordConfirmConstraint from \"./input-constraints/PasswordConfirmConstraint\";\n\nimport { CONFIRM_PASSWORD } from \"../../constants/LayoutHints\";\n\nimport type { RegexObject } from \"./input-constraints/RegexConstraint\";\n\n/**\n * Password attribute\n */\nexport default class PasswordAttributeModel extends StringAttributeModel {\n _confirmValue: string;\n _isConfirmPassword: boolean;\n _otherLabel: string;\n\n /**\n */\n static isApplicableModel(contributions: Object): boolean {\n const layouthint = contributions?.layouthint;\n return (\n contributions.type === \"password\" ||\n (Array.isArray(layouthint) && layouthint.includes(\"password\"))\n );\n }\n\n /**\n */\n get type(): string {\n return \"password\";\n }\n\n /**\n * Update the attribute by name and value\n */\n update(value: string): PasswordAttributeModel {\n this.updateLastModification();\n this.inputvalue = value;\n\n return this;\n }\n\n /**\n */\n get constraints(): Object {\n return this.getContribution(\"constraints\", {});\n }\n\n /**\n */\n get upperAndLowerCaseMandatory(): ?boolean {\n return this.constraints.upperAndLowerCaseMandatory;\n }\n\n /**\n */\n get maxSequenceOfIdenticalCharacters(): ?number {\n return this.constraints.maxSequenceOfIdenticalCharacters;\n }\n\n /**\n */\n get maxSequenceOfUsernameCharacters(): ?number {\n return this.constraints.maxSequenceOfUsernameCharacters;\n }\n\n /**\n */\n get minNumberOfNumericCharacters(): ?number {\n return this.constraints.minNumberOfNumericCharacters;\n }\n\n /**\n */\n get minNumberOfSpecialCharacters(): ?number {\n return this.constraints.minNumberOfSpecialCharacters;\n }\n\n /**\n */\n get regexConstraints(): ?Array<RegexObject> {\n return this.constraints.regexConstraint;\n }\n\n /**\n * Add password constraints\n */\n addConstraints(): ConstraintCollection {\n if (this.isConfirmPassword) {\n return this.getConfirmPasswordConstraints();\n }\n return this.getStandardPasswordConstraints();\n }\n\n /**\n * Constraints for a confirmation password\n */\n getConfirmPasswordConstraints(): ConstraintCollection {\n const constraints = new ConstraintCollection();\n constraints.add(\n new PasswordConfirmConstraint(this.confirmValue, this.otherLabel)\n );\n return constraints;\n }\n\n /**\n * Constrains for a standard password\n */\n getStandardPasswordConstraints(): ConstraintCollection {\n const constraints = new ConstraintCollection();\n\n if (this.upperAndLowerCaseMandatory) {\n constraints.add(new PasswordLowerAndUpperCaseConstraint());\n }\n\n if (this.maxSequenceOfIdenticalCharacters) {\n constraints.add(\n new PasswordThreeConsecutiveCharactersNotAllowedConstraint(\n this.maxSequenceOfIdenticalCharacters\n )\n );\n }\n\n if (this.minNumberOfNumericCharacters) {\n constraints.add(\n new PasswordMinNumericCharactersConstraint(\n this.minNumberOfNumericCharacters\n )\n );\n }\n\n if (this.minNumberOfSpecialCharacters) {\n constraints.add(\n new PasswordMinSpecialCharactersConstraint(\n this.minNumberOfSpecialCharacters\n )\n );\n }\n\n if (this.regexConstraints && this.regexConstraints.length > 0) {\n this.regexConstraints.forEach((regexConstraint) => {\n constraints.add(new RegexConstraint(regexConstraint));\n });\n }\n\n if (\n this.layouthint.has(CONFIRM_PASSWORD) &&\n this.isConfirmPassword == null\n ) {\n constraints.add(\n new PasswordConfirmConstraint(this.confirmValue, this.otherLabel)\n );\n }\n\n return constraints;\n }\n\n /**\n * Retrieve applicable constraint for this attribute\n */\n get constraintCollection(): ConstraintCollection {\n if (this.isConfirmPassword) {\n // confirm password only needs local constraints, no server constraints\n return this.getConfirmPasswordConstraints();\n }\n\n return super.constraintCollection;\n }\n\n /**\n */\n get isConfirmPassword(): boolean | null {\n return this._isConfirmPassword;\n }\n\n /**\n */\n set isConfirmPassword(isConfirmPassword: boolean) {\n this._isConfirmPassword = isConfirmPassword;\n }\n\n /**\n */\n get confirmValue(): string {\n return this._confirmValue || \"\";\n }\n\n /**\n */\n set confirmValue(confirmValue: string) {\n this._confirmValue = confirmValue;\n\n this.validate(this.inputvalue);\n }\n\n /**\n */\n get otherLabel(): string {\n return this._otherLabel;\n }\n\n /**\n */\n set otherLabel(otherLabel: string) {\n this._otherLabel = otherLabel;\n }\n\n /**\n * Validate input\n */\n validate(value: string): boolean {\n // when client side validation is disabled, this attribute is always valid\n if (!this.useClientsideValidation()) {\n return true;\n }\n\n if (this.isOptionalAndEmpty(value)) {\n this._isValid = true;\n } else if (this._validatedValue !== `${this.confirmValue}-${value}`) {\n this._isValid = this.constraintCollection.validate(value);\n }\n this._validatedValue = `${this.confirmValue}-${value}`;\n\n return this._isValid;\n }\n\n /**\n */\n getFormData(): { [string]: any } | null {\n if (this.isConfirmPassword || this.inError()) {\n return null;\n }\n\n return {\n [this.name]: this.value,\n };\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PasswordAttributeModel.js","names":["_StringAttributeModel","_interopRequireDefault","require","_ConstraintCollection","_PasswordLowerAndUpperCaseConstraint","_PasswordThreeConsecutiveCharactersNotAllowedConstraint","_PasswordMinNumericCharactersConstraint","_PasswordMinSpecialCharactersConstraint","_RegexConstraint","_PasswordConfirmConstraint","_LayoutHints","PasswordAttributeModel","StringAttributeModel","constructor","arguments","_defineProperty2","default","isApplicableModel","contributions","layouthint","type","Array","isArray","_includes","call","update","value","updateLastModification","inputvalue","constraints","getContribution","upperAndLowerCaseMandatory","maxSequenceOfIdenticalCharacters","maxSequenceOfUsernameCharacters","minNumberOfNumericCharacters","minNumberOfSpecialCharacters","regexConstraints","regexConstraint","addConstraints","isConfirmPassword","getConfirmPasswordConstraints","getStandardPasswordConstraints","ConstraintCollection","add","PasswordConfirmConstraint","confirmValue","otherLabel","PasswordLowerAndUpperCaseConstraint","PasswordThreeConsecutiveCharactersNotAllowedConstraint","PasswordMinNumericCharactersConstraint","PasswordMinSpecialCharactersConstraint","length","forEach","RegexConstraint","has","CONFIRM_PASSWORD","constraintCollection","_isConfirmPassword","_confirmValue","validate","_otherLabel","useClientsideValidation","isOptionalAndEmpty","_isValid","_validatedValue","getFormData","inError","name","exports"],"sources":["../../../src/models/attributes/PasswordAttributeModel.js"],"sourcesContent":["// @flow\nimport StringAttributeModel from \"./StringAttributeModel\";\nimport ConstraintCollection from \"./input-constraints/ConstraintCollection\";\n\nimport PasswordLowerAndUpperCaseConstraint from \"./input-constraints/PasswordLowerAndUpperCaseConstraint\";\nimport PasswordThreeConsecutiveCharactersNotAllowedConstraint from \"./input-constraints/PasswordThreeConsecutiveCharactersNotAllowedConstraint\";\nimport PasswordMinNumericCharactersConstraint from \"./input-constraints/PasswordMinNumericCharactersConstraint\";\nimport PasswordMinSpecialCharactersConstraint from \"./input-constraints/PasswordMinSpecialCharactersConstraint\";\nimport RegexConstraint from \"./input-constraints/RegexConstraint\";\nimport PasswordConfirmConstraint from \"./input-constraints/PasswordConfirmConstraint\";\n\nimport { CONFIRM_PASSWORD } from \"../../constants/LayoutHints\";\n\nimport type { RegexObject } from \"./input-constraints/RegexConstraint\";\n\n/**\n * Password attribute\n */\nexport default class PasswordAttributeModel extends StringAttributeModel {\n _confirmValue: string;\n _isConfirmPassword: boolean;\n _otherLabel: string;\n\n /**\n */\n static isApplicableModel(contributions: Object): boolean {\n const layouthint = contributions?.layouthint;\n return (\n contributions.type === \"password\" ||\n (Array.isArray(layouthint) && layouthint.includes(\"password\"))\n );\n }\n\n /**\n */\n get type(): string {\n return \"password\";\n }\n\n /**\n * Update the attribute by name and value\n */\n update(value: string): PasswordAttributeModel {\n this.updateLastModification();\n this.inputvalue = value;\n\n return this;\n }\n\n /**\n */\n get constraints(): Object {\n return this.getContribution(\"constraints\", {});\n }\n\n /**\n */\n get upperAndLowerCaseMandatory(): ?boolean {\n return this.constraints.upperAndLowerCaseMandatory;\n }\n\n /**\n */\n get maxSequenceOfIdenticalCharacters(): ?number {\n return this.constraints.maxSequenceOfIdenticalCharacters;\n }\n\n /**\n */\n get maxSequenceOfUsernameCharacters(): ?number {\n return this.constraints.maxSequenceOfUsernameCharacters;\n }\n\n /**\n */\n get minNumberOfNumericCharacters(): ?number {\n return this.constraints.minNumberOfNumericCharacters;\n }\n\n /**\n */\n get minNumberOfSpecialCharacters(): ?number {\n return this.constraints.minNumberOfSpecialCharacters;\n }\n\n /**\n */\n get regexConstraints(): ?Array<RegexObject> {\n return this.constraints.regexConstraint;\n }\n\n /**\n * Add password constraints\n */\n addConstraints(): ConstraintCollection {\n if (this.isConfirmPassword) {\n return this.getConfirmPasswordConstraints();\n }\n return this.getStandardPasswordConstraints();\n }\n\n /**\n * Constraints for a confirmation password\n */\n getConfirmPasswordConstraints(): ConstraintCollection {\n const constraints = new ConstraintCollection();\n constraints.add(\n new PasswordConfirmConstraint(this.confirmValue, this.otherLabel)\n );\n return constraints;\n }\n\n /**\n * Constrains for a standard password\n */\n getStandardPasswordConstraints(): ConstraintCollection {\n const constraints = new ConstraintCollection();\n\n if (this.upperAndLowerCaseMandatory) {\n constraints.add(new PasswordLowerAndUpperCaseConstraint());\n }\n\n if (this.maxSequenceOfIdenticalCharacters) {\n constraints.add(\n new PasswordThreeConsecutiveCharactersNotAllowedConstraint(\n this.maxSequenceOfIdenticalCharacters\n )\n );\n }\n\n if (this.minNumberOfNumericCharacters) {\n constraints.add(\n new PasswordMinNumericCharactersConstraint(\n this.minNumberOfNumericCharacters\n )\n );\n }\n\n if (this.minNumberOfSpecialCharacters) {\n constraints.add(\n new PasswordMinSpecialCharactersConstraint(\n this.minNumberOfSpecialCharacters\n )\n );\n }\n\n if (this.regexConstraints && this.regexConstraints.length > 0) {\n this.regexConstraints.forEach((regexConstraint) => {\n constraints.add(new RegexConstraint(regexConstraint));\n });\n }\n\n if (\n this.layouthint.has(CONFIRM_PASSWORD) &&\n this.isConfirmPassword == null\n ) {\n constraints.add(\n new PasswordConfirmConstraint(this.confirmValue, this.otherLabel)\n );\n }\n\n return constraints;\n }\n\n /**\n * Retrieve applicable constraint for this attribute\n */\n get constraintCollection(): ConstraintCollection {\n if (this.isConfirmPassword) {\n // confirm password only needs local constraints, no server constraints\n return this.getConfirmPasswordConstraints();\n }\n\n return super.constraintCollection;\n }\n\n /**\n */\n get isConfirmPassword(): boolean | null {\n return this._isConfirmPassword;\n }\n\n /**\n */\n set isConfirmPassword(isConfirmPassword: boolean) {\n this._isConfirmPassword = isConfirmPassword;\n }\n\n /**\n */\n get confirmValue(): string {\n return this._confirmValue || \"\";\n }\n\n /**\n */\n set confirmValue(confirmValue: string) {\n this._confirmValue = confirmValue;\n\n this.validate(this.inputvalue);\n }\n\n /**\n */\n get otherLabel(): string {\n return this._otherLabel;\n }\n\n /**\n */\n set otherLabel(otherLabel: string) {\n this._otherLabel = otherLabel;\n }\n\n /**\n * Validate input\n */\n validate(value: string): boolean {\n // when client side validation is disabled, this attribute is always valid\n if (!this.useClientsideValidation()) {\n return true;\n }\n\n if (this.isOptionalAndEmpty(value)) {\n this._isValid = true;\n } else if (this._validatedValue !== `${this.confirmValue}-${value}`) {\n this._isValid = this.constraintCollection.validate(value);\n }\n this._validatedValue = `${this.confirmValue}-${value}`;\n\n return this._isValid;\n }\n\n /**\n */\n getFormData(): { [string]: any } | null {\n if (this.isConfirmPassword || this.inError()) {\n return null;\n }\n\n return {\n [this.name]: this.value,\n };\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StringAttributeModel.js","names":["StringAttributeModel","AttributeModel","constructor","attribute","attributeContributions","_placeholder","getContribution","getInitialInputValue","value","formatValue","isApplicableModel","contributions","layouthint","type","Array","isArray","regexp","regexpvalidationmessage","postfix","prefix","placeholder","isBSN","has","isIBAN","isZipcode","isEmail","addConstraints","constraints","ConstraintCollection","add","BSNConstraint","IBANConstraint","RegexConstraint","messageKey","defaultMessage","regex","RegExp","reset","inputvalue","formatIBAN","noFormat","removeFormat","groups","replace","match","join","formatZipcode","length","substring","toUpperCase","formatBSN","toString","validateValue","getInputValue","_inputvalue","validate","readonlyvalue","update","updateLastModification","readonlyWidth","ATTRIBUTE_WIDTH","SMALL","LARGE","MEDIUM"],"sources":["../../../src/models/attributes/StringAttributeModel.js"],"sourcesContent":["// @flow\nimport AttributeModel from \"./AttributeModel\";\nimport ConstraintCollection from \"./input-constraints/ConstraintCollection\";\nimport RegexConstraint from \"./input-constraints/RegexConstraint\";\nimport BSNConstraint from \"./input-constraints/BSNConstraint\";\nimport IBANConstraint from \"./input-constraints/IBANConstraint\";\n\nimport { ATTRIBUTE_WIDTH } from \"../../constants\";\n\n/**\n * String attribute\n */\nexport default class StringAttributeModel extends AttributeModel {\n _placeholder: string;\n\n /**\n */\n constructor(attribute: Object, attributeContributions: Object) {\n super(attribute, attributeContributions);\n\n this._placeholder = this.getContribution(\"placeholder\", \"\");\n }\n\n /**\n * Retrieve initial input value\n */\n getInitialInputValue(value: any): string {\n return this.formatValue(value);\n }\n\n /**\n */\n static isApplicableModel(contributions: Object): boolean {\n const layouthint = contributions?.layouthint;\n return (\n contributions.type === \"string\" ||\n (Array.isArray(layouthint) && layouthint.includes(\"string\"))\n );\n }\n\n /**\n */\n get type(): string {\n return \"string\";\n }\n\n /**\n * Get Regexp pattern\n */\n get regexp(): string | null {\n return this.getContribution(\"regexp\");\n }\n\n /**\n */\n get regexpvalidationmessage(): string | null {\n return this.getContribution(\"regexpValidationMessage\");\n }\n\n /**\n * Get postfix text\n */\n get postfix(): string {\n return this.getContribution(\"postfix\", \"\");\n }\n\n /**\n * Get prefix text\n */\n get prefix(): string {\n return this.getContribution(\"prefix\", \"\");\n }\n\n /**\n * Get placeholder text\n */\n get placeholder(): string {\n return this._placeholder;\n }\n\n /**\n * Set placeholder text\n */\n set placeholder(placeholder: string) {\n this._placeholder = placeholder;\n }\n\n /**\n */\n isBSN(): boolean {\n return this.layouthint.has(\"bsn\");\n }\n\n /**\n */\n isIBAN(): boolean {\n return this.layouthint.has(\"iban\");\n }\n\n /**\n */\n isZipcode(): boolean {\n return this.layouthint.has(\"zipcode\");\n }\n\n /**\n */\n isEmail(): boolean {\n return this.layouthint.has(\"email\");\n }\n\n /**\n * Add regex constraints\n */\n addConstraints(): ConstraintCollection {\n const constraints = new ConstraintCollection();\n\n if (this.isBSN()) {\n constraints.add(new BSNConstraint());\n } else if (this.isIBAN()) {\n constraints.add(new IBANConstraint());\n }\n\n if (this.isZipcode() && this.regexp) {\n constraints.add(\n new RegexConstraint({\n messageKey: \"Constraint.ZipCode.InvalidFormat\",\n defaultMessage: \"Must be a valid Dutch ZIP code, e.g. 1234 AB\",\n regex: this.regexp,\n })\n );\n } else if (this.isEmail() && this.regexp) {\n constraints.add(\n new RegexConstraint({\n messageKey: \"Constraint.Email.InvalidFormat\",\n defaultMessage: \"Must be a valid e-mail address\",\n regex: new RegExp(this.regexp, \"gi\"),\n })\n );\n } else if (this.regexp) {\n constraints.add(\n new RegexConstraint({\n messageKey: \"Constraint.String.InvalidRegex\",\n defaultMessage: this.regexpvalidationmessage,\n regex: this.regexp,\n })\n );\n }\n\n return constraints;\n }\n\n /**\n * Reset attribute to empty string\n */\n reset() {\n this.inputvalue = \"\";\n }\n\n /**\n */\n formatIBAN(value: string): string {\n const noFormat = this.removeFormat(value);\n\n const groups = noFormat.replace(/\\s/g, \"\").match(/.{1,4}/g);\n return groups == null ? \"\" : groups.join(\" \");\n }\n\n /**\n */\n formatZipcode(value: string): string {\n const noFormat = this.removeFormat(value);\n if (noFormat.length > 4) {\n return (\n noFormat.substring(0, 4) + \" \" + noFormat.substring(4).toUpperCase()\n );\n }\n return noFormat;\n }\n\n /**\n */\n formatBSN(value: string): string {\n return this.removeFormat(value);\n }\n\n /**\n */\n formatValue(value: ?string): string {\n if (value == null || value.toString() === \"\") {\n return \"\";\n }\n\n if (this.isIBAN()) {\n return this.formatIBAN(value);\n }\n\n if (this.isZipcode()) {\n return this.formatZipcode(value);\n }\n\n if (this.isBSN()) {\n return this.formatBSN(value);\n }\n\n return value;\n }\n\n /**\n */\n removeFormat(value: ?string): string {\n if (value == null || value.toString() === \"\") {\n return \"\";\n }\n\n if (this.isIBAN() || this.isZipcode() || this.isBSN()) {\n return value.replace(/\\.|\\s/g, \"\");\n }\n\n return value;\n }\n\n /**\n */\n get validateValue(): string {\n return this.removeFormat(this.inputvalue);\n }\n\n /**\n */\n get inputvalue(): string {\n return this.getInputValue();\n }\n\n /**\n * Sets the input value to the value entered by the user\n */\n set inputvalue(value: string) {\n this._inputvalue = value;\n\n this.value = value == null ? value : this.removeFormat(value);\n this.validate(this.validateValue);\n }\n\n /**\n */\n get readonlyvalue(): string {\n if (typeof this.value === \"string\") {\n return this.formatValue(this.value);\n }\n\n return this.value == null ? \"\" : this.value;\n }\n\n /**\n * Update the attribute by name and value\n */\n update(value: string): StringAttributeModel {\n if (this.inputvalue === value) {\n return this;\n }\n\n this.updateLastModification();\n this.inputvalue = value;\n\n return this;\n }\n\n /**\n */\n get readonlyWidth(): $Keys<typeof ATTRIBUTE_WIDTH> {\n if (this.isZipcode() || this.isBSN()) {\n return ATTRIBUTE_WIDTH.SMALL;\n }\n\n if (this.isIBAN()) {\n return ATTRIBUTE_WIDTH.LARGE;\n }\n\n // default value (also applied for email address + download attribute)\n return ATTRIBUTE_WIDTH.MEDIUM;\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"StringAttributeModel.js","names":["_AttributeModel","_interopRequireDefault","require","_ConstraintCollection","_RegexConstraint","_BSNConstraint","_IBANConstraint","_constants","StringAttributeModel","AttributeModel","constructor","attribute","attributeContributions","_defineProperty2","default","_placeholder","getContribution","getInitialInputValue","value","formatValue","isApplicableModel","contributions","layouthint","type","Array","isArray","_includes","call","regexp","regexpvalidationmessage","postfix","prefix","placeholder","isBSN","has","isIBAN","isZipcode","isEmail","addConstraints","constraints","ConstraintCollection","add","BSNConstraint","IBANConstraint","RegexConstraint","messageKey","defaultMessage","regex","RegExp","reset","inputvalue","formatIBAN","noFormat","removeFormat","groups","replace","match","join","formatZipcode","length","substring","toUpperCase","formatBSN","toString","validateValue","getInputValue","_inputvalue","validate","readonlyvalue","update","updateLastModification","readonlyWidth","ATTRIBUTE_WIDTH","SMALL","LARGE","MEDIUM","exports"],"sources":["../../../src/models/attributes/StringAttributeModel.js"],"sourcesContent":["// @flow\nimport AttributeModel from \"./AttributeModel\";\nimport ConstraintCollection from \"./input-constraints/ConstraintCollection\";\nimport RegexConstraint from \"./input-constraints/RegexConstraint\";\nimport BSNConstraint from \"./input-constraints/BSNConstraint\";\nimport IBANConstraint from \"./input-constraints/IBANConstraint\";\n\nimport { ATTRIBUTE_WIDTH } from \"../../constants\";\n\n/**\n * String attribute\n */\nexport default class StringAttributeModel extends AttributeModel {\n _placeholder: string;\n\n /**\n */\n constructor(attribute: Object, attributeContributions: Object) {\n super(attribute, attributeContributions);\n\n this._placeholder = this.getContribution(\"placeholder\", \"\");\n }\n\n /**\n * Retrieve initial input value\n */\n getInitialInputValue(value: any): string {\n return this.formatValue(value);\n }\n\n /**\n */\n static isApplicableModel(contributions: Object): boolean {\n const layouthint = contributions?.layouthint;\n return (\n contributions.type === \"string\" ||\n (Array.isArray(layouthint) && layouthint.includes(\"string\"))\n );\n }\n\n /**\n */\n get type(): string {\n return \"string\";\n }\n\n /**\n * Get Regexp pattern\n */\n get regexp(): string | null {\n return this.getContribution(\"regexp\");\n }\n\n /**\n */\n get regexpvalidationmessage(): string | null {\n return this.getContribution(\"regexpValidationMessage\");\n }\n\n /**\n * Get postfix text\n */\n get postfix(): string {\n return this.getContribution(\"postfix\", \"\");\n }\n\n /**\n * Get prefix text\n */\n get prefix(): string {\n return this.getContribution(\"prefix\", \"\");\n }\n\n /**\n * Get placeholder text\n */\n get placeholder(): string {\n return this._placeholder;\n }\n\n /**\n * Set placeholder text\n */\n set placeholder(placeholder: string) {\n this._placeholder = placeholder;\n }\n\n /**\n */\n isBSN(): boolean {\n return this.layouthint.has(\"bsn\");\n }\n\n /**\n */\n isIBAN(): boolean {\n return this.layouthint.has(\"iban\");\n }\n\n /**\n */\n isZipcode(): boolean {\n return this.layouthint.has(\"zipcode\");\n }\n\n /**\n */\n isEmail(): boolean {\n return this.layouthint.has(\"email\");\n }\n\n /**\n * Add regex constraints\n */\n addConstraints(): ConstraintCollection {\n const constraints = new ConstraintCollection();\n\n if (this.isBSN()) {\n constraints.add(new BSNConstraint());\n } else if (this.isIBAN()) {\n constraints.add(new IBANConstraint());\n }\n\n if (this.isZipcode() && this.regexp) {\n constraints.add(\n new RegexConstraint({\n messageKey: \"Constraint.ZipCode.InvalidFormat\",\n defaultMessage: \"Must be a valid Dutch ZIP code, e.g. 1234 AB\",\n regex: this.regexp,\n })\n );\n } else if (this.isEmail() && this.regexp) {\n constraints.add(\n new RegexConstraint({\n messageKey: \"Constraint.Email.InvalidFormat\",\n defaultMessage: \"Must be a valid e-mail address\",\n regex: new RegExp(this.regexp, \"gi\"),\n })\n );\n } else if (this.regexp) {\n constraints.add(\n new RegexConstraint({\n messageKey: \"Constraint.String.InvalidRegex\",\n defaultMessage: this.regexpvalidationmessage,\n regex: this.regexp,\n })\n );\n }\n\n return constraints;\n }\n\n /**\n * Reset attribute to empty string\n */\n reset() {\n this.inputvalue = \"\";\n }\n\n /**\n */\n formatIBAN(value: string): string {\n const noFormat = this.removeFormat(value);\n\n const groups = noFormat.replace(/\\s/g, \"\").match(/.{1,4}/g);\n return groups == null ? \"\" : groups.join(\" \");\n }\n\n /**\n */\n formatZipcode(value: string): string {\n const noFormat = this.removeFormat(value);\n if (noFormat.length > 4) {\n return (\n noFormat.substring(0, 4) + \" \" + noFormat.substring(4).toUpperCase()\n );\n }\n return noFormat;\n }\n\n /**\n */\n formatBSN(value: string): string {\n return this.removeFormat(value);\n }\n\n /**\n */\n formatValue(value: ?string): string {\n if (value == null || value.toString() === \"\") {\n return \"\";\n }\n\n if (this.isIBAN()) {\n return this.formatIBAN(value);\n }\n\n if (this.isZipcode()) {\n return this.formatZipcode(value);\n }\n\n if (this.isBSN()) {\n return this.formatBSN(value);\n }\n\n return value;\n }\n\n /**\n */\n removeFormat(value: ?string): string {\n if (value == null || value.toString() === \"\") {\n return \"\";\n }\n\n if (this.isIBAN() || this.isZipcode() || this.isBSN()) {\n return value.replace(/\\.|\\s/g, \"\");\n }\n\n return value;\n }\n\n /**\n */\n get validateValue(): string {\n return this.removeFormat(this.inputvalue);\n }\n\n /**\n */\n get inputvalue(): string {\n return this.getInputValue();\n }\n\n /**\n * Sets the input value to the value entered by the user\n */\n set inputvalue(value: string) {\n this._inputvalue = value;\n\n this.value = value == null ? value : this.removeFormat(value);\n this.validate(this.validateValue);\n }\n\n /**\n */\n get readonlyvalue(): string {\n if (typeof this.value === \"string\") {\n return this.formatValue(this.value);\n }\n\n return this.value == null ? \"\" : this.value;\n }\n\n /**\n * Update the attribute by name and value\n */\n update(value: string): StringAttributeModel {\n if (this.inputvalue === value) {\n return this;\n }\n\n this.updateLastModification();\n this.inputvalue = value;\n\n return this;\n }\n\n /**\n */\n get readonlyWidth(): $Keys<typeof ATTRIBUTE_WIDTH> {\n if (this.isZipcode() || this.isBSN()) {\n return ATTRIBUTE_WIDTH.SMALL;\n }\n\n if (this.isIBAN()) {\n return ATTRIBUTE_WIDTH.LARGE;\n }\n\n // default value (also applied for email address + download attribute)\n return ATTRIBUTE_WIDTH.MEDIUM;\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UploadAttributeModel.js","names":["UNCHANGED","UploadAttributeModel","StringAttributeModel","isApplicableModel","contributions","type","multiple","getContribution","initialTotalFileSize","_initialTotalFileSize","maxTotalFileSize","_maxTotalFileSize","currentFilesize","uploadedFileSize","maxFileSize","uploadMaxFileSize","files","length","accumulatedFileSize","forEach","fileName","file","size","uploadConstraints","mimeTypes","allowedMimeTypes","mimeType","extensions","allowedExtensions","extension","fileTypes","fileSize","isMaxTotal","undefined","acceptedFiles","addConstraints","constraints","ConstraintCollection","add","FileExtensionConstraint","hasFilesizeConstraint","FileSizeConstraint","_files","update","value","JSON","parse","inputvalue","token","join","error","updateLastModification","readonlyvalue","initvalue","toString","getValue","hasValue","_value","mergeAttribute","oldAttribute","isValid"],"sources":["../../../src/models/attributes/UploadAttributeModel.js"],"sourcesContent":["// @flow\nimport ConstraintCollection from \"./input-constraints/ConstraintCollection\";\nimport StringAttributeModel from \"./StringAttributeModel\";\nimport FileExtensionConstraint from \"./input-constraints/FileExtensionConstraint\";\nimport FileSizeConstraint from \"./input-constraints/FileSizeConstraint\";\n\nimport type {\n AttributeType,\n FilesType,\n FiletypeConstraintsType,\n FilesizeConstraintsType,\n} from \"../types\";\n\nconst UNCHANGED = \"UNCHANGED\";\n\n/**\n * Upload attribute\n */\nexport default class UploadAttributeModel extends StringAttributeModel {\n _files: FilesType;\n _initialTotalFileSize: number;\n _maxTotalFileSize: number;\n\n /**\n */\n static isApplicableModel(contributions: Object): boolean {\n return contributions.type === \"binary\";\n }\n\n /**\n */\n get type(): string {\n return \"upload\";\n }\n\n /**\n * Retrieve single or multi upload\n */\n get multiple(): boolean {\n return this.getContribution(\"multiple\", false);\n }\n\n /**\n */\n get initialTotalFileSize(): number {\n return this._initialTotalFileSize || 0;\n }\n\n /**\n */\n set initialTotalFileSize(initialTotalFileSize: number) {\n this._initialTotalFileSize = initialTotalFileSize;\n }\n\n /**\n */\n get maxTotalFileSize(): number {\n return this._maxTotalFileSize;\n }\n\n /**\n */\n set maxTotalFileSize(maxTotalFileSize: number) {\n this._maxTotalFileSize = maxTotalFileSize;\n }\n\n /**\n */\n get currentFilesize(): number {\n return this.initialTotalFileSize + this.uploadedFileSize;\n }\n\n /**\n */\n get maxFileSize(): ?number {\n if (this.maxTotalFileSize) {\n const uploadMaxFileSize = this.maxTotalFileSize - this.currentFilesize;\n if (uploadMaxFileSize < 0) {\n return 0;\n }\n\n return uploadMaxFileSize;\n }\n\n return this.contributions.uploadMaxFileSize;\n }\n\n /**\n */\n get uploadedFileSize(): number {\n if (Object.keys(this.files).length === 0) {\n return 0;\n }\n\n let accumulatedFileSize = 0;\n Object.keys(this.files).forEach((fileName) => {\n const file = this.files[fileName];\n if (file.size) {\n accumulatedFileSize += file.size;\n }\n });\n return accumulatedFileSize;\n }\n\n /**\n * Upload constraints\n */\n get uploadConstraints(): {\n fileTypes: FiletypeConstraintsType,\n maxFileSize: FilesizeConstraintsType,\n acceptedFiles: Array<string>,\n } {\n const mimeTypes = this.contributions.allowedMimeTypes\n ? this.contributions.allowedMimeTypes.filter(\n (mimeType) => mimeType !== \"[...]\"\n )\n : [];\n const extensions = this.contributions.allowedExtensions\n ? this.contributions.allowedExtensions.filter(\n (extension) => extension !== \"[...]\"\n )\n : [];\n\n const fileTypes: FiletypeConstraintsType = extensions.map((extension) => ({\n extensions: [extension],\n mimeTypes,\n }));\n\n return {\n fileTypes,\n maxFileSize: {\n fileSize: this.maxFileSize,\n maxTotalFileSize: this.maxTotalFileSize,\n isMaxTotal: this.maxTotalFileSize !== undefined,\n },\n acceptedFiles: this.acceptedFiles,\n };\n }\n\n /**\n * Array of accepted file extensions and mime types.\n * Convenience method for accept attribute of file input html control\n */\n get acceptedFiles(): Array<string> {\n const mimeTypes = this.contributions.allowedMimeTypes\n ? this.contributions.allowedMimeTypes.filter(\n (mimeType) => mimeType !== \"[...]\"\n )\n : [];\n const extensions = this.contributions.allowedExtensions\n ? this.contributions.allowedExtensions\n .filter((extension) => extension !== \"[...]\")\n .map((extension) => `.${extension}`)\n : [];\n\n return [...extensions, ...mimeTypes];\n }\n\n /**\n * Add upload constraints\n */\n addConstraints(): ConstraintCollection {\n const constraints = new ConstraintCollection();\n\n if (this.uploadConstraints.fileTypes.length > 0) {\n constraints.add(\n new FileExtensionConstraint(this.uploadConstraints.fileTypes)\n );\n }\n\n const hasFilesizeConstraint =\n this.uploadConstraints.maxFileSize.isMaxTotal ||\n this.uploadConstraints.maxFileSize.fileSize !== undefined;\n\n if (hasFilesizeConstraint) {\n constraints.add(\n new FileSizeConstraint(this.uploadConstraints.maxFileSize)\n );\n }\n\n return constraints;\n }\n\n /**\n */\n get files(): FilesType {\n return this._files || {};\n }\n\n /**\n */\n set files(files: FilesType) {\n this._files = files;\n }\n\n /**\n * Update the attribute\n */\n update(value: string): UploadAttributeModel {\n if (!value) {\n return this;\n }\n\n // parse to json and handle uploaded file\n // when the input value is a string but not json,\n // we assume that it is just a list of uploaded tokens and copy it as input value\n try {\n const files = JSON.parse(value);\n this.files = files;\n\n this.inputvalue = Object.keys(files)\n .map((fileName) => files[fileName].token)\n .join(\",\");\n } catch (error) {\n if (typeof value === \"string\") {\n this.inputvalue = value;\n }\n }\n\n this.updateLastModification();\n\n return this;\n }\n\n /**\n */\n get readonlyvalue(): string {\n if (this.initvalue) {\n return this.initvalue.toString();\n }\n\n return \"\";\n }\n\n /**\n * Getting the value of the attribute, return unchanged when the uploaded file has not changed\n */\n getValue(): any {\n if (!this.hasValue()) {\n return null;\n }\n\n if (this.initvalue === this.inputvalue) {\n return UNCHANGED;\n }\n\n return this._value;\n }\n\n /**\n */\n mergeAttribute(oldAttribute: AttributeType) {\n if (\n oldAttribute instanceof UploadAttributeModel &&\n oldAttribute.isValid &&\n oldAttribute.inputvalue !== null\n ) {\n this.update(JSON.stringify(oldAttribute.files));\n }\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"UploadAttributeModel.js","names":["_ConstraintCollection","_interopRequireDefault","require","_StringAttributeModel","_FileExtensionConstraint","_FileSizeConstraint","UNCHANGED","UploadAttributeModel","StringAttributeModel","constructor","arguments","_defineProperty2","default","isApplicableModel","contributions","type","multiple","getContribution","initialTotalFileSize","_initialTotalFileSize","maxTotalFileSize","_maxTotalFileSize","currentFilesize","uploadedFileSize","maxFileSize","uploadMaxFileSize","_keys","files","length","accumulatedFileSize","forEach","fileName","file","size","uploadConstraints","_context","_context2","mimeTypes","allowedMimeTypes","_filter","call","mimeType","extensions","allowedExtensions","extension","fileTypes","_map","fileSize","isMaxTotal","undefined","acceptedFiles","_context3","_context4","_context5","addConstraints","constraints","ConstraintCollection","add","FileExtensionConstraint","hasFilesizeConstraint","FileSizeConstraint","_files","update","value","_context6","JSON","parse","inputvalue","token","join","error","updateLastModification","readonlyvalue","initvalue","toString","getValue","hasValue","_value","mergeAttribute","oldAttribute","isValid","_stringify","exports"],"sources":["../../../src/models/attributes/UploadAttributeModel.js"],"sourcesContent":["// @flow\nimport ConstraintCollection from \"./input-constraints/ConstraintCollection\";\nimport StringAttributeModel from \"./StringAttributeModel\";\nimport FileExtensionConstraint from \"./input-constraints/FileExtensionConstraint\";\nimport FileSizeConstraint from \"./input-constraints/FileSizeConstraint\";\n\nimport type {\n AttributeType,\n FilesType,\n FiletypeConstraintsType,\n FilesizeConstraintsType,\n} from \"../types\";\n\nconst UNCHANGED = \"UNCHANGED\";\n\n/**\n * Upload attribute\n */\nexport default class UploadAttributeModel extends StringAttributeModel {\n _files: FilesType;\n _initialTotalFileSize: number;\n _maxTotalFileSize: number;\n\n /**\n */\n static isApplicableModel(contributions: Object): boolean {\n return contributions.type === \"binary\";\n }\n\n /**\n */\n get type(): string {\n return \"upload\";\n }\n\n /**\n * Retrieve single or multi upload\n */\n get multiple(): boolean {\n return this.getContribution(\"multiple\", false);\n }\n\n /**\n */\n get initialTotalFileSize(): number {\n return this._initialTotalFileSize || 0;\n }\n\n /**\n */\n set initialTotalFileSize(initialTotalFileSize: number) {\n this._initialTotalFileSize = initialTotalFileSize;\n }\n\n /**\n */\n get maxTotalFileSize(): number {\n return this._maxTotalFileSize;\n }\n\n /**\n */\n set maxTotalFileSize(maxTotalFileSize: number) {\n this._maxTotalFileSize = maxTotalFileSize;\n }\n\n /**\n */\n get currentFilesize(): number {\n return this.initialTotalFileSize + this.uploadedFileSize;\n }\n\n /**\n */\n get maxFileSize(): ?number {\n if (this.maxTotalFileSize) {\n const uploadMaxFileSize = this.maxTotalFileSize - this.currentFilesize;\n if (uploadMaxFileSize < 0) {\n return 0;\n }\n\n return uploadMaxFileSize;\n }\n\n return this.contributions.uploadMaxFileSize;\n }\n\n /**\n */\n get uploadedFileSize(): number {\n if (Object.keys(this.files).length === 0) {\n return 0;\n }\n\n let accumulatedFileSize = 0;\n Object.keys(this.files).forEach((fileName) => {\n const file = this.files[fileName];\n if (file.size) {\n accumulatedFileSize += file.size;\n }\n });\n return accumulatedFileSize;\n }\n\n /**\n * Upload constraints\n */\n get uploadConstraints(): {\n fileTypes: FiletypeConstraintsType,\n maxFileSize: FilesizeConstraintsType,\n acceptedFiles: Array<string>,\n } {\n const mimeTypes = this.contributions.allowedMimeTypes\n ? this.contributions.allowedMimeTypes.filter(\n (mimeType) => mimeType !== \"[...]\"\n )\n : [];\n const extensions = this.contributions.allowedExtensions\n ? this.contributions.allowedExtensions.filter(\n (extension) => extension !== \"[...]\"\n )\n : [];\n\n const fileTypes: FiletypeConstraintsType = extensions.map((extension) => ({\n extensions: [extension],\n mimeTypes,\n }));\n\n return {\n fileTypes,\n maxFileSize: {\n fileSize: this.maxFileSize,\n maxTotalFileSize: this.maxTotalFileSize,\n isMaxTotal: this.maxTotalFileSize !== undefined,\n },\n acceptedFiles: this.acceptedFiles,\n };\n }\n\n /**\n * Array of accepted file extensions and mime types.\n * Convenience method for accept attribute of file input html control\n */\n get acceptedFiles(): Array<string> {\n const mimeTypes = this.contributions.allowedMimeTypes\n ? this.contributions.allowedMimeTypes.filter(\n (mimeType) => mimeType !== \"[...]\"\n )\n : [];\n const extensions = this.contributions.allowedExtensions\n ? this.contributions.allowedExtensions\n .filter((extension) => extension !== \"[...]\")\n .map((extension) => `.${extension}`)\n : [];\n\n return [...extensions, ...mimeTypes];\n }\n\n /**\n * Add upload constraints\n */\n addConstraints(): ConstraintCollection {\n const constraints = new ConstraintCollection();\n\n if (this.uploadConstraints.fileTypes.length > 0) {\n constraints.add(\n new FileExtensionConstraint(this.uploadConstraints.fileTypes)\n );\n }\n\n const hasFilesizeConstraint =\n this.uploadConstraints.maxFileSize.isMaxTotal ||\n this.uploadConstraints.maxFileSize.fileSize !== undefined;\n\n if (hasFilesizeConstraint) {\n constraints.add(\n new FileSizeConstraint(this.uploadConstraints.maxFileSize)\n );\n }\n\n return constraints;\n }\n\n /**\n */\n get files(): FilesType {\n return this._files || {};\n }\n\n /**\n */\n set files(files: FilesType) {\n this._files = files;\n }\n\n /**\n * Update the attribute\n */\n update(value: string): UploadAttributeModel {\n if (!value) {\n return this;\n }\n\n // parse to json and handle uploaded file\n // when the input value is a string but not json,\n // we assume that it is just a list of uploaded tokens and copy it as input value\n try {\n const files = JSON.parse(value);\n this.files = files;\n\n this.inputvalue = Object.keys(files)\n .map((fileName) => files[fileName].token)\n .join(\",\");\n } catch (error) {\n if (typeof value === \"string\") {\n this.inputvalue = value;\n }\n }\n\n this.updateLastModification();\n\n return this;\n }\n\n /**\n */\n get readonlyvalue(): string {\n if (this.initvalue) {\n return this.initvalue.toString();\n }\n\n return \"\";\n }\n\n /**\n * Getting the value of the attribute, return unchanged when the uploaded file has not changed\n */\n getValue(): any {\n if (!this.hasValue()) {\n return null;\n }\n\n if (this.initvalue === this.inputvalue) {\n return UNCHANGED;\n }\n\n return this._value;\n }\n\n /**\n */\n mergeAttribute(oldAttribute: AttributeType) {\n if (\n oldAttribute instanceof UploadAttributeModel &&\n oldAttribute.isValid &&\n oldAttribute.inputvalue !== null\n ) {\n this.update(JSON.stringify(oldAttribute.files));\n }\n }\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XMLAttributeModel.js","names":["XMLAttributeModel","StringAttributeModel","isApplicableModel","contributions","layouthint","type","Array","isArray","rows","addConstraints","constraints","ConstraintCollection","add","XMLConstraint","readonlyWidth","ATTRIBUTE_WIDTH","EXTRA_LARGE"],"sources":["../../../src/models/attributes/XMLAttributeModel.js"],"sourcesContent":["// @flow\nimport ConstraintCollection from \"./input-constraints/ConstraintCollection\";\nimport StringAttributeModel from \"./StringAttributeModel\";\nimport XMLConstraint from \"./input-constraints/XMLConstraint\";\n\nimport { ATTRIBUTE_WIDTH } from \"../../constants\";\n\n/**\n * XML attribute\n */\nexport default class XMLAttributeModel extends StringAttributeModel {\n /**\n */\n static isApplicableModel(contributions: Object): boolean {\n const layouthint = contributions?.layouthint;\n return (\n contributions.type === \"xml\" ||\n (Array.isArray(layouthint) && layouthint.includes(\"xml\"))\n );\n }\n\n /**\n */\n get type(): string {\n return \"xml\";\n }\n\n /**\n * Retrieve number of rows to render\n */\n get rows(): number {\n return 10;\n }\n\n /**\n * Add constraints\n */\n addConstraints(): ConstraintCollection {\n const constraints = new ConstraintCollection();\n\n constraints.add(new XMLConstraint());\n\n return constraints;\n }\n\n /**\n */\n get readonlyWidth(): $Keys<typeof ATTRIBUTE_WIDTH> {\n return ATTRIBUTE_WIDTH.EXTRA_LARGE;\n }\n}\n"],"mappings":";;;;;;;;AACA;AACA;AACA;AAEA;AAEA;AACA;AACA;AACe,
|
|
1
|
+
{"version":3,"file":"XMLAttributeModel.js","names":["_ConstraintCollection","_interopRequireDefault","require","_StringAttributeModel","_XMLConstraint","_constants","XMLAttributeModel","StringAttributeModel","isApplicableModel","contributions","layouthint","type","Array","isArray","_includes","default","call","rows","addConstraints","constraints","ConstraintCollection","add","XMLConstraint","readonlyWidth","ATTRIBUTE_WIDTH","EXTRA_LARGE","exports"],"sources":["../../../src/models/attributes/XMLAttributeModel.js"],"sourcesContent":["// @flow\nimport ConstraintCollection from \"./input-constraints/ConstraintCollection\";\nimport StringAttributeModel from \"./StringAttributeModel\";\nimport XMLConstraint from \"./input-constraints/XMLConstraint\";\n\nimport { ATTRIBUTE_WIDTH } from \"../../constants\";\n\n/**\n * XML attribute\n */\nexport default class XMLAttributeModel extends StringAttributeModel {\n /**\n */\n static isApplicableModel(contributions: Object): boolean {\n const layouthint = contributions?.layouthint;\n return (\n contributions.type === \"xml\" ||\n (Array.isArray(layouthint) && layouthint.includes(\"xml\"))\n );\n }\n\n /**\n */\n get type(): string {\n return \"xml\";\n }\n\n /**\n * Retrieve number of rows to render\n */\n get rows(): number {\n return 10;\n }\n\n /**\n * Add constraints\n */\n addConstraints(): ConstraintCollection {\n const constraints = new ConstraintCollection();\n\n constraints.add(new XMLConstraint());\n\n return constraints;\n }\n\n /**\n */\n get readonlyWidth(): $Keys<typeof ATTRIBUTE_WIDTH> {\n return ATTRIBUTE_WIDTH.EXTRA_LARGE;\n }\n}\n"],"mappings":";;;;;;;;AACA,IAAAA,qBAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,qBAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,cAAA,GAAAH,sBAAA,CAAAC,OAAA;AAEA,IAAAG,UAAA,GAAAH,OAAA;AAEA;AACA;AACA;AACe,MAAMI,iBAAiB,SAASC,6BAAoB,CAAC;EAClE;AACF;EACE,OAAOC,iBAAiBA,CAACC,aAAqB,EAAW;IACvD,MAAMC,UAAU,GAAGD,aAAa,EAAEC,UAAU;IAC5C,OACED,aAAa,CAACE,IAAI,KAAK,KAAK,IAC3BC,KAAK,CAACC,OAAO,CAACH,UAAU,CAAC,IAAI,IAAAI,SAAA,CAAAC,OAAA,EAAAL,UAAU,EAAAM,IAAA,CAAVN,UAAU,EAAU,KAAK,CAAE;EAE7D;;EAEA;AACF;EACE,IAAIC,IAAIA,CAAA,EAAW;IACjB,OAAO,KAAK;EACd;;EAEA;AACF;AACA;EACE,IAAIM,IAAIA,CAAA,EAAW;IACjB,OAAO,EAAE;EACX;;EAEA;AACF;AACA;EACEC,cAAcA,CAAA,EAAyB;IACrC,MAAMC,WAAW,GAAG,IAAIC,6BAAoB,EAAE;IAE9CD,WAAW,CAACE,GAAG,CAAC,IAAIC,sBAAa,EAAE,CAAC;IAEpC,OAAOH,WAAW;EACpB;;EAEA;AACF;EACE,IAAII,aAAaA,CAAA,EAAkC;IACjD,OAAOC,0BAAe,CAACC,WAAW;EACpC;AACF;AAACC,OAAA,CAAAX,OAAA,GAAAT,iBAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_createAttribute.js","names":["getChildrenKeys","children","child","childKey","isComposite","type","key","dynamicschemaId","undefined","getAttributeModel","contributions","ATTRIBUTE_MODELS","ChoiceAttributeModel","BooleanAttributeModel","HelptextAttributeModel","LabelAttributeModel","XMLAttributeModel","MemoAttributeModel","StringAttributeModel","DatetimeAttributeModel","MoneyAttributeModel","NumberAttributeModel","PasswordAttributeModel","UploadAttributeModel","CompositeAttributeModel","CaptchaAttributeModel","model","isApplicableModel","updateContributions","data","has","isPlainObject","Array","isArray","updateData","newData","klona","createAttribute","updatedContributions","updatedData","Model","Error","childrenKeys","dataHelper","AttributeDataHelper","getData","attribute","LayoutHintRuleCollection","setLayoutHintRules"],"sources":["../../../src/models/attributes/_createAttribute.js"],"sourcesContent":["// @flow\nimport { klona } from \"klona/full\";\n\nimport { has, isPlainObject } from \"../../utils/helpers/objects\";\n\nimport LayoutHintRuleCollection from \"./layouthint-rules/LayoutHintRuleCollection\";\n\nimport CaptchaAttributeModel from \"./CaptchaAttributeModel\";\nimport ChoiceAttributeModel from \"./ChoiceAttributeModel\";\nimport DatetimeAttributeModel from \"./DatetimeAttributeModel\";\nimport HelptextAttributeModel from \"./HelptextAttributeModel\";\nimport LabelAttributeModel from \"./LabelAttributeModel\";\nimport MemoAttributeModel from \"./MemoAttributeModel\";\nimport MoneyAttributeModel from \"./MoneyAttributeModel\";\nimport NumberAttributeModel from \"./NumberAttributeModel\";\nimport PasswordAttributeModel from \"./PasswordAttributeModel\";\nimport CompositeAttributeModel from \"./CompositeAttributeModel\";\nimport StringAttributeModel from \"./StringAttributeModel\";\nimport UploadAttributeModel from \"./UploadAttributeModel\";\nimport XMLAttributeModel from \"./XMLAttributeModel\";\nimport BooleanAttributeModel from \"./BooleanAttributeModel\";\n\nimport AttributeDataHelper from \"./AttributeDataHelper\";\n\nimport type { AttributeType } from \"../types\";\n\n/**\n * @private\n */\nconst getChildrenKeys = (children: Array<Object>): Array<Object> => {\n if (children) {\n return children.map((child) => {\n const [childKey] = Object.keys(child);\n const isComposite =\n child[childKey].type === \"range\" ||\n child[childKey].type === \"composite\";\n\n return {\n key: childKey,\n dynamicschemaId: child[childKey]?.dynamicschemaId || undefined,\n children: isComposite ? getChildrenKeys(child[childKey]?.children) : [],\n };\n });\n }\n\n return [];\n};\n\n/**\n * @private\n */\nconst getAttributeModel = (contributions: Object): ?Class<AttributeType> => {\n const ATTRIBUTE_MODELS = [\n ChoiceAttributeModel,\n BooleanAttributeModel,\n\n HelptextAttributeModel,\n LabelAttributeModel,\n\n XMLAttributeModel,\n MemoAttributeModel,\n StringAttributeModel,\n\n DatetimeAttributeModel,\n\n MoneyAttributeModel,\n NumberAttributeModel,\n PasswordAttributeModel,\n\n UploadAttributeModel,\n CompositeAttributeModel,\n CaptchaAttributeModel,\n ];\n\n return ATTRIBUTE_MODELS.find((model) =>\n model.isApplicableModel(contributions)\n );\n};\n\n/**\n * @private\n */\nconst updateContributions = (\n key: string,\n data: Object,\n contributions: Object\n): Object => {\n const isComposite =\n contributions.type === \"array\" &&\n has(contributions, \"children\") &&\n isPlainObject(data) &&\n Array.isArray(data[key]);\n\n return {\n ...contributions,\n type: isComposite ? \"composite\" : contributions.type,\n };\n};\n\n/**\n * @private\n */\nconst updateData = (\n key: string,\n data: Object,\n contributions: Object\n): Object => {\n const newData = klona(data);\n\n if (contributions.dynamicschemaId) {\n newData.dynamicschemaId = contributions.dynamicschemaId;\n }\n\n return newData;\n};\n\n/**\n * Create an attribute based on data and contributions\n */\nconst createAttribute = (\n key: string,\n data: Object | Array<Object>,\n contributions: Object\n): AttributeType => {\n const updatedContributions = updateContributions(key, data, contributions);\n const updatedData = updateData(key, data, contributions);\n\n const Model = getAttributeModel(updatedContributions);\n\n if (!Model) {\n throw new Error(\"Could not find model\");\n }\n\n const childrenKeys = getChildrenKeys(updatedContributions.children ?? []);\n const dataHelper = new AttributeDataHelper(\n updatedData,\n key,\n childrenKeys\n ).getData();\n\n const attribute = new Model(dataHelper, updatedContributions);\n\n return LayoutHintRuleCollection.setLayoutHintRules(attribute);\n};\n\nexport default createAttribute;\n"],"mappings":";;;;;;;;;;AACA;AAEA;AAEA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAIA;AACA;AACA;AACA,
|
|
1
|
+
{"version":3,"file":"_createAttribute.js","names":["_full","require","_objects","_LayoutHintRuleCollection","_interopRequireDefault","_CaptchaAttributeModel","_ChoiceAttributeModel","_DatetimeAttributeModel","_HelptextAttributeModel","_LabelAttributeModel","_MemoAttributeModel","_MoneyAttributeModel","_NumberAttributeModel","_PasswordAttributeModel","_CompositeAttributeModel","_StringAttributeModel","_UploadAttributeModel","_XMLAttributeModel","_BooleanAttributeModel","_AttributeDataHelper","getChildrenKeys","children","_map","default","call","child","childKey","_keys","isComposite","type","key","dynamicschemaId","undefined","getAttributeModel","contributions","ATTRIBUTE_MODELS","ChoiceAttributeModel","BooleanAttributeModel","HelptextAttributeModel","LabelAttributeModel","XMLAttributeModel","MemoAttributeModel","StringAttributeModel","DatetimeAttributeModel","MoneyAttributeModel","NumberAttributeModel","PasswordAttributeModel","UploadAttributeModel","CompositeAttributeModel","CaptchaAttributeModel","_find","model","isApplicableModel","updateContributions","data","has","isPlainObject","Array","isArray","updateData","newData","klona","createAttribute","updatedContributions","updatedData","Model","Error","childrenKeys","dataHelper","AttributeDataHelper","getData","attribute","LayoutHintRuleCollection","setLayoutHintRules","_default","exports"],"sources":["../../../src/models/attributes/_createAttribute.js"],"sourcesContent":["// @flow\nimport { klona } from \"klona/full\";\n\nimport { has, isPlainObject } from \"../../utils/helpers/objects\";\n\nimport LayoutHintRuleCollection from \"./layouthint-rules/LayoutHintRuleCollection\";\n\nimport CaptchaAttributeModel from \"./CaptchaAttributeModel\";\nimport ChoiceAttributeModel from \"./ChoiceAttributeModel\";\nimport DatetimeAttributeModel from \"./DatetimeAttributeModel\";\nimport HelptextAttributeModel from \"./HelptextAttributeModel\";\nimport LabelAttributeModel from \"./LabelAttributeModel\";\nimport MemoAttributeModel from \"./MemoAttributeModel\";\nimport MoneyAttributeModel from \"./MoneyAttributeModel\";\nimport NumberAttributeModel from \"./NumberAttributeModel\";\nimport PasswordAttributeModel from \"./PasswordAttributeModel\";\nimport CompositeAttributeModel from \"./CompositeAttributeModel\";\nimport StringAttributeModel from \"./StringAttributeModel\";\nimport UploadAttributeModel from \"./UploadAttributeModel\";\nimport XMLAttributeModel from \"./XMLAttributeModel\";\nimport BooleanAttributeModel from \"./BooleanAttributeModel\";\n\nimport AttributeDataHelper from \"./AttributeDataHelper\";\n\nimport type { AttributeType } from \"../types\";\n\n/**\n * @private\n */\nconst getChildrenKeys = (children: Array<Object>): Array<Object> => {\n if (children) {\n return children.map((child) => {\n const [childKey] = Object.keys(child);\n const isComposite =\n child[childKey].type === \"range\" ||\n child[childKey].type === \"composite\";\n\n return {\n key: childKey,\n dynamicschemaId: child[childKey]?.dynamicschemaId || undefined,\n children: isComposite ? getChildrenKeys(child[childKey]?.children) : [],\n };\n });\n }\n\n return [];\n};\n\n/**\n * @private\n */\nconst getAttributeModel = (contributions: Object): ?Class<AttributeType> => {\n const ATTRIBUTE_MODELS = [\n ChoiceAttributeModel,\n BooleanAttributeModel,\n\n HelptextAttributeModel,\n LabelAttributeModel,\n\n XMLAttributeModel,\n MemoAttributeModel,\n StringAttributeModel,\n\n DatetimeAttributeModel,\n\n MoneyAttributeModel,\n NumberAttributeModel,\n PasswordAttributeModel,\n\n UploadAttributeModel,\n CompositeAttributeModel,\n CaptchaAttributeModel,\n ];\n\n return ATTRIBUTE_MODELS.find((model) =>\n model.isApplicableModel(contributions)\n );\n};\n\n/**\n * @private\n */\nconst updateContributions = (\n key: string,\n data: Object,\n contributions: Object\n): Object => {\n const isComposite =\n contributions.type === \"array\" &&\n has(contributions, \"children\") &&\n isPlainObject(data) &&\n Array.isArray(data[key]);\n\n return {\n ...contributions,\n type: isComposite ? \"composite\" : contributions.type,\n };\n};\n\n/**\n * @private\n */\nconst updateData = (\n key: string,\n data: Object,\n contributions: Object\n): Object => {\n const newData = klona(data);\n\n if (contributions.dynamicschemaId) {\n newData.dynamicschemaId = contributions.dynamicschemaId;\n }\n\n return newData;\n};\n\n/**\n * Create an attribute based on data and contributions\n */\nconst createAttribute = (\n key: string,\n data: Object | Array<Object>,\n contributions: Object\n): AttributeType => {\n const updatedContributions = updateContributions(key, data, contributions);\n const updatedData = updateData(key, data, contributions);\n\n const Model = getAttributeModel(updatedContributions);\n\n if (!Model) {\n throw new Error(\"Could not find model\");\n }\n\n const childrenKeys = getChildrenKeys(updatedContributions.children ?? []);\n const dataHelper = new AttributeDataHelper(\n updatedData,\n key,\n childrenKeys\n ).getData();\n\n const attribute = new Model(dataHelper, updatedContributions);\n\n return LayoutHintRuleCollection.setLayoutHintRules(attribute);\n};\n\nexport default createAttribute;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BSNConstraint.js","names":["BSNConstraint","id","hasValidation","defaultMessage","parameters","isValidBSN","bsn","replace","length","bsnNumber","bsnLength","MINBSNLENGTH","MAXBSNLENGTH","isNaN","pos","result","i","digit","parseInt","charAt","validate","value","isMandatoryConstraint"],"sources":["../../../../src/models/attributes/input-constraints/BSNConstraint.js"],"sourcesContent":["// @flow\nimport type { IConstraintModel } from \"../../types\";\n\n/**\n */\nclass BSNConstraint implements IConstraintModel {\n /**\n */\n get id(): string {\n return \"Constraint.BSN.InvalidFormat\";\n }\n\n /**\n */\n hasValidation(): boolean {\n return true;\n }\n\n /**\n */\n get defaultMessage(): string {\n return \"Must be a valid BSN\";\n }\n\n /**\n */\n get parameters(): { ... } {\n return {};\n }\n\n /**\n */\n isValidBSN(bsn: string): boolean {\n // if remove invalid characters and check if this is still the same length to find out if unwanted characters are used\n // valid characters are: numbers\n if (bsn.replace(/[^\\d]/gu, \"\").length !== bsn.length) {\n return false;\n }\n\n const bsnNumber = bsn.replace(/\\D/gu, \"\");\n\n const bsnLength = bsnNumber.length;\n const MINBSNLENGTH = 8;\n const MAXBSNLENGTH = 9;\n\n if (\n bsnLength < MINBSNLENGTH ||\n bsnLength > MAXBSNLENGTH ||\n isNaN(bsnNumber)\n ) {\n return false;\n }\n\n let pos = 0;\n let result = 0;\n\n for (let i = bsnLength; i > 0; i--) {\n const digit = parseInt(bsnNumber.charAt(pos), 10);\n\n result += i === 1 ? digit * -1 : digit * i;\n pos += 1;\n }\n\n return result % 11 === 0;\n }\n\n /**\n */\n validate(value: string): boolean {\n return this.isValidBSN(value);\n }\n\n /**\n */\n get isMandatoryConstraint(): boolean {\n return false;\n }\n}\n\nexport default BSNConstraint;\n"],"mappings":";;;;;;AAGA;AACA;AACA,MAAMA,aAAa,CAA6B;EAC9C;AACF;EACE,IAAIC,
|
|
1
|
+
{"version":3,"file":"BSNConstraint.js","names":["BSNConstraint","id","hasValidation","defaultMessage","parameters","isValidBSN","bsn","replace","length","bsnNumber","bsnLength","MINBSNLENGTH","MAXBSNLENGTH","isNaN","pos","result","i","digit","parseInt","charAt","validate","value","isMandatoryConstraint","_default","exports","default"],"sources":["../../../../src/models/attributes/input-constraints/BSNConstraint.js"],"sourcesContent":["// @flow\nimport type { IConstraintModel } from \"../../types\";\n\n/**\n */\nclass BSNConstraint implements IConstraintModel {\n /**\n */\n get id(): string {\n return \"Constraint.BSN.InvalidFormat\";\n }\n\n /**\n */\n hasValidation(): boolean {\n return true;\n }\n\n /**\n */\n get defaultMessage(): string {\n return \"Must be a valid BSN\";\n }\n\n /**\n */\n get parameters(): { ... } {\n return {};\n }\n\n /**\n */\n isValidBSN(bsn: string): boolean {\n // if remove invalid characters and check if this is still the same length to find out if unwanted characters are used\n // valid characters are: numbers\n if (bsn.replace(/[^\\d]/gu, \"\").length !== bsn.length) {\n return false;\n }\n\n const bsnNumber = bsn.replace(/\\D/gu, \"\");\n\n const bsnLength = bsnNumber.length;\n const MINBSNLENGTH = 8;\n const MAXBSNLENGTH = 9;\n\n if (\n bsnLength < MINBSNLENGTH ||\n bsnLength > MAXBSNLENGTH ||\n isNaN(bsnNumber)\n ) {\n return false;\n }\n\n let pos = 0;\n let result = 0;\n\n for (let i = bsnLength; i > 0; i--) {\n const digit = parseInt(bsnNumber.charAt(pos), 10);\n\n result += i === 1 ? digit * -1 : digit * i;\n pos += 1;\n }\n\n return result % 11 === 0;\n }\n\n /**\n */\n validate(value: string): boolean {\n return this.isValidBSN(value);\n }\n\n /**\n */\n get isMandatoryConstraint(): boolean {\n return false;\n }\n}\n\nexport default BSNConstraint;\n"],"mappings":";;;;;;AAGA;AACA;AACA,MAAMA,aAAa,CAA6B;EAC9C;AACF;EACE,IAAIC,EAAEA,CAAA,EAAW;IACf,OAAO,8BAA8B;EACvC;;EAEA;AACF;EACEC,aAAaA,CAAA,EAAY;IACvB,OAAO,IAAI;EACb;;EAEA;AACF;EACE,IAAIC,cAAcA,CAAA,EAAW;IAC3B,OAAO,qBAAqB;EAC9B;;EAEA;AACF;EACE,IAAIC,UAAUA,CAAA,EAAY;IACxB,OAAO,CAAC,CAAC;EACX;;EAEA;AACF;EACEC,UAAUA,CAACC,GAAW,EAAW;IAC/B;IACA;IACA,IAAIA,GAAG,CAACC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAACC,MAAM,KAAKF,GAAG,CAACE,MAAM,EAAE;MACpD,OAAO,KAAK;IACd;IAEA,MAAMC,SAAS,GAAGH,GAAG,CAACC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;IAEzC,MAAMG,SAAS,GAAGD,SAAS,CAACD,MAAM;IAClC,MAAMG,YAAY,GAAG,CAAC;IACtB,MAAMC,YAAY,GAAG,CAAC;IAEtB,IACEF,SAAS,GAAGC,YAAY,IACxBD,SAAS,GAAGE,YAAY,IACxBC,KAAK,CAACJ,SAAS,CAAC,EAChB;MACA,OAAO,KAAK;IACd;IAEA,IAAIK,GAAG,GAAG,CAAC;IACX,IAAIC,MAAM,GAAG,CAAC;IAEd,KAAK,IAAIC,CAAC,GAAGN,SAAS,EAAEM,CAAC,GAAG,CAAC,EAAEA,CAAC,EAAE,EAAE;MAClC,MAAMC,KAAK,GAAGC,QAAQ,CAACT,SAAS,CAACU,MAAM,CAACL,GAAG,CAAC,EAAE,EAAE,CAAC;MAEjDC,MAAM,IAAIC,CAAC,KAAK,CAAC,GAAGC,KAAK,GAAG,CAAC,CAAC,GAAGA,KAAK,GAAGD,CAAC;MAC1CF,GAAG,IAAI,CAAC;IACV;IAEA,OAAOC,MAAM,GAAG,EAAE,KAAK,CAAC;EAC1B;;EAEA;AACF;EACEK,QAAQA,CAACC,KAAa,EAAW;IAC/B,OAAO,IAAI,CAAChB,UAAU,CAACgB,KAAK,CAAC;EAC/B;;EAEA;AACF;EACE,IAAIC,qBAAqBA,CAAA,EAAY;IACnC,OAAO,KAAK;EACd;AACF;AAAC,IAAAC,QAAA,GAEcvB,aAAa;AAAAwB,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConstraintCollection.js","names":["ConstraintCollection","BaseCollection","addConstraint","id","validateMethod","defaultMessage","data","useClientsideValidation","getSetting","add","ConstraintModel","validate","value","isEmpty","collection","every","constraint","hasMandatoryConstraint","some","isMandatoryConstraint","invalidConstraints"],"sources":["../../../../src/models/attributes/input-constraints/ConstraintCollection.js"],"sourcesContent":["// @flow\nimport BaseCollection from \"../../base/BaseCollection\";\nimport ConstraintModel from \"./ConstraintModel\";\n\nimport { getSetting } from \"../../../constants/Settings\";\n\nimport type { IConstraintModel } from \"../../types\";\n\n/**\n * Attribute constraints\n */\nexport default class ConstraintCollection extends BaseCollection<IConstraintModel> {\n /**\n * Add constraint\n */\n addConstraint(\n id: string,\n validateMethod: ?Function,\n defaultMessage: ?string,\n data: ?Object,\n useClientsideValidation: boolean = getSetting(\"USE_CLIENTSIDE_VALIDATION\")\n ) {\n this.add(\n new ConstraintModel(\n id,\n validateMethod,\n defaultMessage,\n data,\n useClientsideValidation\n )\n );\n }\n\n /**\n * Validate if complete collection is valid\n */\n validate(value: any): boolean {\n return (\n this.isEmpty ||\n this.collection.every((constraint) => constraint.validate(value))\n );\n }\n\n /**\n * Indicates if a mandatory constraint exists in the collection\n */\n hasMandatoryConstraint(): boolean {\n return this.collection.some(\n (constraint) => constraint.isMandatoryConstraint\n );\n }\n\n /**\n * Retrieve all invalid constraints\n */\n invalidConstraints(value: any): Array<IConstraintModel> {\n if (value === \"\" && !this.hasMandatoryConstraint()) {\n return [];\n }\n\n return this.collection.filter(\n (constraint) => constraint.validate(value) === false\n );\n }\n}\n"],"mappings":";;;;;;;;AACA;AACA;AAEA;AAIA;AACA;AACA;AACe,
|
|
1
|
+
{"version":3,"file":"ConstraintCollection.js","names":["_BaseCollection","_interopRequireDefault","require","_ConstraintModel","_Settings","ConstraintCollection","BaseCollection","addConstraint","id","validateMethod","defaultMessage","data","useClientsideValidation","arguments","length","undefined","getSetting","add","ConstraintModel","validate","value","isEmpty","collection","every","constraint","hasMandatoryConstraint","some","isMandatoryConstraint","invalidConstraints","_context","_filter","default","call","exports"],"sources":["../../../../src/models/attributes/input-constraints/ConstraintCollection.js"],"sourcesContent":["// @flow\nimport BaseCollection from \"../../base/BaseCollection\";\nimport ConstraintModel from \"./ConstraintModel\";\n\nimport { getSetting } from \"../../../constants/Settings\";\n\nimport type { IConstraintModel } from \"../../types\";\n\n/**\n * Attribute constraints\n */\nexport default class ConstraintCollection extends BaseCollection<IConstraintModel> {\n /**\n * Add constraint\n */\n addConstraint(\n id: string,\n validateMethod: ?Function,\n defaultMessage: ?string,\n data: ?Object,\n useClientsideValidation: boolean = getSetting(\"USE_CLIENTSIDE_VALIDATION\")\n ) {\n this.add(\n new ConstraintModel(\n id,\n validateMethod,\n defaultMessage,\n data,\n useClientsideValidation\n )\n );\n }\n\n /**\n * Validate if complete collection is valid\n */\n validate(value: any): boolean {\n return (\n this.isEmpty ||\n this.collection.every((constraint) => constraint.validate(value))\n );\n }\n\n /**\n * Indicates if a mandatory constraint exists in the collection\n */\n hasMandatoryConstraint(): boolean {\n return this.collection.some(\n (constraint) => constraint.isMandatoryConstraint\n );\n }\n\n /**\n * Retrieve all invalid constraints\n */\n invalidConstraints(value: any): Array<IConstraintModel> {\n if (value === \"\" && !this.hasMandatoryConstraint()) {\n return [];\n }\n\n return this.collection.filter(\n (constraint) => constraint.validate(value) === false\n );\n }\n}\n"],"mappings":";;;;;;;;AACA,IAAAA,eAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAAE,SAAA,GAAAF,OAAA;AAIA;AACA;AACA;AACe,MAAMG,oBAAoB,SAASC,uBAAc,CAAmB;EACjF;AACF;AACA;EACEC,aAAaA,CACXC,EAAU,EACVC,cAAyB,EACzBC,cAAuB,EACvBC,IAAa,EAEb;IAAA,IADAC,uBAAgC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAAG,oBAAU,EAAC,2BAA2B,CAAC;IAE1E,IAAI,CAACC,GAAG,CACN,IAAIC,wBAAe,CACjBV,EAAE,EACFC,cAAc,EACdC,cAAc,EACdC,IAAI,EACJC,uBAAuB,CACxB,CACF;EACH;;EAEA;AACF;AACA;EACEO,QAAQA,CAACC,KAAU,EAAW;IAC5B,OACE,IAAI,CAACC,OAAO,IACZ,IAAI,CAACC,UAAU,CAACC,KAAK,CAAEC,UAAU,IAAKA,UAAU,CAACL,QAAQ,CAACC,KAAK,CAAC,CAAC;EAErE;;EAEA;AACF;AACA;EACEK,sBAAsBA,CAAA,EAAY;IAChC,OAAO,IAAI,CAACH,UAAU,CAACI,IAAI,CACxBF,UAAU,IAAKA,UAAU,CAACG,qBAAqB,CACjD;EACH;;EAEA;AACF;AACA;EACEC,kBAAkBA,CAACR,KAAU,EAA2B;IAAA,IAAAS,QAAA;IACtD,IAAIT,KAAK,KAAK,EAAE,IAAI,CAAC,IAAI,CAACK,sBAAsB,EAAE,EAAE;MAClD,OAAO,EAAE;IACX;IAEA,OAAO,IAAAK,OAAA,CAAAC,OAAA,EAAAF,QAAA,OAAI,CAACP,UAAU,EAAAU,IAAA,CAAAH,QAAA,EACnBL,UAAU,IAAKA,UAAU,CAACL,QAAQ,CAACC,KAAK,CAAC,KAAK,KAAK,CACrD;EACH;AACF;AAACa,OAAA,CAAAF,OAAA,GAAA1B,oBAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConstraintModel.js","names":["ConstraintModel","constructor","id","validateMethod","defaultMessage","parameters","useClientsideValidation","getSetting","_id","_validateMethod","_defaultMessage","_parameters","_useClientsideValidation","hasValidation","validate","value","isMandatoryConstraint"],"sources":["../../../../src/models/attributes/input-constraints/ConstraintModel.js"],"sourcesContent":["// @flow\nimport { getSetting } from \"../../../constants/Settings\";\n\nimport type { IConstraintModel } from \"../../types\";\n\n/**\n */\nexport default class ConstraintModel implements IConstraintModel {\n _id: string;\n _validateMethod: ?(value: any) => boolean;\n _defaultMessage: ?string;\n _parameters: ?Object;\n _useClientsideValidation: boolean;\n\n /**\n */\n constructor(\n id: string,\n validateMethod: ?Function,\n defaultMessage: ?string,\n parameters: ?Object,\n useClientsideValidation: boolean = getSetting(\"USE_CLIENTSIDE_VALIDATION\")\n ) {\n this._id = id;\n this._validateMethod = validateMethod;\n this._defaultMessage = defaultMessage;\n this._parameters = parameters;\n this._useClientsideValidation = useClientsideValidation;\n }\n\n /**\n * Retreive type of constraint\n */\n get id(): string {\n return this._id;\n }\n\n /**\n */\n get defaultMessage(): string {\n return this._defaultMessage || \"Missing default message\";\n }\n\n /**\n * Returns available data for constraint\n */\n get parameters(): ?Object {\n return this._parameters;\n }\n\n /**\n * Inidicates if validation message is present\n */\n hasValidation(): boolean {\n return this._validateMethod != null;\n }\n\n /**\n * Validate constraint with value\n */\n validate(value: any): boolean {\n const validateMethod = this._validateMethod;\n\n if (this._useClientsideValidation && validateMethod) {\n return validateMethod(value);\n }\n\n return true;\n }\n\n /**\n */\n get isMandatoryConstraint(): boolean {\n return this._id === \"mandatory\" || this._id === \"Constraint.Mandatory\";\n }\n}\n"],"mappings":";;;;;;;;AACA;AAIA;AACA;AACe,
|
|
1
|
+
{"version":3,"file":"ConstraintModel.js","names":["_Settings","require","ConstraintModel","constructor","id","validateMethod","defaultMessage","parameters","useClientsideValidation","arguments","length","undefined","getSetting","_defineProperty2","default","_id","_validateMethod","_defaultMessage","_parameters","_useClientsideValidation","hasValidation","validate","value","isMandatoryConstraint","exports"],"sources":["../../../../src/models/attributes/input-constraints/ConstraintModel.js"],"sourcesContent":["// @flow\nimport { getSetting } from \"../../../constants/Settings\";\n\nimport type { IConstraintModel } from \"../../types\";\n\n/**\n */\nexport default class ConstraintModel implements IConstraintModel {\n _id: string;\n _validateMethod: ?(value: any) => boolean;\n _defaultMessage: ?string;\n _parameters: ?Object;\n _useClientsideValidation: boolean;\n\n /**\n */\n constructor(\n id: string,\n validateMethod: ?Function,\n defaultMessage: ?string,\n parameters: ?Object,\n useClientsideValidation: boolean = getSetting(\"USE_CLIENTSIDE_VALIDATION\")\n ) {\n this._id = id;\n this._validateMethod = validateMethod;\n this._defaultMessage = defaultMessage;\n this._parameters = parameters;\n this._useClientsideValidation = useClientsideValidation;\n }\n\n /**\n * Retreive type of constraint\n */\n get id(): string {\n return this._id;\n }\n\n /**\n */\n get defaultMessage(): string {\n return this._defaultMessage || \"Missing default message\";\n }\n\n /**\n * Returns available data for constraint\n */\n get parameters(): ?Object {\n return this._parameters;\n }\n\n /**\n * Inidicates if validation message is present\n */\n hasValidation(): boolean {\n return this._validateMethod != null;\n }\n\n /**\n * Validate constraint with value\n */\n validate(value: any): boolean {\n const validateMethod = this._validateMethod;\n\n if (this._useClientsideValidation && validateMethod) {\n return validateMethod(value);\n }\n\n return true;\n }\n\n /**\n */\n get isMandatoryConstraint(): boolean {\n return this._id === \"mandatory\" || this._id === \"Constraint.Mandatory\";\n }\n}\n"],"mappings":";;;;;;;;AACA,IAAAA,SAAA,GAAAC,OAAA;AAIA;AACA;AACe,MAAMC,eAAe,CAA6B;EAO/D;AACF;EACEC,WAAWA,CACTC,EAAU,EACVC,cAAyB,EACzBC,cAAuB,EACvBC,UAAmB,EAEnB;IAAA,IADAC,uBAAgC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,IAAAG,oBAAU,EAAC,2BAA2B,CAAC;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAE1E,IAAI,CAACC,GAAG,GAAGX,EAAE;IACb,IAAI,CAACY,eAAe,GAAGX,cAAc;IACrC,IAAI,CAACY,eAAe,GAAGX,cAAc;IACrC,IAAI,CAACY,WAAW,GAAGX,UAAU;IAC7B,IAAI,CAACY,wBAAwB,GAAGX,uBAAuB;EACzD;;EAEA;AACF;AACA;EACE,IAAIJ,EAAEA,CAAA,EAAW;IACf,OAAO,IAAI,CAACW,GAAG;EACjB;;EAEA;AACF;EACE,IAAIT,cAAcA,CAAA,EAAW;IAC3B,OAAO,IAAI,CAACW,eAAe,IAAI,yBAAyB;EAC1D;;EAEA;AACF;AACA;EACE,IAAIV,UAAUA,CAAA,EAAY;IACxB,OAAO,IAAI,CAACW,WAAW;EACzB;;EAEA;AACF;AACA;EACEE,aAAaA,CAAA,EAAY;IACvB,OAAO,IAAI,CAACJ,eAAe,IAAI,IAAI;EACrC;;EAEA;AACF;AACA;EACEK,QAAQA,CAACC,KAAU,EAAW;IAC5B,MAAMjB,cAAc,GAAG,IAAI,CAACW,eAAe;IAE3C,IAAI,IAAI,CAACG,wBAAwB,IAAId,cAAc,EAAE;MACnD,OAAOA,cAAc,CAACiB,KAAK,CAAC;IAC9B;IAEA,OAAO,IAAI;EACb;;EAEA;AACF;EACE,IAAIC,qBAAqBA,CAAA,EAAY;IACnC,OAAO,IAAI,CAACR,GAAG,KAAK,WAAW,IAAI,IAAI,CAACA,GAAG,KAAK,sBAAsB;EACxE;AACF;AAACS,OAAA,CAAAV,OAAA,GAAAZ,eAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateBoundaryConstraint.js","names":["INEXACT_DATE_ID","OUT_OF_RANGE_ID","BELOW_MINIMUM_ID","ABOVE_MAXIMUM_ID","DateBoundaryConstraint","constructor","type","minDate","maxDate","format","_type","_format","_minDate","_maxDate","id","defaultMessage","parameters","formatUtil","toFormat","hasValidation","isExactDate","value","IllegalArgumentException","IllegalStateException","isSame","isBetweenDates","isSameOrAfterMinDate","isSameOrBeforeMaxDate","isSameOrAfter","isSameOrBefore","TimeUtil","TimestampUtil","DateTimeUtil","DateUtil","validate","TypeError","isMandatoryConstraint"],"sources":["../../../../src/models/attributes/input-constraints/DateBoundaryConstraint.js"],"sourcesContent":["// @flow\nimport {\n TimeUtil,\n DateUtil,\n TimestampUtil,\n DateTimeUtil,\n} from \"../../../utils/datetime/DateTimeUtil\";\n\nimport type { IConstraintModel } from \"../../types\";\nimport {\n IllegalArgumentException,\n IllegalStateException,\n} from \"../../../exceptions\";\n\nconst INEXACT_DATE_ID = \"Constraint.Date.InexactDate\";\nconst OUT_OF_RANGE_ID = \"Constraint.Date.OutOfRange\";\nconst BELOW_MINIMUM_ID = \"Constraint.Date.BelowMinimum\";\nconst ABOVE_MAXIMUM_ID = \"Constraint.Date.AboveMaximum\";\n\n/**\n */\nclass DateBoundaryConstraint implements IConstraintModel {\n _type: string;\n _format: string;\n _minDate: ?string;\n _maxDate: ?string;\n\n /**\n */\n constructor(\n type: string,\n minDate: ?string = null,\n maxDate: ?string = null,\n format: string = \"yyyy-MM-dd\"\n ) {\n this._type = type;\n this._format = format;\n this._minDate = minDate;\n this._maxDate = maxDate;\n }\n\n /**\n */\n get type(): string {\n return this._type;\n }\n\n /**\n */\n get id(): string {\n if (\n this.minDate !== null &&\n this.maxDate !== null &&\n this.minDate === this.maxDate\n ) {\n return INEXACT_DATE_ID;\n } else if (this.minDate !== null && this.maxDate !== null) {\n return OUT_OF_RANGE_ID;\n } else if (this.minDate !== null) {\n return BELOW_MINIMUM_ID;\n } else if (this.maxDate !== null) {\n return ABOVE_MAXIMUM_ID;\n }\n\n return \"Constraint.Date.NoBoundaryConstraint\";\n }\n\n /**\n */\n get format(): string {\n return this._format;\n }\n\n /**\n */\n get minDate(): ?string {\n return this._minDate;\n }\n\n /**\n */\n get maxDate(): ?string {\n return this._maxDate;\n }\n\n /**\n */\n get defaultMessage(): string {\n switch (this.id) {\n case INEXACT_DATE_ID:\n return \"Date must be precisely ${min-date}\"; // NOSONAR\n case OUT_OF_RANGE_ID:\n return \"Must be between ${min-date} and ${max-date}\"; // NOSONAR\n case BELOW_MINIMUM_ID:\n return \"Must be on or after ${min-date}\"; // NOSONAR\n case ABOVE_MAXIMUM_ID:\n return \"Must be on or before ${max-date}\"; // NOSONAR\n default:\n return \"\";\n }\n }\n\n /**\n */\n get parameters(): { \"max-date\": string | null, \"min-date\": string | null } {\n return {\n \"min-date\": this.minDate\n ? this.formatUtil.toFormat(this.minDate, this.format)\n : null,\n \"max-date\": this.maxDate\n ? this.formatUtil.toFormat(this.maxDate, this.format)\n : null,\n };\n }\n\n /**\n */\n hasValidation(): boolean {\n return true;\n }\n\n /**\n */\n isExactDate(value: string): boolean {\n if (typeof value !== \"string\") {\n throw new IllegalArgumentException(\n \"isBetweenDates: Not comparing to string\"\n );\n }\n\n if (this.minDate === null) {\n throw new IllegalStateException(\"isExactDate: Min and max date not set\");\n }\n\n return this.formatUtil.isSame(value, this.minDate, this.format);\n }\n\n /**\n */\n isBetweenDates(value: string): boolean {\n if (typeof value !== \"string\") {\n throw new IllegalArgumentException(\n \"isBetweenDates: Not comparing to string\"\n );\n }\n\n if (this.minDate === null || this.maxDate === null) {\n throw new IllegalStateException(\"isBetweenDate: Min or max date not set\");\n }\n\n return (\n this.isSameOrAfterMinDate(value) && this.isSameOrBeforeMaxDate(value)\n );\n }\n\n /**\n */\n isSameOrAfterMinDate(value: string): boolean {\n if (typeof value !== \"string\") {\n throw new IllegalArgumentException(\n \"isSameOrAfterMinDate: Not comparing to string\"\n );\n }\n\n if (this.minDate == null) {\n throw new IllegalStateException(\"isSameOrAfterMinDate: Min date not set\");\n }\n\n return this.formatUtil.isSameOrAfter(value, this.minDate, this.format);\n }\n\n /**\n */\n isSameOrBeforeMaxDate(value: string): boolean {\n if (typeof value !== \"string\") {\n throw new IllegalArgumentException(\n \"isSameOrBeforeMaxDate: Not comparing to string\"\n );\n }\n\n if (this.maxDate == null) {\n throw new IllegalStateException(\n \"isSameOrBeforeMaxDate: Max date not set\"\n );\n }\n\n return this.formatUtil.isSameOrBefore(value, this.maxDate, this.format);\n }\n\n /**\n */\n get formatUtil():\n | typeof TimeUtil\n | typeof TimestampUtil\n | typeof DateTimeUtil\n | typeof DateUtil {\n switch (this.type) {\n case \"time\":\n return TimeUtil;\n case \"timestamp\":\n return TimestampUtil;\n case \"datetime\":\n return DateTimeUtil;\n default:\n return DateUtil;\n }\n }\n\n /**\n */\n validate(value: string): boolean {\n if (typeof value !== \"string\") {\n throw new TypeError(\"isNotEmptyString: Not comparing to string\");\n }\n\n switch (this.id) {\n case INEXACT_DATE_ID:\n return this.isExactDate(value);\n case OUT_OF_RANGE_ID:\n return this.isBetweenDates(value);\n case BELOW_MINIMUM_ID:\n return this.isSameOrAfterMinDate(value);\n case ABOVE_MAXIMUM_ID:\n return this.isSameOrBeforeMaxDate(value);\n default:\n return true;\n }\n }\n\n /**\n */\n get isMandatoryConstraint(): boolean {\n return false;\n }\n}\n\nexport default DateBoundaryConstraint;\n"],"mappings":";;;;;;;;AACA;AAQA;AAKA,MAAMA,eAAe,GAAG,6BAA6B;AACrD,MAAMC,eAAe,GAAG,4BAA4B;AACpD,MAAMC,gBAAgB,GAAG,8BAA8B;AACvD,MAAMC,gBAAgB,GAAG,8BAA8B;;AAEvD;AACA;AACA,MAAMC,sBAAsB,CAA6B;EAMvD;AACF;EACEC,WAAW,CACTC,IAAY,EAIZ;IAAA,IAHAC,OAAgB,uEAAG,IAAI;IAAA,IACvBC,OAAgB,uEAAG,IAAI;IAAA,IACvBC,MAAc,uEAAG,YAAY;IAAA;IAAA;IAAA;IAAA;IAE7B,IAAI,CAACC,KAAK,GAAGJ,IAAI;IACjB,IAAI,CAACK,OAAO,GAAGF,MAAM;IACrB,IAAI,CAACG,QAAQ,GAAGL,OAAO;IACvB,IAAI,CAACM,QAAQ,GAAGL,OAAO;EACzB;;EAEA;AACF;EACE,IAAIF,IAAI,GAAW;IACjB,OAAO,IAAI,CAACI,KAAK;EACnB;;EAEA;AACF;EACE,IAAII,EAAE,GAAW;IACf,IACE,IAAI,CAACP,OAAO,KAAK,IAAI,IACrB,IAAI,CAACC,OAAO,KAAK,IAAI,IACrB,IAAI,CAACD,OAAO,KAAK,IAAI,CAACC,OAAO,EAC7B;MACA,OAAOR,eAAe;IACxB,CAAC,MAAM,IAAI,IAAI,CAACO,OAAO,KAAK,IAAI,IAAI,IAAI,CAACC,OAAO,KAAK,IAAI,EAAE;MACzD,OAAOP,eAAe;IACxB,CAAC,MAAM,IAAI,IAAI,CAACM,OAAO,KAAK,IAAI,EAAE;MAChC,OAAOL,gBAAgB;IACzB,CAAC,MAAM,IAAI,IAAI,CAACM,OAAO,KAAK,IAAI,EAAE;MAChC,OAAOL,gBAAgB;IACzB;IAEA,OAAO,sCAAsC;EAC/C;;EAEA;AACF;EACE,IAAIM,MAAM,GAAW;IACnB,OAAO,IAAI,CAACE,OAAO;EACrB;;EAEA;AACF;EACE,IAAIJ,OAAO,GAAY;IACrB,OAAO,IAAI,CAACK,QAAQ;EACtB;;EAEA;AACF;EACE,IAAIJ,OAAO,GAAY;IACrB,OAAO,IAAI,CAACK,QAAQ;EACtB;;EAEA;AACF;EACE,IAAIE,cAAc,GAAW;IAC3B,QAAQ,IAAI,CAACD,EAAE;MACb,KAAKd,eAAe;QAClB,OAAO,oCAAoC;MAAE;MAC/C,KAAKC,eAAe;QAClB,OAAO,6CAA6C;MAAE;MACxD,KAAKC,gBAAgB;QACnB,OAAO,iCAAiC;MAAE;MAC5C,KAAKC,gBAAgB;QACnB,OAAO,kCAAkC;MAAE;MAC7C;QACE,OAAO,EAAE;IAAC;EAEhB;;EAEA;AACF;EACE,IAAIa,UAAU,GAA6D;IACzE,OAAO;MACL,UAAU,EAAE,IAAI,CAACT,OAAO,GACpB,IAAI,CAACU,UAAU,CAACC,QAAQ,CAAC,IAAI,CAACX,OAAO,EAAE,IAAI,CAACE,MAAM,CAAC,GACnD,IAAI;MACR,UAAU,EAAE,IAAI,CAACD,OAAO,GACpB,IAAI,CAACS,UAAU,CAACC,QAAQ,CAAC,IAAI,CAACV,OAAO,EAAE,IAAI,CAACC,MAAM,CAAC,GACnD;IACN,CAAC;EACH;;EAEA;AACF;EACEU,aAAa,GAAY;IACvB,OAAO,IAAI;EACb;;EAEA;AACF;EACEC,WAAW,CAACC,KAAa,EAAW;IAClC,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;MAC7B,MAAM,IAAIC,oCAAwB,CAChC,yCAAyC,CAC1C;IACH;IAEA,IAAI,IAAI,CAACf,OAAO,KAAK,IAAI,EAAE;MACzB,MAAM,IAAIgB,iCAAqB,CAAC,uCAAuC,CAAC;IAC1E;IAEA,OAAO,IAAI,CAACN,UAAU,CAACO,MAAM,CAACH,KAAK,EAAE,IAAI,CAACd,OAAO,EAAE,IAAI,CAACE,MAAM,CAAC;EACjE;;EAEA;AACF;EACEgB,cAAc,CAACJ,KAAa,EAAW;IACrC,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;MAC7B,MAAM,IAAIC,oCAAwB,CAChC,yCAAyC,CAC1C;IACH;IAEA,IAAI,IAAI,CAACf,OAAO,KAAK,IAAI,IAAI,IAAI,CAACC,OAAO,KAAK,IAAI,EAAE;MAClD,MAAM,IAAIe,iCAAqB,CAAC,wCAAwC,CAAC;IAC3E;IAEA,OACE,IAAI,CAACG,oBAAoB,CAACL,KAAK,CAAC,IAAI,IAAI,CAACM,qBAAqB,CAACN,KAAK,CAAC;EAEzE;;EAEA;AACF;EACEK,oBAAoB,CAACL,KAAa,EAAW;IAC3C,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;MAC7B,MAAM,IAAIC,oCAAwB,CAChC,+CAA+C,CAChD;IACH;IAEA,IAAI,IAAI,CAACf,OAAO,IAAI,IAAI,EAAE;MACxB,MAAM,IAAIgB,iCAAqB,CAAC,wCAAwC,CAAC;IAC3E;IAEA,OAAO,IAAI,CAACN,UAAU,CAACW,aAAa,CAACP,KAAK,EAAE,IAAI,CAACd,OAAO,EAAE,IAAI,CAACE,MAAM,CAAC;EACxE;;EAEA;AACF;EACEkB,qBAAqB,CAACN,KAAa,EAAW;IAC5C,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;MAC7B,MAAM,IAAIC,oCAAwB,CAChC,gDAAgD,CACjD;IACH;IAEA,IAAI,IAAI,CAACd,OAAO,IAAI,IAAI,EAAE;MACxB,MAAM,IAAIe,iCAAqB,CAC7B,yCAAyC,CAC1C;IACH;IAEA,OAAO,IAAI,CAACN,UAAU,CAACY,cAAc,CAACR,KAAK,EAAE,IAAI,CAACb,OAAO,EAAE,IAAI,CAACC,MAAM,CAAC;EACzE;;EAEA;AACF;EACE,IAAIQ,UAAU,GAIM;IAClB,QAAQ,IAAI,CAACX,IAAI;MACf,KAAK,MAAM;QACT,OAAOwB,sBAAQ;MACjB,KAAK,WAAW;QACd,OAAOC,2BAAa;MACtB,KAAK,UAAU;QACb,OAAOC,0BAAY;MACrB;QACE,OAAOC,sBAAQ;IAAC;EAEtB;;EAEA;AACF;EACEC,QAAQ,CAACb,KAAa,EAAW;IAC/B,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;MAC7B,MAAM,IAAIc,SAAS,CAAC,2CAA2C,CAAC;IAClE;IAEA,QAAQ,IAAI,CAACrB,EAAE;MACb,KAAKd,eAAe;QAClB,OAAO,IAAI,CAACoB,WAAW,CAACC,KAAK,CAAC;MAChC,KAAKpB,eAAe;QAClB,OAAO,IAAI,CAACwB,cAAc,CAACJ,KAAK,CAAC;MACnC,KAAKnB,gBAAgB;QACnB,OAAO,IAAI,CAACwB,oBAAoB,CAACL,KAAK,CAAC;MACzC,KAAKlB,gBAAgB;QACnB,OAAO,IAAI,CAACwB,qBAAqB,CAACN,KAAK,CAAC;MAC1C;QACE,OAAO,IAAI;IAAC;EAElB;;EAEA;AACF;EACE,IAAIe,qBAAqB,GAAY;IACnC,OAAO,KAAK;EACd;AACF;AAAC,eAEchC,sBAAsB;AAAA"}
|
|
1
|
+
{"version":3,"file":"DateBoundaryConstraint.js","names":["_DateTimeUtil","require","_exceptions","INEXACT_DATE_ID","OUT_OF_RANGE_ID","BELOW_MINIMUM_ID","ABOVE_MAXIMUM_ID","DateBoundaryConstraint","constructor","type","minDate","arguments","length","undefined","maxDate","format","_defineProperty2","default","_type","_format","_minDate","_maxDate","id","defaultMessage","parameters","formatUtil","toFormat","hasValidation","isExactDate","value","IllegalArgumentException","IllegalStateException","isSame","isBetweenDates","isSameOrAfterMinDate","isSameOrBeforeMaxDate","isSameOrAfter","isSameOrBefore","TimeUtil","TimestampUtil","DateTimeUtil","DateUtil","validate","TypeError","isMandatoryConstraint","_default","exports"],"sources":["../../../../src/models/attributes/input-constraints/DateBoundaryConstraint.js"],"sourcesContent":["// @flow\nimport {\n TimeUtil,\n DateUtil,\n TimestampUtil,\n DateTimeUtil,\n} from \"../../../utils/datetime/DateTimeUtil\";\n\nimport type { IConstraintModel } from \"../../types\";\nimport {\n IllegalArgumentException,\n IllegalStateException,\n} from \"../../../exceptions\";\n\nconst INEXACT_DATE_ID = \"Constraint.Date.InexactDate\";\nconst OUT_OF_RANGE_ID = \"Constraint.Date.OutOfRange\";\nconst BELOW_MINIMUM_ID = \"Constraint.Date.BelowMinimum\";\nconst ABOVE_MAXIMUM_ID = \"Constraint.Date.AboveMaximum\";\n\n/**\n */\nclass DateBoundaryConstraint implements IConstraintModel {\n _type: string;\n _format: string;\n _minDate: ?string;\n _maxDate: ?string;\n\n /**\n */\n constructor(\n type: string,\n minDate: ?string = null,\n maxDate: ?string = null,\n format: string = \"yyyy-MM-dd\"\n ) {\n this._type = type;\n this._format = format;\n this._minDate = minDate;\n this._maxDate = maxDate;\n }\n\n /**\n */\n get type(): string {\n return this._type;\n }\n\n /**\n */\n get id(): string {\n if (\n this.minDate !== null &&\n this.maxDate !== null &&\n this.minDate === this.maxDate\n ) {\n return INEXACT_DATE_ID;\n } else if (this.minDate !== null && this.maxDate !== null) {\n return OUT_OF_RANGE_ID;\n } else if (this.minDate !== null) {\n return BELOW_MINIMUM_ID;\n } else if (this.maxDate !== null) {\n return ABOVE_MAXIMUM_ID;\n }\n\n return \"Constraint.Date.NoBoundaryConstraint\";\n }\n\n /**\n */\n get format(): string {\n return this._format;\n }\n\n /**\n */\n get minDate(): ?string {\n return this._minDate;\n }\n\n /**\n */\n get maxDate(): ?string {\n return this._maxDate;\n }\n\n /**\n */\n get defaultMessage(): string {\n switch (this.id) {\n case INEXACT_DATE_ID:\n return \"Date must be precisely ${min-date}\"; // NOSONAR\n case OUT_OF_RANGE_ID:\n return \"Must be between ${min-date} and ${max-date}\"; // NOSONAR\n case BELOW_MINIMUM_ID:\n return \"Must be on or after ${min-date}\"; // NOSONAR\n case ABOVE_MAXIMUM_ID:\n return \"Must be on or before ${max-date}\"; // NOSONAR\n default:\n return \"\";\n }\n }\n\n /**\n */\n get parameters(): { \"max-date\": string | null, \"min-date\": string | null } {\n return {\n \"min-date\": this.minDate\n ? this.formatUtil.toFormat(this.minDate, this.format)\n : null,\n \"max-date\": this.maxDate\n ? this.formatUtil.toFormat(this.maxDate, this.format)\n : null,\n };\n }\n\n /**\n */\n hasValidation(): boolean {\n return true;\n }\n\n /**\n */\n isExactDate(value: string): boolean {\n if (typeof value !== \"string\") {\n throw new IllegalArgumentException(\n \"isBetweenDates: Not comparing to string\"\n );\n }\n\n if (this.minDate === null) {\n throw new IllegalStateException(\"isExactDate: Min and max date not set\");\n }\n\n return this.formatUtil.isSame(value, this.minDate, this.format);\n }\n\n /**\n */\n isBetweenDates(value: string): boolean {\n if (typeof value !== \"string\") {\n throw new IllegalArgumentException(\n \"isBetweenDates: Not comparing to string\"\n );\n }\n\n if (this.minDate === null || this.maxDate === null) {\n throw new IllegalStateException(\"isBetweenDate: Min or max date not set\");\n }\n\n return (\n this.isSameOrAfterMinDate(value) && this.isSameOrBeforeMaxDate(value)\n );\n }\n\n /**\n */\n isSameOrAfterMinDate(value: string): boolean {\n if (typeof value !== \"string\") {\n throw new IllegalArgumentException(\n \"isSameOrAfterMinDate: Not comparing to string\"\n );\n }\n\n if (this.minDate == null) {\n throw new IllegalStateException(\"isSameOrAfterMinDate: Min date not set\");\n }\n\n return this.formatUtil.isSameOrAfter(value, this.minDate, this.format);\n }\n\n /**\n */\n isSameOrBeforeMaxDate(value: string): boolean {\n if (typeof value !== \"string\") {\n throw new IllegalArgumentException(\n \"isSameOrBeforeMaxDate: Not comparing to string\"\n );\n }\n\n if (this.maxDate == null) {\n throw new IllegalStateException(\n \"isSameOrBeforeMaxDate: Max date not set\"\n );\n }\n\n return this.formatUtil.isSameOrBefore(value, this.maxDate, this.format);\n }\n\n /**\n */\n get formatUtil():\n | typeof TimeUtil\n | typeof TimestampUtil\n | typeof DateTimeUtil\n | typeof DateUtil {\n switch (this.type) {\n case \"time\":\n return TimeUtil;\n case \"timestamp\":\n return TimestampUtil;\n case \"datetime\":\n return DateTimeUtil;\n default:\n return DateUtil;\n }\n }\n\n /**\n */\n validate(value: string): boolean {\n if (typeof value !== \"string\") {\n throw new TypeError(\"isNotEmptyString: Not comparing to string\");\n }\n\n switch (this.id) {\n case INEXACT_DATE_ID:\n return this.isExactDate(value);\n case OUT_OF_RANGE_ID:\n return this.isBetweenDates(value);\n case BELOW_MINIMUM_ID:\n return this.isSameOrAfterMinDate(value);\n case ABOVE_MAXIMUM_ID:\n return this.isSameOrBeforeMaxDate(value);\n default:\n return true;\n }\n }\n\n /**\n */\n get isMandatoryConstraint(): boolean {\n return false;\n }\n}\n\nexport default DateBoundaryConstraint;\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateTimeDateFormatConstraint.js","names":["DateTimeDateFormatConstraint","constructor","format","formatLabel","_format","_formatLabel","id","hasValidation","defaultMessage","parameters","validate","value","DateUtil","hasFormat","isMandatoryConstraint"],"sources":["../../../../src/models/attributes/input-constraints/DateTimeDateFormatConstraint.js"],"sourcesContent":["// @flow\nimport { DateUtil } from \"../../../utils/datetime/DateTimeUtil\";\n\nimport type { IConstraintModel } from \"../../types\";\n\n/**\n */\nclass DateTimeDateFormatConstraint implements IConstraintModel {\n _format: string;\n _formatLabel: string;\n\n /**\n */\n constructor(format: string, formatLabel: string) {\n this._format = format;\n this._formatLabel = formatLabel;\n }\n\n /**\n */\n get id(): string {\n return \"Constraint.DateFormat.InvalidFormat\";\n }\n\n /**\n */\n get format(): string {\n return this._format;\n }\n\n /**\n */\n get formatLabel(): string {\n return this._formatLabel;\n }\n\n /**\n */\n hasValidation(): boolean {\n return true;\n }\n\n /**\n */\n get defaultMessage(): string {\n return \"Date must be entered in the format ${format}\"; // NOSONAR\n }\n\n /**\n */\n get parameters(): { format: string } {\n return { format: this.formatLabel };\n }\n\n /**\n */\n validate(value: string): boolean {\n if (!value) {\n return false;\n }\n\n return DateUtil.hasFormat(value, this.format);\n }\n\n /**\n */\n get isMandatoryConstraint(): boolean {\n return false;\n }\n}\n\nexport default DateTimeDateFormatConstraint;\n"],"mappings":";;;;;;;;AACA;AAIA;AACA;AACA,
|
|
1
|
+
{"version":3,"file":"DateTimeDateFormatConstraint.js","names":["_DateTimeUtil","require","DateTimeDateFormatConstraint","constructor","format","formatLabel","_defineProperty2","default","_format","_formatLabel","id","hasValidation","defaultMessage","parameters","validate","value","DateUtil","hasFormat","isMandatoryConstraint","_default","exports"],"sources":["../../../../src/models/attributes/input-constraints/DateTimeDateFormatConstraint.js"],"sourcesContent":["// @flow\nimport { DateUtil } from \"../../../utils/datetime/DateTimeUtil\";\n\nimport type { IConstraintModel } from \"../../types\";\n\n/**\n */\nclass DateTimeDateFormatConstraint implements IConstraintModel {\n _format: string;\n _formatLabel: string;\n\n /**\n */\n constructor(format: string, formatLabel: string) {\n this._format = format;\n this._formatLabel = formatLabel;\n }\n\n /**\n */\n get id(): string {\n return \"Constraint.DateFormat.InvalidFormat\";\n }\n\n /**\n */\n get format(): string {\n return this._format;\n }\n\n /**\n */\n get formatLabel(): string {\n return this._formatLabel;\n }\n\n /**\n */\n hasValidation(): boolean {\n return true;\n }\n\n /**\n */\n get defaultMessage(): string {\n return \"Date must be entered in the format ${format}\"; // NOSONAR\n }\n\n /**\n */\n get parameters(): { format: string } {\n return { format: this.formatLabel };\n }\n\n /**\n */\n validate(value: string): boolean {\n if (!value) {\n return false;\n }\n\n return DateUtil.hasFormat(value, this.format);\n }\n\n /**\n */\n get isMandatoryConstraint(): boolean {\n return false;\n }\n}\n\nexport default DateTimeDateFormatConstraint;\n"],"mappings":";;;;;;;;AACA,IAAAA,aAAA,GAAAC,OAAA;AAIA;AACA;AACA,MAAMC,4BAA4B,CAA6B;EAI7D;AACF;EACEC,WAAWA,CAACC,MAAc,EAAEC,WAAmB,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAC/C,IAAI,CAACC,OAAO,GAAGJ,MAAM;IACrB,IAAI,CAACK,YAAY,GAAGJ,WAAW;EACjC;;EAEA;AACF;EACE,IAAIK,EAAEA,CAAA,EAAW;IACf,OAAO,qCAAqC;EAC9C;;EAEA;AACF;EACE,IAAIN,MAAMA,CAAA,EAAW;IACnB,OAAO,IAAI,CAACI,OAAO;EACrB;;EAEA;AACF;EACE,IAAIH,WAAWA,CAAA,EAAW;IACxB,OAAO,IAAI,CAACI,YAAY;EAC1B;;EAEA;AACF;EACEE,aAAaA,CAAA,EAAY;IACvB,OAAO,IAAI;EACb;;EAEA;AACF;EACE,IAAIC,cAAcA,CAAA,EAAW;IAC3B,OAAO,8CAA8C,CAAC,CAAC;EACzD;;EAEA;AACF;EACE,IAAIC,UAAUA,CAAA,EAAuB;IACnC,OAAO;MAAET,MAAM,EAAE,IAAI,CAACC;IAAY,CAAC;EACrC;;EAEA;AACF;EACES,QAAQA,CAACC,KAAa,EAAW;IAC/B,IAAI,CAACA,KAAK,EAAE;MACV,OAAO,KAAK;IACd;IAEA,OAAOC,sBAAQ,CAACC,SAAS,CAACF,KAAK,EAAE,IAAI,CAACX,MAAM,CAAC;EAC/C;;EAEA;AACF;EACE,IAAIc,qBAAqBA,CAAA,EAAY;IACnC,OAAO,KAAK;EACd;AACF;AAAC,IAAAC,QAAA,GAEcjB,4BAA4B;AAAAkB,OAAA,CAAAb,OAAA,GAAAY,QAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateTimeTimeFormatConstraint.js","names":["DateTimeTimeFormatConstraint","constructor","format","formatLabel","_format","_formatLabel","id","hasValidation","defaultMessage","parameters","validate","value","TimeUtil","hasFormat","isMandatoryConstraint"],"sources":["../../../../src/models/attributes/input-constraints/DateTimeTimeFormatConstraint.js"],"sourcesContent":["// @flow\nimport { TimeUtil } from \"../../../utils/datetime/DateTimeUtil\";\n\nimport type { IConstraintModel } from \"../../types\";\n\n/**\n */\nclass DateTimeTimeFormatConstraint implements IConstraintModel {\n _format: string;\n _formatLabel: string;\n\n /**\n */\n constructor(format: string, formatLabel: string) {\n this._format = format;\n this._formatLabel = formatLabel;\n }\n\n /**\n */\n get id(): string {\n return \"Constraint.TimeFormat.InvalidFormat\";\n }\n\n /**\n */\n get format(): string {\n return this._format;\n }\n\n /**\n */\n get formatLabel(): string {\n return this._formatLabel;\n }\n\n /**\n */\n hasValidation(): boolean {\n return true;\n }\n\n /**\n */\n get defaultMessage(): string {\n return \"Time must be entered in the format ${format}\"; // NOSONAR\n }\n\n /**\n */\n get parameters(): { format: string } {\n return { format: this.formatLabel };\n }\n\n /**\n */\n validate(value: string): boolean {\n if (!value) {\n return false;\n }\n\n return TimeUtil.hasFormat(value, this.format);\n }\n\n /**\n */\n get isMandatoryConstraint(): boolean {\n return false;\n }\n}\n\nexport default DateTimeTimeFormatConstraint;\n"],"mappings":";;;;;;;;AACA;AAIA;AACA;AACA,
|
|
1
|
+
{"version":3,"file":"DateTimeTimeFormatConstraint.js","names":["_DateTimeUtil","require","DateTimeTimeFormatConstraint","constructor","format","formatLabel","_defineProperty2","default","_format","_formatLabel","id","hasValidation","defaultMessage","parameters","validate","value","TimeUtil","hasFormat","isMandatoryConstraint","_default","exports"],"sources":["../../../../src/models/attributes/input-constraints/DateTimeTimeFormatConstraint.js"],"sourcesContent":["// @flow\nimport { TimeUtil } from \"../../../utils/datetime/DateTimeUtil\";\n\nimport type { IConstraintModel } from \"../../types\";\n\n/**\n */\nclass DateTimeTimeFormatConstraint implements IConstraintModel {\n _format: string;\n _formatLabel: string;\n\n /**\n */\n constructor(format: string, formatLabel: string) {\n this._format = format;\n this._formatLabel = formatLabel;\n }\n\n /**\n */\n get id(): string {\n return \"Constraint.TimeFormat.InvalidFormat\";\n }\n\n /**\n */\n get format(): string {\n return this._format;\n }\n\n /**\n */\n get formatLabel(): string {\n return this._formatLabel;\n }\n\n /**\n */\n hasValidation(): boolean {\n return true;\n }\n\n /**\n */\n get defaultMessage(): string {\n return \"Time must be entered in the format ${format}\"; // NOSONAR\n }\n\n /**\n */\n get parameters(): { format: string } {\n return { format: this.formatLabel };\n }\n\n /**\n */\n validate(value: string): boolean {\n if (!value) {\n return false;\n }\n\n return TimeUtil.hasFormat(value, this.format);\n }\n\n /**\n */\n get isMandatoryConstraint(): boolean {\n return false;\n }\n}\n\nexport default DateTimeTimeFormatConstraint;\n"],"mappings":";;;;;;;;AACA,IAAAA,aAAA,GAAAC,OAAA;AAIA;AACA;AACA,MAAMC,4BAA4B,CAA6B;EAI7D;AACF;EACEC,WAAWA,CAACC,MAAc,EAAEC,WAAmB,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAC/C,IAAI,CAACC,OAAO,GAAGJ,MAAM;IACrB,IAAI,CAACK,YAAY,GAAGJ,WAAW;EACjC;;EAEA;AACF;EACE,IAAIK,EAAEA,CAAA,EAAW;IACf,OAAO,qCAAqC;EAC9C;;EAEA;AACF;EACE,IAAIN,MAAMA,CAAA,EAAW;IACnB,OAAO,IAAI,CAACI,OAAO;EACrB;;EAEA;AACF;EACE,IAAIH,WAAWA,CAAA,EAAW;IACxB,OAAO,IAAI,CAACI,YAAY;EAC1B;;EAEA;AACF;EACEE,aAAaA,CAAA,EAAY;IACvB,OAAO,IAAI;EACb;;EAEA;AACF;EACE,IAAIC,cAAcA,CAAA,EAAW;IAC3B,OAAO,8CAA8C,CAAC,CAAC;EACzD;;EAEA;AACF;EACE,IAAIC,UAAUA,CAAA,EAAuB;IACnC,OAAO;MAAET,MAAM,EAAE,IAAI,CAACC;IAAY,CAAC;EACrC;;EAEA;AACF;EACES,QAAQA,CAACC,KAAa,EAAW;IAC/B,IAAI,CAACA,KAAK,EAAE;MACV,OAAO,KAAK;IACd;IAEA,OAAOC,sBAAQ,CAACC,SAAS,CAACF,KAAK,EAAE,IAAI,CAACX,MAAM,CAAC;EAC/C;;EAEA;AACF;EACE,IAAIc,qBAAqBA,CAAA,EAAY;IACnC,OAAO,KAAK;EACd;AACF;AAAC,IAAAC,QAAA,GAEcjB,4BAA4B;AAAAkB,OAAA,CAAAb,OAAA,GAAAY,QAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatetimeFormatConstraint.js","names":["DatetimeFormatConstraint","constructor","type","format","formatLabel","_type","_format","_formatLabel","id","hasValidation","defaultMessage","parameters","formatUtil","TimestampUtil","DateTimeUtil","validate","value","hasFormat","isMandatoryConstraint"],"sources":["../../../../src/models/attributes/input-constraints/DatetimeFormatConstraint.js"],"sourcesContent":["// @flow\nimport {\n TimestampUtil,\n DateTimeUtil,\n} from \"../../../utils/datetime/DateTimeUtil\";\n\nimport type { IConstraintModel } from \"../../types\";\n\n/**\n */\nclass DatetimeFormatConstraint implements IConstraintModel {\n _type: string;\n _format: string;\n _formatLabel: string;\n\n /**\n */\n constructor(type: string, format: string, formatLabel: string) {\n this._type = type;\n this._format = format;\n this._formatLabel = formatLabel;\n }\n\n /**\n */\n get type(): string {\n return this._type;\n }\n\n /**\n */\n get id(): string {\n return \"Constraint.DateTime.MissingValue\";\n }\n\n /**\n */\n get format(): string {\n return this._format;\n }\n\n /**\n */\n get formatLabel(): string {\n return this._formatLabel;\n }\n\n /**\n */\n hasValidation(): boolean {\n return true;\n }\n\n /**\n */\n get defaultMessage(): string {\n return \"Date and time should both be entered\";\n }\n\n /**\n */\n get parameters(): { format: string } {\n return { format: this.formatLabel };\n }\n\n /**\n */\n get formatUtil(): typeof TimestampUtil | typeof DateTimeUtil {\n if (this.type === \"timestamp\") {\n return TimestampUtil;\n }\n\n return DateTimeUtil;\n }\n\n /**\n */\n validate(value: string): boolean {\n if (!value) {\n return false;\n }\n\n return this.formatUtil.hasFormat(value, this.format);\n }\n\n /**\n */\n get isMandatoryConstraint(): boolean {\n return false;\n }\n}\n\nexport default DatetimeFormatConstraint;\n"],"mappings":";;;;;;;;AACA;AAOA;AACA;AACA,
|
|
1
|
+
{"version":3,"file":"DatetimeFormatConstraint.js","names":["_DateTimeUtil","require","DatetimeFormatConstraint","constructor","type","format","formatLabel","_defineProperty2","default","_type","_format","_formatLabel","id","hasValidation","defaultMessage","parameters","formatUtil","TimestampUtil","DateTimeUtil","validate","value","hasFormat","isMandatoryConstraint","_default","exports"],"sources":["../../../../src/models/attributes/input-constraints/DatetimeFormatConstraint.js"],"sourcesContent":["// @flow\nimport {\n TimestampUtil,\n DateTimeUtil,\n} from \"../../../utils/datetime/DateTimeUtil\";\n\nimport type { IConstraintModel } from \"../../types\";\n\n/**\n */\nclass DatetimeFormatConstraint implements IConstraintModel {\n _type: string;\n _format: string;\n _formatLabel: string;\n\n /**\n */\n constructor(type: string, format: string, formatLabel: string) {\n this._type = type;\n this._format = format;\n this._formatLabel = formatLabel;\n }\n\n /**\n */\n get type(): string {\n return this._type;\n }\n\n /**\n */\n get id(): string {\n return \"Constraint.DateTime.MissingValue\";\n }\n\n /**\n */\n get format(): string {\n return this._format;\n }\n\n /**\n */\n get formatLabel(): string {\n return this._formatLabel;\n }\n\n /**\n */\n hasValidation(): boolean {\n return true;\n }\n\n /**\n */\n get defaultMessage(): string {\n return \"Date and time should both be entered\";\n }\n\n /**\n */\n get parameters(): { format: string } {\n return { format: this.formatLabel };\n }\n\n /**\n */\n get formatUtil(): typeof TimestampUtil | typeof DateTimeUtil {\n if (this.type === \"timestamp\") {\n return TimestampUtil;\n }\n\n return DateTimeUtil;\n }\n\n /**\n */\n validate(value: string): boolean {\n if (!value) {\n return false;\n }\n\n return this.formatUtil.hasFormat(value, this.format);\n }\n\n /**\n */\n get isMandatoryConstraint(): boolean {\n return false;\n }\n}\n\nexport default DatetimeFormatConstraint;\n"],"mappings":";;;;;;;;AACA,IAAAA,aAAA,GAAAC,OAAA;AAOA;AACA;AACA,MAAMC,wBAAwB,CAA6B;EAKzD;AACF;EACEC,WAAWA,CAACC,IAAY,EAAEC,MAAc,EAAEC,WAAmB,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAAA,IAAAD,gBAAA,CAAAC,OAAA;IAC7D,IAAI,CAACC,KAAK,GAAGL,IAAI;IACjB,IAAI,CAACM,OAAO,GAAGL,MAAM;IACrB,IAAI,CAACM,YAAY,GAAGL,WAAW;EACjC;;EAEA;AACF;EACE,IAAIF,IAAIA,CAAA,EAAW;IACjB,OAAO,IAAI,CAACK,KAAK;EACnB;;EAEA;AACF;EACE,IAAIG,EAAEA,CAAA,EAAW;IACf,OAAO,kCAAkC;EAC3C;;EAEA;AACF;EACE,IAAIP,MAAMA,CAAA,EAAW;IACnB,OAAO,IAAI,CAACK,OAAO;EACrB;;EAEA;AACF;EACE,IAAIJ,WAAWA,CAAA,EAAW;IACxB,OAAO,IAAI,CAACK,YAAY;EAC1B;;EAEA;AACF;EACEE,aAAaA,CAAA,EAAY;IACvB,OAAO,IAAI;EACb;;EAEA;AACF;EACE,IAAIC,cAAcA,CAAA,EAAW;IAC3B,OAAO,sCAAsC;EAC/C;;EAEA;AACF;EACE,IAAIC,UAAUA,CAAA,EAAuB;IACnC,OAAO;MAAEV,MAAM,EAAE,IAAI,CAACC;IAAY,CAAC;EACrC;;EAEA;AACF;EACE,IAAIU,UAAUA,CAAA,EAA+C;IAC3D,IAAI,IAAI,CAACZ,IAAI,KAAK,WAAW,EAAE;MAC7B,OAAOa,2BAAa;IACtB;IAEA,OAAOC,0BAAY;EACrB;;EAEA;AACF;EACEC,QAAQA,CAACC,KAAa,EAAW;IAC/B,IAAI,CAACA,KAAK,EAAE;MACV,OAAO,KAAK;IACd;IAEA,OAAO,IAAI,CAACJ,UAAU,CAACK,SAAS,CAACD,KAAK,EAAE,IAAI,CAACf,MAAM,CAAC;EACtD;;EAEA;AACF;EACE,IAAIiB,qBAAqBA,CAAA,EAAY;IACnC,OAAO,KAAK;EACd;AACF;AAAC,IAAAC,QAAA,GAEcrB,wBAAwB;AAAAsB,OAAA,CAAAhB,OAAA,GAAAe,QAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileExtensionConstraint.js","names":["FileExtensionConstraint","constructor","filetypeConstraints","_filetypeConstraints","id","extensions","filetypeConstraint","join","hasValidation","defaultMessage","parameters","validate","isMandatoryConstraint"],"sources":["../../../../src/models/attributes/input-constraints/FileExtensionConstraint.js"],"sourcesContent":["// @flow\nimport type { IConstraintModel, FiletypeConstraintsType } from \"../../types\";\n\n/**\n */\nclass FileExtensionConstraint implements IConstraintModel {\n _filetypeConstraints: FiletypeConstraintsType;\n\n /**\n */\n constructor(filetypeConstraints: FiletypeConstraintsType) {\n this._filetypeConstraints = filetypeConstraints;\n }\n\n /**\n */\n get id(): string {\n return \"Constraint.File.InvalidExtension\";\n }\n\n /**\n */\n get extensions(): string {\n return this._filetypeConstraints\n .map((filetypeConstraint) => filetypeConstraint.extensions.join(\", \"))\n .join(\", \");\n }\n\n /**\n */\n hasValidation(): boolean {\n return false;\n }\n\n /**\n */\n get defaultMessage(): string {\n return \"Allowed extensions are: ${extensions}\"; // NOSONAR\n }\n\n /**\n */\n get parameters(): { extensions: string } {\n return { extensions: this.extensions };\n }\n\n /**\n */\n validate(): boolean {\n return true;\n }\n\n /**\n */\n get isMandatoryConstraint(): boolean {\n return false;\n }\n}\n\nexport default FileExtensionConstraint;\n"],"mappings":";;;;;;;;;AAGA;AACA;AACA,MAAMA,uBAAuB,CAA6B;EAGxD;AACF;EACEC,
|
|
1
|
+
{"version":3,"file":"FileExtensionConstraint.js","names":["FileExtensionConstraint","constructor","filetypeConstraints","_defineProperty2","default","_filetypeConstraints","id","extensions","_context","_map","call","filetypeConstraint","join","hasValidation","defaultMessage","parameters","validate","isMandatoryConstraint","_default","exports"],"sources":["../../../../src/models/attributes/input-constraints/FileExtensionConstraint.js"],"sourcesContent":["// @flow\nimport type { IConstraintModel, FiletypeConstraintsType } from \"../../types\";\n\n/**\n */\nclass FileExtensionConstraint implements IConstraintModel {\n _filetypeConstraints: FiletypeConstraintsType;\n\n /**\n */\n constructor(filetypeConstraints: FiletypeConstraintsType) {\n this._filetypeConstraints = filetypeConstraints;\n }\n\n /**\n */\n get id(): string {\n return \"Constraint.File.InvalidExtension\";\n }\n\n /**\n */\n get extensions(): string {\n return this._filetypeConstraints\n .map((filetypeConstraint) => filetypeConstraint.extensions.join(\", \"))\n .join(\", \");\n }\n\n /**\n */\n hasValidation(): boolean {\n return false;\n }\n\n /**\n */\n get defaultMessage(): string {\n return \"Allowed extensions are: ${extensions}\"; // NOSONAR\n }\n\n /**\n */\n get parameters(): { extensions: string } {\n return { extensions: this.extensions };\n }\n\n /**\n */\n validate(): boolean {\n return true;\n }\n\n /**\n */\n get isMandatoryConstraint(): boolean {\n return false;\n }\n}\n\nexport default FileExtensionConstraint;\n"],"mappings":";;;;;;;;;AAGA;AACA;AACA,MAAMA,uBAAuB,CAA6B;EAGxD;AACF;EACEC,WAAWA,CAACC,mBAA4C,EAAE;IAAA,IAAAC,gBAAA,CAAAC,OAAA;IACxD,IAAI,CAACC,oBAAoB,GAAGH,mBAAmB;EACjD;;EAEA;AACF;EACE,IAAII,EAAEA,CAAA,EAAW;IACf,OAAO,kCAAkC;EAC3C;;EAEA;AACF;EACE,IAAIC,UAAUA,CAAA,EAAW;IAAA,IAAAC,QAAA;IACvB,OAAO,IAAAC,IAAA,CAAAL,OAAA,EAAAI,QAAA,OAAI,CAACH,oBAAoB,EAAAK,IAAA,CAAAF,QAAA,EACxBG,kBAAkB,IAAKA,kBAAkB,CAACJ,UAAU,CAACK,IAAI,CAAC,IAAI,CAAC,CAAC,CACrEA,IAAI,CAAC,IAAI,CAAC;EACf;;EAEA;AACF;EACEC,aAAaA,CAAA,EAAY;IACvB,OAAO,KAAK;EACd;;EAEA;AACF;EACE,IAAIC,cAAcA,CAAA,EAAW;IAC3B,OAAO,uCAAuC,CAAC,CAAC;EAClD;;EAEA;AACF;EACE,IAAIC,UAAUA,CAAA,EAA2B;IACvC,OAAO;MAAER,UAAU,EAAE,IAAI,CAACA;IAAW,CAAC;EACxC;;EAEA;AACF;EACES,QAAQA,CAAA,EAAY;IAClB,OAAO,IAAI;EACb;;EAEA;AACF;EACE,IAAIC,qBAAqBA,CAAA,EAAY;IACnC,OAAO,KAAK;EACd;AACF;AAAC,IAAAC,QAAA,GAEclB,uBAAuB;AAAAmB,OAAA,CAAAf,OAAA,GAAAc,QAAA"}
|