geonetwork-ui 2.3.0-dev.b46332e6 → 2.3.0-dev.c22cb78a
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/esm2022/index.mjs +2 -1
- package/esm2022/libs/feature/editor/src/lib/+state/editor.facade.mjs +6 -2
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.mjs +3 -3
- package/esm2022/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.mjs +24 -10
- package/esm2022/libs/feature/editor/src/lib/components/record-form/record-form.component.mjs +3 -13
- package/esm2022/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.mjs +3 -3
- package/esm2022/libs/feature/notifications/src/index.mjs +4 -0
- package/esm2022/libs/feature/notifications/src/lib/feature-notifications.module.mjs +18 -0
- package/esm2022/libs/feature/notifications/src/lib/notification.model.mjs +2 -0
- package/esm2022/libs/feature/notifications/src/lib/notifications-container/notifications-container.component.mjs +49 -0
- package/esm2022/libs/feature/notifications/src/lib/notifications.service.mjs +29 -0
- package/esm2022/libs/feature/search/src/lib/results-table/results-table.component.mjs +3 -3
- package/esm2022/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.mjs +3 -3
- package/esm2022/libs/ui/elements/src/index.mjs +2 -1
- package/esm2022/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.mjs +3 -3
- package/esm2022/libs/ui/elements/src/lib/notification/notification.component.mjs +34 -0
- package/esm2022/libs/ui/elements/src/lib/record-api-form/record-api-form.component.mjs +3 -3
- package/esm2022/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.mjs +3 -3
- package/esm2022/translations/de.json +8 -0
- package/esm2022/translations/en.json +8 -0
- package/esm2022/translations/es.json +8 -0
- package/esm2022/translations/fr.json +8 -0
- package/esm2022/translations/it.json +8 -0
- package/esm2022/translations/nl.json +8 -0
- package/esm2022/translations/pt.json +8 -0
- package/fesm2022/geonetwork-ui.mjs +202 -33
- package/fesm2022/geonetwork-ui.mjs.map +1 -1
- package/index.d.ts +1 -0
- package/index.d.ts.map +1 -1
- package/index.ts +1 -0
- package/libs/feature/editor/src/lib/+state/editor.facade.d.ts +8 -5
- package/libs/feature/editor/src/lib/+state/editor.facade.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts +4 -0
- package/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.d.ts.map +1 -1
- package/libs/feature/editor/src/lib/components/record-form/record-form.component.d.ts.map +1 -1
- package/libs/feature/notifications/src/index.d.ts +4 -0
- package/libs/feature/notifications/src/index.d.ts.map +1 -0
- package/libs/feature/notifications/src/lib/feature-notifications.module.d.ts +7 -0
- package/libs/feature/notifications/src/lib/feature-notifications.module.d.ts.map +1 -0
- package/libs/feature/notifications/src/lib/notification.model.d.ts +7 -0
- package/libs/feature/notifications/src/lib/notification.model.d.ts.map +1 -0
- package/libs/feature/notifications/src/lib/notifications-container/notifications-container.component.d.ts +12 -0
- package/libs/feature/notifications/src/lib/notifications-container/notifications-container.component.d.ts.map +1 -0
- package/libs/feature/notifications/src/lib/notifications.service.d.ts +15 -0
- package/libs/feature/notifications/src/lib/notifications.service.d.ts.map +1 -0
- package/libs/ui/elements/src/index.d.ts +1 -0
- package/libs/ui/elements/src/index.d.ts.map +1 -1
- package/libs/ui/elements/src/lib/notification/notification.component.d.ts +13 -0
- package/libs/ui/elements/src/lib/notification/notification.component.d.ts.map +1 -0
- package/package.json +1 -1
- package/src/libs/feature/editor/src/lib/+state/editor.facade.ts +8 -1
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.css +0 -5
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field-rich/form-field-rich.component.html +1 -1
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.html +24 -0
- package/src/libs/feature/editor/src/lib/components/record-form/form-field/form-field.component.ts +19 -4
- package/src/libs/feature/editor/src/lib/components/record-form/record-form.component.ts +2 -21
- package/src/libs/feature/map/src/lib/add-layer-from-file/add-layer-from-file.component.html +1 -1
- package/src/libs/feature/notifications/src/index.ts +3 -0
- package/src/libs/feature/notifications/src/lib/feature-notifications.module.ts +10 -0
- package/src/libs/feature/notifications/src/lib/notification.model.ts +6 -0
- package/src/libs/feature/notifications/src/lib/notifications-container/notifications-container.component.css +0 -0
- package/src/libs/feature/notifications/src/lib/notifications-container/notifications-container.component.html +17 -0
- package/src/libs/feature/notifications/src/lib/notifications-container/notifications-container.component.ts +44 -0
- package/src/libs/feature/notifications/src/lib/notifications.service.ts +27 -0
- package/src/libs/feature/search/src/lib/results-table/results-table.component.html +3 -3
- package/src/libs/ui/catalog/src/lib/organisation-preview/organisation-preview.component.html +5 -5
- package/src/libs/ui/elements/src/index.ts +1 -0
- package/src/libs/ui/elements/src/lib/image-overlay-preview/image-overlay-preview.component.html +1 -1
- package/src/libs/ui/elements/src/lib/notification/notification.component.css +0 -0
- package/src/libs/ui/elements/src/lib/notification/notification.component.html +52 -0
- package/src/libs/ui/elements/src/lib/notification/notification.component.ts +31 -0
- package/src/libs/ui/elements/src/lib/record-api-form/record-api-form.component.html +1 -1
- package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.css +0 -5
- package/src/libs/ui/layout/src/lib/form-field-wrapper/form-field-wrapper.component.html +1 -1
- package/tailwind.base.css +36 -0
- package/translations/de.json +8 -0
- package/translations/en.json +8 -0
- package/translations/es.json +8 -0
- package/translations/fr.json +8 -0
- package/translations/it.json +8 -0
- package/translations/nl.json +8 -0
- package/translations/pt.json +8 -0
- package/translations/sk.json +8 -0
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
<div
|
|
2
|
+
class="p-[16px] flex flex-row gap-[16px] items-start border border-gray-200 shadow-md rounded bg-background"
|
|
3
|
+
>
|
|
4
|
+
<div
|
|
5
|
+
role="alert"
|
|
6
|
+
class="rounded-full text-white p-[6px] w-[32px] h-[32px] flex shrink-0"
|
|
7
|
+
[ngClass]="{
|
|
8
|
+
'bg-red-500': type === 'error',
|
|
9
|
+
'bg-yellow-500': type === 'warning',
|
|
10
|
+
'bg-green-500': type === 'success',
|
|
11
|
+
'bg-blue-500': type === 'info'
|
|
12
|
+
}"
|
|
13
|
+
[ngSwitch]="type"
|
|
14
|
+
>
|
|
15
|
+
<mat-icon class="material-symbols-outlined !w-[18px] !h-[18px] text-[20px]">
|
|
16
|
+
<ng-container *ngSwitchCase="'success'">check_circle</ng-container>
|
|
17
|
+
<ng-container *ngSwitchCase="'info'">info</ng-container>
|
|
18
|
+
<ng-container *ngSwitchCase="'warning'">warning</ng-container>
|
|
19
|
+
<ng-container *ngSwitchCase="'error'">error</ng-container>
|
|
20
|
+
</mat-icon>
|
|
21
|
+
</div>
|
|
22
|
+
<div
|
|
23
|
+
class="flex flex-col items-start gap-[4px] pt-[3px] grow shrink overflow-hidden"
|
|
24
|
+
>
|
|
25
|
+
<div class="font-bold text-[16px] text-gray-900">
|
|
26
|
+
{{ title }}
|
|
27
|
+
</div>
|
|
28
|
+
<div class="text-[14px] text-gray-800">
|
|
29
|
+
{{ text }}
|
|
30
|
+
</div>
|
|
31
|
+
<a
|
|
32
|
+
href
|
|
33
|
+
*ngIf="closeMessage"
|
|
34
|
+
class="text-[14px] gn-ui-link"
|
|
35
|
+
(click)="handleClose($event)"
|
|
36
|
+
>
|
|
37
|
+
{{ closeMessage }}
|
|
38
|
+
</a>
|
|
39
|
+
</div>
|
|
40
|
+
<gn-ui-button
|
|
41
|
+
type="light"
|
|
42
|
+
class="shrink-0"
|
|
43
|
+
(buttonClick)="handleClose()"
|
|
44
|
+
[style.--gn-ui-button-padding]="0"
|
|
45
|
+
[style.--gn-ui-button-width]="'21px'"
|
|
46
|
+
[style.--gn-ui-button-height]="'21px'"
|
|
47
|
+
>
|
|
48
|
+
<mat-icon class="material-symbols-outlined text-[22px] !w-[21px] !h-[21px]"
|
|
49
|
+
>close</mat-icon
|
|
50
|
+
>
|
|
51
|
+
</gn-ui-button>
|
|
52
|
+
</div>
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import {
|
|
2
|
+
ChangeDetectionStrategy,
|
|
3
|
+
Component,
|
|
4
|
+
EventEmitter,
|
|
5
|
+
Input,
|
|
6
|
+
Output,
|
|
7
|
+
} from '@angular/core'
|
|
8
|
+
import { CommonModule } from '@angular/common'
|
|
9
|
+
import { MatIconModule } from '@angular/material/icon'
|
|
10
|
+
import { ButtonComponent } from '../../../../../../libs/ui/inputs/src'
|
|
11
|
+
|
|
12
|
+
@Component({
|
|
13
|
+
selector: 'gn-ui-notification',
|
|
14
|
+
standalone: true,
|
|
15
|
+
imports: [CommonModule, MatIconModule, ButtonComponent],
|
|
16
|
+
templateUrl: './notification.component.html',
|
|
17
|
+
styleUrls: ['./notification.component.css'],
|
|
18
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
19
|
+
})
|
|
20
|
+
export class NotificationComponent {
|
|
21
|
+
@Input() type: 'info' | 'warning' | 'error' | 'success' = 'info'
|
|
22
|
+
@Input() title: string
|
|
23
|
+
@Input() text: string
|
|
24
|
+
@Input() closeMessage?: string
|
|
25
|
+
@Output() notificationClose = new EventEmitter<void>()
|
|
26
|
+
|
|
27
|
+
handleClose(event?: Event) {
|
|
28
|
+
event?.preventDefault()
|
|
29
|
+
this.notificationClose.emit()
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
</p>
|
|
14
14
|
</button>
|
|
15
15
|
</div>
|
|
16
|
-
<div class="flex flex-row flex-wrap justify-between
|
|
16
|
+
<div class="flex flex-row flex-wrap justify-between grow gap-5">
|
|
17
17
|
<div class="flex flex-col gap-3">
|
|
18
18
|
<p class="text-[14px]" translate>record.metadata.api.form.limit</p>
|
|
19
19
|
<div class="flex flex-row items-center gap-2">
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
<div class="flex-1 flex justify-end items-center">
|
|
5
5
|
<ng-content select="[form-field-interaction]"></ng-content>
|
|
6
6
|
<span
|
|
7
|
-
class="material-symbols-outlined m-2 icon-small"
|
|
7
|
+
class="material-symbols-outlined m-2 gn-ui-icon-small"
|
|
8
8
|
[matTooltip]="hint"
|
|
9
9
|
matTooltipPosition="above"
|
|
10
10
|
>
|
package/tailwind.base.css
CHANGED
|
@@ -9,6 +9,42 @@
|
|
|
9
9
|
@apply shadow-xl hover:shadow-xl-hover transition-shadow;
|
|
10
10
|
}
|
|
11
11
|
|
|
12
|
+
/* ICON CLASSES */
|
|
13
|
+
.gn-ui-icon-small {
|
|
14
|
+
font-size: 16px;
|
|
15
|
+
width: 16px;
|
|
16
|
+
height: 16px;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
/* LINK CLASSES */
|
|
20
|
+
.gn-ui-link {
|
|
21
|
+
@apply text-blue-600 hover:text-blue-700 hover:underline;
|
|
22
|
+
text-underline-offset: 0.2em;
|
|
23
|
+
text-decoration-thickness: 1px;
|
|
24
|
+
}
|
|
25
|
+
.gn-ui-link-external-icon {
|
|
26
|
+
content: 'open_in_new';
|
|
27
|
+
font-family: 'Material Symbols Outlined';
|
|
28
|
+
font-size: 0.9em;
|
|
29
|
+
display: inline-block;
|
|
30
|
+
vertical-align: top;
|
|
31
|
+
padding-top: 0.1em;
|
|
32
|
+
}
|
|
33
|
+
.gn-ui-link-external {
|
|
34
|
+
@apply gn-ui-link;
|
|
35
|
+
}
|
|
36
|
+
.gn-ui-link-external::before {
|
|
37
|
+
@apply gn-ui-link-external-icon;
|
|
38
|
+
padding-right: 0.2em;
|
|
39
|
+
}
|
|
40
|
+
.gn-ui-link-external-after {
|
|
41
|
+
@apply gn-ui-link;
|
|
42
|
+
}
|
|
43
|
+
.gn-ui-link-external-after::after {
|
|
44
|
+
@apply gn-ui-link-external-icon;
|
|
45
|
+
padding-left: 0.2em;
|
|
46
|
+
}
|
|
47
|
+
|
|
12
48
|
/* BUTTON CLASSES */
|
|
13
49
|
/* these are used behind the scenes by the `gn-ui-button` component */
|
|
14
50
|
|
package/translations/de.json
CHANGED
|
@@ -144,7 +144,15 @@
|
|
|
144
144
|
"downloads.format.unknown": "unbekannt",
|
|
145
145
|
"downloads.wfs.featuretype.not.found": "Der Layer wurde nicht gefunden",
|
|
146
146
|
"dropFile": "Datei ablegen",
|
|
147
|
+
"editor.record.loadError.body": "",
|
|
148
|
+
"editor.record.loadError.closeMessage": "",
|
|
149
|
+
"editor.record.loadError.title": "",
|
|
147
150
|
"editor.record.publish": "",
|
|
151
|
+
"editor.record.publishError.body": "",
|
|
152
|
+
"editor.record.publishError.closeMessage": "",
|
|
153
|
+
"editor.record.publishError.title": "",
|
|
154
|
+
"editor.record.publishSuccess.body": "",
|
|
155
|
+
"editor.record.publishSuccess.title": "",
|
|
148
156
|
"editor.record.upToDate": "",
|
|
149
157
|
"externalviewer.dataset.unnamed": "Datensatz aus dem Datahub",
|
|
150
158
|
"facets.block.title.OrgForResource": "Organisation",
|
package/translations/en.json
CHANGED
|
@@ -144,7 +144,15 @@
|
|
|
144
144
|
"downloads.format.unknown": "unknown",
|
|
145
145
|
"downloads.wfs.featuretype.not.found": "The layer was not found",
|
|
146
146
|
"dropFile": "drop file",
|
|
147
|
+
"editor.record.loadError.body": "The record could not be loaded:",
|
|
148
|
+
"editor.record.loadError.closeMessage": "Understood",
|
|
149
|
+
"editor.record.loadError.title": "Error loading record",
|
|
147
150
|
"editor.record.publish": "Publish this record",
|
|
151
|
+
"editor.record.publishError.body": "The record could not be published:",
|
|
152
|
+
"editor.record.publishError.closeMessage": "Understood",
|
|
153
|
+
"editor.record.publishError.title": "Error publishing record",
|
|
154
|
+
"editor.record.publishSuccess.body": "The record was successfully published!",
|
|
155
|
+
"editor.record.publishSuccess.title": "Publish success",
|
|
148
156
|
"editor.record.upToDate": "This record is up to date",
|
|
149
157
|
"externalviewer.dataset.unnamed": "Datahub layer",
|
|
150
158
|
"facets.block.title.OrgForResource": "Organisation",
|
package/translations/es.json
CHANGED
|
@@ -144,7 +144,15 @@
|
|
|
144
144
|
"downloads.format.unknown": "",
|
|
145
145
|
"downloads.wfs.featuretype.not.found": "",
|
|
146
146
|
"dropFile": "",
|
|
147
|
+
"editor.record.loadError.body": "",
|
|
148
|
+
"editor.record.loadError.closeMessage": "",
|
|
149
|
+
"editor.record.loadError.title": "",
|
|
147
150
|
"editor.record.publish": "",
|
|
151
|
+
"editor.record.publishError.body": "",
|
|
152
|
+
"editor.record.publishError.closeMessage": "",
|
|
153
|
+
"editor.record.publishError.title": "",
|
|
154
|
+
"editor.record.publishSuccess.body": "",
|
|
155
|
+
"editor.record.publishSuccess.title": "",
|
|
148
156
|
"editor.record.upToDate": "",
|
|
149
157
|
"externalviewer.dataset.unnamed": "",
|
|
150
158
|
"facets.block.title.OrgForResource": "",
|
package/translations/fr.json
CHANGED
|
@@ -144,7 +144,15 @@
|
|
|
144
144
|
"downloads.format.unknown": "inconnu",
|
|
145
145
|
"downloads.wfs.featuretype.not.found": "La couche n'a pas été retrouvée",
|
|
146
146
|
"dropFile": "Faites glisser votre fichier",
|
|
147
|
+
"editor.record.loadError.body": "",
|
|
148
|
+
"editor.record.loadError.closeMessage": "",
|
|
149
|
+
"editor.record.loadError.title": "",
|
|
147
150
|
"editor.record.publish": "",
|
|
151
|
+
"editor.record.publishError.body": "",
|
|
152
|
+
"editor.record.publishError.closeMessage": "",
|
|
153
|
+
"editor.record.publishError.title": "",
|
|
154
|
+
"editor.record.publishSuccess.body": "",
|
|
155
|
+
"editor.record.publishSuccess.title": "",
|
|
148
156
|
"editor.record.upToDate": "",
|
|
149
157
|
"externalviewer.dataset.unnamed": "Couche du datahub",
|
|
150
158
|
"facets.block.title.OrgForResource": "Organisation",
|
package/translations/it.json
CHANGED
|
@@ -144,7 +144,15 @@
|
|
|
144
144
|
"downloads.format.unknown": "sconosciuto",
|
|
145
145
|
"downloads.wfs.featuretype.not.found": "Il layer non è stato trovato",
|
|
146
146
|
"dropFile": "Trascina il suo file",
|
|
147
|
+
"editor.record.loadError.body": "",
|
|
148
|
+
"editor.record.loadError.closeMessage": "",
|
|
149
|
+
"editor.record.loadError.title": "",
|
|
147
150
|
"editor.record.publish": "",
|
|
151
|
+
"editor.record.publishError.body": "",
|
|
152
|
+
"editor.record.publishError.closeMessage": "",
|
|
153
|
+
"editor.record.publishError.title": "",
|
|
154
|
+
"editor.record.publishSuccess.body": "",
|
|
155
|
+
"editor.record.publishSuccess.title": "",
|
|
148
156
|
"editor.record.upToDate": "",
|
|
149
157
|
"externalviewer.dataset.unnamed": "Layer del datahub",
|
|
150
158
|
"facets.block.title.OrgForResource": "Organizzazione",
|
package/translations/nl.json
CHANGED
|
@@ -144,7 +144,15 @@
|
|
|
144
144
|
"downloads.format.unknown": "",
|
|
145
145
|
"downloads.wfs.featuretype.not.found": "",
|
|
146
146
|
"dropFile": "",
|
|
147
|
+
"editor.record.loadError.body": "",
|
|
148
|
+
"editor.record.loadError.closeMessage": "",
|
|
149
|
+
"editor.record.loadError.title": "",
|
|
147
150
|
"editor.record.publish": "",
|
|
151
|
+
"editor.record.publishError.body": "",
|
|
152
|
+
"editor.record.publishError.closeMessage": "",
|
|
153
|
+
"editor.record.publishError.title": "",
|
|
154
|
+
"editor.record.publishSuccess.body": "",
|
|
155
|
+
"editor.record.publishSuccess.title": "",
|
|
148
156
|
"editor.record.upToDate": "",
|
|
149
157
|
"externalviewer.dataset.unnamed": "",
|
|
150
158
|
"facets.block.title.OrgForResource": "",
|
package/translations/pt.json
CHANGED
|
@@ -144,7 +144,15 @@
|
|
|
144
144
|
"downloads.format.unknown": "",
|
|
145
145
|
"downloads.wfs.featuretype.not.found": "",
|
|
146
146
|
"dropFile": "",
|
|
147
|
+
"editor.record.loadError.body": "",
|
|
148
|
+
"editor.record.loadError.closeMessage": "",
|
|
149
|
+
"editor.record.loadError.title": "",
|
|
147
150
|
"editor.record.publish": "",
|
|
151
|
+
"editor.record.publishError.body": "",
|
|
152
|
+
"editor.record.publishError.closeMessage": "",
|
|
153
|
+
"editor.record.publishError.title": "",
|
|
154
|
+
"editor.record.publishSuccess.body": "",
|
|
155
|
+
"editor.record.publishSuccess.title": "",
|
|
148
156
|
"editor.record.upToDate": "",
|
|
149
157
|
"externalviewer.dataset.unnamed": "",
|
|
150
158
|
"facets.block.title.OrgForResource": "",
|
package/translations/sk.json
CHANGED
|
@@ -144,7 +144,15 @@
|
|
|
144
144
|
"downloads.format.unknown": "neznámy",
|
|
145
145
|
"downloads.wfs.featuretype.not.found": "Vrstva nebola nájdená",
|
|
146
146
|
"dropFile": "nahrať súbor",
|
|
147
|
+
"editor.record.loadError.body": "",
|
|
148
|
+
"editor.record.loadError.closeMessage": "",
|
|
149
|
+
"editor.record.loadError.title": "",
|
|
147
150
|
"editor.record.publish": "",
|
|
151
|
+
"editor.record.publishError.body": "",
|
|
152
|
+
"editor.record.publishError.closeMessage": "",
|
|
153
|
+
"editor.record.publishError.title": "",
|
|
154
|
+
"editor.record.publishSuccess.body": "",
|
|
155
|
+
"editor.record.publishSuccess.title": "",
|
|
148
156
|
"editor.record.upToDate": "",
|
|
149
157
|
"externalviewer.dataset.unnamed": "",
|
|
150
158
|
"facets.block.title.OrgForResource": "Organizácia",
|