territories-dashboard-lib 0.1.36__tar.gz → 0.1.36b1__tar.gz

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.

Potentially problematic release.


This version of territories-dashboard-lib might be problematic. Click here for more details.

Files changed (193) hide show
  1. {territories_dashboard_lib-0.1.36/territories_dashboard_lib.egg-info → territories_dashboard_lib-0.1.36b1}/PKG-INFO +1 -1
  2. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/pyproject.toml +1 -1
  3. territories_dashboard_lib-0.1.36b1/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/react/indicatorMap.bundle.js +2 -0
  4. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/layout/header.html +1 -1
  5. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/details/map.css +49 -26
  6. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1/territories_dashboard_lib.egg-info}/PKG-INFO +1 -1
  7. territories_dashboard_lib-0.1.36/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/react/indicatorMap.bundle.js +0 -2
  8. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/MANIFEST.in +0 -0
  9. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/README.md +0 -0
  10. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/licence.md +0 -0
  11. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/setup.cfg +0 -0
  12. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/__init__.py +0 -0
  13. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/commons/__init__.py +0 -0
  14. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/commons/decorators.py +0 -0
  15. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/commons/models.py +0 -0
  16. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/commons/types.py +0 -0
  17. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/geo_lib/__init__.py +0 -0
  18. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/geo_lib/admin.py +0 -0
  19. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/geo_lib/enums.py +0 -0
  20. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/geo_lib/migrations/0001_initial.py +0 -0
  21. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/geo_lib/migrations/0002_geoelement_linked_to_indicator.py +0 -0
  22. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/geo_lib/migrations/__init__.py +0 -0
  23. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/geo_lib/models.py +0 -0
  24. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/geo_lib/payloads.py +0 -0
  25. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/geo_lib/urls.py +0 -0
  26. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/geo_lib/views.py +0 -0
  27. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/indicators_lib/__init__.py +0 -0
  28. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/indicators_lib/admin.py +0 -0
  29. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/indicators_lib/enums.py +0 -0
  30. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/indicators_lib/export.py +0 -0
  31. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/indicators_lib/format.py +0 -0
  32. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/indicators_lib/methodo_pdf.py +0 -0
  33. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/indicators_lib/migrations/0001_initial.py +0 -0
  34. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/indicators_lib/migrations/0002_filter_color_indicator_min_mesh_and_more.py +0 -0
  35. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/indicators_lib/migrations/0003_indicator_short_title.py +0 -0
  36. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/indicators_lib/migrations/__init__.py +0 -0
  37. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/indicators_lib/models.py +0 -0
  38. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/indicators_lib/payloads.py +0 -0
  39. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/indicators_lib/query/commons.py +0 -0
  40. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/indicators_lib/query/comparison.py +0 -0
  41. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/indicators_lib/query/details.py +0 -0
  42. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/indicators_lib/query/histogram.py +0 -0
  43. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/indicators_lib/query/indicator_card.py +0 -0
  44. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/indicators_lib/query/top_10.py +0 -0
  45. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/indicators_lib/query/utils.py +0 -0
  46. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/indicators_lib/refresh_filters.py +0 -0
  47. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/indicators_lib/table.py +0 -0
  48. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/indicators_lib/urls.py +0 -0
  49. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/indicators_lib/views.py +0 -0
  50. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/superset_lib/__init__.py +0 -0
  51. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/superset_lib/admin.py +0 -0
  52. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/superset_lib/guest_token.py +0 -0
  53. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/superset_lib/logic.py +0 -0
  54. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/superset_lib/migrations/0001_initial.py +0 -0
  55. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/superset_lib/migrations/__init__.py +0 -0
  56. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/superset_lib/models.py +0 -0
  57. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/superset_lib/payloads.py +0 -0
  58. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/superset_lib/serializers.py +0 -0
  59. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/superset_lib/urls.py +0 -0
  60. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/superset_lib/views.py +0 -0
  61. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/tracking_lib/__init__.py +0 -0
  62. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/tracking_lib/enums.py +0 -0
  63. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/tracking_lib/geolocalisation/GeoLite2-Country.mmdb +0 -0
  64. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/tracking_lib/geolocalisation/__init__.py +0 -0
  65. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/tracking_lib/geolocalisation/logic.py +0 -0
  66. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/tracking_lib/logic.py +0 -0
  67. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/tracking_lib/migrations/0001_initial.py +0 -0
  68. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/tracking_lib/migrations/0002_alter_event_created_at_alter_page_created_at.py +0 -0
  69. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/tracking_lib/migrations/0003_cookieinfo.py +0 -0
  70. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/tracking_lib/migrations/0004_cookieinfo_ip_address.py +0 -0
  71. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/tracking_lib/migrations/__init__.py +0 -0
  72. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/tracking_lib/models.py +0 -0
  73. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/tracking_lib/payloads.py +0 -0
  74. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/tracking_lib/urls.py +0 -0
  75. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/tracking_lib/views.py +0 -0
  76. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/__init__.py +0 -0
  77. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/admin.py +0 -0
  78. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/context_processors.py +0 -0
  79. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/forms.py +0 -0
  80. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/migrations/0001_initial.py +0 -0
  81. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/migrations/0002_mainconf_contact_email_mainconf_newsletter_link_and_more.py +0 -0
  82. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/migrations/0003_alter_mainconf_footer_navigation_and_more.py +0 -0
  83. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/migrations/0004_mainconf_description_mainconf_social_image_url.py +0 -0
  84. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/migrations/__init__.py +0 -0
  85. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/models.py +0 -0
  86. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/navigation.py +0 -0
  87. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/params.py +0 -0
  88. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/serializers.py +0 -0
  89. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/chart.js +0 -0
  90. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/chartjs-plugin-datalabels.js +0 -0
  91. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/html2canvas.js +0 -0
  92. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/comparaison/data.mjs +0 -0
  93. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/comparaison/history.mjs +0 -0
  94. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/comparaison/main-values.mjs +0 -0
  95. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/comparaison/page.mjs +0 -0
  96. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/comparaison/territory-chart.mjs +0 -0
  97. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/details/data.mjs +0 -0
  98. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/details/histogram.mjs +0 -0
  99. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/details/map.mjs +0 -0
  100. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/details/page.mjs +0 -0
  101. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/details/proportions.mjs +0 -0
  102. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/details/sankey.mjs +0 -0
  103. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/details/table.mjs +0 -0
  104. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/details/top10.mjs +0 -0
  105. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/details/utils.mjs +0 -0
  106. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/dom.mjs +0 -0
  107. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/enums.mjs +0 -0
  108. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/export-graph.mjs +0 -0
  109. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/export.mjs +0 -0
  110. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/filters.mjs +0 -0
  111. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/format.mjs +0 -0
  112. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/side_panel.mjs +0 -0
  113. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/theme/history.mjs +0 -0
  114. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/theme/main-value.mjs +0 -0
  115. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/theme/page.mjs +0 -0
  116. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/theme/statistics.mjs +0 -0
  117. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/utils.mjs +0 -0
  118. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/static/page.mjs +0 -0
  119. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/patternomaly.js +0 -0
  120. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/react18.js +0 -0
  121. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/reactdom18.js +0 -0
  122. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/supersetEmbed.js +0 -0
  123. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/react/sankeyGraph.bundle.js +0 -0
  124. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/react/vendors.bundle.js +0 -0
  125. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/static_content.py +0 -0
  126. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/admin/indicators_lib/indicator/change_form.html +0 -0
  127. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/404.html +0 -0
  128. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/500.html +0 -0
  129. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/layout/base.css +0 -0
  130. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/layout/base.html +0 -0
  131. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/layout/base.js +0 -0
  132. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/layout/footer.css +0 -0
  133. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/layout/footer.html +0 -0
  134. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/layout/header.css +0 -0
  135. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/layout/header.js +0 -0
  136. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/comparaison/[theme]/components/histogram.html +0 -0
  137. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/comparaison/[theme]/components/indicateur-card.html +0 -0
  138. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/comparaison/[theme]/page.html +0 -0
  139. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/chart-buttons.css +0 -0
  140. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/chart-buttons.html +0 -0
  141. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/geo_params.css +0 -0
  142. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/geo_params.html +0 -0
  143. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/indicator-card.css +0 -0
  144. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/indicator-card.html +0 -0
  145. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/loader.html +0 -0
  146. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/side_panel.css +0 -0
  147. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/side_panel.html +0 -0
  148. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/side_panel_geo.css +0 -0
  149. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/side_panel_geo.html +0 -0
  150. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/side_panel_geo.js +0 -0
  151. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/side_panel_methodo.css +0 -0
  152. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/side_panel_methodo.html +0 -0
  153. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/side_panel_methodo.js +0 -0
  154. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/themes-list.css +0 -0
  155. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/themes-list.html +0 -0
  156. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/themes-nav.html +0 -0
  157. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/title.css +0 -0
  158. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/title.html +0 -0
  159. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/details/components/filters-reminder.css +0 -0
  160. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/details/components/filters-reminder.html +0 -0
  161. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/details/components/histogram.html +0 -0
  162. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/details/components/map.html +0 -0
  163. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/details/components/proportions.html +0 -0
  164. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/details/components/sankey.html +0 -0
  165. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/details/components/table-flows.html +0 -0
  166. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/details/components/table-values.html +0 -0
  167. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/details/components/table.css +0 -0
  168. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/details/components/table.html +0 -0
  169. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/details/components/top10.html +0 -0
  170. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/details/page.css +0 -0
  171. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/details/page.html +0 -0
  172. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/themes/components/extremum.css +0 -0
  173. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/themes/components/extremum.html +0 -0
  174. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/themes/components/indicateur-card.css +0 -0
  175. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/themes/components/indicateur-card.html +0 -0
  176. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/themes/components/stats.html +0 -0
  177. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/themes/page.html +0 -0
  178. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/lexique/page.css +0 -0
  179. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/lexique/page.html +0 -0
  180. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/page.html +0 -0
  181. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/sitemap/page.html +0 -0
  182. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/static/page.css +0 -0
  183. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/static/page.html +0 -0
  184. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/superset/page.css +0 -0
  185. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/superset/page.html +0 -0
  186. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/svg/delete-back.svg +0 -0
  187. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templatetags/htmlparams.py +0 -0
  188. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/templatetags/other_filters.py +0 -0
  189. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib/website_lib/views.py +0 -0
  190. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib.egg-info/SOURCES.txt +0 -0
  191. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib.egg-info/dependency_links.txt +0 -0
  192. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib.egg-info/requires.txt +0 -0
  193. {territories_dashboard_lib-0.1.36 → territories_dashboard_lib-0.1.36b1}/territories_dashboard_lib.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: territories-dashboard-lib
3
- Version: 0.1.36
3
+ Version: 0.1.36b1
4
4
  Summary: Librairie pour la visualisation d'indicateurs territoriaux.
5
5
  Author-email: Bastien <bastien@prune.sh>
6
6
  Classifier: Programming Language :: Python :: 3
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "territories-dashboard-lib"
3
- version = "0.1.36"
3
+ version = "0.1.36b1"
4
4
  description = "Librairie pour la visualisation d'indicateurs territoriaux."
