@acorex/cdk 18.16.0-next.8 → 19.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.
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@acorex/cdk",
3
- "version": "18.16.0-next.8",
3
+ "version": "19.0.0",
4
4
  "peerDependencies": {
5
- "@angular/common": ">=18.2.0",
6
- "@angular/core": ">=18.2.0",
5
+ "@angular/common": ">=19.0.0",
6
+ "@angular/core": ">=19.0.0",
7
7
  "quill": ">=2.0.2",
8
8
  "quill-delta-to-html": ">=0.12.1",
9
9
  "qrcode": ">=1.5.4",
@@ -20,26 +20,14 @@
20
20
  },
21
21
  ".": {
22
22
  "types": "./index.d.ts",
23
- "esm2022": "./esm2022/acorex-cdk.mjs",
24
- "esm": "./esm2022/acorex-cdk.mjs",
25
23
  "default": "./fesm2022/acorex-cdk.mjs"
26
24
  },
27
- "./map": {
28
- "types": "./map/index.d.ts",
29
- "esm2022": "./esm2022/map/acorex-cdk-map.mjs",
30
- "esm": "./esm2022/map/acorex-cdk-map.mjs",
31
- "default": "./fesm2022/acorex-cdk-map.mjs"
32
- },
33
25
  "./qrcode": {
34
26
  "types": "./qrcode/index.d.ts",
35
- "esm2022": "./esm2022/qrcode/acorex-cdk-qrcode.mjs",
36
- "esm": "./esm2022/qrcode/acorex-cdk-qrcode.mjs",
37
27
  "default": "./fesm2022/acorex-cdk-qrcode.mjs"
38
28
  },
39
29
  "./wysiwyg": {
40
30
  "types": "./wysiwyg/index.d.ts",
41
- "esm2022": "./esm2022/wysiwyg/acorex-cdk-wysiwyg.mjs",
42
- "esm": "./esm2022/wysiwyg/acorex-cdk-wysiwyg.mjs",
43
31
  "default": "./fesm2022/acorex-cdk-wysiwyg.mjs"
44
32
  }
