@net7/boilerplate-arianna 4.0.0 → 4.2.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.
Files changed (42) hide show
  1. package/esm2020/lib/components/extended-tree/extended-tree.mjs +4 -4
  2. package/esm2020/lib/components/index.mjs +2 -1
  3. package/esm2020/lib/components/scheda-search/scheda-search.mjs +18 -0
  4. package/esm2020/lib/config/apollo.config.mjs +5 -1
  5. package/esm2020/lib/config-types/arianna/layouts.mjs +1 -1
  6. package/esm2020/lib/data-sources/aw-facets-wrapper.ds.mjs +1 -1
  7. package/esm2020/lib/data-sources/extended-tree.ds.mjs +25 -4
  8. package/esm2020/lib/data-sources/home-facets-wrapper.ds.mjs +14 -2
  9. package/esm2020/lib/data-sources/index.mjs +2 -1
  10. package/esm2020/lib/data-sources/scheda-search.ds.mjs +141 -0
  11. package/esm2020/lib/event-handlers/extended-tree.eh.mjs +11 -3
  12. package/esm2020/lib/event-handlers/index.mjs +2 -1
  13. package/esm2020/lib/event-handlers/scheda-search.eh.mjs +15 -0
  14. package/esm2020/lib/layouts/home-layout/home-layout.ds.mjs +5 -1
  15. package/esm2020/lib/layouts/home-layout/home-layout.mjs +3 -3
  16. package/esm2020/lib/layouts/scheda-layout/scheda-layout.config.mjs +2 -1
  17. package/esm2020/lib/layouts/scheda-layout/scheda-layout.ds.mjs +65 -8
  18. package/esm2020/lib/layouts/scheda-layout/scheda-layout.eh.mjs +104 -14
  19. package/esm2020/lib/layouts/scheda-layout/scheda-layout.mjs +4 -3
  20. package/esm2020/lib/n7-boilerplate-arianna.module.mjs +7 -3
  21. package/fesm2015/net7-boilerplate-arianna.mjs +395 -37
  22. package/fesm2015/net7-boilerplate-arianna.mjs.map +1 -1
  23. package/fesm2020/net7-boilerplate-arianna.mjs +404 -37
  24. package/fesm2020/net7-boilerplate-arianna.mjs.map +1 -1
  25. package/lib/components/extended-tree/extended-tree.d.ts +1 -0
  26. package/lib/components/index.d.ts +1 -0
  27. package/lib/components/scheda-search/scheda-search.d.ts +28 -0
  28. package/lib/config-types/arianna/layouts.d.ts +20 -0
  29. package/lib/data-sources/extended-tree.ds.d.ts +7 -1
  30. package/lib/data-sources/home-facets-wrapper.ds.d.ts +1 -0
  31. package/lib/data-sources/index.d.ts +1 -0
  32. package/lib/data-sources/scheda-search.ds.d.ts +9 -0
  33. package/lib/event-handlers/index.d.ts +1 -0
  34. package/lib/event-handlers/scheda-search.eh.d.ts +6 -0
  35. package/lib/layouts/scheda-layout/scheda-layout.ds.d.ts +6 -0
  36. package/lib/layouts/scheda-layout/scheda-layout.eh.d.ts +2 -0
  37. package/lib/n7-boilerplate-arianna.module.d.ts +7 -6
  38. package/package.json +1 -1
  39. package/src/lib/styles/arianna/components/_extended-tree.scss +35 -2
  40. package/src/lib/styles/arianna/components/_scheda-search.scss +119 -0
  41. package/src/lib/styles/arianna/layouts/_home-layout.scss +16 -4
  42. package/src/lib/styles/arianna/layouts/_scheda-layout.scss +5 -2
@@ -11,7 +11,7 @@ import { helpers, AbstractLayout, SmartPaginationDS, SmartPaginationEH, N7Boiler
11
11
  import * as i3$1 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, clone, isNumber, isNull } from 'lodash';
14
+ import { get, merge, max, min, isEmpty, cloneDeep, clone, isNumber, isEqual, isNull } from 'lodash';
15
15
  import tippy from 'tippy.js';
16
16
  import { Subject, interval, merge as merge$1, fromEvent, ReplaySubject, BehaviorSubject, of, forkJoin, timer, from } from 'rxjs';
17
17
  import { filter, first, mapTo, debounceTime, switchMap, withLatestFrom, map, catchError, tap, takeUntil, delay, debounce } from 'rxjs/operators';
@@ -577,7 +577,9 @@ class AwHomeFacetsWrapperDS extends DataSource {
577
577
  this.lastData = data;
578
578
  const headers = [];
579
579
  const inputs = [];
580
+ const links = [];
580
581
  const facetData = data;
582
+ const { pageConfig, paths } = this.options || {};
581
583
  const { lockedFacets } = this; // locked means that the eye cannot be closed
582
584
  const { closedEyes } = this; // list of closed eyes
583
585
  // when facet data changes, destroy every tippy and reset autocomplete data.
@@ -686,9 +688,19 @@ class AwHomeFacetsWrapperDS extends DataSource {
686
688
  },
687
689
  ],
688
690
  });
691
+ if (pageConfig?.['view-all-links']?.enabled) {
692
+ const { label } = pageConfig['view-all-links'];
693
+ links.push({
694
+ label: label || 'Visualizza tutti',
695
+ path: paths.searchBasePath,
696
+ queryParams: {
697
+ 'query-links': facet.type.replace(/ /g, '-')
698
+ }
699
+ });
700
+ }
689
701
  });
690
702
  // zipping arrays to render widgets with separate data (see home-layout.html)
691
- return headers.map((h, i) => ({ header: h, input: inputs[i] }));
703
+ return headers.map((h, i) => ({ header: h, input: inputs[i], link: links[i] || null }));
692
704
  }
693
705
  }
694
706
 
@@ -1287,15 +1299,19 @@ const getNodeIcon = (configKeys, item) => {
1287
1299
  };
1288
1300
  var nodeHelper = { getNodeIcon };
1289
1301
 