5
5
  authors = [
6
6
  { name = "Bastien", email = "bastien@prune.sh" }
@@ -0,0 +1,2 @@
1
+ /*! For license information please see indicatorMap.bundle.js.LICENSE.txt */
2
+ (()=>{"use strict";var e,t,r,n={"./src/IndicatorCardFilters.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>o});var n=r("react"),a=r.n(n);const o=({filters:e,currentFilters:t,onClick:r})=>a().createElement("div",{className:"fr-tag-list"},e.map(((e,n)=>a().createElement("button",{key:n,className:"fr-tag","aria-pressed":!!t.includes(e)||void 0,onClick:()=>r(e)},e))))},"./src/IndicatorMap/Help.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>s});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx");function s(){const{geoFeatures:e,page:t}=(0,o.useMapContext)(),r=(0,n.useMemo)((()=>t.indicator.flows_db_table_prefix?a().createElement(a().Fragment,null,a().createElement("p",null,"Survolez les flux sur la carte pour afficher les valeurs en distinguant le sens du flux."),a().createElement("p",null,"Cliquez sur un territoire pour n'afficher que les flux entrants/sortants de ce territoire. Cliquez à nouveau sur le territoire ou en dehors de la zone d'étude, pour faire réapparaître tous les flux."),a().createElement("p",null,"Vous pouvez filtrer selon le mode de déplacement en sélectionnant les filtres disponibles dans le volet déroulant ",a().createElement("b",null,'"Couches de données"')," à droite de la carte."),a().createElement("p",null,a().createElement("i",null,a().createElement("u",null,"Précisions")," : A la maille communale, seuls les flux pour lesquels la somme des flux entrants (A -> B) et sortants (B -> A) est > 100 sont affichés.",a().createElement("br",null),"Pour les autres mailles, seuls les flux entrants/sortants > 200 sont affichés."))):a().createElement("p",null,"Survolez les territoires sur la carte pour afficher les valeurs de l'indicateur.",Object.keys(e).length>0&&a().createElement(a().Fragment,null,a().createElement("br",null),a().createElement("span",null,"Zoomez pour afficher les équipements, ainsi que leurs propriétés au survol de chaque équipement.")))),[e,[t]]);return a().createElement("details",{id:"map-help-details"},a().createElement("summary",{id:"map-help-details-summary"},"Aide au fonctionnement de la carte"),r)}},"./src/IndicatorMap/MapLoader.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>s});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx");function s(){const{geoFeaturesLoading:e}=(0,o.useMapContext)(),t=Object.values(e).some((e=>!1!==e&&void 0!==e));return a().createElement(a().Fragment,null,t?a().createElement("div",{id:"map-loader"},"chargement…"):a().createElement(a().Fragment,null))}},"./src/IndicatorMap/MapWithinContext.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>O});var n=r("./node_modules/@deck.gl/react/dist/deckgl.js"),a=r("react"),o=r.n(a),s=r("./node_modules/react-map-gl/dist/esm/index.js"),i=r("./src/IndicatorMap/territories/useZoomOnTerritories.ts"),l=r("./src/IndicatorMap/context.tsx"),c=r("./src/IndicatorMap/values/useFetchValues.ts"),u=r("./src/IndicatorMap/territories/useFetchTerritories.ts"),d=r("./src/IndicatorMap/territories/useMainTerritories.ts"),m=r("./src/IndicatorMap/territories/usePreciseTerritories.ts"),p=r("./src/IndicatorMap/values/useRankValues.ts"),f=r("./src/IndicatorMap/geo-features/useFetchGeoFeatures.ts"),v=r("./src/IndicatorMap/geo-features/useGeoFeaturesForTerritories.ts"),g=r("./src/IndicatorMap/overview/OverviewTooltip.tsx"),h=r("./src/IndicatorMap/geo-features/GeoFeatureTooltip.tsx"),b=r("./src/IndicatorMap/legend/Legend.tsx"),x=r("./src/IndicatorMap/legend/Download.tsx"),y=r("./src/IndicatorMap/sidebar/Sidebar.tsx"),M=r("./src/IndicatorMap/flows/useFetchFlows.ts"),E=r("./src/IndicatorMap/flows/FlowTooltip.tsx"),w=r("./src/IndicatorMap/buttons/Buttons.tsx"),C=r("./src/IndicatorMap/useRemoveFocus.ts"),F=r("./src/IndicatorMap/useAddExcelSheet.ts"),I=r("./src/IndicatorMap/geo-features/useFilterGeoFeature.tsx"),L=r("./src/IndicatorMap/Help.tsx"),S=r("./src/IndicatorMap/useLayers.ts"),_=r("./src/IndicatorMap/MapLoader.tsx");const O=()=>{const{viewState:e,mapRef:t,setters:r,page:a,deckRef:O}=(0,l.useMapContext)();(0,c.default)(),(0,u.default)(),(0,f.default)(),(0,I.useFilterGeoFeature)(),(0,I.useGeoFeaturesFilteredByColumn)(),(0,d.default)(),(0,i.default)(),(0,m.default)(),(0,p.default)(),(0,v.default)(),(0,M.default)(),(0,C.default)(t),(0,F.usePrepareExcelExport)();const T=(0,S.default)(),k=a.indicator.flows_db_table_prefix?"Carte des flux":"Cartographie de l'indicateur";return o().createElement(o().Fragment,null,o().createElement("h3",{className:"fr-mt-4w"},k),o().createElement("div",{id:"tdbmd-map","aria-describedby":"download-map-spreadsheet"},o().createElement(n.default,{ref:O,viewState:e,layers:T,getCursor:({isHovering:e})=>e?"pointer":"default",onViewStateChange:e=>{r.setViewState(e.viewState)},onClick:e=>{null===e.layer&&r.setTerritoryClick(null)},controller:!0},o().createElement(s.Map,{ref:t,preserveDrawingBuffer:!0,mapStyle:"mapbox://styles/bastien-prune/cm2owpt4v008201pm01evfdow",mapboxAccessToken:"pk.eyJ1IjoiYmFzdGllbi1wcnVuZSIsImEiOiJjbTJvdzlncHAwanczMm5zYnNnb2w0YTJ0In0.TCo7quhfnzeQrVsY0M7nCw",projection:"mercator",attributionControl:!1}),o().createElement(g.default,null),o().createElement(h.default,null),o().createElement(E.default,null),o().createElement(_.default,null)),o().createElement(w.default,null),o().createElement(b.default,null),o().createElement(y.default,null)),o().createElement(L.default,null),o().createElement(x.default,null))}},"./src/IndicatorMap/buttons/Buttons.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>c});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/buttons/FullScreen.tsx"),s=r("./src/IndicatorMap/buttons/ZoomButtons.tsx"),i=r("./src/IndicatorMap/buttons/LayersButton.tsx"),l=r("./src/IndicatorMap/buttons/FiltersButton.tsx");function c(){return a().createElement("div",{id:"map-buttons",className:"hideForDownload"},a().createElement(s.default,null),a().createElement(o.default,null),a().createElement(i.default,null),a().createElement(l.default,null))}},"./src/IndicatorMap/buttons/FiltersButton.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>i});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/IndicatorMap/enums.ts");function i(){const{setters:e,sideBarMode:t,geoFeatures:r}=(0,o.useMapContext)();return 0==Object.keys(r).length?a().createElement(a().Fragment,null):a().createElement("button",{className:"map-button",onClick:()=>{e.setSideBarMode(s.SideBarMode.filters),e.setIsSidebarOpen((e=>!e||t!=s.SideBarMode.filters))},title:"Gestion des filtres"},a().createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",width:"24px",height:"24px"},a().createElement("path",{d:"M21 4V6H20L15 13.5V22H9V13.5L4 6H3V4H21ZM6.4037 6L11 12.8944V20H13V12.8944L17.5963 6H6.4037Z"})))}},"./src/IndicatorMap/buttons/FullScreen.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>i});var n=r("react"),a=r.n(n);function o(){return a().createElement("svg",{width:"24px",height:"24px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},a().createElement("path",{d:"M21.7092 2.29502C21.8041 2.3904 21.8757 2.50014 21.9241 2.61722C21.9727 2.73425 21.9996 2.8625 22 2.997L22 3V9C22 9.55228 21.5523 10 21 10C20.4477 10 20 9.55228 20 9V5.41421L14.7071 10.7071C14.3166 11.0976 13.6834 11.0976 13.2929 10.7071C12.9024 10.3166 12.9024 9.68342 13.2929 9.29289L18.5858 4H15C14.4477 4 14 3.55228 14 3C14 2.44772 14.4477 2 15 2H20.9998C21.2749 2 21.5242 2.11106 21.705 2.29078L21.7092 2.29502Z",fill:"currentColor"}),a().createElement("path",{d:"M10.7071 14.7071L5.41421 20H9C9.55228 20 10 20.4477 10 21C10 21.5523 9.55228 22 9 22H3.00069L2.997 22C2.74301 21.9992 2.48924 21.9023 2.29502 21.7092L2.29078 21.705C2.19595 21.6096 2.12432 21.4999 2.07588 21.3828C2.02699 21.2649 2 21.1356 2 21V15C2 14.4477 2.44772 14 3 14C3.55228 14 4 14.4477 4 15V18.5858L9.29289 13.2929C9.68342 12.9024 10.3166 12.9024 10.7071 13.2929C11.0976 13.6834 11.0976 14.3166 10.7071 14.7071Z",fill:"currentColor"}))}function s(){return a().createElement("svg",{width:"24px",height:"24px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},a().createElement("path",{d:"M21.7071 3.70711L16.4142 9H20C20.5523 9 21 9.44772 21 10C21 10.5523 20.5523 11 20 11H14.0007L13.997 11C13.743 10.9992 13.4892 10.9023 13.295 10.7092L13.2908 10.705C13.196 10.6096 13.1243 10.4999 13.0759 10.3828C13.0273 10.2657 13.0004 10.1375 13 10.003L13 10V4C13 3.44772 13.4477 3 14 3C14.5523 3 15 3.44772 15 4V7.58579L20.2929 2.29289C20.6834 1.90237 21.3166 1.90237 21.7071 2.29289C22.0976 2.68342 22.0976 3.31658 21.7071 3.70711Z",fill:"currentColor"}),a().createElement("path",{d:"M9 20C9 20.5523 9.44772 21 10 21C10.5523 21 11 20.5523 11 20V14.0007C11 13.9997 11 13.998 11 13.997C10.9992 13.7231 10.8883 13.4752 10.7092 13.295C10.7078 13.2936 10.7064 13.2922 10.705 13.2908C10.6096 13.196 10.4999 13.1243 10.3828 13.0759C10.2657 13.0273 10.1375 13.0004 10.003 13C10.002 13 10.001 13 10 13H4C3.44772 13 3 13.4477 3 14C3 14.5523 3.44772 15 4 15H7.58579L2.29289 20.2929C1.90237 20.6834 1.90237 21.3166 2.29289 21.7071C2.68342 22.0976 3.31658 22.0976 3.70711 21.7071L9 16.4142V20Z",fill:"currentColor"}))}function i(){const[e,t]=(0,n.useState)(!1);return a().createElement("button",{className:"map-button fullscreen-button",onClick:()=>{const r=document.getElementById("left-menu"),n=document.getElementById("tdbmd-map");e?(null==r||r.removeAttribute("hide"),null==n||n.removeAttribute("fullscreen"),t(!1)):(null==r||r.setAttribute("hide",""),null==n||n.setAttribute("fullscreen",""),t(!0))}},e?a().createElement(s,null):a().createElement(o,null))}},"./src/IndicatorMap/buttons/LayersButton.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>i});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/IndicatorMap/enums.ts");function i(){const{setters:e,sideBarMode:t}=(0,o.useMapContext)();return a().createElement("button",{className:"map-button",onClick:r=>{e.setSideBarMode(s.SideBarMode.layers),e.setIsSidebarOpen((e=>!e||t!=s.SideBarMode.layers))},title:"Gestion des couches"},a().createElement("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24px",height:"24px",viewBox:"0 0 24 24",fill:"currentColor"},a().createElement("path",{d:"M20.0833 15.1999L21.2854 15.9212C21.5221 16.0633 21.5989 16.3704 21.4569 16.6072C21.4146 16.6776 21.3557 16.7365 21.2854 16.7787L12.5144 22.0412C12.1977 22.2313 11.8021 22.2313 11.4854 22.0412L2.71451 16.7787C2.47772 16.6366 2.40093 16.3295 2.54301 16.0927C2.58523 16.0223 2.64413 15.9634 2.71451 15.9212L3.9166 15.1999L11.9999 20.0499L20.0833 15.1999ZM20.0833 10.4999L21.2854 11.2212C21.5221 11.3633 21.5989 11.6704 21.4569 11.9072C21.4146 11.9776 21.3557 12.0365 21.2854 12.0787L11.9999 17.6499L2.71451 12.0787C2.47772 11.9366 2.40093 11.6295 2.54301 11.3927C2.58523 11.3223 2.64413 11.2634 2.71451 11.2212L3.9166 10.4999L11.9999 15.3499L20.0833 10.4999ZM12.5144 1.30864L21.2854 6.5712C21.5221 6.71327 21.5989 7.0204 21.4569 7.25719C21.4146 7.32757 21.3557 7.38647 21.2854 7.42869L11.9999 12.9999L2.71451 7.42869C2.47772 7.28662 2.40093 6.97949 2.54301 6.7427C2.58523 6.67232 2.64413 6.61343 2.71451 6.5712L11.4854 1.30864C11.8021 1.11864 12.1977 1.11864 12.5144 1.30864ZM11.9999 3.33233L5.88723 6.99995L11.9999 10.6676L18.1126 6.99995L11.9999 3.33233Z"})))}},"./src/IndicatorMap/buttons/ZoomButtons.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>s});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx");function s(){const{setters:e}=(0,o.useMapContext)(),t=t=>r=>{e.setViewState((e=>Object.assign(Object.assign({},e),{zoom:e.zoom+t}))),r.preventDefault(),r.stopPropagation()};return a().createElement(a().Fragment,null,a().createElement("button",{className:"map-button",onClick:t(1)},a().createElement("span",{className:"fr-icon-add-line"})),a().createElement("button",{className:"map-button",onClick:t(-1)},a().createElement("span",{className:"fr-icon-subtract-line"})))}},"./src/IndicatorMap/context.tsx":(e,t,r)=>{r.r(t),r.d(t,{MapContextProvider:()=>i,useMapContext:()=>l});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/enums.ts");const s=(0,n.createContext)(void 0);function i({indicator:e,mesh:t,geoLevel:r,geoCode:i,filters:l,children:c}){const u=(0,n.useMemo)((()=>JSON.stringify(e)),[e]),d=(0,n.useMemo)((()=>({indicator:e,mesh:t,geoLevel:r,geoCode:i})),[u,t,r,i]),[m,p]=(0,n.useState)(o.DEFAULT_VIEW_STATE),f=(0,n.useRef)(null),v=(0,n.useRef)(null),[g,h]=(0,n.useState)({}),[b,x]=(0,n.useState)({}),[y,M]=(0,n.useState)([]),[E,w]=(0,n.useState)([]),[C,F]=(0,n.useState)(null),[I,L]=(0,n.useState)(null),[S,_]=(0,n.useState)(null),[O,T]=(0,n.useState)(null),[k,j]=(0,n.useState)([]),[N,A]=(0,n.useState)({}),[B,V]=(0,n.useState)([]),[D,R]=(0,n.useState)("common"),[G,H]=(0,n.useState)({}),[$,P]=(0,n.useState)({}),[z,W]=(0,n.useState)({}),[q,U]=(0,n.useState)({}),[Y,Z]=(0,n.useState)([]),[J,X]=(0,n.useState)({}),[K,Q]=(0,n.useState)({}),[ee,te]=(0,n.useState)({}),[re,ne]=(0,n.useState)([]),[ae,oe]=(0,n.useState)([]),[se,ie]=(0,n.useState)([]),[le,ce]=(0,n.useState)([]),[ue,de]=(0,n.useState)(!1),[me,pe]=(0,n.useState)(null),[fe,ve]=(0,n.useState)(new Set),ge=(0,n.useMemo)((()=>o.PRECISION_LEVEL_BY_MESH[t]<=m.zoom),[t,m]);return a().createElement(s.Provider,{value:{currentFlowDimensions:se,deckRef:v,excelFile:le,featuresForDownload:ee,filters:l,flowDimensions:ae,flowHover:O,flows:re,geoFeatureHover:S,geoFeatures:z,geoFeaturesFiltered:q,geoFeaturesFilteredByColumn:J,geoFeaturesFilters:Y,geoFeaturesForTerritories:G,geoFeaturesLoading:K,hiddenLayers:fe,isSidebarOpen:ue,mainTerritories:k,mapRef:f,outsideTerritories:E,page:d,precision:$,precisionMode:ge,rankValues:b,secondaryValuesByName:N,secondaryValuesForMap:B,secondaryValuesScaleType:D,sideBarMode:me,territories:y,territoryHover:C,territoryClick:I,values:g,viewState:m,setters:{setCurrentFlowDimensions:ie,setExcelFile:ce,setFeaturesForDownload:te,setFlowDimensions:oe,setFlowHover:T,setFlows:ne,setGeoFeatureHover:_,setGeoFeatures:W,setGeoFeaturesFiltered:U,setGeoFeaturesFilteredByColumn:X,setGeoFeaturesFilters:Z,setGeoFeaturesForTerritories:H,setGeoFeaturesLoading:Q,setHiddenLayers:ve,setIsSidebarOpen:de,setMainTerritories:j,setOutsideTerritories:w,setPrecision:P,setRankValues:x,setSecondaryValuesByName:A,setSecondaryValuesForMap:V,setSecondaryValuesScaleType:R,setSideBarMode:pe,setTerritories:M,setTerritoryHover:F,setTerritoryClick:L,setValues:h,setViewState:p}}},c)}function l(){const e=(0,n.useContext)(s);if(!e)throw new Error("useMapContext must be used within a MapContextProvider");return e}},"./src/IndicatorMap/enums.ts":(e,t,r)=>{r.r(t),r.d(t,{COLORS:()=>o,COLOR_MAX:()=>u,COLOR_MIN:()=>c,DEFAULT_VIEW_STATE:()=>b,LIGHT_MAX:()=>v,LIGHT_MIN:()=>g,MAIN_COLOR_HSL:()=>s,NULL_COLOR_HSL:()=>l,NULL_COLOR_RGB:()=>i,OPACITY:()=>h,PRECISION_LEVEL_BY_MESH:()=>a,SATURATION:()=>m,SATURATION_MAX:()=>f,SATURATION_MIN:()=>p,SCALES_COMMONS_BY_MESH:()=>y,SCALES_PIXELS_BY_MESH:()=>M,SCALE_CHANGE:()=>x,SECOND_COLOR_RGB:()=>d,SideBarMode:()=>E});var n=r("./src/enums.tsx");const a={[n.MeshLevel.National]:6,[n.MeshLevel.Region]:7,[n.MeshLevel.Department]:8.5,[n.MeshLevel.Epci]:9.5,[n.MeshLevel.Town]:10.5},o=["#417DC4","#223d06","#fbe769","#CE70CC"],s=[213,53,51],i=[200,200,200],l=[0,0,78],c=180,u=240,d=[34,61,6],m=70,p=10,f=100,v=98,g=40,h=200,b={latitude:47,longitude:2,zoom:4.5,bearing:0,pitch:0},x={[n.GeoLevel.France]:5,[n.GeoLevel.Region]:7,[n.GeoLevel.Department]:8.5,[n.GeoLevel.Epci]:10,[n.GeoLevel.Town]:10},y={[n.MeshLevel.National]:.24,[n.MeshLevel.Region]:.24,[n.MeshLevel.Department]:.08,[n.MeshLevel.Epci]:.02,[n.MeshLevel.Town]:.005},M={[n.MeshLevel.National]:10,[n.MeshLevel.Region]:8,[n.MeshLevel.Department]:10,[n.MeshLevel.Epci]:5,[n.MeshLevel.Town]:3};var E;!function(e){e.layers="layers",e.filters="filters"}(E||(E={}))},"./src/IndicatorMap/filters.ts":(e,t,r)=>{r.r(t),r.d(t,{useFilters:()=>a});var n=r("react");function a(){const e=Array.from(document.querySelectorAll(".filter-tag")).map((e=>{const t=e;return{dimension:t.dataset.dimension,db_name:t.innerText}})),t=Array.from(document.querySelectorAll(".filter-tag[aria-pressed=true]")).map((e=>{const t=e;return{dimension:t.dataset.dimension,db_name:t.innerText}}));(0,n.useEffect)((()=>{Array.from(document.querySelectorAll(".filter-tag")).forEach((e=>e.addEventListener("click",(()=>{const e=Array.from(document.querySelectorAll(".filter-tag[aria-pressed=true]")).map((e=>{const t=e;return{dimension:t.dataset.dimension,db_name:t.innerText}}));a((t=>{const r=structuredClone(t);return r.current=e,r}))}))))}),[]);const[r,a]=(0,n.useState)({possible:e,current:t});return r}},"./src/IndicatorMap/flows/FlowTooltip.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>s});var n=r("./src/IndicatorMap/context.tsx"),a=r("react"),o=r.n(a);const s=()=>{const{flowHover:e}=(0,n.useMapContext)();if(!(null==e?void 0:e.object))return o().createElement(o().Fragment,null);const t=e.object;return o().createElement("div",{style:{position:"absolute",zIndex:1,pointerEvents:"none",backgroundColor:"white",color:"black",left:e.x,top:e.y,padding:"8px 16px",borderRadius:"4px",opacity:"95%",maxWidth:"300px"}},o().createElement("div",{style:{marginBottom:"8px",fontSize:"14px"}},o().createElement("div",null,t.territory_1.name," ",o().createElement("span",{style:{fontSize:"14px"}},"⬌")," ",t.territory_2.name),o().createElement("div",null,o().createElement("b",null,t.value," actifs"))),o().createElement("div",{style:{fontSize:"11px"}},o().createElement("div",null,t.territory_1.name," ",o().createElement("span",{style:{fontSize:"11px"}},"➡")," ",t.territory_2.name),o().createElement("div",null,o().createElement("b",null,t.oneToTwo," actifs")),o().createElement("div",null,t.territory_2.name," ",o().createElement("span",{style:{fontSize:"11px"}},"➡")," ",t.territory_1.name),o().createElement("div",null,o().createElement("b",null,t.twoToOne," actifs"))))}},"./src/IndicatorMap/flows/useFetchFlows.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>l});var n=r("react"),a=r("./src/IndicatorMap/context.tsx"),o=r("./src/enums.tsx"),s=r("./src/IndicatorMap/flows/useFetchOutsideTerritories.ts"),i=function(e,t,r,n){return new(r||(r=Promise))((function(a,o){function s(e){try{l(n.next(e))}catch(e){o(e)}}function i(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,i)}l((n=n.apply(e,t||[])).next())}))};function l(){const{page:e,setters:t,flowDimensions:r,currentFlowDimensions:l}=(0,a.useMapContext)(),[c,u]=(0,n.useState)(null);(0,n.useEffect)((()=>{e.indicator.flows_db_table_prefix&&(()=>{i(this,void 0,void 0,(function*(){const t=yield fetch(`/api/indicators/flows/?prefix=${e.indicator.flows_db_table_prefix}&submesh=${e.mesh}&territory=${e.geoCode}-${e.geoLevel}${e.indicator.flows_dimension?"&dimension="+e.indicator.flows_dimension:""}`);if(t.ok){const e=yield t.json();u(e)}}))})()}),[e]),(0,n.useEffect)((()=>{if(c){const e=c.flows,r=Array.from(new Set(e.map((e=>e.dimension))));r.sort(((e,t)=>e.localeCompare(t))),t.setFlowDimensions(r),t.setCurrentFlowDimensions([...r])}}),[c]),(0,n.useEffect)((()=>{if(c&&r.length>0){const r=c.flows.filter((e=>e.territory_1_id!=e.territory_2_id&&l.includes(e.dimension))),n=c.territories,a=Object.values(r.reduce(((e,t)=>{const r=[t.territory_1_id,t.territory_2_id].sort(((e,t)=>e.localeCompare(t))),n=`${r[0]}-${r[1]}`;return e[n]||(e[n]={territory_1_id:r[0],territory_2_id:r[1],value:0,dimension:"aggregated",oneToTwo:0,twoToOne:0}),e[n].value+=t.value,t.territory_1_id===r[0]?e[n].oneToTwo+=t.value:e[n].twoToOne+=t.value,e}),{})).filter((t=>e.mesh===o.MeshLevel.Town?t.value>=100:t.value>=200)),s=a.map((e=>({territory_1:n[e.territory_1_id],territory_2:n[e.territory_2_id],value:e.value,oneToTwo:e.oneToTwo,twoToOne:e.twoToOne})));t.setFlows(s);const i=a.map((e=>({type:"Feature",geometry:{type:"LineString",coordinates:[n[e.territory_1_id].center.coordinates,n[e.territory_2_id].center.coordinates]},properties:{value:e.value,oneToTwo:e.oneToTwo,twoToOne:e.twoToOne}})));t.setFeaturesForDownload((e=>{const t=structuredClone(e);return t.flows=i,t}))}}),[c,e,r,l]),(0,s.default)()}},"./src/IndicatorMap/flows/useFetchOutsideTerritories.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>i});var n=r("react"),a=r("./src/IndicatorMap/context.tsx"),o=r("./src/IndicatorMap/utils.ts"),s=function(e,t,r,n){return new(r||(r=Promise))((function(a,o){function s(e){try{l(n.next(e))}catch(e){o(e)}}function i(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,i)}l((n=n.apply(e,t||[])).next())}))};function i(){const{flows:e,page:t,territories:r,setters:i}=(0,a.useMapContext)();(0,n.useEffect)((()=>{const n=e.map((e=>[e.territory_1,e.territory_2])).flat(),a=Object.fromEntries(n.map((e=>[e.code,e]))),l=r.map((e=>e.id)),c=Object.keys(a).filter((e=>!l.includes(e)));c.length>0&&(()=>{s(this,void 0,void 0,(function*(){const e=new URLSearchParams(`mesh=${t.mesh}&codes=${c.join(",")}`).toString(),r=yield(0,o.fetchMapApi)("territories",e);r.forEach((e=>e.properties={name:a[e.id].name})),i.setOutsideTerritories(r)}))})()}),[e,r])}},"./src/IndicatorMap/flows/useFlowsLayer.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>c});var n=r("react"),a=r("./src/IndicatorMap/context.tsx"),o=r("deck.gl"),s=r("./src/IndicatorMap/utils.ts"),i=r("./src/enums.tsx");const l={[i.MeshLevel.Town]:1,[i.MeshLevel.Epci]:10,[i.MeshLevel.Department]:20,[i.MeshLevel.Region]:50,[i.MeshLevel.National]:5};function c(){var e,t,r,i;const{flows:c,page:u,territoryHover:d,territoryClick:m,flowHover:p,setters:f,hiddenLayers:v}=(0,a.useMapContext)(),g=null!==(t=null===(e=null==d?void 0:d.object)||void 0===e?void 0:e.id)&&void 0!==t?t:null,h=null!==(i=null===(r=null==m?void 0:m.object)||void 0===r?void 0:r.id)&&void 0!==i?i:null,b=(null==p?void 0:p.object)?`${p.object.territory_1.code}-${p.object.territory_2.code}`:"";return(0,n.useMemo)((()=>{const e=h?c.filter((e=>e.territory_1.code===h||e.territory_2.code===h)):c;if(0===e.length)return null;const t=Math.min(...e.map((e=>e.value))),r=Math.max(...e.map((e=>e.value))),n=e=>{let t=[63,58,32,200];return(null==p?void 0:p.object)&&[e.territory_1.code,e.territory_2.code].includes(p.object.territory_1.code)&&[e.territory_1.code,e.territory_2.code].includes(p.object.territory_2.code)?t=[216,198,52,255]:g&&!h&&(t=[e.territory_1.code,e.territory_2.code].includes(g)?[216,198,52,255]:[63,58,32,100]),t};return new o.ArcLayer({id:`flows-${g}-${b}`,data:e,getSourcePosition:e=>e.territory_1.center.coordinates,getTargetPosition:e=>e.territory_2.center.coordinates,getWidth:e=>(0,s.scaleValue)({value:e.value,target:[4e-4*l[u.mesh],.004*l[u.mesh]],minmax:[t,r]}),getSourceColor:n,getTargetColor:n,getHeight:.3,widthUnits:"common",pickable:!0,onHover:e=>{f.setTerritoryHover(null),f.setFlowHover(e)},visible:!Array.from(v).some((e=>e.startsWith("flows")))})}),[c,u,g,h,b,v])}},"./src/IndicatorMap/geo-features/GeoFeatureTooltip.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>s});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx");const s=()=>{var e;const{geoFeatureHover:t}=(0,o.useMapContext)();return t&&void 0!==t.object&&0!==Object.keys(null!==(e=t.object.properties)&&void 0!==e?e:{}).length?a().createElement("div",{style:{position:"absolute",zIndex:1,pointerEvents:"none",backgroundColor:"white",color:"black",left:t.x,top:t.y,padding:"4px 8px",borderRadius:"4px",opacity:"95%",maxWidth:"300px",fontSize:"13px"}},a().createElement("ul",null,Object.entries(t.object.properties).map((([e,t])=>{return a().createElement("li",{key:e},a().createElement("b",null,e),":"," ","string"==typeof(r=t)?r:"number"==typeof r?r.toFixed(Number.isInteger(r)?0:2):"boolean"==typeof r?r?"oui":"non":void 0);var r})))):a().createElement(a().Fragment,null)}},"./src/IndicatorMap/geo-features/useFetchGeoFeatures.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>u});var n=r("react"),a=r("./src/IndicatorMap/utils.ts"),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/enums.tsx"),i=r("./node_modules/pako/dist/pako.esm.mjs"),l=function(e,t,r,n){return new(r||(r=Promise))((function(a,o){function s(e){try{l(n.next(e))}catch(e){o(e)}}function i(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,i)}l((n=n.apply(e,t||[])).next())}))};function c(e,t,r){e.setGeoFeaturesLoading((e=>{const n=structuredClone(e);return n[t.name]=r,n}))}function u(){const{page:e,mainTerritories:t,setters:r}=(0,o.useMapContext)();(0,n.useEffect)((()=>{t.length>0&&(()=>{l(this,void 0,void 0,(function*(){e.indicator.geo_features.forEach((n=>l(this,void 0,void 0,(function*(){if(n.show_on_fr_level||e.geoLevel!=s.GeoLevel.France){c(r,n,0);let o=!0,l=0,u=[];for(;o;){const d=n.geo_type===s.GeoType.point?5e4:1e4,m=new URLSearchParams(`mesh=${e.mesh}&geo_level=${e.geoLevel}&main_territories=${t.map((e=>e.id)).join(",")}&last=${l}&limit=${d}&feature=${n.id}`).toString(),p=yield(0,a.fetchMapApi)("geo-features",m),f=Uint8Array.from(atob(p.data),(e=>e.charCodeAt(0))),v=i.default.ungzip(f,{to:"string"}),g=JSON.parse(v);g.length>0?(l=p.last,u=[...u,...g],c(r,n,u.length)):(o=!1,c(r,n,!1))}r.setGeoFeatures((e=>{const t=structuredClone(e);return t[n.name]=u,t})),r.setFeaturesForDownload((e=>{const t=structuredClone(e);return t[n.name]=u,t}))}}))))}))})()}),[e,t])}},"./src/IndicatorMap/geo-features/useFilterGeoFeature.tsx":(e,t,r)=>{r.r(t),r.d(t,{useFilterGeoFeature:()=>i,useGeoFeaturesFilteredByColumn:()=>l});var n=r("react"),a=r("./src/IndicatorMap/context.tsx"),o=r("./src/IndicatorMap/utils.ts");function s(e,t){var r;const n=null!==(r=e.properties[t.column.label])&&void 0!==r?r:null;if("select"===t.filterType)return t.value.some((e=>""===e?""===n:"string"==typeof e?function(e,t){const r=(0,o.normalizeString)(e),n=(0,o.normalizeString)(t.trim());return r.includes(n)}(n,e):n===e));if("date"===t.filterType){if(null===n)return!1;const e=new Date(n);if(!(e instanceof Date))return!1;const r=t.value,a=r[0],o=r[1];return a&&o?e>=a&&e<=o:a?e>=a:!o||e<=o}if("number"===t.filterType){if(null===n)return!1;const e=t.value,r=e[0],a=e[1],o=e[2];return""!==r?n===r:""!==a&&""!==o?n>=a&&n<=o:""!==a?n>=a:""===o||n<=o}return!0}function i(){const{geoFeatures:e,geoFeaturesFilters:t,setters:r}=(0,a.useMapContext)();(0,n.useEffect)((()=>{const n=Object.fromEntries(Object.entries(e).map((([e,r])=>{let n=r;return t.forEach((t=>{t.table.name===e&&(n=n.filter((e=>s(e,t))))})),[e,n]})));r.setGeoFeaturesFiltered(n)}),[e,t])}function l(){const{geoFeatures:e,geoFeaturesFilters:t,setters:r,page:o}=(0,a.useMapContext)();(0,n.useEffect)((()=>{const n=Object.fromEntries(Object.entries(e).map((([e,r])=>{const n=o.indicator.geo_features.find((t=>t.name===e)).items.map((e=>e.name)),a=Object.fromEntries(n.map((n=>{const a=t.filter((t=>!(t.column.name===n&&t.table.name===e)));let o=[...r];return a.forEach((t=>{t.table.name===e&&(o=o.filter((e=>s(e,t))))})),[n,o]})));return[e,a]})));r.setGeoFeaturesFilteredByColumn(n)}),[e,t,o])}},"./src/IndicatorMap/geo-features/useGeoFeaturesForTerritories.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>s});var n=r("react"),a=r("./src/IndicatorMap/context.tsx"),o=r("./src/enums.tsx");function s(){const{page:e,geoFeaturesFiltered:t,setters:r}=(0,a.useMapContext)();(0,n.useEffect)((()=>{const n=e.indicator.geo_features.filter((e=>e.geo_type==o.GeoType.point)).map((e=>e.name)),a=Object.fromEntries(e.indicator.geo_features.map((e=>[e.name,e.title])));n.forEach((e=>{var n;const o=null!==(n=t[e])&&void 0!==n?n:[],s={};o.map((e=>{const t=e.id;void 0!==t&&(Object.keys(s).includes(t)?s[t]=s[t]+1:s[t]=1)})),r.setGeoFeaturesForTerritories((t=>{const r=structuredClone(t);return r[e]={values:s,name:e,title:a[e]},r}))}))}),[e,t])}},"./src/IndicatorMap/geo-features/useGeoFeaturesLayers.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>c});var n=r("react"),a=r("deck.gl"),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/IndicatorMap/utils.ts"),i=r("./src/enums.tsx");function l(e){e=e.replace(/^#/,"");const t=parseInt(e,16);return[t>>16&255,t>>8&255,255&t]}function c(){const{page:e,geoFeaturesFiltered:t,hiddenLayers:r,setters:c,precisionMode:u}=(0,o.useMapContext)();return(0,n.useMemo)((()=>{const n=Object.fromEntries(e.indicator.geo_features.map((e=>[e.name,e]))),o=Object.entries(t).map((([e,t])=>{const o=n[e].geo_type;if(o!=i.GeoType.point)return new a.GeoJsonLayer({id:e,data:t,getPointRadius:10,getFillColor:[...l(n[e].color),o===i.GeoType.polygon?100:255],getLineWidth:12,lineWidthMinPixels:1.5,getLineColor:l(n[e].color),pickable:!0,onHover:e=>c.setGeoFeatureHover(e),lineCapRounded:!0,lineJointRounded:!0,pointType:"point",sizeScale:40,visible:!r.has(e)});{const o=n[e].color,i=(0,s.modifySvgAttributes)(n[e].point_icon_svg,{x:"16",y:"-5",height:"",width:"50",fill:"black"}),l=`data:image/svg+xml;charset=utf-8,${encodeURIComponent(`<svg width="82" height="102" viewBox="0 0 82 102" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M1 41C0.999992 61 41 101 41 101C41 101 81 61 81 41C81 21 61 1 41 1C21 1 0.999992 21 1 41Z" fill="${o}"/>\n ${i}\n </svg>`)}`;return new a.IconLayer({id:e,data:t,pickable:!0,onHover:e=>c.setGeoFeatureHover(e),getIcon:()=>({url:l,height:102,width:82}),getSize:u?32:16,getPosition:e=>e.geometry.coordinates,visible:!r.has(e)})}})),d=e=>n[e.id].geo_type===i.GeoType.line?10:100;return o.sort(((e,t)=>d(e)-d(t)))}),[t,e,r,u])}},"./src/IndicatorMap/index.tsx":(e,t,r)=>{r.r(t);var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/IndicatorMap/MapWithinContext.tsx"),i=r("./src/IndicatorMap/filters.ts");window.IndicatorMap=({indicator:e,mesh:t,territory:r})=>{const{geoLevel:n,geoId:l}=r,c=(0,i.useFilters)();return a().createElement(o.MapContextProvider,{key:`map${t}${l}`,indicator:e,mesh:t,geoCode:l,geoLevel:n,filters:c},a().createElement(s.default,null))}},"./src/IndicatorMap/legend/Download.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>v});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx"),s=r("./node_modules/jszip/dist/jszip.min.js"),i=r.n(s),l=r("./node_modules/file-saver/dist/FileSaver.min.js"),c=r.n(l),u=r("html2canvas"),d=r.n(u),m=r("xlsx"),p=function(e,t,r,n){return new(r||(r=Promise))((function(a,o){function s(e){try{l(n.next(e))}catch(e){o(e)}}function i(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,i)}l((n=n.apply(e,t||[])).next())}))};function f(e,t){fetch("/api/tracking/event/",{method:"POST",body:JSON.stringify({indicator:e.name,event:"download",objet:"map",type:t})})}function v(){const{featuresForDownload:e,deckRef:t,mapRef:r,page:s,excelFile:u}=(0,o.useMapContext)(),v=(0,n.useCallback)((()=>p(this,void 0,void 0,(function*(){const t=new(i());for(const[r,n]of Object.entries(e)){const e={type:"FeatureCollection",features:n},a=`${r}.geojson`,o=JSON.stringify(e,null,2);t.file(a,o)}const r=yield t.generateAsync({type:"blob"});(0,l.saveAs)(r,"carte.zip"),f(s.indicator,"geojson")}))),[e]),g=(0,n.useCallback)((()=>p(this,void 0,void 0,(function*(){const e=m.utils.book_new();u.forEach((t=>{const r=[[t.title],t.headers,...t.data],n=m.utils.aoa_to_sheet(r);m.utils.book_append_sheet(e,n,t.title.length>30?t.title.substring(0,30)+"…":t.title)}));const t=m.write(e,{bookType:"ods",type:"array"}),r=new Blob([t],{type:"application/octet-stream"});(0,l.saveAs)(r,`carte - ${s.indicator.title}.ods`),f(s.indicator,"spreadsheet")}))),[u]),h=(0,n.useCallback)((()=>p(this,void 0,void 0,(function*(){const e=`carte - ${s.indicator.title}.png`;if(!r.current||!t.current)return;const n=r.current.getMap(),a=t.current.deck,o=n.getCanvas();a.redraw(!0);const i=a.canvas;document.querySelectorAll(".hideForDownload").forEach((e=>{e.style.visibility="hidden"}));const l=yield d()(document.getElementById("tdbmd-map"));document.querySelectorAll(".hideForDownload").forEach((e=>{e.style.visibility="visible"}));let u=document.createElement("canvas");u.width=o.width,u.height=o.height;var m=u.getContext("2d");m.globalAlpha=1,m.drawImage(o,0,0),m.globalAlpha=1,m.drawImage(i,0,0),m.globalAlpha=1,m.drawImage(l,0,0),u.toBlob((t=>{c().saveAs(t,e)})),f(s.indicator,"image")}))),[t,r,s]);return a().createElement("div",{id:"map-download-buttons"},a().createElement("button",{onClick:()=>v(),className:"fr-btn fr-btn--secondary fr-btn--sm fr-icon-road-map-line fr-btn--icon-right"},"Exporter la carte en GeoJSON"),a().createElement("button",{onClick:()=>h(),className:"fr-btn fr-btn--secondary fr-btn--sm fr-icon-image-line fr-btn--icon-right"},"Exporter la carte en png"),a().createElement("button",{id:"download-map-spreadsheet",onClick:()=>g(),className:"fr-btn fr-btn--secondary fr-btn--sm fr-icon-line-chart-line fr-btn--icon-right"},"Exporter la carte en feuille de calcul"))}},"./src/IndicatorMap/legend/Legend.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>c});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/IndicatorMap/enums.ts"),i=r("./src/IndicatorMap/utils.ts"),l=r("./src/IndicatorMap/legend/SecondaryValues.tsx");function c(){const{values:e,rankValues:t}=(0,o.useMapContext)(),[r,c]=(0,n.useState)(!0),u=(0,n.useMemo)((()=>{const r={};Object.entries(t).forEach((([e,t])=>{const n=null===t.light||null===t.saturation||null===t.color?s.NULL_COLOR_HSL:[t.color,t.saturation,t.light],a=JSON.stringify(n);a in r||(r[a]=[]),r[a].push(e)}));const n=Object.fromEntries(Object.entries(r).map((([t,r])=>{var n,a,o,s;const i=r.map((t=>e[t])),l=i.map((e=>e.value));let c=null,u="NA",d="NA";return l.length>0&&(c=Math.min(...l),u=null!==(a=null===(n=Object.values(i).find((e=>e.value===Math.min(...l))))||void 0===n?void 0:n.valueLabel)&&void 0!==a?a:"NA",d=null!==(s=null===(o=Object.values(i).find((e=>e.value===Math.max(...l))))||void 0===o?void 0:o.valueLabel)&&void 0!==s?s:"NA"),u&&u.length>16&&(u=u.split(" ")[0]),d&&d.length>16&&(d=d.split(" ")[0]),[t,{minLabel:u,maxLabel:d,minValue:c}]})));return Object.entries(n).sort(((e,t)=>(null===t[1].minValue?-1:t[1].minValue)-(null===e[1].minValue?-1:e[1].minValue)))}),[t,e]),d=()=>c((e=>!e));return a().createElement("div",{id:"tdbmd-map-legend",className:`${!r&&"tdbmd-map-legend--small"}`,onClick:()=>{r||d()}},r&&a().createElement(a().Fragment,null,a().createElement("div",null,u.map((e=>{const t=JSON.parse(e[0]),r=`rgba(${[...(0,i.hsl2rgb)(...t),s.OPACITY].join(",")})`,n=e[1].minLabel===e[1].maxLabel?e[1].minLabel:`${e[1].minLabel.split(" ")[0]} à ${e[1].maxLabel}`;return a().createElement("div",{className:"tdbmd-map-legend-category"},a().createElement("div",{style:{backgroundColor:r}}),a().createElement("div",null,n))}))),a().createElement(l.default,null),a().createElement("div",{className:"tdbmd-map-legend--close",onClick:d},a().createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor"},a().createElement("path",{d:"M11.9997 10.5865L16.9495 5.63672L18.3637 7.05093L13.4139 12.0007L18.3637 16.9504L16.9495 18.3646L11.9997 13.4149L7.04996 18.3646L5.63574 16.9504L10.5855 12.0007L5.63574 7.05093L7.04996 5.63672L11.9997 10.5865Z"})))),!r&&a().createElement("span",null,"Légende"))}},"./src/IndicatorMap/legend/SecondaryValues.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>l});var n=r("./src/IndicatorMap/context.tsx"),a=r("react"),o=r.n(a),s=r("./src/IndicatorMap/enums.ts"),i=r("deck.gl");function l(){const{secondaryValuesByName:e,mapRef:t,viewState:r,page:l,secondaryValuesForMap:c,secondaryValuesScaleType:u}=(0,n.useMapContext)(),d=(0,a.useMemo)((()=>{if("pixels"===u)return 2;if(null===t.current)return 0;const e=new i.WebMercatorViewport({width:t.current.getContainer().clientWidth,height:t.current.getContainer().clientHeight,longitude:r.longitude,latitude:r.latitude,zoom:r.zoom}),n=e.project([48,2]),a=e.project([48,2.01]);return 140*(n[1]-a[1])}),[t.current,r,l,u]),[m,p]=(0,a.useMemo)((()=>{let e=c.map((e=>e.value));return 0==e.length&&(e=[0]),[Math.min(...e),Math.max(...e)]}),[c]);return o().createElement(o().Fragment,null,Object.values(e).map((e=>o().createElement("section",{key:e.name},o().createElement("div",null,e.short_title),o().createElement("div",{style:{display:"flex",flexDirection:"row",gap:"16px"}},o().createElement("div",{style:{padding:"8px 0px 4px 0px",minWidth:"75px",display:"flex",justifyContent:"center",alignItems:"end"}},o().createElement("div",{style:{position:"relative"}},o().createElement("div",{style:{backgroundColor:s.COLORS[1],border:"1px solid gray",opacity:"60%",width:d*p+"px",height:d*p+"px",minWidth:"16px",minHeight:"16px",maxWidth:"100px",maxHeight:"100px",borderRadius:"9999px"}}),o().createElement("div",{style:{backgroundColor:s.COLORS[1],border:"1px solid gray",width:d*m+"px",height:d*m+"px",borderRadius:"9999px",position:"absolute",bottom:"0",left:"50%",transform:"translateX(-50%)"}}))),o().createElement("div",{style:{display:"flex",flexDirection:"column",justifyContent:"space-between",gap:"4px"}},o().createElement("div",null,"Max : ",e.details[2].valueLabel),o().createElement("div",null,"Min : ",e.details[0].valueLabel)))))))}},"./src/IndicatorMap/overview/OverviewTooltip.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>i});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/IndicatorMap/enums.ts");const i=()=>{const{page:e,territoryHover:t,geoFeaturesForTerritories:r,secondaryValuesByName:i,values:l,hiddenLayers:c}=(0,o.useMapContext)(),u=(0,n.useMemo)((()=>{var n,a,o,u,d,m;if(null===t||void 0===t.object)return null;const p=Object.fromEntries(e.indicator.geo_features.map((e=>[e.name,e]))),f=t.object.id;let v=[];return c.has(`${e.indicator.name}-fill`)||(v=[...v,{name:null!==(n=e.indicator.short_title)&&void 0!==n?n:e.indicator.title,value:null===(a=l[f])||void 0===a?void 0:a.valueLabel,color:s.COLORS[0]}]),c.has(null===(o=e.indicator.secondary_indicator)||void 0===o?void 0:o.name)||Object.values(i).forEach((e=>{var t;v=[...v,{name:null!==(t=e.short_title)&&void 0!==t?t:e.title,value:e.values[f].valueLabel,color:s.COLORS[1]}]})),Object.entries(r).filter((([e,t])=>!c.has(e))).forEach((([e,t])=>{v=[...v,{name:t.title,value:t.values[f],color:p[e].color}]})),{name:null!==(d=null===(u=l[f])||void 0===u?void 0:u.territoryName)&&void 0!==d?d:null===(m=t.object.properties)||void 0===m?void 0:m.name,position:[t.x,t.y],values:v,withGeoFeatures:e.indicator.geo_features.length>0}}),[e,t,r,i,l,c]);return u&&u.values.length>0&&a().createElement("div",{style:{position:"absolute",zIndex:1,pointerEvents:"none",backgroundColor:"white",color:"black",left:u.position[0],top:u.position[1],padding:"4px 8px",display:"flex",flexDirection:"column",alignItems:"center",borderRadius:"4px",opacity:"95%",maxWidth:"300px"}},a().createElement("div",{style:{fontSize:"14px",fontWeight:"600",marginBottom:"4px"}},u.name),a().createElement("div",{style:{display:"flex",flexDirection:"column",gap:"4px"}},u.values.map((e=>void 0!==e.value&&a().createElement("div",{key:e.name,style:{display:"flex",flexDirection:"row",alignItems:"center",gap:"8px"}},u.values.length>1&&a().createElement("div",{style:{width:"14px",height:"14px",backgroundColor:e.color,borderRadius:"1000px",flexShrink:0}}),a().createElement("div",{style:{display:"flex",flexDirection:"column",alignItems:"start"}},a().createElement("div",{style:{fontWeight:"500",fontSize:"13px",lineHeight:"13px"}},e.name),a().createElement("div",{style:{fontSize:"13px"}},e.value)))))))}},"./src/IndicatorMap/overview/useOverviewLayer.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>l});var n=r("react"),a=r("deck.gl"),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/IndicatorMap/enums.ts"),i=r("./src/IndicatorMap/overview/useSecondIndicatorOverview.ts");function l(){const{precisionMode:e,page:t,secondaryValuesForMap:r,hiddenLayers:l,secondaryValuesScaleType:c}=(0,o.useMapContext)();return(0,i.default)(),(0,n.useMemo)((()=>{var e,n;return[new a.ScatterplotLayer({id:null===(e=t.indicator.secondary_indicator)||void 0===e?void 0:e.name,data:r,radiusUnits:c,lineWidthUnits:"pixels",stroked:!0,getRadius:e=>e.value,getFillColor:[...s.SECOND_COLOR_RGB,180],getLineColor:[255,255,255,180],getLineWidth:1,visible:!l.has(null===(n=t.indicator.secondary_indicator)||void 0===n?void 0:n.name)})]}),[e,t,r,l,c])}},"./src/IndicatorMap/overview/useSecondIndicatorOverview.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>l});var n=r("react"),a=r("./src/IndicatorMap/context.tsx"),o=r("./node_modules/@turf/center-of-mass/dist/esm/index.js"),s=r("./src/IndicatorMap/utils.ts"),i=r("./src/IndicatorMap/enums.ts");function l(){const{secondaryValuesByName:e,page:t,setters:r,territories:l,viewState:c,secondaryValuesScaleType:u}=(0,a.useMapContext)(),d=(0,n.useMemo)((()=>Object.fromEntries(l.map((e=>[e.id,(0,o.centerOfMass)(e.geometry).geometry.coordinates])))),[l]);(0,n.useEffect)((()=>{r.setSecondaryValuesScaleType(c.zoom<i.SCALE_CHANGE[t.geoLevel]?"common":"pixels")}),[c.zoom,t.geoLevel]),(0,n.useEffect)((()=>{const n=Object.values(e),a=n.length>0?n[0].values:{},o="pixels"===u?i.SCALES_PIXELS_BY_MESH[t.mesh]:i.SCALES_COMMONS_BY_MESH[t.mesh],l=Object.values(a).map((e=>e.value)),c=Math.max(...l),m=Math.min(...l),p=Object.entries(a).map((([e,t])=>({position:d[e],value:(0,s.scaleValue)({value:t.value,target:[1,4],minmax:[m,c]})*o})));r.setSecondaryValuesForMap(p)}),[e,d,t,u])}},"./src/IndicatorMap/sidebar/Filters.tsx":(e,t,r)=>{r.r(t),r.d(t,{SideBarFilters:()=>d});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/utils.ts"),s=r("./src/IndicatorMap/sidebar/Loader.tsx"),i=r("./src/enums.tsx"),l=r("./src/IndicatorCardFilters.tsx"),c=r("./src/IndicatorMap/sidebar/filters/GeoFeaturesFilters.tsx"),u=r("./src/IndicatorMap/context.tsx");function d(){const{page:e,geoFeaturesLoading:t,geoFeaturesFiltered:r,flowDimensions:n,currentFlowDimensions:d,setters:m}=(0,u.useMapContext)();return a().createElement(a().Fragment,null,e.indicator.geo_features.filter((t=>t.show_on_fr_level||e.geoLevel!==i.GeoLevel.France)).map((e=>{var n,i,l;const u=null!==(l=null!==(i=null===(n=r[e.name])||void 0===n?void 0:n.length)&&void 0!==i?i:t[e.name])&&void 0!==l?l:0,d=u?(0,o.addSpacesToDigit)(u):"0",m=!1!==t[e.name]&&void 0!==t[e.name];return a().createElement("section",{key:e.name},a().createElement("div",{className:"title"},e.title),a().createElement("div",{className:"geo-feature-count"},m&&a().createElement(s.default,null),d&&a().createElement("div",null,d," ",e.unite)),a().createElement(c.default,{featureTable:e}))})),n.length>0&&a().createElement("details",null,a().createElement("summary",null,a().createElement("b",null,"Flux des actifs"),a().createElement("div",{className:"filterTitle"},"Filtrer sur le type de flux")),a().createElement(l.default,{filters:n,currentFilters:d,onClick:e=>{m.setCurrentFlowDimensions((t=>t.includes(e)?t.filter((t=>t!==e)):[...t,e].sort(((e,t)=>e.localeCompare(t)))))}})))}},"./src/IndicatorMap/sidebar/Layers.tsx":(e,t,r)=>{r.r(t),r.d(t,{SideBarLayers:()=>i});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/enums.tsx");function i(){const{page:e,hiddenLayers:t,setters:r,secondaryValuesByName:n}=(0,o.useMapContext)(),i=e.indicator.geo_features.filter((t=>t.show_on_fr_level||e.geoLevel!==s.GeoLevel.France));function l(e){return t=>{r.setHiddenLayers((r=>{const n=new Set(r);return t.target.checked?n.delete(e):n.add(e),n}))}}return a().createElement("fieldset",{className:"fr-fieldset sidebar-filters","aria-labelledby":"layers-checkboxes-legend"},a().createElement("legend",{className:"fr-fieldset__legend--regular fr-fieldset__legend",id:"layers-checkboxes-legend"},"Couches de données"),a().createElement("div",{className:"fr-fieldset__element"},a().createElement("div",{className:"fr-checkbox-group fr-checkbox-group--sm"},a().createElement("input",{name:"layers-indicator",id:"layers-indicator",type:"checkbox",checked:!t.has(`${e.indicator.name}-fill`),onChange:l(`${e.indicator.name}-fill`)}),a().createElement("label",{className:"fr-label",htmlFor:"layers-indicator"},e.indicator.title))),i.map((e=>a().createElement("div",{className:"fr-fieldset__element"},a().createElement("div",{className:"fr-checkbox-group fr-checkbox-group--sm"},a().createElement("input",{name:`layers-geo-${e.name}`,id:`layers-geo-${e.name}`,type:"checkbox",checked:!t.has(e.name),onChange:l(e.name)}),a().createElement("label",{className:"fr-label",htmlFor:`layers-geo-${e.name}`},e.title))))),Object.values(n).map((r=>{var n,o;return a().createElement("div",{className:"fr-fieldset__element"},a().createElement("div",{className:"fr-checkbox-group fr-checkbox-group--sm"},a().createElement("input",{name:`layers-secondary-${r.name}`,id:`layers-secondary-${r.name}`,type:"checkbox",checked:!t.has(null===(n=e.indicator.secondary_indicator)||void 0===n?void 0:n.name),onChange:l(null===(o=e.indicator.secondary_indicator)||void 0===o?void 0:o.name)}),a().createElement("label",{className:"fr-label",htmlFor:`layers-secondary-${r.name}`},r.title)))})),e.indicator.flows_db_table_prefix&&a().createElement("div",{className:"fr-fieldset__element"},a().createElement("div",{className:"fr-checkbox-group fr-checkbox-group--sm"},a().createElement("input",{name:"layers-flows",id:"layers-flows",type:"checkbox",checked:!Array.from(t).some((e=>e.startsWith("flows"))),onChange:l("flows")}),a().createElement("label",{className:"fr-label",htmlFor:"layers-flows"},"Flux"))))}},"./src/IndicatorMap/sidebar/Loader.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>o});var n=r("react"),a=r.n(n);function o(){return a().createElement("div",{className:"loader"},a().createElement("svg",{viewBox:"0 0 50 50",className:"spinner"},a().createElement("circle",{cx:"25",cy:"25",r:"20",fill:"none",stroke:"currentColor",strokeWidth:"10"})))}},"./src/IndicatorMap/sidebar/Sidebar.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>c});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/IndicatorMap/sidebar/Layers.tsx"),i=r("./src/IndicatorMap/sidebar/Filters.tsx"),l=r("./src/IndicatorMap/enums.ts");function c(){const{isSidebarOpen:e,sideBarMode:t,setters:r}=(0,o.useMapContext)();return a().createElement("div",{className:"hideForDownload",id:"map-sidebar","data-open":e},a().createElement("button",{id:"collapse",onClick:()=>r.setIsSidebarOpen(!e)},a().createElement("span",{className:"fr-icon-arrow-left-s-line-double"})),a().createElement("div",{className:"ms-container"},a().createElement("div",{className:"ms-body"},t===l.SideBarMode.layers&&a().createElement(s.SideBarLayers,null),t===l.SideBarMode.filters&&a().createElement(i.SideBarFilters,null))))}},"./src/IndicatorMap/sidebar/filters/BoolFilter.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>i});var n=r("react"),a=r.n(n),o=r("./node_modules/react-select/dist/react-select.esm.js"),s=r("./src/IndicatorMap/context.tsx");function i({table:e,column:t,reset:r}){const{setters:i,geoFeaturesFiltered:l,geoFeatures:c}=(0,s.useMapContext)(),u=(0,n.useMemo)((()=>{var r,n;return(null!==(n=null!==(r=l[e.name])&&void 0!==r?r:c[e.name])&&void 0!==n?n:[]).map((e=>e.properties[t.label]))}),[l,c,e,t]),[d,m]=(0,n.useState)(null),p=(0,n.useRef)(null);(0,n.useEffect)((()=>{p.current.clearValue(),i.setGeoFeaturesFilters([])}),[r]),(0,n.useEffect)((()=>{i.setGeoFeaturesFilters((r=>{let n=r.filter((e=>e.column.name!=t.name));return d&&d.length>0&&(n=n.concat([{column:t,filterType:"select",value:d.map((e=>e.value)),table:e}])),n}))}),[d]);const f=[];return u.includes(!0)&&f.push({value:!0,label:"oui"}),u.includes(!1)&&f.push({value:!1,label:"non"}),u.includes(null)&&f.push({value:null,label:"sans valeur"}),a().createElement(o.default,{ref:p,options:f,onChange:m,placeholder:"Sélectionner",isMulti:!0,isClearable:!0})}},"./src/IndicatorMap/sidebar/filters/DateFilter.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>c});var n=r("react"),a=r.n(n),o=r("./node_modules/react-datepicker/dist/index.es.js"),s=r("./node_modules/date-fns/locale/fr.js"),i=r("./src/IndicatorMap/context.tsx");function l({date:e,setDate:t}){return a().createElement(o.default,{selected:e,onChange:e=>t(e),showMonthDropdown:!0,showYearDropdown:!0,locale:"fr",scrollableYearDropdown:!0,yearDropdownItemNumber:60,maxDate:new Date,onYearChange:e=>t(e),onMonthChange:e=>t(e),isClearable:!0})}function c({table:e,column:t,reset:r}){const{setters:o}=(0,i.useMapContext)(),[s,c]=(0,n.useState)(null),[u,d]=(0,n.useState)(null);return(0,n.useEffect)((()=>{d(null),c(null),o.setGeoFeaturesFilters([])}),[r]),(0,n.useEffect)((()=>{o.setGeoFeaturesFilters((r=>{let n=r.filter((e=>e.column.name!=t.name));return(s||u)&&(n=n.concat([{column:t,filterType:"date",value:[s,u],table:e}])),n}))}),[s,u]),a().createElement("div",{className:"date-pickers-range"},a().createElement("div",null,a().createElement("label",null,"Date minimum"),a().createElement("br",null),a().createElement(l,{date:s,setDate:c})),a().createElement("div",null,a().createElement("label",null,"Date maximum"),a().createElement("br",null),a().createElement(l,{date:u,setDate:d})))}r("./node_modules/react-datepicker/dist/react-datepicker.css"),(0,o.registerLocale)("fr",s.fr)},"./src/IndicatorMap/sidebar/filters/FilterType.ts":(e,t,r)=>{r.r(t),r.d(t,{guessFilterType:()=>a});var n=r("./src/IndicatorMap/sidebar/filters/enums.ts");function a(e){if(e.every((e=>null===e||""===e)))return n.FilterType.null;const t=e.filter((e=>null!==e)),r=t.every((e=>"string"==typeof e));return r&&t.filter((e=>""!==e)).every((e=>function(e){if(!/^\d{4}-\d{2}-\d{2}$/.test(e))return!1;const[t,r,n]=e.split("-").map(Number),a=new Date(e);return a instanceof Date&&a.getFullYear()===t&&a.getMonth()+1===r&&a.getDate()===n}(e)))?n.FilterType.date:r?n.FilterType.string:t.every((e=>"boolean"==typeof e))?n.FilterType.bool:t.every((e=>"number"==typeof e))?n.FilterType.number:null}},"./src/IndicatorMap/sidebar/filters/GeoFeaturesFilters.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>p});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/IndicatorMap/sidebar/filters/FilterType.ts"),i=r("./src/IndicatorMap/sidebar/filters/DateFilter.tsx"),l=r("./src/IndicatorMap/sidebar/filters/BoolFilter.tsx"),c=r("./src/IndicatorMap/sidebar/filters/enums.ts"),u=r("./src/IndicatorMap/sidebar/filters/NumberFilter.tsx"),d=r("./src/IndicatorMap/sidebar/filters/StringFilter.tsx");function m({table:e,column:t,reset:r}){const{geoFeatures:m}=(0,o.useMapContext)(),p=(0,n.useMemo)((()=>{var r;const n=(null!==(r=m[e.name])&&void 0!==r?r:[]).map((e=>e.properties[t.label]));return(0,s.guessFilterType)(n)}),[e,t,m]);return p===c.FilterType.date?a().createElement(i.default,{column:t,table:e,reset:r}):p===c.FilterType.number?a().createElement(u.default,{column:t,table:e,reset:r}):p===c.FilterType.bool?a().createElement(l.default,{column:t,table:e,reset:r}):p===c.FilterType.string?a().createElement(d.default,{column:t,table:e,reset:r}):p===c.FilterType.null?a().createElement("div",null,"Données manquantes."):a().createElement("p",null,"Pas de filtres disponibles.")}function p({featureTable:e}){const{geoFeaturesFilters:t}=(0,o.useMapContext)(),[r,s]=(0,n.useState)(0),i=(0,n.useMemo)((()=>t.filter((t=>t.table.id===e.id)).length>0),[t,e]);return a().createElement("div",{className:"table-geo-filters"},a().createElement("div",{className:"filters-title"},i?a().createElement("div",{className:"reset-filters",onClick:()=>s((e=>e+1))},"réinitialiser les filtres"):a().createElement("div",{className:"no-filters"},"0 filtres appliqués")),e.items.map((t=>t.filterable?a().createElement("details",null,a().createElement("summary",null,"Filtrer par ",t.label),a().createElement("div",{className:"table-geo-filters-details-body"},a().createElement(m,{table:e,column:t,reset:r}))):a().createElement(a().Fragment,null))))}},"./src/IndicatorMap/sidebar/filters/NumberFilter.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>s});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx");function s({table:e,column:t,reset:r}){const{setters:s}=(0,o.useMapContext)();(0,n.useEffect)((()=>{document.getElementById(l+"-exact").value="",document.getElementById(l+"-min").value="",document.getElementById(l+"-max").value="",s.setGeoFeaturesFilters([])}),[r]);const i=()=>{s.setGeoFeaturesFilters((r=>{let n=r.filter((e=>e.column.name!=t.name));const a=document.getElementById(l+"-exact").value,o=document.getElementById(l+"-min").value,s=document.getElementById(l+"-max").value;return""===a&&""===o&&""===s||(n=n.concat([{column:t,filterType:"number",value:[""===a?"":parseInt(a),""===o?"":parseInt(o),""===s?"":parseInt(s)],table:e}])),n}))},l=`search-${e.name}-${t.name}`;return a().createElement("div",{className:"geo-filters-numbers-col"},a().createElement("div",null,a().createElement("label",{className:"fr-label",htmlFor:l+"-exact"},"Valeur exacte"),a().createElement("input",{id:l+"-exact",type:"number",className:"fr-input fr-input--sm",onInput:i})),a().createElement("i",null,"ou intervallle de valeur"),a().createElement("div",{className:"geo-filters-numbers-row"},a().createElement("div",null,a().createElement("label",{className:"fr-label",htmlFor:l+"-min"},"Valeur minimum"),a().createElement("input",{id:l+"-min",type:"number",className:"fr-input fr-input--sm",onInput:i})),a().createElement("div",null,a().createElement("label",{className:"fr-label",htmlFor:l+"-max"},"Valeur maximum"),a().createElement("input",{id:l+"-max",type:"number",className:"fr-input fr-input--sm",onInput:i}))))}},"./src/IndicatorMap/sidebar/filters/StringFilter.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>u});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/IndicatorMap/utils.ts"),i=r("./node_modules/react-windowed-select/dist/main.js"),l=r.n(i);function c(e,t,r){const n=`#filtres > .filters-dimension[data-dimension="${r.name}"]`,a=document.querySelector(n);if(a&&r.linked_to_indicator){const r=Array.from(a.querySelectorAll("button")).map((e=>({value:e.innerText,pressed:"true"===e.getAttribute("aria-pressed")}))).filter((e=>e.pressed)).map((e=>e.value)),n=t.filter((e=>{var t;return r.includes(null!==(t=e.value)&&void 0!==t?t:"")}));e.current.clearValue(),e.current.setValue(n,"select-option")}}function u({table:e,column:t,reset:r}){const{setters:i,geoFeatures:u,geoFeaturesFilteredByColumn:d}=(0,o.useMapContext)(),[m,p]=(0,n.useState)(null),f=(0,n.useRef)(null);(0,n.useEffect)((()=>{f.current.clearValue(),i.setGeoFeaturesFilters([])}),[r]);const v=(0,n.useMemo)((()=>{var r,n;const a=(null!==(n=null!==(r=d[e.name]&&d[e.name][t.name])&&void 0!==r?r:u[e.name])&&void 0!==n?n:[]).map((e=>e.properties[t.label])),o=Array.from(new Set(a)).sort(((e,t)=>(0,s.normalizeString)((null!=e?e:"").trim()).localeCompare((0,s.normalizeString)((null!=t?t:"").trim())))).map((e=>{var t;let r=null!==(t=null==e?void 0:e.toString())&&void 0!==t?t:"";return""===e?r="vide":null===e&&(r="sans valeur"),{value:e,label:r}}));return o}),[d,u,e,t]);return(0,n.useEffect)((()=>{c(f,v,t),Array.from(document.querySelectorAll("#filtres button.filter-tag")).forEach((e=>e.addEventListener("click",(()=>c(f,v,t)))))}),[]),(0,n.useEffect)((()=>{i.setGeoFeaturesFilters((r=>{let n=r.filter((e=>e.column.name!=t.name));return m&&m.length>0&&(n=n.concat([{column:t,filterType:"select",value:m.map((e=>e.value)),table:e}])),n}))}),[m]),a().createElement(l(),{ref:f,options:v,onChange:p,placeholder:"Sélectionner",isMulti:!0,isClearable:!0,isSearchable:!0,className:"react-select-container",classNamePrefix:"react-select"})}},"./src/IndicatorMap/sidebar/filters/enums.ts":(e,t,r)=>{var n;r.r(t),r.d(t,{FilterType:()=>n}),function(e){e.date="date",e.string="string",e.bool="bool",e.number="number",e.null="null"}(n||(n={}))},"./src/IndicatorMap/territories/useFetchTerritories.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>i});var n=r("react"),a=r("./src/IndicatorMap/utils.ts"),o=r("./src/IndicatorMap/context.tsx"),s=function(e,t,r,n){return new(r||(r=Promise))((function(a,o){function s(e){try{l(n.next(e))}catch(e){o(e)}}function i(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,i)}l((n=n.apply(e,t||[])).next())}))};function i(){const{mainTerritories:e,page:t,setters:r}=(0,o.useMapContext)();(0,n.useEffect)((()=>{e.length>0&&(()=>{s(this,void 0,void 0,(function*(){const n=new URLSearchParams(`mesh=${t.mesh}&geo_level=${t.geoLevel}&main_territories=${e.map((e=>e.id)).join(",")}`).toString(),o=yield(0,a.fetchMapApi)("territories",n);r.setTerritories(o)}))})()}),[t,e])}},"./src/IndicatorMap/territories/useMainTerritories.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>i});var n=r("react"),a=r("./src/IndicatorMap/utils.ts"),o=r("./src/IndicatorMap/context.tsx"),s=function(e,t,r,n){return new(r||(r=Promise))((function(a,o){function s(e){try{l(n.next(e))}catch(e){o(e)}}function i(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,i)}l((n=n.apply(e,t||[])).next())}))};function i(){const{page:e,setters:t}=(0,o.useMapContext)();(0,n.useEffect)((()=>{(()=>{s(this,void 0,void 0,(function*(){const r=new URLSearchParams(`geo_level=${e.geoLevel}&geo_id=${e.geoCode}`).toString();t.setMainTerritories(yield(0,a.fetchMapApi)("main-territory",r))}))})()}),[e])}},"./src/IndicatorMap/territories/usePreciseTerritories.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>l});var n=r("./node_modules/@turf/bbox/dist/esm/index.js"),a=r("deck.gl"),o=r("react"),s=r("./src/IndicatorMap/context.tsx"),i=function(e,t,r,n){return new(r||(r=Promise))((function(a,o){function s(e){try{l(n.next(e))}catch(e){o(e)}}function i(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,i)}l((n=n.apply(e,t||[])).next())}))};function l(){const{territories:e,outsideTerritories:t,mapRef:r,viewState:l,precisionMode:c,page:u,precision:d,setters:m}=(0,s.useMapContext)(),[p,f]=(0,o.useState)([]);(0,o.useEffect)((()=>{const o=setTimeout((()=>{const o=Object.fromEntries(e.concat(t).map((e=>[e.id,e]))),s=Object.values(o);f(function(e,t,r,o,s){if(null===t)return[];if(!s)return[];const i=new a.WebMercatorViewport({width:t.getContainer().clientWidth,height:t.getContainer().clientHeight,longitude:r.longitude,latitude:r.latitude,zoom:r.zoom}).getBounds();return e.filter((e=>{const[t,r,a,o]=(0,n.bbox)(e);return t<i[2]&&a>i[0]&&r<i[3]&&o>i[1]})).map((e=>e.id)).filter((e=>!Object.keys(o).includes(e)))}(s,r.current,l,d,c))}),500);return()=>clearTimeout(o)}),[e,t,r.current,l,d,c]),(0,o.useEffect)((()=>{p.length>0&&(()=>{i(this,void 0,void 0,(function*(){const e=yield fetch(`/api/geo/precise/?territories=${p.join(",")}&mesh=${u.mesh}`);if(e.ok){const t=yield e.json();m.setPrecision((e=>Object.assign(Object.assign({},e),t)))}}))})()}),[u,p])}},"./src/IndicatorMap/territories/useTerritoriesLayer.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>l});var n=r("deck.gl"),a=r("react"),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/IndicatorMap/enums.ts"),i=r("./src/IndicatorMap/utils.ts");function l(){var e,t;const{page:r,territories:l,outsideTerritories:c,precision:u,setters:d,rankValues:m,territoryHover:p,hiddenLayers:f}=(0,o.useMapContext)(),v=(0,a.useMemo)((()=>{const e=Object.fromEntries(l.concat(c).map((e=>[e.id,e])));return Object.values(e).map((e=>{var t;return{id:e.id,geometry:null!==(t=u[e.id])&&void 0!==t?t:e.geometry,properties:e.properties}}))}),[l,c,u]),g=(0,a.useCallback)((e=>{var t,r,n;const a=null===(t=m[e.id])||void 0===t?void 0:t.light,o=null===(r=m[e.id])||void 0===r?void 0:r.saturation,l=null===(n=m[e.id])||void 0===n?void 0:n.color;return null===a||null===o||null===l?[...s.NULL_COLOR_RGB,s.OPACITY]:[...(0,i.hsl2rgb)(l,o,a),s.OPACITY]}),[m]);(0,a.useEffect)((()=>{d.setFeaturesForDownload((e=>{const t=structuredClone(e);return t.territories=v,t}))}),[v]);const h=null!==(t=null===(e=null==p?void 0:p.object)||void 0===e?void 0:e.id)&&void 0!==t?t:null,b=(0,a.useCallback)((e=>h&&e.id===h?2.5:1),[h]);return(0,a.useMemo)((()=>{const e=new n.GeoJsonLayer({id:`${r.indicator.name}-fill`,data:[...v],getFillColor:g,visible:!f.has(`${r.indicator.name}-fill`)}),t=new n.GeoJsonLayer({id:`${r.indicator.name}-border`,data:[...v],getFillColor:[0,0,0,0],getLineWidth:b,lineWidthUnits:"pixels",pickable:!0,onHover:e=>{d.setFlowHover(null),d.setTerritoryHover(e)},onClick:e=>{d.setTerritoryClick((t=>{var r,n,a,o;const s=null!==(n=null===(r=null==t?void 0:t.object)||void 0===r?void 0:r.id)&&void 0!==n?n:null,i=null!==(o=null===(a=null==e?void 0:e.object)||void 0===a?void 0:a.id)&&void 0!==o?o:null;return s&&s===i?null:e}))}});return[e,t]}),[v,g,b,f])}},"./src/IndicatorMap/territories/useZoomOnTerritories.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>l});var n=r("./node_modules/@turf/bbox/dist/esm/index.js"),a=r("deck.gl"),o=r("react"),s=r("./src/IndicatorMap/context.tsx"),i=r("./src/IndicatorMap/enums.ts");function l(){const{mainTerritories:e,mapRef:t,viewState:r,setters:l,page:c}=(0,s.useMapContext)();(0,o.useEffect)((()=>{if(0==e.length||!t.current)return;const o={type:"FeatureCollection",features:e.map((e=>({type:"Feature",geometry:e.polygon,properties:{}})))},s=(0,n.bbox)(o),u=[[s[0],s[1]],[s[2],s[3]]],d=new a.WebMercatorViewport(r),{longitude:m,latitude:p,zoom:f}=d.fitBounds(u,{width:t.current.getContainer().clientWidth,height:t.current.getContainer().clientHeight,padding:64});l.setViewState({latitude:p,longitude:m,zoom:Math.min(f,i.PRECISION_LEVEL_BY_MESH[c.mesh]-.1),bearing:0,pitch:0,transitionInterpolator:new a.FlyToInterpolator({speed:2}),transitionDuration:"auto"})}),[e,t.current])}},"./src/IndicatorMap/useAddExcelSheet.ts":(e,t,r)=>{r.r(t),r.d(t,{usePrepareExcelExport:()=>i});var n=r("react"),a=r("./node_modules/wkt/index.js"),o=r("./src/IndicatorMap/context.tsx");function s(e){const{excelFile:t,setters:r}=(0,o.useMapContext)();(0,n.useEffect)((()=>{e.forEach((e=>{const n=t.filter((t=>t.title!==e.title));n.push(e),r.setExcelFile(n)}))}),[e])}function i(){const{values:e,secondaryValuesByName:t,page:r,flows:i,featuresForDownload:l}=(0,o.useMapContext)();var c;!function(e,t){s((0,n.useMemo)((()=>[{headers:["code géographique","nom du territoire","valeur"],data:Object.entries(t).map((([e,t])=>[e,t.territoryName,t.value])),title:e.title}]),[e,t]))}(r.indicator,e),c=t,s((0,n.useMemo)((()=>Object.entries(c).map((([e,t])=>{const r=Object.entries(t.values).map((([e,t])=>[e,t.territoryName,t.value]));return{title:t.title,headers:["code géographique","nom du territoire","valeur"],data:r}}))),[c])),function(e){s((0,n.useMemo)((()=>{const t=e.map((e=>[e.territory_1.code,e.territory_1.name,e.territory_2.code,e.territory_2.name,e.value,e.oneToTwo,e.twoToOne]));return e.length>0?[{headers:["Territoire 1 - code","Territoire 1 - nom","Territoire 2 - code","Territoire 2 - nom","Flux d'actifs (total)","Flux d'actifs (1 vers 2)","Flux d'actifs (2 vers 1)"],data:t,title:"Flux"}]:[]}),[e]))}(i),function(e,t){const r=Object.fromEntries(t.geo_features.map((e=>[e.name,e.title])));s((0,n.useMemo)((()=>Object.entries(e).filter((([e,t])=>"territories"!==e&&"flows"!==e)).map((([e,t])=>{const n=t.length>0&&t[0].properties?Object.keys(t[0].properties):[],o=t.map((e=>n.map((t=>{var r;return null===(r=e.properties)||void 0===r?void 0:r[t]})).concat([(0,a.stringify)(e)])));return{title:Object.keys(r).includes(e)?r[e]:e,headers:n.concat(["Emplacement (format WKT)"]),data:o}}))),[e,t]))}(l,r.indicator)}},"./src/IndicatorMap/useLayers.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>i});var n=r("./src/IndicatorMap/flows/useFlowsLayer.ts"),a=r("./src/IndicatorMap/geo-features/useGeoFeaturesLayers.ts"),o=r("./src/IndicatorMap/overview/useOverviewLayer.ts"),s=r("./src/IndicatorMap/territories/useTerritoriesLayer.ts");function i(){const e=(0,s.default)(),t=(0,o.default)(),r=(0,a.default)(),i=(0,n.default)();return[...e,...t,...r,...i?[i]:[]]}},"./src/IndicatorMap/useRemoveFocus.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>a});var n=r("react");function a(e){const t=null!==e.current;(0,n.useEffect)((()=>{if(t){const e=document.querySelector(".mapboxgl-canvas");e&&e.removeAttribute("tabindex")}}),[t])}},"./src/IndicatorMap/utils.ts":(e,t,r)=>{r.r(t),r.d(t,{addSpacesToDigit:()=>l,fetchMapApi:()=>o,hsl2rgb:()=>i,modifySvgAttributes:()=>s,normalizeString:()=>c,scaleValue:()=>a});var n=function(e,t,r,n){return new(r||(r=Promise))((function(a,o){function s(e){try{l(n.next(e))}catch(e){o(e)}}function i(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,i)}l((n=n.apply(e,t||[])).next())}))};function a({value:e,target:t,minmax:r,discrete:n=!1,rounded:a=!1}){const o=t[0],s=t[1],i=r[0],l=r[1];if(void 0===e)return o;if(function(e,t,r=2){const n=Math.pow(10,r);return Math.round(e*n)===Math.round(t*n)}(i,l))return s;let c=(e-i)/(l-i)*(s-o)+o;if(n){const e=s-o,t=[o+.2*e,o+.4*e,o+.6*e,o+.8*e,s];let r=t.findIndex((e=>c<=e));if(-1==r)throw Error("wrong index");c=t[r]}return a&&(c=Math.round(c)),c}function o(e,t){return n(this,void 0,void 0,(function*(){const r=yield fetch(`/api/geo/${e}/?${t}`);return r.ok?yield r.json():[]}))}function s(e,t){if(!e)return e;const r=(new DOMParser).parseFromString(e,"image/svg+xml"),n=r.querySelector("svg");return Object.entries(t).forEach((([e,t])=>{n.setAttribute(e,t)})),(new XMLSerializer).serializeToString(r)}function i(e,t,r){const n=r/100,a=t/100*Math.min(n,1-n),o=(t,r=(t+e/30)%12)=>Math.round(255*(n-a*Math.max(Math.min(r-3,9-r,1),-1)));return[o(0),o(8),o(4)]}function l(e){return e.toString().replace(/\B(?=(\d{3})+(?!\d))/g," ")}function c(e){return e.normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase()}},"./src/IndicatorMap/values/useFetchValues.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>l});var n=r("react"),a=r("./src/IndicatorMap/context.tsx"),o=r("./src/format.ts"),s=function(e,t,r,n){return new(r||(r=Promise))((function(a,o){function s(e){try{l(n.next(e))}catch(e){o(e)}}function i(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,i)}l((n=n.apply(e,t||[])).next())}))};function i(e,t,r){return s(this,void 0,void 0,(function*(){const{mesh:n,geoLevel:a,geoCode:s}=t,i=r.current.map((({dimension:e,db_name:t})=>`&${e}=${t}`)).join(""),l=yield fetch(`/api/indicators/${e.name}/submesh/?territory=${s}-${a}&submesh=${n}${i}`);if(l.ok){const t=yield l.json();return Object.fromEntries(t.map((t=>[t.geocode,{value:t.valeur,valueLabel:(0,o.formatValue)(t.valeur,e,{precise:!0}),territoryName:t.geoname}])))}}))}function l(){const{page:e,setters:t,filters:r}=(0,a.useMapContext)();(0,n.useEffect)((()=>{(()=>{s(this,void 0,void 0,(function*(){const n=yield i(e.indicator,e,r);if(n&&t.setValues(n),e.indicator.secondary_indicator){const r=e.indicator.secondary_indicator,n=yield i(r,e,{current:[],possible:[]});if(n){const e=[...Object.values(n)].sort(((e,t)=>e.value-t.value)),a=[e[0],e[Math.floor(e.length/2)],e[e.length-1]];t.setSecondaryValuesByName((e=>{const t=structuredClone(e);return t[r.name]={values:Object.fromEntries(Object.entries(n).map((([e,t])=>[e,t]))),name:r.name,title:r.title,short_title:r.short_title,details:a},t}))}}}))})()}),[e,r])}},"./src/IndicatorMap/values/useRankValues.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>i});var n=r("react"),a=r("./src/IndicatorMap/utils.ts"),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/IndicatorMap/enums.ts");function i(){const{values:e,setters:t}=(0,o.useMapContext)();(0,n.useEffect)((()=>{const r=Object.values(e).map((e=>e.value)).filter((e=>null!==e)),n=Math.max(...r),o=Math.min(...r),i={};Object.entries(e).forEach((([e,t])=>{if(null===t.value)i[e]={height:null,light:null,saturation:null,color:null};else{const r=(0,a.scaleValue)({value:t.value,target:[10,100],minmax:[o,n]}),l=s.LIGHT_MAX-(0,a.scaleValue)({value:t.value,target:[0,s.LIGHT_MAX-s.LIGHT_MIN],minmax:[o,n],discrete:!0,rounded:!0}),c=(0,a.scaleValue)({value:t.value,target:[s.SATURATION_MIN,s.SATURATION_MAX],minmax:[o,n],discrete:!0,rounded:!0}),u=(0,a.scaleValue)({value:t.value,target:[s.COLOR_MIN,s.COLOR_MAX],minmax:[o,n],discrete:!0,rounded:!0});i[e]={height:r,light:l,saturation:c,color:u}}})),t.setRankValues(i)}),[e])}},"./src/enums.tsx":(e,t,r)=>{var n,a,o;r.r(t),r.d(t,{COLORS:()=>s,GeoLevel:()=>n,GeoType:()=>o,MeshLevel:()=>a}),function(e){e.France="fr",e.Region="reg",e.Department="dep",e.Epci="epci",e.Town="com"}(n||(n={})),function(e){e.National="fr",e.Region="reg",e.Department="dep",e.Epci="epci",e.Town="com"}(a||(a={})),function(e){e.line="line",e.point="point",e.polygon="polygon"}(o||(o={}));const s={"#6A6AF4":"white","#000091":"white","#E1000F":"white","#B7A73F":"black","#66673D":"white","#68A532":"black","#447049":"white","#00A95F":"black","#297254":"white","#009081":"black","#37635F":"white","#009099":"black","#006A6F":"white","#465F9D":"white","#2F4077":"white","#417DC4":"black","#3558A2":"white","#A558A0":"black","#6E445A":"white","#E18B76":"black","#8D533E":"white","#CE614A":"black","#A94645":"white","#C8AA39":"black","#716043":"white","#C3992A":"black","#695240":"white","#E4794A":"black","#755348":"white","#D1B781":"black","#685C48":"white","#C08C65":"black","#845d48":"white","#BD987A":"black","#745B47":"white","#AEA397":"black","#6A6156":"white","#C9191E":"white"}},"./src/format.ts":(e,t,r)=>{r.r(t),r.d(t,{MILLIONS:()=>a,THOUSANDS:()=>n,formatIndicatorValue:()=>o,formatScaleAndUnite:()=>l,formatValue:()=>c});const n="k",a="M";function o(e,{forceInteger:t=!1,precise:r=!1}={}){if(null==e||isNaN(e))return"-";let o=null;return o=Math.abs(e)>999&&r?new Intl.NumberFormat("fr-FR").format(Math.round(e)):Math.abs(e)>999999?i(s(Math.sign(e)*Math.abs(e)/1e6,t))+a:Math.abs(e)>999?i(s(Math.sign(e)*Math.abs(e)/1e3,t))+n:i(s(e,t)),o=o.replace(".",","),o}const s=(e,t)=>t?e.toFixed(0):e.toFixed(1),i=e=>(e.indexOf(".")>0&&("00"===e.slice(-2)&&(e=e.slice(0,-2)),"0"===e.slice(-1)&&(e=e.slice(0,-1)),"."===e.slice(-1)&&(e=e.slice(0,-1))),e);function l(e,t,{forceInteger:r=!1,precise:n=!1}={}){return o(e,{forceInteger:r,precise:n})+" "+t.unite}function c(e,t,{forceInteger:r=!1,precise:n=!1}={}){return l(e,t,{forceInteger:r,precise:n})}},"deck.gl":e=>{e.exports=deck},html2canvas:e=>{e.exports=html2canvas},"mapbox-gl":e=>{e.exports=mapboxgl},react:e=>{e.exports=React},"react-dom":e=>{e.exports=ReactDOM},xlsx:e=>{e.exports=XLSX}},a={};function o(e){var t=a[e];if(void 0!==t)return t.exports;var r=a[e]={id:e,loaded:!1,exports:{}};return n[e].call(r.exports,r,r.exports,o),r.loaded=!0,r.exports}o.m=n,e=[],o.O=(t,r,n,a)=>{if(!r){var s=1/0;for(u=0;u<e.length;u++){for(var[r,n,a]=e[u],i=!0,l=0;l<r.length;l++)(!1&a||s>=a)&&Object.keys(o.O).every((e=>o.O[e](r[l])))?r.splice(l--,1):(i=!1,a<s&&(s=a));if(i){e.splice(u--,1);var c=n();void 0!==c&&(t=c)}}return t}a=a||0;for(var u=e.length;u>0&&e[u-1][2]>a;u--)e[u]=e[u-1];e[u]=[r,n,a]},o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},r=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,o.t=function(e,n){if(1&n&&(e=this(e)),8&n)return e;if("object"==typeof e&&e){if(4&n&&e.__esModule)return e;if(16&n&&"function"==typeof e.then)return e}var a=Object.create(null);o.r(a);var s={};t=t||[null,r({}),r([]),r(r)];for(var i=2&n&&e;"object"==typeof i&&!~t.indexOf(i);i=r(i))Object.getOwnPropertyNames(i).forEach((t=>s[t]=()=>e[t]));return s.default=()=>e,o.d(a,s),a},o.d=(e,t)=>{for(var r in t)o.o(t,r)&&!o.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},o.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),(()=>{var e={indicatorMap:0};o.O.j=t=>0===e[t];var t=(t,r)=>{var n,a,[s,i,l]=r,c=0;if(s.some((t=>0!==e[t]))){for(n in i)o.o(i,n)&&(o.m[n]=i[n]);if(l)var u=l(o)}for(t&&t(r);c<s.length;c++)a=s[c],o.o(e,a)&&e[a]&&e[a][0](),e[a]=0;return o.O(u)},r=self.webpackChunkreact_components=self.webpackChunkreact_components||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),o.nc=void 0;var s=o.O(void 0,["vendors"],(()=>o("./src/IndicatorMap/index.tsx")));s=o.O(s)})();
@@ -36,7 +36,7 @@
36
36
  <p class="fr-header__service-title">
37
37
  {{ main_conf.title }}
38
38
  {% if ENVIRONMENT != "prd" %}
39
- <span class="fr-badge fr-badge--success fr-badge--no-icon" id="fr-badge-:Rj5ikq:">{% if ENVIRONMENT == "ppd" %}PREPROD{% else %}DEV{% endif %}</span>
39
+ <span class="fr-badge fr-badge--success fr-badge--no-icon" id="fr-badge-:Rj5ikq:">{% if ENVIRONMENT == "ppd" %}PREPROD{% elif ENVIRONMENT == "ppd-beta" %}BETA{% else %}DEV{% endif %}</span>
40
40
  {% endif %}
41
41
  </p>
42
42
  </div>
@@ -1,6 +1,6 @@
1
1
  #tdbmd-map {
2
2
  width: 100%;
3
- height: 60vh;
3
+ height: 75vh;
4
4
  position: relative;
5
5
  border: 1px solid var(--border-default-grey);
6
6
  }
@@ -12,36 +12,46 @@
12
12
  position: absolute;
13
13
  bottom: 10px;
14
14
  left: 10px;
15
- padding: 8px 16px 0px 16px;
16
- max-width: 300px;
17
- min-width: 200px;
15
+ padding: 12px 22px 8px 16px;
18
16
  background-color: white;
19
17
  border-radius: 8px;
20
18
  opacity: 94%;
19
+ display: flex;
20
+ flex-direction: row;
21
+ align-items: end;
22
+ gap: 16px;
23
+ border: 1px solid var(--border-default-grey);
24
+ font-size: 0.8rem;
21
25
  }
