@studyportals/campaign-management-api-interface 9.3.0 → 9.3.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 +44 -44
- package/src/domain/campaign/enums/campaign-change-enum.d.ts +3 -1
- package/src/domain/campaign/enums/campaign-change-enum.js +2 -0
- package/src/domain/campaign/enums/campaign-change-enum.js.map +1 -1
- package/src/domain/campaign/saving/change/campaign-change.d.ts +2 -2
- package/src/domain/campaign/saving/change/extraction/changes-extractor.js +14 -1
- package/src/domain/campaign/saving/change/extraction/changes-extractor.js.map +1 -1
- package/src/domain/campaign/saving/change/extraction/link-organisations-change-extractor.d.ts +7 -0
- package/src/domain/campaign/saving/change/extraction/link-organisations-change-extractor.js +20 -0
- package/src/domain/campaign/saving/change/extraction/link-organisations-change-extractor.js.map +1 -0
- package/src/domain/campaign/saving/change/extraction/unlink-organisations-change-extractor.d.ts +7 -0
- package/src/domain/campaign/saving/change/extraction/unlink-organisations-change-extractor.js +20 -0
- package/src/domain/campaign/saving/change/extraction/unlink-organisations-change-extractor.js.map +1 -0
- package/src/domain/campaign/saving/change/type/index.d.ts +3 -1
- package/src/domain/campaign/saving/change/type/link-organisations-change.d.ts +5 -0
- package/src/domain/campaign/saving/change/type/link-organisations-change.js +3 -0
- package/src/domain/campaign/saving/change/type/link-organisations-change.js.map +1 -0
- package/src/domain/campaign/saving/change/type/unlink-organisations-change.d.ts +5 -0
- package/src/domain/campaign/saving/change/type/unlink-organisations-change.js +3 -0
- package/src/domain/campaign/saving/change/type/unlink-organisations-change.js.map +1 -0
package/package.json
CHANGED
|
@@ -1,44 +1,44 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@studyportals/campaign-management-api-interface",
|
|
3
|
-
"version": "9.3.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
|
-
"deploy": "npm run prepare-deployment && npm publish ./bin --access=public",
|
|
10
|
-
"deploy-patch": "npm version patch && npm run deploy",
|
|
11
|
-
"deploy-minor": "npm version minor && npm run deploy",
|
|
12
|
-
"deploy-major": "npm version major && npm run deploy",
|
|
13
|
-
"deploy-beta": "npm version prerelease && npm run prepare-deployment && npm publish ./bin --tag beta --access=public"
|
|
14
|
-
},
|
|
15
|
-
"author": "SPNightsWatch",
|
|
16
|
-
"license": "ISC",
|
|
17
|
-
"types": "bin/index.d.ts",
|
|
18
|
-
"devDependencies": {
|
|
19
|
-
"@studyportals/code-style": "^2.2.1",
|
|
20
|
-
"@testdeck/jest": "^0.3.3",
|
|
21
|
-
"@types/superagent": "^4.1.13",
|
|
22
|
-
"chai": "^4.3.4",
|
|
23
|
-
"eslint": "^8.33.0",
|
|
24
|
-
"jest": "^29.4.2",
|
|
25
|
-
"jest-mock-extended": "^3.0.1",
|
|
26
|
-
"superagent": "^8.1.2",
|
|
27
|
-
"superagent-mocker": "^0.5.2",
|
|
28
|
-
"ts-jest": "^29.0.5",
|
|
29
|
-
"ts-node": "^10.2.1",
|
|
30
|
-
"typescript": "^5.5.4"
|
|
31
|
-
},
|
|
32
|
-
"dependencies": {
|
|
33
|
-
"@studyportals/mb-platform-date-time": "^1.3.1",
|
|
34
|
-
"@studyportals/mb-platform-http-requests": "^2.7.1",
|
|
35
|
-
"@studyportals/university-scheduler-interface": "^0.7.0",
|
|
36
|
-
"@types/chai": "^4.3.4",
|
|
37
|
-
"@types/jest": "^29.4.0",
|
|
38
|
-
"@types/node": "^16.9.4",
|
|
39
|
-
"class-transformer": "^0.5.1",
|
|
40
|
-
"class-validator": "^0.14.1",
|
|
41
|
-
"inversify": "^6.0.1",
|
|
42
|
-
"reflect-metadata": "^0.1.13"
|
|
43
|
-
}
|
|
44
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@studyportals/campaign-management-api-interface",
|
|
3
|
+
"version": "9.3.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
|
+
"deploy": "npm run prepare-deployment && npm publish ./bin --access=public",
|
|
10
|
+
"deploy-patch": "npm version patch && npm run deploy",
|
|
11
|
+
"deploy-minor": "npm version minor && npm run deploy",
|
|
12
|
+
"deploy-major": "npm version major && npm run deploy",
|
|
13
|
+
"deploy-beta": "npm version prerelease && npm run prepare-deployment && npm publish ./bin --tag beta --access=public"
|
|
14
|
+
},
|
|
15
|
+
"author": "SPNightsWatch",
|
|
16
|
+
"license": "ISC",
|
|
17
|
+
"types": "bin/index.d.ts",
|
|
18
|
+
"devDependencies": {
|
|
19
|
+
"@studyportals/code-style": "^2.2.1",
|
|
20
|
+
"@testdeck/jest": "^0.3.3",
|
|
21
|
+
"@types/superagent": "^4.1.13",
|
|
22
|
+
"chai": "^4.3.4",
|
|
23
|
+
"eslint": "^8.33.0",
|
|
24
|
+
"jest": "^29.4.2",
|
|
25
|
+
"jest-mock-extended": "^3.0.1",
|
|
26
|
+
"superagent": "^8.1.2",
|
|
27
|
+
"superagent-mocker": "^0.5.2",
|
|
28
|
+
"ts-jest": "^29.0.5",
|
|
29
|
+
"ts-node": "^10.2.1",
|
|
30
|
+
"typescript": "^5.5.4"
|
|
31
|
+
},
|
|
32
|
+
"dependencies": {
|
|
33
|
+
"@studyportals/mb-platform-date-time": "^1.3.1",
|
|
34
|
+
"@studyportals/mb-platform-http-requests": "^2.7.1",
|
|
35
|
+
"@studyportals/university-scheduler-interface": "^0.7.0",
|
|
36
|
+
"@types/chai": "^4.3.4",
|
|
37
|
+
"@types/jest": "^29.4.0",
|
|
38
|
+
"@types/node": "^16.9.4",
|
|
39
|
+
"class-transformer": "^0.5.1",
|
|
40
|
+
"class-validator": "^0.14.1",
|
|
41
|
+
"inversify": "^6.0.1",
|
|
42
|
+
"reflect-metadata": "^0.1.13"
|
|
43
|
+
}
|
|
44
|
+
}
|
|
@@ -15,5 +15,7 @@ export declare enum CampaignChangeEnum {
|
|
|
15
15
|
CUSTOM_PRODUCTS_BUDGET = "CustomProductsBudget",
|
|
16
16
|
CAMPAIGN_LIFT_EXCLUDED = "CampaignLiftExcluded",
|
|
17
17
|
ATTACH_ENTITIES = "AttachEntities",
|
|
18
|
-
DETACH_ENTITIES = "DetachEntities"
|
|
18
|
+
DETACH_ENTITIES = "DetachEntities",
|
|
19
|
+
LINK_ORGANISATIONS = "LinkOrganisations",
|
|
20
|
+
UNLINK_ORGANISATIONS = "UnlinkOrganisations"
|
|
19
21
|
}
|
|
@@ -20,5 +20,7 @@ var CampaignChangeEnum;
|
|
|
20
20
|
CampaignChangeEnum["CAMPAIGN_LIFT_EXCLUDED"] = "CampaignLiftExcluded";
|
|
21
21
|
CampaignChangeEnum["ATTACH_ENTITIES"] = "AttachEntities";
|
|
22
22
|
CampaignChangeEnum["DETACH_ENTITIES"] = "DetachEntities";
|
|
23
|
+
CampaignChangeEnum["LINK_ORGANISATIONS"] = "LinkOrganisations";
|
|
24
|
+
CampaignChangeEnum["UNLINK_ORGANISATIONS"] = "UnlinkOrganisations";
|
|
23
25
|
})(CampaignChangeEnum || (exports.CampaignChangeEnum = CampaignChangeEnum = {}));
|
|
24
26
|
//# sourceMappingURL=campaign-change-enum.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"campaign-change-enum.js","sourceRoot":"","sources":["../../../../../src/domain/campaign/enums/campaign-change-enum.ts"],"names":[],"mappings":";;;AAAA,IAAY,
|
|
1
|
+
{"version":3,"file":"campaign-change-enum.js","sourceRoot":"","sources":["../../../../../src/domain/campaign/enums/campaign-change-enum.ts"],"names":[],"mappings":";;;AAAA,IAAY,kBAoBX;AApBD,WAAY,kBAAkB;IAC7B,8CAAwB,CAAA;IACxB,0CAAoB,CAAA;IACpB,mCAAa,CAAA;IACb,sCAAgB,CAAA;IAChB,uCAAiB,CAAA;IACjB,yCAAmB,CAAA;IACnB,wDAAkC,CAAA;IAClC,0DAAoC,CAAA;IACpC,sDAAgC,CAAA;IAChC,oDAA8B,CAAA;IAC9B,+DAAyC,CAAA;IACzC,qEAA+C,CAAA;IAC/C,qEAA+C,CAAA;IAC/C,qEAA+C,CAAA;IAC/C,qEAA+C,CAAA;IAC/C,wDAAkC,CAAA;IAClC,wDAAkC,CAAA;IAClC,8DAAwC,CAAA;IACxC,kEAA4C,CAAA;AAC7C,CAAC,EApBW,kBAAkB,kCAAlB,kBAAkB,QAoB7B"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { CampaignStartDateChange, CampaignEndDateChange, CampaignNameChange, CampaignCrmIdChange, CampaignRegionChange, CampaignHandlerChange, CampaignClientServicesChange, CampaignPartnershipTypeChange, CampaignListingBudgetChange, CampaignDeliveryModeChange, CampaignAddCustomProductsChange, CampaignUpdateCustomProductsChange, CampaignRemoveCustomProductsChange, CampaignCustomProductsBudgetChange, CampaignLiftExcludedChange, CampaignAttachEntitiesChange, CampaignDetachEntitiesChange } from "./type";
|
|
2
|
-
export type CampaignChange = CampaignStartDateChange | CampaignEndDateChange | CampaignNameChange | CampaignCrmIdChange | CampaignRegionChange | CampaignHandlerChange | CampaignClientServicesChange | CampaignPartnershipTypeChange | CampaignListingBudgetChange | CampaignDeliveryModeChange | CampaignAddCustomProductsChange | CampaignUpdateCustomProductsChange | CampaignRemoveCustomProductsChange | CampaignCustomProductsBudgetChange | CampaignLiftExcludedChange | CampaignAttachEntitiesChange | CampaignDetachEntitiesChange;
|
|
1
|
+
import { CampaignStartDateChange, CampaignEndDateChange, CampaignNameChange, CampaignCrmIdChange, CampaignRegionChange, CampaignHandlerChange, CampaignClientServicesChange, CampaignPartnershipTypeChange, CampaignListingBudgetChange, CampaignDeliveryModeChange, CampaignAddCustomProductsChange, CampaignUpdateCustomProductsChange, CampaignRemoveCustomProductsChange, CampaignCustomProductsBudgetChange, CampaignLiftExcludedChange, CampaignAttachEntitiesChange, CampaignDetachEntitiesChange, CampaignUnlinkOrganisationsChange, CampaignLinkOrganisationsChange } from "./type";
|
|
2
|
+
export type CampaignChange = CampaignStartDateChange | CampaignEndDateChange | CampaignNameChange | CampaignCrmIdChange | CampaignRegionChange | CampaignHandlerChange | CampaignClientServicesChange | CampaignPartnershipTypeChange | CampaignListingBudgetChange | CampaignDeliveryModeChange | CampaignAddCustomProductsChange | CampaignUpdateCustomProductsChange | CampaignRemoveCustomProductsChange | CampaignCustomProductsBudgetChange | CampaignLiftExcludedChange | CampaignAttachEntitiesChange | CampaignDetachEntitiesChange | CampaignLinkOrganisationsChange | CampaignUnlinkOrganisationsChange;
|
|
@@ -11,12 +11,16 @@ const update_custom_products_change_extractor_1 = require("./update-custom-produ
|
|
|
11
11
|
const remove_custom_products_change_extractor_1 = require("./remove-custom-products-change-extractor");
|
|
12
12
|
const attach_entities_change_extractor_1 = require("./attach-entities-change-extractor");
|
|
13
13
|
const detach_entities_change_extractor_1 = require("./detach-entities-change-extractor");
|
|
14
|
+
const link_organisations_change_extractor_1 = require("./link-organisations-change-extractor");
|
|
15
|
+
const unlink_organisations_change_extractor_1 = require("./unlink-organisations-change-extractor");
|
|
14
16
|
class ChangesExtractor {
|
|
15
17
|
static setupChangeExtractors(originalCampaignData, updatedCampaignData) {
|
|
16
18
|
const { baseCampaignData: originalCampaign, customProducts: originalCustomProducts } = originalCampaignData;
|
|
17
19
|
const { baseCampaignData: updatedCampaign, customProducts: updatedCustomProducts } = updatedCampaignData;
|
|
18
20
|
const parsedUpdatedCustomProducts = this.parseCustomProductsDate(updatedCustomProducts);
|
|
19
21
|
const parsedOriginalCustomProducts = this.parseCustomProductsDate(originalCustomProducts);
|
|
22
|
+
const originalOrganisationsIds = originalCampaign.linkedOrganisations.map(entity => entity.id);
|
|
23
|
+
const updatedOrganisationsIds = updatedCampaign.linkedOrganisations.map(entity => entity.id);
|
|
20
24
|
return [
|
|
21
25
|
new date_change_extractor_1.DateChangeExtractor(originalCampaign.startDate, updatedCampaign.startDate, __1.CampaignChangeEnum.START_DATE),
|
|
22
26
|
new date_change_extractor_1.DateChangeExtractor(originalCampaign.endDate, updatedCampaign.endDate, __1.CampaignChangeEnum.END_DATE),
|
|
@@ -34,7 +38,9 @@ class ChangesExtractor {
|
|
|
34
38
|
new remove_custom_products_change_extractor_1.RemoveCustomProductsChangeExtractor(parsedOriginalCustomProducts, parsedUpdatedCustomProducts),
|
|
35
39
|
new simple_value_change_extractor_1.SimpleValueChangeExtractor(originalCampaign.isExcludedFromCampaignLift, updatedCampaign.isExcludedFromCampaignLift, __1.CampaignChangeEnum.CAMPAIGN_LIFT_EXCLUDED),
|
|
36
40
|
new attach_entities_change_extractor_1.AttachEntitiesChangeExtractor(originalCampaignData.campaignListingEntities, updatedCampaignData.campaignListingEntities),
|
|
37
|
-
new detach_entities_change_extractor_1.DetachEntitiesChangeExtractor(originalCampaignData.campaignListingEntities, updatedCampaignData.campaignListingEntities)
|
|
41
|
+
new detach_entities_change_extractor_1.DetachEntitiesChangeExtractor(originalCampaignData.campaignListingEntities, updatedCampaignData.campaignListingEntities),
|
|
42
|
+
new link_organisations_change_extractor_1.LinkOrganisationsChangeExtractor(originalOrganisationsIds, updatedOrganisationsIds),
|
|
43
|
+
new unlink_organisations_change_extractor_1.UnlinkOrganisationsChangeExtractor(originalOrganisationsIds, updatedOrganisationsIds)
|
|
38
44
|
];
|
|
39
45
|
}
|
|
40
46
|
static extractChangesFromDifference(originalCampaignData, updatedCampaignData) {
|
|
@@ -60,6 +66,13 @@ class ChangesExtractor {
|
|
|
60
66
|
throw new Error("Cannot have attach/detach entities changes together with other changes.");
|
|
61
67
|
}
|
|
62
68
|
}
|
|
69
|
+
if (changeTypes.has(__1.CampaignChangeEnum.LINK_ORGANISATIONS) || changeTypes.has(__1.CampaignChangeEnum.UNLINK_ORGANISATIONS)) {
|
|
70
|
+
const noOtherChangesArePresent = changes.every(change => change.type === __1.CampaignChangeEnum.LINK_ORGANISATIONS ||
|
|
71
|
+
change.type === __1.CampaignChangeEnum.UNLINK_ORGANISATIONS);
|
|
72
|
+
if (!noOtherChangesArePresent) {
|
|
73
|
+
throw new Error("Cannot have link/unlink organisations changes together with other changes.");
|
|
74
|
+
}
|
|
75
|
+
}
|
|
63
76
|
}
|
|
64
77
|
static parseCustomProductsDate(customProducts) {
|
|
65
78
|
return customProducts.map(product => this.parseCustomProductDate(product));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"changes-extractor.js","sourceRoot":"","sources":["../../../../../../../src/domain/campaign/saving/change/extraction/changes-extractor.ts"],"names":[],"mappings":";;;AAAA,+EAAkE;AAClE,gCAAqI;AACrI,mEAA8D;AAC9D,mFAA6E;AAC7E,mFAA8E;AAC9E,iGAA0F;AAC1F,uGAAgG;AAChG,uGAAgG;AAEhG,yFAAmF;AACnF,yFAAmF;
|
|
1
|
+
{"version":3,"file":"changes-extractor.js","sourceRoot":"","sources":["../../../../../../../src/domain/campaign/saving/change/extraction/changes-extractor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { CampaignLinkOrganisationsChange } from "../../..";
|
|
2
|
+
export declare class LinkOrganisationsChangeExtractor {
|
|
3
|
+
private readonly toLinkOrganisationsIds;
|
|
4
|
+
constructor(originalLinkedOrganisations: number[], updatedLinkedOrganisations: number[]);
|
|
5
|
+
isDifferent(): boolean;
|
|
6
|
+
produceChange(): CampaignLinkOrganisationsChange;
|
|
7
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LinkOrganisationsChangeExtractor = void 0;
|
|
4
|
+
const __1 = require("../../..");
|
|
5
|
+
class LinkOrganisationsChangeExtractor {
|
|
6
|
+
constructor(originalLinkedOrganisations, updatedLinkedOrganisations) {
|
|
7
|
+
this.toLinkOrganisationsIds = updatedLinkedOrganisations.filter((id) => !originalLinkedOrganisations.some((updatedId) => updatedId === id));
|
|
8
|
+
}
|
|
9
|
+
isDifferent() {
|
|
10
|
+
return this.toLinkOrganisationsIds.length > 0;
|
|
11
|
+
}
|
|
12
|
+
produceChange() {
|
|
13
|
+
return {
|
|
14
|
+
type: __1.CampaignChangeEnum.LINK_ORGANISATIONS,
|
|
15
|
+
value: this.toLinkOrganisationsIds
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
exports.LinkOrganisationsChangeExtractor = LinkOrganisationsChangeExtractor;
|
|
20
|
+
//# sourceMappingURL=link-organisations-change-extractor.js.map
|
package/src/domain/campaign/saving/change/extraction/link-organisations-change-extractor.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"link-organisations-change-extractor.js","sourceRoot":"","sources":["../../../../../../../src/domain/campaign/saving/change/extraction/link-organisations-change-extractor.ts"],"names":[],"mappings":";;;AAAA,gCAA+E;AAE/E,MAAa,gCAAgC;IAG5C,YACC,2BAAqC,EACrC,0BAAoC;QAEpC,IAAI,CAAC,sBAAsB,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CACtE,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,KAAK,EAAE,CAAC,CAClE,CAAC;IACH,CAAC;IAED,WAAW;QACV,OAAO,IAAI,CAAC,sBAAsB,CAAC,MAAM,GAAG,CAAC,CAAC;IAC/C,CAAC;IAED,aAAa;QACZ,OAAO;YACN,IAAI,EAAE,sBAAkB,CAAC,kBAAkB;YAC3C,KAAK,EAAE,IAAI,CAAC,sBAAsB;SAClC,CAAC;IACH,CAAC;CAGD;AAxBD,4EAwBC"}
|
package/src/domain/campaign/saving/change/extraction/unlink-organisations-change-extractor.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { CampaignUnlinkOrganisationsChange } from "../../..";
|
|
2
|
+
export declare class UnlinkOrganisationsChangeExtractor {
|
|
3
|
+
private readonly unlinkOrganisationsIds;
|
|
4
|
+
constructor(originalLinkedOrganisations: number[], updatedLinkedOrganisations: number[]);
|
|
5
|
+
isDifferent(): boolean;
|
|
6
|
+
produceChange(): CampaignUnlinkOrganisationsChange;
|
|
7
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.UnlinkOrganisationsChangeExtractor = void 0;
|
|
4
|
+
const __1 = require("../../..");
|
|
5
|
+
class UnlinkOrganisationsChangeExtractor {
|
|
6
|
+
constructor(originalLinkedOrganisations, updatedLinkedOrganisations) {
|
|
7
|
+
this.unlinkOrganisationsIds = originalLinkedOrganisations.filter((id) => !updatedLinkedOrganisations.some((updatedId) => updatedId === id));
|
|
8
|
+
}
|
|
9
|
+
isDifferent() {
|
|
10
|
+
return this.unlinkOrganisationsIds.length > 0;
|
|
11
|
+
}
|
|
12
|
+
produceChange() {
|
|
13
|
+
return {
|
|
14
|
+
type: __1.CampaignChangeEnum.UNLINK_ORGANISATIONS,
|
|
15
|
+
value: this.unlinkOrganisationsIds
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
exports.UnlinkOrganisationsChangeExtractor = UnlinkOrganisationsChangeExtractor;
|
|
20
|
+
//# sourceMappingURL=unlink-organisations-change-extractor.js.map
|
package/src/domain/campaign/saving/change/extraction/unlink-organisations-change-extractor.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unlink-organisations-change-extractor.js","sourceRoot":"","sources":["../../../../../../../src/domain/campaign/saving/change/extraction/unlink-organisations-change-extractor.ts"],"names":[],"mappings":";;;AAAA,gCAAiF;AAEjF,MAAa,kCAAkC;IAG9C,YACC,2BAAqC,EACrC,0BAAoC;QAEpC,IAAI,CAAC,sBAAsB,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CACvE,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,KAAK,EAAE,CAAC,CACjE,CAAC;IACH,CAAC;IAED,WAAW;QACV,OAAO,IAAI,CAAC,sBAAsB,CAAC,MAAM,GAAG,CAAC,CAAC;IAC/C,CAAC;IAED,aAAa;QACZ,OAAO;YACN,IAAI,EAAE,sBAAkB,CAAC,oBAAoB;YAC7C,KAAK,EAAE,IAAI,CAAC,sBAAsB;SAClC,CAAC;IACH,CAAC;CAGD;AAxBD,gFAwBC"}
|
|
@@ -15,4 +15,6 @@ import { CampaignUpdateCustomProductsChange } from "./update-custom-products-cha
|
|
|
15
15
|
import { CampaignLiftExcludedChange } from "./campaign-lift-excluded-change";
|
|
16
16
|
import { CampaignAttachEntitiesChange } from "./attach-entities-change";
|
|
17
17
|
import { CampaignDetachEntitiesChange } from "./detach-entities-change";
|
|
18
|
-
|
|
18
|
+
import { CampaignLinkOrganisationsChange } from "./link-organisations-change";
|
|
19
|
+
import { CampaignUnlinkOrganisationsChange } from "./unlink-organisations-change";
|
|
20
|
+
export { CampaignEndDateChange, CampaignStartDateChange, CampaignNameChange, CampaignCrmIdChange, CampaignRegionChange, CampaignHandlerChange, CampaignClientServicesChange, CampaignPartnershipTypeChange, CampaignListingBudgetChange, CampaignDeliveryModeChange, CampaignAddCustomProductsChange, CampaignUpdateCustomProductsChange, CampaignRemoveCustomProductsChange, CampaignCustomProductsBudgetChange, CampaignLiftExcludedChange, CampaignAttachEntitiesChange, CampaignDetachEntitiesChange, CampaignLinkOrganisationsChange, CampaignUnlinkOrganisationsChange };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"link-organisations-change.js","sourceRoot":"","sources":["../../../../../../../src/domain/campaign/saving/change/type/link-organisations-change.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unlink-organisations-change.js","sourceRoot":"","sources":["../../../../../../../src/domain/campaign/saving/change/type/unlink-organisations-change.ts"],"names":[],"mappings":""}
|