-
#7804
c93768cabThanks @dcousens! - Removes node.enginesrestrictions -
Updated dependencies [
e6e13158f,6cb00be9a,0f1a487d1,0f1a487d1,99d8f062e,c93768cab,36ed1e7e1]:- @keystone-6/fields-document@4.1.0
- @keystone-ui/core@5.0.1
- @keystone-ui/toast@6.0.1
- Updated dependencies [
d591e31c6,29db9b5de,4ad95f0ef,8b2194bb1]:- @keystone-6/fields-document@4.0.0
-
#7601
4234ed488Thanks @dcousens! - upgrade dependancy"react": "^18.1.0" -
Updated dependencies [
4234ed488,4234ed488,4234ed488,4234ed488,4234ed488,4234ed488]:- @keystone-6/fields-document@3.0.0
-
#7192
58f525d91Thanks @nizhu! - Fix invalid field value for Selection in docs for Component Block Relationship Fields -
Updated dependencies [
29c6a45fd,c9ec91c8d,29c6a45fd]:- @keystone-6/fields-document@2.0.0
- #6957
de8cf44e7Thanks @bladey! - Update Node engines to support current Node LTS versions, currently versions 14 and 16.
-
#6907
990b56291Thanks @JedWatson! - Addeddb.mapoption to lists and fields which adds the@@mapand@mapPrisma attributes respectively -
Updated dependencies [
990b56291]:- @keystone-next/fields-document@13.0.0
- Updated dependencies [
fb5b21c03]:- @keystone-next/fields-document@12.0.0
-
#6744
0ef1ee3ccThanks @bladey! - Renamed branchmastertomain. -
Updated dependencies [
0ef1ee3cc,bed3a560a]:- @keystone-next/fields-document@11.0.0
-
#6409
3ece149e5Thanks @timleslie! - Upgraded Apollo Server to Version 3.The Apollo documentation contains a full list of breaking changes introduced by this update. You can configure the Apollo Server provided by Keystone using the
graphql.apolloConfigconfiguration option.The most prominant change for most users will be that the GraphQL Playground has been replaced by the Apollo Sandbox. If you prefer to keep the GraphQL Playground, you can configure your server by following these instructions.
-
Updated dependencies [
bf331141e,e747ef6f3,67492f37d,b6c8c3bff]:- @keystone-next/fields-document@10.0.0
- #6391
bc9088f05Thanks @bladey! - Adds support forintrospectionin the Apollo Server config. Introspection enables you to query a GraphQL server for information about the underlying schema. If the playground is enabled then introspection is automatically enabled - unless specifically disabled.
- #6443
b45536e22Thanks @timleslie! - Removed unused dependency@types/webpack.
-
#6467
e0f935eb2Thanks @JedWatson! - Add extendExpressApp config option for configuring the express app that Keystone creates -
Updated dependencies [
44f2ef60e,4f36a81af,32f024738,8f2786535,af5e59bf4,32f024738,0a189d5d0]:- @keystone-next/fields-document@9.0.0
- Updated dependencies [
a92169d04,e985aa010,272b97b3a,69f47bfed,4d9f89f88]:- @keystone-next/fields-document@8.0.0
-
#6087
139d7a8deThanks @JedWatson! - Move source code from thepackages-nextto thepackagesdirectory. -
Updated dependencies [
139d7a8de,890e3d0a5]:- @keystone-next/fields-document@7.0.2
- #6029
038cd09a2Thanks @bladey! - Updated Keystone URL reference from next.keystonejs.com to keystonejs.com.
- Updated dependencies [
df7d7b6f6,a3b07ea16,8958704ec]:- @keystone-ui/fields@4.1.1
- @keystone-next/fields-document@7.0.0
- @keystone-ui/core@3.1.0
-
#5806
0eadba2baThanks [@list({](https://github.com/list({), [@list({](https://github.com/list({)! - RemovedwithItemDatain favour of asessionDataoption to thecreateAuth()function.Previously,
withItemDatawould be used to wrap theconfig.sessionargument:import { config, createSchema, list } from '@keystone-next/keystone/schema'; import { statelessSessions, withAuthData } from '@keystone-next/keystone/session'; import { text, password, checkbox } from '@keystone-next/fields'; import { createAuth } from '@keystone-next/auth'; const { withAuth } = createAuth({ listKey: 'User', identityField: 'email', secretField: 'password', }); const session = statelessSessions({ secret: '-- EXAMPLE COOKIE SECRET; CHANGE ME --' }); export default withAuth( config({ lists: createSchema({ fields: { email: text({ isUnique: true }), password: password(), isAdmin: checkbox(), }, }), session: withItemData(session, { User: 'id isAdmin' }), }), }) );
Now, the fields to populate are configured on
sessionDataincreateAuth, andwithItemDatais completely removed.import { config, createSchema, list } from '@keystone-next/keystone/schema'; import { statelessSessions } from '@keystone-next/keystone/session'; import { text, password, checkbox } from '@keystone-next/fields'; import { createAuth } from '@keystone-next/auth'; const { withAuth } = createAuth({ listKey: 'User', identityField: 'email', secretField: 'password', sessionData: 'id isAdmin', }); const session = statelessSessions({ secret: '-- EXAMPLE COOKIE SECRET; CHANGE ME --' }); export default withAuth( config({ lists: createSchema({ fields: { email: text({ isUnique: true }), password: password(), isAdmin: checkbox(), }, }), session, }), }) );
-
#5767
02af04c03Thanks @timleslie! - Deprecated thesortByGraphQL filter. Updated theorderByGraphQL filter with an improved API.Previously a
Userlist'sallUsersquery would have the argument:orderBy: String
The new API gives it the argument:
orderBy: [UserOrderByInput!]! = []
where
input UserOrderByInput { id: OrderDirection name: OrderDirection score: OrderDirection } enum OrderDirection { asc desc }
Rather than writing
allUsers(orderBy: "name_ASC")you now writeallUsers(orderBy: { name: asc }). You can also now order by multiple fields, e.g.allUsers(orderBy: [{ score: asc }, { name: asc }]). EachUserOrderByInputmust have exactly one key, or else an error will be returned.
- #5823
553bad1e7Thanks @gabrielkuettel! - Fixed a typo in the db items api sample code.
- #5791
9de71a9fbThanks @timleslie! - Changed the return type ofallItems(...)from[User]to[User!], as this API can never havenullitems in the return array.
-
#5769
08478b8a7Thanks @timleslie! - The GraphQL query_all<Items>Meta { count }generated for each list has been deprecated in favour of a new query<items>Count, which directy returns the count.A
Userlist would have the following query added to the API:usersCount(where: UserWhereInput! = {}): Int
-
Updated dependencies [
5cc35170f,3a7acc2c5]:- @keystone-next/fields-document@6.0.1
- @keystone-ui/fields@4.1.0
- #5746
19750d2dcThanks @timleslie! - Update Node.js dependency to^12.20 || >= 14.13.
- Updated dependencies [
19750d2dc,e2232a553]:- @keystone-ui/button@5.0.0
- @keystone-ui/core@3.0.0
- @keystone-ui/fields@4.0.0
- @keystone-ui/icons@4.0.0
- @keystone-ui/notice@4.0.0
- @keystone-ui/toast@4.0.0
- @keystone-ui/tooltip@4.0.0
- @keystone-next/fields-document@6.0.0
-
#5544
b49befd9cThanks @raveling! - copy changes to document-fields guide -
Updated dependencies []:
- @keystone-next/fields-document@5.0.1
- #5397
a5627304bThanks @bladey! - Updated Node engine version to 12.x due to 10.x reaching EOL on 2021-04-30.
-
#5451
9e060fe83Thanks @JedWatson! - With the goal of making the Lists API (i.econtext.lists.{List}) more intuitive to use, theresolveFieldsoption has been deprecated in favor of two new methods:(1) You can specify a string of fields to return with the new
queryoption, when you want to query for resolved field values (including querying relationships and virtual fields). This replaces theresolveFields: falseuse case.For example, to query a Post you would now write:
const [post] = await context.lists.Post.findMany({ where: { slug }, query: ` title content image { src width height }`, });
(2) Alternatively, there is a new set of APIs on
context.db.lists.{List}which will return the unresolved item data from the database (but with read hooks applied), which can then be referenced directly or returned from a custom mutation or query in the GraphQL API to be handled by the Field resolvers. This replaces theresolveFields: booleanuse case.For example, to query for the raw data stored in the database, you would write:
const [post] = await context.db.lists.Post.findMany({ where: { slug }, });
- #5467
7498fcabbThanks @timleslie! - Removed the deprecatedcontext.executeGraphQL. Identical functionality is available viacontext.graphql.raw.
-
#5366
115b06130Thanks @renovate! - Updated Next.js dependency to^10.1.3. -
Updated dependencies [
fe55e9289,a5627304b,1d85d7ff4,43a0f5429,d7e8cad4f,ecf07393a,8eebf9195]:- @keystone-next/fields-document@5.0.0
- @keystone-ui/button@4.0.0
- @keystone-ui/fields@3.0.0
- @keystone-ui/icons@3.0.0
- @keystone-ui/notice@3.0.0
- @keystone-ui/toast@3.0.0
- @keystone-ui/tooltip@3.0.0
- #5368
b40016301Thanks @timleslie! - The config optiondb.adapteris now deprecated. It has been repaced withdb.providerwhich can take the valuespostgresqlorsqlite.
- #5340
ff472d5afThanks @raveling! - copy changes to home page (including CTA to getting started tut)
-
#5283
192393d0dThanks @timleslie! - The flag{ experimental: { prismaSqlite: true } }is no longer required to use the SQLite adapter. -
Updated dependencies [
4fa66ac1f,d93bab17b]:- @keystone-next/fields-document@4.0.0
- @keystone-ui/fields@2.1.0
- #3946
8e9b04ecdThanks @timleslie! - Added experimental support for Prisma + SQLite as a database adapter.
- #4912
d31acf61bThanks @timleslie! - Added aconfig.graphql.apolloConfigoption to allow developers to configure theApolloServerobject provided by Keystone.
-
#5150
3a9d20ce1Thanks @timleslie! - Applied eslintimport/orderrule. -
Updated dependencies [
8e9b04ecd,17c86e0c3,3a9d20ce1,a4e34e9eb]:- @keystone-next/fields-document@3.1.0
- @keystone-ui/fields@2.0.2
- @keystone-ui/core@2.0.2
- @keystone-ui/notice@2.0.2
- #5073
ba637676bThanks @gwyneplaine! - Moved viewport meta tag from _document to _app to avoid dedupe issues and next warnings.
- #5072
5a78af92eThanks @timleslie! - Updated cypress tests to pre-build the site before running the tests.
b1da7806c#4922 Thanks @timleslie! - Added access control API docs.
f4163a06d#4838 Thanks @gwyneplaine! - Added anchoring and copy to clipboard functionality to headings
2655c0b1b#4866 Thanks @timleslie! - Added aconfig.ui.isDisabledoption to completely disable the Admin UI.
f4163a06d#4838 Thanks @gwyneplaine! - Remove backticks from headings in docs
45d2b7cc9#4925 Thanks @gwyneplaine! - Removed backticks from inline code blocks in mdx, and made minor styling changes.
1f315bbfb#4961 Thanks @timleslie! - Added docs for thefloatfield type.
-
954083571#4926 Thanks @gwyneplaine! - Added a favicon to @keystone-next/website -
Updated dependencies [
f4e4498c6,556c1f95f,556c1f95f,556c1f95f,556c1f95f,3ca5038a0,d53eb872f]:- @keystone-ui/button@3.0.1
- @keystone-ui/core@2.0.1
- @keystone-ui/fields@2.0.1
- @keystone-ui/icons@2.0.1
- @keystone-ui/notice@2.0.1
- @keystone-ui/toast@2.0.1
- @keystone-ui/tooltip@2.0.1
- @keystone-next/fields-document@3.0.0
-
28c2ee5be#4811 Thanks @gwyneplaine! - Added syntax highlighting to code in mdx. -
Updated dependencies [
b97216a65]:- @keystone-ui/button@3.0.0
- @keystone-ui/core@2.0.0
- @keystone-ui/fields@2.0.0
- @keystone-ui/notice@2.0.0
- @keystone-ui/tooltip@2.0.0
75d3c521e#4770 Thanks @timleslie! - Upgraded Next.js dependency to10.0.5.
26543bd07#4758 Thanks @timleslie! - Added documentation for thekeystone-nextCLI.
-
08a67e820#4764 Thanks @timleslie! - Moved API docs into a separate section from the Guides. -
4c635ae4b#4737 Thanks @timleslie! - Added API placeholder.