@sentropic/design-system-svelte 0.34.52 → 0.34.56

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.
@@ -52,6 +52,7 @@
52
52
  sortBy?: DataTableSort | null;
53
53
  pageSize?: number;
54
54
  page?: number;
55
+ locale?: string;
55
56
  selectAllLabel?: string;
56
57
  selectRowLabel?: string;
57
58
  sortAscendingLabel?: string;
@@ -78,13 +79,14 @@
78
79
  sortBy = $bindable<DataTableSort | null>(null),
79
80
  pageSize,
80
81
  page = $bindable(1),
82
+ locale = "fr-FR",
81
83
  selectAllLabel = "Select all rows",
82
84
  selectRowLabel = "Select row",
83
85
  sortAscendingLabel = "Sorted ascending",
84
86
  sortDescendingLabel = "Sorted descending",
85
87
  sortNoneLabel = "Not sorted",
86
- previousLabel = "Previous",
87
- nextLabel = "Next",
88
+ previousLabel,
89
+ nextLabel,
88
90
  paginationLabel = "Pagination",
89
91
  rangeLabel = ({ start, end, total }) => `${start}–${end} of ${total}`,
90
92
  emptyLabel = "No data",
@@ -93,6 +95,10 @@
93
95
  ...rest
94
96
  }: DataTableProps = $props();
95
97
 
98
+ const isFr = $derived(locale.toLowerCase().startsWith("fr"));
99
+ const resolvedPreviousLabel = $derived(previousLabel ?? (isFr ? "Précédent" : "Previous"));
100
+ const resolvedNextLabel = $derived(nextLabel ?? (isFr ? "Suivant" : "Next"));
101
+
96
102
  const classes = () =>
97
103
  ["st-dataTable", `st-dataTable--${size}`, className].filter(Boolean).join(" ");
98
104
 
@@ -381,7 +387,7 @@
381
387
  disabled={safePage <= 1}
382
388
  onclick={() => goToPage(safePage - 1)}
383
389
  >
384
- {previousLabel}
390
+ {resolvedPreviousLabel}
385
391
  </button>
386
392
  <span class="st-dataTable__pagerStatus" aria-live="polite">
387
393
  {safePage} / {pageCount}
@@ -392,7 +398,7 @@
392
398
  disabled={safePage >= pageCount}
393
399
  onclick={() => goToPage(safePage + 1)}
394
400
  >
395
- {nextLabel}
401
+ {resolvedNextLabel}
396
402
  </button>
397
403
  </nav>
398
404
  </div>
