Skip to content

Releases: globules-io/OGX.JS

OGX.JS 1.22.3

21 Nov 16:10
Compare
Choose a tag to compare

Other Changes

  • [Switch] behavior change, allow setting a value even if component is disabled
  • [Roulette] behavior change, allow setting a value even if component is disabled

OGX.JS 1.22.2

20 Nov 20:04
Compare
Choose a tag to compare

Bug Fixes

  • [Net] fix unpack

OGX.JS 1.22.1

20 Nov 19:35
Compare
Choose a tag to compare

Bug Fixes

  • [Iceberg] fix touch not updated to latest version
  • [Touch] fix broken Swipe
  • [Window] fix drag+hide not disabling drag
  • [Carousel] fix resizing behavior

Other Changes

  • [Misc] performance improvements

OGX.JS 1.22.0

18 Nov 21:24
Compare
Choose a tag to compare

New Features

  • [List] unique added support to deep path
  • [Popup] now accepts percent for x and y in config
  • [Popup] ungrouped Popup will now acquire dragable and resizeable properties from parent Popup
  • [Popup] ungrouped Popup will be created at removed Tab position on screen
  • [Carousel] addNode supports additional callback parameter called instead of firing event after panel is rendered

Bug Fixes

  • [Calendar] MONTH_DAYS layout extra line of day
  • [DynamicList] fix missing unselect optional callback
  • [Tabs] fix issues with hold+drag when reordering
  • [Popup] fix issue with ungrouping popup when its Carousel panel contains OML
  • [Popup] fix grouping a simple Popup with a Container Popup when first node is scroll
  • [Popup] fix position when resizing

Other Changes

  • [Chat] is now removed from the core framework and moved to extra components
  • [Popup] user dragged Popup will not re-center on screen resize if center was set to true
  • [Popup] if x and y are set and center set to true, center is automatically set to false
  • [Popup] will not center once it's been user dragged, will not resize on screen resize if it's been user resized
  • [Misc] performance improvements

OGX.JS 1.21.1

16 Oct 22:49
Compare
Choose a tag to compare

[Form] field config type can be set to json and used with other components like Tags

OGX.JS 1.21.0

12 Oct 13:51
Compare
Choose a tag to compare

New Features

  • [Popup] new methods width and height overriding config.width and config.height
  • [Calendar] new method resetSelection
  • [Calendar] new switch for method val to skip the rendering
  • [Template] is now a separate class that Views extend by default
  • [Placeholder] now supports multiple sub nodes per placeholder

Bug Fixes

  • [Popup] fix transition preventing resize
  • [CalendarEngines] proper default label ddd for MONTH_DAYS layout

Other changes

  • [install] fix fonts and themes missing if the project already had www upon install

OGX.JS 1.20.2

24 Sep 17:18
Compare
Choose a tag to compare

1.20.2

Bug Fixes

  • [DynamicList] fix no selection returned if no key was set

Other changes

  • [DynamicList] added key method to get/set key

OGX.JS 1.20.1

16 Sep 00:28
Compare
Choose a tag to compare

Bug Fixes

  • [Roulette] fix missing placeholder onSelect method
  • [Touch] fix missing some default parameters
  • [FormInstance] fix broken default OMLs

Other changes

  • [Tree] types without display fallback onto default display
  • [FormInstance] added support to array of objects as cyclable

OGX.JS 1.20.0

13 Sep 18:59
Compare
Choose a tag to compare

Experimental Features

  • [Workers] New object to manage and execute WebWorkers on the fly

New Features

events vs callbacks

Starting at version 1.20, events for most Uxi's now have an equivalent method, if you do not wish to use events. It also opens more possibility, like adding some of your business logic in OML.
You can now set your callbacks in the config when creating a Uxi, i.e., for DynamicList if you are creating at runtime:

 {
      ..., 
      "callbacks" : {
           "select" : YOUR_FUNCTION
           "unselect" : YOUR_FUNCTION
      }
 }

You can also use the new OSE method keyword to target a Uxi's method when creating from OML, such as, for a method of the view instance

 {
      ..., 
      "callbacks" : {
           "select:OSE" : "{{method the_method_of_my_view myView:View}}"
      }
 }
Dynamic Forms

Another new feature that was missing, was the ability to create dynamic forms on the fly. So far, forms relied on Templates. Now you can generate forms using OGX objects to control each type of field. See the Form section for mpore info

 let myFormInstance = OGX.Form.fromObject(MY_OBJECT, PARENT_UXI, SELECTOR);
 myFormInstance.onChange = function(obj){...};
Changes
  • [OSE] new keyword method to target a Uxi's method, format {{method METHOD_NAME UXI_ID:UXI_TYPE}}
  • [DynamicList] added onSelect and onUnselect methods, and callbacks.select, callbacks.unselect in config
  • [Tabs] added onSelect, onAdd, onRemove methods, and callbacks.select, callbacks.add, callbacks.remove in config
  • [Tags] added onSelect, onAdd, onRemove methods, and callbacks.select, callbacks.add, callbacks.remove in config
  • [Iceberg] added onUp, onDown, onLeft, onRight, onRestore methods, and callbacks.up, callbacks.down, callbacks.left, callbacks.right, callbacks.restore in config
  • [Tree] added onSelect, onUnselect, onOpen, onClose, onMove methods, and callbacks.select, callbacks.unselect, callbacks.open, callbacks.close, callbacks.move in config
  • [GridSwiper] added onUp, onDown, onLeft, onRight methods, and callbacks.up, callbacks.down, callbacks.left, callbacks.right in config
  • [NestList] added onOpen, onClose method, and callbacks.open, callbacks.close in config
  • [Calendar] added onSelect, onUnselect method, and callbacks.select, callbacks.unselect in config
  • [Carousel] added onChange method, and callbacks.change in config
  • [Dots] added onSelect method, and callbacks.select in config
  • [Roulette] added onChange method, and callbacks.change in config
  • [Switch] added onChange method, and callbacks.change in config
  • [Form] new FormInstance subclass created from fromObject method

Other Changes

  • [Calendar] format of built-in layouts can now be overridden in the config of the layout
  • [Calendar] custom layout can now receive a config object
  • [OSE] prevent reserved keywords interferring with scripts

Breaking Changes

Calendar layout and engine setup format has changed to allow custom parameters to built-in layouts, without the need to create a custom layout. Before 1.20, only the engine could receive data via a config object

{"layout":"WEEK_DAYS", "engine":"CUSTOM_ENGINE", "config":{}}

Since 1.20, both the layout and engine can be passed a custom object. The layout and the engine must be declared by name now.

{
      "layout":{"name":"WEEK_DAYS", "config":{"format":"YYYY"}}, 
      "engine":{"name":"CUSTOM_ENGINE", "config":{}}
}

Bug Fixes

  • [Touch] fix issue with Swipe and Carousel
  • [App] fix issue if App is created without config object
  • [Tree] fix issue when creating an empty Tree
  • [Tree] fix issue with selection and icons
  • [Tree] fix issue with Scroller on new tree
  • [Tree] icons now handled via css

Other changes

  • [Theme] default theme updated to version 1.2.61

OGX.JS 1.19.1

28 Jul 10:56
Compare
Choose a tag to compare

New Features

  • [Touch] Move and Hold + Move added additional attributes x, y, distX, distY, dirX, dirY in callback object
  • [List] added support to deep path sorting
  • [List] added support to deep path updating