@foblex/flow 1.3.5 → 1.3.6
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.
- package/LICENSE +28 -0
- package/README.md +44 -1
- package/domain/get-connection-vector/get-connection-vector.request.d.ts +3 -3
- package/domain/providers.d.ts +1 -1
- package/esm2022/domain/get-connection-vector/get-connection-vector.handler.mjs +5 -5
- package/esm2022/domain/get-connection-vector/get-connection-vector.request.mjs +1 -1
- package/esm2022/f-backgroud/domain/i-f-background-pattern.mjs +3 -0
- package/esm2022/f-backgroud/domain/index.mjs +2 -0
- package/esm2022/f-backgroud/domain/public-api.mjs +2 -0
- package/esm2022/f-backgroud/f-background-base.mjs +11 -0
- package/esm2022/f-backgroud/f-background.component.mjs +59 -0
- package/esm2022/{components/f-flow/f-backgroud → f-backgroud}/f-cell-pattern/f-cell-pattern.component.mjs +1 -1
- package/esm2022/f-backgroud/f-cell-pattern/index.mjs +2 -0
- package/esm2022/f-backgroud/f-cell-pattern/public-api.mjs +2 -0
- package/esm2022/f-backgroud/index.mjs +5 -0
- package/esm2022/f-backgroud/public-api.mjs +4 -0
- package/esm2022/f-canvas/domain/f-canvas-change.event.mjs +7 -0
- package/esm2022/f-canvas/domain/index.mjs +2 -0
- package/esm2022/f-canvas/domain/public-api.mjs +2 -0
- package/esm2022/f-canvas/f-canvas-base.mjs +26 -0
- package/esm2022/{components/f-flow/f-canvas → f-canvas}/f-canvas.component.mjs +3 -3
- package/esm2022/f-canvas/f-zoom/f-zoom-base.mjs +94 -0
- package/esm2022/f-canvas/f-zoom/f-zoom.directive.mjs +59 -0
- package/esm2022/f-canvas/f-zoom/index.mjs +3 -0
- package/esm2022/f-canvas/f-zoom/public-api.mjs +2 -0
- package/esm2022/f-canvas/index.mjs +5 -0
- package/esm2022/f-canvas/public-api.mjs +4 -0
- package/esm2022/f-components-store.mjs +1 -1
- package/esm2022/f-connection/common/cast-to-connection-behavior.mjs +4 -4
- package/esm2022/f-connection/common/cast-to-connection-type.mjs +4 -4
- package/esm2022/f-connection/common/e-f-connection-behavior.mjs +6 -0
- package/esm2022/f-connection/common/e-f-connection-type.mjs +7 -0
- package/esm2022/f-connection/common/f-connection-base.mjs +5 -3
- package/esm2022/f-connection/common/index.mjs +3 -3
- package/esm2022/f-connection/common/path-constructor/bezier-path/bezier-path.mjs +29 -0
- package/esm2022/f-connection/common/path-constructor/bezier-path/index.mjs +2 -0
- package/esm2022/f-connection/common/path-constructor/index.mjs +2 -2
- package/esm2022/f-connection/common/path-constructor/path-constructor.mjs +6 -5
- package/esm2022/f-connection/common/public-api.mjs +3 -3
- package/esm2022/f-connection/f-connection/f-connection.component.mjs +5 -5
- package/esm2022/f-connection/f-connection-for-create/f-connection-for-create.component.mjs +5 -5
- package/esm2022/f-connection/f-marker/e-f-marker-type.mjs +3 -3
- package/esm2022/f-connection/f-marker/f-marker.directive.mjs +44 -0
- package/esm2022/f-connection/f-marker/index.mjs +2 -2
- package/esm2022/f-draggable/selection-area/selection-area.prepare-drag-sequence.mjs +1 -1
- package/esm2022/f-flow/domain/redraw-connections/redraw-connections.handler.mjs +46 -0
- package/esm2022/f-flow/f-flow.component.mjs +95 -0
- package/esm2022/f-flow/f-parent.injection-token.mjs +3 -0
- package/esm2022/f-flow/i-flow-base.mjs +3 -0
- package/esm2022/f-flow/index.mjs +5 -0
- package/esm2022/f-flow/public-api.mjs +2 -0
- package/esm2022/f-flow.module.mjs +9 -7
- package/esm2022/f-node/{f-node.component.mjs → f-node.directive.mjs} +7 -7
- package/esm2022/f-node/index.mjs +2 -2
- package/esm2022/f-node/public-api.mjs +2 -2
- package/esm2022/public-api.mjs +4 -2
- package/{components/f-flow/f-backgroud → f-backgroud}/f-background.component.d.ts +3 -4
- package/{components/f-flow/f-canvas → f-canvas}/f-canvas-base.d.ts +3 -3
- package/{components/f-flow/f-canvas → f-canvas}/f-canvas.component.d.ts +3 -3
- package/{components/f-flow/f-canvas → f-canvas}/f-zoom/f-zoom-base.d.ts +1 -1
- package/{components/f-flow/f-canvas → f-canvas}/f-zoom/f-zoom.directive.d.ts +1 -1
- package/f-components-store.d.ts +3 -1
- package/f-connection/common/cast-to-connection-behavior.d.ts +2 -2
- package/f-connection/common/cast-to-connection-type.d.ts +2 -2
- package/f-connection/common/{e-connection-behavior.d.ts → e-f-connection-behavior.d.ts} +1 -1
- package/f-connection/common/{e-connection-type.d.ts → e-f-connection-type.d.ts} +1 -1
- package/f-connection/common/f-connection-base.d.ts +4 -4
- package/f-connection/common/index.d.ts +2 -2
- package/f-connection/common/path-constructor/{bezier-path.d.ts → bezier-path/bezier-path.d.ts} +3 -2
- package/f-connection/common/path-constructor/bezier-path/index.d.ts +1 -0
- package/f-connection/common/path-constructor/index.d.ts +1 -1
- package/f-connection/common/path-constructor/path-constructor.d.ts +2 -2
- package/f-connection/common/public-api.d.ts +2 -2
- package/f-connection/f-connection/f-connection.component.d.ts +6 -6
- package/f-connection/f-connection-for-create/f-connection-for-create.component.d.ts +5 -5
- package/f-connection/f-marker/e-f-marker-type.d.ts +2 -2
- package/f-connection/f-marker/f-marker.directive.d.ts +15 -0
- package/f-connection/f-marker/index.d.ts +1 -1
- package/f-draggable/connections/providers.d.ts +1 -1
- package/f-draggable/external-item/providers.d.ts +1 -1
- package/f-draggable/node/providers.d.ts +1 -1
- package/f-flow/domain/redraw-connections/redraw-connections.handler.d.ts +16 -0
- package/f-flow/f-flow.component.d.ts +26 -0
- package/{components/f-flow → f-flow}/index.d.ts +1 -2
- package/f-flow/public-api.d.ts +1 -0
- package/f-flow.module.d.ts +6 -6
- package/f-node/{f-node.component.d.ts → f-node.directive.d.ts} +3 -3
- package/f-node/index.d.ts +1 -1
- package/f-node/public-api.d.ts +1 -1
- package/fesm2022/foblex-flow.mjs +2581 -2603
- package/fesm2022/foblex-flow.mjs.map +1 -1
- package/package.json +3 -5
- package/public-api.d.ts +3 -1
- package/components/f-flow/f-flow.component.d.ts +0 -101
- package/components/f-flow/public-api.d.ts +0 -3
- package/components/index.d.ts +0 -1
- package/components/public-api.d.ts +0 -1
- package/esm2022/components/f-flow/f-backgroud/domain/i-f-background-pattern.mjs +0 -3
- package/esm2022/components/f-flow/f-backgroud/domain/index.mjs +0 -2
- package/esm2022/components/f-flow/f-backgroud/domain/public-api.mjs +0 -2
- package/esm2022/components/f-flow/f-backgroud/f-background-base.mjs +0 -11
- package/esm2022/components/f-flow/f-backgroud/f-background.component.mjs +0 -60
- package/esm2022/components/f-flow/f-backgroud/f-cell-pattern/index.mjs +0 -2
- package/esm2022/components/f-flow/f-backgroud/f-cell-pattern/public-api.mjs +0 -2
- package/esm2022/components/f-flow/f-backgroud/index.mjs +0 -5
- package/esm2022/components/f-flow/f-backgroud/public-api.mjs +0 -4
- package/esm2022/components/f-flow/f-canvas/domain/f-canvas-change.event.mjs +0 -7
- package/esm2022/components/f-flow/f-canvas/domain/index.mjs +0 -2
- package/esm2022/components/f-flow/f-canvas/domain/public-api.mjs +0 -2
- package/esm2022/components/f-flow/f-canvas/f-canvas-base.mjs +0 -26
- package/esm2022/components/f-flow/f-canvas/f-zoom/f-zoom-base.mjs +0 -94
- package/esm2022/components/f-flow/f-canvas/f-zoom/f-zoom.directive.mjs +0 -59
- package/esm2022/components/f-flow/f-canvas/f-zoom/index.mjs +0 -3
- package/esm2022/components/f-flow/f-canvas/f-zoom/public-api.mjs +0 -2
- package/esm2022/components/f-flow/f-canvas/index.mjs +0 -5
- package/esm2022/components/f-flow/f-canvas/public-api.mjs +0 -4
- package/esm2022/components/f-flow/f-flow.component.mjs +0 -184
- package/esm2022/components/f-flow/f-parent.injection-token.mjs +0 -3
- package/esm2022/components/f-flow/i-flow-base.mjs +0 -3
- package/esm2022/components/f-flow/index.mjs +0 -6
- package/esm2022/components/f-flow/public-api.mjs +0 -4
- package/esm2022/components/index.mjs +0 -2
- package/esm2022/components/public-api.mjs +0 -2
- package/esm2022/f-connection/common/e-connection-behavior.mjs +0 -6
- package/esm2022/f-connection/common/e-connection-type.mjs +0 -7
- package/esm2022/f-connection/common/path-constructor/bezier-path.mjs +0 -7
- package/esm2022/f-connection/f-marker/f-marker.component.mjs +0 -39
- package/f-connection/f-marker/f-marker.component.d.ts +0 -15
- /package/{components/f-flow/f-backgroud → f-backgroud}/domain/i-f-background-pattern.d.ts +0 -0
- /package/{components/f-flow/f-backgroud → f-backgroud}/domain/index.d.ts +0 -0
- /package/{components/f-flow/f-backgroud → f-backgroud}/domain/public-api.d.ts +0 -0
- /package/{components/f-flow/f-backgroud → f-backgroud}/f-background-base.d.ts +0 -0
- /package/{components/f-flow/f-backgroud → f-backgroud}/f-cell-pattern/f-cell-pattern.component.d.ts +0 -0
- /package/{components/f-flow/f-backgroud → f-backgroud}/f-cell-pattern/index.d.ts +0 -0
- /package/{components/f-flow/f-backgroud → f-backgroud}/f-cell-pattern/public-api.d.ts +0 -0
- /package/{components/f-flow/f-backgroud → f-backgroud}/index.d.ts +0 -0
- /package/{components/f-flow/f-backgroud → f-backgroud}/public-api.d.ts +0 -0
- /package/{components/f-flow/f-canvas → f-canvas}/domain/f-canvas-change.event.d.ts +0 -0
- /package/{components/f-flow/f-canvas → f-canvas}/domain/index.d.ts +0 -0
- /package/{components/f-flow/f-canvas → f-canvas}/domain/public-api.d.ts +0 -0
- /package/{components/f-flow/f-canvas → f-canvas}/f-zoom/index.d.ts +0 -0
- /package/{components/f-flow/f-canvas → f-canvas}/f-zoom/public-api.d.ts +0 -0
- /package/{components/f-flow/f-canvas → f-canvas}/index.d.ts +0 -0
- /package/{components/f-flow/f-canvas → f-canvas}/public-api.d.ts +0 -0
- /package/{components/f-flow → f-flow}/f-parent.injection-token.d.ts +0 -0
- /package/{components/f-flow → f-flow}/i-flow-base.d.ts +0 -0
package/package.json
CHANGED
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@foblex/flow",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.6",
|
|
4
4
|
"description": "An Angular library designed to simplify the creation and manipulation of dynamic flow. Provides components for flows, nodes, and connections, automating node manipulation and inter-node connections.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"types": "index.d.ts",
|
|
7
7
|
"author": "Siarhei Huzarevich",
|
|
8
|
-
"
|
|
9
|
-
|
|
10
|
-
"url": "git+https://github.com/siarheihuzarevich/f-flow.git"
|
|
11
|
-
},
|
|
8
|
+
"docs": "https://foblex.com/flow/documentation/get-started",
|
|
9
|
+
"repository": "https://foblex.com/flow/home",
|
|
12
10
|
"private": false,
|
|
13
11
|
"keywords": [
|
|
14
12
|
"angular",
|
package/public-api.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
export * from './
|
|
1
|
+
export * from './f-flow/public-api';
|
|
2
|
+
export * from './f-backgroud/public-api';
|
|
3
|
+
export * from './f-canvas/public-api';
|
|
2
4
|
export * from './f-connection/public-api';
|
|
3
5
|
export * from './f-draggable/public-api';
|
|
4
6
|
export * from './f-node/public-api';
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
import { AfterContentInit, ElementRef, EventEmitter, OnDestroy, OnInit } from '@angular/core';
|
|
2
|
-
import { IFlowBase } from './i-flow-base';
|
|
3
|
-
import { FComponentsStore } from '../../f-components-store';
|
|
4
|
-
import { GetAllNodesRectHandler, GetConnectionVectorHandler, GetElementRectInFlowHandler } from '../../domain';
|
|
5
|
-
import { IRect } from '@foblex/core';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
/**
|
|
8
|
-
* `FFlowComponent` is an Angular component for managing and visualizing the flow of elements.
|
|
9
|
-
* This component provides functionality for initialization, monitoring changes, and managing connections between elements.
|
|
10
|
-
*
|
|
11
|
-
* @component
|
|
12
|
-
* @selector f-flow
|
|
13
|
-
* @templateUrl './f-flow.component.html'
|
|
14
|
-
* @styleUrls ['./f-flow.component.scss']
|
|
15
|
-
* @host { '[attr.id]': 'id', class: "f-component f-flow" }
|
|
16
|
-
* @providers {FComponentsStore, FDraggableDataContext, ...}
|
|
17
|
-
* @changeDetection ChangeDetectionStrategy.OnPush
|
|
18
|
-
* @implements IFlowBase, OnInit, AfterContentInit, OnDestroy
|
|
19
|
-
*/
|
|
20
|
-
export declare class FFlowComponent implements IFlowBase, OnInit, AfterContentInit, OnDestroy {
|
|
21
|
-
private elementReference;
|
|
22
|
-
private getElementRectInFlowHandler;
|
|
23
|
-
private getConnectionVectorHandler;
|
|
24
|
-
private getAllNodesRectHandler;
|
|
25
|
-
private fComponentsStore;
|
|
26
|
-
/**
|
|
27
|
-
* Subscription for managing observables, especially for cleanup on component destruction.
|
|
28
|
-
* @private
|
|
29
|
-
* @type {Subscription}
|
|
30
|
-
*/
|
|
31
|
-
private subscription$;
|
|
32
|
-
/**
|
|
33
|
-
* Unique identifier for each instance of the component.
|
|
34
|
-
* Automatically generated upon component creation.
|
|
35
|
-
*
|
|
36
|
-
* @input
|
|
37
|
-
* @hostBinding 'attr.id'
|
|
38
|
-
* @type {string}
|
|
39
|
-
*/
|
|
40
|
-
id: string;
|
|
41
|
-
/**
|
|
42
|
-
* Provides access to the host HTML element of the component.
|
|
43
|
-
*
|
|
44
|
-
* @returns {HTMLElement}
|
|
45
|
-
*/
|
|
46
|
-
get hostElement(): HTMLElement;
|
|
47
|
-
/**
|
|
48
|
-
* Event emitted after the component has fully loaded and initialized.
|
|
49
|
-
*
|
|
50
|
-
* @output
|
|
51
|
-
* @type {EventEmitter<void>}
|
|
52
|
-
*/
|
|
53
|
-
fLoaded: EventEmitter<void>;
|
|
54
|
-
/**
|
|
55
|
-
* Flag indicating whether the component has loaded.
|
|
56
|
-
* @private
|
|
57
|
-
* @type {boolean}
|
|
58
|
-
*/
|
|
59
|
-
private isLoaded;
|
|
60
|
-
/**
|
|
61
|
-
* Constructor for FFlowComponent.
|
|
62
|
-
*
|
|
63
|
-
* @param elementReference Angular ElementRef for accessing the DOM element.
|
|
64
|
-
* @param getElementRectInFlowHandler Handler to get the rectangle of an element in the flow.
|
|
65
|
-
* @param getConnectionVectorHandler Handler to get the connection vector.
|
|
66
|
-
* @param getAllNodesRectHandler Handler to get the rectangle of all nodes.
|
|
67
|
-
* @param fComponentsStore F Components Store.
|
|
68
|
-
*/
|
|
69
|
-
constructor(elementReference: ElementRef<HTMLElement>, getElementRectInFlowHandler: GetElementRectInFlowHandler, getConnectionVectorHandler: GetConnectionVectorHandler, getAllNodesRectHandler: GetAllNodesRectHandler, fComponentsStore: FComponentsStore);
|
|
70
|
-
/**
|
|
71
|
-
* Initializes the component, setting it as the active flow in `FComponentsStore` and assigning a unique ID.
|
|
72
|
-
*/
|
|
73
|
-
ngOnInit(): void;
|
|
74
|
-
/**
|
|
75
|
-
* Called after the content of the component has been initialized.
|
|
76
|
-
* Begins the process of monitoring and handling changes in elements.
|
|
77
|
-
*/
|
|
78
|
-
ngAfterContentInit(): void;
|
|
79
|
-
/**
|
|
80
|
-
* Subscribes to element changes and performs necessary actions on their change.
|
|
81
|
-
* @returns {Subscription}
|
|
82
|
-
* @private
|
|
83
|
-
*/
|
|
84
|
-
private subscribeOnElementsChanges;
|
|
85
|
-
/**
|
|
86
|
-
* Performs the calculation of connections between output and input elements.
|
|
87
|
-
* @private
|
|
88
|
-
*/
|
|
89
|
-
private calculateConnections;
|
|
90
|
-
/**
|
|
91
|
-
* Returns a rectangle representing the position and size of all nodes in the flow.
|
|
92
|
-
* @returns {IRect}
|
|
93
|
-
*/
|
|
94
|
-
getNodesRect(): IRect;
|
|
95
|
-
/**
|
|
96
|
-
* Releases resources and unsubscribes from all subscriptions before the component is destroyed.
|
|
97
|
-
*/
|
|
98
|
-
ngOnDestroy(): void;
|
|
99
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<FFlowComponent, never>;
|
|
100
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<FFlowComponent, "f-flow", never, { "id": { "alias": "id"; "required": false; }; }, { "fLoaded": "fLoaded"; }, never, ["[fDefinitions]", "f-background", "f-line-alignment", "f-canvas", "f-selection-area"], false, never>;
|
|
101
|
-
}
|
package/components/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './f-flow';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './f-flow/public-api';
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import { InjectionToken } from '@angular/core';
|
|
2
|
-
export const F_BACKGROUND_PATTERN = new InjectionToken('F_BACKGROUND_PATTERN');
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaS1mLWJhY2tncm91bmQtcGF0dGVybi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvY29tcG9uZW50cy9mLWZsb3cvZi1iYWNrZ3JvdWQvZG9tYWluL2ktZi1iYWNrZ3JvdW5kLXBhdHRlcm4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvQyxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLGNBQWMsQ0FBc0Isc0JBQXNCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElUcmFuc2Zvcm1Nb2RlbCB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgY29uc3QgRl9CQUNLR1JPVU5EX1BBVFRFUk4gPSBuZXcgSW5qZWN0aW9uVG9rZW48SUZCYWNrZ3JvdW5kUGF0dGVybj4oJ0ZfQkFDS0dST1VORF9QQVRURVJOJyk7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUZCYWNrZ3JvdW5kUGF0dGVybiB7XG5cbiAgc2V0VHJhbnNmb3JtKHRyYW5zZm9ybTogSVRyYW5zZm9ybU1vZGVsKTogdm9pZDtcbn1cbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './i-f-background-pattern';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2NvbXBvbmVudHMvZi1mbG93L2YtYmFja2dyb3VkL2RvbWFpbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDBCQUEwQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9pLWYtYmFja2dyb3VuZC1wYXR0ZXJuJztcbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './i-f-background-pattern';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvY29tcG9uZW50cy9mLWZsb3cvZi1iYWNrZ3JvdWQvZG9tYWluL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywwQkFBMEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vaS1mLWJhY2tncm91bmQtcGF0dGVybic7XG4iXX0=
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { Directive, InjectionToken } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export const F_BACKGROUND = new InjectionToken('F_BACKGROUND');
|
|
4
|
-
export class FBackgroundBase {
|
|
5
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: FBackgroundBase, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
6
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.1", type: FBackgroundBase, ngImport: i0 }); }
|
|
7
|
-
}
|
|
8
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: FBackgroundBase, decorators: [{
|
|
9
|
-
type: Directive
|
|
10
|
-
}] });
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1iYWNrZ3JvdW5kLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2NvbXBvbmVudHMvZi1mbG93L2YtYmFja2dyb3VkL2YtYmFja2dyb3VuZC1iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUcxRCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsSUFBSSxjQUFjLENBQWtCLGNBQWMsQ0FBQyxDQUFDO0FBR2hGLE1BQU0sT0FBZ0IsZUFBZTs4R0FBZixlQUFlO2tHQUFmLGVBQWU7OzJGQUFmLGVBQWU7a0JBRHBDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJSGFzSG9zdEVsZW1lbnQsIElUcmFuc2Zvcm1Nb2RlbCB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5cbmV4cG9ydCBjb25zdCBGX0JBQ0tHUk9VTkQgPSBuZXcgSW5qZWN0aW9uVG9rZW48RkJhY2tncm91bmRCYXNlPignRl9CQUNLR1JPVU5EJyk7XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEZCYWNrZ3JvdW5kQmFzZSBpbXBsZW1lbnRzIElIYXNIb3N0RWxlbWVudCB7XG5cbiAgcHVibGljIGFic3RyYWN0IGhvc3RFbGVtZW50OiBIVE1MRWxlbWVudDtcblxuICBwdWJsaWMgYWJzdHJhY3QgaXNCYWNrZ3JvdW5kRWxlbWVudChlbGVtZW50OiBIVE1MRWxlbWVudCB8IFNWR0VsZW1lbnQpOiBib29sZWFuO1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBzZXRUcmFuc2Zvcm0odHJhbnNmb3JtOiBJVHJhbnNmb3JtTW9kZWwpOiB2b2lkO1xufVxuIl19
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, ContentChild } from "@angular/core";
|
|
2
|
-
import { F_BACKGROUND, FBackgroundBase } from './f-background-base';
|
|
3
|
-
import { DomElementExtensions, TransformModelExtensions } from '@foblex/core';
|
|
4
|
-
import { F_BACKGROUND_PATTERN } from './domain';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "../../../f-components-store";
|
|
7
|
-
let uniqueId = 0;
|
|
8
|
-
export class FBackgroundComponent extends FBackgroundBase {
|
|
9
|
-
get hostElement() {
|
|
10
|
-
return this.elementReference.nativeElement;
|
|
11
|
-
}
|
|
12
|
-
constructor(elementReference, fComponentsStore, changeDetectorRef) {
|
|
13
|
-
super();
|
|
14
|
-
this.elementReference = elementReference;
|
|
15
|
-
this.fComponentsStore = fComponentsStore;
|
|
16
|
-
this.changeDetectorRef = changeDetectorRef;
|
|
17
|
-
}
|
|
18
|
-
ngOnInit() {
|
|
19
|
-
this.fComponentsStore.fBackground = this;
|
|
20
|
-
}
|
|
21
|
-
ngAfterContentInit() {
|
|
22
|
-
const children = this.fBackgroundPattern?.hostElement.getElementsByTagName('pattern') || [];
|
|
23
|
-
const pattern = children.length ? children[0] : undefined;
|
|
24
|
-
if (pattern) {
|
|
25
|
-
const defs = DomElementExtensions.createSvgElement('defs');
|
|
26
|
-
pattern.id = 'f-background-marker-' + uniqueId++;
|
|
27
|
-
this.fBackgroundPattern?.hostElement.remove();
|
|
28
|
-
defs.appendChild(pattern);
|
|
29
|
-
this.hostElement?.firstChild?.appendChild(defs);
|
|
30
|
-
const rect = DomElementExtensions.createSvgElement('rect');
|
|
31
|
-
rect.setAttribute('fill', 'url(#' + pattern.id + ')');
|
|
32
|
-
rect.setAttribute('width', '100%');
|
|
33
|
-
rect.setAttribute('height', '100%');
|
|
34
|
-
this.hostElement.firstChild?.appendChild(rect);
|
|
35
|
-
const transform = this.fComponentsStore.fCanvas?.transform || TransformModelExtensions.default();
|
|
36
|
-
this.fBackgroundPattern?.setTransform(transform);
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
isBackgroundElement(element) {
|
|
40
|
-
return this.hostElement.contains(element);
|
|
41
|
-
}
|
|
42
|
-
setTransform(transform) {
|
|
43
|
-
this.fBackgroundPattern?.setTransform(transform);
|
|
44
|
-
}
|
|
45
|
-
ngOnDestroy() {
|
|
46
|
-
this.fComponentsStore.fBackground = undefined;
|
|
47
|
-
}
|
|
48
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: FBackgroundComponent, deps: [{ token: i0.ElementRef }, { token: i1.FComponentsStore }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
49
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.1", type: FBackgroundComponent, selector: "f-background", host: { classAttribute: "f-component f-background" }, providers: [{ provide: F_BACKGROUND, useExisting: FBackgroundComponent }], queries: [{ propertyName: "fBackgroundPattern", first: true, predicate: F_BACKGROUND_PATTERN, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<svg>\n <ng-content></ng-content>\n\n<!-- <rect width=\"100%\" height=\"100%\" fill=\"url(#background-pattern)\"></rect>-->\n</svg>\n", styles: [":host{position:absolute;width:100%;height:100%;left:0;top:0;transform-origin:0 0;pointer-events:none}:host svg{width:100%;height:100%}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
50
|
-
}
|
|
51
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: FBackgroundComponent, decorators: [{
|
|
52
|
-
type: Component,
|
|
53
|
-
args: [{ selector: "f-background", host: {
|
|
54
|
-
'class': 'f-component f-background'
|
|
55
|
-
}, providers: [{ provide: F_BACKGROUND, useExisting: FBackgroundComponent }], changeDetection: ChangeDetectionStrategy.OnPush, template: "<svg>\n <ng-content></ng-content>\n\n<!-- <rect width=\"100%\" height=\"100%\" fill=\"url(#background-pattern)\"></rect>-->\n</svg>\n", styles: [":host{position:absolute;width:100%;height:100%;left:0;top:0;transform-origin:0 0;pointer-events:none}:host svg{width:100%;height:100%}\n"] }]
|
|
56
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.FComponentsStore }, { type: i0.ChangeDetectorRef }], propDecorators: { fBackgroundPattern: [{
|
|
57
|
-
type: ContentChild,
|
|
58
|
-
args: [F_BACKGROUND_PATTERN, { static: true }]
|
|
59
|
-
}] } });
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1iYWNrZ3JvdW5kLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvY29tcG9uZW50cy9mLWZsb3cvZi1iYWNrZ3JvdWQvZi1iYWNrZ3JvdW5kLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvY29tcG9uZW50cy9mLWZsb3cvZi1iYWNrZ3JvdWQvZi1iYWNrZ3JvdW5kLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFFdkIsU0FBUyxFQUFFLFlBQVksRUFHeEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVwRSxPQUFPLEVBQUUsb0JBQW9CLEVBQW1CLHdCQUF3QixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQy9GLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7O0FBRWhELElBQUksUUFBUSxHQUFXLENBQUMsQ0FBQztBQVl6QixNQUFNLE9BQU8sb0JBQXFCLFNBQVEsZUFBZTtJQUV2RCxJQUFvQixXQUFXO1FBQzdCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsQ0FBQztJQUM3QyxDQUFDO0lBS0QsWUFDWSxnQkFBeUMsRUFDekMsZ0JBQWtDLEVBQ2xDLGlCQUFvQztRQUU5QyxLQUFLLEVBQUUsQ0FBQztRQUpFLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBeUI7UUFDekMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO0lBR2hELENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7SUFDM0MsQ0FBQztJQUVNLGtCQUFrQjtRQUN2QixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsV0FBVyxDQUFDLG9CQUFvQixDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUM1RixNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUUsQ0FBQyxDQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUM1RCxJQUFJLE9BQU8sRUFBRTtZQUNYLE1BQU0sSUFBSSxHQUFHLG9CQUFvQixDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzNELE9BQU8sQ0FBQyxFQUFFLEdBQUcsc0JBQXNCLEdBQUcsUUFBUSxFQUFFLENBQUM7WUFDakQsSUFBSSxDQUFDLGtCQUFrQixFQUFFLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUM5QyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzFCLElBQUksQ0FBQyxXQUFXLEVBQUUsVUFBVSxFQUFFLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNoRCxNQUFNLElBQUksR0FBRyxvQkFBb0IsQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUMzRCxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxPQUFPLEdBQUcsT0FBTyxDQUFDLEVBQUUsR0FBRyxHQUFHLENBQUMsQ0FBQztZQUN0RCxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztZQUNuQyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUNwQyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDL0MsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxTQUFTLElBQUksd0JBQXdCLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDakcsSUFBSSxDQUFDLGtCQUFrQixFQUFFLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUNsRDtJQUNILENBQUM7SUFFZSxtQkFBbUIsQ0FBQyxPQUFpQztRQUNuRSxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFTSxZQUFZLENBQUMsU0FBMEI7UUFDNUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLFlBQVksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxHQUFHLFNBQVMsQ0FBQztJQUNoRCxDQUFDOzhHQWxEVSxvQkFBb0I7a0dBQXBCLG9CQUFvQiw2RkFIcEIsQ0FBRSxFQUFFLE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLG9CQUFvQixFQUFFLENBQUUsMEVBUzdELG9CQUFvQixxRkMvQnBDLDZJQUtBOzsyRkRvQmEsb0JBQW9CO2tCQVZoQyxTQUFTOytCQUNFLGNBQWMsUUFHbEI7d0JBQ0osT0FBTyxFQUFFLDBCQUEwQjtxQkFDcEMsYUFDVSxDQUFFLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLHNCQUFzQixFQUFFLENBQUUsbUJBQzFELHVCQUF1QixDQUFDLE1BQU07OElBU3hDLGtCQUFrQjtzQkFEeEIsWUFBWTt1QkFBQyxvQkFBb0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBZnRlckNvbnRlbnRJbml0LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCwgQ29udGVudENoaWxkLFxuICBFbGVtZW50UmVmLCBPbkRlc3Ryb3ksXG4gIE9uSW5pdFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgRl9CQUNLR1JPVU5ELCBGQmFja2dyb3VuZEJhc2UgfSBmcm9tICcuL2YtYmFja2dyb3VuZC1iYXNlJztcbmltcG9ydCB7IEZDb21wb25lbnRzU3RvcmUgfSBmcm9tICcuLi8uLi8uLi9mLWNvbXBvbmVudHMtc3RvcmUnO1xuaW1wb3J0IHsgRG9tRWxlbWVudEV4dGVuc2lvbnMsIElUcmFuc2Zvcm1Nb2RlbCwgVHJhbnNmb3JtTW9kZWxFeHRlbnNpb25zIH0gZnJvbSAnQGZvYmxleC9jb3JlJztcbmltcG9ydCB7IEZfQkFDS0dST1VORF9QQVRURVJOIH0gZnJvbSAnLi9kb21haW4nO1xuXG5sZXQgdW5pcXVlSWQ6IG51bWJlciA9IDA7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJmLWJhY2tncm91bmRcIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9mLWJhY2tncm91bmQuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVVcmxzOiBbIFwiLi9mLWJhY2tncm91bmQuY29tcG9uZW50LnNjc3NcIiBdLFxuICBob3N0OiB7XG4gICAgJ2NsYXNzJzogJ2YtY29tcG9uZW50IGYtYmFja2dyb3VuZCdcbiAgfSxcbiAgcHJvdmlkZXJzOiBbIHsgcHJvdmlkZTogRl9CQUNLR1JPVU5ELCB1c2VFeGlzdGluZzogRkJhY2tncm91bmRDb21wb25lbnQgfSBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRkJhY2tncm91bmRDb21wb25lbnQgZXh0ZW5kcyBGQmFja2dyb3VuZEJhc2UgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyQ29udGVudEluaXQsIE9uRGVzdHJveSB7XG5cbiAgcHVibGljIG92ZXJyaWRlIGdldCBob3N0RWxlbWVudCgpOiBIVE1MRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuZWxlbWVudFJlZmVyZW5jZS5uYXRpdmVFbGVtZW50O1xuICB9XG5cbiAgQENvbnRlbnRDaGlsZChGX0JBQ0tHUk9VTkRfUEFUVEVSTiwgeyBzdGF0aWM6IHRydWUgfSlcbiAgcHVibGljIGZCYWNrZ3JvdW5kUGF0dGVybjogRkJhY2tncm91bmRCYXNlIHwgdW5kZWZpbmVkO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBlbGVtZW50UmVmZXJlbmNlOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICAgIHByaXZhdGUgZkNvbXBvbmVudHNTdG9yZTogRkNvbXBvbmVudHNTdG9yZSxcbiAgICAgIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmXG4gICkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZCYWNrZ3JvdW5kID0gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgY29uc3QgY2hpbGRyZW4gPSB0aGlzLmZCYWNrZ3JvdW5kUGF0dGVybj8uaG9zdEVsZW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ3BhdHRlcm4nKSB8fCBbXTtcbiAgICBjb25zdCBwYXR0ZXJuID0gY2hpbGRyZW4ubGVuZ3RoID8gY2hpbGRyZW5bIDAgXSA6IHVuZGVmaW5lZDtcbiAgICBpZiAocGF0dGVybikge1xuICAgICAgY29uc3QgZGVmcyA9IERvbUVsZW1lbnRFeHRlbnNpb25zLmNyZWF0ZVN2Z0VsZW1lbnQoJ2RlZnMnKTtcbiAgICAgIHBhdHRlcm4uaWQgPSAnZi1iYWNrZ3JvdW5kLW1hcmtlci0nICsgdW5pcXVlSWQrKztcbiAgICAgIHRoaXMuZkJhY2tncm91bmRQYXR0ZXJuPy5ob3N0RWxlbWVudC5yZW1vdmUoKTtcbiAgICAgIGRlZnMuYXBwZW5kQ2hpbGQocGF0dGVybik7XG4gICAgICB0aGlzLmhvc3RFbGVtZW50Py5maXJzdENoaWxkPy5hcHBlbmRDaGlsZChkZWZzKTtcbiAgICAgIGNvbnN0IHJlY3QgPSBEb21FbGVtZW50RXh0ZW5zaW9ucy5jcmVhdGVTdmdFbGVtZW50KCdyZWN0Jyk7XG4gICAgICByZWN0LnNldEF0dHJpYnV0ZSgnZmlsbCcsICd1cmwoIycgKyBwYXR0ZXJuLmlkICsgJyknKTtcbiAgICAgIHJlY3Quc2V0QXR0cmlidXRlKCd3aWR0aCcsICcxMDAlJyk7XG4gICAgICByZWN0LnNldEF0dHJpYnV0ZSgnaGVpZ2h0JywgJzEwMCUnKTtcbiAgICAgIHRoaXMuaG9zdEVsZW1lbnQuZmlyc3RDaGlsZD8uYXBwZW5kQ2hpbGQocmVjdCk7XG4gICAgICBjb25zdCB0cmFuc2Zvcm0gPSB0aGlzLmZDb21wb25lbnRzU3RvcmUuZkNhbnZhcz8udHJhbnNmb3JtIHx8IFRyYW5zZm9ybU1vZGVsRXh0ZW5zaW9ucy5kZWZhdWx0KCk7XG4gICAgICB0aGlzLmZCYWNrZ3JvdW5kUGF0dGVybj8uc2V0VHJhbnNmb3JtKHRyYW5zZm9ybSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG92ZXJyaWRlIGlzQmFja2dyb3VuZEVsZW1lbnQoZWxlbWVudDogSFRNTEVsZW1lbnQgfCBTVkdFbGVtZW50KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaG9zdEVsZW1lbnQuY29udGFpbnMoZWxlbWVudCk7XG4gIH1cblxuICBwdWJsaWMgc2V0VHJhbnNmb3JtKHRyYW5zZm9ybTogSVRyYW5zZm9ybU1vZGVsKTogdm9pZCB7XG4gICAgdGhpcy5mQmFja2dyb3VuZFBhdHRlcm4/LnNldFRyYW5zZm9ybSh0cmFuc2Zvcm0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQmFja2dyb3VuZCA9IHVuZGVmaW5lZDtcbiAgfVxufVxuIiwiPHN2Zz5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG5cbjwhLS0gICAgPHJlY3Qgd2lkdGg9XCIxMDAlXCIgaGVpZ2h0PVwiMTAwJVwiIGZpbGw9XCJ1cmwoI2JhY2tncm91bmQtcGF0dGVybilcIj48L3JlY3Q+LS0+XG48L3N2Zz5cbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './f-cell-pattern.component';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2NvbXBvbmVudHMvZi1mbG93L2YtYmFja2dyb3VkL2YtY2VsbC1wYXR0ZXJuL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNEJBQTRCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2YtY2VsbC1wYXR0ZXJuLmNvbXBvbmVudCc7XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './f-cell-pattern.component';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvY29tcG9uZW50cy9mLWZsb3cvZi1iYWNrZ3JvdWQvZi1jZWxsLXBhdHRlcm4vcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDRCQUE0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9mLWNlbGwtcGF0dGVybi5jb21wb25lbnQnO1xuIl19
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export * from './domain';
|
|
2
|
-
export * from './f-cell-pattern';
|
|
3
|
-
export * from './f-background.component';
|
|
4
|
-
export * from './f-background-base';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2NvbXBvbmVudHMvZi1mbG93L2YtYmFja2dyb3VkL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsVUFBVSxDQUFDO0FBRXpCLGNBQWMsa0JBQWtCLENBQUM7QUFFakMsY0FBYywwQkFBMEIsQ0FBQztBQUV6QyxjQUFjLHFCQUFxQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9kb21haW4nO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtY2VsbC1wYXR0ZXJuJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWJhY2tncm91bmQuY29tcG9uZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWJhY2tncm91bmQtYmFzZSc7XG5cblxuXG5cblxuIl19
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export * from './domain/public-api';
|
|
2
|
-
export * from './f-cell-pattern/public-api';
|
|
3
|
-
export * from './f-background.component';
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvY29tcG9uZW50cy9mLWZsb3cvZi1iYWNrZ3JvdWQvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHFCQUFxQixDQUFDO0FBRXBDLGNBQWMsNkJBQTZCLENBQUM7QUFFNUMsY0FBYywwQkFBMEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZG9tYWluL3B1YmxpYy1hcGknO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtY2VsbC1wYXR0ZXJuL3B1YmxpYy1hcGknO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtYmFja2dyb3VuZC5jb21wb25lbnQnO1xuIl19
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
export class FCanvasChangeEvent {
|
|
2
|
-
constructor(position, scale) {
|
|
3
|
-
this.position = position;
|
|
4
|
-
this.scale = scale;
|
|
5
|
-
}
|
|
6
|
-
}
|
|
7
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jYW52YXMtY2hhbmdlLmV2ZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZi1mbG93L3NyYy9jb21wb25lbnRzL2YtZmxvdy9mLWNhbnZhcy9kb21haW4vZi1jYW52YXMtY2hhbmdlLmV2ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxrQkFBa0I7SUFDM0IsWUFDb0IsUUFBZ0IsRUFDaEIsS0FBYTtRQURiLGFBQVEsR0FBUixRQUFRLENBQVE7UUFDaEIsVUFBSyxHQUFMLEtBQUssQ0FBUTtJQUVqQyxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdAZm9ibGV4L2NvcmUnO1xuXG5leHBvcnQgY2xhc3MgRkNhbnZhc0NoYW5nZUV2ZW50IHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIHJlYWRvbmx5IHBvc2l0aW9uOiBJUG9pbnQsXG4gICAgICAgIHB1YmxpYyByZWFkb25seSBzY2FsZTogbnVtYmVyLFxuICAgICkge1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './f-canvas-change.event';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2NvbXBvbmVudHMvZi1mbG93L2YtY2FudmFzL2RvbWFpbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHlCQUF5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9mLWNhbnZhcy1jaGFuZ2UuZXZlbnQnO1xuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './f-canvas-change.event';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvY29tcG9uZW50cy9mLWZsb3cvZi1jYW52YXMvZG9tYWluL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZi1jYW52YXMtY2hhbmdlLmV2ZW50JztcbiJdfQ==
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { PointExtensions, TransformModelExtensions } from '@foblex/core';
|
|
2
|
-
import { Directive, InjectionToken } from '@angular/core';
|
|
3
|
-
import { mixinChangePosition, mixinChangeZoom, mixinFitToParent, mixinOneToOneCentering } from '../../../common-behaviours';
|
|
4
|
-
import { FCanvasChangeEvent } from './domain/f-canvas-change.event';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export const F_CANVAS = new InjectionToken('F_CANVAS');
|
|
7
|
-
const MIXIN_BASE = mixinChangePosition(mixinFitToParent(mixinOneToOneCentering(mixinChangeZoom(class {
|
|
8
|
-
constructor(transform) {
|
|
9
|
-
this.transform = transform;
|
|
10
|
-
}
|
|
11
|
-
}))));
|
|
12
|
-
export class FCanvasBase extends MIXIN_BASE {
|
|
13
|
-
constructor() {
|
|
14
|
-
super(TransformModelExtensions.default());
|
|
15
|
-
}
|
|
16
|
-
completeDrag() {
|
|
17
|
-
const position = PointExtensions.sum(this.transform.position, this.transform.scaledPosition);
|
|
18
|
-
this.fCanvasChange.emit(new FCanvasChangeEvent(position, this.transform.scale));
|
|
19
|
-
}
|
|
20
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: FCanvasBase, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
21
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.1", type: FCanvasBase, usesInheritance: true, ngImport: i0 }); }
|
|
22
|
-
}
|
|
23
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: FCanvasBase, decorators: [{
|
|
24
|
-
type: Directive
|
|
25
|
-
}], ctorParameters: () => [] });
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi1jYW52YXMtYmFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvY29tcG9uZW50cy9mLWZsb3cvZi1jYW52YXMvZi1jYW52YXMtYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRVksZUFBZSxFQUNoQyx3QkFBd0IsRUFDekIsTUFBTSxjQUFjLENBQUM7QUFDdEIsT0FBTyxFQUFFLFNBQVMsRUFBNEIsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BGLE9BQU8sRUFFTCxtQkFBbUIsRUFDbkIsZUFBZSxFQUNmLGdCQUFnQixFQUNoQixzQkFBc0IsRUFDdkIsTUFBTSw0QkFBNEIsQ0FBQztBQUNwQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7QUFHcEUsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLElBQUksY0FBYyxDQUFjLFVBQVUsQ0FBQyxDQUFDO0FBRXBFLE1BQU0sVUFBVSxHQUFHLG1CQUFtQixDQUNsQyxnQkFBZ0IsQ0FDWixzQkFBc0IsQ0FDbEIsZUFBZSxDQUNYO0lBQ0UsWUFDVyxTQUEwQjtRQUExQixjQUFTLEdBQVQsU0FBUyxDQUFpQjtJQUVyQyxDQUFDO0NBQ0YsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBR3RCLE1BQU0sT0FBZ0IsV0FDbEIsU0FBUSxVQUFVO0lBYXBCO1FBQ0UsS0FBSyxDQUFDLHdCQUF3QixDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQU1NLFlBQVk7UUFDakIsTUFBTSxRQUFRLEdBQUcsZUFBZSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzdGLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUNuQixJQUFJLGtCQUFrQixDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUN6RCxDQUFDO0lBQ0osQ0FBQzs4R0EzQm1CLFdBQVc7a0dBQVgsV0FBVzs7MkZBQVgsV0FBVztrQkFEaEMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIElIYXNIb3N0RWxlbWVudCxcbiAgSVRyYW5zZm9ybU1vZGVsLCBQb2ludEV4dGVuc2lvbnMsXG4gIFRyYW5zZm9ybU1vZGVsRXh0ZW5zaW9uc1xufSBmcm9tICdAZm9ibGV4L2NvcmUnO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBJQ2FuQ2hhbmdlUG9zaXRpb24sIElDYW5DaGFuZ2Vab29tLCBJQ2FuRml0VG9QYXJlbnQsIElDYW5PbmVUb09uZUNlbnRlcmluZyxcbiAgbWl4aW5DaGFuZ2VQb3NpdGlvbixcbiAgbWl4aW5DaGFuZ2Vab29tLFxuICBtaXhpbkZpdFRvUGFyZW50LFxuICBtaXhpbk9uZVRvT25lQ2VudGVyaW5nXG59IGZyb20gJy4uLy4uLy4uL2NvbW1vbi1iZWhhdmlvdXJzJztcbmltcG9ydCB7IEZDYW52YXNDaGFuZ2VFdmVudCB9IGZyb20gJy4vZG9tYWluL2YtY2FudmFzLWNoYW5nZS5ldmVudCc7XG5pbXBvcnQgeyBGTm9kZUJhc2UgfSBmcm9tICcuLi8uLi8uLi9mLW5vZGUnO1xuXG5leHBvcnQgY29uc3QgRl9DQU5WQVMgPSBuZXcgSW5qZWN0aW9uVG9rZW48RkNhbnZhc0Jhc2U+KCdGX0NBTlZBUycpO1xuXG5jb25zdCBNSVhJTl9CQVNFID0gbWl4aW5DaGFuZ2VQb3NpdGlvbihcbiAgICBtaXhpbkZpdFRvUGFyZW50KFxuICAgICAgICBtaXhpbk9uZVRvT25lQ2VudGVyaW5nKFxuICAgICAgICAgICAgbWl4aW5DaGFuZ2Vab29tKFxuICAgICAgICAgICAgICAgIGNsYXNzIHtcbiAgICAgICAgICAgICAgICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICAgICAgICAgICAgICAgIHB1YmxpYyB0cmFuc2Zvcm06IElUcmFuc2Zvcm1Nb2RlbFxuICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSkpKSk7XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEZDYW52YXNCYXNlXG4gICAgZXh0ZW5kcyBNSVhJTl9CQVNFXG4gICAgaW1wbGVtZW50cyBJSGFzSG9zdEVsZW1lbnQsIElDYW5DaGFuZ2VQb3NpdGlvbiwgSUNhbkZpdFRvUGFyZW50LCBJQ2FuT25lVG9PbmVDZW50ZXJpbmcsIElDYW5DaGFuZ2Vab29tIHtcblxuICBwdWJsaWMgYWJzdHJhY3QgZkNhbnZhc0NoYW5nZTogRXZlbnRFbWl0dGVyPEZDYW52YXNDaGFuZ2VFdmVudD47XG5cbiAgcHVibGljIGFic3RyYWN0IGZOb2RlczogRk5vZGVCYXNlW107XG5cbiAgcHVibGljIGFic3RyYWN0IGhvc3RFbGVtZW50OiBIVE1MRWxlbWVudDtcblxuICBwdWJsaWMgYWJzdHJhY3QgZk5vZGVzQ29udGFpbmVyOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICBwdWJsaWMgYWJzdHJhY3QgZkNvbm5lY3Rpb25zQ29udGFpbmVyOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PjtcblxuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoVHJhbnNmb3JtTW9kZWxFeHRlbnNpb25zLmRlZmF1bHQoKSk7XG4gIH1cblxuICBwdWJsaWMgYWJzdHJhY3QgcmVkcmF3KCk6IHZvaWQ7XG5cbiAgcHVibGljIGFic3RyYWN0IHJlZHJhd1dpdGhBbmltYXRpb24oKTogdm9pZDtcblxuICBwdWJsaWMgY29tcGxldGVEcmFnKCk6IHZvaWQge1xuICAgIGNvbnN0IHBvc2l0aW9uID0gUG9pbnRFeHRlbnNpb25zLnN1bSh0aGlzLnRyYW5zZm9ybS5wb3NpdGlvbiwgdGhpcy50cmFuc2Zvcm0uc2NhbGVkUG9zaXRpb24pO1xuICAgIHRoaXMuZkNhbnZhc0NoYW5nZS5lbWl0KFxuICAgICAgICBuZXcgRkNhbnZhc0NoYW5nZUV2ZW50KHBvc2l0aW9uLCB0aGlzLnRyYW5zZm9ybS5zY2FsZSlcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
import { EventExtensions, Point, RectExtensions } from '@foblex/core';
|
|
2
|
-
import { InjectionToken } from '@angular/core';
|
|
3
|
-
import { isNode } from '../../../../f-node';
|
|
4
|
-
export const F_ZOOM = new InjectionToken('F_ZOOM');
|
|
5
|
-
export class FZoomBase {
|
|
6
|
-
get flowHost() {
|
|
7
|
-
return this.fComponentsStore.flowHost;
|
|
8
|
-
}
|
|
9
|
-
get fCanvas() {
|
|
10
|
-
return this.fComponentsStore.fCanvas;
|
|
11
|
-
}
|
|
12
|
-
constructor(fComponentsStore) {
|
|
13
|
-
this.fComponentsStore = fComponentsStore;
|
|
14
|
-
this.isEnabled = false;
|
|
15
|
-
this.listeners = EventExtensions.emptyListener();
|
|
16
|
-
}
|
|
17
|
-
toggleZoom() {
|
|
18
|
-
if (this.isEnabled) {
|
|
19
|
-
this.subscribe();
|
|
20
|
-
}
|
|
21
|
-
else {
|
|
22
|
-
this.unsubscribe();
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
subscribe() {
|
|
26
|
-
this.listeners();
|
|
27
|
-
if (!this.flowHost) {
|
|
28
|
-
return;
|
|
29
|
-
}
|
|
30
|
-
this.flowHost.addEventListener('wheel', this.onWheel.bind(this));
|
|
31
|
-
this.flowHost.addEventListener('dblclick', this.onDoubleClick.bind(this));
|
|
32
|
-
this.listeners = () => {
|
|
33
|
-
this.flowHost.removeEventListener('wheel', this.onWheel.bind(this));
|
|
34
|
-
this.flowHost.removeEventListener('dblclick', this.onDoubleClick.bind(this));
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
getScale() {
|
|
38
|
-
return this.fCanvas.transform.scale || 1;
|
|
39
|
-
}
|
|
40
|
-
onWheel(event) {
|
|
41
|
-
event.preventDefault();
|
|
42
|
-
if (this.fComponentsStore.fDraggable?.isDragStarted) {
|
|
43
|
-
return;
|
|
44
|
-
}
|
|
45
|
-
let result = this.getScale();
|
|
46
|
-
const direction = event.deltaY > 0 ? -1 : 1;
|
|
47
|
-
const step = this.step;
|
|
48
|
-
result = result + step * direction;
|
|
49
|
-
result = Math.max(this.minimum, Math.min(result, this.maximum));
|
|
50
|
-
const pointerPositionInFlow = new Point(event.clientX, event.clientY).elementTransform(this.flowHost);
|
|
51
|
-
this.fCanvas.setZoom(result, pointerPositionInFlow);
|
|
52
|
-
this.fCanvas.redraw();
|
|
53
|
-
this.fCanvas.completeDrag();
|
|
54
|
-
}
|
|
55
|
-
onDoubleClick(event) {
|
|
56
|
-
event.preventDefault();
|
|
57
|
-
if (this.fComponentsStore.fDraggable?.isDragStarted || isNode(event.target)) {
|
|
58
|
-
return;
|
|
59
|
-
}
|
|
60
|
-
let result = this.getScale();
|
|
61
|
-
const direction = 1;
|
|
62
|
-
const step = this.dblClickStep;
|
|
63
|
-
result = result + step * direction;
|
|
64
|
-
result = Math.max(this.minimum, Math.min(result, this.maximum));
|
|
65
|
-
const pointerPositionInFlow = new Point(event.clientX, event.clientY).elementTransform(this.flowHost);
|
|
66
|
-
this.fCanvas.setZoom(result, pointerPositionInFlow);
|
|
67
|
-
this.fCanvas.redrawWithAnimation();
|
|
68
|
-
this.fCanvas.completeDrag();
|
|
69
|
-
}
|
|
70
|
-
onZoomToCenter(deltaY, position) {
|
|
71
|
-
const preventDefault = () => {
|
|
72
|
-
};
|
|
73
|
-
const rect = RectExtensions.fromElement(this.flowHost);
|
|
74
|
-
this.onWheel({
|
|
75
|
-
deltaY, preventDefault, clientX: position?.x || rect.gravityCenter.x, clientY: position?.y || rect.gravityCenter.y
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
zoomIn(position) {
|
|
79
|
-
this.onZoomToCenter(-1, position);
|
|
80
|
-
}
|
|
81
|
-
zoomOut(position) {
|
|
82
|
-
this.onZoomToCenter(1, position);
|
|
83
|
-
}
|
|
84
|
-
reset() {
|
|
85
|
-
this.fCanvas.resetZoom();
|
|
86
|
-
this.fCanvas.redraw();
|
|
87
|
-
this.fCanvas.completeDrag();
|
|
88
|
-
}
|
|
89
|
-
unsubscribe() {
|
|
90
|
-
this.listeners();
|
|
91
|
-
this.listeners = EventExtensions.emptyListener();
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi16b29tLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2NvbXBvbmVudHMvZi1mbG93L2YtY2FudmFzL2Ytem9vbS9mLXpvb20tYmFzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFVLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDOUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcvQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFNUMsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHLElBQUksY0FBYyxDQUFZLFFBQVEsQ0FBQyxDQUFDO0FBRTlELE1BQU0sT0FBZ0IsU0FBUztJQVk3QixJQUFZLFFBQVE7UUFDbEIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxJQUFZLE9BQU87UUFDakIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBc0IsQ0FBQztJQUN0RCxDQUFDO0lBRUQsWUFDYyxnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQW5CdEMsY0FBUyxHQUFZLEtBQUssQ0FBQztRQVE3QixjQUFTLEdBQWEsZUFBZSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBYTlELENBQUM7SUFFUyxVQUFVO1FBQ2xCLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNsQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7U0FDbEI7YUFBTTtZQUNMLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUNwQjtJQUNILENBQUM7SUFFTyxTQUFTO1FBQ2YsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2xCLE9BQU87U0FDUjtRQUVE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RyxlQUFlLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDbkQsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXZlbnRFeHRlbnNpb25zLCBJUG9pbnQsIFBvaW50LCBSZWN0RXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRkNhbnZhc0Jhc2UgfSBmcm9tICcuLi8uLi8uLi9pbmRleCc7XG5pbXBvcnQgeyBGQ29tcG9uZW50c1N0b3JlIH0gZnJvbSAnLi4vLi4vLi4vLi4vZi1jb21wb25lbnRzLXN0b3JlJztcbmltcG9ydCB7IGlzTm9kZSB9IGZyb20gJy4uLy4uLy4uLy4uL2Ytbm9kZSc7XG5cbmV4cG9ydCBjb25zdCBGX1pPT00gPSBuZXcgSW5qZWN0aW9uVG9rZW48Rlpvb21CYXNlPignRl9aT09NJyk7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBGWm9vbUJhc2Uge1xuXG4gIHByb3RlY3RlZCBpc0VuYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBwdWJsaWMgYWJzdHJhY3QgbWluaW11bTogbnVtYmVyO1xuICBwdWJsaWMgYWJzdHJhY3QgbWF4aW11bTogbnVtYmVyO1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBzdGVwOiBudW1iZXI7XG4gIHB1YmxpYyBhYnN0cmFjdCBkYmxDbGlja1N0ZXA6IG51bWJlcjtcblxuICBwcml2YXRlIGxpc3RlbmVyczogRnVuY3Rpb24gPSBFdmVudEV4dGVuc2lvbnMuZW1wdHlMaXN0ZW5lcigpO1xuXG4gIHByaXZhdGUgZ2V0IGZsb3dIb3N0KCk6IEhUTUxFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5mQ29tcG9uZW50c1N0b3JlLmZsb3dIb3N0O1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgZkNhbnZhcygpOiBGQ2FudmFzQmFzZSB7XG4gICAgcmV0dXJuIHRoaXMuZkNvbXBvbmVudHNTdG9yZS5mQ2FudmFzIGFzIEZDYW52YXNCYXNlO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKFxuICAgICAgcHJvdGVjdGVkIGZDb21wb25lbnRzU3RvcmU6IEZDb21wb25lbnRzU3RvcmVcbiAgKSB7XG4gIH1cblxuICBwcm90ZWN0ZWQgdG9nZ2xlWm9vbSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pc0VuYWJsZWQpIHtcbiAgICAgIHRoaXMuc3Vic2NyaWJlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudW5zdWJzY3JpYmUoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHN1YnNjcmliZSgpOiB2b2lkIHtcbiAgICB0aGlzLmxpc3RlbmVycygpO1xuICAgIGlmICghdGhpcy5mbG93SG9zdCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuZmxvd0hvc3QuYWRkRXZlbnRMaXN0ZW5lcignd2hlZWwnLCB0aGlzLm9uV2hlZWwuYmluZCh0aGlzKSk7XG4gICAgdGhpcy5mbG93SG9zdC5hZGRFdmVudExpc3RlbmVyKCdkYmxjbGljaycsIHRoaXMub25Eb3VibGVDbGljay5iaW5kKHRoaXMpKTtcbiAgICB0aGlzLmxpc3RlbmVycyA9ICgpID0+IHtcbiAgICAgIHRoaXMuZmxvd0hvc3QucmVtb3ZlRXZlbnRMaXN0ZW5lcignd2hlZWwnLCB0aGlzLm9uV2hlZWwuYmluZCh0aGlzKSk7XG4gICAgICB0aGlzLmZsb3dIb3N0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2RibGNsaWNrJywgdGhpcy5vbkRvdWJsZUNsaWNrLmJpbmQodGhpcykpO1xuICAgIH07XG4gIH1cblxuICBwdWJsaWMgZ2V0U2NhbGUoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5mQ2FudmFzLnRyYW5zZm9ybS5zY2FsZSB8fCAxO1xuICB9XG5cbiAgcHJpdmF0ZSBvbldoZWVsKGV2ZW50OiBXaGVlbEV2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcblxuICAgIGlmICh0aGlzLmZDb21wb25lbnRzU3RvcmUuZkRyYWdnYWJsZT8uaXNEcmFnU3RhcnRlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGxldCByZXN1bHQ6IG51bWJlciA9IHRoaXMuZ2V0U2NhbGUoKTtcblxuICAgIGNvbnN0IGRpcmVjdGlvbiA9IGV2ZW50LmRlbHRhWSA+IDAgPyAtMSA6IDE7XG4gICAgY29uc3Qgc3RlcCA9IHRoaXMuc3RlcDtcbiAgICByZXN1bHQgPSByZXN1bHQgKyBzdGVwICogZGlyZWN0aW9uO1xuXG4gICAgcmVzdWx0ID0gTWF0aC5tYXgodGhpcy5taW5pbXVtLCBNYXRoLm1pbihyZXN1bHQsIHRoaXMubWF4aW11bSkpO1xuXG4gICAgY29uc3QgcG9pbnRlclBvc2l0aW9uSW5GbG93ID0gbmV3IFBvaW50KGV2ZW50LmNsaWVudFgsIGV2ZW50LmNsaWVudFkpLmVsZW1lbnRUcmFuc2Zvcm0odGhpcy5mbG93SG9zdCk7XG5cbiAgICB0aGlzLmZDYW52YXMuc2V0Wm9vbShyZXN1bHQsIHBvaW50ZXJQb3NpdGlvbkluRmxvdyk7XG4gICAgdGhpcy5mQ2FudmFzLnJlZHJhdygpO1xuICAgIHRoaXMuZkNhbnZhcy5jb21wbGV0ZURyYWcoKTtcbiAgfVxuXG4gIHByaXZhdGUgb25Eb3VibGVDbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG5cbiAgICBpZiAodGhpcy5mQ29tcG9uZW50c1N0b3JlLmZEcmFnZ2FibGU/LmlzRHJhZ1N0YXJ0ZWQgfHwgaXNOb2RlKGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCkpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBsZXQgcmVzdWx0OiBudW1iZXIgPSB0aGlzLmdldFNjYWxlKCk7XG5cbiAgICBjb25zdCBkaXJlY3Rpb24gPSAxO1xuICAgIGNvbnN0IHN0ZXAgPSB0aGlzLmRibENsaWNrU3RlcDtcbiAgICByZXN1bHQgPSByZXN1bHQgKyBzdGVwICogZGlyZWN0aW9uO1xuXG4gICAgcmVzdWx0ID0gTWF0aC5tYXgodGhpcy5taW5pbXVtLCBNYXRoLm1pbihyZXN1bHQsIHRoaXMubWF4aW11bSkpO1xuXG4gICAgY29uc3QgcG9pbnRlclBvc2l0aW9uSW5GbG93ID0gbmV3IFBvaW50KGV2ZW50LmNsaWVudFgsIGV2ZW50LmNsaWVudFkpLmVsZW1lbnRUcmFuc2Zvcm0odGhpcy5mbG93SG9zdCk7XG4gICAgdGhpcy5mQ2FudmFzLnNldFpvb20ocmVzdWx0LCBwb2ludGVyUG9zaXRpb25JbkZsb3cpO1xuICAgIHRoaXMuZkNhbnZhcy5yZWRyYXdXaXRoQW5pbWF0aW9uKCk7XG4gICAgdGhpcy5mQ2FudmFzLmNvbXBsZXRlRHJhZygpO1xuICB9XG5cbiAgcHJpdmF0ZSBvblpvb21Ub0NlbnRlcihkZWx0YVk6IG51bWJlciwgcG9zaXRpb24/OiBJUG9pbnQpOiB2b2lkIHtcbiAgICBjb25zdCBwcmV2ZW50RGVmYXVsdCA9ICgpID0+IHtcbiAgICB9O1xuICAgIGNvbnN0IHJlY3QgPSBSZWN0RXh0ZW5zaW9ucy5mcm9tRWxlbWVudCh0aGlzLmZsb3dIb3N0KTtcblxuICAgIHRoaXMub25XaGVlbCh7XG4gICAgICBkZWx0YVksIHByZXZlbnREZWZhdWx0LCBjbGllbnRYOiBwb3NpdGlvbj8ueCB8fCByZWN0LmdyYXZpdHlDZW50ZXIueCwgY2xpZW50WTogcG9zaXRpb24/LnkgfHwgcmVjdC5ncmF2aXR5Q2VudGVyLnlcbiAgICB9IGFzIFdoZWVsRXZlbnQpO1xuICB9XG5cbiAgcHVibGljIHpvb21Jbihwb3NpdGlvbj86IElQb2ludCk6IHZvaWQge1xuICAgIHRoaXMub25ab29tVG9DZW50ZXIoLTEsIHBvc2l0aW9uKTtcbiAgfVxuXG4gIHB1YmxpYyB6b29tT3V0KHBvc2l0aW9uPzogSVBvaW50KTogdm9pZCB7XG4gICAgdGhpcy5vblpvb21Ub0NlbnRlcigxLCBwb3NpdGlvbik7XG4gIH1cblxuICBwdWJsaWMgcmVzZXQoKTogdm9pZCB7XG4gICAgdGhpcy5mQ2FudmFzLnJlc2V0Wm9vbSgpO1xuICAgIHRoaXMuZkNhbnZhcy5yZWRyYXcoKTtcbiAgICB0aGlzLmZDYW52YXMuY29tcGxldGVEcmFnKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgdW5zdWJzY3JpYmUoKTogdm9pZCB7XG4gICAgdGhpcy5saXN0ZW5lcnMoKTtcbiAgICB0aGlzLmxpc3RlbmVycyA9IEV2ZW50RXh0ZW5zaW9ucy5lbXB0eUxpc3RlbmVyKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { Directive, Input } from "@angular/core";
|
|
2
|
-
import { BooleanExtensions } from '@foblex/core';
|
|
3
|
-
import { F_ZOOM, FZoomBase } from './f-zoom-base';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "../../../../f-components-store";
|
|
6
|
-
export class FZoomDirective extends FZoomBase {
|
|
7
|
-
get fFlowZoom() {
|
|
8
|
-
return this.isEnabled;
|
|
9
|
-
}
|
|
10
|
-
set fFlowZoom(isEnabled) {
|
|
11
|
-
const value = BooleanExtensions.castToBoolean(isEnabled);
|
|
12
|
-
if (value !== this.isEnabled) {
|
|
13
|
-
this.isEnabled = value;
|
|
14
|
-
this.toggleZoom();
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
constructor(fComponentsStore) {
|
|
18
|
-
super(fComponentsStore);
|
|
19
|
-
this.minimum = 0.1;
|
|
20
|
-
this.maximum = 4;
|
|
21
|
-
this.step = 0.1;
|
|
22
|
-
this.dblClickStep = 0.5;
|
|
23
|
-
}
|
|
24
|
-
ngAfterViewInit() {
|
|
25
|
-
super.toggleZoom();
|
|
26
|
-
}
|
|
27
|
-
ngOnDestroy() {
|
|
28
|
-
super.unsubscribe();
|
|
29
|
-
}
|
|
30
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: FZoomDirective, deps: [{ token: i1.FComponentsStore }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
31
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.1", type: FZoomDirective, selector: "f-canvas[fZoom]", inputs: { fFlowZoom: ["fZoom", "fFlowZoom"], minimum: ["fZoomMinimum", "minimum"], maximum: ["fZoomMaximum", "maximum"], step: ["fZoomStep", "step"], dblClickStep: ["fZoomDblClickStep", "dblClickStep"] }, host: { classAttribute: "f-zoom f-component" }, providers: [{ provide: F_ZOOM, useExisting: FZoomDirective }], exportAs: ["fComponent"], usesInheritance: true, ngImport: i0 }); }
|
|
32
|
-
}
|
|
33
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.1", ngImport: i0, type: FZoomDirective, decorators: [{
|
|
34
|
-
type: Directive,
|
|
35
|
-
args: [{
|
|
36
|
-
selector: "f-canvas[fZoom]",
|
|
37
|
-
exportAs: 'fComponent',
|
|
38
|
-
host: {
|
|
39
|
-
'class': 'f-zoom f-component'
|
|
40
|
-
},
|
|
41
|
-
providers: [{ provide: F_ZOOM, useExisting: FZoomDirective }],
|
|
42
|
-
}]
|
|
43
|
-
}], ctorParameters: () => [{ type: i1.FComponentsStore }], propDecorators: { fFlowZoom: [{
|
|
44
|
-
type: Input,
|
|
45
|
-
args: ['fZoom']
|
|
46
|
-
}], minimum: [{
|
|
47
|
-
type: Input,
|
|
48
|
-
args: ['fZoomMinimum']
|
|
49
|
-
}], maximum: [{
|
|
50
|
-
type: Input,
|
|
51
|
-
args: ['fZoomMaximum']
|
|
52
|
-
}], step: [{
|
|
53
|
-
type: Input,
|
|
54
|
-
args: ['fZoomStep']
|
|
55
|
-
}], dblClickStep: [{
|
|
56
|
-
type: Input,
|
|
57
|
-
args: ['fZoomDblClickStep']
|
|
58
|
-
}] } });
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZi16b29tLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvY29tcG9uZW50cy9mLWZsb3cvZi1jYW52YXMvZi16b29tL2Ytem9vbS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFBRSxLQUFLLEVBQ2pCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNqRCxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBV2xELE1BQU0sT0FBTyxjQUFlLFNBQVEsU0FBUztJQUUzQyxJQUNXLFNBQVM7UUFDbEIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFXLFNBQVMsQ0FBQyxTQUF1QztRQUMxRCxNQUFNLEtBQUssR0FBRyxpQkFBaUIsQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDekQsSUFBSSxLQUFLLEtBQUssSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUM1QixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztZQUN2QixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7U0FDbkI7SUFDSCxDQUFDO0lBY0QsWUFDSSxnQkFBa0M7UUFFcEMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFkVixZQUFPLEdBQVcsR0FBRyxDQUFDO1FBR3RCLFlBQU8sR0FBVyxDQUFDLENBQUM7UUFHcEIsU0FBSSxHQUFXLEdBQUcsQ0FBQztRQUduQixpQkFBWSxHQUFXLEdBQUcsQ0FBQztJQU0zQyxDQUFDO0lBRU0sZUFBZTtRQUNwQixLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVNLFdBQVc7UUFDaEIsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3RCLENBQUM7OEdBdkNVLGNBQWM7a0dBQWQsY0FBYyx1U0FGZCxDQUFFLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsY0FBYyxFQUFFLENBQUU7OzJGQUVwRCxjQUFjO2tCQVIxQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFFBQVEsRUFBRSxZQUFZO29CQUN0QixJQUFJLEVBQUU7d0JBQ0osT0FBTyxFQUFFLG9CQUFvQjtxQkFDOUI7b0JBQ0QsU0FBUyxFQUFFLENBQUUsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFdBQVcsZ0JBQWdCLEVBQUUsQ0FBRTtpQkFDaEU7cUZBSVksU0FBUztzQkFEbkIsS0FBSzt1QkFBQyxPQUFPO2dCQWNFLE9BQU87c0JBRHRCLEtBQUs7dUJBQUMsY0FBYztnQkFJTCxPQUFPO3NCQUR0QixLQUFLO3VCQUFDLGNBQWM7Z0JBSUwsSUFBSTtzQkFEbkIsS0FBSzt1QkFBQyxXQUFXO2dCQUlGLFlBQVk7c0JBRDNCLEtBQUs7dUJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgRGlyZWN0aXZlLCBJbnB1dCwgT25EZXN0cm95XG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBCb29sZWFuRXh0ZW5zaW9ucyB9IGZyb20gJ0Bmb2JsZXgvY29yZSc7XG5pbXBvcnQgeyBGX1pPT00sIEZab29tQmFzZSB9IGZyb20gJy4vZi16b29tLWJhc2UnO1xuaW1wb3J0IHsgRkNvbXBvbmVudHNTdG9yZSB9IGZyb20gJy4uLy4uLy4uLy4uL2YtY29tcG9uZW50cy1zdG9yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogXCJmLWNhbnZhc1tmWm9vbV1cIixcbiAgZXhwb3J0QXM6ICdmQ29tcG9uZW50JyxcbiAgaG9zdDoge1xuICAgICdjbGFzcyc6ICdmLXpvb20gZi1jb21wb25lbnQnXG4gIH0sXG4gIHByb3ZpZGVyczogWyB7IHByb3ZpZGU6IEZfWk9PTSwgdXNlRXhpc3Rpbmc6IEZab29tRGlyZWN0aXZlIH0gXSxcbn0pXG5leHBvcnQgY2xhc3MgRlpvb21EaXJlY3RpdmUgZXh0ZW5kcyBGWm9vbUJhc2UgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuXG4gIEBJbnB1dCgnZlpvb20nKVxuICBwdWJsaWMgZ2V0IGZGbG93Wm9vbSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pc0VuYWJsZWQ7XG4gIH1cblxuICBwdWJsaWMgc2V0IGZGbG93Wm9vbShpc0VuYWJsZWQ6IGJvb2xlYW4gfCB1bmRlZmluZWQgfCBzdHJpbmcpIHtcbiAgICBjb25zdCB2YWx1ZSA9IEJvb2xlYW5FeHRlbnNpb25zLmNhc3RUb0Jvb2xlYW4oaXNFbmFibGVkKTtcbiAgICBpZiAodmFsdWUgIT09IHRoaXMuaXNFbmFibGVkKSB7XG4gICAgICB0aGlzLmlzRW5hYmxlZCA9IHZhbHVlO1xuICAgICAgdGhpcy50b2dnbGVab29tKCk7XG4gICAgfVxuICB9XG5cbiAgQElucHV0KCdmWm9vbU1pbmltdW0nKVxuICBwdWJsaWMgb3ZlcnJpZGUgbWluaW11bTogbnVtYmVyID0gMC4xO1xuXG4gIEBJbnB1dCgnZlpvb21NYXhpbXVtJylcbiAgcHVibGljIG92ZXJyaWRlIG1heGltdW06IG51bWJlciA9IDQ7XG5cbiAgQElucHV0KCdmWm9vbVN0ZXAnKVxuICBwdWJsaWMgb3ZlcnJpZGUgc3RlcDogbnVtYmVyID0gMC4xO1xuXG4gIEBJbnB1dCgnZlpvb21EYmxDbGlja1N0ZXAnKVxuICBwdWJsaWMgb3ZlcnJpZGUgZGJsQ2xpY2tTdGVwOiBudW1iZXIgPSAwLjU7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgICBmQ29tcG9uZW50c1N0b3JlOiBGQ29tcG9uZW50c1N0b3JlLFxuICApIHtcbiAgICBzdXBlcihmQ29tcG9uZW50c1N0b3JlKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgc3VwZXIudG9nZ2xlWm9vbSgpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHN1cGVyLnVuc3Vic2NyaWJlKCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from './f-zoom-base';
|
|
2
|
-
export * from './f-zoom.directive';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2NvbXBvbmVudHMvZi1mbG93L2YtY2FudmFzL2Ytem9vbS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGVBQWUsQ0FBQztBQUU5QixjQUFjLG9CQUFvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9mLXpvb20tYmFzZSc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi16b29tLmRpcmVjdGl2ZSc7XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './f-zoom.directive';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvY29tcG9uZW50cy9mLWZsb3cvZi1jYW52YXMvZi16b29tL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxvQkFBb0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZi16b29tLmRpcmVjdGl2ZSc7XG4iXX0=
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
export * from './domain';
|
|
2
|
-
export * from './f-zoom';
|
|
3
|
-
export * from './f-canvas.component';
|
|
4
|
-
export * from './f-canvas-base';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mLWZsb3cvc3JjL2NvbXBvbmVudHMvZi1mbG93L2YtY2FudmFzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsVUFBVSxDQUFDO0FBRXpCLGNBQWMsVUFBVSxDQUFDO0FBRXpCLGNBQWMsc0JBQXNCLENBQUM7QUFFckMsY0FBYyxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZG9tYWluJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLXpvb20nO1xuXG5leHBvcnQgKiBmcm9tICcuL2YtY2FudmFzLmNvbXBvbmVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZi1jYW52YXMtYmFzZSc7XG5cblxuIl19
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export * from './domain/public-api';
|
|
2
|
-
export * from './f-zoom/public-api';
|
|
3
|
-
export * from './f-canvas.component';
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2YtZmxvdy9zcmMvY29tcG9uZW50cy9mLWZsb3cvZi1jYW52YXMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHFCQUFxQixDQUFDO0FBRXBDLGNBQWMscUJBQXFCLENBQUM7QUFFcEMsY0FBYyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vZG9tYWluL3B1YmxpYy1hcGknO1xuXG5leHBvcnQgKiBmcm9tICcuL2Ytem9vbS9wdWJsaWMtYXBpJztcblxuZXhwb3J0ICogZnJvbSAnLi9mLWNhbnZhcy5jb21wb25lbnQnO1xuIl19
|