docs: Dynamic Manager Permission Table (#11120)

<!--
Please inform yourself about the contribution guidelines on submitting a
PR here:
https://github.com/zitadel/zitadel/blob/main/CONTRIBUTING.md#submit-a-pull-request-pr.
Take note of how PR/commit titles should be written and replace the
template texts in the sections below. Don't remove any of the sections.
It is important that the commit history clearly shows what is changed
and why.
Important: By submitting a contribution you agree to the terms from our
Licensing Policy as described here:
https://github.com/zitadel/zitadel/blob/main/LICENSING.md#community-contributions.
-->

# Which Problems Are Solved

Permissions for each manager role are stored in a .yaml file and can't
be easily searched in our docs.

# How the Problems Are Solved

We reference anyways the defaults.yaml file in our docs.
The script parses the yaml and produces a markdown table containing all
manager roles by manager permissions.

# Additional Changes

* Updated README with correct production build command

# Additional Context

---------

Co-authored-by: Florian Forster <[email protected]>
Co-authored-by: Livio Spring <[email protected]>
This commit is contained in:
Maximilian
2025-12-09 14:05:04 +02:00
committed by GitHub
co-authored by Florian Forster Livio Spring
parent 541f8058cb
commit 94f9ef966f
8 changed files with 249 additions and 23 deletions
+66 -19
View File
@@ -140,7 +140,7 @@ importers:
version: 1.0.0
'@vitejs/plugin-react':
specifier: ^4.4.1
version: 4.7.0(vite@5.4.20(@types/[email protected])([email protected])([email protected])([email protected])([email protected]))
version: 4.7.0(vite@7.1.5(@types/[email protected])([email protected])([email protected])([email protected])([email protected])([email protected])([email protected]))
'@zitadel/client':
specifier: workspace:*
version: link:../../packages/zitadel-client
@@ -218,7 +218,7 @@ importers:
version: 5.9.2
vite-tsconfig-paths:
specifier: ^5.1.4
version: 5.1.4([email protected])(vite@5.4.20(@types/[email protected])([email protected])([email protected])([email protected])([email protected]))
version: 5.1.4([email protected])(vite@7.1.5(@types/[email protected])([email protected])([email protected])([email protected])([email protected])([email protected])([email protected]))
vitest:
specifier: ^2.0.0
version: 2.1.9(@types/[email protected])([email protected])([email protected])([email protected])([email protected])([email protected])
@@ -538,6 +538,9 @@ importers:
react-player:
specifier: ^2.15.1
version: 2.16.1([email protected])
unicode-property-aliases-ecmascript:
specifier: ^2.2.0
version: 2.2.0
devDependencies:
'@docusaurus/module-type-aliases':
specifier: ^3.8.1
@@ -548,6 +551,9 @@ importers:
tailwindcss:
specifier: ^3.2.4
version: 3.4.14
yaml-loader:
specifier: ^0.8.1
version: 0.8.1
packages/zitadel-client:
dependencies:
@@ -9541,6 +9547,9 @@ packages:
[email protected]:
resolution: {integrity: sha512-OtC7JRasiTcjsaCBPtMO0Tl8glCejM4J4/dNuOJdA8lBjz4PmWjYQ6pzb0uzpBNAWJMDudYuj9OdXJWqM2QTJg==}
[email protected]:
resolution: {integrity: sha512-JVAfqNPTvNq3sB/VHQJAFxN/sPgKnsKrCwyRt15zwNCdrMMJDdcEOdubuy+DuJYYdm0ox1J4uzEuYKkN+9yhVg==}
[email protected]:
resolution: {integrity: sha512-4+prq+9J61mOVXCa4Qp8ZjavdxzrWQXrI80GNxP8f4tkI2syPuPrJgdRPZRrfUTRvIoUwcmNLbqEJy9W800+NQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
@@ -9594,6 +9603,10 @@ packages:
resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
hasBin: true
[email protected]:
resolution: {integrity: sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==}
hasBin: true
[email protected]:
resolution: {integrity: sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==}
@@ -12101,7 +12114,7 @@ packages:
[email protected]:
resolution: {integrity: sha512-XjCY1SiSEi1T7iSYuxS82ft85kwDJUS7wj1Z0eGVXKdtr5g4xnVcbjwxhq5xBnpK/E7x1VZZoJDxpjAOasHT4Q==}
engines: {node: '>=18'}
deprecated: < 24.9.0 is no longer supported
deprecated: < 24.15.0 is no longer supported
hasBin: true
[email protected]:
@@ -13639,8 +13652,8 @@ packages:
resolution: {integrity: sha512-JQ84qTuMg4nVkx8ga4A16a1epI9H6uTXAknqxkGF/aFfRLw1xC/Bp24HNLaZhHSkWd3+84t8iXnp1J0kYcZHhg==}
engines: {node: '>=4'}
unicode-property-aliases-ecmascript@2.1.0:
resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==}
unicode-property-aliases-ecmascript@2.2.0:
resolution: {integrity: sha512-hpbDzxUY9BFwX+UeBnxv3Sh1q7HFxj48DTmXchNgRa46lO8uj3/1iEn3MiNUYTg1g9ctIqXCCERn8gYZhHC5lQ==}
engines: {node: '>=4'}
[email protected]:
@@ -14342,6 +14355,10 @@ packages:
[email protected]:
resolution: {integrity: sha512-2PTINUwsRqSd+s8XxKaJWQlUuEMHJQyEuh2edBbW8KNJz0SJPwUSD2zRWqezFEdN7IzAgeuYHFUCF7o8zRdZ0A==}
[email protected]:
resolution: {integrity: sha512-BCEndnUoi3BaZmePkwGGe93txRxLgMhBa/gE725v1/GHnura8QvNs7c4+4C1yyhhKoj3Dg63M7IqhA++15j6ww==}
engines: {node: '>= 14'}
[email protected]:
resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==}
engines: {node: '>= 6'}
@@ -14967,7 +14984,7 @@ snapshots:
dependencies:
'@jsdevtools/ono': 7.1.3
'@types/json-schema': 7.0.15
js-yaml: 4.1.0
js-yaml: 4.1.1
'@asamuzakjp/[email protected]':
dependencies:
@@ -16852,7 +16869,7 @@ snapshots:
'@types/react-router-config': 5.0.11
combine-promises: 1.2.0
fs-extra: 11.3.1
js-yaml: 4.1.0
js-yaml: 4.1.1
lodash: 4.17.21
react: 18.3.1
react-dom: 18.3.1([email protected])
@@ -17336,7 +17353,7 @@ snapshots:
'@docusaurus/utils-common': 3.8.1(@swc/[email protected](@swc/[email protected]))([email protected]([email protected]))([email protected])
fs-extra: 11.3.1
joi: 17.13.3
js-yaml: 4.1.0
js-yaml: 4.1.1
lodash: 4.17.21
tslib: 2.8.1
transitivePeerDependencies:
@@ -17361,7 +17378,7 @@ snapshots:
globby: 11.1.0
gray-matter: 4.0.3
jiti: 1.21.7
js-yaml: 4.1.0
js-yaml: 4.1.1
lodash: 4.17.21
micromatch: 4.0.8
p-queue: 6.6.2
@@ -19587,7 +19604,7 @@ snapshots:
colorette: 1.4.0
https-proxy-agent: 7.0.6
js-levenshtein: 1.1.6
js-yaml: 4.1.0
js-yaml: 4.1.1
minimatch: 5.1.6
pluralize: 8.0.0
yaml-ast-parser: 0.0.43
@@ -21054,7 +21071,7 @@ snapshots:
dependencies:
vite: 7.1.5(@types/[email protected])([email protected])([email protected])([email protected])([email protected])([email protected])
'@vitejs/[email protected](vite@5.4.20(@types/[email protected])([email protected])([email protected])([email protected])([email protected]))':
'@vitejs/[email protected](vite@7.1.5(@types/[email protected])([email protected])([email protected])([email protected])([email protected])([email protected])([email protected]))':
dependencies:
'@babel/core': 7.28.4
'@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/[email protected])
@@ -21062,7 +21079,7 @@ snapshots:
'@rolldown/pluginutils': 1.0.0-beta.27
'@types/babel__core': 7.20.5
react-refresh: 0.17.0
vite: 5.4.20(@types/[email protected])([email protected])([email protected])([email protected])([email protected])
vite: 7.1.5(@types/[email protected])([email protected])([email protected])([email protected])([email protected])([email protected])([email protected])
transitivePeerDependencies:
- supports-color
@@ -22322,7 +22339,7 @@ snapshots:
[email protected]([email protected]):
dependencies:
import-fresh: 3.3.1
js-yaml: 4.1.0
js-yaml: 4.1.1
parse-json: 5.2.0
path-type: 4.0.0
optionalDependencies:
@@ -22332,7 +22349,7 @@ snapshots:
dependencies:
env-paths: 2.2.1
import-fresh: 3.3.1
js-yaml: 4.1.0
js-yaml: 4.1.1
parse-json: 5.2.0
optionalDependencies:
typescript: 5.9.2
@@ -25357,6 +25374,8 @@ snapshots:
dependencies:
colors: 1.4.0
[email protected]: {}
[email protected]:
dependencies:
'@jest/diff-sequences': 30.0.1
@@ -25425,6 +25444,10 @@ snapshots:
dependencies:
argparse: 2.0.1
[email protected]:
dependencies:
argparse: 2.0.1
[email protected]: {}
[email protected]:
@@ -27144,7 +27167,7 @@ snapshots:
find-up: 5.0.0
glob: 10.4.5
he: 1.2.0
js-yaml: 4.1.0
js-yaml: 4.1.1
log-symbols: 4.1.0
minimatch: 9.0.5
ms: 2.1.3
@@ -30865,11 +30888,11 @@ snapshots:
[email protected]:
dependencies:
unicode-canonical-property-names-ecmascript: 2.0.1
unicode-property-aliases-ecmascript: 2.1.0
unicode-property-aliases-ecmascript: 2.2.0
[email protected]: {}
unicode-property-aliases-ecmascript@2.1.0: {}
unicode-property-aliases-ecmascript@2.2.0: {}
[email protected]: {}
@@ -31235,13 +31258,13 @@ snapshots:
- supports-color
- terser
[email protected]([email protected])(vite@5.4.20(@types/[email protected])([email protected])([email protected])([email protected])([email protected])):
[email protected]([email protected])(vite@7.1.5(@types/[email protected])([email protected])([email protected])([email protected])([email protected])([email protected])([email protected])):
dependencies:
debug: 4.4.1([email protected])
globrex: 0.1.2
tsconfck: 3.1.6([email protected])
optionalDependencies:
vite: 5.4.20(@types/[email protected])([email protected])([email protected])([email protected])([email protected])
vite: 7.1.5(@types/[email protected])([email protected])([email protected])([email protected])([email protected])([email protected])([email protected])
transitivePeerDependencies:
- supports-color
- typescript
@@ -31272,6 +31295,24 @@ snapshots:
sass: 1.92.1
terser: 5.44.0
[email protected](@types/[email protected])([email protected])([email protected])([email protected])([email protected])([email protected])([email protected]):
dependencies:
esbuild: 0.25.9
fdir: 6.5.0([email protected])
picomatch: 4.0.3
postcss: 8.5.6
rollup: 4.52.3
tinyglobby: 0.2.15
optionalDependencies:
'@types/node': 22.18.1
fsevents: 2.3.3
jiti: 2.5.1
less: 4.1.3
lightningcss: 1.30.1
sass: 1.92.1
terser: 5.44.0
yaml: 2.8.1
[email protected](@types/[email protected])([email protected])([email protected])([email protected])([email protected])([email protected]):
dependencies:
esbuild: 0.25.9
@@ -31734,6 +31775,12 @@ snapshots:
[email protected]: {}
[email protected]:
dependencies:
javascript-stringify: 2.1.0
loader-utils: 2.0.4
yaml: 2.8.1
[email protected]: {}
[email protected]: {}