From cc7e542825f555fbf70fdef655ff809e5e61fc19 Mon Sep 17 00:00:00 2001 From: Vikas Pachdha Date: Fri, 26 Jun 2020 18:54:05 +0200 Subject: [PATCH] AssetExport: Dump imports to metadata Task-number: QDS-1556 Change-Id: I020515e792cd12372ecef842eac01862a096543b Reviewed-by: Thomas Hartmann --- .../assetexporterplugin/componentexporter.cpp | 13 ++++++++++++- .../assetexporterplugin/componentexporter.h | 1 + 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/plugins/qmldesigner/assetexporterplugin/componentexporter.cpp b/src/plugins/qmldesigner/assetexporterplugin/componentexporter.cpp index b661830b266..0910819fb97 100644 --- a/src/plugins/qmldesigner/assetexporterplugin/componentexporter.cpp +++ b/src/plugins/qmldesigner/assetexporterplugin/componentexporter.cpp @@ -75,6 +75,7 @@ void Component::exportComponent() { QTC_ASSERT(m_rootNode.isValid(), return); m_json = nodeToJson(m_rootNode); + addImports(); } ModelNodeParser *Component::createNodeParser(const ModelNode &node) const @@ -121,7 +122,17 @@ QJsonObject Component::nodeToJson(const ModelNode &node) if (!children.isEmpty()) jsonObject.insert("children", children); - return jsonObject; + return jsonObject; +} + +void Component::addImports() +{ + QJsonArray importsArray; + for (const Import &import : m_rootNode.model()->imports()) + importsArray.append(import.toString()); + + if (!importsArray.empty()) + m_json.insert(Constants::ImportsTag, importsArray); } diff --git a/src/plugins/qmldesigner/assetexporterplugin/componentexporter.h b/src/plugins/qmldesigner/assetexporterplugin/componentexporter.h index 3668f372bfb..98d1e324bd4 100644 --- a/src/plugins/qmldesigner/assetexporterplugin/componentexporter.h +++ b/src/plugins/qmldesigner/assetexporterplugin/componentexporter.h @@ -83,6 +83,7 @@ public: private: ModelNodeParser* createNodeParser(const ModelNode &node) const; QJsonObject nodeToJson(const ModelNode &node); + void addImports(); private: AssetExporter& m_exporter;