v1.20.0
logto-io/logtov1.20.0Sep 14, 2024by charIeszhao
AI Summary
Key updates include Arabic language translation and RTL support, the introduction of Personal Access Tokens (PAT), and new first-screen options for the sign-in experience.
Key Highlights
- Arabic language translation and RTL support
- Personal Access Token (PAT) support
- New connectors: Kook, Patreon, and GitLab
- Enhanced first-screen options (identifier:sign_in, identifier:register, etc.)
New Features
- Arabic translation and RTL support
- PAT creation via Management API and Console
- First-screen options (identifier:sign_in, identifier:register, reset_password, single_sign_on)
- New connectors (Kook, Patreon, GitLab)
- login_hint support
- Swagger well-known endpoints
- CLI package split (@logto/cli to @logto/translate)
- User creation name field support
- Nested attribute profile mapping in OAuth connector
- hasPassword property in Management API
- Password policy check API
Full Release Notes
<p align="center"> <img src="https://github.com/user-attachments/assets/edb07a08-6ae7-4bde-8856-896a62a9f27c" alt="September release" /> </p> ## Arabic translation and RTL support - #6422 Added new Arabic language translation to both Console and Experience UI (credit @zaaakher). - Improved UI layout and details to better support RTL languages. <img width="1386" alt="image" src="https://github.com/user-attachments/assets/31cef491-e3b4-44b0-9276-379384a7f3e2"> <img width="1482" alt="image" src="https://github.com/user-attachments/assets/86ede193-bdec-4788-8c6c-ea1813abb9ee"> ## Personal access token (PAT) Personal access tokens (PATs) provide a secure way for users to grant access tokens without using their credentials and interactive sign-in. You can create a PAT by going to the user's detail page in Console or using the Management API `POST /users/:userId/personal-access-tokens`. Refer to [documentation](https://docs.logto.io/docs/recipes/manage-users/personal-access-token/) for more details. ## Support additional first-screen options In addition to `sign-in` and `register`, we now enabled more options that allowing developers to customize the initial screen presented to users. These new first-screen options are: - `identifier:sign_in`: Only display specific identifier-based sign-in methods to users. - `identifier:register`: Only display specific identifier-based registration methods to users. - `reset_password`: Allow users to directly access the password reset page. - `single_sign_on`: Allow users to directly access the single sign-on (SSO) page. Refer to [documentation](https://docs.logto.io/docs/references/openid-connect/authentication-parameters/#first-screen) for more details. ## New connectors - #6227 Added Kook connector (credit @Misaka-L). - #6514 Added Patreon connector (credit @devtekve). - #6529 Added GitLab connector (credit @devtekve). ## Improvements - #6400 Supported `login_hint` as additional sign-in parameter. - #6445 Implemented well-known swagger endpoints. - #6451 Split `translate` command from `@logto/cli` to make the CLI small and simple. - #6451 Added a dedicated `@logto/translate` package to translate i18n phrases in Console and Experience. - #6523 Supported entering name while creating a user in Console. - #6525 Added new query parameter `parse_error` and explicitly set it to `false` to return raw OIDC error message only. - #6532 Added `denyAccess()` api to custom JWT context in order to conditionally block user token request. - #6534 Supported nested attribute profile mapping in OAuth connector (credit @devtekve). - #6543 Added `hasPassword` property to `/users` Management API response. - #6544 Added user password information in user details. Admin can easily check if a user has set password or not, and can then perform set/reset action accordingly. - #6567 Added new management API to check password against current password policy settings. ## Fixes - #6425 Prevented potential error caused by cached identifiers across Experience pages. - #6441 Fixed the issue that blocked users from creating Custom JWT. - #6481 Fixed wecom connector platform. Use `Universal` instead of `null`. - #6536 Set `lang` attribute correctly to `<html>` in Console, preventing unexpected browser translator prompt. - #6560 Allowed linking new social identity to an existing user account when registration is disabled. - #6576 Prevented user registration and profile fulfillment with SSO-only email domains.