geojs 1.10.13 → 1.10.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/geo.lean.js CHANGED
@@ -8351,6 +8351,28 @@ geo_event.mousemove = 'geo_mousemove';
8351
8351
  */
8352
8352
  geo_event.mouseclick = 'geo_mouseclick';
8353
8353
 
8354
+ /**
8355
+ * Triggered on `mouseup` events. The event object extends
8356
+ * {@link geo.mouseState}.
8357
+ *
8358
+ * @event geo.event.mouseup
8359
+ * @type {(geo.event.base|geo.mouseState)}
8360
+ * @property {geo.mouseButtons} buttonsDown The buttons that were down at the
8361
+ * start of the up action.
8362
+ */
8363
+ geo_event.mouseup = 'geo_mouseup';
8364
+
8365
+ /**
8366
+ * Triggered on `mousedown` events. The event object extends
8367
+ * {@link geo.mouseState}.
8368
+ *
8369
+ * @event geo.event.mousedown
8370
+ * @type {(geo.event.base|geo.mouseState)}
8371
+ * @property {geo.mouseButtons} buttonsDown The buttons that were down at the
8372
+ * end of the down action.
8373
+ */
8374
+ geo_event.mousedown = 'geo_mousedown';
8375
+
8354
8376
  /**
8355
8377
  * Triggered on every `mousemove` during a brushing selection.
8356
8378
  * The event object extends {@link geo.brushSelection}.
@@ -8673,6 +8695,41 @@ geo_event.feature = {
8673
8695
  * @property {geo.event} sourceEvent The underlying event that trigger this.
8674
8696
  */
8675
8697
  mouseclick_order: 'geo_feature_mouseclick_order',
8698
+ /**
8699
+ * The event is the feature version of {@link geo.event.mousedown}.
8700
+ *
8701
+ * @event geo.event.feature.mousedown
8702
+ * @type {geo.event.base}
8703
+ * @property {object} data The feature data the mouse is above.
8704
+ * @property {number} index The index of the feature data the mouse is above.
8705
+ * @property {object} extra Extra information about the feature and mouse
8706
+ * location.
8707
+ * @property {geo.mouseState} mouse The mouse state.
8708
+ * @property {number} eventID a monotonically increasing event number. All
8709
+ * features that the mouse goes down on simultaneously will have the same
8710
+ * `eventID`.
8711
+ * @property {boolean} top True if this is the topmost data element.
8712
+ * @property {geo.event} sourceEvent The underlying event that trigger this.
8713
+ */
8714
+ mousedown: 'geo_feature_mousedown',
8715
+ /**
8716
+ * The event is the feature version of {@link geo.event.mouseup}.
8717
+ *
8718
+ * @event geo.event.feature.mouseup
8719
+ * @type {geo.event.base}
8720
+ * @property {object} data The feature data the mouse is above.
8721
+ * @property {number} index The index of the feature data the mouse is above.
8722
+ * @property {object} extra Extra information about the feature and mouse
8723
+ * location.
8724
+ * @property {geo.mouseState} mouse The mouse state. The buttons are before
8725
+ * the up action occurs.
8726
+ * @property {number} eventID a monotonically increasing event number. All
8727
+ * features that the mouse goes up on simultaneously will have the same
8728
+ * `eventID`.
8729
+ * @property {boolean} top True if this is the topmost data element.
8730
+ * @property {geo.event} sourceEvent The underlying event that trigger this.
8731
+ */
8732
+ mouseup: 'geo_feature_mouseup',
8676
8733
  /**
8677
8734
  * This event is fired for each data component of a feature under a brush
8678
8735
  * that has just finished its selection.
@@ -9091,6 +9148,8 @@ var feature = function feature(arg) {
9091
9148
  // First unbind to be sure that the handlers aren't bound twice.
9092
9149
  m_this._unbindMouseHandlers();
9093
9150
  m_this.geoOn(geo_event.mousemove, m_this._handleMousemove);
9151
+ m_this.geoOn(geo_event.mousedown, m_this._handleMousedown);
9152
+ m_this.geoOn(geo_event.mouseup, m_this._handleMouseup);
9094
9153
  m_this.geoOn(geo_event.mouseclick, m_this._handleMouseclick);
9095
9154
  m_this.geoOn(geo_event.brushend, m_this._handleBrushend);
9096
9155
  m_this.geoOn(geo_event.brush, m_this._handleBrush);
@@ -9101,6 +9160,8 @@ var feature = function feature(arg) {
9101
9160
  */
