@recordair/ui-core 0.3.0 → 0.3.4

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.
@@ -0,0 +1,24 @@
1
+ import { type ReactNode } from "react";
2
+ import { type ButtonSize, type ButtonVariant } from "./buttonStyles";
3
+ type MenuButtonAlign = "start" | "end" | "stretch";
4
+ type MenuButtonProps = {
5
+ label: ReactNode;
6
+ children: ReactNode;
7
+ variant?: ButtonVariant;
8
+ size?: ButtonSize;
9
+ block?: boolean;
10
+ /** Alignement du panneau sous le trigger. `stretch` = même largeur. */
11
+ align?: MenuButtonAlign;
12
+ className?: string;
13
+ menuClassName?: string;
14
+ };
15
+ /**
16
+ * Bouton (stylé comme un `Button` du DS) qui déroule un menu de contenu libre.
17
+ * Encapsule l'état d'ouverture, la fermeture au clic extérieur et à `Escape`,
18
+ * et l'ARIA. Le contenu (`children`) est arbitraire : items, formulaires, liens.
19
+ * Le menu se ferme automatiquement après un clic sur un `button` ou un lien.
20
+ */
21
+ declare const MenuButton: ({ label, children, variant, size, block, align, className, menuClassName, }: MenuButtonProps) => import("react").JSX.Element;
22
+ export { MenuButton };
23
+ export type { MenuButtonAlign, MenuButtonProps };
24
+ //# sourceMappingURL=MenuButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuButton.d.ts","sourceRoot":"","sources":["../src/MenuButton.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAsC,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAG3E,OAAO,EAAmB,KAAK,UAAU,EAAE,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEtF,KAAK,eAAe,GAAG,OAAO,GAAG,KAAK,GAAG,SAAS,CAAC;AAEnD,KAAK,eAAe,GAAG;IACrB,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,SAAS,CAAC;IACpB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,uEAAuE;IACvE,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAQF;;;;;GAKG;AACH,QAAA,MAAM,UAAU,GAAI,6EASjB,eAAe,gCAuEjB,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,CAAC;AACtB,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,CAAC"}
@@ -0,0 +1,53 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useEffect, useId, useRef, useState } from "react";
4
+ import { ChevronDownIcon } from "./icons";
5
+ import { classNames } from "./classNames";
6
+ import { buttonClassName } from "./buttonStyles";
7
+ const alignClasses = {
8
+ start: "left-0",
9
+ end: "right-0",
10
+ stretch: "inset-x-0",
11
+ };
12
+ /**
13
+ * Bouton (stylé comme un `Button` du DS) qui déroule un menu de contenu libre.
14
+ * Encapsule l'état d'ouverture, la fermeture au clic extérieur et à `Escape`,
15
+ * et l'ARIA. Le contenu (`children`) est arbitraire : items, formulaires, liens.
16
+ * Le menu se ferme automatiquement après un clic sur un `button` ou un lien.
17
+ */
18
+ const MenuButton = ({ label, children, variant = "secondary", size = "md", block = false, align = block ? "stretch" : "start", className, menuClassName, }) => {
19
+ const menuId = useId();
20
+ const rootRef = useRef(null);
21
+ const triggerRef = useRef(null);
22
+ const [open, setOpen] = useState(false);
23
+ useEffect(() => {
24
+ if (!open) {
25
+ return undefined;
26
+ }
27
+ const handlePointer = (event) => {
28
+ if (rootRef.current && !rootRef.current.contains(event.target)) {
29
+ setOpen(false);
30
+ }
31
+ };
32
+ const handleKey = (event) => {
33
+ if (event.key === "Escape") {
34
+ setOpen(false);
35
+ triggerRef.current?.focus();
36
+ }
37
+ };
38
+ document.addEventListener("mousedown", handlePointer);
39
+ document.addEventListener("keydown", handleKey);
40
+ return () => {
41
+ document.removeEventListener("mousedown", handlePointer);
42
+ document.removeEventListener("keydown", handleKey);
43
+ };
44
+ }, [open]);
45
+ const handleMenuClick = (event) => {
46
+ if (event.target.closest("button, a")) {
47
+ setOpen(false);
48
+ }
49
+ };
50
+ return (_jsxs("div", { ref: rootRef, className: classNames("relative", block && "w-full", className), children: [_jsxs("button", { ref: triggerRef, type: "button", "aria-controls": menuId, "aria-expanded": open, "aria-haspopup": "menu", onClick: () => setOpen((current) => !current), className: buttonClassName({ variant, size, block }), children: [label, _jsx(ChevronDownIcon, { "aria-hidden": true, className: classNames("size-4 transition-transform", open && "rotate-180") })] }), open ? (_jsx("div", { id: menuId, role: "menu", onClick: handleMenuClick, className: classNames("absolute top-full z-50 mt-2 flex flex-col gap-0.5 rounded-xl border border-neutral-200 bg-neutral-0 p-2 shadow-elevated", alignClasses[align], menuClassName), children: children })) : null] }));
51
+ };
52
+ export { MenuButton };
53
+ //# sourceMappingURL=MenuButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MenuButton.js","sourceRoot":"","sources":["../src/MenuButton.tsx"],"names":[],"mappings":"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"}
@@ -1,16 +1,31 @@
1
+ import type { ElementType, ReactNode } from "react";
1
2
  type MenuSelectOption = {
2
3
  id: string;
3
4
  label: string;
4
5
  disabled?: boolean;
6
+ /** Info-bulle sur une option désactivée (ex. "active ta position pour trier par distance"). */
7
+ disabledHint?: string;
8
+ /**
9
+ * Si fourni, l'option navigue (rendue via `as`) au lieu d'appeler
10
+ * `onSelect` — utile quand la sélection doit changer l'URL (filtres de
11
+ * recherche côté serveur) plutôt qu'un simple état client.
12
+ */
13
+ href?: string;
5
14
  };
