Releases: atk4/ui
1.4.0
In this version we focus on high-level components: Wizard, Console, ProgressBar, AutoComplete field, Lister, Radio field
and necessary modifications to implement Login add-on.
For detailed explanation read this article: https://medium.com/@romaninsh/atk-newsletter-1-ui-1-4-released-cb7b84fc12c8.
Implemented enhancements:
- Modal::show() arguments. #255
- Implement session memorize #116
- Feature/implement wizard #305 (romaninsh)
Fixed bugs:
- Adding child and re-rendering has no effect #296
- CRUD edit form is broken #295
- form2 demo page is bad #290
- Feature/fix 295 #297 (romaninsh)
- Fix implementation of Radio field #292 (romaninsh)
Closed issues:
- Label->link() unneccessary #330
- AutoComplete does not work if model id_field != 'id' or title_field' != name #327
- Can not move Modal window by dragging of its title bar #323
- Form error reloads in new popup window #318
- Form does not handle integer fields set to 0 correctly #317
- Paginator with self-reloading option is broken after change to CallbackLater #313
- Implement Upload Field for form #304
- even though $console->send() is documented, it's not implemented. #302
- CRUD values from model don't propagate to boolean and dropdown values #288
- AutoComplete ignores model conditions until input is done #282
- when URL omits
index.phpURL detection is working incorrectly. #279 - Create example with header/footer row in table #276
- [Epic] - Console #275
- [Epic] - progress bar #274
- [Epic] Wizard #273
- Console and Progress-bar #160
- TableColumn\Template not supporting HTML #135
- Minor Improvements to jsReload #75
- add lister documentation #27
- integrate selenium testsuite #9
Merged pull requests:
- fix jsCallback catch on Validation Exception #347 (ibelar)
- Doc/upload field #346 (ibelar)
- Feature/api redirect #345 (romaninsh)
- Updating readme for 1.4 #344 (romaninsh)
- fix tab callback #343 (romaninsh)
- Add View::jsReload() #341 (romaninsh)
- it's better to call getter method not access property directly #340 (DarkSide666)
- implement progress bar #337 (romaninsh)
- feature/Autocomplete-with-dropdown-settings #335 (ibelar)
- feature/Modal observes changes #334 (ibelar)
- Implement $view->url() functionality as per #307 #333 (romaninsh)
- fix #330 #332 (DarkSide666)
- feature/Error-Modal-Rev(fix#318) #331 (ibelar)
- fix #327: title_field and id_field #328 (PhilippGrashoff)
- fix/#318 Form error #326 (ibelar)
- Feature/js package #320 (ibelar)
- fix 317 #319 (DarkSide666)
- resolve #313 #314 (romaninsh)
- Fix Hidden type field label display #311 (ibelar)
- Feature/upload field #306 (ibelar)
- Feature/fix 302 #303 (romaninsh)
- Inserted a link to calendar github page in comment #300 (PhilippGrashoff)
- Removed empty first line #299 (PhilippGrashoff)
- Added implementation of Lister #298 (romaninsh)
- Move cloneRegion into lister's init #294 (romaninsh)
- Feature/refactor region population #293 (romaninsh)
- Enhancements of our Form #291 (romaninsh)
- Corrected mistyped "Exception" (was "Exceptino") #287 (PhilippGrashoff)
- Fix/#282-Autocomplete #285 (ibelar)
- Implementing Console #280 (romaninsh)
- Improvements for Tables, CRUDS and few other areas. #277 (romaninsh)
1.3.2
1.3.0
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:
- AutoComplete field for dynamically loading contents of a drop-down. #245
- Notifyer for flashing success or error messages on top of the screen dynamically. #242
- jsModal Action for opening Modal windows
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
1.2.3
1.2.2
1.2.1
1.2.0
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.
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
- Documentation improvements:
- Callbacks and Virtual pages #200 (http://agile-ui.readthedocs.io/en/latest/core.html#callbacks-and-virtual-pages)
- README file #196
- Add documentation for icon, image, label, loremipsum, message, tablecolumn, text, decorators. #218
- Fixed problem with Checkbox on a form #130
- Fixed form submission with Enter #173
- Improved form validation #191
- Fix label display when it's 0 #198
- Cleanups #207 #218
- Switched to codecov.io for a more serious coverage reports (will focus on improving those)
1.1.10
- 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
1.1.3
- 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->leftMenuinto$layout->menuLeftto follow principle of "Left/Right" always being last word.