territories-dashboard-lib 0.1.10__tar.gz → 0.1.12__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 (165) hide show
  1. {territories_dashboard_lib-0.1.10/territories_dashboard_lib.egg-info → territories_dashboard_lib-0.1.12}/PKG-INFO +12 -1
  2. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/pyproject.toml +15 -1
  3. territories_dashboard_lib-0.1.12/territories_dashboard_lib/tracking_lib/geolocalisation/logic.py +35 -0
  4. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/tracking_lib/logic.py +9 -1
  5. territories_dashboard_lib-0.1.12/territories_dashboard_lib/tracking_lib/migrations/0002_alter_event_created_at_alter_page_created_at.py +24 -0
  6. territories_dashboard_lib-0.1.12/territories_dashboard_lib/tracking_lib/migrations/0003_cookieinfo.py +20 -0
  7. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/tracking_lib/models.py +8 -2
  8. territories_dashboard_lib-0.1.12/territories_dashboard_lib/website_lib/migrations/__init__.py +0 -0
  9. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12/territories_dashboard_lib.egg-info}/PKG-INFO +12 -1
  10. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib.egg-info/SOURCES.txt +5 -0
  11. territories_dashboard_lib-0.1.12/territories_dashboard_lib.egg-info/requires.txt +11 -0
  12. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/MANIFEST.in +0 -0
  13. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/README.md +0 -0
  14. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/licence.md +0 -0
  15. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/setup.cfg +0 -0
  16. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/__init__.py +0 -0
  17. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/commons/__init__.py +0 -0
  18. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/commons/decorators.py +0 -0
  19. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/commons/models.py +0 -0
  20. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/geo_lib/__init__.py +0 -0
  21. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/geo_lib/admin.py +0 -0
  22. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/geo_lib/enums.py +0 -0
  23. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/geo_lib/migrations/0001_initial.py +0 -0
  24. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/geo_lib/migrations/__init__.py +0 -0
  25. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/geo_lib/models.py +0 -0
  26. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/geo_lib/urls.py +0 -0
  27. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/geo_lib/views.py +0 -0
  28. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/indicators_lib/__init__.py +0 -0
  29. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/indicators_lib/admin.py +0 -0
  30. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/indicators_lib/enums.py +0 -0
  31. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/indicators_lib/export.py +0 -0
  32. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/indicators_lib/format.py +0 -0
  33. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/indicators_lib/methodo_pdf.py +0 -0
  34. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/indicators_lib/migrations/0001_initial.py +0 -0
  35. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/indicators_lib/migrations/0002_filter_color_indicator_min_mesh_and_more.py +0 -0
  36. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/indicators_lib/migrations/__init__.py +0 -0
  37. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/indicators_lib/models.py +0 -0
  38. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/indicators_lib/payloads.py +0 -0
  39. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/indicators_lib/query/commons.py +0 -0
  40. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/indicators_lib/query/comparison.py +0 -0
  41. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/indicators_lib/query/details.py +0 -0
  42. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/indicators_lib/query/histogram.py +0 -0
  43. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/indicators_lib/query/indicator_card.py +0 -0
  44. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/indicators_lib/query/top_10.py +0 -0
  45. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/indicators_lib/query/utils.py +0 -0
  46. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/indicators_lib/refresh_filters.py +0 -0
  47. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/indicators_lib/table.py +0 -0
  48. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/indicators_lib/urls.py +0 -0
  49. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/indicators_lib/views.py +0 -0
  50. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/superset_lib/__init__.py +0 -0
  51. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/superset_lib/admin.py +0 -0
  52. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/superset_lib/guest_token.py +0 -0
  53. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/superset_lib/logic.py +0 -0
  54. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/superset_lib/migrations/0001_initial.py +0 -0
  55. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/superset_lib/migrations/__init__.py +0 -0
  56. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/superset_lib/models.py +0 -0
  57. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/superset_lib/serializers.py +0 -0
  58. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/superset_lib/urls.py +0 -0
  59. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/superset_lib/views.py +0 -0
  60. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/tracking_lib/__init__.py +0 -0
  61. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/tracking_lib/enums.py +0 -0
  62. {territories_dashboard_lib-0.1.10/territories_dashboard_lib/tracking_lib/migrations → territories_dashboard_lib-0.1.12/territories_dashboard_lib/tracking_lib/geolocalisation}/__init__.py +0 -0
  63. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/tracking_lib/migrations/0001_initial.py +0 -0
  64. {territories_dashboard_lib-0.1.10/territories_dashboard_lib/website_lib → territories_dashboard_lib-0.1.12/territories_dashboard_lib/tracking_lib/migrations}/__init__.py +0 -0
  65. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/tracking_lib/payloads.py +0 -0
  66. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/tracking_lib/urls.py +0 -0
  67. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/tracking_lib/views.py +0 -0
  68. {territories_dashboard_lib-0.1.10/territories_dashboard_lib/website_lib/migrations → territories_dashboard_lib-0.1.12/territories_dashboard_lib/website_lib}/__init__.py +0 -0
  69. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/admin.py +0 -0
  70. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/context_processors.py +0 -0
  71. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/forms.py +0 -0
  72. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/migrations/0001_initial.py +0 -0
  73. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/migrations/0002_mainconf_contact_email_mainconf_newsletter_link_and_more.py +0 -0
  74. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/migrations/0003_alter_mainconf_footer_navigation_and_more.py +0 -0
  75. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/models.py +0 -0
  76. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/navigation.py +0 -0
  77. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/params.py +0 -0
  78. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/serializers.py +0 -0
  79. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/css/website.css +0 -0
  80. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/chart.js +0 -0
  81. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/chartjs-plugin-datalabels.js +0 -0
  82. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/html2canvas.js +0 -0
  83. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/comparaison/data.mjs +0 -0
  84. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/comparaison/history.mjs +0 -0
  85. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/comparaison/main-values.mjs +0 -0
  86. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/comparaison/page.mjs +0 -0
  87. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/comparaison/territory-chart.mjs +0 -0
  88. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/details/data.mjs +0 -0
  89. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/details/histogram.mjs +0 -0
  90. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/details/map.mjs +0 -0
  91. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/details/page.mjs +0 -0
  92. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/details/proportions.mjs +0 -0
  93. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/details/sankey.mjs +0 -0
  94. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/details/table.mjs +0 -0
  95. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/details/top10.mjs +0 -0
  96. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/details/utils.mjs +0 -0
  97. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/dom.mjs +0 -0
  98. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/enums.mjs +0 -0
  99. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/export-graph.mjs +0 -0
  100. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/export.mjs +0 -0
  101. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/filters.mjs +0 -0
  102. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/format.mjs +0 -0
  103. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/side_panel.mjs +0 -0
  104. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/theme/history.mjs +0 -0
  105. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/theme/main-value.mjs +0 -0
  106. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/theme/page.mjs +0 -0
  107. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/theme/statistics.mjs +0 -0
  108. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/indicators/utils.mjs +0 -0
  109. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/pages/static/page.mjs +0 -0
  110. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/patternomaly.js +0 -0
  111. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/react18.js +0 -0
  112. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/reactdom18.js +0 -0
  113. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/js/supersetEmbed.js +0 -0
  114. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/react/indicatorMap.bundle.js +0 -0
  115. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/react/sankeyGraph.bundle.js +0 -0
  116. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static/territories_dashboard_lib/website/react/vendors-node_modules_mapbox-gl_dist_mapbox-gl_js.bundle.js +0 -0
  117. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/static_content.py +0 -0
  118. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/admin/indicators_lib/indicator/change_form.html +0 -0
  119. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/404.html +0 -0
  120. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/500.html +0 -0
  121. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/layout/base.html +0 -0
  122. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/layout/base.js +0 -0
  123. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/layout/footer.html +0 -0
  124. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/layout/header.html +0 -0
  125. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/layout/header.js +0 -0
  126. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/comparaison/[theme]/components/histogram.html +0 -0
  127. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/comparaison/[theme]/components/indicateur-card.html +0 -0
  128. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/comparaison/[theme]/page.html +0 -0
  129. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/chart-buttons.html +0 -0
  130. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/geo_params.html +0 -0
  131. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/indicator-card.html +0 -0
  132. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/loader.html +0 -0
  133. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/side_panel.html +0 -0
  134. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/side_panel_geo.html +0 -0
  135. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/side_panel_geo.js +0 -0
  136. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/side_panel_methodo.html +0 -0
  137. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/side_panel_methodo.js +0 -0
  138. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/themes-list.html +0 -0
  139. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/themes-nav.html +0 -0
  140. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/components/title.html +0 -0
  141. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/details/components/filters-reminder.html +0 -0
  142. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/details/components/histogram.html +0 -0
  143. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/details/components/map.html +0 -0
  144. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/details/components/proportions.html +0 -0
  145. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/details/components/sankey.html +0 -0
  146. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/details/components/table-flows.html +0 -0
  147. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/details/components/table-values.html +0 -0
  148. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/details/components/table.html +0 -0
  149. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/details/components/top10.html +0 -0
  150. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/details/page.html +0 -0
  151. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/themes/components/extremum.html +0 -0
  152. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/themes/components/indicateur-card.html +0 -0
  153. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/themes/components/stats.html +0 -0
  154. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/indicators/themes/page.html +0 -0
  155. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/lexique/page.html +0 -0
  156. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/page.html +0 -0
  157. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/sitemap/page.html +0 -0
  158. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/static/page.html +0 -0
  159. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/pages/superset/page.html +0 -0
  160. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templates/territories_dashboard_lib/website/svg/delete-back.svg +0 -0
  161. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templatetags/htmlparams.py +0 -0
  162. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/templatetags/other_filters.py +0 -0
  163. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib/website_lib/views.py +0 -0
  164. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/territories_dashboard_lib.egg-info/dependency_links.txt +0 -0
  165. {territories_dashboard_lib-0.1.10 → territories_dashboard_lib-0.1.12}/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.10
