@paris-ias/list 1.0.181 → 1.0.182

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.
package/dist/module.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@paris-ias/list",
3
3
  "configKey": "list",
4
- "version": "1.0.181",
4
+ "version": "1.0.182",
5
5
  "builder": {
6
6
  "@nuxt/module-builder": "0.8.4",
7
7
  "unbuild": "2.0.0"
@@ -77,7 +77,6 @@ const startDay = ref(
77
77
  const startTime = ref(detailedStart.hours)
78
78
  const detailedStop = getDetailedFormatedDate(props.item.stop, locale.value)
79
79
  const stopTime = ref(detailedStop.hours)
80
- console.log("locale", props.item)
81
80
  </script>
82
81
 
83
82
  <style lang="scss" scoped></style>
@@ -1,12 +1,12 @@
1
1
  <template>
2
2
  <v-row v-ripple no-gutters class="cursor-pointer highlight-on-hover py-2">
3
- <v-col v-if="mdAndUp" cols="2">
3
+ <v-col v-if="mdAndUp" cols="1">
4
4
  <MiscAtomsDateStamp
5
5
  v-if="item.start"
6
6
  :loading
7
7
  :date-start="item.start"
8
8
  :date-stop="item.stop"
9
- class="pr-6 mt-md-2"
9
+ class="pr-4 mt-md-2"
10
10
  />
11
11
  </v-col>
12
12
  <v-col v-if="mdAndUp" cols="1">
@@ -17,11 +17,11 @@
17
17
  item && item.image && item.image.url ? item.image.url : '/default.png'
18
18
  "
19
19
  :ratio="1 / 1"
20
- :width="80"
20
+ :width="70"
21
21
  />
22
22
  </v-col>
23
23
 
24
- <v-col align-self="start" class="pl-2">
24
+ <v-col align-self="start" class="px-2">
25
25
  <v-skeleton-loader v-if="loading" type="chip" class="mr-3" width="120" />
26
26
  <v-chip
27
27
  v-else
@@ -69,7 +69,7 @@
69
69
  <v-skeleton-loader v-if="loading" type="text@3" class="mt-2" />
70
70
  <MDC
71
71
  v-else
72
- class="text-body-1 font-weight-light paragraph"
72
+ class="text-body-1 font-weight-light paragraph mt-n2"
73
73
  :value="`${highlightAndTruncate(
74
74
  85,
75
75
  item.summary,
@@ -78,12 +78,12 @@
78
78
  />
79
79
  </v-col>
80
80
 
81
- <v-col align-self="center" cols="auto">
81
+ <!-- <v-col align-self="center" cols="auto">
82
82
  <v-skeleton-loader v-if="loading" type="button" />
83
83
  <div v-else>
84
84
  <EventsBadges :item />
85
85
  </div>
86
- </v-col>
86
+ </v-col> -->
87
87
  </v-row>
88
88
  </template>
89
89
 
@@ -332,6 +332,4 @@ function redirectToMap(long, lat) {
332
332
  `https://www.openstreetmap.org/?mlat=${lat}&amp;mlon=${long}#map=19/${lat}/${long}`,
333
333
  )
334
334
  }
335
-
336
- console.log("Events", props.item)
337
335
  </script>
@@ -0,0 +1,150 @@
1
+ <template>
2
+ <svg
3
+ xmlns="http://www.w3.org/2000/svg"
4
+ viewBox="0 0 442.31067 372.62268"
5
+ class="logo-placeholder"
6
+ :class="{ 'logo-placeholder--idle': idle }"
7
+ >
8
+ <defs>
9
+ <clipPath id="clipPath18">
10
+ <path d="M 0,279.467 H 331.733 V 0 H 0 Z" class="IEA_0" />
11
+ </clipPath>
12
+ </defs>
13
+ <g transform="matrix(1.3333333,0,0,-1.3333333,0,372.62267)">
14
+ <g>
15
+ <g clip-path="url(#clipPath18)">
16
+ <g transform="translate(50.2753,39.9094)">
17
+ <path
18
+ d="m 0,0 -5.519,13.695 h -1.658 l -5.519,-13.626 -2.005,-0.63 v -0.721 h 5.248 v 0.698 L -11.335,0 -9.85,3.912 h 5.791 l 1.535,-4.053 -2.426,-0.443 v -0.698 h 6.955 v 0.721 z m -4.454,4.936 h -5.025 l 2.401,6.313 h 0.199 z m 20.316,7.245 2.079,0.652 v 0.722 h -5.37 V 12.833 L 14.526,12.181 10.195,1.535 5.864,12.391 8.363,12.833 v 0.722 H 1.014 v -0.722 l 2.227,-0.56 5.791,-13.695 h 1.089 z M 31.75,0 26.231,13.695 H 24.572 L 19.054,0.069 17.049,-0.561 v -0.721 h 5.246 v 0.698 L 20.415,0 21.899,3.912 h 5.792 L 29.225,-0.141 26.8,-0.584 v -0.698 h 6.955 v 0.721 z m -4.454,4.936 h -5.025 l 2.401,6.313 h 0.198 z m 10.32,-4.844 -2.202,-0.653 v -0.721 h 5.937 v 0.721 L 38.9,0.092 v 11.319 h 0.298 l 7.921,-10.458 1.782,-2.375 h 1.235 v 13.603 l 2.202,0.652 v 0.722 h -5.937 v -0.722 l 2.452,-0.652 V 2.865 h -0.272 l -6.215,8.315 -1.782,2.375 h -5.17 v -0.768 l 2.202,-0.629 z m 30.955,2.585 -0.52,0.163 -2.648,-3.101 c -0.57,-0.232 -1.212,-0.349 -1.956,-0.349 -3.563,0 -6.211,2.308 -6.211,6.898 0,4.101 2.129,6.711 5.073,6.711 2.302,0 3.737,-1.491 5.197,-4.056 l 0.693,0.047 -0.198,4.986 h -0.693 l -0.767,-0.817 c -1.063,0.444 -2.401,0.745 -3.811,0.745 -4.405,0 -8.288,-3.143 -8.288,-7.849 0,-4.708 3.462,-7.686 8.485,-7.686 2.204,0 3.59,0.418 5.173,1.232 z M 83.989,13.555 H 71.395 v -0.72 l 2.697,-0.443 V -0.121 l -2.697,-0.441 v -0.72 h 13.657 l 0.67,4.494 -0.496,0.095 -1.83,-2.448 c -0.62,-0.863 -1.017,-1.026 -2.477,-1.026 h -4.405 v 5.874 h 1.46 c 1.485,0 2.005,-0.397 2.5,-2.028 l 0.223,-0.722 h 0.619 V 9.456 H 80.697 L 80.474,8.687 c -0.47,-1.631 -1.015,-2.003 -2.5,-2.003 h -1.46 v 5.779 h 3.268 c 1.534,0 1.905,-0.209 2.747,-1.164 l 1.583,-1.843 0.471,0.163 z m 16.483,0 H 87.878 v -0.72 l 2.697,-0.443 V -0.121 l -2.697,-0.441 v -0.72 h 13.657 l 0.668,4.494 -0.495,0.095 -1.831,-2.448 c -0.618,-0.863 -1.015,-1.026 -2.475,-1.026 h -4.405 v 5.874 h 1.46 c 1.485,0 2.005,-0.397 2.5,-2.028 L 97.18,2.957 h 0.619 V 9.456 H 97.18 L 96.957,8.687 c -0.47,-1.631 -1.015,-2.003 -2.5,-2.003 h -1.46 v 5.779 h 3.267 c 1.535,0 1.905,-0.209 2.747,-1.164 l 1.584,-1.843 0.47,0.163 z M 115.469,3.026 c 0,1.771 -0.964,2.912 -2.968,3.821 -0.916,0.42 -1.732,0.723 -2.599,1.072 -1.734,0.699 -2.402,1.515 -2.402,2.842 0,1.468 1.039,2.378 2.402,2.378 1.708,0 2.773,-0.91 4.133,-3.681 l 0.765,0.046 -0.418,4.472 h -0.765 l -0.645,-0.77 c -0.741,0.42 -1.585,0.698 -2.847,0.698 -2.353,0 -4.676,-1.512 -4.676,-4.214 0,-1.842 0.963,-2.913 2.719,-3.728 0.768,-0.35 1.461,-0.583 2.254,-0.909 2.302,-0.908 2.995,-1.772 2.995,-3.192 0,-1.654 -1.212,-2.726 -3.019,-2.726 -2.056,0 -3.319,1.001 -4.752,4.311 l -0.742,-0.048 0.298,-5.1 h 0.766 l 0.642,0.769 c 0.939,-0.42 2.351,-0.698 3.615,-0.698 2.425,0 5.244,1.512 5.244,4.657 m 10.125,9.366 V -0.121 l -2.699,-0.441 v -0.72 h 7.671 c 5.175,0 8.735,3.212 8.735,7.43 0,4.195 -3.188,7.407 -8.586,7.407 h -7.82 v -0.72 z m 10.913,-6.244 c 0,-4.73 -2.425,-6.384 -5.743,-6.384 h -2.749 V 12.51 h 2.204 c 3.516,0 6.288,-1.655 6.288,-6.362 m 17.768,7.407 h -12.596 v -0.72 l 2.699,-0.443 V -0.121 l -2.699,-0.441 v -0.72 h 13.66 l 0.667,4.494 -0.494,0.095 -1.832,-2.448 c -0.618,-0.863 -1.013,-1.026 -2.475,-1.026 H 146.8 v 5.874 h 1.46 c 1.486,0 2.005,-0.397 2.5,-2.028 l 0.223,-0.722 h 0.619 v 6.499 h -0.619 L 150.76,8.687 c -0.47,-1.631 -1.014,-2.003 -2.5,-2.003 h -1.46 v 5.779 h 3.268 c 1.534,0 1.905,-0.209 2.746,-1.164 l 1.584,-1.843 0.471,0.163 z M 176.102,9.41 c 0,2.47 -2.176,4.145 -5.84,4.145 h -7.25 v -0.72 l 2.698,-0.443 V -0.117 l -2.698,-0.444 v -0.721 h 7.895 v 0.721 l -2.774,0.444 v 5.24 c 0.792,-0.115 1.758,-0.209 2.575,-0.209 3.195,0 5.394,1.933 5.394,4.496 m -2.669,-0.094 c 0,-2.352 -1.313,-3.427 -3.592,-3.427 -0.743,0 -1.262,0.048 -1.708,0.117 v 6.48 c 0.496,0.094 1.09,0.14 1.708,0.14 2.156,0 3.592,-1.001 3.592,-3.31 M 191.146,0 185.627,13.695 h -1.658 l -5.518,-13.626 -2.005,-0.63 v -0.721 h 5.247 v 0.698 L 179.812,0 l 1.484,3.912 h 5.792 l 1.535,-4.053 -2.426,-0.443 v -0.698 h 6.955 v 0.721 z m -4.454,4.936 h -5.025 l 2.402,6.313 h 0.197 z m 21.084,4.824 c 0,2.331 -2.176,3.795 -5.987,3.795 h -7.349 v -0.72 l 2.697,-0.443 V -0.117 l -2.697,-0.444 v -0.721 h 7.695 v 0.721 l -2.576,0.444 v 5.615 h 0.867 c 1.411,0 2.005,-0.28 2.7,-1.632 l 1.386,-2.679 c 0.964,-1.839 1.533,-2.469 3.462,-2.469 h 2.425 v 0.698 c -1.337,0.141 -1.931,0.396 -2.499,0.934 -0.569,0.535 -1.162,1.794 -1.855,3.073 -0.569,1.025 -1.508,1.98 -2.821,2.376 v 0.256 c 2.821,0.535 4.552,1.747 4.552,3.705 m -2.695,-0.117 c 0,-2.168 -1.536,-3.17 -3.788,-3.17 h -1.734 v 6.037 c 0.496,0.094 1.041,0.139 1.734,0.139 2.303,0 3.788,-0.909 3.788,-3.006 m 11.827,-9.76 v 12.508 l 2.771,0.442 v 0.722 h -7.99 v -0.722 l 2.797,-0.442 V -0.117 l -2.797,-0.444 v -0.721 h 7.99 v 0.721 z m 16.21,3.143 c 0,1.771 -0.964,2.912 -2.967,3.821 -0.917,0.42 -1.734,0.723 -2.601,1.072 -1.733,0.699 -2.401,1.515 -2.401,2.842 0,1.468 1.04,2.378 2.401,2.378 1.708,0 2.774,-0.91 4.134,-3.681 l 0.767,0.046 -0.42,4.472 h -0.767 l -0.643,-0.77 c -0.743,0.42 -1.584,0.698 -2.846,0.698 -2.353,0 -4.677,-1.512 -4.677,-4.214 0,-1.842 0.964,-2.913 2.719,-3.728 0.767,-0.35 1.461,-0.583 2.253,-0.909 2.304,-0.908 2.997,-1.772 2.997,-3.192 0,-1.654 -1.213,-2.726 -3.022,-2.726 -2.054,0 -3.316,1.001 -4.749,4.311 l -0.742,-0.048 0.296,-5.1 h 0.768 l 0.64,0.769 c 0.94,-0.42 2.352,-0.698 3.615,-0.698 2.427,0 5.245,1.512 5.245,4.657"
19
+ class="IEA_1"
20
+ />
21
+ </g>
22
+ <g transform="translate(41.8593,63.0891)">
23
+ <path
24
+ d="m 0,0 v 12.509 l 2.772,0.441 v 0.723 h -7.99 V 12.95 l 2.796,-0.441 V 0 l -2.796,-0.442 v -0.722 h 7.99 v 0.722 z M 7.304,0.209 5.102,-0.442 v -0.722 h 5.936 v 0.722 L 8.587,0.209 V 11.53 h 0.298 l 7.921,-10.458 1.783,-2.377 h 1.235 v 13.603 l 2.202,0.652 v 0.723 H 16.088 V 12.95 L 18.54,12.298 V 2.982 h -0.272 l -6.214,8.316 -1.783,2.375 H 5.102 v -0.77 l 2.202,-0.628 z m 27.465,2.935 c 0,1.77 -0.964,2.912 -2.968,3.821 -0.915,0.419 -1.733,0.722 -2.6,1.071 -1.732,0.699 -2.401,1.515 -2.401,2.844 0,1.468 1.039,2.377 2.401,2.377 1.709,0 2.774,-0.909 4.134,-3.682 l 0.767,0.046 -0.42,4.472 h -0.766 l -0.645,-0.77 c -0.743,0.421 -1.584,0.7 -2.846,0.7 -2.353,0 -4.676,-1.512 -4.676,-4.214 0,-1.842 0.963,-2.914 2.72,-3.729 0.767,-0.351 1.46,-0.584 2.253,-0.909 2.302,-0.909 2.995,-1.772 2.995,-3.193 0,-1.655 -1.213,-2.726 -3.02,-2.726 -2.055,0 -3.318,1.001 -4.751,4.311 l -0.742,-0.046 0.297,-5.101 h 0.767 l 0.643,0.769 c 0.938,-0.42 2.35,-0.699 3.612,-0.699 2.427,0 5.246,1.511 5.246,4.658 m 17.32,6.152 -0.89,4.377 H 37.713 l -0.866,-4.377 0.495,-0.14 1.337,1.793 c 1.064,1.399 1.559,1.701 2.821,1.701 h 1.832 V 0 L 40.46,-0.442 v -0.722 h 8.165 v 0.722 L 45.754,0 v 12.65 h 1.658 c 1.287,0 1.757,-0.302 2.821,-1.701 L 51.569,9.156 Z M 59.118,0 v 12.509 l 2.772,0.441 v 0.723 H 53.898 V 12.95 l 2.798,-0.441 V 0 l -2.798,-0.442 v -0.722 h 7.992 v 0.722 Z M 79.09,9.296 78.199,13.673 H 64.713 l -0.865,-4.377 0.494,-0.14 1.337,1.793 c 1.064,1.399 1.559,1.701 2.822,1.701 h 1.831 V 0 l -2.871,-0.442 v -0.722 h 8.164 v 0.722 L 72.753,0 v 12.65 h 1.659 c 1.287,0 1.757,-0.302 2.821,-1.701 L 78.57,9.156 Z m 15.075,3.002 V 4.121 c 0,-2.563 -1.461,-4.426 -4.159,-4.426 -2.872,0 -4.581,1.235 -4.581,4.379 v 8.435 l 2.699,0.441 v 0.723 H 80.503 V 12.95 l 2.45,-0.441 V 3.725 c 0,-3.565 2.323,-5.286 6.335,-5.286 3.936,0 6.135,2.444 6.135,5.566 v 8.293 l 2.203,0.652 v 0.723 H 91.961 V 12.95 Z m 20.339,-3.002 -0.891,4.377 h -13.485 l -0.866,-4.377 0.495,-0.14 1.337,1.793 c 1.064,1.399 1.558,1.701 2.821,1.701 h 1.832 V 0 l -2.872,-0.442 v -0.722 h 8.165 v 0.722 L 108.168,0 v 12.65 h 1.659 c 1.287,0 1.756,-0.302 2.821,-1.701 l 1.337,-1.793 z m 8.644,3.215 V -0.003 l -2.697,-0.441 v -0.72 h 7.67 c 5.173,0 8.735,3.212 8.735,7.431 0,4.194 -3.19,7.406 -8.588,7.406 h -7.817 v -0.721 z m 10.914,-6.244 c 0,-4.731 -2.427,-6.386 -5.743,-6.386 h -2.75 v 12.746 h 2.206 c 3.514,0 6.287,-1.654 6.287,-6.36 m 8.609,5.892 c 0,1.095 -0.669,1.864 -1.754,1.864 -0.867,0 -1.534,-0.676 -1.534,-1.467 0,-0.722 0.469,-1.235 1.113,-1.235 0.247,0 0.421,0.024 0.594,0.117 l 0.049,0.023 0.148,-0.07 C 141.114,10.319 140.2,9.086 138.715,8.015 l 0.446,-0.467 c 2.077,1.212 3.51,2.771 3.51,4.611 m 14.626,1.514 h -12.593 v -0.721 l 2.697,-0.441 V -0.003 l -2.697,-0.441 v -0.72 h 13.659 l 0.667,4.494 -0.495,0.095 -1.831,-2.448 c -0.62,-0.863 -1.015,-1.026 -2.475,-1.026 h -4.404 v 5.874 h 1.459 c 1.485,0 2.005,-0.396 2.499,-2.029 l 0.222,-0.722 h 0.62 v 6.498 h -0.62 L 153.783,8.804 C 153.312,7.173 152.769,6.8 151.284,6.8 h -1.459 v 5.78 h 3.265 c 1.535,0 1.906,-0.209 2.747,-1.165 l 1.584,-1.843 0.47,0.164 z m 18.76,-4.377 -0.891,4.377 h -13.485 l -0.866,-4.377 0.496,-0.14 1.335,1.793 c 1.065,1.399 1.56,1.701 2.821,1.701 h 1.832 V 0 l -2.872,-0.442 v -0.722 h 8.165 v 0.722 L 169.721,0 v 12.65 h 1.658 c 1.288,0 1.757,-0.302 2.822,-1.701 l 1.336,-1.793 z m 15.076,3.002 V 4.121 c 0,-2.563 -1.462,-4.426 -4.16,-4.426 -2.872,0 -4.581,1.235 -4.581,4.379 v 8.435 l 2.699,0.441 v 0.723 h -7.62 V 12.95 l 2.45,-0.441 V 3.725 c 0,-3.565 2.324,-5.286 6.333,-5.286 3.937,0 6.137,2.444 6.137,5.566 v 8.293 l 2.202,0.652 v 0.723 h -5.666 V 12.95 Z m 7.795,0.213 V -0.003 l -2.699,-0.441 v -0.72 h 7.671 c 5.174,0 8.735,3.212 8.735,7.431 0,4.194 -3.188,7.406 -8.587,7.406 h -7.819 v -0.721 z m 10.913,-6.244 c 0,-4.731 -2.424,-6.386 -5.744,-6.386 h -2.748 v 12.746 h 2.204 c 3.515,0 6.288,-1.654 6.288,-6.36 m 17.397,7.406 h -12.595 v -0.721 l 2.697,-0.441 V -0.003 l -2.697,-0.441 v -0.72 H 228.3 l 0.668,4.494 -0.494,0.095 -1.832,-2.448 c -0.617,-0.863 -1.015,-1.026 -2.475,-1.026 h -4.404 v 5.874 h 1.459 c 1.486,0 2.006,-0.396 2.501,-2.029 l 0.222,-0.722 h 0.62 v 6.498 h -0.62 L 223.723,8.804 C 223.252,7.173 222.708,6.8 221.222,6.8 h -1.459 v 5.78 h 3.266 c 1.536,0 1.905,-0.209 2.747,-1.165 l 1.584,-1.843 0.471,0.164 z M 241.863,3.144 c 0,1.77 -0.964,2.912 -2.967,3.821 -0.916,0.419 -1.733,0.722 -2.6,1.071 -1.733,0.699 -2.403,1.515 -2.403,2.844 0,1.468 1.042,2.377 2.403,2.377 1.708,0 2.773,-0.909 4.134,-3.682 l 0.767,0.046 -0.421,4.472 h -0.766 l -0.643,-0.77 c -0.742,0.421 -1.585,0.7 -2.849,0.7 -2.351,0 -4.676,-1.512 -4.676,-4.214 0,-1.842 0.965,-2.914 2.721,-3.729 0.767,-0.351 1.461,-0.584 2.254,-0.909 2.302,-0.909 2.996,-1.772 2.996,-3.193 0,-1.655 -1.214,-2.726 -3.021,-2.726 -2.056,0 -3.318,1.001 -4.751,4.311 l -0.743,-0.046 0.297,-5.101 h 0.768 l 0.641,0.769 c 0.94,-0.42 2.35,-0.699 3.615,-0.699 2.424,0 5.244,1.511 5.244,4.658"
25
+ class="IEA_2"
26
+ />
27
+ </g>
28
+ <g transform="translate(131.8358,58.1926)">
29
+ <path
30
+ d="M 0,0 C -0.287,0.521 -0.967,0.664 -1.623,0.366 -2.381,-0.01 -3.796,-1.163 -5.096,-2.217 l 0.265,-0.51 c 1.648,0.446 3.485,0.872 4.244,1.248 C 0.083,-1.109 0.288,-0.523 0,0"
31
+ class="IEA_3"
32
+ />
33
+ </g>
34
+ <g transform="translate(196.7182,81.3206)">
35
+ <path
36
+ d="m 0,0 c -0.287,0.522 -0.968,0.664 -1.623,0.367 -0.76,-0.376 -2.174,-1.529 -3.474,-2.583 l 0.266,-0.511 c 1.647,0.446 3.484,0.873 4.243,1.248 C 0.082,-1.109 0.286,-0.523 0,0"
37
+ class="IEA_4"
38
+ />
39
+ </g>
40
+ <g transform="translate(187.6986,174.0945)">
41
+ <path
42
+ d="M 0,0 V 5.57 H 0.435 L 0.836,8.04 0.153,8.564 H -0.934 L -1.642,8.04 -1.298,5.57 h 0.491 V 0 h -0.012 c -0.772,0.422 -1.889,0.689 -3.096,0.8 v 6.087 h 0.438 l 0.394,2.474 -0.68,0.524 H -4.849 L -5.554,9.361 -5.211,6.887 h 0.495 V 0.841 C -6.576,0.905 -8.507,0.632 -9.646,0 h -32.771 v 5.57 h 0.435 l 0.4,2.47 -0.683,0.524 h -1.086 l -0.705,-0.524 0.345,-2.47 h 0.49 V 0 h -0.025 c -0.764,0.419 -1.883,0.686 -3.084,0.8 v 6.087 h 0.434 l 0.403,2.474 -0.683,0.524 h -1.091 l -0.704,-0.524 0.341,-2.474 h 0.494 V 0.841 C -48.995,0.908 -50.931,0.635 -52.076,0 h -36.99 v -2.064 h 37.619 l 0.267,0.19 c 1.27,0.911 5.752,0.909 7.053,-0.003 l 0.267,-0.187 h 34.839 l 0.266,0.19 c 1.274,0.911 5.751,0.909 7.05,-0.003 l 0.267,-0.187 H 36.169 V 0 Z"
43
+ class="IEA_5"
44
+ />
45
+ </g>
46
+ <g transform="translate(161.2504,166.1653)">
47
+ <path
48
+ d="m 0,0 c -10.304,0 -18.693,-6.649 -18.693,-14.823 h 1.933 c 0,6.538 8.088,11.857 16.76,11.857 8.672,0 16.761,-5.319 16.761,-11.857 h 1.933 C 18.694,-6.649 10.308,0 0,0"
49
+ class="IEA_6"
50
+ />
51
+ </g>
52
+ <g transform="translate(203.6996,166.1653)">
53
+ <path
54
+ d="m 0,0 c -10.308,0 -18.697,-6.649 -18.697,-14.823 h 1.933 c 0,6.538 8.089,11.857 16.764,11.857 8.669,0 16.761,-5.319 16.761,-11.857 H 18.69 C 18.69,-6.649 10.301,0 0,0"
55
+ class="IEA_7"
56
+ />
57
+ </g>
58
+ <g transform="translate(118.8026,166.1653)">
59
+ <path
60
+ d="m 0,0 c -10.308,0 -18.694,-6.649 -18.694,-14.823 h 1.932 c 0,6.538 8.09,11.857 16.762,11.857 8.672,0 16.76,-5.319 16.76,-11.857 h 1.934 C 18.694,-6.649 10.305,0 0,0"
61
+ class="IEA_8"
62
+ />
63
+ </g>
64
+ <g transform="translate(182.4691,170.8074)">
65
+ <path
66
+ d="M 0,0 C -0.763,0 -2.344,-0.082 -3.461,-0.61 H -38.985 C -40.1,-0.082 -41.68,0 -42.445,0 c -0.761,0 -2.34,-0.082 -3.456,-0.61 h -37.934 l 1.936,-1.549 h 34.867 v -8.037 l 0.33,-0.232 c 0.84,-0.578 2.346,-0.765 3.484,-0.813 v -8.221 h 1.551 v 8.221 c 1.139,0.048 2.644,0.235 3.482,0.813 l 0.329,0.232 v 8.037 h 33.267 v -8.037 l 0.334,-0.232 c 0.831,-0.578 2.34,-0.765 3.481,-0.813 v -8.221 h 1.549 v 8.221 c 1.136,0.048 2.645,0.235 3.48,0.813 l 0.336,0.232 v 8.037 h 34.347 l 2.463,1.549 H 3.461 C 2.343,-0.082 0.762,0 0,0 m -39.401,-9.323 h -6.084 v 7.196 c 0.328,0.248 1.438,0.578 3.04,0.578 1.604,0 2.715,-0.33 3.044,-0.578 z m 42.442,0 h -6.083 v 7.196 c 0.327,0.248 1.438,0.578 3.042,0.578 1.6,0 2.712,-0.33 3.041,-0.578 z"
67
+ class="IEA_9"
68
+ />
69
+ </g>
70
+ <g transform="translate(117.331,189.3777)">
71
+ <path
72
+ d="m 0,0 v 0.991 c 3.935,0 4.503,0.809 4.503,5.547 v 15.407 c 0,4.738 -0.568,5.491 -4.503,5.491 v 1 h 12.795 v -1 c -3.932,0 -4.501,-0.753 -4.501,-5.491 V 6.538 C 8.294,1.8 8.863,0.991 12.795,0.991 V 0 Z"
73
+ class="IEA_10"
74
+ />
75
+ </g>
76
+ <g transform="translate(143.0155,190.3714)">
77
+ <path
78
+ d="m 0,0 c 3.928,0 4.5,0.807 4.5,5.544 v 15.405 c 0,4.738 -0.572,5.496 -4.5,5.496 v 0.994 h 21.607 l 0.426,-6.255 H 21.037 L 20.8,22.13 c -0.66,2.464 -1.134,3.557 -5.494,3.557 H 8.291 V 14.928 h 2.371 c 4.737,0 5.495,0.568 5.495,4.548 h 0.998 V 8.625 h -0.998 c 0,3.979 -0.758,4.55 -5.495,4.55 H 8.291 V 6.256 c 0,-4.738 0.565,-5.497 4.5,-5.497 h 4.079 c 4.356,0 4.877,1.086 5.495,3.601 l 0.237,0.946 h 0.993 l -0.375,-6.3 -23.22,0 z"
79
+ class="IEA_11"
80
+ />
81
+ </g>
82
+ <g transform="translate(181.1186,193.9754)">
83
+ <path
84
+ d="M 0,0 C -1.137,-2.563 -0.237,-3.607 3.7,-3.607 V -4.601 H -7.395 v 0.994 c 3.985,0 4.22,0.807 5.69,4.125 L 8.724,24.639 H 9.34 L 19.812,0.518 c 1.467,-3.318 1.706,-4.125 5.636,-4.125 V -4.601 H 12.327 v 0.994 c 3.929,0 4.834,0.997 3.694,3.607 L 13.747,5.256 H 2.277 Z M 7.965,18.354 3.033,6.936 h 9.911 z"
85
+ class="IEA_12"
86
+ />
87
+ </g>
88
+ <g transform="translate(161.2519,91.8313)">
89
+ <path
90
+ d="m 0,0 c -45.746,0 -82.957,37.216 -82.957,82.958 0,45.742 37.211,82.956 82.957,82.956 45.742,0 82.954,-37.214 82.954,-82.956 C 82.954,37.216 45.742,0 0,0 m 0,162.208 c -43.703,0 -79.249,-35.549 -79.249,-79.25 0,-43.703 35.546,-79.256 79.249,-79.256 43.699,0 79.251,35.553 79.251,79.256 0,43.701 -35.552,79.25 -79.251,79.25"
91
+ class="IEA_13"
92
+ />
93
+ </g>
94
+ <g transform="translate(161.2519,248.5745)">
95
+ <path
96
+ d="m 0,0 c -40.696,0 -73.802,-33.111 -73.802,-73.801 0,-40.696 33.106,-73.807 73.802,-73.807 40.699,0 73.803,33.111 73.803,73.807 C 73.803,-33.111 40.699,0 0,0 m 0,-149.364 c -41.663,0 -75.558,33.894 -75.558,75.563 0,41.659 33.895,75.553 75.558,75.553 41.661,0 75.555,-33.894 75.555,-75.553 0,-41.669 -33.894,-75.563 -75.555,-75.563"
97
+ class="IEA_14"
98
+ />
99
+ </g>
100
+ <g transform="translate(184.1967,132.8352)">
101
+ <path
102
+ d="m 0,0 c 0,1.267 1.149,2.258 2.946,2.258 1.423,0 2.709,-0.457 3.989,-1.505 l 0.914,1.21 C 6.446,3.087 5.004,3.655 2.984,3.655 c -2.626,0 -4.54,-1.575 -4.54,-3.791 0,-2.29 1.46,-3.319 4.639,-4.011 2.905,-0.613 3.598,-1.343 3.598,-2.648 0,-1.403 -1.226,-2.372 -3.08,-2.372 -1.918,0 -3.303,0.651 -4.745,1.956 l -0.971,-1.143 c 1.661,-1.483 3.462,-2.216 5.658,-2.216 2.744,0 4.719,1.54 4.719,3.93 0,2.138 -1.422,3.268 -4.506,3.932 C 0.711,-2.054 0,-1.32 0,0 m -8.164,-10.37 h 1.559 V 3.459 h -1.559 z m -6.476,9.641 c 0,-1.798 -1.485,-2.869 -3.559,-2.869 h -4.25 V 2.02 h 4.273 c 2.235,0 3.536,-1.025 3.536,-2.749 m 2.071,-9.641 -4.245,5.652 c 2.174,0.397 3.753,1.733 3.753,4.051 0,2.49 -1.953,4.126 -4.999,4.126 h -5.947 V -10.37 h 1.558 v 5.375 h 3.955 l 4.014,-5.375 z m -19.413,5.055 h -6.307 l 3.162,7.052 z m -2.394,8.875 h -1.459 l -6.305,-13.93 h 1.599 l 1.638,3.654 h 7.532 l 1.619,-3.654 h 1.681 z m -11.003,-4.567 c 0,-1.839 -1.502,-3.063 -3.798,-3.063 h -3.422 v 6.09 h 3.503 c 2.234,0 3.717,-1.025 3.717,-3.027 m 1.576,0.061 c 0,2.747 -2.054,4.405 -5.172,4.405 h -5.181 V -10.37 h 1.557 v 4.88 h 3.367 c 2.941,0 5.429,1.537 5.429,4.544"
103
+ class="IEA_15"
104
+ />
105
+ </g>
106
+ </g>
107
+ </g>
108
+ </g>
109
+ </svg>
110
+ </template>
111
+
112
+ <script setup lang="ts">
113
+ defineProps<{
114
+ idle?: boolean
115
+ }>()
116
+ </script>
117
+
118
+ <style>
119
+ .logo-placeholder {
120
+ width: 200px;
121
+ height: 200px;
122
+ animation: logo-pulse 1.5s ease-in-out infinite;
123
+ }
124
+ .logo-placeholder [class^=IEA_] {
125
+ fill: #000;
126
+ stroke: none;
127
+ }
128
+ .logo-placeholder--idle {
129
+ animation: logo-idle 1s ease-out 1 forwards;
130
+ }
131
+
132
+ @keyframes logo-pulse {
133
+ 0%, 100% {
134
+ opacity: 0.15;
135
+ }
136
+ 50% {
137
+ opacity: 0.45;
138
+ }
139
+ }
140
+ @keyframes logo-idle {
141
+ 0% {
142
+ opacity: 0;
143
+ transform: scale(0.9);
144
+ }
145
+ 100% {
146
+ opacity: 0.2;
147
+ transform: scale(1);
148
+ }
149
+ }
150
+ </style>
@@ -1,16 +1,23 @@
1
1
  <template>
2
- <component
3
- :is="itemTemplate"
2
+ <NuxtLink
4
3
  v-for="(item, index) in rootStore.results[type]?.items || []"
5
- :key="index"
6
- :item="item"
7
- :index="index"
8
- />
4
+ :key="(item.name || item.lastname) + type + index"
5
+ :to="
6
+ localePath({
7
+ name: pathPrefix,
8
+ params: { slug: item.slug },
9
+ })
10
+ "
11
+ class="text-decoration-none text-black w-100"
12
+ >
13
+ <component :is="itemTemplate" :item="item" :index="index" />
14
+ </NuxtLink>
9
15
  </template>
10
16
  <script setup>
11
17
  import { capitalize } from "../../../composables/useUtils"
12
18
  import { useRootStore } from "../../../stores/root"
13
- import { useNuxtApp, resolveComponent, computed } from "#imports"
19
+ import { useNuxtApp, resolveComponent, computed, useLocalePath } from "#imports"
20
+ const localePath = useLocalePath()
14
21
  const { $stores } = useNuxtApp()
15
22
  const rootStore = useRootStore()
16
23
 
@@ -19,6 +26,10 @@ const props = defineProps({
19
26
  type: String,
20
27
  default: "people",
21
28
  },
29
+ pathPrefix: {
30
+ type: String,
31
+ default: "people-slug",
32
+ },
22
33
  })
