@hosterai/types 0.0.24 → 0.0.26
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/README.md +2 -1
- package/dist/dtos/addon-field.dto.d.ts +7 -0
- package/dist/dtos/addon-field.dto.js +11 -0
- package/dist/dtos/attribute-field.dto.d.ts +20 -0
- package/dist/dtos/attribute-field.dto.js +74 -0
- package/dist/dtos/country.dto.d.ts +7 -0
- package/dist/dtos/country.dto.js +4 -0
- package/dist/dtos/field.dto.d.ts +2 -23
- package/dist/dtos/field.dto.js +8 -64
- package/dist/dtos/info.dto.d.ts +3 -2
- package/dist/dtos/info.dto.js +11 -6
- package/dist/dtos/invoice/invoice-info.dto.d.ts +15 -0
- package/dist/dtos/invoice/invoice-info.dto.js +42 -0
- package/dist/dtos/invoice/invoice-item-data.dto.d.ts +10 -0
- package/dist/dtos/invoice/invoice-item-data.dto.js +27 -0
- package/dist/dtos/invoice/requests/credit-note-request.dto.d.ts +9 -0
- package/dist/dtos/invoice/requests/credit-note-request.dto.js +26 -0
- package/dist/dtos/invoice/requests/invoice-request.dto.d.ts +9 -0
- package/dist/dtos/invoice/requests/invoice-request.dto.js +26 -0
- package/dist/dtos/invoice/requests/proforma-invoice-request.dto.d.ts +21 -0
- package/dist/dtos/invoice/requests/proforma-invoice-request.dto.js +56 -0
- package/dist/dtos/invoice/responses/credit-note-response.dto.d.ts +7 -0
- package/dist/dtos/invoice/responses/credit-note-response.dto.js +11 -0
- package/dist/dtos/invoice/responses/invoice-response.dto.d.ts +7 -0
- package/dist/dtos/invoice/responses/invoice-response.dto.js +11 -0
- package/dist/dtos/invoice/responses/proforma-invoice-response.dto.d.ts +12 -0
- package/dist/dtos/invoice/responses/proforma-invoice-response.dto.js +35 -0
- package/dist/dtos/invoice/transaction-data.dto.d.ts +14 -0
- package/dist/dtos/invoice/transaction-data.dto.js +42 -0
- package/dist/dtos/invoice-contact-data.dto.d.ts +43 -0
- package/dist/dtos/invoice-contact-data.dto.js +120 -0
- package/dist/dtos/item-data.dto.d.ts +44 -0
- package/dist/dtos/item-data.dto.js +70 -0
- package/dist/dtos/notification/requests/notification-send-request.dto.d.ts +18 -0
- package/dist/dtos/notification/requests/notification-send-request.dto.js +66 -0
- package/dist/dtos/notification/responses/notification-send-response.dto.d.ts +9 -0
- package/dist/dtos/notification/responses/notification-send-response.dto.js +26 -0
- package/dist/dtos/product/product-info.dto.d.ts +5 -0
- package/dist/dtos/product/product-info.dto.js +20 -0
- package/dist/dtos/product/product-item-data.dto.d.ts +7 -28
- package/dist/dtos/product/product-item-data.dto.js +7 -23
- package/dist/dtos/product/requests/product-create-request.dto.d.ts +1 -1
- package/dist/dtos/product/requests/product-create-request.dto.js +1 -1
- package/dist/dtos/product/requests/product-delete-request.dto.d.ts +1 -1
- package/dist/dtos/product/requests/product-delete-request.dto.js +1 -1
- package/dist/dtos/product/requests/product-downgradable-request.dto.d.ts +1 -1
- package/dist/dtos/product/requests/product-downgradable-request.dto.js +1 -1
- package/dist/dtos/product/requests/product-downgrade-request.dto.d.ts +1 -1
- package/dist/dtos/product/requests/product-downgrade-request.dto.js +1 -1
- package/dist/dtos/product/requests/product-renew-request.dto.d.ts +1 -1
- package/dist/dtos/product/requests/product-renew-request.dto.js +1 -1
- package/dist/dtos/product/requests/product-suspend-request.dto.d.ts +1 -1
- package/dist/dtos/product/requests/product-suspend-request.dto.js +1 -1
- package/dist/dtos/product/requests/product-unsuspend-request.dto.d.ts +1 -1
- package/dist/dtos/product/requests/product-unsuspend-request.dto.js +1 -1
- package/dist/dtos/product/requests/product-upgradable-request.dto.d.ts +1 -1
- package/dist/dtos/product/requests/product-upgradable-request.dto.js +1 -1
- package/dist/dtos/product/requests/product-upgrade-request.dto.d.ts +1 -1
- package/dist/dtos/product/requests/product-upgrade-request.dto.js +1 -1
- package/dist/dtos/product/responses/product-info-response.dto.js +17 -0
- package/dist/dtos/responses/validate-attributes-response.dto.js +18 -0
- package/dist/dtos/settings.dto.d.ts +18 -0
- package/dist/dtos/settings.dto.js +19 -2
- package/dist/dtos/success-response.dto.d.ts +0 -4
- package/dist/dtos/success-response.dto.js +0 -14
- package/dist/enums/invoice/invoice-item-actions.enum.d.ts +8 -0
- package/dist/enums/invoice/invoice-item-actions.enum.js +12 -0
- package/dist/enums/invoice/invoice-types.enum.d.ts +5 -0
- package/dist/enums/invoice/invoice-types.enum.js +9 -0
- package/dist/enums/item-actions.enum.d.ts +11 -0
- package/dist/enums/item-actions.enum.js +16 -0
- package/dist/enums/language.enum.d.ts +184 -184
- package/dist/enums/language.enum.js +184 -367
- package/dist/helpers/country.helper.d.ts +1 -1
- package/dist/helpers/country.helper.js +1 -3
- package/dist/index.d.ts +13 -6
- package/dist/index.js +14 -8
- package/dist/openapi/schemas/components.schemas.d.ts +42 -54
- package/dist/openapi/schemas/components.schemas.js +822 -802
- package/dist/validators/company-data-validator.spec.js +6 -6
- package/dist/validators/field-validator.spec.js +3 -3
- package/dist/validators/multilang-text-validator.spec.js +2 -2
- package/dist/validators/notification-info-validator.spec.js +11 -11
- package/dist/validators/notification-request-validator.js +1 -1
- package/dist/validators/product-info-validator.spec.js +39 -51
- package/package.json +1 -1
|
@@ -12,8 +12,8 @@ describe('CompanyDataDto Validator', () => {
|
|
|
12
12
|
emails: ['test@example.com'],
|
|
13
13
|
invoiceEmail: 'invoice@example.com',
|
|
14
14
|
privacyPolicyUrl: 'https://example.com/privacy',
|
|
15
|
-
defaultLanguage: language_enum_1.LanguageEnum.
|
|
16
|
-
languages: [language_enum_1.LanguageEnum.
|
|
15
|
+
defaultLanguage: language_enum_1.LanguageEnum.ENGLISH,
|
|
16
|
+
languages: [language_enum_1.LanguageEnum.ENGLISH, language_enum_1.LanguageEnum.FRENCH],
|
|
17
17
|
telephone: '+12133734253',
|
|
18
18
|
address1: '123 Main St',
|
|
19
19
|
postcode: '12345',
|
|
@@ -39,8 +39,8 @@ describe('CompanyDataDto Validator', () => {
|
|
|
39
39
|
emails: ['not-an-email'],
|
|
40
40
|
invoiceEmail: 'invoice@example.com',
|
|
41
41
|
privacyPolicyUrl: 'http://example.com/privacy',
|
|
42
|
-
defaultLanguage: language_enum_1.LanguageEnum.
|
|
43
|
-
languages: [language_enum_1.LanguageEnum.
|
|
42
|
+
defaultLanguage: language_enum_1.LanguageEnum.ENGLISH,
|
|
43
|
+
languages: [language_enum_1.LanguageEnum.ENGLISH, language_enum_1.LanguageEnum.FRENCH],
|
|
44
44
|
telephone: '+12133734253',
|
|
45
45
|
address1: '123 Main St',
|
|
46
46
|
postcode: '12345',
|
|
@@ -58,8 +58,8 @@ describe('CompanyDataDto Validator', () => {
|
|
|
58
58
|
emails: ['test@example.com'],
|
|
59
59
|
invoiceEmail: 'invoice@example.com',
|
|
60
60
|
privacyPolicyUrl: 'not-a-url',
|
|
61
|
-
defaultLanguage: language_enum_1.LanguageEnum.
|
|
62
|
-
languages: [language_enum_1.LanguageEnum.
|
|
61
|
+
defaultLanguage: language_enum_1.LanguageEnum.ENGLISH,
|
|
62
|
+
languages: [language_enum_1.LanguageEnum.ENGLISH, language_enum_1.LanguageEnum.FRENCH],
|
|
63
63
|
telephone: '+12133734253',
|
|
64
64
|
address1: '123 Main St',
|
|
65
65
|
postcode: '12345',
|
|
@@ -6,7 +6,7 @@ const field_type_enum_1 = require("../enums/field-type.enum");
|
|
|
6
6
|
const language_enum_1 = require("../enums/language.enum");
|
|
7
7
|
const baseValidDto = {
|
|
8
8
|
id: 'test-id',
|
|
9
|
-
label: [{ language: language_enum_1.LanguageEnum.
|
|
9
|
+
label: [{ language: language_enum_1.LanguageEnum.ENGLISH, text: 'Test Label' }],
|
|
10
10
|
value: 'test-value',
|
|
11
11
|
type: field_type_enum_1.FieldTypeEnum.TEXT_BOX,
|
|
12
12
|
required: true,
|
|
@@ -23,8 +23,8 @@ describe('FieldDto Validator', () => {
|
|
|
23
23
|
it('should return no errors for a valid DTO with optional error messages', () => {
|
|
24
24
|
const dto = {
|
|
25
25
|
...baseValidDto,
|
|
26
|
-
regexValidationErrorMessage: [{ language: language_enum_1.LanguageEnum.
|
|
27
|
-
remoteValidationErrorMessage: [{ language: language_enum_1.LanguageEnum.
|
|
26
|
+
regexValidationErrorMessage: [{ language: language_enum_1.LanguageEnum.ENGLISH, text: 'Invalid format' }],
|
|
27
|
+
remoteValidationErrorMessage: [{ language: language_enum_1.LanguageEnum.ENGLISH, text: 'Invalid value' }],
|
|
28
28
|
};
|
|
29
29
|
expect((0, field_validator_1.validateFieldDto)(dto)).toHaveLength(0);
|
|
30
30
|
});
|
|
@@ -6,7 +6,7 @@ const language_enum_1 = require("../enums/language.enum");
|
|
|
6
6
|
describe('MultilangTextDto Validator', () => {
|
|
7
7
|
it('should return no errors for valid DTO', () => {
|
|
8
8
|
const validDto = {
|
|
9
|
-
language: language_enum_1.LanguageEnum.
|
|
9
|
+
language: language_enum_1.LanguageEnum.ENGLISH,
|
|
10
10
|
text: 'Hello World',
|
|
11
11
|
};
|
|
12
12
|
const errors = (0, multilang_text_validator_1.validateMultilangTextDto)(validDto);
|
|
@@ -23,7 +23,7 @@ describe('MultilangTextDto Validator', () => {
|
|
|
23
23
|
});
|
|
24
24
|
it('should return error for missing text', () => {
|
|
25
25
|
const invalidDto = {
|
|
26
|
-
language: language_enum_1.LanguageEnum.
|
|
26
|
+
language: language_enum_1.LanguageEnum.ENGLISH,
|
|
27
27
|
// Missing text
|
|
28
28
|
};
|
|
29
29
|
const errors = (0, multilang_text_validator_1.validateMultilangTextDto)(invalidDto);
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
require("reflect-metadata");
|
|
4
4
|
const notification_info_validator_1 = require("./notification-info.validator");
|
|
5
5
|
const notification_message_type_enum_1 = require("../enums/notification/notification-message-type.enum");
|
|
6
|
-
const
|
|
6
|
+
const item_actions_enum_1 = require("../enums/item-actions.enum");
|
|
7
7
|
const language_enum_1 = require("../enums/language.enum");
|
|
8
8
|
describe('NotificationInfoDto Validator', () => {
|
|
9
9
|
const validUnit = { id: "ram", unitDescription: "MB", intervalDescription: "month" };
|
|
@@ -13,8 +13,8 @@ describe('NotificationInfoDto Validator', () => {
|
|
|
13
13
|
dto: {
|
|
14
14
|
type: notification_message_type_enum_1.NotificationMessageTypeEnum.EMAIL,
|
|
15
15
|
title: 'Valid Title',
|
|
16
|
-
supportedActions: [
|
|
17
|
-
supportedLanguages: [language_enum_1.LanguageEnum.
|
|
16
|
+
supportedActions: [item_actions_enum_1.ProductItemActionsEnum.CREATE],
|
|
17
|
+
supportedLanguages: [language_enum_1.LanguageEnum.ENGLISH],
|
|
18
18
|
payPerUseUnits: [validUnit]
|
|
19
19
|
},
|
|
20
20
|
expectedErrorsLength: 0
|
|
@@ -23,8 +23,8 @@ describe('NotificationInfoDto Validator', () => {
|
|
|
23
23
|
description: 'should return error for missing type',
|
|
24
24
|
dto: {
|
|
25
25
|
title: 'Valid Title',
|
|
26
|
-
supportedActions: [
|
|
27
|
-
supportedLanguages: [language_enum_1.LanguageEnum.
|
|
26
|
+
supportedActions: [item_actions_enum_1.ProductItemActionsEnum.CREATE],
|
|
27
|
+
supportedLanguages: [language_enum_1.LanguageEnum.ENGLISH],
|
|
28
28
|
payPerUseUnits: [validUnit]
|
|
29
29
|
},
|
|
30
30
|
expectedErrorsLength: 1
|
|
@@ -34,8 +34,8 @@ describe('NotificationInfoDto Validator', () => {
|
|
|
34
34
|
dto: {
|
|
35
35
|
type: notification_message_type_enum_1.NotificationMessageTypeEnum.EMAIL,
|
|
36
36
|
title: 'Valid Title',
|
|
37
|
-
supportedActions: [
|
|
38
|
-
supportedLanguages: [language_enum_1.LanguageEnum.
|
|
37
|
+
supportedActions: [item_actions_enum_1.ProductItemActionsEnum.CREATE],
|
|
38
|
+
supportedLanguages: [language_enum_1.LanguageEnum.ENGLISH],
|
|
39
39
|
payPerUseUnits: [{ id: "", unitDescription: "", intervalDescription: "" }] // Invalid unit
|
|
40
40
|
},
|
|
41
41
|
expectedErrorsLength: 1
|
|
@@ -52,8 +52,8 @@ describe('NotificationInfoDto Validator', () => {
|
|
|
52
52
|
description: 'should return ValidationError for missing title',
|
|
53
53
|
dto: {
|
|
54
54
|
type: notification_message_type_enum_1.NotificationMessageTypeEnum.EMAIL,
|
|
55
|
-
supportedActions: [
|
|
56
|
-
supportedLanguages: [language_enum_1.LanguageEnum.
|
|
55
|
+
supportedActions: [item_actions_enum_1.ProductItemActionsEnum.CREATE],
|
|
56
|
+
supportedLanguages: [language_enum_1.LanguageEnum.ENGLISH],
|
|
57
57
|
payPerUseUnits: [validUnit]
|
|
58
58
|
},
|
|
59
59
|
expectedErrors: ['title']
|
|
@@ -63,8 +63,8 @@ describe('NotificationInfoDto Validator', () => {
|
|
|
63
63
|
dto: {
|
|
64
64
|
type: notification_message_type_enum_1.NotificationMessageTypeEnum.EMAIL,
|
|
65
65
|
title: 'Valid Title',
|
|
66
|
-
supportedActions: [
|
|
67
|
-
supportedLanguages: [language_enum_1.LanguageEnum.
|
|
66
|
+
supportedActions: [item_actions_enum_1.ProductItemActionsEnum.CREATE],
|
|
67
|
+
supportedLanguages: [language_enum_1.LanguageEnum.ENGLISH],
|
|
68
68
|
payPerUseUnits: [{ id: "", unitDescription: "", intervalDescription: "" }]
|
|
69
69
|
},
|
|
70
70
|
expectedErrors: ['payPerUseUnits']
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.validateNotificationRequestDto = validateNotificationRequestDto;
|
|
4
4
|
const class_validator_1 = require("class-validator");
|
|
5
5
|
const class_transformer_1 = require("class-transformer");
|
|
6
|
-
const notification_send_request_dto_1 = require("../dtos/notification/notification-send-request.dto");
|
|
6
|
+
const notification_send_request_dto_1 = require("../dtos/notification/requests/notification-send-request.dto");
|
|
7
7
|
/**
|
|
8
8
|
* Validates a NotificationRequestDto object using class-validator decorators.
|
|
9
9
|
*
|
|
@@ -2,25 +2,24 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
require("reflect-metadata");
|
|
4
4
|
// import { ProductInfoDto } from '../dtos/product/product-info.dto';
|
|
5
|
-
const
|
|
5
|
+
const item_actions_enum_1 = require("../enums/item-actions.enum");
|
|
6
6
|
const language_enum_1 = require("../enums/language.enum");
|
|
7
7
|
const field_type_enum_1 = require("../enums/field-type.enum");
|
|
8
8
|
const product_info_validator_1 = require("./product-info.validator");
|
|
9
9
|
describe('ProductInfoDto Validator', () => {
|
|
10
10
|
const field = {
|
|
11
11
|
id: 'field',
|
|
12
|
-
label: [{ language: language_enum_1.LanguageEnum.
|
|
12
|
+
label: [{ language: language_enum_1.LanguageEnum.ENGLISH, text: "label" }],
|
|
13
13
|
value: 'string',
|
|
14
14
|
type: field_type_enum_1.FieldTypeEnum.TEXT_BOX,
|
|
15
15
|
required: false,
|
|
16
16
|
disabled: false,
|
|
17
|
-
|
|
18
|
-
visibleInClientPanel: true,
|
|
17
|
+
hidden: false,
|
|
19
18
|
upgradable: false
|
|
20
19
|
};
|
|
21
20
|
const invalidField = {
|
|
22
21
|
id: 'field',
|
|
23
|
-
label: [{ language: language_enum_1.LanguageEnum.
|
|
22
|
+
label: [{ language: language_enum_1.LanguageEnum.ENGLISH, text: "label" }],
|
|
24
23
|
value: 'string',
|
|
25
24
|
type: field_type_enum_1.FieldTypeEnum.TEXT_BOX,
|
|
26
25
|
disabled: false,
|
|
@@ -31,8 +30,8 @@ describe('ProductInfoDto Validator', () => {
|
|
|
31
30
|
description: 'should return no errors for valid DTO',
|
|
32
31
|
dto: {
|
|
33
32
|
title: 'Test',
|
|
34
|
-
supportedActions: [
|
|
35
|
-
supportedLanguages: [language_enum_1.LanguageEnum.
|
|
33
|
+
supportedActions: [item_actions_enum_1.ProductItemActionsEnum.CREATE],
|
|
34
|
+
supportedLanguages: [language_enum_1.LanguageEnum.ENGLISH],
|
|
36
35
|
productAttributes: [field],
|
|
37
36
|
itemAttributes: [field]
|
|
38
37
|
},
|
|
@@ -42,8 +41,8 @@ describe('ProductInfoDto Validator', () => {
|
|
|
42
41
|
description: 'should return error for invalid required and hidden',
|
|
43
42
|
dto: {
|
|
44
43
|
title: 'Test',
|
|
45
|
-
supportedActions: [
|
|
46
|
-
supportedLanguages: [language_enum_1.LanguageEnum.
|
|
44
|
+
supportedActions: [item_actions_enum_1.ProductItemActionsEnum.CREATE],
|
|
45
|
+
supportedLanguages: [language_enum_1.LanguageEnum.ENGLISH],
|
|
47
46
|
itemAttributes: [invalidField]
|
|
48
47
|
},
|
|
49
48
|
expectedErrorsLength: 1
|
|
@@ -52,8 +51,8 @@ describe('ProductInfoDto Validator', () => {
|
|
|
52
51
|
description: 'should return error for invalid title',
|
|
53
52
|
dto: {
|
|
54
53
|
title: '',
|
|
55
|
-
supportedActions: [
|
|
56
|
-
supportedLanguages: [language_enum_1.LanguageEnum.
|
|
54
|
+
supportedActions: [item_actions_enum_1.ProductItemActionsEnum.CREATE],
|
|
55
|
+
supportedLanguages: [language_enum_1.LanguageEnum.ENGLISH],
|
|
57
56
|
productAttributes: [field],
|
|
58
57
|
itemAttributes: [field]
|
|
59
58
|
},
|
|
@@ -64,7 +63,7 @@ describe('ProductInfoDto Validator', () => {
|
|
|
64
63
|
dto: {
|
|
65
64
|
title: 'Test',
|
|
66
65
|
supportedActions: ['update'],
|
|
67
|
-
supportedLanguages: [language_enum_1.LanguageEnum.
|
|
66
|
+
supportedLanguages: [language_enum_1.LanguageEnum.ENGLISH],
|
|
68
67
|
productAttributes: [field],
|
|
69
68
|
itemAttributes: [field]
|
|
70
69
|
},
|
|
@@ -74,7 +73,7 @@ describe('ProductInfoDto Validator', () => {
|
|
|
74
73
|
description: 'should return error for unsupported language',
|
|
75
74
|
dto: {
|
|
76
75
|
title: 'Test',
|
|
77
|
-
supportedActions: [
|
|
76
|
+
supportedActions: [item_actions_enum_1.ProductItemActionsEnum.CREATE],
|
|
78
77
|
supportedLanguages: [],
|
|
79
78
|
productAttributes: [field],
|
|
80
79
|
itemAttributes: [field]
|
|
@@ -85,8 +84,8 @@ describe('ProductInfoDto Validator', () => {
|
|
|
85
84
|
description: 'should return no errors for valid DTO with adminPanel and clientPanel',
|
|
86
85
|
dto: {
|
|
87
86
|
title: 'Test',
|
|
88
|
-
supportedActions: [
|
|
89
|
-
supportedLanguages: [language_enum_1.LanguageEnum.
|
|
87
|
+
supportedActions: [item_actions_enum_1.ProductItemActionsEnum.CREATE],
|
|
88
|
+
supportedLanguages: [language_enum_1.LanguageEnum.ENGLISH],
|
|
90
89
|
productAttributes: [field],
|
|
91
90
|
itemAttributes: [field],
|
|
92
91
|
adminPanel: { tabs: { product: [{ label: 'Product', url: 'https://example.com/product' }] } },
|
|
@@ -98,8 +97,8 @@ describe('ProductInfoDto Validator', () => {
|
|
|
98
97
|
description: 'should return error for invalid DTO with adminPanel and clientPanel',
|
|
99
98
|
dto: {
|
|
100
99
|
title: '',
|
|
101
|
-
supportedActions: [
|
|
102
|
-
supportedLanguages: [language_enum_1.LanguageEnum.
|
|
100
|
+
supportedActions: [item_actions_enum_1.ProductItemActionsEnum.CREATE],
|
|
101
|
+
supportedLanguages: [language_enum_1.LanguageEnum.ENGLISH],
|
|
103
102
|
productAttributes: [field],
|
|
104
103
|
itemAttributes: [field],
|
|
105
104
|
adminPanel: { /* invalid admin panel data */},
|
|
@@ -111,8 +110,8 @@ describe('ProductInfoDto Validator', () => {
|
|
|
111
110
|
description: 'should return no errors for valid DTO with payPerUseUnits',
|
|
112
111
|
dto: {
|
|
113
112
|
title: 'Test',
|
|
114
|
-
supportedActions: [
|
|
115
|
-
supportedLanguages: [language_enum_1.LanguageEnum.
|
|
113
|
+
supportedActions: [item_actions_enum_1.ProductItemActionsEnum.CREATE],
|
|
114
|
+
supportedLanguages: [language_enum_1.LanguageEnum.ENGLISH],
|
|
116
115
|
productAttributes: [field],
|
|
117
116
|
itemAttributes: [field],
|
|
118
117
|
payPerUseUnits: [{ id: "ram", unitDescription: "MB", intervalDescription: "month" }]
|
|
@@ -123,8 +122,8 @@ describe('ProductInfoDto Validator', () => {
|
|
|
123
122
|
description: 'should return error for invalid DTO with payPerUseUnits',
|
|
124
123
|
dto: {
|
|
125
124
|
title: 'Test',
|
|
126
|
-
supportedActions: [
|
|
127
|
-
supportedLanguages: [language_enum_1.LanguageEnum.
|
|
125
|
+
supportedActions: [item_actions_enum_1.ProductItemActionsEnum.CREATE],
|
|
126
|
+
supportedLanguages: [language_enum_1.LanguageEnum.ENGLISH],
|
|
128
127
|
productAttributes: [field],
|
|
129
128
|
itemAttributes: [field],
|
|
130
129
|
payPerUseUnits: [{ id: "", unitDescription: "", intervalDescription: "" }]
|
|
@@ -142,8 +141,8 @@ describe('ProductInfoDto Validator', () => {
|
|
|
142
141
|
{
|
|
143
142
|
description: 'should return ValidationError for missing title',
|
|
144
143
|
dto: {
|
|
145
|
-
supportedActions: [
|
|
146
|
-
supportedLanguages: [language_enum_1.LanguageEnum.
|
|
144
|
+
supportedActions: [item_actions_enum_1.ProductItemActionsEnum.CREATE],
|
|
145
|
+
supportedLanguages: [language_enum_1.LanguageEnum.ENGLISH],
|
|
147
146
|
productAttributes: [field],
|
|
148
147
|
itemAttributes: [field]
|
|
149
148
|
},
|
|
@@ -154,7 +153,7 @@ describe('ProductInfoDto Validator', () => {
|
|
|
154
153
|
dto: {
|
|
155
154
|
title: 'Test',
|
|
156
155
|
supportedActions: ['update'],
|
|
157
|
-
supportedLanguages: [language_enum_1.LanguageEnum.
|
|
156
|
+
supportedLanguages: [language_enum_1.LanguageEnum.ENGLISH],
|
|
158
157
|
productAttributes: [field],
|
|
159
158
|
itemAttributes: [field]
|
|
160
159
|
},
|
|
@@ -174,20 +173,18 @@ describe('ProductInfoDto Validator', () => {
|
|
|
174
173
|
it('fails when a FieldDto has only repeatableMin (AllOrNone)', () => {
|
|
175
174
|
const fieldWithOnlyMin = {
|
|
176
175
|
id: 'f1',
|
|
177
|
-
label: [{ language: language_enum_1.LanguageEnum.
|
|
176
|
+
label: [{ language: language_enum_1.LanguageEnum.ENGLISH, text: 'label' }],
|
|
178
177
|
value: 'v',
|
|
179
178
|
type: field_type_enum_1.FieldTypeEnum.TEXT_BOX,
|
|
180
179
|
required: false,
|
|
181
180
|
disabled: false,
|
|
182
|
-
|
|
183
|
-
visibleInClientPanel: true,
|
|
181
|
+
hidden: false,
|
|
184
182
|
upgradable: false,
|
|
185
|
-
repeatableMin: 1,
|
|
186
183
|
};
|
|
187
184
|
const dto = {
|
|
188
185
|
title: 'Test',
|
|
189
|
-
supportedActions: [
|
|
190
|
-
supportedLanguages: [language_enum_1.LanguageEnum.
|
|
186
|
+
supportedActions: [item_actions_enum_1.ProductItemActionsEnum.CREATE],
|
|
187
|
+
supportedLanguages: [language_enum_1.LanguageEnum.ENGLISH],
|
|
191
188
|
productAttributes: [fieldWithOnlyMin],
|
|
192
189
|
};
|
|
193
190
|
const errors = (0, product_info_validator_1.validateProductInfoDto)(dto);
|
|
@@ -196,20 +193,18 @@ describe('ProductInfoDto Validator', () => {
|
|
|
196
193
|
it('fails when a FieldDto has only repeatableMax (AllOrNone)', () => {
|
|
197
194
|
const fieldWithOnlyMax = {
|
|
198
195
|
id: 'f2',
|
|
199
|
-
label: [{ language: language_enum_1.LanguageEnum.
|
|
196
|
+
label: [{ language: language_enum_1.LanguageEnum.ENGLISH, text: 'label' }],
|
|
200
197
|
value: 'v',
|
|
201
198
|
type: field_type_enum_1.FieldTypeEnum.TEXT_BOX,
|
|
202
199
|
required: false,
|
|
203
200
|
disabled: false,
|
|
204
|
-
visibleInOrder: false,
|
|
205
|
-
visibleInClientPanel: true,
|
|
206
201
|
upgradable: false,
|
|
207
|
-
|
|
202
|
+
hidden: false
|
|
208
203
|
};
|
|
209
204
|
const dto = {
|
|
210
205
|
title: 'Test',
|
|
211
|
-
supportedActions: [
|
|
212
|
-
supportedLanguages: [language_enum_1.LanguageEnum.
|
|
206
|
+
supportedActions: [item_actions_enum_1.ProductItemActionsEnum.CREATE],
|
|
207
|
+
supportedLanguages: [language_enum_1.LanguageEnum.ENGLISH],
|
|
213
208
|
itemAttributes: [fieldWithOnlyMax],
|
|
214
209
|
};
|
|
215
210
|
const errors = (0, product_info_validator_1.validateProductInfoDto)(dto);
|
|
@@ -218,21 +213,17 @@ describe('ProductInfoDto Validator', () => {
|
|
|
218
213
|
it('passes when a FieldDto has both min and max with min <= max', () => {
|
|
219
214
|
const fieldOk = {
|
|
220
215
|
id: 'f3',
|
|
221
|
-
label: [{ language: language_enum_1.LanguageEnum.
|
|
216
|
+
label: [{ language: language_enum_1.LanguageEnum.ENGLISH, text: 'label' }],
|
|
222
217
|
value: 'v',
|
|
223
218
|
type: field_type_enum_1.FieldTypeEnum.TEXT_BOX,
|
|
224
219
|
required: false,
|
|
225
220
|
disabled: false,
|
|
226
|
-
|
|
227
|
-
visibleInClientPanel: true,
|
|
228
|
-
upgradable: false,
|
|
229
|
-
repeatableMin: 1,
|
|
230
|
-
repeatableMax: 2,
|
|
221
|
+
hidden: false,
|
|
231
222
|
};
|
|
232
223
|
const dto = {
|
|
233
224
|
title: 'Test',
|
|
234
|
-
supportedActions: [
|
|
235
|
-
supportedLanguages: [language_enum_1.LanguageEnum.
|
|
225
|
+
supportedActions: [item_actions_enum_1.ProductItemActionsEnum.CREATE],
|
|
226
|
+
supportedLanguages: [language_enum_1.LanguageEnum.ENGLISH],
|
|
236
227
|
productAttributes: [fieldOk],
|
|
237
228
|
};
|
|
238
229
|
expect((0, product_info_validator_1.validateProductInfoDto)(dto)).toHaveLength(0);
|
|
@@ -240,21 +231,18 @@ describe('ProductInfoDto Validator', () => {
|
|
|
240
231
|
it('fails when a FieldDto has both min and max with min > max (Min<=Max)', () => {
|
|
241
232
|
const fieldBad = {
|
|
242
233
|
id: 'f4',
|
|
243
|
-
label: [{ language: language_enum_1.LanguageEnum.
|
|
234
|
+
label: [{ language: language_enum_1.LanguageEnum.ENGLISH, text: 'label' }],
|
|
244
235
|
value: 'v',
|
|
245
236
|
type: field_type_enum_1.FieldTypeEnum.TEXT_BOX,
|
|
246
237
|
required: false,
|
|
247
238
|
disabled: false,
|
|
248
|
-
|
|
249
|
-
visibleInClientPanel: true,
|
|
239
|
+
hidden: false,
|
|
250
240
|
upgradable: false,
|
|
251
|
-
repeatableMin: 5,
|
|
252
|
-
repeatableMax: 2,
|
|
253
241
|
};
|
|
254
242
|
const dto = {
|
|
255
243
|
title: 'Test',
|
|
256
|
-
supportedActions: [
|
|
257
|
-
supportedLanguages: [language_enum_1.LanguageEnum.
|
|
244
|
+
supportedActions: [item_actions_enum_1.ProductItemActionsEnum.CREATE],
|
|
245
|
+
supportedLanguages: [language_enum_1.LanguageEnum.ENGLISH],
|
|
258
246
|
itemAttributes: [fieldBad],
|
|
259
247
|
};
|
|
260
248
|
const errors = (0, product_info_validator_1.validateProductInfoDto)(dto);
|