@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';
@@ -566,7 +566,9 @@ class AwHomeFacetsWrapperDS extends DataSource {
566
566
  this.lastData = data;
567
567
  const headers = [];
568
568
  const inputs = [];
569
+ const links = [];
569
570
  const facetData = data;
571
+ const { pageConfig, paths } = this.options || {};
570
572
  const { lockedFacets } = this; // locked means that the eye cannot be closed
571
573
  const { closedEyes } = this; // list of closed eyes
572
574
  // when facet data changes, destroy every tippy and reset autocomplete data.
@@ -577,6 +579,7 @@ class AwHomeFacetsWrapperDS extends DataSource {
577
579
  });
578
580
  this.autoComplete = {}; // reset data
579
581
  facetData.forEach((facet, j) => {
582
+ var _a;
580
583
  /*
581
584
  For each facet on back-end, push a header-component
582
585
  and a facet-component (search input only) to each array.
@@ -675,9 +678,19 @@ class AwHomeFacetsWrapperDS extends DataSource {
675
678
  },
676
679
  ],
677
680
  });
681
+ if ((_a = pageConfig === null || pageConfig === void 0 ? void 0 : pageConfig['view-all-links']) === null || _a === void 0 ? void 0 : _a.enabled) {
682
+ const { label } = pageConfig['view-all-links'];
683
+ links.push({
684
+ label: label || 'Visualizza tutti',
685
+ path: paths.searchBasePath,
686
+ queryParams: {
687
+ 'query-links': facet.type.replace(/ /g, '-')
688
+ }
689
+ });
690
+ }
678
691
  });
679
692
  // zipping arrays to render widgets with separate data (see home-layout.html)
680
- return headers.map((h, i) => ({ header: h, input: inputs[i] }));
693
+ return headers.map((h, i) => ({ header: h, input: inputs[i], link: links[i] || null }));
681
694
  }
682
695
  }
683
696
 
@@ -1274,15 +1287,19 @@ const getNodeIcon = (configKeys, item) => {
1274
1287
  };
1275
1288
  var nodeHelper = { getNodeIcon };
1276
1289
 
1277
- const PAGE_LIMIT = 5;
1290
+ const PAGE_LIMIT$1 = 5;
1291
+ const SEARCH_OPEN_CLASS = 'search-is-open';
1278
1292
  class AwExtendedTreeDS extends DataSource {
1279
1293
  constructor() {
1280
1294
  super(...arguments);
1295
+ this.searchIsOpen = false;
1281
1296
  this.transform = ({ parent, nodes }) => {
1282
1297
  const { totalCount } = nodes;
1283
- const { title, params, basePath, lite, configKeys } = this.options;
1298
+ const { title, params, basePath, lite, configKeys, fallback, } = this.options;
1284
1299
  const page = params.page ? +params.page : 1;
1285
1300
  const limit = params.limit ? +params.limit : 10;
1301
+ this.searchIsOpen = (this.searchIsOpen
1302
+ || (typeof params.query === 'string' && params.query.trim()));
1286
1303
  // header
1287
1304
  const header = {
1288
1305
  title: {
@@ -1297,9 +1314,13 @@ class AwExtendedTreeDS extends DataSource {
1297
1314
  search: {
1298
1315
  placeholder: 'Cerca negli oggetti culturali',
1299
1316
  payload: 'search-input',
1300
- button: null
1317
+ button: {
1318
+ text: '',
1319
+ payload: 'search-button'
1320
+ }
1301
1321
  },
1302
- }
1322
+ },
1323
+ classes: this.searchIsOpen ? SEARCH_OPEN_CLASS : ''
1303
1324
  };
1304
1325
  // items
1305
1326
  const items = (nodes.items || []).map((item) => ({
@@ -1338,6 +1359,7 @@ class AwExtendedTreeDS extends DataSource {
1338
1359
  pagination,
1339
1360
  pageInput,
1340
1361
  limitSelect,
1362
+ fallback: nodes ? fallback : null,
1341
1363
  loading: false,
1342
1364
  };
1343
1365
  };
@@ -1345,6 +1367,18 @@ class AwExtendedTreeDS extends DataSource {
1345
1367
  setLoading(loading) {
1346
1368
  this.output.loading = loading;
1347
1369
  }
1370
+ toggleSearch() {
1371
+ this.searchIsOpen = !this.searchIsOpen;
1372
+ const { header } = this.output;
1373
+ header.classes = this.searchIsOpen ? SEARCH_OPEN_CLASS : '';
1374
+ // trigger focus
1375
+ if (this.searchIsOpen) {
1376
+ setTimeout(() => {
1377
+ const inputEl = document.querySelector('.aw-extended-tree input.n7-inner-title__search-bar');
1378
+ inputEl.focus();
1379
+ }, 500);
1380
+ }
1381
+ }
1348
1382
  getPagination(page, totalCount, limit) {
1349
1383
  const pages = Math.ceil(totalCount / limit);
1350
1384
  return {
@@ -1378,7 +1412,7 @@ class AwExtendedTreeDS extends DataSource {
1378
1412
  getPaginationLinks(page, pages) {
1379
1413
  let firstItem = 1;
1380
1414
  const links = [];
1381
- const limit = PAGE_LIMIT;
1415
+ const limit = PAGE_LIMIT$1;
1382
1416
  let last = limit;
1383
1417
  if (pages > limit) {
1384
1418
  const steps = Math.floor(limit / 2);
@@ -1489,6 +1523,145 @@ class AwSchedaImageNavigatorDS extends DataSource {
1489
1523
  }
1490
1524
  }
1491
1525
 
1526
+ const PAGE_LIMIT = 5;
1527
+ class AwSchedaSearchDS extends DataSource {
1528
+ constructor() {
1529
+ super(...arguments);
1530
+ this.transform = (nodes) => {
1531
+ var _a;
1532
+ const { placeholder, title, params, basePath, lite, configKeys, fallback, } = this.options || {};
1533
+ const { totalCount } = nodes || {};
1534
+ const page = params.page ? +params.page : 1;
1535
+ const limit = params.limit ? +params.limit : 10;
1536
+ // header
1537
+ const header = {
1538
+ title: {
1539
+ main: {
1540
+ text: title || 'Cerca nelle Aggregazioni Logiche',
1541
+ }
1542
+ }
1543
+ };
1544
+ // input
1545
+ const input = {
1546
+ id: 'scheda-search-input',
1547
+ placeholder: placeholder || 'Cerca...',
1548
+ icon: 'n7-icon-search',
1549
+ enterPayload: 'input-enter',
1550
+ inputPayload: 'input-change'
1551
+ };
1552
+ // items
1553
+ const items = ((nodes === null || nodes === void 0 ? void 0 : nodes.items) || []).map((item) => {
1554
+ // breadcrumbs
1555
+ const breadcrumbs = {
1556
+ items: []
1557
+ };
1558
+ if (item.breadcrumbs) {
1559
+ breadcrumbs.items = item.breadcrumbs.map(({ label, link: href }) => ({
1560
+ label,
1561
+ anchor: { href },
1562
+ }));
1563
+ }
1564
+ return {
1565
+ icon: nodeHelper.getNodeIcon(configKeys, item),
1566
+ thumbnail: lite ? null : item.img,
1567
+ label: item.label,
1568
+ anchor: {
1569
+ href: `${basePath}/${item.id}/${helpers.slugify(item.label)}`
1570
+ },
1571
+ breadcrumbs
1572
+ };
1573
+ });
1574
+ // pagination
1575
+ const pagination = ((_a = nodes === null || nodes === void 0 ? void 0 : nodes.items) === null || _a === void 0 ? void 0 : _a.length)
1576
+ ? this.getPagination(page, totalCount, limit)
1577
+ : null;
1578
+ // results limit select
1579
+ const limitSelect = {
1580
+ id: 'limit-select',
1581
+ label: 'Numero di risultati',
1582
+ options: [10, 25, 50].map((size) => ({
1583
+ label: `${size}`,
1584
+ value: size,
1585
+ selected: size === limit
1586
+ })),
1587
+ payload: 'limit-select',
1588
+ };
1589
+ return {
1590
+ header,
1591
+ input,
1592
+ items,
1593
+ pagination,
1594
+ limitSelect,
1595
+ fallback: nodes ? fallback : null,
1596
+ loading: false,
1597
+ };
1598
+ };
1599
+ }
1600
+ setLoading(loading) {
1601
+ this.output.loading = loading;
1602
+ }
1603
+ getPagination(page, totalCount, limit) {
1604
+ const pages = Math.ceil(totalCount / limit);
1605
+ return {
1606
+ links: this.getPaginationLinks(page, pages),
1607
+ first: {
1608
+ anchor: {
1609
+ payload: 1,
1610
+ },
1611
+ classes: page === 1 ? 'is-disabled' : '',
1612
+ },
1613
+ prev: {
1614
+ anchor: {
1615
+ payload: page === 1 ? 1 : page - 1,
1616
+ },
1617
+ classes: page === 1 ? 'is-disabled' : ''
1618
+ },
1619
+ next: {
1620
+ anchor: {
1621
+ payload: page === pages ? pages : page + 1,
1622
+ },
1623
+ classes: page === pages ? 'is-disabled' : '',
1624
+ },
1625
+ last: {
1626
+ anchor: {
1627
+ payload: pages,
1628
+ },
1629
+ classes: page === pages ? 'is-disabled' : '',
1630
+ }
1631
+ };
1632
+ }
1633
+ getPaginationLinks(page, pages) {
1634
+ let firstItem = 1;
1635
+ const links = [];
1636
+ const limit = PAGE_LIMIT;
1637
+ let last = limit;
1638
+ if (pages > limit) {
1639
+ const steps = Math.floor(limit / 2);
1640
+ if (page > steps) {
1641
+ firstItem = page - steps;
1642
+ }
1643
+ if ((page + steps) > pages) {
1644
+ firstItem = (pages - limit) + 1;
1645
+ }
1646
+ }
1647
+ else {
1648
+ last = pages;
1649
+ }
1650
+ let i;
1651
+ for (i = 0; i < last; i += 1) {
1652
+ const itemPage = firstItem + i;
1653
+ links.push({
1654
+ text: itemPage,
1655
+ classes: itemPage === page ? 'is-disabled' : '',
1656
+ anchor: {
1657
+ payload: itemPage,
1658
+ }
1659
+ });
1660
+ }
1661
+ return links;
1662
+ }
1663
+ }
1664
+
1492
1665
  class AwSearchLayoutTabsDS extends DataSource {
1493
1666
  constructor() {
1494
1667
  super(...arguments);
@@ -2108,6 +2281,7 @@ var DS = /*#__PURE__*/Object.freeze({
2108
2281
  AwTreeDS: AwTreeDS,
2109
2282
  AwExtendedTreeDS: AwExtendedTreeDS,
2110
2283
  AwSchedaImageNavigatorDS: AwSchedaImageNavigatorDS,
2284
+ AwSchedaSearchDS: AwSchedaSearchDS,
2111
2285
  AwSearchLayoutTabsDS: AwSearchLayoutTabsDS,
2112
2286
  AwFacetsWrapperDS: AwFacetsWrapperDS,
2113
2287
  AwGalleryResultsDS: AwGalleryResultsDS,
@@ -2488,10 +2662,18 @@ class AwSchedaPdfEH extends EventHandler {
2488
2662
  class AwExtendedTreeEH extends EventHandler {
2489
2663
  listen() {
2490
2664
  this.innerEvents$.subscribe(({ type, payload }) => {
2491
- // redirect event
2492
- this.emitOuter(type.split('.')[1], payload);
2665
+ if (payload === 'search-button') {
2666
+ this.dataSource.toggleSearch();
2667
+ }
2668
+ else {
2669
+ // redirect event
2670
+ this.emitOuter(type.split('.')[1], payload);
2671
+ }
2493
2672
  });
2494
2673
  this.outerEvents$.subscribe(({ type }) => {
2674
+ if (type === 'aw-scheda-layout.routechanged') {
2675
+ this.dataSource.searchIsOpen = false;
2676
+ }
2495
2677
  if (type === 'aw-scheda-layout.extendedtreerequest') {
2496
2678
  this.dataSource.setLoading(true);
2497
2679
  }
@@ -2516,6 +2698,20 @@ class AwSchedaImageNavigatorEH extends EventHandler {
2516
2698
  }
2517
2699
  }
2518
2700
 
2701
+ class AwSchedaSearchEH extends EventHandler {
2702
+ listen() {
2703
+ this.innerEvents$.subscribe(({ type, payload }) => {
2704
+ // redirect event
2705
+ this.emitOuter(type.split('.')[1], payload);
2706
+ });
2707
+ this.outerEvents$.subscribe(({ type }) => {
2708
+ if (type === 'aw-scheda-layout.schedasearchrequest') {
2709
+ this.dataSource.setLoading(true);
2710
+ }
2711
+ });
2712
+ }
2713
+ }
2714
+
2519
2715
  class AwSearchLayoutTabsEH extends EventHandler {
2520
2716
  listen() {
2521
2717
  // TODO
@@ -2978,6 +3174,7 @@ var EH = /*#__PURE__*/Object.freeze({
2978
3174
  AwSchedaPdfEH: AwSchedaPdfEH,
2979
3175
  AwExtendedTreeEH: AwExtendedTreeEH,
2980
3176
  AwSchedaImageNavigatorEH: AwSchedaImageNavigatorEH,
3177
+ AwSchedaSearchEH: AwSchedaSearchEH,
2981
3178
  AwSearchLayoutTabsEH: AwSearchLayoutTabsEH,
2982
3179
  AwFacetsWrapperEH: AwFacetsWrapperEH,
2983
3180
  AwGalleryResultsEH: AwGalleryResultsEH,
@@ -5393,6 +5590,10 @@ class AwHomeLayoutDS extends LayoutDataSource {
5393
5590
  const TOEconfigData = this.configuration.get('config-keys')[toe.type];
5394
5591
  facetData.push(Object.assign(Object.assign(Object.assign({}, toe), { enabled: true, locked: false }), TOEconfigData));
5395
5592
  });
5593
+ this.one('aw-home-facets-wrapper').updateOptions({
5594
+ pageConfig: this.configuration.get('home-layout'),
5595
+ paths: this.configuration.get('paths')
5596
+ });
5396
5597
  this.one('aw-home-facets-wrapper').update(facetData);
5397
5598
  }
5398
5599
  renderPreviewsFromApolloQuery(response) {
@@ -5922,10 +6123,10 @@ class AwHomeLayoutComponent extends AbstractLayout {
5922
6123
  }
5923
6124
  }
5924
6125
  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 });
5925
- 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" }] });
6126
+ 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" }] });
5926
6127
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: AwHomeLayoutComponent, decorators: [{
5927
6128
  type: Component,
5928
- 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" }]
6129
+ 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" }]
5929
6130
  }], ctorParameters: function () { return [{ type: i1.LayoutsConfigurationService }, { type: i1$1.Router }, { type: i1.ConfigurationService }, { type: i1.CommunicationService }, { type: i1.MainStateService }]; } });
5930
6131
 
5931
6132
  class AwMapLayoutDS extends LayoutDataSource {
@@ -6151,6 +6352,7 @@ class AwSchedaLayoutDS extends LayoutDataSource {
6151
6352
  /** Switch loaded-content and loaded-empty states */
6152
6353
  this.hasContent = true;
6153
6354
  this.extendedTreeParams = {};
6355
+ this.internalSearchParams = {};
6154
6356
  /** Name of query that should be used (chosen in config) */
6155
6357
  this.getTreeQuery = 'getTree';
6156
6358
  this.titleNavigation = null;
@@ -6367,13 +6569,13 @@ class AwSchedaLayoutDS extends LayoutDataSource {
6367
6569
  nodes: nodesResponse
6368
6570
  });
6369
6571
  // fix query input update
6370
- if (params.query) {
6371
- setTimeout(() => {
6372
- const queryInput = document
6373
- .querySelector('.aw-extended-tree__header .n7-inner-title__search-bar');
6572
+ setTimeout(() => {
6573
+ const queryInput = document
6574
+ .querySelector('.aw-extended-tree__header .n7-inner-title__search-bar');
6575
+ if (queryInput) {
6374
6576
  queryInput.value = params.query || '';
6375
- });
6376
- }
6577
+ }
6578
+ });
6377
6579
  }
6378
6580
  });
6379
6581
  }
@@ -6381,6 +6583,48 @@ class AwSchedaLayoutDS extends LayoutDataSource {
6381
6583
  this.hasExtendedTree = false;
6382
6584
  }
6383
6585
  }
6586
+ loadInternalSearch() {
6587
+ const parentResponse = this.lastResponse;
6588
+ if (this.layoutConfig['internal-search']) {
6589
+ this.hasInternalSearch = true;
6590
+ const configKeys = this.configuration.get('config-keys');
6591
+ const widgetOptions = this.layoutConfig['internal-search'];
6592
+ const rawParams = Object.assign({ id: parentResponse.id, 'search-page': 1, 'search-limit': 10, 'search-query': null, ancestor: true }, this.internalSearchParams);
6593
+ // set params object without "search-" prefix
6594
+ const params = {};
6595
+ Object.keys(rawParams).forEach((paramKey) => {
6596
+ params[paramKey.replace('search-', '')] = rawParams[paramKey];
6597
+ });
6598
+ const widgetParams = clone(params);
6599
+ // normalize params
6600
+ params.offset = (params.page - 1) * params.limit;
6601
+ delete params.page;
6602
+ const basePath = this.configuration.get('paths').schedaBasePath;
6603
+ let request$ = of(null);
6604
+ if (params.query) {
6605
+ request$ = this.communication.request$('getNodeChildren', {
6606
+ params,
6607
+ onError: (error) => console.error(error),
6608
+ });
6609
+ }
6610
+ request$.subscribe((nodesResponse) => {
6611
+ this.one('aw-scheda-search').updateOptions(Object.assign({ basePath,
6612
+ configKeys, params: widgetParams }, widgetOptions));
6613
+ this.one('aw-scheda-search').update(nodesResponse);
6614
+ // fix query input update
6615
+ setTimeout(() => {
6616
+ const queryInput = document
6617
+ .querySelector('.aw-scheda-search__input input[type="text"]');
6618
+ if (queryInput) {
6619
+ queryInput.value = params.query || '';
6620
+ }
6621
+ });
6622
+ });
6623
+ }
6624
+ else {
6625
+ this.hasInternalSearch = false;
6626
+ }
6627
+ }
6384
6628
  loadTitleNavigation() {
6385
6629
  var _a;
6386
6630
  // reset
@@ -6525,6 +6769,9 @@ class AwSchedaLayoutDS extends LayoutDataSource {
6525
6769
  return $do;
6526
6770
  });
6527
6771
  }
6772
+ _normalizeItems(items) {
6773
+ return items.map((singleItem) => ({ item: Object.assign({}, singleItem) }));
6774
+ }
6528
6775
  }
