applySize() {
		let sizeStyle = [];
		let sizeValue = Utils.parseHostConfigEnum(Enums.Size, this.payload.size, Enums.Size.Auto)
		/*  This W2H ratio is calculated to determine the height required w.r.to pre-determined sizes */
		var w2hratio = this.state.imageHeight / this.state.imageWidth;
		if (!Utils.isaNumber(w2hratio)) {
			w2hratio = 1;
		}
        /**
         * Scenario 1 : Either height or width has string value (Ex: '80px'),
         *               use the integer portion.
         * Scenario 2 : If the height or width has string value (Ex: 'stretch'),
         *              ignore and use the size property to determine dimensions.
         * Scenario 3 : If either width or height is missing, apply the given value to the 
         *              other property.
         */
		if (Utils.isaNumber(this.payload.width) || Utils.isaNumber(this.payload.height)) {

			if (this.payload.width) {
				this.width = parseInt(this.payload.width, 10);
				sizeStyle.push({ width: this.width })
			}
			else {
				this.height = parseInt(this.payload.height, 10);
				sizeStyle.push({ width: this.height })
				this.width = this.height;

			}
			if (this.payload.height) {
				this.height = parseInt(this.payload.height, 10);
				sizeStyle.push({ height: this.height })
			}
			else {
				this.width = parseInt(this.payload.width, 10);
				sizeStyle.push({ height: this.width * w2hratio })
				this.height = this.width;
			}
		}
		else {
			switch (sizeValue) {
				case 1:
					{
						sizeStyle.push([styles.imageStretch,
						{
							width: this.state.imageWidth,
							height: this.state.imageHeight
						}]);
						break;
					}
				case 2:
					{
						sizeStyle.push({ width: this.hostConfig.imageSizes.small });
                        /**
                         * "width:80px height:not set", "size": "small"
                         */
						this.isPersonStyle() ?
							sizeStyle.push({ height: this.hostConfig.imageSizes.small }) :
							sizeStyle.push({ height: this.hostConfig.imageSizes.small * w2hratio })

                        /**
                         * When images are rendered from imageset,
                         * give priority to aspect ratio for image height.
                         */
						this.payload.fromImageSet == true ?
							sizeStyle.push({ height: this.state.imageHeight }) :
							sizeStyle.push({ height: this.hostConfig.imageSizes.small * w2hratio })

						this.width = this.hostConfig.imageSizes.small;
						break;
					}
				case 3:
					{
						sizeStyle.push({ width: this.hostConfig.imageSizes.medium });

						this.isPersonStyle() ?
							sizeStyle.push({ height: this.hostConfig.imageSizes.medium }) :
							sizeStyle.push({ height: this.hostConfig.imageSizes.medium * w2hratio })

						this.payload.fromImageSet == true ?
							sizeStyle.push({ height: this.state.imageHeight }) :
							sizeStyle.push({ height: this.hostConfig.imageSizes.medium * w2hratio })

						this.width = this.hostConfig.imageSizes.medium;
						break;
					}
				case 4:
					{
						sizeStyle.push({ width: this.hostConfig.imageSizes.large });
						this.isPersonStyle() ?
							sizeStyle.push({ height: this.hostConfig.imageSizes.large }) :
							sizeStyle.push({ height: this.hostConfig.imageSizes.large * w2hratio })

						this.payload.fromImageSet == true ?
							sizeStyle.push({ height: this.state.imageHeight }) :
							sizeStyle.push({ height: this.hostConfig.imageSizes.large * w2hratio })

						this.width = this.hostConfig.imageSizes.large;
						break;
					}
				default:
					{
						/**
						 * When the images are rendered via imageset and if the size is undefined or Auto, 
						 * the size of the image is taken as medium as default as per native iOS renderer.
						 */
						if ((this.isSizeUndefined && this.payload.fromImageSet == true) ||
							(this.payload.fromImageSet == true)) {
							sizeStyle.push([styles.imageAuto, { width: this.hostConfig.imageSizes.medium }]);
							this.isPersonStyle() ?
								sizeStyle.push({ height: this.hostConfig.imageSizes.medium }) :
								sizeStyle.push({ height: this.state.imageHeight })

							this.payload.fromImageSet == true ?
								sizeStyle.push({ height: this.state.imageHeight }) :
								sizeStyle.push({ height: this.hostConfig.imageSizes.medium })

							this.width = this.hostConfig.imageSizes.medium;
						}
						else {
							sizeStyle.push([styles.imageAuto, {
								width: this.state.imageWidth,
								height: this.state.imageHeight
							}]);

							this.width = this.state.imageWidth;
							this.height = this.state.imageHeight;
						}
						break;
					}
			}
		}
		return sizeStyle;
	}
