kepler.gl 3.1.0-alpha.6 → 3.1.0

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 (190) hide show
  1. package/dist/src/actions/src/action-types.d.ts +2 -0
  2. package/dist/src/actions/src/ui-state-actions.d.ts +16 -0
  3. package/dist/src/ai-assistant/src/actions.d.ts +1 -1
  4. package/dist/src/ai-assistant/src/components/ai-assistant-component.d.ts +2 -1
  5. package/dist/src/ai-assistant/src/constants.d.ts +3 -3
  6. package/dist/src/ai-assistant/src/reducers/index.d.ts +1 -1
  7. package/dist/src/ai-assistant/src/tools/basemap-functions.d.ts +1 -1
  8. package/dist/src/ai-assistant/src/tools/filter-function.d.ts +1 -1
  9. package/dist/src/ai-assistant/src/tools/layer-creation-function.d.ts +1 -1
  10. package/dist/src/ai-assistant/src/tools/layer-style-function.d.ts +1 -1
  11. package/dist/src/ai-assistant/src/tools/loadurl-function.d.ts +1 -1
  12. package/dist/src/ai-assistant/src/tools/utils.d.ts +73 -0
  13. package/dist/src/components/src/common/data-table/index.d.ts +1 -1
  14. package/dist/src/components/src/common/data-table/option-dropdown.d.ts +3 -3
  15. package/dist/src/components/src/common/file-uploader/file-drop.d.ts +2 -2
  16. package/dist/src/components/src/kepler-gl.d.ts +5 -0
  17. package/dist/src/components/src/loading-indicator.d.ts +13 -0
  18. package/dist/src/components/src/map-container.d.ts +3 -0
  19. package/dist/src/constants/src/default-settings.d.ts +1 -0
  20. package/dist/src/duckdb/src/plugin.d.ts +1 -0
  21. package/dist/src/duckdb/src/table/duckdb-table-utils.d.ts +13 -0
  22. package/dist/src/duckdb/src/table/duckdb-table.d.ts +7 -2
  23. package/dist/src/reducers/src/ui-state-updaters.d.ts +10 -0
  24. package/dist/src/reducers/src/vis-state-updaters.d.ts +1 -0
  25. package/dist/src/reducers/src/vis-state.d.ts +4 -0
  26. package/dist/src/utils/src/application-config.d.ts +2 -0
  27. package/dist/src/utils/src/observe-dimensions.d.ts +2 -1
  28. package/package.json +5 -3
  29. package/src/actions/dist/action-types.d.ts +2 -0
  30. package/src/actions/dist/action-types.js +2 -1
  31. package/src/actions/dist/ui-state-actions.d.ts +16 -0
  32. package/src/actions/dist/ui-state-actions.js +17 -2
  33. package/src/actions/package.json +8 -8
  34. package/src/actions/src/action-types.ts +1 -0
  35. package/src/actions/src/ui-state-actions.ts +22 -0
  36. package/src/ai-assistant/README.md +76 -0
  37. package/src/ai-assistant/dist/actions.d.ts +1 -1
  38. package/src/ai-assistant/dist/actions.js +2 -2
  39. package/src/ai-assistant/dist/components/ai-assistant-component.d.ts +2 -1
  40. package/src/ai-assistant/dist/components/ai-assistant-component.js +64 -23
  41. package/src/ai-assistant/dist/components/ai-assistant-config.js +67 -54
  42. package/src/ai-assistant/dist/constants.d.ts +3 -3
  43. package/src/ai-assistant/dist/constants.js +4 -4
  44. package/src/ai-assistant/dist/reducers/index.d.ts +1 -1
  45. package/src/ai-assistant/dist/reducers/index.js +2 -2
  46. package/src/ai-assistant/dist/tools/basemap-functions.d.ts +1 -1
  47. package/src/ai-assistant/dist/tools/basemap-functions.js +1 -1
  48. package/src/ai-assistant/dist/tools/filter-function.d.ts +1 -1
  49. package/src/ai-assistant/dist/tools/filter-function.js +9 -6
  50. package/src/ai-assistant/dist/tools/layer-creation-function.d.ts +1 -1
  51. package/src/ai-assistant/dist/tools/layer-creation-function.js +1 -1
  52. package/src/ai-assistant/dist/tools/layer-style-function.d.ts +1 -1
  53. package/src/ai-assistant/dist/tools/layer-style-function.js +1 -1
  54. package/src/ai-assistant/dist/tools/loadurl-function.d.ts +1 -1
  55. package/src/ai-assistant/dist/tools/loadurl-function.js +1 -1
  56. package/src/ai-assistant/dist/tools/utils.d.ts +73 -0
  57. package/src/ai-assistant/dist/tools/utils.js +211 -3
  58. package/src/ai-assistant/package.json +13 -9
  59. package/src/ai-assistant/src/actions.ts +2 -2
  60. package/src/ai-assistant/src/components/ai-assistant-component.tsx +56 -23
  61. package/src/ai-assistant/src/components/ai-assistant-config.tsx +63 -46
  62. package/src/ai-assistant/src/config/models.json +32 -0
  63. package/src/ai-assistant/src/constants.ts +7 -2
  64. package/src/ai-assistant/src/reducers/index.ts +2 -2
  65. package/src/ai-assistant/src/tools/basemap-functions.tsx +1 -1
  66. package/src/ai-assistant/src/tools/filter-function.tsx +11 -7
  67. package/src/ai-assistant/src/tools/layer-creation-function.tsx +1 -1
  68. package/src/ai-assistant/src/tools/layer-style-function.tsx +1 -1
  69. package/src/ai-assistant/src/tools/loadurl-function.tsx +1 -1
  70. package/src/ai-assistant/src/tools/utils.ts +212 -2
  71. package/src/cloud-providers/package.json +2 -2
  72. package/src/common-utils/package.json +3 -3
  73. package/src/components/dist/common/data-table/header-cell.js +10 -10
  74. package/src/components/dist/common/data-table/index.d.ts +1 -1
  75. package/src/components/dist/common/data-table/index.js +1 -1
  76. package/src/components/dist/common/data-table/option-dropdown.d.ts +3 -3
  77. package/src/components/dist/common/data-table/option-dropdown.js +5 -5
  78. package/src/components/dist/common/file-uploader/file-drop.d.ts +2 -2
  79. package/src/components/dist/common/file-uploader/file-drop.js +1 -1
  80. package/src/components/dist/common/portaled.js +1 -1
  81. package/src/components/dist/editor/editor.js +1 -1
  82. package/src/components/dist/kepler-gl.d.ts +5 -0
  83. package/src/components/dist/kepler-gl.js +7 -2
  84. package/src/components/dist/loading-indicator.d.ts +13 -0
  85. package/src/components/dist/loading-indicator.js +40 -0
  86. package/src/components/dist/map-container.d.ts +3 -0
  87. package/src/components/dist/map-container.js +11 -3
  88. package/src/components/dist/modals/save-map-modal.js +4 -3
  89. package/src/components/package.json +15 -15
  90. package/src/components/src/common/data-table/header-cell.tsx +5 -3
  91. package/src/components/src/common/data-table/index.tsx +1 -1
  92. package/src/components/src/common/data-table/option-dropdown.tsx +7 -7
  93. package/src/components/src/common/file-uploader/file-drop.tsx +11 -11
  94. package/src/components/src/common/portaled.tsx +12 -12
  95. package/src/components/src/editor/editor.tsx +3 -3
  96. package/src/components/src/kepler-gl.tsx +7 -2
  97. package/src/components/src/loading-indicator.tsx +49 -0
  98. package/src/components/src/map-container.tsx +19 -1
  99. package/src/components/src/modals/save-map-modal.tsx +6 -2
  100. package/src/constants/dist/default-settings.d.ts +1 -0
  101. package/src/constants/dist/default-settings.js +13 -9
  102. package/src/constants/dist/keyevent.js +1 -1
  103. package/src/constants/node_modules/.cache/terser-webpack-plugin/content-v2/sha512/72/80/7a7c561d7985e92aab7b9683e7baf5a0286b353a8f2609c4c71099f668d012be027929e4bbac937f9aa0c9a61be3bd4405136f582895f05aa0313c8efa42 +1 -0
  104. package/src/constants/node_modules/.cache/terser-webpack-plugin/content-v2/sha512/8f/f6/b66955867599392dc69ff1db64419e83c087a82c2e3d4b6418d49ac6bc80e3200dd6c86cdfd4a2cf98ce573f71a5281b86ba3df8a7210e02544f63054191 +1 -0
  105. package/src/constants/node_modules/.cache/terser-webpack-plugin/index-v5/bd/ba/47ea8fcb11ecd5cd47ad867052e58b1f7e0c8dc5f8918a36fe90eaf45981 +2 -0
  106. package/src/constants/node_modules/.cache/terser-webpack-plugin/index-v5/f0/6e/aadf3c48345aa72e7b2fb92e8c9788d04986b55caf83daa3fbd749c37c44 +2 -0
  107. package/src/constants/package.json +2 -2
  108. package/src/constants/src/default-settings.ts +11 -5
  109. package/src/constants/src/keyevent.ts +2 -2
  110. package/src/constants/umd/keplergl.min.js +1 -1
  111. package/src/deckgl-arrow-layers/package.json +1 -1
  112. package/src/deckgl-layers/package.json +4 -4
  113. package/src/duckdb/dist/components/preview-data-panel.js +2 -11
  114. package/src/duckdb/dist/components/sql-panel.js +7 -3
  115. package/src/duckdb/dist/components/tree.js +5 -4
  116. package/src/duckdb/dist/plugin.d.ts +1 -0
  117. package/src/duckdb/dist/plugin.js +9 -2
  118. package/src/duckdb/dist/processors/data-processor.js +4 -5
  119. package/src/duckdb/dist/table/duckdb-table-utils.d.ts +13 -0
  120. package/src/duckdb/dist/table/duckdb-table-utils.js +110 -0
  121. package/src/duckdb/dist/table/duckdb-table.d.ts +7 -2
  122. package/src/duckdb/dist/table/duckdb-table.js +189 -44
  123. package/src/duckdb/package.json +6 -6
  124. package/src/duckdb/src/components/preview-data-panel.tsx +0 -5
  125. package/src/duckdb/src/components/sql-panel.tsx +4 -2
  126. package/src/duckdb/src/components/tree.tsx +5 -1
  127. package/src/duckdb/src/plugin.ts +8 -1
  128. package/src/duckdb/src/processors/data-processor.ts +3 -4
  129. package/src/duckdb/src/table/duckdb-table-utils.ts +106 -0
  130. package/src/duckdb/src/table/duckdb-table.ts +134 -33
  131. package/src/effects/package.json +5 -5
  132. package/src/layers/dist/icon-layer/icon-layer.js +1 -1
  133. package/src/layers/dist/index.d.ts +3 -0
  134. package/src/layers/dist/index.js +6 -7
  135. package/src/layers/dist/point-layer/point-layer.d.ts +1 -1
  136. package/src/layers/dist/point-layer/point-layer.js +8 -2
  137. package/src/layers/package.json +9 -9
  138. package/src/layers/src/icon-layer/icon-layer.ts +8 -10
  139. package/src/layers/src/index.ts +5 -5
  140. package/src/layers/src/point-layer/point-layer.ts +6 -1
  141. package/src/localization/package.json +1 -1
  142. package/src/processors/dist/data-processor.js +2 -4
  143. package/src/processors/package.json +7 -7
  144. package/src/processors/src/data-processor.ts +1 -3
  145. package/src/reducers/dist/ui-state-updaters.d.ts +10 -0
  146. package/src/reducers/dist/ui-state-updaters.js +22 -2
  147. package/src/reducers/dist/ui-state.js +2 -2
  148. package/src/reducers/dist/vis-state-updaters.d.ts +1 -0
  149. package/src/reducers/dist/vis-state-updaters.js +21 -5
  150. package/src/reducers/dist/vis-state.d.ts +4 -0
  151. package/src/reducers/package.json +16 -16
  152. package/src/reducers/src/ui-state-updaters.ts +24 -0
  153. package/src/reducers/src/ui-state.ts +3 -1
  154. package/src/reducers/src/vis-state-updaters.ts +24 -5
  155. package/src/schemas/dist/dataset-schema.js +38 -2
  156. package/src/schemas/package.json +8 -7
  157. package/src/schemas/src/dataset-schema.ts +43 -1
  158. package/src/styles/node_modules/.cache/terser-webpack-plugin/content-v2/sha512/5f/aa/96c67b383dbcd2b95625113a5389c6078fd8a53e6fc73a054229709f2dac1e0a409e7117049485a569fbebf8434a319451842671398904bfe1a7f7b5991c +1 -0
  159. package/src/styles/node_modules/.cache/terser-webpack-plugin/content-v2/sha512/af/aa/228fbff58007b23eea5eb6cc7d2da1f0af1d8a7024129a416ea88b4df0ad7afc7aec93b09f3dd42a98f1d6a6f4dce6b53204818da85ef5becc42f928a64d +1 -0
  160. package/src/styles/node_modules/.cache/terser-webpack-plugin/index-v5/40/72/cac221d8459e6b743bc62ecdb370ed854b21ec30d3f7f4c06c7d1d7ffde2 +2 -0
  161. package/src/styles/node_modules/.cache/terser-webpack-plugin/index-v5/c1/39/f7cd1d5947ec6e5d82bfa07041271344eb02f9e67bf5823acf2f22c2d01f +2 -0
  162. package/src/styles/package.json +2 -2
  163. package/src/styles/umd/keplergl.min.js +1 -1
  164. package/src/table/dist/dataset-utils.js +10 -4
  165. package/src/table/package.json +5 -5
  166. package/src/table/src/dataset-utils.ts +7 -1
  167. package/src/tasks/package.json +2 -2
  168. package/src/types/package.json +1 -1
  169. package/src/types/reducers.d.ts +2 -0
  170. package/src/utils/dist/application-config.d.ts +2 -0
  171. package/src/utils/dist/application-config.js +4 -2
  172. package/src/utils/dist/data-utils.js +14 -2
  173. package/src/utils/dist/dataset-utils.js +5 -3
  174. package/src/utils/dist/dom-to-image.js +1 -1
  175. package/src/utils/dist/dom-utils.js +1 -1
  176. package/src/utils/dist/map-style-utils/mapbox-gl-style-editor.js +7 -1
  177. package/src/utils/dist/observe-dimensions.d.ts +2 -1
  178. package/src/utils/dist/observe-dimensions.js +10 -4
  179. package/src/utils/dist/utils.js +1 -1
  180. package/src/utils/package.json +4 -4
  181. package/src/utils/src/application-config.ts +9 -1
  182. package/src/utils/src/data-utils.ts +13 -1
  183. package/src/utils/src/dataset-utils.ts +1 -1
  184. package/src/utils/src/dom-to-image.ts +5 -6
  185. package/src/utils/src/dom-utils.ts +15 -15
  186. package/src/utils/src/map-style-utils/mapbox-gl-style-editor.ts +6 -0
  187. package/src/utils/src/observe-dimensions.ts +9 -4
  188. package/src/utils/src/utils.ts +8 -8
  189. package/umd/keplergl.min.css +1 -1
  190. package/umd/keplergl.min.js +1499 -1428
