@studyportals/campaign-management-api-interface 13.0.0 → 14.1.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/package.json CHANGED
@@ -1,49 +1,49 @@
1
- {
2
- "name": "@studyportals/campaign-management-api-interface",
3
- "version": "13.0.0",
4
- "scripts": {
5
- "compile": "rm -fR bin && npx tsc",
6
- "test-u": "jest -c jest.config.unit.json --maxWorkers=1",
7
- "test-i": "nyc mocha src tests-i",
8
- "prepare-deployment": "npm run test-u && npm run compile && cp package.json bin/package.json && rm -fR bin/tests-u",
9
- "predeploy": "npm run prepare-deployment",
10
- "deploy": "npm publish ./bin --access=public",
11
- "deploy-patch": "npm version patch && npm run deploy",
12
- "deploy-minor": "npm version minor && npm run deploy",
13
- "deploy-major": "npm version major && npm run deploy",
14
- "deploy-beta": "npm version prerelease && npm run deploy -- --tag beta"
15
- },
16
- "author": "SPNightsWatch",
17
- "license": "ISC",
18
- "types": "bin/index.d.ts",
19
- "devDependencies": {
20
- "@studyportals/code-style": "^2.2.1",
21
- "@testdeck/jest": "^0.3.3",
22
- "@types/chai": "^4.3.4",
23
- "@types/jest": "^29.4.0",
24
- "@types/node": "^22.18.0",
25
- "@types/superagent": "^4.1.13",
26
- "chai": "^4.3.4",
27
- "eslint": "^8.33.0",
28
- "jest": "^29.4.2",
29
- "jest-mock-extended": "^3.0.1",
30
- "superagent": "^8.1.2",
31
- "superagent-mocker": "^0.5.2",
32
- "ts-jest": "^29.0.5",
33
- "ts-node": "^10.9.2",
34
- "typescript": "^5.5.4"
35
- },
36
- "dependencies": {
37
- "@studyportals/mb-platform-date-time": "^1.3.1",
38
- "@studyportals/mb-platform-http-requests": "^2.7.1",
39
- "@studyportals/university-scheduler-interface": "^0.7.0",
40
- "class-transformer": "^0.5.1",
41
- "class-validator": "^0.14.1",
42
- "inversify": "^6.0.1",
43
- "reflect-metadata": "^0.1.13"
44
- },
45
- "engines": {
46
- "node": ">=18 <=22",
47
- "npm ": "10.x"
48
- }
49
- }
1
+ {
2
+ "name": "@studyportals/campaign-management-api-interface",
3
+ "version": "14.1.0",
4
+ "scripts": {
5
+ "compile": "rm -fR bin && npx tsc",
6
+ "test-u": "jest -c jest.config.unit.json --maxWorkers=1",
7
+ "test-i": "nyc mocha src tests-i",
8
+ "prepare-deployment": "npm run test-u && npm run compile && cp package.json bin/package.json && rm -fR bin/tests-u",
9
+ "predeploy": "npm run prepare-deployment",
10
+ "deploy": "npm publish ./bin --access=public",
11
+ "deploy-patch": "npm version patch && npm run deploy",
12
+ "deploy-minor": "npm version minor && npm run deploy",
13
+ "deploy-major": "npm version major && npm run deploy",
14
+ "deploy-beta": "npm version prerelease && npm run deploy -- --tag beta"
15
+ },
16
+ "author": "SPNightsWatch",
17
+ "license": "ISC",
18
+ "types": "bin/index.d.ts",
19
+ "devDependencies": {
20
+ "@studyportals/code-style": "^2.2.1",
21
+ "@testdeck/jest": "^0.3.3",
22
+ "@types/chai": "^4.3.4",
23
+ "@types/jest": "^29.4.0",
24
+ "@types/node": "^22.18.0",
25
+ "@types/superagent": "^4.1.13",
26
+ "chai": "^4.3.4",
27
+ "eslint": "^8.33.0",
28
+ "jest": "^29.4.2",
29
+ "jest-mock-extended": "^3.0.1",
30
+ "superagent": "^8.1.2",
31
+ "superagent-mocker": "^0.5.2",
32
+ "ts-jest": "^29.0.5",
33
+ "ts-node": "^10.9.2",
34
+ "typescript": "^5.5.4"
35
+ },
36
+ "dependencies": {
37
+ "@studyportals/mb-platform-date-time": "^1.3.1",
38
+ "@studyportals/mb-platform-http-requests": "^2.7.1",
39
+ "@studyportals/university-scheduler-interface": "^0.7.0",
40
+ "class-transformer": "^0.5.1",
41
+ "class-validator": "^0.14.1",
42
+ "inversify": "^6.0.1",
43
+ "reflect-metadata": "^0.1.13"
44
+ },
45
+ "engines": {
46
+ "node": ">=18 <=22",
47
+ "npm ": "10.x"
48
+ }
49
+ }
@@ -7,6 +7,9 @@ export type CampaignMandatoryFieldsValidatorInputShape = {
7
7
  [key in PropertyNames]: unknown;
8
8
  };
