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;