fixa-admin 0.0.1
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/README.md +24 -0
- package/esm2022/lib/class/index.api.mjs +2 -0
- package/esm2022/lib/class/popover.mjs +28 -0
- package/esm2022/lib/components/captcha/captcha.component.mjs +56 -0
- package/esm2022/lib/components/grid/filter/date-filter.component.mjs +122 -0
- package/esm2022/lib/components/grid/filter/index.api.mjs +2 -0
- package/esm2022/lib/components/grid/grid.component.mjs +491 -0
- package/esm2022/lib/components/grid/render/action-button.component.mjs +26 -0
- package/esm2022/lib/components/index.api.mjs +6 -0
- package/esm2022/lib/components/map/map.component.mjs +134 -0
- package/esm2022/lib/components/spinner/spinner.component.mjs +14 -0
- package/esm2022/lib/directive/char-input.directive.mjs +37 -0
- package/esm2022/lib/directive/index.api.mjs +4 -0
- package/esm2022/lib/directive/mask.directive.mjs +58 -0
- package/esm2022/lib/directive/mask.mjs +78 -0
- package/esm2022/lib/directive/numeric-input.directive.mjs +44 -0
- package/esm2022/lib/guard/auth.guard.mjs +25 -0
- package/esm2022/lib/guard/index.api.mjs +2 -0
- package/esm2022/lib/layouts/blank/blank.layout.mjs +14 -0
- package/esm2022/lib/layouts/index.api.mjs +3 -0
- package/esm2022/lib/layouts/master/master.layout.mjs +53 -0
- package/esm2022/lib/models/index.api.mjs +2 -0
- package/esm2022/lib/models/shared.model.mjs +28 -0
- package/esm2022/lib/pipes/date.pipe.mjs +25 -0
- package/esm2022/lib/pipes/index.api.mjs +3 -0
- package/esm2022/lib/pipes/timer.pipe.mjs +30 -0
- package/esm2022/lib/services/confirm.service.mjs +39 -0
- package/esm2022/lib/services/dialog.service.mjs +65 -0
- package/esm2022/lib/services/form.service.mjs +22 -0
- package/esm2022/lib/services/index.api.mjs +6 -0
- package/esm2022/lib/services/shared.service.mjs +15 -0
- package/esm2022/lib/services/toast.service.mjs +21 -0
- package/esm2022/lib/shared.module.mjs +196 -0
- package/esm2022/public-api.mjs +14 -0
- package/esm2022/shared.mjs +5 -0
- package/fesm2022/shared.mjs +1558 -0
- package/fesm2022/shared.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/class/index.api.d.ts +1 -0
- package/lib/class/popover.d.ts +14 -0
- package/lib/components/captcha/captcha.component.d.ts +13 -0
- package/lib/components/grid/filter/date-filter.component.d.ts +24 -0
- package/lib/components/grid/filter/index.api.d.ts +1 -0
- package/lib/components/grid/grid.component.d.ts +64 -0
- package/lib/components/grid/render/action-button.component.d.ts +13 -0
- package/lib/components/index.api.d.ts +5 -0
- package/lib/components/map/map.component.d.ts +26 -0
- package/lib/components/spinner/spinner.component.d.ts +8 -0
- package/lib/directive/char-input.directive.d.ts +12 -0
- package/lib/directive/index.api.d.ts +3 -0
- package/lib/directive/mask.d.ts +19 -0
- package/lib/directive/mask.directive.d.ts +15 -0
- package/lib/directive/numeric-input.directive.d.ts +12 -0
- package/lib/guard/auth.guard.d.ts +10 -0
- package/lib/guard/index.api.d.ts +1 -0
- package/lib/layouts/blank/blank.layout.d.ts +8 -0
- package/lib/layouts/index.api.d.ts +2 -0
- package/lib/layouts/master/master.layout.d.ts +20 -0
- package/lib/models/index.api.d.ts +1 -0
- package/lib/models/shared.model.d.ts +120 -0
- package/lib/pipes/date.pipe.d.ts +7 -0
- package/lib/pipes/index.api.d.ts +2 -0
- package/lib/pipes/timer.pipe.d.ts +7 -0
- package/lib/services/confirm.service.d.ts +9 -0
- package/lib/services/dialog.service.d.ts +11 -0
- package/lib/services/form.service.d.ts +8 -0
- package/lib/services/index.api.d.ts +5 -0
- package/lib/services/shared.service.d.ts +8 -0
- package/lib/services/toast.service.d.ts +9 -0
- package/lib/shared.module.d.ts +41 -0
- package/package.json +43 -0
- package/public-api.d.ts +10 -0
- package/src/style.scss +9 -0
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "ng-zorro-antd/tooltip";
|
|
5
|
+
export class ActionsCellRenderer {
|
|
6
|
+
params;
|
|
7
|
+
items = [];
|
|
8
|
+
agInit(params) {
|
|
9
|
+
this.params = params;
|
|
10
|
+
this.items = params.context.actionItems;
|
|
11
|
+
}
|
|
12
|
+
refresh(params) {
|
|
13
|
+
this.params = params;
|
|
14
|
+
return true;
|
|
15
|
+
}
|
|
16
|
+
handleClick(item) {
|
|
17
|
+
this.params.onClick({ data: this.params.data, event: item.code, id: this.params.node.id });
|
|
18
|
+
}
|
|
19
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ActionsCellRenderer, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
20
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ActionsCellRenderer, selector: "app-button-renderer", ngImport: i0, template: "<div class=\"h-full flex gap-2 items-center\">\n <button mat-button class=\"min-w-[30px] min-h-[30px] h-[30px]\" *ngFor=\"let item of items\" nz-tooltip [nzTooltipTitle]=\"item.alt\" nzTooltipPlacement=\"bottom\" (click)=\"handleClick(item)\">\n <div class=\"flex justify-center items-center\">\n <i [class]=\"item.icon\"></i>\n </div>\n </button>\n \n</div>", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NzTooltipDirective, selector: "[nz-tooltip]", inputs: ["nzTooltipTitle", "nzTooltipTitleContext", "nz-tooltip", "nzTooltipTrigger", "nzTooltipPlacement", "nzTooltipOrigin", "nzTooltipVisible", "nzTooltipMouseEnterDelay", "nzTooltipMouseLeaveDelay", "nzTooltipOverlayClassName", "nzTooltipOverlayStyle", "nzTooltipArrowPointAtCenter", "cdkConnectedOverlayPush", "nzTooltipColor"], outputs: ["nzTooltipVisibleChange"], exportAs: ["nzTooltip"] }] });
|
|
21
|
+
}
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ActionsCellRenderer, decorators: [{
|
|
23
|
+
type: Component,
|
|
24
|
+
args: [{ selector: 'app-button-renderer', template: "<div class=\"h-full flex gap-2 items-center\">\n <button mat-button class=\"min-w-[30px] min-h-[30px] h-[30px]\" *ngFor=\"let item of items\" nz-tooltip [nzTooltipTitle]=\"item.alt\" nzTooltipPlacement=\"bottom\" (click)=\"handleClick(item)\">\n <div class=\"flex justify-center items-center\">\n <i [class]=\"item.icon\"></i>\n </div>\n </button>\n \n</div>" }]
|
|
25
|
+
}] });
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQvc3JjL2xpYi9jb21wb25lbnRzL2dyaWQvcmVuZGVyL2FjdGlvbi1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkL3NyYy9saWIvY29tcG9uZW50cy9ncmlkL3JlbmRlci9hY3Rpb24tYnV0dG9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFPMUMsTUFBTSxPQUFPLG1CQUFtQjtJQUNwQixNQUFNLENBQU87SUFDZCxLQUFLLEdBQWtCLEVBQUUsQ0FBQztJQUVqQyxNQUFNLENBQUMsTUFBMkI7UUFDOUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQztJQUM1QyxDQUFDO0lBRUQsT0FBTyxDQUFDLE1BQTJCO1FBQy9CLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxXQUFXLENBQUMsSUFBaUI7UUFDekIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDL0YsQ0FBQzt3R0FoQlEsbUJBQW1COzRGQUFuQixtQkFBbUIsMkRDVGhDLDBZQU9NOzs0RkRFTyxtQkFBbUI7a0JBSi9CLFNBQVM7K0JBQ0kscUJBQXFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSUNlbGxSZW5kZXJlckFuZ3VsYXJDb21wIH0gZnJvbSAnQGFnLWdyaWQtY29tbXVuaXR5L2FuZ3VsYXInO1xuaW1wb3J0IHsgSUNlbGxSZW5kZXJlclBhcmFtcyB9IGZyb20gJ0BhZy1ncmlkLWNvbW11bml0eS9jb3JlJztcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aW9uSXRlbXMgfSBmcm9tICcuLi8uLi8uLi9tb2RlbHMvc2hhcmVkLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhcHAtYnV0dG9uLXJlbmRlcmVyJyxcbiAgICB0ZW1wbGF0ZVVybDogYC4vYWN0aW9uLWJ1dHRvbi5jb21wb25lbnQuaHRtbGBcbn0pXG5leHBvcnQgY2xhc3MgQWN0aW9uc0NlbGxSZW5kZXJlciBpbXBsZW1lbnRzIElDZWxsUmVuZGVyZXJBbmd1bGFyQ29tcCB7XG4gICAgcHJpdmF0ZSBwYXJhbXMhOiBhbnk7XG4gICAgcHVibGljIGl0ZW1zOiBBY3Rpb25JdGVtc1tdID0gW107XG5cbiAgICBhZ0luaXQocGFyYW1zOiBJQ2VsbFJlbmRlcmVyUGFyYW1zKTogdm9pZCB7XG4gICAgICAgIHRoaXMucGFyYW1zID0gcGFyYW1zO1xuICAgICAgICB0aGlzLml0ZW1zID0gcGFyYW1zLmNvbnRleHQuYWN0aW9uSXRlbXM7XG4gICAgfVxuXG4gICAgcmVmcmVzaChwYXJhbXM6IElDZWxsUmVuZGVyZXJQYXJhbXMpOiBib29sZWFuIHtcbiAgICAgICAgdGhpcy5wYXJhbXMgPSBwYXJhbXM7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cblxuICAgIGhhbmRsZUNsaWNrKGl0ZW06IEFjdGlvbkl0ZW1zKSB7XG4gICAgICAgIHRoaXMucGFyYW1zLm9uQ2xpY2soeyBkYXRhOiB0aGlzLnBhcmFtcy5kYXRhLCBldmVudDogaXRlbS5jb2RlLCBpZDogdGhpcy5wYXJhbXMubm9kZS5pZCB9KTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiaC1mdWxsIGZsZXggZ2FwLTIgaXRlbXMtY2VudGVyXCI+XG4gICAgPGJ1dHRvbiBtYXQtYnV0dG9uIGNsYXNzPVwibWluLXctWzMwcHhdIG1pbi1oLVszMHB4XSBoLVszMHB4XVwiICpuZ0Zvcj1cImxldCBpdGVtIG9mIGl0ZW1zXCIgbnotdG9vbHRpcCBbbnpUb29sdGlwVGl0bGVdPVwiaXRlbS5hbHRcIiBuelRvb2x0aXBQbGFjZW1lbnQ9XCJib3R0b21cIiAoY2xpY2spPVwiaGFuZGxlQ2xpY2soaXRlbSlcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1jZW50ZXIgaXRlbXMtY2VudGVyXCI+XG4gICAgICAgICAgICA8aSBbY2xhc3NdPVwiaXRlbS5pY29uXCI+PC9pPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2J1dHRvbj5cbiAgICBcbjwvZGl2PiJdfQ==
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export * from './grid/grid.component';
|
|
2
|
+
export * from './grid/render/action-button.component';
|
|
3
|
+
export * from './captcha/captcha.component';
|
|
4
|
+
export * from './map/map.component';
|
|
5
|
+
export * from './spinner/spinner.component';
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkL3NyYy9saWIvY29tcG9uZW50cy9pbmRleC5hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLDZCQUE2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9ncmlkL2dyaWQuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vZ3JpZC9yZW5kZXIvYWN0aW9uLWJ1dHRvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jYXB0Y2hhL2NhcHRjaGEuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbWFwL21hcC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zcGlubmVyL3NwaW5uZXIuY29tcG9uZW50JzsiXX0=
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import { Component, Input, Output, EventEmitter } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class MapComponent {
|
|
4
|
+
constructor() { }
|
|
5
|
+
map;
|
|
6
|
+
drawnItems = new L.FeatureGroup();
|
|
7
|
+
editable = false;
|
|
8
|
+
polygons = [];
|
|
9
|
+
drawPolygon = false;
|
|
10
|
+
drawCircle = false;
|
|
11
|
+
drawPolyline = false;
|
|
12
|
+
drawRectangle = false;
|
|
13
|
+
drawMarker = false;
|
|
14
|
+
zoom = 13;
|
|
15
|
+
center = [35.6961, 51.4231];
|
|
16
|
+
onCreatePolygon = new EventEmitter();
|
|
17
|
+
onEditPolygon = new EventEmitter();
|
|
18
|
+
initMap() {
|
|
19
|
+
if (L && L.map && L.Control && L.Control.Draw) {
|
|
20
|
+
if (this.center.length == 0) {
|
|
21
|
+
this.center = [35.6961, 51.4231];
|
|
22
|
+
}
|
|
23
|
+
this.map = L.map('map').setView(this.center, this.zoom);
|
|
24
|
+
L.tileLayer('https://raster.snappmaps.ir/styles/snapp-style/{z}/{x}/{y}@2x.webp', {
|
|
25
|
+
maxZoom: 18,
|
|
26
|
+
}).addTo(this.map);
|
|
27
|
+
this.map.addLayer(this.drawnItems);
|
|
28
|
+
const drawControl = new L.Control.Draw({
|
|
29
|
+
edit: this.editable ? {
|
|
30
|
+
featureGroup: this.drawnItems
|
|
31
|
+
} : null,
|
|
32
|
+
draw: {
|
|
33
|
+
polygon: this.drawPolygon,
|
|
34
|
+
polyline: this.drawPolyline,
|
|
35
|
+
circle: this.drawCircle,
|
|
36
|
+
rectangle: this.drawRectangle,
|
|
37
|
+
marker: this.drawMarker,
|
|
38
|
+
circlemarker: false,
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
this.map.addControl(drawControl);
|
|
42
|
+
if (L.Draw && L.Draw.Event && L.Draw.Event.CREATED) {
|
|
43
|
+
this.map.on(L.Draw.Event.CREATED, (event) => {
|
|
44
|
+
this.onCreatePolygon.emit(event.layer._latlngs[0]);
|
|
45
|
+
const layer = event.layer;
|
|
46
|
+
this.drawnItems.addLayer(layer);
|
|
47
|
+
});
|
|
48
|
+
this.map.on(L.Draw.Event.EDITED, (event) => {
|
|
49
|
+
const polygon = [];
|
|
50
|
+
event.layers.eachLayer((layer) => {
|
|
51
|
+
layer._latlngs[0].forEach(element => {
|
|
52
|
+
polygon.push({
|
|
53
|
+
lat: element.lat,
|
|
54
|
+
lng: element.lng
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
});
|
|
58
|
+
this.onEditPolygon.emit(polygon);
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
console.error('Leaflet Draw Event is not available.');
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
console.error('Leaflet or Leaflet Draw is not correctly loaded.');
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
addPolygonsToMap() {
|
|
70
|
+
this.polygons.forEach(polygon => {
|
|
71
|
+
// polygon.coordinates.forEach((el) => {
|
|
72
|
+
// el.reverse();
|
|
73
|
+
// });
|
|
74
|
+
const layer = L.polygon(polygon.coordinates, { color: polygon.color }).addTo(this.map);
|
|
75
|
+
// اضافه کردن لیبل به پالیگان
|
|
76
|
+
layer.bindTooltip(polygon.name, { permanent: true, direction: 'center', className: 'font-[yekanBakh]' }).openTooltip();
|
|
77
|
+
if (polygon.editable) {
|
|
78
|
+
// اضافه کردن پالیگان به drawnItems برای ویرایش
|
|
79
|
+
this.drawnItems.addLayer(layer);
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
clearMap() {
|
|
84
|
+
this.map.eachLayer((layer) => {
|
|
85
|
+
if (!(layer instanceof L.TileLayer)) {
|
|
86
|
+
this.map.removeLayer(layer);
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
ngOnChanges(changes) {
|
|
91
|
+
if (changes['polygons']) {
|
|
92
|
+
this.clearMap();
|
|
93
|
+
this.addPolygonsToMap();
|
|
94
|
+
}
|
|
95
|
+
if (changes['center'] || changes['zoom']) {
|
|
96
|
+
if (this.map) {
|
|
97
|
+
this.map.setView(this.center, this.zoom);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
ngAfterViewInit() {
|
|
102
|
+
this.initMap();
|
|
103
|
+
this.addPolygonsToMap();
|
|
104
|
+
}
|
|
105
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MapComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
106
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: MapComponent, selector: "app-map", inputs: { editable: "editable", polygons: "polygons", drawPolygon: "drawPolygon", drawCircle: "drawCircle", drawPolyline: "drawPolyline", drawRectangle: "drawRectangle", drawMarker: "drawMarker", zoom: "zoom", center: "center" }, outputs: { onCreatePolygon: "onCreatePolygon", onEditPolygon: "onEditPolygon" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"map-container\">\n <div class=\"map-frame\">\n <div id=\"map\" #mapElement></div>\n <!-- <button mat-flat-button (click)=\"currentLocation()\" *ngIf=\"allowCurrentLocation\">\n <i class=\"fa-solid fa-location-crosshairs\"></i>\n </button> -->\n </div>\n</div>", styles: [".map-container{height:100%!important}.map-frame{height:100%!important;position:relative}.map-frame button{position:absolute;bottom:8px;right:8px;z-index:1000;min-width:40px;height:40px;border-radius:50px;padding:0;box-shadow:var(--box-shadow);border:2px solid rgba(0,0,0,.2)}#map{height:100%!important}\n"] });
|
|
107
|
+
}
|
|
108
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MapComponent, decorators: [{
|
|
109
|
+
type: Component,
|
|
110
|
+
args: [{ selector: 'app-map', template: "<div class=\"map-container\">\n <div class=\"map-frame\">\n <div id=\"map\" #mapElement></div>\n <!-- <button mat-flat-button (click)=\"currentLocation()\" *ngIf=\"allowCurrentLocation\">\n <i class=\"fa-solid fa-location-crosshairs\"></i>\n </button> -->\n </div>\n</div>", styles: [".map-container{height:100%!important}.map-frame{height:100%!important;position:relative}.map-frame button{position:absolute;bottom:8px;right:8px;z-index:1000;min-width:40px;height:40px;border-radius:50px;padding:0;box-shadow:var(--box-shadow);border:2px solid rgba(0,0,0,.2)}#map{height:100%!important}\n"] }]
|
|
111
|
+
}], ctorParameters: () => [], propDecorators: { editable: [{
|
|
112
|
+
type: Input
|
|
113
|
+
}], polygons: [{
|
|
114
|
+
type: Input
|
|
115
|
+
}], drawPolygon: [{
|
|
116
|
+
type: Input
|
|
117
|
+
}], drawCircle: [{
|
|
118
|
+
type: Input
|
|
119
|
+
}], drawPolyline: [{
|
|
120
|
+
type: Input
|
|
121
|
+
}], drawRectangle: [{
|
|
122
|
+
type: Input
|
|
123
|
+
}], drawMarker: [{
|
|
124
|
+
type: Input
|
|
125
|
+
}], zoom: [{
|
|
126
|
+
type: Input
|
|
127
|
+
}], center: [{
|
|
128
|
+
type: Input
|
|
129
|
+
}], onCreatePolygon: [{
|
|
130
|
+
type: Output
|
|
131
|
+
}], onEditPolygon: [{
|
|
132
|
+
type: Output
|
|
133
|
+
}] } });
|
|
134
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NoYXJlZC9zcmMvbGliL2NvbXBvbmVudHMvbWFwL21hcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQvc3JjL2xpYi9jb21wb25lbnRzL21hcC9tYXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBaUIsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQWlCLE1BQU0sZUFBZSxDQUFDOztBQVVyRyxNQUFNLE9BQU8sWUFBWTtJQUN2QixnQkFBZ0IsQ0FBQztJQUNWLEdBQUcsQ0FBTTtJQUNSLFVBQVUsR0FBRyxJQUFJLENBQUMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUcxQyxRQUFRLEdBQVksS0FBSyxDQUFDO0lBRzFCLFFBQVEsR0FBa0IsRUFBRSxDQUFDO0lBRzdCLFdBQVcsR0FBWSxLQUFLLENBQUM7SUFHN0IsVUFBVSxHQUFZLEtBQUssQ0FBQztJQUc1QixZQUFZLEdBQVksS0FBSyxDQUFDO0lBRzlCLGFBQWEsR0FBWSxLQUFLLENBQUM7SUFHL0IsVUFBVSxHQUFZLEtBQUssQ0FBQztJQUc1QixJQUFJLEdBQVcsRUFBRSxDQUFDO0lBR2xCLE1BQU0sR0FBYSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUd0QyxlQUFlLEdBQXVDLElBQUksWUFBWSxFQUFFLENBQUM7SUFHekUsYUFBYSxHQUF1QyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBRS9ELE9BQU87UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxPQUFPLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUM5QyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsRUFB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QUFFLENBQUM7UUFDMUIsQ0FBQztRQUNELElBQUksT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1lBQ3pDLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO2dCQUNiLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzNDLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDZixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMxQixDQUFDO3dHQWpJVSxZQUFZOzRGQUFaLFlBQVksMlhDVnpCLHdUQU9NOzs0RkRHTyxZQUFZO2tCQUx4QixTQUFTOytCQUNFLFNBQVM7d0RBVW5CLFFBQVE7c0JBRFAsS0FBSztnQkFJTixRQUFRO3NCQURQLEtBQUs7Z0JBSU4sV0FBVztzQkFEVixLQUFLO2dCQUlOLFVBQVU7c0JBRFQsS0FBSztnQkFJTixZQUFZO3NCQURYLEtBQUs7Z0JBSU4sYUFBYTtzQkFEWixLQUFLO2dCQUlOLFVBQVU7c0JBRFQsS0FBSztnQkFJTixJQUFJO3NCQURILEtBQUs7Z0JBSU4sTUFBTTtzQkFETCxLQUFLO2dCQUlOLGVBQWU7c0JBRGQsTUFBTTtnQkFJUCxhQUFhO3NCQURaLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEFmdGVyVmlld0luaXQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuLy8gaW1wb3J0ICogYXMgTCBmcm9tICdsZWFmbGV0Jztcbi8vIGltcG9ydCAnbGVhZmxldC1kcmF3JztcbmltcG9ydCB7IFBvbHlnb25EYXRhLCBQb2x5Z29uRXZlbnRFbWl0ZXIgfSBmcm9tICcuLi8uLi9tb2RlbHMvc2hhcmVkLm1vZGVsJztcbmRlY2xhcmUgbGV0IEw6IGFueTtcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1tYXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vbWFwLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbWFwLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTWFwQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIGNvbnN0cnVjdG9yKCkgeyB9XG4gIHB1YmxpYyBtYXA6IGFueTtcbiAgcHJpdmF0ZSBkcmF3bkl0ZW1zID0gbmV3IEwuRmVhdHVyZUdyb3VwKCk7XG5cbiAgQElucHV0KClcbiAgZWRpdGFibGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBwb2x5Z29uczogUG9seWdvbkRhdGFbXSA9IFtdO1xuXG4gIEBJbnB1dCgpXG4gIGRyYXdQb2x5Z29uOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgZHJhd0NpcmNsZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIGRyYXdQb2x5bGluZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIGRyYXdSZWN0YW5nbGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBkcmF3TWFya2VyOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgem9vbTogbnVtYmVyID0gMTM7XG5cbiAgQElucHV0KClcbiAgY2VudGVyOiBudW1iZXJbXSA9IFszNS42OTYxLCA1MS40MjMxXTtcblxuICBAT3V0cHV0KClcbiAgb25DcmVhdGVQb2x5Z29uOiBFdmVudEVtaXR0ZXI8UG9seWdvbkV2ZW50RW1pdGVyW10+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBPdXRwdXQoKVxuICBvbkVkaXRQb2x5Z29uOiBFdmVudEVtaXR0ZXI8UG9seWdvbkV2ZW50RW1pdGVyW10+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHByaXZhdGUgaW5pdE1hcCgpOiB2b2lkIHtcbiAgICBpZiAoTCAmJiBMLm1hcCAmJiBMLkNvbnRyb2wgJiYgTC5Db250cm9sLkRyYXcpIHtcbiAgICAgIGlmICh0aGlzLmNlbnRlci5sZW5ndGggPT0gMCkge1xuICAgICAgICB0aGlzLmNlbnRlciA9IFszNS42OTYxLCA1MS40MjMxXTtcbiAgICAgIH1cbiAgICAgIHRoaXMubWFwID0gTC5tYXAoJ21hcCcpLnNldFZpZXcodGhpcy5jZW50ZXIsIHRoaXMuem9vbSk7XG5cbiAgICAgIEwudGlsZUxheWVyKCdodHRwczovL3Jhc3Rlci5zbmFwcG1hcHMuaXIvc3R5bGVzL3NuYXBwLXN0eWxlL3t6fS97eH0ve3l9QDJ4LndlYnAnLCB7XG4gICAgICAgIG1heFpvb206IDE4LFxuICAgICAgfSkuYWRkVG8odGhpcy5tYXApO1xuXG4gICAgICB0aGlzLm1hcC5hZGRMYXllcih0aGlzLmRyYXduSXRlbXMpO1xuICAgICAgY29uc3QgZHJhd0NvbnRyb2wgPSBuZXcgTC5Db250cm9sLkRyYXcoe1xuICAgICAgICBlZGl0OiB0aGlzLmVkaXRhYmxlID8ge1xuICAgICAgICAgIGZlYXR1cmVHcm91cDogdGhpcy5kcmF3bkl0ZW1zXG4gICAgICAgIH0gOiBudWxsLFxuICAgICAgICBkcmF3OiB7XG4gICAgICAgICAgcG9seWdvbjogdGhpcy5kcmF3UG9seWdvbixcbiAgICAgICAgICBwb2x5bGluZTogdGhpcy5kcmF3UG9seWxpbmUsXG4gICAgICAgICAgY2lyY2xlOiB0aGlzLmRyYXdDaXJjbGUsXG4gICAgICAgICAgcmVjdGFuZ2xlOiB0aGlzLmRyYXdSZWN0YW5nbGUsXG4gICAgICAgICAgbWFya2VyOiB0aGlzLmRyYXdNYXJrZXIsXG4gICAgICAgICAgY2lyY2xlbWFya2VyOiBmYWxzZSxcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICB0aGlzLm1hcC5hZGRDb250cm9sKGRyYXdDb250cm9sKTtcbiAgICAgIGlmIChMLkRyYXcgJiYgTC5EcmF3LkV2ZW50ICYmIEwuRHJhdy5FdmVudC5DUkVBVEVEKSB7XG4gICAgICAgIHRoaXMubWFwLm9uKEwuRHJhdy5FdmVudC5DUkVBVEVELCAoZXZlbnQ6IGFueSkgPT4ge1xuICAgICAgICAgIHRoaXMub25DcmVhdGVQb2x5Z29uLmVtaXQoZXZlbnQubGF5ZXIuX2xhdGxuZ3NbMF0pO1xuICAgICAgICAgIGNvbnN0IGxheWVyID0gZXZlbnQubGF5ZXI7XG4gICAgICAgICAgdGhpcy5kcmF3bkl0ZW1zLmFkZExheWVyKGxheWVyKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMubWFwLm9uKEwuRHJhdy5FdmVudC5FRElURUQsIChldmVudDogYW55KSA9PiB7XG4gICAgICAgICAgY29uc3QgcG9seWdvbiA9IFtdO1xuICAgICAgICAgIGV2ZW50LmxheWVycy5lYWNoTGF5ZXIoKGxheWVyOiBhbnkpID0+IHtcbiAgICAgICAgICAgIGxheWVyLl9sYXRsbmdzWzBdLmZvckVhY2goZWxlbWVudCA9PiB7XG4gICAgICAgICAgICAgIHBvbHlnb24ucHVzaCh7XG4gICAgICAgICAgICAgICAgbGF0OiBlbGVtZW50LmxhdCxcbiAgICAgICAgICAgICAgICBsbmc6IGVsZW1lbnQubG5nXG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgdGhpcy5vbkVkaXRQb2x5Z29uLmVtaXQocG9seWdvbik7XG4gICAgICAgIH0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc29sZS5lcnJvcignTGVhZmxldCBEcmF3IEV2ZW50IGlzIG5vdCBhdmFpbGFibGUuJyk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0xlYWZsZXQgb3IgTGVhZmxldCBEcmF3IGlzIG5vdCBjb3JyZWN0bHkgbG9hZGVkLicpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYWRkUG9seWdvbnNUb01hcCgpOiB2b2lkIHtcbiAgICB0aGlzLnBvbHlnb25zLmZvckVhY2gocG9seWdvbiA9PiB7XG4gICAgICAvLyBwb2x5Z29uLmNvb3JkaW5hdGVzLmZvckVhY2goKGVsKSA9PiB7XG4gICAgICAvLyAgIGVsLnJldmVyc2UoKTtcbiAgICAgIC8vIH0pO1xuICAgICAgY29uc3QgbGF5ZXIgPSBMLnBvbHlnb24ocG9seWdvbi5jb29yZGluYXRlcywgeyBjb2xvcjogcG9seWdvbi5jb2xvciB9KS5hZGRUbyh0aGlzLm1hcCk7XG5cbiAgICAgIC8vINin2LbYp9mB2Ycg2qnYsdiv2YYg2YTbjNio2YQg2KjZhyDZvtin2YTbjNqv2KfZhlxuICAgICAgbGF5ZXIuYmluZFRvb2x0aXAocG9seWdvbi5uYW1lLCB7IHBlcm1hbmVudDogdHJ1ZSwgZGlyZWN0aW9uOiAnY2VudGVyJywgY2xhc3NOYW1lOiAnZm9udC1beWVrYW5CYWtoXScgfSkub3BlblRvb2x0aXAoKTtcbiAgICAgIGlmIChwb2x5Z29uLmVkaXRhYmxlKSB7XG4gICAgICAgIC8vINin2LbYp9mB2Ycg2qnYsdiv2YYg2b7Yp9mE24zar9in2YYg2KjZhyBkcmF3bkl0ZW1zINio2LHYp9uMINmI24zYsdin24zYtFxuICAgICAgICB0aGlzLmRyYXduSXRlbXMuYWRkTGF5ZXIobGF5ZXIpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgY2xlYXJNYXAoKSB7XG4gICAgdGhpcy5tYXAuZWFjaExheWVyKChsYXllcikgPT4ge1xuICAgICAgaWYgKCEobGF5ZXIgaW5zdGFuY2VvZiBMLlRpbGVMYXllcikpIHtcbiAgICAgICAgdGhpcy5tYXAucmVtb3ZlTGF5ZXIobGF5ZXIpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChjaGFuZ2VzWydwb2x5Z29ucyddKSB7XG4gICAgICB0aGlzLmNsZWFyTWFwKCk7XG4gICAgICB0aGlzLmFkZFBvbHlnb25zVG9NYXAoKTtcbiAgICB9XG4gICAgaWYgKGNoYW5nZXNbJ2NlbnRlciddIHx8IGNoYW5nZXNbJ3pvb20nXSkge1xuICAgICAgaWYgKHRoaXMubWFwKSB7XG4gICAgICAgIHRoaXMubWFwLnNldFZpZXcodGhpcy5jZW50ZXIsIHRoaXMuem9vbSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaW5pdE1hcCgpO1xuICAgIHRoaXMuYWRkUG9seWdvbnNUb01hcCgpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwibWFwLWNvbnRhaW5lclwiPlxuICAgIDxkaXYgY2xhc3M9XCJtYXAtZnJhbWVcIj5cbiAgICAgICAgPGRpdiBpZD1cIm1hcFwiICNtYXBFbGVtZW50PjwvZGl2PlxuICAgICAgICA8IS0tIDxidXR0b24gbWF0LWZsYXQtYnV0dG9uIChjbGljayk9XCJjdXJyZW50TG9jYXRpb24oKVwiICpuZ0lmPVwiYWxsb3dDdXJyZW50TG9jYXRpb25cIj5cbiAgICAgICAgICAgIDxpIGNsYXNzPVwiZmEtc29saWQgZmEtbG9jYXRpb24tY3Jvc3NoYWlyc1wiPjwvaT5cbiAgICAgICAgPC9idXR0b24+IC0tPlxuICAgIDwvZGl2PlxuPC9kaXY+Il19
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "ng-zorro-antd/spin";
|
|
4
|
+
export class SpinnerComponent {
|
|
5
|
+
constructor() { }
|
|
6
|
+
ngOnInit() { }
|
|
7
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpinnerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
8
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: SpinnerComponent, selector: "app-spinner", ngImport: i0, template: "<div class=\"w-full h-full absolute top-0 left-0 flex justify-center items-center bg-white\">\n <nz-spin nzSimple nzSize=\"large\" nzSimple></nz-spin>\n</div>", dependencies: [{ kind: "component", type: i1.NzSpinComponent, selector: "nz-spin", inputs: ["nzIndicator", "nzSize", "nzTip", "nzDelay", "nzSimple", "nzSpinning"], exportAs: ["nzSpin"] }] });
|
|
9
|
+
}
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SpinnerComponent, decorators: [{
|
|
11
|
+
type: Component,
|
|
12
|
+
args: [{ selector: 'app-spinner', template: "<div class=\"w-full h-full absolute top-0 left-0 flex justify-center items-center bg-white\">\n <nz-spin nzSimple nzSize=\"large\" nzSimple></nz-spin>\n</div>" }]
|
|
13
|
+
}], ctorParameters: () => [] });
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Bpbm5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQvc3JjL2xpYi9jb21wb25lbnRzL3NwaW5uZXIvc3Bpbm5lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQvc3JjL2xpYi9jb21wb25lbnRzL3NwaW5uZXIvc3Bpbm5lci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sZUFBZSxDQUFDOzs7QUFNbEQsTUFBTSxPQUFPLGdCQUFnQjtJQUN6QixnQkFBZ0IsQ0FBQztJQUVqQixRQUFRLEtBQVcsQ0FBQzt3R0FIWCxnQkFBZ0I7NEZBQWhCLGdCQUFnQixtRENON0IsbUtBRU07OzRGRElPLGdCQUFnQjtrQkFKNUIsU0FBUzsrQkFDSSxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhcHAtc3Bpbm5lcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NwaW5uZXIuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFNwaW5uZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHsgfVxufVxuIiwiPGRpdiBjbGFzcz1cInctZnVsbCBoLWZ1bGwgYWJzb2x1dGUgdG9wLTAgbGVmdC0wIGZsZXgganVzdGlmeS1jZW50ZXIgaXRlbXMtY2VudGVyIGJnLXdoaXRlXCI+XG4gICAgPG56LXNwaW4gbnpTaW1wbGUgbnpTaXplPVwibGFyZ2VcIiBuelNpbXBsZT48L256LXNwaW4+XG48L2Rpdj4iXX0=
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Directive, HostListener } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/forms";
|
|
4
|
+
export class CharInputDirective {
|
|
5
|
+
el;
|
|
6
|
+
control;
|
|
7
|
+
renderer;
|
|
8
|
+
constructor(el, control, renderer) {
|
|
9
|
+
this.el = el;
|
|
10
|
+
this.control = control;
|
|
11
|
+
this.renderer = renderer;
|
|
12
|
+
}
|
|
13
|
+
onEvent($event) {
|
|
14
|
+
const englishPattern = /^[A-Za-z ]+$/;
|
|
15
|
+
const persianPattern = /^[\u0600-\u06FF ]+$/;
|
|
16
|
+
let value = this.el.nativeElement.value;
|
|
17
|
+
if (!englishPattern.test(value) && !persianPattern.test(value)) {
|
|
18
|
+
value = value.replaceAll($event.data, '');
|
|
19
|
+
}
|
|
20
|
+
this.el.nativeElement.value = value;
|
|
21
|
+
this.control.control.setValue(value);
|
|
22
|
+
this.renderer.setProperty(this.el.nativeElement, 'value', value);
|
|
23
|
+
return value;
|
|
24
|
+
}
|
|
25
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CharInputDirective, deps: [{ token: i0.ElementRef }, { token: i1.NgControl }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
26
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: CharInputDirective, selector: "[charInput]", host: { listeners: { "input": "onEvent($event)" } }, ngImport: i0 });
|
|
27
|
+
}
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CharInputDirective, decorators: [{
|
|
29
|
+
type: Directive,
|
|
30
|
+
args: [{
|
|
31
|
+
selector: '[charInput]',
|
|
32
|
+
}]
|
|
33
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.NgControl }, { type: i0.Renderer2 }], propDecorators: { onEvent: [{
|
|
34
|
+
type: HostListener,
|
|
35
|
+
args: ['input', ['$event']]
|
|
36
|
+
}] } });
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhci1pbnB1dC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQvc3JjL2xpYi9kaXJlY3RpdmUvY2hhci1pbnB1dC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQW9CLE1BQU0sZUFBZSxDQUFDOzs7QUFNdEYsTUFBTSxPQUFPLGtCQUFrQjtJQUNQO0lBQXdCO0lBQTJCO0lBQXZFLFlBQW9CLEVBQWMsRUFBVSxPQUFrQixFQUFTLFFBQW1CO1FBQXRFLE9BQUUsR0FBRixFQUFFLENBQVk7UUFBVSxZQUFPLEdBQVAsT0FBTyxDQUFXO1FBQVMsYUFBUSxHQUFSLFFBQVEsQ0FBVztJQUFJLENBQUM7SUFFNUQsT0FBTyxDQUFDLE1BQWtCO1FBQ3pELE1BQU0sY0FBYyxHQUFHLGNBQWMsQ0FBQztRQUN0QyxNQUFNLGNBQWMsR0FBRyxxQkFBcUIsQ0FBQztRQUM3QyxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUM7UUFDeEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDN0QsS0FBSyxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztRQUM5QyxDQUFDO1FBQ0QsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNwQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ2pFLE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7d0dBZFEsa0JBQWtCOzRGQUFsQixrQkFBa0I7OzRGQUFsQixrQkFBa0I7a0JBSDlCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGFBQWE7aUJBQzFCOytIQUlzQyxPQUFPO3NCQUF6QyxZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBJbnB1dCwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2NoYXJJbnB1dF0nLFxufSlcbmV4cG9ydCBjbGFzcyBDaGFySW5wdXREaXJlY3RpdmUge1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsIHByaXZhdGUgY29udHJvbDogTmdDb250cm9sLCBwdWJsaWMgcmVuZGVyZXI6IFJlbmRlcmVyMikgeyB9XG5cbiAgICBASG9zdExpc3RlbmVyKCdpbnB1dCcsIFsnJGV2ZW50J10pIG9uRXZlbnQoJGV2ZW50OiBJbnB1dEV2ZW50KSB7XG4gICAgICAgIGNvbnN0IGVuZ2xpc2hQYXR0ZXJuID0gL15bQS1aYS16IF0rJC87XG4gICAgICAgIGNvbnN0IHBlcnNpYW5QYXR0ZXJuID0gL15bXFx1MDYwMC1cXHUwNkZGIF0rJC87XG4gICAgICAgIGxldCB2YWx1ZSA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC52YWx1ZTtcbiAgICAgICAgaWYgKCFlbmdsaXNoUGF0dGVybi50ZXN0KHZhbHVlKSAmJiAhcGVyc2lhblBhdHRlcm4udGVzdCh2YWx1ZSkpIHtcbiAgICAgICAgICAgIHZhbHVlID0gdmFsdWUucmVwbGFjZUFsbCgkZXZlbnQuZGF0YSwgJycpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC52YWx1ZSA9IHZhbHVlO1xuICAgICAgICB0aGlzLmNvbnRyb2wuY29udHJvbC5zZXRWYWx1ZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAndmFsdWUnLCB2YWx1ZSk7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9XG59Il19
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export * from './char-input.directive';
|
|
2
|
+
export * from './numeric-input.directive';
|
|
3
|
+
export * from './mask.directive';
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkL3NyYy9saWIvZGlyZWN0aXZlL2luZGV4LmFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2hhci1pbnB1dC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9udW1lcmljLWlucHV0LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL21hc2suZGlyZWN0aXZlJzsiXX0=
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { Directive, Input } from '@angular/core';
|
|
2
|
+
import { NgControl } from '@angular/forms';
|
|
3
|
+
import { valueToFormat, unmaskValue } from './mask';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class MaskDirective {
|
|
6
|
+
injector;
|
|
7
|
+
appMask;
|
|
8
|
+
control;
|
|
9
|
+
_lastMaskedValue = '';
|
|
10
|
+
constructor(injector) {
|
|
11
|
+
this.injector = injector;
|
|
12
|
+
}
|
|
13
|
+
ngOnInit() {
|
|
14
|
+
this.control = this.injector.get(NgControl);
|
|
15
|
+
if (!this.control || !this.control.valueAccessor) {
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
const originalWriteVal = this.control.valueAccessor.writeValue.bind(this.control.valueAccessor);
|
|
19
|
+
this.control.valueAccessor.writeValue = (val) => originalWriteVal(this._maskValue(val));
|
|
20
|
+
const originalChange = this.control.valueAccessor['onChange'].bind(this.control.valueAccessor);
|
|
21
|
+
this.control.valueAccessor.registerOnChange((val) => originalChange(this._unmaskValue(val)));
|
|
22
|
+
this._setVal(this._maskValue(this.control.value));
|
|
23
|
+
}
|
|
24
|
+
_maskValue(val) {
|
|
25
|
+
if (!this.appMask || val === this._lastMaskedValue) {
|
|
26
|
+
return val;
|
|
27
|
+
}
|
|
28
|
+
if (val == null)
|
|
29
|
+
val = "";
|
|
30
|
+
const maskedVal = this._lastMaskedValue =
|
|
31
|
+
valueToFormat(val, this.appMask, this._lastMaskedValue.length > val.length, this._lastMaskedValue);
|
|
32
|
+
return maskedVal;
|
|
33
|
+
}
|
|
34
|
+
_unmaskValue(val) {
|
|
35
|
+
const maskedVal = this._maskValue(val);
|
|
36
|
+
const unmaskedVal = unmaskValue(maskedVal);
|
|
37
|
+
if (maskedVal !== val) {
|
|
38
|
+
this._setVal(maskedVal);
|
|
39
|
+
}
|
|
40
|
+
return maskedVal ? unmaskedVal : '';
|
|
41
|
+
}
|
|
42
|
+
_setVal(val) {
|
|
43
|
+
if (this.control.control) {
|
|
44
|
+
this.control.control.setValue(val, { emitEvent: false });
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MaskDirective, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive });
|
|
48
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: MaskDirective, selector: "[appMask]", inputs: { appMask: "appMask" }, ngImport: i0 });
|
|
49
|
+
}
|
|
50
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MaskDirective, decorators: [{
|
|
51
|
+
type: Directive,
|
|
52
|
+
args: [{
|
|
53
|
+
selector: '[appMask]',
|
|
54
|
+
}]
|
|
55
|
+
}], ctorParameters: () => [{ type: i0.Injector }], propDecorators: { appMask: [{
|
|
56
|
+
type: Input
|
|
57
|
+
}] } });
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFzay5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQvc3JjL2xpYi9kaXJlY3RpdmUvbWFzay5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBWSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbkUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNDLE9BQU8sRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLE1BQU0sUUFBUSxDQUFDOztBQUtwRCxNQUFNLE9BQU8sYUFBYTtJQVFWO0lBTkgsT0FBTyxDQUFTO0lBRWpCLE9BQU8sQ0FBWTtJQUNuQixnQkFBZ0IsR0FBRyxFQUFFLENBQUM7SUFFOUIsWUFDWSxRQUFrQjtRQUFsQixhQUFRLEdBQVIsUUFBUSxDQUFVO0lBQzFCLENBQUM7SUFFTCxRQUFRO1FBQ0osSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUU1QyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDL0MsT0FBTztRQUNYLENBQUM7UUFFRCxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNoRyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxVQUFVLEdBQUcsQ0FBQyxHQUFRLEVBQUUsRUFBRSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUU3RixNQUFNLGNBQWMsR0FBUyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN0RyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLEdBQVEsRUFBRSxFQUFFLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRWxHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVPLFVBQVUsQ0FBQyxHQUFXO1FBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLEdBQUcsS0FBSyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUNqRCxPQUFPLEdBQUcsQ0FBQztRQUNmLENBQUM7UUFDRCxJQUFJLEdBQUcsSUFBSSxJQUFJO1lBQUUsR0FBRyxHQUFHLEVBQUUsQ0FBQztRQUUxQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCO1lBQ25DLGFBQWEsQ0FDVCxHQUFHLEVBQ0gsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxNQUFNLEVBQ3ZELElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRS9CLE9BQU8sU0FBUyxDQUFDO0lBQ3JCLENBQUM7SUFFTyxZQUFZLENBQUMsR0FBVztRQUM1QixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZDLE1BQU0sV0FBVyxHQUFHLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUUzQyxJQUFJLFNBQVMsS0FBSyxHQUFHLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzVCLENBQUM7UUFFRCxPQUFPLFNBQVMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUVPLE9BQU8sQ0FBQyxHQUFXO1FBQ3ZCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDN0QsQ0FBQztJQUNMLENBQUM7d0dBekRRLGFBQWE7NEZBQWIsYUFBYTs7NEZBQWIsYUFBYTtrQkFIekIsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsV0FBVztpQkFDeEI7NkVBR1ksT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbmplY3RvciwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyB2YWx1ZVRvRm9ybWF0LCB1bm1hc2tWYWx1ZSB9IGZyb20gJy4vbWFzayc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2FwcE1hc2tdJyxcbn0pXG5leHBvcnQgY2xhc3MgTWFza0RpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgICBASW5wdXQoKSBhcHBNYXNrOiBzdHJpbmc7XG5cbiAgICBwcml2YXRlIGNvbnRyb2w6IE5nQ29udHJvbDtcbiAgICBwcml2YXRlIF9sYXN0TWFza2VkVmFsdWUgPSAnJztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGluamVjdG9yOiBJbmplY3RvcixcbiAgICApIHsgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMuY29udHJvbCA9IHRoaXMuaW5qZWN0b3IuZ2V0KE5nQ29udHJvbCk7XG5cbiAgICAgICAgaWYgKCF0aGlzLmNvbnRyb2wgfHwgIXRoaXMuY29udHJvbC52YWx1ZUFjY2Vzc29yKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBvcmlnaW5hbFdyaXRlVmFsID0gdGhpcy5jb250cm9sLnZhbHVlQWNjZXNzb3Iud3JpdGVWYWx1ZS5iaW5kKHRoaXMuY29udHJvbC52YWx1ZUFjY2Vzc29yKTtcbiAgICAgICAgdGhpcy5jb250cm9sLnZhbHVlQWNjZXNzb3Iud3JpdGVWYWx1ZSA9ICh2YWw6IGFueSkgPT4gb3JpZ2luYWxXcml0ZVZhbCh0aGlzLl9tYXNrVmFsdWUodmFsKSk7XG5cbiAgICAgICAgY29uc3Qgb3JpZ2luYWxDaGFuZ2UgPSAoPGFueT50aGlzLmNvbnRyb2wudmFsdWVBY2Nlc3NvcilbJ29uQ2hhbmdlJ10uYmluZCh0aGlzLmNvbnRyb2wudmFsdWVBY2Nlc3Nvcik7XG4gICAgICAgIHRoaXMuY29udHJvbC52YWx1ZUFjY2Vzc29yLnJlZ2lzdGVyT25DaGFuZ2UoKHZhbDogYW55KSA9PiBvcmlnaW5hbENoYW5nZSh0aGlzLl91bm1hc2tWYWx1ZSh2YWwpKSk7XG5cbiAgICAgICAgdGhpcy5fc2V0VmFsKHRoaXMuX21hc2tWYWx1ZSh0aGlzLmNvbnRyb2wudmFsdWUpKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9tYXNrVmFsdWUodmFsOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBpZiAoIXRoaXMuYXBwTWFzayB8fCB2YWwgPT09IHRoaXMuX2xhc3RNYXNrZWRWYWx1ZSkge1xuICAgICAgICAgICAgcmV0dXJuIHZhbDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodmFsID09IG51bGwpIHZhbCA9IFwiXCI7XG5cbiAgICAgICAgY29uc3QgbWFza2VkVmFsID0gdGhpcy5fbGFzdE1hc2tlZFZhbHVlID1cbiAgICAgICAgICAgIHZhbHVlVG9Gb3JtYXQoXG4gICAgICAgICAgICAgICAgdmFsLFxuICAgICAgICAgICAgICAgIHRoaXMuYXBwTWFzaywgdGhpcy5fbGFzdE1hc2tlZFZhbHVlLmxlbmd0aCA+IHZhbC5sZW5ndGgsXG4gICAgICAgICAgICAgICAgdGhpcy5fbGFzdE1hc2tlZFZhbHVlKTtcblxuICAgICAgICByZXR1cm4gbWFza2VkVmFsO1xuICAgIH1cblxuICAgIHByaXZhdGUgX3VubWFza1ZhbHVlKHZhbDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgbWFza2VkVmFsID0gdGhpcy5fbWFza1ZhbHVlKHZhbCk7XG4gICAgICAgIGNvbnN0IHVubWFza2VkVmFsID0gdW5tYXNrVmFsdWUobWFza2VkVmFsKTtcblxuICAgICAgICBpZiAobWFza2VkVmFsICE9PSB2YWwpIHtcbiAgICAgICAgICAgIHRoaXMuX3NldFZhbChtYXNrZWRWYWwpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG1hc2tlZFZhbCA/IHVubWFza2VkVmFsIDogJyc7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfc2V0VmFsKHZhbDogc3RyaW5nKSB7XG4gICAgICAgIGlmICh0aGlzLmNvbnRyb2wuY29udHJvbCkge1xuICAgICAgICAgICAgdGhpcy5jb250cm9sLmNvbnRyb2wuc2V0VmFsdWUodmFsLCB7IGVtaXRFdmVudDogZmFsc2UgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbn0iXX0=
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
const _formatToRegExp = {
|
|
2
|
+
'0': /[0-9]/, 'a': /[a-z]/, 'A': /[A-Z]/, 'B': /[a-zA-Z]/,
|
|
3
|
+
};
|
|
4
|
+
const _allFormatsStr = '(' +
|
|
5
|
+
Object.keys(_formatToRegExp)
|
|
6
|
+
.map(key => _formatToRegExp[key].toString())
|
|
7
|
+
.map(regexStr => regexStr.substr(1, regexStr.length - 2))
|
|
8
|
+
.join('|')
|
|
9
|
+
+ ')';
|
|
10
|
+
const _allFormatsGlobal = getAllFormatRegexp('g');
|
|
11
|
+
/**
|
|
12
|
+
* Apply format to a value string
|
|
13
|
+
*
|
|
14
|
+
* Format can be constructed from next symbols:
|
|
15
|
+
* - '0': /[0-9]/,
|
|
16
|
+
* - 'a': /[a-z]/,
|
|
17
|
+
* - 'A': /[A-Z]/,
|
|
18
|
+
* - 'B': /[a-zA-Z]/
|
|
19
|
+
*
|
|
20
|
+
* Example: 'AAA-00BB-aaaa'
|
|
21
|
+
* will accept 'COD-12Rt-efww'
|
|
22
|
+
*
|
|
23
|
+
* @param value Current value
|
|
24
|
+
* @param format Format
|
|
25
|
+
* @param goingBack Indicates if change was done by BackSpace
|
|
26
|
+
* @param prevValue Pass to precisely detect formatter chars
|
|
27
|
+
*/
|
|
28
|
+
export function valueToFormat(value, format, goingBack = false, prevValue) {
|
|
29
|
+
let maskedValue = '';
|
|
30
|
+
const unmaskedValue = unmaskValue(value);
|
|
31
|
+
const isLastCharFormatter = !getAllFormatRegexp().test(value[value.length - 1]);
|
|
32
|
+
const isPrevLastCharFormatter = prevValue && !getAllFormatRegexp().test(prevValue[prevValue.length - 1]);
|
|
33
|
+
let formatOffset = 0;
|
|
34
|
+
for (let i = 0, maxI = Math.min(unmaskedValue.length, format.length); i < maxI; ++i) {
|
|
35
|
+
const valueChar = unmaskedValue[i];
|
|
36
|
+
let formatChar = format[formatOffset + i];
|
|
37
|
+
let formatRegex = getFormatRegexp(formatChar);
|
|
38
|
+
if (formatChar && !formatRegex) {
|
|
39
|
+
maskedValue += formatChar;
|
|
40
|
+
formatChar = format[++formatOffset + i];
|
|
41
|
+
formatRegex = getFormatRegexp(formatChar);
|
|
42
|
+
}
|
|
43
|
+
if (valueChar && formatRegex) {
|
|
44
|
+
if (formatRegex.test(valueChar)) {
|
|
45
|
+
maskedValue += valueChar;
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
break;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
const nextFormatChar = format[formatOffset + i + 1];
|
|
52
|
+
const nextFormatRegex = getFormatRegexp(nextFormatChar);
|
|
53
|
+
const isLastIteration = i === maxI - 1;
|
|
54
|
+
if (isLastIteration && nextFormatChar && !nextFormatRegex) {
|
|
55
|
+
if (!isLastCharFormatter && goingBack) {
|
|
56
|
+
if (prevValue && !isPrevLastCharFormatter) {
|
|
57
|
+
continue;
|
|
58
|
+
}
|
|
59
|
+
maskedValue = maskedValue.substr(0, formatOffset + i);
|
|
60
|
+
}
|
|
61
|
+
else {
|
|
62
|
+
maskedValue += nextFormatChar;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
return maskedValue;
|
|
67
|
+
}
|
|
68
|
+
export function unmaskValue(value) {
|
|
69
|
+
const unmaskedMathes = value.match(_allFormatsGlobal);
|
|
70
|
+
return unmaskedMathes ? unmaskedMathes.join('') : '';
|
|
71
|
+
}
|
|
72
|
+
function getAllFormatRegexp(flags) {
|
|
73
|
+
return new RegExp(_allFormatsStr, flags);
|
|
74
|
+
}
|
|
75
|
+
function getFormatRegexp(formatChar) {
|
|
76
|
+
return formatChar && _formatToRegExp[formatChar] ? _formatToRegExp[formatChar] : null;
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFzay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NoYXJlZC9zcmMvbGliL2RpcmVjdGl2ZS9tYXNrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE1BQU0sZUFBZSxHQUFHO0lBQ3BCLEdBQUcsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxVQUFVO0NBQzVELENBQUM7QUFFRixNQUFNLGNBQWMsR0FBRyxHQUFHO0lBQ3RCLE1BQU0sQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDO1NBQ3ZCLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUMzQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQ3hELElBQUksQ0FBQyxHQUFHLENBQUM7TUFDWixHQUFHLENBQUM7QUFFVixNQUFNLGlCQUFpQixHQUFHLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBRWxEOzs7Ozs7Ozs7Ozs7Ozs7O0dBZ0JHO0FBQ0gsTUFBTSxVQUFVLGFBQWEsQ0FBQyxLQUFhLEVBQUUsTUFBYyxFQUFFLFNBQVMsR0FBRyxLQUFLLEVBQUUsU0FBa0I7SUFDOUYsSUFBSSxXQUFXLEdBQUcsRUFBRSxDQUFDO0lBQ3JCLE1BQU0sYUFBYSxHQUFHLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6QyxNQUFNLG1CQUFtQixHQUFHLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNoRixNQUFNLHVCQUF1QixHQUFHLFNBQVMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFFekcsSUFBSSxZQUFZLEdBQUcsQ0FBQyxDQUFDO0lBQ3JCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsR0FBRyxJQUFJLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQztRQUNsRixNQUFNLFNBQVMsR0FBRyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkMsSUFBSSxVQUFVLEdBQUcsTUFBTSxDQUFDLFlBQVksR0FBRyxDQUFDLENBQUMsQ0FBQztRQUMxQyxJQUFJLFdBQVcsR0FBRyxlQUFlLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFOUMsSUFBSSxVQUFVLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUM3QixXQUFXLElBQUksVUFBVSxDQUFDO1lBQzFCLFVBQVUsR0FBRyxNQUFNLENBQUMsRUFBRSxZQUFZLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDeEMsV0FBVyxHQUFHLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUM5QyxDQUFDO1FBRUQsSUFBSSxTQUFTLElBQUksV0FBVyxFQUFFLENBQUM7WUFDM0IsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7Z0JBQzlCLFdBQVcsSUFBSSxTQUFTLENBQUM7WUFDN0IsQ0FBQztpQkFBTSxDQUFDO2dCQUNKLE1BQU07WUFDVixDQUFDO1FBQ0wsQ0FBQztRQUVELE1BQU0sY0FBYyxHQUFHLE1BQU0sQ0FBQyxZQUFZLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ3BELE1BQU0sZUFBZSxHQUFHLGVBQWUsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN4RCxNQUFNLGVBQWUsR0FBRyxDQUFDLEtBQUssSUFBSSxHQUFHLENBQUMsQ0FBQztRQUV2QyxJQUFJLGVBQWUsSUFBSSxjQUFjLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUN4RCxJQUFJLENBQUMsbUJBQW1CLElBQUksU0FBUyxFQUFFLENBQUM7Z0JBQ3BDLElBQUksU0FBUyxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztvQkFDeEMsU0FBUztnQkFDYixDQUFDO2dCQUNELFdBQVcsR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxZQUFZLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDMUQsQ0FBQztpQkFBTSxDQUFDO2dCQUNKLFdBQVcsSUFBSSxjQUFjLENBQUM7WUFDbEMsQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDO0lBRUQsT0FBTyxXQUFXLENBQUM7QUFDdkIsQ0FBQztBQUVELE1BQU0sVUFBVSxXQUFXLENBQUMsS0FBYTtJQUNyQyxNQUFNLGNBQWMsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDdEQsT0FBTyxjQUFjLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztBQUN6RCxDQUFDO0FBRUQsU0FBUyxrQkFBa0IsQ0FBQyxLQUFjO0lBQ3RDLE9BQU8sSUFBSSxNQUFNLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FBQyxDQUFDO0FBQzdDLENBQUM7QUFFRCxTQUFTLGVBQWUsQ0FBQyxVQUFrQjtJQUN2QyxPQUFPLFVBQVUsSUFBSSxlQUFlLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0FBQzFGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJcbmNvbnN0IF9mb3JtYXRUb1JlZ0V4cCA9IHtcbiAgICAnMCc6IC9bMC05XS8sICdhJzogL1thLXpdLywgJ0EnOiAvW0EtWl0vLCAnQic6IC9bYS16QS1aXS8sXG59O1xuXG5jb25zdCBfYWxsRm9ybWF0c1N0ciA9ICcoJyArXG4gICAgT2JqZWN0LmtleXMoX2Zvcm1hdFRvUmVnRXhwKVxuICAgICAgICAubWFwKGtleSA9PiBfZm9ybWF0VG9SZWdFeHBba2V5XS50b1N0cmluZygpKVxuICAgICAgICAubWFwKHJlZ2V4U3RyID0+IHJlZ2V4U3RyLnN1YnN0cigxLCByZWdleFN0ci5sZW5ndGggLSAyKSlcbiAgICAgICAgLmpvaW4oJ3wnKVxuICAgICsgJyknO1xuXG5jb25zdCBfYWxsRm9ybWF0c0dsb2JhbCA9IGdldEFsbEZvcm1hdFJlZ2V4cCgnZycpO1xuXG4vKipcbiAqIEFwcGx5IGZvcm1hdCB0byBhIHZhbHVlIHN0cmluZ1xuICpcbiAqIEZvcm1hdCBjYW4gYmUgY29uc3RydWN0ZWQgZnJvbSBuZXh0IHN5bWJvbHM6XG4gKiAgLSAnMCc6IC9bMC05XS8sXG4gKiAgLSAnYSc6IC9bYS16XS8sXG4gKiAgLSAnQSc6IC9bQS1aXS8sXG4gKiAgLSAnQic6IC9bYS16QS1aXS9cbiAqXG4gKiBFeGFtcGxlOiAnQUFBLTAwQkItYWFhYSdcbiAqIHdpbGwgYWNjZXB0ICdDT0QtMTJSdC1lZnd3J1xuICpcbiAqIEBwYXJhbSB2YWx1ZSBDdXJyZW50IHZhbHVlXG4gKiBAcGFyYW0gZm9ybWF0IEZvcm1hdFxuICogQHBhcmFtIGdvaW5nQmFjayBJbmRpY2F0ZXMgaWYgY2hhbmdlIHdhcyBkb25lIGJ5IEJhY2tTcGFjZVxuICogQHBhcmFtIHByZXZWYWx1ZSBQYXNzIHRvIHByZWNpc2VseSBkZXRlY3QgZm9ybWF0dGVyIGNoYXJzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB2YWx1ZVRvRm9ybWF0KHZhbHVlOiBzdHJpbmcsIGZvcm1hdDogc3RyaW5nLCBnb2luZ0JhY2sgPSBmYWxzZSwgcHJldlZhbHVlPzogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBsZXQgbWFza2VkVmFsdWUgPSAnJztcbiAgICBjb25zdCB1bm1hc2tlZFZhbHVlID0gdW5tYXNrVmFsdWUodmFsdWUpO1xuICAgIGNvbnN0IGlzTGFzdENoYXJGb3JtYXR0ZXIgPSAhZ2V0QWxsRm9ybWF0UmVnZXhwKCkudGVzdCh2YWx1ZVt2YWx1ZS5sZW5ndGggLSAxXSk7XG4gICAgY29uc3QgaXNQcmV2TGFzdENoYXJGb3JtYXR0ZXIgPSBwcmV2VmFsdWUgJiYgIWdldEFsbEZvcm1hdFJlZ2V4cCgpLnRlc3QocHJldlZhbHVlW3ByZXZWYWx1ZS5sZW5ndGggLSAxXSk7XG5cbiAgICBsZXQgZm9ybWF0T2Zmc2V0ID0gMDtcbiAgICBmb3IgKGxldCBpID0gMCwgbWF4SSA9IE1hdGgubWluKHVubWFza2VkVmFsdWUubGVuZ3RoLCBmb3JtYXQubGVuZ3RoKTsgaSA8IG1heEk7ICsraSkge1xuICAgICAgICBjb25zdCB2YWx1ZUNoYXIgPSB1bm1hc2tlZFZhbHVlW2ldO1xuICAgICAgICBsZXQgZm9ybWF0Q2hhciA9IGZvcm1hdFtmb3JtYXRPZmZzZXQgKyBpXTtcbiAgICAgICAgbGV0IGZvcm1hdFJlZ2V4ID0gZ2V0Rm9ybWF0UmVnZXhwKGZvcm1hdENoYXIpO1xuXG4gICAgICAgIGlmIChmb3JtYXRDaGFyICYmICFmb3JtYXRSZWdleCkge1xuICAgICAgICAgICAgbWFza2VkVmFsdWUgKz0gZm9ybWF0Q2hhcjtcbiAgICAgICAgICAgIGZvcm1hdENoYXIgPSBmb3JtYXRbKytmb3JtYXRPZmZzZXQgKyBpXTtcbiAgICAgICAgICAgIGZvcm1hdFJlZ2V4ID0gZ2V0Rm9ybWF0UmVnZXhwKGZvcm1hdENoYXIpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHZhbHVlQ2hhciAmJiBmb3JtYXRSZWdleCkge1xuICAgICAgICAgICAgaWYgKGZvcm1hdFJlZ2V4LnRlc3QodmFsdWVDaGFyKSkge1xuICAgICAgICAgICAgICAgIG1hc2tlZFZhbHVlICs9IHZhbHVlQ2hhcjtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBuZXh0Rm9ybWF0Q2hhciA9IGZvcm1hdFtmb3JtYXRPZmZzZXQgKyBpICsgMV07XG4gICAgICAgIGNvbnN0IG5leHRGb3JtYXRSZWdleCA9IGdldEZvcm1hdFJlZ2V4cChuZXh0Rm9ybWF0Q2hhcik7XG4gICAgICAgIGNvbnN0IGlzTGFzdEl0ZXJhdGlvbiA9IGkgPT09IG1heEkgLSAxO1xuXG4gICAgICAgIGlmIChpc0xhc3RJdGVyYXRpb24gJiYgbmV4dEZvcm1hdENoYXIgJiYgIW5leHRGb3JtYXRSZWdleCkge1xuICAgICAgICAgICAgaWYgKCFpc0xhc3RDaGFyRm9ybWF0dGVyICYmIGdvaW5nQmFjaykge1xuICAgICAgICAgICAgICAgIGlmIChwcmV2VmFsdWUgJiYgIWlzUHJldkxhc3RDaGFyRm9ybWF0dGVyKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBtYXNrZWRWYWx1ZSA9IG1hc2tlZFZhbHVlLnN1YnN0cigwLCBmb3JtYXRPZmZzZXQgKyBpKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgbWFza2VkVmFsdWUgKz0gbmV4dEZvcm1hdENoYXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gbWFza2VkVmFsdWU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1bm1hc2tWYWx1ZSh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCB1bm1hc2tlZE1hdGhlcyA9IHZhbHVlLm1hdGNoKF9hbGxGb3JtYXRzR2xvYmFsKTtcbiAgICByZXR1cm4gdW5tYXNrZWRNYXRoZXMgPyB1bm1hc2tlZE1hdGhlcy5qb2luKCcnKSA6ICcnO1xufVxuXG5mdW5jdGlvbiBnZXRBbGxGb3JtYXRSZWdleHAoZmxhZ3M/OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gbmV3IFJlZ0V4cChfYWxsRm9ybWF0c1N0ciwgZmxhZ3MpO1xufVxuXG5mdW5jdGlvbiBnZXRGb3JtYXRSZWdleHAoZm9ybWF0Q2hhcjogc3RyaW5nKTogUmVnRXhwIHwgbnVsbCB7XG4gICAgcmV0dXJuIGZvcm1hdENoYXIgJiYgX2Zvcm1hdFRvUmVnRXhwW2Zvcm1hdENoYXJdID8gX2Zvcm1hdFRvUmVnRXhwW2Zvcm1hdENoYXJdIDogbnVsbDtcbn0iXX0=
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { Directive, HostListener } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/forms";
|
|
4
|
+
export class EnglishNumberInputDirective {
|
|
5
|
+
el;
|
|
6
|
+
control;
|
|
7
|
+
renderer;
|
|
8
|
+
constructor(el, control, renderer) {
|
|
9
|
+
this.el = el;
|
|
10
|
+
this.control = control;
|
|
11
|
+
this.renderer = renderer;
|
|
12
|
+
}
|
|
13
|
+
onEvent($event) {
|
|
14
|
+
var persianNumbers = [/۰/g, /۱/g, /۲/g, /۳/g, /۴/g, /۵/g, /۶/g, /۷/g, /۸/g, /۹/g], arabicNumbers = [/٠/g, /١/g, /٢/g, /٣/g, /٤/g, /٥/g, /٦/g, /٧/g, /٨/g, /٩/g], fixNumbers = function (str) {
|
|
15
|
+
if (typeof str === 'string') {
|
|
16
|
+
for (var i = 0; i < 10; i++) {
|
|
17
|
+
str = str.replace(persianNumbers[i], i).replace(arabicNumbers[i], i);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
return str;
|
|
21
|
+
};
|
|
22
|
+
const numberPattern = /^\d+$/;
|
|
23
|
+
let value = fixNumbers(this.el.nativeElement.value);
|
|
24
|
+
if (!numberPattern.test(value)) {
|
|
25
|
+
value = value.replaceAll($event.data, '');
|
|
26
|
+
}
|
|
27
|
+
this.el.nativeElement.value = value;
|
|
28
|
+
this.control.control.setValue(value);
|
|
29
|
+
this.renderer.setProperty(this.el.nativeElement, 'value', value);
|
|
30
|
+
return value;
|
|
31
|
+
}
|
|
32
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EnglishNumberInputDirective, deps: [{ token: i0.ElementRef }, { token: i1.NgControl }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
33
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: EnglishNumberInputDirective, selector: "[englishNumberInput]", host: { listeners: { "input": "onEvent($event)" } }, ngImport: i0 });
|
|
34
|
+
}
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EnglishNumberInputDirective, decorators: [{
|
|
36
|
+
type: Directive,
|
|
37
|
+
args: [{
|
|
38
|
+
selector: '[englishNumberInput]',
|
|
39
|
+
}]
|
|
40
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.NgControl }, { type: i0.Renderer2 }], propDecorators: { onEvent: [{
|
|
41
|
+
type: HostListener,
|
|
42
|
+
args: ['input', ['$event']]
|
|
43
|
+
}] } });
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtZXJpYy1pbnB1dC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQvc3JjL2xpYi9kaXJlY3RpdmUvbnVtZXJpYy1pbnB1dC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQW9CLE1BQU0sZUFBZSxDQUFDOzs7QUFNdEYsTUFBTSxPQUFPLDJCQUEyQjtJQUNoQjtJQUF3QjtJQUEyQjtJQUF2RSxZQUFvQixFQUFjLEVBQVUsT0FBa0IsRUFBUyxRQUFtQjtRQUF0RSxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQVUsWUFBTyxHQUFQLE9BQU8sQ0FBVztRQUFTLGFBQVEsR0FBUixRQUFRLENBQVc7SUFBSSxDQUFDO0lBRTVELE9BQU8sQ0FBQyxNQUFrQjtRQUN6RCxJQUFJLGNBQWMsR0FBRyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxFQUM3RSxhQUFhLEdBQUcsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsRUFDNUUsVUFBVSxHQUFHLFVBQVUsR0FBRztZQUN0QixJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsRUFBRSxDQUFDO2dCQUMxQixLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7b0JBQzFCLEdBQUcsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO2dCQUN6RSxDQUFDO1lBQ0wsQ0FBQztZQUNELE9BQU8sR0FBRyxDQUFDO1FBQ2YsQ0FBQyxDQUFDO1FBQ04sTUFBTSxhQUFhLEdBQUcsT0FBTyxDQUFDO1FBQzlCLElBQUksS0FBSyxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVwRCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQzdCLEtBQUssR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDOUMsQ0FBQztRQUNELElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDcEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNqRSxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO3dHQXhCUSwyQkFBMkI7NEZBQTNCLDJCQUEyQjs7NEZBQTNCLDJCQUEyQjtrQkFIdkMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsc0JBQXNCO2lCQUNuQzsrSEFJc0MsT0FBTztzQkFBekMsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tlbmdsaXNoTnVtYmVySW5wdXRdJyxcbn0pXG5leHBvcnQgY2xhc3MgRW5nbGlzaE51bWJlcklucHV0RGlyZWN0aXZlIHtcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsOiBFbGVtZW50UmVmLCBwcml2YXRlIGNvbnRyb2w6IE5nQ29udHJvbCwgcHVibGljIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHsgfVxuXG4gICAgQEhvc3RMaXN0ZW5lcignaW5wdXQnLCBbJyRldmVudCddKSBvbkV2ZW50KCRldmVudDogSW5wdXRFdmVudCkge1xuICAgICAgICB2YXIgcGVyc2lhbk51bWJlcnMgPSBbL9uwL2csIC/bsS9nLCAv27IvZywgL9uzL2csIC/btC9nLCAv27UvZywgL9u2L2csIC/bty9nLCAv27gvZywgL9u5L2ddLFxuICAgICAgICAgICAgYXJhYmljTnVtYmVycyA9IFsv2aAvZywgL9mhL2csIC/Zoi9nLCAv2aMvZywgL9mkL2csIC/ZpS9nLCAv2aYvZywgL9mnL2csIC/ZqC9nLCAv2akvZ10sXG4gICAgICAgICAgICBmaXhOdW1iZXJzID0gZnVuY3Rpb24gKHN0cikge1xuICAgICAgICAgICAgICAgIGlmICh0eXBlb2Ygc3RyID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IDEwOyBpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0ciA9IHN0ci5yZXBsYWNlKHBlcnNpYW5OdW1iZXJzW2ldLCBpKS5yZXBsYWNlKGFyYWJpY051bWJlcnNbaV0sIGkpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiBzdHI7XG4gICAgICAgICAgICB9O1xuICAgICAgICBjb25zdCBudW1iZXJQYXR0ZXJuID0gL15cXGQrJC87XG4gICAgICAgIGxldCB2YWx1ZSA9IGZpeE51bWJlcnModGhpcy5lbC5uYXRpdmVFbGVtZW50LnZhbHVlKTtcblxuICAgICAgICBpZiAoIW51bWJlclBhdHRlcm4udGVzdCh2YWx1ZSkpIHtcbiAgICAgICAgICAgIHZhbHVlID0gdmFsdWUucmVwbGFjZUFsbCgkZXZlbnQuZGF0YSwgJycpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC52YWx1ZSA9IHZhbHVlO1xuICAgICAgICB0aGlzLmNvbnRyb2wuY29udHJvbC5zZXRWYWx1ZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAndmFsdWUnLCB2YWx1ZSk7XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9XG59Il19
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/router";
|
|
4
|
+
export class AuthGuard {
|
|
5
|
+
_router;
|
|
6
|
+
constructor(_router) {
|
|
7
|
+
this._router = _router;
|
|
8
|
+
}
|
|
9
|
+
canActivate(route, state) {
|
|
10
|
+
if (sessionStorage.getItem('userInfo')) {
|
|
11
|
+
return true;
|
|
12
|
+
}
|
|
13
|
+
this._router.navigate(['/auth']);
|
|
14
|
+
return false;
|
|
15
|
+
}
|
|
16
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AuthGuard, deps: [{ token: i1.Router }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
17
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AuthGuard, providedIn: 'root' });
|
|
18
|
+
}
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AuthGuard, decorators: [{
|
|
20
|
+
type: Injectable,
|
|
21
|
+
args: [{
|
|
22
|
+
providedIn: 'root'
|
|
23
|
+
}]
|
|
24
|
+
}], ctorParameters: () => [{ type: i1.Router }] });
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5ndWFyZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NoYXJlZC9zcmMvbGliL2d1YXJkL2F1dGguZ3VhcmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBTzNDLE1BQU0sT0FBTyxTQUFTO0lBQ0U7SUFBcEIsWUFBb0IsT0FBZTtRQUFmLFlBQU8sR0FBUCxPQUFPLENBQVE7SUFBSSxDQUFDO0lBQ3hDLFdBQVcsQ0FDUCxLQUE2QixFQUM3QixLQUEwQjtRQUUxQixJQUFJLGNBQWMsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztZQUNyQyxPQUFPLElBQUksQ0FBQTtRQUNmLENBQUM7UUFDRCxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDakMsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQzt3R0FYUSxTQUFTOzRHQUFULFNBQVMsY0FGTixNQUFNOzs0RkFFVCxTQUFTO2tCQUhyQixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENhbkFjdGl2YXRlLCBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LCBSb3V0ZXJTdGF0ZVNuYXBzaG90LCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEF1dGhHdWFyZCBpbXBsZW1lbnRzIENhbkFjdGl2YXRlIHtcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9yb3V0ZXI6IFJvdXRlcikgeyB9XG4gICAgY2FuQWN0aXZhdGUoXG4gICAgICAgIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVNuYXBzaG90LFxuICAgICAgICBzdGF0ZTogUm91dGVyU3RhdGVTbmFwc2hvdFxuICAgICk6IE9ic2VydmFibGU8Ym9vbGVhbj4gfCBQcm9taXNlPGJvb2xlYW4+IHwgYm9vbGVhbiB7XG4gICAgICAgIGlmIChzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKCd1c2VySW5mbycpKSB7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZVxuICAgICAgICB9XG4gICAgICAgIHRoaXMuX3JvdXRlci5uYXZpZ2F0ZShbJy9hdXRoJ10pO1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './auth.guard';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkL3NyYy9saWIvZ3VhcmQvaW5kZXguYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hdXRoLmd1YXJkJzsiXX0=
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Component } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/router";
|
|
4
|
+
export class BlankLayout {
|
|
5
|
+
constructor() { }
|
|
6
|
+
ngOnInit() { }
|
|
7
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BlankLayout, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
8
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: BlankLayout, selector: "ng-component", ngImport: i0, template: "<div class=\"w-full h-full\">\n <router-outlet></router-outlet>\n</div>", dependencies: [{ kind: "directive", type: i1.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }] });
|
|
9
|
+
}
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: BlankLayout, decorators: [{
|
|
11
|
+
type: Component,
|
|
12
|
+
args: [{ template: "<div class=\"w-full h-full\">\n <router-outlet></router-outlet>\n</div>" }]
|
|
13
|
+
}], ctorParameters: () => [] });
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxhbmsubGF5b3V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkL3NyYy9saWIvbGF5b3V0cy9ibGFuay9ibGFuay5sYXlvdXQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWQvc3JjL2xpYi9sYXlvdXRzL2JsYW5rL2JsYW5rLmxheW91dC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7OztBQUtsRCxNQUFNLE9BQU8sV0FBVztJQUNwQixnQkFBZ0IsQ0FBQztJQUVqQixRQUFRLEtBQVcsQ0FBQzt3R0FIWCxXQUFXOzRGQUFYLFdBQVcsb0RDTHhCLDRFQUVNOzs0RkRHTyxXQUFXO2tCQUh2QixTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgdGVtcGxhdGVVcmw6ICcuL2JsYW5rLmxheW91dC5odG1sJyxcbn0pXG5leHBvcnQgY2xhc3MgQmxhbmtMYXlvdXQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHsgfVxufVxuIiwiPGRpdiBjbGFzcz1cInctZnVsbCBoLWZ1bGxcIj5cbiAgICA8cm91dGVyLW91dGxldD48L3JvdXRlci1vdXRsZXQ+XG48L2Rpdj4iXX0=
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from './master/master.layout';
|
|
2
|
+
export * from './blank/blank.layout';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkL3NyYy9saWIvbGF5b3V0cy9pbmRleC5hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHNCQUFzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9tYXN0ZXIvbWFzdGVyLmxheW91dCc7XG5leHBvcnQgKiBmcm9tICcuL2JsYW5rL2JsYW5rLmxheW91dCc7Il19
|