@frontify/fondue-components 29.1.0 → 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 +18 -4
  29. package/dist/fondue-components111.js.map +1 -1
  30. package/dist/fondue-components112.js +24 -4
  31. package/dist/fondue-components112.js.map +1 -1
  32. package/dist/fondue-components113.js +9 -14
  33. package/dist/fondue-components113.js.map +1 -1
  34. package/dist/fondue-components114.js +32 -16
  35. package/dist/fondue-components114.js.map +1 -1
  36. package/dist/fondue-components115.js +7 -111
  37. package/dist/fondue-components115.js.map +1 -1
  38. package/dist/fondue-components116.js +4 -12
  39. package/dist/fondue-components116.js.map +1 -1
  40. package/dist/fondue-components117.js +5 -17
  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 +17 -127
  49. package/dist/fondue-components120.js.map +1 -1
  50. package/dist/fondue-components121.js +110 -10
  51. package/dist/fondue-components121.js.map +1 -1
  52. package/dist/fondue-components122.js +12 -35
  53. package/dist/fondue-components122.js.map +1 -1
  54. package/dist/fondue-components123.js +15 -215
  55. package/dist/fondue-components123.js.map +1 -1
  56. package/dist/fondue-components124.js +10 -16
  57. package/dist/fondue-components124.js.map +1 -1
  58. package/dist/fondue-components125.js +32 -16
  59. package/dist/fondue-components125.js.map +1 -1
  60. package/dist/fondue-components126.js +6 -151
  61. package/dist/fondue-components126.js.map +1 -1
  62. package/dist/fondue-components127.js +127 -45
  63. package/dist/fondue-components127.js.map +1 -1
  64. package/dist/fondue-components128.js +11 -42
  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 +14 -165
  73. package/dist/fondue-components131.js.map +1 -1
  74. package/dist/fondue-components132.js +17 -60
  75. package/dist/fondue-components132.js.map +1 -1
  76. package/dist/fondue-components133.js +151 -9
  77. package/dist/fondue-components133.js.map +1 -1
  78. package/dist/fondue-components134.js +44 -255
  79. package/dist/fondue-components134.js.map +1 -1
  80. package/dist/fondue-components135.js +170 -6
  81. package/dist/fondue-components135.js.map +1 -1
  82. package/dist/fondue-components136.js +60 -12
  83. package/dist/fondue-components136.js.map +1 -1
  84. package/dist/fondue-components137.js +9 -71
  85. package/dist/fondue-components137.js.map +1 -1
  86. package/dist/fondue-components138.js +255 -14
  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 -87
  91. package/dist/fondue-components140.js.map +1 -1
  92. package/dist/fondue-components141.js +40 -80
  93. package/dist/fondue-components141.js.map +1 -1
  94. package/dist/fondue-components142.js +6 -31
  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 +180 -14
  324. package/dist/style.css +1 -1
  325. package/package.json +8 -4
  326. package/dist/fondue-components139.js +0 -10
  327. package/dist/fondue-components139.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"fondue-components46.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
