not working with

I am trying to use the library in Observable and was able to require it into the notebook (see issue requiring - #2 by severo) but I am unable to find the DrawPolygonMode within - see notebook link below

I am trying to reproduce this and example in Observable

Any help would be appreciated :smiley:

I have no experience whatsoever with nebula or deck, but you might be looking for drawPolygon:

Chrome’s DevTools have a quite powerful search function that allows you to search in all loaded resources. You can access it through Command+Option+F (Mac) or Control+Shift+F (Windows/Linux).

Thanks @mootari for the help. But I can’t find that search section in the Chrome dev tools (MacOS) - is it under Sources? Also, would you know how I would access this variable from an Observable cell?

Make sure that the dev tools are focused when you use the above shortcut. Alternatively use Command+Shift+P to open the panel/drawer search and type “search”.

Have you tried specifying mode: "drawPolygon" in your layer options?

1 Like

Thanks I was able to find the search result you showed by first clicking on dev tools and then using the shortcut. This should help sort this out.

However, specifying mode: "drawPolygon" is still giving a drawPolygon is not defined.


   mode: 'drawPolygon',
1 Like

Thanks @severo and @mootari - sorry I missed the quotes around the variable and now there is not an error.

Now, I just have to try and implement the layer correctly in the deckgl visualization. Currently, when I add the layer to the deckgl visualization nothing is showing up and I’m having to comment out a section in the layer definition otherwise I get a circular definition

  onEdit: ({ updatedData, editType, featureIndexes, editContext }) => {
    var myFeatureCollection = updatedData;
    // deck.setProps({ layers: layers });

Switching to mode: drawPolygon gave the following deprecation error in the console

layers@0.21.1:1 Deprecated use of passing `mode` as a string. Pass the mode's class constructor instead.

So, I looked at the codebox example and tried to emulate the imports

// codebox
import { EditableGeoJsonLayer } from "";
import { DrawPolygonMode } from "";

on Observable

// Observable cells
nebula_layers = require('') 
EditableGeoJsonLayer = nebula_layers.EditableGeoJsonLayer

nebula_edit = require('') 
DrawPolygonMode = nebula_edit.DrawPolygonMode 

It looks like the imports might be working correctly, but I’m getting the following error in the console about deck: error during initialization of invalid Error: Model needs a program

1 Like