geojs 1.6.3 → 1.6.4

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.js CHANGED
@@ -221,7 +221,7 @@ var annotation = function annotation(type, args) {
221
221
  /**
222
222
  * Get or set the name of this annotation.
223
223
  *
224
- * @param {string|undefined} arg If `undefined`, return the name, otherwise
224
+ * @param {string|undefined} [arg] If `undefined`, return the name, otherwise
225
225
  * change it. When setting the name, the value is trimmed of
226
226
  * whitespace. The name will not be changed to an empty string.
227
227
  * @returns {this|string} The current name or this annotation.
@@ -398,7 +398,7 @@ var annotation = function annotation(type, args) {
398
398
  /**
399
399
  * Get or set the state of this annotation.
400
400
  *
401
- * @param {string|undefined} arg If `undefined`, return the state,
401
+ * @param {string|undefined} [arg] If `undefined`, return the state,
402
402
  * otherwise change it. This should be one of the
403
403
  * {@link geo.annotation.state} values.
404
404
  * @returns {this|string} The current state or this annotation.
@@ -466,7 +466,7 @@ var annotation = function annotation(type, args) {
466
466
  */
467
467
 
468
468
 
469
- this.processAction = function () {
469
+ this.processAction = function (evt) {
470
470
  return undefined;
471
471
  };
472
472
  /**
@@ -1309,8 +1309,8 @@ var annotation = function annotation(type, args) {
1309
1309
  *
1310
1310
  * @param {object} m_this The current annotation instance.
1311
1311
  * @param {function} s_actions The parent actions method.
1312
- * @param {string} [state] The state to return actions for. Defaults to
1313
- * the current state.
1312
+ * @param {string|undefined} state The state to return actions for. Defaults
1313
+ * to the current state.
1314
1314
  * @param {string} name The name of this annotation.
1315
1315
  * @param {Array} originalArgs arguments to original call
1316
1316
  * @returns {geo.actionRecord[]} A list of actions.
@@ -1429,6 +1429,11 @@ function continuousVerticesProcessAction(m_this, evt, name) {
1429
1429
  * rectangle in edit mode.
1430
1430
  */
1431
1431
 
1432
+ /*
1433
+ * @typedef {object} geo.rectangleAnnotation.subspec
1434
+ * @typedef {geo.annotation.spec | geo.rectangleAnnotation.subspec} geo.rectangleAnnotation.spec
1435
+ */
1436
+
1432
1437
  /**
1433
1438
  * Rectangle annotation class.
1434
1439
  *
@@ -3348,7 +3353,7 @@ var annotationLayer = function annotationLayer(arg) {
3348
3353
  * @param {geo.annotation} annotation The annotation to add.
3349
3354
  * @param {string|geo.transform|null} [gcs] `undefined` to use the interface
3350
3355
  * gcs, `null` to use the map gcs, or any other transform.
3351
- * @param {boolean} update If `false`, don't update the layer after adding
3356
+ * @param {boolean} [update] If `false`, don't update the layer after adding
3352
3357
  * the annotation.
3353
3358
  * @returns {this} The current layer.
3354
3359
  * @fires geo.event.annotation.add_before
@@ -3388,7 +3393,7 @@ var annotationLayer = function annotationLayer(arg) {
3388
3393
  * Remove an annotation from the layer.
3389
3394
  *
3390
3395
  * @param {geo.annotation} annotation The annotation to remove.
3391
- * @param {boolean} update If `false`, don't update the layer after removing
3396
+ * @param {boolean} [update] If `false`, don't update the layer after removing
3392
3397
  * the annotation.
3393
3398
  * @returns {boolean} `true` if an annotation was removed.
3394
3399
  * @fires geo.event.annotation.remove
@@ -3602,7 +3607,7 @@ var annotationLayer = function annotationLayer(arg) {
3602
3607
  * Return the current set of annotations as a geojson object. Alternately,
3603
3608
  * add a set of annotations from a geojson object.
3604
3609
  *
3605
- * @param {string|objectFile} [geojson] If present, add annotations based on
3610
+ * @param {string|object|File} [geojson] If present, add annotations based on
3606
3611
  * the given geojson object. If `undefined`, return the current
3607
3612
  * annotations as geojson. This may be a JSON string, a javascript
3608
3613
  * object, or a File object.
@@ -4830,7 +4835,7 @@ var camera = function camera(spec) {
4830
4835
  * Project a vector from world space into viewport (display) space. The
4831
4836
  * resulting vector always has the last component (`w`) equal to 1.
4832
4837
  *
4833
- * @param {vec2|vec3|vec4} point The point in world coordinates.
4838
+ * @param {vec3|vec4} point The point in world coordinates.
4834
4839
  * @returns {vec4} The point in display coordinates.
4835
4840
  */
4836
4841
 
@@ -4849,7 +4854,7 @@ var camera = function camera(spec) {
4849
4854
  * Project a vector from viewport (display) space into world space. The
4850
4855
  * resulting vector always has the last component (`w`) equal to 1.
4851
4856
  *
4852
- * @param {vec2|vec3|vec4} point The point in display coordinates.
4857
+ * @param {vec3|vec4} point The point in display coordinates.
4853
4858
  * @returns {vec4} The point in world space coordinates.
4854
4859
  */
4855
4860
 
@@ -5162,7 +5167,7 @@ var camera = function camera(spec) {
5162
5167
  /**
5163
5168
  * Represent a glmatrix as a pretty-printed string.
5164
5169
  * @param {mat4} mat A 4 x 4 matrix.
5165
- * @param {number} prec The number of decimal places.
5170
+ * @param {number} [prec] The number of decimal places.
5166
5171
  * @returns {string}
5167
5172
  */
5168
5173
 
@@ -5230,7 +5235,7 @@ var camera = function camera(spec) {
5230
5235
  };
5231
5236
  /**
5232
5237
  * Supported projection types.
5233
- * @enum
5238
+ * @enum {boolean}
5234
5239
  */
5235
5240
 
5236
5241
 
@@ -5241,7 +5246,7 @@ camera.projection = {
5241
5246
  /**
5242
5247
  * Default camera clipping bounds. Some features and renderers may rely on the
5243
5248
  * far clip value being more positive than the near clip value.
5244
- * @enum
5249
+ * @enum {number}
5245
5250
  */
5246
5251
 
5247
5252
  camera.clipbounds = {
@@ -7400,7 +7405,7 @@ var choroplethFeature = function choroplethFeature(arg) {
7400
7405
  /**
7401
7406
  * Add a geojson polygon feature to the current layer.
7402
7407
  *
7403
- * @param {geojsonFeature} feature A geojson parsed feature.
7408
+ * @param {geo.geojsonFeature} feature A geojson parsed feature.
7404
7409
  * @param {geo.geoColor} fillColor The fill color for the feature.
7405
7410
  * @returns {geo.polygonFeature}
7406
7411
  */
@@ -7814,11 +7819,12 @@ var domRenderer = function domRenderer(arg) {
7814
7819
  /**
7815
7820
  * Initialize.
7816
7821
  *
7822
+ * @param {object} [arg] Optional arguments.
7817
7823
  * @returns {this}
7818
7824
  */
7819
7825
 
7820
7826
 
7821
- this._init = function () {
7827
+ this._init = function (arg) {
7822
7828
  var layer = m_this.layer().node();
7823
7829
 
7824
7830
  if (!m_this.canvas() && layer && layer.length) {
@@ -9767,7 +9773,7 @@ var featureLayer = function featureLayer(arg) {
9767
9773
  /**
9768
9774
  * Get/Set drawables.
9769
9775
  *
9770
- * @param {geo.feature[]} val A list of features, or unspecified to return
9776
+ * @param {geo.feature[]} [val] A list of features, or unspecified to return
9771
9777
  * the current feature list. If a list is provided, features are added or
9772
9778
  * removed as needed.
9773
9779
  * @returns {geo.feature[]|this} The current features associated with the
@@ -10351,7 +10357,7 @@ var object = __webpack_require__(3737);
10351
10357
  * Object specification for a fileReader.
10352
10358
  *
10353
10359
  * @typedef {object} geo.fileReader.spec
10354
- * @property {geo.featureLayer} layer The target feature layer.
10360
+ * @property {geo.featureLayer} [layer] The target feature layer.
10355
10361
  */
10356
10362
 
10357
10363
  /**
@@ -10360,7 +10366,7 @@ var object = __webpack_require__(3737);
10360
10366
  * @class
10361
10367
  * @alias geo.fileReader
10362
10368
  * @extends geo.object
10363
- * @param {geo.fileReader.spec} arg
10369
+ * @param {geo.fileReader.spec} [arg]
10364
10370
  * @returns {geo.fileReader}
10365
10371
  */
10366
10372
 
@@ -11838,7 +11844,8 @@ var tile = __webpack_require__(8418);
11838
11844
  * @property {object} [size] The size of each tile.
11839
11845
  * @property {number} [size.x=256] Width in pixels.
11840
11846
  * @property {number} [size.y=256] Height in pixels.
11841
- * @property {string} [crossDomain='anonymous'] Image CORS attribute.
11847
+ * @property {string} [crossDomain='anonymous'] Image CORS attribute. This is
11848
+ * used for the `crossorigin` property when loading images.
11842
11849
  */
11843
11850
 
11844
11851
  /**
@@ -13002,7 +13009,7 @@ var isolineFeature = function isolineFeature(arg) {
13002
13009
  * the generated labels. The viewport calculation is conservative, as the
13003
13010
  * map could be rotated, changed size, or have other modifications.
13004
13011
  *
13005
- * @returns {exit}
13012
+ * @returns {this}
13006
13013
  */
13007
13014
 
13008
13015
 
@@ -13610,7 +13617,7 @@ var layer = function layer(arg) {
13610
13617
  /**
13611
13618
  * Get root node of the layer.
13612
13619
  *
13613
- * @returns {div}
13620
+ * @returns {HTMLDivElement}
13614
13621
  */
13615
13622
 
13616
13623
 
@@ -13938,11 +13945,13 @@ var layer = function layer(arg) {
13938
13945
  * Update layer.
13939
13946
  *
13940
13947
  * This is a stub that should be subclassed.
13948
+ *
13949
+ * @param {object} [arg] An object, possibly with an ``event`` key and value.
13941
13950
  * @returns {this}
13942
13951
  */
13943
13952
 
13944
13953
 
13945
- this._update = function () {
13954
+ this._update = function (arg) {
13946
13955
  return m_this;
13947
13956
  };
13948
13957
  /**
@@ -15357,7 +15366,7 @@ var map = function map(arg) {
15357
15366
  * view center. Rotation mostly ignores `clampBoundsX`, as the behavior
15358
15367
  * feels peculiar otherwise.
15359
15368
  *
15360
- * @param {number} rotation Absolute angle in radians (positive is
15369
+ * @param {number} [rotation] Absolute angle in radians (positive is
15361
15370
  * clockwise).
15362
15371
  * @param {object} [origin] If specified, rotate about this origin.
15363
15372
  * @param {geo.geoPosition} origin.geo The gcs coordinates of the
@@ -15715,7 +15724,7 @@ var map = function map(arg) {
15715
15724
  * coordinate to convert.
15716
15725
  * @param {string|geo.transform|null} [gcs] Output gcs. `undefined` to use
15717
15726
  * the interface gcs, `null` to use the map gcs, or any other transform.
15718
- * @returns {geo.geoPosition|geoPosition[]} GCS space coordinates.
15727
+ * @returns {geo.geoPosition|geo.geoPosition[]} GCS space coordinates.
15719
15728
  */
15720
15729
 
15721
15730
 
@@ -15857,11 +15866,12 @@ var map = function map(arg) {
15857
15866
  /**
15858
15867
  * Initialize the map.
15859
15868
  *
15869
+ * @param {object} [arg] Optional arguments.
15860
15870
  * @returns {this} The map object.
15861
15871
  */
15862
15872
 
15863
15873
 
15864
- this._init = function () {
15874
+ this._init = function (arg) {
15865
15875
  if (m_node === undefined || m_node === null) {
15866
15876
  throw new Error('Map require DIV node');
15867
15877
  }
@@ -16228,7 +16238,7 @@ var map = function map(arg) {
16228
16238
  m_center = m_this.gcsToWorld({
16229
16239
  x: p[0],
16230
16240
  y: p[1]
16231
- }, null, true, true);
16241
+ }, null);
16232
16242
  m_this.zoom(p[2], m_transition.zoomOrigin, true);
16233
16243
  }
16234
16244
 
@@ -16468,7 +16478,7 @@ var map = function map(arg) {
16468
16478
  * @param {number} rotation The requested rotation in clockwise radians.
16469
16479
  * @param {string|geo.transform|null} [gcs] `undefined` to use the interface
16470
16480
  * gcs, `null` to use the map gcs, or any other transform.
16471
- * @param {boolean} ignoreDiscreteZoom If `true`, ignore the `discreteZoom`
16481
+ * @param {boolean} [ignoreDiscreteZoom] If `true`, ignore the `discreteZoom`
16472
16482
  * option when determining the new view.
16473
16483
  * @param {boolean} [ignoreClampBounds] If `true` and `clampBoundsX` or
16474
16484
  * `clampBoundsY` is set, allow the bounds to be less clamped.
@@ -16720,11 +16730,11 @@ var map = function map(arg) {
16720
16730
  * @param {boolean|null} [opts.attribution=null] If `null` or unspecified,
16721
16731
  * include the attribution only if all layers are used. If false, never
16722
16732
  * include the attribution. If `true`, always include it.
16723
- * @param {HTMLObject[]|string[]} [opts.html] A list of additional HTML
16733
+ * @param {HTMLElement[]|string[]} [opts.html] A list of additional HTML
16724
16734
  * elements, selectors, or jQuery elements to render on top of the map.
16725
16735
  * These are rendered in order, with the last one topmost.
16726
- * @returns {deferred} A jQuery Deferred object. The done function receives
16727
- * either a data URL or an `HTMLCanvasElement` with the result.
16736
+ * @returns {jQueryDeferred} A jQuery Deferred object. The done function
16737
+ * receives either a data URL or an `HTMLCanvasElement` with the result.
16728
16738
  * @fires geo.event.screenshot.ready
16729
16739
  */
16730
16740
 
@@ -16933,7 +16943,7 @@ var map = function map(arg) {
16933
16943
  /**
16934
16944
  * Return the nearest valid zoom level to the requested zoom.
16935
16945
  * @param {number} zoom A zoom level to adjust to current settings
16936
- * @param {boolean} ignoreDiscreteZoom If `true`, ignore the `discreteZoom`
16946
+ * @param {boolean} [ignoreDiscreteZoom] If `true`, ignore the `discreteZoom`
16937
16947
  * option when determining the new view.
16938
16948
  * @returns {number} The zoom level clamped to the allowed zoom range and
16939
16949
  * with other settings applied.
@@ -16977,10 +16987,11 @@ var map = function map(arg) {
16977
16987
  * Draw a layer image to a canvas context. The layer's opacity and transform
16978
16988
  * are applied. This is used as part of making a screenshot.
16979
16989
  *
16980
- * @param {context} context The 2d canvas context to draw into.
16990
+ * @param {CanvasRenderingContext2D} context The 2d canvas context to draw
16991
+ * into.
16981
16992
  * @param {number} opacity The opacity in the range [0, 1].
16982
16993
  * @param {object} elem A jQuery element that might have a transform.
16983
- * @param {HTMLImageObject} img The image or canvas to draw to the canvas.
16994
+ * @param {HTMLImageElement} img The image or canvas to draw to the canvas.
16984
16995
  * @param {string} [mixBlendMode] the mix-blend-mode used to add this layer.
16985
16996
  * @private
16986
16997
  */
@@ -17188,12 +17199,12 @@ var map = function map(arg) {
17188
17199
  * Return a valid rotation angle.
17189
17200
  *
17190
17201
  * @param {number} rotation Proposed rotation.
17191
- * @param {boolean} ignoreRotationFunc If truthy and rotations are allowed,
17202
+ * @param {boolean} [ignoreRotationFunc] If truthy and rotations are allowed,
17192
17203
  * allow any rotation. Otherwise, the rotation is passed through the
17193
17204
  * `allowRotation` function.
17194
- * @param {boolean} noRangeLimit If falsy, ensure that the rotation is in the
17195
- * range [0, 2*PI). If it is very close to zero, it is snapped to zero.
17196
- * If true, the rotation can have any value.
17205
+ * @param {boolean} [noRangeLimit] If falsy, ensure that the rotation is in
17206
+ * the range [0, 2*PI). If it is very close to zero, it is snapped to
17207
+ * zero. If true, the rotation can have any value.
17197
17208
  * @returns {number} the validated rotation
17198
17209
  * @private
17199
17210
  */
@@ -19851,26 +19862,26 @@ var mapInteractor = function mapInteractor(args) {
19851
19862
  * map in pixels relative to the map's div.
19852
19863
  * @param {geo.screenPosition} [options.center] The position of a touch
19853
19864
  * event center relative to the window.
19854
- * @param {string} [button] One of `left`, `middle`, or `right` for mouse
19855
- * events.
19856
- * @param {string} [modifiers] A space-separated list of metakeys that are
19857
- * down on mouse events.
19858
- * @param {geo.screenPosition} [wheelDelta] The amount the wheel moved in
19859
- * both directions for wheel events. One step is often 20 units of
19860
- * vement.
19861
- * @param {number} [wheelMode] The wheel delta mode. See
19865
+ * @param {string} [options.button] One of `left`, `middle`, or `right` for
19866
+ * mouse events.
19867
+ * @param {string} [options.modifiers] A space-separated list of metakeys
19868
+ * that are down on mouse events.
19869
+ * @param {geo.screenPosition} [options.wheelDelta] The amount the wheel
19870
+ * moved in both directions for wheel events. One step is often 20 units
19871
+ * of movement.
19872
+ * @param {number} [options.wheelMode] The wheel delta mode. See
19862
19873
  * https://developer.mozilla.org/en-US/docs/Web/API/WheelEvent .
19863
- * @param {boolean} [touch] `truthy` if this is a touch event.
19864
- * @param {number} [rotation] Touch event rotation in degrees.
19865
- * @param {number} [scale] Touch event scale. Initial events should have a
19866
- * scale of 1; subsequent events should increase or decrease this to
19867
- * simulate spread and pinch actions.
19868
- * @param {number[]} [pointers] A list of pointer numbers involved in a
19869
- * touch event. Pointers are number from one up, so `[1]` is the first
19874
+ * @param {boolean} [options.touch] `truthy` if this is a touch event.
19875
+ * @param {number} [options.rotation] Touch event rotation in degrees.
19876
+ * @param {number} [options.scale] Touch event scale. Initial events should
19877
+ * have a scale of 1; subsequent events should increase or decrease this
19878
+ * to simulate spread and pinch actions.
19879
+ * @param {number[]} [options.pointers] A list of pointer numbers involved in
19880
+ * a touch event. Pointers are number from one up, so `[1]` is the first
19870
19881
  * touch point, `[1, 2]` are two touch points, and `[2]` is when the first
19871
19882
  * point was released but the second is still touching.
19872
- * @param {string} [pointerType] `mouse` if this is a mouse action rather
19873
- * than a touch action.
19883
+ * @param {string} [options.pointerType] `mouse` if this is a mouse action
19884
+ * rather than a touch action.
19874
19885
  * @returns {mapInteractor}
19875
19886
  */
19876
19887
 
@@ -20505,7 +20516,7 @@ markerFeature.capabilities = {
20505
20516
  markerFeature.primitiveShapes = pointFeature.primitiveShapes;
20506
20517
  /**
20507
20518
  * Marker symbols
20508
- * @enum
20519
+ * @enum {number}
20509
20520
  */
20510
20521
 
20511
20522
  markerFeature.symbols = {
@@ -20562,7 +20573,7 @@ markerFeature.symbols = {
20562
20573
  });
20563
20574
  /**
20564
20575
  * Marker scale modes
20565
- * @enum
20576
+ * @enum {number}
20566
20577
  */
20567
20578
 
20568
20579
  markerFeature.scaleMode = {
@@ -20602,7 +20613,7 @@ var feature = __webpack_require__(6837);
20602
20613
  * of these properties can be functions, which get passed `data`.
20603
20614
  *
20604
20615
  * @typedef {object} geo.meshFeature.meshSpec
20605
- * @property {number[]|array.<number[]>} [elements] If specified, a list of
20616
+ * @property {number[]|Array.<number[]>} [elements] If specified, a list of
20606
20617
  * indices into the data array that form elements. If this is an array of
20607
20618
  * arrays, each subarray must have at least either 3 values for triangular
20608
20619
  * elements or 4 values for square elements. If this is a single array,
@@ -21600,6 +21611,8 @@ var quadFeature = __webpack_require__(5017);
21600
21611
  * specified, use this as the layer opacity.
21601
21612
  * @property {string} [source] If specified, use the predefined tile source
21602
21613
  * (see {@link geo.osmLayer.tileSources}).
21614
+ * @property {string} [crossDomain='anonymous'] Image CORS attribute. This is
21615
+ * used for the `crossorigin` property when loading images.
21603
21616
  */
21604
21617
 
21605
21618
  /**
@@ -23177,7 +23190,7 @@ pointFeature.capabilities = {
23177
23190
  };
23178
23191
  /**
23179
23192
  * Support primitive shapes
23180
- * @enum
23193
+ * @enum {string}
23181
23194
  */
23182
23195
 
23183
23196
  pointFeature.primitiveShapes = {
@@ -25099,7 +25112,7 @@ util.registerRenderer = function (name, func) {
25099
25112
  * @param {geo.layer} layer The layer associated with the renderer.
25100
25113
  * @param {HTMLCanvasElement} [canvas] A canvas object to share between
25101
25114
  * renderers.
25102
- * @param {object} options Options for the new renderer.
25115
+ * @param {object} [options] Options for the new renderer.
25103
25116
  * @returns {geo.renderer|null} The new renderer or null if no such name is
25104
25117
  * registered.
25105
25118
  */
@@ -25128,7 +25141,7 @@ util.createRenderer = function (name, layer, canvas, options) {
25128
25141
  *
25129
25142
  * @alias geo.checkRenderer
25130
25143
  * @param {string|null} name Name of the desired renderer.
25131
- * @param {boolean} noFallback If truthy, don't recommend a fallback.
25144
+ * @param {boolean} [noFallback] If truthy, don't recommend a fallback.
25132
25145
  * @returns {string|null|false} The name of the renderer that should be used
25133
25146
  * or false if no valid renderer can be determined.
25134
25147
  */
@@ -26004,7 +26017,7 @@ module.exports = sceneObject;
26004
26017
  * @constant
26005
26018
  * @type {string}
26006
26019
  */
26007
- module.exports = "4c7a5260c6c4756f2cf461d00c9be82abaea01a7";
26020
+ module.exports = "6670a9640d46540bbf80aaa643d96617642bd23d";
26008
26021
 
26009
26022
  /***/ }),
26010
26023
 
@@ -27385,10 +27398,10 @@ var svgRenderer = function svgRenderer(arg) {
27385
27398
  * Create a new feature element from an object that describes the feature
27386
27399
  * attributes. To be called from feature classes only.
27387
27400
  *
27388
- * @param {object} arg Options for the features.
27401
+ * @param {object} arg
27389
27402
  * @param {string} arg.id A unique string identifying the feature.
27390
27403
  * @param {array} arg.data Array of data objects used in a d3 data method.
27391
- * @param {function} [aeg.dataIndex] A function that returns a unique id for
27404
+ * @param {function} [arg.dataIndex] A function that returns a unique id for
27392
27405
  * each data element. This is passed to the data access function.
27393
27406
  * @param {object} arg.style An object with style values or functions.
27394
27407
  * @param {object} arg.attributes An object containing element attributes.
@@ -27401,7 +27414,7 @@ var svgRenderer = function svgRenderer(arg) {
27401
27414
  * attributes and styles set when new. If falsy, features always have
27402
27415
  * attributes and styles updated.
27403
27416
  * @param {boolean} [arg.sortByZ] If truthy, sort features by the `d.zIndex`.
27404
- * @param {string} [parentId] If set, the group ID of the parent element.
27417
+ * @param {string} [arg.parentId] If set, the group ID of the parent element.
27405
27418
  * @returns {this}
27406
27419
  */
27407
27420
 
@@ -28714,7 +28727,7 @@ var tileCache = function tileCache(options) {
28714
28727
  * Remove a tile from the cache.
28715
28728
  *
28716
28729
  * @param {string|geo.tile} tile The tile or its hash.
28717
- * @returns {booliean} `true` if a tile was removed.
28730
+ * @returns {boolean} `true` if a tile was removed.
28718
28731
  */
28719
28732
 
28720
28733
 
@@ -29409,7 +29422,7 @@ var tileLayer = function tileLayer(arg) {
29409
29422
  /**
29410
29423
  * Returns a tile's bounds in a gcs.
29411
29424
  *
29412
- * @param {object|tile} indexOrTile Either a tile or an object with
29425
+ * @param {object|geo.tile} indexOrTile Either a tile or an object with
29413
29426
  * {x, y, level}` specifying a tile.
29414
29427
  * @param {string|geo.transform|null} [gcs] `undefined` to use the
29415
29428
  * interface gcs, `null` to use the map gcs, or any other transform.
@@ -29578,7 +29591,7 @@ var tileLayer = function tileLayer(arg) {
29578
29591
  * @param {number} maxLevel The zoom level
29579
29592
  * @param {geo.geoBounds} bounds The map bounds
29580
29593
  * @param {boolean} sorted Return a sorted list
29581
- * @param {boolean} onlyIfChanged If the set of tiles have not changed
29594
+ * @param {boolean} [onlyIfChanged] If the set of tiles have not changed
29582
29595
  * (even if their desired order has), return undefined instead of an
29583
29596
  * array of tiles.
29584
29597
  * @returns {geo.tile[]} An array of tile objects
@@ -30112,7 +30125,7 @@ var tileLayer = function tileLayer(arg) {
30112
30125
  * origin.
30113
30126
  *
30114
30127
  * @param {object} pt A point in world space coordinates with `x` and `y`.
30115
- * @param {number|undefined} zoom If unspecified, use the map zoom.
30128
+ * @param {number} [zoom] If unspecified, use the map zoom.
30116
30129
  * @returns {object} Local coordinates with `x` and `y`.
30117
30130
  */
30118
30131
 
@@ -30161,7 +30174,7 @@ var tileLayer = function tileLayer(arg) {
30161
30174
  * create the element if it doesn't already exist.
30162
30175
  *
30163
30176
  * @param {number} level The zoom level of the layer to fetch.
30164
- * @returns {DOM} The layer's DOM element.
30177
+ * @returns {HTMLElement} The layer's DOM element.
30165
30178
  */
30166
30179
 
30167
30180
 
@@ -30518,8 +30531,8 @@ var tileLayer = function tileLayer(arg) {
30518
30531
  * @param {geo.geoBounds} [bounds] The view bounds (if unspecified, assume
30519
30532
  * global bounds)
30520
30533
  * @param {number} bounds.level The zoom level the bounds are given as.
30521
- * @param {number} zoom Keep in bound tile at this zoom level.
30522
- * @param {boolean} doneLoading If true, allow purging additional tiles.
30534
+ * @param {number} [zoom] Keep in bound tile at this zoom level.
30535
+ * @param {boolean} [doneLoading] If true, allow purging additional tiles.
30523
30536
  * @returns {boolean}
30524
30537
  */
30525
30538
 
@@ -30632,9 +30645,9 @@ var tileLayer = function tileLayer(arg) {
30632
30645
  /**
30633
30646
  * Get or set the subdomains used for templating.
30634
30647
  *
30635
- * @param {string|list} [subdomains] A comma-separated list, a string of
30648
+ * @param {string|string[]} [subdomains] A comma-separated list, a string of
30636
30649
  * single character subdomains, or a list.
30637
- * @returns {string|list|this}
30650
+ * @returns {string|string[]|this}
30638
30651
  */
30639
30652
 
30640
30653
 
@@ -30678,8 +30691,8 @@ var tileLayer = function tileLayer(arg) {
30678
30691
  /**
30679
30692
  * Get/Set visibility of the layer.
30680
30693
  *
30681
- * @param {boolean|undefined} val If unspecified, return the visibility,
30682
- * otherwise set it.
30694
+ * @param {boolean} [val] If unspecified, return the visibility, otherwise
30695
+ * set it.
30683
30696
  * @returns {boolean|this} Either the visibility (if getting) or the layer
30684
30697
  * (if setting).
30685
30698
  */
@@ -30896,24 +30909,24 @@ var util = __webpack_require__(4634);
30896
30909
  * @extends geo.feature.spec
30897
30910
  * @property {geo.geoPosition|function} [position] Position of the data.
30898
30911
  * Default is (data).
30899
- * @property {float|function} [time] Time of the data. Default is `(data).t`.
30912
+ * @property {number|function} [time] Time of the data. Default is `(data).t`.
30900
30913
  * @property {object|function} [track] Tracks from the data. Default is
30901
30914
  * (data). Typically, the data is an array of tracks, each of which is an
30902
30915
  * array of points, each of which has a position and time. The position and
30903
30916
  * time functions are called for each point as `position(trackPoint,
30904
30917
  * pointIndex, trackEntry, trackEntryIndex)`.
30905
- * @property {float|null} [startTime=null] Start time. Used for styling. If
30918
+ * @property {number|null} [startTime=null] Start time. Used for styling. If
30906
30919
  * `null`, this is the duration before the end time if `duration` is not
30907
30920
  * `null` and the minimum time in any track if `duration` is `null`.
30908
- * @property {float} [endTime=null] End time. Used for styling and position of
30909
- * the track head. If `null` and either of `startTime` or `duration` are
30921
+ * @property {number} [endTime=null] End time. Used for styling and position
30922
+ * of the track head. If `null` and either of `startTime` or `duration` are
30910
30923
  * `null`, this is the maximum time in any track.
30911
- * @property {float} [duration=null] Duration between start and end times.
30924
+ * @property {number} [duration=null] Duration between start and end times.
30912
30925
  * Ignored if both start and end times are specified.
30913
- * @property {float|function} [text] Text to use for the head of the track. If
30914
- * specified, the track head is rendered as text. If `undefined` a marker is
30915
- * used instead. If `null` or an empty string (`''`), neither a marker nor
30916
- * text is used.
30926
+ * @property {number|function} [text] Text to use for the head of the track.
30927
+ * If specified, the track head is rendered as text. If `undefined` a marker
30928
+ * is used instead. If `null` or an empty string (`''`), neither a marker
30929
+ * nor text is used.
30917
30930
  * @property {geo.trackFeature.styleSpec} [style] Style object with default
30918
30931
  * style options.
30919
30932
  * @property {geo.lineFeature.styleSpec} [pastStyle] Style object with
@@ -31061,7 +31074,7 @@ var trackFeature = function trackFeature(arg) {
31061
31074
  * Calculate an interpolated position given a time. If the time is outside
31062
31075
  * the range of a track, the first or last point is returned.
31063
31076
  *
31064
- * @param {float} time The time to compute a position array for.
31077
+ * @param {number} time The time to compute a position array for.
31065
31078
  * @param {string|geo.transform|null} [gcs] `undefined` to use the feature
31066
31079
  * gcs, `null` to use the map gcs, or any other transform. This transform
31067
31080
  * is used for the interpolation; the results are still in feature gcs.
@@ -31226,7 +31239,7 @@ var trackFeature = function trackFeature(arg) {
31226
31239
  m_tracks.trackFunc = m_this.style.get('track');
31227
31240
  m_tracks.textFunc = m_this.style.get('text');
31228
31241
  ['past', 'current', 'future'].forEach(function (key) {
31229
- m_lineFeatures[key].style(m_this[key + 'Style']()).style(m_this.style()).line(m_this.style('track')).gcs(m_this.gcs()).data(data).position(m_this._linePosition(key));
31242
+ m_lineFeatures[key].style(m_this.style()).style(m_this[key + 'Style']()).line(m_this.style('track')).gcs(m_this.gcs()).data(data).position(m_this._linePosition(key));
31230
31243
  });
31231
31244
  var timeExtents = {};
31232
31245
  data.forEach(function (d, i) {
@@ -31562,11 +31575,11 @@ var trackFeature = function trackFeature(arg) {
31562
31575
  /**
31563
31576
  * Get/Set time accessor.
31564
31577
  *
31565
- * @param {float} [val] If not specified, return the current time accessor.
31578
+ * @param {number} [val] If not specified, return the current time accessor.
31566
31579
  * If specified, use this for the time accessor and return `this`. If a
31567
31580
  * function is given, this is called with `(vertexElement, vertexIndex,
31568
31581
  * dataElement, dataIndex)`.
31569
- * @returns {float|function|this} The current time or this feature.
31582
+ * @returns {number|function|this} The current time or this feature.
31570
31583
  */
31571
31584
 
31572
31585
 
@@ -31636,8 +31649,8 @@ var trackFeature = function trackFeature(arg) {
31636
31649
  /**
31637
31650
  * Get or set the start time.
31638
31651
  *
31639
- * @param {float|null} [val] If specified, the new start time.
31640
- * @returns {float|null|this} If set, the instance. Otherwise, the current
31652
+ * @param {number|null} [val] If specified, the new start time.
31653
+ * @returns {number|null|this} If set, the instance. Otherwise, the current
31641
31654
  * start time value.
31642
31655
  */
31643
31656
 
@@ -31658,8 +31671,8 @@ var trackFeature = function trackFeature(arg) {
31658
31671
  /**
31659
31672
  * Get or set the end time.
31660
31673
  *
31661
- * @param {float|null} [val] If specified, the new end time.
31662
- * @returns {float|null|this} If set, the instance. Otherwise, the current
31674
+ * @param {number|null} [val] If specified, the new end time.
31675
+ * @returns {number|null|this} If set, the instance. Otherwise, the current
31663
31676
  * end time value.
31664
31677
  */
31665
31678
 
@@ -31680,8 +31693,8 @@ var trackFeature = function trackFeature(arg) {
31680
31693
  /**
31681
31694
  * Get or set the duration.
31682
31695
  *
31683
- * @param {float|null} [val] If specified, the new duration.
31684
- * @returns {float|null|this} If set, the instance. Otherwise, the current
31696
+ * @param {number|null} [val] If specified, the new duration.
31697
+ * @returns {number|null|this} If set, the instance. Otherwise, the current
31685
31698
  * duration.
31686
31699
  */
31687
31700
 
@@ -32305,11 +32318,12 @@ transform.lookup = function (projection) {
32305
32318
  *
32306
32319
  * @param {string} srcPrj The source projection.
32307
32320
  * @param {string} tgtPrj The destination projection.
32308
- * @param {geoPosition|geoPosition[]|number[]} coordinates An array of
32309
- * coordinate objects. These may be in object or array form, or a flat
32310
- * array.
32311
- * @param {number} numberOfComponents For flat arrays, either 2 or 3.
32312
- * @returns {geoPosition|geoPosition[]|number[]} The transformed coordinates.
32321
+ * @param {geo.geoPosition|geo.geoPosition[]|number[]} coordinates An array of
32322
+ * coordinate objects. These may be in object or array form, or a flat
32323
+ * array.
32324
+ * @param {number} [numberOfComponents] For flat arrays, either 2 or 3.
32325
+ * @returns {geo.geoPosition|geo.geoPosition[]|number[]} The transformed
32326
+ * coordinates.
32313
32327
  */
32314
32328
 
32315
32329
 
@@ -32398,10 +32412,10 @@ transform.transformCoordinates = function (srcPrj, tgtPrj, coordinates, numberOf
32398
32412
  * components per coordinate. The array is modified in place.
32399
32413
  *
32400
32414
  * @param {transform} trans The transformation object.
32401
- * @param {geoPosition[]|number[]} coordinates An array of coordinate
32415
+ * @param {geo.geoPosition[]|number[]} coordinates An array of coordinate
32402
32416
  * objects or a flat array.
32403
32417
  * @param {number} numberOfComponents For flat arrays, either 2 or 3.
32404
- * @returns {geoPosition[]|number[]} The transformed coordinates
32418
+ * @returns {geo.geoPosition[]|number[]} The transformed coordinates
32405
32419
  */
32406
32420
 
32407
32421
 
@@ -32723,8 +32737,6 @@ transform.affineInverse = function (def, coords) {
32723
32737
  * @param {object} [ellipsoid=proj4.WGS84] An object with at least `a` and one
32724
32738
  * of `b`, `f`, or `rf` (1 / `f`) -- this works with proj4 ellipsoid
32725
32739
  * definitions.
32726
- * @param {number} [maxIterations=100] Maximum number of iterations to use
32727
- * to test convergence.
32728
32740
  * @returns {number} The distance in meters (or whatever units the ellipsoid
32729
32741
  * was specified in.
32730
32742
  */
@@ -32862,7 +32874,7 @@ module.exports = transform;
32862
32874
  /***/ }),
32863
32875
 
32864
32876
  /***/ 3762:
32865
- /***/ (function() {
32877
+ /***/ (function(module) {
32866
32878
 
32867
32879
  /*
32868
32880
  * Type definitions for jsdoc.
@@ -33100,6 +33112,7 @@ module.exports = transform;
33100
33112
  *
33101
33113
  * @typedef {geo.polygonFlat|geo.polygonObject} geo.polygon
33102
33114
  */
33115
+ module.exports = {};
33103
33116
 
33104
33117
  /***/ }),
33105
33118
 
@@ -34655,7 +34668,7 @@ var sliderWidget = function sliderWidget(arg) {
34655
34668
  * Respond to a mouse event on the widget.
34656
34669
  *
34657
34670
  * @param {d3Event} evt The event on the widget.
34658
- * @param {boolean} trans Truthy for an animated transition.
34671
+ * @param {boolean} [trans] Truthy for an animated transition.
34659
34672
  */
34660
34673
 
34661
34674
  function respond(evt, trans) {
@@ -35276,7 +35289,7 @@ var $ = __webpack_require__(5638);
35276
35289
  *
35277
35290
  * @param {geo.util.ClusterGroup} group The source cluster group
35278
35291
  * @param {number} zoom The zoom level of the current node
35279
- * @param {object[]} children An array of ClusterTrees or point objects
35292
+ * @param {object[]} [children] An array of ClusterTrees or point objects
35280
35293
  */
35281
35294
 
35282
35295
 
@@ -35410,8 +35423,8 @@ ClusterTree.prototype.coords = function () {
35410
35423
  * @class
35411
35424
  * @alias geo.util.ClusterGroup
35412
35425
  * @param {object} opts An options object
35413
- * @param {number} maxZoom The maximum zoom level to calculate.
35414
- * @param {number} radius Size of clustering at zoom 0 in point gcs.
35426
+ * @param {number} [opts.maxZoom] The maximum zoom level to calculate.
35427
+ * @param {number} [opts.radius] Size of clustering at zoom 0 in point gcs.
35415
35428
  */
35416
35429
 
35417
35430
 
@@ -35613,7 +35626,7 @@ var colorName = __webpack_require__(9552);
35613
35626
  /**
35614
35627
  * @typedef {object} geo.util.cssColorConversionRecord
35615
35628
  * @property {string} name The name of the color conversion.
35616
- * @property {RegEx} regex A regex that, if it matches the color string, will
35629
+ * @property {RegExp} regex A regex that, if it matches the color string, will
35617
35630
  * cause the process function to be invoked.
35618
35631
  * @property {function} process A function that takes (`color`, `match`) with
35619
35632
  * the original color string and the results of matching the regex using
@@ -36073,7 +36086,7 @@ var util = {
36073
36086
  * Check if an object an HTMLVideoElement element that is loaded.
36074
36087
  *
36075
36088
  * @param {object} vid An object that might be an HTMLVideoElement.
36076
- * @param {boolean} [allowFailedVideo] If `true`, an viedo element that has
36089
+ * @param {boolean} [allowFailedVideo] If `true`, an video element that has
36077
36090
  * a source and has failed to load is also considered 'ready' in the
36078
36091
  * sense that it isn't expected to change to a better state.
36079
36092
  * @returns {boolean} `true` if this is a video that is ready.
@@ -36463,7 +36476,7 @@ var util = {
36463
36476
  * var map = geo.map($.extend(results.map, {clampZoom: false}));
36464
36477
  * map.createLayer('osm', results.layer);
36465
36478
  *
36466
- * @param {string} [node] DOM selector for the map container.
36479
+ * @param {string?} node DOM selector for the map container.
36467
36480
  * @param {number} width Width of the whole map contents in pixels.
36468
36481
  * @param {number} height Height of the whole map contents in pixels.
36469
36482
  * @param {number} [tileWidth] If an osm or tile layer is going to be used,
@@ -36966,7 +36979,7 @@ var util = {
36966
36979
  */
36967
36980
  escapeUnicodeHTML: function escapeUnicodeHTML(text) {
36968
36981
  return text.replace(/./g, function (k) {
36969
- var code = k.charCodeAt();
36982
+ var code = k.charCodeAt(0);
36970
36983
 
36971
36984
  if (code < 127) {
36972
36985
  return k;
@@ -37033,7 +37046,7 @@ var util = {
37033
37046
  * stored as local base64 urls.
37034
37047
  *
37035
37048
  * @param {string} css The css to parse for urls.
37036
- * @param {jQuery.selector|DOMElement} styleElem The element that receivs
37049
+ * @param {jQuery.selector|HTMLElement} styleElem The element that receives
37037
37050
  * the css text after dereferencing or the DOM element that has style
37038
37051
  * that will be updated.
37039
37052
  * @param {jQuery.Deferred} styleDefer A Deferred to resolve once
@@ -38140,7 +38153,7 @@ module.exports.restoreWebglRenderer = function () {
38140
38153
  * unspecified, callback will be executed one final time after the last
38141
38154
  * throttled-function call. (After the throttled-function has not been
38142
38155
  * called for `delay` milliseconds, the internal counter is reset)
38143
- * @param {function} callback A function to be executed after `delay`
38156
+ * @param {function} [callback] A function to be executed after `delay`
38144
38157
  * milliseconds. The `this` context and all arguments are passed through,
38145
38158
  * as-is, to `callback` when the throttled-function is executed.
38146
38159
  * @param {function} [accumulator] A function to be executed (synchronously)
@@ -38468,7 +38481,7 @@ module.exports = vectorFeature;
38468
38481
  * @constant
38469
38482
  * @type {string}
38470
38483
  */
38471
- module.exports = "1.6.3";
38484
+ module.exports = "1.6.4";
38472
38485
 
38473
38486
  /***/ }),
38474
38487
 
@@ -40296,7 +40309,7 @@ var webgl_markerFeature = function webgl_markerFeature(arg) {
40296
40309
  /**
40297
40310
  * Create and style the data needed to render the markers.
40298
40311
  *
40299
- @param {boolean} onlyStyle if true, use the existing geometry and just
40312
+ @param {boolean} [onlyStyle] if true, use the existing geometry and just
40300
40313
  * recalculate the style.
40301
40314
  */
40302
40315
 
@@ -41216,7 +41229,7 @@ var webgl_pointFeature = function webgl_pointFeature(arg) {
41216
41229
  /**
41217
41230
  * Create and style the data needed to render the points.
41218
41231
  *
41219
- * @param {boolean} onlyStyle if true, use the existing geometry and just
41232
+ * @param {boolean} [onlyStyle] if true, use the existing geometry and just
41220
41233
  * recalculate the style.
41221
41234
  */
41222
41235
 
@@ -43524,6 +43537,8 @@ webglRenderer.supported = function () {
43524
43537
 
43525
43538
  try {
43526
43539
  canvas = document.createElement('canvas');
43540
+ /** @type {WebGLRenderingContext} */
43541
+
43527
43542
  ctx = canvas.getContext('webgl') || canvas.getContext('experimental-webgl');
43528
43543
  /* getSupportExtensions will throw an exception if the context isn't
43529
43544
  * really supported. */