/**
	 * @description
     * This function is to the create styling for the size of the image based  on the size property 
     * from the payload. If the payload consists of explicit width and height property, 
     * give highest priority.  
     * 
     */
@description
This function is to the create styling for the size of the image based  on the size property
from the payload. If the payload consists of explicit width and height property,
give highest priority.
@description This function is to the create styling for the size of the image based on the size property from the payload . If the payload consists of explicit width and height property give highest priority .
applySize() {
		let sizeStyle = [];
		let sizeValue = Utils.parseHostConfigEnum(Enums.Size, this.payload.size, Enums.Size.Auto)
		var w2hratio = this.state.imageHeight / this.state.imageWidth;
		if (!Utils.isaNumber(w2hratio)) {
			w2hratio = 1;
		}
		if (Utils.isaNumber(this.payload.width) || Utils.isaNumber(this.payload.height)) {
			if (this.payload.width) {
				this.width = parseInt(this.payload.width, 10);
				sizeStyle.push({ width: this.width })
			}
			else {
				this.height = parseInt(this.payload.height, 10);
				sizeStyle.push({ width: this.height })
				this.width = this.height;
			}
			if (this.payload.height) {
				this.height = parseInt(this.payload.height, 10);
				sizeStyle.push({ height: this.height })
			}
			else {
				this.width = parseInt(this.payload.width, 10);
				sizeStyle.push({ height: this.width * w2hratio })
				this.height = this.width;
			}
		}
		else {
			switch (sizeValue) {
				case 1:
					{
						sizeStyle.push([styles.imageStretch,
						{
							width: this.state.imageWidth,
							height: this.state.imageHeight
						}]);
						break;
					}
				case 2:
					{
						sizeStyle.push({ width: this.hostConfig.imageSizes.small });
						this.isPersonStyle() ?
							sizeStyle.push({ height: this.hostConfig.imageSizes.small }) :
							sizeStyle.push({ height: this.hostConfig.imageSizes.small * w2hratio })
						this.payload.fromImageSet == true ?
							sizeStyle.push({ height: this.state.imageHeight }) :
							sizeStyle.push({ height: this.hostConfig.imageSizes.small * w2hratio })
						this.width = this.hostConfig.imageSizes.small;
						break;
					}
				case 3:
					{
						sizeStyle.push({ width: this.hostConfig.imageSizes.medium });
						this.isPersonStyle() ?
							sizeStyle.push({ height: this.hostConfig.imageSizes.medium }) :
							sizeStyle.push({ height: this.hostConfig.imageSizes.medium * w2hratio })
						this.payload.fromImageSet == true ?
							sizeStyle.push({ height: this.state.imageHeight }) :
							sizeStyle.push({ height: this.hostConfig.imageSizes.medium * w2hratio })
						this.width = this.hostConfig.imageSizes.medium;
						break;
					}
				case 4:
					{
						sizeStyle.push({ width: this.hostConfig.imageSizes.large });
						this.isPersonStyle() ?
							sizeStyle.push({ height: this.hostConfig.imageSizes.large }) :
							sizeStyle.push({ height: this.hostConfig.imageSizes.large * w2hratio })
						this.payload.fromImageSet == true ?
							sizeStyle.push({ height: this.state.imageHeight }) :
							sizeStyle.push({ height: this.hostConfig.imageSizes.large * w2hratio })
						this.width = this.hostConfig.imageSizes.large;
						break;
					}
				default:
					{
						if ((this.isSizeUndefined && this.payload.fromImageSet == true) ||
							(this.payload.fromImageSet == true)) {
							sizeStyle.push([styles.imageAuto, { width: this.hostConfig.imageSizes.medium }]);
							this.isPersonStyle() ?
								sizeStyle.push({ height: this.hostConfig.imageSizes.medium }) :
								sizeStyle.push({ height: this.state.imageHeight })
							this.payload.fromImageSet == true ?
								sizeStyle.push({ height: this.state.imageHeight }) :
								sizeStyle.push({ height: this.hostConfig.imageSizes.medium })
							this.width = this.hostConfig.imageSizes.medium;
						}
						else {
							sizeStyle.push([styles.imageAuto, {
								width: this.state.imageWidth,
								height: this.state.imageHeight
							}]);
							this.width = this.state.imageWidth;
							this.height = this.state.imageHeight;
						}
						break;
					}
			}
		}
		return sizeStyle;
	}
