0.1.0-beta.0 • Published 1 year ago

gamma-miniapp-components v0.1.0-beta.0

Weekly downloads
-
License
MIT
Repository
-
Last release
1 year ago

Ame Mini-App Components Web - Gamma

Tokens

Bordas

Alguns componentes experimentam o uso de bordas. Você poderá alterar propriedades básicas de borda como espessura ou cor.

borderWidth

Os valores abaixo indicam espessuras de borda, começando da mais fina para a mais grossa:

tokenvalor
none0px
hairline1px
thin2px
thick4px
heavy8px

borderRadius

Abaixo os valores aceitos para arredondamento das bordas

tokenvalor
none0px
micro4px
small8px
medium16px
pill500px
circular50%

borderColor

Veja aqui quais os tokens de corque você pode utilizar no borderColor

Cores

Os padrões de design estabelem que apenas as cores abaixo podem ser utilizadas. As cores são inseridas através dos tokens em componentes que possuem tais propriedades como: borderColor, color, backgroundColor e etc.

Primary

Secondary

Neutral

Feedback

Extras

Espaçamento

Em determinados momentos você precisará de uso de margem, para isso você poderá usar as propriedades descritas abaixo em componentes que aceitam todas ou algumas dessas propriedades.

Valores para propriedades de Margin e Padding

tokenvalores
'nopne'0px
'quark'4px
'nano'8px
'extra-small'16px
'small'24px
'medium'32px
'large'40px
'extra-large'48px
'big'56px
'display'64px
'huge'80px
'giant'120px
'jumbo'160px
'immense'200px

Flex

As propriedades abaixo afetam como os nós internos de um componente são ajustados ao seu conteúdo. São muito parecidas com as propriedades flex do CSS. Veja abaixo quais são:

Propriedades e Valores

PropriedadeValores Aceitos
direction'row', 'row-reverse', 'column', 'column-reverse'
align'center', 'start', 'end'
justify'center', 'start', 'end', 'between', 'around'
flexWrap'wrap', 'nowrap', 'reverse'
flexNoneboolean

Tipografia

Propriedades e Valores

PropriedadeValores Aceitos
fontSize'quark' (12px), 'nano' (14px), 'extra-small' (16px), 'small' (20px), 'medium'(24px), 'large' (32px), 'extra-large' (40px), 'big' (48px), 'display'(56px), 'huge' (64px), 'giant' (72px), 'jumbo'(80px)
textAlign'left', 'center', 'right', 'justify'
lineHeight'small' (100%), 'medium' (150%), 'large' (200%)
fontWeight'light' (300), 'regular' (400), 'medium' (500), 'bold' (700)

Target

tokenvalores
'heading-display'font-size: '56px'; line-height: 200%; font-weight: 700
'heading-extra-large'font-size: '48px'; line-height: 200%; font-weight: 700
'heading-large'font-size: '40px'; line-height: 200%; font-weight: 700
'heading-medium'font-size: '32px'; line-height: 200%; font-weight: 700
'heading-small'font-size: '24px'; line-height: 200%; font-weight: 700
'title-large'font-size: '32px'; line-height: 150%; font-weight: 700
'title-medium'font-size: '24px'; line-height: 150%; font-weight: 700
'title-small'font-size: '20px'; line-height: 150%; font-weight: 700
'subtitle-large'font-size: '24px'; line-height: 150%; font-weight: 700
'subtitle-medium'font-size: '20px'; line-height: 150%; font-weight: 700
'subtitle-small'font-size: '16px'; line-height: 150%; font-weight: 700
'body-regular'font-size: '16px'; line-height: 150%; font-weight: 400
'body-medium'font-size: '16px'; line-height: 150%; font-weight: 500
'body-bold'font-size: '16px'; line-height: 150%; font-weight: 700
'caption-regular'font-size: '14px'; line-height: 100%; font-weight: 400
'caption-bold'font-size: '14px'; line-height: 100%; font-weight: 700
'disclaimer-regular'font-size: '12px'; line-height: 100%; font-weight: 400
'disclaimer-bold'font-size: '12px'; line-height: 100%; font-weight: 700

Opacidade

Em determinados momentos você pode sentir a necessidade de tornar um elemento um pouco translúcido.

Para isto você deve verificar se o componente presente aceita a propriedade opacity.

opacity

tokenvalores
'trnasparent'0
'semi-transparent'0.16
'light'0.32
'medium'0.4
'intense'0.64
'semiopaque'0.8

Sombras

Tokens e valores

tokenvalores
'level-1'0 4px 8px rgb(28 28 28 / 8%)
'level-2'0 8px 24px rgb(28 28 28 / 16%)
'level-3'0 16px 32px rgb(28 28 28 / 16%)
'level-4'0 16px 48px rgb(28 28 28 / 24%)

Text

Modifique esse componente em tempo real pelo Storybook clique aqui

Veja um exemplo desse componente aqui

Componente de texto que recebe diversas propriedades

