allaw-ui 2.1.8 → 2.2.0

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.
@@ -2,14 +2,11 @@ import React from "react";
2
2
  import styles from "./SelectableListItem.module.css";
3
3
  import "../../../styles/global.css";
4
4
  import "../../../styles/icons.css";
5
+ import { slugify } from "../../../utils/utils";
5
6
  var SelectableListItem = function (_a) {
6
7
  var label = _a.label, duration = _a.duration, price = _a.price, isActive = _a.isActive, onClick = _a.onClick, icon = _a.icon;
7
8
  var hasIcon = icon && icon.length > 0;
8
- return (React.createElement("button", { className: "".concat(styles.container, " ").concat(isActive ? styles.active : "", " ").concat(hasIcon ? styles.withIcon : ""), onClick: onClick, "data-cy": "selectable-list-item-".concat(label
9
- .toLowerCase()
10
- .replace(/\s+/g, "")
11
- .replace(/[']/g, "")
12
- .slice(0, 15)) },
9
+ return (React.createElement("button", { className: "".concat(styles.container, " ").concat(isActive ? styles.active : "", " ").concat(hasIcon ? styles.withIcon : ""), onClick: onClick, "data-cy": "selectable-list-item-".concat(slugify(label)) },
13
10
  React.createElement("div", { className: styles.iconContainer }, isActive && React.createElement("span", { className: styles.activeIcon })),
14
11
  hasIcon && (React.createElement("div", { className: styles.iconWrapper },
15
12
  React.createElement("i", { className: "".concat(icon, " ").concat(styles.icon) }))),
@@ -4,7 +4,7 @@ export interface DocumentCardProps {
4
4
  type: "document" | "note" | "invoice" | "waiting" | "payment" | undefined;
5
5
  title: string;
6
6
  date: Date | undefined;
7
- status: "sent" | "received" | "internal" | "notRequired" | "waiting" | "expired" | "canceled" | "failed" | "processing" | "maxAttemptsReached";
7
+ status: "sent" | "received" | "refunded" | "partialyRefunded" | "internal" | "notRequired" | "waiting" | "expired" | "canceled" | "failed" | "processing" | "maxAttemptsReached";
8
8
  documents?: {
9
9
  [key: string]: boolean;
10
10
  };
@@ -23,6 +23,9 @@ var DocumentCard = function (_a) {
23
23
  };
24
24
  var getStatusName = function () {
25
25
  switch (status) {
26
+ case "partialyRefunded":
27
+ case "refunded":
28
+ return "REMBOURSÉ";
26
29
  case "internal":
27
30
  return "INTERNE";
28
31
  case "received":
@@ -71,6 +74,8 @@ var DocumentCard = function (_a) {
71
74
  };
72
75
  var getInformationColor = function (status) {
73
76
  switch (status) {
77
+ case "refunded":
78
+ case "partialyRefunded":
74
79
  case "internal":
75
80
  case "received":
76
81
  case "sent":
@@ -1,2 +1,3 @@
1
1
  import React from "react";
2
2
  export declare function convertToHtml(text: string | React.ReactNode): string;
3
+ export declare const slugify: (text: string) => string;
@@ -46,3 +46,13 @@ export function convertToHtml(text) {
46
46
  .join("<br />");
47
47
  return processedText;
48
48
  }
49
+ export var slugify = function (text) {
50
+ return text
51
+ .normalize("NFD") // Décompose les caractères accentués (é -> e + ´)
52
+ .replace(/[\u0300-\u036f]/g, "") // Supprime les accents
53
+ .toLowerCase() // Met en minuscule
54
+ .replace(/[^a-z0-9\s-]/g, "") // Supprime les caractères spéciaux
55
+ .trim() // Supprime les espaces en début et fin de chaîne
56
+ .replace(/\s+/g, "-") // Remplace les espaces par des tirets
57
+ .slice(0, 15); // Limite à 15 caractères
58
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "allaw-ui",
3
- "version": "2.1.8",
3
+ "version": "2.2.0",
4
4
  "description": "Composants UI pour l'application Allaw",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.esm.js",