@frontify/fondue-components 29.0.1 → 29.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.
Files changed (327) hide show
  1. package/dist/fondue-components.js +72 -70
  2. package/dist/fondue-components.js.map +1 -1
  3. package/dist/fondue-components10.js +176 -33
  4. package/dist/fondue-components10.js.map +1 -1
  5. package/dist/fondue-components100.js +8 -23
  6. package/dist/fondue-components100.js.map +1 -1
  7. package/dist/fondue-components101.js +11 -34
  8. package/dist/fondue-components101.js.map +1 -1
  9. package/dist/fondue-components102.js +10 -10
  10. package/dist/fondue-components103.js +6 -67
  11. package/dist/fondue-components103.js.map +1 -1
  12. package/dist/fondue-components104.js +12 -14
  13. package/dist/fondue-components104.js.map +1 -1
  14. package/dist/fondue-components105.js +22 -25
  15. package/dist/fondue-components105.js.map +1 -1
  16. package/dist/fondue-components106.js +34 -19
  17. package/dist/fondue-components106.js.map +1 -1
  18. package/dist/fondue-components107.js +10 -24
  19. package/dist/fondue-components107.js.map +1 -1
  20. package/dist/fondue-components108.js +67 -8
  21. package/dist/fondue-components108.js.map +1 -1
  22. package/dist/fondue-components109.js +14 -30
  23. package/dist/fondue-components109.js.map +1 -1
  24. package/dist/fondue-components11.js +35 -185
  25. package/dist/fondue-components11.js.map +1 -1
  26. package/dist/fondue-components110.js +23 -4
  27. package/dist/fondue-components110.js.map +1 -1
  28. package/dist/fondue-components111.js +17 -15
  29. package/dist/fondue-components111.js.map +1 -1
  30. package/dist/fondue-components112.js +25 -127
  31. package/dist/fondue-components112.js.map +1 -1
  32. package/dist/fondue-components113.js +9 -11
  33. package/dist/fondue-components113.js.map +1 -1
  34. package/dist/fondue-components114.js +33 -36
  35. package/dist/fondue-components114.js.map +1 -1
  36. package/dist/fondue-components115.js +7 -14
  37. package/dist/fondue-components115.js.map +1 -1
  38. package/dist/fondue-components116.js +4 -14
  39. package/dist/fondue-components116.js.map +1 -1
  40. package/dist/fondue-components117.js +5 -111
  41. package/dist/fondue-components117.js.map +1 -1
  42. package/dist/fondue-components118.js +16 -12
  43. package/dist/fondue-components118.js.map +1 -1
  44. package/dist/fondue-components119.js +14 -17
  45. package/dist/fondue-components119.js.map +1 -1
  46. package/dist/fondue-components12.js +185 -7
  47. package/dist/fondue-components12.js.map +1 -1
  48. package/dist/fondue-components120.js +16 -12
  49. package/dist/fondue-components120.js.map +1 -1
  50. package/dist/fondue-components121.js +107 -213
  51. package/dist/fondue-components121.js.map +1 -1
  52. package/dist/fondue-components122.js +10 -16
  53. package/dist/fondue-components122.js.map +1 -1
  54. package/dist/fondue-components123.js +16 -16
  55. package/dist/fondue-components123.js.map +1 -1
  56. package/dist/fondue-components124.js +12 -150
  57. package/dist/fondue-components124.js.map +1 -1
  58. package/dist/fondue-components125.js +32 -44
  59. package/dist/fondue-components125.js.map +1 -1
  60. package/dist/fondue-components126.js +6 -5
  61. package/dist/fondue-components126.js.map +1 -1
  62. package/dist/fondue-components127.js +127 -5
  63. package/dist/fondue-components127.js.map +1 -1
  64. package/dist/fondue-components128.js +11 -29
  65. package/dist/fondue-components128.js.map +1 -1
  66. package/dist/fondue-components129.js +39 -0
  67. package/dist/fondue-components129.js.map +1 -0
  68. package/dist/fondue-components13.js +8 -63
  69. package/dist/fondue-components13.js.map +1 -1
  70. package/dist/fondue-components130.js +216 -40
  71. package/dist/fondue-components130.js.map +1 -1
  72. package/dist/fondue-components131.js +19 -6
  73. package/dist/fondue-components131.js.map +1 -1
  74. package/dist/fondue-components132.js +16 -11
  75. package/dist/fondue-components132.js.map +1 -1
  76. package/dist/fondue-components133.js +150 -70
  77. package/dist/fondue-components133.js.map +1 -1
  78. package/dist/fondue-components134.js +44 -14
  79. package/dist/fondue-components134.js.map +1 -1
  80. package/dist/fondue-components135.js +170 -7
  81. package/dist/fondue-components135.js.map +1 -1
  82. package/dist/fondue-components136.js +57 -86
  83. package/dist/fondue-components136.js.map +1 -1
  84. package/dist/fondue-components137.js +9 -81
  85. package/dist/fondue-components137.js.map +1 -1
  86. package/dist/fondue-components138.js +254 -29
  87. package/dist/fondue-components138.js.map +1 -1
  88. package/dist/fondue-components14.js +61 -35
  89. package/dist/fondue-components14.js.map +1 -1
  90. package/dist/fondue-components140.js +40 -58
  91. package/dist/fondue-components140.js.map +1 -1
  92. package/dist/fondue-components141.js +41 -9
  93. package/dist/fondue-components141.js.map +1 -1
  94. package/dist/fondue-components142.js +6 -256
  95. package/dist/fondue-components142.js.map +1 -1
  96. package/dist/fondue-components143.js +11 -18
  97. package/dist/fondue-components143.js.map +1 -1
  98. package/dist/fondue-components144.js +68 -67
  99. package/dist/fondue-components144.js.map +1 -1
  100. package/dist/fondue-components145.js +14 -1351
  101. package/dist/fondue-components145.js.map +1 -1
  102. package/dist/fondue-components146.js +7 -941
  103. package/dist/fondue-components146.js.map +1 -1
  104. package/dist/fondue-components147.js +87 -196
  105. package/dist/fondue-components147.js.map +1 -1
  106. package/dist/fondue-components148.js +78 -18
  107. package/dist/fondue-components148.js.map +1 -1
  108. package/dist/fondue-components149.js +30 -39
  109. package/dist/fondue-components149.js.map +1 -1
  110. package/dist/fondue-components15.js +36 -121
  111. package/dist/fondue-components15.js.map +1 -1
  112. package/dist/fondue-components150.js +17 -66
  113. package/dist/fondue-components150.js.map +1 -1
  114. package/dist/fondue-components151.js +69 -30
  115. package/dist/fondue-components151.js.map +1 -1
  116. package/dist/fondue-components152.js +1352 -9
  117. package/dist/fondue-components152.js.map +1 -1
  118. package/dist/fondue-components153.js +939 -151
  119. package/dist/fondue-components153.js.map +1 -1
  120. package/dist/fondue-components154.js +197 -107
  121. package/dist/fondue-components154.js.map +1 -1
  122. package/dist/fondue-components155.js +22 -17
  123. package/dist/fondue-components155.js.map +1 -1
  124. package/dist/fondue-components156.js +39 -15
  125. package/dist/fondue-components156.js.map +1 -1
  126. package/dist/fondue-components157.js +68 -29
  127. package/dist/fondue-components157.js.map +1 -1
  128. package/dist/fondue-components158.js +31 -13
  129. package/dist/fondue-components158.js.map +1 -1
  130. package/dist/fondue-components159.js +9 -7
  131. package/dist/fondue-components159.js.map +1 -1
  132. package/dist/fondue-components16.js +121 -36
  133. package/dist/fondue-components16.js.map +1 -1
  134. package/dist/fondue-components160.js +156 -0
  135. package/dist/fondue-components160.js.map +1 -0
  136. package/dist/fondue-components161.js +111 -0
  137. package/dist/fondue-components161.js.map +1 -0
  138. package/dist/fondue-components162.js +19 -0
  139. package/dist/fondue-components162.js.map +1 -0
  140. package/dist/fondue-components163.js +32 -0
  141. package/dist/fondue-components163.js.map +1 -0
  142. package/dist/fondue-components164.js +16 -0
  143. package/dist/fondue-components164.js.map +1 -0
  144. package/dist/fondue-components165.js +10 -0
  145. package/dist/fondue-components165.js.map +1 -0
  146. package/dist/fondue-components166.js +19 -0
  147. package/dist/fondue-components166.js.map +1 -0
  148. package/dist/fondue-components17.js +30 -39
  149. package/dist/fondue-components17.js.map +1 -1
  150. package/dist/fondue-components18.js +44 -41
  151. package/dist/fondue-components18.js.map +1 -1
  152. package/dist/fondue-components19.js +42 -57
  153. package/dist/fondue-components19.js.map +1 -1
  154. package/dist/fondue-components20.js +55 -41
  155. package/dist/fondue-components20.js.map +1 -1
  156. package/dist/fondue-components21.js +39 -16
  157. package/dist/fondue-components21.js.map +1 -1
  158. package/dist/fondue-components22.js +17 -43
  159. package/dist/fondue-components22.js.map +1 -1
  160. package/dist/fondue-components23.js +46 -68
  161. package/dist/fondue-components23.js.map +1 -1
  162. package/dist/fondue-components24.js +67 -71
  163. package/dist/fondue-components24.js.map +1 -1
  164. package/dist/fondue-components25.js +72 -16
  165. package/dist/fondue-components25.js.map +1 -1
  166. package/dist/fondue-components26.js +18 -77
  167. package/dist/fondue-components26.js.map +1 -1
  168. package/dist/fondue-components27.js +75 -34
  169. package/dist/fondue-components27.js.map +1 -1
  170. package/dist/fondue-components28.js +34 -53
  171. package/dist/fondue-components28.js.map +1 -1
  172. package/dist/fondue-components29.js +55 -23
  173. package/dist/fondue-components29.js.map +1 -1
  174. package/dist/fondue-components3.js +1 -1
  175. package/dist/fondue-components30.js +23 -55
  176. package/dist/fondue-components30.js.map +1 -1
  177. package/dist/fondue-components31.js +52 -97
  178. package/dist/fondue-components31.js.map +1 -1
  179. package/dist/fondue-components32.js +98 -31
  180. package/dist/fondue-components32.js.map +1 -1
  181. package/dist/fondue-components33.js +31 -194
  182. package/dist/fondue-components33.js.map +1 -1
  183. package/dist/fondue-components34.js +184 -134
  184. package/dist/fondue-components34.js.map +1 -1
  185. package/dist/fondue-components35.js +143 -130
  186. package/dist/fondue-components35.js.map +1 -1
  187. package/dist/fondue-components36.js +131 -30
  188. package/dist/fondue-components36.js.map +1 -1
  189. package/dist/fondue-components37.js +29 -79
  190. package/dist/fondue-components37.js.map +1 -1
  191. package/dist/fondue-components38.js +68 -110
  192. package/dist/fondue-components38.js.map +1 -1
  193. package/dist/fondue-components39.js +121 -34
  194. package/dist/fondue-components39.js.map +1 -1
  195. package/dist/fondue-components4.js +21 -19
  196. package/dist/fondue-components4.js.map +1 -1
  197. package/dist/fondue-components40.js +36 -56
  198. package/dist/fondue-components40.js.map +1 -1
  199. package/dist/fondue-components41.js +56 -20
  200. package/dist/fondue-components41.js.map +1 -1
  201. package/dist/fondue-components42.js +20 -25
  202. package/dist/fondue-components42.js.map +1 -1
  203. package/dist/fondue-components43.js +25 -7
  204. package/dist/fondue-components43.js.map +1 -1
  205. package/dist/fondue-components44.js +7 -8
  206. package/dist/fondue-components44.js.map +1 -1
  207. package/dist/fondue-components45.js +9 -41
  208. package/dist/fondue-components45.js.map +1 -1
  209. package/dist/fondue-components46.js +41 -5
  210. package/dist/fondue-components46.js.map +1 -1
  211. package/dist/fondue-components47.js +1 -1
  212. package/dist/fondue-components48.js +3 -11
  213. package/dist/fondue-components48.js.map +1 -1
  214. package/dist/fondue-components49.js +25 -29
  215. package/dist/fondue-components49.js.map +1 -1
  216. package/dist/fondue-components5.js +2 -2
  217. package/dist/fondue-components50.js +33 -54
  218. package/dist/fondue-components50.js.map +1 -1
  219. package/dist/fondue-components51.js +20 -130
  220. package/dist/fondue-components51.js.map +1 -1
  221. package/dist/fondue-components52.js +85 -20
  222. package/dist/fondue-components52.js.map +1 -1
  223. package/dist/fondue-components53.js +13 -53
  224. package/dist/fondue-components53.js.map +1 -1
  225. package/dist/fondue-components54.js +32 -8
  226. package/dist/fondue-components54.js.map +1 -1
  227. package/dist/fondue-components55.js +54 -13
  228. package/dist/fondue-components55.js.map +1 -1
  229. package/dist/fondue-components56.js +130 -16
  230. package/dist/fondue-components56.js.map +1 -1
  231. package/dist/fondue-components57.js +20 -4
  232. package/dist/fondue-components57.js.map +1 -1
  233. package/dist/fondue-components58.js +52 -17
  234. package/dist/fondue-components58.js.map +1 -1
  235. package/dist/fondue-components59.js +7 -18
  236. package/dist/fondue-components59.js.map +1 -1
  237. package/dist/fondue-components6.js +1 -1
  238. package/dist/fondue-components60.js +13 -44
  239. package/dist/fondue-components60.js.map +1 -1
  240. package/dist/fondue-components61.js +16 -24
  241. package/dist/fondue-components61.js.map +1 -1
  242. package/dist/fondue-components62.js +4 -22
  243. package/dist/fondue-components62.js.map +1 -1
  244. package/dist/fondue-components63.js +18 -7
  245. package/dist/fondue-components63.js.map +1 -1
  246. package/dist/fondue-components64.js +18 -4
  247. package/dist/fondue-components64.js.map +1 -1
  248. package/dist/fondue-components65.js +43 -12
  249. package/dist/fondue-components65.js.map +1 -1
  250. package/dist/fondue-components66.js +24 -4
  251. package/dist/fondue-components66.js.map +1 -1
  252. package/dist/fondue-components67.js +22 -17
  253. package/dist/fondue-components67.js.map +1 -1
  254. package/dist/fondue-components68.js +4 -8
  255. package/dist/fondue-components68.js.map +1 -1
  256. package/dist/fondue-components69.js +4 -36
  257. package/dist/fondue-components69.js.map +1 -1
  258. package/dist/fondue-components7.js +32 -65
  259. package/dist/fondue-components7.js.map +1 -1
  260. package/dist/fondue-components70.js +12 -6
  261. package/dist/fondue-components70.js.map +1 -1
  262. package/dist/fondue-components71.js +1 -1
  263. package/dist/fondue-components72.js +17 -12
  264. package/dist/fondue-components72.js.map +1 -1
  265. package/dist/fondue-components73.js +10 -51
  266. package/dist/fondue-components73.js.map +1 -1
  267. package/dist/fondue-components74.js +37 -44
  268. package/dist/fondue-components74.js.map +1 -1
  269. package/dist/fondue-components75.js +7 -6
  270. package/dist/fondue-components75.js.map +1 -1
  271. package/dist/fondue-components76.js +5 -6
  272. package/dist/fondue-components76.js.map +1 -1
  273. package/dist/fondue-components77.js +13 -13
  274. package/dist/fondue-components77.js.map +1 -1
  275. package/dist/fondue-components78.js +51 -27
  276. package/dist/fondue-components78.js.map +1 -1
  277. package/dist/fondue-components79.js +42 -11
  278. package/dist/fondue-components79.js.map +1 -1
  279. package/dist/fondue-components8.js +65 -51
  280. package/dist/fondue-components8.js.map +1 -1
  281. package/dist/fondue-components80.js +6 -5
  282. package/dist/fondue-components80.js.map +1 -1
  283. package/dist/fondue-components81.js +6 -13
  284. package/dist/fondue-components81.js.map +1 -1
  285. package/dist/fondue-components82.js +13 -48
  286. package/dist/fondue-components82.js.map +1 -1
  287. package/dist/fondue-components83.js +27 -22
  288. package/dist/fondue-components83.js.map +1 -1
  289. package/dist/fondue-components84.js +13 -629
  290. package/dist/fondue-components84.js.map +1 -1
  291. package/dist/fondue-components85.js +4 -8
  292. package/dist/fondue-components85.js.map +1 -1
  293. package/dist/fondue-components86.js +12 -12
  294. package/dist/fondue-components86.js.map +1 -1
  295. package/dist/fondue-components87.js +47 -4
  296. package/dist/fondue-components87.js.map +1 -1
  297. package/dist/fondue-components88.js +22 -24
  298. package/dist/fondue-components88.js.map +1 -1
  299. package/dist/fondue-components89.js +628 -16
  300. package/dist/fondue-components89.js.map +1 -1
  301. package/dist/fondue-components9.js +46 -173
  302. package/dist/fondue-components9.js.map +1 -1
  303. package/dist/fondue-components90.js +9 -20
  304. package/dist/fondue-components90.js.map +1 -1
  305. package/dist/fondue-components91.js +13 -20
  306. package/dist/fondue-components91.js.map +1 -1
  307. package/dist/fondue-components92.js +5 -20
  308. package/dist/fondue-components92.js.map +1 -1
  309. package/dist/fondue-components93.js +24 -19
  310. package/dist/fondue-components93.js.map +1 -1
  311. package/dist/fondue-components94.js +17 -19
  312. package/dist/fondue-components94.js.map +1 -1
  313. package/dist/fondue-components95.js +20 -8
  314. package/dist/fondue-components95.js.map +1 -1
  315. package/dist/fondue-components96.js +20 -11
  316. package/dist/fondue-components96.js.map +1 -1
  317. package/dist/fondue-components97.js +20 -11
  318. package/dist/fondue-components97.js.map +1 -1
  319. package/dist/fondue-components98.js +20 -7
  320. package/dist/fondue-components98.js.map +1 -1
  321. package/dist/fondue-components99.js +19 -13
  322. package/dist/fondue-components99.js.map +1 -1
  323. package/dist/index.d.ts +184 -18
  324. package/dist/style.css +1 -1
  325. package/package.json +6 -2
  326. package/dist/fondue-components139.js +0 -173
  327. package/dist/fondue-components139.js.map +0 -1
