Browse Source

Merge branch 'dev' of https://github.com/volosoft/abp into dev

pull/1737/head
Alper Ebicoglu 7 years ago
parent
commit
c4bd02f75f
  1. 2
      framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/pt-BR.json
  2. 1
      framework/src/Volo.Abp.Localization/Volo/Abp/Localization/Resources/AbpValidation/en.json
  3. 16
      framework/src/Volo.Abp.Localization/Volo/Abp/Localization/Resources/AbpValidation/pt-BR.json
  4. 2
      framework/src/Volo.Abp.UI/Localization/Resources/AbpUi/pt-BR.json
  5. 2
      framework/test/Volo.Abp.Localization.Tests/Volo/Abp/Localization/TestResources/Base/Validation/pt-BR.json
  6. 2
      framework/test/Volo.Abp.Localization.Tests/Volo/Abp/Localization/TestResources/Source/pt-BR.json
  7. 4
      modules/account/src/Volo.Abp.Account.Application.Contracts/Volo/Abp/Account/Localization/Resources/pt-BR.json
  8. 2
      modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Localization/Resources/Blogging/ApplicationContracts/pt-BR.json
  9. 1
      modules/docs/app/VoloDocs.Web/Localization/Resources/VoloDocs/Web/pt-BR.json
  10. 2
      modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Localization/Resources/Docs/ApplicationContracts/pt-BR.json
  11. 3
      modules/docs/src/Volo.Docs.Domain/Volo/Docs/Localization/Domain/pt-BR.json
  12. 2
      modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/IIDentityClaimTypeRepository.cs
  13. 10
      modules/identity/src/Volo.Abp.Identity.EntityFrameworkCore/Volo/Abp/Identity/EntityFrameworkCore/EfCoreIdentityClaimTypeRepository.cs
  14. 7
      modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityClaimTypeRepository.cs
  15. 3
      modules/setting-management/src/Volo.Abp.SettingManagement.Domain.Shared/Volo/Abp/SettingManagement/Localization/Resources/AbpSettingManagement/pt-BR.json
  16. 2
      modules/tenant-management/src/Volo.Abp.TenantManagement.Domain.Shared/Volo/Abp/TenantManagement/Localization/Resources/pt-BR.json
  17. 20
      npm/ng-packs/packages/core/src/lib/states/config.state.ts
  18. 17
      npm/ng-packs/packages/theme-shared/src/lib/components/confirmation/confirmation.component.ts
  19. 2
      npm/ng-packs/packages/theme-shared/src/lib/components/toast/toast.component.ts
  20. 105
      npm/ng-packs/packages/theme-shared/src/lib/contants/styles.ts

2
framework/src/Volo.Abp.AspNetCore.Mvc.UI.MultiTenancy/Volo/Abp/AspNetCore/Mvc/UI/MultiTenancy/Localization/pt-BR.json

@ -5,7 +5,7 @@
"Tenant": "Inquilino", "Tenant": "Inquilino",
"Switch": "trocar", "Switch": "trocar",
"Name": "Nome", "Name": "Nome",
"SwitchTenantHint": "Deixe o campo de nome em branco para alternar para o lado do host.", "SwitchTenantHint": "Deixe o campo de nome em branco para acessar o host.",
"NotSelected": "Não selecionado" "NotSelected": "Não selecionado"
} }
} }

1
framework/src/Volo.Abp.Localization/Volo/Abp/Localization/Resources/AbpValidation/en.json

@ -16,7 +16,6 @@
"The field {0} must be a string with a minimum length of {2} and a maximum length of {1}.": "The field {0} must be a string with a minimum length of {2} and a maximum length of {1}.", "The field {0} must be a string with a minimum length of {2} and a maximum length of {1}.": "The field {0} must be a string with a minimum length of {2} and a maximum length of {1}.",
"The {0} field is not a valid fully-qualified http, https, or ftp URL.": "The {0} field is not a valid fully-qualified http, https, or ftp URL.", "The {0} field is not a valid fully-qualified http, https, or ftp URL.": "The {0} field is not a valid fully-qualified http, https, or ftp URL.",
"The field {0} is invalid.": "The field {0} is invalid.", "The field {0} is invalid.": "The field {0} is invalid.",
"'{0}' and '{1}' do not match.": "'{0}' and '{1}' do not match.",
"ThisFieldIsNotAValidCreditCardNumber.": "This field is not a valid credit card number.", "ThisFieldIsNotAValidCreditCardNumber.": "This field is not a valid credit card number.",
"ThisFieldIsNotValid.": "This field is not valid.", "ThisFieldIsNotValid.": "This field is not valid.",
"ThisFieldIsNotAValidEmailAddress.": "This field is not a valid e-mail address.", "ThisFieldIsNotAValidEmailAddress.": "This field is not a valid e-mail address.",