@@ -138,6 +138,7 @@ export declare const ActionTypes: {
138
138
  SYNC_TIME_FILTER_WITH_LAYER_TIMELINE: string;
139
139
  SYNC_TIME_FILTER_TIMELINE_MODE: string;
140
140
  TOGGLE_PANEL_LIST_VIEW: string;
141
+ SET_LOADING_INDICATOR: string;
141
142
  SET_EXPORT_IMAGE_SETTING: string;
142
143
  START_EXPORTING_IMAGE: string;
143
144
  SET_EXPORT_IMAGE_DATA_URI: string;
@@ -273,6 +274,7 @@ declare const _default: {
273
274
  SYNC_TIME_FILTER_WITH_LAYER_TIMELINE: "@@kepler.gl/SYNC_TIME_FILTER_WITH_LAYER_TIMELINE";
274
275
  SYNC_TIME_FILTER_TIMELINE_MODE: "@@kepler.gl/SYNC_TIME_FILTER_TIMELINE_MODE";
275
276
  TOGGLE_PANEL_LIST_VIEW: "@@kepler.gl/TOGGLE_PANEL_LIST_VIEW";
277
+ SET_LOADING_INDICATOR: "@@kepler.gl/SET_LOADING_INDICATOR";
276
278
  SET_EXPORT_IMAGE_SETTING: "@@kepler.gl/SET_EXPORT_IMAGE_SETTING";
277
279
  START_EXPORTING_IMAGE: "@@kepler.gl/START_EXPORTING_IMAGE";
278
280
  SET_EXPORT_IMAGE_DATA_URI: "@@kepler.gl/SET_EXPORT_IMAGE_DATA_URI";
@@ -334,3 +334,19 @@ export declare type TogglePanelListViewAction = {
334
334
  export declare const togglePanelListView: (payload: TogglePanelListViewAction['payload']) => Merge<TogglePanelListViewAction, {
335
335
  type: typeof ActionTypes.TOGGLE_PANEL_LIST_VIEW;
336
336
  }>;
337
+ /** SET_LOADING_INDICATOR */
338
+ export declare type SetLoadingIndicatorAction = {
339
+ payload: {
340
+ change: number;
341
+ };
342
+ };
343
+ /**
344
+ * Change of number of active loading actions.
345
+ * @memberof uiStateActions
346
+ * @param payload
347
+ * @param payload.change Change of number of active loading actions.
348
+ * @public
349
+ */
350
+ export declare const setLoadingIndicator: (payload: SetLoadingIndicatorAction['payload']) => Merge<SetLoadingIndicatorAction, {
351
+ type: typeof ActionTypes.SET_LOADING_INDICATOR;
352
+ }>;
@@ -1,4 +1,4 @@
1
- import { MessageModel } from 'react-ai-assist';
1
+ import { MessageModel } from '@openassistant/core';
2
2
  import { AiAssistantConfig } from './reducers';
3
3
  export declare const UPDATE_AI_ASSISTANT_CONFIG: string;
4
4
  export declare const UPDATE_AI_ASSISTANT_MESSAGES: string;
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
- import 'react-ai-assist/dist/index.css';
2
+ import '@openassistant/echarts/dist/index.css';
3
+ import '@openassistant/ui/dist/index.css';
3
4
  import { ActionHandler } from '@kepler.gl/actions';
4
5
  import { MapStyle } from '@kepler.gl/reducers';
5
6
  import { VisState } from '@kepler.gl/schemas';
@@ -1,10 +1,10 @@
1
- export declare const TASK_LIST = "1. Show dataset/layer/variable info.\n2. Change the basemap style.\n3. Load data from url.\n4. Create a map layer using variable.\n5. Filter the data of a variable.\n6. Create a histogram.";
1
+ export declare const TASK_LIST = "1. Show dataset/layer/variable info.\n2. Change the basemap style.\n3. Load data from url.\n4. Create a map layer using variable.\n5. Create a histogram.\n6. Create a scatter plot with regression line.\n7. Classify the data of a variable.\n8. Spatial join two datasets.";
2
2
  export declare const WELCOME_MESSAGE: string;
3
- export declare const INSTRUCTIONS = "You are a Kepler.gl AI Assistant that can answer questions and help with tasks of mapping and spatial data analysis.\n\nWhen responding to user queries:\n1. Analyze if the task requires one or multiple function calls\n2. For each required function:\n - Identify the appropriate function to call\n - Determine all required parameters\n - If parameters are missing, ask the user to provide them\n - Execute functions in a sequential order\n\nYou can execute multiple functions to complete complex tasks, but execute them one at a time in a logical sequence. Always validate the success of each function call before proceeding to the next one.\n\nRemember to:\n- Return function calls in a structured format that can be parsed and executed\n- Wait for confirmation of each function's completion before proceeding\n- Prompt user to proceed to the next function if needed\n- Provide clear feedback about what action is being taken\n- Do not include raw programming code in responses to users";
3
+ export declare const INSTRUCTIONS: string;
4
4
  export declare const PROMPT_IDEAS: {
5
5
  title: string;
6
6
  description: string;
7
7
  }[];
8
8
  export declare const ASSISTANT_NAME = "kepler-gl-ai-assistant";
9
9
  export declare const ASSISTANT_DESCRIPTION = "A Kepler.gl AI Assistant";
10
- export declare const ASSISTANT_VERSION = "0.0.1-9";
10
+ export declare const ASSISTANT_VERSION = "0.0.2";
@@ -1,4 +1,4 @@
1
- import { MessageModel } from 'react-ai-assist';
1
+ import { MessageModel } from '@openassistant/core';
2
2
  export declare type AiAssistantConfig = {
3
3
  isReady: boolean;
4
4
  provider: string;
@@ -1,4 +1,4 @@
1
1
  import { MapStyle } from '@kepler.gl/reducers';
2
2
  import { mapStyleChange, ActionHandler } from '@kepler.gl/actions';
3
- import { CustomFunctionContext, RegisterFunctionCallingProps } from 'react-ai-assist';
3
+ import { CustomFunctionContext, RegisterFunctionCallingProps } from '@openassistant/core';
4
4
  export declare function basemapFunctionDefinition(context: CustomFunctionContext<ActionHandler<typeof mapStyleChange> | MapStyle>): RegisterFunctionCallingProps;
@@ -1,5 +1,5 @@
1
1
  import { ActionHandler, createOrUpdateFilter, setFilter, setFilterPlot } from '@kepler.gl/actions';
2
2
  import { Datasets } from '@kepler.gl/table';
3
3
  import { Filter } from '@kepler.gl/types';
4
- import { CustomFunctionContext, RegisterFunctionCallingProps } from 'react-ai-assist';
4
+ import { CustomFunctionContext, RegisterFunctionCallingProps } from '@openassistant/core';
5
5
  export declare function filterFunctionDefinition(context: CustomFunctionContext<Datasets | Filter[] | ActionHandler<typeof createOrUpdateFilter> | ActionHandler<typeof setFilter> | ActionHandler<typeof setFilterPlot>>): RegisterFunctionCallingProps;
@@ -1,4 +1,4 @@
1
1
  import { ActionHandler, addLayer } from '@kepler.gl/actions';
2
2
  import { Datasets } from '@kepler.gl/table';
3
- import { CustomFunctionContext, RegisterFunctionCallingProps } from 'react-ai-assist';
3
+ import { CustomFunctionContext, RegisterFunctionCallingProps } from '@openassistant/core';
4
4
  export declare function addLayerFunctionDefinition(context: CustomFunctionContext<ActionHandler<typeof addLayer> | Datasets>): RegisterFunctionCallingProps;
@@ -1,4 +1,4 @@
1
- import { CallbackFunctionProps, CustomFunctionContext, CustomFunctionOutputProps, ErrorCallbackResult } from 'react-ai-assist';
1
+ import { CallbackFunctionProps, CustomFunctionContext, CustomFunctionOutputProps, ErrorCallbackResult } from '@openassistant/core';
2
2
  import { ActionHandler, layerVisualChannelConfigChange } from '@kepler.gl/actions';
3
3
  import { Layer } from '@kepler.gl/layers';
4
4
  export declare function updateLayerColorFunctionDefinition(context: CustomFunctionContext<ActionHandler<typeof layerVisualChannelConfigChange> | Layer[]>): {
@@ -1,5 +1,5 @@
1
1
  import { loadFiles } from '@kepler.gl/actions';
2
2
  import { ActionHandler } from '@kepler.gl/actions';
3
3
  import { Loader } from '@loaders.gl/loader-utils';
4
- import { CustomFunctionContext, RegisterFunctionCallingProps } from 'react-ai-assist';
4
+ import { CustomFunctionContext, RegisterFunctionCallingProps } from '@openassistant/core';
5
5
  export declare function loadUrlFunctionDefinition(context: CustomFunctionContext<ActionHandler<typeof loadFiles> | Loader[] | object>): RegisterFunctionCallingProps;
@@ -1,5 +1,14 @@
1
1
  import { Layer } from '@kepler.gl/layers';
2
2
  import { Datasets, KeplerTable } from '@kepler.gl/table';
3
+ import { SpatialJoinGeometries } from '@openassistant/geoda';
4
+ import { AddDataToMapPayload } from '@kepler.gl/types';
5
+ /**
6
+ * Check if the dataset exists
7
+ * @param datasets The kepler.gl datasets
8
+ * @param datasetName The name of the dataset
9
+ * @param functionName The name of the function
10
+ * @returns The result of the check
11
+ */
3
12
  export declare function checkDatasetNotExists(datasets: Datasets, datasetName: string, functionName: string): {
4
13
  name: string;
5
14
  result: {
@@ -7,6 +16,13 @@ export declare function checkDatasetNotExists(datasets: Datasets, datasetName: s
7
16
  details: string;
8
17
  };
9
18
  } | null;
19
+ /**
20
+ * Check if the field exists
21
+ * @param dataset The kepler.gl dataset
22
+ * @param fieldName The name of the field
23
+ * @param functionName The name of the function
24
+ * @returns The result of the check
25
+ */
10
26
  export declare function checkFieldNotExists(dataset: KeplerTable, fieldName: string, functionName: string): {
11
27
  type: string;
12
28
  name: string;
@@ -15,7 +31,64 @@ export declare function checkFieldNotExists(dataset: KeplerTable, fieldName: str
15
31
  details: string;
16
32
  };
17
33
  } | null;
34
+ /**
35
+ * Interpolate the colors from the original colors with the given number of colors
36
+ * @param originalColors The original colors
37
+ * @param numberOfColors The number of colors
38
+ * @returns The interpolated colors
39
+ */
18
40
  export declare function interpolateColor(originalColors: string[], numberOfColors: number): string[];
41
+ /**
42
+ * Get the values from a dataset for a variable
43
+ * @param datasets
44
+ * @param datasetName
45
+ * @param variableName
46
+ * @returns {number[]}
47
+ */
19
48
  export declare function getValuesFromDataset(datasets: Datasets, datasetName: string, variableName: string): number[];
49
+ /**
50
+ * Get the x and y values from a dataset for a scatterplot
51
+ * @param datasets
52
+ * @param datasetName
53
+ * @param xVariableName
54
+ * @param yVariableName
55
+ * @returns {x: number[], y: number[]}
56
+ */
57
+ export declare function getScatterplotValuesFromDataset(datasets: Datasets, datasetName: string, xVariableName: string, yVariableName: string): {
58
+ x: number[];
59
+ y: number[];
60
+ };
61
+ /**
62
+ * Highlight the rows in a dataset
63
+ * @param datasets The kepler.gl datasets
64
+ * @param layers The kepler.gl layers
65
+ * @param datasetName The name of the dataset
66
+ * @param selectedRowIndices The indices of the rows to highlight
67
+ * @param layerSetIsValid The function to set the layer validity
68
+ */
20
69
  export declare function highlightRows(datasets: Datasets, layers: Layer[], datasetName: string, selectedRowIndices: number[], layerSetIsValid: (layer: Layer, isValid: boolean) => void): void;
70
+ /**
71
+ * Get the dataset context, which is used to provide the dataset information to the AI assistant
72
+ * @param datasets The kepler.gl datasets
73
+ * @param layers The kepler.gl layers
74
+ * @returns The dataset context
75
+ */
21
76
  export declare function getDatasetContext(datasets: Datasets, layers: Layer[]): string;
77
+ /**
78
+ * Get the geometries from a dataset
79
+ * @param datasets The kepler.gl datasets
80
+ * @param layers The kepler.gl layers
81
+ * @param layerData The layer data
82
+ * @param datasetName The name of the dataset
83
+ * @returns The geometries
84
+ */
85
+ export declare function getGeometriesFromDataset(datasets: Datasets, layers: Layer[], layerData: any[], datasetName: string): SpatialJoinGeometries;
86
+ /**
87
+ * Save the data as a new dataset by joining it with the left dataset
88
+ * @param datasets The kepler.gl datasets
89
+ * @param datasetName The name of the left dataset
90
+ * @param data The data to save
91
+ * @param addDataToMap The function to add the data to the map
92
+ */
93
+ export declare function saveAsDataset(datasets: Datasets, datasetName: string, data: Record<string, number[]>, addDataToMap: (data: AddDataToMapPayload) => void): void;
94
+ export declare function highlightRowsByColumnValues(datasets: Datasets, layers: Layer[], datasetName: string, columnName: string, selectedValues: unknown[], layerSetIsValid: (layer: Layer, isValid: boolean) => void): void;
@@ -63,7 +63,7 @@ export interface DataTableProps {
63
63
  sortColumn: SortColumn;
64
64
  sortTableColumn: (column: string, mode?: string) => void;
65
65
  pinTableColumn: (column: string) => void;
66
- setColumnDisplayFormat: (formats: {
66
+ setColumnDisplayFormat?: (formats: {
67
67
  [key: string]: string;
68
68
  }) => void;
69
69
  copyTableColumn: (column: string) => void;
@@ -6,7 +6,7 @@ export declare type FormatterDropdownProps = {
6
6
  top: number;
7
7
  isOpened: boolean;
8
8
  displayFormat?: string;
9
- setDisplayFormat: (displayFormat: TooltipFormat) => void;
9
+ setDisplayFormat?: (displayFormat: TooltipFormat) => void;
10
10
  onClose: () => void;
11
11
  formatLabels: TooltipFormat[];
12
12
  };
@@ -16,10 +16,10 @@ export interface OptionDropdownProps {
16
16
  column: string;
17
17
  colMeta: ColMeta;
18
18
  toggleMoreOptions: (column: string) => void;
19
- sortTableColumn: (sort: string) => void;
19
+ sortTableColumn?: (sort: string) => void;
20
20
  pinTableColumn: () => void;
21
21
  copyTableColumn: () => void;
22
- setDisplayFormat: (displayFormat: any) => void;
22
+ setDisplayFormat?: (displayFormat: any) => void;
23
23
  sortMode?: string;
24
24
  isSorted?: string;
25
25
  isPinned?: boolean;
@@ -3,10 +3,10 @@
3
3
  * For React 16.8 compatibility
4
4
  */
5
5
  import React, { ReactNode } from 'react';
6
- import window from 'global/window';
6
+ import Window from 'global/window';
7
7
  export declare type FileDropProps = {
8
8
  dropEffect?: 'copy' | 'move' | 'link' | 'none';
9
- frame?: typeof document | typeof window | HTMLElement;
9
+ frame?: typeof document | typeof Window | HTMLElement;
10
10
  className?: string;
11
11
  targetClassName?: string;
12
12
  draggingOverFrameClassName?: string;
@@ -44,6 +44,8 @@ export declare const mapFieldsSelector: (props: KeplerGLProps, index?: number) =
44
44
  mapControls: import("@kepler.gl/types").MapControls;
45
45
  readOnly: boolean;
46
46
  locale: string;
47
+ isLoadingIndicatorVisible: boolean;
48
+ sidePanelWidth: number;
47
49
  topMapContainerProps: object | undefined;
48
50
  bottomMapContainerProps: object | undefined;
49
51
  transformRequest: ((url: string) => {
@@ -80,6 +82,7 @@ export declare const sidePanelSelector: (props: KeplerGLProps, availableProvider
80
82
  "3D": typeof import("@kepler.gl/layers").ScenegraphLayer;
81
83
  trip: typeof import("@kepler.gl/layers/dist/trip-layer/trip-layer").default;
82
84
  s2: typeof import("@kepler.gl/layers/dist/s2-geometry-layer/s2-geometry-layer").default;
85
+ vectorTile: typeof import("@kepler.gl/layers").VectorTileLayer;
83
86
  };
84
87
  interactionConfig: import("@kepler.gl/types").InteractionConfig;
85
88
  mapInfo: import("@kepler.gl/types").MapInfo;
@@ -114,6 +117,8 @@ export declare const plotContainerSelector: (props: KeplerGLProps) => {
114
117
  mapControls: import("@kepler.gl/types").MapControls;
115
118
  readOnly: boolean;
116
119
  locale: string;
120
+ isLoadingIndicatorVisible: boolean;
121
+ sidePanelWidth: number;
117
122
  topMapContainerProps: object | undefined;
118
123
  bottomMapContainerProps: object | undefined;
119
124
  transformRequest: ((url: string) => {
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ declare type StyledContainerProps = {
3
+ isVisible?: boolean;
4
+ left: number;
5
+ };
6
+ export declare const StyledContainer: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").Substitute<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, StyledContainerProps>>;
7
+ declare type LoadingIndicatorProps = {
8
+ isVisible?: boolean;
9
+ activeSidePanel?: boolean;
10
+ sidePanelWidth?: number;
11
+ };
12
+ declare const _default: React.FC<React.PropsWithChildren<LoadingIndicatorProps>>;
13
+ export default _default;
@@ -43,6 +43,9 @@ export interface MapContainerProps {
43
43
  index?: number;
44
44
  deleteMapLabels?: (containerId: string, layerId: string) => void;
45
45
  containerId?: number;
46
+ isLoadingIndicatorVisible?: boolean;
47
+ activeSidePanel: string | null;
48
+ sidePanelWidth?: number;
46
49
  locale?: any;
47
50
  theme?: any;
48
51
  editor?: any;
@@ -791,6 +791,7 @@ export declare const DATASET_FORMATS: {
791
791
  csv: "csv";
792
792
  keplergl: "keplergl";
793
793
  arrow: "arrow";
794
+ duckdb: "duckdb";
794
795
  };
795
796
  export declare const MAP_CONTROLS: {
796
797
  visibleLayers: "visibleLayers";
@@ -1,3 +1,4 @@
1
1
  export declare const keplerGlDuckDBPlugin: {
2
+ name: string;
2
3
  init(): Promise<void>;
3
4
  };
@@ -0,0 +1,13 @@
1
+ import { DataType } from 'apache-arrow/type';
2
+ /** Checks whether the given Apache Arrow JS type is a Point data type */
3
+ export declare function isGeoArrowPoint(type: DataType): boolean;
4
+ /** Checks whether the given Apache Arrow JS type is a Point data type */
5
+ export declare function isGeoArrowLineString(type: DataType): boolean;
6
+ /** Checks whether the given Apache Arrow JS type is a Polygon data type */
7
+ export declare function isGeoArrowPolygon(type: DataType): boolean;
8
+ /** Checks whether the given Apache Arrow JS type is a Polygon data type */
9
+ export declare function isGeoArrowMultiPoint(type: DataType): boolean;
10
+ /** Checks whether the given Apache Arrow JS type is a Polygon data type */
11
+ export declare function isGeoArrowMultiLineString(type: DataType): boolean;
12
+ /** Checks whether the given Apache Arrow JS type is a Polygon data type */
13
+ export declare function isGeoArrowMultiPolygon(type: DataType): boolean;
@@ -7,6 +7,10 @@ declare type ImportDataToDuckProps = {
7
7
  db: AsyncDuckDB;
8
8
  c: AsyncDuckDBConnection;
9
9
  };
10
+ declare type ImportDataToDuckResult = {
11
+ addWKBMetadata?: Record<string, boolean>;
12
+ useNewFields?: boolean;
13
+ };
10
14
  export declare class KeplerGlDuckDbTable extends KeplerTable {
11
15
  readonly id: string;
12
16
  label: string;
@@ -14,8 +18,8 @@ export declare class KeplerGlDuckDbTable extends KeplerTable {
14
18
  metadata: Record<string, any>;
15
19
  constructor(props: any);
16
20
  importRowData({ data, db, c }: ImportDataToDuckProps): Promise<void>;
17
- importGeoJsonData({ data, db, c }: ImportDataToDuckProps): Promise<void>;
18
- importArrowData({ data, db, c }: ImportDataToDuckProps): Promise<void>;
21
+ importGeoJsonData({ data, db, c }: ImportDataToDuckProps): Promise<ImportDataToDuckResult>;
22
+ importArrowData({ data, db, c }: ImportDataToDuckProps): Promise<ImportDataToDuckResult>;
19
23
  /**
20
24
  * Creates a table from data, returns an arrow table with the data
21
25
  * @param data
@@ -33,5 +37,6 @@ export declare class KeplerGlDuckDbTable extends KeplerTable {
33
37
  processor: any;
34
38
  format: any;
35
39
  };
40
+ static getInputDataValidator: () => (d: any) => any;
36
41
  }
37
42
  export {};
@@ -370,3 +370,13 @@ export declare const setLocaleUpdater: (state: UiState, { payload: { locale } }:
370
370
  * @public
371
371
  */
372
372
  export declare const togglePanelListViewUpdater: (state: UiState, { payload: { panelId, listView } }: UIStateActions.TogglePanelListViewAction) => UiState;
373
+ /**
374
+ * Update state of the loading indicator.
375
+ * @memberof uiStateUpdaters
376
+ * @param state uiState
377
+ * @param action
378
+ * @param action.payload Payload with change of number of active loading actions.
379
+ * @returns nextState
380
+ * @public
381
+ */
382
+ export declare const setLoadingIndicatorUpdater: (state: UiState, { payload: { change } }: UIStateActions.SetLoadingIndicatorAction) => UiState;
@@ -217,6 +217,7 @@ export declare const setFilterViewUpdater: (state: VisState, action: VisStateAct
217
217
  "3D": typeof import("@kepler.gl/layers").ScenegraphLayer;
218
218
  trip: typeof import("@kepler.gl/layers/dist/trip-layer/trip-layer").default;
219
219
  s2: typeof import("@kepler.gl/layers/dist/s2-geometry-layer/s2-geometry-layer").default;
220
+ vectorTile: typeof import("@kepler.gl/layers").VectorTileLayer;
220
221
  };
221
222
  animationConfig: AnimationConfig;
222
223
  editor: Editor;
@@ -32,6 +32,7 @@ export declare const visStateReducerFactory: (initialState?: {}) => import("redu
32
32
  "3D": typeof import("@kepler.gl/layers").ScenegraphLayer;
33
33
  trip: typeof import("@kepler.gl/layers/dist/trip-layer/trip-layer").default;
34
34
  s2: typeof import("@kepler.gl/layers/dist/s2-geometry-layer/s2-geometry-layer").default;
35
+ vectorTile: typeof import("@kepler.gl/layers").VectorTileLayer;
35
36
  };
36
37
  animationConfig: import("@kepler.gl/types").AnimationConfig;
37
38
  editor: import("@kepler.gl/types").Editor;
@@ -84,6 +85,7 @@ export declare const visStateReducerFactory: (initialState?: {}) => import("redu
84
85
  "3D": typeof import("@kepler.gl/layers").ScenegraphLayer;
85
86
  trip: typeof import("@kepler.gl/layers/dist/trip-layer/trip-layer").default;
86
87
  s2: typeof import("@kepler.gl/layers/dist/s2-geometry-layer/s2-geometry-layer").default;
88
+ vectorTile: typeof import("@kepler.gl/layers").VectorTileLayer;
87
89
  };
88
90
  animationConfig: import("@kepler.gl/types").AnimationConfig;
89
91
  editor: import("@kepler.gl/types").Editor;
@@ -137,6 +139,7 @@ declare const _default: import("redux-actions").ReduxCompatibleReducer<{
137
139
  "3D": typeof import("@kepler.gl/layers").ScenegraphLayer;
138
140
  trip: typeof import("@kepler.gl/layers/dist/trip-layer/trip-layer").default;
139
141
  s2: typeof import("@kepler.gl/layers/dist/s2-geometry-layer/s2-geometry-layer").default;
142
+ vectorTile: typeof import("@kepler.gl/layers").VectorTileLayer;
140
143
  };
141
144
  animationConfig: import("@kepler.gl/types").AnimationConfig;
142
145
  editor: import("@kepler.gl/types").Editor;
@@ -189,6 +192,7 @@ declare const _default: import("redux-actions").ReduxCompatibleReducer<{
189
192
  "3D": typeof import("@kepler.gl/layers").ScenegraphLayer;
190
193
  trip: typeof import("@kepler.gl/layers/dist/trip-layer/trip-layer").default;
191
194
  s2: typeof import("@kepler.gl/layers/dist/s2-geometry-layer/s2-geometry-layer").default;
195
+ vectorTile: typeof import("@kepler.gl/layers").VectorTileLayer;
192
196
  };
193
197
  animationConfig: import("@kepler.gl/types").AnimationConfig;
194
198
  editor: import("@kepler.gl/types").Editor;
@@ -25,6 +25,8 @@ export declare type KeplerApplicationConfig<Map> = {
25
25
  baseMapLibraryConfig?: Record<BaseMapLibraryType, BaseMapLibraryConfig>;
26
26
  plugins?: any[];
27
27
  table?: any;
28
+ useArrowProgressiveLoading?: boolean;
29
+ showReleaseBanner?: boolean;
28
30
  };
29
31
  export declare const getApplicationConfig: () => Required<KeplerApplicationConfig<mapboxgl.Map>>;
30
32
  export declare function initApplicationConfig<M>(appConfig?: KeplerApplicationConfig<M>): void;
@@ -12,4 +12,5 @@ export declare function unobserveDimensions(target: Element): void;
12
12
  * @param throttleDelay
13
13
  * @returns
14
14
  */
15
- export default function useDimensions<T extends Element>(nodeRef?: RefObject<T>, throttleDelay?: number): [RefObject<T>, Dimensions | null];
15
+ export declare function useDimensions<T extends Element>(nodeRef?: RefObject<T>, throttleDelay?: number): [RefObject<T>, Dimensions | null];
16
+ export default useDimensions;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "kepler.gl",
3
3
  "author": "Shan He <shan@uber.com>",
4
- "version": "3.1.0-alpha.6",
4
+ "version": "3.1.0",
5
5
  "description": "kepler.gl is a webgl based application to visualize large scale location data in the browser",
6
6
  "license": "MIT",
7
7
  "main": "dist/index.js",
@@ -41,7 +41,7 @@
41
41
  "url": "https://github.com/keplergl/kepler.gl.git"
42
42
  },
43
43
  "scripts": {
44
- "bootstrap": "PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true yarn install && yarn fix-dependencies",
44
+ "bootstrap": "PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true git submodule update --init --recursive && yarn install && yarn fix-dependencies",
45
45
  "install:example": "cd examples/demo-app && NODE_OPTIONS=--openssl-legacy-provider yarn",
46
46
  "install:web": "yarn install:example && cd website && yarn",
47
47
  "install-and-start": "node ./scripts/install-and-start",
@@ -103,10 +103,11 @@
103
103
  "@deck.gl/mapbox": "^8.9.27",
104
104
  "@hubble.gl/core": "1.2.0-alpha.6",
105
105
  "@hubble.gl/react": "1.2.0-alpha.6",
106
- "@kepler.gl/components": "3.1.0-alpha.6",
106
+ "@kepler.gl/components": "3.1.0",
107
107
  "@loaders.gl/polyfills": "^4.3.2",
108
108
  "@types/mapbox__geo-viewport": "^0.4.1",
109
109
  "html-webpack-plugin": "^4.3.0",
110
+ "monaco-editor": "^0.52.0",
110
111
  "typedoc": "^0.19.2"
111
112
  },
112
113
  "devDependencies": {
@@ -210,6 +211,7 @@
210
211
  "typedoc-plugin-markdown": "^3.0.11",
211
212
  "typescript": "4.7.2",
212
213
  "url-loader": "^4.1.1",
214
+ "usehooks-ts": "^3.1.0",
213
215
  "watchify": "^3.6.1",
214
216
  "webpack": "^4.29.0",
215
217
  "webpack-bundle-analyzer": "^3.3.2",
@@ -138,6 +138,7 @@ export declare const ActionTypes: {
138
138
  SYNC_TIME_FILTER_WITH_LAYER_TIMELINE: string;
139
139
  SYNC_TIME_FILTER_TIMELINE_MODE: string;
140
140
  TOGGLE_PANEL_LIST_VIEW: string;
141
+ SET_LOADING_INDICATOR: string;
141
142
  SET_EXPORT_IMAGE_SETTING: string;
142
143
  START_EXPORTING_IMAGE: string;
143
144
  SET_EXPORT_IMAGE_DATA_URI: string;
@@ -273,6 +274,7 @@ declare const _default: {
273
274
  SYNC_TIME_FILTER_WITH_LAYER_TIMELINE: "@@kepler.gl/SYNC_TIME_FILTER_WITH_LAYER_TIMELINE";
274
275
  SYNC_TIME_FILTER_TIMELINE_MODE: "@@kepler.gl/SYNC_TIME_FILTER_TIMELINE_MODE";
275
276
  TOGGLE_PANEL_LIST_VIEW: "@@kepler.gl/TOGGLE_PANEL_LIST_VIEW";
277
+ SET_LOADING_INDICATOR: "@@kepler.gl/SET_LOADING_INDICATOR";
276
278
  SET_EXPORT_IMAGE_SETTING: "@@kepler.gl/SET_EXPORT_IMAGE_SETTING";
277
279
  START_EXPORTING_IMAGE: "@@kepler.gl/START_EXPORTING_IMAGE";
278
280
  SET_EXPORT_IMAGE_DATA_URI: "@@kepler.gl/SET_EXPORT_IMAGE_DATA_URI";