mirror of
https://github.com/umap-project/umap.git
synced 2025-05-10 16:11:49 +02:00
Compare commits
6 commits
09faa763f9
...
06c2438ff1
Author | SHA1 | Date | |
---|---|---|---|
![]() |
06c2438ff1 | ||
![]() |
b92490eacc | ||
![]() |
cdb5d79297 | ||
![]() |
ecdc58948f | ||
![]() |
e3f02a475f | ||
![]() |
9c3f8db548 |
5 changed files with 48 additions and 173 deletions
|
@ -263,8 +263,12 @@ export const LeafletMap = BaseMap.extend({
|
||||||
this.loader.onAdd(this)
|
this.loader.onAdd(this)
|
||||||
|
|
||||||
if (!this.options.noControl) {
|
if (!this.options.noControl) {
|
||||||
DomEvent.on(document.body, 'dataloading', (e) => this.fire('dataloading', e))
|
DomEvent.on(document.body, 'dataloading', (event) =>
|
||||||
DomEvent.on(document.body, 'dataload', (e) => this.fire('dataload', e))
|
this.fire('dataloading', event.detail)
|
||||||
|
)
|
||||||
|
DomEvent.on(document.body, 'dataload', (event) =>
|
||||||
|
this.fire('dataload', event.detail)
|
||||||
|
)
|
||||||
this.on('click', this.closeInplaceToolbar)
|
this.on('click', this.closeInplaceToolbar)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -47,8 +47,8 @@ class BaseRequest {
|
||||||
// In case of error, an alert is sent, but non 20X status are not handled
|
// In case of error, an alert is sent, but non 20X status are not handled
|
||||||
// The consumer must check the response status by hand
|
// The consumer must check the response status by hand
|
||||||
export class Request extends BaseRequest {
|
export class Request extends BaseRequest {
|
||||||
fire(name, params) {
|
fire(name, detail) {
|
||||||
document.body.dispatchEvent(new CustomEvent(name, params))
|
document.body.dispatchEvent(new CustomEvent(name, { detail }))
|
||||||
}
|
}
|
||||||
|
|
||||||
async _fetch(method, uri, headers, data) {
|
async _fetch(method, uri, headers, data) {
|
||||||
|
|
|
@ -570,9 +570,11 @@ export default class Umap extends ServerStored {
|
||||||
}
|
}
|
||||||
this.datalayersLoaded = true
|
this.datalayersLoaded = true
|
||||||
this.fire('datalayersloaded')
|
this.fire('datalayersloaded')
|
||||||
|
const toLoad = []
|
||||||
for (const datalayer of this.datalayersIndex) {
|
for (const datalayer of this.datalayersIndex) {
|
||||||
if (datalayer.showAtLoad()) await datalayer.show()
|
if (datalayer.showAtLoad()) toLoad.push(datalayer.show())
|
||||||
}
|
}
|
||||||
|
await Promise.all(toLoad)
|
||||||
this.dataloaded = true
|
this.dataloaded = true
|
||||||
this.fire('dataloaded')
|
this.fire('dataloaded')
|
||||||
}
|
}
|
||||||
|
@ -1190,7 +1192,7 @@ export default class Umap extends ServerStored {
|
||||||
geometry() {
|
geometry() {
|
||||||
/* Return a GeoJSON geometry Object */
|
/* Return a GeoJSON geometry Object */
|
||||||
const latlng = this._leafletMap.latLng(
|
const latlng = this._leafletMap.latLng(
|
||||||
this._leafletMap.options.center || this._leafletMap.getCenter()
|
this.properties.center || this._leafletMap.getCenter()
|
||||||
)
|
)
|
||||||
return {
|
return {
|
||||||
type: 'Point',
|
type: 'Point',
|
||||||
|
@ -1668,8 +1670,8 @@ export default class Umap extends ServerStored {
|
||||||
}
|
}
|
||||||
|
|
||||||
_setCenterAndZoom() {
|
_setCenterAndZoom() {
|
||||||
this._leafletMap.options.center = this._leafletMap.getCenter()
|
this.properties.center = this._leafletMap.getCenter()
|
||||||
this._leafletMap.options.zoom = this._leafletMap.getZoom()
|
this.properties.zoom = this._leafletMap.getZoom()
|
||||||
this.isDirty = true
|
this.isDirty = true
|
||||||
this._defaultExtent = false
|
this._defaultExtent = false
|
||||||
}
|
}
|
||||||
|
|
|
@ -942,11 +942,11 @@ L.Control.Loading.include({
|
||||||
},
|
},
|
||||||
|
|
||||||
_showIndicator: function () {
|
_showIndicator: function () {
|
||||||
L.DomUtil.addClass(this._map._container, 'umap-loading')
|
this._map._container.classList.add('umap-loading')
|
||||||
},
|
},
|
||||||
|
|
||||||
_hideIndicator: function () {
|
_hideIndicator: function () {
|
||||||
L.DomUtil.removeClass(this._map._container, 'umap-loading')
|
this._map._container.classList.remove('umap-loading')
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
|
@ -935,173 +935,42 @@ a.umap-control-caption,
|
||||||
/* ********************************* */
|
/* ********************************* */
|
||||||
/* Ajax loader */
|
/* Ajax loader */
|
||||||
/* ********************************* */
|
/* ********************************* */
|
||||||
.umap-loading .umap-loader
|
|
||||||
{
|
|
||||||
display: block;
|
|
||||||
-webkit-animation: shift-rightwards 3s ease-in-out infinite;
|
|
||||||
-moz-animation: shift-rightwards 3s ease-in-out infinite;
|
|
||||||
-ms-animation: shift-rightwards 3s ease-in-out infinite;
|
|
||||||
-o-animation: shift-rightwards 3s ease-in-out infinite;
|
|
||||||
animation: shift-rightwards 3s ease-in-out infinite;
|
|
||||||
-webkit-animation-delay: .2s;
|
|
||||||
-moz-animation-delay: .2s;
|
|
||||||
-o-animation-delay: .2s;
|
|
||||||
animation-delay: .2s;
|
|
||||||
}
|
|
||||||
.umap-loader {
|
.umap-loader {
|
||||||
|
width: 100%;
|
||||||
|
height: 6px;
|
||||||
|
display: inline-block;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
|
background: var(--color-brightCyan);
|
||||||
|
overflow: hidden;
|
||||||
display: none;
|
display: none;
|
||||||
top: 0;
|
top: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
right: 0;
|
right: 0;
|
||||||
height: 4px;
|
height: 4px;
|
||||||
z-index: var(--zindex-loader);
|
z-index: var(--zindex-loader);
|
||||||
background-color: #79c1c0 !important;
|
}
|
||||||
-webkit-transform: translateX(100%);
|
.umap-loader::after {
|
||||||
-moz-transform: translateX(100%);
|
content: '';
|
||||||
-o-transform: translateX(100%);
|
box-sizing: border-box;
|
||||||
transform: translateX(100%);
|
width: 0;
|
||||||
|
height: 4.8px;
|
||||||
|
background: var(--color-darkerGray);
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
animation: animFw 10s linear infinite;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@keyframes animFw {
|
||||||
@-webkit-keyframes shift-rightwards
|
0% {
|
||||||
{
|
width: 0;
|
||||||
0%
|
|
||||||
{
|
|
||||||
-webkit-transform:translateX(-100%);
|
|
||||||
-moz-transform:translateX(-100%);
|
|
||||||
-o-transform:translateX(-100%);
|
|
||||||
transform:translateX(-100%);
|
|
||||||
}
|
}
|
||||||
|
100% {
|
||||||
40%
|
width: 100%;
|
||||||
{
|
|
||||||
-webkit-transform:translateX(0%);
|
|
||||||
-moz-transform:translateX(0%);
|
|
||||||
-o-transform:translateX(0%);
|
|
||||||
transform:translateX(0%);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
60%
|
|
||||||
{
|
|
||||||
-webkit-transform:translateX(0%);
|
|
||||||
-moz-transform:translateX(0%);
|
|
||||||
-o-transform:translateX(0%);
|
|
||||||
transform:translateX(0%);
|
|
||||||
}
|
|
||||||
|
|
||||||
100%
|
|
||||||
{
|
|
||||||
-webkit-transform:translateX(100%);
|
|
||||||
-moz-transform:translateX(100%);
|
|
||||||
-o-transform:translateX(100%);
|
|
||||||
transform:translateX(100%);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
@-moz-keyframes shift-rightwards
|
.umap-loading .umap-loader {
|
||||||
{
|
display: block;
|
||||||
0%
|
|
||||||
{
|
|
||||||
-webkit-transform:translateX(-100%);
|
|
||||||
-moz-transform:translateX(-100%);
|
|
||||||
-o-transform:translateX(-100%);
|
|
||||||
transform:translateX(-100%);
|
|
||||||
}
|
|
||||||
|
|
||||||
40%
|
|
||||||
{
|
|
||||||
-webkit-transform:translateX(0%);
|
|
||||||
-moz-transform:translateX(0%);
|
|
||||||
-o-transform:translateX(0%);
|
|
||||||
transform:translateX(0%);
|
|
||||||
}
|
|
||||||
|
|
||||||
60%
|
|
||||||
{
|
|
||||||
-webkit-transform:translateX(0%);
|
|
||||||
-moz-transform:translateX(0%);
|
|
||||||
-o-transform:translateX(0%);
|
|
||||||
transform:translateX(0%);
|
|
||||||
}
|
|
||||||
|
|
||||||
100%
|
|
||||||
{
|
|
||||||
-webkit-transform:translateX(100%);
|
|
||||||
-moz-transform:translateX(100%);
|
|
||||||
-o-transform:translateX(100%);
|
|
||||||
transform:translateX(100%);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
@-o-keyframes shift-rightwards
|
|
||||||
{
|
|
||||||
0%
|
|
||||||
{
|
|
||||||
-webkit-transform:translateX(-100%);
|
|
||||||
-moz-transform:translateX(-100%);
|
|
||||||
-o-transform:translateX(-100%);
|
|
||||||
transform:translateX(-100%);
|
|
||||||
}
|
|
||||||
|
|
||||||
40%
|
|
||||||
{
|
|
||||||
-webkit-transform:translateX(0%);
|
|
||||||
-moz-transform:translateX(0%);
|
|
||||||
-o-transform:translateX(0%);
|
|
||||||
transform:translateX(0%);
|
|
||||||
}
|
|
||||||
|
|
||||||
60%
|
|
||||||
{
|
|
||||||
-webkit-transform:translateX(0%);
|
|
||||||
-moz-transform:translateX(0%);
|
|
||||||
-o-transform:translateX(0%);
|
|
||||||
transform:translateX(0%);
|
|
||||||
}
|
|
||||||
|
|
||||||
100%
|
|
||||||
{
|
|
||||||
-webkit-transform:translateX(100%);
|
|
||||||
-moz-transform:translateX(100%);
|
|
||||||
-o-transform:translateX(100%);
|
|
||||||
transform:translateX(100%);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
@keyframes shift-rightwards
|
|
||||||
{
|
|
||||||
0%
|
|
||||||
{
|
|
||||||
-webkit-transform:translateX(-100%);
|
|
||||||
-moz-transform:translateX(-100%);
|
|
||||||
-o-transform:translateX(-100%);
|
|
||||||
transform:translateX(-100%);
|
|
||||||
}
|
|
||||||
|
|
||||||
40%
|
|
||||||
{
|
|
||||||
-webkit-transform:translateX(0%);
|
|
||||||
-moz-transform:translateX(0%);
|
|
||||||
-o-transform:translateX(0%);
|
|
||||||
transform:translateX(0%);
|
|
||||||
}
|
|
||||||
|
|
||||||
60%
|
|
||||||
{
|
|
||||||
-webkit-transform:translateX(0%);
|
|
||||||
-moz-transform:translateX(0%);
|
|
||||||
-o-transform:translateX(0%);
|
|
||||||
transform:translateX(0%);
|
|
||||||
}
|
|
||||||
|
|
||||||
100%
|
|
||||||
{
|
|
||||||
-webkit-transform:translateX(100%);
|
|
||||||
-moz-transform:translateX(100%);
|
|
||||||
-o-transform:translateX(100%);
|
|
||||||
transform:translateX(100%);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* *************************** */
|
/* *************************** */
|
||||||
|
|
Loading…
Reference in a new issue