Grammar refactoring

* Grammar refactoring WIP

* ISerializer.grammar

* Fixing various bugs in the grammar

* Small touch that improoves performance

* Fix unknown values grammar

* Various fixes

* Serialization refactoring to drop suboject logic

* Details fixed

* Entity attributes initialization refactoring

* JSDoc error fixed

* Rename value key to default

* Remove useless default

* Revert string keys
This commit is contained in:
barsdeveloper
2023-04-01 19:55:16 +02:00
committed by GitHub
parent b235d63348
commit bb24486303
44 changed files with 6395 additions and 6248 deletions

View File

@@ -1,6 +1,6 @@
import Configuration from "../../Configuration.js"
import Grammar from "../../serialization/Grammar.js"
import IInput from "../IInput.js"
import ISerializer from "../../serialization/ISerializer.js"
import KeyBindingEntity from "../../entity/KeyBindingEntity.js"
/** @typedef {import("../../Blueprint").default} Blueprint */
@@ -32,8 +32,8 @@ export default class IKeyboardShortcut extends IInput {
if (v instanceof KeyBindingEntity) {
return v
}
if (v.constructor === String) {
const parsed = ISerializer.grammar.KeyBinding.parse(v)
if (typeof v === "string") {
const parsed = Grammar.keyBindingEntity.parse(v)
if (parsed.status) {
return parsed.value
}