diff --git a/frontend/app/package.json b/frontend/app/package.json
index 86f86445..b8c389d3 100644
--- a/frontend/app/package.json
+++ b/frontend/app/package.json
@@ -96,7 +96,7 @@
"jsonpath-plus": "6.0.1",
"leaflet": "1.9.3",
"leaflet.markercluster": "1.5.3",
- "material-symbols": "0.4.1",
+ "material-symbols": "0.10.0",
"moment": "2.29.4",
"ngx-logger": "5.0.12",
"ngx-markdown": "13.1.0",
diff --git a/frontend/app/src/app/modules/data/data-icon.config.ts b/frontend/app/src/app/modules/data/data-icon.config.ts
index 11d44438..81bad882 100644
--- a/frontend/app/src/app/modules/data/data-icon.config.ts
+++ b/frontend/app/src/app/modules/data/data-icon.config.ts
@@ -1,16 +1,16 @@
/*
- * Copyright (C) 2022 StApps
- * This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License as published by the Free
- * Software Foundation, version 3.
+ * Copyright (C) 2023 StApps
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the Free
+ * Software Foundation, version 3.
*
- * This program is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
- * more details.
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
*
- * You should have received a copy of the GNU General Public License along with
- * this program. If not, see .
+ * You should have received a copy of the GNU General Public License along with
+ * this program. If not, see .
*/
import {SCThingType} from '@openstapps/core';
import {SCIcon} from '../../util/ion-icon/icon';
@@ -21,7 +21,7 @@ export const DataIcons: Record = {
'article': SCIcon`article`,
'book': SCIcon`book`,
'building': SCIcon`location_city`,
- 'certification': SCIcon`fact_check`,
+ 'certification': SCIcon`contract`,
'catalog': SCIcon`inventory_2`,
'contact point': SCIcon`contact_page`,
'course of study': SCIcon`school`,
diff --git a/frontend/app/src/app/modules/data/data.module.ts b/frontend/app/src/app/modules/data/data.module.ts
index 2fa72694..8f04c248 100644
--- a/frontend/app/src/app/modules/data/data.module.ts
+++ b/frontend/app/src/app/modules/data/data.module.ts
@@ -101,6 +101,7 @@ import {browserFactory, SimpleBrowser} from '../../util/browser.factory';
import {StappsRatingComponent} from './elements/rating.component';
import {DishCharacteristicsComponent} from './types/dish/dish-characteristics.component';
import {SkeletonListComponent} from './list/skeleton-list.component';
+import {CertificationsInDetailComponent} from './elements/certifications-in-detail.component';
/**
* Module for handling data
@@ -113,6 +114,7 @@ import {SkeletonListComponent} from './list/skeleton-list.component';
AddressDetailComponent,
CatalogDetailContentComponent,
CatalogListItemComponent,
+ CertificationsInDetailComponent,
DishCharacteristicsComponent,
DataDetailComponent,
DataDetailContentComponent,
diff --git a/frontend/app/src/app/modules/data/elements/certifications-in-detail.component.ts b/frontend/app/src/app/modules/data/elements/certifications-in-detail.component.ts
new file mode 100644
index 00000000..72c06952
--- /dev/null
+++ b/frontend/app/src/app/modules/data/elements/certifications-in-detail.component.ts
@@ -0,0 +1,25 @@
+/*
+ * Copyright (C) 2023 StApps
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the Free
+ * Software Foundation, version 3.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * this program. If not, see .
+ */
+import {Component, Input} from '@angular/core';
+import {SCCertificationWithoutReferences} from '@openstapps/core';
+
+@Component({
+ selector: 'stapps-certifications-in-detail',
+ templateUrl: 'certifications-in-detail.html',
+ styleUrls: ['certifications-in-detail.scss'],
+})
+export class CertificationsInDetailComponent {
+ @Input() certifications: SCCertificationWithoutReferences[] = [];
+}
diff --git a/frontend/app/src/app/modules/data/elements/certifications-in-detail.html b/frontend/app/src/app/modules/data/elements/certifications-in-detail.html
new file mode 100644
index 00000000..af2cc55f
--- /dev/null
+++ b/frontend/app/src/app/modules/data/elements/certifications-in-detail.html
@@ -0,0 +1,43 @@
+
+
+ {{ 'data.types.certification.TITLE' | translate }}
+
+
+
+
+
+
+
+ {{ 'name' | thingTranslate: cert }}
+ {{ 'description' | thingTranslate: cert }}
+
+
+
+
+
+
+
+
+
+
diff --git a/frontend/app/src/app/modules/data/elements/certifications-in-detail.scss b/frontend/app/src/app/modules/data/elements/certifications-in-detail.scss
new file mode 100644
index 00000000..565c6724
--- /dev/null
+++ b/frontend/app/src/app/modules/data/elements/certifications-in-detail.scss
@@ -0,0 +1,33 @@
+/*!
+ * Copyright (C) 2023 StApps
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the Free
+ * Software Foundation, version 3.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * this program. If not, see .
+ */
+
+.certification-list {
+ container-type: inline-size;
+ width: 100%;
+ height: fit-content;
+}
+
+img {
+ cursor: pointer;
+ width: 25cqw;
+ max-width: 96px;
+ padding-inline-end: 4px;
+}
+
+@media (prefers-color-scheme: dark) {
+ img {
+ filter: invert(1) hue-rotate(180deg) brightness(135%);
+ }
+}
diff --git a/frontend/app/src/app/modules/data/types/dish/dish-characteristics.html b/frontend/app/src/app/modules/data/types/dish/dish-characteristics.html
index 05e3d3d5..89040309 100644
--- a/frontend/app/src/app/modules/data/types/dish/dish-characteristics.html
+++ b/frontend/app/src/app/modules/data/types/dish/dish-characteristics.html
@@ -13,14 +13,29 @@
~ this program. If not, see .
-->
+
+
+
+
+
+
+
+ •
+ •
{{ 'categories' | thingTranslate: item | join: ', ' | titlecase }}
diff --git a/frontend/app/src/app/modules/data/types/dish/dish-characteristics.scss b/frontend/app/src/app/modules/data/types/dish/dish-characteristics.scss
index ed0b3f52..fcf41a2b 100644
--- a/frontend/app/src/app/modules/data/types/dish/dish-characteristics.scss
+++ b/frontend/app/src/app/modules/data/types/dish/dish-characteristics.scss
@@ -12,15 +12,22 @@
* You should have received a copy of the GNU General Public License along with
* this program. If not, see .
*/
+$size: 16px;
+
ion-note {
list-style: none;
display: flex;
flex-direction: row-reverse;
+ align-items: center;
justify-content: flex-start;
}
abbr {
- width: 16px;
+ height: $size;
+}
+
+.mask-image {
+ width: $size;
aspect-ratio: 1;
background: var(--ion-color-medium);
@@ -30,9 +37,18 @@ abbr {
mask-position: center;
mask-size: contain;
mask-mode: alpha;
-
- + ion-label::after {
- content: '•';
- margin-inline: var(--spacing-xs);
- }
+}
+
+img {
+ height: 100%;
+ background: var(--background-url);
+}
+
+.sep {
+ display: none;
+ margin-inline: var(--spacing-xs);
+}
+
+abbr + .sep {
+ display: revert;
}
diff --git a/frontend/app/src/app/modules/data/types/dish/dish-detail-content.component.ts b/frontend/app/src/app/modules/data/types/dish/dish-detail-content.component.ts
index b370436a..a47fccf9 100644
--- a/frontend/app/src/app/modules/data/types/dish/dish-detail-content.component.ts
+++ b/frontend/app/src/app/modules/data/types/dish/dish-detail-content.component.ts
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2018, 2019 StApps
+ * Copyright (C) 2023 StApps
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the Free
* Software Foundation, version 3.
@@ -24,8 +24,5 @@ import {SCDish} from '@openstapps/core';
templateUrl: 'dish-detail-content.html',
})
export class DishDetailContentComponent {
- /**
- * TODO
- */
@Input() item: SCDish;
}
diff --git a/frontend/app/src/app/modules/data/types/dish/dish-detail-content.html b/frontend/app/src/app/modules/data/types/dish/dish-detail-content.html
index 438b8f0c..7228e06f 100644
--- a/frontend/app/src/app/modules/data/types/dish/dish-detail-content.html
+++ b/frontend/app/src/app/modules/data/types/dish/dish-detail-content.html
@@ -15,6 +15,10 @@
+