23
34
 
24
35
  const itemTemplate = computed(() =>
@@ -30,6 +41,4 @@ const itemTemplate = computed(() =>
30
41
  ).toString(),
31
42
  ),
32
43
  )
33
- console.log("ResultsList props:", itemTemplate, $stores[props.type].view.name)
34
- console
35
44
  </script>
@@ -45,6 +45,7 @@
45
45
  </v-card>
46
46
  </v-menu>
47
47
  <v-text-field
48
+ ref="textFieldRef"
48
49
  :id="`global-search-input-${type}`"
49
50
  v-model.trim="search"
50
51
  :placeholder="
@@ -147,10 +148,14 @@ const toggleFilter = (option) => {
147
148
  })
148
149
  }
149
150
 
151
+ const textFieldRef = ref(null)
152
+
150
153
  const navigateToSearch = () => {
154
+ const term = (textFieldRef.value?.$el?.querySelector("input")?.value ?? rootStore.search ?? "").trim()
155
+ rootStore.search = term
151
156
  navigateTo({
152
157
  path: localePath("/search"),
153
- query: rootStore.search ? { search: rootStore.search } : {},
158
+ query: term ? { search: term } : {},
154
159
  })
155
160
  }
156
161
 
@@ -1,18 +1,15 @@
1
1
  <template>
