MCPcopy
hub / github.com/plotly/dash / register_callback

Function register_callback

dash/_callback.py:658–887  ·  view source on GitHub ↗
(
    callback_list,
    callback_map,
    config_prevent_initial_callbacks,
    *_args,
    **_kwargs,
)

Source from the content-addressed store, hash-verified

656
657# pylint: disable=too-many-branches,too-many-statements
658def register_callback(
659 callback_list,
660 callback_map,
661 config_prevent_initial_callbacks,
662 *_args,
663 **_kwargs,
664):
665 (
666 output,
667 flat_inputs,
668 flat_state,
669 inputs_state_indices,
670 prevent_initial_call,
671 ) = handle_grouped_callback_args(_args, _kwargs)
672 if isinstance(output, Output):
673 # Insert callback with scalar (non-multi) Output
674 insert_output = output
675 multi = False
676 has_output = True
677 else:
678 # Insert callback as multi Output
679 insert_output = flatten_grouping(output)
680 multi = True
681 has_output = len(output) > 0
682
683 background = _kwargs.get("background")
684 manager = _kwargs.get("manager")
685 running = _kwargs.get("running")
686 on_error = _kwargs.get("on_error")
687 if running is not None:
688 if not isinstance(running[0], (list, tuple)):
689 running = [running]
690 running = {
691 "running": {str(r[0]): r[1] for r in running},
692 "runningOff": {str(r[0]): r[2] for r in running},
693 }
694 allow_dynamic_callbacks = _kwargs.get("_allow_dynamic_callbacks")
695
696 output_indices = make_grouping_by_index(output, list(range(grouping_len(output))))
697 callback_id = insert_callback(
698 callback_list,
699 callback_map,
700 config_prevent_initial_callbacks,
701 insert_output,
702 output_indices,
703 flat_inputs,
704 flat_state,
705 inputs_state_indices,
706 prevent_initial_call,
707 background=background,
708 manager=manager,
709 dynamic_creator=allow_dynamic_callbacks,
710 running=running,
711 no_output=not has_output,
712 optional=_kwargs.get("optional", False),
713 hidden=_kwargs.get("hidden", None),
714 websocket=_kwargs.get("websocket", False),
715 persistent=_kwargs.get("persistent", False),

Callers 1

callbackFunction · 0.85

Calls 6

flatten_groupingFunction · 0.85
make_grouping_by_indexFunction · 0.85
grouping_lenFunction · 0.85
insert_callbackFunction · 0.85
getMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…