@asoftwareworld/form-builder-pro
Version:
ASW Form Builder Pro helps you with rapid development and designed web forms which includes several controls. The key feature of Form Builder is to make your content attractive and effective. We can customize our control at run time and preview the same b
122 lines (121 loc) • 7.18 kB
TypeScript
/**
* @license
* Copyright ASW (A Software World) All Rights Reserved.
*
* Use of this source code is governed by an MIT-style license that can be
* found in the LICENSE file
*/
import { ChangeDetectorRef, ElementRef, EventEmitter, NgZone, OnChanges, OnInit, SimpleChanges } from '@angular/core';
import { DomSanitizer, HammerLoader, SafeStyle, SafeUrl } from '@angular/platform-browser';
import { CropperPosition, Dimensions, ImageCroppedEvent, ImageTransform, LoadedImage, MoveTypes, OutputFormat } from '@asoftwareworld/form-builder-pro/api';
import { CropService } from './services/crop.service';
import { CropperPositionService } from './services/cropper-position.service';
import { LoadImageService } from './services/load-image.service';
import * as i0 from "@angular/core";
export declare class AswImageCropComponent implements OnChanges, OnInit {
private cropService;
private cropperPositionService;
private loadImageService;
private sanitizer;
private cd;
private zone;
private readonly hammerLoader;
private settings;
private setImageMaxSizeRetries;
private moveStart?;
private loadedImage?;
private resizedWhileHidden;
safeImgDataUrl?: SafeUrl | string;
safeTransformStyle?: SafeStyle | string;
marginLeft: SafeStyle | string;
maxSize: Dimensions;
moveTypes: typeof MoveTypes;
imageVisible: boolean;
wrapper: ElementRef<HTMLDivElement>;
sourceImage: ElementRef<HTMLDivElement>;
imageChangedEvent?: any;
imageURL?: string;
imageBase64?: string;
imageFile?: File;
imageAltText?: string;
cropperFrameAriaLabel: string;
output: 'blob' | 'base64';
format: OutputFormat;
transform: ImageTransform;
maintainAspectRatio: boolean;
aspectRatio: number;
resetCropOnAspectRatioChange: boolean;
resizeToWidth: number;
resizeToHeight: number;
cropperMinWidth: number;
cropperMinHeight: number;
cropperMaxHeight: number;
cropperMaxWidth: number;
cropperStaticWidth: number;
cropperStaticHeight: number;
canvasRotation: number;
initialStepSize: number;
roundCropper: boolean;
onlyScaleDown: boolean;
imageQuality: number;
autoCrop: boolean;
backgroundColor: string;
containWithinAspectRatio: boolean;
hideResizeSquares: boolean;
allowMoveImage: boolean;
cropper: CropperPosition;
alignImage: 'left' | 'center';
disabled: boolean;
hidden: boolean;
imageCropped: EventEmitter<ImageCroppedEvent>;
startCropImage: EventEmitter<void>;
imageLoaded: EventEmitter<LoadedImage>;
cropperReady: EventEmitter<Dimensions>;
loadImageFailed: EventEmitter<void>;
transformChange: EventEmitter<ImageTransform>;
constructor(cropService: CropService, cropperPositionService: CropperPositionService, loadImageService: LoadImageService, sanitizer: DomSanitizer, cd: ChangeDetectorRef, zone: NgZone, hammerLoader: HammerLoader | null);
ngOnChanges(changes: SimpleChanges): void;
private onChangesUpdateSettings;
private onChangesInputImage;
private isValidImageChangedEvent;
private setCssTransform;
ngOnInit(): void;
private reset;
private loadImageFile;
private loadBase64Image;
private loadImageFromURL;
private setLoadedImage;
loadImageError(error: any): void;
imageLoadedInView(): void;
private checkImageMaxSizeRecursively;
private sourceImageLoaded;
onResize(): void;
private activatePinchGesture;
private resizeCropperPosition;
resetCropperPosition(): void;
keyboardAccess(event: KeyboardEvent): void;
private changeKeyboardStepSize;
private keyboardMoveCropper;
startMove(event: any, moveType: MoveTypes, position?: string | null): void;
private initMouseMove;
startPinch(event: any): void;
private handleMouseMove;
onPinch(event: any): void;
private setMaxSize;
private setCropperScaledMinSize;
private setCropperScaledMinWidth;
private setCropperScaledMinHeight;
private setCropperScaledMaxSize;
private checkCropperPosition;
private handleMouseUp;
pinchStop(): void;
private doAutoCrop;
crop(): ImageCroppedEvent | null;
crop(output: 'base64'): ImageCroppedEvent | null;
crop(output: 'blob'): Promise<ImageCroppedEvent> | null;
private cropToBlob;
private cropToBase64;
private aspectRatioIsCorrect;
static ɵfac: i0.ɵɵFactoryDeclaration<AswImageCropComponent, [null, null, null, null, null, null, { optional: true; }]>;
static ɵcmp: i0.ɵɵComponentDeclaration<AswImageCropComponent, "asw-image-crop", never, { "imageChangedEvent": { "alias": "imageChangedEvent"; "required": false; }; "imageURL": { "alias": "imageURL"; "required": false; }; "imageBase64": { "alias": "imageBase64"; "required": false; }; "imageFile": { "alias": "imageFile"; "required": false; }; "imageAltText": { "alias": "imageAltText"; "required": false; }; "cropperFrameAriaLabel": { "alias": "cropperFrameAriaLabel"; "required": false; }; "output": { "alias": "output"; "required": false; }; "format": { "alias": "format"; "required": false; }; "transform": { "alias": "transform"; "required": false; }; "maintainAspectRatio": { "alias": "maintainAspectRatio"; "required": false; }; "aspectRatio": { "alias": "aspectRatio"; "required": false; }; "resetCropOnAspectRatioChange": { "alias": "resetCropOnAspectRatioChange"; "required": false; }; "resizeToWidth": { "alias": "resizeToWidth"; "required": false; }; "resizeToHeight": { "alias": "resizeToHeight"; "required": false; }; "cropperMinWidth": { "alias": "cropperMinWidth"; "required": false; }; "cropperMinHeight": { "alias": "cropperMinHeight"; "required": false; }; "cropperMaxHeight": { "alias": "cropperMaxHeight"; "required": false; }; "cropperMaxWidth": { "alias": "cropperMaxWidth"; "required": false; }; "cropperStaticWidth": { "alias": "cropperStaticWidth"; "required": false; }; "cropperStaticHeight": { "alias": "cropperStaticHeight"; "required": false; }; "canvasRotation": { "alias": "canvasRotation"; "required": false; }; "initialStepSize": { "alias": "initialStepSize"; "required": false; }; "roundCropper": { "alias": "roundCropper"; "required": false; }; "onlyScaleDown": { "alias": "onlyScaleDown"; "required": false; }; "imageQuality": { "alias": "imageQuality"; "required": false; }; "autoCrop": { "alias": "autoCrop"; "required": false; }; "backgroundColor": { "alias": "backgroundColor"; "required": false; }; "containWithinAspectRatio": { "alias": "containWithinAspectRatio"; "required": false; }; "hideResizeSquares": { "alias": "hideResizeSquares"; "required": false; }; "allowMoveImage": { "alias": "allowMoveImage"; "required": false; }; "cropper": { "alias": "cropper"; "required": false; }; "alignImage": { "alias": "alignImage"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "hidden": { "alias": "hidden"; "required": false; }; }, { "imageCropped": "imageCropped"; "startCropImage": "startCropImage"; "imageLoaded": "imageLoaded"; "cropperReady": "cropperReady"; "loadImageFailed": "loadImageFailed"; "transformChange": "transformChange"; }, never, never, false, never>;
}