3
+ Version: 0.1.12
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
@@ -11,6 +11,17 @@ Classifier: Topic :: Software Development :: Libraries
11
11
  Requires-Python: >=3.13
12
12
  Description-Content-Type: text/markdown
13
13
  License-File: licence.md
14
+ Requires-Dist: django>=5.1.6
15
+ Requires-Dist: django-nested-admin>=4.1.1
16
+ Requires-Dist: geoip2>=5.1.0
17
+ Requires-Dist: gunicorn>=23.0.0
18
+ Requires-Dist: ipython>=8.32.0
19
+ Requires-Dist: martor>=1.6.45
20
+ Requires-Dist: pre-commit>=4.2.0
21
+ Requires-Dist: psycopg2-binary>=2.9.10
22
+ Requires-Dist: pydantic>=2.10.6
23
+ Requires-Dist: pydantic-settings>=2.7.1
24
+ Requires-Dist: whitenoise>=6.9.0
14
25
  Dynamic: license-file
15
26
 
16
27
  # Tableau de bord des indicateurs territoriaux
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "territories-dashboard-lib"
3
- version = "0.1.10"
3
+ version = "0.1.12"
4
4
  description = "Librairie pour la visualisation d'indicateurs territoriaux."
5
5
  authors = [
6
6
  { name = "Bastien", email = "bastien@prune.sh" }
@@ -17,6 +17,20 @@ classifiers = [
17
17
  "Topic :: Software Development :: Libraries",
18
18
  ]
19
19
 
20
+ dependencies = [
21
+ "django>=5.1.6",
22
+ "django-nested-admin>=4.1.1",
23
+ "geoip2>=5.1.0",
24
+ "gunicorn>=23.0.0",
25
+ "ipython>=8.32.0",
26
+ "martor>=1.6.45",
27
+ "pre-commit>=4.2.0",
28
+ "psycopg2-binary>=2.9.10",
29
+ "pydantic>=2.10.6",
30
+ "pydantic-settings>=2.7.1",
31
+ "whitenoise>=6.9.0",
32
+ ]
33
+
20
34
  [tool.setuptools]
21
35
  include-package-data = true
22
36
 
@@ -0,0 +1,35 @@
1
+ import os
2
+ from functools import lru_cache
3
+
4
+ import geoip2.database
5
+
6
+
7
+ def _get_client_ip(request):
8
+ x_forwarded_for = request.META.get("HTTP_X_FORWARDED_FOR")
9
+ if x_forwarded_for:
10
+ ip = x_forwarded_for.split(",")[0]
11
+ else:
12
+ ip = request.META.get("REMOTE_ADDR")
13
+ return ip
14
+
15
+
16
+ @lru_cache(maxsize=100_000)
17
+ def _get_country_from_geolite(ip_address):
18
+ database_name = "GeoLite2-Country.mmdb"
19
+ database_path = os.path.join(os.path.dirname(__file__), database_name)
20
+ reader = geoip2.database.Reader(database_path)
21
+ try:
22
+ response = reader.country(ip_address)
23
+ country = response.country.iso_code
24
+ except geoip2.errors.AddressNotFoundError:
25
+ country = "UNKNOWN"
26
+ reader.close()
27
+ return country
28
+
29
+
30
+ def get_country_of_ip(request):
31
+ """
32
+ Guess the country of an ip thanks to the geoip2 library and the Geolite mmdb database file.
33
+ """
34
+ ip_address = _get_client_ip(request)
35
+ return _get_country_from_geolite(ip_address)
@@ -6,7 +6,10 @@ from django.http import HttpRequest, HttpResponse
6
6
  from django.urls import resolve
7
7
 
8
8
  from territories_dashboard_lib.tracking_lib.enums import TRACKING_COOKIE_NAME, EventType
9
- from territories_dashboard_lib.tracking_lib.models import Event, Page
9
+ from territories_dashboard_lib.tracking_lib.geolocalisation.logic import (
10
+ get_country_of_ip,
11
+ )
12
+ from territories_dashboard_lib.tracking_lib.models import CookieInfo, Event, Page
10
13
 
11
14
  if TYPE_CHECKING:
12
15
  from territories_dashboard_lib.indicators_lib.models import Indicator, Theme
@@ -21,6 +24,11 @@ def get_or_set_tracking_cookie(request: HttpRequest, response: HttpResponse) ->
21
24
  value=tracking_cookie,
22
25
  max_age=timedelta(days=365),
23
26
  )