16
framework/src/Volo.Abp.Localization/Volo/Abp/Localization/Resources/AbpValidation/pt-BR.json

@ -15,6 +15,20 @@
"The field {0} must be a string with a maximum length of {1}.": "O campo {0} deve ser uma palavra com o tamanho máximo de {1}.", "The field {0} must be a string with a maximum length of {1}.": "O campo {0} deve ser uma palavra com o tamanho máximo de {1}.",
"The field {0} must be a string with a minimum length of {2} and a maximum length of {1}.": "O campo {0} deve ser uma palavra com o tamanho mínimo de {2} e tamanho máximo de {1}.", "The field {0} must be a string with a minimum length of {2} and a maximum length of {1}.": "O campo {0} deve ser uma palavra com o tamanho mínimo de {2} e tamanho máximo de {1}.",
"The {0} field is not a valid fully-qualified http, https, or ftp URL.": "O campo {0} não é um http, https, ou FTP válido.", "The {0} field is not a valid fully-qualified http, https, or ftp URL.": "O campo {0} não é um http, https, ou FTP válido.",
"The field {0} is invalid.": "O campo {0} é inválido." "The field {0} is invalid.": "O campo {0} é inválido.",
"ThisFieldIsNotAValidCreditCardNumber.": "Não é um cartão de crédito válido.",
"ThisFieldIsNotValid.": "Campo inválido.",
"ThisFieldIsNotAValidEmailAddress.": "E-mail inválido.",
"ThisFieldOnlyAcceptsFilesWithTheFollowingExtensions:{0}": "Este campo só aceita arquivos com asseguintes extensões: {0}",
"ThisFieldMustBeAStringOrArrayTypeWithAMaximumLengthoOf{0}": "This field must be a string or array type with a maximum length of '{0}'.",
"ThisFieldMustBeAStringOrArrayTypeWithAMinimumLengthOf{0}": "This field must be a string or array type with a minimum length of '{0}'.",
"ThisFieldIsNotAValidPhoneNumber.": "Número de telefone inválido.",
"ThisFieldMustBeBetween{0}And{1}": "Este campo deve estar entre {0} e {1}.",
"ThisFieldMustMatchTheRegularExpression{0}": "Este campo deve ser compatível com a expressao regular: '{0}'.",
"ThisFieldIsRequired.": "Campo Obrigatório.",
"ThisFieldMustBeAStringWithAMaximumLengthOf{0}": "Campo com no máximo {0} caracteres.",
"ThisFieldMustBeAStringWithAMinimumLengthOf{1}AndAMaximumLengthOf{0}": "Este campo deve possuir entre {1} e {0} caracteres.",
"ThisFieldIsNotAValidFullyQualifiedHttpHttpsOrFtpUrl": "Este campo não é um http, https, ou ftp complatamente qualificado.",
"ThisFieldIsInvalid.": "Campo inválido."
} }
} }

2
framework/src/Volo.Abp.UI/Localization/Resources/AbpUi/pt-BR.json

@ -46,6 +46,6 @@
"DatatableActionDropdownDefaultText": "Ações", "DatatableActionDropdownDefaultText": "Ações",
"ChangePassword": "Alterar Senha", "ChangePassword": "Alterar Senha",
"PersonalInfo": "Perfil", "PersonalInfo": "Perfil",
"AreYouSureYouWantToCancelEditingWarningMessage": "Você tem alterações não salvas." "AreYouSureYouWantToCancelEditingWarningMessage": "Há alterações não salvas."
} }
} }

2
framework/test/Volo.Abp.Localization.Tests/Volo/Abp/Localization/TestResources/Base/Validation/pt-BR.json

