@deck.gl/carto 8.7.0-alpha.3 → 8.7.0-beta.1

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.
Files changed (54) hide show
  1. package/dist/dist.dev.js +29663 -10643
  2. package/dist/es5/api/index.js +9 -9
  3. package/dist/es5/api/layer-map.js +98 -72
  4. package/dist/es5/api/layer-map.js.map +1 -1
  5. package/dist/es5/api/maps-api-common.js +13 -9
  6. package/dist/es5/api/maps-api-common.js.map +1 -1
  7. package/dist/es5/api/maps-client.js +157 -98
  8. package/dist/es5/api/maps-client.js.map +1 -1
  9. package/dist/es5/api/maps-v3-client.js +535 -312
  10. package/dist/es5/api/maps-v3-client.js.map +1 -1
  11. package/dist/es5/api/parseMap.js +103 -101
  12. package/dist/es5/api/parseMap.js.map +1 -1
  13. package/dist/es5/basemap.js +1 -1
  14. package/dist/es5/basemap.js.map +1 -1
  15. package/dist/es5/config.js +25 -18
  16. package/dist/es5/config.js.map +1 -1
  17. package/dist/es5/index.js +15 -15
  18. package/dist/es5/layers/carto-dynamic-tile-layer.js +166 -0
  19. package/dist/es5/layers/carto-dynamic-tile-layer.js.map +1 -0
  20. package/dist/es5/layers/carto-layer.js +215 -129
  21. package/dist/es5/layers/carto-layer.js.map +1 -1
  22. package/dist/es5/style/color-bins-style.js +15 -12
  23. package/dist/es5/style/color-bins-style.js.map +1 -1
  24. package/dist/es5/style/color-categories-style.js +43 -16
  25. package/dist/es5/style/color-categories-style.js.map +1 -1
  26. package/dist/es5/style/color-continuous-style.js +15 -12
  27. package/dist/es5/style/color-continuous-style.js.map +1 -1
  28. package/dist/es5/style/palette.js +23 -13
  29. package/dist/es5/style/palette.js.map +1 -1
  30. package/dist/es5/style/utils.js +13 -6
  31. package/dist/es5/style/utils.js.map +1 -1
  32. package/dist/esm/api/layer-map.js +8 -1
  33. package/dist/esm/api/layer-map.js.map +1 -1
  34. package/dist/esm/api/maps-v3-client.js +29 -17
  35. package/dist/esm/api/maps-v3-client.js.map +1 -1
  36. package/dist/esm/api/parseMap.js +31 -26
  37. package/dist/esm/api/parseMap.js.map +1 -1
  38. package/dist/esm/layers/carto-dynamic-tile-layer.js +97 -0
  39. package/dist/esm/layers/carto-dynamic-tile-layer.js.map +1 -0
  40. package/dist/esm/layers/carto-layer.js +8 -1
  41. package/dist/esm/layers/carto-layer.js.map +1 -1
  42. package/dist/esm/style/color-bins-style.js +1 -1
  43. package/dist/esm/style/color-bins-style.js.map +1 -1
  44. package/dist/esm/style/color-continuous-style.js +1 -1
  45. package/dist/esm/style/color-continuous-style.js.map +1 -1
  46. package/dist.min.js +4 -4
  47. package/package.json +8 -7
  48. package/src/api/layer-map.js +13 -1
  49. package/src/api/maps-v3-client.js +35 -18
  50. package/src/api/parseMap.js +23 -19
  51. package/src/layers/carto-dynamic-tile-layer.js +86 -0
  52. package/src/layers/carto-layer.js +10 -4
  53. package/src/style/color-bins-style.js +1 -1
  54. package/src/style/color-continuous-style.js +1 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/api/maps-v3-client.js"],"names":["MAX_GET_LENGTH","request","method","url","format","accessToken","body","response","headers","Accept","Authorization","fetch","error","Error","FORMATS","NDJSON","json","ok","dealWithError","rows","status","getParameters","type","source","geoColumn","columns","schema","parameters","push","sourceName","MAP_TYPES","QUERY","TABLE","join","mapInstantiation","connection","credentials","baseUrl","mapsUrl","length","JSON","stringify","q","client","getUrlFromMetadata","metadata","m","checkFetchLayerDataParameters","localCreds","log","assert","apiVersion","API_VERSIONS","V3","apiBaseUrl","fetchLayerData","mapFormat","_fetchDataUrl","data","result","defaultCredentials","prioritizedFormats","GEOJSON","TILEJSON","f","getData","deprecated","layerData","_fetchMapDataset","dataset","connectionName","cache","parseInt","URLSearchParams","get","fillInMapDatasets","datasets","token","promises","map","Promise","all","fetchMap","cartoMapId","autoRefresh","onNewData","stopAutoRefresh","intervalId","setInterval","changed","some","v","clearInterval"],"mappings":"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","sourcesContent":["/**\n * Maps API Client for Carto 3\n */\nimport {getDefaultCredentials, buildMapsUrlFromBase} from '../config';\nimport {API_VERSIONS, encodeParameter, FORMATS, MAP_TYPES} from './maps-api-common';\nimport {parseMap} from './parseMap';\nimport {log} from '@deck.gl/core';\n\nconst MAX_GET_LENGTH = 2048;\n\n/**\n * Request against Maps API\n */\nasync function request({method, url, format, accessToken, body}) {\n let response;\n\n const headers = {\n Accept: 'application/json'\n };\n\n if (accessToken) {\n headers.Authorization = `Bearer ${accessToken}`;\n }\n\n if (method === 'POST') {\n headers['Content-Type'] = 'application/json';\n }\n\n try {\n /* global fetch */\n /* eslint no-undef: \"error\" */\n response = await fetch(url, {\n method,\n headers,\n body\n });\n } catch (error) {\n throw new Error(`Failed to connect to Maps API: ${error}`);\n }\n\n if (format === FORMATS.NDJSON) {\n return response;\n }\n\n const json = await response.json();\n\n if (!response.ok) {\n dealWithError({response, error: json.error});\n }\n\n return json.rows ? json.rows : json;\n}\n\n/**\n * Display proper message from Maps API error\n */\nfunction dealWithError({response, error}) {\n switch (response.status) {\n case 400:\n throw new Error(`Bad request. ${error}`);\n case 401:\n case 403:\n throw new Error(`Unauthorized access. ${error}`);\n default:\n throw new Error(error);\n }\n}\n\n/**\n * Build a URL with all required parameters\n */\nfunction getParameters({type, source, geoColumn, columns, schema}) {\n const parameters = [encodeParameter('client', 'deck-gl-carto')];\n if (schema) {\n parameters.push(encodeParameter('schema', true));\n }\n\n const sourceName = type === MAP_TYPES.QUERY ? 'q' : 'name';\n parameters.push(encodeParameter(sourceName, source));\n\n if (type === MAP_TYPES.TABLE) {\n if (geoColumn) {\n parameters.push(encodeParameter('geo_column', geoColumn));\n }\n if (columns) {\n parameters.push(encodeParameter('columns', columns.join(',')));\n }\n }\n\n return parameters.join('&');\n}\n\nexport async function mapInstantiation({\n type,\n source,\n connection,\n credentials,\n geoColumn,\n columns,\n schema\n}) {\n const baseUrl = `${credentials.mapsUrl}/${connection}/${type}`;\n const url = `${baseUrl}?${getParameters({type, source, geoColumn, columns, schema})}`;\n const {accessToken} = credentials;\n\n const format = 'json';\n\n if (url.length > MAX_GET_LENGTH && type === MAP_TYPES.QUERY) {\n // need to be a POST request\n const body = JSON.stringify({\n q: source,\n client: 'deck-gl-carto'\n });\n return await request({method: 'POST', url: baseUrl, format, accessToken, body});\n }\n\n return await request({url, format, accessToken});\n}\n\nfunction getUrlFromMetadata(metadata, format) {\n const m = metadata[format];\n\n if (m && !m.error && m.url) {\n return m.url[0];\n }\n\n return null;\n}\n\nfunction checkFetchLayerDataParameters({type, source, connection, localCreds}) {\n log.assert(connection, 'Must define connection');\n log.assert(type, 'Must define a type');\n log.assert(source, 'Must define a source');\n\n log.assert(localCreds.apiVersion === API_VERSIONS.V3, 'Method only available for v3');\n log.assert(localCreds.apiBaseUrl, 'Must define apiBaseUrl');\n log.assert(localCreds.accessToken, 'Must define an accessToken');\n}\n\nexport async function fetchLayerData({\n type,\n source,\n connection,\n credentials,\n geoColumn,\n columns,\n format,\n schema\n}) {\n // Internally we split data fetching into two parts to allow us to\n // conditionally fetch the actual data, depending on the metadata state\n const {url, accessToken, mapFormat, metadata} = await _fetchDataUrl({\n type,\n source,\n connection,\n credentials,\n geoColumn,\n columns,\n format,\n schema\n });\n\n const data = await request({url, format: mapFormat, accessToken});\n const result = {data, format: mapFormat};\n if (schema) {\n result.schema = metadata.schema;\n }\n\n return result;\n}\n\nasync function _fetchDataUrl({\n type,\n source,\n connection,\n credentials,\n geoColumn,\n columns,\n format,\n schema\n}) {\n const defaultCredentials = getDefaultCredentials();\n // Only pick up default credentials if they have been defined for\n // correct API version\n const localCreds = {\n ...(defaultCredentials.apiVersion === API_VERSIONS.V3 && defaultCredentials),\n ...credentials\n };\n checkFetchLayerDataParameters({type, source, connection, localCreds});\n\n if (!localCreds.mapsUrl) {\n localCreds.mapsUrl = buildMapsUrlFromBase(localCreds.apiBaseUrl);\n }\n\n const metadata = await mapInstantiation({\n type,\n source,\n connection,\n credentials: localCreds,\n geoColumn,\n columns,\n schema\n });\n let url;\n let mapFormat;\n\n if (format) {\n mapFormat = format;\n url = getUrlFromMetadata(metadata, format);\n log.assert(url, `Format ${format} not available`);\n } else {\n // guess map format\n const prioritizedFormats = [FORMATS.GEOJSON, FORMATS.JSON, FORMATS.NDJSON, FORMATS.TILEJSON];\n for (const f of prioritizedFormats) {\n url = getUrlFromMetadata(metadata, f);\n if (url) {\n mapFormat = f;\n break;\n }\n }\n }\n\n const {accessToken} = localCreds;\n return {url, accessToken, mapFormat, metadata};\n}\n\nexport async function getData({type, source, connection, credentials, geoColumn, columns, format}) {\n log.deprecated('getData', 'fetchLayerData')();\n const layerData = await fetchLayerData({\n type,\n source,\n connection,\n credentials,\n geoColumn,\n columns,\n format,\n schema: false\n });\n return layerData.data;\n}\n\n/* global clearInterval, setInterval, URLSearchParams */\nasync function _fetchMapDataset(dataset, accessToken, credentials) {\n // First fetch metadata\n const {connectionName: connection, source, type} = dataset;\n const {url, mapFormat} = await _fetchDataUrl({\n credentials: {...credentials, accessToken},\n connection,\n source,\n type\n });\n\n // Extract the last time the data changed\n const cache = parseInt(new URLSearchParams(url).get('cache'), 10);\n if (cache && dataset.cache === cache) {\n return false;\n }\n dataset.cache = cache;\n\n // Only fetch if the data has changed\n const data = await request({url, format: mapFormat, accessToken});\n dataset.data = data;\n return true;\n}\n\nasync function fillInMapDatasets({datasets, token}, credentials) {\n const promises = datasets.map(dataset => _fetchMapDataset(dataset, token, credentials));\n return await Promise.all(promises);\n}\n\nexport async function fetchMap({cartoMapId, credentials, autoRefresh, onNewData}) {\n const defaultCredentials = getDefaultCredentials();\n const localCreds = {\n ...(defaultCredentials.apiVersion === API_VERSIONS.V3 && defaultCredentials),\n ...credentials\n };\n\n log.assert(cartoMapId, `Must define CARTO map id: fetchMap({cartoMapId: 'XXXX-XXXX-XXXX'})`);\n\n log.assert(localCreds.apiVersion === API_VERSIONS.V3, 'Method only available for v3');\n log.assert(localCreds.apiBaseUrl, 'Must define apiBaseUrl');\n if (!localCreds.mapsUrl) {\n localCreds.mapsUrl = buildMapsUrlFromBase(localCreds.apiBaseUrl);\n }\n\n if (autoRefresh || onNewData) {\n log.assert(onNewData, 'Must define `onNewData` when using autoRefresh');\n log.assert(typeof onNewData === 'function', '`onNewData` must be a function');\n log.assert(autoRefresh > 0, '`autoRefresh` must be a positive number');\n }\n\n const url = `${localCreds.mapsUrl}/public/${cartoMapId}`;\n const map = await request({url});\n\n // Periodically check if the data has changed. Note that this\n // will not update when a map is published.\n let stopAutoRefresh;\n if (autoRefresh) {\n const intervalId = setInterval(async () => {\n const changed = await fillInMapDatasets(map, credentials);\n if (changed.some(v => v === true)) {\n onNewData(parseMap(map));\n }\n }, autoRefresh * 1000);\n stopAutoRefresh = () => {\n clearInterval(intervalId);\n };\n }\n\n // Mutates map.datasets so that dataset.data contains data\n await fillInMapDatasets(map, credentials);\n return {\n ...parseMap(map),\n ...{stopAutoRefresh}\n };\n}\n"],"file":"maps-v3-client.js"}
1
+ {"version":3,"sources":["../../../src/api/maps-v3-client.js"],"names":["MAX_GET_LENGTH","DEFAULT_CLIENT","request","method","url","format","accessToken","body","headers","Accept","Authorization","fetch","response","Error","FORMATS","NDJSON","json","ok","dealWithError","error","rows","status","getParameters","type","source","geoColumn","columns","schema","clientId","parameters","push","sourceName","MAP_TYPES","QUERY","TABLE","join","mapInstantiation","connection","credentials","baseUrl","mapsUrl","length","JSON","stringify","q","client","getUrlFromMetadata","metadata","m","checkFetchLayerDataParameters","localCreds","log","assert","apiVersion","API_VERSIONS","V3","apiBaseUrl","fetchLayerData","_fetchDataUrl","mapFormat","data","result","defaultCredentials","prioritizedFormats","GEOJSON","TILEJSON","f","getData","deprecated","layerData","_fetchMapDataset","dataset","connectionName","cache","parseInt","URLSearchParams","get","fillInMapDatasets","datasets","token","promises","map","Promise","all","fetchMap","cartoMapId","autoRefresh","onNewData","intervalId","setInterval","changed","some","v","stopAutoRefresh","clearInterval"],"mappings":"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","sourcesContent":["/**\n * Maps API Client for Carto 3\n */\nimport {getDefaultCredentials, buildMapsUrlFromBase} from '../config';\nimport {API_VERSIONS, encodeParameter, FORMATS, MAP_TYPES} from './maps-api-common';\nimport {parseMap} from './parseMap';\nimport {log} from '@deck.gl/core';\n\nconst MAX_GET_LENGTH = 2048;\nconst DEFAULT_CLIENT = 'deck-gl-carto';\n\n/**\n * Request against Maps API\n */\nasync function request({method, url, format, accessToken, body}) {\n let response;\n\n const headers = {\n Accept: 'application/json'\n };\n\n if (accessToken) {\n headers.Authorization = `Bearer ${accessToken}`;\n }\n\n if (method === 'POST') {\n headers['Content-Type'] = 'application/json';\n }\n\n try {\n /* global fetch */\n /* eslint no-undef: \"error\" */\n response = await fetch(url, {\n method,\n headers,\n body\n });\n } catch (error) {\n throw new Error(`Failed to connect to Maps API: ${error}`);\n }\n\n if (format === FORMATS.NDJSON) {\n return response;\n }\n\n const json = await response.json();\n\n if (!response.ok) {\n dealWithError({response, error: json.error});\n }\n\n return json.rows ? json.rows : json;\n}\n\n/**\n * Display proper message from Maps API error\n */\nfunction dealWithError({response, error}) {\n switch (response.status) {\n case 400:\n throw new Error(`Bad request. ${error}`);\n case 401:\n case 403:\n throw new Error(`Unauthorized access. ${error}`);\n default:\n throw new Error(error);\n }\n}\n\n/**\n * Build a URL with all required parameters\n */\nfunction getParameters({type, source, geoColumn, columns, schema, clientId}) {\n const parameters = [encodeParameter('client', clientId || DEFAULT_CLIENT)];\n if (schema) {\n parameters.push(encodeParameter('schema', true));\n }\n\n const sourceName = type === MAP_TYPES.QUERY ? 'q' : 'name';\n parameters.push(encodeParameter(sourceName, source));\n\n if (type === MAP_TYPES.TABLE) {\n if (geoColumn) {\n parameters.push(encodeParameter('geo_column', geoColumn));\n }\n if (columns) {\n parameters.push(encodeParameter('columns', columns.join(',')));\n }\n }\n\n return parameters.join('&');\n}\n\nexport async function mapInstantiation({\n type,\n source,\n connection,\n credentials,\n geoColumn,\n columns,\n schema,\n clientId\n}) {\n const baseUrl = `${credentials.mapsUrl}/${connection}/${type}`;\n const url = `${baseUrl}?${getParameters({type, source, geoColumn, columns, schema, clientId})}`;\n const {accessToken} = credentials;\n\n const format = 'json';\n\n if (url.length > MAX_GET_LENGTH && type === MAP_TYPES.QUERY) {\n // need to be a POST request\n const body = JSON.stringify({\n q: source,\n client: clientId || DEFAULT_CLIENT\n });\n return await request({method: 'POST', url: baseUrl, format, accessToken, body});\n }\n\n return await request({url, format, accessToken});\n}\n\nfunction getUrlFromMetadata(metadata, format) {\n const m = metadata[format];\n\n if (m && !m.error && m.url) {\n return m.url[0];\n }\n\n return null;\n}\n\nfunction checkFetchLayerDataParameters({type, source, connection, localCreds}) {\n log.assert(connection, 'Must define connection');\n log.assert(type, 'Must define a type');\n log.assert(source, 'Must define a source');\n\n log.assert(localCreds.apiVersion === API_VERSIONS.V3, 'Method only available for v3');\n log.assert(localCreds.apiBaseUrl, 'Must define apiBaseUrl');\n log.assert(localCreds.accessToken, 'Must define an accessToken');\n}\n\nexport async function fetchLayerData({\n type,\n source,\n connection,\n credentials,\n geoColumn,\n columns,\n format,\n schema,\n clientId\n}) {\n // Internally we split data fetching into two parts to allow us to\n // conditionally fetch the actual data, depending on the metadata state\n const {url, accessToken, mapFormat, metadata} = await _fetchDataUrl({\n type,\n source,\n connection,\n credentials,\n geoColumn,\n columns,\n format,\n schema,\n clientId\n });\n\n const data = await request({url, format: mapFormat, accessToken});\n const result = {data, format: mapFormat};\n if (schema) {\n result.schema = metadata.schema;\n }\n\n return result;\n}\n\nasync function _fetchDataUrl({\n type,\n source,\n connection,\n credentials,\n geoColumn,\n columns,\n format,\n schema,\n clientId\n}) {\n const defaultCredentials = getDefaultCredentials();\n // Only pick up default credentials if they have been defined for\n // correct API version\n const localCreds = {\n ...(defaultCredentials.apiVersion === API_VERSIONS.V3 && defaultCredentials),\n ...credentials\n };\n checkFetchLayerDataParameters({type, source, connection, localCreds});\n\n if (!localCreds.mapsUrl) {\n localCreds.mapsUrl = buildMapsUrlFromBase(localCreds.apiBaseUrl);\n }\n\n const metadata = await mapInstantiation({\n type,\n source,\n connection,\n credentials: localCreds,\n geoColumn,\n columns,\n schema,\n clientId\n });\n let url;\n let mapFormat;\n\n if (format) {\n mapFormat = format;\n url = getUrlFromMetadata(metadata, format);\n log.assert(url, `Format ${format} not available`);\n } else {\n // guess map format\n const prioritizedFormats = [FORMATS.GEOJSON, FORMATS.JSON, FORMATS.NDJSON, FORMATS.TILEJSON];\n for (const f of prioritizedFormats) {\n url = getUrlFromMetadata(metadata, f);\n if (url) {\n mapFormat = f;\n break;\n }\n }\n }\n\n const {accessToken} = localCreds;\n return {url, accessToken, mapFormat, metadata};\n}\n\nexport async function getData({\n type,\n source,\n connection,\n credentials,\n geoColumn,\n columns,\n format,\n clientId\n}) {\n log.deprecated('getData', 'fetchLayerData')();\n const layerData = await fetchLayerData({\n type,\n source,\n connection,\n credentials,\n geoColumn,\n columns,\n format,\n schema: false,\n clientId\n });\n return layerData.data;\n}\n\n/* global clearInterval, setInterval, URLSearchParams */\nasync function _fetchMapDataset(dataset, accessToken, credentials, clientId) {\n // First fetch metadata\n const {connectionName: connection, source, type} = dataset;\n const {url, mapFormat} = await _fetchDataUrl({\n credentials: {...credentials, accessToken},\n connection,\n source,\n type,\n clientId\n });\n\n // Extract the last time the data changed\n const cache = parseInt(new URLSearchParams(url).get('cache'), 10);\n if (cache && dataset.cache === cache) {\n return false;\n }\n dataset.cache = cache;\n\n // Only fetch if the data has changed\n const data = await request({url, format: mapFormat, accessToken});\n dataset.data = data;\n return true;\n}\n\nasync function fillInMapDatasets({datasets, token}, clientId, credentials) {\n const promises = datasets.map(dataset => _fetchMapDataset(dataset, token, credentials, clientId));\n return await Promise.all(promises);\n}\n\nexport async function fetchMap({cartoMapId, clientId, credentials, autoRefresh, onNewData}) {\n const defaultCredentials = getDefaultCredentials();\n const localCreds = {\n ...(defaultCredentials.apiVersion === API_VERSIONS.V3 && defaultCredentials),\n ...credentials\n };\n\n log.assert(cartoMapId, `Must define CARTO map id: fetchMap({cartoMapId: 'XXXX-XXXX-XXXX'})`);\n\n log.assert(localCreds.apiVersion === API_VERSIONS.V3, 'Method only available for v3');\n log.assert(localCreds.apiBaseUrl, 'Must define apiBaseUrl');\n if (!localCreds.mapsUrl) {\n localCreds.mapsUrl = buildMapsUrlFromBase(localCreds.apiBaseUrl);\n }\n\n if (autoRefresh || onNewData) {\n log.assert(onNewData, 'Must define `onNewData` when using autoRefresh');\n log.assert(typeof onNewData === 'function', '`onNewData` must be a function');\n log.assert(autoRefresh > 0, '`autoRefresh` must be a positive number');\n }\n\n const url = `${localCreds.mapsUrl}/public/${cartoMapId}`;\n const map = await request({url});\n\n // Periodically check if the data has changed. Note that this\n // will not update when a map is published.\n let stopAutoRefresh;\n if (autoRefresh) {\n const intervalId = setInterval(async () => {\n const changed = await fillInMapDatasets(map, clientId, credentials);\n if (changed.some(v => v === true)) {\n onNewData(parseMap(map));\n }\n }, autoRefresh * 1000);\n stopAutoRefresh = () => {\n clearInterval(intervalId);\n };\n }\n\n // Mutates map.datasets so that dataset.data contains data\n await fillInMapDatasets(map, clientId, credentials);\n return {\n ...parseMap(map),\n ...{stopAutoRefresh}\n };\n}\n"],"file":"maps-v3-client.js"}
@@ -1,31 +1,44 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
6
8
  exports.parseMap = parseMap;
7
9
 
10
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
11
+
12
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
+
14
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
15
+
16
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
17
+
8
18
  var _layerMap = require("./layer-map");
9
19
 
10
20
  var _core = require("@deck.gl/core");
11
21
 
22
+ var _excluded = ["id", "config"],
23
+ _excluded2 = ["textLabel"];
24
+
25
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
26
+
27
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
28
+
12
29
  function parseMap(json) {
13
- const {
14
- keplerMapConfig,
15
- datasets
16
- } = json;
30
+ var keplerMapConfig = json.keplerMapConfig,
31
+ datasets = json.datasets;
17
32
 
18
33
  _core.log.assert(keplerMapConfig.version === 'v1', 'Only support Kepler v1');
19
34
 
20
- const {
21
- mapState,
22
- mapStyle
23
- } = keplerMapConfig.config;
24
- const {
25
- layers,
26
- layerBlending,
27
- interactionConfig
28
- } = keplerMapConfig.config.visState;
35
+ var _keplerMapConfig$conf = keplerMapConfig.config,
36
+ mapState = _keplerMapConfig$conf.mapState,
37
+ mapStyle = _keplerMapConfig$conf.mapStyle;
38
+ var _keplerMapConfig$conf2 = keplerMapConfig.config.visState,
39
+ layers = _keplerMapConfig$conf2.layers,
40
+ layerBlending = _keplerMapConfig$conf2.layerBlending,
41
+ interactionConfig = _keplerMapConfig$conf2.interactionConfig;
29
42
  return {
30
43
  id: json.id,
31
44
  title: json.title,
@@ -33,74 +46,69 @@ function parseMap(json) {
33
46
  createdAt: json.createdAt,
34
47
  updatedAt: json.updatedAt,
35
48
  initialViewState: mapState,
36
- mapStyle,
37
- layers: extractTextLayers(layers.reverse()).map(({
38
- id,
39
- type,
40
- config,
41
- visualChannels
42
- }) => {
43
- _core.log.assert(type in _layerMap.LAYER_MAP, "Unsupported layer type: ".concat(type));
44
-
45
- const {
46
- Layer,
47
- propMap,
48
- defaultProps
49
- } = _layerMap.LAYER_MAP[type];
50
- const {
51
- dataId
52
- } = config;
53
- const dataset = datasets.find(d => d.id === dataId);
54
-
55
- _core.log.assert(dataset, "No dataset matching dataId: ".concat(dataId));
56
-
57
- const {
58
- data
59
- } = dataset;
60
-
61
- _core.log.assert(data, "No data loaded for dataId: ".concat(dataId));
62
-
63
- return new Layer({
64
- id,
65
- data,
66
- ...defaultProps,
67
- ...createBlendingProps(layerBlending),
68
- ...(!config.textLabel && createInteractionProps(interactionConfig)),
69
- ...createStyleProps(config, propMap),
70
- ...createChannelProps(visualChannels, type, config, data)
71
- });
49
+ mapStyle: mapStyle,
50
+ layers: extractTextLayers(layers.reverse()).map(function (_ref) {
51
+ var id = _ref.id,
52
+ type = _ref.type,
53
+ config = _ref.config,
54
+ visualChannels = _ref.visualChannels;
55
+
56
+ try {
57
+ _core.log.assert(type in _layerMap.LAYER_MAP, "Unsupported layer type: ".concat(type));
58
+
59
+ var _LAYER_MAP$type = _layerMap.LAYER_MAP[type],
60
+ Layer = _LAYER_MAP$type.Layer,
61
+ propMap = _LAYER_MAP$type.propMap,
62
+ defaultProps = _LAYER_MAP$type.defaultProps;
63
+ var dataId = config.dataId;
64
+ var dataset = datasets.find(function (d) {
65
+ return d.id === dataId;
66
+ });
67
+
68
+ _core.log.assert(dataset, "No dataset matching dataId: ".concat(dataId));
69
+
70
+ var data = dataset.data;
71
+
72
+ _core.log.assert(data, "No data loaded for dataId: ".concat(dataId));
73
+
74
+ return new Layer(_objectSpread(_objectSpread(_objectSpread(_objectSpread(_objectSpread({
75
+ id: id,
76
+ data: data
77
+ }, defaultProps), createBlendingProps(layerBlending)), !config.textLabel && createInteractionProps(interactionConfig)), createStyleProps(config, propMap)), createChannelProps(visualChannels, type, config, data)));
78
+ } catch (e) {
79
+ _core.log.error(e.message)();
80
+
81
+ return undefined;
82
+ }
72
83
  })
73
84
  };
74
85
  }
75
86
 
76
87
  function extractTextLayers(layers) {
77
- return (0, _core._flatten)(layers.map(({
78
- id,
79
- config,
80
- ...rest
81
- }) => {
82
- const {
83
- textLabel,
84
- ...configRest
85
- } = config;
86
- return [{
87
- id,
88
- config: configRest,
89
- ...rest
90
- }, ...textLabel.filter(t => t.field).map(t => {
91
- return {
88
+ return (0, _core._flatten)(layers.map(function (_ref2) {
89
+ var id = _ref2.id,
90
+ config = _ref2.config,
91
+ rest = (0, _objectWithoutProperties2.default)(_ref2, _excluded);
92
+ var textLabel = config.textLabel,
93
+ configRest = (0, _objectWithoutProperties2.default)(config, _excluded2);
94
+ return [_objectSpread({
95
+ id: id,
96
+ config: configRest
97
+ }, rest)].concat((0, _toConsumableArray2.default)(textLabel.filter(function (t) {
98
+ return t.field;
99
+ }).map(function (t) {
100
+ return _objectSpread({
92
101
  id: "".concat(id, "-label-").concat(t.field.name),
93
- config: {
94
- textLabel: t,
95
- ...configRest,
102
+ config: _objectSpread(_objectSpread({
103
+ textLabel: t
104
+ }, configRest), {}, {
96
105
  label: "".concat(config.label, "-label-").concat(t.field.name),
97
- visConfig: { ...configRest.visConfig,
106
+ visConfig: _objectSpread(_objectSpread({}, configRest.visConfig), {}, {
98
107
  opacity: 1
99
- }
100
- },
101
- ...rest
102
- };
103
- })];
108
+ })
109
+ })
110
+ }, rest);
111
+ })));
104
112
  }));
105
113
  }
106
114
 
@@ -125,17 +133,17 @@ function createBlendingProps(layerBlending) {
125
133
  }
126
134
 
127
135
  function createInteractionProps(interactionConfig) {
128
- const pickable = interactionConfig && interactionConfig.tooltip.enabled;
136
+ var pickable = interactionConfig && interactionConfig.tooltip.enabled;
129
137
  return {
130
138
  autoHighlight: pickable,
131
- pickable
139
+ pickable: pickable
132
140
  };
133
141
  }
134
142
 
135
143
  function mapProps(source, target, mapping) {
136
- for (const sourceKey in mapping) {
137
- const sourceValue = source[sourceKey];
138
- const targetKey = mapping[sourceKey];
144
+ for (var sourceKey in mapping) {
145
+ var sourceValue = source[sourceKey];
146
+ var targetKey = mapping[sourceKey];
139
147
 
140
148
  if (sourceValue === undefined) {
141
149
  continue;
@@ -143,52 +151,46 @@ function mapProps(source, target, mapping) {
143
151
 
144
152
  if (typeof targetKey === 'string') {
145
153
  target[targetKey] = sourceValue;
146
- } else if (typeof targetKey === 'object') {
154
+ } else if ((0, _typeof2.default)(targetKey) === 'object') {
147
155
  mapProps(sourceValue, target, targetKey);
148
156
  }
149
157
  }
150
158
  }
151
159
 
152
160
  function createStyleProps(config, mapping) {
153
- const result = {};
161
+ var result = {};
154
162
  mapProps(config, result, mapping);
155
163
  result.highlightColor = config.visConfig.enable3d ? [255, 255, 255, 60] : [252, 242, 26, 255];
156
164
  return result;
157
165
  }
158
166
 
159
167
  function createChannelProps(visualChannels, type, config, data) {
160
- const {
161
- colorField,
162
- colorScale,
163
- sizeField,
164
- sizeScale,
165
- strokeColorField,
166
- strokeColorScale
167
- } = visualChannels;
168
- let {
169
- heightField,
170
- heightScale
171
- } = visualChannels;
168
+ var colorField = visualChannels.colorField,
169
+ colorScale = visualChannels.colorScale,
170
+ sizeField = visualChannels.sizeField,
171
+ sizeScale = visualChannels.sizeScale,
172
+ strokeColorField = visualChannels.strokeColorField,
173
+ strokeColorScale = visualChannels.strokeColorScale;
174
+ var heightField = visualChannels.heightField,
175
+ heightScale = visualChannels.heightScale;
172
176
 
173
177
  if (type === 'hexagonId') {
174
178
  heightField = sizeField;
175
179
  heightScale = sizeScale;
176
180
  }
177
181
 
178
- const {
179
- textLabel,
180
- visConfig
181
- } = config;
182
- const result = {};
183
- const textLabelField = textLabel && textLabel.field;
182
+ var textLabel = config.textLabel,
183
+ visConfig = config.visConfig;
184
+ var result = {};
185
+ var textLabelField = textLabel && textLabel.field;
184
186
 
185
187
  if (colorField) {
186
188
  result.getFillColor = (0, _layerMap.getColorAccessor)(colorField, colorScale, visConfig.colorRange, 1, data);
187
189
  }
188
190
 
189
191
  if (strokeColorField) {
190
- const opacity = visConfig.strokeOpacity !== undefined ? visConfig.strokeOpacity / visConfig.opacity : 1;
191
- result.getLineColor = (0, _layerMap.getColorAccessor)(strokeColorField, strokeColorScale, visConfig.colorRange, opacity, data);
192
+ var opacity = visConfig.strokeOpacity !== undefined ? visConfig.strokeOpacity : 1;
193
+ result.getLineColor = (0, _layerMap.getColorAccessor)(strokeColorField, strokeColorScale, visConfig.strokeColorRange, opacity, data);
192
194
  }
193
195
 
194
196
  if (heightField) {
@@ -202,7 +204,7 @@ function createChannelProps(visualChannels, type, config, data) {
202
204
  if (textLabelField) {
203
205
  result.getText = (0, _layerMap.getTextAccessor)(textLabelField, data);
204
206
  result.pointType = 'text';
205
- const radius = result.getPointRadius || visConfig.radius;
207
+ var radius = result.getPointRadius || visConfig.radius;
206
208
  result.getTextPixelOffset = (0, _layerMap.getTextPixelOffsetAccessor)(textLabel, radius);
207
209
  }
208
210
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/api/parseMap.js"],"names":["parseMap","json","keplerMapConfig","datasets","log","assert","version","mapState","mapStyle","config","layers","layerBlending","interactionConfig","visState","id","title","description","createdAt","updatedAt","initialViewState","extractTextLayers","reverse","map","type","visualChannels","LAYER_MAP","Layer","propMap","defaultProps","dataId","dataset","find","d","data","createBlendingProps","textLabel","createInteractionProps","createStyleProps","createChannelProps","rest","configRest","filter","t","field","name","label","visConfig","opacity","parameters","blendFunc","blendEquation","pickable","tooltip","enabled","autoHighlight","mapProps","source","target","mapping","sourceKey","sourceValue","targetKey","undefined","result","highlightColor","enable3d","colorField","colorScale","sizeField","sizeScale","strokeColorField","strokeColorScale","heightField","heightScale","textLabelField","getFillColor","colorRange","strokeOpacity","getLineColor","getElevation","heightRange","sizeRange","getPointRadius","radiusRange","getText","pointType","radius","getTextPixelOffset"],"mappings":"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","sourcesContent":["import GL from '@luma.gl/constants';\nimport {\n LAYER_MAP,\n getColorAccessor,\n getSizeAccessor,\n getTextAccessor,\n getTextPixelOffsetAccessor\n} from './layer-map';\nimport {_flatten as flatten, log} from '@deck.gl/core';\n\nexport function parseMap(json) {\n const {keplerMapConfig, datasets} = json;\n log.assert(keplerMapConfig.version === 'v1', 'Only support Kepler v1');\n const {mapState, mapStyle} = keplerMapConfig.config;\n const {layers, layerBlending, interactionConfig} = keplerMapConfig.config.visState;\n\n return {\n id: json.id,\n title: json.title,\n description: json.description,\n createdAt: json.createdAt,\n updatedAt: json.updatedAt,\n initialViewState: mapState,\n mapStyle,\n layers: extractTextLayers(layers.reverse()).map(({id, type, config, visualChannels}) => {\n log.assert(type in LAYER_MAP, `Unsupported layer type: ${type}`);\n const {Layer, propMap, defaultProps} = LAYER_MAP[type];\n\n const {dataId} = config;\n const dataset = datasets.find(d => d.id === dataId);\n log.assert(dataset, `No dataset matching dataId: ${dataId}`);\n const {data} = dataset;\n log.assert(data, `No data loaded for dataId: ${dataId}`);\n return new Layer({\n id,\n data,\n ...defaultProps,\n ...createBlendingProps(layerBlending),\n ...(!config.textLabel && createInteractionProps(interactionConfig)),\n ...createStyleProps(config, propMap),\n ...createChannelProps(visualChannels, type, config, data) // Must come after style\n });\n })\n };\n}\n\nfunction extractTextLayers(layers) {\n return flatten(\n layers.map(({id, config, ...rest}) => {\n const {textLabel, ...configRest} = config;\n return [\n // Original layer without textLabel\n {id, config: configRest, ...rest},\n\n // One layer per valid text label, with full opacity\n ...textLabel\n .filter(t => t.field)\n .map(t => {\n return {\n id: `${id}-label-${t.field.name}`,\n config: {\n textLabel: t,\n ...configRest,\n label: `${config.label}-label-${t.field.name}`,\n visConfig: {...configRest.visConfig, opacity: 1}\n },\n ...rest\n };\n })\n ];\n })\n );\n}\n\nfunction createBlendingProps(layerBlending) {\n if (layerBlending === 'additive') {\n return {\n parameters: {\n blendFunc: [GL.SRC_ALPHA, GL.DST_ALPHA],\n blendEquation: GL.FUNC_ADD\n }\n };\n } else if (layerBlending === 'subtractive') {\n return {\n parameters: {\n blendFunc: [GL.ONE, GL.ONE_MINUS_DST_COLOR, GL.SRC_ALPHA, GL.DST_ALPHA],\n blendEquation: [GL.FUNC_SUBTRACT, GL.FUNC_ADD]\n }\n };\n }\n\n return {};\n}\n\nfunction createInteractionProps(interactionConfig) {\n const pickable = interactionConfig && interactionConfig.tooltip.enabled;\n return {\n autoHighlight: pickable,\n pickable\n };\n}\n\nfunction mapProps(source, target, mapping) {\n for (const sourceKey in mapping) {\n const sourceValue = source[sourceKey];\n const targetKey = mapping[sourceKey];\n if (sourceValue === undefined) {\n // eslint-disable-next-line no-continue\n continue;\n }\n if (typeof targetKey === 'string') {\n target[targetKey] = sourceValue;\n } else if (typeof targetKey === 'object') {\n // Nested definition, recurse down one level\n mapProps(sourceValue, target, targetKey);\n }\n }\n}\n\nfunction createStyleProps(config, mapping) {\n const result = {};\n mapProps(config, result, mapping);\n result.highlightColor = config.visConfig.enable3d ? [255, 255, 255, 60] : [252, 242, 26, 255];\n return result;\n}\n\n/* eslint-disable complexity */\nfunction createChannelProps(visualChannels, type, config, data) {\n const {colorField, colorScale, sizeField, sizeScale, strokeColorField, strokeColorScale} =\n visualChannels;\n let {heightField, heightScale} = visualChannels;\n if (type === 'hexagonId') {\n heightField = sizeField;\n heightScale = sizeScale;\n }\n const {textLabel, visConfig} = config;\n const result = {};\n const textLabelField = textLabel && textLabel.field;\n if (colorField) {\n result.getFillColor = getColorAccessor(\n colorField,\n colorScale,\n visConfig.colorRange,\n 1, // Rely on layer opacity\n data\n );\n }\n if (strokeColorField) {\n const opacity =\n visConfig.strokeOpacity !== undefined ? visConfig.strokeOpacity / visConfig.opacity : 1;\n result.getLineColor = getColorAccessor(\n strokeColorField,\n strokeColorScale,\n visConfig.colorRange,\n opacity,\n data\n );\n }\n if (heightField) {\n result.getElevation = getSizeAccessor(\n heightField,\n heightScale,\n visConfig.heightRange || visConfig.sizeRange,\n data\n );\n }\n if (sizeField) {\n result.getPointRadius = getSizeAccessor(\n sizeField,\n sizeScale,\n visConfig.radiusRange || visConfig.sizeRange,\n data\n );\n }\n if (textLabelField) {\n result.getText = getTextAccessor(textLabelField, data);\n result.pointType = 'text';\n const radius = result.getPointRadius || visConfig.radius;\n result.getTextPixelOffset = getTextPixelOffsetAccessor(textLabel, radius);\n }\n\n return result;\n}\n"],"file":"parseMap.js"}
1
+ {"version":3,"sources":["../../../src/api/parseMap.js"],"names":["parseMap","json","keplerMapConfig","datasets","log","assert","version","config","mapState","mapStyle","visState","layers","layerBlending","interactionConfig","id","title","description","createdAt","updatedAt","initialViewState","extractTextLayers","reverse","map","type","visualChannels","LAYER_MAP","Layer","propMap","defaultProps","dataId","dataset","find","d","data","createBlendingProps","textLabel","createInteractionProps","createStyleProps","createChannelProps","e","error","message","undefined","rest","configRest","filter","t","field","name","label","visConfig","opacity","parameters","blendFunc","blendEquation","pickable","tooltip","enabled","autoHighlight","mapProps","source","target","mapping","sourceKey","sourceValue","targetKey","result","highlightColor","enable3d","colorField","colorScale","sizeField","sizeScale","strokeColorField","strokeColorScale","heightField","heightScale","textLabelField","getFillColor","colorRange","strokeOpacity","getLineColor","strokeColorRange","getElevation","heightRange","sizeRange","getPointRadius","radiusRange","getText","pointType","radius","getTextPixelOffset"],"mappings":"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","sourcesContent":["import GL from '@luma.gl/constants';\nimport {\n LAYER_MAP,\n getColorAccessor,\n getSizeAccessor,\n getTextAccessor,\n getTextPixelOffsetAccessor\n} from './layer-map';\nimport {_flatten as flatten, log} from '@deck.gl/core';\n\nexport function parseMap(json) {\n const {keplerMapConfig, datasets} = json;\n log.assert(keplerMapConfig.version === 'v1', 'Only support Kepler v1');\n const {mapState, mapStyle} = keplerMapConfig.config;\n const {layers, layerBlending, interactionConfig} = keplerMapConfig.config.visState;\n\n return {\n id: json.id,\n title: json.title,\n description: json.description,\n createdAt: json.createdAt,\n updatedAt: json.updatedAt,\n initialViewState: mapState,\n mapStyle,\n layers: extractTextLayers(layers.reverse()).map(({id, type, config, visualChannels}) => {\n try {\n log.assert(type in LAYER_MAP, `Unsupported layer type: ${type}`);\n const {Layer, propMap, defaultProps} = LAYER_MAP[type];\n\n const {dataId} = config;\n const dataset = datasets.find(d => d.id === dataId);\n log.assert(dataset, `No dataset matching dataId: ${dataId}`);\n const {data} = dataset;\n log.assert(data, `No data loaded for dataId: ${dataId}`);\n return new Layer({\n id,\n data,\n ...defaultProps,\n ...createBlendingProps(layerBlending),\n ...(!config.textLabel && createInteractionProps(interactionConfig)),\n ...createStyleProps(config, propMap),\n ...createChannelProps(visualChannels, type, config, data) // Must come after style\n });\n } catch (e) {\n log.error(e.message)();\n return undefined;\n }\n })\n };\n}\n\nfunction extractTextLayers(layers) {\n return flatten(\n layers.map(({id, config, ...rest}) => {\n const {textLabel, ...configRest} = config;\n return [\n // Original layer without textLabel\n {id, config: configRest, ...rest},\n\n // One layer per valid text label, with full opacity\n ...textLabel\n .filter(t => t.field)\n .map(t => {\n return {\n id: `${id}-label-${t.field.name}`,\n config: {\n textLabel: t,\n ...configRest,\n label: `${config.label}-label-${t.field.name}`,\n visConfig: {...configRest.visConfig, opacity: 1}\n },\n ...rest\n };\n })\n ];\n })\n );\n}\n\nfunction createBlendingProps(layerBlending) {\n if (layerBlending === 'additive') {\n return {\n parameters: {\n blendFunc: [GL.SRC_ALPHA, GL.DST_ALPHA],\n blendEquation: GL.FUNC_ADD\n }\n };\n } else if (layerBlending === 'subtractive') {\n return {\n parameters: {\n blendFunc: [GL.ONE, GL.ONE_MINUS_DST_COLOR, GL.SRC_ALPHA, GL.DST_ALPHA],\n blendEquation: [GL.FUNC_SUBTRACT, GL.FUNC_ADD]\n }\n };\n }\n\n return {};\n}\n\nfunction createInteractionProps(interactionConfig) {\n const pickable = interactionConfig && interactionConfig.tooltip.enabled;\n return {\n autoHighlight: pickable,\n pickable\n };\n}\n\nfunction mapProps(source, target, mapping) {\n for (const sourceKey in mapping) {\n const sourceValue = source[sourceKey];\n const targetKey = mapping[sourceKey];\n if (sourceValue === undefined) {\n // eslint-disable-next-line no-continue\n continue;\n }\n if (typeof targetKey === 'string') {\n target[targetKey] = sourceValue;\n } else if (typeof targetKey === 'object') {\n // Nested definition, recurse down one level\n mapProps(sourceValue, target, targetKey);\n }\n }\n}\n\nfunction createStyleProps(config, mapping) {\n const result = {};\n mapProps(config, result, mapping);\n result.highlightColor = config.visConfig.enable3d ? [255, 255, 255, 60] : [252, 242, 26, 255];\n return result;\n}\n\n/* eslint-disable complexity */\nfunction createChannelProps(visualChannels, type, config, data) {\n const {colorField, colorScale, sizeField, sizeScale, strokeColorField, strokeColorScale} =\n visualChannels;\n let {heightField, heightScale} = visualChannels;\n if (type === 'hexagonId') {\n heightField = sizeField;\n heightScale = sizeScale;\n }\n const {textLabel, visConfig} = config;\n const result = {};\n const textLabelField = textLabel && textLabel.field;\n if (colorField) {\n result.getFillColor = getColorAccessor(\n colorField,\n colorScale,\n visConfig.colorRange,\n 1, // Rely on layer opacity\n data\n );\n }\n if (strokeColorField) {\n const opacity = visConfig.strokeOpacity !== undefined ? visConfig.strokeOpacity : 1;\n result.getLineColor = getColorAccessor(\n strokeColorField,\n strokeColorScale,\n visConfig.strokeColorRange,\n opacity,\n data\n );\n }\n if (heightField) {\n result.getElevation = getSizeAccessor(\n heightField,\n heightScale,\n visConfig.heightRange || visConfig.sizeRange,\n data\n );\n }\n if (sizeField) {\n result.getPointRadius = getSizeAccessor(\n sizeField,\n sizeScale,\n visConfig.radiusRange || visConfig.sizeRange,\n data\n );\n }\n if (textLabelField) {\n result.getText = getTextAccessor(textLabelField, data);\n result.pointType = 'text';\n const radius = result.getPointRadius || visConfig.radius;\n result.getTextPixelOffset = getTextPixelOffsetAccessor(textLabel, radius);\n }\n\n return result;\n}\n"],"file":"parseMap.js"}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
- const base_url = 'https://basemaps.cartocdn.com/gl/{basemap}-gl-style/style.json';
7
+ var base_url = 'https://basemaps.cartocdn.com/gl/{basemap}-gl-style/style.json';
8
8
  var _default = {
9
9
  VOYAGER: base_url.replace('{basemap}', 'voyager'),
10
10
  POSITRON: base_url.replace('{basemap}', 'positron'),
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/basemap.js"],"names":["base_url","VOYAGER","replace","POSITRON","DARK_MATTER","VOYAGER_NOLABELS","POSITRON_NOLABELS","DARK_MATTER_NOLABELS"],"mappings":";;;;;;AAAA,MAAMA,QAAQ,GAAG,gEAAjB;eAEe;AACbC,EAAAA,OAAO,EAAED,QAAQ,CAACE,OAAT,CAAiB,WAAjB,EAA8B,SAA9B,CADI;AAEbC,EAAAA,QAAQ,EAAEH,QAAQ,CAACE,OAAT,CAAiB,WAAjB,EAA8B,UAA9B,CAFG;AAGbE,EAAAA,WAAW,EAAEJ,QAAQ,CAACE,OAAT,CAAiB,WAAjB,EAA8B,aAA9B,CAHA;AAIbG,EAAAA,gBAAgB,EAAEL,QAAQ,CAACE,OAAT,CAAiB,WAAjB,EAA8B,kBAA9B,CAJL;AAKbI,EAAAA,iBAAiB,EAAEN,QAAQ,CAACE,OAAT,CAAiB,WAAjB,EAA8B,mBAA9B,CALN;AAMbK,EAAAA,oBAAoB,EAAEP,QAAQ,CAACE,OAAT,CAAiB,WAAjB,EAA8B,sBAA9B;AANT,C","sourcesContent":["const base_url = 'https://basemaps.cartocdn.com/gl/{basemap}-gl-style/style.json';\n\nexport default {\n VOYAGER: base_url.replace('{basemap}', 'voyager'),\n POSITRON: base_url.replace('{basemap}', 'positron'),\n DARK_MATTER: base_url.replace('{basemap}', 'dark-matter'),\n VOYAGER_NOLABELS: base_url.replace('{basemap}', 'voyager-nolabels'),\n POSITRON_NOLABELS: base_url.replace('{basemap}', 'positron-nolabels'),\n DARK_MATTER_NOLABELS: base_url.replace('{basemap}', 'dark-matter-nolabels')\n};\n"],"file":"basemap.js"}
1
+ {"version":3,"sources":["../../src/basemap.js"],"names":["base_url","VOYAGER","replace","POSITRON","DARK_MATTER","VOYAGER_NOLABELS","POSITRON_NOLABELS","DARK_MATTER_NOLABELS"],"mappings":";;;;;;AAAA,IAAMA,QAAQ,GAAG,gEAAjB;eAEe;AACbC,EAAAA,OAAO,EAAED,QAAQ,CAACE,OAAT,CAAiB,WAAjB,EAA8B,SAA9B,CADI;AAEbC,EAAAA,QAAQ,EAAEH,QAAQ,CAACE,OAAT,CAAiB,WAAjB,EAA8B,UAA9B,CAFG;AAGbE,EAAAA,WAAW,EAAEJ,QAAQ,CAACE,OAAT,CAAiB,WAAjB,EAA8B,aAA9B,CAHA;AAIbG,EAAAA,gBAAgB,EAAEL,QAAQ,CAACE,OAAT,CAAiB,WAAjB,EAA8B,kBAA9B,CAJL;AAKbI,EAAAA,iBAAiB,EAAEN,QAAQ,CAACE,OAAT,CAAiB,WAAjB,EAA8B,mBAA9B,CALN;AAMbK,EAAAA,oBAAoB,EAAEP,QAAQ,CAACE,OAAT,CAAiB,WAAjB,EAA8B,sBAA9B;AANT,C","sourcesContent":["const base_url = 'https://basemaps.cartocdn.com/gl/{basemap}-gl-style/style.json';\n\nexport default {\n VOYAGER: base_url.replace('{basemap}', 'voyager'),\n POSITRON: base_url.replace('{basemap}', 'positron'),\n DARK_MATTER: base_url.replace('{basemap}', 'dark-matter'),\n VOYAGER_NOLABELS: base_url.replace('{basemap}', 'voyager-nolabels'),\n POSITRON_NOLABELS: base_url.replace('{basemap}', 'positron-nolabels'),\n DARK_MATTER_NOLABELS: base_url.replace('{basemap}', 'dark-matter-nolabels')\n};\n"],"file":"basemap.js"}
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  Object.defineProperty(exports, "__esModule", {
4
6
  value: true
5
7
  });
@@ -8,43 +10,48 @@ exports.getDefaultCredentials = getDefaultCredentials;
8
10
  exports.buildMapsUrlFromBase = buildMapsUrlFromBase;
9
11
  exports.defaultCloudNativeCredentials = exports.defaultClassicCredentials = void 0;
10
12
 
13
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
14
+
15
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
16
+
11
17
  var _mapsApiCommon = require("./api/maps-api-common");
12
18
 
13
- const defaultClassicCredentials = {
19
+ var _excluded = ["apiVersion"];
20
+
21
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
22
+
23
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
24
+
25
+ var defaultClassicCredentials = {
14
26
  apiKey: 'default_public',
15
27
  region: 'us',
16
28
  username: 'public'
17
29
  };
18
30
  exports.defaultClassicCredentials = defaultClassicCredentials;
19
- const defaultCloudNativeCredentials = {
31
+ var defaultCloudNativeCredentials = {
20
32
  apiBaseUrl: 'https://gcp-us-east1.api.carto.com'
21
33
  };
22
34
  exports.defaultCloudNativeCredentials = defaultCloudNativeCredentials;
23
- let credentials = {};
35
+ var credentials = {};
24
36
  setDefaultCredentials({});
25
37
 
26
- function setDefaultCredentials({
27
- apiVersion,
28
- ...rest
29
- }) {
38
+ function setDefaultCredentials(_ref) {
39
+ var apiVersion = _ref.apiVersion,
40
+ rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
30
41
  apiVersion = apiVersion || _mapsApiCommon.API_VERSIONS.V3;
31
42
 
32
43
  switch (apiVersion) {
33
44
  case _mapsApiCommon.API_VERSIONS.V1:
34
45
  case _mapsApiCommon.API_VERSIONS.V2:
35
- credentials = {
36
- apiVersion,
37
- ...defaultClassicCredentials,
38
- ...rest
39
- };
46
+ credentials = _objectSpread(_objectSpread({
47
+ apiVersion: apiVersion
48
+ }, defaultClassicCredentials), rest);
40
49
  break;
41
50
 
42
51
  case _mapsApiCommon.API_VERSIONS.V3:
43
- credentials = {
44
- apiVersion,
45
- ...defaultCloudNativeCredentials,
46
- ...rest
47
- };
52
+ credentials = _objectSpread(_objectSpread({
53
+ apiVersion: apiVersion
54
+ }, defaultCloudNativeCredentials), rest);
48
55
  break;
49
56
 
50
57
  default:
@@ -57,7 +64,7 @@ function getDefaultCredentials() {
57
64
  }
58
65
 
59
66
  function buildMapsUrlFromBase(apiBaseUrl) {
60
- let suffix = '/v3/maps';
67
+ var suffix = '/v3/maps';
61
68
 
62
69
  if (apiBaseUrl.endsWith('/')) {
63
70
  suffix = suffix.substring(1);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/config.js"],"names":["defaultClassicCredentials","apiKey","region","username","defaultCloudNativeCredentials","apiBaseUrl","credentials","setDefaultCredentials","apiVersion","rest","API_VERSIONS","V3","V1","V2","Error","getDefaultCredentials","buildMapsUrlFromBase","suffix","endsWith","substring"],"mappings":";;;;;;;;;;AAAA;;AAEO,MAAMA,yBAAyB,GAAG;AACvCC,EAAAA,MAAM,EAAE,gBAD+B;AAEvCC,EAAAA,MAAM,EAAE,IAF+B;AAGvCC,EAAAA,QAAQ,EAAE;AAH6B,CAAlC;;AAMA,MAAMC,6BAA6B,GAAG;AAC3CC,EAAAA,UAAU,EAAE;AAD+B,CAAtC;;AAIP,IAAIC,WAAW,GAAG,EAAlB;AAEAC,qBAAqB,CAAC,EAAD,CAArB;;AAEO,SAASA,qBAAT,CAA+B;AAACC,EAAAA,UAAD;AAAa,KAAGC;AAAhB,CAA/B,EAAsD;AAC3DD,EAAAA,UAAU,GAAGA,UAAU,IAAIE,4BAAaC,EAAxC;;AAEA,UAAQH,UAAR;AACE,SAAKE,4BAAaE,EAAlB;AACA,SAAKF,4BAAaG,EAAlB;AACEP,MAAAA,WAAW,GAAG;AAACE,QAAAA,UAAD;AAAa,WAAGR,yBAAhB;AAA2C,WAAGS;AAA9C,OAAd;AACA;;AACF,SAAKC,4BAAaC,EAAlB;AACEL,MAAAA,WAAW,GAAG;AAACE,QAAAA,UAAD;AAAa,WAAGJ,6BAAhB;AAA+C,WAAGK;AAAlD,OAAd;AACA;;AACF;AACE,YAAM,IAAIK,KAAJ,+BAAiCN,UAAjC,8BAAN;AATJ;AAWD;;AAEM,SAASO,qBAAT,GAAiC;AACtC,SAAOT,WAAP;AACD;;AAEM,SAASU,oBAAT,CAA8BX,UAA9B,EAA0C;AAC/C,MAAIY,MAAM,GAAG,UAAb;;AACA,MAAIZ,UAAU,CAACa,QAAX,CAAoB,GAApB,CAAJ,EAA8B;AAC5BD,IAAAA,MAAM,GAAGA,MAAM,CAACE,SAAP,CAAiB,CAAjB,CAAT;AACD;;AAED,mBAAUd,UAAV,SAAuBY,MAAvB;AACD","sourcesContent":["import {API_VERSIONS} from './api/maps-api-common';\n\nexport const defaultClassicCredentials = {\n apiKey: 'default_public',\n region: 'us',\n username: 'public'\n};\n\nexport const defaultCloudNativeCredentials = {\n apiBaseUrl: 'https://gcp-us-east1.api.carto.com'\n};\n\nlet credentials = {};\n\nsetDefaultCredentials({});\n\nexport function setDefaultCredentials({apiVersion, ...rest}) {\n apiVersion = apiVersion || API_VERSIONS.V3;\n\n switch (apiVersion) {\n case API_VERSIONS.V1:\n case API_VERSIONS.V2:\n credentials = {apiVersion, ...defaultClassicCredentials, ...rest};\n break;\n case API_VERSIONS.V3:\n credentials = {apiVersion, ...defaultCloudNativeCredentials, ...rest};\n break;\n default:\n throw new Error(`Invalid API version ${apiVersion}. Use API_VERSIONS enum.`);\n }\n}\n\nexport function getDefaultCredentials() {\n return credentials;\n}\n\nexport function buildMapsUrlFromBase(apiBaseUrl) {\n let suffix = '/v3/maps';\n if (apiBaseUrl.endsWith('/')) {\n suffix = suffix.substring(1);\n }\n\n return `${apiBaseUrl}${suffix}`;\n}\n"],"file":"config.js"}
1
+ {"version":3,"sources":["../../src/config.js"],"names":["defaultClassicCredentials","apiKey","region","username","defaultCloudNativeCredentials","apiBaseUrl","credentials","setDefaultCredentials","apiVersion","rest","API_VERSIONS","V3","V1","V2","Error","getDefaultCredentials","buildMapsUrlFromBase","suffix","endsWith","substring"],"mappings":";;;;;;;;;;;;;;;;AAAA;;;;;;;;AAEO,IAAMA,yBAAyB,GAAG;AACvCC,EAAAA,MAAM,EAAE,gBAD+B;AAEvCC,EAAAA,MAAM,EAAE,IAF+B;AAGvCC,EAAAA,QAAQ,EAAE;AAH6B,CAAlC;;AAMA,IAAMC,6BAA6B,GAAG;AAC3CC,EAAAA,UAAU,EAAE;AAD+B,CAAtC;;AAIP,IAAIC,WAAW,GAAG,EAAlB;AAEAC,qBAAqB,CAAC,EAAD,CAArB;;AAEO,SAASA,qBAAT,OAAsD;AAAA,MAAtBC,UAAsB,QAAtBA,UAAsB;AAAA,MAAPC,IAAO;AAC3DD,EAAAA,UAAU,GAAGA,UAAU,IAAIE,4BAAaC,EAAxC;;AAEA,UAAQH,UAAR;AACE,SAAKE,4BAAaE,EAAlB;AACA,SAAKF,4BAAaG,EAAlB;AACEP,MAAAA,WAAW;AAAIE,QAAAA,UAAU,EAAVA;AAAJ,SAAmBR,yBAAnB,GAAiDS,IAAjD,CAAX;AACA;;AACF,SAAKC,4BAAaC,EAAlB;AACEL,MAAAA,WAAW;AAAIE,QAAAA,UAAU,EAAVA;AAAJ,SAAmBJ,6BAAnB,GAAqDK,IAArD,CAAX;AACA;;AACF;AACE,YAAM,IAAIK,KAAJ,+BAAiCN,UAAjC,8BAAN;AATJ;AAWD;;AAEM,SAASO,qBAAT,GAAiC;AACtC,SAAOT,WAAP;AACD;;AAEM,SAASU,oBAAT,CAA8BX,UAA9B,EAA0C;AAC/C,MAAIY,MAAM,GAAG,UAAb;;AACA,MAAIZ,UAAU,CAACa,QAAX,CAAoB,GAApB,CAAJ,EAA8B;AAC5BD,IAAAA,MAAM,GAAGA,MAAM,CAACE,SAAP,CAAiB,CAAjB,CAAT;AACD;;AAED,mBAAUd,UAAV,SAAuBY,MAAvB;AACD","sourcesContent":["import {API_VERSIONS} from './api/maps-api-common';\n\nexport const defaultClassicCredentials = {\n apiKey: 'default_public',\n region: 'us',\n username: 'public'\n};\n\nexport const defaultCloudNativeCredentials = {\n apiBaseUrl: 'https://gcp-us-east1.api.carto.com'\n};\n\nlet credentials = {};\n\nsetDefaultCredentials({});\n\nexport function setDefaultCredentials({apiVersion, ...rest}) {\n apiVersion = apiVersion || API_VERSIONS.V3;\n\n switch (apiVersion) {\n case API_VERSIONS.V1:\n case API_VERSIONS.V2:\n credentials = {apiVersion, ...defaultClassicCredentials, ...rest};\n break;\n case API_VERSIONS.V3:\n credentials = {apiVersion, ...defaultCloudNativeCredentials, ...rest};\n break;\n default:\n throw new Error(`Invalid API version ${apiVersion}. Use API_VERSIONS enum.`);\n }\n}\n\nexport function getDefaultCredentials() {\n return credentials;\n}\n\nexport function buildMapsUrlFromBase(apiBaseUrl) {\n let suffix = '/v3/maps';\n if (apiBaseUrl.endsWith('/')) {\n suffix = suffix.substring(1);\n }\n\n return `${apiBaseUrl}${suffix}`;\n}\n"],"file":"config.js"}