@syncfusion/ej2-maps 30.2.4 → 31.1.17

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.
Files changed (61) hide show
  1. package/.eslintrc.json +263 -0
  2. package/dist/ej2-maps.min.js +1 -1
  3. package/dist/ej2-maps.umd.min.js +1 -1
  4. package/dist/global/ej2-maps.min.js +1 -1
  5. package/dist/global/index.d.ts +1 -1
  6. package/dist/ts/index.d.ts +4 -0
  7. package/dist/ts/index.ts +4 -0
  8. package/dist/ts/maps/index.d.ts +28 -0
  9. package/dist/ts/maps/index.ts +28 -0
  10. package/dist/ts/maps/layers/bing-map.d.ts +21 -0
  11. package/dist/ts/maps/layers/bing-map.ts +51 -0
  12. package/dist/ts/maps/layers/bubble.d.ts +77 -0
  13. package/dist/ts/maps/layers/bubble.ts +304 -0
  14. package/dist/ts/maps/layers/color-mapping.d.ts +36 -0
  15. package/dist/ts/maps/layers/color-mapping.ts +230 -0
  16. package/dist/ts/maps/layers/data-label.d.ts +45 -0
  17. package/dist/ts/maps/layers/data-label.ts +457 -0
  18. package/dist/ts/maps/layers/layer-panel.d.ts +144 -0
  19. package/dist/ts/maps/layers/layer-panel.ts +1455 -0
  20. package/dist/ts/maps/layers/legend.d.ts +173 -0
  21. package/dist/ts/maps/layers/legend.ts +2465 -0
  22. package/dist/ts/maps/layers/marker.d.ts +105 -0
  23. package/dist/ts/maps/layers/marker.ts +632 -0
  24. package/dist/ts/maps/layers/navigation-selected-line.d.ts +33 -0
  25. package/dist/ts/maps/layers/navigation-selected-line.ts +171 -0
  26. package/dist/ts/maps/layers/polygon.d.ts +30 -0
  27. package/dist/ts/maps/layers/polygon.ts +68 -0
  28. package/dist/ts/maps/maps-model.d.ts +409 -0
  29. package/dist/ts/maps/maps.d.ts +1247 -0
  30. package/dist/ts/maps/maps.ts +3416 -0
  31. package/dist/ts/maps/model/base-model.d.ts +2107 -0
  32. package/dist/ts/maps/model/base.d.ts +1840 -0
  33. package/dist/ts/maps/model/base.ts +2257 -0
  34. package/dist/ts/maps/model/constants.d.ts +225 -0
  35. package/dist/ts/maps/model/constants.ts +226 -0
  36. package/dist/ts/maps/model/export-image.d.ts +39 -0
  37. package/dist/ts/maps/model/export-image.ts +194 -0
  38. package/dist/ts/maps/model/export-pdf.d.ts +40 -0
  39. package/dist/ts/maps/model/export-pdf.ts +183 -0
  40. package/dist/ts/maps/model/interface.d.ts +892 -0
  41. package/dist/ts/maps/model/interface.ts +929 -0
  42. package/dist/ts/maps/model/print.d.ts +45 -0
  43. package/dist/ts/maps/model/print.ts +125 -0
  44. package/dist/ts/maps/model/theme.d.ts +98 -0
  45. package/dist/ts/maps/model/theme.ts +919 -0
  46. package/dist/ts/maps/user-interaction/annotation.d.ts +27 -0
  47. package/dist/ts/maps/user-interaction/annotation.ts +133 -0
  48. package/dist/ts/maps/user-interaction/highlight.d.ts +63 -0
  49. package/dist/ts/maps/user-interaction/highlight.ts +272 -0
  50. package/dist/ts/maps/user-interaction/selection.d.ts +85 -0
  51. package/dist/ts/maps/user-interaction/selection.ts +342 -0
  52. package/dist/ts/maps/user-interaction/tooltip.d.ts +78 -0
  53. package/dist/ts/maps/user-interaction/tooltip.ts +500 -0
  54. package/dist/ts/maps/user-interaction/zoom.d.ts +334 -0
  55. package/dist/ts/maps/user-interaction/zoom.ts +2523 -0
  56. package/dist/ts/maps/utils/enum.d.ts +328 -0
  57. package/dist/ts/maps/utils/enum.ts +343 -0
  58. package/dist/ts/maps/utils/helper.d.ts +1318 -0
  59. package/dist/ts/maps/utils/helper.ts +3811 -0
  60. package/package.json +53 -18
  61. package/tslint.json +111 -0