6529
6776
  AwSchedaLayoutDS.tree = null;
6530
6777
 
@@ -6534,6 +6781,7 @@ class AwSchedaLayoutEH extends EventHandler {
6534
6781
  this.destroyed$ = new Subject();
6535
6782
  this.treeLoaded$ = new ReplaySubject();
6536
6783
  this.extendedTreeChanged$ = new Subject();
6784
+ this.schedaSearchChanged$ = new Subject();
6537
6785
  }
6538
6786
  listen() {
6539
6787
  this.innerEvents$.subscribe(({ type, payload }) => {
@@ -6551,6 +6799,7 @@ class AwSchedaLayoutEH extends EventHandler {
6551
6799
  this.listenRoute();
6552
6800
  this.listenRouteQueryParams();
6553
6801
  this.listenExtendedTree();
6802
+ this.listenSchedaSearch();
6554
6803
  this.loadNavigation(paramId);
6555
6804
  this.emitOuter('viewleaf');
6556
6805
  // scroll top
@@ -6577,6 +6826,9 @@ class AwSchedaLayoutEH extends EventHandler {
6577
6826
  case 'aw-scheda-dropdown.click':
6578
6827
  this.dataSource.changeDigitalObject(payload);
6579
6828
  break;
6829
+ /**
6830
+ * EXTENDED TREE EVENTS
6831
+ * ---------------------------------------------------> */
6580
6832
  case 'aw-extended-tree.change':
6581
6833
  {
6582
6834
  let key;
@@ -6623,6 +6875,38 @@ class AwSchedaLayoutEH extends EventHandler {
6623
6875
  });
6624
6876
  }
6625
6877
  break;
6878
+ /**
6879
+ * SCHEDA (INTERNAL) SEARCH EVENTS
6880
+ * ---------------------------------------------------> */
6881
+ case 'aw-scheda-search.change':
6882
+ {
6883
+ let key;
6884
+ let delay;
6885
+ if (payload.inputPayload === 'input-change') {
6886
+ key = 'query';
6887
+ delay = 1000;
6888
+ }
6889
+ else if (payload.inputPayload === 'input-enter') {
6890
+ key = 'query';
6891
+ }
6892
+ else if (payload.inputPayload === 'limit-select') {
6893
+ key = 'limit';
6894
+ }
6895
+ if (key) {
6896
+ this.schedaSearchChanged$.next({
6897
+ key,
6898
+ delay,
6899
+ value: payload.value,
6900
+ });
6901
+ }
6902
+ }
6903
+ break;
6904
+ case 'aw-scheda-search.click':
6905
+ this.schedaSearchChanged$.next({
6906
+ key: 'page',
6907
+ value: payload
6908
+ });
6909
+ break;
6626
6910
  default:
6627
6911
  break;
6628
6912
  }
@@ -6642,6 +6926,7 @@ class AwSchedaLayoutEH extends EventHandler {
6642
6926
  if (response) {
6643
6927
  this.dataSource.loadContent(response);
6644
6928
  this.dataSource.loadExtendedTree();
6929
+ this.dataSource.loadInternalSearch();
6645
6930
  this.checkTreeItems(response);
6646
6931
  }
6647
6932
  });
@@ -6672,23 +6957,75 @@ class AwSchedaLayoutEH extends EventHandler {
6672
6957
  });
6673
6958
  });
