@wise/dynamic-flow-client 3.2.2-short-962e290 → 3.3.0
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/build/i18n/tr.json +2 -2
- package/build/main.js +507 -556
- package/build/main.min.js +1 -1
- package/build/main.mjs +509 -558
- package/build/types/legacy/formControl/FormControl.d.ts +4 -1
- package/build/types/legacy/formControl/utils/getAutocompleteString.d.ts +4 -1
- package/build/types/revamp/domain/components/StepDomainComponent.d.ts +5 -6
- package/build/types/revamp/domain/components/utils/getComponentForLocalValueKey.d.ts +7 -0
- package/build/types/revamp/domain/features/{events/getAnalyticsEventDispatcher.d.ts → events.d.ts} +3 -7
- package/build/types/revamp/domain/mappers/schema/types.d.ts +2 -2
- package/build/types/revamp/{step/utils → renderers}/getRenderFunction.d.ts +2 -2
- package/build/types/revamp/{step/utils → renderers}/getSchemaErrorMessageFunction.d.ts +1 -1
- package/build/types/revamp/utils/useStableCallback.d.ts +6 -0
- package/package.json +15 -15
- package/build/common/errorBoundary/ErrorBoundary.js +0 -44
- package/build/common/errorBoundary/ErrorBoundaryAlert.js +0 -12
- package/build/common/httpClientContext/HttpClientContext.js +0 -35
- package/build/common/httpClientContext/index.js +0 -1
- package/build/common/makeHttpClient/index.js +0 -1
- package/build/common/makeHttpClient/makeHttpClient.js +0 -34
- package/build/common/makeHttpClient/makeHttpClient.spec.js +0 -141
- package/build/common/messages/generic-error.messages.js +0 -18
- package/build/common/messages/help.messages.js +0 -8
- package/build/common/messages/multi-file-upload.messages.js +0 -18
- package/build/common/messages/paragraph.messages.js +0 -13
- package/build/common/messages/repeatable.messages.js +0 -23
- package/build/common/messages/validation.array.messages.js +0 -13
- package/build/common/messages/validation.messages.js +0 -53
- package/build/common/utils/api-utils.js +0 -4
- package/build/i18n/index.js +0 -36
- package/build/index.js +0 -10
- package/build/legacy/common/constants/DateMode.js +0 -4
- package/build/legacy/common/constants/FeatureName.js +0 -4
- package/build/legacy/common/constants/FormControlType.js +0 -21
- package/build/legacy/common/constants/MonthFormat.js +0 -4
- package/build/legacy/common/constants/Size.js +0 -7
- package/build/legacy/common/constants/index.js +0 -4
- package/build/legacy/common/contexts/dynamicFlowContexts/DynamicFlowContexts.js +0 -36
- package/build/legacy/common/contexts/dynamicFlowContexts/usePendingPromiseCounter.js +0 -13
- package/build/legacy/common/contexts/eventsContext/EventsContext.js +0 -38
- package/build/legacy/common/contexts/eventsContext/EventsContext.spec.js +0 -58
- package/build/legacy/common/contexts/featureContext/FeatureContext.js +0 -22
- package/build/legacy/common/contexts/featureContext/FeatureContext.spec.js +0 -41
- package/build/legacy/common/contexts/index.js +0 -3
- package/build/legacy/common/contexts/logContext/LogContext.js +0 -44
- package/build/legacy/common/contexts/logContext/LogContext.spec.js +0 -54
- package/build/legacy/common/hooks/index.js +0 -7
- package/build/legacy/common/hooks/useDebouncedFunction/useDebouncedFunction.js +0 -9
- package/build/legacy/common/hooks/useDebouncedFunction/useDebouncedFunction.spec.js +0 -59
- package/build/legacy/common/hooks/useExternal/useExternal.js +0 -15
- package/build/legacy/common/hooks/useExternal/useExternal.spec.js +0 -226
- package/build/legacy/common/hooks/useExternalStepPolling/useExternalStepPolling.js +0 -70
- package/build/legacy/common/hooks/usePersistAsync/usePersistAsync.js +0 -172
- package/build/legacy/common/hooks/usePolling/usePolling.js +0 -51
- package/build/legacy/common/hooks/usePrevious/usePrevious.js +0 -8
- package/build/legacy/common/hooks/useStepPolling/useStepPolling.js +0 -43
- package/build/legacy/common/hooks/useStepPolling/useStepPolling.spec.js +0 -288
- package/build/legacy/common/messages.js +0 -8
- package/build/legacy/common/utils/api-utils.js +0 -6
- package/build/legacy/common/utils/date-utils.js +0 -22
- package/build/legacy/common/utils/debounce.js +0 -38
- package/build/legacy/common/utils/debounce.spec.js +0 -72
- package/build/legacy/common/utils/file-utils.js +0 -45
- package/build/legacy/common/utils/file-utils.spec.js +0 -69
- package/build/legacy/common/utils/id-utils.js +0 -5
- package/build/legacy/common/utils/id-utils.spec.js +0 -12
- package/build/legacy/common/utils/index.js +0 -11
- package/build/legacy/common/utils/is-equal.js +0 -21
- package/build/legacy/common/utils/is-equal.spec.js +0 -88
- package/build/legacy/common/utils/misc-utils.js +0 -4
- package/build/legacy/common/utils/mobile-utils.js +0 -23
- package/build/legacy/common/utils/mobile-utils.spec.js +0 -71
- package/build/legacy/common/utils/model-utils.js +0 -33
- package/build/legacy/common/utils/schema-utils.js +0 -97
- package/build/legacy/common/utils/step-utils.js +0 -32
- package/build/legacy/common/validators/index.js +0 -5
- package/build/legacy/common/validators/models/model-utils.js +0 -119
- package/build/legacy/common/validators/models/model-utils.spec.js +0 -45
- package/build/legacy/common/validators/models/model-validators.js +0 -62
- package/build/legacy/common/validators/models/model-validators.spec.js +0 -647
- package/build/legacy/common/validators/schemas/schema-validators.js +0 -101
- package/build/legacy/common/validators/schemas/schema-validators.spec.js +0 -157
- package/build/legacy/common/validators/types/type-validators.js +0 -14
- package/build/legacy/common/validators/types/type-validators.spec.js +0 -147
- package/build/legacy/common/validators/validationFailures/validation-failures.js +0 -139
- package/build/legacy/common/validators/validationFailures/validation-failures.spec.js +0 -198
- package/build/legacy/common/validators/validationFailures/validation-failures.utils.js +0 -40
- package/build/legacy/common/validators/validationFailures/validation-failures.utils.spec.js +0 -145
- package/build/legacy/common/validators/values/value-validators.js +0 -6
- package/build/legacy/common/validators/values/value-validators.spec.js +0 -22
- package/build/legacy/dynamic-flow-types.js +0 -1
- package/build/legacy/dynamicFlow/BackButton.js +0 -22
- package/build/legacy/dynamicFlow/DynamicFlow.js +0 -346
- package/build/legacy/dynamicFlow/DynamicFlowStep.js +0 -37
- package/build/legacy/dynamicFlow/DynamicFlowTypes.js +0 -1
- package/build/legacy/dynamicFlow/index.js +0 -1
- package/build/legacy/dynamicFlow/stories/dev-tools/DynamicFlow.story.js +0 -78
- package/build/legacy/dynamicFlow/stories/dev-tools/ErrorResponses.story.js +0 -124
- package/build/legacy/dynamicFlow/stories/dev-tools/Examples.story.js +0 -25
- package/build/legacy/dynamicFlow/stories/dev-tools/Features.story.js +0 -32
- package/build/legacy/dynamicFlow/stories/dev-tools/JsonSchemaForm.story.js +0 -31
- package/build/legacy/dynamicFlow/stories/dev-tools/RefreshOnChange.story.js +0 -194
- package/build/legacy/dynamicFlow/stories/dev-tools/SearchFeature.story.js +0 -114
- package/build/legacy/dynamicFlow/stories/dev-tools/ServerTest.story.js +0 -44
- package/build/legacy/dynamicFlow/stories/dev-tools/Upload.story.js +0 -212
- package/build/legacy/dynamicFlow/stories/dev-tools/ValidationAsync.story.js +0 -156
- package/build/legacy/dynamicFlow/stories/examples/ObjectConst.story.js +0 -150
- package/build/legacy/dynamicFlow/stories/fixtureHttpClient.js +0 -117
- package/build/legacy/dynamicFlow/stories/visual-tests/VisualTests.story.js +0 -43
- package/build/legacy/dynamicFlow/tests/Actions.spec.js +0 -185
- package/build/legacy/dynamicFlow/tests/AllOfSchema.spec.js +0 -196
- package/build/legacy/dynamicFlow/tests/AutocompleteHints.spec.js +0 -59
- package/build/legacy/dynamicFlow/tests/DynamicFlow.BackButton.spec.js +0 -179
- package/build/legacy/dynamicFlow/tests/DynamicFlow.search.spec.js +0 -475
- package/build/legacy/dynamicFlow/tests/DynamicFlow.spec.js +0 -559
- package/build/legacy/dynamicFlow/tests/DynamicImage.spec.js +0 -287
- package/build/legacy/dynamicFlow/tests/DynamicInstructions.spec.js +0 -49
- package/build/legacy/dynamicFlow/tests/HiddenSchemas.spec.js +0 -307
- package/build/legacy/dynamicFlow/tests/ModalLayout.spec.js +0 -252
- package/build/legacy/dynamicFlow/tests/MultipleFileUploadSchema.spec.js +0 -401
- package/build/legacy/dynamicFlow/tests/ObjectSchema.spec.js +0 -295
- package/build/legacy/dynamicFlow/tests/OneOfSchema.spec.js +0 -773
- package/build/legacy/dynamicFlow/tests/PersistAsync.blob-schema.spec.js +0 -331
- package/build/legacy/dynamicFlow/tests/PersistAsync.string-schema.spec.js +0 -389
- package/build/legacy/dynamicFlow/tests/RefreshStepOnChange.debouncing.spec.js +0 -273
- package/build/legacy/dynamicFlow/tests/RefreshStepOnChange.spec.js +0 -567
- package/build/legacy/dynamicFlow/tests/RepeatableSchema.spec.js +0 -977
- package/build/legacy/dynamicFlow/tests/StepModel.spec.js +0 -119
- package/build/legacy/dynamicFlow/tests/ValidationAsync.spec.js +0 -484
- package/build/legacy/dynamicFlow/tests/ssr.spec.js +0 -47
- package/build/legacy/dynamicFlow/utils/index.js +0 -5
- package/build/legacy/dynamicFlow/utils/responseParsers/response-parsers.js +0 -185
- package/build/legacy/dynamicFlow/utils/responseParsers/response-parsers.spec.js +0 -463
- package/build/legacy/dynamicFlow/utils/useDebouncedRefresh/useDebouncedRefresh.js +0 -26
- package/build/legacy/dynamicFlow/utils/useDynamicFlowState.js +0 -137
- package/build/legacy/dynamicFlow/utils/useLoader.js +0 -22
- package/build/legacy/formControl/FormControl.js +0 -268
- package/build/legacy/formControl/Select.spec.js +0 -104
- package/build/legacy/formControl/index.js +0 -1
- package/build/legacy/formControl/utils/getAutocompleteString.js +0 -73
- package/build/legacy/formControl/utils/getAutocompleteString.spec.js +0 -20
- package/build/legacy/formControl/utils/index.js +0 -2
- package/build/legacy/formControl/utils/value-utils.js +0 -108
- package/build/legacy/formControl/utils/value-utils.spec.js +0 -158
- package/build/legacy/jsonSchemaForm/JsonSchemaForm.end-to-end.spec.js +0 -563
- package/build/legacy/jsonSchemaForm/JsonSchemaForm.js +0 -24
- package/build/legacy/jsonSchemaForm/allOfSchema/AllOfSchema.js +0 -50
- package/build/legacy/jsonSchemaForm/allOfSchema/index.js +0 -1
- package/build/legacy/jsonSchemaForm/arrayTypeSchema/ArraySchema.js +0 -25
- package/build/legacy/jsonSchemaForm/arrayTypeSchema/arrayListSchema/ArrayListSchema.js +0 -30
- package/build/legacy/jsonSchemaForm/arrayTypeSchema/arrayListSchema/index.js +0 -1
- package/build/legacy/jsonSchemaForm/arrayTypeSchema/arrayListSchema/multipleFileUploadSchema/MultipleFileUploadSchema.js +0 -141
- package/build/legacy/jsonSchemaForm/arrayTypeSchema/arrayListSchema/multipleFileUploadSchema/index.js +0 -1
- package/build/legacy/jsonSchemaForm/arrayTypeSchema/arrayListSchema/multipleFileUploadSchema/utils/index.js +0 -2
- package/build/legacy/jsonSchemaForm/arrayTypeSchema/arrayListSchema/multipleFileUploadSchema/utils/upload-utils.js +0 -79
- package/build/legacy/jsonSchemaForm/arrayTypeSchema/arrayListSchema/multipleFileUploadSchema/utils/useFormattedDefaultErrorMessages.js +0 -14
- package/build/legacy/jsonSchemaForm/arrayTypeSchema/arrayListSchema/repeatableSchema/ItemSummary.js +0 -7
- package/build/legacy/jsonSchemaForm/arrayTypeSchema/arrayListSchema/repeatableSchema/RepeatableSchema.js +0 -134
- package/build/legacy/jsonSchemaForm/arrayTypeSchema/arrayListSchema/repeatableSchema/RepeatableSchemaStep.js +0 -85
- package/build/legacy/jsonSchemaForm/arrayTypeSchema/arrayListSchema/repeatableSchema/utils/summary-utils.js +0 -135
- package/build/legacy/jsonSchemaForm/arrayTypeSchema/arrayListSchema/repeatableSchema/utils/summary-utils.spec.js +0 -909
- package/build/legacy/jsonSchemaForm/arrayTypeSchema/index.js +0 -1
- package/build/legacy/jsonSchemaForm/basicTypeSchema/BasicTypeSchema.js +0 -111
- package/build/legacy/jsonSchemaForm/basicTypeSchema/index.js +0 -1
- package/build/legacy/jsonSchemaForm/controlFeedback/ControlFeedback.js +0 -86
- package/build/legacy/jsonSchemaForm/controlFeedback/index.js +0 -1
- package/build/legacy/jsonSchemaForm/genericSchema/GenericSchema.js +0 -85
- package/build/legacy/jsonSchemaForm/genericSchema/GenericSchema.rtl.spec.js +0 -55
- package/build/legacy/jsonSchemaForm/genericSchema/index.js +0 -1
- package/build/legacy/jsonSchemaForm/help/Help.js +0 -20
- package/build/legacy/jsonSchemaForm/help/index.js +0 -1
- package/build/legacy/jsonSchemaForm/index.js +0 -1
- package/build/legacy/jsonSchemaForm/objectSchema/ObjectSchema.js +0 -77
- package/build/legacy/jsonSchemaForm/objectSchema/index.js +0 -1
- package/build/legacy/jsonSchemaForm/oneOfSchema/OneOfSchema.js +0 -155
- package/build/legacy/jsonSchemaForm/oneOfSchema/index.js +0 -1
- package/build/legacy/jsonSchemaForm/oneOfSchema/utils.js +0 -68
- package/build/legacy/jsonSchemaForm/persistAsyncSchema/PersistAsyncSchema.js +0 -26
- package/build/legacy/jsonSchemaForm/persistAsyncSchema/index.js +0 -1
- package/build/legacy/jsonSchemaForm/persistAsyncSchema/persistAsyncBasicSchema/PersistAsyncBasicSchema.js +0 -165
- package/build/legacy/jsonSchemaForm/persistAsyncSchema/persistAsyncBasicSchema/index.js +0 -1
- package/build/legacy/jsonSchemaForm/persistAsyncSchema/persistAsyncBlobSchema/PersistAsyncBlobSchema.js +0 -131
- package/build/legacy/jsonSchemaForm/persistAsyncSchema/persistAsyncBlobSchema/UploadInputAdapter.js +0 -31
- package/build/legacy/jsonSchemaForm/persistAsyncSchema/persistAsyncBlobSchema/index.js +0 -1
- package/build/legacy/jsonSchemaForm/promotedOneOfSchema/PromotedOneOfSchema.js +0 -72
- package/build/legacy/jsonSchemaForm/promotedOneOfSchema/index.js +0 -1
- package/build/legacy/jsonSchemaForm/promotedOneOfSchema/promoted-one-of-utils.js +0 -8
- package/build/legacy/jsonSchemaForm/promotedOneOfSchema/promotedOneOfControl/PromotedOneOfCheckboxControl.js +0 -27
- package/build/legacy/jsonSchemaForm/promotedOneOfSchema/promotedOneOfControl/PromotedOneOfControl.js +0 -31
- package/build/legacy/jsonSchemaForm/promotedOneOfSchema/promotedOneOfControl/PromotedOneOfRadioControl.js +0 -32
- package/build/legacy/jsonSchemaForm/readOnlySchema/ReadOnlySchema.js +0 -54
- package/build/legacy/jsonSchemaForm/readOnlySchema/ReadOnlySchema.messages.js +0 -13
- package/build/legacy/jsonSchemaForm/readOnlySchema/index.js +0 -1
- package/build/legacy/jsonSchemaForm/schemaFormControl/SchemaFormControl.js +0 -133
- package/build/legacy/jsonSchemaForm/schemaFormControl/SchemaFormControl.spec.js +0 -312
- package/build/legacy/jsonSchemaForm/schemaFormControl/index.js +0 -1
- package/build/legacy/jsonSchemaForm/schemaFormControl/utils/index.js +0 -1
- package/build/legacy/jsonSchemaForm/schemaFormControl/utils/mapping-utils.js +0 -107
- package/build/legacy/jsonSchemaForm/schemaFormControl/utils/mapping-utils.spec.js +0 -231
- package/build/legacy/jsonSchemaForm/validationAsyncSchema/ValidationAsyncSchema.js +0 -150
- package/build/legacy/jsonSchemaForm/validationAsyncSchema/index.js +0 -1
- package/build/legacy/layout/DynamicLayout.js +0 -68
- package/build/legacy/layout/alert/DynamicAlert.js +0 -29
- package/build/legacy/layout/box/DynamicBox.js +0 -41
- package/build/legacy/layout/button/DynamicButton.js +0 -27
- package/build/legacy/layout/button/DynamicButton.spec.js +0 -152
- package/build/legacy/layout/button/utils.js +0 -45
- package/build/legacy/layout/button/utils.spec.js +0 -50
- package/build/legacy/layout/columns/DynamicColumns.js +0 -38
- package/build/legacy/layout/decision/DynamicDecision.js +0 -21
- package/build/legacy/layout/divider/DynamicDivider.js +0 -9
- package/build/legacy/layout/external/DynamicExternal.js +0 -32
- package/build/legacy/layout/external/DynamicExternal.messages.js +0 -8
- package/build/legacy/layout/form/DynamicForm.js +0 -22
- package/build/legacy/layout/heading/DynamicHeading.js +0 -51
- package/build/legacy/layout/icon/DynamicIcon.js +0 -17
- package/build/legacy/layout/icon/DynamicIcon.spec.js +0 -20
- package/build/legacy/layout/icon/FlagIcon.js +0 -198
- package/build/legacy/layout/icon/NamedIcon.js +0 -19
- package/build/legacy/layout/image/DynamicImage.js +0 -111
- package/build/legacy/layout/index.js +0 -20
- package/build/legacy/layout/instructions/DynamicInstructions.js +0 -30
- package/build/legacy/layout/list/DynamicStatusList.js +0 -37
- package/build/legacy/layout/list/DynamicStatusList.spec.js +0 -111
- package/build/legacy/layout/loadingIndicator/DynamicLoadingIndicator.js +0 -11
- package/build/legacy/layout/loadingIndicator/DynamicLoadingIndicator.spec.js +0 -25
- package/build/legacy/layout/markdown/DynamicMarkdown.js +0 -23
- package/build/legacy/layout/markdown/DynamicMarkdown.spec.js +0 -58
- package/build/legacy/layout/modal/DynamicModal.js +0 -26
- package/build/legacy/layout/paragraph/DynamicParagraph.js +0 -46
- package/build/legacy/layout/paragraph/useSnackBarIfAvailable.js +0 -9
- package/build/legacy/layout/review/DynamicReview.js +0 -58
- package/build/legacy/layout/review/DynamicReview.spec.js +0 -152
- package/build/legacy/layout/search/DynamicSearch.js +0 -58
- package/build/legacy/layout/search/SearchInput.js +0 -17
- package/build/legacy/layout/search/SearchResults.js +0 -31
- package/build/legacy/layout/search/useSearch.js +0 -137
- package/build/legacy/layout/utils/getNavigationOptionMedia.js +0 -28
- package/build/legacy/layout/utils/index.js +0 -32
- package/build/legacy/step/cameraStep/CameraStep.js +0 -124
- package/build/legacy/step/cameraStep/cameraCapture/CameraCapture.js +0 -161
- package/build/legacy/step/cameraStep/cameraCapture/CameraCapture.messages.js +0 -58
- package/build/legacy/step/cameraStep/cameraCapture/components/bottomBar/BottomBar.js +0 -28
- package/build/legacy/step/cameraStep/cameraCapture/components/index.js +0 -3
- package/build/legacy/step/cameraStep/cameraCapture/components/orientationLockOverlay/OrientationLockOverlay.js +0 -19
- package/build/legacy/step/cameraStep/cameraCapture/components/orientationLockOverlay/OrientationLockOverlay.messages.js +0 -8
- package/build/legacy/step/cameraStep/cameraCapture/hooks/useFullScreenOrientationLock.js +0 -60
- package/build/legacy/step/cameraStep/cameraCapture/hooks/useVideoConstraints.js +0 -80
- package/build/legacy/step/cameraStep/cameraCapture/index.js +0 -1
- package/build/legacy/step/cameraStep/cameraCapture/overlay/Overlay.js +0 -77
- package/build/legacy/step/cameraStep/cameraCapture/screens/cameraErrorScreen/CameraErrorScreen.js +0 -18
- package/build/legacy/step/cameraStep/cameraCapture/screens/index.js +0 -1
- package/build/legacy/step/cameraStep/cameraCapture/tracking/index.js +0 -109
- package/build/legacy/step/cameraStep/cameraCapture/types/index.js +0 -7
- package/build/legacy/step/cameraStep/cameraCapture/utils/index.js +0 -107
- package/build/legacy/step/cameraStep/index.js +0 -1
- package/build/legacy/step/externalConfirmationStep/ExternalConfirmationStep.js +0 -64
- package/build/legacy/step/externalConfirmationStep/ExternalConfirmationStep.messages.js +0 -23
- package/build/legacy/step/externalConfirmationStep/index.js +0 -1
- package/build/legacy/step/index.js +0 -3
- package/build/legacy/step/layoutStep/LayoutStep.js +0 -33
- package/build/legacy/step/layoutStep/index.js +0 -1
- package/build/legacy/step/layoutStep/utils/index.js +0 -2
- package/build/legacy/step/layoutStep/utils/inline-reference-utils.js +0 -105
- package/build/legacy/step/layoutStep/utils/layout-utils.js +0 -212
- package/build/legacy/test-utils/DynamicFlowProviders.js +0 -19
- package/build/legacy/test-utils/index.js +0 -4
- package/build/legacy/test-utils/legacy-utils.js +0 -69
- package/build/legacy/test-utils/log-utils.js +0 -9
- package/build/revamp/DynamicFlowCore.js +0 -259
- package/build/revamp/DynamicFlowWise.js +0 -69
- package/build/revamp/domain/components/AlertComponent.js +0 -50
- package/build/revamp/domain/components/AllOfComponent.js +0 -72
- package/build/revamp/domain/components/BooleanInputComponent.js +0 -108
- package/build/revamp/domain/components/BoxComponent.js +0 -65
- package/build/revamp/domain/components/ButtonComponent.js +0 -50
- package/build/revamp/domain/components/ColumnsComponent.js +0 -74
- package/build/revamp/domain/components/ConstComponent.js +0 -50
- package/build/revamp/domain/components/ContainerComponent.js +0 -65
- package/build/revamp/domain/components/DateInputComponent.js +0 -127
- package/build/revamp/domain/components/DecisionComponent.js +0 -50
- package/build/revamp/domain/components/DividerComponent.js +0 -50
- package/build/revamp/domain/components/FormComponent.js +0 -65
- package/build/revamp/domain/components/HeadingComponent.js +0 -50
- package/build/revamp/domain/components/ImageComponent.js +0 -50
- package/build/revamp/domain/components/InstructionsComponent.js +0 -50
- package/build/revamp/domain/components/IntegerInputComponent.js +0 -125
- package/build/revamp/domain/components/LoadingIndicatorComponent.js +0 -50
- package/build/revamp/domain/components/MarkdownComponent.js +0 -50
- package/build/revamp/domain/components/ModalComponent.js +0 -65
- package/build/revamp/domain/components/MultiUploadInputComponent.js +0 -190
- package/build/revamp/domain/components/NumberInputComponent.js +0 -125
- package/build/revamp/domain/components/ObjectComponent.js +0 -104
- package/build/revamp/domain/components/ParagraphComponent.js +0 -50
- package/build/revamp/domain/components/ReviewComponent.js +0 -50
- package/build/revamp/domain/components/SelectInputComponent.js +0 -138
- package/build/revamp/domain/components/StatusListComponent.js +0 -50
- package/build/revamp/domain/components/StepDomainComponent.js +0 -72
- package/build/revamp/domain/components/TextInputComponent.js +0 -125
- package/build/revamp/domain/components/UploadInputComponent.js +0 -151
- package/build/revamp/domain/components/repeatableComponent/RepeatableComponent.js +0 -148
- package/build/revamp/domain/components/repeatableComponent/RepeatableComponent.spec.js +0 -145
- package/build/revamp/domain/components/searchComponent/SearchComponent.js +0 -108
- package/build/revamp/domain/components/searchComponent/SearchComponent.spec.js +0 -327
- package/build/revamp/domain/components/utils/component-utils.js +0 -18
- package/build/revamp/domain/components/utils/debounce.js +0 -38
- package/build/revamp/domain/components/utils/debounce.spec.js +0 -72
- package/build/revamp/domain/components/utils/file-utils.js +0 -46
- package/build/revamp/domain/components/utils/isPartialLocalValueMatch.js +0 -38
- package/build/revamp/domain/components/utils/isPartialLocalValueMatch.spec.js +0 -108
- package/build/revamp/domain/features/events/getAnalyticsEventDispatcher.js +0 -25
- package/build/revamp/domain/features/events/getLogggingEventDispatcher.js +0 -11
- package/build/revamp/domain/features/events/index.js +0 -2
- package/build/revamp/domain/features/persistAsync/getComponentPersistAsync.js +0 -133
- package/build/revamp/domain/features/persistAsync/getComponentPersistAsync.spec.js +0 -199
- package/build/revamp/domain/features/persistAsync/getInitialPersistedState.js +0 -6
- package/build/revamp/domain/features/persistAsync/getPerformPersistAsync.js +0 -103
- package/build/revamp/domain/features/persistAsync/getPerformPersistAsync.spec.js +0 -280
- package/build/revamp/domain/features/refresh/getPerformRefresh.js +0 -53
- package/build/revamp/domain/features/search/getPerformSearchFunction.js +0 -104
- package/build/revamp/domain/features/search/getPerformSearchFunction.spec.js +0 -260
- package/build/revamp/domain/features/summary/summary-utils.js +0 -39
- package/build/revamp/domain/features/summary/summary-utils.spec.js +0 -110
- package/build/revamp/domain/features/utils/http-utils.js +0 -34
- package/build/revamp/domain/features/utils/response-utils.js +0 -9
- package/build/revamp/domain/features/validation/spec-utils.js +0 -16
- package/build/revamp/domain/features/validation/validation-functions.js +0 -12
- package/build/revamp/domain/features/validation/validation-functions.spec.js +0 -110
- package/build/revamp/domain/features/validation/value-checks.js +0 -111
- package/build/revamp/domain/features/validation/value-checks.spec.js +0 -204
- package/build/revamp/domain/features/validationAsync/getComponentValidationAsync.js +0 -94
- package/build/revamp/domain/features/validationAsync/getComponentValidationAsync.spec.js +0 -177
- package/build/revamp/domain/features/validationAsync/getInitialValidationState.js +0 -5
- package/build/revamp/domain/features/validationAsync/getPerformValidationAsync.js +0 -107
- package/build/revamp/domain/features/validationAsync/getPerformValidationAsync.spec.js +0 -266
- package/build/revamp/domain/mappers/layout/alertLayoutToComponent.js +0 -12
- package/build/revamp/domain/mappers/layout/boxLayoutToComponents.js +0 -15
- package/build/revamp/domain/mappers/layout/buttonLayoutToComponent.js +0 -64
- package/build/revamp/domain/mappers/layout/columnsLayoutToComponent.js +0 -18
- package/build/revamp/domain/mappers/layout/decisionLayoutToComponent.js +0 -36
- package/build/revamp/domain/mappers/layout/dividerLayoutToComponent.js +0 -5
- package/build/revamp/domain/mappers/layout/formLayoutToComponent.js +0 -26
- package/build/revamp/domain/mappers/layout/headingLayoutToComponent.js +0 -13
- package/build/revamp/domain/mappers/layout/imageLayoutToComponent.js +0 -12
- package/build/revamp/domain/mappers/layout/infoLayoutToComponent.js +0 -12
- package/build/revamp/domain/mappers/layout/instructionsLayoutToComponent.js +0 -18
- package/build/revamp/domain/mappers/layout/listLayoutToComponent.js +0 -30
- package/build/revamp/domain/mappers/layout/loadingIndicatorLayoutToComponent.js +0 -5
- package/build/revamp/domain/mappers/layout/markdownLayoutToComponent.js +0 -12
- package/build/revamp/domain/mappers/layout/modalLayoutToComponent.js +0 -17
- package/build/revamp/domain/mappers/layout/paragraphLayoutToComponent.js +0 -12
- package/build/revamp/domain/mappers/layout/reviewLayoutToComponent.js +0 -51
- package/build/revamp/domain/mappers/layout/searchLayoutToComponent.js +0 -14
- package/build/revamp/domain/mappers/layout/statusListLayoutToComponent.js +0 -11
- package/build/revamp/domain/mappers/mapLayoutToComponent.js +0 -63
- package/build/revamp/domain/mappers/mapSchemaToComponent.js +0 -84
- package/build/revamp/domain/mappers/mapSchemaToComponent.spec.js +0 -197
- package/build/revamp/domain/mappers/mapStepToComponent.js +0 -57
- package/build/revamp/domain/mappers/mapStepToComponent.spec.js +0 -177
- package/build/revamp/domain/mappers/schema/allOfSchemaToComponent.js +0 -29
- package/build/revamp/domain/mappers/schema/arraySchemaToComponent/arraySchemaToComponent.js +0 -35
- package/build/revamp/domain/mappers/schema/arraySchemaToComponent/arraySchemaToMultiUploadComponent.js +0 -63
- package/build/revamp/domain/mappers/schema/arraySchemaToComponent/arraySchemaToRepeatableComponent.js +0 -65
- package/build/revamp/domain/mappers/schema/blobSchemaToComponent.js +0 -30
- package/build/revamp/domain/mappers/schema/booleanSchemaToComponent.js +0 -38
- package/build/revamp/domain/mappers/schema/constSchemaToComponent.js +0 -14
- package/build/revamp/domain/mappers/schema/integerSchemaToComponent.js +0 -36
- package/build/revamp/domain/mappers/schema/numberSchemaToComponent.js +0 -35
- package/build/revamp/domain/mappers/schema/objectSchemaToComponent/objectSchemaToComponent.js +0 -41
- package/build/revamp/domain/mappers/schema/objectSchemaToComponent/objectSchemaToComponent.spec.js +0 -165
- package/build/revamp/domain/mappers/schema/oneOfSchemaToComponent/oneOfSchemaToComponent.js +0 -67
- package/build/revamp/domain/mappers/schema/oneOfSchemaToComponent/oneOfSchemaToComponent.spec.js +0 -316
- package/build/revamp/domain/mappers/schema/stringSchemaToComponent/stringSchemaToComponent.js +0 -14
- package/build/revamp/domain/mappers/schema/stringSchemaToComponent/stringSchemaToComponent.spec.js +0 -220
- package/build/revamp/domain/mappers/schema/stringSchemaToComponent/stringSchemaToDateInputComponent.js +0 -37
- package/build/revamp/domain/mappers/schema/stringSchemaToComponent/stringSchemaToTextInputComponent.js +0 -45
- package/build/revamp/domain/mappers/schema/stringSchemaToComponent/stringSchemaToUploadInputComponent.js +0 -32
- package/build/revamp/domain/mappers/schema/tests/test-utils.js +0 -27
- package/build/revamp/domain/mappers/schema/types.js +0 -1
- package/build/revamp/domain/mappers/schema/utils/getPersistAsyncInitialState.js +0 -35
- package/build/revamp/domain/mappers/schema/utils/getValidationAsyncInitialState.js +0 -25
- package/build/revamp/domain/mappers/schema/utils/mapCommonSchemaProps.js +0 -28
- package/build/revamp/domain/mappers/types.js +0 -1
- package/build/revamp/domain/mappers/utils/getAutocompleteString.js +0 -76
- package/build/revamp/domain/mappers/utils/getAutocompleteString.spec.js +0 -21
- package/build/revamp/domain/mappers/utils/getRandomId.js +0 -2
- package/build/revamp/domain/mappers/utils/legacy-utils.js +0 -53
- package/build/revamp/domain/types.js +0 -1
- package/build/revamp/flow/executeRefresh.js +0 -97
- package/build/revamp/flow/executeSubmission.js +0 -152
- package/build/revamp/flow/getResponseType.js +0 -76
- package/build/revamp/flow/response-utils.js +0 -88
- package/build/revamp/renderers/CoreContainerRenderer.js +0 -8
- package/build/revamp/renderers/LoadingContext.js +0 -7
- package/build/revamp/renderers/StepRenderer.js +0 -23
- package/build/revamp/renderers/mappers/alertComponentToProps.js +0 -4
- package/build/revamp/renderers/mappers/allOfComponentToProps.js +0 -11
- package/build/revamp/renderers/mappers/booleanInputComponentToProps.js +0 -16
- package/build/revamp/renderers/mappers/boxComponentToProps.js +0 -4
- package/build/revamp/renderers/mappers/buttonComponentToProps.js +0 -14
- package/build/revamp/renderers/mappers/columnsComponentToProps.js +0 -4
- package/build/revamp/renderers/mappers/componentToRendererProps.js +0 -105
- package/build/revamp/renderers/mappers/containerComponentToProps.js +0 -4
- package/build/revamp/renderers/mappers/dateInputComponentToProps.js +0 -13
- package/build/revamp/renderers/mappers/decisionComponentToProps.js +0 -4
- package/build/revamp/renderers/mappers/dividerComponentToProps.js +0 -4
- package/build/revamp/renderers/mappers/formComponentToProps.js +0 -4
- package/build/revamp/renderers/mappers/headingComponentToProps.js +0 -11
- package/build/revamp/renderers/mappers/hiddenComponentToProps.js +0 -3
- package/build/revamp/renderers/mappers/imageComponentToProps.js +0 -11
- package/build/revamp/renderers/mappers/instructionsComponentToProps.js +0 -10
- package/build/revamp/renderers/mappers/integerInputComponentToProps.js +0 -13
- package/build/revamp/renderers/mappers/loadingIndicatorComponentToProps.js +0 -9
- package/build/revamp/renderers/mappers/markdownComponentToProps.js +0 -10
- package/build/revamp/renderers/mappers/modalComponentToProps.js +0 -10
- package/build/revamp/renderers/mappers/multiUploadInputComponentToProps.js +0 -24
- package/build/revamp/renderers/mappers/numberInputComponentToProps.js +0 -13
- package/build/revamp/renderers/mappers/objectComponentToProps.js +0 -11
- package/build/revamp/renderers/mappers/paragraphComponentToProps.js +0 -10
- package/build/revamp/renderers/mappers/repeatableComponentToProps.js +0 -40
- package/build/revamp/renderers/mappers/reviewComponentToProps.js +0 -11
- package/build/revamp/renderers/mappers/searchComponentToProps.js +0 -49
- package/build/revamp/renderers/mappers/selectInputComponentToProps.js +0 -29
- package/build/revamp/renderers/mappers/statusListComponentToProps.js +0 -10
- package/build/revamp/renderers/mappers/textInputComponentToProps.js +0 -13
- package/build/revamp/renderers/mappers/uploadInputComponentToProps.js +0 -16
- package/build/revamp/renderers/mappers/utils/inputComponentToProps.js +0 -27
- package/build/revamp/renderers/stepComponentToProps.js +0 -8
- package/build/revamp/renderers/types.js +0 -1
- package/build/revamp/step/Step.js +0 -162
- package/build/revamp/step/utils/getRenderFunction.js +0 -55
- package/build/revamp/step/utils/getSchemaErrorMessageFunction.js +0 -90
- package/build/revamp/stories/utils/mockSearchHandler.js +0 -125
- package/build/revamp/test-utils/component-utils.js +0 -19
- package/build/revamp/test-utils/step-utils.js +0 -6
- package/build/revamp/types.js +0 -1
- package/build/revamp/utils/component-utils.js +0 -86
- package/build/revamp/utils/component-utils.spec.js +0 -385
- package/build/revamp/utils/findComponent.js +0 -29
- package/build/revamp/utils/findComponent.spec.js +0 -92
- package/build/revamp/utils/type-utils.js +0 -56
- package/build/revamp/utils/type-validators.js +0 -16
- package/build/revamp/utils/type-validators.spec.js +0 -163
- package/build/revamp/wise/renderers/AlertRenderer.js +0 -11
- package/build/revamp/wise/renderers/BooleanInputRenderer.js +0 -34
- package/build/revamp/wise/renderers/BoxRenderer.js +0 -30
- package/build/revamp/wise/renderers/ButtonRenderer.js +0 -64
- package/build/revamp/wise/renderers/ColumnsRenderer.js +0 -25
- package/build/revamp/wise/renderers/DateInputRenderer.js +0 -35
- package/build/revamp/wise/renderers/DecisionRenderer.js +0 -29
- package/build/revamp/wise/renderers/DividerRenderer.js +0 -10
- package/build/revamp/wise/renderers/FormRenderer.js +0 -21
- package/build/revamp/wise/renderers/FormSectionRenderer.js +0 -16
- package/build/revamp/wise/renderers/HeadingRenderer.js +0 -57
- package/build/revamp/wise/renderers/ImageRenderer.js +0 -111
- package/build/revamp/wise/renderers/InstructionsRenderer.js +0 -34
- package/build/revamp/wise/renderers/IntegerInputRenderer.js +0 -38
- package/build/revamp/wise/renderers/LoadingIndicatorRenderer.js +0 -11
- package/build/revamp/wise/renderers/MarkdownRenderer.js +0 -22
- package/build/revamp/wise/renderers/ModalRenderer.js +0 -25
- package/build/revamp/wise/renderers/MultiUploadInputRenderer.js +0 -74
- package/build/revamp/wise/renderers/NumberInputRenderer.js +0 -38
- package/build/revamp/wise/renderers/ParagraphRenderer.js +0 -44
- package/build/revamp/wise/renderers/RepeatableRenderer.js +0 -58
- package/build/revamp/wise/renderers/ReviewRenderer.js +0 -46
- package/build/revamp/wise/renderers/SearchRenderer.js +0 -63
- package/build/revamp/wise/renderers/SelectInputRenderer/OptionMedia.js +0 -27
- package/build/revamp/wise/renderers/SelectInputRenderer/RadioInputRendererComponent.js +0 -25
- package/build/revamp/wise/renderers/SelectInputRenderer/SelectInputRenderer.js +0 -30
- package/build/revamp/wise/renderers/SelectInputRenderer/SelectInputRendererComponent.js +0 -56
- package/build/revamp/wise/renderers/SelectInputRenderer/SelectTriggerMedia.js +0 -27
- package/build/revamp/wise/renderers/SelectInputRenderer/TabInputRendererComponent.js +0 -33
- package/build/revamp/wise/renderers/StatusListRenderer.js +0 -32
- package/build/revamp/wise/renderers/TextInputRenderer.js +0 -35
- package/build/revamp/wise/renderers/UploadInputRenderer.js +0 -136
- package/build/revamp/wise/renderers/components/FieldInput.js +0 -20
- package/build/revamp/wise/renderers/components/Help.js +0 -21
- package/build/revamp/wise/renderers/components/LabelContentWithHelp.js +0 -6
- package/build/revamp/wise/renderers/components/UploadFieldInput.js +0 -25
- package/build/revamp/wise/renderers/components/VariableDateInput.js +0 -30
- package/build/revamp/wise/renderers/components/VariableTextInput.js +0 -69
- package/build/revamp/wise/renderers/components/icon/DynamicIcon.js +0 -17
- package/build/revamp/wise/renderers/components/icon/FlagIcon.js +0 -198
- package/build/revamp/wise/renderers/components/icon/NamedIcon.js +0 -19
- package/build/revamp/wise/renderers/components/icon/NavigationOptionMedia.js +0 -31
- package/build/revamp/wise/renderers/getWiseRenderers.js +0 -57
- package/build/revamp/wise/renderers/hooks/useSnackBarIfAvailable.js +0 -6
- package/build/revamp/wise/renderers/utils/file-utils.js +0 -70
- package/build/revamp/wise/renderers/utils/getRandomId.js +0 -2
- package/build/revamp/wise/renderers/utils/input-utils.js +0 -6
- package/build/revamp/wise/renderers/utils/layout-utils.js +0 -31
- package/build/revamp/wise/renderers/utils/value-utils.js +0 -23
- package/build/revamp/wise/renderers/utils/value-utils.spec.js +0 -33
- package/build/revamp/wise/renderers/validators/type-validators.js +0 -15
- package/build/test-utils/NeptuneProviders.js +0 -23
- package/build/test-utils/fetch-utils.js +0 -104
- package/build/test-utils/index.js +0 -2
- package/build/test-utils/rtl-utils.js +0 -20
- package/build/types/revamp/domain/features/events/getLogggingEventDispatcher.d.ts +0 -4
- package/build/types/revamp/domain/features/events/index.d.ts +0 -2
- package/build/types/revamp/step/Step.d.ts +0 -25
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
import { isEqual } from './is-equal';
|
|
2
|
-
describe('isEqual', function () {
|
|
3
|
-
describe('primitives', function () {
|
|
4
|
-
it('will be true for null equality', function () {
|
|
5
|
-
expect(isEqual(null, null)).toBe(true);
|
|
6
|
-
});
|
|
7
|
-
it('will be true for undefined equality', function () {
|
|
8
|
-
expect(isEqual(undefined, undefined)).toBe(true);
|
|
9
|
-
});
|
|
10
|
-
it('will be true for string equality', function () {
|
|
11
|
-
expect(isEqual('a string', 'a string')).toBe(true);
|
|
12
|
-
expect(isEqual('', '')).toBe(true);
|
|
13
|
-
});
|
|
14
|
-
it('will be true for number equality', function () {
|
|
15
|
-
expect(isEqual(0, 0)).toBe(true);
|
|
16
|
-
expect(isEqual(123, 123)).toBe(true);
|
|
17
|
-
expect(isEqual(123.456, 123.456)).toBe(true);
|
|
18
|
-
expect(isEqual(123, 123.0)).toBe(true);
|
|
19
|
-
});
|
|
20
|
-
it('will be true for boolean equality', function () {
|
|
21
|
-
expect(isEqual(false, false)).toBe(true);
|
|
22
|
-
expect(isEqual(true, true)).toBe(true);
|
|
23
|
-
});
|
|
24
|
-
it('will be false for null inequality', function () {
|
|
25
|
-
expect(isEqual(null, undefined)).toBe(false);
|
|
26
|
-
expect(isEqual(null, '')).toBe(false);
|
|
27
|
-
expect(isEqual(null, 0)).toBe(false);
|
|
28
|
-
expect(isEqual(null, {})).toBe(false);
|
|
29
|
-
});
|
|
30
|
-
it('will be false for undefined inequality', function () {
|
|
31
|
-
expect(isEqual(undefined, null)).toBe(false);
|
|
32
|
-
expect(isEqual(undefined, '')).toBe(false);
|
|
33
|
-
expect(isEqual(undefined, 0)).toBe(false);
|
|
34
|
-
expect(isEqual(undefined, {})).toBe(false);
|
|
35
|
-
});
|
|
36
|
-
it('will be false for string inequality', function () {
|
|
37
|
-
expect(isEqual('a string', null)).toBe(false);
|
|
38
|
-
expect(isEqual('a string', '')).toBe(false);
|
|
39
|
-
expect(isEqual('a string', 0)).toBe(false);
|
|
40
|
-
expect(isEqual('a string', {})).toBe(false);
|
|
41
|
-
});
|
|
42
|
-
it('will be false for number inequality', function () {
|
|
43
|
-
expect(isEqual(123, null)).toBe(false);
|
|
44
|
-
expect(isEqual(123, '')).toBe(false);
|
|
45
|
-
expect(isEqual(123, 0)).toBe(false);
|
|
46
|
-
expect(isEqual(123, {})).toBe(false);
|
|
47
|
-
});
|
|
48
|
-
});
|
|
49
|
-
describe('arrays', function () {
|
|
50
|
-
it('will be true for primitive array equality', function () {
|
|
51
|
-
expect(isEqual([1, 2, 3], [1, 2, 3])).toBe(true);
|
|
52
|
-
expect(isEqual(['a', 'b', 'c'], ['a', 'b', 'c'])).toBe(true);
|
|
53
|
-
expect(isEqual([true, false], [true, false])).toBe(true);
|
|
54
|
-
expect(isEqual([null, undefined], [null, undefined])).toBe(true);
|
|
55
|
-
});
|
|
56
|
-
it('will be true for complex array equality', function () {
|
|
57
|
-
expect(isEqual([{ a: 1, b: 2 }, { c: { d: 4 } }], [{ a: 1, b: 2 }, { c: { d: 4 } }])).toBe(true);
|
|
58
|
-
expect(isEqual([{}], [{}])).toBe(true);
|
|
59
|
-
});
|
|
60
|
-
it('will be true for nested array equality', function () {
|
|
61
|
-
expect(isEqual([[1], [2], [3, 4]], [[1], [2], [3, 4]])).toBe(true);
|
|
62
|
-
});
|
|
63
|
-
it('will be false for inequivalent arrays', function () {
|
|
64
|
-
expect(isEqual([1, 2, 3], [4, 5, 6])).toBe(false);
|
|
65
|
-
expect(isEqual([null], [{}])).toBe(false);
|
|
66
|
-
expect(isEqual({ a: 'b' }, { b: 'c' })).toBe(false);
|
|
67
|
-
});
|
|
68
|
-
it('will be false for differently ordered arrays', function () {
|
|
69
|
-
expect(isEqual([1, 2, 3], [3, 2, 1])).toBe(false);
|
|
70
|
-
});
|
|
71
|
-
});
|
|
72
|
-
describe('objects', function () {
|
|
73
|
-
it('will return true for equivalent objects', function () {
|
|
74
|
-
expect(isEqual({ a: 'b', b: 1 }, { a: 'b', b: 1 })).toBe(true);
|
|
75
|
-
expect(isEqual({}, {})).toBe(true);
|
|
76
|
-
});
|
|
77
|
-
it('will return true for nested equivalent objects', function () {
|
|
78
|
-
expect(isEqual({ a: 'b', b: { c: { d: 1 } } }, { b: { c: { d: 1 } }, a: 'b' })).toBe(true);
|
|
79
|
-
expect(isEqual({ a: 'b', b: [1, 2, 3] }, { b: [1, 2, 3], a: 'b' })).toBe(true);
|
|
80
|
-
});
|
|
81
|
-
it('will return false for inequivalent objects', function () {
|
|
82
|
-
expect(isEqual({ a: 'b' }, { b: 1, c: 2 })).toBe(false);
|
|
83
|
-
expect(isEqual({ a: 'c', b: { c: { d: 1 } } }, { b: { c: { d: 1 } }, a: 'b' })).toBe(false);
|
|
84
|
-
expect(isEqual({ a: 'b', b: [1, 2, 3] }, { a: 'b', b: [4, 5, 6] })).toBe(false);
|
|
85
|
-
expect(isEqual({ a: 1 }, { a: 2 })).toBe(false);
|
|
86
|
-
});
|
|
87
|
-
});
|
|
88
|
-
});
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
export var isMobile = function () { return isMobileScreenSize() && (isTouchScreen() || isMobileUA()); };
|
|
2
|
-
export var isMobileUA = function (userAgent) {
|
|
3
|
-
if (userAgent === void 0) { userAgent = window.navigator.userAgent; }
|
|
4
|
-
// eslint-disable-next-line regexp/no-unused-capturing-group
|
|
5
|
-
return /mobi|\b(iphone|android|blackberry|webos|windows phone)\b/i.test(userAgent);
|
|
6
|
-
};
|
|
7
|
-
export var isMobileScreenSize = function (width, height) {
|
|
8
|
-
if (width === void 0) { width = window.screen.width; }
|
|
9
|
-
if (height === void 0) { height = window.screen.height; }
|
|
10
|
-
return width < 768 || height < 768;
|
|
11
|
-
};
|
|
12
|
-
export var isTouchScreen = function (navigator, matchMedia) {
|
|
13
|
-
if (navigator === void 0) { navigator = window.navigator; }
|
|
14
|
-
if (matchMedia === void 0) { matchMedia = window.matchMedia; }
|
|
15
|
-
if ('maxTouchPoints' in navigator) {
|
|
16
|
-
return navigator.maxTouchPoints > 0;
|
|
17
|
-
}
|
|
18
|
-
var mQ = matchMedia === null || matchMedia === void 0 ? void 0 : matchMedia('(pointer:coarse)');
|
|
19
|
-
if ((mQ === null || mQ === void 0 ? void 0 : mQ.media) === '(pointer:coarse)') {
|
|
20
|
-
return Boolean(mQ.matches);
|
|
21
|
-
}
|
|
22
|
-
return false;
|
|
23
|
-
};
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
var __assign = (this && this.__assign) || function () {
|
|
2
|
-
__assign = Object.assign || function(t) {
|
|
3
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
-
s = arguments[i];
|
|
5
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
-
t[p] = s[p];
|
|
7
|
-
}
|
|
8
|
-
return t;
|
|
9
|
-
};
|
|
10
|
-
return __assign.apply(this, arguments);
|
|
11
|
-
};
|
|
12
|
-
import { isMobileUA, isMobileScreenSize, isTouchScreen } from './mobile-utils';
|
|
13
|
-
describe('hasMobileUA', function () {
|
|
14
|
-
it('should return true for iPhone user agent', function () {
|
|
15
|
-
expect(isMobileUA('Mozilla/5.0 (iPhone; CPU iPhone OS 14_0 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0 Mobile/15E148 Safari/604.1')).toBe(true);
|
|
16
|
-
});
|
|
17
|
-
it('should return true for Android user agent', function () {
|
|
18
|
-
expect(isMobileUA('Mozilla/5.0 (Linux; Android 11; Pixel 4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.66 Mobile Safari/537.36')).toBe(true);
|
|
19
|
-
});
|
|
20
|
-
it('should return true for BlackBerry user agent', function () {
|
|
21
|
-
expect(isMobileUA('Mozilla/5.0 (BB10; Touch) AppleWebKit/537.36 (KHTML, like Gecko) Version/10.3.2.2639 Mobile Safari/537.36')).toBe(true);
|
|
22
|
-
});
|
|
23
|
-
it('should return true for webOS user agent', function () {
|
|
24
|
-
expect(isMobileUA('Mozilla/5.0 (webOS/2.2.4; U; en-US) AppleWebKit/534.6 (KHTML, like Gecko) wOSBrowser/234.83 Safari/534.6 Pre/3.0')).toBe(true);
|
|
25
|
-
});
|
|
26
|
-
it('should return true for Windows Phone user agent', function () {
|
|
27
|
-
expect(isMobileUA('Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; Trident/7.0; Touch; rv:11.0; IEMobile/11.0; NOKIA; Lumia 520) like Gecko')).toBe(true);
|
|
28
|
-
});
|
|
29
|
-
it('should return false if user agent indicates desktop', function () {
|
|
30
|
-
expect(isMobileUA('Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.85 Safari/537.36')).toBe(false);
|
|
31
|
-
});
|
|
32
|
-
});
|
|
33
|
-
describe('hasMobileScreenSize', function () {
|
|
34
|
-
it('should return true if screen width < 768px', function () {
|
|
35
|
-
expect(isMobileScreenSize(390, 844)).toBe(true);
|
|
36
|
-
expect(isMobileScreenSize(844, 390)).toBe(true);
|
|
37
|
-
});
|
|
38
|
-
it('should return true if screen height < 768px (landscape mode)', function () {
|
|
39
|
-
expect(isMobileScreenSize(844, 390)).toBe(true);
|
|
40
|
-
});
|
|
41
|
-
it('should return false if screen width > 768px', function () {
|
|
42
|
-
expect(isMobileScreenSize(1024, 768)).toBe(false);
|
|
43
|
-
});
|
|
44
|
-
});
|
|
45
|
-
describe('hasTouchScreen', function () {
|
|
46
|
-
var mockNavigator = {
|
|
47
|
-
userAgent: 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36'
|
|
48
|
-
};
|
|
49
|
-
it('should return true if the device has a touch screen', function () {
|
|
50
|
-
expect(isTouchScreen(__assign(__assign({}, mockNavigator), { maxTouchPoints: 1 }))).toBe(true);
|
|
51
|
-
});
|
|
52
|
-
it('should return false if the device does not have a touch screen', function () {
|
|
53
|
-
expect(isTouchScreen(__assign(__assign({}, mockNavigator), { maxTouchPoints: 0 }))).toBe(false);
|
|
54
|
-
});
|
|
55
|
-
it('should return true if matchMedia indicates a touch screen', function () {
|
|
56
|
-
var mockMatchMedia = jest.fn().mockReturnValue({ media: '(pointer:coarse)', matches: true });
|
|
57
|
-
var result = isTouchScreen(mockNavigator, mockMatchMedia);
|
|
58
|
-
expect(mockMatchMedia).toHaveBeenCalledWith('(pointer:coarse)');
|
|
59
|
-
expect(result).toBe(true);
|
|
60
|
-
});
|
|
61
|
-
it('should return false if matchMedia does not indicate a touch screen', function () {
|
|
62
|
-
var mockMatchMedia = jest.fn().mockReturnValue({ media: '(pointer:coarse)', matches: false });
|
|
63
|
-
var result = isTouchScreen(mockNavigator, mockMatchMedia);
|
|
64
|
-
expect(mockMatchMedia).toHaveBeenCalledWith('(pointer:coarse)');
|
|
65
|
-
expect(result).toBe(false);
|
|
66
|
-
});
|
|
67
|
-
it('should return false when none of the conditions are met', function () {
|
|
68
|
-
var result = isTouchScreen(mockNavigator, undefined);
|
|
69
|
-
expect(result).toBe(false);
|
|
70
|
-
});
|
|
71
|
-
});
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { isArray, isBoolean, isNull, isNumber, isString } from '../validators';
|
|
2
|
-
export var isObjectModel = function (model) {
|
|
3
|
-
return typeof model === 'object' && model !== null && model.constructor === Object;
|
|
4
|
-
};
|
|
5
|
-
export var isNullableObjectModel = function (model) {
|
|
6
|
-
return isNull(model) || isObjectModel(model);
|
|
7
|
-
};
|
|
8
|
-
export var isNullableBasicModel = function (model) {
|
|
9
|
-
return isBoolean(model) || isNumber(model) || isString(model) || isNull(model);
|
|
10
|
-
};
|
|
11
|
-
export var isNullableStringModel = function (model) {
|
|
12
|
-
return isString(model) || isNull(model);
|
|
13
|
-
};
|
|
14
|
-
export var isArrayModel = function (model) {
|
|
15
|
-
if (isArray(model)) {
|
|
16
|
-
if (model.length === 0) {
|
|
17
|
-
return true;
|
|
18
|
-
}
|
|
19
|
-
return model.every(function (item) {
|
|
20
|
-
return typeof item === 'string' ||
|
|
21
|
-
typeof item === 'number' ||
|
|
22
|
-
typeof item === 'boolean' ||
|
|
23
|
-
typeof item === 'object';
|
|
24
|
-
});
|
|
25
|
-
}
|
|
26
|
-
return false;
|
|
27
|
-
};
|
|
28
|
-
export var isNullableArrayModel = function (model) {
|
|
29
|
-
if (isNull(model)) {
|
|
30
|
-
return true;
|
|
31
|
-
}
|
|
32
|
-
return isArrayModel(model);
|
|
33
|
-
};
|
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
import { isObject, isUndefined } from '../validators';
|
|
2
|
-
export function isConstSchema(schema) {
|
|
3
|
-
return !isUndefined(schema === null || schema === void 0 ? void 0 : schema["const"]);
|
|
4
|
-
}
|
|
5
|
-
export function isNoNConstSchema(schema) {
|
|
6
|
-
return Boolean(schema) && !isConstSchema(schema);
|
|
7
|
-
}
|
|
8
|
-
export var isReadOnlySchema = function (schema) {
|
|
9
|
-
return Boolean(schema.readOnly) && isBasicSchema(schema);
|
|
10
|
-
};
|
|
11
|
-
export var isPromotedOneOfSchema = function (schema) {
|
|
12
|
-
return Boolean(schema.oneOf) && Boolean(schema.promotion);
|
|
13
|
-
};
|
|
14
|
-
export var basicTypes = new Set(['string', 'number', 'integer', 'boolean']);
|
|
15
|
-
export function isBasicSchema(schema) {
|
|
16
|
-
return (basicTypes.has(schema.type || '') ||
|
|
17
|
-
('const' in schema && schema["const"] !== undefined && !isObject(schema["const"])));
|
|
18
|
-
}
|
|
19
|
-
export function isObjectSchema(schema) {
|
|
20
|
-
return schema.type === 'object';
|
|
21
|
-
}
|
|
22
|
-
export function isOneOfObjectSchema(schema) {
|
|
23
|
-
return isOneOfSchema(schema) && schema.oneOf.every(function (subSchema) { return subSchema.type === 'object'; });
|
|
24
|
-
}
|
|
25
|
-
export function isOneOfSchema(schema) {
|
|
26
|
-
return Boolean(schema.oneOf);
|
|
27
|
-
}
|
|
28
|
-
export function isAllOfSchema(schema) {
|
|
29
|
-
return Boolean(schema.allOf);
|
|
30
|
-
}
|
|
31
|
-
export function isBlobSchema(schema) {
|
|
32
|
-
return schema.type === 'blob';
|
|
33
|
-
}
|
|
34
|
-
export function isArraySchema(schema) {
|
|
35
|
-
return schema.type === 'array';
|
|
36
|
-
}
|
|
37
|
-
export function isTupleArraySchema(schema) {
|
|
38
|
-
var schemaItems = schema.items;
|
|
39
|
-
return Array.isArray(schemaItems);
|
|
40
|
-
}
|
|
41
|
-
export function isListArraySchema(schema) {
|
|
42
|
-
var schemaItems = schema.items;
|
|
43
|
-
return !Array.isArray(schemaItems);
|
|
44
|
-
}
|
|
45
|
-
export function isStringSchema(schema) {
|
|
46
|
-
return schema.type === 'string';
|
|
47
|
-
}
|
|
48
|
-
export function isPersistAsyncSchema(schema) {
|
|
49
|
-
return Boolean(schema.persistAsync);
|
|
50
|
-
}
|
|
51
|
-
export function isPersistAsyncFileSchema(schema) {
|
|
52
|
-
return (isPersistAsyncSchema(schema) &&
|
|
53
|
-
(isBlobSchema(schema.persistAsync.schema) || isBase64FileSchema(schema.persistAsync.schema)));
|
|
54
|
-
}
|
|
55
|
-
export var isValidationAsyncSchema = function (schema) {
|
|
56
|
-
return isBasicSchema(schema) && Boolean(schema.validationAsync);
|
|
57
|
-
};
|
|
58
|
-
function isBase64FileSchema(schema) {
|
|
59
|
-
return schema.type === 'string' && schema.format === 'base64url';
|
|
60
|
-
}
|
|
61
|
-
export function isFileUploadSchema(schema) {
|
|
62
|
-
return schema.type === 'string' && schema.format === 'base64url';
|
|
63
|
-
}
|
|
64
|
-
export var isMultipleFileUploadSchema = function (schema) {
|
|
65
|
-
return isArraySchema(schema) && isListArraySchema(schema) && isPersistAsyncFileSchema(schema.items);
|
|
66
|
-
};
|
|
67
|
-
export var getSchemaType = function (schema) {
|
|
68
|
-
// Order of application is important here
|
|
69
|
-
if (isReadOnlySchema(schema)) {
|
|
70
|
-
return 'readOnly';
|
|
71
|
-
}
|
|
72
|
-
if (isPersistAsyncSchema(schema)) {
|
|
73
|
-
return 'persistAsync';
|
|
74
|
-
}
|
|
75
|
-
if (isValidationAsyncSchema(schema)) {
|
|
76
|
-
return 'validationAsync';
|
|
77
|
-
}
|
|
78
|
-
if (isObjectSchema(schema)) {
|
|
79
|
-
return 'object';
|
|
80
|
-
}
|
|
81
|
-
if (isArraySchema(schema)) {
|
|
82
|
-
return 'array';
|
|
83
|
-
}
|
|
84
|
-
if (isPromotedOneOfSchema(schema)) {
|
|
85
|
-
return 'promotedOneOf';
|
|
86
|
-
}
|
|
87
|
-
if (isOneOfSchema(schema)) {
|
|
88
|
-
return 'oneOf';
|
|
89
|
-
}
|
|
90
|
-
if (isAllOfSchema(schema)) {
|
|
91
|
-
return 'allOf';
|
|
92
|
-
}
|
|
93
|
-
if (isBasicSchema(schema)) {
|
|
94
|
-
return 'basic';
|
|
95
|
-
}
|
|
96
|
-
return null;
|
|
97
|
-
};
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { isObjectSchema, isFileUploadSchema } from './schema-utils';
|
|
2
|
-
export var isCameraStep = function (step) {
|
|
3
|
-
return isFormStep(step) && hasSingleAction(step) && hasSingleFileUploadSchemaWithCameraOnly(step);
|
|
4
|
-
};
|
|
5
|
-
var isFormStep = function (step) { return !step.type || step.type === 'form'; };
|
|
6
|
-
var hasSingleAction = function (step) { var _a; return ((_a = step === null || step === void 0 ? void 0 : step.actions) === null || _a === void 0 ? void 0 : _a.length) === 1; };
|
|
7
|
-
var hasSingleFileUploadSchemaWithCameraOnly = function (step) {
|
|
8
|
-
if (!step.schemas) {
|
|
9
|
-
return false;
|
|
10
|
-
}
|
|
11
|
-
var schemas = filterHiddenSchemas(step.schemas);
|
|
12
|
-
if ((schemas === null || schemas === void 0 ? void 0 : schemas.length) !== 1) {
|
|
13
|
-
return false;
|
|
14
|
-
}
|
|
15
|
-
var firstSchema = schemas[0];
|
|
16
|
-
if (!isObjectSchema(firstSchema) || Object.values(firstSchema.properties).length !== 1) {
|
|
17
|
-
return false;
|
|
18
|
-
}
|
|
19
|
-
var childSchema = Object.values(firstSchema.properties)[0];
|
|
20
|
-
if (!isFileUploadSchema(childSchema)) {
|
|
21
|
-
return false;
|
|
22
|
-
}
|
|
23
|
-
return childSchema.source === 'camera';
|
|
24
|
-
};
|
|
25
|
-
export var filterHiddenSchemas = function (schemas) {
|
|
26
|
-
return schemas.filter(function (schema) {
|
|
27
|
-
if (isObjectSchema(schema)) {
|
|
28
|
-
return Object.values((schema === null || schema === void 0 ? void 0 : schema.properties) || {}).find(function (schema) { return (schema === null || schema === void 0 ? void 0 : schema.hidden) !== true; });
|
|
29
|
-
}
|
|
30
|
-
return (schema === null || schema === void 0 ? void 0 : schema.hidden) !== true;
|
|
31
|
-
});
|
|
32
|
-
};
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export { getValidModelParts, getValidObjectModelParts, getValidBasicModelOrNull, } from './models/model-validators';
|
|
2
|
-
export { isValidSchema } from './schemas/schema-validators';
|
|
3
|
-
export { getValidationFailures, getArrayValidationFailures, } from './validationFailures/validation-failures';
|
|
4
|
-
export * from './types/type-validators';
|
|
5
|
-
export * from './values/value-validators';
|
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
var __assign = (this && this.__assign) || function () {
|
|
2
|
-
__assign = Object.assign || function(t) {
|
|
3
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
-
s = arguments[i];
|
|
5
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
-
t[p] = s[p];
|
|
7
|
-
}
|
|
8
|
-
return t;
|
|
9
|
-
};
|
|
10
|
-
return __assign.apply(this, arguments);
|
|
11
|
-
};
|
|
12
|
-
import { isObjectModel, isArraySchema, isListArraySchema } from '../../utils';
|
|
13
|
-
import { isArray, isBoolean, isNull, isNumber, isString, isUndefined, } from '../types/type-validators';
|
|
14
|
-
import { isEmpty } from '../values/value-validators';
|
|
15
|
-
import { getValidBasicModelOrNull, getValidModelParts, getValidObjectModelParts, } from './model-validators';
|
|
16
|
-
export function cleanBasicModelWithOneOfSchema(model, schema) {
|
|
17
|
-
return schema.oneOf.some(function (nestedSchema) { return getValidBasicModelOrNull(model, nestedSchema) === model; })
|
|
18
|
-
? model
|
|
19
|
-
: null;
|
|
20
|
-
}
|
|
21
|
-
export function cleanArrayModelWithOneOfSchema(model, schema) {
|
|
22
|
-
var _a;
|
|
23
|
-
var validModels = schema.oneOf
|
|
24
|
-
.map(function (nestedSchema) { return getValidArrayModelOrNull(model, nestedSchema); })
|
|
25
|
-
.filter(function (item) { return item !== null; });
|
|
26
|
-
if (validModels.length === 0) {
|
|
27
|
-
return null;
|
|
28
|
-
}
|
|
29
|
-
return (_a = validModels.find(function (model) { return model.some(function (item) { return item !== null; }); })) !== null && _a !== void 0 ? _a : validModels[0];
|
|
30
|
-
}
|
|
31
|
-
function getValidArrayModelOrNull(model, schema) {
|
|
32
|
-
if (!isArraySchema(schema)) {
|
|
33
|
-
return null;
|
|
34
|
-
}
|
|
35
|
-
if (!isListArraySchema(schema)) {
|
|
36
|
-
return null; // we don't support tuples at the moment
|
|
37
|
-
}
|
|
38
|
-
return cleanModelWithArraySchema(model, schema);
|
|
39
|
-
}
|
|
40
|
-
export function cleanModelWithStringSchema(model) {
|
|
41
|
-
return isString(model) && !isEmpty(model) ? model : null;
|
|
42
|
-
}
|
|
43
|
-
export function cleanModelWithNumberSchema(model) {
|
|
44
|
-
return isNumber(model) ? model : null;
|
|
45
|
-
}
|
|
46
|
-
export function cleanModelWithBooleanSchema(model) {
|
|
47
|
-
return isBoolean(model) ? model : null;
|
|
48
|
-
}
|
|
49
|
-
export function cleanModelWithArraySchema(model, schema) {
|
|
50
|
-
if (!isArray(model)) {
|
|
51
|
-
return null;
|
|
52
|
-
}
|
|
53
|
-
if (!isListArraySchema(schema)) {
|
|
54
|
-
return null; // we don't support tuples at the moment
|
|
55
|
-
}
|
|
56
|
-
if (model.length > 0) {
|
|
57
|
-
var expectedType_1 = typeof model[0];
|
|
58
|
-
// eslint-disable-next-line valid-typeof
|
|
59
|
-
if (!model.every(function (item) { return typeof item === expectedType_1; })) {
|
|
60
|
-
return new Array(model.length).fill(null);
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
return model.map(function (childModel) { return getValidModelParts(childModel, schema.items); });
|
|
64
|
-
}
|
|
65
|
-
export function cleanObjectModelWithObjectSchema(model, schema) {
|
|
66
|
-
return Object.keys(schema.properties).reduce(function (cleanedModel, property) {
|
|
67
|
-
var _a;
|
|
68
|
-
// If the property exists in the model, clean it, and add it
|
|
69
|
-
if (model && !isUndefined(model[property])) {
|
|
70
|
-
var subModel = model[property];
|
|
71
|
-
var subSchema = schema.properties[property];
|
|
72
|
-
var newValue = getValidModelParts(subModel, subSchema);
|
|
73
|
-
if (!isNull(newValue)) {
|
|
74
|
-
return __assign(__assign({}, cleanedModel), (_a = {}, _a[property] = newValue, _a));
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
return cleanedModel;
|
|
78
|
-
}, {});
|
|
79
|
-
}
|
|
80
|
-
export function cleanObjectModelWithAllOfSchema(model, schema) {
|
|
81
|
-
return schema.allOf.reduce(function (cleanObjectModel, nestedSchema) {
|
|
82
|
-
var validSubsetOfModel = getValidObjectModelParts(model, nestedSchema);
|
|
83
|
-
if (isObjectModel(validSubsetOfModel)) {
|
|
84
|
-
// Extend model with valid subset
|
|
85
|
-
return __assign(__assign({}, cleanObjectModel), validSubsetOfModel);
|
|
86
|
-
}
|
|
87
|
-
return cleanObjectModel;
|
|
88
|
-
}, {});
|
|
89
|
-
}
|
|
90
|
-
export function cleanObjectModelWithOneOfSchema(model, schema) {
|
|
91
|
-
return schema.oneOf
|
|
92
|
-
.map(function (nestedSchema) { return getValidObjectModelParts(model, nestedSchema); })
|
|
93
|
-
.reduce(function (combined, current) {
|
|
94
|
-
// If we didn't find anything valid yet, and current is good, return it
|
|
95
|
-
if (isNull(combined)) {
|
|
96
|
-
return current;
|
|
97
|
-
}
|
|
98
|
-
// If we're dealing with two objects, deep merge them into one
|
|
99
|
-
if (isObjectModel(combined) && isObjectModel(current)) {
|
|
100
|
-
return deepMergeObject(combined, current);
|
|
101
|
-
}
|
|
102
|
-
// If the current one is null, return what we already had
|
|
103
|
-
if (isNull(current)) {
|
|
104
|
-
return combined;
|
|
105
|
-
}
|
|
106
|
-
return current;
|
|
107
|
-
}, null);
|
|
108
|
-
}
|
|
109
|
-
function deepMergeObject(object1, object2) {
|
|
110
|
-
return Object.keys(object2).reduce(function (acc, property) {
|
|
111
|
-
var _a, _b;
|
|
112
|
-
var object1Property = object1[property];
|
|
113
|
-
var object2Property = object2[property];
|
|
114
|
-
if (isObjectModel(object1Property) && isObjectModel(object2Property)) {
|
|
115
|
-
return __assign(__assign({}, acc), (_a = {}, _a[property] = deepMergeObject(object1Property, object2Property), _a));
|
|
116
|
-
}
|
|
117
|
-
return __assign(__assign({}, acc), (_b = {}, _b[property] = object2[property], _b));
|
|
118
|
-
}, __assign({}, object1));
|
|
119
|
-
}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { cleanModelWithArraySchema } from './model-utils';
|
|
2
|
-
var basicArray = {
|
|
3
|
-
type: 'array',
|
|
4
|
-
items: {
|
|
5
|
-
title: 'Email',
|
|
6
|
-
type: 'string'
|
|
7
|
-
}
|
|
8
|
-
};
|
|
9
|
-
var objectArray = {
|
|
10
|
-
type: 'array',
|
|
11
|
-
addItemTitle: '',
|
|
12
|
-
editItemTitle: '',
|
|
13
|
-
items: {
|
|
14
|
-
type: 'object',
|
|
15
|
-
displayOrder: ['name', 'terms'],
|
|
16
|
-
properties: {
|
|
17
|
-
name: {
|
|
18
|
-
title: 'Full name',
|
|
19
|
-
type: 'string'
|
|
20
|
-
},
|
|
21
|
-
terms: {
|
|
22
|
-
title: 'I agree to the terms and conditions',
|
|
23
|
-
type: 'boolean'
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
};
|
|
28
|
-
describe('cleanModelWithArraySchema', function () {
|
|
29
|
-
it('should return null if the model is not an array', function () {
|
|
30
|
-
expect(cleanModelWithArraySchema('foo', basicArray)).toBeNull();
|
|
31
|
-
});
|
|
32
|
-
it('should return an empty array if the model is an empty array', function () {
|
|
33
|
-
expect(cleanModelWithArraySchema([], basicArray)).toStrictEqual([]);
|
|
34
|
-
});
|
|
35
|
-
// This is kind of strange behaviour, but it's existing, so I don't want to change it
|
|
36
|
-
it('should return an array of nulls if the model has items with different types', function () {
|
|
37
|
-
expect(cleanModelWithArraySchema(['foo', 1], basicArray)).toStrictEqual([null, null]);
|
|
38
|
-
});
|
|
39
|
-
it('should return the model if the model is a non-empty array', function () {
|
|
40
|
-
expect(cleanModelWithArraySchema(['foo'], basicArray)).toStrictEqual(['foo']);
|
|
41
|
-
});
|
|
42
|
-
it('should return valid model parts of each item in the array', function () {
|
|
43
|
-
expect(cleanModelWithArraySchema([{ name: 'foo', terms: true }, { cat: 'chaos' }], objectArray)).toStrictEqual([{ name: 'foo', terms: true }, {}]);
|
|
44
|
-
});
|
|
45
|
-
});
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { isArrayModel, isObjectModel, isBasicSchema, isOneOfSchema, isArraySchema, isObjectSchema, isEqual, } from '../../utils';
|
|
2
|
-
import { isNull, isUndefined } from '..';
|
|
3
|
-
import { cleanArrayModelWithOneOfSchema, cleanBasicModelWithOneOfSchema, cleanModelWithArraySchema, cleanModelWithBooleanSchema, cleanModelWithNumberSchema, cleanModelWithStringSchema, cleanObjectModelWithAllOfSchema, cleanObjectModelWithObjectSchema, cleanObjectModelWithOneOfSchema, } from './model-utils';
|
|
4
|
-
export var getValidModelParts = function (model, schema) {
|
|
5
|
-
if (isObjectModel(model)) {
|
|
6
|
-
return getValidObjectModelParts(model, schema);
|
|
7
|
-
}
|
|
8
|
-
if (isArrayModel(model)) {
|
|
9
|
-
return getValidArrayModelParts(model, schema);
|
|
10
|
-
}
|
|
11
|
-
return getValidBasicModelOrNull(model, schema);
|
|
12
|
-
};
|
|
13
|
-
export function getValidBasicModelOrNull(model, schema) {
|
|
14
|
-
if (isNull(model)) {
|
|
15
|
-
return null;
|
|
16
|
-
}
|
|
17
|
-
if (schema.oneOf) {
|
|
18
|
-
return cleanBasicModelWithOneOfSchema(model, schema);
|
|
19
|
-
}
|
|
20
|
-
if (!isUndefined(schema["const"]) && model === schema["const"]) {
|
|
21
|
-
return model;
|
|
22
|
-
}
|
|
23
|
-
if (schema.type) {
|
|
24
|
-
switch (schema.type) {
|
|
25
|
-
case 'string':
|
|
26
|
-
return cleanModelWithStringSchema(model);
|
|
27
|
-
case 'number':
|
|
28
|
-
case 'integer':
|
|
29
|
-
return cleanModelWithNumberSchema(model);
|
|
30
|
-
case 'boolean':
|
|
31
|
-
return cleanModelWithBooleanSchema(model);
|
|
32
|
-
default:
|
|
33
|
-
return null;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
// Unrecognised schema
|
|
37
|
-
return null;
|
|
38
|
-
}
|
|
39
|
-
export function getValidObjectModelParts(model, schema) {
|
|
40
|
-
if (isBasicSchema(schema) || isArraySchema(schema) || isNull(model)) {
|
|
41
|
-
return null;
|
|
42
|
-
}
|
|
43
|
-
if (schema.allOf) {
|
|
44
|
-
return cleanObjectModelWithAllOfSchema(model, schema);
|
|
45
|
-
}
|
|
46
|
-
if (schema.oneOf) {
|
|
47
|
-
return cleanObjectModelWithOneOfSchema(model, schema);
|
|
48
|
-
}
|
|
49
|
-
if (!isUndefined(schema["const"]) && isEqual(model, schema["const"])) {
|
|
50
|
-
return model;
|
|
51
|
-
}
|
|
52
|
-
return isObjectSchema(schema) ? cleanObjectModelWithObjectSchema(model, schema) : null;
|
|
53
|
-
}
|
|
54
|
-
function getValidArrayModelParts(model, schema) {
|
|
55
|
-
if (isOneOfSchema(schema)) {
|
|
56
|
-
return cleanArrayModelWithOneOfSchema(model, schema);
|
|
57
|
-
}
|
|
58
|
-
if (!isArraySchema(schema)) {
|
|
59
|
-
return null;
|
|
60
|
-
}
|
|
61
|
-
return cleanModelWithArraySchema(model, schema);
|
|
62
|
-
}
|