As a reminder, when you take advantage of new plugin features and APIs, you’ll need to either:
- Update your plugin’s
minHostVersionso that the plugin doesn’t install or appear in the Plugin Manager to users on older, incompatible versions of XD, or
- Check the
hostVersionat runtime, and degrade your plugin’s experience if the new APIs aren’t available to the current user.
Since taking advantage of the new Panel APIs requires a manifest change, which is checked at load time, #2 above is not an option.
While the majority of XD users automatically update to the latest version of XD, there are some users - especially in the enterprise - who choose not to upgrade.
We’ve put together a guide for developers who want to continue supporting an existing modal plugin AND take advantage of the new Panel APIs.
Guide on plugin IDs and migrating existing plugins to panels
The following guide will explain how you can maintain an older version of your plugin in the Plugin Manager for users on older versions of XD, while directing users who do upgrade to a new Panel version of your plugin.
In addition to porting your code to support panels:
- On the Adobe I/O Console, create a new plugin project for your panel plugin and get the project’s plugin ID.
- In your manifest.json for the panel plugin:
- Use the new plugin ID you received from the Adobe I/O Console
- Set the
- Give your plugin a new unique name that users will recognize; for example, “My Plugin 2”.
- On the Adobe I/O Console, submit your new panel plugin for review and publishing.
- (Optional) Let users of your older non-panel plugin know a new version is available as a separate download from the Plugin Manager.
- What users of XD 20 and below will experience:
- No change. Users can continue to use your old plugin as-is, discover it on the Plugin Manager, and get updates to that version of the plugin if you ship any.
- What users of XD 21 and above will experience:
- If you don’t update your old plugin to prompt users to install the new version, the user will not know a new version is available.
- Either way, the user will need to install the new panel plugin via the Plugin Manager.
- Assuming you haven’t set a
maxVersionin your modal plugin’s manifest, the old plugin continues to work as usual.
Q: Let’s say we continue using the same plugin ID for the panel version. What happens to my plugin listing in the plugin manager in older versions of XD?
A: The plugin goes away because the plugin’s
minVersion is now XD 21.
Q: Is there a chance that two versions of our plugin will be listed in the plugin manager at the same time?
A: Only if you have two plugins with different plugin IDs that support the same version of XD. Say for example, if your modal plugin supports XD 14–21 and your panel supports XD 21 and up, XD 21 users will see both. Note that the new plugin would have a distinct name, like “My Plugin 2” so users can differentiate.
Q: Why can’t we use the same plugin name for both versions?