Importante: Este componente ainda não está de acordo com o padrão atual de design system Ame de 2022 e pode estar sujeito à mudanças visuais, de quebra de compatibilidade.

Exemplo

view

Utilização

<View>
  <Text>
    Componente Text
  </Text>
</View>

Propriedades

PropriedadeDescriçãoTypeDefault
fontSizeDefine o tamanho da font. Veja os valoresstringxxs
fontWeightDefine o peso da font. Veja os valoresstringregular
lineHeightDefine a altura da linha font. Veja os valoresstringmedium
textAlignDefine o alimanhento do texto. Veja os valoresstringleft
selectableDefine se o texto será selecionavel.booleanfalse
truncateDefine uma quantidade de linhas para mostrar o texto. Ao fim dessas linhas, caso tenha mais textos, será acresentado '...'.numbernull
colorDefine a cor do texto. Veja os valoresstringneutracolor-brand-darkest
targetDefine um estilo para o texto pré determinado. Veja os valoresstringnull

Touchable

Modifique esse componente em tempo real pelo Storybook clique aqui

Veja um exemplo desse componente aqui

Envolva um componente com Touchable para que ele passe a ter interação.

Exemplo

Touchable

Utilização

<Touchable onClick={() => {console.log('Clicado!')}}>
  <Text>Agora sou clicável</Text>
</Touchable>

Propriedades

PropriedadeDescriçãoTypeDefault
onPressFunção que será chamada ao tocar no componente.functionnull
disabledOnPressFunção que será chamada caso o Touchable esteja desabilitado.functionnull
disabledDesabilita o componentebooleanfalse
widthDefine a largura do componentestringnull
heightDefine a altura do componentestringnull

View

Modifique esse componente em tempo real pelo Storybook clique aqui

Veja um exemplo desse componente aqui

Talvez um dos componentes mais úteis para construir telas e recebe diversas propriedades para te ajudar nessa tarefa.

Exemplo

view

Utilização

<View>
  <Text>
    Este paragráfo está dentro da view
  </Text>
</View>

Propriedades

PropriedadeDescriçãoTypeDefault
backgroundAdiciona uma cor de fundo. Veja os valoresstringnull
borderAdiciona uma borda na View. Veja os valoresstringnull
borderRadiusDefine o arredondamento da borda. Veja os valoresstringnull
borderRadiusLeftTopDefine o arredondamento da borda no canto esquerdo superior. Veja os valoresstringnull
borderRadiusRightTopDefine o arredondamento da borda no canto direito superior. Veja os valoresstringnull
borderRadiusLeftBottomDefine o arredondamento da borda no canto esquerdo inferior. Veja os valoresstringnull
borderRadiusRightBottomDefine o arredondamento da borda no canto direito inferior. Veja os valoresstringnull
borderColorDefine qual será a cor da borda. Veja os valoresstringnull
directionDefine qual será a direção do display flex. Veja os valoresstringnull
alignDefine qual será o alinhamento vertical do display flex. Veja os valoresstringnull
justifyDefine qual sera o alinhamento horizontal do display flex. Veja os valoresstringnull
paddingLeftDefine o padding no lado esquerdo. Veja os valoresstringxxxs
paddingRightDefine o padding no lado direito. Veja os valoresstringxxxs
paddingTopDefine o padding em cima. Veja os valoresstringxxxs
paddingBottomDefine o padding em baixo. Veja os valoresstringxxxs
paddingXDefine o padding no eixo X. Veja os valoresstringnull
paddingYDefine o padding no eixo Y. Veja os valoresstringnull
marginDefine a margem no eixo X e Y. Veja os valoresstringnull
marginLeftDefine a margem no lado esquerdo. Veja os valoresstringnull
marginRightDefine a margem no lado direito. Veja os valoresstringnull
marginTopDefine a margem em cima. Veja os valoresstringnull
marginBottomDefine a margem em baixo. Veja os valoresstringnull
marginYDefine a margem no eixo Y. Veja os valoresstringnull
marginXDefine a margem no eixo X. Veja os valoresstringnull
widthDefine qual será a largura da View em % ou pxstring100%
heightDefine qual será a altura da View em % ou pxstringauto
displayDefine qual será o display. Veja os valoresstringblock
flexWrapDefine se os itens são forçados em uma linha ou podem ser agrupados em várias linhas. Veja os valoresstringnull
flexNonePassando essa propriedade a View respeitará o tamanho de width independente do flexbooleanfalse
opacityDefine a opacidade da View. Veja os valoresstringnull
shadowAplica niveis de sombra na View. Veja os valoresstringnull

Window

Modifique esse componente em tempo real pelo Storybook clique aqui

Veja um exemplo desse componente aqui

É um componente mestre que precisa envolver toda tela. Seu uso é obrigatório e ele deverá ser o primeiro nó de todas as telas. Nunca utilize Window dentro de outro Window.

Você deve usar o componente Window como no exemplo abaixo.

Utilização

<Window>
    Todas as outras tags devem ficar aqui dentro
</Window>