@siliconst/metaui 1.4.21 → 1.4.37
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 +1 -1
- package/package.json +1 -1
- package/src/nz/co/siliconst/ui5/metaui/ai/BaseAIGenerator-dbg.js +22 -20
- package/src/nz/co/siliconst/ui5/metaui/ai/BaseAIGenerator-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/ai/BaseAIGenerator.d.ts +3 -3
- package/src/nz/co/siliconst/ui5/metaui/ai/BaseAIGenerator.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/ai/BaseAIGenerator.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/ai/BaseAIGenerator.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/ai/BaseAIGenerator.ts +24 -16
- package/src/nz/co/siliconst/ui5/metaui/ai/RestLLMProxy-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/ai/RestLLMProxy.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/ai/RestLLMProxy.ts +2 -2
- package/src/nz/co/siliconst/ui5/metaui/constants/MetaUIConstants-dbg.js +111 -0
- package/src/nz/co/siliconst/ui5/metaui/constants/MetaUIConstants-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/constants/MetaUIConstants.d.ts +95 -0
- package/src/nz/co/siliconst/ui5/metaui/constants/MetaUIConstants.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/constants/MetaUIConstants.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/constants/MetaUIConstants.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/constants/MetaUIConstants.ts +101 -0
- package/src/nz/co/siliconst/ui5/metaui/controls/BaseHardwareControl-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/BaseHardwareControl.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/BaseHardwareControl.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/BaseHardwareControlRenderer-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/BaseHardwareControlRenderer.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/BaseHardwareControlRenderer.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/BaseHardwareControlRenderer.ts +2 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/CameraControl-dbg.js +2 -2
- package/src/nz/co/siliconst/ui5/metaui/controls/CameraControl-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/CameraControl.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/CameraControl.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/CameraControl.ts +3 -3
- package/src/nz/co/siliconst/ui5/metaui/controls/DynamicHost-dbg.js +47 -47
- package/src/nz/co/siliconst/ui5/metaui/controls/DynamicHost-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/DynamicHost.d.ts +6 -2
- package/src/nz/co/siliconst/ui5/metaui/controls/DynamicHost.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/DynamicHost.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/DynamicHost.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/DynamicHost.ts +62 -66
- package/src/nz/co/siliconst/ui5/metaui/controls/GeolocationControl-dbg.js +0 -9
- package/src/nz/co/siliconst/ui5/metaui/controls/GeolocationControl-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/GeolocationControl.d.ts +0 -9
- package/src/nz/co/siliconst/ui5/metaui/controls/GeolocationControl.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/GeolocationControl.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/GeolocationControl.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/GeolocationControl.ts +3 -9
- package/src/nz/co/siliconst/ui5/metaui/controls/RichTextControl-dbg.js +0 -11
- package/src/nz/co/siliconst/ui5/metaui/controls/RichTextControl-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/RichTextControl.d.ts +0 -11
- package/src/nz/co/siliconst/ui5/metaui/controls/RichTextControl.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/RichTextControl.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/RichTextControl.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/RichTextControl.ts +2 -9
- package/src/nz/co/siliconst/ui5/metaui/controls/SignatureControl-dbg.js +2 -7
- package/src/nz/co/siliconst/ui5/metaui/controls/SignatureControl-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/SignatureControl.d.ts +0 -5
- package/src/nz/co/siliconst/ui5/metaui/controls/SignatureControl.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/SignatureControl.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/SignatureControl.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/SignatureControl.ts +3 -7
- package/src/nz/co/siliconst/ui5/metaui/controls/VoiceInputControl-dbg.js +1 -6
- package/src/nz/co/siliconst/ui5/metaui/controls/VoiceInputControl-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/VoiceInputControl.d.ts +0 -5
- package/src/nz/co/siliconst/ui5/metaui/controls/VoiceInputControl.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/VoiceInputControl.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/VoiceInputControl.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/VoiceInputControl.ts +9 -12
- package/src/nz/co/siliconst/ui5/metaui/controls/host/GeneratorHost-dbg.js +170 -74
- package/src/nz/co/siliconst/ui5/metaui/controls/host/GeneratorHost-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/host/GeneratorHost.d.ts +29 -4
- package/src/nz/co/siliconst/ui5/metaui/controls/host/GeneratorHost.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/host/GeneratorHost.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/host/GeneratorHost.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/host/GeneratorHost.ts +179 -79
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DataSyncDelegate-dbg.js +41 -38
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DataSyncDelegate-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DataSyncDelegate.d.ts +5 -3
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DataSyncDelegate.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DataSyncDelegate.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DataSyncDelegate.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DataSyncDelegate.ts +46 -38
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DialogDelegate-dbg.js +41 -2
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DialogDelegate-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DialogDelegate.d.ts +6 -2
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DialogDelegate.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DialogDelegate.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DialogDelegate.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DialogDelegate.ts +47 -2
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/ODataDelegate-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/ODataDelegate.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/ODataDelegate.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/ODataDelegate.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/ODataDelegate.ts +8 -7
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/ValidationDelegate-dbg.js +7 -2
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/ValidationDelegate-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/ValidationDelegate.d.ts +5 -2
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/ValidationDelegate.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/ValidationDelegate.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/ValidationDelegate.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/ValidationDelegate.ts +10 -5
- package/src/nz/co/siliconst/ui5/metaui/core/Engine-dbg.js +215 -38
- package/src/nz/co/siliconst/ui5/metaui/core/Engine-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/Engine.d.ts +21 -3
- package/src/nz/co/siliconst/ui5/metaui/core/Engine.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/Engine.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/Engine.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/Engine.ts +218 -40
- package/src/nz/co/siliconst/ui5/metaui/core/LayoutMutator-dbg.js +86 -0
- package/src/nz/co/siliconst/ui5/metaui/core/LayoutMutator-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/core/LayoutMutator.d.ts +16 -0
- package/src/nz/co/siliconst/ui5/metaui/core/LayoutMutator.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/core/LayoutMutator.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/core/LayoutMutator.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/core/LayoutMutator.ts +82 -0
- package/src/nz/co/siliconst/ui5/metaui/core/LayoutScorer-dbg.js +142 -0
- package/src/nz/co/siliconst/ui5/metaui/core/LayoutScorer-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/core/LayoutScorer.d.ts +24 -0
- package/src/nz/co/siliconst/ui5/metaui/core/LayoutScorer.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/core/LayoutScorer.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/core/LayoutScorer.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/core/LayoutScorer.ts +147 -0
- package/src/nz/co/siliconst/ui5/metaui/core/PipelineManager-dbg.js +8 -0
- package/src/nz/co/siliconst/ui5/metaui/core/PipelineManager-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/PipelineManager.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/PipelineManager.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/PipelineManager.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/PipelineManager.ts +7 -0
- package/src/nz/co/siliconst/ui5/metaui/core/PluginRegistry-dbg.js +153 -50
- package/src/nz/co/siliconst/ui5/metaui/core/PluginRegistry-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/PluginRegistry.d.ts +15 -0
- package/src/nz/co/siliconst/ui5/metaui/core/PluginRegistry.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/PluginRegistry.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/PluginRegistry.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/PluginRegistry.ts +164 -53
- package/src/nz/co/siliconst/ui5/metaui/core/PolicyEngine-dbg.js +310 -0
- package/src/nz/co/siliconst/ui5/metaui/core/PolicyEngine-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/core/PolicyEngine.d.ts +73 -0
- package/src/nz/co/siliconst/ui5/metaui/core/PolicyEngine.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/core/PolicyEngine.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/core/PolicyEngine.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/core/PolicyEngine.ts +307 -0
- package/src/nz/co/siliconst/ui5/metaui/core/SchemaNormalizer-dbg.js +35 -14
- package/src/nz/co/siliconst/ui5/metaui/core/SchemaNormalizer-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/SchemaNormalizer.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/SchemaNormalizer.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/SchemaNormalizer.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/SchemaNormalizer.ts +40 -15
- package/src/nz/co/siliconst/ui5/metaui/core/SchemaValidator-dbg.js +15 -3
- package/src/nz/co/siliconst/ui5/metaui/core/SchemaValidator-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/SchemaValidator.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/SchemaValidator.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/SchemaValidator.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/SchemaValidator.ts +15 -1
- package/src/nz/co/siliconst/ui5/metaui/core/StateManager-dbg.js +82 -16
- package/src/nz/co/siliconst/ui5/metaui/core/StateManager-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/StateManager.d.ts +16 -0
- package/src/nz/co/siliconst/ui5/metaui/core/StateManager.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/StateManager.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/StateManager.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/StateManager.ts +89 -17
- package/src/nz/co/siliconst/ui5/metaui/interfaces/IPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/interfaces/IPlugin.d.ts +12 -1
- package/src/nz/co/siliconst/ui5/metaui/interfaces/IPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/interfaces/IPlugin.ts +13 -1
- package/src/nz/co/siliconst/ui5/metaui/interfaces/IPolicyPlugin-dbg.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/interfaces/IPolicyPlugin-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/interfaces/IPolicyPlugin.d.ts +50 -0
- package/src/nz/co/siliconst/ui5/metaui/interfaces/IPolicyPlugin.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/interfaces/IPolicyPlugin.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/interfaces/IPolicyPlugin.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/interfaces/IPolicyPlugin.ts +49 -0
- package/src/nz/co/siliconst/ui5/metaui/interfaces/ISchema-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/interfaces/ISchema.d.ts +23 -1
- package/src/nz/co/siliconst/ui5/metaui/interfaces/ISchema.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/interfaces/ISchema.ts +27 -1
- package/src/nz/co/siliconst/ui5/metaui/layouts/FormLayout-dbg.js +31 -36
- package/src/nz/co/siliconst/ui5/metaui/layouts/FormLayout-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/layouts/FormLayout.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/layouts/FormLayout.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/layouts/FormLayout.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/layouts/FormLayout.ts +26 -29
- package/src/nz/co/siliconst/ui5/metaui/layouts/TableLayout-dbg.js +47 -11
- package/src/nz/co/siliconst/ui5/metaui/layouts/TableLayout-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/layouts/TableLayout.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/layouts/TableLayout.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/layouts/TableLayout.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/layouts/TableLayout.ts +48 -12
- package/src/nz/co/siliconst/ui5/metaui/library-preload.js +74 -58
- package/src/nz/co/siliconst/ui5/metaui/library-preload.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiParserFactory-dbg.js +3 -2
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiParserFactory-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiParserFactory.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiParserFactory.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiParserFactory.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiParserFactory.ts +3 -2
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiRefResolver-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiRefResolver.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiRefResolver.ts +3 -3
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiUIMapper-dbg.js +2 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiUIMapper-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiUIMapper.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiUIMapper.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiUIMapper.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiUIMapper.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiUIMapper.ts +4 -3
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/OpenApiHeuristicEngine-dbg.js +2 -2
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/OpenApiHeuristicEngine-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/OpenApiHeuristicEngine.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/OpenApiHeuristicEngine.ts +2 -2
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/plugins/ProtobufVariantHeuristic-dbg.js +12 -8
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/plugins/ProtobufVariantHeuristic-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/plugins/ProtobufVariantHeuristic.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/plugins/ProtobufVariantHeuristic.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/plugins/ProtobufVariantHeuristic.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/plugins/ProtobufVariantHeuristic.ts +15 -11
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi2Parser-dbg.js +20 -12
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi2Parser-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi2Parser.d.ts +4 -4
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi2Parser.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi2Parser.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi2Parser.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi2Parser.ts +24 -16
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi3Parser-dbg.js +18 -11
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi3Parser-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi3Parser.d.ts +4 -4
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi3Parser.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi3Parser.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi3Parser.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi3Parser.ts +22 -15
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApiPropertyMapper-dbg.js +24 -100
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApiPropertyMapper-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApiPropertyMapper.d.ts +8 -72
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApiPropertyMapper.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApiPropertyMapper.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApiPropertyMapper.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApiPropertyMapper.ts +45 -108
- package/src/nz/co/siliconst/ui5/metaui/plugins/actions/ClearFormActionPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/actions/ClearFormActionPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/actions/ClearFormActionPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/actions/ClearFormActionPlugin.ts +2 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ArrayPlugin-dbg.js +24 -18
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ArrayPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ArrayPlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ArrayPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ArrayPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ArrayPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ArrayPlugin.ts +23 -21
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BarcodeScannerPlugin-dbg.js +5 -5
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BarcodeScannerPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BarcodeScannerPlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BarcodeScannerPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BarcodeScannerPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BarcodeScannerPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BarcodeScannerPlugin.ts +7 -7
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BasePlugin-dbg.js +129 -9
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BasePlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BasePlugin.d.ts +46 -10
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BasePlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BasePlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BasePlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BasePlugin.ts +145 -15
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BooleanPlugin-dbg.js +35 -14
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BooleanPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BooleanPlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BooleanPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BooleanPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BooleanPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BooleanPlugin.ts +38 -14
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CameraPlugin-dbg.js +4 -4
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CameraPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CameraPlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CameraPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CameraPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CameraPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CameraPlugin.ts +5 -5
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CodeEditorPlugin-dbg.js +69 -20
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CodeEditorPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CodeEditorPlugin.d.ts +2 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CodeEditorPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CodeEditorPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CodeEditorPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CodeEditorPlugin.ts +77 -21
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DatePlugin-dbg.js +3 -3
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DatePlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DatePlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DatePlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DatePlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DatePlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DatePlugin.ts +5 -5
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DateTimePlugin-dbg.js +3 -3
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DateTimePlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DateTimePlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DateTimePlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DateTimePlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DateTimePlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DateTimePlugin.ts +5 -5
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DictionaryMapPlugin-dbg.js +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DictionaryMapPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DictionaryMapPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DictionaryMapPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DictionaryMapPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DictionaryMapPlugin.ts +6 -5
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DropdownPlugin-dbg.js +8 -3
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DropdownPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DropdownPlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DropdownPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DropdownPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DropdownPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DropdownPlugin.ts +10 -5
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/EmailPlugin-dbg.js +3 -3
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/EmailPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/EmailPlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/EmailPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/EmailPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/EmailPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/EmailPlugin.ts +4 -4
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/FileUploaderPlugin-dbg.js +3 -3
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/FileUploaderPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/FileUploaderPlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/FileUploaderPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/FileUploaderPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/FileUploaderPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/FileUploaderPlugin.ts +5 -5
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/GeolocationPlugin-dbg.js +4 -4
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/GeolocationPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/GeolocationPlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/GeolocationPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/GeolocationPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/GeolocationPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/GeolocationPlugin.ts +5 -5
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/LinkPlugin-dbg.js +3 -3
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/LinkPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/LinkPlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/LinkPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/LinkPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/LinkPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/LinkPlugin.ts +4 -4
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MessageStripPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MessageStripPlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MessageStripPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MessageStripPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MessageStripPlugin.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MultiInputPlugin-dbg.js +7 -6
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MultiInputPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MultiInputPlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MultiInputPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MultiInputPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MultiInputPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MultiInputPlugin.ts +9 -8
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MultiSelectPlugin-dbg.js +2 -2
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MultiSelectPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MultiSelectPlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MultiSelectPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MultiSelectPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MultiSelectPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MultiSelectPlugin.ts +3 -3
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/NumberPlugin-dbg.js +36 -21
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/NumberPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/NumberPlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/NumberPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/NumberPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/NumberPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/NumberPlugin.ts +40 -23
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ObjectPlugin-dbg.js +9 -6
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ObjectPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ObjectPlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ObjectPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ObjectPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ObjectPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ObjectPlugin.ts +10 -8
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/PasswordPlugin-dbg.js +3 -3
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/PasswordPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/PasswordPlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/PasswordPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/PasswordPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/PasswordPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/PasswordPlugin.ts +4 -4
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RatingIndicatorPlugin-dbg.js +3 -3
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RatingIndicatorPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RatingIndicatorPlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RatingIndicatorPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RatingIndicatorPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RatingIndicatorPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RatingIndicatorPlugin.ts +5 -5
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ReferencePlugin-dbg.js +29 -12
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ReferencePlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ReferencePlugin.d.ts +5 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ReferencePlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ReferencePlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ReferencePlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ReferencePlugin.ts +30 -10
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RichTextPlugin-dbg.js +4 -4
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RichTextPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RichTextPlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RichTextPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RichTextPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RichTextPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RichTextPlugin.ts +5 -5
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SignaturePlugin-dbg.js +4 -4
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SignaturePlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SignaturePlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SignaturePlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SignaturePlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SignaturePlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SignaturePlugin.ts +5 -5
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SliderPlugin-dbg.js +3 -3
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SliderPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SliderPlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SliderPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SliderPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SliderPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SliderPlugin.ts +4 -4
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/StepInputPlugin-dbg.js +3 -3
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/StepInputPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/StepInputPlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/StepInputPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/StepInputPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/StepInputPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/StepInputPlugin.ts +5 -5
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/StringPlugin-dbg.js +3 -3
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/StringPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/StringPlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/StringPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/StringPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/StringPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/StringPlugin.ts +4 -4
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SwitchPlugin-dbg.js +2 -2
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SwitchPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SwitchPlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SwitchPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SwitchPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SwitchPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SwitchPlugin.ts +3 -3
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TextAreaPlugin-dbg.js +58 -56
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TextAreaPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TextAreaPlugin.d.ts +2 -5
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TextAreaPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TextAreaPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TextAreaPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TextAreaPlugin.ts +66 -55
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TimePlugin-dbg.js +3 -3
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TimePlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TimePlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TimePlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TimePlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TimePlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TimePlugin.ts +4 -4
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/VoiceInputPlugin-dbg.js +4 -4
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/VoiceInputPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/VoiceInputPlugin.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/VoiceInputPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/VoiceInputPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/VoiceInputPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/VoiceInputPlugin.ts +5 -5
- package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/LiveSearchPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/LiveSearchPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/LiveSearchPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/LiveSearchPlugin.ts +5 -3
- package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/ODataListBindingPlugin-dbg.js +2 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/ODataListBindingPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/ODataListBindingPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/ODataListBindingPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/ODataListBindingPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/ODataListBindingPlugin.ts +6 -3
- package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteDropdownPlugin-dbg.js +30 -9
- package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteDropdownPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteDropdownPlugin.d.ts +2 -2
- package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteDropdownPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteDropdownPlugin.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteDropdownPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteDropdownPlugin.ts +41 -13
- package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteValueHelpPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteValueHelpPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteValueHelpPlugin.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteValueHelpPlugin.ts +5 -3
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/IsNotNullConditionPlugin-dbg.js +41 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/IsNotNullConditionPlugin-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/IsNotNullConditionPlugin.d.ts +24 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/IsNotNullConditionPlugin.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/IsNotNullConditionPlugin.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/IsNotNullConditionPlugin.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/IsNotNullConditionPlugin.ts +34 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/IsNullConditionPlugin-dbg.js +41 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/IsNullConditionPlugin-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/IsNullConditionPlugin.d.ts +24 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/IsNullConditionPlugin.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/IsNullConditionPlugin.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/IsNullConditionPlugin.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/IsNullConditionPlugin.ts +34 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/NumericGreaterThanConditionPlugin-dbg.js +52 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/NumericGreaterThanConditionPlugin-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/NumericGreaterThanConditionPlugin.d.ts +30 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/NumericGreaterThanConditionPlugin.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/NumericGreaterThanConditionPlugin.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/NumericGreaterThanConditionPlugin.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/NumericGreaterThanConditionPlugin.ts +45 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/NumericLessThanConditionPlugin-dbg.js +52 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/NumericLessThanConditionPlugin-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/NumericLessThanConditionPlugin.d.ts +30 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/NumericLessThanConditionPlugin.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/NumericLessThanConditionPlugin.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/NumericLessThanConditionPlugin.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/NumericLessThanConditionPlugin.ts +45 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/StringEqualsConditionPlugin-dbg.js +41 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/StringEqualsConditionPlugin-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/StringEqualsConditionPlugin.d.ts +24 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/StringEqualsConditionPlugin.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/StringEqualsConditionPlugin.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/StringEqualsConditionPlugin.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/conditions/StringEqualsConditionPlugin.ts +34 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/EditableEffectPlugin-dbg.js +40 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/EditableEffectPlugin-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/EditableEffectPlugin.d.ts +28 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/EditableEffectPlugin.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/EditableEffectPlugin.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/EditableEffectPlugin.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/EditableEffectPlugin.ts +34 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/RequirementEffectPlugin-dbg.js +40 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/RequirementEffectPlugin-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/RequirementEffectPlugin.d.ts +28 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/RequirementEffectPlugin.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/RequirementEffectPlugin.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/RequirementEffectPlugin.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/RequirementEffectPlugin.ts +34 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/ValidityEffectPlugin-dbg.js +40 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/ValidityEffectPlugin-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/ValidityEffectPlugin.d.ts +28 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/ValidityEffectPlugin.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/ValidityEffectPlugin.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/ValidityEffectPlugin.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/ValidityEffectPlugin.ts +34 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/VisibilityEffectPlugin-dbg.js +40 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/VisibilityEffectPlugin-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/VisibilityEffectPlugin.d.ts +28 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/VisibilityEffectPlugin.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/VisibilityEffectPlugin.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/VisibilityEffectPlugin.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/policies/effects/VisibilityEffectPlugin.ts +34 -0
- package/src/nz/co/siliconst/ui5/metaui/services/SchemaProvider-dbg.js +33 -0
- package/src/nz/co/siliconst/ui5/metaui/services/SchemaProvider-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/services/SchemaProvider.d.ts +14 -0
- package/src/nz/co/siliconst/ui5/metaui/services/SchemaProvider.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/services/SchemaProvider.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/services/SchemaProvider.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/services/SchemaProvider.ts +24 -0
- package/src/nz/co/siliconst/ui5/metaui/utils/Logger-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/utils/Logger.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/utils/Logger.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/utils/Logger.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/ConditionEngine-dbg.js +0 -75
- package/src/nz/co/siliconst/ui5/metaui/core/ConditionEngine-dbg.js.map +0 -1
- package/src/nz/co/siliconst/ui5/metaui/core/ConditionEngine.d.ts +0 -47
- package/src/nz/co/siliconst/ui5/metaui/core/ConditionEngine.d.ts.map +0 -1
- package/src/nz/co/siliconst/ui5/metaui/core/ConditionEngine.js +0 -2
- package/src/nz/co/siliconst/ui5/metaui/core/ConditionEngine.js.map +0 -1
- package/src/nz/co/siliconst/ui5/metaui/core/ConditionEngine.ts +0 -72
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/**
|
|
1
|
+
/**
|
|
2
2
|
* @file OpenApi3Parser.ts
|
|
3
3
|
* @description Native parser for OpenAPI 3.0.x specifications.
|
|
4
4
|
*/
|
|
@@ -19,32 +19,39 @@ export class OpenApi3Parser implements IOpenApiParserPlugin {
|
|
|
19
19
|
* Parses a raw OpenAPI 3.0 document into a normalized MetaUI ISchema tree.
|
|
20
20
|
* Extracts definitions from components.schemas, normalizes properties, and recursively resolves composition (allOf).
|
|
21
21
|
*
|
|
22
|
-
* @param {
|
|
22
|
+
* @param {unknown} openApiRoot The root JSON document.
|
|
23
23
|
* @param {string} [targetDefinition] Optional specific schema to extract from components.schemas. If omitted, uses the first schema available.
|
|
24
24
|
* @returns {ISchema} The synthesized MetaUI schema structure.
|
|
25
25
|
* @throws {Error} If the target definition cannot be found in the provided Swagger document.
|
|
26
26
|
*/
|
|
27
27
|
public parse(openApiRoot: unknown, targetDefinition?: string): ISchema {
|
|
28
|
-
let targetObject = openApiRoot
|
|
28
|
+
let targetObject = openApiRoot as Record<string, unknown>;
|
|
29
|
+
const root = openApiRoot as Record<string, unknown>;
|
|
29
30
|
|
|
30
31
|
if (!targetDefinition) {
|
|
31
|
-
if (
|
|
32
|
-
const
|
|
32
|
+
if (root.components && (root.components as Record<string, unknown>).schemas) {
|
|
33
|
+
const schemas = (root.components as Record<string, unknown>).schemas as Record<string, unknown>;
|
|
34
|
+
const keys = Object.keys(schemas);
|
|
33
35
|
if (keys.length > 0) targetDefinition = keys[0];
|
|
34
36
|
}
|
|
35
37
|
}
|
|
36
38
|
|
|
37
39
|
if (targetDefinition) {
|
|
38
40
|
targetDefinition = targetDefinition.replace("#/components/schemas/", "").replace("#/definitions/", "");
|
|
39
|
-
if (
|
|
40
|
-
|
|
41
|
+
if (root.components && (root.components as Record<string, unknown>).schemas) {
|
|
42
|
+
const schemas = (root.components as Record<string, unknown>).schemas as Record<string, unknown>;
|
|
43
|
+
if (schemas[targetDefinition]) {
|
|
44
|
+
targetObject = schemas[targetDefinition] as Record<string, unknown>;
|
|
45
|
+
} else {
|
|
46
|
+
throw new Error(`[MetaUI OpenApi3Parser] Could not find target definition '${targetDefinition}' in components.schemas.`);
|
|
47
|
+
}
|
|
41
48
|
} else {
|
|
42
49
|
throw new Error(`[MetaUI OpenApi3Parser] Could not find target definition '${targetDefinition}' in components.schemas.`);
|
|
43
50
|
}
|
|
44
51
|
}
|
|
45
52
|
|
|
46
53
|
if (targetObject.$ref) {
|
|
47
|
-
const resolved = OpenApiRefResolver.resolve(targetObject.$ref, openApiRoot)
|
|
54
|
+
const resolved = OpenApiRefResolver.resolve(targetObject.$ref as string, openApiRoot) as Record<string, unknown>;
|
|
48
55
|
if (resolved) {
|
|
49
56
|
targetObject = { ...resolved, ...targetObject };
|
|
50
57
|
}
|
|
@@ -54,17 +61,17 @@ export class OpenApi3Parser implements IOpenApiParserPlugin {
|
|
|
54
61
|
let merged = { ...targetObject };
|
|
55
62
|
delete merged.allOf;
|
|
56
63
|
for (const subSchema of targetObject.allOf) {
|
|
57
|
-
let resolvedSub = subSchema
|
|
64
|
+
let resolvedSub = subSchema as Record<string, unknown>;
|
|
58
65
|
if (subSchema.$ref) {
|
|
59
|
-
resolvedSub = OpenApiRefResolver.resolve(subSchema.$ref, openApiRoot) || {};
|
|
66
|
+
resolvedSub = (OpenApiRefResolver.resolve(subSchema.$ref as string, openApiRoot) as Record<string, unknown>) || {};
|
|
60
67
|
}
|
|
61
|
-
merged = OpenApiPropertyMapper.deepMergeSchemas(merged, resolvedSub)
|
|
68
|
+
merged = OpenApiPropertyMapper.deepMergeSchemas(merged, resolvedSub) as Record<string, unknown>;
|
|
62
69
|
}
|
|
63
70
|
targetObject = merged;
|
|
64
71
|
}
|
|
65
72
|
|
|
66
73
|
const schema: ISchema = {
|
|
67
|
-
title: targetObject.title ||
|
|
74
|
+
title: (targetObject.title as string) || ((root.info as Record<string, unknown>)?.title as string) || targetDefinition || "",
|
|
68
75
|
type: targetObject.type === "array" ? "array" : "object",
|
|
69
76
|
layoutStrategy: targetObject.type === "array" ? "table" : "form"
|
|
70
77
|
};
|
|
@@ -78,15 +85,15 @@ export class OpenApi3Parser implements IOpenApiParserPlugin {
|
|
|
78
85
|
}
|
|
79
86
|
|
|
80
87
|
if (targetObject.properties) {
|
|
81
|
-
const requiredFields = Array.isArray(targetObject.required) ? targetObject.required : [];
|
|
88
|
+
const requiredFields = Array.isArray(targetObject.required) ? (targetObject.required as string[]) : [];
|
|
82
89
|
schema.properties = OpenApiPropertyMapper.mapProperties(targetObject.properties, requiredFields, openApiRoot, "3.0");
|
|
83
90
|
} else if (schema.type === "array" && targetObject.items) {
|
|
84
91
|
schema.items = OpenApiPropertyMapper.mapPropertyMetadata(targetObject.items, "items", false, openApiRoot, "3.0");
|
|
85
92
|
}
|
|
86
93
|
|
|
87
|
-
if (
|
|
94
|
+
if (root.components && (root.components as Record<string, unknown>).schemas) {
|
|
88
95
|
schema.definitions = {};
|
|
89
|
-
const schemas =
|
|
96
|
+
const schemas = (root.components as Record<string, unknown>).schemas as Record<string, unknown>;
|
|
90
97
|
for (const key of Object.keys(schemas)) {
|
|
91
98
|
const mappedProp = OpenApiPropertyMapper.mapPropertyMetadata(schemas[key], key, false, openApiRoot, "3.0");
|
|
92
99
|
schema.definitions[key] = {
|
|
@@ -2,9 +2,9 @@ sap.ui.define(["../OpenApiRefResolver", "../OpenApiTypeMapper", "../OpenApiUIMap
|
|
|
2
2
|
"use strict";
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
* @file OpenApiPropertyMapper.ts
|
|
6
|
+
* @description Extracts and maps OpenAPI properties into MetaUI IPropertyMetadata.
|
|
7
|
+
*/
|
|
8
8
|
const OpenApiRefResolver = ___OpenApiRefResolver["OpenApiRefResolver"];
|
|
9
9
|
const OpenApiTypeMapper = ___OpenApiTypeMapper["OpenApiTypeMapper"];
|
|
10
10
|
const OpenApiUIMapper = ___OpenApiUIMapper["OpenApiUIMapper"];
|
|
@@ -17,9 +17,9 @@ sap.ui.define(["../OpenApiRefResolver", "../OpenApiTypeMapper", "../OpenApiUIMap
|
|
|
17
17
|
/**
|
|
18
18
|
* Recursively traverses and translates an OpenAPI properties block into a MetaUI IPropertyMetadata dictionary.
|
|
19
19
|
*
|
|
20
|
-
* @param {
|
|
20
|
+
* @param {unknown} properties The OpenAPI properties block.
|
|
21
21
|
* @param {string[]} requiredKeys Array of required property keys.
|
|
22
|
-
* @param {
|
|
22
|
+
* @param {unknown} openApiRoot The OpenAPI root document for resolving references.
|
|
23
23
|
* @param {"2.0" | "3.0"} version The OpenAPI version.
|
|
24
24
|
* @param {number} [depth=0] Recursion depth limiter to prevent stack overflows on circular refs.
|
|
25
25
|
* @returns {Record<string, IPropertyMetadata>} The normalized MetaUI properties mapping.
|
|
@@ -27,9 +27,10 @@ sap.ui.define(["../OpenApiRefResolver", "../OpenApiTypeMapper", "../OpenApiUIMap
|
|
|
27
27
|
static mapProperties(properties, requiredKeys, openApiRoot, version, depth = 0) {
|
|
28
28
|
const normalizedProps = {};
|
|
29
29
|
if (depth > 8) return normalizedProps;
|
|
30
|
-
|
|
30
|
+
const props = properties || {};
|
|
31
|
+
for (const key of Object.keys(props)) {
|
|
31
32
|
const isRequired = requiredKeys.includes(key);
|
|
32
|
-
let propDef =
|
|
33
|
+
let propDef = props[key];
|
|
33
34
|
if (propDef.$ref) {
|
|
34
35
|
const resolved = OpenApiRefResolver.resolve(propDef.$ref, openApiRoot);
|
|
35
36
|
if (resolved) {
|
|
@@ -48,10 +49,10 @@ sap.ui.define(["../OpenApiRefResolver", "../OpenApiTypeMapper", "../OpenApiUIMap
|
|
|
48
49
|
* Translates a single OpenAPI property schema block into a MetaUI IPropertyMetadata block.
|
|
49
50
|
* Delegates specific mapping tasks to focused private methods to adhere to SRP.
|
|
50
51
|
*
|
|
51
|
-
* @param {
|
|
52
|
+
* @param {unknown} swaggerProp The specific OpenAPI property schema to map.
|
|
52
53
|
* @param {string} keyName The key/name of this property.
|
|
53
54
|
* @param {boolean} isRequired Whether this property is strictly required.
|
|
54
|
-
* @param {
|
|
55
|
+
* @param {unknown} openApiRoot The OpenAPI root document for resolving references.
|
|
55
56
|
* @param {"2.0" | "3.0"} version The OpenAPI version.
|
|
56
57
|
* @param {number} [depth=0] Recursion depth limiter.
|
|
57
58
|
* @returns {IPropertyMetadata} The normalized MetaUI property metadata.
|
|
@@ -98,20 +99,6 @@ sap.ui.define(["../OpenApiRefResolver", "../OpenApiTypeMapper", "../OpenApiUIMap
|
|
|
98
99
|
this._applyNestedTypes(metaProp, currentProp, openApiRoot, version, depth, type);
|
|
99
100
|
return metaProp;
|
|
100
101
|
}
|
|
101
|
-
|
|
102
|
-
/**
|
|
103
|
-
* Attempts to resolve a $ref block. If it resolves to a primitive, it inlines it.
|
|
104
|
-
* Otherwise, it returns a reference widget payload.
|
|
105
|
-
*
|
|
106
|
-
* @param {any} currentProp The current schema property definition.
|
|
107
|
-
* @param {string} keyName The structural key name.
|
|
108
|
-
* @param {boolean} isRequired Whether the property is strictly required.
|
|
109
|
-
* @param {any} openApiRoot The root API definition for relative resolution.
|
|
110
|
-
* @param {"2.0" | "3.0"} version The structural version context.
|
|
111
|
-
* @param {number} depth The recursive resolution depth.
|
|
112
|
-
* @returns {IPropertyMetadata | null} Resolved metadata, or null if no reference exists.
|
|
113
|
-
* @private
|
|
114
|
-
*/
|
|
115
102
|
static _resolveReference(currentProp, keyName, isRequired, openApiRoot, version, depth) {
|
|
116
103
|
if (!currentProp.$ref) {
|
|
117
104
|
return null;
|
|
@@ -135,15 +122,6 @@ sap.ui.define(["../OpenApiRefResolver", "../OpenApiTypeMapper", "../OpenApiUIMap
|
|
|
135
122
|
}
|
|
136
123
|
};
|
|
137
124
|
}
|
|
138
|
-
|
|
139
|
-
/**
|
|
140
|
-
* Evaluates and merges 'allOf' arrays into a unified schema definition.
|
|
141
|
-
*
|
|
142
|
-
* @param {any} currentProp The structural property definition containing potential aggregations.
|
|
143
|
-
* @param {any} openApiRoot The base schema for deep resolution.
|
|
144
|
-
* @returns {any} A flattened and merged schema entity.
|
|
145
|
-
* @private
|
|
146
|
-
*/
|
|
147
125
|
static _resolveAllOf(currentProp, openApiRoot) {
|
|
148
126
|
if (!Array.isArray(currentProp.allOf)) {
|
|
149
127
|
return currentProp;
|
|
@@ -161,15 +139,6 @@ sap.ui.define(["../OpenApiRefResolver", "../OpenApiTypeMapper", "../OpenApiUIMap
|
|
|
161
139
|
}
|
|
162
140
|
return merged;
|
|
163
141
|
}
|
|
164
|
-
|
|
165
|
-
/**
|
|
166
|
-
* Extracts structural constraints (min/max, regex, etc.) and maps them natively to the output metadata.
|
|
167
|
-
*
|
|
168
|
-
* @param {IPropertyMetadata} metaProp The target metadata definition block.
|
|
169
|
-
* @param {any} currentProp The source OpenAPI schema chunk.
|
|
170
|
-
* @param {"2.0" | "3.0"} version The version, utilized for nuanced boundary matching.
|
|
171
|
-
* @private
|
|
172
|
-
*/
|
|
173
142
|
static _applyConstraints(metaProp, currentProp, version) {
|
|
174
143
|
// String Constraints
|
|
175
144
|
if (typeof currentProp.maxLength === "number") metaProp.maxLength = currentProp.maxLength;
|
|
@@ -207,47 +176,26 @@ sap.ui.define(["../OpenApiRefResolver", "../OpenApiTypeMapper", "../OpenApiUIMap
|
|
|
207
176
|
}
|
|
208
177
|
}
|
|
209
178
|
}
|
|
210
|
-
|
|
211
|
-
/**
|
|
212
|
-
* Extracts operational state flags like readOnly or nullable mapping them onto the internal specification.
|
|
213
|
-
*
|
|
214
|
-
* @param {IPropertyMetadata} metaProp Target native specification.
|
|
215
|
-
* @param {any} currentProp Source raw schema payload.
|
|
216
|
-
* @private
|
|
217
|
-
*/
|
|
218
179
|
static _applyStateModifiers(metaProp, currentProp) {
|
|
219
180
|
if (currentProp.readOnly === true) metaProp.readOnly = true;
|
|
220
181
|
if (currentProp.writeOnly === true) metaProp.writeOnly = true;
|
|
221
182
|
if (currentProp.nullable === true) metaProp.nullable = true;
|
|
222
183
|
if (currentProp.deprecated === true) metaProp.deprecated = true;
|
|
223
184
|
}
|
|
224
|
-
|
|
225
|
-
/**
|
|
226
|
-
* Extracts and maps polymorphic discriminator and union types (oneOf/anyOf) to MetaUI structural directives.
|
|
227
|
-
*
|
|
228
|
-
* @param {IPropertyMetadata} metaProp Native MetaUI definition tree.
|
|
229
|
-
* @param {any} currentProp Raw schema block.
|
|
230
|
-
* @param {any} openApiRoot Master OpenAPI root.
|
|
231
|
-
* @param {"2.0" | "3.0"} version Protocol version identifier.
|
|
232
|
-
* @param {number} depth Internal depth tracker.
|
|
233
|
-
* @private
|
|
234
|
-
*/
|
|
235
185
|
static _applyPolymorphism(metaProp, currentProp, openApiRoot, version, depth) {
|
|
236
|
-
// Discriminator handling
|
|
237
186
|
if (currentProp.discriminator) {
|
|
238
187
|
if (version === "2.0" && typeof currentProp.discriminator === "string") {
|
|
239
188
|
metaProp.discriminator = {
|
|
240
189
|
propertyName: currentProp.discriminator
|
|
241
190
|
};
|
|
242
191
|
} else if (version === "3.0" && typeof currentProp.discriminator === "object") {
|
|
192
|
+
const disc = currentProp.discriminator;
|
|
243
193
|
metaProp.discriminator = {
|
|
244
|
-
propertyName:
|
|
245
|
-
mapping:
|
|
194
|
+
propertyName: disc.propertyName,
|
|
195
|
+
mapping: disc.mapping
|
|
246
196
|
};
|
|
247
197
|
}
|
|
248
198
|
}
|
|
249
|
-
|
|
250
|
-
// Handle oneOf polymorphic mapping
|
|
251
199
|
if (Array.isArray(currentProp.oneOf)) {
|
|
252
200
|
metaProp.oneOf = [];
|
|
253
201
|
for (let i = 0; i < currentProp.oneOf.length; i++) {
|
|
@@ -256,32 +204,16 @@ sap.ui.define(["../OpenApiRefResolver", "../OpenApiTypeMapper", "../OpenApiUIMap
|
|
|
256
204
|
if (!metaProp.ui) metaProp.ui = {};
|
|
257
205
|
metaProp.ui.widget = "polymorphic";
|
|
258
206
|
}
|
|
259
|
-
|
|
260
|
-
// Handle anyOf mapping
|
|
261
207
|
if (Array.isArray(currentProp.anyOf)) {
|
|
262
208
|
metaProp.anyOf = [];
|
|
263
209
|
for (let i = 0; i < currentProp.anyOf.length; i++) {
|
|
264
210
|
metaProp.anyOf.push(this.mapPropertyMetadata(currentProp.anyOf[i], `AnyVariant${i}`, false, openApiRoot, version, depth + 1));
|
|
265
211
|
}
|
|
266
212
|
}
|
|
267
|
-
|
|
268
|
-
// Handle not mapping
|
|
269
213
|
if (currentProp.not) {
|
|
270
214
|
metaProp.not = this.mapPropertyMetadata(currentProp.not, `NotVariant`, false, openApiRoot, version, depth + 1);
|
|
271
215
|
}
|
|
272
216
|
}
|
|
273
|
-
|
|
274
|
-
/**
|
|
275
|
-
* Recursively traverses into nested objects and arrays constructing the structural node trees.
|
|
276
|
-
*
|
|
277
|
-
* @param {IPropertyMetadata} metaProp The localized destination structure.
|
|
278
|
-
* @param {any} currentProp The source chunk representing a complex element.
|
|
279
|
-
* @param {any} openApiRoot The OpenAPI dictionary context.
|
|
280
|
-
* @param {"2.0" | "3.0"} version System schema version.
|
|
281
|
-
* @param {number} depth Invocation stack depth.
|
|
282
|
-
* @param {string} type Normalized atomic structure type.
|
|
283
|
-
* @private
|
|
284
|
-
*/
|
|
285
217
|
static _applyNestedTypes(metaProp, currentProp, openApiRoot, version, depth, type) {
|
|
286
218
|
if (type === "object") {
|
|
287
219
|
if (currentProp.properties) {
|
|
@@ -297,8 +229,6 @@ sap.ui.define(["../OpenApiRefResolver", "../OpenApiTypeMapper", "../OpenApiUIMap
|
|
|
297
229
|
metaProp.ui.widget = "dictionary";
|
|
298
230
|
}
|
|
299
231
|
}
|
|
300
|
-
|
|
301
|
-
// Opaque JSON object definition mapping
|
|
302
232
|
if (!currentProp.properties && !currentProp.additionalProperties) {
|
|
303
233
|
if (!metaProp.ui) metaProp.ui = {};
|
|
304
234
|
metaProp.ui.widget = "codeEditor";
|
|
@@ -311,28 +241,22 @@ sap.ui.define(["../OpenApiRefResolver", "../OpenApiTypeMapper", "../OpenApiUIMap
|
|
|
311
241
|
}
|
|
312
242
|
}
|
|
313
243
|
}
|
|
314
|
-
|
|
315
|
-
/**
|
|
316
|
-
* Recursively deep-merges two OpenAPI objects, ensuring array boundaries and nested structures are preserved.
|
|
317
|
-
*
|
|
318
|
-
* @param {any} target The target base object.
|
|
319
|
-
* @param {any} source The source object providing override details.
|
|
320
|
-
* @returns {any} The synthesized output object.
|
|
321
|
-
*/
|
|
322
244
|
static deepMergeSchemas(target, source) {
|
|
323
|
-
const
|
|
245
|
+
const outTarget = target || {};
|
|
246
|
+
const output = Object.assign({}, outTarget);
|
|
324
247
|
if (source === null || typeof source !== "object") return output;
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
248
|
+
const srcObj = source;
|
|
249
|
+
Object.keys(srcObj).forEach(key => {
|
|
250
|
+
if (Array.isArray(srcObj[key])) {
|
|
251
|
+
output[key] = Array.isArray(outTarget[key]) ? Array.from(new Set([...outTarget[key], ...srcObj[key]])) : [...srcObj[key]];
|
|
252
|
+
} else if (typeof srcObj[key] === "object" && srcObj[key] !== null) {
|
|
253
|
+
if (outTarget[key] && typeof outTarget[key] === "object") {
|
|
254
|
+
output[key] = this.deepMergeSchemas(outTarget[key], srcObj[key]);
|
|
331
255
|
} else {
|
|
332
|
-
output[key] = Object.assign({},
|
|
256
|
+
output[key] = Object.assign({}, srcObj[key]);
|
|
333
257
|
}
|
|
334
258
|
} else {
|
|
335
|
-
output[key] =
|
|
259
|
+
output[key] = srcObj[key];
|
|
336
260
|
}
|
|
337
261
|
});
|
|
338
262
|
return output;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenApiPropertyMapper-dbg.js","names":["OpenApiRefResolver","___OpenApiRefResolver","OpenApiTypeMapper","___OpenApiTypeMapper","OpenApiUIMapper","___OpenApiUIMapper","OpenApiPropertyMapper","mapProperties","properties","requiredKeys","openApiRoot","version","depth","normalizedProps","key","Object","keys","isRequired","includes","propDef","$ref","resolved","resolve","mapPropertyMetadata","swaggerProp","keyName","currentProp","refResult","_resolveReference","_resolveAllOf","type","mapType","metaProp","required","uiDirective","build","length","ui","_applyConstraints","_applyStateModifiers","default","undefined","Array","isArray","enum","widget","_applyPolymorphism","_applyNestedTypes","resolvedType","inlineProp","allOf","merged","subSchema","resolvedSub","deepMergeSchemas","maxLength","minLength","pattern","maximum","minimum","multipleOf","maxItems","minItems","uniqueItems","maxProperties","minProperties","exclusiveMaximum","exclusiveMinimum","readOnly","writeOnly","nullable","deprecated","discriminator","propertyName","mapping","oneOf","i","push","anyOf","not","childRequired","additionalProperties","items","target","source","output","assign","forEach","from","Set","__exports","__esModule"],"sources":["OpenApiPropertyMapper.ts"],"sourcesContent":["/**\n * @file OpenApiPropertyMapper.ts\n * @description Extracts and maps OpenAPI properties into MetaUI IPropertyMetadata.\n */\n\nimport { IPropertyMetadata } from \"../../interfaces/ISchema\";\nimport { OpenApiRefResolver } from \"../OpenApiRefResolver\";\nimport { OpenApiTypeMapper } from \"../OpenApiTypeMapper\";\nimport { OpenApiUIMapper } from \"../OpenApiUIMapper\";\n\n/**\n * Utility class responsible for extracting and mapping OpenAPI properties into the native MetaUI IPropertyMetadata schema format.\n * \n * @public\n */\nexport class OpenApiPropertyMapper {\n /**\n * Recursively traverses and translates an OpenAPI properties block into a MetaUI IPropertyMetadata dictionary.\n * \n * @param {Record<string, any>} properties The OpenAPI properties block.\n * @param {string[]} requiredKeys Array of required property keys.\n * @param {any} openApiRoot The OpenAPI root document for resolving references.\n * @param {\"2.0\" | \"3.0\"} version The OpenAPI version.\n * @param {number} [depth=0] Recursion depth limiter to prevent stack overflows on circular refs.\n * @returns {Record<string, IPropertyMetadata>} The normalized MetaUI properties mapping.\n */\n public static mapProperties(\n properties: Record<string, any>, \n requiredKeys: string[], \n openApiRoot: unknown, \n version: \"2.0\" | \"3.0\", \n depth: number = 0\n ): Record<string, IPropertyMetadata> {\n const normalizedProps: Record<string, IPropertyMetadata> = {};\n \n if (depth > 8) return normalizedProps;\n\n for (const key of Object.keys(properties)) {\n const isRequired = requiredKeys.includes(key);\n let propDef = properties[key];\n\n if (propDef.$ref) {\n const resolved = OpenApiRefResolver.resolve(propDef.$ref, openApiRoot);\n if (resolved) {\n propDef = { ...resolved, ...propDef };\n }\n }\n\n normalizedProps[key] = this.mapPropertyMetadata(propDef, key, isRequired, openApiRoot, version, depth + 1);\n }\n \n return normalizedProps;\n }\n\n /**\n * Translates a single OpenAPI property schema block into a MetaUI IPropertyMetadata block.\n * Delegates specific mapping tasks to focused private methods to adhere to SRP.\n * \n * @param {any} swaggerProp The specific OpenAPI property schema to map.\n * @param {string} keyName The key/name of this property.\n * @param {boolean} isRequired Whether this property is strictly required.\n * @param {any} openApiRoot The OpenAPI root document for resolving references.\n * @param {\"2.0\" | \"3.0\"} version The OpenAPI version.\n * @param {number} [depth=0] Recursion depth limiter.\n * @returns {IPropertyMetadata} The normalized MetaUI property metadata.\n */\n public static mapPropertyMetadata(\n swaggerProp: unknown, \n keyName: string, \n isRequired: boolean, \n openApiRoot: unknown, \n version: \"2.0\" | \"3.0\", \n depth: number = 0\n ): IPropertyMetadata {\n let currentProp = swaggerProp;\n\n // 1. Resolve References\n const refResult = this._resolveReference(currentProp, keyName, isRequired, openApiRoot, version, depth);\n if (refResult) {\n return refResult;\n }\n\n // 2. Resolve Composition (allOf)\n currentProp = this._resolveAllOf(currentProp, openApiRoot);\n\n // 3. Base Initialization\n const type = OpenApiTypeMapper.mapType(currentProp.type);\n const metaProp: IPropertyMetadata = {\n type: type,\n required: isRequired\n };\n\n // 4. UI Directive Binding\n const uiDirective = OpenApiUIMapper.build(currentProp, keyName);\n if (Object.keys(uiDirective).length > 0) {\n metaProp.ui = uiDirective;\n }\n\n // 5. Constraints & State Modifiers\n this._applyConstraints(metaProp, currentProp, version);\n this._applyStateModifiers(metaProp, currentProp);\n\n if (currentProp.default !== undefined) {\n metaProp.default = currentProp.default;\n }\n\n if (Array.isArray(currentProp.enum)) {\n metaProp.enum = currentProp.enum;\n if (!metaProp.ui) metaProp.ui = {};\n metaProp.ui.widget = \"dropdown\";\n }\n\n // 6. Polymorphism & Nesting\n this._applyPolymorphism(metaProp, currentProp, openApiRoot, version, depth);\n this._applyNestedTypes(metaProp, currentProp, openApiRoot, version, depth, type);\n\n return metaProp;\n }\n\n /**\n * Attempts to resolve a $ref block. If it resolves to a primitive, it inlines it.\n * Otherwise, it returns a reference widget payload.\n * \n * @param {any} currentProp The current schema property definition.\n * @param {string} keyName The structural key name.\n * @param {boolean} isRequired Whether the property is strictly required.\n * @param {any} openApiRoot The root API definition for relative resolution.\n * @param {\"2.0\" | \"3.0\"} version The structural version context.\n * @param {number} depth The recursive resolution depth.\n * @returns {IPropertyMetadata | null} Resolved metadata, or null if no reference exists.\n * @private\n */\n private static _resolveReference(\n currentProp: unknown, \n keyName: string, \n isRequired: boolean, \n openApiRoot: unknown, \n version: \"2.0\" | \"3.0\", \n depth: number\n ): IPropertyMetadata | null {\n if (!currentProp.$ref) {\n return null;\n }\n\n const resolved = OpenApiRefResolver.resolve(currentProp.$ref, openApiRoot);\n const resolvedType = currentProp.type || (resolved && resolved.type);\n \n if (resolvedType && [\"string\", \"number\", \"integer\", \"boolean\"].includes(resolvedType)) {\n const inlineProp = { ...resolved, ...currentProp };\n delete inlineProp.$ref;\n return this.mapPropertyMetadata(inlineProp, keyName, isRequired, openApiRoot, version, depth + 1);\n }\n\n return {\n type: \"object\",\n $ref: currentProp.$ref,\n required: isRequired,\n ui: { widget: \"reference\" }\n };\n }\n\n /**\n * Evaluates and merges 'allOf' arrays into a unified schema definition.\n * \n * @param {any} currentProp The structural property definition containing potential aggregations.\n * @param {any} openApiRoot The base schema for deep resolution.\n * @returns {any} A flattened and merged schema entity.\n * @private\n */\n private static _resolveAllOf(currentProp: unknown, openApiRoot: unknown): unknown {\n if (!Array.isArray(currentProp.allOf)) {\n return currentProp;\n }\n \n let merged = { ...currentProp };\n delete merged.allOf;\n for (const subSchema of currentProp.allOf) {\n let resolvedSub = subSchema;\n if (subSchema.$ref) {\n resolvedSub = OpenApiRefResolver.resolve(subSchema.$ref, openApiRoot) || {};\n }\n merged = this.deepMergeSchemas(merged, resolvedSub);\n }\n return merged;\n }\n\n /**\n * Extracts structural constraints (min/max, regex, etc.) and maps them natively to the output metadata.\n * \n * @param {IPropertyMetadata} metaProp The target metadata definition block.\n * @param {any} currentProp The source OpenAPI schema chunk.\n * @param {\"2.0\" | \"3.0\"} version The version, utilized for nuanced boundary matching.\n * @private\n */\n private static _applyConstraints(metaProp: IPropertyMetadata, currentProp: unknown, version: \"2.0\" | \"3.0\"): void {\n // String Constraints\n if (typeof currentProp.maxLength === \"number\") metaProp.maxLength = currentProp.maxLength;\n if (typeof currentProp.minLength === \"number\") metaProp.minLength = currentProp.minLength;\n if (typeof currentProp.pattern === \"string\") metaProp.pattern = currentProp.pattern;\n\n // Numeric Constraints\n if (typeof currentProp.maximum === \"number\") metaProp.maximum = currentProp.maximum;\n if (typeof currentProp.minimum === \"number\") metaProp.minimum = currentProp.minimum;\n if (typeof currentProp.multipleOf === \"number\") metaProp.multipleOf = currentProp.multipleOf;\n \n // Array Constraints\n if (typeof currentProp.maxItems === \"number\") metaProp.maxItems = currentProp.maxItems;\n if (typeof currentProp.minItems === \"number\") metaProp.minItems = currentProp.minItems;\n if (typeof currentProp.uniqueItems === \"boolean\") metaProp.uniqueItems = currentProp.uniqueItems;\n\n // Object Constraints\n if (typeof currentProp.maxProperties === \"number\") metaProp.maxProperties = currentProp.maxProperties;\n if (typeof currentProp.minProperties === \"number\") metaProp.minProperties = currentProp.minProperties;\n\n // Exclusive Min/Max version-specific logic\n if (version === \"2.0\") {\n if (currentProp.exclusiveMaximum === true && typeof currentProp.maximum === \"number\") {\n metaProp.exclusiveMaximum = true;\n }\n if (currentProp.exclusiveMinimum === true && typeof currentProp.minimum === \"number\") {\n metaProp.exclusiveMinimum = true;\n }\n } else if (version === \"3.0\") {\n if (typeof currentProp.exclusiveMaximum === \"number\" || typeof currentProp.exclusiveMaximum === \"boolean\") {\n metaProp.exclusiveMaximum = currentProp.exclusiveMaximum;\n }\n if (typeof currentProp.exclusiveMinimum === \"number\" || typeof currentProp.exclusiveMinimum === \"boolean\") {\n metaProp.exclusiveMinimum = currentProp.exclusiveMinimum;\n }\n }\n }\n\n /**\n * Extracts operational state flags like readOnly or nullable mapping them onto the internal specification.\n * \n * @param {IPropertyMetadata} metaProp Target native specification.\n * @param {any} currentProp Source raw schema payload.\n * @private\n */\n private static _applyStateModifiers(metaProp: IPropertyMetadata, currentProp: unknown): void {\n if (currentProp.readOnly === true) metaProp.readOnly = true;\n if (currentProp.writeOnly === true) metaProp.writeOnly = true;\n if (currentProp.nullable === true) metaProp.nullable = true;\n if (currentProp.deprecated === true) metaProp.deprecated = true;\n }\n\n /**\n * Extracts and maps polymorphic discriminator and union types (oneOf/anyOf) to MetaUI structural directives.\n * \n * @param {IPropertyMetadata} metaProp Native MetaUI definition tree.\n * @param {any} currentProp Raw schema block.\n * @param {any} openApiRoot Master OpenAPI root.\n * @param {\"2.0\" | \"3.0\"} version Protocol version identifier.\n * @param {number} depth Internal depth tracker.\n * @private\n */\n private static _applyPolymorphism(\n metaProp: IPropertyMetadata, \n currentProp: unknown, \n openApiRoot: unknown, \n version: \"2.0\" | \"3.0\", \n depth: number\n ): void {\n // Discriminator handling\n if (currentProp.discriminator) {\n if (version === \"2.0\" && typeof currentProp.discriminator === \"string\") {\n metaProp.discriminator = { propertyName: currentProp.discriminator };\n } else if (version === \"3.0\" && typeof currentProp.discriminator === \"object\") {\n metaProp.discriminator = {\n propertyName: currentProp.discriminator.propertyName,\n mapping: currentProp.discriminator.mapping\n };\n }\n }\n\n // Handle oneOf polymorphic mapping\n if (Array.isArray(currentProp.oneOf)) {\n metaProp.oneOf = [];\n for (let i = 0; i < currentProp.oneOf.length; i++) {\n metaProp.oneOf.push(this.mapPropertyMetadata(currentProp.oneOf[i], `Variant${i}`, false, openApiRoot, version, depth + 1));\n }\n if (!metaProp.ui) metaProp.ui = {};\n metaProp.ui.widget = \"polymorphic\";\n }\n \n // Handle anyOf mapping\n if (Array.isArray(currentProp.anyOf)) {\n metaProp.anyOf = [];\n for (let i = 0; i < currentProp.anyOf.length; i++) {\n metaProp.anyOf.push(this.mapPropertyMetadata(currentProp.anyOf[i], `AnyVariant${i}`, false, openApiRoot, version, depth + 1));\n }\n }\n\n // Handle not mapping\n if (currentProp.not) {\n metaProp.not = this.mapPropertyMetadata(currentProp.not, `NotVariant`, false, openApiRoot, version, depth + 1);\n }\n }\n\n /**\n * Recursively traverses into nested objects and arrays constructing the structural node trees.\n * \n * @param {IPropertyMetadata} metaProp The localized destination structure.\n * @param {any} currentProp The source chunk representing a complex element.\n * @param {any} openApiRoot The OpenAPI dictionary context.\n * @param {\"2.0\" | \"3.0\"} version System schema version.\n * @param {number} depth Invocation stack depth.\n * @param {string} type Normalized atomic structure type.\n * @private\n */\n private static _applyNestedTypes(\n metaProp: IPropertyMetadata, \n currentProp: unknown, \n openApiRoot: unknown, \n version: \"2.0\" | \"3.0\", \n depth: number,\n type: string\n ): void {\n if (type === \"object\") {\n if (currentProp.properties) {\n const childRequired = Array.isArray(currentProp.required) ? currentProp.required : [];\n metaProp.properties = this.mapProperties(currentProp.properties, childRequired, openApiRoot, version, depth + 1);\n }\n \n if (currentProp.additionalProperties) {\n if (currentProp.additionalProperties === true) {\n metaProp.additionalProperties = true;\n } else if (typeof currentProp.additionalProperties === \"object\") {\n metaProp.additionalProperties = this.mapPropertyMetadata(currentProp.additionalProperties, \"value\", false, openApiRoot, version, depth + 1);\n if (!metaProp.ui) metaProp.ui = {};\n metaProp.ui.widget = \"dictionary\";\n }\n }\n \n // Opaque JSON object definition mapping\n if (!currentProp.properties && !currentProp.additionalProperties) {\n if (!metaProp.ui) metaProp.ui = {};\n metaProp.ui.widget = \"codeEditor\";\n }\n } else if (type === \"array\" && currentProp.items) {\n metaProp.items = this.mapPropertyMetadata(currentProp.items, \"items\", false, openApiRoot, version, depth + 1);\n if (metaProp.items.type !== \"object\") {\n if (!metaProp.ui) metaProp.ui = {};\n metaProp.ui.widget = \"multiInput\";\n }\n }\n }\n\n /**\n * Recursively deep-merges two OpenAPI objects, ensuring array boundaries and nested structures are preserved.\n * \n * @param {any} target The target base object.\n * @param {any} source The source object providing override details.\n * @returns {any} The synthesized output object.\n */\n public static deepMergeSchemas(target: unknown, source: unknown): unknown {\n const output = Object.assign({}, target);\n if (source === null || typeof source !== \"object\") return output;\n\n Object.keys(source).forEach(key => {\n if (Array.isArray(source[key])) {\n output[key] = Array.isArray(target[key]) \n ? Array.from(new Set([...target[key], ...source[key]])) \n : [...source[key]];\n } else if (typeof source[key] === \"object\" && source[key] !== null) {\n if (target[key] && typeof target[key] === \"object\") {\n output[key] = this.deepMergeSchemas(target[key], source[key]);\n } else {\n output[key] = Object.assign({}, source[key]);\n }\n } else {\n output[key] = source[key];\n }\n });\n return output;\n }\n}\n"],"mappings":";;;EAAA;AACA;AACA;AACA;EAHA,MAMSA,kBAAkB,GAAAC,qBAAA;EAAA,MAClBC,iBAAiB,GAAAC,oBAAA;EAAA,MACjBC,eAAe,GAAAC,kBAAA;EAExB;AACA;AACA;AACA;AACA;EACO,MAAMC,qBAAqB,CAAC;IAC/B;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACI,OAAcC,aAAaA,CACvBC,UAA+B,EAC/BC,YAAsB,EACtBC,WAAoB,EACpBC,OAAsB,EACtBC,KAAa,GAAG,CAAC,EACgB;MACjC,MAAMC,eAAkD,GAAG,CAAC,CAAC;MAE7D,IAAID,KAAK,GAAG,CAAC,EAAE,OAAOC,eAAe;MAErC,KAAK,MAAMC,GAAG,IAAIC,MAAM,CAACC,IAAI,CAACR,UAAU,CAAC,EAAE;QACvC,MAAMS,UAAU,GAAGR,YAAY,CAACS,QAAQ,CAACJ,GAAG,CAAC;QAC7C,IAAIK,OAAO,GAAGX,UAAU,CAACM,GAAG,CAAC;QAE7B,IAAIK,OAAO,CAACC,IAAI,EAAE;UACd,MAAMC,QAAQ,GAAGrB,kBAAkB,CAACsB,OAAO,CAACH,OAAO,CAACC,IAAI,EAAEV,WAAW,CAAC;UACtE,IAAIW,QAAQ,EAAE;YACVF,OAAO,GAAG;cAAE,GAAGE,QAAQ;cAAE,GAAGF;YAAQ,CAAC;UACzC;QACJ;QAEAN,eAAe,CAACC,GAAG,CAAC,GAAG,IAAI,CAACS,mBAAmB,CAACJ,OAAO,EAAEL,GAAG,EAAEG,UAAU,EAAEP,WAAW,EAAEC,OAAO,EAAEC,KAAK,GAAG,CAAC,CAAC;MAC9G;MAEA,OAAOC,eAAe;IAC1B;;IAEA;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACI,OAAcU,mBAAmBA,CAC7BC,WAAoB,EACpBC,OAAe,EACfR,UAAmB,EACnBP,WAAoB,EACpBC,OAAsB,EACtBC,KAAa,GAAG,CAAC,EACA;MACjB,IAAIc,WAAW,GAAGF,WAAW;;MAE7B;MACA,MAAMG,SAAS,GAAG,IAAI,CAACC,iBAAiB,CAACF,WAAW,EAAED,OAAO,EAAER,UAAU,EAAEP,WAAW,EAAEC,OAAO,EAAEC,KAAK,CAAC;MACvG,IAAIe,SAAS,EAAE;QACX,OAAOA,SAAS;MACpB;;MAEA;MACAD,WAAW,GAAG,IAAI,CAACG,aAAa,CAACH,WAAW,EAAEhB,WAAW,CAAC;;MAE1D;MACA,MAAMoB,IAAI,GAAG5B,iBAAiB,CAAC6B,OAAO,CAACL,WAAW,CAACI,IAAI,CAAC;MACxD,MAAME,QAA2B,GAAG;QAChCF,IAAI,EAAEA,IAAI;QACVG,QAAQ,EAAEhB;MACd,CAAC;;MAED;MACA,MAAMiB,WAAW,GAAG9B,eAAe,CAAC+B,KAAK,CAACT,WAAW,EAAED,OAAO,CAAC;MAC/D,IAAIV,MAAM,CAACC,IAAI,CAACkB,WAAW,CAAC,CAACE,MAAM,GAAG,CAAC,EAAE;QACrCJ,QAAQ,CAACK,EAAE,GAAGH,WAAW;MAC7B;;MAEA;MACA,IAAI,CAACI,iBAAiB,CAACN,QAAQ,EAAEN,WAAW,EAAEf,OAAO,CAAC;MACtD,IAAI,CAAC4B,oBAAoB,CAACP,QAAQ,EAAEN,WAAW,CAAC;MAEhD,IAAIA,WAAW,CAACc,OAAO,KAAKC,SAAS,EAAE;QACnCT,QAAQ,CAACQ,OAAO,GAAGd,WAAW,CAACc,OAAO;MAC1C;MAEA,IAAIE,KAAK,CAACC,OAAO,CAACjB,WAAW,CAACkB,IAAI,CAAC,EAAE;QACjCZ,QAAQ,CAACY,IAAI,GAAGlB,WAAW,CAACkB,IAAI;QAChC,IAAI,CAACZ,QAAQ,CAACK,EAAE,EAAEL,QAAQ,CAACK,EAAE,GAAG,CAAC,CAAC;QAClCL,QAAQ,CAACK,EAAE,CAACQ,MAAM,GAAG,UAAU;MACnC;;MAEA;MACA,IAAI,CAACC,kBAAkB,CAACd,QAAQ,EAAEN,WAAW,EAAEhB,WAAW,EAAEC,OAAO,EAAEC,KAAK,CAAC;MAC3E,IAAI,CAACmC,iBAAiB,CAACf,QAAQ,EAAEN,WAAW,EAAEhB,WAAW,EAAEC,OAAO,EAAEC,KAAK,EAAEkB,IAAI,CAAC;MAEhF,OAAOE,QAAQ;IACnB;;IAEA;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACI,OAAeJ,iBAAiBA,CAC5BF,WAAoB,EACpBD,OAAe,EACfR,UAAmB,EACnBP,WAAoB,EACpBC,OAAsB,EACtBC,KAAa,EACW;MACxB,IAAI,CAACc,WAAW,CAACN,IAAI,EAAE;QACnB,OAAO,IAAI;MACf;MAEA,MAAMC,QAAQ,GAAGrB,kBAAkB,CAACsB,OAAO,CAACI,WAAW,CAACN,IAAI,EAAEV,WAAW,CAAC;MAC1E,MAAMsC,YAAY,GAAGtB,WAAW,CAACI,IAAI,IAAKT,QAAQ,IAAIA,QAAQ,CAACS,IAAK;MAEpE,IAAIkB,YAAY,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC9B,QAAQ,CAAC8B,YAAY,CAAC,EAAE;QACnF,MAAMC,UAAU,GAAG;UAAE,GAAG5B,QAAQ;UAAE,GAAGK;QAAY,CAAC;QAClD,OAAOuB,UAAU,CAAC7B,IAAI;QACtB,OAAO,IAAI,CAACG,mBAAmB,CAAC0B,UAAU,EAAExB,OAAO,EAAER,UAAU,EAAEP,WAAW,EAAEC,OAAO,EAAEC,KAAK,GAAG,CAAC,CAAC;MACrG;MAEA,OAAO;QACHkB,IAAI,EAAE,QAAQ;QACdV,IAAI,EAAEM,WAAW,CAACN,IAAI;QACtBa,QAAQ,EAAEhB,UAAU;QACpBoB,EAAE,EAAE;UAAEQ,MAAM,EAAE;QAAY;MAC9B,CAAC;IACL;;IAEA;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;IACI,OAAehB,aAAaA,CAACH,WAAoB,EAAEhB,WAAoB,EAAW;MAC9E,IAAI,CAACgC,KAAK,CAACC,OAAO,CAACjB,WAAW,CAACwB,KAAK,CAAC,EAAE;QACnC,OAAOxB,WAAW;MACtB;MAEA,IAAIyB,MAAM,GAAG;QAAE,GAAGzB;MAAY,CAAC;MAC/B,OAAOyB,MAAM,CAACD,KAAK;MACnB,KAAK,MAAME,SAAS,IAAI1B,WAAW,CAACwB,KAAK,EAAE;QACvC,IAAIG,WAAW,GAAGD,SAAS;QAC3B,IAAIA,SAAS,CAAChC,IAAI,EAAE;UAChBiC,WAAW,GAAGrD,kBAAkB,CAACsB,OAAO,CAAC8B,SAAS,CAAChC,IAAI,EAAEV,WAAW,CAAC,IAAI,CAAC,CAAC;QAC/E;QACAyC,MAAM,GAAG,IAAI,CAACG,gBAAgB,CAACH,MAAM,EAAEE,WAAW,CAAC;MACvD;MACA,OAAOF,MAAM;IACjB;;IAEA;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;IACI,OAAeb,iBAAiBA,CAACN,QAA2B,EAAEN,WAAoB,EAAEf,OAAsB,EAAQ;MAC9G;MACA,IAAI,OAAOe,WAAW,CAAC6B,SAAS,KAAK,QAAQ,EAAEvB,QAAQ,CAACuB,SAAS,GAAG7B,WAAW,CAAC6B,SAAS;MACzF,IAAI,OAAO7B,WAAW,CAAC8B,SAAS,KAAK,QAAQ,EAAExB,QAAQ,CAACwB,SAAS,GAAG9B,WAAW,CAAC8B,SAAS;MACzF,IAAI,OAAO9B,WAAW,CAAC+B,OAAO,KAAK,QAAQ,EAAEzB,QAAQ,CAACyB,OAAO,GAAG/B,WAAW,CAAC+B,OAAO;;MAEnF;MACA,IAAI,OAAO/B,WAAW,CAACgC,OAAO,KAAK,QAAQ,EAAE1B,QAAQ,CAAC0B,OAAO,GAAGhC,WAAW,CAACgC,OAAO;MACnF,IAAI,OAAOhC,WAAW,CAACiC,OAAO,KAAK,QAAQ,EAAE3B,QAAQ,CAAC2B,OAAO,GAAGjC,WAAW,CAACiC,OAAO;MACnF,IAAI,OAAOjC,WAAW,CAACkC,UAAU,KAAK,QAAQ,EAAE5B,QAAQ,CAAC4B,UAAU,GAAGlC,WAAW,CAACkC,UAAU;;MAE5F;MACA,IAAI,OAAOlC,WAAW,CAACmC,QAAQ,KAAK,QAAQ,EAAE7B,QAAQ,CAAC6B,QAAQ,GAAGnC,WAAW,CAACmC,QAAQ;MACtF,IAAI,OAAOnC,WAAW,CAACoC,QAAQ,KAAK,QAAQ,EAAE9B,QAAQ,CAAC8B,QAAQ,GAAGpC,WAAW,CAACoC,QAAQ;MACtF,IAAI,OAAOpC,WAAW,CAACqC,WAAW,KAAK,SAAS,EAAE/B,QAAQ,CAAC+B,WAAW,GAAGrC,WAAW,CAACqC,WAAW;;MAEhG;MACA,IAAI,OAAOrC,WAAW,CAACsC,aAAa,KAAK,QAAQ,EAAEhC,QAAQ,CAACgC,aAAa,GAAGtC,WAAW,CAACsC,aAAa;MACrG,IAAI,OAAOtC,WAAW,CAACuC,aAAa,KAAK,QAAQ,EAAEjC,QAAQ,CAACiC,aAAa,GAAGvC,WAAW,CAACuC,aAAa;;MAErG;MACA,IAAItD,OAAO,KAAK,KAAK,EAAE;QACnB,IAAIe,WAAW,CAACwC,gBAAgB,KAAK,IAAI,IAAI,OAAOxC,WAAW,CAACgC,OAAO,KAAK,QAAQ,EAAE;UAClF1B,QAAQ,CAACkC,gBAAgB,GAAG,IAAI;QACpC;QACA,IAAIxC,WAAW,CAACyC,gBAAgB,KAAK,IAAI,IAAI,OAAOzC,WAAW,CAACiC,OAAO,KAAK,QAAQ,EAAE;UAClF3B,QAAQ,CAACmC,gBAAgB,GAAG,IAAI;QACpC;MACJ,CAAC,MAAM,IAAIxD,OAAO,KAAK,KAAK,EAAE;QAC1B,IAAI,OAAOe,WAAW,CAACwC,gBAAgB,KAAK,QAAQ,IAAI,OAAOxC,WAAW,CAACwC,gBAAgB,KAAK,SAAS,EAAE;UACvGlC,QAAQ,CAACkC,gBAAgB,GAAGxC,WAAW,CAACwC,gBAAgB;QAC5D;QACA,IAAI,OAAOxC,WAAW,CAACyC,gBAAgB,KAAK,QAAQ,IAAI,OAAOzC,WAAW,CAACyC,gBAAgB,KAAK,SAAS,EAAE;UACvGnC,QAAQ,CAACmC,gBAAgB,GAAGzC,WAAW,CAACyC,gBAAgB;QAC5D;MACJ;IACJ;;IAEA;AACJ;AACA;AACA;AACA;AACA;AACA;IACI,OAAe5B,oBAAoBA,CAACP,QAA2B,EAAEN,WAAoB,EAAQ;MACzF,IAAIA,WAAW,CAAC0C,QAAQ,KAAK,IAAI,EAAEpC,QAAQ,CAACoC,QAAQ,GAAG,IAAI;MAC3D,IAAI1C,WAAW,CAAC2C,SAAS,KAAK,IAAI,EAAErC,QAAQ,CAACqC,SAAS,GAAG,IAAI;MAC7D,IAAI3C,WAAW,CAAC4C,QAAQ,KAAK,IAAI,EAAEtC,QAAQ,CAACsC,QAAQ,GAAG,IAAI;MAC3D,IAAI5C,WAAW,CAAC6C,UAAU,KAAK,IAAI,EAAEvC,QAAQ,CAACuC,UAAU,GAAG,IAAI;IACnE;;IAEA;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACI,OAAezB,kBAAkBA,CAC7Bd,QAA2B,EAC3BN,WAAoB,EACpBhB,WAAoB,EACpBC,OAAsB,EACtBC,KAAa,EACT;MACJ;MACA,IAAIc,WAAW,CAAC8C,aAAa,EAAE;QAC3B,IAAI7D,OAAO,KAAK,KAAK,IAAI,OAAOe,WAAW,CAAC8C,aAAa,KAAK,QAAQ,EAAE;UACpExC,QAAQ,CAACwC,aAAa,GAAG;YAAEC,YAAY,EAAE/C,WAAW,CAAC8C;UAAc,CAAC;QACxE,CAAC,MAAM,IAAI7D,OAAO,KAAK,KAAK,IAAI,OAAOe,WAAW,CAAC8C,aAAa,KAAK,QAAQ,EAAE;UAC3ExC,QAAQ,CAACwC,aAAa,GAAG;YACrBC,YAAY,EAAE/C,WAAW,CAAC8C,aAAa,CAACC,YAAY;YACpDC,OAAO,EAAEhD,WAAW,CAAC8C,aAAa,CAACE;UACvC,CAAC;QACL;MACJ;;MAEA;MACA,IAAIhC,KAAK,CAACC,OAAO,CAACjB,WAAW,CAACiD,KAAK,CAAC,EAAE;QAClC3C,QAAQ,CAAC2C,KAAK,GAAG,EAAE;QACnB,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGlD,WAAW,CAACiD,KAAK,CAACvC,MAAM,EAAEwC,CAAC,EAAE,EAAE;UAC/C5C,QAAQ,CAAC2C,KAAK,CAACE,IAAI,CAAC,IAAI,CAACtD,mBAAmB,CAACG,WAAW,CAACiD,KAAK,CAACC,CAAC,CAAC,EAAE,UAAUA,CAAC,EAAE,EAAE,KAAK,EAAElE,WAAW,EAAEC,OAAO,EAAEC,KAAK,GAAG,CAAC,CAAC,CAAC;QAC9H;QACA,IAAI,CAACoB,QAAQ,CAACK,EAAE,EAAEL,QAAQ,CAACK,EAAE,GAAG,CAAC,CAAC;QAClCL,QAAQ,CAACK,EAAE,CAACQ,MAAM,GAAG,aAAa;MACtC;;MAEA;MACA,IAAIH,KAAK,CAACC,OAAO,CAACjB,WAAW,CAACoD,KAAK,CAAC,EAAE;QAClC9C,QAAQ,CAAC8C,KAAK,GAAG,EAAE;QACnB,KAAK,IAAIF,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGlD,WAAW,CAACoD,KAAK,CAAC1C,MAAM,EAAEwC,CAAC,EAAE,EAAE;UAC/C5C,QAAQ,CAAC8C,KAAK,CAACD,IAAI,CAAC,IAAI,CAACtD,mBAAmB,CAACG,WAAW,CAACoD,KAAK,CAACF,CAAC,CAAC,EAAE,aAAaA,CAAC,EAAE,EAAE,KAAK,EAAElE,WAAW,EAAEC,OAAO,EAAEC,KAAK,GAAG,CAAC,CAAC,CAAC;QACjI;MACJ;;MAEA;MACA,IAAIc,WAAW,CAACqD,GAAG,EAAE;QACjB/C,QAAQ,CAAC+C,GAAG,GAAG,IAAI,CAACxD,mBAAmB,CAACG,WAAW,CAACqD,GAAG,EAAE,YAAY,EAAE,KAAK,EAAErE,WAAW,EAAEC,OAAO,EAAEC,KAAK,GAAG,CAAC,CAAC;MAClH;IACJ;;IAEA;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACI,OAAemC,iBAAiBA,CAC5Bf,QAA2B,EAC3BN,WAAoB,EACpBhB,WAAoB,EACpBC,OAAsB,EACtBC,KAAa,EACbkB,IAAY,EACR;MACJ,IAAIA,IAAI,KAAK,QAAQ,EAAE;QACnB,IAAIJ,WAAW,CAAClB,UAAU,EAAE;UACxB,MAAMwE,aAAa,GAAGtC,KAAK,CAACC,OAAO,CAACjB,WAAW,CAACO,QAAQ,CAAC,GAAGP,WAAW,CAACO,QAAQ,GAAG,EAAE;UACrFD,QAAQ,CAACxB,UAAU,GAAG,IAAI,CAACD,aAAa,CAACmB,WAAW,CAAClB,UAAU,EAAEwE,aAAa,EAAEtE,WAAW,EAAEC,OAAO,EAAEC,KAAK,GAAG,CAAC,CAAC;QACpH;QAEA,IAAIc,WAAW,CAACuD,oBAAoB,EAAE;UAClC,IAAIvD,WAAW,CAACuD,oBAAoB,KAAK,IAAI,EAAE;YAC3CjD,QAAQ,CAACiD,oBAAoB,GAAG,IAAI;UACxC,CAAC,MAAM,IAAI,OAAOvD,WAAW,CAACuD,oBAAoB,KAAK,QAAQ,EAAE;YAC7DjD,QAAQ,CAACiD,oBAAoB,GAAG,IAAI,CAAC1D,mBAAmB,CAACG,WAAW,CAACuD,oBAAoB,EAAE,OAAO,EAAE,KAAK,EAAEvE,WAAW,EAAEC,OAAO,EAAEC,KAAK,GAAG,CAAC,CAAC;YAC3I,IAAI,CAACoB,QAAQ,CAACK,EAAE,EAAEL,QAAQ,CAACK,EAAE,GAAG,CAAC,CAAC;YAClCL,QAAQ,CAACK,EAAE,CAACQ,MAAM,GAAG,YAAY;UACrC;QACJ;;QAEA;QACA,IAAI,CAACnB,WAAW,CAAClB,UAAU,IAAI,CAACkB,WAAW,CAACuD,oBAAoB,EAAE;UAC9D,IAAI,CAACjD,QAAQ,CAACK,EAAE,EAAEL,QAAQ,CAACK,EAAE,GAAG,CAAC,CAAC;UAClCL,QAAQ,CAACK,EAAE,CAACQ,MAAM,GAAG,YAAY;QACrC;MACJ,CAAC,MAAM,IAAIf,IAAI,KAAK,OAAO,IAAIJ,WAAW,CAACwD,KAAK,EAAE;QAC9ClD,QAAQ,CAACkD,KAAK,GAAG,IAAI,CAAC3D,mBAAmB,CAACG,WAAW,CAACwD,KAAK,EAAE,OAAO,EAAE,KAAK,EAAExE,WAAW,EAAEC,OAAO,EAAEC,KAAK,GAAG,CAAC,CAAC;QAC7G,IAAIoB,QAAQ,CAACkD,KAAK,CAACpD,IAAI,KAAK,QAAQ,EAAE;UAClC,IAAI,CAACE,QAAQ,CAACK,EAAE,EAAEL,QAAQ,CAACK,EAAE,GAAG,CAAC,CAAC;UAClCL,QAAQ,CAACK,EAAE,CAACQ,MAAM,GAAG,YAAY;QACrC;MACJ;IACJ;;IAEA;AACJ;AACA;AACA;AACA;AACA;AACA;IACI,OAAcS,gBAAgBA,CAAC6B,MAAe,EAAEC,MAAe,EAAW;MACtE,MAAMC,MAAM,GAAGtE,MAAM,CAACuE,MAAM,CAAC,CAAC,CAAC,EAAEH,MAAM,CAAC;MACxC,IAAIC,MAAM,KAAK,IAAI,IAAI,OAAOA,MAAM,KAAK,QAAQ,EAAE,OAAOC,MAAM;MAEhEtE,MAAM,CAACC,IAAI,CAACoE,MAAM,CAAC,CAACG,OAAO,CAACzE,GAAG,IAAI;QAC/B,IAAI4B,KAAK,CAACC,OAAO,CAACyC,MAAM,CAACtE,GAAG,CAAC,CAAC,EAAE;UAC5BuE,MAAM,CAACvE,GAAG,CAAC,GAAG4B,KAAK,CAACC,OAAO,CAACwC,MAAM,CAACrE,GAAG,CAAC,CAAC,GAClC4B,KAAK,CAAC8C,IAAI,CAAC,IAAIC,GAAG,CAAC,CAAC,GAAGN,MAAM,CAACrE,GAAG,CAAC,EAAE,GAAGsE,MAAM,CAACtE,GAAG,CAAC,CAAC,CAAC,CAAC,GACrD,CAAC,GAAGsE,MAAM,CAACtE,GAAG,CAAC,CAAC;QAC1B,CAAC,MAAM,IAAI,OAAOsE,MAAM,CAACtE,GAAG,CAAC,KAAK,QAAQ,IAAIsE,MAAM,CAACtE,GAAG,CAAC,KAAK,IAAI,EAAE;UAChE,IAAIqE,MAAM,CAACrE,GAAG,CAAC,IAAI,OAAOqE,MAAM,CAACrE,GAAG,CAAC,KAAK,QAAQ,EAAE;YAChDuE,MAAM,CAACvE,GAAG,CAAC,GAAG,IAAI,CAACwC,gBAAgB,CAAC6B,MAAM,CAACrE,GAAG,CAAC,EAAEsE,MAAM,CAACtE,GAAG,CAAC,CAAC;UACjE,CAAC,MAAM;YACHuE,MAAM,CAACvE,GAAG,CAAC,GAAGC,MAAM,CAACuE,MAAM,CAAC,CAAC,CAAC,EAAEF,MAAM,CAACtE,GAAG,CAAC,CAAC;UAChD;QACJ,CAAC,MAAM;UACHuE,MAAM,CAACvE,GAAG,CAAC,GAAGsE,MAAM,CAACtE,GAAG,CAAC;QAC7B;MACJ,CAAC,CAAC;MACF,OAAOuE,MAAM;IACjB;EACJ;EAAC,IAAAK,SAAA;IAAAC,UAAA;EAAA;EAAAD,SAAA,CAAApF,qBAAA,GAAAA,qBAAA;EAAA,OAAAoF,SAAA;AAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"OpenApiPropertyMapper-dbg.js","names":["OpenApiRefResolver","___OpenApiRefResolver","OpenApiTypeMapper","___OpenApiTypeMapper","OpenApiUIMapper","___OpenApiUIMapper","OpenApiPropertyMapper","mapProperties","properties","requiredKeys","openApiRoot","version","depth","normalizedProps","props","key","Object","keys","isRequired","includes","propDef","$ref","resolved","resolve","mapPropertyMetadata","swaggerProp","keyName","currentProp","refResult","_resolveReference","_resolveAllOf","type","mapType","metaProp","required","uiDirective","build","length","ui","_applyConstraints","_applyStateModifiers","default","undefined","Array","isArray","enum","widget","_applyPolymorphism","_applyNestedTypes","resolvedType","inlineProp","allOf","merged","subSchema","resolvedSub","deepMergeSchemas","maxLength","minLength","pattern","maximum","minimum","multipleOf","maxItems","minItems","uniqueItems","maxProperties","minProperties","exclusiveMaximum","exclusiveMinimum","readOnly","writeOnly","nullable","deprecated","discriminator","propertyName","disc","mapping","oneOf","i","push","anyOf","not","childRequired","additionalProperties","items","target","source","outTarget","output","assign","srcObj","forEach","from","Set","__exports","__esModule"],"sources":["OpenApiPropertyMapper.ts"],"sourcesContent":["/**\n * @file OpenApiPropertyMapper.ts\n * @description Extracts and maps OpenAPI properties into MetaUI IPropertyMetadata.\n */\n\nimport { IPropertyMetadata } from \"../../interfaces/ISchema\";\nimport { OpenApiRefResolver } from \"../OpenApiRefResolver\";\nimport { OpenApiTypeMapper } from \"../OpenApiTypeMapper\";\nimport { OpenApiUIMapper } from \"../OpenApiUIMapper\";\nimport { FieldType } from \"../../interfaces/ISchema\";\n\n/**\n * Utility class responsible for extracting and mapping OpenAPI properties into the native MetaUI IPropertyMetadata schema format.\n * \n * @public\n */\nexport class OpenApiPropertyMapper {\n /**\n * Recursively traverses and translates an OpenAPI properties block into a MetaUI IPropertyMetadata dictionary.\n * \n * @param {unknown} properties The OpenAPI properties block.\n * @param {string[]} requiredKeys Array of required property keys.\n * @param {unknown} openApiRoot The OpenAPI root document for resolving references.\n * @param {\"2.0\" | \"3.0\"} version The OpenAPI version.\n * @param {number} [depth=0] Recursion depth limiter to prevent stack overflows on circular refs.\n * @returns {Record<string, IPropertyMetadata>} The normalized MetaUI properties mapping.\n */\n public static mapProperties(\n properties: unknown, \n requiredKeys: string[], \n openApiRoot: unknown, \n version: \"2.0\" | \"3.0\", \n depth: number = 0\n ): Record<string, IPropertyMetadata> {\n const normalizedProps: Record<string, IPropertyMetadata> = {};\n \n if (depth > 8) return normalizedProps;\n const props = (properties || {}) as Record<string, unknown>;\n\n for (const key of Object.keys(props)) {\n const isRequired = requiredKeys.includes(key);\n let propDef = props[key] as Record<string, unknown>;\n\n if (propDef.$ref) {\n const resolved = OpenApiRefResolver.resolve(propDef.$ref as string, openApiRoot) as Record<string, unknown>;\n if (resolved) {\n propDef = { ...resolved, ...propDef };\n }\n }\n\n normalizedProps[key] = this.mapPropertyMetadata(propDef, key, isRequired, openApiRoot, version, depth + 1);\n }\n \n return normalizedProps;\n }\n\n /**\n * Translates a single OpenAPI property schema block into a MetaUI IPropertyMetadata block.\n * Delegates specific mapping tasks to focused private methods to adhere to SRP.\n * \n * @param {unknown} swaggerProp The specific OpenAPI property schema to map.\n * @param {string} keyName The key/name of this property.\n * @param {boolean} isRequired Whether this property is strictly required.\n * @param {unknown} openApiRoot The OpenAPI root document for resolving references.\n * @param {\"2.0\" | \"3.0\"} version The OpenAPI version.\n * @param {number} [depth=0] Recursion depth limiter.\n * @returns {IPropertyMetadata} The normalized MetaUI property metadata.\n */\n public static mapPropertyMetadata(\n swaggerProp: unknown, \n keyName: string, \n isRequired: boolean, \n openApiRoot: unknown, \n version: \"2.0\" | \"3.0\", \n depth: number = 0\n ): IPropertyMetadata {\n let currentProp = swaggerProp as Record<string, unknown>;\n\n // 1. Resolve References\n const refResult = this._resolveReference(currentProp, keyName, isRequired, openApiRoot, version, depth);\n if (refResult) {\n return refResult;\n }\n\n // 2. Resolve Composition (allOf)\n currentProp = this._resolveAllOf(currentProp, openApiRoot) as Record<string, unknown>;\n\n // 3. Base Initialization\n const type = OpenApiTypeMapper.mapType(currentProp.type as string);\n const metaProp: IPropertyMetadata = {\n type: type,\n required: isRequired\n };\n\n // 4. UI Directive Binding\n const uiDirective = OpenApiUIMapper.build(currentProp, keyName);\n if (Object.keys(uiDirective).length > 0) {\n metaProp.ui = uiDirective;\n }\n\n // 5. Constraints & State Modifiers\n this._applyConstraints(metaProp, currentProp, version);\n this._applyStateModifiers(metaProp, currentProp);\n\n if (currentProp.default !== undefined) {\n metaProp.default = currentProp.default;\n }\n\n if (Array.isArray(currentProp.enum)) {\n metaProp.enum = currentProp.enum;\n if (!metaProp.ui) metaProp.ui = {};\n metaProp.ui.widget = \"dropdown\";\n }\n\n // 6. Polymorphism & Nesting\n this._applyPolymorphism(metaProp, currentProp, openApiRoot, version, depth);\n this._applyNestedTypes(metaProp, currentProp, openApiRoot, version, depth, type);\n\n return metaProp;\n }\n\n private static _resolveReference(\n currentProp: Record<string, unknown>, \n keyName: string, \n isRequired: boolean, \n openApiRoot: unknown, \n version: \"2.0\" | \"3.0\", \n depth: number\n ): IPropertyMetadata | null {\n if (!currentProp.$ref) {\n return null;\n }\n\n const resolved = OpenApiRefResolver.resolve(currentProp.$ref as string, openApiRoot) as Record<string, unknown>;\n const resolvedType = currentProp.type || (resolved && resolved.type);\n \n if (resolvedType && [\"string\", \"number\", \"integer\", \"boolean\"].includes(resolvedType as string)) {\n const inlineProp = { ...resolved, ...currentProp };\n delete inlineProp.$ref;\n return this.mapPropertyMetadata(inlineProp, keyName, isRequired, openApiRoot, version, depth + 1);\n }\n\n return {\n type: \"object\",\n $ref: currentProp.$ref as string,\n required: isRequired,\n ui: { widget: \"reference\" }\n };\n }\n\n private static _resolveAllOf(currentProp: Record<string, unknown>, openApiRoot: unknown): unknown {\n if (!Array.isArray(currentProp.allOf)) {\n return currentProp;\n }\n \n let merged = { ...currentProp };\n delete merged.allOf;\n for (const subSchema of currentProp.allOf) {\n let resolvedSub = subSchema as Record<string, unknown>;\n if (subSchema.$ref) {\n resolvedSub = (OpenApiRefResolver.resolve(subSchema.$ref as string, openApiRoot) as Record<string, unknown>) || {};\n }\n merged = this.deepMergeSchemas(merged, resolvedSub) as Record<string, unknown>;\n }\n return merged;\n }\n\n private static _applyConstraints(metaProp: IPropertyMetadata, currentProp: Record<string, unknown>, version: \"2.0\" | \"3.0\"): void {\n // String Constraints\n if (typeof currentProp.maxLength === \"number\") metaProp.maxLength = currentProp.maxLength;\n if (typeof currentProp.minLength === \"number\") metaProp.minLength = currentProp.minLength;\n if (typeof currentProp.pattern === \"string\") metaProp.pattern = currentProp.pattern;\n\n // Numeric Constraints\n if (typeof currentProp.maximum === \"number\") metaProp.maximum = currentProp.maximum;\n if (typeof currentProp.minimum === \"number\") metaProp.minimum = currentProp.minimum;\n if (typeof currentProp.multipleOf === \"number\") metaProp.multipleOf = currentProp.multipleOf;\n \n // Array Constraints\n if (typeof currentProp.maxItems === \"number\") metaProp.maxItems = currentProp.maxItems;\n if (typeof currentProp.minItems === \"number\") metaProp.minItems = currentProp.minItems;\n if (typeof currentProp.uniqueItems === \"boolean\") metaProp.uniqueItems = currentProp.uniqueItems;\n\n // Object Constraints\n if (typeof currentProp.maxProperties === \"number\") metaProp.maxProperties = currentProp.maxProperties;\n if (typeof currentProp.minProperties === \"number\") metaProp.minProperties = currentProp.minProperties;\n\n // Exclusive Min/Max version-specific logic\n if (version === \"2.0\") {\n if (currentProp.exclusiveMaximum === true && typeof currentProp.maximum === \"number\") {\n metaProp.exclusiveMaximum = true;\n }\n if (currentProp.exclusiveMinimum === true && typeof currentProp.minimum === \"number\") {\n metaProp.exclusiveMinimum = true;\n }\n } else if (version === \"3.0\") {\n if (typeof currentProp.exclusiveMaximum === \"number\" || typeof currentProp.exclusiveMaximum === \"boolean\") {\n metaProp.exclusiveMaximum = currentProp.exclusiveMaximum as boolean;\n }\n if (typeof currentProp.exclusiveMinimum === \"number\" || typeof currentProp.exclusiveMinimum === \"boolean\") {\n metaProp.exclusiveMinimum = currentProp.exclusiveMinimum as boolean;\n }\n }\n }\n\n private static _applyStateModifiers(metaProp: IPropertyMetadata, currentProp: Record<string, unknown>): void {\n if (currentProp.readOnly === true) metaProp.readOnly = true;\n if (currentProp.writeOnly === true) metaProp.writeOnly = true;\n if (currentProp.nullable === true) metaProp.nullable = true;\n if (currentProp.deprecated === true) metaProp.deprecated = true;\n }\n\n private static _applyPolymorphism(\n metaProp: IPropertyMetadata, \n currentProp: Record<string, unknown>, \n openApiRoot: unknown, \n version: \"2.0\" | \"3.0\", \n depth: number\n ): void {\n if (currentProp.discriminator) {\n if (version === \"2.0\" && typeof currentProp.discriminator === \"string\") {\n metaProp.discriminator = { propertyName: currentProp.discriminator };\n } else if (version === \"3.0\" && typeof currentProp.discriminator === \"object\") {\n const disc = currentProp.discriminator as Record<string, unknown>;\n metaProp.discriminator = {\n propertyName: disc.propertyName as string,\n mapping: disc.mapping as Record<string, string>\n };\n }\n }\n\n if (Array.isArray(currentProp.oneOf)) {\n metaProp.oneOf = [];\n for (let i = 0; i < currentProp.oneOf.length; i++) {\n metaProp.oneOf.push(this.mapPropertyMetadata(currentProp.oneOf[i], `Variant${i}`, false, openApiRoot, version, depth + 1));\n }\n if (!metaProp.ui) metaProp.ui = {};\n metaProp.ui.widget = \"polymorphic\";\n }\n \n if (Array.isArray(currentProp.anyOf)) {\n metaProp.anyOf = [];\n for (let i = 0; i < currentProp.anyOf.length; i++) {\n metaProp.anyOf.push(this.mapPropertyMetadata(currentProp.anyOf[i], `AnyVariant${i}`, false, openApiRoot, version, depth + 1));\n }\n }\n\n if (currentProp.not) {\n metaProp.not = this.mapPropertyMetadata(currentProp.not, `NotVariant`, false, openApiRoot, version, depth + 1);\n }\n }\n\n private static _applyNestedTypes(\n metaProp: IPropertyMetadata, \n currentProp: Record<string, unknown>, \n openApiRoot: unknown, \n version: \"2.0\" | \"3.0\", \n depth: number,\n type: string\n ): void {\n if (type === \"object\") {\n if (currentProp.properties) {\n const childRequired = Array.isArray(currentProp.required) ? currentProp.required : [];\n metaProp.properties = this.mapProperties(currentProp.properties, childRequired, openApiRoot, version, depth + 1);\n }\n \n if (currentProp.additionalProperties) {\n if (currentProp.additionalProperties === true) {\n metaProp.additionalProperties = true;\n } else if (typeof currentProp.additionalProperties === \"object\") {\n metaProp.additionalProperties = this.mapPropertyMetadata(currentProp.additionalProperties, \"value\", false, openApiRoot, version, depth + 1);\n if (!metaProp.ui) metaProp.ui = {};\n metaProp.ui.widget = \"dictionary\";\n }\n }\n \n if (!currentProp.properties && !currentProp.additionalProperties) {\n if (!metaProp.ui) metaProp.ui = {};\n metaProp.ui.widget = \"codeEditor\";\n }\n } else if (type === \"array\" && currentProp.items) {\n metaProp.items = this.mapPropertyMetadata(currentProp.items, \"items\", false, openApiRoot, version, depth + 1);\n if (metaProp.items.type !== \"object\") {\n if (!metaProp.ui) metaProp.ui = {};\n metaProp.ui.widget = \"multiInput\";\n }\n }\n }\n\n public static deepMergeSchemas(target: unknown, source: unknown): unknown {\n const outTarget = (target || {}) as Record<string, unknown>;\n const output: Record<string, unknown> = Object.assign({}, outTarget);\n if (source === null || typeof source !== \"object\") return output;\n \n const srcObj = source as Record<string, unknown>;\n\n Object.keys(srcObj).forEach(key => {\n if (Array.isArray(srcObj[key])) {\n output[key] = Array.isArray(outTarget[key]) \n ? Array.from(new Set([...(outTarget[key] as unknown[]), ...(srcObj[key] as unknown[])])) \n : [...(srcObj[key] as unknown[])];\n } else if (typeof srcObj[key] === \"object\" && srcObj[key] !== null) {\n if (outTarget[key] && typeof outTarget[key] === \"object\") {\n output[key] = this.deepMergeSchemas(outTarget[key], srcObj[key]);\n } else {\n output[key] = Object.assign({}, srcObj[key]);\n }\n } else {\n output[key] = srcObj[key];\n }\n });\n return output;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
declare module "nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApiPropertyMapper" {
|
|
2
2
|
/**
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
* @file OpenApiPropertyMapper.ts
|
|
4
|
+
* @description Extracts and maps OpenAPI properties into MetaUI IPropertyMetadata.
|
|
5
|
+
*/
|
|
6
6
|
import { IPropertyMetadata } from "nz/co/siliconst/ui5/metaui/interfaces/ISchema";
|
|
7
7
|
/**
|
|
8
8
|
* Utility class responsible for extracting and mapping OpenAPI properties into the native MetaUI IPropertyMetadata schema format.
|
|
@@ -13,97 +13,33 @@ declare module "nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApiPropertyMapper
|
|
|
13
13
|
/**
|
|
14
14
|
* Recursively traverses and translates an OpenAPI properties block into a MetaUI IPropertyMetadata dictionary.
|
|
15
15
|
*
|
|
16
|
-
* @param {
|
|
16
|
+
* @param {unknown} properties The OpenAPI properties block.
|
|
17
17
|
* @param {string[]} requiredKeys Array of required property keys.
|
|
18
|
-
* @param {
|
|
18
|
+
* @param {unknown} openApiRoot The OpenAPI root document for resolving references.
|
|
19
19
|
* @param {"2.0" | "3.0"} version The OpenAPI version.
|
|
20
20
|
* @param {number} [depth=0] Recursion depth limiter to prevent stack overflows on circular refs.
|
|
21
21
|
* @returns {Record<string, IPropertyMetadata>} The normalized MetaUI properties mapping.
|
|
22
22
|
*/
|
|
23
|
-
static mapProperties(properties:
|
|
23
|
+
static mapProperties(properties: unknown, requiredKeys: string[], openApiRoot: unknown, version: "2.0" | "3.0", depth?: number): Record<string, IPropertyMetadata>;
|
|
24
24
|
/**
|
|
25
25
|
* Translates a single OpenAPI property schema block into a MetaUI IPropertyMetadata block.
|
|
26
26
|
* Delegates specific mapping tasks to focused private methods to adhere to SRP.
|
|
27
27
|
*
|
|
28
|
-
* @param {
|
|
28
|
+
* @param {unknown} swaggerProp The specific OpenAPI property schema to map.
|
|
29
29
|
* @param {string} keyName The key/name of this property.
|
|
30
30
|
* @param {boolean} isRequired Whether this property is strictly required.
|
|
31
|
-
* @param {
|
|
31
|
+
* @param {unknown} openApiRoot The OpenAPI root document for resolving references.
|
|
32
32
|
* @param {"2.0" | "3.0"} version The OpenAPI version.
|
|
33
33
|
* @param {number} [depth=0] Recursion depth limiter.
|
|
34
34
|
* @returns {IPropertyMetadata} The normalized MetaUI property metadata.
|
|
35
35
|
*/
|
|
36
36
|
static mapPropertyMetadata(swaggerProp: unknown, keyName: string, isRequired: boolean, openApiRoot: unknown, version: "2.0" | "3.0", depth?: number): IPropertyMetadata;
|
|
37
|
-
/**
|
|
38
|
-
* Attempts to resolve a $ref block. If it resolves to a primitive, it inlines it.
|
|
39
|
-
* Otherwise, it returns a reference widget payload.
|
|
40
|
-
*
|
|
41
|
-
* @param {any} currentProp The current schema property definition.
|
|
42
|
-
* @param {string} keyName The structural key name.
|
|
43
|
-
* @param {boolean} isRequired Whether the property is strictly required.
|
|
44
|
-
* @param {any} openApiRoot The root API definition for relative resolution.
|
|
45
|
-
* @param {"2.0" | "3.0"} version The structural version context.
|
|
46
|
-
* @param {number} depth The recursive resolution depth.
|
|
47
|
-
* @returns {IPropertyMetadata | null} Resolved metadata, or null if no reference exists.
|
|
48
|
-
* @private
|
|
49
|
-
*/
|
|
50
37
|
private static _resolveReference;
|
|
51
|
-
/**
|
|
52
|
-
* Evaluates and merges 'allOf' arrays into a unified schema definition.
|
|
53
|
-
*
|
|
54
|
-
* @param {any} currentProp The structural property definition containing potential aggregations.
|
|
55
|
-
* @param {any} openApiRoot The base schema for deep resolution.
|
|
56
|
-
* @returns {any} A flattened and merged schema entity.
|
|
57
|
-
* @private
|
|
58
|
-
*/
|
|
59
38
|
private static _resolveAllOf;
|
|
60
|
-
/**
|
|
61
|
-
* Extracts structural constraints (min/max, regex, etc.) and maps them natively to the output metadata.
|
|
62
|
-
*
|
|
63
|
-
* @param {IPropertyMetadata} metaProp The target metadata definition block.
|
|
64
|
-
* @param {any} currentProp The source OpenAPI schema chunk.
|
|
65
|
-
* @param {"2.0" | "3.0"} version The version, utilized for nuanced boundary matching.
|
|
66
|
-
* @private
|
|
67
|
-
*/
|
|
68
39
|
private static _applyConstraints;
|
|
69
|
-
/**
|
|
70
|
-
* Extracts operational state flags like readOnly or nullable mapping them onto the internal specification.
|
|
71
|
-
*
|
|
72
|
-
* @param {IPropertyMetadata} metaProp Target native specification.
|
|
73
|
-
* @param {any} currentProp Source raw schema payload.
|
|
74
|
-
* @private
|
|
75
|
-
*/
|
|
76
40
|
private static _applyStateModifiers;
|
|
77
|
-
/**
|
|
78
|
-
* Extracts and maps polymorphic discriminator and union types (oneOf/anyOf) to MetaUI structural directives.
|
|
79
|
-
*
|
|
80
|
-
* @param {IPropertyMetadata} metaProp Native MetaUI definition tree.
|
|
81
|
-
* @param {any} currentProp Raw schema block.
|
|
82
|
-
* @param {any} openApiRoot Master OpenAPI root.
|
|
83
|
-
* @param {"2.0" | "3.0"} version Protocol version identifier.
|
|
84
|
-
* @param {number} depth Internal depth tracker.
|
|
85
|
-
* @private
|
|
86
|
-
*/
|
|
87
41
|
private static _applyPolymorphism;
|
|
88
|
-
/**
|
|
89
|
-
* Recursively traverses into nested objects and arrays constructing the structural node trees.
|
|
90
|
-
*
|
|
91
|
-
* @param {IPropertyMetadata} metaProp The localized destination structure.
|
|
92
|
-
* @param {any} currentProp The source chunk representing a complex element.
|
|
93
|
-
* @param {any} openApiRoot The OpenAPI dictionary context.
|
|
94
|
-
* @param {"2.0" | "3.0"} version System schema version.
|
|
95
|
-
* @param {number} depth Invocation stack depth.
|
|
96
|
-
* @param {string} type Normalized atomic structure type.
|
|
97
|
-
* @private
|
|
98
|
-
*/
|
|
99
42
|
private static _applyNestedTypes;
|
|
100
|
-
/**
|
|
101
|
-
* Recursively deep-merges two OpenAPI objects, ensuring array boundaries and nested structures are preserved.
|
|
102
|
-
*
|
|
103
|
-
* @param {any} target The target base object.
|
|
104
|
-
* @param {any} source The source object providing override details.
|
|
105
|
-
* @returns {any} The synthesized output object.
|
|
106
|
-
*/
|
|
107
43
|
static deepMergeSchemas(target: unknown, source: unknown): unknown;
|
|
108
44
|
}
|
|
109
45
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenApiPropertyMapper.d.ts","sourceRoot":"../../../../../../../../..","sources":["src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApiPropertyMapper.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,kEAAkE,CAAC;
|
|
1
|
+
{"version":3,"file":"OpenApiPropertyMapper.d.ts","sourceRoot":"../../../../../../../../..","sources":["src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApiPropertyMapper.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,kEAAkE,CAAC;IACjF;;;MAGE;IAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,+CAA+C,CAAC;IAMlF;;;;OAIG;IACH,MAAa,qBAAqB;QAC9B;;;;;;;;;WASG;eACW,aAAa,CACvB,UAAU,EAAE,OAAO,EACnB,YAAY,EAAE,MAAM,EAAE,EACtB,WAAW,EAAE,OAAO,EACpB,OAAO,EAAE,KAAK,GAAG,KAAK,EACtB,KAAK,GAAE,MAAU,GAClB,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC;QAuBpC;;;;;;;;;;;WAWG;eACW,mBAAmB,CAC7B,WAAW,EAAE,OAAO,EACpB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,OAAO,EACnB,WAAW,EAAE,OAAO,EACpB,OAAO,EAAE,KAAK,GAAG,KAAK,EACtB,KAAK,GAAE,MAAU,GAClB,iBAAiB;QA8CpB,OAAO,CAAC,MAAM,CAAC,iBAAiB;QA6BhC,OAAO,CAAC,MAAM,CAAC,aAAa;QAiB5B,OAAO,CAAC,MAAM,CAAC,iBAAiB;QAsChC,OAAO,CAAC,MAAM,CAAC,oBAAoB;QAOnC,OAAO,CAAC,MAAM,CAAC,kBAAkB;QAwCjC,OAAO,CAAC,MAAM,CAAC,iBAAiB;eAqClB,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO;KAwB5E;CAEA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
sap.ui.define(["../OpenApiRefResolver","../OpenApiTypeMapper","../OpenApiUIMapper"],function(e,i,t){"use strict";const r=e["OpenApiRefResolver"];const a=i["OpenApiTypeMapper"];const n=t["OpenApiUIMapper"];class s{static mapProperties(e,i,t,a,n=0){const s={};if(n>8)return s;for(const
|
|
1
|
+
sap.ui.define(["../OpenApiRefResolver","../OpenApiTypeMapper","../OpenApiUIMapper"],function(e,i,t){"use strict";const r=e["OpenApiRefResolver"];const a=i["OpenApiTypeMapper"];const n=t["OpenApiUIMapper"];class s{static mapProperties(e,i,t,a,n=0){const s={};if(n>8)return s;const o=e||{};for(const e of Object.keys(o)){const p=i.includes(e);let m=o[e];if(m.$ref){const e=r.resolve(m.$ref,t);if(e){m={...e,...m}}}s[e]=this.mapPropertyMetadata(m,e,p,t,a,n+1)}return s}static mapPropertyMetadata(e,i,t,r,s,o=0){let p=e;const m=this._resolveReference(p,i,t,r,s,o);if(m){return m}p=this._resolveAllOf(p,r);const f=a.mapType(p.type);const u={type:f,required:t};const l=n.build(p,i);if(Object.keys(l).length>0){u.ui=l}this._applyConstraints(u,p,s);this._applyStateModifiers(u,p);if(p.default!==undefined){u.default=p.default}if(Array.isArray(p.enum)){u.enum=p.enum;if(!u.ui)u.ui={};u.ui.widget="dropdown"}this._applyPolymorphism(u,p,r,s,o);this._applyNestedTypes(u,p,r,s,o,f);return u}static _resolveReference(e,i,t,a,n,s){if(!e.$ref){return null}const o=r.resolve(e.$ref,a);const p=e.type||o&&o.type;if(p&&["string","number","integer","boolean"].includes(p)){const r={...o,...e};delete r.$ref;return this.mapPropertyMetadata(r,i,t,a,n,s+1)}return{type:"object",$ref:e.$ref,required:t,ui:{widget:"reference"}}}static _resolveAllOf(e,i){if(!Array.isArray(e.allOf)){return e}let t={...e};delete t.allOf;for(const a of e.allOf){let e=a;if(a.$ref){e=r.resolve(a.$ref,i)||{}}t=this.deepMergeSchemas(t,e)}return t}static _applyConstraints(e,i,t){if(typeof i.maxLength==="number")e.maxLength=i.maxLength;if(typeof i.minLength==="number")e.minLength=i.minLength;if(typeof i.pattern==="string")e.pattern=i.pattern;if(typeof i.maximum==="number")e.maximum=i.maximum;if(typeof i.minimum==="number")e.minimum=i.minimum;if(typeof i.multipleOf==="number")e.multipleOf=i.multipleOf;if(typeof i.maxItems==="number")e.maxItems=i.maxItems;if(typeof i.minItems==="number")e.minItems=i.minItems;if(typeof i.uniqueItems==="boolean")e.uniqueItems=i.uniqueItems;if(typeof i.maxProperties==="number")e.maxProperties=i.maxProperties;if(typeof i.minProperties==="number")e.minProperties=i.minProperties;if(t==="2.0"){if(i.exclusiveMaximum===true&&typeof i.maximum==="number"){e.exclusiveMaximum=true}if(i.exclusiveMinimum===true&&typeof i.minimum==="number"){e.exclusiveMinimum=true}}else if(t==="3.0"){if(typeof i.exclusiveMaximum==="number"||typeof i.exclusiveMaximum==="boolean"){e.exclusiveMaximum=i.exclusiveMaximum}if(typeof i.exclusiveMinimum==="number"||typeof i.exclusiveMinimum==="boolean"){e.exclusiveMinimum=i.exclusiveMinimum}}}static _applyStateModifiers(e,i){if(i.readOnly===true)e.readOnly=true;if(i.writeOnly===true)e.writeOnly=true;if(i.nullable===true)e.nullable=true;if(i.deprecated===true)e.deprecated=true}static _applyPolymorphism(e,i,t,r,a){if(i.discriminator){if(r==="2.0"&&typeof i.discriminator==="string"){e.discriminator={propertyName:i.discriminator}}else if(r==="3.0"&&typeof i.discriminator==="object"){const t=i.discriminator;e.discriminator={propertyName:t.propertyName,mapping:t.mapping}}}if(Array.isArray(i.oneOf)){e.oneOf=[];for(let n=0;n<i.oneOf.length;n++){e.oneOf.push(this.mapPropertyMetadata(i.oneOf[n],`Variant${n}`,false,t,r,a+1))}if(!e.ui)e.ui={};e.ui.widget="polymorphic"}if(Array.isArray(i.anyOf)){e.anyOf=[];for(let n=0;n<i.anyOf.length;n++){e.anyOf.push(this.mapPropertyMetadata(i.anyOf[n],`AnyVariant${n}`,false,t,r,a+1))}}if(i.not){e.not=this.mapPropertyMetadata(i.not,`NotVariant`,false,t,r,a+1)}}static _applyNestedTypes(e,i,t,r,a,n){if(n==="object"){if(i.properties){const n=Array.isArray(i.required)?i.required:[];e.properties=this.mapProperties(i.properties,n,t,r,a+1)}if(i.additionalProperties){if(i.additionalProperties===true){e.additionalProperties=true}else if(typeof i.additionalProperties==="object"){e.additionalProperties=this.mapPropertyMetadata(i.additionalProperties,"value",false,t,r,a+1);if(!e.ui)e.ui={};e.ui.widget="dictionary"}}if(!i.properties&&!i.additionalProperties){if(!e.ui)e.ui={};e.ui.widget="codeEditor"}}else if(n==="array"&&i.items){e.items=this.mapPropertyMetadata(i.items,"items",false,t,r,a+1);if(e.items.type!=="object"){if(!e.ui)e.ui={};e.ui.widget="multiInput"}}}static deepMergeSchemas(e,i){const t=e||{};const r=Object.assign({},t);if(i===null||typeof i!=="object")return r;const a=i;Object.keys(a).forEach(e=>{if(Array.isArray(a[e])){r[e]=Array.isArray(t[e])?Array.from(new Set([...t[e],...a[e]])):[...a[e]]}else if(typeof a[e]==="object"&&a[e]!==null){if(t[e]&&typeof t[e]==="object"){r[e]=this.deepMergeSchemas(t[e],a[e])}else{r[e]=Object.assign({},a[e])}}else{r[e]=a[e]}});return r}}var o={__esModule:true};o.OpenApiPropertyMapper=s;return o});
|
|
2
2
|
//# sourceMappingURL=OpenApiPropertyMapper.js.map
|