@mui/internal-docs-infra
Version:
MUI Infra - internal documentation creation tools.
38 lines (37 loc) • 1.17 kB
JavaScript
import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
/**
* Utility function for creating StackBlitz demos
* Returns the configuration that can be used with openWithForm
*/
/**
* Create StackBlitz configuration for use with openWithForm
*/
export function createStackBlitz(_ref) {
var title = _ref.title,
description = _ref.description,
flattenedFiles = _ref.flattenedFiles,
rootFile = _ref.rootFile;
// Convert flattened files to string format
var files = {};
Object.entries(flattenedFiles).forEach(function (_ref2) {
var _ref3 = _slicedToArray(_ref2, 2),
filePath = _ref3[0],
fileData = _ref3[1];
files[filePath] = fileData.source;
});
var formData = {
'project[template]': 'node',
'project[title]': title,
'project[description]': "# ".concat(title, "\n").concat(description)
};
Object.entries(files).forEach(function (_ref4) {
var _ref5 = _slicedToArray(_ref4, 2),
key = _ref5[0],
value = _ref5[1];
formData["project[files][".concat(key, "]")] = value;
});
return {
url: "https://stackblitz.com/run?file=".concat(rootFile),
formData: formData
};
}