@datagouv/components-next 1.0.2-dev.18 → 1.0.2-dev.180

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (151) hide show
  1. package/README.md +7 -6
  2. package/assets/main.css +4 -0
  3. package/dist/{Control-DuZJdKV_.js → Control-B9WQxlpJ.js} +1 -1
  4. package/dist/{Datafair.client-Ds3VQrRi.js → Datafair.client-CaxMyNif.js} +9 -9
  5. package/dist/{Event--kp8kMdJ.js → Event-iXDrp-fy.js} +31 -31
  6. package/dist/{Image-34hvypZI.js → Image-mNMBOofs.js} +9 -9
  7. package/dist/ImagePreview.client-CPmCyisP.js +36 -0
  8. package/dist/JsonPreview.client-CKOU-LBs.js +40 -0
  9. package/dist/{Map-BjUnLyj8.js → Map-BfqKMw0S.js} +1739 -1599
  10. package/dist/{MapContainer.client-B2BijMx5.js → MapContainer.client-IGYJWP5m.js} +41 -42
  11. package/dist/{OSM-s40W6sQ2.js → OSM-CcrUhItr.js} +15 -23
  12. package/dist/{PdfPreview.client-DJBMzrlC.js → PdfPreview.client-csUebU3A.js} +835 -856
  13. package/dist/Pmtiles.client-CLq7UHBg.js +26333 -0
  14. package/dist/PreviewWrapper.vue_vue_type_script_setup_true_lang-DeoHZXW1.js +60 -0
  15. package/dist/{ScaleLine-KW-nXqp3.js → ScaleLine-VGQ7nkMS.js} +2 -2
  16. package/dist/{Tile-DbNFNPfU.js → Tile-CSpn0Ca8.js} +160 -163
  17. package/dist/{TileImage-BsXBxMtq.js → TileImage-CpbaEFwd.js} +143 -131
  18. package/dist/{View-BR92hTWP.js → View-BYBpt-AU.js} +483 -422
  19. package/dist/XmlPreview.client-C1toAbQ0.js +34 -0
  20. package/dist/{common-PJfpC179.js → common-BoeTUnDZ.js} +52 -52
  21. package/dist/components-next.css +1 -52
  22. package/dist/components-next.js +193 -149
  23. package/dist/components.css +2 -2
  24. package/dist/{index-BFQX7Ccz.js → index-CaUlhl3k.js} +21842 -15810
  25. package/dist/{leaflet-src-7m1mB8LI.js → leaflet-src-ByYGrf8H.js} +185 -187
  26. package/dist/{main-vqhkVhVS.js → main-DD4ieUAo.js} +41500 -73223
  27. package/dist/{proj-DsetBcW7.js → proj-DxGbobp7.js} +662 -626
  28. package/dist/{text-clamp.esm-B5kW_XMt.js → text-clamp.esm-DVseBqZZ.js} +4 -4
  29. package/dist/{tilecoord-Db24Px13.js → tilecoord-DvX7WWiA.js} +273 -264
  30. package/dist/{vue3-json-viewer-BXwup7nO.js → vue3-json-viewer-CJLQFzXZ.js} +10 -16
  31. package/dist/{vue3-xml-viewer.common-BcNJo35o.js → vue3-xml-viewer.common-B1KPK4L4.js} +16 -16
  32. package/package.json +47 -38
  33. package/src/chart.ts +5 -0
  34. package/src/components/ActivityList/ActivityList.vue +3 -2
  35. package/src/components/AppLink.vue +3 -0
  36. package/src/components/BannerAction.vue +6 -2
  37. package/src/components/Chart/ChartViewer.vue +320 -0
  38. package/src/components/Chart/ChartViewerWrapper.vue +182 -0
  39. package/src/components/CopyButton.vue +6 -2
  40. package/src/components/DataserviceCard.vue +9 -0
  41. package/src/components/DataserviceQuality.vue +82 -0
  42. package/src/components/DataserviceQualityInline.vue +31 -0
  43. package/src/components/DataserviceQualityTooltipContent.vue +79 -0
  44. package/src/components/DatasetCard.vue +9 -4
  45. package/src/components/DatasetQuality.vue +11 -11
  46. package/src/components/DatasetQualityInline.vue +2 -2
  47. package/src/components/DatasetQualityTooltipContent.vue +1 -1
  48. package/src/components/Form/Listbox.vue +101 -0
  49. package/src/components/Form/SchemaSelect.vue +2 -0
  50. package/src/components/InfiniteLoader.vue +53 -0
  51. package/src/components/ObjectCardHeader.vue +11 -4
  52. package/src/components/OpenApiViewer/ContentTypeSelect.vue +48 -0
  53. package/src/components/OpenApiViewer/EndpointRequest.vue +164 -0
  54. package/src/components/OpenApiViewer/EndpointResponses.vue +149 -0
  55. package/src/components/OpenApiViewer/OpenApiViewer.vue +308 -0
  56. package/src/components/OpenApiViewer/SchemaPanel.vue +53 -0
  57. package/src/components/OpenApiViewer/SchemaTree.vue +77 -0
  58. package/src/components/OpenApiViewer/openapi.ts +150 -0
  59. package/src/components/OrganizationNameWithCertificate.vue +3 -2
  60. package/src/components/Pagination.vue +8 -5
  61. package/src/components/RadioInput.vue +7 -2
  62. package/src/components/ResourceAccordion/DataStructure.vue +11 -33
  63. package/src/components/ResourceAccordion/Datafair.client.vue +1 -1
  64. package/src/components/ResourceAccordion/Downloads.vue +160 -0
  65. package/src/components/ResourceAccordion/ImagePreview.client.vue +48 -0
  66. package/src/components/ResourceAccordion/JsonPreview.client.vue +23 -104
  67. package/src/components/ResourceAccordion/MapContainer.client.vue +2 -11
  68. package/src/components/ResourceAccordion/Metadata.vue +1 -2
  69. package/src/components/ResourceAccordion/PdfPreview.client.vue +58 -97
  70. package/src/components/ResourceAccordion/PdfSkeleton.vue +44 -0
  71. package/src/components/ResourceAccordion/Pmtiles.client.vue +28 -13
  72. package/src/components/ResourceAccordion/Preview.vue +11 -11
  73. package/src/components/ResourceAccordion/PreviewWrapper.vue +89 -0
  74. package/src/components/ResourceAccordion/ResourceAccordion.vue +23 -114
  75. package/src/components/ResourceAccordion/XmlPreview.client.vue +16 -98
  76. package/src/components/ResourceExplorer/ResourceExplorer.vue +102 -210
  77. package/src/components/ResourceExplorer/ResourceExplorerHeader.vue +74 -0
  78. package/src/components/ResourceExplorer/ResourceExplorerSidebar.vue +103 -71
  79. package/src/components/ResourceExplorer/ResourceExplorerViewer.vue +143 -291
  80. package/src/components/ResourceExplorer/ResourceMainAction.vue +240 -0
  81. package/src/components/ResourceExplorer/ResourceSelector.vue +51 -0
  82. package/src/components/ResourceExplorer/ResourceViewerHeader.vue +115 -0
  83. package/src/components/ResourceExplorer/ResourceViewerSkeleton.vue +94 -0
  84. package/src/components/ResourceListItem.vue +154 -0
  85. package/src/components/ReuseCard.vue +14 -6
  86. package/src/components/ReuseDetails.vue +2 -2
  87. package/src/components/ReuseHorizontalCard.vue +2 -2
  88. package/src/components/SchemaCard.vue +10 -1
  89. package/src/components/Search/Filter/AccessTypeFilter.vue +2 -2
  90. package/src/components/Search/GlobalSearch.vue +219 -117
  91. package/src/components/Search/SearchInput.vue +5 -4
  92. package/src/components/TabularExplorer/TabularActiveFilters.vue +79 -0
  93. package/src/components/TabularExplorer/TabularCell.vue +50 -0
  94. package/src/components/TabularExplorer/TabularCellPopover.vue +170 -0
  95. package/src/components/TabularExplorer/TabularColumnsMenu.vue +112 -0
  96. package/src/components/TabularExplorer/TabularExplorer.vue +299 -0
  97. package/src/components/TabularExplorer/TabularFilterContent.vue +362 -0
  98. package/src/components/TabularExplorer/TabularFilterPopover.vue +106 -0
  99. package/src/components/TabularExplorer/TabularMobileFilterButton.vue +21 -0
  100. package/src/components/TabularExplorer/TabularMobileFilters.vue +150 -0
  101. package/src/components/TabularExplorer/TabularRowsInfo.vue +31 -0
  102. package/src/components/TabularExplorer/TabularSkeleton.vue +92 -0
  103. package/src/components/TabularExplorer/TabularTable.vue +481 -0
  104. package/src/components/TabularExplorer/TabularToolbar.vue +25 -0
  105. package/src/components/TabularExplorer/types.ts +81 -0
  106. package/src/components/TabularExplorer/useColumnMetadata.ts +98 -0
  107. package/src/components/TabularExplorer/useTabularContext.ts +82 -0
  108. package/src/composables/useActiveDescendant.ts +5 -0
  109. package/src/composables/useDatasetResources.ts +164 -0
  110. package/src/composables/useHasTabularData.ts +15 -1
  111. package/src/composables/useMetrics.ts +1 -1
  112. package/src/composables/useResizable.ts +46 -0
  113. package/src/composables/useResourceCapabilities.ts +47 -21
  114. package/src/composables/useSearchFilter.ts +120 -0
  115. package/src/composables/useStableQueryParams.ts +38 -6
  116. package/src/composables/useTabularProfile.ts +70 -0
  117. package/src/config.ts +21 -3
  118. package/src/functions/activities.ts +3 -3
  119. package/src/functions/api.ts +20 -42
  120. package/src/functions/api.types.ts +1 -0
  121. package/src/functions/charts.ts +99 -0
  122. package/src/functions/datasets.ts +0 -17
  123. package/src/functions/dates.ts +3 -2
  124. package/src/functions/metrics.ts +6 -4
  125. package/src/functions/resources.ts +136 -1
  126. package/src/functions/schemas.ts +27 -0
  127. package/src/functions/tabular.ts +214 -0
  128. package/src/functions/tabularApi.ts +96 -11
  129. package/src/main.ts +117 -14
  130. package/src/types/dataservices.ts +17 -0
  131. package/src/types/organizations.ts +10 -0
  132. package/src/types/pages.ts +0 -5
  133. package/src/types/posts.ts +2 -2
  134. package/src/types/reports.ts +5 -1
  135. package/src/types/resources.ts +0 -1
  136. package/src/types/reuses.ts +12 -1
  137. package/src/types/search.ts +63 -1
  138. package/src/types/site.ts +5 -3
  139. package/src/types/ui.ts +2 -0
  140. package/src/types/users.ts +2 -1
  141. package/src/types/visualizations.ts +93 -0
  142. package/assets/swagger-themes/newspaper.css +0 -1670
  143. package/dist/JsonPreview.client-CYxmz0yV.js +0 -72
  144. package/dist/Pmtiles.client-C_hvRDuy.js +0 -25185
  145. package/dist/Swagger.client-B4y0hXME.js +0 -4
  146. package/dist/XmlPreview.client-LETEfNBH.js +0 -64
  147. package/src/components/ResourceAccordion/Swagger.client.vue +0 -48
  148. package/src/functions/pagination.ts +0 -9
  149. /package/src/components/{DatasetQualityItem.vue → QualityItem.vue} +0 -0
  150. /package/src/components/{DatasetQualityItemWarning.vue → QualityItemWarning.vue} +0 -0
  151. /package/src/components/{DatasetQualityScore.vue → QualityScore.vue} +0 -0
