v5.40.0

webiny/webiny-jsv5.40.0Jun 20, 2024by Pavel910

AI Summary

This release focuses on bug fixes, UI/UX improvements, and new CMS features including trash bin management and record locking. It also includes updates to AWS layers (Sharp/Chromium) and CLI tools.

Key Highlights

  • Added Headless CMS trash bin management with restore and deletion capabilities.
  • Introduced record locking feature to the WCP license.
  • Improved UI/UX for Headless CMS including file gallery, date inputs, and validation.
  • Upgraded Pulumi to version 6.
  • Published AWS layers (Sharp and Chromium) for the ap-east-1 region.

New Features

  • Record locking feature for WCP license.
  • Headless CMS trash bin management (move entry to bin, restore from trash).
  • RichTextRenderer utility for Headless CMS.
  • Link alt attribute support in lexical editor.
  • Duplicate page list and bulk actions in Page Builder.
  • Empty Workspace Scaffold creation.

Full Release Notes

# [5.40.0](https://github.com/webiny/webiny-js/compare/v5.39.8...v5.40.0) (2024-06-20)


### Bug Fixes

* abstract `reset.css` styles away from users ([#4138](https://github.com/webiny/webiny-js/issues/4138)) ([b691835](https://github.com/webiny/webiny-js/commit/b69183541fbf7a58663bcb3e153fb2676715f419))
* add missing `console.log` call ([2341fe5](https://github.com/webiny/webiny-js/commit/2341fe5ba12c1b463b5f70fef1de6f84ada6c277))
* add missing aws-lambda dependency ([f2a2672](https://github.com/webiny/webiny-js/commit/f2a2672f0b421981aa175ae5a88eba313493b487))
* add missing fields in `createModelField` ([#4097](https://github.com/webiny/webiny-js/issues/4097)) ([5ee5add](https://github.com/webiny/webiny-js/commit/5ee5addd81e465da79794586421f05c3f50592f5))
* add missing type annotation ([9c14649](https://github.com/webiny/webiny-js/commit/9c1464971cfbc8c688299a058878bf27a8c3ab79))
* add new scaffold to CWP ([82c8879](https://github.com/webiny/webiny-js/commit/82c887945677daa2fce217c82dc06b9cb7c0172e))
* add NPM dependencies question (optional) [no ci] ([bd1946d](https://github.com/webiny/webiny-js/commit/bd1946d9184df870078d68fb32fedd0ed4d28d7b))
* add xml2js resolution on repository level ([9a5422e](https://github.com/webiny/webiny-js/commit/9a5422ec24e15aef58102cd43810492caaebde4f))
* address API GW route concurrency-related issue ([#4131](https://github.com/webiny/webiny-js/issues/4131)) ([b893929](https://github.com/webiny/webiny-js/commit/b8939292fd9fabd1061ce6eb9d8088d11eb7f95d))
* **api-aco:** verify existence of identity while emptying the trash bins ([#4101](https://github.com/webiny/webiny-js/issues/4101)) ([cdc9bea](https://github.com/webiny/webiny-js/commit/cdc9bead94bb84f486886fd202ca8a9bf4bf4824))
* **api-headless-cms-ddb-es:** additional log on index create [skip ci] ([08f90d8](https://github.com/webiny/webiny-js/commit/08f90d83b4b50dba2bfaa7a3b4103e27dfb9cb9e))
* **api-headless-cms-tasks:** race conditions while deleting trash bin entries ([#4144](https://github.com/webiny/webiny-js/issues/4144)) ([d711547](https://github.com/webiny/webiny-js/commit/d711547cdc6f6779e1cd00946abe53df8830c8b3))
* **api-headless-cms:** add field renderer resolver ([5d3f831](https://github.com/webiny/webiny-js/commit/5d3f831d1803c3c7ac6efc67b286fa53283115cb))
* **api-headless-cms:** add missing type property [skip ci] ([cbdbd7b](https://github.com/webiny/webiny-js/commit/cbdbd7b40563ab2119f2b7e3e3c77529e91b1627))
* **api-headless-cms:** clone returned input object ([c5e67a0](https://github.com/webiny/webiny-js/commit/c5e67a042ba5a448ec072db50c4434aca932e374))
* **api-headless-cms:** enable deletion and restoration of partial entries ([#4116](https://github.com/webiny/webiny-js/issues/4116)) ([b60fadd](https://github.com/webiny/webiny-js/commit/b60fadd7e7f30015c8447ea79f1a34ec109dfa3c))
* **api-headless-cms:** expose optional id and storageId ([#4091](https://github.com/webiny/webiny-js/issues/4091)) ([52c9f8c](https://github.com/webiny/webiny-js/commit/52c9f8c91ab8260130be36a80b45d5d81f3aaa3f))
* **api-headless-cms:** expose optional noValidate parameter ([#4092](https://github.com/webiny/webiny-js/issues/4092)) ([340619e](https://github.com/webiny/webiny-js/commit/340619e62c0baaff78461c09dd2c3d4771a12119))
* **api-headless-cms:** make field renderer settings either undefined or object ([97d2c99](https://github.com/webiny/webiny-js/commit/97d2c99563349ce6ff221c8dd322fb203ecbaafe))
* **api-headless-cms:** multi-value DZ value must default to array ([421d2c4](https://github.com/webiny/webiny-js/commit/421d2c4d77da5f17620e402d86e2f7c9a2589d30))
* **api-headless-cms:** remove camelCase conversion in storageId validation ([f2c4f8b](https://github.com/webiny/webiny-js/commit/f2c4f8b48d425f9d51e0b4d599e2df217083e6e9))
* **api-headless-cms:** rename `deleted` flag to `wbyDeleted` ([#4087](https://github.com/webiny/webiny-js/issues/4087)) ([42fcc1a](https://github.com/webiny/webiny-js/commit/42fcc1aa8271eaf02c88f8a23344065ec755972d))
* **api-headless-cms:** rename adstractions folder to abstractions ([#4050](https://github.com/webiny/webiny-js/issues/4050)) ([e690926](https://github.com/webiny/webiny-js/commit/e690926ad3eb335ae3f453b126096b98f7a0e5d9))
* **api-headless-cms:** revert storageId validation logic ([164b9cf](https://github.com/webiny/webiny-js/commit/164b9cf048d2aa694d51eca83e2578ad023adcf2))
* **api-i18n:** set first locale into context ([7c49c5b](https://github.com/webiny/webiny-js/commit/7c49c5bc2a73b0dd9d8dcd417e78647e97e0f6f7))
* **api-security-cognito:** return custom identity [skip ci] ([63b700e](https://github.com/webiny/webiny-js/commit/63b700e1368986e36c2be033defb948deff107a9))
* **api-security:** load permissions immediately after authentication ([26f650a](https://github.com/webiny/webiny-js/commit/26f650a230d63930cf56596bbc1696ae8f4854d4))
* **app-aco:** memoize advanced search config [skip ci] ([532a220](https://github.com/webiny/webiny-js/commit/532a2202ca778eb5eb6119ca06e105e7dbd4a9b7))
* **app-aco:** predefined values field renderer ([#4100](https://github.com/webiny/webiny-js/issues/4100)) ([77735fa](https://github.com/webiny/webiny-js/commit/77735faf9e0636bd84947f6fb4fcaf28860d41cb))
* **app-admin-cognito:** add error prop to DefaultContent component ([#4174](https://github.com/webiny/webiny-js/issues/4174)) ([8ad56da](https://github.com/webiny/webiny-js/commit/8ad56da660739d053475d1e20c5d84d553fce295))
* **app-admin-users-cognito:** pass simple id to Autocomplete component ([d2b629d](https://github.com/webiny/webiny-js/commit/d2b629df6c032b8e88ce186c5b8a87c0174f59b4))
* **app-admin:** hide empty button container ([06d81c1](https://github.com/webiny/webiny-js/commit/06d81c13605fdac3fc9ad408c2b2f884894f0968))
* **app-apw:** use built-in decorator factories ([4bfa155](https://github.com/webiny/webiny-js/commit/4bfa1554cbc8000d77016ecea0adc56f11e28ec6))
* **app-apw:** use built-in decorator factories ([#4110](https://github.com/webiny/webiny-js/issues/4110)) ([c8ad000](https://github.com/webiny/webiny-js/commit/c8ad00009f5b0e3dfa6ced7bd8a57b9178c28899))
* **app-audit-logs:** date fields text alignment [skip ci] ([1a4f2b1](https://github.com/webiny/webiny-js/commit/1a4f2b1ac4dcd4805fc6e2596eeb8228a1d2a900))
* **app-file-manager:** improve inline file editing UX [skip ci] ([2f4ad51](https://github.com/webiny/webiny-js/commit/2f4ad51f10d9c55b7956d9e5f2fbfc0b16ff1597))
* **app-file-manager:** remove weird actions booleans ([6fd5e9c](https://github.com/webiny/webiny-js/commit/6fd5e9c6eee1aeec00eabd02ae8f85d3754b8adf))
* **app-form-builder:** use CSS var instead of hardcoded value ([ccbd520](https://github.com/webiny/webiny-js/commit/ccbd52008a65be908c6577c46daf8b98d9fc919f))
* **app-headless-cms:** always open block creation dialog [skip ci] ([32aa4e5](https://github.com/webiny/webiny-js/commit/32aa4e54fa6414a4c9be3a6639482794746958a3))
* **app-headless-cms:** ensure validation is visible with DelayedOnChange ([42f3b1c](https://github.com/webiny/webiny-js/commit/42f3b1c985d6f8317d5c1084838b43a270c79f01))
* **app-headless-cms:** fixing useParentField hook for high level parents  ([33054cf](https://github.com/webiny/webiny-js/commit/33054cf357d64b87226e2203aca1b9368b290086)), closes [#4163](https://github.com/webiny/webiny-js/issues/4163)
* **app-headless-cms:** hidden renderer must be the last one in the list ([97fca3a](https://github.com/webiny/webiny-js/commit/97fca3a7de7da1327d66d5d8b59312184a506689))
* **app-headless-cms:** improve file gallery renderer [skip ci] ([c7f9bbb](https://github.com/webiny/webiny-js/commit/c7f9bbb9494c3a4ad1dc7534f91a9e9161d1b40c))
* **app-headless-cms:** register hook decorators in editor config [skip ci] ([e07d42f](https://github.com/webiny/webiny-js/commit/e07d42fc995ebc7cb800aa7651fefb1370f511f8))
* **app-headless-cms:** remove placeholder from date time field [skip ci] ([c824797](https://github.com/webiny/webiny-js/commit/c82479761ebf125132ec4148e84776f96333d729))
* **app-headless-cms:** remove seconds from date time inputs [skip ci] ([72bdd26](https://github.com/webiny/webiny-js/commit/72bdd26becf9153e588e9ca94e4115f5a92f19c1))
* **app-headless-cms:** reuse empty validators array reference ([0780d96](https://github.com/webiny/webiny-js/commit/0780d9623a35031c8ef2827b636344ed2f4628bd))
* **app-headless-cms:** scroll form to top on URL change ([3e2ef95](https://github.com/webiny/webiny-js/commit/3e2ef95cfd346e71ceb53e57faa8ecaa01aac7ab))
* **app-headless-cms:** select the first plugin renderer ([#4121](https://github.com/webiny/webiny-js/issues/4121)) ([918aeb0](https://github.com/webiny/webiny-js/commit/918aeb05fa093abc61419adaa7e24620a6e51f93))
* **app-headless-cms:** sort renderers before picking defaults [skip ci] ([3cc545e](https://github.com/webiny/webiny-js/commit/3cc545e532c8b6fb757097ec76a67f797f424575))
* **app-headless-cms:** update invalid form field tracking [skip ci] ([bbdd960](https://github.com/webiny/webiny-js/commit/bbdd960a9de79735b922811689d3b6855db7a4f0))
* **app-headless-cms:** use empty object as fallback value ([9fa69cf](https://github.com/webiny/webiny-js/commit/9fa69cf6815b5556e496f24fa01b2a563a4b9d2c))
* **app-headless-cms:** use grid for gallery thumbnails [skip ci] ([a961aae](https://github.com/webiny/webiny-js/commit/a961aaea4d291e352029f3653c9ca4790efdfc91))
* **app-headless-cms:** use label instead of loading overlay ([32caf20](https://github.com/webiny/webiny-js/commit/32caf2009ca17ac94372af6eba56eecfa4d20cb8))
* **app-headless-cms:** use raw API for bulk actions [skip ci] ([a9012b4](https://github.com/webiny/webiny-js/commit/a9012b492bc2718fc898d099af6824590126c46d))
* **app-i18n:** reload page on locale create only ([c8964d3](https://github.com/webiny/webiny-js/commit/c8964d3252d58e30cfd9f59e355edd74f6b86c50))
* **app-page-builder:** pass pid instead of id when bulk deleting pages ([#4158](https://github.com/webiny/webiny-js/issues/4158)) ([63ad55f](https://github.com/webiny/webiny-js/commit/63ad55f2ee7a4038b541dad6ddb938b16294a0a7))
* **app-page-builder:** remove display mode width from TopBar ([bebdc62](https://github.com/webiny/webiny-js/commit/bebdc627a2c9a1a6d651a6a2eaf03506df9bb343))
* **app-page-builder:** rename toolTip to tooltip ([ed88f60](https://github.com/webiny/webiny-js/commit/ed88f60b553cd96757ffe33d578649ae8374b60c))
* **app-page-builder:** sort properties as defined in the element plugin ([d8fe238](https://github.com/webiny/webiny-js/commit/d8fe238f911219959646c2bd5863961defc68bc7))
* **app-page-builder:** use empty string as a default value [skip ci] ([c6358bb](https://github.com/webiny/webiny-js/commit/c6358bbf889ed3b7becefc6ad47c6d6c070b87a9))
* **app-page-builder:** use named export of RichVariableInput ([58245cd](https://github.com/webiny/webiny-js/commit/58245cd840e0a6ebe3538556dec80121ab7263a8))
* **app-page-builder:** use onBlur on Lexical variable input ([3912e6a](https://github.com/webiny/webiny-js/commit/3912e6ae7f46f768f826bdb0ab5968fac3f96951))
* **app-record-locking:** disable Prompt on force unlock [skip ci] ([4376273](https://github.com/webiny/webiny-js/commit/4376273836aae70ca919a225f37fcfe4140f9fc1))
* **app-record-locking:** ensure savedOn is updated on ACO cache updates ([5dc413c](https://github.com/webiny/webiny-js/commit/5dc413c38d7f4a012d79d454adff8c4595a6ae97))
* **app-record-locking:** space after user name in notification popup [skip ci] ([d31a08c](https://github.com/webiny/webiny-js/commit/d31a08c3c504eb27f13d576536d32e3bf3205fb5))
* **app-record-locking:** use context to control prompt ([#4140](https://github.com/webiny/webiny-js/issues/4140)) ([1ea4bf7](https://github.com/webiny/webiny-js/commit/1ea4bf758fc7247a8a9148f9902f48223c463552))
* **app-tenant-manager:** add graphql selection to update mutation ([4ae6672](https://github.com/webiny/webiny-js/commit/4ae667287a2ae058ba839dbbfbea50fb49179d9d))
* **app-trash-bin:** move TrashBinConfigs to higher level ([4746eff](https://github.com/webiny/webiny-js/commit/4746eff6f2a318c1b627f7ca9cd82eb4da5a1827))
* **app-trash-bin:** various fixes and improvements ([#4088](https://github.com/webiny/webiny-js/issues/4088)) ([cafef9a](https://github.com/webiny/webiny-js/commit/cafef9a21cb17a9a21f0d90bb598d8cc26f22109))
* **app-websockets:** reconnect on window focus [skip ci] ([#4142](https://github.com/webiny/webiny-js/issues/4142)) ([49e5151](https://github.com/webiny/webiny-js/commit/49e5151842a347f207639ea3ac51c5d71484cf68))
* assign font-family ([543795f](https://github.com/webiny/webiny-js/commit/543795f8c75d9388c5b62e5fcacabccb656b761a))
* assign font-family ([3995d83](https://github.com/webiny/webiny-js/commit/3995d833de5628b01efdeebd1234e1fa47891fae))
* **aws-layers:** publish latest sharp layer ([c08e961](https://github.com/webiny/webiny-js/commit/c08e96154e5ba9f2db8ca9172fd5dbeef454c191))
* **aws-layers:** publish sharp and chromium layers to ap-east-1 region ([e5745cb](https://github.com/webiny/webiny-js/commit/e5745cb431a7991cdbc3686f470cbff4824cafc1))
* break toolbar items into multiple lines when needed ([#4133](https://github.com/webiny/webiny-js/issues/4133)) ([4c12d12](https://github.com/webiny/webiny-js/commit/4c12d12610b87a432b04636d8576a111a0de5104))
* **cli-plugin-deploy-pulumi:** remove deprecated watch output modes ([82fddc9](https://github.com/webiny/webiny-js/commit/82fddc9328d04e0da2fc2cac05a3fd0eed73859c))
* **cli-plugin-deploy-pulumi:** specify explicit file types for replacements ([87c297c](https://github.com/webiny/webiny-js/commit/87c297c7a29fb5d92d99611f19f243015a7418a8))
* **cli-plugin-deploy-pulumi:** update config resolution logic ([ced7982](https://github.com/webiny/webiny-js/commit/ced798283f2a38467694ae83ce206d374bc73518))
* **cli-plugin-scaffold-ci:** update octokit dependency ([545fe51](https://github.com/webiny/webiny-js/commit/545fe51aba0b2424c13bc5577939c15e350bea46))
* **cli-plugin-workspaces:** remove random-color dependency [skip ci] ([e7c93a9](https://github.com/webiny/webiny-js/commit/e7c93a9660ef9c884e0eedc9664955b35778a568))
* create src folder in extensions/themes ([#4135](https://github.com/webiny/webiny-js/issues/4135)) ([a2f55ac](https://github.com/webiny/webiny-js/commit/a2f55acbcc56452182feec50ec841f295827f04f))
* **cwp-template-aws:** exclude yarn patches from gitignore ([dbfbc15](https://github.com/webiny/webiny-js/commit/dbfbc15ca229b89288583c87cea80aa0cd0a9709))
* **cwp-template-aws:** hide unsupported layer ([fb85cd1](https://github.com/webiny/webiny-js/commit/fb85cd122fe00958ad33b1290bcb544ad1125659))
* **db-dynamodb:** exclude falsy values from search [skip ci] ([7aec821](https://github.com/webiny/webiny-js/commit/7aec82186a2d6b7f0be3e488938c8c36294616fc))
* dependabot issues for 2024/03/12 ([#3988](https://github.com/webiny/webiny-js/issues/3988)) ([423eae6](https://github.com/webiny/webiny-js/commit/423eae61c4f610fb273ccfc0f685c3e022725b23))
* ensure PB elements have stable element IDs ([#3977](https://github.com/webiny/webiny-js/issues/3977)) ([9d19474](https://github.com/webiny/webiny-js/commit/9d19474e3771fd07c77d9b0d486d753ec64ab1c3))
* fixing code style according to PR feedback ([fae4b6b](https://github.com/webiny/webiny-js/commit/fae4b6bcacad4bb7656faa84e553f9e75c0e5f16)), closes [#4109](https://github.com/webiny/webiny-js/issues/4109)
* **form:** initialize form on first render [skip ci] ([0b8a356](https://github.com/webiny/webiny-js/commit/0b8a3561c97224de9cd57828bead7b5426ec4af1))
* **form:** optimize fields registration ([3a673db](https://github.com/webiny/webiny-js/commit/3a673dbfe40ed4d84d326b047865c7ff72c9e193))
* **form:** refactor to use FTA ([#4122](https://github.com/webiny/webiny-js/issues/4122)) ([8cd450f](https://github.com/webiny/webiny-js/commit/8cd450f049d26da40b172163bbe81010d5ef2ca3))
* **form:** reset form fields when new data is set ([5046357](https://github.com/webiny/webiny-js/commit/5046357354644152d471cf512c02537399550804))
* **form:** set defaultValue in action [skip ci] ([c921777](https://github.com/webiny/webiny-js/commit/c921777cbb9cd922323fde135544feca7c6b0c31))
* **form:** set field values synchronously [skip ci] ([c977398](https://github.com/webiny/webiny-js/commit/c977398a3449db4522214e19dd63f21ae322a02d))
* **form:** store form callbacks to ref [skip ci] ([e750e80](https://github.com/webiny/webiny-js/commit/e750e8077887ab49eb80f3a9ab81dd7589bc4875))
* **handler-graphql:** add generics to processRequestBody [skip ci] ([59ebecf](https://github.com/webiny/webiny-js/commit/59ebecf227d7278eaec59066cddeceaf3979601e))
* ignore FLPs when identity type is other than `admin` ([c62a178](https://github.com/webiny/webiny-js/commit/c62a1785f746a67b9262f0e8969eaba4488d3398))
* ignore project-utils when building a dependency graph ([81b2ee2](https://github.com/webiny/webiny-js/commit/81b2ee2ab24c75403592dc6d4ee4c49dec4b193c))
* improve component memoization and chains of hooks ([fffe7a6](https://github.com/webiny/webiny-js/commit/fffe7a6bf7e64e890303c407fe087a4390ea1807))
* improve developer tools ([#4119](https://github.com/webiny/webiny-js/issues/4119)) ([e803c06](https://github.com/webiny/webiny-js/commit/e803c0601b3b7dee799c8bb4e84deef9a54cab38))
* infer component props in makeDecoratable ([eff32b4](https://github.com/webiny/webiny-js/commit/eff32b45174bc02f60c1a10c1e7c1ad5087892db))
* insert React component instead of factory function call ([#4132](https://github.com/webiny/webiny-js/issues/4132)) ([f66a22e](https://github.com/webiny/webiny-js/commit/f66a22eeebb13926009045a88b2ef1f5de1c1208))
* **lexical-editor:** hide floating toolbar on blur [skip ci] ([e84baf8](https://github.com/webiny/webiny-js/commit/e84baf8354af76eeec6f2b93d8a45dc9185ecf23))
* **lexical-editor:** improve link popup ([#4098](https://github.com/webiny/webiny-js/issues/4098)) ([f4d6356](https://github.com/webiny/webiny-js/commit/f4d6356685fc79a491e9ec83c13553042442084b))
* **lexical-editor:** replace hardcoded values with CSS vars ([aada09b](https://github.com/webiny/webiny-js/commit/aada09b2f8ae02d653f7209e03f48fece136721b))
* **lexical-editor:** show link toolbar only on user interaction [skip ci] ([3d7784a](https://github.com/webiny/webiny-js/commit/3d7784aaf809943ecf1038e3d7128f59ba2eb62d))
* lock lexical version ([be9e1e7](https://github.com/webiny/webiny-js/commit/be9e1e7a4ad5356f3ea06c227da3e854c690cc31))
* log ES index creation error [skip ci] ([ca6908e](https://github.com/webiny/webiny-js/commit/ca6908e2da1da82b3cc471c2c5d7102caf60f1cf))
* **migrations:** filter batches after promise is resolved ([90f428f](https://github.com/webiny/webiny-js/commit/90f428f40064e91ddd9a3493d50a49455ab18d3b))
* **project-utils:** override workspace references during webpack TS check [skip ci] ([b937697](https://github.com/webiny/webiny-js/commit/b937697012f13556e64dbee83265126f206342bb))
* **project-utils:** update deprecated webpackDevServer method [skip ci] ([96f7d00](https://github.com/webiny/webiny-js/commit/96f7d00befd970b9d02d9ef27ca4984a62486080))
* **pulumi-aws:** remove development logging ([b840333](https://github.com/webiny/webiny-js/commit/b84033384def67a99b968f46b31877d91708585a))
* react 18 various issues ([#4114](https://github.com/webiny/webiny-js/issues/4114)) ([4f42a23](https://github.com/webiny/webiny-js/commit/4f42a2329b99e6c033789846f1c2ffab001942d8))
* **react-composition:** infer hook return type [skip ci] ([48f1334](https://github.com/webiny/webiny-js/commit/48f1334c0c7b27690dfd2e318b3c419795d3aa68))
* **react-composition:** remove unused generic ([72690f4](https://github.com/webiny/webiny-js/commit/72690f495c8f4e2db8a5841846b780dccb1a2549))
* remove API GW deployment resource ([fa56f2a](https://github.com/webiny/webiny-js/commit/fa56f2ad22fc2378fcd95f6214d52b9454762e59))
* remove commitizen and cz-adapter [skip ci] ([0384613](https://github.com/webiny/webiny-js/commit/0384613c9b6e2d4fbce6119344519a1905615350))
* remove deprecated code ([#4051](https://github.com/webiny/webiny-js/issues/4051)) ([ce96374](https://github.com/webiny/webiny-js/commit/ce963743681daaa58438d51ec6670f286ffaff0b))
* remove duplicate identifier ([94337e1](https://github.com/webiny/webiny-js/commit/94337e12720fdb1b24697425541221b2b9161bed))
* remove unused dependency and update tests ([7e364f3](https://github.com/webiny/webiny-js/commit/7e364f3a13b1c03cfe3ddcb1dff8065bed267bfc))
* replace babel-plugin-emotion with @emotion/babel-plugin ([59165fa](https://github.com/webiny/webiny-js/commit/59165fa7b085fc06b4d6886fa7022766746ecc94))
* return default object from `item` callback ([9e0cd9d](https://github.com/webiny/webiny-js/commit/9e0cd9d41d4c1f28dd1c911c81ce2863d8f92b62))
* **tasks:** console log errors by default [skip ci] ([#4165](https://github.com/webiny/webiny-js/issues/4165)) ([83cba97](https://github.com/webiny/webiny-js/commit/83cba97f10036a748a2f55eb33d217b6706401c9))
* **ui:** checkboxes and input missing id ([22cbf86](https://github.com/webiny/webiny-js/commit/22cbf86a0a0a7bf94a3aa34c37ff1f411de7509d))
* **ui:** convert cell values to string for rendering ([44eadc5](https://github.com/webiny/webiny-js/commit/44eadc5f3e61bae233daf946060be41b223449d1))
* **ui:** don't call onChange on first mount ([4970a5a](https://github.com/webiny/webiny-js/commit/4970a5a1f873f615f51d48ce4f5e12dc7e553626))
* **ui:** fix trailing icon padding on textarea ([#4141](https://github.com/webiny/webiny-js/issues/4141)) ([71c3560](https://github.com/webiny/webiny-js/commit/71c35604aeeca2154501f6617d5696736ac62784))
* **ui:** import named components ([30f3e83](https://github.com/webiny/webiny-js/commit/30f3e83434cb499209520c0300291a1d7da3ac30))
* **ui:** set Select label and placeholder values based on size prop ([#4150](https://github.com/webiny/webiny-js/issues/4150)) ([cfea639](https://github.com/webiny/webiny-js/commit/cfea639d9f9d326d9f005ace59288c156c52f6e8))
* **ui:** update DelayedOnChange to reflect changes in Form ([ecdb65d](https://github.com/webiny/webiny-js/commit/ecdb65d967bcd600dbfa6c3a3d76f6967caf5d8e))
* **ui:** various RMWC and styles fixes ([#4113](https://github.com/webiny/webiny-js/issues/4113)) ([12ada41](https://github.com/webiny/webiny-js/commit/12ada41fbc6e431370db2c3c6766996a7bed8e3a))
* **ui:** visibility box title ([4ae4eb4](https://github.com/webiny/webiny-js/commit/4ae4eb4ef9d419bdd99358c6f6245fc3fe625f99))
* update css related dependencies ([82ee9e6](https://github.com/webiny/webiny-js/commit/82ee9e695c1ffaf62b803e9a45c659b3a3c9a442))
* update jsdom to fix tough-cookie security issue [skip ci] ([27d2bff](https://github.com/webiny/webiny-js/commit/27d2bff8db4ffa93838277cad38762ccbf62239f))
* update packages from dependabot alerts ([#4126](https://github.com/webiny/webiny-js/issues/4126)) ([de02750](https://github.com/webiny/webiny-js/commit/de027503ccff167839a15651b69c247d624cc171))
* update resolve-url-loader [skip ci] ([aa0ba09](https://github.com/webiny/webiny-js/commit/aa0ba092e1ddac28c02fff19e7e67a074d811e5f))
* use `state` property instead of the deprecated `isEnabled` ([a51231b](https://github.com/webiny/webiny-js/commit/a51231b22f42ee79ae0ca5fdcdbd18b25041acc5))
* use DDB Document client when running queries ([afb1101](https://github.com/webiny/webiny-js/commit/afb110103e7d629d6efbbf88b0718c9206d47432))
* use lower react version ([#4118](https://github.com/webiny/webiny-js/issues/4118)) ([7cd60c5](https://github.com/webiny/webiny-js/commit/7cd60c5ef0946efe2722b47647328eba5ae54d8d))
* use the new error format when checking if an error is graceful ([e6ce53a](https://github.com/webiny/webiny-js/commit/e6ce53a387a9b1ab39aa8d15e4ed9be2359f17aa))
* various fixes ([#4129](https://github.com/webiny/webiny-js/issues/4129)) ([f62bf15](https://github.com/webiny/webiny-js/commit/f62bf15a2f961574fc34a38a0b0002eac7eb7a72))
* various RMWC tweaks  ([#4117](https://github.com/webiny/webiny-js/issues/4117)) ([03b917f](https://github.com/webiny/webiny-js/commit/03b917f474c9a5ab19b6bc5022d36a5e529ae210))


### Features

* add `env` to `pulumi` function args list ([97fed18](https://github.com/webiny/webiny-js/commit/97fed18693a5b36e5c2dade28ed21aa08ee42985))
* add record-locking feature to WCP license ([#4073](https://github.com/webiny/webiny-js/issues/4073)) ([7f3380f](https://github.com/webiny/webiny-js/commit/7f3380fdd3ef05430508c62660349c8533c010fc))
* **api-headless-cms:** add content entry traverser ([#4072](https://github.com/webiny/webiny-js/issues/4072)) ([5b01770](https://github.com/webiny/webiny-js/commit/5b01770aff025cf0305cd392f59b49486a9688b1))
* **api-headless-cms:** add crud operation to move entry to bin ([#3976](https://github.com/webiny/webiny-js/issues/3976)) ([65cde0a](https://github.com/webiny/webiny-js/commit/65cde0a9afb2a7808ceccfa14812bdb245c9ecb6))
* **api-headless-cms:** add crud operation to restore entry from trash bin ([#4064](https://github.com/webiny/webiny-js/issues/4064)) ([705277f](https://github.com/webiny/webiny-js/commit/705277f7629b60c5960641646ffc16ccf1743bba))
* **api-headless-cms:** add getExecutableSchema utility ([a7220b5](https://github.com/webiny/webiny-js/commit/a7220b55e3377f01b4cebffe05d6964509b1c36c))
* **api-headless-cms:** empty HCMS trash bin via cron job ([#4085](https://github.com/webiny/webiny-js/issues/4085)) ([6ae9e85](https://github.com/webiny/webiny-js/commit/6ae9e85f976fbe3047c2354d10bf0de2e574a98e))
* **api-headless-cms:** expose a RichTextRenderer utility ([04482b6](https://github.com/webiny/webiny-js/commit/04482b686c63fdadebd4c6c1db7595af1140cfc7))
* **api-headless-cms:** make usePermission hook decoratable ([26c54ad](https://github.com/webiny/webiny-js/commit/26c54ad2e91a7061d30239eed49b61fa68307706))
* **api-serverless-cms:** add InstallTenant use case ([fcb1350](https://github.com/webiny/webiny-js/commit/fcb13507ef81e47edaaff7ae6ed643e7db0cb685))
* **api-websocket:** add security to graphql layer ([#3974](https://github.com/webiny/webiny-js/issues/3974)) ([7ae6cec](https://github.com/webiny/webiny-js/commit/7ae6cecebac90b246214b65ac8e26e584bff3c72))
* **app-aco:** make useRecords hook decoratable ([fbe13c0](https://github.com/webiny/webiny-js/commit/fbe13c071185db565344f578c4cb6db628878e83))
* **app-aco:** support reference field in advanced search filter ([#3783](https://github.com/webiny/webiny-js/issues/3783)) ([0e0841f](https://github.com/webiny/webiny-js/commit/0e0841f4a4790c64906ef872a25fd7806aaab93b))
* **app-admin:** register version as a menu item ([5a18397](https://github.com/webiny/webiny-js/commit/5a18397319c5efcc6aef3581718b0f33619f0978))
* **app-file-manager:** add file thumbnail and action config ([412cfd6](https://github.com/webiny/webiny-js/commit/412cfd6d5214c346fdfcdfa9cb3a634d8feb2b3f))
* **app-headless-cms:** add ref field settings ([ccab286](https://github.com/webiny/webiny-js/commit/ccab286e72a1556cf396eda6954422b9b1202d13))
* **app-headless-cms:** add tags renderer for multi-value text field ([bae6903](https://github.com/webiny/webiny-js/commit/bae690330fe565bee35027e9bc93914769848fec))
* **app-headless-cms:** create bind component on field config change ([#4086](https://github.com/webiny/webiny-js/issues/4086)) ([cc06068](https://github.com/webiny/webiny-js/commit/cc0606819d1e700c2b8fc5225a6d79e5c39f80ca))
* **app-headless-cms:** make onClone prop accept the value being cloned ([97c7927](https://github.com/webiny/webiny-js/commit/97c7927d6d40f68d6c28f208b46e2f3371b2551e))
* **app-headless-cms:** optimize form responsiveness using DelayedOnChange ([ebe052b](https://github.com/webiny/webiny-js/commit/ebe052bca5961befe716457ada60810f0860d477))
* **app-page-builder:** add debug utilities ([9a677ac](https://github.com/webiny/webiny-js/commit/9a677ac4fda5be7cb3165a207aba9622532d6029))
* **app-page-builder:** add duplicate page list and bulk action ([#3876](https://github.com/webiny/webiny-js/issues/3876)) ([52030fe](https://github.com/webiny/webiny-js/commit/52030fe0dcbc94861df1392ea61e874d26378128))
* **app-page-builder:** add ElementActions component ([4a7c074](https://github.com/webiny/webiny-js/commit/4a7c0742da9f598c233878994fe44f5132ec5570))
* **app-page-builder:** make website settings view configurable ([#4145](https://github.com/webiny/webiny-js/issues/4145)) ([c11112d](https://github.com/webiny/webiny-js/commit/c11112d72f2be18e03e3f810434dcf66226ea799))
* **app-security:** add idToken provider ([#4168](https://github.com/webiny/webiny-js/issues/4168)) ([71e514d](https://github.com/webiny/webiny-js/commit/71e514da32e19ec64872f2150c1633a1c03130a9))
* **app-trash-bin:** add trash bin to app-headless-cms ([#4059](https://github.com/webiny/webiny-js/issues/4059)) ([517c703](https://github.com/webiny/webiny-js/commit/517c70304c6a581f281a08a855fddf36cfa7f620))
* **app-website:** support user-defined wildcard route [skip ci] ([a0f0219](https://github.com/webiny/webiny-js/commit/a0f0219a1e4c78b3433c840423db9362abaab365))
* **cli-plugin-scaffold-extensions:** add link-extensions command ([aa8dbfb](https://github.com/webiny/webiny-js/commit/aa8dbfbbd5ad13ec271adba6f2431e02991a300f))
* **cli-plugin-scaffold:** add keywords property to type ([8c7f12e](https://github.com/webiny/webiny-js/commit/8c7f12e86285324d504dee0177e96807da2bb9f0))
* create "Empty Workspace" Scaffold ([#4172](https://github.com/webiny/webiny-js/issues/4172)) ([20d45ed](https://github.com/webiny/webiny-js/commit/20d45edc72656cc7f8d7cad28b105a8b64884736))
* **cwp-template-aws:** add locking mechanism into plugins list ([#4105](https://github.com/webiny/webiny-js/issues/4105)) ([4753668](https://github.com/webiny/webiny-js/commit/475366823312cac1d3e0830b7b5543c057afde79))
* **data-migration:** add support for migration skipping [skip ci] ([567f334](https://github.com/webiny/webiny-js/commit/567f334d512e91d1af54e5e1d18458428bad7083))
* expand object & DZ fields via renderer settings ([b2ce354](https://github.com/webiny/webiny-js/commit/b2ce3540f616f03a840f01014ba9bada039aa2c5)), closes [#4109](https://github.com/webiny/webiny-js/issues/4109)
* **form:** make useBind hook decoratable ([f1506aa](https://github.com/webiny/webiny-js/commit/f1506aa646adb789bfaee069a3de3a29283c1051))
* **handler-graphql:** expose createGraphQLSchemaPlugin factory ([cf397c5](https://github.com/webiny/webiny-js/commit/cf397c553e025941cdb2ef2d410dced368351786))
* improve Webiny / `create-webiny-project` CLIs ([#4045](https://github.com/webiny/webiny-js/issues/4045)) ([16b0da1](https://github.com/webiny/webiny-js/commit/16b0da12a444ff3c3a4e89baabbdd249f6cc52fb))
* introduce `createCmsModelPlugin` and `createCmsGroupPlugin` ([#4089](https://github.com/webiny/webiny-js/issues/4089)) ([d68658b](https://github.com/webiny/webiny-js/commit/d68658ba6f521987161d33bd1deb5b305866064d))
* introduce the `extensions` Folder and the `New Extension` Scaffold ([#4111](https://github.com/webiny/webiny-js/issues/4111)) ([0846888](https://github.com/webiny/webiny-js/commit/08468888f8b37ea315d60cd02d31bbd4faab5831))
* **lexical-editor:** add support for link alt attribute ([4935d18](https://github.com/webiny/webiny-js/commit/4935d1851f799035e69163eb16e963dc0e8fb442))
* locking mechanism ([#4065](https://github.com/webiny/webiny-js/issues/4065)) ([d35a4ea](https://github.com/webiny/webiny-js/commit/d35a4ea8a72fdda1ca6b2983db75992319fcba3b))
* **migrations:** add block element ids migration ([86d4dad](https://github.com/webiny/webiny-js/commit/86d4dad16e81af98a7e54a7baf28fec7da12e753))
* **react-composition:** restore decoratable hooks ([5607607](https://github.com/webiny/webiny-js/commit/56076073823165dbaba8efea0cdbacdcaa75ba86))
* **react-router:** make Route decoratable [skip ci] ([517203d](https://github.com/webiny/webiny-js/commit/517203d45f3e8573363768ed82b41cb991992ce6))
* update to react 18 ([#3771](https://github.com/webiny/webiny-js/issues/3771)) ([1d1b872](https://github.com/webiny/webiny-js/commit/1d1b8721f4e0e230b4e0f261144b31850b9183b1))
* upgrade Pulumi to v6 ([#4096](https://github.com/webiny/webiny-js/issues/4096)) ([75272e7](https://github.com/webiny/webiny-js/commit/75272e7052b0a78e07e2527eb4593785d8fac442))
* various improvements and features ([1f6cf69](https://github.com/webiny/webiny-js/commit/1f6cf691b9f060c00f0054e3caf477a1005eb274))
* websockets ([#3877](https://github.com/webiny/webiny-js/issues/3877)) ([700e820](https://github.com/webiny/webiny-js/commit/700e8208c12740cb39469b123513e2792647735c))