core2-jvm (latest)
core2-jvm (latest)core-jvm
  • Home
  • Features
  • Spec
  • Guides
  • Sandbox
  • Step Studio
  • Step
    • Action
    • External
    • Help
    • Link Handler
    • Navigation
    • Persist Async
    • Polling
    • Refresh On Change
    • Schema On Change
    • Step Error
    • Suggestions
    • Summary
    • Toolbar
    • Upload
    • Validate Async
    • Schema
    • All Of Schema
    • Array Schema
    • Blob Schema
    • Boolean Schema
    • Const Schema
    • Integer Schema
    • Number Schema
    • Object Schema
    • One Of Schema
    • String Schema
    • Layout
    • Alert Layout
    • Box Layout
    • Button Layout
    • Columns Layout
    • Decision Layout
    • Divider Layout
    • Form Layout
    • Heading Layout
    • Image Layout
    • Instructions Layout
    • List Layout
    • Loading Indicator Layout
    • Markdown Layout
    • Media Layout
    • Modal Layout
    • Paragraph Layout
    • Progress Layout
    • Review Layout
    • Search Layout
    • Section Layout
    • Status List Layout
    • Tabs Layout
    • Upsell Layout
    • Behavior
    • Action Behavior
    • Copy Behavior
    • Dismiss Behavior
    • Link Behavior
    • Modal Behavior
    • Refresh Behavior
    • Subflow Behavior
    • Subflow
    • Dynamic Launch Config
    • Launch Config
    • Modal Presentation
    • Native Launch Config
    • Presentation
    • Push Presentation
    • Action Response Body
    • Error Response Body
    • Flow Response
    • Modal Response Body
    • No Op Response Body
    • Search Initial Layout Config
    • Search Initial Results Config
    • Search Initial State
    • Search Layout Response Body
    • Search Response
    • Search Response Body
    • Search Result
    • Search Results Response Body
    • Subflow Response Body
    • Additional Info
    • Align
    • Autocapitalization Type
    • Autocomplete Token
    • Context
    • Icon
    • Image
    • Inline Alert
    • Media
    • Native Capabilities
    • Request
    • Size
    • Supporting Values
    • Control
    • Tag

Tabs Layout

Android - 8.116.0 iOS - 8.111 Web - 4.15.0

A container divided into groups of layout components with each group being visible upon user-selection

tabs {
    tabs {
        tab {
            title = "Unpaid"
            components {
                decision {
                    options {
                        option {
                            media = Media.Avatar.build {
                                content { uri { uri = "urn:wise:icons:clock" } }
                            }
                            title = "Joe Bloggs"
                            description = "15 GBP"
                            behavior = ActionBehavior.build {
                                action {
                                    url = "/pay"
                                }
                            }
                        }
                        option {
                            media = Media.Avatar.build {
                                content { uri { uri = "urn:wise:icons:clock" } }
                            }
                            title = "Mary Smith"
                            description = "20 EUR"
                            behavior = ActionBehavior.build {
                                action {
                                    url = "/pay"
                                }
                            }
                        }
                    }
                }
            }
        }
        tab {
            title = "Paid"
            components {
                decision {
                    options {
                        option {
                            media = Media.Avatar.build {
                                content { uri { uri = "urn:wise:icons:check" } }
                            }
                            title = "Jane Doe"
                            description = "10 GBP"
                            behavior = ActionBehavior.build {
                                action {
                                    url = "/view"
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}

Properties

PropertyTypeRequiredDescription
analyticsIdStringNoAn optional identifier to be used in analytics tracking.
controlStringNoSpecify a particular control to use to represent the layout. If the control is unknown, it will be ignored.
marginSizeNoThe vertical margin to apply after this component. Defaults to md.
tabsArray<TabsLayout.Tab>YesThe tabs to be selected

tags

Array<String>

No

An optional list of identifiers used to configure renderers.

Android - 8.131.0 iOS - 8.125 Web - 4.33.0

typeStringYesIt must be 'tabs'.

Related Types

Tab

Represents a single Tab with a title and list of components

Properties

PropertyTypeRequiredDescription

analyticsId

String

No

An optional identifier to be used in analytics tracking.

Android - 8.118.0 iOS - 8.114 Web - 4.15.6

componentsArray<Layout>YesThe components to be displayed when this tab is selected.

tag

String

No

An optional identifier to be used in custom renderers.

⚠️ Deprecated - Please use 'tags' instead

tags

Array<String>

No

An optional list of identifiers used to configure renderers.

Android - 8.131.0 iOS - 8.125 Web - 4.33.0

titleStringYesA user-facing title.

Controls

chips

Android - 8.116.0 iOS - 8.111 Web - 4.15.0

Displays the tab selection as a chip group.

tabs {
    control = "chips"
    tabs {
        tab {
            title = "Transactions"
            components {
                list {
                    title = "Today"
                    items {
                        item {
                            media = Media.Avatar.build {
                                content { uri { uri = "urn:wise:countries:KR" } }
                            }
                            title = "Soda Pop"
                            supportingValues {
                                value = "1,500 KWR"
                            }
                        }
                        item {
                            media = Media.Avatar.build {
                                content { uri { uri = "urn:wise:icons:confetti?=background=sentiment-warning" } }
                            }
                            title = "Saja Boys Album Vinyl"
                            supportingValues {
                                value = "3,500 KWR"
                            }
                        }
                    }
                }
            }
        }
        tab {
            title = "Quick Options"
            components {
                decision {
                    control = "spotlight"
                    options {
                        option {
                            media = Media.Avatar.build {
                                content { uri { uri = "urn:wise:icons:upward-graph?=background-color=brand-bright-green&foreground-color=base-dark" } }
                            }
                            tag = "spotlight-active"
                            title = "Interest active"
                            description = "3.51% variable rate"
                            behavior = ActionBehavior.build {
                                action {
                                    url = "/variable-rate"
                                }
                            }
                        }
                        option {
                            media = Media.Avatar.build {
                                content { uri { uri = "urn:wise:icons:auto-convert?=background-color=base-light" } }
                            }
                            title = "Auto conversions"
                            description = "Convert money between your currencies at your chosen rate."
                            behavior = ActionBehavior.build {
                                action {
                                    url = "/auto-conversion"
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}

segmented

Android - 8.116.0 iOS - 8.111 Web - 4.15.0

Displays the tab selection as a segmented control.

tabs {
    control = Control.Layout.Tabs.SEGMENTED
    tabs {
        tab {
            title = "Send"
            components {
                paragraph {
                    text = "Send money to over 80 countries worldwide."
                }
            }
        }
        tab {
            title = "Receive"
            components {
                paragraph {
                    text = "Get paid in 10+ currencies with your account details."
                }
            }
        }
    }
}