2
2
  <div>
3
- <div class="d-flex align-center justify-space-between my-6">
3
+ <div class="d-flex align-center justify-space-between my-2">
4
4
  <v-btn
5
5
  variant="text"
6
- size="large"
7
- class=""
6
+ class="mr-2"
8
7
  @click="$emit('toggle', type)"
9
8
  :disabled="
10
9
  $rootStore.results[type] && $rootStore.results[type]?.total === 0
11
10
  "
12
11
  >
13
- <v-icon size="large">{{
14
- open ? "mdi-chevron-down" : "mdi-chevron-right"
15
- }}</v-icon>
12
+ <v-icon>{{ open ? "mdi-chevron-down" : "mdi-chevron-right" }}</v-icon>
16
13
  </v-btn>
17
14
  <div
18
15
  class="d-flex flex-column cursor-pointer"
@@ -59,22 +56,29 @@
59
56
  </div>
60
57
  </div>
61
58
  <v-spacer />
59
+ <v-btn
60
+ color="default"
61
+ variant="text"
62
+ size="small"
63
+ rounded="0"
64
+ v-if="$rootStore.results[type] && $rootStore.results[type]?.total > 3"
65
+ :to="
66
+ localePath({
67
+ path: type === 'people' ? '/people' : '/activities/' + type,
68
+ query: { search: $rootStore.search },
69
+ })
70
+ "
71
+ >
72
+ {{
73
+ $t(
74
+ "list.pls-x-more",
75
+ [$rootStore.results[type] && $rootStore.results[type].total - 3],
76
+ $rootStore.results[type] && $rootStore.results[type].total - 3,
77
+ )
78
+ }}
79
+ </v-btn>
62
80
  </div>
