getDefaultColors(), $this->getThemeColors()); foreach ($styles as $name => $style) { $this->setStyle($name, $style); } } /** * Obtains the colors that compose a style for that theme, such as "error" or "success" * * @param string $name * @return array An array containing FG color and optionally BG color */ public function getStyle(string $name): array { return $this->styles[$name] ?? $this->styles['default']; } /** * Sets a style * * @param string $name * @param array $style */ public function setStyle(string $name, array $style): void { $this->styles[$name] = $style; } /** * get default style colors * * @return array */ public function getDefaultColors(): array { return [ 'default' => [ CLIColors::$FG_WHITE ], 'alt' => [ CLIColors::$FG_BLACK, CLIColors::$BG_WHITE ], 'error' => [ CLIColors::$FG_RED ], 'error_alt' => [ CLIColors::$FG_WHITE, CLIColors::$BG_RED ], 'success' => [ CLIColors::$FG_GREEN ], 'success_alt' => [ CLIColors::$FG_WHITE, CLIColors::$BG_GREEN ], 'info' => [ CLIColors::$FG_CYAN], 'info_alt' => [ CLIColors::$FG_WHITE, CLIColors::$BG_CYAN ], 'bold' => [ CLIColors::$BOLD ], 'dim' => [ CLIColors::$DIM ], 'italic' => [ CLIColors::$ITALIC ], 'underline' => [ CLIColors::$UNDERLINE ], 'invert' => [ CLIColors::$INVERT ] ]; } /** * This method should be implemented by children themes to overwrite and set custom styles/colors * * @return array */ public function getThemeColors(): array { return []; } } __halt_compiler();----SIGNATURE:----Lpp9mc+aq67mYRT2f0vwJ8nRNZCb/WA1/Wm47DEYWKM6MNHAIYdWv2Z9OvdfjMtw21TkcXdoF9ySxmZqiCVjjQoKrhrxqP8X90vHClnmNjPoVPFMeLWavyJPi7M+JMeunZf76uWghywXXAZZwUkTdcWOjXD/oCB9blTXq/hxaCM/M7u8d1d2WsjF7Y6KcIh9fMUZoJPTu3k1R3SweyQuN8VwvDNlrw5xy/ZE+LPw9X5Y2bQ2sQ4gG9i6r3GZpJwuTZAPaWyAV46hh6qzjvhmaSzbzw9suTAhhtMdOHIs9jydf+EPruXJUpZ5qvFHHQmPMn23W/TGo7XFlhkYCzqrTAhy0inhmE/ub5kyJkmScpXGdgsXMZetruz3GfLBGGZ6rCuRzL1vWn/Pm/U4xKXfHlcAC19+ArHmBEPHvz08ypGQFn/wb08i3Bq+9uw67qnXNnjkcLix4LaNME1E/Ug5iUPJt4u6EncvW4WHzc/dJ2ALrvOrq39WtLTE6GQpNq6hv7zFWPJk0aSZiVUX3HRTIl7prNQfLuTL9eAKTYcjIF2RRDsq6BJuRv9ZmJh+FD0BArc/8LhHK0K+9iVTlSwX6BewtC3NaAJLqJ2LQ18Gin3+SGrCXpbOYGLndWJiMBuQCdn9kE51RRJVNFvN8n5f1hoJ1BZewfR6IJV+BGw2DFA=----ATTACHMENT:----NzAzOTIwMDgzNTMwNDcxNCAyMDA4Mzg2MjY0OTE4NTg0IDU2NDExNTYxMTgwNTQ3NDI=