22
- #tdbmd-map-legend .title {
23
- margin-bottom: 8px;
24
- font-size: 0.7rem;
25
- font-weight: bold;
26
- line-height: 1.3;
26
+ #tdbmd-map-legend.tdbmd-map-legend--small {
27
+ cursor: pointer;
28
+ padding: 8px 16px;
27
29
  }
28
- #tdbmd-map-legend .indicator-scale {
29
- width: 100%;
30
- height: 20px;
31
- opacity: 80%;
30
+ .tdbmd-map-legend--close {
31
+ position: absolute;
32
+ width: 24px;
33
+ height: 24px;
34
+ cursor: pointer;
35
+ top: 2px;
36
+ right: 2px;
32
37
  }
33
- #tdbmd-map-legend .indicator-scale-values {
34
- width: 100%;
38
+ .tdbmd-map-legend--close > svg {
39
+ width: 18px;
40
+ height: 18px;
41
+ position: absolute;
42
+ top: 2px;
43
+ right: 2px;
44
+ }
45
+ #tdbmd-map-legend .tdbmd-map-legend-category {
35
46
  display: flex;
36
- justify-content: space-between;
47
+ flex-direction: row;
48
+ align-items: center;
37
49
  gap: 8px;
50
+ font-size: 0.8rem;
38
51
  }
