Modules as Overpanels

Updated:

Launching an extension module in an overpanel

One module can launch another into the overpanel. To do this, we use the showOverpanel capability.

Configuring Your Module

Before the Tecton system will be able to launch a module into the overpanel, it must be configured properly. To simplify configuring your module as an overpanel, we recommend using the Additional Entrypoint and Overpanel Module guides available in the SDK documentation.

The end-result of this process will accomplish a couple things:

  1. If you create an additional entrypoint ("module"), it will be listed in the modules object of the feature configuration file.
  2. The overpanel property at the root of the module's object will be set to True. (This does not mean the module can only be displayed in the overpanel, just that it is allowed to do so)
  3. The module will be described in the configuredOverpanels object. The configuredOverpanels object declares the modules that are able to be shown in an overpanel.

See below for a complete example.

{
  "MyBasicExtension": {
    "core": False,
    "modules": {
      "Main": {
        "url": "http://www.myextension.com/main.html",
        "meta": {
          "type": {
            "shape": "Content",
            "context": "None"
          }
        }
      },
      "BasicOverpanel": {
        "url": "https://www.myextension.com/overpanel.html",
        "overpanel": True,
        "meta": {
          "type": {
            "shape": "Content",
            "context": "None"
          }
        }
      }
    },
    "configuredOverpanels": {
      "MyBasicOverpanel": {
        "moduleName": "BasicOverpanel"
      }
    }
  }
}

Now, if we want to display our module in the overpanel, we can do so like this:

tecton.actions.showOverpanel('MyBasicOverpanel');

Overpanel Options

Additionally, you can modify how your overpanel module is presented in the platform by adding an options object to any module described in the configuredOverpanels object. These values affect the overpanel just like the options available in the showOverpanel capability. (Enabled in UUX 4.6.1.2)

The options object passed as an argument to the showOverpanel capability will override any corresponding values in the options object of the configuration file.

{
  "My Basic Extension": {
  
    ...
 
    "configuredOverpanels": {
      "MyBasicOverpanel": {
        "moduleName": "BasicOverpanel"
        "options": {
          "fullWidth": True,
          "size": "large",
          "height": "900px",
          "testId": "my-overpanel"
        }
      }
    }
  }
}

Public Overpanels

By default, overpanels can only be opened within the extension they are configured in. If you know that multiple extensions will be installed in an environment together, you can opt-in to allowing your overpanel to be accessible/opened from other extensions. In the config, you will need to mark your overpanel as "public". (Enabled in UUX 4.6.1.8)

{
  "My Basic Extension": {
  
    ...
 
    "configuredOverpanels": {
      "MyBasicOverpanel": {
        "moduleName": "BasicOverpanel"
        "public": True
      }
    }
  }
}

Release Notes

Enable options in feature configuration file

Enable public overpanels