Update config, BasaltLS definitions, bundle and changelog

This commit is contained in:
github-actions[bot]
2025-03-14 16:00:40 +00:00
parent ae45eeac0f
commit 3763091cb8
3 changed files with 3731 additions and 349 deletions

3382
BasaltLS.lua Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -1,395 +1,395 @@
return {
["metadata"] = {
["version"] = "2.0",
["generated"] = "Fri Mar 14 02:59:05 2025",
},
["categories"] = {
["elements"] = {
["description"] = "UI Elements",
["core"] = {
["files"] = {
["Display"] = {
["errorManager"] = {
["size"] = 3789,
["path"] = "errorManager.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
["path"] = "elements/Display.lua",
},
["log"] = {
["size"] = 3142,
["path"] = "log.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
["propertySystem"] = {
["size"] = 15224,
["path"] = "propertySystem.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
["init"] = {
["size"] = 519,
["path"] = "init.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
["elementManager"] = {
["size"] = 6297,
["path"] = "elementManager.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
["render"] = {
["size"] = 11100,
["path"] = "render.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
["main"] = {
["size"] = 9007,
["path"] = "main.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
},
["description"] = "Core Files",
},
["libraries"] = {
["files"] = {
["utils"] = {
["size"] = 2661,
["path"] = "libraries/utils.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
["colorHex"] = {
["size"] = 132,
["path"] = "libraries/colorHex.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
["expect"] = {
["size"] = 846,
["path"] = "libraries/expect.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
},
["description"] = "Libraries",
},
["plugins"] = {
["files"] = {
["debug"] = {
["size"] = 6175,
["path"] = "plugins/debug.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
["state"] = {
["size"] = 5867,
["path"] = "plugins/state.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
["theme"] = {
["size"] = 5901,
["path"] = "plugins/theme.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
["benchmark"] = {
["size"] = 12496,
["path"] = "plugins/benchmark.lua",
["default"] = true,
["requires"] = {
[1] = "VisualElement",
},
["size"] = 2846,
["description"] = "",
},
["reactive"] = {
["size"] = 6962,
["path"] = "plugins/reactive.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
["animation"] = {
["size"] = 14116,
["path"] = "plugins/animation.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
["xml"] = {
["size"] = 8669,
["path"] = "plugins/xml.lua",
["default"] = true,
["requires"] = {
},
["description"] = "",
},
},
["description"] = "Plugins",
},
["elements"] = {
["files"] = {
["Program"] = {
["size"] = 6295,
["path"] = "elements/Program.lua",
["default"] = true,
["requires"] = {
[1] = "VisualElement",
},
["description"] = "",
},
["BaseElement"] = {
["size"] = 9023,
["path"] = "elements/BaseElement.lua",
["default"] = true,
["requires"] = {
},
["description"] = "The base class for all UI elements in Basalt.",
},
["Table"] = {
["size"] = 7586,
["path"] = "elements/Table.lua",
["default"] = true,
["requires"] = {
[1] = "VisualElement",
},
["description"] = "",
},
["Graph"] = {
["size"] = 5940,
["path"] = "elements/Graph.lua",
["default"] = false,
["requires"] = {
},
["description"] = "A point based graph element",
},
["Frame"] = {
["size"] = 4435,
["path"] = "elements/Frame.lua",
["default"] = true,
["requires"] = {
[1] = "Container",
},
["description"] = "A frame element that serves as a grouping container for other elements.",
},
["Display"] = {
["size"] = 2846,
["path"] = "elements/Display.lua",
["default"] = false,
["requires"] = {
[1] = "VisualElement",
},
["description"] = "",
},
["LineChart"] = {
["size"] = 2707,
["path"] = "elements/LineChart.lua",
["default"] = false,
["requires"] = {
},
["description"] = "",
},
["BaseFrame"] = {
["size"] = 5868,
["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.",
},
["List"] = {
["size"] = 8645,
["path"] = "elements/List.lua",
["default"] = true,
["requires"] = {
[1] = "VisualElement",
},
["description"] = "A scrollable list of selectable items",
},
["Slider"] = {
["size"] = 4676,
["path"] = "elements/Slider.lua",
["default"] = true,
["requires"] = {
[1] = "VisualElement",
},
["description"] = "",
},
["Input"] = {
["size"] = 8009,
["path"] = "elements/Input.lua",
["default"] = true,
["requires"] = {
[1] = "VisualElement",
},
["description"] = "A text input field with various features",
},
["Tree"] = {
["size"] = 7919,
["path"] = "elements/Tree.lua",
["default"] = true,
["requires"] = {
[1] = "VisualElement",
},
["description"] = "",
},
["TextBox"] = {
["size"] = 10904,
["path"] = "elements/TextBox.lua",
["default"] = false,
["requires"] = {
[1] = "VisualElement",
},
["description"] = "A multi-line text editor component with cursor support and text manipulation features",
},
["Dropdown"] = {
["description"] = "A dropdown menu that shows a list of selectable items",
["size"] = 5845,
["path"] = "elements/Dropdown.lua",
["default"] = false,
["requires"] = {
[1] = "List",
},
["size"] = 5845,
["default"] = false,
["description"] = "A dropdown menu that shows a list of selectable items",
},
["Scrollbar"] = {
["Container"] = {
["size"] = 23195,
["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",
},
["Checkbox"] = {
["size"] = 2872,
["path"] = "elements/Checkbox.lua",
["default"] = true,
["requires"] = {
[1] = "VisualElement",
},
["description"] = "",
["path"] = "elements/Scrollbar.lua",
["requires"] = {
[1] = "VisualElement",
},
["size"] = 9164,
["default"] = true,
},
["Slider"] = {
["description"] = "",
["path"] = "elements/Slider.lua",
["requires"] = {
[1] = "VisualElement",
},
["size"] = 4676,
["default"] = true,
},
["BarChart"] = {
["description"] = "",
["path"] = "elements/BarChart.lua",
["requires"] = {
},
["size"] = 2634,
["default"] = false,
},
["BaseElement"] = {
["description"] = "The base class for all UI elements in Basalt.",
["path"] = "elements/BaseElement.lua",
["requires"] = {
},
["size"] = 8911,
["default"] = true,
},
["Button"] = {
["description"] = "",
["path"] = "elements/Button.lua",
["requires"] = {
[1] = "VisualElement",
},
["size"] = 1632,
["default"] = true,
},
["List"] = {
["description"] = "A scrollable list of selectable items",
["path"] = "elements/List.lua",
["requires"] = {
[1] = "VisualElement",
},
["size"] = 8645,
["default"] = true,
},
["Frame"] = {
["description"] = "A frame element that serves as a grouping container for other elements.",
["path"] = "elements/Frame.lua",
["requires"] = {
[1] = "Container",
},
["size"] = 4435,
["default"] = true,
},
["Program"] = {
["description"] = "",
["path"] = "elements/Program.lua",
["requires"] = {
[1] = "VisualElement",
},
["size"] = 6295,
["default"] = true,
},
["Input"] = {
["description"] = "A text input field with various features",
["path"] = "elements/Input.lua",
["requires"] = {
[1] = "VisualElement",
},
["size"] = 7997,
["default"] = true,
},
["Graph"] = {
["description"] = "A point based graph element",
["path"] = "elements/Graph.lua",
["requires"] = {
},
["size"] = 5940,
["default"] = false,
},
["Tree"] = {
["description"] = "",
["path"] = "elements/Tree.lua",
["requires"] = {
[1] = "VisualElement",
},
["size"] = 7885,
["default"] = true,
},
["Table"] = {
["description"] = "",
["path"] = "elements/Table.lua",
["requires"] = {
[1] = "VisualElement",
},
["size"] = 7586,
["default"] = true,
},
["BigFont"] = {
["description"] = "",
["path"] = "elements/BigFont.lua",
["requires"] = {
[1] = "VisualElement",
},
["size"] = 20670,
["default"] = false,
},
["Flexbox"] = {
["description"] = "A flexbox container that arranges its children in a flexible layout.",
["path"] = "elements/Flexbox.lua",
["requires"] = {
[1] = "Container",
},
["size"] = 11530,
["default"] = true,
},
["VisualElement"] = {
["description"] = "The Visual Element class which is the base class for all visual UI elements",
["size"] = 17054,
["path"] = "elements/VisualElement.lua",
["default"] = true,
["requires"] = {
[1] = "BaseElement",
},
["size"] = 17146,
["description"] = "The Visual Element class which is the base class for all visual UI elements",
},
["Button"] = {
["size"] = 1632,
["path"] = "elements/Button.lua",
["default"] = true,
["requires"] = {
[1] = "VisualElement",
},
["description"] = "",
},
["ProgressBar"] = {
["size"] = 2272,
["path"] = "elements/ProgressBar.lua",
["default"] = true,
["requires"] = {
[1] = "VisualElement",
},
["description"] = "",
},
["Menu"] = {
["description"] = "A horizontal menu bar with selectable items.",
["size"] = 4657,
["path"] = "elements/Menu.lua",
["default"] = true,
["requires"] = {
[1] = "List",
},
["size"] = 4657,
["default"] = true,
["description"] = "A horizontal menu bar with selectable items.",
},
["Label"] = {
["description"] = "A simple text display element that automatically resizes its width based on the text content.",
["path"] = "elements/Label.lua",
["requires"] = {
[1] = "VisualElement",
},
["size"] = 3069,
["Flexbox"] = {
["size"] = 11530,
["path"] = "elements/Flexbox.lua",
["default"] = true,
},
["BaseFrame"] = {
["description"] = "This is the base frame class. It is the root element of all elements and the only element without a parent.",
["path"] = "elements/BaseFrame.lua",
["requires"] = {
[1] = "Container",
},
["size"] = 5868,
["default"] = true,
["description"] = "A flexbox container that arranges its children in a flexible layout.",
},
["LineChart"] = {
["description"] = "",
["path"] = "elements/LineChart.lua",
["requires"] = {
},
["size"] = 2707,
["BigFont"] = {
["size"] = 20670,
["path"] = "elements/BigFont.lua",
["default"] = false,
},
["Checkbox"] = {
["description"] = "",
["path"] = "elements/Checkbox.lua",
["requires"] = {
[1] = "VisualElement",
},
["size"] = 2872,
["default"] = true,
["description"] = "",
},
["BarChart"] = {
["size"] = 2634,
["path"] = "elements/BarChart.lua",
["default"] = false,
["requires"] = {
},
["description"] = "",
},
["Image"] = {
["description"] = "An element that displays an image in bimg format",
["size"] = 15102,
["path"] = "elements/Image.lua",
["requires"] = {
[1] = "VisualElement",
},
["size"] = 13487,
["default"] = false,
},
["ProgressBar"] = {
["description"] = "",
["path"] = "elements/ProgressBar.lua",
["requires"] = {
[1] = "VisualElement",
},
["size"] = 2272,
["default"] = true,
["description"] = "An element that displays an image in bimg format",
},
["TextBox"] = {
["description"] = "A multi-line text editor component with cursor support and text manipulation features",
["path"] = "elements/TextBox.lua",
["Label"] = {
["size"] = 3069,
["path"] = "elements/Label.lua",
["default"] = true,
["requires"] = {
[1] = "VisualElement",
},
["size"] = 10904,
["default"] = false,
["description"] = "A simple text display element that automatically resizes its width based on the text content.",
},
["Container"] = {
["description"] = "The container class. It is a visual element that can contain other elements. It is the base class for all containers",
["path"] = "elements/Container.lua",
["Scrollbar"] = {
["size"] = 9164,
["path"] = "elements/Scrollbar.lua",
["default"] = true,
["requires"] = {
[1] = "VisualElement",
},
["size"] = 23195,
["default"] = true,
},
},
},
["plugins"] = {
["description"] = "Plugins",
["files"] = {
["benchmark"] = {
["description"] = "",
["path"] = "plugins/benchmark.lua",
["requires"] = {
[1] = "VisualElement",
},
["size"] = 12496,
["default"] = true,
},
["theme"] = {
["description"] = "",
["path"] = "plugins/theme.lua",
["requires"] = {
},
["size"] = 5901,
["default"] = true,
},
["animation"] = {
["description"] = "",
["path"] = "plugins/animation.lua",
["requires"] = {
},
["size"] = 14116,
["default"] = true,
},
["state"] = {
["description"] = "",
["path"] = "plugins/state.lua",
["requires"] = {
},
["size"] = 5867,
["default"] = true,
},
["reactive"] = {
["description"] = "",
["path"] = "plugins/reactive.lua",
["requires"] = {
},
["size"] = 6962,
["default"] = true,
},
["xml"] = {
["description"] = "",
["path"] = "plugins/xml.lua",
["requires"] = {
},
["size"] = 8669,
["default"] = true,
},
["debug"] = {
["description"] = "",
["path"] = "plugins/debug.lua",
["requires"] = {
},
["size"] = 6175,
["default"] = true,
},
},
},
["libraries"] = {
["description"] = "Libraries",
["files"] = {
["colorHex"] = {
["description"] = "",
["path"] = "libraries/colorHex.lua",
["requires"] = {
},
["size"] = 132,
["default"] = true,
},
["expect"] = {
["description"] = "",
["path"] = "libraries/expect.lua",
["requires"] = {
},
["size"] = 846,
["default"] = true,
},
["utils"] = {
["description"] = "",
["path"] = "libraries/utils.lua",
["requires"] = {
},
["size"] = 2661,
["default"] = true,
},
},
},
["core"] = {
["description"] = "Core Files",
["files"] = {
["init"] = {
["description"] = "",
["path"] = "init.lua",
["requires"] = {
},
["size"] = 519,
["default"] = true,
},
["main"] = {
["description"] = "",
["path"] = "main.lua",
["requires"] = {
},
["size"] = 9007,
["default"] = true,
},
["log"] = {
["description"] = "",
["path"] = "log.lua",
["requires"] = {
},
["size"] = 3142,
["default"] = true,
},
["render"] = {
["description"] = "",
["path"] = "render.lua",
["requires"] = {
},
["size"] = 11100,
["default"] = true,
},
["errorManager"] = {
["description"] = "",
["path"] = "errorManager.lua",
["requires"] = {
},
["size"] = 3789,
["default"] = true,
},
["elementManager"] = {
["description"] = "",
["path"] = "elementManager.lua",
["requires"] = {
},
["size"] = 6297,
["default"] = true,
},
["propertySystem"] = {
["description"] = "",
["path"] = "propertySystem.lua",
["requires"] = {
},
["size"] = 15224,
["default"] = true,
["description"] = "",
},
},
["description"] = "UI Elements",
},
},
["metadata"] = {
["version"] = "2.0",
["generated"] = "Fri Mar 14 16:00:35 2025",
},
}

View File

@@ -686,9 +686,9 @@ bb(self,cb+#_c-1,db)else local cc=#ac[db][1]if cb>cc then return self end
_c=_c:sub(1,cc-cb+1)end
local bc=ac[db][1]
ac[db][1]=bc:sub(1,cb-1).._c..bc:sub(cb+#_c)self:updateRender()return self end
function _b:getText(cb,db,_c)if not cb or not db then return end
local ac=self.get("bimg")[self.get("currentFrame")]if not ac or not ac[db]then return end;local bc=ac[db][1]
if not bc then return end
function _b:getText(cb,db,_c)if not cb or not db then return""end
local ac=self.get("bimg")[self.get("currentFrame")]if not ac or not ac[db]then return""end;local bc=ac[db][1]if not bc then
return""end
if _c then return bc:sub(cb,cb+_c-1)else return bc:sub(cb,cb)end end
function _b:setFg(cb,db,_c)if
type(_c)~="string"or#_c<1 or cb<1 or db<1 then return self end
@@ -698,9 +698,9 @@ bb(self,cb+#_c-1,db)else local cc=#ac[db][2]if cb>cc then return self end
_c=_c:sub(1,cc-cb+1)end
local bc=ac[db][2]
ac[db][2]=bc:sub(1,cb-1).._c..bc:sub(cb+#_c)self:updateRender()return self end
function _b:getFg(cb,db,_c)if not cb or not db then return end
local ac=self.get("bimg")[self.get("currentFrame")]if not ac or not ac[db]then return end;local bc=ac[db][2]
if not bc then return end
function _b:getFg(cb,db,_c)if not cb or not db then return""end
local ac=self.get("bimg")[self.get("currentFrame")]if not ac or not ac[db]then return""end;local bc=ac[db][2]if not bc then
return""end
if _c then return bc:sub(cb,cb+_c-1)else return bc:sub(cb)end end
function _b:setBg(cb,db,_c)if
type(_c)~="string"or#_c<1 or cb<1 or db<1 then return self end
@@ -710,9 +710,9 @@ bb(self,cb+#_c-1,db)else local cc=#ac[db][3]if cb>cc then return self end
_c=_c:sub(1,cc-cb+1)end
local bc=ac[db][3]
ac[db][3]=bc:sub(1,cb-1).._c..bc:sub(cb+#_c)self:updateRender()return self end
function _b:getBg(cb,db,_c)if not cb or not db then return end
local ac=self.get("bimg")[self.get("currentFrame")]if not ac or not ac[db]then return end;local bc=ac[db][3]
if not bc then return end
function _b:getBg(cb,db,_c)if not cb or not db then return""end
local ac=self.get("bimg")[self.get("currentFrame")]if not ac or not ac[db]then return""end;local bc=ac[db][3]if not bc then
return""end
if _c then return bc:sub(cb,cb+_c-1)else return bc:sub(cb)end end
function _b:setPixel(cb,db,_c,ac,bc)if _c then self:setText(cb,db,_c)end;if ac then
self:setFg(cb,db,ac)end;if bc then self:setBg(cb,db,bc)end;return self end
@@ -1024,13 +1024,13 @@ local db=ca(self.get("nodes"),self.get("expandedNodes"))local _c=cb+self.get("sc
if db[_c]then local ac=db[_c]
local bc=ac.node
if bb<=ac.level*2 +2 then self:toggleNode(bc)end;self.set("selectedNode",bc)
self:fireEvent("node_select",bc)end;return true end end
self:fireEvent("node_select",bc)end;return true end;return false end
function ba:onSelect(da)self:registerCallback("node_select",da)return self end
function ba:mouse_scroll(da,_b,ab)
if _a.mouse_scroll(self,da,_b,ab)then
local bb=ca(self.get("nodes"),self.get("expandedNodes"))
local cb=math.max(0,#bb-self.get("height"))
local db=math.min(cb,math.max(0,self.get("scrollOffset")+da))self.set("scrollOffset",db)return true end end
local db=math.min(cb,math.max(0,self.get("scrollOffset")+da))self.set("scrollOffset",db)return true end;return false end
function ba:getNodeSize()local da,_b=0,0
local ab=ca(self.get("nodes"),self.get("expandedNodes"))for bb,cb in ipairs(ab)do
da=math.max(da,cb.level+#cb.node.text)end;_b=#ab;return da,_b end
@@ -1103,8 +1103,8 @@ function aa:setCursor(ba,ca,da,_b)
ba=math.min(self.get("width"),math.max(1,ba))return d.setCursor(self,ba,ca,da,_b)end
function aa:char(ba)if not self.get("focused")then return false end
local ca=self.get("text")local da=self.get("cursorPos")local _b=self.get("maxLength")
local ab=self.get("pattern")if _b and#ca>=_b then return end
if ab and not ba:match(ab)then return end
local ab=self.get("pattern")if _b and#ca>=_b then return false end;if ab and not ba:match(ab)then return
false end
self.set("text",ca:sub(1,da-1)..ba..ca:sub(da))self.set("cursorPos",da+1)self:updateViewport()local bb=
self.get("cursorPos")-self.get("viewOffset")
self:setCursor(bb,1,true,