45
33
  },
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './index';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNkay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9hY29yZXgtY2RrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
package/esm2022/index.mjs DELETED
@@ -1,2 +0,0 @@
1
- export const ACOREX_CDK = 'ACorex CDK';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLFlBQVksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBBQ09SRVhfQ0RLID0gJ0FDb3JleCBDREsnO1xuIl19
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './index';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNkay1tYXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9tYXAvc3JjL2Fjb3JleC1jZGstbWFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
@@ -1,2 +0,0 @@
1
- export * from './map.class';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9tYXAvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9tYXAuY2xhc3MnO1xuIl19
@@ -1,218 +0,0 @@
1
- import { EventEmitter, Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class AXLeafletService {
4
- constructor() {
5
- this.onMarkerChanged = new EventEmitter();
6
- this.onMarkerAdded = new EventEmitter();
7
- this.onLocationFound = new EventEmitter();
8
- }
9
- async loadLeaflet() {
10
- try {
11
- this.L = await import('leaflet');
12
- await import('leaflet-draw');
13
- await import('leaflet.locatecontrol');
14
- this.L.Icon.Default.imagePath = 'https://unpkg.com/leaflet@1.7.1/dist/images/';
15
- }
16
- catch (error) {
17
- console.warn(error);
18
- }
19
- }
20
- async initMap(mapElement, location, zoom = 13) {
21
- await this.loadLeaflet();
22
- const map = this.L.map(mapElement).setView([location.latitude, location.longitude], zoom);
23
- this.L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
24
- maxZoom: 18,
25
- attribution: '© ACoreX',
26
- }).addTo(map);
27
- this.drawnItems = new this.L.FeatureGroup();
28
- this.drawnItems.addTo(map);
29
- this.map = map;
30
- // let holdTimer;
31
- // const holdDuration = 1000;
32
- // map.on('mousedown', (e) => {
33
- // holdTimer = setTimeout(() => {
34
- // this.L.marker(e.latlng).addTo(map);
35
- // }, holdDuration);
36
- // });
37
- // map.on('mouseup', function () {
38
- // clearTimeout(holdTimer);
39
- // });
40
- // map.on('mouseleave', function () {
41
- // clearTimeout(holdTimer);
42
- // });
43
- }
44
- getMap() {
45
- return this.map;
46
- }
47
- setZoomLevel(zoom) {
48
- this.map?.setZoom(zoom);
49
- }
50
- setCenter(location) {
51
- if (this.map && location) {
52
- this.map.setView([location.latitude, location.longitude], this.map.getZoom());
53
- }
54
- }
55
- flyTo(location, zoom, setMarker = false, duration = 1.0) {
56
- if (this.map && location) {
57
- this.map.flyTo([location.latitude, location.longitude], zoom || this.map.getZoom(), {
58
- animate: true,
59
- duration: duration,
60
- });
61
- this.map.once('moveend', () => {
62
- if (setMarker) {
63
- this.addMarker(location);
64
- }
65
- });
66
- }
67
- }
68
- addMarker(locations) {
69
- const locationsArray = Array.isArray(locations) ? locations : [locations];
70
- locationsArray.forEach((location) => {
71
- this.L.marker([location.latitude, location.longitude]).addTo(this.drawnItems);
72
- this.onMarkerAdded.emit(location);
73
- });
74
- }
75
- getMarkers() {
76
- return this.drawnItems
77
- .getLayers()
78
- .filter((layer) => layer instanceof this.L.Marker)
79
- .map((marker) => {
80
- const latLng = marker.getLatLng();
81
- return {
82
- latitude: latLng.lat,
83
- longitude: latLng.lng,
84
- };
85
- });
86
- }
87
- addDrawControl(position = 'topleft', maxMarkers = 1) {
88
- if (this.drawControl) {
89
- this.map.removeControl(this.drawControl);
90
- this.drawnItems.clearLayers();
91
- this.drawControl = undefined;
92
- }
93
- if (this.map) {
94
- const createDrawControl = () => {
95
- return new this.L.Control.Draw({
96
- position: position,
97
- edit: {
98
- featureGroup: this.drawnItems,
99
- },
100
- draw: {
101
- marker: this.drawnItems.getLayers().length < maxMarkers,
102
- polygon: false,
103
- polyline: false,
104
- rectangle: false,
105
- circle: false,
106
- circlemarker: false,
107
- },
108
- });
109
- };
110
- this.drawControl = createDrawControl();
111
- this.map.addControl(this.drawControl);
112
- const onCreated = (event) => {
113
- const layer = event.layer;
114
- this.drawnItems.addLayer(layer);
115
- const latLng = layer.getLatLng();
116
- this.onMarkerAdded.emit({ latitude: latLng.lat, longitude: latLng.lng });
117
- this.onMarkerChanged.emit(this.getMarkers());
118
- if (this.drawnItems.getLayers().length >= maxMarkers) {
119
- this.map.removeControl(this.drawControl);
120
- this.drawControl = new this.L.Control.Draw({
121
- position: position,
122
- edit: {
123
- featureGroup: this.drawnItems,
124
- },
125
- draw: {
126
- marker: false,
127
- polygon: false,
128
- polyline: false,
129
- rectangle: false,
130
- circle: false,
131
- circlemarker: false,
132
- },
133
- });
134
- this.map.addControl(this.drawControl);
135
- }
136
- };
137
- const onDeleted = () => {
138
- this.onMarkerChanged.emit(this.getMarkers());
139
- if (this.drawnItems.getLayers().length < maxMarkers) {
140
- this.map.removeControl(this.drawControl);
141
- this.drawControl = createDrawControl();
142
- this.map.addControl(this.drawControl);
143
- }
144
- };
145
- const onEdited = () => this.onMarkerChanged.emit(this.getMarkers());
146
- this.map.off('draw:created');
147
- this.map.off('draw:deleted');
148
- this.map.off('draw:edited');
149
- this.map.on('draw:created', onCreated);
150
- this.map.on('draw:deleted', onDeleted);
151
- this.map.on('draw:edited', onEdited);
152
- }
153
- }
154
- addLocateControl(position = 'bottomright') {
155
- if (this.locateControl) {
156
- this.map.removeControl(this.locateControl);
157
- this.locateControl = undefined;
158
- }
159
- if (this.map) {
160
- const locateControl = this.L.control
161
- .locate({
162
- position: position,
163
- flyTo: true,
164
- setView: 'untilPanOrZoom',
165
- showPopup: true,
166
- onLocationError: (e) => alert(e.message),
167
- onLocationOutsideMapBounds: (control) => control.stop(),
168
- locateOptions: {
169
- enableHighAccuracy: true,
170
- },
171
- strings: {
172
- title: 'Show my location',
173
- popup: 'You are within {distance} meters from this point',
174
- outsideMapBoundsMsg: 'You seem to be outside the map bounds',
175
- },
176
- })
177
- .addTo(this.map);
178
- this.locateControl = locateControl;
179
- const onLocationFound = (event) => {
180
- const location = {
181
- latitude: event.latitude,
182
- longitude: event.longitude,
183
- precision: event.accuracy,
184
- };
185
- this.onLocationFound.emit(location);
186
- };
187
- this.map.on('locationfound', onLocationFound);
188
- }
189
- }
190
- removeDrawControl() {
191
- if (this.drawControl) {
192
- this.map.removeControl(this.drawControl);
193
- this.drawControl = undefined;
194
- }
195
- // if (this.drawnItems) {
196
- // this.drawnItems.clearLayers();
197
- // }
198
- }
199
- removeLocateControl() {
200
- if (this.map && this.locateControl) {
201
- this.map.removeControl(this.locateControl);
202
- this.locateControl = undefined;
203
- }
204
- }
205
- destroyMap() {
206
- if (this.map) {
207
- this.map.off();
208
- this.map.remove();
209
- this.map = undefined;
210
- }
211
- }
212
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXLeafletService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
213
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXLeafletService }); }
214
- }
215
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXLeafletService, decorators: [{
216
- type: Injectable
217
- }] });
218
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvbWFwL3NyYy9tYXAuY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBVXpELE1BQU0sT0FBTyxnQkFBZ0I7SUFEN0I7UUFRRSxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFtQixDQUFDO1FBQ3RELGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQWlCLENBQUM7UUFDbEQsb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBaUIsQ0FBQztLQW9PckQ7SUFsT0MsS0FBSyxDQUFDLFdBQVc7UUFDZixJQUFJLENBQUM7WUFDSCxJQUFJLENBQUMsQ0FBQyxHQUFHLE1BQU0sTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ2pDLE1BQU0sTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQzdCLE1BQU0sTUFBTSxDQUFDLHVCQUF1QixDQUFDLENBQUM7WUFDdEMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsR0FBRyw4Q0FBOEMsQ0FBQztRQUNqRixDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdEIsQ0FBQztJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQXVCLEVBQUUsUUFBdUIsRUFBRSxJQUFJLEdBQUcsRUFBRTtRQUN2RSxNQUFNLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN6QixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxTQUFTLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FB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QUFRLENBQUMsQ0FBQztZQUN0QyxDQUFDLENBQUM7WUFFRixJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxlQUFlLEVBQUUsZUFBZSxDQUFDLENBQUM7UUFDaEQsQ0FBQztJQUNILENBQUM7SUFFRCxpQkFBaUI7UUFDZixJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNyQixJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDekMsSUFBSSxDQUFDLFdBQVcsR0FBRyxTQUFTLENBQUM7UUFDL0IsQ0FBQztRQUNELHlCQUF5QjtRQUN6QixtQ0FBbUM7UUFDbkMsSUFBSTtJQUNOLENBQUM7SUFFRCxtQkFBbUI7UUFDakIsSUFBSSxJQUFJLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUNuQyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDM0MsSUFBSSxDQUFDLGFBQWEsR0FBRyxTQUFTLENBQUM7UUFDakMsQ0FBQztJQUNILENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDYixJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ2YsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNsQixJQUFJLENBQUMsR0FBRyxHQUFHLFNBQVMsQ0FBQztRQUN2QixDQUFDO0lBQ0gsQ0FBQzs4R0E1T1UsZ0JBQWdCO2tIQUFoQixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBRDVCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFdmVudEVtaXR0ZXIsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGludGVyZmFjZSBBWE1hcExvY2F0aW9uIHtcbiAgbGF0aXR1ZGU6IG51bWJlcjtcbiAgbG9uZ2l0dWRlOiBudW1iZXI7XG4gIHByZWNpc2lvbj86IG51bWJlcjtcbiAgdGl0bGU/OiBzdHJpbmc7XG59XG5leHBvcnQgdHlwZSBBWE1hcENvbnRyb2xQbGFjZSA9ICd0b3BsZWZ0JyB8ICd0b3ByaWdodCcgfCAnYm90dG9tbGVmdCcgfCAnYm90dG9tcmlnaHQnO1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYTGVhZmxldFNlcnZpY2Uge1xuICBMOiBhbnk7XG4gIHByaXZhdGUgbWFwPzogTC5NYXA7XG4gIHByaXZhdGUgZHJhd0NvbnRyb2w/OiBMLkNvbnRyb2wuRHJhdztcbiAgcHJpdmF0ZSBsb2NhdGVDb250cm9sPzogTC5Db250cm9sLkxvY2F0ZTtcbiAgcHJpdmF0ZSBkcmF3bkl0ZW1zOiBMLkZlYXR1cmVHcm91cDtcblxuICBvbk1hcmtlckNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEFYTWFwTG9jYXRpb25bXT4oKTtcbiAgb25NYXJrZXJBZGRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8QVhNYXBMb2NhdGlvbj4oKTtcbiAgb25Mb2NhdGlvbkZvdW5kID0gbmV3IEV2ZW50RW1pdHRlcjxBWE1hcExvY2F0aW9uPigpO1xuXG4gIGFzeW5jIGxvYWRMZWFmbGV0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICB0aGlzLkwgPSBhd2FpdCBpbXBvcnQoJ2xlYWZsZXQnKTtcbiAgICAgIGF3YWl0IGltcG9ydCgnbGVhZmxldC1kcmF3Jyk7XG4gICAgICBhd2FpdCBpbXBvcnQoJ2xlYWZsZXQubG9jYXRlY29udHJvbCcpO1xuICAgICAgdGhpcy5MLkljb24uRGVmYXVsdC5pbWFnZVBhdGggPSAnaHR0cHM6Ly91bnBrZy5jb20vbGVhZmxldEAxLjcuMS9kaXN0L2ltYWdlcy8nO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLndhcm4oZXJyb3IpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGluaXRNYXAobWFwRWxlbWVudDogSFRNTEVsZW1lbnQsIGxvY2F0aW9uOiBBWE1hcExvY2F0aW9uLCB6b29tID0gMTMpIHtcbiAgICBhd2FpdCB0aGlzLmxvYWRMZWFmbGV0KCk7XG4gICAgY29uc3QgbWFwID0gdGhpcy5MLm1hcChtYXBFbGVtZW50KS5zZXRWaWV3KFtsb2NhdGlvbi5sYXRpdHVkZSwgbG9jYXRpb24ubG9uZ2l0dWRlXSwgem9vbSk7XG4gICAgdGhpcy5MLnRpbGVMYXllcignaHR0cHM6Ly97c30udGlsZS5vcGVuc3RyZWV0bWFwLm9yZy97en0ve3h9L3t5fS5wbmcnLCB7XG4gICAgICBtYXhab29tOiAxOCxcbiAgICAgIGF0dHJpYnV0aW9uOiAnwqkgQUNvcmVYJyxcbiAgICB9KS5hZGRUbyhtYXApO1xuICAgIHRoaXMuZHJhd25JdGVtcyA9IG5ldyB0aGlzLkwuRmVhdHVyZUdyb3VwKCk7XG4gICAgdGhpcy5kcmF3bkl0ZW1zLmFkZFRvKG1hcCk7XG4gICAgdGhpcy5tYXAgPSBtYXA7XG5cbiAgICAvLyBsZXQgaG9sZFRpbWVyO1xuICAgIC8vIGNvbnN0IGhvbGREdXJhdGlvbiA9IDEwMDA7XG4gICAgLy8gbWFwLm9uKCdtb3VzZWRvd24nLCAoZSkgPT4ge1xuICAgIC8vICAgaG9sZFRpbWVyID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgLy8gICAgIHRoaXMuTC5tYXJrZXIoZS5sYXRsbmcpLmFkZFRvKG1hcCk7XG4gICAgLy8gICB9LCBob2xkRHVyYXRpb24pO1xuICAgIC8vIH0pO1xuICAgIC8vIG1hcC5vbignbW91c2V1cCcsIGZ1bmN0aW9uICgpIHtcbiAgICAvLyAgIGNsZWFyVGltZW91dChob2xkVGltZXIpO1xuICAgIC8vIH0pO1xuICAgIC8vIG1hcC5vbignbW91c2VsZWF2ZScsIGZ1bmN0aW9uICgpIHtcbiAgICAvLyAgIGNsZWFyVGltZW91dChob2xkVGltZXIpO1xuICAgIC8vIH0pO1xuICB9XG5cbiAgZ2V0TWFwKCk6IEwuTWFwIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5tYXA7XG4gIH1cblxuICBzZXRab29tTGV2ZWwoem9vbTogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5tYXA/LnNldFpvb20oem9vbSk7XG4gIH1cblxuICBzZXRDZW50ZXIobG9jYXRpb246IEFYTWFwTG9jYXRpb24pOiB2b2lkIHtcbiAgICBpZiAodGhpcy5tYXAgJiYgbG9jYXRpb24pIHtcbiAgICAgIHRoaXMubWFwLnNldFZpZXcoW2xvY2F0aW9uLmxhdGl0dWRlLCBsb2NhdGlvbi5sb25naXR1ZGVdLCB0aGlzLm1hcC5nZXRab29tKCkpO1xuICAgIH1cbiAgfVxuXG4gIGZseVRvKGxvY2F0aW9uOiBBWE1hcExvY2F0aW9uLCB6b29tPzogbnVtYmVyLCBzZXRNYXJrZXIgPSBmYWxzZSwgZHVyYXRpb24gPSAxLjApOiB2b2lkIHtcbiAgICBpZiAodGhpcy5tYXAgJiYgbG9jYXRpb24pIHtcbiAgICAgIHRoaXMubWFwLmZseVRvKFtsb2NhdGlvbi5sYXRpdHVkZSwgbG9jYXRpb24ubG9uZ2l0dWRlXSwgem9vbSB8fCB0aGlzLm1hcC5nZXRab29tKCksIHtcbiAgICAgICAgYW5pbWF0ZTogdHJ1ZSxcbiAgICAgICAgZHVyYXRpb246IGR1cmF0aW9uLFxuICAgICAgfSk7XG4gICAgICB0aGlzLm1hcC5vbmNlKCdtb3ZlZW5kJywgKCkgPT4ge1xuICAgICAgICBpZiAoc2V0TWFya2VyKSB7XG4gICAgICAgICAgdGhpcy5hZGRNYXJrZXIobG9jYXRpb24pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBhZGRNYXJrZXIobG9jYXRpb25zOiBBWE1hcExvY2F0aW9uIHwgQVhNYXBMb2NhdGlvbltdKTogdm9pZCB7XG4gICAgY29uc3QgbG9jYXRpb25zQXJyYXkgPSBBcnJheS5pc0FycmF5KGxvY2F0aW9ucykgPyBsb2NhdGlvbnMgOiBbbG9jYXRpb25zXTtcbiAgICBsb2NhdGlvbnNBcnJheS5mb3JFYWNoKChsb2NhdGlvbikgPT4ge1xuICAgICAgdGhpcy5MLm1hcmtlcihbbG9jYXRpb24ubGF0aXR1ZGUsIGxvY2F0aW9uLmxvbmdpdHVkZV0pLmFkZFRvKHRoaXMuZHJhd25JdGVtcyk7XG4gICAgICB0aGlzLm9uTWFya2VyQWRkZWQuZW1pdChsb2NhdGlvbik7XG4gICAgfSk7XG4gIH1cblxuICBnZXRNYXJrZXJzKCk6IEFYTWFwTG9jYXRpb25bXSB7XG4gICAgcmV0dXJuIHRoaXMuZHJhd25JdGVtc1xuICAgICAgLmdldExheWVycygpXG4gICAgICAuZmlsdGVyKChsYXllcikgPT4gbGF5ZXIgaW5zdGFuY2VvZiB0aGlzLkwuTWFya2VyKVxuICAgICAgLm1hcCgobWFya2VyKSA9PiB7XG4gICAgICAgIGNvbnN0IGxhdExuZyA9IChtYXJrZXIgYXMgTC5NYXJrZXIpLmdldExhdExuZygpO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGxhdGl0dWRlOiBsYXRMbmcubGF0LFxuICAgICAgICAgIGxvbmdpdHVkZTogbGF0TG5nLmxuZyxcbiAgICAgICAgfSBhcyBBWE1hcExvY2F0aW9uO1xuICAgICAgfSk7XG4gIH1cblxuICBhZGREcmF3Q29udHJvbChwb3NpdGlvbjogQVhNYXBDb250cm9sUGxhY2UgPSAndG9wbGVmdCcsIG1heE1hcmtlcnMgPSAxKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZHJhd0NvbnRyb2wpIHtcbiAgICAgIHRoaXMubWFwLnJlbW92ZUNvbnRyb2wodGhpcy5kcmF3Q29udHJvbCk7XG4gICAgICB0aGlzLmRyYXduSXRlbXMuY2xlYXJMYXllcnMoKTtcbiAgICAgIHRoaXMuZHJhd0NvbnRyb2wgPSB1bmRlZmluZWQ7XG4gICAgfVxuICAgIGlmICh0aGlzLm1hcCkge1xuICAgICAgY29uc3QgY3JlYXRlRHJhd0NvbnRyb2wgPSAoKSA9PiB7XG4gICAgICAgIHJldHVybiBuZXcgdGhpcy5MLkNvbnRyb2wuRHJhdyh7XG4gICAgICAgICAgcG9zaXRpb246IHBvc2l0aW9uLFxuICAgICAgICAgIGVkaXQ6IHtcbiAgICAgICAgICAgIGZlYXR1cmVHcm91cDogdGhpcy5kcmF3bkl0ZW1zLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgZHJhdzoge1xuICAgICAgICAgICAgbWFya2VyOiB0aGlzLmRyYXduSXRlbXMuZ2V0TGF5ZXJzKCkubGVuZ3RoIDwgbWF4TWFya2VycyxcbiAgICAgICAgICAgIHBvbHlnb246IGZhbHNlLFxuICAgICAgICAgICAgcG9seWxpbmU6IGZhbHNlLFxuICAgICAgICAgICAgcmVjdGFuZ2xlOiBmYWxzZSxcbiAgICAgICAgICAgIGNpcmNsZTogZmFsc2UsXG4gICAgICAgICAgICBjaXJjbGVtYXJrZXI6IGZhbHNlLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgICAgfTtcblxuICAgICAgdGhpcy5kcmF3Q29udHJvbCA9IGNyZWF0ZURyYXdDb250cm9sKCk7XG4gICAgICB0aGlzLm1hcC5hZGRDb250cm9sKHRoaXMuZHJhd0NvbnRyb2wpO1xuXG4gICAgICBjb25zdCBvbkNyZWF0ZWQgPSAoZXZlbnQ6IGFueSkgPT4ge1xuICAgICAgICBjb25zdCBsYXllciA9IGV2ZW50LmxheWVyO1xuICAgICAgICB0aGlzLmRyYXduSXRlbXMuYWRkTGF5ZXIobGF5ZXIpO1xuICAgICAgICBjb25zdCBsYXRMbmcgPSAobGF5ZXIgYXMgTC5NYXJrZXIpLmdldExhdExuZygpO1xuICAgICAgICB0aGlzLm9uTWFya2VyQWRkZWQuZW1pdCh7IGxhdGl0dWRlOiBsYXRMbmcubGF0LCBsb25naXR1ZGU6IGxhdExuZy5sbmcgfSk7XG4gICAgICAgIHRoaXMub25NYXJrZXJDaGFuZ2VkLmVtaXQodGhpcy5nZXRNYXJrZXJzKCkpO1xuXG4gICAgICAgIGlmICh0aGlzLmRyYXduSXRlbXMuZ2V0TGF5ZXJzKCkubGVuZ3RoID49IG1heE1hcmtlcnMpIHtcbiAgICAgICAgICB0aGlzLm1hcC5yZW1vdmVDb250cm9sKHRoaXMuZHJhd0NvbnRyb2wpO1xuICAgICAgICAgIHRoaXMuZHJhd0NvbnRyb2wgPSBuZXcgdGhpcy5MLkNvbnRyb2wuRHJhdyh7XG4gICAgICAgICAgICBwb3NpdGlvbjogcG9zaXRpb24sXG4gICAgICAgICAgICBlZGl0OiB7XG4gICAgICAgICAgICAgIGZlYXR1cmVHcm91cDogdGhpcy5kcmF3bkl0ZW1zLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGRyYXc6IHtcbiAgICAgICAgICAgICAgbWFya2VyOiBmYWxzZSxcbiAgICAgICAgICAgICAgcG9seWdvbjogZmFsc2UsXG4gICAgICAgICAgICAgIHBvbHlsaW5lOiBmYWxzZSxcbiAgICAgICAgICAgICAgcmVjdGFuZ2xlOiBmYWxzZSxcbiAgICAgICAgICAgICAgY2lyY2xlOiBmYWxzZSxcbiAgICAgICAgICAgICAgY2lyY2xlbWFya2VyOiBmYWxzZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgdGhpcy5tYXAuYWRkQ29udHJvbCh0aGlzLmRyYXdDb250cm9sKTtcbiAgICAgICAgfVxuICAgICAgfTtcblxuICAgICAgY29uc3Qgb25EZWxldGVkID0gKCkgPT4ge1xuICAgICAgICB0aGlzLm9uTWFya2VyQ2hhbmdlZC5lbWl0KHRoaXMuZ2V0TWFya2VycygpKTtcblxuICAgICAgICBpZiAodGhpcy5kcmF3bkl0ZW1zLmdldExheWVycygpLmxlbmd0aCA8IG1heE1hcmtlcnMpIHtcbiAgICAgICAgICB0aGlzLm1hcC5yZW1vdmVDb250cm9sKHRoaXMuZHJhd0NvbnRyb2wpO1xuICAgICAgICAgIHRoaXMuZHJhd0NvbnRyb2wgPSBjcmVhdGVEcmF3Q29udHJvbCgpO1xuICAgICAgICAgIHRoaXMubWFwLmFkZENvbnRyb2wodGhpcy5kcmF3Q29udHJvbCk7XG4gICAgICAgIH1cbiAgICAgIH07XG5cbiAgICAgIGNvbnN0IG9uRWRpdGVkID0gKCkgPT4gdGhpcy5vbk1hcmtlckNoYW5nZWQuZW1pdCh0aGlzLmdldE1hcmtlcnMoKSk7XG5cbiAgICAgIHRoaXMubWFwLm9mZignZHJhdzpjcmVhdGVkJyk7XG4gICAgICB0aGlzLm1hcC5vZmYoJ2RyYXc6ZGVsZXRlZCcpO1xuICAgICAgdGhpcy5tYXAub2ZmKCdkcmF3OmVkaXRlZCcpO1xuXG4gICAgICB0aGlzLm1hcC5vbignZHJhdzpjcmVhdGVkJywgb25DcmVhdGVkKTtcbiAgICAgIHRoaXMubWFwLm9uKCdkcmF3OmRlbGV0ZWQnLCBvbkRlbGV0ZWQpO1xuICAgICAgdGhpcy5tYXAub24oJ2RyYXc6ZWRpdGVkJywgb25FZGl0ZWQpO1xuICAgIH1cbiAgfVxuXG4gIGFkZExvY2F0ZUNvbnRyb2wocG9zaXRpb246IEFYTWFwQ29udHJvbFBsYWNlID0gJ2JvdHRvbXJpZ2h0Jyk6IHZvaWQge1xuICAgIGlmICh0aGlzLmxvY2F0ZUNvbnRyb2wpIHtcbiAgICAgIHRoaXMubWFwLnJlbW92ZUNvbnRyb2wodGhpcy5sb2NhdGVDb250cm9sKTtcbiAgICAgIHRoaXMubG9jYXRlQ29udHJvbCA9IHVuZGVmaW5lZDtcbiAgICB9XG4gICAgaWYgKHRoaXMubWFwKSB7XG4gICAgICBjb25zdCBsb2NhdGVDb250cm9sID0gdGhpcy5MLmNvbnRyb2xcbiAgICAgICAgLmxvY2F0ZSh7XG4gICAgICAgICAgcG9zaXRpb246IHBvc2l0aW9uLFxuICAgICAgICAgIGZseVRvOiB0cnVlLFxuICAgICAgICAgIHNldFZpZXc6ICd1bnRpbFBhbk9yWm9vbScsXG4gICAgICAgICAgc2hvd1BvcHVwOiB0cnVlLFxuICAgICAgICAgIG9uTG9jYXRpb25FcnJvcjogKGUpID0+IGFsZXJ0KGUubWVzc2FnZSksXG4gICAgICAgICAgb25Mb2NhdGlvbk91dHNpZGVNYXBCb3VuZHM6IChjb250cm9sKSA9PiBjb250cm9sLnN0b3AoKSxcbiAgICAgICAgICBsb2NhdGVPcHRpb25zOiB7XG4gICAgICAgICAgICBlbmFibGVIaWdoQWNjdXJhY3k6IHRydWUsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBzdHJpbmdzOiB7XG4gICAgICAgICAgICB0aXRsZTogJ1Nob3cgbXkgbG9jYXRpb24nLFxuICAgICAgICAgICAgcG9wdXA6ICdZb3UgYXJlIHdpdGhpbiB7ZGlzdGFuY2V9IG1ldGVycyBmcm9tIHRoaXMgcG9pbnQnLFxuICAgICAgICAgICAgb3V0c2lkZU1hcEJvdW5kc01zZzogJ1lvdSBzZWVtIHRvIGJlIG91dHNpZGUgdGhlIG1hcCBib3VuZHMnLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pXG4gICAgICAgIC5hZGRUbyh0aGlzLm1hcCk7XG5cbiAgICAgIHRoaXMubG9jYXRlQ29udHJvbCA9IGxvY2F0ZUNvbnRyb2w7XG5cbiAgICAgIGNvbnN0IG9uTG9jYXRpb25Gb3VuZCA9IChldmVudDogYW55KSA9PiB7XG4gICAgICAgIGNvbnN0IGxvY2F0aW9uOiBBWE1hcExvY2F0aW9uID0ge1xuICAgICAgICAgIGxhdGl0dWRlOiBldmVudC5sYXRpdHVkZSxcbiAgICAgICAgICBsb25naXR1ZGU6IGV2ZW50LmxvbmdpdHVkZSxcbiAgICAgICAgICBwcmVjaXNpb246IGV2ZW50LmFjY3VyYWN5LFxuICAgICAgICB9O1xuICAgICAgICB0aGlzLm9uTG9jYXRpb25Gb3VuZC5lbWl0KGxvY2F0aW9uKTtcbiAgICAgIH07XG5cbiAgICAgIHRoaXMubWFwLm9uKCdsb2NhdGlvbmZvdW5kJywgb25Mb2NhdGlvbkZvdW5kKTtcbiAgICB9XG4gIH1cblxuICByZW1vdmVEcmF3Q29udHJvbCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5kcmF3Q29udHJvbCkge1xuICAgICAgdGhpcy5tYXAucmVtb3ZlQ29udHJvbCh0aGlzLmRyYXdDb250cm9sKTtcbiAgICAgIHRoaXMuZHJhd0NvbnRyb2wgPSB1bmRlZmluZWQ7XG4gICAgfVxuICAgIC8vIGlmICh0aGlzLmRyYXduSXRlbXMpIHtcbiAgICAvLyAgIHRoaXMuZHJhd25JdGVtcy5jbGVhckxheWVycygpO1xuICAgIC8vIH1cbiAgfVxuXG4gIHJlbW92ZUxvY2F0ZUNvbnRyb2woKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubWFwICYmIHRoaXMubG9jYXRlQ29udHJvbCkge1xuICAgICAgdGhpcy5tYXAucmVtb3ZlQ29udHJvbCh0aGlzLmxvY2F0ZUNvbnRyb2wpO1xuICAgICAgdGhpcy5sb2NhdGVDb250cm9sID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgfVxuXG4gIGRlc3Ryb3lNYXAoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubWFwKSB7XG4gICAgICB0aGlzLm1hcC5vZmYoKTtcbiAgICAgIHRoaXMubWFwLnJlbW92ZSgpO1xuICAgICAgdGhpcy5tYXAgPSB1bmRlZmluZWQ7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './index';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNkay1xcmNvZGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9xcmNvZGUvc3JjL2Fjb3JleC1jZGstcXJjb2RlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
@@ -1,3 +0,0 @@
1
- import { generateQRCode } from './qrcode.class';
2
- export { generateQRCode };
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9xcmNvZGUvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUsY0FBYyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZW5lcmF0ZVFSQ29kZSB9IGZyb20gJy4vcXJjb2RlLmNsYXNzJztcclxuXHJcbmV4cG9ydCB7IGdlbmVyYXRlUVJDb2RlIH07XHJcbiJdfQ==
@@ -1,76 +0,0 @@
1
- import QRCode from 'qrcode';
2
- /**
3
- * Generates a QR code with the given content and options.
4
- * @param content - The text/content to encode in the QR code.
5
- * @param width - The width/size of the QR code.
6
- * @param level - The error correction level ('L', 'M', 'Q', 'H') (default: 'M').
7
- * @param color - The color of the QR code (default: '#000000').
8
- * @param backgroundColor - The background color of the QR code (default: '#FFFFFF').
9
- * @param outputType - The output type: 'canvas', 'svg', or 'url' (default: 'canvas').
10
- * @param canvas - Optional canvas element reference if output type is 'canvas'.
11
- * @param svg - Optional SVG element reference if output type is 'svg'.
12
- * @returns A Promise that resolves with a URL if the output type is 'url', or void for other types.
13
- */
14
- export function generateQRCode(content, // Mandatory content parameter
15
- width, // Mandatory size parameter
16
- level = 'M', // Default level is 'M'
17
- color, // Default color is black
18
- backgroundColor, // Default background color is white
19
- outputType = 'canvas', // Default output type is 'canvas'
20
- canvas, // Optional canvas element for canvas output
21
- svg) {
22
- const qrOptions = {
23
- margin: 0,
24
- width, // Size is mandatory
25
- errorCorrectionLevel: level,
26
- color: {
27
- dark: color, // QR code color
28
- light: backgroundColor, // Background color
29
- },
30
- };
31
- return new Promise((resolve, reject) => {
32
- if (outputType === 'canvas') {
33
- if (!canvas) {
34
- reject(new Error('Canvas element is required for canvas output'));
35
- return;
36
- }
37
- QRCode.toCanvas(canvas, content, qrOptions, (error) => {
38
- if (error) {
39
- reject(new Error(`Failed to generate QR code on canvas: ${error.message}`));
40
- }
41
- else {
42
- resolve();
43
- }
44
- });
45
- }
46
- else if (outputType === 'svg') {
47
- if (!svg) {
48
- reject(new Error('SVG element is required for SVG output'));
49
- return;
50
- }
51
- QRCode.toString(content, { ...qrOptions, type: 'svg' }, (error, svgString) => {
52
- if (error) {
53
- reject(new Error(`Failed to generate QR code as SVG: ${error.message}`));
54
- }
55
- else {
56
- svg.innerHTML = svgString;
57
- resolve();
58
- }
59
- });
60
- }
61
- else if (outputType === 'url') {
62
- QRCode.toDataURL(content, qrOptions, (error, url) => {
63
- if (error) {
64
- reject(new Error(`Failed to generate QR code as Data URL: ${error.message}`));
65
- }
66
- else {
67
- resolve(url);
68
- }
69
- });
70
- }
71
- else {
72
- reject(new Error('Unsupported output type. Expected "canvas", "svg", or "url".'));
73
- }
74
- });
75
- }
76
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXJjb2RlLmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvcXJjb2RlL3NyYy9xcmNvZGUuY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBRTVCOzs7Ozs7Ozs7OztHQVdHO0FBQ0gsTUFBTSxVQUFVLGNBQWMsQ0FDNUIsT0FBZSxFQUFFLDhCQUE4QjtBQUMvQyxLQUFhLEVBQUUsMkJBQTJCO0FBQzFDLFFBQStCLEdBQUcsRUFBRSx1QkFBdUI7QUFDM0QsS0FBYSxFQUFFLHlCQUF5QjtBQUN4QyxlQUF1QixFQUFFLG9DQUFvQztBQUM3RCxhQUF1QyxRQUFRLEVBQUUsa0NBQWtDO0FBQ25GLE1BQTBCLEVBQUUsNENBQTRDO0FBQ3hFLEdBQWlCO0lBRWpCLE1BQU0sU0FBUyxHQUFHO1FBQ2hCLE1BQU0sRUFBRSxDQUFDO1FBQ1QsS0FBSyxFQUFFLG9CQUFvQjtRQUMzQixvQkFBb0IsRUFBRSxLQUFLO1FBQzNCLEtBQUssRUFBRTtZQUNMLElBQUksRUFBRSxLQUFLLEVBQUUsZ0JBQWdCO1lBQzdCLEtBQUssRUFBRSxlQUFlLEVBQUUsbUJBQW1CO1NBQzVDO0tBQ0YsQ0FBQztJQUVGLE9BQU8sSUFBSSxPQUFPLENBQWdCLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1FBQ3BELElBQUksVUFBVSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQzVCLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDWixNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsOENBQThDLENBQUMsQ0FBQyxDQUFDO2dCQUNsRSxPQUFPO1lBQ1QsQ0FBQztZQUNELE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRTtnQkFDcEQsSUFBSSxLQUFLLEVBQUUsQ0FBQztvQkFDVixNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMseUNBQXlDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQzlFLENBQUM7cUJBQU0sQ0FBQztvQkFDTixPQUFPLEVBQUUsQ0FBQztnQkFDWixDQUFDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO2FBQU0sSUFBSSxVQUFVLEtBQUssS0FBSyxFQUFFLENBQUM7WUFDaEMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO2dCQUNULE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyx3Q0FBd0MsQ0FBQyxDQUFDLENBQUM7Z0JBQzVELE9BQU87WUFDVCxDQUFDO1lBQ0QsTUFBTSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsRUFBRSxHQUFHLFNBQVMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFLEVBQUU7Z0JBQzNFLElBQUksS0FBSyxFQUFFLENBQUM7b0JBQ1YsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLHNDQUFzQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUMzRSxDQUFDO3FCQUFNLENBQUM7b0JBQ04sR0FBRyxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7b0JBQzFCLE9BQU8sRUFBRSxDQUFDO2dCQUNaLENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7YUFBTSxJQUFJLFVBQVUsS0FBSyxLQUFLLEVBQUUsQ0FBQztZQUNoQyxNQUFNLENBQUMsU0FBUyxDQUFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsQ0FBQyxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUU7Z0JBQ2xELElBQUksS0FBSyxFQUFFLENBQUM7b0JBQ1YsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLDJDQUEyQyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUNoRixDQUFDO3FCQUFNLENBQUM7b0JBQ04sT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUNmLENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLDhEQUE4RCxDQUFDLENBQUMsQ0FBQztRQUNwRixDQUFDO0lBQ0gsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFFSQ29kZSBmcm9tICdxcmNvZGUnO1xuXG4vKipcbiAqIEdlbmVyYXRlcyBhIFFSIGNvZGUgd2l0aCB0aGUgZ2l2ZW4gY29udGVudCBhbmQgb3B0aW9ucy5cbiAqIEBwYXJhbSBjb250ZW50IC0gVGhlIHRleHQvY29udGVudCB0byBlbmNvZGUgaW4gdGhlIFFSIGNvZGUuXG4gKiBAcGFyYW0gd2lkdGggLSBUaGUgd2lkdGgvc2l6ZSBvZiB0aGUgUVIgY29kZS5cbiAqIEBwYXJhbSBsZXZlbCAtIFRoZSBlcnJvciBjb3JyZWN0aW9uIGxldmVsICgnTCcsICdNJywgJ1EnLCAnSCcpIChkZWZhdWx0OiAnTScpLlxuICogQHBhcmFtIGNvbG9yIC0gVGhlIGNvbG9yIG9mIHRoZSBRUiBjb2RlIChkZWZhdWx0OiAnIzAwMDAwMCcpLlxuICogQHBhcmFtIGJhY2tncm91bmRDb2xvciAtIFRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBRUiBjb2RlIChkZWZhdWx0OiAnI0ZGRkZGRicpLlxuICogQHBhcmFtIG91dHB1dFR5cGUgLSBUaGUgb3V0cHV0IHR5cGU6ICdjYW52YXMnLCAnc3ZnJywgb3IgJ3VybCcgKGRlZmF1bHQ6ICdjYW52YXMnKS5cbiAqIEBwYXJhbSBjYW52YXMgLSBPcHRpb25hbCBjYW52YXMgZWxlbWVudCByZWZlcmVuY2UgaWYgb3V0cHV0IHR5cGUgaXMgJ2NhbnZhcycuXG4gKiBAcGFyYW0gc3ZnIC0gT3B0aW9uYWwgU1ZHIGVsZW1lbnQgcmVmZXJlbmNlIGlmIG91dHB1dCB0eXBlIGlzICdzdmcnLlxuICogQHJldHVybnMgQSBQcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2l0aCBhIFVSTCBpZiB0aGUgb3V0cHV0IHR5cGUgaXMgJ3VybCcsIG9yIHZvaWQgZm9yIG90aGVyIHR5cGVzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2VuZXJhdGVRUkNvZGUoXG4gIGNvbnRlbnQ6IHN0cmluZywgLy8gTWFuZGF0b3J5IGNvbnRlbnQgcGFyYW1ldGVyXG4gIHdpZHRoOiBudW1iZXIsIC8vIE1hbmRhdG9yeSBzaXplIHBhcmFtZXRlclxuICBsZXZlbDogJ0wnIHwgJ00nIHwgJ1EnIHwgJ0gnID0gJ00nLCAvLyBEZWZhdWx0IGxldmVsIGlzICdNJ1xuICBjb2xvcjogc3RyaW5nLCAvLyBEZWZhdWx0IGNvbG9yIGlzIGJsYWNrXG4gIGJhY2tncm91bmRDb2xvcjogc3RyaW5nLCAvLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgaXMgd2hpdGVcbiAgb3V0cHV0VHlwZTogJ2NhbnZhcycgfCAnc3ZnJyB8ICd1cmwnID0gJ2NhbnZhcycsIC8vIERlZmF1bHQgb3V0cHV0IHR5cGUgaXMgJ2NhbnZhcydcbiAgY2FudmFzPzogSFRNTENhbnZhc0VsZW1lbnQsIC8vIE9wdGlvbmFsIGNhbnZhcyBlbGVtZW50IGZvciBjYW52YXMgb3V0cHV0XG4gIHN2Zz86IEhUTUxFbGVtZW50LCAvLyBPcHRpb25hbCBzdmcgZWxlbWVudCBmb3Igc3ZnIG91dHB1dFxuKTogUHJvbWlzZTxzdHJpbmcgfCB2b2lkPiB7XG4gIGNvbnN0IHFyT3B0aW9ucyA9IHtcbiAgICBtYXJnaW46IDAsXG4gICAgd2lkdGgsIC8vIFNpemUgaXMgbWFuZGF0b3J5XG4gICAgZXJyb3JDb3JyZWN0aW9uTGV2ZWw6IGxldmVsLFxuICAgIGNvbG9yOiB7XG4gICAgICBkYXJrOiBjb2xvciwgLy8gUVIgY29kZSBjb2xvclxuICAgICAgbGlnaHQ6IGJhY2tncm91bmRDb2xvciwgLy8gQmFja2dyb3VuZCBjb2xvclxuICAgIH0sXG4gIH07XG5cbiAgcmV0dXJuIG5ldyBQcm9taXNlPHN0cmluZyB8IHZvaWQ+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICBpZiAob3V0cHV0VHlwZSA9PT0gJ2NhbnZhcycpIHtcbiAgICAgIGlmICghY2FudmFzKSB7XG4gICAgICAgIHJlamVjdChuZXcgRXJyb3IoJ0NhbnZhcyBlbGVtZW50IGlzIHJlcXVpcmVkIGZvciBjYW52YXMgb3V0cHV0JykpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBRUkNvZGUudG9DYW52YXMoY2FudmFzLCBjb250ZW50LCBxck9wdGlvbnMsIChlcnJvcikgPT4ge1xuICAgICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgICByZWplY3QobmV3IEVycm9yKGBGYWlsZWQgdG8gZ2VuZXJhdGUgUVIgY29kZSBvbiBjYW52YXM6ICR7ZXJyb3IubWVzc2FnZX1gKSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmVzb2x2ZSgpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9IGVsc2UgaWYgKG91dHB1dFR5cGUgPT09ICdzdmcnKSB7XG4gICAgICBpZiAoIXN2Zykge1xuICAgICAgICByZWplY3QobmV3IEVycm9yKCdTVkcgZWxlbWVudCBpcyByZXF1aXJlZCBmb3IgU1ZHIG91dHB1dCcpKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgUVJDb2RlLnRvU3RyaW5nKGNvbnRlbnQsIHsgLi4ucXJPcHRpb25zLCB0eXBlOiAnc3ZnJyB9LCAoZXJyb3IsIHN2Z1N0cmluZykgPT4ge1xuICAgICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgICByZWplY3QobmV3IEVycm9yKGBGYWlsZWQgdG8gZ2VuZXJhdGUgUVIgY29kZSBhcyBTVkc6ICR7ZXJyb3IubWVzc2FnZX1gKSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgc3ZnLmlubmVySFRNTCA9IHN2Z1N0cmluZztcbiAgICAgICAgICByZXNvbHZlKCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0gZWxzZSBpZiAob3V0cHV0VHlwZSA9PT0gJ3VybCcpIHtcbiAgICAgIFFSQ29kZS50b0RhdGFVUkwoY29udGVudCwgcXJPcHRpb25zLCAoZXJyb3IsIHVybCkgPT4ge1xuICAgICAgICBpZiAoZXJyb3IpIHtcbiAgICAgICAgICByZWplY3QobmV3IEVycm9yKGBGYWlsZWQgdG8gZ2VuZXJhdGUgUVIgY29kZSBhcyBEYXRhIFVSTDogJHtlcnJvci5tZXNzYWdlfWApKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXNvbHZlKHVybCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICByZWplY3QobmV3IEVycm9yKCdVbnN1cHBvcnRlZCBvdXRwdXQgdHlwZS4gRXhwZWN0ZWQgXCJjYW52YXNcIiwgXCJzdmdcIiwgb3IgXCJ1cmxcIi4nKSk7XG4gICAgfVxuICB9KTtcbn1cbiJdfQ==
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './index';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNkay13eXNpd3lnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvd3lzaXd5Zy9zcmMvYWNvcmV4LWNkay13eXNpd3lnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
@@ -1,2 +0,0 @@
1
- export * from './wysiwyg.class';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2Nkay93eXNpd3lnL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGlCQUFpQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi93eXNpd3lnLmNsYXNzJztcbiJdfQ==
@@ -1,65 +0,0 @@
1
- import { signal } from '@angular/core';
2
- export class AXWysiwyg {
3
- constructor() {
4
- this.quillObj = signal(null);
5
- }
6
- async init(container, option) {
7
- await import('quill').then((e) => {
8
- const wysiwygObject = new e.default(container, option);
9
- this.quillObj.set(wysiwygObject);
10
- });
11
- }
12
- bold(value) {
13
- this.quillObj().format('bold', value);
14
- }
15
- italic(value) {
16
- this.quillObj().format('italic', value);
17
- }
18
- underLine(value) {
19
- this.quillObj().format('underline', value);
20
- }
21
- strike(value) {
22
- this.quillObj().format('strike', value);
23
- }
24
- color(value) {
25
- this.quillObj().format('color', value);
26
- }
27
- header(value) {
28
- this.quillObj().format('header', value);
29
- }
30
- list(value) {
31
- this.quillObj().format('list', value);
32
- }
33
- align(value) {
34
- if (value === 'left') {
35
- this.quillObj().format('align', '');
36
- }
37
- else {
38
- this.quillObj().format('align', value);
39
- }
40
- }
41
- direction(value) {
42
- this.quillObj().format('direction', value);
43
- }
44
- fontSize(value, range) {
45
- this.quillObj().formatText(range.index, range.length, 'size', value);
46
- }
47
- get HTMLoutput() {
48
- return this.quillObj().root.innerHTML;
49
- }
50
- undo() {
51
- this.quillObj().history.undo();
52
- }
53
- redo() {
54
- this.quillObj().history.redo();
55
- }
56
- background(value) {
57
- this.quillObj().format('background', value);
58
- }
59
- addImage(value) {
60
- const range = this.quillObj().getSelection();
61
- const currentIndex = range?.index;
62
- this.quillObj().insertEmbed(currentIndex, 'image', value);
63
- }
64
- }
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3lzaXd5Zy5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY2RrL3d5c2l3eWcvc3JjL3d5c2l3eWcuY2xhc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2QyxNQUFNLE9BQU8sU0FBUztJQUF0QjtRQUNFLGFBQVEsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7SUEwRTFCLENBQUM7SUF4RUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUErQixFQUFFLE1BQWdCO1FBQzFELE1BQU0sTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQy9CLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDdkQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDbkMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsSUFBSSxDQUFDLEtBQWM7UUFDakIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFjO1FBQ25CLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCxTQUFTLENBQUMsS0FBYztRQUN0QixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQWM7UUFDbkIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVELEtBQUssQ0FBQyxLQUFhO1FBQ2pCLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBYTtRQUNsQixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsSUFBSSxDQUFDLEtBQWdDO1FBQ25DLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxLQUFLLENBQUMsS0FBOEM7UUFDbEQsSUFBSSxLQUFLLEtBQUssTUFBTSxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDdEMsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQztRQUN6QyxDQUFDO0lBQ0gsQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUFvQjtRQUM1QixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQXlDLEVBQUUsS0FBSztRQUN2RCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7SUFDeEMsQ0FBQztJQUVELElBQUk7UUFDRixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQWE7UUFDdEIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVELFFBQVEsQ0FBQyxLQUFhO1FBQ3BCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUM3QyxNQUFNLFlBQVksR0FBRyxLQUFLLEVBQUUsS0FBSyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQztJQUM1RCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmV4cG9ydCBjbGFzcyBBWFd5c2l3eWcge1xyXG4gIHF1aWxsT2JqID0gc2lnbmFsKG51bGwpO1xyXG5cclxuICBhc3luYyBpbml0KGNvbnRhaW5lcjogSFRNTEVsZW1lbnQgfCBzdHJpbmcsIG9wdGlvbj86IHVua25vd24pIHtcclxuICAgIGF3YWl0IGltcG9ydCgncXVpbGwnKS50aGVuKChlKSA9PiB7XHJcbiAgICAgIGNvbnN0IHd5c2l3eWdPYmplY3QgPSBuZXcgZS5kZWZhdWx0KGNvbnRhaW5lciwgb3B0aW9uKTtcclxuICAgICAgdGhpcy5xdWlsbE9iai5zZXQod3lzaXd5Z09iamVjdCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIGJvbGQodmFsdWU6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMucXVpbGxPYmooKS5mb3JtYXQoJ2JvbGQnLCB2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBpdGFsaWModmFsdWU6IGJvb2xlYW4pIHtcclxuICAgIHRoaXMucXVpbGxPYmooKS5mb3JtYXQoJ2l0YWxpYycsIHZhbHVlKTtcclxuICB9XHJcblxyXG4gIHVuZGVyTGluZSh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgdGhpcy5xdWlsbE9iaigpLmZvcm1hdCgndW5kZXJsaW5lJywgdmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgc3RyaWtlKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLnF1aWxsT2JqKCkuZm9ybWF0KCdzdHJpa2UnLCB2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBjb2xvcih2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICB0aGlzLnF1aWxsT2JqKCkuZm9ybWF0KCdjb2xvcicsIHZhbHVlKTtcclxuICB9XHJcblxyXG4gIGhlYWRlcih2YWx1ZTogbnVtYmVyKSB7XHJcbiAgICB0aGlzLnF1aWxsT2JqKCkuZm9ybWF0KCdoZWFkZXInLCB2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBsaXN0KHZhbHVlOiAnb3JkZXJlZCcgfCAnYnVsbGV0JyB8ICcnKSB7XHJcbiAgICB0aGlzLnF1aWxsT2JqKCkuZm9ybWF0KCdsaXN0JywgdmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgYWxpZ24odmFsdWU6ICdjZW50ZXInIHwgJ3JpZ2h0JyB8ICdsZWZ0JyB8ICdqdXN0aWZ5Jykge1xyXG4gICAgaWYgKHZhbHVlID09PSAnbGVmdCcpIHtcclxuICAgICAgdGhpcy5xdWlsbE9iaigpLmZvcm1hdCgnYWxpZ24nLCAnJyk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnF1aWxsT2JqKCkuZm9ybWF0KCdhbGlnbicsIHZhbHVlKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGRpcmVjdGlvbih2YWx1ZTogJ3J0bCcgfCAnbHRyJykge1xyXG4gICAgdGhpcy5xdWlsbE9iaigpLmZvcm1hdCgnZGlyZWN0aW9uJywgdmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgZm9udFNpemUodmFsdWU6ICdzbWFsbCcgfCBmYWxzZSB8ICdsYXJnZScgfCAnaHVnZScsIHJhbmdlKSB7XHJcbiAgICB0aGlzLnF1aWxsT2JqKCkuZm9ybWF0VGV4dChyYW5nZS5pbmRleCwgcmFuZ2UubGVuZ3RoLCAnc2l6ZScsIHZhbHVlKTtcclxuICB9XHJcblxyXG4gIGdldCBIVE1Mb3V0cHV0KCkge1xyXG4gICAgcmV0dXJuIHRoaXMucXVpbGxPYmooKS5yb290LmlubmVySFRNTDtcclxuICB9XHJcblxyXG4gIHVuZG8oKSB7XHJcbiAgICB0aGlzLnF1aWxsT2JqKCkuaGlzdG9yeS51bmRvKCk7XHJcbiAgfVxyXG5cclxuICByZWRvKCkge1xyXG4gICAgdGhpcy5xdWlsbE9iaigpLmhpc3RvcnkucmVkbygpO1xyXG4gIH1cclxuXHJcbiAgYmFja2dyb3VuZCh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICB0aGlzLnF1aWxsT2JqKCkuZm9ybWF0KCdiYWNrZ3JvdW5kJywgdmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgYWRkSW1hZ2UodmFsdWU6IHN0cmluZykge1xyXG4gICAgY29uc3QgcmFuZ2UgPSB0aGlzLnF1aWxsT2JqKCkuZ2V0U2VsZWN0aW9uKCk7XHJcbiAgICBjb25zdCBjdXJyZW50SW5kZXggPSByYW5nZT8uaW5kZXg7XHJcbiAgICB0aGlzLnF1aWxsT2JqKCkuaW5zZXJ0RW1iZWQoY3VycmVudEluZGV4LCAnaW1hZ2UnLCB2YWx1ZSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -1,225 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { EventEmitter, Injectable } from '@angular/core';
3
-
4
- class AXLeafletService {
5
- constructor() {
6
- this.onMarkerChanged = new EventEmitter();
7
- this.onMarkerAdded = new EventEmitter();
8
- this.onLocationFound = new EventEmitter();
9
- }
10
- async loadLeaflet() {
11
- try {
12
- this.L = await import('leaflet');
13
- await import('leaflet-draw');
14
- await import('leaflet.locatecontrol');
15
- this.L.Icon.Default.imagePath = 'https://unpkg.com/leaflet@1.7.1/dist/images/';
16
- }
17
- catch (error) {
18
- console.warn(error);
19
- }
20
- }
21
- async initMap(mapElement, location, zoom = 13) {
22
- await this.loadLeaflet();
23
- const map = this.L.map(mapElement).setView([location.latitude, location.longitude], zoom);
24
- this.L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
25
- maxZoom: 18,
26
- attribution: '© ACoreX',
27
- }).addTo(map);
28
- this.drawnItems = new this.L.FeatureGroup();
29
- this.drawnItems.addTo(map);
30
- this.map = map;
31
- // let holdTimer;
32
- // const holdDuration = 1000;
33
- // map.on('mousedown', (e) => {
34
- // holdTimer = setTimeout(() => {
35
- // this.L.marker(e.latlng).addTo(map);
36
- // }, holdDuration);
37
- // });
38
- // map.on('mouseup', function () {
39
- // clearTimeout(holdTimer);
40
- // });
41
- // map.on('mouseleave', function () {
42
- // clearTimeout(holdTimer);
43
- // });
44
- }
45
- getMap() {
46
- return this.map;
47
- }
48
- setZoomLevel(zoom) {
49
- this.map?.setZoom(zoom);
50
- }
51
- setCenter(location) {
52
- if (this.map && location) {
53
- this.map.setView([location.latitude, location.longitude], this.map.getZoom());
54
- }
55
- }
56
- flyTo(location, zoom, setMarker = false, duration = 1.0) {
57
- if (this.map && location) {
58
- this.map.flyTo([location.latitude, location.longitude], zoom || this.map.getZoom(), {
59
- animate: true,
60
- duration: duration,
61
- });
62
- this.map.once('moveend', () => {
63
- if (setMarker) {
64
- this.addMarker(location);
65
- }
66
- });
67
- }
68
- }
69
- addMarker(locations) {
70
- const locationsArray = Array.isArray(locations) ? locations : [locations];
71
- locationsArray.forEach((location) => {
72
- this.L.marker([location.latitude, location.longitude]).addTo(this.drawnItems);
73
- this.onMarkerAdded.emit(location);
74
- });
75
- }
76
- getMarkers() {
77
- return this.drawnItems
78
- .getLayers()
79
- .filter((layer) => layer instanceof this.L.Marker)
80
- .map((marker) => {
81
- const latLng = marker.getLatLng();
82
- return {
83
- latitude: latLng.lat,
84
- longitude: latLng.lng,
85
- };
86
- });
87
- }
88
- addDrawControl(position = 'topleft', maxMarkers = 1) {
89
- if (this.drawControl) {
90
- this.map.removeControl(this.drawControl);
91
- this.drawnItems.clearLayers();
92
- this.drawControl = undefined;
93
- }
94
- if (this.map) {
95
- const createDrawControl = () => {
96
- return new this.L.Control.Draw({
97
- position: position,
98
- edit: {
99
- featureGroup: this.drawnItems,
100
- },
101
- draw: {
102
- marker: this.drawnItems.getLayers().length < maxMarkers,
103
- polygon: false,
104
- polyline: false,
105
- rectangle: false,
106
- circle: false,
107
- circlemarker: false,
108
- },
109
- });
110
- };
111
- this.drawControl = createDrawControl();
112
- this.map.addControl(this.drawControl);
113
- const onCreated = (event) => {
114
- const layer = event.layer;
115
- this.drawnItems.addLayer(layer);
116
- const latLng = layer.getLatLng();
117
- this.onMarkerAdded.emit({ latitude: latLng.lat, longitude: latLng.lng });
118
- this.onMarkerChanged.emit(this.getMarkers());
119
- if (this.drawnItems.getLayers().length >= maxMarkers) {
120
- this.map.removeControl(this.drawControl);
121
- this.drawControl = new this.L.Control.Draw({
122
- position: position,
123
- edit: {
124
- featureGroup: this.drawnItems,
125
- },
126
- draw: {
127
- marker: false,
128
- polygon: false,
129
- polyline: false,
130
- rectangle: false,
131
- circle: false,
132
- circlemarker: false,
133
- },
134
- });
135
- this.map.addControl(this.drawControl);
136
- }
137
- };
138
- const onDeleted = () => {
139
- this.onMarkerChanged.emit(this.getMarkers());
140
- if (this.drawnItems.getLayers().length < maxMarkers) {
141
- this.map.removeControl(this.drawControl);
142
- this.drawControl = createDrawControl();
143
- this.map.addControl(this.drawControl);
144
- }
145
- };
146
- const onEdited = () => this.onMarkerChanged.emit(this.getMarkers());
147
- this.map.off('draw:created');
148
- this.map.off('draw:deleted');
149
- this.map.off('draw:edited');
150
- this.map.on('draw:created', onCreated);
151
- this.map.on('draw:deleted', onDeleted);
152
- this.map.on('draw:edited', onEdited);
153
- }
154
- }
155
- addLocateControl(position = 'bottomright') {
156
- if (this.locateControl) {
157
- this.map.removeControl(this.locateControl);
158
- this.locateControl = undefined;
159
- }
160
- if (this.map) {
161
- const locateControl = this.L.control
162
- .locate({
163
- position: position,
164
- flyTo: true,
165
- setView: 'untilPanOrZoom',
166
- showPopup: true,
167
- onLocationError: (e) => alert(e.message),
168
- onLocationOutsideMapBounds: (control) => control.stop(),
169
- locateOptions: {
170
- enableHighAccuracy: true,
171
- },
172
- strings: {
173
- title: 'Show my location',
174
- popup: 'You are within {distance} meters from this point',
175
- outsideMapBoundsMsg: 'You seem to be outside the map bounds',
176
- },
177
- })
178
- .addTo(this.map);
179
- this.locateControl = locateControl;
180
- const onLocationFound = (event) => {
181
- const location = {
182
- latitude: event.latitude,
183
- longitude: event.longitude,
184
- precision: event.accuracy,
185
- };
186
- this.onLocationFound.emit(location);
187
- };
188
- this.map.on('locationfound', onLocationFound);
189
- }
190
- }
191
- removeDrawControl() {
192
- if (this.drawControl) {
193
- this.map.removeControl(this.drawControl);
194
- this.drawControl = undefined;
195
- }
196
- // if (this.drawnItems) {
197
- // this.drawnItems.clearLayers();
198
- // }
199
- }
200
- removeLocateControl() {
201
- if (this.map && this.locateControl) {
202
- this.map.removeControl(this.locateControl);
203
- this.locateControl = undefined;
204
- }
205
- }
206
- destroyMap() {
207
- if (this.map) {
208
- this.map.off();
209
- this.map.remove();
210
- this.map = undefined;
211
- }
212
- }
213
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXLeafletService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
214
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXLeafletService }); }
215
- }
216
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: AXLeafletService, decorators: [{
217
- type: Injectable
218
- }] });
219
-
220
- /**
221
- * Generated bundle index. Do not edit.
222
- */
223
-
224
- export { AXLeafletService };
225
- //# sourceMappingURL=acorex-cdk-map.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-cdk-map.mjs","sources":["../../../../libs/cdk/map/src/map.class.ts","../../../../libs/cdk/map/src/acorex-cdk-map.ts"],"sourcesContent":["import { EventEmitter, Injectable } from '@angular/core';\n\nexport interface AXMapLocation {\n latitude: number;\n longitude: number;\n precision?: number;\n title?: string;\n}\nexport type AXMapControlPlace = 'topleft' | 'topright' | 'bottomleft' | 'bottomright';\n@Injectable()\nexport class AXLeafletService {\n L: any;\n private map?: L.Map;\n private drawControl?: L.Control.Draw;\n private locateControl?: L.Control.Locate;\n private drawnItems: L.FeatureGroup;\n\n onMarkerChanged = new EventEmitter<AXMapLocation[]>();\n onMarkerAdded = new EventEmitter<AXMapLocation>();\n onLocationFound = new EventEmitter<AXMapLocation>();\n\n async loadLeaflet(): Promise<void> {\n try {\n this.L = await import('leaflet');\n await import('leaflet-draw');\n await import('leaflet.locatecontrol');\n this.L.Icon.Default.imagePath = 'https://unpkg.com/leaflet@1.7.1/dist/images/';\n } catch (error) {\n console.warn(error);\n }\n }\n\n async initMap(mapElement: HTMLElement, location: AXMapLocation, zoom = 13) {\n await this.loadLeaflet();\n const map = this.L.map(mapElement).setView([location.latitude, location.longitude], zoom);\n this.L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {\n maxZoom: 18,\n attribution: '© ACoreX',\n }).addTo(map);\n this.drawnItems = new this.L.FeatureGroup();\n this.drawnItems.addTo(map);\n this.map = map;\n\n // let holdTimer;\n // const holdDuration = 1000;\n // map.on('mousedown', (e) => {\n // holdTimer = setTimeout(() => {\n // this.L.marker(e.latlng).addTo(map);\n // }, holdDuration);\n // });\n // map.on('mouseup', function () {\n // clearTimeout(holdTimer);\n // });\n // map.on('mouseleave', function () {\n // clearTimeout(holdTimer);\n // });\n }\n\n getMap(): L.Map | undefined {\n return this.map;\n }\n\n setZoomLevel(zoom: number): void {\n this.map?.setZoom(zoom);\n }\n\n setCenter(location: AXMapLocation): void {\n if (this.map && location) {\n this.map.setView([location.latitude, location.longitude], this.map.getZoom());\n }\n }\n\n flyTo(location: AXMapLocation, zoom?: number, setMarker = false, duration = 1.0): void {\n if (this.map && location) {\n this.map.flyTo([location.latitude, location.longitude], zoom || this.map.getZoom(), {\n animate: true,\n duration: duration,\n });\n this.map.once('moveend', () => {\n if (setMarker) {\n this.addMarker(location);\n }\n });\n }\n }\n\n addMarker(locations: AXMapLocation | AXMapLocation[]): void {\n const locationsArray = Array.isArray(locations) ? locations : [locations];\n locationsArray.forEach((location) => {\n this.L.marker([location.latitude, location.longitude]).addTo(this.drawnItems);\n this.onMarkerAdded.emit(location);\n });\n }\n\n getMarkers(): AXMapLocation[] {\n return this.drawnItems\n .getLayers()\n .filter((layer) => layer instanceof this.L.Marker)\n .map((marker) => {\n const latLng = (marker as L.Marker).getLatLng();\n return {\n latitude: latLng.lat,\n longitude: latLng.lng,\n } as AXMapLocation;\n });\n }\n\n addDrawControl(position: AXMapControlPlace = 'topleft', maxMarkers = 1): void {\n if (this.drawControl) {\n this.map.removeControl(this.drawControl);\n this.drawnItems.clearLayers();\n this.drawControl = undefined;\n }\n if (this.map) {\n const createDrawControl = () => {\n return new this.L.Control.Draw({\n position: position,\n edit: {\n featureGroup: this.drawnItems,\n },\n draw: {\n marker: this.drawnItems.getLayers().length < maxMarkers,\n polygon: false,\n polyline: false,\n rectangle: false,\n circle: false,\n circlemarker: false,\n },\n });\n };\n\n this.drawControl = createDrawControl();\n this.map.addControl(this.drawControl);\n\n const onCreated = (event: any) => {\n const layer = event.layer;\n this.drawnItems.addLayer(layer);\n const latLng = (layer as L.Marker).getLatLng();\n this.onMarkerAdded.emit({ latitude: latLng.lat, longitude: latLng.lng });\n this.onMarkerChanged.emit(this.getMarkers());\n\n if (this.drawnItems.getLayers().length >= maxMarkers) {\n this.map.removeControl(this.drawControl);\n this.drawControl = new this.L.Control.Draw({\n position: position,\n edit: {\n featureGroup: this.drawnItems,\n },\n draw: {\n marker: false,\n polygon: false,\n polyline: false,\n rectangle: false,\n circle: false,\n circlemarker: false,\n },\n });\n this.map.addControl(this.drawControl);\n }\n };\n\n const onDeleted = () => {\n this.onMarkerChanged.emit(this.getMarkers());\n\n if (this.drawnItems.getLayers().length < maxMarkers) {\n this.map.removeControl(this.drawControl);\n this.drawControl = createDrawControl();\n this.map.addControl(this.drawControl);\n }\n };\n\n const onEdited = () => this.onMarkerChanged.emit(this.getMarkers());\n\n this.map.off('draw:created');\n this.map.off('draw:deleted');\n this.map.off('draw:edited');\n\n this.map.on('draw:created', onCreated);\n this.map.on('draw:deleted', onDeleted);\n this.map.on('draw:edited', onEdited);\n }\n }\n\n addLocateControl(position: AXMapControlPlace = 'bottomright'): void {\n if (this.locateControl) {\n this.map.removeControl(this.locateControl);\n this.locateControl = undefined;\n }\n if (this.map) {\n const locateControl = this.L.control\n .locate({\n position: position,\n flyTo: true,\n setView: 'untilPanOrZoom',\n showPopup: true,\n onLocationError: (e) => alert(e.message),\n onLocationOutsideMapBounds: (control) => control.stop(),\n locateOptions: {\n enableHighAccuracy: true,\n },\n strings: {\n title: 'Show my location',\n popup: 'You are within {distance} meters from this point',\n outsideMapBoundsMsg: 'You seem to be outside the map bounds',\n },\n })\n .addTo(this.map);\n\n this.locateControl = locateControl;\n\n const onLocationFound = (event: any) => {\n const location: AXMapLocation = {\n latitude: event.latitude,\n longitude: event.longitude,\n precision: event.accuracy,\n };\n this.onLocationFound.emit(location);\n };\n\n this.map.on('locationfound', onLocationFound);\n }\n }\n\n removeDrawControl(): void {\n if (this.drawControl) {\n this.map.removeControl(this.drawControl);\n this.drawControl = undefined;\n }\n // if (this.drawnItems) {\n // this.drawnItems.clearLayers();\n // }\n }\n\n removeLocateControl(): void {\n if (this.map && this.locateControl) {\n this.map.removeControl(this.locateControl);\n this.locateControl = undefined;\n }\n }\n\n destroyMap(): void {\n if (this.map) {\n this.map.off();\n this.map.remove();\n this.map = undefined;\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/map/README.md DELETED
@@ -1,3 +0,0 @@
1
- # @acorex/cdk/map
2
-
3
- Secondary entry point of `@acorex/cdk`. It can be used by importing from `@acorex/cdk/map`.
package/map/index.d.ts DELETED
@@ -1 +0,0 @@
1
- export * from './map.class';
@@ -1,34 +0,0 @@
1
- import { EventEmitter } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export interface AXMapLocation {
4
- latitude: number;
5
- longitude: number;
6
- precision?: number;
7
- title?: string;
8
- }
9
- export type AXMapControlPlace = 'topleft' | 'topright' | 'bottomleft' | 'bottomright';
10
- export declare class AXLeafletService {
11
- L: any;
12
- private map?;
13
- private drawControl?;
14
- private locateControl?;
15
- private drawnItems;
16
- onMarkerChanged: EventEmitter<AXMapLocation[]>;
17
- onMarkerAdded: EventEmitter<AXMapLocation>;
18
- onLocationFound: EventEmitter<AXMapLocation>;
19
- loadLeaflet(): Promise<void>;
20
- initMap(mapElement: HTMLElement, location: AXMapLocation, zoom?: number): Promise<void>;
21
- getMap(): L.Map | undefined;
22
- setZoomLevel(zoom: number): void;
23
- setCenter(location: AXMapLocation): void;
24
- flyTo(location: AXMapLocation, zoom?: number, setMarker?: boolean, duration?: number): void;
25
- addMarker(locations: AXMapLocation | AXMapLocation[]): void;
26
- getMarkers(): AXMapLocation[];
27
- addDrawControl(position?: AXMapControlPlace, maxMarkers?: number): void;
28
- addLocateControl(position?: AXMapControlPlace): void;
29
- removeDrawControl(): void;
30
- removeLocateControl(): void;
31
- destroyMap(): void;
32
- static ɵfac: i0.ɵɵFactoryDeclaration<AXLeafletService, never>;
33
- static ɵprov: i0.ɵɵInjectableDeclaration<AXLeafletService>;
34
- }