asajs 3.0.4 → 3.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/compilers/BindingCompiler.js +1 -0
- package/dist/cjs/compilers/BindingCompiler.js.map +7 -0
- package/dist/cjs/compilers/BindingFunctions.js +1 -0
- package/dist/cjs/compilers/BindingFunctions.js.map +7 -0
- package/dist/cjs/compilers/Compiler.js +1 -0
- package/dist/cjs/compilers/Compiler.js.map +7 -0
- package/dist/cjs/compilers/Compress.js +1 -0
- package/dist/cjs/compilers/Compress.js.map +7 -0
- package/dist/cjs/compilers/Config.js +3 -2
- package/dist/cjs/compilers/Config.js.map +7 -0
- package/dist/cjs/compilers/Encoder.js +1 -0
- package/dist/cjs/compilers/Encoder.js.map +7 -0
- package/dist/cjs/compilers/Installer.js +1 -0
- package/dist/cjs/compilers/Installer.js.map +7 -0
- package/dist/cjs/compilers/PreCompile.js +2 -1
- package/dist/cjs/compilers/PreCompile.js.map +7 -0
- package/dist/cjs/compilers/generator/GenerateDir.js +1 -0
- package/dist/cjs/compilers/generator/GenerateDir.js.map +7 -0
- package/dist/cjs/compilers/generator/JsonBuilder.js +1 -0
- package/dist/cjs/compilers/generator/JsonBuilder.js.map +7 -0
- package/dist/cjs/compilers/generator/LangBuilder.js +2 -1
- package/dist/cjs/compilers/generator/LangBuilder.js.map +7 -0
- package/dist/cjs/compilers/generator/Log.js +1 -0
- package/dist/cjs/compilers/generator/Log.js.map +7 -0
- package/dist/cjs/compilers/generator/Manifest.js +1 -0
- package/dist/cjs/compilers/generator/Manifest.js.map +7 -0
- package/dist/cjs/compilers/generator/Save.js +1 -0
- package/dist/cjs/compilers/generator/Save.js.map +7 -0
- package/dist/cjs/compilers/generator/SearchFiles.js +1 -0
- package/dist/cjs/compilers/generator/SearchFiles.js.map +7 -0
- package/dist/cjs/compilers/generator/Sounds.js +1 -0
- package/dist/cjs/compilers/generator/Sounds.js.map +7 -0
- package/dist/cjs/compilers/generator/Template.js +2 -1
- package/dist/cjs/compilers/generator/Template.js.map +7 -0
- package/dist/cjs/compilers/generator/UIBuilder.js +1 -0
- package/dist/cjs/compilers/generator/UIBuilder.js.map +7 -0
- package/dist/cjs/compilers/reader/Audio.js +1 -0
- package/dist/cjs/compilers/reader/Audio.js.map +7 -0
- package/dist/cjs/compilers/reader/Color.js +1 -0
- package/dist/cjs/compilers/reader/Color.js.map +7 -0
- package/dist/cjs/compilers/reader/CurrentLine.js +1 -0
- package/dist/cjs/compilers/reader/CurrentLine.js.map +7 -0
- package/dist/cjs/compilers/reader/Env.js +1 -0
- package/dist/cjs/compilers/reader/Env.js.map +7 -0
- package/dist/cjs/compilers/reader/GlobalVariables.js +1 -0
- package/dist/cjs/compilers/reader/GlobalVariables.js.map +7 -0
- package/dist/cjs/compilers/reader/Object.js +1 -0
- package/dist/cjs/compilers/reader/Object.js.map +7 -0
- package/dist/cjs/compilers/reader/ReadBinding.js +1 -0
- package/dist/cjs/compilers/reader/ReadBinding.js.map +7 -0
- package/dist/cjs/compilers/reader/ReadProperties.js +4 -3
- package/dist/cjs/compilers/reader/ReadProperties.js.map +7 -0
- package/dist/cjs/components/AddCollectionChill.js +1 -0
- package/dist/cjs/components/AddCollectionChill.js.map +7 -0
- package/dist/cjs/components/Animation.js +1 -0
- package/dist/cjs/components/Animation.js.map +7 -0
- package/dist/cjs/components/AnimationKeyFrame.js +1 -0
- package/dist/cjs/components/AnimationKeyFrame.js.map +7 -0
- package/dist/cjs/components/Class.js +1 -0
- package/dist/cjs/components/Class.js.map +7 -0
- package/dist/cjs/components/LocalizeText.js +1 -0
- package/dist/cjs/components/LocalizeText.js.map +7 -0
- package/dist/cjs/components/Modify.js +1 -0
- package/dist/cjs/components/Modify.js.map +7 -0
- package/dist/cjs/components/Random.js +1 -0
- package/dist/cjs/components/Random.js.map +7 -0
- package/dist/cjs/components/UI.js +1 -0
- package/dist/cjs/components/UI.js.map +7 -0
- package/dist/cjs/components/Vanilla.js +1 -0
- package/dist/cjs/components/Vanilla.js.map +7 -0
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/index.js.map +7 -0
- package/dist/cjs/template.js +2 -1
- package/dist/cjs/template.js.map +7 -0
- package/dist/cjs/types/components/ChildIdentifier.js +1 -0
- package/dist/cjs/types/components/ChildIdentifier.js.map +7 -0
- package/dist/cjs/types/components/Identifier.js +1 -0
- package/dist/cjs/types/components/Identifier.js.map +7 -0
- package/dist/cjs/types/components/NameCallback.js +1 -0
- package/dist/cjs/types/components/NameCallback.js.map +7 -0
- package/dist/cjs/types/components/UIIdentifier.js +1 -0
- package/dist/cjs/types/components/UIIdentifier.js.map +7 -0
- package/dist/cjs/types/components/UIInterface.js +1 -0
- package/dist/cjs/types/components/UIInterface.js.map +7 -0
- package/dist/cjs/types/enums/Anchor.js +1 -0
- package/dist/cjs/types/enums/Anchor.js.map +7 -0
- package/dist/cjs/types/enums/AnimTypes.js +1 -0
- package/dist/cjs/types/enums/AnimTypes.js.map +7 -0
- package/dist/cjs/types/enums/BindingCondition.js +1 -0
- package/dist/cjs/types/enums/BindingCondition.js.map +7 -0
- package/dist/cjs/types/enums/BindingName.js +1 -0
- package/dist/cjs/types/enums/BindingName.js.map +7 -0
- package/dist/cjs/types/enums/BindingType.js +1 -0
- package/dist/cjs/types/enums/BindingType.js.map +7 -0
- package/dist/cjs/types/enums/ClipDirecion.js +1 -0
- package/dist/cjs/types/enums/ClipDirecion.js.map +7 -0
- package/dist/cjs/types/enums/Collection.js +1 -0
- package/dist/cjs/types/enums/Collection.js.map +7 -0
- package/dist/cjs/types/enums/Direction.js +1 -0
- package/dist/cjs/types/enums/Direction.js.map +7 -0
- package/dist/cjs/types/enums/EasingTypes.js +1 -0
- package/dist/cjs/types/enums/EasingTypes.js.map +7 -0
- package/dist/cjs/types/enums/EnumColor.js +1 -0
- package/dist/cjs/types/enums/EnumColor.js.map +7 -0
- package/dist/cjs/types/enums/FocusNavigationMode.js +1 -0
- package/dist/cjs/types/enums/FocusNavigationMode.js.map +7 -0
- package/dist/cjs/types/enums/FontSize.js +1 -0
- package/dist/cjs/types/enums/FontSize.js.map +7 -0
- package/dist/cjs/types/enums/FontType.js +1 -0
- package/dist/cjs/types/enums/FontType.js.map +7 -0
- package/dist/cjs/types/enums/GlobalVariables.js +1 -0
- package/dist/cjs/types/enums/GlobalVariables.js.map +7 -0
- package/dist/cjs/types/enums/InputModeCondition.js +1 -0
- package/dist/cjs/types/enums/InputModeCondition.js.map +7 -0
- package/dist/cjs/types/enums/ItemAuxID.js +1 -0
- package/dist/cjs/types/enums/ItemAuxID.js.map +7 -0
- package/dist/cjs/types/enums/JsonUIArrayName.js +1 -0
- package/dist/cjs/types/enums/JsonUIArrayName.js.map +7 -0
- package/dist/cjs/types/enums/MappingFrom.js +1 -0
- package/dist/cjs/types/enums/MappingFrom.js.map +7 -0
- package/dist/cjs/types/enums/MappingTo.js +1 -0
- package/dist/cjs/types/enums/MappingTo.js.map +7 -0
- package/dist/cjs/types/enums/MappingTypes.js +1 -0
- package/dist/cjs/types/enums/MappingTypes.js.map +7 -0
- package/dist/cjs/types/enums/Orientation.js +1 -0
- package/dist/cjs/types/enums/Orientation.js.map +7 -0
- package/dist/cjs/types/enums/Renderer.js +1 -0
- package/dist/cjs/types/enums/Renderer.js.map +7 -0
- package/dist/cjs/types/enums/Rotation.js +1 -0
- package/dist/cjs/types/enums/Rotation.js.map +7 -0
- package/dist/cjs/types/enums/Scope.js +1 -0
- package/dist/cjs/types/enums/Scope.js.map +7 -0
- package/dist/cjs/types/enums/TextTypes.js +1 -0
- package/dist/cjs/types/enums/TextTypes.js.map +7 -0
- package/dist/cjs/types/enums/TextureFileSystem.js +1 -0
- package/dist/cjs/types/enums/TextureFileSystem.js.map +7 -0
- package/dist/cjs/types/enums/Types.js +1 -0
- package/dist/cjs/types/enums/Types.js.map +7 -0
- package/dist/cjs/types/objects/Animation.js +1 -0
- package/dist/cjs/types/objects/Animation.js.map +7 -0
- package/dist/cjs/types/objects/BindingHook.js +1 -0
- package/dist/cjs/types/objects/BindingHook.js.map +7 -0
- package/dist/cjs/types/objects/BindingInterface.js +1 -0
- package/dist/cjs/types/objects/BindingInterface.js.map +7 -0
- package/dist/cjs/types/objects/ButtonMapping.js +1 -0
- package/dist/cjs/types/objects/ButtonMapping.js.map +7 -0
- package/dist/cjs/types/objects/Factory.js +1 -0
- package/dist/cjs/types/objects/Factory.js.map +7 -0
- package/dist/cjs/types/objects/Installer.js +1 -0
- package/dist/cjs/types/objects/Installer.js.map +7 -0
- package/dist/cjs/types/objects/Manifest.js +1 -0
- package/dist/cjs/types/objects/Manifest.js.map +7 -0
- package/dist/cjs/types/objects/Modify.js +1 -0
- package/dist/cjs/types/objects/Modify.js.map +7 -0
- package/dist/cjs/types/objects/PropertyBag.js +1 -0
- package/dist/cjs/types/objects/PropertyBag.js.map +7 -0
- package/dist/cjs/types/objects/Sound.js +1 -0
- package/dist/cjs/types/objects/Sound.js.map +7 -0
- package/dist/cjs/types/objects/Variables.js +1 -0
- package/dist/cjs/types/objects/Variables.js.map +7 -0
- package/dist/cjs/types/objects/elements/Button.js +1 -0
- package/dist/cjs/types/objects/elements/Button.js.map +7 -0
- package/dist/cjs/types/objects/elements/CollectionPanel.js +1 -0
- package/dist/cjs/types/objects/elements/CollectionPanel.js.map +7 -0
- package/dist/cjs/types/objects/elements/Custom.js +1 -0
- package/dist/cjs/types/objects/elements/Custom.js.map +7 -0
- package/dist/cjs/types/objects/elements/Dropdown.js +1 -0
- package/dist/cjs/types/objects/elements/Dropdown.js.map +7 -0
- package/dist/cjs/types/objects/elements/EditBox.js +1 -0
- package/dist/cjs/types/objects/elements/EditBox.js.map +7 -0
- package/dist/cjs/types/objects/elements/Grid.js +1 -0
- package/dist/cjs/types/objects/elements/Grid.js.map +7 -0
- package/dist/cjs/types/objects/elements/Image.js +1 -0
- package/dist/cjs/types/objects/elements/Image.js.map +7 -0
- package/dist/cjs/types/objects/elements/InputPanel.js +1 -0
- package/dist/cjs/types/objects/elements/InputPanel.js.map +7 -0
- package/dist/cjs/types/objects/elements/Label.js +1 -0
- package/dist/cjs/types/objects/elements/Label.js.map +7 -0
- package/dist/cjs/types/objects/elements/PropertiesType.js +1 -0
- package/dist/cjs/types/objects/elements/PropertiesType.js.map +7 -0
- package/dist/cjs/types/objects/elements/Screen.js +1 -0
- package/dist/cjs/types/objects/elements/Screen.js.map +7 -0
- package/dist/cjs/types/objects/elements/ScrollView.js +1 -0
- package/dist/cjs/types/objects/elements/ScrollView.js.map +7 -0
- package/dist/cjs/types/objects/elements/ScrollbarBox.js +1 -0
- package/dist/cjs/types/objects/elements/ScrollbarBox.js.map +7 -0
- package/dist/cjs/types/objects/elements/ScrollbarTrack.js +1 -0
- package/dist/cjs/types/objects/elements/ScrollbarTrack.js.map +7 -0
- package/dist/cjs/types/objects/elements/SelectionWheel.js +1 -0
- package/dist/cjs/types/objects/elements/SelectionWheel.js.map +7 -0
- package/dist/cjs/types/objects/elements/Slider.js +1 -0
- package/dist/cjs/types/objects/elements/Slider.js.map +7 -0
- package/dist/cjs/types/objects/elements/SliderBox.js +1 -0
- package/dist/cjs/types/objects/elements/SliderBox.js.map +7 -0
- package/dist/cjs/types/objects/elements/StackPanel.js +1 -0
- package/dist/cjs/types/objects/elements/StackPanel.js.map +7 -0
- package/dist/cjs/types/objects/elements/Toggle.js +1 -0
- package/dist/cjs/types/objects/elements/Toggle.js.map +7 -0
- package/dist/cjs/types/objects/elements/TooltipTrigger.js +1 -0
- package/dist/cjs/types/objects/elements/TooltipTrigger.js.map +7 -0
- package/dist/cjs/types/objects/elements/panel.js +1 -0
- package/dist/cjs/types/objects/elements/panel.js.map +7 -0
- package/dist/cjs/types/objects/properties/Buttons.js +1 -0
- package/dist/cjs/types/objects/properties/Buttons.js.map +7 -0
- package/dist/cjs/types/objects/properties/CollectionIndexs.js +1 -0
- package/dist/cjs/types/objects/properties/CollectionIndexs.js.map +7 -0
- package/dist/cjs/types/objects/properties/Collections.js +1 -0
- package/dist/cjs/types/objects/properties/Collections.js.map +7 -0
- package/dist/cjs/types/objects/properties/Controls.js +1 -0
- package/dist/cjs/types/objects/properties/Controls.js.map +7 -0
- package/dist/cjs/types/objects/properties/Dropdowns.js +1 -0
- package/dist/cjs/types/objects/properties/Dropdowns.js.map +7 -0
- package/dist/cjs/types/objects/properties/Focus.js +1 -0
- package/dist/cjs/types/objects/properties/Focus.js.map +7 -0
- package/dist/cjs/types/objects/properties/FocusContainerCustom.js +1 -0
- package/dist/cjs/types/objects/properties/FocusContainerCustom.js.map +7 -0
- package/dist/cjs/types/objects/properties/Grids.js +1 -0
- package/dist/cjs/types/objects/properties/Grids.js.map +7 -0
- package/dist/cjs/types/objects/properties/Inputs.js +1 -0
- package/dist/cjs/types/objects/properties/Inputs.js.map +7 -0
- package/dist/cjs/types/objects/properties/Layouts.js +1 -0
- package/dist/cjs/types/objects/properties/Layouts.js.map +7 -0
- package/dist/cjs/types/objects/properties/Properties.js +1 -0
- package/dist/cjs/types/objects/properties/Properties.js.map +7 -0
- package/dist/cjs/types/objects/properties/Renderers.js +1 -0
- package/dist/cjs/types/objects/properties/Renderers.js.map +7 -0
- package/dist/cjs/types/objects/properties/Screens.js +1 -0
- package/dist/cjs/types/objects/properties/Screens.js.map +7 -0
- package/dist/cjs/types/objects/properties/ScrollViews.js +1 -0
- package/dist/cjs/types/objects/properties/ScrollViews.js.map +7 -0
- package/dist/cjs/types/objects/properties/SelectionWheels.js +1 -0
- package/dist/cjs/types/objects/properties/SelectionWheels.js.map +7 -0
- package/dist/cjs/types/objects/properties/SliderBoxs.js +1 -0
- package/dist/cjs/types/objects/properties/SliderBoxs.js.map +7 -0
- package/dist/cjs/types/objects/properties/Sliders.js +1 -0
- package/dist/cjs/types/objects/properties/Sliders.js.map +7 -0
- package/dist/cjs/types/objects/properties/Sounds.js +1 -0
- package/dist/cjs/types/objects/properties/Sounds.js.map +7 -0
- package/dist/cjs/types/objects/properties/Specials.js +1 -0
- package/dist/cjs/types/objects/properties/Specials.js.map +7 -0
- package/dist/cjs/types/objects/properties/Sprites.js +1 -0
- package/dist/cjs/types/objects/properties/Sprites.js.map +7 -0
- package/dist/cjs/types/objects/properties/StackPanels.js +1 -0
- package/dist/cjs/types/objects/properties/StackPanels.js.map +7 -0
- package/dist/cjs/types/objects/properties/TTS.js +1 -0
- package/dist/cjs/types/objects/properties/TTS.js.map +7 -0
- package/dist/cjs/types/objects/properties/TextEdits.js +1 -0
- package/dist/cjs/types/objects/properties/TextEdits.js.map +7 -0
- package/dist/cjs/types/objects/properties/Texts.js +1 -0
- package/dist/cjs/types/objects/properties/Texts.js.map +7 -0
- package/dist/cjs/types/objects/properties/Toggles.js +1 -0
- package/dist/cjs/types/objects/properties/Toggles.js.map +7 -0
- package/dist/cjs/types/objects/properties/TooltipTriggers.js +1 -0
- package/dist/cjs/types/objects/properties/TooltipTriggers.js.map +7 -0
- package/dist/cjs/types/objects/properties/Variables.js +1 -0
- package/dist/cjs/types/objects/properties/Variables.js.map +7 -0
- package/dist/cjs/types/values/Any.js +1 -0
- package/dist/cjs/types/values/Any.js.map +7 -0
- package/dist/cjs/types/values/Binding.js +1 -0
- package/dist/cjs/types/values/Binding.js.map +7 -0
- package/dist/cjs/types/values/Bool.js +1 -0
- package/dist/cjs/types/values/Bool.js.map +7 -0
- package/dist/cjs/types/values/ColorVector.js +1 -0
- package/dist/cjs/types/values/ColorVector.js.map +7 -0
- package/dist/cjs/types/values/ElementPath.js +1 -0
- package/dist/cjs/types/values/ElementPath.js.map +7 -0
- package/dist/cjs/types/values/Hex.js +1 -0
- package/dist/cjs/types/values/Hex.js.map +7 -0
- package/dist/cjs/types/values/Number.js +1 -0
- package/dist/cjs/types/values/Number.js.map +7 -0
- package/dist/cjs/types/values/RangeVector.js +1 -0
- package/dist/cjs/types/values/RangeVector.js.map +7 -0
- package/dist/cjs/types/values/Str.js +1 -0
- package/dist/cjs/types/values/Str.js.map +7 -0
- package/dist/cjs/types/values/StringVector.js +1 -0
- package/dist/cjs/types/values/StringVector.js.map +7 -0
- package/dist/cjs/types/values/TargetElementPath.js +1 -0
- package/dist/cjs/types/values/TargetElementPath.js.map +7 -0
- package/dist/cjs/types/values/Variable.js +1 -0
- package/dist/cjs/types/values/Variable.js.map +7 -0
- package/dist/cjs/types/values/Vector.js +1 -0
- package/dist/cjs/types/values/Vector.js.map +7 -0
- package/dist/esm/index.js +10 -9
- package/dist/esm/index.js.map +7 -0
- package/dist/types/template.d.ts +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/compilers/BindingCompiler.ts"],
|
|
4
|
+
"sourcesContent": ["import { Random } from \"../components/Random\";\r\nimport { UI } from \"../components/UI\";\r\nimport { OverrideInterface } from \"../types/objects/Modify\";\r\nimport { Binding } from \"../types/values/Binding\";\r\nimport { funcObj } from \"./BindingFunctions\";\r\nimport { Log } from \"./generator/Log\";\r\nimport { CurrentLine } from \"./reader/CurrentLine\";\r\n\r\nexport interface BindingFunctionObject {\r\n [key: string]: (arg: UI | OverrideInterface, params: Array<string>) => Binding;\r\n}\r\nexport class BindingCompiler {\r\n static compile(propertyName: string | string[], arg: UI | OverrideInterface) {\r\n return this.build(this.getCompilePart(propertyName), arg).replace(/__BREAK_LINE__/g, \"\\n\");\r\n }\r\n\r\n static getCompilePart(propertyName: string | string[]) {\r\n return Array.isArray(propertyName)\r\n ? propertyName[0]\r\n : propertyName.slice(1, propertyName.length - 1);\r\n }\r\n\r\n static build(propertyName: string, arg: UI | OverrideInterface) {\r\n const tokens = this.lexer(propertyName, arg);\r\n\r\n let build = \"(\";\r\n\r\n for (let index = 0; index < tokens.length; index++) {\r\n let token = tokens[index];\r\n\r\n if (this.isScientificNotation(token)) {\r\n const [left, right] = token.split(\"e\");\r\n token = \"\" + Number(left) * Math.pow(10, Number(right));\r\n }\r\n\r\n if (token === \"!\") build += \"not \";\r\n else {\r\n if (\r\n this.isNegativeNumber(token) &&\r\n !this.isOperator(tokens[index - 1]) &&\r\n tokens[index - 1] !== undefined\r\n ) {\r\n build += `- ${token.slice(1)} `;\r\n } else build += `${token} `;\r\n }\r\n }\r\n\r\n build = `${build.slice(0, build.length - 1)})`;\r\n\r\n return build;\r\n }\r\n\r\n static buildNewPropertyBag(token: string, arg: UI | OverrideInterface) {\r\n const bindingName: any = Random.bindingName();\r\n arg.setProperties({\r\n property_bag: {\r\n [bindingName]: BindingCompiler.build(token, arg),\r\n },\r\n });\r\n return bindingName;\r\n }\r\n\r\n static checkAndBuild(token: string, arg: UI | OverrideInterface) {\r\n return this.isHasBinding(token)\r\n ? this.build(token, arg)\r\n : this.buildNewPropertyBag(token, arg);\r\n }\r\n\r\n static compileSpecialOperator(tokens: Array<string>, arg: UI | OverrideInterface) {\r\n let firstTokens: Array<string> = [];\r\n\r\n if (tokens.includes(\"?\")) {\r\n const startIndex = tokens.indexOf(\"?\");\r\n firstTokens.push(...tokens.slice(0, startIndex));\r\n\r\n let elseCount = 0;\r\n\r\n const secondTokens: Array<string> = [];\r\n const thirdTokens: Array<string> = [];\r\n\r\n let questionCount = 1;\r\n let endIndex = -1;\r\n\r\n for (let index = startIndex + 1; index < tokens.length; index++) {\r\n const token = tokens[index];\r\n\r\n if (token === \"?\") questionCount++;\r\n else if (token === \":\" && --questionCount == 0) {\r\n endIndex = index;\r\n elseCount++;\r\n break;\r\n }\r\n\r\n secondTokens.push(token);\r\n }\r\n\r\n thirdTokens.push(...tokens.slice(endIndex + 1));\r\n\r\n const generateBindingName = <`#${string}`>Random.bindingName();\r\n const firstBinding = this.checkAndBuild(firstTokens.join(\"\"), arg);\r\n const secondBinding = `${generateBindingName}true`;\r\n const thirdBinding = `${generateBindingName}false`;\r\n\r\n arg.addBindings([\r\n {\r\n source_property_name: this.checkAndBuild(secondTokens.join(\"\"), arg),\r\n target_property_name: <any>secondBinding,\r\n },\r\n {\r\n source_property_name: [`'${generateBindingName}{${firstBinding}}'`],\r\n target_property_name: <any>generateBindingName,\r\n },\r\n ]);\r\n\r\n if (elseCount !== 0) {\r\n arg.addBindings({\r\n source_property_name: this.checkAndBuild(thirdTokens.join(\"\"), arg),\r\n target_property_name: <any>thirdBinding,\r\n });\r\n }\r\n\r\n return [generateBindingName];\r\n } else if (tokens.includes(\"==\")) {\r\n const preBuild: Array<string> = [];\r\n\r\n let strToken: Array<string> = [];\r\n\r\n for (const token of tokens) {\r\n if (token === \"==\") {\r\n const binding = this.buildNewBinding(strToken.join(\"\"), arg);\r\n strToken = [];\r\n preBuild.push(...[binding, \"=\"]);\r\n } else {\r\n strToken.push(token);\r\n }\r\n }\r\n\r\n preBuild.push(this.buildNewBinding(strToken.join(\"\"), arg));\r\n strToken = [];\r\n\r\n const build: Array<string> = [];\r\n\r\n for (let i = 0; i < preBuild.length; i++) {\r\n if (preBuild[i] === \"=\") {\r\n if (build.length > 0) build.push(\"&\");\r\n\r\n const [preToken, token, nextToken] = [\r\n preBuild[i - 1],\r\n preBuild[i],\r\n preBuild[i + 1],\r\n ];\r\n build.push(this.buildNewBinding(`${preToken} ${token} ${nextToken}`, arg));\r\n }\r\n }\r\n\r\n return build;\r\n } else {\r\n for (let index = 0; index < tokens.length; index++) {\r\n const token = tokens[index];\r\n\r\n if ([\"&&\", \"||\", \"&\", \"|\"].includes(token)) {\r\n const secondTokens = tokens.slice(index + 1);\r\n\r\n const firstBinding =\r\n firstTokens.length === 1\r\n ? firstTokens[0]\r\n : this.buildNewBinding(firstTokens.join(\" \"), arg);\r\n\r\n const secondBinding =\r\n secondTokens.length === 1\r\n ? secondTokens[0]\r\n : this.buildNewBinding(tokens.slice(index + 1).join(\" \"), arg);\r\n\r\n return [\r\n firstBinding,\r\n [\"&&\", \"&\"].includes(token) ? \"and\" : \"or\",\r\n secondBinding,\r\n ];\r\n } else firstTokens.push(token);\r\n }\r\n\r\n firstTokens = firstTokens.slice(firstTokens.length);\r\n\r\n for (let index = 0; index < tokens.length; index++) {\r\n const token = tokens[index];\r\n if ([\"%\", \">=\", \"<=\", \"!=\"].includes(token)) {\r\n const secondTokens = tokens.slice(index + 1);\r\n\r\n const firstBinding =\r\n firstTokens.length === 1\r\n ? firstTokens[0]\r\n : this.buildNewBinding(firstTokens.join(\"\"), arg);\r\n\r\n const secondBinding =\r\n secondTokens.length === 1\r\n ? secondTokens[0]\r\n : this.buildNewBinding(tokens.slice(index + 1).join(\"\"), arg);\r\n\r\n switch (token) {\r\n case \">=\": {\r\n return [\r\n \"(\",\r\n firstBinding,\r\n \">\",\r\n secondBinding,\r\n \")\",\r\n \"or\",\r\n \"(\",\r\n firstBinding,\r\n \"=\",\r\n secondBinding,\r\n \")\",\r\n ];\r\n }\r\n case \"<=\": {\r\n return [\r\n \"(\",\r\n firstBinding,\r\n \"<\",\r\n secondBinding,\r\n \")\",\r\n \"or\",\r\n \"(\",\r\n firstBinding,\r\n \"=\",\r\n secondBinding,\r\n \")\",\r\n ];\r\n }\r\n case \"!=\": {\r\n return [\r\n \"not\",\r\n this.buildNewBinding(`${firstBinding} = ${secondBinding}`, arg),\r\n ];\r\n }\r\n case \"%\": {\r\n return [\r\n firstBinding,\r\n \"-\",\r\n firstBinding,\r\n \"/\",\r\n secondBinding,\r\n \"*\",\r\n secondBinding,\r\n ];\r\n }\r\n }\r\n } else firstTokens.push(token);\r\n }\r\n }\r\n\r\n return firstTokens;\r\n }\r\n\r\n static lexer(propertyName: string, arg: UI | OverrideInterface) {\r\n const getTokens = this.compileSpecialOperator(\r\n this.readTokens(this.getTokens(this.splitString(propertyName))).map(token => {\r\n if (this.isCodeBlock(token))\r\n return <string>this.buildNewBinding(token.slice(1, token.length - 1), arg);\r\n else if (this.isFunction(token)) {\r\n return <string>this.functionHandler(token, arg);\r\n } else if (this.isString(token)) {\r\n return <string>this.stringHandler(token, arg);\r\n } else return token;\r\n }),\r\n arg\r\n );\r\n\r\n return getTokens;\r\n }\r\n\r\n static splitString(propertyName: string) {\r\n const tokens: Array<string> = [];\r\n let token = \"\",\r\n openFormatCount = 0,\r\n isString: boolean = false;\r\n\r\n for (const char of propertyName) {\r\n if (char === \"'\" && openFormatCount === 0) {\r\n isString = !isString;\r\n\r\n if (token !== \"\" || !isString) tokens.push(isString ? token : `'${token}'`);\r\n\r\n token = \"\";\r\n } else if (char === \"\\n\" && isString) {\r\n token += \"__BREAK_LINE__\";\r\n } else if (char === \"{\" && isString) {\r\n openFormatCount++;\r\n token += \"{\";\r\n } else if (char === \"}\" && isString) {\r\n openFormatCount--;\r\n token += \"}\";\r\n } else if (char !== \" \" || isString) {\r\n token += char;\r\n }\r\n }\r\n\r\n if (token !== \"\") tokens.push(token);\r\n return tokens;\r\n }\r\n\r\n static stringHandler(token: string, arg: UI | OverrideInterface) {\r\n const tokens = this.getStringTokens(token.slice(1, token.length - 1))\r\n .map(token => {\r\n if (this.isStringCode(token))\r\n return BindingCompiler.build(token.slice(1, token.length - 1), arg);\r\n else return `'${token}'`;\r\n })\r\n .filter(token => ![\"'{}'\", \")\"].includes(token));\r\n return tokens.length > 1 ? `(${tokens.join(\" + \")})` : tokens[0] || \"''\";\r\n }\r\n\r\n static getStringTokens(token: string) {\r\n const tokens: Array<string> = [];\r\n let bracketsCount = 0,\r\n strToken = \"\";\r\n\r\n for (const char of token) {\r\n if (char === \"{\") {\r\n if (bracketsCount++ === 0 && strToken !== \"\") {\r\n tokens.push(strToken);\r\n strToken = \"\";\r\n }\r\n strToken += char;\r\n } else if (char === \"}\") {\r\n strToken += char;\r\n if (--bracketsCount === 0 && strToken !== \"\") {\r\n tokens.push(strToken);\r\n strToken = \"\";\r\n }\r\n } else strToken += char;\r\n }\r\n\r\n if (strToken !== \"\") tokens.push(strToken);\r\n\r\n return tokens;\r\n }\r\n\r\n static functionHandler(token: string, arg: UI | OverrideInterface) {\r\n const func = this.readFunctionFromToken(this.getTokens(this.splitString(token)), arg);\r\n\r\n let str: string = \"\";\r\n\r\n if (funcObj[func.name]) {\r\n str = <string>funcObj[func.name](\r\n arg,\r\n func.params.map(token => {\r\n token = token.replace(/__BREAK_LINE__/g, \"\\n\");\r\n return this.isStringPattern(token) ? this.build(`(${token})`, arg) : token;\r\n })\r\n );\r\n } else {\r\n Log.error(`${CurrentLine()} binding function '${func.name}' does not exist!`);\r\n str = `'[Compile Error]: function >>${func.name}<< not found!'`;\r\n }\r\n\r\n return str;\r\n }\r\n\r\n static readFunctionFromToken(tokens: Array<string>, arg: UI | OverrideInterface) {\r\n const name = tokens[0];\r\n tokens = tokens.slice(2, tokens.length - 1);\r\n\r\n const params: Array<string> = [];\r\n let param = \"\",\r\n $ = 0;\r\n\r\n for (const token of tokens) {\r\n if (token === \",\" && !$) {\r\n params.push(param);\r\n param = \"\";\r\n } else if (token === \"(\") {\r\n $++;\r\n param += token;\r\n } else if (token === \")\") {\r\n $--;\r\n param += token;\r\n } else param += token;\r\n }\r\n if (param !== \"\") params.push(param);\r\n\r\n return {\r\n name,\r\n params: params.map(token => {\r\n if (this.getTokens(this.splitString(token)).length > 1)\r\n return this.build(this.isCodeBlock(token) ? token : `(${token})`, arg);\r\n else return token;\r\n }),\r\n };\r\n }\r\n\r\n static readTokens(strTokens: Array<string>) {\r\n const tokens: Array<string> = [];\r\n let strToken = \"\";\r\n let functionName: string | null = null,\r\n brackets = 0;\r\n\r\n for (const token of strTokens) {\r\n if (this.maybeFunctionName(token) && !brackets) {\r\n if (functionName) tokens.push(functionName);\r\n functionName = token;\r\n } else if ([\"(\", \")\"].includes(token)) {\r\n if (functionName) {\r\n strToken += functionName;\r\n functionName = null;\r\n }\r\n if (token === \"(\") brackets++;\r\n else brackets--;\r\n strToken += token;\r\n if (brackets === 0) {\r\n tokens.push(strToken);\r\n strToken = \"\";\r\n }\r\n } else {\r\n if (brackets) strToken += token;\r\n else if (functionName) {\r\n tokens.push(functionName);\r\n functionName = null;\r\n tokens.push(token);\r\n } else tokens.push(token);\r\n }\r\n }\r\n\r\n if (functionName) tokens.push(functionName);\r\n return tokens;\r\n }\r\n\r\n static getTokens(strTokens: Array<string>) {\r\n const tokens: Array<string> = [];\r\n for (const token of strTokens) {\r\n if (this.isString(token)) tokens.push(token);\r\n else\r\n tokens.push(\r\n ...(token.match(\r\n /-?((\\d+\\.)?\\d+)(e-?\\d+)?|[#$]?\\w+|[><=!]?=|(&&|\\|\\|)|[\\[\\]()+\\-*\\/=><!,&%|?:]/gm\r\n ) ?? [])\r\n );\r\n }\r\n return tokens;\r\n }\r\n\r\n static buildNewBinding(token: string, arg: UI | OverrideInterface) {\r\n const rndName = <`#${string}`>Random.bindingName();\r\n\r\n if (this.isHasBinding(token)) {\r\n if (this.isBindingOrVariable(token)) return token;\r\n\r\n arg.addBindings({\r\n source_property_name: [token],\r\n target_property_name: rndName,\r\n });\r\n } else {\r\n arg.setProperties({\r\n property_bag: {\r\n [rndName]: this.compile(token, arg),\r\n },\r\n });\r\n }\r\n\r\n return rndName;\r\n }\r\n\r\n static findSourceBindings(\r\n token: string,\r\n sourceControlsName: string,\r\n lastResourceBindings?: any\r\n ) {\r\n const reSourceBindings: Record<string, string> = lastResourceBindings || {};\r\n const newTokens: string[] = [];\r\n\r\n this.getTokens(this.splitString(token)).forEach(token => {\r\n if (this.isBindingOrVariable(token)) {\r\n newTokens.push(\r\n (reSourceBindings[`${token}:${sourceControlsName}`] ||= <string>(\r\n Random.bindingName()\r\n ))\r\n );\r\n } else if (this.isString(token)) {\r\n newTokens.push(\r\n this.getStringTokens(token)\r\n .map(token => {\r\n if (this.isStringCode(token)) {\r\n const sourceBindings = this.findSourceBindings(\r\n token.slice(1, token.length - 1),\r\n sourceControlsName,\r\n reSourceBindings\r\n );\r\n for (const key in sourceBindings.reSourceBindings)\r\n reSourceBindings[key] = sourceBindings.reSourceBindings[key];\r\n return `{${sourceBindings.newTokens.join(\"\")}}`;\r\n } else return token;\r\n })\r\n .join(\"\")\r\n );\r\n } else newTokens.push(token);\r\n });\r\n\r\n return { reSourceBindings, newTokens };\r\n }\r\n\r\n static isCanCompile(token: string | string[]) {\r\n return Array.isArray(token) || (token.startsWith(\"[\") && token.endsWith(\"]\"));\r\n }\r\n\r\n static isString(token: string) {\r\n return /^'.+'$/.test(token) || token === \"''\";\r\n }\r\n\r\n static isStringCode(token: string) {\r\n return /^{.+}$/.test(token);\r\n }\r\n\r\n static isStringPattern(token: string) {\r\n return this.isString(token) && /\\{.+\\}/.test(token);\r\n }\r\n\r\n static isNegativeNumber(token: string) {\r\n return /^-((\\d+\\.)?\\d+)$/.test(token);\r\n }\r\n\r\n static isScientificNotation(token: string) {\r\n return /^-?((\\d+\\.)?\\d+)(e-?\\d+)$/.test(token);\r\n }\r\n\r\n static isFunction(token: string) {\r\n return /^\\w+\\(.*\\)$/.test(token);\r\n }\r\n\r\n static isArray(token: string) {\r\n return /^\\[.*\\]$/.test(token);\r\n }\r\n\r\n static isCodeBlock(token: string) {\r\n return /^\\(.+\\)$/.test(token);\r\n }\r\n\r\n static maybeFunctionName(token: string) {\r\n return /^\\w+$/.test(token);\r\n }\r\n\r\n static isBindingOrVariable(token: string) {\r\n return /^[#$]\\w+$/.test(token);\r\n }\r\n\r\n static isOperator(token: string) {\r\n return /^[+\\-*\\/%><=!&|]$|^[><=!]=$/.test(token);\r\n }\r\n\r\n static isHasBinding(token: string) {\r\n return /#\\w+/.test(token);\r\n }\r\n\r\n static isNumber(value: string) {\r\n return /^(\\d+|\\d+\\.\\d+|-\\d+|-\\d+\\.\\d+)$/.test(value);\r\n }\r\n}\r\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["token"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/compilers/BindingFunctions.ts"],
|
|
4
|
+
"sourcesContent": ["import { Class } from \"../components/Class\";\r\nimport { Random } from \"../components/Random\";\r\nimport { UI } from \"../components/UI\";\r\nimport { OverrideInterface, ModificationBindingsInterface } from \"../types/objects/Modify\";\r\nimport { Binding } from \"../types/values/Binding\";\r\nimport { BindingCompiler, BindingFunctionObject } from \"./BindingCompiler\";\r\nimport { Log } from \"./generator/Log\";\r\nimport { CurrentLine } from \"./reader/CurrentLine\";\r\n\r\nexport const funcObj: BindingFunctionObject = {\r\n sum: (arg, params) => {\r\n const bindingName = Random.bindingName();\r\n arg.addBindings({\r\n source_property_name: `(${params.join(\" + \")})`,\r\n target_property_name: bindingName,\r\n });\r\n return bindingName;\r\n },\r\n\r\n sumAvg: (arg, params) => {\r\n const bindingName = Random.bindingName();\r\n\r\n arg.addBindings({\r\n source_property_name: `((${params.join(\" + \")}) / ${params.length})`,\r\n target_property_name: bindingName,\r\n });\r\n\r\n return bindingName;\r\n },\r\n\r\n max: (arg, params) => {\r\n let current: Binding = <any>params[0];\r\n\r\n for (const nextBinding of params.slice(1)) {\r\n arg.addBindings({\r\n source_property_name: [\r\n `(${current} >= ${nextBinding}) * ${current} + (${current} < ${nextBinding}) * ${nextBinding}`,\r\n ],\r\n target_property_name: (current = Random.bindingName()),\r\n });\r\n }\r\n\r\n return current;\r\n },\r\n\r\n min: (arg, params) => {\r\n let current: Binding = <any>params[0];\r\n\r\n for (const nextBinding of params.slice(1)) {\r\n arg.addBindings({\r\n source_property_name: [\r\n `(${current} <= ${nextBinding}) * ${current} + (${current} > ${nextBinding}) * ${nextBinding}`,\r\n ],\r\n target_property_name: (current = Random.bindingName()),\r\n });\r\n }\r\n\r\n return current;\r\n },\r\n\r\n abs: (arg, [binding]) => {\r\n const bindingName = Random.bindingName();\r\n arg.addBindings({\r\n source_property_name: `((-1 + (${binding} > 0) * 2) * ${binding})`,\r\n target_property_name: bindingName,\r\n });\r\n return bindingName;\r\n },\r\n\r\n isEven: (arg, params) => {\r\n const bindingName = Random.bindingName();\r\n if (params.length > 1) {\r\n params.map(binding => {\r\n const bindingName = Random.bindingName();\r\n arg.addBindings({\r\n source_property_name: [`(${binding} % 2) == 0`],\r\n target_property_name: bindingName,\r\n });\r\n return bindingName;\r\n });\r\n arg.addBindings({\r\n source_property_name: `(${params.join(\" and \")})`,\r\n target_property_name: bindingName,\r\n });\r\n } else {\r\n arg.addBindings({\r\n source_property_name: [`(${params[0]} % 2) == 0`],\r\n target_property_name: bindingName,\r\n });\r\n }\r\n\r\n return bindingName;\r\n },\r\n\r\n isOdd: (arg, params) => {\r\n const bindingName = Random.bindingName();\r\n if (params.length > 1) {\r\n params.map(binding => {\r\n const bindingName = Random.bindingName();\r\n arg.addBindings({\r\n source_property_name: [`(${binding} % 2) == 1`],\r\n target_property_name: bindingName,\r\n });\r\n return bindingName;\r\n });\r\n arg.addBindings({\r\n source_property_name: `(${params.join(\" and \")})`,\r\n target_property_name: bindingName,\r\n });\r\n } else {\r\n arg.addBindings({\r\n source_property_name: [`(${params[0]} % 2) == 1`],\r\n target_property_name: bindingName,\r\n });\r\n }\r\n\r\n return bindingName;\r\n },\r\n\r\n int: (arg, [float, intLength]) => {\r\n const sumBnd: Array<string> = [];\r\n const _intLength = Number.isNaN(+intLength) ? -1 : +intLength;\r\n let bindingName: any = Random.bindingName();\r\n\r\n if (_intLength < 0) {\r\n arg.setProperties({\r\n property_bag: {\r\n [bindingName]: 0,\r\n },\r\n });\r\n\r\n arg.addBindings({\r\n source_property_name: `(${bindingName} + (${bindingName} < ${float}) - (${bindingName} > ${float}))`,\r\n target_property_name: bindingName,\r\n });\r\n } else {\r\n let calcBindingName: any = Random.bindingName();\r\n\r\n arg.addBindings({\r\n source_property_name: [`abs(${float})`],\r\n target_property_name: <any>(calcBindingName = Random.bindingName()),\r\n });\r\n\r\n for (let i = _intLength - 1; i >= 0; i--) {\r\n arg.addBindings({\r\n source_property_name: `(${Math.pow(10, i)} * (${Array.from(\r\n {\r\n length: 10,\r\n },\r\n (v, c) => `(${calcBindingName} > ${(c + 1) * Math.pow(10, i) - 1})`\r\n ).join(\" + \")}))`,\r\n target_property_name: <any>(bindingName = Random.bindingName()),\r\n });\r\n sumBnd.push(bindingName);\r\n if (i !== 0)\r\n arg.addBindings({\r\n source_property_name: `(${calcBindingName} - ${bindingName})`,\r\n target_property_name: <any>(calcBindingName = Random.bindingName()),\r\n });\r\n }\r\n\r\n arg.addBindings([\r\n {\r\n source_property_name: `(${sumBnd.join(\" + \")})`,\r\n target_property_name: <any>(bindingName = Random.bindingName()),\r\n },\r\n {\r\n source_property_name: `(${bindingName} * (1 - (${float} < 0) * 2))`,\r\n target_property_name: <any>(bindingName = Random.bindingName()),\r\n },\r\n ]);\r\n }\r\n\r\n return bindingName;\r\n },\r\n\r\n slice: (arg, [str, start, end]) => {\r\n const bindingName: any = Random.bindingName();\r\n if (!(BindingCompiler.isString(str) || BindingCompiler.isHasBinding(str))) str = `'${str}'`;\r\n if (end) {\r\n arg.addBindings({\r\n source_property_name: [` '%.{${end} - ${start}}s' * slice(${str}, ${start}) `],\r\n target_property_name: bindingName,\r\n });\r\n } else {\r\n arg.addBindings({\r\n source_property_name: [\r\n Number.isNaN(+start)\r\n ? ` '__START__{ ${str} }' - '__START__{ '%.{ ${start} }s' * ${str} }' `\r\n : ` '__START__{ ${str} }' - '__START__{ '%.${start}s' * ${str} }' `,\r\n ],\r\n target_property_name: bindingName,\r\n });\r\n }\r\n return bindingName;\r\n },\r\n\r\n pow: (arg, [num1, num2]) => {\r\n const bindingName: any = Random.bindingName();\r\n\r\n if (BindingCompiler.isNumber(num2)) {\r\n const $2 = +num2;\r\n\r\n if (BindingCompiler.isNumber(num1)) return Math.pow(+num1, $2);\r\n else {\r\n if ($2 === 0) return 1;\r\n else if ($2 > 0) return Array.from({ length: $2 }, () => num1).join(\" * \");\r\n else return `1 / ${Array.from({ length: $2 * -1 }, () => num1).join(\" / \")}`;\r\n }\r\n } else {\r\n for (let i = 1; i <= 32; i++) {\r\n arg.addBindings({\r\n source_property_name: `(${num2} / ((${num1} < ${i}) * ${num2}))`,\r\n target_property_name: <any>`${bindingName}${i}`,\r\n });\r\n\r\n arg.addBindings({\r\n source_property_name: `(${num2} / ((${num1} > ${i * -1}) * ${num2}))`,\r\n target_property_name: <any>`${bindingName}_${i}`,\r\n });\r\n }\r\n\r\n arg.addBindings({\r\n source_property_name: `( ${Array.from(\r\n { length: 32 },\r\n (v, i) => `${bindingName}${i + 1}`\r\n ).join(\" * \")} / ${Array.from(\r\n { length: 32 },\r\n (v, i) => `${bindingName}_${i + 1}`\r\n ).join(\" / \")})`,\r\n target_property_name: bindingName,\r\n });\r\n }\r\n\r\n return bindingName;\r\n },\r\n\r\n sqrt: (arg, [num]) => {\r\n const bindingName: any = Random.bindingName();\r\n\r\n if (BindingCompiler.isNumber(num)) {\r\n return `${Math.sqrt(+num)}`;\r\n } else {\r\n const binding2: any = Random.bindingName();\r\n\r\n const x = 100;\r\n\r\n arg.addBindings([\r\n {\r\n source_property_name: `(${num} * ${x} / 2)`,\r\n target_property_name: bindingName,\r\n },\r\n {\r\n source_property_name: `[ abs((${bindingName} * ${bindingName}) - ${num}) > 1 ]`,\r\n target_property_name: binding2,\r\n },\r\n {\r\n source_property_name: `( (${num} < 0) * -1 + (${num} > -1) * (${binding2} * ((${bindingName} + ${num} / ${bindingName}) / 2) + (not ${binding2}) * ${bindingName}) )`,\r\n target_property_name: bindingName,\r\n },\r\n ]);\r\n }\r\n\r\n return bindingName;\r\n },\r\n};\r\n\r\nexport type BindingFunctionsCallback<T = UI | OverrideInterface | ModificationBindingsInterface> = (\r\n element: T,\r\n params: Array<string>\r\n) => Binding | string;\r\n\r\nexport class BindingFunctions extends Class {\r\n static register<T = UI | OverrideInterface | ModificationBindingsInterface>(\r\n name: string,\r\n callback: BindingFunctionsCallback<T>,\r\n override?: boolean\r\n ) {\r\n const n = name;\r\n if (override || !funcObj[n]) {\r\n funcObj[n] = <any>callback;\r\n } else\r\n Log.error(\r\n `${CurrentLine()} '${n}' function already exists, do you want to override it?`\r\n );\r\n }\r\n}\r\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["bindingName"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/compilers/Compiler.ts"],
|
|
4
|
+
"sourcesContent": ["import fs from \"fs\";\nimport { Manifest } from \"./generator/Manifest\";\nimport { UIBuilder } from \"./generator/UIBuilder\";\nimport { Configs } from \"./Config\";\nimport { CompressPack } from \"./Compress\";\nimport { SoundHandler as Sounds } from \"./generator/Sounds\";\nimport { FormatAudio } from \"./reader/Audio\";\nimport { Logs } from \"./generator/Log\";\nimport { Encoder } from \"./Encoder\";\nimport { UIWriteJson } from \"./PreCompile\";\nimport { localizeText } from \"../components/LocalizeText\";\nimport { LangBuilder } from \"./generator/LangBuilder\";\nimport { Minecraft, ResourcePack } from \"../types/objects/Installer\";\nimport { ResourcePacks } from \"./Installer\";\n\nconst config = Configs.getConfig();\n\nexport const installer = new ResourcePacks({\n installGame: config.installer.previewVersion ? Minecraft.Preview : Minecraft.Stable,\n installFolder: config.installer.developEvironment\n ? ResourcePack.Development\n : ResourcePack.Production,\n});\n\nfunction manifestBuild(installPath: string): void {\n const { name, description, uuid, version, baseGameVersion } = config.manifest;\n const manifest = new Manifest({ name, description, uuid, version });\n manifest.manifest.header.min_engine_version = baseGameVersion;\n\n UIWriteJson(`${installPath}/manifest.json`, manifest.manifest, \"utf-8\");\n}\n\nlet isRunned = false;\nprocess.on(\"beforeExit\", () => {\n if (isRunned) return;\n isRunned = true;\n\n const installPath = installer.getInstallPath();\n\n config.installer.autoInstall =\n config.installer.autoInstall && fs.existsSync(installer.installPath);\n\n const buildPath = config.installer.autoInstall ? installPath : \".build\";\n\n // Clean up temporary build directories\n UIBuilder.delete(buildPath);\n if (fs.existsSync(\".build\")) fs.rmSync(\".build\", { recursive: true });\n if (fs.existsSync(\".minecraft\")) fs.unlinkSync(\".minecraft\");\n\n // Create necessary directories if they do not exist\n if (!fs.existsSync(`.bedrock`)) fs.mkdirSync(\".bedrock\");\n if (!fs.existsSync(`${buildPath}`)) fs.mkdirSync(`${buildPath}`);\n if (!fs.existsSync(`${buildPath}/@`)) fs.mkdirSync(`${buildPath}/@`);\n\n try {\n console.log(\"---------- COMPILING ----------\");\n\n FormatAudio();\n\n // Perform actions depending on whether the build is within the project or external\n if (config.installer.autoInstall) {\n installer.packLink();\n console.timeLog(\"COMPILER\", \"Symlink completed!\");\n console.log();\n }\n\n // Copy bedrock resources to build path\n fs.cpSync(\".bedrock\", buildPath, { recursive: true });\n console.timeLog(\"COMPILER\", \"Copy bedrock resources completed!\");\n console.log();\n\n // Compile various UI files\n console.timeLog(\"COMPILER\", `${UIBuilder.jsonUI(buildPath)} custom file(s) compiled!`);\n console.log();\n console.timeLog(\"COMPILER\", `${UIBuilder.modify(buildPath)} modify file(s) compiled!`);\n console.log();\n if (Object.keys(localizeText).length) {\n console.timeLog(\"COMPILER\", `${LangBuilder.build(buildPath)} lang file(s) compiled!`);\n console.log();\n }\n\n // Generate and save the manifest\n manifestBuild(buildPath);\n console.timeLog(\"COMPILER\", `Manifest file has been compiled!`);\n\n // Compile UI and other required resources\n console.timeLog(\n \"COMPILER\",\n `ui/_ui_defs.json ${UIBuilder.uiDefs(buildPath)} files path(s) found!`\n );\n console.timeLog(\n \"COMPILER\",\n `ui/_global_variables.json ${UIBuilder.globalVariables(\n buildPath\n )} variable(s) compiled!`\n );\n console.timeLog(\n \"COMPILER\",\n `textures/textures_list.json ${UIBuilder.texturesList(buildPath)} files path(s) found!`\n );\n\n const soundLength = Sounds.compile(buildPath);\n if (soundLength)\n console.timeLog(\n \"COMPILER\",\n `sounds/sound_definitions.json ${soundLength} sound id has regisrer!`\n );\n\n console.timeLog(\n \"COMPILER\",\n `contents.json ${UIBuilder.contents(buildPath)} file path(s) found!`\n );\n\n // Install the resource pack if not building within the project\n if (config.installer.autoInstall) {\n installer.installPack(config.manifest.uuid, config.manifest.version);\n console.timeLog(\"COMPILER\", `Resource Pack has been installed!`);\n }\n\n // Compress the pack if enabled in the config\n if (config.compiler.autoCompress) {\n CompressPack(buildPath);\n console.timeLog(\"COMPILER\", \"Minecraft-UIBuild.mcpack Pack compress completed!\");\n }\n\n // Encode json code\n if (config.compiler.encodeJson) {\n Encoder.start();\n console.timeLog(\"COMPILER\", `Encoded ${Encoder.count} JSON file(s) successfully!`);\n }\n\n // Final log of compilation completion\n console.log();\n console.timeLog(\"COMPILER\", \"Compile completed!\");\n\n // Warning log\n if (Logs.length) {\n console.log(\"\\n---------- Build Log ----------\");\n\n for (const log of Logs) {\n if (log.type === \"warning\") console.warn(log.message);\n else if (log.type === \"error\") console.error(log.message);\n }\n }\n\n // Display relevant information\n console.log(\"\\n---------- INFO ----------\");\n console.log(`Name: \\x1b[96m${config.manifest.name}\\x1b[0m`);\n console.log(`Description: \\x1b[96m${config.manifest.description}\\x1b[0m`);\n console.log(`UUID: \\x1b[96m${config.manifest.uuid}\\x1b[0m`);\n console.log(\n `Pack Version: \\x1b[96m${config.manifest.version[0]}.${config.manifest.version[1]}.${config.manifest.version[2]}\\x1b[0m`\n );\n console.log(\n `Base Game Version: \\x1b[96m${config.manifest.baseGameVersion[0]}.${config.manifest.baseGameVersion[1]}.${config.manifest.baseGameVersion[2]}\\x1b[0m`\n );\n\n // Print install path if not building within the project\n if (config.installer.autoInstall)\n console.log(`Install Path: \\x1b[96m${installPath}\\x1b[0m`);\n } catch (error) {\n // Handle any errors during the compilation process\n console.timeLog(\"COMPILER\", \"An error occurred while compiling!\");\n console.error(error);\n }\n});\n\nexport {};\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAAe;AACf,sBAAyB;AACzB,uBAA0B;AAC1B,oBAAwB;AACxB,sBAA6B;AAC7B,oBAAuC;AACvC,mBAA4B;AAC5B,iBAAqB;AACrB,qBAAwB;AACxB,wBAA4B;AAC5B,0BAA6B;AAC7B,yBAA4B;AAC5B,uBAAwC;AACxC,IAAAA,oBAA8B;AAE9B,MAAM,SAAS,sBAAQ,UAAU;AAE1B,MAAM,YAAY,IAAI,gCAAc;AAAA,EACvC,aAAa,OAAO,UAAU,iBAAiB,2BAAU,UAAU,2BAAU;AAAA,EAC7E,eAAe,OAAO,UAAU,oBAC1B,8BAAa,cACb,8BAAa;AACvB,CAAC;AAED,SAAS,cAAc,aAA2B;AAC9C,QAAM,EAAE,MAAM,aAAa,MAAM,SAAS,gBAAgB,IAAI,OAAO;AACrE,QAAM,WAAW,IAAI,yBAAS,EAAE,MAAM,aAAa,MAAM,QAAQ,CAAC;AAClE,WAAS,SAAS,OAAO,qBAAqB;AAE9C,qCAAY,GAAG,oBAAW,mBAAkB,SAAS,UAAU,OAAO;AAC1E;AAEA,IAAI,WAAW;AACf,QAAQ,GAAG,cAAc,MAAM;AAC3B,MAAI,SAAU;AACd,aAAW;AAEX,QAAM,cAAc,UAAU,eAAe;AAE7C,SAAO,UAAU,cACb,OAAO,UAAU,eAAe,UAAAC,QAAG,WAAW,UAAU,WAAW;AAEvE,QAAM,YAAY,OAAO,UAAU,cAAc,cAAc;AAG/D,6BAAU,OAAO,SAAS;AAC1B,MAAI,UAAAA,QAAG,WAAW,QAAQ,EAAG,WAAAA,QAAG,OAAO,UAAU,EAAE,WAAW,KAAK,CAAC;AACpE,MAAI,UAAAA,QAAG,WAAW,YAAY,EAAG,WAAAA,QAAG,WAAW,YAAY;AAG3D,MAAI,CAAC,UAAAA,QAAG,WAAW,UAAU,EAAG,WAAAA,QAAG,UAAU,UAAU;AACvD,MAAI,CAAC,UAAAA,QAAG,WAAW,GAAG,iBAAW,EAAG,WAAAA,QAAG,UAAU,GAAG,iBAAW;AAC/D,MAAI,CAAC,UAAAA,QAAG,WAAW,GAAG,kBAAS,KAAI,EAAG,WAAAA,QAAG,UAAU,GAAG,kBAAS,KAAI;AAEnE,MAAI;AACA,YAAQ,IAAI,iCAAiC;AAE7C,kCAAY;AAGZ,QAAI,OAAO,UAAU,aAAa;AAC9B,gBAAU,SAAS;AACnB,cAAQ,QAAQ,YAAY,oBAAoB;AAChD,cAAQ,IAAI;AAAA,IAChB;AAGA,cAAAA,QAAG,OAAO,YAAY,WAAW,EAAE,WAAW,KAAK,CAAC;AACpD,YAAQ,QAAQ,YAAY,mCAAmC;AAC/D,YAAQ,IAAI;AAGZ,YAAQ,QAAQ,YAAY,GAAG,kCAAU,OAAO,SAAS,GAAC,4BAA2B;AACrF,YAAQ,IAAI;AACZ,YAAQ,QAAQ,YAAY,GAAG,kCAAU,OAAO,SAAS,GAAC,4BAA2B;AACrF,YAAQ,IAAI;AACZ,QAAI,OAAO,KAAK,gCAAY,EAAE,QAAQ;AAClC,cAAQ,QAAQ,YAAY,GAAG,sCAAY,MAAM,SAAS,GAAC,0BAAyB;AACpF,cAAQ,IAAI;AAAA,IAChB;AAGA,kBAAc,SAAS;AACvB,YAAQ,QAAQ,YAAY,kCAAkC;AAG9D,YAAQ;AAAA,MACJ;AAAA,MACA,oBAAoB,kCAAU,OAAO,SAAS,GAAC;AAAA,IACnD;AACA,YAAQ;AAAA,MACJ;AAAA,MACA,6BAA6B,kCAAU;AAAA,QACnC;AAAA,MACJ,GAAC;AAAA,IACL;AACA,YAAQ;AAAA,MACJ;AAAA,MACA,+BAA+B,kCAAU,aAAa,SAAS,GAAC;AAAA,IACpE;AAEA,UAAM,cAAc,cAAAC,aAAO,QAAQ,SAAS;AAC5C,QAAI;AACA,cAAQ;AAAA,QACJ;AAAA,QACA,iCAAiC,oBAAW;AAAA,MAChD;AAEJ,YAAQ;AAAA,MACJ;AAAA,MACA,iBAAiB,kCAAU,SAAS,SAAS,GAAC;AAAA,IAClD;AAGA,QAAI,OAAO,UAAU,aAAa;AAC9B,gBAAU,YAAY,OAAO,SAAS,MAAM,OAAO,SAAS,OAAO;AACnE,cAAQ,QAAQ,YAAY,mCAAmC;AAAA,IACnE;AAGA,QAAI,OAAO,SAAS,cAAc;AAC9B,wCAAa,SAAS;AACtB,cAAQ,QAAQ,YAAY,mDAAmD;AAAA,IACnF;AAGA,QAAI,OAAO,SAAS,YAAY;AAC5B,6BAAQ,MAAM;AACd,cAAQ,QAAQ,YAAY,WAAW,8BAAQ,OAAK,8BAA6B;AAAA,IACrF;AAGA,YAAQ,IAAI;AACZ,YAAQ,QAAQ,YAAY,oBAAoB;AAGhD,QAAI,gBAAK,QAAQ;AACb,cAAQ,IAAI,mCAAmC;AAE/C,iBAAW,OAAO,iBAAM;AACpB,YAAI,IAAI,SAAS,UAAW,SAAQ,KAAK,IAAI,OAAO;AAAA,iBAC3C,IAAI,SAAS,QAAS,SAAQ,MAAM,IAAI,OAAO;AAAA,MAC5D;AAAA,IACJ;AAGA,YAAQ,IAAI,8BAA8B;AAC1C,YAAQ,IAAI,iBAAiB,cAAO,SAAS,MAAI,UAAS;AAC1D,YAAQ,IAAI,wBAAwB,cAAO,SAAS,aAAW,UAAS;AACxE,YAAQ,IAAI,iBAAiB,cAAO,SAAS,MAAI,UAAS;AAC1D,YAAQ;AAAA,MACJ,yBAAyB,cAAO,SAAS,QAAQ,CAAC,GAAC,KAAI,cAAO,SAAS,QAAQ,CAAC,GAAC,KAAI,cAAO,SAAS,QAAQ,CAAC,GAAC;AAAA,IACnH;AACA,YAAQ;AAAA,MACJ,8BAA8B,cAAO,SAAS,gBAAgB,CAAC,GAAC,KAAI,cAAO,SAAS,gBAAgB,CAAC,GAAC,KAAI,cAAO,SAAS,gBAAgB,CAAC,GAAC;AAAA,IAChJ;AAGA,QAAI,OAAO,UAAU;AACjB,cAAQ,IAAI,yBAAyB,oBAAW,UAAS;AAAA,EACjE,SAAS,OAAO;AAEZ,YAAQ,QAAQ,YAAY,oCAAoC;AAChE,YAAQ,MAAM,KAAK;AAAA,EACvB;AACJ,CAAC;",
|
|
6
|
+
"names": ["import_Installer", "fs", "Sounds"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/compilers/Compress.ts"],
|
|
4
|
+
"sourcesContent": ["import fs from \"fs\";\nimport AdmZip from \"adm-zip\";\nimport { SearchFiles } from \"./generator/SearchFiles\";\n\nexport function CompressPack(buildPath: string): void {\n\tif (fs.existsSync(\"Minecraft-UIBuild.mcpack\"))\n\t\tfs.rmSync(\"Minecraft-UIBuild.mcpack\");\n\n\tconst zip = new AdmZip(undefined, {\n\t\tfs,\n\t});\n\n\tSearchFiles.forEach(buildPath, (path) => {\n\t\tconst pathSplit = path.path.split(\"/\");\n\t\tzip.addLocalFile(\n\t\t\t`${buildPath}/${path.path}`,\n\t\t\tpathSplit.length !== 1\n\t\t\t\t? pathSplit.slice(0, pathSplit.length - 1).join(\"/\")\n\t\t\t\t: undefined\n\t\t);\n\t});\n\n\tzip.writeZip(\"Minecraft-UIBuild.mcpack\");\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAAe;AACf,qBAAmB;AACnB,yBAA4B;AAErB,SAAS,aAAa,WAAyB;AACrD,MAAI,UAAAA,QAAG,WAAW,0BAA0B;AAC3C,cAAAA,QAAG,OAAO,0BAA0B;AAErC,QAAM,MAAM,IAAI,eAAAC,QAAO,QAAW;AAAA,IACjC,cAAAD;AAAA,EACD,CAAC;AAED,iCAAY,QAAQ,WAAW,CAAC,SAAS;AACxC,UAAM,YAAY,KAAK,KAAK,MAAM,GAAG;AACrC,QAAI;AAAA,MACH,GAAG,kBAAS,KAAI,YAAK;AAAA,MACrB,UAAU,WAAW,IAClB,UAAU,MAAM,GAAG,UAAU,SAAS,CAAC,EAAE,KAAK,GAAG,IACjD;AAAA,IACJ;AAAA,EACD,CAAC;AAED,MAAI,SAAS,0BAA0B;AACxC;",
|
|
6
|
+
"names": ["fs", "AdmZip"]
|
|
7
|
+
}
|
|
@@ -50,8 +50,8 @@ const defaultConfig = {
|
|
|
50
50
|
installPath: void 0
|
|
51
51
|
},
|
|
52
52
|
manifest: {
|
|
53
|
-
name: "
|
|
54
|
-
description: "Build with
|
|
53
|
+
name: "AsaJS",
|
|
54
|
+
description: "Build with AsaJS <3",
|
|
55
55
|
uuid: import_Save.Save.uuid()[0],
|
|
56
56
|
version: [1, 0, 0],
|
|
57
57
|
baseGameVersion: [1, 21, 80]
|
|
@@ -136,3 +136,4 @@ Configs.getConfig();
|
|
|
136
136
|
config,
|
|
137
137
|
readObject
|
|
138
138
|
});
|
|
139
|
+
//# sourceMappingURL=Config.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/compilers/Config.ts"],
|
|
4
|
+
"sourcesContent": ["import { UUID } from \"crypto\";\r\nimport { Save } from \"./generator/Save\";\r\nimport { Obj } from \"./reader/Object\";\r\nimport { firstRun } from \"./generator/Template\";\r\nimport { SemverString, Version } from \"../types/objects/Manifest\";\r\n\r\nfirstRun();\r\n\r\nconst defaultConfig: Config = {\r\n compiler: {\r\n encodeJson: false,\r\n autoCompress: false,\r\n fileExtension: \"json\",\r\n UI: {\r\n nameLength: 32,\r\n namespaceAmount: 16,\r\n namespaceLength: 32,\r\n obfuscateName: false,\r\n obfuscateType: false,\r\n },\r\n },\r\n installer: {\r\n autoInstall: true,\r\n developEvironment: true,\r\n previewVersion: false,\r\n customPath: false,\r\n installPath: undefined,\r\n },\r\n manifest: {\r\n name: \"AsaJS\",\r\n description: \"Build with AsaJS <3\",\r\n uuid: Save.uuid()[0],\r\n version: [1, 0, 0],\r\n baseGameVersion: [1, 21, 80],\r\n },\r\n};\r\n\r\n/**\r\n * Interface representing the structure of a config manifest.\r\n * This is used to define the metadata of the resource pack.\r\n */\r\ninterface ConfigManifest {\r\n name: string;\r\n description: string;\r\n version: Version | SemverString;\r\n baseGameVersion: Version;\r\n uuid: UUID;\r\n}\r\n\r\ninterface ConfigCompilerUI {\r\n obfuscateName: boolean;\r\n obfuscateType: boolean;\r\n nameLength: number;\r\n namespaceLength: number;\r\n namespaceAmount: number;\r\n}\r\n\r\ninterface ConfigCompiler {\r\n UI: ConfigCompilerUI;\r\n autoCompress: boolean;\r\n fileExtension: string;\r\n encodeJson: boolean;\r\n}\r\n\r\ninterface ConfigInstaller {\r\n autoInstall: boolean;\r\n developEvironment: boolean;\r\n previewVersion: boolean;\r\n customPath: boolean;\r\n installPath?: string;\r\n}\r\n\r\nexport interface Config {\r\n installer: ConfigInstaller;\r\n compiler: ConfigCompiler;\r\n manifest: ConfigManifest;\r\n}\r\n\r\n/**\r\n * Reads an object and applies default values where necessary.\r\n *\r\n * This function allows deeply nested objects to be filled with default values when they are undefined.\r\n *\r\n * @param {object} [obj] - The object to read and apply the default values to.\r\n * @param {object} [defaultObjValue] - The default values to use if any properties in `obj` are undefined.\r\n * @returns {object} - The object with default values applied.\r\n */\r\nexport function readObject(obj?: object, defaultObjValue?: object) {\r\n if (Array.isArray(defaultObjValue)) {\r\n if (!obj) obj = [];\r\n defaultObjValue.forEach((value, index) => {\r\n (<any>obj)[index] = (<any>obj)[index] ?? value;\r\n });\r\n return obj;\r\n } else {\r\n if (!obj) obj = {};\r\n Obj.forEach(defaultObjValue || {}, (key, value) => {\r\n if (typeof value === \"object\") {\r\n (<any>obj)[key] = readObject((<any>obj)[key], (<any>defaultObjValue)[key]);\r\n } else {\r\n (<any>obj)[key] = (<any>obj)[key] ?? (<any>defaultObjValue)[key];\r\n }\r\n });\r\n return obj;\r\n }\r\n}\r\n\r\n/**\r\n * A class to manage and load configuration settings.\r\n *\r\n * The class allows reading from a configuration file and merging the saved configuration\r\n * with default values when necessary.\r\n */\r\nexport class Configs {\r\n /**\r\n * The current loaded configuration saved to disk.\r\n */\r\n save: Config;\r\n\r\n /**\r\n * The statically cached configuration.\r\n */\r\n static config: Config;\r\n\r\n /**\r\n * Loads the configuration file and parses it into the `save` property.\r\n */\r\n constructor() {\r\n this.save = require(`${process.cwd()}/asakiyuki.config.cjs`).config;\r\n }\r\n\r\n /**\r\n * Retrieves the current configuration, either from the saved configuration or the default values.\r\n *\r\n * @returns {Config} - The configuration object.\r\n */\r\n static getConfig(): Config {\r\n if (Configs.config === undefined) {\r\n const defaultConfig = Configs.getDefaultConfig();\r\n const saveConfig = new Configs().save;\r\n return readObject(saveConfig, defaultConfig) as Config;\r\n } else return Configs.config;\r\n }\r\n\r\n /**\r\n * Retrieves the default configuration values.\r\n *\r\n * @returns {Config} - The default configuration object.\r\n */\r\n static getDefaultConfig(): Config {\r\n return defaultConfig;\r\n }\r\n\r\n // Static helper methods not directly related to config loading/handling.\r\n private static apply() {}\r\n private static arguments = \"\";\r\n private static bind() {}\r\n private static call() {}\r\n private static caller = \"\";\r\n private static length = \"\";\r\n private static name = \"\";\r\n private static toString() {}\r\n}\r\n\r\n/**\r\n * Exporting the Configs class to be used globally.\r\n *\r\n * This allows other modules to access the configuration settings through `config`.\r\n */\r\nexport const config = Configs;\r\n\r\nConfigs.getConfig();\r\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,kBAAqB;AACrB,oBAAoB;AACpB,sBAAyB;AAAA,IAGzB,0BAAS;AAET,MAAM,gBAAwB;AAAA,EAC1B,UAAU;AAAA,IACN,YAAY;AAAA,IACZ,cAAc;AAAA,IACd,eAAe;AAAA,IACf,IAAI;AAAA,MACA,YAAY;AAAA,MACZ,iBAAiB;AAAA,MACjB,iBAAiB;AAAA,MACjB,eAAe;AAAA,MACf,eAAe;AAAA,IACnB;AAAA,EACJ;AAAA,EACA,WAAW;AAAA,IACP,aAAa;AAAA,IACb,mBAAmB;AAAA,IACnB,gBAAgB;AAAA,IAChB,YAAY;AAAA,IACZ,aAAa;AAAA,EACjB;AAAA,EACA,UAAU;AAAA,IACN,MAAM;AAAA,IACN,aAAa;AAAA,IACb,MAAM,iBAAK,KAAK,EAAE,CAAC;AAAA,IACnB,SAAS,CAAC,GAAG,GAAG,CAAC;AAAA,IACjB,iBAAiB,CAAC,GAAG,IAAI,EAAE;AAAA,EAC/B;AACJ;AAoDO,SAAS,WAAW,KAAc,iBAA0B;AAC/D,MAAI,MAAM,QAAQ,eAAe,GAAG;AAChC,QAAI,CAAC,IAAK,OAAM,CAAC;AACjB,oBAAgB,QAAQ,CAAC,OAAO,UAAU;AA1FlD;AA2FY,MAAM,IAAK,KAAK,KAAU,SAAK,KAAK,MAAV,YAAe;AAAA,IAC7C,CAAC;AACD,WAAO;AAAA,EACX,OAAO;AACH,QAAI,CAAC,IAAK,OAAM,CAAC;AACjB,sBAAI,QAAQ,mBAAmB,CAAC,GAAG,CAAC,KAAK,UAAU;AAhG3D;AAiGY,UAAI,OAAO,UAAU,UAAU;AAC3B,QAAM,IAAK,GAAG,IAAI,WAAiB,IAAK,GAAG,GAAS,gBAAiB,GAAG,CAAC;AAAA,MAC7E,OAAO;AACH,QAAM,IAAK,GAAG,KAAU,SAAK,GAAG,MAAR,YAAmB,gBAAiB,GAAG;AAAA,MACnE;AAAA,IACJ,CAAC;AACD,WAAO;AAAA,EACX;AACJ;AAQO,MAAM,WAAN,MAAM,SAAQ;AAAA;AAAA;AAAA;AAAA,EAcjB,cAAc;AAVd;AAAA;AAAA;AAAA;AAWI,SAAK,OAAO,QAAQ,GAAG,eAAQ,IAAI,GAAC,wBAAuB,EAAE;AAAA,EACjE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,OAAO,YAAoB;AACvB,QAAI,SAAQ,WAAW,QAAW;AAC9B,YAAMA,iBAAgB,SAAQ,iBAAiB;AAC/C,YAAM,aAAa,IAAI,SAAQ,EAAE;AACjC,aAAO,WAAW,YAAYA,cAAa;AAAA,IAC/C,MAAO,QAAO,SAAQ;AAAA,EAC1B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,OAAO,mBAA2B;AAC9B,WAAO;AAAA,EACX;AAAA;AAAA,EAGA,OAAe,QAAQ;AAAA,EAAC;AAAA,EAExB,OAAe,OAAO;AAAA,EAAC;AAAA,EACvB,OAAe,OAAO;AAAA,EAAC;AAAA,EAIvB,OAAe,WAAW;AAAA,EAAC;AAC/B;AAAA;AAAA;AAAA;AAxCI,cATS,UASF;AAiCP,cA1CS,UA0CM,aAAY;AAG3B,cA7CS,UA6CM,UAAS;AACxB,cA9CS,UA8CM,UAAS;AACxB,cA/CS,UA+CM,QAAO;AA/CnB,IAAM,UAAN;AAwDA,MAAM,SAAS;AAEtB,QAAQ,UAAU;",
|
|
6
|
+
"names": ["defaultConfig"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/compilers/Encoder.ts"],
|
|
4
|
+
"sourcesContent": ["import fs from \"fs\";\nimport { Class } from \"../components/Class\";\nimport { jsonFilePath, WritePreComment } from \"./PreCompile\";\nimport { Obj } from \"./reader/Object\";\n\nexport class Encoder extends Class {\n static count: number = 0;\n\n static start() {\n for (const path of jsonFilePath) {\n const code = Encoder.readCode(path);\n const encode = Encoder.encode(code);\n Encoder.replaceCode(path, encode);\n Encoder.count++;\n }\n }\n\n static replaceCode(path: string, code: any) {\n fs.writeFileSync(path, WritePreComment(code).replaceAll(\"\\\\\\\\\", \"\\\\\"), \"utf-8\");\n }\n\n static encode(code: any): any {\n return Array.isArray(code) ? Encoder.encodeArray(code) : Encoder.encodeObject(code);\n }\n\n static encodeArray(code: any[]): any[] {\n return code.map(value => {\n const valueType = typeof value;\n\n if (valueType === \"object\") {\n return Encoder.encode(value);\n } else if (valueType === \"string\") return Encoder.encodeString(value);\n else return value;\n });\n }\n\n static encodeObject(code: any): object {\n return Obj.map(code, (key, value): any => {\n const valueType = typeof value;\n key = Encoder.encodeString(key);\n\n if (valueType === \"object\") {\n return {\n key,\n value: Encoder.encode(value),\n };\n } else if (valueType === \"string\") {\n return { key, value: Encoder.encodeString(value) };\n } else return { key, value };\n });\n }\n\n static encodeString(code: string) {\n return Array.from(code)\n .map(char => `\\\\u${char.charCodeAt(0).toString(16).padStart(4, \"0\")}`)\n .join(\"\");\n }\n\n static readCode(path: string) {\n return JSON.parse(fs.readFileSync(path, \"utf-8\"));\n }\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAAe;AACf,mBAAsB;AACtB,wBAA8C;AAC9C,oBAAoB;AAEb,MAAM,WAAN,MAAM,iBAAgB,mBAAM;AAAA,EAG/B,OAAO,QAAQ;AACX,eAAW,QAAQ,gCAAc;AAC7B,YAAM,OAAO,SAAQ,SAAS,IAAI;AAClC,YAAM,SAAS,SAAQ,OAAO,IAAI;AAClC,eAAQ,YAAY,MAAM,MAAM;AAChC,eAAQ;AAAA,IACZ;AAAA,EACJ;AAAA,EAEA,OAAO,YAAY,MAAc,MAAW;AACxC,cAAAA,QAAG,cAAc,UAAM,mCAAgB,IAAI,EAAE,WAAW,QAAQ,IAAI,GAAG,OAAO;AAAA,EAClF;AAAA,EAEA,OAAO,OAAO,MAAgB;AAC1B,WAAO,MAAM,QAAQ,IAAI,IAAI,SAAQ,YAAY,IAAI,IAAI,SAAQ,aAAa,IAAI;AAAA,EACtF;AAAA,EAEA,OAAO,YAAY,MAAoB;AACnC,WAAO,KAAK,IAAI,WAAS;AACrB,YAAM,YAAY,OAAO;AAEzB,UAAI,cAAc,UAAU;AACxB,eAAO,SAAQ,OAAO,KAAK;AAAA,MAC/B,WAAW,cAAc,SAAU,QAAO,SAAQ,aAAa,KAAK;AAAA,UAC/D,QAAO;AAAA,IAChB,CAAC;AAAA,EACL;AAAA,EAEA,OAAO,aAAa,MAAmB;AACnC,WAAO,kBAAI,IAAI,MAAM,CAAC,KAAK,UAAe;AACtC,YAAM,YAAY,OAAO;AACzB,YAAM,SAAQ,aAAa,GAAG;AAE9B,UAAI,cAAc,UAAU;AACxB,eAAO;AAAA,UACH;AAAA,UACA,OAAO,SAAQ,OAAO,KAAK;AAAA,QAC/B;AAAA,MACJ,WAAW,cAAc,UAAU;AAC/B,eAAO,EAAE,KAAK,OAAO,SAAQ,aAAa,KAAK,EAAE;AAAA,MACrD,MAAO,QAAO,EAAE,KAAK,MAAM;AAAA,IAC/B,CAAC;AAAA,EACL;AAAA,EAEA,OAAO,aAAa,MAAc;AAC9B,WAAO,MAAM,KAAK,IAAI,EACjB,IAAI,UAAQ,MAAM,YAAK,WAAW,CAAC,EAAE,SAAS,EAAE,EAAE,SAAS,GAAG,GAAG,EAAG,EACpE,KAAK,EAAE;AAAA,EAChB;AAAA,EAEA,OAAO,SAAS,MAAc;AAC1B,WAAO,KAAK,MAAM,UAAAA,QAAG,aAAa,MAAM,OAAO,CAAC;AAAA,EACpD;AACJ;AAvDI,cADS,UACF,SAAgB;AADpB,IAAM,UAAN;",
|
|
6
|
+
"names": ["fs"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/compilers/Installer.ts"],
|
|
4
|
+
"sourcesContent": ["import fs from \"fs\";\nimport { SemverString, UUID, Version } from \"./../types/objects/Manifest\";\nimport { Save } from \"./generator/Save\";\nimport { UIBuilder } from \"./generator/UIBuilder\";\nimport { Configs } from \"./Config\";\nimport { GlobalResourcePacks, ResourcePackInterface } from \"../types/objects/Installer\";\n\nexport class ResourcePacks {\n gamePath: string;\n gameDataPath: string;\n installPath: string;\n globalResoucePacksPath: string;\n\n constructor(data: ResourcePackInterface) {\n const config = Configs.getConfig();\n\n if (config.installer.installPath && config.installer.customPath) {\n this.gamePath = config.installer.installPath;\n } else {\n switch (process.platform) {\n case \"win32\":\n this.gamePath = `${process.env.LOCALAPPDATA}/Packages/${data.installGame}/LocalState`;\n break;\n case \"linux\":\n this.gamePath = `${process.env.HOME}/.local/share/mcpelauncher`;\n if (!fs.existsSync(this.gamePath))\n this.gamePath = `${process.env.HOME}/.var/app/io.mrarm.mcpelauncher/data/mcpelauncher`;\n break;\n default:\n this.gamePath = \"\";\n }\n }\n\n this.gameDataPath = `${this.gamePath}/games/com.mojang`;\n this.installPath = `${this.gameDataPath}/${data.installFolder}`;\n this.globalResoucePacksPath = `${this.gameDataPath}/minecraftpe/global_resource_packs.json`;\n }\n\n isPackInstalled(uuid: UUID, version: Version | SemverString) {\n const globalResourcePacks: Array<GlobalResourcePacks> = fs.existsSync(\n this.globalResoucePacksPath\n )\n ? JSON.parse(fs.readFileSync(this.globalResoucePacksPath, \"utf-8\"))\n : [];\n const versionIsArray = Array.isArray(version);\n if (versionIsArray) version = <SemverString>JSON.stringify(version);\n for (const packData of globalResourcePacks) {\n if (\n packData.pack_id === uuid &&\n (versionIsArray ? JSON.stringify(packData.version) : packData.version) === version\n )\n return true;\n }\n return false;\n }\n\n installPack(uuid: UUID, version: Version | SemverString) {\n if (this.isPackInstalled(uuid, version)) return;\n const globalResourcePacks: Array<GlobalResourcePacks> = fs.existsSync(\n this.globalResoucePacksPath\n )\n ? JSON.parse(fs.readFileSync(this.globalResoucePacksPath, \"utf-8\"))\n : [];\n\n fs.writeFileSync(\n this.globalResoucePacksPath,\n JSON.stringify([\n {\n pack_id: uuid,\n version,\n },\n ...globalResourcePacks,\n ]),\n \"utf-8\"\n );\n }\n\n uninstallPack(uuid: UUID, version: Version | SemverString) {\n const globalResourcePacks: Array<GlobalResourcePacks> = fs.existsSync(\n this.globalResoucePacksPath\n )\n ? JSON.parse(fs.readFileSync(this.globalResoucePacksPath, \"utf-8\"))\n : [];\n const versionIsArray = Array.isArray(version);\n if (versionIsArray) version = <SemverString>JSON.stringify(version);\n let i = -1;\n for (const packData of globalResourcePacks) {\n i++;\n if (\n packData.pack_id === uuid &&\n (versionIsArray ? JSON.stringify(packData.version) : packData.version) === version\n ) {\n globalResourcePacks.splice(i, 1);\n break;\n }\n }\n fs.writeFileSync(this.globalResoucePacksPath, JSON.stringify(globalResourcePacks));\n }\n\n getInstallPath() {\n return `${this.installPath}/${Save.getBuildID()}`;\n }\n\n packLink() {\n UIBuilder.delete(\".minecraft\");\n fs.symlinkSync(this.getInstallPath(), \".minecraft\", \"junction\");\n }\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAAe;AAEf,kBAAqB;AACrB,uBAA0B;AAC1B,oBAAwB;AAGjB,MAAM,cAAc;AAAA,EAMvB,YAAY,MAA6B;AALzC;AACA;AACA;AACA;AAGI,UAAM,SAAS,sBAAQ,UAAU;AAEjC,QAAI,OAAO,UAAU,eAAe,OAAO,UAAU,YAAY;AAC7D,WAAK,WAAW,OAAO,UAAU;AAAA,IACrC,OAAO;AACH,cAAQ,QAAQ,UAAU;AAAA,QACtB,KAAK;AACD,eAAK,WAAW,GAAG,eAAQ,IAAI,cAAY,cAAa,YAAK,aAAW;AACxE;AAAA,QACJ,KAAK;AACD,eAAK,WAAW,GAAG,eAAQ,IAAI,MAAI;AACnC,cAAI,CAAC,UAAAA,QAAG,WAAW,KAAK,QAAQ;AAC5B,iBAAK,WAAW,GAAG,eAAQ,IAAI,MAAI;AACvC;AAAA,QACJ;AACI,eAAK,WAAW;AAAA,MACxB;AAAA,IACJ;AAEA,SAAK,eAAe,GAAG,YAAK,UAAQ;AACpC,SAAK,cAAc,GAAG,YAAK,cAAY,KAAI,YAAK;AAChD,SAAK,yBAAyB,GAAG,YAAK,cAAY;AAAA,EACtD;AAAA,EAEA,gBAAgB,MAAY,SAAiC;AACzD,UAAM,sBAAkD,UAAAA,QAAG;AAAA,MACvD,KAAK;AAAA,IACT,IACM,KAAK,MAAM,UAAAA,QAAG,aAAa,KAAK,wBAAwB,OAAO,CAAC,IAChE,CAAC;AACP,UAAM,iBAAiB,MAAM,QAAQ,OAAO;AAC5C,QAAI,eAAgB,WAAwB,KAAK,UAAU,OAAO;AAClE,eAAW,YAAY,qBAAqB;AACxC,UACI,SAAS,YAAY,SACpB,iBAAiB,KAAK,UAAU,SAAS,OAAO,IAAI,SAAS,aAAa;AAE3E,eAAO;AAAA,IACf;AACA,WAAO;AAAA,EACX;AAAA,EAEA,YAAY,MAAY,SAAiC;AACrD,QAAI,KAAK,gBAAgB,MAAM,OAAO,EAAG;AACzC,UAAM,sBAAkD,UAAAA,QAAG;AAAA,MACvD,KAAK;AAAA,IACT,IACM,KAAK,MAAM,UAAAA,QAAG,aAAa,KAAK,wBAAwB,OAAO,CAAC,IAChE,CAAC;AAEP,cAAAA,QAAG;AAAA,MACC,KAAK;AAAA,MACL,KAAK,UAAU;AAAA,QACX;AAAA,UACI,SAAS;AAAA,UACT;AAAA,QACJ;AAAA,QACA,GAAG;AAAA,MACP,CAAC;AAAA,MACD;AAAA,IACJ;AAAA,EACJ;AAAA,EAEA,cAAc,MAAY,SAAiC;AACvD,UAAM,sBAAkD,UAAAA,QAAG;AAAA,MACvD,KAAK;AAAA,IACT,IACM,KAAK,MAAM,UAAAA,QAAG,aAAa,KAAK,wBAAwB,OAAO,CAAC,IAChE,CAAC;AACP,UAAM,iBAAiB,MAAM,QAAQ,OAAO;AAC5C,QAAI,eAAgB,WAAwB,KAAK,UAAU,OAAO;AAClE,QAAI,IAAI;AACR,eAAW,YAAY,qBAAqB;AACxC;AACA,UACI,SAAS,YAAY,SACpB,iBAAiB,KAAK,UAAU,SAAS,OAAO,IAAI,SAAS,aAAa,SAC7E;AACE,4BAAoB,OAAO,GAAG,CAAC;AAC/B;AAAA,MACJ;AAAA,IACJ;AACA,cAAAA,QAAG,cAAc,KAAK,wBAAwB,KAAK,UAAU,mBAAmB,CAAC;AAAA,EACrF;AAAA,EAEA,iBAAiB;AACb,WAAO,GAAG,YAAK,aAAW,KAAI,wBAAK,WAAW;AAAA,EAClD;AAAA,EAEA,WAAW;AACP,+BAAU,OAAO,YAAY;AAC7B,cAAAA,QAAG,YAAY,KAAK,eAAe,GAAG,cAAc,UAAU;AAAA,EAClE;AACJ;",
|
|
6
|
+
"names": ["fs"]
|
|
7
|
+
}
|
|
@@ -57,7 +57,7 @@ console.timeEnd = function(label) {
|
|
|
57
57
|
delete timeMap[label];
|
|
58
58
|
};
|
|
59
59
|
function WritePreComment(data) {
|
|
60
|
-
const comment = "This file is generated by the
|
|
60
|
+
const comment = "This file is generated by the AsaJS compiler. Do not edit it directly.";
|
|
61
61
|
if (import_fs.default.readFileSync("comment.txt", "utf-8").trim() !== "") {
|
|
62
62
|
const info = import_fs.default.readFileSync("comment.txt", "utf-8").replaceAll("\n", "\n * ");
|
|
63
63
|
return "/*\n * ".concat(comment, "\n * ----------------------------------------------------------------------\n * ").concat(info, "\n */\n").concat(JSON.stringify(
|
|
@@ -84,3 +84,4 @@ function UIWriteJson(file, data, options) {
|
|
|
84
84
|
WritePreComment,
|
|
85
85
|
jsonFilePath
|
|
86
86
|
});
|
|
87
|
+
//# sourceMappingURL=PreCompile.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/compilers/PreCompile.ts"],
|
|
4
|
+
"sourcesContent": ["import fs from \"fs\";\nimport { Configs } from \"./Config\";\n\nif (!fs.existsSync(\"comment.txt\")) {\n fs.writeFileSync(\"comment.txt\", \"\", \"utf-8\");\n}\n\nconst timeMap: Record<string, number> = {};\n\nconsole.time = function (label: string) {\n timeMap[label] = performance.now();\n};\n\nconsole.timeLog = function (tag: string, ...data) {\n const now = performance.now();\n const time = now - timeMap[tag];\n console.log(\n `\\x1b[90m[${time.toFixed(2)}ms]`,\n `\\x1b[32m[${tag}]\\x1b[0m`,\n \">>\",\n ...data,\n \"\\x1b[0m\"\n );\n};\n\nconsole.timeEnd = function (label: string) {\n delete timeMap[label];\n};\n\nexport function WritePreComment(data: any) {\n const comment = \"This file is generated by the AsaJS compiler. Do not edit it directly.\";\n\n if (fs.readFileSync(\"comment.txt\", \"utf-8\").trim() !== \"\") {\n const info = fs.readFileSync(\"comment.txt\", \"utf-8\").replaceAll(\"\\n\", \"\\n * \");\n return `/*\\n * ${comment}\\n * ----------------------------------------------------------------------\\n * ${info}\\n */\\n${JSON.stringify(\n data\n )}`;\n } else {\n return `// ${comment}\\n${JSON.stringify(data)}`;\n }\n}\n\nexport const jsonFilePath: string[] = [];\nexport function UIWriteJson(file: string, data: any, options?: fs.WriteFileOptions) {\n const writeData = JSON.stringify(data);\n\n if (writeData == \"{}\") return;\n\n if (Configs.getConfig().compiler.encodeJson) {\n fs.writeFileSync(file, writeData, options);\n } else {\n fs.writeFileSync(file, WritePreComment(data), options);\n }\n jsonFilePath.push(file);\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAAe;AACf,oBAAwB;AAExB,IAAI,CAAC,UAAAA,QAAG,WAAW,aAAa,GAAG;AAC/B,YAAAA,QAAG,cAAc,eAAe,IAAI,OAAO;AAC/C;AAEA,MAAM,UAAkC,CAAC;AAEzC,QAAQ,OAAO,SAAU,OAAe;AACpC,UAAQ,KAAK,IAAI,YAAY,IAAI;AACrC;AAEA,QAAQ,UAAU,SAAU,QAAgB,MAAM;AAC9C,QAAM,MAAM,YAAY,IAAI;AAC5B,QAAM,OAAO,MAAM,QAAQ,GAAG;AAC9B,UAAQ;AAAA,IACJ,YAAY,YAAK,QAAQ,CAAC,GAAC;AAAA,IAC3B,YAAY,YAAG;AAAA,IACf;AAAA,IACA,GAAG;AAAA,IACH;AAAA,EACJ;AACJ;AAEA,QAAQ,UAAU,SAAU,OAAe;AACvC,SAAO,QAAQ,KAAK;AACxB;AAEO,SAAS,gBAAgB,MAAW;AACvC,QAAM,UAAU;AAEhB,MAAI,UAAAA,QAAG,aAAa,eAAe,OAAO,EAAE,KAAK,MAAM,IAAI;AACvD,UAAM,OAAO,UAAAA,QAAG,aAAa,eAAe,OAAO,EAAE,WAAW,MAAM,OAAO;AAC7E,WAAO,UAAU,gBAAO,oFAAmF,aAAI,WAAU,YAAK;AAAA,MAC1H;AAAA,IACJ;AAAA,EACJ,OAAO;AACH,WAAO,MAAM,gBAAO,MAAK,YAAK,UAAU,IAAI;AAAA,EAChD;AACJ;AAEO,MAAM,eAAyB,CAAC;AAChC,SAAS,YAAY,MAAc,MAAW,SAA+B;AAChF,QAAM,YAAY,KAAK,UAAU,IAAI;AAErC,MAAI,aAAa,KAAM;AAEvB,MAAI,sBAAQ,UAAU,EAAE,SAAS,YAAY;AACzC,cAAAA,QAAG,cAAc,MAAM,WAAW,OAAO;AAAA,EAC7C,OAAO;AACH,cAAAA,QAAG,cAAc,MAAM,gBAAgB,IAAI,GAAG,OAAO;AAAA,EACzD;AACA,eAAa,KAAK,IAAI;AAC1B;",
|
|
6
|
+
"names": ["fs"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/compilers/generator/GenerateDir.ts"],
|
|
4
|
+
"sourcesContent": ["import fs from \"fs\";\n\nexport function GenerateDir(installPath: string, path?: string): void {\n path = path ? `${installPath}/${path}` : installPath;\n\n if (!fs.existsSync(path)) {\n let lastPath = \"\";\n const folderPath = path.split(\"/\") || [];\n folderPath.pop();\n for (const folder of folderPath) {\n if (!(folder === \"\" || fs.existsSync(`${lastPath}${folder}`)))\n fs.mkdirSync(`${lastPath}${folder}`);\n lastPath = `${lastPath}${folder}/`;\n }\n }\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAAe;AAER,SAAS,YAAY,aAAqB,MAAqB;AAClE,SAAO,OAAO,GAAG,oBAAW,KAAI,eAAS;AAEzC,MAAI,CAAC,UAAAA,QAAG,WAAW,IAAI,GAAG;AACtB,QAAI,WAAW;AACf,UAAM,aAAa,KAAK,MAAM,GAAG,KAAK,CAAC;AACvC,eAAW,IAAI;AACf,eAAW,UAAU,YAAY;AAC7B,UAAI,EAAE,WAAW,MAAM,UAAAA,QAAG,WAAW,GAAG,iBAAW,cAAQ;AACvD,kBAAAA,QAAG,UAAU,GAAG,iBAAW,cAAQ;AACvC,iBAAW,GAAG,iBAAW,eAAM;AAAA,IACnC;AAAA,EACJ;AACJ;",
|
|
6
|
+
"names": ["fs"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/compilers/generator/JsonBuilder.ts"],
|
|
4
|
+
"sourcesContent": ["import { AnimationKeyFrame } from \"../../components/AnimationKeyFrame\";\r\nimport { Class } from \"../../components/Class\";\r\nimport { Modify } from \"../../components/Modify\";\r\nimport { UI } from \"../../components/UI\";\r\nimport { Configs } from \"../Config\";\r\nimport { CurrentLine } from \"../reader/CurrentLine\";\r\nimport { Log } from \"./Log\";\r\n\r\ninterface JsonObject {\r\n build: {\r\n [file: string]: {\r\n namespace: string;\r\n [element: string]: any;\r\n };\r\n };\r\n modify: {\r\n [modifyFilePath: string]: {\r\n [path: string]: Modify;\r\n };\r\n };\r\n globalVariables: {\r\n [key: `$${string}`]: any;\r\n };\r\n}\r\n\r\nexport class JsonBuilder extends Class {\r\n static save: JsonObject = {\r\n build: {},\r\n globalVariables: {},\r\n modify: {},\r\n };\r\n\r\n static registerGlobalVariable(key: string, value: any): void {\r\n this.save.globalVariables[`$${key}`] = value;\r\n }\r\n\r\n static registerElement(namespace: string, element: UI | AnimationKeyFrame): void {\r\n const extension = Configs.getConfig().compiler.fileExtension;\r\n const buildFile = (this.save.build[\r\n `${namespace}${extension === \"\" ? \"\" : `.${extension}`}`\r\n ] ||= { namespace });\r\n\r\n for (const e in buildFile) {\r\n if (e.split(\"@\")[0] === element.getFullPath().split(\"@\")[0]) {\r\n Log.error(\r\n `${CurrentLine()} element has a duplicate name and namespace, which can be override.`\r\n );\r\n break;\r\n }\r\n }\r\n\r\n buildFile[element.getFullPath()] = element;\r\n }\r\n\r\n static getModify(modifyFile: string, modifyElement: string): Modify {\r\n return this.save.modify[modifyFile]?.[modifyElement];\r\n }\r\n\r\n static registerModify(modifyFile: string, modifyElement: string, modify: Modify): Modify {\r\n const modifyFileSave = (this.save.modify[modifyFile] ??= {});\r\n return (modifyFileSave[modifyElement] = modify);\r\n }\r\n}\r\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,mBAAsB;AAGtB,oBAAwB;AACxB,yBAA4B;AAC5B,iBAAoB;AAmBb,MAAM,oBAAoB,mBAAM;AAAA,EAOnC,OAAO,uBAAuB,KAAa,OAAkB;AACzD,SAAK,KAAK,gBAAgB,IAAI,WAAK,IAAI;AAAA,EAC3C;AAAA,EAEA,OAAO,gBAAgB,WAAmB,SAAuC;AApCrF;AAqCQ,UAAM,YAAY,sBAAQ,UAAU,EAAE,SAAS;AAC/C,UAAM,aAAa,UAAK,KAAK,OAAV,KACf,GAAG,kBAAY,qBAAc,KAAK,KAAK,IAAI,wBAD5B,SAEb,EAAE,UAAU;AAElB,eAAW,KAAK,WAAW;AACvB,UAAI,EAAE,MAAM,GAAG,EAAE,CAAC,MAAM,QAAQ,YAAY,EAAE,MAAM,GAAG,EAAE,CAAC,GAAG;AACzD,uBAAI;AAAA,UACA,GAAG,2CAAY,GAAC;AAAA,QACpB;AACA;AAAA,MACJ;AAAA,IACJ;AAEA,cAAU,QAAQ,YAAY,CAAC,IAAI;AAAA,EACvC;AAAA,EAEA,OAAO,UAAU,YAAoB,eAA+B;AAtDxE;AAuDQ,YAAO,UAAK,KAAK,OAAO,UAAU,MAA3B,mBAA+B;AAAA,EAC1C;AAAA,EAEA,OAAO,eAAe,YAAoB,eAAuB,QAAwB;AA1D7F;AA2DQ,UAAM,kBAAkB,gBAAK,KAAK,QAAV,6CAAiC,CAAC;AAC1D,WAAQ,eAAe,aAAa,IAAI;AAAA,EAC5C;AACJ;AApCI,cADS,aACF,QAAmB;AAAA,EACtB,OAAO,CAAC;AAAA,EACR,iBAAiB,CAAC;AAAA,EAClB,QAAQ,CAAC;AACb;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -39,7 +39,7 @@ class LangBuilder extends import_Class.Class {
|
|
|
39
39
|
import_fs.default.mkdirSync("".concat(buildPath, "/texts"), { recursive: true });
|
|
40
40
|
for (const langFile in import_LocalizeText.localizeText) {
|
|
41
41
|
const langContent = import_LocalizeText.localizeText[langFile];
|
|
42
|
-
let text = "## The entire text below is built entirely using
|
|
42
|
+
let text = "## The entire text below is built entirely using AsaJS!";
|
|
43
43
|
for (const key in langContent) {
|
|
44
44
|
text += "\n".concat(key, "=").concat(langContent[key]);
|
|
45
45
|
}
|
|
@@ -63,3 +63,4 @@ class LangBuilder extends import_Class.Class {
|
|
|
63
63
|
0 && (module.exports = {
|
|
64
64
|
LangBuilder
|
|
65
65
|
});
|
|
66
|
+
//# sourceMappingURL=LangBuilder.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/compilers/generator/LangBuilder.ts"],
|
|
4
|
+
"sourcesContent": ["import fs from \"fs\";\nimport { Class } from \"../../components/Class\";\nimport { localizeText } from \"../../components/LocalizeText\";\n\nexport class LangBuilder extends Class {\n static build(buildPath: string) {\n fs.mkdirSync(`${buildPath}/texts`, { recursive: true });\n\n for (const langFile in localizeText) {\n const langContent: Record<string, string> = localizeText[langFile];\n let text = \"## The entire text below is built entirely using AsaJS!\";\n\n for (const key in langContent) {\n text += `\\n${key}=${langContent[key]}`;\n }\n\n if (fs.existsSync(`.bedrock/texts/${langFile}.lang`)) {\n const content = fs.readFileSync(`.bedrock/texts/${langFile}.lang`, \"utf-8\");\n fs.writeFileSync(\n `${buildPath}/texts/${langFile}.lang`,\n `${content}\\n\\n${text}`,\n \"utf-8\"\n );\n console.timeLog(\"COMPILER\", `${langFile}.lang has been updated!`);\n } else {\n fs.writeFileSync(`${buildPath}/texts/${langFile}.lang`, text, \"utf-8\");\n console.timeLog(\"COMPILER\", `${langFile}.lang has been generated!`);\n }\n }\n\n return Object.keys(localizeText).length;\n }\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAAe;AACf,mBAAsB;AACtB,0BAA6B;AAEtB,MAAM,oBAAoB,mBAAM;AAAA,EACnC,OAAO,MAAM,WAAmB;AAC5B,cAAAA,QAAG,UAAU,GAAG,kBAAS,WAAU,EAAE,WAAW,KAAK,CAAC;AAEtD,eAAW,YAAY,kCAAc;AACjC,YAAM,cAAsC,iCAAa,QAAQ;AACjE,UAAI,OAAO;AAEX,iBAAW,OAAO,aAAa;AAC3B,gBAAQ,KAAK,YAAG,KAAI,mBAAY,GAAG;AAAA,MACvC;AAEA,UAAI,UAAAA,QAAG,WAAW,kBAAkB,iBAAQ,QAAO,GAAG;AAClD,cAAM,UAAU,UAAAA,QAAG,aAAa,kBAAkB,iBAAQ,UAAS,OAAO;AAC1E,kBAAAA,QAAG;AAAA,UACC,GAAG,kBAAS,WAAU,iBAAQ;AAAA,UAC9B,GAAG,gBAAO,QAAO;AAAA,UACjB;AAAA,QACJ;AACA,gBAAQ,QAAQ,YAAY,GAAG,iBAAQ,0BAAyB;AAAA,MACpE,OAAO;AACH,kBAAAA,QAAG,cAAc,GAAG,kBAAS,WAAU,iBAAQ,UAAS,MAAM,OAAO;AACrE,gBAAQ,QAAQ,YAAY,GAAG,iBAAQ,4BAA2B;AAAA,MACtE;AAAA,IACJ;AAEA,WAAO,OAAO,KAAK,gCAAY,EAAE;AAAA,EACrC;AACJ;",
|
|
6
|
+
"names": ["fs"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/compilers/generator/Log.ts"],
|
|
4
|
+
"sourcesContent": ["import { Class } from \"../../components/Class\";\n\nexport const Logs: Array<{ type: \"warning\" | \"error\"; message: string }> = [];\n\nexport class Log extends Class {\n static warning(message: string) {\n Logs.push({\n type: \"warning\",\n message: `\\x1b[93m[Warning]\\x1b[0m >> ${message}`,\n });\n }\n\n static error(message: string) {\n Logs.push({\n type: \"error\",\n message: `\\x1b[31m[Error]\\x1b[0m >> ${message}`,\n });\n }\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAsB;AAEf,MAAM,OAA8D,CAAC;AAErE,MAAM,YAAY,mBAAM;AAAA,EAC3B,OAAO,QAAQ,SAAiB;AAC5B,SAAK,KAAK;AAAA,MACN,MAAM;AAAA,MACN,SAAS,+BAA+B;AAAA,IAC5C,CAAC;AAAA,EACL;AAAA,EAEA,OAAO,MAAM,SAAiB;AAC1B,SAAK,KAAK;AAAA,MACN,MAAM;AAAA,MACN,SAAS,6BAA6B;AAAA,IAC1C,CAAC;AAAA,EACL;AACJ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/compilers/generator/Manifest.ts"],
|
|
4
|
+
"sourcesContent": ["import { UUID } from \"crypto\";\nimport { ManifestInterface, SemverString, Type, Version } from \"../../types/objects/Manifest\";\nimport { Save } from \"./Save\";\n\ninterface ManifestHeader {\n\tname: string;\n\tdescription?: string;\n\tuuid?: UUID;\n\tversion?: Version | SemverString;\n}\n\ninterface ManifestMetadata {\n\tauthors?: Array<string>;\n\tlicense?: string;\n\turl?: string;\n\tproducType?: string;\n\tgeneratedWith?: object;\n}\n\nexport class Manifest {\n\tmanifest: ManifestInterface;\n\n\tconstructor(header: ManifestHeader, type: Type = Type.Resources, metadata?: ManifestMetadata) {\n\t\tconst uuid = Save.uuid();\n\n\t\tthis.manifest = {\n\t\t\tformat_version: 2,\n\t\t\theader: {\n\t\t\t\tname: header.name,\n\t\t\t\tuuid: header.uuid || uuid[0],\n\t\t\t\tdescription: header.description,\n\t\t\t\tversion: header.version || [1, 0, 0],\n\t\t\t},\n\t\t\tmodules: [\n\t\t\t\t{\n\t\t\t\t\ttype: type,\n\t\t\t\t\tuuid: uuid[1],\n\t\t\t\t\tversion: [1, 0, 0],\n\t\t\t\t},\n\t\t\t],\n\t\t\tmetadata: metadata && {\n\t\t\t\tauthors: metadata.authors,\n\t\t\t\tlicense: metadata.license,\n\t\t\t\turl: metadata.url,\n\t\t\t\tproduct_type: metadata.producType,\n\t\t\t\tgenerated_with: metadata.generatedWith,\n\t\t\t},\n\t\t};\n\t}\n\n\tbuildJson() {\n\t\treturn JSON.stringify(this.manifest, null, 4);\n\t}\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,sBAA+D;AAC/D,kBAAqB;AAiBd,MAAM,SAAS;AAAA,EAGrB,YAAY,QAAwB,OAAa,qBAAK,WAAW,UAA6B;AAF9F;AAGC,UAAM,OAAO,iBAAK,KAAK;AAEvB,SAAK,WAAW;AAAA,MACf,gBAAgB;AAAA,MAChB,QAAQ;AAAA,QACP,MAAM,OAAO;AAAA,QACb,MAAM,OAAO,QAAQ,KAAK,CAAC;AAAA,QAC3B,aAAa,OAAO;AAAA,QACpB,SAAS,OAAO,WAAW,CAAC,GAAG,GAAG,CAAC;AAAA,MACpC;AAAA,MACA,SAAS;AAAA,QACR;AAAA,UACC;AAAA,UACA,MAAM,KAAK,CAAC;AAAA,UACZ,SAAS,CAAC,GAAG,GAAG,CAAC;AAAA,QAClB;AAAA,MACD;AAAA,MACA,UAAU,YAAY;AAAA,QACrB,SAAS,SAAS;AAAA,QAClB,SAAS,SAAS;AAAA,QAClB,KAAK,SAAS;AAAA,QACd,cAAc,SAAS;AAAA,QACvB,gBAAgB,SAAS;AAAA,MAC1B;AAAA,IACD;AAAA,EACD;AAAA,EAEA,YAAY;AACX,WAAO,KAAK,UAAU,KAAK,UAAU,MAAM,CAAC;AAAA,EAC7C;AACD;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/compilers/generator/Save.ts"],
|
|
4
|
+
"sourcesContent": ["import fs from \"fs\";\nimport { Class } from \"../../components/Class\";\nimport { Random } from \"../../components/Random\";\nimport { UUID } from \"../../types/objects/Manifest\";\ntype ReturnValue = () => any;\n\n\nexport class Save extends Class {\n static isSaveCreated: boolean = false;\n\n private static write(file: fs.PathOrFileDescriptor, data: string | NodeJS.ArrayBufferView, options?: fs.WriteFileOptions) {\n fs.writeFileSync(file, JSON.stringify(data), options);\n }\n\n private static read(path: fs.PathOrFileDescriptor, options?: {\n encoding?: null | undefined;\n flag?: string | undefined;\n } | null) {\n return JSON.parse(fs.readFileSync(path, options) as any);\n }\n\n static createFile(\n path: string,\n data: ReturnValue,\n write: Function = fs.writeFileSync,\n read: Function = fs.readFileSync\n ) {\n if (!Save.isSaveCreated && !fs.existsSync(\".save\")) fs.mkdirSync(\".save\");\n Save.isSaveCreated = true;\n if (!fs.existsSync(`.save/${path}`)) {\n const $ = data();\n write(`.save/${path}`, $, \"utf-8\");\n return $;\n } else return read(`.save/${path}`, \"utf-8\");\n }\n\n static createJson(path: string, data: ReturnValue) {\n return Save.createFile(path, data, this.write, this.read);\n }\n\n static updateFile(\n path: string,\n data: ReturnValue,\n write: Function = fs.writeFileSync,\n read: Function = fs.readFileSync\n ) {\n if (!Save.isSaveCreated && !fs.existsSync(\".save\")) fs.mkdirSync(\".save\");\n const backup = read(`.save/${path}`, \"utf-8\");\n write(`.save/${path}`, data());\n return backup;\n }\n\n static updateJson(path: string, data: ReturnValue) {\n return Save.updateFile(path, data, fs.read, fs.readFileSync);\n }\n\n static uuid(): [UUID, UUID] {\n return <[UUID, UUID]>Save.createJson(\"uuid\", () => ({\n uuid: [Random.getUUID(), Random.getUUID()],\n })).uuid;\n }\n\n static resource(mcVersion: \"stable\" | \"preview\" = \"stable\") {\n return Save.createJson(`compile-${mcVersion}`, () => ({\n isDevelopment: true,\n folderName: Random.getName(),\n }));\n }\n\n static getBuildID() {\n return Save.createJson(\"buildID\", () => [Random.genString(16)])[0];\n }\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAAe;AACf,mBAAsB;AACtB,oBAAuB;AAKhB,MAAM,QAAN,MAAM,cAAa,mBAAM;AAAA,EAG5B,OAAe,MAAM,MAA+B,MAAuC,SAA+B;AACtH,cAAAA,QAAG,cAAc,MAAM,KAAK,UAAU,IAAI,GAAG,OAAO;AAAA,EACxD;AAAA,EAEA,OAAe,KAAK,MAA+B,SAGzC;AACN,WAAO,KAAK,MAAM,UAAAA,QAAG,aAAa,MAAM,OAAO,CAAQ;AAAA,EAC3D;AAAA,EAEA,OAAO,WACH,MACA,MACA,QAAkB,UAAAA,QAAG,eACrB,OAAiB,UAAAA,QAAG,cACtB;AACE,QAAI,CAAC,MAAK,iBAAiB,CAAC,UAAAA,QAAG,WAAW,OAAO,EAAG,WAAAA,QAAG,UAAU,OAAO;AACxE,UAAK,gBAAgB;AACrB,QAAI,CAAC,UAAAA,QAAG,WAAW,SAAS,YAAM,GAAG;AACjC,YAAM,IAAI,KAAK;AACf,YAAM,SAAS,cAAQ,GAAG,OAAO;AACjC,aAAO;AAAA,IACX,MAAO,QAAO,KAAK,SAAS,cAAQ,OAAO;AAAA,EAC/C;AAAA,EAEA,OAAO,WAAW,MAAc,MAAmB;AAC/C,WAAO,MAAK,WAAW,MAAM,MAAM,KAAK,OAAO,KAAK,IAAI;AAAA,EAC5D;AAAA,EAEA,OAAO,WACH,MACA,MACA,QAAkB,UAAAA,QAAG,eACrB,OAAiB,UAAAA,QAAG,cACtB;AACE,QAAI,CAAC,MAAK,iBAAiB,CAAC,UAAAA,QAAG,WAAW,OAAO,EAAG,WAAAA,QAAG,UAAU,OAAO;AACxE,UAAM,SAAS,KAAK,SAAS,cAAQ,OAAO;AAC5C,UAAM,SAAS,cAAQ,KAAK,CAAC;AAC7B,WAAO;AAAA,EACX;AAAA,EAEA,OAAO,WAAW,MAAc,MAAmB;AAC/C,WAAO,MAAK,WAAW,MAAM,MAAM,UAAAA,QAAG,MAAM,UAAAA,QAAG,YAAY;AAAA,EAC/D;AAAA,EAEA,OAAO,OAAqB;AACxB,WAAqB,MAAK,WAAW,QAAQ,OAAO;AAAA,MAChD,MAAM,CAAC,qBAAO,QAAQ,GAAG,qBAAO,QAAQ,CAAC;AAAA,IAC7C,EAAE,EAAE;AAAA,EACR;AAAA,EAEA,OAAO,SAAS,YAAkC,UAAU;AACxD,WAAO,MAAK,WAAW,WAAW,mBAAa,OAAO;AAAA,MAClD,eAAe;AAAA,MACf,YAAY,qBAAO,QAAQ;AAAA,IAC/B,EAAE;AAAA,EACN;AAAA,EAEA,OAAO,aAAa;AAChB,WAAO,MAAK,WAAW,WAAW,MAAM,CAAC,qBAAO,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC;AAAA,EACrE;AACJ;AAhEI,cADS,OACF,iBAAyB;AAD7B,IAAM,OAAN;",
|
|
6
|
+
"names": ["fs"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/compilers/generator/SearchFiles.ts"],
|
|
4
|
+
"sourcesContent": ["import { Class } from \"../../components/Class\";\nimport fs from \"fs\";\n\ninterface CallbackValue {\n folder?: string;\n file: string;\n path: string;\n}\n\n\nfunction searchForEachFileRecursion(\n path: string,\n callback: (value: CallbackValue) => void,\n $1: string = \"\",\n $2: string = \"\",\n $3: string = \"\"\n) {\n if (fs.statSync(path).isDirectory())\n for (const file of fs.readdirSync(path))\n searchForEachFileRecursion(\n `${path}/${file}`,\n callback,\n file,\n `${$2}/${file}`,\n $2.match(/(?<=\\/)\\w+$/)?.[0]\n );\n else\n callback({\n file: $1,\n folder: $3 === \"\" ? undefined : $3,\n path: $2.slice(1),\n });\n}\n\n\nexport class SearchFiles extends Class {\n static array(folderPath: string, prefix?: string): Array<string> {\n const paths: Array<string> = [];\n SearchFiles.forEach(folderPath, value =>\n paths.push(`${prefix ? `${prefix}/` : \"\"}${value.path}`)\n );\n return paths;\n }\n\n static forEach(folderPath: string, callback: (value: CallbackValue) => void): void {\n searchForEachFileRecursion(folderPath, callback);\n }\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAsB;AACtB,gBAAe;AASf,SAAS,2BACL,MACA,UACA,KAAa,IACb,KAAa,IACb,KAAa,IACf;AAhBF;AAiBI,MAAI,UAAAA,QAAG,SAAS,IAAI,EAAE,YAAY;AAC9B,eAAW,QAAQ,UAAAA,QAAG,YAAY,IAAI;AAClC;AAAA,QACI,GAAG,aAAI,KAAI;AAAA,QACX;AAAA,QACA;AAAA,QACA,GAAG,WAAE,KAAI;AAAA,SACT,QAAG,MAAM,aAAa,MAAtB,mBAA0B;AAAA,MAC9B;AAAA;AAEJ,aAAS;AAAA,MACL,MAAM;AAAA,MACN,QAAQ,OAAO,KAAK,SAAY;AAAA,MAChC,MAAM,GAAG,MAAM,CAAC;AAAA,IACpB,CAAC;AACT;AAGO,MAAM,oBAAoB,mBAAM;AAAA,EACnC,OAAO,MAAM,YAAoB,QAAgC;AAC7D,UAAM,QAAuB,CAAC;AAC9B,gBAAY;AAAA,MAAQ;AAAA,MAAY,WAC5B,MAAM,KAAK,GAAG,gBAAS,GAAG,eAAM,OAAM,IAAK,aAAM,KAAM;AAAA,IAC3D;AACA,WAAO;AAAA,EACX;AAAA,EAEA,OAAO,QAAQ,YAAoB,UAAgD;AAC/E,+BAA2B,YAAY,QAAQ;AAAA,EACnD;AACJ;",
|
|
6
|
+
"names": ["fs"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/compilers/generator/Sounds.ts"],
|
|
4
|
+
"sourcesContent": ["import fs from \"fs\";\nimport { parse } from \"jsonc-parser\";\nimport { Class } from \"../../components/Class\";\nimport { Random } from \"../../components/Random\";\nimport { UIWriteJson } from \"../PreCompile\";\n\ninterface SoundID {\n [path: string]: string;\n}\n\nconst sounds: SoundID = {};\n\nexport class SoundHandler extends Class {\n static get(path: string) {\n if (sounds[path]) {\n return sounds[path];\n } else {\n return (sounds[path] = `jsonui_scripting.${Random.getName()}`);\n }\n }\n\n static compile(installPath: string) {\n const soundIds = Object.keys(sounds);\n\n if (soundIds.length) {\n if (!fs.existsSync(`${installPath}/sounds`)) fs.mkdirSync(`${installPath}/sounds`);\n\n const soundDefinitions: any = {};\n\n for (const soundPath of soundIds) {\n const soundId = sounds[soundPath];\n\n soundDefinitions[soundId] = {\n category: \"ui\",\n sounds: [\n {\n load_on_low_memory: true,\n name: soundPath,\n stream: true,\n volume: 1,\n },\n ],\n };\n }\n\n let bak;\n if (fs.existsSync(`.bedrock/sounds/sound_definitions.json`)) {\n bak = parse(\n fs.readFileSync(`.bedrock/sounds/sound_definitions.json`, \"utf-8\")\n ).sound_definitions;\n }\n\n UIWriteJson(\n `${installPath}/sounds/sound_definitions.json`,\n {\n format_version: \"1.20.20\",\n sound_definitions: {\n ...bak,\n ...soundDefinitions,\n },\n },\n \"utf-8\"\n );\n }\n\n return soundIds.length;\n }\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAAe;AACf,0BAAsB;AACtB,mBAAsB;AACtB,oBAAuB;AACvB,wBAA4B;AAM5B,MAAM,SAAkB,CAAC;AAElB,MAAM,qBAAqB,mBAAM;AAAA,EACpC,OAAO,IAAI,MAAc;AACrB,QAAI,OAAO,IAAI,GAAG;AACd,aAAO,OAAO,IAAI;AAAA,IACtB,OAAO;AACH,aAAQ,OAAO,IAAI,IAAI,oBAAoB,4BAAO,QAAQ;AAAA,IAC9D;AAAA,EACJ;AAAA,EAEA,OAAO,QAAQ,aAAqB;AAChC,UAAM,WAAW,OAAO,KAAK,MAAM;AAEnC,QAAI,SAAS,QAAQ;AACjB,UAAI,CAAC,UAAAA,QAAG,WAAW,GAAG,oBAAW,UAAS,EAAG,WAAAA,QAAG,UAAU,GAAG,oBAAW,UAAS;AAEjF,YAAM,mBAAwB,CAAC;AAE/B,iBAAW,aAAa,UAAU;AAC9B,cAAM,UAAU,OAAO,SAAS;AAEhC,yBAAiB,OAAO,IAAI;AAAA,UACxB,UAAU;AAAA,UACV,QAAQ;AAAA,YACJ;AAAA,cACI,oBAAoB;AAAA,cACpB,MAAM;AAAA,cACN,QAAQ;AAAA,cACR,QAAQ;AAAA,YACZ;AAAA,UACJ;AAAA,QACJ;AAAA,MACJ;AAEA,UAAI;AACJ,UAAI,UAAAA,QAAG,WAAW,wCAAwC,GAAG;AACzD,kBAAM;AAAA,UACF,UAAAA,QAAG,aAAa,0CAA0C,OAAO;AAAA,QACrE,EAAE;AAAA,MACN;AAEA;AAAA,QACI,GAAG,oBAAW;AAAA,QACd;AAAA,UACI,gBAAgB;AAAA,UAChB,mBAAmB;AAAA,YACf,GAAG;AAAA,YACH,GAAG;AAAA,UACP;AAAA,QACJ;AAAA,QACA;AAAA,MACJ;AAAA,IACJ;AAEA,WAAO,SAAS;AAAA,EACpB;AACJ;",
|
|
6
|
+
"names": ["fs"]
|
|
7
|
+
}
|
|
@@ -37,7 +37,7 @@ var import_fs = __toESM(require("fs"));
|
|
|
37
37
|
function firstRun() {
|
|
38
38
|
const template = {
|
|
39
39
|
".gitignore": import_template.gitignore,
|
|
40
|
-
"asakiyuki.config.cjs": import_template.config.replace("{packname}", "
|
|
40
|
+
"asakiyuki.config.cjs": import_template.config.replace("{packname}", "AsaJS").replace("{packdescription}", "Build with AsaJS <3").replace("{autoinstall}", "true").replace("{development}", "true").replace("{preview}", "false"),
|
|
41
41
|
"asakiyuki.global_variables.cjs": import_template.globalVariables,
|
|
42
42
|
"asakiyuki.env.cjs": import_template.env
|
|
43
43
|
};
|
|
@@ -52,3 +52,4 @@ function firstRun() {
|
|
|
52
52
|
0 && (module.exports = {
|
|
53
53
|
firstRun
|
|
54
54
|
});
|
|
55
|
+
//# sourceMappingURL=Template.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/compilers/generator/Template.ts"],
|
|
4
|
+
"sourcesContent": ["import { config, env, globalVariables, gitignore } from \"../../template\";\r\nimport { GenerateDir } from \"./GenerateDir\";\r\nimport fs from \"fs\";\r\n\r\nexport function firstRun() {\r\n // Template Object\r\n const template: { [file: string]: string } = {\r\n \".gitignore\": gitignore,\r\n \"asakiyuki.config.cjs\": config\r\n .replace(\"{packname}\", \"AsaJS\")\r\n .replace(\"{packdescription}\", \"Build with AsaJS <3\")\r\n .replace(\"{autoinstall}\", \"true\")\r\n .replace(\"{development}\", \"true\")\r\n .replace(\"{preview}\", \"false\"),\r\n \"asakiyuki.global_variables.cjs\": globalVariables,\r\n \"asakiyuki.env.cjs\": env,\r\n };\r\n\r\n // Generator\r\n for (const file in template) {\r\n if (!fs.existsSync(file)) {\r\n GenerateDir(file);\r\n fs.writeFileSync(file, template[file], \"utf-8\");\r\n }\r\n }\r\n}\r\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAAwD;AACxD,yBAA4B;AAC5B,gBAAe;AAER,SAAS,WAAW;AAEvB,QAAM,WAAuC;AAAA,IACzC,cAAc;AAAA,IACd,wBAAwB,uBACnB,QAAQ,cAAc,OAAO,EAC7B,QAAQ,qBAAqB,qBAAqB,EAClD,QAAQ,iBAAiB,MAAM,EAC/B,QAAQ,iBAAiB,MAAM,EAC/B,QAAQ,aAAa,OAAO;AAAA,IACjC,kCAAkC;AAAA,IAClC,qBAAqB;AAAA,EACzB;AAGA,aAAW,QAAQ,UAAU;AACzB,QAAI,CAAC,UAAAA,QAAG,WAAW,IAAI,GAAG;AACtB,0CAAY,IAAI;AAChB,gBAAAA,QAAG,cAAc,MAAM,SAAS,IAAI,GAAG,OAAO;AAAA,IAClD;AAAA,EACJ;AACJ;",
|
|
6
|
+
"names": ["fs"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/compilers/generator/UIBuilder.ts"],
|
|
4
|
+
"sourcesContent": ["import fs from \"fs\";\nimport { parse } from \"jsonc-parser\";\nimport { JsonBuilder } from \"./JsonBuilder\";\nimport { SearchFiles } from \"./SearchFiles\";\nimport { GenerateDir } from \"./GenerateDir\";\nimport { UIWriteJson } from \"../PreCompile\";\n\nexport class UIBuilder {\n static delete(installPath: string): void {\n try {\n fs.unlinkSync(installPath);\n } catch (error) {\n if (fs.existsSync(installPath)) fs.rmSync(installPath, { recursive: true });\n }\n }\n\n static jsonUI(installPath: string): number {\n const build = <any>JsonBuilder.save.build;\n let count = 0;\n for (const file in build) {\n const namespace = build[file].namespace;\n delete build[file].namespace;\n for (const jsonUI in build[file]) build[file][jsonUI] = build[file][jsonUI].getUI();\n\n console.timeLog(\n \"COMPILER\",\n `${file} ${Object.keys(build[file]).length} elements has generated!`\n );\n\n build[file].namespace = namespace;\n UIWriteJson(`${installPath}/@/${file}`, build[file], \"utf-8\");\n delete build[file];\n count++;\n }\n return count;\n }\n\n static modify(installPath: string): number {\n if (!fs.existsSync(`${installPath}/ui`)) fs.mkdirSync(`${installPath}/ui`);\n let count = 0;\n const modify = JsonBuilder.save.modify;\n for (const key in modify) {\n GenerateDir(installPath, key);\n for (const element in modify[key]) modify[key][element] = modify[key][element].getUI();\n\n console.timeLog(\n \"COMPILER\",\n `${key} ${Object.keys(modify[key]).length} modify element(s) has generated!`\n );\n\n UIWriteJson(`${installPath}/${key}`, modify[key], \"utf-8\");\n delete modify[key];\n count++;\n }\n return count;\n }\n\n static uiDefs(installPath: string): number {\n const arr = SearchFiles.array(`${installPath}/@`, \"@\");\n UIWriteJson(`${installPath}/ui/_ui_defs.json`, { ui_defs: arr }, \"utf-8\");\n return arr.length;\n }\n\n static contents(installPath: string): number {\n const arr = SearchFiles.array(installPath);\n\n UIWriteJson(\n `${installPath}/contents.json`,\n {\n content: arr.map(v => ({ path: v })),\n },\n \"utf-8\"\n );\n\n return arr.length;\n }\n\n static texturesList(installPath: string): number {\n const arr = SearchFiles.array(installPath)\n .filter(v => /\\.(png|jpg|jpeg)$/.test(v))\n .map(v => v.replace(/\\.(png|jpg|jpeg)$/, \"\"));\n\n let textureList: Array<string> = [];\n\n if (fs.existsSync(`.bedrock/textures/textures_list.json`)) {\n const texturesList = fs.readFileSync(`.bedrock/textures/textures_list.json`, \"utf-8\");\n textureList = parse(texturesList);\n }\n\n if (!fs.existsSync(`${installPath}/textures`)) fs.mkdirSync(`${installPath}/textures`);\n UIWriteJson(\n `${installPath}/textures/textures_list.json`,\n [...arr, ...textureList],\n \"utf-8\"\n );\n\n return arr.length;\n }\n\n static globalVariables(installPath: string): number {\n const globalVariables = JsonBuilder.save.globalVariables;\n\n UIWriteJson(`${installPath}/ui/_global_variables.json`, globalVariables, \"utf-8\");\n\n return Object.keys(globalVariables).length;\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["fs"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/compilers/reader/Audio.ts"],
|
|
4
|
+
"sourcesContent": ["import fs from \"fs\";\nimport { SearchFiles } from \"../generator/SearchFiles\";\nimport { spawnSync, execSync } from \"child_process\";\nimport { Log } from \"../generator/Log\";\n\nexport function FormatAudio() {\n\tconst reg = /\\.(mp3|m4a|mp4|mov|opus|acc|flac)$/;\n\tconst files = SearchFiles.array(\".bedrock\", \".bedrock\").filter((path) =>\n\t\treg.test(path)\n\t);\n\n\tif (!files.length) return;\n\n\ttry {\n\t\tspawnSync(\"ffmpeg\", [\"-version\"], {\n\t\t\tstdio: [\"ignore\", \"ignore\", \"ignore\"],\n\t\t}).error;\n\n\t\tconsole.timeLog(\n\t\t\t\"Compiler\",\n\t\t\t\">> Starting to convert all found audio files to WAV format\"\n\t\t);\n\n\t\tfor (const file of files) {\n\t\t\tconst out = file.replace(reg, \".wav\");\n\t\t\texecSync(`ffmpeg -i ${file} ${out}`, {\n\t\t\t\tstdio: \"ignore\",\n\t\t\t});\n\t\t\tfs.rmSync(file);\n\n\t\t\tconsole.timeLog(\n\t\t\t\t\"Compiler\",\n\t\t\t\t`>> Reformatting of ${file.replace(\n\t\t\t\t\t/^\\.bedrock\\//,\n\t\t\t\t\t\"\"\n\t\t\t\t)} is complete.`\n\t\t\t);\n\t\t}\n\n\t\tconsole.timeLog(\n\t\t\t\"Compiler\",\n\t\t\t`>> Successfully reformatted ${files.length} audio file(s).`\n\t\t);\n\t\tconsole.log();\n\t} catch (error) {\n\t\tLog.warning(\n\t\t\t\"You need to install 'ffmpeg' to your system environment variables to automatic convert all audio files to a format minecraft can read.\"\n\t\t);\n\t\tconsole.log();\n\t}\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAAe;AACf,yBAA4B;AAC5B,2BAAoC;AACpC,iBAAoB;AAEb,SAAS,cAAc;AAC7B,QAAM,MAAM;AACZ,QAAM,QAAQ,+BAAY,MAAM,YAAY,UAAU,EAAE;AAAA,IAAO,CAAC,SAC/D,IAAI,KAAK,IAAI;AAAA,EACd;AAEA,MAAI,CAAC,MAAM,OAAQ;AAEnB,MAAI;AACH,wCAAU,UAAU,CAAC,UAAU,GAAG;AAAA,MACjC,OAAO,CAAC,UAAU,UAAU,QAAQ;AAAA,IACrC,CAAC,EAAE;AAEH,YAAQ;AAAA,MACP;AAAA,MACA;AAAA,IACD;AAEA,eAAW,QAAQ,OAAO;AACzB,YAAM,MAAM,KAAK,QAAQ,KAAK,MAAM;AACpC,yCAAS,aAAa,aAAI,KAAI,aAAO;AAAA,QACpC,OAAO;AAAA,MACR,CAAC;AACD,gBAAAA,QAAG,OAAO,IAAI;AAEd,cAAQ;AAAA,QACP;AAAA,QACA,sBAAsB,YAAK;AAAA,UAC1B;AAAA,UACA;AAAA,QACD,GAAC;AAAA,MACF;AAAA,IACD;AAEA,YAAQ;AAAA,MACP;AAAA,MACA,+BAA+B,aAAM,QAAM;AAAA,IAC5C;AACA,YAAQ,IAAI;AAAA,EACb,SAAS,OAAO;AACf,mBAAI;AAAA,MACH;AAAA,IACD;AACA,YAAQ,IAAI;AAAA,EACb;AACD;",
|
|
6
|
+
"names": ["fs"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/compilers/reader/Color.ts"],
|
|
4
|
+
"sourcesContent": ["import { Class } from \"../../components/Class\";\nimport { Vector3, Vector4 } from \"../../types/values/Vector\";\n\nexport class ColorHandler extends Class {\n static parse(data: string): Vector3 | Vector4 | null {\n if (data.startsWith(\"#\")) data = data.slice(1);\n\n try {\n const color = parseInt(data, 16);\n switch (data.length) {\n case 3:\n return [((color >> 8) & 15) / 15, ((color >> 4) & 15) / 15, (color & 15) / 15];\n case 6:\n return [\n ((color >> 16) & 255) / 255,\n ((color >> 8) & 255) / 255,\n (color & 255) / 255,\n ];\n case 4:\n return [\n ((color >> 16) & 15) / 15,\n ((color >> 8) & 15) / 15,\n ((color >> 4) & 15) / 15,\n (color & 15) / 15,\n ];\n case 8:\n return [\n ((color >> 24) & 255) / 255,\n ((color >> 16) & 255) / 255,\n ((color >> 8) & 255) / 255,\n (color & 255) / 255,\n ];\n default:\n return null;\n }\n } catch (error) {\n console.error(error);\n return null;\n }\n }\n}\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAsB;AAGf,MAAM,qBAAqB,mBAAM;AAAA,EACpC,OAAO,MAAM,MAAwC;AACjD,QAAI,KAAK,WAAW,GAAG,EAAG,QAAO,KAAK,MAAM,CAAC;AAE7C,QAAI;AACA,YAAM,QAAQ,SAAS,MAAM,EAAE;AAC/B,cAAQ,KAAK,QAAQ;AAAA,QACjB,KAAK;AACD,iBAAO,EAAG,SAAS,IAAK,MAAM,KAAM,SAAS,IAAK,MAAM,KAAK,QAAQ,MAAM,EAAE;AAAA,QACjF,KAAK;AACD,iBAAO;AAAA,aACD,SAAS,KAAM,OAAO;AAAA,aACtB,SAAS,IAAK,OAAO;AAAA,aACtB,QAAQ,OAAO;AAAA,UACpB;AAAA,QACJ,KAAK;AACD,iBAAO;AAAA,aACD,SAAS,KAAM,MAAM;AAAA,aACrB,SAAS,IAAK,MAAM;AAAA,aACpB,SAAS,IAAK,MAAM;AAAA,aACrB,QAAQ,MAAM;AAAA,UACnB;AAAA,QACJ,KAAK;AACD,iBAAO;AAAA,aACD,SAAS,KAAM,OAAO;AAAA,aACtB,SAAS,KAAM,OAAO;AAAA,aACtB,SAAS,IAAK,OAAO;AAAA,aACtB,QAAQ,OAAO;AAAA,UACpB;AAAA,QACJ;AACI,iBAAO;AAAA,MACf;AAAA,IACJ,SAAS,OAAO;AACZ,cAAQ,MAAM,KAAK;AACnB,aAAO;AAAA,IACX;AAAA,EACJ;AACJ;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|