@saooti/octopus-sdk 29.0.0 → 29.0.4

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 (29) hide show
  1. package/README.md +5 -0
  2. package/index.ts +5 -2
  3. package/package.json +12 -11
  4. package/src/assets/bootstrap-diff.scss +5 -0
  5. package/src/assets/form.scss +19 -0
  6. package/src/assets/modal.scss +9 -10
  7. package/src/components/display/categories/CategoryList.vue +20 -19
  8. package/src/components/display/comments/AddCommentModal.vue +67 -67
  9. package/src/components/display/comments/CommentItem.vue +6 -4
  10. package/src/components/display/emission/EmissionInlineList.vue +4 -2
  11. package/src/components/display/filter/AdvancedSearch.vue +40 -27
  12. package/src/components/display/filter/RubriqueFilter.vue +3 -0
  13. package/src/components/display/organisation/OrganisationChooser.vue +1 -1
  14. package/src/components/display/participant/ParticipantItem.vue +3 -0
  15. package/src/components/display/podcasts/ParticipantDescription.vue +8 -4
  16. package/src/components/display/podcasts/PodcastInlineList.vue +4 -2
  17. package/src/components/display/rubriques/RubriqueList.vue +22 -21
  18. package/src/components/display/sharing/PlayerParameters.vue +8 -4
  19. package/src/components/display/sharing/ShareButtons.vue +5 -3
  20. package/src/components/misc/HomeDropdown.vue +116 -87
  21. package/src/components/misc/Popover.vue +86 -0
  22. package/src/components/misc/modal/MessageModal.vue +51 -50
  23. package/src/components/misc/modal/NewsletterModal.vue +88 -82
  24. package/src/components/misc/modal/QrCodeModal.vue +31 -21
  25. package/src/components/misc/modal/ShareModalPlayer.vue +91 -51
  26. package/src/components/pages/Home.vue +8 -1
  27. package/src/components/pages/Participant.vue +2 -1
  28. package/src/helper/useEventListener.ts +18 -0
  29. package/src/main.ts +5 -24
