Plugin Lifecycle

Plugin manifests are loaded on application initialize after the user has logged in. Because of this, translations are loaded immediately after manifests have been returned from the server. At this point, your plugin has been registered with the Act! plugin manager and the channel for communication has been opened utilizing the @act/plugins library. All navigational items (i.e. view type extensions) are registered and loaded for the Act! application.

Plugins function within iframes and WebWorkers. Act! loads your plugin application in an iframe within the view/context that is described in the manifest. Therefore, your plugin is initialized on the page load in which the manifest is described. For example,

If your manifest defines a view extension, Act! initializes your plugin application when the user has clicked on the navigation menu item to route to your plugin view. The iframe will then continue it's lifecycle based on the browser functionality. Act! will load messaging (i.e. the channel that communicates between the Act! application and your plugin) after the iframe has loaded using the loaded event hook.

Update Flow

The plugin update flow is simple. When a new version of your plugin is deployed and Act! detects the new version (this is done on application load), then the Act! application will de-register the current version of your plugin. Then, the new version that was loaded via the manifest is registered to the Act! application following the same flow as above.

Web Components