6674
6959
  }
6960
+ listenSchedaSearch() {
6961
+ this.schedaSearchChanged$.pipe(filter(({ key, value }) => !(key === 'page' && (!isNumber(+value) || +value < 1))), debounce(({ delay }) => timer(delay || 1))).subscribe(({ key, value }) => {
6962
+ const queryParams = {};
6963
+ if (typeof value === 'string') {
6964
+ queryParams[`search-${key}`] = value.trim().length ? value : null;
6965
+ }
6966
+ else {
6967
+ queryParams[`search-${key}`] = `${value}`;
6968
+ }
6969
+ // page check
6970
+ if (key !== 'page') {
6971
+ queryParams['search-page'] = '1';
6972
+ }
6973
+ // update url
6974
+ this.router.navigate([], {
6975
+ queryParams,
6976
+ queryParamsHandling: 'merge'
6977
+ });
6978
+ });
6979
+ }
6675
6980
  listenRouteQueryParams() {
6676
6981
  this.route.queryParams.subscribe((params) => {
6677
- const extendedTreeParams = clone(params);
6678
- // force numeric
6679
- ['page', 'limit'].forEach((key) => {
6680
- if (params[key] && isNumber(+params[key])) {
6681
- extendedTreeParams[key] = +params[key];
6982
+ const extendedTreeParams = {};
6983
+ const internalSearchParams = {};
6984
+ Object.keys(params).forEach((key) => {
6985
+ const treeAllowed = ['query', 'page', 'limit'];
6986
+ const internalAllowed = treeAllowed.map((item) => `search-${item}`);
6987
+ if (treeAllowed.includes(key)) {
6988
+ let value;
6989
+ if (key !== 'query') {
6990
+ value = isNumber(+params[key]) ? +params[key] : null;
6991
+ }
6992
+ else {
6993
+ value = params[key];
6994
+ }
6995
+ if (value) {
6996
+ extendedTreeParams[key] = value;
6997
+ }
6682
6998
  }
6683
- else {
6684
- delete extendedTreeParams[key];
6999
+ if (internalAllowed.includes(key)) {
7000
+ let value;
7001
+ if (key !== 'search-query') {
7002
+ value = isNumber(+params[key]) ? +params[key] : null;
7003
+ }
7004
+ else {
7005
+ value = params[key];
7006
+ }
7007
+ if (value) {
7008
+ internalSearchParams[key] = value;
7009
+ }
6685
7010
  }
6686
7011
  });
6687
- this.dataSource.extendedTreeParams = extendedTreeParams;
6688
- // has node response
6689
- if (this.dataSource.lastResponse) {
6690
- this.emitOuter('extendedtreerequest');
6691
- this.dataSource.loadExtendedTree();
7012
+ // scheda search changed
7013
+ if (!isEqual(this.dataSource.internalSearchParams, internalSearchParams)) {
7014
+ this.dataSource.internalSearchParams = internalSearchParams;
7015
+ // has node response
7016
+ if (this.dataSource.lastResponse) {
7017
+ this.emitOuter('schedasearchrequest');
7018
+ this.dataSource.loadInternalSearch();
7019
+ }
7020
+ // extended tree changed
7021
+ }
7022
+ if (!isEqual(this.dataSource.extendedTreeParams, extendedTreeParams)) {
7023
+ this.dataSource.extendedTreeParams = extendedTreeParams;
7024
+ // has node response
7025
+ if (this.dataSource.lastResponse) {
7026
+ this.emitOuter('extendedtreerequest');
7027
+ this.dataSource.loadExtendedTree();
7028
+ }
6692
7029
  }
6693
7030
  });
6694
7031
  }
@@ -6802,6 +7139,7 @@ const AwPatrimonioLayoutConfig = {
6802
7139
  { id: 'aw-chart-tippy' },
6803
7140
  { id: 'aw-linked-objects' },
6804
7141
  { id: 'aw-extended-tree' },
7142
+ { id: 'aw-scheda-search' },
6805
7143
  ],
6806
7144
  layoutDS: AwSchedaLayoutDS,
6807
7145
  layoutEH: AwSchedaLayoutEH,
@@ -6863,16 +7201,16 @@ class ExtendedTreeComponent {
6863
7201
  this.emit('pageinputsubmit');
6864
7202
  }
6865
7203
  onCollapseClick(type) {
6866
- if (type === 'text')
7204
+ if (['text', 'submit'].includes(type))
6867
7205
  return;
6868
7206
  this.lb.dataSource.onSectionCollapse('extended-tree');
6869
7207
  }
6870
7208
  }
6871
7209
  ExtendedTreeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ExtendedTreeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6872
- 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"] }] });
7210
+ 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"] }] });
6873
7211
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: ExtendedTreeComponent, decorators: [{
6874
7212
  type: Component,
6875
- 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>" }]
7213
+ 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>" }]
6876
7214
  }], propDecorators: { data: [{
6877
7215
  type: Input
6878
7216
  }], emit: [{
@@ -6899,6 +7237,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
6899
7237
  type: Input
6900
7238
  }] } });
6901
7239
 
7240
+ class SchedaSearchComponent {
7241
+ }
7242
+ SchedaSearchComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: SchedaSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
7243
+ 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"] }] });
7244
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: SchedaSearchComponent, decorators: [{
7245
+ type: Component,
7246
+ 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>" }]
7247
+ }], propDecorators: { data: [{
7248
+ type: Input
7249
+ }], emit: [{
7250
+ type: Input
7251
+ }] } });
7252
+
6902
7253
  class AwSchedaLayoutComponent extends AbstractLayout {
6903
7254
  constructor(router, route, configuration, layoutsConfiguration, mainState, titleService, communication) {
6904
7255
  super(layoutsConfiguration.get('AwPatrimonioLayoutConfig') || AwPatrimonioLayoutConfig);
@@ -6934,10 +7285,10 @@ class AwSchedaLayoutComponent extends AbstractLayout {
6934
7285
  }
6935
7286
  }
6936
7287
  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 });
