Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
2 changes: 1 addition & 1 deletion examples/point/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
"build": "vite build"
},
"dependencies": {
"@geoarrow/deck.gl-layers": "*",
"@geoarrow/deck.gl-layers": "workspace:^",
"@loaders.gl/compression": "^4.1.4",
"@loaders.gl/crypto": "^4.1.4",
"apache-arrow": ">=14",
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
"prepublishOnly": "pnpm clean && pnpm build",
"test": "vitest run",
"typecheck": "tsc --build",
"watch": "tsc --watch"
"watch": "tsc --build --watch"
},
"files": [
"dist/",
Expand Down
4 changes: 2 additions & 2 deletions packages/deck.gl-layers/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
},
"scripts": {
"build:rollup": "rollup -c rollup.config.js",
"build:tsc": "tsc",
"build:tsc": "tsc --project tsconfig.build.json",
"build": "npm run build:tsc && npm run build:rollup",
"clean": "rimraf dist",
"docs:build": "typedoc",
Expand All @@ -28,7 +28,7 @@
"fmt": "prettier './src/**/*.ts' --write",
"prepublishOnly": "npm run clean && npm run build",
"test": "vitest run",
"watch": "tsc --watch"
"watch": "tsc --project tsconfig.build.json --watch"
},
"files": [
"dist/",
Expand Down
37 changes: 33 additions & 4 deletions packages/deck.gl-layers/rollup.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,17 @@ export default [
format: "es",
sourcemap,
},
plugins: [nodeResolve(), commonjs(), typescript()],
plugins: [
nodeResolve(),
commonjs(),
typescript({
compilerOptions: {
composite: false,
declaration: false,
declarationMap: false,
},
}),
],
external,
},
{
Expand All @@ -33,7 +43,7 @@ export default [
file: "dist/index.d.ts",
format: "es",
},
plugins: [dts()],
plugins: [dts({ compilerOptions: { composite: false } })],
external,
},
{
Expand All @@ -43,7 +53,17 @@ export default [
format: "cjs",
sourcemap,
},
plugins: [nodeResolve(), commonjs(), typescript()],
plugins: [
nodeResolve(),
commonjs(),
typescript({
compilerOptions: {
composite: false,
declaration: false,
declarationMap: false,
},
}),
],
external,
},
{
Expand All @@ -62,7 +82,16 @@ export default [
"apache-arrow": "Arrow",
},
},
plugins: [typescript(), terser()],
plugins: [
typescript({
compilerOptions: {
composite: false,
declaration: false,
declarationMap: false,
},
}),
terser(),
],
external,
},
];
6 changes: 3 additions & 3 deletions packages/deck.gl-layers/src/layers/a5-layer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -101,10 +101,10 @@ const defaultProps: DefaultProps<GeoArrowA5LayerProps> = {
export class GeoArrowA5Layer<
ExtraProps extends object = Record<string, never>,
> extends CompositeLayer<GeoArrowA5LayerProps & ExtraProps> {
static defaultProps = defaultProps;
static layerName = "GeoArrowA5Layer";
static override defaultProps = defaultProps;
static override layerName = "GeoArrowA5Layer";

getPickingInfo(
override getPickingInfo(
params: GetPickingInfoParams & {
sourceLayer: { props: GeoArrowExtraPickingProps };
},
Expand Down
6 changes: 3 additions & 3 deletions packages/deck.gl-layers/src/layers/arc-layer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -118,10 +118,10 @@ const defaultProps: DefaultProps<GeoArrowArcLayerProps> = {
export class GeoArrowArcLayer<
ExtraProps extends object = Record<string, never>,
> extends CompositeLayer<GeoArrowArcLayerProps & ExtraProps> {
static defaultProps = defaultProps;
static layerName = "GeoArrowArcLayer";
static override defaultProps = defaultProps;
static override layerName = "GeoArrowArcLayer";

getPickingInfo(
override getPickingInfo(
params: GetPickingInfoParams & {
sourceLayer: { props: GeoArrowExtraPickingProps };
},
Expand Down
6 changes: 3 additions & 3 deletions packages/deck.gl-layers/src/layers/column-layer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -112,10 +112,10 @@ const defaultProps: DefaultProps<GeoArrowColumnLayerProps> = {
export class GeoArrowColumnLayer<
ExtraProps extends object = Record<string, never>,
> extends CompositeLayer<GeoArrowColumnLayerProps & ExtraProps> {
static defaultProps = defaultProps;
static layerName = "GeoArrowColumnLayer";
static override defaultProps = defaultProps;
static override layerName = "GeoArrowColumnLayer";

getPickingInfo(
override getPickingInfo(
params: GetPickingInfoParams & {
sourceLayer: { props: GeoArrowExtraPickingProps };
},
Expand Down
6 changes: 3 additions & 3 deletions packages/deck.gl-layers/src/layers/geohash-layer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -97,10 +97,10 @@ const defaultProps: DefaultProps<GeoArrowGeohashLayerProps> = {
export class GeoArrowGeohashLayer<
ExtraProps extends object = Record<string, never>,
> extends CompositeLayer<GeoArrowGeohashLayerProps & ExtraProps> {
static defaultProps = defaultProps;
static layerName = "GeoArrowGeohashLayer";
static override defaultProps = defaultProps;
static override layerName = "GeoArrowGeohashLayer";

getPickingInfo(
override getPickingInfo(
params: GetPickingInfoParams & {
sourceLayer: { props: GeoArrowExtraPickingProps };
},
Expand Down
6 changes: 3 additions & 3 deletions packages/deck.gl-layers/src/layers/h3-hexagon-layer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -101,10 +101,10 @@ const defaultProps: DefaultProps<GeoArrowH3HexagonLayerProps> = {
export class GeoArrowH3HexagonLayer<
ExtraProps extends object = Record<string, never>,
> extends CompositeLayer<GeoArrowH3HexagonLayerProps & ExtraProps> {
static defaultProps = defaultProps;
static layerName = "GeoArrowH3HexagonLayer";
static override defaultProps = defaultProps;
static override layerName = "GeoArrowH3HexagonLayer";

getPickingInfo(
override getPickingInfo(
params: GetPickingInfoParams & {
sourceLayer: { props: GeoArrowExtraPickingProps };
},
Expand Down
4 changes: 2 additions & 2 deletions packages/deck.gl-layers/src/layers/heatmap-layer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -78,8 +78,8 @@ const defaultProps: DefaultProps<GeoArrowHeatmapLayerProps> = {
export class GeoArrowHeatmapLayer<
ExtraProps extends object = Record<string, never>,
> extends CompositeLayer<GeoArrowHeatmapLayerProps & ExtraProps> {
static defaultProps = defaultProps;
static layerName = "GeoArrowHeatmapLayer";
static override defaultProps = defaultProps;
static override layerName = "GeoArrowHeatmapLayer";

renderLayers(): Layer<object> | LayersList | null {
const { data: batch } = this.props;
Expand Down
6 changes: 3 additions & 3 deletions packages/deck.gl-layers/src/layers/path-layer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -96,10 +96,10 @@ export const defaultProps: DefaultProps<GeoArrowPathLayerProps> = {
export class GeoArrowPathLayer<
ExtraProps extends object = Record<string, never>,
> extends CompositeLayer<GeoArrowPathLayerProps & ExtraProps> {
static defaultProps = defaultProps;
static layerName = "GeoArrowPathLayer";
static override defaultProps = defaultProps;
static override layerName = "GeoArrowPathLayer";

getPickingInfo(
override getPickingInfo(
params: GetPickingInfoParams & {
sourceLayer: { props: GeoArrowExtraPickingProps };
},
Expand Down
6 changes: 3 additions & 3 deletions packages/deck.gl-layers/src/layers/point-cloud-layer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -91,10 +91,10 @@ const defaultProps: DefaultProps<GeoArrowPointCloudLayerProps> = {
export class GeoArrowPointCloudLayer<
ExtraProps extends object = Record<string, never>,
> extends CompositeLayer<GeoArrowPointCloudLayerProps & ExtraProps> {
static defaultProps = defaultProps;
static layerName = "GeoArrowPointCloudLayer";
static override defaultProps = defaultProps;
static override layerName = "GeoArrowPointCloudLayer";

getPickingInfo(
override getPickingInfo(
params: GetPickingInfoParams & {
sourceLayer: { props: GeoArrowExtraPickingProps };
},
Expand Down
7 changes: 3 additions & 4 deletions packages/deck.gl-layers/src/layers/polygon-layer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -212,10 +212,10 @@ const defaultLineColor: [number, number, number, number] = [0, 0, 0, 255];
export class GeoArrowPolygonLayer<
ExtraProps extends object = Record<string, never>,
> extends CompositeLayer<Required<GeoArrowPolygonLayerProps> & ExtraProps> {
static defaultProps = defaultProps;
static layerName = "GeoArrowPolygonLayer";
static override defaultProps = defaultProps;
static override layerName = "GeoArrowPolygonLayer";

getPickingInfo(
override getPickingInfo(
params: GetPickingInfoParams & {
sourceLayer: { props: GeoArrowExtraPickingProps };
},
Expand Down Expand Up @@ -281,7 +281,6 @@ export class GeoArrowPolygonLayer<
// Layer composition props
const {
data,
_dataDiff,
stroked,
filled,
extruded,
Expand Down
6 changes: 3 additions & 3 deletions packages/deck.gl-layers/src/layers/s2-layer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -97,10 +97,10 @@ const defaultProps: DefaultProps<GeoArrowS2LayerProps> = {
export class GeoArrowS2Layer<
ExtraProps extends object = Record<string, never>,
> extends CompositeLayer<GeoArrowS2LayerProps & ExtraProps> {
static defaultProps = defaultProps;
static layerName = "GeoArrowS2Layer";
static override defaultProps = defaultProps;
static override layerName = "GeoArrowS2Layer";

getPickingInfo(
override getPickingInfo(
params: GetPickingInfoParams & {
sourceLayer: { props: GeoArrowExtraPickingProps };
},
Expand Down
6 changes: 3 additions & 3 deletions packages/deck.gl-layers/src/layers/scatterplot-layer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -103,10 +103,10 @@ const defaultProps: DefaultProps<GeoArrowScatterplotLayerProps> = {
export class GeoArrowScatterplotLayer<
ExtraProps extends object = Record<string, never>,
> extends CompositeLayer<GeoArrowScatterplotLayerProps & ExtraProps> {
static defaultProps = defaultProps;
static layerName = "GeoArrowScatterplotLayer";
static override defaultProps = defaultProps;
static override layerName = "GeoArrowScatterplotLayer";

getPickingInfo(
override getPickingInfo(
params: GetPickingInfoParams & {
sourceLayer: { props: GeoArrowExtraPickingProps };
},
Expand Down
41 changes: 8 additions & 33 deletions packages/deck.gl-layers/src/layers/solid-polygon-layer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -191,8 +191,8 @@ const defaultProps: DefaultProps<GeoArrowSolidPolygonLayerProps> = {
export class GeoArrowSolidPolygonLayer<
ExtraProps extends object = Record<string, never>,
> extends CompositeLayer<GeoArrowSolidPolygonLayerProps & ExtraProps> {
static defaultProps = defaultProps;
static layerName = "GeoArrowSolidPolygonLayer";
static override defaultProps = defaultProps;
static override layerName = "GeoArrowSolidPolygonLayer";

declare state: CompositeLayer["state"] & {
batch: arrow.RecordBatch | null;
Expand All @@ -201,7 +201,7 @@ export class GeoArrowSolidPolygonLayer<
earcutWorkerRequest: Promise<string> | null;
};

initializeState(_context: LayerContext): void {
override initializeState(_context: LayerContext): void {
this.state = {
batch: null,
triangles: null,
Expand Down Expand Up @@ -249,7 +249,7 @@ export class GeoArrowSolidPolygonLayer<
}
}

async finalizeState(_context: LayerContext): Promise<void> {
override async finalizeState(_context: LayerContext): Promise<void> {
await this.state?.earcutWorkerPool?.terminate();
console.log("terminated");
}
Expand Down Expand Up @@ -319,7 +319,7 @@ export class GeoArrowSolidPolygonLayer<
polygonData,
true,
);
pool.queue(async (earcutWorker) => {
pool.queue(async (earcutWorker: FunctionThread<[unknown], Uint32Array>) => {
const earcutTriangles = await earcutWorker(
Transfer(preparedPolygonData, arrayBuffers),
);
Expand Down Expand Up @@ -372,7 +372,7 @@ export class GeoArrowSolidPolygonLayer<
polygonData,
true,
);
pool.queue(async (earcutWorker) => {
pool.queue(async (earcutWorker: FunctionThread<[unknown], Uint32Array>) => {
const earcutTriangles = await earcutWorker(
Transfer(preparedPolygonData, arrayBuffers),
);
Expand Down Expand Up @@ -401,13 +401,13 @@ export class GeoArrowSolidPolygonLayer<
return ga.algorithm.earcut(polygonData);
}

updateState({ changeFlags }: UpdateParameters<this>): void {
override updateState({ changeFlags }: UpdateParameters<this>): void {
if (changeFlags.dataChanged) {
this.updateData();
}
}

getPickingInfo(
override getPickingInfo(
params: GetPickingInfoParams & {
sourceLayer: { props: GeoArrowExtraPickingProps };
},
Expand Down Expand Up @@ -625,28 +625,3 @@ export class GeoArrowSolidPolygonLayer<
return new SolidPolygonLayer(finalProps);
}
}

function _encodePickingColors(
geomToCoordOffsets: Int32Array,
encodePickingColor: (id: number, result: number[]) => void,
): Uint8ClampedArray {
const largestOffset = geomToCoordOffsets[geomToCoordOffsets.length - 1];
const pickingColors = new Uint8ClampedArray(largestOffset);

const pickingColor: number[] = [];
for (let arrayIdx = 0; arrayIdx < geomToCoordOffsets.length - 1; arrayIdx++) {
const thisOffset = geomToCoordOffsets[arrayIdx];
const nextOffset = geomToCoordOffsets[arrayIdx + 1];

// Note: we encode the picking color once per _feature_, but then assign it
// to the color array once per _vertex_
encodePickingColor(arrayIdx, pickingColor);
for (let offset = thisOffset; offset < nextOffset; offset++) {
pickingColors[offset * 3] = pickingColor[0];
pickingColors[offset * 3 + 1] = pickingColor[1];
pickingColors[offset * 3 + 2] = pickingColor[2];
}
}

return pickingColors;
}
6 changes: 3 additions & 3 deletions packages/deck.gl-layers/src/layers/text-layer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -150,10 +150,10 @@ const defaultProps: DefaultProps<GeoArrowTextLayerProps> = {
export class GeoArrowTextLayer<
ExtraProps extends object = Record<string, never>,
> extends CompositeLayer<GeoArrowTextLayerProps & ExtraProps> {
static defaultProps = defaultProps;
static layerName = "GeoArrowTextLayer";
static override defaultProps = defaultProps;
static override layerName = "GeoArrowTextLayer";

getPickingInfo(
override getPickingInfo(
params: GetPickingInfoParams & {
sourceLayer: { props: GeoArrowExtraPickingProps };
},
Expand Down
4 changes: 2 additions & 2 deletions packages/deck.gl-layers/src/layers/trips-layer.ts
Original file line number Diff line number Diff line change
Expand Up @@ -91,8 +91,8 @@ const defaultProps: DefaultProps<GeoArrowTripsLayerProps> = {
export class GeoArrowTripsLayer<
ExtraProps extends object = Record<string, never>,
> extends CompositeLayer<GeoArrowTripsLayerProps & ExtraProps> {
static defaultProps = defaultProps;
static layerName = "GeoArrowTripsLayer";
static override defaultProps = defaultProps;
static override layerName = "GeoArrowTripsLayer";

renderLayers(): Layer<object> | LayersList | null {
const { data: batch, getTimestamps } = this.props;
Expand Down
Loading