|
import PlotlyBase |
|
import JSON |
|
|
|
function DashBase.to_dash(p::PlotlyBase.Plot) |
|
data = JSON.lower(p) |
|
pop!(data, :config, nothing) |
|
return data |
|
end |
|
import JSON |
|
|
|
function DashBase.to_dash(p::PlotlyJS.SyncPlot) |
|
data = JSON.lower(p.plot) |
|
pop!(data, :config, nothing) |
|
return data |
|
end |
are defining DashBase.to_dash methods on type the Dash module does not own. This is type-piracy!
We should move these method definitions to https://github.com/plotly/DashBase.jl inside package extension modules with PlotlyBase.jl and PlotlyJS.jl as weakdeps.
Dash.jl/src/plotly_base.jl
Lines 1 to 8 in d01ce73
Dash.jl/src/plotly_js.jl
Lines 1 to 7 in d01ce73
are defining
DashBase.to_dashmethods on type the Dash module does not own. This is type-piracy!We should move these method definitions to https://github.com/plotly/DashBase.jl inside package extension modules with PlotlyBase.jl and PlotlyJS.jl as weakdeps.