@ -2,6 +2,6 @@
"culture": "pt-BR", "culture": "pt-BR",
"texts": { "texts": {
"ThisFieldIsRequired": "Este campo é obrigatório", "ThisFieldIsRequired": "Este campo é obrigatório",
"MaxLenghtErrorMessage": "Este campo pode ser no máximo de '{0}' caracteres" "MaxLenghtErrorMessage": "Este campo pode ter no máximo '{0}' caracteres"
} }
} }

2
framework/test/Volo.Abp.Localization.Tests/Volo/Abp/Localization/TestResources/Source/pt-BR.json

@ -4,7 +4,7 @@
"Hello <b>{0}</b>.": "Olá <b>{0}</b>.", "Hello <b>{0}</b>.": "Olá <b>{0}</b>.",
"Car": "Carro", "Car": "Carro",
"CarPlural": "Carros", "CarPlural": "Carros",
"MaxLenghtErrorMessage": "O comprimento deste campo pode ser no máximo de '{0}' caracteres", "MaxLenghtErrorMessage": "Este campo pode ter no máximo '{0}' caracteres",
"Universe": "Universo", "Universe": "Universo",
"FortyTwo": "Quarenta e Dois" "FortyTwo": "Quarenta e Dois"
} }

4
modules/account/src/Volo.Abp.Account.Application.Contracts/Volo/Abp/Account/Localization/Resources/pt-BR.json

@ -7,9 +7,9 @@
"Password": "Senha", "Password": "Senha",
"RememberMe": "Lembrar", "RememberMe": "Lembrar",
"UseAnotherServiceToLogin": "Usar outro serviço para entrar", "UseAnotherServiceToLogin": "Usar outro serviço para entrar",
"UserLockedOutMessage": "Esta conta de usuário está bloqueada devido a muitas tentativas de entrar. Por favor, espero alguns instantes e tente novamente.", "UserLockedOutMessage": "Esta conta de usuário está bloqueada devido a muitas tentativas de acesso. Por favor, espero alguns instantes e tente novamente.",
"InvalidUserNameOrPassword": "Usuário ou senha estão incorretos!", "InvalidUserNameOrPassword": "Usuário ou senha estão incorretos!",
"LoginIsNotAllowed": "Você não possui permissão para entrar! Você deveconfirmar seu e-mail ou número de telefone.", "LoginIsNotAllowed": "Você não possui permissão para entrar! Você deve confirmar seu e-mail ou número de telefone.",
"SelfRegistrationDisabledMessage": "Não é permitido que você crie uma nova conta neste site. Contate um administrador para que ele crie uma conta para você.", "SelfRegistrationDisabledMessage": "Não é permitido que você crie uma nova conta neste site. Contate um administrador para que ele crie uma conta para você.",
"Login": "Entrar", "Login": "Entrar",
"Cancel": "Cancelar", "Cancel": "Cancelar",

2
modules/blogging/src/Volo.Blogging.Application.Contracts/Volo/Blogging/Localization/Resources/Blogging/ApplicationContracts/pt-BR.json

@ -6,7 +6,7 @@
"Permission:Posts": "Postagens", "Permission:Posts": "Postagens",
"Permission:Tags": "Etiquetas", "Permission:Tags": "Etiquetas",
"Permission:Comments": "Comentários", "Permission:Comments": "Comentários",
"Permission:Management": "Gerencimento", "Permission:Management": "Gerenciamento",
"Permission:Edit": "Editar", "Permission:Edit": "Editar",
"Permission:Create": "Criar", "Permission:Create": "Criar",
"Permission:Delete": "Excluir" "Permission:Delete": "Excluir"

1
modules/docs/app/VoloDocs.Web/Localization/Resources/VoloDocs/Web/pt-BR.json

