design-comuni-plone-theme 8.8.2 → 9.0.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 (67) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/RELEASE.md +12 -0
  3. package/locales/en/LC_MESSAGES/volto.po +1 -1
  4. package/locales/fr/LC_MESSAGES/volto.po +1 -1
  5. package/package.json +1 -1
  6. package/publiccode.yml +1 -1
  7. package/src/components/ItaliaTheme/Blocks/Listing/SliderTemplate.jsx +6 -2
  8. package/src/components/ItaliaTheme/CustomerSatisfaction/Steps/Commons/Rating.jsx +1 -1
  9. package/src/components/ItaliaTheme/Pagination/Pagination.jsx +11 -2
  10. package/src/components/ItaliaTheme/Pagination/PaginationItem.jsx +12 -1
  11. package/src/components/ItaliaTheme/View/BandoView/BandoApprofondimenti.jsx +3 -3
  12. package/src/components/ItaliaTheme/View/BandoView/BandoText.jsx +4 -6
  13. package/src/components/ItaliaTheme/View/BandoView/BandoView.jsx +2 -2
  14. package/src/components/ItaliaTheme/View/Commons/Attachment.jsx +1 -1
  15. package/src/components/ItaliaTheme/View/Commons/ContactsCard.jsx +4 -4
  16. package/src/components/ItaliaTheme/View/Commons/Events.jsx +9 -15
  17. package/src/components/ItaliaTheme/View/Commons/Gallery.jsx +1 -1
  18. package/src/components/ItaliaTheme/View/Commons/GenericCard.jsx +4 -4
  19. package/src/components/ItaliaTheme/View/Commons/LocationItem.jsx +2 -2
  20. package/src/components/ItaliaTheme/View/Commons/Module.jsx +1 -1
  21. package/src/components/ItaliaTheme/View/Commons/Modules.jsx +3 -3
  22. package/src/components/ItaliaTheme/View/Commons/NewsCard.jsx +2 -2
  23. package/src/components/ItaliaTheme/View/Commons/OfficeCard.jsx +2 -2
  24. package/src/components/ItaliaTheme/View/Commons/RelatedItemInEvidence/ItemInEvidence.jsx +1 -1
  25. package/src/components/ItaliaTheme/View/Commons/RelatedItems.jsx +2 -2
  26. package/src/components/ItaliaTheme/View/Commons/RichText.jsx +4 -1
  27. package/src/components/ItaliaTheme/View/Commons/RichTextSection.jsx +5 -2
  28. package/src/components/ItaliaTheme/View/Commons/SmallVenue.jsx +2 -2
  29. package/src/components/ItaliaTheme/View/Commons/TrasparenzaFields.jsx +3 -3
  30. package/src/components/ItaliaTheme/View/Commons/VenuesSmall.jsx +2 -2
  31. package/src/components/ItaliaTheme/View/Commons/index.jsx +0 -1
  32. package/src/components/ItaliaTheme/View/DocumentoView/DocumentoAutori.jsx +2 -1
  33. package/src/components/ItaliaTheme/View/DocumentoView/DocumentoDocumenti.jsx +1 -0
  34. package/src/components/ItaliaTheme/View/DocumentoView/DocumentoUlterioriInformazioni.jsx +5 -2
  35. package/src/components/ItaliaTheme/View/DocumentoView/DocumentoView.jsx +2 -2
  36. package/src/components/ItaliaTheme/View/EventoView/EventoContatti.jsx +16 -25
  37. package/src/components/ItaliaTheme/View/EventoView/EventoCosE.jsx +2 -3
  38. package/src/components/ItaliaTheme/View/EventoView/EventoSponsors.jsx +3 -1
  39. package/src/components/ItaliaTheme/View/EventoView/EventoUlterioriInformazioni.jsx +4 -3
  40. package/src/components/ItaliaTheme/View/EventoView/EventoView.jsx +2 -2
  41. package/src/components/ItaliaTheme/View/IncaricoView/IncaricoPersone.jsx +6 -5
  42. package/src/components/ItaliaTheme/View/IncaricoView/IncaricoView.jsx +1 -1
  43. package/src/components/ItaliaTheme/View/NewsItemView/NewsItemView.jsx +2 -2
  44. package/src/components/ItaliaTheme/View/PaginaArgomentoView/PaginaArgomentoViewNoBlocks.jsx +2 -2
  45. package/src/components/ItaliaTheme/View/PersonaView/PersonaRuolo.jsx +0 -1
  46. package/src/components/ItaliaTheme/View/PersonaView/PersonaView.jsx +2 -2
  47. package/src/components/ItaliaTheme/View/PuntoDiContattoView/PuntoDiContattoView.jsx +47 -45
  48. package/src/components/ItaliaTheme/View/ServizioView/ServizioAChiSiRivolge.jsx +6 -2
  49. package/src/components/ItaliaTheme/View/ServizioView/ServizioAccedi.jsx +8 -6
  50. package/src/components/ItaliaTheme/View/ServizioView/ServizioCostiVincoli.jsx +2 -1
  51. package/src/components/ItaliaTheme/View/ServizioView/ServizioSitiEsterni.jsx +1 -1
  52. package/src/components/ItaliaTheme/View/ServizioView/ServizioView.jsx +2 -2
  53. package/src/components/ItaliaTheme/View/UOView/UOContacts.jsx +6 -4
  54. package/src/components/ItaliaTheme/View/UOView/UOContactsParts/UOContactsContacts.jsx +7 -4
  55. package/src/components/ItaliaTheme/View/UOView/UOContactsParts/UOContactsLocations.jsx +1 -1
  56. package/src/components/ItaliaTheme/View/UOView/UOContactsParts/UOContactsSediSecondarie.jsx +8 -3
  57. package/src/components/ItaliaTheme/View/UOView/UODocuments.jsx +3 -5
  58. package/src/components/ItaliaTheme/View/UOView/UOPeople.jsx +7 -7
  59. package/src/components/ItaliaTheme/View/UOView/UOServices.jsx +4 -5
  60. package/src/components/ItaliaTheme/View/UOView/UOStructure.jsx +66 -56
  61. package/src/components/ItaliaTheme/View/UOView/UOView.jsx +2 -2
  62. package/src/components/ItaliaTheme/View/VenueView/VenueDescription.jsx +1 -1
  63. package/src/components/ItaliaTheme/View/VenueView/VenueView.jsx +2 -2
  64. package/src/components/ItaliaTheme/View/index.js +0 -1
  65. package/src/customizations/volto/components/manage/Blocks/Listing/ListingBody.jsx +6 -0
  66. package/src/theme/ItaliaTheme/Views/_slider.scss +1 -1
  67. package/src/components/ItaliaTheme/View/Commons/RichTextArticle.jsx +0 -56
