- add GridLayer.js for representing cooridinates grid
- Map Constructor with min and may x and y - deactivating NorthArrow 6 BoxLayer - npm updates
This commit is contained in:
parent
9f9b54a09f
commit
1dbaf10261
287
package-lock.json
generated
287
package-lock.json
generated
|
@ -1311,9 +1311,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@types/estree": {
|
"node_modules/@types/estree": {
|
||||||
"version": "0.0.45",
|
"version": "0.0.46",
|
||||||
"resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.45.tgz",
|
"resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.46.tgz",
|
||||||
"integrity": "sha512-jnqIUKDUqJbDIUxm0Uj7bnlMnRm1T/eZ9N+AVMqhPgzrba2GhGG5o/jCTwmdPK709nEZsGoMzXEDUjcXHa3W0g==",
|
"integrity": "sha512-laIjwTQaD+5DukBZaygQ79K1Z0jb1bPEMRrkXSLjtCcZm+abyp5YbrqpSLzD42FwWW6gK/aS4NYpJ804nG2brg==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/@types/glob": {
|
"node_modules/@types/glob": {
|
||||||
|
@ -1328,9 +1328,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@types/json-schema": {
|
"node_modules/@types/json-schema": {
|
||||||
"version": "7.0.6",
|
"version": "7.0.7",
|
||||||
"resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.6.tgz",
|
"resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.7.tgz",
|
||||||
"integrity": "sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw==",
|
"integrity": "sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/@types/minimatch": {
|
"node_modules/@types/minimatch": {
|
||||||
|
@ -1341,9 +1341,9 @@
|
||||||
"peer": true
|
"peer": true
|
||||||
},
|
},
|
||||||
"node_modules/@types/node": {
|
"node_modules/@types/node": {
|
||||||
"version": "14.14.20",
|
"version": "14.14.22",
|
||||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.20.tgz",
|
"resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.22.tgz",
|
||||||
"integrity": "sha512-Y93R97Ouif9JEOWPIUyU+eyIdyRqQR0I8Ez1dzku4hDx34NWh4HbtIc3WNzwB1Y9ULvNGeu5B8h8bVL5cAk4/A==",
|
"integrity": "sha512-g+f/qj/cNcqKkc3tFqlXOYjrmZA+jNBiDzbP3kH+B+otKFqAdPgVTGP1IeKRdMml/aE69as5S4FqtxAbl+LaMw==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/@webassemblyjs/ast": {
|
"node_modules/@webassemblyjs/ast": {
|
||||||
|
@ -1492,6 +1492,16 @@
|
||||||
"@xtuc/long": "4.2.2"
|
"@xtuc/long": "4.2.2"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/@webpack-cli/configtest": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.0.0.tgz",
|
||||||
|
"integrity": "sha512-Un0SdBoN1h4ACnIO7EiCjWuyhNI0Jl96JC+63q6xi4HDUYRZn8Auluea9D+v9NWKc5J4sICVEltdBaVjLX39xw==",
|
||||||
|
"dev": true,
|
||||||
|
"peerDependencies": {
|
||||||
|
"webpack": "4.x.x || 5.x.x",
|
||||||
|
"webpack-cli": "4.x.x"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/@webpack-cli/info": {
|
"node_modules/@webpack-cli/info": {
|
||||||
"version": "1.2.1",
|
"version": "1.2.1",
|
||||||
"resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.2.1.tgz",
|
||||||
|
@ -1505,9 +1515,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@webpack-cli/serve": {
|
"node_modules/@webpack-cli/serve": {
|
||||||
"version": "1.2.1",
|
"version": "1.2.2",
|
||||||
"resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.2.2.tgz",
|
||||||
"integrity": "sha512-Zj1z6AyS+vqV6Hfi7ngCjFGdHV5EwZNIHo6QfFTNe9PyW+zBU1zJ9BiOW1pmUEq950RC4+Dym6flyA/61/vhyw==",
|
"integrity": "sha512-03GkWxcgFfm8+WIwcsqJb9agrSDNDDoxaNnexPnCCexP5SCE4IgFd9lNpSy+K2nFqVMpgTFw6SwbmVAVTndVew==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"webpack-cli": "4.x.x"
|
"webpack-cli": "4.x.x"
|
||||||
|
@ -1531,9 +1541,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/acorn": {
|
"node_modules/acorn": {
|
||||||
"version": "8.0.4",
|
"version": "8.0.5",
|
||||||
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.0.4.tgz",
|
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.0.5.tgz",
|
||||||
"integrity": "sha512-XNP0PqF1XD19ZlLKvB7cMmnZswW4C/03pRHgirB30uSJTaS3A3V1/P4sS3HPvFmjoriPCJQs+JDSbm4bL1TxGQ==",
|
"integrity": "sha512-v+DieK/HJkJOpFBETDJioequtc3PfxsWMaxIdIwujtF7FEV/MAyDQLlm6/zPvr7Mix07mLh6ccVwIsloceodlg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"bin": {
|
"bin": {
|
||||||
"acorn": "bin/acorn"
|
"acorn": "bin/acorn"
|
||||||
|
@ -1705,9 +1715,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/call-bind": {
|
"node_modules/call-bind": {
|
||||||
"version": "1.0.1",
|
"version": "1.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
|
||||||
"integrity": "sha512-tvAvUwNcRikl3RVF20X9lsYmmepsovzTWeJiXjO0PkJp15uy/6xKFZOQtuiSULwYW+6ToZBprphCgWXC2dSgcQ==",
|
"integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"function-bind": "^1.1.1",
|
"function-bind": "^1.1.1",
|
||||||
|
@ -1730,9 +1740,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/caniuse-lite": {
|
"node_modules/caniuse-lite": {
|
||||||
"version": "1.0.30001174",
|
"version": "1.0.30001179",
|
||||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001174.tgz",
|
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001179.tgz",
|
||||||
"integrity": "sha512-tqClL/4ThQq6cfFXH3oJL4rifFBeM6gTkphjao5kgwMaW9yn0tKgQLAEfKzDwj6HQWCB/aWo8kTFlSvIN8geEA==",
|
"integrity": "sha512-blMmO0QQujuUWZKyVrD1msR4WNDAqb/UPO1Sw2WWsQ7deoM5bJiicKnWJ1Y0NS/aGINSnKPIWBMw5luX+NDUCA==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/chalk": {
|
"node_modules/chalk": {
|
||||||
|
@ -1881,12 +1891,12 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/core-js-compat": {
|
"node_modules/core-js-compat": {
|
||||||
"version": "3.8.2",
|
"version": "3.8.3",
|
||||||
"resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.8.2.tgz",
|
"resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.8.3.tgz",
|
||||||
"integrity": "sha512-LO8uL9lOIyRRrQmZxHZFl1RV+ZbcsAkFWTktn5SmH40WgLtSNYN4m4W2v9ONT147PxBY/XrRhrWq8TlvObyUjQ==",
|
"integrity": "sha512-1sCb0wBXnBIL16pfFG1Gkvei6UzvKyTNYpiC41yrdjEv0UoJoq9E/abTMzyYJ6JpTkAj15dLjbqifIzEBDVvog==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"browserslist": "^4.16.0",
|
"browserslist": "^4.16.1",
|
||||||
"semver": "7.0.0"
|
"semver": "7.0.0"
|
||||||
},
|
},
|
||||||
"funding": {
|
"funding": {
|
||||||
|
@ -2080,9 +2090,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/electron-to-chromium": {
|
"node_modules/electron-to-chromium": {
|
||||||
"version": "1.3.635",
|
"version": "1.3.645",
|
||||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.635.tgz",
|
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.645.tgz",
|
||||||
"integrity": "sha512-RRriZOLs9CpW6KTLmgBqyUdnY0QNqqWs0HOtuQGGEMizOTNNn1P7sGRBxARnUeLejOsgwjDyRqT3E/CSst02ZQ==",
|
"integrity": "sha512-T7mYop3aDpRHIQaUYcmzmh6j9MAe560n6ukqjJMbVC6bVTau7dSpvB18bcsBPPtOSe10cKxhJFtlbEzLa0LL1g==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/emoji-regex": {
|
"node_modules/emoji-regex": {
|
||||||
|
@ -2101,9 +2111,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/enhanced-resolve": {
|
"node_modules/enhanced-resolve": {
|
||||||
"version": "5.4.1",
|
"version": "5.7.0",
|
||||||
"resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.4.1.tgz",
|
"resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.7.0.tgz",
|
||||||
"integrity": "sha512-4GbyIMzYktTFoRSmkbgZ1LU+RXwf4AQ8Z+rSuuh1dC8plp0PPeaWvx6+G4hh4KnUJ48VoxKbNyA1QQQIUpXjYA==",
|
"integrity": "sha512-6njwt/NsZFUKhM6j9U8hzVyD4E4r0x7NQzhTCbcWOJ0IQjNSAoalWmb0AE51Wn+fwan5qVESWi7t2ToBxs9vrw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"graceful-fs": "^4.2.4",
|
"graceful-fs": "^4.2.4",
|
||||||
|
@ -2160,6 +2170,12 @@
|
||||||
"is-arrayish": "^0.2.1"
|
"is-arrayish": "^0.2.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/es-module-lexer": {
|
||||||
|
"version": "0.3.26",
|
||||||
|
"resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.3.26.tgz",
|
||||||
|
"integrity": "sha512-Va0Q/xqtrss45hWzP8CZJwzGSZJjDM5/MJRE3IXXnUCcVLElR9BRaE9F62BopysASyc4nM3uwhSW7FFB9nlWAA==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"node_modules/escalade": {
|
"node_modules/escalade": {
|
||||||
"version": "3.1.1",
|
"version": "3.1.1",
|
||||||
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
|
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
|
||||||
|
@ -2269,9 +2285,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/fast-glob": {
|
"node_modules/fast-glob": {
|
||||||
"version": "3.2.4",
|
"version": "3.2.5",
|
||||||
"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.4.tgz",
|
"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.5.tgz",
|
||||||
"integrity": "sha512-kr/Oo6PX51265qeuCYsyGypiO5uJFgBS0jksyG7FUeCyQzNwYnzrNIMR1NXfkZXsMYXYLRAHgISHBz8gQcxKHQ==",
|
"integrity": "sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"peer": true,
|
"peer": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
@ -2445,9 +2461,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/get-intrinsic": {
|
"node_modules/get-intrinsic": {
|
||||||
"version": "1.0.2",
|
"version": "1.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.0.tgz",
|
||||||
"integrity": "sha512-aeX0vrFm21ILl3+JpFFRNe9aUvp6VFZb2/CTbgLb8j75kOhvoNYjt9d8KA/tJG4gSo8nzEDedRl0h7vDmBYRVg==",
|
"integrity": "sha512-M11rgtQp5GZMZzDL7jLTNxbDfurpzuau5uqRWDPvlHjfvg3TdScAZo96GLvhMjImrmR8uAt0FS2RLoMrfWGKlg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"function-bind": "^1.1.1",
|
"function-bind": "^1.1.1",
|
||||||
|
@ -2969,9 +2985,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/less-loader": {
|
"node_modules/less-loader": {
|
||||||
"version": "7.2.1",
|
"version": "7.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/less-loader/-/less-loader-7.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/less-loader/-/less-loader-7.3.0.tgz",
|
||||||
"integrity": "sha512-4v83WZ7KGbluOWPgk3iNjreAaJDNStfmmdfJbQIib3Jlc8mejV3w6A9xU+EkaivjBVqwQEK0y8cFthyNeGnrTQ==",
|
"integrity": "sha512-Mi8915g7NMaLlgi77mgTTQvK022xKRQBIVDSyfl3ErTuBhmZBQab0mjeJjNNqGbdR+qrfTleKXqbGI4uEFavxg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"klona": "^2.0.4",
|
"klona": "^2.0.4",
|
||||||
|
@ -3228,9 +3244,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/mini-css-extract-plugin": {
|
"node_modules/mini-css-extract-plugin": {
|
||||||
"version": "1.3.3",
|
"version": "1.3.4",
|
||||||
"resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-1.3.3.tgz",
|
"resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-1.3.4.tgz",
|
||||||
"integrity": "sha512-7lvliDSMiuZc81kI+5/qxvn47SCM7BehXex3f2c6l/pR3Goj58IQxZh9nuPQ3AkGQgoETyXuIqLDaO5Oa0TyBw==",
|
"integrity": "sha512-dNjqyeogUd8ucUgw5sxm1ahvSfSUgef7smbmATRSbDm4EmNx5kQA6VdUEhEeCKSjX6CTYjb5vxgMUvRjqP3uHg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"loader-utils": "^2.0.0",
|
"loader-utils": "^2.0.0",
|
||||||
|
@ -3354,9 +3370,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/node-releases": {
|
"node_modules/node-releases": {
|
||||||
"version": "1.1.69",
|
"version": "1.1.70",
|
||||||
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.69.tgz",
|
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.70.tgz",
|
||||||
"integrity": "sha512-DGIjo79VDEyAnRlfSqYTsy+yoHd2IOjJiKUozD2MV2D85Vso6Bug56mb9tT/fY5Urt0iqk01H7x+llAruDR2zA==",
|
"integrity": "sha512-Slf2s69+2/uAD79pVVQo8uSiC34+g8GWY8UH2Qtqv34ZfhYrxpYpfzs9Js9d6O0mbDmALuxaTlplnBTnSELcrw==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/normalize-package-data": {
|
"node_modules/normalize-package-data": {
|
||||||
|
@ -3698,9 +3714,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/proj4": {
|
"node_modules/proj4": {
|
||||||
"version": "2.6.3",
|
"version": "2.7.0",
|
||||||
"resolved": "https://registry.npmjs.org/proj4/-/proj4-2.6.3.tgz",
|
"resolved": "https://registry.npmjs.org/proj4/-/proj4-2.7.0.tgz",
|
||||||
"integrity": "sha512-XRqnLmHWlvi7jqKNTqaOUrVy72JEtOUrnlLki99yZUOSvcSeBaZ1I/EGnQ2LzplSbjSrebGAdikqCLeCxC/YEg==",
|
"integrity": "sha512-UVhulf8m70/dREOBrJagWq8cDYUgjQUWILRqys/gqo/+ZLeNB/04zbtPhJbz8+cCPzZNQMychfBaWUCP60U9mQ==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"mgrs": "1.0.0",
|
"mgrs": "1.0.0",
|
||||||
"wkt-parser": "^1.2.4"
|
"wkt-parser": "^1.2.4"
|
||||||
|
@ -4515,20 +4531,21 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/webpack": {
|
"node_modules/webpack": {
|
||||||
"version": "5.12.3",
|
"version": "5.18.0",
|
||||||
"resolved": "https://registry.npmjs.org/webpack/-/webpack-5.12.3.tgz",
|
"resolved": "https://registry.npmjs.org/webpack/-/webpack-5.18.0.tgz",
|
||||||
"integrity": "sha512-7tiQmcTnKhZwbf7X7sEfXe0pgkGjUZjT6JfYkZHvvIb4/ZsXl1rJu5PxsJoN7W3v5sNSP/8TgBoiOdDqVdvK5w==",
|
"integrity": "sha512-RmiP/iy6ROvVe/S+u0TrvL/oOmvP+2+Bs8MWjvBwwY/j82Q51XJyDJ75m0QAGntL1Wx6B//Xc0+4VPP/hlNHmw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@types/eslint-scope": "^3.7.0",
|
"@types/eslint-scope": "^3.7.0",
|
||||||
"@types/estree": "^0.0.45",
|
"@types/estree": "^0.0.46",
|
||||||
"@webassemblyjs/ast": "1.11.0",
|
"@webassemblyjs/ast": "1.11.0",
|
||||||
"@webassemblyjs/wasm-edit": "1.11.0",
|
"@webassemblyjs/wasm-edit": "1.11.0",
|
||||||
"@webassemblyjs/wasm-parser": "1.11.0",
|
"@webassemblyjs/wasm-parser": "1.11.0",
|
||||||
"acorn": "^8.0.4",
|
"acorn": "^8.0.4",
|
||||||
"browserslist": "^4.14.5",
|
"browserslist": "^4.14.5",
|
||||||
"chrome-trace-event": "^1.0.2",
|
"chrome-trace-event": "^1.0.2",
|
||||||
"enhanced-resolve": "^5.3.1",
|
"enhanced-resolve": "^5.7.0",
|
||||||
|
"es-module-lexer": "^0.3.26",
|
||||||
"eslint-scope": "^5.1.1",
|
"eslint-scope": "^5.1.1",
|
||||||
"events": "^3.2.0",
|
"events": "^3.2.0",
|
||||||
"glob-to-regexp": "^0.4.1",
|
"glob-to-regexp": "^0.4.1",
|
||||||
|
@ -4561,14 +4578,15 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/webpack-cli": {
|
"node_modules/webpack-cli": {
|
||||||
"version": "4.3.1",
|
"version": "4.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.3.1.tgz",
|
"resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.4.0.tgz",
|
||||||
"integrity": "sha512-/F4+9QNZM/qKzzL9/06Am8NXIkGV+/NqQ62Dx7DSqudxxpAgBqYn6V7+zp+0Y7JuWksKUbczRY3wMTd+7Uj6OA==",
|
"integrity": "sha512-/Qh07CXfXEkMu5S8wEpjuaw2Zj/CC0hf/qbTDp6N8N7JjdGuaOjZ7kttz+zhuJO/J5m7alQEhNk9lsc4rC6xgQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@discoveryjs/json-ext": "^0.5.0",
|
"@discoveryjs/json-ext": "^0.5.0",
|
||||||
|
"@webpack-cli/configtest": "^1.0.0",
|
||||||
"@webpack-cli/info": "^1.2.1",
|
"@webpack-cli/info": "^1.2.1",
|
||||||
"@webpack-cli/serve": "^1.2.1",
|
"@webpack-cli/serve": "^1.2.2",
|
||||||
"colorette": "^1.2.1",
|
"colorette": "^1.2.1",
|
||||||
"commander": "^6.2.0",
|
"commander": "^6.2.0",
|
||||||
"enquirer": "^2.3.6",
|
"enquirer": "^2.3.6",
|
||||||
|
@ -4578,7 +4596,7 @@
|
||||||
"interpret": "^2.2.0",
|
"interpret": "^2.2.0",
|
||||||
"rechoir": "^0.7.0",
|
"rechoir": "^0.7.0",
|
||||||
"v8-compile-cache": "^2.2.0",
|
"v8-compile-cache": "^2.2.0",
|
||||||
"webpack-merge": "^4.2.2"
|
"webpack-merge": "^5.7.3"
|
||||||
},
|
},
|
||||||
"bin": {
|
"bin": {
|
||||||
"webpack-cli": "bin/cli.js"
|
"webpack-cli": "bin/cli.js"
|
||||||
|
@ -4616,15 +4634,6 @@
|
||||||
"node": ">= 6"
|
"node": ">= 6"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/webpack-cli/node_modules/webpack-merge": {
|
|
||||||
"version": "4.2.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.2.tgz",
|
|
||||||
"integrity": "sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g==",
|
|
||||||
"dev": true,
|
|
||||||
"dependencies": {
|
|
||||||
"lodash": "^4.17.15"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/webpack-merge": {
|
"node_modules/webpack-merge": {
|
||||||
"version": "5.7.3",
|
"version": "5.7.3",
|
||||||
"resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.7.3.tgz",
|
"resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.7.3.tgz",
|
||||||
|
@ -5992,9 +6001,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@types/estree": {
|
"@types/estree": {
|
||||||
"version": "0.0.45",
|
"version": "0.0.46",
|
||||||
"resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.45.tgz",
|
"resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.46.tgz",
|
||||||
"integrity": "sha512-jnqIUKDUqJbDIUxm0Uj7bnlMnRm1T/eZ9N+AVMqhPgzrba2GhGG5o/jCTwmdPK709nEZsGoMzXEDUjcXHa3W0g==",
|
"integrity": "sha512-laIjwTQaD+5DukBZaygQ79K1Z0jb1bPEMRrkXSLjtCcZm+abyp5YbrqpSLzD42FwWW6gK/aS4NYpJ804nG2brg==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"@types/glob": {
|
"@types/glob": {
|
||||||
|
@ -6009,9 +6018,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@types/json-schema": {
|
"@types/json-schema": {
|
||||||
"version": "7.0.6",
|
"version": "7.0.7",
|
||||||
"resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.6.tgz",
|
"resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.7.tgz",
|
||||||
"integrity": "sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw==",
|
"integrity": "sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"@types/minimatch": {
|
"@types/minimatch": {
|
||||||
|
@ -6022,9 +6031,9 @@
|
||||||
"peer": true
|
"peer": true
|
||||||
},
|
},
|
||||||
"@types/node": {
|
"@types/node": {
|
||||||
"version": "14.14.20",
|
"version": "14.14.22",
|
||||||
"resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.20.tgz",
|
"resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.22.tgz",
|
||||||
"integrity": "sha512-Y93R97Ouif9JEOWPIUyU+eyIdyRqQR0I8Ez1dzku4hDx34NWh4HbtIc3WNzwB1Y9ULvNGeu5B8h8bVL5cAk4/A==",
|
"integrity": "sha512-g+f/qj/cNcqKkc3tFqlXOYjrmZA+jNBiDzbP3kH+B+otKFqAdPgVTGP1IeKRdMml/aE69as5S4FqtxAbl+LaMw==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"@webassemblyjs/ast": {
|
"@webassemblyjs/ast": {
|
||||||
|
@ -6173,6 +6182,13 @@
|
||||||
"@xtuc/long": "4.2.2"
|
"@xtuc/long": "4.2.2"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"@webpack-cli/configtest": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.0.0.tgz",
|
||||||
|
"integrity": "sha512-Un0SdBoN1h4ACnIO7EiCjWuyhNI0Jl96JC+63q6xi4HDUYRZn8Auluea9D+v9NWKc5J4sICVEltdBaVjLX39xw==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {}
|
||||||
|
},
|
||||||
"@webpack-cli/info": {
|
"@webpack-cli/info": {
|
||||||
"version": "1.2.1",
|
"version": "1.2.1",
|
||||||
"resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.2.1.tgz",
|
||||||
|
@ -6183,9 +6199,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@webpack-cli/serve": {
|
"@webpack-cli/serve": {
|
||||||
"version": "1.2.1",
|
"version": "1.2.2",
|
||||||
"resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.2.2.tgz",
|
||||||
"integrity": "sha512-Zj1z6AyS+vqV6Hfi7ngCjFGdHV5EwZNIHo6QfFTNe9PyW+zBU1zJ9BiOW1pmUEq950RC4+Dym6flyA/61/vhyw==",
|
"integrity": "sha512-03GkWxcgFfm8+WIwcsqJb9agrSDNDDoxaNnexPnCCexP5SCE4IgFd9lNpSy+K2nFqVMpgTFw6SwbmVAVTndVew==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {}
|
"requires": {}
|
||||||
},
|
},
|
||||||
|
@ -6202,9 +6218,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"acorn": {
|
"acorn": {
|
||||||
"version": "8.0.4",
|
"version": "8.0.5",
|
||||||
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.0.4.tgz",
|
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.0.5.tgz",
|
||||||
"integrity": "sha512-XNP0PqF1XD19ZlLKvB7cMmnZswW4C/03pRHgirB30uSJTaS3A3V1/P4sS3HPvFmjoriPCJQs+JDSbm4bL1TxGQ==",
|
"integrity": "sha512-v+DieK/HJkJOpFBETDJioequtc3PfxsWMaxIdIwujtF7FEV/MAyDQLlm6/zPvr7Mix07mLh6ccVwIsloceodlg==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"ajv": {
|
"ajv": {
|
||||||
|
@ -6329,9 +6345,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"call-bind": {
|
"call-bind": {
|
||||||
"version": "1.0.1",
|
"version": "1.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
|
||||||
"integrity": "sha512-tvAvUwNcRikl3RVF20X9lsYmmepsovzTWeJiXjO0PkJp15uy/6xKFZOQtuiSULwYW+6ToZBprphCgWXC2dSgcQ==",
|
"integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"function-bind": "^1.1.1",
|
"function-bind": "^1.1.1",
|
||||||
|
@ -6345,9 +6361,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"caniuse-lite": {
|
"caniuse-lite": {
|
||||||
"version": "1.0.30001174",
|
"version": "1.0.30001179",
|
||||||
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001174.tgz",
|
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001179.tgz",
|
||||||
"integrity": "sha512-tqClL/4ThQq6cfFXH3oJL4rifFBeM6gTkphjao5kgwMaW9yn0tKgQLAEfKzDwj6HQWCB/aWo8kTFlSvIN8geEA==",
|
"integrity": "sha512-blMmO0QQujuUWZKyVrD1msR4WNDAqb/UPO1Sw2WWsQ7deoM5bJiicKnWJ1Y0NS/aGINSnKPIWBMw5luX+NDUCA==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"chalk": {
|
"chalk": {
|
||||||
|
@ -6480,12 +6496,12 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"core-js-compat": {
|
"core-js-compat": {
|
||||||
"version": "3.8.2",
|
"version": "3.8.3",
|
||||||
"resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.8.2.tgz",
|
"resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.8.3.tgz",
|
||||||
"integrity": "sha512-LO8uL9lOIyRRrQmZxHZFl1RV+ZbcsAkFWTktn5SmH40WgLtSNYN4m4W2v9ONT147PxBY/XrRhrWq8TlvObyUjQ==",
|
"integrity": "sha512-1sCb0wBXnBIL16pfFG1Gkvei6UzvKyTNYpiC41yrdjEv0UoJoq9E/abTMzyYJ6JpTkAj15dLjbqifIzEBDVvog==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"browserslist": "^4.16.0",
|
"browserslist": "^4.16.1",
|
||||||
"semver": "7.0.0"
|
"semver": "7.0.0"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
@ -6614,9 +6630,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"electron-to-chromium": {
|
"electron-to-chromium": {
|
||||||
"version": "1.3.635",
|
"version": "1.3.645",
|
||||||
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.635.tgz",
|
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.645.tgz",
|
||||||
"integrity": "sha512-RRriZOLs9CpW6KTLmgBqyUdnY0QNqqWs0HOtuQGGEMizOTNNn1P7sGRBxARnUeLejOsgwjDyRqT3E/CSst02ZQ==",
|
"integrity": "sha512-T7mYop3aDpRHIQaUYcmzmh6j9MAe560n6ukqjJMbVC6bVTau7dSpvB18bcsBPPtOSe10cKxhJFtlbEzLa0LL1g==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"emoji-regex": {
|
"emoji-regex": {
|
||||||
|
@ -6632,9 +6648,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"enhanced-resolve": {
|
"enhanced-resolve": {
|
||||||
"version": "5.4.1",
|
"version": "5.7.0",
|
||||||
"resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.4.1.tgz",
|
"resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.7.0.tgz",
|
||||||
"integrity": "sha512-4GbyIMzYktTFoRSmkbgZ1LU+RXwf4AQ8Z+rSuuh1dC8plp0PPeaWvx6+G4hh4KnUJ48VoxKbNyA1QQQIUpXjYA==",
|
"integrity": "sha512-6njwt/NsZFUKhM6j9U8hzVyD4E4r0x7NQzhTCbcWOJ0IQjNSAoalWmb0AE51Wn+fwan5qVESWi7t2ToBxs9vrw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"graceful-fs": "^4.2.4",
|
"graceful-fs": "^4.2.4",
|
||||||
|
@ -6676,6 +6692,12 @@
|
||||||
"is-arrayish": "^0.2.1"
|
"is-arrayish": "^0.2.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"es-module-lexer": {
|
||||||
|
"version": "0.3.26",
|
||||||
|
"resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.3.26.tgz",
|
||||||
|
"integrity": "sha512-Va0Q/xqtrss45hWzP8CZJwzGSZJjDM5/MJRE3IXXnUCcVLElR9BRaE9F62BopysASyc4nM3uwhSW7FFB9nlWAA==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"escalade": {
|
"escalade": {
|
||||||
"version": "3.1.1",
|
"version": "3.1.1",
|
||||||
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
|
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
|
||||||
|
@ -6757,9 +6779,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"fast-glob": {
|
"fast-glob": {
|
||||||
"version": "3.2.4",
|
"version": "3.2.5",
|
||||||
"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.4.tgz",
|
"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.5.tgz",
|
||||||
"integrity": "sha512-kr/Oo6PX51265qeuCYsyGypiO5uJFgBS0jksyG7FUeCyQzNwYnzrNIMR1NXfkZXsMYXYLRAHgISHBz8gQcxKHQ==",
|
"integrity": "sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"peer": true,
|
"peer": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
|
@ -6891,9 +6913,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"get-intrinsic": {
|
"get-intrinsic": {
|
||||||
"version": "1.0.2",
|
"version": "1.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.0.tgz",
|
||||||
"integrity": "sha512-aeX0vrFm21ILl3+JpFFRNe9aUvp6VFZb2/CTbgLb8j75kOhvoNYjt9d8KA/tJG4gSo8nzEDedRl0h7vDmBYRVg==",
|
"integrity": "sha512-M11rgtQp5GZMZzDL7jLTNxbDfurpzuau5uqRWDPvlHjfvg3TdScAZo96GLvhMjImrmR8uAt0FS2RLoMrfWGKlg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"function-bind": "^1.1.1",
|
"function-bind": "^1.1.1",
|
||||||
|
@ -7307,9 +7329,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"less-loader": {
|
"less-loader": {
|
||||||
"version": "7.2.1",
|
"version": "7.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/less-loader/-/less-loader-7.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/less-loader/-/less-loader-7.3.0.tgz",
|
||||||
"integrity": "sha512-4v83WZ7KGbluOWPgk3iNjreAaJDNStfmmdfJbQIib3Jlc8mejV3w6A9xU+EkaivjBVqwQEK0y8cFthyNeGnrTQ==",
|
"integrity": "sha512-Mi8915g7NMaLlgi77mgTTQvK022xKRQBIVDSyfl3ErTuBhmZBQab0mjeJjNNqGbdR+qrfTleKXqbGI4uEFavxg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"klona": "^2.0.4",
|
"klona": "^2.0.4",
|
||||||
|
@ -7469,9 +7491,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"mini-css-extract-plugin": {
|
"mini-css-extract-plugin": {
|
||||||
"version": "1.3.3",
|
"version": "1.3.4",
|
||||||
"resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-1.3.3.tgz",
|
"resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-1.3.4.tgz",
|
||||||
"integrity": "sha512-7lvliDSMiuZc81kI+5/qxvn47SCM7BehXex3f2c6l/pR3Goj58IQxZh9nuPQ3AkGQgoETyXuIqLDaO5Oa0TyBw==",
|
"integrity": "sha512-dNjqyeogUd8ucUgw5sxm1ahvSfSUgef7smbmATRSbDm4EmNx5kQA6VdUEhEeCKSjX6CTYjb5vxgMUvRjqP3uHg==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"loader-utils": "^2.0.0",
|
"loader-utils": "^2.0.0",
|
||||||
|
@ -7564,9 +7586,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node-releases": {
|
"node-releases": {
|
||||||
"version": "1.1.69",
|
"version": "1.1.70",
|
||||||
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.69.tgz",
|
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.70.tgz",
|
||||||
"integrity": "sha512-DGIjo79VDEyAnRlfSqYTsy+yoHd2IOjJiKUozD2MV2D85Vso6Bug56mb9tT/fY5Urt0iqk01H7x+llAruDR2zA==",
|
"integrity": "sha512-Slf2s69+2/uAD79pVVQo8uSiC34+g8GWY8UH2Qtqv34ZfhYrxpYpfzs9Js9d6O0mbDmALuxaTlplnBTnSELcrw==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"normalize-package-data": {
|
"normalize-package-data": {
|
||||||
|
@ -7808,9 +7830,9 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"proj4": {
|
"proj4": {
|
||||||
"version": "2.6.3",
|
"version": "2.7.0",
|
||||||
"resolved": "https://registry.npmjs.org/proj4/-/proj4-2.6.3.tgz",
|
"resolved": "https://registry.npmjs.org/proj4/-/proj4-2.7.0.tgz",
|
||||||
"integrity": "sha512-XRqnLmHWlvi7jqKNTqaOUrVy72JEtOUrnlLki99yZUOSvcSeBaZ1I/EGnQ2LzplSbjSrebGAdikqCLeCxC/YEg==",
|
"integrity": "sha512-UVhulf8m70/dREOBrJagWq8cDYUgjQUWILRqys/gqo/+ZLeNB/04zbtPhJbz8+cCPzZNQMychfBaWUCP60U9mQ==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"mgrs": "1.0.0",
|
"mgrs": "1.0.0",
|
||||||
"wkt-parser": "^1.2.4"
|
"wkt-parser": "^1.2.4"
|
||||||
|
@ -8432,20 +8454,21 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"webpack": {
|
"webpack": {
|
||||||
"version": "5.12.3",
|
"version": "5.18.0",
|
||||||
"resolved": "https://registry.npmjs.org/webpack/-/webpack-5.12.3.tgz",
|
"resolved": "https://registry.npmjs.org/webpack/-/webpack-5.18.0.tgz",
|
||||||
"integrity": "sha512-7tiQmcTnKhZwbf7X7sEfXe0pgkGjUZjT6JfYkZHvvIb4/ZsXl1rJu5PxsJoN7W3v5sNSP/8TgBoiOdDqVdvK5w==",
|
"integrity": "sha512-RmiP/iy6ROvVe/S+u0TrvL/oOmvP+2+Bs8MWjvBwwY/j82Q51XJyDJ75m0QAGntL1Wx6B//Xc0+4VPP/hlNHmw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@types/eslint-scope": "^3.7.0",
|
"@types/eslint-scope": "^3.7.0",
|
||||||
"@types/estree": "^0.0.45",
|
"@types/estree": "^0.0.46",
|
||||||
"@webassemblyjs/ast": "1.11.0",
|
"@webassemblyjs/ast": "1.11.0",
|
||||||
"@webassemblyjs/wasm-edit": "1.11.0",
|
"@webassemblyjs/wasm-edit": "1.11.0",
|
||||||
"@webassemblyjs/wasm-parser": "1.11.0",
|
"@webassemblyjs/wasm-parser": "1.11.0",
|
||||||
"acorn": "^8.0.4",
|
"acorn": "^8.0.4",
|
||||||
"browserslist": "^4.14.5",
|
"browserslist": "^4.14.5",
|
||||||
"chrome-trace-event": "^1.0.2",
|
"chrome-trace-event": "^1.0.2",
|
||||||
"enhanced-resolve": "^5.3.1",
|
"enhanced-resolve": "^5.7.0",
|
||||||
|
"es-module-lexer": "^0.3.26",
|
||||||
"eslint-scope": "^5.1.1",
|
"eslint-scope": "^5.1.1",
|
||||||
"events": "^3.2.0",
|
"events": "^3.2.0",
|
||||||
"glob-to-regexp": "^0.4.1",
|
"glob-to-regexp": "^0.4.1",
|
||||||
|
@ -8538,14 +8561,15 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"webpack-cli": {
|
"webpack-cli": {
|
||||||
"version": "4.3.1",
|
"version": "4.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.3.1.tgz",
|
"resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.4.0.tgz",
|
||||||
"integrity": "sha512-/F4+9QNZM/qKzzL9/06Am8NXIkGV+/NqQ62Dx7DSqudxxpAgBqYn6V7+zp+0Y7JuWksKUbczRY3wMTd+7Uj6OA==",
|
"integrity": "sha512-/Qh07CXfXEkMu5S8wEpjuaw2Zj/CC0hf/qbTDp6N8N7JjdGuaOjZ7kttz+zhuJO/J5m7alQEhNk9lsc4rC6xgQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"@discoveryjs/json-ext": "^0.5.0",
|
"@discoveryjs/json-ext": "^0.5.0",
|
||||||
|
"@webpack-cli/configtest": "^1.0.0",
|
||||||
"@webpack-cli/info": "^1.2.1",
|
"@webpack-cli/info": "^1.2.1",
|
||||||
"@webpack-cli/serve": "^1.2.1",
|
"@webpack-cli/serve": "^1.2.2",
|
||||||
"colorette": "^1.2.1",
|
"colorette": "^1.2.1",
|
||||||
"commander": "^6.2.0",
|
"commander": "^6.2.0",
|
||||||
"enquirer": "^2.3.6",
|
"enquirer": "^2.3.6",
|
||||||
|
@ -8555,7 +8579,7 @@
|
||||||
"interpret": "^2.2.0",
|
"interpret": "^2.2.0",
|
||||||
"rechoir": "^0.7.0",
|
"rechoir": "^0.7.0",
|
||||||
"v8-compile-cache": "^2.2.0",
|
"v8-compile-cache": "^2.2.0",
|
||||||
"webpack-merge": "^4.2.2"
|
"webpack-merge": "^5.7.3"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"commander": {
|
"commander": {
|
||||||
|
@ -8563,15 +8587,6 @@
|
||||||
"resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz",
|
||||||
"integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==",
|
"integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
|
||||||
"webpack-merge": {
|
|
||||||
"version": "4.2.2",
|
|
||||||
"resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.2.tgz",
|
|
||||||
"integrity": "sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g==",
|
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
|
||||||
"lodash": "^4.17.15"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
@ -51,14 +51,13 @@ section {
|
||||||
/* margin: 10px; */
|
/* margin: 10px; */
|
||||||
}
|
}
|
||||||
|
|
||||||
.input-area {
|
/*.input-area {
|
||||||
/* flex: 1;
|
flex: 1;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
justify-content: center; */
|
justify-content: center;
|
||||||
/* margin: 10px; */
|
}*/
|
||||||
}
|
|
||||||
|
|
||||||
.btnDownloadMeme {
|
.btnDownloadMeme {
|
||||||
margin-top: 10px;
|
margin-top: 10px;
|
||||||
|
@ -569,7 +568,6 @@ label>.label-body {
|
||||||
color: #757575;
|
color: #757575;
|
||||||
background-color: white;
|
background-color: white;
|
||||||
border-bottom: 1px solid #dcdcdc;
|
border-bottom: 1px solid #dcdcdc;
|
||||||
/* border-bottom: 1px solid #dcdcdc; */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.navigation ul {
|
.navigation ul {
|
||||||
|
@ -773,6 +771,8 @@ there.
|
||||||
|
|
||||||
@media (min-width: 1200px) {}
|
@media (min-width: 1200px) {}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.tab-content {
|
.tab-content {
|
||||||
min-height: 390px;
|
min-height: 390px;
|
||||||
}
|
}
|
||||||
|
@ -814,3 +814,41 @@ ul.tab-nav li span.active.button {
|
||||||
display: block;
|
display: block;
|
||||||
/* visibility: visible; */
|
/* visibility: visible; */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.red-label {
|
||||||
|
color: #f00;
|
||||||
|
padding: 2px;
|
||||||
|
text-shadow: -1px -1px #FFF, 0 -1px #FFF, 1px -1px #FFF, -1px 0 #FFF, 1px 0 #FFF, -1px 1px #FFF, 0 1px #FFF, 1px 1px #FFF;
|
||||||
|
position: absolute;
|
||||||
|
pointer-events: none;
|
||||||
|
-moz-user-select: none;
|
||||||
|
-ms-user-select: none;
|
||||||
|
-webkit-user-select: none;
|
||||||
|
user-select: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.green-label {
|
||||||
|
color: #7cfc00;
|
||||||
|
padding: 2px;
|
||||||
|
text-shadow: -1px -1px #FFF, 0 -1px #FFF, 1px -1px #FFF, -1px 0 #FFF, 1px 0 #FFF, -1px 1px #FFF, 0 1px #FFF, 1px 1px #FFF;
|
||||||
|
position: absolute;
|
||||||
|
pointer-events: none;
|
||||||
|
-moz-user-select: none;
|
||||||
|
-ms-user-select: none;
|
||||||
|
-webkit-user-select: none;
|
||||||
|
user-select: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.blue-label {
|
||||||
|
color: #00bfff;
|
||||||
|
padding: 2px;
|
||||||
|
text-shadow: -1px -1px #FFF, 0 -1px #FFF, 1px -1px #FFF, -1px 0 #FFF, 1px 0 #FFF, -1px 1px #FFF, 0 1px #FFF, 1px 1px #FFF;
|
||||||
|
position: absolute;
|
||||||
|
pointer-events: none;
|
||||||
|
-moz-user-select: none;
|
||||||
|
-ms-user-select: none;
|
||||||
|
-webkit-user-select: none;
|
||||||
|
user-select: none;
|
||||||
|
}
|
|
@ -9,10 +9,6 @@ import { WebGLRenderer } from 'three/src/renderers/WebGLRenderer';
|
||||||
import { Scene } from 'three/src/scenes/Scene';
|
import { Scene } from 'three/src/scenes/Scene';
|
||||||
import { PerspectiveCamera } from 'three/src/cameras/PerspectiveCamera';
|
import { PerspectiveCamera } from 'three/src/cameras/PerspectiveCamera';
|
||||||
|
|
||||||
// import { SphereGeometry } from 'three/src/geometries/SphereGeometry';
|
|
||||||
// import { MeshLambertMaterial } from 'three/src/materials/MeshLambertMaterial';
|
|
||||||
// import { Mesh } from 'three/src/objects/Mesh';
|
|
||||||
|
|
||||||
import './NorthArrow.css';
|
import './NorthArrow.css';
|
||||||
|
|
||||||
export class NortArrow extends Control {
|
export class NortArrow extends Control {
|
||||||
|
|
|
@ -12,12 +12,17 @@ class Map extends OrbitControls {
|
||||||
_controlContainer;
|
_controlContainer;
|
||||||
_controls;
|
_controls;
|
||||||
|
|
||||||
constructor(size, center, camera, scene, domElement, container) {
|
constructor(x, y, z, size, center, camera, scene, domElement, container) {
|
||||||
// call parent constructor of OrbitControls
|
// call parent constructor of OrbitControls
|
||||||
super(size, center, camera, scene, domElement);
|
super(size, center, camera, scene, domElement);
|
||||||
|
|
||||||
this.camera = camera;
|
this.camera = camera;
|
||||||
this.container = container;
|
this.container = container;
|
||||||
|
this.length = x.max - x.min;
|
||||||
|
this.width = y.max - y.min;
|
||||||
|
this.x = x;
|
||||||
|
this.y = y;
|
||||||
|
this.z = z;
|
||||||
|
|
||||||
//init the control corners
|
//init the control corners
|
||||||
if (this._initControlPos) {
|
if (this._initControlPos) {
|
||||||
|
|
|
@ -11,6 +11,7 @@ class BoxLayer extends Layer {
|
||||||
this.visible = true;
|
this.visible = true;
|
||||||
this.name = params.name;
|
this.name = params.name;
|
||||||
this.color = params.color;
|
this.color = params.color;
|
||||||
|
this.center = params.center;
|
||||||
this.geometry = new BoxGeometry(params.width, params.height, params.depth);
|
this.geometry = new BoxGeometry(params.width, params.height, params.depth);
|
||||||
this.material = new MeshBasicMaterial({
|
this.material = new MeshBasicMaterial({
|
||||||
color: this.color
|
color: this.color
|
||||||
|
@ -18,9 +19,10 @@ class BoxLayer extends Layer {
|
||||||
this.materials = [];
|
this.materials = [];
|
||||||
this.materials.push(this.material);
|
this.materials.push(this.material);
|
||||||
this.mesh = new Mesh(this.geometry, this.material);
|
this.mesh = new Mesh(this.geometry, this.material);
|
||||||
this.mesh.position.x = 4282010;
|
// this.mesh.position.x = 4282010;
|
||||||
this.mesh.position.y = 2302070;
|
// this.mesh.position.y = 2302070;
|
||||||
this.mesh.position.z = -13616.3;
|
// this.mesh.position.z = -13616.3;
|
||||||
|
this.mesh.position.set(this.center.x, this.center.y, this.center.z);
|
||||||
}
|
}
|
||||||
|
|
||||||
setVisible(visible) {
|
setVisible(visible) {
|
||||||
|
|
383
src/js/layer/GridLayer.js
Normal file
383
src/js/layer/GridLayer.js
Normal file
|
@ -0,0 +1,383 @@
|
||||||
|
import { BufferGeometry } from 'three/src/core/BufferGeometry';
|
||||||
|
import { Float32BufferAttribute } from 'three/src/core/BufferAttribute';
|
||||||
|
import { LineBasicMaterial } from 'three/src/materials/LineBasicMaterial';
|
||||||
|
import { PointsMaterial } from 'three/src/materials/PointsMaterial';
|
||||||
|
import { LineSegments } from 'three/src/objects/LineSegments';
|
||||||
|
import { Layer } from './Layer';
|
||||||
|
import { Group } from 'three/src/objects/Group';
|
||||||
|
// import { Color } from 'three/src/math/Color';
|
||||||
|
import { Vector3 } from 'three/src/math/Vector3';
|
||||||
|
import { Geometry } from 'three/src/core/Geometry';
|
||||||
|
import { Line } from 'three/src/objects/Line';
|
||||||
|
import { Points } from 'three/src/objects/Points';
|
||||||
|
|
||||||
|
export class GridLayer extends Layer {
|
||||||
|
|
||||||
|
constructor(params) {
|
||||||
|
super();
|
||||||
|
this.type = 'GridLayer';
|
||||||
|
|
||||||
|
//this.features = [];
|
||||||
|
this.visible = true;
|
||||||
|
this.opacity = 1;
|
||||||
|
this.materials = [];
|
||||||
|
for (var k in params) {
|
||||||
|
this[k] = params[k];
|
||||||
|
}
|
||||||
|
this.objectGroup = new Group();
|
||||||
|
this.labelConnectorGroup = new Group();
|
||||||
|
|
||||||
|
//for labeling
|
||||||
|
// this.l = { i: 0, v: 4.99999999998, ht: 3 };//ht:3, ht:1 an der Ebene
|
||||||
|
this.labelInfo = { i: 0, v: 100, ht: 3 };//ht:3, ht:1 an der Ebene
|
||||||
|
this.labels = [];
|
||||||
|
this.scale = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
scaleZ(z) {
|
||||||
|
this.objectGroup.scale.z = z;
|
||||||
|
this.labelConnectorGroup.scale.z = z;
|
||||||
|
}
|
||||||
|
|
||||||
|
setWireframeMode(wireframe) {
|
||||||
|
this.materials.forEach(function (mat) {
|
||||||
|
//if (m.w) return;
|
||||||
|
//m.mat.wireframe = wireframe;
|
||||||
|
mat.wireframe = wireframe;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
setVisible(visible) {
|
||||||
|
this.visible = visible;
|
||||||
|
this.objectGroup.visible = visible;
|
||||||
|
this.labelConnectorGroup.visible = visible;
|
||||||
|
this.labelParentElement.style.display = (this.objectGroup.visible == true) ? "block" : "none";
|
||||||
|
this.emit('visibility-change');
|
||||||
|
}
|
||||||
|
|
||||||
|
onRemove(map) {
|
||||||
|
this.getScene().remove(this.objectGroup);
|
||||||
|
}
|
||||||
|
|
||||||
|
onAdd(map) {
|
||||||
|
let divisions = 5;
|
||||||
|
// let size = map.length / 10;
|
||||||
|
|
||||||
|
|
||||||
|
let gridXZ = this.build(map.length, divisions, map.center.y, map.width);
|
||||||
|
// gridXZ.position.set(this.center.x, this.center.y, this.center.z);
|
||||||
|
|
||||||
|
// size = map.width / 10;
|
||||||
|
// let gridYZ = this.build(0, size, map.length / 2, map.width);
|
||||||
|
// gridYZ.rotation.z = Math.PI / 2;
|
||||||
|
// gridYZ.position.set(this.center.x, this.center.y, this.center.z);
|
||||||
|
|
||||||
|
let gridY = this.buildY(map.width, divisions, map.center.z, map.width);
|
||||||
|
|
||||||
|
//waagrechtes grid
|
||||||
|
// // let gridXY = this.build(map.length, divisions, 0, map.width);
|
||||||
|
// let gridXY = this.build(map.length, divisions, map.center.y, map.width);
|
||||||
|
// // gridXY.position.set(this.center.x, this.center.y, this.center.z);
|
||||||
|
// gridXY.rotation.x = Math.PI / 2;
|
||||||
|
|
||||||
|
this.buildLabels(divisions);
|
||||||
|
|
||||||
|
this.getScene().add(this.objectGroup);
|
||||||
|
this.getScene().add(this.labelConnectorGroup);
|
||||||
|
}
|
||||||
|
|
||||||
|
buildY(size, divisions, constant, height) {
|
||||||
|
let step = size / divisions;
|
||||||
|
let vertices = [];
|
||||||
|
|
||||||
|
for (let k = this._map.y.min; k <= this._map.y.max; k = k + step) {
|
||||||
|
vertices.push(this._map.x.min, k, constant, this._map.x.max, k, constant)
|
||||||
|
}
|
||||||
|
|
||||||
|
let geometry = new BufferGeometry();
|
||||||
|
let positions = new Float32BufferAttribute(vertices, 3);
|
||||||
|
geometry.setAttribute('position', positions);
|
||||||
|
let material = new LineBasicMaterial({
|
||||||
|
linewidth: 1,
|
||||||
|
color: 0xA0A1A3
|
||||||
|
});
|
||||||
|
this.materials.push(material);
|
||||||
|
|
||||||
|
//THREE.LineSegments.call(this, geometry, material);
|
||||||
|
let lineSegments = new LineSegments(geometry, material);
|
||||||
|
this.objectGroup.add(lineSegments);
|
||||||
|
return lineSegments;
|
||||||
|
}
|
||||||
|
|
||||||
|
build(size, divisions, constant_position, height) {
|
||||||
|
let step = size / divisions;
|
||||||
|
let vertices = [];
|
||||||
|
|
||||||
|
//for (var i = -size; i <= size; i += step) {
|
||||||
|
// vertices.push(i, position, height, i, position, -height);//senkrecht
|
||||||
|
//}
|
||||||
|
|
||||||
|
// for (let k = - halfSize; k <= halfSize; k = k + step) {
|
||||||
|
for (let k = this._map.x.min; k <= this._map.x.max; k = k + step) {
|
||||||
|
vertices.push(k, constant_position, height / 2, k, constant_position, -height / 2);//senkrecht
|
||||||
|
// vertices.push(-halfSize, constant_position, k, halfSize, constant_position, k);//waagrecht
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// // for (let j = -height; j <= height; j += step) {
|
||||||
|
// for (let j = this._map.z.min; j <= this._map.z.max; j += step) {
|
||||||
|
// // vertices.push(-halfSize, constant_position, j, halfSize, constant_position, j);//waagrecht
|
||||||
|
// vertices.push(this._map.x.min, constant_position, j, this._map.x.max, constant_position, j);//waagrecht
|
||||||
|
// }
|
||||||
|
|
||||||
|
let geometry = new BufferGeometry();
|
||||||
|
let positions = new Float32BufferAttribute(vertices, 3);
|
||||||
|
geometry.setAttribute('position', positions);
|
||||||
|
let material = new LineBasicMaterial({
|
||||||
|
linewidth: 1,
|
||||||
|
color: 0xA0A1A3
|
||||||
|
});
|
||||||
|
this.materials.push(material);
|
||||||
|
|
||||||
|
|
||||||
|
//THREE.LineSegments.call(this, geometry, material);
|
||||||
|
let lineSegments = new LineSegments(geometry, material);
|
||||||
|
//this.visible = false;
|
||||||
|
//this.geometry.visible = this.visible;
|
||||||
|
|
||||||
|
this.objectGroup.add(lineSegments);
|
||||||
|
return lineSegments;
|
||||||
|
}
|
||||||
|
|
||||||
|
_round(value, decimals) {
|
||||||
|
return Number(Math.round(value + 'e' + decimals) + 'e-' + decimals);
|
||||||
|
}
|
||||||
|
|
||||||
|
buildLabels(divisions = 5) {
|
||||||
|
let size = this._map.length;
|
||||||
|
let step = size / divisions;
|
||||||
|
|
||||||
|
// this.parent = parent;
|
||||||
|
// this.parentElement = parentElement;
|
||||||
|
// var width = 80;
|
||||||
|
let labels = new Array();
|
||||||
|
|
||||||
|
// for (let k = - halfSize; k <= halfSize; k = k + step) {
|
||||||
|
for (let k = this._map.x.min; k <= this._map.x.max; k = k + step) {
|
||||||
|
if (k % 1 != 0) k = this._round(k, 2);
|
||||||
|
let info = { a: k, size: step, axis: "x", color: 0xff0000, cl: "red-label", h: 0.6, centroid: [[k, this._map.center.y, this._map.width / 2]] };
|
||||||
|
labels.push(info);
|
||||||
|
}
|
||||||
|
|
||||||
|
size = this._map.width;
|
||||||
|
step = size / divisions;
|
||||||
|
for (let k = this._map.y.min; k <= this._map.y.max; k = k + step) {
|
||||||
|
if (k % 1 != 0) k = this._round(k, 2);
|
||||||
|
let info = { a: k, size: step, axis: "y", color: 0x00ff00, cl: "green-label", h: 0.6, centroid: [[this._map.x.min, k, this._map.center.z]] };
|
||||||
|
labels.push(info);
|
||||||
|
}
|
||||||
|
|
||||||
|
//label
|
||||||
|
// this.f = [
|
||||||
|
// { a: [i18n.widgets.gridlayer.east], cl: "red-label", h: 0.0, centroid: [[0, width / 2 + 15, this.height]], axis: true },
|
||||||
|
// { a: [this._map.getMapX(-10)], cl: "red-label", h: 0.0, centroid: [[-10, width / 2, this.height]] },
|
||||||
|
// { a: [this._map.getMapX(-20)], cl: "red-label", h: 0.6, centroid: [[-20, width / 2, this.height]] },
|
||||||
|
// { a: [this._map.getMapX(-30)], cl: "red-label", h: 0.6, centroid: [[-30, width / 2, this.height]] },
|
||||||
|
// { a: [this._map.getMapX(-40)], cl: "red-label", h: 0.6, centroid: [[-40, width / 2, this.height]] },
|
||||||
|
// { a: [this._map.getMapX(-50)], cl: "red-label", h: 0.6, hs: 4, centroid: [[-50, width / 2, this.height]] },
|
||||||
|
// { a: [this._map.getMapX(0)], cl: "red-label", h: 0.6, centroid: [[0, width / 2, this.height]] },
|
||||||
|
// { a: [this._map.getMapX(10)], cl: "red-label", h: 0.6, centroid: [[10, width / 2, this.height]] },
|
||||||
|
// { a: [this._map.getMapX(20)], cl: "red-label", h: 0.6, centroid: [[20, width / 2, this.height]] },
|
||||||
|
// { a: [this._map.getMapX(30)], cl: "red-label", h: 0.6, centroid: [[30, width / 2, this.height]] },
|
||||||
|
// { a: [this._map.getMapX(40)], cl: "red-label", h: 0.6, centroid: [[40, width / 2, this.height]] },
|
||||||
|
// { a: [this._map.getMapX(50)], cl: "red-label", h: 0.6, centroid: [[50, width / 2, this.height]] }
|
||||||
|
// ];
|
||||||
|
var getCentroidFunc = function (f) { return f.centroid; };
|
||||||
|
|
||||||
|
// Layer must belong to a project
|
||||||
|
let labelInfo = this.labelInfo;
|
||||||
|
if (labelInfo === undefined || getCentroidFunc === undefined) return;
|
||||||
|
|
||||||
|
// // let line_mat = new LineBasicMaterial({ color: Gba3D.Options.label.connectorColor });
|
||||||
|
// let line_mat = new LineBasicMaterial({
|
||||||
|
// linewidth: 1,
|
||||||
|
// color: 0x80CCFF
|
||||||
|
// });
|
||||||
|
// this.labelConnectorGroup = new Group();
|
||||||
|
this.labelConnectorGroup.userData.layerId = this.index;
|
||||||
|
// if (parent) {
|
||||||
|
// parent.add(this.labelConnectorGroup);
|
||||||
|
// }
|
||||||
|
// this.getScene().add(this.labelConnectorGroup);
|
||||||
|
this.labelConnectorGroup.visible = this.objectGroup.visible;
|
||||||
|
|
||||||
|
// create parent element for labels
|
||||||
|
this.labelParentElement = document.createElement("div");
|
||||||
|
this._map.container.appendChild(this.labelParentElement);
|
||||||
|
this.labelParentElement.style.display = (this.objectGroup.visible) ? "block" : "none";
|
||||||
|
|
||||||
|
for (let i = 0, l = labels.length; i < l; i++) {
|
||||||
|
let f = labels[i];
|
||||||
|
f.aElems = [];
|
||||||
|
f.aObjs = [];
|
||||||
|
let text = f.a;
|
||||||
|
if (text === null || text === "") continue;
|
||||||
|
|
||||||
|
let classLabel = f.cl;
|
||||||
|
if (classLabel === undefined || classLabel === "") classLabel = "label";
|
||||||
|
|
||||||
|
let horizontalShiftLabel = f.hs;
|
||||||
|
if (horizontalShiftLabel === undefined || horizontalShiftLabel === "") horizontalShiftLabel = 0;
|
||||||
|
|
||||||
|
// let line_mat = new LineBasicMaterial({ color: Gba3D.Options.label.connectorColor });
|
||||||
|
let line_mat = new LineBasicMaterial({
|
||||||
|
linewidth: 1,
|
||||||
|
color: f.color //0x80CCFF
|
||||||
|
});
|
||||||
|
|
||||||
|
let pts = getCentroidFunc(f);
|
||||||
|
for (let j = 0, m = pts.length; j < m; j++) {
|
||||||
|
let pt = pts[j];
|
||||||
|
|
||||||
|
// create div element for label
|
||||||
|
let e = document.createElement("div");
|
||||||
|
e.appendChild(document.createTextNode(text));
|
||||||
|
e.className = classLabel;// "label";
|
||||||
|
this.labelParentElement.appendChild(e);
|
||||||
|
|
||||||
|
// let z = labelHeightFunc(f, pt);
|
||||||
|
let pt0, pt1;
|
||||||
|
if (f.axis == "x") {
|
||||||
|
pt0 = new Vector3(pt[0], pt[1], pt[2]); // bottom
|
||||||
|
pt1 = new Vector3(pt[0] + horizontalShiftLabel, pt[1], pt[2] + f.size / 2); // top
|
||||||
|
}
|
||||||
|
else if (f.axis == "y") {
|
||||||
|
pt0 = new Vector3(pt[0], pt[1], pt[2]);
|
||||||
|
pt1 = new Vector3(pt[0] - horizontalShiftLabel - f.size, pt[1], pt[2]);
|
||||||
|
}
|
||||||
|
// create connector - not for axis
|
||||||
|
// if (f.axis !== true) {
|
||||||
|
let geom = new Geometry();
|
||||||
|
geom.vertices.push(pt1, pt0);
|
||||||
|
|
||||||
|
let line = new Line(geom, line_mat);
|
||||||
|
// line.position.set(this.center.x, this.center.y, this.center.z);
|
||||||
|
|
||||||
|
line.userData.layerId = this.index;
|
||||||
|
line.userData.featureId = i;
|
||||||
|
this.labelConnectorGroup.add(line);
|
||||||
|
// }
|
||||||
|
|
||||||
|
f.aElems.push(e);
|
||||||
|
////f.labelDiv = e;
|
||||||
|
f.aObjs.push(line);
|
||||||
|
this.labels.push({ labelDiv: e, obj: line, pt: pt1 });
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
animate() {
|
||||||
|
this._updateLabelPosition();
|
||||||
|
}
|
||||||
|
|
||||||
|
// update label position
|
||||||
|
_updateLabelPosition() {
|
||||||
|
if (this.labels.length === 0 || this.objectGroup.visible === false) return;
|
||||||
|
|
||||||
|
let container = document.getElementById("webgl");
|
||||||
|
// let widthHalf = 0.5 * container.clientWidth;
|
||||||
|
// let heightHalf = 0.5 * container.clientHeight;
|
||||||
|
|
||||||
|
|
||||||
|
// autosize = appSettings.Options.label.autoSize,
|
||||||
|
let autosize = true;
|
||||||
|
let camera = this._map.camera;
|
||||||
|
let camera_pos = camera.position;
|
||||||
|
let c2t = this._map.target.clone().sub(camera_pos);
|
||||||
|
let c2l = new Vector3();
|
||||||
|
|
||||||
|
//neu
|
||||||
|
// app.labels = app.controls.gridlayer.labels;
|
||||||
|
let scaleFactor = this.scale;
|
||||||
|
|
||||||
|
// make a list of [label index, distance to camera]
|
||||||
|
let idx_dist = [];
|
||||||
|
for (var i = 0, l = this.labels.length; i < l; i++) {
|
||||||
|
// let firstLinePoint = this.labels[i].obj.geometry.vertices[0];
|
||||||
|
idx_dist.push([i, camera_pos.distanceTo(this.labels[i].pt)]);
|
||||||
|
}
|
||||||
|
|
||||||
|
// sort label indexes in descending order of distances
|
||||||
|
idx_dist.sort(function (a, b) {
|
||||||
|
if (a[1] < b[1]) return 1;
|
||||||
|
if (a[1] > b[1]) return -1;
|
||||||
|
return 0;
|
||||||
|
});
|
||||||
|
|
||||||
|
let label, labelDiv, x, y, dist, fontSize;
|
||||||
|
// var minFontSize = appSettings.Options.label.minFontSize;
|
||||||
|
for (let i = 0, l = idx_dist.length; i < l; i++) {
|
||||||
|
label = this.labels[idx_dist[i][0]];
|
||||||
|
labelDiv = label.labelDiv;
|
||||||
|
if (c2l.subVectors(label.pt, camera_pos).dot(c2t) > 0) {
|
||||||
|
// label is in front
|
||||||
|
|
||||||
|
// // calculate label position
|
||||||
|
// vector.copy(label.pt);
|
||||||
|
// vector.applyMatrix4(label.obj.matrixWorld);
|
||||||
|
// // map to normalized device coordinate (NDC) space
|
||||||
|
// camera.updateMatrixWorld();
|
||||||
|
// vector.project(camera);
|
||||||
|
// if (scaleFactor > 1) {
|
||||||
|
// v.z = v.z * scaleFactor;
|
||||||
|
// }
|
||||||
|
// vector.x = (vector.x * widthHalf) + widthHalf;
|
||||||
|
// vector.y = - (vector.y * heightHalf) + heightHalf;
|
||||||
|
|
||||||
|
let proj = this.toScreenPosition(label.obj, label.pt, camera);
|
||||||
|
// set label position
|
||||||
|
labelDiv.style.display = "block";
|
||||||
|
labelDiv.style.left = proj.x + 'px';
|
||||||
|
labelDiv.style.top = proj.y + 'px';
|
||||||
|
labelDiv.style.zIndex = i + 1;
|
||||||
|
let minFontSize = 10;
|
||||||
|
// set font size
|
||||||
|
if (autosize) {
|
||||||
|
dist = idx_dist[i][1];
|
||||||
|
if (dist < 12) dist = 12;
|
||||||
|
fontSize = Math.max(Math.round(1000 / dist), minFontSize);
|
||||||
|
labelDiv.style.fontSize = fontSize + "px";
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// label is in back
|
||||||
|
labelDiv.style.display = "none";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
toScreenPosition(obj, pt, camera) {
|
||||||
|
let vector = new Vector3();
|
||||||
|
// calculate label position
|
||||||
|
vector.copy(pt);
|
||||||
|
|
||||||
|
// TODO: need to update this when resize window
|
||||||
|
let container = document.getElementById("webgl");
|
||||||
|
let widthHalf = 0.5 * container.clientWidth;
|
||||||
|
let heightHalf = 0.5 * container.clientHeight;
|
||||||
|
|
||||||
|
// obj.updateMatrixWorld();
|
||||||
|
// vector.applyMatrix4(obj.matrixWorld);
|
||||||
|
vector.project(camera);
|
||||||
|
|
||||||
|
vector.x = (vector.x * widthHalf) + widthHalf;
|
||||||
|
vector.y = - (vector.y * heightHalf) + heightHalf;
|
||||||
|
|
||||||
|
return {
|
||||||
|
x: vector.x,
|
||||||
|
y: vector.y
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -53,7 +53,6 @@ class TinLayer extends Layer {
|
||||||
async onAdd(map) {
|
async onAdd(map) {
|
||||||
await this.build(this.getScene());
|
await this.build(this.getScene());
|
||||||
map.update();
|
map.update();
|
||||||
// this.emit('add');
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//build BufferGeometry with Index
|
//build BufferGeometry with Index
|
||||||
|
|
|
@ -5,11 +5,13 @@ import { PerspectiveCamera } from 'three/src/cameras/PerspectiveCamera';
|
||||||
import { Scene } from 'three/src/scenes/Scene';
|
import { Scene } from 'three/src/scenes/Scene';
|
||||||
import { Vector3 } from 'three/src/math/Vector3';
|
import { Vector3 } from 'three/src/math/Vector3';
|
||||||
import { TinLayer } from './layer/TinLayer';
|
import { TinLayer } from './layer/TinLayer';
|
||||||
|
import { GridLayer } from './layer/GridLayer';
|
||||||
|
// import { BoxLayer } from './layer/BoxLayer';
|
||||||
import { DemLayer } from './layer/DemLayer';
|
import { DemLayer } from './layer/DemLayer';
|
||||||
import { Map } from './core/Map';
|
import { Map } from './core/Map';
|
||||||
import * as domEvent from './core/domEvent';
|
import * as domEvent from './core/domEvent';
|
||||||
import { Coordinates } from './controls/Coordinates';
|
import { Coordinates } from './controls/Coordinates';
|
||||||
import { NortArrow } from './controls/NorthArrow';
|
// import { NortArrow } from './controls/NorthArrow';
|
||||||
import { LayerControl } from './controls/LayerControl';
|
import { LayerControl } from './controls/LayerControl';
|
||||||
import { BasemapControl } from './controls/BasemapControl';
|
import { BasemapControl } from './controls/BasemapControl';
|
||||||
import { SliderControl } from './controls/SliderControl';
|
import { SliderControl } from './controls/SliderControl';
|
||||||
|
@ -108,36 +110,32 @@ class Application {
|
||||||
var aspect = this.width / this.height;
|
var aspect = this.width / this.height;
|
||||||
var near = 0.1; //This is the distance at which the camera will start rendering scene objects
|
var near = 0.1; //This is the distance at which the camera will start rendering scene objects
|
||||||
var far = 2000; //Anything beyond this distance will not be rendered
|
var far = 2000; //Anything beyond this distance will not be rendered
|
||||||
this.camera = new PerspectiveCamera(angle, aspect, near, far);
|
// this.camera = new PerspectiveCamera(angle, aspect, near, far);
|
||||||
// this.camera.position.set(0, -0.1, 150);
|
// this.camera.position.set(0, -0.1, 150);
|
||||||
// this.camera.lookAt(new Vector3(0, 0, 0));
|
// this.camera.lookAt(new Vector3(0, 0, 0));
|
||||||
|
|
||||||
this.camera = new PerspectiveCamera(30, this.width / this.height, 100, 100000);
|
this.camera = new PerspectiveCamera(30, this.width / this.height, 100, 100000);
|
||||||
|
|
||||||
// const dirLight = new DirectionalLight(0xffffff, 1);
|
// const dirLight = new DirectionalLight(0xffffff, 1);
|
||||||
// dirLight.position.set(585000 + 10000, 6135000 + 10000, -500 + 5000);
|
// dirLight.position.set(585000 + 10000, 6135000 + 10000, -500 + 5000);
|
||||||
// this.camera.add(dirLight);
|
// this.camera.add(dirLight);
|
||||||
|
|
||||||
|
|
||||||
let x = { min: 3955850, max: 4527300, avg: 4282010 };
|
let x = { min: 3955850, max: 4527300, avg: 4282010 };
|
||||||
// let y = { min: 2183600, max: 2502700, avg: 2302070 };
|
// let y = { min: 2183600, max: 2502700, avg: 2302070 };
|
||||||
let y = { min: 2182271.6538, max: 2504028.3462 , avg: 2302070 };
|
let y = { min: 2182271.6538, max: 2504028.3462 , avg: 2302070 };
|
||||||
let z = { min: -60066, max: 3574.94, avg: -13616.3 };
|
let z = { min: -60066, max: 3574.94, avg: -13616.3 };
|
||||||
const center = new Vector3((x.min + x.max) / 2, (y.min + y.max) / 2, z.avg);
|
const center = new Vector3((x.min + x.max) / 2, (y.min + y.max) / 2, 0);
|
||||||
// const center = new Vector3(x.avg, y.avg, z.avg);
|
// const center = new Vector3(x.avg, y.avg, z.avg);
|
||||||
const size = Math.max(x.max - x.min, y.max - y.min, z.max - z.min);
|
const size = Math.max(x.max - x.min, y.max - y.min, z.max - z.min);
|
||||||
|
|
||||||
|
|
||||||
let baseExtent= {
|
let baseExtent= {
|
||||||
x: x,
|
x: x,
|
||||||
y: y
|
y: y
|
||||||
};
|
};
|
||||||
|
|
||||||
const camDirection = new Vector3(-0.5, -Math.SQRT1_2, 0.5);
|
const camDirection = new Vector3(-0.5, -Math.SQRT1_2, 0.5);
|
||||||
|
// const camDirection = new Vector3(0, 0, 1);
|
||||||
const camOffset = camDirection.multiplyScalar(size * 2);
|
const camOffset = camDirection.multiplyScalar(size * 2);
|
||||||
this.camera.position.copy(center);
|
this.camera.position.copy(center);
|
||||||
this.camera.position.add(camOffset);
|
this.camera.position.add(camOffset);
|
||||||
// this.camera.position.set(0, 0, 1500);
|
|
||||||
this.camera.near = size * 0.1;
|
this.camera.near = size * 0.1;
|
||||||
this.camera.far = size * 25;
|
this.camera.far = size * 25;
|
||||||
this.camera.updateProjectionMatrix();
|
this.camera.updateProjectionMatrix();
|
||||||
|
@ -154,12 +152,12 @@ class Application {
|
||||||
// this.camera.lookAt(new Vector3(0, 0, 0));
|
// this.camera.lookAt(new Vector3(0, 0, 0));
|
||||||
|
|
||||||
// create map
|
// create map
|
||||||
this.map = new Map(size, center, this.camera, this.scene, this.renderer.domElement, this.container);
|
this.map = new Map(x, y, z, size, center, this.camera, this.scene, this.renderer.domElement, this.container);
|
||||||
// this.map.minDistance = size*0.75;
|
// this.map.minDistance = size*0.75;
|
||||||
// this.map.maxDistance = size*15;
|
// this.map.maxDistance = size*15;
|
||||||
|
|
||||||
// let boxLayer = new BoxLayer({
|
// let boxLayer = new BoxLayer({
|
||||||
// width: 10000, height: 10000, depth: 10000, name: 'test-box', color: 800080
|
// width: 10000, height: 10000, depth: 10000, name: 'center-box', color: 800080 , center: center
|
||||||
// });
|
// });
|
||||||
// this.map.addLayer(boxLayer);
|
// this.map.addLayer(boxLayer);
|
||||||
|
|
||||||
|
@ -173,9 +171,7 @@ class Application {
|
||||||
// this.animate();
|
// this.animate();
|
||||||
// }, this);
|
// }, this);
|
||||||
}
|
}
|
||||||
this.northArrow = new NortArrow({ headLength: 1, headWidth: 1 }).addTo(this.map);
|
// this.northArrow = new NortArrow({ headLength: 1, headWidth: 1 }).addTo(this.map);
|
||||||
|
|
||||||
// this.dialog = new MobileDialog("Help", { klass: "fm_about", parentDiv: 'basemap-control-parent' }).addTo(this.map);
|
|
||||||
|
|
||||||
let demLayer = new DemLayer({
|
let demLayer = new DemLayer({
|
||||||
q: 0, shading: true, type: 'dem', name: 'DEM Layer', color: 16382457, "baseExtent": baseExtent,
|
q: 0, shading: true, type: 'dem', name: 'DEM Layer', color: 16382457, "baseExtent": baseExtent,
|
||||||
|
@ -234,6 +230,9 @@ class Application {
|
||||||
});
|
});
|
||||||
this.map.addLayer(dxf140Layer);
|
this.map.addLayer(dxf140Layer);
|
||||||
|
|
||||||
|
this.gridlayer = new GridLayer({ center: center, name: "coordinate grid", appWidth: this.width, appHeight: this.height });
|
||||||
|
this.map.addLayer(this.gridlayer);
|
||||||
|
|
||||||
new LayerControl(this.map.layers, {
|
new LayerControl(this.map.layers, {
|
||||||
collapsed: true,
|
collapsed: true,
|
||||||
parentDiv: 'layer-control-parent-id'
|
parentDiv: 'layer-control-parent-id'
|
||||||
|
@ -332,7 +331,8 @@ class Application {
|
||||||
|
|
||||||
animate() {
|
animate() {
|
||||||
this.renderer.render(this.scene, this.camera);
|
this.renderer.render(this.scene, this.camera);
|
||||||
this.northArrow.animate();
|
// this.northArrow.animate();
|
||||||
|
this.gridlayer.animate();
|
||||||
}
|
}
|
||||||
|
|
||||||
addEventListeners() {
|
addEventListeners() {
|
||||||
|
@ -464,5 +464,5 @@ class Application {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
var container = document.getElementById("webgl");
|
let container = document.getElementById("webgl");
|
||||||
new Application(container);
|
new Application(container);
|
||||||
|
|
Loading…
Reference in New Issue
Block a user