@ -1,6 +1,7 @@
{ {
"culture": "pt-BR", "culture": "pt-BR",
"texts": { "texts": {
"DocsTitle": "VoloDocs",
"WelcomeVoloDocs": "Bem vindo ao VoloDocs!", "WelcomeVoloDocs": "Bem vindo ao VoloDocs!",
"NoProjectWarning": "Ainda não existe um projeto definido!", "NoProjectWarning": "Ainda não existe um projeto definido!",
"CreateYourFirstProject": "Clique aqui para iniciar seu primeiro projeto", "CreateYourFirstProject": "Clique aqui para iniciar seu primeiro projeto",

2
modules/docs/src/Volo.Docs.Admin.Application.Contracts/Volo/Docs/Admin/Localization/Resources/Docs/ApplicationContracts/pt-BR.json

@ -22,7 +22,7 @@
"DisplayName:Format": "Formatar", "DisplayName:Format": "Formatar",
"DisplayName:DefaultDocumentName": "Nome padrão do documento", "DisplayName:DefaultDocumentName": "Nome padrão do documento",
"DisplayName:NavigationDocumentName": "Nome de navegação do documento", "DisplayName:NavigationDocumentName": "Nome de navegação do documento",
"DisplayName:MinimumVersion": "VErsão mínima", "DisplayName:MinimumVersion": "Versão mínima",
"DisplayName:MainWebsiteUrl": "URL do site principal", "DisplayName:MainWebsiteUrl": "URL do site principal",
"DisplayName:LatestVersionBranchName": "Nome do branch da última versão", "DisplayName:LatestVersionBranchName": "Nome do branch da última versão",
"DisplayName:GitHubRootUrl": "URL raíz do GitHub", "DisplayName:GitHubRootUrl": "URL raíz do GitHub",

3
modules/docs/src/Volo.Docs.Domain/Volo/Docs/Localization/Domain/pt-BR.json

@ -14,6 +14,7 @@
"NoProjectWarning": "Ainda não há projetos!", "NoProjectWarning": "Ainda não há projetos!",
"DocumentNotFound": "Oops, o documento solicitado não foi encontrado", "DocumentNotFound": "Oops, o documento solicitado não foi encontrado",
"NavigationDocumentNotFound": "Esta versão não possui um documento de navegação!", "NavigationDocumentNotFound": "Esta versão não possui um documento de navegação!",
"DocumentNotFoundInSelectedLanguage": "Documento no idioma desejado não foi encontrado. Documento no idioma padrão é mostrado." "DocumentNotFoundInSelectedLanguage": "Documento no idioma desejado não foi encontrado. Documento no idioma padrão será mostrado.",
"FilterTopics": "Filtrar tópicos"
} }
} }

2
modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/IIDentityClaimTypeRepository.cs

@ -17,6 +17,6 @@ namespace Volo.Abp.Identity
/// </param> /// </param>
Task<bool> AnyAsync(string name, Guid? ignoredId = null); Task<bool> AnyAsync(string name, Guid? ignoredId = null);
Task<List<IdentityClaimType>> GetListAsync(string sorting, int maxResultCount, int skipCount); Task<List<IdentityClaimType>> GetListAsync(string sorting, int maxResultCount, int skipCount, string filter);
} }
} }

10
modules/identity/src/Volo.Abp.Identity.EntityFrameworkCore/Volo/Abp/Identity/EntityFrameworkCore/EfCoreIdentityClaimTypeRepository.cs

