import { gettext } from "django"; import { css, CSSResult, customElement, html, LitElement, property, TemplateResult } from "lit-element"; import { COMMON_STYLES } from "../../common/styles"; import "../../elements/Tabs"; import "../../elements/buttons/ModalButton"; import "../../elements/buttons/SpinnerButton"; import "../../elements/policies/BoundPoliciesList"; import "./BoundStagesList"; import "./FlowDiagram"; import { Flow, FlowsApi } from "../../api"; import { DEFAULT_CONFIG } from "../../api/Config"; @customElement("ak-flow-view") export class FlowViewPage extends LitElement { @property() set flowSlug(value: string) { new FlowsApi(DEFAULT_CONFIG).flowsInstancesRead({ slug: value }).then((flow) => { this.flow = flow; }); } @property({attribute: false}) flow!: Flow; static get styles(): CSSResult[] { return COMMON_STYLES.concat( css` img.pf-icon { max-height: 24px; } ak-tabs { height: 100%; } ` ); } render(): TemplateResult { if (!this.flow) { return html``; } return html`

${this.flow?.name}

${this.flow?.title}

${gettext("These policies control which users can access this flow.")}
`; } }