@stemy/ngx-utils 19.7.8 → 19.7.9
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/fesm2022/stemy-ngx-utils.mjs +150 -83
- package/fesm2022/stemy-ngx-utils.mjs.map +1 -1
- package/ngx-utils/common-types.d.ts +7 -0
- package/ngx-utils/components/interactive-canvas/interactive-canvas.component.d.ts +3 -3
- package/ngx-utils/components/interactive-canvas/interactive-item.component.d.ts +1 -0
- package/ngx-utils/ngx-utils.imports.d.ts +1 -1
- package/ngx-utils/services/icon.service.d.ts +6 -2
- package/ngx-utils/services/local-http.service.d.ts +7 -2
- package/ngx-utils/utils/file.utils.d.ts +0 -1
- package/ngx-utils/utils/string.utils.d.ts +1 -0
- package/package.json +1 -1
- package/public_api.d.ts +2 -2
|
@@ -1559,11 +1559,6 @@ class FileUtils {
|
|
|
1559
1559
|
// @dynamic
|
|
1560
1560
|
reader => reader.readAsText(file));
|
|
1561
1561
|
}
|
|
1562
|
-
static readFileAsBinaryString(file) {
|
|
1563
|
-
return FileUtils.readFile(
|
|
1564
|
-
// @dynamic
|
|
1565
|
-
reader => reader.readAsBinaryString(file));
|
|
1566
|
-
}
|
|
1567
1562
|
static readFileAsDataURL(file) {
|
|
1568
1563
|
return FileUtils.readFile(
|
|
1569
1564
|
// @dynamic
|
|
@@ -2667,6 +2662,16 @@ function impatientPromise(factory) {
|
|
|
2667
2662
|
};
|
|
2668
2663
|
}
|
|
2669
2664
|
|
|
2665
|
+
function svgToDataUri(svgString) {
|
|
2666
|
+
// Encode as UTF-8, then to Base64
|
|
2667
|
+
const utf8Bytes = new TextEncoder().encode(svgString);
|
|
2668
|
+
let binary = "";
|
|
2669
|
+
for (let i = 0; i < utf8Bytes.length; i++) {
|
|
2670
|
+
binary += String.fromCharCode(utf8Bytes[i]);
|
|
2671
|
+
}
|
|
2672
|
+
const base64 = btoa(binary);
|
|
2673
|
+
return `data:image/svg+xml;base64,${base64}`;
|
|
2674
|
+
}
|
|
2670
2675
|
class StringUtils {
|
|
2671
2676
|
static concat(separator, ...strings) {
|
|
2672
2677
|
return strings.filter(
|
|
@@ -3862,6 +3867,101 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
|
|
|
3862
3867
|
type: Injectable
|
|
3863
3868
|
}], ctorParameters: () => [] });
|
|
3864
3869
|
|
|
3870
|
+
class LocalHttpService extends BaseHttpService {
|
|
3871
|
+
get name() {
|
|
3872
|
+
return "local-http";
|
|
3873
|
+
}
|
|
3874
|
+
get config() {
|
|
3875
|
+
return this.configs.config;
|
|
3876
|
+
}
|
|
3877
|
+
get withCredentials() {
|
|
3878
|
+
return false;
|
|
3879
|
+
}
|
|
3880
|
+
initService() {
|
|
3881
|
+
super.initService();
|
|
3882
|
+
this.svgs = {};
|
|
3883
|
+
this.images = {};
|
|
3884
|
+
}
|
|
3885
|
+
url(url) {
|
|
3886
|
+
if (!url)
|
|
3887
|
+
return url;
|
|
3888
|
+
const config = this.config;
|
|
3889
|
+
const baseUrl = config.cdnUrl || config.baseUrl || "";
|
|
3890
|
+
return url.startsWith("data:") || url.startsWith("http") || url.startsWith("//")
|
|
3891
|
+
? url
|
|
3892
|
+
: `${baseUrl}${url}`;
|
|
3893
|
+
}
|
|
3894
|
+
get(url, options, body) {
|
|
3895
|
+
options = this.makeOptions(options, "GET", body, this.caches.permanent);
|
|
3896
|
+
return this.toPromise(url, options);
|
|
3897
|
+
}
|
|
3898
|
+
getImage(url) {
|
|
3899
|
+
if (this.universal.isServer)
|
|
3900
|
+
return Promise.resolve(null);
|
|
3901
|
+
if (!url)
|
|
3902
|
+
return Promise.resolve(new Image());
|
|
3903
|
+
this.images[url] = this.images[url] || new Promise((resolve, reject) => {
|
|
3904
|
+
const image = new Image();
|
|
3905
|
+
image.crossOrigin = "Anonymous";
|
|
3906
|
+
image.src = this.url(url);
|
|
3907
|
+
image.onload = () => resolve(image);
|
|
3908
|
+
image.onerror = error => {
|
|
3909
|
+
console.warn(error);
|
|
3910
|
+
reject(`Can't load image from url: ${url}`);
|
|
3911
|
+
};
|
|
3912
|
+
});
|
|
3913
|
+
return this.images[url];
|
|
3914
|
+
}
|
|
3915
|
+
svgUrlFromSource(sourceStr, modifier) {
|
|
3916
|
+
if (!sourceStr.startsWith("<svg")) {
|
|
3917
|
+
throw new Error(`Src is possibly not an svg.. '${sourceStr.substring(0, 10)}'`);
|
|
3918
|
+
}
|
|
3919
|
+
if (!this.svgs[sourceStr]) {
|
|
3920
|
+
const parser = document.createElement("div");
|
|
3921
|
+
parser.innerHTML = sourceStr;
|
|
3922
|
+
const source = parser.querySelector("svg");
|
|
3923
|
+
const width = parseFloat(source.getAttribute("width"));
|
|
3924
|
+
const height = parseFloat(source.getAttribute("height"));
|
|
3925
|
+
const vb = source.getAttribute("viewBox").split(" ").map(parseFloat);
|
|
3926
|
+
this.svgs[sourceStr] = {
|
|
3927
|
+
source,
|
|
3928
|
+
width: width || vb[2],
|
|
3929
|
+
height: height || vb[3],
|
|
3930
|
+
};
|
|
3931
|
+
}
|
|
3932
|
+
const def = this.svgs[sourceStr];
|
|
3933
|
+
const sourceClone = def.source.cloneNode(true);
|
|
3934
|
+
const svgModified = ObjectUtils.isFunction(modifier) ? modifier(sourceClone, def.width, def.height) : def.source.outerHTML;
|
|
3935
|
+
return svgToDataUri(svgModified);
|
|
3936
|
+
}
|
|
3937
|
+
svgFromSource(sourceStr, modifier) {
|
|
3938
|
+
return this.getImage(this.svgUrlFromSource(sourceStr, modifier));
|
|
3939
|
+
}
|
|
3940
|
+
async getSvgUrl(url, modifier) {
|
|
3941
|
+
try {
|
|
3942
|
+
const svgSrc = await this.get(url, { responseType: "text" });
|
|
3943
|
+
return this.svgUrlFromSource(svgSrc, modifier);
|
|
3944
|
+
}
|
|
3945
|
+
catch (e) {
|
|
3946
|
+
throw new Error(`Can't get svg from url: ${url}, Error: ${e?.message}`);
|
|
3947
|
+
}
|
|
3948
|
+
}
|
|
3949
|
+
async getSvgImage(url, modifier) {
|
|
3950
|
+
try {
|
|
3951
|
+
const svgSrc = await this.get(url, { responseType: "text" });
|
|
3952
|
+
return await this.svgFromSource(svgSrc, modifier);
|
|
3953
|
+
}
|
|
3954
|
+
catch (e) {
|
|
3955
|
+
throw new Error(`Can't get svg from url: ${url}, Error: ${e?.message}`);
|
|
3956
|
+
}
|
|
3957
|
+
}
|
|
3958
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: LocalHttpService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
3959
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: LocalHttpService }); }
|
|
3960
|
+
}
|
|
3961
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: LocalHttpService, decorators: [{
|
|
3962
|
+
type: Injectable
|
|
3963
|
+
}] });
|
|
3964
|
+
|
|
3865
3965
|
class IconService {
|
|
3866
3966
|
get isDisabled() {
|
|
3867
3967
|
return this.disabled;
|
|
@@ -3870,7 +3970,8 @@ class IconService {
|
|
|
3870
3970
|
this.disabled = value;
|
|
3871
3971
|
this.iconsLoaded.emit();
|
|
3872
3972
|
}
|
|
3873
|
-
constructor() {
|
|
3973
|
+
constructor(http) {
|
|
3974
|
+
this.http = http;
|
|
3874
3975
|
this.iconsLoaded = new EventEmitter();
|
|
3875
3976
|
this.disabled = false;
|
|
3876
3977
|
}
|
|
@@ -3879,12 +3980,20 @@ class IconService {
|
|
|
3879
3980
|
activeIcon = typeof icons == "undefined" ? activeIcon : (icons[activeIcon] || icon);
|
|
3880
3981
|
return Promise.resolve(active ? activeIcon : icon);
|
|
3881
3982
|
}
|
|
3882
|
-
|
|
3983
|
+
async getIconUrl(icon, modifier) {
|
|
3984
|
+
const src = await this.getIcon(icon, icon, false);
|
|
3985
|
+
return this.http.svgUrlFromSource(src, modifier);
|
|
3986
|
+
}
|
|
3987
|
+
async getIconImage(icon, modifier) {
|
|
3988
|
+
const src = await this.getIcon(icon, icon, false);
|
|
3989
|
+
return this.http.svgFromSource(src, modifier);
|
|
3990
|
+
}
|
|
3991
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: IconService, deps: [{ token: LocalHttpService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
3883
3992
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: IconService }); }
|
|
3884
3993
|
}
|
|
3885
3994
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: IconService, decorators: [{
|
|
3886
3995
|
type: Injectable
|
|
3887
|
-
}], ctorParameters: () => [] });
|
|
3996
|
+
}], ctorParameters: () => [{ type: LocalHttpService }] });
|
|
3888
3997
|
|
|
3889
3998
|
class StaticLanguageService {
|
|
3890
3999
|
get defaultLanguage() {
|
|
@@ -4169,54 +4278,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
|
|
|
4169
4278
|
type: Injectable
|
|
4170
4279
|
}] });
|
|
4171
4280
|
|
|
4172
|
-
class LocalHttpService extends BaseHttpService {
|
|
4173
|
-
get name() {
|
|
4174
|
-
return "local-http";
|
|
4175
|
-
}
|
|
4176
|
-
get config() {
|
|
4177
|
-
return this.configs.config;
|
|
4178
|
-
}
|
|
4179
|
-
get withCredentials() {
|
|
4180
|
-
return false;
|
|
4181
|
-
}
|
|
4182
|
-
initService() {
|
|
4183
|
-
super.initService();
|
|
4184
|
-
this.images = {};
|
|
4185
|
-
}
|
|
4186
|
-
url(url) {
|
|
4187
|
-
if (!url)
|
|
4188
|
-
return url;
|
|
4189
|
-
const config = this.config;
|
|
4190
|
-
const baseUrl = config.cdnUrl || config.baseUrl || "";
|
|
4191
|
-
return url.startsWith("data:") || url.startsWith("http") || url.startsWith("//")
|
|
4192
|
-
? url
|
|
4193
|
-
: `${baseUrl}${url}`;
|
|
4194
|
-
}
|
|
4195
|
-
get(url, options, body) {
|
|
4196
|
-
options = this.makeOptions(options, "GET", body, this.caches.permanent);
|
|
4197
|
-
return this.toPromise(url, options);
|
|
4198
|
-
}
|
|
4199
|
-
getImage(url) {
|
|
4200
|
-
if (this.universal.isServer)
|
|
4201
|
-
return Promise.resolve(null);
|
|
4202
|
-
if (!url)
|
|
4203
|
-
return Promise.resolve(new Image());
|
|
4204
|
-
this.images[url] = this.images[url] || new Promise((resolve, reject) => {
|
|
4205
|
-
const image = new Image();
|
|
4206
|
-
image.crossOrigin = "Anonymous";
|
|
4207
|
-
image.src = this.url(url);
|
|
4208
|
-
image.onload = () => resolve(image);
|
|
4209
|
-
image.onerror = reject;
|
|
4210
|
-
});
|
|
4211
|
-
return this.images[url];
|
|
4212
|
-
}
|
|
4213
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: LocalHttpService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4214
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: LocalHttpService }); }
|
|
4215
|
-
}
|
|
4216
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: LocalHttpService, decorators: [{
|
|
4217
|
-
type: Injectable
|
|
4218
|
-
}] });
|
|
4219
|
-
|
|
4220
4281
|
class OpenApiService {
|
|
4221
4282
|
constructor(api, staticSchemas) {
|
|
4222
4283
|
this.api = api;
|
|
@@ -7864,8 +7925,7 @@ class InteractiveItemComponent {
|
|
|
7864
7925
|
const target = this.restrictPosition(this.direction === "vertical" ? this.pos.x : x, this.direction === "horizontal" ? this.pos.y : y);
|
|
7865
7926
|
this.pos = new Point(target);
|
|
7866
7927
|
this.calcShapes();
|
|
7867
|
-
this.valid = this.
|
|
7868
|
-
this.canvas.items.every(other => this === other || this.isValidByDistance(other));
|
|
7928
|
+
this.valid = this.checkIsValid();
|
|
7869
7929
|
this.validPos = this.valid ? this.pos : this.validPos;
|
|
7870
7930
|
}
|
|
7871
7931
|
moveBy(dx, dy) {
|
|
@@ -7893,6 +7953,10 @@ class InteractiveItemComponent {
|
|
|
7893
7953
|
: clamp(y, this.canvas.yRange)
|
|
7894
7954
|
};
|
|
7895
7955
|
}
|
|
7956
|
+
checkIsValid() {
|
|
7957
|
+
return this.isValidByParams() &&
|
|
7958
|
+
this.canvas.items.every(other => this === other || this.isValidByDistance(other));
|
|
7959
|
+
}
|
|
7896
7960
|
isValidByParams() {
|
|
7897
7961
|
return !this.shapes.some(shape => {
|
|
7898
7962
|
return this.canvas.excludedAreas.some(ex => {
|
|
@@ -8072,17 +8136,22 @@ class InteractiveCanvasComponent {
|
|
|
8072
8136
|
this.shouldDraw = false;
|
|
8073
8137
|
}
|
|
8074
8138
|
async tempPaint(cb) {
|
|
8075
|
-
const
|
|
8139
|
+
const mainCanvas = this.canvas;
|
|
8140
|
+
const mainCtx = mainCanvas.getContext("2d");
|
|
8076
8141
|
const canvas = this.tempCanvas;
|
|
8077
|
-
canvas.width = renderCanvas.width;
|
|
8078
|
-
canvas.height = renderCanvas.height;
|
|
8079
8142
|
const ctx = canvas.getContext("2d");
|
|
8143
|
+
const transform = mainCtx.getTransform();
|
|
8144
|
+
canvas.width = mainCanvas.width;
|
|
8145
|
+
canvas.height = mainCanvas.height;
|
|
8080
8146
|
ctx.globalCompositeOperation = "source-over";
|
|
8081
8147
|
ctx.clearRect(0, 0, canvas.width, canvas.height);
|
|
8082
|
-
|
|
8083
|
-
|
|
8084
|
-
|
|
8085
|
-
|
|
8148
|
+
ctx.setTransform(transform);
|
|
8149
|
+
mainCtx.resetTransform();
|
|
8150
|
+
mainCtx.globalCompositeOperation = await cb(ctx) || "source-over";
|
|
8151
|
+
mainCtx.drawImage(canvas, 0, 0);
|
|
8152
|
+
mainCtx.globalCompositeOperation = "source-over";
|
|
8153
|
+
mainCtx.setTransform(transform);
|
|
8154
|
+
ctx.resetTransform();
|
|
8086
8155
|
}
|
|
8087
8156
|
resize() {
|
|
8088
8157
|
const realWidth = this.width();
|
|
@@ -8115,17 +8184,17 @@ class InteractiveCanvasComponent {
|
|
|
8115
8184
|
onTouchStart($event) {
|
|
8116
8185
|
this.hoveredIndex = this.getIndexUnderPointer($event.touches.item(0));
|
|
8117
8186
|
this.lockedIndex = this.hoveredIndex;
|
|
8118
|
-
this.
|
|
8187
|
+
this.selectItem();
|
|
8119
8188
|
}
|
|
8120
|
-
onTouchEnd(
|
|
8121
|
-
this.
|
|
8189
|
+
onTouchEnd() {
|
|
8190
|
+
this.touched = false;
|
|
8122
8191
|
}
|
|
8123
8192
|
onMouseDown($event) {
|
|
8124
8193
|
this.lockedIndex = this.getIndexUnderPointer($event);
|
|
8125
|
-
this.
|
|
8194
|
+
this.selectItem();
|
|
8126
8195
|
}
|
|
8127
|
-
onMouseUp(
|
|
8128
|
-
this.
|
|
8196
|
+
onMouseUp() {
|
|
8197
|
+
this.touched = false;
|
|
8129
8198
|
}
|
|
8130
8199
|
onMouseMove($event) {
|
|
8131
8200
|
if (this.touched)
|
|
@@ -8212,14 +8281,12 @@ class InteractiveCanvasComponent {
|
|
|
8212
8281
|
});
|
|
8213
8282
|
this.onRotate.emit(this.rotation);
|
|
8214
8283
|
}
|
|
8215
|
-
selectItem(
|
|
8216
|
-
|
|
8217
|
-
const item = this.items[
|
|
8218
|
-
|
|
8219
|
-
|
|
8220
|
-
|
|
8221
|
-
}
|
|
8222
|
-
this.hoveredIndex = selected;
|
|
8284
|
+
selectItem() {
|
|
8285
|
+
this.touched = true;
|
|
8286
|
+
const item = this.items[this.lockedIndex];
|
|
8287
|
+
if (!item)
|
|
8288
|
+
return;
|
|
8289
|
+
this.selectedItem = item;
|
|
8223
8290
|
}
|
|
8224
8291
|
toCanvasPoint(pointer) {
|
|
8225
8292
|
if (!pointer || !this.canvas)
|
|
@@ -8328,7 +8395,7 @@ class InteractiveCanvasComponent {
|
|
|
8328
8395
|
ctx.restore();
|
|
8329
8396
|
}
|
|
8330
8397
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: InteractiveCanvasComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8331
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.2.14", type: InteractiveCanvasComponent, isStandalone: false, selector: "interactive-canvas", inputs: { infinite: { classPropertyName: "infinite", publicName: "infinite", isSignal: true, isRequired: false, transformFunction: null }, resizeMode: { classPropertyName: "resizeMode", publicName: "resizeMode", isSignal: true, isRequired: false, transformFunction: null }, horizontal: { classPropertyName: "horizontal", publicName: "horizontal", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null }, params: { classPropertyName: "params", publicName: "params", isSignal: true, isRequired: false, transformFunction: null }, selectedIndex: { classPropertyName: "selectedIndex", publicName: "selectedIndex", isSignal: true, isRequired: false, transformFunction: null }, panOffset: { classPropertyName: "panOffset", publicName: "panOffset", isSignal: true, isRequired: false, transformFunction: null }, renderCtx: { classPropertyName: "renderCtx", publicName: "renderCtx", isSignal: true, isRequired: false, transformFunction: null }, beforeItems: { classPropertyName: "beforeItems", publicName: "beforeItems", isSignal: true, isRequired: false, transformFunction: null }, afterItems: { classPropertyName: "afterItems", publicName: "afterItems", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedIndex: "selectedIndexChange", onRotate: "onRotate", onItemPan: "onItemPan", onItemPanned: "onItemPanned", onPan: "onPan", onPanned: "onPanned" }, host: { listeners: { "window:touchend": "onTouchEnd(
|
|
8398
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.2.14", type: InteractiveCanvasComponent, isStandalone: false, selector: "interactive-canvas", inputs: { infinite: { classPropertyName: "infinite", publicName: "infinite", isSignal: true, isRequired: false, transformFunction: null }, resizeMode: { classPropertyName: "resizeMode", publicName: "resizeMode", isSignal: true, isRequired: false, transformFunction: null }, horizontal: { classPropertyName: "horizontal", publicName: "horizontal", isSignal: true, isRequired: false, transformFunction: null }, width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null }, params: { classPropertyName: "params", publicName: "params", isSignal: true, isRequired: false, transformFunction: null }, selectedIndex: { classPropertyName: "selectedIndex", publicName: "selectedIndex", isSignal: true, isRequired: false, transformFunction: null }, panOffset: { classPropertyName: "panOffset", publicName: "panOffset", isSignal: true, isRequired: false, transformFunction: null }, renderCtx: { classPropertyName: "renderCtx", publicName: "renderCtx", isSignal: true, isRequired: false, transformFunction: null }, beforeItems: { classPropertyName: "beforeItems", publicName: "beforeItems", isSignal: true, isRequired: false, transformFunction: null }, afterItems: { classPropertyName: "afterItems", publicName: "afterItems", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedIndex: "selectedIndexChange", onRotate: "onRotate", onItemPan: "onItemPan", onItemPanned: "onItemPanned", onPan: "onPan", onPanned: "onPanned" }, host: { listeners: { "window:touchend": "onTouchEnd()", "window:mouseup": "onMouseUp()" } }, queries: [{ propertyName: "itemList", predicate: InteractiveItemComponent, isSignal: true }], viewQueries: [{ propertyName: "containerElem", first: true, predicate: ["containerElem"], descendants: true, static: true }, { propertyName: "canvasElem", first: true, predicate: ["canvasElem"], descendants: true, static: true }], ngImport: i0, template: "<div #containerElem\n [ngClass]=\"['interactive-canvas-container', horizontal() ? 'horizontal' : 'vertical']\"\n (resize)=\"resize()\"\n (touchstart)=\"onTouchStart($event)\"\n (mousedown)=\"onMouseDown($event)\"\n (mousemove)=\"onMouseMove($event)\"\n (mouseleave)=\"onMouseLeave()\"\n (panend)=\"onPanEnd()\"\n (panmove)=\"onPanMove($event)\"\n (panstart)=\"onPanStart()\">\n <canvas #canvasElem class=\"interactive-canvas-element\"></canvas>\n</div>\n", styles: [".interactive-canvas-container{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center}.interactive-canvas-container .interactive-canvas-element{position:absolute;pointer-events:none}\n"], dependencies: [{ kind: "directive", type: i1$3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
|
|
8332
8399
|
}
|
|
8333
8400
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImport: i0, type: InteractiveCanvasComponent, decorators: [{
|
|
8334
8401
|
type: Component,
|
|
@@ -8341,10 +8408,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
|
|
|
8341
8408
|
args: ["canvasElem", { static: true }]
|
|
8342
8409
|
}], onTouchEnd: [{
|
|
8343
8410
|
type: HostListener,
|
|
8344
|
-
args: ["window:touchend"
|
|
8411
|
+
args: ["window:touchend"]
|
|
8345
8412
|
}], onMouseUp: [{
|
|
8346
8413
|
type: HostListener,
|
|
8347
|
-
args: ["window:mouseup"
|
|
8414
|
+
args: ["window:mouseup"]
|
|
8348
8415
|
}] } });
|
|
8349
8416
|
|
|
8350
8417
|
class InteractiveCircleComponent extends InteractiveItemComponent {
|
|
@@ -9137,5 +9204,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.14", ngImpo
|
|
|
9137
9204
|
* Generated bundle index. Do not edit.
|
|
9138
9205
|
*/
|
|
9139
9206
|
|
|
9140
|
-
export { API_SERVICE, APP_BASE_URL, AUTH_SERVICE, AclService, AjaxRequestHandler, ApiService, ArrayUtils, AsyncMethodBase, AsyncMethodDirective, AsyncMethodTargetDirective, AuthGuard, BASE_CONFIG, BUTTON_TYPE, BackgroundDirective, BaseDialogService, BaseHttpClient, BaseHttpService, BaseToasterService, BtnComponent, BtnDefaultComponent, CONFIG_SERVICE, CacheService, CanvasColor, CanvasUtils, ChipsComponent, ChunkPipe, Circle, CloseBtnComponent, ComponentLoaderDirective, ComponentLoaderService, ConfigService, DIALOG_SERVICE, DateUtils, DragDropEventPlugin, DropListComponent, DropdownBoxComponent, DropdownContentDirective, DropdownDirective, DropdownToggleDirective, DynamicTableComponent, DynamicTableTemplateDirective, EPSILON, ERROR_HANDLER, EXPRESS_REQUEST, EntriesPipe, ErrorHandlerService, EventsService, ExtraItemPropertiesPipe, FactoryDependencies, FakeModuleComponent, FileSystemEntry, FileUtils, FilterPipe, FindPipe, ForbiddenZone, FormatNumberPipe, FormatterService, GenericValue, GetOffsetPipe, GetTypePipe, GetValuePipe, GlobalTemplateDirective, GlobalTemplatePipe, GlobalTemplateService, GroupByPipe, ICON_MAP, ICON_SERVICE, ICON_TYPE, IConfiguration, IconComponent, IconDefaultComponent, IconDirective, IconService, IncludesPipe, Initializer, InteractiveCanvasComponent, InteractiveCircleComponent, InteractiveItemComponent, InteractiveRectComponent, IsTypePipe, JSONfn, JoinPipe, KeysPipe, LANGUAGE_SERVICE, LanguageService, LoaderUtils, LocalHttpService, MapPipe, MathUtils, MaxPipe, MinPipe, NgxTemplateOutletDirective, NgxUtilsModule, OPTIONS_TOKEN, ObjectType, ObjectUtils, ObservableUtils, OpenApiService, Oval, PROMISE_SERVICE, PaginationDirective, PaginationItemContext, PaginationItemDirective, PaginationMenuComponent, Point, PopPipe, PromiseService, RESIZE_DELAY, RESIZE_STRATEGY, ROOT_ELEMENT, Rect, ReducePipe, ReflectUtils, RemapPipe, ReplacePipe, ResizeEventPlugin, ResourceIfContext, ResourceIfDirective, ReversePipe, RoundPipe, SCRIPT_PARAMS, STATIC_SCHEMAS, SafeHtmlPipe, ScrollEventPlugin, SetUtils, ShiftPipe, SocketClient, SocketService, SplitPipe, StateService, StaticAuthService, StaticLanguageService, StickyClassDirective, StickyDirective, StorageMode, StorageService, StringUtils, TOASTER_SERVICE, TabsComponent, TabsItemDirective, TabsTemplateDirective, TimerUtils, TranslatePipe, TranslatedUrlSerializer, UniqueUtils, UniversalService, UnorderedListComponent, UnorderedListItemDirective, UnorderedListTemplateDirective, UploadComponent, ValuedPromise, ValuesPipe, addPts, cachedFactory, cancelablePromise, checkTransitions, clamp, computedPrevious, createTypedProvider, cssStyles, cssVariables, distance, distanceSq, dividePts, dotProduct, drawOval, drawRect, ensurePoint, getComponentDef, getCssVariables, getRoot, gjkDistance, gjkIntersection, hashCode, impatientPromise, injectOptions, isBrowser, isPoint, lengthOfPt, lerpPts, multiplyPts, negatePt, normalizePt, normalizeRange, overflow, parseSelector, perpendicular, provideEntryComponents, provideOptions, provideWithOptions, rotateDeg, rotateRad, selectorMatchesList, subPts, switchClass, toDegrees, toRadians, tripleProduct };
|
|
9207
|
+
export { API_SERVICE, APP_BASE_URL, AUTH_SERVICE, AclService, AjaxRequestHandler, ApiService, ArrayUtils, AsyncMethodBase, AsyncMethodDirective, AsyncMethodTargetDirective, AuthGuard, BASE_CONFIG, BUTTON_TYPE, BackgroundDirective, BaseDialogService, BaseHttpClient, BaseHttpService, BaseToasterService, BtnComponent, BtnDefaultComponent, CONFIG_SERVICE, CacheService, CanvasColor, CanvasUtils, ChipsComponent, ChunkPipe, Circle, CloseBtnComponent, ComponentLoaderDirective, ComponentLoaderService, ConfigService, DIALOG_SERVICE, DateUtils, DragDropEventPlugin, DropListComponent, DropdownBoxComponent, DropdownContentDirective, DropdownDirective, DropdownToggleDirective, DynamicTableComponent, DynamicTableTemplateDirective, EPSILON, ERROR_HANDLER, EXPRESS_REQUEST, EntriesPipe, ErrorHandlerService, EventsService, ExtraItemPropertiesPipe, FactoryDependencies, FakeModuleComponent, FileSystemEntry, FileUtils, FilterPipe, FindPipe, ForbiddenZone, FormatNumberPipe, FormatterService, GenericValue, GetOffsetPipe, GetTypePipe, GetValuePipe, GlobalTemplateDirective, GlobalTemplatePipe, GlobalTemplateService, GroupByPipe, ICON_MAP, ICON_SERVICE, ICON_TYPE, IConfiguration, IconComponent, IconDefaultComponent, IconDirective, IconService, IncludesPipe, Initializer, InteractiveCanvasComponent, InteractiveCircleComponent, InteractiveItemComponent, InteractiveRectComponent, IsTypePipe, JSONfn, JoinPipe, KeysPipe, LANGUAGE_SERVICE, LanguageService, LoaderUtils, LocalHttpService, MapPipe, MathUtils, MaxPipe, MinPipe, NgxTemplateOutletDirective, NgxUtilsModule, OPTIONS_TOKEN, ObjectType, ObjectUtils, ObservableUtils, OpenApiService, Oval, PROMISE_SERVICE, PaginationDirective, PaginationItemContext, PaginationItemDirective, PaginationMenuComponent, Point, PopPipe, PromiseService, RESIZE_DELAY, RESIZE_STRATEGY, ROOT_ELEMENT, Rect, ReducePipe, ReflectUtils, RemapPipe, ReplacePipe, ResizeEventPlugin, ResourceIfContext, ResourceIfDirective, ReversePipe, RoundPipe, SCRIPT_PARAMS, STATIC_SCHEMAS, SafeHtmlPipe, ScrollEventPlugin, SetUtils, ShiftPipe, SocketClient, SocketService, SplitPipe, StateService, StaticAuthService, StaticLanguageService, StickyClassDirective, StickyDirective, StorageMode, StorageService, StringUtils, TOASTER_SERVICE, TabsComponent, TabsItemDirective, TabsTemplateDirective, TimerUtils, TranslatePipe, TranslatedUrlSerializer, UniqueUtils, UniversalService, UnorderedListComponent, UnorderedListItemDirective, UnorderedListTemplateDirective, UploadComponent, ValuedPromise, ValuesPipe, addPts, cachedFactory, cancelablePromise, checkTransitions, clamp, computedPrevious, createTypedProvider, cssStyles, cssVariables, distance, distanceSq, dividePts, dotProduct, drawOval, drawRect, ensurePoint, getComponentDef, getCssVariables, getRoot, gjkDistance, gjkIntersection, hashCode, impatientPromise, injectOptions, isBrowser, isPoint, lengthOfPt, lerpPts, multiplyPts, negatePt, normalizePt, normalizeRange, overflow, parseSelector, perpendicular, provideEntryComponents, provideOptions, provideWithOptions, rotateDeg, rotateRad, selectorMatchesList, subPts, svgToDataUri, switchClass, toDegrees, toRadians, tripleProduct };
|
|
9141
9208
|
//# sourceMappingURL=stemy-ngx-utils.mjs.map
|