1290
- const PAGE_LIMIT = 5;
1302
+ const PAGE_LIMIT$1 = 5;
1303
+ const SEARCH_OPEN_CLASS = 'search-is-open';
1291
1304
  class AwExtendedTreeDS extends DataSource {
1292
1305
  constructor() {
1293
1306
  super(...arguments);
1307
+ this.searchIsOpen = false;
1294
1308
  this.transform = ({ parent, nodes }) => {
1295
1309
  const { totalCount } = nodes;
1296
- const { title, params, basePath, lite, configKeys } = this.options;
1310
+ const { title, params, basePath, lite, configKeys, fallback, } = this.options;
1297
1311
  const page = params.page ? +params.page : 1;
1298
1312
  const limit = params.limit ? +params.limit : 10;
1313
+ this.searchIsOpen = (this.searchIsOpen
1314
+ || (typeof params.query === 'string' && params.query.trim()));
1299
1315
  // header
1300
1316
  const header = {
1301
1317
  title: {
@@ -1310,9 +1326,13 @@ class AwExtendedTreeDS extends DataSource {
1310
1326
  search: {
1311
1327
  placeholder: 'Cerca negli oggetti culturali',
1312
1328
  payload: 'search-input',
1313
- button: null
1329
+ button: {
1330
+ text: '',
1331
+ payload: 'search-button'
1332
+ }
1314
1333
  },
1315
- }
1334
+ },
1335
+ classes: this.searchIsOpen ? SEARCH_OPEN_CLASS : ''
1316
1336
  };
1317
1337
  // items
1318
1338
  const items = (nodes.items || []).map((item) => ({
@@ -1351,6 +1371,7 @@ class AwExtendedTreeDS extends DataSource {
1351
1371
  pagination,
1352
1372
  pageInput,
1353
1373
  limitSelect,
1374
+ fallback: nodes ? fallback : null,
1354
1375
  loading: false,
1355
1376
  };
1356
1377
  };
@@ -1358,6 +1379,18 @@ class AwExtendedTreeDS extends DataSource {
1358
1379
  setLoading(loading) {
1359
1380
  this.output.loading = loading;
1360
1381
  }
1382
+ toggleSearch() {
1383
+ this.searchIsOpen = !this.searchIsOpen;
1384
+ const { header } = this.output;
1385
+ header.classes = this.searchIsOpen ? SEARCH_OPEN_CLASS : '';
1386
+ // trigger focus
1387
+ if (this.searchIsOpen) {
1388
+ setTimeout(() => {
1389
+ const inputEl = document.querySelector('.aw-extended-tree input.n7-inner-title__search-bar');
1390
+ inputEl.focus();
1391
+ }, 500);
1392
+ }
1393
+ }
1361
1394
  getPagination(page, totalCount, limit) {
1362
1395
  const pages = Math.ceil(totalCount / limit);
1363
1396
  return {
@@ -1391,7 +1424,7 @@ class AwExtendedTreeDS extends DataSource {
1391
1424
  getPaginationLinks(page, pages) {
1392
1425
  let firstItem = 1;
1393
1426
  const links = [];
1394
- const limit = PAGE_LIMIT;
1427
+ const limit = PAGE_LIMIT$1;
1395
1428
  let last = limit;
1396
1429
  if (pages > limit) {
1397
1430
  const steps = Math.floor(limit / 2);
@@ -1501,6 +1534,144 @@ class AwSchedaImageNavigatorDS extends DataSource {
1501
1534
  }
1502
1535
  }
1503
1536
 
1537
+ const PAGE_LIMIT = 5;
1538
+ class AwSchedaSearchDS extends DataSource {
1539
+ constructor() {
1540
+ super(...arguments);
1541
+ this.transform = (nodes) => {
1542
+ const { placeholder, title, params, basePath, lite, configKeys, fallback, } = this.options || {};
1543
+ const { totalCount } = nodes || {};
1544
+ const page = params.page ? +params.page : 1;
1545
+ const limit = params.limit ? +params.limit : 10;
1546
+ // header
1547
+ const header = {
1548
+ title: {
1549
+ main: {
1550
+ text: title || 'Cerca nelle Aggregazioni Logiche',
1551
+ }
1552
+ }
1553
+ };
1554
+ // input
1555
+ const input = {
1556
+ id: 'scheda-search-input',
1557
+ placeholder: placeholder || 'Cerca...',
1558
+ icon: 'n7-icon-search',
1559
+ enterPayload: 'input-enter',
1560
+ inputPayload: 'input-change'
1561
+ };
1562
+ // items
1563
+ const items = (nodes?.items || []).map((item) => {
1564
+ // breadcrumbs
1565
+ const breadcrumbs = {
1566
+ items: []
1567
+ };
1568
+ if (item.breadcrumbs) {
1569
+ breadcrumbs.items = item.breadcrumbs.map(({ label, link: href }) => ({
1570
+ label,
1571
+ anchor: { href },
1572
+ }));
1573
+ }
1574
+ return {
1575
+ icon: nodeHelper.getNodeIcon(configKeys, item),
1576
+ thumbnail: lite ? null : item.img,
1577
+ label: item.label,
1578
+ anchor: {
1579
+ href: `${basePath}/${item.id}/${helpers.slugify(item.label)}`
1580
+ },
1581
+ breadcrumbs
1582
+ };
1583
+ });
1584
+ // pagination
1585
+ const pagination = nodes?.items?.length
1586
+ ? this.getPagination(page, totalCount, limit)
1587
+ : null;
1588
+ // results limit select
1589
+ const limitSelect = {
1590
+ id: 'limit-select',
1591
+ label: 'Numero di risultati',
1592
+ options: [10, 25, 50].map((size) => ({
1593
+ label: `${size}`,
1594
+ value: size,
1595
+ selected: size === limit
1596
+ })),
1597
+ payload: 'limit-select',
1598
+ };
1599
+ return {
1600
+ header,
1601
+ input,
1602
+ items,
1603
+ pagination,
1604
+ limitSelect,
1605
+ fallback: nodes ? fallback : null,
1606
+ loading: false,
1607
+ };
1608
+ };
1609
+ }
1610
+ setLoading(loading) {
1611
+ this.output.loading = loading;
1612
+ }
1613
+ getPagination(page, totalCount, limit) {
1614
+ const pages = Math.ceil(totalCount / limit);
1615
+ return {
1616
+ links: this.getPaginationLinks(page, pages),
1617
+ first: {
1618
+ anchor: {
1619
+ payload: 1,
1620
+ },
1621
+ classes: page === 1 ? 'is-disabled' : '',
1622
+ },
1623
+ prev: {
1624
+ anchor: {
1625
+ payload: page === 1 ? 1 : page - 1,
1626
+ },
1627
+ classes: page === 1 ? 'is-disabled' : ''
1628
+ },
1629
+ next: {
1630
+ anchor: {
1631
+ payload: page === pages ? pages : page + 1,
1632
+ },
1633
+ classes: page === pages ? 'is-disabled' : '',
1634
+ },
1635
+ last: {
1636
+ anchor: {
1637
+ payload: pages,
1638
+ },
1639
+ classes: page === pages ? 'is-disabled' : '',
1640
+ }
1641
+ };
1642
+ }
1643
+ getPaginationLinks(page, pages) {
1644
+ let firstItem = 1;
1645
+ const links = [];
1646
+ const limit = PAGE_LIMIT;
1647
+ let last = limit;
1648
+ if (pages > limit) {
1649
+ const steps = Math.floor(limit / 2);
1650
+ if (page > steps) {
1651
+ firstItem = page - steps;
1652
+ }
1653
+ if ((page + steps) > pages) {
1654
+ firstItem = (pages - limit) + 1;
1655
+ }
1656
+ }
1657
+ else {
1658
+ last = pages;
1659
+ }
1660
+ let i;
1661
+ for (i = 0; i < last; i += 1) {
1662
+ const itemPage = firstItem + i;
1663
+ links.push({
1664
+ text: itemPage,
1665
+ classes: itemPage === page ? 'is-disabled' : '',
1666
+ anchor: {
1667
+ payload: itemPage,
1668
+ }
1669
+ });
1670
+ }
1671
+ return links;
1672
+ }
1673
+ }
1674
+
1504
1675
  class AwSearchLayoutTabsDS extends DataSource {
1505
1676
  constructor() {
1506
1677
  super(...arguments);
@@ -2129,6 +2300,7 @@ var DS = /*#__PURE__*/Object.freeze({
2129
2300
  AwTreeDS: AwTreeDS,
2130
2301
  AwExtendedTreeDS: AwExtendedTreeDS,
2131
2302
  AwSchedaImageNavigatorDS: AwSchedaImageNavigatorDS,
2303
+ AwSchedaSearchDS: AwSchedaSearchDS,
2132
2304
  AwSearchLayoutTabsDS: AwSearchLayoutTabsDS,
2133
2305
  AwFacetsWrapperDS: AwFacetsWrapperDS,
2134
2306
  AwGalleryResultsDS: AwGalleryResultsDS,
@@ -2509,10 +2681,18 @@ class AwSchedaPdfEH extends EventHandler {
2509
2681
  class AwExtendedTreeEH extends EventHandler {
2510
2682
  listen() {
2511
2683
  this.innerEvents$.subscribe(({ type, payload }) => {
2512
- // redirect event
2513
- this.emitOuter(type.split('.')[1], payload);
2684
+ if (payload === 'search-button') {
2685
+ this.dataSource.toggleSearch();
2686
+ }
2687
+ else {
2688
+ // redirect event
2689
+ this.emitOuter(type.split('.')[1], payload);
2690
+ }
2514
2691
  });
2515
2692
  this.outerEvents$.subscribe(({ type }) => {
2693
+ if (type === 'aw-scheda-layout.routechanged') {
2694
+ this.dataSource.searchIsOpen = false;
2695
+ }
2516
2696
  if (type === 'aw-scheda-layout.extendedtreerequest') {
2517
2697
  this.dataSource.setLoading(true);
2518
2698
  }
@@ -2537,6 +2717,20 @@ class AwSchedaImageNavigatorEH extends EventHandler {
2537
2717
  }
2538
2718
  }
2539
2719
 
2720
+ class AwSchedaSearchEH extends EventHandler {
2721
+ listen() {
2722
+ this.innerEvents$.subscribe(({ type, payload }) => {
2723
+ // redirect event
2724
+ this.emitOuter(type.split('.')[1], payload);
2725
+ });
2726
+ this.outerEvents$.subscribe(({ type }) => {
2727
+ if (type === 'aw-scheda-layout.schedasearchrequest') {
2728
+ this.dataSource.setLoading(true);
2729
+ }
2730
+ });
2731
+ }
2732
+ }
2733
+
2540
2734
  class AwSearchLayoutTabsEH extends EventHandler {
2541
2735
  listen() {
2542
2736
  // TODO
@@ -2997,6 +3191,7 @@ var EH = /*#__PURE__*/Object.freeze({
2997
3191
  AwSchedaPdfEH: AwSchedaPdfEH,
2998
3192
  AwExtendedTreeEH: AwExtendedTreeEH,
2999
3193
  AwSchedaImageNavigatorEH: AwSchedaImageNavigatorEH,
3194
+ AwSchedaSearchEH: AwSchedaSearchEH,
3000
3195
  AwSearchLayoutTabsEH: AwSearchLayoutTabsEH,
3001
3196
  AwFacetsWrapperEH: AwFacetsWrapperEH,
3002
3197
  AwGalleryResultsEH: AwGalleryResultsEH,
@@ -5431,6 +5626,10 @@ class AwHomeLayoutDS extends LayoutDataSource {
5431
5626
  ...TOEconfigData,
5432
5627
  });
5433
5628
  });
5629
+ this.one('aw-home-facets-wrapper').updateOptions({
5630
+ pageConfig: this.configuration.get('home-layout'),
5631
+ paths: this.configuration.get('paths')
5632
+ });
5434
5633
  this.one('aw-home-facets-wrapper').update(facetData);
5435
5634
  }
5436
5635
  renderPreviewsFromApolloQuery(response) {
@@ -5960,10 +6159,10 @@ class AwHomeLayoutComponent extends AbstractLayout {
5960
6159
  }
5961
6160
  }
5962
6161
  AwHomeLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: AwHomeLayoutComponent, deps: [{ token: i1.LayoutsConfigurationService }, { token: i1$1.Router }, { token: i1.ConfigurationService }, { token: i1.CommunicationService }, { token: i1.MainStateService }], target: i0.ɵɵFactoryTarget.Component });
5963
- AwHomeLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: AwHomeLayoutComponent, selector: "aw-home-layout", usesInheritance: true, ngImport: i0, template: "<div class=\"aw-home\" *ngIf=\"lb.dataSource\">\n <!-- Carousel -->\n <div class=\"aw-home__carousel\" *ngIf=\"lb.dataSource.carouselEnabled\">\n <n7-carousel [data]=\"lb.widgets['aw-carousel'].ds.out$ | async\">\n </n7-carousel>\n </div>\n\n <!-- Hero section at the top of the page -->\n <div class=\"aw-home__top-hero\">\n <n7-hero [data]=\"lb.widgets['aw-hero'].ds.out$ | async\" [emit]=\"lb.widgets['aw-hero'].emit\">\n </n7-hero>\n </div>\n\n <!-- Bubble chart -->\n <div class=\"aw-home__bubble-wrapper n7-side-auto-padding\"\n [ngClass]=\"{ 'has-results' : lb.dataSource.selectedBubbles.length > 0 }\" *ngIf=\"lb.dataSource.bubblesEnabled\">\n <div class=\"aw-home__facets-wrapper-loading\" *ngIf=\"!(lb.widgets['aw-home-facets-wrapper'].ds.out$ | async)\">\n <n7-content-placeholder *ngFor=\"let i of [0,1,2,3]\" [data]=\"{\n blocks: [{\n classes: 'facet-placeholder-header'\n }, {\n classes: 'facet-placeholder-input'\n }] \n }\"></n7-content-placeholder>\n </div>\n <div class=\"aw-home__facets-wrapper\" *ngIf=\"!!(lb.widgets['aw-home-facets-wrapper'].ds.out$ | async)\">\n <span class=\"aw-home__facet\"\n *ngFor=\"let widgetData of lb.widgets['aw-home-facets-wrapper'].ds.out$ | async;\">\n <n7-facet-header [data]=\"widgetData.header\" [emit]=\"lb.widgets['aw-home-facets-wrapper'].emit\">\n </n7-facet-header>\n <n7-facet [data]=\"widgetData.input\" [emit]=\"lb.widgets['aw-home-facets-wrapper'].emit\">\n </n7-facet>\n </span>\n </div>\n\n <div class=\"aw-home__bubble-chart-wrapper-loading\" *ngIf=\"!(lb.widgets['aw-bubble-chart'].ds.out$ | async)\">\n <n7-content-placeholder [data]=\"{\n blocks: [\n {\n classes: 'facet-placeholder-item-1'\n }\n ]\n }\"></n7-content-placeholder>\n </div>\n <div class=\"aw-home__bubble-chart-wrapper\" *ngIf=\"!!(lb.widgets['aw-bubble-chart'].ds.out$ | async)\"\n [style.overflow]=\"lb.dataSource.loadingBubbles ? 'visible' : 'hidden'\">\n <aw-bubble-chart-wrapper>\n <aw-chart-tippy \n [data]=\"lb.widgets['aw-chart-tippy'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-chart-tippy'].emit\">\n </aw-chart-tippy>\n <n7-bubble-chart [data]=\"lb.widgets['aw-bubble-chart'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-bubble-chart'].emit\">\n </n7-bubble-chart>\n </aw-bubble-chart-wrapper>\n </div>\n\n <!-- Linked objects -->\n <ng-container *ngIf=\"(lb.widgets['aw-bubble-chart'].ds.out$ | async)?.selected.length > 0;\">\n <div class=\"aw-home__bubble-results\" id=\"home-bubble-results\">\n <div *ngIf=\"lb.dataSource.numOfItemsStr\" class=\"aw-home__bubble-results-title-wrapper\">\n <h1 class=\"aw-home__bubble-results-title\"><strong class=\"aw-home__bubble-results-title-counter\">\n {{ lb.dataSource.numOfItemsStr }}</strong> <span> Risultati</span>\n </h1>\n </div>\n <div class=\"aw-home__bubble-tags-wrapper\">\n <h3 class=\"aw-home__bubble-tags-title\">Collegati a </h3>\n <ng-container *ngFor=\"let widgetData of lb.widgets['aw-home-item-tags-wrapper'].ds.out$ | async;\">\n <n7-tag [data]=\"widgetData\" [emit]=\"lb.widgets['aw-home-item-tags-wrapper'].emit\">\n </n7-tag>\n <br>\n </ng-container>\n </div>\n <div class=\"aw-home__bubble-results-list-wrapper\">\n <div class=\"aw-home__bubble-results-list-loading\" *ngIf=\"lb.dataSource.resultsListIsLoading\">\n <n7-content-placeholder \n *ngFor=\"let i of [1, 2, 3, 4, 5]\"\n [data]=\"{\n blocks: [{\n classes: 'search-result-placeholder-title'\n }, {\n classes: 'search-result-placeholder-metadata'\n }]\n }\"></n7-content-placeholder>\n </div>\n <div *ngIf=\"!lb.dataSource.resultsListIsLoading\" class=\"aw-home__bubble-results-list\"\n [attr.id]=\"'bubble-results-list'\" (scroll)=\"lb.eventHandler.emitOuter('scroll', $event.target)\">\n\n <div class=\"aw-home__bubble-results-fallback\"\n *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.result.length < 1;\">\n <p class=\"aw-home__bubble-results-fallback-text\">\n {{ (lb.widgets['aw-linked-objects'].ds.out$ | async)?.fallback }}\n </p>\n <button class=\"n7-btn aw-home__bubble-results-reset\"\n (click)=\"lb.eventHandler.emitInner('clearselection')\">\n Resetta la ricerca\n </button>\n </div>\n\n <div class=\"aw-item-preview-list\">\n <ng-container *ngFor=\"let preview of (lb.widgets['aw-linked-objects'].ds.out$ | async)?.result\">\n <div class=\"aw-item-preview-wrapper\">\n <n7-smart-breadcrumbs [data]=\"preview.breadcrumbs\">\n </n7-smart-breadcrumbs>\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 \n <!-- <ng-container\n *ngFor=\"let widgetData of (lb.widgets['aw-linked-objects'].ds.out$ | async)?.result;\">\n <n7-item-preview [data]=\"widgetData\" [emit]=\"lb.widgets['aw-linked-objects'].emit\">\n </n7-item-preview>\n </ng-container> -->\n\n <ng-container *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.isLoading\">\n <div class=\"aw-home__bubble-results-list-loader\">\n <n7-loader [data]=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.loaderData\">\n </n7-loader>\n </div>\n </ng-container>\n </div>\n <div [ngClass]=\"{ 'is-visible' : lb.dataSource.hasScrollBackground }\"\n class=\"aw-home__bubble-results-list-wrapper-with-scroll\"></div>\n </div>\n <!-- aw-linked-objects__actions -->\n <ng-container\n *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.result.length > 0 && !lb.dataSource.resultsListIsLoading\">\n <div *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.actions as action\"\n class=\"aw-home__bubble-results-list-actions\">\n <button (click)=\"lb.eventHandler.emitInner('bubbleresultsviewallclick')\"\n class=\"n7-btn n7-btn-light n7-btn-l aw-home__bubble-results-list-view-all\">\n {{action[0].label}}\n </button>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n\n <!-- Outer links -->\n <div *ngIf=\"lb.dataSource.outerLinks && lb.dataSource.outerLinks.length > 0\" class=\"aw-home__outer-links\">\n <section class=\"aw-home__outer-links-wrapper n7-side-auto-padding\">\n <h2 class=\"aw-home__outer-links-title\" *ngIf=\"lb.dataSource.outerLinksTitle\">\n {{ lb.dataSource.outerLinksTitle }}\n </h2>\n <p class=\"aw-home__outer-links-description\" *ngIf=\"lb.dataSource.outerLinksDescription\">\n {{ lb.dataSource.outerLinksDescription }}\n </p>\n <div class=\"aw-home__outer-links-items\">\n <!-- Item preview -->\n <n7-item-preview *ngFor=\"let outerLink of lb.dataSource.outerLinks\" [data]=\"outerLink\"\n [emit]=\"lb.eventHandler.outerLinkClick.bind(lb.eventHandler)\">\n </n7-item-preview>\n <!-- END // Item preview -->\n </div>\n </section>\n </div>\n <!-- END // Outer links -->\n\n <!-- Hero section at the bottom of the page -->\n <div class=\"aw-home__bottom-hero\">\n <n7-hero [data]=\"lb.widgets['aw-home-hero-patrimonio'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-home-hero-patrimonio'].emit\">\n </n7-hero>\n </div>\n\n <!-- Adavanced autocomplete popover -->\n <div class=\"aw-home__advanced-autocomplete\" id=\"aw-home-advanced-autocomplete-popover\" style=\"display: none;\">\n <div class=\"aw-home__advanced-autocomplete-loader\" *ngIf=\"lb.dataSource.homeAutocompleteIsLoading\">\n <n7-loader [data]=\"{}\"></n7-loader>\n </div>\n <n7-advanced-autocomplete *ngIf=\"!lb.dataSource.homeAutocompleteIsLoading\"\n [data]=\"lb.widgets['aw-home-autocomplete'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-home-autocomplete'].emit\">\n </n7-advanced-autocomplete>\n </div>\n\n <!-- Simple autocomplete popover. DO NOT CHANGE parent div class! -->\n <!-- Creating one template for each facet -->\n <div *ngFor=\"let widgetData of lb.widgets['aw-home-facets-wrapper'].ds.out$ | async;\"\n class=\"aw-home__simple-autocomplete aw-simple-autocomplete__template\" style=\"display: none;\">\n <div class=\"aw-home__simple-autocomplete-content aw-simple-autocomplete__tippy-wrapper\">\n <div class=\"aw-home__simple-autocomplete-loader aw-simple-autocomplete__tippy-wrapper-loader\"\n *ngIf=\"(lb.widgets['aw-autocomplete-wrapper'].ds.out$ | async)?.loading\">\n <n7-loader [data]=\"{}\"></n7-loader>\n </div>\n <n7-simple-autocomplete *ngIf=\"!(lb.widgets['aw-autocomplete-wrapper'].ds.out$ | async)?.loading\"\n [data]=\"lb.widgets['aw-autocomplete-wrapper'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-autocomplete-wrapper'].emit\">\n </n7-simple-autocomplete>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4$1.AdvancedAutocompleteComponent, selector: "n7-advanced-autocomplete", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.BubbleChartComponent, selector: "n7-bubble-chart", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.CarouselComponent, selector: "n7-carousel", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.ContentPlaceholderComponent, selector: "n7-content-placeholder", inputs: ["data"] }, { kind: "component", type: i4$1.FacetComponent, selector: "n7-facet", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.FacetHeaderComponent, selector: "n7-facet-header", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.HeroComponent, selector: "n7-hero", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.ItemPreviewComponent, selector: "n7-item-preview", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.LoaderComponent, selector: "n7-loader", inputs: ["data"] }, { kind: "component", type: i4$1.SimpleAutocompleteComponent, selector: "n7-simple-autocomplete", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.TagComponent, selector: "n7-tag", inputs: ["data", "emit"] }, { kind: "component", type: BubbleChartWrapperComponent, selector: "aw-bubble-chart-wrapper", inputs: ["emit", "container", "buttons"] }, { kind: "component", type: ChartTippyComponent, selector: "aw-chart-tippy", inputs: ["data", "emit", "anchorData"] }, { kind: "component", type: SmartBreadcrumbsComponent, selector: "n7-smart-breadcrumbs", inputs: ["data", "emit"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }] });
6162
+ AwHomeLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: AwHomeLayoutComponent, selector: "aw-home-layout", usesInheritance: true, ngImport: i0, template: "<div class=\"aw-home\" *ngIf=\"lb.dataSource\">\n <!-- Carousel -->\n <div class=\"aw-home__carousel\" *ngIf=\"lb.dataSource.carouselEnabled\">\n <n7-carousel [data]=\"lb.widgets['aw-carousel'].ds.out$ | async\">\n </n7-carousel>\n </div>\n\n <!-- Hero section at the top of the page -->\n <div class=\"aw-home__top-hero\">\n <n7-hero [data]=\"lb.widgets['aw-hero'].ds.out$ | async\" [emit]=\"lb.widgets['aw-hero'].emit\">\n </n7-hero>\n </div>\n\n <!-- Bubble chart -->\n <div class=\"aw-home__bubble-wrapper n7-side-auto-padding\"\n [ngClass]=\"{ 'has-results' : lb.dataSource.selectedBubbles.length > 0 }\" *ngIf=\"lb.dataSource.bubblesEnabled\">\n <div class=\"aw-home__facets-wrapper-loading\" *ngIf=\"!(lb.widgets['aw-home-facets-wrapper'].ds.out$ | async)\">\n <n7-content-placeholder *ngFor=\"let i of [0,1,2,3]\" [data]=\"{\n blocks: [{\n classes: 'facet-placeholder-header'\n }, {\n classes: 'facet-placeholder-input'\n }] \n }\"></n7-content-placeholder>\n </div>\n <div class=\"aw-home__facets-wrapper\" *ngIf=\"!!(lb.widgets['aw-home-facets-wrapper'].ds.out$ | async)\">\n <span class=\"aw-home__facet\"\n *ngFor=\"let widgetData of lb.widgets['aw-home-facets-wrapper'].ds.out$ | async;\">\n <n7-facet-header [data]=\"widgetData.header\" [emit]=\"lb.widgets['aw-home-facets-wrapper'].emit\">\n </n7-facet-header>\n <a *ngIf=\"widgetData.link as link\" class=\"aw-home__facet-link n7-btn\"\n [routerLink]=\"[link.path]\" [queryParams]=\"link.queryParams\">\n <span class=\"n7-icon n7-icon-list\"></span>\n <span class=\"aw-home__facet-link-label\">{{ link.label }}</span>\n </a>\n <n7-facet [data]=\"widgetData.input\" [emit]=\"lb.widgets['aw-home-facets-wrapper'].emit\">\n </n7-facet>\n </span>\n </div>\n\n <div class=\"aw-home__bubble-chart-wrapper-loading\" *ngIf=\"!(lb.widgets['aw-bubble-chart'].ds.out$ | async)\">\n <n7-content-placeholder [data]=\"{\n blocks: [\n {\n classes: 'facet-placeholder-item-1'\n }\n ]\n }\"></n7-content-placeholder>\n </div>\n <div class=\"aw-home__bubble-chart-wrapper\" *ngIf=\"!!(lb.widgets['aw-bubble-chart'].ds.out$ | async)\"\n [style.overflow]=\"lb.dataSource.loadingBubbles ? 'visible' : 'hidden'\">\n <aw-bubble-chart-wrapper>\n <aw-chart-tippy \n [data]=\"lb.widgets['aw-chart-tippy'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-chart-tippy'].emit\">\n </aw-chart-tippy>\n <n7-bubble-chart [data]=\"lb.widgets['aw-bubble-chart'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-bubble-chart'].emit\">\n </n7-bubble-chart>\n </aw-bubble-chart-wrapper>\n </div>\n\n <!-- Linked objects -->\n <ng-container *ngIf=\"(lb.widgets['aw-bubble-chart'].ds.out$ | async)?.selected.length > 0;\">\n <div class=\"aw-home__bubble-results\" id=\"home-bubble-results\">\n <div *ngIf=\"lb.dataSource.numOfItemsStr\" class=\"aw-home__bubble-results-title-wrapper\">\n <h1 class=\"aw-home__bubble-results-title\"><strong class=\"aw-home__bubble-results-title-counter\">\n {{ lb.dataSource.numOfItemsStr }}</strong> <span> Risultati</span>\n </h1>\n </div>\n <div class=\"aw-home__bubble-tags-wrapper\">\n <h3 class=\"aw-home__bubble-tags-title\">Collegati a </h3>\n <ng-container *ngFor=\"let widgetData of lb.widgets['aw-home-item-tags-wrapper'].ds.out$ | async;\">\n <n7-tag [data]=\"widgetData\" [emit]=\"lb.widgets['aw-home-item-tags-wrapper'].emit\">\n </n7-tag>\n <br>\n </ng-container>\n </div>\n <div class=\"aw-home__bubble-results-list-wrapper\">\n <div class=\"aw-home__bubble-results-list-loading\" *ngIf=\"lb.dataSource.resultsListIsLoading\">\n <n7-content-placeholder \n *ngFor=\"let i of [1, 2, 3, 4, 5]\"\n [data]=\"{\n blocks: [{\n classes: 'search-result-placeholder-title'\n }, {\n classes: 'search-result-placeholder-metadata'\n }]\n }\"></n7-content-placeholder>\n </div>\n <div *ngIf=\"!lb.dataSource.resultsListIsLoading\" class=\"aw-home__bubble-results-list\"\n [attr.id]=\"'bubble-results-list'\" (scroll)=\"lb.eventHandler.emitOuter('scroll', $event.target)\">\n\n <div class=\"aw-home__bubble-results-fallback\"\n *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.result.length < 1;\">\n <p class=\"aw-home__bubble-results-fallback-text\">\n {{ (lb.widgets['aw-linked-objects'].ds.out$ | async)?.fallback }}\n </p>\n <button class=\"n7-btn aw-home__bubble-results-reset\"\n (click)=\"lb.eventHandler.emitInner('clearselection')\">\n Resetta la ricerca\n </button>\n </div>\n\n <div class=\"aw-item-preview-list\">\n <ng-container *ngFor=\"let preview of (lb.widgets['aw-linked-objects'].ds.out$ | async)?.result\">\n <div class=\"aw-item-preview-wrapper\">\n <n7-smart-breadcrumbs [data]=\"preview.breadcrumbs\">\n </n7-smart-breadcrumbs>\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 \n <!-- <ng-container\n *ngFor=\"let widgetData of (lb.widgets['aw-linked-objects'].ds.out$ | async)?.result;\">\n <n7-item-preview [data]=\"widgetData\" [emit]=\"lb.widgets['aw-linked-objects'].emit\">\n </n7-item-preview>\n </ng-container> -->\n\n <ng-container *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.isLoading\">\n <div class=\"aw-home__bubble-results-list-loader\">\n <n7-loader [data]=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.loaderData\">\n </n7-loader>\n </div>\n </ng-container>\n </div>\n <div [ngClass]=\"{ 'is-visible' : lb.dataSource.hasScrollBackground }\"\n class=\"aw-home__bubble-results-list-wrapper-with-scroll\"></div>\n </div>\n <!-- aw-linked-objects__actions -->\n <ng-container\n *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.result.length > 0 && !lb.dataSource.resultsListIsLoading\">\n <div *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.actions as action\"\n class=\"aw-home__bubble-results-list-actions\">\n <button (click)=\"lb.eventHandler.emitInner('bubbleresultsviewallclick')\"\n class=\"n7-btn n7-btn-light n7-btn-l aw-home__bubble-results-list-view-all\">\n {{action[0].label}}\n </button>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n\n <!-- Outer links -->\n <div *ngIf=\"lb.dataSource.outerLinks && lb.dataSource.outerLinks.length > 0\" class=\"aw-home__outer-links\">\n <section class=\"aw-home__outer-links-wrapper n7-side-auto-padding\">\n <h2 class=\"aw-home__outer-links-title\" *ngIf=\"lb.dataSource.outerLinksTitle\">\n {{ lb.dataSource.outerLinksTitle }}\n </h2>\n <p class=\"aw-home__outer-links-description\" *ngIf=\"lb.dataSource.outerLinksDescription\">\n {{ lb.dataSource.outerLinksDescription }}\n </p>\n <div class=\"aw-home__outer-links-items\">\n <!-- Item preview -->\n <n7-item-preview *ngFor=\"let outerLink of lb.dataSource.outerLinks\" [data]=\"outerLink\"\n [emit]=\"lb.eventHandler.outerLinkClick.bind(lb.eventHandler)\">\n </n7-item-preview>\n <!-- END // Item preview -->\n </div>\n </section>\n </div>\n <!-- END // Outer links -->\n\n <!-- Hero section at the bottom of the page -->\n <div class=\"aw-home__bottom-hero\">\n <n7-hero [data]=\"lb.widgets['aw-home-hero-patrimonio'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-home-hero-patrimonio'].emit\">\n </n7-hero>\n </div>\n\n <!-- Adavanced autocomplete popover -->\n <div class=\"aw-home__advanced-autocomplete\" id=\"aw-home-advanced-autocomplete-popover\" style=\"display: none;\">\n <div class=\"aw-home__advanced-autocomplete-loader\" *ngIf=\"lb.dataSource.homeAutocompleteIsLoading\">\n <n7-loader [data]=\"{}\"></n7-loader>\n </div>\n <n7-advanced-autocomplete *ngIf=\"!lb.dataSource.homeAutocompleteIsLoading\"\n [data]=\"lb.widgets['aw-home-autocomplete'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-home-autocomplete'].emit\">\n </n7-advanced-autocomplete>\n </div>\n\n <!-- Simple autocomplete popover. DO NOT CHANGE parent div class! -->\n <!-- Creating one template for each facet -->\n <div *ngFor=\"let widgetData of lb.widgets['aw-home-facets-wrapper'].ds.out$ | async;\"\n class=\"aw-home__simple-autocomplete aw-simple-autocomplete__template\" style=\"display: none;\">\n <div class=\"aw-home__simple-autocomplete-content aw-simple-autocomplete__tippy-wrapper\">\n <div class=\"aw-home__simple-autocomplete-loader aw-simple-autocomplete__tippy-wrapper-loader\"\n *ngIf=\"(lb.widgets['aw-autocomplete-wrapper'].ds.out$ | async)?.loading\">\n <n7-loader [data]=\"{}\"></n7-loader>\n </div>\n <n7-simple-autocomplete *ngIf=\"!(lb.widgets['aw-autocomplete-wrapper'].ds.out$ | async)?.loading\"\n [data]=\"lb.widgets['aw-autocomplete-wrapper'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-autocomplete-wrapper'].emit\">\n </n7-simple-autocomplete>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i4$1.AdvancedAutocompleteComponent, selector: "n7-advanced-autocomplete", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.BubbleChartComponent, selector: "n7-bubble-chart", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.CarouselComponent, selector: "n7-carousel", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.ContentPlaceholderComponent, selector: "n7-content-placeholder", inputs: ["data"] }, { kind: "component", type: i4$1.FacetComponent, selector: "n7-facet", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.FacetHeaderComponent, selector: "n7-facet-header", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.HeroComponent, selector: "n7-hero", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.ItemPreviewComponent, selector: "n7-item-preview", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.LoaderComponent, selector: "n7-loader", inputs: ["data"] }, { kind: "component", type: i4$1.SimpleAutocompleteComponent, selector: "n7-simple-autocomplete", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.TagComponent, selector: "n7-tag", inputs: ["data", "emit"] }, { kind: "component", type: BubbleChartWrapperComponent, selector: "aw-bubble-chart-wrapper", inputs: ["emit", "container", "buttons"] }, { kind: "component", type: ChartTippyComponent, selector: "aw-chart-tippy", inputs: ["data", "emit", "anchorData"] }, { kind: "component", type: SmartBreadcrumbsComponent, selector: "n7-smart-breadcrumbs", inputs: ["data", "emit"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }] });
5964
6163
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: AwHomeLayoutComponent, decorators: [{
5965
6164
  type: Component,
5966
- args: [{ selector: 'aw-home-layout', template: "<div class=\"aw-home\" *ngIf=\"lb.dataSource\">\n <!-- Carousel -->\n <div class=\"aw-home__carousel\" *ngIf=\"lb.dataSource.carouselEnabled\">\n <n7-carousel [data]=\"lb.widgets['aw-carousel'].ds.out$ | async\">\n </n7-carousel>\n </div>\n\n <!-- Hero section at the top of the page -->\n <div class=\"aw-home__top-hero\">\n <n7-hero [data]=\"lb.widgets['aw-hero'].ds.out$ | async\" [emit]=\"lb.widgets['aw-hero'].emit\">\n </n7-hero>\n </div>\n\n <!-- Bubble chart -->\n <div class=\"aw-home__bubble-wrapper n7-side-auto-padding\"\n [ngClass]=\"{ 'has-results' : lb.dataSource.selectedBubbles.length > 0 }\" *ngIf=\"lb.dataSource.bubblesEnabled\">\n <div class=\"aw-home__facets-wrapper-loading\" *ngIf=\"!(lb.widgets['aw-home-facets-wrapper'].ds.out$ | async)\">\n <n7-content-placeholder *ngFor=\"let i of [0,1,2,3]\" [data]=\"{\n blocks: [{\n classes: 'facet-placeholder-header'\n }, {\n classes: 'facet-placeholder-input'\n }] \n }\"></n7-content-placeholder>\n </div>\n <div class=\"aw-home__facets-wrapper\" *ngIf=\"!!(lb.widgets['aw-home-facets-wrapper'].ds.out$ | async)\">\n <span class=\"aw-home__facet\"\n *ngFor=\"let widgetData of lb.widgets['aw-home-facets-wrapper'].ds.out$ | async;\">\n <n7-facet-header [data]=\"widgetData.header\" [emit]=\"lb.widgets['aw-home-facets-wrapper'].emit\">\n </n7-facet-header>\n <n7-facet [data]=\"widgetData.input\" [emit]=\"lb.widgets['aw-home-facets-wrapper'].emit\">\n </n7-facet>\n </span>\n </div>\n\n <div class=\"aw-home__bubble-chart-wrapper-loading\" *ngIf=\"!(lb.widgets['aw-bubble-chart'].ds.out$ | async)\">\n <n7-content-placeholder [data]=\"{\n blocks: [\n {\n classes: 'facet-placeholder-item-1'\n }\n ]\n }\"></n7-content-placeholder>\n </div>\n <div class=\"aw-home__bubble-chart-wrapper\" *ngIf=\"!!(lb.widgets['aw-bubble-chart'].ds.out$ | async)\"\n [style.overflow]=\"lb.dataSource.loadingBubbles ? 'visible' : 'hidden'\">\n <aw-bubble-chart-wrapper>\n <aw-chart-tippy \n [data]=\"lb.widgets['aw-chart-tippy'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-chart-tippy'].emit\">\n </aw-chart-tippy>\n <n7-bubble-chart [data]=\"lb.widgets['aw-bubble-chart'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-bubble-chart'].emit\">\n </n7-bubble-chart>\n </aw-bubble-chart-wrapper>\n </div>\n\n <!-- Linked objects -->\n <ng-container *ngIf=\"(lb.widgets['aw-bubble-chart'].ds.out$ | async)?.selected.length > 0;\">\n <div class=\"aw-home__bubble-results\" id=\"home-bubble-results\">\n <div *ngIf=\"lb.dataSource.numOfItemsStr\" class=\"aw-home__bubble-results-title-wrapper\">\n <h1 class=\"aw-home__bubble-results-title\"><strong class=\"aw-home__bubble-results-title-counter\">\n {{ lb.dataSource.numOfItemsStr }}</strong> <span> Risultati</span>\n </h1>\n </div>\n <div class=\"aw-home__bubble-tags-wrapper\">\n <h3 class=\"aw-home__bubble-tags-title\">Collegati a </h3>\n <ng-container *ngFor=\"let widgetData of lb.widgets['aw-home-item-tags-wrapper'].ds.out$ | async;\">\n <n7-tag [data]=\"widgetData\" [emit]=\"lb.widgets['aw-home-item-tags-wrapper'].emit\">\n </n7-tag>\n <br>\n </ng-container>\n </div>\n <div class=\"aw-home__bubble-results-list-wrapper\">\n <div class=\"aw-home__bubble-results-list-loading\" *ngIf=\"lb.dataSource.resultsListIsLoading\">\n <n7-content-placeholder \n *ngFor=\"let i of [1, 2, 3, 4, 5]\"\n [data]=\"{\n blocks: [{\n classes: 'search-result-placeholder-title'\n }, {\n classes: 'search-result-placeholder-metadata'\n }]\n }\"></n7-content-placeholder>\n </div>\n <div *ngIf=\"!lb.dataSource.resultsListIsLoading\" class=\"aw-home__bubble-results-list\"\n [attr.id]=\"'bubble-results-list'\" (scroll)=\"lb.eventHandler.emitOuter('scroll', $event.target)\">\n\n <div class=\"aw-home__bubble-results-fallback\"\n *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.result.length < 1;\">\n <p class=\"aw-home__bubble-results-fallback-text\">\n {{ (lb.widgets['aw-linked-objects'].ds.out$ | async)?.fallback }}\n </p>\n <button class=\"n7-btn aw-home__bubble-results-reset\"\n (click)=\"lb.eventHandler.emitInner('clearselection')\">\n Resetta la ricerca\n </button>\n </div>\n\n <div class=\"aw-item-preview-list\">\n <ng-container *ngFor=\"let preview of (lb.widgets['aw-linked-objects'].ds.out$ | async)?.result\">\n <div class=\"aw-item-preview-wrapper\">\n <n7-smart-breadcrumbs [data]=\"preview.breadcrumbs\">\n </n7-smart-breadcrumbs>\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 \n <!-- <ng-container\n *ngFor=\"let widgetData of (lb.widgets['aw-linked-objects'].ds.out$ | async)?.result;\">\n <n7-item-preview [data]=\"widgetData\" [emit]=\"lb.widgets['aw-linked-objects'].emit\">\n </n7-item-preview>\n </ng-container> -->\n\n <ng-container *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.isLoading\">\n <div class=\"aw-home__bubble-results-list-loader\">\n <n7-loader [data]=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.loaderData\">\n </n7-loader>\n </div>\n </ng-container>\n </div>\n <div [ngClass]=\"{ 'is-visible' : lb.dataSource.hasScrollBackground }\"\n class=\"aw-home__bubble-results-list-wrapper-with-scroll\"></div>\n </div>\n <!-- aw-linked-objects__actions -->\n <ng-container\n *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.result.length > 0 && !lb.dataSource.resultsListIsLoading\">\n <div *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.actions as action\"\n class=\"aw-home__bubble-results-list-actions\">\n <button (click)=\"lb.eventHandler.emitInner('bubbleresultsviewallclick')\"\n class=\"n7-btn n7-btn-light n7-btn-l aw-home__bubble-results-list-view-all\">\n {{action[0].label}}\n </button>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n\n <!-- Outer links -->\n <div *ngIf=\"lb.dataSource.outerLinks && lb.dataSource.outerLinks.length > 0\" class=\"aw-home__outer-links\">\n <section class=\"aw-home__outer-links-wrapper n7-side-auto-padding\">\n <h2 class=\"aw-home__outer-links-title\" *ngIf=\"lb.dataSource.outerLinksTitle\">\n {{ lb.dataSource.outerLinksTitle }}\n </h2>\n <p class=\"aw-home__outer-links-description\" *ngIf=\"lb.dataSource.outerLinksDescription\">\n {{ lb.dataSource.outerLinksDescription }}\n </p>\n <div class=\"aw-home__outer-links-items\">\n <!-- Item preview -->\n <n7-item-preview *ngFor=\"let outerLink of lb.dataSource.outerLinks\" [data]=\"outerLink\"\n [emit]=\"lb.eventHandler.outerLinkClick.bind(lb.eventHandler)\">\n </n7-item-preview>\n <!-- END // Item preview -->\n </div>\n </section>\n </div>\n <!-- END // Outer links -->\n\n <!-- Hero section at the bottom of the page -->\n <div class=\"aw-home__bottom-hero\">\n <n7-hero [data]=\"lb.widgets['aw-home-hero-patrimonio'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-home-hero-patrimonio'].emit\">\n </n7-hero>\n </div>\n\n <!-- Adavanced autocomplete popover -->\n <div class=\"aw-home__advanced-autocomplete\" id=\"aw-home-advanced-autocomplete-popover\" style=\"display: none;\">\n <div class=\"aw-home__advanced-autocomplete-loader\" *ngIf=\"lb.dataSource.homeAutocompleteIsLoading\">\n <n7-loader [data]=\"{}\"></n7-loader>\n </div>\n <n7-advanced-autocomplete *ngIf=\"!lb.dataSource.homeAutocompleteIsLoading\"\n [data]=\"lb.widgets['aw-home-autocomplete'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-home-autocomplete'].emit\">\n </n7-advanced-autocomplete>\n </div>\n\n <!-- Simple autocomplete popover. DO NOT CHANGE parent div class! -->\n <!-- Creating one template for each facet -->\n <div *ngFor=\"let widgetData of lb.widgets['aw-home-facets-wrapper'].ds.out$ | async;\"\n class=\"aw-home__simple-autocomplete aw-simple-autocomplete__template\" style=\"display: none;\">\n <div class=\"aw-home__simple-autocomplete-content aw-simple-autocomplete__tippy-wrapper\">\n <div class=\"aw-home__simple-autocomplete-loader aw-simple-autocomplete__tippy-wrapper-loader\"\n *ngIf=\"(lb.widgets['aw-autocomplete-wrapper'].ds.out$ | async)?.loading\">\n <n7-loader [data]=\"{}\"></n7-loader>\n </div>\n <n7-simple-autocomplete *ngIf=\"!(lb.widgets['aw-autocomplete-wrapper'].ds.out$ | async)?.loading\"\n [data]=\"lb.widgets['aw-autocomplete-wrapper'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-autocomplete-wrapper'].emit\">\n </n7-simple-autocomplete>\n </div>\n </div>\n</div>\n" }]
6165
+ args: [{ selector: 'aw-home-layout', template: "<div class=\"aw-home\" *ngIf=\"lb.dataSource\">\n <!-- Carousel -->\n <div class=\"aw-home__carousel\" *ngIf=\"lb.dataSource.carouselEnabled\">\n <n7-carousel [data]=\"lb.widgets['aw-carousel'].ds.out$ | async\">\n </n7-carousel>\n </div>\n\n <!-- Hero section at the top of the page -->\n <div class=\"aw-home__top-hero\">\n <n7-hero [data]=\"lb.widgets['aw-hero'].ds.out$ | async\" [emit]=\"lb.widgets['aw-hero'].emit\">\n </n7-hero>\n </div>\n\n <!-- Bubble chart -->\n <div class=\"aw-home__bubble-wrapper n7-side-auto-padding\"\n [ngClass]=\"{ 'has-results' : lb.dataSource.selectedBubbles.length > 0 }\" *ngIf=\"lb.dataSource.bubblesEnabled\">\n <div class=\"aw-home__facets-wrapper-loading\" *ngIf=\"!(lb.widgets['aw-home-facets-wrapper'].ds.out$ | async)\">\n <n7-content-placeholder *ngFor=\"let i of [0,1,2,3]\" [data]=\"{\n blocks: [{\n classes: 'facet-placeholder-header'\n }, {\n classes: 'facet-placeholder-input'\n }] \n }\"></n7-content-placeholder>\n </div>\n <div class=\"aw-home__facets-wrapper\" *ngIf=\"!!(lb.widgets['aw-home-facets-wrapper'].ds.out$ | async)\">\n <span class=\"aw-home__facet\"\n *ngFor=\"let widgetData of lb.widgets['aw-home-facets-wrapper'].ds.out$ | async;\">\n <n7-facet-header [data]=\"widgetData.header\" [emit]=\"lb.widgets['aw-home-facets-wrapper'].emit\">\n </n7-facet-header>\n <a *ngIf=\"widgetData.link as link\" class=\"aw-home__facet-link n7-btn\"\n [routerLink]=\"[link.path]\" [queryParams]=\"link.queryParams\">\n <span class=\"n7-icon n7-icon-list\"></span>\n <span class=\"aw-home__facet-link-label\">{{ link.label }}</span>\n </a>\n <n7-facet [data]=\"widgetData.input\" [emit]=\"lb.widgets['aw-home-facets-wrapper'].emit\">\n </n7-facet>\n </span>\n </div>\n\n <div class=\"aw-home__bubble-chart-wrapper-loading\" *ngIf=\"!(lb.widgets['aw-bubble-chart'].ds.out$ | async)\">\n <n7-content-placeholder [data]=\"{\n blocks: [\n {\n classes: 'facet-placeholder-item-1'\n }\n ]\n }\"></n7-content-placeholder>\n </div>\n <div class=\"aw-home__bubble-chart-wrapper\" *ngIf=\"!!(lb.widgets['aw-bubble-chart'].ds.out$ | async)\"\n [style.overflow]=\"lb.dataSource.loadingBubbles ? 'visible' : 'hidden'\">\n <aw-bubble-chart-wrapper>\n <aw-chart-tippy \n [data]=\"lb.widgets['aw-chart-tippy'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-chart-tippy'].emit\">\n </aw-chart-tippy>\n <n7-bubble-chart [data]=\"lb.widgets['aw-bubble-chart'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-bubble-chart'].emit\">\n </n7-bubble-chart>\n </aw-bubble-chart-wrapper>\n </div>\n\n <!-- Linked objects -->\n <ng-container *ngIf=\"(lb.widgets['aw-bubble-chart'].ds.out$ | async)?.selected.length > 0;\">\n <div class=\"aw-home__bubble-results\" id=\"home-bubble-results\">\n <div *ngIf=\"lb.dataSource.numOfItemsStr\" class=\"aw-home__bubble-results-title-wrapper\">\n <h1 class=\"aw-home__bubble-results-title\"><strong class=\"aw-home__bubble-results-title-counter\">\n {{ lb.dataSource.numOfItemsStr }}</strong> <span> Risultati</span>\n </h1>\n </div>\n <div class=\"aw-home__bubble-tags-wrapper\">\n <h3 class=\"aw-home__bubble-tags-title\">Collegati a </h3>\n <ng-container *ngFor=\"let widgetData of lb.widgets['aw-home-item-tags-wrapper'].ds.out$ | async;\">\n <n7-tag [data]=\"widgetData\" [emit]=\"lb.widgets['aw-home-item-tags-wrapper'].emit\">\n </n7-tag>\n <br>\n </ng-container>\n </div>\n <div class=\"aw-home__bubble-results-list-wrapper\">\n <div class=\"aw-home__bubble-results-list-loading\" *ngIf=\"lb.dataSource.resultsListIsLoading\">\n <n7-content-placeholder \n *ngFor=\"let i of [1, 2, 3, 4, 5]\"\n [data]=\"{\n blocks: [{\n classes: 'search-result-placeholder-title'\n }, {\n classes: 'search-result-placeholder-metadata'\n }]\n }\"></n7-content-placeholder>\n </div>\n <div *ngIf=\"!lb.dataSource.resultsListIsLoading\" class=\"aw-home__bubble-results-list\"\n [attr.id]=\"'bubble-results-list'\" (scroll)=\"lb.eventHandler.emitOuter('scroll', $event.target)\">\n\n <div class=\"aw-home__bubble-results-fallback\"\n *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.result.length < 1;\">\n <p class=\"aw-home__bubble-results-fallback-text\">\n {{ (lb.widgets['aw-linked-objects'].ds.out$ | async)?.fallback }}\n </p>\n <button class=\"n7-btn aw-home__bubble-results-reset\"\n (click)=\"lb.eventHandler.emitInner('clearselection')\">\n Resetta la ricerca\n </button>\n </div>\n\n <div class=\"aw-item-preview-list\">\n <ng-container *ngFor=\"let preview of (lb.widgets['aw-linked-objects'].ds.out$ | async)?.result\">\n <div class=\"aw-item-preview-wrapper\">\n <n7-smart-breadcrumbs [data]=\"preview.breadcrumbs\">\n </n7-smart-breadcrumbs>\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 \n <!-- <ng-container\n *ngFor=\"let widgetData of (lb.widgets['aw-linked-objects'].ds.out$ | async)?.result;\">\n <n7-item-preview [data]=\"widgetData\" [emit]=\"lb.widgets['aw-linked-objects'].emit\">\n </n7-item-preview>\n </ng-container> -->\n\n <ng-container *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.isLoading\">\n <div class=\"aw-home__bubble-results-list-loader\">\n <n7-loader [data]=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.loaderData\">\n </n7-loader>\n </div>\n </ng-container>\n </div>\n <div [ngClass]=\"{ 'is-visible' : lb.dataSource.hasScrollBackground }\"\n class=\"aw-home__bubble-results-list-wrapper-with-scroll\"></div>\n </div>\n <!-- aw-linked-objects__actions -->\n <ng-container\n *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.result.length > 0 && !lb.dataSource.resultsListIsLoading\">\n <div *ngIf=\"(lb.widgets['aw-linked-objects'].ds.out$ | async)?.actions as action\"\n class=\"aw-home__bubble-results-list-actions\">\n <button (click)=\"lb.eventHandler.emitInner('bubbleresultsviewallclick')\"\n class=\"n7-btn n7-btn-light n7-btn-l aw-home__bubble-results-list-view-all\">\n {{action[0].label}}\n </button>\n </div>\n </ng-container>\n </div>\n </ng-container>\n </div>\n\n <!-- Outer links -->\n <div *ngIf=\"lb.dataSource.outerLinks && lb.dataSource.outerLinks.length > 0\" class=\"aw-home__outer-links\">\n <section class=\"aw-home__outer-links-wrapper n7-side-auto-padding\">\n <h2 class=\"aw-home__outer-links-title\" *ngIf=\"lb.dataSource.outerLinksTitle\">\n {{ lb.dataSource.outerLinksTitle }}\n </h2>\n <p class=\"aw-home__outer-links-description\" *ngIf=\"lb.dataSource.outerLinksDescription\">\n {{ lb.dataSource.outerLinksDescription }}\n </p>\n <div class=\"aw-home__outer-links-items\">\n <!-- Item preview -->\n <n7-item-preview *ngFor=\"let outerLink of lb.dataSource.outerLinks\" [data]=\"outerLink\"\n [emit]=\"lb.eventHandler.outerLinkClick.bind(lb.eventHandler)\">\n </n7-item-preview>\n <!-- END // Item preview -->\n </div>\n </section>\n </div>\n <!-- END // Outer links -->\n\n <!-- Hero section at the bottom of the page -->\n <div class=\"aw-home__bottom-hero\">\n <n7-hero [data]=\"lb.widgets['aw-home-hero-patrimonio'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-home-hero-patrimonio'].emit\">\n </n7-hero>\n </div>\n\n <!-- Adavanced autocomplete popover -->\n <div class=\"aw-home__advanced-autocomplete\" id=\"aw-home-advanced-autocomplete-popover\" style=\"display: none;\">\n <div class=\"aw-home__advanced-autocomplete-loader\" *ngIf=\"lb.dataSource.homeAutocompleteIsLoading\">\n <n7-loader [data]=\"{}\"></n7-loader>\n </div>\n <n7-advanced-autocomplete *ngIf=\"!lb.dataSource.homeAutocompleteIsLoading\"\n [data]=\"lb.widgets['aw-home-autocomplete'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-home-autocomplete'].emit\">\n </n7-advanced-autocomplete>\n </div>\n\n <!-- Simple autocomplete popover. DO NOT CHANGE parent div class! -->\n <!-- Creating one template for each facet -->\n <div *ngFor=\"let widgetData of lb.widgets['aw-home-facets-wrapper'].ds.out$ | async;\"\n class=\"aw-home__simple-autocomplete aw-simple-autocomplete__template\" style=\"display: none;\">\n <div class=\"aw-home__simple-autocomplete-content aw-simple-autocomplete__tippy-wrapper\">\n <div class=\"aw-home__simple-autocomplete-loader aw-simple-autocomplete__tippy-wrapper-loader\"\n *ngIf=\"(lb.widgets['aw-autocomplete-wrapper'].ds.out$ | async)?.loading\">\n <n7-loader [data]=\"{}\"></n7-loader>\n </div>\n <n7-simple-autocomplete *ngIf=\"!(lb.widgets['aw-autocomplete-wrapper'].ds.out$ | async)?.loading\"\n [data]=\"lb.widgets['aw-autocomplete-wrapper'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-autocomplete-wrapper'].emit\">\n </n7-simple-autocomplete>\n </div>\n </div>\n</div>\n" }]
5967
6166
  }], ctorParameters: function () { return [{ type: i1.LayoutsConfigurationService }, { type: i1$1.Router }, { type: i1.ConfigurationService }, { type: i1.CommunicationService }, { type: i1.MainStateService }]; } });
5968
6167
 
5969
6168
  class AwMapLayoutDS extends LayoutDataSource {
@@ -6189,6 +6388,7 @@ class AwSchedaLayoutDS extends LayoutDataSource {
6189
6388
  /** Switch loaded-content and loaded-empty states */
6190
6389
  this.hasContent = true;
6191
6390
  this.extendedTreeParams = {};
6391
+ this.internalSearchParams = {};
6192
6392
  /** Name of query that should be used (chosen in config) */
6193
6393
  this.getTreeQuery = 'getTree';
6194
6394
  this.titleNavigation = null;
@@ -6413,13 +6613,13 @@ class AwSchedaLayoutDS extends LayoutDataSource {
6413
6613
  nodes: nodesResponse
6414
6614
  });
6415
6615
  // fix query input update
6416
- if (params.query) {
6417
- setTimeout(() => {
6418
- const queryInput = document
6419
- .querySelector('.aw-extended-tree__header .n7-inner-title__search-bar');
6616
+ setTimeout(() => {
6617
+ const queryInput = document
6618
+ .querySelector('.aw-extended-tree__header .n7-inner-title__search-bar');
6619
+ if (queryInput) {
6420
6620
  queryInput.value = params.query || '';
6421
- });
6422
- }
6621
+ }
6622
+ });
6423
6623
  }
6424
6624
  });
6425
6625
  }
@@ -6427,6 +6627,59 @@ class AwSchedaLayoutDS extends LayoutDataSource {
6427
6627
  this.hasExtendedTree = false;
6428
6628
  }
6429
6629
  }
6630
+ loadInternalSearch() {
6631
+ const parentResponse = this.lastResponse;
6632
+ if (this.layoutConfig['internal-search']) {
6633
+ this.hasInternalSearch = true;
6634
+ const configKeys = this.configuration.get('config-keys');
6635
+ const widgetOptions = this.layoutConfig['internal-search'];
6636
+ const rawParams = {
6637
+ id: parentResponse.id,
6638
+ 'search-page': 1,
6639
+ 'search-limit': 10,
6640
+ 'search-query': null,
6641
+ ancestor: true,
6642
+ ...this.internalSearchParams,
6643
+ };
6644
+ // set params object without "search-" prefix
6645
+ const params = {};
6646
+ Object.keys(rawParams).forEach((paramKey) => {
6647
+ params[paramKey.replace('search-', '')] = rawParams[paramKey];
6648
+ });
6649
+ const widgetParams = clone(params);
6650
+ // normalize params
6651
+ params.offset = (params.page - 1) * params.limit;
6652
+ delete params.page;
6653
+ const basePath = this.configuration.get('paths').schedaBasePath;
6654
+ let request$ = of(null);
6655
+ if (params.query) {
6656
+ request$ = this.communication.request$('getNodeChildren', {
6657
+ params,
6658
+ onError: (error) => console.error(error),
6659
+ });
6660
+ }
6661
+ request$.subscribe((nodesResponse) => {
6662
+ this.one('aw-scheda-search').updateOptions({
6663
+ basePath,
6664
+ configKeys,
6665
+ params: widgetParams,
6666
+ ...widgetOptions,
6667
+ });
6668
+ this.one('aw-scheda-search').update(nodesResponse);
6669
+ // fix query input update
6670
+ setTimeout(() => {
6671
+ const queryInput = document
6672
+ .querySelector('.aw-scheda-search__input input[type="text"]');
6673
+ if (queryInput) {
6674
+ queryInput.value = params.query || '';
6675
+ }
6676
+ });
6677
+ });
6678
+ }
6679
+ else {
6680
+ this.hasInternalSearch = false;
6681
+ }
6682
+ }
6430
6683
  loadTitleNavigation() {
6431
6684
  // reset
6432
6685
  this.titleNavigation = null;
@@ -6570,6 +6823,9 @@ class AwSchedaLayoutDS extends LayoutDataSource {
6570
6823
  return $do;
6571
6824
  });
6572
6825
  }
6826
+ _normalizeItems(items) {
6827
+ return items.map((singleItem) => ({ item: { ...singleItem } }));
6828
+ }
6573
6829
  }
6574
6830
  AwSchedaLayoutDS.tree = null;
6575
6831
 
@@ -6579,6 +6835,7 @@ class AwSchedaLayoutEH extends EventHandler {
6579
6835
  this.destroyed$ = new Subject();
6580
6836
  this.treeLoaded$ = new ReplaySubject();
6581
6837
  this.extendedTreeChanged$ = new Subject();
6838
+ this.schedaSearchChanged$ = new Subject();
6582
6839
  }
6583
6840
  listen() {
6584
6841
  this.innerEvents$.subscribe(({ type, payload }) => {
@@ -6596,6 +6853,7 @@ class AwSchedaLayoutEH extends EventHandler {
6596
6853
  this.listenRoute();
6597
6854
  this.listenRouteQueryParams();
6598
6855
  this.listenExtendedTree();
6856
+ this.listenSchedaSearch();
6599
6857
  this.loadNavigation(paramId);
6600
6858
  this.emitOuter('viewleaf');
6601
6859
  // scroll top
@@ -6622,6 +6880,9 @@ class AwSchedaLayoutEH extends EventHandler {
6622
6880
  case 'aw-scheda-dropdown.click':
6623
6881
  this.dataSource.changeDigitalObject(payload);
6624
6882
  break;
6883
+ /**
6884
+ * EXTENDED TREE EVENTS
6885
+ * ---------------------------------------------------> */
6625
6886
  case 'aw-extended-tree.change':
6626
6887
  {
6627
6888
  let key;
@@ -6668,6 +6929,38 @@ class AwSchedaLayoutEH extends EventHandler {
6668
6929
  });
6669
6930
  }
6670
6931
  break;
6932
+ /**
6933
+ * SCHEDA (INTERNAL) SEARCH EVENTS
6934
+ * ---------------------------------------------------> */
6935
+ case 'aw-scheda-search.change':
6936
+ {
6937
+ let key;
6938
+ let delay;
6939
+ if (payload.inputPayload === 'input-change') {
6940
+ key = 'query';
6941
+ delay = 1000;
6942
+ }
6943
+ else if (payload.inputPayload === 'input-enter') {
6944
+ key = 'query';
6945
+ }
6946
+ else if (payload.inputPayload === 'limit-select') {
6947
+ key = 'limit';
6948
+ }
6949
+ if (key) {
6950
+ this.schedaSearchChanged$.next({
6951
+ key,
6952
+ delay,
6953
+ value: payload.value,
6954
+ });
6955
+ }
6956
+ }
6957
+ break;
6958
+ case 'aw-scheda-search.click':
6959
+ this.schedaSearchChanged$.next({
6960
+ key: 'page',
6961
+ value: payload
6962
+ });
6963
+ break;
6671
6964
  default:
6672
6965
  break;
6673
6966
  }
@@ -6687,6 +6980,7 @@ class AwSchedaLayoutEH extends EventHandler {
6687
6980
  if (response) {
6688
6981
  this.dataSource.loadContent(response);
6689
6982
  this.dataSource.loadExtendedTree();
6983
+ this.dataSource.loadInternalSearch();
6690
6984
  this.checkTreeItems(response);
6691
6985
  }
6692
6986
  });
@@ -6717,23 +7011,75 @@ class AwSchedaLayoutEH extends EventHandler {
6717
7011
  });
6718
7012
  });
6719
7013
  }
7014
+ listenSchedaSearch() {
7015
+ this.schedaSearchChanged$.pipe(filter(({ key, value }) => !(key === 'page' && (!isNumber(+value) || +value < 1))), debounce(({ delay }) => timer(delay || 1))).subscribe(({ key, value }) => {
7016
+ const queryParams = {};
7017
+ if (typeof value === 'string') {
7018
+ queryParams[`search-${key}`] = value.trim().length ? value : null;
7019
+ }
7020
+ else {
7021
+ queryParams[`search-${key}`] = `${value}`;
7022
+ }
7023
+ // page check
7024
+ if (key !== 'page') {
7025
+ queryParams['search-page'] = '1';
7026
+ }
7027
+ // update url
7028
+ this.router.navigate([], {
7029
+ queryParams,
7030
+ queryParamsHandling: 'merge'
7031
+ });
7032
+ });
7033
+ }
6720
7034
  listenRouteQueryParams() {
6721
7035
  this.route.queryParams.subscribe((params) => {
6722
- const extendedTreeParams = clone(params);
6723
- // force numeric
6724
- ['page', 'limit'].forEach((key) => {
6725
- if (params[key] && isNumber(+params[key])) {
6726
- extendedTreeParams[key] = +params[key];
7036
+ const extendedTreeParams = {};
7037
+ const internalSearchParams = {};
7038
+ Object.keys(params).forEach((key) => {
7039
+ const treeAllowed = ['query', 'page', 'limit'];
7040
+ const internalAllowed = treeAllowed.map((item) => `search-${item}`);
7041
+ if (treeAllowed.includes(key)) {
7042
+ let value;
7043
+ if (key !== 'query') {
7044
+ value = isNumber(+params[key]) ? +params[key] : null;
7045
+ }
7046
+ else {
7047
+ value = params[key];
7048
+ }
7049
+ if (value) {
7050
+ extendedTreeParams[key] = value;
7051
+ }
6727
7052
  }
6728
- else {
6729
- delete extendedTreeParams[key];
7053
+ if (internalAllowed.includes(key)) {
7054
+ let value;
7055
+ if (key !== 'search-query') {
7056
+ value = isNumber(+params[key]) ? +params[key] : null;
7057
+ }
7058
+ else {
7059
+ value = params[key];
7060
+ }
7061
+ if (value) {
7062
+ internalSearchParams[key] = value;
7063
+ }
6730
7064
  }
6731
7065
  });
6732
- this.dataSource.extendedTreeParams = extendedTreeParams;
6733
- // has node response
6734
- if (this.dataSource.lastResponse) {
6735
- this.emitOuter('extendedtreerequest');
6736
- this.dataSource.loadExtendedTree();
7066
+ // scheda search changed
7067
+ if (!isEqual(this.dataSource.internalSearchParams, internalSearchParams)) {
7068
+ this.dataSource.internalSearchParams = internalSearchParams;
7069
+ // has node response
7070
+ if (this.dataSource.lastResponse) {
7071
+ this.emitOuter('schedasearchrequest');
7072
+ this.dataSource.loadInternalSearch();
7073
+ }
7074
+ // extended tree changed
7075
+ }
7076
+ if (!isEqual(this.dataSource.extendedTreeParams, extendedTreeParams)) {
7077
+ this.dataSource.extendedTreeParams = extendedTreeParams;
7078
+ // has node response
7079
+ if (this.dataSource.lastResponse) {
7080
+ this.emitOuter('extendedtreerequest');
7081
+ this.dataSource.loadExtendedTree();
7082
+ }
6737
7083
  }
6738
7084
  });
6739
7085
  }
@@ -6846,6 +7192,7 @@ const AwPatrimonioLayoutConfig = {
6846
7192
  { id: 'aw-chart-tippy' },
6847
7193
  { id: 'aw-linked-objects' },
6848
7194
  { id: 'aw-extended-tree' },
7195
+ { id: 'aw-scheda-search' },
6849
7196
  ],
6850
7197
  layoutDS: AwSchedaLayoutDS,
6851
7198
  layoutEH: AwSchedaLayoutEH,
@@ -6907,16 +7254,16 @@ class ExtendedTreeComponent {
6907
7254
  this.emit('pageinputsubmit');
6908
7255
  }
6909
7256
  onCollapseClick(type) {
6910
- if (type === 'text')
7257
+ if (['text', 'submit'].includes(type))
6911
7258
  return;
6912
7259
  this.lb.dataSource.onSectionCollapse('extended-tree');
6913
7260
  }
6914
7261
  }
6915
7262
  ExtendedTreeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ExtendedTreeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6916
- ExtendedTreeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", 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>", dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4$1.AnchorWrapperComponent, selector: "n7-anchor-wrapper", inputs: ["data", "classes"], outputs: ["clicked"] }, { kind: "component", type: i4$1.InnerTitleComponent, selector: "n7-inner-title", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.InputSelectComponent, selector: "n7-input-select", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.InputTextComponent, selector: "n7-input-text", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.LoaderComponent, selector: "n7-loader", inputs: ["data"] }, { kind: "component", type: i4$1.PaginationComponent, selector: "n7-pagination", inputs: ["data", "emit"] }] });
7263
+ ExtendedTreeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", 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 <ng-container *ngIf=\"!data.items?.length && data.fallback\">\n <div class=\"aw-extended-tree__content\">\n <p>{{ data.fallback }}</p>\n </div>\n </ng-container>\n <ng-container *ngIf=\"data.items?.length\">\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 </ng-container>\n </div>\n</div>", dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4$1.AnchorWrapperComponent, selector: "n7-anchor-wrapper", inputs: ["data", "classes"], outputs: ["clicked"] }, { kind: "component", type: i4$1.InnerTitleComponent, selector: "n7-inner-title", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.InputSelectComponent, selector: "n7-input-select", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.InputTextComponent, selector: "n7-input-text", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.LoaderComponent, selector: "n7-loader", inputs: ["data"] }, { kind: "component", type: i4$1.PaginationComponent, selector: "n7-pagination", inputs: ["data", "emit"] }] });
6917
7264
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ExtendedTreeComponent, decorators: [{
6918
7265
  type: Component,
6919
- 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>" }]
7266
+ 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 <ng-container *ngIf=\"!data.items?.length && data.fallback\">\n <div class=\"aw-extended-tree__content\">\n <p>{{ data.fallback }}</p>\n </div>\n </ng-container>\n <ng-container *ngIf=\"data.items?.length\">\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 </ng-container>\n </div>\n</div>" }]
6920
7267
  }], propDecorators: { data: [{
6921
7268
  type: Input
6922
7269
  }], emit: [{
@@ -6943,6 +7290,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
6943
7290
  type: Input
6944
7291
  }] } });
