var lesson = {
	files: [
		{
			name: "main",
			content: "import { render } from \"solid-js/web\";\nimport { createSignal, batch } from \"solid-js\";\n\nconst App = () => {\n  const [firstName, setFirstName] = createSignal(\"John\");\n  const [lastName, setLastName] = createSignal(\"Smith\");\n  const fullName = () => {\n    console.log(\"Running FullName\");\n    return `${firstName()} ${lastName()}`\n  } \n  const updateNames = () => {\n    console.log(\"Button Clicked\");\n    setFirstName(firstName() + \"n\");\n    setLastName(lastName() + \"!\");\n  }\n  \n  return <button onClick={updateNames}>My name is {fullName()}</button>\n};\n\nrender(App, document.getElementById(\"app\"));\n"
		}
	]
};
var solved = {
	files: [
		{
			name: "main",
			content: "import { render } from \"solid-js/web\";\nimport { createSignal, batch } from \"solid-js\";\n\nconst App = () => {\n  const [firstName, setFirstName] = createSignal(\"John\");\n  const [lastName, setLastName] = createSignal(\"Smith\");\n  const fullName = () => {\n    console.log(\"Running FullName\");\n    return `${firstName()} ${lastName()}`\n  } \n  const updateNames = () => {\n    console.log(\"Button Clicked\");\n    batch(() => {\n      setFirstName(firstName() + \"n\");\n      setLastName(lastName() + \"!\");\n    })\n  }\n  \n  return <button onClick={updateNames}>My name is {fullName()}</button>\n};\n\nrender(App, document.getElementById(\"app\"));\n"
		}
	]
};
var markdown = "Solids Reaktivität ist synchron, was bedeutet, dass das DOM in der nächsten Zeile nach eine Änderung bereits aktualisiert wurde. Und meistens ist das so auch genau richtig, da Solids granulares Rendering nur eine Weiterleitung der Aktualisierungen im reaktiven System ist. Unzusammenhängende Änderungen, die jeweils etwas rendern sind nicht notwendigerweise verschwendete Mühe.\n\nAber was, wenn die Änderungen zusammengehören? Solids `batch`-Helfer erlaubt es uns, mehrere Änderungen einzureihen, um sie dann alle zusammen auszuführen, bevor die Beobachter benachrichtig werden. Innerhalb dieser Reihe werden aktualisierte Signale nicht weitergeleitet, bis sie fertig ist.\n\nIn diesem Beispiel weisen wir beide Namen beim Klick auf den Knopf zu und das löst das aktualisierte Rendering zwei mal aus. Man kann die Log-Einträge in der Konsole sehen, wenn man den Knopf drückt. Also schachteln wir die `set`-Aufrufe in eine batch.\n\n```js\n const updateNames = () => {\n    console.log(\"Button Clicked\");\n    batch(() => {\n      setFirstName(firstName() + \"n\");\n      setLastName(lastName() + \"!\");\n    })\n  }\n```\nUnd das war's schon. Jetzt aktualisieren wir nur noch einmal für beide Änderungen.";
var reactivity_batch = {
	lesson: lesson,
	solved: solved,
	markdown: markdown
};

export { reactivity_batch as default, lesson, markdown, solved };
