...

Source file src/oss.terrastruct.com/d2/d2themes/d2themescatalog/catalog.go

Documentation: oss.terrastruct.com/d2/d2themes/d2themescatalog

     1  package d2themescatalog
     2  
     3  import (
     4  	"fmt"
     5  	"strings"
     6  
     7  	"oss.terrastruct.com/d2/d2themes"
     8  )
     9  
    10  var LightCatalog = []d2themes.Theme{
    11  	NeutralDefault,
    12  	NeutralGrey,
    13  	FlagshipTerrastruct,
    14  	CoolClassics,
    15  	MixedBerryBlue,
    16  	GrapeSoda,
    17  	Aubergine,
    18  	ColorblindClear,
    19  	VanillaNitroCola,
    20  	OrangeCreamsicle,
    21  	ShirleyTemple,
    22  	EarthTones,
    23  	EvergladeGreen,
    24  	ButteredToast,
    25  	Terminal,
    26  	TerminalGrayscale,
    27  	Origami,
    28  }
    29  
    30  var DarkCatalog = []d2themes.Theme{
    31  	DarkMauve,
    32  	DarkFlagshipTerrastruct,
    33  }
    34  
    35  func Find(id int64) d2themes.Theme {
    36  	for _, theme := range LightCatalog {
    37  		if theme.ID == id {
    38  			return theme
    39  		}
    40  	}
    41  
    42  	for _, theme := range DarkCatalog {
    43  		if theme.ID == id {
    44  			return theme
    45  		}
    46  	}
    47  
    48  	return d2themes.Theme{}
    49  }
    50  
    51  func CLIString() string {
    52  	var s strings.Builder
    53  
    54  	s.WriteString("Light:\n")
    55  	for _, t := range LightCatalog {
    56  		s.WriteString(fmt.Sprintf("- %s: %d\n", t.Name, t.ID))
    57  	}
    58  
    59  	s.WriteString("Dark:\n")
    60  	for _, t := range DarkCatalog {
    61  		s.WriteString(fmt.Sprintf("- %s: %d\n", t.Name, t.ID))
    62  	}
    63  
    64  	return s.String()
    65  }
    66  

View as plain text