63
81
  <slot />
64
- <v-btn
65
- class="ma-2 float-right"
66
- color="default"
67
- variant="text"
68
- rounded="0"
69
- v-if="$rootStore.results[type] && $rootStore.results[type]?.total > 0"
70
- :to="localePath(type === 'people' ? '/people' : '/activities/' + type)"
71
- >
72
- {{
73
- $t("list.pls-x-more", [
74
- $rootStore.results[type] && $rootStore.results[type].total,
75
- ])
76
- }}
77
- </v-btn>
78
82
  </div>
79
83
  <v-divider></v-divider>
80
84
  </template>
@@ -11,7 +11,7 @@
11
11
  :to="
12
12
  localePath({
13
13
  name: pathPrefix,
14
- params: { slug: JSON.parse(item.slug) },
14
+ params: { slug: item.slug },
15
15
  })
16
16
  "
17
17
  class="text-decoration-none text-black w-100"
@@ -24,7 +24,7 @@
24
24
  :path="
25
25
  localePath({
26
26
  name: pathPrefix,
27
- params: { slug: JSON.parse(item.slug) },
27
+ params: { slug: item.slug },
28
28
  })
29
29
  "
30
30
  />
@@ -113,7 +113,6 @@ rootStore.loadRouteQuery(props.type)
113
113
 
