When migrating from code-based or Chameleon-based widgets to Studio Widgets, widget identifiers change.  To support importing page and theme exports containing references to older versions of widgets, a widget import adjustment plugin can be defined.

Widget import adjustment plugins are allowed to adjust widget identifier references and raw configuration data read from export files before the widget is imported, configured, and saved.

Widget import adjustment plugins are defined by IContentFragmentImportAdjustment-based plugins.  The full name of this type is Telligent.Evolution.Extensibility.UI.Version1.IContentFragmentImportAdjustment and it exists within the Telligent.Evolution.Components assembly.  In addition to the base IPlugin members, it adds the following:

void Adjust(ref string contentFragmentId, ref string configuration)

This method is called when a widget identifier and its raw configuration has been read during an import process, but before the widget has been attempted to be loaded and configured.  This method should make any necessary adjustments to both the widget's identifier and its configuration.