Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
async refreshCallStack(levels: ?number): Promise {
if (!this.stopped) {
return;
}
const supportsDelayLoading =
nullthrows(this.process).session.capabilities
.supportsDelayedStackTraceLoading === true;
this._refreshInProgress = true;
try {
if (supportsDelayLoading) {
const start = this._callStack.callFrames.length;
const callStack = await this._getCallStackImpl(start, levels);
if (start < this._callStack.callFrames.length) {
// Set the stack frames for exact position we requested.
// To make sure no concurrent requests create duplicate stack frames #30660
this._callStack.callFrames.splice(
start,
this._callStack.callFrames.length - start,
);
}
this._callStack.callFrames = this._callStack.callFrames.concat(
handleResponse(data: WorkerResponse): void {
let idx = nullthrows(data.idx);
let contentType = data.contentType;
let content = data.content;
let call = nullthrows(this.responseQueue.get(idx));
if (contentType === 'error') {
invariant(typeof content !== 'string');
call.reject(new ThrowableDiagnostic({diagnostic: content}));
} else {
call.resolve(content);
}
this.responseQueue.delete(idx);
// Process the next call
this.processQueue();
}
filePath,
pipelineName,
);
let pipeline = {
id: transformers.map(t => t.name).join(':'),
transformers: transformers.map(transformer => ({
name: transformer.name,
config: configs.get(transformer.name)?.result,
plugin: transformer.plugin,
})),
configs,
options: this.options,
resolverRunner: new ResolverRunner({
config: new ParcelConfig(
nullthrows(nullthrows(configs.get('parcel')).result),
this.options.packageManager,
),
options: this.options,
}),
pluginOptions: new PluginOptions(this.options),
workerApi: this.workerApi,
};
return pipeline;
}
function getActiveTextEditor(): atom$TextEditor {
return nullthrows(atom.workspace.getActiveTextEditor());
}
className={classNames(
classes.root,
{[classes.disabled]: disabled},
{[classes.hasError]: hasError},
className,
)}>
{label && (
)}
{children}
{(helpText || (hasError && errorText)) && (
)}
{!helpText && !hasError && hasSpacer && (
<div>
)}
</div>
);
};
async loadPluginConfig({
plugin,
env,
isSource,
filePath,
meta: {parcelConfigPath},
}: ConfigRequestDesc) {
let config = createConfig({
isSource,
searchPath: filePath,
env,
});
invariant(typeof parcelConfigPath === 'string');
let pluginInstance = await loadPlugin(
this.options.packageManager,
nullthrows(plugin),
parcelConfigPath,
);
if (pluginInstance.loadConfig != null) {
await pluginInstance.loadConfig({
config: new Config(config, this.options),
options: this.options,
logger: new PluginLogger({origin: nullthrows(plugin)}),
});
}
return config;
}
}
getRequestNode(id: string) {
let node = nullthrows(this.getNode(id));
invariant(node.type === 'request');
return node;
}
setNativeProps(nativeProps: NativeProps) {
const nativeVideo = nullthrows(this._nativeRef.current);
nativeVideo.setNativeProps(nativeProps);
}
let config = createConfig({
isSource,
searchPath: filePath,
env,
});
invariant(typeof parcelConfigPath === 'string');
let pluginInstance = await loadPlugin(
this.options.packageManager,
nullthrows(plugin),
parcelConfigPath,
);
if (pluginInstance.loadConfig != null) {
await pluginInstance.loadConfig({
config: new Config(config, this.options),
options: this.options,
logger: new PluginLogger({origin: nullthrows(plugin)}),
});
}
return config;
}
}
let binding = path.scope.getBinding(defaultExport);
let insertPath = path;
if (binding && !binding.constant) {
insertPath =
binding.constantViolations[binding.constantViolations.length - 1];
}
insertPath.insertAfter(
t.exportDefaultDeclaration(t.identifier(defaultExport)),
);
}
if (exportedIds.length > 0) {
let specifiers = [];
for (let id of exportedIds) {
let exportName = nullthrows(exportedIdentifiers.get(id));
rename(path.scope, id, exportName);
exported.add(exportName);
specifiers.push(
t.exportSpecifier(
t.identifier(exportName),
t.identifier(exportName),
),
);
}
path.insertAfter(t.exportNamedDeclaration(null, specifiers));
}
}
},
});