@@ -1,24 +1,84 @@
1
- import { jsx as e } from "react/jsx-runtime";
2
- import { IconCross as s } from "@frontify/fondue-icons";
3
- import { Button as t } from "./fondue-components6.js";
4
- import { useTranslation as a } from "./fondue-components42.js";
5
- import l from "./fondue-components125.js";
6
- const f = ({ onClear: r }) => {
7
- const { t: o } = a();
8
- return /* @__PURE__ */ e(
9
- t,
1
+ import { jsx as r } from "react/jsx-runtime";
2
+ import * as p from "@radix-ui/react-popover";
3
+ import { Slot as M } from "@radix-ui/react-slot";
4
+ import { isValidElement as T } from "react";
5
+ import { useFondueTheme as E, ThemeProvider as F } from "./fondue-components40.js";
6
+ import a from "./fondue-components134.js";
7
+ import { recursiveMap as R, getSelectOptionValue as _ } from "./fondue-components156.js";
8
+ const j = ({
9
+ highlightedIndex: l,
10
+ getMenuProps: u,
11
+ getItemProps: m,
12
+ children: f,
13
+ filterText: d,
14
+ align: h,
15
+ side: P,
16
+ selectedItemValues: o,
17
+ hasInteractedSinceOpening: S,
18
+ viewportCollisionPadding: g = "compact",
19
+ onEscapeKeyDown: v
20
+ }) => {
21
+ const O = (e) => {
22
+ e.preventDefault();
23
+ }, N = {
24
+ compact: 8,
25
+ spacious: 24
26
+ }, { theme: A, dir: n } = E(), C = (e) => n === "ltr" ? e : e === "left" ? "right" : e === "right" ? "left" : e;
27
+ return /* @__PURE__ */ r(p.Portal, { children: /* @__PURE__ */ r(F, { theme: A, dir: n, children: /* @__PURE__ */ r(
28
+ p.Content,
10
29
  {
11
- "aria-label": o("Select_clear"),
12
- type: "button",
13
- size: "small",
14
- emphasis: "weak",
15
- aspect: "square",
16
- onPress: r,
17
- children: /* @__PURE__ */ e(s, { className: l.clearIcon, size: 16 })
30
+ dir: n,
31
+ align: h,
32
+ side: C(P),
33
+ collisionPadding: N[g] + 8,
34
+ onOpenAutoFocus: O,
35
+ onEscapeKeyDown: v,
36
+ className: a.portal,
37
+ children: /* @__PURE__ */ r(
38
+ "ul",
39
+ {
40
+ className: a.menu,
41
+ ...u({}, { suppressRefError: !0 }),
42
+ "data-has-interacted": S ? "true" : "false",
43
+ "data-test-id": "fondue-select-menu",
44
+ children: R(
45
+ f,
46
+ (e, s) => {
47
+ if (((t) => (
48
+ // @ts-expect-error - We are explicitly checking for ref
49
+ T(t) && t.ref !== void 0
50
+ ))(e)) {
51
+ const t = _(e.props), i = m({
52
+ item: t,
53
+ index: s,
54
+ ...e.ref ? { ref: e.ref } : {}
55
+ }), c = o == null ? void 0 : o.includes(t.value);
56
+ return /* @__PURE__ */ r(
57
+ M,
58
+ {
59
+ className: a.item,
60
+ "data-highlighted": l === s,
61
+ "data-selected": c,
62
+ onTouchStart: (D) => {
63
+ i.onClick && i.onClick(D);
64
+ },
65
+ ...i,
66
+ "aria-selected": c,
67
+ children: e
68
+ },
69
+ e.props.value
70
+ );
71
+ }
72
+ },
73
+ d
74
+ ).parsedChildren
75
+ }
76
+ )
18
77
  }
19
- );
78
+ ) }) });
20
79
  };
80
+ j.displayName = "Select.Menu";
21
81
  export {
22
- f as SelectClear
82
+ j as SelectMenu
23
83
  };
24
84
  //# sourceMappingURL=fondue-components148.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fondue-components148.js","sources":["../src/components/Select/components/SelectClear.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { IconCross } from '@frontify/fondue-icons';\n\nimport { Button } from '#/components/Button/Button';\nimport { useTranslation } from '#/hooks/useTranslation';\n\nimport styles from '../styles/select.module.scss';\n\nexport const SelectClear = ({ onClear }: { onClear?: () => void }) => {\n const { t } = useTranslation();\n\n return (\n <Button\n aria-label={t('Select_clear')}\n type=\"button\"\n size=\"small\"\n emphasis=\"weak\"\n aspect=\"square\"\n onPress={onClear}\n >\n <IconCross className={styles.clearIcon} size={16} />\n </Button>\n );\n};\n"],"names":["SelectClear","onClear","t","useTranslation","jsx","Button","IconCross","styles"],"mappings":";;;;;AASO,MAAMA,IAAc,CAAC,EAAE,SAAAC,QAAwC;AAClE,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAA;AAEd,SACI,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACG,cAAYH,EAAE,cAAc;AAAA,MAC5B,MAAK;AAAA,MACL,MAAK;AAAA,MACL,UAAS;AAAA,MACT,QAAO;AAAA,MACP,SAASD;AAAA,MAET,4BAACK,GAAA,EAAU,WAAWC,EAAO,WAAW,MAAM,GAAA,CAAI;AAAA,IAAA;AAAA,EAAA;AAG9D;"}
1
+ {"version":3,"file":"fondue-components148.js","sources":["../src/components/Select/components/SelectMenu.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport * as RadixPopover from '@radix-ui/react-popover';\nimport { Slot as RadixSlot } from '@radix-ui/react-slot';\nimport { type UseComboboxPropGetters, type UseSelectPropGetters } from 'downshift';\nimport { isValidElement, type ForwardedRef, type MouseEvent, type ReactElement, type ReactNode } from 'react';\n\nimport { ThemeProvider, useFondueTheme } from '#/components/ThemeProvider/ThemeProvider';\n\nimport styles from '../styles/select.module.scss';\nimport { getSelectOptionValue, recursiveMap } from '../utils';\n\nimport { type SelectItemProps } from './SelectItem';\n\nexport type SelectMenuViewportCollisionPadding = 'compact' | 'spacious';\n\nexport type SelectMenuProps = {\n /**\n * @internal\n * The index of the highlighted item in the menu.\n */\n highlightedIndex: number;\n /**\n * @internal\n * Callback function to retrieve the props for a menu element.\n */\n getMenuProps: UseSelectPropGetters<unknown>['getMenuProps'] | UseComboboxPropGetters<unknown>['getMenuProps'];\n /**\n * @internal\n * Callback function to retrieve the props for a item element.\n */\n getItemProps: UseSelectPropGetters<unknown>['getItemProps'] | UseComboboxPropGetters<unknown>['getItemProps'];\n /**\n * @internal\n * The children of the menu component. This can contain multiple `Select.Item` or `Select.Group` components.\n */\n children: ReactNode;\n /**\n * @internal\n * The filter text shown in the combobox input element.\n */\n filterText?: string;\n /**\n * @internal\n * The alignment of the menu.\n */\n align: 'start' | 'center' | 'end';\n /**\n * @internal\n * Defines the preferred side of the select. It will not be respected if there are collisions with the viewport.\n * @default \"bottom\"\n */\n side: 'left' | 'right' | 'bottom' | 'top';\n /**\n * @internal\n * The type of the menu.\n */\n selectedItemValues?: string[];\n /**\n * @internal\n * A boolean to indicate if highlighted item was changed since opening the menu.\n * This is used to determine the style of the selected/highlighted item.\n */\n hasInteractedSinceOpening?: boolean;\n /**\n * Define the minimum distance between the select menu and the viewport edge\n * @default 'compact'\n */\n viewportCollisionPadding?: SelectMenuViewportCollisionPadding;\n /**\n * @internal\n * Event handler called when the escape key is pressed.\n */\n onEscapeKeyDown?: (event: KeyboardEvent) => void;\n};\n\nexport const SelectMenu = ({\n highlightedIndex,\n getMenuProps,\n getItemProps,\n children,\n filterText,\n align,\n side,\n selectedItemValues,\n hasInteractedSinceOpening,\n viewportCollisionPadding = 'compact',\n onEscapeKeyDown,\n}: SelectMenuProps) => {\n const handleOnOpenAutoFocus = (event: Event) => {\n event.preventDefault();\n };\n\n const VIEWPORT_COLLISION_PADDING_MAP: Record<SelectMenuViewportCollisionPadding, number> = {\n compact: 8,\n spacious: 24,\n };\n\n const { theme, dir } = useFondueTheme();\n\n const getAdjustedSide = (side: 'left' | 'right' | 'bottom' | 'top') => {\n if (dir === 'ltr') {\n return side;\n }\n\n if (side === 'left') {\n return 'right';\n }\n if (side === 'right') {\n return 'left';\n }\n\n return side;\n };\n\n return (\n <RadixPopover.Portal>\n <ThemeProvider theme={theme} dir={dir}>\n <RadixPopover.Content\n dir={dir}\n align={align}\n side={getAdjustedSide(side)}\n collisionPadding={VIEWPORT_COLLISION_PADDING_MAP[viewportCollisionPadding] + 8}\n onOpenAutoFocus={handleOnOpenAutoFocus}\n onEscapeKeyDown={onEscapeKeyDown}\n className={styles.portal}\n >\n <ul\n className={styles.menu}\n // TODO: fix this accessibility issue\n // We are mounting/unmounting the menu on open/close\n // We should instead toggle its visibility for accessibility reasons\n // https://github.com/downshift-js/downshift?tab=readme-ov-file#getmenuprops\n {...getMenuProps({}, { suppressRefError: true })}\n data-has-interacted={hasInteractedSinceOpening ? 'true' : 'false'}\n data-test-id=\"fondue-select-menu\"\n >\n {\n recursiveMap(\n children,\n (child, index) => {\n const isValid = <TProps,>(\n child: ReactNode,\n ): child is ReactElement<TProps> & { ref: ForwardedRef<HTMLElement> } =>\n // @ts-expect-error - We are explicitly checking for ref\n isValidElement<TProps>(child) && child.ref !== undefined;\n\n if (isValid<SelectItemProps>(child)) {\n const optionData = getSelectOptionValue(child.props);\n const itemProps = getItemProps({\n item: optionData,\n index,\n ...(child.ref ? { ref: child.ref } : {}),\n });\n\n const isSelected = selectedItemValues?.includes(optionData.value);\n\n return (\n <RadixSlot\n className={styles.item}\n data-highlighted={highlightedIndex === index}\n data-selected={isSelected}\n key={child.props.value}\n // Workaround for the issue where the onClick event is not fired on touch devices because of portal usage\n onTouchStart={(event) => {\n if (itemProps.onClick) {\n itemProps.onClick(event as unknown as MouseEvent<HTMLElement>);\n }\n }}\n {...itemProps}\n aria-selected={isSelected}\n >\n {child}\n </RadixSlot>\n );\n }\n },\n filterText,\n ).parsedChildren\n }\n </ul>\n </RadixPopover.Content>\n </ThemeProvider>\n </RadixPopover.Portal>\n );\n};\nSelectMenu.displayName = 'Select.Menu';\n"],"names":["SelectMenu","highlightedIndex","getMenuProps","getItemProps","children","filterText","align","side","selectedItemValues","hasInteractedSinceOpening","viewportCollisionPadding","onEscapeKeyDown","handleOnOpenAutoFocus","event","VIEWPORT_COLLISION_PADDING_MAP","theme","dir","useFondueTheme","getAdjustedSide","RadixPopover","jsx","ThemeProvider","styles","recursiveMap","child","index","isValidElement","optionData","getSelectOptionValue","itemProps","isSelected","RadixSlot"],"mappings":";;;;;;;AA4EO,MAAMA,IAAa,CAAC;AAAA,EACvB,kBAAAC;AAAA,EACA,cAAAC;AAAA,EACA,cAAAC;AAAA,EACA,UAAAC;AAAA,EACA,YAAAC;AAAA,EACA,OAAAC;AAAA,EACA,MAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,2BAAAC;AAAA,EACA,0BAAAC,IAA2B;AAAA,EAC3B,iBAAAC;AACJ,MAAuB;AACnB,QAAMC,IAAwB,CAACC,MAAiB;AAC5C,IAAAA,EAAM,eAAA;AAAA,EACV,GAEMC,IAAqF;AAAA,IACvF,SAAS;AAAA,IACT,UAAU;AAAA,EAAA,GAGR,EAAE,OAAAC,GAAO,KAAAC,EAAA,IAAQC,EAAA,GAEjBC,IAAkB,CAACX,MACjBS,MAAQ,QACDT,IAGPA,MAAS,SACF,UAEPA,MAAS,UACF,SAGJA;AAGX,2BACKY,EAAa,QAAb,EACG,UAAA,gBAAAC,EAACC,GAAA,EAAc,OAAAN,GAAc,KAAAC,GACzB,UAAA,gBAAAI;AAAA,IAACD,EAAa;AAAA,IAAb;AAAA,MACG,KAAAH;AAAA,MACA,OAAAV;AAAA,MACA,MAAMY,EAAgBX,CAAI;AAAA,MAC1B,kBAAkBO,EAA+BJ,CAAwB,IAAI;AAAA,MAC7E,iBAAiBE;AAAA,MACjB,iBAAAD;AAAA,MACA,WAAWW,EAAO;AAAA,MAElB,UAAA,gBAAAF;AAAA,QAAC;AAAA,QAAA;AAAA,UACG,WAAWE,EAAO;AAAA,UAKjB,GAAGpB,EAAa,CAAA,GAAI,EAAE,kBAAkB,IAAM;AAAA,UAC/C,uBAAqBO,IAA4B,SAAS;AAAA,UAC1D,gBAAa;AAAA,UAGT,UAAAc;AAAA,YACInB;AAAA,YACA,CAACoB,GAAOC,MAAU;AAOd,mBANgB,CACZD;AAAAA;AAAAA,gBAGAE,EAAuBF,CAAK,KAAKA,EAAM,QAAQ;AAAA,iBAEtBA,CAAK,GAAG;AACjC,sBAAMG,IAAaC,EAAqBJ,EAAM,KAAK,GAC7CK,IAAY1B,EAAa;AAAA,kBAC3B,MAAMwB;AAAA,kBACN,OAAAF;AAAA,kBACA,GAAID,EAAM,MAAM,EAAE,KAAKA,EAAM,IAAA,IAAQ,CAAA;AAAA,gBAAC,CACzC,GAEKM,IAAatB,KAAA,gBAAAA,EAAoB,SAASmB,EAAW;AAE3D,uBACI,gBAAAP;AAAA,kBAACW;AAAAA,kBAAA;AAAA,oBACG,WAAWT,EAAO;AAAA,oBAClB,oBAAkBrB,MAAqBwB;AAAA,oBACvC,iBAAeK;AAAA,oBAGf,cAAc,CAACjB,MAAU;AACrB,sBAAIgB,EAAU,WACVA,EAAU,QAAQhB,CAA2C;AAAA,oBAErE;AAAA,oBACC,GAAGgB;AAAA,oBACJ,iBAAeC;AAAA,oBAEd,UAAAN;AAAA,kBAAA;AAAA,kBAVIA,EAAM,MAAM;AAAA,gBAAA;AAAA,cAa7B;AAAA,YACJ;AAAA,YACAnB;AAAA,UAAA,EACF;AAAA,QAAA;AAAA,MAAA;AAAA,IAEV;AAAA,EAAA,GAER,EAAA,CACJ;AAER;AACAL,EAAW,cAAc;"}
@@ -1,43 +1,34 @@
1
- import { Children as a, isValidElement as u, cloneElement as f } from "react";
2
- import { ForwardedRefSelectItem as E } from "./fondue-components94.js";
3
- const g = ({
4
- children: o,
5
- value: r,
6
- label: s
7
- }) => o && typeof o == "string" ? {
8
- value: r !== void 0 ? r : o,
9
- label: s !== void 0 ? s : o
10
- } : {
11
- value: r ?? "",
12
- label: s !== void 0 ? s : r ?? "",
13
- ...o ? { children: o } : null
14
- }, v = (o, r) => u(o) && o.type === r, w = (o, r, s, p = 0) => {
15
- const n = [];
16
- let t = 0;
17
- return a.forEach(o, (e) => {
18
- if (v(e, E) && u(e))
19
- g(e.props).label.toLowerCase().includes((s == null ? void 0 : s.toLowerCase()) || "") && (n.push(r(e, p + t)), t++);
20
- else if (u(e) && (e != null && e.props.children)) {
21
- const { parsedChildren: m, subElementCount: C } = w(
22
- e.props.children,
23
- r,
24
- "",
25
- p + t
26
- );
27
- e = f(e, {
28
- children: m,
29
- key: `group-${p + t}`
30
- }), n.push(e), t += C;
31
- } else
32
- n.push(e);
33
- }), {
34
- parsedChildren: n,
35
- subElementCount: t
36
- };
1
+ import { jsxs as c, Fragment as n, jsx as r } from "react/jsx-runtime";
2
+ import { IconCheckMark as i, IconExclamationMarkTriangle as l } from "@frontify/fondue-icons";
3
+ import { useTranslation as m } from "./fondue-components43.js";
4
+ import s from "./fondue-components134.js";
5
+ const f = ({ status: o, hasError: a, dataTestId: e }) => {
6
+ const { t } = m();
7
+ return /* @__PURE__ */ c(n, { children: [
8
+ o === "success" ? /* @__PURE__ */ r(
9
+ i,
10
+ {
11
+ size: 16,
12
+ className: s.iconSuccess,
13
+ "data-test-id": `${e}-success-icon`,
14
+ "aria-hidden": "true"
15
+ }
16
+ ) : null,
17
+ a ? /* @__PURE__ */ c(n, { children: [
18
+ /* @__PURE__ */ r(
19
+ l,
20
+ {
21
+ size: 16,
22
+ className: s.iconError,
23
+ "data-test-id": `${e}-error-icon`,
24
+ "aria-hidden": "true"
25
+ }
26
+ ),
27
+ /* @__PURE__ */ r("span", { className: s.srOnly, role: "alert", children: t("Select_error") })
28
+ ] }) : null
29
+ ] });
37
30
  };
38
31
  export {
39
- g as getSelectOptionValue,
40
- v as isReactLeaf,
41
- w as recursiveMap
32
+ f as StatusIcons
42
33
  };
43
34
  //# sourceMappingURL=fondue-components149.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fondue-components149.js","sources":["../src/components/Select/utils.ts"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport {\n Children,\n cloneElement,\n isValidElement,\n type JSXElementConstructor,\n type ReactElement,\n type ReactNode,\n} from 'react';\n\nimport { ForwardedRefSelectItem, type SelectItemProps } from './components/SelectItem';\n\n/**\n * Extracts and returns an object containing `value` and `label` from a given SelectItemProps object.\n * It prioritizes explicit `value` and `label` properties but will fall back to using `children` as the value or label if necessary.\n *\n * @param {SelectItemProps} props - The properties of a select item, which include potential children, value, and label.\n * @returns {{ value: string; label: string, children?: ReactNode }} An object containing `value` and `label` as strings.\n *\n * @example\n * // Returns { value: 'option1', label: 'Option 1' }\n * getSelectOptionValue({ value: 'option1', label: 'Option 1' });\n *\n * @example\n * // Uses children as the value and label when they are not explicitly provided\n * // Returns { value: 'Default', label: 'Default' }\n * getSelectOptionValue({ children: 'Default' });\n */\nexport const getSelectOptionValue = ({\n children,\n value,\n label,\n}: SelectItemProps): {\n value: string;\n label: string;\n children?: ReactNode;\n} => {\n if (children && typeof children === 'string') {\n return {\n value: value !== undefined ? value : children,\n label: label !== undefined ? label : children,\n };\n }\n\n return {\n value: value ?? '',\n label: label !== undefined ? label : (value ?? ''),\n ...(children ? { children } : null),\n };\n};\n/**\n * Determines if the child is a leaf node of React, meaning it has one final child of a native type;\n *\n * @param {ReactNode} child - The React child node to check.\n * @param {JSXElementConstructor<never>} Component - The React component constructor used for comparison.\n * @returns {boolean} Returns true if the `child` is a valid React element of the specified `Component` type.\n *\n * @example\n * // Assuming ForwardedRefSelectItem is a component that renders an <input> element\n * // Returns true\n * isReactLeaf(<ForwardedRefSelectItem />, ForwardedRefSelectItem);\n *\n * @example\n * // Returns false for non-matching types or non-leaf components\n * isReactLeaf(<div><ForwardedRefSelectItem /></div>, ForwardedRefSelectItem);\n */\nexport const isReactLeaf = (child: ReactNode, Component: JSXElementConstructor<never>): child is ReactElement =>\n isValidElement(child) && child.type === Component;\n\n/**\n * Recursively maps through React children, applying a callback to each child that meets the specified conditions.\n * This function is useful for deeply nested structures where modifications or checks are needed at multiple levels.\n *\n * @param {ReactNode} children - The children to be recursively processed.\n * @param {function(ReactNode, number): ReactNode} callback - A function that is called for each child that meets the condition. It receives the child and its index, and returns a React node.\n * @param {string} [filterText=''] - Optional text used to filter children based on their properties.\n * @param {number} [nextIndex=0] - The starting index for numbering children, defaults to 0.\n * @returns {{ parsedChildren: ReactNode[], subElementCount: number }} An object containing the transformed children array and the count of all processed sub-elements.\n *\n * @example\n * // Example usage in a select component where only items containing a certain text are modified\n * recursiveMap(children, (child, index) => React.cloneElement(child, { extraProp: 'value' }), 'specific text');\n *\n * @example\n * // Nested structure transformation, adding class names based on index\n * recursiveMap(children, (child, index) => React.cloneElement(child, { className: `item-${index}` }));\n */\nexport const recursiveMap = (\n children: ReactNode,\n callback: (child: ReactNode, nextIndex: number) => ReactNode,\n filterText?: string,\n nextIndex: number = 0,\n): {\n parsedChildren: ReactNode[];\n subElementCount: number;\n} => {\n const resultingChildren: ReactNode[] = [];\n let itemCounter = 0;\n Children.forEach(children, (child) => {\n if (isReactLeaf(child, ForwardedRefSelectItem) && isValidElement<SelectItemProps>(child)) {\n if (\n getSelectOptionValue(child.props)\n .label.toLowerCase()\n .includes(filterText?.toLowerCase() || '')\n ) {\n resultingChildren.push(callback(child, nextIndex + itemCounter));\n itemCounter++;\n }\n } else if (isValidElement<{ children: ReactNode }>(child) && child?.props.children) {\n const { parsedChildren, subElementCount } = recursiveMap(\n child.props.children,\n callback,\n '',\n nextIndex + itemCounter,\n );\n child = cloneElement(child, {\n children: parsedChildren,\n key: `group-${nextIndex + itemCounter}`,\n });\n resultingChildren.push(child);\n itemCounter += subElementCount;\n } else {\n resultingChildren.push(child);\n }\n });\n return {\n parsedChildren: resultingChildren,\n subElementCount: itemCounter,\n };\n};\n"],"names":["getSelectOptionValue","children","value","label","isReactLeaf","child","Component","isValidElement","recursiveMap","callback","filterText","nextIndex","resultingChildren","itemCounter","Children","ForwardedRefSelectItem","parsedChildren","subElementCount","cloneElement"],"mappings":";;AA6BO,MAAMA,IAAuB,CAAC;AAAA,EACjC,UAAAC;AAAA,EACA,OAAAC;AAAA,EACA,OAAAC;AACJ,MAKQF,KAAY,OAAOA,KAAa,WACzB;AAAA,EACH,OAAOC,MAAU,SAAYA,IAAQD;AAAA,EACrC,OAAOE,MAAU,SAAYA,IAAQF;AAAA,IAItC;AAAA,EACH,OAAOC,KAAS;AAAA,EAChB,OAAOC,MAAU,SAAYA,IAASD,KAAS;AAAA,EAC/C,GAAID,IAAW,EAAE,UAAAA,MAAa;AAAA,GAmBzBG,IAAc,CAACC,GAAkBC,MAC1CC,EAAeF,CAAK,KAAKA,EAAM,SAASC,GAoB/BE,IAAe,CACxBP,GACAQ,GACAC,GACAC,IAAoB,MAInB;AACD,QAAMC,IAAiC,CAAA;AACvC,MAAIC,IAAc;AAClB,SAAAC,EAAS,QAAQb,GAAU,CAACI,MAAU;AAClC,QAAID,EAAYC,GAAOU,CAAsB,KAAKR,EAAgCF,CAAK;AACnF,MACIL,EAAqBK,EAAM,KAAK,EAC3B,MAAM,cACN,UAASK,KAAA,gBAAAA,EAAY,kBAAiB,EAAE,MAE7CE,EAAkB,KAAKH,EAASJ,GAAOM,IAAYE,CAAW,CAAC,GAC/DA;AAAA,aAEGN,EAAwCF,CAAK,MAAKA,KAAA,QAAAA,EAAO,MAAM,WAAU;AAChF,YAAM,EAAE,gBAAAW,GAAgB,iBAAAC,EAAA,IAAoBT;AAAA,QACxCH,EAAM,MAAM;AAAA,QACZI;AAAA,QACA;AAAA,QACAE,IAAYE;AAAA,MAAA;AAEhB,MAAAR,IAAQa,EAAab,GAAO;AAAA,QACxB,UAAUW;AAAA,QACV,KAAK,SAASL,IAAYE,CAAW;AAAA,MAAA,CACxC,GACDD,EAAkB,KAAKP,CAAK,GAC5BQ,KAAeI;AAAA,IACnB;AACI,MAAAL,EAAkB,KAAKP,CAAK;AAAA,EAEpC,CAAC,GACM;AAAA,IACH,gBAAgBO;AAAA,IAChB,iBAAiBC;AAAA,EAAA;AAEzB;"}
1
+ {"version":3,"file":"fondue-components149.js","sources":["../src/components/Select/components/StatusIcons.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { IconCheckMark, IconExclamationMarkTriangle } from '@frontify/fondue-icons';\nimport { type ReactNode } from 'react';\n\nimport { useTranslation } from '#/hooks/useTranslation';\n\nimport styles from '../styles/select.module.scss';\n\ntype StatusIconsProps = {\n /** The current status of the component. */\n status: 'neutral' | 'success' | 'error';\n /** Whether the component is in an error state (may differ from status when validation is involved). */\n hasError: boolean;\n /** The data-test-id prefix for the icons. */\n dataTestId: string;\n};\n\nexport const StatusIcons = ({ status, hasError, dataTestId }: StatusIconsProps): ReactNode => {\n const { t } = useTranslation();\n return (\n <>\n {status === 'success' ? (\n <IconCheckMark\n size={16}\n className={styles.iconSuccess}\n data-test-id={`${dataTestId}-success-icon`}\n aria-hidden=\"true\"\n />\n ) : null}\n {hasError ? (\n <>\n <IconExclamationMarkTriangle\n size={16}\n className={styles.iconError}\n data-test-id={`${dataTestId}-error-icon`}\n aria-hidden=\"true\"\n />\n <span className={styles.srOnly} role=\"alert\">\n {t('Select_error')}\n </span>\n </>\n ) : null}\n </>\n );\n};\n"],"names":["StatusIcons","status","hasError","dataTestId","useTranslation","jsxs","Fragment","jsx","IconCheckMark","styles","IconExclamationMarkTriangle"],"mappings":";;;;AAkBO,MAAMA,IAAc,CAAC,EAAE,QAAAC,GAAQ,UAAAC,GAAU,YAAAC,QAA8C;AAC1F,QAAM,EAAE,EAAA,IAAMC,EAAA;AACd,SACI,gBAAAC,EAAAC,GAAA,EACK,UAAA;AAAA,IAAAL,MAAW,YACR,gBAAAM;AAAA,MAACC;AAAA,MAAA;AAAA,QACG,MAAM;AAAA,QACN,WAAWC,EAAO;AAAA,QAClB,gBAAc,GAAGN,CAAU;AAAA,QAC3B,eAAY;AAAA,MAAA;AAAA,IAAA,IAEhB;AAAA,IACHD,IACG,gBAAAG,EAAAC,GAAA,EACI,UAAA;AAAA,MAAA,gBAAAC;AAAA,QAACG;AAAA,QAAA;AAAA,UACG,MAAM;AAAA,UACN,WAAWD,EAAO;AAAA,UAClB,gBAAc,GAAGN,CAAU;AAAA,UAC3B,eAAY;AAAA,QAAA;AAAA,MAAA;AAAA,MAEhB,gBAAAI,EAAC,UAAK,WAAWE,EAAO,QAAQ,MAAK,SAChC,UAAA,EAAE,cAAc,EAAA,CACrB;AAAA,IAAA,EAAA,CACJ,IACA;AAAA,EAAA,GACR;AAER;"}
@@ -1,125 +1,40 @@
1
- import { jsx as e, jsxs as m } from "react/jsx-runtime";
2
- import { IconCross as x } from "@frontify/fondue-icons";
3
- import * as l from "@radix-ui/react-popover";
4
- import { forwardRef as i } from "react";
5
- import { useTranslation as I } from "./fondue-components42.js";
6
- import { addAutoFocusAttribute as _, addShowFocusRing as B } from "./fondue-components55.js";
7
- import { Button as O } from "./fondue-components6.js";
8
- import { useFondueTheme as S, ThemeProvider as j } from "./fondue-components39.js";
9
- import u from "./fondue-components65.js";
10
- const f = ({ children: t, ...o }) => /* @__PURE__ */ e(l.Root, { ...o, children: t });
11
- f.displayName = "Flyout.Root";
12
- const y = ({ asChild: t = !0, children: o, "data-test-id": a = "fondue-flyout-trigger", ...r }, d) => /* @__PURE__ */ e(
13
- l.Trigger,
14
- {
15
- onMouseDown: _,
16
- "data-auto-focus-visible": "true",
17
- "data-auto-focus-trigger": !0,
18
- "data-test-id": a,
19
- asChild: t,
20
- ref: d,
21
- ...r,
22
- children: o
23
- }
1
+ import { jsx as m } from "react/jsx-runtime";
2
+ import { forwardRef as n } from "react";
3
+ import { propsToCssVariables as y } from "./fondue-components46.js";
4
+ import x from "./fondue-components69.js";
5
+ const u = n(
6
+ ({
7
+ as: a = "div",
8
+ "data-test-id": e = "fondue-flex",
9
+ children: r,
10
+ role: i,
11
+ "aria-label": d,
12
+ "aria-hidden": s,
13
+ "aria-describedby": t,
14
+ "aria-labelledby": o,
15
+ "aria-expanded": l,
16
+ "aria-haspopup": p,
17
+ ...b
18
+ }, f) => /* @__PURE__ */ m(
19
+ a,
20
+ {
21
+ className: x.root,
22
+ "data-test-id": e,
23
+ style: y(b, { justify: "justify-content" }),
24
+ role: i,
25
+ "aria-label": d,
26
+ "aria-hidden": s,
27
+ "aria-describedby": t,
28
+ "aria-labelledby": o,
29
+ "aria-expanded": l,
30
+ "aria-haspopup": p,
31
+ ref: f,
32
+ children: r
33
+ }
34
+ )
24
35
  );
25
- y.displayName = "Flyout.Trigger";
26
- const D = {
27
- compact: 8,
28
- comfortable: 12,
29
- spacious: 16
30
- }, H = {
31
- compact: 8,
32
- spacious: 24
33
- }, p = ({
34
- align: t = "start",
35
- maxWidth: o = "360px",
36
- padding: a = "compact",
37
- rounded: r = "medium",
38
- width: d = "fit-content",
39
- shadow: n = "medium",
40
- side: N,
41
- triggerOffset: v = "compact",
42
- viewportCollisionPadding: C = "compact",
43
- "data-test-id": P = "fondue-flyout-content",
44
- children: R,
45
- ...b
46
- }, w) => {
47
- const { theme: A, dir: c } = S(), T = (s) => !s || c === "ltr" ? s : s === "left" ? "right" : s === "right" ? "left" : s;
48
- return /* @__PURE__ */ e(l.Portal, { children: /* @__PURE__ */ m(j, { theme: A, dir: c, children: [
49
- /* @__PURE__ */ e("div", { "data-test-id": "fondue-flyout-overlay", className: u.overlay }),
50
- /* @__PURE__ */ e(
51
- l.Content,
52
- {
53
- dir: c,
54
- style: {
55
- "--flyout-max-width": o,
56
- "--flyout-width": d
57
- },
58
- ref: w,
59
- align: t,
60
- collisionPadding: H[C],
61
- sideOffset: D[v],
62
- side: T(N),
63
- className: u.root,
64
- "data-flyout-spacing": a,
65
- "data-rounded": r,
66
- "data-shadow": n,
67
- "data-test-id": P,
68
- onFocus: B,
69
- ...b,
70
- children: R
71
- }
72
- )
73
- ] }) });
74
- };
75
- p.displayName = "Flyout.Content";
76
- const F = ({ showCloseButton: t, children: o, "data-test-id": a = "fondue-flyout-header", closeProps: r }, d) => {
77
- const { t: n } = I();
78
- return /* @__PURE__ */ m("div", { "data-test-id": a, ref: d, className: u.header, children: [
79
- /* @__PURE__ */ e("div", { children: o }),
80
- t && /* @__PURE__ */ e(l.Close, { asChild: !0, ...r, children: /* @__PURE__ */ e(
81
- O,
82
- {
83
- size: "small",
84
- aspect: "square",
85
- emphasis: "weak",
86
- "aria-label": n("Flyout_close"),
87
- "data-test-id": `${a}-close`,
88
- children: /* @__PURE__ */ e(x, { size: 20 })
89
- }
90
- ) })
91
- ] });
92
- };
93
- F.displayName = "Flyout.Header";
94
- const g = ({ children: t, "data-test-id": o = "fondue-flyout-footer" }, a) => /* @__PURE__ */ e("div", { "data-test-id": o, ref: a, className: u.footer, children: t });
95
- g.displayName = "Flyout.Footer";
96
- const h = ({ children: t, "data-test-id": o = "fondue-flyout-body", scrollable: a = !1 }, r) => /* @__PURE__ */ e(
97
- "div",
98
- {
99
- "data-test-id": o,
100
- ref: r,
101
- "data-flyout-spacing": "compact",
102
- "data-scrollable": a,
103
- className: u.body,
104
- children: t
105
- }
106
- );
107
- h.displayName = "Flyout.Body";
108
- const W = {
109
- Root: f,
110
- Trigger: i(y),
111
- Content: i(p),
112
- Header: i(F),
113
- Footer: i(g),
114
- Body: i(h)
115
- };
36
+ u.displayName = "Flex";
116
37
  export {
117
- W as Flyout,
118
- h as FlyoutBody,
119
- p as FlyoutContent,
120
- g as FlyoutFooter,
121
- F as FlyoutHeader,
122
- f as FlyoutRoot,
123
- y as FlyoutTrigger
38
+ u as Flex
124
39
  };
125
40
  //# sourceMappingURL=fondue-components15.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fondue-components15.js","sources":["../src/components/Flyout/Flyout.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { IconCross } from '@frontify/fondue-icons';\nimport * as RadixPopover from '@radix-ui/react-popover';\nimport { forwardRef, type CSSProperties, type ForwardedRef, type ReactNode } from 'react';\n\nimport { type CommonAriaProps } from '#/helpers/aria';\nimport { useTranslation } from '#/hooks/useTranslation';\nimport { addAutoFocusAttribute, addShowFocusRing } from '#/utilities/domUtilities';\n\nimport { Button } from '../Button/Button';\nimport { ThemeProvider, useFondueTheme } from '../ThemeProvider/ThemeProvider';\n\nimport styles from './styles/flyout.module.scss';\n\nexport type FlyoutRootProps = {\n /**\n * Disable interaction with the rest of the page\n * @default false\n */\n modal?: boolean;\n /**\n * The controlled `open` state of the flyout\n * @default false\n */\n open?: boolean;\n /**\n * Event handler called when the `open` state changes\n */\n onOpenChange?: (open: boolean) => void;\n children?: ReactNode;\n};\n\nexport const FlyoutRoot = ({ children, ...props }: FlyoutRootProps) => {\n return <RadixPopover.Root {...props}>{children}</RadixPopover.Root>;\n};\nFlyoutRoot.displayName = 'Flyout.Root';\n\nexport type FlyoutTriggerProps = {\n /**\n * Change the default rendered element for the one passed as a child, merging their props and behavior.\n * @default true\n */\n asChild?: boolean;\n children?: ReactNode;\n 'data-test-id'?: string;\n};\n\nexport const FlyoutTrigger = (\n { asChild = true, children, 'data-test-id': dataTestId = 'fondue-flyout-trigger', ...props }: FlyoutTriggerProps,\n ref: ForwardedRef<HTMLButtonElement>,\n) => {\n return (\n <RadixPopover.Trigger\n onMouseDown={addAutoFocusAttribute}\n data-auto-focus-visible=\"true\"\n data-auto-focus-trigger\n data-test-id={dataTestId}\n asChild={asChild}\n ref={ref}\n {...props}\n >\n {children}\n </RadixPopover.Trigger>\n );\n};\nFlyoutTrigger.displayName = 'Flyout.Trigger';\n\ntype FlyoutSpacing = 'compact' | 'comfortable' | 'spacious';\ntype FlyoutViewportCollisionPadding = 'compact' | 'spacious';\nexport type FlyoutContentProps = {\n /**\n * Add a shadow to the flyout\n * @default \"medium\"\n */\n shadow?: 'none' | 'medium' | 'large';\n /**\n * Add rounded corners to the flyout\n * @default \"medium\"\n */\n rounded?: 'none' | 'medium' | 'large';\n /**\n * Define the prefered side of the flyout. Can be overriden by viewport collisions viewport.\n * @default \"bottom\"\n */\n side?: 'top' | 'right' | 'bottom' | 'left';\n /**\n * Define the prefered alignment of the flyout. Can be overriden by viewport collisions viewport.\n * @default \"start\"\n */\n align?: 'start' | 'center' | 'end';\n /**\n * Define the padding of the flyout\n * @default \"compact\"\n */\n padding?: 'none' | 'tight' | 'compact' | 'comfortable' | 'spacious';\n /**\n * Define the fixed width of the flyout\n * @default \"fit-content\"\n */\n width?: string;\n /**\n * Defines the spacing between the dropdown and its trigger.\n * @default 'compact'\n */\n triggerOffset?: FlyoutSpacing;\n /**\n * Define the maximum width of the flyout\n * @default \"360px\"\n */\n maxWidth?: string;\n /**\n * Define the minimum distance between the flyout and the viewport edge\n * @default 'compact'\n */\n viewportCollisionPadding?: FlyoutViewportCollisionPadding;\n /**\n * Event handler called when auto-focusing on open\n */\n onOpenAutoFocus?: (event: Event) => void;\n /**\n * Event handler called when the escape key is pressed.\n */\n onEscapeKeyDown?: (event: KeyboardEvent) => void;\n children?: ReactNode;\n 'data-test-id'?: string;\n};\n\nconst SPACING_MAP: Record<FlyoutSpacing, number> = {\n compact: 8,\n comfortable: 12,\n spacious: 16,\n};\n\nconst VIEWPORT_COLLISION_PADDING_MAP: Record<FlyoutViewportCollisionPadding, number> = {\n compact: 8,\n spacious: 24,\n};\n\nexport const FlyoutContent = (\n {\n align = 'start',\n maxWidth = '360px',\n padding = 'compact',\n rounded = 'medium',\n width = 'fit-content',\n shadow = 'medium',\n side,\n triggerOffset = 'compact',\n viewportCollisionPadding = 'compact',\n 'data-test-id': dataTestId = 'fondue-flyout-content',\n children,\n ...props\n }: FlyoutContentProps,\n ref: ForwardedRef<HTMLDivElement>,\n) => {\n const { theme, dir } = useFondueTheme();\n\n const getAdjustedSide = (side?: 'top' | 'right' | 'bottom' | 'left') => {\n if (!side || dir === 'ltr') {\n return side;\n }\n\n if (side === 'left') {\n return 'right';\n }\n if (side === 'right') {\n return 'left';\n }\n\n return side;\n };\n\n return (\n <RadixPopover.Portal>\n <ThemeProvider theme={theme} dir={dir}>\n <div data-test-id=\"fondue-flyout-overlay\" className={styles.overlay} />\n <RadixPopover.Content\n dir={dir}\n style={\n {\n '--flyout-max-width': maxWidth,\n '--flyout-width': width,\n } as CSSProperties\n }\n ref={ref}\n align={align}\n collisionPadding={VIEWPORT_COLLISION_PADDING_MAP[viewportCollisionPadding]}\n sideOffset={SPACING_MAP[triggerOffset]}\n side={getAdjustedSide(side)}\n className={styles.root}\n data-flyout-spacing={padding}\n data-rounded={rounded}\n data-shadow={shadow}\n data-test-id={dataTestId}\n onFocus={addShowFocusRing}\n {...props}\n >\n {children}\n </RadixPopover.Content>\n </ThemeProvider>\n </RadixPopover.Portal>\n );\n};\nFlyoutContent.displayName = 'Flyout.Content';\n\nexport type FlyoutHeaderProps = {\n /**\n * Show a close button in the header\n * @default false\n */\n showCloseButton?: boolean;\n children?: ReactNode;\n 'data-test-id'?: string;\n closeProps?: CommonAriaProps;\n};\n\nexport const FlyoutHeader = (\n { showCloseButton, children, 'data-test-id': dataTestId = 'fondue-flyout-header', closeProps }: FlyoutHeaderProps,\n ref: ForwardedRef<HTMLDivElement>,\n) => {\n const { t } = useTranslation();\n\n return (\n <div data-test-id={dataTestId} ref={ref} className={styles.header}>\n <div>{children}</div>\n {showCloseButton && (\n <RadixPopover.Close asChild {...closeProps}>\n <Button\n size=\"small\"\n aspect=\"square\"\n emphasis=\"weak\"\n aria-label={t('Flyout_close')}\n data-test-id={`${dataTestId}-close`}\n >\n <IconCross size={20} />\n </Button>\n </RadixPopover.Close>\n )}\n </div>\n );\n};\nFlyoutHeader.displayName = 'Flyout.Header';\n\nexport type FlyoutFooterProps = { children?: ReactNode; 'data-test-id'?: string };\n\nexport const FlyoutFooter = (\n { children, 'data-test-id': dataTestId = 'fondue-flyout-footer' }: FlyoutFooterProps,\n ref: ForwardedRef<HTMLDivElement>,\n) => {\n return (\n <div data-test-id={dataTestId} ref={ref} className={styles.footer}>\n {children}\n </div>\n );\n};\nFlyoutFooter.displayName = 'Flyout.Footer';\n\nexport type FlyoutBodyProps = {\n children?: ReactNode;\n 'data-test-id'?: string;\n /**\n * Allow the body to scroll if the max height of the flyout is reached\n * @default false\n */\n scrollable?: boolean;\n};\n\nexport const FlyoutBody = (\n { children, 'data-test-id': dataTestId = 'fondue-flyout-body', scrollable = false }: FlyoutBodyProps,\n ref: ForwardedRef<HTMLDivElement>,\n) => {\n return (\n <div\n data-test-id={dataTestId}\n ref={ref}\n data-flyout-spacing=\"compact\"\n data-scrollable={scrollable}\n className={styles.body}\n >\n {children}\n </div>\n );\n};\nFlyoutBody.displayName = 'Flyout.Body';\n\nexport const Flyout = {\n Root: FlyoutRoot,\n Trigger: forwardRef<HTMLButtonElement, FlyoutTriggerProps>(FlyoutTrigger),\n Content: forwardRef<HTMLDivElement, FlyoutContentProps>(FlyoutContent),\n Header: forwardRef<HTMLDivElement, FlyoutHeaderProps>(FlyoutHeader),\n Footer: forwardRef<HTMLDivElement, FlyoutFooterProps>(FlyoutFooter),\n Body: forwardRef<HTMLDivElement, FlyoutBodyProps>(FlyoutBody),\n};\n"],"names":["FlyoutRoot","children","props","RadixPopover","FlyoutTrigger","asChild","dataTestId","ref","jsx","addAutoFocusAttribute","SPACING_MAP","VIEWPORT_COLLISION_PADDING_MAP","FlyoutContent","align","maxWidth","padding","rounded","width","shadow","side","triggerOffset","viewportCollisionPadding","theme","dir","useFondueTheme","getAdjustedSide","jsxs","ThemeProvider","styles","addShowFocusRing","FlyoutHeader","showCloseButton","closeProps","t","useTranslation","Button","IconCross","FlyoutFooter","FlyoutBody","scrollable","Flyout","forwardRef"],"mappings":";;;;;;;;;AAiCO,MAAMA,IAAa,CAAC,EAAE,UAAAC,GAAU,GAAGC,0BAC9BC,EAAa,MAAb,EAAmB,GAAGD,GAAQ,UAAAD,GAAS;AAEnDD,EAAW,cAAc;AAYlB,MAAMI,IAAgB,CACzB,EAAE,SAAAC,IAAU,IAAM,UAAAJ,GAAU,gBAAgBK,IAAa,yBAAyB,GAAGJ,EAAA,GACrFK,MAGI,gBAAAC;AAAA,EAACL,EAAa;AAAA,EAAb;AAAA,IACG,aAAaM;AAAA,IACb,2BAAwB;AAAA,IACxB,2BAAuB;AAAA,IACvB,gBAAcH;AAAA,IACd,SAAAD;AAAA,IACA,KAAAE;AAAA,IACC,GAAGL;AAAA,IAEH,UAAAD;AAAA,EAAA;AAAA;AAIbG,EAAc,cAAc;AA8D5B,MAAMM,IAA6C;AAAA,EAC/C,SAAS;AAAA,EACT,aAAa;AAAA,EACb,UAAU;AACd,GAEMC,IAAiF;AAAA,EACnF,SAAS;AAAA,EACT,UAAU;AACd,GAEaC,IAAgB,CACzB;AAAA,EACI,OAAAC,IAAQ;AAAA,EACR,UAAAC,IAAW;AAAA,EACX,SAAAC,IAAU;AAAA,EACV,SAAAC,IAAU;AAAA,EACV,OAAAC,IAAQ;AAAA,EACR,QAAAC,IAAS;AAAA,EACT,MAAAC;AAAA,EACA,eAAAC,IAAgB;AAAA,EAChB,0BAAAC,IAA2B;AAAA,EAC3B,gBAAgBf,IAAa;AAAA,EAC7B,UAAAL;AAAA,EACA,GAAGC;AACP,GACAK,MACC;AACD,QAAM,EAAE,OAAAe,GAAO,KAAAC,EAAA,IAAQC,EAAA,GAEjBC,IAAkB,CAACN,MACjB,CAACA,KAAQI,MAAQ,QACVJ,IAGPA,MAAS,SACF,UAEPA,MAAS,UACF,SAGJA;AAGX,2BACKhB,EAAa,QAAb,EACG,UAAA,gBAAAuB,EAACC,GAAA,EAAc,OAAAL,GAAc,KAAAC,GACzB,UAAA;AAAA,IAAA,gBAAAf,EAAC,OAAA,EAAI,gBAAa,yBAAwB,WAAWoB,EAAO,SAAS;AAAA,IACrE,gBAAApB;AAAA,MAACL,EAAa;AAAA,MAAb;AAAA,QACG,KAAAoB;AAAA,QACA,OACI;AAAA,UACI,sBAAsBT;AAAA,UACtB,kBAAkBG;AAAA,QAAA;AAAA,QAG1B,KAAAV;AAAA,QACA,OAAAM;AAAA,QACA,kBAAkBF,EAA+BU,CAAwB;AAAA,QACzE,YAAYX,EAAYU,CAAa;AAAA,QACrC,MAAMK,EAAgBN,CAAI;AAAA,QAC1B,WAAWS,EAAO;AAAA,QAClB,uBAAqBb;AAAA,QACrB,gBAAcC;AAAA,QACd,eAAaE;AAAA,QACb,gBAAcZ;AAAA,QACd,SAASuB;AAAA,QACR,GAAG3B;AAAA,QAEH,UAAAD;AAAA,MAAA;AAAA,IAAA;AAAA,EACL,EAAA,CACJ,EAAA,CACJ;AAER;AACAW,EAAc,cAAc;AAarB,MAAMkB,IAAe,CACxB,EAAE,iBAAAC,GAAiB,UAAA9B,GAAU,gBAAgBK,IAAa,wBAAwB,YAAA0B,EAAA,GAClFzB,MACC;AACD,QAAM,EAAE,GAAA0B,EAAA,IAAMC,EAAA;AAEd,2BACK,OAAA,EAAI,gBAAc5B,GAAY,KAAAC,GAAU,WAAWqB,EAAO,QACvD,UAAA;AAAA,IAAA,gBAAApB,EAAC,SAAK,UAAAP,GAAS;AAAA,IACd8B,uBACI5B,EAAa,OAAb,EAAmB,SAAO,IAAE,GAAG6B,GAC5B,UAAA,gBAAAxB;AAAA,MAAC2B;AAAA,MAAA;AAAA,QACG,MAAK;AAAA,QACL,QAAO;AAAA,QACP,UAAS;AAAA,QACT,cAAYF,EAAE,cAAc;AAAA,QAC5B,gBAAc,GAAG3B,CAAU;AAAA,QAE3B,UAAA,gBAAAE,EAAC4B,GAAA,EAAU,MAAM,GAAA,CAAI;AAAA,MAAA;AAAA,IAAA,EACzB,CACJ;AAAA,EAAA,GAER;AAER;AACAN,EAAa,cAAc;AAIpB,MAAMO,IAAe,CACxB,EAAE,UAAApC,GAAU,gBAAgBK,IAAa,uBAAA,GACzCC,MAGI,gBAAAC,EAAC,SAAI,gBAAcF,GAAY,KAAAC,GAAU,WAAWqB,EAAO,QACtD,UAAA3B,GACL;AAGRoC,EAAa,cAAc;AAYpB,MAAMC,IAAa,CACtB,EAAE,UAAArC,GAAU,gBAAgBK,IAAa,sBAAsB,YAAAiC,IAAa,GAAA,GAC5EhC,MAGI,gBAAAC;AAAA,EAAC;AAAA,EAAA;AAAA,IACG,gBAAcF;AAAA,IACd,KAAAC;AAAA,IACA,uBAAoB;AAAA,IACpB,mBAAiBgC;AAAA,IACjB,WAAWX,EAAO;AAAA,IAEjB,UAAA3B;AAAA,EAAA;AAAA;AAIbqC,EAAW,cAAc;AAElB,MAAME,IAAS;AAAA,EAClB,MAAMxC;AAAA,EACN,SAASyC,EAAkDrC,CAAa;AAAA,EACxE,SAASqC,EAA+C7B,CAAa;AAAA,EACrE,QAAQ6B,EAA8CX,CAAY;AAAA,EAClE,QAAQW,EAA8CJ,CAAY;AAAA,EAClE,MAAMI,EAA4CH,CAAU;AAChE;"}
1
+ {"version":3,"file":"fondue-components15.js","sources":["../src/components/Flex/Flex.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { forwardRef, type ReactNode } from 'react';\n\nimport { type CommonAriaProps } from '#/helpers/aria';\nimport { type Responsive, type SizeValue, type LayoutComponentProps } from '#/helpers/layout';\nimport { propsToCssVariables } from '#/helpers/propsToCssVariables';\n\nimport styles from './styles/flex.module.scss';\n\nexport type FlexProps = LayoutComponentProps & {\n /**\n * The element to render the Flex component as.\n * @default 'div'\n */\n as?: 'div' | 'span';\n /**\n * The display property.\n * @default 'flex'\n */\n display?: Responsive<'none' | 'flex' | 'inline-flex'>;\n /**\n * The direction of the children.\n * @default 'row'\n */\n direction?: Responsive<'row' | 'row-reverse' | 'column' | 'column-reverse'>;\n /**\n * The alignment of the children.\n */\n align?: Responsive<'flex-start' | 'center' | 'flex-end' | 'stretch' | 'baseline'>;\n /**\n * The justification of the children.\n */\n justify?: Responsive<'flex-start' | 'center' | 'flex-end' | 'space-between' | 'space-around' | 'space-evenly'>;\n /**\n * The wrap property.\n */\n wrap?: Responsive<'nowrap' | 'wrap' | 'wrap-reverse'>;\n /**\n * The gap between the children.\n */\n gap?: Responsive<SizeValue>;\n /**\n * The horizontal gap between the children.\n */\n gapX?: Responsive<SizeValue>;\n /**\n * The vertical gap between the children.\n */\n gapY?: Responsive<SizeValue>;\n\n children?: ReactNode;\n 'data-test-id'?: string;\n} & CommonAriaProps;\n\nexport const Flex = forwardRef<HTMLDivElement, FlexProps>(\n (\n {\n as: Component = 'div',\n 'data-test-id': dataTestId = 'fondue-flex',\n children,\n role,\n 'aria-label': ariaLabel,\n 'aria-hidden': ariaHidden,\n 'aria-describedby': ariaDescribedBy,\n 'aria-labelledby': ariaLabelledBy,\n 'aria-expanded': ariaExpanded,\n 'aria-haspopup': ariaHasPopup,\n ...props\n },\n ref,\n ) => {\n return (\n <Component\n className={styles.root}\n data-test-id={dataTestId}\n style={propsToCssVariables(props, { justify: 'justify-content' })}\n role={role}\n aria-label={ariaLabel}\n aria-hidden={ariaHidden}\n aria-describedby={ariaDescribedBy}\n aria-labelledby={ariaLabelledBy}\n aria-expanded={ariaExpanded}\n aria-haspopup={ariaHasPopup}\n ref={ref}\n >\n {children}\n </Component>\n );\n },\n);\nFlex.displayName = 'Flex';\n"],"names":["Flex","forwardRef","Component","dataTestId","children","role","ariaLabel","ariaHidden","ariaDescribedBy","ariaLabelledBy","ariaExpanded","ariaHasPopup","props","ref","jsx","styles","propsToCssVariables"],"mappings":";;;;AAuDO,MAAMA,IAAOC;AAAA,EAChB,CACI;AAAA,IACI,IAAIC,IAAY;AAAA,IAChB,gBAAgBC,IAAa;AAAA,IAC7B,UAAAC;AAAA,IACA,MAAAC;AAAA,IACA,cAAcC;AAAA,IACd,eAAeC;AAAA,IACf,oBAAoBC;AAAA,IACpB,mBAAmBC;AAAA,IACnB,iBAAiBC;AAAA,IACjB,iBAAiBC;AAAA,IACjB,GAAGC;AAAA,EAAA,GAEPC,MAGI,gBAAAC;AAAA,IAACZ;AAAA,IAAA;AAAA,MACG,WAAWa,EAAO;AAAA,MAClB,gBAAcZ;AAAA,MACd,OAAOa,EAAoBJ,GAAO,EAAE,SAAS,mBAAmB;AAAA,MAChE,MAAAP;AAAA,MACA,cAAYC;AAAA,MACZ,eAAaC;AAAA,MACb,oBAAkBC;AAAA,MAClB,mBAAiBC;AAAA,MACjB,iBAAeC;AAAA,MACf,iBAAeC;AAAA,MACf,KAAAE;AAAA,MAEC,UAAAT;AAAA,IAAA;AAAA,EAAA;AAIjB;AACAJ,EAAK,cAAc;"}
@@ -1,71 +1,22 @@
1
- const a = {
2
- lessThanXSeconds: {
3
- one: "less than a second",
4
- other: "less than {{count}} seconds"
5
- },
6
- xSeconds: {
7
- one: "1 second",
8
- other: "{{count}} seconds"
9
- },
10
- halfAMinute: "half a minute",
11
- lessThanXMinutes: {
12
- one: "less than a minute",
13
- other: "less than {{count}} minutes"
14
- },
15
- xMinutes: {
16
- one: "1 minute",
17
- other: "{{count}} minutes"
18
- },
19
- aboutXHours: {
20
- one: "about 1 hour",
21
- other: "about {{count}} hours"
22
- },
23
- xHours: {
24
- one: "1 hour",
25
- other: "{{count}} hours"
26
- },
27
- xDays: {
28
- one: "1 day",
29
- other: "{{count}} days"
30
- },
31
- aboutXWeeks: {
32
- one: "about 1 week",
33
- other: "about {{count}} weeks"
34
- },
35
- xWeeks: {
36
- one: "1 week",
37
- other: "{{count}} weeks"
38
- },
39
- aboutXMonths: {
40
- one: "about 1 month",
41
- other: "about {{count}} months"
42
- },
43
- xMonths: {
44
- one: "1 month",
45
- other: "{{count}} months"
46
- },
47
- aboutXYears: {
48
- one: "about 1 year",
49
- other: "about {{count}} years"
50
- },
51
- xYears: {
52
- one: "1 year",
53
- other: "{{count}} years"
54
- },
55
- overXYears: {
56
- one: "over 1 year",
57
- other: "over {{count}} years"
58
- },
59
- almostXYears: {
60
- one: "almost 1 year",
61
- other: "almost {{count}} years"
1
+ import { formatDistance as o } from "./fondue-components157.js";
2
+ import { formatLong as t } from "./fondue-components158.js";
3
+ import { formatRelative as a } from "./fondue-components159.js";
4
+ import { localize as r } from "./fondue-components160.js";
5
+ import { match as e } from "./fondue-components161.js";
6
+ const s = {
7
+ code: "en-US",
8
+ formatDistance: o,
9
+ formatLong: t,
10
+ formatRelative: a,
11
+ localize: r,
12
+ match: e,
13
+ options: {
14
+ weekStartsOn: 0,
15
+ firstWeekContainsDate: 1
62
16
  }
63
- }, r = (s, n, o) => {
64
- let e;
65
- const t = a[s];
66
- return typeof t == "string" ? e = t : n === 1 ? e = t.one : e = t.other.replace("{{count}}", n.toString()), o != null && o.addSuffix ? o.comparison && o.comparison > 0 ? "in " + e : e + " ago" : e;
67
17
  };
68
18
  export {
69
- r as formatDistance
19
+ s as default,
20
+ s as enUS
70
21
  };
71
22
  //# sourceMappingURL=fondue-components150.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fondue-components150.js","sources":["../../../node_modules/.pnpm/date-fns@3.6.0/node_modules/date-fns/locale/en-US/_lib/formatDistance.mjs"],"sourcesContent":["const formatDistanceLocale = {\n lessThanXSeconds: {\n one: \"less than a second\",\n other: \"less than {{count}} seconds\",\n },\n\n xSeconds: {\n one: \"1 second\",\n other: \"{{count}} seconds\",\n },\n\n halfAMinute: \"half a minute\",\n\n lessThanXMinutes: {\n one: \"less than a minute\",\n other: \"less than {{count}} minutes\",\n },\n\n xMinutes: {\n one: \"1 minute\",\n other: \"{{count}} minutes\",\n },\n\n aboutXHours: {\n one: \"about 1 hour\",\n other: \"about {{count}} hours\",\n },\n\n xHours: {\n one: \"1 hour\",\n other: \"{{count}} hours\",\n },\n\n xDays: {\n one: \"1 day\",\n other: \"{{count}} days\",\n },\n\n aboutXWeeks: {\n one: \"about 1 week\",\n other: \"about {{count}} weeks\",\n },\n\n xWeeks: {\n one: \"1 week\",\n other: \"{{count}} weeks\",\n },\n\n aboutXMonths: {\n one: \"about 1 month\",\n other: \"about {{count}} months\",\n },\n\n xMonths: {\n one: \"1 month\",\n other: \"{{count}} months\",\n },\n\n aboutXYears: {\n one: \"about 1 year\",\n other: \"about {{count}} years\",\n },\n\n xYears: {\n one: \"1 year\",\n other: \"{{count}} years\",\n },\n\n overXYears: {\n one: \"over 1 year\",\n other: \"over {{count}} years\",\n },\n\n almostXYears: {\n one: \"almost 1 year\",\n other: \"almost {{count}} years\",\n },\n};\n\nexport const formatDistance = (token, count, options) => {\n let result;\n\n const tokenValue = formatDistanceLocale[token];\n if (typeof tokenValue === \"string\") {\n result = tokenValue;\n } else if (count === 1) {\n result = tokenValue.one;\n } else {\n result = tokenValue.other.replace(\"{{count}}\", count.toString());\n }\n\n if (options?.addSuffix) {\n if (options.comparison && options.comparison > 0) {\n return \"in \" + result;\n } else {\n return result + \" ago\";\n }\n }\n\n return result;\n};\n"],"names":["formatDistanceLocale","formatDistance","token","count","options","result","tokenValue"],"mappings":"AAAA,MAAMA,IAAuB;AAAA,EAC3B,kBAAkB;AAAA,IAChB,KAAK;AAAA,IACL,OAAO;AAAA,EACX;AAAA,EAEE,UAAU;AAAA,IACR,KAAK;AAAA,IACL,OAAO;AAAA,EACX;AAAA,EAEE,aAAa;AAAA,EAEb,kBAAkB;AAAA,IAChB,KAAK;AAAA,IACL,OAAO;AAAA,EACX;AAAA,EAEE,UAAU;AAAA,IACR,KAAK;AAAA,IACL,OAAO;AAAA,EACX;AAAA,EAEE,aAAa;AAAA,IACX,KAAK;AAAA,IACL,OAAO;AAAA,EACX;AAAA,EAEE,QAAQ;AAAA,IACN,KAAK;AAAA,IACL,OAAO;AAAA,EACX;AAAA,EAEE,OAAO;AAAA,IACL,KAAK;AAAA,IACL,OAAO;AAAA,EACX;AAAA,EAEE,aAAa;AAAA,IACX,KAAK;AAAA,IACL,OAAO;AAAA,EACX;AAAA,EAEE,QAAQ;AAAA,IACN,KAAK;AAAA,IACL,OAAO;AAAA,EACX;AAAA,EAEE,cAAc;AAAA,IACZ,KAAK;AAAA,IACL,OAAO;AAAA,EACX;AAAA,EAEE,SAAS;AAAA,IACP,KAAK;AAAA,IACL,OAAO;AAAA,EACX;AAAA,EAEE,aAAa;AAAA,IACX,KAAK;AAAA,IACL,OAAO;AAAA,EACX;AAAA,EAEE,QAAQ;AAAA,IACN,KAAK;AAAA,IACL,OAAO;AAAA,EACX;AAAA,EAEE,YAAY;AAAA,IACV,KAAK;AAAA,IACL,OAAO;AAAA,EACX;AAAA,EAEE,cAAc;AAAA,IACZ,KAAK;AAAA,IACL,OAAO;AAAA,EACX;AACA,GAEaC,IAAiB,CAACC,GAAOC,GAAOC,MAAY;AACvD,MAAIC;AAEJ,QAAMC,IAAaN,EAAqBE,CAAK;AAS7C,SARI,OAAOI,KAAe,WACxBD,IAASC,IACAH,MAAU,IACnBE,IAASC,EAAW,MAEpBD,IAASC,EAAW,MAAM,QAAQ,aAAaH,EAAM,UAAU,GAG7DC,KAAA,QAAAA,EAAS,YACPA,EAAQ,cAAcA,EAAQ,aAAa,IACtC,QAAQC,IAERA,IAAS,SAIbA;AACT;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"fondue-components150.js","sources":["../../../node_modules/.pnpm/date-fns@3.6.0/node_modules/date-fns/locale/en-US.mjs"],"sourcesContent":["import { formatDistance } from \"./en-US/_lib/formatDistance.mjs\";\nimport { formatLong } from \"./en-US/_lib/formatLong.mjs\";\nimport { formatRelative } from \"./en-US/_lib/formatRelative.mjs\";\nimport { localize } from \"./en-US/_lib/localize.mjs\";\nimport { match } from \"./en-US/_lib/match.mjs\";\n\n/**\n * @category Locales\n * @summary English locale (United States).\n * @language English\n * @iso-639-2 eng\n * @author Sasha Koss [@kossnocorp](https://github.com/kossnocorp)\n * @author Lesha Koss [@leshakoss](https://github.com/leshakoss)\n */\nexport const enUS = {\n code: \"en-US\",\n formatDistance: formatDistance,\n formatLong: formatLong,\n formatRelative: formatRelative,\n localize: localize,\n match: match,\n options: {\n weekStartsOn: 0 /* Sunday */,\n firstWeekContainsDate: 1,\n },\n};\n\n// Fallback for modularized imports:\nexport default enUS;\n"],"names":["enUS","formatDistance","formatLong","formatRelative","localize","match"],"mappings":";;;;;AAcY,MAACA,IAAO;AAAA,EAClB,MAAM;AAAA,EACN,gBAAgBC;AAAA,EAChB,YAAYC;AAAA,EACZ,gBAAgBC;AAAA,EAChB,UAAUC;AAAA,EACV,OAAOC;AAAA,EACP,SAAS;AAAA,IACP,cAAc;AAAA,IACd,uBAAuB;AAAA,EAC3B;AACA;","x_google_ignoreList":[0]}