Closed johnd0e closed 4 years ago
Here will be the list of all externals, where we should specify:
(WIP)
touchcancel
support (added later to upstream too)
jQuery: fixed deprecated functions (https://github.com/IITC-CE/jquery-taphold/commit/a85050a7744d780809e8f007f6dc43065cdece9c)So I've figured out exact versions of externals (as long as required modification), and now we can begin to update most of them (excl. Leaflet.draw
, leaflet.filelayer.js
, togeojson.js
).
Some things still need to be clarified:
Do we really need 522ef34f: https://github.com/IITC-CE/ingress-intel-total-conversion/pull/78#issuecomment-462323839? Update: #122
Leaflet.Geodesic
has an alternative:
(https://github.com/henrythasler/Leaflet.Geodesic) (Leaflet.Geodesic.js) © Henry Thasler: [GPL-3.0]
s2geometry.js
has more advanced fork: s2geometry.js © Jon Atkins, AJ ONeal: [ISC]
Moved to https://git.daplie.com/Daplie/s2-geometry.js/ (failed to connect)
fixed.
Yandex.js
is extremely laggyConsider trying https://github.com/kostjerry/leaflet-yandex instead
Bing.js
is extremely blurryenableRetina
fixed.
~Shramov leaflet-plugins
: files leaflet.filelayer.js
, togeojson.js
are not present in upstream, need to search out their sources.~
There is an error in ATTRIBUTION.md, that files are not by Shramov
toGeoJSON (togeojson.js) © Mapbox: [BSD-2-Clause] This repo is now developed at https://github.com/tmcw/togeojson: there is no major features added yet. But it is ES2015+.
delaunay.js
upstream is updated to more fast version, but it's still not fastest available, see performance comparison here.
We should consider switch to https://github.com/mapbox/delaunator, it has pretty the same api, with minor differences.
alternative to oms.js
: https://github.com/robertleeplummerjr/Leaflet.spiderfy/
see https://github.com/jawj/OverlappingMarkerSpiderfier-Leaflet/pull/30, https://github.com/jawj/OverlappingMarkerSpiderfier-Leaflet/pull/31
load.js
is used only in basemap-yandex.user.js
and sync.user.js
, in form of load(yandexApiJs).thenRun(callback);
, so I suppose it can be replaced with jQuery.getScript()
.
BTW, there is also jQuery.loadScript
autolink.js
is used in single place: (and I don't feel it's necessary):
https://github.com/IITC-CE/ingress-intel-total-conversion/blob/d77562b91a5b1e0bf170b4257eb33316a0b9daa3/code/chat.js#L334
jquery.qrcode.min.js
is used in single place too: https://github.com/IITC-CE/ingress-intel-total-conversion/blob/d77562b91a5b1e0bf170b4257eb33316a0b9daa3/code/utils_misc.js#L207
Perhaps it should be better to have it as plugin.
The codebase is rather old. Alternatives: https://www.nayuki.io/page/qr-code-generator-library#javascript, https://www.cssscript.com/tag/qr-code/
LatLng_Bearings.js
can be replaced by gmaps geometry library function spherical.computeHeading.
L.Control.Pan.css
and L.Control.Zoomslider.css
was slightly modified, so after update we need to verify if it is still needed.
https://github.com/iitc-project/ingress-intel-total-conversion/pull/99/:
-.leaflet-control-zoom {
+.leaflet-bar {
+/*
+ override the scale bar and push it over
+*/
+.leaflet-control-scale {
+ left: 63px !important;
+}
https://github.com/iitc-project/ingress-intel-total-conversion/pull/283:
.leaflet-control-zoomslider-slider {
+ background-color: #fff;
+ border-bottom: 1px solid #ccc;
Currently we have separate sub-directory with all upstream 'externals' (+ separate
images
subdirectory)Most of them described in ATTRIBUTION.md. Some of them have version info inside, but most of them not. Some of them are even modified for iitc special needs, but in order to know details we have to dig though unclear commit history.
It's a pain to maintain and update these sources.
So I propose:
Then:
@@INCLUDExxx
-macros instead.Related links: