Skip to content

Release Candidate Version 1.1.0 - #204

Open
clauspruefer wants to merge 16 commits into
mainfrom
v1.1.0
Open

Release Candidate Version 1.1.0#204
clauspruefer wants to merge 16 commits into
mainfrom
v1.1.0

Conversation

@clauspruefer

Copy link
Copy Markdown
Member

Pull Request

Description

Release Candidate v1.1.

  • Add Static / DB-less (100% serverless) Component
  • DOM ID Layer handling massively shortened (reduces overall rendering times)
  • Fixed Global Variable Handling / Source Data Handling
  • Add DivUnique, ProgressBar and RangeSlider Object Types
  • Fix Default Loader XMLRPC Type from POST to GET
  • Set Button default type to POST, add RequestMethod Property (object.json) for all Button Types
  • Improve CSS / Bootstrap Styling
  • Documentation Update

Type of Change

  • Bug fix
  • New feature
  • Breaking change
  • Documentation update

Copilot AI review requested due to automatic review settings August 3, 2026 11:28

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Release candidate v1.1.0 update that expands the x0 front-end object framework with new UI object types, introduces recursive object data get/set APIs, adjusts XMLRPC request defaults/method handling, and updates examples + documentation accordingly.

Changes:

  • Added recursive getObjectData(recursive) / setObjectData(data, recursive) support in sysBaseObject, plus runnable examples and documentation.
  • Introduced new system objects (DivUnique, ProgressBar, RangeSlider) and updated multiple UI components to use shorter/override ObjectIDs and Bootstrap styling.
  • Updated XMLRPC/button request-method behavior and improved global variable/source-object handling.

Reviewed changes

Copilot reviewed 25 out of 26 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
www/sysXMLRPCRequest.js Default XMLRPC request type set to GET; header tweak.
www/sysSourceObjectHandler.js Implements GlobalVar source object resolution via factory global vars.
www/sysObjTreeSimple.js Refactors tree DOM structure/styling to Bootstrap list groups; ID handling changes.
www/sysObjTabContainer.js Adjusts ObjectID overriding/initialization for tab container.
www/sysObjSQLText.js Tweaks icon postfix HTML spacing.
www/sysObjRangeSlider.js New RangeSlider system object.
www/sysObjProgressBar.js New ProgressBar system object.
www/sysObjOpenCloseContainer.js ObjectID override + header uses sysObjSQLText (icon/text).
www/sysObjList.js ObjectID override/uniqueness changes.
www/sysObjFormfieldList.js ObjectID override + mapping support in setData; validation flow adjustments.
www/sysObjFormfieldItem.js Formatting/field alignment changes.
www/sysObjFileUpload.js Ensures ObjectID set; minor formatting fix.
www/sysObjDiv.js Formatting updates + new sysObjDivUnique.
www/sysObjContextMenu.js Refactors context menu rendering to Bootstrap list-group; adds hover highlighting.
www/sysObjButtonInternal.js ObjectID override + constructor field refactor/commenting.
www/sysObjButtonCallback.js ObjectID override + constructor refactor/commenting.
www/sysObjButton.js Adds RequestMethod handling and new actions (set, setglobalvar); action flow changes.
www/sysFormfieldValidate.js Updates group validation to use UserValidateGroup.
www/sysFactory.js Registers new object types + adds setGlobalVar.
www/sysBaseObject.js Adds recursive object data get/set helpers + wrapper signature changes.
www/sysAsyncNotifyIndicatorItem.js CSS class tweak for notify indicator items.
static/sysInitOnLoad.js New static (DB-less) initialization entrypoint.
example/recursive_object_data/recursive_object_data_examples.js New console examples covering recursive get/set scenarios.
example/recursive_object_data/README.md Documentation for recursive object data examples.
example/README.md Links new recursive object data example.
doc/dev-oop-classes.rst Documents recursive get/set API and updates section numbering.
Suppressed comments (1)

www/sysObjButton.js:373

  • Similar to the set branch, the append branch calls RuntimeAppendDataFunc unconditionally after re-fetching objects without guarding against missing IDs or missing function pointers. This can throw and break button actions at runtime.
        else if (Action == 'append') {
            const SrcObject = sysFactory.getObjectByID(Attributes.SrcDataObject);
            const DstObject = sysFactory.getObjectByID(Attributes.DstDataObject);
            DstObject.RuntimeAppendDataFunc(SrcObject.RuntimeGetDataFunc());
        }

}
catch(err) {
console.debug('::validateGroup err:%s', err);
console.debug('::validateGroup err:%s', err);+
Comment thread www/sysObjButton.js
Comment on lines +362 to +367
if (Action == 'set') {
const SrcObject = sysFactory.getObjectByID(Attributes.SrcDataObject);
const DstObject = sysFactory.getObjectByID(Attributes.DstDataObject);
console.debug(DstObject);
DstObject.RuntimeSetDataFunc(SrcObject.RuntimeGetDataFunc());
}
Comment thread www/sysObjProgressBar.js
Comment on lines +46 to +48
this.ProgressBarObj = new sysBaseObject();
this.ProgressBarObj.ObjectID = 'ProgressBar';

Comment thread www/sysObjContextMenu.js
Comment on lines +183 to +185
var i=1;
for (ItemObj of this.Items)
{
Comment on lines +273 to +274
for (Key in this.FormfieldItems)
{
Comment on lines 307 to 308
for (GroupItem of Attributes.GroupValidate) {

Comment thread static/sysInitOnLoad.js
Comment on lines +81 to +83
for (Key in sysVarPreLoadVars) {
sysFactory.ObjGlobalData[Key] = InsertResult[sysVarPreLoadVars[Key]];
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants