github.com/turbot/steampipe@v1.7.0-rc.0.0.20240517123944-7cef272d4458/ui/dashboard/src/utils/card.ts (about)

     1  import { classNames } from "./styles";
     2  
     3  const getIconClasses = (type) => {
     4    const coloredClasses = "text-3xl text-white opacity-40 print:opacity-100";
     5    switch (type) {
     6      case "alert":
     7        return classNames(coloredClasses, "print:text-alert");
     8      case "info":
     9        return classNames(coloredClasses, "print:text-info");
    10      case "ok":
    11        return classNames(coloredClasses, "print:text-ok");
    12      case "severity":
    13        return classNames(coloredClasses, "print:text-severity");
    14      default:
    15        return "text-black-scale-4 text-3xl";
    16    }
    17  };
    18  
    19  const getIconForType = (type, icon) => {
    20    if (!type && !icon) {
    21      return null;
    22    }
    23  
    24    if (icon) {
    25      return icon;
    26    }
    27  
    28    switch (type) {
    29      case "alert":
    30        return "materialsymbols-solid:error";
    31      case "ok":
    32        return "materialsymbols-solid:check_circle";
    33      case "info":
    34        return "materialsymbols-solid:info";
    35      case "severity":
    36        return "materialsymbols-solid:warning";
    37      default:
    38        return null;
    39    }
    40  };
    41  
    42  const getTextClasses = (type) => {
    43    switch (type) {
    44      case "alert":
    45        return "text-alert-inverse print:text-foreground";
    46      case "info":
    47        return "text-info-inverse print:text-foreground";
    48      case "ok":
    49        return "text-ok-inverse print:text-foreground";
    50      case "severity":
    51        return "text-white print:text-foreground";
    52      default:
    53        return null;
    54    }
    55  };
    56  
    57  const getWrapperClasses = (type) => {
    58    switch (type) {
    59      case "alert":
    60        return "bg-alert border-alert print:border-2 print:bg-white";
    61      case "info":
    62        return "bg-info border-info print:border-2 print:bg-white";
    63      case "ok":
    64        return "bg-ok border-ok print:border-2 print:bg-white";
    65      case "severity":
    66        return "bg-severity border-severity print:border-2 print:bg-white";
    67      default:
    68        return "bg-dashboard-panel shadow-sm border-gray-400 print:border-2 print:shadow-none print:bg-white";
    69    }
    70  };
    71  
    72  export { getIconClasses, getIconForType, getTextClasses, getWrapperClasses };