(undefined)\n\n\tconst seed = BigInt(model.get(new Path(['generator', 'seed'])))\n\tconst octaves = getOctaves(model.get(new Path(['generator', 'settings'])))\n\tconst state = calculateState(data, octaves)\n\tconst type: string = data.type?.replace(/^minecraft:/, '')\n\n\tconst { canvas, redraw } = useCanvas({\n\t\tsize() {\n\t\t\treturn [200 / res.current, 200 / res.current]\n\t\t},\n\t\tasync draw(img) {\n\t\t\tconst options = { octaves, biomeColors: {}, offset: offset.current, scale, seed, res: res.current, version }\n\t\t\tawait biomeMap(data, img, options)\n\t\t\tif (res.current === 4) {\n\t\t\t\tclearTimeout(refineTimeout.current)\n\t\t\t\trefineTimeout.current = setTimeout(() => {\n\t\t\t\t\tres.current = 1\n\t\t\t\t\tredraw()\n\t\t\t\t}, 150)\n\t\t\t}\n\t\t},\n\t\tasync onDrag(dx, dy) {\n\t\t\toffset.current[0] = offset.current[0] + dx * 200\n\t\t\toffset.current[1] = offset.current[1] + dy * 200\n\t\t\tclearTimeout(refineTimeout.current)\n\t\t\tres.current = type === 'multi_noise' ? 4 : 1\n\t\t\tredraw()\n\t\t},\n\t\tasync onHover(x, y) {\n\t\t\tconst options = { octaves, biomeColors: {}, offset: offset.current, scale, seed, res: 1, version }\n\t\t\tconst biome = await getBiome(data, Math.floor(x * 200), Math.floor(y * 200), options)\n\t\t\tsetFocused(biome)\n\t\t},\n\t\tonLeave() {\n\t\t\tsetFocused(undefined)\n\t\t},\n\t}, [state, scale, seed])\n\n\tuseEffect(() => {\n\t\tif (shown) {\n\t\t\tres.current = type === 'multi_noise' ? 4 : 1\n\t\t\tredraw()\n\t\t}\n\t}, [state, scale, seed, shown])\n\n\tconst changeScale = (newScale: number) => {\n\t\toffset.current[0] = offset.current[0] * scale / newScale\n\t\toffset.current[1] = offset.current[1] * scale / newScale\n\t\tsetScale(newScale)\n\t}\n\n\treturn <>\n\t\t\n\t\t\t{focused && }\n\t\t\t{(type === 'multi_noise' || type === 'checkerboard') && <>\n\t\t\t\t changeScale(scale * 1.5)} />\n\t\t\t\t changeScale(scale / 1.5)} />\n\t\t\t>}\n\t\t\t{type === 'multi_noise' &&\n\t\t\t\t newSeed(model)} />}\n\t\t
\n\t\t\n\t>\n}\n\nfunction calculateState(data: any, octaves: NoiseOctaves) {\n\treturn JSON.stringify([data, octaves])\n}\n\nfunction getOctaves(obj: any): NoiseOctaves {\n\tif (typeof obj === 'string') {\n\t\tswitch (obj.replace(/^minecraft:/, '')) {\n\t\t\tcase 'overworld':\n\t\t\tcase 'amplified':\n\t\t\t\treturn {\n\t\t\t\t\ttemperature: { firstOctave: -9, amplitudes: [1.5, 0, 1, 0, 0, 0] },\n\t\t\t\t\thumidity: { firstOctave: -7, amplitudes: [1, 1, 0, 0, 0, 0] },\n\t\t\t\t\tcontinentalness: { firstOctave: -9, amplitudes: [1, 1, 2, 2, 2, 1, 1, 1, 1] },\n\t\t\t\t\terosion: { firstOctave: -9, amplitudes: [1, 1, 0, 1, 1] },\n\t\t\t\t\tweirdness: { firstOctave: -7, amplitudes: [1, 2, 1, 0, 0, 0] },\n\t\t\t\t\tshift: { firstOctave: -3, amplitudes: [1, 1, 1, 0] },\n\t\t\t\t}\n\t\t\tcase 'end':\n\t\t\tcase 'floating_islands':\n\t\t\t\treturn {\n\t\t\t\t\ttemperature: { firstOctave: 0, amplitudes: [0] },\n\t\t\t\t\thumidity: { firstOctave: 0, amplitudes: [0] },\n\t\t\t\t\tcontinentalness: { firstOctave: 0, amplitudes: [0] },\n\t\t\t\t\terosion: { firstOctave: 0, amplitudes: [0] },\n\t\t\t\t\tweirdness: { firstOctave: 0, amplitudes: [0] },\n\t\t\t\t\tshift: { firstOctave: 0, amplitudes: [0] },\n\t\t\t\t}\n\t\t\tdefault:\n\t\t\t\treturn {\n\t\t\t\t\ttemperature: { firstOctave: -7, amplitudes: [1, 1] },\n\t\t\t\t\thumidity: { firstOctave: -7, amplitudes: [1, 1] },\n\t\t\t\t\tcontinentalness: { firstOctave: -7, amplitudes: [1, 1] },\n\t\t\t\t\terosion: { firstOctave: -7, amplitudes: [1, 1] },\n\t\t\t\t\tweirdness: { firstOctave: -7, amplitudes: [1, 1] },\n\t\t\t\t\tshift: { firstOctave: 0, amplitudes: [0] },\n\t\t\t\t}\n\t\t}\n\t}\n\treturn NoiseGeneratorSettings.fromJson(obj).octaves\n}\n","import { useEffect, useState } from 'preact/hooks'\nimport type { PreviewProps } from '.'\nimport { Btn } from '..'\nimport { useCanvas } from '../../hooks'\nimport { decorator } from '../../previews'\nimport { randomSeed } from '../../Utils'\n\nexport const DecoratorPreview = ({ data, version, shown }: PreviewProps) => {\n\tconst [scale, setScale] = useState(4)\n\tconst [seed, setSeed] = useState(randomSeed())\n\n\tconst { canvas, redraw } = useCanvas({\n\t\tsize() {\n\t\t\treturn [scale * 16, scale * 16]\n\t\t},\n\t\tasync draw(img) {\n\t\t\tdecorator(data, img, { seed, version, size: [scale * 16, 128, scale * 16] })\n\t\t},\n\t})\n\n\tconst state = JSON.stringify(data)\n\tuseEffect(() => {\n\t\tif (shown) {\n\t\t\tredraw()\n\t\t}\n\t}, [state, scale, seed, shown])\n\n\treturn <>\n\t\t\n\t\t\t setScale(Math.min(16, scale + 1))} />\n\t\t\t setScale(Math.max(1, scale - 1))} />\n\t\t\t setSeed(randomSeed())} />\n\t\t
\n\t\t\n\t>\n}\n","import { useEffect, useRef, useState } from 'preact/hooks'\nimport type { PreviewProps } from '.'\nimport { Btn, BtnInput, BtnMenu } from '..'\nimport { useCanvas } from '../../hooks'\nimport { locale } from '../../Locales'\nimport { noiseSettings } from '../../previews'\nimport { checkVersion } from '../../Schemas'\nimport { randomSeed } from '../../Utils'\n\nexport const NoiseSettingsPreview = ({ lang, data, shown, version }: PreviewProps) => {\n\tconst loc = locale.bind(null, lang)\n\tconst [seed, setSeed] = useState(randomSeed())\n\tconst [biomeFactor, setBiomeFactor] = useState(0.2)\n\tconst [biomeOffset, setBiomeOffset] = useState(0.1)\n\tconst [biomePeaks, setBiomePeaks] = useState(0)\n\tconst [focused, setFocused] = useState(undefined)\n\tconst offset = useRef(0)\n\tconst state = JSON.stringify([data, biomeFactor, biomeOffset, biomePeaks])\n\n\tconst hasPeaks = checkVersion(version, '1.18')\n\tuseEffect(() => {\n\t\tsetBiomeFactor(hasPeaks ? 600 : 0.2)\n\t\tsetBiomeOffset(hasPeaks ? 0.05 : 0.1)\n\t}, [hasPeaks])\n\n\tconst size = data?.noise?.height ?? 256\n\tconst { canvas, redraw } = useCanvas({\n\t\tsize() {\n\t\t\treturn [size, size]\n\t\t},\n\t\tasync draw(img) {\n\t\t\tconst options = { biomeOffset, biomeFactor, biomePeaks, offset: offset.current, width: img.width, seed, version }\n\t\t\tnoiseSettings(data, img, options)\n\t\t},\n\t\tasync onDrag(dx) {\n\t\t\toffset.current += dx * size\n\t\t\tredraw()\n\t\t},\n\t\tasync onHover(_, y) {\n\t\t\tconst worldY = size - Math.max(1, Math.ceil(y * size)) + (data?.noise?.min_y ?? 0)\n\t\t\tsetFocused(`${worldY}`)\n\t\t},\n\t\tonLeave() {\n\t\t\tsetFocused(undefined)\n\t\t},\n\t}, [state, seed])\n\n\tuseEffect(() => {\n\t\tif (shown) {\n\t\t\tredraw()\n\t\t}\n\t}, [state, seed, shown])\n\n\treturn <>\n\t\t\n\t\t\t{focused && }\n\t\t\t\n\t\t\t\t{hasPeaks ? <>\n\t\t\t\t\t setBiomeFactor(Number(v))} />\n\t\t\t\t\t setBiomeOffset(Number(v))} />\n\t\t\t\t\t setBiomePeaks(Number(v))} />\n\t\t\t\t> : <>\n\t\t\t\t\t setBiomeFactor(Number(v))} />\n\t\t\t\t\t setBiomeOffset(Number(v))} />\n\t\t\t\t>}\n\t\t\t\n\t\t\t setSeed(randomSeed())} />\n\t\t
\n\t\t\n\t>\n}\n","import type { DataModel } from '@mcschema/core'\nimport { Path } from '@mcschema/core'\nimport { useState } from 'preact/hooks'\nimport { useModel } from '../hooks'\nimport type { VersionId } from '../Schemas'\nimport { BiomeSourcePreview, DecoratorPreview, NoiseSettingsPreview } from './previews'\n\nexport const HasPreview = ['dimension', 'worldgen/noise_settings', 'worldgen/configured_feature']\n\ntype PreviewPanelProps = {\n\tlang: string,\n\tmodel: DataModel | null,\n\tversion: VersionId,\n\tid: string,\n\tshown: boolean,\n\tonError: (message: string) => unknown,\n}\nexport function PreviewPanel({ lang, model, version, id, shown }: PreviewPanelProps) {\n\tconst [, setCount] = useState(0)\n\n\tuseModel(model, () => {\n\t\tsetCount(count => count + 1)\n\t})\n\n\tif (id === 'dimension' && model?.get(new Path(['generator', 'type']))?.endsWith('noise')) {\n\t\tconst data = model.get(new Path(['generator', 'biome_source']))\n\t\tif (data) return \n\t}\n\n\tif (id === 'worldgen/noise_settings' && model) {\n\t\tconst data = model.get(new Path([]))\n\t\tif (data) return \n\t}\n\n\tif (id === 'worldgen/configured_feature' && model) {\n\t\tconst data = model.get(new Path([]))\n\t\tif (data) return \n\t}\n\n\treturn <>>\n}\n","import type { Hook } from '@mcschema/core'\nimport { relativePath } from '@mcschema/core'\nimport type { BlockStateRegistry } from '../Schemas'\n\nexport type OutputProps = {\n\tblockStates: BlockStateRegistry,\n}\nexport const transformOutput: Hook<[any, OutputProps], any> = {\n\tbase({}, _, value) {\n\t\treturn value\n\t},\n\n\tchoice({ switchNode }, path, value, props) {\n\t\treturn switchNode.hook(this, path, value, props)\n\t},\n\n\tlist({ children }, path, value, props) {\n\t\tif (!Array.isArray(value)) return value\n\t\treturn value.map((obj, index) =>\n\t\t\tchildren.hook(this, path.push(index), obj.node, props)\n\t\t)\n\t},\n\n\tmap({ children, config }, path, value, props) {\n\t\tif (value === undefined) return undefined\n\t\tconst blockState = config.validation?.validator === 'block_state_map'? props.blockStates?.[relativePath(path, config.validation.params.id).get()] : null\n\t\tconst res: any = {}\n\t\tObject.keys(value).forEach(f => {\n\t\t\tif (blockState) {\n\t\t\t\tif (!Object.keys(blockState.properties ?? {}).includes(f)) return\n\t\t\t}\n\t\t\tres[f] = children.hook(this, path.push(f), value[f], props)\n\t\t})\n\t\treturn res\n\t},\n\n\tobject({ getActiveFields }, path, value, props) {\n\t\tif (value === undefined || value === null || typeof value !== 'object') {\n\t\t\treturn value\n\t\t}\n\t\tconst res: any = {}\n\t\tconst activeFields = getActiveFields(path)\n\t\tObject.keys(activeFields)\n\t\t\t.filter(k => activeFields[k].enabled(path))\n\t\t\t.forEach(f => {\n\t\t\t\tres[f] = activeFields[f].hook(this, path.push(f), value[f], props)\n\t\t\t})\n\t\treturn res\n\t},\n}\n","import type { VersionId } from './Schemas'\nimport { VersionIds } from './Schemas'\n\nexport namespace Store {\n\texport const ID_LANGUAGE = 'language'\n\texport const ID_THEME = 'theme'\n\texport const ID_VERSION = 'schema_version'\n\texport const ID_INDENT = 'indentation'\n\n\texport function getLanguage() {\n\t\treturn localStorage.getItem(ID_LANGUAGE) ?? 'en'\n\t}\n\n\texport function getTheme() {\n\t\treturn localStorage.getItem(ID_THEME) ?? 'dark'\n\t}\n\n\texport function getVersion(): VersionId {\n\t\tconst version = localStorage.getItem(ID_VERSION)\n\t\tif (version && VersionIds.includes(version as VersionId)) {\n\t\t\treturn version as VersionId\n\t\t}\n\t\treturn '1.17'\n\t}\n\n\texport function getIndent() {\n\t\treturn localStorage.getItem(ID_INDENT) ?? '2_spaces'\n\t}\n\n\texport function setLanguage(language: string | undefined) {\n\t\tif (language) localStorage.setItem(ID_LANGUAGE, language)\n\t}\n\n\texport function setTheme(theme: string | undefined) {\n\t\tif (theme) localStorage.setItem(ID_THEME, theme)\n\t}\n\n\texport function setVersion(version: VersionId | undefined) {\n\t\tif (version) localStorage.setItem(ID_VERSION, version)\n\t}\n\n\texport function setIndent(indent: string | undefined) {\n\t\tif (indent) localStorage.setItem(ID_INDENT, indent)\n\t}\n}\n","import { DataModel, ModelPath } from '@mcschema/core'\nimport { useCallback, useEffect, useRef, useState } from 'preact/hooks'\nimport { Btn, BtnMenu } from '.'\nimport { useModel } from '../hooks'\nimport { locale } from '../Locales'\nimport { transformOutput } from '../schema/transformOutput'\nimport type { BlockStateRegistry } from '../Schemas'\nimport { Store } from '../Store'\nimport { message } from '../Utils'\n\nconst OUTPUT_CHARS_LIMIT = 10000\n\nconst INDENT: Record = {\n\t'2_spaces': 2,\n\t'4_spaces': 4,\n\ttabs: '\\t',\n}\n\ntype SourcePanelProps = {\n\tlang: string,\n\tname: string,\n\tmodel: DataModel | null,\n\tblockStates: BlockStateRegistry | null,\n\tdoCopy?: number,\n\tdoDownload?: number,\n\tdoImport?: number,\n\tcopySuccess: () => unknown,\n\tonError: (message: string) => unknown,\n}\nexport function SourcePanel({ lang, name, model, blockStates, doCopy, doDownload, doImport, copySuccess, onError }: SourcePanelProps) {\n\tconst loc = locale.bind(null, lang)\n\tconst [indent, setIndent] = useState(Store.getIndent())\n\tconst source = useRef(null)\n\tconst download = useRef(null)\n\tconst retransform = useRef()\n\n\tconst getOutput = useCallback((model: DataModel, blockStates: BlockStateRegistry) => {\n\t\tconst data = model.schema.hook(transformOutput, new ModelPath(model), model.data, { blockStates })\n\t\treturn JSON.stringify(data, null, INDENT[indent]) + '\\n'\n\t}, [])\n\n\tuseEffect(() => {\n\t\tretransform.current = () => {\n\t\t\tif (!model || !blockStates) return\n\t\t\ttry {\n\t\t\t\tconst output = getOutput(model, blockStates)\n\t\t\t\tif (output.length >= OUTPUT_CHARS_LIMIT) {\n\t\t\t\t\tsource.current.value = output.slice(0, OUTPUT_CHARS_LIMIT) + `\\n\\nOutput is too large to display (+${OUTPUT_CHARS_LIMIT} chars)\\nExport to view complete output\\n\\n`\n\t\t\t\t} else {\n\t\t\t\t\tsource.current.value = output\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\tonError(`Error getting JSON output: ${message(e)}`)\n\t\t\t\tconsole.error(e)\n\t\t\t\tsource.current.value = ''\n\t\t\t}\n\t\t}\n\t})\n\n\tuseModel(model, () => {\n\t\tretransform.current()\n\t})\n\tuseEffect(() => {\n\t\tif (model) retransform.current()\n\t}, [model])\n\n\tuseEffect(() => {\n\t\tretransform.current()\n\t}, [indent])\n\n\tconst onImport = () => {\n\t\ttry {\n\t\t\tconst data = JSON.parse(source.current.value)\n\t\t\tmodel?.reset(DataModel.wrapLists(data), false)\n\t\t} catch (e) {\n\t\t\tonError(`Error importing: ${message(e)}`)\n\t\t\tconsole.error(e)\n\t\t}\n\t}\n\n\tuseEffect(() => {\n\t\tif (doCopy && model && blockStates) {\n\t\t\tnavigator.clipboard.writeText(getOutput(model, blockStates)).then(() => {\n\t\t\t\tcopySuccess()\n\t\t\t})\n\t\t}\n\t}, [doCopy])\n\n\tuseEffect(() => {\n\t\tif (doDownload && source.current && download.current) {\n\t\t\tconst content = encodeURIComponent(source.current.value)\n\t\t\tdownload.current.setAttribute('href', `data:text/json;charset=utf-8,${content}`)\n\t\t\tdownload.current.setAttribute('download', `${name}.json`)\n\t\t\tdownload.current.click()\n\t\t}\n\t}, [doDownload])\n\n\tuseEffect(() => {\n\t\tif (doImport && source.current) {\n\t\t\tsource.current.value = ''\n\t\t\tsource.current.select()\n\t\t}\n\t}, [doImport])\n\n\tconst changeIndent = (value: string) => {\n\t\tStore.setIndent(value)\n\t\tsetIndent(value)\n\t}\n\n\treturn <> \n\t\t\n\t\t\t\n\t\t\t\t{Object.entries(INDENT).map(([key]) =>\n\t\t\t\t\t changeIndent(key)}/>\n\t\t\t\t)}\n\t\t\t\n\t\t
\n\t\t\n\t\t\n\t>\n}\n","import type { ComponentChildren } from 'preact'\nimport { Icons } from './Icons'\n\ntype ToolCardProps = {\n\ttitle: string,\n\tlink: string,\n\ticon?: keyof typeof Icons,\n\tchildren?: ComponentChildren,\n}\nexport function ToolCard({ title, link, icon, children }: ToolCardProps) {\n\treturn \n\t\t{icon && Icons[icon]}\n\t\t\n\t\t\t
{title}
\n\t\t\t{children}\n\t\t\n\t\n}\n","import type { BooleanHookParams, EnumOption, Hook, INode, NumberHookParams, StringHookParams, ValidationOption } from '@mcschema/core'\nimport { DataModel, MapNode, ModelPath, ObjectNode, Path, relativePath, StringNode } from '@mcschema/core'\nimport type { ComponentChildren, JSX } from 'preact'\nimport { memo } from 'preact/compat'\nimport { Btn } from '../components'\nimport { Octicon } from '../components/Octicon'\nimport { useFocus } from '../hooks'\nimport { locale } from '../Locales'\nimport type { BlockStateRegistry } from '../Schemas'\nimport { deepEqual, hexId, newSeed } from '../Utils'\n\nconst LIST_LIMIT = 20\nconst LIST_LIMIT_SHOWN = 5\n\nconst selectRegistries = ['loot_table.type', 'loot_entry.type', 'function.function', 'condition.condition', 'criterion.trigger', 'dimension.generator.type', 'dimension.generator.biome_source.type', 'dimension.generator.biome_source.preset', 'carver.type', 'feature.type', 'decorator.type', 'feature.tree.minimum_size.type', 'block_state_provider.type', 'trunk_placer.type', 'foliage_placer.type', 'tree_decorator.type', 'int_provider.type', 'float_provider.type', 'height_provider.type', 'structure_feature.type', 'surface_builder.type', 'processor.processor_type', 'rule_test.predicate_type', 'pos_rule_test.predicate_type', 'template_element.element_type', 'block_placer.type']\nconst hiddenFields = ['number_provider.type', 'score_provider.type', 'nbt_provider.type', 'int_provider.type', 'float_provider.type', 'height_provider.type']\nconst flattenedFields = ['feature.config', 'decorator.config', 'int_provider.value', 'float_provider.value', 'block_state_provider.simple_state_provider.state', 'block_state_provider.rotated_block_provider.state', 'block_state_provider.weighted_state_provider.entries.entry.data', 'rule_test.block_state', 'structure_feature.config', 'surface_builder.config', 'template_pool.elements.entry.element', 'decorator.block_survives_filter.state']\nconst inlineFields = ['loot_entry.type', 'function.function', 'condition.condition', 'criterion.trigger', 'dimension.generator.type', 'dimension.generator.biome_source.type', 'feature.type', 'decorator.type', 'block_state_provider.type', 'feature.tree.minimum_size.type', 'trunk_placer.type', 'foliage_placer.type', 'tree_decorator.type', 'block_placer.type', 'rule_test.predicate_type', 'processor.processor_type', 'template_element.element_type', 'nbt_operation.op', 'number_provider.value', 'score_provider.name', 'score_provider.target', 'nbt_provider.source', 'nbt_provider.target', 'generator_biome.biome']\nconst nbtFields = ['function.set_nbt.tag', 'advancement.display.icon.nbt', 'text_component_object.nbt', 'entity.nbt', 'block.nbt', 'item.nbt']\nconst fixedLists = ['generator_biome.parameters.temperature', 'generator_biome.parameters.humidity', 'generator_biome.parameters.continentalness', 'generator_biome.parameters.erosion', 'generator_biome.parameters.depth', 'generator_biome.parameters.weirdness', 'feature.end_spike.crystal_beam_target', 'feature.end_gateway.exit', 'decorator.block_filter.offset']\n\n/**\n * Secondary model used to remember the keys of a map\n */\nconst keysModel = new DataModel(MapNode(\n\tStringNode(),\n\tStringNode()\n), { historyMax: 0 })\n\ntype JSXTriple = [JSX.Element | null, JSX.Element | null, JSX.Element | null]\ntype RenderHook = Hook<[any, string, BlockStateRegistry], JSXTriple>\n\ntype NodeProps = T & {\n\tnode: INode,\n\tpath: ModelPath,\n\tvalue: any,\n\tlang: string,\n\tstates: BlockStateRegistry,\n}\n\n/**\n * Renders the node and handles events to update the model\n * @returns string HTML representation of this node using the given data\n */\nexport const renderHtml: RenderHook = {\n\tbase() {\n\t\treturn [null, null, null]\n\t},\n\n\tboolean(params, path, value, lang, states) {\n\t\treturn [null, , null]\n\t},\n\n\tchoice({ choices, config, switchNode }, path, value, lang, states) {\n\t\tconst choice = switchNode.activeCase(path, true) as typeof choices[number]\n\t\tconst contextPath = (config?.context) ? new ModelPath(path.getModel(), new Path(path.getArray(), [config.context])) : path\n\t\tconst [prefix, suffix, body] = choice.node.hook(this, contextPath, value, lang, states)\n\t\tif (choices.length === 1) {\n\t\t\treturn [prefix, suffix, body]\n\t\t}\n\t\tconst choiceContextPath = config?.choiceContext ? new Path([], [config.choiceContext]) : config?.context ? new Path([], [config.context]) : path\n\t\tconst set = (value: string) => {\n\t\t\tconst c = choices.find(c => c.type === value) ?? choice\n\t\t\tpath.model.set(path, c.change ? c.change(value, { wrapLists: true }) : DataModel.wrapLists(c.node.default()))\n\t\t}\n\t\tconst inject = \n\t\treturn [prefix, <>{inject}{suffix}>, body]\n\t},\n\n\tlist({ children, config }, path, value, lang, states) {\n\t\tconst context = path.getContext().join('.')\n\t\tif (fixedLists.includes(context)) {\n\t\t\tconst prefix = <>\n\t\t\t\t{[...Array(config.maxLength!)].map((_, i) =>\n\t\t\t\t\t)}\n\t\t\t\t\n\t\t\t>\n\t\t\tconst suffix = <>{[...Array(config.maxLength)].map((_, i) => {\n\t\t\t\tconst child = children.hook(this, path.modelPush(i), value?.[i]?.node, lang, states)\n\t\t\t\treturn child[1]\n\t\t\t})}>\n\t\t\treturn [prefix, suffix, null]\n\t\t}\n\n\t\tconst onAdd = () => {\n\t\t\tif (!Array.isArray(value)) value = []\n\t\t\tconst node = DataModel.wrapLists(children.default())\n\t\t\tpath.model.set(path, [{ node, id: hexId() }, ...value])\n\t\t}\n\t\tconst onAddBottom = () => {\n\t\t\tif (!Array.isArray(value)) value = []\n\t\t\tconst node = DataModel.wrapLists(children.default())\n\t\t\tpath.model.set(path, [...value, { node, id: hexId() }])\n\t\t}\n\t\tconst suffix = \n\t\tconst body = <>\n\t\t\t{(value && Array.isArray(value)) && value.map(({ node: cValue, id: cId }, index) => {\n\t\t\t\tif (value.length > LIST_LIMIT && index >= LIST_LIMIT_SHOWN && index < value.length - LIST_LIMIT_SHOWN) {\n\t\t\t\t\tif (index === LIST_LIMIT_SHOWN) {\n\t\t\t\t\t\treturn {value.length - LIST_LIMIT} hidden entries...\n\t\t\t\t\t}\n\t\t\t\t\treturn null\n\t\t\t\t}\n\t\t\t\tconst cPath = path.push(index).contextPush('entry')\n\t\t\t\tconst onRemove = () => cPath.set(undefined)\n\t\t\t\tconst onMoveUp = () => {\n\t\t\t\t\tconst v = [...path.get()];\n\t\t\t\t\t[v[index - 1], v[index]] = [v[index], v[index - 1]]\n\t\t\t\t\tpath.model.set(path, v)\n\t\t\t\t}\n\t\t\t\tconst onMoveDown = () => {\n\t\t\t\t\tconst v = [...path.get()];\n\t\t\t\t\t[v[index + 1], v[index]] = [v[index], v[index + 1]]\n\t\t\t\t\tpath.model.set(path, v)\n\t\t\t\t}\n\t\t\t\treturn \n\t\t\t\t\t\n\t\t\t\t\t{value.length > 1 && \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t
}\n\t\t\t\t\n\t\t\t})}\n\t\t\t{(value && value.length > 2) && \n\t\t\t\t\n\t\t\t
}\n\t\t>\n\t\treturn [null, suffix, body]\n\t},\n\n\tmap({ children, keys, config }, path, value, lang, states) {\n\t\tconst keyPath = new ModelPath(keysModel, new Path([hashString(path.toString())]))\n\t\tconst onAdd = () => {\n\t\t\tconst key = keyPath.get()\n\t\t\tpath.model.set(path.push(key), DataModel.wrapLists(children.default()))\n\t\t}\n\t\tconst blockState = config.validation?.validator === 'block_state_map' ? states?.[relativePath(path, config.validation.params.id).get()] : null\n\t\tconst keysSchema = blockState?.properties\n\t\t\t? StringNode(null!, { enum: Object.keys(blockState.properties ?? {}) })\n\t\t\t: keys\n\t\tif (blockState && path.last() === 'Properties') {\n\t\t\tif (typeof value !== 'object') value = {}\n\t\t\tconst properties = Object.entries(blockState.properties ?? {})\n\t\t\t\t.map(([key, values]) => [key, StringNode(null!, { enum: values })])\n\t\t\tObject.entries(blockState.properties ?? {}).forEach(([key, values]) => {\n\t\t\t\tif (typeof value[key] !== 'string') {\n\t\t\t\t\tpath.model.errors.add(path.push(key), 'error.expected_string')\n\t\t\t\t} else if (!values.includes(value[key])) {\n\t\t\t\t\tpath.model.errors.add(path.push(key), 'error.invalid_enum_option', value[key])\n\t\t\t\t}\n\t\t\t})\n\t\t\treturn ObjectNode(Object.fromEntries(properties)).hook(this, path, value, lang, states)\n\t\t}\n\t\tconst suffix = <>\n\t\t\t{keysSchema.hook(this, keyPath, keyPath.get() ?? '', lang, states)[1]}\n\t\t\t\n\t\t>\n\t\tconst body = <>\n\t\t\t{typeof value === 'object' && Object.entries(value).map(([key, cValue]) => {\n\t\t\t\tconst cPath = path.modelPush(key)\n\t\t\t\tconst cSchema = blockState\n\t\t\t\t\t? StringNode(null!, { enum: blockState.properties?.[key] ?? [] })\n\t\t\t\t\t: children\n\t\t\t\tif (blockState?.properties?.[key] && typeof cValue === 'string'\n\t\t\t\t\t&& !blockState.properties?.[key].includes(cValue)) {\n\t\t\t\t\tpath.model.errors.add(cPath, 'error.invalid_enum_option', cValue)\n\t\t\t\t}\n\t\t\t\tconst onRemove = () => cPath.set(undefined)\n\t\t\t\treturn \n\t\t\t\t\t\n\t\t\t\t\n\t\t\t})}\n\t\t>\n\t\treturn [null, suffix, body]\n\t},\n\n\tnumber(params, path, value, lang, states) {\n\t\treturn [null, , null]\n\t},\n\n\tobject({ node, getActiveFields, getChildModelPath }, path, value, lang, states) {\n\t\tlet prefix: JSX.Element | null = null\n\t\tlet suffix: JSX.Element | null = null\n\t\tif (node.optional()) {\n\t\t\tif (value === undefined) {\n\t\t\t\tconst onExpand = () => path.set(DataModel.wrapLists(node.default()))\n\t\t\t\tsuffix = \n\t\t\t} else {\n\t\t\t\tconst onCollapse = () => path.set(undefined)\n\t\t\t\tsuffix = \n\t\t\t}\n\t\t}\n\t\tconst body = <>\n\t\t\t{(typeof value === 'object' && value !== null && !(node.optional() && value === undefined)) &&\n\t\t\t\tObject.entries(getActiveFields(path))\n\t\t\t\t\t.filter(([_, child]) => child.enabled(path))\n\t\t\t\t\t.map(([key, child]) => {\n\t\t\t\t\t\tconst cPath = getChildModelPath(path, key)\n\t\t\t\t\t\tconst context = cPath.getContext().join('.')\n\t\t\t\t\t\tif (hiddenFields.includes(context)) return null\n\t\t\t\t\t\tconst [cPrefix, cSuffix, cBody] = child.hook(this, cPath, value[key], lang, states)\n\t\t\t\t\t\tif (!cPrefix && !cSuffix && !((cBody?.props?.children?.length ?? 0) > 0)) return null\n\t\t\t\t\t\tconst isFlattened = child.type(cPath) === 'object' && flattenedFields.includes(context)\n\t\t\t\t\t\tconst isInlined = inlineFields.includes(context)\n\t\t\t\t\t\tif (isFlattened || isInlined) {\n\t\t\t\t\t\t\tprefix = <>{prefix}{cPrefix}>\n\t\t\t\t\t\t\tsuffix = <>{suffix}{cSuffix}>\n\t\t\t\t\t\t\treturn isFlattened ? cBody : null\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn \n\t\t\t\t\t})\n\t\t\t}\n\t\t>\n\t\treturn [prefix, suffix, body]\n\t},\n\n\tstring(params, path, value, lang, states) {\n\t\treturn [null, , null]\n\t},\n}\n\nfunction BooleanSuffix({ path, node, value, lang }: NodeProps) {\n\tconst set = (target: boolean) => {\n\t\tpath.model.set(path, node.optional() && value === target ? undefined : target)\n\t}\n\treturn <>\n\t\t\n\t\t\n\t>\n}\n\nfunction NumberSuffix({ path, config, integer, value }: NodeProps) {\n\tconst onChange = (evt: Event) => {\n\t\tconst value = (evt.target as HTMLInputElement).value\n\t\tconst parsed = integer ? parseInt(value) : parseFloat(value)\n\t\tif (value.length > 0 && !value.match(/\\.0*$/)) {\n\t\t\tpath.model.set(path, parsed)\n\t\t}\n\t}\n\tconst onBlur = (evt: Event) => {\n\t\tconst value = (evt.target as HTMLInputElement).value\n\t\tconst parsed = integer ? parseInt(value) : parseFloat(value)\n\t\tpath.model.set(path, parsed)\n\t}\n\tconst onColor = (evt: Event) => {\n\t\tconst value = (evt.target as HTMLInputElement).value\n\t\tconst parsed = parseInt(value.slice(1), 16)\n\t\tpath.model.set(path, parsed)\n\t}\n\treturn <>\n\t\t\n\t\t{config?.color && }\n\t\t{path.equals(new Path(['generator', 'seed'])) && }\n\t>\n}\n\nfunction StringSuffix({ path, getValues, config, node, value, lang, states }: NodeProps) {\n\tconst onChange = (evt: Event) => {\n\t\tconst newValue = (evt.target as HTMLSelectElement).value\n\t\tpath.model.set(path, newValue.length === 0 ? undefined : newValue)\n\t\tevt.stopPropagation()\n\t}\n\tconst values = getValues()\n\tconst context = path.getContext().join('.')\n\tif (nbtFields.includes(context)) {\n\t\treturn \n\t} else if ((isEnum(config) && !config.additional) || selectRegistries.includes(context)) {\n\t\tlet context = new Path([])\n\t\tif (isEnum(config) && typeof config.enum === 'string') {\n\t\t\tcontext = context.contextPush(config.enum)\n\t\t} else if (!isEnum(config) && config?.validator === 'resource' && typeof config.params.pool === 'string') {\n\t\t\tcontext = context.contextPush(config.params.pool)\n\t\t}\n\t\treturn \n\t} else if (!isEnum(config) && config?.validator === 'block_state_key') {\n\t\tconst blockState = states?.[relativePath(path, config.params.id).get()]\n\t\tconst values = Object.keys(blockState?.properties ?? {})\n\t\treturn \n\t} else {\n\t\tconst datalistId = hexId()\n\t\treturn <>\n\t\t\t 0 ? datalistId : ''} />\n\t\t\t{values.length > 0 && }\n\t\t>\n\t}\n}\n\ntype TreeNodeProps = {\n\tschema: INode,\n\tpath: ModelPath,\n\tvalue: any,\n\tlang: string,\n\tstates: BlockStateRegistry,\n\tcompare?: any,\n\tlabel?: string,\n\tchildren?: ComponentChildren,\n\tcontext?: number,\n}\nfunction TreeNode({ label, schema, path, value, lang, states, children }: TreeNodeProps) {\n\tconst type = schema.type(path)\n\tconst category = schema.category(path)\n\tconst context = path.getContext().join('.')\n\n\tconst [active, setActive] = useFocus()\n\tconst onContextMenu = (evt: MouseEvent) => {\n\t\tevt.preventDefault()\n\t\tsetActive()\n\t}\n\n\tconst [prefix, suffix, body] = schema.hook(renderHtml, path, value, lang, states)\n\treturn \n\t\t\n\t\t{body &&
{body}
}\n\t
\n}\n\nconst MemoedTreeNode = memo(TreeNode, (prev, next) => {\n\treturn deepEqual(prev.value, next.value)\n\t\t&& prev.path.equals(next.path)\n\t\t&& prev.schema === next.schema\n\t\t&& prev.lang === next.lang\n\t\t&& prev.context === next.context\n})\n\nfunction isEnum(value?: ValidationOption | EnumOption): value is EnumOption {\n\treturn !!(value as any)?.enum\n}\n\nfunction hashString(str: string) {\n\tvar hash = 0, i, chr\n\tfor (i = 0; i < str.length; i++) {\n\t\tchr = str.charCodeAt(i)\n\t\thash = ((hash << 5) - hash) + chr\n\t\thash |= 0\n\t}\n\treturn hash\n}\n\nfunction pathLocale(lang: string, path: Path, ...params: string[]) {\n\tconst ctx = path.getContext()\n\tfor (let i = 0; i < ctx.length; i += 1) {\n\t\tconst key = ctx.slice(i).join('.')\n\t\tconst result = locale(lang, key, ...params)\n\t\tif (key !== result) {\n\t\t\treturn result\n\t\t}\n\t}\n\treturn ctx[ctx.length - 1]\n}\n\nfunction ErrorPopup({ lang, path }: { lang: string, path: ModelPath }) {\n\tconst e = path.model.errors.get(path, true)\n\tif (e.length === 0) return null\n\tconst message = locale(lang, e[0].error, ...(e[0].params ?? []))\n\treturn popupIcon('node-error', 'issue_opened', message)\n}\n\nfunction HelpPopup({ lang, path }: { lang: string, path: Path }) {\n\tconst key = path.contextPush('help').getContext().join('.')\n\tconst message = locale(lang, key)\n\tif (message === key) return null\n\treturn popupIcon('node-help', 'info', message)\n}\n\nconst popupIcon = (type: string, icon: keyof typeof Octicon, popup: string) => {\n\tconst [active, setActive] = useFocus()\n\n\treturn \n\t\t{Octicon[icon]}\n\t\t\n\t
\n}\n","import type { DataModel } from '@mcschema/core'\nimport { ModelPath } from '@mcschema/core'\nimport type { JSX } from 'preact'\nimport { useErrorBoundary, useMemo, useRef, useState } from 'preact/hooks'\nimport rfdc from 'rfdc'\nimport { useModel } from '../hooks'\nimport { renderHtml } from '../schema/renderHtml'\nimport type { BlockStateRegistry, VersionId } from '../Schemas'\nconst clone = rfdc()\n\ntype TreePanelProps = {\n\tlang: string,\n\tversion: VersionId,\n\tmodel: DataModel | null,\n\tblockStates: BlockStateRegistry | null,\n\tonError: (message: string) => unknown,\n}\nexport function Tree({ lang, model, blockStates, onError }: TreePanelProps) {\n\tif (!model || !blockStates) return <>>\n\n\tconst [error] = useErrorBoundary(e => {\n\t\tonError(`Error rendering the tree: ${e.message}`)\n\t\tconsole.error(e)\n\t})\n\tif (error) return <>>\n\n\tconst [state, setState] = useState(0)\n\tuseModel(model, () => {\n\t\tsetState(state => state + 1)\n\t})\n\n\tconst path = new ModelPath(model)\n\tconst tree = useRef(null)\n\tuseMemo(() => {\n\t\tconst [prefix, suffix, body] = model.schema.hook(renderHtml, path, clone(model.data), lang, blockStates)\n\t\ttree.current = suffix?.props?.children.some((c: any) => c) ? \n\t\t\t\n\t\t\t
{body}
\n\t\t
: body\n\t}, [lang, model, blockStates, state])\n\n\treturn {tree.current}
\n}\n","import { locale } from '../Locales'\n\ntype FieldSettingsProps = {\n\tlang: string,\n\tpath?: string,\n}\nexport function FieldSettings({ lang }: FieldSettingsProps) {\n\tconst loc = locale.bind(null, lang)\n\treturn \n\t\t\n\t\t\t
{loc('settings.fields.description')}
\n\t\t\t
\n\t\t
\n\t\n}\n","import { DataModel, Path } from '@mcschema/core'\nimport { getCurrentUrl } from 'preact-router'\nimport { useEffect, useErrorBoundary, useRef, useState } from 'preact/hooks'\nimport config from '../../config.json'\nimport { Analytics } from '../Analytics'\nimport { Ad, Btn, BtnInput, BtnMenu, ErrorPanel, HasPreview, Octicon, PreviewPanel, SourcePanel, Tree } from '../components'\nimport { fetchPreset } from '../DataFetcher'\nimport { useModel } from '../hooks'\nimport { locale } from '../Locales'\nimport type { BlockStateRegistry, VersionId } from '../Schemas'\nimport { checkVersion, getBlockStates, getCollections, getModel } from '../Schemas'\nimport { getGenerator } from '../Utils'\n\ntype GeneratorProps = {\n\tlang: string,\n\tchangeTitle: (title: string, versions?: VersionId[]) => unknown,\n\tversion: VersionId,\n\tonChangeVersion: (version: VersionId) => unknown,\n\tdefault?: true,\n}\nexport function Generator({ lang, changeTitle, version, onChangeVersion }: GeneratorProps) {\n\tconst loc = locale.bind(null, lang)\n\tconst [error, setError] = useState(null)\n\tconst [errorBoundary, errorRetry] = useErrorBoundary()\n\tif (errorBoundary) {\n\t\treturn \n\t}\n\n\tconst gen = getGenerator(getCurrentUrl())\n\tif (!gen) {\n\t\treturn \n\t}\n\n\tuseEffect(() => {\n\t\tsetError(null)\n\t}, [gen.id, version])\n\n\tconst allowedVersions = config.versions\n\t\t.filter(v => checkVersion(v.id, gen.minVersion))\n\t\t.map(v => v.id as VersionId)\n\n\tchangeTitle(loc('title.generator', loc(gen.id)), allowedVersions)\n\n\tif (!checkVersion(version, gen.minVersion)) {\n\t\tsetError(`The minimum version for this generator is ${gen.minVersion}`)\n\t}\n\n\tconst [model, setModel] = useState(null)\n\tconst [blockStates, setBlockStates] = useState(null)\n\tuseEffect(() => {\n\t\tsetModel(null)\n\t\tgetBlockStates(version)\n\t\t\t.then(b => setBlockStates(b))\n\t\tgetModel(version, gen.id)\n\t\t\t.then(m => setModel(m))\n\t\t\t.catch(e => { console.error(e); setError(e.message) })\n\t}, [version, gen.id])\n\n\tuseModel(model, () => {\n\t\tsetError(null)\n\t})\n\n\tconst reset = () => {\n\t\tAnalytics.generatorEvent('reset')\n\t\tmodel?.reset(DataModel.wrapLists(model.schema.default()), true)\n\t}\n\tconst undo = (e: MouseEvent) => {\n\t\te.stopPropagation()\n\t\tAnalytics.generatorEvent('undo', 'Menu')\n\t\tmodel?.undo()\n\t}\n\tconst redo = (e: MouseEvent) => {\n\t\te.stopPropagation()\n\t\tAnalytics.generatorEvent('redo', 'Menu')\n\t\tmodel?.redo()\n\t}\n\n\tconst onKeyUp = (e: KeyboardEvent) => {\n\t\tif (e.ctrlKey && e.key === 'z') {\n\t\t\tAnalytics.generatorEvent('undo', 'Hotkey')\n\t\t\tmodel?.undo()\n\t\t} else if (e.ctrlKey && e.key === 'y') {\n\t\t\tAnalytics.generatorEvent('redo', 'Hotkey')\n\t\t\tmodel?.redo()\n\t\t}\n\t}\n\tuseEffect(() => {\n\t\tdocument.addEventListener('keyup', onKeyUp)\n\t\treturn () => {\n\t\t\tdocument.removeEventListener('keyup', onKeyUp)\n\t\t}\n\t}, [model])\n\n\tconst [presetFilter, setPresetFilter] = useState('')\n\tconst [presetResults, setPresetResults] = useState([])\n\tuseEffect(() => {\n\t\tgetCollections(version)\n\t\t\t.then(collections => {\n\t\t\t\tconst terms = (presetFilter ?? '').trim().split(' ')\n\t\t\t\tconst presets = collections.get(gen.id)\n\t\t\t\t\t.map(p => p.slice(10))\n\t\t\t\t\t.filter(p => terms.every(t => p.includes(t)))\n\t\t\t\tif (presets) {\n\t\t\t\t\tsetPresetResults(presets)\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch(e => { console.error(e); setError(e.message) })\n\t}, [version, gen.id, presetFilter])\n\n\tconst loadPreset = (id: string) => {\n\t\tAnalytics.generatorEvent('load-preset', id)\n\t\tfetchPreset(version, gen.path ?? gen.id, id).then(preset => {\n\t\t\tconst seed = model?.get(new Path(['generator', 'seed']))\n\t\t\tif (preset?.generator?.seed !== undefined && seed !== undefined) {\n\t\t\t\tpreset.generator.seed = seed\n\t\t\t\tif (preset.generator.biome_source?.seed !== undefined) {\n\t\t\t\t\tpreset.generator.biome_source.seed = seed\n\t\t\t\t}\n\t\t\t}\n\t\t\tmodel?.reset(DataModel.wrapLists(preset), false)\n\t\t})\n\t}\n\n\tconst [sourceShown, setSourceShown] = useState(window.innerWidth > 820)\n\tconst [doCopy, setCopy] = useState(0)\n\tconst [doDownload, setDownload] = useState(0)\n\tconst [doImport, setImport] = useState(0)\n\n\tconst copySource = () => {\n\t\tAnalytics.generatorEvent('copy')\n\t\tsetCopy(doCopy + 1)\n\t}\n\tconst downloadSource = () => {\n\t\tAnalytics.generatorEvent('download')\n\t\tsetDownload(doDownload + 1)\n\t}\n\tconst importSource = () => {\n\t\tAnalytics.generatorEvent('import')\n\t\tsetSourceShown(true)\n\t\tsetImport(doImport + 1)\n\t}\n\tconst toggleSource = () => {\n\t\tAnalytics.generatorEvent('toggle-output', !sourceShown ? 'visible' : 'hidden')\n\t\tsetSourceShown(!sourceShown)\n\t\tsetCopy(0)\n\t\tsetDownload(0)\n\t\tsetImport(0)\n\t}\n\n\tconst [copyActive, setCopyActive] = useState(false)\n\tconst copyTimeout = useRef(undefined)\n\tconst copySuccess = () => {\n\t\tsetCopyActive(true)\n\t\tif (copyTimeout.current !== undefined) clearTimeout(copyTimeout.current)\n\t\tcopyTimeout.current = setTimeout(() => {\n\t\t\tsetCopyActive(false)\n\t\t}, 2000)\n\t}\n\n\tconst [previewShown, setPreviewShown] = useState(false)\n\tconst hasPreview = HasPreview.includes(gen.id)\n\tif (previewShown && !hasPreview) setPreviewShown(false)\n\tlet actionsShown = 1\n\tif (hasPreview) actionsShown += 1\n\tif (sourceShown) actionsShown += 2\n\n\tconst togglePreview = () => {\n\t\tAnalytics.generatorEvent('toggle-preview', !previewShown ? 'visible' : 'hidden')\n\t\tsetPreviewShown(!previewShown)\n\t}\n\n\treturn <>\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{presetResults.map(preset => loadPreset(preset)} />)}\n\t\t\t\t\t
\n\t\t\t\t\t{presetResults.length === 0 && }\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t{allowedVersions.reverse().map(v =>\n\t\t\t\t\t\t onChangeVersion(v)} />\n\t\t\t\t\t)}\n\t\t\t\t\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
\n\t\t\t{error && setError(null)} />}\n\t\t\t\n\t\t\n\t\t\n\t\t\n\t\t\n\t>\n}\n","import config from '../../config.json'\nimport { ToolCard } from '../components'\nimport { locale } from '../Locales'\nimport { cleanUrl } from '../Utils'\n\ntype HomeProps = {\n\tlang: string,\n\tchangeTitle: (title: string) => unknown,\n\tpath?: string,\n}\nexport function Home({ lang, changeTitle }: HomeProps) {\n\tconst loc = locale.bind(null, lang)\n\tchangeTitle(loc('title.home'))\n\treturn \n\t\t\n\t\t\t{config.generators.filter(g => !g.category).map(g => \n\t\t\t\t
\n\t\t\t)}\n\t\t\t
\n\t\t\t
\n\t\t\t
\n\t\t\t\tAnalyse your performance reports
\n\t\t\t\n\t\t\t
\n\t\t\t\tBrowse through and mix all the vanilla sounds
\n\t\t\t\n\t\t\t
\n\t\t\t\tConvert your 1.16 data packs to 1.17
\n\t\t\t\n\t\t
\n\t\n}\n","import config from '../../config.json'\nimport { ToolCard } from '../components'\nimport { locale } from '../Locales'\nimport { cleanUrl } from '../Utils'\n\ntype WorldgenProps = {\n\tlang: string,\n\tchangeTitle: (title: string) => unknown,\n\tpath?: string,\n}\nexport function Worldgen({ lang, changeTitle }: WorldgenProps) {\n\tconst loc = locale.bind(null, lang)\n\tchangeTitle(loc('title.generator_category', loc('worldgen')))\n\treturn \n\t\t\n\t\t\t{config.generators.filter(g => g.category === 'worldgen').map(g => \n\t\t\t\t\n\t\t\t)}\n\t\t
\n\t\n}\n","import { render } from 'preact'\nimport type { RouterOnChangeArgs } from 'preact-router'\nimport { Router } from 'preact-router'\nimport { useEffect, useState } from 'preact/hooks'\nimport config from '../config.json'\nimport '../styles/global.css'\nimport '../styles/nodes.css'\nimport { Analytics } from './Analytics'\nimport { Header } from './components'\nimport { loadLocale, locale, Locales } from './Locales'\nimport { FieldSettings, Generator, Home, Worldgen } from './pages'\nimport type { VersionId } from './Schemas'\nimport { Store } from './Store'\nimport { cleanUrl } from './Utils'\n\nconst VERSIONS_IN_TITLE = 3\n\nfunction Main() {\n\tconst [lang, setLanguage] = useState('en')\n\tconst changeLanguage = async (language: string) => {\n\t\tif (!Locales[language]) {\n\t\t\tawait loadLocale(language)\n\t\t}\n\t\tAnalytics.setLanguage(language)\n\t\tStore.setLanguage(language)\n\t\tsetLanguage(language)\n\t}\n\tuseEffect(() => {\n\t\t(async () => {\n\t\t\tconst target = Store.getLanguage()\n\t\t\tawait Promise.all([\n\t\t\t\tloadLocale('en'),\n\t\t\t\t...(target !== 'en' ? [loadLocale(target)] : []),\n\t\t\t])\n\t\t\tsetLanguage(target)\n\t\t})()\n\t}, [])\n\n\tconst [theme, setTheme] = useState(Store.getTheme())\n\tconst changeTheme = (theme: string) => {\n\t\tAnalytics.setTheme(theme)\n\t\tStore.setTheme(theme)\n\t\tsetTheme(theme)\n\t}\n\tuseEffect(() => {\n\t\tdocument.documentElement.setAttribute('data-theme', theme)\n\t}, [theme])\n\n\tconst [version, setVersion] = useState(Store.getVersion())\n\tconst changeVersion = (version: VersionId) => {\n\t\tAnalytics.setVersion(version)\n\t\tStore.setVersion(version)\n\t\tsetVersion(version)\n\t}\n\n\tconst [title, setTitle] = useState(locale(lang, 'title.home'))\n\tconst changeTitle = (title: string, versions?: VersionId[]) => {\n\t\tversions ??= config.versions.map(v => v.id as VersionId)\n\t\tversions.splice(0, versions.length - VERSIONS_IN_TITLE)\n\t\tdocument.title = `${title} Minecraft ${versions.join(', ')}`\n\t\tsetTitle(title)\n\t}\n\n\tconst changeRoute = (e: RouterOnChangeArgs) => {\n\t\t// Needs a timeout to ensure the title is set correctly\n\t\tsetTimeout(() => Analytics.pageview(cleanUrl(e.url)))\n\t}\n\n\treturn <>\n\t\t\n\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\n\t>\n}\n\nrender(, document.body)\n"],"names":["Analytics","type","id","getElementById","remove","window","load","data-ea-publisher","data-ea-type","class","icon","label","active","class_","onClick","Octicon","large","doSelect","value","onChange","onInput","e","value2","target","ref","useRef","current","select","stopPropagation","size","draw","onDrag","onHover","onLeave","inputs","canvas","dragStart","dragRequest","dragPending","dragBusy","onMouseDown","offsetX","offsetY","onMouseMove","x","clientWidth","y2","clientHeight","dx","dy","requestAnimationFrame","async","dx2","dy2","onMouseUp","onMouseLeave","addEventListener","body","removeEventListener","redraw","redrawCount","ctx","getContext","s2","width","height","img","getImageData","ownCount","putImageData","setActive","useState","hider","model","invalidated","listener","[object Object]","addListener","removeListener","relative","children","useFocus","Btn","Analytics2","ID_SITE","ID_GENERATOR","category","action","index","pageview","page","setLanguage","language","setTheme","theme","setVersion","version","setPreview","preview","generatorEvent","archive","xmlns","viewBox","fill-rule","d","arrow_left","arrow_right","check","chevron_down","chevron_right","chevron_up","clippy","code","dash","device_desktop","download","eye","eye_closed","gear","globe","history","info","issue_opened","kebab_horizontal","link","mark_github","moon","play","plus","plus_circle","search","sun","sync","tag","three_bars","trashcan","unfold","upload","x_circle","error","onDismiss","href","scriptRel","seen","__vitePreload","baseModule","deps","relList","document","createElement","supports","Promise","all","map","dep","isCss","endsWith","cssSelector","querySelector","rel","as","crossOrigin","head","appendChild","res","rej","then","Locales","fallback","English","key","params","replace","parseInt","match","slice","resolveLocaleParams","en","langConfig","config","languages","find","lang","data","__variableDynamicImportRuntime0__","schema","schemas","__variableDynamicImportRuntime1__","__spreadValues","default","dec2hex","dec","toString","substr","length","arr","Uint8Array","crypto","getRandomValues","Array","from","join","BigInt","Math","floor","random","Number","MAX_SAFE_INTEGER","seed","set","Path","url","replaceAll","trimmedUrl","generators","g2","str","h","abs","i","imul","charCodeAt","hashString","a2","b","c","max","min","lerp","Error","message","deepClone","rfdc","constructor","isArray","deepEqual","valueOf","Object","prototype","keys","hasOwnProperty","call","forEach","localStorage","removeItem","v","mcdataUrl","vanillaDatapackUrl","refs","hash","versionId","collectionTarget","blockStateTarget","versions","debug","JSON","stringify","dynamic","filter","getItem","r","matches","cache","caches","open","promises","request","push","delete","warn","deleteMatching","startsWith","setItem","fetchRegistries","fetchBlockStateMap","fetchDynamicRegistries","registries","checkVersion","minVersion","maxVersion","mcdata_master","getData","data2","k","entries","register","path","values","properties","states","assign","vanilla_datapack_summary","registry","versionData","vanilla_datapack_data","fetch","json","fn","cacheResponse","ok","fetchResponse","responseData","put","Response","VersionIds","Versions","Models","versionGetter","1.15","java15","1.16","java16","1.17","java17","1.18","java18","collections","getCollections","blockStates","fetchData","getSchemas","minVersionId","maxVersionId","findIndex","Themes","system","dark","light","title","changeTheme","changeLanguage","loc","locale","bind","gen","getGenerator","getCurrentUrl","Link","Icons","home","BtnMenu","route","cleanUrl","name","th","fill","rx","y","report","sounds","cx","cy","clip-rule","cacheState","biomeSourceCache","climateSamplerCache","state","options","newState","octaves","FixedBiome","biome","shift","scale","numBiomes","biomes","_y","z","preset","NetherPreset18","NetherPreset","fetchPreset","generator","biome_source","OverworldPreset18","MultiNoise","fromJson","noise","config2","NormalNoise","Random","n","n2","sample","minDist","Infinity","minBiome","parameters","p","dist","square","altitude","temperature","humidity","weirdness","offset","getBiomeSource","settings","NoiseGeneratorSettings","noiseSampler","NoiseSampler","getClimate","biomeSource","climateSampler","biomeColors","color","VanillaColors","stringToColor","minecraft:badlands","minecraft:badlands_plateau","minecraft:bamboo_jungle","minecraft:bamboo_jungle_hills","minecraft:basalt_deltas","minecraft:beach","minecraft:birch_forest","minecraft:birch_forest_hills","minecraft:cold_ocean","minecraft:crimson_forest","minecraft:dark_forest","minecraft:dark_forest_hills","minecraft:deep_cold_ocean","minecraft:deep_frozen_ocean","minecraft:deep_lukewarm_ocean","minecraft:deep_ocean","minecraft:deep_warm_ocean","minecraft:desert","minecraft:desert_hills","minecraft:desert_lakes","minecraft:end_barrens","minecraft:end_highlands","minecraft:end_midlands","minecraft:eroded_badlands","minecraft:flower_forest","minecraft:forest","minecraft:frozen_ocean","minecraft:frozen_river","minecraft:giant_spruce_taiga","minecraft:giant_spruce_taiga_hills","minecraft:giant_tree_taiga","minecraft:giant_tree_taiga_hills","minecraft:gravelly_mountains","minecraft:ice_spikes","minecraft:jungle","minecraft:jungle_edge","minecraft:jungle_hills","minecraft:lukewarm_ocean","minecraft:modified_badlands_plateau","minecraft:modified_gravelly_mountains","minecraft:modified_jungle","minecraft:modified_jungle_edge","minecraft:modified_wooded_badlands_plateau","minecraft:mountain_edge","minecraft:mountains","minecraft:mushroom_field_shore","minecraft:mushroom_fields","minecraft:nether_wastes","minecraft:ocean","minecraft:plains","minecraft:river","minecraft:savanna","minecraft:savanna_plateau","minecraft:shattered_savanna","minecraft:shattered_savanna_plateau","minecraft:small_end_islands","minecraft:snowy_beach","minecraft:snowy_mountains","minecraft:snowy_taiga","minecraft:snowy_taiga_hills","minecraft:snowy_taiga_mountains","minecraft:snowy_tundra","minecraft:soul_sand_valley","minecraft:stone_shore","minecraft:sunflower_plains","minecraft:swamp","minecraft:swamp_hills","minecraft:taiga","minecraft:taiga_hills","minecraft:taiga_mountains","minecraft:tall_birch_forest","minecraft:tall_birch_hills","minecraft:the_end","minecraft:the_void","minecraft:warm_ocean","minecraft:warped_forest","minecraft:wooded_badlands_plateau","minecraft:wooded_hills","minecraft:wooded_mountains","minecraft:snowy_slopes","minecraft:lofty_peaks","minecraft:snowcapped_peaks","minecraft:stony_peaks","minecraft:grove","minecraft:meadow","minecraft:lush_caves","minecraft:dripstone_caves","altitude_noise","firstOctave","amplitudes","temperature_noise","humidity_noise","weirdness_noise","continentalness","erosion","depth","terrain","featureColors","placements","features","biomeInfoNoise","PerlinNoise","fork","seaLevel","nextFloat","nextInt","sampleInt","this","pos","feature","clamp","j2","base","spread","normalize","min_inclusive","max_inclusive","source","indexOf","useFeature","featureFn","Features","decorator2","decoratorFn","Decorators","decorated","getPositions","decorator","getPlacements","random_boolean_selector","feature_true","feature_false","random_selector","f","chance","simple_random_selector","count","count_extra","extra_chance","extra_count","count_multilayer","count_noise","noise_level","below_noise","above_noise","count_noise_biased","factor","noise_factor","ceil","noise_offset","noise_to_count_ratio","dark_oak_tree","_config","_","outer","flatMap","inner","depth_average","decorateY","baseline","emerald_ore","fire","glowstone","heightmap","heightmap_spread_double","heightmap_world_surface","iceberg","lava_lake","nope","range","maximum","top_offset","bottom_offset","range_biased","range_very_biased","spread_32_above","top_solid_heightmap","magma","surface_relative_threshold","water_lake","minLimitPerlinNoise","maxLimitPerlinNoise","mainPerlinNoise","depthNoise","xOffset","chunkWidth","size_horizontal","chunkHeight","size_vertical","chunkCountY","amplified","biomeDepth","biomeScale","noiseColumnCache","ox","noise1","fillNoiseColumn","noise2","yy","oy","d2","cachedColumn","xzScale","sampling","xz_scale","yScale","y_scale","xzFactor","xz_factor","yFactor","y_factor","randomDensity","random_density_offset","getRandomDensity","sampleAndClampNoise","getOctaveNoise","zo","falloff","density_factor","density_offset","top_slide","clampedLerp","bottom_slide","x2","wrap","y22","z2","minLimitNoise","maxLimitNoise","mainNoise","colors","minecraft:air","minecraft:water","minecraft:lava","minecraft:stone","minecraft:netherrack","minecraft:end_stone","generatorCache","chunkCache","bottomSlide","topSlide","shape","biomeFactor","biomeOffset","peaks","biomePeaks","nearWater","NoiseChunkGenerator","getCached","LevelSlice","minY","generator2","state2","getBlockState","getName","OldNoiseChunkGenerator","reset","row","iterateNoiseColumn","reverse","getColor","minX","filled","chunks","cached","Chunk","ChunkPos","create","Z","chunk","chunkIndex","BiomeSourcePreview","shown","setScale","focused","setFocused","refineTimeout","get","obj","getOctaves","calculateState","useCanvas","oz","col","worldX","worldZ","getBiomeColor","getBiome","biomeMap","setTimeout","xx","zz","toWorld","changeScale","newScale","newSeed","DecoratorPreview","setSeed","randomSeed","NoiseSettingsPreview","setBiomeFactor","setBiomeOffset","setBiomePeaks","hasPeaks","worldY","min_y","BtnInput","HasPreview","setCount","transformOutput","switchNode","props","hook","node","blockState","validation","validator","relativePath","includes","getActiveFields","activeFields","enabled","Store","Store2","getLanguage","getTheme","getVersion","getIndent","setIndent","indent","INDENT","2_spaces","4_spaces","tabs","doCopy","doDownload","doImport","copySuccess","onError","retransform","getOutput","useCallback","model2","blockStates2","ModelPath","output","clipboard","writeText","content","encodeURIComponent","setAttribute","click","changeIndent","parse","DataModel","wrapLists","spellcheck","autocorrect","placeholder","style","selectRegistries","hiddenFields","flattenedFields","inlineFields","nbtFields","fixedLists","keysModel","MapNode","StringNode","historyMax","renderHtml","boolean","BooleanSuffix","__spreadProps","choices","choice","activeCase","contextPath","context","getModel","getArray","prefix","suffix","choiceContextPath","choiceContext","inject","c2","change","pathLocale","contextPush","maxLength","ErrorPopup","modelPush","hexId","cValue","cId","cPath","MemoedTreeNode","disabled","keyPath","keysSchema","enum","last","errors","add","ObjectNode","fromEntries","cSchema","number","NumberSuffix","getChildModelPath","optional","child","cPrefix","cSuffix","cBody","isFlattened","isInlined","HelpPopup","string","StringSuffix","integer","evt","parsed","parseFloat","onBlur","padStart","equals","getValues","newValue","isEnum","additional","context2","pool","datalistId","list","values2","memo","data-category","onContextMenu","preventDefault","navigator","prev","next","result","message2","popupIcon","popup","clone","useErrorBoundary","setState","tree","some","changeTitle","onChangeVersion","setError","errorBoundary","errorRetry","ErrorPanel","allowedVersions","setModel","setBlockStates","schemaName","verbose","validate","log","m","catch","onKeyUp","ctrlKey","undo","redo","presetFilter","setPresetFilter","presetResults","setPresetResults","terms","trim","split","presets","every","t","sourceShown","setSourceShown","innerWidth","setCopy","setDownload","setImport","copyActive","setCopyActive","copyTimeout","previewShown","setPreviewShown","hasPreview","actionsShown","Ad","loadPreset","Tree","PreviewPanel","SourcePanel","ToolCard","loadLocale","documentElement","setTitle","title2","splice","Header","theme2","Router","Home","FieldSettings","Worldgen","Generator","version2","render","Main"],"mappings":"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"}
\ No newline at end of file
diff --git a/dimension/index.html b/dimension/index.html
index 50f6ff76..67376c10 100644
--- a/dimension/index.html
+++ b/dimension/index.html
@@ -20,7 +20,7 @@
undefined Generator Minecraft 1.16, 1.17, 1.18
-
+
diff --git a/dimension_type/index.html b/dimension_type/index.html
index 50f6ff76..67376c10 100644
--- a/dimension_type/index.html
+++ b/dimension_type/index.html
@@ -20,7 +20,7 @@
undefined Generator Minecraft 1.16, 1.17, 1.18
-
+
diff --git a/index.html b/index.html
index 301befb7..0da67610 100644
--- a/index.html
+++ b/index.html
@@ -20,7 +20,7 @@
Data Pack Generators Minecraft 1.15, 1.16, 1.17
-
+
diff --git a/item_modifier/index.html b/item_modifier/index.html
index 90a05800..cebafc69 100644
--- a/item_modifier/index.html
+++ b/item_modifier/index.html
@@ -20,7 +20,7 @@
undefined Generator Minecraft 1.17, 1.18
-
+
diff --git a/loot_table/index.html b/loot_table/index.html
index f93e4e20..fe142b75 100644
--- a/loot_table/index.html
+++ b/loot_table/index.html
@@ -20,7 +20,7 @@
undefined Generator Minecraft 1.15, 1.16, 1.17, 1.18
-
+
diff --git a/predicate/index.html b/predicate/index.html
index f93e4e20..fe142b75 100644
--- a/predicate/index.html
+++ b/predicate/index.html
@@ -20,7 +20,7 @@
undefined Generator Minecraft 1.15, 1.16, 1.17, 1.18
-
+
diff --git a/world/index.html b/world/index.html
index 50f6ff76..67376c10 100644
--- a/world/index.html
+++ b/world/index.html
@@ -20,7 +20,7 @@
undefined Generator Minecraft 1.16, 1.17, 1.18
-
+
diff --git a/worldgen/biome/index.html b/worldgen/biome/index.html
index 50f6ff76..67376c10 100644
--- a/worldgen/biome/index.html
+++ b/worldgen/biome/index.html
@@ -20,7 +20,7 @@
undefined Generator Minecraft 1.16, 1.17, 1.18
-
+
diff --git a/worldgen/configured_carver/index.html b/worldgen/configured_carver/index.html
index 50f6ff76..67376c10 100644
--- a/worldgen/configured_carver/index.html
+++ b/worldgen/configured_carver/index.html
@@ -20,7 +20,7 @@
undefined Generator Minecraft 1.16, 1.17, 1.18
-
+
diff --git a/worldgen/configured_feature/index.html b/worldgen/configured_feature/index.html
index 50f6ff76..67376c10 100644
--- a/worldgen/configured_feature/index.html
+++ b/worldgen/configured_feature/index.html
@@ -20,7 +20,7 @@
undefined Generator Minecraft 1.16, 1.17, 1.18
-
+
diff --git a/worldgen/configured_structure_feature/index.html b/worldgen/configured_structure_feature/index.html
index 50f6ff76..67376c10 100644
--- a/worldgen/configured_structure_feature/index.html
+++ b/worldgen/configured_structure_feature/index.html
@@ -20,7 +20,7 @@
undefined Generator Minecraft 1.16, 1.17, 1.18
-
+
diff --git a/worldgen/configured_surface_builder/index.html b/worldgen/configured_surface_builder/index.html
index 50f6ff76..67376c10 100644
--- a/worldgen/configured_surface_builder/index.html
+++ b/worldgen/configured_surface_builder/index.html
@@ -20,7 +20,7 @@
undefined Generator Minecraft 1.16, 1.17, 1.18
-
+
diff --git a/worldgen/noise_settings/index.html b/worldgen/noise_settings/index.html
index 50f6ff76..67376c10 100644
--- a/worldgen/noise_settings/index.html
+++ b/worldgen/noise_settings/index.html
@@ -20,7 +20,7 @@
undefined Generator Minecraft 1.16, 1.17, 1.18
-
+
diff --git a/worldgen/processor_list/index.html b/worldgen/processor_list/index.html
index 50f6ff76..67376c10 100644
--- a/worldgen/processor_list/index.html
+++ b/worldgen/processor_list/index.html
@@ -20,7 +20,7 @@
undefined Generator Minecraft 1.16, 1.17, 1.18
-
+
diff --git a/worldgen/template_pool/index.html b/worldgen/template_pool/index.html
index 50f6ff76..67376c10 100644
--- a/worldgen/template_pool/index.html
+++ b/worldgen/template_pool/index.html
@@ -20,7 +20,7 @@
undefined Generator Minecraft 1.16, 1.17, 1.18
-
+