6945
7292
 
7293
+ class SchedaSearchComponent {
7294
+ }
7295
+ SchedaSearchComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: SchedaSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
7296
+ SchedaSearchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: SchedaSearchComponent, selector: "aw-scheda-search", inputs: { data: "data", emit: "emit" }, ngImport: i0, template: "<div *ngIf=\"data\" class=\"aw-scheda-search\">\n <div class=\"aw-scheda__section-title-wrapper\">\n <div *ngIf=\"data.header as header\" class=\"aw-scheda__inner-title aw-scheda-search__header\">\n <n7-inner-title [data]=\"header\"></n7-inner-title>\n </div>\n </div>\n <div *ngIf=\"data.input as input\" class=\"aw-scheda__input aw-scheda-search__input\">\n <n7-input-text [data]=\"input\" [emit]=\"this.emit\"></n7-input-text>\n </div>\n <div>\n <ng-container *ngIf=\"data.loading\">\n <div class=\"aw-scheda-search__loader\">\n <n7-loader></n7-loader>\n </div>\n </ng-container>\n <ng-container *ngIf=\"!data.loading && data.items\">\n <ng-container *ngIf=\"!data.items?.length && data.fallback\">\n <div class=\"aw-scheda-search__content\">\n <p>{{ data.fallback }}</p>\n </div>\n </ng-container>\n <ng-container *ngIf=\"data.items?.length\">\n <div *ngIf=\"data.items as items\" class=\"aw-scheda-search__content\">\n <div *ngFor=\"let item of data.items\" class=\"aw-scheda-search__item\">\n <n7-anchor-wrapper [classes]=\"'aw-scheda-search__item-link'\" [data]=\"item.anchor\">\n <div class=\"aw-scheda-search__item-top\">\n <n7-smart-breadcrumbs [data]=\"item.breadcrumbs\">\n </n7-smart-breadcrumbs>\n </div>\n <div class=\"aw-scheda-search__item-bottom\">\n <div *ngIf=\"item.icon\" class=\"aw-scheda-search__item-icon\">\n <span class=\"{{ item.icon }}\"></span>\n </div>\n <div *ngIf=\"item.thumbnail\" class=\"aw-scheda-search__item-image\">\n <img src=\"{{ item.thumbnail }}\" alt=\"{{ item.label }}\">\n </div>\n <div *ngIf=\"item.label\" class=\"aw-scheda-search__item-label\">{{ item.label }}</div>\n </div>\n </n7-anchor-wrapper>\n </div>\n </div>\n <div *ngIf=\"data.pagination as pagination\" class=\"aw-scheda-search__footer\">\n <div *ngIf=\"data.pagination as pagination\" class=\"aw-scheda-search__pagination\">\n <n7-pagination \n [data]=\"pagination\"\n [emit]=\"this.emit\"></n7-pagination>\n </div>\n <div *ngIf=\"data.limitSelect as limitSelect\" class=\"aw-scheda-search__limit-select\">\n <n7-input-select \n [data]=\"limitSelect\"\n [emit]=\"this.emit\"></n7-input-select>\n </div>\n </div>\n </ng-container>\n </ng-container>\n </div>\n</div>", dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4$1.AnchorWrapperComponent, selector: "n7-anchor-wrapper", inputs: ["data", "classes"], outputs: ["clicked"] }, { kind: "component", type: i4$1.InnerTitleComponent, selector: "n7-inner-title", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.InputSelectComponent, selector: "n7-input-select", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.InputTextComponent, selector: "n7-input-text", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.LoaderComponent, selector: "n7-loader", inputs: ["data"] }, { kind: "component", type: i4$1.PaginationComponent, selector: "n7-pagination", inputs: ["data", "emit"] }, { kind: "component", type: SmartBreadcrumbsComponent, selector: "n7-smart-breadcrumbs", inputs: ["data", "emit"] }] });
7297
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: SchedaSearchComponent, decorators: [{
7298
+ type: Component,
7299
+ args: [{ selector: 'aw-scheda-search', template: "<div *ngIf=\"data\" class=\"aw-scheda-search\">\n <div class=\"aw-scheda__section-title-wrapper\">\n <div *ngIf=\"data.header as header\" class=\"aw-scheda__inner-title aw-scheda-search__header\">\n <n7-inner-title [data]=\"header\"></n7-inner-title>\n </div>\n </div>\n <div *ngIf=\"data.input as input\" class=\"aw-scheda__input aw-scheda-search__input\">\n <n7-input-text [data]=\"input\" [emit]=\"this.emit\"></n7-input-text>\n </div>\n <div>\n <ng-container *ngIf=\"data.loading\">\n <div class=\"aw-scheda-search__loader\">\n <n7-loader></n7-loader>\n </div>\n </ng-container>\n <ng-container *ngIf=\"!data.loading && data.items\">\n <ng-container *ngIf=\"!data.items?.length && data.fallback\">\n <div class=\"aw-scheda-search__content\">\n <p>{{ data.fallback }}</p>\n </div>\n </ng-container>\n <ng-container *ngIf=\"data.items?.length\">\n <div *ngIf=\"data.items as items\" class=\"aw-scheda-search__content\">\n <div *ngFor=\"let item of data.items\" class=\"aw-scheda-search__item\">\n <n7-anchor-wrapper [classes]=\"'aw-scheda-search__item-link'\" [data]=\"item.anchor\">\n <div class=\"aw-scheda-search__item-top\">\n <n7-smart-breadcrumbs [data]=\"item.breadcrumbs\">\n </n7-smart-breadcrumbs>\n </div>\n <div class=\"aw-scheda-search__item-bottom\">\n <div *ngIf=\"item.icon\" class=\"aw-scheda-search__item-icon\">\n <span class=\"{{ item.icon }}\"></span>\n </div>\n <div *ngIf=\"item.thumbnail\" class=\"aw-scheda-search__item-image\">\n <img src=\"{{ item.thumbnail }}\" alt=\"{{ item.label }}\">\n </div>\n <div *ngIf=\"item.label\" class=\"aw-scheda-search__item-label\">{{ item.label }}</div>\n </div>\n </n7-anchor-wrapper>\n </div>\n </div>\n <div *ngIf=\"data.pagination as pagination\" class=\"aw-scheda-search__footer\">\n <div *ngIf=\"data.pagination as pagination\" class=\"aw-scheda-search__pagination\">\n <n7-pagination \n [data]=\"pagination\"\n [emit]=\"this.emit\"></n7-pagination>\n </div>\n <div *ngIf=\"data.limitSelect as limitSelect\" class=\"aw-scheda-search__limit-select\">\n <n7-input-select \n [data]=\"limitSelect\"\n [emit]=\"this.emit\"></n7-input-select>\n </div>\n </div>\n </ng-container>\n </ng-container>\n </div>\n</div>" }]
7300
+ }], propDecorators: { data: [{
7301
+ type: Input
7302
+ }], emit: [{
7303
+ type: Input
7304
+ }] } });
7305
+
6946
7306
  class AwSchedaLayoutComponent extends AbstractLayout {
6947
7307
  constructor(router, route, configuration, layoutsConfiguration, mainState, titleService, communication) {
6948
7308
  super(layoutsConfiguration.get('AwPatrimonioLayoutConfig') || AwPatrimonioLayoutConfig);
@@ -6978,10 +7338,10 @@ class AwSchedaLayoutComponent extends AbstractLayout {
6978
7338
  }
6979
7339
  }
6980
7340
  AwSchedaLayoutComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: AwSchedaLayoutComponent, deps: [{ token: i1$1.Router }, { token: i1$1.ActivatedRoute }, { token: i1.ConfigurationService }, { token: i1.LayoutsConfigurationService }, { token: i1.MainStateService }, { token: i3.Title }, { token: i1.CommunicationService }], target: i0.ɵɵFactoryTarget.Component });