27
+ try:
28
+ CookieInfo.objects.get(id=tracking_cookie)
29
+ except CookieInfo.DoesNotExist:
30
+ country = get_country_of_ip(request)
31
+ CookieInfo.objects.create(id=tracking_cookie, country=country)
24
32
  return tracking_cookie
25
33
 
26
34
 
@@ -0,0 +1,24 @@
1
+ # Generated by Django 5.2.3 on 2025-06-26 12:58
2
+
3
+ import django.utils.timezone
4
+ from django.db import migrations, models
5
+
6
+
7
+ class Migration(migrations.Migration):
8
+
9
+ dependencies = [
10
+ ('tracking_lib', '0001_initial'),
11
+ ]
12
+
13
+ operations = [
14
+ migrations.AlterField(
15
+ model_name='event',
16
+ name='created_at',
17
+ field=models.DateTimeField(default=django.utils.timezone.now),
18
+ ),
19
+ migrations.AlterField(
20
+ model_name='page',
21
+ name='created_at',
22
+ field=models.DateTimeField(default=django.utils.timezone.now),
23
+ ),
24
+ ]
@@ -0,0 +1,20 @@
1
+ # Generated by Django 5.1.6 on 2025-06-30 12:50
2
+
3
+ from django.db import migrations, models
4
+
5
+
6
+ class Migration(migrations.Migration):
7
+
8
+ dependencies = [
9
+ ('tracking_lib', '0002_alter_event_created_at_alter_page_created_at'),
10
+ ]
11
+
12
+ operations = [
13
+ migrations.CreateModel(
14
+ name='CookieInfo',
15
+ fields=[
16
+ ('id', models.TextField(primary_key=True, serialize=False)),
17
+ ('country', models.TextField(blank=True, null=True)),
18
+ ],
19
+ ),
20
+ ]
@@ -1,4 +1,5 @@
1
1
  from django.db import models
