
Objetivos
Diminuir custos e prazos
SEGUIR PADRÕES
CRIAR PRODUTOS EM CONJUNTO
back-end
FRONT-end
segurança
gerador
dashboard
front-end
aplicação estática
angularjs
twitter bootstrap
COMPONENTES
gumga layout
open source

gumga-info
Usado para modal de informação

<button type="button" ng-click="foo()"
gumga-info="Descrição informativa..."
icon="glyphicon glyphicon-info-sign text-primary"
dismiss-button="OK"
dismiss-button-class="btn btn-default">
Gumga Info
</button>
gumga-confirm
Usado para modal de confirmação

<button type="button" ng-click="foo()"
gumga-confirm="Tem certeza que deseja realizar esta ação?"
icon="glyphicon glyphicon-alert text-danger"
dismiss-button="Não"
confirm-button="Sim"
confirm-button-class="btn btn-warning"
dismiss-button-class="btn btn-default">
Gumga Confirm
</button>
gumga-query
Usado para buscas simples

<gumga-query search="foo(field, param)">
<search-field field="name" label="Nome" select="true" ></search-field>
<search-field field="age" label="Idade"></search-field>
</gumga-query>
gumga-filter
Usado para buscas
avançadas

<gumga-filter search="searchFilter(param)">
<advanced-search-field type="string" label="Nome" field="nome"></advanced-search-field>
<advanced-search-field type="number" label="Idade" field="idade"></advanced-search-field>
<advanced-search-field type="float" label="Peso" field="peso"></advanced-search-field>
<advanced-search-field type="money" label="Preço" field="preco"></advanced-search-field>
<advanced-search-field type="cpf" label="CPF" field="cpf"></advanced-search-field>
<advanced-search-field type="cnpj" label="CNPJ" field="cnpj"></advanced-search-field>
<advanced-search-field type="boolean" label="Ativo" field="ativo" true-label="True" false-label="False"></advanced-search-field>
<advanced-search-field type="select" label="Estados" field="id" data="selects"></advanced-search-field>
<advanced-search-field type="enum" label="Roles" field="states" data="selects"></advanced-search-field>
</gumga-filter>
gumga-many-to-many

<gumga-many-to-many
left-search="ctrl.individual.methods.asyncSearch('name', param)"
left-list="ctrl.individual.data"
right-list="ctrl.rightList"
validate-item="ctrl.validateItem(value)"
validate-message="Mensagem de validação de erros"
right-search-field="Ind Filters"
text-heading-left="H L"
text-heading-right="H R"
text-moveall-left="MA L"
text-moveall-right="MA R">
<left-field>{{$value.name}}</left-field>
<right-field>{{$value.name}}</right-field>
</gumga-many-to-many>
gumga-one-to-many

<gumga-one-to-many
children="object.childrens"
displayable-property="property"
template-url="path/to/template.html"
controller="ControllerName">
</gumga-one-to-many>
gumga-many-TO-ONE

<gumga-many-to-one
name="colaborador"
value="reserva.data.colaborador"
search-method="colaborador.methods.asyncSearch('nome', param)"
field="nome"
authorize-add="true"
post-method="colaborador.methods.asyncPost(value, 'nome')">
</gumga-many-to-one>
gumga-list

<gumga-list
config="config"
data="data">
</gumga-list>
angular.module('sample.app',[])
.controller(['$scope,$templateCache',function($scope,$templateCache){
$scope.data = [];
$scope.config = {
columns: 'name',
columnsConfig: {
name: 'name',
content: $templateCache.get('tpl.html')
}
}
}])
comunicação

http://gumga.slack.com/
presencial
as quartas feiras no período da tarde ou agendamento PREVIAMENTE combinado.
issues

pull requests

GUMGA - Treinamento front-end
By Gui Seek
GUMGA - Treinamento front-end
- 64