6981
- AwSchedaLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", 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 <!-- Extended tree -->\n <ng-container *ngTemplateOutlet=\"extendedtree\"></ng-container>\n\n </div>\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 <ng-container [ngSwitch]=\"$do.type\">\n <!-- IMAGE VIEWER (IIP) -->\n <ng-container *ngSwitchCase=\"'images-iip'\">\n <aw-scheda-image-navigator \n [data]=\"lb.widgets['aw-scheda-image-navigator'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-image-navigator'].emit\"></aw-scheda-image-navigator>\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 <aw-scheda-image-navigator \n [data]=\"lb.widgets['aw-scheda-image-navigator'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-image-navigator'].emit\"></aw-scheda-image-navigator>\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 <aw-scheda-image-navigator \n [data]=\"lb.widgets['aw-scheda-image-navigator'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-image-navigator'].emit\"></aw-scheda-image-navigator>\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</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>\n\n<ng-template #extendedtree>\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>", dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i4.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i4.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1$1.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i4$1.ContentPlaceholderComponent, selector: "n7-content-placeholder", inputs: ["data"] }, { kind: "component", type: i4$1.ImageViewerComponent, selector: "n7-image-viewer", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.InnerTitleComponent, selector: "n7-inner-title", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.ItemPreviewComponent, selector: "n7-item-preview", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.LoaderComponent, selector: "n7-loader", inputs: ["data"] }, { kind: "component", type: i4$1.MetadataViewerComponent, selector: "n7-metadata-viewer", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.SidebarHeaderComponent, selector: "n7-sidebar-header", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.TreeComponent, selector: "n7-tree", inputs: ["data", "emit"] }, { kind: "component", type: PdfViewerComponent, selector: "aw-pdf-viewer", inputs: ["data", "emit"] }, { kind: "component", type: SchedaDropdownComponent, selector: "aw-scheda-dropdown", inputs: ["data", "emit"] }, { kind: "component", type: SmartBreadcrumbsComponent, selector: "n7-smart-breadcrumbs", inputs: ["data", "emit"] }, { kind: "component", type: ExtendedTreeComponent, selector: "aw-extended-tree", inputs: ["data", "emit", "lb"] }, { kind: "component", type: SchedaImageNavigatorComponent, selector: "aw-scheda-image-navigator", inputs: ["data", "emit"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }] });
7341
+ AwSchedaLayoutComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", 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 <div class=\"aw-scheda__breadcrumbs-wrapper\">\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 </div>\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 <!-- Internal search -->\n <ng-container *ngTemplateOutlet=\"internalsearch\"></ng-container>\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 <!-- Extended tree -->\n <ng-container *ngTemplateOutlet=\"extendedtree\"></ng-container>\n\n </div>\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 <ng-container [ngSwitch]=\"$do.type\">\n <!-- IMAGE VIEWER (IIP) -->\n <ng-container *ngSwitchCase=\"'images-iip'\">\n <aw-scheda-image-navigator \n [data]=\"lb.widgets['aw-scheda-image-navigator'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-image-navigator'].emit\"></aw-scheda-image-navigator>\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 <aw-scheda-image-navigator \n [data]=\"lb.widgets['aw-scheda-image-navigator'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-image-navigator'].emit\"></aw-scheda-image-navigator>\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 <aw-scheda-image-navigator \n [data]=\"lb.widgets['aw-scheda-image-navigator'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-image-navigator'].emit\"></aw-scheda-image-navigator>\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</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>\n\n<ng-template #extendedtree>\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 #internalsearch>\n <!-- Internal search -->\n <section *ngIf=\"lb.dataSource.hasInternalSearch\" id=\"internal-search-container\" class=\"aw-scheda__section aw-scheda__section-internal-search\">\n <aw-scheda-search\n [data]=\"lb.widgets['aw-scheda-search'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-search'].emit\"></aw-scheda-search>\n </section>\n <!-- END // Internal search -->\n</ng-template>", dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i4.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i4.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1$1.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i4$1.ContentPlaceholderComponent, selector: "n7-content-placeholder", inputs: ["data"] }, { kind: "component", type: i4$1.ImageViewerComponent, selector: "n7-image-viewer", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.InnerTitleComponent, selector: "n7-inner-title", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.ItemPreviewComponent, selector: "n7-item-preview", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.LoaderComponent, selector: "n7-loader", inputs: ["data"] }, { kind: "component", type: i4$1.MetadataViewerComponent, selector: "n7-metadata-viewer", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.SidebarHeaderComponent, selector: "n7-sidebar-header", inputs: ["data", "emit"] }, { kind: "component", type: i4$1.TreeComponent, selector: "n7-tree", inputs: ["data", "emit"] }, { kind: "component", type: PdfViewerComponent, selector: "aw-pdf-viewer", inputs: ["data", "emit"] }, { kind: "component", type: SchedaDropdownComponent, selector: "aw-scheda-dropdown", inputs: ["data", "emit"] }, { kind: "component", type: SmartBreadcrumbsComponent, selector: "n7-smart-breadcrumbs", inputs: ["data", "emit"] }, { kind: "component", type: ExtendedTreeComponent, selector: "aw-extended-tree", inputs: ["data", "emit", "lb"] }, { kind: "component", type: SchedaImageNavigatorComponent, selector: "aw-scheda-image-navigator", inputs: ["data", "emit"] }, { kind: "component", type: SchedaSearchComponent, selector: "aw-scheda-search", inputs: ["data", "emit"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }] });
6982
7342
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: AwSchedaLayoutComponent, decorators: [{
6983
7343
  type: Component,
6984
- 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 <!-- Extended tree -->\n <ng-container *ngTemplateOutlet=\"extendedtree\"></ng-container>\n\n </div>\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 <ng-container [ngSwitch]=\"$do.type\">\n <!-- IMAGE VIEWER (IIP) -->\n <ng-container *ngSwitchCase=\"'images-iip'\">\n <aw-scheda-image-navigator \n [data]=\"lb.widgets['aw-scheda-image-navigator'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-image-navigator'].emit\"></aw-scheda-image-navigator>\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 <aw-scheda-image-navigator \n [data]=\"lb.widgets['aw-scheda-image-navigator'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-image-navigator'].emit\"></aw-scheda-image-navigator>\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 <aw-scheda-image-navigator \n [data]=\"lb.widgets['aw-scheda-image-navigator'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-image-navigator'].emit\"></aw-scheda-image-navigator>\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</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>\n\n<ng-template #extendedtree>\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>" }]
7344
+ 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 <div class=\"aw-scheda__breadcrumbs-wrapper\">\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 </div>\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 <!-- Internal search -->\n <ng-container *ngTemplateOutlet=\"internalsearch\"></ng-container>\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 <!-- Extended tree -->\n <ng-container *ngTemplateOutlet=\"extendedtree\"></ng-container>\n\n </div>\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 <ng-container [ngSwitch]=\"$do.type\">\n <!-- IMAGE VIEWER (IIP) -->\n <ng-container *ngSwitchCase=\"'images-iip'\">\n <aw-scheda-image-navigator \n [data]=\"lb.widgets['aw-scheda-image-navigator'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-image-navigator'].emit\"></aw-scheda-image-navigator>\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 <aw-scheda-image-navigator \n [data]=\"lb.widgets['aw-scheda-image-navigator'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-image-navigator'].emit\"></aw-scheda-image-navigator>\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 <aw-scheda-image-navigator \n [data]=\"lb.widgets['aw-scheda-image-navigator'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-image-navigator'].emit\"></aw-scheda-image-navigator>\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</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>\n\n<ng-template #extendedtree>\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 #internalsearch>\n <!-- Internal search -->\n <section *ngIf=\"lb.dataSource.hasInternalSearch\" id=\"internal-search-container\" class=\"aw-scheda__section aw-scheda__section-internal-search\">\n <aw-scheda-search\n [data]=\"lb.widgets['aw-scheda-search'].ds.out$ | async\"\n [emit]=\"lb.widgets['aw-scheda-search'].emit\"></aw-scheda-search>\n </section>\n <!-- END // Internal search -->\n</ng-template>" }]
6985
7345
  }], ctorParameters: function () { return [{ type: i1$1.Router }, { type: i1$1.ActivatedRoute }, { type: i1.ConfigurationService }, { type: i1.LayoutsConfigurationService }, { type: i1.MainStateService }, { type: i3.Title }, { type: i1.CommunicationService }]; } });
