Terra Application Utility

2.60.1 · active · verified Sun Apr 19

The Terra Application Utility library, currently at version 2.60.1, provides React components specifically designed for disclosing utility menus within applications built using the Cerner Terra design system. It offers two distinct versions: a 'header' variant for integration with `terra-application-header-layout` and a 'menu' variant for use with `terra-application-menu-layout`. This structured approach ensures consistent UI patterns and behaviors for common application functionalities such as user settings, help, notifications, or profile management. While a specific release cadence is not detailed in the provided documentation, the package's versioning indicates active development and maintenance within the broader Terra framework. Its key differentiator is its tight integration into the Terra ecosystem, providing pre-styled and functional components that adhere to Cerner's established design language and accessibility standards, reducing development overhead for Terra-based applications.

Common errors

Warnings

Install

Imports

Quickstart

Demonstrates a basic implementation of `ApplicationUtility.Menu` with state management for opening and closing, including placeholder content.

import React, { useState } from 'react';
import ApplicationUtility from 'terra-application-utility';
import Button from 'terra-button'; // Assuming terra-button for demonstration

const MyUtilityMenu = () => {
  const [isOpen, setIsOpen] = useState(false);

  const handleToggle = () => {
    setIsOpen(!isOpen);
  };

  const handleClose = () => {
    setIsOpen(false);
  };

  return (
    <ApplicationUtility.Menu
      id="my-app-utility-menu"
      variant="menu"
      isOpen={isOpen}
      title="User Menu"
      onChange={handleToggle}
      onClose={handleClose}
      button={(<Button onClick={handleToggle} text="Open User Menu" />)}
    >
      {/* Example utility items */}
      <div style={{ padding: '15px' }}>
        <div>Settings</div>
        <div>Help</div>
        <div onClick={() => alert('Logged out!')}>Logout</div>
      </div>
    </ApplicationUtility.Menu>
  );
};

export default MyUtilityMenu;

view raw JSON →