@sumaris-net/ngx-components 18.23.15 → 18.23.17
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/doc/changelog.md +2 -2
- package/esm2022/src/app/core/form/entity/entity-metadata.component.mjs +9 -8
- package/esm2022/src/app/core/form/entity/entity.module.mjs +5 -4
- package/fesm2022/sumaris-net.ngx-components.mjs +5 -5
- package/fesm2022/sumaris-net.ngx-components.mjs.map +1 -1
- package/package.json +1 -1
- package/src/app/core/form/entity/entity.module.d.ts +2 -1
- package/src/assets/manifest.json +1 -1
package/doc/changelog.md
CHANGED
|
@@ -2083,5 +2083,5 @@ enh: Environment: add useHash property to configure Angular router to use hash U
|
|
|
2083
2083
|
# 18.23.14
|
|
2084
2084
|
- enh(account-service) Add service options (new injection token), to be able to change graphql default queries
|
|
2085
2085
|
|
|
2086
|
-
# 18.23.
|
|
2087
|
-
- enh(entity-metadata-component) Fix avatar background color
|
|
2086
|
+
# 18.23.16
|
|
2087
|
+
- enh(entity-metadata-component) Fix avatar image background color
|
|
@@ -2,23 +2,24 @@ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
|
2
2
|
// import fade in animation
|
|
3
3
|
import { fadeInAnimation } from '../../../shared/material/material.animations';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular
|
|
6
|
-
import * as i2 from "@
|
|
7
|
-
import * as i3 from "
|
|
8
|
-
import * as i4 from "
|
|
9
|
-
import * as i5 from "../../../shared/pipes/
|
|
5
|
+
import * as i1 from "@ionic/angular";
|
|
6
|
+
import * as i2 from "@ngx-translate/core";
|
|
7
|
+
import * as i3 from "ngx-jdenticon";
|
|
8
|
+
import * as i4 from "../../../shared/pipes/date-format.pipe";
|
|
9
|
+
import * as i5 from "../../../shared/pipes/string.pipes";
|
|
10
|
+
import * as i6 from "../../services/pipes/person-to-string.pipe";
|
|
10
11
|
export class EntityMetadataComponent {
|
|
11
12
|
value;
|
|
12
13
|
showRecorder = true;
|
|
13
14
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EntityMetadataComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
14
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: EntityMetadataComponent, selector: "app-entity-metadata", inputs: { value: "value", showRecorder: "showRecorder" }, ngImport: i0, template: "@if (value?.id) {\n <ion-card @fadeInAnimation>\n <!-- recorder -->\n @if (showRecorder && (value.recorderDepartment || value.recorderPerson)) {\n <ion-item color=\"transparent\">\n <!-- recorder avatar -->\n
|
|
15
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: EntityMetadataComponent, selector: "app-entity-metadata", inputs: { value: "value", showRecorder: "showRecorder" }, ngImport: i0, template: "@if (value?.id) {\n <ion-card @fadeInAnimation>\n <!-- recorder -->\n @if (showRecorder && (value.recorderDepartment || value.recorderPerson)) {\n <ion-item color=\"transparent\">\n <!-- recorder avatar -->\n @if (value.recorderPerson; as recorderPerson) {\n <ion-avatar slot=\"start\">\n @if (recorderPerson.avatar; as avatarUrl) {\n <ion-img [src]=\"avatarUrl\"/>\n } @else if (recorderPerson?.id | isNotNil) {\n <svg width=\"38\" height=\"38\" [data-jdenticon-value]=\"recorderPerson.id\"></svg>\n }\n </ion-avatar>\n }\n\n <!-- recorder name -->\n <ion-label>\n <ion-card-subtitle translate>COMMON.RECORDER</ion-card-subtitle>\n @if (value.recorderPerson; as recorderPerson) {\n <ion-card-title class=\"ion-text-nowrap\">\n {{ recorderPerson | personToString }}\n </ion-card-title>\n }\n\n @if (value.recorderDepartment?.label; as departmentLabel) {\n <ion-card-subtitle>{{ departmentLabel }}</ion-card-subtitle>\n }\n </ion-label>\n\n <ng-content select=\"[recorderSuffix]\"></ng-content>\n </ion-item>\n }\n\n <ng-content select=\"[afterRecorder]\"></ng-content>\n\n <ion-card-content>\n <ion-label class=\"ion-text-wrap status\">\n <!-- creation date -->\n @if (value.creationDate) {\n <ion-text>\n <ion-icon name=\"calendar\"></ion-icon>\n \n <span translate>COMMON.CREATED_ON</span>\n <span>\n \n <b>{{ value.creationDate | dateFormat: {time: true} }}</b>\n </span>\n </ion-text>\n }\n\n <!-- update date -->\n @if (value.updateDate != value.creationDate && value.updateDate; as updateDate) {\n <ion-text>\n @if (value.creationDate) {\n <br/>\n }\n <ion-label>\n <ion-icon name=\"time-outline\"></ion-icon>\n \n <span translate>COMMON.UPDATED_ON</span>\n <span> {{ updateDate | dateFormat: {time: true, seconds: true} }}</span>\n </ion-label>\n </ion-text>\n }\n </ion-label>\n\n <ng-content></ng-content>\n </ion-card-content>\n </ion-card>\n}\n", styles: ["ion-card{background-color:var(--ion-color-light-tint)}ion-card ion-item ion-avatar{--avatar-border-width: 1px;--avatar-border-opacity: .5;--avatar-size: 40px;--avatar-svg-background-color: var(--ion-background-color);--avatar-img-background-color: var(--ion-color-secondary);height:var(--avatar-size, 40px);width:var(--avatar-size, 40px);border:solid var(--avatar-border-width, 1px) rgba(var(--ion-color-secondary-rgb),var(--avatar-border-opacity, .5))}ion-card ion-item ion-avatar ::ng-deep ion-img img{background-color:var(--avatar-img-background-color)}ion-card ion-item ion-avatar svg{background-color:var(--avatar-svg-background-color);border-radius:50%;height:calc(var(--avatar-size, 40px) - var(--avatar-border-width, 1px) * 2);width:calc(var(--avatar-size, 40px) - var(--avatar-border-width, 1px) * 2)}ion-card ion-item ion-card-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}ion-card ion-card-content{background-color:var(--ion-color-light-tint)}ion-card ion-card-content ion-label.status,ion-card ion-card-content * ion-label.status{font-size:12px!important;color:var(--ion-color-step-850)}\n"], dependencies: [{ kind: "component", type: i1.IonAvatar, selector: "ion-avatar" }, { kind: "component", type: i1.IonCard, selector: "ion-card", inputs: ["button", "color", "disabled", "download", "href", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i1.IonCardContent, selector: "ion-card-content", inputs: ["mode"] }, { kind: "component", type: i1.IonCardSubtitle, selector: "ion-card-subtitle", inputs: ["color", "mode"] }, { kind: "component", type: i1.IonCardTitle, selector: "ion-card-title", inputs: ["color", "mode"] }, { kind: "component", type: i1.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i1.IonImg, selector: "ion-img", inputs: ["alt", "src"] }, { kind: "component", type: i1.IonItem, selector: "ion-item", inputs: ["button", "color", "counter", "counterFormatter", "detail", "detailIcon", "disabled", "download", "fill", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "shape", "target", "type"] }, { kind: "component", type: i1.IonLabel, selector: "ion-label", inputs: ["color", "mode", "position"] }, { kind: "component", type: i1.IonText, selector: "ion-text", inputs: ["color", "mode"] }, { kind: "directive", type: i2.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "directive", type: i3.SvgJdenticonDirective, selector: "svg[data-jdenticon-hash],svg[data-jdenticon-value]", inputs: ["data-jdenticon-hash", "data-jdenticon-value", "width", "height"] }, { kind: "pipe", type: i4.DateFormatPipe, name: "dateFormat" }, { kind: "pipe", type: i5.IsNotNilPipe, name: "isNotNil" }, { kind: "pipe", type: i6.PersonToStringPipe, name: "personToString" }], animations: [fadeInAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
15
16
|
}
|
|
16
17
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EntityMetadataComponent, decorators: [{
|
|
17
18
|
type: Component,
|
|
18
|
-
args: [{ selector: 'app-entity-metadata', animations: [fadeInAnimation], changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (value?.id) {\n <ion-card @fadeInAnimation>\n <!-- recorder -->\n @if (showRecorder && (value.recorderDepartment || value.recorderPerson)) {\n <ion-item color=\"transparent\">\n <!-- recorder avatar -->\n
|
|
19
|
+
args: [{ selector: 'app-entity-metadata', animations: [fadeInAnimation], changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (value?.id) {\n <ion-card @fadeInAnimation>\n <!-- recorder -->\n @if (showRecorder && (value.recorderDepartment || value.recorderPerson)) {\n <ion-item color=\"transparent\">\n <!-- recorder avatar -->\n @if (value.recorderPerson; as recorderPerson) {\n <ion-avatar slot=\"start\">\n @if (recorderPerson.avatar; as avatarUrl) {\n <ion-img [src]=\"avatarUrl\"/>\n } @else if (recorderPerson?.id | isNotNil) {\n <svg width=\"38\" height=\"38\" [data-jdenticon-value]=\"recorderPerson.id\"></svg>\n }\n </ion-avatar>\n }\n\n <!-- recorder name -->\n <ion-label>\n <ion-card-subtitle translate>COMMON.RECORDER</ion-card-subtitle>\n @if (value.recorderPerson; as recorderPerson) {\n <ion-card-title class=\"ion-text-nowrap\">\n {{ recorderPerson | personToString }}\n </ion-card-title>\n }\n\n @if (value.recorderDepartment?.label; as departmentLabel) {\n <ion-card-subtitle>{{ departmentLabel }}</ion-card-subtitle>\n }\n </ion-label>\n\n <ng-content select=\"[recorderSuffix]\"></ng-content>\n </ion-item>\n }\n\n <ng-content select=\"[afterRecorder]\"></ng-content>\n\n <ion-card-content>\n <ion-label class=\"ion-text-wrap status\">\n <!-- creation date -->\n @if (value.creationDate) {\n <ion-text>\n <ion-icon name=\"calendar\"></ion-icon>\n \n <span translate>COMMON.CREATED_ON</span>\n <span>\n \n <b>{{ value.creationDate | dateFormat: {time: true} }}</b>\n </span>\n </ion-text>\n }\n\n <!-- update date -->\n @if (value.updateDate != value.creationDate && value.updateDate; as updateDate) {\n <ion-text>\n @if (value.creationDate) {\n <br/>\n }\n <ion-label>\n <ion-icon name=\"time-outline\"></ion-icon>\n \n <span translate>COMMON.UPDATED_ON</span>\n <span> {{ updateDate | dateFormat: {time: true, seconds: true} }}</span>\n </ion-label>\n </ion-text>\n }\n </ion-label>\n\n <ng-content></ng-content>\n </ion-card-content>\n </ion-card>\n}\n", styles: ["ion-card{background-color:var(--ion-color-light-tint)}ion-card ion-item ion-avatar{--avatar-border-width: 1px;--avatar-border-opacity: .5;--avatar-size: 40px;--avatar-svg-background-color: var(--ion-background-color);--avatar-img-background-color: var(--ion-color-secondary);height:var(--avatar-size, 40px);width:var(--avatar-size, 40px);border:solid var(--avatar-border-width, 1px) rgba(var(--ion-color-secondary-rgb),var(--avatar-border-opacity, .5))}ion-card ion-item ion-avatar ::ng-deep ion-img img{background-color:var(--avatar-img-background-color)}ion-card ion-item ion-avatar svg{background-color:var(--avatar-svg-background-color);border-radius:50%;height:calc(var(--avatar-size, 40px) - var(--avatar-border-width, 1px) * 2);width:calc(var(--avatar-size, 40px) - var(--avatar-border-width, 1px) * 2)}ion-card ion-item ion-card-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}ion-card ion-card-content{background-color:var(--ion-color-light-tint)}ion-card ion-card-content ion-label.status,ion-card ion-card-content * ion-label.status{font-size:12px!important;color:var(--ion-color-step-850)}\n"] }]
|
|
19
20
|
}], propDecorators: { value: [{
|
|
20
21
|
type: Input
|
|
21
22
|
}], showRecorder: [{
|
|
22
23
|
type: Input
|
|
23
24
|
}] } });
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LW1ldGFkYXRhLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29yZS9mb3JtL2VudGl0eS9lbnRpdHktbWV0YWRhdGEuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9jb3JlL2Zvcm0vZW50aXR5L2VudGl0eS1tZXRhZGF0YS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxRSwyQkFBMkI7QUFDM0IsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhDQUE4QyxDQUFDOzs7Ozs7OztBQVUvRSxNQUFNLE9BQU8sdUJBQXVCO0lBQ3pCLEtBQUssQ0FBaUc7SUFFdEcsWUFBWSxHQUFHLElBQUksQ0FBQzt3R0FIbEIsdUJBQXVCOzRGQUF2Qix1QkFBdUIscUhDYnBDLDgwRUF1RUEsNDVGRDdEYyxDQUFDLGVBQWUsQ0FBQzs7NEZBR2xCLHVCQUF1QjtrQkFQbkMsU0FBUzsrQkFDRSxxQkFBcUIsY0FHbkIsQ0FBQyxlQUFlLENBQUMsbUJBQ1osdUJBQXVCLENBQUMsTUFBTTs4QkFHdEMsS0FBSztzQkFBYixLQUFLO2dCQUVHLFlBQVk7c0JBQXBCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRW50aXR5IH0gZnJvbSAnLi4vLi4vc2VydmljZXMvbW9kZWwvZW50aXR5Lm1vZGVsJztcbi8vIGltcG9ydCBmYWRlIGluIGFuaW1hdGlvblxuaW1wb3J0IHsgZmFkZUluQW5pbWF0aW9uIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL21hdGVyaWFsL21hdGVyaWFsLmFuaW1hdGlvbnMnO1xuaW1wb3J0IHsgTW9tZW50IH0gZnJvbSAnbW9tZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWVudGl0eS1tZXRhZGF0YScsXG4gIHRlbXBsYXRlVXJsOiAnLi9lbnRpdHktbWV0YWRhdGEuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbnRpdHktbWV0YWRhdGEuY29tcG9uZW50LnNjc3MnXSxcbiAgYW5pbWF0aW9uczogW2ZhZGVJbkFuaW1hdGlvbl0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBFbnRpdHlNZXRhZGF0YUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHZhbHVlOiBFbnRpdHk8YW55PiAmIHsgY3JlYXRpb25EYXRlPzogRGF0ZSB8IE1vbWVudDsgcmVjb3JkZXJEZXBhcnRtZW50PzogYW55OyByZWNvcmRlclBlcnNvbj86IGFueSB9O1xuXG4gIEBJbnB1dCgpIHNob3dSZWNvcmRlciA9IHRydWU7XG59XG4iLCJAaWYgKHZhbHVlPy5pZCkge1xuICA8aW9uLWNhcmQgQGZhZGVJbkFuaW1hdGlvbj5cbiAgICA8IS0tIHJlY29yZGVyIC0tPlxuICAgIEBpZiAoc2hvd1JlY29yZGVyICYmICh2YWx1ZS5yZWNvcmRlckRlcGFydG1lbnQgfHwgdmFsdWUucmVjb3JkZXJQZXJzb24pKSB7XG4gICAgICA8aW9uLWl0ZW0gY29sb3I9XCJ0cmFuc3BhcmVudFwiPlxuICAgICAgICA8IS0tIHJlY29yZGVyIGF2YXRhciAtLT5cbiAgICAgICAgQGlmICh2YWx1ZS5yZWNvcmRlclBlcnNvbjsgYXMgcmVjb3JkZXJQZXJzb24pIHtcbiAgICAgICAgICA8aW9uLWF2YXRhciBzbG90PVwic3RhcnRcIj5cbiAgICAgICAgICAgIEBpZiAocmVjb3JkZXJQZXJzb24uYXZhdGFyOyBhcyBhdmF0YXJVcmwpIHtcbiAgICAgICAgICAgICAgPGlvbi1pbWcgW3NyY109XCJhdmF0YXJVcmxcIi8+XG4gICAgICAgICAgICB9IEBlbHNlIGlmIChyZWNvcmRlclBlcnNvbj8uaWQgfCBpc05vdE5pbCkge1xuICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMzhcIiBoZWlnaHQ9XCIzOFwiIFtkYXRhLWpkZW50aWNvbi12YWx1ZV09XCJyZWNvcmRlclBlcnNvbi5pZFwiPjwvc3ZnPlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvaW9uLWF2YXRhcj5cbiAgICAgICAgfVxuXG4gICAgICAgIDwhLS0gcmVjb3JkZXIgbmFtZSAtLT5cbiAgICAgICAgPGlvbi1sYWJlbD5cbiAgICAgICAgICA8aW9uLWNhcmQtc3VidGl0bGUgdHJhbnNsYXRlPkNPTU1PTi5SRUNPUkRFUjwvaW9uLWNhcmQtc3VidGl0bGU+XG4gICAgICAgICAgQGlmICh2YWx1ZS5yZWNvcmRlclBlcnNvbjsgYXMgcmVjb3JkZXJQZXJzb24pIHtcbiAgICAgICAgICAgIDxpb24tY2FyZC10aXRsZSBjbGFzcz1cImlvbi10ZXh0LW5vd3JhcFwiPlxuICAgICAgICAgICAgICB7eyByZWNvcmRlclBlcnNvbiB8IHBlcnNvblRvU3RyaW5nIH19XG4gICAgICAgICAgICA8L2lvbi1jYXJkLXRpdGxlPlxuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiAodmFsdWUucmVjb3JkZXJEZXBhcnRtZW50Py5sYWJlbDsgYXMgZGVwYXJ0bWVudExhYmVsKSB7XG4gICAgICAgICAgICA8aW9uLWNhcmQtc3VidGl0bGU+e3sgZGVwYXJ0bWVudExhYmVsIH19PC9pb24tY2FyZC1zdWJ0aXRsZT5cbiAgICAgICAgICB9XG4gICAgICAgIDwvaW9uLWxhYmVsPlxuXG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltyZWNvcmRlclN1ZmZpeF1cIj48L25nLWNvbnRlbnQ+XG4gICAgICA8L2lvbi1pdGVtPlxuICAgIH1cblxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIlthZnRlclJlY29yZGVyXVwiPjwvbmctY29udGVudD5cblxuICAgIDxpb24tY2FyZC1jb250ZW50PlxuICAgICAgPGlvbi1sYWJlbCBjbGFzcz1cImlvbi10ZXh0LXdyYXAgc3RhdHVzXCI+XG4gICAgICAgIDwhLS0gY3JlYXRpb24gZGF0ZSAtLT5cbiAgICAgICAgQGlmICh2YWx1ZS5jcmVhdGlvbkRhdGUpIHtcbiAgICAgICAgICA8aW9uLXRleHQ+XG4gICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cImNhbGVuZGFyXCI+PC9pb24taWNvbj5cbiAgICAgICAgICAgICZuYnNwO1xuICAgICAgICAgICAgPHNwYW4gdHJhbnNsYXRlPkNPTU1PTi5DUkVBVEVEX09OPC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICAmbmJzcDtcbiAgICAgICAgICAgIDxiPnt7IHZhbHVlLmNyZWF0aW9uRGF0ZSB8IGRhdGVGb3JtYXQ6IHt0aW1lOiB0cnVlfSB9fTwvYj5cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPC9pb24tdGV4dD5cbiAgICAgICAgfVxuXG4gICAgICAgIDwhLS0gdXBkYXRlIGRhdGUgLS0+XG4gICAgICAgIEBpZiAodmFsdWUudXBkYXRlRGF0ZSAhPSB2YWx1ZS5jcmVhdGlvbkRhdGUgJiYgdmFsdWUudXBkYXRlRGF0ZTsgYXMgdXBkYXRlRGF0ZSkge1xuICAgICAgICA8aW9uLXRleHQ+XG4gICAgICAgICAgQGlmICh2YWx1ZS5jcmVhdGlvbkRhdGUpIHtcbiAgICAgICAgICAgIDxici8+XG4gICAgICAgICAgfVxuICAgICAgICAgIDxpb24tbGFiZWw+XG4gICAgICAgICAgICA8aW9uLWljb24gbmFtZT1cInRpbWUtb3V0bGluZVwiPjwvaW9uLWljb24+XG4gICAgICAgICAgICAmbmJzcDtcbiAgICAgICAgICAgIDxzcGFuIHRyYW5zbGF0ZT5DT01NT04uVVBEQVRFRF9PTjwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuPiZuYnNwO3t7IHVwZGF0ZURhdGUgfCBkYXRlRm9ybWF0OiB7dGltZTogdHJ1ZSwgc2Vjb25kczogdHJ1ZX0gfX08L3NwYW4+XG4gICAgICAgICAgPC9pb24tbGFiZWw+XG4gICAgICAgIDwvaW9uLXRleHQ+XG4gICAgICAgIH1cbiAgICAgIDwvaW9uLWxhYmVsPlxuXG4gICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgPC9pb24tY2FyZC1jb250ZW50PlxuICA8L2lvbi1jYXJkPlxufVxuIl19
|
|
@@ -3,21 +3,22 @@ import { SharedModule } from '../../../shared/shared.module';
|
|
|
3
3
|
import { EntityMetadataComponent } from './entity-metadata.component';
|
|
4
4
|
import { TranslateModule } from '@ngx-translate/core';
|
|
5
5
|
import { NgxJdenticonModule } from 'ngx-jdenticon';
|
|
6
|
+
import { CorePipesModule } from "../../services/pipes/pipes.module";
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
7
8
|
import * as i1 from "@ngx-translate/core";
|
|
8
9
|
export class AppEntityFormModule {
|
|
9
10
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AppEntityFormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
10
11
|
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: AppEntityFormModule, declarations: [
|
|
11
12
|
// Other components
|
|
12
|
-
EntityMetadataComponent], imports: [SharedModule, i1.TranslateModule, NgxJdenticonModule], exports: [TranslateModule,
|
|
13
|
+
EntityMetadataComponent], imports: [SharedModule, i1.TranslateModule, NgxJdenticonModule, CorePipesModule], exports: [TranslateModule,
|
|
13
14
|
// Components
|
|
14
15
|
EntityMetadataComponent] });
|
|
15
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AppEntityFormModule, imports: [SharedModule, TranslateModule.forChild(), NgxJdenticonModule, TranslateModule] });
|
|
16
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AppEntityFormModule, imports: [SharedModule, TranslateModule.forChild(), NgxJdenticonModule, CorePipesModule, TranslateModule] });
|
|
16
17
|
}
|
|
17
18
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AppEntityFormModule, decorators: [{
|
|
18
19
|
type: NgModule,
|
|
19
20
|
args: [{
|
|
20
|
-
imports: [SharedModule, TranslateModule.forChild(), NgxJdenticonModule],
|
|
21
|
+
imports: [SharedModule, TranslateModule.forChild(), NgxJdenticonModule, CorePipesModule],
|
|
21
22
|
declarations: [
|
|
22
23
|
// Other components
|
|
23
24
|
EntityMetadataComponent,
|
|
@@ -29,4 +30,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
29
30
|
],
|
|
30
31
|
}]
|
|
31
32
|
}] });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9hcHAvY29yZS9mb3JtL2VudGl0eS9lbnRpdHkubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzdELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLG1DQUFtQyxDQUFDOzs7QUFlbEUsTUFBTSxPQUFPLG1CQUFtQjt3R0FBbkIsbUJBQW1CO3lHQUFuQixtQkFBbUI7WUFUNUIsbUJBQW1CO1lBQ25CLHVCQUF1QixhQUpmLFlBQVksc0JBQThCLGtCQUFrQixFQUFFLGVBQWUsYUFPckYsZUFBZTtZQUNmLGFBQWE7WUFDYix1QkFBdUI7eUdBR2QsbUJBQW1CLFlBWnBCLFlBQVksRUFBRSxlQUFlLENBQUMsUUFBUSxFQUFFLEVBQUUsa0JBQWtCLEVBQUUsZUFBZSxFQU9yRixlQUFlOzs0RkFLTixtQkFBbUI7a0JBYi9CLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGVBQWUsQ0FBQyxRQUFRLEVBQUUsRUFBRSxrQkFBa0IsRUFBRSxlQUFlLENBQUM7b0JBRXhGLFlBQVksRUFBRTt3QkFDWixtQkFBbUI7d0JBQ25CLHVCQUF1QjtxQkFDeEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYix1QkFBdUI7cUJBQ3hCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNoYXJlZE1vZHVsZSB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9zaGFyZWQubW9kdWxlJztcbmltcG9ydCB7IEVudGl0eU1ldGFkYXRhQ29tcG9uZW50IH0gZnJvbSAnLi9lbnRpdHktbWV0YWRhdGEuY29tcG9uZW50JztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgTmd4SmRlbnRpY29uTW9kdWxlIH0gZnJvbSAnbmd4LWpkZW50aWNvbic7XG5pbXBvcnQge0NvcmVQaXBlc01vZHVsZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL3BpcGVzL3BpcGVzLm1vZHVsZVwiO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbU2hhcmVkTW9kdWxlLCBUcmFuc2xhdGVNb2R1bGUuZm9yQ2hpbGQoKSwgTmd4SmRlbnRpY29uTW9kdWxlLCBDb3JlUGlwZXNNb2R1bGVdLFxuXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIC8vIE90aGVyIGNvbXBvbmVudHNcbiAgICBFbnRpdHlNZXRhZGF0YUNvbXBvbmVudCxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFRyYW5zbGF0ZU1vZHVsZSxcbiAgICAvLyBDb21wb25lbnRzXG4gICAgRW50aXR5TWV0YWRhdGFDb21wb25lbnQsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFwcEVudGl0eUZvcm1Nb2R1bGUge31cbiJdfQ==
|
|
@@ -43467,11 +43467,11 @@ class EntityMetadataComponent {
|
|
|
43467
43467
|
value;
|
|
43468
43468
|
showRecorder = true;
|
|
43469
43469
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EntityMetadataComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
43470
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: EntityMetadataComponent, selector: "app-entity-metadata", inputs: { value: "value", showRecorder: "showRecorder" }, ngImport: i0, template: "@if (value?.id) {\n <ion-card @fadeInAnimation>\n <!-- recorder -->\n @if (showRecorder && (value.recorderDepartment || value.recorderPerson)) {\n <ion-item color=\"transparent\">\n <!-- recorder avatar -->\n
|
|
43470
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: EntityMetadataComponent, selector: "app-entity-metadata", inputs: { value: "value", showRecorder: "showRecorder" }, ngImport: i0, template: "@if (value?.id) {\n <ion-card @fadeInAnimation>\n <!-- recorder -->\n @if (showRecorder && (value.recorderDepartment || value.recorderPerson)) {\n <ion-item color=\"transparent\">\n <!-- recorder avatar -->\n @if (value.recorderPerson; as recorderPerson) {\n <ion-avatar slot=\"start\">\n @if (recorderPerson.avatar; as avatarUrl) {\n <ion-img [src]=\"avatarUrl\"/>\n } @else if (recorderPerson?.id | isNotNil) {\n <svg width=\"38\" height=\"38\" [data-jdenticon-value]=\"recorderPerson.id\"></svg>\n }\n </ion-avatar>\n }\n\n <!-- recorder name -->\n <ion-label>\n <ion-card-subtitle translate>COMMON.RECORDER</ion-card-subtitle>\n @if (value.recorderPerson; as recorderPerson) {\n <ion-card-title class=\"ion-text-nowrap\">\n {{ recorderPerson | personToString }}\n </ion-card-title>\n }\n\n @if (value.recorderDepartment?.label; as departmentLabel) {\n <ion-card-subtitle>{{ departmentLabel }}</ion-card-subtitle>\n }\n </ion-label>\n\n <ng-content select=\"[recorderSuffix]\"></ng-content>\n </ion-item>\n }\n\n <ng-content select=\"[afterRecorder]\"></ng-content>\n\n <ion-card-content>\n <ion-label class=\"ion-text-wrap status\">\n <!-- creation date -->\n @if (value.creationDate) {\n <ion-text>\n <ion-icon name=\"calendar\"></ion-icon>\n \n <span translate>COMMON.CREATED_ON</span>\n <span>\n \n <b>{{ value.creationDate | dateFormat: {time: true} }}</b>\n </span>\n </ion-text>\n }\n\n <!-- update date -->\n @if (value.updateDate != value.creationDate && value.updateDate; as updateDate) {\n <ion-text>\n @if (value.creationDate) {\n <br/>\n }\n <ion-label>\n <ion-icon name=\"time-outline\"></ion-icon>\n \n <span translate>COMMON.UPDATED_ON</span>\n <span> {{ updateDate | dateFormat: {time: true, seconds: true} }}</span>\n </ion-label>\n </ion-text>\n }\n </ion-label>\n\n <ng-content></ng-content>\n </ion-card-content>\n </ion-card>\n}\n", styles: ["ion-card{background-color:var(--ion-color-light-tint)}ion-card ion-item ion-avatar{--avatar-border-width: 1px;--avatar-border-opacity: .5;--avatar-size: 40px;--avatar-svg-background-color: var(--ion-background-color);--avatar-img-background-color: var(--ion-color-secondary);height:var(--avatar-size, 40px);width:var(--avatar-size, 40px);border:solid var(--avatar-border-width, 1px) rgba(var(--ion-color-secondary-rgb),var(--avatar-border-opacity, .5))}ion-card ion-item ion-avatar ::ng-deep ion-img img{background-color:var(--avatar-img-background-color)}ion-card ion-item ion-avatar svg{background-color:var(--avatar-svg-background-color);border-radius:50%;height:calc(var(--avatar-size, 40px) - var(--avatar-border-width, 1px) * 2);width:calc(var(--avatar-size, 40px) - var(--avatar-border-width, 1px) * 2)}ion-card ion-item ion-card-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}ion-card ion-card-content{background-color:var(--ion-color-light-tint)}ion-card ion-card-content ion-label.status,ion-card ion-card-content * ion-label.status{font-size:12px!important;color:var(--ion-color-step-850)}\n"], dependencies: [{ kind: "component", type: i2$1.IonAvatar, selector: "ion-avatar" }, { kind: "component", type: i2$1.IonCard, selector: "ion-card", inputs: ["button", "color", "disabled", "download", "href", "mode", "rel", "routerAnimation", "routerDirection", "target", "type"] }, { kind: "component", type: i2$1.IonCardContent, selector: "ion-card-content", inputs: ["mode"] }, { kind: "component", type: i2$1.IonCardSubtitle, selector: "ion-card-subtitle", inputs: ["color", "mode"] }, { kind: "component", type: i2$1.IonCardTitle, selector: "ion-card-title", inputs: ["color", "mode"] }, { kind: "component", type: i2$1.IonIcon, selector: "ion-icon", inputs: ["color", "flipRtl", "icon", "ios", "lazy", "md", "mode", "name", "sanitize", "size", "src"] }, { kind: "component", type: i2$1.IonImg, selector: "ion-img", inputs: ["alt", "src"] }, { kind: "component", type: i2$1.IonItem, selector: "ion-item", inputs: ["button", "color", "counter", "counterFormatter", "detail", "detailIcon", "disabled", "download", "fill", "href", "lines", "mode", "rel", "routerAnimation", "routerDirection", "shape", "target", "type"] }, { kind: "component", type: i2$1.IonLabel, selector: "ion-label", inputs: ["color", "mode", "position"] }, { kind: "component", type: i2$1.IonText, selector: "ion-text", inputs: ["color", "mode"] }, { kind: "directive", type: i1$1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "directive", type: i4$3.SvgJdenticonDirective, selector: "svg[data-jdenticon-hash],svg[data-jdenticon-value]", inputs: ["data-jdenticon-hash", "data-jdenticon-value", "width", "height"] }, { kind: "pipe", type: DateFormatPipe, name: "dateFormat" }, { kind: "pipe", type: IsNotNilPipe, name: "isNotNil" }, { kind: "pipe", type: PersonToStringPipe, name: "personToString" }], animations: [fadeInAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
43471
43471
|
}
|
|
43472
43472
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EntityMetadataComponent, decorators: [{
|
|
43473
43473
|
type: Component,
|
|
43474
|
-
args: [{ selector: 'app-entity-metadata', animations: [fadeInAnimation], changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (value?.id) {\n <ion-card @fadeInAnimation>\n <!-- recorder -->\n @if (showRecorder && (value.recorderDepartment || value.recorderPerson)) {\n <ion-item color=\"transparent\">\n <!-- recorder avatar -->\n
|
|
43474
|
+
args: [{ selector: 'app-entity-metadata', animations: [fadeInAnimation], changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (value?.id) {\n <ion-card @fadeInAnimation>\n <!-- recorder -->\n @if (showRecorder && (value.recorderDepartment || value.recorderPerson)) {\n <ion-item color=\"transparent\">\n <!-- recorder avatar -->\n @if (value.recorderPerson; as recorderPerson) {\n <ion-avatar slot=\"start\">\n @if (recorderPerson.avatar; as avatarUrl) {\n <ion-img [src]=\"avatarUrl\"/>\n } @else if (recorderPerson?.id | isNotNil) {\n <svg width=\"38\" height=\"38\" [data-jdenticon-value]=\"recorderPerson.id\"></svg>\n }\n </ion-avatar>\n }\n\n <!-- recorder name -->\n <ion-label>\n <ion-card-subtitle translate>COMMON.RECORDER</ion-card-subtitle>\n @if (value.recorderPerson; as recorderPerson) {\n <ion-card-title class=\"ion-text-nowrap\">\n {{ recorderPerson | personToString }}\n </ion-card-title>\n }\n\n @if (value.recorderDepartment?.label; as departmentLabel) {\n <ion-card-subtitle>{{ departmentLabel }}</ion-card-subtitle>\n }\n </ion-label>\n\n <ng-content select=\"[recorderSuffix]\"></ng-content>\n </ion-item>\n }\n\n <ng-content select=\"[afterRecorder]\"></ng-content>\n\n <ion-card-content>\n <ion-label class=\"ion-text-wrap status\">\n <!-- creation date -->\n @if (value.creationDate) {\n <ion-text>\n <ion-icon name=\"calendar\"></ion-icon>\n \n <span translate>COMMON.CREATED_ON</span>\n <span>\n \n <b>{{ value.creationDate | dateFormat: {time: true} }}</b>\n </span>\n </ion-text>\n }\n\n <!-- update date -->\n @if (value.updateDate != value.creationDate && value.updateDate; as updateDate) {\n <ion-text>\n @if (value.creationDate) {\n <br/>\n }\n <ion-label>\n <ion-icon name=\"time-outline\"></ion-icon>\n \n <span translate>COMMON.UPDATED_ON</span>\n <span> {{ updateDate | dateFormat: {time: true, seconds: true} }}</span>\n </ion-label>\n </ion-text>\n }\n </ion-label>\n\n <ng-content></ng-content>\n </ion-card-content>\n </ion-card>\n}\n", styles: ["ion-card{background-color:var(--ion-color-light-tint)}ion-card ion-item ion-avatar{--avatar-border-width: 1px;--avatar-border-opacity: .5;--avatar-size: 40px;--avatar-svg-background-color: var(--ion-background-color);--avatar-img-background-color: var(--ion-color-secondary);height:var(--avatar-size, 40px);width:var(--avatar-size, 40px);border:solid var(--avatar-border-width, 1px) rgba(var(--ion-color-secondary-rgb),var(--avatar-border-opacity, .5))}ion-card ion-item ion-avatar ::ng-deep ion-img img{background-color:var(--avatar-img-background-color)}ion-card ion-item ion-avatar svg{background-color:var(--avatar-svg-background-color);border-radius:50%;height:calc(var(--avatar-size, 40px) - var(--avatar-border-width, 1px) * 2);width:calc(var(--avatar-size, 40px) - var(--avatar-border-width, 1px) * 2)}ion-card ion-item ion-card-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}ion-card ion-card-content{background-color:var(--ion-color-light-tint)}ion-card ion-card-content ion-label.status,ion-card ion-card-content * ion-label.status{font-size:12px!important;color:var(--ion-color-step-850)}\n"] }]
|
|
43475
43475
|
}], propDecorators: { value: [{
|
|
43476
43476
|
type: Input
|
|
43477
43477
|
}], showRecorder: [{
|
|
@@ -43482,15 +43482,15 @@ class AppEntityFormModule {
|
|
|
43482
43482
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AppEntityFormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
43483
43483
|
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: AppEntityFormModule, declarations: [
|
|
43484
43484
|
// Other components
|
|
43485
|
-
EntityMetadataComponent], imports: [SharedModule, i1$1.TranslateModule, NgxJdenticonModule], exports: [TranslateModule,
|
|
43485
|
+
EntityMetadataComponent], imports: [SharedModule, i1$1.TranslateModule, NgxJdenticonModule, CorePipesModule], exports: [TranslateModule,
|
|
43486
43486
|
// Components
|
|
43487
43487
|
EntityMetadataComponent] });
|
|
43488
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AppEntityFormModule, imports: [SharedModule, TranslateModule.forChild(), NgxJdenticonModule, TranslateModule] });
|
|
43488
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AppEntityFormModule, imports: [SharedModule, TranslateModule.forChild(), NgxJdenticonModule, CorePipesModule, TranslateModule] });
|
|
43489
43489
|
}
|
|
43490
43490
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AppEntityFormModule, decorators: [{
|
|
43491
43491
|
type: NgModule,
|
|
43492
43492
|
args: [{
|
|
43493
|
-
imports: [SharedModule, TranslateModule.forChild(), NgxJdenticonModule],
|
|
43493
|
+
imports: [SharedModule, TranslateModule.forChild(), NgxJdenticonModule, CorePipesModule],
|
|
43494
43494
|
declarations: [
|
|
43495
43495
|
// Other components
|
|
43496
43496
|
EntityMetadataComponent,
|