@net7/boilerplate-arianna 3.4.2 → 3.5.0
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/esm2020/lib/components/extended-tree/extended-tree.mjs +29 -0
- package/esm2020/lib/components/index.mjs +2 -1
- package/esm2020/lib/config/apollo.config.mjs +31 -3
- package/esm2020/lib/config-types/arianna/layouts.mjs +1 -1
- package/esm2020/lib/data-sources/extended-tree.ds.mjs +136 -0
- package/esm2020/lib/data-sources/index.mjs +2 -1
- package/esm2020/lib/data-sources/tree.ds.mjs +1 -1
- package/esm2020/lib/event-handlers/extended-tree.eh.mjs +15 -0
- package/esm2020/lib/event-handlers/index.mjs +2 -1
- package/esm2020/lib/event-handlers/tree.eh.mjs +7 -1
- package/esm2020/lib/helpers/node.helper.mjs +14 -0
- package/esm2020/lib/layouts/scheda-layout/scheda-layout.config.mjs +2 -1
- package/esm2020/lib/layouts/scheda-layout/scheda-layout.ds.mjs +120 -5
- package/esm2020/lib/layouts/scheda-layout/scheda-layout.eh.mjs +113 -6
- package/esm2020/lib/layouts/scheda-layout/scheda-layout.mjs +5 -4
- package/esm2020/lib/n7-boilerplate-arianna.module.mjs +7 -3
- package/fesm2015/net7-boilerplate-arianna.mjs +455 -15
- package/fesm2015/net7-boilerplate-arianna.mjs.map +1 -1
- package/fesm2020/net7-boilerplate-arianna.mjs +462 -15
- package/fesm2020/net7-boilerplate-arianna.mjs.map +1 -1
- package/lib/components/extended-tree/extended-tree.d.ts +24 -0
- package/lib/components/index.d.ts +1 -0
- package/lib/config/apollo.config.d.ts +4 -0
- package/lib/config-types/arianna/layouts.d.ts +15 -0
- package/lib/data-sources/extended-tree.ds.d.ts +25 -0
- package/lib/data-sources/index.d.ts +1 -0
- package/lib/event-handlers/extended-tree.eh.d.ts +6 -0
- package/lib/event-handlers/index.d.ts +1 -0
- package/lib/event-handlers/tree.eh.d.ts +2 -0
- package/lib/helpers/node.helper.d.ts +8 -0
- package/lib/layouts/scheda-layout/scheda-layout.ds.d.ts +30 -1
- package/lib/layouts/scheda-layout/scheda-layout.eh.d.ts +9 -0
- package/lib/n7-boilerplate-arianna.module.d.ts +7 -6
- package/package.json +1 -1
- package/src/lib/styles/arianna/components/_extended-tree.scss +115 -0
- package/src/lib/styles/arianna/layouts/_scheda-layout.scss +87 -12
|
@@ -11,10 +11,10 @@ import { helpers, AbstractLayout, SmartPaginationDS, SmartPaginationEH, N7Boiler
|
|
|
11
11
|
import * as i2 from 'ngx-extended-pdf-viewer';
|
|
12
12
|
import { NgxExtendedPdfViewerModule } from 'ngx-extended-pdf-viewer';
|
|
13
13
|
import { DataSource, EventHandler, LayoutDataSource } from '@net7/core';
|
|
14
|
-
import { get, merge, max, min, isEmpty, cloneDeep, isNull } from 'lodash';
|
|
14
|
+
import { get, merge, max, min, isEmpty, cloneDeep, clone, isNumber, isNull } from 'lodash';
|
|
15
15
|
import tippy from 'tippy.js';
|
|
16
|
-
import { interval, Subject, merge as merge$1, fromEvent, ReplaySubject, BehaviorSubject, of, forkJoin, from } from 'rxjs';
|
|
17
|
-
import { filter, first, mapTo, debounceTime, switchMap, withLatestFrom, map, catchError, tap, takeUntil } from 'rxjs/operators';
|
|
16
|
+
import { interval, Subject, merge as merge$1, fromEvent, ReplaySubject, BehaviorSubject, of, forkJoin, timer, from } from 'rxjs';
|
|
17
|
+
import { filter, first, mapTo, debounceTime, switchMap, withLatestFrom, map, catchError, tap, takeUntil, debounce } from 'rxjs/operators';
|
|
18
18
|
import * as Leaflet from 'leaflet';
|
|
19
19
|
import dayjs from 'dayjs';
|
|
20
20
|
import slugify from 'slugify';
|
|
@@ -1259,6 +1259,153 @@ class AwTreeDS extends DataSource {
|
|
|
1259
1259
|
}
|
|
1260
1260
|
AwTreeDS.dataCache = {};
|
|
1261
1261
|
|
|
1262
|
+
const getNodeIcon = (configKeys, item) => {
|
|
1263
|
+
const { document_type: type, document_classification: classification } = item;
|
|
1264
|
+
let icon = configKeys[type] ? configKeys[type].icon : null;
|
|
1265
|
+
const lastSegment = /.*\.(\w+)$/;
|
|
1266
|
+
if (classification && lastSegment.test(classification)) {
|
|
1267
|
+
const classID = classification
|
|
1268
|
+
.match(lastSegment)[1] // get classification characters
|
|
1269
|
+
.toUpperCase(); // normalize
|
|
1270
|
+
icon = configKeys[type].classifications[classID].icon;
|
|
1271
|
+
}
|
|
1272
|
+
return icon;
|
|
1273
|
+
};
|
|
1274
|
+
var nodeHelper = { getNodeIcon };
|
|
1275
|
+
|
|
1276
|
+
const PAGE_LIMIT = 5;
|
|
1277
|
+
class AwExtendedTreeDS extends DataSource {
|
|
1278
|
+
constructor() {
|
|
1279
|
+
super(...arguments);
|
|
1280
|
+
this.transform = ({ parent, nodes }) => {
|
|
1281
|
+
const { totalCount } = nodes;
|
|
1282
|
+
const { title, params, basePath, lite, configKeys } = this.options;
|
|
1283
|
+
const page = params.page ? +params.page : 1;
|
|
1284
|
+
const limit = params.limit ? +params.limit : 10;
|
|
1285
|
+
// header
|
|
1286
|
+
const header = {
|
|
1287
|
+
title: {
|
|
1288
|
+
main: {
|
|
1289
|
+
text: `${title} <span class="aw-extended-tree__total">(${totalCount})</span>`,
|
|
1290
|
+
},
|
|
1291
|
+
secondary: {
|
|
1292
|
+
text: `In: "${parent.label}"`
|
|
1293
|
+
}
|
|
1294
|
+
},
|
|
1295
|
+
actions: {
|
|
1296
|
+
search: {
|
|
1297
|
+
placeholder: 'Cerca negli oggetti culturali',
|
|
1298
|
+
payload: 'search-input',
|
|
1299
|
+
button: null
|
|
1300
|
+
},
|
|
1301
|
+
}
|
|
1302
|
+
};
|
|
1303
|
+
// items
|
|
1304
|
+
const items = (nodes.items || []).map((item) => ({
|
|
1305
|
+
icon: nodeHelper.getNodeIcon(configKeys, item),
|
|
1306
|
+
thumbnail: lite ? null : item.img,
|
|
1307
|
+
label: item.label,
|
|
1308
|
+
anchor: {
|
|
1309
|
+
href: `${basePath}/${item.id}/${helpers.slugify(item.label)}`
|
|
1310
|
+
}
|
|
1311
|
+
}));
|
|
1312
|
+
// pagination
|
|
1313
|
+
const pagination = this.getPagination(page, totalCount, limit);
|
|
1314
|
+
// page input
|
|
1315
|
+
const pageInput = {
|
|
1316
|
+
id: 'page-input',
|
|
1317
|
+
type: 'number',
|
|
1318
|
+
// value: page,
|
|
1319
|
+
placeholder: 'pag',
|
|
1320
|
+
inputPayload: 'page-input-change',
|
|
1321
|
+
enterPayload: 'page-input-enter',
|
|
1322
|
+
};
|
|
1323
|
+
// results limit select
|
|
1324
|
+
const limitSelect = {
|
|
1325
|
+
id: 'limit-select',
|
|
1326
|
+
label: 'Numero di risultati',
|
|
1327
|
+
options: [10, 25, 50].map((size) => ({
|
|
1328
|
+
label: `${size}`,
|
|
1329
|
+
value: size,
|
|
1330
|
+
selected: size === limit
|
|
1331
|
+
})),
|
|
1332
|
+
payload: 'limit-select',
|
|
1333
|
+
};
|
|
1334
|
+
return {
|
|
1335
|
+
header,
|
|
1336
|
+
items,
|
|
1337
|
+
pagination,
|
|
1338
|
+
pageInput,
|
|
1339
|
+
limitSelect,
|
|
1340
|
+
loading: false,
|
|
1341
|
+
};
|
|
1342
|
+
};
|
|
1343
|
+
}
|
|
1344
|
+
setLoading(loading) {
|
|
1345
|
+
this.output.loading = loading;
|
|
1346
|
+
}
|
|
1347
|
+
getPagination(page, totalCount, limit) {
|
|
1348
|
+
const pages = Math.ceil(totalCount / limit);
|
|
1349
|
+
return {
|
|
1350
|
+
links: this.getPaginationLinks(page, pages),
|
|
1351
|
+
first: {
|
|
1352
|
+
anchor: {
|
|
1353
|
+
payload: 1,
|
|
1354
|
+
},
|
|
1355
|
+
classes: page === 1 ? 'is-disabled' : '',
|
|
1356
|
+
},
|
|
1357
|
+
prev: {
|
|
1358
|
+
anchor: {
|
|
1359
|
+
payload: page === 1 ? 1 : page - 1,
|
|
1360
|
+
},
|
|
1361
|
+
classes: page === 1 ? 'is-disabled' : ''
|
|
1362
|
+
},
|
|
1363
|
+
next: {
|
|
1364
|
+
anchor: {
|
|
1365
|
+
payload: page === pages ? pages : page + 1,
|
|
1366
|
+
},
|
|
1367
|
+
classes: page === pages ? 'is-disabled' : '',
|
|
1368
|
+
},
|
|
1369
|
+
last: {
|
|
1370
|
+
anchor: {
|
|
1371
|
+
payload: pages,
|
|
1372
|
+
},
|
|
1373
|
+
classes: page === pages ? 'is-disabled' : '',
|
|
1374
|
+
}
|
|
1375
|
+
};
|
|
1376
|
+
}
|
|
1377
|
+
getPaginationLinks(page, pages) {
|
|
1378
|
+
let firstItem = 1;
|
|
1379
|
+
const links = [];
|
|
1380
|
+
const limit = PAGE_LIMIT;
|
|
1381
|
+
let last = limit;
|
|
1382
|
+
if (pages > limit) {
|
|
1383
|
+
const steps = Math.floor(limit / 2);
|
|
1384
|
+
if (page > steps) {
|
|
1385
|
+
firstItem = page - steps;
|
|
1386
|
+
}
|
|
1387
|
+
if ((page + steps) > pages) {
|
|
1388
|
+
firstItem = (pages - limit) + 1;
|
|
1389
|
+
}
|
|
1390
|
+
}
|
|
1391
|
+
else {
|
|
1392
|
+
last = pages;
|
|
1393
|
+
}
|
|
1394
|
+
let i;
|
|
1395
|
+
for (i = 0; i < last; i += 1) {
|
|
1396
|
+
const itemPage = firstItem + i;
|
|
1397
|
+
links.push({
|
|
1398
|
+
text: itemPage,
|
|
1399
|
+
classes: itemPage === page ? 'is-disabled' : '',
|
|
1400
|
+
anchor: {
|
|
1401
|
+
payload: itemPage,
|
|
1402
|
+
}
|
|
1403
|
+
});
|
|
1404
|
+
}
|
|
1405
|
+
return links;
|
|
1406
|
+
}
|
|
1407
|
+
}
|
|
1408
|
+
|
|
1262
1409
|
class AwSearchLayoutTabsDS extends DataSource {
|
|
1263
1410
|
constructor() {
|
|
1264
1411
|
super(...arguments);
|
|
@@ -1885,6 +2032,7 @@ var DS = /*#__PURE__*/Object.freeze({
|
|
|
1885
2032
|
AwSchedaMetadataDS: AwSchedaMetadataDS,
|
|
1886
2033
|
AwSchedaPdfDS: AwSchedaPdfDS,
|
|
1887
2034
|
AwTreeDS: AwTreeDS,
|
|
2035
|
+
AwExtendedTreeDS: AwExtendedTreeDS,
|
|
1888
2036
|
AwSearchLayoutTabsDS: AwSearchLayoutTabsDS,
|
|
1889
2037
|
AwFacetsWrapperDS: AwFacetsWrapperDS,
|
|
1890
2038
|
AwGalleryResultsDS: AwGalleryResultsDS,
|
|
@@ -2220,6 +2368,12 @@ class AwTreeEH extends EventHandler {
|
|
|
2220
2368
|
this.targetOffset.next(targetRect.top);
|
|
2221
2369
|
}
|
|
2222
2370
|
break;
|
|
2371
|
+
case 'aw-scheda-layout.selectParent':
|
|
2372
|
+
this.dataSource.build(payload);
|
|
2373
|
+
this.dataSource.setActive(payload);
|
|
2374
|
+
this.dataSource.highlightActive();
|
|
2375
|
+
this.scrollLeafIntoView();
|
|
2376
|
+
break;
|
|
2223
2377
|
default:
|
|
2224
2378
|
break;
|
|
2225
2379
|
}
|
|
@@ -2256,6 +2410,20 @@ class AwSchedaPdfEH extends EventHandler {
|
|
|
2256
2410
|
}
|
|
2257
2411
|
}
|
|
2258
2412
|
|
|
2413
|
+
class AwExtendedTreeEH extends EventHandler {
|
|
2414
|
+
listen() {
|
|
2415
|
+
this.innerEvents$.subscribe(({ type, payload }) => {
|
|
2416
|
+
// redirect event
|
|
2417
|
+
this.emitOuter(type.split('.')[1], payload);
|
|
2418
|
+
});
|
|
2419
|
+
this.outerEvents$.subscribe(({ type }) => {
|
|
2420
|
+
if (type === 'aw-scheda-layout.extendedtreerequest') {
|
|
2421
|
+
this.dataSource.setLoading(true);
|
|
2422
|
+
}
|
|
2423
|
+
});
|
|
2424
|
+
}
|
|
2425
|
+
}
|
|
2426
|
+
|
|
2259
2427
|
class AwSearchLayoutTabsEH extends EventHandler {
|
|
2260
2428
|
listen() {
|
|
2261
2429
|
// TODO
|
|
@@ -2714,6 +2882,7 @@ var EH = /*#__PURE__*/Object.freeze({
|
|
|
2714
2882
|
AwTreeEH: AwTreeEH,
|
|
2715
2883
|
AwSchedaDropdownEH: AwSchedaDropdownEH,
|
|
2716
2884
|
AwSchedaPdfEH: AwSchedaPdfEH,
|
|
2885
|
+
AwExtendedTreeEH: AwExtendedTreeEH,
|
|
2717
2886
|
AwSearchLayoutTabsEH: AwSearchLayoutTabsEH,
|
|
2718
2887
|
AwFacetsWrapperEH: AwFacetsWrapperEH,
|
|
2719
2888
|
AwGalleryResultsEH: AwGalleryResultsEH,
|
|
@@ -5892,6 +6061,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
|
|
|
5892
6061
|
args: [{ selector: 'aw-map-layout', template: "<div class=\"aw-multimedia\" id=\"map-layout\" *ngIf=\"lb.dataSource\">\n <n7-inner-title [data]=\"{\n title: {\n main: {\n text: 'I luoghi dell\\'archivio'\n }\n }\n }\">\n </n7-inner-title>\n\n <!-- Map -->\n <div class=\"aw-multimedia__map\">\n <n7-map [data]=\"lb.widgets['aw-map'].ds.out$ | async\"></n7-map>\n </div>\n <!-- END // Map -->\n\n <!-- RESULTS -->\n <div class=\"aw-multimedia__results\">\n <div class=\"aw-multimedia__loader\" *ngIf=\"(lb.dataSource.state$ | async) === 'LOADING'\">\n <ng-container>\n <n7-loader></n7-loader>\n </ng-container>\n </div>\n\n <div class=\"aw-multimedia__empty\" *ngIf=\"(lb.dataSource.state$ | async) === 'EMPTY'\">\n <ng-container>\n <p class=\"aw-multimedia__empty-text\">Clicca su un luogo della mappa per vedere tutti gli oggetti collegati.</p>\n </ng-container>\n </div>\n \n <ng-container *ngIf=\"(lb.dataSource.state$ | async) === 'SUCCESS'\">\n <div class=\"aw-multimedia__results-title\">\n <n7-inner-title \n [data]=\"lb.widgets['aw-scheda-inner-title'].ds.out$ | async\">\n </n7-inner-title>\n </div>\n <div class=\"aw-multimedia__results-wrapper\">\n <div>\n <div class=\"aw-item-preview-wrapper\" *ngFor=\"let preview of (lb.widgets['aw-linked-objects'].ds.out$ | async)?.previews\">\n <n7-smart-breadcrumbs \n [data]=\"preview.breadcrumbs\">\n </n7-smart-breadcrumbs>\n <n7-item-preview \n [data]=\"preview\" \n [emit]=\"lb.widgets['aw-linked-objects'].emit\">\n </n7-item-preview>\n </div>\n </div>\n <n7-smart-pagination *ngIf=\"lb.dataSource.total > 0\"\n [data]=\"lb.widgets['n7-smart-pagination'].ds.out$ | async\"\n [emit]=\"lb.widgets['n7-smart-pagination'].emit\">\n </n7-smart-pagination>\n </div>\n </ng-container>\n </div>\n</div>" }]
|
|
5893
6062
|
}], ctorParameters: function () { return [{ type: i1.ConfigurationService }, { type: i1.LayoutsConfigurationService }, { type: i1.CommunicationService }, { type: i1.MainStateService }, { type: i3$1.Title }]; } });
|
|
5894
6063
|
|
|
6064
|
+
const LOCAL_STORAGE_PREFIX = 'aw.scheda';
|
|
5895
6065
|
class AwSchedaLayoutDS extends LayoutDataSource {
|
|
5896
6066
|
constructor() {
|
|
5897
6067
|
super(...arguments);
|
|
@@ -5904,8 +6074,17 @@ class AwSchedaLayoutDS extends LayoutDataSource {
|
|
|
5904
6074
|
this.currentId = null;
|
|
5905
6075
|
/** Switch loaded-content and loaded-empty states */
|
|
5906
6076
|
this.hasContent = true;
|
|
6077
|
+
this.extendedTreeParams = {};
|
|
5907
6078
|
/** Name of query that should be used (chosen in config) */
|
|
5908
6079
|
this.getTreeQuery = 'getTree';
|
|
6080
|
+
this.titleNavigation = null;
|
|
6081
|
+
this.sectionCollapseState = {
|
|
6082
|
+
metadata: false,
|
|
6083
|
+
'extended-tree': false,
|
|
6084
|
+
'similar-items': false,
|
|
6085
|
+
'related-entities': false
|
|
6086
|
+
};
|
|
6087
|
+
this.documentType = null;
|
|
5909
6088
|
this.getTree = () => AwSchedaLayoutDS.tree;
|
|
5910
6089
|
}
|
|
5911
6090
|
onInit({ configuration, mainState, router, options, titleService, communication, }) {
|
|
@@ -5944,6 +6123,12 @@ class AwSchedaLayoutDS extends LayoutDataSource {
|
|
|
5944
6123
|
this.hasContextMenu = () => !!imageViewerConfig['context-menu'];
|
|
5945
6124
|
// pdf viewer options
|
|
5946
6125
|
this.one('aw-scheda-pdf').updateOptions(this.configuration.get('scheda-layout')['pdf-viewer'] || {});
|
|
6126
|
+
// check section collapse state
|
|
6127
|
+
Object.keys(this.sectionCollapseState).forEach((key) => {
|
|
6128
|
+
const storageKey = `${LOCAL_STORAGE_PREFIX}.${key}`;
|
|
6129
|
+
const storageValue = localStorage.getItem(storageKey);
|
|
6130
|
+
this.sectionCollapseState[key] = storageValue ? JSON.parse(storageValue) : false;
|
|
6131
|
+
});
|
|
5947
6132
|
// sidebar sticky control
|
|
5948
6133
|
this._sidebarStickyControl();
|
|
5949
6134
|
}
|
|
@@ -5955,13 +6140,15 @@ class AwSchedaLayoutDS extends LayoutDataSource {
|
|
|
5955
6140
|
const metadataConfig = layoutConfig.metadata || {};
|
|
5956
6141
|
return metadataConfig.title || null;
|
|
5957
6142
|
}
|
|
5958
|
-
getNavigation(
|
|
6143
|
+
getNavigation() {
|
|
5959
6144
|
if (AwSchedaLayoutDS.tree) {
|
|
5960
6145
|
return of(AwSchedaLayoutDS.tree);
|
|
5961
6146
|
}
|
|
5962
6147
|
return this.communication.request$(this.getTreeQuery, {
|
|
5963
6148
|
onError: (error) => console.error(error),
|
|
5964
|
-
params: {
|
|
6149
|
+
params: {
|
|
6150
|
+
onlyAl: !!this.layoutConfig['extended-tree']
|
|
6151
|
+
},
|
|
5965
6152
|
});
|
|
5966
6153
|
}
|
|
5967
6154
|
setTree(tree) {
|
|
@@ -5982,13 +6169,16 @@ class AwSchedaLayoutDS extends LayoutDataSource {
|
|
|
5982
6169
|
* @param response http response for the tree item
|
|
5983
6170
|
*/
|
|
5984
6171
|
loadContent(response) {
|
|
6172
|
+
this.lastResponse = response;
|
|
5985
6173
|
if (response) {
|
|
5986
6174
|
// reset
|
|
5987
6175
|
this.currentDigitalObject = null;
|
|
5988
6176
|
this.currentDigitalObjectIndex = null;
|
|
5989
6177
|
const metadataFields = this.getFields(response);
|
|
5990
6178
|
this.hasMetadata = !!(Array.isArray(metadataFields) && metadataFields.length);
|
|
5991
|
-
this.hasSimilarItems =
|
|
6179
|
+
this.hasSimilarItems = (!this.layoutConfig['extended-tree']
|
|
6180
|
+
&& Array.isArray(response.relatedItems)
|
|
6181
|
+
&& response.relatedItems.length);
|
|
5992
6182
|
this.hasBreadcrumb = Array.isArray(response.breadcrumbs) && response.breadcrumbs.length;
|
|
5993
6183
|
this.hasDigitalObjects = (Array.isArray(response.digitalObjects)
|
|
5994
6184
|
&& response.digitalObjects.length);
|
|
@@ -6044,6 +6234,10 @@ class AwSchedaLayoutDS extends LayoutDataSource {
|
|
|
6044
6234
|
});
|
|
6045
6235
|
this.one('aw-scheda-breadcrumbs').update(breadcrumbs);
|
|
6046
6236
|
}
|
|
6237
|
+
// title prev / next navigation
|
|
6238
|
+
this.loadTitleNavigation();
|
|
6239
|
+
// document title type (icon, label)
|
|
6240
|
+
this.loadDocumentType();
|
|
6047
6241
|
// update head title
|
|
6048
6242
|
this.mainState.update('headTitle', `Arianna4View - Patrimonio - ${response.title || response.label}`);
|
|
6049
6243
|
}
|
|
@@ -6068,6 +6262,89 @@ class AwSchedaLayoutDS extends LayoutDataSource {
|
|
|
6068
6262
|
this.stickyControlTrigger$.next();
|
|
6069
6263
|
});
|
|
6070
6264
|
}
|
|
6265
|
+
loadExtendedTree() {
|
|
6266
|
+
const parentResponse = this.lastResponse;
|
|
6267
|
+
if (this.layoutConfig['extended-tree']) {
|
|
6268
|
+
const configKeys = this.configuration.get('config-keys');
|
|
6269
|
+
const widgetOptions = this.layoutConfig['extended-tree'];
|
|
6270
|
+
const params = {
|
|
6271
|
+
id: parentResponse.id,
|
|
6272
|
+
page: 1,
|
|
6273
|
+
limit: 10,
|
|
6274
|
+
query: null,
|
|
6275
|
+
...this.extendedTreeParams,
|
|
6276
|
+
};
|
|
6277
|
+
const widgetParams = clone(params);
|
|
6278
|
+
// normalize params
|
|
6279
|
+
params.offset = (params.page - 1) * params.limit;
|
|
6280
|
+
delete params.page;
|
|
6281
|
+
const basePath = this.configuration.get('paths').schedaBasePath;
|
|
6282
|
+
const request$ = this.communication.request$('getNodeChildren', {
|
|
6283
|
+
params,
|
|
6284
|
+
onError: (error) => console.error(error),
|
|
6285
|
+
});
|
|
6286
|
+
request$.subscribe((nodesResponse) => {
|
|
6287
|
+
this.hasExtendedTree = (params.query
|
|
6288
|
+
|| widgetParams.page > 1
|
|
6289
|
+
|| !!nodesResponse?.items?.length);
|
|
6290
|
+
if (this.hasExtendedTree) {
|
|
6291
|
+
this.one('aw-extended-tree').updateOptions({
|
|
6292
|
+
basePath,
|
|
6293
|
+
configKeys,
|
|
6294
|
+
params: widgetParams,
|
|
6295
|
+
...widgetOptions,
|
|
6296
|
+
});
|
|
6297
|
+
this.one('aw-extended-tree').update({
|
|
6298
|
+
parent: parentResponse,
|
|
6299
|
+
nodes: nodesResponse
|
|
6300
|
+
});
|
|
6301
|
+
// fix query input update
|
|
6302
|
+
if (params.query) {
|
|
6303
|
+
setTimeout(() => {
|
|
6304
|
+
const queryInput = document
|
|
6305
|
+
.querySelector('.aw-extended-tree__header .n7-inner-title__search-bar');
|
|
6306
|
+
queryInput.value = params.query || '';
|
|
6307
|
+
});
|
|
6308
|
+
}
|
|
6309
|
+
}
|
|
6310
|
+
});
|
|
6311
|
+
}
|
|
6312
|
+
else {
|
|
6313
|
+
this.hasExtendedTree = false;
|
|
6314
|
+
}
|
|
6315
|
+
}
|
|
6316
|
+
loadTitleNavigation() {
|
|
6317
|
+
// reset
|
|
6318
|
+
this.titleNavigation = null;
|
|
6319
|
+
const hasTitleNav = (!!this.layoutConfig['title-nav']?.enabled
|
|
6320
|
+
&& this.lastResponse.document_type === 'oggetto-culturale');
|
|
6321
|
+
if (!hasTitleNav)
|
|
6322
|
+
return;
|
|
6323
|
+
this.titleNavigation = { prev: null, next: null };
|
|
6324
|
+
const basePath = this.configuration.get('paths').schedaBasePath;
|
|
6325
|
+
['prev', 'next'].forEach((key) => {
|
|
6326
|
+
const item = this.lastResponse[key];
|
|
6327
|
+
this.titleNavigation[key] = item
|
|
6328
|
+
? {
|
|
6329
|
+
href: `${basePath}/${item.id}/${helpers.slugify(item.label)}`,
|
|
6330
|
+
label: item.label,
|
|
6331
|
+
} : null;
|
|
6332
|
+
});
|
|
6333
|
+
}
|
|
6334
|
+
loadDocumentType() {
|
|
6335
|
+
const configKeys = this.configuration.get('config-keys');
|
|
6336
|
+
const { document_type: type } = this.lastResponse;
|
|
6337
|
+
const icon = nodeHelper.getNodeIcon(configKeys, this.lastResponse);
|
|
6338
|
+
if (configKeys[type]) {
|
|
6339
|
+
this.documentType = {
|
|
6340
|
+
icon,
|
|
6341
|
+
label: configKeys[type]['singular-label']
|
|
6342
|
+
};
|
|
6343
|
+
}
|
|
6344
|
+
else {
|
|
6345
|
+
this.documentType = null;
|
|
6346
|
+
}
|
|
6347
|
+
}
|
|
6071
6348
|
/**
|
|
6072
6349
|
* Toggle between the tree's collapsed or expanded state.
|
|
6073
6350
|
*/
|
|
@@ -6077,6 +6354,12 @@ class AwSchedaLayoutDS extends LayoutDataSource {
|
|
|
6077
6354
|
this.sidebarCollapsed = !this.sidebarCollapsed;
|
|
6078
6355
|
this.getWidgetDataSource('aw-sidebar-header').toggleSidebar();
|
|
6079
6356
|
}
|
|
6357
|
+
onSectionCollapse(id) {
|
|
6358
|
+
this.sectionCollapseState[id] = !this.sectionCollapseState[id];
|
|
6359
|
+
// update storage
|
|
6360
|
+
const storageKey = `${LOCAL_STORAGE_PREFIX}.${id}`;
|
|
6361
|
+
localStorage.setItem(storageKey, this.sectionCollapseState[id]);
|
|
6362
|
+
}
|
|
6080
6363
|
_sidebarStickyControl() {
|
|
6081
6364
|
// no sticky for Internet Explorer
|
|
6082
6365
|
if (helpers.browserIsIE()) {
|
|
@@ -6172,6 +6455,8 @@ class AwSchedaLayoutEH extends EventHandler {
|
|
|
6172
6455
|
constructor() {
|
|
6173
6456
|
super(...arguments);
|
|
6174
6457
|
this.destroyed$ = new Subject();
|
|
6458
|
+
this.treeLoaded$ = new ReplaySubject();
|
|
6459
|
+
this.extendedTreeChanged$ = new Subject();
|
|
6175
6460
|
}
|
|
6176
6461
|
listen() {
|
|
6177
6462
|
this.innerEvents$.subscribe(({ type, payload }) => {
|
|
@@ -6181,11 +6466,14 @@ class AwSchedaLayoutEH extends EventHandler {
|
|
|
6181
6466
|
this.dataSource.onInit(payload);
|
|
6182
6467
|
this.configuration = payload.configuration;
|
|
6183
6468
|
this.route = payload.route;
|
|
6469
|
+
this.router = payload.router;
|
|
6184
6470
|
const paramId = this.route.snapshot.params.id || '';
|
|
6185
6471
|
if (paramId) {
|
|
6186
6472
|
this.dataSource.currentId = paramId;
|
|
6187
6473
|
}
|
|
6188
6474
|
this.listenRoute();
|
|
6475
|
+
this.listenRouteQueryParams();
|
|
6476
|
+
this.listenExtendedTree();
|
|
6189
6477
|
this.loadNavigation(paramId);
|
|
6190
6478
|
this.emitOuter('viewleaf');
|
|
6191
6479
|
// scroll top
|
|
@@ -6212,6 +6500,52 @@ class AwSchedaLayoutEH extends EventHandler {
|
|
|
6212
6500
|
case 'aw-scheda-dropdown.click':
|
|
6213
6501
|
this.dataSource.changeDigitalObject(payload);
|
|
6214
6502
|
break;
|
|
6503
|
+
case 'aw-extended-tree.change':
|
|
6504
|
+
{
|
|
6505
|
+
let key;
|
|
6506
|
+
let delay;
|
|
6507
|
+
if (payload.inputPayload === 'search-input') {
|
|
6508
|
+
key = 'query';
|
|
6509
|
+
delay = 1000;
|
|
6510
|
+
}
|
|
6511
|
+
else if (payload.inputPayload === 'limit-select') {
|
|
6512
|
+
key = 'limit';
|
|
6513
|
+
}
|
|
6514
|
+
else if (payload.inputPayload === 'page-input-change') {
|
|
6515
|
+
this.pageInputValue = payload.value;
|
|
6516
|
+
}
|
|
6517
|
+
else if (payload.inputPayload === 'page-input-enter') {
|
|
6518
|
+
key = 'page';
|
|
6519
|
+
}
|
|
6520
|
+
if (key) {
|
|
6521
|
+
this.extendedTreeChanged$.next({
|
|
6522
|
+
key,
|
|
6523
|
+
delay,
|
|
6524
|
+
value: payload.value,
|
|
6525
|
+
});
|
|
6526
|
+
}
|
|
6527
|
+
}
|
|
6528
|
+
break;
|
|
6529
|
+
case 'aw-extended-tree.search':
|
|
6530
|
+
this.extendedTreeChanged$.next({
|
|
6531
|
+
key: 'query',
|
|
6532
|
+
value: payload.value
|
|
6533
|
+
});
|
|
6534
|
+
break;
|
|
6535
|
+
case 'aw-extended-tree.click':
|
|
6536
|
+
this.extendedTreeChanged$.next({
|
|
6537
|
+
key: 'page',
|
|
6538
|
+
value: payload
|
|
6539
|
+
});
|
|
6540
|
+
break;
|
|
6541
|
+
case 'aw-extended-tree.pageinputsubmit':
|
|
6542
|
+
if (isNumber(this.pageInputValue)) {
|
|
6543
|
+
this.extendedTreeChanged$.next({
|
|
6544
|
+
key: 'page',
|
|
6545
|
+
value: this.pageInputValue
|
|
6546
|
+
});
|
|
6547
|
+
}
|
|
6548
|
+
break;
|
|
6215
6549
|
default:
|
|
6216
6550
|
break;
|
|
6217
6551
|
}
|
|
@@ -6228,17 +6562,62 @@ class AwSchedaLayoutEH extends EventHandler {
|
|
|
6228
6562
|
this.dataSource.contentIsLoading = true;
|
|
6229
6563
|
this.dataSource.loadItem(paramId).pipe(switchMap((response) => this.parseDigitalObjects$(response))).subscribe((response) => {
|
|
6230
6564
|
this.dataSource.contentIsLoading = false;
|
|
6231
|
-
if (response)
|
|
6565
|
+
if (response) {
|
|
6232
6566
|
this.dataSource.loadContent(response);
|
|
6567
|
+
this.dataSource.loadExtendedTree();
|
|
6568
|
+
this.checkTreeItems(response);
|
|
6569
|
+
}
|
|
6233
6570
|
});
|
|
6234
6571
|
}
|
|
6235
6572
|
// scroll top
|
|
6236
6573
|
window.scrollTo(0, 0);
|
|
6237
6574
|
});
|
|
6238
6575
|
}
|
|
6576
|
+
listenExtendedTree() {
|
|
6577
|
+
this.extendedTreeChanged$.pipe(filter(({ key, value }) => !(key === 'page' && (!isNumber(+value) || +value < 1))), debounce(({ delay }) => timer(delay || 1))).subscribe(({ key, value }) => {
|
|
6578
|
+
const queryParams = {};
|
|
6579
|
+
if (typeof value === 'string') {
|
|
6580
|
+
queryParams[key] = value.trim().length ? value : null;
|
|
6581
|
+
}
|
|
6582
|
+
else {
|
|
6583
|
+
queryParams[key] = `${value}`;
|
|
6584
|
+
}
|
|
6585
|
+
// page check
|
|
6586
|
+
if (key !== 'page') {
|
|
6587
|
+
queryParams.page = '1';
|
|
6588
|
+
}
|
|
6589
|
+
// reset pageInput value
|
|
6590
|
+
this.pageInputValue = null;
|
|
6591
|
+
// update url
|
|
6592
|
+
this.router.navigate([], {
|
|
6593
|
+
queryParams,
|
|
6594
|
+
queryParamsHandling: 'merge'
|
|
6595
|
+
});
|
|
6596
|
+
});
|
|
6597
|
+
}
|
|
6598
|
+
listenRouteQueryParams() {
|
|
6599
|
+
this.route.queryParams.subscribe((params) => {
|
|
6600
|
+
const extendedTreeParams = clone(params);
|
|
6601
|
+
// force numeric
|
|
6602
|
+
['page', 'limit'].forEach((key) => {
|
|
6603
|
+
if (params[key] && isNumber(+params[key])) {
|
|
6604
|
+
extendedTreeParams[key] = +params[key];
|
|
6605
|
+
}
|
|
6606
|
+
else {
|
|
6607
|
+
delete extendedTreeParams[key];
|
|
6608
|
+
}
|
|
6609
|
+
});
|
|
6610
|
+
this.dataSource.extendedTreeParams = extendedTreeParams;
|
|
6611
|
+
// has node response
|
|
6612
|
+
if (this.dataSource.lastResponse) {
|
|
6613
|
+
this.emitOuter('extendedtreerequest');
|
|
6614
|
+
this.dataSource.loadExtendedTree();
|
|
6615
|
+
}
|
|
6616
|
+
});
|
|
6617
|
+
}
|
|
6239
6618
|
loadNavigation(selectedItem) {
|
|
6240
6619
|
this.dataSource.updateNavigation('Caricamento in corso...');
|
|
6241
|
-
this.dataSource.getNavigation(
|
|
6620
|
+
this.dataSource.getNavigation().subscribe((response) => {
|
|
6242
6621
|
if (response) {
|
|
6243
6622
|
this.dataSource.setTree(response);
|
|
6244
6623
|
this.dataSource.updateNavigation(this.dataSource.getTree().label);
|
|
@@ -6247,6 +6626,8 @@ class AwSchedaLayoutEH extends EventHandler {
|
|
|
6247
6626
|
currentItem: selectedItem,
|
|
6248
6627
|
basePath: this.configuration.get('paths').schedaBasePath,
|
|
6249
6628
|
});
|
|
6629
|
+
// emit signal
|
|
6630
|
+
this.treeLoaded$.next();
|
|
6250
6631
|
}
|
|
6251
6632
|
});
|
|
6252
6633
|
}
|
|
@@ -6312,6 +6693,15 @@ class AwSchedaLayoutEH extends EventHandler {
|
|
|
6312
6693
|
}
|
|
6313
6694
|
return iiifImages;
|
|
6314
6695
|
}
|
|
6696
|
+
checkTreeItems(response) {
|
|
6697
|
+
this.treeLoaded$.pipe(first()).subscribe(() => {
|
|
6698
|
+
const treeDS = this.dataSource.getWidgetDataSource('aw-tree');
|
|
6699
|
+
const { items } = treeDS.output;
|
|
6700
|
+
if (!items.length && response.lastAl?.id) {
|
|
6701
|
+
this.emitOuter('selectParent', response.lastAl.id);
|
|
6702
|
+
}
|
|
6703
|
+
});
|
|
6704
|
+
}
|
|
6315
6705
|
}
|
|
6316
6706
|
|
|
6317
6707
|
const AwPatrimonioLayoutConfig = {
|
|
@@ -6332,6 +6722,7 @@ const AwPatrimonioLayoutConfig = {
|
|
|
6332
6722
|
{ id: 'aw-related-entities' },
|
|
6333
6723
|
{ id: 'aw-chart-tippy' },
|
|
6334
6724
|
{ id: 'aw-linked-objects' },
|
|
6725
|
+
{ id: 'aw-extended-tree' },
|
|
6335
6726
|
],
|
|
6336
6727
|
layoutDS: AwSchedaLayoutDS,
|
|
6337
6728
|
layoutEH: AwSchedaLayoutEH,
|
|
@@ -6386,6 +6777,31 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
|
|
|
6386
6777
|
type: Input
|
|
6387
6778
|
}] } });
|
|
6388
6779
|
|
|
6780
|
+
class ExtendedTreeComponent {
|
|
6781
|
+
onPageInputSubmit() {
|
|
6782
|
+
if (!this.emit)
|
|
6783
|
+
return;
|
|
6784
|
+
this.emit('pageinputsubmit');
|
|
6785
|
+
}
|
|
6786
|
+
onCollapseClick(type) {
|
|
6787
|
+
if (type === 'text')
|
|
6788
|
+
return;
|
|
6789
|
+
this.lb.dataSource.onSectionCollapse('extended-tree');
|
|
6790
|
+
}
|
|
6791
|
+
}
|
|
6792
|
+
ExtendedTreeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: ExtendedTreeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6793
|
+
ExtendedTreeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: ExtendedTreeComponent, selector: "aw-extended-tree", inputs: { data: "data", emit: "emit", lb: "lb" }, ngImport: i0, template: "<div *ngIf=\"data\" class=\"aw-extended-tree\">\n <div class=\"aw-scheda__section-title-wrapper\" (click)=\"onCollapseClick($event.target?.type)\">\n <ng-content></ng-content>\n <div *ngIf=\"data.header as header\" class=\"aw-scheda__inner-title aw-extended-tree__header\">\n <n7-inner-title \n [data]=\"header\"\n [emit]=\"this.emit\"></n7-inner-title>\n </div>\n </div>\n <div [hidden]=\"!!lb.dataSource.sectionCollapseState['extended-tree']\">\n <ng-container *ngIf=\"data.loading\">\n <div class=\"aw-extended-tree__loader\">\n <n7-loader></n7-loader>\n </div>\n </ng-container>\n <ng-container *ngIf=\"!data.loading\">\n <div *ngIf=\"data.items as items\" class=\"aw-extended-tree__content\">\n <div *ngFor=\"let item of data.items\" class=\"aw-extended-tree__item\">\n <n7-anchor-wrapper [classes]=\"'aw-extended-tree__item-link'\" [data]=\"item.anchor\">\n <div *ngIf=\"item.icon\" class=\"aw-extended-tree__item-icon\">\n <span class=\"{{ item.icon }}\"></span>\n </div>\n <div *ngIf=\"item.thumbnail\" class=\"aw-extended-tree__item-image\">\n <img src=\"{{ item.thumbnail }}\" alt=\"{{ item.label }}\">\n </div>\n <div *ngIf=\"item.label\" class=\"aw-extended-tree__item-label\">{{ item.label }}</div>\n </n7-anchor-wrapper>\n </div>\n </div>\n <div *ngIf=\"data.pagination as pagination\" class=\"aw-extended-tree__footer\">\n <div *ngIf=\"data.pagination as pagination\" class=\"aw-extended-tree__pagination\">\n <n7-pagination \n [data]=\"pagination\"\n [emit]=\"this.emit\"></n7-pagination>\n </div>\n <div *ngIf=\"data.pageInput as pageInput\" class=\"aw-extended-tree__page-input\">\n <n7-input-text \n [data]=\"pageInput\"\n [emit]=\"this.emit\"></n7-input-text>\n <button class=\"n7-btn\"\n (click)=\"onPageInputSubmit()\">Vai</button>\n </div>\n <div *ngIf=\"data.limitSelect as limitSelect\" class=\"aw-extended-tree__limit-select\">\n <n7-input-select \n [data]=\"limitSelect\"\n [emit]=\"this.emit\"></n7-input-select>\n </div>\n </div>\n </ng-container>\n </div>\n</div>", components: [{ type: i3.InnerTitleComponent, selector: "n7-inner-title", inputs: ["data", "emit"] }, { type: i3.LoaderComponent, selector: "n7-loader", inputs: ["data"] }, { type: i3.AnchorWrapperComponent, selector: "n7-anchor-wrapper", inputs: ["data", "classes"], outputs: ["clicked"] }, { type: i3.PaginationComponent, selector: "n7-pagination", inputs: ["data", "emit"] }, { type: i3.InputTextComponent, selector: "n7-input-text", inputs: ["data", "emit"] }, { type: i3.InputSelectComponent, selector: "n7-input-select", inputs: ["data", "emit"] }], directives: [{ type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
|
|
6794
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: ExtendedTreeComponent, decorators: [{
|
|
6795
|
+
type: Component,
|
|
6796
|
+
args: [{ selector: 'aw-extended-tree', template: "<div *ngIf=\"data\" class=\"aw-extended-tree\">\n <div class=\"aw-scheda__section-title-wrapper\" (click)=\"onCollapseClick($event.target?.type)\">\n <ng-content></ng-content>\n <div *ngIf=\"data.header as header\" class=\"aw-scheda__inner-title aw-extended-tree__header\">\n <n7-inner-title \n [data]=\"header\"\n [emit]=\"this.emit\"></n7-inner-title>\n </div>\n </div>\n <div [hidden]=\"!!lb.dataSource.sectionCollapseState['extended-tree']\">\n <ng-container *ngIf=\"data.loading\">\n <div class=\"aw-extended-tree__loader\">\n <n7-loader></n7-loader>\n </div>\n </ng-container>\n <ng-container *ngIf=\"!data.loading\">\n <div *ngIf=\"data.items as items\" class=\"aw-extended-tree__content\">\n <div *ngFor=\"let item of data.items\" class=\"aw-extended-tree__item\">\n <n7-anchor-wrapper [classes]=\"'aw-extended-tree__item-link'\" [data]=\"item.anchor\">\n <div *ngIf=\"item.icon\" class=\"aw-extended-tree__item-icon\">\n <span class=\"{{ item.icon }}\"></span>\n </div>\n <div *ngIf=\"item.thumbnail\" class=\"aw-extended-tree__item-image\">\n <img src=\"{{ item.thumbnail }}\" alt=\"{{ item.label }}\">\n </div>\n <div *ngIf=\"item.label\" class=\"aw-extended-tree__item-label\">{{ item.label }}</div>\n </n7-anchor-wrapper>\n </div>\n </div>\n <div *ngIf=\"data.pagination as pagination\" class=\"aw-extended-tree__footer\">\n <div *ngIf=\"data.pagination as pagination\" class=\"aw-extended-tree__pagination\">\n <n7-pagination \n [data]=\"pagination\"\n [emit]=\"this.emit\"></n7-pagination>\n </div>\n <div *ngIf=\"data.pageInput as pageInput\" class=\"aw-extended-tree__page-input\">\n <n7-input-text \n [data]=\"pageInput\"\n [emit]=\"this.emit\"></n7-input-text>\n <button class=\"n7-btn\"\n (click)=\"onPageInputSubmit()\">Vai</button>\n </div>\n <div *ngIf=\"data.limitSelect as limitSelect\" class=\"aw-extended-tree__limit-select\">\n <n7-input-select \n [data]=\"limitSelect\"\n [emit]=\"this.emit\"></n7-input-select>\n </div>\n </div>\n </ng-container>\n </div>\n</div>" }]
|
|
6797
|
+
}], propDecorators: { data: [{
|
|
6798
|
+
type: Input
|
|
6799
|
+
}], emit: [{
|
|
6800
|
+
type: Input
|
|
6801
|
+
}], lb: [{
|
|
6802
|
+
type: Input
|
|
6803
|
+
}] } });
|
|
6804
|
+
|
|
6389
6805
|
class AwSchedaLayoutComponent extends AbstractLayout {
|
|
6390
6806
|
constructor(router, route, configuration, layoutsConfiguration, mainState, titleService, communication) {
|
|
6391
6807
|
super(layoutsConfiguration.get('AwPatrimonioLayoutConfig') || AwPatrimonioLayoutConfig);
|
|
@@ -6421,10 +6837,10 @@ class AwSchedaLayoutComponent extends AbstractLayout {
|
|
|
6421
6837
|
}
|
|
6422
6838
|
}
|
|
6423
6839
|
AwSchedaLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AwSchedaLayoutComponent, deps: [{ token: i1$1.Router }, { token: i1$1.ActivatedRoute }, { token: i1.ConfigurationService }, { token: i1.LayoutsConfigurationService }, { token: i1.MainStateService }, { token: i3$1.Title }, { token: i1.CommunicationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
6424
|
-
AwSchedaLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AwSchedaLayoutComponent, selector: "aw-scheda-layout", usesInheritance: true, ngImport: i0, template: "<div class=\"aw-scheda\"\n id=\"scheda-layout\">\n <div class=\"aw-scheda__content n7-side-auto-padding sticky-parent\"\n [ngClass]=\"{ 'is-collapsed' : lb.dataSource.sidebarCollapsed }\">\n\n <ng-container *ngTemplateOutlet=\"tree\"></ng-container>\n\n <div class=\"aw-scheda__scheda-wrapper\"\n [hidden]=\"lb.dataSource.contentIsLoading\">\n\n <n7-smart-breadcrumbs *ngIf=\"lb.dataSource.hasBreadcrumb\"\n [data]=\"lb.widgets['aw-scheda-breadcrumbs'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-breadcrumbs'].emit\">\n </n7-smart-breadcrumbs>\n\n <div *ngIf=\"!lb.dataSource.hasBreadcrumb\"\n class=\"aw-scheda__fake-breadcrumbs\"\n (click)=\"lb.eventHandler.emitInner('togglesidebar', {})\">\n <p class=\"aw-scheda__fake-breadcrumbs-open\" \n *ngIf=\"lb.dataSource.sidebarCollapsed\">\n Consulta il patrimonio\n </p>\n </div>\n\n <div *ngIf=\"!lb.dataSource.currentId\"\n class=\"aw-scheda__intro-text\"\n [innerHTML]=\"lb.dataSource.emptyLabel\">\n </div>\n\n <n7-inner-title [data]=\"lb.widgets['aw-scheda-inner-title'].ds.out$ | async\">\n </n7-inner-title>\n\n <!-- Empty state -->\n <ng-container *ngIf=\"!lb.dataSource.hasContent\">\n <ng-container *ngTemplateOutlet=\"empty\"></ng-container>\n </ng-container>\n\n <!-- Content sections -->\n <ng-container *ngIf=\"lb.dataSource.hasContent\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n\n </div>\n\n </div>\n</div>\n\n<ng-template #tree>\n <div class=\"aw-scheda__tree sticky-target\"\n [ngClass]=\"{ 'is-sticky': lb.dataSource.sidebarIsSticky }\">\n <n7-sidebar-header [data]=\"lb.widgets['aw-sidebar-header'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-sidebar-header'].emit\"></n7-sidebar-header>\n <div class=\"aw-scheda__tree-content-loading\"\n *ngIf=\"!(lb.widgets['aw-tree'].ds.out$ | async)\">\n <n7-content-placeholder *ngFor=\"let n of [0,1,2,3]\"\n [data]=\"{\n blocks: [{\n classes: 'tree-placeholder-item'\n }]\n }\"></n7-content-placeholder>\n </div>\n <div class=\"aw-scheda__tree-content\"\n (click)=\"lb.eventHandler.emitOuter('treeposition', $event)\"\n [ngStyle]=\"{\n 'max-height': lb.dataSource.treeMaxHeight,\n 'overflow': 'auto'\n }\">\n <n7-tree [data]=\"lb.widgets['aw-tree'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-tree'].emit\"\n *ngIf=\"!lb.dataSource.sidebarCollapsed\">\n </n7-tree>\n </div>\n </div>\n</ng-template>\n\n<ng-template #empty>\n <section class=\"aw-scheda__section aw-scheda__empty\"\n [innerHTML]=\"lb.dataSource.emptyStateString\">\n </section>\n</ng-template>\n\n<ng-template #content>\n <!-- Digital Object selection dropdown -->\n <section class=\"aw-scheda__digital-object-dropdown\"\n *ngIf=\"(\n lb.dataSource.hasDigitalObjects \n && lb.dataSource.digitalObjects.length > 1\n )\">\n <p class=\"aw-scheda__digital-object-dropdown-label\">\n Seleziona l'oggetto digitale da visualizzare:\n </p>\n <aw-scheda-dropdown \n [data]=\"lb.widgets['aw-scheda-dropdown'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-dropdown'].emit\">\n </aw-scheda-dropdown>\n </section>\n <!-- END // Digital Object selection dropdown -->\n\n <!-- Digital Objects: images, IIP, PDFs, external links -->\n <section *ngIf=\"lb.dataSource.currentDigitalObject as $do\" \n class=\"aw-scheda__media aw-scheda__{{ $do.type }}\"\n [ngClass]=\"{ \n 'navigation-hidden': !$do.hasNavigation\n }\">\n <ng-container [ngSwitch]=\"$do.type\">\n <!-- IMAGE VIEWER (IIP) -->\n <ng-container *ngSwitchCase=\"'images-iip'\">\n <n7-image-viewer \n (contextmenu)=\"lb.dataSource.hasContextMenu()\" \n [data]=\"lb.widgets['aw-scheda-image'].ds.out$ | async\">\n </n7-image-viewer>\n </ng-container>\n\n <!-- IMAGE VIEWER (IIIF) -->\n <ng-container *ngSwitchCase=\"'images-iiif'\">\n <n7-image-viewer \n (contextmenu)=\"lb.dataSource.hasContextMenu()\" \n [data]=\"lb.widgets['aw-scheda-image'].ds.out$ | async\">\n </n7-image-viewer>\n </ng-container>\n\n <!-- IMAGE VIEWER (Simple: jpg, png) -->\n <ng-container *ngSwitchCase=\"'images-simple'\">\n <n7-image-viewer \n (contextmenu)=\"lb.dataSource.hasContextMenu()\"\n [data]=\"lb.widgets['aw-scheda-image'].ds.out$ | async\">\n </n7-image-viewer>\n </ng-container>\n \n <!-- PDF -->\n <ng-container *ngSwitchCase=\"'pdf'\">\n <aw-pdf-viewer \n [data]=\"lb.widgets['aw-scheda-pdf'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-pdf'].emit\">\n </aw-pdf-viewer>\n </ng-container>\n \n <!-- EXTERNAL URL -->\n <ng-container *ngSwitchCase=\"'external'\">\n <div class=\"aw-scheda__external-url\">\n <a class=\"aw-scheda__external-url-link\" href=\"{{ $do.url }}\" target=\"_blank\">\n {{ $do.label || lb.dataSource.externalUrlText }}\n <span class=\"n7-icon-external-link\"></span>\n </a>\n </div>\n </ng-container>\n </ng-container>\n </section>\n <!-- END // Digital Objects -->\n\n <section class=\"aw-scheda__section aw-scheda__description\"\n *ngIf=\"lb.dataSource.contentParts.content\">\n <div *ngFor=\"let part of lb.dataSource.contentParts\">\n <div [innerHTML]=\"part.content\"></div>\n </div>\n </section>\n\n <!-- Metadata -->\n <section class=\"aw-scheda__section aw-scheda__metadata\"\n *ngIf=\"lb.dataSource.hasMetadata\">\n <div class=\"aw-scheda__inner-title\"\n *ngIf=\"lb.dataSource.metadataSectionTitle\">\n {{lb.dataSource.metadataSectionTitle}}\n </div>\n <n7-metadata-viewer [data]=\"lb.widgets['aw-scheda-metadata'].ds.out$ | async\">\n </n7-metadata-viewer>\n </section>\n <!-- END // Metadata -->\n\n <!-- Related entities -->\n <section *ngIf=\"lb.dataSource.hasRelatedEntities\"\n id=\"related-item-container\"\n class=\"aw-scheda__section aw-scheda__related\">\n <div class=\"aw-scheda__inner-title\">\n {{lb.dataSource.relatedEntitiesHeader}}\n </div>\n <div class=\"aw-scheda__related-items aw-item-preview-list n7-grid-2\">\n <ng-container *ngFor=\"let preview of (lb.widgets['aw-related-entities'].ds.out$ | async)?.previews\">\n <div class=\"aw-item-preview-wrapper\">\n <n7-item-preview [data]=\"preview\"\n [emit]=\"lb.widgets['aw-related-entities'].emit\">\n </n7-item-preview>\n <!-- Relation -->\n <div class=\"aw-item-preview-relation\"\n *ngIf=\"preview.relation?.value\">\n <p class=\"aw-item-preview-relation__description\">Tipo di relazione\n <!-- <span class=\"aw-item-preview-relation__key\">{{preview.relation.key}}</span>: -->\n <span class=\"aw-item-preview-relation__value\">{{preview.relation.value}}</span>\n </p>\n </div>\n </div>\n </ng-container>\n </div>\n </section>\n <!-- END // Related entities -->\n\n <!-- Similar Objects -->\n <section *ngIf=\"lb.dataSource.hasSimilarItems\"\n id=\"related-item-container\"\n class=\"aw-scheda__section aw-scheda__related\">\n <div class=\"aw-scheda__inner-title\">\n {{lb.dataSource.similarItemsSectionTitle}}\n </div>\n <div class=\"aw-scheda__related-items aw-item-preview-list n7-grid-2\">\n <ng-container *ngFor=\"let preview of (lb.widgets['aw-linked-objects'].ds.out$ | async)?.previews\">\n <div class=\"aw-item-preview-wrapper\">\n <n7-item-preview [data]=\"preview\"\n [emit]=\"lb.widgets['aw-linked-objects'].emit\">\n </n7-item-preview>\n </div> \n </ng-container>\n </div>\n </section>\n <!-- END // Similar Objects -->\n</ng-template>\n", components: [{ type: SmartBreadcrumbsComponent, selector: "n7-smart-breadcrumbs", inputs: ["data", "emit"] }, { type: i3.InnerTitleComponent, selector: "n7-inner-title", inputs: ["data", "emit"] }, { type: i3.SidebarHeaderComponent, selector: "n7-sidebar-header", inputs: ["data", "emit"] }, { type: i3.ContentPlaceholderComponent, selector: "n7-content-placeholder", inputs: ["data"] }, { type: i3.TreeComponent, selector: "n7-tree", inputs: ["data", "emit"] }, { type: SchedaDropdownComponent, selector: "aw-scheda-dropdown", inputs: ["data", "emit"] }, { type: i3.ImageViewerComponent, selector: "n7-image-viewer", inputs: ["data", "emit"] }, { type: PdfViewerComponent, selector: "aw-pdf-viewer", inputs: ["data", "emit"] }, { type: i3.MetadataViewerComponent, selector: "n7-metadata-viewer", inputs: ["data", "emit"] }, { type: i3.ItemPreviewComponent, selector: "n7-item-preview", inputs: ["data", "emit"] }], directives: [{ type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i7.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i7.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i7.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }], pipes: { "async": i7.AsyncPipe } });
|
|
6840
|
+
AwSchedaLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AwSchedaLayoutComponent, selector: "aw-scheda-layout", usesInheritance: true, ngImport: i0, template: "<div class=\"aw-scheda\"\n id=\"scheda-layout\">\n <div class=\"aw-scheda__content n7-side-auto-padding sticky-parent\"\n [ngClass]=\"{ 'is-collapsed' : lb.dataSource.sidebarCollapsed }\">\n\n <ng-container *ngTemplateOutlet=\"tree\"></ng-container>\n\n <div class=\"aw-scheda__scheda-wrapper\"\n [hidden]=\"lb.dataSource.contentIsLoading\">\n\n <n7-smart-breadcrumbs *ngIf=\"lb.dataSource.hasBreadcrumb\"\n [data]=\"lb.widgets['aw-scheda-breadcrumbs'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-breadcrumbs'].emit\">\n </n7-smart-breadcrumbs>\n\n <div *ngIf=\"!lb.dataSource.hasBreadcrumb\"\n class=\"aw-scheda__fake-breadcrumbs\"\n (click)=\"lb.eventHandler.emitInner('togglesidebar', {})\">\n <p class=\"aw-scheda__fake-breadcrumbs-open\" \n *ngIf=\"lb.dataSource.sidebarCollapsed\">\n Consulta il patrimonio\n </p>\n </div>\n\n <div *ngIf=\"!lb.dataSource.currentId\"\n class=\"aw-scheda__intro-text\"\n [innerHTML]=\"lb.dataSource.emptyLabel\">\n </div>\n\n <div class=\"aw-scheda__title-wrapper\">\n <div *ngIf=\"lb.dataSource.titleNavigation as titleNav\" class=\"aw-scheda__prev\">\n <a class=\"n7-btn n7-btn-light\" [routerLink]=\"titleNav.prev?.href ? [titleNav.prev.href] : null\"\n [title]=\"titleNav.prev?.label || ''\"\n [ngClass]=\"{ 'is-disabled': !titleNav.prev?.href }\">\n <span class=\"n7-icon-angle-left\"></span>\n </a>\n </div>\n <div class=\"aw-scheda__title\">\n <div *ngIf=\"lb.dataSource.documentType as documentType\" class=\"aw-scheda__document-type\">\n <span *ngIf=\"documentType.icon\" class=\"aw-scheda__document-type-icon {{ documentType.icon }}\"></span>\n <span class=\"aw-scheda__document-type-label\">{{ documentType.label }}</span>\n </div>\n <n7-inner-title [data]=\"lb.widgets['aw-scheda-inner-title'].ds.out$ | async\">\n </n7-inner-title>\n </div>\n <div *ngIf=\"lb.dataSource.titleNavigation as titleNav\" class=\"aw-scheda__next\">\n <a class=\"n7-btn n7-btn-light\" [routerLink]=\"titleNav.next?.href ? [titleNav.next.href] : null\"\n [title]=\"titleNav.next?.label || ''\"\n [ngClass]=\"{ 'is-disabled': !titleNav.next?.href }\">\n <span class=\"n7-icon-angle-right\"></span>\n </a>\n </div>\n </div>\n\n <!-- Empty state -->\n <ng-container *ngIf=\"!lb.dataSource.hasContent\">\n <ng-container *ngTemplateOutlet=\"empty\"></ng-container>\n </ng-container>\n\n <!-- Content sections -->\n <ng-container *ngIf=\"lb.dataSource.hasContent\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n\n </div>\n\n </div>\n</div>\n\n<ng-template #tree>\n <div class=\"aw-scheda__tree sticky-target\"\n [ngClass]=\"{ 'is-sticky': lb.dataSource.sidebarIsSticky }\">\n <n7-sidebar-header [data]=\"lb.widgets['aw-sidebar-header'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-sidebar-header'].emit\"></n7-sidebar-header>\n <div class=\"aw-scheda__tree-content-loading\"\n *ngIf=\"!(lb.widgets['aw-tree'].ds.out$ | async)\">\n <n7-content-placeholder *ngFor=\"let n of [0,1,2,3]\"\n [data]=\"{\n blocks: [{\n classes: 'tree-placeholder-item'\n }]\n }\"></n7-content-placeholder>\n </div>\n <div class=\"aw-scheda__tree-content\"\n (click)=\"lb.eventHandler.emitOuter('treeposition', $event)\"\n [ngStyle]=\"{\n 'max-height': lb.dataSource.treeMaxHeight,\n 'overflow': 'auto'\n }\">\n <n7-tree [data]=\"lb.widgets['aw-tree'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-tree'].emit\"\n *ngIf=\"!lb.dataSource.sidebarCollapsed\">\n </n7-tree>\n </div>\n </div>\n</ng-template>\n\n<ng-template #empty>\n <section class=\"aw-scheda__section aw-scheda__empty\"\n [innerHTML]=\"lb.dataSource.emptyStateString\">\n </section>\n</ng-template>\n\n<ng-template #content>\n <!-- Digital Object selection dropdown -->\n <section class=\"aw-scheda__digital-object-dropdown\"\n *ngIf=\"(\n lb.dataSource.hasDigitalObjects \n && lb.dataSource.digitalObjects.length > 1\n )\">\n <p class=\"aw-scheda__digital-object-dropdown-label\">\n Seleziona l'oggetto digitale da visualizzare:\n </p>\n <aw-scheda-dropdown \n [data]=\"lb.widgets['aw-scheda-dropdown'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-dropdown'].emit\">\n </aw-scheda-dropdown>\n </section>\n <!-- END // Digital Object selection dropdown -->\n\n <!-- Digital Objects: images, IIP, PDFs, external links -->\n <section *ngIf=\"lb.dataSource.currentDigitalObject as $do\" \n class=\"aw-scheda__media aw-scheda__{{ $do.type }}\"\n [ngClass]=\"{ \n 'navigation-hidden': !$do.hasNavigation\n }\">\n <ng-container [ngSwitch]=\"$do.type\">\n <!-- IMAGE VIEWER (IIP) -->\n <ng-container *ngSwitchCase=\"'images-iip'\">\n <n7-image-viewer \n (contextmenu)=\"lb.dataSource.hasContextMenu()\" \n [data]=\"lb.widgets['aw-scheda-image'].ds.out$ | async\">\n </n7-image-viewer>\n </ng-container>\n\n <!-- IMAGE VIEWER (IIIF) -->\n <ng-container *ngSwitchCase=\"'images-iiif'\">\n <n7-image-viewer \n (contextmenu)=\"lb.dataSource.hasContextMenu()\" \n [data]=\"lb.widgets['aw-scheda-image'].ds.out$ | async\">\n </n7-image-viewer>\n </ng-container>\n\n <!-- IMAGE VIEWER (Simple: jpg, png) -->\n <ng-container *ngSwitchCase=\"'images-simple'\">\n <n7-image-viewer \n (contextmenu)=\"lb.dataSource.hasContextMenu()\"\n [data]=\"lb.widgets['aw-scheda-image'].ds.out$ | async\">\n </n7-image-viewer>\n </ng-container>\n \n <!-- PDF -->\n <ng-container *ngSwitchCase=\"'pdf'\">\n <aw-pdf-viewer \n [data]=\"lb.widgets['aw-scheda-pdf'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-pdf'].emit\">\n </aw-pdf-viewer>\n </ng-container>\n \n <!-- EXTERNAL URL -->\n <ng-container *ngSwitchCase=\"'external'\">\n <div class=\"aw-scheda__external-url\">\n <a class=\"aw-scheda__external-url-link\" href=\"{{ $do.url }}\" target=\"_blank\">\n {{ $do.label || lb.dataSource.externalUrlText }}\n <span class=\"n7-icon-external-link\"></span>\n </a>\n </div>\n </ng-container>\n </ng-container>\n </section>\n <!-- END // Digital Objects -->\n\n <section *ngIf=\"lb.dataSource.contentParts.content\" class=\"aw-scheda__section aw-scheda__description\">\n <div *ngFor=\"let part of lb.dataSource.contentParts\">\n <div [innerHTML]=\"part.content\"></div>\n </div>\n </section>\n\n <!-- Metadata -->\n <section *ngIf=\"lb.dataSource.hasMetadata\" class=\"aw-scheda__section aw-scheda__metadata\">\n <div class=\"aw-scheda__section-title-wrapper\" (click)=\"lb.dataSource.onSectionCollapse('metadata')\">\n <ng-container *ngTemplateOutlet=\"collapse; context: { $implicit: 'metadata' }\"></ng-container>\n <div class=\"aw-scheda__inner-title\"\n *ngIf=\"lb.dataSource.metadataSectionTitle\">\n {{lb.dataSource.metadataSectionTitle}}\n </div>\n </div>\n <div [hidden]=\"!!lb.dataSource.sectionCollapseState['metadata']\" \n class=\"aw-scheda__section-content-wrapper\">\n <n7-metadata-viewer [data]=\"lb.widgets['aw-scheda-metadata'].ds.out$ | async\">\n </n7-metadata-viewer>\n </div>\n </section>\n <!-- END // Metadata -->\n\n <!-- Related entities -->\n <section *ngIf=\"lb.dataSource.hasRelatedEntities\"\n id=\"related-item-container\"\n class=\"aw-scheda__section aw-scheda__related\">\n <div class=\"aw-scheda__section-title-wrapper\" (click)=\"lb.dataSource.onSectionCollapse('related-entities')\">\n <ng-container *ngTemplateOutlet=\"collapse; context: { $implicit: 'related-entities' }\"></ng-container>\n <div class=\"aw-scheda__inner-title\">\n {{lb.dataSource.relatedEntitiesHeader}}\n </div>\n </div>\n <div [hidden]=\"!!lb.dataSource.sectionCollapseState['related-entities']\" \n class=\"aw-scheda__related-items aw-item-preview-list n7-grid-2\">\n <ng-container *ngFor=\"let preview of (lb.widgets['aw-related-entities'].ds.out$ | async)?.previews\">\n <div class=\"aw-item-preview-wrapper\">\n <n7-item-preview [data]=\"preview\"\n [emit]=\"lb.widgets['aw-related-entities'].emit\">\n </n7-item-preview>\n <!-- Relation -->\n <div class=\"aw-item-preview-relation\"\n *ngIf=\"preview.relation?.value\">\n <p class=\"aw-item-preview-relation__description\">Tipo di relazione\n <!-- <span class=\"aw-item-preview-relation__key\">{{preview.relation.key}}</span>: -->\n <span class=\"aw-item-preview-relation__value\">{{preview.relation.value}}</span>\n </p>\n </div>\n </div>\n </ng-container>\n </div>\n </section>\n <!-- END // Related entities -->\n\n <!-- Similar Objects -->\n <section *ngIf=\"lb.dataSource.hasSimilarItems\"\n id=\"related-item-container\"\n class=\"aw-scheda__section aw-scheda__related\">\n <div class=\"aw-scheda__section-title-wrapper\" (click)=\"lb.dataSource.onSectionCollapse('similar-items')\">\n <ng-container *ngTemplateOutlet=\"collapse; context: { $implicit: 'similar-items' }\"></ng-container>\n <div class=\"aw-scheda__inner-title\">\n {{lb.dataSource.similarItemsSectionTitle}}\n </div>\n </div>\n <div [hidden]=\"!!lb.dataSource.sectionCollapseState['similar-items']\" \n class=\"aw-scheda__related-items aw-item-preview-list n7-grid-2\">\n <ng-container *ngFor=\"let preview of (lb.widgets['aw-linked-objects'].ds.out$ | async)?.previews\">\n <div class=\"aw-item-preview-wrapper\">\n <n7-item-preview [data]=\"preview\"\n [emit]=\"lb.widgets['aw-linked-objects'].emit\">\n </n7-item-preview>\n </div> \n </ng-container>\n </div>\n </section>\n <!-- END // Similar Objects -->\n\n <!-- Extended Tree -->\n <section *ngIf=\"lb.dataSource.hasExtendedTree\" id=\"extended-tree-container\" class=\"aw-scheda__section\">\n <div class=\"aw-scheda__section-extended-tree-loader\" *ngIf=\"!(lb.widgets['aw-extended-tree'].ds.out$ | async)\">\n <n7-loader></n7-loader>\n </div>\n <aw-extended-tree\n [data]=\"lb.widgets['aw-extended-tree'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-extended-tree'].emit\"\n [lb]=\"lb\">\n <ng-container *ngTemplateOutlet=\"collapse; context: { $implicit: 'extended-tree' }\"></ng-container>\n </aw-extended-tree>\n </section>\n <!-- END // Extended Tree -->\n</ng-template>\n\n<ng-template #collapse let-id>\n <div class=\"aw-scheda__collapse\">\n <button class=\"n7-btn n7-btn-light\">\n <span class=\"n7-icon-angle-right\"\n [ngClass]=\"{\n 'n7-icon-angle-right': !!lb.dataSource.sectionCollapseState[id],\n 'n7-icon-angle-down': !lb.dataSource.sectionCollapseState[id]\n }\"></span>\n </button>\n </div>\n</ng-template>", components: [{ type: SmartBreadcrumbsComponent, selector: "n7-smart-breadcrumbs", inputs: ["data", "emit"] }, { type: i3.InnerTitleComponent, selector: "n7-inner-title", inputs: ["data", "emit"] }, { type: i3.SidebarHeaderComponent, selector: "n7-sidebar-header", inputs: ["data", "emit"] }, { type: i3.ContentPlaceholderComponent, selector: "n7-content-placeholder", inputs: ["data"] }, { type: i3.TreeComponent, selector: "n7-tree", inputs: ["data", "emit"] }, { type: SchedaDropdownComponent, selector: "aw-scheda-dropdown", inputs: ["data", "emit"] }, { type: i3.ImageViewerComponent, selector: "n7-image-viewer", inputs: ["data", "emit"] }, { type: PdfViewerComponent, selector: "aw-pdf-viewer", inputs: ["data", "emit"] }, { type: i3.MetadataViewerComponent, selector: "n7-metadata-viewer", inputs: ["data", "emit"] }, { type: i3.ItemPreviewComponent, selector: "n7-item-preview", inputs: ["data", "emit"] }, { type: i3.LoaderComponent, selector: "n7-loader", inputs: ["data"] }, { type: ExtendedTreeComponent, selector: "aw-extended-tree", inputs: ["data", "emit", "lb"] }], directives: [{ type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i7.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$1.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i7.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i7.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }], pipes: { "async": i7.AsyncPipe } });
|
|
6425
6841
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AwSchedaLayoutComponent, decorators: [{
|
|
6426
6842
|
type: Component,
|
|
6427
|
-
args: [{ selector: 'aw-scheda-layout', template: "<div class=\"aw-scheda\"\n id=\"scheda-layout\">\n <div class=\"aw-scheda__content n7-side-auto-padding sticky-parent\"\n [ngClass]=\"{ 'is-collapsed' : lb.dataSource.sidebarCollapsed }\">\n\n <ng-container *ngTemplateOutlet=\"tree\"></ng-container>\n\n <div class=\"aw-scheda__scheda-wrapper\"\n [hidden]=\"lb.dataSource.contentIsLoading\">\n\n <n7-smart-breadcrumbs *ngIf=\"lb.dataSource.hasBreadcrumb\"\n [data]=\"lb.widgets['aw-scheda-breadcrumbs'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-breadcrumbs'].emit\">\n </n7-smart-breadcrumbs>\n\n <div *ngIf=\"!lb.dataSource.hasBreadcrumb\"\n class=\"aw-scheda__fake-breadcrumbs\"\n (click)=\"lb.eventHandler.emitInner('togglesidebar', {})\">\n <p class=\"aw-scheda__fake-breadcrumbs-open\" \n *ngIf=\"lb.dataSource.sidebarCollapsed\">\n Consulta il patrimonio\n </p>\n </div>\n\n <div *ngIf=\"!lb.dataSource.currentId\"\n class=\"aw-scheda__intro-text\"\n [innerHTML]=\"lb.dataSource.emptyLabel\">\n </div>\n\n <n7-inner-title [data]=\"lb.widgets['aw-scheda-inner-title'].ds.out$ | async\">\n </n7-inner-title>\n\n <!-- Empty state -->\n <ng-container *ngIf=\"!lb.dataSource.hasContent\">\n <ng-container *ngTemplateOutlet=\"empty\"></ng-container>\n </ng-container>\n\n <!-- Content sections -->\n <ng-container *ngIf=\"lb.dataSource.hasContent\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n\n </div>\n\n </div>\n</div>\n\n<ng-template #tree>\n <div class=\"aw-scheda__tree sticky-target\"\n [ngClass]=\"{ 'is-sticky': lb.dataSource.sidebarIsSticky }\">\n <n7-sidebar-header [data]=\"lb.widgets['aw-sidebar-header'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-sidebar-header'].emit\"></n7-sidebar-header>\n <div class=\"aw-scheda__tree-content-loading\"\n *ngIf=\"!(lb.widgets['aw-tree'].ds.out$ | async)\">\n <n7-content-placeholder *ngFor=\"let n of [0,1,2,3]\"\n [data]=\"{\n blocks: [{\n classes: 'tree-placeholder-item'\n }]\n }\"></n7-content-placeholder>\n </div>\n <div class=\"aw-scheda__tree-content\"\n (click)=\"lb.eventHandler.emitOuter('treeposition', $event)\"\n [ngStyle]=\"{\n 'max-height': lb.dataSource.treeMaxHeight,\n 'overflow': 'auto'\n }\">\n <n7-tree [data]=\"lb.widgets['aw-tree'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-tree'].emit\"\n *ngIf=\"!lb.dataSource.sidebarCollapsed\">\n </n7-tree>\n </div>\n </div>\n</ng-template>\n\n<ng-template #empty>\n <section class=\"aw-scheda__section aw-scheda__empty\"\n [innerHTML]=\"lb.dataSource.emptyStateString\">\n </section>\n</ng-template>\n\n<ng-template #content>\n <!-- Digital Object selection dropdown -->\n <section class=\"aw-scheda__digital-object-dropdown\"\n *ngIf=\"(\n lb.dataSource.hasDigitalObjects \n && lb.dataSource.digitalObjects.length > 1\n )\">\n <p class=\"aw-scheda__digital-object-dropdown-label\">\n Seleziona l'oggetto digitale da visualizzare:\n </p>\n <aw-scheda-dropdown \n [data]=\"lb.widgets['aw-scheda-dropdown'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-dropdown'].emit\">\n </aw-scheda-dropdown>\n </section>\n <!-- END // Digital Object selection dropdown -->\n\n <!-- Digital Objects: images, IIP, PDFs, external links -->\n <section *ngIf=\"lb.dataSource.currentDigitalObject as $do\" \n class=\"aw-scheda__media aw-scheda__{{ $do.type }}\"\n [ngClass]=\"{ \n 'navigation-hidden': !$do.hasNavigation\n }\">\n <ng-container [ngSwitch]=\"$do.type\">\n <!-- IMAGE VIEWER (IIP) -->\n <ng-container *ngSwitchCase=\"'images-iip'\">\n <n7-image-viewer \n (contextmenu)=\"lb.dataSource.hasContextMenu()\" \n [data]=\"lb.widgets['aw-scheda-image'].ds.out$ | async\">\n </n7-image-viewer>\n </ng-container>\n\n <!-- IMAGE VIEWER (IIIF) -->\n <ng-container *ngSwitchCase=\"'images-iiif'\">\n <n7-image-viewer \n (contextmenu)=\"lb.dataSource.hasContextMenu()\" \n [data]=\"lb.widgets['aw-scheda-image'].ds.out$ | async\">\n </n7-image-viewer>\n </ng-container>\n\n <!-- IMAGE VIEWER (Simple: jpg, png) -->\n <ng-container *ngSwitchCase=\"'images-simple'\">\n <n7-image-viewer \n (contextmenu)=\"lb.dataSource.hasContextMenu()\"\n [data]=\"lb.widgets['aw-scheda-image'].ds.out$ | async\">\n </n7-image-viewer>\n </ng-container>\n \n <!-- PDF -->\n <ng-container *ngSwitchCase=\"'pdf'\">\n <aw-pdf-viewer \n [data]=\"lb.widgets['aw-scheda-pdf'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-pdf'].emit\">\n </aw-pdf-viewer>\n </ng-container>\n \n <!-- EXTERNAL URL -->\n <ng-container *ngSwitchCase=\"'external'\">\n <div class=\"aw-scheda__external-url\">\n <a class=\"aw-scheda__external-url-link\" href=\"{{ $do.url }}\" target=\"_blank\">\n {{ $do.label || lb.dataSource.externalUrlText }}\n <span class=\"n7-icon-external-link\"></span>\n </a>\n </div>\n </ng-container>\n </ng-container>\n </section>\n <!-- END // Digital Objects -->\n\n <section class=\"aw-scheda__section aw-scheda__description\"\n *ngIf=\"lb.dataSource.contentParts.content\">\n <div *ngFor=\"let part of lb.dataSource.contentParts\">\n <div [innerHTML]=\"part.content\"></div>\n </div>\n </section>\n\n <!-- Metadata -->\n <section class=\"aw-scheda__section aw-scheda__metadata\"\n *ngIf=\"lb.dataSource.hasMetadata\">\n <div class=\"aw-scheda__inner-title\"\n *ngIf=\"lb.dataSource.metadataSectionTitle\">\n {{lb.dataSource.metadataSectionTitle}}\n </div>\n <n7-metadata-viewer [data]=\"lb.widgets['aw-scheda-metadata'].ds.out$ | async\">\n </n7-metadata-viewer>\n </section>\n <!-- END // Metadata -->\n\n <!-- Related entities -->\n <section *ngIf=\"lb.dataSource.hasRelatedEntities\"\n id=\"related-item-container\"\n class=\"aw-scheda__section aw-scheda__related\">\n <div class=\"aw-scheda__inner-title\">\n {{lb.dataSource.relatedEntitiesHeader}}\n </div>\n <div class=\"aw-scheda__related-items aw-item-preview-list n7-grid-2\">\n <ng-container *ngFor=\"let preview of (lb.widgets['aw-related-entities'].ds.out$ | async)?.previews\">\n <div class=\"aw-item-preview-wrapper\">\n <n7-item-preview [data]=\"preview\"\n [emit]=\"lb.widgets['aw-related-entities'].emit\">\n </n7-item-preview>\n <!-- Relation -->\n <div class=\"aw-item-preview-relation\"\n *ngIf=\"preview.relation?.value\">\n <p class=\"aw-item-preview-relation__description\">Tipo di relazione\n <!-- <span class=\"aw-item-preview-relation__key\">{{preview.relation.key}}</span>: -->\n <span class=\"aw-item-preview-relation__value\">{{preview.relation.value}}</span>\n </p>\n </div>\n </div>\n </ng-container>\n </div>\n </section>\n <!-- END // Related entities -->\n\n <!-- Similar Objects -->\n <section *ngIf=\"lb.dataSource.hasSimilarItems\"\n id=\"related-item-container\"\n class=\"aw-scheda__section aw-scheda__related\">\n <div class=\"aw-scheda__inner-title\">\n {{lb.dataSource.similarItemsSectionTitle}}\n </div>\n <div class=\"aw-scheda__related-items aw-item-preview-list n7-grid-2\">\n <ng-container *ngFor=\"let preview of (lb.widgets['aw-linked-objects'].ds.out$ | async)?.previews\">\n <div class=\"aw-item-preview-wrapper\">\n <n7-item-preview [data]=\"preview\"\n [emit]=\"lb.widgets['aw-linked-objects'].emit\">\n </n7-item-preview>\n </div> \n </ng-container>\n </div>\n </section>\n <!-- END // Similar Objects -->\n</ng-template>\n" }]
|
|
6843
|
+
args: [{ selector: 'aw-scheda-layout', template: "<div class=\"aw-scheda\"\n id=\"scheda-layout\">\n <div class=\"aw-scheda__content n7-side-auto-padding sticky-parent\"\n [ngClass]=\"{ 'is-collapsed' : lb.dataSource.sidebarCollapsed }\">\n\n <ng-container *ngTemplateOutlet=\"tree\"></ng-container>\n\n <div class=\"aw-scheda__scheda-wrapper\"\n [hidden]=\"lb.dataSource.contentIsLoading\">\n\n <n7-smart-breadcrumbs *ngIf=\"lb.dataSource.hasBreadcrumb\"\n [data]=\"lb.widgets['aw-scheda-breadcrumbs'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-breadcrumbs'].emit\">\n </n7-smart-breadcrumbs>\n\n <div *ngIf=\"!lb.dataSource.hasBreadcrumb\"\n class=\"aw-scheda__fake-breadcrumbs\"\n (click)=\"lb.eventHandler.emitInner('togglesidebar', {})\">\n <p class=\"aw-scheda__fake-breadcrumbs-open\" \n *ngIf=\"lb.dataSource.sidebarCollapsed\">\n Consulta il patrimonio\n </p>\n </div>\n\n <div *ngIf=\"!lb.dataSource.currentId\"\n class=\"aw-scheda__intro-text\"\n [innerHTML]=\"lb.dataSource.emptyLabel\">\n </div>\n\n <div class=\"aw-scheda__title-wrapper\">\n <div *ngIf=\"lb.dataSource.titleNavigation as titleNav\" class=\"aw-scheda__prev\">\n <a class=\"n7-btn n7-btn-light\" [routerLink]=\"titleNav.prev?.href ? [titleNav.prev.href] : null\"\n [title]=\"titleNav.prev?.label || ''\"\n [ngClass]=\"{ 'is-disabled': !titleNav.prev?.href }\">\n <span class=\"n7-icon-angle-left\"></span>\n </a>\n </div>\n <div class=\"aw-scheda__title\">\n <div *ngIf=\"lb.dataSource.documentType as documentType\" class=\"aw-scheda__document-type\">\n <span *ngIf=\"documentType.icon\" class=\"aw-scheda__document-type-icon {{ documentType.icon }}\"></span>\n <span class=\"aw-scheda__document-type-label\">{{ documentType.label }}</span>\n </div>\n <n7-inner-title [data]=\"lb.widgets['aw-scheda-inner-title'].ds.out$ | async\">\n </n7-inner-title>\n </div>\n <div *ngIf=\"lb.dataSource.titleNavigation as titleNav\" class=\"aw-scheda__next\">\n <a class=\"n7-btn n7-btn-light\" [routerLink]=\"titleNav.next?.href ? [titleNav.next.href] : null\"\n [title]=\"titleNav.next?.label || ''\"\n [ngClass]=\"{ 'is-disabled': !titleNav.next?.href }\">\n <span class=\"n7-icon-angle-right\"></span>\n </a>\n </div>\n </div>\n\n <!-- Empty state -->\n <ng-container *ngIf=\"!lb.dataSource.hasContent\">\n <ng-container *ngTemplateOutlet=\"empty\"></ng-container>\n </ng-container>\n\n <!-- Content sections -->\n <ng-container *ngIf=\"lb.dataSource.hasContent\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </ng-container>\n\n </div>\n\n </div>\n</div>\n\n<ng-template #tree>\n <div class=\"aw-scheda__tree sticky-target\"\n [ngClass]=\"{ 'is-sticky': lb.dataSource.sidebarIsSticky }\">\n <n7-sidebar-header [data]=\"lb.widgets['aw-sidebar-header'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-sidebar-header'].emit\"></n7-sidebar-header>\n <div class=\"aw-scheda__tree-content-loading\"\n *ngIf=\"!(lb.widgets['aw-tree'].ds.out$ | async)\">\n <n7-content-placeholder *ngFor=\"let n of [0,1,2,3]\"\n [data]=\"{\n blocks: [{\n classes: 'tree-placeholder-item'\n }]\n }\"></n7-content-placeholder>\n </div>\n <div class=\"aw-scheda__tree-content\"\n (click)=\"lb.eventHandler.emitOuter('treeposition', $event)\"\n [ngStyle]=\"{\n 'max-height': lb.dataSource.treeMaxHeight,\n 'overflow': 'auto'\n }\">\n <n7-tree [data]=\"lb.widgets['aw-tree'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-tree'].emit\"\n *ngIf=\"!lb.dataSource.sidebarCollapsed\">\n </n7-tree>\n </div>\n </div>\n</ng-template>\n\n<ng-template #empty>\n <section class=\"aw-scheda__section aw-scheda__empty\"\n [innerHTML]=\"lb.dataSource.emptyStateString\">\n </section>\n</ng-template>\n\n<ng-template #content>\n <!-- Digital Object selection dropdown -->\n <section class=\"aw-scheda__digital-object-dropdown\"\n *ngIf=\"(\n lb.dataSource.hasDigitalObjects \n && lb.dataSource.digitalObjects.length > 1\n )\">\n <p class=\"aw-scheda__digital-object-dropdown-label\">\n Seleziona l'oggetto digitale da visualizzare:\n </p>\n <aw-scheda-dropdown \n [data]=\"lb.widgets['aw-scheda-dropdown'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-dropdown'].emit\">\n </aw-scheda-dropdown>\n </section>\n <!-- END // Digital Object selection dropdown -->\n\n <!-- Digital Objects: images, IIP, PDFs, external links -->\n <section *ngIf=\"lb.dataSource.currentDigitalObject as $do\" \n class=\"aw-scheda__media aw-scheda__{{ $do.type }}\"\n [ngClass]=\"{ \n 'navigation-hidden': !$do.hasNavigation\n }\">\n <ng-container [ngSwitch]=\"$do.type\">\n <!-- IMAGE VIEWER (IIP) -->\n <ng-container *ngSwitchCase=\"'images-iip'\">\n <n7-image-viewer \n (contextmenu)=\"lb.dataSource.hasContextMenu()\" \n [data]=\"lb.widgets['aw-scheda-image'].ds.out$ | async\">\n </n7-image-viewer>\n </ng-container>\n\n <!-- IMAGE VIEWER (IIIF) -->\n <ng-container *ngSwitchCase=\"'images-iiif'\">\n <n7-image-viewer \n (contextmenu)=\"lb.dataSource.hasContextMenu()\" \n [data]=\"lb.widgets['aw-scheda-image'].ds.out$ | async\">\n </n7-image-viewer>\n </ng-container>\n\n <!-- IMAGE VIEWER (Simple: jpg, png) -->\n <ng-container *ngSwitchCase=\"'images-simple'\">\n <n7-image-viewer \n (contextmenu)=\"lb.dataSource.hasContextMenu()\"\n [data]=\"lb.widgets['aw-scheda-image'].ds.out$ | async\">\n </n7-image-viewer>\n </ng-container>\n \n <!-- PDF -->\n <ng-container *ngSwitchCase=\"'pdf'\">\n <aw-pdf-viewer \n [data]=\"lb.widgets['aw-scheda-pdf'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-pdf'].emit\">\n </aw-pdf-viewer>\n </ng-container>\n \n <!-- EXTERNAL URL -->\n <ng-container *ngSwitchCase=\"'external'\">\n <div class=\"aw-scheda__external-url\">\n <a class=\"aw-scheda__external-url-link\" href=\"{{ $do.url }}\" target=\"_blank\">\n {{ $do.label || lb.dataSource.externalUrlText }}\n <span class=\"n7-icon-external-link\"></span>\n </a>\n </div>\n </ng-container>\n </ng-container>\n </section>\n <!-- END // Digital Objects -->\n\n <section *ngIf=\"lb.dataSource.contentParts.content\" class=\"aw-scheda__section aw-scheda__description\">\n <div *ngFor=\"let part of lb.dataSource.contentParts\">\n <div [innerHTML]=\"part.content\"></div>\n </div>\n </section>\n\n <!-- Metadata -->\n <section *ngIf=\"lb.dataSource.hasMetadata\" class=\"aw-scheda__section aw-scheda__metadata\">\n <div class=\"aw-scheda__section-title-wrapper\" (click)=\"lb.dataSource.onSectionCollapse('metadata')\">\n <ng-container *ngTemplateOutlet=\"collapse; context: { $implicit: 'metadata' }\"></ng-container>\n <div class=\"aw-scheda__inner-title\"\n *ngIf=\"lb.dataSource.metadataSectionTitle\">\n {{lb.dataSource.metadataSectionTitle}}\n </div>\n </div>\n <div [hidden]=\"!!lb.dataSource.sectionCollapseState['metadata']\" \n class=\"aw-scheda__section-content-wrapper\">\n <n7-metadata-viewer [data]=\"lb.widgets['aw-scheda-metadata'].ds.out$ | async\">\n </n7-metadata-viewer>\n </div>\n </section>\n <!-- END // Metadata -->\n\n <!-- Related entities -->\n <section *ngIf=\"lb.dataSource.hasRelatedEntities\"\n id=\"related-item-container\"\n class=\"aw-scheda__section aw-scheda__related\">\n <div class=\"aw-scheda__section-title-wrapper\" (click)=\"lb.dataSource.onSectionCollapse('related-entities')\">\n <ng-container *ngTemplateOutlet=\"collapse; context: { $implicit: 'related-entities' }\"></ng-container>\n <div class=\"aw-scheda__inner-title\">\n {{lb.dataSource.relatedEntitiesHeader}}\n </div>\n </div>\n <div [hidden]=\"!!lb.dataSource.sectionCollapseState['related-entities']\" \n class=\"aw-scheda__related-items aw-item-preview-list n7-grid-2\">\n <ng-container *ngFor=\"let preview of (lb.widgets['aw-related-entities'].ds.out$ | async)?.previews\">\n <div class=\"aw-item-preview-wrapper\">\n <n7-item-preview [data]=\"preview\"\n [emit]=\"lb.widgets['aw-related-entities'].emit\">\n </n7-item-preview>\n <!-- Relation -->\n <div class=\"aw-item-preview-relation\"\n *ngIf=\"preview.relation?.value\">\n <p class=\"aw-item-preview-relation__description\">Tipo di relazione\n <!-- <span class=\"aw-item-preview-relation__key\">{{preview.relation.key}}</span>: -->\n <span class=\"aw-item-preview-relation__value\">{{preview.relation.value}}</span>\n </p>\n </div>\n </div>\n </ng-container>\n </div>\n </section>\n <!-- END // Related entities -->\n\n <!-- Similar Objects -->\n <section *ngIf=\"lb.dataSource.hasSimilarItems\"\n id=\"related-item-container\"\n class=\"aw-scheda__section aw-scheda__related\">\n <div class=\"aw-scheda__section-title-wrapper\" (click)=\"lb.dataSource.onSectionCollapse('similar-items')\">\n <ng-container *ngTemplateOutlet=\"collapse; context: { $implicit: 'similar-items' }\"></ng-container>\n <div class=\"aw-scheda__inner-title\">\n {{lb.dataSource.similarItemsSectionTitle}}\n </div>\n </div>\n <div [hidden]=\"!!lb.dataSource.sectionCollapseState['similar-items']\" \n class=\"aw-scheda__related-items aw-item-preview-list n7-grid-2\">\n <ng-container *ngFor=\"let preview of (lb.widgets['aw-linked-objects'].ds.out$ | async)?.previews\">\n <div class=\"aw-item-preview-wrapper\">\n <n7-item-preview [data]=\"preview\"\n [emit]=\"lb.widgets['aw-linked-objects'].emit\">\n </n7-item-preview>\n </div> \n </ng-container>\n </div>\n </section>\n <!-- END // Similar Objects -->\n\n <!-- Extended Tree -->\n <section *ngIf=\"lb.dataSource.hasExtendedTree\" id=\"extended-tree-container\" class=\"aw-scheda__section\">\n <div class=\"aw-scheda__section-extended-tree-loader\" *ngIf=\"!(lb.widgets['aw-extended-tree'].ds.out$ | async)\">\n <n7-loader></n7-loader>\n </div>\n <aw-extended-tree\n [data]=\"lb.widgets['aw-extended-tree'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-extended-tree'].emit\"\n [lb]=\"lb\">\n <ng-container *ngTemplateOutlet=\"collapse; context: { $implicit: 'extended-tree' }\"></ng-container>\n </aw-extended-tree>\n </section>\n <!-- END // Extended Tree -->\n</ng-template>\n\n<ng-template #collapse let-id>\n <div class=\"aw-scheda__collapse\">\n <button class=\"n7-btn n7-btn-light\">\n <span class=\"n7-icon-angle-right\"\n [ngClass]=\"{\n 'n7-icon-angle-right': !!lb.dataSource.sectionCollapseState[id],\n 'n7-icon-angle-down': !lb.dataSource.sectionCollapseState[id]\n }\"></span>\n </button>\n </div>\n</ng-template>" }]
|
|
6428
6844
|
}], ctorParameters: function () { return [{ type: i1$1.Router }, { type: i1$1.ActivatedRoute }, { type: i1.ConfigurationService }, { type: i1.LayoutsConfigurationService }, { type: i1.MainStateService }, { type: i3$1.Title }, { type: i1.CommunicationService }]; } });
|
|
6429
6845
|
|
|
6430
6846
|
const AwSearchLayoutConfig = {
|
|
@@ -6784,7 +7200,7 @@ var apolloConfig = (treeDepth) => ({
|
|
|
6784
7200
|
queryName: 'getTreeOfItems',
|
|
6785
7201
|
queryBody: `
|
|
6786
7202
|
{
|
|
6787
|
-
getTreeOfItems{
|
|
7203
|
+
getTreeOfItems(__PARAMS__){
|
|
6788
7204
|
${getTreeBranches(treeDepth, false)}
|
|
6789
7205
|
}
|
|
6790
7206
|
}
|
|
@@ -6794,7 +7210,7 @@ var apolloConfig = (treeDepth) => ({
|
|
|
6794
7210
|
queryName: 'getTreeOfItems',
|
|
6795
7211
|
queryBody: `
|
|
6796
7212
|
{
|
|
6797
|
-
getTreeOfItems{
|
|
7213
|
+
getTreeOfItems(__PARAMS__){
|
|
6798
7214
|
${getTreeBranches(treeDepth)}
|
|
6799
7215
|
}
|
|
6800
7216
|
}
|
|
@@ -7023,6 +7439,22 @@ var apolloConfig = (treeDepth) => ({
|
|
|
7023
7439
|
}
|
|
7024
7440
|
}`,
|
|
7025
7441
|
},
|
|
7442
|
+
getNodeChildren: {
|
|
7443
|
+
queryName: 'getNodeChildren',
|
|
7444
|
+
queryBody: `{
|
|
7445
|
+
getNodeChildren(__PARAMS__) {
|
|
7446
|
+
items {
|
|
7447
|
+
id
|
|
7448
|
+
label
|
|
7449
|
+
icon
|
|
7450
|
+
img
|
|
7451
|
+
document_type
|
|
7452
|
+
document_classification
|
|
7453
|
+
}
|
|
7454
|
+
totalCount
|
|
7455
|
+
}
|
|
7456
|
+
}`
|
|
7457
|
+
},
|
|
7026
7458
|
getNode: {
|
|
7027
7459
|
queryName: 'getNode',
|
|
7028
7460
|
queryBody: `{
|
|
@@ -7033,6 +7465,18 @@ var apolloConfig = (treeDepth) => ({
|
|
|
7033
7465
|
title
|
|
7034
7466
|
subTitle
|
|
7035
7467
|
image
|
|
7468
|
+
prev {
|
|
7469
|
+
id
|
|
7470
|
+
label
|
|
7471
|
+
}
|
|
7472
|
+
next {
|
|
7473
|
+
id
|
|
7474
|
+
label
|
|
7475
|
+
}
|
|
7476
|
+
lastAl {
|
|
7477
|
+
id
|
|
7478
|
+
label
|
|
7479
|
+
}
|
|
7036
7480
|
digitalObjects {
|
|
7037
7481
|
label
|
|
7038
7482
|
type
|
|
@@ -7439,6 +7883,7 @@ const COMPONENTS = [
|
|
|
7439
7883
|
PdfViewerComponent,
|
|
7440
7884
|
SchedaDropdownComponent,
|
|
7441
7885
|
SmartBreadcrumbsComponent,
|
|
7886
|
+
ExtendedTreeComponent,
|
|
7442
7887
|
];
|
|
7443
7888
|
class N7BoilerplateAriannaModule {
|
|
7444
7889
|
constructor(initStatus, config) {
|
|
@@ -7466,7 +7911,8 @@ N7BoilerplateAriannaModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.
|
|
|
7466
7911
|
ChartTippyComponent,
|
|
7467
7912
|
PdfViewerComponent,
|
|
7468
7913
|
SchedaDropdownComponent,
|
|
7469
|
-
SmartBreadcrumbsComponent
|
|
7914
|
+
SmartBreadcrumbsComponent,
|
|
7915
|
+
ExtendedTreeComponent], imports: [CommonModule,
|
|
7470
7916
|
RouterModule,
|
|
7471
7917
|
DvComponentsLibModule,
|
|
7472
7918
|
N7BoilerplateCommonModule,
|
|
@@ -7483,7 +7929,8 @@ N7BoilerplateAriannaModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.
|
|
|
7483
7929
|
ChartTippyComponent,
|
|
7484
7930
|
PdfViewerComponent,
|
|
7485
7931
|
SchedaDropdownComponent,
|
|
7486
|
-
SmartBreadcrumbsComponent
|
|
7932
|
+
SmartBreadcrumbsComponent,
|
|
7933
|
+
ExtendedTreeComponent] });
|
|
7487
7934
|
N7BoilerplateAriannaModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: N7BoilerplateAriannaModule, imports: [[
|
|
7488
7935
|
CommonModule,
|
|
7489
7936
|
RouterModule,
|
|
@@ -7516,5 +7963,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
|
|
|
7516
7963
|
* Generated bundle index. Do not edit.
|
|
7517
7964
|
*/
|
|
7518
7965
|
|
|
7519
|
-
export { AwAutocompleteWrapperDS, AwAutocompleteWrapperEH, AwBubbleChartDS, AwBubbleChartEH, AwCarouselDS, AwChartTippyDS, AwChartTippyEH, AwCollectionLayoutComponent, AwCollectionLayoutConfig, AwCollectionLayoutDS, AwCollectionLayoutEH, AwEntitaLayoutComponent, AwEntitaLayoutConfig, AwEntitaLayoutDS, AwEntitaLayoutEH, AwEntitaMetadataViewerDS, AwEntitaNavDS, AwEntitaNavEH, AwFacetsWrapperComponent, AwFacetsWrapperDS, AwFacetsWrapperEH, AwGalleryLayoutComponent, AwGalleryLayoutConfig, AwGalleryLayoutDS, AwGalleryLayoutEH, AwGalleryResultsDS, AwGalleryResultsEH, AwHeroDS, AwHeroEH, AwHomeAutocompleteDS, AwHomeAutocompleteEH, AwHomeFacetsWrapperDS, AwHomeFacetsWrapperEH, AwHomeHeroPatrimonioDS, AwHomeHeroPatrimonioEH, AwHomeItemTagsWrapperDS, AwHomeItemTagsWrapperEH, AwHomeLayoutComponent, AwHomeLayoutConfig, AwHomeLayoutDS, AwHomeLayoutEH, AwLinkedObjectsDS, AwLinkedObjectsEH, AwMapDS, AwMapEH, AwMapLayoutComponent, AwMapLayoutConfig, AwMapLayoutDS, AwMapLayoutEH, AwPatrimonioLayoutConfig, AwRelatedEntitiesDS, AwSchedaBreadcrumbsDS, AwSchedaDropdownDS, AwSchedaDropdownEH, AwSchedaImageDS, AwSchedaInnerTitleDS, AwSchedaLayoutComponent, AwSchedaLayoutDS, AwSchedaLayoutEH, AwSchedaMetadataDS, AwSchedaPdfDS, AwSchedaPdfEH, AwSchedaSidebarEH, AwSearchLayoutComponent, AwSearchLayoutConfig, AwSearchLayoutDS, AwSearchLayoutEH, AwSearchLayoutTabsDS, AwSearchLayoutTabsEH, AwSidebarHeaderDS, AwSidebarHeaderEH, AwTableDS, AwTableEH, AwTimelineDS, AwTimelineEH, AwTimelineLayoutComponent, AwTimelineLayoutConfig, AwTimelineLayoutDS, AwTimelineLayoutEH, AwTreeDS, AwTreeEH, BubbleChartWrapperComponent, ChartTippyComponent, N7BoilerplateAriannaModule, PdfViewerComponent, SchedaDropdownComponent, SmartBreadcrumbsComponent };
|
|
7966
|
+
export { AwAutocompleteWrapperDS, AwAutocompleteWrapperEH, AwBubbleChartDS, AwBubbleChartEH, AwCarouselDS, AwChartTippyDS, AwChartTippyEH, AwCollectionLayoutComponent, AwCollectionLayoutConfig, AwCollectionLayoutDS, AwCollectionLayoutEH, AwEntitaLayoutComponent, AwEntitaLayoutConfig, AwEntitaLayoutDS, AwEntitaLayoutEH, AwEntitaMetadataViewerDS, AwEntitaNavDS, AwEntitaNavEH, AwExtendedTreeDS, AwExtendedTreeEH, AwFacetsWrapperComponent, AwFacetsWrapperDS, AwFacetsWrapperEH, AwGalleryLayoutComponent, AwGalleryLayoutConfig, AwGalleryLayoutDS, AwGalleryLayoutEH, AwGalleryResultsDS, AwGalleryResultsEH, AwHeroDS, AwHeroEH, AwHomeAutocompleteDS, AwHomeAutocompleteEH, AwHomeFacetsWrapperDS, AwHomeFacetsWrapperEH, AwHomeHeroPatrimonioDS, AwHomeHeroPatrimonioEH, AwHomeItemTagsWrapperDS, AwHomeItemTagsWrapperEH, AwHomeLayoutComponent, AwHomeLayoutConfig, AwHomeLayoutDS, AwHomeLayoutEH, AwLinkedObjectsDS, AwLinkedObjectsEH, AwMapDS, AwMapEH, AwMapLayoutComponent, AwMapLayoutConfig, AwMapLayoutDS, AwMapLayoutEH, AwPatrimonioLayoutConfig, AwRelatedEntitiesDS, AwSchedaBreadcrumbsDS, AwSchedaDropdownDS, AwSchedaDropdownEH, AwSchedaImageDS, AwSchedaInnerTitleDS, AwSchedaLayoutComponent, AwSchedaLayoutDS, AwSchedaLayoutEH, AwSchedaMetadataDS, AwSchedaPdfDS, AwSchedaPdfEH, AwSchedaSidebarEH, AwSearchLayoutComponent, AwSearchLayoutConfig, AwSearchLayoutDS, AwSearchLayoutEH, AwSearchLayoutTabsDS, AwSearchLayoutTabsEH, AwSidebarHeaderDS, AwSidebarHeaderEH, AwTableDS, AwTableEH, AwTimelineDS, AwTimelineEH, AwTimelineLayoutComponent, AwTimelineLayoutConfig, AwTimelineLayoutDS, AwTimelineLayoutEH, AwTreeDS, AwTreeEH, BubbleChartWrapperComponent, ChartTippyComponent, ExtendedTreeComponent, N7BoilerplateAriannaModule, PdfViewerComponent, SchedaDropdownComponent, SmartBreadcrumbsComponent };
|
|
7520
7967
|
//# sourceMappingURL=net7-boilerplate-arianna.mjs.map
|