aureus library

Classes

Accessibility
A class that holds functions to accomodate accessibility settings, such as increased text size, contract, etc.
AdaptiveInputSelectionToolTemplate Widgets
{@image } A tool template that lets the user CHANGE the input style for a select few tool templates (hence adaptive input).
AdaptiveInputToolTemplate Widgets
{@image } A tool template that corresponds to the input style that the user selects. This allows people to respond to prompts with video, text, sketch, or voice recording.
AddressDataCardElement Widgets
{@image } For use with a DataDetailView, allows the user to read and write a photo from a storage layer that you implement.
AlertControllerAction
An action that someone can take on an AlertControllerObject.
AlertControllerObject
Represents all data in an alert controller.
ArticleViewElement Widgets
{@image } Represents an 'article' to be put into a view. This can be used for legal documents, blogs, customer service pages, etc.
Assets
Flutter icons Copyright (C) 2021 by original authors @ fluttericon.com, fontello.com This font was generated by FlutterIcon.com, which is derived from Fontello.
AureusBranding
Where you set your font, light mode, and dark mode stylization.
AureusCards Objects
{@image } Helper class for providing using Card elements in Aureus.
AureusDataDetailMaster
An observer pattern that the DataDetailView uses to allow users to edit / modify information within the view
AureusInformation
This is the information that Aureus pulls to fill in vital information in the templates we provide. Be sure to fill ALL of it out before you start developing.
AureusNavigationTree
A navigation tree that holds all of the values about what widgets to call in different templates. When Aureus uses a template screen for you, the entry and exit points from specific templates will come from this navigation tree.
AureusNotificationMaster
An observer pattern that links to the main scaffold of the container view in order to show alert controllers, in-app notifications, and more.
AureusPalette Foundation
This is where all of the gradients, text styles, colors, and other related items are located in Aureus. Since they are global items, you can call them without accessing them through any specific class.
AureusResource
A custom wrapper of a material app that allows Aureus to handle custom accessibility, safety, privacy, and accessibility changes. This also simplifies a lot of the information that goes into our templates, and allows you to basically set these variables and develop incredibly quickly.
AureusResourceMaster Objects
{@image }
AureusStylization
A class to hold custom branding and colors for the UI items generated by Aureus. Each 'mode' has a different stylization, so you'll create one for light mode and one for dark mode.
AureusToolTemplateMaster
An observer pattern that the ToolTemplateCardCarouselView uses to receive instructions from the ToolTemplateCards on moving forward / going backward, depending on the interaction that the user takes on the card.
AureusValues
A helper class that creates flattened variables to access all of the information gathered from AureusResource without making the code unbearable to read.
BannerNotificationComponent Widgets
{@image } A small banner that drops down from the top of a screen to alert the user of something.
BaseBackingDecoration Foundation
A set of classes that dynamically create BoxDecorations in accordance with the design system principles for each kind of interactivity. Some classes have their own custom variants that further differentiate them. Every backing decoration inherits from the Parent - Base Backing Decoration.
BaseCardToolTemplate Widgets
{@image } The base class for a card tool template. A CARD is a tool template that doesn't take up a full page, and is accessed within a card carousel only. It's used in conjunction with other cards, not as a stand alone item.
BaseDataDetailCard Widgets
{@image } The base class for a Base Data Detail Card. A detail card is a UI element meant for writing and reading values. These are accessed within a DataDetailView only.
BasePageToolTemplate Widgets
{@image } The base class for a page tool template. A PAGE is a tool template that uses a full page, and is accessed within a card navigation object. It's used solo, and NOT used within a card carousel. It's typically used for navigating information in a tool (e.g: scrolling through saved items) and is meant to be the scaffolding / support of a tool, not the main tool content.
BlankScreenComponent Widgets
{@image } Shows a card meant to act as a 'blank' screen placeholder to instruct user on what to do next
BodyOneText
A text class that uses the body one text style
BodyTwoText
A text class that uses the body two text style
BottomActionSheetComponent Widgets
{@image } An action sheet on the bottom of the screen. Use when the user can choose more than 2 actions.
ButtonBackingDecoration
The backing decoration for button items.
ButtonOneText
A text class that uses the button one text style
ButtonTwoText
A text class that uses the button two text style
CameraInputToolTemplate Widgets
{@image } A Tool template that allows the user to take a photo in response to a prompt.
CardBackingDecoration
The backing decoration for card items.
CardObject
An object that holds all of the relevant metadata for a card element.
CategoryIconDetailCardElement Widgets
{@image } A card that's meant to act as a major CTA, or to denote a category.
CenteredAlertControllerComponent Widgets
{@image } A vertically & horizontally centered alert controller Use when there is only 1-2 actions, otherwise use Bottom Action Sheet
ChangeAccountItemView Widgets
{@image } A view for a user to change some item related to their account. The view handles making sure the items match.
CheckboxArticleView Widgets
{@image } A view that displays an article, and a checkbox. When the user agrees to the checkbox and moves forward, it calls the param onFinish. This should be used for legal documents that MUST be agreed to in order to use the software. e.g: terms of service, cookie policy, etc.
CircleAnimation Foundation
Animations in the form of widgets that are used throughout Aureus.
Coloration Foundation
A class that takes variables into consideration to properly color the text of different items to match contrast standards
ColorSpectrumInputToolTemplate
A Tool template that allows the user to select a color in response to a prompt.
CompletionCircleElement Widgets
{@image } A floating circle with a gradient that's filled according to how complete something is. Used for showing completion at the end of a task or action.
ComplexBadgeCardElement Widgets
{@image } An extremely detailed card meant to give the most amount of information about something to a user, with an icon.
ComplexCardElement Widgets
{@image }
ComplexSwitchCardElement Widgets
{@image } A detailed card meant to allow the user to enable or disable it based on the metadata.
ContainerView Widgets
{@image } A container that sets the size for the screen, enables the exit bar at the top of the screen when enabled in the safety plan, and shows notifications / prompts to the user. Think of this view as the 'glue' that holds Aureus together.
ContainerWrapperElement Widgets
{@image } Used in conjuction with a ContainerView to 'layout' the elements. This is where you should pass all of the view's children.
ContentWarningComponent Widgets
{@image } Shows a content warning with a blur over the content behind the item.
ControllerTabObject
A class representing a 'tab' in a tab bar that owns a widget. This would be used when you want to link tabs to a view.
CookieBannerComponent Widgets
{@image } A y/n banner to ask a user to accept cookies on the website.
CoreTool Objects
{@image } A set of objects that makes a 'tool'. Within Astra, we use this to develop user flows for collecting incident log information, to build mental health exercises, or to add a contact. A CoreTool can be any sort of flow or resource for the end user.
DataConsent Objects
{@image } The data consent objects request permissions across operating systems on your behalf, and keep them managed. However, you must still go into the native codebase for Android / iOS and manually input what permissions you will be asking for ahead of time, to avoid a crash. Read more about this on the permission handler documentation under setup here: https://pub.dev/packages/permission_handler A class that manages Data consent objects
DataDetail Objects
{@image } Object that is meant to act as the main data structure for a DataDetailView. This contains the title, the detail cards for writing / reading, and any CTAs to perform additional actions.
DataDetailCard
The base class for a detail cards that adheres to the AureusDataDetailObserver.
DataDetailView Widgets
{@image } A data detail view is similar to using CoreTools. Use a data detail view when a user is opening up a read/write object. This can be anything from a user settings page, to a contact page, or a log page.
DataOptInView Widgets
{@image } This view requests permissions from the user, you set what permissions you want in your AureusInformation object of the packageVariables for your application.
DataPermissionObject
A class that represents the metadata of a Data Permission Object.
DatePickerInputToolTemplate Widgets
{@image } A tool template for selecting a date.
DetailBadgeCardElement Widgets
{@image } A detailed card with a header, label, and icon.
DetailCardCarouselComponent Widgets
{@image } A carousel that shows small metadata cards to users.
DetailCardElement Widgets
{@image } A detailed card with a header, and label.
DetailCarouselCardElement Widgets
{@image } A small card with a label and an icon, meant to be used in a DetailCardCarouselComponent
DividerElement Widgets
{@image } A small divider that's meant to break up other widgets.
DividingHeaderElement Widgets
{@image } A view header that has a header and a subheader.
DualColumnInputToolTemplate Widgets
{@image } A tool template for providing 2 different columns for input. We use this for pro/cons flows, and to help users compare and contrast things.
EclipseShadowElement Widgets
{@image } Using the data provided from the AureusStylization class, creates a moving eclipse that appears to eclipse and pass behind the child object.
EmergencyAccessBarComponent Widgets
{@image } A group of SmolButtonElement that acts as a tabbing bar to do actions This is used in the Safety Functionality to allow people to quickly go to speciality tools from any page in an Aureus Resource. You can control which views show a Quick Action Bar (if your safety settings enable it) within the ContainerView initializer parameters.
ExitBarComponent Widgets
{@image } An exit bar that stays at the top of the user's screen and exits the screen when pressed.
FloatingContainerElement Widgets
{@image } This is a decorative element that gives the widgets that 'floating above the noise' look. Use it to add depth to custom widgets.
FullWidthButtonElement Widgets
{@image } A full width button that acts as the main CTA for a screen.
GridBadgeCardElement Widgets
{@image } A simple, square card with an icon that is meant to be apart of a grid.
GridCardElement Widgets
{@image } A simple, square card that is meant to be apart of a grid.
GridCardSelectToolTemplate Widgets
{@image } A tool template for selecting a grid card.
HeadingFourText
A text class that uses the heading four text style
HeadingOneText
HeadingThreeText
A text class that uses the heading three text style
HeadingTwoText
A text class that uses the heading two text style
HelpCenterArticle
An object that constructs a help center article with from content. If you don't want to include a CTA on your article, just pass null to the constructor. It is required to be defined in the constructor, but can be built without it.
HelpCenterArticleDetailView
A view that shows a full help center article.
HelpCenterCategories
An object that separates and describes the articles in a specific category A minumum of one category is required to build a Help Center.
HelpCenterObject Objects
{@image } An object that contains all of the lower level objects If only one category is passed, Help Center will just display the list view of articles. If multiple categories are passed, Help Center will display a grid list of categories, and then a detailed list of articles.
HelpCenterView Widgets
{@image } The main container for the entire Help Center functionality that controls the layout, views, and more.
IconBadge Widgets
{@image } A circle with an icon that is meant to act as a category label, but not as a button.
IconButtonElement Widgets
{@image } A small, circular button that uses an icon to communicate its' purpose big circular icon buttons that are greater than 70x70 and are intended to be the main action of the page (e.g: add, message, etc).
IconTabbingBarComponent Widgets
{@image } A group of icon buttons on a card that acts as a tabbing bar to change data
InputBackingDecoration
The backing decoration for user input items.
InteractiveSemanticsWrapper Widgets
{@image } A semantics wrapper that provides a Focus node for screen readers and tab orders to be established. This is just a little helper wrapper to combine Focus / semantics into one overarching wrapper class.
IteratingTabbingComponent
An icon tabbing bar and accompanying card that acts as an onboarding walkthrough
LandingPageView Widgets
{@image } A simple view meant to act as a templated landing page for a resource.
LayerBackingDecoration
The backing decoration for layer items.
ListViewButtonSelectToolTemplate Widgets
{@image } A tool template for selecting one action out of a group of actions.
ListViewPickerSelectToolTemplate Widgets
{@image } A tool template for selecting something from a PickerView
LoadingCircleElement Widgets
{@image } A bar that indicators progress for a given task.
MapInputToolTemplate Widgets
{@image } A Tool template that allows the user to select a location on a map in response to a prompt.
MessageBubbleComponent Widgets
{@image } A bubble that contains a text message from a sender or a receiver
MicrophoneInputToolTemplate Widgets
{@image } A Tool template that allows the user to record a voice memo in response to a prompt.
MissionHeaderElement Widgets
{@image } A header that shows a title, and the resource logo.
{@image } A horizontal, icon only, navigation bar.
NotificationComponent Widgets
{@image } A notification card that describes a message to the user
NotificationOverlayView Widgets
{@image } A transparent view that manages a AureusNotificationMaster object, and shows / hides the notifications at the correct time. If you aren't using ContainerView or are building a custom component (always use ContainerView unless you plan on custom implementations), this is the widget that you would use for the notification master.
NumberPadComponent Widgets
{@image } A component to manage numbers being inputted.
OnboardingDemoView Widgets
{@image } A view that allows users to try tools before onboarding into the app. This helps the user build trust, and improves conversion rates.
OnboardingDetail
Description: An object that contains information to be shown in a category as a user is tabbing through the onboarding view.
OnboardingInformationView Widgets
{@image } A view that shows an iterating component of OnboardingDetails to give the user information about the resource before signing up. This is where you want to discuss features and cool things about your resources.
OnboardingLandingView Widgets
{@image } A view that should be where the user 'lands' if they haven't been onboarded. This landing view gets autopopulated with the data from AureusNavigationTree.
OnboardingObject Objects
{@image } Description: The top level class that contains all of the onboarding detail objects
OnboardingSimpSharingView Widgets
{@image } A view where you can ask a user to share your resource.
PageHeaderElement Widgets
{@image } A page header with a title, exit button, and optional details button to allow users to take extra actions on a page.
PasscodeView Widgets
{@image } A view for a user to enter a passcode.
PoetryGradientView Widgets
{@image } A view that animates gradients and noise, while scrolling through a poem. This is an 'Easter Egg' Astra uses to hide poems within our resources for a better user experience.
ProgressIndicatorElement Widgets
{@image } A bar that indicators progress for a given task.
PromptListUserInputToolTemplate Widgets
{@image } A tool template that gives the user a prompt, where they add their own items and then select them.
PromptSelectionCardList Widgets
{@image } For use with a DataDetailView, allows the user to read and write a photo from a storage layer that you implement.
PulseInputToolTemplate Widgets
{@image } A Tool template that gives the user a grounding mini game with a prompt.
PulseShadowElement Widgets
{@image } Using the data provided from the AureusStylization class, creates a 'pulse' that breathes behind an object.
Safety
SafetyOptionDetailMetadata
A class that contains all of the actual metadata.
SafetyOptionDetails Safety
A class that metadata about what the different safety options mean.
SafetyPlanFallback
A class that creates a 'fallback'. This is what you give to the Safety Plan to execute code on your behalf, depending on the user's safety settings.
SafetyPlanFunctionalityView
A view used by Aureus to double confirm the functionality changes that a user is requesting, and then saving it to the Storage Layer.
SafetyPlanLogInAuditView Widgets
{@image } A view that allows the user to audit failed log ins. This is automatically pulled from Safety, so it requires no developer input.
SafetyPlanObject
A class that acts as a 'wrapper' for the safety plan
SafetyPlanOptInView Widgets
{@image } A view that allows the user to opt into a safety plan. This is automatically pulled from Safety, so it requires no developer input.
SafetyPlanOptionsView Widgets
{@image } A view that allows the user to select their safety plan choices. This is automatically pulled from Safety, so it requires no developer input. You set what options users can enable in your AureusInformation section of packageVariables.
SafetyPlanSettingsView Widgets
{@image } A view that allows the user to modify their Safety Plan settings. This is automatically pulled from Safety, so it requires no developer input.
SearchBarComponent Widgets
{@image } A search bar component
SemanticsWrapper Foundation
A class that builds semantics wrappers for custom UI items. Semantics are important, because they tell assistive technology and SEO crawlers information about the underlying elements.
SendFieldComponent Widgets
{@image } A text field and icon button used to send communications to a receipent
Sensory
This class contains the sensory components of Aureus. This covers animations, haptics, our sound library, and more.
SensoryMapToolTemplate Widgets
{@image } A Tool template that allows the user to mark a sensation in their body in response to a prompt.
SettingItem
An item that's linked to a button, or a switch. This makes up the content of a SettingSection
SettingSection Objects
{@image } The class that makes up a settings section, which is a grouping of similar settings together. A minimum of 1 setting sections are required to build a SettingsView object.
SettingsView Widgets
{@image } A view that's meant to allow the user to modify the settings of the resource. Some of these items are autopopulated from your AureusInformation in the packageVariables you set.
SignInView Widgets
{@image } A templatized sign in view.
SingleInputToolTemplate Widgets
{@image } A tool template for a user to input into a single text field.
SingleSliderToolTemplate Widgets
{@image } A tool template for picking a value on a slider.
Sizing Foundation
Dynamically keeps track of the screen's sizes, and resizes it appropriately to fit almost any web / mobile / tablet screen.
SketchToolTemplate Widgets
{@image } A Tool template that allows the user to sketch a drawing in response to a prompt. Credit to KodeCo for creating an amazing and in-depth tutorial that allowed this to be made: https://www.kodeco.com/25237210-building-a-drawing-app-in-flutter
SliderElement Widgets
{@image } A simple slider to represent a scale of values.
SmolButtonElement Widgets
{@image } A small, rounded tab button
SmolTextTabbingBarComponent Widgets
{@image } A group of smol buttons that acts as a tabbing bar to change data
SplashScreenView Widgets
{@image } A templatized splash screen view. This is the first view your users should see, and where you should run any downloading / onboarding logic checks.
StandardAccordionCardElement Widgets
{@image } A standard card that contains hidden children that can be 'expanded' out
StandardBadgeCardElement Widgets
{@image } A standard card with an icon.
StandardButtonElement Widgets
{@image } A 80% width button that acts as a standard button
StandardCardElement Widgets
{@image } A standard card with just a title.
StandardIconButtonElement Widgets
{@image } A 80% width button that acts as a standard button for the UDS This version comes with an icon!
StandardSelectionCardElement Widgets
{@image } A standard card with an label, that can actively be selected as part of a group.
StandardSwitchCardElement Widgets
{@image } A standard card that can be switched on or off.
StandardTextFieldComponent Widgets
{@image } A standard text field component for inputting user data. Good for 1-2 lines of text.
SubheaderText
A text class that uses the subheader text style
SwitchComponent Widgets
{@image } A simple switch to represent an on/off state.
TabbingBarObject Objects
{@image } A wrapper class for a tab bar, with all of the children tab objects
TabItemBackingDecoration
The backing decoration for tab items.
TabObject
A class representing a 'tab' in a tab bar.
TabSubheaderElement Widgets
{@image } A small tab subheader.
TagOneText
A text class that uses the tag one text style
TagTwoText
A text class that uses the tag two text style
TextFieldAlertControllerComponent Widgets
{@image } A vertically & horizontally centered alert controller Use when there is only 1-2 actions, otherwise use Bottom Action Sheet
TextFieldDataCardElement Widgets
{@image } For use with a DataDetailView, allows the user to read and write a single-line text field from a storage layer that you implement.
TextViewComponent Widgets
{@image } A standard text view component for inputting user data. Good for 2+ lines of text.
TextViewDataCardElement Widgets
{@image } For use with a DataDetailView, allows the user to read and write a multi-line text view from a storage layer that you implement.
TFAVerificationView Widgets
{@image } A view for a user to fill out their 2FA code.
TimePickerDataCardElement Widgets
{@image } For use with a DataDetailView, allows the user to read and write a date from a storage layer that you implement.
TimePickerInputToolTemplate Widgets
{@image } A tool template for selecting a time allotment.
TimerElement Widgets
{@image } A component that acts as a timer.
TimerToolTemplate Widgets
{@image } A Tool template that gives the user a timer to finish a prompt.
TitleCase
A class who's responsibilites is managing TitleCases for typography.
ToolCardTemplate
A base class for all Tool Card Templates to inherit from.
ToolDetailView Widgets
{@image } A view that shows a user metadata about a CoreTool before they use it.
ToolNavigationContainer
Where you set all of the points of navigation & metadata for your tool to be accessed and to go through the tool flow.
ToolNextStepsView Widgets
{@image } A view that displays next steps from a CoreTool
ToolSummaryView Widgets
{@image } A view that displays a summary of what a user did in ToolTemplateCardCarouselView. You must use the ToolTemplateCardCarouselView before showing this view, or you will get many errors.
ToolTemplateCardCarouselView Widgets
{@image } A view that manages and displays any Tool Templates from a CoreTool
TriInputToolTemplate Widgets
{@image } A tool template for showing 3 prompts and text fields.
UniversalGestureDetector Widgets
{@image } A gesture detector that recognizes taps AND enter presses on keyboards so that those with assistive tech can navigate
VerticalSideNavBarComponent Widgets
{@image } A vertical navigation bar, meant to be used on tablet / web displays. If you use this, and have a ContainerView as a subchild, make sure to set ContainerView.managesNotifications as false.
VideoInputToolTemplate Widgets
{@image } A Tool template that allows the user to record a video in response to a prompt.
YesNoButtonSelectToolTemplate Widgets
{@image } A tool template that takes a simple bool response from user in response to the prompt.