9102
9161
  this._unbindMouseHandlers = function () {
9103
9162
  m_this.geoOff(geo_event.mousemove, m_this._handleMousemove);
9163
+ m_this.geoOff(geo_event.mousedown, m_this._handleMousedown);
9164
+ m_this.geoOff(geo_event.mouseup, m_this._handleMouseup);
9104
9165
  m_this.geoOff(geo_event.mouseclick, m_this._handleMouseclick);
9105
9166
  m_this.geoOff(geo_event.brushend, m_this._handleBrushend);
9106
9167
  m_this.geoOff(geo_event.brush, m_this._handleBrush);
@@ -9171,20 +9232,46 @@ var feature = function feature(arg) {
9171
9232
  };
9172
9233
  };
9173
9234
 
9235
+ /**
9236
+ * Private mousedown handler. This uses `pointSearch` to determine which
9237
+ * features the mouse is over, then fires appropriate events.
9238
+ *
9239
+ * @param {geo.event} evt The event that triggered this handler.
9240
+ * @fires geo.event.feature.mousedown
9241
+ */
9242
+ this._handleMousedown = function (evt) {
9243
+ this._handleMousemove(evt, geo_event.feature.mousedown);
9244
+ };
9245
+
9246
+ /**
9247
+ * Private mouseup handler. This uses `pointSearch` to determine which
9248
+ * features the mouse is over, then fires appropriate events.
9249
+ *
9250
+ * @param {geo.event} evt The event that triggered this handler.
9251
+ * @fires geo.event.feature.mouseup
9252
+ */
9253
+ this._handleMouseup = function (evt) {
9254
+ this._handleMousemove(evt, geo_event.feature.mouseup);
9255
+ };
9256
+
9174
9257
  /**
9175
9258
  * Private mousemove handler. This uses `pointSearch` to determine which
9176
9259
  * features the mouse is over, then fires appropriate events.
9177
9260
  *
9178
9261
  * @param {geo.event} evt The event that triggered this handler.
9262
+ * @param {string} [updown] If "mouseup" or "mousedown", fire that event
9263
+ * instead of mouseon.
9179
9264
  * @fires geo.event.feature.mouseover_order
9180
9265
  * @fires geo.event.feature.mouseover
9181
9266
  * @fires geo.event.feature.mouseout
9182
9267
  * @fires geo.event.feature.mousemove
9183
9268
  * @fires geo.event.feature.mouseoff
9184
9269
  * @fires geo.event.feature.mouseon
9270
+ * @fires geo.event.feature.mouseup
9271
+ * @fires geo.event.feature.mousedown
9185
9272
  */
9186
- this._handleMousemove = function (evt) {
9187
- var mouse = m_this.layer().map().interactor().mouse(),
9273
+ this._handleMousemove = function (evt, updown) {
9274
+ var mouse = evt && evt.mouse ? evt.mouse : m_this.layer().map().interactor().mouse(),
9188
9275
  data = m_this.data(),
9189
9276
  over = m_this.pointSearch(mouse.geo),
9190
9277
  newFeatures = [],
@@ -9212,6 +9299,21 @@ var feature = function feature(arg) {
9212
9299
  sourceEvent: evt
9213
9300
  });
9214
9301
  }
