imio.smartweb.core 1.2.12__py3-none-any.whl → 1.2.68__py3-none-any.whl
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.
- imio/smartweb/core/behaviors/categorization.py +24 -0
- imio/smartweb/core/behaviors/configure.zcml +7 -0
- imio/smartweb/core/browser/configure.zcml +41 -1
- imio/smartweb/core/browser/controlpanel.py +41 -0
- imio/smartweb/core/browser/dashboards/configure.zcml +0 -2
- imio/smartweb/core/browser/dashboards/plausible.py +4 -4
- imio/smartweb/core/browser/faceted/block_view.pt +4 -4
- imio/smartweb/core/browser/faceted/summary_view.pt +4 -4
- imio/smartweb/core/browser/forms.py +3 -3
- imio/smartweb/core/browser/redirect_to_main_react_view.py +52 -0
- imio/smartweb/core/browser/search/search.pt +2 -1
- imio/smartweb/core/browser/search/search.py +4 -0
- imio/smartweb/core/browser/sitemap.py +148 -0
- imio/smartweb/core/browser/static/icons/action-delete.svg +3 -0
- imio/smartweb/core/browser/static/icons/action-e-guichet.svg +1 -1
- imio/smartweb/core/browser/static/icons/action-email.svg +1 -1
- imio/smartweb/core/browser/static/icons/action-engagement-2.svg +4 -0
- imio/smartweb/core/browser/static/icons/action-engagement.svg +1 -1
- imio/smartweb/core/browser/static/icons/action-nous-contacter.svg +1 -1
- imio/smartweb/core/browser/static/icons/action-nous-rejoindre.svg +2 -1
- imio/smartweb/core/browser/static/icons/action-organiser-un-evenement.svg +1 -1
- imio/smartweb/core/browser/static/icons/action-panneaux.svg +3 -0
- imio/smartweb/core/browser/static/icons/action-signaler-un-probleme.svg +1 -1
- imio/smartweb/core/browser/static/icons/action-voir-plan.svg +1 -1
- imio/smartweb/core/browser/static/icons/action-vote.svg +3 -0
- imio/smartweb/core/browser/static/icons/categorie-associations.svg +1 -1
- imio/smartweb/core/browser/static/icons/categorie-attention.svg +3 -0
- imio/smartweb/core/browser/static/icons/categorie-avis-et-enquetes.svg +1 -1
- imio/smartweb/core/browser/static/icons/categorie-cinema.svg +1 -1
- imio/smartweb/core/browser/static/icons/categorie-commerce.svg +1 -1
- imio/smartweb/core/browser/static/icons/categorie-concert.svg +1 -1
- imio/smartweb/core/browser/static/icons/categorie-culture.svg +1 -1
- imio/smartweb/core/browser/static/icons/categorie-demarches.svg +1 -1
- imio/smartweb/core/browser/static/icons/categorie-enfance.svg +1 -1
- imio/smartweb/core/browser/static/icons/categorie-enseignement.svg +1 -1
- imio/smartweb/core/browser/static/icons/categorie-environnement-gestion-des-dechets.svg +1 -1
- imio/smartweb/core/browser/static/icons/categorie-exposition.svg +1 -1
- imio/smartweb/core/browser/static/icons/categorie-horaires.svg +1 -1
- imio/smartweb/core/browser/static/icons/categorie-infos-travaux-2.svg +4 -0
- imio/smartweb/core/browser/static/icons/categorie-infos-travaux.svg +1 -1
- imio/smartweb/core/browser/static/icons/categorie-mandataires.svg +1 -1
- imio/smartweb/core/browser/static/icons/categorie-mobilite.svg +1 -1
- imio/smartweb/core/browser/static/icons/categorie-mon-dossier.svg +1 -1
- imio/smartweb/core/browser/static/icons/categorie-nature.svg +3 -0
- imio/smartweb/core/browser/static/icons/categorie-parc-de-stationnement.svg +1 -1
- imio/smartweb/core/browser/static/icons/categorie-parcs-a-conteneurs.svg +4 -0
- imio/smartweb/core/browser/static/icons/categorie-parcs-et-jardins.svg +1 -1
- imio/smartweb/core/browser/static/icons/categorie-plus.svg +3 -0
- imio/smartweb/core/browser/static/icons/categorie-primes-2.svg +5 -0
- imio/smartweb/core/browser/static/icons/categorie-primes.svg +1 -1
- imio/smartweb/core/browser/static/icons/categorie-sport-courir.svg +1 -1
- imio/smartweb/core/browser/static/icons/categorie-sport-natation.svg +4 -0
- imio/smartweb/core/browser/static/icons/categorie-sport-velo.svg +1 -1
- imio/smartweb/core/browser/static/icons/categorie-tourisme.svg +1 -1
- imio/smartweb/core/browser/static/icons/organisation-academie-musique.svg +1 -1
- imio/smartweb/core/browser/static/icons/organisation-centre-sportif.svg +1 -1
- imio/smartweb/core/browser/static/icons/organisation-cpas.svg +1 -1
- imio/smartweb/core/browser/static/icons/organisation-ecole-des-arts.svg +1 -1
- imio/smartweb/core/browser/static/icons/organisation-ecole-sac.svg +4 -0
- imio/smartweb/core/browser/static/icons/organisation-ecole.svg +1 -1
- imio/smartweb/core/browser/static/icons/organisation-mobilite.svg +1 -1
- imio/smartweb/core/browser/static/icons/organisation-scout.svg +3 -0
- imio/smartweb/core/browser/static/icons/reseausocial-behance.svg +3 -0
- imio/smartweb/core/browser/static/icons/reseausocial-facebook.svg +1 -1
- imio/smartweb/core/browser/static/icons/reseausocial-linkedin.svg +3 -0
- imio/smartweb/core/browser/static/icons/reseausocial-twitter.svg +3 -13
- imio/smartweb/core/browser/static/icons/reseausocial-vimeo.svg +1 -1
- imio/smartweb/core/browser/static/icons/reseausocial-youtube.svg +1 -1
- imio/smartweb/core/browser/static/icons/vue-actualites.svg +1 -1
- imio/smartweb/core/browser/static/icons/vue-agenda.svg +1 -1
- imio/smartweb/core/browser/static/icons/vue-annuaire.svg +1 -1
- imio/smartweb/core/browser/static/smartweb-edit-compiled.css +1 -1
- imio/smartweb/core/browser/static/smartweb-edit-compiled.js +1 -1
- imio/smartweb/core/browser/static/smartweb-view-compiled.css +1 -1
- imio/smartweb/core/browser/static/smartweb-view-compiled.js +1 -1
- imio/smartweb/core/browser/static/src/edit.js +5 -0
- imio/smartweb/core/browser/static/src/edit.less +42 -0
- imio/smartweb/core/browser/static/src/view.js +11 -0
- imio/smartweb/core/browser/static/src/view.less +4 -0
- imio/smartweb/core/browser/utils.py +5 -32
- imio/smartweb/core/browser/vocabulary.py +40 -0
- imio/smartweb/core/contents/__init__.py +4 -0
- imio/smartweb/core/contents/configure.zcml +1 -0
- imio/smartweb/core/contents/cropping.py +1 -1
- imio/smartweb/core/contents/folder/block_view.pt +8 -8
- imio/smartweb/core/contents/folder/summary_view.pt +4 -4
- imio/smartweb/core/contents/pages/cirkwi/content.py +5 -0
- imio/smartweb/core/contents/pages/cirkwi/view.py +2 -1
- imio/smartweb/core/contents/pages/portal_page/view.py +3 -0
- imio/smartweb/core/contents/pages/views.py +3 -1
- imio/smartweb/core/contents/publication/configure.zcml +5 -0
- imio/smartweb/core/contents/publication/content.py +23 -0
- imio/smartweb/core/contents/rest/base.py +24 -10
- imio/smartweb/core/contents/rest/configure.zcml +7 -0
- imio/smartweb/core/contents/rest/directory/content.py +2 -2
- imio/smartweb/core/contents/rest/directory/endpoint.py +2 -2
- imio/smartweb/core/contents/rest/directory/view.pt +3 -1
- imio/smartweb/core/contents/rest/directory/view.py +3 -0
- imio/smartweb/core/contents/rest/events/content.py +15 -2
- imio/smartweb/core/contents/rest/events/endpoint.py +5 -7
- imio/smartweb/core/contents/rest/events/view.pt +6 -1
- imio/smartweb/core/contents/rest/events/view.py +15 -0
- imio/smartweb/core/contents/rest/news/content.py +8 -2
- imio/smartweb/core/contents/rest/news/endpoint.py +4 -2
- imio/smartweb/core/contents/rest/news/view.pt +5 -1
- imio/smartweb/core/contents/rest/news/view.py +11 -0
- imio/smartweb/core/contents/rest/search/endpoint.py +4 -4
- imio/smartweb/core/contents/rest/traversal.py +18 -0
- imio/smartweb/core/contents/rest/utils.py +98 -0
- imio/smartweb/core/contents/rest/view.py +11 -0
- imio/smartweb/core/contents/sections/common_templates/carousel.pt +6 -2
- imio/smartweb/core/contents/sections/common_templates/table.pt +22 -8
- imio/smartweb/core/contents/sections/configure.zcml +18 -0
- imio/smartweb/core/contents/sections/contact/content.py +2 -2
- imio/smartweb/core/contents/sections/contact/utils.py +2 -154
- imio/smartweb/core/contents/sections/events/content.py +12 -4
- imio/smartweb/core/contents/sections/events/view.py +20 -2
- imio/smartweb/core/contents/sections/external_content/configure.zcml +29 -0
- imio/smartweb/core/contents/sections/external_content/view.pt +25 -7
- imio/smartweb/core/contents/sections/external_content/view_idelux_waste.pt +50 -0
- imio/smartweb/core/contents/sections/external_content/view_inbw_containers_affluence.pt +91 -0
- imio/smartweb/core/contents/sections/external_content/view_odwb_widget.pt +20 -0
- imio/smartweb/core/contents/sections/external_content/views.py +306 -125
- imio/smartweb/core/contents/sections/files/content.py +7 -1
- imio/smartweb/core/contents/sections/files/view.py +40 -12
- imio/smartweb/core/contents/sections/links/view.py +5 -0
- imio/smartweb/core/contents/sections/macros.pt +39 -9
- imio/smartweb/core/contents/sections/news/content.py +11 -3
- imio/smartweb/core/contents/sections/news/view.py +20 -2
- imio/smartweb/core/contents/sections/text/view.pt +5 -4
- imio/smartweb/core/contents/sections/text/views.py +2 -0
- imio/smartweb/core/contents/sections/views.py +81 -4
- imio/smartweb/core/interfaces.py +15 -0
- imio/smartweb/core/profiles/default/actions.xml +15 -0
- imio/smartweb/core/profiles/default/diff_tool.xml +8 -0
- imio/smartweb/core/profiles/default/metadata.xml +1 -1
- imio/smartweb/core/profiles/default/registry/plone.xml +21 -4
- imio/smartweb/core/profiles/default/repositorytool.xml +1 -0
- imio/smartweb/core/profiles/default/taxonomies/page_category.xml +16 -0
- imio/smartweb/core/profiles/default/taxonomies/procedure_category.xml +26 -0
- imio/smartweb/core/profiles/default/types/Collection.xml +13 -0
- imio/smartweb/core/profiles/default/types/File.xml +13 -0
- imio/smartweb/core/profiles/default/types/Image.xml +13 -0
- imio/smartweb/core/profiles/default/types/imio.smartweb.BlockLink.xml +5 -0
- imio/smartweb/core/profiles/default/types/imio.smartweb.CirkwiView.xml +1 -0
- imio/smartweb/core/profiles/default/types/imio.smartweb.DirectoryView.xml +1 -0
- imio/smartweb/core/profiles/default/types/imio.smartweb.EventsView.xml +2 -0
- imio/smartweb/core/profiles/default/types/imio.smartweb.Folder.xml +1 -0
- imio/smartweb/core/profiles/default/types/imio.smartweb.NewsView.xml +2 -0
- imio/smartweb/core/profiles/default/types/imio.smartweb.Page.xml +1 -0
- imio/smartweb/core/profiles/default/types/imio.smartweb.PortalPage.xml +1 -0
- imio/smartweb/core/profiles/default/types/imio.smartweb.Procedure.xml +1 -0
- imio/smartweb/core/profiles/default/types/imio.smartweb.Publication.xml +38 -0
- imio/smartweb/core/profiles/default/types/imio.smartweb.SectionEvents.xml +1 -0
- imio/smartweb/core/profiles/default/types/imio.smartweb.SectionFiles.xml +2 -0
- imio/smartweb/core/profiles/default/types/imio.smartweb.SectionHTML.xml +0 -1
- imio/smartweb/core/profiles/default/types/imio.smartweb.SectionNews.xml +1 -0
- imio/smartweb/core/profiles/default/types.xml +1 -0
- imio/smartweb/core/profiles/icons/basic/registry.xml +120 -0
- imio/smartweb/core/profiles/testing/types/imio.smartweb.DirectoryView.xml +11 -0
- imio/smartweb/core/profiles/testing/types/imio.smartweb.EventsView.xml +11 -0
- imio/smartweb/core/profiles/testing/types/imio.smartweb.NewsView.xml +11 -0
- imio/smartweb/core/profiles/validation/contentrules.xml +102 -0
- imio/smartweb/core/profiles.zcml +8 -0
- imio/smartweb/core/rest/authentic_sources.py +23 -11
- imio/smartweb/core/subscribers.py +24 -0
- imio/smartweb/core/subscribers.zcml +4 -0
- imio/smartweb/core/tests/resources/json_iadeliberations_institutions.json +60 -0
- imio/smartweb/core/tests/resources/json_iadeliberations_publication.json +105 -0
- imio/smartweb/core/tests/resources/json_iadeliberations_publications.json +270 -0
- imio/smartweb/core/tests/resources/json_rest_events.json +6 -2
- imio/smartweb/core/tests/resources/json_rest_news.json +2 -2
- imio/smartweb/core/tests/resources/json_rest_specific_events.json +1 -1
- imio/smartweb/core/tests/test_cropping.py +4 -4
- imio/smartweb/core/tests/test_htmx_in_sections.py +131 -0
- imio/smartweb/core/tests/test_iadeliberations.py +136 -0
- imio/smartweb/core/tests/test_icons.py +1 -1
- imio/smartweb/core/tests/test_redirect_to_main_react_view.py +79 -0
- imio/smartweb/core/tests/test_rest.py +283 -22
- imio/smartweb/core/tests/test_section_contact.py +2 -2
- imio/smartweb/core/tests/test_section_events.py +28 -5
- imio/smartweb/core/tests/test_section_external_content.py +26 -25
- imio/smartweb/core/tests/test_section_news.py +30 -8
- imio/smartweb/core/tests/test_sections.py +38 -15
- imio/smartweb/core/tests/test_sitemap.py +174 -0
- imio/smartweb/core/tests/test_vocabularies.py +61 -4
- imio/smartweb/core/tests/test_vocabulary.py +43 -0
- imio/smartweb/core/tests/utils.py +15 -0
- imio/smartweb/core/upgrades/configure.zcml +180 -0
- imio/smartweb/core/upgrades/profiles/1051_to_1052/actions.xml +20 -0
- imio/smartweb/core/upgrades/profiles/1052_to_1053/diff_tool.xml +8 -0
- imio/smartweb/core/upgrades/profiles/1052_to_1053/repositorytool.xml +9 -0
- imio/smartweb/core/upgrades/profiles/1052_to_1053/types/imio.smartweb.SectionHTML.xml +14 -0
- imio/smartweb/core/upgrades/profiles/1053_to_1054/registry.xml +39 -0
- imio/smartweb/core/upgrades/profiles/1054_to_1055/types/Collection.xml +13 -0
- imio/smartweb/core/upgrades/profiles/1054_to_1055/types/File.xml +13 -0
- imio/smartweb/core/upgrades/profiles/1054_to_1055/types/Image.xml +13 -0
- imio/smartweb/core/upgrades/profiles/1054_to_1055/types/imio.smartweb.BlockLink.xml +12 -0
- imio/smartweb/core/upgrades/profiles/1054_to_1055/types/imio.smartweb.CirkwiView.xml +12 -0
- imio/smartweb/core/upgrades/profiles/1054_to_1055/types/imio.smartweb.DirectoryView.xml +12 -0
- imio/smartweb/core/upgrades/profiles/1054_to_1055/types/imio.smartweb.EventsView.xml +12 -0
- imio/smartweb/core/upgrades/profiles/1054_to_1055/types/imio.smartweb.Folder.xml +12 -0
- imio/smartweb/core/upgrades/profiles/1054_to_1055/types/imio.smartweb.NewsView.xml +12 -0
- imio/smartweb/core/upgrades/profiles/1054_to_1055/types/imio.smartweb.Page.xml +12 -0
- imio/smartweb/core/upgrades/profiles/1054_to_1055/types/imio.smartweb.PortalPage.xml +12 -0
- imio/smartweb/core/upgrades/profiles/1054_to_1055/types/imio.smartweb.Procedure.xml +12 -0
- imio/smartweb/core/upgrades/profiles/1055_to_1056/types/imio.smartweb.SectionFiles.xml +12 -0
- imio/smartweb/core/upgrades/profiles/1056_to_1057/types/imio.smartweb.EventsView.xml +11 -0
- imio/smartweb/core/upgrades/profiles/1056_to_1057/types/imio.smartweb.NewsView.xml +11 -0
- imio/smartweb/core/upgrades/profiles/1056_to_1057/types/imio.smartweb.SectionEvents.xml +11 -0
- imio/smartweb/core/upgrades/profiles/1056_to_1057/types/imio.smartweb.SectionNews.xml +11 -0
- imio/smartweb/core/upgrades/profiles/1057_to_1058/taxonomies/page_category.cfg +9 -0
- imio/smartweb/core/upgrades/profiles/1057_to_1058/taxonomies/page_category.xml +73 -0
- imio/smartweb/core/upgrades/profiles/1057_to_1058/taxonomies/procedure_category.cfg +9 -0
- imio/smartweb/core/upgrades/profiles/1057_to_1058/taxonomies/procedure_category.xml +118 -0
- imio/smartweb/core/upgrades/profiles/1058_to_1059/registry/linkedin-icon.xml +126 -0
- imio/smartweb/core/upgrades/profiles/1059_to_1060/registry/iadeliberation.xml +9 -0
- imio/smartweb/core/upgrades/profiles/1060_to_1061/types/imio.smartweb.Publication.xml +38 -0
- imio/smartweb/core/upgrades/profiles/1060_to_1061/types/imio.smartweb.SectionFiles.xml +11 -0
- imio/smartweb/core/upgrades/profiles/1060_to_1061/types.xml +4 -0
- imio/smartweb/core/upgrades/profiles/1060_to_1061/workflows.xml +6 -0
- imio/smartweb/core/utils.py +65 -3
- imio/smartweb/core/viewlets/configure.zcml +43 -0
- imio/smartweb/core/viewlets/external_content.py +13 -5
- imio/smartweb/core/viewlets/footer.pt +5 -0
- imio/smartweb/core/viewlets/footer.py +5 -0
- imio/smartweb/core/viewlets/htmx.py +15 -0
- imio/smartweb/core/viewlets/htmx_js_header.pt +59 -0
- imio/smartweb/core/viewlets/httpheaders.py +13 -0
- imio/smartweb/core/viewlets/odwb_widget_header.pt +19 -0
- imio/smartweb/core/viewlets/offcanvas.pt +2 -1
- imio/smartweb/core/viewlets/ogp_tag_header.pt +19 -0
- imio/smartweb/core/viewlets/ogptags.py +144 -0
- imio/smartweb/core/viewlets/social.py +23 -0
- imio/smartweb/core/vocabularies.py +66 -2
- imio/smartweb/core/vocabularies.zcml +18 -0
- imio/smartweb/core/webcomponents/build/1c1605a5fe9a2b10a88f.png +1 -0
- imio/smartweb/core/webcomponents/build/524db40e119aa11f4478.png +1 -0
- imio/smartweb/core/webcomponents/build/57d3b7cb1ab874660b39.svg +1 -0
- imio/smartweb/core/webcomponents/build/6cf03871df23ed2ee8b3.png +1 -0
- imio/smartweb/core/webcomponents/build/css/373.smartweb-webcomponents-compiled.css +1 -0
- imio/smartweb/core/webcomponents/build/css/486.smartweb-webcomponents-compiled.css +1 -0
- imio/smartweb/core/webcomponents/build/css/884.smartweb-webcomponents-compiled.css +1 -0
- imio/smartweb/core/webcomponents/build/css/919.smartweb-webcomponents-compiled.css +1 -0
- imio/smartweb/core/webcomponents/build/css/smartweb-webcomponents-compiled.css +1 -1
- imio/smartweb/core/webcomponents/build/js/218.smartweb-webcomponents-compiled.js +2 -0
- imio/smartweb/core/webcomponents/build/js/218.smartweb-webcomponents-compiled.js.LICENSE.txt +16 -0
- imio/smartweb/core/webcomponents/build/js/373.smartweb-webcomponents-compiled.js +2 -0
- imio/smartweb/core/webcomponents/build/js/373.smartweb-webcomponents-compiled.js.LICENSE.txt +10 -0
- imio/smartweb/core/webcomponents/build/js/486.smartweb-webcomponents-compiled.js +1 -0
- imio/smartweb/core/webcomponents/build/js/499.smartweb-webcomponents-compiled.js +2 -0
- imio/smartweb/core/webcomponents/build/js/{212.smartweb-webcomponents-compiled.js.LICENSE.txt → 499.smartweb-webcomponents-compiled.js.LICENSE.txt} +1 -8
- imio/smartweb/core/webcomponents/build/js/799.smartweb-webcomponents-compiled.js +2 -0
- imio/smartweb/core/webcomponents/build/js/824.smartweb-webcomponents-compiled.js +2 -0
- imio/smartweb/core/webcomponents/build/js/828.smartweb-webcomponents-compiled.js +2 -0
- imio/smartweb/core/webcomponents/build/js/828.smartweb-webcomponents-compiled.js.LICENSE.txt +32 -0
- imio/smartweb/core/webcomponents/build/js/884.smartweb-webcomponents-compiled.js +1 -0
- imio/smartweb/core/webcomponents/build/js/919.smartweb-webcomponents-compiled.js +1 -0
- imio/smartweb/core/webcomponents/build/js/963.smartweb-webcomponents-compiled.js +2 -0
- imio/smartweb/core/webcomponents/build/js/963.smartweb-webcomponents-compiled.js.LICENSE.txt +3 -0
- imio/smartweb/core/webcomponents/build/js/smartweb-webcomponents-compiled.js +1 -1
- imio/smartweb/core/webcomponents/build/js/smartweb-webcomponents-compiled.js.LICENSE.txt +11 -14
- imio/smartweb/core/webcomponents/package.json +46 -44
- imio/smartweb/core/webcomponents/src/assets/contentIcon/download.svg +1 -0
- imio/smartweb/core/webcomponents/src/components/Annuaire/Annuaire.jsx +160 -92
- imio/smartweb/core/webcomponents/src/components/Annuaire/Annuaire.scss +250 -157
- imio/smartweb/core/webcomponents/src/components/Annuaire/ContactCard/ContactCard.jsx +113 -81
- imio/smartweb/core/webcomponents/src/components/Annuaire/ContactContent/ContactContent.jsx +394 -188
- imio/smartweb/core/webcomponents/src/components/Annuaire/ContactList/ContactList.jsx +26 -9
- imio/smartweb/core/webcomponents/src/components/Annuaire/Filters/Filter.jsx +213 -100
- imio/smartweb/core/webcomponents/src/components/Annuaire/index.js +1 -1
- imio/smartweb/core/webcomponents/src/components/Events/EventCard/EventCard.jsx +86 -0
- imio/smartweb/core/webcomponents/src/components/Events/EventContent/EventContent.jsx +615 -0
- imio/smartweb/core/webcomponents/src/components/Events/EventList/EventList.jsx +67 -0
- imio/smartweb/core/webcomponents/src/components/Events/Events.jsx +181 -103
- imio/smartweb/core/webcomponents/src/components/Events/Events.scss +316 -182
- imio/smartweb/core/webcomponents/src/components/Events/Filters/Filter.jsx +275 -80
- imio/smartweb/core/webcomponents/src/components/Filters/DateFilter.jsx +136 -0
- imio/smartweb/core/webcomponents/src/components/Filters/DateFilter.scss +104 -0
- imio/smartweb/core/webcomponents/src/components/Filters/IamData.jsx +42 -0
- imio/smartweb/core/webcomponents/src/components/Filters/MainFilter.scss +227 -0
- imio/smartweb/core/webcomponents/src/components/Filters/PublicTargetData.jsx +94 -0
- imio/smartweb/core/webcomponents/src/components/Filters/SelectStyles.js +58 -0
- imio/smartweb/core/webcomponents/src/components/Filters/TaxonomyFilter.jsx +149 -0
- imio/smartweb/core/webcomponents/src/components/Filters/TaxonomyFilter.scss +70 -0
- imio/smartweb/core/webcomponents/src/components/News/Filters/Filter.jsx +139 -83
- imio/smartweb/core/webcomponents/src/components/News/News.jsx +141 -74
- imio/smartweb/core/webcomponents/src/components/News/News.scss +41 -15
- imio/smartweb/core/webcomponents/src/components/News/NewsCard/NewsCard.jsx +96 -0
- imio/smartweb/core/webcomponents/src/components/News/NewsContent/NewsContent.jsx +309 -0
- imio/smartweb/core/webcomponents/src/components/News/NewsList/NewsList.jsx +76 -0
- imio/smartweb/core/webcomponents/src/components/Search/ContactResult/ContactResult.jsx +28 -14
- imio/smartweb/core/webcomponents/src/components/Search/EventsResult/EventsResult.jsx +28 -14
- imio/smartweb/core/webcomponents/src/components/Search/Filters/Filter.jsx +51 -32
- imio/smartweb/core/webcomponents/src/components/Search/NewsResult/NewsResult.jsx +29 -15
- imio/smartweb/core/webcomponents/src/components/Search/Search.jsx +18 -13
- imio/smartweb/core/webcomponents/src/components/Search/Search.scss +125 -105
- imio/smartweb/core/webcomponents/src/components/Search/WebResult/WebResult.jsx +19 -6
- imio/smartweb/core/webcomponents/src/components/Search/index.js +1 -1
- imio/smartweb/core/webcomponents/src/hooks/ScrollContext.jsx +3 -0
- imio/smartweb/core/webcomponents/src/hooks/useAxios.js +3 -6
- imio/smartweb/core/webcomponents/src/hooks/useFilterQuery.js +1 -2
- imio/smartweb/core/webcomponents/src/index.scss +246 -211
- imio/smartweb/core/webcomponents/src/utils/Map.jsx +159 -0
- imio/smartweb/core/webcomponents/src/{components/Annuaire/ContactMap/ContactMap.scss → utils/Map.scss} +2 -2
- imio/smartweb/core/webcomponents/src/utils/translation.js +283 -14
- imio.smartweb.core-1.2.68-py3.11-nspkg.pth +2 -0
- {imio.smartweb.core-1.2.12.dist-info → imio.smartweb.core-1.2.68.dist-info}/METADATA +548 -3
- {imio.smartweb.core-1.2.12.dist-info → imio.smartweb.core-1.2.68.dist-info}/RECORD +317 -240
- {imio.smartweb.core-1.2.12.dist-info → imio.smartweb.core-1.2.68.dist-info}/WHEEL +1 -1
- imio/smartweb/core/webcomponents/build/assets/location-bla.1423bcce16ddcb21141430cac1428dc1.svg +0 -1
- imio/smartweb/core/webcomponents/build/assets/next-react-white.819cb069ac8eec300a9db6a7707712d6.svg +0 -1
- imio/smartweb/core/webcomponents/build/assets/next-react.17bc43ff4a6a86f4520f5782f6a89a72.svg +0 -1
- imio/smartweb/core/webcomponents/build/assets/search.57bdbf5b191499cd77514097d1c4972c.svg +0 -1
- imio/smartweb/core/webcomponents/build/css/267.smartweb-webcomponents-compiled.css +0 -1
- imio/smartweb/core/webcomponents/build/css/323.smartweb-webcomponents-compiled.css +0 -1
- imio/smartweb/core/webcomponents/build/css/552.smartweb-webcomponents-compiled.css +0 -1
- imio/smartweb/core/webcomponents/build/css/779.smartweb-webcomponents-compiled.css +0 -1
- imio/smartweb/core/webcomponents/build/js/144.smartweb-webcomponents-compiled.js +0 -2
- imio/smartweb/core/webcomponents/build/js/212.smartweb-webcomponents-compiled.js +0 -2
- imio/smartweb/core/webcomponents/build/js/267.smartweb-webcomponents-compiled.js +0 -1
- imio/smartweb/core/webcomponents/build/js/323.smartweb-webcomponents-compiled.js +0 -2
- imio/smartweb/core/webcomponents/build/js/323.smartweb-webcomponents-compiled.js.LICENSE.txt +0 -1
- imio/smartweb/core/webcomponents/build/js/552.smartweb-webcomponents-compiled.js +0 -2
- imio/smartweb/core/webcomponents/build/js/552.smartweb-webcomponents-compiled.js.LICENSE.txt +0 -1
- imio/smartweb/core/webcomponents/build/js/565.smartweb-webcomponents-compiled.js +0 -1
- imio/smartweb/core/webcomponents/build/js/612.smartweb-webcomponents-compiled.js +0 -2
- imio/smartweb/core/webcomponents/build/js/612.smartweb-webcomponents-compiled.js.LICENSE.txt +0 -1
- imio/smartweb/core/webcomponents/build/js/779.smartweb-webcomponents-compiled.js +0 -1
- imio/smartweb/core/webcomponents/build/js/9.smartweb-webcomponents-compiled.js +0 -2
- imio/smartweb/core/webcomponents/build/js/969.smartweb-webcomponents-compiled.js +0 -2
- imio/smartweb/core/webcomponents/build/js/969.smartweb-webcomponents-compiled.js.LICENSE.txt +0 -642
- imio/smartweb/core/webcomponents/pnpm-lock.yaml +0 -7066
- imio/smartweb/core/webcomponents/src/assets/facebook-news.svg +0 -1
- imio/smartweb/core/webcomponents/src/assets/location-bla.svg +0 -1
- imio/smartweb/core/webcomponents/src/assets/next-react.svg +0 -1
- imio/smartweb/core/webcomponents/src/assets/search.svg +0 -1
- imio/smartweb/core/webcomponents/src/assets/skeleton.svg +0 -1
- imio/smartweb/core/webcomponents/src/components/Annuaire/ContactMap/ContactMap.jsx +0 -156
- imio/smartweb/core/webcomponents/src/components/Annuaire/Skeleton/LoaderCss.jsx +0 -7
- imio/smartweb/core/webcomponents/src/components/Annuaire/Skeleton/Skeleton.jsx +0 -20
- imio/smartweb/core/webcomponents/src/components/Events/ContactCard/ContactCard.jsx +0 -49
- imio/smartweb/core/webcomponents/src/components/Events/ContactContent/ContactContent.jsx +0 -400
- imio/smartweb/core/webcomponents/src/components/Events/ContactList/ContactList.jsx +0 -42
- imio/smartweb/core/webcomponents/src/components/Events/ContactMap/ContactMap.jsx +0 -156
- imio/smartweb/core/webcomponents/src/components/Events/Skeleton/Skeleton.jsx +0 -20
- imio/smartweb/core/webcomponents/src/components/News/ContactCard/ContactCard.jsx +0 -78
- imio/smartweb/core/webcomponents/src/components/News/ContactContent/ContactContent.jsx +0 -261
- imio/smartweb/core/webcomponents/src/components/News/ContactList/ContactList.jsx +0 -37
- imio/smartweb/core/webcomponents/src/components/News/ContactMap/ContactMap.jsx +0 -127
- imio/smartweb/core/webcomponents/src/components/News/ContactMap/ContactMap.scss +0 -4
- imio/smartweb/core/webcomponents/src/components/News/Skeleton/Skeleton.jsx +0 -20
- imio/smartweb/core/webcomponents/src/components/Search/Skeleton/Skeleton.jsx +0 -20
- imio.smartweb.core-1.2.12-py3.10-nspkg.pth +0 -3
- /imio/smartweb/core/{webcomponents/src/components/Events/ContactMap/ContactMap.scss → contents/publication/__init__.py} +0 -0
- /imio/smartweb/core/webcomponents/build/js/{144.smartweb-webcomponents-compiled.js.LICENSE.txt → 799.smartweb-webcomponents-compiled.js.LICENSE.txt} +0 -0
- /imio/smartweb/core/webcomponents/build/js/{9.smartweb-webcomponents-compiled.js.LICENSE.txt → 824.smartweb-webcomponents-compiled.js.LICENSE.txt} +0 -0
- {imio.smartweb.core-1.2.12.dist-info → imio.smartweb.core-1.2.68.dist-info}/LICENSE.GPL +0 -0
- {imio.smartweb.core-1.2.12.dist-info → imio.smartweb.core-1.2.68.dist-info}/LICENSE.rst +0 -0
- {imio.smartweb.core-1.2.12.dist-info → imio.smartweb.core-1.2.68.dist-info}/namespace_packages.txt +0 -0
- {imio.smartweb.core-1.2.12.dist-info → imio.smartweb.core-1.2.68.dist-info}/top_level.txt +0 -0
@@ -1,275 +1,292 @@
|
|
1
|
-
.portaltype-imio-smartweb-directoryview{
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
1
|
+
.portaltype-imio-smartweb-directoryview {
|
2
|
+
#portal-header {
|
3
|
+
margin-bottom: 0 !important;
|
4
|
+
}
|
5
|
+
|
6
|
+
#portal-breadcrumbs {
|
7
|
+
margin-bottom: 0 !important;
|
8
|
+
|
9
|
+
.breadcrumb {
|
10
|
+
margin-bottom: 0 !important;
|
11
|
+
}
|
9
12
|
}
|
10
|
-
}
|
11
13
|
}
|
12
14
|
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
15
|
+
.r-wrapper {
|
16
|
+
position: relative;
|
17
|
+
|
18
|
+
figure {
|
19
|
+
display: block;
|
20
|
+
}
|
19
21
|
}
|
20
|
-
|
22
|
+
|
21
23
|
.r-actu-wrapper {
|
22
|
-
|
24
|
+
padding-top: 1rem;
|
23
25
|
}
|
26
|
+
|
24
27
|
.r-result {
|
25
|
-
|
26
|
-
|
27
|
-
display: flex;
|
28
|
-
flex-wrap: wrap;
|
29
|
-
gap: 20px;
|
30
|
-
padding-bottom: 20px;
|
31
|
-
border-bottom: solid 1px #cccc;
|
32
|
-
align-items: center;
|
33
|
-
.r-filter {
|
34
|
-
width: 100%;
|
35
|
-
max-width: 200px;
|
36
|
-
label {
|
37
|
-
display: block;
|
38
|
-
}
|
39
|
-
.r-filter-search {
|
40
|
-
position: relative;
|
41
|
-
.input-custom-class {
|
42
|
-
line-height: 50px;
|
43
|
-
border: 1px solid #CCCCCC;
|
44
|
-
height: 50px;
|
45
|
-
padding: 0 10px;
|
46
|
-
font-weight: bold;
|
47
|
-
color: #000;
|
48
|
-
width: 100%;
|
49
|
-
letter-spacing: 1.2px;
|
50
|
-
&::placeholder {
|
51
|
-
color: #000;
|
52
|
-
font-size: 12px;
|
53
|
-
opacity: 1;
|
54
|
-
text-transform: uppercase;
|
55
|
-
letter-spacing: '1.2px';
|
56
|
-
}
|
57
|
-
}
|
58
|
-
button {
|
59
|
-
background: url(./assets/search.svg) no-repeat;
|
60
|
-
background-position: center;
|
61
|
-
background-size: 80%;
|
62
|
-
border: none;
|
63
|
-
width: 20px;
|
64
|
-
position: absolute;
|
65
|
-
right: 10px;
|
66
|
-
top: 0;
|
67
|
-
bottom: 0;
|
68
|
-
}
|
69
|
-
}
|
28
|
+
position: relative;
|
29
|
+
}
|
70
30
|
|
31
|
+
.r-add-event,
|
32
|
+
.r-add-news,
|
33
|
+
.r-add-contact {
|
34
|
+
@media screen and (min-width: 992px) {
|
35
|
+
position: absolute;
|
36
|
+
right: 0;
|
37
|
+
bottom: 0px;
|
38
|
+
padding-bottom: 1rem;
|
39
|
+
}
|
40
|
+
a {
|
41
|
+
color: #2d2d2d;
|
42
|
+
text-decoration: none;
|
43
|
+
display: flex;
|
44
|
+
flex-direction: row;
|
45
|
+
align-items: center;
|
46
|
+
gap: 7px;
|
47
|
+
&:hover,
|
48
|
+
&:focus {
|
49
|
+
text-decoration: underline;
|
50
|
+
}
|
71
51
|
}
|
72
|
-
}
|
73
|
-
}
|
74
|
-
.r-add-event,.r-add-news,.r-add-contact{
|
75
|
-
a{
|
76
|
-
background: #000;
|
77
|
-
color: #fff;
|
78
|
-
text-decoration: none;
|
79
|
-
padding: 1rem;
|
80
|
-
}
|
81
52
|
}
|
53
|
+
|
82
54
|
/* list item */
|
83
55
|
.r-list-item-link {
|
84
|
-
|
85
|
-
|
56
|
+
inset: 0px !important;
|
57
|
+
position: absolute !important;
|
86
58
|
}
|
59
|
+
|
87
60
|
.r-list-item-group {
|
88
|
-
|
89
|
-
|
61
|
+
margin: 15px 0;
|
62
|
+
position: relative;
|
90
63
|
}
|
64
|
+
|
91
65
|
.r-list-item {
|
92
|
-
|
93
|
-
|
94
|
-
|
66
|
+
display: flex;
|
67
|
+
height: 100%;
|
68
|
+
align-items: stretch;
|
95
69
|
}
|
70
|
+
|
96
71
|
/* load-more-link */
|
97
72
|
.load-more-link {
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
73
|
+
background: transparent;
|
74
|
+
margin: 0 auto;
|
75
|
+
border: none;
|
76
|
+
display: block;
|
102
77
|
}
|
103
78
|
|
104
79
|
//// for bla ////
|
105
|
-
|
106
|
-
.r-filter {
|
107
|
-
label {
|
108
|
-
text-transform: uppercase;
|
109
|
-
font-weight: bold;
|
110
|
-
font-size: 13px;
|
111
|
-
margin-bottom: 10px;
|
112
|
-
}
|
113
|
-
}
|
80
|
+
|
114
81
|
// content
|
115
82
|
.r-content-description {
|
116
|
-
|
83
|
+
font-weight: 500;
|
117
84
|
}
|
85
|
+
|
118
86
|
.r-wrapper .r-result-list .r-list-item-group .r-list-item .r-item-text {
|
119
|
-
|
87
|
+
flex: min-content;
|
120
88
|
}
|
121
89
|
|
122
90
|
// map
|
123
91
|
|
124
92
|
.leaflet-popup {
|
125
|
-
|
93
|
+
padding: 0 !important;
|
126
94
|
}
|
95
|
+
|
127
96
|
.leaflet-container {
|
128
|
-
|
97
|
+
opacity: 1 !important;
|
129
98
|
}
|
130
99
|
|
131
|
-
|
132
100
|
// Flies and gallery
|
133
101
|
|
102
|
+
.r-content-files {
|
103
|
+
margin: 2rem 0;
|
134
104
|
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
105
|
+
&-title {
|
106
|
+
margin-bottom: 1rem;
|
107
|
+
}
|
108
|
+
|
109
|
+
.r-content-file {
|
110
|
+
margin: 1rem 0;
|
111
|
+
|
112
|
+
&-link {
|
113
|
+
text-decoration: none;
|
114
|
+
display: flex;
|
115
|
+
gap: 20px;
|
116
|
+
padding: 1rem;
|
117
|
+
border: solid 1px #e6e6e6;
|
118
|
+
justify-content: space-between;
|
119
|
+
|
120
|
+
&:hover {
|
121
|
+
border: solid 1px #868686;
|
122
|
+
}
|
123
|
+
}
|
124
|
+
}
|
125
|
+
|
126
|
+
span {
|
127
|
+
display: block;
|
152
128
|
}
|
153
|
-
}
|
154
|
-
span{
|
155
|
-
display: block;
|
156
|
-
}
|
157
129
|
}
|
158
130
|
|
159
|
-
.r-content-gallery{
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
131
|
+
.r-content-gallery {
|
132
|
+
margin: 2rem 0;
|
133
|
+
|
134
|
+
&.flexbin > * > img {
|
135
|
+
height: 226px;
|
136
|
+
}
|
137
|
+
|
138
|
+
&.flexbin > * {
|
139
|
+
height: 226px;
|
140
|
+
}
|
167
141
|
}
|
168
142
|
|
169
143
|
// loaer
|
170
|
-
.lds-roller-container{
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
144
|
+
.lds-roller-container {
|
145
|
+
position: absolute;
|
146
|
+
bottom: 0;
|
147
|
+
top: 0;
|
148
|
+
left: 0;
|
149
|
+
right: 0;
|
150
|
+
background: hsla(0, 0%, 100%, 0.82);
|
177
151
|
}
|
152
|
+
|
178
153
|
.lds-roller {
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
154
|
+
display: inline-block;
|
155
|
+
position: absolute;
|
156
|
+
width: 80px;
|
157
|
+
height: 80px;
|
158
|
+
top: 5rem;
|
159
|
+
left: 50%;
|
160
|
+
transform: translate(-50%, -50%);
|
161
|
+
z-index: 0;
|
187
162
|
}
|
163
|
+
|
188
164
|
.lds-roller div {
|
189
|
-
|
190
|
-
|
165
|
+
animation: lds-roller 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
|
166
|
+
transform-origin: 40px 40px;
|
191
167
|
}
|
168
|
+
|
192
169
|
.lds-roller div:after {
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
|
170
|
+
content: " ";
|
171
|
+
display: block;
|
172
|
+
position: absolute;
|
173
|
+
width: 7px;
|
174
|
+
height: 7px;
|
175
|
+
border-radius: 50%;
|
176
|
+
background: rgb(51, 51, 51);
|
177
|
+
margin: -4px 0 0 -4px;
|
201
178
|
}
|
179
|
+
|
202
180
|
.lds-roller div:nth-child(1) {
|
203
|
-
|
181
|
+
animation-delay: -0.036s;
|
204
182
|
}
|
183
|
+
|
205
184
|
.lds-roller div:nth-child(1):after {
|
206
|
-
|
207
|
-
|
185
|
+
top: 63px;
|
186
|
+
left: 63px;
|
208
187
|
}
|
188
|
+
|
209
189
|
.lds-roller div:nth-child(2) {
|
210
|
-
|
190
|
+
animation-delay: -0.072s;
|
211
191
|
}
|
192
|
+
|
212
193
|
.lds-roller div:nth-child(2):after {
|
213
|
-
|
214
|
-
|
194
|
+
top: 68px;
|
195
|
+
left: 56px;
|
215
196
|
}
|
197
|
+
|
216
198
|
.lds-roller div:nth-child(3) {
|
217
|
-
|
199
|
+
animation-delay: -0.108s;
|
218
200
|
}
|
201
|
+
|
219
202
|
.lds-roller div:nth-child(3):after {
|
220
|
-
|
221
|
-
|
203
|
+
top: 71px;
|
204
|
+
left: 48px;
|
222
205
|
}
|
206
|
+
|
223
207
|
.lds-roller div:nth-child(4) {
|
224
|
-
|
208
|
+
animation-delay: -0.144s;
|
225
209
|
}
|
210
|
+
|
226
211
|
.lds-roller div:nth-child(4):after {
|
227
|
-
|
228
|
-
|
212
|
+
top: 72px;
|
213
|
+
left: 40px;
|
229
214
|
}
|
215
|
+
|
230
216
|
.lds-roller div:nth-child(5) {
|
231
|
-
|
217
|
+
animation-delay: -0.18s;
|
232
218
|
}
|
219
|
+
|
233
220
|
.lds-roller div:nth-child(5):after {
|
234
|
-
|
235
|
-
|
221
|
+
top: 71px;
|
222
|
+
left: 32px;
|
236
223
|
}
|
224
|
+
|
237
225
|
.lds-roller div:nth-child(6) {
|
238
|
-
|
226
|
+
animation-delay: -0.216s;
|
239
227
|
}
|
228
|
+
|
240
229
|
.lds-roller div:nth-child(6):after {
|
241
|
-
|
242
|
-
|
230
|
+
top: 68px;
|
231
|
+
left: 24px;
|
243
232
|
}
|
233
|
+
|
244
234
|
.lds-roller div:nth-child(7) {
|
245
|
-
|
235
|
+
animation-delay: -0.252s;
|
246
236
|
}
|
237
|
+
|
247
238
|
.lds-roller div:nth-child(7):after {
|
248
|
-
|
249
|
-
|
239
|
+
top: 63px;
|
240
|
+
left: 17px;
|
250
241
|
}
|
242
|
+
|
251
243
|
.lds-roller div:nth-child(8) {
|
252
|
-
|
244
|
+
animation-delay: -0.288s;
|
253
245
|
}
|
246
|
+
|
254
247
|
.lds-roller div:nth-child(8):after {
|
255
|
-
|
256
|
-
|
248
|
+
top: 56px;
|
249
|
+
left: 12px;
|
257
250
|
}
|
251
|
+
|
258
252
|
@keyframes lds-roller {
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
253
|
+
0% {
|
254
|
+
transform: rotate(0deg);
|
255
|
+
}
|
256
|
+
|
257
|
+
100% {
|
258
|
+
transform: rotate(360deg);
|
259
|
+
}
|
265
260
|
}
|
266
261
|
|
267
262
|
// image figure
|
268
263
|
.r-content-figure {
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
|
264
|
+
position: relative;
|
265
|
+
aspect-ratio: 16/9;
|
266
|
+
background-color: #000;
|
267
|
+
|
268
|
+
&-blur {
|
269
|
+
position: absolute;
|
270
|
+
width: 100%;
|
271
|
+
height: 100%;
|
272
|
+
top: 0;
|
273
|
+
left: 0;
|
274
|
+
background-size: cover;
|
275
|
+
background-position: center;
|
276
|
+
opacity: 0.8;
|
277
|
+
}
|
278
|
+
|
279
|
+
&-img {
|
280
|
+
position: absolute;
|
281
|
+
width: 100%;
|
282
|
+
height: 100%;
|
283
|
+
object-fit: cover;
|
284
|
+
object-position: center;
|
285
|
+
backdrop-filter: blur(10px);
|
286
|
+
}
|
287
|
+
}
|
288
|
+
|
289
|
+
.r-content-img-blur {
|
273
290
|
position: absolute;
|
274
291
|
width: 100%;
|
275
292
|
height: 100%;
|
@@ -277,35 +294,53 @@
|
|
277
294
|
left: 0;
|
278
295
|
background-size: cover;
|
279
296
|
background-position: center;
|
280
|
-
opacity: 0.8;
|
281
|
-
}
|
282
|
-
&-img{
|
283
|
-
position: absolute;
|
284
|
-
width: 100%;
|
285
|
-
height: 100%;
|
286
|
-
object-fit: cover;
|
287
|
-
object-position: center;
|
288
|
-
backdrop-filter: blur(10px);
|
289
|
-
}
|
290
|
-
}
|
291
|
-
.r-content-img-blur {
|
292
|
-
position: absolute;
|
293
|
-
width: 100%;
|
294
|
-
height: 100%;
|
295
|
-
top: 0;
|
296
|
-
left: 0;
|
297
|
-
background-size: cover;
|
298
|
-
background-position: center;
|
299
297
|
}
|
300
298
|
|
301
299
|
.img-cover {
|
302
|
-
|
303
|
-
|
300
|
+
background-size: cover;
|
301
|
+
background-position: center;
|
304
302
|
}
|
303
|
+
|
305
304
|
.img-contain {
|
306
|
-
|
307
|
-
|
308
|
-
|
309
|
-
|
310
|
-
|
311
|
-
}
|
305
|
+
object-fit: contain;
|
306
|
+
object-position: center;
|
307
|
+
background-size: contain;
|
308
|
+
background-repeat: no-repeat;
|
309
|
+
background-position: center;
|
310
|
+
}
|
311
|
+
|
312
|
+
.no-search-item-img {
|
313
|
+
background: black;
|
314
|
+
background-color: #c9c9c9 !important;
|
315
|
+
background-position: center !important;
|
316
|
+
}
|
317
|
+
|
318
|
+
.r-search-img {
|
319
|
+
background-color: #c9c9c9 !important;
|
320
|
+
}
|
321
|
+
|
322
|
+
.portaltype-imio-smartweb-eventsview,
|
323
|
+
.portaltype-imio-smartweb-directoryview,
|
324
|
+
.portaltype-imio-smartweb-newsview {
|
325
|
+
#portal-breadcrumbs,
|
326
|
+
#portal-header {
|
327
|
+
margin-bottom: 0 !important;
|
328
|
+
}
|
329
|
+
}
|
330
|
+
|
331
|
+
.edit-rest-elements {
|
332
|
+
position: absolute;
|
333
|
+
right: 5px;
|
334
|
+
top: 5px;
|
335
|
+
display: flex;
|
336
|
+
flex-direction: column;
|
337
|
+
align-items: center;
|
338
|
+
padding: 10px;
|
339
|
+
}
|
340
|
+
|
341
|
+
.edit-rest-elements-content {
|
342
|
+
top: 10px;
|
343
|
+
}
|
344
|
+
.edit-rest-elements-news {
|
345
|
+
padding: 10px;
|
346
|
+
}
|
@@ -0,0 +1,159 @@
|
|
1
|
+
import React, { useState, useEffect } from "react";
|
2
|
+
import { MapContainer, TileLayer, Marker, Popup, useMap } from "react-leaflet";
|
3
|
+
import useFilterQuery from "../hooks/useFilterQuery";
|
4
|
+
import L from "leaflet";
|
5
|
+
import iconSvg from "../assets/pin-react.svg";
|
6
|
+
import iconSvgActivated from "../assets/pin-react-active.svg";
|
7
|
+
import { Link } from "react-router-dom";
|
8
|
+
import "./Map.scss";
|
9
|
+
import "leaflet/dist/leaflet.css";
|
10
|
+
import removeAccents from "remove-accents";
|
11
|
+
import queryString from "query-string";
|
12
|
+
|
13
|
+
function ChangeMapView({ activeItem, arrayOfLatLngs }) {
|
14
|
+
const map = useMap();
|
15
|
+
if (activeItem) {
|
16
|
+
const activeCoord = [];
|
17
|
+
activeCoord.push(activeItem.geolocation.latitude);
|
18
|
+
activeCoord.push(activeItem.geolocation.longitude);
|
19
|
+
map.setView(activeCoord, 15);
|
20
|
+
} else {
|
21
|
+
let bounds = new L.LatLngBounds(arrayOfLatLngs);
|
22
|
+
map.fitBounds(bounds);
|
23
|
+
}
|
24
|
+
return null;
|
25
|
+
}
|
26
|
+
|
27
|
+
function Map(props) {
|
28
|
+
const [activeItem, setActiveItem] = useState(null);
|
29
|
+
const [filterGeoArray, setFilterGeoArray] = useState([]);
|
30
|
+
const [allPosition, setAllPosition] = useState(null);
|
31
|
+
const { u, ...parsed } = Object.assign({
|
32
|
+
UID: queryString.parse(useFilterQuery().toString())["u"],
|
33
|
+
});
|
34
|
+
// Delete Imio positions
|
35
|
+
useEffect(() => {
|
36
|
+
const filterArray = props.items.filter(
|
37
|
+
(isgeo) =>
|
38
|
+
isgeo.geolocation.latitude &&
|
39
|
+
isgeo.geolocation.latitude !== 50.4989185 &&
|
40
|
+
isgeo.geolocation.longitude !== 4.7184485
|
41
|
+
);
|
42
|
+
setFilterGeoArray(filterArray);
|
43
|
+
}, [props]);
|
44
|
+
|
45
|
+
// Setup Maker Icon
|
46
|
+
const mapIcon = (url) => {
|
47
|
+
return new L.Icon({
|
48
|
+
iconUrl: url,
|
49
|
+
iconSize: [29, 37],
|
50
|
+
});
|
51
|
+
};
|
52
|
+
// Get Marker Icon and Z-index
|
53
|
+
const getMarkerIcon = (index) => {
|
54
|
+
if (index === parsed.UID) {
|
55
|
+
return mapIcon(iconSvgActivated);
|
56
|
+
}
|
57
|
+
if (index === props.hoverId) {
|
58
|
+
return mapIcon(iconSvgActivated);
|
59
|
+
}
|
60
|
+
return mapIcon(iconSvg);
|
61
|
+
};
|
62
|
+
const getMarkerZindex = (index) => {
|
63
|
+
if (index === props.clickId) {
|
64
|
+
return 999;
|
65
|
+
}
|
66
|
+
if (index === props.hoverId) {
|
67
|
+
return 999;
|
68
|
+
}
|
69
|
+
return 1;
|
70
|
+
};
|
71
|
+
|
72
|
+
useEffect(() => {
|
73
|
+
var result =
|
74
|
+
filterGeoArray &&
|
75
|
+
filterGeoArray.filter((obj) => {
|
76
|
+
return obj.UID === parsed.UID;
|
77
|
+
});
|
78
|
+
setActiveItem(result[0]);
|
79
|
+
}, [filterGeoArray]);
|
80
|
+
|
81
|
+
useEffect(() => {
|
82
|
+
if (filterGeoArray.length > 0) {
|
83
|
+
let posArray = [];
|
84
|
+
filterGeoArray.map((pos, i) => {
|
85
|
+
let lat = pos.geolocation.latitude;
|
86
|
+
let long = pos.geolocation.longitude;
|
87
|
+
posArray.push([lat, long]);
|
88
|
+
});
|
89
|
+
setAllPosition(posArray);
|
90
|
+
}
|
91
|
+
}, [filterGeoArray]);
|
92
|
+
const position = [50.85034, 4.35171];
|
93
|
+
|
94
|
+
const markers = filterGeoArray.map((mark,i) => (
|
95
|
+
<Marker
|
96
|
+
key={i}
|
97
|
+
icon={getMarkerIcon(mark.UID)}
|
98
|
+
zIndexOffset={getMarkerZindex(mark.UID)}
|
99
|
+
position={[
|
100
|
+
mark.geolocation ? mark.geolocation.latitude : "",
|
101
|
+
mark.geolocation ? mark.geolocation.longitude : "",
|
102
|
+
]}
|
103
|
+
eventHandlers={{
|
104
|
+
mouseover: (e) => {
|
105
|
+
// Gérer les événements ici
|
106
|
+
},
|
107
|
+
}}
|
108
|
+
>
|
109
|
+
<Popup closeButton={false}>
|
110
|
+
<Link
|
111
|
+
className="r-map-popup"
|
112
|
+
style={{ textDecoration: "none" }}
|
113
|
+
to={{
|
114
|
+
pathname:
|
115
|
+
"/" +
|
116
|
+
removeAccents(mark.title)
|
117
|
+
.replace(/[^a-zA-Z ]/g, "")
|
118
|
+
.replace(/\s/g, "-")
|
119
|
+
.toLowerCase(),
|
120
|
+
search: `?u=${mark.UID}`,
|
121
|
+
state: {
|
122
|
+
idItem: mark.UID,
|
123
|
+
},
|
124
|
+
}}
|
125
|
+
>
|
126
|
+
<span className="r-map-popup-title">{mark.title}</span>
|
127
|
+
<p className="r-map-popup-category">{mark.category && mark.category.title}</p>
|
128
|
+
</Link>
|
129
|
+
</Popup>
|
130
|
+
</Marker>
|
131
|
+
));
|
132
|
+
|
133
|
+
return (
|
134
|
+
<div>
|
135
|
+
<MapContainer
|
136
|
+
style={{ height: `calc(100vh - ${props.headerHeight}px)`, minHeight: "600px" }}
|
137
|
+
center={position}
|
138
|
+
zoom={15}
|
139
|
+
>
|
140
|
+
<TileLayer
|
141
|
+
attribution='© <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors'
|
142
|
+
url="https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png"
|
143
|
+
/>
|
144
|
+
{allPosition != null ? (
|
145
|
+
<ChangeMapView
|
146
|
+
activeItem={activeItem}
|
147
|
+
activeItemUID={parsed.UID}
|
148
|
+
arrayOfLatLngs={allPosition && allPosition}
|
149
|
+
/>
|
150
|
+
) : (
|
151
|
+
""
|
152
|
+
)}
|
153
|
+
{filterGeoArray && markers}
|
154
|
+
</MapContainer>
|
155
|
+
</div>
|
156
|
+
);
|
157
|
+
}
|
158
|
+
|
159
|
+
export default Map;
|