Skip to content

[Studio] Reuse the resolver step and mapping dialog outside the importer's editor - #707

Draft
markus-moser wants to merge 11 commits into
2026.xfrom
studio-reusable-mapping-steps
Draft

markus-moser wants to merge 11 commits into
2026.xfrom
studio-reusable-mapping-steps

Conversation

@markus-moser

@markus-moser markus-moser commented Oct 1, 2026 •

Copy link
Copy Markdown
Contributor

Lets another bundle host the importer's resolver step and mapping dialog in its own form, on data that is not a stored import configuration.

  • The mapping step, its preview hooks and the advanced mapping dialog read from a mapping source (React context) instead of a configuration name. The importer's own editor wraps its data setup tab in a stored-configuration source, so its requests are unchanged.
  • PostedMappingSource serves given columns and records and gets the transformation type and result previews from two new endpoints that take the posted mapping (POST /mapping/transformation-result-type, POST /mapping/transformation-result, permission plugin_datahub_config).
  • ResolverStep, AdvancedMappingModal, PostedMappingSource and the two form converters are bound in Studio's container under DataImporter/Components/* and DataImporter/Utils/*. ResolverStep no longer takes the unused configName. The dialog loads the default class attributes itself when its host has none.
  • Tests: jest (a jsdom project next to the existing node one) for both sources, the mapping step and dialog on a posted source, the two endpoints' requests and the container bindings; unit tests for the posted and stored transformation previews.

🤖 Generated with Claude Code

Part of pimcore/product-management#1577

markus-moser and others added 5 commits October 1, 2026 12:30
…editor

The mapping step reads its source data from a mapping source instead of a
stored configuration name. The importer's own editor passes the stored
configuration; other bundles post their mapping and records and get the
previews from two new endpoints. The steps and the form converters are bound
in Studio's container so other bundles can host them in their own forms.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…ing limits

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@markus-moser markus-moser changed the title [Studio] Reuse the resolver and mapping steps outside the importer's editor [Studio] Reuse the resolver step and mapping dialog outside the importer's editor Oct 1, 2026
markus-moser and others added 6 commits October 1, 2026 12:28
…s in CI

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…ping-steps

Studio tests run on jest, as set up on 2026.x: the mapping source, step and
dialog tests move next to their source and run in a jsdom project; vitest is
dropped.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@sonarqubecloud

sonarqubecloud Bot commented Oct 7, 2026

Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant