Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
9fda1ce
chore: upgrade to deckgl 9.2.11
igorDykhta Mar 23, 2026
62ab8c3
fixes
igorDykhta Mar 23, 2026
6f72afe
fix lint follow up
igorDykhta Mar 23, 2026
9882ed9
fix blending
igorDykhta Mar 23, 2026
0e35da0
fix geojson layer
igorDykhta Mar 24, 2026
8ccb79d
more fixes for aggregation layers
igorDykhta Mar 24, 2026
6a86082
fix h3 layer
igorDykhta Mar 24, 2026
4befa17
potential fix for issues with geoarrow in point and line layers
igorDykhta Mar 24, 2026
4a8b816
fix postprocessing effects
igorDykhta Mar 24, 2026
ec2ec63
fixes for light and shadow effect
igorDykhta Mar 24, 2026
a199c5a
shadow and light effect - restore uniform shadow during the nighttime
igorDykhta Mar 24, 2026
ec45a94
don't hide line and arc layers when layer type changed
igorDykhta Mar 25, 2026
fbedc0d
restore filters for aggregation layers
igorDykhta Mar 25, 2026
8647f18
fix aggregation layers - hightlight outlines
igorDykhta Mar 25, 2026
541095a
fixes for raster tile layer - raster pmtiles related
igorDykhta Mar 25, 2026
f76a005
fixes for raster tiles shader modules updates
igorDykhta Mar 26, 2026
99d799f
merge master
igorDykhta Mar 26, 2026
17f0866
fix lint
igorDykhta Mar 26, 2026
448ca73
more lint
igorDykhta Mar 26, 2026
9b07f70
try to fix CI lint
igorDykhta Mar 26, 2026
6b33e07
try to fix CI tests
igorDykhta Mar 26, 2026
d5fdfd6
install webgpu
igorDykhta Mar 26, 2026
c419b75
try to fix Ci test env setup
igorDykhta Mar 26, 2026
b2967b4
cont fix setup browser env
igorDykhta Mar 26, 2026
98954b4
remove upgrade in examples - not yet released packages
igorDykhta Mar 26, 2026
f24754f
fix more tests
igorDykhta Mar 26, 2026
497d3db
fixes for line layer
igorDykhta Mar 26, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions bindings/kepler.gl-jupyter/js/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -78,10 +78,10 @@
"@kepler.gl/reducers": "^3.2.0",
"@kepler.gl/schemas": "^3.2.0",
"@kepler.gl/styles": "^3.2.0",
"@loaders.gl/arrow": "^4.3.2",
"@loaders.gl/core": "^4.3.2",
"@loaders.gl/csv": "^4.3.2",
"@loaders.gl/json": "^4.3.2",
"@loaders.gl/arrow": "^4.1.0",
"@loaders.gl/core": "^4.1.0",
"@loaders.gl/csv": "^4.1.0",
"@loaders.gl/json": "^4.1.0",
"global": "^4.3.0",
"node-polyfill-webpack-plugin": "^1.1.2",
"querystring": "0.2.1",
Expand Down
2 changes: 1 addition & 1 deletion jest.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ const config = {
// Some libraries (even if transitive) are transitioning to ESM and need additional transpilation. Relevant issues:
// - tiny-sdf: https://github.com/visgl/deck.gl/issues/7735
transformIgnorePatterns: [
'/node_modules\\/(?!(.*@mapbox\\/tiny-sdf\\.*|@loaders\\.gl))',
'/node_modules\\/(?!(.*@mapbox\\/tiny-sdf\\.*|@loaders\\.gl|@deck\\.gl|@deck\\.gl-community|@luma\\.gl|preact))',
'\\.pnp\\.[^\\/]+$'
]
};
Expand Down
65 changes: 39 additions & 26 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -101,13 +101,14 @@
"umd"
],
"dependencies": {
"@deck.gl/mapbox": "^8.9.27",
"@deck.gl/mapbox": "^9.2.11",
"@hubble.gl/core": "1.4.0",
"@hubble.gl/react": "1.4.0",
"@kepler.gl/components": "3.2.6",
"@loaders.gl/polyfills": "^4.3.2",
"@loaders.gl/polyfills": "^4.3.4",
"@types/mapbox__geo-viewport": "^0.4.1",
"html-webpack-plugin": "^4.3.0",
"math.gl": "^4.1.0",
"monaco-editor": "^0.52.0",
"typedoc": "^0.19.2"
},
Expand All @@ -133,10 +134,12 @@
"@babel/runtime": "^7.12.1",
"@babel/traverse": "^7.12.1",
"@cfaester/enzyme-adapter-react-18": "^0.7.0",
"@deck.gl/test-utils": "^8.9.27",
"@loaders.gl/polyfills": "^4.3.2",
"@luma.gl/test-utils": "^8.5.20",
"@nebula.gl/layers": "1.0.2-alpha.1",
"@deck.gl-community/editable-layers": "9.2.8",
"@deck.gl-community/layers": "9.2.8",
"@deck.gl/test-utils": "^9.2.11",
"@loaders.gl/polyfills": "^4.3.4",
"@luma.gl/test-utils": "^9.2.6",
"@luma.gl/webgpu": "^9.2.6",
"@open-wc/webpack-import-meta-loader": "0.4.7",
"@probe.gl/env": "^3.5.0",
"@probe.gl/test-utils": "^3.5.0",
Expand Down Expand Up @@ -210,7 +213,7 @@
"tape": "^4.9.2",
"tape-catch": "^1.0.6",
"typedoc-plugin-markdown": "^3.0.11",
"typescript": "4.7.2",
"typescript": "5.6.3",
"url-loader": "^4.1.1",
"usehooks-ts": "^3.1.0",
"watchify": "^3.6.1",
Expand All @@ -223,25 +226,35 @@
"webpack-stats-plugin": "^0.2.1"
},
"resolutions": {
"@loaders.gl/core": "4.3.2",
"@loaders.gl/csv": "4.3.2",
"@loaders.gl/draco": "4.3.2",
"@loaders.gl/gltf": "4.3.2",
"@loaders.gl/json": "4.3.2",
"@loaders.gl/loader-utils": "4.3.2",
"@loaders.gl/polyfills": "4.3.2",
"@loaders.gl/arrow": "4.3.2",
"@loaders.gl/parquet": "4.3.2",
"@loaders.gl/gis": "4.3.2",
"@loaders.gl/schema": "4.3.2",
"@loaders.gl/wkt": "4.3.2",
"@loaders.gl/wms": "4.3.2",
"@luma.gl/constants": "8.5.21",
"@luma.gl/core": "8.5.21",
"@luma.gl/experimental": "8.5.21",
"@luma.gl/shadertools": "8.5.21",
"@luma.gl/test-utils": "8.5.21",
"@luma.gl/webgl": "8.5.21",
"@deck.gl/aggregation-layers": "9.2.11",
"@deck.gl/core": "9.2.11",
"@deck.gl/extensions": "9.2.11",
"@deck.gl/geo-layers": "9.2.11",
"@deck.gl/layers": "9.2.11",
"@deck.gl/mesh-layers": "9.2.11",
"@deck.gl/mapbox": "9.2.11",
"@deck.gl/react": "9.2.11",
"@deck.gl/widgets": "9.2.11",
"@loaders.gl/core": "4.3.4",
"@loaders.gl/csv": "4.3.4",
"@loaders.gl/draco": "4.3.4",
"@loaders.gl/gltf": "4.3.4",
"@loaders.gl/json": "4.3.4",
"@loaders.gl/loader-utils": "4.3.4",
"@loaders.gl/polyfills": "4.3.4",
"@loaders.gl/arrow": "4.3.4",
"@loaders.gl/parquet": "4.3.4",
"@loaders.gl/gis": "4.3.4",
"@loaders.gl/schema": "4.3.4",
"@loaders.gl/wkt": "4.3.4",
"@loaders.gl/wms": "4.3.4",
"@luma.gl/constants": "9.2.6",
"@luma.gl/core": "9.2.6",
"@luma.gl/engine": "9.2.6",
"@luma.gl/shadertools": "9.2.6",
"@luma.gl/test-utils": "9.2.6",
"@luma.gl/webgl": "9.2.6",
"@luma.gl/webgpu": "9.2.6",
"@types/lodash": "4.17.5",
"browserslist": "^4.17.0",
"caniuse-lite": "^1.0.30001636",
Expand Down
10 changes: 10 additions & 0 deletions scripts/fix-dependencies.sh
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,16 @@
# We use tail to avoid the first line of the the output which is the command itself
yarn babel node_modules/@mapbox/tiny-sdf/index.js | tail -n +2 > node_modules/@mapbox/tiny-sdf/index.cjs

# Make the CJS build resolvable by require() - patch package.json to add exports and remove ESM-only type
node -e "
const fs = require('fs');
const p = 'node_modules/@mapbox/tiny-sdf/package.json';
const pkg = JSON.parse(fs.readFileSync(p, 'utf8'));
pkg.exports = { '.': { require: './index.cjs', import: './index.js', default: './index.cjs' } };
pkg.main = './index.cjs';
fs.writeFileSync(p, JSON.stringify(pkg, null, 2));
"

# Patch for an issue with react-virtualized output having an invalid import
# https://github.com/bvaughn/react-virtualized/issues/1212
if [[ -f "node_modules/react-virtualized/dist/es/WindowScroller/utils/onScroll.js" ]]; then
Expand Down
2 changes: 1 addition & 1 deletion src/actions/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
"umd"
],
"dependencies": {
"@deck.gl/core": "^8.9.27",
"@deck.gl/core": "^9.2.11",
"@kepler.gl/cloud-providers": "3.2.6",
"@kepler.gl/constants": "3.2.6",
"@kepler.gl/layers": "3.2.6",
Expand Down
10 changes: 5 additions & 5 deletions src/actions/src/vis-state-actions.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
// Copyright contributors to the kepler.gl project

// vis-state-reducer
import {PickInfo} from '@deck.gl/core/lib/deck';
import {PickingInfo} from '@deck.gl/core';
import {default as ActionTypes} from './action-types';
import {FileCacheItem} from '@kepler.gl/processors';
import {Layer, LayerBaseConfig} from '@kepler.gl/layers';
Expand Down Expand Up @@ -1112,7 +1112,7 @@ export function toggleFilterFeature(
}

export type OnLayerHoverUpdaterAction = {
info: PickInfo<any> | null;
info: PickingInfo<any> | null;
mapIndex?: number;
};
/**
Expand All @@ -1124,7 +1124,7 @@ export type OnLayerHoverUpdaterAction = {
* @public
*/
export function onLayerHover(
info: PickInfo<any> | null,
info: PickingInfo<any> | null,
mapIndex?: number
): Merge<OnLayerHoverUpdaterAction, {type: typeof ActionTypes.LAYER_HOVER}> {
return {
Expand All @@ -1135,7 +1135,7 @@ export function onLayerHover(
}

export type OnLayerClickUpdaterAction = {
info: PickInfo<any> | null;
info: PickingInfo<any> | null;
};
/**
* Trigger layer click event with clicked object
Expand All @@ -1145,7 +1145,7 @@ export type OnLayerClickUpdaterAction = {
* @public
*/
export function onLayerClick(
info: PickInfo<any> | null
info: PickingInfo<any> | null
): Merge<OnLayerClickUpdaterAction, {type: typeof ActionTypes.LAYER_CLICK}> {
return {
type: ActionTypes.LAYER_CLICK,
Expand Down
11 changes: 7 additions & 4 deletions src/ai-assistant/src/components/ai-assistant-component.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -72,8 +72,11 @@ export function AiAssistantComponent() {
const instructions = `${INSTRUCTIONS}\n\n${datasetMetaData}`;

// generate ideas from LLM
const {temporaryPrompt, restartChat: libraryRestartChat} = useAssistant({...assistantProps, instructions});

const {temporaryPrompt, restartChat: libraryRestartChat} = useAssistant({
...assistantProps,
instructions
});

const restartChatRef = useRef(libraryRestartChat);
restartChatRef.current = libraryRestartChat;

Expand Down Expand Up @@ -104,13 +107,13 @@ export function AiAssistantComponent() {

const onRestartAssistant = async () => {
dispatch(updateAiAssistantMessages([]));

try {
await restartChatRef.current();
} catch (e) {
console.error('Error restarting chat:', e);
}

setRestartKey(prev => prev + 1);
};

Expand Down
12 changes: 6 additions & 6 deletions src/ai-assistant/src/config/models.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@
// Copyright contributors to the kepler.gl project

export const PROVIDER_DEFAULT_BASE_URLS = {
"openai": "https://api.openai.com/v1",
"anthropic": "https://api.anthropic.com/v1",
"google": "https://generativelanguage.googleapis.com/v1beta",
"deepseek": "https://api.deepseek.com/v1",
"xai": "https://api.x.ai/v1",
"ollama": "http://localhost:11434/api"
openai: 'https://api.openai.com/v1',
anthropic: 'https://api.anthropic.com/v1',
google: 'https://generativelanguage.googleapis.com/v1beta',
deepseek: 'https://api.deepseek.com/v1',
xai: 'https://api.x.ai/v1',
ollama: 'http://localhost:11434/api'
};

export const PROVIDER_MODELS = {
Expand Down
15 changes: 8 additions & 7 deletions src/components/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,10 @@
"umd"
],
"dependencies": {
"@deck.gl/core": "^8.9.27",
"@deck.gl/react": "^8.9.27",
"@deck.gl-community/editable-layers": "9.2.8",
"@deck.gl/core": "^9.2.11",
"@deck.gl/react": "^9.2.11",
"@deck.gl/widgets": "^9.2.11",
"@dnd-kit/core": "^6.1.0",
"@dnd-kit/modifiers": "^7.0.0",
"@dnd-kit/sortable": "^8.0.0",
Expand All @@ -52,11 +54,10 @@
"@kepler.gl/table": "3.2.6",
"@kepler.gl/types": "3.2.6",
"@kepler.gl/utils": "3.2.6",
"@loaders.gl/mvt": "^4.3.2",
"@loaders.gl/pmtiles": "^4.3.2",
"@loaders.gl/wms": "4.3.2",
"@loaders.gl/mvt": "^4.3.4",
"@loaders.gl/pmtiles": "^4.3.4",
"@loaders.gl/wms": "4.3.4",
"@mapbox/mapbox-sdk": "^0.15.3",
"@nebula.gl/edit-modes": "1.0.2-alpha.1",
"@tippyjs/react": "^4.2.0",
"@types/classnames": "^2.3.1",
"@types/d3-array": "^2.8.0",
Expand Down Expand Up @@ -91,7 +92,7 @@
"mapbox-gl": "1.13.1",
"maplibre-gl": "^3.6.2",
"markdown-to-jsx": "^7.7.6",
"mjolnir.js": "^2.7.0",
"mjolnir.js": "^3.0.0",
"moment": "^2.10.6",
"moment-timezone": "^0.5.35",
"prop-types": "^15.6.0",
Expand Down
2 changes: 1 addition & 1 deletion src/components/src/common/data-table/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -349,7 +349,7 @@ export const TableSection = ({
height={headerGridProps.height + browserScrollBarWidth}
width={headerGridWidth}
scrollLeft={scrollLeft}
onScroll={args => onScroll?.({...args, scrollTop:scrollTop ?? 0 })}
onScroll={args => onScroll?.({...args, scrollTop: scrollTop ?? 0})}
/>
</div>
<div
Expand Down
8 changes: 7 additions & 1 deletion src/components/src/common/icons/close.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,13 @@ export default class Close extends Component<Partial<BaseProps>> {
return (
<Base {...this.props}>
<g transform="translate(32,32)">
<path d="M-16,-16 L16,16 M16,-16 L-16,16" stroke="currentColor" strokeWidth="5" strokeLinecap="round" fill="none" />
<path
d="M-16,-16 L16,16 M16,-16 L-16,16"
stroke="currentColor"
strokeWidth="5"
strokeLinecap="round"
fill="none"
/>
</g>
</Base>
);
Expand Down
6 changes: 3 additions & 3 deletions src/components/src/editor/editor.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ import {
} from '@kepler.gl/constants';
import {Layer, EditorLayerUtils} from '@kepler.gl/layers';
import {Filter, FeatureSelectionContext, Feature} from '@kepler.gl/types';
import {FeatureOf, Polygon} from '@nebula.gl/edit-modes';
import {Feature as EditableFeature, Polygon} from '@deck.gl-community/editable-layers';
import {Datasets} from '@kepler.gl/table';

import {RootContext} from '../context';
Expand Down Expand Up @@ -76,7 +76,7 @@ export default function EditorFactory(
<StyledWrapper className={classnames('editor', className)} style={style}>
{visiblePanel ? (
<FeatureActionPanel
selectedFeature={selectedFeature as FeatureOf<Polygon>}
selectedFeature={selectedFeature as EditableFeature<Polygon>}
datasets={datasets}
layers={layers}
currentFilter={currentFilter}
Expand Down Expand Up @@ -191,7 +191,7 @@ export default function EditorFactory(

return (
<PortalEditor
selectedFeature={selectedFeature as FeatureOf<Polygon>}
selectedFeature={selectedFeature as EditableFeature<Polygon>}
visiblePanel={Boolean(rightClick) && selectedFeature && index === mapIndex}
datasets={datasets}
layers={availableLayers}
Expand Down
2 changes: 1 addition & 1 deletion src/components/src/editor/feature-action-panel.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import styled from 'styled-components';

import {Layer} from '@kepler.gl/layers';
import {Filter} from '@kepler.gl/types';
import {Feature} from '@nebula.gl/edit-modes';
import {Feature} from '@deck.gl-community/editable-layers';
import {Datasets} from '@kepler.gl/table';
import {canApplyFeatureFilter} from '@kepler.gl/utils';

Expand Down
14 changes: 10 additions & 4 deletions src/components/src/effects/effect-configurator.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -283,7 +283,7 @@ export default function EffectConfiguratorFactory(
effect,
updateEffectConfig
}) => {
const uniforms = effect.deckEffect?.module.uniforms || defaultUniforms;
const uniforms = effect.deckEffect?.module.propTypes || defaultUniforms;
const parameterDescriptions = effect.getParameterDescriptions();
const {parameters, id} = effect;
const flatParameterDescriptions = useMemo(() => {
Expand Down Expand Up @@ -311,17 +311,23 @@ export default function EffectConfiguratorFactory(
return flatParameterDescriptions.map(desc => {
const paramName = desc.name;

const uniform = uniforms[desc.name];
if ((!uniform && uniform !== 0) || uniform.private) {
const rawUniform = uniforms[desc.name];
if ((!rawUniform && rawUniform !== 0) || rawUniform.private) {
return null;
}

// luma.gl 9 wraps array propTypes as {value: [...]}
const uniform =
rawUniform && typeof rawUniform === 'object' && Array.isArray(rawUniform.value)
? rawUniform.value
: rawUniform;

const prevValue = parameters[paramName];

const label = desc.label === false ? false : desc.label || desc.name;

// the uniform is [number, number] array
if (uniform.length === 2) {
if (Array.isArray(uniform) && uniform.length === 2) {
return {
label,
value1: prevValue[desc.index || 0] || 0,
Expand Down
Loading
Loading