@saooti/octopus-sdk 30.0.7 → 30.0.8

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 (54) hide show
  1. package/README.md +2 -1
  2. package/index.ts +13 -2
  3. package/package.json +1 -1
  4. package/src/assets/bootstrap-diff.scss +2 -1
  5. package/src/assets/form.scss +7 -0
  6. package/src/assets/general.scss +14 -20
  7. package/src/assets/multiselect.scss +1 -1
  8. package/src/assets/share.scss +1 -12
  9. package/src/components/display/comments/CommentPlayer.vue +1 -1
  10. package/src/components/display/emission/EmissionInlineList.vue +1 -1
  11. package/src/components/display/emission/EmissionItem.vue +2 -2
  12. package/src/components/display/emission/EmissionList.vue +1 -1
  13. package/src/components/display/emission/EmissionPlayerItem.vue +1 -1
  14. package/src/components/display/filter/AdvancedSearch.vue +39 -101
  15. package/src/components/display/filter/CategoryFilter.vue +9 -13
  16. package/src/components/display/filter/ProductorSearch.vue +20 -39
  17. package/src/components/display/filter/RubriqueChoice.vue +1 -1
  18. package/src/components/display/filter/RubriqueFilter.vue +8 -12
  19. package/src/components/display/organisation/OrganisationChooserLight.vue +7 -1
  20. package/src/components/display/playlist/PlaylistItem.vue +1 -1
  21. package/src/components/display/playlist/PodcastList.vue +8 -19
  22. package/src/components/display/podcasts/PodcastFilterList.vue +9 -18
  23. package/src/components/display/podcasts/PodcastImage.vue +1 -1
  24. package/src/components/display/podcasts/PodcastInlineList.vue +1 -1
  25. package/src/components/display/podcasts/PodcastItem.vue +1 -1
  26. package/src/components/display/sharing/PlayerParameters.vue +24 -45
  27. package/src/components/display/sharing/SharePlayer.vue +8 -17
  28. package/src/components/display/sharing/SharePlayerColors.vue +2 -2
  29. package/src/components/display/sharing/SubscribeButtons.vue +1 -1
  30. package/src/components/form/ClassicCheckbox.vue +61 -0
  31. package/src/components/form/ClassicLoading.vue +28 -0
  32. package/src/components/form/ClassicRadio.vue +61 -0
  33. package/src/components/form/ClassicSearch.vue +82 -0
  34. package/src/components/misc/ErrorMessage.vue +1 -1
  35. package/src/components/misc/Footer.vue +26 -35
  36. package/src/components/misc/HomeDropdown.vue +44 -93
  37. package/src/components/misc/LeftMenu.vue +108 -141
  38. package/src/components/misc/Player.vue +14 -28
  39. package/src/components/misc/PlayerButtons.vue +14 -37
  40. package/src/components/misc/PlayerProgressBar.vue +15 -50
  41. package/src/components/misc/TopBar.vue +140 -222
  42. package/src/components/misc/modal/NewsletterModal.vue +13 -27
  43. package/src/components/pages/Category.vue +3 -8
  44. package/src/components/pages/Emission.vue +12 -24
  45. package/src/components/pages/Emissions.vue +8 -17
  46. package/src/components/pages/Home.vue +1 -3
  47. package/src/components/pages/Lives.vue +1 -3
  48. package/src/components/pages/Participant.vue +18 -26
  49. package/src/components/pages/Participants.vue +7 -15
  50. package/src/components/pages/Playlist.vue +16 -29
  51. package/src/components/pages/Playlists.vue +1 -11
  52. package/src/components/pages/Podcast.vue +16 -30
  53. package/src/components/pages/Podcasts.vue +9 -23
  54. package/src/components/pages/Search.vue +26 -64