2
+ from django.utils import timezone
2
3
 
3
4
  from territories_dashboard_lib.indicators_lib.enums import MeshLevel
4
5
  from territories_dashboard_lib.tracking_lib.enums import EventType
@@ -10,7 +11,7 @@ class Page(models.Model):
10
11
  À chaque changement de paramètre (territoire, maille, territoire de comparaison) une nouvelle vue est enregistrée.
11
12
  """
12
13
 
13
- created_at = models.DateTimeField(auto_now_add=True)
14
+ created_at = models.DateTimeField(default=timezone.now)
14
15
  cookie = models.TextField(
15
16
  help_text="Un cookie sans durée d'expiration est placé dans chaque nouvelle session, il possède une valeur aléatoire qui permet de tracer le navigateur du visiteur entre plusieurs visites."
16
17
  )
@@ -69,7 +70,7 @@ class Event(models.Model):
69
70
  Tracking des autres événements de l'application
70
71
  """
71
72
 
72
- created_at = models.DateTimeField(auto_now_add=True)
73
+ created_at = models.DateTimeField(default=timezone.now)
73
74
  cookie = models.TextField(
74
75
  help_text="Un cookie sans durée d'expiration est placé dans chaque nouvelle session, il possède une valeur aléatoire qui permet de tracer le navigateur du visiteur entre plusieurs visites."
75
76
  )
