✨ 17th August 2021
What's New
A major milestone in the path to a General Availability
status for Keystone 6, this release includes:
- A new and improved GraphQL API 🎉 ✨
- Enhancements to Custom Admin UI Pages
- Better deletion notifications
- And more…
"@keystone-ui/notice": "4.0.1",
"@keystone-ui/segmented-control": "4.0.2",
"@keystone-ui/toast": "4.0.2",
"@keystone-next/admin-ui-utils": "5.0.6",
"@keystone-next/auth": "31.0.0",
"@keystone-next/cloudinary": "6.0.6",
"@keystone-next/fields": "14.0.0",
"@keystone-next/fields-document": "8.0.0",
"@keystone-next/keystone": "24.0.0",
"@keystone-next/testing": "1.1.1",
"@keystone-next/types": "24.0.0",
"@keystone-next/utils": "1.0.4",
A new & improved GraphQL API ✨
We’ve made the experience of working with Keystone’s GraphQL API easier to program and reason about:
- Queries: the names of top-level queries are now easier to understand. We also removed deprecated and unused legacy features.
- Filters: the arguments used in queries have been updated to accept a filter object for each field, rather than having all the filter options available at the top level.
- Mutations: all generated CRUD mutations have the same names and return types, but their inputs have changed.
- Input Types: we’ve updated the input types used for relationship fields in
update
andcreate
operations, removing obsolete options and making the syntax between the two operations easier to differentiate.
Upgrade guidance
We've written a complete guide to the improvements we've made, and it includes a checklist of the steps you need to take to upgrade your Keystone projects. Be sure to check it out!
💡 While there are a lot of changes to this API, if you approach the upgrade process systematically your experience should be pretty smooth. If you get stuck or have questions, reach out to us in the Keystone community slack to get the help you need.
Custom Admin UI Pages 📃
Our Custom Admin UI Pages guide has been expanded, with an example to make your custom pages look more like the Admin UI, as well as adding links to your custom pages from the Admin UI Navigation!
Improved Deletion Notifications 🗑
When items are deleted via the Admin UI, we now display all the items that were successfully deleted, and any that failed, instead of displaying multiple notifications without any context.
Deeper GraphQL Errors 🚧
A config.graphql.debug
option has been added, which can be used to control whether debug information such as stack traces are included in the errors returned by the GraphQL API.
Prisma Update ⬆️
Updated Prisma dependencies from 2.27.0
to 2.29.0
, check out the Prisma releases page for more details.
Credits 💫
Added option for Bearer
token auth when using session, thanks to @gautamsi!
Enjoying Keystone?
Star this repo 🌟 ☝️ or connect to Keystone on Twitter and in Slack.
View verbose release notes
Releases
@keystone-next/auth@31.0.0
Major Changes
-
#6211
d214e2f72
Thanks @mitchellhamilton! - The update mutations now acceptwhere
unique inputs instead of only anid
and thewhere
anddata
arguments are non-null.If you have a list called
Item
, the update mutations now look like this:type Mutation { updateItem(where: ItemWhereUniqueInput!, data: ItemUpdateInput!): Item updateItems(data: [ItemUpdateArgs!]!): [Item] } input ItemUpdateArgs { where: ItemWhereUniqueInput! data: ItemUpdateInput! }
Patch Changes
-
#6310
399561b27
Thanks @timleslie! - Updated dependencies to usemergeSchemas
from@graphql-tools/schema
, rather than its old location in@graphql-tools/merge
. You might see a reordering of the contents of yourgraphql.schema
file. -
Updated dependencies [
e9f3c42d5
,5cd8ffd6c
,1cbcf54cb
,a92169d04
,5cd8ffd6c
,b696a9579
,f3014a627
,092df6678
,5cd8ffd6c
,c2bb6a9a5
,6da56b80e
,4f4f0351a
,697efa354
,c7e331d90
,3a7a06b2c
,272b97b3a
,78dac764e
,399561b27
,9d361c1c8
,0dcb1c95b
,94435ffee
,5cd8ffd6c
,56044e2a4
,f46fd32b7
,874f2c405
,8ea4eed55
,e3fe6498d
,1030296d1
,3564b342d
,8b2d179b2
,e3fefafcc
,4d9f89f88
,686c0f1c4
,8187ea019
,d214e2f72
,f5e64af37
]:- @keystone-next/fields@14.0.0
- @keystone-next/keystone@24.0.0
- @keystone-next/types@24.0.0
- @keystone-ui/notice@4.0.1
- @keystone-next/admin-ui-utils@5.0.6
@keystone-next/fields@14.0.0
Major Changes
-
#6280
e9f3c42d5
Thanks @mitchellhamilton! - RemovedgqlType
option toautoIncrement
field type. The field type will now always be represented with anInt
in GraphQL -
#6196
5cd8ffd6c
Thanks @mitchellhamilton! - Removed_ListKeyMeta
and_toManyRelationshipFieldMeta
fields. You should uselistKeyCount
andtoManyRelationshipFieldCount
instead -
#6266
b696a9579
Thanks @mitchellhamilton! - Renamedfirst
argument in find many queries totake
to align with Prisma.type Query { users( where: UserWhereInput! = {} orderBy: [UserOrderByInput!]! = [] # previously was first: Int take: Int skip: Int! = 0 ): [User!] # ... } type User { # ... posts( where: PostWhereInput! = {} orderBy: [PostOrderByInput!]! = [] # previously was first: Int take: Int skip: Int! = 0 ): [Post!] # ... }
-
#6196
5cd8ffd6c
Thanks @mitchellhamilton! - Removedsearch
argument from the GraphQL API for finding many items, Lists/DB API and to-many relationship fields. You should usecontains
filters instead. -
#6095
272b97b3a
Thanks @mitchellhamilton! - Updated filters to be nested instead of flattened and add top-levelNOT
operator. See the Query Filter API docs and the upgrade guide for more information.query { posts(where: { title: { contains: "Something" } }) { title content } }
-
#6196
5cd8ffd6c
Thanks @mitchellhamilton! - RemovedsortBy
argument from the GraphQL API for finding many items, Lists/DB API and to-many relationship fields. You should useorderBy
instead. -
#6217
874f2c405
Thanks @mitchellhamilton! -disconnectAll
has been renamed todisconnect
in to-one relationship inputs and the olddisconnect
field has been removed. There are also seperate input types for create and update where the input for create doesn't havedisconnect
. It's also now required that if you provide a to-one relationship input, you must provide exactly one field to the input.If you have a list called
Item
, the to-one relationship inputs now look like this:input ItemRelateToOneForCreateInput { create: ItemCreateInput connect: ItemWhereUniqueInput } input ItemRelateToOneForUpdateInput { create: ItemCreateInput connect: ItemWhereUniqueInput disconnect: Boolean }
-
#6224
3564b342d
Thanks @mitchellhamilton! -disconnectAll
has been replaced byset
in to-many relationship inputs, the equivalent todisconnectAll: true
is nowset: []
. There are also seperate input types for create and update where the input for create doesn't havedisconnect
orset
. The inputs in the lists in the input field are now also non-null.If you have a list called
Item
, the to-many relationship inputs now look like this:input ItemRelateToManyForCreateInput { create: [ItemCreateInput!] connect: [ItemWhereUniqueInput!] } input ItemRelateToManyForUpdateInput { disconnect: [ItemWhereUniqueInput!] set: [ItemWhereUniqueInput!] create: [ItemCreateInput!] connect: [ItemWhereUniqueInput!] }
-
#6211
d214e2f72
Thanks @mitchellhamilton! - The update mutations now acceptwhere
unique inputs instead of only anid
and thewhere
anddata
arguments are non-null.If you have a list called
Item
, the update mutations now look like this:type Mutation { updateItem(where: ItemWhereUniqueInput!, data: ItemUpdateInput!): Item updateItems(data: [ItemUpdateArgs!]!): [Item] } input ItemUpdateArgs { where: ItemWhereUniqueInput! data: ItemUpdateInput! }
Patch Changes
-
#6237
4f4f0351a
Thanks @gwyneplaine! - Updated timestamp field to default time to 00:00 when no time is selected. -
#6197
4d9f89f88
Thanks @mitchellhamilton! - The generated CRUD queries, and some of the input types, in the GraphQL API have been renamed.If you have a list called
Item
, the query for multiple values,allItems
will be renamed toitems
. The query for a single value,Item
, will be renamed toitem
.Also, the input type used in the
updateItems
mutation has been renamed fromItemsUpdateInput
toItemUpdateArgs
. -
Updated dependencies [
5cd8ffd6c
,1cbcf54cb
,a92169d04
,5cd8ffd6c
,b696a9579
,f3014a627
,092df6678
,5cd8ffd6c
,c2bb6a9a5
,6da56b80e
,697efa354
,c7e331d90
,3a7a06b2c
,272b97b3a
,78dac764e
,399561b27
,9d361c1c8
,0dcb1c95b
,94435ffee
,5cd8ffd6c
,56044e2a4
,f46fd32b7
,874f2c405
,8ea4eed55
,e3fe6498d
,6cd7ab78e
,1030296d1
,3564b342d
,8b2d179b2
,e3fefafcc
,4d9f89f88
,686c0f1c4
,8187ea019
,d214e2f72
,f5e64af37
]:- @keystone-next/keystone@24.0.0
- @keystone-next/types@24.0.0
- @keystone-ui/toast@4.0.2
- @keystone-ui/segmented-control@4.0.2
- @keystone-next/admin-ui-utils@5.0.6
- @keystone-next/utils@1.0.4
@keystone-next/fields-document@8.0.0
Major Changes
-
#6095
272b97b3a
Thanks @mitchellhamilton! - Updated filters to be nested instead of flattened and add top-levelNOT
operator. See the Query Filter API docs and the upgrade guide for more information.query { posts(where: { title: { contains: "Something" } }) { title content } }
Patch Changes
-
#6250
a92169d04
Thanks @timleslie! - Updated internal type definitions. -
#6318
e985aa010
Thanks @raveling! - Updated the document editor's expanded view so that you can click on any of the empty space below the content to focus the editor -
#6207
69f47bfed
Thanks @timleslie! - Suppressed error logging during tests. -
#6197
4d9f89f88
Thanks @mitchellhamilton! - The generated CRUD queries, and some of the input types, in the GraphQL API have been renamed.If you have a list called
Item
, the query for multiple values,allItems
will be renamed toitems
. The query for a single value,Item
, will be renamed toitem
.Also, the input type used in the
updateItems
mutation has been renamed fromItemsUpdateInput
toItemUpdateArgs
. -
Updated dependencies [
e9f3c42d5
,5cd8ffd6c
,1cbcf54cb
,a92169d04
,5cd8ffd6c
,b696a9579
,f3014a627
,092df6678
,5cd8ffd6c
,6da56b80e
,4f4f0351a
,697efa354
,c7e331d90
,3a7a06b2c
,272b97b3a
,78dac764e
,399561b27
,9d361c1c8
,0dcb1c95b
,94435ffee
,5cd8ffd6c
,56044e2a4
,f46fd32b7
,874f2c405
,8ea4eed55
,e3fe6498d
,1030296d1
,3564b342d
,8b2d179b2
,e3fefafcc
,4d9f89f88
,686c0f1c4
,8187ea019
,d214e2f72
,f5e64af37
]:- @keystone-next/fields@14.0.0
- @keystone-next/keystone@24.0.0
- @keystone-next/types@24.0.0
- @keystone-next/admin-ui-utils@5.0.6
@keystone-next/keystone@24.0.0
Major Changes
-
#6196
5cd8ffd6c
Thanks @mitchellhamilton! - Removed_ListKeyMeta
and_toManyRelationshipFieldMeta
fields. You should uselistKeyCount
andtoManyRelationshipFieldCount
instead -
#6196
5cd8ffd6c
Thanks @mitchellhamilton! - Removed all arguments fromcontext.lists.List.count
andcontext.db.lists.List.count
except forwhere
. -
#6266
b696a9579
Thanks @mitchellhamilton! - Renamedfirst
argument in find many queries totake
to align with Prisma.type Query { users( where: UserWhereInput! = {} orderBy: [UserOrderByInput!]! = [] # previously was first: Int take: Int skip: Int! = 0 ): [User!] # ... } type User { # ... posts( where: PostWhereInput! = {} orderBy: [PostOrderByInput!]! = [] # previously was first: Int take: Int skip: Int! = 0 ): [Post!] # ... }
-
#6208
092df6678
Thanks @mitchellhamilton! - The create one mutation now requires a non-nulldata
argument and the create many mutation accepts a list ofItemCreateInput
directly instead of being nested inside of an object with theItemCreateInput
in adata
field.If you have a list called
Item
,createItem
now looks likecreateItem(data: ItemCreateInput!): Item
andcreateItems
now looks likecreateItems(data: [ItemCreateInput!]!): [Item]
. -
#6196
5cd8ffd6c
Thanks @mitchellhamilton! - Removedsearch
argument from the GraphQL API for finding many items, Lists/DB API and to-many relationship fields. You should usecontains
filters instead. -
#6095
272b97b3a
Thanks @mitchellhamilton! - Updated filters to be nested instead of flattened and add top-levelNOT
operator. See the Query Filter API docs and the upgrade guide for more information.query { posts(where: { title: { contains: "Something" } }) { title content } }
-
#6198
9d361c1c8
Thanks @timleslie! - Removed theuid
andname
properties from the errors returned by the GraphQL API. -
#6196
5cd8ffd6c
Thanks @mitchellhamilton! - RemovedsortBy
argument from the GraphQL API for finding many items, Lists/DB API and to-many relationship fields. You should useorderBy
instead. -
#6312
56044e2a4
Thanks @mitchellhamilton! - Updated@graphql-ts/schema
. The second type parameter ofschema.Arg
exported from@keystone-next/types
is now a boolean that defines whether or not the arg has a default value to make it easier to define circular input objects. -
#6217
874f2c405
Thanks @mitchellhamilton! -disconnectAll
has been renamed todisconnect
in to-one relationship inputs and the olddisconnect
field has been removed. There are also seperate input types for create and update where the input for create doesn't havedisconnect
. It's also now required that if you provide a to-one relationship input, you must provide exactly one field to the input.If you have a list called
Item
, the to-one relationship inputs now look like this:input ItemRelateToOneForCreateInput { create: ItemCreateInput connect: ItemWhereUniqueInput } input ItemRelateToOneForUpdateInput { create: ItemCreateInput connect: ItemWhereUniqueInput disconnect: Boolean }
-
#6224
3564b342d
Thanks @mitchellhamilton! -disconnectAll
has been replaced byset
in to-many relationship inputs, the equivalent todisconnectAll: true
is nowset: []
. There are also seperate input types for create and update where the input for create doesn't havedisconnect
orset
. The inputs in the lists in the input field are now also non-null.If you have a list called
Item
, the to-many relationship inputs now look like this:input ItemRelateToManyForCreateInput { create: [ItemCreateInput!] connect: [ItemWhereUniqueInput!] } input ItemRelateToManyForUpdateInput { disconnect: [ItemWhereUniqueInput!] set: [ItemWhereUniqueInput!] create: [ItemCreateInput!] connect: [ItemWhereUniqueInput!] }
-
#6197
4d9f89f88
Thanks @mitchellhamilton! - The generated CRUD queries, and some of the input types, in the GraphQL API have been renamed.If you have a list called
Item
, the query for multiple values,allItems
will be renamed toitems
. The query for a single value,Item
, will be renamed toitem
.Also, the input type used in the
updateItems
mutation has been renamed fromItemsUpdateInput
toItemUpdateArgs
. -
#6211
d214e2f72
Thanks @mitchellhamilton! - The update mutations now acceptwhere
unique inputs instead of only anid
and thewhere
anddata
arguments are non-null.If you have a list called
Item
, the update mutations now look like this:type Mutation { updateItem(where: ItemWhereUniqueInput!, data: ItemUpdateInput!): Item updateItems(data: [ItemUpdateArgs!]!): [Item] } input ItemUpdateArgs { where: ItemWhereUniqueInput! data: ItemUpdateInput! }
-
#6206
f5e64af37
Thanks @mitchellhamilton! - The delete mutations now acceptwhere
unique inputs instead of only anid
.If you have a list called
Item
,deleteItem
now looks likedeleteItem(where: ItemWhereUniqueInput!): Item
anddeleteItems
now looks likedeleteItems(where: [ItemWhereUniqueInput!]!): [Item]
Minor Changes
-
#6276
3a7a06b2c
Thanks @gautamsi! - Added option forBearer
token auth when using session. -
#6267
1030296d1
Thanks @timleslie! - Addedconfig.graphql.debug
option, which can be used to control whether debug information such as stack traces are included in the errors returned by the GraphQL API.
Patch Changes
-
#6317
1cbcf54cb
Thanks @timleslie! - Separated the resolving of non-relationship field from relationship fields in create/update inputs to allow for better error handling. -
#6250
a92169d04
Thanks @timleslie! - Updated internal type definitions. -
#6334
f3014a627
Thanks @gwyneplaine! - Resolved bug with visually hidden elements in ListView checkboxes expanding to fill the whole body on click of elements near the bottom of the screen. -
#6219
6da56b80e
Thanks @timleslie! - Removed unused code path in Admin UI error display. -
#6269
697efa354
Thanks @gwyneplaine! - Added ignoreBuildErrors flag to next-config.js file, to negate false positive errors in keystone builds with imported components. -
#6218
c7e331d90
Thanks @timleslie! - Added more details to validation failure error messages. -
#6316
78dac764e
Thanks @timleslie! - Updated handling of errors inresolveInput
hooks to provide developers with appropriate debug information. -
#6310
399561b27
Thanks @timleslie! - Updated dependencies to usemergeSchemas
from@graphql-tools/schema
, rather than its old location in@graphql-tools/merge
. You might see a reordering of the contents of yourgraphql.schema
file. -
#6292
0dcb1c95b
Thanks @renovate! - Updated Prisma dependencies to2.29.1
. -
#6263
94435ffee
Thanks @timleslie! - Made the original stacktraces for before/after hooks available onerror.extension.errors
. -
#6259
f46fd32b7
Thanks @gwyneplaine! - Bumped @apollo/client dependency to ^3.4.5, the update resolves the following useQuery issue. -
#6239
8ea4eed55
Thanks @timleslie! - Added more details to before/after change/delete hook error messages. -
#6248
e3fe6498d
Thanks @timleslie! - Removed unused dependency@graphql-tools/schema
. -
#6203
8b2d179b2
Thanks @renovate! - Updated Prisma dependencies to2.28.0
. -
#6296
e3fefafcc
Thanks @gwyneplaine! - Fixed delete success notifications in the Admin UI appearing on failed deletes in List view and Item view. -
#6200
686c0f1c4
Thanks @timleslie! - Updated internal error handling to use theapollo-server-errors
package instead ofapollo-errors
. -
Updated dependencies [
e9f3c42d5
,5cd8ffd6c
,5cd8ffd6c
,b696a9579
,092df6678
,5cd8ffd6c
,c2bb6a9a5
,4f4f0351a
,272b97b3a
,5cd8ffd6c
,56044e2a4
,874f2c405
,1030296d1
,3564b342d
,4d9f89f88
,8187ea019
,d214e2f72
,f5e64af37
]:- @keystone-next/fields@14.0.0
- @keystone-next/types@24.0.0
- @keystone-ui/notice@4.0.1
- @keystone-ui/toast@4.0.2
- @keystone-next/admin-ui-utils@5.0.6
- @keystone-next/utils@1.0.4
@keystone-next/types@24.0.0
Major Changes
-
#6196
5cd8ffd6c
Thanks @mitchellhamilton! - Removed_ListKeyMeta
and_toManyRelationshipFieldMeta
fields. You should uselistKeyCount
andtoManyRelationshipFieldCount
instead -
#6196
5cd8ffd6c
Thanks @mitchellhamilton! - Removed all arguments fromcontext.lists.List.count
andcontext.db.lists.List.count
except forwhere
. -
#6266
b696a9579
Thanks @mitchellhamilton! - Renamedfirst
argument in find many queries totake
to align with Prisma.type Query { users( where: UserWhereInput! = {} orderBy: [UserOrderByInput!]! = [] # previously was first: Int take: Int skip: Int! = 0 ): [User!] # ... } type User { # ... posts( where: PostWhereInput! = {} orderBy: [PostOrderByInput!]! = [] # previously was first: Int take: Int skip: Int! = 0 ): [Post!] # ... }
-
#6208
092df6678
Thanks @mitchellhamilton! - The create one mutation now requires a non-nulldata
argument and the create many mutation accepts a list ofItemCreateInput
directly instead of being nested inside of an object with theItemCreateInput
in adata
field.If you have a list called
Item
,createItem
now looks likecreateItem(data: ItemCreateInput!): Item
andcreateItems
now looks likecreateItems(data: [ItemCreateInput!]!): [Item]
. -
#6196
5cd8ffd6c
Thanks @mitchellhamilton! - Removedsearch
argument from the GraphQL API for finding many items, Lists/DB API and to-many relationship fields. You should usecontains
filters instead. -
#6095
272b97b3a
Thanks @mitchellhamilton! - Updated filters to be nested instead of flattened and add top-levelNOT
operator. See the Query Filter API docs and the upgrade guide for more information.query { posts(where: { title: { contains: "Something" } }) { title content } }
-
#6196
5cd8ffd6c
Thanks @mitchellhamilton! - RemovedsortBy
argument from the GraphQL API for finding many items, Lists/DB API and to-many relationship fields. You should useorderBy
instead. -
#6312
56044e2a4
Thanks @mitchellhamilton! - Updated@graphql-ts/schema
. The second type parameter ofschema.Arg
exported from@keystone-next/types
is now a boolean that defines whether or not the arg has a default value to make it easier to define circular input objects. -
#6217
874f2c405
Thanks @mitchellhamilton! -disconnectAll
has been renamed todisconnect
in to-one relationship inputs and the olddisconnect
field has been removed. There are also seperate input types for create and update where the input for create doesn't havedisconnect
. It's also now required that if you provide a to-one relationship input, you must provide exactly one field to the input.If you have a list called
Item
, the to-one relationship inputs now look like this:input ItemRelateToOneForCreateInput { create: ItemCreateInput connect: ItemWhereUniqueInput } input ItemRelateToOneForUpdateInput { create: ItemCreateInput connect: ItemWhereUniqueInput disconnect: Boolean }
-
#6224
3564b342d
Thanks @mitchellhamilton! -disconnectAll
has been replaced byset
in to-many relationship inputs, the equivalent todisconnectAll: true
is nowset: []
. There are also seperate input types for create and update where the input for create doesn't havedisconnect
orset
. The inputs in the lists in the input field are now also non-null.If you have a list called
Item
, the to-many relationship inputs now look like this:input ItemRelateToManyForCreateInput { create: [ItemCreateInput!] connect: [ItemWhereUniqueInput!] } input ItemRelateToManyForUpdateInput { disconnect: [ItemWhereUniqueInput!] set: [ItemWhereUniqueInput!] create: [ItemCreateInput!] connect: [ItemWhereUniqueInput!] }
-
#6197
4d9f89f88
Thanks @mitchellhamilton! - The generated CRUD queries, and some of the input types, in the GraphQL API have been renamed.If you have a list called
Item
, the query for multiple values,allItems
will be renamed toitems
. The query for a single value,Item
, will be renamed toitem
.Also, the input type used in the
updateItems
mutation has been renamed fromItemsUpdateInput
toItemUpdateArgs
. -
#6211
d214e2f72
Thanks @mitchellhamilton! - The update mutations now acceptwhere
unique inputs instead of only anid
and thewhere
anddata
arguments are non-null.If you have a list called
Item
, the update mutations now look like this:type Mutation { updateItem(where: ItemWhereUniqueInput!, data: ItemUpdateInput!): Item updateItems(data: [ItemUpdateArgs!]!): [Item] } input ItemUpdateArgs { where: ItemWhereUniqueInput! data: ItemUpdateInput! }
-
#6206
f5e64af37
Thanks @mitchellhamilton! - The delete mutations now acceptwhere
unique inputs instead of only anid
.If you have a list called
Item
,deleteItem
now looks likedeleteItem(where: ItemWhereUniqueInput!): Item
anddeleteItems
now looks likedeleteItems(where: [ItemWhereUniqueInput!]!): [Item]
Minor Changes
- #6267
1030296d1
Thanks @timleslie! - Addedconfig.graphql.debug
option, which can be used to control whether debug information such as stack traces are included in the errors returned by the GraphQL API.
Patch Changes
-
#6249
8187ea019
Thanks @timleslie! - Updated types to allow the'id'
field inui.labelField
,ui.listView.initialColumns
, andui.listView.initialSort
. -
Updated dependencies [
e9f3c42d5
,5cd8ffd6c
,b696a9579
,5cd8ffd6c
,4f4f0351a
,272b97b3a
,5cd8ffd6c
,874f2c405
,3564b342d
,4d9f89f88
,d214e2f72
]:- @keystone-next/fields@14.0.0
@keystone-ui/notice@4.0.1
Patch Changes
- #6220
c2bb6a9a5
Thanks @timleslie! - Updated css to preserve whitespace formatting of error messages.
@keystone-ui/segmented-control@4.0.2
Patch Changes
- #6235
6cd7ab78e
Thanks @gwyneplaine! - Fixed segmented-control focus style.
@keystone-ui/toast@4.0.2
Patch Changes
- #6220
c2bb6a9a5
Thanks @timleslie! - Updated css to preserve whitespace formatting of error messages.
@keystone-next/admin-ui-utils@5.0.6
Patch Changes
- Updated dependencies [
5cd8ffd6c
,5cd8ffd6c
,b696a9579
,092df6678
,5cd8ffd6c
,272b97b3a
,5cd8ffd6c
,56044e2a4
,874f2c405
,1030296d1
,3564b342d
,4d9f89f88
,8187ea019
,d214e2f72
,f5e64af37
]:- @keystone-next/types@24.0.0
@keystone-next/cloudinary@6.0.6
Patch Changes
- Updated dependencies [
e9f3c42d5
,5cd8ffd6c
,5cd8ffd6c
,b696a9579
,092df6678
,5cd8ffd6c
,4f4f0351a
,272b97b3a
,5cd8ffd6c
,56044e2a4
,874f2c405
,1030296d1
,3564b342d
,4d9f89f88
,8187ea019
,d214e2f72
,f5e64af37
]:- @keystone-next/fields@14.0.0
- @keystone-next/types@24.0.0
@keystone-next/testing@1.1.1
Patch Changes
- Updated dependencies [
5cd8ffd6c
,1cbcf54cb
,a92169d04
,5cd8ffd6c
,b696a9579
,f3014a627
,092df6678
,5cd8ffd6c
,6da56b80e
,697efa354
,c7e331d90
,3a7a06b2c
,272b97b3a
,78dac764e
,399561b27
,9d361c1c8
,0dcb1c95b
,94435ffee
,5cd8ffd6c
,56044e2a4
,f46fd32b7
,874f2c405
,8ea4eed55
,e3fe6498d
,1030296d1
,3564b342d
,8b2d179b2
,e3fefafcc
,4d9f89f88
,686c0f1c4
,d214e2f72
,f5e64af37
]:- @keystone-next/keystone@24.0.0
@keystone-next/utils@1.0.4
Patch Changes
- Updated dependencies [
5cd8ffd6c
,5cd8ffd6c
,b696a9579
,092df6678
,5cd8ffd6c
,272b97b3a
,5cd8ffd6c
,56044e2a4
,874f2c405
,1030296d1
,3564b342d
,4d9f89f88
,8187ea019
,d214e2f72
,f5e64af37
]:- @keystone-next/types@24.0.0
@keystone-next/example-custom-admin-ui-navigation@5.0.0
Major Changes
- #6185
bc00c0a17
Thanks @gwyneplaine! - Initial version of the custom-admin-ui-navigation example.
Patch Changes
- Updated dependencies [
e9f3c42d5
,5cd8ffd6c
,1cbcf54cb
,a92169d04
,5cd8ffd6c
,b696a9579
,f3014a627
,092df6678
,5cd8ffd6c
,6da56b80e
,4f4f0351a
,697efa354
,c7e331d90
,3a7a06b2c
,272b97b3a
,78dac764e
,399561b27
,9d361c1c8
,0dcb1c95b
,94435ffee
,5cd8ffd6c
,56044e2a4
,f46fd32b7
,874f2c405
,8ea4eed55
,e3fe6498d
,1030296d1
,3564b342d
,8b2d179b2
,e3fefafcc
,4d9f89f88
,686c0f1c4
,8187ea019
,d214e2f72
,f5e64af37
]:- @keystone-next/fields@14.0.0
- @keystone-next/keystone@24.0.0
- @keystone-next/types@24.0.0
@keystone-next/example-custom-admin-ui-pages@1.0.0
Major Changes
- #6082
e0b9e8d38
Thanks @gwyneplaine! - Initial version of the custom-admin-ui-pages example.
Patch Changes
-
#6264
df10c42a2
Thanks @gwyneplaine! - Additional content added to example for making the custom-page look more like the Admin UI, as well as adding a route to the custom page to the Admin UI Navigation. -
Updated dependencies [
e9f3c42d5
,5cd8ffd6c
,1cbcf54cb
,a92169d04
,5cd8ffd6c
,b696a9579
,f3014a627
,092df6678
,5cd8ffd6c
,6da56b80e
,4f4f0351a
,697efa354
,c7e331d90
,3a7a06b2c
,272b97b3a
,78dac764e
,399561b27
,9d361c1c8
,0dcb1c95b
,94435ffee
,5cd8ffd6c
,56044e2a4
,f46fd32b7
,874f2c405
,8ea4eed55
,e3fe6498d
,1030296d1
,3564b342d
,8b2d179b2
,e3fefafcc
,4d9f89f88
,686c0f1c4
,8187ea019
,d214e2f72
,f5e64af37
]:- @keystone-next/fields@14.0.0
- @keystone-next/keystone@24.0.0
- @keystone-next/types@24.0.0
@keystone-next/api-tests-legacy@11.1.0
Minor Changes
Patch Changes
- Updated dependencies [
5cd8ffd6c
,5cd8ffd6c
,b696a9579
,092df6678
,5cd8ffd6c
,272b97b3a
,5cd8ffd6c
,56044e2a4
,874f2c405
,1030296d1
,3564b342d
,4d9f89f88
,8187ea019
,d214e2f72
,f5e64af37
]:- @keystone-next/types@24.0.0
- @keystone-next/testing@1.1.1
- @keystone-next/utils@1.0.4
@keystone-next/website@3.1.4
Patch Changes
- Updated dependencies [
a92169d04
,e985aa010
,272b97b3a
,69f47bfed
,4d9f89f88
]:- @keystone-next/fields-document@8.0.0
@keystone-next/example-assets-cloud@1.0.4
Patch Changes
- Updated dependencies [
e9f3c42d5
,5cd8ffd6c
,1cbcf54cb
,a92169d04
,5cd8ffd6c
,b696a9579
,f3014a627
,092df6678
,5cd8ffd6c
,6da56b80e
,4f4f0351a
,697efa354
,c7e331d90
,3a7a06b2c
,272b97b3a
,78dac764e
,399561b27
,9d361c1c8
,0dcb1c95b
,94435ffee
,5cd8ffd6c
,56044e2a4
,f46fd32b7
,874f2c405
,8ea4eed55
,e3fe6498d
,1030296d1
,3564b342d
,8b2d179b2
,e3fefafcc
,4d9f89f88
,686c0f1c4
,d214e2f72
,f5e64af37
]:- @keystone-next/fields@14.0.0
- @keystone-next/keystone@24.0.0
@keystone-next/example-assets-local@1.0.4
Patch Changes
- Updated dependencies [
e9f3c42d5
,5cd8ffd6c
,1cbcf54cb
,a92169d04
,5cd8ffd6c
,b696a9579
,f3014a627
,092df6678
,5cd8ffd6c
,6da56b80e
,4f4f0351a
,697efa354
,c7e331d90
,3a7a06b2c
,272b97b3a
,78dac764e
,399561b27
,9d361c1c8
,0dcb1c95b
,94435ffee
,5cd8ffd6c
,56044e2a4
,f46fd32b7
,874f2c405
,8ea4eed55
,e3fe6498d
,1030296d1
,3564b342d
,8b2d179b2
,e3fefafcc
,4d9f89f88
,686c0f1c4
,d214e2f72
,f5e64af37
]:- @keystone-next/fields@14.0.0
- @keystone-next/keystone@24.0.0
@keystone-next/example-auth@4.0.6
Patch Changes
-
#6310
399561b27
Thanks @timleslie! - Updated dependencies to usemergeSchemas
from@graphql-tools/schema
, rather than its old location in@graphql-tools/merge
. You might see a reordering of the contents of yourgraphql.schema
file. -
Updated dependencies [
e9f3c42d5
,5cd8ffd6c
,1cbcf54cb
,a92169d04
,5cd8ffd6c
,b696a9579
,f3014a627
,092df6678
,5cd8ffd6c
,6da56b80e
,4f4f0351a
,697efa354
,c7e331d90
,3a7a06b2c
,272b97b3a
,78dac764e
,399561b27
,9d361c1c8
,0dcb1c95b
,94435ffee
,5cd8ffd6c
,56044e2a4
,f46fd32b7
,874f2c405
,8ea4eed55
,e3fe6498d
,1030296d1
,3564b342d
,8b2d179b2
,e3fefafcc
,4d9f89f88
,686c0f1c4
,d214e2f72
,f5e64af37
]:- @keystone-next/fields@14.0.0
- @keystone-next/keystone@24.0.0
- @keystone-next/auth@31.0.0
@keystone-next/examples-app-basic@4.0.6
Patch Changes
-
#6310
399561b27
Thanks @timleslie! - Updated dependencies to usemergeSchemas
from@graphql-tools/schema
, rather than its old location in@graphql-tools/merge
. You might see a reordering of the contents of yourgraphql.schema
file. -
Updated dependencies [
e9f3c42d5
,5cd8ffd6c
,1cbcf54cb
,a92169d04
,5cd8ffd6c
,b696a9579
,e985aa010
,f3014a627
,092df6678
,5cd8ffd6c
,6da56b80e
,4f4f0351a
,697efa354
,c7e331d90
,3a7a06b2c
,272b97b3a
,78dac764e
,399561b27
,9d361c1c8
,69f47bfed
,0dcb1c95b
,94435ffee
,5cd8ffd6c
,56044e2a4
,f46fd32b7
,874f2c405
,8ea4eed55
,e3fe6498d
,1030296d1
,3564b342d
,8b2d179b2
,e3fefafcc
,4d9f89f88
,686c0f1c4
,8187ea019
,d214e2f72
,f5e64af37
]:- @keystone-next/fields@14.0.0
- @keystone-next/keystone@24.0.0
- @keystone-next/types@24.0.0
- @keystone-next/fields-document@8.0.0
- @keystone-next/auth@31.0.0
@keystone-next/example-ecommerce@4.0.7
Patch Changes
-
#6250
a92169d04
Thanks @timleslie! - Updated internal type definitions. -
#6310
399561b27
Thanks @timleslie! - Updated dependencies to usemergeSchemas
from@graphql-tools/schema
, rather than its old location in@graphql-tools/merge
. You might see a reordering of the contents of yourgraphql.schema
file. -
Updated dependencies [
e9f3c42d5
,5cd8ffd6c
,1cbcf54cb
,a92169d04
,5cd8ffd6c
,b696a9579
,f3014a627
,092df6678
,5cd8ffd6c
,6da56b80e
,4f4f0351a
,697efa354
,c7e331d90
,3a7a06b2c
,272b97b3a
,78dac764e
,399561b27
,9d361c1c8
,0dcb1c95b
,94435ffee
,5cd8ffd6c
,56044e2a4
,f46fd32b7
,874f2c405
,8ea4eed55
,e3fe6498d
,1030296d1
,3564b342d
,8b2d179b2
,e3fefafcc
,4d9f89f88
,686c0f1c4
,8187ea019
,d214e2f72
,f5e64af37
]:- @keystone-next/fields@14.0.0
- @keystone-next/keystone@24.0.0
- @keystone-next/types@24.0.0
- @keystone-next/auth@31.0.0
- @keystone-next/cloudinary@6.0.6
@keystone-next/example-embedded-nextjs@3.0.6
Patch Changes
- Updated dependencies [
e9f3c42d5
,5cd8ffd6c
,1cbcf54cb
,a92169d04
,5cd8ffd6c
,b696a9579
,f3014a627
,092df6678
,5cd8ffd6c
,6da56b80e
,4f4f0351a
,697efa354
,c7e331d90
,3a7a06b2c
,272b97b3a
,78dac764e
,399561b27
,9d361c1c8
,0dcb1c95b
,94435ffee
,5cd8ffd6c
,56044e2a4
,f46fd32b7
,874f2c405
,8ea4eed55
,e3fe6498d
,1030296d1
,3564b342d
,8b2d179b2
,e3fefafcc
,4d9f89f88
,686c0f1c4
,d214e2f72
,f5e64af37
]:- @keystone-next/fields@14.0.0
- @keystone-next/keystone@24.0.0
keystone-next-app@1.0.6
Patch Changes
-
#6310
399561b27
Thanks @timleslie! - Updated dependencies to usemergeSchemas
from@graphql-tools/schema
, rather than its old location in@graphql-tools/merge
. You might see a reordering of the contents of yourgraphql.schema
file. -
Updated dependencies [
e9f3c42d5
,5cd8ffd6c
,1cbcf54cb
,a92169d04
,5cd8ffd6c
,b696a9579
,e985aa010
,f3014a627
,092df6678
,5cd8ffd6c
,6da56b80e
,4f4f0351a
,697efa354
,c7e331d90
,3a7a06b2c
,272b97b3a
,78dac764e
,399561b27
,9d361c1c8
,69f47bfed
,0dcb1c95b
,94435ffee
,5cd8ffd6c
,56044e2a4
,f46fd32b7
,874f2c405
,8ea4eed55
,e3fe6498d
,1030296d1
,3564b342d
,8b2d179b2
,e3fefafcc
,4d9f89f88
,686c0f1c4
,d214e2f72
,f5e64af37
]:- @keystone-next/fields@14.0.0
- @keystone-next/keystone@24.0.0
- @keystone-next/fields-document@8.0.0
- @keystone-next/auth@31.0.0
@keystone-next/example-playground@1.0.5
Patch Changes
- Updated dependencies [
e9f3c42d5
,5cd8ffd6c
,1cbcf54cb
,a92169d04
,5cd8ffd6c
,b696a9579
,f3014a627
,092df6678
,5cd8ffd6c
,6da56b80e
,4f4f0351a
,697efa354
,c7e331d90
,3a7a06b2c
,272b97b3a
,78dac764e
,399561b27
,9d361c1c8
,0dcb1c95b
,94435ffee
,5cd8ffd6c
,56044e2a4
,f46fd32b7
,874f2c405
,8ea4eed55
,e3fe6498d
,1030296d1
,3564b342d
,8b2d179b2
,e3fefafcc
,4d9f89f88
,686c0f1c4
,d214e2f72
,f5e64af37
]:- @keystone-next/fields@14.0.0
- @keystone-next/keystone@24.0.0
@keystone-next/example-roles@4.0.6
Patch Changes
-
#6310
399561b27
Thanks @timleslie! - Updated dependencies to usemergeSchemas
from@graphql-tools/schema
, rather than its old location in@graphql-tools/merge
. You might see a reordering of the contents of yourgraphql.schema
file. -
Updated dependencies [
e9f3c42d5
,5cd8ffd6c
,1cbcf54cb
,a92169d04
,5cd8ffd6c
,b696a9579
,f3014a627
,092df6678
,5cd8ffd6c
,6da56b80e
,4f4f0351a
,697efa354
,c7e331d90
,3a7a06b2c
,272b97b3a
,78dac764e
,399561b27
,9d361c1c8
,0dcb1c95b
,94435ffee
,5cd8ffd6c
,56044e2a4
,f46fd32b7
,874f2c405
,8ea4eed55
,e3fe6498d
,1030296d1
,3564b342d
,8b2d179b2
,e3fefafcc
,4d9f89f88
,686c0f1c4
,8187ea019
,d214e2f72
,f5e64af37
]:- @keystone-next/fields@14.0.0
- @keystone-next/keystone@24.0.0
- @keystone-next/types@24.0.0
- @keystone-next/auth@31.0.0
@keystone-next/example-sandbox@3.0.6
Patch Changes
- Updated dependencies [
e9f3c42d5
,5cd8ffd6c
,1cbcf54cb
,a92169d04
,5cd8ffd6c
,b696a9579
,f3014a627
,092df6678
,5cd8ffd6c
,6da56b80e
,4f4f0351a
,697efa354
,c7e331d90
,3a7a06b2c
,272b97b3a
,78dac764e
,399561b27
,9d361c1c8
,0dcb1c95b
,94435ffee
,5cd8ffd6c
,56044e2a4
,f46fd32b7
,874f2c405
,8ea4eed55
,e3fe6498d
,1030296d1
,3564b342d
,8b2d179b2
,e3fefafcc
,4d9f89f88
,686c0f1c4
,d214e2f72
,f5e64af37
]:- @keystone-next/fields@14.0.0
- @keystone-next/keystone@24.0.0
- @keystone-next/auth@31.0.0
@keystone-next/example-blog@2.0.6
Patch Changes
- Updated dependencies [
e9f3c42d5
,5cd8ffd6c
,1cbcf54cb
,a92169d04
,5cd8ffd6c
,b696a9579
,f3014a627
,092df6678
,5cd8ffd6c
,6da56b80e
,4f4f0351a
,697efa354
,c7e331d90
,3a7a06b2c
,272b97b3a
,78dac764e
,399561b27
,9d361c1c8
,0dcb1c95b
,94435ffee
,5cd8ffd6c
,56044e2a4
,f46fd32b7
,874f2c405
,8ea4eed55
,e3fe6498d
,1030296d1
,3564b342d
,8b2d179b2
,e3fefafcc
,4d9f89f88
,686c0f1c4
,d214e2f72
,f5e64af37
]:- @keystone-next/fields@14.0.0
- @keystone-next/keystone@24.0.0
@keystone-next/example-custom-admin-ui-logo@1.0.1
Patch Changes
- Updated dependencies [
e9f3c42d5
,5cd8ffd6c
,1cbcf54cb
,a92169d04
,5cd8ffd6c
,b696a9579
,f3014a627
,092df6678
,5cd8ffd6c
,6da56b80e
,4f4f0351a
,697efa354
,c7e331d90
,3a7a06b2c
,272b97b3a
,78dac764e
,399561b27
,9d361c1c8
,0dcb1c95b
,94435ffee
,5cd8ffd6c
,56044e2a4
,f46fd32b7
,874f2c405
,8ea4eed55
,e3fe6498d
,1030296d1
,3564b342d
,8b2d179b2
,e3fefafcc
,4d9f89f88
,686c0f1c4
,8187ea019
,d214e2f72
,f5e64af37
]:- @keystone-next/fields@14.0.0
- @keystone-next/keystone@24.0.0
- @keystone-next/types@24.0.0
@keystone-next/example-custom-field@0.0.3
Patch Changes
- Updated dependencies [
e9f3c42d5
,5cd8ffd6c
,1cbcf54cb
,a92169d04
,5cd8ffd6c
,b696a9579
,f3014a627
,092df6678
,5cd8ffd6c
,6da56b80e
,4f4f0351a
,697efa354
,c7e331d90
,3a7a06b2c
,272b97b3a
,78dac764e
,399561b27
,9d361c1c8
,0dcb1c95b
,94435ffee
,5cd8ffd6c
,56044e2a4
,f46fd32b7
,874f2c405
,8ea4eed55
,e3fe6498d
,1030296d1
,3564b342d
,8b2d179b2
,e3fefafcc
,4d9f89f88
,686c0f1c4
,8187ea019
,d214e2f72
,f5e64af37
]:- @keystone-next/fields@14.0.0
- @keystone-next/keystone@24.0.0
- @keystone-next/types@24.0.0