sanity-io/sanity
### [`v1.149.10`](https://togithub.com/sanity-io/sanity/releases/v1.149.10)
[Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.149.8...v1.149.10)
Upgrade the Command Line Interface (CLI) with:
npm install --global @sanity/cli
Upgrade Sanity Studio with:
sanity upgrade
### 🐛 Notable bugfixes
- We fixed a bug that would cause an error when trying to restore a document that has `null` values.
### 📓 Full changelog
| Author | Message | Commit |
| ----------- | ---------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| Bjørge Næss | [base] Fix wrong typeof check ([#1828](https://togithub.com/sanity-io/sanity/issues/1828)) | [`379ba25`](https://togithub.com/sanity-io/sanity/commit/379ba250c) |
### [`v1.149.8`](https://togithub.com/sanity-io/sanity/releases/v1.149.8)
[Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.149.7...v1.149.8)
Upgrade Sanity Studio with:
sanity upgrade
### 🐛 Notable bugfixes
- Fixed bug where export would crash if not receiving data on socket for 15 seconds
### 📓 Full changelog
| Author | Message | Commit |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------- |
| Espen Hovlandsdal | [export] Only use authorization header if token is provided | [`5683278`](https://togithub.com/sanity-io/sanity/commit/568327848) |
| Espen Hovlandsdal | [export] When failing to parse JSON, include line in error | [`5cb6628`](https://togithub.com/sanity-io/sanity/commit/5cb662893) |
| Espen Hovlandsdal | [export] Use explicit connection timeout/read timeouts | [`78e2ba1`](https://togithub.com/sanity-io/sanity/commit/78e2ba144) |
| Espen Hovlandsdal | [chore] Fix missing dependencies for build task | [`ea67851`](https://togithub.com/sanity-io/sanity/commit/ea678514d) |
| Espen Hovlandsdal | [base] Add typescript definition proxies for structure, initial value templates ([#1818](https://togithub.com/sanity-io/sanity/issues/1818)) | [`e92d480`](https://togithub.com/sanity-io/sanity/commit/e92d4802d) |
### [`v1.149.7`](https://togithub.com/sanity-io/sanity/releases/v1.149.7)
[Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.149.5...v1.149.7)
Upgrade the Command Line Interface (CLI) with:
npm install --global @sanity/cli
Upgrade Sanity Studio with:
sanity upgrade
### Notable changes
- node.js version 10 or above is now required to run the Sanity CLI and supporting modules. This is in line with the node.js LTS ("long term support") having been dropped for node 8 and below.
### Notable bugfixes
- Fixed an upstream dependency (terser) crashing in the latest version
- Fixed a few typescript definition errors in the Sanity client
### 📓 Full changelog
| Author | Message | Commit |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| Espen Hovlandsdal | [chore] Require node 10 across packages ([#1805](https://togithub.com/sanity-io/sanity/issues/1805)) | [`4e5c2de`](https://togithub.com/sanity-io/sanity/commit/4e5c2de11) |
| Espen Hovlandsdal | [client] Fix typings for non-document mutation results ([#1813](https://togithub.com/sanity-io/sanity/issues/1813)) | [`f56152c`](https://togithub.com/sanity-io/sanity/commit/f56152c99) |
| Espen Hovlandsdal | [client] Fix typings for constructor options (useProjectHostname) ([#1812](https://togithub.com/sanity-io/sanity/issues/1812)) | [`c4b2cf0`](https://togithub.com/sanity-io/sanity/commit/c4b2cf047) |
| Espen Hovlandsdal | [client] Fix incorrect return value type for transaction.serialize() ([#1811](https://togithub.com/sanity-io/sanity/issues/1811)) | [`f9dcf13`](https://togithub.com/sanity-io/sanity/commit/f9dcf13f1) |
| Espen Hovlandsdal | [core] Lock terser dependency to 4.6.7 | [`a68d619`](https://togithub.com/sanity-io/sanity/commit/a68d619a0) |
### [`v1.149.5`](https://togithub.com/sanity-io/sanity/releases/v1.149.5)
[Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.149.4...v1.149.5)
Upgrade the Command Line Interface (CLI) with:
npm install --global @sanity/cli
Upgrade Sanity Studio with:
sanity upgrade
### 🐛 Notable bugfixes
This release fixes an issue that triggered a flood of console warnings in Studios using in React 16.13.
### 📓 Full changelog
| Author | Message | Commit |
| ----------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| Bjørge Næss | [chore] Quickfix TS compile order issue ([#1794](https://togithub.com/sanity-io/sanity/issues/1794)) | [`20e8e8d`](https://togithub.com/sanity-io/sanity/commit/20e8e8d1e) |
| Bjørge Næss | [base] Improve scheduling of document action state rendering ([#1796](https://togithub.com/sanity-io/sanity/issues/1796)) | [`6da6802`](https://togithub.com/sanity-io/sanity/commit/6da680232) |
### [`v1.149.4`](https://togithub.com/sanity-io/sanity/releases/v1.149.4)
[Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.149.3...v1.149.4)
Upgrade the Command Line Interface (CLI) with:
npm install --global @sanity/cli
Upgrade Sanity Studio with:
sanity upgrade
### 🐛 Notable bugfixes
- Fixed a display bug where the toolbar for the Portable Text editor would be hidden until focus was given to the editor.
- Fixed an issue where the name of a type you were editing as an element in an array didn't show
### 👏 Notable improvements
- A ground up rewrite of the gulp script used by contributors during development, addressing several stability and performance issues.
### 📓 Full changelog
| Author | Message | Commit |
| -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| Per-Kristian Nordnes | Fix toolbar display bugs ([#1765](https://togithub.com/sanity-io/sanity/issues/1765)) | [`29fa828`](https://togithub.com/sanity-io/sanity/commit/29fa828eb) |
| Espen Hovlandsdal | [desk-tool] Fix incorrect schema type property for validation list ([#1766](https://togithub.com/sanity-io/sanity/issues/1766)) | [`eb3a763`](https://togithub.com/sanity-io/sanity/commit/eb3a7635f) |
| Espen Hovlandsdal | [schema] Validate object type previews ([#1763](https://togithub.com/sanity-io/sanity/issues/1763)) | [`7fa1d52`](https://togithub.com/sanity-io/sanity/commit/7fa1d5222) |
| Per-Kristian Nordnes | [test-studio] Upgrade sanity-plugin-dashboard-widget-document-list | [`bcbc12f`](https://togithub.com/sanity-io/sanity/commit/bcbc12f18) |
| Espen Hovlandsdal | [dashboard] Use observables for fetching, unsubscribe on unmount | [`076848f`](https://togithub.com/sanity-io/sanity/commit/076848ffc) |
| Espen Hovlandsdal | [studio-hints] Use observables for fetching, unsubscribe on unmount | [`070d7e1`](https://togithub.com/sanity-io/sanity/commit/070d7e126) |
| Thomas Drevon | [test-studio] Add a type for better testing | [`042f8a7`](https://togithub.com/sanity-io/sanity/commit/042f8a7a3) |
| Thomas Drevon | [components] Fix indent | [`1825947`](https://togithub.com/sanity-io/sanity/commit/182594781) |
| Thomas Drevon | [form-builder] Extract title assembly logic to a function | [`922e903`](https://togithub.com/sanity-io/sanity/commit/922e903dd) |
| Thomas Drevon | [schema] Use name as title if title is missing | [`8c70195`](https://togithub.com/sanity-io/sanity/commit/8c7019525) |
| Thomas Drevon | [test-studio] Expand schema to verify object title is working | [`be314e6`](https://togithub.com/sanity-io/sanity/commit/be314e6e5) |
| Bjørge Næss | [preview] Fetch all fields specified in preview.select even when requesting only a specific preview field ([#1780](https://togithub.com/sanity-io/sanity/issues/1780)) | [`f89d8d7`](https://togithub.com/sanity-io/sanity/commit/f89d8d70a) |
| vicbergquist | [cli] fix default dataset settings crashing CLI on existing projects ([#1777](https://togithub.com/sanity-io/sanity/issues/1777)) | [`5dfe7d6`](https://togithub.com/sanity-io/sanity/commit/5dfe7d6a9) |
| Espen Hovlandsdal | [block-tools] Fix test to be in line with new schema changes ([#1783](https://togithub.com/sanity-io/sanity/issues/1783)) | [`6d581a4`](https://togithub.com/sanity-io/sanity/commit/6d581a4c1) |
| Bjørge Næss | [chore] Rewrite gulpfile ([#1781](https://togithub.com/sanity-io/sanity/issues/1781)) | [`7e0893b`](https://togithub.com/sanity-io/sanity/commit/7e0893b25) |
### [`v1.149.3`](https://togithub.com/sanity-io/sanity/releases/v1.149.3)
[Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.149.2...v1.149.3)
Upgrade the Command Line Interface (CLI) with:
npm install --global @sanity/cli
Upgrade Sanity Studio with:
sanity upgrade
### 🐛 Notable bugfixes
- Fixed a bug that made it impossible to update any field after restoring an older revisions of a document with the `liveEdit` flag enabled.
### 📓 Full changelog
| Author | Message | Commit |
| ----------- | ------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------- |
| Bjørge Næss | [base] Make sure restoring from history takes liveEdit into account ([#1762](https://togithub.com/sanity-io/sanity/issues/1762)) | [`c7e77c8`](https://togithub.com/sanity-io/sanity/commit/c7e77c89b) |
### [`v1.149.2`](https://togithub.com/sanity-io/sanity/releases/v1.149.2)
[Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.149.1...v1.149.2)
Upgrade the Command Line Interface (CLI) with:
npm install --global @sanity/cli
Upgrade Sanity Studio with:
sanity upgrade
### 🐛 Notable bugfixes
- Fixed a bug where deploying a GraphQL API would fail on case-sensitive file systems
- Fixed a bug in the typescript definitions for the Sanity client
### 📓 Full changelog
| Author | Message | Commit |
| ----------------- | ---------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| Tom Seisums | [client] Fixed default return type of `fetch()` ([#1760](https://togithub.com/sanity-io/sanity/issues/1760)) | [`5cae442`](https://togithub.com/sanity-io/sanity/commit/5cae442e0) |
| Espen Hovlandsdal | [core] Fix incorrect filename casing on import statement | [`0a766fd`](https://togithub.com/sanity-io/sanity/commit/0a766fd14) |
### [`v1.149.1`](https://togithub.com/sanity-io/sanity/releases/v1.149.1)
[Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.149.0...v1.149.1)
Upgrade Sanity Studio with:
sanity upgrade
### 🐛 Notable bugfixes
- Fixed a missing interface in theclient typescript definitions
### 📓 Full changelog
| Author | Message | Commit |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------- |
| Bjørge Næss | [chore] Prevent lockfiles from being generated on npm install + lerna bootstrap ([#1756](https://togithub.com/sanity-io/sanity/issues/1756)) | [`dc7d60d`](https://togithub.com/sanity-io/sanity/commit/dc7d60de0) |
| Bjørge Næss | [chore] Remove storybook from test-studio ([#1757](https://togithub.com/sanity-io/sanity/issues/1757)) | [`68e42ef`](https://togithub.com/sanity-io/sanity/commit/68e42efbc) |
| Espen Hovlandsdal | [client] Typings: Including missing SanityImagePalette definition ([#1759](https://togithub.com/sanity-io/sanity/issues/1759)) | [`96cb157`](https://togithub.com/sanity-io/sanity/commit/96cb157b5) |
### [`v1.149.0`](https://togithub.com/sanity-io/sanity/releases/v1.149.0)
[Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.148.7...v1.149.0)
Upgrade the Command Line Interface (CLI) with:
npm install --global @sanity/cli
Upgrade Sanity Studio with:
sanity upgrade
### ✨ Highlights
#### Announcing GraphQL out of beta!
[Read our blog post: “Introducing our new GraphQL API”](https://www.sanity.io/blog/introducing-our-new-graphql-api)
We have taken GraphQL out of beta, and introduced a new _generation_ of the schema. The old beta generation will still be available and work as before.
Some of the highlights of the new API:
- Improved filtering options on documents, and nested objects
- Sorting on multiple fields
- Multiple endpoint support for ease of transitioning between two different data models and generations
- When deploying a GraphQL endpoint, you are now warned about potential breaking changes in your schema
To use the new generation of the API, update the Sanity CLI and run `sanity graphql deploy`. If you have already deployed a GraphQL API, you might want to deploy the new generation with a tag:
`sanity graphql deploy --tag next`
This will deploy a new endpoint using the `next` tag.
Since you now can deploy multiple endpoints, we saw the need for a command in the CLI to list out all your deployed endpoints. This can be done by simply running `sanity graphql list`.
### 🐛 Notable bugfixes
- Fixed a problem where pluralizing generated types would cause naming collisions
### 📓 Full changelog
| Author | Message | Commit |
| ----------------- | ----------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| Anders Stensaas | [core] GraphQL: Add a tag option when interacting with GraphQL endpoints ([#1606](https://togithub.com/sanity-io/sanity/issues/1606)) | [`0ce072f`](https://togithub.com/sanity-io/sanity/commit/0ce072fc8) |
| Anders Stensaas | [core] GraphQL: Explicitly add all filters for all types for clarity | [`c318fde`](https://togithub.com/sanity-io/sanity/commit/c318fde70) |
| Anders Stensaas | [core] GraphQL: Dynamically create filters for all types and objects | [`d6a3f6b`](https://togithub.com/sanity-io/sanity/commit/d6a3f6ba7) |
| Anders Stensaas | [core] GraphQL: Fix a bug where the references function wasn't added due to strange syntax | [`1366a9a`](https://togithub.com/sanity-io/sanity/commit/1366a9a54) |
| Espen Hovlandsdal | [core] GraphQL: Check for breaking changes when deploying GraphQL API ([#1701](https://togithub.com/sanity-io/sanity/issues/1701)) | [`0b824d8`](https://togithub.com/sanity-io/sanity/commit/0b824d8f2) |
| Anders Stensaas | [core] GraphQL: Dynamically generate GraphQL type sortings | [`844eb50`](https://togithub.com/sanity-io/sanity/commit/844eb5035) |
| Espen Hovlandsdal | [core] GraphQL: Allow deploying legacy GraphQL API generation | [`ef6c0ff`](https://togithub.com/sanity-io/sanity/commit/ef6c0ff40) |
| Espen Hovlandsdal | [cli] Add newline before printed CLI errors | [`abad5d5`](https://togithub.com/sanity-io/sanity/commit/abad5d524) |
| Espen Hovlandsdal | [blog-studio] Include form-builder configuration file | [`6c5181a`](https://togithub.com/sanity-io/sanity/commit/6c5181a02) |
| Espen Hovlandsdal | [core] GraphQL: Handle text and email types as strings | [`e4a3183`](https://togithub.com/sanity-io/sanity/commit/e4a31835a) |
| Espen Hovlandsdal | [core] GraphQL: Use StringFilter for URLs | [`9e6f69c`](https://togithub.com/sanity-io/sanity/commit/9e6f69c21) |
| Espen Hovlandsdal | [core] GraphQL: Include reference information on field filters | [`ee57ee0`](https://togithub.com/sanity-io/sanity/commit/ee57ee00d) |
| Espen Hovlandsdal | [core] GraphQL: Set `isConstraintFilter` property on filters | [`e9d8d35`](https://togithub.com/sanity-io/sanity/commit/e9d8d356e) |
| Espen Hovlandsdal | [core] GraphQL: Move document filters to separate `_` property/type | [`7cdac71`](https://togithub.com/sanity-io/sanity/commit/7cdac710b) |
| Espen Hovlandsdal | [core] GraphQL: Move document filters to top of fields list | [`26264f6`](https://togithub.com/sanity-io/sanity/commit/26264f6da) |
| Espen Hovlandsdal | [core] GraphQL: Don't include sorting for reference fields | [`65309f9`](https://togithub.com/sanity-io/sanity/commit/65309f91a) |
| Espen Hovlandsdal | [core] GraphQL: Don't pluralize type queries | [`586dde9`](https://togithub.com/sanity-io/sanity/commit/586dde9cf) |
| Espen Hovlandsdal | [core] GraphQL: Exclude unions from filter generation | [`36c9a10`](https://togithub.com/sanity-io/sanity/commit/36c9a10dc) |
| Espen Hovlandsdal | [core] GraphQL: Use lowercase comparators in v2 schemas | [`ba6336e`](https://togithub.com/sanity-io/sanity/commit/ba6336e7d) |
| Knut Melvær | [core] GraphQL: Specify default generation in help text | [`6079049`](https://togithub.com/sanity-io/sanity/commit/607904924) |
| Anders Stensaas | [core] GraphQL: Tweak feedback from CLI when deleting and deploying GraphQL endpoints | [`37346a7`](https://togithub.com/sanity-io/sanity/commit/37346a706) |
| Anders Stensaas | [core] GraphQL: Rename from "vX" to "genX" in GraphQL | [`a64a631`](https://togithub.com/sanity-io/sanity/commit/a64a63160) |
| Anders Stensaas | [core] GraphQL: Add a CLI command for listing out deployed GraphQL endpoints | [`d5eb7d3`](https://togithub.com/sanity-io/sanity/commit/d5eb7d306) |
| Anders Stensaas | [core] GraphQL: Format output from graphql list command a little better | [`7a27fe4`](https://togithub.com/sanity-io/sanity/commit/7a27fe459) |
| Anders Stensaas | [core] GraphQL: Remove in-line mock data when testing graphql list CLI command | [`37771b1`](https://togithub.com/sanity-io/sanity/commit/37771b1cb) |
| Anders Stensaas | [core] GraphQL: Fix a problem where the no endpoints error message was shown regardless of results | [`21641c4`](https://togithub.com/sanity-io/sanity/commit/21641c45a) |
| Anders Stensaas | [core] GraphQL: Align help text of graphql list command with other optionless commands | [`3670bac`](https://togithub.com/sanity-io/sanity/commit/3670bacee) |
| Anders Stensaas | [core] GraphQL: Remove special handling of 404 in graphql list command | [`7b026e0`](https://togithub.com/sanity-io/sanity/commit/7b026e018) |
| Anders Stensaas | [core] GraphQL: Fix an issue where the URL replacer matched on the wrong regex | [`bbc6945`](https://togithub.com/sanity-io/sanity/commit/bbc69458a) |
### [`v1.148.7`](https://togithub.com/sanity-io/sanity/releases/v1.148.7)
[Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.148.5...v1.148.7)
Upgrade the Command Line Interface (CLI) with:
npm install --global @sanity/cli
Upgrade Sanity Studio with:
sanity upgrade
### 🐛 Notable bugfixes
- Fixed client typescript definition errors
### 📓 Full changelog
| Author | Message | Commit |
| ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| Corey Ward | [validation] Fix invalid `disableArrayWarning` reference ([#1572](https://togithub.com/sanity-io/sanity/issues/1572)) | [`cbb0bed`](https://togithub.com/sanity-io/sanity/commit/cbb0bedf7) |
| Daniel Roe | [client] Fix typescript definition errors ([#1751](https://togithub.com/sanity-io/sanity/issues/1751)) | [`997fb86`](https://togithub.com/sanity-io/sanity/commit/997fb8642) |
| Espen Hovlandsdal | [base] Add missing [@sanity/generate-help-url](https://togithub.com/sanity/generate-help-url) dependency ([#1753](https://togithub.com/sanity-io/sanity/issues/1753)) | [`14e1776`](https://togithub.com/sanity-io/sanity/commit/14e1776d4) |
### [`v1.148.5`](https://togithub.com/sanity-io/sanity/releases/v1.148.5)
[Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.148.3...v1.148.5)
Upgrade the Command Line Interface (CLI) with:
npm install --global @sanity/cli
Upgrade Sanity Studio with:
sanity upgrade
### ✨ Highlights
#### Studio performance and stability improvements
We have done a couple of stability fixes and performance fixes that should improve the overall editing experience.
#### Groundwork for upcoming features
We have also done a lot of restructuring of the internal Studio codebase to enable some long awaited features. Stay tuned!
### 📓 Full changelog
| Author | Message | Commit |
| ----------------- | ------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| Bjørge Næss | [chore] Tidy up package json deps and versions | [`bb9baf8`](https://togithub.com/sanity-io/sanity/commit/bb9baf86a) |
| Bjørge Næss | [chore] Disable noUnusedLocals tsconfig | [`d2501a1`](https://togithub.com/sanity-io/sanity/commit/d2501a1e5) |
| Bjørge Næss | [base] Inline document store | [`a71c343`](https://togithub.com/sanity-io/sanity/commit/a71c343e7) |
| Bjørge Næss | [document-store] Remove package (for now) | [`02f81e9`](https://togithub.com/sanity-io/sanity/commit/02f81e9b6) |
| Bjørge Næss | [desk-tool] Enable TypeScript | [`9cb1ec0`](https://togithub.com/sanity-io/sanity/commit/9cb1ec0dc) |
| Bjørge Næss | [form-builder] Make FormField and Object Field pure components | [`06d11c3`](https://togithub.com/sanity-io/sanity/commit/06d11c37b) |
| Bjørge Næss | [mutator] Make commit async and make sure onConsistencyChanged emits proper state updates | [`f49ada0`](https://togithub.com/sanity-io/sanity/commit/f49ada03a) |
| Bjørge Næss | [mutator] Export MutationParams type | [`68a80c9`](https://togithub.com/sanity-io/sanity/commit/68a80c9d3) |
| Bjørge Næss | [base] Add infrastructure for document-actions | [`87d9299`](https://togithub.com/sanity-io/sanity/commit/87d929992) |
| Bjørge Næss | [base] Allow passing initialValue to patch | [`407f675`](https://togithub.com/sanity-io/sanity/commit/407f675e9) |
| Bjørge Næss | [base] Improve document operation execution pipeline | [`f82045c`](https://togithub.com/sanity-io/sanity/commit/f82045c4f) |
| Bjørge Næss | [react-hooks] Add [@sanity/react-hooks](https://togithub.com/sanity/react-hooks) package | [`a556ab4`](https://togithub.com/sanity-io/sanity/commit/a556ab4c4) |
| Bjørge Næss | [form-builder] Deprecate checkoutPair and move receiveEvent to SanityFormBuilderContext | [`78f4aef`](https://togithub.com/sanity-io/sanity/commit/78f4aefe3) |
| Bjørge Næss | [desk-tool] Implement desk tool actions on top of new actions/operations infra | [`6ad1b44`](https://togithub.com/sanity-io/sanity/commit/6ad1b44d4) |
| Bjørge Næss | [desk-tool] Add a component for showing document operation results | [`152a754`](https://togithub.com/sanity-io/sanity/commit/152a75439) |
| Bjørge Næss | [desk-tool] Pass through keyboard shortcuts not handled by document actions | [`5e48965`](https://togithub.com/sanity-io/sanity/commit/5e48965fd) |
| Bjørge Næss | [test-studio] Add an actions playground tool | [`54771f3`](https://togithub.com/sanity-io/sanity/commit/54771f37b) |
| Bjørge Næss | [test-studio] Add some custom document actions and badges to test-studio | [`7667f97`](https://togithub.com/sanity-io/sanity/commit/7667f9787) |
| Bjørge Næss | [base/desk-tool] Enable autocommit by default | [`ba253ef`](https://togithub.com/sanity-io/sanity/commit/ba253ef71) |
| Bjørge Næss | [desk-tool] Pass initialValue to patch | [`ab61f08`](https://togithub.com/sanity-io/sanity/commit/ab61f0802) |
| Espen Hovlandsdal | [desk-tool] Only reset state when mounting/unmounting | [`6415ee7`](https://togithub.com/sanity-io/sanity/commit/6415ee71d) |
| Bjørge Næss | [desk-tool] Make loading state dependent on connection state | [`832b66b`](https://togithub.com/sanity-io/sanity/commit/832b66bb1) |
| Bjørge Næss | [react-hooks] Change return value from useConnectionState to connected/connecting/reconnecting | [`f952dad`](https://togithub.com/sanity-io/sanity/commit/f952dadf1) |
| Bjørge Næss | [desk-tool] Prevent publish action component from publishing before sync/validation has completed | [`8690d43`](https://togithub.com/sanity-io/sanity/commit/8690d43bc) |
| Bjørge Næss | [desk-tool] Edit snackbar messages | [`bb174a9`](https://togithub.com/sanity-io/sanity/commit/bb174a9e1) |
| Espen Hovlandsdal | [desk-tool] Fix history being stuck in loading mode after restore | [`133f67f`](https://togithub.com/sanity-io/sanity/commit/133f67ff7) |
| Espen Hovlandsdal | [structure] Resolve intents based on documentListItem IDs if possible | [`bd34ce1`](https://togithub.com/sanity-io/sanity/commit/bd34ce1c6) |
### [`v1.148.3`](https://togithub.com/sanity-io/sanity/releases/v1.148.3)
[Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.148.2...v1.148.3)
Upgrade the Command Line Interface (CLI) with:
npm install --global @sanity/cli
Upgrade Sanity Studio with:
sanity upgrade
### ✨ Highlights
#### TypeScript definitions for [@sanity/client](https://togithub.com/sanity/client)
`@sanity/client` now has TypeScript support, including [TSdoc](https://togithub.com/microsoft/tsdoc) for methods.
### 🐛 Notable bugfixes
- Fixed a bug where an extra undo step was made when deleting everything inside the Portable Text editor.
- You can now paste text from Notion.so into the Portable Text editor.
- `@sanity/block-tools` `htmlToBlocks` will now normalize the produced content. Objects are given keys and adjecent spans with similar marks will be merged.
### 📓 Full changelog
| Author | Message | Commit |
| -------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| Bjørge Næss | [chore] Add ZEIT Now deployment for test-studio ([#1739](https://togithub.com/sanity-io/sanity/issues/1739)) | [`eed05d2`](https://togithub.com/sanity-io/sanity/commit/eed05d20c) |
| Per-Kristian Nordnes | [block-tools] htmlToBlocks will now normalize blocks ([#1732](https://togithub.com/sanity-io/sanity/issues/1732)) | [`31df4e0`](https://togithub.com/sanity-io/sanity/commit/31df4e0bd) |
| Espen Hovlandsdal | [observable] Add typescript definitions | [`da4561a`](https://togithub.com/sanity-io/sanity/commit/da4561ac8) |
| Espen Hovlandsdal | [client] Add typescript definitions | [`cc60002`](https://togithub.com/sanity-io/sanity/commit/cc60002b7) |
| Espen Hovlandsdal | [client] Allow overriding response types in typings | [`0b69cc2`](https://togithub.com/sanity-io/sanity/commit/0b69cc265) |
| Per-Kristian Nordnes | [block-tools] Test for doc.body.firstElementChild before using it ([#1734](https://togithub.com/sanity-io/sanity/issues/1734)) | [`6fa6032`](https://togithub.com/sanity-io/sanity/commit/6fa60320d) |
| Per-Kristian Nordnes | [form-builder] Don't put placeholder operation into undo step ([#1733](https://togithub.com/sanity-io/sanity/issues/1733)) | [`853673e`](https://togithub.com/sanity-io/sanity/commit/853673eb8) |
### [`v1.148.2`](https://togithub.com/sanity-io/sanity/releases/v1.148.2)
[Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.148.1...v1.148.2)
Upgrade the Command Line Interface (CLI) with:
npm install --global @sanity/cli
Upgrade Sanity Studio with:
sanity upgrade
Rolling back some regressions for the publish and restore actions introduced in 1.148.0. Sorry for the inconvenience!
### 📓 Full changelog
| Author | Message | Commit |
| ----------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| Bjørge Næss | Revert [`f0375e9`](https://togithub.com/sanity-io/sanity/commit/f0375e933)..[`496103a`](https://togithub.com/sanity-io/sanity/commit/496103a56) | [`7b709f6`](https://togithub.com/sanity-io/sanity/commit/7b709f639) |
| Bjørge Næss | Add missing dependency | [`ae94528`](https://togithub.com/sanity-io/sanity/commit/ae9452862) |
### [`v1.148.1`](https://togithub.com/sanity-io/sanity/releases/v1.148.1)
[Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.148.0...v1.148.1)
Upgrade the Command Line Interface (CLI) with:
npm install --global @sanity/cli
Upgrade Sanity Studio with:
sanity upgrade
Rolling back some regressions for the publish and restore actions introduced in 1.148.0. Sorry for the inconvenience!
### 📓 Full changelog
| Author | Message | Commit |
| ----------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| Bjørge Næss | Revert [`f0375e9`](https://togithub.com/sanity-io/sanity/commit/f0375e933)..[`496103a`](https://togithub.com/sanity-io/sanity/commit/496103a56) | [`7b709f6`](https://togithub.com/sanity-io/sanity/commit/7b709f639) |
| Bjørge Næss | Add missing dependency | [`ae94528`](https://togithub.com/sanity-io/sanity/commit/ae9452862) |
### [`v1.148.0`](https://togithub.com/sanity-io/sanity/releases/v1.148.0)
[Compare Source](https://togithub.com/sanity-io/sanity/compare/v0.147.8...v1.148.0)
Upgrade the Command Line Interface (CLI) with:
npm install --global @sanity/cli
Upgrade Sanity Studio with:
sanity upgrade
### ✨ Highlights
#### Moving from 0.x to 1.x
In this release we have bumped the official `@sanity`-packages on npm from `v0.147` to `v1.148`.
Normally, a major version bump indicates breaking/non backwards compatible changes, but in this case everything that used to work with the previous release should also work with this release.
Read more about this "major non-event" and our position on breaking changes [in our blog post](https://www.sanity.io/blog/announcing-a-major-non-event).
#### TypeScript support for Sanity Studio
Sanity Studio and the Sanity CLI now supports TypeScript. [Go to the documentation](https://www.sanity.io/docs/using-typescript-in-sanity-studio) to learn how to get started.
#### Studio performance and stability improvements
We have also done a couple of stability fixes and performance fixes that should improve the overall editing experience.
#### Groundwork for upcoming features
We have also done a lot of restructuring of the internal Studio codebase to enable some long awaited features. Stay tuned!
### 📓 Full changelog
| Author | Message | Commit |
| -------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| Espen Hovlandsdal | [all] Remove unused interdependencies ([#1700](https://togithub.com/sanity-io/sanity/issues/1700)) | [`657f8f8`](https://togithub.com/sanity-io/sanity/commit/657f8f85f) |
| Bjørge Næss | Make mutator/perf-script runnable from node | [`e63949e`](https://togithub.com/sanity-io/sanity/commit/e63949e34) |
| Bjørge Næss | [chore] Add script for updating licenses | [`3255b15`](https://togithub.com/sanity-io/sanity/commit/3255b1596) |
| Bjørge Næss | [chore] Update license files | [`af81a27`](https://togithub.com/sanity-io/sanity/commit/af81a2778) |
| Espen Hovlandsdal | [form-builder] Reuse empty markers array if none are present ([#1709](https://togithub.com/sanity-io/sanity/issues/1709)) | [`518bec1`](https://togithub.com/sanity-io/sanity/commit/518bec11d) |
| Espen Hovlandsdal | [form-builder] Use shallow equality check on path property ([#1708](https://togithub.com/sanity-io/sanity/issues/1708)) | [`a472da5`](https://togithub.com/sanity-io/sanity/commit/a472da5f7) |
| Espen Hovlandsdal | [preview] Add support for extracting text from portable text ([#1715](https://togithub.com/sanity-io/sanity/issues/1715)) | [`d1a8a2f`](https://togithub.com/sanity-io/sanity/commit/d1a8a2f93) |
| Per-Kristian Nordnes | [form-builder] Fix type error ([#1720](https://togithub.com/sanity-io/sanity/issues/1720)) | [`d5f540f`](https://togithub.com/sanity-io/sanity/commit/d5f540f89) |
| Bjørge Næss | [form-builder] Remove deprecated function | [`815775b`](https://togithub.com/sanity-io/sanity/commit/815775bbc) |
| Bjørge Næss | [base] Enable TypeScript | [`f0375e9`](https://togithub.com/sanity-io/sanity/commit/f0375e933) |
| Bjørge Næss | [base] Inline document store | [`445b16d`](https://togithub.com/sanity-io/sanity/commit/445b16d07) |
| Bjørge Næss | [document-store] Remove package (for now) | [`360e26d`](https://togithub.com/sanity-io/sanity/commit/360e26dc4) |
| Bjørge Næss | [desk-tool] Enable TypeScript | [`6f89fe3`](https://togithub.com/sanity-io/sanity/commit/6f89fe3c3) |
| Bjørge Næss | [form-builder] Make FormField and Object Field pure components | [`4eac915`](https://togithub.com/sanity-io/sanity/commit/4eac91562) |
| Bjørge Næss | [mutator] Make commit async and make sure onConsistencyChanged emits proper state updates | [`ba588a9`](https://togithub.com/sanity-io/sanity/commit/ba588a9fa) |
| Bjørge Næss | [mutator] Export MutationParams type | [`0bb5c65`](https://togithub.com/sanity-io/sanity/commit/0bb5c6520) |
| Bjørge Næss | [base] Add infrastructure for document-actions | [`d10a641`](https://togithub.com/sanity-io/sanity/commit/d10a64176) |
| Bjørge Næss | [react-hooks] Add [@sanity/react-hooks](https://togithub.com/sanity/react-hooks) package | [`a8a51db`](https://togithub.com/sanity-io/sanity/commit/a8a51dbf7) |
| Bjørge Næss | [form-builder] Deprecate checkoutPair and move receiveEvent to SanityFormBuilderContext | [`ab9ee83`](https://togithub.com/sanity-io/sanity/commit/ab9ee8365) |
| Bjørge Næss | [desk-tool] Implement desk tool actions on top of new actions/operations infra | [`5a16ee2`](https://togithub.com/sanity-io/sanity/commit/5a16ee258) |
| Bjørge Næss | [desk-tool] Add a component for showing document operation results | [`68e5e80`](https://togithub.com/sanity-io/sanity/commit/68e5e8020) |
| Bjørge Næss | [test-studio] Add an actions playground tool | [`c4451ae`](https://togithub.com/sanity-io/sanity/commit/c4451ae07) |
| Bjørge Næss | [test-studio] Add some custom document actions and badges to test-studio | [`496103a`](https://togithub.com/sanity-io/sanity/commit/496103a56) |
| Espen Hovlandsdal | [core] Add support for typescript in studio | [`16f5cf0`](https://togithub.com/sanity-io/sanity/commit/16f5cf0a2) |
| Espen Hovlandsdal | [base] Include typescript definition stubs for parts + css modules | [`ccd5524`](https://togithub.com/sanity-io/sanity/commit/ccd552459) |
| Espen Hovlandsdal | [cli] Include tsconfig in newly initialized projects | [`8f86894`](https://togithub.com/sanity-io/sanity/commit/8f868945d) |
| Bjørge Næss | [server] Add default extensions to webpack config too | [`22db932`](https://togithub.com/sanity-io/sanity/commit/22db93246) |
| Bjørge Næss | [base] Make part declaration work for named exports | [`461ca48`](https://togithub.com/sanity-io/sanity/commit/461ca4802) |
| Knut Melvær | [chore] Small improvements to release notes script | [`9d0a414`](https://togithub.com/sanity-io/sanity/commit/9d0a4146b) |
### [`v0.147.8`](https://togithub.com/sanity-io/sanity/releases/v0.147.8)
[Compare Source](https://togithub.com/sanity-io/sanity/compare/v0.147.6...v0.147.8)
Upgrade the Command Line Interface (CLI) with
npm install --global @sanity/cli
Upgrade the Content Studio with:
sanity upgrade
### ✨ Highlights
#### Improved performance of import/export
The command line tools for importing and exporting datasets have had several improvements to performance and stability, especially when working with a large number of assets.
### 🐛 Notable bugfixes
- Fixed an issue where many people editing the same document would occasionally fail
- Fixed an issue where conflicting document IDs would be retried when importing
- Fixed an issue where the progress indication for importing assets would show them as complete too early
### 📓 Full changelog
| Author | Message | Commit |
| -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| Espen Hovlandsdal | [groq] Add typescript definition for tagged template literal ([#1682](https://togithub.com/sanity-io/sanity/issues/1682)) | [`6f33e94`](https://togithub.com/sanity-io/sanity/commit/6f33e94f8) |
| Per-Kristian Nordnes | [form-builder] Block editor paste plugin: Join plain text back as string | [`0511fb5`](https://togithub.com/sanity-io/sanity/commit/0511fb5ee) |
| Espen Hovlandsdal | [export] Use HTTP/HTTPS agent with keep-alive | [`247c8d8`](https://togithub.com/sanity-io/sanity/commit/247c8d8ec) |
| j33ty | [export] Add concurrency flag to export command | [`190d378`](https://togithub.com/sanity-io/sanity/commit/190d37855) |
| Espen Hovlandsdal | [core] Rephrase help text for dataset export | [`19add28`](https://togithub.com/sanity-io/sanity/commit/19add2804) |
| Espen Hovlandsdal | [export] Add validation for lower concurrency limit | [`c7ea9ef`](https://togithub.com/sanity-io/sanity/commit/c7ea9efb9) |
| Espen Hovlandsdal | [import] Bump asset upload concurrency to 8, limit to 12 | [`fe57e83`](https://togithub.com/sanity-io/sanity/commit/fe57e83e2) |
| Espen Hovlandsdal | [export] Rename concurrency flag to asset-concurrency | [`ffb0474`](https://togithub.com/sanity-io/sanity/commit/ffb047496) |
| Espen Hovlandsdal | [export] Keep track of pending URLs | [`3ba5fcd`](https://togithub.com/sanity-io/sanity/commit/3ba5fcd40) |
| Espen Hovlandsdal | [export] Don't count pending downloads as completed | [`18ff6c5`](https://togithub.com/sanity-io/sanity/commit/18ff6c52c) |
| Knut Melvær | [dashboard] Fix spelling error | [`864c73f`](https://togithub.com/sanity-io/sanity/commit/864c73fe2) |
| Simen Svale Skogsrud | [mutator] Fixes the problem where diff-match-patch and inc-dec would yield exceptions when targetting array indicies or attributes that did not exist | [`f44a5c0`](https://togithub.com/sanity-io/sanity/commit/f44a5c0dc) |
| Espen Hovlandsdal | [import] Add --replace-assets flag to allow skipping sha1 check/reuse | [`e321aed`](https://togithub.com/sanity-io/sanity/commit/e321aed06) |
| Espen Hovlandsdal | [import] Add validation of raw asset documents | [`179c15e`](https://togithub.com/sanity-io/sanity/commit/179c15e74) |
| Espen Hovlandsdal | [import] Don't retry 409s (conflicts) when importing | [`03825e8`](https://togithub.com/sanity-io/sanity/commit/03825e8b7) |
| Espen Hovlandsdal | [import] Add test for import of asset doc with no file present | [`004a501`](https://togithub.com/sanity-io/sanity/commit/004a50174) |
| Victoria Bergquist | [cli] add error message when plugin name is invalid ([#1698](https://togithub.com/sanity-io/sanity/issues/1698)) | [`acd24db`](https://togithub.com/sanity-io/sanity/commit/acd24dbb5) |
| Victoria Bergquist | [cli] improve debug command help text ([#1697](https://togithub.com/sanity-io/sanity/issues/1697)) | [`4ca8425`](https://togithub.com/sanity-io/sanity/commit/4ca842597) |
### [`v0.147.6`](https://togithub.com/sanity-io/sanity/releases/v0.147.6)
[Compare Source](https://togithub.com/sanity-io/sanity/compare/v0.147.3...v0.147.6)
Upgrade the Content Studio with:
sanity upgrade
### ✨ Highlights
#### 🔗 Fine-grained reference fields
Reference fields can now be given an additional GROQ-filter to help constrain the search, making it easier to find the documents you are looking for.
Note that this only helps the _search_, it does not guarantee that the referenced document will match the filter in the future.
Read the documentation for the [reference type](https://www.sanity.io/docs/reference-type#options) to find out how to use this new functionality.
#### ⚡ Faster loading of long lists
The desk tool should now load the initial set of documents in a list faster than previously. When scrolling, it will load additional documents. We're working on further improving the performance of lists.
### 🐛 Notable bugfixes
- Fixed bug where documents with numeric IDs would not be sorted correctly in desk tool
- Fixed bug where unsetting an image or file field would not unset the `_type` property
- Fixed bug where the experimental spaces feature would link to incorrect space in certain cases
### 📓 Full changelog
| Author | Message | Commit |
| ----------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- |
| Espen Hovlandsdal | [base] Maintain order of documents when collating drafts/published ([#1665](https://togithub.com/sanity-io/sanity/issues/1665)) | [`b92b6ac`](https://togithub.com/sanity-io/sanity/commit/b92b6ac43) |
| Espen Hovlandsdal | [form-builder] Unset empty object when removing asset ([#1647](https://togithub.com/sanity-io/sanity/issues/1647)) | [`63964c7`](https://togithub.com/sanity-io/sanity/commit/63964c72e) |
| Espen Hovlandsdal | [form-builder] Support additional filter to reference input | [`d90e42c`](https://togithub.com/sanity-io/sanity/commit/d90e42cea) |
| Espen Hovlandsdal | [base] Include additional filter + params if passed | [`4a31a69`](https://togithub.com/sanity-io/sanity/commit/4a31a6941) |
| Espen Hovlandsdal | [form-builder] Allow passing filter resolver function instead of string | [`67f9ef6`](https://togithub.com/sanity-io/sanity/commit/67f9ef61e) |
| Espen Hovlandsdal | [schema] Validate reference filter and filterParams properties | [`0ff5cad`](https://togithub.com/sanity-io/sanity/commit/0ff5cad13) |
| Espen Hovlandsdal | [desk-tool] Remove unused scrollTop handler | [`693c2e4`](https://togithub.com/sanity-io/sanity/commit/693c2e446) |
| Espen Hovlandsdal | [base] Export query results observable from QueryContainer | [`686db3f`](https://togithub.com/sanity-io/sanity/commit/686db3f72) |
| Espen Hovlandsdal | [desk-tool] Load partial document list before fetching full list | [`13385dd`](https://togithub.com/sanity-io/sanity/commit/13385ddbb) |
| Espen Hovlandsdal | [desk-tool] Only load full list when scrolled to half-way point | [`a68394b`](https://togithub.com/sanity-io/sanity/commit/a68394b84) |
| Espen Hovlandsdal | [desk-tool] Style loading/more documents component | [`f33a895`](https://togithub.com/sanity-io/sanity/commit/f33a895b8) |
| Espen Hovlandsdal | [default-layout] Reload window when switching spaces ([#1674](https://togithub.com/sanity-io/sanity/issues/1674)) | [`a8267c6`](https://togithub.com/sanity-io/sanity/commit/a8267c6d5) |
### [`v0.147.3`](https://togithub.com/sanity-io/sanity/releases/v0.147.3)
[Compare Source](https://togithub.com/sanity-io/sanity/compare/v0.147.0...v0.147.3)
Upgrade the Command Line Interface (CLI) with:
npm install --global @sanity/cli
Upgrade the Content Studio with:
sanity upgrade
### ✨ Highlights
#### Hints mode
The Sanity Studio now comes with an optional sidebar that is used for onboarding new developers. It can be opened and closed, and removed by configuring `sanity.json`. It will not appear in existing studios unless you enable it youself. It will be added as a default to the starters on [sanity.io/create](https://sanity.io/create).
Renovate configuration
:date: Schedule: At any time (no schedule defined).
:vertical_traffic_light: Automerge: Enabled.
:recycle: Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
:ghost: Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
[ ] If you want to rebase/retry this PR, check this box
This PR contains the following updates:
^0.144
->^1.149
^0.144
->^1.149
^0.144.0
->^1.149.9
^0.144.0
->^1.149.7
^0.144
->^1.149
^0.144
->^1.149
^0.144
->^1.149
^0.144
->^1.149
^0.144
->^1.149
^0.144
->^1.149
Release Notes
sanity-io/sanity
### [`v1.149.10`](https://togithub.com/sanity-io/sanity/releases/v1.149.10) [Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.149.8...v1.149.10) Upgrade the Command Line Interface (CLI) with: npm install --global @sanity/cli Upgrade Sanity Studio with: sanity upgrade ### 🐛 Notable bugfixes - We fixed a bug that would cause an error when trying to restore a document that has `null` values. ### 📓 Full changelog | Author | Message | Commit | | ----------- | ---------------------------------------------------------------------------------------- | ----------------------------------------------------------------- | | Bjørge Næss | [base] Fix wrong typeof check ([#1828](https://togithub.com/sanity-io/sanity/issues/1828)) | [`379ba25`](https://togithub.com/sanity-io/sanity/commit/379ba250c) | ### [`v1.149.8`](https://togithub.com/sanity-io/sanity/releases/v1.149.8) [Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.149.7...v1.149.8) Upgrade Sanity Studio with: sanity upgrade ### 🐛 Notable bugfixes - Fixed bug where export would crash if not receiving data on socket for 15 seconds ### 📓 Full changelog | Author | Message | Commit | | ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------- | | Espen Hovlandsdal | [export] Only use authorization header if token is provided | [`5683278`](https://togithub.com/sanity-io/sanity/commit/568327848) | | Espen Hovlandsdal | [export] When failing to parse JSON, include line in error | [`5cb6628`](https://togithub.com/sanity-io/sanity/commit/5cb662893) | | Espen Hovlandsdal | [export] Use explicit connection timeout/read timeouts | [`78e2ba1`](https://togithub.com/sanity-io/sanity/commit/78e2ba144) | | Espen Hovlandsdal | [chore] Fix missing dependencies for build task | [`ea67851`](https://togithub.com/sanity-io/sanity/commit/ea678514d) | | Espen Hovlandsdal | [base] Add typescript definition proxies for structure, initial value templates ([#1818](https://togithub.com/sanity-io/sanity/issues/1818)) | [`e92d480`](https://togithub.com/sanity-io/sanity/commit/e92d4802d) | ### [`v1.149.7`](https://togithub.com/sanity-io/sanity/releases/v1.149.7) [Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.149.5...v1.149.7) Upgrade the Command Line Interface (CLI) with: npm install --global @sanity/cli Upgrade Sanity Studio with: sanity upgrade ### Notable changes - node.js version 10 or above is now required to run the Sanity CLI and supporting modules. This is in line with the node.js LTS ("long term support") having been dropped for node 8 and below. ### Notable bugfixes - Fixed an upstream dependency (terser) crashing in the latest version - Fixed a few typescript definition errors in the Sanity client ### 📓 Full changelog | Author | Message | Commit | | ----------------- | ------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- | | Espen Hovlandsdal | [chore] Require node 10 across packages ([#1805](https://togithub.com/sanity-io/sanity/issues/1805)) | [`4e5c2de`](https://togithub.com/sanity-io/sanity/commit/4e5c2de11) | | Espen Hovlandsdal | [client] Fix typings for non-document mutation results ([#1813](https://togithub.com/sanity-io/sanity/issues/1813)) | [`f56152c`](https://togithub.com/sanity-io/sanity/commit/f56152c99) | | Espen Hovlandsdal | [client] Fix typings for constructor options (useProjectHostname) ([#1812](https://togithub.com/sanity-io/sanity/issues/1812)) | [`c4b2cf0`](https://togithub.com/sanity-io/sanity/commit/c4b2cf047) | | Espen Hovlandsdal | [client] Fix incorrect return value type for transaction.serialize() ([#1811](https://togithub.com/sanity-io/sanity/issues/1811)) | [`f9dcf13`](https://togithub.com/sanity-io/sanity/commit/f9dcf13f1) | | Espen Hovlandsdal | [core] Lock terser dependency to 4.6.7 | [`a68d619`](https://togithub.com/sanity-io/sanity/commit/a68d619a0) | ### [`v1.149.5`](https://togithub.com/sanity-io/sanity/releases/v1.149.5) [Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.149.4...v1.149.5) Upgrade the Command Line Interface (CLI) with: npm install --global @sanity/cli Upgrade Sanity Studio with: sanity upgrade ### 🐛 Notable bugfixes This release fixes an issue that triggered a flood of console warnings in Studios using in React 16.13. ### 📓 Full changelog | Author | Message | Commit | | ----------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- | | Bjørge Næss | [chore] Quickfix TS compile order issue ([#1794](https://togithub.com/sanity-io/sanity/issues/1794)) | [`20e8e8d`](https://togithub.com/sanity-io/sanity/commit/20e8e8d1e) | | Bjørge Næss | [base] Improve scheduling of document action state rendering ([#1796](https://togithub.com/sanity-io/sanity/issues/1796)) | [`6da6802`](https://togithub.com/sanity-io/sanity/commit/6da680232) | ### [`v1.149.4`](https://togithub.com/sanity-io/sanity/releases/v1.149.4) [Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.149.3...v1.149.4) Upgrade the Command Line Interface (CLI) with: npm install --global @sanity/cli Upgrade Sanity Studio with: sanity upgrade ### 🐛 Notable bugfixes - Fixed a display bug where the toolbar for the Portable Text editor would be hidden until focus was given to the editor. - Fixed an issue where the name of a type you were editing as an element in an array didn't show ### 👏 Notable improvements - A ground up rewrite of the gulp script used by contributors during development, addressing several stability and performance issues. ### 📓 Full changelog | Author | Message | Commit | | -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- | | Per-Kristian Nordnes | Fix toolbar display bugs ([#1765](https://togithub.com/sanity-io/sanity/issues/1765)) | [`29fa828`](https://togithub.com/sanity-io/sanity/commit/29fa828eb) | | Espen Hovlandsdal | [desk-tool] Fix incorrect schema type property for validation list ([#1766](https://togithub.com/sanity-io/sanity/issues/1766)) | [`eb3a763`](https://togithub.com/sanity-io/sanity/commit/eb3a7635f) | | Espen Hovlandsdal | [schema] Validate object type previews ([#1763](https://togithub.com/sanity-io/sanity/issues/1763)) | [`7fa1d52`](https://togithub.com/sanity-io/sanity/commit/7fa1d5222) | | Per-Kristian Nordnes | [test-studio] Upgrade sanity-plugin-dashboard-widget-document-list | [`bcbc12f`](https://togithub.com/sanity-io/sanity/commit/bcbc12f18) | | Espen Hovlandsdal | [dashboard] Use observables for fetching, unsubscribe on unmount | [`076848f`](https://togithub.com/sanity-io/sanity/commit/076848ffc) | | Espen Hovlandsdal | [studio-hints] Use observables for fetching, unsubscribe on unmount | [`070d7e1`](https://togithub.com/sanity-io/sanity/commit/070d7e126) | | Thomas Drevon | [test-studio] Add a type for better testing | [`042f8a7`](https://togithub.com/sanity-io/sanity/commit/042f8a7a3) | | Thomas Drevon | [components] Fix indent | [`1825947`](https://togithub.com/sanity-io/sanity/commit/182594781) | | Thomas Drevon | [form-builder] Extract title assembly logic to a function | [`922e903`](https://togithub.com/sanity-io/sanity/commit/922e903dd) | | Thomas Drevon | [schema] Use name as title if title is missing | [`8c70195`](https://togithub.com/sanity-io/sanity/commit/8c7019525) | | Thomas Drevon | [test-studio] Expand schema to verify object title is working | [`be314e6`](https://togithub.com/sanity-io/sanity/commit/be314e6e5) | | Bjørge Næss | [preview] Fetch all fields specified in preview.select even when requesting only a specific preview field ([#1780](https://togithub.com/sanity-io/sanity/issues/1780)) | [`f89d8d7`](https://togithub.com/sanity-io/sanity/commit/f89d8d70a) | | vicbergquist | [cli] fix default dataset settings crashing CLI on existing projects ([#1777](https://togithub.com/sanity-io/sanity/issues/1777)) | [`5dfe7d6`](https://togithub.com/sanity-io/sanity/commit/5dfe7d6a9) | | Espen Hovlandsdal | [block-tools] Fix test to be in line with new schema changes ([#1783](https://togithub.com/sanity-io/sanity/issues/1783)) | [`6d581a4`](https://togithub.com/sanity-io/sanity/commit/6d581a4c1) | | Bjørge Næss | [chore] Rewrite gulpfile ([#1781](https://togithub.com/sanity-io/sanity/issues/1781)) | [`7e0893b`](https://togithub.com/sanity-io/sanity/commit/7e0893b25) | ### [`v1.149.3`](https://togithub.com/sanity-io/sanity/releases/v1.149.3) [Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.149.2...v1.149.3) Upgrade the Command Line Interface (CLI) with: npm install --global @sanity/cli Upgrade Sanity Studio with: sanity upgrade ### 🐛 Notable bugfixes - Fixed a bug that made it impossible to update any field after restoring an older revisions of a document with the `liveEdit` flag enabled. ### 📓 Full changelog | Author | Message | Commit | | ----------- | ------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------- | | Bjørge Næss | [base] Make sure restoring from history takes liveEdit into account ([#1762](https://togithub.com/sanity-io/sanity/issues/1762)) | [`c7e77c8`](https://togithub.com/sanity-io/sanity/commit/c7e77c89b) | ### [`v1.149.2`](https://togithub.com/sanity-io/sanity/releases/v1.149.2) [Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.149.1...v1.149.2) Upgrade the Command Line Interface (CLI) with: npm install --global @sanity/cli Upgrade Sanity Studio with: sanity upgrade ### 🐛 Notable bugfixes - Fixed a bug where deploying a GraphQL API would fail on case-sensitive file systems - Fixed a bug in the typescript definitions for the Sanity client ### 📓 Full changelog | Author | Message | Commit | | ----------------- | ---------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- | | Tom Seisums | [client] Fixed default return type of `fetch()` ([#1760](https://togithub.com/sanity-io/sanity/issues/1760)) | [`5cae442`](https://togithub.com/sanity-io/sanity/commit/5cae442e0) | | Espen Hovlandsdal | [core] Fix incorrect filename casing on import statement | [`0a766fd`](https://togithub.com/sanity-io/sanity/commit/0a766fd14) | ### [`v1.149.1`](https://togithub.com/sanity-io/sanity/releases/v1.149.1) [Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.149.0...v1.149.1) Upgrade Sanity Studio with: sanity upgrade ### 🐛 Notable bugfixes - Fixed a missing interface in theclient typescript definitions ### 📓 Full changelog | Author | Message | Commit | | ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------------------------------------- | | Bjørge Næss | [chore] Prevent lockfiles from being generated on npm install + lerna bootstrap ([#1756](https://togithub.com/sanity-io/sanity/issues/1756)) | [`dc7d60d`](https://togithub.com/sanity-io/sanity/commit/dc7d60de0) | | Bjørge Næss | [chore] Remove storybook from test-studio ([#1757](https://togithub.com/sanity-io/sanity/issues/1757)) | [`68e42ef`](https://togithub.com/sanity-io/sanity/commit/68e42efbc) | | Espen Hovlandsdal | [client] Typings: Including missing SanityImagePalette definition ([#1759](https://togithub.com/sanity-io/sanity/issues/1759)) | [`96cb157`](https://togithub.com/sanity-io/sanity/commit/96cb157b5) | ### [`v1.149.0`](https://togithub.com/sanity-io/sanity/releases/v1.149.0) [Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.148.7...v1.149.0) Upgrade the Command Line Interface (CLI) with: npm install --global @sanity/cli Upgrade Sanity Studio with: sanity upgrade ### ✨ Highlights #### Announcing GraphQL out of beta! [Read our blog post: “Introducing our new GraphQL API”](https://www.sanity.io/blog/introducing-our-new-graphql-api) We have taken GraphQL out of beta, and introduced a new _generation_ of the schema. The old beta generation will still be available and work as before. Some of the highlights of the new API: - Improved filtering options on documents, and nested objects - Sorting on multiple fields - Multiple endpoint support for ease of transitioning between two different data models and generations - When deploying a GraphQL endpoint, you are now warned about potential breaking changes in your schema To use the new generation of the API, update the Sanity CLI and run `sanity graphql deploy`. If you have already deployed a GraphQL API, you might want to deploy the new generation with a tag: `sanity graphql deploy --tag next` This will deploy a new endpoint using the `next` tag. Since you now can deploy multiple endpoints, we saw the need for a command in the CLI to list out all your deployed endpoints. This can be done by simply running `sanity graphql list`. ### 🐛 Notable bugfixes - Fixed a problem where pluralizing generated types would cause naming collisions ### 📓 Full changelog | Author | Message | Commit | | ----------------- | ----------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- | | Anders Stensaas | [core] GraphQL: Add a tag option when interacting with GraphQL endpoints ([#1606](https://togithub.com/sanity-io/sanity/issues/1606)) | [`0ce072f`](https://togithub.com/sanity-io/sanity/commit/0ce072fc8) | | Anders Stensaas | [core] GraphQL: Explicitly add all filters for all types for clarity | [`c318fde`](https://togithub.com/sanity-io/sanity/commit/c318fde70) | | Anders Stensaas | [core] GraphQL: Dynamically create filters for all types and objects | [`d6a3f6b`](https://togithub.com/sanity-io/sanity/commit/d6a3f6ba7) | | Anders Stensaas | [core] GraphQL: Fix a bug where the references function wasn't added due to strange syntax | [`1366a9a`](https://togithub.com/sanity-io/sanity/commit/1366a9a54) | | Espen Hovlandsdal | [core] GraphQL: Check for breaking changes when deploying GraphQL API ([#1701](https://togithub.com/sanity-io/sanity/issues/1701)) | [`0b824d8`](https://togithub.com/sanity-io/sanity/commit/0b824d8f2) | | Anders Stensaas | [core] GraphQL: Dynamically generate GraphQL type sortings | [`844eb50`](https://togithub.com/sanity-io/sanity/commit/844eb5035) | | Espen Hovlandsdal | [core] GraphQL: Allow deploying legacy GraphQL API generation | [`ef6c0ff`](https://togithub.com/sanity-io/sanity/commit/ef6c0ff40) | | Espen Hovlandsdal | [cli] Add newline before printed CLI errors | [`abad5d5`](https://togithub.com/sanity-io/sanity/commit/abad5d524) | | Espen Hovlandsdal | [blog-studio] Include form-builder configuration file | [`6c5181a`](https://togithub.com/sanity-io/sanity/commit/6c5181a02) | | Espen Hovlandsdal | [core] GraphQL: Handle text and email types as strings | [`e4a3183`](https://togithub.com/sanity-io/sanity/commit/e4a31835a) | | Espen Hovlandsdal | [core] GraphQL: Use StringFilter for URLs | [`9e6f69c`](https://togithub.com/sanity-io/sanity/commit/9e6f69c21) | | Espen Hovlandsdal | [core] GraphQL: Include reference information on field filters | [`ee57ee0`](https://togithub.com/sanity-io/sanity/commit/ee57ee00d) | | Espen Hovlandsdal | [core] GraphQL: Set `isConstraintFilter` property on filters | [`e9d8d35`](https://togithub.com/sanity-io/sanity/commit/e9d8d356e) | | Espen Hovlandsdal | [core] GraphQL: Move document filters to separate `_` property/type | [`7cdac71`](https://togithub.com/sanity-io/sanity/commit/7cdac710b) | | Espen Hovlandsdal | [core] GraphQL: Move document filters to top of fields list | [`26264f6`](https://togithub.com/sanity-io/sanity/commit/26264f6da) | | Espen Hovlandsdal | [core] GraphQL: Don't include sorting for reference fields | [`65309f9`](https://togithub.com/sanity-io/sanity/commit/65309f91a) | | Espen Hovlandsdal | [core] GraphQL: Don't pluralize type queries | [`586dde9`](https://togithub.com/sanity-io/sanity/commit/586dde9cf) | | Espen Hovlandsdal | [core] GraphQL: Exclude unions from filter generation | [`36c9a10`](https://togithub.com/sanity-io/sanity/commit/36c9a10dc) | | Espen Hovlandsdal | [core] GraphQL: Use lowercase comparators in v2 schemas | [`ba6336e`](https://togithub.com/sanity-io/sanity/commit/ba6336e7d) | | Knut Melvær | [core] GraphQL: Specify default generation in help text | [`6079049`](https://togithub.com/sanity-io/sanity/commit/607904924) | | Anders Stensaas | [core] GraphQL: Tweak feedback from CLI when deleting and deploying GraphQL endpoints | [`37346a7`](https://togithub.com/sanity-io/sanity/commit/37346a706) | | Anders Stensaas | [core] GraphQL: Rename from "vX" to "genX" in GraphQL | [`a64a631`](https://togithub.com/sanity-io/sanity/commit/a64a63160) | | Anders Stensaas | [core] GraphQL: Add a CLI command for listing out deployed GraphQL endpoints | [`d5eb7d3`](https://togithub.com/sanity-io/sanity/commit/d5eb7d306) | | Anders Stensaas | [core] GraphQL: Format output from graphql list command a little better | [`7a27fe4`](https://togithub.com/sanity-io/sanity/commit/7a27fe459) | | Anders Stensaas | [core] GraphQL: Remove in-line mock data when testing graphql list CLI command | [`37771b1`](https://togithub.com/sanity-io/sanity/commit/37771b1cb) | | Anders Stensaas | [core] GraphQL: Fix a problem where the no endpoints error message was shown regardless of results | [`21641c4`](https://togithub.com/sanity-io/sanity/commit/21641c45a) | | Anders Stensaas | [core] GraphQL: Align help text of graphql list command with other optionless commands | [`3670bac`](https://togithub.com/sanity-io/sanity/commit/3670bacee) | | Anders Stensaas | [core] GraphQL: Remove special handling of 404 in graphql list command | [`7b026e0`](https://togithub.com/sanity-io/sanity/commit/7b026e018) | | Anders Stensaas | [core] GraphQL: Fix an issue where the URL replacer matched on the wrong regex | [`bbc6945`](https://togithub.com/sanity-io/sanity/commit/bbc69458a) | ### [`v1.148.7`](https://togithub.com/sanity-io/sanity/releases/v1.148.7) [Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.148.5...v1.148.7) Upgrade the Command Line Interface (CLI) with: npm install --global @sanity/cli Upgrade Sanity Studio with: sanity upgrade ### 🐛 Notable bugfixes - Fixed client typescript definition errors ### 📓 Full changelog | Author | Message | Commit | | ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- | | Corey Ward | [validation] Fix invalid `disableArrayWarning` reference ([#1572](https://togithub.com/sanity-io/sanity/issues/1572)) | [`cbb0bed`](https://togithub.com/sanity-io/sanity/commit/cbb0bedf7) | | Daniel Roe | [client] Fix typescript definition errors ([#1751](https://togithub.com/sanity-io/sanity/issues/1751)) | [`997fb86`](https://togithub.com/sanity-io/sanity/commit/997fb8642) | | Espen Hovlandsdal | [base] Add missing [@sanity/generate-help-url](https://togithub.com/sanity/generate-help-url) dependency ([#1753](https://togithub.com/sanity-io/sanity/issues/1753)) | [`14e1776`](https://togithub.com/sanity-io/sanity/commit/14e1776d4) | ### [`v1.148.5`](https://togithub.com/sanity-io/sanity/releases/v1.148.5) [Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.148.3...v1.148.5) Upgrade the Command Line Interface (CLI) with: npm install --global @sanity/cli Upgrade Sanity Studio with: sanity upgrade ### ✨ Highlights #### Studio performance and stability improvements We have done a couple of stability fixes and performance fixes that should improve the overall editing experience. #### Groundwork for upcoming features We have also done a lot of restructuring of the internal Studio codebase to enable some long awaited features. Stay tuned! ### 📓 Full changelog | Author | Message | Commit | | ----------------- | ------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- | | Bjørge Næss | [chore] Tidy up package json deps and versions | [`bb9baf8`](https://togithub.com/sanity-io/sanity/commit/bb9baf86a) | | Bjørge Næss | [chore] Disable noUnusedLocals tsconfig | [`d2501a1`](https://togithub.com/sanity-io/sanity/commit/d2501a1e5) | | Bjørge Næss | [base] Inline document store | [`a71c343`](https://togithub.com/sanity-io/sanity/commit/a71c343e7) | | Bjørge Næss | [document-store] Remove package (for now) | [`02f81e9`](https://togithub.com/sanity-io/sanity/commit/02f81e9b6) | | Bjørge Næss | [desk-tool] Enable TypeScript | [`9cb1ec0`](https://togithub.com/sanity-io/sanity/commit/9cb1ec0dc) | | Bjørge Næss | [form-builder] Make FormField and Object Field pure components | [`06d11c3`](https://togithub.com/sanity-io/sanity/commit/06d11c37b) | | Bjørge Næss | [mutator] Make commit async and make sure onConsistencyChanged emits proper state updates | [`f49ada0`](https://togithub.com/sanity-io/sanity/commit/f49ada03a) | | Bjørge Næss | [mutator] Export MutationParams type | [`68a80c9`](https://togithub.com/sanity-io/sanity/commit/68a80c9d3) | | Bjørge Næss | [base] Add infrastructure for document-actions | [`87d9299`](https://togithub.com/sanity-io/sanity/commit/87d929992) | | Bjørge Næss | [base] Allow passing initialValue to patch | [`407f675`](https://togithub.com/sanity-io/sanity/commit/407f675e9) | | Bjørge Næss | [base] Improve document operation execution pipeline | [`f82045c`](https://togithub.com/sanity-io/sanity/commit/f82045c4f) | | Bjørge Næss | [react-hooks] Add [@sanity/react-hooks](https://togithub.com/sanity/react-hooks) package | [`a556ab4`](https://togithub.com/sanity-io/sanity/commit/a556ab4c4) | | Bjørge Næss | [form-builder] Deprecate checkoutPair and move receiveEvent to SanityFormBuilderContext | [`78f4aef`](https://togithub.com/sanity-io/sanity/commit/78f4aefe3) | | Bjørge Næss | [desk-tool] Implement desk tool actions on top of new actions/operations infra | [`6ad1b44`](https://togithub.com/sanity-io/sanity/commit/6ad1b44d4) | | Bjørge Næss | [desk-tool] Add a component for showing document operation results | [`152a754`](https://togithub.com/sanity-io/sanity/commit/152a75439) | | Bjørge Næss | [desk-tool] Pass through keyboard shortcuts not handled by document actions | [`5e48965`](https://togithub.com/sanity-io/sanity/commit/5e48965fd) | | Bjørge Næss | [test-studio] Add an actions playground tool | [`54771f3`](https://togithub.com/sanity-io/sanity/commit/54771f37b) | | Bjørge Næss | [test-studio] Add some custom document actions and badges to test-studio | [`7667f97`](https://togithub.com/sanity-io/sanity/commit/7667f9787) | | Bjørge Næss | [base/desk-tool] Enable autocommit by default | [`ba253ef`](https://togithub.com/sanity-io/sanity/commit/ba253ef71) | | Bjørge Næss | [desk-tool] Pass initialValue to patch | [`ab61f08`](https://togithub.com/sanity-io/sanity/commit/ab61f0802) | | Espen Hovlandsdal | [desk-tool] Only reset state when mounting/unmounting | [`6415ee7`](https://togithub.com/sanity-io/sanity/commit/6415ee71d) | | Bjørge Næss | [desk-tool] Make loading state dependent on connection state | [`832b66b`](https://togithub.com/sanity-io/sanity/commit/832b66bb1) | | Bjørge Næss | [react-hooks] Change return value from useConnectionState to connected/connecting/reconnecting | [`f952dad`](https://togithub.com/sanity-io/sanity/commit/f952dadf1) | | Bjørge Næss | [desk-tool] Prevent publish action component from publishing before sync/validation has completed | [`8690d43`](https://togithub.com/sanity-io/sanity/commit/8690d43bc) | | Bjørge Næss | [desk-tool] Edit snackbar messages | [`bb174a9`](https://togithub.com/sanity-io/sanity/commit/bb174a9e1) | | Espen Hovlandsdal | [desk-tool] Fix history being stuck in loading mode after restore | [`133f67f`](https://togithub.com/sanity-io/sanity/commit/133f67ff7) | | Espen Hovlandsdal | [structure] Resolve intents based on documentListItem IDs if possible | [`bd34ce1`](https://togithub.com/sanity-io/sanity/commit/bd34ce1c6) | ### [`v1.148.3`](https://togithub.com/sanity-io/sanity/releases/v1.148.3) [Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.148.2...v1.148.3) Upgrade the Command Line Interface (CLI) with: npm install --global @sanity/cli Upgrade Sanity Studio with: sanity upgrade ### ✨ Highlights #### TypeScript definitions for [@sanity/client](https://togithub.com/sanity/client) `@sanity/client` now has TypeScript support, including [TSdoc](https://togithub.com/microsoft/tsdoc) for methods. ### 🐛 Notable bugfixes - Fixed a bug where an extra undo step was made when deleting everything inside the Portable Text editor. - You can now paste text from Notion.so into the Portable Text editor. - `@sanity/block-tools` `htmlToBlocks` will now normalize the produced content. Objects are given keys and adjecent spans with similar marks will be merged. ### 📓 Full changelog | Author | Message | Commit | | -------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- | | Bjørge Næss | [chore] Add ZEIT Now deployment for test-studio ([#1739](https://togithub.com/sanity-io/sanity/issues/1739)) | [`eed05d2`](https://togithub.com/sanity-io/sanity/commit/eed05d20c) | | Per-Kristian Nordnes | [block-tools] htmlToBlocks will now normalize blocks ([#1732](https://togithub.com/sanity-io/sanity/issues/1732)) | [`31df4e0`](https://togithub.com/sanity-io/sanity/commit/31df4e0bd) | | Espen Hovlandsdal | [observable] Add typescript definitions | [`da4561a`](https://togithub.com/sanity-io/sanity/commit/da4561ac8) | | Espen Hovlandsdal | [client] Add typescript definitions | [`cc60002`](https://togithub.com/sanity-io/sanity/commit/cc60002b7) | | Espen Hovlandsdal | [client] Allow overriding response types in typings | [`0b69cc2`](https://togithub.com/sanity-io/sanity/commit/0b69cc265) | | Per-Kristian Nordnes | [block-tools] Test for doc.body.firstElementChild before using it ([#1734](https://togithub.com/sanity-io/sanity/issues/1734)) | [`6fa6032`](https://togithub.com/sanity-io/sanity/commit/6fa60320d) | | Per-Kristian Nordnes | [form-builder] Don't put placeholder operation into undo step ([#1733](https://togithub.com/sanity-io/sanity/issues/1733)) | [`853673e`](https://togithub.com/sanity-io/sanity/commit/853673eb8) | ### [`v1.148.2`](https://togithub.com/sanity-io/sanity/releases/v1.148.2) [Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.148.1...v1.148.2) Upgrade the Command Line Interface (CLI) with: npm install --global @sanity/cli Upgrade Sanity Studio with: sanity upgrade Rolling back some regressions for the publish and restore actions introduced in 1.148.0. Sorry for the inconvenience! ### 📓 Full changelog | Author | Message | Commit | | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- | | Bjørge Næss | Revert [`f0375e9`](https://togithub.com/sanity-io/sanity/commit/f0375e933)..[`496103a`](https://togithub.com/sanity-io/sanity/commit/496103a56) | [`7b709f6`](https://togithub.com/sanity-io/sanity/commit/7b709f639) | | Bjørge Næss | Add missing dependency | [`ae94528`](https://togithub.com/sanity-io/sanity/commit/ae9452862) | ### [`v1.148.1`](https://togithub.com/sanity-io/sanity/releases/v1.148.1) [Compare Source](https://togithub.com/sanity-io/sanity/compare/v1.148.0...v1.148.1) Upgrade the Command Line Interface (CLI) with: npm install --global @sanity/cli Upgrade Sanity Studio with: sanity upgrade Rolling back some regressions for the publish and restore actions introduced in 1.148.0. Sorry for the inconvenience! ### 📓 Full changelog | Author | Message | Commit | | ----------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- | | Bjørge Næss | Revert [`f0375e9`](https://togithub.com/sanity-io/sanity/commit/f0375e933)..[`496103a`](https://togithub.com/sanity-io/sanity/commit/496103a56) | [`7b709f6`](https://togithub.com/sanity-io/sanity/commit/7b709f639) | | Bjørge Næss | Add missing dependency | [`ae94528`](https://togithub.com/sanity-io/sanity/commit/ae9452862) | ### [`v1.148.0`](https://togithub.com/sanity-io/sanity/releases/v1.148.0) [Compare Source](https://togithub.com/sanity-io/sanity/compare/v0.147.8...v1.148.0) Upgrade the Command Line Interface (CLI) with: npm install --global @sanity/cli Upgrade Sanity Studio with: sanity upgrade ### ✨ Highlights #### Moving from 0.x to 1.x In this release we have bumped the official `@sanity`-packages on npm from `v0.147` to `v1.148`. Normally, a major version bump indicates breaking/non backwards compatible changes, but in this case everything that used to work with the previous release should also work with this release. Read more about this "major non-event" and our position on breaking changes [in our blog post](https://www.sanity.io/blog/announcing-a-major-non-event). #### TypeScript support for Sanity Studio Sanity Studio and the Sanity CLI now supports TypeScript. [Go to the documentation](https://www.sanity.io/docs/using-typescript-in-sanity-studio) to learn how to get started. #### Studio performance and stability improvements We have also done a couple of stability fixes and performance fixes that should improve the overall editing experience. #### Groundwork for upcoming features We have also done a lot of restructuring of the internal Studio codebase to enable some long awaited features. Stay tuned! ### 📓 Full changelog | Author | Message | Commit | | -------------------- | ----------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- | | Espen Hovlandsdal | [all] Remove unused interdependencies ([#1700](https://togithub.com/sanity-io/sanity/issues/1700)) | [`657f8f8`](https://togithub.com/sanity-io/sanity/commit/657f8f85f) | | Bjørge Næss | Make mutator/perf-script runnable from node | [`e63949e`](https://togithub.com/sanity-io/sanity/commit/e63949e34) | | Bjørge Næss | [chore] Add script for updating licenses | [`3255b15`](https://togithub.com/sanity-io/sanity/commit/3255b1596) | | Bjørge Næss | [chore] Update license files | [`af81a27`](https://togithub.com/sanity-io/sanity/commit/af81a2778) | | Espen Hovlandsdal | [form-builder] Reuse empty markers array if none are present ([#1709](https://togithub.com/sanity-io/sanity/issues/1709)) | [`518bec1`](https://togithub.com/sanity-io/sanity/commit/518bec11d) | | Espen Hovlandsdal | [form-builder] Use shallow equality check on path property ([#1708](https://togithub.com/sanity-io/sanity/issues/1708)) | [`a472da5`](https://togithub.com/sanity-io/sanity/commit/a472da5f7) | | Espen Hovlandsdal | [preview] Add support for extracting text from portable text ([#1715](https://togithub.com/sanity-io/sanity/issues/1715)) | [`d1a8a2f`](https://togithub.com/sanity-io/sanity/commit/d1a8a2f93) | | Per-Kristian Nordnes | [form-builder] Fix type error ([#1720](https://togithub.com/sanity-io/sanity/issues/1720)) | [`d5f540f`](https://togithub.com/sanity-io/sanity/commit/d5f540f89) | | Bjørge Næss | [form-builder] Remove deprecated function | [`815775b`](https://togithub.com/sanity-io/sanity/commit/815775bbc) | | Bjørge Næss | [base] Enable TypeScript | [`f0375e9`](https://togithub.com/sanity-io/sanity/commit/f0375e933) | | Bjørge Næss | [base] Inline document store | [`445b16d`](https://togithub.com/sanity-io/sanity/commit/445b16d07) | | Bjørge Næss | [document-store] Remove package (for now) | [`360e26d`](https://togithub.com/sanity-io/sanity/commit/360e26dc4) | | Bjørge Næss | [desk-tool] Enable TypeScript | [`6f89fe3`](https://togithub.com/sanity-io/sanity/commit/6f89fe3c3) | | Bjørge Næss | [form-builder] Make FormField and Object Field pure components | [`4eac915`](https://togithub.com/sanity-io/sanity/commit/4eac91562) | | Bjørge Næss | [mutator] Make commit async and make sure onConsistencyChanged emits proper state updates | [`ba588a9`](https://togithub.com/sanity-io/sanity/commit/ba588a9fa) | | Bjørge Næss | [mutator] Export MutationParams type | [`0bb5c65`](https://togithub.com/sanity-io/sanity/commit/0bb5c6520) | | Bjørge Næss | [base] Add infrastructure for document-actions | [`d10a641`](https://togithub.com/sanity-io/sanity/commit/d10a64176) | | Bjørge Næss | [react-hooks] Add [@sanity/react-hooks](https://togithub.com/sanity/react-hooks) package | [`a8a51db`](https://togithub.com/sanity-io/sanity/commit/a8a51dbf7) | | Bjørge Næss | [form-builder] Deprecate checkoutPair and move receiveEvent to SanityFormBuilderContext | [`ab9ee83`](https://togithub.com/sanity-io/sanity/commit/ab9ee8365) | | Bjørge Næss | [desk-tool] Implement desk tool actions on top of new actions/operations infra | [`5a16ee2`](https://togithub.com/sanity-io/sanity/commit/5a16ee258) | | Bjørge Næss | [desk-tool] Add a component for showing document operation results | [`68e5e80`](https://togithub.com/sanity-io/sanity/commit/68e5e8020) | | Bjørge Næss | [test-studio] Add an actions playground tool | [`c4451ae`](https://togithub.com/sanity-io/sanity/commit/c4451ae07) | | Bjørge Næss | [test-studio] Add some custom document actions and badges to test-studio | [`496103a`](https://togithub.com/sanity-io/sanity/commit/496103a56) | | Espen Hovlandsdal | [core] Add support for typescript in studio | [`16f5cf0`](https://togithub.com/sanity-io/sanity/commit/16f5cf0a2) | | Espen Hovlandsdal | [base] Include typescript definition stubs for parts + css modules | [`ccd5524`](https://togithub.com/sanity-io/sanity/commit/ccd552459) | | Espen Hovlandsdal | [cli] Include tsconfig in newly initialized projects | [`8f86894`](https://togithub.com/sanity-io/sanity/commit/8f868945d) | | Bjørge Næss | [server] Add default extensions to webpack config too | [`22db932`](https://togithub.com/sanity-io/sanity/commit/22db93246) | | Bjørge Næss | [base] Make part declaration work for named exports | [`461ca48`](https://togithub.com/sanity-io/sanity/commit/461ca4802) | | Knut Melvær | [chore] Small improvements to release notes script | [`9d0a414`](https://togithub.com/sanity-io/sanity/commit/9d0a4146b) | ### [`v0.147.8`](https://togithub.com/sanity-io/sanity/releases/v0.147.8) [Compare Source](https://togithub.com/sanity-io/sanity/compare/v0.147.6...v0.147.8) Upgrade the Command Line Interface (CLI) with npm install --global @sanity/cli Upgrade the Content Studio with: sanity upgrade ### ✨ Highlights #### Improved performance of import/export The command line tools for importing and exporting datasets have had several improvements to performance and stability, especially when working with a large number of assets. ### 🐛 Notable bugfixes - Fixed an issue where many people editing the same document would occasionally fail - Fixed an issue where conflicting document IDs would be retried when importing - Fixed an issue where the progress indication for importing assets would show them as complete too early ### 📓 Full changelog | Author | Message | Commit | | -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- | | Espen Hovlandsdal | [groq] Add typescript definition for tagged template literal ([#1682](https://togithub.com/sanity-io/sanity/issues/1682)) | [`6f33e94`](https://togithub.com/sanity-io/sanity/commit/6f33e94f8) | | Per-Kristian Nordnes | [form-builder] Block editor paste plugin: Join plain text back as string | [`0511fb5`](https://togithub.com/sanity-io/sanity/commit/0511fb5ee) | | Espen Hovlandsdal | [export] Use HTTP/HTTPS agent with keep-alive | [`247c8d8`](https://togithub.com/sanity-io/sanity/commit/247c8d8ec) | | j33ty | [export] Add concurrency flag to export command | [`190d378`](https://togithub.com/sanity-io/sanity/commit/190d37855) | | Espen Hovlandsdal | [core] Rephrase help text for dataset export | [`19add28`](https://togithub.com/sanity-io/sanity/commit/19add2804) | | Espen Hovlandsdal | [export] Add validation for lower concurrency limit | [`c7ea9ef`](https://togithub.com/sanity-io/sanity/commit/c7ea9efb9) | | Espen Hovlandsdal | [import] Bump asset upload concurrency to 8, limit to 12 | [`fe57e83`](https://togithub.com/sanity-io/sanity/commit/fe57e83e2) | | Espen Hovlandsdal | [export] Rename concurrency flag to asset-concurrency | [`ffb0474`](https://togithub.com/sanity-io/sanity/commit/ffb047496) | | Espen Hovlandsdal | [export] Keep track of pending URLs | [`3ba5fcd`](https://togithub.com/sanity-io/sanity/commit/3ba5fcd40) | | Espen Hovlandsdal | [export] Don't count pending downloads as completed | [`18ff6c5`](https://togithub.com/sanity-io/sanity/commit/18ff6c52c) | | Knut Melvær | [dashboard] Fix spelling error | [`864c73f`](https://togithub.com/sanity-io/sanity/commit/864c73fe2) | | Simen Svale Skogsrud | [mutator] Fixes the problem where diff-match-patch and inc-dec would yield exceptions when targetting array indicies or attributes that did not exist | [`f44a5c0`](https://togithub.com/sanity-io/sanity/commit/f44a5c0dc) | | Espen Hovlandsdal | [import] Add --replace-assets flag to allow skipping sha1 check/reuse | [`e321aed`](https://togithub.com/sanity-io/sanity/commit/e321aed06) | | Espen Hovlandsdal | [import] Add validation of raw asset documents | [`179c15e`](https://togithub.com/sanity-io/sanity/commit/179c15e74) | | Espen Hovlandsdal | [import] Don't retry 409s (conflicts) when importing | [`03825e8`](https://togithub.com/sanity-io/sanity/commit/03825e8b7) | | Espen Hovlandsdal | [import] Add test for import of asset doc with no file present | [`004a501`](https://togithub.com/sanity-io/sanity/commit/004a50174) | | Victoria Bergquist | [cli] add error message when plugin name is invalid ([#1698](https://togithub.com/sanity-io/sanity/issues/1698)) | [`acd24db`](https://togithub.com/sanity-io/sanity/commit/acd24dbb5) | | Victoria Bergquist | [cli] improve debug command help text ([#1697](https://togithub.com/sanity-io/sanity/issues/1697)) | [`4ca8425`](https://togithub.com/sanity-io/sanity/commit/4ca842597) | ### [`v0.147.6`](https://togithub.com/sanity-io/sanity/releases/v0.147.6) [Compare Source](https://togithub.com/sanity-io/sanity/compare/v0.147.3...v0.147.6) Upgrade the Content Studio with: sanity upgrade ### ✨ Highlights #### 🔗 Fine-grained reference fields Reference fields can now be given an additional GROQ-filter to help constrain the search, making it easier to find the documents you are looking for. Note that this only helps the _search_, it does not guarantee that the referenced document will match the filter in the future. Read the documentation for the [reference type](https://www.sanity.io/docs/reference-type#options) to find out how to use this new functionality. #### ⚡ Faster loading of long lists The desk tool should now load the initial set of documents in a list faster than previously. When scrolling, it will load additional documents. We're working on further improving the performance of lists. ### 🐛 Notable bugfixes - Fixed bug where documents with numeric IDs would not be sorted correctly in desk tool - Fixed bug where unsetting an image or file field would not unset the `_type` property - Fixed bug where the experimental spaces feature would link to incorrect space in certain cases ### 📓 Full changelog | Author | Message | Commit | | ----------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------- | | Espen Hovlandsdal | [base] Maintain order of documents when collating drafts/published ([#1665](https://togithub.com/sanity-io/sanity/issues/1665)) | [`b92b6ac`](https://togithub.com/sanity-io/sanity/commit/b92b6ac43) | | Espen Hovlandsdal | [form-builder] Unset empty object when removing asset ([#1647](https://togithub.com/sanity-io/sanity/issues/1647)) | [`63964c7`](https://togithub.com/sanity-io/sanity/commit/63964c72e) | | Espen Hovlandsdal | [form-builder] Support additional filter to reference input | [`d90e42c`](https://togithub.com/sanity-io/sanity/commit/d90e42cea) | | Espen Hovlandsdal | [base] Include additional filter + params if passed | [`4a31a69`](https://togithub.com/sanity-io/sanity/commit/4a31a6941) | | Espen Hovlandsdal | [form-builder] Allow passing filter resolver function instead of string | [`67f9ef6`](https://togithub.com/sanity-io/sanity/commit/67f9ef61e) | | Espen Hovlandsdal | [schema] Validate reference filter and filterParams properties | [`0ff5cad`](https://togithub.com/sanity-io/sanity/commit/0ff5cad13) | | Espen Hovlandsdal | [desk-tool] Remove unused scrollTop handler | [`693c2e4`](https://togithub.com/sanity-io/sanity/commit/693c2e446) | | Espen Hovlandsdal | [base] Export query results observable from QueryContainer | [`686db3f`](https://togithub.com/sanity-io/sanity/commit/686db3f72) | | Espen Hovlandsdal | [desk-tool] Load partial document list before fetching full list | [`13385dd`](https://togithub.com/sanity-io/sanity/commit/13385ddbb) | | Espen Hovlandsdal | [desk-tool] Only load full list when scrolled to half-way point | [`a68394b`](https://togithub.com/sanity-io/sanity/commit/a68394b84) | | Espen Hovlandsdal | [desk-tool] Style loading/more documents component | [`f33a895`](https://togithub.com/sanity-io/sanity/commit/f33a895b8) | | Espen Hovlandsdal | [default-layout] Reload window when switching spaces ([#1674](https://togithub.com/sanity-io/sanity/issues/1674)) | [`a8267c6`](https://togithub.com/sanity-io/sanity/commit/a8267c6d5) | ### [`v0.147.3`](https://togithub.com/sanity-io/sanity/releases/v0.147.3) [Compare Source](https://togithub.com/sanity-io/sanity/compare/v0.147.0...v0.147.3) Upgrade the Command Line Interface (CLI) with: npm install --global @sanity/cli Upgrade the Content Studio with: sanity upgrade ### ✨ Highlights #### Hints mode The Sanity Studio now comes with an optional sidebar that is used for onboarding new developers. It can be opened and closed, and removed by configuring `sanity.json`. It will not appear in existing studios unless you enable it youself. It will be added as a default to the starters on [sanity.io/create](https://sanity.io/create).Renovate configuration
:date: Schedule: At any time (no schedule defined).
:vertical_traffic_light: Automerge: Enabled.
:recycle: Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
:ghost: Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR has been generated by WhiteSource Renovate. View repository job log here.