@ -24,9 +24,15 @@ namespace Volo.Abp.Identity.EntityFrameworkCore
.CountAsync(ct => ct.Name == name) > 0; .CountAsync(ct => ct.Name == name) > 0;
} }
public async Task<List<IdentityClaimType>> GetListAsync(string sorting, int maxResultCount, int skipCount) public async Task<List<IdentityClaimType>> GetListAsync(string sorting, int maxResultCount, int skipCount, string filter)
{ {
var identityClaimTypes = await DbSet.OrderBy(sorting ?? "name desc") var identityClaimTypes = await DbSet
.WhereIf(
!filter.IsNullOrWhiteSpace(),
u =>
u.Name.Contains(filter)
)
.OrderBy(sorting ?? "name desc")
.PageBy(skipCount, maxResultCount) .PageBy(skipCount, maxResultCount)
.ToListAsync(); .ToListAsync();

7
modules/identity/src/Volo.Abp.Identity.MongoDB/Volo/Abp/Identity/MongoDB/MongoIdentityClaimTypeRepository.cs

@ -32,9 +32,14 @@ namespace Volo.Abp.Identity.MongoDB
} }
} }
public async Task<List<IdentityClaimType>> GetListAsync(string sorting, int maxResultCount, int skipCount) public async Task<List<IdentityClaimType>> GetListAsync(string sorting, int maxResultCount, int skipCount, string filter)
{ {
return await GetMongoQueryable() return await GetMongoQueryable()
.WhereIf<IdentityClaimType, IMongoQueryable<IdentityClaimType>>(
!filter.IsNullOrWhiteSpace(),
u =>
u.Name.Contains(filter)
)
.OrderBy(sorting ?? nameof(IdentityClaimType.Name)) .OrderBy(sorting ?? nameof(IdentityClaimType.Name))
.As<IMongoQueryable<IdentityClaimType>>() .As<IMongoQueryable<IdentityClaimType>>()
.PageBy<IdentityClaimType, IMongoQueryable<IdentityClaimType>>(skipCount, maxResultCount) .PageBy<IdentityClaimType, IMongoQueryable<IdentityClaimType>>(skipCount, maxResultCount)

3
modules/setting-management/src/Volo.Abp.SettingManagement.Domain.Shared/Volo/Abp/SettingManagement/Localization/Resources/AbpSettingManagement/pt-BR.json

@ -1,6 +1,7 @@
{ {
"culture": "pt-BR", "culture": "pt-BR",
"texts": { "texts": {
"Settings": "Configurações" "Settings": "Configurações",
"SuccessfullySaved": "Salvo com sucesso!"
} }
} }

2
modules/tenant-management/src/Volo.Abp.TenantManagement.Domain.Shared/Volo/Abp/TenantManagement/Localization/Resources/pt-BR.json

@ -7,7 +7,7 @@
"TenantName": "Inquilino", "TenantName": "Inquilino",
"DisplayName:TenantName": "Inquilino", "DisplayName:TenantName": "Inquilino",
"TenantDeletionConfirmationMessage": "Inquilino '{0}' será excluído. Tem certeza?", "TenantDeletionConfirmationMessage": "Inquilino '{0}' será excluído. Tem certeza?",
"ConnectionStrings": "Cordas de Conexão", "ConnectionStrings": "String de Conexão",
"DisplayName:DefaultConnectionString": "String de Conexão Padrão", "DisplayName:DefaultConnectionString": "String de Conexão Padrão",
"DisplayName:UseSharedDatabase": "Use o banco de dados compartilhado" "DisplayName:UseSharedDatabase": "Use o banco de dados compartilhado"
} }

20
npm/ng-packs/packages/core/src/lib/states/config.state.ts

