@sapui5/sap.fe.core 1.110.0 → 1.111.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/README.md +0 -4
- package/package.json +2 -23
- package/src/sap/fe/core/.library +1 -1
- package/src/sap/fe/core/ActionRuntime-dbg.js +182 -0
- package/src/sap/fe/core/ActionRuntime.js +3 -181
- package/src/sap/fe/core/ActionRuntime.js.map +1 -0
- package/src/sap/fe/core/ActionRuntime.ts +3 -5
- package/src/sap/fe/core/AppComponent-dbg.js +435 -0
- package/src/sap/fe/core/AppComponent.js +3 -439
- package/src/sap/fe/core/AppComponent.js.map +1 -0
- package/src/sap/fe/core/AppComponent.ts +0 -3
- package/src/sap/fe/core/AppStateHandler-dbg.js +200 -0
- package/src/sap/fe/core/AppStateHandler.js +3 -227
- package/src/sap/fe/core/AppStateHandler.js.map +1 -0
- package/src/sap/fe/core/BaseController-dbg.js +76 -0
- package/src/sap/fe/core/BaseController.js +3 -73
- package/src/sap/fe/core/BaseController.js.map +1 -0
- package/src/sap/fe/core/CommonUtils-dbg.js +2135 -0
- package/src/sap/fe/core/CommonUtils.js +3 -2296
- package/src/sap/fe/core/CommonUtils.js.map +1 -0
- package/src/sap/fe/core/CommonUtils.ts +34 -28
- package/src/sap/fe/core/ExtensionAPI-dbg.js +273 -0
- package/src/sap/fe/core/ExtensionAPI.js +3 -280
- package/src/sap/fe/core/ExtensionAPI.js.map +1 -0
- package/src/sap/fe/core/PageController-dbg.js +203 -0
- package/src/sap/fe/core/PageController.js +3 -200
- package/src/sap/fe/core/PageController.js.map +1 -0
- package/src/sap/fe/core/TemplateComponent-dbg.js +218 -0
- package/src/sap/fe/core/TemplateComponent.js +3 -216
- package/src/sap/fe/core/TemplateComponent.js.map +1 -0
- package/src/sap/fe/core/TemplateModel-dbg.js +75 -0
- package/src/sap/fe/core/TemplateModel.js +3 -72
- package/src/sap/fe/core/TemplateModel.js.map +1 -0
- package/src/sap/fe/core/buildingBlocks/AttributeModel-dbg.js +57 -0
- package/src/sap/fe/core/buildingBlocks/AttributeModel.js +3 -54
- package/src/sap/fe/core/buildingBlocks/AttributeModel.js.map +1 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlock-dbg.js +410 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlock.js +11 -355
- package/src/sap/fe/core/buildingBlocks/BuildingBlock.js.map +1 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlock.ts +118 -52
- package/src/sap/fe/core/buildingBlocks/BuildingBlockFormatter-dbg.js +14 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockFormatter.js +3 -11
- package/src/sap/fe/core/buildingBlocks/BuildingBlockFormatter.js.map +1 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockFragment-dbg.js +44 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockFragment.js +3 -40
- package/src/sap/fe/core/buildingBlocks/BuildingBlockFragment.js.map +1 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockFragment.ts +3 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime-dbg.js +932 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.js +16 -1292
- package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.js.map +1 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlockRuntime.ts +40 -42
- package/src/sap/fe/core/buildingBlocks/TraceInfo-dbg.js +434 -0
- package/src/sap/fe/core/buildingBlocks/TraceInfo.js +3 -481
- package/src/sap/fe/core/buildingBlocks/TraceInfo.js.map +1 -0
- package/src/sap/fe/core/buildingBlocks/TraceInfo.ts +5 -5
- package/src/sap/fe/core/controllerextensions/BusyLocker-dbg.js +92 -0
- package/src/sap/fe/core/controllerextensions/BusyLocker.js +3 -89
- package/src/sap/fe/core/controllerextensions/BusyLocker.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/EditFlow-dbg.js +1659 -0
- package/src/sap/fe/core/controllerextensions/EditFlow.js +3 -1868
- package/src/sap/fe/core/controllerextensions/EditFlow.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/EditFlow.ts +180 -125
- package/src/sap/fe/core/controllerextensions/Feedback-dbg.js +70 -0
- package/src/sap/fe/core/controllerextensions/Feedback.js +3 -67
- package/src/sap/fe/core/controllerextensions/Feedback.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/IntentBasedNavigation-dbg.js +83 -0
- package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.js +3 -84
- package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/IntentBasedNavigation.ts +6 -8
- package/src/sap/fe/core/controllerextensions/InternalEditFlow-dbg.js +711 -0
- package/src/sap/fe/core/controllerextensions/InternalEditFlow.js +3 -707
- package/src/sap/fe/core/controllerextensions/InternalEditFlow.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/InternalEditFlow.ts +79 -48
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation-dbg.js +791 -0
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js +3 -696
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/InternalIntentBasedNavigation.ts +107 -7
- package/src/sap/fe/core/controllerextensions/InternalRouting-dbg.js +984 -0
- package/src/sap/fe/core/controllerextensions/InternalRouting.js +3 -996
- package/src/sap/fe/core/controllerextensions/InternalRouting.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/InternalRouting.ts +43 -23
- package/src/sap/fe/core/controllerextensions/KPIManagement-dbg.js +1013 -0
- package/src/sap/fe/core/controllerextensions/KPIManagement.js +3 -1011
- package/src/sap/fe/core/controllerextensions/KPIManagement.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/KPIManagement.ts +12 -10
- package/src/sap/fe/core/controllerextensions/MassEdit-dbg.js +135 -0
- package/src/sap/fe/core/controllerextensions/MassEdit.js +3 -133
- package/src/sap/fe/core/controllerextensions/MassEdit.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/MassEdit.ts +1 -1
- package/src/sap/fe/core/controllerextensions/MessageHandler-dbg.js +221 -0
- package/src/sap/fe/core/controllerextensions/MessageHandler.js +3 -224
- package/src/sap/fe/core/controllerextensions/MessageHandler.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/PageReady-dbg.js +254 -0
- package/src/sap/fe/core/controllerextensions/PageReady.js +3 -279
- package/src/sap/fe/core/controllerextensions/PageReady.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/PageReady.ts +2 -2
- package/src/sap/fe/core/controllerextensions/Paginator-dbg.js +169 -0
- package/src/sap/fe/core/controllerextensions/Paginator.js +3 -174
- package/src/sap/fe/core/controllerextensions/Paginator.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/Paginator.ts +4 -5
- package/src/sap/fe/core/controllerextensions/Placeholder-dbg.js +132 -0
- package/src/sap/fe/core/controllerextensions/Placeholder.js +3 -130
- package/src/sap/fe/core/controllerextensions/Placeholder.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/Routing-dbg.js +138 -0
- package/src/sap/fe/core/controllerextensions/Routing.js +3 -135
- package/src/sap/fe/core/controllerextensions/Routing.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/RoutingListener-dbg.js +10 -0
- package/src/sap/fe/core/controllerextensions/RoutingListener.js +3 -7
- package/src/sap/fe/core/controllerextensions/RoutingListener.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/Share-dbg.js +317 -0
- package/src/sap/fe/core/controllerextensions/Share.js +3 -356
- package/src/sap/fe/core/controllerextensions/Share.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/Share.ts +6 -1
- package/src/sap/fe/core/controllerextensions/SideEffects-dbg.js +553 -0
- package/src/sap/fe/core/controllerextensions/SideEffects.js +3 -651
- package/src/sap/fe/core/controllerextensions/SideEffects.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/SideEffects.ts +411 -553
- package/src/sap/fe/core/controllerextensions/ViewState-dbg.js +903 -0
- package/src/sap/fe/core/controllerextensions/ViewState.js +3 -967
- package/src/sap/fe/core/controllerextensions/ViewState.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/ViewState.ts +90 -41
- package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase-dbg.js +99 -0
- package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.js +3 -96
- package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync-dbg.js +314 -0
- package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync.js +3 -336
- package/src/sap/fe/core/controllerextensions/collaboration/ActivitySync.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon-dbg.js +152 -0
- package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.js +3 -161
- package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/collaboration/Manage-dbg.js +243 -0
- package/src/sap/fe/core/controllerextensions/collaboration/Manage.js +3 -302
- package/src/sap/fe/core/controllerextensions/collaboration/Manage.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/dialog/OperationsDialog.block-dbg.js +252 -0
- package/src/sap/fe/core/controllerextensions/dialog/OperationsDialog.block.js +6 -0
- package/src/sap/fe/core/controllerextensions/dialog/OperationsDialog.block.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/dialog/OperationsDialog.block.tsx +188 -0
- package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper-dbg.js +1196 -0
- package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.js +3 -1479
- package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.ts +239 -289
- package/src/sap/fe/core/controllerextensions/editFlow/draft-dbg.js +689 -0
- package/src/sap/fe/core/controllerextensions/editFlow/draft.js +3 -785
- package/src/sap/fe/core/controllerextensions/editFlow/draft.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/editFlow/draft.ts +134 -142
- package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup-dbg.js +236 -0
- package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.js +3 -287
- package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/editFlow/operations-dbg.js +1422 -0
- package/src/sap/fe/core/controllerextensions/editFlow/operations.js +3 -1598
- package/src/sap/fe/core/controllerextensions/editFlow/operations.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/editFlow/operations.ts +40 -24
- package/src/sap/fe/core/controllerextensions/editFlow/sticky-dbg.js +185 -0
- package/src/sap/fe/core/controllerextensions/editFlow/sticky.js +3 -214
- package/src/sap/fe/core/controllerextensions/editFlow/sticky.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/editFlow/sticky.ts +4 -5
- package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling-dbg.js +1219 -0
- package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.js +3 -1213
- package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/pageReady/DataQueryWatcher-dbg.js +304 -0
- package/src/sap/fe/core/controllerextensions/pageReady/DataQueryWatcher.js +3 -339
- package/src/sap/fe/core/controllerextensions/pageReady/DataQueryWatcher.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/routing/NavigationReason-dbg.js +15 -0
- package/src/sap/fe/core/controllerextensions/routing/NavigationReason.js +6 -0
- package/src/sap/fe/core/controllerextensions/routing/NavigationReason.js.map +1 -0
- package/src/sap/fe/core/controllerextensions/routing/NavigationReason.ts +6 -0
- package/src/sap/fe/core/controllerextensions/routing/RouterProxy-dbg.js +798 -0
- package/src/sap/fe/core/controllerextensions/routing/RouterProxy.js +3 -799
- package/src/sap/fe/core/controllerextensions/routing/RouterProxy.js.map +1 -0
- package/src/sap/fe/core/controls/Any-dbg.js +32 -0
- package/src/sap/fe/core/controls/Any.js +3 -29
- package/src/sap/fe/core/controls/Any.js.map +1 -0
- package/src/sap/fe/core/controls/AnyElement-dbg.js +29 -0
- package/src/sap/fe/core/controls/AnyElement.js +3 -26
- package/src/sap/fe/core/controls/AnyElement.js.map +1 -0
- package/src/sap/fe/core/controls/CommandExecution-dbg.js +72 -0
- package/src/sap/fe/core/controls/CommandExecution.js +3 -69
- package/src/sap/fe/core/controls/CommandExecution.js.map +1 -0
- package/src/sap/fe/core/controls/ConditionalWrapper-dbg.js +151 -0
- package/src/sap/fe/core/controls/ConditionalWrapper.js +3 -148
- package/src/sap/fe/core/controls/ConditionalWrapper.js.map +1 -0
- package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper-dbg.js +330 -0
- package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.js +3 -328
- package/src/sap/fe/core/controls/CustomFilterFieldContentWrapper.js.map +1 -0
- package/src/sap/fe/core/controls/CustomQuickViewPage-dbg.js +126 -0
- package/src/sap/fe/core/controls/CustomQuickViewPage.js +3 -124
- package/src/sap/fe/core/controls/CustomQuickViewPage.js.map +1 -0
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler-dbg.js +170 -0
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js +3 -171
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DataLossOrDraftDiscardHandler.js.map +1 -0
- package/src/sap/fe/core/controls/FieldWrapper-dbg.js +194 -0
- package/src/sap/fe/core/controls/FieldWrapper.js +3 -191
- package/src/sap/fe/core/controls/FieldWrapper.js.map +1 -0
- package/src/sap/fe/core/controls/FileWrapper-dbg.js +280 -0
- package/src/sap/fe/core/controls/FileWrapper.js +3 -277
- package/src/sap/fe/core/controls/FileWrapper.js.map +1 -0
- package/src/sap/fe/core/controls/FilterBar-dbg.js +167 -0
- package/src/sap/fe/core/controls/FilterBar.js +3 -166
- package/src/sap/fe/core/controls/FilterBar.js.map +1 -0
- package/src/sap/fe/core/controls/FormElementWrapper-dbg.js +92 -0
- package/src/sap/fe/core/controls/FormElementWrapper.js +3 -89
- package/src/sap/fe/core/controls/FormElementWrapper.js.map +1 -0
- package/src/sap/fe/core/controls/MassEditSelect-dbg.js +33 -0
- package/src/sap/fe/core/controls/MassEditSelect.js +3 -30
- package/src/sap/fe/core/controls/MassEditSelect.js.map +1 -0
- package/src/sap/fe/core/controls/MultiValueParameterDelegate-dbg.js +37 -0
- package/src/sap/fe/core/controls/MultiValueParameterDelegate.js +3 -34
- package/src/sap/fe/core/controls/MultiValueParameterDelegate.js.map +1 -0
- package/src/sap/fe/core/controls/filterbar/FilterContainer-dbg.js +119 -0
- package/src/sap/fe/core/controls/filterbar/FilterContainer.js +3 -121
- package/src/sap/fe/core/controls/filterbar/FilterContainer.js.map +1 -0
- package/src/sap/fe/core/controls/filterbar/VisualFilter-dbg.js +267 -0
- package/src/sap/fe/core/controls/filterbar/VisualFilter.js +3 -264
- package/src/sap/fe/core/controls/filterbar/VisualFilter.js.map +1 -0
- package/src/sap/fe/core/controls/filterbar/VisualFilterContainer-dbg.js +150 -0
- package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.js +3 -150
- package/src/sap/fe/core/controls/filterbar/VisualFilterContainer.js.map +1 -0
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils-dbg.js +310 -0
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js +3 -307
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.js.map +1 -0
- package/src/sap/fe/core/controls/filterbar/utils/VisualFilterUtils.ts +1 -1
- package/src/sap/fe/core/controls/massEdit/MassEditHandlers-dbg.js +491 -0
- package/src/sap/fe/core/controls/massEdit/MassEditHandlers.js +3 -504
- package/src/sap/fe/core/controls/massEdit/MassEditHandlers.js.map +1 -0
- package/src/sap/fe/core/controls/massEdit/MassEditHandlers.ts +2 -2
- package/src/sap/fe/core/converters/ConverterContext-dbg.js +403 -0
- package/src/sap/fe/core/converters/ConverterContext.js +3 -406
- package/src/sap/fe/core/converters/ConverterContext.js.map +1 -0
- package/src/sap/fe/core/converters/ManifestSettings-dbg.js +88 -0
- package/src/sap/fe/core/converters/ManifestSettings.js +3 -84
- package/src/sap/fe/core/converters/ManifestSettings.js.map +1 -0
- package/src/sap/fe/core/converters/ManifestSettings.ts +3 -1
- package/src/sap/fe/core/converters/ManifestWrapper-dbg.js +402 -0
- package/src/sap/fe/core/converters/ManifestWrapper.js +3 -406
- package/src/sap/fe/core/converters/ManifestWrapper.js.map +1 -0
- package/src/sap/fe/core/converters/MetaModelConverter-dbg.js +1161 -0
- package/src/sap/fe/core/converters/MetaModelConverter.js +3 -1225
- package/src/sap/fe/core/converters/MetaModelConverter.js.map +1 -0
- package/src/sap/fe/core/converters/MetaModelConverter.ts +193 -199
- package/src/sap/fe/core/converters/TemplateConverter-dbg.js +89 -0
- package/src/sap/fe/core/converters/TemplateConverter.js +3 -86
- package/src/sap/fe/core/converters/TemplateConverter.js.map +1 -0
- package/src/sap/fe/core/converters/annotations/DataField-dbg.js +396 -0
- package/src/sap/fe/core/converters/annotations/DataField.js +3 -394
- package/src/sap/fe/core/converters/annotations/DataField.js.map +1 -0
- package/src/sap/fe/core/converters/annotations/DataField.ts +5 -5
- package/src/sap/fe/core/converters/common/AnnotationConverter-dbg.js +1948 -0
- package/src/sap/fe/core/converters/common/AnnotationConverter.js +3 -1868
- package/src/sap/fe/core/converters/common/AnnotationConverter.js.map +1 -0
- package/src/sap/fe/core/converters/controls/Common/Action-dbg.js +424 -0
- package/src/sap/fe/core/converters/controls/Common/Action.js +3 -446
- package/src/sap/fe/core/converters/controls/Common/Action.js.map +1 -0
- package/src/sap/fe/core/converters/controls/Common/Action.ts +31 -14
- package/src/sap/fe/core/converters/controls/Common/Chart-dbg.js +276 -0
- package/src/sap/fe/core/converters/controls/Common/Chart.js +3 -260
- package/src/sap/fe/core/converters/controls/Common/Chart.js.map +1 -0
- package/src/sap/fe/core/converters/controls/Common/Chart.ts +52 -7
- package/src/sap/fe/core/converters/controls/Common/Criticality-dbg.js +42 -0
- package/src/sap/fe/core/converters/controls/Common/Criticality.js +3 -39
- package/src/sap/fe/core/converters/controls/Common/Criticality.js.map +1 -0
- package/src/sap/fe/core/converters/controls/Common/DataVisualization-dbg.js +247 -0
- package/src/sap/fe/core/converters/controls/Common/DataVisualization.js +3 -242
- package/src/sap/fe/core/converters/controls/Common/DataVisualization.js.map +1 -0
- package/src/sap/fe/core/converters/controls/Common/DataVisualization.ts +1 -1
- package/src/sap/fe/core/converters/controls/Common/Form-dbg.js +229 -0
- package/src/sap/fe/core/converters/controls/Common/Form.js +3 -234
- package/src/sap/fe/core/converters/controls/Common/Form.js.map +1 -0
- package/src/sap/fe/core/converters/controls/Common/KPI-dbg.js +374 -0
- package/src/sap/fe/core/converters/controls/Common/KPI.js +3 -371
- package/src/sap/fe/core/converters/controls/Common/KPI.js.map +1 -0
- package/src/sap/fe/core/converters/controls/Common/Table-dbg.js +2596 -0
- package/src/sap/fe/core/converters/controls/Common/Table.js +3 -2527
- package/src/sap/fe/core/converters/controls/Common/Table.js.map +1 -0
- package/src/sap/fe/core/converters/controls/Common/Table.ts +214 -77
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions-dbg.js +522 -0
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +3 -527
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js.map +1 -0
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +51 -50
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar-dbg.js +786 -0
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +3 -845
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js.map +1 -0
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +0 -64
- package/src/sap/fe/core/converters/controls/ListReport/VisualFilters-dbg.js +291 -0
- package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.js +3 -316
- package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.js.map +1 -0
- package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.ts +30 -12
- package/src/sap/fe/core/converters/controls/ObjectPage/Avatar-dbg.js +56 -0
- package/src/sap/fe/core/converters/controls/ObjectPage/Avatar.js +3 -53
- package/src/sap/fe/core/converters/controls/ObjectPage/Avatar.js.map +1 -0
- package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet-dbg.js +438 -0
- package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.js +3 -431
- package/src/sap/fe/core/converters/controls/ObjectPage/HeaderFacet.js.map +1 -0
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection-dbg.js +597 -0
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js +3 -630
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js.map +1 -0
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.ts +1 -1
- package/src/sap/fe/core/converters/helpers/Aggregation-dbg.js +204 -0
- package/src/sap/fe/core/converters/helpers/Aggregation.js +3 -204
- package/src/sap/fe/core/converters/helpers/Aggregation.js.map +1 -0
- package/src/sap/fe/core/converters/helpers/BindingHelper-dbg.js +100 -0
- package/src/sap/fe/core/converters/helpers/BindingHelper.js +3 -99
- package/src/sap/fe/core/converters/helpers/BindingHelper.js.map +1 -0
- package/src/sap/fe/core/converters/helpers/ConfigurableObject-dbg.js +199 -0
- package/src/sap/fe/core/converters/helpers/ConfigurableObject.js +3 -199
- package/src/sap/fe/core/converters/helpers/ConfigurableObject.js.map +1 -0
- package/src/sap/fe/core/converters/helpers/DataFieldHelper-dbg.js +143 -0
- package/src/sap/fe/core/converters/helpers/DataFieldHelper.js +3 -140
- package/src/sap/fe/core/converters/helpers/DataFieldHelper.js.map +1 -0
- package/src/sap/fe/core/converters/helpers/DataFieldHelper.ts +2 -1
- package/src/sap/fe/core/converters/helpers/ID-dbg.js +92 -0
- package/src/sap/fe/core/converters/helpers/ID.js +3 -89
- package/src/sap/fe/core/converters/helpers/ID.js.map +1 -0
- package/src/sap/fe/core/converters/helpers/IssueManager-dbg.js +62 -0
- package/src/sap/fe/core/converters/helpers/IssueManager.js +3 -59
- package/src/sap/fe/core/converters/helpers/IssueManager.js.map +1 -0
- package/src/sap/fe/core/converters/helpers/Key-dbg.js +62 -0
- package/src/sap/fe/core/converters/helpers/Key.js +3 -59
- package/src/sap/fe/core/converters/helpers/Key.js.map +1 -0
- package/src/sap/fe/core/converters/helpers/Key.ts +1 -1
- package/src/sap/fe/core/converters/helpers/SelectionVariantHelper-dbg.js +80 -0
- package/src/sap/fe/core/converters/helpers/SelectionVariantHelper.js +3 -77
- package/src/sap/fe/core/converters/helpers/SelectionVariantHelper.js.map +1 -0
- package/src/sap/fe/core/converters/objectPage/FormMenuActions-dbg.js +142 -0
- package/src/sap/fe/core/converters/objectPage/FormMenuActions.js +3 -139
- package/src/sap/fe/core/converters/objectPage/FormMenuActions.js.map +1 -0
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction-dbg.js +406 -0
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js +3 -422
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js.map +1 -0
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.ts +132 -111
- package/src/sap/fe/core/converters/templates/ListReportConverter-dbg.js +557 -0
- package/src/sap/fe/core/converters/templates/ListReportConverter.js +3 -589
- package/src/sap/fe/core/converters/templates/ListReportConverter.js.map +1 -0
- package/src/sap/fe/core/converters/templates/ObjectPageConverter-dbg.js +474 -0
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.js +3 -477
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.js.map +1 -0
- package/src/sap/fe/core/designtime/AppComponent-dbg.designtime.js +103 -0
- package/src/sap/fe/core/designtime/AppComponent.designtime.js +3 -100
- package/src/sap/fe/core/designtime/AppComponent.designtime.js.map +1 -0
- package/src/sap/fe/core/designtime/library-preload.designtime.js +7 -0
- package/src/sap/fe/core/designtime/library-preload.designtime.js.map +1 -0
- package/src/sap/fe/core/formatters/CollaborationFormatter-dbg.js +95 -0
- package/src/sap/fe/core/formatters/CollaborationFormatter.js +3 -92
- package/src/sap/fe/core/formatters/CollaborationFormatter.js.map +1 -0
- package/src/sap/fe/core/formatters/FPMFormatter-dbg.js +46 -0
- package/src/sap/fe/core/formatters/FPMFormatter.js +3 -44
- package/src/sap/fe/core/formatters/FPMFormatter.js.map +1 -0
- package/src/sap/fe/core/formatters/FPMFormatter.ts +3 -2
- package/src/sap/fe/core/formatters/FiscalFormat-dbg.js +343 -0
- package/src/sap/fe/core/formatters/FiscalFormat.js +6 -0
- package/src/sap/fe/core/formatters/FiscalFormat.js.map +1 -0
- package/src/sap/fe/core/formatters/FiscalFormat.ts +319 -0
- package/src/sap/fe/core/formatters/KPIFormatter-dbg.js +86 -0
- package/src/sap/fe/core/formatters/KPIFormatter.js +3 -83
- package/src/sap/fe/core/formatters/KPIFormatter.js.map +1 -0
- package/src/sap/fe/core/formatters/StandardFormatter-dbg.js +80 -0
- package/src/sap/fe/core/formatters/StandardFormatter.js +3 -78
- package/src/sap/fe/core/formatters/StandardFormatter.js.map +1 -0
- package/src/sap/fe/core/formatters/TableFormatter-dbg.js +276 -0
- package/src/sap/fe/core/formatters/TableFormatter.js +3 -275
- package/src/sap/fe/core/formatters/TableFormatter.js.map +1 -0
- package/src/sap/fe/core/formatters/TableFormatter.ts +1 -1
- package/src/sap/fe/core/formatters/TableFormatterTypes-dbg.js +20 -0
- package/src/sap/fe/core/formatters/TableFormatterTypes.js +3 -17
- package/src/sap/fe/core/formatters/TableFormatterTypes.js.map +1 -0
- package/src/sap/fe/core/formatters/ValueFormatter-dbg.js +172 -0
- package/src/sap/fe/core/formatters/ValueFormatter.js +3 -161
- package/src/sap/fe/core/formatters/ValueFormatter.js.map +1 -0
- package/src/sap/fe/core/formatters/ValueFormatter.ts +25 -8
- package/src/sap/fe/core/fpm/Component-dbg.js +94 -0
- package/src/sap/fe/core/fpm/Component.js +3 -91
- package/src/sap/fe/core/fpm/Component.js.map +1 -0
- package/src/sap/fe/core/fpm/manifest.json +1 -1
- package/src/sap/fe/core/helpers/AnnotationEnum-dbg.js +30 -0
- package/src/sap/fe/core/helpers/AnnotationEnum.js +3 -36
- package/src/sap/fe/core/helpers/AnnotationEnum.js.map +1 -0
- package/src/sap/fe/core/helpers/AppStartupHelper-dbg.js +334 -0
- package/src/sap/fe/core/helpers/AppStartupHelper.js +3 -335
- package/src/sap/fe/core/helpers/AppStartupHelper.js.map +1 -0
- package/src/sap/fe/core/helpers/BindingToolkit-dbg.js +1739 -0
- package/src/sap/fe/core/helpers/BindingToolkit.js +3 -1611
- package/src/sap/fe/core/helpers/BindingToolkit.js.map +1 -0
- package/src/sap/fe/core/helpers/BindingToolkit.ts +277 -97
- package/src/sap/fe/core/helpers/ClassSupport-dbg.js +421 -0
- package/src/sap/fe/core/helpers/ClassSupport.js +3 -420
- package/src/sap/fe/core/helpers/ClassSupport.js.map +1 -0
- package/src/sap/fe/core/helpers/ClassSupport.ts +13 -15
- package/src/sap/fe/core/helpers/DeleteHelper-dbg.js +526 -0
- package/src/sap/fe/core/helpers/DeleteHelper.js +3 -618
- package/src/sap/fe/core/helpers/DeleteHelper.js.map +1 -0
- package/src/sap/fe/core/helpers/DeleteHelper.ts +116 -134
- package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper-dbg.js +55 -0
- package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.js +3 -52
- package/src/sap/fe/core/helpers/DynamicAnnotationPathHelper.js.map +1 -0
- package/src/sap/fe/core/helpers/EditState-dbg.js +80 -0
- package/src/sap/fe/core/helpers/EditState.js +3 -77
- package/src/sap/fe/core/helpers/EditState.js.map +1 -0
- package/src/sap/fe/core/helpers/ExcelFormatHelper-dbg.js +55 -0
- package/src/sap/fe/core/helpers/ExcelFormatHelper.js +3 -52
- package/src/sap/fe/core/helpers/ExcelFormatHelper.js.map +1 -0
- package/src/sap/fe/core/helpers/FPMHelper-dbg.js +55 -0
- package/src/sap/fe/core/helpers/FPMHelper.js +3 -52
- package/src/sap/fe/core/helpers/FPMHelper.js.map +1 -0
- package/src/sap/fe/core/helpers/KeepAliveHelper-dbg.js +180 -0
- package/src/sap/fe/core/helpers/KeepAliveHelper.js +3 -177
- package/src/sap/fe/core/helpers/KeepAliveHelper.js.map +1 -0
- package/src/sap/fe/core/helpers/KeepAliveRefreshTypes-dbg.js +28 -0
- package/src/sap/fe/core/helpers/KeepAliveRefreshTypes.js +3 -25
- package/src/sap/fe/core/helpers/KeepAliveRefreshTypes.js.map +1 -0
- package/src/sap/fe/core/helpers/LoaderUtils-dbg.js +29 -0
- package/src/sap/fe/core/helpers/LoaderUtils.js +3 -30
- package/src/sap/fe/core/helpers/LoaderUtils.js.map +1 -0
- package/src/sap/fe/core/helpers/MassEditHelper-dbg.js +1229 -0
- package/src/sap/fe/core/helpers/MassEditHelper.js +3 -1309
- package/src/sap/fe/core/helpers/MassEditHelper.js.map +1 -0
- package/src/sap/fe/core/helpers/MassEditHelper.ts +6 -6
- package/src/sap/fe/core/helpers/MessageStrip-dbg.js +65 -0
- package/src/sap/fe/core/helpers/MessageStrip.js +3 -62
- package/src/sap/fe/core/helpers/MessageStrip.js.map +1 -0
- package/src/sap/fe/core/helpers/ModelHelper-dbg.js +489 -0
- package/src/sap/fe/core/helpers/ModelHelper.js +3 -503
- package/src/sap/fe/core/helpers/ModelHelper.js.map +1 -0
- package/src/sap/fe/core/helpers/ModelHelper.ts +13 -36
- package/src/sap/fe/core/helpers/PasteHelper-dbg.js +174 -0
- package/src/sap/fe/core/helpers/PasteHelper.js +3 -185
- package/src/sap/fe/core/helpers/PasteHelper.js.map +1 -0
- package/src/sap/fe/core/helpers/SemanticDateOperators-dbg.js +371 -0
- package/src/sap/fe/core/helpers/SemanticDateOperators.js +3 -368
- package/src/sap/fe/core/helpers/SemanticDateOperators.js.map +1 -0
- package/src/sap/fe/core/helpers/SemanticKeyHelper-dbg.js +70 -0
- package/src/sap/fe/core/helpers/SemanticKeyHelper.js +3 -67
- package/src/sap/fe/core/helpers/SemanticKeyHelper.js.map +1 -0
- package/src/sap/fe/core/helpers/SideEffectsHelper-dbg.js +141 -0
- package/src/sap/fe/core/helpers/SideEffectsHelper.js +3 -137
- package/src/sap/fe/core/helpers/SideEffectsHelper.js.map +1 -0
- package/src/sap/fe/core/helpers/SideEffectsHelper.ts +3 -2
- package/src/sap/fe/core/helpers/StableIdHelper-dbg.js +204 -0
- package/src/sap/fe/core/helpers/StableIdHelper.js +3 -208
- package/src/sap/fe/core/helpers/StableIdHelper.js.map +1 -0
- package/src/sap/fe/core/helpers/Synchronization-dbg.js +35 -0
- package/src/sap/fe/core/helpers/Synchronization.js +3 -33
- package/src/sap/fe/core/helpers/Synchronization.js.map +1 -0
- package/src/sap/fe/core/helpers/ToES6Promise-dbg.js +29 -0
- package/src/sap/fe/core/helpers/ToES6Promise.js +3 -26
- package/src/sap/fe/core/helpers/ToES6Promise.js.map +1 -0
- package/src/sap/fe/core/helpers/TypeGuards-dbg.js +20 -0
- package/src/sap/fe/core/helpers/TypeGuards.js +3 -19
- package/src/sap/fe/core/helpers/TypeGuards.js.map +1 -0
- package/src/sap/fe/core/helpers/TypeGuards.ts +5 -1
- package/src/sap/fe/core/jsx-runtime/Fragment-dbg.js +14 -0
- package/src/sap/fe/core/jsx-runtime/Fragment.js +3 -11
- package/src/sap/fe/core/jsx-runtime/Fragment.js.map +1 -0
- package/src/sap/fe/core/jsx-runtime/ViewLoader-dbg.js +76 -0
- package/src/sap/fe/core/jsx-runtime/ViewLoader.js +3 -86
- package/src/sap/fe/core/jsx-runtime/ViewLoader.js.map +1 -0
- package/src/sap/fe/core/jsx-runtime/jsx-control-dbg.js +124 -0
- package/src/sap/fe/core/jsx-runtime/jsx-control.js +3 -98
- package/src/sap/fe/core/jsx-runtime/jsx-control.js.map +1 -0
- package/src/sap/fe/core/jsx-runtime/jsx-control.ts +43 -17
- package/src/sap/fe/core/jsx-runtime/jsx-dbg.js +41 -0
- package/src/sap/fe/core/jsx-runtime/jsx-xml-dbg.js +94 -0
- package/src/sap/fe/core/jsx-runtime/jsx-xml.js +3 -90
- package/src/sap/fe/core/jsx-runtime/jsx-xml.js.map +1 -0
- package/src/sap/fe/core/jsx-runtime/jsx-xml.ts +1 -1
- package/src/sap/fe/core/jsx-runtime/jsx.js +3 -28
- package/src/sap/fe/core/jsx-runtime/jsx.js.map +1 -0
- package/src/sap/fe/core/jsx-runtime/jsx.ts +19 -1
- package/src/sap/fe/core/jsx-runtime/jsxs-dbg.js +10 -0
- package/src/sap/fe/core/jsx-runtime/jsxs.js +3 -7
- package/src/sap/fe/core/jsx-runtime/jsxs.js.map +1 -0
- package/src/sap/fe/core/jsx-runtime/useMDXComponents-dbg.js +154 -0
- package/src/sap/fe/core/jsx-runtime/useMDXComponents.js +3 -153
- package/src/sap/fe/core/jsx-runtime/useMDXComponents.js.map +1 -0
- package/src/sap/fe/core/library-dbg.js +437 -0
- package/src/sap/fe/core/library-preload.js +900 -0
- package/src/sap/fe/core/library-preload.js.map +1 -0
- package/src/sap/fe/core/library-preload.support.js +177 -0
- package/src/sap/fe/core/library-preload.support.js.map +1 -0
- package/src/sap/fe/core/library.js +3 -461
- package/src/sap/fe/core/library.js.map +1 -0
- package/src/sap/fe/core/library.support.js +1 -1
- package/src/sap/fe/core/library.ts +12 -25
- package/src/sap/fe/core/manifest.json +100 -0
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration-dbg.js +99 -0
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js +3 -96
- package/src/sap/fe/core/manifestMerger/ChangePageConfiguration.js.map +1 -0
- package/src/sap/fe/core/messagebundle.properties +6 -0
- package/src/sap/fe/core/messagebundle_ar.properties +22 -0
- package/src/sap/fe/core/messagebundle_bg.properties +22 -0
- package/src/sap/fe/core/messagebundle_ca.properties +22 -0
- package/src/sap/fe/core/messagebundle_cs.properties +22 -0
- package/src/sap/fe/core/messagebundle_cy.properties +22 -0
- package/src/sap/fe/core/messagebundle_da.properties +22 -0
- package/src/sap/fe/core/messagebundle_de.properties +22 -0
- package/src/sap/fe/core/messagebundle_el.properties +22 -0
- package/src/sap/fe/core/messagebundle_en.properties +22 -0
- package/src/sap/fe/core/messagebundle_en_GB.properties +22 -0
- package/src/sap/fe/core/messagebundle_en_US_sappsd.properties +22 -0
- package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +4 -0
- package/src/sap/fe/core/messagebundle_en_US_saptrc.properties +4 -0
- package/src/sap/fe/core/messagebundle_es.properties +22 -0
- package/src/sap/fe/core/messagebundle_es_MX.properties +22 -0
- package/src/sap/fe/core/messagebundle_et.properties +22 -0
- package/src/sap/fe/core/messagebundle_fi.properties +22 -0
- package/src/sap/fe/core/messagebundle_fr.properties +22 -0
- package/src/sap/fe/core/messagebundle_fr_CA.properties +22 -0
- package/src/sap/fe/core/messagebundle_hi.properties +22 -0
- package/src/sap/fe/core/messagebundle_hr.properties +23 -1
- package/src/sap/fe/core/messagebundle_hu.properties +22 -0
- package/src/sap/fe/core/messagebundle_id.properties +22 -0
- package/src/sap/fe/core/messagebundle_it.properties +22 -0
- package/src/sap/fe/core/messagebundle_iw.properties +22 -0
- package/src/sap/fe/core/messagebundle_ja.properties +22 -0
- package/src/sap/fe/core/messagebundle_kk.properties +22 -0
- package/src/sap/fe/core/messagebundle_ko.properties +22 -0
- package/src/sap/fe/core/messagebundle_lt.properties +22 -0
- package/src/sap/fe/core/messagebundle_lv.properties +22 -0
- package/src/sap/fe/core/messagebundle_ms.properties +22 -0
- package/src/sap/fe/core/messagebundle_nl.properties +22 -0
- package/src/sap/fe/core/messagebundle_no.properties +22 -0
- package/src/sap/fe/core/messagebundle_pl.properties +22 -0
- package/src/sap/fe/core/messagebundle_pt.properties +22 -0
- package/src/sap/fe/core/messagebundle_pt_PT.properties +22 -0
- package/src/sap/fe/core/messagebundle_ro.properties +22 -0
- package/src/sap/fe/core/messagebundle_ru.properties +22 -0
- package/src/sap/fe/core/messagebundle_sh.properties +22 -0
- package/src/sap/fe/core/messagebundle_sk.properties +22 -0
- package/src/sap/fe/core/messagebundle_sl.properties +22 -0
- package/src/sap/fe/core/messagebundle_sv.properties +22 -0
- package/src/sap/fe/core/messagebundle_th.properties +22 -0
- package/src/sap/fe/core/messagebundle_tr.properties +22 -0
- package/src/sap/fe/core/messagebundle_uk.properties +22 -0
- package/src/sap/fe/core/messagebundle_vi.properties +22 -0
- package/src/sap/fe/core/messagebundle_zh_CN.properties +22 -0
- package/src/sap/fe/core/messagebundle_zh_TW.properties +22 -0
- package/src/sap/fe/core/operationsHelper-dbg.js +155 -0
- package/src/sap/fe/core/operationsHelper.js +3 -205
- package/src/sap/fe/core/operationsHelper.js.map +1 -0
- package/src/sap/fe/core/operationsHelper.ts +14 -68
- package/src/sap/fe/core/rootView/Fcl-dbg.controller.js +837 -0
- package/src/sap/fe/core/rootView/Fcl.controller.js +3 -855
- package/src/sap/fe/core/rootView/Fcl.controller.js.map +1 -0
- package/src/sap/fe/core/rootView/NavContainer-dbg.controller.js +190 -0
- package/src/sap/fe/core/rootView/NavContainer.controller.js +3 -190
- package/src/sap/fe/core/rootView/NavContainer.controller.js.map +1 -0
- package/src/sap/fe/core/rootView/RootViewBaseController-dbg.js +506 -0
- package/src/sap/fe/core/rootView/RootViewBaseController.js +3 -538
- package/src/sap/fe/core/rootView/RootViewBaseController.js.map +1 -0
- package/src/sap/fe/core/rootView/RootViewBaseController.ts +3 -4
- package/src/sap/fe/core/services/AsyncComponentServiceFactory-dbg.js +60 -0
- package/src/sap/fe/core/services/AsyncComponentServiceFactory.js +3 -60
- package/src/sap/fe/core/services/AsyncComponentServiceFactory.js.map +1 -0
- package/src/sap/fe/core/services/CacheHandlerServiceFactory-dbg.js +196 -0
- package/src/sap/fe/core/services/CacheHandlerServiceFactory.js +3 -219
- package/src/sap/fe/core/services/CacheHandlerServiceFactory.js.map +1 -0
- package/src/sap/fe/core/services/EnvironmentServiceFactory-dbg.js +80 -0
- package/src/sap/fe/core/services/EnvironmentServiceFactory.js +3 -82
- package/src/sap/fe/core/services/EnvironmentServiceFactory.js.map +1 -0
- package/src/sap/fe/core/services/NavigationServiceFactory-dbg.js +320 -0
- package/src/sap/fe/core/services/NavigationServiceFactory.js +3 -320
- package/src/sap/fe/core/services/NavigationServiceFactory.js.map +1 -0
- package/src/sap/fe/core/services/ResourceModelServiceFactory-dbg.js +91 -0
- package/src/sap/fe/core/services/ResourceModelServiceFactory.js +3 -89
- package/src/sap/fe/core/services/ResourceModelServiceFactory.js.map +1 -0
- package/src/sap/fe/core/services/RoutingServiceFactory-dbg.js +817 -0
- package/src/sap/fe/core/services/RoutingServiceFactory.js +3 -847
- package/src/sap/fe/core/services/RoutingServiceFactory.js.map +1 -0
- package/src/sap/fe/core/services/RoutingServiceFactory.ts +6 -3
- package/src/sap/fe/core/services/ShellServicesFactory-dbg.js +732 -0
- package/src/sap/fe/core/services/ShellServicesFactory.js +3 -752
- package/src/sap/fe/core/services/ShellServicesFactory.js.map +1 -0
- package/src/sap/fe/core/services/SideEffectsServiceFactory-dbg.js +569 -0
- package/src/sap/fe/core/services/SideEffectsServiceFactory.js +3 -599
- package/src/sap/fe/core/services/SideEffectsServiceFactory.js.map +1 -0
- package/src/sap/fe/core/services/SideEffectsServiceFactory.ts +3 -3
- package/src/sap/fe/core/services/TemplatedViewServiceFactory-dbg.js +355 -0
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.js +3 -387
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.js.map +1 -0
- package/src/sap/fe/core/services/view/TemplatingErrorPage-dbg.controller.js +37 -0
- package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.js +3 -34
- package/src/sap/fe/core/services/view/TemplatingErrorPage.controller.js.map +1 -0
- package/src/sap/fe/core/support/AnnotationIssue.support.js +4 -4
- package/src/sap/fe/core/support/CollectionFacetMissingID.support.js +3 -3
- package/src/sap/fe/core/support/CollectionFacetUnsupportedLevel.support.js +3 -3
- package/src/sap/fe/core/support/CommonHelper-dbg.js +63 -0
- package/src/sap/fe/core/support/CommonHelper.js +3 -60
- package/src/sap/fe/core/support/CommonHelper.js.map +1 -0
- package/src/sap/fe/core/support/Diagnostics-dbg.js +44 -0
- package/src/sap/fe/core/support/Diagnostics.js +3 -49
- package/src/sap/fe/core/support/Diagnostics.js.map +1 -0
- package/src/sap/fe/core/support/InvalidAnnotationColumnKey.support.js +3 -3
- package/src/sap/fe/core/templating/CommonFormatters-dbg.js +70 -0
- package/src/sap/fe/core/templating/CommonFormatters.js +3 -66
- package/src/sap/fe/core/templating/CommonFormatters.js.map +1 -0
- package/src/sap/fe/core/templating/CommonFormatters.ts +9 -3
- package/src/sap/fe/core/templating/CriticalityFormatters-dbg.js +136 -0
- package/src/sap/fe/core/templating/CriticalityFormatters.js +3 -133
- package/src/sap/fe/core/templating/CriticalityFormatters.js.map +1 -0
- package/src/sap/fe/core/templating/DataFieldFormatters-dbg.js +58 -0
- package/src/sap/fe/core/templating/DataFieldFormatters.js +3 -55
- package/src/sap/fe/core/templating/DataFieldFormatters.js.map +1 -0
- package/src/sap/fe/core/templating/DataModelPathHelper-dbg.js +363 -0
- package/src/sap/fe/core/templating/DataModelPathHelper.js +3 -372
- package/src/sap/fe/core/templating/DataModelPathHelper.js.map +1 -0
- package/src/sap/fe/core/templating/DataModelPathHelper.ts +17 -8
- package/src/sap/fe/core/templating/DisplayModeFormatter-dbg.js +56 -0
- package/src/sap/fe/core/templating/DisplayModeFormatter.js +3 -124
- package/src/sap/fe/core/templating/DisplayModeFormatter.js.map +1 -0
- package/src/sap/fe/core/templating/DisplayModeFormatter.ts +0 -47
- package/src/sap/fe/core/templating/EntitySetHelper-dbg.js +68 -0
- package/src/sap/fe/core/templating/EntitySetHelper.js +3 -81
- package/src/sap/fe/core/templating/EntitySetHelper.js.map +1 -0
- package/src/sap/fe/core/templating/FieldControlHelper-dbg.js +77 -0
- package/src/sap/fe/core/templating/FieldControlHelper.js +3 -74
- package/src/sap/fe/core/templating/FieldControlHelper.js.map +1 -0
- package/src/sap/fe/core/templating/FilterHelper-dbg.js +346 -0
- package/src/sap/fe/core/templating/FilterHelper.js +3 -339
- package/src/sap/fe/core/templating/FilterHelper.js.map +1 -0
- package/src/sap/fe/core/templating/FilterHelper.ts +2 -21
- package/src/sap/fe/core/templating/FilterTemplating-dbg.js +62 -0
- package/src/sap/fe/core/templating/FilterTemplating.js +3 -59
- package/src/sap/fe/core/templating/FilterTemplating.js.map +1 -0
- package/src/sap/fe/core/templating/PropertyFormatters-dbg.js +93 -0
- package/src/sap/fe/core/templating/PropertyFormatters.js +3 -90
- package/src/sap/fe/core/templating/PropertyFormatters.js.map +1 -0
- package/src/sap/fe/core/templating/PropertyHelper-dbg.js +340 -0
- package/src/sap/fe/core/templating/PropertyHelper.js +3 -337
- package/src/sap/fe/core/templating/PropertyHelper.js.map +1 -0
- package/src/sap/fe/core/templating/SemanticObjectHelper-dbg.js +91 -0
- package/src/sap/fe/core/templating/SemanticObjectHelper.js +3 -43
- package/src/sap/fe/core/templating/SemanticObjectHelper.js.map +1 -0
- package/src/sap/fe/core/templating/SemanticObjectHelper.ts +45 -1
- package/src/sap/fe/core/templating/UIFormatters-dbg.js +498 -0
- package/src/sap/fe/core/templating/UIFormatters.js +3 -544
- package/src/sap/fe/core/templating/UIFormatters.js.map +1 -0
- package/src/sap/fe/core/templating/UIFormatters.ts +60 -110
- package/src/sap/fe/core/type/DateTimeWithTimezone-dbg.js +35 -0
- package/src/sap/fe/core/type/DateTimeWithTimezone.js +3 -33
- package/src/sap/fe/core/type/DateTimeWithTimezone.js.map +1 -0
- package/src/sap/fe/core/type/EDM-dbg.js +84 -0
- package/src/sap/fe/core/type/EDM.js +6 -0
- package/src/sap/fe/core/type/EDM.js.map +1 -0
- package/src/sap/fe/core/type/EDM.ts +70 -0
- package/src/sap/fe/core/type/Email-dbg.js +29 -0
- package/src/sap/fe/core/type/Email.js +3 -26
- package/src/sap/fe/core/type/Email.js.map +1 -0
- package/src/sap/fe/core/type/FiscalDate-dbg.js +174 -0
- package/src/sap/fe/core/type/FiscalDate.js +6 -0
- package/src/sap/fe/core/type/FiscalDate.js.map +1 -0
- package/src/sap/fe/core/type/FiscalDate.ts +179 -0
- package/src/sap/fe/core/type/TypeUtil-dbg.js +58 -0
- package/src/sap/fe/core/type/TypeUtil.js +3 -55
- package/src/sap/fe/core/type/TypeUtil.js.map +1 -0
- package/src/sap/fe/core/type/TypeUtil.ts +1 -0
- package/src/.eslintrc +0 -7
|
@@ -1,47 +1,6 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
|
-
* (c) Copyright 2009-
|
|
3
|
+
* (c) Copyright 2009-2023 SAP SE. All rights reserved
|
|
4
4
|
*/
|
|
5
|
-
sap.ui.define([], function () {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
var customBooleanPropertyCheck = function (oView, modulePath, aSelectedContexts) {
|
|
9
|
-
var _this = this;
|
|
10
|
-
var oExtensionAPI = oView.getController().getExtensionAPI();
|
|
11
|
-
var parts = modulePath.split(".");
|
|
12
|
-
var methodName = parts.pop();
|
|
13
|
-
var moduleName = parts.join("/");
|
|
14
|
-
return new Promise(function (resolve) {
|
|
15
|
-
sap.ui.require([moduleName], function (module) {
|
|
16
|
-
resolve(module[methodName].bind(oExtensionAPI)(_this.getBindingContext(), aSelectedContexts || []));
|
|
17
|
-
});
|
|
18
|
-
});
|
|
19
|
-
};
|
|
20
|
-
customBooleanPropertyCheck.__functionName = "sap.fe.core.formatters.FPMFormatter#customBooleanPropertyCheck";
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
* Collection of table formatters.
|
|
24
|
-
*
|
|
25
|
-
* @param this The context
|
|
26
|
-
* @param sName The inner function name
|
|
27
|
-
* @param oArgs The inner function parameters
|
|
28
|
-
* @returns The value from the inner function
|
|
29
|
-
*/
|
|
30
|
-
var fpmFormatter = function (sName) {
|
|
31
|
-
if (fpmFormatter.hasOwnProperty(sName)) {
|
|
32
|
-
for (var _len = arguments.length, oArgs = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
33
|
-
oArgs[_key - 1] = arguments[_key];
|
|
34
|
-
}
|
|
35
|
-
return fpmFormatter[sName].apply(this, oArgs);
|
|
36
|
-
} else {
|
|
37
|
-
return "";
|
|
38
|
-
}
|
|
39
|
-
};
|
|
40
|
-
fpmFormatter.customBooleanPropertyCheck = customBooleanPropertyCheck;
|
|
41
|
-
|
|
42
|
-
/**
|
|
43
|
-
* @global
|
|
44
|
-
*/
|
|
45
|
-
return fpmFormatter;
|
|
46
|
-
}, true);
|
|
47
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjdXN0b21Cb29sZWFuUHJvcGVydHlDaGVjayIsIm9WaWV3IiwibW9kdWxlUGF0aCIsImFTZWxlY3RlZENvbnRleHRzIiwib0V4dGVuc2lvbkFQSSIsImdldENvbnRyb2xsZXIiLCJnZXRFeHRlbnNpb25BUEkiLCJwYXJ0cyIsInNwbGl0IiwibWV0aG9kTmFtZSIsInBvcCIsIm1vZHVsZU5hbWUiLCJqb2luIiwiUHJvbWlzZSIsInJlc29sdmUiLCJzYXAiLCJ1aSIsInJlcXVpcmUiLCJtb2R1bGUiLCJiaW5kIiwiZ2V0QmluZGluZ0NvbnRleHQiLCJfX2Z1bmN0aW9uTmFtZSIsImZwbUZvcm1hdHRlciIsInNOYW1lIiwiaGFzT3duUHJvcGVydHkiLCJvQXJncyIsImFwcGx5Il0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJGUE1Gb3JtYXR0ZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgTWFuYWdlZE9iamVjdCBmcm9tIFwic2FwL3VpL2Jhc2UvTWFuYWdlZE9iamVjdFwiO1xuaW1wb3J0IHR5cGUgVmlldyBmcm9tIFwic2FwL3VpL2NvcmUvbXZjL1ZpZXdcIjtcbmltcG9ydCB0eXBlIENvbnRleHQgZnJvbSBcInNhcC91aS9tb2RlbC9vZGF0YS92NC9Db250ZXh0XCI7XG5cbmNvbnN0IGN1c3RvbUJvb2xlYW5Qcm9wZXJ0eUNoZWNrID0gZnVuY3Rpb24gKFxuXHR0aGlzOiBNYW5hZ2VkT2JqZWN0LFxuXHRvVmlldzogVmlldyxcblx0bW9kdWxlUGF0aDogc3RyaW5nLFxuXHRhU2VsZWN0ZWRDb250ZXh0czogQ29udGV4dFtdXG4pOiBQcm9taXNlPHZvaWQ+IHtcblx0Y29uc3Qgb0V4dGVuc2lvbkFQSSA9IChvVmlldy5nZXRDb250cm9sbGVyKCkgYXMgYW55KS5nZXRFeHRlbnNpb25BUEkoKTtcblx0Y29uc3QgcGFydHMgPSBtb2R1bGVQYXRoLnNwbGl0KFwiLlwiKTtcblx0Y29uc3QgbWV0aG9kTmFtZSA9IHBhcnRzLnBvcCgpIGFzIHN0cmluZztcblx0Y29uc3QgbW9kdWxlTmFtZSA9IHBhcnRzLmpvaW4oXCIvXCIpO1xuXG5cdHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuXHRcdHNhcC51aS5yZXF1aXJlKFttb2R1bGVOYW1lXSwgKG1vZHVsZTogYW55KSA9PiB7XG5cdFx0XHRyZXNvbHZlKG1vZHVsZVttZXRob2ROYW1lXS5iaW5kKG9FeHRlbnNpb25BUEkpKHRoaXMuZ2V0QmluZGluZ0NvbnRleHQoKSwgYVNlbGVjdGVkQ29udGV4dHMgfHwgW10pKTtcblx0XHR9KTtcblx0fSk7XG59O1xuY3VzdG9tQm9vbGVhblByb3BlcnR5Q2hlY2suX19mdW5jdGlvbk5hbWUgPSBcInNhcC5mZS5jb3JlLmZvcm1hdHRlcnMuRlBNRm9ybWF0dGVyI2N1c3RvbUJvb2xlYW5Qcm9wZXJ0eUNoZWNrXCI7XG5cbi8qKlxuICogQ29sbGVjdGlvbiBvZiB0YWJsZSBmb3JtYXR0ZXJzLlxuICpcbiAqIEBwYXJhbSB0aGlzIFRoZSBjb250ZXh0XG4gKiBAcGFyYW0gc05hbWUgVGhlIGlubmVyIGZ1bmN0aW9uIG5hbWVcbiAqIEBwYXJhbSBvQXJncyBUaGUgaW5uZXIgZnVuY3Rpb24gcGFyYW1ldGVyc1xuICogQHJldHVybnMgVGhlIHZhbHVlIGZyb20gdGhlIGlubmVyIGZ1bmN0aW9uXG4gKi9cbmNvbnN0IGZwbUZvcm1hdHRlciA9IGZ1bmN0aW9uICh0aGlzOiBvYmplY3QsIHNOYW1lOiBzdHJpbmcsIC4uLm9BcmdzOiBhbnlbXSk6IGFueSB7XG5cdGlmIChmcG1Gb3JtYXR0ZXIuaGFzT3duUHJvcGVydHkoc05hbWUpKSB7XG5cdFx0cmV0dXJuIChmcG1Gb3JtYXR0ZXIgYXMgYW55KVtzTmFtZV0uYXBwbHkodGhpcywgb0FyZ3MpO1xuXHR9IGVsc2Uge1xuXHRcdHJldHVybiBcIlwiO1xuXHR9XG59O1xuXG5mcG1Gb3JtYXR0ZXIuY3VzdG9tQm9vbGVhblByb3BlcnR5Q2hlY2sgPSBjdXN0b21Cb29sZWFuUHJvcGVydHlDaGVjaztcblxuLyoqXG4gKiBAZ2xvYmFsXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGZwbUZvcm1hdHRlcjtcbiJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQUE7QUFBQTs7OztFQUlBLElBQU1BLDBCQUEwQixHQUFHLFVBRWxDQyxLQUFXLEVBQ1hDLFVBQWtCLEVBQ2xCQyxpQkFBNEIsRUFDWjtJQUFBO0lBQ2hCLElBQU1DLGFBQWEsR0FBSUgsS0FBSyxDQUFDSSxhQUFhLEVBQUUsQ0FBU0MsZUFBZSxFQUFFO0lBQ3RFLElBQU1DLEtBQUssR0FBR0wsVUFBVSxDQUFDTSxLQUFLLENBQUMsR0FBRyxDQUFDO0lBQ25DLElBQU1DLFVBQVUsR0FBR0YsS0FBSyxDQUFDRyxHQUFHLEVBQVk7SUFDeEMsSUFBTUMsVUFBVSxHQUFHSixLQUFLLENBQUNLLElBQUksQ0FBQyxHQUFHLENBQUM7SUFFbEMsT0FBTyxJQUFJQyxPQUFPLENBQUMsVUFBQ0MsT0FBTyxFQUFLO01BQy9CQyxHQUFHLENBQUNDLEVBQUUsQ0FBQ0MsT0FBTyxDQUFDLENBQUNOLFVBQVUsQ0FBQyxFQUFFLFVBQUNPLE1BQVcsRUFBSztRQUM3Q0osT0FBTyxDQUFDSSxNQUFNLENBQUNULFVBQVUsQ0FBQyxDQUFDVSxJQUFJLENBQUNmLGFBQWEsQ0FBQyxDQUFDLEtBQUksQ0FBQ2dCLGlCQUFpQixFQUFFLEVBQUVqQixpQkFBaUIsSUFBSSxFQUFFLENBQUMsQ0FBQztNQUNuRyxDQUFDLENBQUM7SUFDSCxDQUFDLENBQUM7RUFDSCxDQUFDO0VBQ0RILDBCQUEwQixDQUFDcUIsY0FBYyxHQUFHLGdFQUFnRTs7RUFFNUc7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtFQUNBLElBQU1DLFlBQVksR0FBRyxVQUF3QkMsS0FBYSxFQUF3QjtJQUNqRixJQUFJRCxZQUFZLENBQUNFLGNBQWMsQ0FBQ0QsS0FBSyxDQUFDLEVBQUU7TUFBQSxrQ0FEc0JFLEtBQUs7UUFBTEEsS0FBSztNQUFBO01BRWxFLE9BQVFILFlBQVksQ0FBU0MsS0FBSyxDQUFDLENBQUNHLEtBQUssQ0FBQyxJQUFJLEVBQUVELEtBQUssQ0FBQztJQUN2RCxDQUFDLE1BQU07TUFDTixPQUFPLEVBQUU7SUFDVjtFQUNELENBQUM7RUFFREgsWUFBWSxDQUFDdEIsMEJBQTBCLEdBQUdBLDBCQUEwQjs7RUFFcEU7QUFDQTtBQUNBO0VBRkEsT0FHZXNCLFlBQVk7QUFBQSJ9
|
|
5
|
+
sap.ui.define([],function(){"use strict";const t=function(t,e,n){const o=t.getController().getExtensionAPI();const r=e.split(".");const s=r.pop();const i=r.join("/");return new Promise(t=>{sap.ui.require([i],e=>{t(e[s].bind(o)(this.getBindingContext(),n||[]))})})};t.__functionName="sap.fe.core.formatters.FPMFormatter#customBooleanPropertyCheck";const e=function(t){if(e.hasOwnProperty(t)){for(var n=arguments.length,o=new Array(n>1?n-1:0),r=1;r<n;r++){o[r-1]=arguments[r]}return e[t].apply(this,o)}else{return""}};e.customBooleanPropertyCheck=t;return e},true);
|
|
6
|
+
//# sourceMappingURL=FPMFormatter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FPMFormatter.js","names":["sap","ui","define","customBooleanPropertyCheck","oView","modulePath","aSelectedContexts","oExtensionAPI","getController","getExtensionAPI","parts","split","methodName","pop","moduleName","join","Promise","resolve","require","module","bind","this","getBindingContext","__functionName","fpmFormatter","sName","hasOwnProperty","_len","arguments","length","oArgs","Array","_key","apply"],"sources":["FPMFormatter-dbg.js"],"mappings":";;;;AAIAA,IAAIC,GAAGC,OAAO,GAAI,WAChB,aAEA,MAAMC,EAA6B,SAAUC,EAAOC,EAAYC,GAC9D,MAAMC,EAAgBH,EAAMI,gBAAgBC,kBAC5C,MAAMC,EAAQL,EAAWM,MAAM,KAC/B,MAAMC,EAAaF,EAAMG,MACzB,MAAMC,EAAaJ,EAAMK,KAAK,KAC9B,OAAO,IAAIC,QAAQC,IACjBjB,IAAIC,GAAGiB,QAAQ,CAACJ,GAAaK,IAC3BF,EAAQE,EAAOP,GAAYQ,KAAKb,EAAxBY,CAAuCE,KAAKC,oBAAqBhB,GAAqB,IAAI,EAClG,EAEN,EACAH,EAA2BoB,eAAiB,iEAU5C,MAAMC,EAAe,SAAUC,GAC7B,GAAID,EAAaE,eAAeD,GAAQ,CACtC,IAAK,IAAIE,EAAOC,UAAUC,OAAQC,EAAQ,IAAIC,MAAMJ,EAAO,EAAIA,EAAO,EAAI,GAAIK,EAAO,EAAGA,EAAOL,EAAMK,IAAQ,CAC3GF,EAAME,EAAO,GAAKJ,UAAUI,EAC9B,CACA,OAAOR,EAAaC,GAAOQ,MAAMZ,KAAMS,EACzC,KAAO,CACL,MAAO,EACT,CACF,EACAN,EAAarB,2BAA6BA,EAK1C,OAAOqB,CACT,EAAG"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import PageController from "sap/fe/core/PageController";
|
|
1
2
|
import type ManagedObject from "sap/ui/base/ManagedObject";
|
|
2
3
|
import type View from "sap/ui/core/mvc/View";
|
|
3
4
|
import type Context from "sap/ui/model/odata/v4/Context";
|
|
@@ -7,8 +8,8 @@ const customBooleanPropertyCheck = function (
|
|
|
7
8
|
oView: View,
|
|
8
9
|
modulePath: string,
|
|
9
10
|
aSelectedContexts: Context[]
|
|
10
|
-
): Promise<
|
|
11
|
-
const oExtensionAPI = (oView.getController() as
|
|
11
|
+
): Promise<unknown> {
|
|
12
|
+
const oExtensionAPI = (oView.getController() as PageController).getExtensionAPI();
|
|
12
13
|
const parts = modulePath.split(".");
|
|
13
14
|
const methodName = parts.pop() as string;
|
|
14
15
|
const moduleName = parts.join("/");
|
|
@@ -0,0 +1,343 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
|
+
* (c) Copyright 2009-2023 SAP SE. All rights reserved
|
|
4
|
+
*/
|
|
5
|
+
sap.ui.define(["sap/ui/core/Locale", "sap/ui/core/LocaleData"], function (Locale, LocaleData) {
|
|
6
|
+
"use strict";
|
|
7
|
+
|
|
8
|
+
var _exports = {};
|
|
9
|
+
/**
|
|
10
|
+
* Constructor for a new FiscalFormat
|
|
11
|
+
*
|
|
12
|
+
* @param formatOptions Object that defines format options
|
|
13
|
+
* @param formatOptions.format String with fiscal format
|
|
14
|
+
* @param formatOptions.calendarType String with calendar type
|
|
15
|
+
* @class
|
|
16
|
+
* <h3>Overview</h3>
|
|
17
|
+
*
|
|
18
|
+
* Formatting, Validating and Parsing Fiscal Dates
|
|
19
|
+
* @author SAP SE
|
|
20
|
+
* @version 1.111.0
|
|
21
|
+
* @experimental This module is only for internal/experimental use!
|
|
22
|
+
* @hideconstructor
|
|
23
|
+
*/
|
|
24
|
+
let FiscalFormat = /*#__PURE__*/function () {
|
|
25
|
+
function FiscalFormat(formatOptions) {
|
|
26
|
+
const locale = new Locale(sap.ui.getCore().getConfiguration().getLanguage()),
|
|
27
|
+
localeData = new LocaleData(locale);
|
|
28
|
+
let format = formatOptions.format;
|
|
29
|
+
if (formatOptions.format.length > 4) {
|
|
30
|
+
format = "yM";
|
|
31
|
+
} else if (formatOptions.format === "PPP") {
|
|
32
|
+
format = "M";
|
|
33
|
+
}
|
|
34
|
+
let pattern = localeData.getCustomDateTimePattern(format, formatOptions.calendarType);
|
|
35
|
+
pattern = pattern.replace(/([\u4e00-\u9faf\u3000-\u303f\u3040-\u309f\u30a0-\u30ff\uff00-\uffef])+/gi, "");
|
|
36
|
+
// Parsing the "yM" format pattern to the pattern that would match the passed format
|
|
37
|
+
if (formatOptions.format.length > 4) {
|
|
38
|
+
pattern = pattern.replace(/y+/i, formatOptions.format.slice(0, formatOptions.format.lastIndexOf("Y") + 1));
|
|
39
|
+
pattern = pattern.replace(/m+/i, formatOptions.format.slice(formatOptions.format.lastIndexOf("Y") + 1));
|
|
40
|
+
} else if (formatOptions.format === "PPP") {
|
|
41
|
+
pattern = "PPP";
|
|
42
|
+
}
|
|
43
|
+
const formatArray = this.parseCalendarDatePattern(pattern);
|
|
44
|
+
this.pattern = formatArray.length > 1 ? pattern : undefined;
|
|
45
|
+
this._setFormatRegex(formatArray);
|
|
46
|
+
this._setParseRegex(formatArray);
|
|
47
|
+
this._setValidationRegex(formatArray);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Get a date instance of the <code>FiscalFormat</code> class, which can be used for formatting.
|
|
52
|
+
*
|
|
53
|
+
* @param formatOptions Object that defines format options
|
|
54
|
+
* @param formatOptions.format Fiscal format
|
|
55
|
+
* @param formatOptions.calendarType Calendar type
|
|
56
|
+
* @returns Instance of the FiscalFormat
|
|
57
|
+
*/
|
|
58
|
+
_exports = FiscalFormat;
|
|
59
|
+
FiscalFormat.getDateInstance = function getDateInstance(formatOptions) {
|
|
60
|
+
return new FiscalFormat(formatOptions);
|
|
61
|
+
};
|
|
62
|
+
var _proto = FiscalFormat.prototype;
|
|
63
|
+
_proto.getPattern = function getPattern() {
|
|
64
|
+
return this.pattern;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Format the raw fiscal data to a locale-dependent format.
|
|
69
|
+
*
|
|
70
|
+
* @param value The parameter containing a raw fiscal value
|
|
71
|
+
* @returns The formatted value
|
|
72
|
+
*/;
|
|
73
|
+
_proto.format = function format(value) {
|
|
74
|
+
if (value == null) {
|
|
75
|
+
return "";
|
|
76
|
+
}
|
|
77
|
+
if (typeof value !== "string") {
|
|
78
|
+
return value;
|
|
79
|
+
}
|
|
80
|
+
return value.replace(this.formatRegExPattern, this.formatRegExGroups);
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
/**
|
|
84
|
+
* Parse from a locale-dependent format to a raw value.
|
|
85
|
+
*
|
|
86
|
+
* @param value The string containing a parsed fiscal data value
|
|
87
|
+
* @returns The raw value
|
|
88
|
+
*/;
|
|
89
|
+
_proto.parse = function parse(value) {
|
|
90
|
+
if (!value) {
|
|
91
|
+
return "";
|
|
92
|
+
}
|
|
93
|
+
return value.replace(this.parseRegExPattern, this.parseRegExReplacer);
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
/**
|
|
97
|
+
* Validates the data input.
|
|
98
|
+
*
|
|
99
|
+
* @param value The raw fiscal data
|
|
100
|
+
* @returns If <code>true</code> the validation passes, otherwise <code>false</code>
|
|
101
|
+
*/;
|
|
102
|
+
_proto.validate = function validate(value) {
|
|
103
|
+
return this.validationRegExPattern.test(value);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
/**
|
|
107
|
+
* Parse the date pattern string and create a format array from it.
|
|
108
|
+
* Array is used for data parsing and formatting.
|
|
109
|
+
*
|
|
110
|
+
* @param pattern The calendar date pattern string
|
|
111
|
+
* @returns Format array
|
|
112
|
+
*/;
|
|
113
|
+
_proto.parseCalendarDatePattern = function parseCalendarDatePattern(pattern) {
|
|
114
|
+
const formatArray = [];
|
|
115
|
+
let char,
|
|
116
|
+
currentObject = {
|
|
117
|
+
digits: 0,
|
|
118
|
+
value: "",
|
|
119
|
+
symbol: ""
|
|
120
|
+
};
|
|
121
|
+
for (const curChar of pattern) {
|
|
122
|
+
if (char !== curChar) {
|
|
123
|
+
currentObject = {
|
|
124
|
+
digits: 0,
|
|
125
|
+
value: "",
|
|
126
|
+
symbol: ""
|
|
127
|
+
};
|
|
128
|
+
} else {
|
|
129
|
+
currentObject.digits += 1;
|
|
130
|
+
continue;
|
|
131
|
+
}
|
|
132
|
+
if (typeof FiscalFormat.symbols[curChar] === "undefined") {
|
|
133
|
+
currentObject.value = curChar;
|
|
134
|
+
} else {
|
|
135
|
+
currentObject.symbol = curChar;
|
|
136
|
+
currentObject.digits = 1;
|
|
137
|
+
}
|
|
138
|
+
char = curChar;
|
|
139
|
+
formatArray.push(currentObject);
|
|
140
|
+
}
|
|
141
|
+
return formatArray;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
/**
|
|
145
|
+
* Creates the formatting regular expression based on the locale-dependent format.
|
|
146
|
+
*
|
|
147
|
+
* @param formatArray An array with the locale-dependent format
|
|
148
|
+
*/;
|
|
149
|
+
_proto._setFormatRegex = function _setFormatRegex(formatArray) {
|
|
150
|
+
const regExPattern = [],
|
|
151
|
+
regExGroups = [];
|
|
152
|
+
let part, symbol, regex, year;
|
|
153
|
+
for (let i = 0; i < formatArray.length; i++) {
|
|
154
|
+
part = formatArray[i];
|
|
155
|
+
symbol = part.symbol;
|
|
156
|
+
regex = FiscalFormat.symbols[symbol].format;
|
|
157
|
+
if (symbol === "") {
|
|
158
|
+
regExGroups[i] = part.value;
|
|
159
|
+
} else if (symbol.toLocaleLowerCase() === "y") {
|
|
160
|
+
regExPattern.unshift("(" + regex.source + ")");
|
|
161
|
+
regExGroups[i] = "$" + 1;
|
|
162
|
+
} else {
|
|
163
|
+
regExPattern.push("(" + regex.source + ")");
|
|
164
|
+
year = formatArray.some(function (partEntry) {
|
|
165
|
+
return partEntry.symbol.toLowerCase() === "y";
|
|
166
|
+
});
|
|
167
|
+
regExGroups[i] = year ? "$" + 2 : "$" + 1;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
this.formatRegExPattern = new RegExp(regExPattern.join(""));
|
|
171
|
+
this.formatRegExGroups = regExGroups.join("");
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
/**
|
|
175
|
+
* Creates the parsing regular expression based on the locale-dependent format.
|
|
176
|
+
*
|
|
177
|
+
* @param formatArray An array with the locale-dependent format
|
|
178
|
+
*/;
|
|
179
|
+
_proto._setParseRegex = function _setParseRegex(formatArray) {
|
|
180
|
+
const regExPattern = [],
|
|
181
|
+
filteredFormat = {};
|
|
182
|
+
let symbol,
|
|
183
|
+
regex,
|
|
184
|
+
currGroup,
|
|
185
|
+
group = 0;
|
|
186
|
+
for (const part of formatArray) {
|
|
187
|
+
symbol = part.symbol;
|
|
188
|
+
if (symbol === "") {
|
|
189
|
+
regExPattern.push("\\D+?");
|
|
190
|
+
} else {
|
|
191
|
+
regex = FiscalFormat.symbols[symbol].parse;
|
|
192
|
+
regExPattern.push("(" + regex.source + ")");
|
|
193
|
+
currGroup = ++group;
|
|
194
|
+
filteredFormat[currGroup] = part;
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
this.parseRegExPattern = new RegExp("^" + regExPattern.join("") + "$");
|
|
198
|
+
this.parseRegExReplacer = this.getRegExReplacer(filteredFormat);
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
/**
|
|
202
|
+
* Creates a function that is used to replace strings and then performs raw string parsing.
|
|
203
|
+
*
|
|
204
|
+
* @param filteredFormat An array with the locale-dependent format
|
|
205
|
+
* @returns Function that can be passed into the string.replace function
|
|
206
|
+
*/;
|
|
207
|
+
_proto.getRegExReplacer = function getRegExReplacer(filteredFormat) {
|
|
208
|
+
return function () {
|
|
209
|
+
const result = [];
|
|
210
|
+
let valuePart, stringGroup;
|
|
211
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
212
|
+
args[_key] = arguments[_key];
|
|
213
|
+
}
|
|
214
|
+
for (const key in filteredFormat) {
|
|
215
|
+
valuePart = filteredFormat[key];
|
|
216
|
+
stringGroup = args[parseInt(key, 10)];
|
|
217
|
+
if (stringGroup.length < valuePart.digits) {
|
|
218
|
+
if (valuePart.symbol.toLowerCase() === "y") {
|
|
219
|
+
stringGroup = parseYear(stringGroup);
|
|
220
|
+
} else {
|
|
221
|
+
stringGroup = stringGroup.padStart(valuePart.digits, "0");
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
if (valuePart.symbol.toLowerCase() === "y") {
|
|
225
|
+
result.unshift(stringGroup);
|
|
226
|
+
} else {
|
|
227
|
+
result.push(stringGroup);
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
return result.join("");
|
|
231
|
+
};
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
/**
|
|
235
|
+
* Creates the validation regular expression based on the format.
|
|
236
|
+
*
|
|
237
|
+
* @param formatArray An array with the locale-dependent format
|
|
238
|
+
*/;
|
|
239
|
+
_proto._setValidationRegex = function _setValidationRegex(formatArray) {
|
|
240
|
+
const regExPattern = [];
|
|
241
|
+
let symbol, regex;
|
|
242
|
+
for (const part of formatArray) {
|
|
243
|
+
symbol = part.symbol;
|
|
244
|
+
regex = FiscalFormat.symbols[symbol].format;
|
|
245
|
+
if (symbol === "") {
|
|
246
|
+
continue;
|
|
247
|
+
} else if (symbol.toLowerCase() === "y") {
|
|
248
|
+
regExPattern.unshift(regex.source);
|
|
249
|
+
} else {
|
|
250
|
+
regExPattern.push(regex.source);
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
this.validationRegExPattern = new RegExp("^(" + regExPattern.join(")(") + ")$");
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
/**
|
|
257
|
+
* Regular expression patterns used to format fiscal date strings
|
|
258
|
+
*/;
|
|
259
|
+
return FiscalFormat;
|
|
260
|
+
}();
|
|
261
|
+
/**
|
|
262
|
+
* Parses the Year format. This is how the DateFormat parses years, except those years consisting of 3 digits, since currency fiscal dates support only years consisting of 4 digits.
|
|
263
|
+
*
|
|
264
|
+
* @param year Year string
|
|
265
|
+
* @returns Year number
|
|
266
|
+
*/
|
|
267
|
+
FiscalFormat.regexFormatPatterns = {
|
|
268
|
+
year: /[1-9]\d{3}/,
|
|
269
|
+
period: /\d{3}/,
|
|
270
|
+
quarter: /[1-4]/,
|
|
271
|
+
week: /0[1-9]|[1-4]\d|5[0-3]/,
|
|
272
|
+
day: /371|370|3[0-6]\d|[1-2]\d{2}|[1-9]\d|[1-9]/
|
|
273
|
+
};
|
|
274
|
+
_exports = FiscalFormat;
|
|
275
|
+
FiscalFormat.regexParsePatterns = {
|
|
276
|
+
year: /\d{1,4}/,
|
|
277
|
+
period: /\d{1,3}/,
|
|
278
|
+
quarter: /[1-4]/,
|
|
279
|
+
week: /\d{1,2}/,
|
|
280
|
+
day: /[1-9]/
|
|
281
|
+
};
|
|
282
|
+
FiscalFormat.symbols = {
|
|
283
|
+
"": {
|
|
284
|
+
format: / /,
|
|
285
|
+
parse: / /
|
|
286
|
+
},
|
|
287
|
+
// "text"
|
|
288
|
+
y: {
|
|
289
|
+
format: FiscalFormat.regexFormatPatterns.year,
|
|
290
|
+
parse: FiscalFormat.regexParsePatterns.year
|
|
291
|
+
},
|
|
292
|
+
// "year"
|
|
293
|
+
Y: {
|
|
294
|
+
format: FiscalFormat.regexFormatPatterns.year,
|
|
295
|
+
parse: FiscalFormat.regexParsePatterns.year
|
|
296
|
+
},
|
|
297
|
+
// "weekYear"
|
|
298
|
+
P: {
|
|
299
|
+
format: FiscalFormat.regexFormatPatterns.period,
|
|
300
|
+
parse: FiscalFormat.regexParsePatterns.period
|
|
301
|
+
},
|
|
302
|
+
// "period"
|
|
303
|
+
W: {
|
|
304
|
+
format: FiscalFormat.regexFormatPatterns.week,
|
|
305
|
+
parse: FiscalFormat.regexParsePatterns.week
|
|
306
|
+
},
|
|
307
|
+
// "weekInYear"
|
|
308
|
+
d: {
|
|
309
|
+
format: FiscalFormat.regexFormatPatterns.day,
|
|
310
|
+
parse: FiscalFormat.regexParsePatterns.day
|
|
311
|
+
},
|
|
312
|
+
// "dayInYear"
|
|
313
|
+
Q: {
|
|
314
|
+
format: FiscalFormat.regexFormatPatterns.quarter,
|
|
315
|
+
parse: FiscalFormat.regexParsePatterns.quarter
|
|
316
|
+
},
|
|
317
|
+
// "quarter"
|
|
318
|
+
q: {
|
|
319
|
+
format: FiscalFormat.regexFormatPatterns.quarter,
|
|
320
|
+
parse: FiscalFormat.regexParsePatterns.quarter
|
|
321
|
+
} //"quarterStandalone"
|
|
322
|
+
};
|
|
323
|
+
|
|
324
|
+
function parseYear(year) {
|
|
325
|
+
let parsedYear = Number.parseInt(year, 10);
|
|
326
|
+
const currentYear = new Date().getUTCFullYear(),
|
|
327
|
+
currentCentury = Math.floor(currentYear / 100),
|
|
328
|
+
yearDiff = currentCentury * 100 + parsedYear - currentYear;
|
|
329
|
+
if (year.length === 3) {
|
|
330
|
+
parsedYear += Math.floor((currentCentury - 1) / 10) * 1000;
|
|
331
|
+
} else if (yearDiff < -70) {
|
|
332
|
+
parsedYear += (currentCentury + 1) * 100; // Take next century if "year" is 30 years in the future. Current year 1999 and we enter 28 it will we 2028
|
|
333
|
+
} else if (yearDiff < 30) {
|
|
334
|
+
parsedYear += currentCentury * 100; // Take next century if "year" is 30 years in the future. Current year 2000 and we enter 29 it will we 2029
|
|
335
|
+
} else {
|
|
336
|
+
parsedYear += (currentCentury - 1) * 100; // Any entered "year" that is more than 30 years in the future will be treated as from previous century
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
return parsedYear;
|
|
340
|
+
}
|
|
341
|
+
return _exports;
|
|
342
|
+
}, false);
|
|
343
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJGaXNjYWxGb3JtYXQiLCJmb3JtYXRPcHRpb25zIiwibG9jYWxlIiwiTG9jYWxlIiwic2FwIiwidWkiLCJnZXRDb3JlIiwiZ2V0Q29uZmlndXJhdGlvbiIsImdldExhbmd1YWdlIiwibG9jYWxlRGF0YSIsIkxvY2FsZURhdGEiLCJmb3JtYXQiLCJsZW5ndGgiLCJwYXR0ZXJuIiwiZ2V0Q3VzdG9tRGF0ZVRpbWVQYXR0ZXJuIiwiY2FsZW5kYXJUeXBlIiwicmVwbGFjZSIsInNsaWNlIiwibGFzdEluZGV4T2YiLCJmb3JtYXRBcnJheSIsInBhcnNlQ2FsZW5kYXJEYXRlUGF0dGVybiIsInVuZGVmaW5lZCIsIl9zZXRGb3JtYXRSZWdleCIsIl9zZXRQYXJzZVJlZ2V4IiwiX3NldFZhbGlkYXRpb25SZWdleCIsImdldERhdGVJbnN0YW5jZSIsImdldFBhdHRlcm4iLCJ2YWx1ZSIsImZvcm1hdFJlZ0V4UGF0dGVybiIsImZvcm1hdFJlZ0V4R3JvdXBzIiwicGFyc2UiLCJwYXJzZVJlZ0V4UGF0dGVybiIsInBhcnNlUmVnRXhSZXBsYWNlciIsInZhbGlkYXRlIiwidmFsaWRhdGlvblJlZ0V4UGF0dGVybiIsInRlc3QiLCJjaGFyIiwiY3VycmVudE9iamVjdCIsImRpZ2l0cyIsInN5bWJvbCIsImN1ckNoYXIiLCJzeW1ib2xzIiwicHVzaCIsInJlZ0V4UGF0dGVybiIsInJlZ0V4R3JvdXBzIiwicGFydCIsInJlZ2V4IiwieWVhciIsImkiLCJ0b0xvY2FsZUxvd2VyQ2FzZSIsInVuc2hpZnQiLCJzb3VyY2UiLCJzb21lIiwicGFydEVudHJ5IiwidG9Mb3dlckNhc2UiLCJSZWdFeHAiLCJqb2luIiwiZmlsdGVyZWRGb3JtYXQiLCJjdXJyR3JvdXAiLCJncm91cCIsImdldFJlZ0V4UmVwbGFjZXIiLCJyZXN1bHQiLCJ2YWx1ZVBhcnQiLCJzdHJpbmdHcm91cCIsImFyZ3MiLCJrZXkiLCJwYXJzZUludCIsInBhcnNlWWVhciIsInBhZFN0YXJ0IiwicmVnZXhGb3JtYXRQYXR0ZXJucyIsInBlcmlvZCIsInF1YXJ0ZXIiLCJ3ZWVrIiwiZGF5IiwicmVnZXhQYXJzZVBhdHRlcm5zIiwieSIsIlkiLCJQIiwiVyIsImQiLCJRIiwicSIsInBhcnNlZFllYXIiLCJOdW1iZXIiLCJjdXJyZW50WWVhciIsIkRhdGUiLCJnZXRVVENGdWxsWWVhciIsImN1cnJlbnRDZW50dXJ5IiwiTWF0aCIsImZsb29yIiwieWVhckRpZmYiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIkZpc2NhbEZvcm1hdC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQ2FsZW5kYXJUeXBlIGZyb20gXCJzYXAvdWkvY29yZS9DYWxlbmRhclR5cGVcIjtcbmltcG9ydCBMb2NhbGUgZnJvbSBcInNhcC91aS9jb3JlL0xvY2FsZVwiO1xuaW1wb3J0IExvY2FsZURhdGEgZnJvbSBcInNhcC91aS9jb3JlL0xvY2FsZURhdGFcIjtcblxuLyoqXG4gKiBDb25zdHJ1Y3RvciBmb3IgYSBuZXcgRmlzY2FsRm9ybWF0XG4gKlxuICogQHBhcmFtIGZvcm1hdE9wdGlvbnMgT2JqZWN0IHRoYXQgZGVmaW5lcyBmb3JtYXQgb3B0aW9uc1xuICogQHBhcmFtIGZvcm1hdE9wdGlvbnMuZm9ybWF0IFN0cmluZyB3aXRoIGZpc2NhbCBmb3JtYXRcbiAqIEBwYXJhbSBmb3JtYXRPcHRpb25zLmNhbGVuZGFyVHlwZSBTdHJpbmcgd2l0aCBjYWxlbmRhciB0eXBlXG4gKiBAY2xhc3NcbiAqIDxoMz5PdmVydmlldzwvaDM+XG4gKlxuICogRm9ybWF0dGluZywgVmFsaWRhdGluZyBhbmQgUGFyc2luZyBGaXNjYWwgRGF0ZXNcbiAqIEBhdXRob3IgU0FQIFNFXG4gKiBAdmVyc2lvbiAke3ZlcnNpb259XG4gKiBAZXhwZXJpbWVudGFsIFRoaXMgbW9kdWxlIGlzIG9ubHkgZm9yIGludGVybmFsL2V4cGVyaW1lbnRhbCB1c2UhXG4gKiBAaGlkZWNvbnN0cnVjdG9yXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEZpc2NhbEZvcm1hdCB7XG5cdHByaXZhdGUgcGF0dGVybjogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXHRwcml2YXRlIGZvcm1hdFJlZ0V4UGF0dGVybiE6IFJlZ0V4cDtcblx0cHJpdmF0ZSBmb3JtYXRSZWdFeEdyb3VwcyE6IHN0cmluZztcblx0cHJpdmF0ZSBwYXJzZVJlZ0V4UGF0dGVybiE6IFJlZ0V4cDtcblx0cHJpdmF0ZSB2YWxpZGF0aW9uUmVnRXhQYXR0ZXJuITogUmVnRXhwO1xuXHRwcml2YXRlIHBhcnNlUmVnRXhSZXBsYWNlciE6IChzdWJzdHJpbmc6IHN0cmluZywgLi4uYXJnczogYW55W10pID0+IHN0cmluZztcblxuXHRjb25zdHJ1Y3Rvcihmb3JtYXRPcHRpb25zOiB7IGZvcm1hdDogc3RyaW5nOyBjYWxlbmRhclR5cGU6IENhbGVuZGFyVHlwZSB9KSB7XG5cdFx0Y29uc3QgbG9jYWxlID0gbmV3IExvY2FsZShzYXAudWkuZ2V0Q29yZSgpLmdldENvbmZpZ3VyYXRpb24oKS5nZXRMYW5ndWFnZSgpKSxcblx0XHRcdGxvY2FsZURhdGEgPSBuZXcgTG9jYWxlRGF0YShsb2NhbGUpO1xuXG5cdFx0bGV0IGZvcm1hdCA9IGZvcm1hdE9wdGlvbnMuZm9ybWF0O1xuXHRcdGlmIChmb3JtYXRPcHRpb25zLmZvcm1hdC5sZW5ndGggPiA0KSB7XG5cdFx0XHRmb3JtYXQgPSBcInlNXCI7XG5cdFx0fSBlbHNlIGlmIChmb3JtYXRPcHRpb25zLmZvcm1hdCA9PT0gXCJQUFBcIikge1xuXHRcdFx0Zm9ybWF0ID0gXCJNXCI7XG5cdFx0fVxuXG5cdFx0bGV0IHBhdHRlcm4gPSBsb2NhbGVEYXRhLmdldEN1c3RvbURhdGVUaW1lUGF0dGVybihmb3JtYXQsIGZvcm1hdE9wdGlvbnMuY2FsZW5kYXJUeXBlKTtcblx0XHRwYXR0ZXJuID0gcGF0dGVybi5yZXBsYWNlKC8oW1xcdTRlMDAtXFx1OWZhZlxcdTMwMDAtXFx1MzAzZlxcdTMwNDAtXFx1MzA5ZlxcdTMwYTAtXFx1MzBmZlxcdWZmMDAtXFx1ZmZlZl0pKy9naSwgXCJcIik7XG5cdFx0Ly8gUGFyc2luZyB0aGUgXCJ5TVwiIGZvcm1hdCBwYXR0ZXJuIHRvIHRoZSBwYXR0ZXJuIHRoYXQgd291bGQgbWF0Y2ggdGhlIHBhc3NlZCBmb3JtYXRcblx0XHRpZiAoZm9ybWF0T3B0aW9ucy5mb3JtYXQubGVuZ3RoID4gNCkge1xuXHRcdFx0cGF0dGVybiA9IHBhdHRlcm4ucmVwbGFjZSgveSsvaSwgZm9ybWF0T3B0aW9ucy5mb3JtYXQuc2xpY2UoMCwgZm9ybWF0T3B0aW9ucy5mb3JtYXQubGFzdEluZGV4T2YoXCJZXCIpICsgMSkpO1xuXHRcdFx0cGF0dGVybiA9IHBhdHRlcm4ucmVwbGFjZSgvbSsvaSwgZm9ybWF0T3B0aW9ucy5mb3JtYXQuc2xpY2UoZm9ybWF0T3B0aW9ucy5mb3JtYXQubGFzdEluZGV4T2YoXCJZXCIpICsgMSkpO1xuXHRcdH0gZWxzZSBpZiAoZm9ybWF0T3B0aW9ucy5mb3JtYXQgPT09IFwiUFBQXCIpIHtcblx0XHRcdHBhdHRlcm4gPSBcIlBQUFwiO1xuXHRcdH1cblxuXHRcdGNvbnN0IGZvcm1hdEFycmF5ID0gdGhpcy5wYXJzZUNhbGVuZGFyRGF0ZVBhdHRlcm4ocGF0dGVybik7XG5cdFx0dGhpcy5wYXR0ZXJuID0gZm9ybWF0QXJyYXkubGVuZ3RoID4gMSA/IHBhdHRlcm4gOiB1bmRlZmluZWQ7XG5cdFx0dGhpcy5fc2V0Rm9ybWF0UmVnZXgoZm9ybWF0QXJyYXkpO1xuXHRcdHRoaXMuX3NldFBhcnNlUmVnZXgoZm9ybWF0QXJyYXkpO1xuXHRcdHRoaXMuX3NldFZhbGlkYXRpb25SZWdleChmb3JtYXRBcnJheSk7XG5cdH1cblxuXHQvKipcblx0ICogR2V0IGEgZGF0ZSBpbnN0YW5jZSBvZiB0aGUgPGNvZGU+RmlzY2FsRm9ybWF0PC9jb2RlPiBjbGFzcywgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIGZvcm1hdHRpbmcuXG5cdCAqXG5cdCAqIEBwYXJhbSBmb3JtYXRPcHRpb25zIE9iamVjdCB0aGF0IGRlZmluZXMgZm9ybWF0IG9wdGlvbnNcblx0ICogQHBhcmFtIGZvcm1hdE9wdGlvbnMuZm9ybWF0IEZpc2NhbCBmb3JtYXRcblx0ICogQHBhcmFtIGZvcm1hdE9wdGlvbnMuY2FsZW5kYXJUeXBlIENhbGVuZGFyIHR5cGVcblx0ICogQHJldHVybnMgSW5zdGFuY2Ugb2YgdGhlIEZpc2NhbEZvcm1hdFxuXHQgKi9cblx0cHVibGljIHN0YXRpYyBnZXREYXRlSW5zdGFuY2UoZm9ybWF0T3B0aW9uczogeyBmb3JtYXQ6IHN0cmluZzsgY2FsZW5kYXJUeXBlOiBDYWxlbmRhclR5cGUgfSk6IEZpc2NhbEZvcm1hdCB7XG5cdFx0cmV0dXJuIG5ldyBGaXNjYWxGb3JtYXQoZm9ybWF0T3B0aW9ucyk7XG5cdH1cblxuXHRwdWJsaWMgZ2V0UGF0dGVybigpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuXHRcdHJldHVybiB0aGlzLnBhdHRlcm47XG5cdH1cblxuXHQvKipcblx0ICogRm9ybWF0IHRoZSByYXcgZmlzY2FsIGRhdGEgdG8gYSBsb2NhbGUtZGVwZW5kZW50IGZvcm1hdC5cblx0ICpcblx0ICogQHBhcmFtIHZhbHVlIFRoZSBwYXJhbWV0ZXIgY29udGFpbmluZyBhIHJhdyBmaXNjYWwgdmFsdWVcblx0ICogQHJldHVybnMgVGhlIGZvcm1hdHRlZCB2YWx1ZVxuXHQgKi9cblx0cHVibGljIGZvcm1hdCh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgYm9vbGVhbik6IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4ge1xuXHRcdGlmICh2YWx1ZSA9PSBudWxsKSB7XG5cdFx0XHRyZXR1cm4gXCJcIjtcblx0XHR9XG5cdFx0aWYgKHR5cGVvZiB2YWx1ZSAhPT0gXCJzdHJpbmdcIikge1xuXHRcdFx0cmV0dXJuIHZhbHVlO1xuXHRcdH1cblxuXHRcdHJldHVybiB2YWx1ZS5yZXBsYWNlKHRoaXMuZm9ybWF0UmVnRXhQYXR0ZXJuLCB0aGlzLmZvcm1hdFJlZ0V4R3JvdXBzKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZSBmcm9tIGEgbG9jYWxlLWRlcGVuZGVudCBmb3JtYXQgdG8gYSByYXcgdmFsdWUuXG5cdCAqXG5cdCAqIEBwYXJhbSB2YWx1ZSBUaGUgc3RyaW5nIGNvbnRhaW5pbmcgYSBwYXJzZWQgZmlzY2FsIGRhdGEgdmFsdWVcblx0ICogQHJldHVybnMgVGhlIHJhdyB2YWx1ZVxuXHQgKi9cblx0cHVibGljIHBhcnNlKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuXHRcdGlmICghdmFsdWUpIHtcblx0XHRcdHJldHVybiBcIlwiO1xuXHRcdH1cblx0XHRyZXR1cm4gdmFsdWUucmVwbGFjZSh0aGlzLnBhcnNlUmVnRXhQYXR0ZXJuLCB0aGlzLnBhcnNlUmVnRXhSZXBsYWNlcik7XG5cdH1cblxuXHQvKipcblx0ICogVmFsaWRhdGVzIHRoZSBkYXRhIGlucHV0LlxuXHQgKlxuXHQgKiBAcGFyYW0gdmFsdWUgVGhlIHJhdyBmaXNjYWwgZGF0YVxuXHQgKiBAcmV0dXJucyBJZiA8Y29kZT50cnVlPC9jb2RlPiB0aGUgdmFsaWRhdGlvbiBwYXNzZXMsIG90aGVyd2lzZSA8Y29kZT5mYWxzZTwvY29kZT5cblx0ICovXG5cdHB1YmxpYyB2YWxpZGF0ZSh2YWx1ZTogc3RyaW5nKTogYm9vbGVhbiB7XG5cdFx0cmV0dXJuIHRoaXMudmFsaWRhdGlvblJlZ0V4UGF0dGVybi50ZXN0KHZhbHVlKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBQYXJzZSB0aGUgZGF0ZSBwYXR0ZXJuIHN0cmluZyBhbmQgY3JlYXRlIGEgZm9ybWF0IGFycmF5IGZyb20gaXQuXG5cdCAqIEFycmF5IGlzIHVzZWQgZm9yIGRhdGEgcGFyc2luZyBhbmQgZm9ybWF0dGluZy5cblx0ICpcblx0ICogQHBhcmFtIHBhdHRlcm4gVGhlIGNhbGVuZGFyIGRhdGUgcGF0dGVybiBzdHJpbmdcblx0ICogQHJldHVybnMgRm9ybWF0IGFycmF5XG5cdCAqL1xuXHRwcml2YXRlIHBhcnNlQ2FsZW5kYXJEYXRlUGF0dGVybihwYXR0ZXJuOiBzdHJpbmcpOiB7IGRpZ2l0czogbnVtYmVyOyB2YWx1ZTogc3RyaW5nOyBzeW1ib2w6IHN0cmluZyB9W10ge1xuXHRcdGNvbnN0IGZvcm1hdEFycmF5ID0gW107XG5cdFx0bGV0IGNoYXIsXG5cdFx0XHRjdXJyZW50T2JqZWN0ID0geyBkaWdpdHM6IDAsIHZhbHVlOiBcIlwiLCBzeW1ib2w6IFwiXCIgfTtcblxuXHRcdGZvciAoY29uc3QgY3VyQ2hhciBvZiBwYXR0ZXJuKSB7XG5cdFx0XHRpZiAoY2hhciAhPT0gY3VyQ2hhcikge1xuXHRcdFx0XHRjdXJyZW50T2JqZWN0ID0geyBkaWdpdHM6IDAsIHZhbHVlOiBcIlwiLCBzeW1ib2w6IFwiXCIgfTtcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdGN1cnJlbnRPYmplY3QuZGlnaXRzICs9IDE7XG5cdFx0XHRcdGNvbnRpbnVlO1xuXHRcdFx0fVxuXG5cdFx0XHRpZiAodHlwZW9mIEZpc2NhbEZvcm1hdC5zeW1ib2xzW2N1ckNoYXIgYXMga2V5b2YgdHlwZW9mIEZpc2NhbEZvcm1hdC5zeW1ib2xzXSA9PT0gXCJ1bmRlZmluZWRcIikge1xuXHRcdFx0XHRjdXJyZW50T2JqZWN0LnZhbHVlID0gY3VyQ2hhcjtcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdGN1cnJlbnRPYmplY3Quc3ltYm9sID0gY3VyQ2hhcjtcblx0XHRcdFx0Y3VycmVudE9iamVjdC5kaWdpdHMgPSAxO1xuXHRcdFx0fVxuXHRcdFx0Y2hhciA9IGN1ckNoYXI7XG5cdFx0XHRmb3JtYXRBcnJheS5wdXNoKGN1cnJlbnRPYmplY3QpO1xuXHRcdH1cblxuXHRcdHJldHVybiBmb3JtYXRBcnJheTtcblx0fVxuXG5cdC8qKlxuXHQgKiBDcmVhdGVzIHRoZSBmb3JtYXR0aW5nIHJlZ3VsYXIgZXhwcmVzc2lvbiBiYXNlZCBvbiB0aGUgbG9jYWxlLWRlcGVuZGVudCBmb3JtYXQuXG5cdCAqXG5cdCAqIEBwYXJhbSBmb3JtYXRBcnJheSBBbiBhcnJheSB3aXRoIHRoZSBsb2NhbGUtZGVwZW5kZW50IGZvcm1hdFxuXHQgKi9cblx0cHJpdmF0ZSBfc2V0Rm9ybWF0UmVnZXgoZm9ybWF0QXJyYXk6IHsgZGlnaXRzOiBudW1iZXI7IHZhbHVlOiBzdHJpbmc7IHN5bWJvbDogc3RyaW5nIH1bXSk6IHZvaWQge1xuXHRcdGNvbnN0IHJlZ0V4UGF0dGVybiA9IFtdLFxuXHRcdFx0cmVnRXhHcm91cHMgPSBbXTtcblx0XHRsZXQgcGFydCwgc3ltYm9sLCByZWdleCwgeWVhcjtcblx0XHRmb3IgKGxldCBpID0gMDsgaSA8IGZvcm1hdEFycmF5Lmxlbmd0aDsgaSsrKSB7XG5cdFx0XHRwYXJ0ID0gZm9ybWF0QXJyYXlbaV07XG5cdFx0XHRzeW1ib2wgPSBwYXJ0LnN5bWJvbDtcblx0XHRcdHJlZ2V4ID0gRmlzY2FsRm9ybWF0LnN5bWJvbHNbc3ltYm9sIGFzIGtleW9mIHR5cGVvZiBGaXNjYWxGb3JtYXQuc3ltYm9sc10uZm9ybWF0O1xuXG5cdFx0XHRpZiAoc3ltYm9sID09PSBcIlwiKSB7XG5cdFx0XHRcdHJlZ0V4R3JvdXBzW2ldID0gcGFydC52YWx1ZTtcblx0XHRcdH0gZWxzZSBpZiAoc3ltYm9sLnRvTG9jYWxlTG93ZXJDYXNlKCkgPT09IFwieVwiKSB7XG5cdFx0XHRcdHJlZ0V4UGF0dGVybi51bnNoaWZ0KFwiKFwiICsgcmVnZXguc291cmNlICsgXCIpXCIpO1xuXHRcdFx0XHRyZWdFeEdyb3Vwc1tpXSA9IFwiJFwiICsgMTtcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdHJlZ0V4UGF0dGVybi5wdXNoKFwiKFwiICsgcmVnZXguc291cmNlICsgXCIpXCIpO1xuXHRcdFx0XHR5ZWFyID0gZm9ybWF0QXJyYXkuc29tZShmdW5jdGlvbiAocGFydEVudHJ5KSB7XG5cdFx0XHRcdFx0cmV0dXJuIHBhcnRFbnRyeS5zeW1ib2wudG9Mb3dlckNhc2UoKSA9PT0gXCJ5XCI7XG5cdFx0XHRcdH0pO1xuXHRcdFx0XHRyZWdFeEdyb3Vwc1tpXSA9IHllYXIgPyBcIiRcIiArIDIgOiBcIiRcIiArIDE7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0dGhpcy5mb3JtYXRSZWdFeFBhdHRlcm4gPSBuZXcgUmVnRXhwKHJlZ0V4UGF0dGVybi5qb2luKFwiXCIpKTtcblx0XHR0aGlzLmZvcm1hdFJlZ0V4R3JvdXBzID0gcmVnRXhHcm91cHMuam9pbihcIlwiKTtcblx0fVxuXG5cdC8qKlxuXHQgKiBDcmVhdGVzIHRoZSBwYXJzaW5nIHJlZ3VsYXIgZXhwcmVzc2lvbiBiYXNlZCBvbiB0aGUgbG9jYWxlLWRlcGVuZGVudCBmb3JtYXQuXG5cdCAqXG5cdCAqIEBwYXJhbSBmb3JtYXRBcnJheSBBbiBhcnJheSB3aXRoIHRoZSBsb2NhbGUtZGVwZW5kZW50IGZvcm1hdFxuXHQgKi9cblx0cHJpdmF0ZSBfc2V0UGFyc2VSZWdleChmb3JtYXRBcnJheTogeyBkaWdpdHM6IG51bWJlcjsgdmFsdWU6IHN0cmluZzsgc3ltYm9sOiBzdHJpbmcgfVtdKTogdm9pZCB7XG5cdFx0Y29uc3QgcmVnRXhQYXR0ZXJuID0gW10sXG5cdFx0XHRmaWx0ZXJlZEZvcm1hdDogeyBbaW5kZXg6IHN0cmluZ106IHsgZGlnaXRzOiBudW1iZXI7IHZhbHVlOiBzdHJpbmc7IHN5bWJvbDogc3RyaW5nIH0gfSA9IHt9O1xuXHRcdGxldCBzeW1ib2wsXG5cdFx0XHRyZWdleCxcblx0XHRcdGN1cnJHcm91cDogbnVtYmVyLFxuXHRcdFx0Z3JvdXAgPSAwO1xuXHRcdGZvciAoY29uc3QgcGFydCBvZiBmb3JtYXRBcnJheSkge1xuXHRcdFx0c3ltYm9sID0gcGFydC5zeW1ib2w7XG5cblx0XHRcdGlmIChzeW1ib2wgPT09IFwiXCIpIHtcblx0XHRcdFx0cmVnRXhQYXR0ZXJuLnB1c2goXCJcXFxcRCs/XCIpO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0cmVnZXggPSBGaXNjYWxGb3JtYXQuc3ltYm9sc1tzeW1ib2wgYXMga2V5b2YgdHlwZW9mIEZpc2NhbEZvcm1hdC5zeW1ib2xzXS5wYXJzZTtcblx0XHRcdFx0cmVnRXhQYXR0ZXJuLnB1c2goXCIoXCIgKyByZWdleC5zb3VyY2UgKyBcIilcIik7XG5cdFx0XHRcdGN1cnJHcm91cCA9ICsrZ3JvdXA7XG5cdFx0XHRcdGZpbHRlcmVkRm9ybWF0W2N1cnJHcm91cF0gPSBwYXJ0O1xuXHRcdFx0fVxuXHRcdH1cblx0XHR0aGlzLnBhcnNlUmVnRXhQYXR0ZXJuID0gbmV3IFJlZ0V4cChcIl5cIiArIHJlZ0V4UGF0dGVybi5qb2luKFwiXCIpICsgXCIkXCIpO1xuXHRcdHRoaXMucGFyc2VSZWdFeFJlcGxhY2VyID0gdGhpcy5nZXRSZWdFeFJlcGxhY2VyKGZpbHRlcmVkRm9ybWF0KTtcblx0fVxuXG5cdC8qKlxuXHQgKiBDcmVhdGVzIGEgZnVuY3Rpb24gdGhhdCBpcyB1c2VkIHRvIHJlcGxhY2Ugc3RyaW5ncyBhbmQgdGhlbiBwZXJmb3JtcyByYXcgc3RyaW5nIHBhcnNpbmcuXG5cdCAqXG5cdCAqIEBwYXJhbSBmaWx0ZXJlZEZvcm1hdCBBbiBhcnJheSB3aXRoIHRoZSBsb2NhbGUtZGVwZW5kZW50IGZvcm1hdFxuXHQgKiBAcmV0dXJucyBGdW5jdGlvbiB0aGF0IGNhbiBiZSBwYXNzZWQgaW50byB0aGUgc3RyaW5nLnJlcGxhY2UgZnVuY3Rpb25cblx0ICovXG5cdHByaXZhdGUgZ2V0UmVnRXhSZXBsYWNlcihmaWx0ZXJlZEZvcm1hdDoge1xuXHRcdFtpbmRleDogc3RyaW5nXTogeyBkaWdpdHM6IG51bWJlcjsgdmFsdWU6IHN0cmluZzsgc3ltYm9sOiBzdHJpbmcgfTtcblx0fSk6IChzdWJzdHJpbmc6IHN0cmluZywgLi4uYXJnczogYW55W10pID0+IHN0cmluZyB7XG5cdFx0cmV0dXJuIGZ1bmN0aW9uICguLi5hcmdzOiBhbnlbXSkge1xuXHRcdFx0Y29uc3QgcmVzdWx0ID0gW107XG5cdFx0XHRsZXQgdmFsdWVQYXJ0LCBzdHJpbmdHcm91cDtcblx0XHRcdGZvciAoY29uc3Qga2V5IGluIGZpbHRlcmVkRm9ybWF0KSB7XG5cdFx0XHRcdHZhbHVlUGFydCA9IGZpbHRlcmVkRm9ybWF0W2tleV07XG5cdFx0XHRcdHN0cmluZ0dyb3VwID0gYXJnc1twYXJzZUludChrZXksIDEwKV07XG5cdFx0XHRcdGlmIChzdHJpbmdHcm91cC5sZW5ndGggPCB2YWx1ZVBhcnQuZGlnaXRzKSB7XG5cdFx0XHRcdFx0aWYgKHZhbHVlUGFydC5zeW1ib2wudG9Mb3dlckNhc2UoKSA9PT0gXCJ5XCIpIHtcblx0XHRcdFx0XHRcdHN0cmluZ0dyb3VwID0gcGFyc2VZZWFyKHN0cmluZ0dyb3VwKTtcblx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0c3RyaW5nR3JvdXAgPSBzdHJpbmdHcm91cC5wYWRTdGFydCh2YWx1ZVBhcnQuZGlnaXRzLCBcIjBcIik7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdGlmICh2YWx1ZVBhcnQuc3ltYm9sLnRvTG93ZXJDYXNlKCkgPT09IFwieVwiKSB7XG5cdFx0XHRcdFx0cmVzdWx0LnVuc2hpZnQoc3RyaW5nR3JvdXApO1xuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdHJlc3VsdC5wdXNoKHN0cmluZ0dyb3VwKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRyZXR1cm4gcmVzdWx0LmpvaW4oXCJcIik7XG5cdFx0fTtcblx0fVxuXG5cdC8qKlxuXHQgKiBDcmVhdGVzIHRoZSB2YWxpZGF0aW9uIHJlZ3VsYXIgZXhwcmVzc2lvbiBiYXNlZCBvbiB0aGUgZm9ybWF0LlxuXHQgKlxuXHQgKiBAcGFyYW0gZm9ybWF0QXJyYXkgQW4gYXJyYXkgd2l0aCB0aGUgbG9jYWxlLWRlcGVuZGVudCBmb3JtYXRcblx0ICovXG5cdHByaXZhdGUgX3NldFZhbGlkYXRpb25SZWdleChmb3JtYXRBcnJheTogeyBkaWdpdHM6IG51bWJlcjsgdmFsdWU6IHN0cmluZzsgc3ltYm9sOiBzdHJpbmcgfVtdKTogdm9pZCB7XG5cdFx0Y29uc3QgcmVnRXhQYXR0ZXJuID0gW107XG5cdFx0bGV0IHN5bWJvbCwgcmVnZXg7XG5cdFx0Zm9yIChjb25zdCBwYXJ0IG9mIGZvcm1hdEFycmF5KSB7XG5cdFx0XHRzeW1ib2wgPSBwYXJ0LnN5bWJvbDtcblx0XHRcdHJlZ2V4ID0gRmlzY2FsRm9ybWF0LnN5bWJvbHNbc3ltYm9sIGFzIGtleW9mIHR5cGVvZiBGaXNjYWxGb3JtYXQuc3ltYm9sc10uZm9ybWF0O1xuXHRcdFx0aWYgKHN5bWJvbCA9PT0gXCJcIikge1xuXHRcdFx0XHRjb250aW51ZTtcblx0XHRcdH0gZWxzZSBpZiAoc3ltYm9sLnRvTG93ZXJDYXNlKCkgPT09IFwieVwiKSB7XG5cdFx0XHRcdHJlZ0V4UGF0dGVybi51bnNoaWZ0KHJlZ2V4LnNvdXJjZSk7XG5cdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRyZWdFeFBhdHRlcm4ucHVzaChyZWdleC5zb3VyY2UpO1xuXHRcdFx0fVxuXHRcdH1cblx0XHR0aGlzLnZhbGlkYXRpb25SZWdFeFBhdHRlcm4gPSBuZXcgUmVnRXhwKFwiXihcIiArIHJlZ0V4UGF0dGVybi5qb2luKFwiKShcIikgKyBcIikkXCIpO1xuXHR9XG5cblx0LyoqXG5cdCAqIFJlZ3VsYXIgZXhwcmVzc2lvbiBwYXR0ZXJucyB1c2VkIHRvIGZvcm1hdCBmaXNjYWwgZGF0ZSBzdHJpbmdzXG5cdCAqL1xuXHRwcml2YXRlIHN0YXRpYyByZWdleEZvcm1hdFBhdHRlcm5zID0ge1xuXHRcdHllYXI6IC9bMS05XVxcZHszfS8sXG5cdFx0cGVyaW9kOiAvXFxkezN9Lyxcblx0XHRxdWFydGVyOiAvWzEtNF0vLFxuXHRcdHdlZWs6IC8wWzEtOV18WzEtNF1cXGR8NVswLTNdLyxcblx0XHRkYXk6IC8zNzF8MzcwfDNbMC02XVxcZHxbMS0yXVxcZHsyfXxbMS05XVxcZHxbMS05XS9cblx0fTtcblxuXHQvKipcblx0ICogUmVndWxhciBleHByZXNzaW9uIHBhdHRlcm5zIHVzZWQgZm9yIHJhdyBkYXRhIHBhcnNpbmcgYW5kIHZhbGlkYXRpb25cblx0ICovXG5cdHByaXZhdGUgc3RhdGljIHJlZ2V4UGFyc2VQYXR0ZXJucyA9IHtcblx0XHR5ZWFyOiAvXFxkezEsNH0vLFxuXHRcdHBlcmlvZDogL1xcZHsxLDN9Lyxcblx0XHRxdWFydGVyOiAvWzEtNF0vLFxuXHRcdHdlZWs6IC9cXGR7MSwyfS8sXG5cdFx0ZGF5OiAvWzEtOV0vXG5cdH07XG5cblx0LyoqXG5cdCAqIE1hcHBpbmcgZnJvbSBzcGVjaWZpYyBjYWxlbmRhciB0eXBlIHRvIGNvcnJlc3BvbmRpbmcgZm9ybWF0dGluZy9wYXJzaW5nIGV4cHJlc3Npb25cblx0ICovXG5cdHByaXZhdGUgc3RhdGljIHN5bWJvbHMgPSB7XG5cdFx0XCJcIjogeyBmb3JtYXQ6IC8gLywgcGFyc2U6IC8gLyB9LCAvLyBcInRleHRcIlxuXHRcdHk6IHsgZm9ybWF0OiBGaXNjYWxGb3JtYXQucmVnZXhGb3JtYXRQYXR0ZXJucy55ZWFyLCBwYXJzZTogRmlzY2FsRm9ybWF0LnJlZ2V4UGFyc2VQYXR0ZXJucy55ZWFyIH0sIC8vIFwieWVhclwiXG5cdFx0WTogeyBmb3JtYXQ6IEZpc2NhbEZvcm1hdC5yZWdleEZvcm1hdFBhdHRlcm5zLnllYXIsIHBhcnNlOiBGaXNjYWxGb3JtYXQucmVnZXhQYXJzZVBhdHRlcm5zLnllYXIgfSwgLy8gXCJ3ZWVrWWVhclwiXG5cdFx0UDogeyBmb3JtYXQ6IEZpc2NhbEZvcm1hdC5yZWdleEZvcm1hdFBhdHRlcm5zLnBlcmlvZCwgcGFyc2U6IEZpc2NhbEZvcm1hdC5yZWdleFBhcnNlUGF0dGVybnMucGVyaW9kIH0sIC8vIFwicGVyaW9kXCJcblx0XHRXOiB7IGZvcm1hdDogRmlzY2FsRm9ybWF0LnJlZ2V4Rm9ybWF0UGF0dGVybnMud2VlaywgcGFyc2U6IEZpc2NhbEZvcm1hdC5yZWdleFBhcnNlUGF0dGVybnMud2VlayB9LCAvLyBcIndlZWtJblllYXJcIlxuXHRcdGQ6IHsgZm9ybWF0OiBGaXNjYWxGb3JtYXQucmVnZXhGb3JtYXRQYXR0ZXJucy5kYXksIHBhcnNlOiBGaXNjYWxGb3JtYXQucmVnZXhQYXJzZVBhdHRlcm5zLmRheSB9LCAvLyBcImRheUluWWVhclwiXG5cdFx0UTogeyBmb3JtYXQ6IEZpc2NhbEZvcm1hdC5yZWdleEZvcm1hdFBhdHRlcm5zLnF1YXJ0ZXIsIHBhcnNlOiBGaXNjYWxGb3JtYXQucmVnZXhQYXJzZVBhdHRlcm5zLnF1YXJ0ZXIgfSwgLy8gXCJxdWFydGVyXCJcblx0XHRxOiB7IGZvcm1hdDogRmlzY2FsRm9ybWF0LnJlZ2V4Rm9ybWF0UGF0dGVybnMucXVhcnRlciwgcGFyc2U6IEZpc2NhbEZvcm1hdC5yZWdleFBhcnNlUGF0dGVybnMucXVhcnRlciB9IC8vXCJxdWFydGVyU3RhbmRhbG9uZVwiXG5cdH07XG59XG5cbi8qKlxuICogUGFyc2VzIHRoZSBZZWFyIGZvcm1hdC4gVGhpcyBpcyBob3cgdGhlIERhdGVGb3JtYXQgcGFyc2VzIHllYXJzLCBleGNlcHQgdGhvc2UgeWVhcnMgY29uc2lzdGluZyBvZiAzIGRpZ2l0cywgc2luY2UgY3VycmVuY3kgZmlzY2FsIGRhdGVzIHN1cHBvcnQgb25seSB5ZWFycyBjb25zaXN0aW5nIG9mIDQgZGlnaXRzLlxuICpcbiAqIEBwYXJhbSB5ZWFyIFllYXIgc3RyaW5nXG4gKiBAcmV0dXJucyBZZWFyIG51bWJlclxuICovXG5mdW5jdGlvbiBwYXJzZVllYXIoeWVhcjogc3RyaW5nKTogbnVtYmVyIHtcblx0bGV0IHBhcnNlZFllYXIgPSBOdW1iZXIucGFyc2VJbnQoeWVhciwgMTApO1xuXHRjb25zdCBjdXJyZW50WWVhciA9IG5ldyBEYXRlKCkuZ2V0VVRDRnVsbFllYXIoKSxcblx0XHRjdXJyZW50Q2VudHVyeSA9IE1hdGguZmxvb3IoY3VycmVudFllYXIgLyAxMDApLFxuXHRcdHllYXJEaWZmID0gY3VycmVudENlbnR1cnkgKiAxMDAgKyBwYXJzZWRZZWFyIC0gY3VycmVudFllYXI7XG5cblx0aWYgKHllYXIubGVuZ3RoID09PSAzKSB7XG5cdFx0cGFyc2VkWWVhciArPSBNYXRoLmZsb29yKChjdXJyZW50Q2VudHVyeSAtIDEpIC8gMTApICogMTAwMDtcblx0fSBlbHNlIGlmICh5ZWFyRGlmZiA8IC03MCkge1xuXHRcdHBhcnNlZFllYXIgKz0gKGN1cnJlbnRDZW50dXJ5ICsgMSkgKiAxMDA7IC8vIFRha2UgbmV4dCBjZW50dXJ5IGlmIFwieWVhclwiIGlzIDMwIHllYXJzIGluIHRoZSBmdXR1cmUuIEN1cnJlbnQgeWVhciAxOTk5IGFuZCB3ZSBlbnRlciAyOCBpdCB3aWxsIHdlIDIwMjhcblx0fSBlbHNlIGlmICh5ZWFyRGlmZiA8IDMwKSB7XG5cdFx0cGFyc2VkWWVhciArPSBjdXJyZW50Q2VudHVyeSAqIDEwMDsgLy8gVGFrZSBuZXh0IGNlbnR1cnkgaWYgXCJ5ZWFyXCIgaXMgMzAgeWVhcnMgaW4gdGhlIGZ1dHVyZS4gQ3VycmVudCB5ZWFyIDIwMDAgYW5kIHdlIGVudGVyIDI5IGl0IHdpbGwgd2UgMjAyOVxuXHR9IGVsc2Uge1xuXHRcdHBhcnNlZFllYXIgKz0gKGN1cnJlbnRDZW50dXJ5IC0gMSkgKiAxMDA7IC8vIEFueSBlbnRlcmVkIFwieWVhclwiIHRoYXQgaXMgbW9yZSB0aGFuIDMwIHllYXJzIGluIHRoZSBmdXR1cmUgd2lsbCBiZSB0cmVhdGVkIGFzIGZyb20gcHJldmlvdXMgY2VudHVyeVxuXHR9XG5cdHJldHVybiBwYXJzZWRZZWFyO1xufVxuIl0sIm1hcHBpbmdzIjoiO0FBQUE7QUFBQTtBQUFBOzs7OztFQUlBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtFQWRBLElBZXFCQSxZQUFZO0lBUWhDLHNCQUFZQyxhQUE2RCxFQUFFO01BQzFFLE1BQU1DLE1BQU0sR0FBRyxJQUFJQyxNQUFNLENBQUNDLEdBQUcsQ0FBQ0MsRUFBRSxDQUFDQyxPQUFPLEVBQUUsQ0FBQ0MsZ0JBQWdCLEVBQUUsQ0FBQ0MsV0FBVyxFQUFFLENBQUM7UUFDM0VDLFVBQVUsR0FBRyxJQUFJQyxVQUFVLENBQUNSLE1BQU0sQ0FBQztNQUVwQyxJQUFJUyxNQUFNLEdBQUdWLGFBQWEsQ0FBQ1UsTUFBTTtNQUNqQyxJQUFJVixhQUFhLENBQUNVLE1BQU0sQ0FBQ0MsTUFBTSxHQUFHLENBQUMsRUFBRTtRQUNwQ0QsTUFBTSxHQUFHLElBQUk7TUFDZCxDQUFDLE1BQU0s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
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
|
+
* (c) Copyright 2009-2023 SAP SE. All rights reserved
|
|
4
|
+
*/
|
|
5
|
+
sap.ui.define(["sap/ui/core/Locale","sap/ui/core/LocaleData"],function(e,t){"use strict";var r={};let a=function(){function a(r){const a=new e(sap.ui.getCore().getConfiguration().getLanguage()),s=new t(a);let n=r.format;if(r.format.length>4){n="yM"}else if(r.format==="PPP"){n="M"}let o=s.getCustomDateTimePattern(n,r.calendarType);o=o.replace(/([\u4e00-\u9faf\u3000-\u303f\u3040-\u309f\u30a0-\u30ff\uff00-\uffef])+/gi,"");if(r.format.length>4){o=o.replace(/y+/i,r.format.slice(0,r.format.lastIndexOf("Y")+1));o=o.replace(/m+/i,r.format.slice(r.format.lastIndexOf("Y")+1))}else if(r.format==="PPP"){o="PPP"}const i=this.parseCalendarDatePattern(o);this.pattern=i.length>1?o:undefined;this._setFormatRegex(i);this._setParseRegex(i);this._setValidationRegex(i)}r=a;a.getDateInstance=function e(t){return new a(t)};var n=a.prototype;n.getPattern=function e(){return this.pattern};n.format=function e(t){if(t==null){return""}if(typeof t!=="string"){return t}return t.replace(this.formatRegExPattern,this.formatRegExGroups)};n.parse=function e(t){if(!t){return""}return t.replace(this.parseRegExPattern,this.parseRegExReplacer)};n.validate=function e(t){return this.validationRegExPattern.test(t)};n.parseCalendarDatePattern=function e(t){const r=[];let s,n={digits:0,value:"",symbol:""};for(const e of t){if(s!==e){n={digits:0,value:"",symbol:""}}else{n.digits+=1;continue}if(typeof a.symbols[e]==="undefined"){n.value=e}else{n.symbol=e;n.digits=1}s=e;r.push(n)}return r};n._setFormatRegex=function e(t){const r=[],s=[];let n,o,i,f;for(let e=0;e<t.length;e++){n=t[e];o=n.symbol;i=a.symbols[o].format;if(o===""){s[e]=n.value}else if(o.toLocaleLowerCase()==="y"){r.unshift("("+i.source+")");s[e]="$"+1}else{r.push("("+i.source+")");f=t.some(function(e){return e.symbol.toLowerCase()==="y"});s[e]=f?"$"+2:"$"+1}}this.formatRegExPattern=new RegExp(r.join(""));this.formatRegExGroups=s.join("")};n._setParseRegex=function e(t){const r=[],s={};let n,o,i,f=0;for(const e of t){n=e.symbol;if(n===""){r.push("\\D+?")}else{o=a.symbols[n].parse;r.push("("+o.source+")");i=++f;s[i]=e}}this.parseRegExPattern=new RegExp("^"+r.join("")+"$");this.parseRegExReplacer=this.getRegExReplacer(s)};n.getRegExReplacer=function e(t){return function(){const e=[];let r,a;for(var n=arguments.length,o=new Array(n),i=0;i<n;i++){o[i]=arguments[i]}for(const n in t){r=t[n];a=o[parseInt(n,10)];if(a.length<r.digits){if(r.symbol.toLowerCase()==="y"){a=s(a)}else{a=a.padStart(r.digits,"0")}}if(r.symbol.toLowerCase()==="y"){e.unshift(a)}else{e.push(a)}}return e.join("")}};n._setValidationRegex=function e(t){const r=[];let s,n;for(const e of t){s=e.symbol;n=a.symbols[s].format;if(s===""){continue}else if(s.toLowerCase()==="y"){r.unshift(n.source)}else{r.push(n.source)}}this.validationRegExPattern=new RegExp("^("+r.join(")(")+")$")};return a}();a.regexFormatPatterns={year:/[1-9]\d{3}/,period:/\d{3}/,quarter:/[1-4]/,week:/0[1-9]|[1-4]\d|5[0-3]/,day:/371|370|3[0-6]\d|[1-2]\d{2}|[1-9]\d|[1-9]/};r=a;a.regexParsePatterns={year:/\d{1,4}/,period:/\d{1,3}/,quarter:/[1-4]/,week:/\d{1,2}/,day:/[1-9]/};a.symbols={"":{format:/ /,parse:/ /},y:{format:a.regexFormatPatterns.year,parse:a.regexParsePatterns.year},Y:{format:a.regexFormatPatterns.year,parse:a.regexParsePatterns.year},P:{format:a.regexFormatPatterns.period,parse:a.regexParsePatterns.period},W:{format:a.regexFormatPatterns.week,parse:a.regexParsePatterns.week},d:{format:a.regexFormatPatterns.day,parse:a.regexParsePatterns.day},Q:{format:a.regexFormatPatterns.quarter,parse:a.regexParsePatterns.quarter},q:{format:a.regexFormatPatterns.quarter,parse:a.regexParsePatterns.quarter}};function s(e){let t=Number.parseInt(e,10);const r=(new Date).getUTCFullYear(),a=Math.floor(r/100),s=a*100+t-r;if(e.length===3){t+=Math.floor((a-1)/10)*1e3}else if(s<-70){t+=(a+1)*100}else if(s<30){t+=a*100}else{t+=(a-1)*100}return t}return r},false);
|
|
6
|
+
//# sourceMappingURL=FiscalFormat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FiscalFormat.js","names":["sap","ui","define","Locale","LocaleData","_exports","FiscalFormat","formatOptions","locale","getCore","getConfiguration","getLanguage","localeData","format","length","pattern","getCustomDateTimePattern","calendarType","replace","slice","lastIndexOf","formatArray","this","parseCalendarDatePattern","undefined","_setFormatRegex","_setParseRegex","_setValidationRegex","getDateInstance","_proto","prototype","getPattern","value","formatRegExPattern","formatRegExGroups","parse","parseRegExPattern","parseRegExReplacer","validate","validationRegExPattern","test","char","currentObject","digits","symbol","curChar","symbols","push","regExPattern","regExGroups","part","regex","year","i","toLocaleLowerCase","unshift","source","some","partEntry","toLowerCase","RegExp","join","filteredFormat","currGroup","group","getRegExReplacer","result","valuePart","stringGroup","_len","arguments","args","Array","_key","key","parseInt","parseYear","padStart","regexFormatPatterns","period","quarter","week","day","regexParsePatterns","y","Y","P","W","d","Q","q","parsedYear","Number","currentYear","Date","getUTCFullYear","currentCentury","Math","floor","yearDiff"],"sources":["FiscalFormat-dbg.js"],"mappings":"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"}
|