v5.40.6

webiny/webiny-jsv5.40.6Sep 27, 2024by adrians5j

AI Summary

A comprehensive release containing numerous bug fixes, form refactoring, trash bin functionality, and UI improvements.

Key Highlights

  • Refactored form to use FTA (Form Traversal API).
  • Added Headless CMS trash bin functionality.
  • Added file thumbnail and action config to File Manager.
  • Introduced extensions folder and upgraded Pulumi to v6.

New Features

  • Add record-locking feature
  • Add content entry traverser
  • Add crud operation to move/restore entry
  • Add getExecutableSchema utility
  • Add ref field settings
  • Add tags renderer
  • Add trash bin to app-headless-cms
  • Introduce extensions folder
  • Update to React 18
  • Upgrade Pulumi to v6

Full Release Notes

## [5.40.5](https://github.com/webiny/webiny-js/compare/v5.40.5...v5.40.6) (2024-08-19)


### Bug Fixes

* **api-file-manager-s3:** set presigned URLs to expire after 1 hour ([a034764](https://github.com/webiny/webiny-js/commit/a0347647531ebd1f1bda6013c965e819126a5f1a))
* **app-headless-cms:** update context state after entry creation ([4913644](https://github.com/webiny/webiny-js/commit/49136449ebcda62dfcd407492af1e33109cd7584))
* **app-page-builder:** use the improved DelayedOnChange types ([65870e6](https://github.com/webiny/webiny-js/commit/65870e673867fce5f105a97d09a437aa51cab817))
* direct download of extensions ([#4206](https://github.com/webiny/webiny-js/issues/4206)) ([f677787](https://github.com/webiny/webiny-js/commit/f67778732392ed88f28da869ddacbf08a98cdec6))
* ensure folders cannot be deleted if they contain content (including inaccessible content) ([#4191](https://github.com/webiny/webiny-js/issues/4191)) ([1d3b0e7](https://github.com/webiny/webiny-js/commit/1d3b0e76f653247292ae6434281ab06121a95df2))
* **form:** add data-pristine DOM attribute ([829048c](https://github.com/webiny/webiny-js/commit/829048c9d399ee5ba3a201844c63b8da47827cf3))
* **lexical-editor-pb-element:** allow undefined to be passed as value ([5dc8005](https://github.com/webiny/webiny-js/commit/5dc8005b7e12e352bd938a8ad72a09ef11a6d1cf))
* **lexical-editor:** normalize input value and improve onChange execution ([0cd8b63](https://github.com/webiny/webiny-js/commit/0cd8b63c6d955939cb426c405df82577771478ca))
* new watch command - introduce payload compression ([#4224](https://github.com/webiny/webiny-js/issues/4224)) ([972651c](https://github.com/webiny/webiny-js/commit/972651cd39cf147831fa02a65499dfbd991b7818))
* **ui:** improve DelayedOnChange component ([f39a334](https://github.com/webiny/webiny-js/commit/f39a334b01e9d176434ac4f512cc60026dbc8759))
* update Pulumi package versions ([#4216](https://github.com/webiny/webiny-js/issues/4216)) ([7f9bbf7](https://github.com/webiny/webiny-js/commit/7f9bbf7b4797902c9f4fcb2a698025639d8d3eca))



## [5.40.4](https://github.com/webiny/webiny-js/compare/v5.40.5...v5.40.6) (2024-08-02)


### Bug Fixes

* **api-file-manager:** improve handling of cache-control headers ([5795b78](https://github.com/webiny/webiny-js/commit/5795b78c0b0e8be7b96a1f459025af523c6b2ab4))
* **app-headless-cms:** do not set dirty model unless it changed ([#4207](https://github.com/webiny/webiny-js/issues/4207)) ([4a16b87](https://github.com/webiny/webiny-js/commit/4a16b8724abd9e53514fc7bcbbbeedfb26e39706))
* **app-headless-cms:** ensure trash bin is empty before deleting content model ([#4212](https://github.com/webiny/webiny-js/issues/4212)) ([1be8d8c](https://github.com/webiny/webiny-js/commit/1be8d8c3ebb404e7582ee9b426d8ec870afb5b99))
* **app-headless-cms:** improve tracking of changes in the ContentEntryForm ([4dcffa5](https://github.com/webiny/webiny-js/commit/4dcffa5008416dd9056bb4b360ed8b5fc756a867))
* **app-headless-cms:** pass default value to nested multiple values ([#4211](https://github.com/webiny/webiny-js/issues/4211)) ([badd76f](https://github.com/webiny/webiny-js/commit/badd76fa879c24b1e676e02d25cc9fec5b568b52))
* **app-headless-cms:** pass placeholder to select field renderer ([#4209](https://github.com/webiny/webiny-js/issues/4209)) ([b638f0d](https://github.com/webiny/webiny-js/commit/b638f0dc7f04cbb433f416de7a224a52e4eb4d70))
* **form:** track whether the form is in its original state ([244b8a9](https://github.com/webiny/webiny-js/commit/244b8a9a7aefc2eac06155e3a69db7649aff3907))
* **lexical-editor:** optimize editor state update and onChange execution ([e739428](https://github.com/webiny/webiny-js/commit/e739428a01a5af222626845a2bdc91a24389acd5))
* **lexical-editor:** update lexical deps to 0.16.1 ([b773167](https://github.com/webiny/webiny-js/commit/b7731674a7da670a54ffc0dfbc2ffddb1d17f470))
* **project-utils:** force webpack to use the CJS build of Lexical ([4525f46](https://github.com/webiny/webiny-js/commit/4525f46683cf30f443e002e3eb6c47d9290047c0))
* **ui:** optimize DelayedOnChange state updates ([e91d02a](https://github.com/webiny/webiny-js/commit/e91d02a373a1d0c8d725940867f4a992b0aae346))



## [5.40.3](https://github.com/webiny/webiny-js/compare/v5.40.5...v5.40.6) (2024-07-23)


### Bug Fixes

* add default and active CSS class to tab labels ([53f2895](https://github.com/webiny/webiny-js/commit/53f2895c9476ac1dd23265f3ddb86fa159a7e713))
* **api-headless-cms:** gracefully fall back to applicable fields ([#4203](https://github.com/webiny/webiny-js/issues/4203)) ([fb1a87e](https://github.com/webiny/webiny-js/commit/fb1a87e8ba4bc9549361e5a4e8b1c67f50deef31))
* **api-headless-cms:** update reserved field ids ([5d0f987](https://github.com/webiny/webiny-js/commit/5d0f987f2b140c0383330ece647f3eb8637156ff))
* **app-admin:** only show images in Lexical File Manager [skip ci] ([56df774](https://github.com/webiny/webiny-js/commit/56df77476f6affc2f9fbe470e8697d8a9876da09))
* **app-cognito-authenticator:** remove info log that scares people [skip ci] ([d0e9315](https://github.com/webiny/webiny-js/commit/d0e93152aa50126e45f99227e4fd141ec0751856))
* **app-file-manager:** use type_startsWith for asset filtering ([60e8e8f](https://github.com/webiny/webiny-js/commit/60e8e8f2f7a07e54986f7b4f6085e168f2ec1f12))
* **app-headless-cms:** use the passed entry object [skip ci] ([3dafa75](https://github.com/webiny/webiny-js/commit/3dafa751da284c267873775a7e11e95f8ea16862))
* **app-page-builder:** generate unique property id for query selections ([f818ee1](https://github.com/webiny/webiny-js/commit/f818ee137ba6ae341382ea124a8a5809d755c0f7))
* **cli-plugin-scaffold-extensions:** generate valid component name ([067528f](https://github.com/webiny/webiny-js/commit/067528f0a01f3791beb8bf4f15b21481cd326c43))
* **form:** convert observable objects to raw JS objects ([1c02a0b](https://github.com/webiny/webiny-js/commit/1c02a0bed790503b856a564960fd873356a98cdc))
* intercept react-butterfiles and use a patched implementation ([deb698c](https://github.com/webiny/webiny-js/commit/deb698c829c8633fd9abdab70cd61ad42387eef7))
* **lexical-editor:** call onChange with a small timeout ([bcac0a9](https://github.com/webiny/webiny-js/commit/bcac0a9e502a0dd3b1ff58663877e18a7a1f973a))
* **lexical-editor:** relax file to node conversion checks ([8347c16](https://github.com/webiny/webiny-js/commit/8347c16fdfe4bd8bcc1f36c7d3bf2eeedfdd04df))
* **lexical-editor:** use named import of LexicalErrorBoundary ([238b222](https://github.com/webiny/webiny-js/commit/238b2220d0408d985cc2f587dc000c97cd16d1b4))
* **react-properties:** add config debugging utility ([eedb11e](https://github.com/webiny/webiny-js/commit/eedb11e08c02fd8543e4668a619b7a26e68ec748))



## [5.40.2](https://github.com/webiny/webiny-js/compare/v5.40.5...v5.40.6) (2024-07-13)


### Bug Fixes

* **api-file-manager-s3:** keep file metadata when applying transformations [skip ci] ([668d4d7](https://github.com/webiny/webiny-js/commit/668d4d7159752da839658759c9f26b603c3e2a33))
* **api-file-manager-s3:** use withoutEnlargement when resizing images ([0b8430c](https://github.com/webiny/webiny-js/commit/0b8430c090e61d4487d33b70bacecfa489aeb155))
* **api-headless-cms:** normalize graphql input and improve traverser ([#4196](https://github.com/webiny/webiny-js/issues/4196)) ([c074bca](https://github.com/webiny/webiny-js/commit/c074bca5e1b1ce491ee36598d74d44f9ac95cc1b))
* **api-headless-cms:** skip invalid DZ values instead of throwing ([#4202](https://github.com/webiny/webiny-js/issues/4202)) ([cf2c192](https://github.com/webiny/webiny-js/commit/cf2c1929dbb2f75bc25ed37ea9b411acd2409f6f))
* **api-headless-cms:** validate model import ([#4194](https://github.com/webiny/webiny-js/issues/4194)) ([f98670e](https://github.com/webiny/webiny-js/commit/f98670e92e0da63f58bca76bf52bbcfa8a2154d9))
* **api-page-builder:** replace rimraf with fs.unlink ([81ce22d](https://github.com/webiny/webiny-js/commit/81ce22d4e57b46cb421ff9d33497e729bdab46d6))
* **api-page-builder:** use fs.remove when deleting files and folders ([e741f10](https://github.com/webiny/webiny-js/commit/e741f101a279a3a5b6fe1dd171cb6dce0e855ef0))
* **app-admin:** allow users to adjust the SplitView columns width across all apps  ([#4179](https://github.com/webiny/webiny-js/issues/4179)) ([96c20e2](https://github.com/webiny/webiny-js/commit/96c20e215aa9b7276dfb47f73ffb1c51852ab93d))
* **app-file-manager:** fix file labels appearance ([dd472b4](https://github.com/webiny/webiny-js/commit/dd472b4caa5612274b945879352537425b7eff12))
* **app-file-manager:** fix upload status positioning ([fff3e2f](https://github.com/webiny/webiny-js/commit/fff3e2f7d966480a2b10e005e5526cf4861ccfb9))
* **app-headless-cms:** set default value from predefined values ([#4201](https://github.com/webiny/webiny-js/issues/4201)) ([aa73c49](https://github.com/webiny/webiny-js/commit/aa73c4905b213611efa69993b7c0252141319521))
* bring back `cli-` prefix in event names ([cd1c4dd](https://github.com/webiny/webiny-js/commit/cd1c4ddae2613d9a6c39483c1c0e51b0af8c9c7f))
* **cli-plugin-scaffold-extensions:** ignore node_modules when detecting workspaces ([3338926](https://github.com/webiny/webiny-js/commit/33389266ab1972f4221d5d95b105292f6ce84662))
* ensure published records are updated accordingly ([#4180](https://github.com/webiny/webiny-js/issues/4180)) ([251da99](https://github.com/webiny/webiny-js/commit/251da997aad4e2e23fea563044d7c20fb05b4316))
* **form:** register field in the current animation frame ([3f7bb94](https://github.com/webiny/webiny-js/commit/3f7bb941ce0bd72cfe371a8d1309968e49bb6e49))
* improve Windows support when building functions / packages ([#4182](https://github.com/webiny/webiny-js/issues/4182)) ([bd89ca2](https://github.com/webiny/webiny-js/commit/bd89ca292f812166280dc849ad59fe383408cefb))
* include original error via `cause` ([2b8563d](https://github.com/webiny/webiny-js/commit/2b8563d962a3e87ce47d3731c9130103a1db65dd))
* increase lambda memory size ([#4197](https://github.com/webiny/webiny-js/issues/4197)) ([66d7e64](https://github.com/webiny/webiny-js/commit/66d7e64d3d83ecf0f206ee155ea29f922c39b277))
* integrate local AWS Lambda development into `dev` ([#4200](https://github.com/webiny/webiny-js/issues/4200)) ([a1f4239](https://github.com/webiny/webiny-js/commit/a1f4239d4202c2980f674855044b9f5ae5d930da))
* **lexical-converter:** remove redundant text node normalization ([d2aa570](https://github.com/webiny/webiny-js/commit/d2aa570d0ccb4d94782cef5224854fddcdd13aa4))
* **lexical-nodes:** add @types/prismjs dependency ([98cffc8](https://github.com/webiny/webiny-js/commit/98cffc845ed892d3b37e70fb7ed2a79e68b01fb0))
* **lexical-nodes:** ignore @types/prismjs ([ca7f509](https://github.com/webiny/webiny-js/commit/ca7f509c3849d6e55a461fbb2ca3a0697c561f9c))
* **lexical-nodes:** remove unused methods from interface ([26b274b](https://github.com/webiny/webiny-js/commit/26b274b0d061aa12bc31791c04cebe28558cbba4))
* **lexical:** color picker active state styling ([9275cf7](https://github.com/webiny/webiny-js/commit/9275cf7117a8c7cb10f9b8259ac2fe66d255b10c))
* **lexical:** hide transparent color and alpha slider ([2363220](https://github.com/webiny/webiny-js/commit/2363220fb8eeb7281a170803eadfbf127d04a224))
* **lexical:** implement splitText on FontColorNode ([67615b1](https://github.com/webiny/webiny-js/commit/67615b19a9705348d68f6b672c2dec8cb9fc87cf))
* **lexical:** show toolbar on link nodes ([b6e515a](https://github.com/webiny/webiny-js/commit/b6e515a4a470fc353f1ff4545e8860c13f372767))
* **lexical:** styled the color picker actions component ([f29f9c2](https://github.com/webiny/webiny-js/commit/f29f9c2bc8e12d50bfb65869474758cd9ba4c562))
* **lexical:** update colorpicker value from props ([280f0bb](https://github.com/webiny/webiny-js/commit/280f0bb55c81517fdaff7d7dc4c28efdaed9fdc3))
* **lexical:** update to latest Lexical ([6747d06](https://github.com/webiny/webiny-js/commit/6747d0666316ce1470a79b8c30a6ef2f2084bd7c))
* **pulumi-aws:** add token validity config ([33e89bb](https://github.com/webiny/webiny-js/commit/33e89bb69416cd79cbc15d1701d1a8c44e8d269c))
* try using cause error first ([a4e05e8](https://github.com/webiny/webiny-js/commit/a4e05e8443d18b894a06fa7e48001b871c5f52b9))
* use `wts-client` NPM package ([#4183](https://github.com/webiny/webiny-js/issues/4183)) ([53dd8d1](https://github.com/webiny/webiny-js/commit/53dd8d12b8a0ea9ff157dbe461f9b11d03a5ba2e))



# [5.40.0](https://github.com/webiny/webiny-js/compare/v5.40.5...v5.40.6) (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))


### BREAKING CHANGES

* none



## [5.39.14](https://github.com/webiny/webiny-js/compare/v5.40.5...v5.40.6) (2024-09-18)


### Bug Fixes

* **api-file-manager:** use precalculated asset size and add logging ([bc771b0](https://github.com/webiny/webiny-js/commit/bc771b0c616cc2c0f339b57d2a5401349e992924))
* **api-headless-cms-ddb-es:** add default tie breaker for elasticsearch ([1c2ae12](https://github.com/webiny/webiny-js/commit/1c2ae12910269a7733e492f5a401cae285c75ce3))
* **api-headless-cms-ddb-es:** use id as tie breaker ([615413f](https://github.com/webiny/webiny-js/commit/615413ff4d4bb2d4db7a9d8b51655a27a0fcb54d))
* **api-headless-cms:** always output cursor ([85beabc](https://github.com/webiny/webiny-js/commit/85beabc3bc1173e69a2a451749fb86e05085b32b))
* **api-page-builder:** intercept search phase exception ([be6dc85](https://github.com/webiny/webiny-js/commit/be6dc85e59f01d741bbf02d87bb88e724d319c79))
* make entry/revision action labels more explicit ([#4280](https://github.com/webiny/webiny-js/issues/4280)) ([1d23eb7](https://github.com/webiny/webiny-js/commit/1d23eb7d17a10c290a280590c5e51dc8a7fa6be0))



## [5.39.13](https://github.com/webiny/webiny-js/compare/v5.40.5...v5.40.6) (2024-09-12)


### Bug Fixes

* ensure published entries are fully deleted ([#4265](https://github.com/webiny/webiny-js/issues/4265)) ([0b68e13](https://github.com/webiny/webiny-js/commit/0b68e13bcef75129fd0f9c1bfa355420052cf683))



## [5.39.12](https://github.com/webiny/webiny-js/compare/v5.40.5...v5.40.6) (2024-09-11)


### Bug Fixes

* **app-file-manager:** use bind prefix context to render extensions ([7bb3196](https://github.com/webiny/webiny-js/commit/7bb3196af2304ad35d5a1df8d2fbd781ef6b2966))
* ensure field values are preserved when deleting latest revision ([#4253](https://github.com/webiny/webiny-js/issues/4253)) ([a6f2221](https://github.com/webiny/webiny-js/commit/a6f22210d2b2f9bd51c150db5dff96e5719b010f))
* improve UI/UX around deletion of entry revisions ([#4260](https://github.com/webiny/webiny-js/issues/4260)) ([78121c6](https://github.com/webiny/webiny-js/commit/78121c6f8869f99577e2ab5b2cf1d9e9fd87dd2a))
* mark prev published revision as unpublished (`createFrom` mutation) ([#4258](https://github.com/webiny/webiny-js/issues/4258)) ([b1856b1](https://github.com/webiny/webiny-js/commit/b1856b15793700e6824a33b481e54b087f8c33d9))
* refresh revs list after ([#4255](https://github.com/webiny/webiny-js/issues/4255)) ([420cc08](https://github.com/webiny/webiny-js/commit/420cc08248670d20374da46fdd30ddcd3c82acdb))



## [5.39.10](https://github.com/webiny/webiny-js/compare/v5.40.5...v5.40.6) (2024-08-16)


### Bug Fixes

* add retries to read ops ([307efff](https://github.com/webiny/webiny-js/commit/307efff8b6963b1af24a1b81b833bc3f28f6900d))
* allow scanning with retries ([d95d4e6](https://github.com/webiny/webiny-js/commit/d95d4e641331b0d6e860278021266ae357c44905))
* export `ExecuteWithRetryOptions` ([4ed822c](https://github.com/webiny/webiny-js/commit/4ed822c61e2a262a0fc34d94ffb5c215e3e92934))
* improve error logging for batch writes ([29d7905](https://github.com/webiny/webiny-js/commit/29d7905244e46c345c4caee3bcde34b778011225))
* reduce maxChunk to 18 ([4bdf4fa](https://github.com/webiny/webiny-js/commit/4bdf4faec5e256ad5cdf4cbf7ad29047b6ecfc18))
* reduce maxChunk to 18 ([420603d](https://github.com/webiny/webiny-js/commit/420603d5d2814ef317d2205ba02d8c504db0c2e7))
* reduce maxChunk to 20 ([1023b01](https://github.com/webiny/webiny-js/commit/1023b01368cad85a3d2f062c658643c6a9cad5fb))
* retry read ops ([e557727](https://github.com/webiny/webiny-js/commit/e55772784016d25e6c994c2b1286e730596015fe))
* update dependencies ([641d166](https://github.com/webiny/webiny-js/commit/641d166c7558f7d86c0aefa46127e0b67c679512))
* wrap whole process into try/catch and ensure process doesn't fail ([ea9221b](https://github.com/webiny/webiny-js/commit/ea9221b8891b62797e288a71eb2c0acc08c8db19))



## [5.39.9](https://github.com/webiny/webiny-js/compare/v5.40.5...v5.40.6) (2024-06-28)


### Bug Fixes

* add modelId and used index name to the log ([#4186](https://github.com/webiny/webiny-js/issues/4186)) ([3433560](https://github.com/webiny/webiny-js/commit/34335609913a7aa93d6a484bfa2e5e847e6e600e))
* add support for WEBINY_MIGRATION_FORCE_EXECUTE_5_39_6_001 env var ([ded920f](https://github.com/webiny/webiny-js/commit/ded920f7f223f29ef1f7e9c9bd0b6c89df3604a4))
* ensure published records are updated accordingly ([#4184](https://github.com/webiny/webiny-js/issues/4184)) ([d79172a](https://github.com/webiny/webiny-js/commit/d79172aed85a8b144d2d83d12cb2fa02374ce852))
* improve disabling and restoration of ES indexing settings ([#4187](https://github.com/webiny/webiny-js/issues/4187)) ([d65c7e6](https://github.com/webiny/webiny-js/commit/d65c7e6cf2d7a6a7a37d5c37642e1dc9c04c8c11))