@datagouv/components-next 1.0.2-dev.60 → 1.0.2-dev.62

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.
@@ -1,4 +1,4 @@
1
- import { c as Ke } from "./main-C-0Gkcks.js";
1
+ import { c as Ke } from "./main-DSV-Ai-o.js";
2
2
  import We from "vue";
3
3
  function Fe(I, K) {
4
4
  for (var V = 0; V < K.length; V++) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@datagouv/components-next",
3
- "version": "1.0.2-dev.60",
3
+ "version": "1.0.2-dev.62",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "engines": {
@@ -12,7 +12,7 @@
12
12
  >
13
13
  <SearchInput
14
14
  v-model="q"
15
- :placeholder="placeholder || strategies[currentTypeConfig?.class ?? 'datasets'].placeholder"
15
+ :placeholder="resolvedPlaceholder"
16
16
  />
17
17
  </div>
18
18
  <div class="grid grid-cols-12 mt-2 md:mt-5">
@@ -398,7 +398,7 @@ import ReuseTypeFilter from './Filter/ReuseTypeFilter.vue'
398
398
 
399
399
  const props = withDefaults(defineProps<{
400
400
  config?: GlobalSearchConfig
401
- placeholder?: string
401
+ placeholder?: string | null
402
402
  hideSearchInput?: boolean
403
403
  }>(), {
404
404
  config: getDefaultGlobalSearchConfig,
@@ -428,6 +428,15 @@ const currentTypeConfig = computed(() =>
428
428
  props.config.find(c => configKey(c) === currentType.value),
429
429
  )
430
430
 
431
+ // Precedence: prop → per-type config → strategy default.
432
+ // null at any level means "no placeholder".
433
+ const resolvedPlaceholder = computed(() => {
434
+ if (props.placeholder !== undefined) return props.placeholder ?? ''
435
+ const cfg = currentTypeConfig.value
436
+ if (cfg && 'placeholder' in cfg) return cfg.placeholder ?? ''
437
+ return strategies[cfg?.class ?? 'datasets'].placeholder
438
+ })
439
+
431
440
  const activeBasicFilters = computed(() =>
432
441
  (currentTypeConfig.value?.basicFilters ?? []) as string[],
433
442
  )
@@ -13,8 +13,8 @@
13
13
  type="search"
14
14
  name="q"
15
15
  class="input max-h-12 m-0 rounded-tl shadow-input-blue"
16
- :aria-label="placeholder || t('Rechercher...')"
17
- :placeholder="placeholder || t('Rechercher...')"
16
+ :aria-label="placeholder === null ? t('Rechercher...') : placeholder ?? t('Rechercher...')"
17
+ :placeholder="placeholder === null ? undefined : placeholder ?? t('Rechercher...')"
18
18
  >
19
19
  <BrandedButton
20
20
  class="rounded-l-none rounded-br-none rounded-tr min-h-12"
@@ -38,7 +38,7 @@ import BrandedButton from '../BrandedButton.vue'
38
38
  const q = defineModel<string>({ required: true })
39
39
 
40
40
  withDefaults(defineProps<{
41
- placeholder?: string
41
+ placeholder?: string | null
42
42
  autoFocus?: boolean
43
43
  }>(), {
44
44
  autoFocus: true,
@@ -298,6 +298,7 @@ export type DatasetSearchConfig = {
298
298
  class: 'datasets'
299
299
  key?: string
300
300
  name?: string
301
+ placeholder?: string | null
301
302
  hiddenFilters?: HiddenFilter<DatasetSearchFilters>[]
302
303
  basicFilters?: (keyof DatasetSearchFilters)[]
303
304
  advancedFilters?: (keyof DatasetSearchFilters)[]
@@ -308,6 +309,7 @@ export type DataserviceSearchConfig = {
308
309
  class: 'dataservices'
309
310
  key?: string
310
311
  name?: string
312
+ placeholder?: string | null
311
313
  hiddenFilters?: HiddenFilter<DataserviceSearchFilters>[]
312
314
  basicFilters?: (keyof DataserviceSearchFilters)[]
313
315
  advancedFilters?: (keyof DataserviceSearchFilters)[]
@@ -318,6 +320,7 @@ export type ReuseSearchConfig = {
318
320
  class: 'reuses'
319
321
  key?: string
320
322
  name?: string
323
+ placeholder?: string | null
321
324
  hiddenFilters?: HiddenFilter<ReuseSearchFilters>[]
322
325
  basicFilters?: (keyof ReuseSearchFilters)[]
323
326
  advancedFilters?: (keyof ReuseSearchFilters)[]
@@ -328,6 +331,7 @@ export type OrganizationSearchConfig = {
328
331
  class: 'organizations'
329
332
  key?: string
330
333
  name?: string
334
+ placeholder?: string | null
331
335
  hiddenFilters?: HiddenFilter<OrganizationSearchFilters>[]
332
336
  basicFilters?: (keyof OrganizationSearchFilters)[]
333
337
  advancedFilters?: (keyof OrganizationSearchFilters)[]
@@ -338,6 +342,7 @@ export type TopicSearchConfig = {
338
342
  class: 'topics'
339
343
  key?: string
340
344
  name?: string
345
+ placeholder?: string | null
341
346
  hiddenFilters?: HiddenFilter<TopicSearchFilters>[]
342
347
  basicFilters?: (keyof TopicSearchFilters)[]
343
348
  advancedFilters?: (keyof TopicSearchFilters)[]