@@ -77,3 +78,8 @@ class Event(models.Model):
77
78
  data = models.JSONField(null=True, blank=True)
78
79
  url = models.TextField(help_text="URL brut de la page")
79
80
  view = models.TextField(help_text="Nom de la vue dans Django")
81
+
82
+
83
+ class CookieInfo(models.Model):
84
+ id = models.TextField(primary_key=True)
85
+ country = models.TextField(null=True, blank=True)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: territories-dashboard-lib
3
- Version: 0.1.10
3
+ Version: 0.1.12
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
@@ -11,6 +11,17 @@ Classifier: Topic :: Software Development :: Libraries
11
11
  Requires-Python: >=3.13
12
12
  Description-Content-Type: text/markdown
13
13
  License-File: licence.md
14
+ Requires-Dist: django>=5.1.6
15
+ Requires-Dist: django-nested-admin>=4.1.1
16
+ Requires-Dist: geoip2>=5.1.0
17
+ Requires-Dist: gunicorn>=23.0.0
18
+ Requires-Dist: ipython>=8.32.0
19
+ Requires-Dist: martor>=1.6.45
20
+ Requires-Dist: pre-commit>=4.2.0
21
+ Requires-Dist: psycopg2-binary>=2.9.10
22
+ Requires-Dist: pydantic>=2.10.6
23
+ Requires-Dist: pydantic-settings>=2.7.1
24
+ Requires-Dist: whitenoise>=6.9.0
14
25
  Dynamic: license-file
15
26
 
16
27
  # Tableau de bord des indicateurs territoriaux
@@ -6,6 +6,7 @@ territories_dashboard_lib/__init__.py
6
6
  territories_dashboard_lib.egg-info/PKG-INFO
7
7
  territories_dashboard_lib.egg-info/SOURCES.txt
8
8
  territories_dashboard_lib.egg-info/dependency_links.txt
9
+ territories_dashboard_lib.egg-info/requires.txt
9
10
  territories_dashboard_lib.egg-info/top_level.txt
10
11
  territories_dashboard_lib/commons/__init__.py
11
12
  territories_dashboard_lib/commons/decorators.py
@@ -57,7 +58,11 @@ territories_dashboard_lib/tracking_lib/models.py
57
58
  territories_dashboard_lib/tracking_lib/payloads.py
58
59
  territories_dashboard_lib/tracking_lib/urls.py
59
60
  territories_dashboard_lib/tracking_lib/views.py
61
+ territories_dashboard_lib/tracking_lib/geolocalisation/__init__.py
62
+ territories_dashboard_lib/tracking_lib/geolocalisation/logic.py
60
63
  territories_dashboard_lib/tracking_lib/migrations/0001_initial.py
64
+ territories_dashboard_lib/tracking_lib/migrations/0002_alter_event_created_at_alter_page_created_at.py
65
+ territories_dashboard_lib/tracking_lib/migrations/0003_cookieinfo.py
61
66
  territories_dashboard_lib/tracking_lib/migrations/__init__.py
62
67
  territories_dashboard_lib/website_lib/__init__.py
63
68
  territories_dashboard_lib/website_lib/admin.py
@@ -0,0 +1,11 @@
1
+ django>=5.1.6
2
+ django-nested-admin>=4.1.1
3
+ geoip2>=5.1.0
4
+ gunicorn>=23.0.0
5
+ ipython>=8.32.0
6
+ martor>=1.6.45
7
+ pre-commit>=4.2.0
8
+ psycopg2-binary>=2.9.10
9
+ pydantic>=2.10.6
10
+ pydantic-settings>=2.7.1
11
+ whitenoise>=6.9.0