urbica / react-map-gl-draw

React Component for Mapbox GL Draw
https://urbica.github.io/react-map-gl-draw
MIT License
50 stars 11 forks source link

modeOptions are not applied on initial Draw creation #20

Open riazjahangir opened 3 years ago

riazjahangir commented 3 years ago

I have defined a custom draw mode as described at https://github.com/mapbox/mapbox-gl-draw/blob/main/docs/MODES.md#available-custom-modes.

The custom mode makes use of modeOptions in its onSetup function, but these are not being passed via the modeOptions attribute of Draw as I would have expected.

Essentially I have:

<Draw
  mode="my_custom_mode"
  modeOptions={modeOptions}
  modes={(defaultModes) => ({
     ...defaultModes,
     my_custom_mode: MyCustomMode,
   })}
...

Looking at the source, it seems that modeOptions are only passed on component update, not on initial mount, so modeOptions cannot be used with the default mode.