class_docstr: Wrapper class to dash.Dash to allow for abstraction of global state used for building the default layout.
  Additional state include stylesheets, JS files and styling for github demos.
class_docstr_tok: ["Wrapper","class","to","dash.Dash","to","allow","for","abstraction","of","global","state","used","for","building","the","default","layout",".","Additional","state","include","stylesheets",",","JS","files","and","styling","for","github","demos","."]
code: def __init__(self, *args, **kwargs):
      server = kwargs.get("server")
      kwargs["external_stylesheets"] = [
          "/dtale/static/css/main.css",
          "/dtale/static/css/dash.css",
          "/dtale/static/css/github_fork.css",
      ]
      kwargs["external_scripts"] = [
          "/dtale/static/dash/components_bundle.js",
          "/dtale/static/dash/custom_bundle.js",
          "/dtale/static/dist/base_styles_bundle.js",
      ]
  
      app_root = server.config.get("APPLICATION_ROOT")
      if is_app_root_defined(app_root):
  
          def _prepend_app_root(v):
              return "{}{}".format(app_root, v)
  
          kwargs["requests_pathname_prefix"] = _prepend_app_root(
              kwargs["routes_pathname_prefix"]
          )
          kwargs["external_stylesheets"] = [
              _prepend_app_root(v)
              for v in kwargs["external_stylesheets"]
          ]
          kwargs["external_scripts"] = [
              _prepend_app_root(v) for v in kwargs["external_scripts"]
          ]
          kwargs["assets_url_path"] = _prepend_app_root("")
          kwargs["assets_external_path"] = _prepend_app_root("/assets")
  
      super(DtaleDash, self).__init__(*args, **kwargs)
  
imports: import json
  from logging import getLogger
  import dash
  from dash.dependencies import Input, Output, State
  from six import PY3
  from dtale.dash_application import dcc, html
  import dtale.dash_application.custom_geojson
  import dtale.dash_application.drilldown_modal
  from dtale.dash_application.exceptions import DtalePreventUpdate
  import dtale.dash_application.extended_aggregations
  import dtale.dash_application.saved_charts
  import dtale.dash_application.lock_zoom
  import dtale.global_state
  from dtale.charts.utils import MAX_GROUPS, ZAXIS_CHARTS, NON_EXT_AGGREGATION, build_final_cols
  from dtale.code_export import build_final_chart_code
  from dtale.dash_application.charts import build_chart, chart_url_params, valid_chart
  from dtale.dash_application.layout.layout import animate_styles, bar_input_style, base_layout, build_group_val_options, build_input_options, build_loc_mode_hover_children, build_map_options, build_candlestick_options, build_mapbox_style_options, build_pareto_options, build_proj_hover_children, build_slider_counts, build_label_value_options, charts_layout, colorscale_input_style, collapse_btn_text, get_yaxis_type_tabs, lock_zoom_style, main_inputs_and_group_val_display, show_chart_per_group, show_chart_per_y, get_group_types, show_input_handler, show_yaxis_ranges, bootstrap_checkbox_prop, get_num_cols
  from dtale.dash_application.layout.utils import show_style
  from dtale.dash_application.utils import get_data_id
  from dtale.translations import text
  from dtale.query import handle_predefined, run_query
  from dtale.utils import dict_merge, is_app_root_defined, make_list
label_desc: Use image node_id 1 to create a new DtaleDash object from inherited base classes: dash with example: obj = DtaleDash()