9302
+ feature.eventID += 1;
9303
+ if (updown) {
9304
+ over.index.forEach(function (i, idx) {
9305
+ m_this.geoTrigger(updown, {
9306
+ data: data[i],
9307
+ index: i,
9308
+ extra: extra[i],
9309
+ mouse: mouse,
9310
+ eventID: feature.eventID,
9311
+ top: idx === over.length - 1,
9312
+ sourceEvent: evt
9313
+ }, true);
9314
+ });
9315
+ return;
9316
+ }
9215
9317
 
9216
9318
  // Get the index of the element that was previously on top
9217
9319
  if (m_selectedFeatures.length) {
@@ -9225,7 +9327,7 @@ var feature = function feature(arg) {
9225
9327
  oldFeatures = m_selectedFeatures.filter(function (i) {
9226
9328
  return over.index.indexOf(i) < 0;
9227
9329
  });
9228
- feature.eventID += 1;
9330
+
9229
9331
  // Fire events for mouse in first.
9230
9332
  newFeatures.forEach(function (i, idx) {
9231
9333
  m_this.geoTrigger(geo_event.feature.mouseover, {
@@ -17423,6 +17525,15 @@ var mapInteractor = function mapInteractor(args) {
17423
17525
  input: 'rotate',
17424
17526
  owner: 'geo.mapInteractor',
17425
17527
  name: 'touch zoom and rotate'
17528
+ }, {
17529
+ action: geo_action.pan,
17530
+ input: 'middle',
17531
+ modifiers: {
17532
+ shift: false,
17533
+ ctrl: false
17534
+ },
17535
+ owner: 'geo.mapInteractor',
17536
+ name: 'button pan'
17426
17537
  }],
17427
17538
  click: {
17428
17539
  enabled: true,
@@ -18271,6 +18382,7 @@ var mapInteractor = function mapInteractor(args) {
18271
18382
  * @param {jQuery.Event} evt The event that triggered this.
18272
18383
  * @fires geo.event.brushstart
18273
18384
  * @fires geo.event.actiondown
18385
+ * @fires geo.event.mousedown
18274
18386
  */
18275
18387
  this._handleMouseDown = function (evt) {
18276
18388
  var action, actionRecord;
@@ -18286,6 +18398,8 @@ var mapInteractor = function mapInteractor(args) {
18286
18398
  m_this._getMousePosition(evt);
18287
18399
  m_this._getMouseButton(evt);
18288
18400
  m_this._getMouseModifiers(evt);
18401
+ console.log(JSON.stringify(m_this.mouse().buttons)); // DWM::
18402
+ m_this.map().geoTrigger(geo_event.mousedown, m_this.mouse());
18289
18403
  if (m_options.click.enabled && (!m_mouse.buttons.left || m_options.click.buttons.left) && (!m_mouse.buttons.right || m_options.click.buttons.right) && (!m_mouse.buttons.middle || m_options.click.buttons.middle)) {
18290
18404
  m_this._setClickMaybe({
18291
18405
  x: m_mouse.page.x,
@@ -18713,6 +18827,7 @@ var mapInteractor = function mapInteractor(args) {
18713
18827
  * @fires geo.event.brushend
18714
18828
  * @fires geo.event.actionselection
18715
18829
  * @fires geo.event.actionup
18830
+ * @fires geo.event.mouseup
18716
18831
  * @fires geo.event.select
18717
18832
  * @fires geo.event.zoomselect
18718
18833
  * @fires geo.event.unzoomselect
@@ -18793,6 +18908,9 @@ var mapInteractor = function mapInteractor(args) {
18793
18908
  if (m_clickMaybe) {
18794
18909
  m_this._handleMouseClick(evt);
18795
18910
  }
18911
+ var details = m_this.mouse();
18912
+ details.buttonsDown = m_clickMaybe.buttons;
18913
+ m_this.map().geoTrigger(geo_event.mouseup, details);
18796
18914
  };
18797
18915
 
18798
18916
  /**
@@ -24894,7 +25012,7 @@ module.exports = sceneObject;
24894
25012
  * @constant
24895
25013
  * @type {string}
24896
25014
  */
24897
- module.exports = "3965f128094d5c5479272bde5f7e83479e925310";
25015
+ module.exports = "794188854b689114ea00eecc5a6446bf45951202";
24898
25016
 
24899
25017
  /***/ }),
24900
25018
 
@@ -36772,7 +36890,7 @@ module.exports = vectorFeature;
36772
36890
  * @constant
36773
36891
  * @type {string}
36774
36892
  */
36775
- module.exports = "1.10.13";
36893
+ module.exports = "1.10.15";
36776
36894
 
36777
36895
  /***/ }),
36778
36896
 
@@ -42600,9 +42718,7 @@ module.exports = function () {
42600
42718
  if (typeof globalThis === "object") {
42601
42719
  return globalThis;
42602
42720
  }
42603
-
42604
42721
  var g;
42605
-
42606
42722
  try {
42607
42723
  // This works if eval is allowed (see CSP)
42608
42724
  // eslint-disable-next-line no-new-func
@@ -42611,19 +42727,18 @@ module.exports = function () {
42611
42727
  // This works if the window reference is available
42612
42728
  if (typeof window === "object") {
42613
42729
  return window;
42614
- } // This works if the self reference is available
42615
-
42730
+ }
42616
42731
 
42732
+ // This works if the self reference is available
42617
42733
  if (typeof self === "object") {
42618
42734
  return self;
42619
- } // This works if the global reference is available
42620
-
42735
+ }
42621
42736
 
42737
+ // This works if the global reference is available
42622
42738
  if (typeof __webpack_require__.g !== "undefined") {
42623
42739
  return __webpack_require__.g;
42624
42740
  }
42625
42741
  }
42626
-
42627
42742
  return g;
42628
42743
  }();
42629
42744
 
@@ -74336,6 +74451,13 @@ Ellipsoid_exports.clrk80 = {
74336
74451
  ellipseName: "Clarke 1880 mod."
74337
74452
  };
74338
74453
 
74454
+ Ellipsoid_exports.clrk80ign = {
74455
+ a: 6378249.2,
74456
+ b: 6356515,
74457
+ rf: 293.4660213,
74458
+ ellipseName: "Clarke 1880 (IGN)"
74459
+ };
74460
+
74339
74461
  Ellipsoid_exports.clrk58 = {
74340
74462
  a: 6378293.645208759,
74341
74463
  rf: 294.2606763692654,
@@ -81814,24 +81936,19 @@ var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js
81814
81936
 
81815
81937
 
81816
81938
  var stylesInDOM = [];
81817
-
81818
81939
  function getIndexByIdentifier(identifier) {
81819
81940
  var result = -1;
81820
-
81821
81941
  for (var i = 0; i < stylesInDOM.length; i++) {
81822
81942
  if (stylesInDOM[i].identifier === identifier) {
81823
81943
  result = i;
81824
81944
  break;
81825
81945
  }
81826
81946
  }
81827
-
81828
81947
  return result;
81829
81948
  }
81830
-
81831
81949
  function modulesToDom(list, options) {
81832
81950
  var idCountMap = {};
81833
81951
  var identifiers = [];
81834
-
81835
81952
  for (var i = 0; i < list.length; i++) {
81836
81953
  var item = list[i];
81837
81954
  var id = options.base ? item[0] + options.base : item[0];
@@ -81846,7 +81963,6 @@ function modulesToDom(list, options) {
81846
81963
  supports: item[4],
81847
81964
  layer: item[5]
81848
81965
  };
81849
-
81850
81966
  if (indexByIdentifier !== -1) {
81851
81967
  stylesInDOM[indexByIdentifier].references++;
81852
81968
  stylesInDOM[indexByIdentifier].updater(obj);
@@ -81859,59 +81975,45 @@ function modulesToDom(list, options) {
81859
81975
  references: 1
81860
81976
  });
81861
81977
  }
81862
-
81863
81978
  identifiers.push(identifier);
81864
81979
  }
81865
-
81866
81980
  return identifiers;
81867
81981
  }
81868
-
81869
81982
  function addElementStyle(obj, options) {
81870
81983
  var api = options.domAPI(options);
81871
81984
  api.update(obj);
81872
-
81873
81985
  var updater = function updater(newObj) {
81874
81986
  if (newObj) {
81875
81987
  if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {
81876
81988
  return;
81877
81989
  }
81878
-
81879
81990
  api.update(obj = newObj);
81880
81991
  } else {
81881
81992
  api.remove();
81882
81993
  }
81883
81994
  };
81884
-
81885
81995
  return updater;
81886
81996
  }
81887
-
81888
81997
  module.exports = function (list, options) {
81889
81998
  options = options || {};
81890
81999
  list = list || [];
81891
82000
  var lastIdentifiers = modulesToDom(list, options);
81892
82001
  return function update(newList) {
81893
82002
  newList = newList || [];
81894
-
81895
82003
  for (var i = 0; i < lastIdentifiers.length; i++) {
81896
82004
  var identifier = lastIdentifiers[i];
81897
82005
  var index = getIndexByIdentifier(identifier);
81898
82006
  stylesInDOM[index].references--;
81899
82007
  }
81900
-
81901
82008
  var newLastIdentifiers = modulesToDom(newList, options);
81902
-
81903
82009
  for (var _i = 0; _i < lastIdentifiers.length; _i++) {
81904
82010
  var _identifier = lastIdentifiers[_i];
81905
-
81906
82011
  var _index = getIndexByIdentifier(_identifier);
81907
-
81908
82012
  if (stylesInDOM[_index].references === 0) {
81909
82013
  stylesInDOM[_index].updater();
81910
-
81911
82014
  stylesInDOM.splice(_index, 1);
81912
82015
  }
81913
82016
  }
81914
-
81915
82017
  lastIdentifiers = newLastIdentifiers;
81916
82018
  };
81917
82019
  };
@@ -81925,12 +82027,13 @@ module.exports = function (list, options) {
81925
82027
 
81926
82028
 
81927
82029
  var memo = {};
81928
- /* istanbul ignore next */
81929
82030
 
82031
+ /* istanbul ignore next */
81930
82032
  function getTarget(target) {
81931
82033
  if (typeof memo[target] === "undefined") {
81932
- var styleTarget = document.querySelector(target); // Special case to return head of iframe instead of iframe itself
82034
+ var styleTarget = document.querySelector(target);
81933
82035
 
82036
+ // Special case to return head of iframe instead of iframe itself
81934
82037
  if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {
81935
82038
  try {
81936
82039
  // This will throw an exception if access to iframe is blocked
@@ -81941,25 +82044,19 @@ function getTarget(target) {
81941
82044
  styleTarget = null;
81942
82045
  }
81943
82046
  }
81944
-
81945
82047
  memo[target] = styleTarget;
81946
82048
  }
81947
-
81948
82049
  return memo[target];
81949
82050
  }
81950
- /* istanbul ignore next */
81951
-
81952
82051
 
82052
+ /* istanbul ignore next */
81953
82053
  function insertBySelector(insert, style) {
81954
82054
  var target = getTarget(insert);
81955
-
81956
82055
  if (!target) {
81957
82056
  throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");
81958
82057
  }
81959
-
81960
82058
  target.appendChild(style);
81961
82059
  }
81962
-
81963
82060
  module.exports = insertBySelector;
81964
82061
 
81965
82062
  /***/ }),
@@ -81977,7 +82074,6 @@ function insertStyleElement(options) {
81977
82074
  options.insert(element, options.options);
81978
82075
  return element;
81979
82076
  }
81980
-
81981
82077
  module.exports = insertStyleElement;
81982
82078
 
81983
82079
  /***/ }),
@@ -81991,12 +82087,10 @@ module.exports = insertStyleElement;
81991
82087
  /* istanbul ignore next */
81992
82088
  function setAttributesWithoutAttributes(styleElement) {
81993
82089
  var nonce = true ? __webpack_require__.nc : 0;
81994
-
81995
82090
  if (nonce) {
81996
82091
  styleElement.setAttribute("nonce", nonce);
81997
82092
  }
81998
82093
  }
81999
-
82000
82094
  module.exports = setAttributesWithoutAttributes;
82001
82095
 
82002
82096
  /***/ }),
@@ -82010,59 +82104,51 @@ module.exports = setAttributesWithoutAttributes;
82010
82104
  /* istanbul ignore next */
82011
82105
  function apply(styleElement, options, obj) {
82012
82106
  var css = "";
82013
-
82014
82107
  if (obj.supports) {
82015
82108
  css += "@supports (".concat(obj.supports, ") {");
82016
82109
  }
82017
-
82018
82110
  if (obj.media) {
82019
82111
  css += "@media ".concat(obj.media, " {");
82020
82112
  }
82021
-
82022
82113
  var needLayer = typeof obj.layer !== "undefined";
82023
-
82024
82114
  if (needLayer) {
82025
82115
  css += "@layer".concat(obj.layer.length > 0 ? " ".concat(obj.layer) : "", " {");
82026
82116
  }
82027
-
82028
82117
  css += obj.css;
82029
-
82030
82118
  if (needLayer) {
82031
82119
  css += "}";
82032
82120
  }
82033
-
82034
82121
  if (obj.media) {
82035
82122
  css += "}";
82036
82123
  }
82037
-
82038
82124
  if (obj.supports) {
82039
82125
  css += "}";
82040
82126
  }
82041
-
82042
82127
  var sourceMap = obj.sourceMap;
82043
-
82044
82128
  if (sourceMap && typeof btoa !== "undefined") {
82045
82129
  css += "\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), " */");
82046
- } // For old IE
82130
+ }
82047
82131
 
82132
+ // For old IE
82048
82133
  /* istanbul ignore if */
82049
-
82050
-
82051
82134
  options.styleTagTransform(css, styleElement, options.options);
82052
82135
  }
82053
-
82054
82136
  function removeStyleElement(styleElement) {
82055
82137
  // istanbul ignore if
82056
82138
  if (styleElement.parentNode === null) {
82057
82139
  return false;
82058
82140
  }
82059
-
82060
82141
  styleElement.parentNode.removeChild(styleElement);
82061
82142
  }
82062
- /* istanbul ignore next */
82063
-
82064
82143
 
82144
+ /* istanbul ignore next */
82065
82145
  function domAPI(options) {
82146
+ if (typeof document === "undefined") {
82147
+ return {
82148
+ update: function update() {},
82149
+ remove: function remove() {}
82150
+ };
82151
+ }
82066
82152
  var styleElement = options.insertStyleElement(options);
82067
82153
  return {
82068
82154
  update: function update(obj) {
@@ -82073,7 +82159,6 @@ function domAPI(options) {
82073
82159
  }
82074
82160
  };
82075
82161
  }
82076
-
82077
82162
  module.exports = domAPI;
82078
82163
 
82079
82164
  /***/ }),
@@ -82092,11 +82177,9 @@ function styleTagTransform(css, styleElement) {
82092
82177
  while (styleElement.firstChild) {
82093
82178
  styleElement.removeChild(styleElement.firstChild);
82094
82179
  }
82095
-
82096
82180
  styleElement.appendChild(document.createTextNode(css));
82097
82181
  }
82098
82182
  }
82099
-
82100
82183
  module.exports = styleTagTransform;
82101
82184
 
82102
82185
  /***/ }),