package/README.md CHANGED
@@ -462,8 +462,13 @@ See [Configuration Reference](https://cli.vuejs.org/config/).
462
462
  * 0.28.9 QrCode
463
463
  * 0.28.10 QrCode icone
464
464
  * 0.28.11 Podcastmaker modif
465
+ * 0.28.12 Rubriquage
465
466
 
466
467
  * 29.0.0 Vue3
468
+ * 29.0.1 Upgrade npm
469
+ * 29.0.2 Début de suppression bootstrap vue
470
+ * 29.0.3 Début de suppression bootstrap vue
471
+ * 29.0.4 vue3
467
472
 
468
473
 
469
474
 
package/index.ts CHANGED
@@ -21,6 +21,7 @@ import TopBar from "./src/components/misc/TopBar.vue";
21
21
  import HomeDropdown from "./src/components/misc/HomeDropdown.vue";
22
22
  import MessageModal from "./src/components/misc/modal/MessageModal.vue";
23
23
  import ErrorMessage from "./src/components/misc/ErrorMessage.vue";
24
+ import Popover from "./src/components/misc/Popover.vue";
24
25
  //Display
25
26
  import CategoryChooser from "./src/components/display/categories/CategoryChooser.vue";
26
27
  import CategoryList from "./src/components/display/categories/CategoryList.vue";
@@ -95,7 +96,8 @@ const components = {
95
96
  Rubrique,
96
97
  CategoryFilter,
97
98
  orgaFilter,
98
- initSDK
99
+ initSDK,
100
+ Popover
99
101
  }
100
102
 
101
103
  export default components;
@@ -140,5 +142,6 @@ export {
140
142
  Rubrique,
141
143
  CategoryFilter,
142
144
  orgaFilter,
143
- initSDK
145
+ initSDK,
146
+ Popover
144
147
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@saooti/octopus-sdk",
3
- "version": "29.0.0",
3
+ "version": "29.0.4",
4
4
  "private": false,
5
5
  "description": "Javascript SDK for using octopus",
6
6
  "author": "Saooti",
@@ -19,20 +19,19 @@
19
19
  "@vue/cli": "^5.0.0-beta.4",
20
20
  "@vue/compat": "^3.1.0",
21
21
  "axios": "^0.21.4",
22
- "bootstrap": "^5.1.1",
23
- "bootstrap-vue": "^2.4.0",
24
- "bootstrap-vue-3": "0.0.4",
25
- "core-js": "^3.18.1",
22
+ "bootstrap": "^5.1.2",
23
+ "core-js": "^3.18.2",
26
24
  "hls.js": "^1.0.10",
27
25
  "humanize-duration": "^3.27.0",
26
+ "jquery": "^3.6.0",
28
27
  "luxon": "^2.0.2",
29
28
  "moment": "^2.29.0",
30
29
  "moment-locales-webpack-plugin": "^1.2.0",
31
- "portal-vue": "^2.1.7",
30
+ "popper.js": "^1.16.1",
32
31
  "qrcode.vue": "^3.3.2",
33
32
  "sass": "^1.42.1",
34
33
  "sass-loader": "^12.1.0",
35
- "v-calendar": "^3.0.0-alpha.5",
34
+ "v-calendar": "^3.0.0-alpha.6",
36
35
  "vue": "^3.1.0",
37
36
  "vue-class-component": "^7.2.3",
38
37
  "vue-i18n": "^9.2.0-beta.7",
@@ -42,13 +41,15 @@
42
41
  "vue-router": "^4.0.11",
43
42
  "vue3-swatches": "^1.0.3",
44
43
  "vuex": "^4.0.2",
45
- "webpack": "^5.55.1"
44
+ "webpack": "^5.58.0"
46
45
  },
47
46
  "devDependencies": {
47
+ "@types/bootstrap": "^5.1.6",
48
48
  "@types/hls.js": "^1.0.0",
49
+ "@types/jquery": "^3.5.6",
49
50
  "@types/vue-datetime": "^1.0.1",
50
- "@typescript-eslint/eslint-plugin": "^4.32.0",
51
- "@typescript-eslint/parser": "^4.32.0",
51
+ "@typescript-eslint/eslint-plugin": "^4.33.0",
52
+ "@typescript-eslint/parser": "^4.33.0",
52
53
  "@vue/cli-plugin-babel": "^5.0.0-beta.4",
53
54
  "@vue/cli-plugin-eslint": "^5.0.0-beta.4",
54
55
  "@vue/cli-plugin-typescript": "^5.0.0-beta.4",
@@ -57,7 +58,7 @@
57
58
  "@vue/eslint-config-typescript": "^7.0.0",
58
59
  "babel-eslint": "^10.0.3",
59
60
  "eslint": "^7.32.0",
60
- "eslint-plugin-vue": "^7.18.0",
61
+ "eslint-plugin-vue": "^7.19.1",
61
62
  "typescript": "^4.4.3"
62
63
  },
63
64
  "eslintConfig": {
@@ -8,10 +8,12 @@
8
8
  }
9
9
  }
10
10
  .btn{
11
+ font-size:.7rem;
11
12
  border-radius: 50px;
12
13
  background: $octopus-light-secondary-color;
13
14
  transition: background .2s, border .2s, box-shadow .2s, color .2s;
14
15
  text-decoration: none !important;
16
+ white-space: nowrap;
15
17
  &:hover,
16
18
  &:focus,
17
19
  &:active,
@@ -230,6 +232,9 @@
230
232
  //border: 1px solid #ddd;
231
233
  border-radius: 5px;
232
234
  }
