@loxia/rijwegen 18.0.3-202512111148 → 18.0.3-202512120759
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/loxia-rijwegen.mjs +38 -24
- package/fesm2022/loxia-rijwegen.mjs.map +1 -1
- package/index.d.ts +225 -5
- package/package.json +3 -3
- package/lib/jsjavautil.d.ts +0 -5
- package/lib/rijwegen.module.d.ts +0 -6
- package/lib/rpe.d.ts +0 -167
- package/lib/signaleringsbeeld-svg-utility.service.d.ts +0 -39
- package/lib/storing-symbool-util.d.ts +0 -8
- package/public-api.d.ts +0 -4
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Injectable, NgModule } from '@angular/core';
|
|
2
|
+
import { InjectionToken, Inject, Injectable, NgModule } from '@angular/core';
|
|
3
3
|
|
|
4
4
|
class StoringSymboolUtil {
|
|
5
5
|
static zetClassOpStoringSymbolenMetMap(wisselPuicEnStoringKaderPuic) {
|
|
@@ -41,6 +41,11 @@ class StoringSymboolUtil {
|
|
|
41
41
|
}
|
|
42
42
|
}
|
|
43
43
|
|
|
44
|
+
const DocumentToken = new InjectionToken('Document');
|
|
45
|
+
function documentProvider() {
|
|
46
|
+
return document;
|
|
47
|
+
}
|
|
48
|
+
|
|
44
49
|
const SVG_NS = 'http://www.w3.org/2000/svg';
|
|
45
50
|
const COLOR_INDEX_WIT = 'ci0';
|
|
46
51
|
const COLOR_INDEX_BLAUW = 'ci1';
|
|
@@ -50,6 +55,9 @@ const COLOR_INDEX_BLAUW2 = 'ci17';
|
|
|
50
55
|
const COLOR_INDEX_OKER = 'ci62';
|
|
51
56
|
const COLOR_INDEX_GRIJS = 'ci144';
|
|
52
57
|
class SignaleringsbeeldSvgUtilityService {
|
|
58
|
+
constructor(document) {
|
|
59
|
+
this.document = document;
|
|
60
|
+
}
|
|
53
61
|
static hideElement(elementNode) {
|
|
54
62
|
elementNode.style.display = 'none';
|
|
55
63
|
}
|
|
@@ -62,20 +70,21 @@ class SignaleringsbeeldSvgUtilityService {
|
|
|
62
70
|
this.maakOngewensteTekstenOnzichtbaar();
|
|
63
71
|
}
|
|
64
72
|
maakPerSvgOngewensteElementenOnzichtbaar() {
|
|
65
|
-
const childnodes = Array.from(document.getElementsByTagNameNS(SVG_NS, 'g'));
|
|
73
|
+
const childnodes = Array.from(this.document.getElementsByTagNameNS(SVG_NS, 'g'));
|
|
66
74
|
childnodes.filter(item => item.id === 'symbols')
|
|
67
75
|
.forEach(item => this.maakWitteLijnenBinnenSymbolenOnzichtbaar(item));
|
|
68
76
|
}
|
|
69
77
|
addSvgDefs() {
|
|
70
|
-
const
|
|
78
|
+
const svgContainer = this.document.getElementById('svgContainer');
|
|
79
|
+
const childnodes = svgContainer.children;
|
|
71
80
|
if (childnodes.length !== 1) {
|
|
72
81
|
return;
|
|
73
82
|
}
|
|
74
83
|
const svg = childnodes[0];
|
|
75
|
-
const defs = document.createElementNS(SVG_NS, 'defs');
|
|
84
|
+
const defs = this.document.createElementNS(SVG_NS, 'defs');
|
|
76
85
|
const pattern = this.createSvgDefsPattern();
|
|
77
|
-
pattern.appendChild(document.createComment('Two instances of the same checker, only positioned apart on the `x` and `y` axis'));
|
|
78
|
-
pattern.appendChild(document.createComment('We will define the `fill` in the CSS for flexible use'));
|
|
86
|
+
pattern.appendChild(this.document.createComment('Two instances of the same checker, only positioned apart on the `x` and `y` axis'));
|
|
87
|
+
pattern.appendChild(this.document.createComment('We will define the `fill` in the CSS for flexible use'));
|
|
79
88
|
pattern.appendChild(this.createPatternRect('checker1', '0', '2', '2', '0'));
|
|
80
89
|
pattern.appendChild(this.createPatternRect('checker1', '2', '2', '2', '2'));
|
|
81
90
|
pattern.appendChild(this.createPatternRect('checker2', '0', '2', '2', '2'));
|
|
@@ -84,7 +93,7 @@ class SignaleringsbeeldSvgUtilityService {
|
|
|
84
93
|
svg.appendChild(defs);
|
|
85
94
|
}
|
|
86
95
|
createSvgDefsPattern() {
|
|
87
|
-
const pattern = document.createElementNS(SVG_NS, 'pattern');
|
|
96
|
+
const pattern = this.document.createElementNS(SVG_NS, 'pattern');
|
|
88
97
|
pattern.id = 'checkers';
|
|
89
98
|
pattern.setAttribute('x', '0');
|
|
90
99
|
pattern.setAttribute('y', '0');
|
|
@@ -94,7 +103,7 @@ class SignaleringsbeeldSvgUtilityService {
|
|
|
94
103
|
return pattern;
|
|
95
104
|
}
|
|
96
105
|
createPatternRect(className, x, w, h, y) {
|
|
97
|
-
const rect = document.createElementNS(SVG_NS, 'rect');
|
|
106
|
+
const rect = this.document.createElementNS(SVG_NS, 'rect');
|
|
98
107
|
rect.setAttribute('class', className);
|
|
99
108
|
rect.setAttribute('x', x);
|
|
100
109
|
rect.setAttribute('width', w);
|
|
@@ -104,7 +113,7 @@ class SignaleringsbeeldSvgUtilityService {
|
|
|
104
113
|
}
|
|
105
114
|
// Polylines & Polygonen
|
|
106
115
|
maakRodePolySymbolenOnzichtbaar() {
|
|
107
|
-
Array.from(document.querySelectorAll('polyline,polygon'))
|
|
116
|
+
Array.from(this.document.querySelectorAll('polyline,polygon'))
|
|
108
117
|
.filter(line => line.classList.contains(COLOR_INDEX_ROOD))
|
|
109
118
|
.forEach(line => SignaleringsbeeldSvgUtilityService.hideElement(line));
|
|
110
119
|
}
|
|
@@ -117,20 +126,20 @@ class SignaleringsbeeldSvgUtilityService {
|
|
|
117
126
|
}
|
|
118
127
|
}
|
|
119
128
|
maakOngewensteTekstenOnzichtbaar() {
|
|
120
|
-
const teksten = Array.from(document.getElementsByTagName('text'));
|
|
129
|
+
const teksten = Array.from(this.document.getElementsByTagName('text'));
|
|
121
130
|
teksten.filter(element => element.id !== 'nummer' && element.id !== 'tekst')
|
|
122
131
|
.forEach(element => SignaleringsbeeldSvgUtilityService.hideElement(element));
|
|
123
132
|
}
|
|
124
133
|
maakSignaleringsElementenOnzichtbaar(signaleringsElementen) {
|
|
125
134
|
signaleringsElementen.forEach(signaleringsElement => {
|
|
126
135
|
const puic = signaleringsElement.getPuic();
|
|
127
|
-
const elements = Array.from(document.querySelectorAll('#p' + puic));
|
|
136
|
+
const elements = Array.from(this.document.querySelectorAll('#p' + puic));
|
|
128
137
|
elements.forEach(element => SignaleringsbeeldSvgUtilityService.hideElement(element));
|
|
129
138
|
});
|
|
130
139
|
}
|
|
131
140
|
maakOngewensteSeindelenOnzichtbaar(seinen) {
|
|
132
141
|
seinen.filter(sein => !!sein).forEach(sein => {
|
|
133
|
-
const elements = Array.from(document.querySelectorAll('#p' + sein.getPuic()));
|
|
142
|
+
const elements = Array.from(this.document.querySelectorAll('#p' + sein.getPuic()));
|
|
134
143
|
elements.forEach((element) => this.verwerkSeinOpType(sein, element));
|
|
135
144
|
});
|
|
136
145
|
}
|
|
@@ -225,7 +234,7 @@ class SignaleringsbeeldSvgUtilityService {
|
|
|
225
234
|
}
|
|
226
235
|
}
|
|
227
236
|
createPolygon(elementNode) {
|
|
228
|
-
const poly = document.createElementNS(SVG_NS, 'polygon');
|
|
237
|
+
const poly = this.document.createElementNS(SVG_NS, 'polygon');
|
|
229
238
|
poly.setAttribute('points', elementNode.getAttribute('points'));
|
|
230
239
|
poly.setAttribute('class', elementNode.getAttribute('class'));
|
|
231
240
|
poly.setAttribute('style', 'fill:transparent');
|
|
@@ -235,13 +244,13 @@ class SignaleringsbeeldSvgUtilityService {
|
|
|
235
244
|
StoringSymboolUtil.zetClassOpStoringSymbolenMetMap(wisselPuicEnStoringSymboolPuic);
|
|
236
245
|
}
|
|
237
246
|
zetClassOpLangeText() {
|
|
238
|
-
Array.from(document.querySelectorAll('#tekst'))
|
|
247
|
+
Array.from(this.document.querySelectorAll('#tekst'))
|
|
239
248
|
.filter((t) => t.textContent.length > 2)
|
|
240
249
|
.forEach((t) => t.classList.add('largetext'));
|
|
241
250
|
}
|
|
242
251
|
zetClassOpSpoornummers(spoornummerPuics) {
|
|
243
252
|
spoornummerPuics.forEach(element => {
|
|
244
|
-
const spoornummer_elems = Array.from(document.querySelectorAll('[class=p' + element + ']'));
|
|
253
|
+
const spoornummer_elems = Array.from(this.document.querySelectorAll('[class=p' + element + ']'));
|
|
245
254
|
spoornummer_elems.forEach((spoornummer) => {
|
|
246
255
|
spoornummer.classList.add('spoornummer');
|
|
247
256
|
});
|
|
@@ -249,7 +258,7 @@ class SignaleringsbeeldSvgUtilityService {
|
|
|
249
258
|
}
|
|
250
259
|
zetClassOpRijrichtingen(seinen) {
|
|
251
260
|
for (const sein of seinen) {
|
|
252
|
-
const seinElement = document.getElementById('p' + sein.getPuic());
|
|
261
|
+
const seinElement = this.document.getElementById('p' + sein.getPuic());
|
|
253
262
|
if (seinElement) {
|
|
254
263
|
const rijrichtingElement = this.geefRijrichtingVanSein(seinElement);
|
|
255
264
|
if (rijrichtingElement && sein.isBediend()) {
|
|
@@ -274,27 +283,32 @@ class SignaleringsbeeldSvgUtilityService {
|
|
|
274
283
|
elementNode.id = 'p' + seinPuic + '_rijrichting';
|
|
275
284
|
elementNode.classList.add('rijrichting');
|
|
276
285
|
}
|
|
277
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
278
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
286
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: SignaleringsbeeldSvgUtilityService, deps: [{ token: DocumentToken }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
287
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: SignaleringsbeeldSvgUtilityService }); }
|
|
279
288
|
}
|
|
280
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
289
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: SignaleringsbeeldSvgUtilityService, decorators: [{
|
|
281
290
|
type: Injectable
|
|
282
|
-
}]
|
|
291
|
+
}], ctorParameters: () => [{ type: Document, decorators: [{
|
|
292
|
+
type: Inject,
|
|
293
|
+
args: [DocumentToken]
|
|
294
|
+
}] }] });
|
|
283
295
|
|
|
284
296
|
class RijwegenModule {
|
|
285
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
286
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
287
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
297
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: RijwegenModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
298
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: RijwegenModule }); }
|
|
299
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: RijwegenModule, providers: [
|
|
300
|
+
{ provide: DocumentToken, useFactory: documentProvider },
|
|
288
301
|
SignaleringsbeeldSvgUtilityService
|
|
289
302
|
] }); }
|
|
290
303
|
}
|
|
291
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
304
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: RijwegenModule, decorators: [{
|
|
292
305
|
type: NgModule,
|
|
293
306
|
args: [{
|
|
294
307
|
declarations: [],
|
|
295
308
|
imports: [],
|
|
296
309
|
exports: [],
|
|
297
310
|
providers: [
|
|
311
|
+
{ provide: DocumentToken, useFactory: documentProvider },
|
|
298
312
|
SignaleringsbeeldSvgUtilityService
|
|
299
313
|
]
|
|
300
314
|
}]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loxia-rijwegen.mjs","sources":["../../../projects/rijwegen/src/lib/storing-symbool-util.ts","../../../projects/rijwegen/src/lib/signaleringsbeeld-svg-utility.service.ts","../../../projects/rijwegen/src/lib/rijwegen.module.ts","../../../projects/rijwegen/src/lib/jsjavautil.ts","../../../projects/rijwegen/src/public-api.ts","../../../projects/rijwegen/src/loxia-rijwegen.ts"],"sourcesContent":["export class StoringSymboolUtil {\n\n public static zetClassOpStoringSymbolenMetMap(wisselPuicEnStoringKaderPuic: Map<string, string>) {\n wisselPuicEnStoringKaderPuic.forEach((storingskaderPuic, wisselPuic) => {\n const elements = Array.from(document.querySelectorAll('#p' + wisselPuic));\n elements.forEach((wissel) => this.setClassOpStoringSymbool(<HTMLElement>wissel, 'p' + storingskaderPuic));\n });\n }\n\n private static setClassOpStoringSymbool(wissel: HTMLElement, puic: string) {\n const storingSymbool = this.findStoringSymbool(wissel);\n\n if (storingSymbool) {\n storingSymbool.id = puic;\n storingSymbool.classList.add('storingsymbool');\n }\n }\n\n private static findStoringSymbool(wissel: HTMLElement) {\n const numberOfChildren = wissel.childNodes.length;\n let polylineCount = 0;\n\n for (let i = 0; i < numberOfChildren; i++) {\n const elementNode = (<HTMLElement>wissel.childNodes[i]);\n\n if (this.isPolyline(elementNode)) {\n polylineCount++;\n if (this.isWisselStoringSymbool(polylineCount, numberOfChildren)\n || this.isEngelsWisselStoringSymbool(polylineCount, numberOfChildren)) {\n return elementNode;\n }\n }\n }\n\n return null;\n }\n\n private static isEngelsWisselStoringSymbool(polylineCount, numberOfChildren) {\n return polylineCount === 9 && numberOfChildren === 23;\n }\n\n private static isPolyline(node) {\n return node.nodeName.toUpperCase() === 'polyline'.toUpperCase();\n }\n\n private static isWisselStoringSymbool(polylineCount, numberOfChildren) {\n return polylineCount === 6 && numberOfChildren === 15;\n }\n}\n","import { Injectable } from '@angular/core';\nimport { StoringSymboolUtil } from './storing-symbool-util';\n\nexport const SVG_NS = 'http://www.w3.org/2000/svg';\nexport const COLOR_INDEX_WIT = 'ci0';\nexport const COLOR_INDEX_BLAUW = 'ci1';\nexport const COLOR_INDEX_ROOD = 'ci3';\nexport const COLOR_INDEX_CYAN = 'ci7';\nexport const COLOR_INDEX_BLAUW2 = 'ci17';\nexport const COLOR_INDEX_OKER = 'ci62';\nexport const COLOR_INDEX_GRIJS = 'ci144';\n\n@Injectable()\nexport class SignaleringsbeeldSvgUtilityService {\n\n private static hideElement(elementNode) {\n elementNode.style.display = 'none';\n }\n\n maakOngewensteElementenOnzichtbaar(): void {\n this.maakAlgemeneElementenOnzichtbaar();\n this.maakPerSvgOngewensteElementenOnzichtbaar();\n }\n\n private maakAlgemeneElementenOnzichtbaar() {\n this.maakRodePolySymbolenOnzichtbaar();\n this.maakOngewensteTekstenOnzichtbaar();\n }\n\n maakPerSvgOngewensteElementenOnzichtbaar() {\n const childnodes = Array.from(document.getElementsByTagNameNS(SVG_NS, 'g'));\n childnodes.filter(item => item.id === 'symbols')\n .forEach(item => this.maakWitteLijnenBinnenSymbolenOnzichtbaar(item));\n }\n\n addSvgDefs() {\n const childnodes = document.getElementById('svgContainer').children;\n if (childnodes.length !== 1) {\n return;\n }\n const svg = childnodes[0];\n const defs = document.createElementNS(SVG_NS, 'defs');\n const pattern = this.createSvgDefsPattern();\n pattern.appendChild(document.createComment('Two instances of the same checker, only positioned apart on the `x` and `y` axis'));\n pattern.appendChild(document.createComment('We will define the `fill` in the CSS for flexible use'));\n pattern.appendChild(this.createPatternRect('checker1', '0', '2', '2', '0'));\n pattern.appendChild(this.createPatternRect('checker1', '2', '2', '2', '2'));\n pattern.appendChild(this.createPatternRect('checker2', '0', '2', '2', '2'));\n pattern.appendChild(this.createPatternRect('checker2', '2', '2', '2', '0'));\n defs.appendChild(pattern);\n svg.appendChild(defs);\n }\n\n private createSvgDefsPattern() {\n const pattern = document.createElementNS(SVG_NS, 'pattern');\n pattern.id = 'checkers';\n pattern.setAttribute('x', '0');\n pattern.setAttribute('y', '0');\n pattern.setAttribute('width', '4');\n pattern.setAttribute('height', '4');\n pattern.setAttribute('patternUnits', 'userSpaceOnUse');\n return pattern;\n }\n\n private createPatternRect(className, x, w, h, y) {\n const rect = document.createElementNS(SVG_NS, 'rect');\n rect.setAttribute('class', className);\n rect.setAttribute('x', x);\n rect.setAttribute('width', w);\n rect.setAttribute('height', h);\n rect.setAttribute('y', y);\n return rect;\n }\n\n // Polylines & Polygonen\n private maakRodePolySymbolenOnzichtbaar() {\n Array.from(document.querySelectorAll('polyline,polygon'))\n .filter(line => line.classList.contains(COLOR_INDEX_ROOD))\n .forEach(line => SignaleringsbeeldSvgUtilityService.hideElement(line));\n }\n\n maakWitteLijnenBinnenSymbolenOnzichtbaar(symbols: SVGElement) {\n if (symbols) {\n const symbolLijnen = Array.from(symbols.getElementsByTagName('polyline'));\n symbolLijnen\n .filter(line => line.classList.contains(COLOR_INDEX_WIT))\n .forEach(line => SignaleringsbeeldSvgUtilityService.hideElement(line)\n );\n }\n }\n\n maakOngewensteTekstenOnzichtbaar() {\n const teksten = Array.from(document.getElementsByTagName('text'));\n teksten.filter(element => element.id !== 'nummer' && element.id !== 'tekst')\n .forEach(element => SignaleringsbeeldSvgUtilityService.hideElement(element));\n }\n\n maakSignaleringsElementenOnzichtbaar(signaleringsElementen: any[]) {\n signaleringsElementen.forEach(signaleringsElement => {\n const puic = signaleringsElement.getPuic();\n const elements = Array.from(document.querySelectorAll('#p' + puic));\n elements.forEach(element => SignaleringsbeeldSvgUtilityService.hideElement(element));\n });\n }\n\n maakOngewensteSeindelenOnzichtbaar(seinen: any[]) {\n seinen.filter(sein => !!sein).forEach(sein => {\n const elements = Array.from(document.querySelectorAll('#p' + sein.getPuic()));\n elements.forEach((element) => this.verwerkSeinOpType(sein, <HTMLElement>element));\n });\n }\n\n private verwerkSeinOpType(sein, seinElement: HTMLElement) {\n if (sein.getType() === 'sb_bed_sein') {\n this.verwerkSein(seinElement, this.verwerkBedSeinPolyline);\n } else if (sein.getType() === 'sb_bed_sein_3') {\n // hide sb_bed_3 Sein: 6, 7 -> kader\n // hide rijrichting polygon\n this.verwerkSein(seinElement, this.verwerkBedSein3En3a_Ertms2_Polyline, SignaleringsbeeldSvgUtilityService.hideElement);\n } else if (sein.getType() === 'sb_bed_sein_3a') {\n // hide sb_bed_3a Sein: 6 -> kader, 7 -> richting\n this.verwerkSein(seinElement, this.verwerkBedSein3En3a_Ertms2_Polyline);\n } else if (sein.getType().startsWith('sb_fict_sein')) {\n // converteer seinElement driehoek van polyline naar polygon\n this.verwerkSein(seinElement, this.verwerkFictieveSeinenPolyline.bind(this));\n } else if (sein.getType() === 'sb_stoppl_sein') {\n this.verwerkSein(seinElement, this.verwerkStopplaatsSeinPolyline);\n } else if (sein.getType().startsWith('sb_ertms2')) {\n // mogelijk moet nog aparte afhandelijk voor sb_ertms2_sein_3 en sb_ertms2_sein_3a\n // hide kader\n this.verwerkSein(seinElement, this.verwerkErtmsSein2Polyline.bind(this));\n } else if (sein.getType().startsWith('sb_ertms12')) {\n // mogelijk moet nog aparte afhandelijk voor sb_ertms12_sein_3 en sb_ertms12_sein_3a\n // hide rode circle/ellipse\n this.verwerkSein(seinElement, this.verwerkBedSeinPolyline, null, SignaleringsbeeldSvgUtilityService.hideElement);\n }\n }\n\n private verwerkStopplaatsSeinPolyline(polylineCount: number, elementNode, poly) {\n if (polylineCount === 5) {\n SignaleringsbeeldSvgUtilityService.hideElement(elementNode);\n }\n return poly;\n }\n\n private verwerkErtmsSein2Polyline(polylineCount: number, elementNode, poly: any) {\n poly = this.verwerkBedSein3En3a_Ertms2_Polyline(polylineCount, elementNode, poly);\n poly = this.verwerkBedSeinPolyline(polylineCount, elementNode, poly);\n if (polylineCount === 6) {\n // save to convert lines to polygon\n poly = this.createPolygon(elementNode);\n SignaleringsbeeldSvgUtilityService.hideElement(elementNode);\n }\n return poly;\n }\n\n private verwerkBedSeinPolyline(polylineCount: number, elementNode, poly) {\n if (polylineCount === 3 || polylineCount === 5) {\n SignaleringsbeeldSvgUtilityService.hideElement(elementNode);\n }\n return poly;\n }\n\n private verwerkBedSein3En3a_Ertms2_Polyline(polylineCount: number, elementNode, poly) {\n if (polylineCount === 6 || polylineCount === 7) {\n SignaleringsbeeldSvgUtilityService.hideElement(elementNode);\n }\n return poly;\n }\n\n private verwerkFictieveSeinenPolyline(polylineCount: number, elementNode, poly) {\n if (polylineCount === 3) {\n // save to convert lines to polygon\n poly = this.createPolygon(elementNode);\n SignaleringsbeeldSvgUtilityService.hideElement(elementNode);\n }\n return poly;\n }\n\n private verwerkSein(sein: HTMLElement, polylineFunc, polygonFunc?, ellipseFunc?) {\n if (!sein) {\n return;\n }\n let poly = null;\n let polylineCount = 0;\n Array.from(sein.childNodes).forEach(element => {\n const elementNode = (<HTMLElement>element);\n\n if (elementNode.nodeName.toUpperCase() === 'polyline'.toUpperCase()) {\n polylineCount++;\n poly = polylineFunc(polylineCount, elementNode, poly);\n } else if (elementNode.nodeName.toUpperCase() === 'polygon'.toUpperCase() && polygonFunc) {\n polygonFunc(elementNode);\n } else if (elementNode.nodeName.toUpperCase() === 'ellipse'.toUpperCase() && ellipseFunc) {\n ellipseFunc(elementNode);\n }\n });\n if (poly) {\n sein.appendChild(poly);\n }\n }\n\n private createPolygon(elementNode: HTMLElement): SVGPolygonElement {\n const poly = document.createElementNS(SVG_NS, 'polygon');\n poly.setAttribute('points', elementNode.getAttribute('points'));\n poly.setAttribute('class', elementNode.getAttribute('class'));\n poly.setAttribute('style', 'fill:transparent');\n return poly;\n }\n\n zetClassOpStoringSymbolenMetMap(wisselPuicEnStoringSymboolPuic: Map<string, string>) {\n StoringSymboolUtil.zetClassOpStoringSymbolenMetMap(wisselPuicEnStoringSymboolPuic);\n }\n\n zetClassOpLangeText() {\n Array.from(document.querySelectorAll('#tekst'))\n .filter((t) => t.textContent.length > 2)\n .forEach((t) => t.classList.add('largetext'));\n }\n\n zetClassOpSpoornummers(spoornummerPuics: string[]) {\n spoornummerPuics.forEach(element => {\n const spoornummer_elems = Array.from(document.querySelectorAll('[class=p' + element + ']'));\n spoornummer_elems.forEach((spoornummer) => {\n spoornummer.classList.add('spoornummer');\n });\n });\n }\n\n zetClassOpRijrichtingen(seinen: any[]) {\n for (const sein of seinen) {\n const seinElement = document.getElementById('p' + sein.getPuic());\n if (seinElement) {\n const rijrichtingElement = this.geefRijrichtingVanSein(seinElement);\n if (rijrichtingElement && sein.isBediend()) {\n this.addRijrichtingClass(rijrichtingElement, sein.getPuic());\n }\n }\n }\n }\n\n private geefRijrichtingVanSein(seinElement): HTMLElement {\n let rijrichtingElement: HTMLElement;\n let polylineCount = 0;\n for (const childNode of seinElement.childNodes) {\n if (childNode.nodeName.toUpperCase() === 'polyline'.toUpperCase()) {\n if (++polylineCount === 5) {\n rijrichtingElement = <HTMLElement>childNode;\n }\n }\n }\n return rijrichtingElement;\n }\n\n private addRijrichtingClass(elementNode, seinPuic: string) {\n elementNode.id = 'p' + seinPuic + '_rijrichting';\n elementNode.classList.add('rijrichting');\n }\n}\n","import { NgModule } from '@angular/core';\nimport { SignaleringsbeeldSvgUtilityService } from './signaleringsbeeld-svg-utility.service';\n\n@NgModule({\n declarations: [],\n imports: [],\n exports: [],\n providers: [\n SignaleringsbeeldSvgUtilityService\n ]\n})\nexport class RijwegenModule {\n}\n","export class JsJavaUtil {\n public static listToArray<T> (list: any): T[] {\n const result = [];\n if (list && list.size) {\n for (let i = 0; i < list.size(); i++) {\n result.push(list.getAtIndex(i));\n }\n }\n else if (list && list.length) {\n for (const entry of list) {\n result.push(entry);\n }\n }\n return result;\n }\n\n public static toJavaInteger (n: number): any {\n return n || n === 0 ? { java_lang_Integer_value: n } : null;\n }\n\n public static toJavalist<T>(array: T[]): any {\n return {\n size: () => array.length,\n getAtIndex: (i) => array[i],\n isEmpty: () => array.length === 0\n };\n }\n}\n","/*\n * Public API Surface of rijwegen\n */\n\nexport * from './lib/rijwegen.module';\nexport * from './lib/rpe';\nexport * from './lib/jsjavautil';\nexport * from './lib/signaleringsbeeld-svg-utility.service';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"loxia-rijwegen.mjs","sources":["../../../projects/rijwegen/src/lib/storing-symbool-util.ts","../../../projects/rijwegen/src/lib/util/document-token.ts","../../../projects/rijwegen/src/lib/signaleringsbeeld-svg-utility.service.ts","../../../projects/rijwegen/src/lib/rijwegen.module.ts","../../../projects/rijwegen/src/lib/jsjavautil.ts","../../../projects/rijwegen/src/public-api.ts","../../../projects/rijwegen/src/loxia-rijwegen.ts"],"sourcesContent":["export class StoringSymboolUtil {\n\n public static zetClassOpStoringSymbolenMetMap(wisselPuicEnStoringKaderPuic: Map<string, string>) {\n wisselPuicEnStoringKaderPuic.forEach((storingskaderPuic, wisselPuic) => {\n const elements = Array.from(document.querySelectorAll('#p' + wisselPuic));\n elements.forEach((wissel) => this.setClassOpStoringSymbool(<HTMLElement>wissel, 'p' + storingskaderPuic));\n });\n }\n\n private static setClassOpStoringSymbool(wissel: HTMLElement, puic: string) {\n const storingSymbool = this.findStoringSymbool(wissel);\n\n if (storingSymbool) {\n storingSymbool.id = puic;\n storingSymbool.classList.add('storingsymbool');\n }\n }\n\n private static findStoringSymbool(wissel: HTMLElement) {\n const numberOfChildren = wissel.childNodes.length;\n let polylineCount = 0;\n\n for (let i = 0; i < numberOfChildren; i++) {\n const elementNode = (<HTMLElement>wissel.childNodes[i]);\n\n if (this.isPolyline(elementNode)) {\n polylineCount++;\n if (this.isWisselStoringSymbool(polylineCount, numberOfChildren)\n || this.isEngelsWisselStoringSymbool(polylineCount, numberOfChildren)) {\n return elementNode;\n }\n }\n }\n\n return null;\n }\n\n private static isEngelsWisselStoringSymbool(polylineCount, numberOfChildren) {\n return polylineCount === 9 && numberOfChildren === 23;\n }\n\n private static isPolyline(node) {\n return node.nodeName.toUpperCase() === 'polyline'.toUpperCase();\n }\n\n private static isWisselStoringSymbool(polylineCount, numberOfChildren) {\n return polylineCount === 6 && numberOfChildren === 15;\n }\n}\n","import { InjectionToken } from '@angular/core';\n\nexport const DocumentToken = new InjectionToken('Document');\nexport function documentProvider(): Document {\n return document;\n}\n","import { Inject, Injectable } from '@angular/core';\nimport { StoringSymboolUtil } from './storing-symbool-util';\nimport { DocumentToken } from './util/document-token';\n\nexport const SVG_NS = 'http://www.w3.org/2000/svg';\nexport const COLOR_INDEX_WIT = 'ci0';\nexport const COLOR_INDEX_BLAUW = 'ci1';\nexport const COLOR_INDEX_ROOD = 'ci3';\nexport const COLOR_INDEX_CYAN = 'ci7';\nexport const COLOR_INDEX_BLAUW2 = 'ci17';\nexport const COLOR_INDEX_OKER = 'ci62';\nexport const COLOR_INDEX_GRIJS = 'ci144';\n\n@Injectable()\nexport class SignaleringsbeeldSvgUtilityService {\n\n constructor(\n @Inject(DocumentToken) private readonly document: Document\n ) {\n }\n\n private static hideElement(elementNode) {\n elementNode.style.display = 'none';\n }\n\n maakOngewensteElementenOnzichtbaar(): void {\n this.maakAlgemeneElementenOnzichtbaar();\n this.maakPerSvgOngewensteElementenOnzichtbaar();\n }\n\n private maakAlgemeneElementenOnzichtbaar() {\n this.maakRodePolySymbolenOnzichtbaar();\n this.maakOngewensteTekstenOnzichtbaar();\n }\n\n maakPerSvgOngewensteElementenOnzichtbaar() {\n const childnodes = Array.from(this.document.getElementsByTagNameNS(SVG_NS, 'g'));\n childnodes.filter(item => item.id === 'symbols')\n .forEach(item => this.maakWitteLijnenBinnenSymbolenOnzichtbaar(item));\n }\n\n addSvgDefs() {\n const svgContainer = this.document.getElementById('svgContainer');\n const childnodes = svgContainer.children;\n\n if (childnodes.length !== 1) {\n return;\n }\n const svg = childnodes[0];\n const defs = this.document.createElementNS(SVG_NS, 'defs');\n const pattern = this.createSvgDefsPattern();\n pattern.appendChild(this.document.createComment('Two instances of the same checker, only positioned apart on the `x` and `y` axis'));\n pattern.appendChild(this.document.createComment('We will define the `fill` in the CSS for flexible use'));\n pattern.appendChild(this.createPatternRect('checker1', '0', '2', '2', '0'));\n pattern.appendChild(this.createPatternRect('checker1', '2', '2', '2', '2'));\n pattern.appendChild(this.createPatternRect('checker2', '0', '2', '2', '2'));\n pattern.appendChild(this.createPatternRect('checker2', '2', '2', '2', '0'));\n defs.appendChild(pattern);\n svg.appendChild(defs);\n }\n\n private createSvgDefsPattern() {\n const pattern = this.document.createElementNS(SVG_NS, 'pattern');\n pattern.id = 'checkers';\n pattern.setAttribute('x', '0');\n pattern.setAttribute('y', '0');\n pattern.setAttribute('width', '4');\n pattern.setAttribute('height', '4');\n pattern.setAttribute('patternUnits', 'userSpaceOnUse');\n return pattern;\n }\n\n private createPatternRect(className, x, w, h, y) {\n const rect = this.document.createElementNS(SVG_NS, 'rect');\n rect.setAttribute('class', className);\n rect.setAttribute('x', x);\n rect.setAttribute('width', w);\n rect.setAttribute('height', h);\n rect.setAttribute('y', y);\n return rect;\n }\n\n // Polylines & Polygonen\n private maakRodePolySymbolenOnzichtbaar() {\n Array.from(this.document.querySelectorAll('polyline,polygon'))\n .filter(line => line.classList.contains(COLOR_INDEX_ROOD))\n .forEach(line => SignaleringsbeeldSvgUtilityService.hideElement(line));\n }\n\n maakWitteLijnenBinnenSymbolenOnzichtbaar(symbols: SVGElement) {\n if (symbols) {\n const symbolLijnen = Array.from(symbols.getElementsByTagName('polyline'));\n symbolLijnen\n .filter(line => line.classList.contains(COLOR_INDEX_WIT))\n .forEach(line => SignaleringsbeeldSvgUtilityService.hideElement(line)\n );\n }\n }\n\n maakOngewensteTekstenOnzichtbaar() {\n const teksten = Array.from(this.document.getElementsByTagName('text'));\n teksten.filter(element => element.id !== 'nummer' && element.id !== 'tekst')\n .forEach(element => SignaleringsbeeldSvgUtilityService.hideElement(element));\n }\n\n maakSignaleringsElementenOnzichtbaar(signaleringsElementen: any[]) {\n signaleringsElementen.forEach(signaleringsElement => {\n const puic = signaleringsElement.getPuic();\n const elements = Array.from(this.document.querySelectorAll('#p' + puic));\n elements.forEach(element => SignaleringsbeeldSvgUtilityService.hideElement(element));\n });\n }\n\n maakOngewensteSeindelenOnzichtbaar(seinen: any[]) {\n seinen.filter(sein => !!sein).forEach(sein => {\n const elements = Array.from(this.document.querySelectorAll('#p' + sein.getPuic()));\n elements.forEach((element) => this.verwerkSeinOpType(sein, <HTMLElement>element));\n });\n }\n\n private verwerkSeinOpType(sein, seinElement: HTMLElement) {\n if (sein.getType() === 'sb_bed_sein') {\n this.verwerkSein(seinElement, this.verwerkBedSeinPolyline);\n } else if (sein.getType() === 'sb_bed_sein_3') {\n // hide sb_bed_3 Sein: 6, 7 -> kader\n // hide rijrichting polygon\n this.verwerkSein(seinElement, this.verwerkBedSein3En3a_Ertms2_Polyline, SignaleringsbeeldSvgUtilityService.hideElement);\n } else if (sein.getType() === 'sb_bed_sein_3a') {\n // hide sb_bed_3a Sein: 6 -> kader, 7 -> richting\n this.verwerkSein(seinElement, this.verwerkBedSein3En3a_Ertms2_Polyline);\n } else if (sein.getType().startsWith('sb_fict_sein')) {\n // converteer seinElement driehoek van polyline naar polygon\n this.verwerkSein(seinElement, this.verwerkFictieveSeinenPolyline.bind(this));\n } else if (sein.getType() === 'sb_stoppl_sein') {\n this.verwerkSein(seinElement, this.verwerkStopplaatsSeinPolyline);\n } else if (sein.getType().startsWith('sb_ertms2')) {\n // mogelijk moet nog aparte afhandelijk voor sb_ertms2_sein_3 en sb_ertms2_sein_3a\n // hide kader\n this.verwerkSein(seinElement, this.verwerkErtmsSein2Polyline.bind(this));\n } else if (sein.getType().startsWith('sb_ertms12')) {\n // mogelijk moet nog aparte afhandelijk voor sb_ertms12_sein_3 en sb_ertms12_sein_3a\n // hide rode circle/ellipse\n this.verwerkSein(seinElement, this.verwerkBedSeinPolyline, null, SignaleringsbeeldSvgUtilityService.hideElement);\n }\n }\n\n private verwerkStopplaatsSeinPolyline(polylineCount: number, elementNode, poly) {\n if (polylineCount === 5) {\n SignaleringsbeeldSvgUtilityService.hideElement(elementNode);\n }\n return poly;\n }\n\n private verwerkErtmsSein2Polyline(polylineCount: number, elementNode, poly: any) {\n poly = this.verwerkBedSein3En3a_Ertms2_Polyline(polylineCount, elementNode, poly);\n poly = this.verwerkBedSeinPolyline(polylineCount, elementNode, poly);\n if (polylineCount === 6) {\n // save to convert lines to polygon\n poly = this.createPolygon(elementNode);\n SignaleringsbeeldSvgUtilityService.hideElement(elementNode);\n }\n return poly;\n }\n\n private verwerkBedSeinPolyline(polylineCount: number, elementNode, poly) {\n if (polylineCount === 3 || polylineCount === 5) {\n SignaleringsbeeldSvgUtilityService.hideElement(elementNode);\n }\n return poly;\n }\n\n private verwerkBedSein3En3a_Ertms2_Polyline(polylineCount: number, elementNode, poly) {\n if (polylineCount === 6 || polylineCount === 7) {\n SignaleringsbeeldSvgUtilityService.hideElement(elementNode);\n }\n return poly;\n }\n\n private verwerkFictieveSeinenPolyline(polylineCount: number, elementNode, poly) {\n if (polylineCount === 3) {\n // save to convert lines to polygon\n poly = this.createPolygon(elementNode);\n SignaleringsbeeldSvgUtilityService.hideElement(elementNode);\n }\n return poly;\n }\n\n private verwerkSein(sein: HTMLElement, polylineFunc, polygonFunc?, ellipseFunc?) {\n if (!sein) {\n return;\n }\n let poly = null;\n let polylineCount = 0;\n Array.from(sein.childNodes).forEach(element => {\n const elementNode = (<HTMLElement>element);\n\n if (elementNode.nodeName.toUpperCase() === 'polyline'.toUpperCase()) {\n polylineCount++;\n poly = polylineFunc(polylineCount, elementNode, poly);\n } else if (elementNode.nodeName.toUpperCase() === 'polygon'.toUpperCase() && polygonFunc) {\n polygonFunc(elementNode);\n } else if (elementNode.nodeName.toUpperCase() === 'ellipse'.toUpperCase() && ellipseFunc) {\n ellipseFunc(elementNode);\n }\n });\n if (poly) {\n sein.appendChild(poly);\n }\n }\n\n private createPolygon(elementNode: HTMLElement): SVGPolygonElement {\n const poly = this.document.createElementNS(SVG_NS, 'polygon');\n poly.setAttribute('points', elementNode.getAttribute('points'));\n poly.setAttribute('class', elementNode.getAttribute('class'));\n poly.setAttribute('style', 'fill:transparent');\n return poly;\n }\n\n zetClassOpStoringSymbolenMetMap(wisselPuicEnStoringSymboolPuic: Map<string, string>) {\n StoringSymboolUtil.zetClassOpStoringSymbolenMetMap(wisselPuicEnStoringSymboolPuic);\n }\n\n zetClassOpLangeText() {\n Array.from(this.document.querySelectorAll('#tekst'))\n .filter((t) => t.textContent.length > 2)\n .forEach((t) => t.classList.add('largetext'));\n }\n\n zetClassOpSpoornummers(spoornummerPuics: string[]) {\n spoornummerPuics.forEach(element => {\n const spoornummer_elems = Array.from(this.document.querySelectorAll('[class=p' + element + ']'));\n spoornummer_elems.forEach((spoornummer) => {\n spoornummer.classList.add('spoornummer');\n });\n });\n }\n\n zetClassOpRijrichtingen(seinen: any[]) {\n for (const sein of seinen) {\n const seinElement = this.document.getElementById('p' + sein.getPuic());\n if (seinElement) {\n const rijrichtingElement = this.geefRijrichtingVanSein(seinElement);\n if (rijrichtingElement && sein.isBediend()) {\n this.addRijrichtingClass(rijrichtingElement, sein.getPuic());\n }\n }\n }\n }\n\n private geefRijrichtingVanSein(seinElement): HTMLElement {\n let rijrichtingElement: HTMLElement;\n let polylineCount = 0;\n for (const childNode of seinElement.childNodes) {\n if (childNode.nodeName.toUpperCase() === 'polyline'.toUpperCase()) {\n if (++polylineCount === 5) {\n rijrichtingElement = <HTMLElement>childNode;\n }\n }\n }\n return rijrichtingElement;\n }\n\n private addRijrichtingClass(elementNode, seinPuic: string) {\n elementNode.id = 'p' + seinPuic + '_rijrichting';\n elementNode.classList.add('rijrichting');\n }\n}\n","import { NgModule } from '@angular/core';\nimport { SignaleringsbeeldSvgUtilityService } from './signaleringsbeeld-svg-utility.service';\nimport { documentProvider, DocumentToken } from './util/document-token';\n\n@NgModule({\n declarations: [],\n imports: [],\n exports: [],\n providers: [\n { provide: DocumentToken, useFactory: documentProvider },\n SignaleringsbeeldSvgUtilityService\n ]\n})\nexport class RijwegenModule {\n}\n","export class JsJavaUtil {\n public static listToArray<T> (list: any): T[] {\n const result = [];\n if (list && list.size) {\n for (let i = 0; i < list.size(); i++) {\n result.push(list.getAtIndex(i));\n }\n }\n else if (list && list.length) {\n for (const entry of list) {\n result.push(entry);\n }\n }\n return result;\n }\n\n public static toJavaInteger (n: number): any {\n return n || n === 0 ? { java_lang_Integer_value: n } : null;\n }\n\n public static toJavalist<T>(array: T[]): any {\n return {\n size: () => array.length,\n getAtIndex: (i) => array[i],\n isEmpty: () => array.length === 0\n };\n }\n}\n","/*\n * Public API Surface of rijwegen\n */\n\nexport * from './lib/rijwegen.module';\nexport * from './lib/rpe';\nexport * from './lib/jsjavautil';\nexport * from './lib/signaleringsbeeld-svg-utility.service';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;MAAa,kBAAkB,CAAA;IAEpB,OAAO,+BAA+B,CAAC,4BAAiD,EAAA;QAC3F,4BAA4B,CAAC,OAAO,CAAC,CAAC,iBAAiB,EAAE,UAAU,KAAI;AACnE,YAAA,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,GAAG,UAAU,CAAC,CAAC;AACzE,YAAA,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,wBAAwB,CAAc,MAAM,EAAE,GAAG,GAAG,iBAAiB,CAAC,CAAC;AAC7G,QAAA,CAAC,CAAC;IACN;AAEQ,IAAA,OAAO,wBAAwB,CAAC,MAAmB,EAAE,IAAY,EAAA;QACrE,MAAM,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC;QAEtD,IAAI,cAAc,EAAE;AAChB,YAAA,cAAc,CAAC,EAAE,GAAG,IAAI;AACxB,YAAA,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC;QAClD;IACJ;IAEQ,OAAO,kBAAkB,CAAC,MAAmB,EAAA;AACjD,QAAA,MAAM,gBAAgB,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM;QACjD,IAAI,aAAa,GAAG,CAAC;AAErB,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,EAAE,CAAC,EAAE,EAAE;YACvC,MAAM,WAAW,GAAiB,MAAM,CAAC,UAAU,CAAC,CAAC,CAAE;AAEvD,YAAA,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE;AAC9B,gBAAA,aAAa,EAAE;AACf,gBAAA,IAAI,IAAI,CAAC,sBAAsB,CAAC,aAAa,EAAE,gBAAgB;uBACxD,IAAI,CAAC,4BAA4B,CAAC,aAAa,EAAE,gBAAgB,CAAC,EAAE;AACvE,oBAAA,OAAO,WAAW;gBACtB;YACJ;QACJ;AAEA,QAAA,OAAO,IAAI;IACf;AAEQ,IAAA,OAAO,4BAA4B,CAAC,aAAa,EAAE,gBAAgB,EAAA;AACvE,QAAA,OAAO,aAAa,KAAK,CAAC,IAAI,gBAAgB,KAAK,EAAE;IACzD;IAEQ,OAAO,UAAU,CAAC,IAAI,EAAA;QAC1B,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,WAAW,EAAE;IACnE;AAEQ,IAAA,OAAO,sBAAsB,CAAC,aAAa,EAAE,gBAAgB,EAAA;AACjE,QAAA,OAAO,aAAa,KAAK,CAAC,IAAI,gBAAgB,KAAK,EAAE;IACzD;AACH;;AC9CM,MAAM,aAAa,GAAG,IAAI,cAAc,CAAC,UAAU,CAAC;SAC3C,gBAAgB,GAAA;AAC5B,IAAA,OAAO,QAAQ;AACnB;;ACDO,MAAM,MAAM,GAAG;AACf,MAAM,eAAe,GAAG;AACxB,MAAM,iBAAiB,GAAG;AAC1B,MAAM,gBAAgB,GAAG;AACzB,MAAM,gBAAgB,GAAG;AACzB,MAAM,kBAAkB,GAAG;AAC3B,MAAM,gBAAgB,GAAG;AACzB,MAAM,iBAAiB,GAAG;MAGpB,kCAAkC,CAAA;AAE3C,IAAA,WAAA,CAC4C,QAAkB,EAAA;QAAlB,IAAA,CAAA,QAAQ,GAAR,QAAQ;IAEpD;IAEQ,OAAO,WAAW,CAAC,WAAW,EAAA;AAClC,QAAA,WAAW,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM;IACtC;IAEA,kCAAkC,GAAA;QAC9B,IAAI,CAAC,gCAAgC,EAAE;QACvC,IAAI,CAAC,wCAAwC,EAAE;IACnD;IAEQ,gCAAgC,GAAA;QACpC,IAAI,CAAC,+BAA+B,EAAE;QACtC,IAAI,CAAC,gCAAgC,EAAE;IAC3C;IAEA,wCAAwC,GAAA;AACpC,QAAA,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAChF,QAAA,UAAU,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,KAAK,SAAS;AACpC,aAAA,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,wCAAwC,CAAC,IAAI,CAAC,CAAC;IACnF;IAEA,UAAU,GAAA;QACN,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC;AACjE,QAAA,MAAM,UAAU,GAAG,YAAY,CAAC,QAAQ;AAExC,QAAA,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;YACzB;QACJ;AACA,QAAA,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC;AACzB,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1D,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,oBAAoB,EAAE;AAC3C,QAAA,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,kFAAkF,CAAC,CAAC;AACpI,QAAA,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,uDAAuD,CAAC,CAAC;AACzG,QAAA,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAC3E,QAAA,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAC3E,QAAA,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAC3E,QAAA,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAC3E,QAAA,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;AACzB,QAAA,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC;IACzB;IAEQ,oBAAoB,GAAA;AACxB,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC;AAChE,QAAA,OAAO,CAAC,EAAE,GAAG,UAAU;AACvB,QAAA,OAAO,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC;AAC9B,QAAA,OAAO,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC;AAC9B,QAAA,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC;AAClC,QAAA,OAAO,CAAC,YAAY,CAAC,QAAQ,EAAE,GAAG,CAAC;AACnC,QAAA,OAAO,CAAC,YAAY,CAAC,cAAc,EAAE,gBAAgB,CAAC;AACtD,QAAA,OAAO,OAAO;IAClB;IAEQ,iBAAiB,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAA;AAC3C,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC;AAC1D,QAAA,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,SAAS,CAAC;AACrC,QAAA,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,CAAC;AACzB,QAAA,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC;AAC7B,QAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC9B,QAAA,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC,CAAC;AACzB,QAAA,OAAO,IAAI;IACf;;IAGQ,+BAA+B,GAAA;QACnC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,CAAC;AACvD,aAAA,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC;AACxD,aAAA,OAAO,CAAC,IAAI,IAAI,kCAAkC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAC/E;AAEA,IAAA,wCAAwC,CAAC,OAAmB,EAAA;QACxD,IAAI,OAAO,EAAE;AACT,YAAA,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;YACzE;AACC,iBAAA,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC;AACvD,iBAAA,OAAO,CAAC,IAAI,IAAI,kCAAkC,CAAC,WAAW,CAAC,IAAI,CAAC,CACpE;QACL;IACJ;IAEA,gCAAgC,GAAA;AAC5B,QAAA,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;AACtE,QAAA,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,EAAE,KAAK,QAAQ,IAAI,OAAO,CAAC,EAAE,KAAK,OAAO;AACnE,aAAA,OAAO,CAAC,OAAO,IAAI,kCAAkC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACvF;AAEA,IAAA,oCAAoC,CAAC,qBAA4B,EAAA;AAC7D,QAAA,qBAAqB,CAAC,OAAO,CAAC,mBAAmB,IAAG;AAChD,YAAA,MAAM,IAAI,GAAG,mBAAmB,CAAC,OAAO,EAAE;AAC1C,YAAA,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;AACxE,YAAA,QAAQ,CAAC,OAAO,CAAC,OAAO,IAAI,kCAAkC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;AACxF,QAAA,CAAC,CAAC;IACN;AAEA,IAAA,kCAAkC,CAAC,MAAa,EAAA;AAC5C,QAAA,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,IAAG;YACzC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;AAClF,YAAA,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAe,OAAO,CAAC,CAAC;AACrF,QAAA,CAAC,CAAC;IACN;IAEQ,iBAAiB,CAAC,IAAI,EAAE,WAAwB,EAAA;AACpD,QAAA,IAAI,IAAI,CAAC,OAAO,EAAE,KAAK,aAAa,EAAE;YAClC,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,sBAAsB,CAAC;QAC9D;AAAO,aAAA,IAAI,IAAI,CAAC,OAAO,EAAE,KAAK,eAAe,EAAE;;;AAG3C,YAAA,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,mCAAmC,EAAE,kCAAkC,CAAC,WAAW,CAAC;QAC3H;AAAO,aAAA,IAAI,IAAI,CAAC,OAAO,EAAE,KAAK,gBAAgB,EAAE;;YAE5C,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,mCAAmC,CAAC;QAC3E;aAAO,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE;;AAElD,YAAA,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChF;AAAO,aAAA,IAAI,IAAI,CAAC,OAAO,EAAE,KAAK,gBAAgB,EAAE;YAC5C,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,6BAA6B,CAAC;QACrE;aAAO,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE;;;AAG/C,YAAA,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5E;aAAO,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE;;;AAGhD,YAAA,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,sBAAsB,EAAE,IAAI,EAAE,kCAAkC,CAAC,WAAW,CAAC;QACpH;IACJ;AAEQ,IAAA,6BAA6B,CAAC,aAAqB,EAAE,WAAW,EAAE,IAAI,EAAA;AAC1E,QAAA,IAAI,aAAa,KAAK,CAAC,EAAE;AACrB,YAAA,kCAAkC,CAAC,WAAW,CAAC,WAAW,CAAC;QAC/D;AACA,QAAA,OAAO,IAAI;IACf;AAEQ,IAAA,yBAAyB,CAAC,aAAqB,EAAE,WAAW,EAAE,IAAS,EAAA;QAC3E,IAAI,GAAG,IAAI,CAAC,mCAAmC,CAAC,aAAa,EAAE,WAAW,EAAE,IAAI,CAAC;QACjF,IAAI,GAAG,IAAI,CAAC,sBAAsB,CAAC,aAAa,EAAE,WAAW,EAAE,IAAI,CAAC;AACpE,QAAA,IAAI,aAAa,KAAK,CAAC,EAAE;;AAErB,YAAA,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;AACtC,YAAA,kCAAkC,CAAC,WAAW,CAAC,WAAW,CAAC;QAC/D;AACA,QAAA,OAAO,IAAI;IACf;AAEQ,IAAA,sBAAsB,CAAC,aAAqB,EAAE,WAAW,EAAE,IAAI,EAAA;QACnE,IAAI,aAAa,KAAK,CAAC,IAAI,aAAa,KAAK,CAAC,EAAE;AAC5C,YAAA,kCAAkC,CAAC,WAAW,CAAC,WAAW,CAAC;QAC/D;AACA,QAAA,OAAO,IAAI;IACf;AAEQ,IAAA,mCAAmC,CAAC,aAAqB,EAAE,WAAW,EAAE,IAAI,EAAA;QAChF,IAAI,aAAa,KAAK,CAAC,IAAI,aAAa,KAAK,CAAC,EAAE;AAC5C,YAAA,kCAAkC,CAAC,WAAW,CAAC,WAAW,CAAC;QAC/D;AACA,QAAA,OAAO,IAAI;IACf;AAEQ,IAAA,6BAA6B,CAAC,aAAqB,EAAE,WAAW,EAAE,IAAI,EAAA;AAC1E,QAAA,IAAI,aAAa,KAAK,CAAC,EAAE;;AAErB,YAAA,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;AACtC,YAAA,kCAAkC,CAAC,WAAW,CAAC,WAAW,CAAC;QAC/D;AACA,QAAA,OAAO,IAAI;IACf;AAEQ,IAAA,WAAW,CAAC,IAAiB,EAAE,YAAY,EAAE,WAAY,EAAE,WAAY,EAAA;QAC3E,IAAI,CAAC,IAAI,EAAE;YACP;QACJ;QACA,IAAI,IAAI,GAAG,IAAI;QACf,IAAI,aAAa,GAAG,CAAC;AACrB,QAAA,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,OAAO,IAAG;YAC1C,MAAM,WAAW,GAAiB,OAAQ;AAE1C,YAAA,IAAI,WAAW,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,WAAW,EAAE,EAAE;AACjE,gBAAA,aAAa,EAAE;gBACf,IAAI,GAAG,YAAY,CAAC,aAAa,EAAE,WAAW,EAAE,IAAI,CAAC;YACzD;AAAO,iBAAA,IAAI,WAAW,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,WAAW,EAAE,IAAI,WAAW,EAAE;gBACtF,WAAW,CAAC,WAAW,CAAC;YAC5B;AAAO,iBAAA,IAAI,WAAW,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,SAAS,CAAC,WAAW,EAAE,IAAI,WAAW,EAAE;gBACtF,WAAW,CAAC,WAAW,CAAC;YAC5B;AACJ,QAAA,CAAC,CAAC;QACF,IAAI,IAAI,EAAE;AACN,YAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAC1B;IACJ;AAEQ,IAAA,aAAa,CAAC,WAAwB,EAAA;AAC1C,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC;AAC7D,QAAA,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,WAAW,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;AAC/D,QAAA,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,WAAW,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;AAC7D,QAAA,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,kBAAkB,CAAC;AAC9C,QAAA,OAAO,IAAI;IACf;AAEA,IAAA,+BAA+B,CAAC,8BAAmD,EAAA;AAC/E,QAAA,kBAAkB,CAAC,+BAA+B,CAAC,8BAA8B,CAAC;IACtF;IAEA,mBAAmB,GAAA;QACf,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,CAAC;AAC7C,aAAA,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;AACtC,aAAA,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACtD;AAEA,IAAA,sBAAsB,CAAC,gBAA0B,EAAA;AAC7C,QAAA,gBAAgB,CAAC,OAAO,CAAC,OAAO,IAAG;AAC/B,YAAA,MAAM,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,UAAU,GAAG,OAAO,GAAG,GAAG,CAAC,CAAC;AAChG,YAAA,iBAAiB,CAAC,OAAO,CAAC,CAAC,WAAW,KAAI;AACtC,gBAAA,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC;AAC5C,YAAA,CAAC,CAAC;AACN,QAAA,CAAC,CAAC;IACN;AAEA,IAAA,uBAAuB,CAAC,MAAa,EAAA;AACjC,QAAA,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE;AACvB,YAAA,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;YACtE,IAAI,WAAW,EAAE;gBACb,MAAM,kBAAkB,GAAG,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC;AACnE,gBAAA,IAAI,kBAAkB,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE;oBACxC,IAAI,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;gBAChE;YACJ;QACJ;IACJ;AAEQ,IAAA,sBAAsB,CAAC,WAAW,EAAA;AACtC,QAAA,IAAI,kBAA+B;QACnC,IAAI,aAAa,GAAG,CAAC;AACrB,QAAA,KAAK,MAAM,SAAS,IAAI,WAAW,CAAC,UAAU,EAAE;AAC5C,YAAA,IAAI,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,WAAW,EAAE,EAAE;AAC/D,gBAAA,IAAI,EAAE,aAAa,KAAK,CAAC,EAAE;oBACvB,kBAAkB,GAAgB,SAAS;gBAC/C;YACJ;QACJ;AACA,QAAA,OAAO,kBAAkB;IAC7B;IAEQ,mBAAmB,CAAC,WAAW,EAAE,QAAgB,EAAA;QACrD,WAAW,CAAC,EAAE,GAAG,GAAG,GAAG,QAAQ,GAAG,cAAc;AAChD,QAAA,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC;IAC5C;AA3PS,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kCAAkC,kBAG/B,aAAa,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;mHAHhB,kCAAkC,EAAA,CAAA,CAAA;;4FAAlC,kCAAkC,EAAA,UAAA,EAAA,CAAA;kBAD9C;;0BAIQ,MAAM;2BAAC,aAAa;;;MCJhB,cAAc,CAAA;+GAAd,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;gHAAd,cAAc,EAAA,CAAA,CAAA;AAAd,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,EAAA,SAAA,EALd;AACT,YAAA,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,gBAAgB,EAAE;YACxD;AACD,SAAA,EAAA,CAAA,CAAA;;4FAEU,cAAc,EAAA,UAAA,EAAA,CAAA;kBAT1B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,EAAE;AAChB,oBAAA,OAAO,EAAE,EAAE;AACX,oBAAA,OAAO,EAAE,EAAE;AACX,oBAAA,SAAS,EAAE;AACT,wBAAA,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,gBAAgB,EAAE;wBACxD;AACD;AACF,iBAAA;;;MCZY,UAAU,CAAA;IACZ,OAAO,WAAW,CAAK,IAAS,EAAA;QACnC,MAAM,MAAM,GAAG,EAAE;AACjB,QAAA,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE;AACnB,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;gBAClC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACnC;QACJ;AACK,aAAA,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE;AAC1B,YAAA,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE;AACtB,gBAAA,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;YACtB;QACJ;AACA,QAAA,OAAO,MAAM;IACjB;IAEO,OAAO,aAAa,CAAE,CAAS,EAAA;AAClC,QAAA,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,uBAAuB,EAAE,CAAC,EAAE,GAAG,IAAI;IAC/D;IAEO,OAAO,UAAU,CAAI,KAAU,EAAA;QAClC,OAAO;AACH,YAAA,IAAI,EAAE,MAAM,KAAK,CAAC,MAAM;YACxB,UAAU,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC;YAC3B,OAAO,EAAE,MAAM,KAAK,CAAC,MAAM,KAAK;SACnC;IACL;AACH;;AC3BD;;AAEG;;ACFH;;AAEG;;;;"}
|
package/index.d.ts
CHANGED
|
@@ -1,5 +1,225 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
|
|
3
|
+
declare class RijwegenModule {
|
|
4
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RijwegenModule, never>;
|
|
5
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<RijwegenModule, never, never, never>;
|
|
6
|
+
static ɵinj: i0.ɵɵInjectorDeclaration<RijwegenModule>;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
declare namespace domein {
|
|
10
|
+
const enum Infrawijziging {
|
|
11
|
+
GEEN = 0,
|
|
12
|
+
NIEUW = 1,
|
|
13
|
+
GERAAKT = 2
|
|
14
|
+
}
|
|
15
|
+
const enum Stand {
|
|
16
|
+
LINKS = 0,
|
|
17
|
+
RECHTS = 1
|
|
18
|
+
}
|
|
19
|
+
interface RouteInfraObject {
|
|
20
|
+
getName(): string;
|
|
21
|
+
getPPLG(): string;
|
|
22
|
+
}
|
|
23
|
+
interface Dwang {
|
|
24
|
+
getDwangIdInRouteFile(): number;
|
|
25
|
+
getDwangString(): string;
|
|
26
|
+
getDwangNummer(): number;
|
|
27
|
+
isGoedgekeurd(): boolean;
|
|
28
|
+
getRICodeOnverkort(): string;
|
|
29
|
+
getRoute(): domein.Route;
|
|
30
|
+
getVanPrlSpoor(): string;
|
|
31
|
+
getNaarPrlSpoor(): string;
|
|
32
|
+
}
|
|
33
|
+
interface Wissel extends RouteInfraObject {
|
|
34
|
+
getStand(): Stand;
|
|
35
|
+
}
|
|
36
|
+
interface Sein extends RouteInfraObject {
|
|
37
|
+
getTypeAlsString(): string;
|
|
38
|
+
}
|
|
39
|
+
interface Route {
|
|
40
|
+
getRICodeOnverkort(): string;
|
|
41
|
+
getSeinen(): List<domein.Sein>;
|
|
42
|
+
getTegenSeinen(): List<domein.Sein>;
|
|
43
|
+
getBeginSein(): domein.Sein;
|
|
44
|
+
getEindSein(): domein.Sein;
|
|
45
|
+
getVanSpoor(): string;
|
|
46
|
+
getNaarSpoor(): string;
|
|
47
|
+
getVanPrlSpoor(): string;
|
|
48
|
+
getNaarPrlSpoor(): string;
|
|
49
|
+
getEnkelvoudigeRoute(): domein.EnkelvoudigeRoute;
|
|
50
|
+
getRestDwang(): domein.Dwang;
|
|
51
|
+
getWisselObjectenInDeRoute(): List<domein.RouteInfraObject>;
|
|
52
|
+
}
|
|
53
|
+
interface EnkelvoudigeRoute extends Route {
|
|
54
|
+
getRouteInfraId(): number;
|
|
55
|
+
}
|
|
56
|
+
interface Rijwegplan {
|
|
57
|
+
getPPLG(): string;
|
|
58
|
+
getRijweg(vanPrlSpoor: string, naarPrlSpoor: string): domein.Rijweg;
|
|
59
|
+
getRijwegVoorSeinen(beginSein: domein.Sein, eindSein: domein.Sein): domein.Rijweg;
|
|
60
|
+
getRijwegenVan(vanPrlSpoor: string): List<domein.Rijweg>;
|
|
61
|
+
getRijwegen(): List<domein.Rijweg>;
|
|
62
|
+
getPrlSpoorVoorSein(seinName: string): string;
|
|
63
|
+
getRoute(evRouteVanPrlSpoor: string, evRouteNaarPrlSpoor: string, routeInfraId: number, restDwang: domein.Dwang): domein.Route;
|
|
64
|
+
getPRLPost(): string;
|
|
65
|
+
getPRLVersie(): string;
|
|
66
|
+
getBovenliggendeDwangen(dwang: domein.Dwang, recursive: boolean): List<domein.Dwang>;
|
|
67
|
+
getOnderliggendeDwangen(dwang: domein.Dwang, goedgekeurd: boolean): List<domein.Dwang>;
|
|
68
|
+
getOnderliggendeDwangenTotEnVanSein(dwang: domein.Dwang, breekSein: domein.Sein): List<domein.Dwang>;
|
|
69
|
+
getOnderliggendeDwangenRecursief(dwang: domein.Dwang, goedgekeurd: boolean): List<domein.Dwang>;
|
|
70
|
+
getRijwegVoorDwang(dwang: domein.Dwang): domein.Rijweg;
|
|
71
|
+
getMaxSeinstappen(): number;
|
|
72
|
+
getBeginSein(beginSeinNaam: string): domein.Sein;
|
|
73
|
+
getEindSeinen(beginSeinNaam: string): List<domein.Sein>;
|
|
74
|
+
}
|
|
75
|
+
interface Rijweg {
|
|
76
|
+
getVanPrlSpoor(): string;
|
|
77
|
+
getNaarPrlSpoor(): string;
|
|
78
|
+
getBeginSein(): domein.Sein;
|
|
79
|
+
getEindSein(): domein.Sein;
|
|
80
|
+
getToegewezenDwangen(): List<domein.Dwang>;
|
|
81
|
+
isGoedgekeurd(): boolean;
|
|
82
|
+
getVoorkeurDwang(): domein.Dwang;
|
|
83
|
+
getDwang(dwangId: number): domein.Dwang;
|
|
84
|
+
getDwangen(): List<domein.Dwang>;
|
|
85
|
+
getCommentaar(): string;
|
|
86
|
+
setCommentaar(commentaar: string): any;
|
|
87
|
+
getDwangVoorDwangNummer(dwangNummer: number): domein.Dwang;
|
|
88
|
+
}
|
|
89
|
+
interface VrijebaanRijwegplan extends Rijwegplan {
|
|
90
|
+
getVervolgSpoor(rijweg: Rijweg): string;
|
|
91
|
+
getTegenOvergesteldePplg(pplg: string): string;
|
|
92
|
+
}
|
|
93
|
+
interface GoedkeurRapport {
|
|
94
|
+
getSeinStapNogNietGoedgekeurd(): number;
|
|
95
|
+
getAantalGoedTeKeurenDwangen(): number;
|
|
96
|
+
getAantalNietAutomatischGoedTeKeuren(): number;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
interface List<T> {
|
|
100
|
+
}
|
|
101
|
+
declare namespace sbblad {
|
|
102
|
+
interface HasIdentifier {
|
|
103
|
+
getPuic(): string;
|
|
104
|
+
getComponentName(): string;
|
|
105
|
+
}
|
|
106
|
+
interface HasLocation {
|
|
107
|
+
getPPLG(): string;
|
|
108
|
+
}
|
|
109
|
+
interface HasName {
|
|
110
|
+
getName(): string;
|
|
111
|
+
}
|
|
112
|
+
interface Sein extends HasIdentifier, HasLocation, HasName {
|
|
113
|
+
getType(): string;
|
|
114
|
+
getVoorSectie(): TopologyElement;
|
|
115
|
+
isBediend(): boolean;
|
|
116
|
+
isErtms(): boolean;
|
|
117
|
+
}
|
|
118
|
+
interface Spoornummer extends HasIdentifier, HasLocation, HasName {
|
|
119
|
+
}
|
|
120
|
+
interface RiCode extends HasIdentifier, HasLocation {
|
|
121
|
+
getWeergave(): string;
|
|
122
|
+
}
|
|
123
|
+
interface TopologyElement extends HasIdentifier, HasLocation {
|
|
124
|
+
getKilometreringen(): List<sbblad.Kilometrering>;
|
|
125
|
+
}
|
|
126
|
+
interface SpoortakFragment extends TopologyElement {
|
|
127
|
+
getConnection1(): TopologyElement;
|
|
128
|
+
getConnection2(): TopologyElement;
|
|
129
|
+
}
|
|
130
|
+
interface Wissel extends HasName, TopologyElement {
|
|
131
|
+
getIn(): SpoortakFragment;
|
|
132
|
+
getInPinPuic(): string;
|
|
133
|
+
getLeft(): SpoortakFragment;
|
|
134
|
+
getLeftPinPuic(): string;
|
|
135
|
+
getRight(): SpoortakFragment;
|
|
136
|
+
getRightPinPuic(): string;
|
|
137
|
+
getStoringSymboolPuic(): string;
|
|
138
|
+
}
|
|
139
|
+
interface Las extends TopologyElement {
|
|
140
|
+
getIn(): SpoortakFragment;
|
|
141
|
+
getOut(): SpoortakFragment;
|
|
142
|
+
}
|
|
143
|
+
interface Kruis extends TopologyElement {
|
|
144
|
+
getIn1(): SpoortakFragment;
|
|
145
|
+
getIn1Puic(): string;
|
|
146
|
+
getOut1(): SpoortakFragment;
|
|
147
|
+
getOut1Puic(): string;
|
|
148
|
+
getIn2(): SpoortakFragment;
|
|
149
|
+
getIn2Puic(): string;
|
|
150
|
+
getOut2(): SpoortakFragment;
|
|
151
|
+
getOut2Puic(): string;
|
|
152
|
+
}
|
|
153
|
+
interface Kilometrering {
|
|
154
|
+
getKmLint(): string;
|
|
155
|
+
getKmWaarde(): number;
|
|
156
|
+
}
|
|
157
|
+
interface AlternativeRoute {
|
|
158
|
+
getTopologyElements(): List<HasIdentifier>;
|
|
159
|
+
getRoute(): domein.Route;
|
|
160
|
+
getDwang(): domein.Dwang;
|
|
161
|
+
}
|
|
162
|
+
interface Spoortak extends HasIdentifier, HasName {
|
|
163
|
+
getTakElementen(): List<TopologyElement>;
|
|
164
|
+
}
|
|
165
|
+
interface SignaleringsElement extends HasIdentifier, HasLocation {
|
|
166
|
+
}
|
|
167
|
+
interface Filter {
|
|
168
|
+
getSeinstappen(): number;
|
|
169
|
+
getGoedgekeurd(): boolean;
|
|
170
|
+
getInfrawijziging(): domein.Infrawijziging;
|
|
171
|
+
setSeinstappen(seinStappen: number): any;
|
|
172
|
+
setGoedgekeurd(goedgekeurd: boolean): any;
|
|
173
|
+
setInfrawijziging(infraWijziging: domein.Infrawijziging): any;
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
declare class JsJavaUtil {
|
|
178
|
+
static listToArray<T>(list: any): T[];
|
|
179
|
+
static toJavaInteger(n: number): any;
|
|
180
|
+
static toJavalist<T>(array: T[]): any;
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
declare const SVG_NS = "http://www.w3.org/2000/svg";
|
|
184
|
+
declare const COLOR_INDEX_WIT = "ci0";
|
|
185
|
+
declare const COLOR_INDEX_BLAUW = "ci1";
|
|
186
|
+
declare const COLOR_INDEX_ROOD = "ci3";
|
|
187
|
+
declare const COLOR_INDEX_CYAN = "ci7";
|
|
188
|
+
declare const COLOR_INDEX_BLAUW2 = "ci17";
|
|
189
|
+
declare const COLOR_INDEX_OKER = "ci62";
|
|
190
|
+
declare const COLOR_INDEX_GRIJS = "ci144";
|
|
191
|
+
declare class SignaleringsbeeldSvgUtilityService {
|
|
192
|
+
private readonly document;
|
|
193
|
+
constructor(document: Document);
|
|
194
|
+
private static hideElement;
|
|
195
|
+
maakOngewensteElementenOnzichtbaar(): void;
|
|
196
|
+
private maakAlgemeneElementenOnzichtbaar;
|
|
197
|
+
maakPerSvgOngewensteElementenOnzichtbaar(): void;
|
|
198
|
+
addSvgDefs(): void;
|
|
199
|
+
private createSvgDefsPattern;
|
|
200
|
+
private createPatternRect;
|
|
201
|
+
private maakRodePolySymbolenOnzichtbaar;
|
|
202
|
+
maakWitteLijnenBinnenSymbolenOnzichtbaar(symbols: SVGElement): void;
|
|
203
|
+
maakOngewensteTekstenOnzichtbaar(): void;
|
|
204
|
+
maakSignaleringsElementenOnzichtbaar(signaleringsElementen: any[]): void;
|
|
205
|
+
maakOngewensteSeindelenOnzichtbaar(seinen: any[]): void;
|
|
206
|
+
private verwerkSeinOpType;
|
|
207
|
+
private verwerkStopplaatsSeinPolyline;
|
|
208
|
+
private verwerkErtmsSein2Polyline;
|
|
209
|
+
private verwerkBedSeinPolyline;
|
|
210
|
+
private verwerkBedSein3En3a_Ertms2_Polyline;
|
|
211
|
+
private verwerkFictieveSeinenPolyline;
|
|
212
|
+
private verwerkSein;
|
|
213
|
+
private createPolygon;
|
|
214
|
+
zetClassOpStoringSymbolenMetMap(wisselPuicEnStoringSymboolPuic: Map<string, string>): void;
|
|
215
|
+
zetClassOpLangeText(): void;
|
|
216
|
+
zetClassOpSpoornummers(spoornummerPuics: string[]): void;
|
|
217
|
+
zetClassOpRijrichtingen(seinen: any[]): void;
|
|
218
|
+
private geefRijrichtingVanSein;
|
|
219
|
+
private addRijrichtingClass;
|
|
220
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SignaleringsbeeldSvgUtilityService, never>;
|
|
221
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<SignaleringsbeeldSvgUtilityService>;
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
export { COLOR_INDEX_BLAUW, COLOR_INDEX_BLAUW2, COLOR_INDEX_CYAN, COLOR_INDEX_GRIJS, COLOR_INDEX_OKER, COLOR_INDEX_ROOD, COLOR_INDEX_WIT, JsJavaUtil, RijwegenModule, SVG_NS, SignaleringsbeeldSvgUtilityService, domein, sbblad };
|
|
225
|
+
export type { List };
|
package/package.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@loxia/rijwegen",
|
|
3
|
-
"version": "18.0.3-
|
|
3
|
+
"version": "18.0.3-202512120759",
|
|
4
4
|
"peerDependencies": {
|
|
5
|
-
"@angular/common": "^
|
|
6
|
-
"@angular/core": "^
|
|
5
|
+
"@angular/common": "^20.x.x",
|
|
6
|
+
"@angular/core": "^20.x.x"
|
|
7
7
|
},
|
|
8
8
|
"dependencies": {
|
|
9
9
|
"tslib": "^2.6.2"
|
package/lib/jsjavautil.d.ts
DELETED
package/lib/rijwegen.module.d.ts
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import * as i0 from "@angular/core";
|
|
2
|
-
export declare class RijwegenModule {
|
|
3
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<RijwegenModule, never>;
|
|
4
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<RijwegenModule, never, never, never>;
|
|
5
|
-
static ɵinj: i0.ɵɵInjectorDeclaration<RijwegenModule>;
|
|
6
|
-
}
|
package/lib/rpe.d.ts
DELETED
|
@@ -1,167 +0,0 @@
|
|
|
1
|
-
export declare namespace domein {
|
|
2
|
-
const enum Infrawijziging {
|
|
3
|
-
GEEN = 0,
|
|
4
|
-
NIEUW = 1,
|
|
5
|
-
GERAAKT = 2
|
|
6
|
-
}
|
|
7
|
-
const enum Stand {
|
|
8
|
-
LINKS = 0,
|
|
9
|
-
RECHTS = 1
|
|
10
|
-
}
|
|
11
|
-
interface RouteInfraObject {
|
|
12
|
-
getName(): string;
|
|
13
|
-
getPPLG(): string;
|
|
14
|
-
}
|
|
15
|
-
interface Dwang {
|
|
16
|
-
getDwangIdInRouteFile(): number;
|
|
17
|
-
getDwangString(): string;
|
|
18
|
-
getDwangNummer(): number;
|
|
19
|
-
isGoedgekeurd(): boolean;
|
|
20
|
-
getRICodeOnverkort(): string;
|
|
21
|
-
getRoute(): domein.Route;
|
|
22
|
-
getVanPrlSpoor(): string;
|
|
23
|
-
getNaarPrlSpoor(): string;
|
|
24
|
-
}
|
|
25
|
-
interface Wissel extends RouteInfraObject {
|
|
26
|
-
getStand(): Stand;
|
|
27
|
-
}
|
|
28
|
-
interface Sein extends RouteInfraObject {
|
|
29
|
-
getTypeAlsString(): string;
|
|
30
|
-
}
|
|
31
|
-
interface Route {
|
|
32
|
-
getRICodeOnverkort(): string;
|
|
33
|
-
getSeinen(): List<domein.Sein>;
|
|
34
|
-
getTegenSeinen(): List<domein.Sein>;
|
|
35
|
-
getBeginSein(): domein.Sein;
|
|
36
|
-
getEindSein(): domein.Sein;
|
|
37
|
-
getVanSpoor(): string;
|
|
38
|
-
getNaarSpoor(): string;
|
|
39
|
-
getVanPrlSpoor(): string;
|
|
40
|
-
getNaarPrlSpoor(): string;
|
|
41
|
-
getEnkelvoudigeRoute(): domein.EnkelvoudigeRoute;
|
|
42
|
-
getRestDwang(): domein.Dwang;
|
|
43
|
-
getWisselObjectenInDeRoute(): List<domein.RouteInfraObject>;
|
|
44
|
-
}
|
|
45
|
-
interface EnkelvoudigeRoute extends Route {
|
|
46
|
-
getRouteInfraId(): number;
|
|
47
|
-
}
|
|
48
|
-
interface Rijwegplan {
|
|
49
|
-
getPPLG(): string;
|
|
50
|
-
getRijweg(vanPrlSpoor: string, naarPrlSpoor: string): domein.Rijweg;
|
|
51
|
-
getRijwegVoorSeinen(beginSein: domein.Sein, eindSein: domein.Sein): domein.Rijweg;
|
|
52
|
-
getRijwegenVan(vanPrlSpoor: string): List<domein.Rijweg>;
|
|
53
|
-
getRijwegen(): List<domein.Rijweg>;
|
|
54
|
-
getPrlSpoorVoorSein(seinName: string): string;
|
|
55
|
-
getRoute(evRouteVanPrlSpoor: string, evRouteNaarPrlSpoor: string, routeInfraId: number, restDwang: domein.Dwang): domein.Route;
|
|
56
|
-
getPRLPost(): string;
|
|
57
|
-
getPRLVersie(): string;
|
|
58
|
-
getBovenliggendeDwangen(dwang: domein.Dwang, recursive: boolean): List<domein.Dwang>;
|
|
59
|
-
getOnderliggendeDwangen(dwang: domein.Dwang, goedgekeurd: boolean): List<domein.Dwang>;
|
|
60
|
-
getOnderliggendeDwangenTotEnVanSein(dwang: domein.Dwang, breekSein: domein.Sein): List<domein.Dwang>;
|
|
61
|
-
getOnderliggendeDwangenRecursief(dwang: domein.Dwang, goedgekeurd: boolean): List<domein.Dwang>;
|
|
62
|
-
getRijwegVoorDwang(dwang: domein.Dwang): domein.Rijweg;
|
|
63
|
-
getMaxSeinstappen(): number;
|
|
64
|
-
getBeginSein(beginSeinNaam: string): domein.Sein;
|
|
65
|
-
getEindSeinen(beginSeinNaam: string): List<domein.Sein>;
|
|
66
|
-
}
|
|
67
|
-
interface Rijweg {
|
|
68
|
-
getVanPrlSpoor(): string;
|
|
69
|
-
getNaarPrlSpoor(): string;
|
|
70
|
-
getBeginSein(): domein.Sein;
|
|
71
|
-
getEindSein(): domein.Sein;
|
|
72
|
-
getToegewezenDwangen(): List<domein.Dwang>;
|
|
73
|
-
isGoedgekeurd(): boolean;
|
|
74
|
-
getVoorkeurDwang(): domein.Dwang;
|
|
75
|
-
getDwang(dwangId: number): domein.Dwang;
|
|
76
|
-
getDwangen(): List<domein.Dwang>;
|
|
77
|
-
getCommentaar(): string;
|
|
78
|
-
setCommentaar(commentaar: string): any;
|
|
79
|
-
getDwangVoorDwangNummer(dwangNummer: number): domein.Dwang;
|
|
80
|
-
}
|
|
81
|
-
interface VrijebaanRijwegplan extends Rijwegplan {
|
|
82
|
-
getVervolgSpoor(rijweg: Rijweg): string;
|
|
83
|
-
getTegenOvergesteldePplg(pplg: string): string;
|
|
84
|
-
}
|
|
85
|
-
interface GoedkeurRapport {
|
|
86
|
-
getSeinStapNogNietGoedgekeurd(): number;
|
|
87
|
-
getAantalGoedTeKeurenDwangen(): number;
|
|
88
|
-
getAantalNietAutomatischGoedTeKeuren(): number;
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
export interface List<T> {
|
|
92
|
-
}
|
|
93
|
-
export declare namespace sbblad {
|
|
94
|
-
interface HasIdentifier {
|
|
95
|
-
getPuic(): string;
|
|
96
|
-
getComponentName(): string;
|
|
97
|
-
}
|
|
98
|
-
interface HasLocation {
|
|
99
|
-
getPPLG(): string;
|
|
100
|
-
}
|
|
101
|
-
interface HasName {
|
|
102
|
-
getName(): string;
|
|
103
|
-
}
|
|
104
|
-
interface Sein extends HasIdentifier, HasLocation, HasName {
|
|
105
|
-
getType(): string;
|
|
106
|
-
getVoorSectie(): TopologyElement;
|
|
107
|
-
isBediend(): boolean;
|
|
108
|
-
isErtms(): boolean;
|
|
109
|
-
}
|
|
110
|
-
interface Spoornummer extends HasIdentifier, HasLocation, HasName {
|
|
111
|
-
}
|
|
112
|
-
interface RiCode extends HasIdentifier, HasLocation {
|
|
113
|
-
getWeergave(): string;
|
|
114
|
-
}
|
|
115
|
-
interface TopologyElement extends HasIdentifier, HasLocation {
|
|
116
|
-
getKilometreringen(): List<sbblad.Kilometrering>;
|
|
117
|
-
}
|
|
118
|
-
interface SpoortakFragment extends TopologyElement {
|
|
119
|
-
getConnection1(): TopologyElement;
|
|
120
|
-
getConnection2(): TopologyElement;
|
|
121
|
-
}
|
|
122
|
-
interface Wissel extends HasName, TopologyElement {
|
|
123
|
-
getIn(): SpoortakFragment;
|
|
124
|
-
getInPinPuic(): string;
|
|
125
|
-
getLeft(): SpoortakFragment;
|
|
126
|
-
getLeftPinPuic(): string;
|
|
127
|
-
getRight(): SpoortakFragment;
|
|
128
|
-
getRightPinPuic(): string;
|
|
129
|
-
getStoringSymboolPuic(): string;
|
|
130
|
-
}
|
|
131
|
-
interface Las extends TopologyElement {
|
|
132
|
-
getIn(): SpoortakFragment;
|
|
133
|
-
getOut(): SpoortakFragment;
|
|
134
|
-
}
|
|
135
|
-
interface Kruis extends TopologyElement {
|
|
136
|
-
getIn1(): SpoortakFragment;
|
|
137
|
-
getIn1Puic(): string;
|
|
138
|
-
getOut1(): SpoortakFragment;
|
|
139
|
-
getOut1Puic(): string;
|
|
140
|
-
getIn2(): SpoortakFragment;
|
|
141
|
-
getIn2Puic(): string;
|
|
142
|
-
getOut2(): SpoortakFragment;
|
|
143
|
-
getOut2Puic(): string;
|
|
144
|
-
}
|
|
145
|
-
interface Kilometrering {
|
|
146
|
-
getKmLint(): string;
|
|
147
|
-
getKmWaarde(): number;
|
|
148
|
-
}
|
|
149
|
-
interface AlternativeRoute {
|
|
150
|
-
getTopologyElements(): List<HasIdentifier>;
|
|
151
|
-
getRoute(): domein.Route;
|
|
152
|
-
getDwang(): domein.Dwang;
|
|
153
|
-
}
|
|
154
|
-
interface Spoortak extends HasIdentifier, HasName {
|
|
155
|
-
getTakElementen(): List<TopologyElement>;
|
|
156
|
-
}
|
|
157
|
-
interface SignaleringsElement extends HasIdentifier, HasLocation {
|
|
158
|
-
}
|
|
159
|
-
interface Filter {
|
|
160
|
-
getSeinstappen(): number;
|
|
161
|
-
getGoedgekeurd(): boolean;
|
|
162
|
-
getInfrawijziging(): domein.Infrawijziging;
|
|
163
|
-
setSeinstappen(seinStappen: number): any;
|
|
164
|
-
setGoedgekeurd(goedgekeurd: boolean): any;
|
|
165
|
-
setInfrawijziging(infraWijziging: domein.Infrawijziging): any;
|
|
166
|
-
}
|
|
167
|
-
}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import * as i0 from "@angular/core";
|
|
2
|
-
export declare const SVG_NS = "http://www.w3.org/2000/svg";
|
|
3
|
-
export declare const COLOR_INDEX_WIT = "ci0";
|
|
4
|
-
export declare const COLOR_INDEX_BLAUW = "ci1";
|
|
5
|
-
export declare const COLOR_INDEX_ROOD = "ci3";
|
|
6
|
-
export declare const COLOR_INDEX_CYAN = "ci7";
|
|
7
|
-
export declare const COLOR_INDEX_BLAUW2 = "ci17";
|
|
8
|
-
export declare const COLOR_INDEX_OKER = "ci62";
|
|
9
|
-
export declare const COLOR_INDEX_GRIJS = "ci144";
|
|
10
|
-
export declare class SignaleringsbeeldSvgUtilityService {
|
|
11
|
-
private static hideElement;
|
|
12
|
-
maakOngewensteElementenOnzichtbaar(): void;
|
|
13
|
-
private maakAlgemeneElementenOnzichtbaar;
|
|
14
|
-
maakPerSvgOngewensteElementenOnzichtbaar(): void;
|
|
15
|
-
addSvgDefs(): void;
|
|
16
|
-
private createSvgDefsPattern;
|
|
17
|
-
private createPatternRect;
|
|
18
|
-
private maakRodePolySymbolenOnzichtbaar;
|
|
19
|
-
maakWitteLijnenBinnenSymbolenOnzichtbaar(symbols: SVGElement): void;
|
|
20
|
-
maakOngewensteTekstenOnzichtbaar(): void;
|
|
21
|
-
maakSignaleringsElementenOnzichtbaar(signaleringsElementen: any[]): void;
|
|
22
|
-
maakOngewensteSeindelenOnzichtbaar(seinen: any[]): void;
|
|
23
|
-
private verwerkSeinOpType;
|
|
24
|
-
private verwerkStopplaatsSeinPolyline;
|
|
25
|
-
private verwerkErtmsSein2Polyline;
|
|
26
|
-
private verwerkBedSeinPolyline;
|
|
27
|
-
private verwerkBedSein3En3a_Ertms2_Polyline;
|
|
28
|
-
private verwerkFictieveSeinenPolyline;
|
|
29
|
-
private verwerkSein;
|
|
30
|
-
private createPolygon;
|
|
31
|
-
zetClassOpStoringSymbolenMetMap(wisselPuicEnStoringSymboolPuic: Map<string, string>): void;
|
|
32
|
-
zetClassOpLangeText(): void;
|
|
33
|
-
zetClassOpSpoornummers(spoornummerPuics: string[]): void;
|
|
34
|
-
zetClassOpRijrichtingen(seinen: any[]): void;
|
|
35
|
-
private geefRijrichtingVanSein;
|
|
36
|
-
private addRijrichtingClass;
|
|
37
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<SignaleringsbeeldSvgUtilityService, never>;
|
|
38
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<SignaleringsbeeldSvgUtilityService>;
|
|
39
|
-
}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export declare class StoringSymboolUtil {
|
|
2
|
-
static zetClassOpStoringSymbolenMetMap(wisselPuicEnStoringKaderPuic: Map<string, string>): void;
|
|
3
|
-
private static setClassOpStoringSymbool;
|
|
4
|
-
private static findStoringSymbool;
|
|
5
|
-
private static isEngelsWisselStoringSymbool;
|
|
6
|
-
private static isPolyline;
|
|
7
|
-
private static isWisselStoringSymbool;
|
|
8
|
-
}
|
package/public-api.d.ts
DELETED