import { RUKMINI_HEIGHT_PLACEHOLDER, RUKMINI_QUALITY_PLACEHOLDER, DEFAULT_IMAGE_QUALITY, INVALID_PARAMETERS } from "./../../constants/Constants"; import { NativeModule } from "../../managers/NativeModuleHelper"; import { ImageResolverModule } from "../../interfaces/ImageResolverModule"; import { RUKMINI_WIDTH_PLACEHOLDER } from "../../constants/Constants"; export default class ImageResolverModuleImplWeb extends NativeModule implements ImageResolverModule { public resolveImage(url: string, width: number, height: number, quality?: number | undefined): Promise { return new Promise((resolve, reject) => { if (url && height && width) { const newImageUrl: string = url.replace(RUKMINI_WIDTH_PLACEHOLDER, width.toString()).replace(RUKMINI_HEIGHT_PLACEHOLDER, height.toString()).replace(RUKMINI_QUALITY_PLACEHOLDER, quality ? quality.toString() : DEFAULT_IMAGE_QUALITY); resolve(newImageUrl); } else { reject(INVALID_PARAMETERS); } }); } }