export function processResult()

in packages/playground/src/playground.ts [1195:1262]


    export function processResult(value: IProcessResult) {

        var result = value.result;

        resetDownload();

        processed.html = value.html || '';

        setProcessedModel(null);

        //see if output is either a Node module, or a MakerJs.IModel
        if (typeof result === 'function') {

            processed.kit = result;
            populateParams(processed.kit.metaParameters);

            if (value.paramValues) {
                setParamValues(value.paramValues, false);
            }

            function enableKit() {
                paramsDiv.removeAttribute('disabled');
            }

            function setKitOnMainThread() {
                constructOnMainThread(enableKit);
            }

            if (useWorkerThreads && Worker) {

                constructInWorker(
                    codeMirrorEditor.getDoc().getValue(),
                    value.orderedDependencies,
                    function (model: MakerJs.IModel) {
                        enableKit();
                        setProcessedModel(model);
                    },
                    setKitOnMainThread
                );

            } else {
                setKitOnMainThread();
            }


        } else if (makerjs.isModel(result)) {
            processed.kit = null;
            populateParams(null);

            setProcessedModel(result);

        } else if (isIJavaScriptErrorDetails(result)) {

            //render script error
            highlightCodeError(result as IJavaScriptErrorDetails);

            if (onViewportChange) {
                onViewportChange();
            }
        } else {
            render();

            if (onViewportChange) {
                onViewportChange();
            }
        }

    }