@senior-gestao-pessoas/payroll-core 9.6.1 → 9.7.0-feature-hcmgdp-11851-0d47b4a9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/senior-gestao-pessoas-payroll-core.umd.js +160 -14
- package/bundles/senior-gestao-pessoas-payroll-core.umd.js.map +1 -1
- package/bundles/senior-gestao-pessoas-payroll-core.umd.min.js +1 -1
- package/bundles/senior-gestao-pessoas-payroll-core.umd.min.js.map +1 -1
- package/components/historical-pix-account/historical-pix-account-form/historical-pix-account-form.component.d.ts +7 -1
- package/components/input-rest-auto-complete/input-rest-auto-complete.component.d.ts +1 -0
- package/components/utils/cnpj-validator.d.ts +5 -0
- package/components/utils/format-utils/format-utils.service.d.ts +3 -2
- package/components/utils/generic-validators.d.ts +6 -0
- package/esm2015/components/historical-pix-account/historical-pix-account-form/historical-pix-account-form.component.js +21 -6
- package/esm2015/components/input-rest-auto-complete/input-rest-auto-complete.component.js +10 -1
- package/esm2015/components/utils/cnpj-validator.js +54 -1
- package/esm2015/components/utils/format-utils/format-utils.service.js +23 -10
- package/esm2015/components/utils/generic-validators.js +57 -1
- package/esm5/components/historical-pix-account/historical-pix-account-form/historical-pix-account-form.component.js +21 -6
- package/esm5/components/input-rest-auto-complete/input-rest-auto-complete.component.js +10 -1
- package/esm5/components/utils/cnpj-validator.js +54 -1
- package/esm5/components/utils/format-utils/format-utils.service.js +23 -10
- package/esm5/components/utils/generic-validators.js +57 -1
- package/fesm2015/senior-gestao-pessoas-payroll-core.js +160 -14
- package/fesm2015/senior-gestao-pessoas-payroll-core.js.map +1 -1
- package/fesm5/senior-gestao-pessoas-payroll-core.js +160 -14
- package/fesm5/senior-gestao-pessoas-payroll-core.js.map +1 -1
- package/package.json +1 -1
- package/senior-gestao-pessoas-payroll-core.metadata.json +1 -1
|
@@ -141,6 +141,59 @@ class CNPJValidator {
|
|
|
141
141
|
}
|
|
142
142
|
return true;
|
|
143
143
|
}
|
|
144
|
+
checkCNPJAlphanumeric(value) {
|
|
145
|
+
let cnpj = value;
|
|
146
|
+
if (cnpj) {
|
|
147
|
+
cnpj = cnpj.replace(/[^\dA-Za-z]/g, '').toUpperCase();
|
|
148
|
+
if (cnpj.length !== 14) {
|
|
149
|
+
return true;
|
|
150
|
+
}
|
|
151
|
+
// Valida que dígitos verificadores são numéricos
|
|
152
|
+
if (!/^\d$/.test(cnpj.charAt(12)) || !/^\d$/.test(cnpj.charAt(13))) {
|
|
153
|
+
return { cnpjNotValid: true };
|
|
154
|
+
}
|
|
155
|
+
// Elimina CNPJs invalidos conhecidos
|
|
156
|
+
if (cnpj === '00000000000000' ||
|
|
157
|
+
cnpj === '11111111111111' ||
|
|
158
|
+
cnpj === '22222222222222' ||
|
|
159
|
+
cnpj === '33333333333333' ||
|
|
160
|
+
cnpj === '44444444444444' ||
|
|
161
|
+
cnpj === '55555555555555' ||
|
|
162
|
+
cnpj === '66666666666666' ||
|
|
163
|
+
cnpj === '77777777777777' ||
|
|
164
|
+
cnpj === '88888888888888' ||
|
|
165
|
+
cnpj === '99999999999999') {
|
|
166
|
+
return false;
|
|
167
|
+
}
|
|
168
|
+
// Valida DVs
|
|
169
|
+
const size = cnpj.length - 2;
|
|
170
|
+
const digits = cnpj.substring(size);
|
|
171
|
+
if (!this.validateCnpjDigit(cnpj, size, Number(digits.charAt(0)))) {
|
|
172
|
+
return false;
|
|
173
|
+
}
|
|
174
|
+
if (!this.validateCnpjDigit(cnpj, size + 1, Number(digits.charAt(1)))) {
|
|
175
|
+
return false;
|
|
176
|
+
}
|
|
177
|
+
return true;
|
|
178
|
+
}
|
|
179
|
+
return true;
|
|
180
|
+
}
|
|
181
|
+
validateCnpjDigit(cnpj, size, digit) {
|
|
182
|
+
let numbers = cnpj.substring(0, size);
|
|
183
|
+
let sum = 0;
|
|
184
|
+
let pos = size - 7;
|
|
185
|
+
for (let i = size; i >= 1; i--) {
|
|
186
|
+
sum += this.convertToAsciiMinus48(numbers.charAt(size - i)) * pos--;
|
|
187
|
+
if (pos < 2) {
|
|
188
|
+
pos = 9;
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
const result = sum % 11 < 2 ? 0 : 11 - (sum % 11);
|
|
192
|
+
return result === digit;
|
|
193
|
+
}
|
|
194
|
+
convertToAsciiMinus48(input) {
|
|
195
|
+
return input.charCodeAt(0) - 48;
|
|
196
|
+
}
|
|
144
197
|
}
|
|
145
198
|
const cnpjValidator = new CNPJValidator();
|
|
146
199
|
|
|
@@ -2642,6 +2695,12 @@ let InputRestAutoCompleteComponent = class InputRestAutoCompleteComponent {
|
|
|
2642
2695
|
})
|
|
2643
2696
|
.subscribe(payload => this.formaterResponce(payload.result));
|
|
2644
2697
|
}
|
|
2698
|
+
else if (this.isSituationDefinition) {
|
|
2699
|
+
const params = { searchText: query };
|
|
2700
|
+
return this.service
|
|
2701
|
+
.query('autocompleteSituationDefinitionQuery', params, ServiceType.ORGANIZATION_REGISTER)
|
|
2702
|
+
.subscribe(payload => this.formaterResponce(payload.result));
|
|
2703
|
+
}
|
|
2645
2704
|
else if (this.isWagetype) {
|
|
2646
2705
|
const params = { searchText: query, companyId: this.companyId };
|
|
2647
2706
|
return this.service
|
|
@@ -2862,6 +2921,9 @@ __decorate([
|
|
|
2862
2921
|
__decorate([
|
|
2863
2922
|
Input()
|
|
2864
2923
|
], InputRestAutoCompleteComponent.prototype, "isWagetype", void 0);
|
|
2924
|
+
__decorate([
|
|
2925
|
+
Input()
|
|
2926
|
+
], InputRestAutoCompleteComponent.prototype, "isSituationDefinition", void 0);
|
|
2865
2927
|
__decorate([
|
|
2866
2928
|
Input()
|
|
2867
2929
|
], InputRestAutoCompleteComponent.prototype, "multiple", void 0);
|
|
@@ -8447,27 +8509,40 @@ class FormatUtilsService {
|
|
|
8447
8509
|
* Retorna o CNPJ formatado
|
|
8448
8510
|
* @param cnpj CNPJ
|
|
8449
8511
|
*/
|
|
8450
|
-
static getFormattedCnpj(cnpj) {
|
|
8512
|
+
static getFormattedCnpj(cnpj, isAlphanumericCNPJ) {
|
|
8451
8513
|
if (cnpj) {
|
|
8452
|
-
|
|
8453
|
-
|
|
8454
|
-
.replace(/
|
|
8455
|
-
.
|
|
8456
|
-
|
|
8457
|
-
|
|
8514
|
+
if (isAlphanumericCNPJ) {
|
|
8515
|
+
// Remove caracteres especiais mantendo letras e números, e converte para maiúsculas
|
|
8516
|
+
const cleanCnpj = cnpj.replace(/[^a-zA-Z0-9]/g, '').toUpperCase();
|
|
8517
|
+
// Aplica formatação: AA.BBB.CCC/DDDD-EE
|
|
8518
|
+
return cleanCnpj
|
|
8519
|
+
.replace(/^([A-Z0-9]{2})([A-Z0-9])/, '$1.$2')
|
|
8520
|
+
.replace(/^([A-Z0-9]{2}\.)([A-Z0-9]{3})([A-Z0-9])/, '$1$2.$3')
|
|
8521
|
+
.replace(/^([A-Z0-9]{2}\.[A-Z0-9]{3}\.)([A-Z0-9]{3})([A-Z0-9])/, '$1$2/$3')
|
|
8522
|
+
.replace(/^([A-Z0-9]{2}\.[A-Z0-9]{3}\.[A-Z0-9]{3}\/)([A-Z0-9]{4})([0-9])/, '$1$2-$3');
|
|
8523
|
+
}
|
|
8524
|
+
else {
|
|
8525
|
+
return cnpj
|
|
8526
|
+
.replace(/\D/g, "")
|
|
8527
|
+
.replace(/(\d{2})(\d)/, "$1.$2")
|
|
8528
|
+
.replace(/(\d{3})(\d)/, "$1.$2")
|
|
8529
|
+
.replace(/(\d{3})(\d)/, "$1/$2")
|
|
8530
|
+
.replace(/(\d{4})(\d)/, "$1-$2");
|
|
8531
|
+
}
|
|
8458
8532
|
}
|
|
8459
8533
|
return null;
|
|
8460
8534
|
}
|
|
8461
8535
|
/**
|
|
8462
8536
|
* Retorna a mascara do CPF/CNPJ
|
|
8463
8537
|
* @param key Valores possíveis são CPF ou CNPJ
|
|
8538
|
+
* @param isAlphanumericCNPJ Define se o CNPJ pode ser alfanumérico.
|
|
8464
8539
|
*/
|
|
8465
|
-
static getCpfCnpjMask(key) {
|
|
8540
|
+
static getCpfCnpjMask(key, isAlphanumericCNPJ) {
|
|
8466
8541
|
switch (key) {
|
|
8467
8542
|
case "CPF":
|
|
8468
8543
|
return "999.999.999-99";
|
|
8469
8544
|
case "CNPJ":
|
|
8470
|
-
return "99.999.999/9999-99";
|
|
8545
|
+
return isAlphanumericCNPJ ? "**.***.***/****-99" : "99.999.999/9999-99";
|
|
8471
8546
|
default:
|
|
8472
8547
|
return "";
|
|
8473
8548
|
}
|
|
@@ -8667,6 +8742,62 @@ class GenericValidator {
|
|
|
8667
8742
|
}
|
|
8668
8743
|
return null;
|
|
8669
8744
|
}
|
|
8745
|
+
/**
|
|
8746
|
+
* Valida se o CNPJ Alfanumérico é valido. Deve-se ser informado o cpf sem máscara.
|
|
8747
|
+
*/
|
|
8748
|
+
static isValidCnpjAlphanumeric(control) {
|
|
8749
|
+
let cnpj = control.value;
|
|
8750
|
+
if (cnpj) {
|
|
8751
|
+
cnpj = cnpj.replace(/[^\dA-Za-z]/g, '').toUpperCase();
|
|
8752
|
+
if (cnpj.length !== 14) {
|
|
8753
|
+
return null;
|
|
8754
|
+
}
|
|
8755
|
+
// Valida que dígitos verificadores são numéricos
|
|
8756
|
+
if (!/^\d$/.test(cnpj.charAt(12)) || !/^\d$/.test(cnpj.charAt(13))) {
|
|
8757
|
+
return { cnpjNotValid: true };
|
|
8758
|
+
}
|
|
8759
|
+
// Elimina CNPJs invalidos conhecidos
|
|
8760
|
+
if (cnpj === '00000000000000' ||
|
|
8761
|
+
cnpj === '11111111111111' ||
|
|
8762
|
+
cnpj === '22222222222222' ||
|
|
8763
|
+
cnpj === '33333333333333' ||
|
|
8764
|
+
cnpj === '44444444444444' ||
|
|
8765
|
+
cnpj === '55555555555555' ||
|
|
8766
|
+
cnpj === '66666666666666' ||
|
|
8767
|
+
cnpj === '77777777777777' ||
|
|
8768
|
+
cnpj === '88888888888888' ||
|
|
8769
|
+
cnpj === '99999999999999') {
|
|
8770
|
+
return { cnpjNotValid: true };
|
|
8771
|
+
}
|
|
8772
|
+
// Valida DVs
|
|
8773
|
+
const size = cnpj.length - 2;
|
|
8774
|
+
const digits = cnpj.substring(size);
|
|
8775
|
+
if (!GenericValidator.validateCnpjDigit(cnpj, size, Number(digits.charAt(0)))) {
|
|
8776
|
+
return { cnpjNotValid: true };
|
|
8777
|
+
}
|
|
8778
|
+
if (!GenericValidator.validateCnpjDigit(cnpj, size + 1, Number(digits.charAt(1)))) {
|
|
8779
|
+
return { cnpjNotValid: true };
|
|
8780
|
+
}
|
|
8781
|
+
return null;
|
|
8782
|
+
}
|
|
8783
|
+
return null;
|
|
8784
|
+
}
|
|
8785
|
+
static validateCnpjDigit(cnpj, size, digit) {
|
|
8786
|
+
const numbers = cnpj.substring(0, size);
|
|
8787
|
+
let sum = 0;
|
|
8788
|
+
let pos = size - 7;
|
|
8789
|
+
for (let i = size; i >= 1; i--) {
|
|
8790
|
+
sum += this.convertToAsciiMinus48(numbers.charAt(size - i)) * pos--;
|
|
8791
|
+
if (pos < 2) {
|
|
8792
|
+
pos = 9;
|
|
8793
|
+
}
|
|
8794
|
+
}
|
|
8795
|
+
const result = sum % 11 < 2 ? 0 : 11 - (sum % 11);
|
|
8796
|
+
return result === digit;
|
|
8797
|
+
}
|
|
8798
|
+
static convertToAsciiMinus48(input) {
|
|
8799
|
+
return input.charCodeAt(0) - 48;
|
|
8800
|
+
}
|
|
8670
8801
|
/**
|
|
8671
8802
|
* Válida o número de telefone da chave PIX.
|
|
8672
8803
|
*/
|
|
@@ -8889,7 +9020,7 @@ let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent
|
|
|
8889
9020
|
/**
|
|
8890
9021
|
* Antes de setar o validator prepara as variáveis necessária para que seja feita a validação do campo.
|
|
8891
9022
|
*/
|
|
8892
|
-
setPixKeyValidators(isEditMode) {
|
|
9023
|
+
setPixKeyValidators(isEditMode, isAlphanumericCNPJ) {
|
|
8893
9024
|
const genericPixKey = this.pixAccountFormGroup.get("pixKey");
|
|
8894
9025
|
if (this.pixKeyType) {
|
|
8895
9026
|
switch (this.pixKeyType) {
|
|
@@ -8909,9 +9040,7 @@ let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent
|
|
|
8909
9040
|
]));
|
|
8910
9041
|
break;
|
|
8911
9042
|
case "CNPJ":
|
|
8912
|
-
|
|
8913
|
-
Validators.required, GenericValidator.isValidCnpj,
|
|
8914
|
-
]));
|
|
9043
|
+
this.configureCnpjKeyValidators(isAlphanumericCNPJ, genericPixKey);
|
|
8915
9044
|
break;
|
|
8916
9045
|
case "RANDOM_KEY":
|
|
8917
9046
|
genericPixKey.setValidators(Validators.required);
|
|
@@ -8926,6 +9055,23 @@ let HistoricalPixAccountFormComponent = class HistoricalPixAccountFormComponent
|
|
|
8926
9055
|
genericPixKey.updateValueAndValidity();
|
|
8927
9056
|
}
|
|
8928
9057
|
}
|
|
9058
|
+
/**
|
|
9059
|
+
* Escolhe o validator do CNPJ conforme a feature toggle alphanumericCNPJFeature.
|
|
9060
|
+
* @param isAlphanumericCNPJ Feature toggle que define se o CNPJ pode ser alfanumérico.
|
|
9061
|
+
* @param genericPixKey Tipo AbstractControl do campo pixKey.
|
|
9062
|
+
*/
|
|
9063
|
+
configureCnpjKeyValidators(isAlphanumericCNPJ, genericPixKey) {
|
|
9064
|
+
if (isAlphanumericCNPJ) {
|
|
9065
|
+
genericPixKey.setValidators(Validators.compose([
|
|
9066
|
+
Validators.required, GenericValidator.isValidCnpjAlphanumeric,
|
|
9067
|
+
]));
|
|
9068
|
+
}
|
|
9069
|
+
else {
|
|
9070
|
+
genericPixKey.setValidators(Validators.compose([
|
|
9071
|
+
Validators.required, GenericValidator.isValidCnpj,
|
|
9072
|
+
]));
|
|
9073
|
+
}
|
|
9074
|
+
}
|
|
8929
9075
|
/**
|
|
8930
9076
|
* Este método calcula as parcentagens que já foram inseridas, e seta a diferença para chegar em
|
|
8931
9077
|
* 100% na validação do campo "percentage" como um novo maxValue;
|
|
@@ -9050,7 +9196,7 @@ __decorate([
|
|
|
9050
9196
|
HistoricalPixAccountFormComponent = __decorate([
|
|
9051
9197
|
Component({
|
|
9052
9198
|
selector: "pix-account",
|
|
9053
|
-
template: "<div id=\"main\">\n <form [formGroup]=\"pixAccountFormGroup\" autocomplete=\"off\">\n <div class=\"ui-fluid\">\n <div class=\"ui-g\">\n <!-- Tipo de chave -->\n <div class=\"ui-md-6 ui-sm-12 required\">\n <label>{{'hcm.payroll.employees_addition_pix_key_type'|translate}}</label>\n <input-rest-auto-complete-enum [dropdown]=\"true\" server=\"payroll\"\n enumeration=\"PixKeyType\"\n placeholder=\"{{'hcm.payroll.select' | translate}}\"\n name=\"pixKeyType\" [form]=\"pixAccountFormGroup\"\n (onSelect)=\"onChangePixKeyType($event)\"\n (onClear)=\"onClearPixKeyType()\"\n id=\"ta-pixKeyType\"></input-rest-auto-complete-enum>\n <s-control-errors [control]=\"pixAccountFormGroup.get('pixKeyType')\"\n [errorMessages]=\"{\n required: 'hcm.payroll.required' | translate,\n pixKeyTypeBankAccountDuplicate: 'hcm.payroll.historical_pix_key_type_bank_account_duplicate' | translate\n }\">\n </s-control-errors>\n </div>\n <!--Chave Pix-->\n <div class=\"ui-md-6 ui-sm-12\" [ngClass]=\"{'required': pixKeyType !== 'BANK_ACCOUNT'}\">\n <label>{{'hcm.payroll.employees_addition_pix_key' | translate}}</label>\n <ng-container [ngSwitch]=\"pixKeyType\">\n <input *ngSwitchCase=\"'TELEPHONE'\" only-number\n pInputText id=\"ta-pixKey\" name=\"pixKey\" formControlName=\"pixKey\"\n (keyup)=\"phoneMask($event)\" maxlength=\"15\"\n placeholder=\"(__) ____-____\">\n <p-inputMask *ngSwitchCase=\"'CPF'\"\n id=\"ta-pixKey\" name=\"pixKey\" formControlName=\"pixKey\"\n placeholder=\"___.___.___-__\"\n mask=\"999.999.999-99\" [unmask]=\"true\"></p-inputMask>\n <p-inputMask *ngSwitchCase=\"'CNPJ'\"\n id=\"ta-pixKey\" name=\"pixKey\" formControlName=\"pixKey\"\n placeholder=\"__.___.___/____-__\"\n mask=\"99
|
|
9199
|
+
template: "<div id=\"main\">\n <form [formGroup]=\"pixAccountFormGroup\" autocomplete=\"off\">\n <div class=\"ui-fluid\">\n <div class=\"ui-g\">\n <!-- Tipo de chave -->\n <div class=\"ui-md-6 ui-sm-12 required\">\n <label>{{'hcm.payroll.employees_addition_pix_key_type'|translate}}</label>\n <input-rest-auto-complete-enum [dropdown]=\"true\" server=\"payroll\"\n enumeration=\"PixKeyType\"\n placeholder=\"{{'hcm.payroll.select' | translate}}\"\n name=\"pixKeyType\" [form]=\"pixAccountFormGroup\"\n (onSelect)=\"onChangePixKeyType($event)\"\n (onClear)=\"onClearPixKeyType()\"\n id=\"ta-pixKeyType\"></input-rest-auto-complete-enum>\n <s-control-errors [control]=\"pixAccountFormGroup.get('pixKeyType')\"\n [errorMessages]=\"{\n required: 'hcm.payroll.required' | translate,\n pixKeyTypeBankAccountDuplicate: 'hcm.payroll.historical_pix_key_type_bank_account_duplicate' | translate\n }\">\n </s-control-errors>\n </div>\n <!--Chave Pix-->\n <div class=\"ui-md-6 ui-sm-12\" [ngClass]=\"{'required': pixKeyType !== 'BANK_ACCOUNT'}\">\n <label>{{'hcm.payroll.employees_addition_pix_key' | translate}}</label>\n <ng-container [ngSwitch]=\"pixKeyType\">\n <input *ngSwitchCase=\"'TELEPHONE'\" only-number\n pInputText id=\"ta-pixKey\" name=\"pixKey\" formControlName=\"pixKey\"\n (keyup)=\"phoneMask($event)\" maxlength=\"15\"\n placeholder=\"(__) ____-____\">\n <p-inputMask *ngSwitchCase=\"'CPF'\"\n id=\"ta-pixKey\" name=\"pixKey\" formControlName=\"pixKey\"\n placeholder=\"___.___.___-__\"\n mask=\"999.999.999-99\" [unmask]=\"true\"></p-inputMask>\n <p-inputMask *ngSwitchCase=\"'CNPJ'\"\n id=\"ta-pixKey\" name=\"pixKey\" formControlName=\"pixKey\"\n placeholder=\"__.___.___/____-__\"\n mask=\"**.***.***/****-99\" [unmask]=\"true\"></p-inputMask>\n <input *ngSwitchCase=\"'EMAIL'\"\n pInputText id=\"ta-pixKey\" name=\"pixKey\" formControlName=\"pixKey\"\n placeholder=\"{{'hcm.payroll.employees_addition_email'|translate}}\"/>\n <input *ngSwitchCase=\"'BANK_ACCOUNT'\" disabled\n pInputText id=\"ta-pixKey\" name=\"pixKey\" formControlName=\"pixKey\"/>\n <input *ngSwitchDefault\n pInputText id=\"ta-pixKey\" name=\"pixKey\" formControlName=\"pixKey\" maxlength=\"100\" />\n </ng-container>\n <s-control-errors *ngIf=\"isShowPixKeyFieldValidatorMessage\" id=\"er-pix-key\"\n [control]=\"pixAccountFormGroup.get('pixKey')\"\n [errorMessages]=\"{\n required: 'hcm.payroll.required' | translate,\n invalidPhoneNumber: 'hcm.payroll.employees_addition_invalid_phone_number' | translate: { value: pixAccountFormGroup.get('pixKey').value },\n invalidEmail: 'hcm.payroll.employees_addition_email_invalid' | translate,\n cpfNotValid: 'hcm.payroll.employees_addition_cpf_error' | translate,\n cnpjNotValid: 'hcm.payroll.employees_addition_cnpj_error' | translate\n }\">\n </s-control-errors>\n </div>\n <!--Percentual-->\n <div class=\"ui-md-6 ui-sm-12 required\">\n <label id=\"lb-percentage\"\n for=\"ff-percentage\">{{ 'hcm.payroll.historical_bank_account_label_percentage' | translate }}</label>\n <div class=\"ui-inputgroup\">\n <span class=\"ui-inputgroup-addon\">%</span>\n <input pInputText id=\"ff-percentage\" name=\"percentage\"\n formControlName=\"percentage\"\n currencyMask\n [options]=\"optionsPercentage\"\n [placeholder]=\"percentagePlaceholder\"/>\n </div>\n <s-control-errors [control]=\"pixAccountFormGroup.get('percentage')\"\n [errorMessages]=\"{\n required: 'hcm.payroll.required' | translate,\n maxlength: 'hcm.payroll.error_max_length' | translate: { value: '6' },\n max: 'hcm.payroll.error_max_value_number' | translate: { value: maxValuePercentage },\n min: 'hcm.payroll.error_min_value_number' | translate: { value: '0,01' }\n }\">\n </s-control-errors>\n </div>\n <div class=\"ui-g-12\">\n <p-fieldset\n legend=\"{{ 'hcm.payroll.custom_fields' | translate }}\"\n [attr.data-hidden]=\"!customFields || !customFields.fields.length\"\n >\n <s-custom-fields\n domain=\"hcm\"\n service=\"{{customService}}\"\n entity=\"{{customEntity}}\"\n formControlName=\"customFields\"\n [invalidErrorLabel]=\"'hcm.payroll.employees_invalid_field' | translate\"\n >\n </s-custom-fields>\n </p-fieldset>\n </div>\n </div>\n </div>\n </form>\n\n <div [ngClass]=\"withSideBar ? 'footer' : 'footer-s-border'\">\n <div class=\"form-group\">\n <s-button id=\"btn-save\" label=\"{{ labelBtnAdd | translate}}\" priority=\"primary\"\n (onClick)=\"addItem()\" *ngIf=\"visibleBtnSave && !this.isView\"></s-button>\n <s-button *ngIf=\"withSideBar\" id=\"btn-close\" label=\"{{'hcm.payroll.cancel'|translate}}\" priority=\"secondary\"\n priority=\"link\" (onClick)=\"close()\"></s-button>\n </div>\n </div>\n</div>\n",
|
|
9054
9200
|
styles: [".refresh{width:100%!important}#table-annuity .col-default-s{width:10%}#table-annuity .col-default-m{width:12%}#table-annuity .col-default-l{width:16%}#table-annuity .col-action{width:10%}#table-annuity .icon-warning{text-align:center!important;color:#ff6d00c7!important}@media screen and (max-width:612px){#table-annuity .col-default-1,#table-annuity .col-default-2{width:16%}#table-annuity .col-default-3{width:26%}#table-annuity .col-icon{width:10%}#table-annuity .col-action{width:27%}}#main{display:-webkit-box;display:flex;height:100%;width:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}#main form{height:100%}#main .footer{border-top:1px solid #ccc;padding-top:15px;margin-top:15px;flex-shrink:0;margin-bottom:-18px}#main .footer-s-border{padding-left:7px;flex-shrink:0;margin-bottom:-18px}"]
|
|
9055
9201
|
})
|
|
9056
9202
|
], HistoricalPixAccountFormComponent);
|