114
114
  // Apollo: reactive query using variables computed from store
115
115
  const variables = computed(() => {
116
- console.log("computed variables loop")
117
116
  return rootStore.buildListVariables(props.type, locale.value)
118
117
  })
119
118
 
@@ -0,0 +1,350 @@
1
+ <template>
2
+ <v-overlay
3
+ :model-value="active"
4
+ scrim="white"
5
+ class="align-center justify-center loader-overlay"
6
+ :class="{ 'loader-overlay--inactive': !active }"
7
+ >
8
+ <div
9
+ v-motion
10
+ :initial="{ scale: 0.8, opacity: 0 }"
11
+ :enter="{
12
+ scale: 1,
13
+ opacity: 1,
14
+ transition: { duration: 800, ease: 'easeOut' },
15
+ }"
16
+ :leave="{ scale: 0.9, opacity: 0, transition: { duration: 400 } }"
17
+ class="logo-container"
18
+ >
19
+ <ListAtomsLogoPlaceholder class="loader-logo" :class="{ 'loader-logo--active': active }" />
20
+ </div>
21
+ </v-overlay>
22
+ </template>
23
+
24
+ <script setup lang="ts">
25
+ defineProps<{
26
+ active: boolean
27
+ }>()
28
+ </script>
29
+
30
+ <style scoped>
31
+ .loader-overlay {
32
+ background: rgb(255, 255, 255) !important;
33
+ backdrop-filter: blur(3px);
34
+ transition: all 0.8s cubic-bezier(0.4, 0, 0.2, 1);
35
+ height: calc(100vh - 5px) !important;
36
+ top: 5px !important;
37
+ }
38
+
39
+ .loader-overlay--inactive {
40
+ opacity: 0;
41
+ transform: scale(0.95);
42
+ }
43
+ .loader-overlay--inactive .logo-container {
44
+ transform: scale(0.9);
45
+ opacity: 0;
46
+ transition: all 0.6s cubic-bezier(0.4, 0, 0.2, 1);
47
+ }
48
+
49
+ .loader-logo {
50
+ filter: drop-shadow(0 4px 12px rgba(0, 0, 0, 0.1));
51
+ max-width: 350px;
52
+ height: auto;
53
+ width: 280px;
54
+ }
55
+
56
+ .v-overlay--active {
57
+ animation: fade-in 0.5s ease-in-out;
58
+ }
59
+
60
+ @keyframes fade-in {
61
+ from {
62
+ opacity: 0;
63
+ }
64
+ to {
65
+ opacity: 1;
66
+ }
67
+ }
68
+ .loader-logo--active :deep([class^="IEA_"]) {
69
+ fill: transparent;
70
+ stroke: #000;
71
+ stroke-opacity: 1;
72
+ fill-opacity: 1;
73
+ fill-rule: nonzero;
74
+ }
75
+
76
+ .loader-logo--active :deep(.IEA_0) {
77
+ stroke-dasharray: 1223 1225;
78
+ stroke-dashoffset: 1224;
79
+ animation: IEA_draw_0 3141ms ease 0ms 1 forwards;
80
+ }
81
+
82
+ .loader-logo--active :deep(.IEA_5) {
83
+ stroke-dasharray: 335 337;
84
+ stroke-dashoffset: 336;
85
+ animation: IEA_draw_5 3141ms ease 0ms 1 forwards;
86
+ }
87
+
88
+ .loader-logo--active :deep(.IEA_1) {
89
+ stroke-dasharray: 1351 1353;
90
+ stroke-dashoffset: 1352;
91
+ animation: IEA_draw_1 3141ms ease 0ms 1 forwards, stroke-fade 3141ms linear 0ms 1 forwards, fill-standard 3141ms ease 0ms 1 forwards;
92
+ }
93
+
94
+ .loader-logo--active :deep(.IEA_2) {
95
+ stroke-dasharray: 1311 1313;
96
+ stroke-dashoffset: 1312;
97
+ animation: IEA_draw_2 3141ms ease 0ms 1 forwards, stroke-fade 3141ms linear 0ms 1 forwards, fill-standard 3141ms ease 0ms 1 forwards;
98
+ }
99
+
100
+ .loader-logo--active :deep(.IEA_3),
101
+ .loader-logo--active :deep(.IEA_4) {
102
+ stroke-dasharray: 13 15;
103
+ stroke-dashoffset: 14;
104
+ }
105
+
106
+ .loader-logo--active :deep(.IEA_3) {
107
+ animation: IEA_draw_3 3141ms ease 0ms 1 forwards, stroke-fade 3141ms linear 0ms 1 forwards, fill-standard 3141ms ease 0ms 1 forwards;
108
+ }
109
+
110
+ .loader-logo--active :deep(.IEA_4) {
111
+ animation: IEA_draw_4 3141ms ease 0ms 1 forwards, stroke-fade 3141ms linear 0ms 1 forwards, fill-standard 3141ms ease 0ms 1 forwards;
112
+ }
113
+
114
+ .loader-logo--active :deep(.IEA_6),
115
+ .loader-logo--active :deep(.IEA_7),
116
+ .loader-logo--active :deep(.IEA_8) {
117
+ stroke-dasharray: 102 104;
118
+ stroke-dashoffset: 103;
119
+ }
120
+
121
+ .loader-logo--active :deep(.IEA_6) {
122
+ animation: IEA_draw_6 3141ms ease 0ms 1 forwards, stroke-fade 3141ms linear 0ms 1 forwards, fill-standard 3141ms ease 0ms 1 forwards;
123
+ }
124
+
125
+ .loader-logo--active :deep(.IEA_7) {
126
+ animation: IEA_draw_7 3141ms ease 0ms 1 forwards, stroke-fade 3141ms linear 0ms 1 forwards, fill-standard 3141ms ease 0ms 1 forwards;
127
+ }
128
+
129
+ .loader-logo--active :deep(.IEA_8) {
130
+ animation: IEA_draw_8 3141ms ease 0ms 1 forwards, stroke-fade 3141ms linear 0ms 1 forwards, fill-standard 3141ms ease 0ms 1 forwards;
131
+ }
132
+
133
+ .loader-logo--active :deep(.IEA_9) {
134
+ stroke-dasharray: 372 374;
135
+ stroke-dashoffset: 373;
136
+ animation: IEA_draw_9 3141ms ease 0ms 1 forwards, stroke-fade 3141ms linear 0ms 1 forwards, fill-standard 3141ms ease 0ms 1 forwards;
137
+ }
138
+
139
+ .loader-logo--active :deep(.IEA_10) {
140
+ stroke-dasharray: 96 98;
141
+ stroke-dashoffset: 97;
142
+ animation: IEA_draw_10 3141ms ease 0ms 1 forwards, stroke-fade 3141ms linear 0ms 1 forwards, fill-standard 3141ms ease 0ms 1 forwards;
143
+ }
144
+
145
+ .loader-logo--active :deep(.IEA_11) {
146
+ stroke-dasharray: 184 186;
147
+ stroke-dashoffset: 185;
148
+ animation: IEA_draw_11 3141ms ease 0ms 1 forwards, stroke-fade 3141ms linear 0ms 1 forwards, fill-standard 3141ms ease 0ms 1 forwards;
149
+ }
150
+
151
+ .loader-logo--active :deep(.IEA_12) {
152
+ stroke-dasharray: 169 171;
153
+ stroke-dashoffset: 170;
154
+ animation: IEA_draw_12 3141ms ease 0ms 1 forwards, stroke-fade 3141ms linear 0ms 1 forwards, fill-standard 3141ms ease 0ms 1 forwards;
155
+ }
156
+
157
+ .loader-logo--active :deep(.IEA_13) {
158
+ stroke-dasharray: 1020 1022;
159
+ stroke-dashoffset: 1021;
160
+ animation: IEA_draw_13 3141ms ease 0ms 1 forwards, stroke-fade 3141ms linear 0ms 1 forwards, fill-circles 3141ms ease 0ms 1 forwards;
161
+ }
162
+
163
+ .loader-logo--active :deep(.IEA_14) {
164
+ stroke-dasharray: 939 941;
165
+ stroke-dashoffset: 940;
166
+ animation: IEA_draw_14 3141ms ease 0ms 1 forwards, stroke-fade 3141ms linear 0ms 1 forwards, fill-circles 3141ms ease 0ms 1 forwards;
167
+ }
168
+
169
+ .loader-logo--active :deep(.IEA_15) {
170
+ stroke-dasharray: 326 328;
171
+ stroke-dashoffset: 327;
172
+ animation: IEA_draw_15 3141ms ease 0ms 1 forwards, stroke-fade 3141ms linear 0ms 1 forwards, fill-standard 3141ms ease 0ms 1 forwards;
173
+ }
174
+
175
+ @keyframes fill-standard {
176
+ 0%, 35% {
177
+ fill: transparent;
178
+ }
179
+ 60% {
180
+ fill: rgba(0, 0, 0, 0.3);
181
+ }
182
+ 80% {
183
+ fill: rgba(0, 0, 0, 0.7);
184
+ }
185
+ 100% {
186
+ fill: #000;
187
+ }
188
+ }
189
+ @keyframes fill-circles {
190
+ 0%, 35% {
191
+ fill: transparent;
192
+ }
193
+ 60% {
194
+ fill: rgba(0, 0, 0, 0.2);
195
+ }
196
+ 80% {
197
+ fill: rgba(0, 0, 0, 0.5);
198
+ }
199
+ 100% {
200
+ fill: #000;
201
+ }
202
+ }
203
+ @keyframes stroke-fade {
204
+ 0%, 65% {
205
+ stroke-opacity: 1;
206
+ }
207
+ 80% {
208
+ stroke-opacity: 0.5;
209
+ }
210
+ 95% {
211
+ stroke-opacity: 0.2;
212
+ }
213
+ 100% {
214
+ stroke-opacity: 0;
215
+ }
216
+ }
217
+ @keyframes draw {
218
+ 100% {
219
+ stroke-dashoffset: 0;
220
+ }
221
+ }
222
+ @keyframes IEA_draw_0 {
223
+ 5% {
224
+ stroke-dashoffset: 1224;
225
+ }
226
+ 30%, 100% {
227
+ stroke-dashoffset: 0;
228
+ }
229
+ }
230
+ @keyframes IEA_draw_1 {
231
+ 8% {
232
+ stroke-dashoffset: 1352;
233
+ }
234
+ 35%, 100% {
235
+ stroke-dashoffset: 0;
236
+ }
237
+ }
238
+ @keyframes IEA_draw_2 {
239
+ 10% {
240
+ stroke-dashoffset: 1312;
241
+ }
242
+ 40%, 100% {
243
+ stroke-dashoffset: 0;
244
+ }
245
+ }
246
+ @keyframes IEA_draw_3 {
247
+ 12% {
248
+ stroke-dashoffset: 14;
249
+ }
250
+ 45%, 100% {
251
+ stroke-dashoffset: 0;
252
+ }
253
+ }
254
+ @keyframes IEA_draw_4 {
255
+ 15% {
256
+ stroke-dashoffset: 14;
257
+ }
258
+ 50%, 100% {
259
+ stroke-dashoffset: 0;
260
+ }
261
+ }
262
+ @keyframes IEA_draw_5 {
263
+ 15.74% {
264
+ stroke-dashoffset: 336;
265
+ }
266
+ 43.52%, 100% {
267
+ stroke-dashoffset: 0;
268
+ }
269
+ }
270
+ @keyframes IEA_draw_6 {
271
+ 16.67% {
272
+ stroke-dashoffset: 103;
273
+ }
274
+ 44.44%, 100% {
275
+ stroke-dashoffset: 0;
276
+ }
277
+ }
278
+ @keyframes IEA_draw_7 {
279
+ 17.59% {
280
+ stroke-dashoffset: 103;
281
+ }
282
+ 45.37%, 100% {
283
+ stroke-dashoffset: 0;
284
+ }
285
+ }
286
+ @keyframes IEA_draw_8 {
287
+ 18.52% {
288
+ stroke-dashoffset: 103;
289
+ }
290
+ 46.3%, 100% {
291
+ stroke-dashoffset: 0;
292
+ }
293
+ }
294
+ @keyframes IEA_draw_9 {
295
+ 19.44% {
296
+ stroke-dashoffset: 373;
297
+ }
298
+ 47.22%, 100% {
299
+ stroke-dashoffset: 0;
300
+ }
301
+ }
302
+ @keyframes IEA_draw_10 {
303
+ 20.37% {
304
+ stroke-dashoffset: 97;
305
+ }
306
+ 48.15%, 100% {
307
+ stroke-dashoffset: 0;
308
+ }
309
+ }
310
+ @keyframes IEA_draw_11 {
311
+ 21.3% {
312
+ stroke-dashoffset: 185;
313
+ }
314
+ 49.07%, 100% {
315
+ stroke-dashoffset: 0;
316
+ }
317
+ }
318
+ @keyframes IEA_draw_12 {
319
+ 22.22% {
320
+ stroke-dashoffset: 170;
321
+ }
322
+ 50%, 100% {
323
+ stroke-dashoffset: 0;
324
+ }
325
+ }
326
+ @keyframes IEA_draw_13 {
327
+ 23.15% {
328
+ stroke-dashoffset: 1021;
329
+ }
330
+ 50.93%, 100% {
331
+ stroke-dashoffset: 0;
332
+ }
333
+ }
334
+ @keyframes IEA_draw_14 {
335
+ 24.07% {
336
+ stroke-dashoffset: 940;
337
+ }
338
+ 51.85%, 100% {
339
+ stroke-dashoffset: 0;
340
+ }
341
+ }
342
+ @keyframes IEA_draw_15 {
343
+ 25% {
344
+ stroke-dashoffset: 327;
345
+ }
346
+ 52.78%, 100% {
347
+ stroke-dashoffset: 0;
348
+ }
349
+ }
350
+ </style>
@@ -5,31 +5,40 @@
5
5
  :categories="selectedCategories"
