diff --git a/externs/olx.js b/externs/olx.js index e8f339958f..ad1c275762 100644 --- a/externs/olx.js +++ b/externs/olx.js @@ -98,6 +98,14 @@ olx.GeolocationOptions.prototype.trackingOptions; olx.GeolocationOptions.prototype.projection; +/** + * Object literal with config options for the map logo. + * @typedef {{href: (string), src: (string)}} + * @api + */ +olx.LogoOptions; + + /** * Object literal with config options for the map. * @typedef {{controls: (ol.Collection|Array.|undefined), @@ -106,7 +114,7 @@ olx.GeolocationOptions.prototype.projection; * interactions: (ol.Collection|Array.|undefined), * keyboardEventTarget: (Element|Document|string|undefined), * layers: (Array.|ol.Collection|undefined), - * logo: (boolean|string|Object|undefined), + * logo: (boolean|string|olx.LogoOptions|undefined), * overlays: (ol.Collection|Array.|undefined), * renderer: (ol.RendererType|Array.|string|undefined), * target: (Element|string|undefined), @@ -173,7 +181,7 @@ olx.MapOptions.prototype.layers; * provided, the `src` property should be the URL for an image and the `href` * property should be a URL for creating a link. To disable the map logo, set * the option to `false`. By default, the OpenLayers 3 logo is shown. - * @type {boolean|string|Object|undefined} + * @type {boolean|string|olx.LogoOptions|undefined} */ olx.MapOptions.prototype.logo; @@ -2563,7 +2571,7 @@ olx.source.BingMapsOptions.prototype.tileLoadFunction; * @typedef {{attributions: (Array.|undefined), * extent: (ol.Extent|undefined), * format: ol.format.Feature, - * logo: (string|Object|undefined), + * logo: (string|olx.LogoOptions|undefined), * projection: ol.proj.ProjectionLike}} * @api */ @@ -2593,7 +2601,7 @@ olx.source.FormatVectorOptions.prototype.format; /** * Logo. - * @type{string|Object|undefined} + * @type{string|olx.LogoOptions|undefined} */ olx.source.FormatVectorOptions.prototype.logo; @@ -2609,7 +2617,7 @@ olx.source.FormatVectorOptions.prototype.projection; * @typedef {{attributions: (Array.|undefined), * defaultProjection: ol.proj.ProjectionLike, * extent: (ol.Extent|undefined), - * logo: (string|Object|undefined), + * logo: (string|olx.LogoOptions|undefined), * object: (GeoJSONObject|undefined), * projection: ol.proj.ProjectionLike, * text: (string|undefined), @@ -2643,7 +2651,7 @@ olx.source.GeoJSONOptions.prototype.extent; /** * Logo. - * @type{string|Object|undefined} + * @type{string|olx.LogoOptions|undefined} */ olx.source.GeoJSONOptions.prototype.logo; @@ -2688,7 +2696,7 @@ olx.source.GeoJSONOptions.prototype.urls; * @typedef {{attributions: (Array.|undefined), * doc: (Document|undefined), * extent: (ol.Extent|undefined), - * logo: (string|Object|undefined), + * logo: (string|olx.LogoOptions|undefined), * node: (Node|undefined), * projection: ol.proj.ProjectionLike, * text: (string|undefined), @@ -2722,7 +2730,7 @@ olx.source.GPXOptions.prototype.extent; /** * Logo. - * @type{string|Object|undefined} + * @type{string|olx.LogoOptions|undefined} */ olx.source.GPXOptions.prototype.logo; @@ -2767,7 +2775,7 @@ olx.source.GPXOptions.prototype.urls; * @typedef {{attributions: (Array.|undefined), * crossOrigin: (null|string|undefined), * extent: (ol.Extent|undefined), - * logo: (string|Object|undefined), + * logo: (string|olx.LogoOptions|undefined), * opaque: (boolean|undefined), * projection: ol.proj.ProjectionLike, * tileClass: (function(new: ol.ImageTile, ol.TileCoord, @@ -2805,7 +2813,7 @@ olx.source.TileImageOptions.prototype.extent; /** * Logo. - * @type{string|Object|undefined} + * @type{string|olx.LogoOptions|undefined} */ olx.source.TileImageOptions.prototype.logo; @@ -2869,7 +2877,7 @@ olx.source.TileImageOptions.prototype.tileUrlFunction; * defaultProjection: ol.proj.ProjectionLike, * extent: (ol.Extent|undefined), * format: ol.format.Feature, - * logo: (string|Object|undefined), + * logo: (string|olx.LogoOptions|undefined), * object: (GeoJSONObject|undefined), * projection: ol.proj.ProjectionLike, * tileGrid: ol.tilegrid.TileGrid, @@ -2911,7 +2919,7 @@ olx.source.TileVectorOptions.prototype.format; /** * Logo. - * @type{string|Object|undefined} + * @type{string|olx.LogoOptions|undefined} */ olx.source.TileVectorOptions.prototype.logo; @@ -2964,7 +2972,7 @@ olx.source.TileVectorOptions.prototype.urls; * @typedef {{attributions: (Array.|undefined), * defaultProjection: ol.proj.ProjectionLike, * extent: (ol.Extent|undefined), - * logo: (string|Object|undefined), + * logo: (string|olx.LogoOptions|undefined), * object: (GeoJSONObject|undefined), * projection: ol.proj.ProjectionLike, * text: (string|undefined), @@ -2997,7 +3005,7 @@ olx.source.TopoJSONOptions.prototype.extent; /** * Logo. - * @type{string|Object|undefined} + * @type{string|olx.LogoOptions|undefined} */ olx.source.TopoJSONOptions.prototype.logo; @@ -3172,7 +3180,7 @@ olx.source.MapGuideOptions.prototype.params; * defaultStyle: (Array.|undefined), * doc: (Document|undefined), * extent: (ol.Extent|undefined), - * logo: (string|Object|undefined), + * logo: (string|olx.LogoOptions|undefined), * node: (Node|undefined), * projection: ol.proj.ProjectionLike, * text: (string|undefined), @@ -3213,7 +3221,7 @@ olx.source.KMLOptions.prototype.extent; /** * Logo. - * @type{string|Object|undefined} + * @type{string|olx.LogoOptions|undefined} */ olx.source.KMLOptions.prototype.logo; @@ -3358,7 +3366,7 @@ olx.source.OSMOptions.prototype.url; * defaultStyle: (Array.|undefined), * doc: (Document|undefined), * extent: (ol.Extent|undefined), - * logo: (string|Object|undefined), + * logo: (string|olx.LogoOptions|undefined), * node: (Node|undefined), * projection: ol.proj.ProjectionLike, * reprojectTo: ol.proj.ProjectionLike, @@ -3400,7 +3408,7 @@ olx.source.OSMXMLOptions.prototype.extent; /** * Logo. - * @type{string|Object|undefined} + * @type{string|olx.LogoOptions|undefined} */ olx.source.OSMXMLOptions.prototype.logo; @@ -3451,7 +3459,7 @@ olx.source.OSMXMLOptions.prototype.urls; * @typedef {{attributions: (Array.|undefined), * canvasFunction: ol.CanvasFunctionType, * extent: (ol.Extent|undefined), - * logo: (string|Object|undefined), + * logo: (string|olx.LogoOptions|undefined), * projection: ol.proj.ProjectionLike, * ratio: (number|undefined), * resolutions: (Array.|undefined), @@ -3491,7 +3499,7 @@ olx.source.ImageCanvasOptions.prototype.extent; /** * Logo. - * @type{string|Object|undefined} + * @type{string|olx.LogoOptions|undefined} */ olx.source.ImageCanvasOptions.prototype.logo; @@ -3529,7 +3537,7 @@ olx.source.ImageCanvasOptions.prototype.state; /** * @typedef {{attributions: (Array.|undefined), * extent: (ol.Extent|undefined), - * logo: (string|Object|undefined), + * logo: (string|olx.LogoOptions|undefined), * projection: ol.proj.ProjectionLike, * ratio: (number|undefined), * resolutions: (Array.|undefined), @@ -3556,7 +3564,7 @@ olx.source.ImageVectorOptions.prototype.extent; /** * Logo. - * @type{string|Object|undefined} + * @type{string|olx.LogoOptions|undefined} */ olx.source.ImageVectorOptions.prototype.logo; @@ -3605,7 +3613,7 @@ olx.source.ImageVectorOptions.prototype.style; * extent: (ol.Extent|undefined), * hidpi: (boolean|undefined), * serverType: (ol.source.wms.ServerType|string|undefined), - * logo: (string|Object|undefined), + * logo: (string|olx.LogoOptions|undefined), * params: Object., * projection: ol.proj.ProjectionLike, * ratio: (number|undefined), @@ -3655,7 +3663,7 @@ olx.source.ImageWMSOptions.prototype.serverType; /** * Logo. - * @type{string|Object|undefined} + * @type{string|olx.LogoOptions|undefined} */ olx.source.ImageWMSOptions.prototype.logo; @@ -3758,7 +3766,7 @@ olx.source.StamenOptions.prototype.url; * extent: (ol.Extent|undefined), * imageExtent: (ol.Extent|undefined), * imageSize: (ol.Size|undefined), - * logo: (string|Object|undefined), + * logo: (string|olx.LogoOptions|undefined), * projection: ol.proj.ProjectionLike, * url: string}} * @api @@ -3803,7 +3811,7 @@ olx.source.ImageStaticOptions.prototype.imageSize; /** * Logo. - * @type{string|Object|undefined} + * @type{string|olx.LogoOptions|undefined} */ olx.source.ImageStaticOptions.prototype.logo; @@ -3828,7 +3836,7 @@ olx.source.ImageStaticOptions.prototype.url; * format: ol.format.Feature, * loader: function(this: ol.source.ServerVector, ol.Extent, number, ol.proj.Projection), * strategy: (function(ol.Extent, number): Array.|undefined), - * logo: (string|Object|undefined), + * logo: (string|olx.LogoOptions|undefined), * projection: ol.proj.ProjectionLike}} * @api */ @@ -3873,7 +3881,7 @@ olx.source.ServerVectorOptions.prototype.strategy; /** * Logo. - * @type{string|Object|undefined} + * @type{string|olx.LogoOptions|undefined} */ olx.source.ServerVectorOptions.prototype.logo; @@ -3922,7 +3930,7 @@ olx.source.TileJSONOptions.prototype.url; * extent: (ol.Extent|undefined), * gutter: (number|undefined), * hidpi: (boolean|undefined), - * logo: (string|Object|undefined), + * logo: (string|olx.LogoOptions|undefined), * tileGrid: (ol.tilegrid.TileGrid|undefined), * maxZoom: (number|undefined), * projection: ol.proj.ProjectionLike, @@ -3989,7 +3997,7 @@ olx.source.TileWMSOptions.prototype.hidpi; /** * Logo. - * @type{string|Object|undefined} + * @type{string|olx.LogoOptions|undefined} */ olx.source.TileWMSOptions.prototype.logo; @@ -4053,7 +4061,7 @@ olx.source.TileWMSOptions.prototype.urls; * @typedef {{attributions: (Array.|undefined), * extent: (ol.Extent|undefined), * features: (Array.|undefined), - * logo: (string|Object|undefined), + * logo: (string|olx.LogoOptions|undefined), * projection: ol.proj.ProjectionLike, * state: (ol.source.State|string|undefined)}} * @api @@ -4084,7 +4092,7 @@ olx.source.VectorOptions.prototype.features; /** * Logo. - * @type{string|Object|undefined} + * @type{string|olx.LogoOptions|undefined} */ olx.source.VectorOptions.prototype.logo; @@ -4109,7 +4117,7 @@ olx.source.VectorOptions.prototype.state; * doc: (Document|undefined), * extent: (ol.Extent|undefined), * format: ol.format.Feature, - * logo: (string|Object|undefined), + * logo: (string|olx.LogoOptions|undefined), * node: (Node|undefined), * object: (Object|undefined), * projection: ol.proj.ProjectionLike, @@ -4158,7 +4166,7 @@ olx.source.StaticVectorOptions.prototype.format; /** * Logo. - * @type{string|Object|undefined} + * @type{string|olx.LogoOptions|undefined} */ olx.source.StaticVectorOptions.prototype.logo; @@ -4209,7 +4217,7 @@ olx.source.StaticVectorOptions.prototype.urls; * @typedef {{attributions: (Array.|undefined), * crossOrigin: (string|null|undefined), * extent: (ol.Extent|undefined), - * logo: (string|Object|undefined), + * logo: (string|olx.LogoOptions|undefined), * tileGrid: ol.tilegrid.WMTS, * projection: ol.proj.ProjectionLike, * requestEncoding: (ol.source.WMTSRequestEncoding|undefined), @@ -4252,7 +4260,7 @@ olx.source.WMTSOptions.prototype.extent; /** * Logo. - * @type{string|Object|undefined} + * @type{string|olx.LogoOptions|undefined} */ olx.source.WMTSOptions.prototype.logo; @@ -4362,7 +4370,7 @@ olx.source.WMTSOptions.prototype.urls; * @typedef {{attributions: (Array.|undefined), * crossOrigin: (null|string|undefined), * extent: (ol.Extent|undefined), - * logo: (string|Object|undefined), + * logo: (string|olx.LogoOptions|undefined), * projection: ol.proj.ProjectionLike, * maxZoom: (number|undefined), * minZoom: (number|undefined), @@ -4400,7 +4408,7 @@ olx.source.XYZOptions.prototype.extent; /** * Logo. - * @type{string|Object|undefined} + * @type{string|olx.LogoOptions|undefined} */ olx.source.XYZOptions.prototype.logo; @@ -4475,7 +4483,7 @@ olx.source.XYZOptions.prototype.wrapX; /** * @typedef {{attributions: (Array.|undefined), * crossOrigin: (null|string|undefined), - * logo: (string|Object|undefined), + * logo: (string|olx.LogoOptions|undefined), * url: !string, * tierSizeCalculation: (string|undefined), * size: ol.Size}} @@ -4500,7 +4508,7 @@ olx.source.ZoomifyOptions.prototype.crossOrigin; /** * Logo. - * @type{string|Object|undefined} + * @type{string|olx.LogoOptions|undefined} */ olx.source.ZoomifyOptions.prototype.logo; diff --git a/src/ol/source/imagesource.js b/src/ol/source/imagesource.js index b83ee13814..ed438518d9 100644 --- a/src/ol/source/imagesource.js +++ b/src/ol/source/imagesource.js @@ -11,7 +11,7 @@ goog.require('ol.source.Source'); /** * @typedef {{attributions: (Array.|undefined), * extent: (null|ol.Extent|undefined), - * logo: (string|Object|undefined), + * logo: (string|olx.LogoOptions|undefined), * projection: ol.proj.ProjectionLike, * resolutions: (Array.|undefined), * state: (ol.source.State|string|undefined)}} diff --git a/src/ol/source/source.js b/src/ol/source/source.js index 27c6543bbb..a7633ecd9f 100644 --- a/src/ol/source/source.js +++ b/src/ol/source/source.js @@ -23,7 +23,7 @@ ol.source.State = { /** * @typedef {{attributions: (Array.|undefined), * extent: (ol.Extent|undefined), - * logo: (string|Object|undefined), + * logo: (string|olx.LogoOptions|undefined), * projection: ol.proj.ProjectionLike, * state: (ol.source.State|string|undefined)}} */ @@ -69,7 +69,7 @@ ol.source.Source = function(options) { /** * @private - * @type {string|Object|undefined} + * @type {string|olx.LogoOptions|undefined} */ this.logo_ = options.logo; @@ -115,7 +115,7 @@ ol.source.Source.prototype.getExtent = function() { /** - * @return {string|Object|undefined} Logo. + * @return {string|olx.LogoOptions|undefined} Logo. */ ol.source.Source.prototype.getLogo = function() { return this.logo_; @@ -162,7 +162,7 @@ ol.source.Source.prototype.setExtent = function(extent) { /** - * @param {string|Object|undefined} logo Logo. + * @param {string|olx.LogoOptions|undefined} logo Logo. */ ol.source.Source.prototype.setLogo = function(logo) { this.logo_ = logo; diff --git a/src/ol/source/tilesource.js b/src/ol/source/tilesource.js index fe14524e4b..51b021f3a1 100644 --- a/src/ol/source/tilesource.js +++ b/src/ol/source/tilesource.js @@ -13,7 +13,7 @@ goog.require('ol.tilegrid.TileGrid'); /** * @typedef {{attributions: (Array.|undefined), * extent: (ol.Extent|undefined), - * logo: (string|Object|undefined), + * logo: (string|olx.LogoOptions|undefined), * opaque: (boolean|undefined), * tilePixelRatio: (number|undefined), * projection: ol.proj.ProjectionLike,