Skip to content

Releases: atk4/ui

1.3.2

03 Dec 22:04
Compare
Choose a tag to compare

Fixed issues related to PHP 7.2

  • Template.php uses depreciated each(). #278
  • using url() on index.php not working. #279
  • make url() more flexible (for 3rd party integrations), #271

1.3.0

08 Nov 01:49
Compare
Choose a tag to compare

This version is focused on dynamic interaction between the browser and your PHP apps. It contains 3
new Components and 3 new Actions and a new Form Field Decorator.

Loader (#246, #250) is a component that calls itself back to load its content. While the content is being generated, your user will see a spinner animation:

$loader = $app->add('Loader');

$loader->set(function($p) {
    sleep(2);  // or any other slow-loading code.
    $p->add('LoremIpsum');
});

There are also ways to trigger and reload the contents as well as passing some arguments in. We include 2
demos for the loader: basic loader demo and
practical use example. For additional information,
look into Loader Documentation

Next we thought - why not also load content dynamically inside a Modal dialog, so we added this:

$modal = $app->add(['Modal', 'title' => 'Lorem Ipsum load dynamically']);

$modal->set(function ($p) {
    sleep(2);  // or any other slow-loading code.
    $p->add('LoremIpsum');
});

Code is very consistent with the Loader or dynamic definition of Tabs but would open in a modal window. However we wanted to go even further.

What if it would take several seconds for content to load? We used Server-Sent-Events for streaming updates from your PHP code in real-time (#258 #259). Yet it's just as simple to use as anything else in Agile UI:

// see SSE demo for $bar implementation

$button->on('click', $sse->set(function () use ($sse, $bar) {

    sleep(0.5);
    $sse->send($bar->js()->progress(['percent' => 40]));
    sleep(2);
    $sse->send($bar->js()->progress(['percent' => 80]));
    sleep(1);
    return $bar->js()->progress(['percent' => 100]);
}));

In the next release we will include 'ProgressBar' and 'Console' classes that rely on event streaming.

Other additions include:

We also added AutoComplete "Plus" mode. It's a button next to your AutoComplete field which you can click to add new element inside a referenced entity which will then be automatically filled-in. Super-useful!

Lastly - a lot of new documentation and minor fixes. #240 #244 #248 #256 #257

Our Test-suite now includes broser testing. #262 #263

1.2.3

16 Oct 18:14
Compare
Choose a tag to compare

Bugfixes #234, #238, #239

  • Reloader now properly shows error in a popup, if exception occurs.

1.2.2

16 Oct 11:54
Compare
Choose a tag to compare

Bugfixes #231 #232 #230 #229

  • Virtual Page cannot have multiple callbacks
  • Grid::addDecorator added to proxy Table::addDecorator
  • Field type "boolean" now properly shown on grid/crud (thanks @slava-vishnyakov)
  • Virtual Page trigger allows [$obj, 'methd'] callables now
  • Added more tests

1.2.1

10 Oct 16:30
Compare
Choose a tag to compare
  • fixed warning in PHP 5.6.x for function(string $name).

1.2.0

10 Oct 15:04
Compare
Choose a tag to compare

This release includes change to view constructor arguments, huge JavaScript overhaul and clean-up,
refactored jsModal implementation, refactor of Table::addColumn() and Table::addField(), integration
with Wordpress and a lot of new documentation.

What's new? Watch this video

This release was possible thanks to our new contributors:

Major Changes

  • Refactored View arguments. $button = new Button($label, $class) instead of using arrays. Backwards compatible.
  • Migrated to Agile Core 1.3 and Agile Data 1.2.1
  • Added support for Tabs
  • Added notify.js #205
  • Add Callback::triggered() method. #226
  • Refactored JS Plugin System. ATK now implements: #189, #201, #193, #202
    • spinner (link to doc needed)
    • reloadView (link to doc needed)
    • ajaxec (link to doc needed)
    • createModal (link to doc needed)
  • Refactored addField() and addColumn() #179 #187 #223 #225

Other changes

1.1.10

25 Jun 19:56
Compare
Choose a tag to compare
  • Fix warning in database demos
  • Fix detection of local public files for demos
  • Fix Delete button in crud (couldn't be clicked twice)
  • Enabled App to have dynamic methods
  • Fixed bug in Status column
  • Fixed stickyURL #185
  • Improved compatibility with custom JS renderers (for wordpress integration)
  • Fixed centered layout #186
  • "get-assets.php" now creates 'public' folder, usable in your project

1.1.4

12 Jun 07:06
Compare
Choose a tag to compare
Add pre-built version of JS libraries

1.1.3

12 Jun 07:07
Compare
Choose a tag to compare
  • Improve UI layout and add responsivitiy #170
  • Documentation restructure, new Overview section, many more screenshots #154
  • Added support for multiple formatters in Table. You can use 'addColumn' with existing column. #162
  • Added type 'text', improve how 'money', date and time appear on a form. #165
  • Improve the way hasOne relations are displayed on the form #165 (dropdowns)
  • Fix linking to JS libraries in the CDN
  • Bugfixes in Menu
  • Renamed $layout->leftMenu into $layout->menuLeft to follow principle of "Left/Right" always being last word.

1.1.2

18 May 22:41
Compare
Choose a tag to compare
  • Implemented Grid / Table sorting #163
  • CRUD look and feel improvements #156
  • Added support for passing arguments into on('', function($arg)) from JS
  • Prevent from showing "incompatible function warning"
  • Bugfixes #164