6
15
  type MenuSelectProps = {
16
+ /** Nom accessible du menu (aria-label / aria-controls). */
7
17
  label: string;
18
+ /** Contenu visuel du déclencheur. Par défaut, affiche `label`. */
19
+ trigger?: ReactNode;
8
20
  options: readonly MenuSelectOption[];
9
21
  selectedId?: string;
10
- onSelect: (id: string) => void;
22
+ /** Requis seulement pour les options sans `href`. */
23
+ onSelect?: (id: string) => void;
24
+ /** Composant de lien pour les options `href` (ex. le `Link` d'un routeur). */
25
+ as?: ElementType;
11
26
  className?: string;
12
27
  };
13
- declare const MenuSelect: ({ label, options, selectedId, onSelect, className }: MenuSelectProps) => import("react").JSX.Element;
28
+ declare const MenuSelect: ({ label, trigger, options, selectedId, onSelect, as: LinkComponent, className, }: MenuSelectProps) => import("react").JSX.Element;
14
29
  export { MenuSelect };
15
30
  export type { MenuSelectOption, MenuSelectProps };
16
31
  //# sourceMappingURL=MenuSelect.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MenuSelect.d.ts","sourceRoot":"","sources":["../src/MenuSelect.tsx"],"names":[],"mappings":"AAMA,KAAK,gBAAgB,GAAG;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,KAAK,eAAe,GAAG;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,SAAS,gBAAgB,EAAE,CAAC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,QAAA,MAAM,UAAU,GAAI,qDAAqD,eAAe,gCA8EvF,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,CAAC;AACtB,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"MenuSelect.d.ts","sourceRoot":"","sources":["../src/MenuSelect.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIpD,KAAK,gBAAgB,GAAG;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+FAA+F;IAC/F,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,eAAe,GAAG;IACrB,2DAA2D;IAC3D,KAAK,EAAE,MAAM,CAAC;IACd,kEAAkE;IAClE,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,OAAO,EAAE,SAAS,gBAAgB,EAAE,CAAC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qDAAqD;IACrD,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,8EAA8E;IAC9E,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,QAAA,MAAM,UAAU,GAAI,kFAQjB,eAAe,gCAsHjB,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,CAAC;AACtB,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,CAAC"}
@@ -3,7 +3,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { useEffect, useId, useRef, useState } from "react";
4
4
  import { ChevronDownIcon } from "./icons";