6
6
  filter
7
7
  @filter-change="handleFilterChange"
8
+ class="mb-6"
8
9
  />
9
- <v-progress-linear v-if="pending" indeterminate />
10
+ <div v-if="searchTerm.length === 0" class="search-empty">
11
+ <ListAtomsLogoPlaceholder idle />
12
+ </div>
10
13
  <template v-else>
11
- <ListMoleculesResultsContainer
12
- v-for="type in filteredSortedModules"
13
- :key="type"
14
- :feminine="type === 'people'"
15
- :type
16
- :open="
17
- ($rootStore.results[type] && $rootStore.results[type]?.total > 0) ??
18
- open[type]
19
- "
20
- @toggle="open[$event] = !open[$event]"
21
- >
22
- <v-expand-transition class="results-container">
23
- <div
24
- v-show="
25
- ($rootStore.results[type] && $rootStore.results[type]?.total > 0) ||
26
- open[type]
27
- "
28
- >
29
- <ListAtomsResultsList :type />
30
- </div>
31
- </v-expand-transition>
32
- </ListMoleculesResultsContainer>
14
+ <div v-if="loading" class="search-pending">
15
+ <ListAtomsLogoPlaceholder />
16
+ </div>
17
+ <template v-else-if="!loading">
18
+ <ListMoleculesResultsContainer
19
+ v-for="type in filteredSortedModules"
20
+ :key="type"
21
+ :feminine="
22
+ type === 'people' || type === 'news' || type === 'publications'
23
+ "
24
+ :type
25
+ :open="open[type] ?? false"
26
+ @toggle="(t) => (open[t] = !open[t])"
27
+ >
28
+ <v-expand-transition class="results-container">
29
+ <div v-show="open[type]">
30
+ <ListAtomsResultsList
31
+ :type
32
+ :pathPrefix="
33
+ type === 'people'
34
+ ? 'people-slug'
35
+ : 'activities-' + type + '-slug'
36
+ "
37
+ />
38
+ </div>
39
+ </v-expand-transition>
40
+ </ListMoleculesResultsContainer>
41
+ </template>
33
42
  </template>