235
+ .dropdown-toggle-no-caret::after{
236
+ display: none;
237
+ }
233
238
  .dropdown-menu {
234
239
  padding: $dropdown-padding-y 0.5rem;
235
240
  @media (max-width: 450px) {
@@ -81,4 +81,23 @@ background: $octopus-primary-color;
81
81
  .theme-saooti .vdatetime-time-picker__item--selected,
82
82
  .theme-saooti .vdatetime-popup__actions__button {
83
83
  color: $octopus-primary-color;
84
+ }
85
+
86
+ //Navigation Bar
87
+ .nav{
88
+ border-bottom: 0.05rem solid #ddd;
89
+ .nav-item{
90
+ flex-grow: 1;
91
+ text-align: center;
92
+ a {
93
+ color: black;
94
+ }
95
+ .nav-link{
96
+ border-bottom: 0.1rem solid transparent;
97
+ }
98
+ .active{
99
+ border-bottom-color: $octopus-primary-color;
100
+ color: $octopus-primary-color;
101
+ }
102
+ }
84
103
  }
@@ -1,14 +1,13 @@
1
1
  //Modal
2
- .modal-mask {
3
- position: fixed;
4
- z-index: 9998;
5
- top: 0;
6
- left: 0;
7
- width: 100%;
8
- height: 100%;
9
- background-color: rgba(0, 0, 0, .5);
10
- display: table;
11
- transition: opacity .3s ease;
2
+ .modal{
3
+ display: block;
4
+ }
5
+ .modal-backdrop{
6
+
7
+ }
8
+ .modal-backdrop {
9
+ opacity: 0.5;
10
+ z-index: 0;
12
11
  }
13
12
 
14
13
  .modal-wrapper {
@@ -14,28 +14,29 @@
14
14
  {{ category.name }}
15
15
  </button>
16
16
  </div>
17
- <b-dropdown
17
+ <div
18
18
  v-show="hidenCategories.length"
19
- right
20
- toggle-class="text-decoration-none text-dark category-item category-item-plus"
21
- no-caret
22
- :aria-label="$t('See more')"
19
+ class="dropdown btn-group"
23
20
  >
24
- <template #button-content>
25
- <i
26
- :aria-label="$t('See more')"
27
- class="saooti-plus"
28
- />
29
- </template>
30
- <b-dropdown-item
31
- v-for="category in hidenCategories"
32
- :key="category.id"
33
- class="me-3"
34
- @click="checkIfFilter(category)"
21
+ <button
22
+ class="btn dropdown-toggle btn-secondary text-decoration-none text-dark category-item category-item-plus dropdown-toggle-no-caret"
23
+ data-bs-toggle="dropdown"
24
+ aria-expanded="false"
25
+ :aria-label="$t('See more')"
35
26
  >
36
- {{ category.name }}
37
- </b-dropdown-item>
38
- </b-dropdown>
27
+ <i class="saooti-plus" />
28
+ </button>
29
+ <ul class="dropdown-menu dropdown-menu-right px-4">
30
+ <div
31
+ v-for="category in hidenCategories"
32
+ :key="category.id"
33
+ class="me-3 dropdown-item"
34
+ @click="checkIfFilter(category)"
35
+ >
36
+ {{ category.name }}
37
+ </div>
38
+ </ul>
39
+ </div>
39
40
  </div>
40
41
  </template>
41
42
 
@@ -1,73 +1,73 @@
1
1
  <template>
2
- <div>
3
- <b-modal
4
- id="add-comment-modal"
5
- :title="$t('Welcome, thanks for your comment')"
6
- :show="true"
7
- @close="closePopup"
8
- @hide="closePopup"
9
- @cancel="closePopup"
10
- >
11
- <template
12
- v-if="!sending"
13
- #default
14
- >
15
- <div>{{ $t("Let's get acquainted :") }}</div>
16
- <input
17
- v-model="name"
18
- class="form-input"
19
- type="text"
20
- :placeholder="$t('Your name')"
21
- >
22
- <div
23
- v-if="sendError"
24
- class="mt-1 text-danger"
25
- >
26
- {{ $t('Recaptcha error') }}
2
+ <div
3
+ id="add-comment-modal"
4
+ class="modal"
5
+ >
6
+ <div class="modal-backdrop" />
7
+ <div class="modal-dialog">
8
+ <div class="modal-content">
9
+ <div class="modal-header">
10
+ <h5 class="modal-title">
11
+ {{ $t('Welcome, thanks for your comment') }}
12
+ </h5>
27
13
  </div>
28
- <div
29
- v-if="isCaptchaTest"
30
- class="mt-1 text-danger"
31
- >
32
- {{ $t('Recaptcha not active') }}
14
+ <div class="modal-body">
15
+ <template v-if="!sending">
16
+ <div>{{ $t("Let's get acquainted :") }}</div>
17
+ <input
18
+ v-model="name"
19
+ class="form-input"
20
+ type="text"
21
+ :placeholder="$t('Your name')"
22
+ >
23
+ <div
24
+ v-if="sendError"
25
+ class="mt-1 text-danger"
26
+ >
27
+ {{ $t('Recaptcha error') }}
28
+ </div>
29
+ <div
30
+ v-if="isCaptchaTest"
31
+ class="mt-1 text-danger"
32
+ >
33
+ {{ $t('Recaptcha not active') }}
34
+ </div>
35
+ </template>
36
+ <template v-else>
37
+ <div>{{ $t('Send in progress') }}</div>
38
+ </template>
33
39
  </div>
34
- </template>
35
- <template
36
- v-else
37
- #default
38
- >
39
- <div>{{ $t('Send in progress') }}</div>
40
- </template>
41
- <template
42
- v-if="!sending"
43
- #modal-footer
44
- >
45
- <button
46
- class="btn btn-light m-1"
47
- @click="closePopup"
48
- >
49
- {{ $t('Cancel') }}
50
- </button>
51
- <button
52
- class="btn btn-primary m-1"
53
- :disabled="name.length <= 2"
54
- @click="recaptcha"
55
- >
56
- {{ $t('Validate') }}
57
- </button>
58
- </template>
59
- <template
60
- v-else
61
- #modal-footer
62
- >
63
- <button
64
- class="btn m-1"
65
- @click="closePopup"
66
- >
67
- {{ $t('Close') }}
68
- </button>
69
- </template>
70
- </b-modal>
40
+ <div class="modal-footer">
41
+ <template
42
+ v-if="!sending"
43
+ >
44
+ <button
45
+ class="btn btn-light m-1"
46
+ @click="closePopup"
47
+ >
48
+ {{ $t('Cancel') }}
49
+ </button>
50
+ <button
51
+ class="btn btn-primary m-1"
52
+ :disabled="name.length <= 2"
53
+ @click="recaptcha"
54
+ >
55
+ {{ $t('Validate') }}
56
+ </button>
57
+ </template>
58
+ <template
59
+ v-else
60
+ >
61
+ <button
62
+ class="btn m-1"
63
+ @click="closePopup"
64
+ >
65
+ {{ $t('Close') }}
66
+ </button>
67
+ </template>
68
+ </div>
69
+ </div>
70
+ </div>
71
71
  </div>
72
72
  </template>
73
73
 
@@ -18,17 +18,17 @@
18
18
  <template v-else>
19
19
  <b
20
20
  :id="'popover-comment' + comment.comId"
21
- class="me-2 text-danger"
21
+ class="mr-2 text-danger"
22
22
  >{{
23
23
  comment.name
24
24
  }}</b>
25
- <b-popover
25
+ <Popover
26
26
  :target="'popover-comment' + comment.comId"
27
27
  triggers="hover"
28
28
  custom-class="wizard-help"
29
29
  >
30
30
  {{ $t('Comment waiting') }}
31
- </b-popover>
31
+ </Popover>
32
32
  </template>
33
33
  </template>
34
34
  <template v-else>
@@ -177,6 +177,7 @@ import { CommentPodcast } from '@/store/class/comment';
177
177
  import { Podcast } from '@/store/class/podcast';
178
178
  import { Conference } from '@/store/class/conference';
179
179
  const moment = require('moment');
180
+ import Popover from '../../misc/Popover.vue';
180
181
  import { defineComponent, defineAsyncComponent } from 'vue';
181
182
  const CommentInput = defineAsyncComponent(() => import('./CommentInput.vue'));
182
183
  const CommentParentInfo = defineAsyncComponent(() => import('./CommentParentInfo.vue'));
@@ -189,7 +190,8 @@ export default defineComponent({
189
190
  CommentInput,
190
191
  CommentParentInfo,
191
192
  EditCommentBox,
192
- CommentList
193
+ CommentList,
194
+ Popover
193
195
  },
194
196
 
195
197
  mixins:[displayMethods, selenium],
@@ -238,9 +238,11 @@ export default defineComponent({
238
238
  )
239
239
  return undefined;
240
240
  const rubrique = this.rubriques.find(
241
- (element: Rubrique) => emission.rubriqueIds.includes(element.rubriqueId!) && element.rubriquageId === parseInt(this.displayRubriquage)
241
+ (element: Rubrique) => element.rubriqueId && emission.rubriqueIds.includes(element.rubriqueId) && element.rubriquageId === parseInt(this.displayRubriquage)
242
242
  );
243
- return rubrique!.name;
243
+ if(rubrique){
244
+ return rubrique.name;
245
+ }
244
246
  },
245
247
  mainRubriquage(emission: Emission): string {
246
248
  if (
@@ -149,38 +149,51 @@
149
149
  <div class="primary-color mb-2 padding-left-custom-radio">
150
150
  {{ $t('Sort') }}
151
151
  </div>
152
- <b-form-radio-group
153
- v-model="sort"
154
- class="d-flex flex-column"
152
+ <div
153
+ v-if="isSearchBar"
154
+ class="form-check"
155
155
  >
156
- <b-form-radio
157
- v-if="isSearchBar"
156
+ <input
157
+ id="radio_score"
158
+ v-model="sort"
159
+ class="form-check-input"
160
+ type="radio"
161
+ name="sortRadio"
158
162
  value="SCORE"
159
163
  >
160
- {{
161
- $t('Sort score')
162
- }}
163
- </b-form-radio>
164
- <b-form-radio
165
- v-if="isEmission"
166
- value="LAST_PODCAST_DESC"
164
+ <label
165
+ class="form-check-label"
166
+ for="radio_score"
167
+ >{{ $t('Sort score') }}</label>
168
+ </div>
169
+ <div class="form-check">
170
+ <input
171
+ id="radio_podcast"
172
+ v-model="sort"
173
+ class="form-check-input"
174
+ type="radio"
175
+ name="sortRadio"
176
+ :value="isEmission?'LAST_PODCAST_DESC':'DATE'"
167
177
  >
168
- {{
169
- $t('Sort last')
170
- }}
171
- </b-form-radio>
172
- <b-form-radio
173
- v-else
174
- value="DATE"
178
+ <label
179
+ class="form-check-label"
180
+ for="radio_podcast"
181
+ >{{ $t('Sort last') }}</label>
182
+ </div>
183
+ <div class="form-check">
184
+ <input
185
+ id="radio_name"
186
+ v-model="sort"
187
+ class="form-check-input"
188
+ type="radio"
189
+ name="sortRadio"
190
+ value="NAME"
175
191
  >
176
- {{
177
- $t('Sort last')
178
- }}
179
- </b-form-radio>
180
- <b-form-radio value="NAME">
181
- {{ $t('Sort name') }}
182
- </b-form-radio>
183
- </b-form-radio-group>
192
+ <label
193
+ class="form-check-label"
194
+ for="radio_name"
195
+ >{{ $t('Sort name') }}</label>
196
+ </div>
184
197
  </div>
185
198
  </div>
186
199
  </div>
@@ -106,6 +106,9 @@ export default defineComponent({
106
106
  return;
107
107
  }
108
108
  this.isInternChanged = true;
109
+ if(0===this.arrayFilter.length && this.availableRubriquage[0].rubriquageId){
110
+ this.arrayFilter.push({rubriquageId: this.availableRubriquage[0].rubriquageId, rubriqueId: 0, name:""});
111
+ }
109
112
  if(this.isRubriquage){
110
113
  if(this.saveOrganisation !== this.organisation){
111
114
  this.fetchTopics(true);
@@ -147,7 +147,7 @@ export default defineComponent({
147
147
  defaultanswer: { default: '', type: String},
148
148
  stats: { default: false, type: Boolean},
149
149
  displayArrow: { default: true, type: Boolean},
150
- value: { default: undefined, type: Object as ()=>Organisation},
150
+ value: { default: undefined, type: String},
151
151
  light: { default: false, type: Boolean},
152
152
  reset: { default: false, type: Boolean},
153
153
  all: { default: false, type: Boolean},
@@ -99,6 +99,9 @@ export default defineComponent({
99
99
  return state.generalParameters.authenticated;
100
100
  },
101
101
  editRight(): boolean {
102
+ if(!this.participant || !this.participant.orga){
103
+ return false;
104
+ }
102
105
  if (
103
106
  (this.authenticated &&
104
107
  this.organisationId === this.participant.orga.id) ||
@@ -10,12 +10,12 @@
10
10
  :aria-label="$t('Help')"
11
11
  />
12
12
  <span class="mx-1">:</span>
13
- <b-popover
13
+ <Popover
14
14
  :target="idPopover"
15
15
  triggers="hover"
16
16
  custom-class="participant-help"
17
17
  >
18
- <div class="text-center fw-bold">
18
+ <div class="text-center font-weight-bold">
19
19
  {{ title }}
20
20
  </div>
21
21
  <div class="horizontal-separator my-1" />
@@ -32,7 +32,7 @@
32
32
  />
33
33
  <div class="horizontal-separator my-1" />
34
34
  </div>
35
- </b-popover>
35
+ </Popover>
36
36
  <router-link
37
37
  v-for="participant in participants"
38
38
  :key="participant.participantId"
@@ -52,11 +52,16 @@
52
52
  </template>
53
53
 
54
54
  <script lang="ts">
55
+ import Popover from '../../misc/Popover.vue';
55
56
  import { Participant } from '@/store/class/participant';
56
57
  import { defineComponent } from 'vue'
57
58
  export default defineComponent({
58
59
  name: 'ParticipantDescription',
59
60
 
61
+ components:{
62
+ Popover
63
+ },
64
+
60
65
  props: {
61
66
  participants: { default: () => [], type: Array as ()=> Array<Participant>},
62
67
  isGuest: { default: false, type: Boolean},
@@ -80,7 +85,6 @@ export default defineComponent({
80
85
  return this.$t('Animated by').toString();
81
86
  }
82
87
  },
83
-
84
88
  methods: {
85
89
  getName(person: any): string {
86
90
  const first = person.firstName || '';
@@ -110,6 +110,7 @@ export default defineComponent({
110
110
  buttonPlus: { default:false, type: Boolean},
111
111
  rubriqueId: { default: () => [], type: Array as ()=> Array<number> },
112
112
  rubriquageId:{ default: () => [], type: Array as ()=> Array<number> },
113
+ noRubriquageId: { default: () => [], type: Array as ()=> Array<number> },
113
114
  },
114
115
  emits: ['update:isArrow'],
115
116
 
@@ -224,8 +225,9 @@ export default defineComponent({
224
225
  organisationId: this.organisation,
225
226
  emissionId: this.emissionId,
226
227
  iabId: this.iabId,
227
- rubriqueId: this.rubriqueId,
228
- rubriquageId: this.rubriquageId,
228
+ rubriqueId: this.rubriqueId.length ?this.rubriqueId:undefined,
229
+ rubriquageId: this.rubriquageId.length ?this.rubriquageId : undefined,
230
+ noRubriquageId: this.noRubriquageId.length ? this.noRubriquageId : undefined,
229
231
  sort: this.popularSort ? 'POPULARITY' : 'DATE',
230
232
  });
231
233
  this.loading = false;
@@ -27,28 +27,29 @@
27
27
  {{ rubrique.name }}
28
28
  </button>
29
29
  </div>
30
- <b-dropdown
30
+ <div
31
31
  v-show="hidenRubriques.length"
32
- right
33
- toggle-class="text-decoration-none text-dark rubrique-item rubrique-item-plus"
34
- no-caret
35
- :aria-label="$t('See more')"
32
+ class="dropdown btn-group"
36
33
  >
37
- <template #button-content>
38
- <i
39
- :aria-label="$t('See more')"
40
- class="saooti-plus"
41
- />
42
- </template>
43
- <b-dropdown-item
44
- v-for="rubrique in hidenRubriques"
45
- :key="rubrique.rubriqueId"
46
- class="me-3"
47
- @click="addFilter(rubrique)"
34
+ <button
35
+ class="btn dropdown-toggle btn-secondary text-decoration-none text-dark category-item category-item-plus dropdown-toggle-no-caret"
36
+ data-bs-toggle="dropdown"
37
+ aria-expanded="false"
38
+ :aria-label="$t('See more')"
48
39
  >
49
- {{ rubrique.name }}
50
- </b-dropdown-item>
51
- </b-dropdown>
40
+ <i class="saooti-plus" />
41
+ </button>
42
+ <ul class="dropdown-menu dropdown-menu-right px-4">
43
+ <div
44
+ v-for="rubrique in hidenRubriques"
45
+ :key="rubrique.rubriqueId"
46
+ class="me-3 dropdown-item"
47
+ @click="addFilter(rubrique)"
48
+ >
49
+ {{ rubrique.name }}
50
+ </div>
51
+ </ul>
52
+ </div>
52
53
  </div>
53
54
  </template>
54
55
 
@@ -80,7 +81,7 @@ export default defineComponent({
80
81
  return this.$store.state.filter.rubriqueFilter;
81
82
  },
82
83
  rubriqueDisplay(): Array<Rubrique>{
83
- return this.$store.state.filter.rubriqueDisplay;
84
+ return this.$store.state.filter.rubriqueDisplay.filter((rubrique: Rubrique) => 0 !== rubrique.podcastCount );
84
85
  },
85
86
  rubriquageDisplay(): Array<Rubriquage>{
86
87
  const elementToNotShow = Array.from(this.rubriqueFilter);
@@ -119,7 +120,7 @@ export default defineComponent({
119
120
  const filterToAdd = {
120
121
  rubriquageId: this.rubriquage.rubriquageId?this.rubriquage.rubriquageId: 0,
121
122
  rubriqueId: rubrique.rubriqueId? rubrique.rubriqueId:0,
122
- name: this.rubriquage.title +": "+rubrique.name
123
+ name: this.rubriquage.title +" : "+rubrique.name
123
124
  };
124
125
  const newFilter: Array<RubriquageFilter> = Array.from(this.$store.state.filter.rubriqueFilter);
125
126
  newFilter.push(filterToAdd);