Support 1.18 (experimental) snapshots (#158)

* Half support 1.18-experimental-snapshot-1

* Fetch 1.18 presets and improve rendering of lists

* Noise preview with deepslate

* Biome preview with deepslate

* Generalize canvas logic in one hook

* Simplify useCanvas

* Use mcschema for 1.18

* Improve noise settings preview controls

* Fix build

* Update deepslate and improve preview caching

* Cleanup, remove old preview code

* Couple seed between model and preview

* Limit output to improve performance + copy feedback
For the vanilla overworld dimension (200K lines),
it took 2+ seconds to write the output to the textarea

Now capped at 10K chars

* Add surface_relative_threshold to decorator preview

* Improve fixed list errors
This commit is contained in:
Misode
2021-09-23 03:04:52 +02:00
committed by GitHub
parent eb085737a3
commit 3b80334e2e
33 changed files with 812 additions and 639 deletions

83
package-lock.json generated
View File

@@ -13,9 +13,10 @@
"@mcschema/java-1.15": "^0.2.0",
"@mcschema/java-1.16": "^0.6.3",
"@mcschema/java-1.17": "^0.2.23",
"@mcschema/locales": "^0.1.21",
"rfdc": "^1.3.0",
"seedrandom": "^3.0.5"
"@mcschema/java-1.18": "^0.1.1",
"@mcschema/locales": "^0.1.23",
"deepslate": "^0.9.0-beta.2",
"rfdc": "^1.3.0"
},
"devDependencies": {
"@preact/preset-vite": "^2.1.0",
@@ -342,10 +343,18 @@
"@mcschema/core": "^0.12.4"
}
},
"node_modules/@mcschema/java-1.18": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/@mcschema/java-1.18/-/java-1.18-0.1.1.tgz",
"integrity": "sha512-qyt3okv3837xyCYt7dxEpodDmn1sIh19OVvlxLIxr3AtCgm1h3c/HjOHan/X6RBdU7BWJqg4uTWO2II43VvrQA==",
"dependencies": {
"@mcschema/core": "^0.12.4"
}
},
"node_modules/@mcschema/locales": {
"version": "0.1.21",
"resolved": "https://registry.npmjs.org/@mcschema/locales/-/locales-0.1.21.tgz",
"integrity": "sha512-o3fLWz5RkuIzG86fIMELp2e+gB71KNb3I4gLRnDZoFeOim4BseF6Lg2lG2P+H0tuxlX7OWeZA6aiJdM+k0YKjg=="
"version": "0.1.23",
"resolved": "https://registry.npmjs.org/@mcschema/locales/-/locales-0.1.23.tgz",
"integrity": "sha512-D6577AtukJHU2THNbiYHKw/6KSpz+c0ooYt+5H7KQr3VyGRcpi2q7kl/WS8FYwR4ZoxEXaIFXVFMstG/SLGIJA=="
},
"node_modules/@nodelib/fs.scandir": {
"version": "2.1.5",
@@ -929,6 +938,15 @@
"integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
"dev": true
},
"node_modules/deepslate": {
"version": "0.9.0-beta.2",
"resolved": "https://registry.npmjs.org/deepslate/-/deepslate-0.9.0-beta.2.tgz",
"integrity": "sha512-qJTzAfngaYXGXS5nXiHUgLbw+6/GtSXOuz+bDVb+EWYHUfekYw5qxpIQdKEKNVGobqchE4mAKJ84KAeWKW5wjw==",
"dependencies": {
"gl-matrix": "^3.3.0",
"pako": "^2.0.3"
}
},
"node_modules/dir-glob": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
@@ -1476,6 +1494,11 @@
"node": ">=6.9.0"
}
},
"node_modules/gl-matrix": {
"version": "3.3.0",
"resolved": "https://registry.npmjs.org/gl-matrix/-/gl-matrix-3.3.0.tgz",
"integrity": "sha512-COb7LDz+SXaHtl/h4LeaFcNdJdAQSDeVqjiIihSXNrkWObZLhDI4hIkZC11Aeqp7bcE72clzB0BnDXr2SmslRA=="
},
"node_modules/glob": {
"version": "7.1.7",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz",
@@ -1883,6 +1906,11 @@
"node": ">= 0.8.0"
}
},
"node_modules/pako": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/pako/-/pako-2.0.4.tgz",
"integrity": "sha512-v8tweI900AUkZN6heMU/4Uy4cXRc2AYNRggVmTR+dEncawDJgCdLMximOVA2p4qO57WMynangsfGRb5WD6L1Bg=="
},
"node_modules/parent-module": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
@@ -2141,11 +2169,6 @@
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
"dev": true
},
"node_modules/seedrandom": {
"version": "3.0.5",
"resolved": "https://registry.npmjs.org/seedrandom/-/seedrandom-3.0.5.tgz",
"integrity": "sha512-8OwmbklUNzwezjGInmZ+2clQmExQPvomqjL7LFqOYqtmuxRgQYqOD3mHaU+MvZn5FLUeVxVfQjwLZW/n/JFuqg=="
},
"node_modules/semver": {
"version": "6.3.0",
"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
@@ -2795,10 +2818,18 @@
"@mcschema/core": "^0.12.4"
}
},
"@mcschema/java-1.18": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/@mcschema/java-1.18/-/java-1.18-0.1.1.tgz",
"integrity": "sha512-qyt3okv3837xyCYt7dxEpodDmn1sIh19OVvlxLIxr3AtCgm1h3c/HjOHan/X6RBdU7BWJqg4uTWO2II43VvrQA==",
"requires": {
"@mcschema/core": "^0.12.4"
}
},
"@mcschema/locales": {
"version": "0.1.21",
"resolved": "https://registry.npmjs.org/@mcschema/locales/-/locales-0.1.21.tgz",
"integrity": "sha512-o3fLWz5RkuIzG86fIMELp2e+gB71KNb3I4gLRnDZoFeOim4BseF6Lg2lG2P+H0tuxlX7OWeZA6aiJdM+k0YKjg=="
"version": "0.1.23",
"resolved": "https://registry.npmjs.org/@mcschema/locales/-/locales-0.1.23.tgz",
"integrity": "sha512-D6577AtukJHU2THNbiYHKw/6KSpz+c0ooYt+5H7KQr3VyGRcpi2q7kl/WS8FYwR4ZoxEXaIFXVFMstG/SLGIJA=="
},
"@nodelib/fs.scandir": {
"version": "2.1.5",
@@ -3207,6 +3238,15 @@
"integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
"dev": true
},
"deepslate": {
"version": "0.9.0-beta.2",
"resolved": "https://registry.npmjs.org/deepslate/-/deepslate-0.9.0-beta.2.tgz",
"integrity": "sha512-qJTzAfngaYXGXS5nXiHUgLbw+6/GtSXOuz+bDVb+EWYHUfekYw5qxpIQdKEKNVGobqchE4mAKJ84KAeWKW5wjw==",
"requires": {
"gl-matrix": "^3.3.0",
"pako": "^2.0.3"
}
},
"dir-glob": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
@@ -3620,6 +3660,11 @@
"integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
"dev": true
},
"gl-matrix": {
"version": "3.3.0",
"resolved": "https://registry.npmjs.org/gl-matrix/-/gl-matrix-3.3.0.tgz",
"integrity": "sha512-COb7LDz+SXaHtl/h4LeaFcNdJdAQSDeVqjiIihSXNrkWObZLhDI4hIkZC11Aeqp7bcE72clzB0BnDXr2SmslRA=="
},
"glob": {
"version": "7.1.7",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz",
@@ -3936,6 +3981,11 @@
"word-wrap": "^1.2.3"
}
},
"pako": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/pako/-/pako-2.0.4.tgz",
"integrity": "sha512-v8tweI900AUkZN6heMU/4Uy4cXRc2AYNRggVmTR+dEncawDJgCdLMximOVA2p4qO57WMynangsfGRb5WD6L1Bg=="
},
"parent-module": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
@@ -4095,11 +4145,6 @@
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
"dev": true
},
"seedrandom": {
"version": "3.0.5",
"resolved": "https://registry.npmjs.org/seedrandom/-/seedrandom-3.0.5.tgz",
"integrity": "sha512-8OwmbklUNzwezjGInmZ+2clQmExQPvomqjL7LFqOYqtmuxRgQYqOD3mHaU+MvZn5FLUeVxVfQjwLZW/n/JFuqg=="
},
"semver": {
"version": "6.3.0",
"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",