@@ -1,35 +1,35 @@
1
- import { defineComponent as E, useTemplateRef as G, ref as W, onMounted as B, createBlock as z, createElementBlock as N, openBlock as m, withCtx as U, createTextVNode as V, toDisplayString as q, unref as A } from "vue";
2
- import { a as D, _ as F } from "./main-vqhkVhVS.js";
1
+ import { defineComponent as E, useTemplateRef as G, ref as W, onMounted as z, openBlock as u, createBlock as B, withCtx as N, createTextVNode as V, toDisplayString as q, unref as A, createElementBlock as D } from "vue";
2
+ import { a as F, d as O } from "./main-DD4ieUAo.js";
3
3
  const Z = /* @__PURE__ */ E({
4
4
  __name: "MapContainer.client",
5
5
  props: {
6
6
  resource: {}
7
7
  },
8
- setup(f) {
9
- const r = f, { t: d } = D();
8
+ setup(m) {
9
+ const r = m, { t: f } = F();
10
10
  let e = null;
11
11
  const a = G("mapRef"), n = W(!1);
12
- async function w() {
12
+ async function d() {
13
13
  const [
14
14
  { default: i },
15
15
  { default: s },
16
+ { default: w },
16
17
  { default: y },
17
- { default: C },
18
18
  { default: h },
19
- _
19
+ C
20
20
  ] = await Promise.all([
21
- import("./View-BR92hTWP.js").then((t) => t.M),
22
- import("./Map-BjUnLyj8.js").then((t) => t.U),
23
- import("./ScaleLine-KW-nXqp3.js"),
24
- import("./Tile-DbNFNPfU.js").then((t) => t.d),
25
- import("./OSM-s40W6sQ2.js"),
21
+ import("./View-BYBpt-AU.js").then((t) => t.N),
22
+ import("./Map-BfqKMw0S.js").then((t) => t.V),
23
+ import("./ScaleLine-VGQ7nkMS.js"),
24
+ import("./Tile-CSpn0Ca8.js").then((t) => t.d),
25
+ import("./OSM-CcrUhItr.js"),
26
26
  // @ts-expect-error no types provided
27
- import("./index-BFQX7Ccz.js")
28
- ]), { CRS: S, GeoportalAttribution: g, GeoportalFullScreen: M, GeoportalZoom: b, LayerImport: v, LayerSwitcher: L } = _;
29
- await Promise.resolve({ }), await Promise.resolve({ }), await Promise.resolve({ }), await Promise.resolve({ }), S.load(), e = new s({
27
+ import("./index-CaUlhl3k.js")
28
+ ]), { CRS: _, GeoportalAttribution: S, GeoportalFullScreen: g, GeoportalZoom: b, LayerImport: v, LayerSwitcher: L } = C;
29
+ await Promise.resolve({ }), await Promise.resolve({ }), await Promise.resolve({ }), await Promise.resolve({ }), _.load(), e = new s({
30
30
  target: a.value,
31
31
  layers: [
32
- new C({
32
+ new y({
33
33
  source: new h()
34
34
  })
35
35
  ],
@@ -39,61 +39,60 @@ const Z = /* @__PURE__ */ E({
39
39
  constrainResolution: !0
40
40
  })
41
41
  });
42
- const R = new y({
42
+ const M = new w({
43
43
  units: "metric",
44
44
  bar: !1
45
45
  });
46
- e.addControl(R);
47
- const T = new M({
46
+ e.addControl(M);
47
+ const R = new g({
48
48
  position: "top-right"
49
49
  });
50
- e.addControl(T);
51
- const k = new b({
50
+ e.addControl(R);
51
+ const T = new b({
52
52
  position: "bottom-left"
53
53
  });
54
- e.addControl(k);
55
- const I = new L({
54
+ e.addControl(T);
55
+ const k = new L({
56
56
  options: {
57
57
  position: "top-right"
58
58
  }
59
59
  });
60
- e.addControl(I);
61
- const l = new g({
62
- position: "bottom-right"
63
- // collapsed option is ignored by the library, thus the override below
64
- // see https://github.com/IGNF/geopf-extensions-openlayers/issues/497
60
+ e.addControl(k);
61
+ const I = new S({
62
+ position: "bottom-right",
63
+ collapsed: !1
65
64
  });
66
- l.setCollapsed(!1), e.addControl(l);
65
+ e.addControl(I);
67
66
  const o = new v({
68
67
  position: "bottom-left",
69
68
  listable: !0,
70
69
  layerTypes: ["WMS"]
71
70
  });
72
71
  o._serviceUrlImportInput.value = r.resource.url, o._formContainer.dispatchEvent(new CustomEvent("submit", { cancelable: !0 })), e.addControl(o);
73
- const p = 500;
74
- let c = 20;
75
- function u() {
72
+ const l = 500;
73
+ let p = 20;
74
+ function c() {
76
75
  if (!o._getCapResponseWMSLayers)
77
- c--, c > 0 ? setTimeout(u, p) : n.value = !0;
76
+ p--, p > 0 ? setTimeout(c, l) : n.value = !0;
78
77
  else {
79
78
  const t = o._getCapResponseWMSLayers.filter((x) => x.Name == r.resource.title)[0];
80
79
  o._addGetCapWMSLayer(t);
81
80
  }
82
81
  }
83
- setTimeout(u, p);
82
+ setTimeout(c, l);
84
83
  }
85
- return B(() => {
86
- w();
87
- }), (i, s) => n.value ? (m(), z(F, { key: 0 }, {
88
- default: U(() => [
89
- V(q(A(d)("L'aperçu cartographique de ce fichier n'a pas pu être chargé.")), 1)
84
+ return z(() => {
85
+ d();
86
+ }), (i, s) => n.value ? (u(), B(O, { key: 0 }, {
87
+ default: N(() => [
88
+ V(q(A(f)("L'aperçu cartographique de ce fichier n'a pas pu être chargé.")), 1)
90
89
  ]),
91
90
  _: 1
92
- })) : (m(), N("div", {
91
+ })) : (u(), D("div", {
93
92
  key: 1,
94
- id: "map",
95
93
  ref_key: "mapRef",
96
- ref: a
94
+ ref: a,
95
+ class: "size-full"
97
96
  }, null, 512));
98
97
  }
99
98
  });
@@ -1,13 +1,12 @@
1
- import { W as u } from "./Image-34hvypZI.js";
2
- import { T as d, c as o, e as m, d as s } from "./TileImage-BsXBxMtq.js";
3
- class g extends d {
1
+ import { T as a, c as l, e as c } from "./TileImage-CpbaEFwd.js";
2
+ class n extends a {
4
3
  /**
5
4
  * @param {Options} [options] XYZ options.
6
5
  */
7
6
  constructor(e) {
8
7
  e = e || {};
9
- const r = e.projection !== void 0 ? e.projection : "EPSG:3857", t = e.tileGrid !== void 0 ? e.tileGrid : o({
10
- extent: m(r),
8
+ const r = e.projection !== void 0 ? e.projection : "EPSG:3857", t = e.tileGrid !== void 0 ? e.tileGrid : l({
9
+ extent: c(r),
11
10
  maxResolution: e.maxResolution,
12
11
  maxZoom: e.maxZoom,
13
12
  minZoom: e.minZoom,
@@ -17,6 +16,7 @@ class g extends d {
17
16
  attributions: e.attributions,
18
17
  cacheSize: e.cacheSize,
19
18
  crossOrigin: e.crossOrigin,
19
+ referrerPolicy: e.referrerPolicy,
20
20
  interpolate: e.interpolate,
21
21
  projection: r,
22
22
  reprojectionErrorThreshold: e.reprojectionErrorThreshold,
@@ -40,42 +40,34 @@ class g extends d {
40
40
  return this.gutter_;
41
41
  }
42
42
  }
43
- const h = '&#169; <a href="https://www.openstreetmap.org/copyright" target="_blank">OpenStreetMap</a> contributors.';
44
- class b extends g {
43
+ const u = '&#169; <a href="https://www.openstreetmap.org/copyright" target="_blank">OpenStreetMap</a> contributors.';
44
+ class o extends n {
45
45
  /**
46
46
  * @param {Options} [options] Open Street Map options.
47
47
  */
48
48
  constructor(e) {
49
49
  e = e || {};
50
50
  let r;
51
- e.attributions !== void 0 ? r = e.attributions : r = [h];
52
- const t = e.crossOrigin !== void 0 ? e.crossOrigin : "anonymous", l = e.url !== void 0 ? e.url : "https://tile.openstreetmap.org/{z}/{x}/{y}.png";
51
+ e.attributions !== void 0 ? r = e.attributions : r = [u];
52
+ const t = e.url !== void 0 ? e.url : "https://tile.openstreetmap.org/{z}/{x}/{y}.png";
53
53
  super({
54
54
  attributions: r,
55
55
  attributionsCollapsible: !1,
56
56
  cacheSize: e.cacheSize,
57
- crossOrigin: t,
57
+ crossOrigin: e.crossOrigin !== void 0 ? e.crossOrigin : "anonymous",
58
+ referrerPolicy: e.referrerPolicy || "origin-when-cross-origin",
58
59
  interpolate: e.interpolate,
59
60
  maxZoom: e.maxZoom !== void 0 ? e.maxZoom : 19,
60
61
  reprojectionErrorThreshold: e.reprojectionErrorThreshold,
61
- tileLoadFunction: (
62
- /**
63
- * @param {import("../ImageTile.js").default} tile Image tile
64
- * @param {string} src Image src
65
- */
66
- (i, c) => {
67
- const a = i.getImage();
68
- !u && a instanceof HTMLImageElement && (a.referrerPolicy = "origin-when-cross-origin"), (e.tileLoadFunction || s)(i, c);
69
- }
70
- ),
62
+ tileLoadFunction: e.tileLoadFunction,
71
63
  transition: e.transition,
72
- url: l,
64
+ url: t,
73
65
  wrapX: e.wrapX,
74
66
  zDirection: e.zDirection
75
67
  });
76
68
  }
77
69
  }
78
70
  export {
79
- h as ATTRIBUTION,
80
- b as default
71
+ u as ATTRIBUTION,
72
+ o as default
81
73
  };