6986
7346
 
6987
7347
  const AwSearchLayoutConfig = {
@@ -7591,6 +7951,10 @@ var apolloConfig = (treeDepth) => ({
7591
7951
  img
7592
7952
  document_type
7593
7953
  document_classification
7954
+ breadcrumbs {
7955
+ label
7956
+ link
7957
+ }
7594
7958
  }
7595
7959
  totalCount
7596
7960
  }
@@ -8026,6 +8390,7 @@ const COMPONENTS = [
8026
8390
  SmartBreadcrumbsComponent,
8027
8391
  ExtendedTreeComponent,
8028
8392
  SchedaImageNavigatorComponent,
8393
+ SchedaSearchComponent,
8029
8394
  ];
8030
8395
  class N7BoilerplateAriannaModule {
8031
8396
  constructor(initStatus, config) {
@@ -8055,7 +8420,8 @@ N7BoilerplateAriannaModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.
8055
8420
  SchedaDropdownComponent,
8056
8421
  SmartBreadcrumbsComponent,
8057
8422
  ExtendedTreeComponent,
8058
- SchedaImageNavigatorComponent], imports: [CommonModule,
8423
+ SchedaImageNavigatorComponent,
8424
+ SchedaSearchComponent], imports: [CommonModule,
8059
8425
  RouterModule,
8060
8426
  DvComponentsLibModule,
8061
8427
  N7BoilerplateCommonModule,
@@ -8074,7 +8440,8 @@ N7BoilerplateAriannaModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.
8074
8440
  SchedaDropdownComponent,
8075
8441
  SmartBreadcrumbsComponent,
8076
8442
  ExtendedTreeComponent,
8077
- SchedaImageNavigatorComponent] });
8443
+ SchedaImageNavigatorComponent,
8444
+ SchedaSearchComponent] });
8078
8445
  N7BoilerplateAriannaModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: N7BoilerplateAriannaModule, imports: [CommonModule,
8079
8446
  RouterModule,
8080
8447
  DvComponentsLibModule,
@@ -8105,5 +8472,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
8105
8472
  * Generated bundle index. Do not edit.
8106
8473
  */
8107
8474
 
8108
- 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, AwSchedaImageNavigatorDS, AwSchedaImageNavigatorEH, 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, SchedaImageNavigatorComponent, SmartBreadcrumbsComponent };
8475
+ 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, AwSchedaImageNavigatorDS, AwSchedaImageNavigatorEH, AwSchedaInnerTitleDS, AwSchedaLayoutComponent, AwSchedaLayoutDS, AwSchedaLayoutEH, AwSchedaMetadataDS, AwSchedaPdfDS, AwSchedaPdfEH, AwSchedaSearchDS, AwSchedaSearchEH, 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, SchedaImageNavigatorComponent, SchedaSearchComponent, SmartBreadcrumbsComponent };
8109
8476
  //# sourceMappingURL=net7-boilerplate-arianna.mjs.map