Skip to content
10 changes: 5 additions & 5 deletions packages/contentstack-config/src/utils/region-handler.ts
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ const regions = {
name: 'NA',
'developerHubUrl': 'https://developerhub-api.contentstack.com',
'launchHubUrl': 'https://launch-api.contentstack.com',
'personalizeUrl': 'https://personalization-api.contentstack.com',
'personalizeUrl': 'https://personalize-api.contentstack.com',
},
EU: {
cma: 'https://eu-api.contentstack.com',
Expand All @@ -33,7 +33,7 @@ const regions = {
name: 'EU',
'developerHubUrl': 'https://eu-developerhub-api.contentstack.com',
'launchHubUrl': 'https://eu-launch-api.contentstack.com',
'personalizeUrl': 'Not available',
'personalizeUrl': 'https://eu-personalize-api.contentstack.com',
},
'AZURE-NA': {
cma: 'https://azure-na-api.contentstack.com',
Expand All @@ -42,7 +42,7 @@ const regions = {
name: 'AZURE-NA',
'developerHubUrl': 'https://azure-na-developerhub-api.contentstack.com',
'launchHubUrl': 'https://azure-na-launch-api.contentstack.com',
'personalizeUrl': 'Not available',
'personalizeUrl': 'https://azure-na-personalize-api.contentstack.com',
},
'AZURE-EU': {
cma: 'https://azure-eu-api.contentstack.com',
Expand All @@ -51,7 +51,7 @@ const regions = {
name: 'AZURE-EU',
'developerHubUrl': 'https://azure-eu-developerhub-api.contentstack.com',
'launchHubUrl': 'https://azure-eu-launch-api.contentstack.com',
'personalizeUrl': 'Not available',
'personalizeUrl': 'https://azure-eu-personalize-api.contentstack.com',
},
'GCP-NA': {
cma: 'https://gcp-na-api.contentstack.com',
Expand All @@ -60,7 +60,7 @@ const regions = {
name: 'GCP-NA',
'developerHubUrl': 'https://gcp-na-developerhub-api.contentstack.com',
'launchHubUrl': 'Not available',
'personalizeUrl': 'Not available',
'personalizeUrl': 'https://gcp-na-personalize-api.contentstack.com',
},
};

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ export default class ExportCommand extends Command {
exportConfig.host = this.cmaHost;
exportConfig.region = this.region;
exportConfig.developerHubBaseUrl = this.developerHubUrl;
exportConfig.modules.personalization.baseURL[exportConfig.region.name] = this.personalizeUrl;
if (this.personalizeUrl) exportConfig.modules.personalize.baseURL[exportConfig.region.name] = this.personalizeUrl;
exportDir = exportConfig.cliLogsPath || exportConfig.data || exportConfig.exportDir;
const managementAPIClient: ContentstackClient = await managementSDKClient(exportConfig);
const moduleExporter = new ModuleExporter(managementAPIClient, exportConfig);
Expand Down
8 changes: 4 additions & 4 deletions packages/contentstack-export/src/config/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ const config: DefaultConfig = {
'content-types',
'custom-roles',
'workflows',
'personalization',
'personalize',
'entries',
'labels',
'marketplace-apps',
Expand Down Expand Up @@ -144,11 +144,11 @@ const config: DefaultConfig = {
dependencies: ['locales', 'content-types'],
exportVersions: false,
},
personalization: {
personalize: {
baseURL: {
NA: 'https://personalization-api.contentstack.com',
NA: 'https://personalize-api.contentstack.com',
},
dirName: 'personalization',
dirName: 'personalize',
exportOrder: ['attributes', 'audiences', 'events', 'experiences'],
projects: {
dirName: 'projects',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,12 @@ import {
import { log, formatError } from '../../utils';
import { ModuleClassParams, ExportConfig } from '../../types';

export default class ExportPersonalization {
export default class ExportPersonalize {
public exportConfig: ExportConfig;
public personalizeConfig: { dirName: string; baseURL: Record<string, string> } & AnyProperty;
constructor({ exportConfig }: ModuleClassParams) {
this.exportConfig = exportConfig;
this.personalizeConfig = exportConfig.modules.personalization;
this.personalizeConfig = exportConfig.modules.personalize;
}

async start(): Promise<void> {
Expand All @@ -39,7 +39,7 @@ export default class ExportPersonalization {
experiences: new ExportExperiences(this.exportConfig),
};

const order: (keyof typeof moduleMapper)[] = this.exportConfig.modules.personalization
const order: (keyof typeof moduleMapper)[] = this.exportConfig.modules.personalize
.exportOrder as (keyof typeof moduleMapper)[];

for (const module of order) {
Expand Down
2 changes: 1 addition & 1 deletion packages/contentstack-export/src/types/default-config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,7 @@ export default interface DefaultConfig {
dependencies?: Modules[];
exportVersions: boolean;
};
personalization: {
personalize: {
dirName: string;
baseURL: Record<string, string>;
} & AnyProperty;
Expand Down
2 changes: 1 addition & 1 deletion packages/contentstack-export/src/types/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ export type Modules =
| 'labels'
| 'marketplace-apps'
| 'taxonomies'
| 'personalization';
| 'personalize';

export type ModuleClassParams = {
stackAPIClient: ReturnType<ContentstackClient['stack']>;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@ export default class ImportCommand extends Command {
importConfig.host = this.cmaHost;
importConfig.region = this.region;
importConfig.developerHubBaseUrl = this.developerHubUrl;
importConfig.modules.personalization.baseURL[importConfig.region.name] = this.personalizeUrl;
if (this.personalizeUrl) importConfig.modules.personalize.baseURL[importConfig.region.name] = this.personalizeUrl;
backupDir = importConfig.cliLogsPath || importConfig.backupDir;

const managementAPIClient: ContentstackClient = await managementSDKClient(importConfig);
Expand Down
8 changes: 4 additions & 4 deletions packages/contentstack-import/src/config/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ const config: DefaultConfig = {
'marketplace-apps',
'global-fields',
'content-types',
'personalization',
'personalize',
'custom-roles',
'workflows',
'entries',
Expand Down Expand Up @@ -151,12 +151,12 @@ const config: DefaultConfig = {
dirName: 'taxonomies',
fileName: 'taxonomies.json',
},
personalization: {
personalize: {
baseURL: {
NA: 'https://personalization-api.contentstack.com',
NA: 'https://personalize-api.contentstack.com',
},
importData: true,
dirName: 'personalization',
dirName: 'personalize',
importOrder: ['attributes', 'audiences', 'events', 'experiences'],
project_id: '',
projects: {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@ import { Import, LogType } from '@contentstack/cli-variants';
import { log } from '../../utils';
import { ImportConfig, ModuleClassParams } from '../../types';

export default class ImportPersonalization {
export default class ImportPersonalize {
private config: ImportConfig;
public personalizeConfig: ImportConfig['modules']['personalization'];
public personalizeConfig: ImportConfig['modules']['personalize'];

constructor({ importConfig }: ModuleClassParams) {
this.config = importConfig;
this.personalizeConfig = importConfig.modules.personalization;
this.personalizeConfig = importConfig.modules.personalize;
}

/**
Expand Down Expand Up @@ -45,10 +45,10 @@ export default class ImportPersonalization {
}
}
} catch (error) {
this.personalizeConfig.importData = false; // Stop personalization import if project creation fails
this.personalizeConfig.importData = false; // Stop personalize import if project creation fails
log(this.config, error, 'error');
if (!this.personalizeConfig.importData) {
log(this.config, 'Skipping personalization migration...', 'warn');
log(this.config, 'Skipping personalize migration...', 'warn');
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,16 +14,16 @@ import {

export default class ImportVarientEntries {
private config: ImportConfig;
public personalization: ImportConfig['modules']['personalization'];
public personalize: ImportConfig['modules']['personalize'];
private projectMapperFilePath: string;

constructor({ importConfig }: ModuleClassParams) {
this.config = importConfig;
this.personalization = importConfig.modules.personalization;
this.personalize = importConfig.modules.personalize;
this.projectMapperFilePath = path.resolve(
sanitizePath(this.config.data),
'mapper',
sanitizePath(this.personalization.dirName),
sanitizePath(this.personalize.dirName),
'projects',
'projects.json',
);
Expand All @@ -36,8 +36,8 @@ export default class ImportVarientEntries {
async start(): Promise<void> {
try {
const project = fsUtil.readFile(this.projectMapperFilePath) as ProjectStruct;
if (project && project.uid && this.personalization.importData) {
this.config.modules.personalization.project_id = project.uid;
if (project && project.uid) {
this.config.modules.personalize.project_id = project.uid;
const helpers: ImportHelperMethodsConfig = {
lookUpTerms,
lookupAssets,
Expand Down
2 changes: 1 addition & 1 deletion packages/contentstack-import/src/types/default-config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,7 @@ export default interface DefaultConfig {
fileName: string;
dependencies?: Modules[];
};
personalization: {
personalize: {
baseURL: Record<string, string>;
dirName: string;
importData: boolean;
Expand Down
2 changes: 1 addition & 1 deletion packages/contentstack-import/src/types/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ export type Modules =
| 'labels'
| 'marketplace-apps'
| 'taxonomies'
| 'personalization'
| 'personalize'
| 'variant-entries';

export type ModuleClassParams = {
Expand Down
3 changes: 2 additions & 1 deletion packages/contentstack-variants/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,5 @@
/yarn.lock
node_modules
.DS_Store
coverage
coverage
/tsconfig.tsbuildinfo
10 changes: 5 additions & 5 deletions packages/contentstack-variants/src/export/attributes.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,26 +2,26 @@ import omit from 'lodash/omit';
import { resolve as pResolve } from 'node:path';
import { sanitizePath } from '@contentstack/cli-utilities';
import { formatError, fsUtil, PersonalizationAdapter, log } from '../utils';
import { PersonalizationConfig, ExportConfig, AttributesConfig, AttributeStruct } from '../types';
import { PersonalizeConfig, ExportConfig, AttributesConfig, AttributeStruct } from '../types';

export default class ExportAttributes extends PersonalizationAdapter<ExportConfig> {
private attributesConfig: AttributesConfig;
private attributesFolderPath: string;
private attributes: Record<string, unknown>[];
public personalizationConfig: PersonalizationConfig;
public personalizeConfig: PersonalizeConfig;

constructor(readonly exportConfig: ExportConfig) {
super({
config: exportConfig,
baseURL: exportConfig.modules.personalization.baseURL[exportConfig.region.name],
baseURL: exportConfig.modules.personalize.baseURL[exportConfig.region.name],
headers: { authtoken: exportConfig.auth_token, 'X-Project-Uid': exportConfig.project_id },
});
this.personalizationConfig = exportConfig.modules.personalization;
this.personalizeConfig = exportConfig.modules.personalize;
this.attributesConfig = exportConfig.modules.attributes;
this.attributesFolderPath = pResolve(
sanitizePath(exportConfig.data),
sanitizePath(exportConfig.branchName || ''),
sanitizePath(this.personalizationConfig.dirName),
sanitizePath(this.personalizeConfig.dirName),
sanitizePath(this.attributesConfig.dirName),
);
this.attributes = [];
Expand Down
10 changes: 5 additions & 5 deletions packages/contentstack-variants/src/export/audiences.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,26 +2,26 @@ import omit from 'lodash/omit';
import { resolve as pResolve } from 'node:path';

import { formatError, fsUtil, PersonalizationAdapter, log } from '../utils';
import { PersonalizationConfig, ExportConfig, AudienceStruct, AudiencesConfig } from '../types';
import { PersonalizeConfig, ExportConfig, AudienceStruct, AudiencesConfig } from '../types';

export default class ExportAudiences extends PersonalizationAdapter<ExportConfig> {
private audiencesConfig: AudiencesConfig;
private audiencesFolderPath: string;
private audiences: Record<string, unknown>[];
public personalizationConfig: PersonalizationConfig;
public personalizeConfig: PersonalizeConfig;

constructor(readonly exportConfig: ExportConfig) {
super({
config: exportConfig,
baseURL: exportConfig.modules.personalization.baseURL[exportConfig.region.name],
baseURL: exportConfig.modules.personalize.baseURL[exportConfig.region.name],
headers: { authtoken: exportConfig.auth_token, 'X-Project-Uid': exportConfig.project_id },
});
this.personalizationConfig = exportConfig.modules.personalization;
this.personalizeConfig = exportConfig.modules.personalize;
this.audiencesConfig = exportConfig.modules.audiences;
this.audiencesFolderPath = pResolve(
exportConfig.data,
exportConfig.branchName || '',
this.personalizationConfig.dirName,
this.personalizeConfig.dirName,
this.audiencesConfig.dirName,
);
this.audiences = [];
Expand Down
10 changes: 5 additions & 5 deletions packages/contentstack-variants/src/export/events.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,26 +2,26 @@ import omit from 'lodash/omit';
import { resolve as pResolve } from 'node:path';

import { formatError, fsUtil, PersonalizationAdapter, log } from '../utils';
import { PersonalizationConfig, ExportConfig, EventStruct, EventsConfig } from '../types';
import { PersonalizeConfig, ExportConfig, EventStruct, EventsConfig } from '../types';

export default class ExportEvents extends PersonalizationAdapter<ExportConfig> {
private eventsConfig: EventsConfig;
private eventsFolderPath: string;
private events: Record<string, unknown>[];
public personalizationConfig: PersonalizationConfig;
public personalizeConfig: PersonalizeConfig;

constructor(readonly exportConfig: ExportConfig) {
super({
config: exportConfig,
baseURL: exportConfig.modules.personalization.baseURL[exportConfig.region.name],
baseURL: exportConfig.modules.personalize.baseURL[exportConfig.region.name],
headers: { authtoken: exportConfig.auth_token, 'X-Project-Uid': exportConfig.project_id },
});
this.personalizationConfig = exportConfig.modules.personalization;
this.personalizeConfig = exportConfig.modules.personalize;
this.eventsConfig = exportConfig.modules.events;
this.eventsFolderPath = pResolve(
exportConfig.data,
exportConfig.branchName || '',
this.personalizationConfig.dirName,
this.personalizeConfig.dirName,
this.eventsConfig.dirName,
);
this.events = [];
Expand Down
10 changes: 5 additions & 5 deletions packages/contentstack-variants/src/export/experiences.ts
Original file line number Diff line number Diff line change
@@ -1,28 +1,28 @@
import * as path from 'path';
import { sanitizePath } from '@contentstack/cli-utilities';
import { PersonalizationConfig, ExportConfig, ExperienceStruct } from '../types';
import { PersonalizeConfig, ExportConfig, ExperienceStruct } from '../types';
import { formatError, fsUtil, log, PersonalizationAdapter } from '../utils';

export default class ExportExperiences extends PersonalizationAdapter<ExportConfig> {
private experiencesFolderPath: string;
public exportConfig: ExportConfig;
public personalizationConfig: PersonalizationConfig;
public personalizeConfig: PersonalizeConfig;
constructor(exportConfig: ExportConfig) {
super({
config: exportConfig,
baseURL: exportConfig.modules.personalization.baseURL[exportConfig.region.name],
baseURL: exportConfig.modules.personalize.baseURL[exportConfig.region.name],
headers: { authtoken: exportConfig.auth_token, 'X-Project-Uid': exportConfig.project_id },
cmaConfig: {
baseURL: exportConfig.region.cma + `/v3`,
headers: { authtoken: exportConfig.auth_token, api_key: exportConfig.apiKey },
},
});
this.exportConfig = exportConfig;
this.personalizationConfig = exportConfig.modules.personalization;
this.personalizeConfig = exportConfig.modules.personalize;
this.experiencesFolderPath = path.resolve(
sanitizePath(exportConfig.data),
sanitizePath(exportConfig.branchName || ''),
sanitizePath(this.personalizationConfig.dirName),
sanitizePath(this.personalizeConfig.dirName),
'experiences',
);
}
Expand Down
Loading