MCPcopy Index your code
hub / github.com/plotly/dash / getCallbackByOutput

Function getCallbackByOutput

dash/dash-renderer/src/actions/dependencies.js:1106–1140  ·  view source on GitHub ↗
(graphs, paths, id, prop)

Source from the content-addressed store, hash-verified

1104 * }
1105 */
1106function getCallbackByOutput(graphs, paths, id, prop) {
1107 let resolve;
1108 let callback;
1109 let anyVals = '';
1110 if (typeof id === 'string') {
1111 // standard id version
1112 const callbacks = (graphs.outputMap[id] || {})[prop];
1113 if (callbacks) {
1114 callback = callbacks[0];
1115 resolve = resolveDeps();
1116 }
1117 } else {
1118 // wildcard version
1119 const keys = Object.keys(id).sort();
1120 const vals = props(keys, id);
1121 const keyStr = keys.join(',');
1122 const patterns = (graphs.outputPatterns[keyStr] || {})[prop];
1123 if (patterns) {
1124 for (let i = 0; i < patterns.length; i++) {
1125 const patternVals = patterns[i].values;
1126 if (idMatch(keys, vals, patternVals)) {
1127 callback = patterns[i].callbacks[0];
1128 resolve = resolveDeps(keys, vals, patternVals);
1129 anyVals = getAnyVals(patternVals, vals);
1130 break;
1131 }
1132 }
1133 }
1134 }
1135 if (!resolve) {
1136 return false;
1137 }
1138
1139 return makeResolvedCallback(callback, resolve, anyVals);
1140}
1141
1142function addResolvedFromOutputs(callback, outPattern, outs, matches) {
1143 const out0Keys = Object.keys(outPattern.id).sort();

Callers 1

handleOneIdFunction · 0.85

Calls 6

resolveDepsFunction · 0.90
makeResolvedCallbackFunction · 0.90
idMatchFunction · 0.85
getAnyValsFunction · 0.85
keysMethod · 0.80
sortMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…