@ -93,26 +93,12 @@ export class ConfigState {
return selector; return selector;
} }
static getGrantedPolicy(condition: string = '') { static getGrantedPolicy(key: string) {
const keys = condition
.replace(/\(|\)|\!|\s/g, '')
.split(/\|\||&&/)
.filter(key => key);
const selector = createSelector( const selector = createSelector(
[ConfigState], [ConfigState],
function(state: Config.State): boolean { function(state: Config.State): boolean {
if (!keys.length) return true; if (!key) return true;
return snq(() => state.auth.grantedPolicies[key], false);
const getPolicy = key => snq(() => state.auth.grantedPolicies[key], false);
if (keys.length > 1) {
keys.forEach(key => {
const value = getPolicy(key);
condition = condition.replace(key, value);
});
}
return getPolicy(condition);
}, },
); );

17
npm/ng-packs/packages/theme-shared/src/lib/components/confirmation/confirmation.component.ts

@ -11,26 +11,25 @@ import { Toaster } from '../../models/toaster';
(onClose)="close(dismiss)" (onClose)="close(dismiss)"
[modal]="true" [modal]="true"
[baseZIndex]="1000" [baseZIndex]="1000"
styleClass="" styleClass="abp-confirm"
> >
<ng-template let-message pTemplate="message"> <ng-template let-message pTemplate="message">
<div *ngIf="message.summary" class="modal-header"> <i class="fa fa-exclamation-circle abp-confirm-icon"></i>
<h4 class="modal-title"> <div *ngIf="message.summary" class="abp-confirm-summary">
{{ message.summary | abpLocalization: message.titleLocalizationParams }} {{ message.summary | abpLocalization: message.titleLocalizationParams }}
</h4>
</div> </div>
<div class="modal-body"> <div class="abp-confirm-body">
{{ message.detail | abpLocalization: message.messageLocalizationParams }} {{ message.detail | abpLocalization: message.messageLocalizationParams }}
</div> </div>
<div class="modal-footer justify-content-center"> <div class="abp-confirm-footer justify-content-center">
<button *ngIf="!message.hideCancelBtn" type="button" class="btn btn-secondary" (click)="close(reject)"> <button *ngIf="!message.hideCancelBtn" type="button" class="btn btn-sm btn-primary" (click)="close(reject)">
{{ message.cancelCopy || 'AbpIdentity::Cancel' | abpLocalization }} {{ message.cancelCopy || 'AbpIdentity::Cancel' | abpLocalization }}
</button> </button>
<button <button
*ngIf="!message.hideYesBtn" *ngIf="!message.hideYesBtn"
type="button" type="button"
class="btn btn-secondary" class="btn btn-sm btn-primary"
(click)="close(confirm)" (click)="close(confirm)"
autofocus autofocus
> >

2
npm/ng-packs/packages/theme-shared/src/lib/components/toast/toast.component.ts

@ -3,7 +3,7 @@ import { Component } from '@angular/core';
@Component({ @Component({
selector: 'abp-toast', selector: 'abp-toast',
template: ` template: `
<p-toast position="bottom-right" key="abpToast" [baseZIndex]="1000"> <p-toast position="bottom-right" key="abpToast" styleClass="abp-toast" [baseZIndex]="1000">
<ng-template let-message pTemplate="message"> <ng-template let-message pTemplate="message">
<span <span
class="ui-toast-icon pi" class="ui-toast-icon pi"

105
npm/ng-packs/packages/theme-shared/src/lib/contants/styles.ts

@ -45,6 +45,111 @@ export default `
white-space: nowrap; white-space: nowrap;
} }
.abp-toast .ui-toast-message {
box-sizing: border-box !important;
border: 2px solid transparent !important;
border-radius: 4px !important;
background-color: #f4f4f7 !important;
color: #1b1d29 !important;
}
.abp-toast .ui-toast-message-content {
padding: 10px !important;
}
.abp-toast .ui-toast-message-content .ui-toast-icon {
top: 0 !important;
left: 0 !important;
padding: 10px !important;
}
.abp-toast .ui-toast-summary {
margin: 0 !important;
font-weight: 700 !important;
}
.abp-toast .ui-toast-message.ui-toast-message-error {
border-color: #ba1659 !important;
}
.abp-toast .ui-toast-message.ui-toast-message-error .ui-toast-message-content .ui-toast-icon {
color: #ba1659 !important;
}
.abp-toast .ui-toast-message.ui-toast-message-warning {
border-color: #ed5d98 !important;
}
.abp-toast .ui-toast-message.ui-toast-message-warning .ui-toast-message-content .ui-toast-icon {
color: #ed5d98 !important;
}
.abp-toast .ui-toast-message.ui-toast-message-success {
border-color: #1c9174 !important;
}
.abp-toast .ui-toast-message.ui-toast-message-success .ui-toast-message-content .ui-toast-icon {
color: #1c9174 !important;
}
.abp-toast .ui-toast-message.ui-toast-message-info {
border-color: #fccb31 !important;
}
.abp-toast .ui-toast-message.ui-toast-message-info .ui-toast-message-content .ui-toast-icon {
color: #fccb31 !important;
}
.abp-confirm .ui-toast-message {
box-sizing: border-box !important;
padding: 0px !important;
border:0 none !important;
border-radius: 4px !important;
background-color: #fff !important;
color: rgba(0, 0, 0, .65) !important;
font-family: "Poppins", sans-serif;
text-align: center !important;
}
.abp-confirm .ui-toast-message-content {
padding: 0px !important;
}
.abp-confirm .abp-confirm-icon {
margin: 32px 50px 5px !important;
color: #f8bb86 !important;
font-size: 52px !important;
}
.abp-confirm .ui-toast-close-icon {
display: none !important;
}
.abp-confirm .abp-confirm-summary {
display: block !important;
margin-bottom: 13px !important;
padding: 13px 16px 0px !important;
font-weight: 600 !important;
font-size: 18px !important;
}
.abp-confirm .abp-confirm-body {
display: inline-block !important;
padding: 0px 10px !important;
}
.abp-confirm .abp-confirm-footer {
display: block !important;
margin-top: 30px !important;
padding: 16px !important;
background-color: #f4f4f7 !important;
text-align: right !important;
}
.abp-confirm .abp-confirm-footer .btn {
margin-left: 10px !important;
}
/* <animations */ /* <animations */
.fade-in-top { .fade-in-top {

Loading…
Cancel
Save