diff --git a/package-lock.json b/package-lock.json index 0257b08b..36bdac60 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,12 +9,12 @@ "version": "1.0.0", "license": "MIT", "dependencies": { - "@mcschema/core": "^0.12.13", + "@mcschema/core": "^0.12.16", "@mcschema/java-1.15": "^0.2.2", "@mcschema/java-1.16": "^0.6.5", "@mcschema/java-1.17": "^0.2.24", - "@mcschema/java-1.18": "^0.1.17", - "@mcschema/locales": "^0.1.36", + "@mcschema/java-1.18": "^0.2.2", + "@mcschema/locales": "^0.1.38", "deepslate": "^0.9.0-beta.6", "deepslate-rs": "^0.1.6", "howler": "^2.2.3", @@ -321,9 +321,9 @@ } }, "node_modules/@mcschema/core": { - "version": "0.12.13", - "resolved": "https://registry.npmjs.org/@mcschema/core/-/core-0.12.13.tgz", - "integrity": "sha512-k5io/SNI3rsbtEtUniTxxN3Mms+g+L6/o3aMfYOsCK2vn163pPSY84wO5wWGxec87726P8a1wkRvos7rdqV/Jw==" + "version": "0.12.16", + "resolved": "https://registry.npmjs.org/@mcschema/core/-/core-0.12.16.tgz", + "integrity": "sha512-iZwNW7VvBBSa4npt0lqI+zxnJ6FoxcbODeON3Tcvdt2OrJSqqqo0ZLYVnwj1ugF9TqVgVDM0w/4Qb2PGe518gg==" }, "node_modules/@mcschema/java-1.15": { "version": "0.2.2", @@ -350,17 +350,17 @@ } }, "node_modules/@mcschema/java-1.18": { - "version": "0.1.17", - "resolved": "https://registry.npmjs.org/@mcschema/java-1.18/-/java-1.18-0.1.17.tgz", - "integrity": "sha512-/AWx1n4d3uiZH0wQ0Hq9M+8DHU2KxmKAtbLUTxGmrWNqHvMii4suhPHjX7Us53pJKGSL1Z2DpsFD8ctANDKBeA==", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@mcschema/java-1.18/-/java-1.18-0.2.2.tgz", + "integrity": "sha512-UjHOHGlEaNw9Bk7PNRGppL9yVIuD1bIlUzei+taucqoMNu7t30g/86e98UJrY+mDj6pTnZemlXeHleIk39hm9g==", "dependencies": { - "@mcschema/core": "^0.12.13" + "@mcschema/core": "^0.12.16" } }, "node_modules/@mcschema/locales": { - "version": "0.1.36", - "resolved": "https://registry.npmjs.org/@mcschema/locales/-/locales-0.1.36.tgz", - "integrity": "sha512-MKmkX6BF+uWrQO0vUvCJkK0QyeRuIeQHWmMNKP7igZ2VO2rxlhuJx6i+etoT5Fe3DrAEBt2HX/5ZIrZ65llxfQ==" + "version": "0.1.38", + "resolved": "https://registry.npmjs.org/@mcschema/locales/-/locales-0.1.38.tgz", + "integrity": "sha512-HwH3yURCT6+D4oRH6WYAw38DfjLelpAVkOfsOzXSszvd+hyjVt4lDtUNMggGDaUMoZGw0HQ2oXqDLEDtEERwiQ==" }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", @@ -2982,9 +2982,9 @@ } }, "@mcschema/core": { - "version": "0.12.13", - "resolved": "https://registry.npmjs.org/@mcschema/core/-/core-0.12.13.tgz", - "integrity": "sha512-k5io/SNI3rsbtEtUniTxxN3Mms+g+L6/o3aMfYOsCK2vn163pPSY84wO5wWGxec87726P8a1wkRvos7rdqV/Jw==" + "version": "0.12.16", + "resolved": "https://registry.npmjs.org/@mcschema/core/-/core-0.12.16.tgz", + "integrity": "sha512-iZwNW7VvBBSa4npt0lqI+zxnJ6FoxcbODeON3Tcvdt2OrJSqqqo0ZLYVnwj1ugF9TqVgVDM0w/4Qb2PGe518gg==" }, "@mcschema/java-1.15": { "version": "0.2.2", @@ -3011,17 +3011,17 @@ } }, "@mcschema/java-1.18": { - "version": "0.1.17", - "resolved": "https://registry.npmjs.org/@mcschema/java-1.18/-/java-1.18-0.1.17.tgz", - "integrity": "sha512-/AWx1n4d3uiZH0wQ0Hq9M+8DHU2KxmKAtbLUTxGmrWNqHvMii4suhPHjX7Us53pJKGSL1Z2DpsFD8ctANDKBeA==", + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@mcschema/java-1.18/-/java-1.18-0.2.2.tgz", + "integrity": "sha512-UjHOHGlEaNw9Bk7PNRGppL9yVIuD1bIlUzei+taucqoMNu7t30g/86e98UJrY+mDj6pTnZemlXeHleIk39hm9g==", "requires": { - "@mcschema/core": "^0.12.13" + "@mcschema/core": "^0.12.16" } }, "@mcschema/locales": { - "version": "0.1.36", - "resolved": "https://registry.npmjs.org/@mcschema/locales/-/locales-0.1.36.tgz", - "integrity": "sha512-MKmkX6BF+uWrQO0vUvCJkK0QyeRuIeQHWmMNKP7igZ2VO2rxlhuJx6i+etoT5Fe3DrAEBt2HX/5ZIrZ65llxfQ==" + "version": "0.1.38", + "resolved": "https://registry.npmjs.org/@mcschema/locales/-/locales-0.1.38.tgz", + "integrity": "sha512-HwH3yURCT6+D4oRH6WYAw38DfjLelpAVkOfsOzXSszvd+hyjVt4lDtUNMggGDaUMoZGw0HQ2oXqDLEDtEERwiQ==" }, "@nodelib/fs.scandir": { "version": "2.1.5", diff --git a/package.json b/package.json index 76c0cdff..e0574405 100644 --- a/package.json +++ b/package.json @@ -15,12 +15,12 @@ "author": "Misode", "license": "MIT", "dependencies": { - "@mcschema/core": "^0.12.13", + "@mcschema/core": "^0.12.16", "@mcschema/java-1.15": "^0.2.2", "@mcschema/java-1.16": "^0.6.5", "@mcschema/java-1.17": "^0.2.24", - "@mcschema/java-1.18": "^0.1.17", - "@mcschema/locales": "^0.1.36", + "@mcschema/java-1.18": "^0.2.2", + "@mcschema/locales": "^0.1.38", "deepslate": "^0.9.0-beta.6", "deepslate-rs": "^0.1.6", "howler": "^2.2.3", diff --git a/src/app/Main.tsx b/src/app/Main.tsx index 5e21cdb3..8c55eff6 100644 --- a/src/app/Main.tsx +++ b/src/app/Main.tsx @@ -8,7 +8,7 @@ import '../styles/nodes.css' import { Analytics } from './Analytics' import { Header } from './components' import { loadLocale, locale, Locales } from './Locales' -import { Changelog, Generator, Home, Sounds, Worldgen } from './pages' +import { Category, Changelog, Generator, Home, Sounds } from './pages' import type { VersionId } from './services' import { Store } from './Store' import { cleanUrl } from './Utils' @@ -70,7 +70,8 @@ function Main() {
- + + diff --git a/src/app/pages/Worldgen.tsx b/src/app/pages/Category.tsx similarity index 64% rename from src/app/pages/Worldgen.tsx rename to src/app/pages/Category.tsx index 0f3217b2..5ad6192c 100644 --- a/src/app/pages/Worldgen.tsx +++ b/src/app/pages/Category.tsx @@ -4,16 +4,17 @@ import { locale } from '../Locales' import { cleanUrl } from '../Utils' type WorldgenProps = { + category: string, lang: string, changeTitle: (title: string) => unknown, path?: string, } -export function Worldgen({ lang, changeTitle }: WorldgenProps) { +export function Category({ category, lang, changeTitle }: WorldgenProps) { const loc = locale.bind(null, lang) - changeTitle(loc('title.generator_category', loc('worldgen'))) + changeTitle(loc('title.generator_category', loc(category))) return
- {config.generators.filter(g => g.category === 'worldgen').map(g => + {config.generators.filter(g => g.category === category).map(g => )}
diff --git a/src/app/pages/Home.tsx b/src/app/pages/Home.tsx index f02ef773..a928b302 100644 --- a/src/app/pages/Home.tsx +++ b/src/app/pages/Home.tsx @@ -18,6 +18,8 @@ export function Home({ lang, changeTitle }: HomeProps) { )}
+ +

Analyse your performance reports

diff --git a/src/app/pages/index.ts b/src/app/pages/index.ts index 41d98aeb..9c0b6819 100644 --- a/src/app/pages/index.ts +++ b/src/app/pages/index.ts @@ -1,5 +1,5 @@ +export * from './Category' export * from './Changelog' export * from './Generator' export * from './Home' export * from './Sounds' -export * from './Worldgen' diff --git a/src/app/schema/renderHtml.tsx b/src/app/schema/renderHtml.tsx index c621ce9a..66fdb376 100644 --- a/src/app/schema/renderHtml.tsx +++ b/src/app/schema/renderHtml.tsx @@ -16,7 +16,7 @@ const hiddenFields = ['number_provider.type', 'score_provider.type', 'nbt_provid const 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', 'material_rule.block.result_state'] const 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', 'block_predicate.type', 'material_rule.type', 'material_condition.type'] const nbtFields = ['function.set_nbt.tag', 'advancement.display.icon.nbt', 'text_component_object.nbt', 'entity.nbt', 'block.nbt', 'item.nbt'] -const 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', 'block_predicate.matching_blocks.offset', 'block_predicate.matching_fluids.offset'] +const 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', 'block_predicate.matching_blocks.offset', 'block_predicate.matching_fluids.offset', 'model_element.from', 'model_element.to', 'model_element.rotation.origin', 'model_element.faces.uv', 'item_transform.rotation', 'item_transform.translation', 'item_transform.scale'] /** * Secondary model used to remember the keys of a map @@ -59,6 +59,7 @@ const renderHtml: RenderHook = { choice({ choices, config, switchNode }, path, value, lang, states, ctx) { const choice = switchNode.activeCase(path, true) as typeof choices[number] const contextPath = (config?.context) ? new ModelPath(path.getModel(), new Path(path.getArray(), [config.context])) : path + console.log('RENDER', path.toString(), choice.type, value) const [prefix, suffix, body] = choice.node.hook(this, contextPath, value, lang, states, ctx) if (choices.length === 1) { return [prefix, suffix, body] @@ -69,6 +70,7 @@ const renderHtml: RenderHook = { const newValue = c.change ? c.change(DataModel.unwrapLists(value)) : config.choiceContext === 'feature' ? c.node.default()?.config?.feature : c.node.default() + console.warn('CHOICE', type, c, value, newValue) path.model.set(path, DataModel.wrapLists(newValue)) } const inject =