1
+ {"version":3,"file":"fondue-components46.js","sources":["../src/helpers/propsToCssVariables.ts"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { type CSSProperties } from 'react';\n\nimport { type Breakpoint } from './layout';\n\nconst isAriaProp = (key: string): boolean => {\n return key.startsWith('aria-') || key === 'role';\n};\n\nconst abbreviationToCssProperty: Record<string, string> = {\n m: 'margin',\n mx: 'margin-x',\n my: 'margin-y',\n mt: 'margin-top',\n mr: 'margin-right',\n mb: 'margin-bottom',\n ml: 'margin-left',\n p: 'padding',\n px: 'padding-x',\n py: 'padding-y',\n pt: 'padding-top',\n pr: 'padding-right',\n pb: 'padding-bottom',\n pl: 'padding-left',\n direction: 'flex-direction',\n align: 'align-items',\n wrap: 'flex-wrap',\n columns: 'grid-template-columns',\n rows: 'grid-template-rows',\n};\n\nconst explodeProps: Record<string, string[]> = {\n overflow: ['overflow-x', 'overflow-y'],\n};\n\nconst transformValueBasedOnKey = (key: string, value: string | number): string | number => {\n if (key === 'columns' || key === 'rows') {\n if (typeof value === 'number') {\n return `repeat(${value}, 1fr)`;\n }\n return value;\n }\n\n // Spacing tokens\n if (typeof value === 'number') {\n return `${value * 0.25}rem`;\n }\n\n return value;\n};\n\nexport const propsToCssVariables = (\n props: Record<string, string | number | boolean | { [key in Breakpoint]?: string | number | boolean }>,\n extraAbbreviationToCssProperty: Record<string, string> = {},\n): CSSProperties => {\n return Object.entries(props)\n .reduce<[keyof typeof props, (typeof props)[keyof typeof props]][]>((acc, [key, value]) => {\n if (!(key in explodeProps)) {\n return [...acc, [key, value]];\n }\n\n acc.push([key, value]);\n for (const newKey of explodeProps[key] ?? []) {\n acc.push([newKey, value]);\n }\n\n return acc;\n }, [])\n .reduce<CSSProperties>((acc, [key, value]) => {\n if (isAriaProp(key)) {\n return acc;\n }\n\n const cssProperty =\n key in extraAbbreviationToCssProperty\n ? extraAbbreviationToCssProperty[key]\n : key in abbreviationToCssProperty\n ? abbreviationToCssProperty[key]\n : key;\n // The lookahead is necessary to split camelCase boundaries; disabling false-positive lint warning\n const cssPropertyKebabCase = cssProperty?.replaceAll(/([\\da-z]|(?=[A-Z]))([A-Z])/g, '$1-$2').toLowerCase();\n\n if (typeof value === 'object') {\n for (const [breakpoint, breakpointValue] of Object.entries(value)) {\n if (breakpointValue !== undefined) {\n // @ts-expect-error CSS variables are not typed into `CSSProperties`\n acc[`--${breakpoint}-${cssPropertyKebabCase}`] = transformValueBasedOnKey(key, breakpointValue);\n }\n }\n } else {\n // @ts-expect-error CSS variables are not typed into `CSSProperties`\n acc[`--${cssPropertyKebabCase}`] = transformValueBasedOnKey(key, value);\n }\n return acc;\n }, {});\n};\n"],"names":["isAriaProp","key","abbreviationToCssProperty","explodeProps","transformValueBasedOnKey","value","propsToCssVariables","props","extraAbbreviationToCssProperty","acc","newKey","cssProperty","cssPropertyKebabCase","breakpoint","breakpointValue"],"mappings":"AAMA,MAAMA,IAAa,CAACC,MACTA,EAAI,WAAW,OAAO,KAAKA,MAAQ,QAGxCC,IAAoD;AAAA,EACtD,GAAG;AAAA,EACH,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,GAAG;AAAA,EACH,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,WAAW;AAAA,EACX,OAAO;AAAA,EACP,MAAM;AAAA,EACN,SAAS;AAAA,EACT,MAAM;AACV,GAEMC,IAAyC;AAAA,EAC3C,UAAU,CAAC,cAAc,YAAY;AACzC,GAEMC,IAA2B,CAACH,GAAaI,MACvCJ,MAAQ,aAAaA,MAAQ,SACzB,OAAOI,KAAU,WACV,UAAUA,CAAK,WAEnBA,IAIP,OAAOA,KAAU,WACV,GAAGA,IAAQ,IAAI,QAGnBA,GAGEC,IAAsB,CAC/BC,GACAC,IAAyD,OAElD,OAAO,QAAQD,CAAK,EACtB,OAAmE,CAACE,GAAK,CAACR,GAAKI,CAAK,MAAM;AACvF,MAAI,EAAEJ,KAAOE;AACT,WAAO,CAAC,GAAGM,GAAK,CAACR,GAAKI,CAAK,CAAC;AAGhC,EAAAI,EAAI,KAAK,CAACR,GAAKI,CAAK,CAAC;AACrB,aAAWK,KAAUP,EAAaF,CAAG,KAAK,CAAA;AACtC,IAAAQ,EAAI,KAAK,CAACC,GAAQL,CAAK,CAAC;AAG5B,SAAOI;AACX,GAAG,CAAA,CAAE,EACJ,OAAsB,CAACA,GAAK,CAACR,GAAKI,CAAK,MAAM;AAC1C,MAAIL,EAAWC,CAAG;AACd,WAAOQ;AAGX,QAAME,IACFV,KAAOO,IACDA,EAA+BP,CAAG,IAClCA,KAAOC,IACLA,EAA0BD,CAAG,IAC7BA,GAENW,IAAuBD,KAAA,gBAAAA,EAAa,WAAW,+BAA+B,SAAS;AAE7F,MAAI,OAAON,KAAU;AACjB,eAAW,CAACQ,GAAYC,CAAe,KAAK,OAAO,QAAQT,CAAK;AAC5D,MAAIS,MAAoB,WAEpBL,EAAI,KAAKI,CAAU,IAAID,CAAoB,EAAE,IAAIR,EAAyBH,GAAKa,CAAe;AAAA;AAKtG,IAAAL,EAAI,KAAKG,CAAoB,EAAE,IAAIR,EAAyBH,GAAKI,CAAK;AAE1E,SAAOI;AACX,GAAG,CAAA,CAAE;"}
@@ -1,4 +1,4 @@
1
- const o = "_root_ebauq_5", t = {
1
+ const o = "_root_f9dx4_6", t = {
2
2
  root: o
3
3
  };
4
4
  export {
@@ -1,16 +1,8 @@
1
- const o = "_root_1fezf_5", n = "_indicator_1fezf_88", e = "_icon_1fezf_113", c = "_iconIndeterminate_1fezf_129", t = "_iconChecked_1fezf_133", i = {
2
- root: o,
3
- indicator: n,
4
- icon: e,
5
- iconIndeterminate: c,
6
- iconChecked: t
1
+ const o = "_root_ebauq_5", t = {
2
+ root: o
7
3
  };
8
4
  export {
9
- i as default,
10
- e as icon,
11
- t as iconChecked,
12
- c as iconIndeterminate,
13
- n as indicator,
5
+ t as default,
14
6
  o as root
15
7
  };
16
8
  //# sourceMappingURL=fondue-components48.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fondue-components48.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
1
+ {"version":3,"file":"fondue-components48.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
@@ -1,35 +1,31 @@
1
1
  import { jsx as r } from "react/jsx-runtime";
2
- import { forwardRef as m } from "react";
3
- import { RgbaColorPicker as n } from "react-colorful";
4
- import t from "./fondue-components52.js";
5
- import { DEFAULT_COLOR as s } from "./fondue-components53.js";
6
- const i = ({
7
- currentColor: a = s,
8
- onColorChange: d = () => {
9
- },
10
- "data-test-id": o = "color-picker-input"
11
- }, p) => /* @__PURE__ */ r("div", { className: t.gradientInput, "data-test-id": o, ref: p, children: /* @__PURE__ */ r(
12
- n,
2
+ import { forwardRef as s } from "react";
3
+ import d from "./fondue-components125.js";
4
+ const n = ({ "data-test-id": t = "fondue-card-action", children: a }, o) => /* @__PURE__ */ r("div", { ref: o, className: d.action, "data-test-id": t, children: a });
5
+ n.displayName = "Card.Action";
6
+ const p = s(n), m = ({
7
+ "data-test-id": t = "fondue-card-action-button",
8
+ "aria-label": a,
9
+ onClick: o,
10
+ children: i,
11
+ ...e
12
+ }, c) => /* @__PURE__ */ r(
13
+ "button",
13
14
  {
14
- className: t.reactColorful,
15
- color: {
16
- r: a.red,
17
- g: a.green,
18
- b: a.blue,
19
- a: a.alpha === void 0 ? 1 : a.alpha
20
- },
21
- onChange: (e) => d({
22
- red: e.r,
23
- green: e.g,
24
- blue: e.b,
25
- alpha: e.a
26
- })
15
+ ref: c,
16
+ className: d.actionButton,
17
+ "data-test-id": t,
18
+ "aria-label": a,
19
+ type: "button",
20
+ onClick: o,
21
+ ...e,
22
+ children: i
27
23
  }
28
- ) });
29
- i.displayName = "ColorPicker.Gradient";
30
- const c = m(i);
24
+ );
25
+ m.displayName = "Card.ActionButton";
31
26
  export {
32
- i as ColorGradientInput,
33
- c as ForwardedRefColorGradientInput
27
+ n as CardAction,
28
+ m as CardActionButton,
29
+ p as ForwardedRefCardAction
34
30
  };
35
31
  //# sourceMappingURL=fondue-components49.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fondue-components49.js","sources":["../src/components/ColorPicker/ColorGradientInput.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { type ForwardedRef, forwardRef } from 'react';\nimport { RgbaColorPicker } from 'react-colorful';\n\nimport styles from './styles/customColorPicker.module.scss';\nimport { type RgbaColor } from './types';\nimport { DEFAULT_COLOR } from './utils';\n\ntype ColorGradientInputProps = {\n /**\n * @ignore\n * The active color in the color picker, passed down from the root component\n */\n currentColor?: RgbaColor;\n /**\n * @ignore\n * Event handler called when the color changes, passed down from the root component\n */\n onColorChange?: (color: RgbaColor) => void;\n /**\n * The test id of the color picker gradient input\n */\n 'data-test-id'?: string;\n};\n\nexport const ColorGradientInput = (\n {\n currentColor = DEFAULT_COLOR,\n onColorChange = () => {},\n 'data-test-id': dataTestId = 'color-picker-input',\n }: ColorGradientInputProps,\n forwardedRef: ForwardedRef<HTMLDivElement>,\n) => {\n return (\n <div className={styles.gradientInput} data-test-id={dataTestId} ref={forwardedRef}>\n <RgbaColorPicker\n className={styles.reactColorful}\n color={{\n r: currentColor.red,\n g: currentColor.green,\n b: currentColor.blue,\n a: currentColor.alpha === undefined ? 1 : currentColor.alpha,\n }}\n onChange={(color) =>\n onColorChange({\n red: color.r,\n green: color.g,\n blue: color.b,\n alpha: color.a,\n })\n }\n />\n </div>\n );\n};\nColorGradientInput.displayName = 'ColorPicker.Gradient';\n\nexport const ForwardedRefColorGradientInput = forwardRef<HTMLDivElement, ColorGradientInputProps>(ColorGradientInput);\n"],"names":["ColorGradientInput","currentColor","DEFAULT_COLOR","onColorChange","dataTestId","forwardedRef","jsx","styles","RgbaColorPicker","color","ForwardedRefColorGradientInput","forwardRef"],"mappings":";;;;;AA0BO,MAAMA,IAAqB,CAC9B;AAAA,EACI,cAAAC,IAAeC;AAAA,EACf,eAAAC,IAAgB,MAAM;AAAA,EAAC;AAAA,EACvB,gBAAgBC,IAAa;AACjC,GACAC,MAGI,gBAAAC,EAAC,SAAI,WAAWC,EAAO,eAAe,gBAAcH,GAAY,KAAKC,GACjE,UAAA,gBAAAC;AAAA,EAACE;AAAA,EAAA;AAAA,IACG,WAAWD,EAAO;AAAA,IAClB,OAAO;AAAA,MACH,GAAGN,EAAa;AAAA,MAChB,GAAGA,EAAa;AAAA,MAChB,GAAGA,EAAa;AAAA,MAChB,GAAGA,EAAa,UAAU,SAAY,IAAIA,EAAa;AAAA,IAAA;AAAA,IAE3D,UAAU,CAACQ,MACPN,EAAc;AAAA,MACV,KAAKM,EAAM;AAAA,MACX,OAAOA,EAAM;AAAA,MACb,MAAMA,EAAM;AAAA,MACZ,OAAOA,EAAM;AAAA,IAAA,CAChB;AAAA,EAAA;AAAA,GAGb;AAGRT,EAAmB,cAAc;AAE1B,MAAMU,IAAiCC,EAAoDX,CAAkB;"}
1
+ {"version":3,"file":"fondue-components49.js","sources":["../src/components/Card/CardAction.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { forwardRef, type ComponentProps, type ForwardedRef, type MouseEventHandler, type ReactNode } from 'react';\n\nimport styles from './styles/card.module.scss';\n\nexport type CardActionProps = {\n 'data-test-id'?: string;\n children?: ReactNode;\n};\n\nexport const CardAction = (\n { 'data-test-id': dataTestId = 'fondue-card-action', children }: CardActionProps,\n ref: ForwardedRef<HTMLDivElement>,\n) => {\n return (\n <div ref={ref} className={styles.action} data-test-id={dataTestId}>\n {children}\n </div>\n );\n};\nCardAction.displayName = 'Card.Action';\n\nexport const ForwardedRefCardAction = forwardRef<HTMLDivElement, CardActionProps>(CardAction);\n\nexport type CardActionButtonProps = {\n 'data-test-id'?: string;\n /**\n * Accessible label for the button.\n */\n 'aria-label'?: string;\n /**\n * Click callback for the button.\n */\n onClick?: MouseEventHandler<HTMLButtonElement>;\n children?: ReactNode;\n} & Omit<ComponentProps<'button'>, 'children' | 'ref' | 'onClick' | 'aria-label'>;\n\nexport const CardActionButton = (\n {\n 'data-test-id': dataTestId = 'fondue-card-action-button',\n 'aria-label': ariaLabel,\n onClick,\n children,\n ...rest\n }: CardActionButtonProps,\n ref: ForwardedRef<HTMLButtonElement>,\n) => {\n return (\n <button\n ref={ref}\n className={styles.actionButton}\n data-test-id={dataTestId}\n aria-label={ariaLabel}\n type=\"button\"\n onClick={onClick}\n {...rest}\n >\n {children}\n </button>\n );\n};\nCardActionButton.displayName = 'Card.ActionButton';\n"],"names":["CardAction","dataTestId","children","ref","jsx","styles","ForwardedRefCardAction","forwardRef","CardActionButton","ariaLabel","onClick","rest"],"mappings":";;;AAWO,MAAMA,IAAa,CACtB,EAAE,gBAAgBC,IAAa,sBAAsB,UAAAC,EAAA,GACrDC,MAGI,gBAAAC,EAAC,SAAI,KAAAD,GAAU,WAAWE,EAAO,QAAQ,gBAAcJ,GAClD,UAAAC,GACL;AAGRF,EAAW,cAAc;AAElB,MAAMM,IAAyBC,EAA4CP,CAAU,GAe/EQ,IAAmB,CAC5B;AAAA,EACI,gBAAgBP,IAAa;AAAA,EAC7B,cAAcQ;AAAA,EACd,SAAAC;AAAA,EACA,UAAAR;AAAA,EACA,GAAGS;AACP,GACAR,MAGI,gBAAAC;AAAA,EAAC;AAAA,EAAA;AAAA,IACG,KAAAD;AAAA,IACA,WAAWE,EAAO;AAAA,IAClB,gBAAcJ;AAAA,IACd,cAAYQ;AAAA,IACZ,MAAK;AAAA,IACL,SAAAC;AAAA,IACC,GAAGC;AAAA,IAEH,UAAAT;AAAA,EAAA;AAAA;AAIbM,EAAiB,cAAc;"}
@@ -1,7 +1,7 @@
1
1
  import { jsx as f } from "react/jsx-runtime";
2
2
  import { forwardRef as n } from "react";
3
- import { propsToCssVariables as x } from "./fondue-components45.js";
4
- import y from "./fondue-components46.js";
3
+ import { propsToCssVariables as x } from "./fondue-components46.js";
4
+ import y from "./fondue-components47.js";
5
5
  const c = n(
6
6
  ({
7
7
  as: a = "div",
@@ -1,57 +1,36 @@
1
- import { jsxs as t, jsx as s, Fragment as N } from "react/jsx-runtime";
2
- import { IconDroplet as I, IconCross as k, IconCaretDown as v } from "@frontify/fondue-icons";
3
- import { forwardRef as P } from "react";
4
- import { useTranslation as w } from "./fondue-components42.js";
5
- import { Button as y } from "./fondue-components6.js";
6
- import a from "./fondue-components119.js";
7
- import { getColorWithName as z, colorToCss as x } from "./fondue-components53.js";
8
- const c = ({
9
- id: m,
10
- currentColor: e,
11
- isOpen: d,
12
- disabled: o = !1,
13
- onClear: i,
14
- onClick: l,
15
- "data-test-id": n = "color-picker-input",
16
- ...r
17
- }, p) => {
18
- const { t: f } = w(), h = (e == null ? void 0 : e.name) ?? (e ? z(e, "RGBA").name : "");
19
- return /* @__PURE__ */ t("div", { id: m, className: a.root, ref: p, "data-test-id": n, children: [
20
- /* @__PURE__ */ t(
21
- "button",
22
- {
23
- className: a.button,
24
- ...r,
25
- disabled: o,
26
- onClick: l,
27
- type: "button",
28
- "data-color-input-select": !0,
29
- children: [
30
- (e == null ? void 0 : e.red) !== void 0 ? /* @__PURE__ */ s(
31
- "div",
32
- {
33
- "aria-hidden": !0,
34
- className: a.colorIndicator,
35
- style: { "--active-color": x(e) }
36
- }
37
- ) : /* @__PURE__ */ t(N, { children: [
38
- /* @__PURE__ */ s(I, { size: 16 }),
39
- /* @__PURE__ */ s("span", { children: f("ColorPicker_selectColor") })
40
- ] }),
41
- /* @__PURE__ */ s("span", { className: a.colorName, children: h })
42
- ]
43
- }
44
- ),
45
- /* @__PURE__ */ t("div", { className: a.actions, children: [
46
- i && /* @__PURE__ */ s(y, { onPress: i, disabled: o, size: "small", emphasis: "weak", aspect: "square", children: /* @__PURE__ */ s(k, { className: a.clearIcon, size: 16 }) }),
47
- /* @__PURE__ */ s("div", { className: a.caret, "data-state": d ? "open" : "closed", children: /* @__PURE__ */ s(v, { size: 16 }) })
48
- ] })
49
- ] });
50
- };
51
- c.displayName = "ColorPicker.Input";
52
- const F = P(c);
1
+ import { jsx as d, jsxs as s } from "react/jsx-runtime";
2
+ import { IconCheckMark as c } from "@frontify/fondue-icons";
3
+ import t from "./fondue-components125.js";
4
+ const o = ({ "data-test-id": a = "fondue-card-banner", size: e = "large", children: n }, r) => /* @__PURE__ */ s("div", { ref: r, className: t.banner, "data-test-id": a, "data-size": e, children: [
5
+ n,
6
+ /* @__PURE__ */ d(
7
+ "div",
8
+ {
9
+ className: t.selectionIndicator,
10
+ "data-test-id": "fondue-card-selection-indicator",
11
+ "aria-hidden": "true",
12
+ children: /* @__PURE__ */ d(c, { size: 16 })
13
+ }
14
+ )
15
+ ] });
16
+ o.displayName = "Card.Banner";
17
+ const m = ({ "data-test-id": a = "fondue-card-banner-image", src: e, alt: n = "", fit: r = "cover" }, i) => /* @__PURE__ */ d("img", { ref: i, className: t.bannerImage, "data-test-id": a, "data-fit": r, src: e, alt: n });
18
+ m.displayName = "Card.BannerImage";
19
+ const l = ({ "data-test-id": a = "fondue-card-banner-icon", variant: e = "default", children: n }, r) => /* @__PURE__ */ d(
20
+ "div",
21
+ {
22
+ ref: r,
23
+ className: t.bannerIcon,
24
+ "data-test-id": a,
25
+ "data-variant": e,
26
+ "aria-hidden": "true",
27
+ children: n
28
+ }
29
+ );
30
+ l.displayName = "Card.BannerIcon";
53
31
  export {
54
- c as ColorPickerInput,
55
- F as ForwardedRefColorPickerInput
32
+ o as CardBanner,
33
+ l as CardBannerIcon,
34
+ m as CardBannerImage
56
35
  };
57
36
  //# sourceMappingURL=fondue-components50.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fondue-components50.js","sources":["../src/components/ColorPicker/ColorPickerInput.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { IconCaretDown, IconCross, IconDroplet } from '@frontify/fondue-icons';\nimport { type CSSProperties, type ForwardedRef, forwardRef } from 'react';\n\nimport { useTranslation } from '#/hooks/useTranslation';\nimport { type CommonAriaAttrs } from '#/utilities/types';\n\nimport { Button } from '../Button/Button';\n\nimport styles from './styles/colorInput.module.scss';\nimport { type RgbaColor } from './types';\nimport { colorToCss, getColorWithName } from './utils';\n\ntype ColorPickerInputProps = {\n id?: string;\n /**\n * The active color in the color picker\n */\n currentColor?: RgbaColor;\n /**\n * The open state of the color picker used to determine arrow state\n */\n isOpen?: boolean;\n /**\n * Whether the color picker input is disabled\n */\n disabled?: boolean;\n /**\n * callback for clearing the color\n */\n onClear?: () => void;\n /**\n * Event handler called when the color picker input is clicked\n */\n onClick?: () => void;\n /**\n * The test id of the color picker input\n */\n 'data-test-id'?: string;\n} & CommonAriaAttrs;\n\nexport const ColorPickerInput = (\n {\n id,\n currentColor,\n isOpen,\n disabled = false,\n onClear,\n onClick,\n 'data-test-id': dataTestId = 'color-picker-input',\n ...props\n }: ColorPickerInputProps,\n forwardedRef: ForwardedRef<HTMLDivElement>,\n) => {\n const { t } = useTranslation();\n const colorName = currentColor?.name ?? (currentColor ? getColorWithName(currentColor, 'RGBA').name : '');\n return (\n <div id={id} className={styles.root} ref={forwardedRef} data-test-id={dataTestId}>\n <button\n className={styles.button}\n {...props}\n disabled={disabled}\n onClick={onClick}\n type=\"button\"\n data-color-input-select\n >\n {currentColor?.red !== undefined ? (\n <div\n aria-hidden\n className={styles.colorIndicator}\n style={{ '--active-color': colorToCss(currentColor) } as CSSProperties}\n />\n ) : (\n <>\n <IconDroplet size={16} />\n <span>{t('ColorPicker_selectColor')}</span>\n </>\n )}\n\n <span className={styles.colorName}>{colorName}</span>\n </button>\n <div className={styles.actions}>\n {onClear && (\n <Button onPress={onClear} disabled={disabled} size=\"small\" emphasis=\"weak\" aspect=\"square\">\n <IconCross className={styles.clearIcon} size={16} />\n </Button>\n )}\n <div className={styles.caret} data-state={isOpen ? 'open' : 'closed'}>\n <IconCaretDown size={16} />\n </div>\n </div>\n </div>\n );\n};\nColorPickerInput.displayName = 'ColorPicker.Input';\n\nexport const ForwardedRefColorPickerInput = forwardRef<HTMLDivElement, ColorPickerInputProps>(ColorPickerInput);\n"],"names":["ColorPickerInput","id","currentColor","isOpen","disabled","onClear","onClick","dataTestId","props","forwardedRef","t","useTranslation","colorName","getColorWithName","jsxs","styles","jsx","colorToCss","Fragment","IconDroplet","Button","IconCross","IconCaretDown","ForwardedRefColorPickerInput","forwardRef"],"mappings":";;;;;;;AA0CO,MAAMA,IAAmB,CAC5B;AAAA,EACI,IAAAC;AAAA,EACA,cAAAC;AAAA,EACA,QAAAC;AAAA,EACA,UAAAC,IAAW;AAAA,EACX,SAAAC;AAAA,EACA,SAAAC;AAAA,EACA,gBAAgBC,IAAa;AAAA,EAC7B,GAAGC;AACP,GACAC,MACC;AACD,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAA,GACRC,KAAYV,KAAA,gBAAAA,EAAc,UAASA,IAAeW,EAAiBX,GAAc,MAAM,EAAE,OAAO;AACtG,SACI,gBAAAY,EAAC,SAAI,IAAAb,GAAQ,WAAWc,EAAO,MAAM,KAAKN,GAAc,gBAAcF,GAClE,UAAA;AAAA,IAAA,gBAAAO;AAAA,MAAC;AAAA,MAAA;AAAA,QACG,WAAWC,EAAO;AAAA,QACjB,GAAGP;AAAA,QACJ,UAAAJ;AAAA,QACA,SAAAE;AAAA,QACA,MAAK;AAAA,QACL,2BAAuB;AAAA,QAEtB,UAAA;AAAA,WAAAJ,KAAA,gBAAAA,EAAc,SAAQ,SACnB,gBAAAc;AAAA,YAAC;AAAA,YAAA;AAAA,cACG,eAAW;AAAA,cACX,WAAWD,EAAO;AAAA,cAClB,OAAO,EAAE,kBAAkBE,EAAWf,CAAY,EAAA;AAAA,YAAE;AAAA,UAAA,IAGxD,gBAAAY,EAAAI,GAAA,EACI,UAAA;AAAA,YAAA,gBAAAF,EAACG,GAAA,EAAY,MAAM,GAAA,CAAI;AAAA,YACvB,gBAAAH,EAAC,QAAA,EAAM,UAAAN,EAAE,yBAAyB,EAAA,CAAE;AAAA,UAAA,GACxC;AAAA,UAGJ,gBAAAM,EAAC,QAAA,EAAK,WAAWD,EAAO,WAAY,UAAAH,EAAA,CAAU;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,IAElD,gBAAAE,EAAC,OAAA,EAAI,WAAWC,EAAO,SAClB,UAAA;AAAA,MAAAV,uBACIe,GAAA,EAAO,SAASf,GAAS,UAAAD,GAAoB,MAAK,SAAQ,UAAS,QAAO,QAAO,UAC9E,4BAACiB,GAAA,EAAU,WAAWN,EAAO,WAAW,MAAM,IAAI,GACtD;AAAA,MAEJ,gBAAAC,EAAC,OAAA,EAAI,WAAWD,EAAO,OAAO,cAAYZ,IAAS,SAAS,UACxD,UAAA,gBAAAa,EAACM,GAAA,EAAc,MAAM,IAAI,EAAA,CAC7B;AAAA,IAAA,EAAA,CACJ;AAAA,EAAA,GACJ;AAER;AACAtB,EAAiB,cAAc;AAExB,MAAMuB,IAA+BC,EAAkDxB,CAAgB;"}
1
+ {"version":3,"file":"fondue-components50.js","sources":["../src/components/Card/CardBanner.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { IconCheckMark } from '@frontify/fondue-icons';\nimport { type ForwardedRef, type ReactNode } from 'react';\n\nimport styles from './styles/card.module.scss';\n\nexport type CardBannerSize = 'small' | 'large';\nexport type CardBannerFit = 'cover' | 'contain';\n\nexport type CardBannerProps = {\n 'data-test-id'?: string;\n /**\n * The height variant of the banner.\n * @default 'large'\n */\n size?: CardBannerSize;\n children?: ReactNode;\n};\n\nexport const CardBanner = (\n { 'data-test-id': dataTestId = 'fondue-card-banner', size = 'large', children }: CardBannerProps,\n ref: ForwardedRef<HTMLDivElement>,\n) => {\n return (\n <div ref={ref} className={styles.banner} data-test-id={dataTestId} data-size={size}>\n {children}\n <div\n className={styles.selectionIndicator}\n data-test-id=\"fondue-card-selection-indicator\"\n aria-hidden=\"true\"\n >\n <IconCheckMark size={16} />\n </div>\n </div>\n );\n};\nCardBanner.displayName = 'Card.Banner';\n\nexport type CardBannerImageProps = {\n 'data-test-id'?: string;\n /**\n * The image source URL.\n */\n src: string;\n /**\n * Alternative text for the image.\n * @default ''\n */\n alt?: string;\n /**\n * How the image should fit within its container.\n * @default 'cover'\n */\n fit?: CardBannerFit;\n};\n\nexport const CardBannerImage = (\n { 'data-test-id': dataTestId = 'fondue-card-banner-image', src, alt = '', fit = 'cover' }: CardBannerImageProps,\n ref: ForwardedRef<HTMLImageElement>,\n) => {\n return (\n <img ref={ref} className={styles.bannerImage} data-test-id={dataTestId} data-fit={fit} src={src} alt={alt} />\n );\n};\nCardBannerImage.displayName = 'Card.BannerImage';\n\nexport type CardBannerIconVariant = 'default' | 'primary' | 'warning' | 'error' | 'success';\n\nexport type CardBannerIconProps = {\n 'data-test-id'?: string;\n /**\n * The color variant of the icon.\n * @default 'default'\n */\n variant?: CardBannerIconVariant;\n children?: ReactNode;\n};\n\nexport const CardBannerIcon = (\n { 'data-test-id': dataTestId = 'fondue-card-banner-icon', variant = 'default', children }: CardBannerIconProps,\n ref: ForwardedRef<HTMLDivElement>,\n) => {\n return (\n <div\n ref={ref}\n className={styles.bannerIcon}\n data-test-id={dataTestId}\n data-variant={variant}\n aria-hidden=\"true\"\n >\n {children}\n </div>\n );\n};\nCardBannerIcon.displayName = 'Card.BannerIcon';\n"],"names":["CardBanner","dataTestId","size","children","ref","jsxs","styles","jsx","IconCheckMark","CardBannerImage","src","alt","fit","CardBannerIcon","variant"],"mappings":";;;AAoBO,MAAMA,IAAa,CACtB,EAAE,gBAAgBC,IAAa,sBAAsB,MAAAC,IAAO,SAAS,UAAAC,EAAA,GACrEC,MAGI,gBAAAC,EAAC,SAAI,KAAAD,GAAU,WAAWE,EAAO,QAAQ,gBAAcL,GAAY,aAAWC,GACzE,UAAA;AAAA,EAAAC;AAAA,EACD,gBAAAI;AAAA,IAAC;AAAA,IAAA;AAAA,MACG,WAAWD,EAAO;AAAA,MAClB,gBAAa;AAAA,MACb,eAAY;AAAA,MAEZ,UAAA,gBAAAC,EAACC,GAAA,EAAc,MAAM,GAAA,CAAI;AAAA,IAAA;AAAA,EAAA;AAC7B,GACJ;AAGRR,EAAW,cAAc;AAoBlB,MAAMS,IAAkB,CAC3B,EAAE,gBAAgBR,IAAa,4BAA4B,KAAAS,GAAK,KAAAC,IAAM,IAAI,KAAAC,IAAM,QAAA,GAChFR,MAGI,gBAAAG,EAAC,OAAA,EAAI,KAAAH,GAAU,WAAWE,EAAO,aAAa,gBAAcL,GAAY,YAAUW,GAAK,KAAAF,GAAU,KAAAC,EAAA,CAAU;AAGnHF,EAAgB,cAAc;AAcvB,MAAMI,IAAiB,CAC1B,EAAE,gBAAgBZ,IAAa,2BAA2B,SAAAa,IAAU,WAAW,UAAAX,EAAA,GAC/EC,MAGI,gBAAAG;AAAA,EAAC;AAAA,EAAA;AAAA,IACG,KAAAH;AAAA,IACA,WAAWE,EAAO;AAAA,IAClB,gBAAcL;AAAA,IACd,gBAAca;AAAA,IACd,eAAY;AAAA,IAEX,UAAAX;AAAA,EAAA;AAAA;AAIbU,EAAe,cAAc;"}
@@ -1,134 +1,24 @@
1
- import { jsxs as n, jsx as e } from "react/jsx-runtime";
2
- import { forwardRef as I, useState as R, useEffect as x } from "react";
3
- import { useTranslation as S } from "./fondue-components42.js";
4
- import { Select as c } from "./fondue-components29.js";
5
- import { TextInput as r } from "./fondue-components37.js";
6
- import l from "./fondue-components52.js";
7
- import { rgbColorToHex as m, DEFAULT_COLOR as V, DEFAULT_FORMAT as y, isValidHexColor as h, hexColorToRgba as D, getLimitedColorChannelValue as s } from "./fondue-components53.js";
8
- const v = () => {
9
- }, f = ({
10
- currentColor: t = V,
11
- onColorChange: o = v,
12
- currentFormat: u = y,
13
- setCurrentFormat: g = v,
14
- "data-test-id": b = "color-picker-value-input"
15
- }, N) => {
16
- const { t: i } = S(), [p, d] = R(() => m(t));
17
- return x(() => {
18
- d(m(t));
19
- }, [t]), /* @__PURE__ */ n("div", { className: l.inputs, "data-test-id": b, ref: N, children: [
20
- /* @__PURE__ */ e("div", { className: l.colorFormatInput, children: /* @__PURE__ */ n(
21
- c,
22
- {
23
- "data-test-id": "color-picker-select-format",
24
- "aria-label": i("ColorPicker_selectFormat"),
25
- onSelect: (a) => {
26
- g(a);
27
- },
28
- value: u,
29
- children: [
30
- /* @__PURE__ */ e(c.Item, { value: "HEX", children: "HEX" }),
31
- /* @__PURE__ */ e(c.Item, { value: "RGBA", children: "RGBA" })
32
- ]
33
- }
34
- ) }),
35
- u === "HEX" ? /* @__PURE__ */ e(
36
- r.Root,
37
- {
38
- "data-test-id": "color-picker-value-input-hex",
39
- className: l.valueInput,
40
- type: "text",
41
- value: p,
42
- status: h(p) ? "neutral" : "error",
43
- onBlur: (a) => {
44
- h(a.target.value) && o({ ...D(a.target.value), alpha: t.alpha });
45
- },
46
- onChange: (a) => {
47
- const k = a.target.value.startsWith("#") ? a.target.value.slice(1) : a.target.value;
48
- d(k);
49
- },
50
- "aria-label": i("ColorPicker_hexValue"),
51
- children: /* @__PURE__ */ e(r.Slot, { name: "left", children: /* @__PURE__ */ e("span", { className: l.inputDecorator, children: "#" }) })
52
- }
53
- ) : /* @__PURE__ */ n("div", { className: l.colorChannelInputGroup, children: [
54
- /* @__PURE__ */ e(
55
- r.Root,
56
- {
57
- "data-test-id": "color-picker-value-input-red",
58
- className: l.valueInput,
59
- value: t.red,
60
- type: "number",
61
- onChange: (a) => {
62
- o({
63
- ...t,
64
- red: s(a.target.value)
65
- });
66
- },
67
- "aria-label": i("ColorPicker_redChannel"),
68
- children: /* @__PURE__ */ e(r.Slot, { name: "left", children: /* @__PURE__ */ e("span", { className: l.inputDecorator, children: "R" }) })
69
- }
70
- ),
71
- /* @__PURE__ */ e(
72
- r.Root,
73
- {
74
- "data-test-id": "color-picker-value-input-green",
75
- className: l.valueInput,
76
- value: t.green,
77
- type: "number",
78
- onChange: (a) => {
79
- o({
80
- ...t,
81
- green: s(a.target.value)
82
- });
83
- },
84
- "aria-label": i("ColorPicker_greenChannel"),
85
- children: /* @__PURE__ */ e(r.Slot, { name: "left", children: /* @__PURE__ */ e("span", { className: l.inputDecorator, children: "G" }) })
86
- }
87
- ),
88
- /* @__PURE__ */ e(
89
- r.Root,
90
- {
91
- "data-test-id": "color-picker-value-input-blue",
92
- className: l.valueInput,
93
- value: t.blue,
94
- type: "number",
95
- onChange: (a) => {
96
- o({
97
- ...t,
98
- blue: s(a.target.value)
99
- });
100
- },
101
- "aria-label": i("ColorPicker_blueChannel"),
102
- children: /* @__PURE__ */ e(r.Slot, { name: "left", children: /* @__PURE__ */ e("span", { className: l.inputDecorator, children: "B" }) })
103
- }
104
- )
105
- ] }),
106
- /* @__PURE__ */ e("div", { className: l.colorAlphaInput, children: /* @__PURE__ */ n(
107
- r.Root,
108
- {
109
- "data-test-id": "color-picker-value-input-alpha",
110
- className: l.valueInput,
111
- value: t.alpha === void 0 ? 100 : Math.trunc(t.alpha * 100).toString(),
112
- type: "number",
113
- onChange: (a) => {
114
- o({
115
- ...t,
116
- alpha: s(a.target.value, 0, 100) / 100
117
- });
118
- },
119
- "aria-label": i("ColorPicker_opacity"),
120
- children: [
121
- /* @__PURE__ */ e(r.Slot, { name: "left", children: /* @__PURE__ */ e("span", { className: l.inputDecorator, children: "A" }) }),
122
- /* @__PURE__ */ e(r.Slot, { name: "right", children: /* @__PURE__ */ e("span", { className: l.inputDecorator, children: "%" }) })
123
- ]
124
- }
125
- ) })
126
- ] });
1
+ import { jsx as i } from "react/jsx-runtime";
2
+ import { useCardContext as r } from "./fondue-components126.js";
3
+ import s from "./fondue-components125.js";
4
+ const n = ({ "data-test-id": a = "fondue-card-badges", children: t }, d) => /* @__PURE__ */ i("div", { ref: d, className: s.badges, "data-test-id": a, children: t });
5
+ n.displayName = "Card.Badges";
6
+ const m = ({ "data-test-id": a = "fondue-card-thumbnail-image", src: t, alt: d = "" }, e) => /* @__PURE__ */ i("img", { ref: e, className: s.thumbnailImage, "data-test-id": a, src: t, alt: d });
7
+ m.displayName = "Card.ThumbnailImage";
8
+ const o = ({ "data-test-id": a = "fondue-card-thumbnail-icon", children: t }, d) => /* @__PURE__ */ i("div", { ref: d, className: s.thumbnailIcon, "data-test-id": a, "aria-hidden": "true", children: t });
9
+ o.displayName = "Card.ThumbnailIcon";
10
+ const l = ({ "data-test-id": a = "fondue-card-title", children: t }, d) => {
11
+ const e = r();
12
+ return /* @__PURE__ */ i("div", { ref: d, id: e == null ? void 0 : e.titleId, className: s.title, "data-test-id": a, children: t });
127
13
  };
128
- f.displayName = "ColorPicker.Values";
129
- const F = I(f);
14
+ l.displayName = "Card.Title";
15
+ const c = ({ "data-test-id": a = "fondue-card-description", children: t }, d) => /* @__PURE__ */ i("div", { ref: d, className: s.description, "data-test-id": a, children: t });
16
+ c.displayName = "Card.Description";
130
17
  export {
131
- f as ColorValueInput,
132
- F as ForwardedRefColorValueInput
18
+ n as CardBadges,
19
+ c as CardDescription,
20
+ o as CardThumbnailIcon,
21
+ m as CardThumbnailImage,
22
+ l as CardTitle
133
23
  };
134
24
  //# sourceMappingURL=fondue-components51.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fondue-components51.js","sources":["../src/components/ColorPicker/ColorValueInput.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { type ForwardedRef, forwardRef, useEffect, useState } from 'react';\n\nimport { useTranslation } from '#/hooks/useTranslation';\n\nimport { Select } from '../Select';\nimport { TextInput } from '../TextInput/TextInput';\n\nimport styles from './styles/customColorPicker.module.scss';\nimport { type RgbaColor } from './types';\nimport {\n DEFAULT_COLOR,\n DEFAULT_FORMAT,\n getLimitedColorChannelValue,\n hexColorToRgba,\n isValidHexColor,\n rgbColorToHex,\n} from './utils';\n\ntype ColorFormat = 'HEX' | 'RGBA';\n\ntype ColorValueInputProps = {\n /**\n * @ignore\n * The active color in the color picker, passed down from the root component\n */\n currentColor?: RgbaColor;\n /**\n * @ignore\n * Event handler called when the color changes, passed down from the root component\n */\n onColorChange?: (color: RgbaColor) => void;\n /**\n * @ignore\n * The format to use for the color input, passed down from the root component\n */\n currentFormat?: ColorFormat;\n /**\n * @ignore\n * The format to use for the color input, passed down from the root component\n */\n setCurrentFormat?: (format: ColorFormat) => void;\n /**\n * The test id of the color picker value input\n */\n 'data-test-id'?: string;\n};\n\nconst nooperation = () => {};\n\nexport const ColorValueInput = (\n {\n currentColor = DEFAULT_COLOR,\n onColorChange = nooperation,\n currentFormat = DEFAULT_FORMAT,\n setCurrentFormat = nooperation,\n 'data-test-id': dataTestId = 'color-picker-value-input',\n }: ColorValueInputProps,\n forwardedRef: ForwardedRef<HTMLDivElement>,\n) => {\n const { t } = useTranslation();\n const [hexColorValue, setHexColorValue] = useState<string>(() => rgbColorToHex(currentColor));\n\n useEffect(() => {\n setHexColorValue(rgbColorToHex(currentColor));\n }, [currentColor]);\n\n return (\n <div className={styles.inputs} data-test-id={dataTestId} ref={forwardedRef}>\n <div className={styles.colorFormatInput}>\n <Select\n data-test-id=\"color-picker-select-format\"\n aria-label={t('ColorPicker_selectFormat')}\n onSelect={(selectedValue) => {\n setCurrentFormat(selectedValue as ColorFormat);\n }}\n value={currentFormat}\n >\n <Select.Item value=\"HEX\">HEX</Select.Item>\n <Select.Item value=\"RGBA\">RGBA</Select.Item>\n </Select>\n </div>\n {currentFormat === 'HEX' ? (\n <TextInput.Root\n data-test-id=\"color-picker-value-input-hex\"\n className={styles.valueInput}\n type=\"text\"\n value={hexColorValue}\n status={isValidHexColor(hexColorValue) ? 'neutral' : 'error'}\n onBlur={(event) => {\n if (isValidHexColor(event.target.value)) {\n onColorChange({ ...hexColorToRgba(event.target.value), alpha: currentColor.alpha });\n }\n }}\n onChange={(event) => {\n const inputValue = event.target.value.startsWith('#')\n ? event.target.value.slice(1)\n : event.target.value;\n\n setHexColorValue(inputValue);\n }}\n aria-label={t('ColorPicker_hexValue')}\n >\n <TextInput.Slot name=\"left\">\n <span className={styles.inputDecorator}>#</span>\n </TextInput.Slot>\n </TextInput.Root>\n ) : (\n <div className={styles.colorChannelInputGroup}>\n <TextInput.Root\n data-test-id=\"color-picker-value-input-red\"\n className={styles.valueInput}\n value={currentColor.red}\n type=\"number\"\n onChange={(event) => {\n onColorChange({\n ...currentColor,\n red: getLimitedColorChannelValue(event.target.value),\n });\n }}\n aria-label={t('ColorPicker_redChannel')}\n >\n <TextInput.Slot name=\"left\">\n <span className={styles.inputDecorator}>R</span>\n </TextInput.Slot>\n </TextInput.Root>\n <TextInput.Root\n data-test-id=\"color-picker-value-input-green\"\n className={styles.valueInput}\n value={currentColor.green}\n type=\"number\"\n onChange={(event) => {\n onColorChange({\n ...currentColor,\n green: getLimitedColorChannelValue(event.target.value),\n });\n }}\n aria-label={t('ColorPicker_greenChannel')}\n >\n <TextInput.Slot name=\"left\">\n <span className={styles.inputDecorator}>G</span>\n </TextInput.Slot>\n </TextInput.Root>\n <TextInput.Root\n data-test-id=\"color-picker-value-input-blue\"\n className={styles.valueInput}\n value={currentColor.blue}\n type=\"number\"\n onChange={(event) => {\n onColorChange({\n ...currentColor,\n blue: getLimitedColorChannelValue(event.target.value),\n });\n }}\n aria-label={t('ColorPicker_blueChannel')}\n >\n <TextInput.Slot name=\"left\">\n <span className={styles.inputDecorator}>B</span>\n </TextInput.Slot>\n </TextInput.Root>\n </div>\n )}\n <div className={styles.colorAlphaInput}>\n <TextInput.Root\n data-test-id=\"color-picker-value-input-alpha\"\n className={styles.valueInput}\n /* .toString() is a workaround for https://github.com/facebook/react/issues/9402 */\n value={currentColor.alpha === undefined ? 100 : Math.trunc(currentColor.alpha * 100).toString()}\n type=\"number\"\n onChange={(event) => {\n onColorChange({\n ...currentColor,\n alpha: getLimitedColorChannelValue(event.target.value, 0, 100) / 100,\n });\n }}\n aria-label={t('ColorPicker_opacity')}\n >\n <TextInput.Slot name=\"left\">\n <span className={styles.inputDecorator}>A</span>\n </TextInput.Slot>\n <TextInput.Slot name=\"right\">\n <span className={styles.inputDecorator}>%</span>\n </TextInput.Slot>\n </TextInput.Root>\n </div>\n </div>\n );\n};\nColorValueInput.displayName = 'ColorPicker.Values';\n\nexport const ForwardedRefColorValueInput = forwardRef<HTMLDivElement, ColorValueInputProps>(ColorValueInput);\n"],"names":["nooperation","ColorValueInput","currentColor","DEFAULT_COLOR","onColorChange","currentFormat","DEFAULT_FORMAT","setCurrentFormat","dataTestId","forwardedRef","t","useTranslation","hexColorValue","setHexColorValue","useState","rgbColorToHex","useEffect","jsxs","styles","jsx","Select","selectedValue","TextInput","isValidHexColor","event","hexColorToRgba","inputValue","getLimitedColorChannelValue","ForwardedRefColorValueInput","forwardRef"],"mappings":"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"}
1
+ {"version":3,"file":"fondue-components51.js","sources":["../src/components/Card/CardContent.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { type ForwardedRef, type ReactNode } from 'react';\n\nimport { useCardContext } from './CardContext';\nimport styles from './styles/card.module.scss';\n\nexport type CardBadgesProps = {\n 'data-test-id'?: string;\n children?: ReactNode;\n};\n\nexport const CardBadges = (\n { 'data-test-id': dataTestId = 'fondue-card-badges', children }: CardBadgesProps,\n ref: ForwardedRef<HTMLDivElement>,\n) => {\n return (\n <div ref={ref} className={styles.badges} data-test-id={dataTestId}>\n {children}\n </div>\n );\n};\nCardBadges.displayName = 'Card.Badges';\n\nexport type CardThumbnailImageProps = {\n 'data-test-id'?: string;\n /**\n * The thumbnail image source URL.\n */\n src: string;\n /**\n * Alternative text for the thumbnail image.\n * @default ''\n */\n alt?: string;\n};\n\nexport const CardThumbnailImage = (\n { 'data-test-id': dataTestId = 'fondue-card-thumbnail-image', src, alt = '' }: CardThumbnailImageProps,\n ref: ForwardedRef<HTMLImageElement>,\n) => {\n return <img ref={ref} className={styles.thumbnailImage} data-test-id={dataTestId} src={src} alt={alt} />;\n};\nCardThumbnailImage.displayName = 'Card.ThumbnailImage';\n\nexport type CardThumbnailIconProps = {\n 'data-test-id'?: string;\n children?: ReactNode;\n};\n\nexport const CardThumbnailIcon = (\n { 'data-test-id': dataTestId = 'fondue-card-thumbnail-icon', children }: CardThumbnailIconProps,\n ref: ForwardedRef<HTMLDivElement>,\n) => {\n return (\n <div ref={ref} className={styles.thumbnailIcon} data-test-id={dataTestId} aria-hidden=\"true\">\n {children}\n </div>\n );\n};\nCardThumbnailIcon.displayName = 'Card.ThumbnailIcon';\n\nexport type CardTitleProps = {\n 'data-test-id'?: string;\n children?: ReactNode;\n};\n\nexport const CardTitle = (\n { 'data-test-id': dataTestId = 'fondue-card-title', children }: CardTitleProps,\n ref: ForwardedRef<HTMLDivElement>,\n) => {\n const context = useCardContext();\n\n return (\n <div ref={ref} id={context?.titleId} className={styles.title} data-test-id={dataTestId}>\n {children}\n </div>\n );\n};\nCardTitle.displayName = 'Card.Title';\n\nexport type CardDescriptionProps = {\n 'data-test-id'?: string;\n children?: ReactNode;\n};\n\nexport const CardDescription = (\n { 'data-test-id': dataTestId = 'fondue-card-description', children }: CardDescriptionProps,\n ref: ForwardedRef<HTMLDivElement>,\n) => {\n return (\n <div ref={ref} className={styles.description} data-test-id={dataTestId}>\n {children}\n </div>\n );\n};\nCardDescription.displayName = 'Card.Description';\n"],"names":["CardBadges","dataTestId","children","ref","jsx","styles","CardThumbnailImage","src","alt","CardThumbnailIcon","CardTitle","context","useCardContext","CardDescription"],"mappings":";;;AAYO,MAAMA,IAAa,CACtB,EAAE,gBAAgBC,IAAa,sBAAsB,UAAAC,EAAA,GACrDC,MAGI,gBAAAC,EAAC,SAAI,KAAAD,GAAU,WAAWE,EAAO,QAAQ,gBAAcJ,GAClD,UAAAC,GACL;AAGRF,EAAW,cAAc;AAelB,MAAMM,IAAqB,CAC9B,EAAE,gBAAgBL,IAAa,+BAA+B,KAAAM,GAAK,KAAAC,IAAM,GAAA,GACzEL,MAEO,gBAAAC,EAAC,SAAI,KAAAD,GAAU,WAAWE,EAAO,gBAAgB,gBAAcJ,GAAY,KAAAM,GAAU,KAAAC,EAAA,CAAU;AAE1GF,EAAmB,cAAc;AAO1B,MAAMG,IAAoB,CAC7B,EAAE,gBAAgBR,IAAa,8BAA8B,UAAAC,EAAA,GAC7DC,MAGI,gBAAAC,EAAC,OAAA,EAAI,KAAAD,GAAU,WAAWE,EAAO,eAAe,gBAAcJ,GAAY,eAAY,QACjF,UAAAC,EAAA,CACL;AAGRO,EAAkB,cAAc;AAOzB,MAAMC,IAAY,CACrB,EAAE,gBAAgBT,IAAa,qBAAqB,UAAAC,EAAA,GACpDC,MACC;AACD,QAAMQ,IAAUC,EAAA;AAEhB,SACI,gBAAAR,EAAC,OAAA,EAAI,KAAAD,GAAU,IAAIQ,KAAA,gBAAAA,EAAS,SAAS,WAAWN,EAAO,OAAO,gBAAcJ,GACvE,UAAAC,EAAA,CACL;AAER;AACAQ,EAAU,cAAc;AAOjB,MAAMG,IAAkB,CAC3B,EAAE,gBAAgBZ,IAAa,2BAA2B,UAAAC,EAAA,GAC1DC,MAGI,gBAAAC,EAAC,SAAI,KAAAD,GAAU,WAAWE,EAAO,aAAa,gBAAcJ,GACvD,UAAAC,GACL;AAGRW,EAAgB,cAAc;"}
@@ -1,24 +1,89 @@
1
- const o = "_root_6n5w5_4", n = "_inputs_6n5w5_12", t = "_colorFormatInput_6n5w5_23", r = "_colorAlphaInput_6n5w5_24", u = "_colorChannelInputGroup_6n5w5_28", p = "_inputDecorator_6n5w5_39", _ = "_gradientInput_6n5w5_43", l = "_reactColorful_6n5w5_46", c = "_valueInput_6n5w5_50", a = {
2
- root: o,
3
- inputs: n,
4
- colorFormatInput: t,
5
- colorAlphaInput: r,
6
- colorChannelInputGroup: u,
7
- inputDecorator: p,
8
- gradientInput: _,
9
- reactColorful: l,
10
- valueInput: c
1
+ import { jsx as o, jsxs as E } from "react/jsx-runtime";
2
+ import { IconCheckMark as F } from "@frontify/fondue-icons";
3
+ import { useId as M, useCallback as O, useMemo as f, Children as V, isValidElement as _ } from "react";
4
+ import { useTranslation as z } from "./fondue-components43.js";
5
+ import { useFondueRouter as A } from "./fondue-components26.js";
6
+ import { ForwardedRefCardAction as B } from "./fondue-components49.js";
7
+ import { CardContext as P } from "./fondue-components126.js";
8
+ import r from "./fondue-components125.js";
9
+ const $ = ({
10
+ "data-test-id": h = "fondue-card",
11
+ "aria-label": l,
12
+ "aria-describedby": c,
13
+ selected: e = !1,
14
+ href: a,
15
+ onSelect: s,
16
+ onMouseEnter: k,
17
+ onMouseLeave: v,
18
+ children: m
19
+ }, x) => {
20
+ const { t: u } = z(), { navigate: b, useHref: I } = A(), N = a ? I(a) : "", i = !!s, g = !!a, w = !!(a && s), d = `${M()}-title`, R = O(
21
+ (t) => {
22
+ a && !t.metaKey && !t.ctrlKey && !t.shiftKey && t.button === 0 && (t.preventDefault(), b(a));
23
+ },
24
+ [a, b]
25
+ ), C = l ? void 0 : d, H = f(() => ({ titleId: d }), [d]), { actions: p, otherChildren: K } = f(() => {
26
+ const t = [], y = [];
27
+ return V.forEach(m, (n) => {
28
+ _(n) && n.type === B ? t.push(n) : y.push(n);
29
+ }), { actions: t, otherChildren: y };
30
+ }, [m]), T = !!a && !(i && e), j = i && e;
31
+ return /* @__PURE__ */ o(
32
+ "div",
33
+ {
34
+ ref: x,
35
+ className: r.root,
36
+ "data-test-id": h,
37
+ "data-interactive": g,
38
+ "data-selectable": i,
39
+ "data-selected": i && e,
40
+ onMouseEnter: k,
41
+ onMouseLeave: v,
42
+ children: /* @__PURE__ */ E(P.Provider, { value: H, children: [
43
+ T && /* @__PURE__ */ o(
44
+ "a",
45
+ {
46
+ className: r.overlay,
47
+ href: N,
48
+ onClick: R,
49
+ "aria-label": l,
50
+ "aria-labelledby": C,
51
+ "aria-describedby": c,
52
+ "aria-current": e ? "true" : void 0
53
+ }
54
+ ),
55
+ j && /* @__PURE__ */ o(
56
+ "button",
57
+ {
58
+ className: r.overlay,
59
+ type: "button",
60
+ tabIndex: 0,
61
+ "aria-label": l,
62
+ "aria-labelledby": C,
63
+ "aria-describedby": c,
64
+ "aria-pressed": e,
65
+ onClick: s
66
+ }
67
+ ),
68
+ w && /* @__PURE__ */ o(
69
+ "button",
70
+ {
71
+ className: r.checkbox,
72
+ type: "button",
73
+ "aria-label": u(e ? "Card_deselect" : "Card_select"),
74
+ "aria-pressed": e,
75
+ onClick: s,
76
+ children: /* @__PURE__ */ o(F, { size: 16 })
77
+ }
78
+ ),
79
+ K,
80
+ p.length > 0 && /* @__PURE__ */ o("div", { className: r.actions, "data-test-id": "fondue-card-actions", children: p })
81
+ ] })
82
+ }
83
+ );
11
84
  };
85
+ $.displayName = "Card.Root";
12
86
  export {
13
- r as colorAlphaInput,
14
- u as colorChannelInputGroup,
15
- t as colorFormatInput,
16
- a as default,
17
- _ as gradientInput,
18
- p as inputDecorator,
19
- n as inputs,
20
- l as reactColorful,
21
- o as root,
22
- c as valueInput
87
+ $ as CardRoot
23
88
  };
24
89
  //# sourceMappingURL=fondue-components52.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fondue-components52.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
1
+ {"version":3,"file":"fondue-components52.js","sources":["../src/components/Card/CardRoot.tsx"],"sourcesContent":["/* (c) Copyright Frontify Ltd., all rights reserved. */\n\nimport { IconCheckMark } from '@frontify/fondue-icons';\nimport {\n Children,\n type ForwardedRef,\n isValidElement,\n type MouseEvent,\n type MouseEventHandler,\n type ReactNode,\n useCallback,\n useId,\n useMemo,\n} from 'react';\n\nimport { useTranslation } from '#/hooks/useTranslation';\n\nimport { useFondueRouter } from '../RouterProvider/RouterProvider';\n\nimport { ForwardedRefCardAction } from './CardAction';\nimport { CardContext } from './CardContext';\nimport styles from './styles/card.module.scss';\n\ntype CardRootBaseProps = {\n 'data-test-id'?: string;\n /**\n * Called when the pointer enters the card.\n */\n onMouseEnter?: MouseEventHandler<HTMLDivElement>;\n /**\n * Called when the pointer leaves the card.\n */\n onMouseLeave?: MouseEventHandler<HTMLDivElement>;\n children?: ReactNode;\n};\n\ntype CardRootInteractiveProps = {\n /**\n * Navigation URL. The overlay renders as an anchor (`<a>`),\n * enabling native link behavior (middle-click, right-click \"Open in new tab\", SEO).\n *\n * When the card is not selected, clicking the surface navigates.\n * When the card is selected and `onSelect` is provided, clicking the\n * surface fires `onSelect` instead (e.g. to deselect).\n */\n href: string;\n /**\n * Accessible label for the card's clickable overlay.\n */\n 'aria-label'?: string;\n /**\n * ID of the element that describes the card (e.g. a subtitle element).\n */\n 'aria-describedby'?: string;\n};\n\nexport type CardRootProps = CardRootBaseProps &\n (\n | (CardRootInteractiveProps & {\n /**\n * Selection callback for the card's checkbox.\n * Also fires on the card surface when the card is selected.\n */\n onSelect: MouseEventHandler<HTMLElement>;\n /**\n * Whether the card is in a selected state.\n * @default false\n */\n selected?: boolean;\n })\n | (CardRootInteractiveProps & {\n onSelect?: never;\n selected?: never;\n })\n | {\n href?: never;\n onSelect?: never;\n selected?: never;\n 'aria-label'?: never;\n 'aria-describedby'?: never;\n }\n );\n\nexport const CardRoot = (\n {\n 'data-test-id': dataTestId = 'fondue-card',\n 'aria-label': ariaLabel,\n 'aria-describedby': ariaDescribedby,\n selected = false,\n href,\n onSelect,\n onMouseEnter,\n onMouseLeave,\n children,\n }: CardRootProps,\n ref: ForwardedRef<HTMLDivElement>,\n) => {\n const { t } = useTranslation();\n const { navigate, useHref: resolveHref } = useFondueRouter();\n const resolvedHref = href ? resolveHref(href) : '';\n\n const isSelectable = !!onSelect;\n const isClickable = !!href;\n const showCheckbox = !!(href && onSelect);\n const generatedTitleId = useId();\n const titleId = `${generatedTitleId}-title`;\n\n const handleLinkClick = useCallback(\n (event: MouseEvent<HTMLAnchorElement>) => {\n if (href && !event.metaKey && !event.ctrlKey && !event.shiftKey && event.button === 0) {\n event.preventDefault();\n navigate(href);\n }\n },\n [href, navigate],\n );\n\n const labelledby = ariaLabel ? undefined : titleId;\n const contextValue = useMemo(() => ({ titleId }), [titleId]);\n\n const { actions, otherChildren } = useMemo(() => {\n const actions: ReactNode[] = [];\n const otherChildren: ReactNode[] = [];\n\n Children.forEach(children, (child) => {\n if (isValidElement(child) && child.type === ForwardedRefCardAction) {\n actions.push(child);\n } else {\n otherChildren.push(child);\n }\n });\n\n return { actions, otherChildren };\n }, [children]);\n\n const showLinkOverlay = !!href && !(isSelectable && selected);\n const showButtonOverlay = isSelectable && selected;\n\n return (\n <div\n ref={ref}\n className={styles.root}\n data-test-id={dataTestId}\n data-interactive={isClickable}\n data-selectable={isSelectable}\n data-selected={isSelectable && selected}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n >\n <CardContext.Provider value={contextValue}>\n {showLinkOverlay && (\n <a\n className={styles.overlay}\n href={resolvedHref}\n onClick={handleLinkClick}\n aria-label={ariaLabel}\n aria-labelledby={labelledby}\n aria-describedby={ariaDescribedby}\n aria-current={selected ? 'true' : undefined}\n />\n )}\n {showButtonOverlay && (\n <button\n className={styles.overlay}\n type=\"button\"\n tabIndex={0}\n aria-label={ariaLabel}\n aria-labelledby={labelledby}\n aria-describedby={ariaDescribedby}\n aria-pressed={selected}\n onClick={onSelect}\n />\n )}\n {showCheckbox && (\n <button\n className={styles.checkbox}\n type=\"button\"\n aria-label={selected ? t('Card_deselect') : t('Card_select')}\n aria-pressed={selected}\n onClick={onSelect}\n >\n <IconCheckMark size={16} />\n </button>\n )}\n {otherChildren}\n {actions.length > 0 && (\n <div className={styles.actions} data-test-id=\"fondue-card-actions\">\n {actions}\n </div>\n )}\n </CardContext.Provider>\n </div>\n );\n};\nCardRoot.displayName = 'Card.Root';\n"],"names":["CardRoot","dataTestId","ariaLabel","ariaDescribedby","selected","href","onSelect","onMouseEnter","onMouseLeave","children","ref","t","useTranslation","navigate","resolveHref","useFondueRouter","resolvedHref","isSelectable","isClickable","showCheckbox","titleId","useId","handleLinkClick","useCallback","event","labelledby","contextValue","useMemo","actions","otherChildren","Children","child","isValidElement","ForwardedRefCardAction","showLinkOverlay","showButtonOverlay","jsx","styles","jsxs","CardContext","IconCheckMark"],"mappings":"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"}