package/README.md CHANGED
@@ -504,4 +504,5 @@ See [Configuration Reference](https://cli.vuejs.org/config/).
504
504
  * 30.0.4 Remplacer la version "classique" des miniplayers par la version beta
505
505
  * 30.0.5 Tri des classes dans des sous dossiers
506
506
  * 30.0.6 Merge 29
507
- * 30.0.7 Améliorations css
507
+ * 30.0.7 Améliorations css
508
+ * 30.0.8 Améliorations diverses
package/index.ts CHANGED
@@ -49,6 +49,11 @@ import RubriqueChooser from "./src/components/display/rubriques/RubriqueChooser.
49
49
  import CommentList from "./src/components/display/comments/CommentList.vue";
50
50
  import CommentInput from "./src/components/display/comments/CommentInput.vue";
51
51
 
52
+ //form
53
+ import ClassicSearch from "./src/components/form/ClassicSearch.vue";
54
+ import ClassicCheckbox from "./src/components/form/ClassicCheckbox.vue";
55
+ import ClassicRadio from "./src/components/form/ClassicRadio.vue";
56
+
52
57
  //mixins
53
58
  import {selenium} from "./src/components/mixins/functions";
54
59
  import {cookies} from "./src/components/mixins/functions";
@@ -99,7 +104,10 @@ const components = {
99
104
  orgaFilter,
100
105
  initSDK,
101
106
  Popover,
102
- tagOfMixins
107
+ tagOfMixins,
108
+ ClassicSearch,
109
+ ClassicCheckbox,
110
+ ClassicRadio
103
111
  }
104
112
 
105
113
  export default components;
@@ -146,5 +154,8 @@ export {
146
154
  orgaFilter,
147
155
  initSDK,
148
156
  Popover,
149
- tagOfMixins
157
+ tagOfMixins,
158
+ ClassicSearch,
159
+ ClassicCheckbox,
160
+ ClassicRadio
150
161
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@saooti/octopus-sdk",
3
- "version": "30.0.7",
3
+ "version": "30.0.8",
4
4
  "private": false,
5
5
  "description": "Javascript SDK for using octopus",
6
6
  "author": "Saooti",
@@ -240,12 +240,13 @@
240
240
  display: none;
241
241
  }
242
242
  .dropdown-menu {
243
- padding: $dropdown-padding-y 0.5rem;
243
+ padding: 0.5rem;
244
244
  @media (max-width: 450px) {
245
245
  min-width: 15rem;
246
246
  }
247
247
  }
248
248
  .dropdown-item {
249
+ cursor: pointer;
249
250
  font-size: 0.8rem;
250
251
  @media (max-width: 450px) {
251
252
  padding: 0.25rem 0;
@@ -5,6 +5,13 @@
5
5
  .width-auto{
6
6
  width: auto !important;
7
7
  }
8
+ select {
9
+ background: white !important;
10
+ outline-color: transparent !important;
11
+ padding: 0.5rem;
12
+ border: 0.1rem solid #dee2e6;
13
+ border-radius: 0.3rem;
14
+ }
8
15
 
9
16
  .form-input {
10
17
  -webkit-appearance: none;
@@ -51,6 +51,13 @@ body{
51
51
  }
52
52
 
53
53
  }
54
+ .d-flex-column{
55
+ display: flex;
56
+ flex-direction: row;
57
+ @media (max-width: 960px) {
58
+ flex-direction: column;
59
+ }
60
+ }
54
61
 
55
62
  .primary-color{
56
63
  color: $octopus-primary-color;
@@ -66,14 +73,6 @@ body{
66
73
  background: $octopus-background;
67
74
  }
68
75
 
69
- .border-primary{
70
- border-color:$octopus-primary-color !important;
71
- border-radius: 3rem;
72
- border-radius: 3rem;
73
- border-style: inset;
74
- border-width: 1px;;
75
- }
76
-
77
76
  .pe-5 {
78
77
  @media (max-width: 960px) {
79
78
  padding-right: 5px !important;
@@ -84,6 +83,10 @@ body{
84
83
  padding-left: 5px !important;
85
84
  }
86
85
  }
86
+ .horizontal-separator {
87
+ border-top: 1px solid rgb(243, 243, 243);
88
+ margin: 0.5rem 0;
89
+ }
87
90
 
88
91
  .page-box{
89
92
  background-color: $octopus-background;
@@ -132,15 +135,12 @@ body{
132
135
  text-decoration: none;
133
136
  outline-width: 0;
134
137
  }
135
-
136
- a.linkHover.router-link-exact-active.router-link-active {
137
- color: $octopus-primary-color !important;
138
+ a.link-hover{
139
+ color: black !important;
138
140
  }
139
-
140
- a.linkHover:hover{
141
+ a.link-hover.router-link-exact-active.router-link-active, a.link-hover:hover {
141
142
  color: $octopus-primary-color !important;
142
143
  }
143
-
144
144
  .descriptionText{
145
145
  white-space: pre-wrap;
146
146
  word-wrap: break-word;
@@ -154,15 +154,9 @@ body{
154
154
  .alert-text{
155
155
  color: $octopus-alert-text;
156
156
  }
157
- .flex-grow{
158
- flex-grow: 1;
159
- }
160
157
  .flex-super-grow{
161
158
  flex-grow: 2;
162
159
  }
163
- .flex-shrink{
164
- flex-shrink: 0;
165
- }
166
160
  .text-center-mobile{
167
161
  text-align: inherit;
168
162
  @media (max-width: 960px) {
@@ -15,7 +15,7 @@
15
15
  text-overflow: '';
16
16
  font-size: 1rem;
17
17
  @media (max-width: 450px) {
18
- background: #eee !important;
18
+ background: transparent !important;
19
19
  width: 98%;
20
20
  }
21
21
  }
@@ -1,14 +1,6 @@
1
1
  @import '../sass/_variables.scss';
2
2
  .octopus-app{
3
- .search-icon-container {
4
- position: absolute;
5
- top: 0;
6
- bottom: 0;
7
- right: 0;
8
- display: flex;
9
- align-items: center;
10
- }
11
- .share-container {
3
+ .flex-grow-mobile {
12
4
  @media (max-width: 960px) {
13
5
  flex-grow: 1;
14
6
  }
@@ -18,9 +10,6 @@
18
10
  margin-bottom: 2px;
19
11
  height: 25px;
20
12
  }
21
- .flex-no-grow {
22
- flex-grow: 0 !important;
23
- }
24
13
  .custom-radio .custom-control-label {
25
14
  cursor: pointer;
26
15
  }
@@ -22,7 +22,7 @@
22
22
  v-if="displayContent"
23
23
  class="comment-content"
24
24
  >
25
- <div class="primary-color flex-shrink">
25
+ <div class="primary-color flex-shrink-0">
26
26
  {{ displayContent.name }}
27
27
  </div>
28
28
  <div class="ms-1 me-1">
@@ -47,7 +47,7 @@
47
47
  <EmissionPlayerItem
48
48
  v-for="e in emissions"
49
49
  :key="e.emissionId"
50
- class="flex-shrink item-phone-margin"
50
+ class="flex-shrink-0 item-phone-margin"
51
51
  :emission="e"
52
52
  :class="[alignLeft ? 'me-3' : '', mainRubriquage(e)]"
53
53
  :nb-podcasts="nbPodcasts"
@@ -26,7 +26,7 @@
26
26
  class="d-flex"
27
27
  >
28
28
  <div
29
- class="img-box-light flex-shrink"
29
+ class="img-box-light flex-shrink-0"
30
30
  :style="{ 'background-image': 'url(\'' + emission.imageUrl + '\')' }"
31
31
  />
32
32
  <div class="emission-light-title">
@@ -70,7 +70,7 @@
70
70
  <!-- eslint-enable -->
71
71
  </div>
72
72
  </router-link>
73
- <div class="flex-grow" />
73
+ <div class="flex-grow-1" />
74
74
  <router-link
75
75
  v-if="!isPodcastmaker"
76
76
  :to="{
@@ -37,7 +37,7 @@
37
37
  v-for="e in emissions"
38
38
  :key="e.emissionId"
39
39
  :emission="e"
40
- class="m-3 flex-shrink"
40
+ class="m-3 flex-shrink-0"
41
41
  :class="mainRubriquage(e)"
42
42
  :rubrique-name="rubriquesId(e)"
43
43
  @emissionNotVisible="displayCount--"
@@ -52,7 +52,7 @@
52
52
  :key="p.podcastId"
53
53
  class="border-top emission-item-border-color p-2 secondary-bg d-flex"
54
54
  >
55
- <div class="d-flex justify-content-between flex-grow">
55
+ <div class="d-flex justify-content-between flex-grow-1">
56
56
  <router-link
57
57
  :to="{
58
58
  name: 'podcast',
@@ -43,20 +43,12 @@
43
43
  {{ $t('Emission with episode published :') }}
44
44
  </div>
45
45
  <div class="d-flex align-items-center">
46
- <div class="flex-shrink">
47
- <input
48
- id="search-from-checkbox"
49
- v-model="isFrom"
50
- type="checkbox"
51
- class="form-check-input"
52
- >
53
- <label
54
- class="form-check-label"
55
- for="search-from-checkbox"
56
- >{{
57
- $t('From the :')
58
- }}</label>
59
- </div>
46
+ <ClassicCheckbox
47
+ v-model:textInit="isFrom"
48
+ class="flex-shrink-0"
49
+ id-checkbox="search-from-checkbox"
50
+ :label="$t('From the :')"
51
+ />
60
52
  <DatePicker
61
53
  v-model="fromDate"
62
54
  class="ps-3 pe-3"
@@ -75,20 +67,12 @@
75
67
  </DatePicker>
76
68
  </div>
77
69
  <div class="d-flex align-items-center">
78
- <div class="flex-shrink">
79
- <input
80
- id="search-to-checkbox"
81
- v-model="isTo"
82
- type="checkbox"
83
- class="form-check-input"
84
- >
85
- <label
86
- class="form-check-label"
87
- for="search-to-checkbox"
88
- >{{
89
- $t('To the :')
90
- }}</label>
91
- </div>
70
+ <ClassicCheckbox
71
+ v-model:textInit="isTo"
72
+ class="flex-shrink-0"
73
+ id-checkbox="search-to-checkbox"
74
+ :label="$t('To the :')"
75
+ />
92
76
  <DatePicker
93
77
  v-model="toDate"
94
78
  class="ps-3"
@@ -111,89 +95,39 @@
111
95
  v-if="organisation && organisationRight && !isPodcastmaker"
112
96
  class="d-flex flex-column mt-3"
113
97
  >
114
- <div class="flex-shrink">
115
- <input
116
- id="search-future-checkbox"
117
- v-model="isNotVisible"
118
- type="checkbox"
119
- class="form-check-input"
120
- :disabled="isCheckboxNotValidate && isNotValidate"
121
- >
122
- <label
123
- class="form-check-label"
124
- for="search-future-checkbox"
125
- >{{
126
- textNotVisible
127
- }}</label>
128
- </div>
98
+ <ClassicCheckbox
99
+ v-model:textInit="isNotVisible"
100
+ class="flex-shrink-0"
101
+ id-checkbox="search-future-checkbox"
102
+ :label="textNotVisible"
103
+ :is-disabled="isCheckboxNotValidate && isNotValidate"
104
+ />
129
105
  </div>
130
106
  <div
131
107
  v-if="isCheckboxNotValidate"
132
108
  class="d-flex flex-column mt-3"
133
109
  >
134
- <div class="flex-shrink">
135
- <input
136
- id="search-not-validate-checkbox"
137
- v-model="isNotValidate"
138
- type="checkbox"
139
- class="form-check-input"
140
- >
141
- <label
142
- class="form-check-label"
143
- for="search-not-validate-checkbox"
144
- >{{ textNotValidate }}</label>
145
- </div>
110
+ <ClassicCheckbox
111
+ v-model:textInit="isNotValidate"
112
+ class="flex-shrink-0"
113
+ id-checkbox="search-not-validate-checkbox"
114
+ :label="textNotValidate"
115
+ />
146
116
  </div>
147
117
  </div>
148
118
  <div class="d-flex flex-column">
149
119
  <div class="primary-color mb-2 padding-left-custom-radio">
150
120
  {{ $t('Sort') }}
151
121
  </div>
152
- <div
153
- v-if="isSearchBar"
154
- class="form-check"
155
- >
156
- <input
157
- id="radio_score"
158
- v-model="sort"
159
- class="form-check-input"
160
- type="radio"
161
- name="sortRadio"
162
- value="SCORE"
163
- >
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'"
177
- >
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"
191
- >
192
- <label
193
- class="form-check-label"
194
- for="radio_name"
195
- >{{ $t('Sort name') }}</label>
196
- </div>
122
+ <ClassicRadio
123
+ v-model:textInit="sort"
124
+ id-select="sort-radio"
125
+ :options="isSearchBar? [{title:$t('Sort score'), value:'SCORE'},
126
+ {title:$t('Sort last'), value:isEmission?'LAST_PODCAST_DESC':'DATE'},
127
+ {title:$t('Sort name'), value:'NAME'}]:
128
+ [{title:$t('Sort last'), value:isEmission?'LAST_PODCAST_DESC':'DATE'},
129
+ {title:$t('Sort name'), value:'NAME'}]"
130
+ />
197
131
  </div>
198
132
  </div>
199
133
  </div>
@@ -204,6 +138,8 @@ import { state } from '../../../store/paramStore';
204
138
  import moment from 'moment';
205
139
  import CategoryFilter from './CategoryFilter.vue';
206
140
  import RubriqueFilter from './RubriqueFilter.vue';
141
+ import ClassicCheckbox from '../../form/ClassicCheckbox.vue';
142
+ import ClassicRadio from '../../form/ClassicRadio.vue';
207
143
  import { RubriquageFilter } from '@/store/class/rubrique/rubriquageFilter';
208
144
  import { DatePicker } from 'v-calendar';
209
145
  import { defineComponent, defineAsyncComponent } from 'vue';
@@ -213,7 +149,9 @@ export default defineComponent({
213
149
  MonetizableFilter,
214
150
  DatePicker,
215
151
  CategoryFilter,
216
- RubriqueFilter
152
+ RubriqueFilter,
153
+ ClassicCheckbox,
154
+ ClassicRadio
217
155
  },
218
156
  props: {
219
157
  organisationId: { default: undefined, type: String},
@@ -1,17 +1,11 @@
1
1
  <template>
2
2
  <div class="d-flex mt-3 align-items-center">
3
- <div class="flex-shrink me-2">
4
- <input
5
- id="search-category-checkbox"
6
- v-model="isCategory"
7
- type="checkbox"
8
- class="form-check-input"
9
- >
10
- <label
11
- class="form-check-label"
12
- for="search-category-checkbox"
13
- >{{ $t('By category') }}</label>
14
- </div>
3
+ <ClassicCheckbox
4
+ v-model:textInit="isCategory"
5
+ class="flex-shrink-0 me-2"
6
+ id-checkbox="search-category-checkbox"
7
+ :label="$t('By category')"
8
+ />
15
9
  <CategoryChooser
16
10
  v-model:categorySelected="iabId"
17
11
  width="auto"
@@ -21,12 +15,14 @@
21
15
  </template>
22
16
 
23
17
  <script lang="ts">
18
+ import ClassicCheckbox from '../../form/ClassicCheckbox.vue';
24
19
  import CategoryChooser from '../categories/CategoryChooser.vue';
25
20
  import { Category } from '@/store/class/general/category';
26
21
  import { defineComponent } from 'vue'
27
22
  export default defineComponent({
28
23
  components: {
29
- CategoryChooser
24
+ CategoryChooser,
25
+ ClassicCheckbox
30
26
  },
31
27
  emits: ['updateCategory'],
32
28
  data() {
@@ -10,22 +10,13 @@
10
10
  :all="true"
11
11
  @selected="onOrganisationSelected"
12
12
  />
13
- <div
13
+ <ClassicCheckbox
14
14
  v-if="!!organisationId"
15
+ v-model:textInit="keepOrganisation"
15
16
  class="m-3"
16
- >
17
- <input
18
- id="orgaCheck"
19
- v-model="keepOrganisation"
20
- type="checkbox"
21
- class="form-check-input"
22
- @click="onKeepOrganisation"
23
- >
24
- <label
25
- class="form-check-label"
26
- for="orgaCheck"
27
- />
28
- </div>
17
+ id-checkbox="organisation-checkbox"
18
+ @clickAction="onKeepOrganisation"
19
+ />
29
20
  <div
30
21
  v-if="showBubble"
31
22
  class="filter-speech-bubble"
@@ -37,36 +28,29 @@
37
28
  }}
38
29
  </div>
39
30
  </div>
40
- <div class="d-flex align-items-center flex-grow">
41
- <label
42
- for="search"
43
- class="d-inline"
44
- :aria-label="$t('Search')"
45
- />
46
- <input
47
- id="search"
48
- ref="search"
49
- class="filter-search-input input-no-outline"
50
- :placeholder="searchText"
51
- :value="searchPattern"
52
- :readonly="notInitFocus"
53
- @input="
54
- event => $emit('updateSearchPattern', event.target.value)
55
- "
56
- >
57
- </div>
31
+ <ClassicSearch
32
+ v-model:textInit="queryIntern"
33
+ class="d-flex align-items-center flex-grow-1"
34
+ :autofocus="true"
35
+ id-checkbox="productor-search-input"
36
+ :label="searchText"
37
+ />
58
38
  </div>
59
39
  </template>
60
40
 
61
41
  <script lang="ts">
42
+ import ClassicSearch from '../../form/ClassicSearch.vue';
62
43
  import { state } from '../../../store/paramStore';
63
44
  import { orgaFilter } from '../../mixins/organisationFilter';
64
45
  import { Organisation } from '@/store/class/general/organisation';
65
46
  import { defineComponent, defineAsyncComponent } from 'vue';
66
47
  const OrganisationChooser = defineAsyncComponent(() => import('../organisation/OrganisationChooser.vue'));
48
+ const ClassicCheckbox = defineAsyncComponent(() => import('../../form/ClassicCheckbox.vue'));
67
49
  export default defineComponent({
68
50
  components: {
69
51
  OrganisationChooser,
52
+ ClassicSearch,
53
+ ClassicCheckbox
70
54
  },
71
55
  mixins:[orgaFilter],
72
56
 
@@ -82,7 +66,7 @@ export default defineComponent({
82
66
  keepOrganisation: false as boolean,
83
67
  showBubble: false as boolean,
84
68
  imgUrl: '' as string,
85
- notInitFocus: true as boolean
69
+ queryIntern: '' as string,
86
70
  };
87
71
  },
88
72
 
@@ -102,6 +86,9 @@ export default defineComponent({
102
86
  },
103
87
  },
104
88
  watch: {
89
+ queryIntern(): void {
90
+ this.$emit('updateSearchPattern', this.queryIntern);
91
+ },
105
92
  filterOrga(): void {
106
93
  if (this.filterOrga) {
107
94
  this.keepOrganisation = true;
@@ -117,12 +104,6 @@ export default defineComponent({
117
104
  this.keepOrganisation = true;
118
105
  }
119
106
  },
120
- mounted() {
121
- if (this.$refs.search) {
122
- (this.$refs.search as HTMLElement).focus();
123
- this.notInitFocus = false;
124
- }
125
- },
126
107
  methods: {
127
108
  onOrganisationSelected(organisation: Organisation): void {
128
109
  if (this.$route.query.productor) {
@@ -17,7 +17,7 @@
17
17
  />
18
18
  </label>
19
19
  <template v-if="rubriquageId">
20
- <div class="ms-3 flex-shrink">
20
+ <div class="ms-3 flex-shrink-0">
21
21
  {{ $t('By rubric') }}
22
22
  </div>
23
23
  <RubriqueChooser
@@ -3,18 +3,12 @@
3
3
  v-if="organisationId && rubriquageData"
4
4
  class="d-flex mt-3 align-items-center"
5
5
  >
6
- <div class="flex-shrink">
7
- <input
8
- id="search-rubriquage-checkbox"
9
- v-model="isRubriquage"
10
- type="checkbox"
11
- class="form-check-input"
12
- >
13
- <label
14
- class="form-check-label"
15
- for="search-rubriquage-checkbox"
16
- >{{ $t('By topic') }}</label>
17
- </div>
6
+ <ClassicCheckbox
7
+ v-model:textInit="isRubriquage"
8
+ class="flex-shrink-0"
9
+ id-checkbox="search-rubriquage-checkbox"
10
+ :label="$t('By topic')"
11
+ />
18
12
  <div
19
13
  v-if="isRubriquage"
20
14
  class="d-flex flex-column mb-2"
@@ -44,6 +38,7 @@
44
38
 
45
39
  <script lang="ts">
46
40
  import octopusApi from '@saooti/octopus-api';
41
+ import ClassicCheckbox from '../../form/ClassicCheckbox.vue';
47
42
  import { Rubriquage } from '@/store/class/rubrique/rubriquage';
48
43
  import { RubriquageFilter } from '@/store/class/rubrique/rubriquageFilter';
49
44
  import { defineComponent, defineAsyncComponent } from 'vue';
@@ -51,6 +46,7 @@ const RubriqueChoice = defineAsyncComponent(() => import('./RubriqueChoice.vue')
51
46
  export default defineComponent({
52
47
  components: {
53
48
  RubriqueChoice,
49
+ ClassicCheckbox
54
50
  },
55
51
  props: {
56
52
  organisationId: { default: undefined, type: String},
@@ -83,4 +83,10 @@ export default defineComponent({
83
83
  })
84
84
  </script>
85
85
 
86
- <style lang="scss"></style>
86
+ <style lang="scss" scoped>
87
+ select {
88
+ -webkit-appearance: none;
89
+ -moz-appearance: none;
90
+ appearance: none;
91
+ }
92
+ </style>
@@ -49,7 +49,7 @@
49
49
  <!-- eslint-enable -->
50
50
  </div>
51
51
  </router-link>
52
- <div class="flex-grow" />
52
+ <div class="flex-grow-1" />
53
53
  <router-link
54
54
  v-if="!isPodcastmaker && playlist.organisation"
55
55
  :to="{