Miguel Cabrerizo
ef18cd2e2c
feat(console): allow setting development mode when creating an OIDC app ( #6593 )
...
* fix: don't show verify domain if policy disabled
* feat: set dev mode on/off when oidc app is created
* fix: linting json files
* fix: add @peintnermax suggestions
---------
Co-authored-by: Max Peintner <max@caos.ch>
2023-10-11 17:37:14 +02:00
Miguel Cabrerizo
7588f8a0bb
fix(console): add jwks uri to app URLs ( #6672 )
...
Co-authored-by: Max Peintner <max@caos.ch>
2023-10-11 08:27:14 +00:00
Max Peintner
412cd144ef
fix(console): remove redundant user api requests, show discovery document loading errors ( #6683 )
...
* optimize user observable
* fix observable guard
* lint
* lint
---------
Co-authored-by: Elio Bischof <elio@zitadel.com>
2023-10-11 07:02:20 +00:00
Miguel Cabrerizo
8c68f8ed3a
feat(console): only use one save button in SMTP Settings ( #6561 )
...
seperate smtp settings from notification providers
2023-10-09 11:14:17 +00:00
Max Peintner
d01f4d229f
fix(console): move org domains into settings page of the organization ( #6612 )
...
* fix: hide domains settings for unauthorized users
* refine sidenav object mapping
* move domains to settings
* change docs
* set anchor to list element
* remove canwrite check in ngif
---------
Co-authored-by: Miguel A. C <doncicuto@gmail.com>
2023-09-29 09:31:35 +02:00
Miguel Cabrerizo
eb31c2a3be
fix(cnsl): hide new auth button if no routerlink ( #6640 )
...
* fix(cnsl): hide new auth button if no routerlink
* fix: add @peintnermax suggestions
---------
Co-authored-by: Max Peintner <max@caos.ch>
2023-09-29 08:39:30 +02:00
Max Peintner
0a2e6dcfb3
chore(console): npm dependencies ( #6626 )
...
* chore(deps-dev): bump eslint from 8.46.0 to 8.50.0 in /console (#6618 )
Bumps [eslint](https://github.com/eslint/eslint ) from 8.46.0 to 8.50.0.
- [Release notes](https://github.com/eslint/eslint/releases )
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md )
- [Commits](https://github.com/eslint/eslint/compare/v8.46.0...v8.50.0 )
---
updated-dependencies:
- dependency-name: eslint
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps-dev): bump @types/node from 18.16.10 to 20.6.5 in /console (#6617 )
Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node ) from 18.16.10 to 20.6.5.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node )
---
updated-dependencies:
- dependency-name: "@types/node"
dependency-type: direct:development
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps): bump protobufjs from 7.2.3 to 7.2.5 in /console (#6584 )
Bumps [protobufjs](https://github.com/protobufjs/protobuf.js ) from 7.2.3 to 7.2.5.
- [Release notes](https://github.com/protobufjs/protobuf.js/releases )
- [Changelog](https://github.com/protobufjs/protobuf.js/blob/master/CHANGELOG.md )
- [Commits](https://github.com/protobufjs/protobuf.js/compare/protobufjs-v7.2.3...protobufjs-v7.2.5 )
---
updated-dependencies:
- dependency-name: protobufjs
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Max Peintner <max@caos.ch>
* chore(deps-dev): bump @types/jasmine from 4.3.5 to 4.3.6 in /console (#6581 )
Bumps [@types/jasmine](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jasmine ) from 4.3.5 to 4.3.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jasmine )
---
updated-dependencies:
- dependency-name: "@types/jasmine"
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps): bump @grpc/grpc-js from 1.8.14 to 1.9.3 in /console (#6578 )
Bumps [@grpc/grpc-js](https://github.com/grpc/grpc-node ) from 1.8.14 to 1.9.3.
- [Release notes](https://github.com/grpc/grpc-node/releases )
- [Commits](https://github.com/grpc/grpc-node/compare/@grpc/grpc-js@1.8.14...@grpc/grpc-js@1.9.3 )
---
updated-dependencies:
- dependency-name: "@grpc/grpc-js"
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps-dev): bump @types/qrcode from 1.5.0 to 1.5.2 in /console (#6477 )
Bumps [@types/qrcode](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/qrcode ) from 1.5.0 to 1.5.2.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/qrcode )
---
updated-dependencies:
- dependency-name: "@types/qrcode"
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps-dev): bump prettier from 2.8.8 to 3.0.3 in /console (#6476 )
Bumps [prettier](https://github.com/prettier/prettier ) from 2.8.8 to 3.0.3.
- [Release notes](https://github.com/prettier/prettier/releases )
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md )
- [Commits](https://github.com/prettier/prettier/compare/2.8.8...3.0.3 )
---
updated-dependencies:
- dependency-name: prettier
dependency-type: direct:development
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps): bump socket.io-parser from 4.2.2 to 4.2.4 in /console (#6376 )
Bumps [socket.io-parser](https://github.com/socketio/socket.io-parser ) from 4.2.2 to 4.2.4.
- [Release notes](https://github.com/socketio/socket.io-parser/releases )
- [Changelog](https://github.com/socketio/socket.io-parser/blob/main/CHANGELOG.md )
- [Commits](https://github.com/socketio/socket.io-parser/compare/4.2.2...4.2.4 )
---
updated-dependencies:
- dependency-name: socket.io-parser
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* chore(deps): bump semver from 5.7.1 to 5.7.2 in /console (#6375 )
Bumps [semver](https://github.com/npm/node-semver ) from 5.7.1 to 5.7.2.
- [Release notes](https://github.com/npm/node-semver/releases )
- [Changelog](https://github.com/npm/node-semver/blob/v5.7.2/CHANGELOG.md )
- [Commits](https://github.com/npm/node-semver/compare/v5.7.1...v5.7.2 )
---
updated-dependencies:
- dependency-name: semver
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* lint
* node types
* use node 20
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-28 14:59:58 +02:00
Miguel Cabrerizo
689655a50d
fix(console): hide domains settings for unauthorized users ( #6602 )
...
fix: hide domains settings for unauthorized users
Co-authored-by: Max Peintner <max@caos.ch>
2023-09-22 15:53:23 +02:00
Miguel Cabrerizo
7faab0378f
feat(console): more emphasize to preferred login name in user's table and detail ( #6588 )
...
* feat: poc
* feat: more emphasize to preferred login name in user's table and detail
* fix: add @peintnermax suggestions
---------
Co-authored-by: Max Peintner <max@caos.ch>
2023-09-21 09:42:11 +02:00
Fabi
7edc73bd5e
fix: Domains problematic ( #6564 )
...
* docs: disable validate org domains per default, and have a better label
* docs: rename to $CUSTOM-DOMAIN
* docs: translation
* docs: tranlsations
* docs: tranlsations
* docs: allow domain discovery
---------
Co-authored-by: Max Peintner <max@caos.ch>
2023-09-20 12:45:11 +02:00
Miguel Cabrerizo
57d8ff1ef6
fix(console): if Validate Org domains is disabled don't show domain verification dialog ( #6572 )
...
* fix: don't show verify domain if policy disabled
* fix: refactor code
2023-09-19 16:12:49 +02:00
Miguel Cabrerizo
12f53767d6
fix(console): don't show empty profile when signed out ( #6573 )
...
Co-authored-by: Max Peintner <max@caos.ch>
2023-09-19 13:10:50 +00:00
Fabi
3465264eef
docs: Rename secret appereance to secret generator ( #6519 )
...
* docs: secret generator
* docs: secret generator naming
* docs: rename secret appeareance to secret generator
* docs: rename secret appeareance to secret generator
* Update console/src/assets/i18n/it.json
Co-authored-by: Max Peintner <max@caos.ch>
* Update console/src/assets/i18n/es.json
Co-authored-by: Max Peintner <max@caos.ch>
* Update console/src/assets/i18n/fr.json
Co-authored-by: Max Peintner <max@caos.ch>
---------
Co-authored-by: Max Peintner <max@caos.ch>
2023-09-18 10:57:52 +02:00
Dishan Sivakumaran
e5083b62a6
fix: apple idp configuration ( #6575 )
...
* docs(apple-idp): remove client id and secret from documentation, as it is not needed
* fix(apple-idp): fix reading of key file by using content type of file
2023-09-18 05:39:55 +00:00
Arshil Vahora
3011268993
fix(console): initial project list size
...
* fix: one item menus height issue
Closes #6140
* fix : initial project list size
---------
Co-authored-by: Max Peintner <max@caos.ch>
2023-09-13 07:48:56 +00:00
Miguel Cabrerizo
c115ae374e
feat: replace inactive remove active from select account ( #6364 )
...
* feat: replace inactive remove active from select account
* fix: apply same behavior to console user select
---------
Co-authored-by: Livio Spring <livio.a@gmail.com>
2023-09-08 12:15:39 +00:00
Max Peintner
ff651aed07
fix(console): warning for actions ( #6390 )
...
* fix: warning for actions
* Update console/src/assets/i18n/de.json
Co-authored-by: Fabi <fabienne@zitadel.com>
* fix i18n
* Update console/src/assets/i18n/de.json
* fix: translate failed action warn
---------
Co-authored-by: Fabi <fabienne@zitadel.com>
Co-authored-by: Fabienne <fabienne.gerschwiler@gmail.com>
2023-09-08 11:49:24 +00:00
Miguel Cabrerizo
dd80109969
feat: delete organizations ( #6083 )
...
* feat: delete organizations
* feat: tests and delete all that depends on org
* fix: grpc delete description
* fix: get back reduce OrgRemovedEvent
* fix: add @muhlemmer review suggestions
* fix: new e2e for add/delete org
2023-09-07 04:54:51 +00:00
Max Peintner
c8775c41e8
fix(console): display links on the app detail from well-known/openid-connect endpoint correctly ( #6469 )
...
fix: display endpoints from wellknown correctly
2023-09-06 08:53:04 +00:00
Livio Spring
e17b49e4ca
feat: add apple as idp ( #6442 )
...
* feat: manage apple idp
* handle apple idp callback
* add tests for provider
* basic console implementation
* implement flow for login UI and add logos / styling
* tests
* cleanup
* add upload button
* begin i18n
* apple logo positioning, file upload component
* fix add apple instance idp
* add missing apple logos for login
* update to go 1.21
* fix slice compare
* revert permission changes
* concrete error messages
* translate login apple logo -y-2px
* change form parsing
* sign in button
* fix tests
* lint console
---------
Co-authored-by: peintnermax <max@caos.ch>
2023-08-31 08:39:16 +02:00
Miguel Cabrerizo
5dddbe7a8b
feat: sort the event types in alphabetical order ( #6400 )
...
Co-authored-by: Max Peintner <max@caos.ch>
2023-08-29 07:39:29 +00:00
Miguel Cabrerizo
fd00ac533a
feat: add reply-to header in email notification ( #6393 )
...
* feat: add reply-to header to smtp messages
* fix: grpc reply_to_address min 0 and js var name
* fix: add missing translations
* fix merge and linting
---------
Co-authored-by: Livio Spring <livio.a@gmail.com>
2023-08-29 09:08:24 +02:00
Elio Bischof
29fa3d417c
feat(console): enable ID token mapping for generic OIDC provider ( #6426 )
...
* fix: use IsIdTokenMapping request property
* feat(console): oidc provider id token mapping
* fix scss
* reduce styles
* fix lint
---------
Co-authored-by: peintnermax <max@caos.ch>
Co-authored-by: Livio Spring <livio.a@gmail.com>
2023-08-23 12:57:20 +00:00
Arshil Vahora
3df4361bfb
fix: one item menus height issue ( #6359 )
...
changed minimum-height attribute of mat menu for both light as well as dark theme
Closes #6140
Co-authored-by: Max Peintner <max@caos.ch>
2023-08-21 17:08:45 +00:00
Max Peintner
a141b8f3e7
fix(console): set metadata value encoding to utf-8 ( #6392 )
...
* fix: set encoding to utf-8
* org metadata encoding
* user detail mgmt encoding
* utf-8 encoding decoding of saml applications
---------
Co-authored-by: Livio Spring <livio.a@gmail.com>
2023-08-19 07:16:40 +00:00
Max Peintner
a262595fc2
feat(console): add otp sms
and otp email
as factor ( #6343 )
...
* cli, core
* material cdk
* schematics
* chore(deps-dev): bump eslint from 8.40.0 to 8.44.0 in /console (#6127 )
Bumps [eslint](https://github.com/eslint/eslint ) from 8.40.0 to 8.44.0.
- [Release notes](https://github.com/eslint/eslint/releases )
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md )
- [Commits](https://github.com/eslint/eslint/compare/v8.40.0...v8.44.0 )
---
updated-dependencies:
- dependency-name: eslint
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* npm
* feat: add otp sms button
* lock
* rm package-lock
* prompt to setup sms otp on verify
* cli, core
* material, cdk
* schematics
* otp email
* show type
* show type on mgmt page
* disable selection on add
* rename totp
* fix totp i18n
* directly use data, fix styles
* sms req
* fix type check
* fix delete
* rm comment
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Livio Spring <livio.a@gmail.com>
2023-08-16 04:37:16 +00:00
Livio Spring
7c494fd219
feat(login): add OTP (email and sms) ( #6353 )
...
* feat: login with otp
* fix(i18n): japanese translation
* add missing files
* fix provider change
* add event types translations to en
* add tests
* resourceOwner
* remove unused handler
* fix: secret generators and add comments
* add setup step
* rename
* linting
* fix setup
* improve otp handling
* fix autocomplete
* translations for login and notifications
* translations for event types
* changes from review
* check selected mfa type
2023-08-15 12:47:05 +00:00
Miguel Cabrerizo
b383892d36
fix(console): filter already selected user in authorization ( #6168 )
...
* fix: filter already selected user in authorization
* fix: change const name
---------
Co-authored-by: Max Peintner <max@caos.ch>
2023-08-11 07:21:35 +00:00
Elio Bischof
343a9428b3
feat: SMS and email OTP texts ( #6281 )
...
* manage 2 custom texts proto
* implement methods
* default texts
* console
* improve translations
* lint
* test: fix e2e timeout
* fix translations
* add missing console translations
* remove unused text parts
---------
Co-authored-by: Livio Spring <livio.a@gmail.com>
2023-08-09 05:49:12 +00:00
Elio Bischof
31ec1d83b9
feat: enable otp email and sms ( #6260 )
...
* feat: enable otp email and sms
* feat: enable otp factors in login settings
* remove tests without value
* translate second factors
* don't add new factors yet
* add comment
* add factors to docs
* backward compatible settings api
* compile tests
* add available 2fa types
* test: add mapping tests
---------
Co-authored-by: Livio Spring <livio.a@gmail.com>
2023-07-28 07:39:30 +02:00
Livio Spring
2fe76acd14
feat: add secret generators for OTP ( #6262 )
...
This PR adds configuration options for OTP codes through Admin API.
2023-07-26 11:00:41 +00:00
Livio Spring
cfb8f3c07f
chore: linting in console ( #6243 )
...
chore: linting in console
2023-07-21 06:54:38 +00:00
daniel_michalichyn
fcc1acbf81
feat: Brazilian Portuguese internationalization ( #6185 )
...
* feat: Brazilian Portuguese internationalization
Co-authored-by: Daniel Michalichyn <daniel.henrique@st-one.io>
2023-07-20 04:40:45 +00:00
Livio Spring
fed15574f6
feat: allow to force MFA local only ( #6234 )
...
This PR adds an option to the LoginPolicy to "Force MFA for local users", so that users authenticated through an IDP must not configure (and verify) an MFA.
2023-07-20 04:06:16 +00:00
Miguel Cabrerizo
7b44209bfd
feat: show all available organizations when creating project grants ( #6040 )
...
* feat: show available orgs (project) grants
* feat: add e2e for project grant
* feat: add bulgarian missing translations
* feat: update docs
* fix: add @peintnermax suggested changes
---------
Co-authored-by: Max Peintner <max@caos.ch>
2023-07-18 06:45:34 +00:00
Silvan
1c354ca977
ci: improve performance ( #5953 )
...
* pipeline runs on ubuntu instead of docker
* added Makefile to build zitadel core (backend) and console (frontend)
* pipeline runs in parallel where possible
* pipeline is split into multiple jobs
* removed goreleaser
* added command to check if zitadel instance is running
2023-07-17 10:08:20 +02:00
Vlatko Stojkovski
a3a1e245ad
feat: i18n support for Macedonian language ( #6178 )
...
* add macedonian language to currently supported languages
* mk yaml login static with en values
* mk json assets with en values
* mk yaml notification static with en values
* add macedonian notification yaml
* mk yaml static with en values
* mk translations for login
* mk translations for internal
* macedonian translations
* - fix lint issues
2023-07-12 08:41:50 +00:00
Max Peintner
40a073fd33
fix(console): show warn on idp removal ( #6004 )
...
* fix: show warn on idp removal
* de, bg
* observable for refresh
---------
Co-authored-by: Elio Bischof <elio@zitadel.com>
2023-07-10 06:51:17 +00:00
Fabi
5182cb3ce3
fix: rename to given and family name ( #6152 )
...
* fix: rename to given and family name
* fix: rename to given and family name
* fix: rename to given and family name
2023-07-07 13:13:45 +00:00
Stefan Benz
d8b823660b
fix: add .txt ending to domain validation as given in console ( #6079 )
...
* fix: add .txt ending to domain validation as given in console
* fix console
---------
Co-authored-by: Max Peintner <max@caos.ch>
Co-authored-by: Livio Spring <livio.a@gmail.com>
2023-07-07 11:50:45 +00:00
Miguel Cabrerizo
37cf9f5fb2
feat: show font name & preview font in branding ( #6026 )
...
* feat: add fontname package and draft
* feat: change back delete visibility
* feat: replace fontname lib with opentype.js
* feat: dynamic font preview also for font name
---------
Co-authored-by: Max Peintner <max@caos.ch>
2023-06-23 15:36:11 +00:00
Max Peintner
244f16ac48
chore(console): dependencies ( #6078 )
...
* cli, core
* material, cdk
* deps
* lock
* chore(deps): bump socket.io-parser from 4.2.2 to 4.2.4 in /console (#5988 )
Bumps [socket.io-parser](https://github.com/socketio/socket.io-parser ) from 4.2.2 to 4.2.4.
- [Release notes](https://github.com/socketio/socket.io-parser/releases )
- [Changelog](https://github.com/socketio/socket.io-parser/blob/main/CHANGELOG.md )
- [Commits](https://github.com/socketio/socket.io-parser/compare/4.2.2...4.2.4 )
---
updated-dependencies:
- dependency-name: socket.io-parser
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
---------
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-23 17:01:08 +02:00
Miguel Cabrerizo
df87907299
feat(console): user table show timestamp instead of x ago ( #6034 )
...
Co-authored-by: Max Peintner <max@caos.ch>
2023-06-22 09:24:44 +02:00
dian mushkov
4378eb7cb5
feat: internationalization Bulgarian ( #5998 )
...
* Feature BG init
* lint fix
* Fix merge conflict
* merge main branch add bg lang
* reference centrally defined langs
* refactor supportedLanguages
---------
Co-authored-by: Livio Spring <livio.a@gmail.com>
Co-authored-by: Elio Bischof <eliobischof@gmail.com>
Co-authored-by: Max Peintner <max@caos.ch>
Co-authored-by: Elio Bischof <elio@zitadel.com>
2023-06-16 17:35:03 +02:00
Miguel Cabrerizo
c98307f70c
fix(console): back button in detail view should not navigate to create dialog again ( #6018 )
...
* fix: add double router back if new
* fix: add comments to back directive
* fix: same behavior for user creation
* fix: add query param to app, project role create
* fix: add changes suggested by @peintnermax
---------
Co-authored-by: Max Peintner <max@caos.ch>
2023-06-14 07:02:07 +00:00
Miguel Cabrerizo
33a8ab4ecf
feat(console): warning if backdrop click or escape key is pressed when new action form is dirty ( #5989 )
...
* fix: add action control esc and backdrop click
* fix: set values for new action and update action
* feat: add translations for supported languages
* feat: add some comments
* fix: add suggested changes by @peintnermax
2023-06-13 15:31:18 +00:00
Max Peintner
e39d1b7d82
fix(console): url safe base64 to array buffer ( #6019 )
...
fix: console base64 to array buffer
Co-authored-by: Livio Spring <livio.a@gmail.com>
2023-06-13 05:37:22 +00:00
Max Peintner
dafa8ab4df
fix(console): fallback to default language if browser language not supported ( #5999 )
...
fix: fallback to default language if browser language not supported
2023-06-09 15:14:15 +02:00
Max Peintner
6c90f088d2
fix(console): show warn dialog when view switched to instance ( #5935 )
...
fix: show warn dialog when changed to instance
2023-05-26 14:27:56 +02:00
Miguel Cabrerizo
767b3d7e65
fix: don't show steps in create app when pro mode ( #5730 )
...
Co-authored-by: Elio Bischof <elio@zitadel.com>
Co-authored-by: Fabi <fabienne.gerschwiler@gmail.com>
Co-authored-by: Elio Bischof <eliobischof@gmail.com>
2023-05-24 14:13:01 +00:00