applySize ( ) { let sizeStyle = [ ] ; let sizeValue = Utils . parseHostConfigEnum ( Enums . Size , this . payload . size , Enums . Size . Auto ) var w2hratio = this . state . imageHeight / this . state . imageWidth ; if ( ! Utils . isaNumber ( w2hratio ) ) { w2hratio = 1 ; } if ( Utils . isaNumber ( this . payload . width ) || Utils . isaNumber ( this . payload . height ) ) { if ( this . payload . width ) { this . width = parseInt ( this . payload . width , 10 ) ; sizeStyle . push ( { width : this . width } ) } else { this . height = parseInt ( this . payload . height , 10 ) ; sizeStyle . push ( { width : this . height } ) this . width = this . height ; } if ( this . payload . height ) { this . height = parseInt ( this . payload . height , 10 ) ; sizeStyle . push ( { height : this . height } ) } else { this . width = parseInt ( this . payload . width , 10 ) ; sizeStyle . push ( { height : this . width * w2hratio } ) this . height = this . width ; } } else { switch ( sizeValue ) { case 1 : { sizeStyle . push ( [ styles . imageStretch , { width : this . state . imageWidth , height : this . state . imageHeight } ] ) ; break ; } case 2 : { sizeStyle . push ( { width : this . hostConfig . imageSizes . small } ) ; this . isPersonStyle ( ) ? sizeStyle . push ( { height : this . hostConfig . imageSizes . small } ) : sizeStyle . push ( { height : this . hostConfig . imageSizes . small * w2hratio } ) this . payload . fromImageSet == true ? sizeStyle . push ( { height : this . state . imageHeight } ) : sizeStyle . push ( { height : this . hostConfig . imageSizes . small * w2hratio } ) this . width = this . hostConfig . imageSizes . small ; break ; } case 3 : { sizeStyle . push ( { width : this . hostConfig . imageSizes . medium } ) ; this . isPersonStyle ( ) ? sizeStyle . push ( { height : this . hostConfig . imageSizes . medium } ) : sizeStyle . push ( { height : this . hostConfig . imageSizes . medium * w2hratio } ) this . payload . fromImageSet == true ? sizeStyle . push ( { height : this . state . imageHeight } ) : sizeStyle . push ( { height : this . hostConfig . imageSizes . medium * w2hratio } ) this . width = this . hostConfig . imageSizes . medium ; break ; } case 4 : { sizeStyle . push ( { width : this . hostConfig . imageSizes . large } ) ; this . isPersonStyle ( ) ? sizeStyle . push ( { height : this . hostConfig . imageSizes . large } ) : sizeStyle . push ( { height : this . hostConfig . imageSizes . large * w2hratio } ) this . payload . fromImageSet == true ? sizeStyle . push ( { height : this . state . imageHeight } ) : sizeStyle . push ( { height : this . hostConfig . imageSizes . large * w2hratio } ) this . width = this . hostConfig . imageSizes . large ; break ; } default : { if ( ( this . isSizeUndefined && this . payload . fromImageSet == true ) || ( this . payload . fromImageSet == true ) ) { sizeStyle . push ( [ styles . imageAuto , { width : this . hostConfig . imageSizes . medium } ] ) ; this . isPersonStyle ( ) ? sizeStyle . push ( { height : this . hostConfig . imageSizes . medium } ) : sizeStyle . push ( { height : this . state . imageHeight } ) this . payload . fromImageSet == true ? sizeStyle . push ( { height : this . state . imageHeight } ) : sizeStyle . push ( { height : this . hostConfig . imageSizes . medium } ) this . width = this . hostConfig . imageSizes . medium ; } else { sizeStyle . push ( [ styles . imageAuto , { width : this . state . imageWidth , height : this . state . imageHeight } ] ) ; this . width = this . state . imageWidth ; this . height = this . state . imageHeight ; } break ; } } } return sizeStyle ; }
@description
 This function is to the create styling for the size of the image based  on the size property
 from the payload.
@description This function is to the create styling for the size of the image based on the size property from the payload .
/*  This W2H ratio is calculated to determine the height required w.r.to pre-determined sizes */ /**
         * Scenario 1 : Either height or width has string value (Ex: '80px'),
         *               use the integer portion.
         * Scenario 2 : If the height or width has string value (Ex: 'stretch'),
         *              ignore and use the size property to determine dimensions.
         * Scenario 3 : If either width or height is missing, apply the given value to the 
         *              other property.
         */ /**
                         * "width:80px height:not set", "size": "small"
                         */ /**
                         * When images are rendered from imageset,
                         * give priority to aspect ratio for image height.
                         */ /**
						 * When the images are rendered via imageset and if the size is undefined or Auto, 
						 * the size of the image is taken as medium as default as per native iOS renderer.
						 */