outlook library

The consistent use of colour, shape, typography & iconography throughout an app. Express brand identity with a serializable theme that follows material design guidelines of theme.

Classes

IOutlook
Base API for Outlook Defines the basic getters and methods available for managing theming throughout an application as a bussiness concern not UI. Note: Outlook has no method for changingMode since each theme is viewed as seperate and distict if one wants to create a dark version of a theme,they create it as a seperate theme.
OutlookBackgrounds
@description wallpapers, default avatars used to convey brand identity. todo: assess how OutlookBackgrounds can be used
OutlookColor
@description A color representation from a hex code value. This class is used instead of material's Color to avoid the dependency on material. eg. OutlookColor color = OutlookColor(0xff273822); note : 0xff must precede hex codes in naming colors for flutter.
OutlookColorScheme
Used to define a set of colours used by the theme, following material 3 colorscheme standards.
OutlookIconScheme
The definition of an icon system in you app, set the colors,sizes and icons type.
OutlookImage
@description An image loaded as a background with the location src (can be path/url) and the where its sources from type
OutlookShape
Defines a shape for a given category
OutlookShapeScheme
Defines the the theme for shaping the UI components of an app adhering to material design shapeScheme. check link : https://material.io/design/shape/about-shape.html#components-and-shape When OutlookTheme is converted to flutter's themeData the different UI components are themed with the shape style corresponding to theme.
OutlookTextScheme
TextScheme is the base class for configuring all type related settings , geometry,fonts & sizes. It uses material 3's typescale.
OutlookTextStyle
Defines the minimal necessary aspects of type settings for a theme.
OutlookTheme
A representation of an application's theme , consisting of its metadata and configurations. Its completely serializable & can be a constant. This class is intended to be used in the business layer so that frame-work specific classes(like ThemeData) never get to the business layer.

Enums

OutlookBrightness
The brightness of a theme , whether its light or dark.
OutlookFontStyle
Outlook's representation of FontStyle from material
OutlookFontWeight
Outlook's representation of FontWeight from material. Bold and normal values are excluded see its adapter for how it can be used.
OutlookIconType
Sets the types of icons one is using for the theme. Check the differences in icon types at font-awesome. https://fontawesome.com/v6/icons?s=solid
OutlookMediaSrc
@description possible image sources for an an image asset
OutlookShapeFamily
Defines the shape type of a category shape using material shapeFamily : https://material.io/design/shape/applying-shape-to-ui.html#shape-attributes