39
- #tdbmd-map-legend .scale-minmax {
40
- max-width: 100px;
41
- text-overflow: ellipsis;
42
- overflow: hidden;
43
- white-space: nowrap;
44
- font-size: 0.7rem;
52
+ #tdbmd-map-legend .tdbmd-map-legend-category > div:first-child {
53
+ width: 32px;
54
+ height: 16px;
45
55
  }
46
56
  #map-sidebar {
47
57
  position: absolute;
@@ -136,12 +146,17 @@
136
146
  margin-bottom: 16px;
137
147
  }
138
148
  #map-sidebar[data-open="false"] {
139
- width: 32px;
149
+ width: 0px;
140
150
  }
141
- #map-sidebar[data-open="false"] #collapse span:before {
142
- transform: scaleX(1);
151
+ #map-sidebar[data-open="false"] #collapse {
152
+ display: none;
153
+ }
154
+ #layers-checkboxes-legend {
155
+ font-weight: bold;
156
+ }
157
+ .sidebar-filters label {
158
+ font-size: 0.8rem;
143
159
  }
144
-
145
160
  #map-buttons {
146
161
  position: absolute;
147
162
  z-index: 1;
@@ -306,3 +321,11 @@
306
321
  #map-help-details-summary {
307
322
  font-size: 0.8rem;
