Files
upstream-corteza/server/codegen/docs.rbac.cue
upstream-mirror 7e385fc126
Some checks failed
SonarQube / SonarQube (push) Failing after 5m28s
E2e test on main branch push / server and client test (map[name:admin port:8080]) (push) Failing after 3m33s
Server and lib tests / Library test (js) (push) Failing after 1m36s
Server and lib tests / Library test (vue) (push) Successful in 2m24s
Server and lib tests / Web client test (admin) (push) Successful in 2m52s
Server and lib tests / Web client test (compose) (push) Successful in 3m23s
Server and lib tests / Web client test (discovery) (push) Successful in 2m49s
Server and lib tests / Web client test (one) (push) Successful in 2m52s
Server and lib tests / Web client test (privacy) (push) Successful in 2m44s
Server and lib tests / Web client test (reporter) (push) Successful in 2m56s
Server and lib tests / Web client test (workflow) (push) Successful in 3m0s
Server and lib tests / Server tests (push) Failing after 4m55s
E2e test on main branch push / notify-failure (push) Failing after 9s
Server and lib tests / Send matrix testing notification (push) Successful in 2s
Mark stale issues and pull requests / stale (push) Successful in 40s
snapshot of https://github.com/cortezaproject/corteza.git (2024.9.x, 2026-09-18; blobs > 131072B omitted)
2026-09-18 01:22:23 +05:00

68 lines
1.5 KiB
CUE

package codegen
import (
"github.com/cortezaproject/corteza/server/codegen/schema"
"github.com/cortezaproject/corteza/server/app"
)
#_indexPayload: {
label: string
resources: [...string]
}
#_operationsPayload: {
label: string
operations: [...{
slug: string
label: string
description: string
}]
}
[...schema.#codegen] &
[
for cmp in app.corteza.components {
template: "docs/rbac.index.adoc.tpl"
output: "src/modules/generated/partials/access-control/\(cmp.handle)/index.gen.adoc"
payload: #_indexPayload & {
label: cmp.label
resources: [ for res in cmp.resources { res.handle } ]
}
}
] +
[
for cmp in app.corteza.components {
template: "docs/rbac.$component.adoc.tpl"
output: "src/modules/generated/partials/access-control/\(cmp.handle)/component.gen.adoc"
payload: #_operationsPayload & {
label: cmp.label
operations: [
for op in cmp.rbac.operations {
slug: "rbac-\(cmp.handle)-\(op.handle)"
label: op.handle
description: op.description
}
]
}
}
] +
[
for cmp in app.corteza.components for res in cmp.resources if res.rbac != _|_ {
template: "docs/rbac.$resource.adoc.tpl"
output: "src/modules/generated/partials/access-control/\(cmp.handle)/resource.\(res.handle).gen.adoc"
payload: #_operationsPayload & {
label: res.handle
operations: [
for op in res.rbac.operations {
slug: "rbac-\(res.handle)-\(op.handle)"
label: op.handle
description: op.description
}
]
}
}
]