@@ -40,6 +40,7 @@ type DataTableProps = Omit<HTMLTableAttributes, "class"> & {
40
40
  sortBy?: DataTableSort | null;
41
41
  pageSize?: number;
42
42
  page?: number;
43
+ locale?: string;
43
44
  selectAllLabel?: string;
44
45
  selectRowLabel?: string;
45
46
  sortAscendingLabel?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"DataTable.svelte.d.ts","sourceRoot":"","sources":["../src/lib/DataTable.svelte.ts"],"names":[],"mappings":"AAGE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,YAAY,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEhF,MAAM,WAAW,eAAe,CAAC,CAAC,GAAG,YAAY;IAC/C,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxC;;;OAGG;IACH,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,KAAK,cAAc,GAAG,IAAI,CAAC;CACnF;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEjE,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,KAAK,GAAG,MAAM,CAAC;CAC3B;AAGH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAKzD,KAAK,cAAc,GAAG,IAAI,CAAC,mBAAmB,EAAE,OAAO,CAAC,GAAG;IACzD,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,IAAI,EAAE,YAAY,EAAE,CAAC;IACrB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC;IAC7D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,UAAU,CAAC,EAAE,mBAAmB,CAAC;IACjC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,CAAC;IAC9E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,IAAI,CAAC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAwSJ,QAAA,MAAM,SAAS,mFAAwC,CAAC;AACxD,KAAK,SAAS,GAAG,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC;AAC9C,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"DataTable.svelte.d.ts","sourceRoot":"","sources":["../src/lib/DataTable.svelte.ts"],"names":[],"mappings":"AAGE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,YAAY,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEhF,MAAM,WAAW,eAAe,CAAC,CAAC,GAAG,YAAY;IAC/C,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxC;;;OAGG;IACH,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,KAAK,cAAc,GAAG,IAAI,CAAC;CACnF;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEjE,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,KAAK,GAAG,MAAM,CAAC;CAC3B;AAGH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAKzD,KAAK,cAAc,GAAG,IAAI,CAAC,mBAAmB,EAAE,OAAO,CAAC,GAAG;IACzD,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,IAAI,EAAE,YAAY,EAAE,CAAC;IACrB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC;IAC7D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,UAAU,CAAC,EAAE,mBAAmB,CAAC;IACjC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,MAAM,CAAC;IAC9E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,IAAI,CAAC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AA6SJ,QAAA,MAAM,SAAS,mFAAwC,CAAC;AACxD,KAAK,SAAS,GAAG,UAAU,CAAC,OAAO,SAAS,CAAC,CAAC;AAC9C,eAAe,SAAS,CAAC"}
@@ -5,24 +5,27 @@
5
5
  type InlineLoadingProps = Omit<HTMLAttributes<HTMLDivElement>, "class"> & {
6
6
  label?: string;
7
7
  status?: "active" | "success" | "error" | "inactive";
8
+ locale?: string;
8
9
  class?: string;
9
10
  };
10
11
 
11
- const FALLBACK_LABELS = {
12
- active: "Loading",
13
- success: "Completed",
14
- error: "Error",
15
- inactive: "Inactive"
16
- } as const;
17
-
18
12
  let {
19
13
  label,
20
14
  status = "active",
15
+ locale = "fr-FR",
21
16
  class: className,
22
17
  "aria-label": ariaLabel,
23
18
  ...rest
24
19
  }: InlineLoadingProps = $props();
25
20
 
21
+ const isFr = $derived(locale.toLowerCase().startsWith("fr"));
22
+ const FALLBACK_LABELS = $derived({
23
+ active: isFr ? "Chargement" : "Loading",
24
+ success: isFr ? "Terminé" : "Completed",
25
+ error: isFr ? "Erreur" : "Error",
26
+ inactive: isFr ? "Inactif" : "Inactive",
27
+ });
28
+
26
29
  const classes = () =>
27
30
  ["st-inlineLoading", `st-inlineLoading--${status}`, className].filter(Boolean).join(" ");
28
31
 
@@ -2,6 +2,7 @@ import type { HTMLAttributes } from "svelte/elements";
2
2
  type InlineLoadingProps = Omit<HTMLAttributes<HTMLDivElement>, "class"> & {
3
3
  label?: string;
4
4
  status?: "active" | "success" | "error" | "inactive";
5
+ locale?: string;
5
6
  class?: string;
6
7
  };
7
8
  declare const InlineLoading: import("svelte").Component<InlineLoadingProps, {}, "">;
@@ -1 +1 @@
1
- {"version":3,"file":"InlineLoading.svelte.d.ts","sourceRoot":"","sources":["../src/lib/InlineLoading.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAIpD,KAAK,kBAAkB,GAAG,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC,GAAG;IACxE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,QAAQ,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,CAAC;IACrD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AA+CJ,QAAA,MAAM,aAAa,wDAAwC,CAAC;AAC5D,KAAK,aAAa,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC;AACtD,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"InlineLoading.svelte.d.ts","sourceRoot":"","sources":["../src/lib/InlineLoading.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAIpD,KAAK,kBAAkB,GAAG,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC,GAAG;IACxE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,QAAQ,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,CAAC;IACrD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAiDJ,QAAA,MAAM,aAAa,wDAAwC,CAAC;AAC5D,KAAK,aAAa,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC;AACtD,eAAe,aAAa,CAAC"}
@@ -143,7 +143,7 @@
143
143
  {#if selectedOptions.length === 0}
144
144
  <span class="st-multiSelect__placeholder">{resolvedPlaceholder}</span>
145
145
  {:else}
146
- <span class="st-multiSelect__count">{selectedOptions.length} selected</span>
146
+ <span class="st-multiSelect__count">{selectedOptions.length} {isFr ? "sélectionné(s)" : "selected"}</span>
147
147
  {/if}
148
148
  <span class="st-multiSelect__caret" aria-hidden="true">
149
149
  <ChevronDown
@@ -8,6 +8,7 @@
8
8
  message?: string;
9
9
  dismissible?: boolean;
10
10
  dismissLabel?: string;
11
+ locale?: string;
11
12
  onDismiss?: () => void;
12
13
  class?: string;
13
14
  actions?: Snippet;
@@ -19,7 +20,8 @@
19
20
  title,
20
21
  message,
21
22
  dismissible = false,
22
- dismissLabel = "Dismiss",
23
+ dismissLabel,
24
+ locale = "fr-FR",
23
25
  onDismiss,
24
26
  class: className,
25
27
  actions,
@@ -27,6 +29,9 @@
27
29
  ...rest
28
30
  }: NotificationProps = $props();
29
31
 
32
+ const isFr = $derived(locale.toLowerCase().startsWith("fr"));
33
+ const resolvedDismissLabel = $derived(dismissLabel ?? (isFr ? "Fermer" : "Dismiss"));
34
+
30
35
  const classes = () =>
31
36
  ["st-notification", `st-notification--${tone}`, className].filter(Boolean).join(" ");
32
37
 
@@ -54,8 +59,8 @@
54
59
  <button
55
60
  type="button"
56
61
  class="st-notification__close"
57
- aria-label={dismissLabel}
58
- title={dismissLabel}
62
+ aria-label={resolvedDismissLabel}
63
+ title={resolvedDismissLabel}
59
64
  onclick={onDismissClick}
60
65
  >
61
66
  ×
@@ -6,6 +6,7 @@ type NotificationProps = Omit<HTMLAttributes<HTMLElement>, "class"> & {
6
6
  message?: string;
7
7
  dismissible?: boolean;
8
8
  dismissLabel?: string;
9
+ locale?: string;
9
10
  onDismiss?: () => void;
10
11
  class?: string;
11
12
  actions?: Snippet;
@@ -1 +1 @@
1
- {"version":3,"file":"Notification.svelte.d.ts","sourceRoot":"","sources":["../src/lib/Notification.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGpD,KAAK,iBAAiB,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,GAAG;IACpE,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAsDJ,QAAA,MAAM,YAAY,uDAAwC,CAAC;AAC3D,KAAK,YAAY,GAAG,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;AACpD,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"Notification.svelte.d.ts","sourceRoot":"","sources":["../src/lib/Notification.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGpD,KAAK,iBAAiB,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,GAAG;IACpE,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AA0DJ,QAAA,MAAM,YAAY,uDAAwC,CAAC;AAC3D,KAAK,YAAY,GAAG,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;AACpD,eAAe,YAAY,CAAC"}
@@ -4,6 +4,7 @@
4
4
  type PaginationProps = Omit<HTMLAttributes<HTMLElement>, "class"> & {
5
5
  page: number;
6
6
  pageCount: number;
7
+ locale?: string;
7
8
  previousLabel?: string;
8
9
  nextLabel?: string;
9
10
  class?: string;
@@ -13,13 +14,18 @@
13
14
  let {
14
15
  page,
15
16
  pageCount,
16
- previousLabel = "Previous",
17
- nextLabel = "Next",
17
+ locale = "fr-FR",
18
+ previousLabel,
19
+ nextLabel,
18
20
  class: className,
19
21
  onpagechange,
20
22
  ...rest
21
23
  }: PaginationProps = $props();
22
24
 
25
+ const isFr = $derived(locale.toLowerCase().startsWith("fr"));
26
+ const resolvedPreviousLabel = $derived(previousLabel ?? (isFr ? "Précédent" : "Previous"));
27
+ const resolvedNextLabel = $derived(nextLabel ?? (isFr ? "Suivant" : "Next"));
28
+
23
29
  const classes = () => ["st-pagination", className].filter(Boolean).join(" ");
24
30
  const pages = () => Array.from({ length: pageCount }, (_, index) => index + 1);
25
31
  const go = (target: number) => {
@@ -28,7 +34,7 @@
28
34
  </script>
29
35
 
30
36
  <nav {...rest} class={classes()} aria-label="Pagination">
31
- <button type="button" disabled={page <= 1} onclick={() => go(page - 1)}>{previousLabel}</button>
37
+ <button type="button" disabled={page <= 1} onclick={() => go(page - 1)}>{resolvedPreviousLabel}</button>
32
38
  {#each pages() as item}
33
39
  <button
34
40
  type="button"
@@ -40,7 +46,7 @@
40
46
  {item}
41
47
  </button>
42
48
  {/each}
43
- <button type="button" disabled={page >= pageCount} onclick={() => go(page + 1)}>{nextLabel}</button>
49
+ <button type="button" disabled={page >= pageCount} onclick={() => go(page + 1)}>{resolvedNextLabel}</button>
44
50
  </nav>
45
51
 
46
52
  <style>
@@ -2,6 +2,7 @@ import type { HTMLAttributes } from "svelte/elements";
2
2
  type PaginationProps = Omit<HTMLAttributes<HTMLElement>, "class"> & {
3
3
  page: number;
4
4
  pageCount: number;
5
+ locale?: string;
5
6
  previousLabel?: string;
6
7
  nextLabel?: string;
7
8
  class?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"Pagination.svelte.d.ts","sourceRoot":"","sources":["../src/lib/Pagination.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGpD,KAAK,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,GAAG;IAClE,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACvC,CAAC;AAoCJ,QAAA,MAAM,UAAU,qDAAwC,CAAC;AACzD,KAAK,UAAU,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AAChD,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"Pagination.svelte.d.ts","sourceRoot":"","sources":["../src/lib/Pagination.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGpD,KAAK,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,GAAG;IAClE,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACvC,CAAC;AAyCJ,QAAA,MAAM,UAAU,qDAAwC,CAAC;AACzD,KAAK,UAAU,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AAChD,eAAe,UAAU,CAAC"}
@@ -6,6 +6,8 @@
6
6
  width?: string;
7
7
  heading?: boolean;
8
8
  paragraph?: boolean;
9
+ locale?: string;
10
+ loadingLabel?: string;
9
11
  class?: string;
10
12
  };
11
13
 
@@ -14,10 +16,15 @@
14
16
  width,
15
17
  heading = false,
16
18
  paragraph = false,
19
+ locale = "fr-FR",
20
+ loadingLabel,
17
21
  class: className,
18
22
  ...rest
19
23
  }: SkeletonTextProps = $props();
20
24
 
25
+ const isFr = $derived(locale.toLowerCase().startsWith("fr"));
26
+ const resolvedLoadingLabel = $derived(loadingLabel ?? (isFr ? "Chargement…" : "Loading…"));
27
+
21
28
  const wrapperClasses = () => ["st-skeleton", className].filter(Boolean).join(" ");
22
29
  const lineClasses = () =>
23
30
  ["st-skeleton__line", heading ? "st-skeleton__line--heading" : null].filter(Boolean).join(" ");
@@ -30,7 +37,7 @@
30
37
  }
31
38
  </script>
32
39
 
33
- <div {...rest} class={wrapperClasses()} role="status" aria-label="Loading…" aria-busy="true">
40
+ <div {...rest} class={wrapperClasses()} role="status" aria-label={resolvedLoadingLabel} aria-busy="true">
34
41
  {#each Array.from({ length: lineCount() }) as _, i (i)}
35
42
  <span class={lineClasses()} style={lineWidth(i, lineCount()) ? `width:${lineWidth(i, lineCount())}` : undefined}></span>
36
43
  {/each}
@@ -4,6 +4,8 @@ type SkeletonTextProps = Omit<HTMLAttributes<HTMLDivElement>, "class"> & {
4
4
  width?: string;
5
5
  heading?: boolean;
6
6
  paragraph?: boolean;
7
+ locale?: string;
8
+ loadingLabel?: string;
7
9
  class?: string;
8
10
  };
9
11
  declare const SkeletonText: import("svelte").Component<SkeletonTextProps, {}, "">;
@@ -1 +1 @@
1
- {"version":3,"file":"SkeletonText.svelte.d.ts","sourceRoot":"","sources":["../src/lib/SkeletonText.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGpD,KAAK,iBAAiB,GAAG,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC,GAAG;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAoCJ,QAAA,MAAM,YAAY,uDAAwC,CAAC;AAC3D,KAAK,YAAY,GAAG,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;AACpD,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"SkeletonText.svelte.d.ts","sourceRoot":"","sources":["../src/lib/SkeletonText.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGpD,KAAK,iBAAiB,GAAG,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC,GAAG;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAyCJ,QAAA,MAAM,YAAY,uDAAwC,CAAC;AAC3D,KAAK,YAAY,GAAG,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;AACpD,eAAe,YAAY,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sentropic/design-system-svelte",
3
- "version": "0.34.52",
3
+ "version": "0.34.56",
4
4
  "type": "module",
5
5
  "publishConfig": {
6
6
  "access": "public"