package/.eslintrc.json ADDED
@@ -0,0 +1,263 @@
1
+ {
2
+ "env": {
3
+ "browser": true,
4
+ "es2021": true
5
+ },
6
+ "extends": [
7
+ "eslint:recommended",
8
+ "plugin:@typescript-eslint/recommended",
9
+ "plugin:jsdoc/recommended",
10
+ "plugin:security/recommended"
11
+ ],
12
+ "parser": "@typescript-eslint/parser",
13
+ "parserOptions": {
14
+ "ecmaFeatures": { "js": true },
15
+ "ecmaVersion": 2018,
16
+ "project": "./tsconfig.json",
17
+ "sourceType": "module"
18
+ },
19
+ "ignorePatterns": ["*.d.ts", "*.js"],
20
+ "plugins": [
21
+ "@typescript-eslint",
22
+ "@typescript-eslint/tslint",
23
+ "eslint-plugin-security",
24
+ "jsdoc"
25
+ ],
26
+ "rules": {
27
+ "use-isnan": "error",
28
+ "security/detect-unsafe-regex":"error",
29
+ "security/detect-buffer-noassert":"error",
30
+ "security/detect-child-process":"error",
31
+ "security/detect-disable-mustache-escape":"error",
32
+ "security/detect-eval-with-expression":"error",
33
+ "security/detect-no-csrf-before-method-override":"error",
34
+ "security/detect-non-literal-fs-filename":"error",
35
+ "security/detect-non-literal-regexp":"error",
36
+ "security/detect-non-literal-require":"error",
37
+ "security/detect-object-injection":"error",
38
+ "security/detect-possible-timing-attacks":"error",
39
+ "security/detect-pseudoRandomBytes":"error",
40
+ "security/detect-new-buffer":"error",
41
+ "security/detect-bidi-characters":"error",
42
+ "no-prototype-builtins": "warn",
43
+ "no-extend-native": ["warn"],
44
+ "@typescript-eslint/no-inferrable-types": "off",
45
+ "@typescript-eslint/ban-types": ["warn", {
46
+ "types": {
47
+ "Object": false,
48
+ "object": false,
49
+ "{}": false,
50
+ "Function": false
51
+ }
52
+ }],
53
+ "jsdoc/check-tag-names": 0,
54
+ "@typescript-eslint/tslint/config": [
55
+ "error",
56
+ {
57
+ "rules": {
58
+ "ban": true,
59
+ "chai-vague-errors": true,
60
+ "max-func-body-length": [
61
+ true,
62
+ 120,
63
+ {
64
+ "ignore-parameters-to-function-regex": "describe"
65
+ }
66
+ ],
67
+ "missing-jsdoc": true,
68
+ "no-backbone-get-set-outside-model": false,
69
+ "no-cookies": false,
70
+ "no-delete-expression": false,
71
+ "no-disable-auto-sanitization": true,
72
+ "no-duplicate-case": true,
73
+ "no-duplicate-parameter-names": true,
74
+ "no-empty-interfaces": false,
75
+ "no-exec-script": true,
76
+ "no-function-expression": false,
77
+ "no-multiple-var-decl": false,
78
+ "no-string-based-set-immediate": false,
79
+ "no-string-based-set-interval": false,
80
+ "no-unnecessary-bind": false,
81
+ "no-unused-imports": true,
82
+ "no-with-statement": false,
83
+ "prefer-array-literal": false,
84
+ "typedef": [
85
+ true,
86
+ "call-signature",
87
+ "parameter",
88
+ "property-declaration",
89
+ "variable-declaration",
90
+ "arrow-parameter",
91
+ "member-variable-declaration"
92
+ ],
93
+ "use-named-parameter": false,
94
+ "valid-typeof": true,
95
+ "whitespace": [
96
+ true,
97
+ "check-branch",
98
+ "check-decl",
99
+ "check-operator",
100
+ "check-separator",
101
+ "check-type"
102
+ ]
103
+ }
104
+ }
105
+ ],
106
+ "no-control-regex": "error",
107
+ "no-constant-condition": "error",
108
+ "no-invalid-regexp": "error",
109
+ "curly": "error",
110
+ "eol-last": [
111
+ "error",
112
+ "always"
113
+ ],
114
+ "guard-for-in": "error",
115
+ "no-labels": "error",
116
+ "max-len": [
117
+ "error",
118
+ {
119
+ "code": 140,
120
+ "tabWidth": 4,
121
+ "ignoreComments": true,
122
+ "ignoreStrings": true,
123
+ "ignoreTemplateLiterals": true,
124
+ "ignoreRegExpLiterals": true
125
+ }
126
+ ],
127
+ "no-console": [
128
+ "error",
129
+ {
130
+ "allow": [
131
+ "warn",
132
+ "dir",
133
+ "timeLog",
134
+ "assert",
135
+ "clear",
136
+ "count",
137
+ "countReset",
138
+ "group",
139
+ "groupEnd",
140
+ "table",
141
+ "dirxml",
142
+ "error",
143
+ "groupCollapsed",
144
+ "Console",
145
+ "profile",
146
+ "profileEnd",
147
+ "timeStamp",
148
+ "context"
149
+ ]
150
+ }
151
+ ],
152
+ "no-redeclare": [
153
+ "error",
154
+ {
155
+ "builtinGlobals": true
156
+ }
157
+ ],
158
+ "@typescript-eslint/no-parameter-properties": "error",
159
+ "@typescript-eslint/indent": [
160
+ "error",
161
+ 4,
162
+ {
163
+ "CallExpression": {
164
+ "arguments": "first"
165
+ },
166
+ "FunctionDeclaration": {
167
+ "parameters": "first"
168
+ },
169
+ "FunctionExpression": {
170
+ "parameters": "first"
171
+ }
172
+ }
173
+ ],
174
+ "no-debugger": "error",
175
+ "no-eval": "error",
176
+ "no-extra-semi": "error",
177
+ "no-throw-literal": "error",
178
+ "no-fallthrough": "error",
179
+ "comma-dangle": [
180
+ "error",
181
+ "never"
182
+ ],
183
+ "no-trailing-spaces": "error",
184
+ "@typescript-eslint/no-unused-expressions": "error",
185
+ "@typescript-eslint/no-var-requires": "error",
186
+ "one-var": [
187
+ "error",
188
+ "never"
189
+ ],
190
+ "@typescript-eslint/no-explicit-any": "warn",
191
+ "no-cond-assign": [
192
+ "error",
193
+ "always"
194
+ ],
195
+ "@typescript-eslint/consistent-type-assertions": "off",
196
+ "jsdoc/check-alignment": "error",
197
+ "no-empty": "error",
198
+ "quotes": [
199
+ "error",
200
+ "single"
201
+ ],
202
+ "semi": [
203
+ "error",
204
+ "always"
205
+ ],
206
+ "eqeqeq": [
207
+ "error",
208
+ "smart"
209
+ ],
210
+ "valid-typeof": [
211
+ "error",
212
+ {
213
+ "requireStringLiterals": true
214
+ }
215
+ ],
216
+ "camelcase": [
217
+ "error",
218
+ {
219
+ "properties": "always",
220
+ "ignoreDestructuring": true,
221
+ "ignoreImports": true
222
+ }
223
+ ],
224
+ "no-irregular-whitespace": [
225
+ "error",
226
+ {
227
+ "skipStrings": true,
228
+ "skipComments": true,
229
+ "skipRegExps": true,
230
+ "skipTemplates": true
231
+ }
232
+ ],
233
+ "valid-jsdoc": [
234
+ "error",
235
+ {
236
+ "prefer": {
237
+ "arg": "param",
238
+ "argument": "param",
239
+ "class": "constructor",
240
+ "return": "returns",
241
+ "virtual": "abstract"
242
+ }
243
+ }
244
+ ],
245
+ "no-var": "error",
246
+ "radix": "error"
247
+ },
248
+ "reportUnusedDisableDirectives": true,
249
+ "overrides": [
250
+ {
251
+ "files": [
252
+ "node_modules",
253
+ "dist",
254
+ "public",
255
+ "coverage",
256
+ "test-report"
257
+ ],
258
+ "rules": {
259
+ "no-unused-expressions": "off"
260
+ }
261
+ }
262
+ ]
263
+ }
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * filename: ej2-maps.min.js
3
- * version : 30.2.4
3
+ * version : 31.1.17
4
4
  * Copyright Syncfusion Inc. 2001 - 2024. All rights reserved.