34
43
  </template>
35
44
 
@@ -40,6 +49,7 @@ import {
40
49
  useAppConfig,
41
50
  useRoute,
42
51
  ref,
52
+ reactive,
43
53
  useAsyncQuery,
44
54
  computed,
45
55
  watch,
@@ -50,12 +60,19 @@ const { $rootStore } = useNuxtApp()
50
60
  const appConfig = useAppConfig()
51
61
  const { locale } = useI18n()
52
62
  const route = useRoute()
53
- const open = ref({})
54
-
55
63
  if (route.query.search) {
56
64
  $rootStore.search = route.query.search
57
65
  }
58
66
 
67
+ const loading = ref(true)
68
+
69
+ const open = reactive(
70
+ appConfig.list.modules.reduce((acc, type) => {
71
+ acc[type] = false
72
+ return acc
73
+ }, {}),
74
+ )
75
+
59
76
  const selectedCategories = ref([...appConfig.list.modules])
60
77
 
61
78
  const handleFilterChange = (filterData) => {
@@ -89,9 +106,10 @@ const { data, pending, error } = useAsyncQuery(
89
106
  computed(() => ({
90
107
  search: searchTerm.value,
91
108
  appId: "iea",
92
- locale: currentLocale.value,
109
+ lang: currentLocale.value,
93
110
  })),
94
111
  {
112
+ server: false,
95
113
  enabled: computed(() => searchTerm.value.length > 0),
96
114
  },
97
115
  )
@@ -101,26 +119,26 @@ if (error.value) {
101
119
  /* console.log("Query result data: ", data.value.items?.length) */
102
120
  }
103
121
 
104
- watch(
105
- data,
106
- (newData) => {
107
- if (newData) {
108
- console.log("Applying search data to store")
109
- $rootStore.applyListResult("all", newData)
110
- appConfig.list.modules.forEach((type) => {
111
- if ($rootStore.results[type] && $rootStore.results[type]?.total > 0) {
112
- open.value[type] = true
113
- }
114
- })
122
+ const applyData = (newData) => {
123
+ if (!newData) return
124
+ $rootStore.applyListResult("all", newData)
125
+ appConfig.list.modules.forEach((type) => {
126
+ if (newData.search?.[type]?.total > 0) {
127
+ open[type] = true
115
128
  }
116
- },
117
- { immediate: true },
118
- )
129
+ })
130
+ loading.value = false
131
+ }
132
+
133
+ watch(data, applyData, { immediate: true })
119
134
 
120
135
  watch(error, (err) => {
121
- if (err) console.error("GraphQL query error:", err)
136
+ if (err) {
137
+ console.error("GraphQL query error:", err)
138
+ loading.value = false
139
+ }
122
140
  })
123
141
  </script>
124
142
  <style scoped>
125
- .results-container{display:flex;flex-direction:column;gap:8px;margin-left:8px}
143
+ .results-container{display:flex;flex-direction:column;gap:8px;margin-left:8px}.search-empty{min-height:100vh;opacity:.8}.search-empty,.search-pending{display:flex;justify-content:center}.search-pending{padding:48px 0}
126
144
  </style>
@@ -1,4 +1,5 @@
1
1
  <template>
2
+ <!-- TODO: make it after the slider of seed without swiper -->
2
3
  <v-row class="mb-9">
3
4
  <v-col class="justify-center">
4
5
  <slot />
@@ -79,10 +80,10 @@
79
80
  - Meaningful behavior when clicking on the arrrows
80
81
  - Add a slide-in from right animation when the items are entering viewport
81
82
  */
82
- import { useDisplay } from "vuetify";
83
- const { locale } = useI18n();
84
- const { name, mdAndUp } = useDisplay();
85
- const model = ref(0);
83
+ import { useDisplay } from "vuetify"
84
+ const { locale } = useI18n()
85
+ const { name, mdAndUp } = useDisplay()
86
+ const model = ref(0)
86
87
  const swiperBreakpoints = ref({
87
88
  320: {
88
89
  slidesPerView: "auto",
@@ -108,7 +109,7 @@ const swiperBreakpoints = ref({
108
109
  slidesPerView: "auto",
109
110
  spaceBetween: 35,
110
111
  },
111
- });
112
+ })
112
113
  const props = defineProps({
113
114
  type: {
114
115
  type: String,
@@ -118,44 +119,39 @@ const props = defineProps({
118
119
  loading: { type: Boolean, default: false },
119
120
  dark: { type: Boolean, default: false },
120
121
  more: { type: Boolean, default: true },
121
- });
122
+ })
122
123
 
123
124
  /* const { data, error } = await useAsyncData(props.type, () =>
124
125
  )
125
126
  console.log("error: ", error) */
126
- const spaceBetween = 10;
127
+ const spaceBetween = 10
127
128
  const onProgress = (e) => {
128
- console.log("e: progress ", e);
129
- const [swiper, progress] = e.detail;
130
- console.log(progress);
131
- };
129
+ const [swiper, progress] = e.detail
130
+ }
132
131
 
133
- const onSlideChange = (e) => {
134
- console.log("slide changed", e);
135
- };
136
132
  const computedWidth = computed(() => {
137
- let modifier = 1;
133
+ let modifier = 1
138
134
  switch (props.type) {
139
135
  case "events":
140
- modifier = 1.1;
141
- break;
136
+ modifier = 1.1
137
+ break
142
138
  case "people":
143
- break;
139
+ break
144
140
  case "image":
145
- break;
141
+ break
146
142
  default:
147
- break;
143
+ break
148
144
  }
149
145
  return (
150
146
  [250, 300, 350, 380, 430, 460][
151
147
  ["xs", "sm", "md", "lg", "xl", "xxl"].indexOf(name.value || "md")
152
148
  ] * modifier
153
- );
154
- });
149
+ )
150
+ })
155
151
 