@@ -24,16 +24,15 @@ const UOServices = ({ content }) => {
24
24
  return content?.servizi_offerti?.length > 0 ? (
25
25
  <section
26
26
  id={'servizi_offerti'}
27
- className={'it-page-section anchor-offset mt-5'}
27
+ className={'it-page-section anchor-offset mb-5 '}
28
28
  >
29
- <h2 id={`header-servizi_offerti`} className="h4">
29
+ <h2 id={`header-servizi_offerti`} className="mb-3 h4">
30
30
  {intl.formatMessage(messages.servizi_offerti)}
31
31
  </h2>
32
-
33
- <Row className="card-wrapper card-teaser-wrapper mt-4">
32
+ <Row className="card-wrapper card-teaser-wrapper">
34
33
  {content?.servizi_offerti?.map((servizio, i) => (
35
34
  <Col xs="12" lg="6">
36
- <Card className="shadow rounded card-big-io-comune p-3">
35
+ <Card className="shadow rounded card-big-io-comune p-3 my-3">
37
36
  <CardBody>
38
37
  <CardCategory date="">{servizio.parent_title}</CardCategory>
39
38
  <CardTitle tag="h5">
@@ -44,10 +44,10 @@ const UOStructure = ({ content }) => {
44
44
  content?.uo_children?.length > 0 ||
45
45
  content?.uo_parent ||
46
46
  content?.assessore_riferimento?.length > 0 ? (
47
- <section id="struttura" className="it-page-section anchor-offset mt-5">
47
+ <section id="struttura" className="it-page-section anchor-offset mb-5">
48
48
  {content.tipologia_organizzazione?.title && (
49
- <div className="mb-5 mt-3">
50
- <h2 className="h4">
49
+ <div className="mb-5">
50
+ <h2 className="mb-3 h4">
51
51
  {intl.formatMessage(messages.tipologia_organizzazione)}
52
52
  </h2>
53
53
  <p className="font-serif">{content.tipologia_organizzazione.title}</p>
@@ -56,69 +56,78 @@ const UOStructure = ({ content }) => {
56
56
  {(content.uo_parent ||
57
57
  content.uo_children?.length > 0 ||
58
58
  content.legami_con_altre_strutture?.length > 0) && (
59
- <h2 id="header-struttura" className="mb-3 h4">
60
- {intl.formatMessage(messages.struttura)}
61
- </h2>
62
- )}
63
- {content.uo_parent && (
64
- <div className="mb-5 mt-3">
65
- <h3 className="h5">
66
- {intl.formatMessage(messages.legami_struttura_padre)}
67
- </h3>
68
- <div className="card-wrapper card-teaser-wrapper card-teaser-wrapper-equal mb-3">
69
- <OfficeCard
70
- key={content.uo_parent['@id']}
71
- office={content.uo_parent}
72
- load_data={false}
73
- show_contacts={false}
74
- />
75
- </div>
76
- </div>
77
- )}
59
+ <div className="mb-5">
60
+ <h2 id="header-struttura" className="mb-3 h4">
61
+ {intl.formatMessage(messages.struttura)}
62
+ </h2>
78
63
 
79
- {content.uo_children?.length > 0 && (
80
- <div className="mb-5 mt-3">
81
- <h3 className="h5">
82
- {intl.formatMessage(messages.legami_strutture_figlie)}
83
- </h3>
84
- <div className="card-wrapper card-teaser-wrapper card-teaser-wrapper-equal mb-3">
85
- {content.uo_children.map((uo, i) => {
86
- return (
64
+ {content.uo_parent && (
65
+ <div className="mb-5">
66
+ <h3 className="h5">
67
+ {intl.formatMessage(messages.legami_struttura_padre)}
68
+ </h3>
69
+ <div className="card-wrapper card-teaser-wrapper card-teaser-wrapper-equal mb-3">
87
70
  <OfficeCard
88
- key={uo['@id']}
89
- office={uo}
71
+ key={content.uo_parent['@id']}
72
+ office={content.uo_parent}
90
73
  load_data={false}
91
74
  show_contacts={false}
92
75
  />
93
- );
94
- })}
95
- </div>
96
- </div>
97
- )}
76
+ </div>
77
+ </div>
78
+ )}
98
79
 
99
- {content.legami_con_altre_strutture?.length > 0 && (
100
- <div className="mb-5 mt-3">
101
- <h3 className="h5">
102
- {intl.formatMessage(messages.legami_altre_strutture)}
103
- </h3>
104
- <div className="card-wrapper card-teaser-wrapper card-teaser-wrapper-equal mb-3">
105
- {content.legami_con_altre_strutture.map((item, _i) => (
106
- <OfficeCard key={item['@id']} office={item} load_data={false} />
107
- ))}
108
- </div>
80
+ {content.uo_children?.length > 0 && (
81
+ <div className="mb-5">
82
+ <h3 className="h5">
83
+ {intl.formatMessage(messages.legami_strutture_figlie)}
84
+ </h3>
85
+ <div className="card-wrapper card-teaser-wrapper card-teaser-wrapper-equal mb-3">
86
+ {content.uo_children.map((uo, i) => {
87
+ return (
88
+ <OfficeCard
89
+ key={uo['@id']}
90
+ office={uo}
91
+ load_data={false}
92
+ show_contacts={false}
93
+ />
94
+ );
95
+ })}
96
+ </div>
97
+ </div>
98
+ )}
99
+
100
+ {content.legami_con_altre_strutture?.length > 0 && (
101
+ <div className="mb-5">
102
+ <h3 className="h5">
103
+ {intl.formatMessage(messages.legami_altre_strutture)}
104
+ </h3>
105
+ <div className="card-wrapper card-teaser-wrapper card-teaser-wrapper-equal mb-3">
106
+ {content.legami_con_altre_strutture.map((item, _i) => (
107
+ <OfficeCard
108
+ key={item['@id']}
109
+ office={item}
110
+ load_data={false}
111
+ />
112
+ ))}
113
+ </div>
114
+ </div>
115
+ )}
109
116
  </div>
110
117
  )}
118
+
111
119
  {content.responsabile?.length > 0 && (
112
- <div className="mb-5 mt-3">
113
- <h2 className="h4">{intl.formatMessage(messages.responsabile)}</h2>
114
- <Row className="card-wrapper card-teaser-wrapper ruolo-persone-struttura">
120
+ <div className="mb-5">
121
+ <h3 className="h5">{intl.formatMessage(messages.responsabile)}</h3>
122
+ <Row className="card-wrapper card-teaser-wrapper ruolo-persone-struttura">
115
123
  {content.responsabile.map((item, i) => (
116
124
  <Col xs="12" lg="12" xl="12" md="12" sm="12" key={item['@id']}>
117
125
  <CardPersona
118
126
  item={item}
119
- className={'shadow-sm'}
127
+ className="shadow-sm my-3"
120
128
  showImage={true}
121
- titleTagName={'h5'}
129
+ titleTagName="h4"
130
+ titleClassName="h5"
122
131
  />
123
132
  </Col>
124
133
  ))}
@@ -127,18 +136,19 @@ const UOStructure = ({ content }) => {
127
136
  )}
128
137
 
129
138
  {content.assessore_riferimento?.length > 0 && (
130
- <div className="mb-5 mt-3">
139
+ <div className="mb-5 ">
131
140
  <h3 className="h5">
132
141
  {intl.formatMessage(messages.assessore_riferimento)}
133
142
  </h3>
134
- <Row className="card-wrapper card-teaser-wrapper mt-2">
143
+ <Row className="card-wrapper card-teaser-wrapper ">
135
144
  {content.assessore_riferimento.map((item, _i) => (
136
145
  <Col xs="12" lg="12" xl="6" md="12" sm="12" key={item['@id']}>
137
146
  <CardPersona
138
147
  item={item}
139
- className={'shadow-sm'}
148
+ className="shadow-sm my-3"
140
149
  showImage={true}
141
- titleTagName={'h5'}
150
+ titleTagName="h4"
151
+ titleClassName="h5"
142
152
  listingText={item.incarichi}
143
153
  />
144
154
  </Col>
@@ -78,7 +78,7 @@ const UOView = ({ content }) => {
78
78
  {/* HEADER IMAGE */}
79
79
  <ContentImage content={content} position="afterHeader" />
80
80
 
81
- <div className="row row-column-border row-column-menu-left">
81
+ <div className="row row-column-border border-light row-column-menu-left">
82
82
  <aside className="col-lg-4">
83
83
  {__CLIENT__ && (
84
84
  <SideMenu data={sideMenuElements} content_uid={content?.UID} />
@@ -87,7 +87,7 @@ const UOView = ({ content }) => {
87
87
  <section
88
88
  ref={documentBody}
89
89
  id="main-content-section"
90
- className="col-lg-8 it-page-sections-container"
90
+ className="col-lg-8 it-page-sections-container border-light"
91
91
  >
92
92
  {/* SEZIONI */}
93
93
  <ContentTypeViewSections
@@ -58,7 +58,7 @@ const VenueDescription = ({ content }) => {
58
58
  {richTextHasContent(content.elementi_di_interesse) && (
59
59
  <RichTextSection
60
60
  tag_id="elementi-di-interesse"
61
- title={`${intl.formatMessage(messages.elementi_di_interesse)}:`}
61
+ title={`${intl.formatMessage(messages.elementi_di_interesse)}`}
62
62
  data={content.elementi_di_interesse}
63
63
  />
64
64
  )}
@@ -89,14 +89,14 @@ const VenueView = ({ content }) => {
89
89
  {/* HEADER IMAGE */}
90
90
  <ContentImage content={content} position="afterHeader" />
91
91
 
92
- <div className="row row-column-border row-column-menu-left">
92
+ <div className="row row-column-border border-light row-column-menu-left">
93
93
  <aside className="col-lg-4">
94
94
  {__CLIENT__ && (
95
95
  <SideMenu data={sideMenuElements} content_uid={content?.UID} />
96
96
  )}
97
97
  </aside>
98
98
  <section
99
- className="col-lg-8 it-page-sections-container"
99
+ className="col-lg-8 it-page-sections-container border-light"
100
100
  id="main-content-section"
101
101
  ref={documentBody}
102
102
  >
@@ -1,5 +1,4 @@
1
1
  /* --- Commons --- */
2
- export RichTextArticle from 'design-comuni-plone-theme/components/ItaliaTheme/View/Commons/RichTextArticle';
3
2
  export RichTextSection from 'design-comuni-plone-theme/components/ItaliaTheme/View/Commons/RichTextSection';
4
3
  export RichText from 'design-comuni-plone-theme/components/ItaliaTheme/View/Commons/RichText';
5
4
  export {
@@ -93,6 +93,11 @@ const ListingBody = React.memo(
93
93
  // Also need to purge title from searchblock schema, it's the name of the listing template used
94
94
  const listingBodyProps =
95
95
  variation?.['@type'] !== 'search' ? data : { ...variation, title: '' };
96
+
97
+ // Need to know if data-element is "service-link"
98
+ // to add data-element="pager-link" to pagination links
99
+ const isServiceLink = data.id_lighthouse === 'service-link';
100
+
96
101
  return (
97
102
  <div className="public-ui">
98
103
  {loadingQuery && (
@@ -123,6 +128,7 @@ const ListingBody = React.memo(
123
128
  activePage={currentPage}
124
129
  totalPages={totalPages}
125
130
  onPageChange={onPaginationChange}
131
+ isServiceLink={isServiceLink}
126
132
  />
127
133
  </div>
128
134
  )}
@@ -25,7 +25,7 @@
25
25
  ul.slick-dots {
26
26
  bottom: unset;
27
27
  padding: 0;
28
- margin: 0 0 0;
28
+ margin: 0;
29
29
 
30
30
  li {
31
31
  button:before {
@@ -1,56 +0,0 @@
1
- import React from 'react';
2
- import PropTypes from 'prop-types';
3
- import { RichTextRender } from 'design-comuni-plone-theme/components/ItaliaTheme/View';
4
- /**
5
- * RichTextArticle view component class.
6
- * @function RichTextArticle
7
- * @params {object} content: Content object.
8
- * @returns {string} Markup of the component.
9
- */
10
- const RichTextArticle = ({
11
- title,
12
- title_size,
13
- show_title = true,
14
- data,
15
- tag_id,
16
- add_class,
17
- children,
18
- }) => {
19
- let content_to_display = RichTextRender({
20
- data,
21
- add_class,
22
- serif: true,
23
- });
24
-
25
- return content_to_display || children ? (
26
- <article
27
- id={tag_id}
28
- className="it-page-section anchor-offset mt-5"
29
- menu_title={title ? title : ''}
30
- aria-labelledby={title_size !== 'h5' ? `header-${tag_id}` : undefined}
31
- >
32
- {title && show_title ? (
33
- title_size === 'h5' ? (
34
- <h5>{title}</h5>
35
- ) : (
36
- <h4 id={`header-${tag_id}`}>{title}</h4>
37
- )
38
- ) : (
39
- <h4 id={`header-${tag_id}`} style={{ display: 'none' }}>
40
- {title}
41
- </h4>
42
- )}
43
-
44
- {content_to_display}
45
- {children}
46
- </article>
47
- ) : null;
48
- };
49
- export default RichTextArticle;
50
-
51
- RichTextArticle.propTypes = {
52
- title: PropTypes.string,
53
- data: PropTypes.object,
54
- tag_id: PropTypes.string,
55
- add_class: PropTypes.string,
56
- };