Enums

adaptiveInput
Describes the different kinds of input an AdaptiveInputToolTemplate can do, which gives the users more options to input data.
AlertControllerActionSeverity Objects
{@image } Tells the user what kind of severity an action is.
buttonDecorationVariants
Describes what different kind of UI styles a button has.
buttonSize
Whether a button is the primary button size (the top 'call to action' of a page) or a secondary (not top call to action). The different sizes make it easier for users to prioritize what to do, and provides better UX. Primary is the biggest as a main call to action, and smolBaby is the smallest (e.g: an exit button for a sub-item, like a card).
cardType
Describes what different kind of UI styles a card item has.
communicationStatus
Describes the communication status of an outgoing message
dataAccess
Describes the different kinds of data access you can request.
decorationPriority
Describes what 'priority' is assigned to a UI component. These priorities also describe interactivity, and importance.
deviceVariants Foundation
Describes what kind of device screen / ratio the user has.
messagingVariants
Describes if a message is being sent or receieved.
modeVariants
Describes whether UI components are in dark or light mode
SafetyFallBackOptions
An enum for you to choose a fallback option if the user's safety plan settings are violated
SafetyPlanFrequency Safety
An enum that determines if account creation is linked to the software.
SafetyPlanOptions
An enum that holds the current safety plan options a user can choose.
SafetyStorageLayer Safety
A class that contains data regarding how to handle creating a Safety Plan for the user.
sensationType
For the Sensation engine, describes the different kinds of Sensations that Aureus can produce with the sound library / haptic engine.
SettingItemType
sizingWeight
Desribes what % of the screen height / width should be used for padding or sizing calculations.
tabItemDecorationVariants
Describes what different kind of UI styles a tab item has.
wrapperVariants
Describes how to set the layout for the greater ContainerView. You can set a limit to the screen height with fullScreen, and build your layout with spacers, or you can use a stackScroll to automatically put content in a scroll view to go past the device screen height.

