From bb16f3f04fcc2e978cb7f4c0440e4af5ed015a19 Mon Sep 17 00:00:00 2001
From: Vivy <4380412+Matthbo@users.noreply.github.com>
Date: Mon, 20 Jul 2026 17:02:10 +0200
Subject: [PATCH 1/3] Improve visibility of deprecated attributes
---
.../details-element-attributes.component.html | 16 +++++++----
.../details-element-attributes.component.ts | 11 +++++++-
.../details-element-options.scss | 27 +++++++++++++++++++
3 files changed, 48 insertions(+), 6 deletions(-)
diff --git a/frank-doc-frontend/src/app/views/details/details-element/details-element-attributes/details-element-attributes.component.html b/frank-doc-frontend/src/app/views/details/details-element/details-element-attributes/details-element-attributes.component.html
index 3317d496..26e891bc 100644
--- a/frank-doc-frontend/src/app/views/details/details-element/details-element-attributes/details-element-attributes.component.html
+++ b/frank-doc-frontend/src/app/views/details/details-element/details-element-attributes/details-element-attributes.component.html
@@ -80,11 +80,17 @@
forRemoval: attribute.deprecated && attribute.deprecated.forRemoval,
}"
>
-
|
+
+ @if (attribute.deprecated) {
+
+
+
+ {{ getDeprecatedTitle(attribute.deprecated) }}
+
+ } @else {
+
+ }
+ |
{{ attribute.enum ? 'options' : getFriendlyType(attribute.type) }} |
td:first-child {
text-decoration: line-through;
+ position: relative;
&.forRemoval {
+ color: var(--color-alert-error);
text-decoration-color: var(--color-alert-error);
}
+
+ .icon {
+ vertical-align: top;
+ }
+
+ .icon,
+ .deprecated-text {
+ padding-right: 8px;
+ &:hover + .deprecated-description,
+ &:hover + .deprecated-text + .deprecated-description {
+ display: block;
+ }
+ }
+
+ .deprecated-description {
+ position: absolute;
+ top: 3em;
+ width: max-content;
+ max-width: 600px;
+ padding: 0.5em;
+ border-radius: 0.25em;
+ display: none;
+ background: var(--color-text-dark);
+ color: white;
+ }
}
th {
From 85140e773c47797d818cc40234431474d6de8fdf Mon Sep 17 00:00:00 2001
From: Vivy <4380412+Matthbo@users.noreply.github.com>
Date: Mon, 20 Jul 2026 17:08:36 +0200
Subject: [PATCH 2/3] Also for nested components
---
.../details-element-nested.component.html | 9 ++++++++-
.../details-element-nested.component.ts | 3 ++-
2 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/frank-doc-frontend/src/app/views/details/details-element/details-element-nested/details-element-nested.component.html b/frank-doc-frontend/src/app/views/details/details-element/details-element-nested/details-element-nested.component.html
index 0a75b488..97fc20d8 100644
--- a/frank-doc-frontend/src/app/views/details/details-element/details-element-nested/details-element-nested.component.html
+++ b/frank-doc-frontend/src/app/views/details/details-element/details-element-nested/details-element-nested.component.html
@@ -12,7 +12,14 @@
class="border-top"
[ngClass]="{ deprecated: nestedElement.deprecated, 'padding-bottom': !nestedElement.type }"
>
- | |
+
+ @if (nestedElement.deprecated) {
+
+
+ } @else {
+
+ }
+ |
Date: Fri, 31 Jul 2026 10:19:46 +0200
Subject: [PATCH 3/3] Replace icon and hover text for dedicated description
text
---
.../details-element-attributes.component.html | 30 +++++++------------
.../details-element-attributes.component.ts | 4 +--
.../details-element-nested.component.html | 14 +--------
.../details-element-options.scss | 30 ++++---------------
4 files changed, 19 insertions(+), 59 deletions(-)
diff --git a/frank-doc-frontend/src/app/views/details/details-element/details-element-attributes/details-element-attributes.component.html b/frank-doc-frontend/src/app/views/details/details-element/details-element-attributes/details-element-attributes.component.html
index 26e891bc..f1656132 100644
--- a/frank-doc-frontend/src/app/views/details/details-element/details-element-attributes/details-element-attributes.component.html
+++ b/frank-doc-frontend/src/app/views/details/details-element/details-element-attributes/details-element-attributes.component.html
@@ -75,22 +75,12 @@
|
- |
- @if (attribute.deprecated) {
-
-
-
- {{ getDeprecatedTitle(attribute.deprecated) }}
-
- } @else {
-
- }
- |
+ |
{{ attribute.enum ? 'options' : getFriendlyType(attribute.type) }} |
|
- @if (attribute.description) {
+ @if (attribute.description || attribute.deprecated) {
- |
+
+ @if (attribute.deprecated) {
+ {{ getDeprecatedDescription(attribute.deprecated) }}
+ }
+ @if (attribute.description) {
+
+ }
+ |
}
@if (attribute.enum) {
diff --git a/frank-doc-frontend/src/app/views/details/details-element/details-element-attributes/details-element-attributes.component.ts b/frank-doc-frontend/src/app/views/details/details-element/details-element-attributes/details-element-attributes.component.ts
index a76f711c..5c55f095 100644
--- a/frank-doc-frontend/src/app/views/details/details-element/details-element-attributes/details-element-attributes.component.ts
+++ b/frank-doc-frontend/src/app/views/details/details-element/details-element-attributes/details-element-attributes.component.ts
@@ -53,8 +53,8 @@ export class DetailsElementAttributesComponent {
return this.getInheritedCollapseOptions(this.inheritedCollapseOptions, parentElementName, defaultValue);
}
- protected getDeprecatedTitle(deprecatedInfo: DeprecationInfo): string {
- return `${deprecatedInfo.description ?? 'This has been deprecated!'}${deprecatedInfo.since ? `\nSince ${deprecatedInfo.since}` : ''}`;
+ protected getDeprecatedDescription(deprecatedInfo: DeprecationInfo): string {
+ return `${deprecatedInfo.description ?? 'This has been deprecated'}${deprecatedInfo.since ? `\nSince ${deprecatedInfo.since}` : ''}`;
}
protected getFriendlyType(type: Attribute['type']): string {
diff --git a/frank-doc-frontend/src/app/views/details/details-element/details-element-nested/details-element-nested.component.html b/frank-doc-frontend/src/app/views/details/details-element/details-element-nested/details-element-nested.component.html
index 97fc20d8..2a33d7e5 100644
--- a/frank-doc-frontend/src/app/views/details/details-element/details-element-nested/details-element-nested.component.html
+++ b/frank-doc-frontend/src/app/views/details/details-element/details-element-nested/details-element-nested.component.html
@@ -12,19 +12,7 @@
class="border-top"
[ngClass]="{ deprecated: nestedElement.deprecated, 'padding-bottom': !nestedElement.type }"
>
-
- @if (nestedElement.deprecated) {
-
-
- } @else {
-
- }
- |
- |
+ |
{{ nestedElement.mandatory ? '1' : '0' }} .. {{ nestedElement.multiple ? 'n' : '1' }} |
@if (nestedElement.type) {
diff --git a/frank-doc-frontend/src/app/views/details/details-element/details-element-options.scss b/frank-doc-frontend/src/app/views/details/details-element/details-element-options.scss
index e20dd2b4..5525daad 100644
--- a/frank-doc-frontend/src/app/views/details/details-element/details-element-options.scss
+++ b/frank-doc-frontend/src/app/views/details/details-element/details-element-options.scss
@@ -23,31 +23,6 @@ table {
color: var(--color-alert-error);
text-decoration-color: var(--color-alert-error);
}
-
- .icon {
- vertical-align: top;
- }
-
- .icon,
- .deprecated-text {
- padding-right: 8px;
- &:hover + .deprecated-description,
- &:hover + .deprecated-text + .deprecated-description {
- display: block;
- }
- }
-
- .deprecated-description {
- position: absolute;
- top: 3em;
- width: max-content;
- max-width: 600px;
- padding: 0.5em;
- border-radius: 0.25em;
- display: none;
- background: var(--color-text-dark);
- color: white;
- }
}
th {
@@ -116,6 +91,11 @@ table {
.description {
margin-bottom: 2em;
color: var(--color-gray-dark);
+
+ .deprecated-text {
+ font-style: italic;
+ white-space: pre-line;
+ }
}
.options-sub-title {