5
5
  * Use of this code is subject to the terms of our license.
6
6
  * A copy of the current license can be obtained at any time by e-mailing
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * filename: ej2-maps.umd.min.js
3
- * version : 30.2.4
3
+ * version : 31.1.17
4
4
  * Copyright Syncfusion Inc. 2001 - 2024. All rights reserved.
5
5
  * Use of this code is subject to the terms of our license.
6
6
  * A copy of the current license can be obtained at any time by e-mailing
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * filename: ej2-maps.min.js
3
- * version : 30.2.4
3
+ * version : 31.1.17
4
4
  * Copyright Syncfusion Inc. 2001 - 2024. All rights reserved.
5
5
  * Use of this code is subject to the terms of our license.
6
6
  * A copy of the current license can be obtained at any time by e-mailing
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * filename: index.d.ts
3
- * version : 30.2.4
3
+ * version : 31.1.17
4
4
  * Copyright Syncfusion Inc. 2001 - 2024. All rights reserved.
5
5
  * Use of this code is subject to the terms of our license.
6
6
  * A copy of the current license can be obtained at any time by e-mailing
@@ -0,0 +1,4 @@
1
+ /**
2
+ * exporting all modules from maps index
3
+ */
4
+ export * from './maps/index';
@@ -0,0 +1,4 @@
1
+ /**
2
+ * exporting all modules from maps index
3
+ */
4
+ export * from './maps/index';
@@ -0,0 +1,28 @@
1
+ /**
2
+ * export all modules from maps component
3
+ */
4
+ export * from './maps';
5
+ export * from './maps-model';
6
+ export * from './model/interface';
7
+ export * from './model/constants';
8
+ export * from './model/base';
9
+ export * from './model/base-model';
10
+ export * from './utils/enum';
11
+ export * from './utils/helper';
12
+ export * from './layers/layer-panel';
13
+ export * from './layers/bubble';
14
+ export * from './layers/bing-map';
15
+ export * from './layers/marker';
16
+ export * from './layers/polygon';
17
+ export * from './layers/color-mapping';
18
+ export * from './layers/data-label';
19
+ export * from './layers/navigation-selected-line';
20
+ export * from './layers/legend';
21
+ export * from './user-interaction/highlight';
22
+ export * from './user-interaction/selection';
23
+ export * from './user-interaction/tooltip';
24
+ export * from './user-interaction/zoom';
25
+ export * from './user-interaction/annotation';
26
+ export * from './model/print';
27
+ export * from './model/export-image';
28
+ export * from './model/export-pdf';
@@ -0,0 +1,28 @@
1
+ /**
2
+ * export all modules from maps component
3
+ */
4
+ export * from './maps';
5
+ export * from './maps-model';
6
+ export * from './model/interface';
7
+ export * from './model/constants';
8
+ export * from './model/base';
9
+ export * from './model/base-model';
10
+ export * from './utils/enum';
11
+ export * from './utils/helper';
12
+ export * from './layers/layer-panel';
13
+ export * from './layers/bubble';
14
+ export * from './layers/bing-map';
15
+ export * from './layers/marker';
16
+ export * from './layers/polygon';
17
+ export * from './layers/color-mapping';
18
+ export * from './layers/data-label';
19
+ export * from './layers/navigation-selected-line';
20
+ export * from './layers/legend';
21
+ export * from './user-interaction/highlight';
22
+ export * from './user-interaction/selection';
23
+ export * from './user-interaction/tooltip';
24
+ export * from './user-interaction/zoom';
25
+ export * from './user-interaction/annotation';
26
+ export * from './model/print';
27
+ export * from './model/export-image';
28
+ export * from './model/export-pdf';
@@ -0,0 +1,21 @@
1
+ import { Maps } from '../maps';
2
+ import { Tile } from '../index';
3
+ /**
4
+ * Bing map src doc
5
+ */
6
+ export declare class BingMap {
7
+ /**
8
+ * map instance
9
+ */
10
+ private maps;
11
+ subDomains: string[];
12
+ imageUrl: string;
13
+ maxZoom: string;
14
+ constructor(maps: Maps);
15
+ getBingMap(tile: Tile, key: string, type: string, language: string, imageUrl: string, subDomains: string[]): string;
16
+ /**
17
+ * @returns {void}
18
+ * @private
19
+ */
20
+ destroy(): void;
21
+ }
@@ -0,0 +1,51 @@
1
+ import { Maps } from '../maps';
2
+ import { Tile } from '../index';
3
+ import { isNullOrUndefined } from '@syncfusion/ej2-base';
4
+
5
+ /**
6
+ * Bing map src doc
7
+ */
8
+ export class BingMap {
9
+ /**
10
+ * map instance
11
+ */
12
+ private maps: Maps;
13
+ public subDomains: string[];
14
+ public imageUrl: string;
15
+ public maxZoom: string;
16
+ constructor(maps: Maps) {
17
+ this.maps = maps;
18
+ }
19
+
20
+ public getBingMap(tile: Tile, key: string, type: string, language: string, imageUrl: string, subDomains: string[]): string {
21
+ let quadKey: string = '';
22
+ const maxZoom: number = Math.min(this.maps.tileZoomLevel, parseInt(this.maxZoom, 10));
23
+ for (let i: number = maxZoom; i > 0; i--) {
24
+ let digit: number = 0;
25
+ const mask: number = 1 << (i - 1);
26
+ if ((tile.x & mask) !== 0) {
27
+ digit++;
28
+ }
29
+ if ((tile.y & mask) !== 0) {
30
+ digit += 2;
31
+ }
32
+ quadKey = quadKey + '' + digit;
33
+ }
34
+ if (!isNullOrUndefined(subDomains)) {
35
+ const subDomain: string = subDomains[Math.min(parseInt(quadKey.substr(quadKey.length - 1, 1), 10), subDomains.length)];
36
+ imageUrl = imageUrl.replace('{quadkey}', quadKey).replace('{subdomain}', subDomain);
37
+ return imageUrl += '&mkt=' + language + '&ur=IN&Key=' + key;
38
+ } else {
39
+ return '';
40
+ }
41
+ }
42
+
43
+ /**
44
+ * @returns {void}
45
+ * @private
46
+ */
47
+ public destroy(): void {
48
+ this.maps = null;
49
+ this.subDomains = [];
50
+ }
51
+ }
@@ -0,0 +1,77 @@
1
+ import { Maps } from '../../index';
2
+ import { BubbleSettingsModel } from '../index';
3
+ import { LayerSettings } from '../index';
4
+ /**
5
+ * Bubble module class
6
+ */
7
+ export declare class Bubble {
8
+ private maps;
9
+ /** @private */
10
+ bubbleCollection: object[];
11
+ /**
12
+ * Bubble Id for current layer
13
+ *
14
+ * @private
15
+ */
16
+ id: string;
17
+ constructor(maps: Maps);
18
+ /**
19
+ * To render bubble
20
+ *
21
+ * @param {BubbleSettingsModel} bubbleSettings - Specifies the bubble data to be rendered
22
+ * @param {object} shapeData - Specifies the data about the shape
23
+ * @param {string} color - Specifies the color of the bubble
24
+ * @param {number} range - Specifies the range of the bubble
25
+ * @param {number} range.min - Specifies the minimum range of the bubble
26
+ * @param {number} range.max - Specifies the maximum range of the bubble
27
+ * @param {number} bubbleIndex - Specifies the index of the bubble
28
+ * @param {number} dataIndex - Specifies the index of the data
29
+ * @param {number} layerIndex - Specifies the index of the layer
30
+ * @param {LayerSettings} layer - Specifies the layer data
31
+ * @param {Element} group - Specifies the element group
32
+ * @param {string} bubbleID - Specifies the ID of the bubble
33
+ * @returns {void}
34
+ * @private
35
+ */
36
+ renderBubble(bubbleSettings: BubbleSettingsModel, shapeData: object, color: string, range: {
37
+ min: number;
38
+ max: number;
39
+ }, bubbleIndex: number, dataIndex: number, layerIndex: number, layer: LayerSettings, group: Element, bubbleID?: string): void;
40
+ private getPoints;
41
+ /**
42
+ * To check and trigger bubble click event.
43
+ *
44
+ * @param {PointerEvent} e - Specifies the pointer event argument.
45
+ * @returns {void}
46
+ * @private
47
+ */
48
+ bubbleClick(e: PointerEvent): void;
49
+ /**
50
+ * To get bubble from target id.
51
+ *
52
+ * @param {string} target - Specifies the target
53
+ * @returns {object} - Returns the object
54
+ */
55
+ private getbubble;
56
+ /**
57
+ * To check and trigger bubble move event.
58
+ *
59
+ * @param {PointerEvent} e - Specifies the pointer event argument.
60
+ * @retruns {void}
61
+ * @private
62
+ */
63
+ bubbleMove(e: PointerEvent): void;
64
+ /**
65
+ * Get module name.
66
+ *
67
+ * @returns {string} - Returns the module name.
68
+ */
69
+ protected getModuleName(): string;
70
+ /**
71
+ * To destroy the bubble.
72
+ *
73
+ * @returns {void}
74
+ * @private
75
+ */
76
+ destroy(): void;
77
+ }