ngx-fabric-wrapper 20.0.0 → 21.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -286,18 +286,18 @@ class FabricDirective {
286
286
  setWidth(width) {
287
287
  this.initialWidth = width;
288
288
  if (this.instance) {
289
- this.instance.setWidth(width);
289
+ this.instance.setDimensions({ width });
290
290
  }
291
291
  }
292
292
  setHeight(height) {
293
293
  this.initialHeight = height;
294
294
  if (this.instance) {
295
- this.instance.setHeight(height);
295
+ this.instance.setDimensions({ height });
296
296
  }
297
297
  }
298
298
  loadFromJSON(json, callback, reviverOpt) {
299
299
  if (this.instance) {
300
- this.instance.loadFromJSON(json, () => {
300
+ this.instance.loadFromJSON(json, reviverOpt).then(() => {
301
301
  let renderAll = true;
302
302
  if (callback) {
303
303
  renderAll = callback();
@@ -305,7 +305,7 @@ class FabricDirective {
305
305
  if (renderAll && this.instance) {
306
306
  this.instance.renderAll();
307
307
  }
308
- }, reviverOpt);
308
+ });
309
309
  }
310
310
  }
311
311
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.3", ngImport: i0, type: FabricDirective, deps: [{ token: i0.NgZone }, { token: i0.ElementRef }, { token: i0.KeyValueDiffers }, { token: FABRIC_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-fabric-wrapper.mjs","sources":["../../../projects/lib/src/lib/fabric.interfaces.ts","../../../projects/lib/src/lib/fabric.directive.ts","../../../projects/lib/src/lib/fabric.component.ts","../../../projects/lib/src/lib/fabric.component.html","../../../projects/lib/src/ngx-fabric-wrapper.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport const FABRIC_CONFIG = new InjectionToken<FabricConfigInterface>('FABRIC_CONFIG');\n\nexport type FabricEvent = 'drop' | 'dragover' | 'dragenter' | 'dragleave' | 'mouseup' |\n 'mousedown' | 'mouseover' | 'mouseout' | 'mousemove' | 'mousewheel' | 'mousedblclick' |\n 'mouseupBefore' | 'mousedownBefore' | 'mousemoveBefore' | 'mouseUp' | 'mouseDown' |\n 'mouseOver' | 'mouseOut' | 'mouseMove' | 'mouseWheel' | 'mouseDblclick' | 'mouseUpBefore' | 'mouseDownBefore' |\n 'mouseMoveBefore' | 'pathCreated' | 'alterRender' | 'objectAdded' | 'objectMoved' | 'objectScaled' |\n 'objectSkewed' | 'objectRotated' | 'objectRemoved' | 'objectModified' | 'objectSelected' |\n 'objectMoving' | 'objectScaling' | 'objectSkewing' | 'objectRotating' | 'selectionCleared' |\n 'selectionCreated' | 'selectionUpdated' | 'beforeTransform' | 'beforeSelectionCleared' ;\n\nexport const FabricEvents: FabricEvent[] = [\n 'drop',\n 'dragover',\n 'dragenter',\n 'dragleave',\n\n 'mouseup',\n 'mousedown',\n 'mouseover',\n 'mouseout',\n 'mousemove',\n 'mousewheel',\n 'mousedblclick',\n 'mouseupBefore',\n 'mousedownBefore',\n 'mousemoveBefore',\n\n 'mouseUp',\n 'mouseDown',\n 'mouseOver',\n 'mouseOut',\n 'mouseMove',\n 'mouseWheel',\n 'mouseDblclick',\n 'mouseUpBefore',\n 'mouseDownBefore',\n 'mouseMoveBefore',\n\n 'pathCreated',\n 'alterRender',\n\n 'objectAdded',\n 'objectMoved',\n 'objectScaled',\n 'objectSkewed',\n 'objectRotated',\n 'objectRemoved',\n 'objectModified',\n 'objectSelected',\n 'objectMoving',\n 'objectScaling',\n 'objectSkewing',\n 'objectRotating',\n\n 'selectionCleared',\n 'selectionCreated',\n 'selectionUpdated',\n\n 'beforeTransform',\n 'beforeSelectionCleared'\n];\n\nexport interface FabricConfigInterface {\n allowTouchScrolling?: boolean,\n altActionKey?: string,\n altSelectionKey?: string,\n backgroundColor?: string | any,\n backgroundImage?: any,\n backgroundVpt?: boolean,\n centeredKey?: string,\n centeredRotation?: boolean,\n centeredScaling?: boolean,\n clipTo?: FabricClipToFunction,\n containerClass?: string,\n controlsAboveOverlay?: boolean,\n defaultCursor?: string,\n enableRetinaScaling?: boolean,\n fireMiddleClick?: boolean,\n fireRightClick?: boolean,\n freeDrawingCursor?: string,\n FX_DURATION?: number,\n hoverCursor?: string,\n imageSmoothingEnabled?: boolean,\n includeDefaultValues?: boolean,\n interactive?: boolean,\n isDrawingMode?: boolean,\n moveCursor?: string,\n notAllowedCursor?: string,\n overlayColor?: string | any,\n overlayImage?: any,\n overlayVpt?: boolean,\n perPixelTargetFind?: boolean,\n preserveObjectStacking?: boolean,\n renderOnAddRemove?: boolean,\n rotationCursor?: string,\n selection?: boolean,\n selectionBorderColor?: string,\n selectionColor?: string,\n selectionDashArray?: any[],\n selectionKey?: string,\n selectionLineWidth?: number,\n skipOffscreen?: boolean,\n skipTargetFind?: boolean,\n snapAngle?: number,\n snapThreshold?: number,\n stateful?: boolean,\n stopContextMenu?: boolean,\n svgViewportTransformation?: boolean,\n targetFindToTolerance?: number,\n uniScaleKey?: string,\n uniScaleTransform?: boolean,\n viewportTransform?: any[],\n vptCoords?: any\n}\n\nexport class FabricConfig implements FabricConfigInterface {\n allowTouchScrolling?: boolean;\n altActionKey?: string;\n altSelectionKey?: string;\n backgroundColor?: string | any;\n backgroundImage?: any;\n backgroundVpt?: boolean;\n centeredKey?: string;\n centeredRotation?: boolean;\n centeredScaling?: boolean;\n clipTo?: FabricClipToFunction;\n containerClass?: string;\n controlsAboveOverlay?: boolean;\n defaultCursor?: string;\n enableRetinaScaling?: boolean;\n fireMiddleClick?: boolean;\n fireRightClick?: boolean;\n freeDrawingCursor?: string;\n FX_DURATION?: number;\n hoverCursor?: string;\n imageSmoothingEnabled?: boolean;\n includeDefaultValues?: boolean;\n interactive?: boolean;\n isDrawingMode?: boolean;\n moveCursor?: string;\n notAllowedCursor?: string;\n overlayColor: string | any;\n overlayImage: any;\n overlayVpt?: boolean;\n perPixelTargetFind?: boolean;\n preserveObjectStacking?: boolean;\n renderOnAddRemove?: boolean;\n rotationCursor?: string;\n selection?: boolean;\n selectionBorderColor?: string;\n selectionColor?: string;\n selectionDashArray?: any[];\n selectionKey?: string;\n selectionLineWidth?: number;\n skipOffscreen?: boolean;\n skipTargetFind?: boolean;\n snapAngle?: number;\n snapThreshold?: number;\n stateful?: boolean;\n stopContextMenu?: boolean;\n svgViewportTransformation?: boolean;\n targetFindToTolerance?: number;\n uniScaleKey?: string;\n uniScaleTransform?: boolean;\n viewportTransform?: any[];\n vptCoords?: any;\n\n constructor(config: FabricConfigInterface = {}) {\n this.assign(config);\n }\n\n assign(config: FabricConfigInterface = {}) {\n for (const key in config) {\n this[key as keyof FabricConfig] = config[key as keyof FabricConfigInterface] as never;\n }\n }\n}\n\nexport type FabricClipToFunction = (ctx: any) => void;\n","import {\n Canvas,\n CanvasOptions,\n StaticCanvas,\n StaticCanvasOptions,\n} from \"fabric\";\n\nimport ResizeObserver from \"resize-observer-polyfill\";\n\nimport {\n Directive,\n Optional,\n Inject,\n OnInit,\n OnDestroy,\n DoCheck,\n OnChanges,\n Input,\n Output,\n EventEmitter,\n NgZone,\n ElementRef,\n KeyValueDiffer,\n KeyValueDiffers,\n SimpleChanges,\n} from \"@angular/core\";\n\nimport {\n FABRIC_CONFIG,\n FabricConfig,\n FabricConfigInterface,\n FabricEvent,\n FabricEvents,\n} from \"./fabric.interfaces\";\n\n@Directive({\n selector: \"[fabric]\",\n exportAs: \"ngxFabric\",\n})\nexport class FabricDirective implements OnInit, OnDestroy, DoCheck, OnChanges {\n private instance: Canvas | StaticCanvas | null = null;\n\n private ro: ResizeObserver | null = null;\n\n private objectsJSON: object | null = null;\n\n private initialZoom: number | null = null;\n private initialWidth: number | null = null;\n private initialHeight: number | null = null;\n\n private configDiff: KeyValueDiffer<string, any> | null = null;\n\n @Input()\n set zoom(zoom: number) {\n this.setZoom(zoom);\n }\n\n @Input()\n set width(width: number) {\n this.setWidth(width);\n }\n @Input()\n set height(height: number) {\n this.setHeight(height);\n }\n\n @Input() disabled: boolean = false;\n\n @Input(\"fabric\") config?: FabricConfigInterface;\n\n @Output() drop = new EventEmitter<any>();\n @Output() dragover = new EventEmitter<any>();\n @Output() dragenter = new EventEmitter<any>();\n @Output() dragleave = new EventEmitter<any>();\n\n @Output() mouseup = new EventEmitter<any>();\n @Output() mousedown = new EventEmitter<any>();\n @Output() mouseover = new EventEmitter<any>();\n @Output() mouseout = new EventEmitter<any>();\n @Output() mousemove = new EventEmitter<any>();\n @Output() mousewheel = new EventEmitter<any>();\n @Output() mousedblclick = new EventEmitter<any>();\n @Output() mouseupBefore = new EventEmitter<any>();\n @Output() mousedownBefore = new EventEmitter<any>();\n @Output() mousemoveBefore = new EventEmitter<any>();\n\n @Output() mouseUp = new EventEmitter<any>();\n @Output() mouseDown = new EventEmitter<any>();\n @Output() mouseOver = new EventEmitter<any>();\n @Output() mouseOut = new EventEmitter<any>();\n @Output() mouseMove = new EventEmitter<any>();\n @Output() mouseWheel = new EventEmitter<any>();\n @Output() mouseDblclick = new EventEmitter<any>();\n @Output() mouseUpBefore = new EventEmitter<any>();\n @Output() mouseDownBefore = new EventEmitter<any>();\n @Output() mouseMoveBefore = new EventEmitter<any>();\n\n @Output() pathCreated = new EventEmitter<any>();\n @Output() alterRender = new EventEmitter<any>();\n\n @Output() objectAdded = new EventEmitter<any>();\n @Output() objectMoved = new EventEmitter<any>();\n @Output() objectScaled = new EventEmitter<any>();\n @Output() objectSkewed = new EventEmitter<any>();\n @Output() objectRotated = new EventEmitter<any>();\n @Output() objectRemoved = new EventEmitter<any>();\n @Output() objectModified = new EventEmitter<any>();\n @Output() objectSelected = new EventEmitter<any>();\n @Output() objectMoving = new EventEmitter<any>();\n @Output() objectScaling = new EventEmitter<any>();\n @Output() objectSkewing = new EventEmitter<any>();\n @Output() objectRotating = new EventEmitter<any>();\n\n @Output() selectionCleared = new EventEmitter<any>();\n @Output() selectionCreated = new EventEmitter<any>();\n @Output() selectionUpdated = new EventEmitter<any>();\n\n @Output() beforeTransform = new EventEmitter<any>();\n @Output() beforeSelectionCleared = new EventEmitter<any>();\n\n constructor(\n private zone: NgZone,\n private elementRef: ElementRef,\n private differs: KeyValueDiffers,\n @Optional() @Inject(FABRIC_CONFIG) private defaults: FabricConfigInterface\n ) {}\n\n ngOnInit(): void {\n const params = new FabricConfig(this.defaults);\n\n params.assign(this.config); // Custom configuration\n\n Object.keys(params).forEach(\n (key) => params[key] === undefined && delete params[key]\n );\n\n this.zone.runOutsideAngular(() => {\n if (!this.disabled) {\n this.instance = new Canvas(\n this.elementRef.nativeElement,\n params as any as CanvasOptions\n );\n } else {\n this.instance = new StaticCanvas(\n this.elementRef.nativeElement,\n params as any as StaticCanvasOptions\n );\n }\n\n if (this.initialZoom) {\n this.setZoom(this.initialZoom);\n }\n\n if (this.initialWidth) {\n this.setWidth(this.initialWidth);\n }\n\n if (this.initialHeight) {\n this.setHeight(this.initialHeight);\n }\n\n if (this.objectsJSON !== null) {\n this.loadFromJSON(this.objectsJSON);\n }\n });\n\n // Add native Fabric event handling\n FabricEvents.forEach((eventName: FabricEvent) => {\n const fabricEvent = eventName.replace(\n /([A-Z])/g,\n (c) => `:${c.toLowerCase()}`\n ) as any;\n\n if (this.instance) {\n this.instance.on(fabricEvent, (event: any) => {\n this.zone.run(() => {\n if (this[eventName].observers.length) {\n this[eventName].emit(event);\n }\n });\n });\n }\n });\n\n if (!this.configDiff) {\n this.configDiff = this.differs.find(this.config || {}).create();\n\n this.configDiff.diff(this.config || {});\n }\n\n this.zone.runOutsideAngular(() => {\n this.ro = new ResizeObserver((entries, observer) => {\n const element =\n this.elementRef.nativeElement.parentElement.parentElement;\n\n if (!this.initialWidth) {\n this.setWidth(element.offsetWidth);\n }\n\n if (!this.initialHeight) {\n this.setHeight(element.offsetHeight);\n }\n });\n\n this.ro.observe(\n this.elementRef.nativeElement.parentElement.parentElement\n );\n });\n }\n\n ngOnDestroy(): void {\n if (this.ro) {\n this.ro.disconnect();\n }\n\n if (this.instance) {\n this.objectsJSON = this.instance.toObject();\n\n this.instance.dispose();\n\n delete this.instance;\n\n this.instance = null;\n }\n }\n\n ngDoCheck(): void {\n if (this.configDiff) {\n const changes = this.configDiff.diff(this.config || {});\n\n if (changes) {\n this.ngOnDestroy();\n\n this.ngOnInit();\n }\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (this.instance && changes[\"disabled\"]) {\n if (\n changes[\"disabled\"].currentValue !== changes[\"disabled\"].previousValue\n ) {\n this.ngOnDestroy();\n\n this.ngOnInit();\n }\n }\n }\n\n public fabric(): any {\n return this.instance;\n }\n\n public clear(): void {\n if (this.instance) {\n this.instance.clear();\n }\n }\n\n public render(): void {\n if (this.instance) {\n this.instance.renderAll();\n }\n }\n\n public setZoom(zoom: number): void {\n this.initialZoom = zoom;\n\n if (this.instance) {\n this.instance.setZoom(zoom);\n }\n }\n\n public setWidth(width: number): void {\n this.initialWidth = width;\n\n if (this.instance) {\n this.instance.setWidth(width);\n }\n }\n\n public setHeight(height: number): void {\n this.initialHeight = height;\n\n if (this.instance) {\n this.instance.setHeight(height);\n }\n }\n\n public loadFromJSON(json: any, callback?: Function, reviverOpt?: any): void {\n if (this.instance) {\n this.instance.loadFromJSON(\n json,\n () => {\n let renderAll = true;\n\n if (callback) {\n renderAll = callback();\n }\n\n if (renderAll && this.instance) {\n this.instance.renderAll();\n }\n },\n reviverOpt\n );\n }\n }\n}\n","import { Component,\n AfterViewInit, Input, Output, EventEmitter,\n ViewChild, HostBinding, ViewEncapsulation } from '@angular/core';\n\nimport { FabricDirective } from './fabric.directive';\n\nimport { FabricConfigInterface } from './fabric.interfaces';\n\n@Component({\n selector: 'fabric',\n exportAs: 'ngxFabric',\n templateUrl: './fabric.component.html',\n styleUrls: [ './fabric.component.css' ],\n encapsulation: ViewEncapsulation.None,\n imports: [FabricDirective],\n})\nexport class FabricComponent implements AfterViewInit {\n private json: any = null;\n\n @Input()\n set data(data: string) {\n this.setJSON(data);\n }\n\n @Input() zoom: number | null = null;\n\n @Input() width: number | null = null;\n @Input() height: number | null = null;\n\n @Input() disabled: boolean = false;\n\n @Input() config?: FabricConfigInterface;\n\n @HostBinding('class.fabric')\n @Input() useFabricClass: boolean = true;\n\n @Output() dataLoaded = new EventEmitter<any>();\n\n @Output() drop = new EventEmitter<any>();\n @Output() dragover = new EventEmitter<any>();\n @Output() dragenter = new EventEmitter<any>();\n @Output() dragleave = new EventEmitter<any>();\n\n @Output() mouseup = new EventEmitter<any>();\n @Output() mousedown = new EventEmitter<any>();\n @Output() mouseover = new EventEmitter<any>();\n @Output() mouseout = new EventEmitter<any>();\n @Output() mousemove = new EventEmitter<any>();\n @Output() mousewheel = new EventEmitter<any>();\n @Output() mousedblclick = new EventEmitter<any>();\n @Output() mouseupBefore = new EventEmitter<any>();\n @Output() mousedownBefore = new EventEmitter<any>();\n @Output() mousemoveBefore = new EventEmitter<any>();\n\n @Output() mouseUp = new EventEmitter<any>();\n @Output() mouseDown = new EventEmitter<any>();\n @Output() mouseOver = new EventEmitter<any>();\n @Output() mouseOut = new EventEmitter<any>();\n @Output() mouseMove = new EventEmitter<any>();\n @Output() mouseWheel = new EventEmitter<any>();\n @Output() mouseDblclick = new EventEmitter<any>();\n @Output() mouseUpBefore = new EventEmitter<any>();\n @Output() mouseDownBefore = new EventEmitter<any>();\n @Output() mouseMoveBefore = new EventEmitter<any>();\n\n @Output() pathCreated = new EventEmitter<any>();\n @Output() alterRender = new EventEmitter<any>();\n\n @Output() objectAdded = new EventEmitter<any>();\n @Output() objectMoved = new EventEmitter<any>();\n @Output() objectScaled = new EventEmitter<any>();\n @Output() objectSkewed = new EventEmitter<any>();\n @Output() objectRotated = new EventEmitter<any>();\n @Output() objectRemoved = new EventEmitter<any>();\n @Output() objectModified = new EventEmitter<any>();\n @Output() objectSelected = new EventEmitter<any>();\n @Output() objectMoving = new EventEmitter<any>();\n @Output() objectScaling = new EventEmitter<any>();\n @Output() objectSkewing = new EventEmitter<any>();\n @Output() objectRotating = new EventEmitter<any>();\n\n @Output() selectionCleared = new EventEmitter<any>();\n @Output() selectionCreated = new EventEmitter<any>();\n @Output() selectionUpdated = new EventEmitter<any>();\n\n @Output() beforeTransform = new EventEmitter<any>();\n @Output() beforeSelectionCleared = new EventEmitter<any>();\n\n @ViewChild(FabricDirective, { static: true }) directiveRef?: FabricDirective;\n\n constructor() {}\n\n ngAfterViewInit(): void {\n if (this.json != null) {\n this.setJSON(this.json, true);\n }\n }\n\n private setJSON(json: string, force?: boolean): void {\n if (force || json !== this.json) {\n if (this.directiveRef) {\n this.directiveRef.loadFromJSON(json, () => {\n if (this.directiveRef && this.directiveRef.fabric()) {\n this.dataLoaded.emit(this.directiveRef.fabric());\n }\n });\n }\n\n this.json = json;\n }\n }\n}\n","<canvas [fabric]=\"config\" [zoom]=\"zoom\" [width]=\"width\" [height]=\"height\" [disabled]=\"disabled\" (drop)=\"drop.emit($event)\" (dragover)=\"dragover.emit($event)\" (dragenter)=\"dragenter.emit($event)\" (dragleave)=\"dragleave.emit($event)\" (mouseup)=\"mouseup.emit($event)\" (mousedown)=\"mousedown.emit($event)\" (mouseover)=\"mouseover.emit($event)\" (mouseout)=\"mouseout.emit($event)\" (mousemove)=\"mousemove.emit($event)\" (mousewheel)=\"mousewheel.emit($event)\" (mousedblclick)=\"mousedblclick.emit($event)\" (mouseupBefore)=\"mouseupBefore.emit($event)\" (mousedownBefore)=\"mousedownBefore.emit($event)\" (mousemoveBefore)=\"mousemoveBefore.emit($event)\" (mouseUp)=\"mouseUp.emit($event)\" (mouseDown)=\"mouseDown.emit($event)\" (mouseOver)=\"mouseOver.emit($event)\" (mouseOut)=\"mouseOut.emit($event)\" (mouseMove)=\"mouseMove.emit($event)\" (mouseWheel)=\"mouseWheel.emit($event)\" (mouseDblclick)=\"mouseDblclick.emit($event)\" (mouseUpBefore)=\"mouseUpBefore.emit($event)\" (mouseDownBefore)=\"mouseDownBefore.emit($event)\" (mouseMoveBefore)=\"mouseMoveBefore.emit($event)\" (pathCreated)=\"pathCreated.emit($event)\" (alterRender)=\"alterRender.emit($event)\" (objectAdded)=\"objectAdded.emit($event)\" (objectMoved)=\"objectMoved.emit($event)\" (objectScaled)=\"objectScaled.emit($event)\" (objectSkewed)=\"objectSkewed.emit($event)\" (objectRotated)=\"objectRotated.emit($event)\" (objectRemoved)=\"objectRemoved.emit($event)\" (objectModified)=\"objectModified.emit($event)\" (objectSelected)=\"objectSelected.emit($event)\" (objectMoving)=\"objectMoving.emit($event)\" (objectScaling)=\"objectScaling.emit($event)\" (objectSkewing)=\"objectSkewing.emit($event)\" (objectRotating)=\"objectRotating.emit($event)\" (selectionCleared)=\"selectionCleared.emit($event)\" (selectionCreated)=\"selectionCreated.emit($event)\" (selectionUpdated)=\"selectionUpdated.emit($event)\" (beforeTransform)=\"beforeTransform.emit($event)\" (beforeSelectionCleared)=\"beforeSelectionCleared.emit($event)\">\n</canvas>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ngx-fabric-wrapper.mjs","sources":["../../../projects/lib/src/lib/fabric.interfaces.ts","../../../projects/lib/src/lib/fabric.directive.ts","../../../projects/lib/src/lib/fabric.component.ts","../../../projects/lib/src/lib/fabric.component.html","../../../projects/lib/src/ngx-fabric-wrapper.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\n\nexport const FABRIC_CONFIG = new InjectionToken<FabricConfigInterface>('FABRIC_CONFIG');\n\nexport type FabricEvent = 'drop' | 'dragover' | 'dragenter' | 'dragleave' | 'mouseup' |\n 'mousedown' | 'mouseover' | 'mouseout' | 'mousemove' | 'mousewheel' | 'mousedblclick' |\n 'mouseupBefore' | 'mousedownBefore' | 'mousemoveBefore' | 'mouseUp' | 'mouseDown' |\n 'mouseOver' | 'mouseOut' | 'mouseMove' | 'mouseWheel' | 'mouseDblclick' | 'mouseUpBefore' | 'mouseDownBefore' |\n 'mouseMoveBefore' | 'pathCreated' | 'alterRender' | 'objectAdded' | 'objectMoved' | 'objectScaled' |\n 'objectSkewed' | 'objectRotated' | 'objectRemoved' | 'objectModified' | 'objectSelected' |\n 'objectMoving' | 'objectScaling' | 'objectSkewing' | 'objectRotating' | 'selectionCleared' |\n 'selectionCreated' | 'selectionUpdated' | 'beforeTransform' | 'beforeSelectionCleared' ;\n\nexport const FabricEvents: FabricEvent[] = [\n 'drop',\n 'dragover',\n 'dragenter',\n 'dragleave',\n\n 'mouseup',\n 'mousedown',\n 'mouseover',\n 'mouseout',\n 'mousemove',\n 'mousewheel',\n 'mousedblclick',\n 'mouseupBefore',\n 'mousedownBefore',\n 'mousemoveBefore',\n\n 'mouseUp',\n 'mouseDown',\n 'mouseOver',\n 'mouseOut',\n 'mouseMove',\n 'mouseWheel',\n 'mouseDblclick',\n 'mouseUpBefore',\n 'mouseDownBefore',\n 'mouseMoveBefore',\n\n 'pathCreated',\n 'alterRender',\n\n 'objectAdded',\n 'objectMoved',\n 'objectScaled',\n 'objectSkewed',\n 'objectRotated',\n 'objectRemoved',\n 'objectModified',\n 'objectSelected',\n 'objectMoving',\n 'objectScaling',\n 'objectSkewing',\n 'objectRotating',\n\n 'selectionCleared',\n 'selectionCreated',\n 'selectionUpdated',\n\n 'beforeTransform',\n 'beforeSelectionCleared'\n];\n\nexport interface FabricConfigInterface {\n allowTouchScrolling?: boolean,\n altActionKey?: string,\n altSelectionKey?: string,\n backgroundColor?: string | any,\n backgroundImage?: any,\n backgroundVpt?: boolean,\n centeredKey?: string,\n centeredRotation?: boolean,\n centeredScaling?: boolean,\n clipTo?: FabricClipToFunction,\n containerClass?: string,\n controlsAboveOverlay?: boolean,\n defaultCursor?: string,\n enableRetinaScaling?: boolean,\n fireMiddleClick?: boolean,\n fireRightClick?: boolean,\n freeDrawingCursor?: string,\n FX_DURATION?: number,\n hoverCursor?: string,\n imageSmoothingEnabled?: boolean,\n includeDefaultValues?: boolean,\n interactive?: boolean,\n isDrawingMode?: boolean,\n moveCursor?: string,\n notAllowedCursor?: string,\n overlayColor?: string | any,\n overlayImage?: any,\n overlayVpt?: boolean,\n perPixelTargetFind?: boolean,\n preserveObjectStacking?: boolean,\n renderOnAddRemove?: boolean,\n rotationCursor?: string,\n selection?: boolean,\n selectionBorderColor?: string,\n selectionColor?: string,\n selectionDashArray?: any[],\n selectionKey?: string,\n selectionLineWidth?: number,\n skipOffscreen?: boolean,\n skipTargetFind?: boolean,\n snapAngle?: number,\n snapThreshold?: number,\n stateful?: boolean,\n stopContextMenu?: boolean,\n svgViewportTransformation?: boolean,\n targetFindToTolerance?: number,\n uniScaleKey?: string,\n uniScaleTransform?: boolean,\n viewportTransform?: any[],\n vptCoords?: any\n}\n\nexport class FabricConfig implements FabricConfigInterface {\n allowTouchScrolling?: boolean;\n altActionKey?: string;\n altSelectionKey?: string;\n backgroundColor?: string | any;\n backgroundImage?: any;\n backgroundVpt?: boolean;\n centeredKey?: string;\n centeredRotation?: boolean;\n centeredScaling?: boolean;\n clipTo?: FabricClipToFunction;\n containerClass?: string;\n controlsAboveOverlay?: boolean;\n defaultCursor?: string;\n enableRetinaScaling?: boolean;\n fireMiddleClick?: boolean;\n fireRightClick?: boolean;\n freeDrawingCursor?: string;\n FX_DURATION?: number;\n hoverCursor?: string;\n imageSmoothingEnabled?: boolean;\n includeDefaultValues?: boolean;\n interactive?: boolean;\n isDrawingMode?: boolean;\n moveCursor?: string;\n notAllowedCursor?: string;\n overlayColor: string | any;\n overlayImage: any;\n overlayVpt?: boolean;\n perPixelTargetFind?: boolean;\n preserveObjectStacking?: boolean;\n renderOnAddRemove?: boolean;\n rotationCursor?: string;\n selection?: boolean;\n selectionBorderColor?: string;\n selectionColor?: string;\n selectionDashArray?: any[];\n selectionKey?: string;\n selectionLineWidth?: number;\n skipOffscreen?: boolean;\n skipTargetFind?: boolean;\n snapAngle?: number;\n snapThreshold?: number;\n stateful?: boolean;\n stopContextMenu?: boolean;\n svgViewportTransformation?: boolean;\n targetFindToTolerance?: number;\n uniScaleKey?: string;\n uniScaleTransform?: boolean;\n viewportTransform?: any[];\n vptCoords?: any;\n\n constructor(config: FabricConfigInterface = {}) {\n this.assign(config);\n }\n\n assign(config: FabricConfigInterface = {}) {\n for (const key in config) {\n this[key as keyof FabricConfig] = config[key as keyof FabricConfigInterface] as never;\n }\n }\n}\n\nexport type FabricClipToFunction = (ctx: any) => void;\n","import {\n Canvas,\n CanvasOptions,\n StaticCanvas,\n StaticCanvasOptions,\n} from \"fabric\";\n\nimport ResizeObserver from \"resize-observer-polyfill\";\n\nimport {\n Directive,\n Optional,\n Inject,\n OnInit,\n OnDestroy,\n DoCheck,\n OnChanges,\n Input,\n Output,\n EventEmitter,\n NgZone,\n ElementRef,\n KeyValueDiffer,\n KeyValueDiffers,\n SimpleChanges,\n} from \"@angular/core\";\n\nimport {\n FABRIC_CONFIG,\n FabricConfig,\n FabricConfigInterface,\n FabricEvent,\n FabricEvents,\n} from \"./fabric.interfaces\";\n\n@Directive({\n selector: \"[fabric]\",\n exportAs: \"ngxFabric\",\n})\nexport class FabricDirective implements OnInit, OnDestroy, DoCheck, OnChanges {\n private instance: Canvas | StaticCanvas | null = null;\n\n private ro: ResizeObserver | null = null;\n\n private objectsJSON: object | null = null;\n\n private initialZoom: number | null = null;\n private initialWidth: number | null = null;\n private initialHeight: number | null = null;\n\n private configDiff: KeyValueDiffer<string, any> | null = null;\n\n @Input()\n set zoom(zoom: number) {\n this.setZoom(zoom);\n }\n\n @Input()\n set width(width: number) {\n this.setWidth(width);\n }\n @Input()\n set height(height: number) {\n this.setHeight(height);\n }\n\n @Input() disabled: boolean = false;\n\n @Input(\"fabric\") config?: FabricConfigInterface;\n\n @Output() drop = new EventEmitter<any>();\n @Output() dragover = new EventEmitter<any>();\n @Output() dragenter = new EventEmitter<any>();\n @Output() dragleave = new EventEmitter<any>();\n\n @Output() mouseup = new EventEmitter<any>();\n @Output() mousedown = new EventEmitter<any>();\n @Output() mouseover = new EventEmitter<any>();\n @Output() mouseout = new EventEmitter<any>();\n @Output() mousemove = new EventEmitter<any>();\n @Output() mousewheel = new EventEmitter<any>();\n @Output() mousedblclick = new EventEmitter<any>();\n @Output() mouseupBefore = new EventEmitter<any>();\n @Output() mousedownBefore = new EventEmitter<any>();\n @Output() mousemoveBefore = new EventEmitter<any>();\n\n @Output() mouseUp = new EventEmitter<any>();\n @Output() mouseDown = new EventEmitter<any>();\n @Output() mouseOver = new EventEmitter<any>();\n @Output() mouseOut = new EventEmitter<any>();\n @Output() mouseMove = new EventEmitter<any>();\n @Output() mouseWheel = new EventEmitter<any>();\n @Output() mouseDblclick = new EventEmitter<any>();\n @Output() mouseUpBefore = new EventEmitter<any>();\n @Output() mouseDownBefore = new EventEmitter<any>();\n @Output() mouseMoveBefore = new EventEmitter<any>();\n\n @Output() pathCreated = new EventEmitter<any>();\n @Output() alterRender = new EventEmitter<any>();\n\n @Output() objectAdded = new EventEmitter<any>();\n @Output() objectMoved = new EventEmitter<any>();\n @Output() objectScaled = new EventEmitter<any>();\n @Output() objectSkewed = new EventEmitter<any>();\n @Output() objectRotated = new EventEmitter<any>();\n @Output() objectRemoved = new EventEmitter<any>();\n @Output() objectModified = new EventEmitter<any>();\n @Output() objectSelected = new EventEmitter<any>();\n @Output() objectMoving = new EventEmitter<any>();\n @Output() objectScaling = new EventEmitter<any>();\n @Output() objectSkewing = new EventEmitter<any>();\n @Output() objectRotating = new EventEmitter<any>();\n\n @Output() selectionCleared = new EventEmitter<any>();\n @Output() selectionCreated = new EventEmitter<any>();\n @Output() selectionUpdated = new EventEmitter<any>();\n\n @Output() beforeTransform = new EventEmitter<any>();\n @Output() beforeSelectionCleared = new EventEmitter<any>();\n\n constructor(\n private zone: NgZone,\n private elementRef: ElementRef,\n private differs: KeyValueDiffers,\n @Optional() @Inject(FABRIC_CONFIG) private defaults: FabricConfigInterface,\n ) {}\n\n ngOnInit(): void {\n const params = new FabricConfig(this.defaults);\n\n params.assign(this.config); // Custom configuration\n\n Object.keys(params).forEach(\n (key) => params[key] === undefined && delete params[key],\n );\n\n this.zone.runOutsideAngular(() => {\n if (!this.disabled) {\n this.instance = new Canvas(\n this.elementRef.nativeElement,\n params as any as CanvasOptions,\n );\n } else {\n this.instance = new StaticCanvas(\n this.elementRef.nativeElement,\n params as any as StaticCanvasOptions,\n );\n }\n\n if (this.initialZoom) {\n this.setZoom(this.initialZoom);\n }\n\n if (this.initialWidth) {\n this.setWidth(this.initialWidth);\n }\n\n if (this.initialHeight) {\n this.setHeight(this.initialHeight);\n }\n\n if (this.objectsJSON !== null) {\n this.loadFromJSON(this.objectsJSON);\n }\n });\n\n // Add native Fabric event handling\n FabricEvents.forEach((eventName: FabricEvent) => {\n const fabricEvent = eventName.replace(\n /([A-Z])/g,\n (c) => `:${c.toLowerCase()}`,\n ) as any;\n\n if (this.instance) {\n this.instance.on(fabricEvent, (event: any) => {\n this.zone.run(() => {\n if (this[eventName].observers.length) {\n this[eventName].emit(event);\n }\n });\n });\n }\n });\n\n if (!this.configDiff) {\n this.configDiff = this.differs.find(this.config || {}).create();\n\n this.configDiff.diff(this.config || {});\n }\n\n this.zone.runOutsideAngular(() => {\n this.ro = new ResizeObserver((entries, observer) => {\n const element =\n this.elementRef.nativeElement.parentElement.parentElement;\n\n if (!this.initialWidth) {\n this.setWidth(element.offsetWidth);\n }\n\n if (!this.initialHeight) {\n this.setHeight(element.offsetHeight);\n }\n });\n\n this.ro.observe(\n this.elementRef.nativeElement.parentElement.parentElement,\n );\n });\n }\n\n ngOnDestroy(): void {\n if (this.ro) {\n this.ro.disconnect();\n }\n\n if (this.instance) {\n this.objectsJSON = this.instance.toObject();\n\n this.instance.dispose();\n\n delete this.instance;\n\n this.instance = null;\n }\n }\n\n ngDoCheck(): void {\n if (this.configDiff) {\n const changes = this.configDiff.diff(this.config || {});\n\n if (changes) {\n this.ngOnDestroy();\n\n this.ngOnInit();\n }\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (this.instance && changes[\"disabled\"]) {\n if (\n changes[\"disabled\"].currentValue !== changes[\"disabled\"].previousValue\n ) {\n this.ngOnDestroy();\n\n this.ngOnInit();\n }\n }\n }\n\n public fabric(): any {\n return this.instance;\n }\n\n public clear(): void {\n if (this.instance) {\n this.instance.clear();\n }\n }\n\n public render(): void {\n if (this.instance) {\n this.instance.renderAll();\n }\n }\n\n public setZoom(zoom: number): void {\n this.initialZoom = zoom;\n\n if (this.instance) {\n this.instance.setZoom(zoom);\n }\n }\n\n public setWidth(width: number): void {\n this.initialWidth = width;\n\n if (this.instance) {\n this.instance.setDimensions({ width });\n }\n }\n\n public setHeight(height: number): void {\n this.initialHeight = height;\n\n if (this.instance) {\n this.instance.setDimensions({ height });\n }\n }\n\n public loadFromJSON(json: any, callback?: Function, reviverOpt?: any): void {\n if (this.instance) {\n this.instance.loadFromJSON(json, reviverOpt).then(() => {\n let renderAll = true;\n\n if (callback) {\n renderAll = callback();\n }\n\n if (renderAll && this.instance) {\n this.instance.renderAll();\n }\n });\n }\n }\n}\n","import { Component,\n AfterViewInit, Input, Output, EventEmitter,\n ViewChild, HostBinding, ViewEncapsulation } from '@angular/core';\n\nimport { FabricDirective } from './fabric.directive';\n\nimport { FabricConfigInterface } from './fabric.interfaces';\n\n@Component({\n selector: 'fabric',\n exportAs: 'ngxFabric',\n templateUrl: './fabric.component.html',\n styleUrls: [ './fabric.component.css' ],\n encapsulation: ViewEncapsulation.None,\n imports: [FabricDirective],\n})\nexport class FabricComponent implements AfterViewInit {\n private json: any = null;\n\n @Input()\n set data(data: string) {\n this.setJSON(data);\n }\n\n @Input() zoom: number | null = null;\n\n @Input() width: number | null = null;\n @Input() height: number | null = null;\n\n @Input() disabled: boolean = false;\n\n @Input() config?: FabricConfigInterface;\n\n @HostBinding('class.fabric')\n @Input() useFabricClass: boolean = true;\n\n @Output() dataLoaded = new EventEmitter<any>();\n\n @Output() drop = new EventEmitter<any>();\n @Output() dragover = new EventEmitter<any>();\n @Output() dragenter = new EventEmitter<any>();\n @Output() dragleave = new EventEmitter<any>();\n\n @Output() mouseup = new EventEmitter<any>();\n @Output() mousedown = new EventEmitter<any>();\n @Output() mouseover = new EventEmitter<any>();\n @Output() mouseout = new EventEmitter<any>();\n @Output() mousemove = new EventEmitter<any>();\n @Output() mousewheel = new EventEmitter<any>();\n @Output() mousedblclick = new EventEmitter<any>();\n @Output() mouseupBefore = new EventEmitter<any>();\n @Output() mousedownBefore = new EventEmitter<any>();\n @Output() mousemoveBefore = new EventEmitter<any>();\n\n @Output() mouseUp = new EventEmitter<any>();\n @Output() mouseDown = new EventEmitter<any>();\n @Output() mouseOver = new EventEmitter<any>();\n @Output() mouseOut = new EventEmitter<any>();\n @Output() mouseMove = new EventEmitter<any>();\n @Output() mouseWheel = new EventEmitter<any>();\n @Output() mouseDblclick = new EventEmitter<any>();\n @Output() mouseUpBefore = new EventEmitter<any>();\n @Output() mouseDownBefore = new EventEmitter<any>();\n @Output() mouseMoveBefore = new EventEmitter<any>();\n\n @Output() pathCreated = new EventEmitter<any>();\n @Output() alterRender = new EventEmitter<any>();\n\n @Output() objectAdded = new EventEmitter<any>();\n @Output() objectMoved = new EventEmitter<any>();\n @Output() objectScaled = new EventEmitter<any>();\n @Output() objectSkewed = new EventEmitter<any>();\n @Output() objectRotated = new EventEmitter<any>();\n @Output() objectRemoved = new EventEmitter<any>();\n @Output() objectModified = new EventEmitter<any>();\n @Output() objectSelected = new EventEmitter<any>();\n @Output() objectMoving = new EventEmitter<any>();\n @Output() objectScaling = new EventEmitter<any>();\n @Output() objectSkewing = new EventEmitter<any>();\n @Output() objectRotating = new EventEmitter<any>();\n\n @Output() selectionCleared = new EventEmitter<any>();\n @Output() selectionCreated = new EventEmitter<any>();\n @Output() selectionUpdated = new EventEmitter<any>();\n\n @Output() beforeTransform = new EventEmitter<any>();\n @Output() beforeSelectionCleared = new EventEmitter<any>();\n\n @ViewChild(FabricDirective, { static: true }) directiveRef?: FabricDirective;\n\n constructor() {}\n\n ngAfterViewInit(): void {\n if (this.json != null) {\n this.setJSON(this.json, true);\n }\n }\n\n private setJSON(json: string, force?: boolean): void {\n if (force || json !== this.json) {\n if (this.directiveRef) {\n this.directiveRef.loadFromJSON(json, () => {\n if (this.directiveRef && this.directiveRef.fabric()) {\n this.dataLoaded.emit(this.directiveRef.fabric());\n }\n });\n }\n\n this.json = json;\n }\n }\n}\n","<canvas [fabric]=\"config\" [zoom]=\"zoom\" [width]=\"width\" [height]=\"height\" [disabled]=\"disabled\" (drop)=\"drop.emit($event)\" (dragover)=\"dragover.emit($event)\" (dragenter)=\"dragenter.emit($event)\" (dragleave)=\"dragleave.emit($event)\" (mouseup)=\"mouseup.emit($event)\" (mousedown)=\"mousedown.emit($event)\" (mouseover)=\"mouseover.emit($event)\" (mouseout)=\"mouseout.emit($event)\" (mousemove)=\"mousemove.emit($event)\" (mousewheel)=\"mousewheel.emit($event)\" (mousedblclick)=\"mousedblclick.emit($event)\" (mouseupBefore)=\"mouseupBefore.emit($event)\" (mousedownBefore)=\"mousedownBefore.emit($event)\" (mousemoveBefore)=\"mousemoveBefore.emit($event)\" (mouseUp)=\"mouseUp.emit($event)\" (mouseDown)=\"mouseDown.emit($event)\" (mouseOver)=\"mouseOver.emit($event)\" (mouseOut)=\"mouseOut.emit($event)\" (mouseMove)=\"mouseMove.emit($event)\" (mouseWheel)=\"mouseWheel.emit($event)\" (mouseDblclick)=\"mouseDblclick.emit($event)\" (mouseUpBefore)=\"mouseUpBefore.emit($event)\" (mouseDownBefore)=\"mouseDownBefore.emit($event)\" (mouseMoveBefore)=\"mouseMoveBefore.emit($event)\" (pathCreated)=\"pathCreated.emit($event)\" (alterRender)=\"alterRender.emit($event)\" (objectAdded)=\"objectAdded.emit($event)\" (objectMoved)=\"objectMoved.emit($event)\" (objectScaled)=\"objectScaled.emit($event)\" (objectSkewed)=\"objectSkewed.emit($event)\" (objectRotated)=\"objectRotated.emit($event)\" (objectRemoved)=\"objectRemoved.emit($event)\" (objectModified)=\"objectModified.emit($event)\" (objectSelected)=\"objectSelected.emit($event)\" (objectMoving)=\"objectMoving.emit($event)\" (objectScaling)=\"objectScaling.emit($event)\" (objectSkewing)=\"objectSkewing.emit($event)\" (objectRotating)=\"objectRotating.emit($event)\" (selectionCleared)=\"selectionCleared.emit($event)\" (selectionCreated)=\"selectionCreated.emit($event)\" (selectionUpdated)=\"selectionUpdated.emit($event)\" (beforeTransform)=\"beforeTransform.emit($event)\" (beforeSelectionCleared)=\"beforeSelectionCleared.emit($event)\">\n</canvas>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "license": "MIT",
3
- "version": "20.0.0",
3
+ "version": "21.0.0",
4
4
  "name": "ngx-fabric-wrapper",
5
5
  "description": "Angular wrapper library for Fabric",
6
6
  "bugs": "https://github.com/zefoy/ngx-fabric-wrapper/issues",
@@ -9,7 +9,7 @@
9
9
  "url": "https://github.com/zefoy/ngx-fabric-wrapper.git"
10
10
  },
11
11
  "dependencies": {
12
- "fabric": "^6.7.0",
12
+ "fabric": "^7.0.0",
13
13
  "resize-observer-polyfill": "^1.5.0",
14
14
  "tslib": "^2.3.0"
15
15
  },