5
5
  import { classNames } from "./classNames";
6
- const MenuSelect = ({ label, options, selectedId, onSelect, className }) => {
6
+ const MenuSelect = ({ label, trigger, options, selectedId, onSelect, as: LinkComponent = "a", className, }) => {
7
7
  const menuId = useId();
8
8
  const rootRef = useRef(null);
9
9
  const triggerRef = useRef(null);
@@ -31,11 +31,24 @@ const MenuSelect = ({ label, options, selectedId, onSelect, className }) => {
31
31
  };
32
32
  }, [open]);
33
33
  const select = (id) => {
34
- onSelect(id);
34
+ onSelect?.(id);
35
35
  setOpen(false);
36
36
  triggerRef.current?.focus();
37
37
  };
38
- return (_jsxs("div", { ref: rootRef, className: classNames("relative inline-flex", className), children: [_jsxs("button", { ref: triggerRef, type: "button", "aria-controls": menuId, "aria-expanded": open, "aria-haspopup": "menu", onClick: () => setOpen((current) => !current), className: "flex h-[var(--size-btn-sm)] items-center gap-2 rounded-lg border border-neutral-200 bg-neutral-0 px-4 text-label font-medium text-neutral-700 transition hover:bg-neutral-50 focus-visible:outline-none focus-visible:shadow-focus", children: [label, _jsx(ChevronDownIcon, { "aria-hidden": true, className: classNames("size-4 text-neutral-500 transition-transform", open && "rotate-180") })] }), open ? (_jsx("div", { id: menuId, role: "menu", className: "absolute left-0 top-full z-20 mt-1 flex w-[var(--size-mobile-menu)] flex-col rounded-lg border border-neutral-200 bg-neutral-0 p-1 shadow-elevated", children: options.map((option) => (_jsx("button", { type: "button", role: "menuitemradio", "aria-checked": option.id === selectedId, disabled: option.disabled, onClick: () => select(option.id), className: classNames("rounded-md px-3 py-2 text-left text-label transition hover:bg-neutral-50 focus-visible:outline-none focus-visible:shadow-focus disabled:cursor-not-allowed disabled:opacity-50", option.id === selectedId ? "font-semibold text-neutral-900" : "text-neutral-700"), children: option.label }, option.id))) })) : null] }));
38
+ const optionClassName = (option) => classNames("rounded-md px-3 py-2 text-left text-label transition focus-visible:outline-none focus-visible:shadow-focus", option.id === selectedId
39
+ ? "bg-gradient-to-br from-brand-gradient-from to-brand-gradient-to font-semibold text-neutral-0"
40
+ : option.disabled
41
+ ? "cursor-not-allowed text-neutral-400"
42
+ : "text-neutral-700 hover:bg-neutral-50");
43
+ return (_jsxs("div", { ref: rootRef, className: classNames("relative inline-flex", className), children: [_jsxs("button", { ref: triggerRef, type: "button", "aria-controls": menuId, "aria-expanded": open, "aria-haspopup": "menu", "aria-label": label, onClick: () => setOpen((current) => !current), className: "flex h-[var(--size-btn-sm)] items-center gap-2 rounded-lg border border-neutral-200 bg-neutral-0 px-4 text-label font-medium text-neutral-700 transition hover:bg-neutral-50 focus-visible:outline-none focus-visible:shadow-focus", children: [trigger ?? label, _jsx(ChevronDownIcon, { "aria-hidden": true, className: classNames("size-4 text-neutral-500 transition-transform", open && "rotate-180") })] }), open ? (_jsx("div", { id: menuId, role: "menu", "aria-label": label, className: "absolute left-0 top-full z-20 mt-1 flex w-[var(--size-mobile-menu)] flex-col rounded-lg border border-neutral-200 bg-neutral-0 p-1 shadow-elevated", children: options.map((option) => {
44
+ if (option.disabled) {
45
+ return (_jsx("span", { role: "menuitemradio", "aria-checked": false, "aria-disabled": "true", title: option.disabledHint, className: optionClassName(option), children: option.label }, option.id));
46
+ }
47
+ if (option.href) {
48
+ return (_jsx(LinkComponent, { href: option.href, role: "menuitemradio", "aria-checked": option.id === selectedId, onClick: () => setOpen(false), className: optionClassName(option), children: option.label }, option.id));
49
+ }
50
+ return (_jsx("button", { type: "button", role: "menuitemradio", "aria-checked": option.id === selectedId, onClick: () => select(option.id), className: optionClassName(option), children: option.label }, option.id));
51
+ }) })) : null] }));
39
52
  };
