@sofit/view-locale 1.104.0 → 1.105.0
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/dist/joi/joi.interface.d.ts +1 -0
- package/dist/runner.d.ts +1 -0
- package/dist/runner.js +11 -0
- package/dist/translations/modules/backup_vehicle.d.ts +14 -0
- package/dist/translations/modules/backup_vehicle.js +15 -1
- package/junit.xml +6 -6
- package/lib/joi/joi.interface.ts +1 -0
- package/lib/runner.ts +33 -1
- package/lib/translations/modules/backup_vehicle.ts +15 -0
- package/package.json +1 -1
package/dist/runner.d.ts
CHANGED
package/dist/runner.js
CHANGED
|
@@ -88,6 +88,17 @@ class Locale {
|
|
|
88
88
|
if (detail.context.label === TRANSLATION_NOT_FOUND) {
|
|
89
89
|
detail.context.label = detail.context.key;
|
|
90
90
|
}
|
|
91
|
+
this.fitEnumValidOptions(detail);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
fitEnumValidOptions(detail) {
|
|
95
|
+
if (detail.context && detail.context.valids && detail.context.key && detail.type === 'any.allowOnly') {
|
|
96
|
+
const tableName = detail.message.split('.')[0].replace('"', '');
|
|
97
|
+
if (tableName) {
|
|
98
|
+
detail.context.valids = Object.keys(TRANSLATIONS[tableName].enums[detail.context.key]).map(key => {
|
|
99
|
+
return this.reach(TRANSLATIONS[tableName].enums[detail.context.key][key], detail.context);
|
|
100
|
+
}).join(', ');
|
|
101
|
+
}
|
|
91
102
|
}
|
|
92
103
|
}
|
|
93
104
|
}
|
|
@@ -40,6 +40,20 @@ export declare const fields: {
|
|
|
40
40
|
es: string;
|
|
41
41
|
};
|
|
42
42
|
};
|
|
43
|
+
export declare const messages: {
|
|
44
|
+
supplier_must_be_rental: {
|
|
45
|
+
ptBR: string;
|
|
46
|
+
es: string;
|
|
47
|
+
};
|
|
48
|
+
forbidden_in_use_value: {
|
|
49
|
+
ptBR: string;
|
|
50
|
+
es: string;
|
|
51
|
+
};
|
|
52
|
+
leasing_contract_must_be_from_rental_agency: {
|
|
53
|
+
ptBR: string;
|
|
54
|
+
es: string;
|
|
55
|
+
};
|
|
56
|
+
};
|
|
43
57
|
export declare const enums: {
|
|
44
58
|
status: {
|
|
45
59
|
available: {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.enums = exports.fields = exports.name = void 0;
|
|
3
|
+
exports.enums = exports.messages = exports.fields = exports.name = void 0;
|
|
4
4
|
const entity_1 = require("../common/entity");
|
|
5
5
|
exports.name = {
|
|
6
6
|
ptBR: 'Veículo reserva',
|
|
@@ -25,6 +25,20 @@ exports.fields = Object.assign(Object.assign({}, entity_1.ENTITY_COMMON), { lice
|
|
|
25
25
|
ptBR: 'Observação',
|
|
26
26
|
es: 'Observación'
|
|
27
27
|
} });
|
|
28
|
+
exports.messages = {
|
|
29
|
+
supplier_must_be_rental: {
|
|
30
|
+
ptBR: 'O fornecedor informado como locadora deve ser do tipo “Locadora”.',
|
|
31
|
+
es: 'El proveedor informado como alquiler debe ser del tipo ”Alquiler”.'
|
|
32
|
+
},
|
|
33
|
+
forbidden_in_use_value: {
|
|
34
|
+
ptBR: 'Não é possível utilizar a situação “Em uso”, pois ela é definida automaticamente pelo sistema.',
|
|
35
|
+
es: 'Npo es posible utilizar la situación "En uso", ya que el sistema la define automáticamente.'
|
|
36
|
+
},
|
|
37
|
+
leasing_contract_must_be_from_rental_agency: {
|
|
38
|
+
ptBR: 'O contrato de locação deve pertencer à locadora informada.',
|
|
39
|
+
es: 'El contracto de locación debe pertenecer a el alquiler informado.'
|
|
40
|
+
}
|
|
41
|
+
};
|
|
28
42
|
exports.enums = {
|
|
29
43
|
status: {
|
|
30
44
|
'available': {
|
package/junit.xml
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<testsuites name="Sofit view locale tests" tests="8" failures="0" time="
|
|
3
|
-
<testsuite name="Vehicle locale test" errors="0" failures="0" skipped="0" timestamp="2020-07-
|
|
2
|
+
<testsuites name="Sofit view locale tests" tests="8" failures="0" time="2.931">
|
|
3
|
+
<testsuite name="Vehicle locale test" errors="0" failures="0" skipped="0" timestamp="2020-07-21T14:54:04" time="2.21" tests="4">
|
|
4
4
|
<testcase classname="Vehicle locale test Should get translations with reach" name="Vehicle locale test Should get translations with reach" time="0.002">
|
|
5
5
|
</testcase>
|
|
6
6
|
<testcase classname="Vehicle locale test Should replace correctly with reach" name="Vehicle locale test Should replace correctly with reach" time="0">
|
|
@@ -10,14 +10,14 @@
|
|
|
10
10
|
<testcase classname="Vehicle locale test Should replace correctly with raw" name="Vehicle locale test Should replace correctly with raw" time="0">
|
|
11
11
|
</testcase>
|
|
12
12
|
</testsuite>
|
|
13
|
-
<testsuite name="Joi tests" errors="0" failures="0" skipped="0" timestamp="2020-07-
|
|
13
|
+
<testsuite name="Joi tests" errors="0" failures="0" skipped="0" timestamp="2020-07-21T14:54:04" time="2.217" tests="4">
|
|
14
14
|
<testcase classname="Joi tests should return default message" name="Joi tests should return default message" time="0.002">
|
|
15
15
|
</testcase>
|
|
16
|
-
<testcase classname="Joi tests should return non label message" name="Joi tests should return non label message" time="0
|
|
16
|
+
<testcase classname="Joi tests should return non label message" name="Joi tests should return non label message" time="0">
|
|
17
17
|
</testcase>
|
|
18
|
-
<testcase classname="Joi tests should return translated label message" name="Joi tests should return translated label message" time="0">
|
|
18
|
+
<testcase classname="Joi tests should return translated label message" name="Joi tests should return translated label message" time="0.001">
|
|
19
19
|
</testcase>
|
|
20
|
-
<testcase classname="Joi tests should return translated label index" name="Joi tests should return translated label index" time="0
|
|
20
|
+
<testcase classname="Joi tests should return translated label index" name="Joi tests should return translated label index" time="0">
|
|
21
21
|
</testcase>
|
|
22
22
|
</testsuite>
|
|
23
23
|
</testsuites>
|
package/lib/joi/joi.interface.ts
CHANGED
package/lib/runner.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IValidationErrorItem } from './joi/joi.interface';
|
|
1
|
+
import { IContext, IValidationErrorItem } from './joi/joi.interface';
|
|
2
2
|
import { IAccessKey, LANGUAGES } from './languages';
|
|
3
3
|
import * as TRANSLATIONS from './translations';
|
|
4
4
|
|
|
@@ -114,6 +114,38 @@ export class Locale {
|
|
|
114
114
|
|
|
115
115
|
detail.context.label = detail.context.key;
|
|
116
116
|
}
|
|
117
|
+
|
|
118
|
+
this.fitEnumValidOptions(detail);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
/*
|
|
123
|
+
Criar teste para esta função abaixo recebendo este detail:
|
|
124
|
+
detail {
|
|
125
|
+
message: '"backup_vehicle.fields.status" must be one of [available, in_use, inactive]',
|
|
126
|
+
path: [ 'status' ],
|
|
127
|
+
type: 'any.allowOnly',
|
|
128
|
+
context: {
|
|
129
|
+
value: 'Disponível',
|
|
130
|
+
valids: [ 'available', 'in_use', 'inactive' ],
|
|
131
|
+
key: 'status',
|
|
132
|
+
label: 'Situação'
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
*/
|
|
136
|
+
private fitEnumValidOptions(detail: IValidationErrorItem) {
|
|
137
|
+
|
|
138
|
+
if (detail.context && detail.context.valids && detail.context.key && detail.type === 'any.allowOnly') {
|
|
139
|
+
|
|
140
|
+
const tableName = detail.message.split('.')[0].replace('"', '');
|
|
141
|
+
|
|
142
|
+
if (tableName) {
|
|
143
|
+
|
|
144
|
+
detail.context.valids = Object.keys(TRANSLATIONS[tableName].enums[detail.context.key]).map(key => {
|
|
145
|
+
|
|
146
|
+
return this.reach(TRANSLATIONS[tableName].enums[(detail.context as IContext).key][key], detail.context as IReplaces);
|
|
147
|
+
}).join(', ');
|
|
148
|
+
}
|
|
117
149
|
}
|
|
118
150
|
}
|
|
119
151
|
}
|
|
@@ -33,6 +33,21 @@ export const fields = {
|
|
|
33
33
|
}
|
|
34
34
|
};
|
|
35
35
|
|
|
36
|
+
export const messages = {
|
|
37
|
+
supplier_must_be_rental: {
|
|
38
|
+
ptBR: 'O fornecedor informado como locadora deve ser do tipo “Locadora”.',
|
|
39
|
+
es: 'El proveedor informado como alquiler debe ser del tipo ”Alquiler”.'
|
|
40
|
+
},
|
|
41
|
+
forbidden_in_use_value: {
|
|
42
|
+
ptBR: 'Não é possível utilizar a situação “Em uso”, pois ela é definida automaticamente pelo sistema.',
|
|
43
|
+
es: 'Npo es posible utilizar la situación "En uso", ya que el sistema la define automáticamente.'
|
|
44
|
+
},
|
|
45
|
+
leasing_contract_must_be_from_rental_agency: {
|
|
46
|
+
ptBR: 'O contrato de locação deve pertencer à locadora informada.',
|
|
47
|
+
es: 'El contracto de locación debe pertenecer a el alquiler informado.'
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
|
|
36
51
|
export const enums = {
|
|
37
52
|
status: {
|
|
38
53
|
'available': {
|