@connectif/ui-components 9.0.2 → 9.0.3

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/CHANGELOG.md CHANGED
@@ -1,5 +1,16 @@
1
1
  # Changelog
2
2
 
3
+ ## [9.0.3] - 2026-06-02
4
+
5
+ ### Added
6
+
7
+ - Added `maxNavigablePage` prop to `PageSelector` to cap the navigable page range for both buttons and text input.
8
+ - Added a tooltip on the `PageSelector` next button when it is disabled because the user has reached the last navigable page.
9
+
10
+ ### Changed
11
+
12
+ - Changes the default icon for `success` and `warning` severities of the `Alert` component for the "outlined" versions.
13
+
3
14
  ## [9.0.2] - 2026-05-29
4
15
 
5
16
  ### Added
@@ -24,6 +24,12 @@ export type PageSelectorProps = {
24
24
  * @default false
25
25
  */
26
26
  hideText?: boolean;
27
+ /**
28
+ * Optional maximum navigable page. When provided, navigation (buttons and input)
29
+ * is capped to this value or the last page derived from totalItems/pageSize,
30
+ * whichever is lower.
31
+ */
32
+ maxNavigablePage?: number;
27
33
  /**
28
34
  * The function to call when the page is changed by the user.
29
35
  */
package/dist/i18n/en.d.ts CHANGED
@@ -183,6 +183,7 @@ export declare const en: {
183
183
  START_HOUR: string;
184
184
  };
185
185
  PAGE_SELECTOR: {
186
+ LAST_PAGE_REACHED: string;
186
187
  SHOWING_ITEMS: string;
187
188
  };
188
189
  SELECT_POPOVER: {
package/dist/i18n/es.d.ts CHANGED
@@ -183,6 +183,7 @@ export declare const es: {
183
183
  START_HOUR: string;
184
184
  };
185
185
  PAGE_SELECTOR: {
186
+ LAST_PAGE_REACHED: string;
186
187
  SHOWING_ITEMS: string;
187
188
  };
188
189
  SELECT_POPOVER: {
package/dist/i18n/fr.d.ts CHANGED
@@ -183,6 +183,7 @@ export declare const fr: {
183
183
  START_HOUR: string;
184
184
  };
185
185
  PAGE_SELECTOR: {
186
+ LAST_PAGE_REACHED: string;
186
187
  SHOWING_ITEMS: string;
187
188
  };
188
189
  SELECT_POPOVER: {
package/dist/i18n/it.d.ts CHANGED
@@ -183,6 +183,7 @@ export declare const it: {
183
183
  START_HOUR: string;
184
184
  };
185
185
  PAGE_SELECTOR: {
186
+ LAST_PAGE_REACHED: string;
186
187
  SHOWING_ITEMS: string;
187
188
  };
188
189
  SELECT_POPOVER: {
package/dist/i18n/pt.d.ts CHANGED
@@ -183,6 +183,7 @@ export declare const pt: {
183
183
  START_HOUR: string;
184
184
  };
185
185
  PAGE_SELECTOR: {
186
+ LAST_PAGE_REACHED: string;
186
187
  SHOWING_ITEMS: string;
187
188
  };
188
189
  SELECT_POPOVER: {
package/dist/index.js CHANGED
@@ -7742,9 +7742,9 @@ var useCustomTheme = () => useTheme3();
7742
7742
  import { jsx as jsx2, jsxs } from "react/jsx-runtime";
7743
7743
  var icons2 = {
7744
7744
  info: "information-outline",
7745
- success: "check-circle",
7745
+ success: "check-circle-outline",
7746
7746
  error: "alert-circle-outline",
7747
- warning: "alert"
7747
+ warning: "alert-outline"
7748
7748
  };
7749
7749
  var getColor = (theme2, severity) => {
7750
7750
  switch (severity) {
@@ -14958,6 +14958,7 @@ var DATE_INTERVAL_PICKER = {
14958
14958
  START_HOUR: "Start hour"
14959
14959
  };
14960
14960
  var PAGE_SELECTOR = {
14961
+ LAST_PAGE_REACHED: "You have reached the last page",
14961
14962
  SHOWING_ITEMS: "Showing <b>{from}-{to}</b> of {total}"
14962
14963
  };
14963
14964
  var SELECT_POPOVER = {
@@ -15249,6 +15250,7 @@ var DATE_INTERVAL_PICKER2 = {
15249
15250
  START_HOUR: "Hora de inicio"
15250
15251
  };
15251
15252
  var PAGE_SELECTOR2 = {
15253
+ LAST_PAGE_REACHED: "Has llegado a la \xFAltima p\xE1gina",
15252
15254
  SHOWING_ITEMS: "Mostrando <b>{from}-{to}</b> de {total}"
15253
15255
  };
15254
15256
  var SELECT_POPOVER2 = {
@@ -15555,6 +15557,7 @@ var DATE_INTERVAL_PICKER3 = {
15555
15557
  START_HOUR: "Heure de d\xE9but"
15556
15558
  };
15557
15559
  var PAGE_SELECTOR3 = {
15560
+ LAST_PAGE_REACHED: "Vous avez atteint la derni\xE8re page",
15558
15561
  SHOWING_ITEMS: "Montrer <b>{from}-{to}</b> de {total}"
15559
15562
  };
15560
15563
  var SELECT_POPOVER3 = {
@@ -15846,6 +15849,7 @@ var DATE_INTERVAL_PICKER4 = {
15846
15849
  START_HOUR: "Ora di inizio"
15847
15850
  };
15848
15851
  var PAGE_SELECTOR4 = {
15852
+ LAST_PAGE_REACHED: "Hai raggiunto l'ultima pagina",
15849
15853
  SHOWING_ITEMS: "Mostra <b>{from}-{to}</b> di {total}"
15850
15854
  };
15851
15855
  var SELECT_POPOVER4 = {
@@ -16122,6 +16126,7 @@ var DATE_INTERVAL_PICKER5 = {
16122
16126
  START_HOUR: "Hora de in\xEDcio"
16123
16127
  };
16124
16128
  var PAGE_SELECTOR5 = {
16129
+ LAST_PAGE_REACHED: "Voc\xEA chegou \xE0 \xFAltima p\xE1gina",
16125
16130
  SHOWING_ITEMS: "Exibindo <b>{from}-{to}</b> de {total}"
16126
16131
  };
16127
16132
  var SELECT_POPOVER5 = {
@@ -26415,18 +26420,24 @@ var PageSelector = ({
26415
26420
  totalItems,
26416
26421
  text,
26417
26422
  hideText = false,
26423
+ maxNavigablePage,
26418
26424
  onPageChange
26419
26425
  }) => {
26420
26426
  const { t } = useTranslation();
26421
26427
  const totalPages = Math.ceil(totalItems / pageSize);
26428
+ const effectiveMaxPage = Math.min(
26429
+ maxNavigablePage ?? totalPages,
26430
+ totalPages
26431
+ );
26422
26432
  const handlePrevious = React86.useCallback(() => {
26423
26433
  if (currentPage > 1) {
26424
26434
  onPageChange(Math.max(1, currentPage - 1));
26425
26435
  }
26426
26436
  }, [currentPage, onPageChange]);
26437
+ const isNextDisabled = currentPage >= effectiveMaxPage;
26427
26438
  const handleNext = React86.useCallback(() => {
26428
- onPageChange(Math.min(totalPages, currentPage + 1));
26429
- }, [currentPage, onPageChange, totalPages]);
26439
+ onPageChange(Math.min(effectiveMaxPage, currentPage + 1));
26440
+ }, [currentPage, effectiveMaxPage, onPageChange]);
26430
26441
  const displayText = hideText ? "" : text || t(
26431
26442
  "PAGE_SELECTOR.SHOWING_ITEMS",
26432
26443
  totalItems === 0 ? { from: 0, to: 0, total: 0 } : {
@@ -26470,7 +26481,7 @@ var PageSelector = ({
26470
26481
  onPageChange(value || 1);
26471
26482
  },
26472
26483
  minValue: 1,
26473
- maxValue: totalPages,
26484
+ maxValue: effectiveMaxPage,
26474
26485
  "data-testid": "page-selector-input",
26475
26486
  sx: {
26476
26487
  width: "32px",
@@ -26484,12 +26495,19 @@ var PageSelector = ({
26484
26495
  }
26485
26496
  ),
26486
26497
  /* @__PURE__ */ jsx148(
26487
- IconButton_default,
26498
+ Tooltip_default,
26488
26499
  {
26489
- iconId: "chevron-right",
26490
- onClick: handleNext,
26491
- disabled: currentPage >= totalPages,
26492
- "data-test": "page-selector-next"
26500
+ title: isNextDisabled ? t("PAGE_SELECTOR.LAST_PAGE_REACHED") : "",
26501
+ allowDisabled: true,
26502
+ children: /* @__PURE__ */ jsx148(
26503
+ IconButton_default,
26504
+ {
26505
+ iconId: "chevron-right",
26506
+ onClick: handleNext,
26507
+ disabled: isNextDisabled,
26508
+ "data-test": "page-selector-next"
26509
+ }
26510
+ )
26493
26511
  }
26494
26512
  )
26495
26513
  ] })