40
53
  export { MenuSelect };
41
54
  //# sourceMappingURL=MenuSelect.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MenuSelect.js","sourceRoot":"","sources":["../src/MenuSelect.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MenuSelect.js","sourceRoot":"","sources":["../src/MenuSelect.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { ReactNode } from "react";
1
+ import type { ElementType, ReactNode } from "react";
2
2
  type NavigationListTone = "brand" | "inverted";
3
3
  type NavigationListItem = {
4
4
  href: string;
@@ -12,9 +12,14 @@ type NavigationListProps = {
12
12
  activeHref?: string;
13
13
  label: string;
14
14
  tone?: NavigationListTone;
15
+ /**
16
+ * Composant de lien à utiliser à la place de `<a>` (ex. le `Link`
17
+ * localisé d'un routeur applicatif). Même convention que `RecordairLogo`.
18
+ */
19
+ as?: ElementType;
15
20
  className?: string;
16
21
  };
17
- declare const NavigationList: ({ items, activeHref, label, tone, className, }: NavigationListProps) => import("react").JSX.Element;
22
+ declare const NavigationList: ({ items, activeHref, label, tone, as: LinkComponent, className, }: NavigationListProps) => import("react").JSX.Element;
18
23
  export { NavigationList };
19
24
  export type { NavigationListItem, NavigationListProps, NavigationListTone };
20
25
  //# sourceMappingURL=NavigationList.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationList.d.ts","sourceRoot":"","sources":["../src/NavigationList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,KAAK,kBAAkB,GAAG,OAAO,GAAG,UAAU,CAAC;AAE/C,KAAK,kBAAkB,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,SAAS,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,KAAK,mBAAmB,GAAG;IACzB,KAAK,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAYF,QAAA,MAAM,cAAc,GAAI,gDAMrB,mBAAmB,gCAmCrB,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC;AAC1B,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,CAAC"}
1
+ {"version":3,"file":"NavigationList.d.ts","sourceRoot":"","sources":["../src/NavigationList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGpD,KAAK,kBAAkB,GAAG,OAAO,GAAG,UAAU,CAAC;AAE/C,KAAK,kBAAkB,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,SAAS,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,KAAK,mBAAmB,GAAG;IACzB,KAAK,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B;;;OAGG;IACH,EAAE,CAAC,EAAE,WAAW,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAYF,QAAA,MAAM,cAAc,GAAI,mEAOrB,mBAAmB,gCAmCrB,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC;AAC1B,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,CAAC"}
@@ -8,14 +8,14 @@ const inactiveClasses = {
8
8
  brand: "text-neutral-600 hover:bg-neutral-100 hover:text-neutral-900",
9
9
  inverted: "text-neutral-300 hover:bg-neutral-0/10 hover:text-neutral-0",
10
10
  };
11
- const NavigationList = ({ items, activeHref, label, tone = "brand", className, }) => (_jsx("nav", { "aria-label": label, className: classNames("flex flex-col gap-1", className), children: items.map((item) => {
11
+ const NavigationList = ({ items, activeHref, label, tone = "brand", as: LinkComponent = "a", className, }) => (_jsx("nav", { "aria-label": label, className: classNames("flex flex-col gap-1", className), children: items.map((item) => {
12
12
  const target = item.href.split("#")[0]?.split("?")[0] || "/";
13
13
  const active = Boolean(activeHref
14
14
  && !item.href.includes("#")
15
15
  && (item.exact || target === "/"
16
16
  ? activeHref === target
17
17
  : activeHref === target || activeHref.startsWith(`${target}/`)));
18
- return (_jsxs("a", { href: item.href, "aria-current": active ? "page" : undefined, className: classNames("flex items-center gap-3 rounded-lg px-4 py-3 text-sm font-medium transition-colors focus-visible:outline-none focus-visible:shadow-focus", active
18
+ return (_jsxs(LinkComponent, { href: item.href, "aria-current": active ? "page" : undefined, className: classNames("flex items-center gap-3 rounded-lg px-4 py-3 text-sm font-medium transition-colors focus-visible:outline-none focus-visible:shadow-focus", active
19
19
  ? activeClasses[tone]
20
20
  : inactiveClasses[tone]), children: [item.leadingIcon ? _jsx("span", { "aria-hidden": true, className: "shrink-0", children: item.leadingIcon }) : null, _jsx("span", { className: "flex-1", children: item.label }), item.badge ? (_jsx("span", { className: "grid min-w-[var(--size-nav-badge-min)] place-items-center rounded-full bg-error px-2 py-0.5 text-overline font-bold text-neutral-0", children: item.badge })) : null] }, item.href));
21
21
  }) }));
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationList.js","sourceRoot":"","sources":["../src/NavigationList.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAoB1C,MAAM,aAAa,GAAuC;IACxD,KAAK,EAAE,yCAAyC;IAChD,QAAQ,EAAE,oCAAoC;CAC/C,CAAC;AAEF,MAAM,eAAe,GAAuC;IAC1D,KAAK,EAAE,8DAA8D;IACrE,QAAQ,EAAE,6DAA6D;CACxE,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,EACtB,KAAK,EACL,UAAU,EACV,KAAK,EACL,IAAI,GAAG,OAAO,EACd,SAAS,GACW,EAAE,EAAE,CAAC,CACzB,4BAAiB,KAAK,EAAE,SAAS,EAAE,UAAU,CAAC,qBAAqB,EAAE,SAAS,CAAC,YAC5E,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAClB,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;QAC7D,MAAM,MAAM,GAAG,OAAO,CACpB,UAAU;eACP,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;eACxB,CAAC,IAAI,CAAC,KAAK,IAAI,MAAM,KAAK,GAAG;gBAC9B,CAAC,CAAC,UAAU,KAAK,MAAM;gBACvB,CAAC,CAAC,UAAU,KAAK,MAAM,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,CAClE,CAAC;QAEF,OAAO,CACL,aAEE,IAAI,EAAE,IAAI,CAAC,IAAI,kBACD,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EACzC,SAAS,EAAE,UAAU,CACnB,0IAA0I,EAC1I,MAAM;gBACJ,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC;gBACrB,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,CAC1B,aAEA,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,oCAAkB,SAAS,EAAC,UAAU,YAAE,IAAI,CAAC,WAAW,GAAQ,CAAC,CAAC,CAAC,IAAI,EAC3F,eAAM,SAAS,EAAC,QAAQ,YAAE,IAAI,CAAC,KAAK,GAAQ,EAC3C,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CACZ,eAAM,SAAS,EAAC,oIAAoI,YACjJ,IAAI,CAAC,KAAK,GACN,CACR,CAAC,CAAC,CAAC,IAAI,KAhBH,IAAI,CAAC,IAAI,CAiBZ,CACL,CAAC;IACJ,CAAC,CAAC,GACE,CACP,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"NavigationList.js","sourceRoot":"","sources":["../src/NavigationList.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAyB1C,MAAM,aAAa,GAAuC;IACxD,KAAK,EAAE,yCAAyC;IAChD,QAAQ,EAAE,oCAAoC;CAC/C,CAAC;AAEF,MAAM,eAAe,GAAuC;IAC1D,KAAK,EAAE,8DAA8D;IACrE,QAAQ,EAAE,6DAA6D;CACxE,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,EACtB,KAAK,EACL,UAAU,EACV,KAAK,EACL,IAAI,GAAG,OAAO,EACd,EAAE,EAAE,aAAa,GAAG,GAAG,EACvB,SAAS,GACW,EAAE,EAAE,CAAC,CACzB,4BAAiB,KAAK,EAAE,SAAS,EAAE,UAAU,CAAC,qBAAqB,EAAE,SAAS,CAAC,YAC5E,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QAClB,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;QAC7D,MAAM,MAAM,GAAG,OAAO,CACpB,UAAU;eACP,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;eACxB,CAAC,IAAI,CAAC,KAAK,IAAI,MAAM,KAAK,GAAG;gBAC9B,CAAC,CAAC,UAAU,KAAK,MAAM;gBACvB,CAAC,CAAC,UAAU,KAAK,MAAM,IAAI,UAAU,CAAC,UAAU,CAAC,GAAG,MAAM,GAAG,CAAC,CAAC,CAClE,CAAC;QAEF,OAAO,CACL,MAAC,aAAa,IAEZ,IAAI,EAAE,IAAI,CAAC,IAAI,kBACD,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EACzC,SAAS,EAAE,UAAU,CACnB,0IAA0I,EAC1I,MAAM;gBACJ,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC;gBACrB,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,CAC1B,aAEA,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,oCAAkB,SAAS,EAAC,UAAU,YAAE,IAAI,CAAC,WAAW,GAAQ,CAAC,CAAC,CAAC,IAAI,EAC3F,eAAM,SAAS,EAAC,QAAQ,YAAE,IAAI,CAAC,KAAK,GAAQ,EAC3C,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CACZ,eAAM,SAAS,EAAC,oIAAoI,YACjJ,IAAI,CAAC,KAAK,GACN,CACR,CAAC,CAAC,CAAC,IAAI,KAhBH,IAAI,CAAC,IAAI,CAiBA,CACjB,CAAC;IACJ,CAAC,CAAC,GACE,CACP,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"}
@@ -0,0 +1,17 @@
1
+ import type { ReactNode } from "react";
2
+ type SuggestionListProps = {
3
+ /** Libellé au-dessus de la liste (ex. "Suggestions de destinations"). */
4
+ heading?: ReactNode;
5
+ children: ReactNode;
6
+ className?: string;
7
+ };
8
+ /**
9
+ * Panneau flottant pour une liste de `SuggestionListItem` (dropdown de
10
+ * destination/adresse). Gère uniquement la présentation (carte, en-tête,
11
+ * zone scrollable) — le positionnement (`absolute`, largeur, `open`/`close`)
12
+ * reste à la charge de l'appelant, propre à son contexte (champ, formulaire).
13
+ */
14
+ declare const SuggestionList: ({ heading, children, className }: SuggestionListProps) => import("react").JSX.Element;
15
+ export { SuggestionList };
16
+ export type { SuggestionListProps };
17
+ //# sourceMappingURL=SuggestionList.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SuggestionList.d.ts","sourceRoot":"","sources":["../src/SuggestionList.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC,KAAK,mBAAmB,GAAG;IACzB,yEAAyE;IACzE,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;;;GAKG;AACH,QAAA,MAAM,cAAc,GAAI,kCAAkC,mBAAmB,gCAY5E,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC;AAC1B,YAAY,EAAE,mBAAmB,EAAE,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { classNames } from "./classNames";
3
+ /**
4
+ * Panneau flottant pour une liste de `SuggestionListItem` (dropdown de
5
+ * destination/adresse). Gère uniquement la présentation (carte, en-tête,
6
+ * zone scrollable) — le positionnement (`absolute`, largeur, `open`/`close`)
7
+ * reste à la charge de l'appelant, propre à son contexte (champ, formulaire).
8
+ */
9
+ const SuggestionList = ({ heading, children, className }) => (_jsxs("div", { className: classNames("overflow-hidden rounded-lg border border-neutral-200 bg-neutral-0 shadow-elevated", className), children: [heading ? (_jsx("p", { className: "px-4 pb-1 pt-3 text-xs font-semibold text-neutral-500", children: heading })) : null, _jsx("div", { className: "max-h-[60vh] overflow-auto p-2", children: children })] }));
10
+ export { SuggestionList };
11
+ //# sourceMappingURL=SuggestionList.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SuggestionList.js","sourceRoot":"","sources":["../src/SuggestionList.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAS1C;;;;;GAKG;AACH,MAAM,cAAc,GAAG,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAuB,EAAE,EAAE,CAAC,CAChF,eACE,SAAS,EAAE,UAAU,CACnB,mFAAmF,EACnF,SAAS,CACV,aAEA,OAAO,CAAC,CAAC,CAAC,CACT,YAAG,SAAS,EAAC,uDAAuD,YAAE,OAAO,GAAK,CACnF,CAAC,CAAC,CAAC,IAAI,EACR,cAAK,SAAS,EAAC,gCAAgC,YAAE,QAAQ,GAAO,IAC5D,CACP,CAAC;AAEF,OAAO,EAAE,cAAc,EAAE,CAAC"}
@@ -0,0 +1,20 @@
1
+ import type { ReactNode } from "react";
2
+ import type { IconBoxTone } from "./IconBox";
3
+ type SuggestionListItemProps = {
4
+ icon: ReactNode;
5
+ title: ReactNode;
6
+ subtitle?: ReactNode;
7
+ tone?: IconBoxTone;
8
+ disabled?: boolean;
9
+ onClick?: () => void;
10
+ className?: string;
11
+ };
12
+ /**
13
+ * Ligne icône + titre + sous-titre (2 lignes max), pensée pour une liste de
14
+ * suggestions (destination, adresse, résultat de recherche...). Toute la
15
+ * ligne est cliquable et se surligne au survol — pas seulement le texte.
16
+ */
17
+ declare const SuggestionListItem: ({ icon, title, subtitle, tone, disabled, onClick, className, }: SuggestionListItemProps) => import("react").JSX.Element;
18
+ export { SuggestionListItem };
19
+ export type { SuggestionListItemProps };
20
+ //# sourceMappingURL=SuggestionListItem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SuggestionListItem.d.ts","sourceRoot":"","sources":["../src/SuggestionListItem.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAG7C,KAAK,uBAAuB,GAAG;IAC7B,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;;GAIG;AACH,QAAA,MAAM,kBAAkB,GAAI,gEAQzB,uBAAuB,gCAkBzB,CAAC;AAEF,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAC9B,YAAY,EAAE,uBAAuB,EAAE,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { IconBox } from "./IconBox";
3
+ import { classNames } from "./classNames";
4
+ /**
5
+ * Ligne icône + titre + sous-titre (2 lignes max), pensée pour une liste de
6
+ * suggestions (destination, adresse, résultat de recherche...). Toute la
7
+ * ligne est cliquable et se surligne au survol — pas seulement le texte.
8
+ */
9
+ const SuggestionListItem = ({ icon, title, subtitle, tone = "neutral", disabled = false, onClick, className, }) => (_jsxs("button", { type: "button", onClick: onClick, disabled: disabled, className: classNames("flex w-full items-center gap-4 rounded-lg px-2 py-2 text-left transition hover:bg-neutral-100 focus-visible:outline-none focus-visible:shadow-focus disabled:pointer-events-none disabled:opacity-60", className), children: [_jsx(IconBox, { tone: tone, size: "md", icon: icon }), _jsxs("span", { className: "flex min-w-0 flex-col overflow-hidden", children: [_jsx("span", { className: "truncate text-[15px] font-semibold text-neutral-900", children: title }), subtitle ? (_jsx("span", { className: "line-clamp-2 text-sm text-neutral-500", children: subtitle })) : null] })] }));
10
+ export { SuggestionListItem };
11
+ //# sourceMappingURL=SuggestionListItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SuggestionListItem.js","sourceRoot":"","sources":["../src/SuggestionListItem.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAY1C;;;;GAIG;AACH,MAAM,kBAAkB,GAAG,CAAC,EAC1B,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,IAAI,GAAG,SAAS,EAChB,QAAQ,GAAG,KAAK,EAChB,OAAO,EACP,SAAS,GACe,EAAE,EAAE,CAAC,CAC7B,kBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,UAAU,CACnB,sMAAsM,EACtM,SAAS,CACV,aAED,KAAC,OAAO,IAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAC,IAAI,EAAC,IAAI,EAAE,IAAI,GAAI,EAC7C,gBAAM,SAAS,EAAC,uCAAuC,aACrD,eAAM,SAAS,EAAC,qDAAqD,YAAE,KAAK,GAAQ,EACnF,QAAQ,CAAC,CAAC,CAAC,CACV,eAAM,SAAS,EAAC,uCAAuC,YAAE,QAAQ,GAAQ,CAC1E,CAAC,CAAC,CAAC,IAAI,IACH,IACA,CACV,CAAC;AAEF,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
package/dist/index.d.ts CHANGED
@@ -8,6 +8,8 @@ export { Badge } from "./Badge";
8
8
  export type { BadgeProps, BadgeSize, BadgeTone } from "./Badge";
9
9
  export { Button } from "./Button";
10
10
  export type { ButtonProps, ButtonShape, ButtonSize, ButtonVariant } from "./Button";
11
+ export { buttonClassName } from "./buttonStyles";
12
+ export type { ButtonStyleOptions } from "./buttonStyles";
11
13
  export { ButtonGroup } from "./ButtonGroup";
12
14
  export type { ButtonGroupProps } from "./ButtonGroup";
13
15
  export { Card } from "./Card";
@@ -48,6 +50,8 @@ export { LinkTabs } from "./LinkTabs";
48
50
  export type { LinkTabItem, LinkTabsProps } from "./LinkTabs";
49
51
  export { LinkButton } from "./LinkButton";
50
52
  export type { LinkButtonProps } from "./LinkButton";
53
+ export { MenuButton } from "./MenuButton";
54
+ export type { MenuButtonAlign, MenuButtonProps } from "./MenuButton";
51
55
  export { MenuSelect } from "./MenuSelect";
52
56
  export type { MenuSelectOption, MenuSelectProps } from "./MenuSelect";
53
57
  export { Modal } from "./Modal";
@@ -58,6 +62,10 @@ export { NativeSelect } from "./NativeSelect";
58
62
  export type { NativeSelectProps } from "./NativeSelect";
59
63
  export { Select } from "./Select";
60
64
  export type { SelectProps } from "./Select";
65
+ export { SuggestionList } from "./SuggestionList";
66
+ export type { SuggestionListProps } from "./SuggestionList";
67
+ export { SuggestionListItem } from "./SuggestionListItem";
68
+ export type { SuggestionListItemProps } from "./SuggestionListItem";
61
69
  export { SubmitButton } from "./SubmitButton";
62
70
  export type { SubmitButtonProps } from "./SubmitButton";
63
71
  export { Toast } from "./Toast";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAChE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,YAAY,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACtE,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACpG,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACvE,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -3,6 +3,7 @@ export { Accordion } from "./Accordion";
3
3
  export { Avatar } from "./Avatar";
4
4
  export { Badge } from "./Badge";
5
5
  export { Button } from "./Button";
6
+ export { buttonClassName } from "./buttonStyles";
6
7
  export { ButtonGroup } from "./ButtonGroup";
7
8
  export { Card } from "./Card";
8
9
  export { CardContent } from "./CardContent";
@@ -23,11 +24,14 @@ export { Input } from "./Input";
23
24
  export { KeyValue } from "./KeyValue";
24
25
  export { LinkTabs } from "./LinkTabs";
25
26
  export { LinkButton } from "./LinkButton";
27
+ export { MenuButton } from "./MenuButton";
26
28
  export { MenuSelect } from "./MenuSelect";
27
29
  export { Modal } from "./Modal";
28
30
  export { NavigationList } from "./NavigationList";
29
31
  export { NativeSelect } from "./NativeSelect";
30
32
  export { Select } from "./Select";
33
+ export { SuggestionList } from "./SuggestionList";
34
+ export { SuggestionListItem } from "./SuggestionListItem";
31
35
  export { SubmitButton } from "./SubmitButton";
32
36
  export { Toast } from "./Toast";
33
37
  export { Toggle } from "./Toggle";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"}
package/package.json CHANGED
@@ -1,10 +1,12 @@
1
1
  {
2
2
  "name": "@recordair/ui-core",
3
- "version": "0.3.0",
3
+ "version": "0.3.4",
4
4
  "author": "Pierre-Alexandre Monneau",
5
5
  "description": "Primitives React accessibles et thémables extraites de Record'air.",
6
6
  "type": "module",
7
- "files": ["dist"],
7
+ "files": [
8
+ "dist"
9
+ ],
8
10
  "main": "./dist/index.js",
9
11
  "types": "./dist/index.d.ts",
10
12
  "exports": {