Update config, LuaLS definitions, bundle and changelog

This commit is contained in:
github-actions[bot]
2025-02-24 22:13:58 +00:00
parent 189d642e7c
commit a98475a442
2 changed files with 312 additions and 325 deletions

View File

@@ -1,356 +1,348 @@
return {
["metadata"] = {
["generated"] = "Mon Feb 24 19:52:36 2025",
["generated"] = "Mon Feb 24 22:13:54 2025",
["version"] = "2.0",
},
["categories"] = {
["plugins"] = {
["files"] = {
["pluginTemplate"] = {
["size"] = 695,
["requires"] = {
},
["path"] = "plugins/pluginTemplate.lua",
["default"] = true,
["description"] = "",
},
["xml"] = {
["size"] = 6371,
["requires"] = {
},
["path"] = "plugins/xml.lua",
["default"] = true,
["description"] = "",
},
["benchmark"] = {
["size"] = 12515,
["requires"] = {
},
["path"] = "plugins/benchmark.lua",
["default"] = true,
["description"] = "",
},
["state"] = {
["size"] = 5867,
["requires"] = {
},
["path"] = "plugins/state.lua",
["default"] = true,
["description"] = "",
},
["theme"] = {
["size"] = 5879,
["requires"] = {
},
["path"] = "plugins/theme.lua",
["default"] = true,
["description"] = "",
},
["animation"] = {
["size"] = 14116,
["requires"] = {
},
["path"] = "plugins/animation.lua",
["default"] = true,
["description"] = "",
},
["debug"] = {
["size"] = 6175,
["requires"] = {
},
["path"] = "plugins/debug.lua",
["default"] = true,
["description"] = "",
},
["reactive"] = {
["size"] = 6989,
["requires"] = {
},
["path"] = "plugins/reactive.lua",
["default"] = true,
["description"] = "",
},
},
["description"] = "Plugins",
},
["libraries"] = {
["files"] = {
["utils"] = {
["size"] = 2661,
["requires"] = {
},
["path"] = "libraries/utils.lua",
["default"] = true,
["description"] = "",
},
["colorHex"] = {
["size"] = 132,
["requires"] = {
},
["path"] = "libraries/colorHex.lua",
["default"] = true,
["description"] = "",
},
["expect"] = {
["size"] = 880,
["requires"] = {
},
["path"] = "libraries/expect.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
["colorHex"] = {
["size"] = 132,
["path"] = "libraries/colorHex.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
},
["description"] = "Libraries",
},
["plugins"] = {
["files"] = {
["state"] = {
["size"] = 5867,
["path"] = "plugins/state.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
["debug"] = {
["size"] = 6175,
["path"] = "plugins/debug.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
["benchmark"] = {
["size"] = 12515,
["path"] = "plugins/benchmark.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
["xml"] = {
["size"] = 6371,
["path"] = "plugins/xml.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
["theme"] = {
["size"] = 5879,
["path"] = "plugins/theme.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
["animation"] = {
["size"] = 14116,
["path"] = "plugins/animation.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
["reactive"] = {
["size"] = 6962,
["path"] = "plugins/reactive.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
},
["description"] = "Plugins",
},
["elements"] = {
["files"] = {
["BaseElement"] = {
["size"] = 8733,
["requires"] = {
},
["path"] = "elements/BaseElement.lua",
["Table"] = {
["size"] = 7673,
["path"] = "elements/Table.lua",
["default"] = true,
["description"] = "The base class for all UI elements in Basalt.",
},
["Slider"] = {
["size"] = 4767,
["requires"] = {
[1] = "VisualElement",
},
["path"] = "elements/Slider.lua",
["default"] = true,
["description"] = "",
},
["Menu"] = {
["size"] = 4721,
["requires"] = {
[1] = "List",
},
["path"] = "elements/Menu.lua",
["default"] = true,
["description"] = "A horizontal menu bar with selectable items.",
},
["Flexbox"] = {
["size"] = 11685,
["requires"] = {
[1] = "Container",
},
["path"] = "elements/Flexbox.lua",
["default"] = true,
["description"] = "A flexbox container that arranges its children in a flexible layout.",
},
["VisualElement"] = {
["size"] = 14506,
["requires"] = {
[1] = "BaseElement",
},
["path"] = "elements/VisualElement.lua",
["default"] = true,
["description"] = "The Visual Element class which is the base class for all visual UI elements",
},
["Frame"] = {
["size"] = 1147,
["requires"] = {
[1] = "Container",
},
["path"] = "elements/Frame.lua",
["default"] = true,
["description"] = "A frame element that serves as a grouping container for other elements.",
},
["Tree"] = {
["size"] = 7902,
["requires"] = {
[1] = "VisualElement",
},
["path"] = "elements/Tree.lua",
["default"] = true,
["description"] = "",
},
["Input"] = {
["size"] = 7157,
["requires"] = {
[1] = "VisualElement",
},
["path"] = "elements/Input.lua",
["default"] = true,
["description"] = "A text input field with various features",
},
["Checkbox"] = {
["size"] = 2942,
["requires"] = {
[1] = "VisualElement",
},
["path"] = "elements/Checkbox.lua",
["default"] = true,
["description"] = "",
},
["Label"] = {
["size"] = 2964,
["requires"] = {
[1] = "VisualElement",
},
["path"] = "elements/Label.lua",
["default"] = true,
["description"] = "A simple text display element that automatically resizes its width based on the text content.",
},
["Image"] = {
["size"] = 5638,
["requires"] = {
[1] = "VisualElement",
},
["path"] = "elements/Image.lua",
["default"] = false,
["description"] = "An element that displays an image in bimg format",
},
["ProgressBar"] = {
["size"] = 2348,
["requires"] = {
[1] = "VisualElement",
},
["path"] = "elements/ProgressBar.lua",
["default"] = true,
["description"] = "",
},
["TextBox"] = {
["size"] = 10931,
["requires"] = {
[1] = "VisualElement",
},
["path"] = "elements/TextBox.lua",
["default"] = false,
["description"] = "A multi-line text editor component with cursor support and text manipulation features",
},
["Program"] = {
["size"] = 6687,
["requires"] = {
[1] = "VisualElement",
},
["path"] = "elements/Program.lua",
["default"] = true,
["description"] = "",
},
["Dropdown"] = {
["size"] = 5975,
["requires"] = {
[1] = "List",
},
["path"] = "elements/Dropdown.lua",
["default"] = false,
["description"] = "A dropdown menu that shows a list of selectable items",
},
["List"] = {
["size"] = 8382,
["path"] = "elements/List.lua",
["default"] = true,
["requires"] = {
[1] = "VisualElement",
},
["path"] = "elements/List.lua",
["default"] = true,
["description"] = "A scrollable list of selectable items",
},
["Container"] = {
["size"] = 23200,
["requires"] = {
[1] = "VisualElement",
},
["path"] = "elements/Container.lua",
["default"] = true,
["requires"] = {
[1] = "VisualElement",
},
["description"] = "The container class. It is a visual element that can contain other elements. It is the base class for all containers",
},
["Table"] = {
["size"] = 7673,
["ProgressBar"] = {
["size"] = 2348,
["path"] = "elements/ProgressBar.lua",
["default"] = true,
["requires"] = {
[1] = "VisualElement",
},
["path"] = "elements/Table.lua",
["default"] = true,
["description"] = "",
},
["Button"] = {
["size"] = 1846,
["requires"] = {
[1] = "VisualElement",
},
["path"] = "elements/Button.lua",
["Frame"] = {
["size"] = 1147,
["path"] = "elements/Frame.lua",
["default"] = true,
["description"] = "Standard button element with click handling and state management",
},
["BaseFrame"] = {
["size"] = 5212,
["requires"] = {
[1] = "Container",
},
["description"] = "A frame element that serves as a grouping container for other elements.",
},
["BaseFrame"] = {
["size"] = 5212,
["path"] = "elements/BaseFrame.lua",
["default"] = true,
["requires"] = {
[1] = "Container",
},
["description"] = "This is the base frame class. It is the root element of all elements and the only element without a parent.",
},
["Scrollbar"] = {
["size"] = 9281,
["Input"] = {
["size"] = 7157,
["path"] = "elements/Input.lua",
["default"] = true,
["requires"] = {
[1] = "VisualElement",
},
["description"] = "A text input field with various features",
},
["Button"] = {
["size"] = 1846,
["path"] = "elements/Button.lua",
["default"] = true,
["requires"] = {
[1] = "VisualElement",
},
["description"] = "Standard button element with click handling and state management",
},
["Menu"] = {
["size"] = 4721,
["path"] = "elements/Menu.lua",
["default"] = true,
["requires"] = {
[1] = "List",
},
["description"] = "A horizontal menu bar with selectable items.",
},
["Slider"] = {
["size"] = 4767,
["path"] = "elements/Slider.lua",
["default"] = true,
["requires"] = {
[1] = "VisualElement",
},
["description"] = "",
},
["Flexbox"] = {
["size"] = 11685,
["path"] = "elements/Flexbox.lua",
["default"] = true,
["requires"] = {
[1] = "Container",
},
["description"] = "A flexbox container that arranges its children in a flexible layout.",
},
["Program"] = {
["size"] = 6687,
["path"] = "elements/Program.lua",
["default"] = true,
["requires"] = {
[1] = "VisualElement",
},
["description"] = "",
},
["BaseElement"] = {
["size"] = 8733,
["path"] = "elements/BaseElement.lua",
["default"] = true,
["requires"] = {
},
["description"] = "The base class for all UI elements in Basalt.",
},
["Scrollbar"] = {
["size"] = 9281,
["path"] = "elements/Scrollbar.lua",
["default"] = true,
["requires"] = {
[1] = "VisualElement",
},
["description"] = "",
},
["Checkbox"] = {
["size"] = 2942,
["path"] = "elements/Checkbox.lua",
["default"] = true,
["requires"] = {
[1] = "VisualElement",
},
["description"] = "",
},
["Image"] = {
["size"] = 5638,
["path"] = "elements/Image.lua",
["default"] = false,
["requires"] = {
[1] = "VisualElement",
},
["description"] = "An element that displays an image in bimg format",
},
["VisualElement"] = {
["size"] = 14506,
["path"] = "elements/VisualElement.lua",
["default"] = true,
["requires"] = {
[1] = "BaseElement",
},
["description"] = "The Visual Element class which is the base class for all visual UI elements",
},
["Label"] = {
["size"] = 2964,
["path"] = "elements/Label.lua",
["default"] = true,
["requires"] = {
[1] = "VisualElement",
},
["description"] = "A simple text display element that automatically resizes its width based on the text content.",
},
["Tree"] = {
["size"] = 7902,
["path"] = "elements/Tree.lua",
["default"] = true,
["requires"] = {
[1] = "VisualElement",
},
["description"] = "",
},
["TextBox"] = {
["size"] = 10931,
["path"] = "elements/TextBox.lua",
["default"] = false,
["requires"] = {
[1] = "VisualElement",
},
["description"] = "A multi-line text editor component with cursor support and text manipulation features",
},
["Dropdown"] = {
["size"] = 5975,
["path"] = "elements/Dropdown.lua",
["default"] = false,
["requires"] = {
[1] = "List",
},
["description"] = "A dropdown menu that shows a list of selectable items",
},
},
["description"] = "UI Elements",
},
["core"] = {
["files"] = {
["main"] = {
["size"] = 7849,
["propertySystem"] = {
["size"] = 15220,
["path"] = "propertySystem.lua",
["default"] = true,
["requires"] = {
},
["path"] = "main.lua",
["default"] = true,
["description"] = "",
},
["render"] = {
["size"] = 10919,
["requires"] = {
},
["path"] = "render.lua",
["default"] = true,
["description"] = "",
},
["init"] = {
["size"] = 519,
["requires"] = {
},
["path"] = "init.lua",
["default"] = true,
["description"] = "",
},
["elementManager"] = {
["size"] = 6290,
["requires"] = {
},
["path"] = "elementManager.lua",
["description"] = "",
},
["main"] = {
["size"] = 7849,
["path"] = "main.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
["render"] = {
["size"] = 10919,
["path"] = "render.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
["errorManager"] = {
["size"] = 3789,
["requires"] = {
},
["path"] = "errorManager.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
["log"] = {
["size"] = 3142,
["requires"] = {
},
["path"] = "log.lua",
["default"] = true,
["description"] = "",
},
["propertySystem"] = {
["size"] = 15220,
["requires"] = {
},
["path"] = "propertySystem.lua",
["description"] = "",
},
["elementManager"] = {
["size"] = 6290,
["path"] = "elementManager.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
},

View File

@@ -12,7 +12,6 @@ minified_pluginDirectory["xml"] = {}
minified_pluginDirectory["animation"] = {}
minified_pluginDirectory["state"] = {}
minified_pluginDirectory["benchmark"] = {}
minified_pluginDirectory["pluginTemplate"] = {}
minified_elementDirectory["Table"] = {}
minified_elementDirectory["BaseFrame"] = {}
minified_elementDirectory["ProgressBar"] = {}
@@ -363,72 +362,71 @@ local _d=self.get("type")local ad=self.get("name")return bc(ab[bb],dc,_d,ad)end;
function cc.loadTheme(dc)
local _d=fs.open(dc,"r")if _d then local ad=_d.readAll()_d.close()
_b=textutils.unserializeJSON(ad)end end;return{BaseElement=cb,API=cc} end
project["plugins/reactive.lua"] = function(...) local bb=require("errorManager")
local cb=require("propertySystem")local db=require("log")
local _c={colors=true,math=true,clamp=true,round=true}
local ac={clamp=function(cd,dd,__a)return math.min(math.max(cd,dd),__a)end,round=function(cd)return math.floor(
cd+0.5)end}
local function bc(cd,dd,__a)cd=cd:gsub("^{(.+)}$","%1")
cd=cd:gsub("([%w_]+)%$([%w_]+)",function(d_a,_aa)
if d_a=="self"then return
string.format('__getState("%s")',_aa)elseif d_a=="parent"then return
string.format('__getParentState("%s")',_aa)else return
string.format('__getElementState("%s", "%s")',d_a,_aa)end end)
cd=cd:gsub("([%w_]+)%.([%w_]+)",function(d_a,_aa)if _c[d_a]then return d_a..".".._aa end;return
string.format('__getProperty("%s", "%s")',d_a,_aa)end)
local a_a=setmetatable({colors=colors,math=math,tostring=tostring,tonumber=tonumber,__getState=function(d_a)return dd:getState(d_a)end,__getParentState=function(d_a)return
dd.parent:getState(d_a)end,__getElementState=function(d_a,_aa)
local aaa=dd:getBaseFrame():getChild(d_a)if not aaa then bb.header="Reactive evaluation error"
bb.error("Could not find element: "..d_a)return nil end;return
aaa:getState(_aa).value end,__getProperty=function(d_a,_aa)
project["plugins/reactive.lua"] = function(...) local ab=require("errorManager")
local bb=require("propertySystem")local cb={colors=true,math=true,clamp=true,round=true}
local db={clamp=function(ad,bd,cd)return
math.min(math.max(ad,bd),cd)end,round=function(ad)
return math.floor(ad+0.5)end}
local function _c(ad,bd,cd)ad=ad:gsub("^{(.+)}$","%1")
ad=ad:gsub("([%w_]+)%$([%w_]+)",function(b_a,c_a)
if b_a=="self"then return
string.format('__getState("%s")',c_a)elseif b_a=="parent"then return
string.format('__getParentState("%s")',c_a)else return
string.format('__getElementState("%s", "%s")',b_a,c_a)end end)
ad=ad:gsub("([%w_]+)%.([%w_]+)",function(b_a,c_a)if cb[b_a]then return b_a.."."..c_a end;return
string.format('__getProperty("%s", "%s")',b_a,c_a)end)
local dd=setmetatable({colors=colors,math=math,tostring=tostring,tonumber=tonumber,__getState=function(b_a)return bd:getState(b_a)end,__getParentState=function(b_a)return
bd.parent:getState(b_a)end,__getElementState=function(b_a,c_a)
local d_a=bd:getBaseFrame():getChild(b_a)if not d_a then ab.header="Reactive evaluation error"
ab.error("Could not find element: "..b_a)return nil end;return
d_a:getState(c_a).value end,__getProperty=function(b_a,c_a)
if
d_a=="self"then return dd.get(_aa)elseif d_a=="parent"then
return dd.parent.get(_aa)else local aaa=dd.parent:getChild(d_a)if not aaa then
bb.header="Reactive evaluation error"
bb.error("Could not find element: "..d_a)return nil end
return aaa.get(_aa)end end},{__index=ac})if(dd._properties[__a].type=="string")then
cd="tostring("..cd..")"elseif(dd._properties[__a].type=="number")then
cd="tonumber("..cd..")"end;local b_a,c_a=load(
"return "..cd,"reactive","t",a_a)
if not b_a then
bb.header="Reactive evaluation error"bb.error("Invalid expression: "..c_a)return
function()return nil end end;return b_a end
local function cc(cd,dd)
for __a in cd:gmatch("([%w_]+)%.")do
if not _c[__a]then
if __a=="self"then elseif __a=="parent"then
if not dd.parent then
bb.header="Reactive evaluation error"bb.error("No parent element available")return false end else local a_a=dd.parent:getChild(__a)if not a_a then
bb.header="Reactive evaluation error"
bb.error("Referenced element not found: "..__a)return false end end end end;return true end;local dc=setmetatable({},{__mode="k"})
local _d=setmetatable({},{__mode="k",__index=function(cd,dd)cd[dd]={}
return cd[dd]end})
local function ad(cd,dd,__a)
if _d[cd][__a]then for b_a,c_a in ipairs(_d[cd][__a])do
c_a.target:removeObserver(c_a.property,c_a.callback)end end;local a_a={}
for b_a,c_a in dd:gmatch("([%w_]+)%.([%w_]+)")do
if not _c[b_a]then local d_a;if b_a=="self"then d_a=cd elseif
b_a=="parent"then d_a=cd.parent else
d_a=cd:getBaseFrame():getChild(b_a)end;if d_a then
local _aa={target=d_a,property=c_a,callback=function()
cd:updateRender()end}d_a:observe(c_a,_aa.callback)
table.insert(a_a,_aa)end end end;_d[cd][__a]=a_a end
cb.addSetterHook(function(cd,dd,__a,a_a)
if type(__a)=="string"and __a:match("^{.+}$")then
local b_a=__a:gsub("^{(.+)}$","%1")if not cc(b_a,cd)then return a_a.default end;ad(cd,b_a,dd)if not
dc[cd]then dc[cd]={}end;if not dc[cd][__a]then local c_a=bc(__a,cd,dd)
dc[cd][__a]=c_a end
b_a=="self"then return bd.get(c_a)elseif b_a=="parent"then
return bd.parent.get(c_a)else local d_a=bd.parent:getChild(b_a)if not d_a then
ab.header="Reactive evaluation error"
ab.error("Could not find element: "..b_a)return nil end
return d_a.get(c_a)end end},{__index=db})if(bd._properties[cd].type=="string")then
ad="tostring("..ad..")"elseif(bd._properties[cd].type=="number")then
ad="tonumber("..ad..")"end;local __a,a_a=load("return "..
ad,"reactive","t",dd)
if not __a then
ab.header="Reactive evaluation error"ab.error("Invalid expression: "..a_a)return
function()return nil end end;return __a end
local function ac(ad,bd)
for cd in ad:gmatch("([%w_]+)%.")do
if not cb[cd]then
if cd=="self"then elseif cd=="parent"then
if not bd.parent then
ab.header="Reactive evaluation error"ab.error("No parent element available")return false end else local dd=bd.parent:getChild(cd)if not dd then
ab.header="Reactive evaluation error"
ab.error("Referenced element not found: "..cd)return false end end end end;return true end;local bc=setmetatable({},{__mode="k"})
local cc=setmetatable({},{__mode="k",__index=function(ad,bd)ad[bd]={}
return ad[bd]end})
local function dc(ad,bd,cd)
if cc[ad][cd]then for __a,a_a in ipairs(cc[ad][cd])do
a_a.target:removeObserver(a_a.property,a_a.callback)end end;local dd={}
for __a,a_a in bd:gmatch("([%w_]+)%.([%w_]+)")do
if not cb[__a]then local b_a;if __a=="self"then b_a=ad elseif
__a=="parent"then b_a=ad.parent else
b_a=ad:getBaseFrame():getChild(__a)end;if b_a then
local c_a={target=b_a,property=a_a,callback=function()
ad:updateRender()end}b_a:observe(a_a,c_a.callback)
table.insert(dd,c_a)end end end;cc[ad][cd]=dd end
bb.addSetterHook(function(ad,bd,cd,dd)
if type(cd)=="string"and cd:match("^{.+}$")then
local __a=cd:gsub("^{(.+)}$","%1")if not ac(__a,ad)then return dd.default end;dc(ad,__a,bd)if
not bc[ad]then bc[ad]={}end;if not bc[ad][cd]then local a_a=_c(cd,ad,bd)
bc[ad][cd]=a_a end
return
function(c_a)local d_a,_aa=pcall(dc[cd][__a])
if
not d_a then bb.header="Reactive evaluation error"if type(_aa)=="string"then bb.error(
"Error evaluating expression: ".._aa)else
bb.error("Error evaluating expression")end
return a_a.default end;return _aa end end end)local bd={}
bd.hooks={destroy=function(cd)
if _d[cd]then
for dd,__a in pairs(_d[cd])do for a_a,b_a in ipairs(__a)do
b_a.target:removeObserver(b_a.property,b_a.callback)end end;_d[cd]=nil end end}return{BaseElement=bd} end
function(a_a)local b_a,c_a=pcall(bc[ad][cd])
if not b_a then
ab.header="Reactive evaluation error"
if type(c_a)=="string"then
ab.error("Error evaluating expression: "..c_a)else ab.error("Error evaluating expression")end;return dd.default end;return c_a end end end)local _d={}
_d.hooks={destroy=function(ad)
if cc[ad]then
for bd,cd in pairs(cc[ad])do for dd,__a in ipairs(cd)do
__a.target:removeObserver(__a.property,__a.callback)end end;cc[ad]=nil end end}return{BaseElement=_d} end
project["plugins/xml.lua"] = function(...) local da=require("errorManager")
local function _b(bc)local cc={attributes={}}
cc.name=bc:match("<(%w+)")
@@ -715,9 +713,6 @@ function db.getStats(_c)local ac=da[_c]if not ac then return nil end;return
{averageTime=ac.totalTime/ac.calls,totalTime=ac.totalTime,calls=ac.calls,minTime=ac.minTime,maxTime=ac.maxTime,lastTime=ac.lastTime}end;function db.clear(_c)da[_c]=nil end;function db.clearAll()for _c,ac in pairs(da)do
if ac.custom then da[_c]=nil end end end;return
{BaseElement=bb,Container=cb,API=db} end
project["plugins/pluginTemplate.lua"] = function(...) local b={hooks={init={}}}function b.setup(c)
c.defineProperty(c,"testProp",{default=5,type="number"})end;function b.hooks.init(c)end
function b:testFunc()end;return{VisualElement=b} end
project["errorManager.lua"] = function(...) local d=require("log")
local _a={tracebackEnabled=true,header="Basalt Error"}local function aa(ba,ca)term.setTextColor(ca)print(ba)
term.setTextColor(colors.white)end