308
323
  }
324
+ #map-loader {
325
+ position: absolute;
326
+ bottom: 8px;
327
+ right: 8px;
328
+ font-size: 0.6rem;
329
+ background-color: rgba(255, 255, 255, 0.4);
330
+ padding: 4px;
331
+ }
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: territories-dashboard-lib
3
- Version: 0.1.36
3
+ Version: 0.1.36b1
4
4
  Summary: Librairie pour la visualisation d'indicateurs territoriaux.
5
5
  Author-email: Bastien <bastien@prune.sh>
6
6
  Classifier: Programming Language :: Python :: 3
@@ -1,2 +0,0 @@
1
- /*! For license information please see indicatorMap.bundle.js.LICENSE.txt */
2
- (()=>{"use strict";var e,t,r,n={"./src/IndicatorCardFilters.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>o});var n=r("react"),a=r.n(n);const o=({filters:e,currentFilters:t,onClick:r})=>a().createElement("div",{className:"fr-tag-list"},e.map(((e,n)=>a().createElement("button",{key:n,className:"fr-tag","aria-pressed":!!t.includes(e)||void 0,onClick:()=>r(e)},e))))},"./src/IndicatorMap/Help.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>s});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx");function s(){const{geoFeatures:e,page:t}=(0,o.useMapContext)(),r=(0,n.useMemo)((()=>t.indicator.flows_db_table_prefix?a().createElement(a().Fragment,null,a().createElement("p",null,"Survolez les flux sur la carte pour afficher les valeurs en distinguant le sens du flux."),a().createElement("p",null,"Cliquez sur un territoire pour n'afficher que les flux entrants/sortants de ce territoire. Cliquez à nouveau sur le territoire ou en dehors de la zone d'étude, pour faire réapparaître tous les flux."),a().createElement("p",null,"Vous pouvez filtrer selon le mode de déplacement en sélectionnant les filtres disponibles dans le volet déroulant ",a().createElement("b",null,'"Couches de données"')," à droite de la carte."),a().createElement("p",null,a().createElement("i",null,a().createElement("u",null,"Précisions")," : A la maille communale, seuls les flux pour lesquels la somme des flux entrants (A -> B) et sortants (B -> A) est > 100 sont affichés.",a().createElement("br",null),"Pour les autres mailles, seuls les flux entrants/sortants > 200 sont affichés."))):a().createElement("p",null,"Survolez les territoires sur la carte pour afficher les valeurs de l'indicateur.",Object.keys(e).length>0&&a().createElement(a().Fragment,null,a().createElement("br",null),a().createElement("span",null,"Zoomez pour afficher les équipements, ainsi que leurs propriétés au survol de chaque équipement.")))),[e,[t]]);return a().createElement("details",{id:"map-help-details"},a().createElement("summary",{id:"map-help-details-summary"},"Aide au fonctionnement de la carte"),r)}},"./src/IndicatorMap/MapWithinContext.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>j});var n=r("./node_modules/@deck.gl/react/dist/deckgl.js"),a=r("react"),o=r.n(a),s=r("./node_modules/react-map-gl/dist/esm/index.js"),i=r("./src/IndicatorMap/territories/useZoomOnTerritories.ts"),l=r("./src/IndicatorMap/context.tsx"),c=r("./src/IndicatorMap/values/useFetchValues.ts"),u=r("./src/IndicatorMap/territories/useFetchTerritories.ts"),d=r("./src/IndicatorMap/territories/useTerritoriesLayer.ts"),m=r("./src/IndicatorMap/territories/useMainTerritories.ts"),p=r("./src/IndicatorMap/territories/usePreciseTerritories.ts"),f=r("./src/IndicatorMap/values/useRankValues.ts"),v=r("./src/IndicatorMap/geo-features/useFetchGeoFeatures.ts"),g=r("./src/IndicatorMap/geo-features/useGeoFeaturesLayers.ts"),h=r("./src/IndicatorMap/geo-features/useGeoFeaturesForTerritories.ts"),b=r("./src/IndicatorMap/overview/OverviewTooltip.tsx"),x=r("./src/IndicatorMap/overview/useOverviewLayer.ts"),y=r("./src/IndicatorMap/geo-features/GeoFeatureTooltip.tsx"),M=r("./src/IndicatorMap/legend/Legend.tsx"),E=r("./src/IndicatorMap/legend/Download.tsx"),w=r("./src/IndicatorMap/sidebar/Sidebar.tsx"),F=r("./src/IndicatorMap/flows/useFetchFlows.ts"),C=r("./src/IndicatorMap/flows/useFlowsLayer.ts"),I=r("./src/IndicatorMap/flows/FlowTooltip.tsx"),S=r("./src/IndicatorMap/buttons/Buttons.tsx"),_=r("./src/IndicatorMap/useRemoveFocus.ts"),T=r("./src/IndicatorMap/useAddExcelSheet.ts"),O=r("./src/IndicatorMap/geo-features/useFilterGeoFeature.tsx"),L=r("./src/IndicatorMap/Help.tsx");const j=()=>{const{viewState:e,mapRef:t,setters:r,page:a,deckRef:j}=(0,l.useMapContext)();(0,c.default)(),(0,u.default)(),(0,v.default)(),(0,O.useFilterGeoFeature)(),(0,O.useGeoFeaturesFilteredByColumn)(),(0,m.default)(),(0,i.default)(),(0,p.default)(),(0,f.default)(),(0,h.default)(),(0,F.default)(),(0,_.default)(t),(0,T.usePrepareExcelExport)();const k=(0,d.default)(),A=(0,x.default)(),N=(0,g.default)(),D=(0,C.default)(),V=[k,...A,...N,...D?[D]:[]],G=a.indicator.flows_db_table_prefix?"Carte des flux":"Cartographie de l'indicateur";return o().createElement(o().Fragment,null,o().createElement("h3",{className:"fr-mt-4w"},G),o().createElement("div",{id:"tdbmd-map","aria-describedby":"download-map-spreadsheet"},o().createElement(n.default,{ref:j,viewState:e,layers:V,getCursor:({isHovering:e})=>e?"pointer":"default",onViewStateChange:e=>{r.setViewState(e.viewState)},onClick:e=>{null===e.layer&&r.setTerritoryClick(null)},controller:!0},o().createElement(s.Map,{ref:t,preserveDrawingBuffer:!0,mapStyle:"mapbox://styles/bastien-prune/cm2owpt4v008201pm01evfdow",mapboxAccessToken:"pk.eyJ1IjoiYmFzdGllbi1wcnVuZSIsImEiOiJjbTJvdzlncHAwanczMm5zYnNnb2w0YTJ0In0.TCo7quhfnzeQrVsY0M7nCw",projection:"mercator",attributionControl:!1}),o().createElement(S.default,null),o().createElement(M.default,null),o().createElement(b.default,null),o().createElement(y.default,null),o().createElement(I.default,null)),o().createElement(w.default,null)),o().createElement(L.default,null),o().createElement(E.default,null))}},"./src/IndicatorMap/buttons/Buttons.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>i});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/buttons/FullScreen.tsx"),s=r("./src/IndicatorMap/buttons/ZoomButtons.tsx");function i(){return a().createElement("div",{id:"map-buttons",className:"hideForDownload"},a().createElement(s.default,null),a().createElement(o.default,null))}},"./src/IndicatorMap/buttons/FullScreen.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>i});var n=r("react"),a=r.n(n);function o(){return a().createElement("svg",{width:"24px",height:"24px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},a().createElement("path",{d:"M21.7092 2.29502C21.8041 2.3904 21.8757 2.50014 21.9241 2.61722C21.9727 2.73425 21.9996 2.8625 22 2.997L22 3V9C22 9.55228 21.5523 10 21 10C20.4477 10 20 9.55228 20 9V5.41421L14.7071 10.7071C14.3166 11.0976 13.6834 11.0976 13.2929 10.7071C12.9024 10.3166 12.9024 9.68342 13.2929 9.29289L18.5858 4H15C14.4477 4 14 3.55228 14 3C14 2.44772 14.4477 2 15 2H20.9998C21.2749 2 21.5242 2.11106 21.705 2.29078L21.7092 2.29502Z",fill:"currentColor"}),a().createElement("path",{d:"M10.7071 14.7071L5.41421 20H9C9.55228 20 10 20.4477 10 21C10 21.5523 9.55228 22 9 22H3.00069L2.997 22C2.74301 21.9992 2.48924 21.9023 2.29502 21.7092L2.29078 21.705C2.19595 21.6096 2.12432 21.4999 2.07588 21.3828C2.02699 21.2649 2 21.1356 2 21V15C2 14.4477 2.44772 14 3 14C3.55228 14 4 14.4477 4 15V18.5858L9.29289 13.2929C9.68342 12.9024 10.3166 12.9024 10.7071 13.2929C11.0976 13.6834 11.0976 14.3166 10.7071 14.7071Z",fill:"currentColor"}))}function s(){return a().createElement("svg",{width:"24px",height:"24px",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg"},a().createElement("path",{d:"M21.7071 3.70711L16.4142 9H20C20.5523 9 21 9.44772 21 10C21 10.5523 20.5523 11 20 11H14.0007L13.997 11C13.743 10.9992 13.4892 10.9023 13.295 10.7092L13.2908 10.705C13.196 10.6096 13.1243 10.4999 13.0759 10.3828C13.0273 10.2657 13.0004 10.1375 13 10.003L13 10V4C13 3.44772 13.4477 3 14 3C14.5523 3 15 3.44772 15 4V7.58579L20.2929 2.29289C20.6834 1.90237 21.3166 1.90237 21.7071 2.29289C22.0976 2.68342 22.0976 3.31658 21.7071 3.70711Z",fill:"currentColor"}),a().createElement("path",{d:"M9 20C9 20.5523 9.44772 21 10 21C10.5523 21 11 20.5523 11 20V14.0007C11 13.9997 11 13.998 11 13.997C10.9992 13.7231 10.8883 13.4752 10.7092 13.295C10.7078 13.2936 10.7064 13.2922 10.705 13.2908C10.6096 13.196 10.4999 13.1243 10.3828 13.0759C10.2657 13.0273 10.1375 13.0004 10.003 13C10.002 13 10.001 13 10 13H4C3.44772 13 3 13.4477 3 14C3 14.5523 3.44772 15 4 15H7.58579L2.29289 20.2929C1.90237 20.6834 1.90237 21.3166 2.29289 21.7071C2.68342 22.0976 3.31658 22.0976 3.70711 21.7071L9 16.4142V20Z",fill:"currentColor"}))}function i(){const[e,t]=(0,n.useState)(!1);return a().createElement("button",{className:"map-button fullscreen-button",onClick:()=>{const r=document.getElementById("left-menu"),n=document.getElementById("tdbmd-map");e?(null==r||r.removeAttribute("hide"),null==n||n.removeAttribute("fullscreen"),t(!1)):(null==r||r.setAttribute("hide",""),null==n||n.setAttribute("fullscreen",""),t(!0))}},e?a().createElement(s,null):a().createElement(o,null))}},"./src/IndicatorMap/buttons/ZoomButtons.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>s});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx");function s(){const{setters:e}=(0,o.useMapContext)(),t=t=>r=>{e.setViewState((e=>Object.assign(Object.assign({},e),{zoom:e.zoom+t}))),r.preventDefault(),r.stopPropagation()};return a().createElement(a().Fragment,null,a().createElement("button",{className:"map-button",onClick:t(1)},a().createElement("span",{className:"fr-icon-add-line"})),a().createElement("button",{className:"map-button",onClick:t(-1)},a().createElement("span",{className:"fr-icon-subtract-line"})))}},"./src/IndicatorMap/context.tsx":(e,t,r)=>{r.r(t),r.d(t,{MapContextProvider:()=>i,useMapContext:()=>l});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/enums.ts");const s=(0,n.createContext)(void 0);function i({indicator:e,mesh:t,geoLevel:r,geoCode:i,filters:l,children:c}){const u=(0,n.useMemo)((()=>JSON.stringify(e)),[e]),d=(0,n.useMemo)((()=>({indicator:e,mesh:t,geoLevel:r,geoCode:i})),[u,t,r,i]),[m,p]=(0,n.useState)(o.DEFAULT_VIEW_STATE),f=(0,n.useRef)(null),v=(0,n.useRef)(null),[g,h]=(0,n.useState)({}),[b,x]=(0,n.useState)({}),[y,M]=(0,n.useState)([]),[E,w]=(0,n.useState)([]),[F,C]=(0,n.useState)(null),[I,S]=(0,n.useState)(null),[_,T]=(0,n.useState)(null),[O,L]=(0,n.useState)(null),[j,k]=(0,n.useState)([]),[A,N]=(0,n.useState)({}),[D,V]=(0,n.useState)([]),[G,R]=(0,n.useState)("common"),[H,z]=(0,n.useState)({}),[B,$]=(0,n.useState)({}),[P,W]=(0,n.useState)({}),[q,U]=(0,n.useState)({}),[Y,J]=(0,n.useState)([]),[Z,X]=(0,n.useState)({}),[K,Q]=(0,n.useState)({}),[ee,te]=(0,n.useState)({}),[re,ne]=(0,n.useState)([]),[ae,oe]=(0,n.useState)([]),[se,ie]=(0,n.useState)([]),[le,ce]=(0,n.useState)([]),ue=(0,n.useMemo)((()=>o.PRECISION_LEVEL_BY_MESH[t]<=m.zoom),[t,m]);return a().createElement(s.Provider,{value:{currentFlowDimensions:se,deckRef:v,excelFile:le,featuresForDownload:ee,filters:l,flowDimensions:ae,flowHover:O,flows:re,geoFeatureHover:_,geoFeatures:P,geoFeaturesFiltered:q,geoFeaturesFilteredByColumn:Z,geoFeaturesFilters:Y,geoFeaturesForTerritories:H,geoFeaturesLoading:K,mainTerritories:j,mapRef:f,outsideTerritories:E,page:d,precision:B,precisionMode:ue,rankValues:b,secondaryValuesByName:A,secondaryValuesForMap:D,secondaryValuesScaleType:G,territories:y,territoryHover:F,territoryClick:I,values:g,viewState:m,setters:{setCurrentFlowDimensions:ie,setExcelFile:ce,setFeaturesForDownload:te,setFlowDimensions:oe,setFlowHover:L,setFlows:ne,setGeoFeatureHover:T,setGeoFeatures:W,setGeoFeaturesFiltered:U,setGeoFeaturesFilteredByColumn:X,setGeoFeaturesFilters:J,setGeoFeaturesForTerritories:z,setGeoFeaturesLoading:Q,setMainTerritories:k,setOutsideTerritories:w,setPrecision:$,setRankValues:x,setSecondaryValuesByName:N,setSecondaryValuesForMap:V,setSecondaryValuesScaleType:R,setTerritories:M,setTerritoryHover:C,setTerritoryClick:S,setValues:h,setViewState:p}}},c)}function l(){const e=(0,n.useContext)(s);if(!e)throw new Error("useMapContext must be used within a MapContextProvider");return e}},"./src/IndicatorMap/enums.ts":(e,t,r)=>{r.r(t),r.d(t,{COLORS:()=>o,DEFAULT_VIEW_STATE:()=>u,LIGHT_MAX:()=>c,MAIN_COLOR_HSL:()=>s,PRECISION_LEVEL_BY_MESH:()=>a,SATURATION:()=>l,SCALES_COMMONS_BY_MESH:()=>m,SCALES_PIXELS_BY_MESH:()=>p,SCALE_CHANGE:()=>d,SECOND_COLOR_RGB:()=>i});var n=r("./src/enums.tsx");const a={[n.MeshLevel.National]:6,[n.MeshLevel.Region]:7,[n.MeshLevel.Department]:8.5,[n.MeshLevel.Epci]:9.5,[n.MeshLevel.Town]:10.5},o=["#417DC4","#223d06","#fbe769","#CE70CC"],s=[213,53,51],i=[34,61,6],l=70,c=95,u={latitude:47,longitude:2,zoom:4.5,bearing:0,pitch:0},d={[n.GeoLevel.France]:5,[n.GeoLevel.Region]:7,[n.GeoLevel.Department]:8.5,[n.GeoLevel.Epci]:10,[n.GeoLevel.Town]:10},m={[n.MeshLevel.National]:.24,[n.MeshLevel.Region]:.24,[n.MeshLevel.Department]:.08,[n.MeshLevel.Epci]:.02,[n.MeshLevel.Town]:.005},p={[n.MeshLevel.National]:10,[n.MeshLevel.Region]:8,[n.MeshLevel.Department]:10,[n.MeshLevel.Epci]:5,[n.MeshLevel.Town]:3}},"./src/IndicatorMap/filters.ts":(e,t,r)=>{r.r(t),r.d(t,{useFilters:()=>a});var n=r("react");function a(){const e=Array.from(document.querySelectorAll(".filter-tag")).map((e=>{const t=e;return{dimension:t.dataset.dimension,db_name:t.innerText}})),t=Array.from(document.querySelectorAll(".filter-tag[aria-pressed=true]")).map((e=>{const t=e;return{dimension:t.dataset.dimension,db_name:t.innerText}}));(0,n.useEffect)((()=>{Array.from(document.querySelectorAll(".filter-tag")).forEach((e=>e.addEventListener("click",(()=>{const e=Array.from(document.querySelectorAll(".filter-tag[aria-pressed=true]")).map((e=>{const t=e;return{dimension:t.dataset.dimension,db_name:t.innerText}}));a((t=>{const r=structuredClone(t);return r.current=e,r}))}))))}),[]);const[r,a]=(0,n.useState)({possible:e,current:t});return r}},"./src/IndicatorMap/flows/FlowTooltip.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>s});var n=r("./src/IndicatorMap/context.tsx"),a=r("react"),o=r.n(a);const s=()=>{const{flowHover:e}=(0,n.useMapContext)();if(!(null==e?void 0:e.object))return o().createElement(o().Fragment,null);const t=e.object;return o().createElement("div",{style:{position:"absolute",zIndex:1,pointerEvents:"none",backgroundColor:"white",color:"black",left:e.x,top:e.y,padding:"8px 16px",borderRadius:"4px",opacity:"95%",maxWidth:"300px"}},o().createElement("div",{style:{marginBottom:"8px",fontSize:"14px"}},o().createElement("div",null,t.territory_1.name," ",o().createElement("span",{style:{fontSize:"14px"}},"⬌")," ",t.territory_2.name),o().createElement("div",null,o().createElement("b",null,t.value," actifs"))),o().createElement("div",{style:{fontSize:"11px"}},o().createElement("div",null,t.territory_1.name," ",o().createElement("span",{style:{fontSize:"11px"}},"➡")," ",t.territory_2.name),o().createElement("div",null,o().createElement("b",null,t.oneToTwo," actifs")),o().createElement("div",null,t.territory_2.name," ",o().createElement("span",{style:{fontSize:"11px"}},"➡")," ",t.territory_1.name),o().createElement("div",null,o().createElement("b",null,t.twoToOne," actifs"))))}},"./src/IndicatorMap/flows/useFetchFlows.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>l});var n=r("react"),a=r("./src/IndicatorMap/context.tsx"),o=r("./src/enums.tsx"),s=r("./src/IndicatorMap/flows/useFetchOutsideTerritories.ts"),i=function(e,t,r,n){return new(r||(r=Promise))((function(a,o){function s(e){try{l(n.next(e))}catch(e){o(e)}}function i(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,i)}l((n=n.apply(e,t||[])).next())}))};function l(){const{page:e,setters:t,flowDimensions:r,currentFlowDimensions:l}=(0,a.useMapContext)(),[c,u]=(0,n.useState)(null);(0,n.useEffect)((()=>{e.indicator.flows_db_table_prefix&&(()=>{i(this,void 0,void 0,(function*(){const t=yield fetch(`/api/indicators/flows/?prefix=${e.indicator.flows_db_table_prefix}&submesh=${e.mesh}&territory=${e.geoCode}-${e.geoLevel}${e.indicator.flows_dimension?"&dimension="+e.indicator.flows_dimension:""}`);if(t.ok){const e=yield t.json();u(e)}}))})()}),[e]),(0,n.useEffect)((()=>{if(c){const e=c.flows,r=Array.from(new Set(e.map((e=>e.dimension))));r.sort(((e,t)=>e.localeCompare(t))),t.setFlowDimensions(r),t.setCurrentFlowDimensions([...r])}}),[c]),(0,n.useEffect)((()=>{if(c&&r.length>0){const r=c.flows.filter((e=>e.territory_1_id!=e.territory_2_id&&l.includes(e.dimension))),n=c.territories,a=Object.values(r.reduce(((e,t)=>{const r=[t.territory_1_id,t.territory_2_id].sort(((e,t)=>e.localeCompare(t))),n=`${r[0]}-${r[1]}`;return e[n]||(e[n]={territory_1_id:r[0],territory_2_id:r[1],value:0,dimension:"aggregated",oneToTwo:0,twoToOne:0}),e[n].value+=t.value,t.territory_1_id===r[0]?e[n].oneToTwo+=t.value:e[n].twoToOne+=t.value,e}),{})).filter((t=>e.mesh===o.MeshLevel.Town?t.value>=100:t.value>=200)),s=a.map((e=>({territory_1:n[e.territory_1_id],territory_2:n[e.territory_2_id],value:e.value,oneToTwo:e.oneToTwo,twoToOne:e.twoToOne})));t.setFlows(s);const i=a.map((e=>({type:"Feature",geometry:{type:"LineString",coordinates:[n[e.territory_1_id].center.coordinates,n[e.territory_2_id].center.coordinates]},properties:{value:e.value,oneToTwo:e.oneToTwo,twoToOne:e.twoToOne}})));t.setFeaturesForDownload((e=>{const t=structuredClone(e);return t.flows=i,t}))}}),[c,e,r,l]),(0,s.default)()}},"./src/IndicatorMap/flows/useFetchOutsideTerritories.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>i});var n=r("react"),a=r("./src/IndicatorMap/context.tsx"),o=r("./src/IndicatorMap/utils.ts"),s=function(e,t,r,n){return new(r||(r=Promise))((function(a,o){function s(e){try{l(n.next(e))}catch(e){o(e)}}function i(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,i)}l((n=n.apply(e,t||[])).next())}))};function i(){const{flows:e,page:t,territories:r,setters:i}=(0,a.useMapContext)();(0,n.useEffect)((()=>{const n=e.map((e=>[e.territory_1,e.territory_2])).flat(),a=Object.fromEntries(n.map((e=>[e.code,e]))),l=r.map((e=>e.id)),c=Object.keys(a).filter((e=>!l.includes(e)));c.length>0&&(()=>{s(this,void 0,void 0,(function*(){const e=new URLSearchParams(`mesh=${t.mesh}&codes=${c.join(",")}`).toString(),r=yield(0,o.fetchMapApi)("territories",e);r.forEach((e=>e.properties={name:a[e.id].name})),i.setOutsideTerritories(r)}))})()}),[e,r])}},"./src/IndicatorMap/flows/useFlowsLayer.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>c});var n=r("react"),a=r("./src/IndicatorMap/context.tsx"),o=r("deck.gl"),s=r("./src/IndicatorMap/utils.ts"),i=r("./src/enums.tsx");const l={[i.MeshLevel.Town]:1,[i.MeshLevel.Epci]:10,[i.MeshLevel.Department]:20,[i.MeshLevel.Region]:50,[i.MeshLevel.National]:5};function c(){var e,t,r,i;const{flows:c,page:u,territoryHover:d,territoryClick:m,flowHover:p,setters:f}=(0,a.useMapContext)(),v=null!==(t=null===(e=null==d?void 0:d.object)||void 0===e?void 0:e.id)&&void 0!==t?t:null,g=null!==(i=null===(r=null==m?void 0:m.object)||void 0===r?void 0:r.id)&&void 0!==i?i:null,h=(null==p?void 0:p.object)?`${p.object.territory_1.code}-${p.object.territory_2.code}`:"";return(0,n.useMemo)((()=>{const e=g?c.filter((e=>e.territory_1.code===g||e.territory_2.code===g)):c;if(0===e.length)return null;const t=Math.min(...e.map((e=>e.value))),r=Math.max(...e.map((e=>e.value))),n=e=>{let t=[63,58,32,200];return(null==p?void 0:p.object)&&[e.territory_1.code,e.territory_2.code].includes(p.object.territory_1.code)&&[e.territory_1.code,e.territory_2.code].includes(p.object.territory_2.code)?t=[216,198,52,255]:v&&!g&&(t=[e.territory_1.code,e.territory_2.code].includes(v)?[216,198,52,255]:[63,58,32,100]),t};return new o.ArcLayer({id:`flows-${v}-${h}`,data:e,getSourcePosition:e=>e.territory_1.center.coordinates,getTargetPosition:e=>e.territory_2.center.coordinates,getWidth:e=>(0,s.scaleValue)({value:e.value,target:[4e-4*l[u.mesh],.004*l[u.mesh]],minmax:[t,r]}),getSourceColor:n,getTargetColor:n,getHeight:.3,widthUnits:"common",pickable:!0,onHover:e=>{f.setTerritoryHover(null),f.setFlowHover(e)}})}),[c,u,v,g,h])}},"./src/IndicatorMap/geo-features/GeoFeatureTooltip.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>s});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx");const s=()=>{var e;const{geoFeatureHover:t,precisionMode:r}=(0,o.useMapContext)();return t&&!1!==r&&void 0!==t.object&&0!==Object.keys(null!==(e=t.object.properties)&&void 0!==e?e:{}).length?a().createElement("div",{style:{position:"absolute",zIndex:1,pointerEvents:"none",backgroundColor:"white",color:"black",left:t.x,top:t.y,padding:"4px 8px",borderRadius:"4px",opacity:"95%",maxWidth:"300px",fontSize:"13px"}},a().createElement("ul",null,Object.entries(t.object.properties).map((([e,t])=>{return a().createElement("li",{key:e},a().createElement("b",null,e),":"," ","string"==typeof(r=t)?r:"number"==typeof r?r.toFixed(Number.isInteger(r)?0:2):"boolean"==typeof r?r?"oui":"non":void 0);var r})))):a().createElement(a().Fragment,null)}},"./src/IndicatorMap/geo-features/useFetchGeoFeatures.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>u});var n=r("react"),a=r("./src/IndicatorMap/utils.ts"),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/enums.tsx"),i=r("./node_modules/pako/dist/pako.esm.mjs"),l=function(e,t,r,n){return new(r||(r=Promise))((function(a,o){function s(e){try{l(n.next(e))}catch(e){o(e)}}function i(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,i)}l((n=n.apply(e,t||[])).next())}))};function c(e,t,r){e.setGeoFeaturesLoading((e=>{const n=structuredClone(e);return n[t.name]=r,n}))}function u(){const{page:e,mainTerritories:t,setters:r}=(0,o.useMapContext)();(0,n.useEffect)((()=>{t.length>0&&(()=>{l(this,void 0,void 0,(function*(){e.indicator.geo_features.forEach((n=>l(this,void 0,void 0,(function*(){if(n.show_on_fr_level||e.geoLevel!=s.GeoLevel.France){c(r,n,0);let o=!0,l=0,u=[];for(;o;){const d=n.geo_type===s.GeoType.point?5e4:1e4,m=new URLSearchParams(`mesh=${e.mesh}&geo_level=${e.geoLevel}&main_territories=${t.map((e=>e.id)).join(",")}&last=${l}&limit=${d}&feature=${n.id}`).toString(),p=yield(0,a.fetchMapApi)("geo-features",m),f=Uint8Array.from(atob(p.data),(e=>e.charCodeAt(0))),v=i.default.ungzip(f,{to:"string"}),g=JSON.parse(v);g.length>0?(l=p.last,u=[...u,...g],c(r,n,u.length)):(o=!1,c(r,n,!1))}r.setGeoFeatures((e=>{const t=structuredClone(e);return t[n.name]=u,t})),r.setFeaturesForDownload((e=>{const t=structuredClone(e);return t[n.name]=u,t}))}}))))}))})()}),[e,t])}},"./src/IndicatorMap/geo-features/useFilterGeoFeature.tsx":(e,t,r)=>{r.r(t),r.d(t,{useFilterGeoFeature:()=>i,useGeoFeaturesFilteredByColumn:()=>l});var n=r("react"),a=r("./src/IndicatorMap/context.tsx"),o=r("./src/IndicatorMap/utils.ts");function s(e,t){var r;const n=null!==(r=e.properties[t.column.label])&&void 0!==r?r:null;if("select"===t.filterType)return t.value.some((e=>""===e?""===n:"string"==typeof e?function(e,t){const r=(0,o.normalizeString)(e),n=(0,o.normalizeString)(t.trim());return r.includes(n)}(n,e):n===e));if("date"===t.filterType){if(null===n)return!1;const e=new Date(n);if(!(e instanceof Date))return!1;const r=t.value,a=r[0],o=r[1];return a&&o?e>=a&&e<=o:a?e>=a:!o||e<=o}if("number"===t.filterType){if(null===n)return!1;const e=t.value,r=e[0],a=e[1],o=e[2];return""!==r?n===r:""!==a&&""!==o?n>=a&&n<=o:""!==a?n>=a:""===o||n<=o}return!0}function i(){const{geoFeatures:e,geoFeaturesFilters:t,setters:r}=(0,a.useMapContext)();(0,n.useEffect)((()=>{const n=Object.fromEntries(Object.entries(e).map((([e,r])=>{let n=r;return t.forEach((t=>{t.table.name===e&&(n=n.filter((e=>s(e,t))))})),[e,n]})));r.setGeoFeaturesFiltered(n)}),[e,t])}function l(){const{geoFeatures:e,geoFeaturesFilters:t,setters:r,page:o}=(0,a.useMapContext)();(0,n.useEffect)((()=>{const n=Object.fromEntries(Object.entries(e).map((([e,r])=>{const n=o.indicator.geo_features.find((t=>t.name===e)).items.map((e=>e.name)),a=Object.fromEntries(n.map((n=>{const a=t.filter((t=>!(t.column.name===n&&t.table.name===e)));let o=[...r];return a.forEach((t=>{t.table.name===e&&(o=o.filter((e=>s(e,t))))})),[n,o]})));return[e,a]})));r.setGeoFeaturesFilteredByColumn(n)}),[e,t,o])}},"./src/IndicatorMap/geo-features/useGeoFeaturesForTerritories.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>s});var n=r("react"),a=r("./src/IndicatorMap/context.tsx"),o=r("./src/enums.tsx");function s(){const{page:e,geoFeaturesFiltered:t,setters:r}=(0,a.useMapContext)();(0,n.useEffect)((()=>{const n=e.indicator.geo_features.filter((e=>e.geo_type==o.GeoType.point)).map((e=>e.name)),a=Object.fromEntries(e.indicator.geo_features.map((e=>[e.name,e.title])));n.forEach((e=>{var n;const o=null!==(n=t[e])&&void 0!==n?n:[],s={};o.map((e=>{const t=e.id;void 0!==t&&(Object.keys(s).includes(t)?s[t]=s[t]+1:s[t]=1)})),r.setGeoFeaturesForTerritories((t=>{const r=structuredClone(t);return r[e]={values:s,name:e,title:a[e]},r}))}))}),[e,t])}},"./src/IndicatorMap/geo-features/useGeoFeaturesLayers.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>c});var n=r("react"),a=r("deck.gl"),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/IndicatorMap/utils.ts"),i=r("./src/enums.tsx");function l(e){e=e.replace(/^#/,"");const t=parseInt(e,16);return[t>>16&255,t>>8&255,255&t]}function c(){const{page:e,precisionMode:t,geoFeaturesFiltered:r,setters:c}=(0,o.useMapContext)();return(0,n.useMemo)((()=>{if(!1===t)return[];const n=Object.fromEntries(e.indicator.geo_features.map((e=>[e.name,e]))),o=Object.entries(r).map((([e,t])=>{const r=n[e].geo_type;if(r!=i.GeoType.point)return new a.GeoJsonLayer({id:e,data:t,getPointRadius:10,getFillColor:[...l(n[e].color),r===i.GeoType.polygon?100:255],getLineWidth:8,lineWidthMinPixels:4,getLineColor:l(n[e].color),pickable:!0,onHover:e=>c.setGeoFeatureHover(e),lineCapRounded:!0,lineJointRounded:!0,pointType:"point",sizeScale:40});{const r=n[e].color,o=(0,s.modifySvgAttributes)(n[e].point_icon_svg,{x:"16",y:"-5",height:"",width:"50",fill:"black"}),i=`data:image/svg+xml;charset=utf-8,${encodeURIComponent(`<svg width="82" height="102" viewBox="0 0 82 102" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M1 41C0.999992 61 41 101 41 101C41 101 81 61 81 41C81 21 61 1 41 1C21 1 0.999992 21 1 41Z" fill="${r}"/>\n ${o}\n </svg>`)}`;return new a.IconLayer({id:e,data:t,pickable:!0,onHover:e=>c.setGeoFeatureHover(e),getIcon:()=>({url:i,height:102,width:82}),getSize:32,getPosition:e=>e.geometry.coordinates})}})),u=e=>n[e.id].geo_type===i.GeoType.line?10:100;return o.sort(((e,t)=>u(e)-u(t)))}),[r,e,t])}},"./src/IndicatorMap/index.tsx":(e,t,r)=>{r.r(t);var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/IndicatorMap/MapWithinContext.tsx"),i=r("./src/IndicatorMap/filters.ts");window.IndicatorMap=({indicator:e,mesh:t,territory:r})=>{const{geoLevel:n,geoId:l}=r,c=(0,i.useFilters)();return a().createElement(o.MapContextProvider,{key:`map${t}${l}`,indicator:e,mesh:t,geoCode:l,geoLevel:n,filters:c},a().createElement(s.default,null))}},"./src/IndicatorMap/legend/Download.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>v});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx"),s=r("./node_modules/jszip/dist/jszip.min.js"),i=r.n(s),l=r("./node_modules/file-saver/dist/FileSaver.min.js"),c=r.n(l),u=r("html2canvas"),d=r.n(u),m=r("xlsx"),p=function(e,t,r,n){return new(r||(r=Promise))((function(a,o){function s(e){try{l(n.next(e))}catch(e){o(e)}}function i(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,i)}l((n=n.apply(e,t||[])).next())}))};function f(e,t){fetch("/api/tracking/event/",{method:"POST",body:JSON.stringify({indicator:e.name,event:"download",objet:"map",type:t})})}function v(){const{featuresForDownload:e,deckRef:t,mapRef:r,page:s,excelFile:u}=(0,o.useMapContext)(),v=(0,n.useCallback)((()=>p(this,void 0,void 0,(function*(){const t=new(i());for(const[r,n]of Object.entries(e)){const e={type:"FeatureCollection",features:n},a=`${r}.geojson`,o=JSON.stringify(e,null,2);t.file(a,o)}const r=yield t.generateAsync({type:"blob"});(0,l.saveAs)(r,"carte.zip"),f(s.indicator,"geojson")}))),[e]),g=(0,n.useCallback)((()=>p(this,void 0,void 0,(function*(){const e=m.utils.book_new();u.forEach((t=>{const r=[[t.title],t.headers,...t.data],n=m.utils.aoa_to_sheet(r);m.utils.book_append_sheet(e,n,t.title.length>30?t.title.substring(0,30)+"…":t.title)}));const t=m.write(e,{bookType:"ods",type:"array"}),r=new Blob([t],{type:"application/octet-stream"});(0,l.saveAs)(r,`carte - ${s.indicator.title}.ods`),f(s.indicator,"spreadsheet")}))),[u]),h=(0,n.useCallback)((()=>p(this,void 0,void 0,(function*(){const e=`carte - ${s.indicator.title}.png`;if(!r.current||!t.current)return;const n=r.current.getMap(),a=t.current.deck,o=n.getCanvas();a.redraw(!0);const i=a.canvas;document.querySelectorAll(".hideForDownload").forEach((e=>{e.style.visibility="hidden"}));const l=yield d()(document.getElementById("tdbmd-map"));document.querySelectorAll(".hideForDownload").forEach((e=>{e.style.visibility="visible"}));let u=document.createElement("canvas");u.width=o.width,u.height=o.height;var m=u.getContext("2d");m.globalAlpha=1,m.drawImage(o,0,0),m.globalAlpha=1,m.drawImage(i,0,0),m.globalAlpha=1,m.drawImage(l,0,0),u.toBlob((t=>{c().saveAs(t,e)})),f(s.indicator,"image")}))),[t,r,s]);return a().createElement("div",{id:"map-download-buttons"},a().createElement("button",{onClick:()=>v(),className:"fr-btn fr-btn--secondary fr-btn--sm fr-icon-road-map-line fr-btn--icon-right"},"Exporter la carte en GeoJSON"),a().createElement("button",{onClick:()=>h(),className:"fr-btn fr-btn--secondary fr-btn--sm fr-icon-image-line fr-btn--icon-right"},"Exporter la carte en png"),a().createElement("button",{id:"download-map-spreadsheet",onClick:()=>g(),className:"fr-btn fr-btn--secondary fr-btn--sm fr-icon-line-chart-line fr-btn--icon-right"},"Exporter la carte en feuille de calcul"))}},"./src/IndicatorMap/legend/Legend.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>l});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/IndicatorMap/enums.ts"),i=r("./src/IndicatorMap/utils.ts");function l(){const{page:e,values:t}=(0,o.useMapContext)(),r=(0,n.useMemo)((()=>{const e=[s.MAIN_COLOR_HSL[0],s.SATURATION,s.LIGHT_MAX],t=[s.MAIN_COLOR_HSL[0],s.SATURATION,s.MAIN_COLOR_HSL[2]],r=(0,i.hsl2rgb)(e[0],e[1],e[2]),n=(0,i.hsl2rgb)(t[0],t[1],t[2]);return`linear-gradient(90deg, rgba(${r.join(",")}) 0%, rgba(${n.join(",")}) 100%)`}),[]),[l,c]=(0,n.useMemo)((()=>{const e=Object.values(t).filter((e=>null!==e.value));if(0===e.length)return["…","…"];const r=e.reduce(((e,t)=>t.value>e.value?t:e),e[0]);return[e.reduce(((e,t)=>t.value<e.value?t:e),e[0]).valueLabel,r.valueLabel].map((e=>e.length>15?e.split(" ")[0]:e))}),[t]);return a().createElement("div",{id:"tdbmd-map-legend"},a().createElement("div",{className:"title"},e.indicator.title),a().createElement("div",{className:"indicator-scale",style:{background:r}}),a().createElement("div",{className:"indicator-scale-values"},a().createElement("div",{className:"scale-minmax"},l),a().createElement("div",{className:"scale-minmax"},c)))}},"./src/IndicatorMap/overview/OverviewTooltip.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>i});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/IndicatorMap/enums.ts");const i=()=>{const{page:e,territoryHover:t,precisionMode:r,geoFeaturesForTerritories:i,secondaryValuesByName:l,values:c}=(0,o.useMapContext)(),u=(0,n.useMemo)((()=>{var n,a,o,s,u;if(null===t||void 0===t.object||!0===r)return null;const d=t.object.id;let m=[{name:null!==(n=e.indicator.short_title)&&void 0!==n?n:e.indicator.title,value:null===(a=c[d])||void 0===a?void 0:a.valueLabel}];return Object.values(l).forEach((e=>{var t;m=[...m,{name:null!==(t=e.short_title)&&void 0!==t?t:e.title,value:e.values[d].valueLabel}]})),Object.values(i).forEach((e=>{m=[...m,{name:e.title,value:e.values[d]}]})),{name:null!==(s=null===(o=c[d])||void 0===o?void 0:o.territoryName)&&void 0!==s?s:null===(u=t.object.properties)||void 0===u?void 0:u.name,position:[t.x,t.y],values:m,withGeoFeatures:e.indicator.geo_features.length>0}}),[e,t,r,i,l,c]);return u&&a().createElement("div",{style:{position:"absolute",zIndex:1,pointerEvents:"none",backgroundColor:"white",color:"black",left:u.position[0],top:u.position[1],padding:"4px 8px",display:"flex",flexDirection:"column",alignItems:"center",borderRadius:"4px",opacity:"95%",maxWidth:"300px"}},a().createElement("div",{style:{fontSize:"14px",fontWeight:"600",marginBottom:"4px"}},u.name),a().createElement("div",{style:{display:"flex",flexDirection:"column",gap:"4px"}},u.values.map(((e,t)=>void 0!==e.value&&a().createElement("div",{key:e.name,style:{display:"flex",flexDirection:"row",alignItems:"center",gap:"8px"}},u.values.length>1&&a().createElement("div",{style:{width:"14px",height:"14px",backgroundColor:s.COLORS[t],borderRadius:"1000px",flexShrink:0}}),a().createElement("div",{style:{display:"flex",flexDirection:"column",alignItems:"start"}},a().createElement("div",{style:{fontWeight:"500",fontSize:"13px",lineHeight:"13px"}},e.name),a().createElement("div",{style:{fontSize:"13px"}},e.value)))))),u.withGeoFeatures&&a().createElement("div",{style:{fontSize:"11px",fontStyle:"italic",textAlign:"end",width:"100%"}},"Zoomez pour voir les emplacements"))}},"./src/IndicatorMap/overview/useGeoFeaturesOverview.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>i});var n=r("react"),a=r("./src/IndicatorMap/context.tsx"),o=r("./node_modules/@turf/center-of-mass/dist/esm/index.js"),s=r("./src/IndicatorMap/utils.ts");function i(){const{page:e,geoFeaturesForTerritories:t,territories:r}=(0,a.useMapContext)();return(0,n.useMemo)((()=>{const n=Object.values(t);if(1!==n.length)return null;const a=n[0],i=Object.values(a.values),l=Math.max(...i),c=Math.min(...i),u=Object.fromEntries(Object.entries(a.values).map((([e,t])=>[e,(0,s.scaleValue)({value:t,target:[100,200],minmax:[c,l]})/100]))),d=r.filter((e=>a.values[e.id])).map((e=>{var t;return{position:(0,o.centerOfMass)(e.geometry).geometry.coordinates,sizeMultiplicator:null!==(t=u[e.id])&&void 0!==t?t:1}})),m=Object.fromEntries(e.indicator.geo_features.map((e=>[e.name,e])))[a.name],p=(0,s.modifySvgAttributes)(m.point_icon_svg,{x:"-25",y:"-25",height:"50",width:"50",fill:"black"});let f='<svg width="100" height="100" viewBox="-50 -50 100 100" fill="none" xmlns="http://www.w3.org/2000/svg">';return f+=`<circle r="45" fill="${m.color}" stroke="black" stroke-width="1"/>`,f+=p,f+="</svg>",f=`data:image/svg+xml;charset=utf-8,${encodeURIComponent(f)}`,{svg:f,clusters:d}}),[t,r,e])}},"./src/IndicatorMap/overview/useOverviewLayer.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>c});var n=r("react"),a=r("deck.gl"),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/IndicatorMap/overview/useGeoFeaturesOverview.tsx"),i=r("./src/IndicatorMap/enums.ts"),l=r("./src/IndicatorMap/overview/useSecondIndicatorOverview.ts");function c(){const{precisionMode:e,page:t,setters:r,secondaryValuesForMap:c,secondaryValuesScaleType:u}=(0,o.useMapContext)(),d=(0,s.default)();return(0,l.default)(),(0,n.useMemo)((()=>{const t=!e&&d?d.clusters:[];return[new a.IconLayer({id:"geofeature-overview",data:t,getIcon:()=>{var e;return{url:null!==(e=null==d?void 0:d.svg)&&void 0!==e?e:"",height:100,width:100}},getSize:e=>32*e.sizeMultiplicator,sizeUnits:"pixels",getPosition:e=>e.position,pickable:!0,onClick:e=>{e.object&&r.setViewState((t=>Object.assign(Object.assign({},t),{latitude:e.coordinate[1],longitude:e.coordinate[0],zoom:t.zoom+1.5,transitionInterpolator:new a.FlyToInterpolator({speed:2}),transitionDuration:"auto"})))}}),new a.ScatterplotLayer({id:"second-indicator-overview",data:c,radiusUnits:u,lineWidthUnits:"pixels",stroked:!0,getRadius:e=>e.value,getFillColor:[...i.SECOND_COLOR_RGB,180],getLineColor:[255,255,255,180],getLineWidth:1})]}),[e,d,t,c,u])}},"./src/IndicatorMap/overview/useSecondIndicatorOverview.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>l});var n=r("react"),a=r("./src/IndicatorMap/context.tsx"),o=r("./node_modules/@turf/center-of-mass/dist/esm/index.js"),s=r("./src/IndicatorMap/utils.ts"),i=r("./src/IndicatorMap/enums.ts");function l(){const{secondaryValuesByName:e,page:t,setters:r,territories:l,viewState:c,secondaryValuesScaleType:u}=(0,a.useMapContext)(),d=(0,n.useMemo)((()=>Object.fromEntries(l.map((e=>[e.id,(0,o.centerOfMass)(e.geometry).geometry.coordinates])))),[l]);(0,n.useEffect)((()=>{r.setSecondaryValuesScaleType(c.zoom<i.SCALE_CHANGE[t.geoLevel]?"common":"pixels")}),[c.zoom,t.geoLevel]),(0,n.useEffect)((()=>{const n=Object.values(e),a=n.length>0?n[0].values:{},o="pixels"===u?i.SCALES_PIXELS_BY_MESH[t.mesh]:i.SCALES_COMMONS_BY_MESH[t.mesh],l=Object.values(a).map((e=>e.value)),c=Math.max(...l),m=Math.min(...l),p=Object.entries(a).map((([e,t])=>({position:d[e],value:(0,s.scaleValue)({value:t.value,target:[1,4],minmax:[m,c]})*o})));r.setSecondaryValuesForMap(p)}),[e,d,t,u])}},"./src/IndicatorMap/sidebar/Loader.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>o});var n=r("react"),a=r.n(n);function o(){return a().createElement("div",{className:"loader"},a().createElement("svg",{viewBox:"0 0 50 50",className:"spinner"},a().createElement("circle",{cx:"25",cy:"25",r:"20",fill:"none",stroke:"currentColor",strokeWidth:"10"})))}},"./src/IndicatorMap/sidebar/SecondaryValues.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>l});var n=r("./src/IndicatorMap/context.tsx"),a=r("react"),o=r.n(a),s=r("./src/IndicatorMap/enums.ts"),i=r("deck.gl");function l(){const{secondaryValuesByName:e,mapRef:t,viewState:r,page:l,secondaryValuesForMap:c,secondaryValuesScaleType:u}=(0,n.useMapContext)(),d=(0,a.useMemo)((()=>{if("pixels"===u)return 2;if(null===t.current)return 0;const e=new i.WebMercatorViewport({width:t.current.getContainer().clientWidth,height:t.current.getContainer().clientHeight,longitude:r.longitude,latitude:r.latitude,zoom:r.zoom}),n=e.project([48,2]),a=e.project([48,2.01]);return 140*(n[1]-a[1])}),[t.current,r,l,u]),[m,p]=(0,a.useMemo)((()=>{let e=c.map((e=>e.value));return 0==e.length&&(e=[0]),[Math.min(...e),Math.max(...e)]}),[c]);return o().createElement(o().Fragment,null,Object.values(e).map((e=>o().createElement("section",{key:e.name},o().createElement("div",{className:"title"},e.title),o().createElement("div",{style:{display:"flex",flexDirection:"row",gap:"16px"}},o().createElement("div",{style:{padding:"8px 0px 4px 0px",minWidth:"75px",display:"flex",justifyContent:"center",alignItems:"end"}},o().createElement("div",{style:{position:"relative"}},o().createElement("div",{style:{backgroundColor:s.COLORS[1],border:"1px solid gray",opacity:"60%",width:d*p+"px",height:d*p+"px",minWidth:"16px",minHeight:"16px",maxWidth:"100px",maxHeight:"100px",borderRadius:"9999px"}}),o().createElement("div",{style:{backgroundColor:s.COLORS[1],border:"1px solid gray",width:d*m+"px",height:d*m+"px",borderRadius:"9999px",position:"absolute",bottom:"0",left:"50%",transform:"translateX(-50%)"}}))),o().createElement("div",{style:{display:"flex",flexDirection:"column",justifyContent:"space-between",gap:"4px"}},o().createElement("div",null,"Max : ",e.details[2].valueLabel),o().createElement("div",null,"Min : ",e.details[0].valueLabel)))))))}},"./src/IndicatorMap/sidebar/Sidebar.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>m});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/IndicatorMap/utils.ts"),i=r("./src/IndicatorMap/sidebar/Loader.tsx"),l=r("./src/enums.tsx"),c=r("./src/IndicatorCardFilters.tsx"),u=r("./src/IndicatorMap/sidebar/SecondaryValues.tsx"),d=r("./src/IndicatorMap/sidebar/filters/GeoFeaturesFilters.tsx");function m(){const{page:e,secondaryValuesByName:t,geoFeaturesLoading:r,geoFeaturesFiltered:m,flowDimensions:p,currentFlowDimensions:f,setters:v}=(0,o.useMapContext)(),[g,h]=(0,n.useState)(!1);return 0==Object.keys(t).length&&0==e.indicator.geo_features.length&&0==p.length?a().createElement(a().Fragment,null):a().createElement("div",{className:"hideForDownload",id:"map-sidebar","data-open":g},a().createElement("button",{id:"collapse",onClick:()=>h(!g)},a().createElement("span",{className:"fr-icon-arrow-left-s-line-double"})),a().createElement("div",{className:"ms-container"},a().createElement("div",{className:"ms-body"},a().createElement("div",{className:"sidebar-title"},"Couches de données"),e.indicator.geo_features.filter((t=>t.show_on_fr_level||e.geoLevel!==l.GeoLevel.France)).map((e=>{var t,n,o;const l=null!==(o=null!==(n=null===(t=m[e.name])||void 0===t?void 0:t.length)&&void 0!==n?n:r[e.name])&&void 0!==o?o:0,c=l?(0,s.addSpacesToDigit)(l):"0",u=!1!==r[e.name]&&void 0!==r[e.name];return a().createElement("section",{key:e.name},a().createElement("div",{className:"title"},e.title),a().createElement("div",{className:"geo-feature-count"},u&&a().createElement(i.default,null),c&&a().createElement("div",null,c," ",e.unite)),a().createElement(d.default,{featureTable:e}))})),a().createElement(u.default,null),p.length>0&&a().createElement("details",null,a().createElement("summary",null,a().createElement("b",null,"Flux des actifs"),a().createElement("div",{className:"filterTitle"},"Filtrer sur le type de flux")),a().createElement(c.default,{filters:p,currentFilters:f,onClick:e=>{v.setCurrentFlowDimensions((t=>t.includes(e)?t.filter((t=>t!==e)):[...t,e].sort(((e,t)=>e.localeCompare(t)))))}})))))}},"./src/IndicatorMap/sidebar/filters/BoolFilter.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>i});var n=r("react"),a=r.n(n),o=r("./node_modules/react-select/dist/react-select.esm.js"),s=r("./src/IndicatorMap/context.tsx");function i({table:e,column:t,reset:r}){const{setters:i,geoFeaturesFiltered:l,geoFeatures:c}=(0,s.useMapContext)(),u=(0,n.useMemo)((()=>{var r,n;return(null!==(n=null!==(r=l[e.name])&&void 0!==r?r:c[e.name])&&void 0!==n?n:[]).map((e=>e.properties[t.label]))}),[l,c,e,t]),[d,m]=(0,n.useState)(null),p=(0,n.useRef)(null);(0,n.useEffect)((()=>{p.current.clearValue(),i.setGeoFeaturesFilters([])}),[r]),(0,n.useEffect)((()=>{i.setGeoFeaturesFilters((r=>{let n=r.filter((e=>e.column.name!=t.name));return d&&d.length>0&&(n=n.concat([{column:t,filterType:"select",value:d.map((e=>e.value)),table:e}])),n}))}),[d]);const f=[];return u.includes(!0)&&f.push({value:!0,label:"oui"}),u.includes(!1)&&f.push({value:!1,label:"non"}),u.includes(null)&&f.push({value:null,label:"sans valeur"}),a().createElement(o.default,{ref:p,options:f,onChange:m,placeholder:"Sélectionner",isMulti:!0,isClearable:!0})}},"./src/IndicatorMap/sidebar/filters/DateFilter.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>c});var n=r("react"),a=r.n(n),o=r("./node_modules/react-datepicker/dist/index.es.js"),s=r("./node_modules/date-fns/locale/fr.js"),i=r("./src/IndicatorMap/context.tsx");function l({date:e,setDate:t}){return a().createElement(o.default,{selected:e,onChange:e=>t(e),showMonthDropdown:!0,showYearDropdown:!0,locale:"fr",scrollableYearDropdown:!0,yearDropdownItemNumber:60,maxDate:new Date,onYearChange:e=>t(e),onMonthChange:e=>t(e),isClearable:!0})}function c({table:e,column:t,reset:r}){const{setters:o}=(0,i.useMapContext)(),[s,c]=(0,n.useState)(null),[u,d]=(0,n.useState)(null);return(0,n.useEffect)((()=>{d(null),c(null),o.setGeoFeaturesFilters([])}),[r]),(0,n.useEffect)((()=>{o.setGeoFeaturesFilters((r=>{let n=r.filter((e=>e.column.name!=t.name));return(s||u)&&(n=n.concat([{column:t,filterType:"date",value:[s,u],table:e}])),n}))}),[s,u]),a().createElement("div",{className:"date-pickers-range"},a().createElement("div",null,a().createElement("label",null,"Date minimum"),a().createElement("br",null),a().createElement(l,{date:s,setDate:c})),a().createElement("div",null,a().createElement("label",null,"Date maximum"),a().createElement("br",null),a().createElement(l,{date:u,setDate:d})))}r("./node_modules/react-datepicker/dist/react-datepicker.css"),(0,o.registerLocale)("fr",s.fr)},"./src/IndicatorMap/sidebar/filters/FilterType.ts":(e,t,r)=>{r.r(t),r.d(t,{guessFilterType:()=>a});var n=r("./src/IndicatorMap/sidebar/filters/enums.ts");function a(e){if(e.every((e=>null===e||""===e)))return n.FilterType.null;const t=e.filter((e=>null!==e)),r=t.every((e=>"string"==typeof e));return r&&t.filter((e=>""!==e)).every((e=>function(e){if(!/^\d{4}-\d{2}-\d{2}$/.test(e))return!1;const[t,r,n]=e.split("-").map(Number),a=new Date(e);return a instanceof Date&&a.getFullYear()===t&&a.getMonth()+1===r&&a.getDate()===n}(e)))?n.FilterType.date:r?n.FilterType.string:t.every((e=>"boolean"==typeof e))?n.FilterType.bool:t.every((e=>"number"==typeof e))?n.FilterType.number:null}},"./src/IndicatorMap/sidebar/filters/GeoFeaturesFilters.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>p});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/IndicatorMap/sidebar/filters/FilterType.ts"),i=r("./src/IndicatorMap/sidebar/filters/DateFilter.tsx"),l=r("./src/IndicatorMap/sidebar/filters/BoolFilter.tsx"),c=r("./src/IndicatorMap/sidebar/filters/enums.ts"),u=r("./src/IndicatorMap/sidebar/filters/NumberFilter.tsx"),d=r("./src/IndicatorMap/sidebar/filters/StringFilter.tsx");function m({table:e,column:t,reset:r}){const{geoFeatures:m}=(0,o.useMapContext)(),p=(0,n.useMemo)((()=>{var r;const n=(null!==(r=m[e.name])&&void 0!==r?r:[]).map((e=>e.properties[t.label]));return(0,s.guessFilterType)(n)}),[e,t,m]);return p===c.FilterType.date?a().createElement(i.default,{column:t,table:e,reset:r}):p===c.FilterType.number?a().createElement(u.default,{column:t,table:e,reset:r}):p===c.FilterType.bool?a().createElement(l.default,{column:t,table:e,reset:r}):p===c.FilterType.string?a().createElement(d.default,{column:t,table:e,reset:r}):p===c.FilterType.null?a().createElement("div",null,"Données manquantes."):a().createElement("p",null,"Pas de filtres disponibles.")}function p({featureTable:e}){const{geoFeaturesFilters:t}=(0,o.useMapContext)(),[r,s]=(0,n.useState)(0),i=(0,n.useMemo)((()=>t.filter((t=>t.table.id===e.id)).length>0),[t,e]);return a().createElement("div",{className:"table-geo-filters"},a().createElement("div",{className:"filters-title"},i?a().createElement("div",{className:"reset-filters",onClick:()=>s((e=>e+1))},"réinitialiser les filtres"):a().createElement("div",{className:"no-filters"},"0 filtres appliqués")),e.items.map((t=>t.filterable?a().createElement("details",null,a().createElement("summary",null,"Filtrer par ",t.label),a().createElement("div",{className:"table-geo-filters-details-body"},a().createElement(m,{table:e,column:t,reset:r}))):a().createElement(a().Fragment,null))))}},"./src/IndicatorMap/sidebar/filters/NumberFilter.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>s});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx");function s({table:e,column:t,reset:r}){const{setters:s}=(0,o.useMapContext)();(0,n.useEffect)((()=>{document.getElementById(l+"-exact").value="",document.getElementById(l+"-min").value="",document.getElementById(l+"-max").value="",s.setGeoFeaturesFilters([])}),[r]);const i=()=>{s.setGeoFeaturesFilters((r=>{let n=r.filter((e=>e.column.name!=t.name));const a=document.getElementById(l+"-exact").value,o=document.getElementById(l+"-min").value,s=document.getElementById(l+"-max").value;return""===a&&""===o&&""===s||(n=n.concat([{column:t,filterType:"number",value:[""===a?"":parseInt(a),""===o?"":parseInt(o),""===s?"":parseInt(s)],table:e}])),n}))},l=`search-${e.name}-${t.name}`;return a().createElement("div",{className:"geo-filters-numbers-col"},a().createElement("div",null,a().createElement("label",{className:"fr-label",htmlFor:l+"-exact"},"Valeur exacte"),a().createElement("input",{id:l+"-exact",type:"number",className:"fr-input fr-input--sm",onInput:i})),a().createElement("i",null,"ou intervallle de valeur"),a().createElement("div",{className:"geo-filters-numbers-row"},a().createElement("div",null,a().createElement("label",{className:"fr-label",htmlFor:l+"-min"},"Valeur minimum"),a().createElement("input",{id:l+"-min",type:"number",className:"fr-input fr-input--sm",onInput:i})),a().createElement("div",null,a().createElement("label",{className:"fr-label",htmlFor:l+"-max"},"Valeur maximum"),a().createElement("input",{id:l+"-max",type:"number",className:"fr-input fr-input--sm",onInput:i}))))}},"./src/IndicatorMap/sidebar/filters/StringFilter.tsx":(e,t,r)=>{r.r(t),r.d(t,{default:()=>u});var n=r("react"),a=r.n(n),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/IndicatorMap/utils.ts"),i=r("./node_modules/react-windowed-select/dist/main.js"),l=r.n(i);function c(e,t,r){const n=`#filtres > .filters-dimension[data-dimension="${r.name}"]`,a=document.querySelector(n);if(a&&r.linked_to_indicator){const r=Array.from(a.querySelectorAll("button")).map((e=>({value:e.innerText,pressed:"true"===e.getAttribute("aria-pressed")}))).filter((e=>e.pressed)).map((e=>e.value)),n=t.filter((e=>{var t;return r.includes(null!==(t=e.value)&&void 0!==t?t:"")}));e.current.clearValue(),e.current.setValue(n,"select-option")}}function u({table:e,column:t,reset:r}){const{setters:i,geoFeatures:u,geoFeaturesFilteredByColumn:d}=(0,o.useMapContext)(),[m,p]=(0,n.useState)(null),f=(0,n.useRef)(null);(0,n.useEffect)((()=>{f.current.clearValue(),i.setGeoFeaturesFilters([])}),[r]);const v=(0,n.useMemo)((()=>{var r,n;const a=(null!==(n=null!==(r=d[e.name]&&d[e.name][t.name])&&void 0!==r?r:u[e.name])&&void 0!==n?n:[]).map((e=>e.properties[t.label])),o=Array.from(new Set(a)).sort(((e,t)=>(0,s.normalizeString)((null!=e?e:"").trim()).localeCompare((0,s.normalizeString)((null!=t?t:"").trim())))).map((e=>{var t;let r=null!==(t=null==e?void 0:e.toString())&&void 0!==t?t:"";return""===e?r="vide":null===e&&(r="sans valeur"),{value:e,label:r}}));return o}),[d,u,e,t]);return(0,n.useEffect)((()=>{c(f,v,t),Array.from(document.querySelectorAll("#filtres button.filter-tag")).forEach((e=>e.addEventListener("click",(()=>c(f,v,t)))))}),[]),(0,n.useEffect)((()=>{i.setGeoFeaturesFilters((r=>{let n=r.filter((e=>e.column.name!=t.name));return m&&m.length>0&&(n=n.concat([{column:t,filterType:"select",value:m.map((e=>e.value)),table:e}])),n}))}),[m]),a().createElement(l(),{ref:f,options:v,onChange:p,placeholder:"Sélectionner",isMulti:!0,isClearable:!0,isSearchable:!0,className:"react-select-container",classNamePrefix:"react-select"})}},"./src/IndicatorMap/sidebar/filters/enums.ts":(e,t,r)=>{var n;r.r(t),r.d(t,{FilterType:()=>n}),function(e){e.date="date",e.string="string",e.bool="bool",e.number="number",e.null="null"}(n||(n={}))},"./src/IndicatorMap/territories/useFetchTerritories.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>i});var n=r("react"),a=r("./src/IndicatorMap/utils.ts"),o=r("./src/IndicatorMap/context.tsx"),s=function(e,t,r,n){return new(r||(r=Promise))((function(a,o){function s(e){try{l(n.next(e))}catch(e){o(e)}}function i(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,i)}l((n=n.apply(e,t||[])).next())}))};function i(){const{mainTerritories:e,page:t,setters:r}=(0,o.useMapContext)();(0,n.useEffect)((()=>{e.length>0&&(()=>{s(this,void 0,void 0,(function*(){const n=new URLSearchParams(`mesh=${t.mesh}&geo_level=${t.geoLevel}&main_territories=${e.map((e=>e.id)).join(",")}`).toString(),o=yield(0,a.fetchMapApi)("territories",n);r.setTerritories(o)}))})()}),[t,e])}},"./src/IndicatorMap/territories/useMainTerritories.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>i});var n=r("react"),a=r("./src/IndicatorMap/utils.ts"),o=r("./src/IndicatorMap/context.tsx"),s=function(e,t,r,n){return new(r||(r=Promise))((function(a,o){function s(e){try{l(n.next(e))}catch(e){o(e)}}function i(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,i)}l((n=n.apply(e,t||[])).next())}))};function i(){const{page:e,setters:t}=(0,o.useMapContext)();(0,n.useEffect)((()=>{(()=>{s(this,void 0,void 0,(function*(){const r=new URLSearchParams(`geo_level=${e.geoLevel}&geo_id=${e.geoCode}`).toString();t.setMainTerritories(yield(0,a.fetchMapApi)("main-territory",r))}))})()}),[e])}},"./src/IndicatorMap/territories/usePreciseTerritories.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>l});var n=r("./node_modules/@turf/bbox/dist/esm/index.js"),a=r("deck.gl"),o=r("react"),s=r("./src/IndicatorMap/context.tsx"),i=function(e,t,r,n){return new(r||(r=Promise))((function(a,o){function s(e){try{l(n.next(e))}catch(e){o(e)}}function i(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,i)}l((n=n.apply(e,t||[])).next())}))};function l(){const{territories:e,outsideTerritories:t,mapRef:r,viewState:l,precisionMode:c,page:u,precision:d,setters:m}=(0,s.useMapContext)(),[p,f]=(0,o.useState)([]);(0,o.useEffect)((()=>{const o=setTimeout((()=>{const o=Object.fromEntries(e.concat(t).map((e=>[e.id,e]))),s=Object.values(o);f(function(e,t,r,o,s){if(null===t)return[];if(!s)return[];const i=new a.WebMercatorViewport({width:t.getContainer().clientWidth,height:t.getContainer().clientHeight,longitude:r.longitude,latitude:r.latitude,zoom:r.zoom}).getBounds();return e.filter((e=>{const[t,r,a,o]=(0,n.bbox)(e);return t<i[2]&&a>i[0]&&r<i[3]&&o>i[1]})).map((e=>e.id)).filter((e=>!Object.keys(o).includes(e)))}(s,r.current,l,d,c))}),500);return()=>clearTimeout(o)}),[e,t,r.current,l,d,c]),(0,o.useEffect)((()=>{p.length>0&&(()=>{i(this,void 0,void 0,(function*(){const e=yield fetch(`/api/geo/precise/?territories=${p.join(",")}&mesh=${u.mesh}`);if(e.ok){const t=yield e.json();m.setPrecision((e=>Object.assign(Object.assign({},e),t)))}}))})()}),[u,p])}},"./src/IndicatorMap/territories/useTerritoriesLayer.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>l});var n=r("deck.gl"),a=r("react"),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/IndicatorMap/enums.ts"),i=r("./src/IndicatorMap/utils.ts");function l(){var e,t;const{territories:r,outsideTerritories:l,precision:c,setters:u,rankValues:d,territoryHover:m}=(0,o.useMapContext)(),p=(0,a.useMemo)((()=>{const e=Object.fromEntries(r.concat(l).map((e=>[e.id,e])));return Object.values(e).map((e=>{var t;return{id:e.id,geometry:null!==(t=c[e.id])&&void 0!==t?t:e.geometry,properties:e.properties}}))}),[r,l,c]),f=(0,a.useCallback)((e=>{var t;const r=null===(t=d[e.id])||void 0===t?void 0:t.light;return null==r?[200,200,200,150]:[...(0,i.hsl2rgb)(s.MAIN_COLOR_HSL[0],s.SATURATION,r),200]}),[d]);(0,a.useEffect)((()=>{u.setFeaturesForDownload((e=>{const t=structuredClone(e);return t.territories=p,t}))}),[p]);const v=null!==(t=null===(e=null==m?void 0:m.object)||void 0===e?void 0:e.id)&&void 0!==t?t:null,g=(0,a.useCallback)((e=>v&&e.id===v?2.5:1),[v]);return(0,a.useMemo)((()=>new n.GeoJsonLayer({id:"contours",data:[...p],getFillColor:f,getLineWidth:g,lineWidthUnits:"pixels",pickable:!0,onHover:e=>{u.setFlowHover(null),u.setTerritoryHover(e)},onClick:e=>{u.setTerritoryClick((t=>{var r,n,a,o;const s=null!==(n=null===(r=null==t?void 0:t.object)||void 0===r?void 0:r.id)&&void 0!==n?n:null,i=null!==(o=null===(a=null==e?void 0:e.object)||void 0===a?void 0:a.id)&&void 0!==o?o:null;return s&&s===i?null:e}))}})),[p,f,g])}},"./src/IndicatorMap/territories/useZoomOnTerritories.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>l});var n=r("./node_modules/@turf/bbox/dist/esm/index.js"),a=r("deck.gl"),o=r("react"),s=r("./src/IndicatorMap/context.tsx"),i=r("./src/IndicatorMap/enums.ts");function l(){const{mainTerritories:e,mapRef:t,viewState:r,setters:l,page:c}=(0,s.useMapContext)();(0,o.useEffect)((()=>{if(0==e.length||!t.current)return;const o={type:"FeatureCollection",features:e.map((e=>({type:"Feature",geometry:e.polygon,properties:{}})))},s=(0,n.bbox)(o),u=[[s[0],s[1]],[s[2],s[3]]],d=new a.WebMercatorViewport(r),{longitude:m,latitude:p,zoom:f}=d.fitBounds(u,{width:t.current.getContainer().clientWidth,height:t.current.getContainer().clientHeight,padding:64});l.setViewState({latitude:p,longitude:m,zoom:Math.min(f,i.PRECISION_LEVEL_BY_MESH[c.mesh]-.1),bearing:0,pitch:0,transitionInterpolator:new a.FlyToInterpolator({speed:2}),transitionDuration:"auto"})}),[e,t.current])}},"./src/IndicatorMap/useAddExcelSheet.ts":(e,t,r)=>{r.r(t),r.d(t,{usePrepareExcelExport:()=>i});var n=r("react"),a=r("./node_modules/wkt/index.js"),o=r("./src/IndicatorMap/context.tsx");function s(e){const{excelFile:t,setters:r}=(0,o.useMapContext)();(0,n.useEffect)((()=>{e.forEach((e=>{const n=t.filter((t=>t.title!==e.title));n.push(e),r.setExcelFile(n)}))}),[e])}function i(){const{values:e,secondaryValuesByName:t,page:r,flows:i,featuresForDownload:l}=(0,o.useMapContext)();var c;!function(e,t){s((0,n.useMemo)((()=>[{headers:["code géographique","nom du territoire","valeur"],data:Object.entries(t).map((([e,t])=>[e,t.territoryName,t.value])),title:e.title}]),[e,t]))}(r.indicator,e),c=t,s((0,n.useMemo)((()=>Object.entries(c).map((([e,t])=>{const r=Object.entries(t.values).map((([e,t])=>[e,t.territoryName,t.value]));return{title:t.title,headers:["code géographique","nom du territoire","valeur"],data:r}}))),[c])),function(e){s((0,n.useMemo)((()=>{const t=e.map((e=>[e.territory_1.code,e.territory_1.name,e.territory_2.code,e.territory_2.name,e.value,e.oneToTwo,e.twoToOne]));return e.length>0?[{headers:["Territoire 1 - code","Territoire 1 - nom","Territoire 2 - code","Territoire 2 - nom","Flux d'actifs (total)","Flux d'actifs (1 vers 2)","Flux d'actifs (2 vers 1)"],data:t,title:"Flux"}]:[]}),[e]))}(i),function(e,t){const r=Object.fromEntries(t.geo_features.map((e=>[e.name,e.title])));s((0,n.useMemo)((()=>Object.entries(e).filter((([e,t])=>"territories"!==e&&"flows"!==e)).map((([e,t])=>{const n=t.length>0&&t[0].properties?Object.keys(t[0].properties):[],o=t.map((e=>n.map((t=>{var r;return null===(r=e.properties)||void 0===r?void 0:r[t]})).concat([(0,a.stringify)(e)])));return{title:Object.keys(r).includes(e)?r[e]:e,headers:n.concat(["Emplacement (format WKT)"]),data:o}}))),[e,t]))}(l,r.indicator)}},"./src/IndicatorMap/useRemoveFocus.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>a});var n=r("react");function a(e){const t=null!==e.current;(0,n.useEffect)((()=>{if(t){const e=document.querySelector(".mapboxgl-canvas");e&&e.removeAttribute("tabindex")}}),[t])}},"./src/IndicatorMap/utils.ts":(e,t,r)=>{r.r(t),r.d(t,{addSpacesToDigit:()=>l,fetchMapApi:()=>o,hsl2rgb:()=>i,modifySvgAttributes:()=>s,normalizeString:()=>c,scaleValue:()=>a});var n=function(e,t,r,n){return new(r||(r=Promise))((function(a,o){function s(e){try{l(n.next(e))}catch(e){o(e)}}function i(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,i)}l((n=n.apply(e,t||[])).next())}))};function a({value:e,target:t,minmax:r}){const n=t[0],a=t[1],o=r[0],s=r[1];return void 0===e?n:function(e,t,r=2){const n=Math.pow(10,r);return Math.round(e*n)===Math.round(t*n)}(o,s)?a:(e-o)/(s-o)*(a-n)+n}function o(e,t){return n(this,void 0,void 0,(function*(){const r=yield fetch(`/api/geo/${e}/?${t}`);return r.ok?yield r.json():[]}))}function s(e,t){if(!e)return e;const r=(new DOMParser).parseFromString(e,"image/svg+xml"),n=r.querySelector("svg");return Object.entries(t).forEach((([e,t])=>{n.setAttribute(e,t)})),(new XMLSerializer).serializeToString(r)}function i(e,t,r){const n=r/100,a=t/100*Math.min(n,1-n),o=(t,r=(t+e/30)%12)=>Math.round(255*(n-a*Math.max(Math.min(r-3,9-r,1),-1)));return[o(0),o(8),o(4)]}function l(e){return e.toString().replace(/\B(?=(\d{3})+(?!\d))/g," ")}function c(e){return e.normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase()}},"./src/IndicatorMap/values/useFetchValues.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>l});var n=r("react"),a=r("./src/IndicatorMap/context.tsx"),o=r("./src/format.ts"),s=function(e,t,r,n){return new(r||(r=Promise))((function(a,o){function s(e){try{l(n.next(e))}catch(e){o(e)}}function i(e){try{l(n.throw(e))}catch(e){o(e)}}function l(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,i)}l((n=n.apply(e,t||[])).next())}))};function i(e,t,r){return s(this,void 0,void 0,(function*(){const{mesh:n,geoLevel:a,geoCode:s}=t,i=r.current.map((({dimension:e,db_name:t})=>`&${e}=${t}`)).join(""),l=yield fetch(`/api/indicators/${e.name}/submesh/?territory=${s}-${a}&submesh=${n}${i}`);if(l.ok){const t=yield l.json();return Object.fromEntries(t.map((t=>[t.geocode,{value:t.valeur,valueLabel:(0,o.formatValue)(t.valeur,e,{precise:!0}),territoryName:t.geoname}])))}}))}function l(){const{page:e,setters:t,filters:r}=(0,a.useMapContext)();(0,n.useEffect)((()=>{(()=>{s(this,void 0,void 0,(function*(){const n=yield i(e.indicator,e,r);if(n&&t.setValues(n),e.indicator.secondary_indicator){const r=e.indicator.secondary_indicator,n=yield i(r,e,{current:[],possible:[]});if(n){const e=[...Object.values(n)].sort(((e,t)=>e.value-t.value)),a=[e[0],e[Math.floor(e.length/2)],e[e.length-1]];t.setSecondaryValuesByName((e=>{const t=structuredClone(e);return t[r.name]={values:Object.fromEntries(Object.entries(n).map((([e,t])=>[e,t]))),name:r.name,title:r.title,short_title:r.short_title,details:a},t}))}}}))})()}),[e,r])}},"./src/IndicatorMap/values/useRankValues.ts":(e,t,r)=>{r.r(t),r.d(t,{default:()=>i});var n=r("react"),a=r("./src/IndicatorMap/utils.ts"),o=r("./src/IndicatorMap/context.tsx"),s=r("./src/IndicatorMap/enums.ts");function i(){const{values:e,setters:t}=(0,o.useMapContext)();(0,n.useEffect)((()=>{const r=Object.values(e).map((e=>e.value)).filter((e=>null!==e)),n=Math.max(...r),o=Math.min(...r),i={};Object.entries(e).forEach((([e,t])=>{if(null===t.value)i[e]={height:null,light:null};else{const r=(0,a.scaleValue)({value:t.value,target:[10,100],minmax:[o,n]}),l=s.LIGHT_MAX-(0,a.scaleValue)({value:t.value,target:[0,s.LIGHT_MAX-s.MAIN_COLOR_HSL[2]],minmax:[o,n]});i[e]={height:r,light:l}}})),t.setRankValues(i)}),[e])}},"./src/enums.tsx":(e,t,r)=>{var n,a,o;r.r(t),r.d(t,{COLORS:()=>s,GeoLevel:()=>n,GeoType:()=>o,MeshLevel:()=>a}),function(e){e.France="fr",e.Region="reg",e.Department="dep",e.Epci="epci",e.Town="com"}(n||(n={})),function(e){e.National="fr",e.Region="reg",e.Department="dep",e.Epci="epci",e.Town="com"}(a||(a={})),function(e){e.line="line",e.point="point",e.polygon="polygon"}(o||(o={}));const s={"#6A6AF4":"white","#000091":"white","#E1000F":"white","#B7A73F":"black","#66673D":"white","#68A532":"black","#447049":"white","#00A95F":"black","#297254":"white","#009081":"black","#37635F":"white","#009099":"black","#006A6F":"white","#465F9D":"white","#2F4077":"white","#417DC4":"black","#3558A2":"white","#A558A0":"black","#6E445A":"white","#E18B76":"black","#8D533E":"white","#CE614A":"black","#A94645":"white","#C8AA39":"black","#716043":"white","#C3992A":"black","#695240":"white","#E4794A":"black","#755348":"white","#D1B781":"black","#685C48":"white","#C08C65":"black","#845d48":"white","#BD987A":"black","#745B47":"white","#AEA397":"black","#6A6156":"white","#C9191E":"white"}},"./src/format.ts":(e,t,r)=>{r.r(t),r.d(t,{MILLIONS:()=>a,THOUSANDS:()=>n,formatIndicatorValue:()=>o,formatScaleAndUnite:()=>l,formatValue:()=>c});const n="k",a="M";function o(e,{forceInteger:t=!1,precise:r=!1}={}){if(null==e||isNaN(e))return"-";let o=null;return o=Math.abs(e)>999&&r?new Intl.NumberFormat("fr-FR").format(Math.round(e)):Math.abs(e)>999999?i(s(Math.sign(e)*Math.abs(e)/1e6,t))+a:Math.abs(e)>999?i(s(Math.sign(e)*Math.abs(e)/1e3,t))+n:i(s(e,t)),o=o.replace(".",","),o}const s=(e,t)=>t?e.toFixed(0):e.toFixed(1),i=e=>(e.indexOf(".")>0&&("00"===e.slice(-2)&&(e=e.slice(0,-2)),"0"===e.slice(-1)&&(e=e.slice(0,-1)),"."===e.slice(-1)&&(e=e.slice(0,-1))),e);function l(e,t,{forceInteger:r=!1,precise:n=!1}={}){return o(e,{forceInteger:r,precise:n})+" "+t.unite}function c(e,t,{forceInteger:r=!1,precise:n=!1}={}){return l(e,t,{forceInteger:r,precise:n})}},"deck.gl":e=>{e.exports=deck},html2canvas:e=>{e.exports=html2canvas},"mapbox-gl":e=>{e.exports=mapboxgl},react:e=>{e.exports=React},"react-dom":e=>{e.exports=ReactDOM},xlsx:e=>{e.exports=XLSX}},a={};function o(e){var t=a[e];if(void 0!==t)return t.exports;var r=a[e]={id:e,loaded:!1,exports:{}};return n[e].call(r.exports,r,r.exports,o),r.loaded=!0,r.exports}o.m=n,e=[],o.O=(t,r,n,a)=>{if(!r){var s=1/0;for(u=0;u<e.length;u++){for(var[r,n,a]=e[u],i=!0,l=0;l<r.length;l++)(!1&a||s>=a)&&Object.keys(o.O).every((e=>o.O[e](r[l])))?r.splice(l--,1):(i=!1,a<s&&(s=a));if(i){e.splice(u--,1);var c=n();void 0!==c&&(t=c)}}return t}a=a||0;for(var u=e.length;u>0&&e[u-1][2]>a;u--)e[u]=e[u-1];e[u]=[r,n,a]},o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},r=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,o.t=function(e,n){if(1&n&&(e=this(e)),8&n)return e;if("object"==typeof e&&e){if(4&n&&e.__esModule)return e;if(16&n&&"function"==typeof e.then)return e}var a=Object.create(null);o.r(a);var s={};t=t||[null,r({}),r([]),r(r)];for(var i=2&n&&e;"object"==typeof i&&!~t.indexOf(i);i=r(i))Object.getOwnPropertyNames(i).forEach((t=>s[t]=()=>e[t]));return s.default=()=>e,o.d(a,s),a},o.d=(e,t)=>{for(var r in t)o.o(t,r)&&!o.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},o.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),(()=>{var e={indicatorMap:0};o.O.j=t=>0===e[t];var t=(t,r)=>{var n,a,[s,i,l]=r,c=0;if(s.some((t=>0!==e[t]))){for(n in i)o.o(i,n)&&(o.m[n]=i[n]);if(l)var u=l(o)}for(t&&t(r);c<s.length;c++)a=s[c],o.o(e,a)&&e[a]&&e[a][0](),e[a]=0;return o.O(u)},r=self.webpackChunkreact_components=self.webpackChunkreact_components||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),o.nc=void 0;var s=o.O(void 0,["vendors"],(()=>o("./src/IndicatorMap/index.tsx")));s=o.O(s)})();