9
9
  export declare class CampaignMandatoryFieldsValidator {
10
+ static readonly overPerformanceLimitMinValue = 100;
11
+ static readonly overPerformanceLimitMaxValue = 999;
12
+ static readonly maximumCrmIdDigits = 5;
10
13
  static validate(data: CampaignMandatoryFieldsValidatorInputShape): ValidationResult;
11
14
  static checkName(data: CampaignMandatoryFieldsValidatorInputShape): SpecificResult;
12
15
  static checkDate(data: CampaignMandatoryFieldsValidatorInputShape, propertyName: PropertyNames): SpecificResult;
@@ -17,7 +20,9 @@ export declare class CampaignMandatoryFieldsValidator {
17
20
  static checkCampaignType(data: CampaignMandatoryFieldsValidatorInputShape): SpecificResult;
18
21
  static checkCurrency(data: CampaignMandatoryFieldsValidatorInputShape): SpecificResult;
19
22
  static checkNumber(data: CampaignMandatoryFieldsValidatorInputShape, propertyName: PropertyNames): SpecificResult;
23
+ static checkInteger(data: CampaignMandatoryFieldsValidatorInputShape, propertyName: PropertyNames): SpecificResult;
20
24
  static checkRegion(data: CampaignMandatoryFieldsValidatorInputShape): SpecificResult;
21
25
  static checkPersistGLParamRefLink(data: CampaignMandatoryFieldsValidatorInputShape): SpecificResult;
26
+ static checkCrmId(data: CampaignMandatoryFieldsValidatorInputShape, propertyName: PropertyNames): SpecificResult;
22
27
  }
23
28
  export {};
@@ -27,9 +27,10 @@ class CampaignMandatoryFieldsValidator {
27
27
  result[this.checkCampaignType(data)].push('campaignType');
28
28
  result[this.checkCurrency(data)].push('currency');
29
29
  result[this.checkNumber(data, 'listingBudget')].push('listingBudget');
30
+ result[this.checkNumber(data, 'customProductsBudget')].push('customProductsBudget');
30
31
  result[this.checkNumber(data, 'clientServicesPerson')].push('clientServicesPerson');
31
32
  result[this.checkNumber(data, 'accountManager')].push('accountManager');
32
- result[this.checkNumber(data, 'crmId')].push('crmId');
33
+ result[this.checkCrmId(data, 'crmId')].push('crmId');
33
34
  result[this.checkRegion(data)].push('region');
34
35
  result[this.checkPersistGLParamRefLink(data)].push('persistGLParamRefLink');
35
36
  return result;
@@ -89,8 +90,12 @@ class CampaignMandatoryFieldsValidator {
89
90
  return SpecificResult_1.SpecificResult.VALID;
90
91
  }
91
92
  case campaign_1.DeliveryType.CUSTOM_OVERPERFORMANCE: {
92
- if (typeof deliveryMode.overperformanceLimit === 'number' && deliveryMode.overperformanceLimit >= 0) {
93
- return SpecificResult_1.SpecificResult.VALID;
93
+ if (typeof deliveryMode.overperformanceLimit === 'number') {
94
+ if (deliveryMode.overperformanceLimit >= this.overPerformanceLimitMinValue &&
95
+ deliveryMode.overperformanceLimit <= this.overPerformanceLimitMaxValue) {
96
+ return SpecificResult_1.SpecificResult.VALID;
97
+ }
98
+ return SpecificResult_1.SpecificResult.INVALID;
94
99
  }
95
100
  return SpecificResult_1.SpecificResult.INVALID;
96
101
  }
@@ -130,6 +135,17 @@ class CampaignMandatoryFieldsValidator {
130
135
  }
131
136
  return SpecificResult_1.SpecificResult.INVALID;
132
137
  }
138
+ static checkInteger(data, propertyName) {
139
+ const numberCheckResult = this.checkNumber(data, propertyName);
140
+ if (numberCheckResult !== SpecificResult_1.SpecificResult.VALID) {
141
+ return numberCheckResult;
142
+ }
143
+ const number = data[propertyName];
144
+ if (number % 1 != 0) {
145
+ return SpecificResult_1.SpecificResult.INVALID;
146
+ }
147
+ return SpecificResult_1.SpecificResult.VALID;
148
+ }
133
149
  static checkRegion(data) {
134
150
  if (!data.region) {
135
151
  return SpecificResult_1.SpecificResult.MISSING;
@@ -153,6 +169,20 @@ class CampaignMandatoryFieldsValidator {
153
169
  }
154
170
  return SpecificResult_1.SpecificResult.VALID;
155
171
  }
172
+ static checkCrmId(data, propertyName) {
173
+ const numberCheckResult = this.checkInteger(data, propertyName);
174
+ if (numberCheckResult !== SpecificResult_1.SpecificResult.VALID) {
175
+ return numberCheckResult;
176
+ }
177
+ const crmId = data[propertyName];
178
+ if (crmId > Math.pow(10, this.maximumCrmIdDigits) - 1) {
179
+ return SpecificResult_1.SpecificResult.INVALID;
180
+ }
181
+ return SpecificResult_1.SpecificResult.VALID;
182
+ }
156
183
  }
157
184
  exports.CampaignMandatoryFieldsValidator = CampaignMandatoryFieldsValidator;
185
+ CampaignMandatoryFieldsValidator.overPerformanceLimitMinValue = 100;
186
+ CampaignMandatoryFieldsValidator.overPerformanceLimitMaxValue = 999;
187
+ CampaignMandatoryFieldsValidator.maximumCrmIdDigits = 5;
158
188
  //# sourceMappingURL=mandatory-fields-validator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mandatory-fields-validator.js","sourceRoot":"","sources":["../../../../src/validation/campaign/mandatory-fields-validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mandatory-fields-validator.js","sourceRoot":"","sources":["../../../../src/validation/campaign/mandatory-fields-validator.ts"],"names":[],"mappings":"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"}