@kumori/aurora-wui-components 0.0.3 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/cards/aurora-base-card.d.ts +13 -2
- package/dist/components/cards/aurora-base-card.d.ts.map +1 -1
- package/dist/components/cards/card.types.d.ts +4 -0
- package/dist/components/cards/card.types.d.ts.map +1 -1
- package/dist/components/cards/parts/aurora-card-attention-banner.d.ts +2 -2
- package/dist/components/cards/parts/aurora-card-attention-banner.d.ts.map +1 -1
- package/dist/components/cards/parts/aurora-card-cloud-logo.d.ts +8 -0
- package/dist/components/cards/parts/aurora-card-cloud-logo.d.ts.map +1 -0
- package/dist/components/cards/parts/{aurora-card-status-bar.d.ts → aurora-card-footer.d.ts} +8 -2
- package/dist/components/cards/parts/aurora-card-footer.d.ts.map +1 -0
- package/dist/components/cards/parts/aurora-card-header.d.ts +5 -2
- package/dist/components/cards/parts/aurora-card-header.d.ts.map +1 -1
- package/dist/components/cards/parts/aurora-card-resource-row.d.ts +10 -0
- package/dist/components/cards/parts/aurora-card-resource-row.d.ts.map +1 -0
- package/dist/components/cards/parts/aurora-card-resource-table.d.ts +2 -2
- package/dist/components/cards/parts/aurora-card-resource-table.d.ts.map +1 -1
- package/dist/components/cards/parts/aurora-card-special-link.d.ts +10 -0
- package/dist/components/cards/parts/aurora-card-special-link.d.ts.map +1 -0
- package/dist/components/cards/parts/aurora-card-status.d.ts +10 -0
- package/dist/components/cards/parts/aurora-card-status.d.ts.map +1 -0
- package/dist/components/cards/parts/aurora-card-table-header.d.ts +15 -0
- package/dist/components/cards/parts/aurora-card-table-header.d.ts.map +1 -0
- package/dist/components/cards/parts/aurora-card-version-selector.d.ts +11 -0
- package/dist/components/cards/parts/aurora-card-version-selector.d.ts.map +1 -0
- package/dist/index.d.ts +7 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +466 -352
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/components/cards/aurora-runtime-card.d.ts +0 -43
- package/dist/components/cards/aurora-runtime-card.d.ts.map +0 -1
- package/dist/components/cards/parts/aurora-card-status-bar.d.ts.map +0 -1
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../src/components/aurora-button.ts","../src/styles/aurora-theme.ts","../src/components/cards/aurora-more-actions.ts","../src/components/cards/parts/aurora-card-header.ts","../src/components/cards/parts/aurora-card-stat-item.ts","../src/components/cards/parts/aurora-card-stats-row.ts","../src/components/cards/parts/aurora-card-filter-item.ts","../src/components/cards/parts/aurora-card-filter.ts","../src/components/cards/parts/aurora-card-attention-banner.ts","../src/components/cards/parts/aurora-card-action-banner.ts","../src/components/cards/parts/aurora-card-resource-table.ts","../src/components/cards/parts/aurora-card-status-bar.ts","../src/components/cards/aurora-base-card.ts","../src/components/cards/aurora-runtime-card.ts"],"sourcesContent":["import { LitElement, css, html } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\n\n@customElement('aurora-button')\nexport class AuroraButton extends LitElement {\n static styles = css`\n :host {\n display: inline-block;\n }\n\n button {\n font: inherit;\n cursor: pointer;\n border-radius: 6px;\n border: 1px solid transparent;\n padding: 0.5em 1.2em;\n background-color: var(--aurora-button-bg, #1a1a1a);\n color: var(--aurora-button-color, #ffffff);\n }\n\n button:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n }\n `;\n\n @property({ type: Boolean, reflect: true })\n disabled = false;\n\n render() {\n return html`\n <button ?disabled=${this.disabled}>\n <slot></slot>\n </button>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'aurora-button': AuroraButton;\n }\n}\n","import { css } from 'lit';\n\nexport const auroraTheme = css`\n .theme {\n --axebow-primary: var(--color-primary, #34495e);\n --axebow-primary-light: var(--color-primary-light, #b4cded);\n --axebow-tertiary: var(--color-tertiary, #006bff);\n --axebow-success: var(--color-success, #0ecd9a);\n --axebow-secondary: var(--color-secondary, #78787a);\n --axebow-base: var(--color-base, #f0f1f5);\n --axebow-error: var(--color-error, #e93a3a);\n --axebow-white: var(--color-white, #ffffff);\n --axebow-black: var(--color-black, #000000);\n --axebow-warning: var(--color-warning, #f9cf6c);\n --axebow-table-border: var(--color-table-border, #ddd);\n --axebow-gray: var(--color-gray, #8a94ae);\n --axebow-light-gray: var(--color-light-gray, #d9d9d9);\n\n --axebow-clickable-blue: var(--color-clickable-blue, #006bff);\n --axebow-sky-gray: var(--color-sky-gray, #8a94ee);\n --axebow-rich-black: var(--color-rich-black, #0d1821);\n --axebow-anti-flash-white: var(--color-anti-flash-white, #f0f1f5);\n --axebow-strong-gray: var(--color-strong-gray, #78787a);\n\n --axebow-bg-primary: var(--color-bg-primary, #f0f1f5);\n\n --axebow-text-gray: var(--color-text-gray, #78787a);\n\n --axebow-premium-label: var(--color-premium-label, #b9935a33);\n --axebow-premium-text: var(--color-premium-text, #b9935a);\n --axebow-deleting-link: var(--color-deleting-link, #a0a0a0);\n --axebow-border-gray: var(--color-border-gray, #9ca3af);\n }\n * {\n font-family: 'Open Sans', sans-serif;\n }\n`;\n\nexport const STATUS_COLORS = {\n HEALTHY: 'var(--axebow-success)',\n ERROR: 'var(--axebow-error)',\n WARNING: 'var(--axebow-warning)',\n DEFAULT: 'var(--axebow-gray)',\n} as const;\n","import tailwindCss from '../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { ActionMenuItem } from './card.types.js';\n\n@customElement('aurora-more-actions')\nexport class AuroraMoreActions extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`:host { display: inline-block; }`,\n ];\n\n @property({ type: Boolean }) open = false;\n @property({ type: String }) placement: 'top' | 'bottom' = 'bottom';\n @property({ type: Boolean }) disabled = false;\n @property({ type: Array }) options: ActionMenuItem[] = [];\n @property({ type: String }) title = '';\n @property({ type: String }) iconName = '';\n @property({ type: Boolean }) openToRight = false;\n @property({ type: String }) closeLabel = 'Close';\n @property({ type: String }) moreActionsLabel = 'More';\n\n @state() private _fixedPos = { top: 0, right: 0 };\n\n connectedCallback() {\n super.connectedCallback();\n document.addEventListener('click', this._handleOutsideClick);\n window.addEventListener('scroll', this._handleScroll, true);\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n document.removeEventListener('click', this._handleOutsideClick);\n window.removeEventListener('scroll', this._handleScroll, true);\n }\n\n private _handleOutsideClick = (e: MouseEvent) => {\n if (this.open && !this.contains(e.target as Node)) {\n this.open = false;\n this.dispatchEvent(new CustomEvent('toggled', { detail: { open: false } }));\n }\n };\n\n private _handleScroll = () => {\n if (this.open && this.openToRight) {\n this.open = false;\n this.dispatchEvent(new CustomEvent('toggled', { detail: { open: false } }));\n }\n };\n\n private _toggle(e: Event) {\n if (this.disabled) return;\n e.stopPropagation();\n if (!this.open && this.openToRight) {\n const btn = this.shadowRoot?.querySelector<HTMLElement>('.trigger');\n if (btn) {\n const rect = btn.getBoundingClientRect();\n this._fixedPos = { top: rect.bottom + 8, right: window.innerWidth - rect.right };\n }\n }\n this.open = !this.open;\n this.dispatchEvent(new CustomEvent('toggled', { detail: { open: this.open } }));\n }\n\n private _handleSlotClick() {\n this.open = false;\n this.dispatchEvent(new CustomEvent('toggled', { detail: { open: false } }));\n }\n\n render() {\n const placementClass = this.placement === 'top' ? 'bottom-full mb-2' : 'top-full mt-2';\n const dropdownStyle = this.openToRight\n ? `position:fixed;top:${this._fixedPos.top}px;right:${this._fixedPos.right}px;z-index:1000;`\n : '';\n\n return html`\n <div class=\"relative w-full h-full flex justify-end\">\n <button\n class=\"trigger relative font-semibold text-xs text-[var(--axebow-tertiary)] cursor-pointer py-1 px-2 h-full bg-transparent border-none transition-all duration-200 flex items-center hover:text-[var(--axebow-gray)] hover:bg-[var(--axebow-anti-flash-white)] hover:rounded-lg disabled:opacity-50 disabled:cursor-not-allowed disabled:pointer-events-none\"\n ?disabled=${this.disabled}\n @click=${this._toggle}\n >\n ${this.iconName\n ? html`<axebow-icon iconName=${this.iconName} size=\"small\" iconColor=\"var(--axebow-tertiary)\"></axebow-icon>`\n : this.open ? this.closeLabel : (this.title || this.moreActionsLabel)}\n </button>\n ${this.open\n ? html`\n <div\n class=\"absolute right-0 z-10 bg-white border border-[var(--axebow-gray)] rounded-lg shadow-[2px_2px_25px_0px_rgba(0,0,0,0.1)] p-2 min-w-44 flex flex-col ${placementClass}\"\n style=${dropdownStyle}\n @click=${this._handleSlotClick}\n >\n ${this.options?.length\n ? this.options.map(\n (opt) => html`\n <button\n class=\"flex items-center gap-2 text-left py-1 px-2 cursor-pointer rounded-sm border border-transparent bg-transparent w-full hover:bg-gray-100\"\n @click=${(e: Event) => {\n e.stopPropagation();\n opt.onTap(e);\n this.open = false;\n this.dispatchEvent(new CustomEvent('toggled', { detail: { open: false } }));\n }}\n @mouseenter=${(e: Event) => ((e.currentTarget as HTMLElement).style.borderColor = `var(--axebow-${opt.type})`)}\n @mouseleave=${(e: Event) => ((e.currentTarget as HTMLElement).style.borderColor = 'transparent')}\n >\n <axebow-icon iconName=${opt.icon} iconColor=\"var(--axebow-${opt.type})\" size=\"small\"></axebow-icon>\n <p class=\"m-0 whitespace-nowrap\" style=\"color:var(--axebow-${opt.type});\">${opt.label}</p>\n </button>\n `\n )\n : html`<slot></slot>`}\n </div>\n `\n : ''}\n </div>\n `;\n }\n}\n","import tailwindCss from '../../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { CardBadge } from '../card.types.js';\n\n@customElement('aurora-card-header')\nexport class AuroraCardHeader extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`\n :host { display: block; }\n sl-badge::part(base) { background-color: var(--axebow-secondary); color: white; }\n `,\n ];\n\n @property({ type: String }) logoSrc: string | null = null;\n @property({ type: String }) tenantOrAccount = '';\n @property({ type: String }) name = '';\n @property({ type: String }) badge: CardBadge = 'none';\n @property({ type: String }) subtitle = '';\n @property({ type: String }) cardType: 'account' | 'environment' | 'tenant' = 'account';\n @property({ type: String }) freeIaasLabel = 'Free IaaS';\n @property({ type: String }) freeIaasTitle = 'Free Infrastructure';\n @property({ type: String }) freeIaasDesc = 'This environment uses free infrastructure.';\n @property({ type: String }) haLabel = 'Highly Available';\n @property({ type: String }) haTitle = 'High Availability enabled';\n\n private _renderBadge() {\n if (this.badge === 'free-iaas') {\n return html`\n <sl-tooltip>\n <div slot=\"content\" style=\"max-width:300px;\">\n <strong>${this.freeIaasTitle}</strong>\n <p style=\"margin-top:0.5rem;\">${this.freeIaasDesc}</p>\n </div>\n <div class=\"flex items-center gap-2 cursor-pointer\">\n <axebow-icon iconName=\"info\" iconColor=\"var(--axebow-gray)\" size=\"small\"></axebow-icon>\n <span class=\"text-[var(--axebow-rich-black)]\">${this.freeIaasLabel}</span>\n </div>\n </sl-tooltip>\n `;\n }\n if (this.badge === 'ha') {\n return html`\n <sl-tooltip content=${this.haTitle}>\n <sl-badge variant=\"neutral\" pill size=\"small\" class=\"cursor-pointer\">${this.haLabel}</sl-badge>\n </sl-tooltip>\n `;\n }\n return html``;\n }\n\n render() {\n const isAccount = this.cardType === 'account';\n const isTenant = this.cardType === 'tenant';\n\n if (isAccount) {\n return html`\n <div class=\"w-full bg-[var(--axebow-anti-flash-white)] rounded-md flex items-center gap-3 py-2 px-3 h-16\">\n ${this.logoSrc\n ? html`<div class=\"h-10 w-10 flex items-center justify-center shrink-0\"><img src=${this.logoSrc} class=\"max-h-full max-w-full object-contain\" /></div>`\n : ''}\n <div class=\"flex flex-col flex-1 min-w-0\">\n ${this.tenantOrAccount\n ? html`<span class=\"font-semibold text-[var(--axebow-primary)] leading-none\">${this.tenantOrAccount}</span>`\n : ''}\n <div class=\"flex justify-between items-center\">\n <span class=\"font-bold text-xl text-[var(--axebow-primary)] leading-snug pt-0.5\">${this.name}</span>\n ${this._renderBadge()}\n </div>\n ${this.subtitle\n ? html`<div class=\"italic text-[var(--axebow-primary)] flex items-center leading-none\">${this.subtitle}<slot name=\"subtitle-tooltip\"></slot></div>`\n : ''}\n </div>\n </div>\n `;\n }\n\n return html`\n <div class=\"w-full bg-[var(--axebow-anti-flash-white)] rounded-md flex flex-col justify-center px-5 py-3 h-[4.5rem]\">\n <div class=\"flex flex-col flex-1 min-w-0\">\n ${this.tenantOrAccount || this.logoSrc\n ? html`\n <div class=\"flex gap-2 items-center leading-none mt-1\">\n ${this.logoSrc\n ? html`<div class=\"h-4 w-4\"><img src=${this.logoSrc} class=\"max-h-full max-w-full object-contain\" /></div>`\n : ''}\n <span class=\"font-semibold ${isTenant ? 'text-[var(--axebow-gray)]' : 'text-[var(--axebow-primary)]'} leading-none\">${this.tenantOrAccount}</span>\n </div>\n `\n : ''}\n <div class=\"flex justify-between items-center\">\n <span class=\"font-bold text-xl text-[var(--axebow-primary)] leading-snug pt-0.5\">${this.name}</span>\n ${this._renderBadge()}\n </div>\n ${this.subtitle\n ? html`<div class=\"italic text-[var(--axebow-primary)] flex items-center leading-none\">${this.subtitle}<slot name=\"subtitle-tooltip\"></slot></div>`\n : ''}\n </div>\n </div>\n `;\n }\n}\n","import tailwindCss from '../../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\n\n@customElement('aurora-card-stat-item')\nexport class AuroraCardStatItem extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`:host { display: block; }`,\n ];\n\n @property({ type: Number }) value: number = 0;\n @property({ type: String }) title = '';\n @property({ type: String }) label = '';\n @property({ type: Boolean }) active = true;\n @property({ type: Boolean }) compact = false;\n\n render() {\n return html`\n <div class=\"flex flex-col items-center text-center gap-0.5\">\n <h4 class=\"text-lg text-[var(--axebow-primary)] font-bold leading-snug m-0\">${this.value}</h4>\n <p class=\"m-0 leading-snug\">${this.title}</p>\n <span\n class=\"text-[var(--axebow-gray)] font-semibold text-xs ${this.active ? 'cursor-pointer opacity-100' : 'cursor-not-allowed opacity-50'}\"\n @click=${this._onClick}\n >${this.label}</span>\n </div>\n `;\n }\n\n private _onClick() {\n if (this.active) {\n this.dispatchEvent(new CustomEvent('label-click', { bubbles: true, composed: true }));\n }\n }\n}\n","import tailwindCss from '../../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { MainStatsType } from '../card.types.js';\nimport './aurora-card-stat-item.js';\n\n@customElement('aurora-card-stats-row')\nexport class AuroraCardStatsRow extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`:host { display: block; }`,\n ];\n\n @property({ type: Array }) stats: MainStatsType[] = [];\n @property({ type: Boolean }) compact = false;\n\n render() {\n return html`\n <div class=\"grid grid-cols-3 gap-1 px-2\">\n ${this.stats.map(\n (stat, index) => html`\n <aurora-card-stat-item\n .value=${stat.value}\n .title=${stat.title}\n .label=${stat.label}\n .active=${stat.active !== false}\n .compact=${this.compact}\n @label-click=${() => this._handleLabelClick(index)}\n ></aurora-card-stat-item>\n `\n )}\n </div>\n `;\n }\n\n private _handleLabelClick(index: number) {\n this.dispatchEvent(\n new CustomEvent('stat-label-click', { detail: { index }, bubbles: true, composed: true })\n );\n }\n}\n","import tailwindCss from '../../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\n\n@customElement('aurora-card-filter-item')\nexport class AuroraCardFilterItem extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`:host { display: block; }`,\n ];\n\n @property({ type: String }) name = '';\n @property({ type: Boolean }) showAttention = false;\n\n render() {\n return html`\n <div\n class=\"w-full py-1 px-2 flex justify-between items-center border-t border-[var(--axebow-light-gray)] cursor-pointer hover:bg-[var(--axebow-light-gray)]\"\n @click=${this._onClick}\n >\n <p class=\"m-0\">${this.name}</p>\n ${this.showAttention\n ? html`<axebow-icon iconName=\"error\" size=\"small\" iconColor=\"var(--axebow-error)\"></axebow-icon>`\n : ''}\n </div>\n `;\n }\n\n private _onClick() {\n this.dispatchEvent(\n new CustomEvent('item-select', { detail: { name: this.name }, bubbles: true, composed: true })\n );\n }\n}\n","import tailwindCss from '../../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { CardFilterItem } from '../card.types.js';\nimport './aurora-card-filter-item.js';\n\n@customElement('aurora-card-filter')\nexport class AuroraCardFilter extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`:host { display: block; }`,\n ];\n\n @property({ type: Array }) items: CardFilterItem[] = [];\n @property({ type: String }) selected: string | null = null;\n @property({ type: String }) emptyLabel = '';\n @property({ type: String }) emptyActionLabel = '';\n @property({ type: String }) attentionLabel = 'Attention needed';\n @property({ type: Boolean }) showAttention = false;\n @property({ type: Boolean }) opened = false;\n @property({ type: Boolean }) isPlainRole = false;\n @property({ type: Boolean }) isDisabled = false;\n\n render() {\n const showEmpty = !this.selected && this.items.length === 0;\n\n return html`\n <div class=\"relative\">\n <div class=\"flex justify-between items-center border-b border-[var(--axebow-light-gray)] w-full px-2 cursor-pointer h-7\">\n ${showEmpty\n ? html`\n <p\n class=\"m-0 ${this.isPlainRole || this.isDisabled\n ? 'text-[var(--axebow-gray)] cursor-default opacity-50'\n : 'text-[var(--axebow-tertiary)] cursor-pointer'}\"\n @click=${this.isPlainRole || this.isDisabled ? undefined : this._onEmptyAction}\n >\n ${this.emptyActionLabel}\n </p>\n `\n : html`\n <div\n class=\"flex w-full justify-between items-center ${this.isDisabled ? 'opacity-50 cursor-not-allowed' : ''}\"\n @click=${this.isDisabled ? undefined : this._onToggle}\n >\n <span class=\"text-[var(--axebow-tertiary)]\">${this.selected ?? this.emptyLabel}</span>\n <div class=\"flex items-center gap-2\">\n ${this.showAttention\n ? html`<p class=\"text-[var(--axebow-error)] m-0 text-xs\">${this.attentionLabel}</p>`\n : ''}\n <axebow-icon iconName=\"chevron_right\" rotate=\"90\" iconColor=\"var(--axebow-tertiary)\" size=\"small\"></axebow-icon>\n </div>\n </div>\n `}\n </div>\n\n <div class=\"${this.opened ? '' : 'hidden'} absolute top-full left-0 right-0 z-10 flex flex-col bg-white rounded-b-lg border border-[var(--axebow-light-gray)] shadow-[2px_2px_25px_0px_rgba(0,0,0,0.1)] max-h-40 overflow-y-auto\">\n <p class=\"w-full p-2 cursor-pointer m-0 hover:bg-[var(--axebow-light-gray)]\" @click=${() => this._onSelect(null)}>${this.emptyLabel}</p>\n ${this.items.map(\n (item) => html`\n <aurora-card-filter-item\n .name=${item.name}\n .showAttention=${item.showAttention}\n @item-select=${(e: CustomEvent) => this._onSelect(e.detail.name)}\n ></aurora-card-filter-item>\n `\n )}\n </div>\n </div>\n `;\n }\n\n private _onToggle() {\n this.dispatchEvent(new CustomEvent('toggle-open', { bubbles: true, composed: true }));\n }\n\n private _onSelect(name: string | null) {\n this.dispatchEvent(new CustomEvent('filter-select', { detail: { name }, bubbles: true, composed: true }));\n }\n\n private _onEmptyAction() {\n this.dispatchEvent(new CustomEvent('empty-action-click', { bubbles: true, composed: true }));\n }\n}\n","import tailwindCss from '../../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { TableStatsType } from '../card.types.js';\n\n@customElement('aurora-card-attention-banner')\nexport class AuroraCardAttentionBanner extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`\n :host { display: block; }\n .error-bg { background-color: color-mix(in srgb, var(--axebow-error) 10%, white); }\n `,\n ];\n\n @property({ type: String }) cardType: 'account' | 'environment' | 'tenant' = 'account';\n @property({ type: Array }) tableStats: TableStatsType[] = [];\n @property({ type: Number }) threshold = 90;\n @property({ type: Boolean }) isPlainRole = false;\n @property({ type: Boolean }) invalidCredentials = false;\n @property({ type: String }) manageLabel = 'Manage';\n @property({ type: String }) askOwnerLabel = 'Ask your owner';\n @property({ type: String }) invalidCredsLabel = 'Invalid credentials.';\n @property({ type: String }) limitReachedLabel = 'Limit reached.';\n @property({ type: String }) andLabel = 'and';\n\n private _getExceeded(): string[] {\n const primary = this.tableStats.slice(0, 3).map((r) => r.title);\n return this.tableStats\n .filter((s) => primary.includes(s.title) && s.percentage >= this.threshold)\n .map((s) => s.title);\n }\n\n private _formatList(resources: string[]): string {\n if (resources.length === 1) return resources[0];\n if (resources.length === 2) return `${resources[0]} ${this.andLabel} ${resources[1]}`;\n return `${resources.slice(0, -1).join(', ')} ${this.andLabel} ${resources[resources.length - 1]}`;\n }\n\n render() {\n const exceeded = this._getExceeded();\n if (exceeded.length === 0 && !this.invalidCredentials) return html``;\n\n return html`\n <div class=\"error-bg flex flex-wrap items-center justify-center gap-1 w-full px-1 text-center\">\n ${this.isPlainRole\n ? html`<span class=\"text-[var(--axebow-error)]\">${this.askOwnerLabel}</span>`\n : html`\n <p class=\"text-[var(--axebow-error)] m-0\">\n ${this.invalidCredentials\n ? this.invalidCredsLabel\n : `${this.limitReachedLabel} ${this._formatList(exceeded)}.`}\n <span class=\"text-[var(--axebow-error)] cursor-pointer\" @click=${this._onManage}>\n ${this.manageLabel}\n <axebow-icon iconName=\"arrow_forward\" iconColor=\"var(--axebow-error)\" size=\"small\"></axebow-icon>\n </span>\n </p>\n `}\n </div>\n `;\n }\n\n private _onManage() {\n this.dispatchEvent(new CustomEvent('manage-click', { bubbles: true, composed: true }));\n }\n}\n","import tailwindCss from '../../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\n\n@customElement('aurora-card-action-banner')\nexport class AuroraCardActionBanner extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`\n :host { display: block; }\n .tertiary-bg { background-color: color-mix(in srgb, var(--axebow-tertiary) 10%, white); }\n axebow-button::part(label) { color: var(--axebow-tertiary); font-weight: 600; display: flex; align-items: center; gap: 2px; }\n axebow-button::part(base) { padding: 0; height: auto; min-height: unset; }\n `,\n ];\n\n @property({ type: String }) label = 'View details';\n\n render() {\n return html`\n <div class=\"tertiary-bg flex items-center justify-center gap-1 w-full px-3 text-sm text-center\">\n <axebow-button variant=\"text\" size=\"small\" @click=${this._onClick}>\n ${this.label}\n <axebow-icon iconName=\"arrow_forward\" iconColor=\"var(--axebow-tertiary)\" size=\"small\"></axebow-icon>\n </axebow-button>\n </div>\n `;\n }\n\n private _onClick() {\n this.dispatchEvent(new CustomEvent('action-click', { bubbles: true, composed: true }));\n }\n}\n","import tailwindCss from '../../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { TableStatsType } from '../card.types.js';\nimport './aurora-card-attention-banner.js';\nimport './aurora-card-action-banner.js';\n\n@customElement('aurora-card-resource-table')\nexport class AuroraCardResourceTable extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`:host { display: block; }`,\n ];\n\n @property({ type: Array }) rows: TableStatsType[] = [];\n @property({ type: Number }) attentionThreshold = 90;\n @property({ type: String }) cardType: 'account' | 'environment' | 'tenant' = 'account';\n @property({ type: Boolean }) isPlainRole = false;\n @property({ type: Boolean }) showActionBanner = false;\n @property({ type: Boolean }) showWarningBanner = false;\n @property({ type: String }) manageLabel = 'Manage';\n @property({ type: String }) askOwnerLabel = 'Ask your owner';\n @property({ type: String }) invalidCredsLabel = 'Invalid credentials.';\n @property({ type: String }) limitReachedLabel = 'Limit reached.';\n @property({ type: String }) andLabel = 'and';\n @property({ type: String }) actionBannerLabel = '';\n\n private _hasAttention(): boolean {\n const primary = this.rows.slice(0, 3).map((r) => r.title);\n return this.rows.some((s) => primary.includes(s.title) && s.percentage >= this.attentionThreshold);\n }\n\n render() {\n const showWarning = !this.isPlainRole && this.showWarningBanner;\n const showAttention = !this.isPlainRole && !showWarning && this.showActionBanner && this._hasAttention();\n const showAction = !this.isPlainRole && !showWarning && this.showActionBanner && !this._hasAttention();\n\n const visibleRows = this.rows.filter((r) => !r.hidden);\n const lastVisible = visibleRows[visibleRows.length - 1];\n\n return html`\n <div>\n <div class=\"flex border-b border-[var(--axebow-light-gray)]\">\n <!-- Icon + title -->\n <div class=\"flex flex-col justify-between\">\n ${this.rows.map((stat, i) => html`\n <div class=\"flex items-center w-full px-2 h-8 gap-2 ${!stat.hidden && stat !== lastVisible ? 'border-b border-[var(--axebow-light-gray)]' : ''}\">\n ${!stat.hidden ? html`\n <div class=\"flex items-center gap-2 ${stat.isSecondary ? 'ml-2' : ''}\">\n <axebow-icon iconName=${stat.icon} size=\"small\" rotate=${stat.iconRotation ?? 0}></axebow-icon>\n <span class=\"text-xs ${stat.isSecondary ? '' : 'font-semibold'}\">${stat.title}</span>\n </div>\n ` : ''}\n </div>\n `)}\n </div>\n\n <!-- Current value -->\n <div class=\"flex flex-col justify-between\">\n ${this.rows.map((stat, i) => html`\n <div class=\"flex items-center justify-end w-full px-2 h-8 gap-2 ${!stat.hidden && stat !== lastVisible ? 'border-b border-[var(--axebow-light-gray)]' : ''}\">\n ${!stat.hidden ? html`\n <p class=\"${stat.isSecondary ? 'font-normal' : 'font-semibold'} m-0\">${stat.value ?? '-.-'}</p>\n ` : ''}\n </div>\n `)}\n </div>\n\n <!-- Progress bar -->\n <div class=\"flex flex-1 flex-col justify-between\">\n ${this.rows.map((stat, i) => html`\n <div class=\"flex items-center justify-end w-full px-2 h-8 ${!stat.hidden && stat !== lastVisible ? 'border-b border-[var(--axebow-light-gray)]' : ''}\">\n ${!stat.hidden ? html`\n <div class=\"h-2 w-full bg-[var(--axebow-light-gray)] rounded-md relative overflow-hidden\">\n <div\n class=\"absolute h-full ${stat.percentage >= this.attentionThreshold ? 'bg-[var(--axebow-error)]' : 'bg-[var(--axebow-gray)]'}\"\n style=\"width:${stat.percentage}%;\"\n ></div>\n </div>\n ` : ''}\n </div>\n `)}\n </div>\n\n <!-- Max value -->\n <div class=\"flex flex-col justify-between\">\n ${this.rows.map((stat, i) => html`\n <div class=\"flex items-center justify-end w-full px-2 h-8 gap-2 ${!stat.hidden && stat !== lastVisible ? 'border-b border-[var(--axebow-light-gray)]' : ''}\">\n ${!stat.hidden ? html`\n <p class=\"${stat.isSecondary ? 'font-normal' : 'font-semibold'} m-0\">\n ${stat.maxValue ?? '-.-'}<span class=\"font-normal\">${stat.tagValue ?? ''}</span>\n </p>\n ` : ''}\n </div>\n `)}\n </div>\n </div>\n\n ${showWarning\n ? html`<aurora-card-attention-banner\n .invalidCredentials=${true}\n .isPlainRole=${this.isPlainRole}\n .manageLabel=${this.manageLabel}\n .askOwnerLabel=${this.askOwnerLabel}\n .invalidCredsLabel=${this.invalidCredsLabel}\n .limitReachedLabel=${this.limitReachedLabel}\n .andLabel=${this.andLabel}\n ></aurora-card-attention-banner>`\n : showAttention\n ? html`<aurora-card-attention-banner\n .cardType=${this.cardType}\n .tableStats=${this.rows}\n .threshold=${this.attentionThreshold}\n .isPlainRole=${this.isPlainRole}\n .manageLabel=${this.manageLabel}\n .askOwnerLabel=${this.askOwnerLabel}\n .invalidCredsLabel=${this.invalidCredsLabel}\n .limitReachedLabel=${this.limitReachedLabel}\n .andLabel=${this.andLabel}\n ></aurora-card-attention-banner>`\n : showAction\n ? html`<aurora-card-action-banner .label=${this.actionBannerLabel} @action-click=${() => this.dispatchEvent(new CustomEvent('action-click', { bubbles: true, composed: true }))}></aurora-card-action-banner>`\n : ''}\n </div>\n `;\n }\n}\n","import tailwindCss from '../../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { ActionMenuItem } from '../card.types.js';\nimport '../aurora-more-actions.js';\n\n@customElement('aurora-card-status-bar')\nexport class AuroraCardStatusBar extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`:host { display: block; }`,\n ];\n\n @property({ type: Boolean }) isFreeIaaS = false;\n @property({ type: Boolean }) isPlainRole = false;\n @property({ type: Boolean }) moreActionsOpen = false;\n @property({ type: Array }) moreActionsOptions: ActionMenuItem[] = [];\n @property({ type: String }) closeLabel = 'Close';\n @property({ type: String }) moreActionsLabel = 'More';\n\n render() {\n const showActions = !this.isFreeIaaS && !this.isPlainRole && this.moreActionsOptions.length > 0;\n return html`\n <div class=\"flex justify-between items-center relative h-6 gap-2 text-xs\">\n <div class=\"flex-1 min-w-0 whitespace-nowrap overflow-hidden text-ellipsis\"><slot></slot></div>\n ${showActions\n ? html`\n <aurora-more-actions\n class=\"shrink-0 mr-2\"\n placement=\"top\"\n .open=${this.moreActionsOpen}\n .options=${this.moreActionsOptions}\n .closeLabel=${this.closeLabel}\n .moreActionsLabel=${this.moreActionsLabel}\n @toggled=${this._onToggled}\n ></aurora-more-actions>\n `\n : ''}\n </div>\n `;\n }\n\n private _onToggled(e: CustomEvent) {\n this.dispatchEvent(\n new CustomEvent('more-actions-toggled', { detail: { open: e.detail.open }, bubbles: true, composed: true })\n );\n }\n}\n","import tailwindCss from '../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { ActionMenuItem, CardBadge, CardFilterItem, MainStatsType, TableStatsType } from './card.types.js';\nimport './aurora-more-actions.js';\nimport './parts/aurora-card-header.js';\nimport './parts/aurora-card-stats-row.js';\nimport './parts/aurora-card-filter.js';\nimport './parts/aurora-card-resource-table.js';\nimport './parts/aurora-card-status-bar.js';\n\n@customElement('aurora-base-card')\nexport class AuroraBaseCard extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`\n :host { display: block; width: 450px; max-width: 100%; }\n sl-badge::part(base) { background-color: var(--axebow-secondary); color: white; }\n sl-dialog::part(panel) { width: 35vw; }\n sl-dialog::part(body) { padding-top: 0; }\n sl-alert::part(base) { border-top: 2px solid var(--axebow-error); }\n sl-range, sl-range:hover {\n --sl-color-primary-600: var(--axebow-tertiary);\n --sl-color-primary-500: var(--axebow-tertiary);\n }\n `,\n ];\n\n @property({ type: String }) cardType: 'account' | 'environment' | 'tenant' = 'account';\n @property({ type: String }) name = '';\n @property({ type: String }) logoSrc: string | null = null;\n @property({ type: String }) tenantOrAccount = '';\n @property({ type: String }) badge: CardBadge = 'none';\n @property({ type: String }) subtitle = '';\n\n @property({ type: Array }) mainStats: MainStatsType[] = [];\n @property({ type: Boolean }) compact = false;\n\n @property({ type: Array }) tableStats: TableStatsType[] = [];\n @property({ type: Number }) attentionThreshold = 90;\n\n @property({ type: Array }) filterItems: CardFilterItem[] = [];\n @property({ type: String }) selected: string | null = null;\n @property({ type: Boolean }) filterOpened = false;\n @property({ type: String }) emptyLabel = '';\n @property({ type: String }) emptyActionLabel = '';\n @property({ type: String }) attentionLabel = 'Attention needed';\n @property({ type: Boolean }) showAttention = false;\n @property({ type: Boolean }) isPlainRole = false;\n @property({ type: Boolean }) isDeleting = false;\n @property({ type: Boolean }) isDisabled = false;\n\n @property({ type: Boolean }) showActionBanner = false;\n @property({ type: Boolean }) showWarningBanner = false;\n @property({ type: String }) manageLabel = 'Manage';\n @property({ type: String }) askOwnerLabel = 'Ask your owner';\n @property({ type: String }) invalidCredsLabel = 'Invalid credentials.';\n @property({ type: String }) limitReachedLabel = 'Limit reached.';\n @property({ type: String }) andLabel = 'and';\n @property({ type: String }) actionBannerLabel = '';\n\n @property({ type: Boolean }) moreActionsOpen = false;\n @property({ type: Array }) moreActionsOptions: ActionMenuItem[] = [];\n @property({ type: Boolean }) isFreeIaaS = false;\n @property({ type: String }) closeLabel = 'Close';\n @property({ type: String }) moreActionsLabel = 'More';\n\n @property({ type: String }) freeIaasLabel = 'Free IaaS';\n @property({ type: String }) freeIaasTitle = 'Free Infrastructure';\n @property({ type: String }) freeIaasDesc = 'This environment uses free infrastructure.';\n @property({ type: String }) haLabel = 'Highly Available';\n @property({ type: String }) haTitle = 'High Availability enabled';\n\n render() {\n return html`\n <div class=\"w-full bg-[var(--axebow-white)] rounded-lg px-2 pt-2 pb-4 flex flex-col justify-between gap-2 h-full transition-shadow duration-200 ease-in-out hover:shadow-[0_4px_12px_0_rgba(13,24,33,0.08)]\">\n <div class=\"flex flex-col gap-2\">\n <aurora-card-header\n .cardType=${this.cardType}\n .logoSrc=${this.logoSrc}\n .tenantOrAccount=${this.tenantOrAccount}\n .name=${this.name}\n .badge=${this.badge}\n .subtitle=${this.subtitle}\n .freeIaasLabel=${this.freeIaasLabel}\n .freeIaasTitle=${this.freeIaasTitle}\n .freeIaasDesc=${this.freeIaasDesc}\n .haLabel=${this.haLabel}\n .haTitle=${this.haTitle}\n >\n <slot slot=\"subtitle-tooltip\" name=\"subtitle-tooltip\"></slot>\n </aurora-card-header>\n\n <div class=\"w-full px-2 flex flex-col gap-2\">\n <aurora-card-stats-row\n .stats=${this.mainStats}\n .compact=${this.compact}\n @stat-label-click=${(e: CustomEvent) =>\n !this.isDeleting && this.dispatchEvent(new CustomEvent('stat-label-click', { detail: e.detail, bubbles: true, composed: true }))}\n ></aurora-card-stats-row>\n\n <div class=\"w-full h-full border border-[var(--axebow-light-gray)] rounded-md\">\n <aurora-card-filter\n .items=${this.filterItems}\n .selected=${this.selected}\n .emptyLabel=${this.emptyLabel}\n .emptyActionLabel=${this.emptyActionLabel}\n .attentionLabel=${this.attentionLabel}\n .showAttention=${this.showAttention}\n .opened=${this.filterOpened}\n .isPlainRole=${this.isPlainRole}\n .isDisabled=${this.isDeleting || this.isDisabled}\n @filter-select=${(e: CustomEvent) =>\n !this.isDeleting && this.dispatchEvent(new CustomEvent('filter-select', { detail: e.detail, bubbles: true, composed: true }))}\n @toggle-open=${() =>\n !this.isDeleting && this.dispatchEvent(new CustomEvent('toggle-filter', { bubbles: true, composed: true }))}\n @empty-action-click=${() =>\n !this.isDeleting && this.dispatchEvent(new CustomEvent('empty-action-click', { bubbles: true, composed: true }))}\n ></aurora-card-filter>\n\n <aurora-card-resource-table\n .rows=${this.tableStats}\n .attentionThreshold=${this.attentionThreshold}\n .cardType=${this.cardType}\n .isPlainRole=${this.isPlainRole}\n .showActionBanner=${this.showActionBanner}\n .showWarningBanner=${this.showWarningBanner}\n .manageLabel=${this.manageLabel}\n .askOwnerLabel=${this.askOwnerLabel}\n .invalidCredsLabel=${this.invalidCredsLabel}\n .limitReachedLabel=${this.limitReachedLabel}\n .andLabel=${this.andLabel}\n .actionBannerLabel=${this.actionBannerLabel}\n @manage-click=${() =>\n !this.isDeleting && this.dispatchEvent(new CustomEvent('manage-click', { bubbles: true, composed: true }))}\n @action-click=${() =>\n !this.isDeleting && this.dispatchEvent(new CustomEvent('action-click', { bubbles: true, composed: true }))}\n ></aurora-card-resource-table>\n </div>\n\n <slot name=\"extra-features\"></slot>\n </div>\n </div>\n\n <aurora-card-status-bar\n class=\"mb-1 pl-2\"\n .isFreeIaaS=${this.isFreeIaaS}\n .isPlainRole=${this.isPlainRole}\n .moreActionsOpen=${this.moreActionsOpen}\n .moreActionsOptions=${this.moreActionsOptions}\n .closeLabel=${this.closeLabel}\n .moreActionsLabel=${this.moreActionsLabel}\n @more-actions-toggled=${(e: CustomEvent) =>\n this.dispatchEvent(new CustomEvent('more-actions-toggled', { detail: e.detail, bubbles: true, composed: true }))}\n >\n <slot name=\"status-footer\"></slot>\n </aurora-card-status-bar>\n\n <slot name=\"dialogs\"></slot>\n </div>\n `;\n }\n}\n","import tailwindCss from '../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { TableStatsType, RuntimeFilterRole } from './card.types.js';\nimport './parts/aurora-card-resource-table.js';\n\n@customElement('aurora-runtime-card')\nexport class AuroraRuntimeCard extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`\n :host { display: block; width: 380px; height: 417px; max-width: 100%; }\n\n .revision-wrap sl-select {\n --sl-input-background-color: transparent;\n --sl-input-border-color: transparent;\n border: none;\n background: transparent;\n padding: 0;\n margin: 0;\n min-width: 0;\n width: 100% !important;\n }\n .revision-wrap sl-select::part(base) {\n border: none;\n background-color: transparent;\n padding: 0;\n min-width: 0;\n display: inline-block;\n }\n sl-select::part(display-input) { padding: 0 8px; }\n sl-select::part(combobox) { padding: 0; }\n sl-select sl-option[checked] .revision-ts,\n sl-select sl-option[current] .revision-ts,\n sl-select sl-option[aria-selected=\"true\"] .revision-ts { color: white !important; }\n sl-tooltip::part(base) { max-width: none; white-space: normal; word-break: break-word; }\n sl-dialog::part(panel) { width: 35vw; min-width: 400px; }\n sl-dialog::part(body) { padding-top: 0; }\n .deploy-time {\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n }\n `,\n ];\n\n @property({ type: String }) name = '';\n @property({ type: String }) logo = '';\n @property({ type: Array }) revisions: Array<{ id: string }> = [];\n @property({ type: String }) displayedRevision = '';\n @property({ type: String }) lastDeployed = '';\n @property({ type: Boolean }) isDeployed = false;\n @property({ type: Array }) tableStats: TableStatsType[] = [];\n @property({ type: Number }) attentionThreshold = 90;\n @property({ type: Boolean }) filterOpened = false;\n @property({ type: String }) filterDisplayText = '';\n @property({ type: Array }) filterRoles: RuntimeFilterRole[] = [];\n @property({ type: Boolean }) showAttention = false;\n @property({ type: String }) borderColor = '';\n @property({ type: String }) statusCode = '';\n @property({ type: String }) statusMessage = '';\n @property({ type: Boolean }) isRemoving = false;\n\n @property({ type: String }) deployedLabel = 'Deployed';\n @property({ type: String }) allLabel = 'All Roles & Instances';\n @property({ type: String }) attentionLabel = 'Attention needed';\n @property({ type: String }) serviceDetailLabel = 'Service detail';\n @property({ type: String }) manageLabel = 'Manage';\n @property({ type: String }) askOwnerLabel = 'Ask your owner';\n @property({ type: String }) invalidCredsLabel = 'Invalid credentials.';\n @property({ type: String }) limitReachedLabel = 'Limit reached.';\n @property({ type: String }) andLabel = 'and';\n\n render() {\n return html`\n <div\n class=\"w-full h-full bg-[var(--axebow-white)] rounded-lg px-2 pt-2 pb-4 flex flex-col justify-between gap-2 box-border border-t-4 transition-shadow duration-200 ease-in-out hover:shadow-[0_4px_12px_0_rgba(13,24,33,0.08)] ${this.isRemoving ? 'pointer-events-none cursor-not-allowed grayscale' : ''}\"\n style=\"border-top-color:${this.borderColor};\"\n ?inert=${this.isRemoving}\n >\n <div class=\"flex flex-col gap-2\">\n ${this._renderHeader()}\n <div class=\"w-full px-2 flex flex-col gap-2\">\n ${this._renderDeployInfo()}\n ${this._renderTable()}\n </div>\n </div>\n ${this._renderFooter()}\n <slot name=\"dialogs\"></slot>\n </div>\n `;\n }\n\n private _renderHeader() {\n return html`\n <div class=\"w-full bg-[var(--axebow-anti-flash-white)] rounded-md py-2 px-3 h-16 flex items-center gap-3\">\n ${this.logo\n ? html`<div class=\"h-10 w-10 flex items-center justify-center shrink-0\"><img src=${this.logo} class=\"max-h-full max-w-full object-contain\" /></div>`\n : ''}\n <div class=\"flex flex-col flex-1 min-w-0 justify-center\">\n <div class=\"flex justify-between items-center\">\n <span class=\"font-bold text-xl text-[var(--axebow-primary)] leading-snug\">${this.name}</span>\n </div>\n <div class=\"revision-wrap italic text-[var(--axebow-primary)] flex items-center\">\n <sl-select style=\"width:100%;\" value=${this.displayedRevision} @sl-change=${this._onRevisionChange}>\n ${this.revisions.map(\n (rev) => html`<sl-option value=${rev.id}>${this._formatRevision(rev.id)}</sl-option>`\n )}\n </sl-select>\n </div>\n </div>\n </div>\n `;\n }\n\n private _renderDeployInfo() {\n return html`\n <div class=\"flex flex-row justify-between items-center min-h-10 max-h-10 overflow-hidden\">\n <span class=\"deploy-time text-[var(--axebow-secondary)]\"><slot name=\"time-elapsed\"></slot></span>\n ${this.isDeployed\n ? html`<span class=\"text-[var(--axebow-secondary)] border-2 border-[var(--axebow-secondary)] rounded-lg py-0.5 px-1.5 whitespace-nowrap text-xs\">${this.deployedLabel}</span>`\n : ''}\n </div>\n `;\n }\n\n private _renderTable() {\n return html`\n <div class=\"w-full border border-[var(--axebow-light-gray)] rounded-md\">\n <div class=\"relative\">\n <div class=\"flex justify-between items-center border-b border-[var(--axebow-light-gray)] w-full px-2 cursor-pointer h-7\" @click=${this._onToggleFilter}>\n <span class=\"text-[var(--axebow-tertiary)]\">${this.filterDisplayText || this.allLabel}</span>\n <div class=\"flex items-center gap-2\">\n ${this.showAttention ? html`<p class=\"text-[var(--axebow-error)] m-0 text-xs\">${this.attentionLabel}</p>` : ''}\n <axebow-icon iconName=\"chevron_right\" rotate=\"90\" iconColor=\"var(--axebow-tertiary)\" size=\"small\"></axebow-icon>\n </div>\n </div>\n\n <div class=\"${this.filterOpened ? '' : 'hidden'} absolute top-full left-0 right-0 z-10 flex flex-col bg-white rounded-b-lg border border-[var(--axebow-light-gray)] shadow-[2px_2px_25px_0px_rgba(0,0,0,0.1)] max-h-40 overflow-y-auto\">\n <p class=\"w-full p-2 cursor-pointer m-0 hover:bg-[var(--axebow-light-gray)]\" @click=${() => this._onFilterChange('', 'all')}>${this.allLabel}</p>\n ${this.filterRoles.map(\n (role) => html`\n <div\n class=\"w-full py-1 px-2 flex justify-between items-center border-t border-[var(--axebow-light-gray)] cursor-pointer hover:bg-[var(--axebow-light-gray)]\"\n @click=${() => this._onFilterChange(role.name, 'role')}\n >\n <div class=\"flex items-center gap-2\">\n ${role.logo ? html`<img src=${role.logo} class=\"w-5 h-5\" />` : ''}\n <p class=\"m-0\">${role.name}</p>\n </div>\n </div>\n ${role.instances.map(\n (inst) => html`\n <div\n class=\"w-full py-1 px-2 pl-6 flex justify-between items-center border-t border-[var(--axebow-light-gray)] cursor-pointer hover:bg-[var(--axebow-light-gray)]\"\n @click=${() => this._onFilterChange(inst.name, 'instance')}\n >\n <div class=\"flex items-center gap-2\">\n <axebow-icon iconName=\"subdirectory_arrow_right\" size=\"small\"></axebow-icon>\n <p class=\"m-0\">${inst.name}</p>\n </div>\n ${inst.needsAttention\n ? html`<axebow-icon iconName=\"warning\" iconColor=\"var(--axebow-error)\" size=\"small\"></axebow-icon>`\n : ''}\n </div>\n `\n )}\n `\n )}\n </div>\n </div>\n\n <aurora-card-resource-table\n .rows=${this.tableStats}\n .attentionThreshold=${this.attentionThreshold}\n .manageLabel=${this.manageLabel}\n .askOwnerLabel=${this.askOwnerLabel}\n .invalidCredsLabel=${this.invalidCredsLabel}\n .limitReachedLabel=${this.limitReachedLabel}\n .andLabel=${this.andLabel}\n ></aurora-card-resource-table>\n </div>\n `;\n }\n\n private _renderFooter() {\n return html`\n <div class=\"flex justify-between items-center px-2 gap-4 h-10 overflow-hidden mb-1\">\n <div class=\"flex items-center gap-1 min-w-0 flex-1\">\n ${this.borderColor === 'var(--axebow-gray)'\n ? html`<sl-spinner style=\"--indicator-color:${this.borderColor};\"></sl-spinner>`\n : ''}\n <p class=\"font-bold text-xs m-0 line-clamp-1\" style=\"color:${this.borderColor};\" title=${this.statusCode}>${this.statusCode}</p>\n ${this.statusCode\n ? html`\n <sl-tooltip content=${this.statusMessage}>\n <axebow-icon class=\"cursor-pointer shrink-0\" iconColor=${this.borderColor} iconName=\"info\" size=\"small\"></axebow-icon>\n </sl-tooltip>\n `\n : ''}\n </div>\n <axebow-button variant=\"text\" size=\"medium\" @click=${this._onServiceDetail}>${this.serviceDetailLabel}</axebow-button>\n </div>\n `;\n }\n\n private _formatRevision(id: string): string {\n if (!id) return '';\n const parts = id.split('/');\n return parts[parts.length - 1] ?? id;\n }\n\n private _onRevisionChange(e: CustomEvent) {\n const revision = (e.target as HTMLSelectElement).value;\n this.dispatchEvent(new CustomEvent('revision-change', { detail: { revision }, bubbles: true, composed: true }));\n }\n\n private _onToggleFilter() {\n this.dispatchEvent(new CustomEvent('toggle-filter', { bubbles: true, composed: true }));\n }\n\n private _onFilterChange(selected: string, type: 'instance' | 'role' | 'all') {\n this.dispatchEvent(new CustomEvent('filter-change', { detail: { selected, type }, bubbles: true, composed: true }));\n }\n\n private _onServiceDetail() {\n this.dispatchEvent(new CustomEvent('service-detail-click', { bubbles: true, composed: true }));\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../src/components/aurora-button.ts","../src/styles/aurora-theme.ts","../src/components/cards/aurora-more-actions.ts","../src/components/cards/parts/aurora-card-cloud-logo.ts","../src/components/cards/parts/aurora-card-version-selector.ts","../src/components/cards/parts/aurora-card-header.ts","../src/components/cards/parts/aurora-card-stat-item.ts","../src/components/cards/parts/aurora-card-stats-row.ts","../src/components/cards/parts/aurora-card-filter-item.ts","../src/components/cards/parts/aurora-card-filter.ts","../src/components/cards/parts/aurora-card-table-header.ts","../src/components/cards/parts/aurora-card-special-link.ts","../src/components/cards/parts/aurora-card-attention-banner.ts","../src/components/cards/parts/aurora-card-action-banner.ts","../src/components/cards/parts/aurora-card-resource-row.ts","../src/components/cards/parts/aurora-card-resource-table.ts","../src/components/cards/parts/aurora-card-status.ts","../src/components/cards/parts/aurora-card-footer.ts","../src/components/cards/aurora-base-card.ts"],"sourcesContent":["import { LitElement, css, html } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\n\n@customElement('aurora-button')\nexport class AuroraButton extends LitElement {\n static styles = css`\n :host {\n display: inline-block;\n }\n\n button {\n font: inherit;\n cursor: pointer;\n border-radius: 6px;\n border: 1px solid transparent;\n padding: 0.5em 1.2em;\n background-color: var(--aurora-button-bg, #1a1a1a);\n color: var(--aurora-button-color, #ffffff);\n }\n\n button:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n }\n `;\n\n @property({ type: Boolean, reflect: true })\n disabled = false;\n\n render() {\n return html`\n <button ?disabled=${this.disabled}>\n <slot></slot>\n </button>\n `;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n 'aurora-button': AuroraButton;\n }\n}\n","import { css } from 'lit';\n\nexport const auroraTheme = css`\n .theme {\n --axebow-primary: var(--color-primary, #34495e);\n --axebow-primary-light: var(--color-primary-light, #b4cded);\n --axebow-tertiary: var(--color-tertiary, #006bff);\n --axebow-success: var(--color-success, #0ecd9a);\n --axebow-secondary: var(--color-secondary, #78787a);\n --axebow-base: var(--color-base, #f0f1f5);\n --axebow-error: var(--color-error, #e93a3a);\n --axebow-white: var(--color-white, #ffffff);\n --axebow-black: var(--color-black, #000000);\n --axebow-warning: var(--color-warning, #f9cf6c);\n --axebow-table-border: var(--color-table-border, #ddd);\n --axebow-gray: var(--color-gray, #8a94ae);\n --axebow-light-gray: var(--color-light-gray, #d9d9d9);\n\n --axebow-clickable-blue: var(--color-clickable-blue, #006bff);\n --axebow-sky-gray: var(--color-sky-gray, #8a94ee);\n --axebow-rich-black: var(--color-rich-black, #0d1821);\n --axebow-anti-flash-white: var(--color-anti-flash-white, #f0f1f5);\n --axebow-strong-gray: var(--color-strong-gray, #78787a);\n\n --axebow-bg-primary: var(--color-bg-primary, #f0f1f5);\n\n --axebow-text-gray: var(--color-text-gray, #78787a);\n\n --axebow-premium-label: var(--color-premium-label, #b9935a33);\n --axebow-premium-text: var(--color-premium-text, #b9935a);\n --axebow-deleting-link: var(--color-deleting-link, #a0a0a0);\n --axebow-border-gray: var(--color-border-gray, #9ca3af);\n }\n * {\n font-family: 'Open Sans', sans-serif;\n }\n`;\n\nexport const STATUS_COLORS = {\n HEALTHY: 'var(--axebow-success)',\n ERROR: 'var(--axebow-error)',\n WARNING: 'var(--axebow-warning)',\n DEFAULT: 'var(--axebow-gray)',\n} as const;\n","import tailwindCss from '../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property, state } from 'lit/decorators.js';\nimport { ActionMenuItem } from './card.types.js';\n\n@customElement('aurora-more-actions')\nexport class AuroraMoreActions extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`:host { display: inline-block; }`,\n ];\n\n @property({ type: Boolean }) open = false;\n @property({ type: String }) placement: 'top' | 'bottom' = 'bottom';\n @property({ type: Boolean }) disabled = false;\n @property({ type: Array }) options: ActionMenuItem[] = [];\n @property({ type: String }) title = '';\n @property({ type: String }) iconName = '';\n @property({ type: Boolean }) openToRight = false;\n @property({ type: String }) closeLabel = 'Close';\n @property({ type: String }) moreActionsLabel = 'More';\n\n @state() private _fixedPos = { top: 0, right: 0 };\n\n connectedCallback() {\n super.connectedCallback();\n document.addEventListener('click', this._handleOutsideClick);\n window.addEventListener('scroll', this._handleScroll, true);\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n document.removeEventListener('click', this._handleOutsideClick);\n window.removeEventListener('scroll', this._handleScroll, true);\n }\n\n private _handleOutsideClick = (e: MouseEvent) => {\n if (this.open && !this.contains(e.target as Node)) {\n this.open = false;\n this.dispatchEvent(new CustomEvent('toggled', { detail: { open: false } }));\n }\n };\n\n private _handleScroll = () => {\n if (this.open && this.openToRight) {\n this.open = false;\n this.dispatchEvent(new CustomEvent('toggled', { detail: { open: false } }));\n }\n };\n\n private _toggle(e: Event) {\n if (this.disabled) return;\n e.stopPropagation();\n if (!this.open && this.openToRight) {\n const btn = this.shadowRoot?.querySelector<HTMLElement>('.trigger');\n if (btn) {\n const rect = btn.getBoundingClientRect();\n this._fixedPos = { top: rect.bottom + 8, right: window.innerWidth - rect.right };\n }\n }\n this.open = !this.open;\n this.dispatchEvent(new CustomEvent('toggled', { detail: { open: this.open } }));\n }\n\n private _handleSlotClick() {\n this.open = false;\n this.dispatchEvent(new CustomEvent('toggled', { detail: { open: false } }));\n }\n\n render() {\n const placementClass = this.placement === 'top' ? 'bottom-full mb-2' : 'top-full mt-2';\n const dropdownStyle = this.openToRight\n ? `position:fixed;top:${this._fixedPos.top}px;right:${this._fixedPos.right}px;z-index:1000;`\n : '';\n\n return html`\n <div class=\"relative w-full h-full flex justify-end\">\n <button\n class=\"trigger relative font-semibold text-xs text-[var(--axebow-tertiary)] cursor-pointer py-1 px-2 h-full bg-transparent border-none transition-all duration-200 flex items-center hover:text-[var(--axebow-gray)] hover:bg-[var(--axebow-anti-flash-white)] hover:rounded-lg disabled:opacity-50 disabled:cursor-not-allowed disabled:pointer-events-none\"\n ?disabled=${this.disabled}\n @click=${this._toggle}\n >\n ${this.iconName\n ? html`<axebow-icon iconName=${this.iconName} size=\"small\" iconColor=\"var(--axebow-tertiary)\"></axebow-icon>`\n : this.open ? this.closeLabel : (this.title || this.moreActionsLabel)}\n </button>\n ${this.open\n ? html`\n <div\n class=\"absolute right-0 z-10 bg-white border border-[var(--axebow-gray)] rounded-lg shadow-[2px_2px_25px_0px_rgba(0,0,0,0.1)] p-2 min-w-44 flex flex-col ${placementClass}\"\n style=${dropdownStyle}\n @click=${this._handleSlotClick}\n >\n ${this.options?.length\n ? this.options.map(\n (opt) => html`\n <button\n class=\"flex items-center gap-2 text-left py-1 px-2 cursor-pointer rounded-sm border border-transparent bg-transparent w-full hover:bg-gray-100\"\n @click=${(e: Event) => {\n e.stopPropagation();\n opt.onTap(e);\n this.open = false;\n this.dispatchEvent(new CustomEvent('toggled', { detail: { open: false } }));\n }}\n @mouseenter=${(e: Event) => ((e.currentTarget as HTMLElement).style.borderColor = `var(--axebow-${opt.type})`)}\n @mouseleave=${(e: Event) => ((e.currentTarget as HTMLElement).style.borderColor = 'transparent')}\n >\n <axebow-icon iconName=${opt.icon} iconColor=\"var(--axebow-${opt.type})\" size=\"small\"></axebow-icon>\n <p class=\"m-0 whitespace-nowrap\" style=\"color:var(--axebow-${opt.type});\">${opt.label}</p>\n </button>\n `\n )\n : html`<slot></slot>`}\n </div>\n `\n : ''}\n </div>\n `;\n }\n}\n","import tailwindCss from '../../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\n\n@customElement('aurora-card-cloud-logo')\nexport class AuroraCardCloudLogo extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`:host { display: contents; }`,\n ];\n\n @property({ type: String }) src: string | null = null;\n @property({ type: String }) size: 'small' | 'large' = 'large';\n\n render() {\n if (!this.src) return html``;\n\n return this.size === 'small'\n ? html`<div class=\"h-4 w-4\"><img src=${this.src} class=\"max-h-full max-w-full object-contain\" /></div>`\n : html`<div class=\"h-10 w-10 flex items-center justify-center shrink-0\"><img src=${this.src} class=\"max-h-full max-w-full object-contain\" /></div>`;\n }\n}\n","import tailwindCss from '../../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { RevisionItem } from '../card.types.js';\n\n@customElement('aurora-card-version-selector')\nexport class AuroraCardVersionSelector extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`\n :host { display: block; width: 100%; }\n sl-select {\n --sl-input-background-color: transparent;\n --sl-input-border-color: transparent;\n border: none;\n background: transparent;\n padding: 0;\n margin: 0;\n min-width: 0;\n width: 100% !important;\n }\n sl-select::part(base) {\n border: none;\n background-color: transparent;\n padding: 0;\n min-width: 0;\n display: inline-block;\n }\n sl-select::part(display-input) { padding: 0 8px; }\n sl-select::part(combobox) { padding: 0; }\n `,\n ];\n\n @property({ type: Array }) revisions: RevisionItem[] = [];\n @property({ type: String }) displayedRevision = '';\n\n private _formatRevision(id: string): string {\n if (!id) return '';\n const parts = id.split('/');\n return parts[parts.length - 1] ?? id;\n }\n\n render() {\n return html`\n <sl-select style=\"width:100%;\" value=${this.displayedRevision} @sl-change=${this._onChange}>\n ${this.revisions.map((rev) => html`<sl-option value=${rev.id}>${this._formatRevision(rev.id)}</sl-option>`)}\n </sl-select>\n `;\n }\n\n private _onChange(e: CustomEvent) {\n const revision = (e.target as HTMLSelectElement).value;\n this.dispatchEvent(new CustomEvent('revision-change', { detail: { revision }, bubbles: true, composed: true }));\n }\n}\n","import tailwindCss from '../../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { CardBadge, CardType, RevisionItem } from '../card.types.js';\nimport './aurora-card-cloud-logo.js';\nimport './aurora-card-version-selector.js';\n\n@customElement('aurora-card-header')\nexport class AuroraCardHeader extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`\n :host { display: block; }\n sl-badge::part(base) { background-color: var(--axebow-secondary); color: white; }\n `,\n ];\n\n @property({ type: String }) logoSrc: string | null = null;\n @property({ type: String }) tenantOrAccount = '';\n @property({ type: String }) name = '';\n @property({ type: String }) badge: CardBadge = 'none';\n @property({ type: String }) subtitle = '';\n @property({ type: String }) cardType: CardType = 'account';\n @property({ type: Array }) revisions: RevisionItem[] = [];\n @property({ type: String }) displayedRevision = '';\n @property({ type: String }) freeIaasLabel = 'Free IaaS';\n @property({ type: String }) freeIaasTitle = 'Free Infrastructure';\n @property({ type: String }) freeIaasDesc = 'This environment uses free infrastructure.';\n @property({ type: String }) haLabel = 'Highly Available';\n @property({ type: String }) haTitle = 'High Availability enabled';\n\n private _renderBadge() {\n if (this.badge === 'free-iaas') {\n return html`\n <sl-tooltip>\n <div slot=\"content\" style=\"max-width:300px;\">\n <strong>${this.freeIaasTitle}</strong>\n <p style=\"margin-top:0.5rem;\">${this.freeIaasDesc}</p>\n </div>\n <div class=\"flex items-center gap-2 cursor-pointer\">\n <axebow-icon iconName=\"info\" iconColor=\"var(--axebow-gray)\" size=\"small\"></axebow-icon>\n <span class=\"text-[var(--axebow-rich-black)]\">${this.freeIaasLabel}</span>\n </div>\n </sl-tooltip>\n `;\n }\n if (this.badge === 'ha') {\n return html`\n <sl-tooltip content=${this.haTitle}>\n <sl-badge variant=\"neutral\" pill size=\"small\" class=\"cursor-pointer\">${this.haLabel}</sl-badge>\n </sl-tooltip>\n `;\n }\n return html``;\n }\n\n render() {\n const isTenant = this.cardType === 'tenant';\n const isCompact = this.cardType === 'environment' || isTenant;\n const isRuntime = this.cardType === 'runtime';\n\n if (isCompact) {\n return html`\n <div class=\"w-full bg-[var(--axebow-anti-flash-white)] rounded-md flex flex-col justify-center px-5 py-3 h-[4.5rem]\">\n <div class=\"flex flex-col flex-1 min-w-0\">\n ${this.tenantOrAccount || this.logoSrc\n ? html`\n <div class=\"flex gap-2 items-center leading-none mt-1\">\n <aurora-card-cloud-logo .src=${this.logoSrc} size=\"small\"></aurora-card-cloud-logo>\n <span class=\"font-semibold ${isTenant ? 'text-[var(--axebow-gray)]' : 'text-[var(--axebow-primary)]'} leading-none\">${this.tenantOrAccount}</span>\n </div>\n `\n : ''}\n <div class=\"flex justify-between items-center\">\n <span class=\"font-bold text-xl text-[var(--axebow-primary)] leading-snug pt-0.5\">${this.name}</span>\n ${this._renderBadge()}\n </div>\n ${this.subtitle\n ? html`<div class=\"italic text-[var(--axebow-primary)] flex items-center leading-none\">${this.subtitle}<slot name=\"subtitle-tooltip\"></slot></div>`\n : ''}\n </div>\n </div>\n `;\n }\n\n return html`\n <div class=\"w-full bg-[var(--axebow-anti-flash-white)] rounded-md flex items-center gap-3 py-2 px-3 h-16\">\n <aurora-card-cloud-logo .src=${this.logoSrc} size=\"large\"></aurora-card-cloud-logo>\n <div class=\"flex flex-col flex-1 min-w-0 ${isRuntime ? 'justify-center' : ''}\">\n ${!isRuntime && this.tenantOrAccount\n ? html`<span class=\"font-semibold text-[var(--axebow-primary)] leading-none\">${this.tenantOrAccount}</span>`\n : ''}\n <div class=\"flex justify-between items-center\">\n <span class=\"font-bold text-xl text-[var(--axebow-primary)] leading-snug pt-0.5\">${this.name}</span>\n ${this._renderBadge()}\n </div>\n ${isRuntime\n ? html`\n <div class=\"revision-wrap italic text-[var(--axebow-primary)] flex items-center\">\n <aurora-card-version-selector\n .revisions=${this.revisions}\n .displayedRevision=${this.displayedRevision}\n @revision-change=${this._onRevisionChange}\n ></aurora-card-version-selector>\n </div>\n `\n : this.subtitle\n ? html`<div class=\"italic text-[var(--axebow-primary)] flex items-center leading-none\">${this.subtitle}<slot name=\"subtitle-tooltip\"></slot></div>`\n : ''}\n </div>\n </div>\n `;\n }\n\n private _onRevisionChange(e: CustomEvent) {\n this.dispatchEvent(new CustomEvent('revision-change', { detail: e.detail, bubbles: true, composed: true }));\n }\n}\n","import tailwindCss from '../../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\n\n@customElement('aurora-card-stat-item')\nexport class AuroraCardStatItem extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`:host { display: block; }`,\n ];\n\n @property({ type: Number }) value: number = 0;\n @property({ type: String }) title = '';\n @property({ type: String }) label = '';\n @property({ type: Boolean }) active = true;\n @property({ type: Boolean }) compact = false;\n\n render() {\n return html`\n <div class=\"flex flex-col items-center text-center gap-0.5\">\n <h4 class=\"text-lg text-[var(--axebow-primary)] font-bold leading-snug m-0\">${this.value}</h4>\n <p class=\"m-0 leading-snug\">${this.title}</p>\n <span\n class=\"text-[var(--axebow-gray)] font-semibold text-xs ${this.active ? 'cursor-pointer opacity-100' : 'cursor-not-allowed opacity-50'}\"\n @click=${this._onClick}\n >${this.label}</span>\n </div>\n `;\n }\n\n private _onClick() {\n if (this.active) {\n this.dispatchEvent(new CustomEvent('label-click', { bubbles: true, composed: true }));\n }\n }\n}\n","import tailwindCss from '../../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { MainStatsType } from '../card.types.js';\nimport './aurora-card-stat-item.js';\n\n@customElement('aurora-card-stats-row')\nexport class AuroraCardStatsRow extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`:host { display: block; }`,\n ];\n\n @property({ type: Array }) stats: MainStatsType[] = [];\n @property({ type: Boolean }) compact = false;\n\n render() {\n return html`\n <div class=\"grid grid-cols-3 gap-1 px-2\">\n ${this.stats.map(\n (stat, index) => html`\n <aurora-card-stat-item\n .value=${stat.value}\n .title=${stat.title}\n .label=${stat.label}\n .active=${stat.active !== false}\n .compact=${this.compact}\n @label-click=${() => this._handleLabelClick(index)}\n ></aurora-card-stat-item>\n `\n )}\n </div>\n `;\n }\n\n private _handleLabelClick(index: number) {\n this.dispatchEvent(\n new CustomEvent('stat-label-click', { detail: { index }, bubbles: true, composed: true })\n );\n }\n}\n","import tailwindCss from '../../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\n\n@customElement('aurora-card-filter-item')\nexport class AuroraCardFilterItem extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`:host { display: block; }`,\n ];\n\n @property({ type: String }) name = '';\n @property({ type: Boolean }) showAttention = false;\n\n render() {\n return html`\n <div\n class=\"w-full py-1 px-2 flex justify-between items-center border-t border-[var(--axebow-light-gray)] cursor-pointer hover:bg-[var(--axebow-light-gray)]\"\n @click=${this._onClick}\n >\n <p class=\"m-0\">${this.name}</p>\n ${this.showAttention\n ? html`<axebow-icon iconName=\"error\" size=\"small\" iconColor=\"var(--axebow-error)\"></axebow-icon>`\n : ''}\n </div>\n `;\n }\n\n private _onClick() {\n this.dispatchEvent(\n new CustomEvent('item-select', { detail: { name: this.name }, bubbles: true, composed: true })\n );\n }\n}\n","import tailwindCss from '../../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { CardFilterItem } from '../card.types.js';\nimport './aurora-card-filter-item.js';\n\n@customElement('aurora-card-filter')\nexport class AuroraCardFilter extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`:host { display: block; }`,\n ];\n\n @property({ type: Array }) items: CardFilterItem[] = [];\n @property({ type: String }) selected: string | null = null;\n @property({ type: String }) emptyLabel = '';\n @property({ type: String }) emptyActionLabel = '';\n @property({ type: String }) attentionLabel = 'Attention needed';\n @property({ type: Boolean }) showAttention = false;\n @property({ type: Boolean }) opened = false;\n @property({ type: Boolean }) isPlainRole = false;\n @property({ type: Boolean }) isDisabled = false;\n\n render() {\n const showEmpty = !this.selected && this.items.length === 0;\n\n return html`\n <div class=\"relative\">\n <div class=\"flex justify-between items-center border-b border-[var(--axebow-light-gray)] w-full px-2 cursor-pointer h-7\">\n ${showEmpty\n ? html`\n <p\n class=\"m-0 ${this.isPlainRole || this.isDisabled\n ? 'text-[var(--axebow-gray)] cursor-default opacity-50'\n : 'text-[var(--axebow-tertiary)] cursor-pointer'}\"\n @click=${this.isPlainRole || this.isDisabled ? undefined : this._onEmptyAction}\n >\n ${this.emptyActionLabel}\n </p>\n `\n : html`\n <div\n class=\"flex w-full justify-between items-center ${this.isDisabled ? 'opacity-50 cursor-not-allowed' : ''}\"\n @click=${this.isDisabled ? undefined : this._onToggle}\n >\n <span class=\"text-[var(--axebow-tertiary)]\">${this.selected ?? this.emptyLabel}</span>\n <div class=\"flex items-center gap-2\">\n ${this.showAttention\n ? html`<p class=\"text-[var(--axebow-error)] m-0 text-xs\">${this.attentionLabel}</p>`\n : ''}\n <axebow-icon iconName=\"chevron_right\" rotate=\"90\" iconColor=\"var(--axebow-tertiary)\" size=\"small\"></axebow-icon>\n </div>\n </div>\n `}\n </div>\n\n <div class=\"${this.opened ? '' : 'hidden'} absolute top-full left-0 right-0 z-10 flex flex-col bg-white rounded-b-lg border border-[var(--axebow-light-gray)] shadow-[2px_2px_25px_0px_rgba(0,0,0,0.1)] max-h-40 overflow-y-auto\">\n <p class=\"w-full p-2 cursor-pointer m-0 hover:bg-[var(--axebow-light-gray)]\" @click=${() => this._onSelect(null)}>${this.emptyLabel}</p>\n ${this.items.map(\n (item) => html`\n <aurora-card-filter-item\n .name=${item.name}\n .showAttention=${item.showAttention}\n @item-select=${(e: CustomEvent) => this._onSelect(e.detail.name)}\n ></aurora-card-filter-item>\n `\n )}\n </div>\n </div>\n `;\n }\n\n private _onToggle() {\n this.dispatchEvent(new CustomEvent('toggle-open', { bubbles: true, composed: true }));\n }\n\n private _onSelect(name: string | null) {\n this.dispatchEvent(new CustomEvent('filter-select', { detail: { name }, bubbles: true, composed: true }));\n }\n\n private _onEmptyAction() {\n this.dispatchEvent(new CustomEvent('empty-action-click', { bubbles: true, composed: true }));\n }\n}\n","import tailwindCss from '../../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { RuntimeFilterRole } from '../card.types.js';\n\n@customElement('aurora-card-table-header')\nexport class AuroraCardTableHeader extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`:host { display: block; }`,\n ];\n\n @property({ type: Boolean }) opened = false;\n @property({ type: String }) filterDisplayText = '';\n @property({ type: String }) allLabel = 'All Roles & Instances';\n @property({ type: String }) attentionLabel = 'Attention needed';\n @property({ type: Boolean }) showAttention = false;\n @property({ type: Array }) filterRoles: RuntimeFilterRole[] = [];\n\n render() {\n return html`\n <div class=\"relative\">\n <div\n class=\"flex justify-between items-center border-b border-[var(--axebow-light-gray)] w-full px-2 cursor-pointer h-7\"\n @click=${this._onToggle}\n >\n <span class=\"text-[var(--axebow-tertiary)]\">${this.filterDisplayText || this.allLabel}</span>\n <div class=\"flex items-center gap-2\">\n ${this.showAttention ? html`<p class=\"text-[var(--axebow-error)] m-0 text-xs\">${this.attentionLabel}</p>` : ''}\n <axebow-icon iconName=\"chevron_right\" rotate=\"90\" iconColor=\"var(--axebow-tertiary)\" size=\"small\"></axebow-icon>\n </div>\n </div>\n\n <div class=\"${this.opened ? '' : 'hidden'} absolute top-full left-0 right-0 z-10 flex flex-col bg-white rounded-b-lg border border-[var(--axebow-light-gray)] shadow-[2px_2px_25px_0px_rgba(0,0,0,0.1)] max-h-40 overflow-y-auto\">\n <p class=\"w-full p-2 cursor-pointer m-0 hover:bg-[var(--axebow-light-gray)]\" @click=${() => this._onSelect('', 'all')}>${this.allLabel}</p>\n ${this.filterRoles.map(\n (role) => html`\n <div\n class=\"w-full py-1 px-2 flex justify-between items-center border-t border-[var(--axebow-light-gray)] cursor-pointer hover:bg-[var(--axebow-light-gray)]\"\n @click=${() => this._onSelect(role.name, 'role')}\n >\n <div class=\"flex items-center gap-2\">\n ${role.logo ? html`<img src=${role.logo} class=\"w-5 h-5\" />` : ''}\n <p class=\"m-0\">${role.name}</p>\n </div>\n </div>\n ${role.instances.map(\n (inst) => html`\n <div\n class=\"w-full py-1 px-2 pl-6 flex justify-between items-center border-t border-[var(--axebow-light-gray)] cursor-pointer hover:bg-[var(--axebow-light-gray)]\"\n @click=${() => this._onSelect(inst.name, 'instance')}\n >\n <div class=\"flex items-center gap-2\">\n <axebow-icon iconName=\"subdirectory_arrow_right\" size=\"small\"></axebow-icon>\n <p class=\"m-0\">${inst.name}</p>\n </div>\n ${inst.needsAttention\n ? html`<axebow-icon iconName=\"warning\" iconColor=\"var(--axebow-error)\" size=\"small\"></axebow-icon>`\n : ''}\n </div>\n `\n )}\n `\n )}\n </div>\n </div>\n `;\n }\n\n private _onToggle() {\n this.dispatchEvent(new CustomEvent('toggle-open', { bubbles: true, composed: true }));\n }\n\n private _onSelect(selected: string, type: 'instance' | 'role' | 'all') {\n this.dispatchEvent(new CustomEvent('filter-change', { detail: { selected, type }, bubbles: true, composed: true }));\n }\n}\n","import tailwindCss from '../../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\n\n@customElement('aurora-card-special-link')\nexport class AuroraCardSpecialLink extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`:host { display: inline-flex; }`,\n ];\n\n @property({ type: String }) label = '';\n @property({ type: String }) color = 'var(--axebow-error)';\n @property({ type: String }) icon = 'arrow_forward';\n\n render() {\n return html`\n <span class=\"cursor-pointer\" style=\"color:${this.color};\" @click=${this._onClick}>\n ${this.label}\n <axebow-icon iconName=${this.icon} iconColor=${this.color} size=\"small\"></axebow-icon>\n </span>\n `;\n }\n\n private _onClick() {\n this.dispatchEvent(new CustomEvent('link-click', { bubbles: true, composed: true }));\n }\n}\n","import tailwindCss from '../../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { CardType, TableStatsType } from '../card.types.js';\nimport './aurora-card-special-link.js';\n\n@customElement('aurora-card-attention-banner')\nexport class AuroraCardAttentionBanner extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`\n :host { display: block; }\n .error-bg { background-color: color-mix(in srgb, var(--axebow-error) 10%, white); }\n `,\n ];\n\n @property({ type: String }) cardType: CardType = 'account';\n @property({ type: Array }) tableStats: TableStatsType[] = [];\n @property({ type: Number }) threshold = 90;\n @property({ type: Boolean }) isPlainRole = false;\n @property({ type: Boolean }) invalidCredentials = false;\n @property({ type: String }) manageLabel = 'Manage';\n @property({ type: String }) askOwnerLabel = 'Ask your owner';\n @property({ type: String }) invalidCredsLabel = 'Invalid credentials.';\n @property({ type: String }) limitReachedLabel = 'Limit reached.';\n @property({ type: String }) andLabel = 'and';\n\n private _getExceeded(): string[] {\n const primary = this.tableStats.slice(0, 3).map((r) => r.title);\n return this.tableStats\n .filter((s) => primary.includes(s.title) && s.percentage >= this.threshold)\n .map((s) => s.title);\n }\n\n private _formatList(resources: string[]): string {\n if (resources.length === 1) return resources[0];\n if (resources.length === 2) return `${resources[0]} ${this.andLabel} ${resources[1]}`;\n return `${resources.slice(0, -1).join(', ')} ${this.andLabel} ${resources[resources.length - 1]}`;\n }\n\n render() {\n const exceeded = this._getExceeded();\n if (exceeded.length === 0 && !this.invalidCredentials) return html``;\n\n return html`\n <div class=\"error-bg flex flex-wrap items-center justify-center gap-1 w-full px-1 text-center\">\n ${this.isPlainRole\n ? html`<span class=\"text-[var(--axebow-error)]\">${this.askOwnerLabel}</span>`\n : html`\n <p class=\"text-[var(--axebow-error)] m-0\">\n ${this.invalidCredentials\n ? this.invalidCredsLabel\n : `${this.limitReachedLabel} ${this._formatList(exceeded)}.`}\n <aurora-card-special-link\n .label=${this.manageLabel}\n color=\"var(--axebow-error)\"\n @link-click=${this._onManage}\n ></aurora-card-special-link>\n </p>\n `}\n </div>\n `;\n }\n\n private _onManage() {\n this.dispatchEvent(new CustomEvent('manage-click', { bubbles: true, composed: true }));\n }\n}\n","import tailwindCss from '../../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\n\n@customElement('aurora-card-action-banner')\nexport class AuroraCardActionBanner extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`\n :host { display: block; }\n .tertiary-bg { background-color: color-mix(in srgb, var(--axebow-tertiary) 10%, white); }\n axebow-button::part(label) { color: var(--axebow-tertiary); font-weight: 600; display: flex; align-items: center; gap: 2px; }\n axebow-button::part(base) { padding: 0; height: auto; min-height: unset; }\n `,\n ];\n\n @property({ type: String }) label = 'View details';\n\n render() {\n return html`\n <div class=\"tertiary-bg flex items-center justify-center gap-1 w-full px-3 text-sm text-center\">\n <axebow-button variant=\"text\" size=\"small\" @click=${this._onClick}>\n ${this.label}\n <axebow-icon iconName=\"arrow_forward\" iconColor=\"var(--axebow-tertiary)\" size=\"small\"></axebow-icon>\n </axebow-button>\n </div>\n `;\n }\n\n private _onClick() {\n this.dispatchEvent(new CustomEvent('action-click', { bubbles: true, composed: true }));\n }\n}\n","import tailwindCss from '../../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { TableStatsType } from '../card.types.js';\n\n@customElement('aurora-card-resource-row')\nexport class AuroraCardResourceRow extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`:host { display: contents; }`,\n ];\n\n @property({ type: Object }) stat!: TableStatsType;\n @property({ type: Number }) attentionThreshold = 90;\n @property({ type: Boolean }) isLast = false;\n\n render() {\n const stat = this.stat;\n const borderClass = !stat.hidden && !this.isLast ? 'border-b border-[var(--axebow-light-gray)]' : '';\n\n if (stat.hidden) {\n return html`\n <div class=\"flex items-center w-full px-2 h-8 gap-2 ${borderClass}\"></div>\n <div class=\"flex items-center justify-end w-full px-2 h-8 gap-2 ${borderClass}\"></div>\n <div class=\"flex items-center justify-end w-full px-2 h-8 ${borderClass}\"></div>\n <div class=\"flex items-center justify-end w-full px-2 h-8 gap-2 ${borderClass}\"></div>\n `;\n }\n\n return html`\n <div class=\"flex items-center w-full px-2 h-8 gap-2 ${borderClass}\">\n <div class=\"flex items-center gap-2 ${stat.isSecondary ? 'ml-2' : ''}\">\n <axebow-icon iconName=${stat.icon} size=\"small\" rotate=${stat.iconRotation ?? 0}></axebow-icon>\n <span class=\"text-xs ${stat.isSecondary ? '' : 'font-semibold'}\">${stat.title}</span>\n </div>\n </div>\n\n <div class=\"flex items-center justify-end w-full px-2 h-8 gap-2 ${borderClass}\">\n <p class=\"${stat.isSecondary ? 'font-normal' : 'font-semibold'} m-0\">${stat.value ?? '-.-'}</p>\n </div>\n\n <div class=\"flex items-center justify-end w-full px-2 h-8 ${borderClass}\">\n <div class=\"h-2 w-full bg-[var(--axebow-light-gray)] rounded-md relative overflow-hidden\">\n <div\n class=\"absolute h-full ${stat.percentage >= this.attentionThreshold ? 'bg-[var(--axebow-error)]' : 'bg-[var(--axebow-gray)]'}\"\n style=\"width:${stat.percentage}%;\"\n ></div>\n </div>\n </div>\n\n <div class=\"flex items-center justify-end w-full px-2 h-8 gap-2 ${borderClass}\">\n <p class=\"${stat.isSecondary ? 'font-normal' : 'font-semibold'} m-0\">\n ${stat.maxValue ?? '-.-'}<span class=\"font-normal\">${stat.tagValue ?? ''}</span>\n </p>\n </div>\n `;\n }\n}\n","import tailwindCss from '../../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { CardType, TableStatsType } from '../card.types.js';\nimport './aurora-card-attention-banner.js';\nimport './aurora-card-action-banner.js';\nimport './aurora-card-resource-row.js';\n\n@customElement('aurora-card-resource-table')\nexport class AuroraCardResourceTable extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`:host { display: block; }`,\n ];\n\n @property({ type: Array }) rows: TableStatsType[] = [];\n @property({ type: Number }) attentionThreshold = 90;\n @property({ type: String }) cardType: CardType = 'account';\n @property({ type: Boolean }) isPlainRole = false;\n @property({ type: Boolean }) showActionBanner = false;\n @property({ type: Boolean }) showWarningBanner = false;\n @property({ type: String }) manageLabel = 'Manage';\n @property({ type: String }) askOwnerLabel = 'Ask your owner';\n @property({ type: String }) invalidCredsLabel = 'Invalid credentials.';\n @property({ type: String }) limitReachedLabel = 'Limit reached.';\n @property({ type: String }) andLabel = 'and';\n @property({ type: String }) actionBannerLabel = '';\n\n private _hasAttention(): boolean {\n const primary = this.rows.slice(0, 3).map((r) => r.title);\n return this.rows.some((s) => primary.includes(s.title) && s.percentage >= this.attentionThreshold);\n }\n\n render() {\n const showWarning = !this.isPlainRole && this.showWarningBanner;\n const showAttention = !this.isPlainRole && !showWarning && this.showActionBanner && this._hasAttention();\n const showAction = !this.isPlainRole && !showWarning && this.showActionBanner && !this._hasAttention();\n\n const visibleRows = this.rows.filter((r) => !r.hidden);\n const lastVisible = visibleRows[visibleRows.length - 1];\n\n return html`\n <div>\n <div class=\"grid grid-cols-[auto_auto_1fr_auto] border-b border-[var(--axebow-light-gray)]\">\n ${this.rows.map(\n (stat) => html`\n <aurora-card-resource-row\n .stat=${stat}\n .attentionThreshold=${this.attentionThreshold}\n .isLast=${stat === lastVisible}\n ></aurora-card-resource-row>\n `\n )}\n </div>\n\n ${showWarning\n ? html`<aurora-card-attention-banner\n .invalidCredentials=${true}\n .isPlainRole=${this.isPlainRole}\n .manageLabel=${this.manageLabel}\n .askOwnerLabel=${this.askOwnerLabel}\n .invalidCredsLabel=${this.invalidCredsLabel}\n .limitReachedLabel=${this.limitReachedLabel}\n .andLabel=${this.andLabel}\n ></aurora-card-attention-banner>`\n : showAttention\n ? html`<aurora-card-attention-banner\n .cardType=${this.cardType}\n .tableStats=${this.rows}\n .threshold=${this.attentionThreshold}\n .isPlainRole=${this.isPlainRole}\n .manageLabel=${this.manageLabel}\n .askOwnerLabel=${this.askOwnerLabel}\n .invalidCredsLabel=${this.invalidCredsLabel}\n .limitReachedLabel=${this.limitReachedLabel}\n .andLabel=${this.andLabel}\n ></aurora-card-attention-banner>`\n : showAction\n ? html`<aurora-card-action-banner .label=${this.actionBannerLabel} @action-click=${() => this.dispatchEvent(new CustomEvent('action-click', { bubbles: true, composed: true }))}></aurora-card-action-banner>`\n : ''}\n </div>\n `;\n }\n}\n","import tailwindCss from '../../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\n\n@customElement('aurora-card-status')\nexport class AuroraCardStatus extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`\n :host { display: block; flex: 1; min-width: 0; }\n sl-tooltip::part(base) { max-width: none; white-space: normal; word-break: break-word; }\n `,\n ];\n\n @property({ type: String }) statusCode = '';\n @property({ type: String }) statusMessage = '';\n @property({ type: String }) borderColor = '';\n @property({ type: Boolean }) showSpinner = false;\n\n render() {\n if (!this.statusCode) {\n return html`<div class=\"w-full whitespace-nowrap overflow-hidden text-ellipsis\"><slot></slot></div>`;\n }\n\n return html`\n <div class=\"flex items-center gap-1 min-w-0 w-full\">\n ${this.showSpinner ? html`<sl-spinner style=\"--indicator-color:${this.borderColor};\"></sl-spinner>` : ''}\n <p class=\"font-bold text-xs m-0 line-clamp-1\" style=\"color:${this.borderColor};\" title=${this.statusCode}>${this.statusCode}</p>\n <sl-tooltip content=${this.statusMessage}>\n <axebow-icon class=\"cursor-pointer shrink-0\" iconColor=${this.borderColor} iconName=\"info\" size=\"small\"></axebow-icon>\n </sl-tooltip>\n </div>\n `;\n }\n}\n","import tailwindCss from '../../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { ActionMenuItem } from '../card.types.js';\nimport '../aurora-more-actions.js';\nimport './aurora-card-status.js';\n\n@customElement('aurora-card-footer')\nexport class AuroraCardFooter extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`:host { display: block; }`,\n ];\n\n @property({ type: Boolean }) isFreeIaaS = false;\n @property({ type: Boolean }) isPlainRole = false;\n @property({ type: String }) statusCode = '';\n @property({ type: String }) statusMessage = '';\n @property({ type: String }) borderColor = '';\n @property({ type: Boolean }) showSpinner = false;\n @property({ type: Boolean }) moreActionsOpen = false;\n @property({ type: Array }) moreActionsOptions: ActionMenuItem[] = [];\n @property({ type: String }) closeLabel = 'Close';\n @property({ type: String }) moreActionsLabel = 'More';\n @property({ type: String }) actionLabel = '';\n\n render() {\n const showDropdown = !this.isFreeIaaS && !this.isPlainRole && this.moreActionsOptions.length > 0;\n const showAction = !showDropdown && !!this.actionLabel;\n\n return html`\n <div class=\"flex justify-between items-center relative h-6 gap-2 text-xs\">\n <aurora-card-status\n .statusCode=${this.statusCode}\n .statusMessage=${this.statusMessage}\n .borderColor=${this.borderColor}\n .showSpinner=${this.showSpinner}\n >\n <slot></slot>\n </aurora-card-status>\n ${showDropdown\n ? html`\n <aurora-more-actions\n class=\"shrink-0 mr-2\"\n placement=\"top\"\n .open=${this.moreActionsOpen}\n .options=${this.moreActionsOptions}\n .closeLabel=${this.closeLabel}\n .moreActionsLabel=${this.moreActionsLabel}\n @toggled=${this._onToggled}\n ></aurora-more-actions>\n `\n : showAction\n ? html`<axebow-button variant=\"text\" size=\"medium\" @click=${this._onAction}>${this.actionLabel}</axebow-button>`\n : ''}\n </div>\n `;\n }\n\n private _onToggled(e: CustomEvent) {\n this.dispatchEvent(\n new CustomEvent('more-actions-toggled', { detail: { open: e.detail.open }, bubbles: true, composed: true })\n );\n }\n\n private _onAction() {\n this.dispatchEvent(new CustomEvent('footer-action-click', { bubbles: true, composed: true }));\n }\n}\n","import tailwindCss from '../../styles/tailwind.css?inline';\nimport { LitElement, html, css, unsafeCSS } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport {\n ActionMenuItem,\n CardBadge,\n CardFilterItem,\n CardType,\n MainStatsType,\n RevisionItem,\n RuntimeFilterRole,\n TableStatsType,\n} from './card.types.js';\nimport './aurora-more-actions.js';\nimport './parts/aurora-card-header.js';\nimport './parts/aurora-card-stats-row.js';\nimport './parts/aurora-card-filter.js';\nimport './parts/aurora-card-table-header.js';\nimport './parts/aurora-card-resource-table.js';\nimport './parts/aurora-card-footer.js';\n\n@customElement('aurora-base-card')\nexport class AuroraBaseCard extends LitElement {\n static styles = [\n unsafeCSS(tailwindCss),\n css`\n :host { display: block; width: 450px; max-width: 100%; }\n :host([card-type='runtime']) { width: 380px; height: 417px; }\n sl-badge::part(base) { background-color: var(--axebow-secondary); color: white; }\n sl-dialog::part(panel) { width: 35vw; min-width: 400px; }\n sl-dialog::part(body) { padding-top: 0; }\n sl-alert::part(base) { border-top: 2px solid var(--axebow-error); }\n sl-range, sl-range:hover {\n --sl-color-primary-600: var(--axebow-tertiary);\n --sl-color-primary-500: var(--axebow-tertiary);\n }\n .deploy-time {\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n overflow: hidden;\n }\n `,\n ];\n\n @property({ type: String, reflect: true, attribute: 'card-type' }) cardType: CardType = 'account';\n @property({ type: String }) name = '';\n @property({ type: String }) logoSrc: string | null = null;\n @property({ type: String }) tenantOrAccount = '';\n @property({ type: String }) badge: CardBadge = 'none';\n @property({ type: String }) subtitle = '';\n\n @property({ type: Array }) mainStats: MainStatsType[] = [];\n @property({ type: Boolean }) compact = false;\n\n @property({ type: Array }) tableStats: TableStatsType[] = [];\n @property({ type: Number }) attentionThreshold = 90;\n\n @property({ type: Array }) filterItems: CardFilterItem[] = [];\n @property({ type: String }) selected: string | null = null;\n @property({ type: Boolean }) filterOpened = false;\n @property({ type: String }) emptyLabel = '';\n @property({ type: String }) emptyActionLabel = '';\n @property({ type: String }) attentionLabel = 'Attention needed';\n @property({ type: Boolean }) showAttention = false;\n @property({ type: Boolean }) isPlainRole = false;\n @property({ type: Boolean }) isDeleting = false;\n @property({ type: Boolean }) isDisabled = false;\n\n @property({ type: Array }) revisions: RevisionItem[] = [];\n @property({ type: String }) displayedRevision = '';\n @property({ type: Boolean }) isDeployed = false;\n @property({ type: String }) deployedLabel = 'Deployed';\n\n @property({ type: Array }) filterRoles: RuntimeFilterRole[] = [];\n @property({ type: String }) filterDisplayText = '';\n @property({ type: String }) allLabel = 'All Roles & Instances';\n\n @property({ type: String }) borderColor = '';\n @property({ type: String }) statusCode = '';\n @property({ type: String }) statusMessage = '';\n @property({ type: String }) serviceDetailLabel = 'Service detail';\n\n @property({ type: Boolean }) showActionBanner = false;\n @property({ type: Boolean }) showWarningBanner = false;\n @property({ type: String }) manageLabel = 'Manage';\n @property({ type: String }) askOwnerLabel = 'Ask your owner';\n @property({ type: String }) invalidCredsLabel = 'Invalid credentials.';\n @property({ type: String }) limitReachedLabel = 'Limit reached.';\n @property({ type: String }) andLabel = 'and';\n @property({ type: String }) actionBannerLabel = '';\n\n @property({ type: Boolean }) moreActionsOpen = false;\n @property({ type: Array }) moreActionsOptions: ActionMenuItem[] = [];\n @property({ type: Boolean }) isFreeIaaS = false;\n @property({ type: String }) closeLabel = 'Close';\n @property({ type: String }) moreActionsLabel = 'More';\n\n @property({ type: String }) freeIaasLabel = 'Free IaaS';\n @property({ type: String }) freeIaasTitle = 'Free Infrastructure';\n @property({ type: String }) freeIaasDesc = 'This environment uses free infrastructure.';\n @property({ type: String }) haLabel = 'Highly Available';\n @property({ type: String }) haTitle = 'High Availability enabled';\n\n render() {\n const isRuntime = this.cardType === 'runtime';\n\n return html`\n <div\n class=\"w-full h-full bg-[var(--axebow-white)] rounded-lg px-2 pt-2 pb-4 flex flex-col justify-between gap-2 box-border ${isRuntime ? 'border-t-4' : ''} transition-shadow duration-200 ease-in-out hover:shadow-[0_4px_12px_0_rgba(13,24,33,0.08)] ${this.isDeleting ? 'pointer-events-none cursor-not-allowed grayscale' : ''}\"\n style=${isRuntime ? `border-top-color:${this.borderColor};` : ''}\n ?inert=${this.isDeleting}\n >\n <div class=\"flex flex-col gap-2\">\n <aurora-card-header\n .cardType=${this.cardType}\n .logoSrc=${this.logoSrc}\n .tenantOrAccount=${this.tenantOrAccount}\n .name=${this.name}\n .badge=${this.badge}\n .subtitle=${this.subtitle}\n .revisions=${this.revisions}\n .displayedRevision=${this.displayedRevision}\n .freeIaasLabel=${this.freeIaasLabel}\n .freeIaasTitle=${this.freeIaasTitle}\n .freeIaasDesc=${this.freeIaasDesc}\n .haLabel=${this.haLabel}\n .haTitle=${this.haTitle}\n @revision-change=${(e: CustomEvent) =>\n this.dispatchEvent(new CustomEvent('revision-change', { detail: e.detail, bubbles: true, composed: true }))}\n >\n <slot slot=\"subtitle-tooltip\" name=\"subtitle-tooltip\"></slot>\n </aurora-card-header>\n\n <div class=\"w-full px-2 flex flex-col gap-2\">\n ${isRuntime\n ? html`\n <div class=\"flex flex-row justify-between items-center min-h-10 max-h-10 overflow-hidden\">\n <span class=\"deploy-time text-[var(--axebow-secondary)]\"><slot name=\"time-elapsed\"></slot></span>\n ${this.isDeployed\n ? html`<span class=\"text-[var(--axebow-secondary)] border-2 border-[var(--axebow-secondary)] rounded-lg py-0.5 px-1.5 whitespace-nowrap text-xs\">${this.deployedLabel}</span>`\n : ''}\n </div>\n `\n : html`\n <aurora-card-stats-row\n .stats=${this.mainStats}\n .compact=${this.compact}\n @stat-label-click=${(e: CustomEvent) =>\n !this.isDeleting && this.dispatchEvent(new CustomEvent('stat-label-click', { detail: e.detail, bubbles: true, composed: true }))}\n ></aurora-card-stats-row>\n `}\n\n <div class=\"w-full h-full border border-[var(--axebow-light-gray)] rounded-md\">\n ${isRuntime\n ? html`\n <aurora-card-table-header\n .opened=${this.filterOpened}\n .filterDisplayText=${this.filterDisplayText}\n .allLabel=${this.allLabel}\n .attentionLabel=${this.attentionLabel}\n .showAttention=${this.showAttention}\n .filterRoles=${this.filterRoles}\n @toggle-open=${() =>\n !this.isDeleting && this.dispatchEvent(new CustomEvent('toggle-filter', { bubbles: true, composed: true }))}\n @filter-change=${(e: CustomEvent) =>\n !this.isDeleting && this.dispatchEvent(new CustomEvent('filter-change', { detail: e.detail, bubbles: true, composed: true }))}\n ></aurora-card-table-header>\n `\n : html`\n <aurora-card-filter\n .items=${this.filterItems}\n .selected=${this.selected}\n .emptyLabel=${this.emptyLabel}\n .emptyActionLabel=${this.emptyActionLabel}\n .attentionLabel=${this.attentionLabel}\n .showAttention=${this.showAttention}\n .opened=${this.filterOpened}\n .isPlainRole=${this.isPlainRole}\n .isDisabled=${this.isDeleting || this.isDisabled}\n @filter-select=${(e: CustomEvent) =>\n !this.isDeleting && this.dispatchEvent(new CustomEvent('filter-select', { detail: e.detail, bubbles: true, composed: true }))}\n @toggle-open=${() =>\n !this.isDeleting && this.dispatchEvent(new CustomEvent('toggle-filter', { bubbles: true, composed: true }))}\n @empty-action-click=${() =>\n !this.isDeleting && this.dispatchEvent(new CustomEvent('empty-action-click', { bubbles: true, composed: true }))}\n ></aurora-card-filter>\n `}\n\n <aurora-card-resource-table\n .rows=${this.tableStats}\n .attentionThreshold=${this.attentionThreshold}\n .cardType=${this.cardType}\n .isPlainRole=${this.isPlainRole}\n .showActionBanner=${this.showActionBanner}\n .showWarningBanner=${this.showWarningBanner}\n .manageLabel=${this.manageLabel}\n .askOwnerLabel=${this.askOwnerLabel}\n .invalidCredsLabel=${this.invalidCredsLabel}\n .limitReachedLabel=${this.limitReachedLabel}\n .andLabel=${this.andLabel}\n .actionBannerLabel=${this.actionBannerLabel}\n @manage-click=${() =>\n !this.isDeleting && this.dispatchEvent(new CustomEvent('manage-click', { bubbles: true, composed: true }))}\n @action-click=${() =>\n !this.isDeleting && this.dispatchEvent(new CustomEvent('action-click', { bubbles: true, composed: true }))}\n ></aurora-card-resource-table>\n </div>\n\n <slot name=\"extra-features\"></slot>\n </div>\n </div>\n\n <aurora-card-footer\n class=\"mb-1 pl-2\"\n .isFreeIaaS=${this.isFreeIaaS}\n .isPlainRole=${this.isPlainRole}\n .statusCode=${isRuntime ? this.statusCode : ''}\n .statusMessage=${isRuntime ? this.statusMessage : ''}\n .borderColor=${this.borderColor}\n .showSpinner=${isRuntime && this.borderColor === 'var(--axebow-gray)'}\n .moreActionsOpen=${this.moreActionsOpen}\n .moreActionsOptions=${isRuntime ? [] : this.moreActionsOptions}\n .closeLabel=${this.closeLabel}\n .moreActionsLabel=${this.moreActionsLabel}\n .actionLabel=${isRuntime ? this.serviceDetailLabel : ''}\n @more-actions-toggled=${(e: CustomEvent) =>\n this.dispatchEvent(new CustomEvent('more-actions-toggled', { detail: e.detail, bubbles: true, composed: true }))}\n @footer-action-click=${() =>\n this.dispatchEvent(new CustomEvent('service-detail-click', { bubbles: true, composed: true }))}\n >\n <slot name=\"status-footer\"></slot>\n </aurora-card-footer>\n\n <slot name=\"dialogs\"></slot>\n </div>\n `;\n }\n}\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { LitElement } from 'lit';
|
|
2
|
-
import { TableStatsType, RuntimeFilterRole } from './card.types.js';
|
|
3
|
-
export declare class AuroraRuntimeCard extends LitElement {
|
|
4
|
-
static styles: import('lit').CSSResult[];
|
|
5
|
-
name: string;
|
|
6
|
-
logo: string;
|
|
7
|
-
revisions: Array<{
|
|
8
|
-
id: string;
|
|
9
|
-
}>;
|
|
10
|
-
displayedRevision: string;
|
|
11
|
-
lastDeployed: string;
|
|
12
|
-
isDeployed: boolean;
|
|
13
|
-
tableStats: TableStatsType[];
|
|
14
|
-
attentionThreshold: number;
|
|
15
|
-
filterOpened: boolean;
|
|
16
|
-
filterDisplayText: string;
|
|
17
|
-
filterRoles: RuntimeFilterRole[];
|
|
18
|
-
showAttention: boolean;
|
|
19
|
-
borderColor: string;
|
|
20
|
-
statusCode: string;
|
|
21
|
-
statusMessage: string;
|
|
22
|
-
isRemoving: boolean;
|
|
23
|
-
deployedLabel: string;
|
|
24
|
-
allLabel: string;
|
|
25
|
-
attentionLabel: string;
|
|
26
|
-
serviceDetailLabel: string;
|
|
27
|
-
manageLabel: string;
|
|
28
|
-
askOwnerLabel: string;
|
|
29
|
-
invalidCredsLabel: string;
|
|
30
|
-
limitReachedLabel: string;
|
|
31
|
-
andLabel: string;
|
|
32
|
-
render(): import('lit-html').TemplateResult<1>;
|
|
33
|
-
private _renderHeader;
|
|
34
|
-
private _renderDeployInfo;
|
|
35
|
-
private _renderTable;
|
|
36
|
-
private _renderFooter;
|
|
37
|
-
private _formatRevision;
|
|
38
|
-
private _onRevisionChange;
|
|
39
|
-
private _onToggleFilter;
|
|
40
|
-
private _onFilterChange;
|
|
41
|
-
private _onServiceDetail;
|
|
42
|
-
}
|
|
43
|
-
//# sourceMappingURL=aurora-runtime-card.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"aurora-runtime-card.d.ts","sourceRoot":"","sources":["../../../src/components/cards/aurora-runtime-card.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAwB,MAAM,KAAK,CAAC;AAEvD,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpE,OAAO,uCAAuC,CAAC;AAE/C,qBACa,iBAAkB,SAAQ,UAAU;IAC/C,MAAM,CAAC,MAAM,4BAqCX;IAE0B,IAAI,SAAM;IACV,IAAI,SAAM;IACX,SAAS,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAM;IACrC,iBAAiB,SAAM;IACvB,YAAY,SAAM;IACjB,UAAU,UAAS;IACrB,UAAU,EAAE,cAAc,EAAE,CAAM;IACjC,kBAAkB,SAAM;IACvB,YAAY,UAAS;IACtB,iBAAiB,SAAM;IACxB,WAAW,EAAE,iBAAiB,EAAE,CAAM;IACpC,aAAa,UAAS;IACvB,WAAW,SAAM;IACjB,UAAU,SAAM;IAChB,aAAa,SAAM;IAClB,UAAU,UAAS;IAEpB,aAAa,SAAc;IAC3B,QAAQ,SAA2B;IACnC,cAAc,SAAsB;IACpC,kBAAkB,SAAoB;IACtC,WAAW,SAAY;IACvB,aAAa,SAAoB;IACjC,iBAAiB,SAA0B;IAC3C,iBAAiB,SAAoB;IACrC,QAAQ,SAAS;IAE7C,MAAM;IAoBN,OAAO,CAAC,aAAa;IAsBrB,OAAO,CAAC,iBAAiB;IAWzB,OAAO,CAAC,YAAY;IA2DpB,OAAO,CAAC,aAAa;IAqBrB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,gBAAgB;CAGzB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"aurora-card-status-bar.d.ts","sourceRoot":"","sources":["../../../../src/components/cards/parts/aurora-card-status-bar.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAwB,MAAM,KAAK,CAAC;AAEvD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,2BAA2B,CAAC;AAEnC,qBACa,mBAAoB,SAAQ,UAAU;IACjD,MAAM,CAAC,MAAM,4BAGX;IAE2B,UAAU,UAAS;IACnB,WAAW,UAAS;IACpB,eAAe,UAAS;IAC1B,kBAAkB,EAAE,cAAc,EAAE,CAAM;IACzC,UAAU,SAAW;IACrB,gBAAgB,SAAU;IAEtD,MAAM;IAsBN,OAAO,CAAC,UAAU;CAKnB"}
|