@contentstack/cli-variants
Version:
Variants plugin
53 lines (52 loc) • 2.24 kB
TypeScript
import { PersonalizationAdapter } from '../utils';
import { ImportConfig, ExperienceStruct } from '../types';
export default class Experiences extends PersonalizationAdapter<ImportConfig> {
readonly config: ImportConfig;
private createdCTs;
private mapperDirPath;
private cmsVariantPath;
private cTsSuccessPath;
private failedCmsExpPath;
private expMapperDirPath;
private eventsMapperPath;
private experiencesPath;
private experiencesDirPath;
private audiencesMapperPath;
private cmsVariantGroupPath;
private experienceVariantsIdsPath;
private variantUidMapperFilePath;
private expThresholdTimer;
private maxValidateRetry;
private experiencesUidMapperPath;
private experienceCTsPath;
private expCheckIntervalDuration;
private cmsVariants;
private cmsVariantGroups;
private experiencesUidMapper;
private pendingVariantAndVariantGrpForExperience;
private audiencesUid;
private eventsUid;
private personalizeConfig;
private audienceConfig;
private experienceConfig;
constructor(config: ImportConfig);
/**
* The function asynchronously imports experiences from a JSON file and creates them in the system.
*/
import(): Promise<void>;
/**
* function import experience versions from a JSON file and creates them in the project.
*/
importExperienceVersions(experience: ExperienceStruct, oldExperienceUid: string): Promise<void>;
private handleVersionUpdateOrCreate;
/**
* function to validate if all variant groups and variants have been created using personalize background job
* store the variant groups data in mapper/personalize/experiences/cms-variant-groups.json and the variants data
* in mapper/personalize/experiences/cms-variants.json. If not, invoke validateVariantGroupAndVariantsCreated after some delay.
* @param retryCount Counter to track the number of times the function has been called
* @returns
*/
validateVariantGroupAndVariantsCreated(retryCount?: number): Promise<any>;
attachCTsInExperience(): Promise<PromiseSettledResult<void | import("../types").VariantGroup>[] | undefined>;
createVariantIdMapper(): Promise<void>;
}