6937
- 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" }] });
7288
+ 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" }] });
6938
7289
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: AwSchedaLayoutComponent, decorators: [{
6939
7290
  type: Component,
6940
- 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>" }]
7291
+ 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>" }]
6941
7292
  }], 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 }]; } });
6942
7293
 
6943
7294
  const AwSearchLayoutConfig = {
@@ -7548,6 +7899,10 @@ var apolloConfig = (treeDepth) => ({
7548
7899
  img
7549
7900
  document_type
7550
7901
  document_classification
7902
+ breadcrumbs {
7903
+ label
7904
+ link
7905
+ }
7551
7906
  }
7552
7907
  totalCount
7553
7908
  }
@@ -7983,6 +8338,7 @@ const COMPONENTS = [
7983
8338
  SmartBreadcrumbsComponent,
7984
8339
  ExtendedTreeComponent,
7985
8340
  SchedaImageNavigatorComponent,
8341
+ SchedaSearchComponent,
7986
8342
  ];
7987
8343
  class N7BoilerplateAriannaModule {
7988
8344
  constructor(initStatus, config) {
@@ -8012,7 +8368,8 @@ N7BoilerplateAriannaModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.
8012
8368
  SchedaDropdownComponent,
8013
8369
  SmartBreadcrumbsComponent,
8014
8370
  ExtendedTreeComponent,
8015
- SchedaImageNavigatorComponent], imports: [CommonModule,
8371
+ SchedaImageNavigatorComponent,
8372
+ SchedaSearchComponent], imports: [CommonModule,
8016
8373
  RouterModule,
8017
8374
  DvComponentsLibModule,
8018
8375
  N7BoilerplateCommonModule,
@@ -8031,7 +8388,8 @@ N7BoilerplateAriannaModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.
8031
8388
  SchedaDropdownComponent,
8032
8389
  SmartBreadcrumbsComponent,
8033
8390
  ExtendedTreeComponent,
8034
- SchedaImageNavigatorComponent] });
8391
+ SchedaImageNavigatorComponent,
8392
+ SchedaSearchComponent] });
8035
8393
  N7BoilerplateAriannaModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: N7BoilerplateAriannaModule, imports: [CommonModule,
8036
8394
  RouterModule,
8037
8395
  DvComponentsLibModule,
@@ -8062,5 +8420,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
8062
8420
  * Generated bundle index. Do not edit.
8063
8421
  */
8064
8422
 
8065
- 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 };
8423
+ 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 };
8066
8424
  //# sourceMappingURL=net7-boilerplate-arianna.mjs.map