subapp definition

A subapp descriptor describes a subapp. A subapp is typically rendered as a tab inside an app. The descriptor defines the classes that read the configuration and implement the subapp.

Subapp descriptor

Here is an example of a main subapp inside a helloworld app. Create subapp configuration under the subApps folder.

ui-helloworld-app/apps/helloworld.yaml
appClass: info.magnolia.ui.app.helloworld.HelloWorldApp
class: info.magnolia.ui.api.app.registry.ConfiguredAppDescriptor
icon: icon-app
label: Hello World
subApps:
  main: 
    subAppClass: info.magnolia.ui.app.helloworld.main.HelloWorldMainSubApp
    class: info.magnolia.ui.api.app.registry.ConfiguredSubAppDescriptor
    label: Hello!
Node nameValue

 
modules


 
ui-helloworld-app


 
apps


 
helloworld


 
subApps


 
main


 
class

info.magnolia.ui.api.app.registry.ConfiguredSubAppDescriptor

 
label

Hello!

 
subAppClass

info.magnolia.ui.app.helloworld.main.HelloWorldMainSubApp

Properties:

<subapp name>

required

Subapp node name. This is the internal ID of the subapp. Used to reference the subapp for example in URL fragments.

class

required, default is info.magnolia.ui.api.app.registry.ConfiguredSubAppDescriptor

Subapp descriptor class that reads the configuration. The class must implement the SubAppDescriptor interface. Examples of such classes are ConfiguredSubAppDescriptor and ConfiguredContentSubAppDescriptor. Use the fully-qualified name of the class.

subAppClass

required

Subapp business logic class. The class must implement the SubApp interface which displays the subapp to the user in a tab.

closable

optional , default is true

Whether the subapp can be closed. When set to false no close icon (X) is displayed.

icon

optional

CSS class that identifies an icon font used on the app tab. For available names see Icons.

label

optional

Text or message bundle key. Displayed in the subapp tab.

(warning) The order in which you configure subapps is important. The first subapp will be the default subapp. It is started first.

Browser subapp descriptor

Browser subapp is a specialization of the basic subapp, provided by the content app framework. The browser subapp allows you to view and organize content items in a tree, list and thumbnail view. The browser subapp descriptor is similar to the basic subapp descriptor but the classes are different.

subApps:
  browser: 
    subAppClass: info.magnolia.ui.contentapp.browser.BrowserSubApp
    class: info.magnolia.ui.contentapp.browser.BrowserSubAppDescriptor
Node nameValue

 
subApps


 
browser


 
class

info.magnolia.ui.contentapp.browser.BrowserSubAppDescriptor

 
subAppClass

info.magnolia.ui.contentapp.browser.BrowserSubApp

Detail subapp descriptor

Detail subapp is also part of the content app framework. It creates and edits the content items listed in the browser subapp.

subApps:
  detail: 
    subAppClass: info.magnolia.ui.contentapp.detail.DetailSubApp
    class: info.magnolia.ui.contentapp.detail.DetailSubAppDescriptor
Node nameValue

 
subApps


 
detail


 
class

info.magnolia.ui.contentapp.detail.DetailSubAppDescriptor

 
subAppClass

info.magnolia.ui.contentapp.detail.DetailSubApp


#trackbackRdf ($trackbackUtils.getContentIdentifier($page) $page.title $trackbackUtils.getPingUrl($page))