@siliconst/metaui 1.4.17 → 1.4.21
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/package.json +1 -1
- package/src/nz/co/siliconst/ui5/metaui/ai/AIConfig-dbg.js +47 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/AIConfig-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/AIConfig.d.ts +28 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/AIConfig.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/AIConfig.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/AIConfig.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/AIConfig.ts +39 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/BaseAIGenerator-dbg.js +83 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/BaseAIGenerator-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/BaseAIGenerator.d.ts +30 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/BaseAIGenerator.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/BaseAIGenerator.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/BaseAIGenerator.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/BaseAIGenerator.ts +74 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/MockLLMProxy-dbg.js +61 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/MockLLMProxy-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/MockLLMProxy.d.ts +13 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/MockLLMProxy.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/MockLLMProxy.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/MockLLMProxy.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/MockLLMProxy.ts +59 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/RestLLMProxy-dbg.js +50 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/RestLLMProxy-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/RestLLMProxy.d.ts +12 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/RestLLMProxy.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/RestLLMProxy.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/RestLLMProxy.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/ai/RestLLMProxy.ts +44 -0
- package/src/nz/co/siliconst/ui5/metaui/controls/DynamicHost-dbg.js +87 -16
- 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 +20 -0
- 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 +79 -18
- package/src/nz/co/siliconst/ui5/metaui/controls/host/GeneratorHost-dbg.js +44 -4
- 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 +23 -0
- 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 +35 -5
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/DataSyncDelegate-dbg.js +35 -0
- 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 +8 -0
- 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 +37 -0
- package/src/nz/co/siliconst/ui5/metaui/controls/host/delegates/ODataDelegate-dbg.js +13 -0
- 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 +4 -0
- 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 +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 +13 -0
- package/src/nz/co/siliconst/ui5/metaui/core/DefaultLayoutGenerator-dbg.js +11 -32
- package/src/nz/co/siliconst/ui5/metaui/core/DefaultLayoutGenerator-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/DefaultLayoutGenerator.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/DefaultLayoutGenerator.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/DefaultLayoutGenerator.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/DefaultLayoutGenerator.ts +9 -13
- package/src/nz/co/siliconst/ui5/metaui/core/Engine-dbg.js +14 -6
- 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 +7 -1
- 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 +21 -11
- package/src/nz/co/siliconst/ui5/metaui/core/PluginRegistry-dbg.js +6 -0
- 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.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 +6 -0
- package/src/nz/co/siliconst/ui5/metaui/core/SchemaBuilderRegistry-dbg.js +3 -3
- package/src/nz/co/siliconst/ui5/metaui/core/SchemaBuilderRegistry-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/SchemaBuilderRegistry.d.ts +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/SchemaBuilderRegistry.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/SchemaBuilderRegistry.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/SchemaBuilderRegistry.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/SchemaBuilderRegistry.ts +3 -3
- package/src/nz/co/siliconst/ui5/metaui/core/SchemaNormalizer-dbg.js +4 -4
- 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 +2 -2
- 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 +10 -10
- package/src/nz/co/siliconst/ui5/metaui/core/SchemaValidator-dbg.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/core/SchemaValidator-dbg.js.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 +1 -1
- 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 +1 -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 +1 -1
- 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 +19 -3
- package/src/nz/co/siliconst/ui5/metaui/interfaces/ISchema.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/interfaces/ISchema.ts +22 -3
- package/src/nz/co/siliconst/ui5/metaui/interfaces/ISchemaBuilderPlugin-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/interfaces/ISchemaBuilderPlugin.d.ts +3 -2
- package/src/nz/co/siliconst/ui5/metaui/interfaces/ISchemaBuilderPlugin.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/interfaces/ISchemaBuilderPlugin.ts +3 -2
- package/src/nz/co/siliconst/ui5/metaui/layouts/TableLayout-dbg.js +18 -2
- 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 +19 -2
- package/src/nz/co/siliconst/ui5/metaui/library-dbg.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/library-dbg.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/library-preload.js +66 -44
- package/src/nz/co/siliconst/ui5/metaui/library-preload.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/library.d.ts +4 -0
- package/src/nz/co/siliconst/ui5/metaui/library.d.ts.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/library.js +1 -1
- package/src/nz/co/siliconst/ui5/metaui/library.js.map +1 -1
- package/src/nz/co/siliconst/ui5/metaui/library.ts +6 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiBuilder-dbg.js +93 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiBuilder-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiBuilder.d.ts +52 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiBuilder.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiBuilder.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiBuilder.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiBuilder.ts +88 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiParserFactory-dbg.js +47 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiParserFactory-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiParserFactory.d.ts +25 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiParserFactory.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiParserFactory.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiParserFactory.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiParserFactory.ts +43 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiRefResolver-dbg.js +68 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiRefResolver-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiRefResolver.d.ts +21 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiRefResolver.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiRefResolver.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiRefResolver.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiRefResolver.ts +61 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiTypeMapper-dbg.js +45 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiTypeMapper-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiTypeMapper.d.ts +25 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiTypeMapper.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/{swagger/SwaggerTypeMapper.js → openapi/OpenApiTypeMapper.js} +2 -2
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiTypeMapper.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiTypeMapper.ts +36 -0
- package/src/nz/co/siliconst/ui5/metaui/{swagger/SwaggerUIMapper-dbg.js → openapi/OpenApiUIMapper-dbg.js} +29 -17
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiUIMapper-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiUIMapper.d.ts +34 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiUIMapper.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiUIMapper.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/OpenApiUIMapper.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/{swagger/SwaggerUIMapper.ts → openapi/OpenApiUIMapper.ts} +28 -16
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/OpenApiHeuristicEngine-dbg.js +50 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/OpenApiHeuristicEngine-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/OpenApiHeuristicEngine.d.ts +25 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/OpenApiHeuristicEngine.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/OpenApiHeuristicEngine.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/OpenApiHeuristicEngine.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/OpenApiHeuristicEngine.ts +43 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/interfaces/IHeuristicPlugin-dbg.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/interfaces/IHeuristicPlugin-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/interfaces/IHeuristicPlugin.d.ts +23 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/interfaces/IHeuristicPlugin.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/interfaces/IHeuristicPlugin.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/interfaces/IHeuristicPlugin.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/interfaces/IHeuristicPlugin.ts +21 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/plugins/ProtobufVariantHeuristic-dbg.js +117 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/plugins/ProtobufVariantHeuristic-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/plugins/ProtobufVariantHeuristic.d.ts +47 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/plugins/ProtobufVariantHeuristic.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/plugins/ProtobufVariantHeuristic.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/plugins/ProtobufVariantHeuristic.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/heuristics/plugins/ProtobufVariantHeuristic.ts +113 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/interfaces/IOpenApiParserPlugin-dbg.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/interfaces/IOpenApiParserPlugin-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/interfaces/IOpenApiParserPlugin.d.ts +26 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/interfaces/IOpenApiParserPlugin.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/interfaces/IOpenApiParserPlugin.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/interfaces/IOpenApiParserPlugin.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/interfaces/IOpenApiParserPlugin.ts +25 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi2Parser-dbg.js +106 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi2Parser-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi2Parser.d.ts +27 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi2Parser.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi2Parser.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi2Parser.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi2Parser.ts +104 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi3Parser-dbg.js +107 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi3Parser-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi3Parser.d.ts +27 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi3Parser.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi3Parser.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi3Parser.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi3Parser.ts +105 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApiPropertyMapper-dbg.js +347 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApiPropertyMapper-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApiPropertyMapper.d.ts +110 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApiPropertyMapper.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApiPropertyMapper.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApiPropertyMapper.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApiPropertyMapper.ts +377 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ArrayPlugin-dbg.js +11 -0
- 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.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 +13 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BarcodeScannerPlugin-dbg.js +2 -2
- 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.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 +2 -2
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BasePlugin-dbg.js +31 -7
- 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 +17 -1
- 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 +33 -8
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/BooleanPlugin-dbg.js +3 -4
- 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.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 +3 -4
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CameraPlugin-dbg.js +2 -2
- 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.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 +2 -2
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/CodeEditorPlugin-dbg.js +1 -1
- 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.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 +1 -1
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DatePlugin-dbg.js +4 -8
- 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.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 +4 -8
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DateTimePlugin-dbg.js +4 -8
- 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.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 +4 -8
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DictionaryMapPlugin-dbg.js +217 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DictionaryMapPlugin-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DictionaryMapPlugin.d.ts +26 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DictionaryMapPlugin.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DictionaryMapPlugin.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DictionaryMapPlugin.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DictionaryMapPlugin.ts +249 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/DropdownPlugin-dbg.js +3 -4
- 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.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 +3 -4
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/EmailPlugin-dbg.js +48 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/EmailPlugin-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/EmailPlugin.d.ts +11 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/EmailPlugin.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/EmailPlugin.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/EmailPlugin.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/EmailPlugin.ts +48 -0
- 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.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 +3 -3
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/GeolocationPlugin-dbg.js +3 -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.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 +4 -5
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/LinkPlugin-dbg.js +58 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/LinkPlugin-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/LinkPlugin.d.ts +11 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/LinkPlugin.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/LinkPlugin.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/LinkPlugin.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/LinkPlugin.ts +57 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MessageStripPlugin-dbg.js +1 -1
- 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.js +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 +115 -49
- 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 +17 -2
- 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 +114 -54
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/MultiSelectPlugin-dbg.js +3 -4
- 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.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 -4
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/NumberPlugin-dbg.js +3 -2
- 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.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 +3 -2
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/PasswordPlugin-dbg.js +49 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/PasswordPlugin-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/PasswordPlugin.d.ts +11 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/PasswordPlugin.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/PasswordPlugin.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/PasswordPlugin.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/PasswordPlugin.ts +49 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RatingIndicatorPlugin-dbg.js +2 -2
- 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.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 +2 -2
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ReferencePlugin-dbg.js +194 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ReferencePlugin-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ReferencePlugin.d.ts +25 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ReferencePlugin.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ReferencePlugin.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ReferencePlugin.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/ReferencePlugin.ts +192 -0
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/RichTextPlugin-dbg.js +2 -2
- 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.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 +2 -2
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SignaturePlugin-dbg.js +2 -2
- 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.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 +2 -2
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SliderPlugin-dbg.js +2 -2
- 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.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 +2 -2
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/StepInputPlugin-dbg.js +2 -2
- 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.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 +2 -2
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/StringPlugin-dbg.js +2 -2
- 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.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 +2 -2
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/SwitchPlugin-dbg.js +3 -4
- 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.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 -4
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TextAreaPlugin-dbg.js +2 -2
- 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.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 +2 -2
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/TimePlugin-dbg.js +4 -8
- 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.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 -8
- package/src/nz/co/siliconst/ui5/metaui/plugins/controls/VoiceInputPlugin-dbg.js +3 -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.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 +3 -4
- package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/LiveSearchPlugin-dbg.js +2 -2
- 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.js +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 +2 -2
- package/src/nz/co/siliconst/ui5/metaui/plugins/datasources/RemoteValueHelpPlugin-dbg.js +2 -2
- 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.js +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 +2 -2
- package/src/nz/co/siliconst/ui5/metaui/swagger/OpenApiExtractor-dbg.js +146 -0
- package/src/nz/co/siliconst/ui5/metaui/swagger/OpenApiExtractor-dbg.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/swagger/OpenApiExtractor.d.ts +27 -0
- package/src/nz/co/siliconst/ui5/metaui/swagger/OpenApiExtractor.d.ts.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/swagger/OpenApiExtractor.js +2 -0
- package/src/nz/co/siliconst/ui5/metaui/swagger/OpenApiExtractor.js.map +1 -0
- package/src/nz/co/siliconst/ui5/metaui/swagger/OpenApiExtractor.ts +160 -0
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerBuilder-dbg.js +0 -226
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerBuilder-dbg.js.map +0 -1
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerBuilder.d.ts +0 -63
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerBuilder.d.ts.map +0 -1
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerBuilder.js +0 -2
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerBuilder.js.map +0 -1
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerBuilder.ts +0 -233
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerRefResolver-dbg.js +0 -43
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerRefResolver-dbg.js.map +0 -1
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerRefResolver.d.ts +0 -15
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerRefResolver.d.ts.map +0 -1
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerRefResolver.js +0 -2
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerRefResolver.js.map +0 -1
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerRefResolver.ts +0 -37
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerTypeMapper-dbg.js +0 -37
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerTypeMapper-dbg.js.map +0 -1
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerTypeMapper.d.ts +0 -18
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerTypeMapper.d.ts.map +0 -1
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerTypeMapper.js.map +0 -1
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerTypeMapper.ts +0 -28
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerUIMapper-dbg.js.map +0 -1
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerUIMapper.d.ts +0 -27
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerUIMapper.d.ts.map +0 -1
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerUIMapper.js +0 -2
- package/src/nz/co/siliconst/ui5/metaui/swagger/SwaggerUIMapper.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OpenApi2Parser.js","names":["OpenApiPropertyMapper","___OpenApiPropertyMapper","OpenApiRefResolver","___OpenApiRefResolver","OpenApi2Parser","parse","openApiRoot","targetDefinition","targetObject","definitions","keys","Object","length","replace","Error","$ref","resolved","resolve","Array","isArray","allOf","merged","subSchema","resolvedSub","deepMergeSchemas","schema","title","info","type","layoutStrategy","additionalProperties","mapPropertyMetadata","properties","requiredFields","required","mapProperties","items","key","mappedProp","ui","__exports","__esModule"],"sources":["OpenApi2Parser.ts"],"sourcesContent":["/**\n * @file OpenApi2Parser.ts\n * @description Native parser for OpenAPI 2.0 (Swagger) specifications.\n */\n\nimport { IOpenApiParserPlugin } from \"../interfaces/IOpenApiParserPlugin\";\nimport { ISchema } from \"../../interfaces/ISchema\";\nimport { OpenApiPropertyMapper } from \"./OpenApiPropertyMapper\";\nimport { OpenApiRefResolver } from \"../OpenApiRefResolver\";\n\n/**\n * Parser plugin specifically designed for parsing OpenAPI 2.0 (Swagger) schemas.\n * Responsible for translating OpenAPI 2.0 specific constructs into the MetaUI normalized schema.\n * \n * @public\n */\nexport class OpenApi2Parser implements IOpenApiParserPlugin {\n /**\n * Parses a raw OpenAPI 2.0 document into a normalized MetaUI ISchema tree.\n * Extracts definitions, normalizes properties, and recursively resolves composition (allOf).\n * \n * @param {any} openApiRoot The root JSON document.\n * @param {string} [targetDefinition] Optional specific definition to extract. If omitted, uses the first definition available.\n * @returns {ISchema} The synthesized MetaUI schema structure.\n * @throws {Error} If the target definition cannot be found in the provided Swagger document.\n */\n public parse(openApiRoot: unknown, targetDefinition?: string): ISchema {\n let targetObject = openApiRoot;\n\n if (!targetDefinition) {\n if (openApiRoot.definitions) {\n const keys = Object.keys(openApiRoot.definitions);\n if (keys.length > 0) targetDefinition = keys[0];\n }\n }\n\n if (targetDefinition) {\n targetDefinition = targetDefinition.replace(\"#/components/schemas/\", \"\").replace(\"#/definitions/\", \"\");\n if (openApiRoot.definitions && openApiRoot.definitions[targetDefinition]) {\n targetObject = openApiRoot.definitions[targetDefinition];\n } else {\n throw new Error(`[MetaUI OpenApi2Parser] Could not find target definition '${targetDefinition}' in definitions.`);\n }\n }\n\n if (targetObject.$ref) {\n const resolved = OpenApiRefResolver.resolve(targetObject.$ref, openApiRoot);\n if (resolved) {\n targetObject = { ...resolved, ...targetObject };\n }\n }\n\n if (Array.isArray(targetObject.allOf)) {\n let merged = { ...targetObject };\n delete merged.allOf;\n for (const subSchema of targetObject.allOf) {\n let resolvedSub = subSchema;\n if (subSchema.$ref) {\n resolvedSub = OpenApiRefResolver.resolve(subSchema.$ref, openApiRoot) || {};\n }\n merged = OpenApiPropertyMapper.deepMergeSchemas(merged, resolvedSub);\n }\n targetObject = merged;\n }\n\n const schema: ISchema = {\n title: targetObject.title || openApiRoot.info?.title || targetDefinition,\n type: targetObject.type === \"array\" ? \"array\" : \"object\",\n layoutStrategy: targetObject.type === \"array\" ? \"table\" : \"form\"\n };\n\n if (targetObject.additionalProperties) {\n if (targetObject.additionalProperties === true) {\n schema.additionalProperties = true;\n } else if (typeof targetObject.additionalProperties === \"object\") {\n schema.additionalProperties = OpenApiPropertyMapper.mapPropertyMetadata(targetObject.additionalProperties, \"value\", false, openApiRoot, \"2.0\");\n }\n }\n\n if (targetObject.properties) {\n const requiredFields = Array.isArray(targetObject.required) ? targetObject.required : [];\n schema.properties = OpenApiPropertyMapper.mapProperties(targetObject.properties, requiredFields, openApiRoot, \"2.0\");\n } else if (schema.type === \"array\" && targetObject.items) {\n schema.items = OpenApiPropertyMapper.mapPropertyMetadata(targetObject.items, \"items\", false, openApiRoot, \"2.0\");\n }\n\n if (openApiRoot.definitions) {\n schema.definitions = {};\n for (const key of Object.keys(openApiRoot.definitions)) {\n const mappedProp = OpenApiPropertyMapper.mapPropertyMetadata(openApiRoot.definitions[key], key, false, openApiRoot, \"2.0\");\n schema.definitions[key] = {\n title: key,\n type: mappedProp.type === \"array\" ? \"array\" : \"object\",\n properties: mappedProp.properties,\n items: mappedProp.items,\n ui: mappedProp.ui,\n layoutStrategy: mappedProp.type === \"array\" ? \"table\" : \"form\"\n };\n }\n }\n\n return schema;\n }\n}\n"],"mappings":"6FAAA,MAOSA,EAAqBC,EAAA,+BACrBC,EAAkBC,EAAA,sBAQpB,MAAMC,EAUFC,MAAMC,EAAsBC,GAC/B,IAAIC,EAAeF,EAEnB,IAAKC,EAAkB,CACnB,GAAID,EAAYG,YAAa,CACzB,MAAMC,EAAOC,OAAOD,KAAKJ,EAAYG,aACrC,GAAIC,EAAKE,OAAS,EAAGL,EAAmBG,EAAK,EACjD,CACJ,CAEA,GAAIH,EAAkB,CAClBA,EAAmBA,EAAiBM,QAAQ,wBAAyB,IAAIA,QAAQ,iBAAkB,IACnG,GAAIP,EAAYG,aAAeH,EAAYG,YAAYF,GAAmB,CACtEC,EAAeF,EAAYG,YAAYF,EAC3C,KAAO,CACH,MAAM,IAAIO,MAAM,6DAA6DP,qBACjF,CACJ,CAEA,GAAIC,EAAaO,KAAM,CACnB,MAAMC,EAAWd,EAAmBe,QAAQT,EAAaO,KAAMT,GAC/D,GAAIU,EAAU,CACVR,EAAe,IAAKQ,KAAaR,EACrC,CACJ,CAEA,GAAIU,MAAMC,QAAQX,EAAaY,OAAQ,CACnC,IAAIC,EAAS,IAAKb,UACXa,EAAOD,MACd,IAAK,MAAME,KAAad,EAAaY,MAAO,CACxC,IAAIG,EAAcD,EAClB,GAAIA,EAAUP,KAAM,CAChBQ,EAAcrB,EAAmBe,QAAQK,EAAUP,KAAMT,IAAgB,CAAC,CAC9E,CACAe,EAASrB,EAAsBwB,iBAAiBH,EAAQE,EAC5D,CACAf,EAAea,CACnB,CAEA,MAAMI,EAAkB,CACpBC,MAAOlB,EAAakB,OAASpB,EAAYqB,MAAMD,OAASnB,EACxDqB,KAAMpB,EAAaoB,OAAS,QAAU,QAAU,SAChDC,eAAgBrB,EAAaoB,OAAS,QAAU,QAAU,QAG9D,GAAIpB,EAAasB,qBAAsB,CACnC,GAAItB,EAAasB,uBAAyB,KAAM,CAC5CL,EAAOK,qBAAuB,IAClC,MAAO,UAAWtB,EAAasB,uBAAyB,SAAU,CAC9DL,EAAOK,qBAAuB9B,EAAsB+B,oBAAoBvB,EAAasB,qBAAsB,QAAS,MAAOxB,EAAa,MAC5I,CACJ,CAEA,GAAIE,EAAawB,WAAY,CACzB,MAAMC,EAAiBf,MAAMC,QAAQX,EAAa0B,UAAY1B,EAAa0B,SAAW,GACtFT,EAAOO,WAAahC,EAAsBmC,cAAc3B,EAAawB,WAAYC,EAAgB3B,EAAa,MAClH,MAAO,GAAImB,EAAOG,OAAS,SAAWpB,EAAa4B,MAAO,CACtDX,EAAOW,MAAQpC,EAAsB+B,oBAAoBvB,EAAa4B,MAAO,QAAS,MAAO9B,EAAa,MAC9G,CAEA,GAAIA,EAAYG,YAAa,CACzBgB,EAAOhB,YAAc,CAAC,EACtB,IAAK,MAAM4B,KAAO1B,OAAOD,KAAKJ,EAAYG,aAAc,CACpD,MAAM6B,EAAatC,EAAsB+B,oBAAoBzB,EAAYG,YAAY4B,GAAMA,EAAK,MAAO/B,EAAa,OACpHmB,EAAOhB,YAAY4B,GAAO,CACtBX,MAAOW,EACPT,KAAMU,EAAWV,OAAS,QAAU,QAAU,SAC9CI,WAAYM,EAAWN,WACvBI,MAAOE,EAAWF,MAClBG,GAAID,EAAWC,GACfV,eAAgBS,EAAWV,OAAS,QAAU,QAAU,OAEhE,CACJ,CAEA,OAAOH,CACX,EACH,IAAAe,EAAA,CAAAC,WAAA,MAAAD,EAAApC,iBAAA,OAAAoC,CAAA","ignoreList":[]}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file OpenApi2Parser.ts
|
|
3
|
+
* @description Native parser for OpenAPI 2.0 (Swagger) specifications.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import { IOpenApiParserPlugin } from "../interfaces/IOpenApiParserPlugin";
|
|
7
|
+
import { ISchema } from "../../interfaces/ISchema";
|
|
8
|
+
import { OpenApiPropertyMapper } from "./OpenApiPropertyMapper";
|
|
9
|
+
import { OpenApiRefResolver } from "../OpenApiRefResolver";
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Parser plugin specifically designed for parsing OpenAPI 2.0 (Swagger) schemas.
|
|
13
|
+
* Responsible for translating OpenAPI 2.0 specific constructs into the MetaUI normalized schema.
|
|
14
|
+
*
|
|
15
|
+
* @public
|
|
16
|
+
*/
|
|
17
|
+
export class OpenApi2Parser implements IOpenApiParserPlugin {
|
|
18
|
+
/**
|
|
19
|
+
* Parses a raw OpenAPI 2.0 document into a normalized MetaUI ISchema tree.
|
|
20
|
+
* Extracts definitions, normalizes properties, and recursively resolves composition (allOf).
|
|
21
|
+
*
|
|
22
|
+
* @param {any} openApiRoot The root JSON document.
|
|
23
|
+
* @param {string} [targetDefinition] Optional specific definition to extract. If omitted, uses the first definition available.
|
|
24
|
+
* @returns {ISchema} The synthesized MetaUI schema structure.
|
|
25
|
+
* @throws {Error} If the target definition cannot be found in the provided Swagger document.
|
|
26
|
+
*/
|
|
27
|
+
public parse(openApiRoot: unknown, targetDefinition?: string): ISchema {
|
|
28
|
+
let targetObject = openApiRoot;
|
|
29
|
+
|
|
30
|
+
if (!targetDefinition) {
|
|
31
|
+
if (openApiRoot.definitions) {
|
|
32
|
+
const keys = Object.keys(openApiRoot.definitions);
|
|
33
|
+
if (keys.length > 0) targetDefinition = keys[0];
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
if (targetDefinition) {
|
|
38
|
+
targetDefinition = targetDefinition.replace("#/components/schemas/", "").replace("#/definitions/", "");
|
|
39
|
+
if (openApiRoot.definitions && openApiRoot.definitions[targetDefinition]) {
|
|
40
|
+
targetObject = openApiRoot.definitions[targetDefinition];
|
|
41
|
+
} else {
|
|
42
|
+
throw new Error(`[MetaUI OpenApi2Parser] Could not find target definition '${targetDefinition}' in definitions.`);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
if (targetObject.$ref) {
|
|
47
|
+
const resolved = OpenApiRefResolver.resolve(targetObject.$ref, openApiRoot);
|
|
48
|
+
if (resolved) {
|
|
49
|
+
targetObject = { ...resolved, ...targetObject };
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
if (Array.isArray(targetObject.allOf)) {
|
|
54
|
+
let merged = { ...targetObject };
|
|
55
|
+
delete merged.allOf;
|
|
56
|
+
for (const subSchema of targetObject.allOf) {
|
|
57
|
+
let resolvedSub = subSchema;
|
|
58
|
+
if (subSchema.$ref) {
|
|
59
|
+
resolvedSub = OpenApiRefResolver.resolve(subSchema.$ref, openApiRoot) || {};
|
|
60
|
+
}
|
|
61
|
+
merged = OpenApiPropertyMapper.deepMergeSchemas(merged, resolvedSub);
|
|
62
|
+
}
|
|
63
|
+
targetObject = merged;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
const schema: ISchema = {
|
|
67
|
+
title: targetObject.title || openApiRoot.info?.title || targetDefinition,
|
|
68
|
+
type: targetObject.type === "array" ? "array" : "object",
|
|
69
|
+
layoutStrategy: targetObject.type === "array" ? "table" : "form"
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
if (targetObject.additionalProperties) {
|
|
73
|
+
if (targetObject.additionalProperties === true) {
|
|
74
|
+
schema.additionalProperties = true;
|
|
75
|
+
} else if (typeof targetObject.additionalProperties === "object") {
|
|
76
|
+
schema.additionalProperties = OpenApiPropertyMapper.mapPropertyMetadata(targetObject.additionalProperties, "value", false, openApiRoot, "2.0");
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
if (targetObject.properties) {
|
|
81
|
+
const requiredFields = Array.isArray(targetObject.required) ? targetObject.required : [];
|
|
82
|
+
schema.properties = OpenApiPropertyMapper.mapProperties(targetObject.properties, requiredFields, openApiRoot, "2.0");
|
|
83
|
+
} else if (schema.type === "array" && targetObject.items) {
|
|
84
|
+
schema.items = OpenApiPropertyMapper.mapPropertyMetadata(targetObject.items, "items", false, openApiRoot, "2.0");
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
if (openApiRoot.definitions) {
|
|
88
|
+
schema.definitions = {};
|
|
89
|
+
for (const key of Object.keys(openApiRoot.definitions)) {
|
|
90
|
+
const mappedProp = OpenApiPropertyMapper.mapPropertyMetadata(openApiRoot.definitions[key], key, false, openApiRoot, "2.0");
|
|
91
|
+
schema.definitions[key] = {
|
|
92
|
+
title: key,
|
|
93
|
+
type: mappedProp.type === "array" ? "array" : "object",
|
|
94
|
+
properties: mappedProp.properties,
|
|
95
|
+
items: mappedProp.items,
|
|
96
|
+
ui: mappedProp.ui,
|
|
97
|
+
layoutStrategy: mappedProp.type === "array" ? "table" : "form"
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
return schema;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
sap.ui.define(["./OpenApiPropertyMapper", "../OpenApiRefResolver"], function (___OpenApiPropertyMapper, ___OpenApiRefResolver) {
|
|
2
|
+
"use strict";
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* @file OpenApi3Parser.ts
|
|
6
|
+
* @description Native parser for OpenAPI 3.0.x specifications.
|
|
7
|
+
*/
|
|
8
|
+
const OpenApiPropertyMapper = ___OpenApiPropertyMapper["OpenApiPropertyMapper"];
|
|
9
|
+
const OpenApiRefResolver = ___OpenApiRefResolver["OpenApiRefResolver"];
|
|
10
|
+
/**
|
|
11
|
+
* Parser plugin specifically designed for parsing OpenAPI 3.0.x schemas.
|
|
12
|
+
* Responsible for translating OpenAPI 3.0 specific constructs into the MetaUI normalized schema.
|
|
13
|
+
*
|
|
14
|
+
* @public
|
|
15
|
+
*/
|
|
16
|
+
class OpenApi3Parser {
|
|
17
|
+
/**
|
|
18
|
+
* Parses a raw OpenAPI 3.0 document into a normalized MetaUI ISchema tree.
|
|
19
|
+
* Extracts definitions from components.schemas, normalizes properties, and recursively resolves composition (allOf).
|
|
20
|
+
*
|
|
21
|
+
* @param {any} openApiRoot The root JSON document.
|
|
22
|
+
* @param {string} [targetDefinition] Optional specific schema to extract from components.schemas. If omitted, uses the first schema available.
|
|
23
|
+
* @returns {ISchema} The synthesized MetaUI schema structure.
|
|
24
|
+
* @throws {Error} If the target definition cannot be found in the provided Swagger document.
|
|
25
|
+
*/
|
|
26
|
+
parse(openApiRoot, targetDefinition) {
|
|
27
|
+
let targetObject = openApiRoot;
|
|
28
|
+
if (!targetDefinition) {
|
|
29
|
+
if (openApiRoot.components && openApiRoot.components.schemas) {
|
|
30
|
+
const keys = Object.keys(openApiRoot.components.schemas);
|
|
31
|
+
if (keys.length > 0) targetDefinition = keys[0];
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
if (targetDefinition) {
|
|
35
|
+
targetDefinition = targetDefinition.replace("#/components/schemas/", "").replace("#/definitions/", "");
|
|
36
|
+
if (openApiRoot.components && openApiRoot.components.schemas && openApiRoot.components.schemas[targetDefinition]) {
|
|
37
|
+
targetObject = openApiRoot.components.schemas[targetDefinition];
|
|
38
|
+
} else {
|
|
39
|
+
throw new Error(`[MetaUI OpenApi3Parser] Could not find target definition '${targetDefinition}' in components.schemas.`);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
if (targetObject.$ref) {
|
|
43
|
+
const resolved = OpenApiRefResolver.resolve(targetObject.$ref, openApiRoot);
|
|
44
|
+
if (resolved) {
|
|
45
|
+
targetObject = {
|
|
46
|
+
...resolved,
|
|
47
|
+
...targetObject
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
if (Array.isArray(targetObject.allOf)) {
|
|
52
|
+
let merged = {
|
|
53
|
+
...targetObject
|
|
54
|
+
};
|
|
55
|
+
delete merged.allOf;
|
|
56
|
+
for (const subSchema of targetObject.allOf) {
|
|
57
|
+
let resolvedSub = subSchema;
|
|
58
|
+
if (subSchema.$ref) {
|
|
59
|
+
resolvedSub = OpenApiRefResolver.resolve(subSchema.$ref, openApiRoot) || {};
|
|
60
|
+
}
|
|
61
|
+
merged = OpenApiPropertyMapper.deepMergeSchemas(merged, resolvedSub);
|
|
62
|
+
}
|
|
63
|
+
targetObject = merged;
|
|
64
|
+
}
|
|
65
|
+
const schema = {
|
|
66
|
+
title: targetObject.title || openApiRoot.info?.title || targetDefinition,
|
|
67
|
+
type: targetObject.type === "array" ? "array" : "object",
|
|
68
|
+
layoutStrategy: targetObject.type === "array" ? "table" : "form"
|
|
69
|
+
};
|
|
70
|
+
if (targetObject.additionalProperties) {
|
|
71
|
+
if (targetObject.additionalProperties === true) {
|
|
72
|
+
schema.additionalProperties = true;
|
|
73
|
+
} else if (typeof targetObject.additionalProperties === "object") {
|
|
74
|
+
schema.additionalProperties = OpenApiPropertyMapper.mapPropertyMetadata(targetObject.additionalProperties, "value", false, openApiRoot, "3.0");
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
if (targetObject.properties) {
|
|
78
|
+
const requiredFields = Array.isArray(targetObject.required) ? targetObject.required : [];
|
|
79
|
+
schema.properties = OpenApiPropertyMapper.mapProperties(targetObject.properties, requiredFields, openApiRoot, "3.0");
|
|
80
|
+
} else if (schema.type === "array" && targetObject.items) {
|
|
81
|
+
schema.items = OpenApiPropertyMapper.mapPropertyMetadata(targetObject.items, "items", false, openApiRoot, "3.0");
|
|
82
|
+
}
|
|
83
|
+
if (openApiRoot.components && openApiRoot.components.schemas) {
|
|
84
|
+
schema.definitions = {};
|
|
85
|
+
const schemas = openApiRoot.components.schemas;
|
|
86
|
+
for (const key of Object.keys(schemas)) {
|
|
87
|
+
const mappedProp = OpenApiPropertyMapper.mapPropertyMetadata(schemas[key], key, false, openApiRoot, "3.0");
|
|
88
|
+
schema.definitions[key] = {
|
|
89
|
+
title: key,
|
|
90
|
+
type: mappedProp.type === "array" ? "array" : "object",
|
|
91
|
+
properties: mappedProp.properties,
|
|
92
|
+
items: mappedProp.items,
|
|
93
|
+
ui: mappedProp.ui,
|
|
94
|
+
layoutStrategy: mappedProp.type === "array" ? "table" : "form"
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
return schema;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
var __exports = {
|
|
102
|
+
__esModule: true
|
|
103
|
+
};
|
|
104
|
+
__exports.OpenApi3Parser = OpenApi3Parser;
|
|
105
|
+
return __exports;
|
|
106
|
+
});
|
|
107
|
+
//# sourceMappingURL=OpenApi3Parser-dbg.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OpenApi3Parser-dbg.js","names":["OpenApiPropertyMapper","___OpenApiPropertyMapper","OpenApiRefResolver","___OpenApiRefResolver","OpenApi3Parser","parse","openApiRoot","targetDefinition","targetObject","components","schemas","keys","Object","length","replace","Error","$ref","resolved","resolve","Array","isArray","allOf","merged","subSchema","resolvedSub","deepMergeSchemas","schema","title","info","type","layoutStrategy","additionalProperties","mapPropertyMetadata","properties","requiredFields","required","mapProperties","items","definitions","key","mappedProp","ui","__exports","__esModule"],"sources":["OpenApi3Parser.ts"],"sourcesContent":["/**\n * @file OpenApi3Parser.ts\n * @description Native parser for OpenAPI 3.0.x specifications.\n */\n\nimport { IOpenApiParserPlugin } from \"../interfaces/IOpenApiParserPlugin\";\nimport { ISchema } from \"../../interfaces/ISchema\";\nimport { OpenApiPropertyMapper } from \"./OpenApiPropertyMapper\";\nimport { OpenApiRefResolver } from \"../OpenApiRefResolver\";\n\n/**\n * Parser plugin specifically designed for parsing OpenAPI 3.0.x schemas.\n * Responsible for translating OpenAPI 3.0 specific constructs into the MetaUI normalized schema.\n * \n * @public\n */\nexport class OpenApi3Parser implements IOpenApiParserPlugin {\n /**\n * Parses a raw OpenAPI 3.0 document into a normalized MetaUI ISchema tree.\n * Extracts definitions from components.schemas, normalizes properties, and recursively resolves composition (allOf).\n * \n * @param {any} openApiRoot The root JSON document.\n * @param {string} [targetDefinition] Optional specific schema to extract from components.schemas. If omitted, uses the first schema available.\n * @returns {ISchema} The synthesized MetaUI schema structure.\n * @throws {Error} If the target definition cannot be found in the provided Swagger document.\n */\n public parse(openApiRoot: unknown, targetDefinition?: string): ISchema {\n let targetObject = openApiRoot;\n\n if (!targetDefinition) {\n if (openApiRoot.components && openApiRoot.components.schemas) {\n const keys = Object.keys(openApiRoot.components.schemas);\n if (keys.length > 0) targetDefinition = keys[0];\n }\n }\n\n if (targetDefinition) {\n targetDefinition = targetDefinition.replace(\"#/components/schemas/\", \"\").replace(\"#/definitions/\", \"\");\n if (openApiRoot.components && openApiRoot.components.schemas && openApiRoot.components.schemas[targetDefinition]) {\n targetObject = openApiRoot.components.schemas[targetDefinition];\n } else {\n throw new Error(`[MetaUI OpenApi3Parser] Could not find target definition '${targetDefinition}' in components.schemas.`);\n }\n }\n\n if (targetObject.$ref) {\n const resolved = OpenApiRefResolver.resolve(targetObject.$ref, openApiRoot);\n if (resolved) {\n targetObject = { ...resolved, ...targetObject };\n }\n }\n\n if (Array.isArray(targetObject.allOf)) {\n let merged = { ...targetObject };\n delete merged.allOf;\n for (const subSchema of targetObject.allOf) {\n let resolvedSub = subSchema;\n if (subSchema.$ref) {\n resolvedSub = OpenApiRefResolver.resolve(subSchema.$ref, openApiRoot) || {};\n }\n merged = OpenApiPropertyMapper.deepMergeSchemas(merged, resolvedSub);\n }\n targetObject = merged;\n }\n\n const schema: ISchema = {\n title: targetObject.title || openApiRoot.info?.title || targetDefinition,\n type: targetObject.type === \"array\" ? \"array\" : \"object\",\n layoutStrategy: targetObject.type === \"array\" ? \"table\" : \"form\"\n };\n\n if (targetObject.additionalProperties) {\n if (targetObject.additionalProperties === true) {\n schema.additionalProperties = true;\n } else if (typeof targetObject.additionalProperties === \"object\") {\n schema.additionalProperties = OpenApiPropertyMapper.mapPropertyMetadata(targetObject.additionalProperties, \"value\", false, openApiRoot, \"3.0\");\n }\n }\n\n if (targetObject.properties) {\n const requiredFields = Array.isArray(targetObject.required) ? targetObject.required : [];\n schema.properties = OpenApiPropertyMapper.mapProperties(targetObject.properties, requiredFields, openApiRoot, \"3.0\");\n } else if (schema.type === \"array\" && targetObject.items) {\n schema.items = OpenApiPropertyMapper.mapPropertyMetadata(targetObject.items, \"items\", false, openApiRoot, \"3.0\");\n }\n\n if (openApiRoot.components && openApiRoot.components.schemas) {\n schema.definitions = {};\n const schemas = openApiRoot.components.schemas;\n for (const key of Object.keys(schemas)) {\n const mappedProp = OpenApiPropertyMapper.mapPropertyMetadata(schemas[key], key, false, openApiRoot, \"3.0\");\n schema.definitions[key] = {\n title: key,\n type: mappedProp.type === \"array\" ? \"array\" : \"object\",\n properties: mappedProp.properties,\n items: mappedProp.items,\n ui: mappedProp.ui,\n layoutStrategy: mappedProp.type === \"array\" ? \"table\" : \"form\"\n };\n }\n }\n\n return schema;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
declare module "nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi3Parser" {
|
|
2
|
+
/**
|
|
3
|
+
* @file OpenApi3Parser.ts
|
|
4
|
+
* @description Native parser for OpenAPI 3.0.x specifications.
|
|
5
|
+
*/
|
|
6
|
+
import { IOpenApiParserPlugin } from "nz/co/siliconst/ui5/metaui/openapi/interfaces/IOpenApiParserPlugin";
|
|
7
|
+
import { ISchema } from "nz/co/siliconst/ui5/metaui/interfaces/ISchema";
|
|
8
|
+
/**
|
|
9
|
+
* Parser plugin specifically designed for parsing OpenAPI 3.0.x schemas.
|
|
10
|
+
* Responsible for translating OpenAPI 3.0 specific constructs into the MetaUI normalized schema.
|
|
11
|
+
*
|
|
12
|
+
* @public
|
|
13
|
+
*/
|
|
14
|
+
export class OpenApi3Parser implements IOpenApiParserPlugin {
|
|
15
|
+
/**
|
|
16
|
+
* Parses a raw OpenAPI 3.0 document into a normalized MetaUI ISchema tree.
|
|
17
|
+
* Extracts definitions from components.schemas, normalizes properties, and recursively resolves composition (allOf).
|
|
18
|
+
*
|
|
19
|
+
* @param {any} openApiRoot The root JSON document.
|
|
20
|
+
* @param {string} [targetDefinition] Optional specific schema to extract from components.schemas. If omitted, uses the first schema available.
|
|
21
|
+
* @returns {ISchema} The synthesized MetaUI schema structure.
|
|
22
|
+
* @throws {Error} If the target definition cannot be found in the provided Swagger document.
|
|
23
|
+
*/
|
|
24
|
+
parse(openApiRoot: unknown, targetDefinition?: string): ISchema;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=OpenApi3Parser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OpenApi3Parser.d.ts","sourceRoot":"../../../../../../../../..","sources":["src/nz/co/siliconst/ui5/metaui/openapi/parsers/OpenApi3Parser.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,2DAA2D,CAAC;IAC3E;;;OAGG;IAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,oEAAoE,CAAC;IAC1G,OAAO,EAAE,OAAO,EAAE,MAAM,+CAA+C,CAAC;IAIxE;;;;;OAKG;IACH,MAAa,cAAe,YAAW,oBAAoB;QACvD;;;;;;;;WAQG;QACI,KAAK,CAAC,WAAW,EAAE,OAAO,EAAE,gBAAgB,CAAC,EAAE,MAAM,GAAG,OAAO;KA8EzE;CAEA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
sap.ui.define(["./OpenApiPropertyMapper","../OpenApiRefResolver"],function(e,t){"use strict";const r=e["OpenApiPropertyMapper"];const s=t["OpenApiRefResolver"];class o{parse(e,t){let o=e;if(!t){if(e.components&&e.components.schemas){const r=Object.keys(e.components.schemas);if(r.length>0)t=r[0]}}if(t){t=t.replace("#/components/schemas/","").replace("#/definitions/","");if(e.components&&e.components.schemas&&e.components.schemas[t]){o=e.components.schemas[t]}else{throw new Error(`[MetaUI OpenApi3Parser] Could not find target definition '${t}' in components.schemas.`)}}if(o.$ref){const t=s.resolve(o.$ref,e);if(t){o={...t,...o}}}if(Array.isArray(o.allOf)){let t={...o};delete t.allOf;for(const i of o.allOf){let o=i;if(i.$ref){o=s.resolve(i.$ref,e)||{}}t=r.deepMergeSchemas(t,o)}o=t}const i={title:o.title||e.info?.title||t,type:o.type==="array"?"array":"object",layoutStrategy:o.type==="array"?"table":"form"};if(o.additionalProperties){if(o.additionalProperties===true){i.additionalProperties=true}else if(typeof o.additionalProperties==="object"){i.additionalProperties=r.mapPropertyMetadata(o.additionalProperties,"value",false,e,"3.0")}}if(o.properties){const t=Array.isArray(o.required)?o.required:[];i.properties=r.mapProperties(o.properties,t,e,"3.0")}else if(i.type==="array"&&o.items){i.items=r.mapPropertyMetadata(o.items,"items",false,e,"3.0")}if(e.components&&e.components.schemas){i.definitions={};const t=e.components.schemas;for(const s of Object.keys(t)){const o=r.mapPropertyMetadata(t[s],s,false,e,"3.0");i.definitions[s]={title:s,type:o.type==="array"?"array":"object",properties:o.properties,items:o.items,ui:o.ui,layoutStrategy:o.type==="array"?"table":"form"}}}return i}}var i={__esModule:true};i.OpenApi3Parser=o;return i});
|
|
2
|
+
//# sourceMappingURL=OpenApi3Parser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OpenApi3Parser.js","names":["OpenApiPropertyMapper","___OpenApiPropertyMapper","OpenApiRefResolver","___OpenApiRefResolver","OpenApi3Parser","parse","openApiRoot","targetDefinition","targetObject","components","schemas","keys","Object","length","replace","Error","$ref","resolved","resolve","Array","isArray","allOf","merged","subSchema","resolvedSub","deepMergeSchemas","schema","title","info","type","layoutStrategy","additionalProperties","mapPropertyMetadata","properties","requiredFields","required","mapProperties","items","definitions","key","mappedProp","ui","__exports","__esModule"],"sources":["OpenApi3Parser.ts"],"sourcesContent":["/**\n * @file OpenApi3Parser.ts\n * @description Native parser for OpenAPI 3.0.x specifications.\n */\n\nimport { IOpenApiParserPlugin } from \"../interfaces/IOpenApiParserPlugin\";\nimport { ISchema } from \"../../interfaces/ISchema\";\nimport { OpenApiPropertyMapper } from \"./OpenApiPropertyMapper\";\nimport { OpenApiRefResolver } from \"../OpenApiRefResolver\";\n\n/**\n * Parser plugin specifically designed for parsing OpenAPI 3.0.x schemas.\n * Responsible for translating OpenAPI 3.0 specific constructs into the MetaUI normalized schema.\n * \n * @public\n */\nexport class OpenApi3Parser implements IOpenApiParserPlugin {\n /**\n * Parses a raw OpenAPI 3.0 document into a normalized MetaUI ISchema tree.\n * Extracts definitions from components.schemas, normalizes properties, and recursively resolves composition (allOf).\n * \n * @param {any} openApiRoot The root JSON document.\n * @param {string} [targetDefinition] Optional specific schema to extract from components.schemas. If omitted, uses the first schema available.\n * @returns {ISchema} The synthesized MetaUI schema structure.\n * @throws {Error} If the target definition cannot be found in the provided Swagger document.\n */\n public parse(openApiRoot: unknown, targetDefinition?: string): ISchema {\n let targetObject = openApiRoot;\n\n if (!targetDefinition) {\n if (openApiRoot.components && openApiRoot.components.schemas) {\n const keys = Object.keys(openApiRoot.components.schemas);\n if (keys.length > 0) targetDefinition = keys[0];\n }\n }\n\n if (targetDefinition) {\n targetDefinition = targetDefinition.replace(\"#/components/schemas/\", \"\").replace(\"#/definitions/\", \"\");\n if (openApiRoot.components && openApiRoot.components.schemas && openApiRoot.components.schemas[targetDefinition]) {\n targetObject = openApiRoot.components.schemas[targetDefinition];\n } else {\n throw new Error(`[MetaUI OpenApi3Parser] Could not find target definition '${targetDefinition}' in components.schemas.`);\n }\n }\n\n if (targetObject.$ref) {\n const resolved = OpenApiRefResolver.resolve(targetObject.$ref, openApiRoot);\n if (resolved) {\n targetObject = { ...resolved, ...targetObject };\n }\n }\n\n if (Array.isArray(targetObject.allOf)) {\n let merged = { ...targetObject };\n delete merged.allOf;\n for (const subSchema of targetObject.allOf) {\n let resolvedSub = subSchema;\n if (subSchema.$ref) {\n resolvedSub = OpenApiRefResolver.resolve(subSchema.$ref, openApiRoot) || {};\n }\n merged = OpenApiPropertyMapper.deepMergeSchemas(merged, resolvedSub);\n }\n targetObject = merged;\n }\n\n const schema: ISchema = {\n title: targetObject.title || openApiRoot.info?.title || targetDefinition,\n type: targetObject.type === \"array\" ? \"array\" : \"object\",\n layoutStrategy: targetObject.type === \"array\" ? \"table\" : \"form\"\n };\n\n if (targetObject.additionalProperties) {\n if (targetObject.additionalProperties === true) {\n schema.additionalProperties = true;\n } else if (typeof targetObject.additionalProperties === \"object\") {\n schema.additionalProperties = OpenApiPropertyMapper.mapPropertyMetadata(targetObject.additionalProperties, \"value\", false, openApiRoot, \"3.0\");\n }\n }\n\n if (targetObject.properties) {\n const requiredFields = Array.isArray(targetObject.required) ? targetObject.required : [];\n schema.properties = OpenApiPropertyMapper.mapProperties(targetObject.properties, requiredFields, openApiRoot, \"3.0\");\n } else if (schema.type === \"array\" && targetObject.items) {\n schema.items = OpenApiPropertyMapper.mapPropertyMetadata(targetObject.items, \"items\", false, openApiRoot, \"3.0\");\n }\n\n if (openApiRoot.components && openApiRoot.components.schemas) {\n schema.definitions = {};\n const schemas = openApiRoot.components.schemas;\n for (const key of Object.keys(schemas)) {\n const mappedProp = OpenApiPropertyMapper.mapPropertyMetadata(schemas[key], key, false, openApiRoot, \"3.0\");\n schema.definitions[key] = {\n title: key,\n type: mappedProp.type === \"array\" ? \"array\" : \"object\",\n properties: mappedProp.properties,\n items: mappedProp.items,\n ui: mappedProp.ui,\n layoutStrategy: mappedProp.type === \"array\" ? \"table\" : \"form\"\n };\n }\n }\n\n return schema;\n }\n}\n"],"mappings":"6FAAA,MAOSA,EAAqBC,EAAA,+BACrBC,EAAkBC,EAAA,sBAQpB,MAAMC,EAUFC,MAAMC,EAAsBC,GAC/B,IAAIC,EAAeF,EAEnB,IAAKC,EAAkB,CACnB,GAAID,EAAYG,YAAcH,EAAYG,WAAWC,QAAS,CAC1D,MAAMC,EAAOC,OAAOD,KAAKL,EAAYG,WAAWC,SAChD,GAAIC,EAAKE,OAAS,EAAGN,EAAmBI,EAAK,EACjD,CACJ,CAEA,GAAIJ,EAAkB,CAClBA,EAAmBA,EAAiBO,QAAQ,wBAAyB,IAAIA,QAAQ,iBAAkB,IACnG,GAAIR,EAAYG,YAAcH,EAAYG,WAAWC,SAAWJ,EAAYG,WAAWC,QAAQH,GAAmB,CAC9GC,EAAeF,EAAYG,WAAWC,QAAQH,EAClD,KAAO,CACH,MAAM,IAAIQ,MAAM,6DAA6DR,4BACjF,CACJ,CAEA,GAAIC,EAAaQ,KAAM,CACnB,MAAMC,EAAWf,EAAmBgB,QAAQV,EAAaQ,KAAMV,GAC/D,GAAIW,EAAU,CACVT,EAAe,IAAKS,KAAaT,EACrC,CACJ,CAEA,GAAIW,MAAMC,QAAQZ,EAAaa,OAAQ,CACnC,IAAIC,EAAS,IAAKd,UACXc,EAAOD,MACd,IAAK,MAAME,KAAaf,EAAaa,MAAO,CACxC,IAAIG,EAAcD,EAClB,GAAIA,EAAUP,KAAM,CAChBQ,EAActB,EAAmBgB,QAAQK,EAAUP,KAAMV,IAAgB,CAAC,CAC9E,CACAgB,EAAStB,EAAsByB,iBAAiBH,EAAQE,EAC5D,CACAhB,EAAec,CACnB,CAEA,MAAMI,EAAkB,CACpBC,MAAOnB,EAAamB,OAASrB,EAAYsB,MAAMD,OAASpB,EACxDsB,KAAMrB,EAAaqB,OAAS,QAAU,QAAU,SAChDC,eAAgBtB,EAAaqB,OAAS,QAAU,QAAU,QAG9D,GAAIrB,EAAauB,qBAAsB,CACnC,GAAIvB,EAAauB,uBAAyB,KAAM,CAC5CL,EAAOK,qBAAuB,IAClC,MAAO,UAAWvB,EAAauB,uBAAyB,SAAU,CAC9DL,EAAOK,qBAAuB/B,EAAsBgC,oBAAoBxB,EAAauB,qBAAsB,QAAS,MAAOzB,EAAa,MAC5I,CACJ,CAEA,GAAIE,EAAayB,WAAY,CACzB,MAAMC,EAAiBf,MAAMC,QAAQZ,EAAa2B,UAAY3B,EAAa2B,SAAW,GACtFT,EAAOO,WAAajC,EAAsBoC,cAAc5B,EAAayB,WAAYC,EAAgB5B,EAAa,MAClH,MAAO,GAAIoB,EAAOG,OAAS,SAAWrB,EAAa6B,MAAO,CACtDX,EAAOW,MAAQrC,EAAsBgC,oBAAoBxB,EAAa6B,MAAO,QAAS,MAAO/B,EAAa,MAC9G,CAEA,GAAIA,EAAYG,YAAcH,EAAYG,WAAWC,QAAS,CAC1DgB,EAAOY,YAAc,CAAC,EACtB,MAAM5B,EAAUJ,EAAYG,WAAWC,QACvC,IAAK,MAAM6B,KAAO3B,OAAOD,KAAKD,GAAU,CACpC,MAAM8B,EAAaxC,EAAsBgC,oBAAoBtB,EAAQ6B,GAAMA,EAAK,MAAOjC,EAAa,OACpGoB,EAAOY,YAAYC,GAAO,CACtBZ,MAAOY,EACPV,KAAMW,EAAWX,OAAS,QAAU,QAAU,SAC9CI,WAAYO,EAAWP,WACvBI,MAAOG,EAAWH,MAClBI,GAAID,EAAWC,GACfX,eAAgBU,EAAWX,OAAS,QAAU,QAAU,OAEhE,CACJ,CAEA,OAAOH,CACX,EACH,IAAAgB,EAAA,CAAAC,WAAA,MAAAD,EAAAtC,iBAAA,OAAAsC,CAAA","ignoreList":[]}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file OpenApi3Parser.ts
|
|
3
|
+
* @description Native parser for OpenAPI 3.0.x specifications.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import { IOpenApiParserPlugin } from "../interfaces/IOpenApiParserPlugin";
|
|
7
|
+
import { ISchema } from "../../interfaces/ISchema";
|
|
8
|
+
import { OpenApiPropertyMapper } from "./OpenApiPropertyMapper";
|
|
9
|
+
import { OpenApiRefResolver } from "../OpenApiRefResolver";
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Parser plugin specifically designed for parsing OpenAPI 3.0.x schemas.
|
|
13
|
+
* Responsible for translating OpenAPI 3.0 specific constructs into the MetaUI normalized schema.
|
|
14
|
+
*
|
|
15
|
+
* @public
|
|
16
|
+
*/
|
|
17
|
+
export class OpenApi3Parser implements IOpenApiParserPlugin {
|
|
18
|
+
/**
|
|
19
|
+
* Parses a raw OpenAPI 3.0 document into a normalized MetaUI ISchema tree.
|
|
20
|
+
* Extracts definitions from components.schemas, normalizes properties, and recursively resolves composition (allOf).
|
|
21
|
+
*
|
|
22
|
+
* @param {any} openApiRoot The root JSON document.
|
|
23
|
+
* @param {string} [targetDefinition] Optional specific schema to extract from components.schemas. If omitted, uses the first schema available.
|
|
24
|
+
* @returns {ISchema} The synthesized MetaUI schema structure.
|
|
25
|
+
* @throws {Error} If the target definition cannot be found in the provided Swagger document.
|
|
26
|
+
*/
|
|
27
|
+
public parse(openApiRoot: unknown, targetDefinition?: string): ISchema {
|
|
28
|
+
let targetObject = openApiRoot;
|
|
29
|
+
|
|
30
|
+
if (!targetDefinition) {
|
|
31
|
+
if (openApiRoot.components && openApiRoot.components.schemas) {
|
|
32
|
+
const keys = Object.keys(openApiRoot.components.schemas);
|
|
33
|
+
if (keys.length > 0) targetDefinition = keys[0];
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
if (targetDefinition) {
|
|
38
|
+
targetDefinition = targetDefinition.replace("#/components/schemas/", "").replace("#/definitions/", "");
|
|
39
|
+
if (openApiRoot.components && openApiRoot.components.schemas && openApiRoot.components.schemas[targetDefinition]) {
|
|
40
|
+
targetObject = openApiRoot.components.schemas[targetDefinition];
|
|
41
|
+
} else {
|
|
42
|
+
throw new Error(`[MetaUI OpenApi3Parser] Could not find target definition '${targetDefinition}' in components.schemas.`);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
if (targetObject.$ref) {
|
|
47
|
+
const resolved = OpenApiRefResolver.resolve(targetObject.$ref, openApiRoot);
|
|
48
|
+
if (resolved) {
|
|
49
|
+
targetObject = { ...resolved, ...targetObject };
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
if (Array.isArray(targetObject.allOf)) {
|
|
54
|
+
let merged = { ...targetObject };
|
|
55
|
+
delete merged.allOf;
|
|
56
|
+
for (const subSchema of targetObject.allOf) {
|
|
57
|
+
let resolvedSub = subSchema;
|
|
58
|
+
if (subSchema.$ref) {
|
|
59
|
+
resolvedSub = OpenApiRefResolver.resolve(subSchema.$ref, openApiRoot) || {};
|
|
60
|
+
}
|
|
61
|
+
merged = OpenApiPropertyMapper.deepMergeSchemas(merged, resolvedSub);
|
|
62
|
+
}
|
|
63
|
+
targetObject = merged;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
const schema: ISchema = {
|
|
67
|
+
title: targetObject.title || openApiRoot.info?.title || targetDefinition,
|
|
68
|
+
type: targetObject.type === "array" ? "array" : "object",
|
|
69
|
+
layoutStrategy: targetObject.type === "array" ? "table" : "form"
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
if (targetObject.additionalProperties) {
|
|
73
|
+
if (targetObject.additionalProperties === true) {
|
|
74
|
+
schema.additionalProperties = true;
|
|
75
|
+
} else if (typeof targetObject.additionalProperties === "object") {
|
|
76
|
+
schema.additionalProperties = OpenApiPropertyMapper.mapPropertyMetadata(targetObject.additionalProperties, "value", false, openApiRoot, "3.0");
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
if (targetObject.properties) {
|
|
81
|
+
const requiredFields = Array.isArray(targetObject.required) ? targetObject.required : [];
|
|
82
|
+
schema.properties = OpenApiPropertyMapper.mapProperties(targetObject.properties, requiredFields, openApiRoot, "3.0");
|
|
83
|
+
} else if (schema.type === "array" && targetObject.items) {
|
|
84
|
+
schema.items = OpenApiPropertyMapper.mapPropertyMetadata(targetObject.items, "items", false, openApiRoot, "3.0");
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
if (openApiRoot.components && openApiRoot.components.schemas) {
|
|
88
|
+
schema.definitions = {};
|
|
89
|
+
const schemas = openApiRoot.components.schemas;
|
|
90
|
+
for (const key of Object.keys(schemas)) {
|
|
91
|
+
const mappedProp = OpenApiPropertyMapper.mapPropertyMetadata(schemas[key], key, false, openApiRoot, "3.0");
|
|
92
|
+
schema.definitions[key] = {
|
|
93
|
+
title: key,
|
|
94
|
+
type: mappedProp.type === "array" ? "array" : "object",
|
|
95
|
+
properties: mappedProp.properties,
|
|
96
|
+
items: mappedProp.items,
|
|
97
|
+
ui: mappedProp.ui,
|
|
98
|
+
layoutStrategy: mappedProp.type === "array" ? "table" : "form"
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
return schema;
|
|
104
|
+
}
|
|
105
|
+
}
|