Mixins

AureusDataDetailObserver
A mix-in for implementation of conforming to become a Data Detail Observer
AureusNotificationObserver
AureusResourceObserver
AureusToolTemplateObserver

Properties

accessibility Accessibility
final
coloration Coloration
final
dataDetailMaster AureusDataDetailMaster
A singleton for referring to the master.
getter/setter pair
fontChoice String Foundation
{@category Foundation} This is where the text styles are, and the text widgets that accompany them. Items here also go through the coloration class to be properly rendered for each mode.
getter/setter pair
notificationMaster AureusNotificationMaster Objects
{@category Objects} {@image }
getter/setter pair
packageVariables AureusResource?
getter/setter pair
palette AureusPalette
getter/setter pair
resourceValues AureusValues
final
safetyStorageKeys Map<SafetyStorageLayer, String>
getter/setter pair
sensation Sensory Foundation
{@category Foundation}
getter/setter pair
size Sizing
final
titleCase TitleCase Foundation
{@category Foundation}
final
toolTemplateMaster AureusToolTemplateMaster
getter/setter pair

Functions

body1() TextStyle
The text style for a body one
body2() TextStyle
The text style for a body two
button1() TextStyle
The text style for a button one
button2() TextStyle
The text style for a button two
heading1() TextStyle
The text style for a heading one
heading2() TextStyle
The text style for a heading two
heading3() TextStyle
The text style for a heading three
heading4() TextStyle
The text style for a heading four
subheading() TextStyle
The text style for a subheading
tag1() TextStyle
The text style for a tag one
tag2() TextStyle
The text style for a tag two

Typedefs

ColorCodeBuilder = Widget Function(BuildContext context, Color color) Widgets
{@image }