|
1 | 1 | # Laravel Enso's Changelog |
2 | 2 |
|
| 3 | +## 3.9.2 |
| 4 | + |
| 5 | +The release includes small changes as well as new, powerful features for the tables package. |
| 6 | + |
| 7 | +### front-end |
| 8 | + |
| 9 | +Front-end packages have had their `yarn.lock` file removed as it wasn't mandatory and fixed various automated depencency vulnerability warnings. |
| 10 | + |
| 11 | +#### accessories |
| 12 | +- removed `tooltip.js` as direct dependency |
| 13 | +- fixed comments' avatar display |
| 14 | +- reverted to 'component'-wrapper class names for the `Discussions` and `Comments` components |
| 15 | + |
| 16 | +#### categories (new) |
| 17 | +- created a new package which is currently a dependency of the products package |
| 18 | + |
| 19 | +#### charts |
| 20 | +- added slot for controls |
| 21 | +- now performs fetch on source change |
| 22 | +- added precision to info panel's sum compution |
| 23 | +- added missing shortNumber filter |
| 24 | +- fixed progress circle missing import |
| 25 | +- fixed bug in infopanel when no data available |
| 26 | +- added default min:0 for y axis ticks |
| 27 | +- added info panel to the package |
| 28 | +- improved chart to use formatter function on y axis |
| 29 | + |
| 30 | +#### commercial |
| 31 | +- added stats example page |
| 32 | +- added missing package dependencies |
| 33 | +- fixed product select template |
| 34 | +- updated `QuickView` component import |
| 35 | +- added a github issue template to the repository |
| 36 | + |
| 37 | +#### confirmation |
| 38 | +- removes `tooltip.js` as direct dependency |
| 39 | + |
| 40 | +#### data-import |
| 41 | +- updated/fixed the Enum usage |
| 42 | +- added a github issue template to the repository |
| 43 | + |
| 44 | +#### departments |
| 45 | +- updated menu icon |
| 46 | +- updated ui dependency requirement |
| 47 | + |
| 48 | +#### directives |
| 49 | +- added a new `v-resize` directive, meant to be used with input fields, that resizes the field based on its content length |
| 50 | + |
| 51 | +#### dropdown |
| 52 | +- removed `popper.js` as dependency |
| 53 | +- cascaded the `hide()` method; |
| 54 | +- fixed the proper closing of drop-downs when dealing with multiple drop-downs |
| 55 | +- added stopPropagation for `click` events |
| 56 | +- tweaked the component height to have it aligned with other Enso UI components |
| 57 | + |
| 58 | +#### enums (new) |
| 59 | +- micro package that exposes Enum functionality, similar the the back-end package with the same name |
| 60 | + |
| 61 | +#### filters |
| 62 | +- removed `tooltip.js` as direct dependency |
| 63 | +- `@enso-ui/strings` was added as a dependency as some utility methods are used within `CoreDateFilter` |
| 64 | + |
| 65 | +#### forms |
| 66 | +- removes tiptap as dependency |
| 67 | + |
| 68 | +#### hr |
| 69 | +- added fa-pro dependency |
| 70 | +- removed unneded dep |
| 71 | + |
| 72 | +#### inventory |
| 73 | +- added addresses to the warehouse edit form as a result of adding an address relationship to the warehouse model |
| 74 | +- the `@enso-ui/products` dependency was updated to the new minor version |
| 75 | +- added a github issue template to the repository |
| 76 | + |
| 77 | +#### permissions |
| 78 | +- the `permission.js` mixin was converted to a module |
| 79 | +- added a github issue template to the repository |
| 80 | + |
| 81 | +#### quick-view |
| 82 | +- added a github issue template to the repository |
| 83 | +- removes unneeded `@enso-ui/card` dependency |
| 84 | + |
| 85 | +#### roles |
| 86 | +- updated the roles configuration component to work with the new permission module |
| 87 | +- added a github issue template to the repository |
| 88 | + |
| 89 | +#### search-mode (new) |
| 90 | +- added support for `exact` and `doesn't contain` matching |
| 91 | +- added stopPropagation for the `click` event |
| 92 | + |
| 93 | +#### strings (new) |
| 94 | +- micro package that contains a set of string manipulation methods |
| 95 | + |
| 96 | +#### tables |
| 97 | +- added support for configurable, state persistent, general filters |
| 98 | +- addressed bug tooltip position bug for some tables with one or two rows |
| 99 | +- translation support was added the column visibility selection |
| 100 | +- `@enso-ui/select` was added as dependency as dropdown usage was replaced by select |
| 101 | +- `@enso-ui/enums` was added as dependency as Enum computation was added to the front-end |
| 102 | +- added support for average totals |
| 103 | +- extracted search in its own component |
| 104 | +- fixed some layout problems in the top controls |
| 105 | +- fixed a bug where a double fetch was performed when resetting preferences |
| 106 | +- trimmed down request by removing garbage data |
| 107 | +- fixed preferences handling |
| 108 | + |
| 109 | +#### teams |
| 110 | +- added a github issue template to the repository |
| 111 | +- fixes team name padding in card |
| 112 | + |
| 113 | +#### themes |
| 114 | +- added the `sidebar.scss` component as part of the fix for the UI menu issue |
| 115 | + |
| 116 | +#### tutorials |
| 117 | +- updated column name in the index table |
| 118 | +- updates enum slot to the new table |
| 119 | +- added a github issue template to the repository |
| 120 | + |
| 121 | +#### typeahead |
| 122 | +- `itemEvents` & `highlight` attributes are now exposed in items slot |
| 123 | + |
| 124 | +#### products |
| 125 | +- fixed directives requirement/import |
| 126 | +- added category selection to the product form as the product model now has a category relationship |
| 127 | +- `@enso-ui/categories` was added as a dependency |
| 128 | +- added a github issue template to the repository |
| 129 | + |
| 130 | +#### select |
| 131 | +- updated the multi-select trigger css (set height & min-height) |
| 132 | +- extended selection slot to also cover the 'no selection' or 'no options' scenarios |
| 133 | +- fixed bug where select height was not matched with inputs |
| 134 | +- fixed `select` / `deselect` events payload to include full object when working in objects mode |
| 135 | + |
| 136 | +#### ui |
| 137 | +- fixes collapsed sidebar label position on scroll |
| 138 | +- removed `tooltip.js` as direct dep |
| 139 | +- fixed navbar search tag filtering |
| 140 | +- `@enso-ui/enums` was added as a dependency |
| 141 | +- fixed bug related to missing a background color for the menu, on mobile usage mode |
| 142 | +- used interpolation syntax for scss variables usage |
| 143 | + |
| 144 | +### back-end |
| 145 | + |
| 146 | +#### addresses |
| 147 | +- replaces helper with facade |
| 148 | +- added checks for single vs multi address support |
| 149 | + |
| 150 | +#### avatars |
| 151 | +- now the supervisor can update the avatar of the impersonated user |
| 152 | +- refactored Default Avatar service, the create method returns now the freshly created avatar |
| 153 | +- improveed the logic in test |
| 154 | + |
| 155 | +#### calendar |
| 156 | +- removed event body from the birthday calendar |
| 157 | +- refactored event request validator |
| 158 | +- fixed logic in event policy causing users with the proper roles to not be able to edit certain events |
| 159 | + |
| 160 | +#### categories (new) |
| 161 | +- the package adds categories functionality and is currently a dependency of the products package |
| 162 | + |
| 163 | +#### charts |
| 164 | +- now axes are displayed by default |
| 165 | + |
| 166 | +#### cli |
| 167 | +- removed log |
| 168 | +- fixed bug that was not allowing the creation of a parent menu with null route |
| 169 | + |
| 170 | +#### control-panel |
| 171 | +- fixed bug caused by url leading slashes |
| 172 | + |
| 173 | +#### comments |
| 174 | +- fixed the user resource used for displaying the avatar |
| 175 | + |
| 176 | +#### companies |
| 177 | +- fixed the publish tag |
| 178 | +- added importer & excel seeder |
| 179 | +- fixed enum usage |
| 180 | +- updated the static Company model `owner` method |
| 181 | + |
| 182 | +#### currencies |
| 183 | +- added slot for the symbol table column |
| 184 | + |
| 185 | +#### data-import |
| 186 | +- fixed rejected import download |
| 187 | +- removed deprecated attribute from table select |
| 188 | +- fixed enum usage in table |
| 189 | + |
| 190 | +#### filters |
| 191 | +- fixed Hour typo related bug |
| 192 | +- added `TimeSegments` enum & timeSegment getter and property in the `Interval` service |
| 193 | +- extended comparison operators with Equal, Is, IsNot, NotLike, NotILike |
| 194 | +- extended search modes with exact and doesn't contain matching |
| 195 | +- fixed a bug in the search service when having falsies as value |
| 196 | +- adds tests for the new search modes |
| 197 | + |
| 198 | +#### forms |
| 199 | +- enums are now resolved from the service container |
| 200 | + |
| 201 | +#### localisation |
| 202 | +- updated a 'ro' translation value |
| 203 | + |
| 204 | +#### permissions |
| 205 | +- improved computed type by adding a Verbs enum |
| 206 | + |
| 207 | +#### phpunit-pretty-print (new) |
| 208 | +- created a phpunit pretty printer package |
| 209 | + |
| 210 | +#### products |
| 211 | +- added vat rates enum |
| 212 | +- improved form |
| 213 | +- added category attribute & functionality to the package |
| 214 | +- added upgrade service to products |
| 215 | + |
| 216 | +#### ro-addresses |
| 217 | +- added missing facade import |
| 218 | +- updated index controller for the new for scope |
| 219 | +- refactors seeders |
| 220 | +- added factory & tests |
| 221 | +- fixes validator by adding missing attribute |
| 222 | + |
| 223 | +#### select |
| 224 | +- fixed resource instantiation via the usage of dependency injection |
| 225 | + |
| 226 | +#### tables |
| 227 | +- refactored optimal chunk service & its respective test |
| 228 | +- enums are now resolved from the service container |
| 229 | +- fixes enum localisation when building template |
| 230 | +- added support for configurable, state persistent, general filters |
| 231 | +- updated api version |
| 232 | +- `filterable` is now a supported `meta` attribute within the json table configuration files used to mark columns that are filterable using the new filtering functionality |
| 233 | +- `average` is now a supported `meta` attribute within the json table configuration files used to mark columns for which we want a average type of total |
| 234 | +- updates backend for the new trimmed request |
| 235 | +- added some missing return types for methods |
| 236 | +- fixed a bug in `rawTotals` where the result was being cast to `int` |
| 237 | +- fixed an inconsistence where the columns was mapped in a Collection instead of a Obj |
| 238 | +- added support for `exact` and `doesn't contain` search modes |
| 239 | +- removed Enum computation in favor of front-end handling |
| 240 | +- renamed the `fetchMode` method to `serverSide` |
| 241 | +- added enum transformation for front-end enum processing |
| 242 | +#### upgrade |
| 243 | +- fixed exception method signature |
| 244 | +- fixed admin role syncing in production for structure upgrade |
| 245 | + |
| 246 | +### The new tables filters |
| 247 | + |
| 248 | +While the new minimum configuration table filters are implemented and you may test drive them (by adding the `"filterable"` attribute in the table columns' meta arrays, and then configuring the filters from the table's UI), please note that some of the filters configuration options/values/structure may change. We therefore don't recommend using them just yet in production. |
| 249 | + |
| 250 | +When this feature will reach what we consider a stable form, the various options will be explained and the documentation updated. |
| 251 | + |
| 252 | +### Upgrade steps |
| 253 | + |
| 254 | +To upgrade: |
| 255 | +- remove from `client/package.json`: |
| 256 | + - extract-text-webpack-plugin |
| 257 | + - popper.js |
| 258 | + - postcss-cssnext |
| 259 | +- add in client/package.json |
| 260 | + - postcss-preset-env |
| 261 | +- run `composer require --dev laravel-enso/phpunit-pretty-print |
| 262 | +- add in `phpunit.xml` `printerClass="LaravelEnso\PHPUnitPrettyPrint\PrettyPrint"` |
| 263 | +- run `composer update` in the project's root |
| 264 | +- run `yarn && yarn upgrade && yarn` to ensure you have the latest versions and patches are applied. If necessary, update your patches |
| 265 | +- update the Enso version to 3.9.2 in `config/enso/config.php` |
| 266 | +- in `config/enso/tables.php` update the `comparisonOperator` and `searchModes` keys to: |
| 267 | +```php |
| 268 | +'comparisonOperator' => ComparisonOperators::Like, |
| 269 | +'searchModes' => [ |
| 270 | + SearchModes::Full, SearchModes::StartsWith, SearchModes::EndsWith, |
| 271 | + SearchModes::ExactMatch, SearchModes::DoesntContain, |
| 272 | +], |
| 273 | +``` |
| 274 | +- in `config/enso/select.php` update the `comparisonOperator` and `searchMode` keys to: |
| 275 | +```php |
| 276 | +'comparisonOperator' => ComparisonOperators::Like, |
| 277 | +'searchMode' => SearchModes::Full, |
| 278 | +``` |
| 279 | +- in `config/enso/imports.php`: |
| 280 | + - add the new companies importer under the `configs` array |
| 281 | + ```php |
| 282 | + 'companies' => [ |
| 283 | + 'label' => 'Companies', |
| 284 | + 'template' => 'vendor/laravel-enso/companies/src/App/Imports/Templates/companies.json', |
| 285 | + ], |
| 286 | + ``` |
| 287 | + - update `app` namespace to `App` for userGroups' importer |
| 288 | +- update `resources/preferences.json` and change the `expandedMenu` key to `expandedSidebar` |
| 289 | +- if using the `products` package: |
| 290 | + - add the `LaravelEnso\Products\App\Services\Upgrades\Products` upgrade service class to your upgrade logic and if customizing the validation/form, extending the model, ensure that the new attribute is fillable/etc as required |
| 291 | + - since products now depends on the `@enso-ui/categories` package, you should also import the package's icon and routes |
| 292 | + |
3 | 293 | ## 3.9.1 |
4 | 294 |
|
5 | 295 | The release includes many small changes both on the back-end and the front-end. |
|
0 commit comments