@vertigis/workflow 5.46.1 → 5.48.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/Activator.js +1 -1
- package/Collections.js +1 -1
- package/EnumUtils.js +1 -1
- package/Errors.js +1 -1
- package/Hooks.js +1 -1
- package/IActivityHandler.d.ts +2 -1
- package/IActivityHandler.js +1 -0
- package/LanguageStringUtils.js +1 -1
- package/ProgramInspectorFacility.js +1 -1
- package/Task.js +1 -1
- package/TemplateUtils.js +1 -1
- package/Validation.js +1 -1
- package/activities/app/GetApplicationData.js +1 -1
- package/activities/app/GetApplicationInfo.js +1 -1
- package/activities/app/GetUserInfo.js +1 -1
- package/activities/app/PublishEvent.js +1 -1
- package/activities/app/RemoveApplicationData.d.ts +2 -1
- package/activities/app/RemoveApplicationData.js +1 -1
- package/activities/app/RunCommand.js +1 -1
- package/activities/app/RunOperation.js +1 -1
- package/activities/app/SetApplicationData.js +1 -1
- package/activities/app/applicationData.js +1 -1
- package/activities/arcgis/AddAttachment.js +1 -1
- package/activities/arcgis/AddFeatureLayer.js +1 -1
- package/activities/arcgis/AddFeatures.js +1 -1
- package/activities/arcgis/AddGraphics.js +1 -1
- package/activities/arcgis/ArcadeScript.js +1 -1
- package/activities/arcgis/AreaEngineTask.js +1 -1
- package/activities/arcgis/BufferEngineTask.d.ts +2 -2
- package/activities/arcgis/BufferEngineTask.js +1 -1
- package/activities/arcgis/BufferServiceTask.js +1 -1
- package/activities/arcgis/CastGeometry.d.ts +1 -1
- package/activities/arcgis/CastGeometry.js +1 -1
- package/activities/arcgis/ClearGraphics.js +1 -1
- package/activities/arcgis/ClipEngineTask.d.ts +4 -4
- package/activities/arcgis/ClipEngineTask.js +1 -1
- package/activities/arcgis/ClosestFacilityTask.js +1 -1
- package/activities/arcgis/CompareGeometries.d.ts +3 -3
- package/activities/arcgis/CompareGeometries.js +1 -1
- package/activities/arcgis/ConvertValueToArcGisFieldType.js +1 -1
- package/activities/arcgis/CreateFeatureSet.js +1 -1
- package/activities/arcgis/CreateGraphic.d.ts +1 -1
- package/activities/arcgis/CreateGraphic.js +1 -1
- package/activities/arcgis/CreatePoint.js +1 -1
- package/activities/arcgis/CutEngineTask.d.ts +2 -2
- package/activities/arcgis/CutEngineTask.js +1 -1
- package/activities/arcgis/DeleteAttachments.js +1 -1
- package/activities/arcgis/DeleteFeatures.js +1 -1
- package/activities/arcgis/DensifyEngineTask.d.ts +3 -3
- package/activities/arcgis/DensifyEngineTask.js +1 -1
- package/activities/arcgis/DifferenceEngineTask.d.ts +5 -5
- package/activities/arcgis/DifferenceEngineTask.js +1 -1
- package/activities/arcgis/DistanceEngineTask.d.ts +4 -4
- package/activities/arcgis/DistanceEngineTask.js +1 -1
- package/activities/arcgis/DistanceServiceTask.js +1 -1
- package/activities/arcgis/ExtendedSpatialReferenceInfoEngineTask.js +1 -1
- package/activities/arcgis/FeatureSetFromJson.js +1 -1
- package/activities/arcgis/FlipEngineTask.d.ts +3 -3
- package/activities/arcgis/FlipEngineTask.js +1 -1
- package/activities/arcgis/FromGeoCoordinateStringServiceTask.js +1 -1
- package/activities/arcgis/GeneralizeEngineTask.d.ts +4 -4
- package/activities/arcgis/GeneralizeEngineTask.js +1 -1
- package/activities/arcgis/GenerateArcGisToken.js +1 -1
- package/activities/arcgis/GenerateWebmapForReport.js +1 -1
- package/activities/arcgis/Geocode.js +1 -1
- package/activities/arcgis/GeometryFromJson.js +1 -1
- package/activities/arcgis/Geoprocessing.js +1 -1
- package/activities/arcgis/GeoprocessingAsync.js +1 -1
- package/activities/arcgis/GetAttributeValue.js +1 -1
- package/activities/arcgis/GetAttributeValues.js +1 -1
- package/activities/arcgis/GetCentroid.js +1 -1
- package/activities/arcgis/GetCodedValueDomain.js +1 -1
- package/activities/arcgis/GetCurrentPosition.js +1 -1
- package/activities/arcgis/GetFeatureGeometries.d.ts +2 -2
- package/activities/arcgis/GetFeatureGeometries.js +1 -1
- package/activities/arcgis/GetFeatureGeometry.d.ts +1 -1
- package/activities/arcgis/GetFeatureGeometry.js +1 -1
- package/activities/arcgis/GetFeatureLayerInfo.js +1 -1
- package/activities/arcgis/GetFeatureSetExtent.js +1 -1
- package/activities/arcgis/GetFeatureSetObjectIds.js +1 -1
- package/activities/arcgis/GetFormElementItemsFromFeatures.js +1 -1
- package/activities/arcgis/GetGeometryExtent.js +1 -1
- package/activities/arcgis/GetGraphics.js +1 -1
- package/activities/arcgis/GetLayer.js +1 -1
- package/activities/arcgis/GetLayerDefinitionExpression.js +1 -1
- package/activities/arcgis/GetLayerProperty.js +1 -1
- package/activities/arcgis/GetLayerVisibility.js +1 -1
- package/activities/arcgis/GetMapScreenshot.js +1 -1
- package/activities/arcgis/GetPortalUser.js +1 -1
- package/activities/arcgis/GetTable.js +1 -1
- package/activities/arcgis/IntersectEngineTask.d.ts +5 -5
- package/activities/arcgis/IntersectEngineTask.js +1 -1
- package/activities/arcgis/LabelPointsServiceTask.js +1 -1
- package/activities/arcgis/LengthEngineTask.d.ts +2 -2
- package/activities/arcgis/LengthEngineTask.js +1 -1
- package/activities/arcgis/MapProvider.d.ts +10 -10
- package/activities/arcgis/MapProvider.js +1 -1
- package/activities/arcgis/NearestCoordinateEngineTask.d.ts +2 -2
- package/activities/arcgis/NearestCoordinateEngineTask.js +1 -1
- package/activities/arcgis/NearestVertexEngineTask.d.ts +2 -2
- package/activities/arcgis/NearestVertexEngineTask.js +1 -1
- package/activities/arcgis/NearestVerticesEngineTask.d.ts +2 -2
- package/activities/arcgis/NearestVerticesEngineTask.js +1 -1
- package/activities/arcgis/OffsetEngineTask.d.ts +4 -4
- package/activities/arcgis/OffsetEngineTask.js +1 -1
- package/activities/arcgis/ProjectServiceTask.d.ts +3 -3
- package/activities/arcgis/ProjectServiceTask.js +1 -1
- package/activities/arcgis/QueryAttachmentInfos.js +1 -1
- package/activities/arcgis/QueryTask.d.ts +1 -1
- package/activities/arcgis/QueryTask.js +1 -1
- package/activities/arcgis/RefreshLayer.js +1 -1
- package/activities/arcgis/RegisterCorsUrl.js +1 -1
- package/activities/arcgis/RelateEngineTask.d.ts +2 -2
- package/activities/arcgis/RelateEngineTask.js +1 -1
- package/activities/arcgis/RelationServiceTask.d.ts +2 -2
- package/activities/arcgis/RelationServiceTask.js +1 -1
- package/activities/arcgis/RelationshipQueryTask.js +1 -1
- package/activities/arcgis/RemoveFeatureSetFields.js +1 -1
- package/activities/arcgis/RemoveGraphics.js +1 -1
- package/activities/arcgis/RemoveLayer.js +1 -1
- package/activities/arcgis/RendererFromJson.js +1 -1
- package/activities/arcgis/ResetAllLayerDefinitionExpressions.js +1 -1
- package/activities/arcgis/ResetLayerDefinitionExpression.js +1 -1
- package/activities/arcgis/ReshapeServiceTask.d.ts +1 -1
- package/activities/arcgis/ReshapeServiceTask.js +1 -1
- package/activities/arcgis/ReverseGeocode.js +1 -1
- package/activities/arcgis/RotateEngineTask.d.ts +2 -2
- package/activities/arcgis/RotateEngineTask.js +1 -1
- package/activities/arcgis/RouteTask.js +1 -1
- package/activities/arcgis/RunPrint.js +1 -1
- package/activities/arcgis/RunReport.d.ts +8 -2
- package/activities/arcgis/RunReport.js +1 -1
- package/activities/arcgis/RunWorkflow.js +1 -1
- package/activities/arcgis/SendLayerToAttributeTable.js +1 -1
- package/activities/arcgis/ServiceAreaTask.js +1 -1
- package/activities/arcgis/SetFeatureAttribute.js +1 -1
- package/activities/arcgis/SetFeatureGeometry.d.ts +1 -1
- package/activities/arcgis/SetFeatureGeometry.js +1 -1
- package/activities/arcgis/SetFeaturePopup.js +1 -1
- package/activities/arcgis/SetFeatureSymbol.d.ts +1 -1
- package/activities/arcgis/SetFeatureSymbol.js +1 -1
- package/activities/arcgis/SetImageryLayerOptions.js +1 -1
- package/activities/arcgis/SetLayerDefinitionExpression.js +1 -1
- package/activities/arcgis/SetLayerPopup.js +1 -1
- package/activities/arcgis/SetLayerProperty.js +1 -1
- package/activities/arcgis/SetLayerVisibility.js +1 -1
- package/activities/arcgis/SetMap.js +1 -1
- package/activities/arcgis/SetViewExtent.js +1 -1
- package/activities/arcgis/SetViewpoint.js +1 -1
- package/activities/arcgis/ShowFeaturePopup.js +1 -1
- package/activities/arcgis/ShowResults.js +1 -1
- package/activities/arcgis/SimplifyEngineTask.d.ts +3 -3
- package/activities/arcgis/SimplifyEngineTask.js +1 -1
- package/activities/arcgis/SortFeatureSet.js +1 -1
- package/activities/arcgis/SymbolFromJson.js +1 -1
- package/activities/arcgis/ToGeoCoordinateStringServiceTask.js +1 -1
- package/activities/arcgis/TypeChecking.js +1 -1
- package/activities/arcgis/UnionEngineTask.d.ts +4 -4
- package/activities/arcgis/UnionEngineTask.js +1 -1
- package/activities/arcgis/UnionServiceTask.d.ts +3 -3
- package/activities/arcgis/UnionServiceTask.js +1 -1
- package/activities/arcgis/UpdateAttachment.js +1 -1
- package/activities/arcgis/UpdateFeatures.js +1 -1
- package/activities/arcgis/libs/arcGisRestApi.js +1 -0
- package/activities/arcgis/printing.d.ts +13 -12
- package/activities/arcgis/printing.js +1 -1
- package/activities/arcgis/printingFields.d.ts +2 -63
- package/activities/arcgis/printingFields.js +1 -1
- package/activities/arcgis/runUtils.d.ts +0 -18
- package/activities/arcgis/runUtils.js +1 -1
- package/activities/arcgis/shared.d.ts +1 -0
- package/activities/arcgis/shared.js +1 -1
- package/activities/arcgis/tools.d.ts +2 -22
- package/activities/arcgis/tools.js +1 -1
- package/activities/browser/GetBrowserInfo.js +1 -1
- package/activities/browser/InjectCss.js +1 -1
- package/activities/constants.js +1 -1
- package/activities/core/AddItem.js +1 -1
- package/activities/core/AddItems.js +1 -1
- package/activities/core/Annotation.js +1 -1
- package/activities/core/AwaitAsyncActivity.d.ts +9 -0
- package/activities/core/AwaitAsyncActivity.js +1 -0
- package/activities/core/CalculateDate.js +1 -1
- package/activities/core/Cast.js +1 -1
- package/activities/core/ChannelProvider.d.ts +3 -2
- package/activities/core/ChannelProvider.js +1 -1
- package/activities/core/ClearItems.js +1 -1
- package/activities/core/Container.js +1 -1
- package/activities/core/ConvertBytesToText.js +1 -1
- package/activities/core/ConvertDataTableToFeatureSet.js +1 -1
- package/activities/core/ConvertTextToBytes.js +1 -1
- package/activities/core/ConvertToJson.js +1 -1
- package/activities/core/CreateFile.js +1 -1
- package/activities/core/CreateValue.js +1 -1
- package/activities/core/DecodeUriComponent.js +1 -1
- package/activities/core/Delay.js +1 -1
- package/activities/core/EncodeUriComponent.js +1 -1
- package/activities/core/Evaluate.js +1 -1
- package/activities/core/EvaluateAsync.js +1 -1
- package/activities/core/ExecuteFunction.js +1 -1
- package/activities/core/Exit.js +1 -1
- package/activities/core/ForEach.js +1 -1
- package/activities/core/FormatDate.js +1 -1
- package/activities/core/Function.js +1 -1
- package/activities/core/GetBase64StringFromBytes.js +1 -1
- package/activities/core/GetBase64StringFromFile.js +1 -1
- package/activities/core/GetBytesFromBase64String.js +1 -1
- package/activities/core/GetFirstItem.js +1 -1
- package/activities/core/GetItemAtIndex.js +1 -1
- package/activities/core/GetLastItem.js +1 -1
- package/activities/core/GetLogLevel.js +1 -1
- package/activities/core/GetTextFromFile.js +1 -1
- package/activities/core/GetWorkflowInputs.js +1 -1
- package/activities/core/If.js +1 -1
- package/activities/core/Log.js +1 -1
- package/activities/core/Loop.js +1 -1
- package/activities/core/ParseJson.js +1 -1
- package/activities/core/ParseNumber.js +1 -1
- package/activities/core/ParseUrl.js +1 -1
- package/activities/core/Placeholder.js +1 -1
- package/activities/core/RegexMatches.js +1 -1
- package/activities/core/RegexReplace.js +1 -1
- package/activities/core/RemoveItem.js +1 -1
- package/activities/core/RunActivity.js +1 -1
- package/activities/core/SetLogLevel.js +1 -1
- package/activities/core/SetProperty.js +1 -1
- package/activities/core/SetWorkflowOutput.js +1 -1
- package/activities/core/Switch.js +1 -1
- package/activities/core/TextReplace.js +1 -1
- package/activities/core/Throw.js +1 -1
- package/activities/core/TryCatch.js +1 -1
- package/activities/core/WebRequest.js +1 -1
- package/activities/core/converters.js +1 -1
- package/activities/csv/ConvertCsvToDataTable.js +1 -1
- package/activities/csv/ConvertDataTableToCsv.js +1 -1
- package/activities/csv/ParseCsv.js +1 -1
- package/activities/essentials/GetEssentialsSite.d.ts +15 -14
- package/activities/essentials/GetEssentialsSite.js +1 -1
- package/activities/essentials/RunEssentialsWorkflow.js +1 -1
- package/activities/essentials/RunEssentialsWorkflowActivity.js +1 -1
- package/activities/forms/ActivateFormElement.js +1 -1
- package/activities/forms/AddFormElement.js +1 -1
- package/activities/forms/ClearFormElementError.js +1 -1
- package/activities/forms/CompleteForm.js +1 -1
- package/activities/forms/DisplayForm.js +1 -1
- package/activities/forms/Errors.js +1 -1
- package/activities/forms/FilterFormElementItems.js +1 -1
- package/activities/forms/FormActor.d.ts +1 -2
- package/activities/forms/FormActor.js +1 -1
- package/activities/forms/FormElementMap.js +1 -1
- package/activities/forms/FormRenderer.js +1 -1
- package/activities/forms/GetFormElementItemsFromCollection.js +1 -1
- package/activities/forms/GetFormElementProperty.js +1 -1
- package/activities/forms/GetFormElementValue.js +1 -1
- package/activities/forms/GetFormEventData.js +1 -1
- package/activities/forms/HideFormElement.js +1 -1
- package/activities/forms/PropagateFormEvent.js +1 -1
- package/activities/forms/SetCurrentFormElementItem.js +1 -1
- package/activities/forms/SetFormElementError.js +1 -1
- package/activities/forms/SetFormElementEvent.js +1 -1
- package/activities/forms/SetFormElementItemProperty.js +1 -1
- package/activities/forms/SetFormElementItems.js +1 -1
- package/activities/forms/SetFormElementLimits.js +1 -1
- package/activities/forms/SetFormElementProperty.js +1 -1
- package/activities/forms/ShowFormElement.js +1 -1
- package/activities/image/GetImageMetadata.js +1 -1
- package/activities/image/RotateImage.js +1 -1
- package/activities/index.js +1 -1
- package/activities/main.js +1 -1
- package/activities/math/Abs.js +1 -1
- package/activities/math/Cos.js +1 -1
- package/activities/math/Max.js +1 -1
- package/activities/math/Min.js +1 -1
- package/activities/math/Pow.js +1 -1
- package/activities/math/Random.js +1 -1
- package/activities/math/Sin.js +1 -1
- package/activities/math/Sqrt.js +1 -1
- package/activities/math/Tan.js +1 -1
- package/activities/pdf/AddGeoreferenceToPdf.js +1 -1
- package/activities/pdf/AddImageToPdf.js +1 -1
- package/activities/pdf/AddTextToPdf.js +1 -1
- package/activities/pdf/CreatePdf.js +1 -1
- package/activities/pdf/ExtractPdfPages.js +1 -1
- package/activities/pdf/MergePdfs.js +1 -1
- package/activities/server/CopyFile.js +1 -1
- package/activities/server/CreateDirectory.js +1 -1
- package/activities/server/CreateDownload.js +1 -1
- package/activities/server/CreateEmailAttachment.js +1 -1
- package/activities/server/CreateZipFromDirectory.js +1 -1
- package/activities/server/DeleteDirectory.js +1 -1
- package/activities/server/DeleteFile.js +1 -1
- package/activities/server/DirectoryExists.js +1 -1
- package/activities/server/ExtractZipToDirectory.js +1 -1
- package/activities/server/FileExists.js +1 -1
- package/activities/server/GetDirectoriesInDirectory.js +1 -1
- package/activities/server/GetFilesInDirectory.js +1 -1
- package/activities/server/MoveFile.js +1 -1
- package/activities/server/ReadFile.js +1 -1
- package/activities/server/ReadFileBytes.js +1 -1
- package/activities/server/RunApplication.js +1 -1
- package/activities/server/RunPython.js +1 -1
- package/activities/server/SendEmail.js +1 -1
- package/activities/server/SqlNonQuery.js +1 -1
- package/activities/server/SqlQuery.js +1 -1
- package/activities/server/SqlQueryUnsafe.js +1 -1
- package/activities/server/WriteFile.js +1 -1
- package/activities/server/WriteFileBytes.js +1 -1
- package/activities/ui/Alert.js +1 -1
- package/activities/ui/Confirm.js +1 -1
- package/activities/ui/DialogContent.js +1 -1
- package/activities/ui/DialogProvider.js +1 -1
- package/activities/ui/Prompt.js +1 -1
- package/activities/wab/OpenWidget.js +1 -1
- package/activities/wab/PublishWidgetData.js +1 -1
- package/activities/xlsx/ConvertDataTableToXlsx.js +1 -1
- package/activities/xlsx/ConvertXlsxToDataSet.js +1 -1
- package/constants.js +1 -1
- package/definition/Activity.js +1 -0
- package/definition/ActivityInput.js +1 -1
- package/definition/Component.js +1 -0
- package/definition/DeploymentConfig.js +1 -0
- package/definition/Form.js +1 -0
- package/definition/Program.js +1 -0
- package/definition/ProgramInspector.js +1 -1
- package/definition/Reference.js +1 -0
- package/definition/Resource.js +1 -0
- package/definition/Step.d.ts +1 -1
- package/definition/Step.js +1 -0
- package/definition/Transition.js +1 -0
- package/diagnostics/ConsoleDebugLogger.js +1 -1
- package/diagnostics/logging.js +1 -0
- package/execution/ActivityContext.js +1 -1
- package/execution/ActivityLoader.js +1 -1
- package/execution/AmbientState.d.ts +2 -0
- package/execution/AmbientState.js +1 -1
- package/execution/AsyncContext.d.ts +4 -0
- package/execution/AsyncContext.js +1 -1
- package/execution/Engine.js +1 -1
- package/execution/ExternalEvent.js +1 -0
- package/execution/IDebugSession.js +1 -0
- package/execution/ModuleLoader.js +1 -1
- package/execution/ProgramRunner.js +1 -1
- package/execution/Proxy.js +1 -1
- package/execution/StepContext.js +1 -1
- package/execution/TransitionContext.js +1 -1
- package/execution/util.js +1 -1
- package/forms/ExclusiveTimer.js +1 -1
- package/forms/FormComponent.d.ts +1 -1
- package/forms/FormComponent.js +1 -1
- package/forms/FormDefinition.d.ts +30 -2
- package/forms/FormDefinition.js +1 -1
- package/forms/FormHost.d.ts +55 -9
- package/forms/FormHost.js +1 -1
- package/forms/FormPresenterHost.js +1 -0
- package/forms/MutuallyExclusiveSectionGroup.js +1 -1
- package/forms/NumberParser.js +1 -1
- package/forms/branding/WorkflowColor.d.ts +17 -0
- package/forms/branding/WorkflowColor.js +1 -0
- package/forms/branding/colors.d.ts +15 -0
- package/forms/branding/colors.js +1 -0
- package/forms/branding/createPalette.d.ts +21 -0
- package/forms/branding/createPalette.js +1 -0
- package/forms/components/AccordionGroup.js +1 -1
- package/forms/components/AutoComplete.d.ts +1 -1
- package/forms/components/AutoComplete.js +1 -1
- package/forms/components/Button.d.ts +15 -0
- package/forms/components/Button.js +1 -0
- package/forms/components/ButtonBar.d.ts +1 -1
- package/forms/components/ButtonBar.js +1 -1
- package/forms/components/CheckBox.d.ts +1 -1
- package/forms/components/CheckBox.js +1 -1
- package/forms/components/CheckGroup.d.ts +1 -1
- package/forms/components/CheckGroup.js +1 -1
- package/forms/components/Custom.d.ts +1 -1
- package/forms/components/Custom.js +1 -1
- package/forms/components/DatePicker.d.ts +1 -1
- package/forms/components/DatePicker.js +1 -1
- package/forms/components/DateRangePicker.d.ts +1 -1
- package/forms/components/DateRangePicker.js +1 -1
- package/forms/components/DateTimePicker.d.ts +1 -1
- package/forms/components/DateTimePicker.js +1 -1
- package/forms/components/DateTimeTextField.js +1 -1
- package/forms/components/DropDownList.d.ts +1 -1
- package/forms/components/DropDownList.js +1 -1
- package/forms/components/FilePicker.d.ts +1 -1
- package/forms/components/FilePicker.js +1 -1
- package/forms/components/Form.js +1 -1
- package/forms/components/FormElement.js +1 -1
- package/forms/components/FormLabelNumberField.d.ts +2 -0
- package/forms/components/FormLabelNumberField.js +1 -1
- package/forms/components/GeometryPicker.d.ts +1 -1
- package/forms/components/GeometryPicker.js +1 -1
- package/forms/components/HorizontalRule.d.ts +1 -1
- package/forms/components/HorizontalRule.js +1 -1
- package/forms/components/Image.d.ts +1 -1
- package/forms/components/Image.js +1 -1
- package/forms/components/ItemPicker.d.ts +3 -3
- package/forms/components/ItemPicker.js +1 -1
- package/forms/components/ListBox.d.ts +1 -1
- package/forms/components/ListBox.js +1 -1
- package/forms/components/Markdown.js +1 -1
- package/forms/components/Number.d.ts +1 -1
- package/forms/components/Number.js +1 -1
- package/forms/components/NumberRangeSlider.d.ts +1 -1
- package/forms/components/NumberRangeSlider.js +1 -1
- package/forms/components/NumberSlider.d.ts +1 -1
- package/forms/components/NumberSlider.js +1 -1
- package/forms/components/RadioGroup.d.ts +1 -1
- package/forms/components/RadioGroup.js +1 -1
- package/forms/components/Scanner.d.ts +1 -2
- package/forms/components/Scanner.js +1 -1
- package/forms/components/Section.d.ts +1 -1
- package/forms/components/Section.js +1 -1
- package/forms/components/Signature.d.ts +1 -1
- package/forms/components/Signature.js +1 -1
- package/forms/components/SignatureDialog.js +1 -1
- package/forms/components/Sketch.d.ts +1 -1
- package/forms/components/Sketch.js +1 -1
- package/forms/components/SketchDialog.js +1 -1
- package/forms/components/TabGroup.js +1 -1
- package/forms/components/Text.d.ts +1 -1
- package/forms/components/Text.js +1 -1
- package/forms/components/TextArea.d.ts +1 -1
- package/forms/components/TextArea.js +1 -1
- package/forms/components/TextBox.d.ts +1 -1
- package/forms/components/TextBox.js +1 -1
- package/forms/components/TimePicker.d.ts +1 -1
- package/forms/components/TimePicker.js +1 -1
- package/forms/components/common.js +1 -1
- package/forms/constants.js +1 -1
- package/forms/customNumberFormat.js +1 -1
- package/forms/dateUtilities.d.ts +4 -6
- package/forms/dateUtilities.js +1 -1
- package/forms/elements/AutoComplete.js +1 -1
- package/forms/elements/ButtonBar.d.ts +3 -0
- package/forms/elements/ButtonBar.js +1 -0
- package/forms/elements/CheckBox.js +1 -0
- package/forms/elements/CheckGroup.js +1 -0
- package/forms/elements/Custom.js +1 -0
- package/forms/elements/DatePicker.js +1 -0
- package/forms/elements/DateRangePicker.js +1 -0
- package/forms/elements/DateTimePicker.js +1 -0
- package/forms/elements/DropDownList.js +1 -0
- package/forms/elements/FilePicker.js +1 -0
- package/forms/elements/GeometryPicker.js +1 -0
- package/forms/elements/Header.js +1 -0
- package/forms/elements/HorizontalRule.js +1 -0
- package/forms/elements/Image.js +1 -0
- package/forms/elements/ItemPicker.js +1 -0
- package/forms/elements/ListBox.js +1 -0
- package/forms/elements/Number.js +1 -1
- package/forms/elements/NumberRangeSlider.js +1 -1
- package/forms/elements/NumberSlider.js +1 -0
- package/forms/elements/PasswordBox.js +1 -0
- package/forms/elements/RadioGroup.js +1 -0
- package/forms/elements/Scanner.js +1 -1
- package/forms/elements/Section.js +1 -0
- package/forms/elements/Signature.js +1 -1
- package/forms/elements/Sketch.js +1 -0
- package/forms/elements/Text.js +1 -0
- package/forms/elements/TextArea.js +1 -0
- package/forms/elements/TextBox.js +1 -0
- package/forms/elements/TimePicker.js +1 -0
- package/forms/elements/types.js +1 -0
- package/forms/hostContext.d.ts +0 -1
- package/forms/hostContext.js +1 -1
- package/forms/index.d.ts +0 -1
- package/forms/keyboard.d.ts +0 -1
- package/forms/keyboard.js +1 -1
- package/forms/listUtilities.js +1 -1
- package/forms/manifest.js +1 -1
- package/forms/numberFormatter.js +1 -1
- package/forms/numberUtilities.js +1 -1
- package/forms/presenter.d.ts +1 -1
- package/forms/presenter.js +1 -1
- package/forms/renderers.js +1 -1
- package/forms/textUtilities.js +1 -1
- package/forms/utils.d.ts +28 -7
- package/forms/utils.js +1 -1
- package/index.d.ts +1 -1
- package/index.js +1 -0
- package/libs/version.d.ts +1 -1
- package/libs/version.js +1 -1
- package/licensing/LicenseChecker.js +1 -1
- package/licensing/Watermark.js +1 -1
- package/package.json +23 -13
- package/ui/UIService.js +1 -1
- package/activities/arcgis/FeatureTableMap.d.ts +0 -12
- package/activities/arcgis/FeatureTableMap.js +0 -1
- package/forms/Calendar.d.ts +0 -89
- package/forms/Calendar.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import Box from"@vertigis/react-ui/Box";import Button from"@vertigis/react-ui/Button";import Dialog from"@vertigis/react-ui/Dialog";import IconButton from"@vertigis/react-ui/IconButton";import SignatureIcon from"@vertigis/react-ui/icons/Signature";import Trash from"@vertigis/react-ui/icons/Trash";import{styled}from"@vertigis/react-ui/styles";import*as React from"react";import{useContext,useEffect,useState}from"react";import{signatureConfiguration}from"../elements/Signature.js";import HostContext from"../hostContext.js";import{makeUniqueId}from"../utils.js";import FormElement from"./FormElement.js";import Markdown from"./Markdown.js";import SignatureDialog from"./SignatureDialog.js";import{renderTitle,useFocusCallback}from"./common.js";const PREFIX="Signature"
|
|
1
|
+
import Box from"@vertigis/react-ui/Box";import Button from"@vertigis/react-ui/Button";import Dialog from"@vertigis/react-ui/Dialog";import IconButton from"@vertigis/react-ui/IconButton";import SignatureIcon from"@vertigis/react-ui/icons/Signature";import Trash from"@vertigis/react-ui/icons/Trash";import{styled}from"@vertigis/react-ui/styles";import*as React from"react";import{forwardRef,useContext,useEffect,useState}from"react";import{signatureConfiguration}from"../elements/Signature.js";import HostContext from"../hostContext.js";import{makeUniqueId}from"../utils.js";import FormElement from"./FormElement.js";import Markdown from"./Markdown.js";import SignatureDialog from"./SignatureDialog.js";import{renderTitle,useFocusCallback}from"./common.js";const PREFIX="Signature";export const signatureClasses={button:`${PREFIX}-button`,image:`${PREFIX}-image`};const StyledFormElement=styled(FormElement)(({theme:{spacing:e}})=>({[`.${signatureClasses.button}`]:{marginBottom:e(1),marginTop:e(1)},[`.${signatureClasses.image}`]:{alignItems:"flex-start",display:"flex",flexDirection:"row",gap:e(1),img:{border:"solid 1px grey",flexShrink:1,minWidth:0}}})),Signature=forwardRef(({className:e,element:t,enabled:a,label:i,name:r,prompt:o,require:n,setValue:l,size:s,title:m,tooltip:c,value:u},g)=>{const d=useContext(HostContext),[f,p]=useState(),[x,C]=useState(500),h=d.renderText(c),E=useFocusCallback(a,r,d),w=d.renderText("@common-clear");useEffect(()=>{let e=signatureConfiguration.width.default;"number"!=typeof s||isNaN(s)?"object"!=typeof s||void 0===s.width||isNaN(s.width)||(e=s.width):e=s,e=Math.max(e,signatureConfiguration.width.minimum),e=Math.min(e,signatureConfiguration.width.maximum),C(e)},[s]),useEffect(()=>{p(u?.dataUrl)},[u]);const R=async e=>{if(e){const t=await fetch(e),a=await t.blob(),i=new File([a],`${r}.png`,{type:a.type});l({refValueType:"signature",dataUrl:e,file:i})}else l(void 0);p(e)};return React.createElement(StyledFormElement,{className:e,element:t,name:r,ref:g},f?React.createElement(Box,{className:signatureClasses.image},React.createElement("img",{src:f,alt:h}),React.createElement(IconButton,{"aria-label":w,disabled:!a,onClick:()=>R(void 0),title:w},React.createElement(Trash,null))):null,f?null:React.createElement(Box,{className:signatureClasses.button},React.createElement(Button,{disabled:!a,onClick:async()=>{const e=Math.round(.4*x);await d.displayDialog(t=>React.createElement(SignatureDialog,{cancelCaption:d.renderText("@common-cancel"),clearCaption:w,doneCaption:d.renderText("@common-done"),format:"image/png",height:e,helperText:React.createElement(Markdown,{inline:!0,text:i}),host:d,onClose:(e,a)=>{e&&R(a),t()},title:renderTitle(makeUniqueId(r+"-dialog"),n,m),undoCaption:d.renderText("@common-undo"),width:x}),Dialog)},ref:E,startIcon:React.createElement(SignatureIcon,null),title:h,variant:"outlined"},React.createElement(Markdown,{inline:!0,text:o||""}))))});export default Signature;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import Box from"@vertigis/react-ui/Box";import Button from"@vertigis/react-ui/Button";import DialogActions from"@vertigis/react-ui/DialogActions";import DialogContent from"@vertigis/react-ui/DialogContent";import DialogTitle from"@vertigis/react-ui/DialogTitle";import IconButton from"@vertigis/react-ui/IconButton";import Skeleton from"@vertigis/react-ui/Skeleton";import Stack from"@vertigis/react-ui/Stack";import Typography from"@vertigis/react-ui/Typography";import Trash from"@vertigis/react-ui/icons/Trash";import Undo from"@vertigis/react-ui/icons/Undo";import{styled}from"@vertigis/react-ui/styles";import*as React from"react";import{lazy,Suspense}from"react";import{HostProvider}from"../hostContext.js";const SignaturePadWrapper=lazy(()=>import("react-signature-pad-wrapper")),DialogPrefix="SignatureDialog"
|
|
1
|
+
import Box from"@vertigis/react-ui/Box";import Button from"@vertigis/react-ui/Button";import DialogActions from"@vertigis/react-ui/DialogActions";import DialogContent from"@vertigis/react-ui/DialogContent";import DialogTitle from"@vertigis/react-ui/DialogTitle";import IconButton from"@vertigis/react-ui/IconButton";import Skeleton from"@vertigis/react-ui/Skeleton";import Stack from"@vertigis/react-ui/Stack";import Typography from"@vertigis/react-ui/Typography";import Trash from"@vertigis/react-ui/icons/Trash";import Undo from"@vertigis/react-ui/icons/Undo";import{styled}from"@vertigis/react-ui/styles";import*as React from"react";import{lazy,Suspense}from"react";import{HostProvider}from"../hostContext.js";const SignaturePadWrapper=lazy(()=>import("react-signature-pad-wrapper")),DialogPrefix="SignatureDialog";export const signatureDialogClasses={canvas:`${DialogPrefix}-canvas`,canvasAnnotations:`${DialogPrefix}-canvas-annotations`,container:`${DialogPrefix}-container`,mark:`${DialogPrefix}-mark`,titleText:`${DialogPrefix}-title-text`};const StyledDialogTitle=styled(DialogTitle)(()=>({display:"flex",[`.${signatureDialogClasses.titleText}`]:{flexGrow:1,flexShrink:1}})),StyledDialogContent=styled(DialogContent)(({theme:{spacing:e,typography:t}})=>({[`.${signatureDialogClasses.container}`]:{backgroundColor:"#eee",filter:"drop-shadow(2px 2px 2px grey)",[`.${signatureDialogClasses.canvas}`]:{position:"relative",zIndex:1},[`.${signatureDialogClasses.canvasAnnotations}`]:{alignItems:"center",display:"flex",flexDirection:"column",marginTop:t.pxToRem(-64),paddingLeft:e(1),paddingRight:e(1),position:"relative",zIndex:0,[`.${signatureDialogClasses.mark}`]:{fontSize:"large",borderBottom:"solid 1px black",width:"100%"}}}})),NonItalicCaption=styled(Typography)(()=>({fontStyle:"inherit"})),SignatureDialog=({cancelCaption:e,clearCaption:t,doneCaption:a,format:i,height:o,helperText:r,host:n,title:l,undoCaption:s,width:c,onClose:g})=>{let m,p,u;return React.createElement(HostProvider,{value:n},React.createElement(StyledDialogTitle,null,React.createElement("div",{className:signatureDialogClasses.titleText},l),React.createElement(Stack,{direction:"row"},React.createElement(IconButton,{"aria-label":s,onClick:async()=>{if(m){const e=m.toData();e.pop(),m.fromData(e)}},title:s},React.createElement(Undo,null)),React.createElement(IconButton,{"aria-label":t,onClick:async()=>{p&&p.clear()},title:t},React.createElement(Trash,null)))),React.createElement(StyledDialogContent,null,React.createElement(Box,{className:signatureDialogClasses.container,sx:{height:`${o}px`,width:`${c}px`}},React.createElement(Suspense,{fallback:React.createElement(Skeleton,{variant:"rectangular",width:c,height:o})},React.createElement(SignaturePadWrapper,{canvasProps:{className:signatureDialogClasses.canvas},ref:e=>{m=e||void 0,p=m?.instance||void 0,u=m?.canvas?.current||void 0,u&&(u.oncontextmenu=()=>!1,u.height=o,u.width=c)}}),React.createElement(Box,{className:signatureDialogClasses.canvasAnnotations},React.createElement(Typography,{"aria-hidden":!0,className:signatureDialogClasses.mark},"X"),React.createElement(NonItalicCaption,{variant:"caption"},r))))),React.createElement(DialogActions,null,React.createElement(Button,{color:"primary",onClick:()=>{let e;p&&!p.isEmpty()&&(e=p.toDataURL(i)),g(!0,e)},variant:"contained"},a),React.createElement(Button,{color:"inherit",onClick:()=>{g(!1,void 0)},variant:"outlined"},e)))};export default SignatureDialog;
|
|
@@ -9,5 +9,5 @@ export declare const sketchClasses: {
|
|
|
9
9
|
/**
|
|
10
10
|
* The component for the "Sketch" Form Element.
|
|
11
11
|
*/
|
|
12
|
-
declare const Sketch:
|
|
12
|
+
declare const Sketch: React.ForwardRefExoticComponent<FormElementProps<defs.SketchRef | undefined> & React.RefAttributes<HTMLDivElement>>;
|
|
13
13
|
export default Sketch;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import Box from"@vertigis/react-ui/Box";import Button from"@vertigis/react-ui/Button";import Dialog,{dialogClasses}from"@vertigis/react-ui/Dialog";import IconButton from"@vertigis/react-ui/IconButton";import Stack from"@vertigis/react-ui/Stack";import Edit from"@vertigis/react-ui/icons/Edit";import Trash from"@vertigis/react-ui/icons/Trash";import{styled}from"@vertigis/react-ui/styles";import*as React from"react";import{useContext,useEffect,useRef,useState}from"react";import HostContext from"../hostContext.js";import{makeUniqueId}from"../utils.js";import FormElement from"./FormElement.js";import Markdown from"./Markdown.js";import SketchDialog from"./SketchDialog.js";import{renderTitle,useFocusCallback}from"./common.js";const PREFIX="Sketch"
|
|
1
|
+
import Box from"@vertigis/react-ui/Box";import Button from"@vertigis/react-ui/Button";import Dialog,{dialogClasses}from"@vertigis/react-ui/Dialog";import IconButton from"@vertigis/react-ui/IconButton";import Stack from"@vertigis/react-ui/Stack";import Edit from"@vertigis/react-ui/icons/Edit";import Trash from"@vertigis/react-ui/icons/Trash";import{styled}from"@vertigis/react-ui/styles";import*as React from"react";import{forwardRef,useContext,useEffect,useRef,useState}from"react";import HostContext from"../hostContext.js";import{makeUniqueId}from"../utils.js";import FormElement from"./FormElement.js";import Markdown from"./Markdown.js";import SketchDialog from"./SketchDialog.js";import{renderTitle,useFocusCallback}from"./common.js";const PREFIX="Sketch";export const sketchClasses={button:`${PREFIX}-button`,imagePanel:`${PREFIX}-image-panel`,imageScroller:`${PREFIX}-image-scroller`};const StyledFormElement=styled(FormElement)(({theme:{spacing:e}})=>({[`.${sketchClasses.button}`]:{marginBottom:e(1),marginTop:e(1)},[`.${sketchClasses.imagePanel}`]:{alignItems:"flex-start",display:"flex",flexDirection:"row",gap:e(1),img:{border:"solid 1px grey",maxWidth:"100%",minWidth:0}}})),StyledDialog=styled(Dialog)(()=>({[`.${dialogClasses.paper}`]:{maxWidth:"inherit"}})),Sketch=forwardRef(({className:e,element:t,enabled:r,name:a,prompt:o,require:i,setValue:l,size:s,source:c,title:n,tooltip:m,value:u},d)=>{const f=useContext(HostContext),[g,h]=useState(),[p,E]=useState(),[R,k]=useState(),[x,y]=useState(),b=useRef([]),v=useRef(),S=f.renderText(m),C=useFocusCallback(r,a,f);useEffect(()=>{if("object"==typeof s){const e=void 0===s.height||isNaN(s.height)?void 0:s.height,t=void 0===s.width||isNaN(s.width)?void 0:s.width;E(e),y(t)}},[s]),useEffect(()=>{h("object"==typeof u?u.dataUrl:void 0)},[u]),useEffect(()=>{if(v.current&&(URL.revokeObjectURL(v.current),v.current=void 0),"string"==typeof c)k(c);else if(c instanceof File){const e=URL.createObjectURL(c);k(e),v.current=e}return()=>{v.current&&URL.revokeObjectURL(v.current)}},[c]);const w=async e=>{if(e){const t=await fetch(e),r=await t.blob(),o=new File([r],`${a}.png`,{type:r.type});l({refValueType:"sketch",dataUrl:e,file:o})}else l(void 0);h(e)},F=!!R&&!!g,B=async()=>{await f.displayDialog(e=>React.createElement(SketchDialog,{dataUrl:g,height:p,history:b.current,host:f,onClose:(t,r)=>{t&&r&&(w(r.dataUrl),y(r.width),E(r.height),b.current=r.history),e()},source:R,title:renderTitle(makeUniqueId(a+"-dialog"),i,n),width:x}),StyledDialog)};return React.createElement(StyledFormElement,{className:e,element:t,name:a,ref:d},(()=>{if(!g&&!R)return null;const e=g||R,t=f.renderText("@common-clear"),a=f.renderText("@common-edit");return React.createElement(Box,{className:sketchClasses.imagePanel},React.createElement("img",{src:e,alt:S}),F&&React.createElement(Stack,null,React.createElement(IconButton,{"aria-label":a,disabled:!r,onClick:B,ref:C,title:a},React.createElement(Edit,null)),React.createElement(IconButton,{"aria-label":t,disabled:!r,onClick:()=>{w(void 0),b.current=[]},title:t},React.createElement(Trash,null))))})(),F?null:React.createElement(Box,{className:sketchClasses.button},React.createElement(Button,{disabled:!r||!R,onClick:B,ref:e=>{R&&C(e)},title:S,variant:"outlined"},React.createElement(Markdown,{inline:!0,text:o||""}))))});export default Sketch;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import Box from"@vertigis/react-ui/Box";import Button from"@vertigis/react-ui/Button";import DialogActions from"@vertigis/react-ui/DialogActions";import DialogContent from"@vertigis/react-ui/DialogContent";import DialogTitle from"@vertigis/react-ui/DialogTitle";import FormControl from"@vertigis/react-ui/FormControl";import FormControlLabel from"@vertigis/react-ui/FormControlLabel";import FormLabel from"@vertigis/react-ui/FormLabel";import FormLabelColorField from"@vertigis/react-ui/FormLabelColorField";import IconButton from"@vertigis/react-ui/IconButton";import Radio from"@vertigis/react-ui/Radio";import RadioGroup from"@vertigis/react-ui/RadioGroup";import Slider from"@vertigis/react-ui/Slider";import Stack from"@vertigis/react-ui/Stack";import Trash from"@vertigis/react-ui/icons/Trash";import Undo from"@vertigis/react-ui/icons/Undo";import{styled}from"@vertigis/react-ui/styles";import*as React from"react";import{useEffect,useRef,useState}from"react";import{HostProvider}from"../hostContext.js";const DialogPrefix="SketchDialog"
|
|
1
|
+
import Box from"@vertigis/react-ui/Box";import Button from"@vertigis/react-ui/Button";import DialogActions from"@vertigis/react-ui/DialogActions";import DialogContent from"@vertigis/react-ui/DialogContent";import DialogTitle from"@vertigis/react-ui/DialogTitle";import FormControl from"@vertigis/react-ui/FormControl";import FormControlLabel from"@vertigis/react-ui/FormControlLabel";import FormLabel from"@vertigis/react-ui/FormLabel";import FormLabelColorField from"@vertigis/react-ui/FormLabelColorField";import IconButton from"@vertigis/react-ui/IconButton";import Radio from"@vertigis/react-ui/Radio";import RadioGroup from"@vertigis/react-ui/RadioGroup";import Slider from"@vertigis/react-ui/Slider";import Stack from"@vertigis/react-ui/Stack";import Trash from"@vertigis/react-ui/icons/Trash";import Undo from"@vertigis/react-ui/icons/Undo";import{styled}from"@vertigis/react-ui/styles";import*as React from"react";import{useEffect,useRef,useState}from"react";import{HostProvider}from"../hostContext.js";const DialogPrefix="SketchDialog";export const sketchDialogClasses={canvasContainer:`${DialogPrefix}-canvas-container`,canvasScroller:`${DialogPrefix}-canvas-scroller`,drawingCanvas:`${DialogPrefix}-drawing-canvas`,highlightCanvas:`${DialogPrefix}-highlight-canvas`,size:`${DialogPrefix}-size`,titleText:`${DialogPrefix}-title-text`};const StyledDialogTitle=styled(DialogTitle)(()=>({display:"flex",[`.${sketchDialogClasses.titleText}`]:{flexGrow:1,flexShrink:1}})),StyledDialogContent=styled(DialogContent)(({theme:{spacing:e}})=>({display:"flex",flexDirection:"column",alignItems:"center",[`.${sketchDialogClasses.size}`]:{marginLeft:e(2),width:"15rem"},[`.${sketchDialogClasses.canvasScroller}`]:{maxWidth:"100%",overflow:"auto",[`.${sketchDialogClasses.canvasContainer}`]:{lineHeight:0,overflow:"clip",canvas:{position:"relative",[`&.${sketchDialogClasses.highlightCanvas}`]:{opacity:.5}}}}}));function isDrawingHistoryItem(e){return Array.isArray(e.points)}const PenColours=["#F13B2F","#42A345","#049FF1","#FFE600","#000000","#FFFFFF"],HighlighterColours=["#FFE600","#26E600","#44C8F5","#EC008C","#FF5500","#6600CC"],SketchDialog=({dataUrl:e,height:t,history:r,host:o,onClose:a,source:n,title:l,width:i})=>{const[c,s]=useState(t||0),[u,g]=useState(i||0),[m,h]=useState(PenColours[0]),[d,C]=useState(3),[p,f]=useState(HighlighterColours[0]),[v,x]=useState(12),[R,y]=useState("pen"),D="highlighter"===R,k=useRef(null),E=useRef(null),F=useRef(null),S=useRef([]),w=useRef([]),T=useRef(!1),b=useRef(!1),P=e=>e?"highlighter"===e?E.current:F.current:D?E.current:F.current,$=async e=>{let t,r;const o=new Promise((e,o)=>{t=e,r=o}),a=new Image;return a.crossOrigin="anonymous",a.onerror=e=>{r(e)},a.onload=()=>{t(a)},a.src=e,a.complete&&t(a),o};useEffect(()=>{(async()=>{const t=k.current,o=F.current;if(t&&o&&!T.current){let a;try{a=await $(n)}catch(e){console.error(`Error loading image from ${n}.`,e)}if(!a)return void I();let l=Math.max(u,0),i=Math.max(c,0);const{height:m,width:h}=a;0==l&&0==i?(i=m,l=h):0===i?i=l*(m/h):0===l&&(l=i*(h/m)),t.height=i,t.width=l,o.height=i,o.width=l,t.getContext("2d").drawImage(a,0,0,t.width,t.height),r.length>0?(w.current=[...r],await U()):e&&(w.current=[{tool:"pen",dataUrl:e}],await U()),s(i),g(l),T.current=!0}})()},[k.current,F.current]);const B=(e,t)=>{const r=t.getBoundingClientRect();return{x:e.clientX-r.left,y:e.clientY-r.top}},L=()=>{if(!b.current)return;b.current=!1;const e=P().getContext("2d");e.closePath(),w.current.push({lineCap:e.lineCap,lineWidth:e.lineWidth,points:[...S.current],strokeStyle:e.strokeStyle,tool:R}),S.current.length=0},I=()=>{a(!1)},U=async e=>{for(const t of w.current){if(e&&t.tool!==e)continue;const r=P(t.tool);if(isDrawingHistoryItem(t)){const e=r.getContext("2d");e.beginPath(),e.lineCap=t.lineCap,e.lineWidth=t.lineWidth,e.strokeStyle=t.strokeStyle;const{points:o}=t;for(let t=0;t<o.length;t++){const{x:r,y:a}=o[t];0===t?e.moveTo(r,a):(e.lineTo(r,a),e.stroke())}e.closePath()}else{const e=await $(t.dataUrl);r.getContext("2d").drawImage(e,0,0,r.width,r.height)}}},W=o.renderText("@common-clear"),A=o.renderText("@common-undo");return React.createElement(HostProvider,{value:o},React.createElement(StyledDialogTitle,null,React.createElement("div",{className:sketchDialogClasses.titleText},l),React.createElement(Stack,{direction:"row"},React.createElement(IconButton,{"aria-label":A,onClick:async()=>{if(0===w.current.length)return;const e=w.current.pop(),{tool:t}=e;P(t).getContext("2d").clearRect(0,0,u,c),await U(t)},title:A},React.createElement(Undo,null)),React.createElement(IconButton,{"aria-label":W,onClick:()=>{E.current.getContext("2d").clearRect(0,0,u,c),F.current.getContext("2d").clearRect(0,0,u,c),w.current=[]},title:W},React.createElement(Trash,null)))),React.createElement(StyledDialogContent,null,React.createElement(Box,null,React.createElement(FormControl,null,React.createElement(FormLabel,null,o.renderText("@sketch-tool")),React.createElement(RadioGroup,{onChange:e=>y(e.currentTarget.value),row:!0,value:R},React.createElement(FormControlLabel,{control:React.createElement(Radio,null),value:"pen",label:o.renderText("@sketch-tool-pen")}),React.createElement(FormControlLabel,{control:React.createElement(Radio,null),value:"highlighter",label:o.renderText("@sketch-tool-highlighter")}))),React.createElement(FormLabelColorField,{label:o.renderText("@common-color"),value:D?p:m,ColorInputProps:{presetColors:D?HighlighterColours:PenColours},onChange:e=>{D?f(e):h(e)}}),React.createElement(FormControl,{className:sketchDialogClasses.size},React.createElement(FormLabel,null,o.renderText("@sketch-size")),React.createElement(Slider,{min:1,value:D?v:d,onChange:(e,t)=>{D?x(t):C(t)}}))),React.createElement(Box,{className:sketchDialogClasses.canvasScroller},React.createElement(Box,{sx:{width:`${u}px`,height:`${c}px`},className:sketchDialogClasses.canvasContainer},React.createElement("canvas",{ref:k}),React.createElement("canvas",{className:sketchDialogClasses.highlightCanvas,height:c,ref:E,style:{top:`-${c}px`},width:u}),React.createElement("canvas",{className:sketchDialogClasses.drawingCanvas,onMouseDown:e=>{const t=P(),r=t.getContext("2d"),{x:o,y:a}=B(e,t),{lineCap:n,lineWidth:l,strokeStyle:i}=D?{lineCap:"butt",lineWidth:v,strokeStyle:p}:{lineCap:"round",lineWidth:d,strokeStyle:m};r.beginPath(),r.lineCap=n,r.lineWidth=l,r.strokeStyle=i,r.moveTo(o,a),S.current.length=0,S.current.push({x:o,y:a}),b.current=!0},onMouseLeave:L,onMouseMove:e=>{if(!b.current)return;const t=P(),r=t.getContext("2d"),{x:o,y:a}=B(e,t);r.lineTo(o,a),r.stroke(),S.current.push({x:o,y:a})},onMouseUp:L,ref:F,style:{top:`-${2*c}px`}})))),React.createElement(DialogActions,null,React.createElement(Button,{color:"primary",onClick:()=>{if(0===w.current.length)return void I();const e=k.current.getContext("2d");e.globalAlpha=.5,e.drawImage(E.current,0,0),e.globalAlpha=1,e.drawImage(F.current,0,0);const t=k.current.toDataURL("image/png");a(!0,{dataUrl:t,history:[...w.current],width:u,height:c})},variant:"contained"},o.renderText("@common-done")),React.createElement(Button,{color:"inherit",onClick:I,variant:"outlined"},o.renderText("@common-cancel"))))};export default SketchDialog;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import Box from"@vertigis/react-ui/Box";import{formLabelClasses}from"@vertigis/react-ui/FormLabel";import FormLabel from"@vertigis/react-ui/FormLabel";import Tab from"@vertigis/react-ui/Tab";import Tabs from"@vertigis/react-ui/Tabs";import{styled}from"@vertigis/react-ui/styles";import*as React from"react";import{useEffect,useState}from"react";import Markdown from"./Markdown.js";const StyledBox=styled(Box)(({theme:{spacing:e}})=>({marginBottom:e(4),marginTop:e(4)})),StyledFormLabel=styled(FormLabel)(()=>({[`&.${formLabelClasses.error}`]:{backgroundColor:"transparent"}})),TabGroup=({className:e,component:t})=>{const[r,a]=useState(!1),{children:o,host:l}=t.props;useEffect(()=>{let e=o.filter(e=>!0!==l.form.elements[e.props.name].collapsed)[0]?.props?.name;e?a(e):(e=o[0]?.props?.name,e?l.updateMutuallyExclusiveSections(e):a(!1))},[o]);return React.createElement(StyledBox,{className:e},React.createElement(Tabs,{onChange:(e,t)=>{l.updateMutuallyExclusiveSections(t)},scrollButtons:"auto",value:r,variant:"scrollable"},o.map(e=>{
|
|
1
|
+
import Box from"@vertigis/react-ui/Box";import{formLabelClasses}from"@vertigis/react-ui/FormLabel";import FormLabel from"@vertigis/react-ui/FormLabel";import Tab from"@vertigis/react-ui/Tab";import Tabs from"@vertigis/react-ui/Tabs";import{styled}from"@vertigis/react-ui/styles";import*as React from"react";import{useEffect,useState}from"react";import Markdown from"./Markdown.js";const StyledBox=styled(Box)(({theme:{spacing:e}})=>({marginBottom:e(4),marginTop:e(4)})),StyledFormLabel=styled(FormLabel)(()=>({[`&.${formLabelClasses.error}`]:{backgroundColor:"transparent"}})),TabGroup=({className:e,component:t})=>{const[r,a]=useState(!1),{children:o,host:l}=t.props;useEffect(()=>{let e=o.filter(e=>!0!==l.form.elements[e.props.name].collapsed)[0]?.props?.name;e?a(e):(e=o[0]?.props?.name,e?l.updateMutuallyExclusiveSections(e):a(!1))},[o]);return React.createElement(StyledBox,{className:e},React.createElement(Tabs,{onChange:(e,t)=>{l.updateMutuallyExclusiveSections(t)},scrollButtons:"auto",value:r,variant:"scrollable"},o.map(e=>{const{name:t}=e.props;return React.createElement(Tab,{"aria-controls":`simple-tabpanel-${t}`,id:`simple-tab-${t}`,key:t,label:(r=l.form.elements[t],a=t,React.createElement(StyledFormLabel,{error:l.hasInvalidChild(r)||!!r.error,id:`${a}-label`},React.createElement(Markdown,{inline:!0,text:r.title}))),value:t});var r,a})),o)};export default TabGroup;
|
|
@@ -4,5 +4,5 @@ import type { FormElementProps } from "../..";
|
|
|
4
4
|
* The component for the "Text" Form Element.
|
|
5
5
|
* It just exposes the Title and Description which are common to all.
|
|
6
6
|
*/
|
|
7
|
-
declare const Text:
|
|
7
|
+
declare const Text: React.ForwardRefExoticComponent<FormElementProps<undefined> & React.RefAttributes<HTMLDivElement>>;
|
|
8
8
|
export default Text;
|
package/forms/components/Text.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import*as React from"react";import FormElement from"./FormElement.js";const Text=({className:e,element:m,name:t})=>React.createElement(FormElement,{className:e,element:m,name:t});export default Text;
|
|
1
|
+
import*as React from"react";import{forwardRef}from"react";import FormElement from"./FormElement.js";const Text=forwardRef(({className:e,element:m,name:t},r)=>React.createElement(FormElement,{className:e,element:m,name:t,ref:r}));export default Text;
|
|
@@ -3,5 +3,5 @@ import type { FormElementProps } from "../..";
|
|
|
3
3
|
/**
|
|
4
4
|
* The component for the "Text Area" Form Element.
|
|
5
5
|
*/
|
|
6
|
-
declare const TextArea:
|
|
6
|
+
declare const TextArea: React.ForwardRefExoticComponent<FormElementProps<string | undefined> & React.RefAttributes<HTMLDivElement>>;
|
|
7
7
|
export default TextArea;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import Input from"@vertigis/react-ui/Input";import{useContext,useEffect,useState}from"react";import*as React from"react";import HostContext from"../hostContext.js";import{makeUniqueId}from"../utils.js";import FormElement from"./FormElement.js";import{useFocusCallback}from"./common.js";const TextArea=({className:e,component:t,element:o,enabled:r,name:a,maxLength:n,prompt:s,readOnly:m,require:u,size:l,tooltip:
|
|
1
|
+
import Input from"@vertigis/react-ui/Input";import{forwardRef,useContext,useEffect,useState}from"react";import*as React from"react";import HostContext from"../hostContext.js";import{makeUniqueId}from"../utils.js";import FormElement from"./FormElement.js";import{useFocusCallback}from"./common.js";const TextArea=forwardRef(({className:e,component:t,element:o,enabled:r,name:a,maxLength:n,prompt:s,readOnly:m,require:u,size:l,tooltip:f,value:i,wrap:p,setValue:c},d)=>{const x=useContext(HostContext),[g,E]=useState(8),[C,h]=useState(""),[w,y]=useState("soft"),I=`${makeUniqueId(a)}-input`,R=x.renderText(s),b=x.renderText(f);useEffect(()=>{"number"==typeof l&&E(l)},[l]),useEffect(()=>{let e="";"string"==typeof i&&(e=i),i!==e&&(c(e,!1),t.forceUpdate()),h(e)},[i]),useEffect(()=>{"string"==typeof p&&-1!==["hard","soft","off"].indexOf(p)&&y(p)},[p]);const v=e=>{const t=e.target.value;t!=i&&(c(t),h(t))},F=e=>{const t=e.target.value;t!=C&&h(t)},j=e=>{e.stopPropagation()},k=useFocusCallback(r,a,x);return React.createElement(FormElement,{className:e,element:o,inputId:I,name:a,ref:d},e=>React.createElement(Input,{disabled:!r,fullWidth:!0,id:I,inputProps:{...e,maxLength:n,onKeyDown:j,title:b,wrap:w},inputRef:k,multiline:!0,onBlur:v,onChange:F,placeholder:R,readOnly:m,required:u,rows:g,value:C}))});export default TextArea;
|
|
@@ -3,5 +3,5 @@ import type { FormElementProps } from "../..";
|
|
|
3
3
|
/**
|
|
4
4
|
* The component for the "Text Box" and "Password Box" Form Elements.
|
|
5
5
|
*/
|
|
6
|
-
declare const TextBox:
|
|
6
|
+
declare const TextBox: React.ForwardRefExoticComponent<FormElementProps<string | undefined> & React.RefAttributes<HTMLDivElement>>;
|
|
7
7
|
export default TextBox;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import Input from"@vertigis/react-ui/Input";import*as React from"react";import{useContext,useEffect,useState}from"react";import{FormElementTypes}from"../constants.js";import HostContext from"../hostContext.js";import{getKeyString}from"../keyboard.js";import{makeUniqueId}from"../utils.js";import FormElement from"./FormElement.js";import{useFocusCallback}from"./common.js";const TextBox=({className:e,element:t,enabled:r,type:o,maxLength:n,name:a,prompt:
|
|
1
|
+
import Input from"@vertigis/react-ui/Input";import*as React from"react";import{forwardRef,useContext,useEffect,useState}from"react";import{FormElementTypes}from"../constants.js";import HostContext from"../hostContext.js";import{getKeyString}from"../keyboard.js";import{makeUniqueId}from"../utils.js";import FormElement from"./FormElement.js";import{useFocusCallback}from"./common.js";const TextBox=forwardRef(({className:e,element:t,enabled:r,type:o,maxLength:n,name:a,prompt:s,readOnly:m,require:u,tooltip:l,value:i,setValue:p},c)=>{const f=useContext(HostContext),[d,x]=useState(""),g=`${makeUniqueId(a)}-input`,y=o===FormElementTypes.PASSWORDBOX,v=y?void 0:n,E=f.renderText(s),C=y?void 0:m,T=f.renderText(l);useEffect(()=>{let e="";"string"==typeof i?e=i:"number"!=typeof i||y||(e=f.formatNumber(i)),i!==e&&p(e,!1),d!==e&&x(e)},[i]);const b=e=>{p(e),x(e)},F=e=>{const t=e.target.value;t!=i&&b(t)},R=e=>{const t=e.target.value;t!=d&&x(t)},h=e=>{const t=getKeyString(e);return"enter"===t?(e=>{const t=e.currentTarget.value;t!==i&&b(t)})(e):"escape"===t?(e=>{const t=e.currentTarget;if(t.value!==i)return x(i||""),t.select(),e.stopPropagation(),e.preventDefault(),!1})(e):void 0},j=useFocusCallback(r,a,f);return React.createElement(FormElement,{className:e,element:t,inputId:g,name:a,ref:c},e=>React.createElement(Input,{disabled:!r,fullWidth:!0,id:g,inputProps:{...e,maxLength:v,onKeyDown:h,title:T},inputRef:j,onBlur:F,onChange:R,placeholder:E,readOnly:C,required:u,type:y?"password":"text",value:d}))});export default TextBox;
|
|
@@ -4,5 +4,5 @@ import type { defs } from "../FormHost";
|
|
|
4
4
|
/**
|
|
5
5
|
* The component for the "Time Picker" Form Element.
|
|
6
6
|
*/
|
|
7
|
-
declare const TimePicker:
|
|
7
|
+
declare const TimePicker: React.ForwardRefExoticComponent<FormElementProps<defs.DateTimeRef | undefined> & React.RefAttributes<HTMLDivElement>>;
|
|
8
8
|
export default TimePicker;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{buttonBaseClasses}from"@vertigis/react-ui/ButtonBase";import FormHelperText from"@vertigis/react-ui/FormHelperText";import{clockClasses}from"@vertigis/react-ui/TimeClock";import BaseTimePicker from"@vertigis/react-ui/TimePicker";import{styled}from"@vertigis/react-ui/styles";import*as React from"react";import{useContext,useEffect,useMemo,useRef,useState}from"react";import{
|
|
1
|
+
import{buttonBaseClasses}from"@vertigis/react-ui/ButtonBase";import FormHelperText from"@vertigis/react-ui/FormHelperText";import{clockClasses}from"@vertigis/react-ui/TimeClock";import BaseTimePicker from"@vertigis/react-ui/TimePicker";import{styled}from"@vertigis/react-ui/styles";import*as React from"react";import{forwardRef,useContext,useEffect,useMemo,useRef,useState}from"react";import{areValuesEqual,getAmPm,getDateBounds,getNewElementValue,makeProperValue}from"../dateUtilities.js";import HostContext from"../hostContext.js";import{getKeyString}from"../keyboard.js";import{isInvalidError}from"../textUtilities.js";import{makeUniqueId}from"../utils.js";import DateTimeTextField from"./DateTimeTextField.js";import FormElement from"./FormElement.js";import{useFocusCallback}from"./common.js";const StylableTimePicker=e=>{const{className:t,slotProps:r,...o}=e;return React.createElement(BaseTimePicker,{slotProps:{...r,popper:{...r?.popper,className:t}},...o})},StyledTimePicker=styled(StylableTimePicker)(({theme:{palette:e}})=>({[`& .${clockClasses.amButton}, .${clockClasses.pmButton}`]:{[`&.${buttonBaseClasses.focusVisible}`]:{color:e.action.active}}})),TimePicker=forwardRef(({className:e,element:t,enabled:r,error:o,format:a,name:s,prompt:i,setProperty:m,setValue:l,tooltip:n,value:c},u)=>{const p=useContext(HostContext),[f,d]=useState(!1),[T,k]=useState(!1),[E,g]=useState(!1),[x,P]=useState(null),v=useRef(),F={locale:p.deriveLocale(),timezone:(new Intl.DateTimeFormat).resolvedOptions().timeZone},C=useRef(!0),y=useFocusCallback(r,s,p),R=p.renderText(n),S="time",B=isInvalidError(o),b=()=>{const e=getNewElementValue(x,S,F);areValuesEqual(c,e)||l(e)};useEffect(()=>{const e=makeProperValue(c),t=getNewElementValue(e,S,F);areValuesEqual(c,t)||l(t,!1),P(e||null)},[c]),useEffect(()=>{if(!E&&!T)if(f)B||m("error",{status:"invalid"});else{if(B&&m("error",void 0),C.current)return void(C.current=!1);b()}C.current=!1},[f,T,E]);const{min:V,max:j}=getDateBounds(a),w=getAmPm(a),D=useMemo(()=>`${makeUniqueId(s)}-input`,[s]),N=p.renderText(i),I=e=>{"enter"!==getKeyString(e)||b()};return React.createElement(FormElement,{className:e,element:t,inputId:D,name:s,ref:u},e=>React.createElement(React.Fragment,null,B&&React.createElement(FormHelperText,{component:"div",error:!0,role:"alert"},v.current),React.createElement(StyledTimePicker,{ampm:w,disabled:!r,inputRef:e=>{y(e),e&&(v.current=e.dataset.formatString)},key:"date-picker",maxTime:j,minTime:V,onChange:e=>P(e),onClose:()=>g(!1),onError:e=>d(!!e),onOpen:()=>g(!0),slots:{textField:DateTimeTextField},slotProps:{textField:{error:!!o,id:D,inputProps:{...e,placeholder:N},onBlur:()=>k(!1),onFocus:()=>k(!0),onKeyDown:I,title:R}},value:x})))});export default TimePicker;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import Box from"@vertigis/react-ui/Box";import FormLabel,{formLabelClasses}from"@vertigis/react-ui/FormLabel";import{styled}from"@vertigis/react-ui/styles";import clsx from"clsx";import{useCallback}from"react";import*as React from"react";import{hasContent,isMarkdown,markdownToText}from"../textUtilities.js";import{getAccessibleDescriptionId,getDescriptionId,getLabelId}from"../utils.js";import{formClasses}from"./Form.js";import Markdown from"./Markdown.js";function renderTitle(e,r,t,o,s){return hasContent(t)?React.createElement(FormLabel,{className:formClasses.formElementTitle,component:s,htmlFor:o,id:getLabelId(e),required:!!r},React.createElement(Markdown,{inline:!0,text:t})):null}const DescriptionMarkdown=styled(Markdown)(({theme:{palette:e}})=>({[`&.${formLabelClasses.disabled}`]:{color:e.text.disabled}}));function renderDescription(e,r,t,o){return hasContent(e)?React.createElement(DescriptionMarkdown,{className:clsx(o,{[formLabelClasses.disabled]:!t}),id:getDescriptionId(r),text:e}):null}function renderAccessibleDescription(e,r,t,o){let s=o.translateText(e);
|
|
1
|
+
import Box from"@vertigis/react-ui/Box";import FormLabel,{formLabelClasses}from"@vertigis/react-ui/FormLabel";import{styled}from"@vertigis/react-ui/styles";import clsx from"clsx";import{useCallback}from"react";import*as React from"react";import{hasContent,isMarkdown,markdownToText}from"../textUtilities.js";import{getAccessibleDescriptionId,getDescriptionId,getLabelId}from"../utils.js";import{formClasses}from"./Form.js";import Markdown from"./Markdown.js";export function renderTitle(e,r,t,o,s){return hasContent(t)?React.createElement(FormLabel,{className:formClasses.formElementTitle,component:s,htmlFor:o,id:getLabelId(e),required:!!r},React.createElement(Markdown,{inline:!0,text:t})):null}const DescriptionMarkdown=styled(Markdown)(({theme:{palette:e}})=>({[`&.${formLabelClasses.disabled}`]:{color:e.text.disabled}}));export function renderDescription(e,r,t,o){return hasContent(e)?React.createElement(DescriptionMarkdown,{className:clsx(o,{[formLabelClasses.disabled]:!t}),id:getDescriptionId(r),text:e}):null}export function renderAccessibleDescription(e,r,t,o){let s=o.translateText(e);if(!s){const e=o.translateText(r);s=isMarkdown(e)?markdownToText(e.markdown):e}return s?React.createElement(Box,{hidden:!0,id:getAccessibleDescriptionId(t)},s):null}const ErrorMarkdown=styled(Markdown)(({theme:{palette:e}})=>({color:e.custom.errorText,fontStyle:"italic",backgroundColor:e.custom.errorBackground}));export function renderError(e){return hasContent(e)?React.createElement(ErrorMarkdown,{role:"alert",text:e}):null}export function useFocusCallback(e,r,t){return useCallback(e=>{Array.isArray(e?.thumbRefs)&&e.thumbRefs.length>0&&(e=e.thumbRefs[0].current),null===e||e.disabled||t.renderFocus(e,r)},[e,r,t])}
|
package/forms/constants.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const FormComponentTypes={ACCORDIONGROUP:"accordionGroup",BODY:"body",ELEMENT:"element",FOOTER:"footer",FORM:"form",HEADER:"header",MAIN:"main",ROW:"row",SECTION:"section",TABGROUP:"tabGroup"}
|
|
1
|
+
export const FormComponentTypes={ACCORDIONGROUP:"accordionGroup",BODY:"body",ELEMENT:"element",FOOTER:"footer",FORM:"form",HEADER:"header",MAIN:"main",ROW:"row",SECTION:"section",TABGROUP:"tabGroup"};export const FormElementTypes={AUTOCOMPLETE:"AutoComplete",BUTTONBAR:"ButtonBar",CHECKBOX:"CheckBox",CHECKGROUP:"CheckGroup",CUSTOM:"Custom",DATEPICKER:"DatePicker",DATERANGEPICKER:"DateRangePicker",DATETIMEPICKER:"DateTimePicker",DROPDOWNLIST:"DropDownList",FILEPICKER:"FilePicker",GEOMETRYPICKER:"GeometryPicker",HEADER:"Header",HORIZONTALRULE:"HorizontalRule",IMAGE:"Image",ITEMPICKER:"ItemPicker",LISTBOX:"ListBox",NUMBER:"Number",NUMBERRANGESLIDER:"NumberRangeSlider",NUMBERSLIDER:"NumberSlider",PASSWORDBOX:"PasswordBox",RADIOGROUP:"RadioGroup",SCANNER:"Scanner",SECTION:"Section",SIGNATURE:"Signature",SKETCH:"Sketch",TEXT:"Text",TEXTAREA:"TextArea",TEXTBOX:"TextBox",TIMEPICKER:"TimePicker"};export var FormElementSize;!function(e){e.Full="full",e.Large="large",e.Medium="medium",e.Small="small"}(FormElementSize||(FormElementSize={}));export const Orientation={HORIZONTAL:"horizontal",VERTICAL:"vertical"};export var ScanType;!function(e){e.BarCode="barcode",e.QrCode="qrcode"}(ScanType||(ScanType={}));export const TitleLocation={ABOVE:"above",BESIDE:"beside"};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{DEFAULT_LOCALE}from"../constants.js";import{getPercentSymbolInfo,preciseRound}from"./numberUtilities.js";const CustomSpecifiers={Comma:",",DecimalPoint:".",Hash:"#",Percent:"%",Permille:"‰",Semicolon:";",Zero:"0"};function countDecimalsInCustomFormat(e,t){if(!e)return 0;const
|
|
1
|
+
import{DEFAULT_LOCALE}from"../constants.js";import{getPercentSymbolInfo,preciseRound}from"./numberUtilities.js";const CustomSpecifiers={Comma:",",DecimalPoint:".",Hash:"#",Percent:"%",Permille:"‰",Semicolon:";",Zero:"0"};export function countDecimalsInCustomFormat(e,t){if(!e)return 0;const n=e.split(CustomSpecifiers.Semicolon);e=chooseCustomFormatSection(n,t);const{parts:r}=inspectCustomFormat(e);if(r.some(e=>"exponentSeparator"===e.type))return;if(!r.some(e=>"decimal"===e.type))return 0;return r.filter(e=>"fraction"===e.type).length+2*r.filter(e=>"percentSign"===e.type).length+3*r.filter(e=>"permilleSign"===e.type).length}export function inspectCustomFormat(e){const t=[];let n=!1,r=!1,i=!1,o=!1;const a=/,|0|#|%|‰|[Ee]|[+-]|\.|\\.|(["'])[^1]+\1|[^,0#%‰Ee+-.\\"'+]+/g;let l=null;for(;null!==(l=a.exec(e));){const e=l[0];switch(e){case CustomSpecifiers.Comma:!o||n||r||t.push({type:"group",value:CustomSpecifiers.Comma});break;case CustomSpecifiers.DecimalPoint:n||(t.push({type:"decimal",value:CustomSpecifiers.DecimalPoint}),n=!0);break;case CustomSpecifiers.Hash:r?t.push({type:"exponentInteger",value:CustomSpecifiers.Hash}):n?t.push({type:"fraction",value:CustomSpecifiers.Hash}):(t.push({type:"integer",value:CustomSpecifiers.Hash}),o=!0);break;case CustomSpecifiers.Percent:t.push({type:"percentSign",value:CustomSpecifiers.Percent});break;case CustomSpecifiers.Permille:t.push({type:"permilleSign",value:CustomSpecifiers.Permille});break;case CustomSpecifiers.Zero:r?t.push({type:"exponentInteger",value:CustomSpecifiers.Zero}):n?t.push({required:!0,type:"fraction",value:CustomSpecifiers.Zero}):(t.push({required:!0,type:"integer",value:CustomSpecifiers.Zero}),o=!0);break;case"E":case"e":r?t.push({type:"literal",value:e}):(t.push({type:"exponentSeparator",value:e}),r=!0);break;case"+":r&&!i?(t.push({type:"exponentPlusSign",value:e}),i=!0):t.push({type:"literal",value:e});break;case"-":r&&!i?(t.push({type:"exponentMinusSign",value:e}),i=!0):t.push({type:"literal",value:e});break;default:e.startsWith("\\")?t.push({type:"literal",value:e[1]}):e.startsWith('"')||e.startsWith("'")?t.push({type:"literal",value:e.substring(1,e.length-1)}):t.push({type:"literal",value:e})}}let u=1;const s=t.findLastIndex(e=>"integer"===e.type);if(-1!==s){const e=s+1;for(;"group"===t[e]?.type;)u/=1e3,t.splice(e,1)}const p=t.some(e=>"group"===e.type);let c=t.findIndex(e=>"group"===e.type);for(;-1!==c;)t.splice(c,1),c=t.findIndex(e=>"group"===e.type);const m=t.filter(e=>"percentSign"===e.type).length;for(let e=0;e<m;e++)u*=100;const f=t.filter(e=>"permilleSign"===e.type).length;for(let e=0;e<f;e++)u*=1e3;return{multiplier:u,parts:t,useGrouping:p}}function chooseCustomFormatSection(e,t){const[n,r,i]=e;if(void 0===t)return n;switch(e.length){case 3:if(0===t)return i;case 2:if(t<0&&r)return r;default:return n}}export function customFormatNumber(e,t,n=DEFAULT_LOCALE){if(!t){return new Intl.NumberFormat(n).format(e)}const r=t.split(CustomSpecifiers.Semicolon),i=(t=chooseCustomFormatSection(r,e))===r[0]&&e<0,{multiplier:o,parts:a,useGrouping:l}=inspectCustomFormat(t),u={minimumFractionDigits:0,maximumFractionDigits:0};e*=o;const s=a.filter(e=>"fraction"===e.type&&!e.required).length,p=a.filter(e=>"fraction"===e.type&&e.required).length,c=p+s+2*a.filter(e=>"percentSign"===e.type).length+3*a.filter(e=>"permilleSign"===e.type).length;let m=[];const f=e=>{for(let t=e.length-1;t>=0;t--)if(""===e[t].value||0===t)return e[t]};if(a.some(e=>"exponentSeparator"===e.type)){const t=a.filter(e=>"integer"===e.type),r=t.findIndex(e=>"integer"===e.type&&e.required),i=t.findIndex(e=>"integer"===e.type&&!e.required),o=-1===r?0:t.length-r,l=-1===i?o:Math.max(o,t.length-i);if(l<=1)m=new Intl.NumberFormat(n,{maximumFractionDigits:c,minimumFractionDigits:p,notation:"scientific",useGrouping:!1}).formatToParts(e);else{const t=new Intl.NumberFormat(n,{maximumFractionDigits:20,minimumFractionDigits:1,minimumIntegerDigits:1,useGrouping:!1});m=t.formatToParts(e);const r=m.find(e=>"integer"===e.type),i=m.find(e=>"fraction"===e.type);let o=0;for(;r.value.length>l;){const e=r.value[r.value.length-1];i.value=e+i.value,r.value=r.value.substring(0,r.value.length-1),o++}for(;"0"===r.value||r.value.length<l;)if(0===i.value.length)r.value=r.value.padStart(l,"0");else{const e=i.value[0];"0"===r.value?r.value=e:r.value+=e,i.value=i.value.substring(1),o--}const a=preciseRound(parseFloat(m.map(e=>e.value).join("")),c);m=t.formatToParts(a),m.push({type:"exponentSeparator",value:"E"}),o<0&&m.push({type:"exponentMinusSign",value:"-"}),m.push({type:"exponentInteger",value:Math.abs(o).toString()})}const u=a.find(e=>"exponentMinusSign"===e.type||"exponentPlusSign"===e.type),s=u?.value,g="+"===s?"always":"negativeOnly",y=m.some(e=>"exponentMinusSign"===e.type);if("always"===g&&y)u.value="-";else if("negativeOnly"===g)if(y){if(!u){const e=a.findIndex(e=>"exponentSeparator"===e.type)+1;a.splice(e,0,{type:"exponentMinusSign",value:"-"})}}else u&&(u.value="");a.filter(e=>"exponentInteger"===e.type).forEach(e=>e.value="");const v=m.find(e=>"exponentInteger"===e.type)?.value.split("")||[],h=a.filter(e=>"exponentInteger"===e.type);for(let e=v.length-1;e>=0;e--){const t=f(h);if(!t)break;t.value=v[e]+t.value}a.filter(e=>"exponentInteger"===e.type&&""===e.value).forEach(e=>e.value="0")}else{(p>0||c>0)&&(u.minimumFractionDigits=p,u.maximumFractionDigits=c);m=new Intl.NumberFormat(n,u).formatToParts(e)}a.filter(e=>"integer"===e.type||"fraction"===e.type).forEach(e=>e.value="");const g=m.filter(e=>"integer"===e.type).map(e=>e.value.split("")).flat();if(g.length>1||"0"!==g[0]){const e=a.filter(e=>"integer"===e.type);for(let t=g.length-1;t>=0;t--){const n=f(e);if(!n)break;n.value=g[t]+n.value}}const y=m.filter(e=>"fraction"===e.type).map(e=>e.value.split("")).flat(),v=a.filter(e=>"fraction"===e.type),h=()=>{for(let e=0;e<v.length;e++)if(""===v[e].value)return v[e]};for(let e=0;e<y.length;e++){const t=h();if(!t)break;t.value=y[e]}if(a.filter(e=>e.required&&""===e.value).forEach(e=>e.value="0"),l){for(let e=0;e<a.length;e++){const t=a[e];if("integer"===t.type&&t.value.length>1){const n=t.type,r=t.value.split("");a[e]={type:n,value:r[0]};for(let t=1;t<r.length;t++)a.splice(e+t,0,{type:n,value:r[t]})}}let e=a.findLastIndex(e=>"integer"===e.type);for(;e>=1;){const t=e-2;if("integer"!==a[t-1]?.type)break;a.splice(t,0,{type:"group",value:","}),e=t-1}}if(n!==DEFAULT_LOCALE){const{decimalChar:e,groupChar:t}=getNumberFormatChars(n);e!==INVARIANT_DECIMAL_CHAR&&a.filter(e=>"decimal"===e.type).forEach(t=>t.value=e),t!==INVARIANT_GROUP_CHAR&&a.filter(e=>"group"===e.type).forEach(e=>e.value=t);const r=getPercentSymbolInfo(n)?.symbol||INVARIANT_PERCENT_CHAR;r!==INVARIANT_PERCENT_CHAR&&a.filter(e=>"percentSign"===e.type).forEach(e=>e.value=r)}if(i){const e=a.findIndex(e=>"integer"===e.type);-1!==e&&a.splice(e,0,{type:"minusSign",value:"-"})}return a.map(e=>e.value).join("")}const INVARIANT_DECIMAL_CHAR=".",INVARIANT_GROUP_CHAR=",",INVARIANT_LOCALE="en-US",INVARIANT_MINUS_SIGN="-",INVARIANT_PERCENT_CHAR="%";function getNumberFormatChars(e){let t=INVARIANT_DECIMAL_CHAR,n=INVARIANT_GROUP_CHAR;const r=new Intl.NumberFormat(e).formatToParts(1234.5),i=r.find(e=>"group"===e.type);i&&(n=i.value);const o=r.find(e=>"decimal"===e.type);return o&&(t=o.value),{groupChar:n,decimalChar:t}}export function parseCustomFormattedNumberToParts(e,t=DEFAULT_LOCALE){const{groupChar:n,decimalChar:r}=getNumberFormatChars(t),i=getPercentSymbolInfo(t)?.symbol||INVARIANT_PERCENT_CHAR,o=[],a={};let l;const u=[r,n,i],s=e=>{o.push(e),a[e.type]=!0},p={exponentInteger:!0,fraction:!0,integer:!0};for(const t of e){let e=l?.type||"unknown";const i=/[0-9\u0660-\u0669\u06f0-\u06f9]/.test(t);u.includes(t)?(e=t===r?"decimal":t===n?"group":"percentSign",l={type:e,value:t},s(l)):"‰"!==t?"e"!==t.toLowerCase()?"-"!==t.toLocaleLowerCase()?i?l?e in p?l.value+=t:(e=a.decimal?a.fraction?"exponentInteger":"fraction":"integer",l={type:e,value:t},s(l)):(l={type:"integer",value:t},s(l)):"literal"==l?.type?l.value+=t:(l={type:"literal",value:t},s(l)):(e=a.integer||a.decimal?a.exponentSeparator?"exponentMinusSign":"literal":"minusSign",l={type:e,value:t},s(l)):(l={type:"exponentSeparator",value:t},s(l)):(s({type:"literal",value:t}),l=void 0)}return o}export function parseCustomFormattedNumber(e,t,n=DEFAULT_LOCALE){let r=parseCustomFormattedNumberToParts(e,n);const i=t.split(CustomSpecifiers.Semicolon),o=i.map(e=>inspectCustomFormat(e)),a=o.map(e=>e.parts.filter(e=>"percentSign"===e.type).length),l=o.map(e=>e.parts.filter(e=>"permilleSign"===e.type).length),u=["group","literal","percentSign"];r=r.filter(e=>!u.includes(e.type)),"en-US"!=n&&(r.filter(e=>"decimal"===e.type).forEach(e=>e.value=INVARIANT_DECIMAL_CHAR),r.filter(e=>"minusSign"===e.type||"exponentMinusSign"===e.type).forEach(e=>e.value="-"),r.filter(e=>"integer"===e.type||"fraction"===e.type||"exponentInteger"===e.type).forEach(e=>e.value=e.value.replaceAll(/[\u0660-\u0669\u06f0-\u06f9]/g,e=>(15&e.charCodeAt(0)).toString())));const s=r.map(e=>e.value).join("");let p=parseFloat(s);if(0===p)return p;let c=r.filter(e=>"fraction"===e.type).map(e=>e.value).join("").length;if(r.some(e=>"exponentMinusSign"===e.type)){const e=r.find(e=>"exponentInteger"===e.type);if(e){c+=parseInt(e.value)}}const m=i[1];if(m){const{multiplier:t}=o[1];let r=p;r/=t;const i=c+2*a[1]+3*l[1];r=preciseRound(p,i);if(customFormatNumber(r,m,n)===e)return r<0?r:-r}const{multiplier:f}=o[0];p/=f;const g=c+2*a[0]+3*l[0];return p=preciseRound(p,g),p}
|
package/forms/dateUtilities.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { Calendar } from "./Calendar";
|
|
2
1
|
import type { DateRangeRef, DateTimeFormat, DateTimeRef, DateTimeType, FormatRef } from "./FormDefinition";
|
|
3
2
|
import type { defs } from "./FormHost";
|
|
4
3
|
import type { PickersLocaleText } from "@mui/x-date-pickers";
|
|
@@ -87,7 +86,7 @@ export declare function getDateBounds(format: FormatRef | undefined): {
|
|
|
87
86
|
* @param language The target language to retrieve the locale for.
|
|
88
87
|
*/
|
|
89
88
|
export declare function getDateFnsLocale(language: string): Promise<Locale | undefined>;
|
|
90
|
-
export declare function
|
|
89
|
+
export declare function getMuiLocaleText(language: string): Promise<Partial<PickersLocaleText<any>> | undefined>;
|
|
91
90
|
/**
|
|
92
91
|
* Gets the date format based on the current browser locale. This function will always return four digit year tokens
|
|
93
92
|
* and two digit month and day tokens. The browser locale however, will determine their placement and the separator.
|
|
@@ -103,7 +102,7 @@ export declare function getLocaleDateFormatTokenPosition(token: "yyyy" | "dd" |
|
|
|
103
102
|
* Inputs that can be converted to a DateRangeRef. Requires two values that can be converted into
|
|
104
103
|
* start and end dates
|
|
105
104
|
*/
|
|
106
|
-
|
|
105
|
+
type DateRangeLike = (Date | number | string)[] | {
|
|
107
106
|
startDate: Date | string;
|
|
108
107
|
endDate: Date | string;
|
|
109
108
|
};
|
|
@@ -123,7 +122,6 @@ export declare function convertToDateRangeRef(value: DateRangeLike | undefined):
|
|
|
123
122
|
* @param dateFormat The date format to set in cache.
|
|
124
123
|
*/
|
|
125
124
|
export declare function __test__setlocaleDateFormatInCache(dateFormat: string): void;
|
|
126
|
-
export declare function getLocale(language: string): Promise<Locale | undefined>;
|
|
127
125
|
type PartialValue = void | boolean | number | string | {
|
|
128
126
|
[name: string]: any;
|
|
129
127
|
format?: PartialValue | void;
|
|
@@ -132,6 +130,6 @@ type PartialValue = void | boolean | number | string | {
|
|
|
132
130
|
refValueType?: string;
|
|
133
131
|
value?: number;
|
|
134
132
|
};
|
|
135
|
-
export declare function makeProperValue(value: number | string | PartialValue
|
|
136
|
-
export declare function getNewElementValue(date: Date | undefined | null, refValueType: DateTimeType, format: DateTimeFormat
|
|
133
|
+
export declare function makeProperValue(value: number | string | PartialValue): Date | undefined;
|
|
134
|
+
export declare function getNewElementValue(date: Date | undefined | null, refValueType: DateTimeType, format: DateTimeFormat): DateTimeRef | undefined;
|
|
137
135
|
export {};
|
package/forms/dateUtilities.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{parse,isAfter}from"date-fns";import{DEFAULT_LOCALE}from"../constants.js";import{parseLocale}from"../definition/ProgramInspector.js";import{Calendar}from"./Calendar.js";import{isDateRangeRef,isDateTimeRef}from"./utils.js";const CURRENT_CENTURY_YEAR_CUTOFF=29,SUPPORTED_DATE_FNS_LOCALES=["cs","da","de","de-AT","en-AU","en-CA","en-GB","en-IN","en-NZ","en-US","en-ZA","fr","fr-CA","fr-CH","it","nb","nl","nl-BE","nn","pt","pt-BR"];let localeDateFormat="",dateFormatSeparator;function areValuesEqual(e,a){return void 0===e&&void 0===a||null===e&&null===a||(isDateTimeRef(e)&&a&&isDateTimeRef(a)?e.display===a.display&&e.refValueType===a.refValueType&&e.value===a.value&&areFormatsEqual(e.format,a.format):!!(isDateRangeRef(e)&&a&&isDateRangeRef(a))&&(e.endDate?.valueOf()===a.endDate?.valueOf()&&e.refValueType===a.refValueType&&e.startDate?.valueOf()===a.startDate?.valueOf()))}function areFormatsEqual(e,a){return void 0===e&&void 0===a||("string"==typeof e&&"string"==typeof a?e===a:"object"==typeof e&&"object"==typeof a&&(null===e||null===a?e===a:e.locale===a.locale&&e.timezone===a.timezone))}function isValidDate(e){return e instanceof Date&&!isNaN(e.valueOf())}function tryParseYear(e){if(/^\d+$/.test(e)&&!(4<e.length)){for(2===e.length&&(e=`${CURRENT_CENTURY_YEAR_CUTOFF>=parseInt(e,10)?20:19}${e}`);e.length<4;)e=`0${e}`;return e}}function tryParseMonth(e){if(/^\d+$/.test(e)&&!(2<e.length)){1===e.length&&(e=`0${e}`);var a=parseInt(e,10);if(!(a<1||12<a))return e}}function tryParseDay(e){if(/^\d+$/.test(e)&&!(2<e.length)){1===e.length&&(e=`0${e}`);var a=parseInt(e,10);if(!(a<1||31<a))return e}}function tryParseDateText(e){if(e){const r=(e=e.replace(/\\/g,"\\\\")).match(/(\d+)/g);if(3===r?.length){var e=getLocaleDateFormatSeparator(),a=getLocaleDateFormatTokenPosition("yyyy"),t=getLocaleDateFormatTokenPosition("MM");for(let e=0;e<3;e++){switch(e){case a:r[e]=tryParseYear(r[e]);break;case t:r[e]=tryParseMonth(r[e]);break;default:r[e]=tryParseDay(r[e])}if(void 0===r[e])return}return`${r[0]}${e}${r[1]}${e}${r[2]}`}}}const MinUIDate=new Date(0,0);MinUIDate.setFullYear(1);const MaxUIDate=new Date(9999,11,31,23,59,59,999);var TimeFormat;function getAmPm(e){var e=(e||{})["timeFormat"];switch(e){case"12-hour":return!0;case"24-hour":return!1;default:return}}function getDateBounds(e){var{lowerBound:a,upperBound:e}=e||{};return{min:a?new Date(a):MinUIDate,max:e?new Date(e):MaxUIDate}}function getTargetLanguages(e){e=parseLocale(e);if(!e)return[DEFAULT_LOCALE];const a=[];return e.territory&&a.push(`${e.language}-${e.territory}`),a.push(e.language),a.push(DEFAULT_LOCALE),a}async function getDateFnsLocale(e){for(const a of getTargetLanguages(e))if(-1!==SUPPORTED_DATE_FNS_LOCALES.indexOf(a)){let e;try{switch(a){case"cs":e=(await import("date-fns/locale/cs")).cs;break;case"da":e=(await import("date-fns/locale/da")).da;break;case"de":e=(await import("date-fns/locale/de")).de;break;case"de-AT":e=(await import("date-fns/locale/de-AT")).deAT;break;case"en-AU":e=(await import("date-fns/locale/en-AU")).enAU;break;case"en-CA":e=(await import("date-fns/locale/en-CA")).enCA;break;case"en-GB":e=(await import("date-fns/locale/en-GB")).enGB;break;case"en-IN":e=(await import("date-fns/locale/en-IN")).enIN;break;case"en-NZ":e=(await import("date-fns/locale/en-NZ")).enNZ;break;case"en-US":e=(await import("date-fns/locale/en-US")).enUS;break;case"en-ZA":e=(await import("date-fns/locale/en-ZA")).enZA;break;case"fr":e=(await import("date-fns/locale/fr")).fr;break;case"fr-CA":e=(await import("date-fns/locale/fr-CA")).frCA;break;case"fr-CH":e=(await import("date-fns/locale/fr-CH")).frCH;break;case"it":e=(await import("date-fns/locale/it")).it;break;case"nb":e=(await import("date-fns/locale/nb")).nb;break;case"nl":e=(await import("date-fns/locale/nl")).nl;break;case"nl-BE":e=(await import("date-fns/locale/nl-BE")).nlBE;break;case"nn":e=(await import("date-fns/locale/nn")).nn;break;case"pt":e=(await import("date-fns/locale/pt")).pt;break;case"pt-BR":e=(await import("date-fns/locale/pt-BR")).ptBR}}catch{continue}if(e?.localize)return e}}async function getLocaleText(e){for(const a of getTargetLanguages(e))if(-1!==SUPPORTED_DATE_FNS_LOCALES.indexOf(a)){let e;try{switch(a){case"cs":e=(await import("@mui/x-date-pickers/locales/csCZ")).csCZ;break;case"da":e=(await import("@mui/x-date-pickers/locales/daDK")).daDK;break;case"de":case"de-AT":e=(await import("@mui/x-date-pickers/locales/deDE")).deDE;break;case"en-AU":case"en-CA":case"en-GB":case"en-IN":case"en-NZ":case"en-US":case"en-ZA":case"nn":e=(await import("@mui/x-date-pickers/locales/enUS")).enUS;break;case"fr":case"fr-CA":case"fr-CH":e=(await import("@mui/x-date-pickers/locales/frFR")).frFR;break;case"it":e=(await import("@mui/x-date-pickers/locales/itIT")).itIT;break;case"nb":e=(await import("@mui/x-date-pickers/locales/nbNO")).nbNO;break;case"nl":case"nl-BE":e=(await import("@mui/x-date-pickers/locales/nlNL")).nlNL;break;case"pt":case"pt-BR":e=(await import("@mui/x-date-pickers/locales/ptBR")).ptBR}}catch{continue}return e?e.components.MuiLocalizationProvider.defaultProps.localeText:{}}}function getLocaleDateFormat(){if(localeDateFormat)return localeDateFormat;const e=new Date(1999,11,31,0,0,0);return localeDateFormat=e.toLocaleDateString(void 0,{year:"numeric",month:"numeric",day:"numeric"}),localeDateFormat=localeDateFormat.replace("1999","yyyy"),localeDateFormat=localeDateFormat.replace("99","yyyy"),localeDateFormat=localeDateFormat.replace("12","MM"),localeDateFormat=localeDateFormat.replace("31","dd"),localeDateFormat}function getLocaleDateFormatSeparator(){var e;return void 0===dateFormatSeparator&&(e=/[^dMy]+/.exec(getLocaleDateFormat()),dateFormatSeparator=e?e[0]:""),dateFormatSeparator}function getLocaleDateFormatTokenPosition(e){const a=getLocaleDateFormat();var t=a.indexOf("yyyy"),r=a.indexOf("MM"),o=a.indexOf("dd");return"yyyy"===e?0===t?0:r<t&&o<t?2:1:"MM"===e?0===r?0:o<r&&t<r?2:1:0===o?0:r<o&&t<o?2:1}!function(e){e.AUTO="auto",e.HOURS_12="12-hour",e.HOURS_24="24-hour"}(TimeFormat=TimeFormat||{});const coerceIntoDate=e=>{if(e instanceof Date&&isValidDate(e))return new Date(e.valueOf());if("string"==typeof e)if(/^\d+$/.test(e))e=Number(e);else{var a=tryParseDateText(e);if(a){var t=getLocaleDateFormat(),t=parse(a,t,0);if(isValidDate(t))return t}}if("number"==typeof e){e=new Date(e);if(isValidDate(e))return e}};function convertToDateRangeRef(e){let a,t,r=!1;Array.isArray(e)?(a=coerceIntoDate(e[0]),t=coerceIntoDate(e[1]),r=!0):"object"==typeof e&&(a=coerceIntoDate(e.startDate),t=coerceIntoDate(e.endDate));var o=!!a&&!!t;let n=o&&!isAfter(a,t);return r&&o&&!n&&(e=a,a=t,t=e,n=!0),o&&n?{refValueType:"daterange",startDate:a,endDate:t}:void 0}function __test__setlocaleDateFormatInCache(e){localeDateFormat=e,dateFormatSeparator=void 0}async function getLocale(e){return getDateFnsLocale(e)}function makeProperValue(e,a){if("object"==typeof e){if(null===e)return;switch(e.refValueType){case"date":case"time":case"datetime":break;default:return}e=e.value}if("number"==typeof e||"string"==typeof e){const t=a.coerceIntoValue(e);if(void 0!==t&&null!==t&&isFinite(t.valueOf()))return t}}function getNewElementValue(e,a,t,r){if(null!=e&&isFinite(e.valueOf()))return{refValueType:a,format:t,display:r.format(e,Calendar.fullFormat),value:e.valueOf()}}export{areValuesEqual,isValidDate,tryParseYear,tryParseMonth,tryParseDay,tryParseDateText,MinUIDate,MaxUIDate,TimeFormat,getAmPm,getDateBounds,getDateFnsLocale,getLocaleText,getLocaleDateFormat,getLocaleDateFormatSeparator,getLocaleDateFormatTokenPosition,convertToDateRangeRef,__test__setlocaleDateFormatInCache,getLocale,makeProperValue,getNewElementValue};
|
|
1
|
+
import{parse,isAfter}from"date-fns";import{DEFAULT_LOCALE}from"../constants.js";import{parseLocale}from"../definition/ProgramInspector.js";import{isDateRangeRef,isDateTimeRef}from"./utils.js";const CURRENT_CENTURY_YEAR_CUTOFF=29;let dateFormatSeparator,localeDateFormat="";export function areValuesEqual(a,e){return void 0===a&&void 0===e||null===a&&null===e||(isDateTimeRef(a)&&e&&isDateTimeRef(e)?a.display===e.display&&a.refValueType===e.refValueType&&a.value===e.value&&areFormatsEqual(a.format,e.format):!!(isDateRangeRef(a)&&e&&isDateRangeRef(e))&&(a.endDate?.valueOf()===e.endDate?.valueOf()&&a.refValueType===e.refValueType&&a.startDate?.valueOf()===e.startDate?.valueOf()))}function areFormatsEqual(a,e){return void 0===a&&void 0===e||("string"==typeof a&&"string"==typeof e?a===e:"object"==typeof a&&"object"==typeof e&&(null===a||null===e?a===e:a.locale===e.locale&&a.timezone===e.timezone))}export function isValidDate(a){return a instanceof Date&&!isNaN(a.valueOf())}export function tryParseYear(a){if(/^\d+$/.test(a)&&!(a.length>4)){if(2===a.length){a=`${29>=parseInt(a,10)?20:19}${a}`}for(;a.length<4;)a=`0${a}`;return a}}export function tryParseMonth(a){if(!/^\d+$/.test(a)||a.length>2)return;1===a.length&&(a=`0${a}`);const e=parseInt(a,10);return e<1||e>12?void 0:a}export function tryParseDay(a){if(!/^\d+$/.test(a)||a.length>2)return;1===a.length&&(a=`0${a}`);const e=parseInt(a,10);return e<1||e>31?void 0:a}export function tryParseDateText(a){if(!a)return;const e=(a=a.replace(/\\/g,"\\\\")).match(/(\d+)/g);if(3===e?.length){const a=getLocaleDateFormatSeparator(),t=getLocaleDateFormatTokenPosition("yyyy"),r=getLocaleDateFormatTokenPosition("MM");for(let a=0;a<3;a++){switch(a){case t:e[a]=tryParseYear(e[a]);break;case r:e[a]=tryParseMonth(e[a]);break;default:e[a]=tryParseDay(e[a])}if(void 0===e[a])return}return`${e[0]}${a}${e[1]}${a}${e[2]}`}}export const MinUIDate=new Date(0,0);MinUIDate.setFullYear(1);export const MaxUIDate=new Date(9999,11,31,23,59,59,999);export var TimeFormat;!function(a){a.AUTO="auto",a.HOURS_12="12-hour",a.HOURS_24="24-hour"}(TimeFormat||(TimeFormat={}));export function getAmPm(a){const{timeFormat:e}=a||{};switch(e){case"12-hour":return!0;case"24-hour":return!1;default:return}}export function getDateBounds(a){const{lowerBound:e,upperBound:t}=a||{};return{min:e?new Date(e):MinUIDate,max:t?new Date(t):MaxUIDate}}function getTargetLanguages(a){const e=parseLocale(a);if(!e)return[DEFAULT_LOCALE];const t=[];return e.territory&&t.push(`${e.language}-${e.territory}`),t.push(e.language),t.push(DEFAULT_LOCALE),t}export async function getDateFnsLocale(a){const e=getTargetLanguages(a);for(const a of e){let e;try{switch(a){case"af":e=(await import("date-fns/locale/af")).af;break;case"ar":e=(await import("date-fns/locale/ar")).ar;break;case"ar-DZ":e=(await import("date-fns/locale/ar-DZ")).arDZ;break;case"ar-EG":e=(await import("date-fns/locale/ar-EG")).arEG;break;case"ar-MA":e=(await import("date-fns/locale/ar-MA")).arMA;break;case"ar-SA":e=(await import("date-fns/locale/ar-SA")).arSA;break;case"ar-TN":e=(await import("date-fns/locale/ar-TN")).arTN;break;case"az":e=(await import("date-fns/locale/az")).az;break;case"be":e=(await import("date-fns/locale/be")).be;break;case"be-tarask":e=(await import("date-fns/locale/be-tarask")).beTarask;break;case"bg":e=(await import("date-fns/locale/bg")).bg;break;case"bn":e=(await import("date-fns/locale/bn")).bn;break;case"bs":e=(await import("date-fns/locale/bs")).bs;break;case"ca":e=(await import("date-fns/locale/ca")).ca;break;case"ckb":e=(await import("date-fns/locale/ckb")).ckb;break;case"cs":e=(await import("date-fns/locale/cs")).cs;break;case"cy":e=(await import("date-fns/locale/cy")).cy;break;case"da":e=(await import("date-fns/locale/da")).da;break;case"de":e=(await import("date-fns/locale/de")).de;break;case"de-AT":e=(await import("date-fns/locale/de-AT")).deAT;break;case"el":e=(await import("date-fns/locale/el")).el;break;case"en-AU":e=(await import("date-fns/locale/en-AU")).enAU;break;case"en-CA":e=(await import("date-fns/locale/en-CA")).enCA;break;case"en-GB":e=(await import("date-fns/locale/en-GB")).enGB;break;case"en-IE":e=(await import("date-fns/locale/en-IE")).enIE;break;case"en-IN":e=(await import("date-fns/locale/en-IN")).enIN;break;case"en-NZ":e=(await import("date-fns/locale/en-NZ")).enNZ;break;case"en":case"en-US":e=(await import("date-fns/locale/en-US")).enUS;break;case"en-ZA":e=(await import("date-fns/locale/en-ZA")).enZA;break;case"eo":e=(await import("date-fns/locale/eo")).eo;break;case"es":e=(await import("date-fns/locale/es")).es;break;case"et":e=(await import("date-fns/locale/et")).et;break;case"eu":e=(await import("date-fns/locale/eu")).eu;break;case"fa":case"fa-IR":e=(await import("date-fns/locale/fa-IR")).faIR;break;case"fi":e=(await import("date-fns/locale/fi")).fi;break;case"fr":e=(await import("date-fns/locale/fr")).fr;break;case"fr-CA":e=(await import("date-fns/locale/fr-CA")).frCA;break;case"fr-CH":e=(await import("date-fns/locale/fr-CH")).frCH;break;case"fy":e=(await import("date-fns/locale/fy")).fy;break;case"gd":e=(await import("date-fns/locale/gd")).gd;break;case"gl":e=(await import("date-fns/locale/gl")).gl;break;case"gu":e=(await import("date-fns/locale/gu")).gu;break;case"he":e=(await import("date-fns/locale/he")).he;break;case"hi":e=(await import("date-fns/locale/hi")).hi;break;case"hr":e=(await import("date-fns/locale/hr")).hr;break;case"ht":e=(await import("date-fns/locale/ht")).ht;break;case"hu":e=(await import("date-fns/locale/hu")).hu;break;case"hy":e=(await import("date-fns/locale/hy")).hy;break;case"id":e=(await import("date-fns/locale/id")).id;break;case"is":e=(await import("date-fns/locale/is")).is;break;case"it":e=(await import("date-fns/locale/it")).it;break;case"it-CH":e=(await import("date-fns/locale/it-CH")).itCH;break;case"ja":e=(await import("date-fns/locale/ja")).ja;break;case"ja-Hira":e=(await import("date-fns/locale/ja-Hira")).jaHira;break;case"ka":e=(await import("date-fns/locale/ka")).ka;break;case"kk":e=(await import("date-fns/locale/kk")).kk;break;case"km":e=(await import("date-fns/locale/km")).km;break;case"kn":e=(await import("date-fns/locale/kn")).kn;break;case"ko":e=(await import("date-fns/locale/ko")).ko;break;case"lb":e=(await import("date-fns/locale/lb")).lb;break;case"lt":e=(await import("date-fns/locale/lt")).lt;break;case"lv":e=(await import("date-fns/locale/lv")).lv;break;case"mk":e=(await import("date-fns/locale/mk")).mk;break;case"mn":e=(await import("date-fns/locale/mn")).mn;break;case"ms":e=(await import("date-fns/locale/ms")).ms;break;case"mt":e=(await import("date-fns/locale/mt")).mt;break;case"nb":e=(await import("date-fns/locale/nb")).nb;break;case"nl":e=(await import("date-fns/locale/nl")).nl;break;case"nl-BE":e=(await import("date-fns/locale/nl-BE")).nlBE;break;case"nn":e=(await import("date-fns/locale/nn")).nn;break;case"oc":e=(await import("date-fns/locale/oc")).oc;break;case"pl":e=(await import("date-fns/locale/pl")).pl;break;case"pt":e=(await import("date-fns/locale/pt")).pt;break;case"pt-BR":e=(await import("date-fns/locale/pt-BR")).ptBR;break;case"ro":e=(await import("date-fns/locale/ro")).ro;break;case"ru":e=(await import("date-fns/locale/ru")).ru;break;case"se":e=(await import("date-fns/locale/se")).se;break;case"sk":e=(await import("date-fns/locale/sk")).sk;break;case"sl":e=(await import("date-fns/locale/sl")).sl;break;case"sq":e=(await import("date-fns/locale/sq")).sq;break;case"sr":e=(await import("date-fns/locale/sr")).sr;break;case"sr-Latn":e=(await import("date-fns/locale/sr-Latn")).srLatn;break;case"sv":e=(await import("date-fns/locale/sv")).sv;break;case"ta":e=(await import("date-fns/locale/ta")).ta;break;case"te":e=(await import("date-fns/locale/te")).te;break;case"th":e=(await import("date-fns/locale/th")).th;break;case"tr":e=(await import("date-fns/locale/tr")).tr;break;case"ug":e=(await import("date-fns/locale/ug")).ug;break;case"uk":e=(await import("date-fns/locale/uk")).uk;break;case"uz":e=(await import("date-fns/locale/uz")).uz;break;case"uz-Cyrl":e=(await import("date-fns/locale/uz-Cyrl")).uzCyrl;break;case"vi":e=(await import("date-fns/locale/vi")).vi;break;case"zh":case"zh-CN":e=(await import("date-fns/locale/zh-CN")).zhCN;break;case"zh-HK":e=(await import("date-fns/locale/zh-HK")).zhHK;break;case"zh-TW":e=(await import("date-fns/locale/zh-TW")).zhTW}}catch{continue}if(e?.localize)return e}}export async function getMuiLocaleText(a){const e=getTargetLanguages(a);for(const a of e){let e;try{switch(a){case"be":case"be-BY":e=(await import("@mui/x-date-pickers/locales/beBY")).beBY;break;case"bg":case"bg-BG":e=(await import("@mui/x-date-pickers/locales/bgBG")).bgBG;break;case"bn":case"bn-BD":e=(await import("@mui/x-date-pickers/locales/bnBD")).bnBD;break;case"ca":case"ca-ES":e=(await import("@mui/x-date-pickers/locales/caES")).caES;break;case"cs":case"cs-CZ":e=(await import("@mui/x-date-pickers/locales/csCZ")).csCZ;break;case"da":case"da-DK":e=(await import("@mui/x-date-pickers/locales/daDK")).daDK;break;case"de":case"de-DE":case"de-AT":e=(await import("@mui/x-date-pickers/locales/deDE")).deDE;break;case"el":case"el-GR":e=(await import("@mui/x-date-pickers/locales/elGR")).elGR;break;case"en":case"en-AU":case"en-CA":case"en-GB":case"en-IN":case"en-NZ":case"en-US":case"en-ZA":default:e=(await import("@mui/x-date-pickers/locales/enUS")).enUS;break;case"es":case"es-ES":e=(await import("@mui/x-date-pickers/locales/esES")).esES;break;case"eu":e=(await import("@mui/x-date-pickers/locales/eu")).eu;break;case"fa":case"fa-IR":e=(await import("@mui/x-date-pickers/locales/faIR")).faIR;break;case"fi":case"fi-FI":e=(await import("@mui/x-date-pickers/locales/fiFI")).fiFI;break;case"fr":case"fr-CA":case"fr-CH":e=(await import("@mui/x-date-pickers/locales/frFR")).frFR;break;case"he":case"he-IL":e=(await import("@mui/x-date-pickers/locales/heIL")).heIL;break;case"hr":case"hr-HR":e=(await import("@mui/x-date-pickers/locales/hrHR")).hrHR;break;case"hu":case"hu-HU":e=(await import("@mui/x-date-pickers/locales/huHU")).huHU;break;case"is":case"is-IS":e=(await import("@mui/x-date-pickers/locales/isIS")).isIS;break;case"it":case"it-IT":e=(await import("@mui/x-date-pickers/locales/itIT")).itIT;break;case"ja":case"ja-JP":e=(await import("@mui/x-date-pickers/locales/jaJP")).jaJP;break;case"ko":case"ko-KR":e=(await import("@mui/x-date-pickers/locales/koKR")).koKR;break;case"kz":case"kz-KZ":e=(await import("@mui/x-date-pickers/locales/kzKZ")).kzKZ;break;case"mk":e=(await import("@mui/x-date-pickers/locales/mk")).mk;break;case"nb":case"nb-NO":e=(await import("@mui/x-date-pickers/locales/nbNO")).nbNO;break;case"nl":case"nl-BE":case"nl-NL":e=(await import("@mui/x-date-pickers/locales/nlNL")).nlNL;break;case"nn":case"nn-NO":e=(await import("@mui/x-date-pickers/locales/nnNO")).nnNO;break;case"pl":case"pl-PL":e=(await import("@mui/x-date-pickers/locales/plPL")).plPL;break;case"pt-BR":e=(await import("@mui/x-date-pickers/locales/ptBR")).ptBR;break;case"pt":case"pt-PT":e=(await import("@mui/x-date-pickers/locales/ptPT")).ptPT;break;case"ro":case"ro-RO":e=(await import("@mui/x-date-pickers/locales/roRO")).roRO;break;case"ru":case"ru-RU":e=(await import("@mui/x-date-pickers/locales/ruRU")).ruRU;break;case"sk":case"sk-SK":e=(await import("@mui/x-date-pickers/locales/skSK")).skSK;break;case"sv":case"sv-SE":e=(await import("@mui/x-date-pickers/locales/svSE")).svSE;break;case"tr":case"tr-TR":e=(await import("@mui/x-date-pickers/locales/trTR")).trTR;break;case"uk":case"uk-UA":e=(await import("@mui/x-date-pickers/locales/ukUA")).ukUA;break;case"ur":case"ur-PK":e=(await import("@mui/x-date-pickers/locales/urPK")).urPK;break;case"vi":case"vi-VN":e=(await import("@mui/x-date-pickers/locales/viVN")).viVN;break;case"zh":case"zh-CN":e=(await import("@mui/x-date-pickers/locales/zhCN")).zhCN;break;case"zh-HK":e=(await import("@mui/x-date-pickers/locales/zhHK")).zhHK;break;case"zh-TW":e=(await import("@mui/x-date-pickers/locales/zhTW")).zhTW}}catch{continue}return e?e.components.MuiLocalizationProvider.defaultProps.localeText:{}}}export function getLocaleDateFormat(){if(localeDateFormat)return localeDateFormat;const a=new Date(1999,11,31,0,0,0);return localeDateFormat=a.toLocaleDateString(void 0,{year:"numeric",month:"numeric",day:"numeric"}),localeDateFormat=localeDateFormat.replace("1999","yyyy"),localeDateFormat=localeDateFormat.replace("99","yyyy"),localeDateFormat=localeDateFormat.replace("12","MM"),localeDateFormat=localeDateFormat.replace("31","dd"),localeDateFormat}export function getLocaleDateFormatSeparator(){if(void 0===dateFormatSeparator){const a=/[^dMy]+/.exec(getLocaleDateFormat());dateFormatSeparator=a?a[0]:""}return dateFormatSeparator}export function getLocaleDateFormatTokenPosition(a){const e=getLocaleDateFormat(),t=e.indexOf("yyyy"),r=e.indexOf("MM"),s=e.indexOf("dd");return"yyyy"===a?0===t?0:t>r&&t>s?2:1:"MM"===a?0===r?0:r>s&&r>t?2:1:0===s?0:s>r&&s>t?2:1}const coerceIntoDate=a=>{if(a instanceof Date&&isValidDate(a))return new Date(a.valueOf());if("string"==typeof a)if(/^\d+$/.test(a))a=Number(a);else{const e=tryParseDateText(a);if(e){const a=getLocaleDateFormat(),t=parse(e,a,0);if(isValidDate(t))return t}}if("number"==typeof a){const e=new Date(a);if(isValidDate(e))return e}};export function convertToDateRangeRef(a){let e,t,r=!1;Array.isArray(a)?(e=coerceIntoDate(a[0]),t=coerceIntoDate(a[1]),r=!0):"object"==typeof a&&(e=coerceIntoDate(a.startDate),t=coerceIntoDate(a.endDate));const s=!!e&&!!t;let i=s&&!isAfter(e,t);if(r&&s&&!i){const a=e;e=t,t=a,i=!0}return s&&i?{refValueType:"daterange",startDate:e,endDate:t}:void 0}export function __test__setlocaleDateFormatInCache(a){localeDateFormat=a,dateFormatSeparator=void 0}export function makeProperValue(a){if("object"==typeof a){if(null===a)return;switch(a.refValueType){case"date":case"time":case"datetime":break;default:return}a=a.value}if("number"==typeof a||"string"==typeof a){const e=new Date(a);if(null!=e&&isFinite(e.valueOf()))return e}}export function getNewElementValue(a,e,t){return null!=a&&isFinite(a.valueOf())?{refValueType:e,format:t,display:a.toLocaleString(t.locale),value:a.valueOf()}:void 0}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const autoCompletePropertyConstraints={delay:{default:300,minimum:1},minLength:{default:3,minimum:1}};
|
|
1
|
+
export const autoCompletePropertyConstraints={delay:{default:300,minimum:1},minLength:{default:3,minimum:1}};
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
+
import type { ItemAppearance } from "../FormDefinition";
|
|
1
2
|
import type * as types from "./types";
|
|
2
3
|
export interface ButtonBar extends types.ElementBase, types.EditableElement, types.ElementWithItems<Item> {
|
|
3
4
|
}
|
|
4
5
|
export interface Item extends types.ElementItemBase<any> {
|
|
6
|
+
/** Settings controlling the appearance of the item. */
|
|
7
|
+
readonly appearance?: ItemAppearance;
|
|
5
8
|
/** Indicates if the item is a default. */
|
|
6
9
|
readonly default?: boolean;
|
|
7
10
|
/** Indicates if the element triggers validation when submitting. */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
package/forms/elements/Custom.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
package/forms/elements/Header.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
package/forms/elements/Image.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
package/forms/elements/Number.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const numberFormatConfiguration={lowerBound:{default:void 0},upperBound:{default:void 0}};
|
|
1
|
+
export const numberFormatConfiguration={lowerBound:{default:void 0},upperBound:{default:void 0}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const numberFormatConfiguration={precision:{default:0,minimum:0}};
|
|
1
|
+
export const numberFormatConfiguration={precision:{default:0,minimum:0}};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const scannerConfiguration={rows:{default:5,minimum:1}};
|
|
1
|
+
export const scannerConfiguration={rows:{default:5,minimum:1}};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const signatureConfiguration={height:{default:160},width:{default:400,maximum:550,minimum:200}};
|
|
1
|
+
export const signatureConfiguration={height:{default:160},width:{default:400,maximum:550,minimum:200}};
|
package/forms/elements/Sketch.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
package/forms/elements/Text.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
package/forms/elements/types.js
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export{};
|
package/forms/hostContext.d.ts
CHANGED
package/forms/hostContext.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{createContext}from"react";const HostContext=createContext({})
|
|
1
|
+
import{createContext}from"react";const HostContext=createContext({});export const HostProvider=HostContext.Provider;export default HostContext;
|
package/forms/index.d.ts
CHANGED
package/forms/keyboard.d.ts
CHANGED