156
152
  onMounted(() => {
157
- console.log("Resolved Item", capitalize(props.type) + "SlidingItem");
158
- });
153
+ console.log("Resolved Item", capitalize(props.type) + "SlidingItem")
154
+ })
159
155
  </script>
160
156
  <style scoped>
161
157
  .swiper-slide{width:auto}
@@ -8,7 +8,7 @@
8
8
  item && item.image && item.image.url ? item.image.url : '/default.png'
9
9
  "
10
10
  :ratio="1 / 1"
11
- width="80px"
11
+ :width="70"
12
12
  />
13
13
  </v-col>
14
14
  <v-col align-self="start" class="text-h5 dense mx-2 paragraph">
@@ -8,7 +8,7 @@
8
8
  item && item.image && item.image.url ? item.image.url : '/default.png'
9
9
  "
10
10
  :ratio="1 / 1"
11
- :width="80"
11
+ :width="70"
12
12
  class="ma-1"
13
13
  />
14
14
  </v-col>
@@ -8,7 +8,7 @@
8
8
  item && item.image && item.image.url ? item.image.url : '/default.png'
9
9
  "
10
10
  :ratio="1 / 1"
11
- :width="50"
11
+ :width="70"
12
12
  />
13
13
  </v-col>
14
14
  <v-col align-self="center" class="text-h5 dense pl-4 pt-2">
@@ -8,7 +8,7 @@
8
8
  item && item.image && item.image.url ? item.image.url : '/default.png'
9
9
  "
10
10
  :ratio="1 / 1"
11
- width="80px"
11
+ :width="70"
12
12
  />
13
13
  </v-col>
14
14
  <v-col class="pl-2">
@@ -5,7 +5,6 @@ export const useFetchItem = () => {
5
5
  key,
6
6
  variables
7
7
  }) => {
8
- console.log("useFetchItem2 called with:", { query, key, variables });
9
8
  try {
10
9
  const { $apollo } = useNuxtApp();
11
10
  const route = useRoute();
@@ -255,9 +255,13 @@ export const useRootStore = defineStore("rootStore", {
255
255
  for (const category of Object.keys(this.results)) {
256
256
  const categoryData = this.results[category];
257
257
  if (categoryData?.items?.length) {
258
- categoryData.items.sort(
259
- (a, b) => (b.score ?? 0) - (a.score ?? 0)
260
- );
258
+ ;
259
+ this.results[category] = {
260
+ ...categoryData,
261
+ items: [...categoryData.items].sort(
262
+ (a, b) => (b.score ?? 0) - (a.score ?? 0)
263
+ )
264
+ };
261
265
  }
262
266
  }
263
267
  return;
@@ -384,5 +384,7 @@
384
384
  "list.by-vintage-from-old-to-recent": "By Year, from old to recent",
385
385
  "no-biography": "No biography available",
386
386
  "search": "Search",
387
- "items-per-page": "Items per page"
387
+ "items-per-page": "Items per page",
388
+ "click-here-to-search": "Click here to search",
389
+ "filter-by-type": "Filter by type"
388
390
  }
@@ -292,7 +292,7 @@
292
292
  },
293
293
  "list": "Liste",
294
294
  "page-0-of-1": "Page {0} sur {1}",
295
- "pls-x-more": "{0} Plus",
295
+ "pls-x-more": "+ {0} de plus | + {0} supplémentaires",
296
296
  "rows": "Rangées",
297
297
  "search-type": "Rechercher parmi les {0}",
298
298
  "search-type-f": "Rechercher parmi les {0}",
@@ -385,5 +385,7 @@
385
385
  "list.by-vintage-from-recent-to-old": "Par année, du plus récent au plus vieux",
386
386
  "list.by-vintage-from-old-to-recent": "Par année, du plus vieux au plus récent",
387
387
  "search": "Rechercher",
388
- "items-per-page": "Éléments par page"
388
+ "items-per-page": "Éléments par page",
389
+ "click-here-to-search": "Cliquez ici pour rechercher",
390
+ "filter-by-type": "Filtrer par type"
389
391
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "license": "AGPL-3.0-only",
3
3
  "main": "./dist/module.mjs",
4
- "version": "1.0.181",
4
+ "version": "1.0.182",
5
5
  "name": "@paris-ias/list",
6
6
  "repository": {
7
7
  "url": "git+https://github.com/IEA-Paris/list.git",