@clickhouse/click-ui 0.10.0-rc2 → 0.11.0-rc1

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 (220) hide show
  1. package/dist/cjs/click-ui.css +67 -10
  2. package/dist/cjs/components/Assets/Flags/Austria.cjs +47 -0
  3. package/dist/cjs/components/Assets/Flags/Austria.cjs.map +1 -0
  4. package/dist/cjs/components/Assets/Flags/Bahrain.cjs +47 -0
  5. package/dist/cjs/components/Assets/Flags/Bahrain.cjs.map +1 -0
  6. package/dist/cjs/components/Assets/Flags/Belgium.cjs +62 -0
  7. package/dist/cjs/components/Assets/Flags/Belgium.cjs.map +1 -0
  8. package/dist/cjs/components/Assets/Flags/Canada.cjs +13 -21
  9. package/dist/cjs/components/Assets/Flags/Canada.cjs.map +1 -1
  10. package/dist/cjs/components/Assets/Flags/Chile.cjs +92 -0
  11. package/dist/cjs/components/Assets/Flags/Chile.cjs.map +1 -0
  12. package/dist/cjs/components/Assets/Flags/China.cjs +47 -0
  13. package/dist/cjs/components/Assets/Flags/China.cjs.map +1 -0
  14. package/dist/cjs/components/Assets/Flags/Denmark.cjs +54 -0
  15. package/dist/cjs/components/Assets/Flags/Denmark.cjs.map +1 -0
  16. package/dist/cjs/components/Assets/Flags/Finland.cjs +54 -0
  17. package/dist/cjs/components/Assets/Flags/Finland.cjs.map +1 -0
  18. package/dist/cjs/components/Assets/Flags/France.cjs +26 -17
  19. package/dist/cjs/components/Assets/Flags/France.cjs.map +1 -1
  20. package/dist/cjs/components/Assets/Flags/Greece.cjs +128 -0
  21. package/dist/cjs/components/Assets/Flags/Greece.cjs.map +1 -0
  22. package/dist/cjs/components/Assets/Flags/Indonesia.cjs +14 -14
  23. package/dist/cjs/components/Assets/Flags/Indonesia.cjs.map +1 -1
  24. package/dist/cjs/components/Assets/Flags/Ireland.cjs +10 -10
  25. package/dist/cjs/components/Assets/Flags/Ireland.cjs.map +1 -1
  26. package/dist/cjs/components/Assets/Flags/Italy.cjs +63 -0
  27. package/dist/cjs/components/Assets/Flags/Italy.cjs.map +1 -0
  28. package/dist/cjs/components/Assets/Flags/Malaysia.cjs +2 -2
  29. package/dist/cjs/components/Assets/Flags/Malaysia.cjs.map +1 -1
  30. package/dist/cjs/components/Assets/Flags/Mexico.cjs +8 -8
  31. package/dist/cjs/components/Assets/Flags/Mexico.cjs.map +1 -1
  32. package/dist/cjs/components/Assets/Flags/New-Zealand.cjs +553 -0
  33. package/dist/cjs/components/Assets/Flags/New-Zealand.cjs.map +1 -0
  34. package/dist/cjs/components/Assets/Flags/Norway.cjs +68 -0
  35. package/dist/cjs/components/Assets/Flags/Norway.cjs.map +1 -0
  36. package/dist/cjs/components/Assets/Flags/Poland.cjs +55 -0
  37. package/dist/cjs/components/Assets/Flags/Poland.cjs.map +1 -0
  38. package/dist/cjs/components/Assets/Flags/Qatar.cjs +47 -0
  39. package/dist/cjs/components/Assets/Flags/Qatar.cjs.map +1 -0
  40. package/dist/cjs/components/Assets/Flags/Saudi-Arabia.cjs +176 -0
  41. package/dist/cjs/components/Assets/Flags/Saudi-Arabia.cjs.map +1 -0
  42. package/dist/cjs/components/Assets/Flags/Singapore.cjs +12 -12
  43. package/dist/cjs/components/Assets/Flags/Singapore.cjs.map +1 -1
  44. package/dist/cjs/components/Assets/Flags/Spain.cjs +4447 -0
  45. package/dist/cjs/components/Assets/Flags/Spain.cjs.map +1 -0
  46. package/dist/cjs/components/Assets/Flags/Sweden.cjs +11 -11
  47. package/dist/cjs/components/Assets/Flags/Sweden.cjs.map +1 -1
  48. package/dist/cjs/components/Assets/Flags/Switzerland.cjs +30 -21
  49. package/dist/cjs/components/Assets/Flags/Switzerland.cjs.map +1 -1
  50. package/dist/cjs/components/Assets/Flags/Taiwan.cjs +5 -5
  51. package/dist/cjs/components/Assets/Flags/Taiwan.cjs.map +1 -1
  52. package/dist/cjs/components/Assets/Flags/Thailand.cjs +62 -0
  53. package/dist/cjs/components/Assets/Flags/Thailand.cjs.map +1 -0
  54. package/dist/cjs/components/Assets/Flags/United-Arab-Emirates.cjs +20 -20
  55. package/dist/cjs/components/Assets/Flags/United-Arab-Emirates.cjs.map +1 -1
  56. package/dist/cjs/components/Assets/Flags/United-States.cjs +2 -2
  57. package/dist/cjs/components/Assets/Flags/United-States.cjs.map +1 -1
  58. package/dist/cjs/components/Assets/Flags/system/FlagsDark.cjs +32 -0
  59. package/dist/cjs/components/Assets/Flags/system/FlagsDark.cjs.map +1 -1
  60. package/dist/cjs/components/Assets/Flags/system/FlagsLight.cjs +32 -0
  61. package/dist/cjs/components/Assets/Flags/system/FlagsLight.cjs.map +1 -1
  62. package/dist/cjs/components/CodeBlock/CodeBlock.css +35 -2
  63. package/dist/cjs/components/CodeBlock/index.cjs +27 -22
  64. package/dist/cjs/components/CodeBlock/index.cjs.map +1 -1
  65. package/dist/cjs/components/DateDetails/index.cjs +8 -5
  66. package/dist/cjs/components/DateDetails/index.cjs.map +1 -1
  67. package/dist/cjs/components/Dropdown/index.cjs +4 -1
  68. package/dist/cjs/components/Dropdown/index.cjs.map +1 -1
  69. package/dist/cjs/components/EllipsisContent/index.cjs +3 -2
  70. package/dist/cjs/components/EllipsisContent/index.cjs.map +1 -1
  71. package/dist/cjs/components/IconButton/IconButton.css +5 -0
  72. package/dist/cjs/components/IconButton/index.cjs +12 -2
  73. package/dist/cjs/components/IconButton/index.cjs.map +1 -1
  74. package/dist/cjs/components/IconWrapper/index.cjs +6 -5
  75. package/dist/cjs/components/IconWrapper/index.cjs.map +1 -1
  76. package/dist/cjs/components/Link/Link.css +0 -1
  77. package/dist/cjs/components/Link/index.cjs.map +1 -1
  78. package/dist/cjs/components/Pagination/index.cjs +3 -3
  79. package/dist/cjs/components/Pagination/index.cjs.map +1 -1
  80. package/dist/cjs/components/Popover/Popover.css +7 -6
  81. package/dist/cjs/components/Popover/index.cjs +12 -10
  82. package/dist/cjs/components/Popover/index.cjs.map +1 -1
  83. package/dist/cjs/components/ProgressBar/index.cjs +6 -3
  84. package/dist/cjs/components/ProgressBar/index.cjs.map +1 -1
  85. package/dist/cjs/components/Text/Text.css +20 -0
  86. package/dist/cjs/components/Text/Text.module.css.cjs +8 -0
  87. package/dist/cjs/components/Text/Text.module.css.cjs.map +1 -1
  88. package/dist/cjs/components/Text/index.cjs +11 -1
  89. package/dist/cjs/components/Text/index.cjs.map +1 -1
  90. package/dist/cjs/components/Toast/index.cjs +7 -1
  91. package/dist/cjs/components/Toast/index.cjs.map +1 -1
  92. package/dist/esm/click-ui.css +67 -10
  93. package/dist/esm/components/Assets/Flags/Austria.js +43 -0
  94. package/dist/esm/components/Assets/Flags/Austria.js.map +1 -0
  95. package/dist/esm/components/Assets/Flags/Bahrain.js +43 -0
  96. package/dist/esm/components/Assets/Flags/Bahrain.js.map +1 -0
  97. package/dist/esm/components/Assets/Flags/Belgium.js +58 -0
  98. package/dist/esm/components/Assets/Flags/Belgium.js.map +1 -0
  99. package/dist/esm/components/Assets/Flags/Canada.js +13 -21
  100. package/dist/esm/components/Assets/Flags/Canada.js.map +1 -1
  101. package/dist/esm/components/Assets/Flags/Chile.js +88 -0
  102. package/dist/esm/components/Assets/Flags/Chile.js.map +1 -0
  103. package/dist/esm/components/Assets/Flags/China.js +43 -0
  104. package/dist/esm/components/Assets/Flags/China.js.map +1 -0
  105. package/dist/esm/components/Assets/Flags/Denmark.js +50 -0
  106. package/dist/esm/components/Assets/Flags/Denmark.js.map +1 -0
  107. package/dist/esm/components/Assets/Flags/Finland.js +50 -0
  108. package/dist/esm/components/Assets/Flags/Finland.js.map +1 -0
  109. package/dist/esm/components/Assets/Flags/France.js +26 -17
  110. package/dist/esm/components/Assets/Flags/France.js.map +1 -1
  111. package/dist/esm/components/Assets/Flags/Greece.js +124 -0
  112. package/dist/esm/components/Assets/Flags/Greece.js.map +1 -0
  113. package/dist/esm/components/Assets/Flags/Indonesia.js +14 -14
  114. package/dist/esm/components/Assets/Flags/Indonesia.js.map +1 -1
  115. package/dist/esm/components/Assets/Flags/Ireland.js +10 -10
  116. package/dist/esm/components/Assets/Flags/Ireland.js.map +1 -1
  117. package/dist/esm/components/Assets/Flags/Italy.js +59 -0
  118. package/dist/esm/components/Assets/Flags/Italy.js.map +1 -0
  119. package/dist/esm/components/Assets/Flags/Malaysia.js +2 -2
  120. package/dist/esm/components/Assets/Flags/Malaysia.js.map +1 -1
  121. package/dist/esm/components/Assets/Flags/Mexico.js +8 -8
  122. package/dist/esm/components/Assets/Flags/Mexico.js.map +1 -1
  123. package/dist/esm/components/Assets/Flags/New-Zealand.js +549 -0
  124. package/dist/esm/components/Assets/Flags/New-Zealand.js.map +1 -0
  125. package/dist/esm/components/Assets/Flags/Norway.js +64 -0
  126. package/dist/esm/components/Assets/Flags/Norway.js.map +1 -0
  127. package/dist/esm/components/Assets/Flags/Poland.js +51 -0
  128. package/dist/esm/components/Assets/Flags/Poland.js.map +1 -0
  129. package/dist/esm/components/Assets/Flags/Qatar.js +43 -0
  130. package/dist/esm/components/Assets/Flags/Qatar.js.map +1 -0
  131. package/dist/esm/components/Assets/Flags/Saudi-Arabia.js +172 -0
  132. package/dist/esm/components/Assets/Flags/Saudi-Arabia.js.map +1 -0
  133. package/dist/esm/components/Assets/Flags/Singapore.js +12 -12
  134. package/dist/esm/components/Assets/Flags/Singapore.js.map +1 -1
  135. package/dist/esm/components/Assets/Flags/Spain.js +4443 -0
  136. package/dist/esm/components/Assets/Flags/Spain.js.map +1 -0
  137. package/dist/esm/components/Assets/Flags/Sweden.js +11 -11
  138. package/dist/esm/components/Assets/Flags/Sweden.js.map +1 -1
  139. package/dist/esm/components/Assets/Flags/Switzerland.js +30 -21
  140. package/dist/esm/components/Assets/Flags/Switzerland.js.map +1 -1
  141. package/dist/esm/components/Assets/Flags/Taiwan.js +5 -5
  142. package/dist/esm/components/Assets/Flags/Taiwan.js.map +1 -1
  143. package/dist/esm/components/Assets/Flags/Thailand.js +58 -0
  144. package/dist/esm/components/Assets/Flags/Thailand.js.map +1 -0
  145. package/dist/esm/components/Assets/Flags/United-Arab-Emirates.js +20 -20
  146. package/dist/esm/components/Assets/Flags/United-Arab-Emirates.js.map +1 -1
  147. package/dist/esm/components/Assets/Flags/United-States.js +2 -2
  148. package/dist/esm/components/Assets/Flags/United-States.js.map +1 -1
  149. package/dist/esm/components/Assets/Flags/system/FlagsDark.js +34 -2
  150. package/dist/esm/components/Assets/Flags/system/FlagsDark.js.map +1 -1
  151. package/dist/esm/components/Assets/Flags/system/FlagsLight.js +34 -2
  152. package/dist/esm/components/Assets/Flags/system/FlagsLight.js.map +1 -1
  153. package/dist/esm/components/CodeBlock/CodeBlock.css +35 -2
  154. package/dist/esm/components/CodeBlock/index.js +27 -22
  155. package/dist/esm/components/CodeBlock/index.js.map +1 -1
  156. package/dist/esm/components/DateDetails/index.js +8 -5
  157. package/dist/esm/components/DateDetails/index.js.map +1 -1
  158. package/dist/esm/components/Dropdown/index.js +4 -1
  159. package/dist/esm/components/Dropdown/index.js.map +1 -1
  160. package/dist/esm/components/EllipsisContent/index.js +3 -2
  161. package/dist/esm/components/EllipsisContent/index.js.map +1 -1
  162. package/dist/esm/components/IconButton/IconButton.css +5 -0
  163. package/dist/esm/components/IconButton/index.js +12 -2
  164. package/dist/esm/components/IconButton/index.js.map +1 -1
  165. package/dist/esm/components/IconWrapper/index.js +6 -5
  166. package/dist/esm/components/IconWrapper/index.js.map +1 -1
  167. package/dist/esm/components/Link/Link.css +0 -1
  168. package/dist/esm/components/Link/index.js.map +1 -1
  169. package/dist/esm/components/Pagination/index.js +3 -3
  170. package/dist/esm/components/Pagination/index.js.map +1 -1
  171. package/dist/esm/components/Popover/Popover.css +7 -6
  172. package/dist/esm/components/Popover/index.js +12 -10
  173. package/dist/esm/components/Popover/index.js.map +1 -1
  174. package/dist/esm/components/ProgressBar/index.js +6 -3
  175. package/dist/esm/components/ProgressBar/index.js.map +1 -1
  176. package/dist/esm/components/Text/Text.css +20 -0
  177. package/dist/esm/components/Text/Text.module.css.js +7 -1
  178. package/dist/esm/components/Text/Text.module.css.js.map +1 -1
  179. package/dist/esm/components/Text/index.js +11 -1
  180. package/dist/esm/components/Text/index.js.map +1 -1
  181. package/dist/esm/components/Toast/index.js +7 -1
  182. package/dist/esm/components/Toast/index.js.map +1 -1
  183. package/dist/types/components/Assets/Flags/Austria.d.ts +3 -0
  184. package/dist/types/components/Assets/Flags/Bahrain.d.ts +3 -0
  185. package/dist/types/components/Assets/Flags/Belgium.d.ts +3 -0
  186. package/dist/types/components/Assets/Flags/Canada.d.ts +1 -2
  187. package/dist/types/components/Assets/Flags/Chile.d.ts +3 -0
  188. package/dist/types/components/Assets/Flags/China.d.ts +3 -0
  189. package/dist/types/components/Assets/Flags/Denmark.d.ts +3 -0
  190. package/dist/types/components/Assets/Flags/Finland.d.ts +3 -0
  191. package/dist/types/components/Assets/Flags/France.d.ts +1 -2
  192. package/dist/types/components/Assets/Flags/Greece.d.ts +3 -0
  193. package/dist/types/components/Assets/Flags/Indonesia.d.ts +1 -2
  194. package/dist/types/components/Assets/Flags/Ireland.d.ts +1 -2
  195. package/dist/types/components/Assets/Flags/Italy.d.ts +3 -0
  196. package/dist/types/components/Assets/Flags/New-Zealand.d.ts +3 -0
  197. package/dist/types/components/Assets/Flags/Norway.d.ts +3 -0
  198. package/dist/types/components/Assets/Flags/Poland.d.ts +3 -0
  199. package/dist/types/components/Assets/Flags/Qatar.d.ts +3 -0
  200. package/dist/types/components/Assets/Flags/Saudi-Arabia.d.ts +3 -0
  201. package/dist/types/components/Assets/Flags/Singapore.d.ts +1 -2
  202. package/dist/types/components/Assets/Flags/Spain.d.ts +3 -0
  203. package/dist/types/components/Assets/Flags/Sweden.d.ts +1 -2
  204. package/dist/types/components/Assets/Flags/Switzerland.d.ts +1 -2
  205. package/dist/types/components/Assets/Flags/Thailand.d.ts +3 -0
  206. package/dist/types/components/Assets/Flags/United-Arab-Emirates.d.ts +2 -3
  207. package/dist/types/components/Assets/Flags/system/types.d.ts +1 -1
  208. package/dist/types/components/CodeBlock/CodeBlock.d.ts +1 -1
  209. package/dist/types/components/CodeBlock/CodeBlock.types.d.ts +8 -0
  210. package/dist/types/components/Dropdown/Dropdown.d.ts +13 -16
  211. package/dist/types/components/Dropdown/Dropdown.types.d.ts +10 -0
  212. package/dist/types/components/EllipsisContent/EllipsisContent.d.ts +1 -3
  213. package/dist/types/components/EllipsisContent/EllipsisContent.types.d.ts +6 -0
  214. package/dist/types/components/IconWrapper/IconWrapper.d.ts +1 -1
  215. package/dist/types/components/IconWrapper/IconWrapper.types.d.ts +3 -0
  216. package/dist/types/components/ProgressBar/ProgressBar.d.ts +1 -1
  217. package/dist/types/components/Text/Text.d.ts +3 -0
  218. package/dist/types/components/Tooltip/index.d.ts +1 -1
  219. package/dist/types/index.d.ts +3 -1
  220. package/package.json +17 -19
@@ -3,54 +3,86 @@
3
3
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
4
4
 
5
5
  const Australia = require('../Australia.cjs');
6
+ const Austria = require('../Austria.cjs');
7
+ const Bahrain = require('../Bahrain.cjs');
8
+ const Belgium = require('../Belgium.cjs');
6
9
  const Brazil = require('../Brazil.cjs');
7
10
  const Canada = require('../Canada.cjs');
11
+ const Chile = require('../Chile.cjs');
12
+ const China = require('../China.cjs');
13
+ const Denmark = require('../Denmark.cjs');
8
14
  const EuropeanUnion = require('../European-Union.cjs');
15
+ const Finland = require('../Finland.cjs');
9
16
  const France = require('../France.cjs');
10
17
  const Germany = require('../Germany.cjs');
11
18
  const GreatBritain = require('../Great-Britain.cjs');
19
+ const Greece = require('../Greece.cjs');
12
20
  const HongKong = require('../Hong-Kong.cjs');
13
21
  const India = require('../India.cjs');
14
22
  const Indonesia = require('../Indonesia.cjs');
15
23
  const Ireland = require('../Ireland.cjs');
16
24
  const Israel = require('../Israel.cjs');
25
+ const Italy = require('../Italy.cjs');
17
26
  const Japan = require('../Japan.cjs');
18
27
  const Malaysia = require('../Malaysia.cjs');
19
28
  const Mexico = require('../Mexico.cjs');
20
29
  const Netherlands = require('../Netherlands.cjs');
30
+ const NewZealand = require('../New-Zealand.cjs');
31
+ const Norway = require('../Norway.cjs');
32
+ const Poland = require('../Poland.cjs');
33
+ const Qatar = require('../Qatar.cjs');
34
+ const SaudiArabia = require('../Saudi-Arabia.cjs');
21
35
  const Singapore = require('../Singapore.cjs');
22
36
  const SouthAfrica = require('../South-Africa.cjs');
23
37
  const SouthKorea = require('../South-Korea.cjs');
38
+ const Spain = require('../Spain.cjs');
24
39
  const Sweden = require('../Sweden.cjs');
25
40
  const Switzerland = require('../Switzerland.cjs');
26
41
  const Taiwan = require('../Taiwan.cjs');
42
+ const Thailand = require('../Thailand.cjs');
27
43
  const UnitedArabEmirates = require('../United-Arab-Emirates.cjs');
28
44
  const UnitedKingdom = require('../United-Kingdom.cjs');
29
45
  const UnitedStates = require('../United-States.cjs');
30
46
 
31
47
  const FlagsLight = {
32
48
  australia: Australia.default,
49
+ austria: Austria.default,
50
+ bahrain: Bahrain.default,
51
+ belgium: Belgium.default,
33
52
  brazil: Brazil.default,
34
53
  canada: Canada.default,
54
+ chile: Chile.default,
55
+ china: China.default,
56
+ denmark: Denmark.default,
35
57
  "european-union": EuropeanUnion.default,
58
+ finland: Finland.default,
36
59
  france: France.default,
37
60
  germany: Germany.default,
38
61
  "great-britain": GreatBritain.default,
62
+ greece: Greece.default,
39
63
  "hong-kong": HongKong.default,
40
64
  india: India.default,
41
65
  indonesia: Indonesia.default,
42
66
  ireland: Ireland.default,
43
67
  israel: Israel.default,
68
+ italy: Italy.default,
44
69
  japan: Japan.default,
45
70
  malaysia: Malaysia.default,
46
71
  mexico: Mexico.default,
47
72
  netherlands: Netherlands.default,
73
+ "new-zealand": NewZealand.default,
74
+ norway: Norway.default,
75
+ poland: Poland.default,
76
+ qatar: Qatar.default,
77
+ "saudi-arabia": SaudiArabia.default,
48
78
  singapore: Singapore.default,
49
79
  "south-africa": SouthAfrica.default,
50
80
  "south-korea": SouthKorea.default,
81
+ spain: Spain.default,
51
82
  sweden: Sweden.default,
52
83
  switzerland: Switzerland.default,
53
84
  taiwan: Taiwan.default,
85
+ thailand: Thailand.default,
54
86
  "united-arab-emirates": UnitedArabEmirates.default,
55
87
  "united-kingdom": UnitedKingdom.default,
56
88
  "united-states": UnitedStates.default
@@ -1 +1 @@
1
- {"version":3,"file":"FlagsLight.cjs","sources":["../../../../../../src/components/Assets/Flags/system/FlagsLight.ts"],"sourcesContent":["/*\n ** WARNING: Auto-generated file!\n ** Do NOT modify it, your changes will be lost!\n ** If you find need to modify manually,\n ** report the issue immediately.\n */\n\nimport Australia from '../Australia';\nimport Brazil from '../Brazil';\nimport Canada from '../Canada';\nimport European_Union from '../European-Union';\nimport France from '../France';\nimport Germany from '../Germany';\nimport Great_Britain from '../Great-Britain';\nimport Hong_Kong from '../Hong-Kong';\nimport India from '../India';\nimport Indonesia from '../Indonesia';\nimport Ireland from '../Ireland';\nimport Israel from '../Israel';\nimport Japan from '../Japan';\nimport Malaysia from '../Malaysia';\nimport Mexico from '../Mexico';\nimport Netherlands from '../Netherlands';\nimport Singapore from '../Singapore';\nimport South_Africa from '../South-Africa';\nimport South_Korea from '../South-Korea';\nimport Sweden from '../Sweden';\nimport Switzerland from '../Switzerland';\nimport Taiwan from '../Taiwan';\nimport United_Arab_Emirates from '../United-Arab-Emirates';\nimport United_Kingdom from '../United-Kingdom';\nimport United_States from '../United-States';\nimport { FlagName } from './types';\nimport type { SVGAssetProps } from '@/types';\nimport type { ComponentType } from 'react';\n\nconst FlagsLight: Record<FlagName, ComponentType<SVGAssetProps>> = {\n australia: Australia,\n brazil: Brazil,\n canada: Canada,\n 'european-union': European_Union,\n france: France,\n germany: Germany,\n 'great-britain': Great_Britain,\n 'hong-kong': Hong_Kong,\n india: India,\n indonesia: Indonesia,\n ireland: Ireland,\n israel: Israel,\n japan: Japan,\n malaysia: Malaysia,\n mexico: Mexico,\n netherlands: Netherlands,\n singapore: Singapore,\n 'south-africa': South_Africa,\n 'south-korea': South_Korea,\n sweden: Sweden,\n switzerland: Switzerland,\n taiwan: Taiwan,\n 'united-arab-emirates': United_Arab_Emirates,\n 'united-kingdom': United_Kingdom,\n 'united-states': United_States,\n};\n\nexport default FlagsLight;\n"],"names":["Australia","Brazil","Canada","European_Union","France","Germany","Great_Britain","Hong_Kong","India","Indonesia","Ireland","Israel","Japan","Malaysia","Mexico","Netherlands","Singapore","South_Africa","South_Korea","Sweden","Switzerland","Taiwan","United_Arab_Emirates","United_Kingdom","United_States"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoCA,MAAM,UAAA,GAA6D;AAAA,EACjE,SAAA,EAAWA,iBAAA;AAAA,EACX,MAAA,EAAQC,cAAA;AAAA,EACR,MAAA,EAAQC,cAAA;AAAA,EACR,gBAAA,EAAkBC,qBAAA;AAAA,EAClB,MAAA,EAAQC,cAAA;AAAA,EACR,OAAA,EAASC,eAAA;AAAA,EACT,eAAA,EAAiBC,oBAAA;AAAA,EACjB,WAAA,EAAaC,gBAAA;AAAA,EACb,KAAA,EAAOC,aAAA;AAAA,EACP,SAAA,EAAWC,iBAAA;AAAA,EACX,OAAA,EAASC,eAAA;AAAA,EACT,MAAA,EAAQC,cAAA;AAAA,EACR,KAAA,EAAOC,aAAA;AAAA,EACP,QAAA,EAAUC,gBAAA;AAAA,EACV,MAAA,EAAQC,cAAA;AAAA,EACR,WAAA,EAAaC,mBAAA;AAAA,EACb,SAAA,EAAWC,iBAAA;AAAA,EACX,cAAA,EAAgBC,mBAAA;AAAA,EAChB,aAAA,EAAeC,kBAAA;AAAA,EACf,MAAA,EAAQC,cAAA;AAAA,EACR,WAAA,EAAaC,mBAAA;AAAA,EACb,MAAA,EAAQC,cAAA;AAAA,EACR,sBAAA,EAAwBC,0BAAA;AAAA,EACxB,gBAAA,EAAkBC,qBAAA;AAAA,EAClB,eAAA,EAAiBC;AACnB;;;;"}
1
+ {"version":3,"file":"FlagsLight.cjs","sources":["../../../../../../src/components/Assets/Flags/system/FlagsLight.ts"],"sourcesContent":["/*\n ** WARNING: Auto-generated file!\n ** Do NOT modify it, your changes will be lost!\n ** If you find need to modify manually,\n ** report the issue immediately.\n */\n\nimport Australia from '../Australia';\nimport Austria from '../Austria';\nimport Bahrain from '../Bahrain';\nimport Belgium from '../Belgium';\nimport Brazil from '../Brazil';\nimport Canada from '../Canada';\nimport Chile from '../Chile';\nimport China from '../China';\nimport Denmark from '../Denmark';\nimport European_Union from '../European-Union';\nimport Finland from '../Finland';\nimport France from '../France';\nimport Germany from '../Germany';\nimport Great_Britain from '../Great-Britain';\nimport Greece from '../Greece';\nimport Hong_Kong from '../Hong-Kong';\nimport India from '../India';\nimport Indonesia from '../Indonesia';\nimport Ireland from '../Ireland';\nimport Israel from '../Israel';\nimport Italy from '../Italy';\nimport Japan from '../Japan';\nimport Malaysia from '../Malaysia';\nimport Mexico from '../Mexico';\nimport Netherlands from '../Netherlands';\nimport New_Zealand from '../New-Zealand';\nimport Norway from '../Norway';\nimport Poland from '../Poland';\nimport Qatar from '../Qatar';\nimport Saudi_Arabia from '../Saudi-Arabia';\nimport Singapore from '../Singapore';\nimport South_Africa from '../South-Africa';\nimport South_Korea from '../South-Korea';\nimport Spain from '../Spain';\nimport Sweden from '../Sweden';\nimport Switzerland from '../Switzerland';\nimport Taiwan from '../Taiwan';\nimport Thailand from '../Thailand';\nimport United_Arab_Emirates from '../United-Arab-Emirates';\nimport United_Kingdom from '../United-Kingdom';\nimport United_States from '../United-States';\nimport { FlagName } from './types';\nimport type { SVGAssetProps } from '@/types';\nimport type { ComponentType } from 'react';\n\nconst FlagsLight: Record<FlagName, ComponentType<SVGAssetProps>> = {\n australia: Australia,\n austria: Austria,\n bahrain: Bahrain,\n belgium: Belgium,\n brazil: Brazil,\n canada: Canada,\n chile: Chile,\n china: China,\n denmark: Denmark,\n 'european-union': European_Union,\n finland: Finland,\n france: France,\n germany: Germany,\n 'great-britain': Great_Britain,\n greece: Greece,\n 'hong-kong': Hong_Kong,\n india: India,\n indonesia: Indonesia,\n ireland: Ireland,\n israel: Israel,\n italy: Italy,\n japan: Japan,\n malaysia: Malaysia,\n mexico: Mexico,\n netherlands: Netherlands,\n 'new-zealand': New_Zealand,\n norway: Norway,\n poland: Poland,\n qatar: Qatar,\n 'saudi-arabia': Saudi_Arabia,\n singapore: Singapore,\n 'south-africa': South_Africa,\n 'south-korea': South_Korea,\n spain: Spain,\n sweden: Sweden,\n switzerland: Switzerland,\n taiwan: Taiwan,\n thailand: Thailand,\n 'united-arab-emirates': United_Arab_Emirates,\n 'united-kingdom': United_Kingdom,\n 'united-states': United_States,\n};\n\nexport default FlagsLight;\n"],"names":["Australia","Austria","Bahrain","Belgium","Brazil","Canada","Chile","China","Denmark","European_Union","Finland","France","Germany","Great_Britain","Greece","Hong_Kong","India","Indonesia","Ireland","Israel","Italy","Japan","Malaysia","Mexico","Netherlands","New_Zealand","Norway","Poland","Qatar","Saudi_Arabia","Singapore","South_Africa","South_Korea","Spain","Sweden","Switzerland","Taiwan","Thailand","United_Arab_Emirates","United_Kingdom","United_States"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoDA,MAAM,UAAA,GAA6D;AAAA,EACjE,SAAA,EAAWA,iBAAA;AAAA,EACX,OAAA,EAASC,eAAA;AAAA,EACT,OAAA,EAASC,eAAA;AAAA,EACT,OAAA,EAASC,eAAA;AAAA,EACT,MAAA,EAAQC,cAAA;AAAA,EACR,MAAA,EAAQC,cAAA;AAAA,EACR,KAAA,EAAOC,aAAA;AAAA,EACP,KAAA,EAAOC,aAAA;AAAA,EACP,OAAA,EAASC,eAAA;AAAA,EACT,gBAAA,EAAkBC,qBAAA;AAAA,EAClB,OAAA,EAASC,eAAA;AAAA,EACT,MAAA,EAAQC,cAAA;AAAA,EACR,OAAA,EAASC,eAAA;AAAA,EACT,eAAA,EAAiBC,oBAAA;AAAA,EACjB,MAAA,EAAQC,cAAA;AAAA,EACR,WAAA,EAAaC,gBAAA;AAAA,EACb,KAAA,EAAOC,aAAA;AAAA,EACP,SAAA,EAAWC,iBAAA;AAAA,EACX,OAAA,EAASC,eAAA;AAAA,EACT,MAAA,EAAQC,cAAA;AAAA,EACR,KAAA,EAAOC,aAAA;AAAA,EACP,KAAA,EAAOC,aAAA;AAAA,EACP,QAAA,EAAUC,gBAAA;AAAA,EACV,MAAA,EAAQC,cAAA;AAAA,EACR,WAAA,EAAaC,mBAAA;AAAA,EACb,aAAA,EAAeC,kBAAA;AAAA,EACf,MAAA,EAAQC,cAAA;AAAA,EACR,MAAA,EAAQC,cAAA;AAAA,EACR,KAAA,EAAOC,aAAA;AAAA,EACP,cAAA,EAAgBC,mBAAA;AAAA,EAChB,SAAA,EAAWC,iBAAA;AAAA,EACX,cAAA,EAAgBC,mBAAA;AAAA,EAChB,aAAA,EAAeC,kBAAA;AAAA,EACf,KAAA,EAAOC,aAAA;AAAA,EACP,MAAA,EAAQC,cAAA;AAAA,EACR,WAAA,EAAaC,mBAAA;AAAA,EACb,MAAA,EAAQC,cAAA;AAAA,EACR,QAAA,EAAUC,gBAAA;AAAA,EACV,sBAAA,EAAwBC,0BAAA;AAAA,EACxB,gBAAA,EAAkBC,qBAAA;AAAA,EAClB,eAAA,EAAiBC;AACnB;;;;"}
@@ -23,9 +23,12 @@
23
23
  colors are set inline per state via --codeblock-button, matching the
24
24
  --codeblock-numbers pattern so both track the ThemeProvider runtime. */
25
25
  --codeblock-button: initial;
26
+ /* assign context to be above pseudo-element
27
+ can be cleaned up when background is a regular color variable with alpha */
28
+ z-index: 1;
26
29
  padding: 0;
27
30
  border: 0;
28
- color: var(--codeblock-button, inherit);
31
+ color: var(--codeblock-button, inherit);
29
32
  }
30
33
 
31
34
  .codeblock__highlighter__t4Xol {
@@ -41,9 +44,39 @@
41
44
 
42
45
  .codeblock__button-container__D6yob {
43
46
  display: flex;
47
+ opacity: 0;
44
48
  position: absolute;
45
49
  top: var(--click-codeblock-space-y);
46
50
  right: var(--click-codeblock-space-x);
47
- gap: 0.625rem;
51
+ padding: var(--spaces-1);
52
+ gap: var(--spaces-1);
53
+ pointer-events: none;
54
+ transition: opacity 200ms ease-in-out;
48
55
  }
56
+
57
+ .codeblock__pRWOC:hover .codeblock__button-container__D6yob,
58
+ .codeblock__pRWOC:focus-within .codeblock__button-container__D6yob {
59
+ opacity: 1;
60
+ pointer-events: auto;
61
+ transition-duration: 150ms;
62
+ }
63
+
64
+ /* this element can be refactored to a color var with alpha when available */
65
+ .codeblock__button-container__D6yob::before {
66
+ content: "";
67
+ opacity: 0.85;
68
+ position: absolute;
69
+ z-index: 0;
70
+ inset: 0;
71
+ border-radius: var(--spaces-1);
72
+ }
73
+
74
+ /* custom conditional theming can be later replaced with semantic color tokens */
75
+ [data-cui-theme="light"] .codeblock__button-container__D6yob::before {
76
+ background: var(--palette-indigo-100);
77
+ }
78
+
79
+ [data-cui-theme="dark"] .codeblock__button-container__D6yob::before {
80
+ background: var(--palette-neutral-900);
49
81
  }
82
+ }
@@ -36,6 +36,7 @@ const CodeBlock = ({
36
36
  showLineNumbers,
37
37
  showWrapButton = false,
38
38
  wrapLines = false,
39
+ ariaLabel,
39
40
  onCopy,
40
41
  onCopyError,
41
42
  className,
@@ -68,6 +69,7 @@ const CodeBlock = ({
68
69
  setTimeout(() => setErrorCopy(false), 2e3);
69
70
  }
70
71
  };
72
+ const codeRegionLabel = ariaLabel ?? (language ? `${language} code block` : "Code block");
71
73
  const wrapElement = () => {
72
74
  setWrap((wrap2) => !wrap2);
73
75
  };
@@ -85,30 +87,12 @@ const CodeBlock = ({
85
87
  style: { "--codeblock-numbers": numbersColor, ...style },
86
88
  className: cva.cn(CodeBlock_module.default.codeblock, className),
87
89
  children: [
88
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: CodeBlock_module.default["codeblock__button-container"], children: [
89
- showWrapButton && /* @__PURE__ */ jsxRuntime.jsx(
90
- IconButton.IconButton,
91
- {
92
- className: CodeBlock_module.default["codeblock__button"],
93
- icon: "document",
94
- onClick: wrapElement
95
- }
96
- ),
97
- /* @__PURE__ */ jsxRuntime.jsx(
98
- IconButton.IconButton,
99
- {
100
- className: CodeBlock_module.default["codeblock__button"],
101
- style: {
102
- "--codeblock-button": copied ? buttonStateColors.success : errorCopy ? buttonStateColors.danger : void 0
103
- },
104
- icon: copied ? "check" : errorCopy ? "warning" : "copy",
105
- onClick: copyCodeToClipboard
106
- }
107
- )
108
- ] }),
109
90
  /* @__PURE__ */ jsxRuntime.jsx(
110
91
  reactSyntaxHighlighter.Light,
111
92
  {
93
+ tabIndex: 0,
94
+ role: "group",
95
+ "aria-label": codeRegionLabel,
112
96
  language,
113
97
  style: customStyle,
114
98
  CodeTag: CodeWithRef,
@@ -143,7 +127,28 @@ const CodeBlock = ({
143
127
  wrapLongLines: wrap || wrapLines,
144
128
  children
145
129
  }
146
- )
130
+ ),
131
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: CodeBlock_module.default["codeblock__button-container"], children: [
132
+ showWrapButton && /* @__PURE__ */ jsxRuntime.jsx(
133
+ IconButton.IconButton,
134
+ {
135
+ className: CodeBlock_module.default["codeblock__button"],
136
+ icon: "document",
137
+ onClick: wrapElement
138
+ }
139
+ ),
140
+ /* @__PURE__ */ jsxRuntime.jsx(
141
+ IconButton.IconButton,
142
+ {
143
+ className: CodeBlock_module.default["codeblock__button"],
144
+ style: {
145
+ "--codeblock-button": copied ? buttonStateColors.success : errorCopy ? buttonStateColors.danger : void 0
146
+ },
147
+ icon: copied ? "check" : errorCopy ? "warning" : "copy",
148
+ onClick: copyCodeToClipboard
149
+ }
150
+ )
151
+ ] })
147
152
  ]
148
153
  }
149
154
  );
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../../src/components/CodeBlock/CodeBlock.tsx"],"sourcesContent":["import React, { HTMLAttributes, useState } from 'react';\nimport { Light as SyntaxHighlighter, createElement } from 'react-syntax-highlighter';\n\nimport { IconButton } from '@/components/IconButton';\n\nimport { cn } from '@/lib/cva';\nimport useColorStyle, { useButtonStateColors, useNumbersColor } from './useColorStyle';\nimport { CodeBlockProps } from './CodeBlock.types';\nimport styles from './CodeBlock.module.css';\n\n/* eslint-disable import/extensions */\n// @ts-expect-error - Importing CJS modules in ESM context requires explicit .js extension\nimport sql from 'react-syntax-highlighter/dist/cjs/languages/hljs/sql.js';\n// @ts-expect-error - Importing CJS modules in ESM context requires explicit .js extension\nimport bash from 'react-syntax-highlighter/dist/cjs/languages/hljs/bash.js';\n// @ts-expect-error - Importing CJS modules in ESM context requires explicit .js extension\nimport json from 'react-syntax-highlighter/dist/cjs/languages/hljs/json.js';\n// @ts-expect-error - Importing CJS modules in ESM context requires explicit .js extension\nimport tsx from 'react-syntax-highlighter/dist/cjs/languages/hljs/typescript.js';\n// @ts-expect-error - Importing CJS modules in ESM context requires explicit .js extension\nimport plaintext from 'react-syntax-highlighter/dist/cjs/languages/hljs/plaintext.js';\n/* eslint-enable import/extensions */\n\nSyntaxHighlighter.registerLanguage('sql', sql.default || sql);\nSyntaxHighlighter.registerLanguage('bash', bash.default || bash);\nSyntaxHighlighter.registerLanguage('json', json.default || json);\nSyntaxHighlighter.registerLanguage('tsx', tsx.default || tsx);\nSyntaxHighlighter.registerLanguage('plaintext', plaintext.default || plaintext);\n\ninterface RendererNodeType {\n type: 'element' | 'text';\n value?: string | number | undefined;\n tagName?: keyof React.JSX.IntrinsicElements | React.ComponentType | undefined;\n properties?: { className: unknown[]; [key: string]: unknown };\n children?: RendererNodeType[];\n}\ninterface CustomRendererProps {\n rows: RendererNodeType[];\n stylesheet: { [key: string]: React.CSSProperties };\n useInlineStyles: boolean;\n}\n\nexport const CodeBlock = ({\n children,\n language,\n theme,\n showLineNumbers,\n showWrapButton = false,\n wrapLines = false,\n onCopy,\n onCopyError,\n className,\n style,\n ...props\n}: CodeBlockProps) => {\n const [copied, setCopied] = useState(false);\n const [errorCopy, setErrorCopy] = useState(false);\n const [wrap, setWrap] = useState(wrapLines);\n const customStyle = useColorStyle(theme);\n const numbersColor = useNumbersColor(theme);\n const buttonStateColors = useButtonStateColors();\n\n const copyCodeToClipboard = async () => {\n try {\n await navigator.clipboard.writeText(children);\n if (typeof onCopy == 'function') {\n onCopy(children);\n }\n setCopied(true);\n setTimeout(() => setCopied(false), 2000);\n } catch (error) {\n let message = 'Unable to copy code';\n if (error instanceof Error) {\n message = error.message;\n }\n setErrorCopy(true);\n if (typeof onCopyError === 'function') {\n onCopyError(message);\n }\n setTimeout(() => setErrorCopy(false), 2000);\n }\n };\n const wrapElement = () => {\n setWrap(wrap => !wrap);\n };\n\n const CodeWithRef = (props: HTMLAttributes<HTMLElement>) => (\n <code\n {...props}\n className={cn(styles['codeblock__content'], props.className)}\n />\n );\n return (\n <div\n {...props}\n style={{ '--codeblock-numbers': numbersColor, ...style } as React.CSSProperties}\n className={cn(styles.codeblock, className)}\n >\n <div className={styles['codeblock__button-container']}>\n {showWrapButton && (\n <IconButton\n className={styles['codeblock__button']}\n icon=\"document\"\n onClick={wrapElement}\n />\n )}\n <IconButton\n className={styles['codeblock__button']}\n style={\n {\n '--codeblock-button': copied\n ? buttonStateColors.success\n : errorCopy\n ? buttonStateColors.danger\n : undefined,\n } as React.CSSProperties\n }\n icon={copied ? 'check' : errorCopy ? 'warning' : 'copy'}\n onClick={copyCodeToClipboard}\n />\n </div>\n <SyntaxHighlighter\n language={language}\n style={customStyle}\n CodeTag={CodeWithRef}\n className={styles['codeblock__highlighter']}\n renderer={({ rows, stylesheet, useInlineStyles }: CustomRendererProps) => {\n return rows.map((row, index) => {\n const children = row.children;\n const lineNumberElement = children?.shift();\n\n /**\n * We will take current structure of the rows and rebuild it\n * according to the suggestion here https://github.com/react-syntax-highlighter/react-syntax-highlighter/issues/376#issuecomment-1246115899\n */\n if (lineNumberElement) {\n row.children = [\n lineNumberElement,\n {\n children,\n properties: {\n className: [],\n },\n tagName: 'span',\n type: 'element',\n },\n ];\n }\n\n return createElement({\n node: row,\n stylesheet,\n useInlineStyles,\n key: index,\n });\n });\n }}\n showLineNumbers={showLineNumbers}\n wrapLines={wrap || wrapLines}\n wrapLongLines={wrap || wrapLines}\n >\n {children}\n </SyntaxHighlighter>\n </div>\n );\n};\n"],"names":["SyntaxHighlighter","sql","bash","json","tsx","plaintext","useState","useColorStyle","useNumbersColor","useButtonStateColors","wrap","props","jsx","cn","styles","jsxs","IconButton","children","createElement"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../../src/components/CodeBlock/CodeBlock.tsx"],"sourcesContent":["import React, { HTMLAttributes, useState } from 'react';\nimport { Light as SyntaxHighlighter, createElement } from 'react-syntax-highlighter';\n\nimport { IconButton } from '@/components/IconButton';\n\nimport { cn } from '@/lib/cva';\nimport useColorStyle, { useButtonStateColors, useNumbersColor } from './useColorStyle';\nimport { CodeBlockProps } from './CodeBlock.types';\nimport styles from './CodeBlock.module.css';\n\n/* eslint-disable import/extensions */\n// @ts-expect-error - Importing CJS modules in ESM context requires explicit .js extension\nimport sql from 'react-syntax-highlighter/dist/cjs/languages/hljs/sql.js';\n// @ts-expect-error - Importing CJS modules in ESM context requires explicit .js extension\nimport bash from 'react-syntax-highlighter/dist/cjs/languages/hljs/bash.js';\n// @ts-expect-error - Importing CJS modules in ESM context requires explicit .js extension\nimport json from 'react-syntax-highlighter/dist/cjs/languages/hljs/json.js';\n// @ts-expect-error - Importing CJS modules in ESM context requires explicit .js extension\nimport tsx from 'react-syntax-highlighter/dist/cjs/languages/hljs/typescript.js';\n// @ts-expect-error - Importing CJS modules in ESM context requires explicit .js extension\nimport plaintext from 'react-syntax-highlighter/dist/cjs/languages/hljs/plaintext.js';\n/* eslint-enable import/extensions */\n\nSyntaxHighlighter.registerLanguage('sql', sql.default || sql);\nSyntaxHighlighter.registerLanguage('bash', bash.default || bash);\nSyntaxHighlighter.registerLanguage('json', json.default || json);\nSyntaxHighlighter.registerLanguage('tsx', tsx.default || tsx);\nSyntaxHighlighter.registerLanguage('plaintext', plaintext.default || plaintext);\n\ninterface RendererNodeType {\n type: 'element' | 'text';\n value?: string | number | undefined;\n tagName?: keyof React.JSX.IntrinsicElements | React.ComponentType | undefined;\n properties?: { className: unknown[]; [key: string]: unknown };\n children?: RendererNodeType[];\n}\ninterface CustomRendererProps {\n rows: RendererNodeType[];\n stylesheet: { [key: string]: React.CSSProperties };\n useInlineStyles: boolean;\n}\n\nexport const CodeBlock = ({\n children,\n language,\n theme,\n showLineNumbers,\n showWrapButton = false,\n wrapLines = false,\n ariaLabel,\n onCopy,\n onCopyError,\n className,\n style,\n ...props\n}: CodeBlockProps) => {\n const [copied, setCopied] = useState(false);\n const [errorCopy, setErrorCopy] = useState(false);\n const [wrap, setWrap] = useState(wrapLines);\n const customStyle = useColorStyle(theme);\n const numbersColor = useNumbersColor(theme);\n const buttonStateColors = useButtonStateColors();\n\n const copyCodeToClipboard = async () => {\n try {\n await navigator.clipboard.writeText(children);\n if (typeof onCopy == 'function') {\n onCopy(children);\n }\n setCopied(true);\n setTimeout(() => setCopied(false), 2000);\n } catch (error) {\n let message = 'Unable to copy code';\n if (error instanceof Error) {\n message = error.message;\n }\n setErrorCopy(true);\n if (typeof onCopyError === 'function') {\n onCopyError(message);\n }\n setTimeout(() => setErrorCopy(false), 2000);\n }\n };\n\n const codeRegionLabel =\n ariaLabel ?? (language ? `${language} code block` : 'Code block');\n\n const wrapElement = () => {\n setWrap(wrap => !wrap);\n };\n\n const CodeWithRef = (props: HTMLAttributes<HTMLElement>) => (\n <code\n {...props}\n className={cn(styles['codeblock__content'], props.className)}\n />\n );\n return (\n <div\n {...props}\n style={{ '--codeblock-numbers': numbersColor, ...style } as React.CSSProperties}\n className={cn(styles.codeblock, className)}\n >\n <SyntaxHighlighter\n tabIndex={0}\n role=\"group\"\n aria-label={codeRegionLabel}\n language={language}\n style={customStyle}\n CodeTag={CodeWithRef}\n className={styles['codeblock__highlighter']}\n renderer={({ rows, stylesheet, useInlineStyles }: CustomRendererProps) => {\n return rows.map((row, index) => {\n const children = row.children;\n const lineNumberElement = children?.shift();\n\n /**\n * We will take current structure of the rows and rebuild it\n * according to the suggestion here https://github.com/react-syntax-highlighter/react-syntax-highlighter/issues/376#issuecomment-1246115899\n */\n if (lineNumberElement) {\n row.children = [\n lineNumberElement,\n {\n children,\n properties: {\n className: [],\n },\n tagName: 'span',\n type: 'element',\n },\n ];\n }\n\n return createElement({\n node: row,\n stylesheet,\n useInlineStyles,\n key: index,\n });\n });\n }}\n showLineNumbers={showLineNumbers}\n wrapLines={wrap || wrapLines}\n wrapLongLines={wrap || wrapLines}\n >\n {children}\n </SyntaxHighlighter>\n <div className={styles['codeblock__button-container']}>\n {showWrapButton && (\n <IconButton\n className={styles['codeblock__button']}\n icon=\"document\"\n onClick={wrapElement}\n />\n )}\n <IconButton\n className={styles['codeblock__button']}\n style={\n {\n '--codeblock-button': copied\n ? buttonStateColors.success\n : errorCopy\n ? buttonStateColors.danger\n : undefined,\n } as React.CSSProperties\n }\n icon={copied ? 'check' : errorCopy ? 'warning' : 'copy'}\n onClick={copyCodeToClipboard}\n />\n </div>\n </div>\n );\n};\n"],"names":["SyntaxHighlighter","sql","bash","json","tsx","plaintext","useState","useColorStyle","useNumbersColor","useButtonStateColors","wrap","props","jsx","cn","styles","jsxs","children","createElement","IconButton"],"mappings":"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"}
@@ -32,6 +32,7 @@ const formatDateDetails = (date, timezone) => {
32
32
  }
33
33
  return date.format(formatForPastYear).replace("am", "a.m.").replace("pm", "p.m.");
34
34
  };
35
+ const fallbackSystemTimeZone = "America/New_York";
35
36
  const DateDetails = ({
36
37
  date: date$1,
37
38
  side = "top",
@@ -41,11 +42,13 @@ const DateDetails = ({
41
42
  }) => {
42
43
  const dayjsDate = dayjs__default.default(date$1);
43
44
  let systemTime;
44
- if (systemTimeZone) {
45
+ let resolvedSystemTimeZone = systemTimeZone;
46
+ if (resolvedSystemTimeZone) {
45
47
  try {
46
- systemTime = dayjsDate.tz(systemTimeZone);
48
+ systemTime = dayjsDate.tz(resolvedSystemTimeZone);
47
49
  } catch {
48
- systemTime = dayjsDate.tz("America/New_York");
50
+ resolvedSystemTimeZone = fallbackSystemTimeZone;
51
+ systemTime = dayjsDate.tz(resolvedSystemTimeZone);
49
52
  }
50
53
  }
51
54
  return /* @__PURE__ */ jsxRuntime.jsxs(Popover.Popover, { children: [
@@ -105,11 +108,11 @@ const DateDetails = ({
105
108
  }
106
109
  ),
107
110
  /* @__PURE__ */ jsxRuntime.jsx(Container.Container, { justifyContent: "end", children: /* @__PURE__ */ jsxRuntime.jsxs(Text.Text, { size: "sm", children: [
108
- formatDateDetails(systemTime, systemTimeZone),
111
+ formatDateDetails(systemTime, resolvedSystemTimeZone),
109
112
  " (",
110
113
  date.formatTimezone({
111
114
  date: systemTime,
112
- timezone: systemTimeZone
115
+ timezone: resolvedSystemTimeZone
113
116
  }),
114
117
  ")"
115
118
  ] }) })
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../../src/components/DateDetails/DateDetails.tsx"],"sourcesContent":["import { Popover } from '@/components/Popover';\nimport { Text } from '@/components/Text';\nimport { Link } from '@/components/Link';\nimport { GridContainer } from '@/components/GridContainer';\nimport { Container } from '@/components/Container';\n\nimport { dayjs, Dayjs, formatTimezone } from '@/utils/date';\n\nconst formatDateDetails = (date: Dayjs, timezone?: string): string => {\n const isCurrentYear = dayjs().year() === date.year();\n const formatForCurrentYear = 'MMM D, h:mm a';\n const formatForPastYear = 'MMM D, YYYY, h:mm a';\n\n if (isCurrentYear) {\n if (timezone) {\n const dateWithTimezone = date.tz(timezone);\n return dateWithTimezone\n .format(formatForCurrentYear)\n .replace('am', 'a.m.')\n .replace('pm', 'p.m.');\n }\n\n return date.format(formatForCurrentYear).replace('am', 'a.m.').replace('pm', 'p.m.');\n }\n\n if (timezone) {\n const dateWithTimezone = date.tz(timezone);\n return dateWithTimezone\n .format(formatForPastYear)\n .replace('am', 'a.m.')\n .replace('pm', 'p.m.');\n }\n return date.format(formatForPastYear).replace('am', 'a.m.').replace('pm', 'p.m.');\n};\n\nimport { DateDetailsProps } from './DateDetails.types';\n\nexport const DateDetails = ({\n date,\n side = 'top',\n size = 'sm',\n systemTimeZone,\n weight = 'normal',\n}: DateDetailsProps) => {\n const dayjsDate = dayjs(date);\n\n let systemTime;\n if (systemTimeZone) {\n try {\n systemTime = dayjsDate.tz(systemTimeZone);\n } catch {\n systemTime = dayjsDate.tz('America/New_York');\n }\n }\n\n return (\n <Popover>\n <Popover.Trigger>\n <Link\n component=\"span\"\n size=\"sm\"\n weight=\"medium\"\n >\n <Text\n component=\"span\"\n size={size}\n weight={weight}\n >\n {dayjs.utc(date).fromNow()}\n </Text>\n </Link>\n </Popover.Trigger>\n <Popover.Content\n side={side}\n showArrow\n >\n <GridContainer\n columnGap=\"xl\"\n gridTemplateColumns=\"repeat(2, auto)\"\n gap=\"sm\"\n >\n <Text\n color=\"muted\"\n size=\"sm\"\n >\n Local\n </Text>\n <Container justifyContent=\"end\">\n <Text size=\"sm\">\n {formatDateDetails(dayjsDate)} (\n {formatTimezone({\n date: dayjsDate,\n timezone: dayjs.tz.guess(),\n })}\n )\n </Text>\n </Container>\n\n {systemTime && (\n <>\n <Text\n color=\"muted\"\n size=\"sm\"\n >\n System\n </Text>\n\n <Container justifyContent=\"end\">\n <Text size=\"sm\">\n {formatDateDetails(systemTime, systemTimeZone)} (\n {formatTimezone({\n date: systemTime,\n timezone: systemTimeZone,\n })}\n )\n </Text>\n </Container>\n </>\n )}\n\n <Text\n color=\"muted\"\n size=\"sm\"\n >\n UTC\n </Text>\n <Container justifyContent=\"end\">\n <Text size=\"sm\">{formatDateDetails(dayjsDate.utc(), 'UTC')}</Text>\n </Container>\n\n <Text\n color=\"muted\"\n size=\"sm\"\n >\n Unix\n </Text>\n <Container justifyContent=\"end\">\n <Text size=\"sm\">{Math.round(dayjsDate.valueOf() / 1000)}</Text>\n </Container>\n </GridContainer>\n </Popover.Content>\n </Popover>\n );\n};\n"],"names":["dayjs","date","Popover","jsx","Link","Text","jsxs","GridContainer","Container","formatTimezone","Fragment"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../../src/components/DateDetails/DateDetails.tsx"],"sourcesContent":["import { Popover } from '@/components/Popover';\nimport { Text } from '@/components/Text';\nimport { Link } from '@/components/Link';\nimport { GridContainer } from '@/components/GridContainer';\nimport { Container } from '@/components/Container';\n\nimport { dayjs, Dayjs, formatTimezone } from '@/utils/date';\n\nconst formatDateDetails = (date: Dayjs, timezone?: string): string => {\n const isCurrentYear = dayjs().year() === date.year();\n const formatForCurrentYear = 'MMM D, h:mm a';\n const formatForPastYear = 'MMM D, YYYY, h:mm a';\n\n if (isCurrentYear) {\n if (timezone) {\n const dateWithTimezone = date.tz(timezone);\n return dateWithTimezone\n .format(formatForCurrentYear)\n .replace('am', 'a.m.')\n .replace('pm', 'p.m.');\n }\n\n return date.format(formatForCurrentYear).replace('am', 'a.m.').replace('pm', 'p.m.');\n }\n\n if (timezone) {\n const dateWithTimezone = date.tz(timezone);\n return dateWithTimezone\n .format(formatForPastYear)\n .replace('am', 'a.m.')\n .replace('pm', 'p.m.');\n }\n return date.format(formatForPastYear).replace('am', 'a.m.').replace('pm', 'p.m.');\n};\n\nimport { DateDetailsProps } from './DateDetails.types';\n\nconst fallbackSystemTimeZone = 'America/New_York';\n\nexport const DateDetails = ({\n date,\n side = 'top',\n size = 'sm',\n systemTimeZone,\n weight = 'normal',\n}: DateDetailsProps) => {\n const dayjsDate = dayjs(date);\n\n let systemTime;\n let resolvedSystemTimeZone = systemTimeZone;\n if (resolvedSystemTimeZone) {\n try {\n systemTime = dayjsDate.tz(resolvedSystemTimeZone);\n } catch {\n resolvedSystemTimeZone = fallbackSystemTimeZone;\n systemTime = dayjsDate.tz(resolvedSystemTimeZone);\n }\n }\n\n return (\n <Popover>\n <Popover.Trigger>\n <Link\n component=\"span\"\n size=\"sm\"\n weight=\"medium\"\n >\n <Text\n component=\"span\"\n size={size}\n weight={weight}\n >\n {dayjs.utc(date).fromNow()}\n </Text>\n </Link>\n </Popover.Trigger>\n <Popover.Content\n side={side}\n showArrow\n >\n <GridContainer\n columnGap=\"xl\"\n gridTemplateColumns=\"repeat(2, auto)\"\n gap=\"sm\"\n >\n <Text\n color=\"muted\"\n size=\"sm\"\n >\n Local\n </Text>\n <Container justifyContent=\"end\">\n <Text size=\"sm\">\n {formatDateDetails(dayjsDate)} (\n {formatTimezone({\n date: dayjsDate,\n timezone: dayjs.tz.guess(),\n })}\n )\n </Text>\n </Container>\n\n {systemTime && (\n <>\n <Text\n color=\"muted\"\n size=\"sm\"\n >\n System\n </Text>\n\n <Container justifyContent=\"end\">\n <Text size=\"sm\">\n {formatDateDetails(systemTime, resolvedSystemTimeZone)} (\n {formatTimezone({\n date: systemTime,\n timezone: resolvedSystemTimeZone,\n })}\n )\n </Text>\n </Container>\n </>\n )}\n\n <Text\n color=\"muted\"\n size=\"sm\"\n >\n UTC\n </Text>\n <Container justifyContent=\"end\">\n <Text size=\"sm\">{formatDateDetails(dayjsDate.utc(), 'UTC')}</Text>\n </Container>\n\n <Text\n color=\"muted\"\n size=\"sm\"\n >\n Unix\n </Text>\n <Container justifyContent=\"end\">\n <Text size=\"sm\">{Math.round(dayjsDate.valueOf() / 1000)}</Text>\n </Container>\n </GridContainer>\n </Popover.Content>\n </Popover>\n );\n};\n"],"names":["dayjs","date","Popover","jsx","Link","Text","jsxs","GridContainer","Container","formatTimezone","Fragment"],"mappings":"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"}
@@ -51,7 +51,7 @@ const DropdownTrigger = ({
51
51
  ...props
52
52
  }) => {
53
53
  if (sub) {
54
- const { icon, iconDir, ...menuProps } = props;
54
+ const { icon, iconDir, tooltipProps, ...menuProps } = props;
55
55
  return /* @__PURE__ */ jsxRuntime.jsxs(
56
56
  DropdownMenuItem,
57
57
  {
@@ -63,6 +63,7 @@ const DropdownTrigger = ({
63
63
  {
64
64
  icon,
65
65
  iconDir,
66
+ tooltipProps: { side: "right", ...tooltipProps },
66
67
  children
67
68
  }
68
69
  ),
@@ -154,6 +155,7 @@ const DropdownItem = ({
154
155
  icon,
155
156
  iconDir,
156
157
  type = "default",
158
+ tooltipProps,
157
159
  children,
158
160
  ...props
159
161
  }) => {
@@ -168,6 +170,7 @@ const DropdownItem = ({
168
170
  {
169
171
  icon,
170
172
  iconDir,
173
+ tooltipProps: { side: "right", ...tooltipProps },
171
174
  children
172
175
  }
173
176
  )
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../../src/components/Dropdown/Dropdown.tsx"],"sourcesContent":["import * as DropdownMenu from '@radix-ui/react-dropdown-menu';\nimport {\n ComponentProps,\n ComponentPropsWithRef,\n ElementType,\n ReactNode,\n forwardRef,\n} from 'react';\nimport { Arrow, GenericMenuItem, GenericMenuPanel } from '@/components/GenericMenu';\nimport { cn } from '@/lib/cva';\nimport { useInputModality } from '@/hooks/internal';\nimport Popover_Arrow from '@/components/Assets/Icons/Popover-Arrow';\nimport { IconWrapper } from '@/components/IconWrapper';\nimport { Icon } from '@/components/Icon';\nimport type { IconName } from '@/components/Icon';\nimport type { HorizontalDirection } from '@/types';\nimport { useResolvedPortalContainer } from '@/providers/PortalContext';\nimport styles from './Dropdown.module.css';\n\nexport const Dropdown = (props: DropdownMenu.DropdownMenuProps) => (\n <DropdownMenu.Root {...props} />\n);\n\ntype DropdownMenuItemComponent = <T extends ElementType = 'div'>(\n props: ComponentProps<typeof GenericMenuItem<T>>\n) => ReactNode;\n\nconst _DropdownMenuItem = <T extends ElementType = 'div'>(\n { className, ...props }: ComponentProps<typeof GenericMenuItem<T>>,\n ref: ComponentPropsWithRef<T>['ref']\n) => (\n <GenericMenuItem\n ref={ref}\n {...(props as ComponentProps<typeof GenericMenuItem>)}\n className={cn(styles['dropdown-menu-item'], className)}\n />\n);\n\nconst DropdownMenuItem: DropdownMenuItemComponent = forwardRef(_DropdownMenuItem);\n\ninterface SubDropdownProps {\n sub?: true;\n icon?: IconName;\n iconDir?: HorizontalDirection;\n}\n\ninterface MainDropdownProps {\n sub?: never;\n}\n\ntype DropdownSubTriggerProps = DropdownMenu.DropdownMenuSubTriggerProps &\n SubDropdownProps;\ntype DropdownTriggerProps = DropdownMenu.DropdownMenuTriggerProps & MainDropdownProps;\n\nconst DropdownTrigger = ({\n sub,\n children,\n ...props\n}: DropdownSubTriggerProps | DropdownTriggerProps) => {\n if (sub) {\n const { icon, iconDir, ...menuProps } = props as DropdownSubTriggerProps;\n return (\n <DropdownMenuItem\n as={DropdownMenu.SubTrigger}\n {...menuProps}\n >\n <IconWrapper\n icon={icon}\n iconDir={iconDir}\n >\n {children}\n </IconWrapper>\n <Icon name=\"chevron-right\" />\n </DropdownMenuItem>\n );\n }\n\n const { className, ...triggerProps } = props as DropdownTriggerProps;\n return (\n <DropdownMenu.Trigger\n asChild\n {...triggerProps}\n className={cn(styles['dropdown-trigger'], className)}\n >\n <div>{children}</div>\n </DropdownMenu.Trigger>\n );\n};\n\nDropdownTrigger.displayName = 'DropdownTrigger';\nDropdown.Trigger = DropdownTrigger;\n\nexport type ArrowProps = {\n showArrow?: boolean;\n};\n\ninterface StyledDropdownContentProps extends DropdownMenu.DropdownMenuContentProps {\n children?: ReactNode;\n container?: HTMLElement | null;\n responsivePositioning?: boolean;\n}\n\ninterface StyledDropdownSubContentProps extends DropdownMenu.DropdownMenuSubContentProps {\n children?: ReactNode;\n container?: HTMLElement | null;\n responsivePositioning?: boolean;\n}\n\ntype DropdownContentProps = StyledDropdownContentProps & SubDropdownProps & ArrowProps;\ntype DropdownSubContentProps = StyledDropdownSubContentProps &\n MainDropdownProps &\n ArrowProps;\n\ntype DropdownMenuContentComponent = <T extends ElementType = 'div'>(\n props: ComponentProps<typeof GenericMenuPanel<T>>\n) => ReactNode;\n\nconst _DropdownMenuContent = <T extends ElementType = 'div'>(\n { className, ...props }: ComponentProps<typeof GenericMenuPanel<T>>,\n ref: ComponentPropsWithRef<T>['ref']\n) => (\n <GenericMenuPanel\n ref={ref}\n {...(props as ComponentProps<typeof GenericMenuPanel>)}\n className={cn(styles['dropdown-menu-content'], className)}\n />\n);\n\nconst DropdownMenuContent: DropdownMenuContentComponent =\n forwardRef(_DropdownMenuContent);\n\nconst DropdownContent = ({\n sub,\n children,\n container,\n showArrow,\n responsivePositioning = true,\n ...props\n}: DropdownContentProps | DropdownSubContentProps) => {\n const ContentElement = sub ? DropdownMenu.SubContent : DropdownMenu.Content;\n const inputModalityProps = useInputModality();\n const portalContainer = useResolvedPortalContainer(container);\n\n return (\n <DropdownMenu.Portal container={portalContainer}>\n <DropdownMenuContent\n {...props}\n type=\"dropdown-menu\"\n showArrow={showArrow}\n as={ContentElement}\n sideOffset={4}\n loop\n avoidCollisions={responsivePositioning}\n collisionPadding={responsivePositioning ? 100 : undefined}\n {...inputModalityProps}\n >\n {showArrow && (\n <Arrow\n asChild\n as={DropdownMenu.Arrow}\n width={20}\n height={10}\n >\n <Popover_Arrow />\n </Arrow>\n )}\n {children}\n </DropdownMenuContent>\n </DropdownMenu.Portal>\n );\n};\n\nDropdownContent.displayName = 'DropdownContent';\nDropdown.Content = DropdownContent;\n\nconst DropdownGroup = ({ className, ...props }: DropdownMenu.DropdownMenuGroupProps) => {\n return (\n <DropdownMenu.Group\n {...props}\n className={cn(styles['dropdown-group'], className)}\n />\n );\n};\n\nDropdownGroup.displayName = 'DropdownGroup';\nDropdown.Group = DropdownGroup;\n\n// DropdownMenu.Sub is a context-only Radix primitive that renders no DOM node, so\n// the original styled(DropdownMenu.Sub) border-bottom never applied (the className\n// was dropped). The migration preserves that behavior: no class is forwarded.\nconst DropdownSub = (props: DropdownMenu.DropdownMenuGroupProps) => {\n return <DropdownMenu.Sub {...props} />;\n};\n\nDropdownSub.displayName = 'DropdownSub';\nDropdown.Sub = DropdownSub;\n\ninterface DropdownItemProps extends DropdownMenu.DropdownMenuItemProps {\n /** Icon to display in the menu item */\n icon?: IconName;\n /** The direction of the icon relative to the label */\n iconDir?: HorizontalDirection;\n /** The type of the menu item */\n type?: 'default' | 'danger';\n}\n\nexport type { DropdownItemProps };\n\nconst DropdownItem = ({\n icon,\n iconDir,\n type = 'default',\n children,\n ...props\n}: DropdownItemProps) => {\n return (\n <DropdownMenuItem\n as={DropdownMenu.Item}\n type={type}\n {...props}\n >\n <IconWrapper\n icon={icon}\n iconDir={iconDir}\n >\n {children}\n </IconWrapper>\n </DropdownMenuItem>\n );\n};\n\nDropdownItem.displayName = 'DropdownItem';\nDropdown.Item = DropdownItem;\n\nexport default Dropdown;\n"],"names":["jsx","DropdownMenu","GenericMenuItem","cn","styles","forwardRef","jsxs","IconWrapper","Icon","GenericMenuPanel","useInputModality","useResolvedPortalContainer","Arrow","Popover_Arrow"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../../src/components/Dropdown/Dropdown.tsx"],"sourcesContent":["import * as DropdownMenu from '@radix-ui/react-dropdown-menu';\nimport {\n ComponentProps,\n ComponentPropsWithRef,\n ElementType,\n ReactNode,\n forwardRef,\n} from 'react';\nimport { Arrow, GenericMenuItem, GenericMenuPanel } from '@/components/GenericMenu';\nimport { cn } from '@/lib/cva';\nimport { useInputModality } from '@/hooks/internal';\nimport Popover_Arrow from '@/components/Assets/Icons/Popover-Arrow';\nimport { IconWrapper } from '@/components/IconWrapper';\nimport type { IconWrapperProps } from '@/components/IconWrapper';\nimport { Icon } from '@/components/Icon';\nimport type { IconName } from '@/components/Icon';\nimport type { HorizontalDirection } from '@/types';\nimport { useResolvedPortalContainer } from '@/providers/PortalContext';\nimport type { ArrowProps, DropdownItemProps } from './Dropdown.types';\nimport styles from './Dropdown.module.css';\n\nexport const Dropdown = (props: DropdownMenu.DropdownMenuProps) => (\n <DropdownMenu.Root {...props} />\n);\n\ntype DropdownMenuItemComponent = <T extends ElementType = 'div'>(\n props: ComponentProps<typeof GenericMenuItem<T>>\n) => ReactNode;\n\nconst _DropdownMenuItem = <T extends ElementType = 'div'>(\n { className, ...props }: ComponentProps<typeof GenericMenuItem<T>>,\n ref: ComponentPropsWithRef<T>['ref']\n) => (\n <GenericMenuItem\n ref={ref}\n {...(props as ComponentProps<typeof GenericMenuItem>)}\n className={cn(styles['dropdown-menu-item'], className)}\n />\n);\n\nconst DropdownMenuItem: DropdownMenuItemComponent = forwardRef(_DropdownMenuItem);\n\n// `sub` alone discriminates the two shapes of Trigger and Content. The label\n// fields live separately so only the sub-trigger accepts them — Content spreads\n// what it does not read straight onto the Radix element, i.e. into the DOM.\ninterface SubDiscriminant {\n sub?: true;\n}\n\ninterface SubTriggerFields {\n icon?: IconName;\n iconDir?: HorizontalDirection;\n /**\n * Positions the tooltip shown when the label is truncated. Defaults to\n * `side: 'right'` so the tooltip does not cover the items above it.\n */\n tooltipProps?: IconWrapperProps['tooltipProps'];\n}\n\ninterface MainDropdownProps {\n sub?: never;\n}\n\ntype DropdownSubTriggerProps = DropdownMenu.DropdownMenuSubTriggerProps &\n SubDiscriminant &\n SubTriggerFields;\ntype DropdownTriggerProps = DropdownMenu.DropdownMenuTriggerProps & MainDropdownProps;\n\nconst DropdownTrigger = ({\n sub,\n children,\n ...props\n}: DropdownSubTriggerProps | DropdownTriggerProps) => {\n if (sub) {\n const { icon, iconDir, tooltipProps, ...menuProps } =\n props as DropdownSubTriggerProps;\n return (\n <DropdownMenuItem\n as={DropdownMenu.SubTrigger}\n {...menuProps}\n >\n <IconWrapper\n icon={icon}\n iconDir={iconDir}\n tooltipProps={{ side: 'right', ...tooltipProps }}\n >\n {children}\n </IconWrapper>\n <Icon name=\"chevron-right\" />\n </DropdownMenuItem>\n );\n }\n\n const { className, ...triggerProps } = props as DropdownTriggerProps;\n return (\n <DropdownMenu.Trigger\n asChild\n {...triggerProps}\n className={cn(styles['dropdown-trigger'], className)}\n >\n <div>{children}</div>\n </DropdownMenu.Trigger>\n );\n};\n\nDropdownTrigger.displayName = 'DropdownTrigger';\nDropdown.Trigger = DropdownTrigger;\n\ninterface StyledDropdownContentProps extends DropdownMenu.DropdownMenuContentProps {\n children?: ReactNode;\n container?: HTMLElement | null;\n responsivePositioning?: boolean;\n}\n\ninterface StyledDropdownSubContentProps extends DropdownMenu.DropdownMenuSubContentProps {\n children?: ReactNode;\n container?: HTMLElement | null;\n responsivePositioning?: boolean;\n}\n\ntype DropdownContentProps = StyledDropdownContentProps & SubDiscriminant & ArrowProps;\ntype DropdownSubContentProps = StyledDropdownSubContentProps &\n MainDropdownProps &\n ArrowProps;\n\ntype DropdownMenuContentComponent = <T extends ElementType = 'div'>(\n props: ComponentProps<typeof GenericMenuPanel<T>>\n) => ReactNode;\n\nconst _DropdownMenuContent = <T extends ElementType = 'div'>(\n { className, ...props }: ComponentProps<typeof GenericMenuPanel<T>>,\n ref: ComponentPropsWithRef<T>['ref']\n) => (\n <GenericMenuPanel\n ref={ref}\n {...(props as ComponentProps<typeof GenericMenuPanel>)}\n className={cn(styles['dropdown-menu-content'], className)}\n />\n);\n\nconst DropdownMenuContent: DropdownMenuContentComponent =\n forwardRef(_DropdownMenuContent);\n\nconst DropdownContent = ({\n sub,\n children,\n container,\n showArrow,\n responsivePositioning = true,\n ...props\n}: DropdownContentProps | DropdownSubContentProps) => {\n const ContentElement = sub ? DropdownMenu.SubContent : DropdownMenu.Content;\n const inputModalityProps = useInputModality();\n const portalContainer = useResolvedPortalContainer(container);\n\n return (\n <DropdownMenu.Portal container={portalContainer}>\n <DropdownMenuContent\n {...props}\n type=\"dropdown-menu\"\n showArrow={showArrow}\n as={ContentElement}\n sideOffset={4}\n loop\n avoidCollisions={responsivePositioning}\n collisionPadding={responsivePositioning ? 100 : undefined}\n {...inputModalityProps}\n >\n {showArrow && (\n <Arrow\n asChild\n as={DropdownMenu.Arrow}\n width={20}\n height={10}\n >\n <Popover_Arrow />\n </Arrow>\n )}\n {children}\n </DropdownMenuContent>\n </DropdownMenu.Portal>\n );\n};\n\nDropdownContent.displayName = 'DropdownContent';\nDropdown.Content = DropdownContent;\n\nconst DropdownGroup = ({ className, ...props }: DropdownMenu.DropdownMenuGroupProps) => {\n return (\n <DropdownMenu.Group\n {...props}\n className={cn(styles['dropdown-group'], className)}\n />\n );\n};\n\nDropdownGroup.displayName = 'DropdownGroup';\nDropdown.Group = DropdownGroup;\n\n// DropdownMenu.Sub is a context-only Radix primitive that renders no DOM node, so\n// the original styled(DropdownMenu.Sub) border-bottom never applied (the className\n// was dropped). The migration preserves that behavior: no class is forwarded.\nconst DropdownSub = (props: DropdownMenu.DropdownMenuGroupProps) => {\n return <DropdownMenu.Sub {...props} />;\n};\n\nDropdownSub.displayName = 'DropdownSub';\nDropdown.Sub = DropdownSub;\n\nconst DropdownItem = ({\n icon,\n iconDir,\n type = 'default',\n tooltipProps,\n children,\n ...props\n}: DropdownItemProps) => {\n return (\n <DropdownMenuItem\n as={DropdownMenu.Item}\n type={type}\n {...props}\n >\n <IconWrapper\n icon={icon}\n iconDir={iconDir}\n tooltipProps={{ side: 'right', ...tooltipProps }}\n >\n {children}\n </IconWrapper>\n </DropdownMenuItem>\n );\n};\n\nDropdownItem.displayName = 'DropdownItem';\nDropdown.Item = DropdownItem;\n\nexport default Dropdown;\n"],"names":["jsx","DropdownMenu","GenericMenuItem","cn","styles","forwardRef","jsxs","IconWrapper","Icon","GenericMenuPanel","useInputModality","useResolvedPortalContainer","Arrow","Popover_Arrow"],"mappings":"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"}
@@ -13,6 +13,7 @@ const EllipsisContent_module = require('./EllipsisContent.module.css.cjs');
13
13
  const EllipsisContentComponent = ({
14
14
  component,
15
15
  className,
16
+ tooltipProps,
16
17
  ...props
17
18
  }, ref) => {
18
19
  const Component = component ?? "div";
@@ -37,9 +38,9 @@ const EllipsisContentComponent = ({
37
38
  if (!tooltipContent) {
38
39
  return content;
39
40
  }
40
- return /* @__PURE__ */ jsxRuntime.jsxs(Tooltip.Tooltip, { children: [
41
+ return /* @__PURE__ */ jsxRuntime.jsxs(Tooltip.Tooltip, { disableHoverableContent: true, children: [
41
42
  /* @__PURE__ */ jsxRuntime.jsx(Tooltip.Tooltip.Trigger, { asChild: true, children: content }),
42
- /* @__PURE__ */ jsxRuntime.jsx(Tooltip.Tooltip.Content, { children: tooltipContent })
43
+ /* @__PURE__ */ jsxRuntime.jsx(Tooltip.Tooltip.Content, { ...tooltipProps, children: tooltipContent })
43
44
  ] });
44
45
  };
45
46
  const EllipsisContent = react.forwardRef(
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../../src/components/EllipsisContent/EllipsisContent.tsx"],"sourcesContent":["import {\n ComponentProps,\n ComponentPropsWithRef,\n ElementType,\n ReactNode,\n forwardRef,\n useState,\n} from 'react';\nimport { mergeRefs } from '@/utils/mergeRefs';\nimport { cn } from '@/lib/cva';\nimport { Tooltip } from '@/components/Tooltip';\nimport styles from './EllipsisContent.module.css';\n\nexport interface EllipsisContentProps<T extends ElementType = 'div'> {\n component?: T;\n}\n\ntype EllipsisPolymorphicComponent = <T extends ElementType = 'div'>(\n props: Omit<ComponentProps<T>, keyof EllipsisContentProps<T>> & EllipsisContentProps<T>\n) => ReactNode;\n\nconst EllipsisContentComponent = <T extends ElementType = 'div'>(\n {\n component,\n className,\n ...props\n }: Omit<ComponentProps<T>, keyof EllipsisContentProps<T>> &\n EllipsisContentProps<T> & { className?: string },\n ref: ComponentPropsWithRef<T>['ref']\n) => {\n const Component = component ?? 'div';\n const [tooltipContent, setTooltipContent] = useState<string | null>(null);\n\n const content = (\n <Component\n ref={mergeRefs([\n ref,\n node => {\n if (node) {\n setTooltipContent(\n node.scrollWidth > node.clientWidth ? node.innerText : null\n );\n }\n },\n ])}\n {...props}\n className={cn(styles['ellipsis-content'], className)}\n />\n );\n\n if (!tooltipContent) {\n return content;\n }\n\n return (\n <Tooltip>\n <Tooltip.Trigger asChild>{content}</Tooltip.Trigger>\n <Tooltip.Content>{tooltipContent}</Tooltip.Content>\n </Tooltip>\n );\n};\n\nexport const EllipsisContent: EllipsisPolymorphicComponent = forwardRef(\n EllipsisContentComponent\n);\n"],"names":["useState","jsx","mergeRefs","cn","styles","Tooltip","forwardRef"],"mappings":";;;;;;;;;;;AAqBA,MAAM,2BAA2B,CAC/B;AAAA,EACE,SAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAG;AACL,CAAA,EAEA,GAAA,KACG;AACH,EAAA,MAAM,YAAY,SAAA,IAAa,KAAA;AAC/B,EAAA,MAAM,CAAC,cAAA,EAAgB,iBAAiB,CAAA,GAAIA,eAAwB,IAAI,CAAA;AAExE,EAAA,MAAM,OAAA,mBACJC,cAAA;AAAA,IAAC,SAAA;AAAA,IAAA;AAAA,MACC,KAAKC,mBAAA,CAAU;AAAA,QACb,GAAA;AAAA,QACA,CAAA,IAAA,KAAQ;AACN,UAAA,IAAI,IAAA,EAAM;AACR,YAAA,iBAAA;AAAA,cACE,IAAA,CAAK,WAAA,GAAc,IAAA,CAAK,WAAA,GAAc,KAAK,SAAA,GAAY;AAAA,aACzD;AAAA,UACF;AAAA,QACF;AAAA,OACD,CAAA;AAAA,MACA,GAAG,KAAA;AAAA,MACJ,SAAA,EAAWC,MAAA,CAAGC,8BAAA,CAAO,kBAAkB,GAAG,SAAS;AAAA;AAAA,GACrD;AAGF,EAAA,IAAI,CAAC,cAAA,EAAgB;AACnB,IAAA,OAAO,OAAA;AAAA,EACT;AAEA,EAAA,uCACGC,eAAA,EAAA,EACC,QAAA,EAAA;AAAA,oBAAAJ,cAAA,CAACI,eAAA,CAAQ,OAAA,EAAR,EAAgB,OAAA,EAAO,MAAE,QAAA,EAAA,OAAA,EAAQ,CAAA;AAAA,oBAClCJ,cAAA,CAACI,eAAA,CAAQ,OAAA,EAAR,EAAiB,QAAA,EAAA,cAAA,EAAe;AAAA,GAAA,EACnC,CAAA;AAEJ,CAAA;AAEO,MAAM,eAAA,GAAgDC,gBAAA;AAAA,EAC3D;AACF;;;;"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../../src/components/EllipsisContent/EllipsisContent.tsx"],"sourcesContent":["import {\n ComponentProps,\n ComponentPropsWithRef,\n ElementType,\n ReactNode,\n forwardRef,\n useState,\n} from 'react';\nimport { mergeRefs } from '@/utils/mergeRefs';\nimport { cn } from '@/lib/cva';\nimport { Tooltip } from '@/components/Tooltip';\nimport { EllipsisContentProps } from './EllipsisContent.types';\nimport styles from './EllipsisContent.module.css';\n\ntype EllipsisPolymorphicComponent = <T extends ElementType = 'div'>(\n props: Omit<ComponentProps<T>, keyof EllipsisContentProps<T>> & EllipsisContentProps<T>\n) => ReactNode;\n\nconst EllipsisContentComponent = <T extends ElementType = 'div'>(\n {\n component,\n className,\n tooltipProps,\n ...props\n }: Omit<ComponentProps<T>, keyof EllipsisContentProps<T>> &\n EllipsisContentProps<T> & { className?: string },\n ref: ComponentPropsWithRef<T>['ref']\n) => {\n const Component = component ?? 'div';\n const [tooltipContent, setTooltipContent] = useState<string | null>(null);\n\n const content = (\n <Component\n ref={mergeRefs([\n ref,\n node => {\n if (node) {\n setTooltipContent(\n node.scrollWidth > node.clientWidth ? node.innerText : null\n );\n }\n },\n ])}\n {...props}\n className={cn(styles['ellipsis-content'], className)}\n />\n );\n\n if (!tooltipContent) {\n return content;\n }\n\n return (\n <Tooltip disableHoverableContent>\n <Tooltip.Trigger asChild>{content}</Tooltip.Trigger>\n <Tooltip.Content {...tooltipProps}>{tooltipContent}</Tooltip.Content>\n </Tooltip>\n );\n};\n\nexport const EllipsisContent: EllipsisPolymorphicComponent = forwardRef(\n EllipsisContentComponent\n);\n"],"names":["useState","jsx","mergeRefs","cn","styles","jsxs","Tooltip","forwardRef"],"mappings":";;;;;;;;;;;AAkBA,MAAM,2BAA2B,CAC/B;AAAA,EACE,SAAA;AAAA,EACA,SAAA;AAAA,EACA,YAAA;AAAA,EACA,GAAG;AACL,CAAA,EAEA,GAAA,KACG;AACH,EAAA,MAAM,YAAY,SAAA,IAAa,KAAA;AAC/B,EAAA,MAAM,CAAC,cAAA,EAAgB,iBAAiB,CAAA,GAAIA,eAAwB,IAAI,CAAA;AAExE,EAAA,MAAM,OAAA,mBACJC,cAAA;AAAA,IAAC,SAAA;AAAA,IAAA;AAAA,MACC,KAAKC,mBAAA,CAAU;AAAA,QACb,GAAA;AAAA,QACA,CAAA,IAAA,KAAQ;AACN,UAAA,IAAI,IAAA,EAAM;AACR,YAAA,iBAAA;AAAA,cACE,IAAA,CAAK,WAAA,GAAc,IAAA,CAAK,WAAA,GAAc,KAAK,SAAA,GAAY;AAAA,aACzD;AAAA,UACF;AAAA,QACF;AAAA,OACD,CAAA;AAAA,MACA,GAAG,KAAA;AAAA,MACJ,SAAA,EAAWC,MAAA,CAAGC,8BAAA,CAAO,kBAAkB,GAAG,SAAS;AAAA;AAAA,GACrD;AAGF,EAAA,IAAI,CAAC,cAAA,EAAgB;AACnB,IAAA,OAAO,OAAA;AAAA,EACT;AAEA,EAAA,uBACEC,eAAA,CAACC,eAAA,EAAA,EAAQ,uBAAA,EAAuB,IAAA,EAC9B,QAAA,EAAA;AAAA,oBAAAL,cAAA,CAACK,eAAA,CAAQ,OAAA,EAAR,EAAgB,OAAA,EAAO,MAAE,QAAA,EAAA,OAAA,EAAQ,CAAA;AAAA,mCACjCA,eAAA,CAAQ,OAAA,EAAR,EAAiB,GAAG,cAAe,QAAA,EAAA,cAAA,EAAe;AAAA,GAAA,EACrD,CAAA;AAEJ,CAAA;AAEO,MAAM,eAAA,GAAgDC,gBAAA;AAAA,EAC3D;AACF;;;;"}
@@ -8,6 +8,11 @@
8
8
  cursor: pointer;
9
9
  }
10
10
 
11
+ .iconbutton__G-cEu:focus-visible {
12
+ outline: 2px solid var(--click-global-color-outline-default);
13
+ outline-offset: 2px;
14
+ }
15
+
11
16
  .iconbutton_size_sm__tT3BV {
12
17
  padding: var(--click-button-iconButton-sm-space-y)
13
18
  var(--click-button-iconButton-sm-space-x);
@@ -31,22 +31,32 @@ const iconButtonVariants = classVarianceAuthority.cva(IconButton_module.default.
31
31
  }
32
32
  });
33
33
  const IconButton = react.forwardRef(
34
- ({ type = "primary", htmlType, icon, size, disabled, className, ...props }, ref) => {
34
+ ({
35
+ type = "primary",
36
+ htmlType = "button",
37
+ icon,
38
+ size,
39
+ disabled,
40
+ className,
41
+ "aria-label": ariaLabel,
42
+ ...props
43
+ }, ref) => {
35
44
  const iconName = icon ? icon.toString() : "unknown icon";
36
45
  return /* @__PURE__ */ jsxRuntime.jsx(
37
46
  "button",
38
47
  {
48
+ "aria-label": ariaLabel || iconName,
39
49
  ...props,
40
50
  type: htmlType,
41
51
  className: cva.cn(iconButtonVariants({ type, size }), className),
42
52
  disabled,
43
53
  ref,
44
54
  role: "button",
45
- "aria-label": iconName,
46
55
  children: /* @__PURE__ */ jsxRuntime.jsx(
47
56
  Icon.Icon,
48
57
  {
49
58
  name: icon,
59
+ "aria-hidden": true,
50
60
  size: "sm"
51
61
  }
52
62
  )
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../../src/components/IconButton/IconButton.tsx"],"sourcesContent":["import { forwardRef } from 'react';\nimport { Icon } from '@/components/Icon';\nimport { cn, cva } from '@/lib/cva';\nimport { IconButtonProps } from './IconButton.types';\nimport styles from './IconButton.module.css';\n\nconst iconButtonVariants = cva(styles.iconbutton, {\n variants: {\n type: {\n primary: styles['iconbutton_type_primary'],\n secondary: styles['iconbutton_type_secondary'],\n ghost: styles['iconbutton_type_ghost'],\n danger: styles['iconbutton_type_danger'],\n info: styles['iconbutton_type_info'],\n },\n size: {\n default: '',\n sm: styles['iconbutton_size_sm'],\n xs: styles['iconbutton_size_xs'],\n },\n },\n defaultVariants: {\n type: 'primary',\n size: 'default',\n },\n});\n\nexport const IconButton = forwardRef<HTMLButtonElement, IconButtonProps>(\n ({ type = 'primary', htmlType, icon, size, disabled, className, ...props }, ref) => {\n const iconName = icon ? icon.toString() : 'unknown icon';\n\n return (\n <button\n {...props}\n type={htmlType}\n className={cn(iconButtonVariants({ type, size }), className)}\n disabled={disabled}\n ref={ref}\n role=\"button\"\n aria-label={iconName}\n >\n <Icon\n name={icon}\n size=\"sm\"\n />\n </button>\n );\n }\n);\n\nIconButton.displayName = 'IconButton';\n"],"names":["cva","styles","forwardRef","jsx","cn","Icon"],"mappings":";;;;;;;;;;;AAMA,MAAM,kBAAA,GAAqBA,0BAAA,CAAIC,yBAAA,CAAO,UAAA,EAAY;AAAA,EAChD,QAAA,EAAU;AAAA,IACR,IAAA,EAAM;AAAA,MACJ,OAAA,EAASA,0BAAO,yBAAyB,CAAA;AAAA,MACzC,SAAA,EAAWA,0BAAO,2BAA2B,CAAA;AAAA,MAC7C,KAAA,EAAOA,0BAAO,uBAAuB,CAAA;AAAA,MACrC,MAAA,EAAQA,0BAAO,wBAAwB,CAAA;AAAA,MACvC,IAAA,EAAMA,0BAAO,sBAAsB;AAAA,KACrC;AAAA,IACA,IAAA,EAAM;AAAA,MACJ,OAAA,EAAS,EAAA;AAAA,MACT,EAAA,EAAIA,0BAAO,oBAAoB,CAAA;AAAA,MAC/B,EAAA,EAAIA,0BAAO,oBAAoB;AAAA;AACjC,GACF;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,IAAA,EAAM,SAAA;AAAA,IACN,IAAA,EAAM;AAAA;AAEV,CAAC,CAAA;AAEM,MAAM,UAAA,GAAaC,gBAAA;AAAA,EACxB,CAAC,EAAE,IAAA,GAAO,SAAA,EAAW,QAAA,EAAU,IAAA,EAAM,IAAA,EAAM,QAAA,EAAU,SAAA,EAAW,GAAG,KAAA,EAAM,EAAG,GAAA,KAAQ;AAClF,IAAA,MAAM,QAAA,GAAW,IAAA,GAAO,IAAA,CAAK,QAAA,EAAS,GAAI,cAAA;AAE1C,IAAA,uBACEC,cAAA;AAAA,MAAC,QAAA;AAAA,MAAA;AAAA,QACE,GAAG,KAAA;AAAA,QACJ,IAAA,EAAM,QAAA;AAAA,QACN,SAAA,EAAWC,OAAG,kBAAA,CAAmB,EAAE,MAAM,IAAA,EAAM,GAAG,SAAS,CAAA;AAAA,QAC3D,QAAA;AAAA,QACA,GAAA;AAAA,QACA,IAAA,EAAK,QAAA;AAAA,QACL,YAAA,EAAY,QAAA;AAAA,QAEZ,QAAA,kBAAAD,cAAA;AAAA,UAACE,SAAA;AAAA,UAAA;AAAA,YACC,IAAA,EAAM,IAAA;AAAA,YACN,IAAA,EAAK;AAAA;AAAA;AACP;AAAA,KACF;AAAA,EAEJ;AACF;AAEA,UAAA,CAAW,WAAA,GAAc,YAAA;;;;"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../../src/components/IconButton/IconButton.tsx"],"sourcesContent":["import { forwardRef } from 'react';\nimport { Icon } from '@/components/Icon';\nimport { cn, cva } from '@/lib/cva';\nimport { IconButtonProps } from './IconButton.types';\nimport styles from './IconButton.module.css';\n\nconst iconButtonVariants = cva(styles.iconbutton, {\n variants: {\n type: {\n primary: styles['iconbutton_type_primary'],\n secondary: styles['iconbutton_type_secondary'],\n ghost: styles['iconbutton_type_ghost'],\n danger: styles['iconbutton_type_danger'],\n info: styles['iconbutton_type_info'],\n },\n size: {\n default: '',\n sm: styles['iconbutton_size_sm'],\n xs: styles['iconbutton_size_xs'],\n },\n },\n defaultVariants: {\n type: 'primary',\n size: 'default',\n },\n});\n\nexport const IconButton = forwardRef<HTMLButtonElement, IconButtonProps>(\n (\n {\n type = 'primary',\n htmlType = 'button',\n icon,\n size,\n disabled,\n className,\n 'aria-label': ariaLabel,\n ...props\n },\n ref\n ) => {\n const iconName = icon ? icon.toString() : 'unknown icon';\n\n return (\n <button\n aria-label={ariaLabel || iconName}\n {...props}\n type={htmlType}\n className={cn(iconButtonVariants({ type, size }), className)}\n disabled={disabled}\n ref={ref}\n role=\"button\"\n >\n <Icon\n name={icon}\n aria-hidden\n size=\"sm\"\n />\n </button>\n );\n }\n);\n\nIconButton.displayName = 'IconButton';\n"],"names":["cva","styles","forwardRef","jsx","cn","Icon"],"mappings":";;;;;;;;;;;AAMA,MAAM,kBAAA,GAAqBA,0BAAA,CAAIC,yBAAA,CAAO,UAAA,EAAY;AAAA,EAChD,QAAA,EAAU;AAAA,IACR,IAAA,EAAM;AAAA,MACJ,OAAA,EAASA,0BAAO,yBAAyB,CAAA;AAAA,MACzC,SAAA,EAAWA,0BAAO,2BAA2B,CAAA;AAAA,MAC7C,KAAA,EAAOA,0BAAO,uBAAuB,CAAA;AAAA,MACrC,MAAA,EAAQA,0BAAO,wBAAwB,CAAA;AAAA,MACvC,IAAA,EAAMA,0BAAO,sBAAsB;AAAA,KACrC;AAAA,IACA,IAAA,EAAM;AAAA,MACJ,OAAA,EAAS,EAAA;AAAA,MACT,EAAA,EAAIA,0BAAO,oBAAoB,CAAA;AAAA,MAC/B,EAAA,EAAIA,0BAAO,oBAAoB;AAAA;AACjC,GACF;AAAA,EACA,eAAA,EAAiB;AAAA,IACf,IAAA,EAAM,SAAA;AAAA,IACN,IAAA,EAAM;AAAA;AAEV,CAAC,CAAA;AAEM,MAAM,UAAA,GAAaC,gBAAA;AAAA,EACxB,CACE;AAAA,IACE,IAAA,GAAO,SAAA;AAAA,IACP,QAAA,GAAW,QAAA;AAAA,IACX,IAAA;AAAA,IACA,IAAA;AAAA,IACA,QAAA;AAAA,IACA,SAAA;AAAA,IACA,YAAA,EAAc,SAAA;AAAA,IACd,GAAG;AAAA,KAEL,GAAA,KACG;AACH,IAAA,MAAM,QAAA,GAAW,IAAA,GAAO,IAAA,CAAK,QAAA,EAAS,GAAI,cAAA;AAE1C,IAAA,uBACEC,cAAA;AAAA,MAAC,QAAA;AAAA,MAAA;AAAA,QACC,cAAY,SAAA,IAAa,QAAA;AAAA,QACxB,GAAG,KAAA;AAAA,QACJ,IAAA,EAAM,QAAA;AAAA,QACN,SAAA,EAAWC,OAAG,kBAAA,CAAmB,EAAE,MAAM,IAAA,EAAM,GAAG,SAAS,CAAA;AAAA,QAC3D,QAAA;AAAA,QACA,GAAA;AAAA,QACA,IAAA,EAAK,QAAA;AAAA,QAEL,QAAA,kBAAAD,cAAA;AAAA,UAACE,SAAA;AAAA,UAAA;AAAA,YACC,IAAA,EAAM,IAAA;AAAA,YACN,aAAA,EAAW,IAAA;AAAA,YACX,IAAA,EAAK;AAAA;AAAA;AACP;AAAA,KACF;AAAA,EAEJ;AACF;AAEA,UAAA,CAAW,WAAA,GAAc,YAAA;;;;"}
@@ -15,11 +15,11 @@ const IconWrapper = ({
15
15
  height,
16
16
  children,
17
17
  ellipsisContent = true,
18
+ tooltipProps,
18
19
  gap = "sm",
19
20
  isResponsive = true,
20
21
  ...props
21
22
  }) => {
22
- const TextWrapper = ellipsisContent ? EllipsisContent.EllipsisContent : "div";
23
23
  return /* @__PURE__ */ jsxRuntime.jsxs(
24
24
  Container.Container,
25
25
  {
@@ -38,13 +38,14 @@ const IconWrapper = ({
38
38
  height
39
39
  }
40
40
  ),
41
- /* @__PURE__ */ jsxRuntime.jsx(
42
- TextWrapper,
41
+ ellipsisContent ? /* @__PURE__ */ jsxRuntime.jsx(
42
+ EllipsisContent.EllipsisContent,
43
43
  {
44
- "data-testid": `${ellipsisContent ? "ellipsed" : "normal"}-icon-wrapper-text`,
44
+ "data-testid": "ellipsed-icon-wrapper-text",
45
+ tooltipProps,
45
46
  children
46
47
  }
47
- ),
48
+ ) : /* @__PURE__ */ jsxRuntime.jsx("div", { "data-testid": "normal-icon-wrapper-text", children }),
48
49
  icon && iconDir === "end" && /* @__PURE__ */ jsxRuntime.jsx(
49
50
  Icon.Icon,
50
51
  {
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../../src/components/IconWrapper/IconWrapper.tsx"],"sourcesContent":["import { Container } from '@/components/Container';\nimport { EllipsisContent } from '@/components/EllipsisContent';\nimport { Icon } from '@/components/Icon';\nimport { IconWrapperProps } from './IconWrapper.types';\n\nexport const IconWrapper = ({\n icon,\n iconDir = 'start',\n size = 'sm',\n width,\n height,\n children,\n ellipsisContent = true,\n gap = 'sm',\n isResponsive = true,\n ...props\n}: IconWrapperProps) => {\n const TextWrapper = ellipsisContent ? EllipsisContent : 'div';\n return (\n <Container\n orientation=\"horizontal\"\n gap={gap}\n overflow=\"hidden\"\n isResponsive={isResponsive}\n {...props}\n >\n {icon && iconDir === 'start' && (\n <Icon\n name={icon}\n size={size}\n width={width}\n height={height}\n />\n )}\n <TextWrapper\n data-testid={`${ellipsisContent ? 'ellipsed' : 'normal'}-icon-wrapper-text`}\n >\n {children}\n </TextWrapper>\n {icon && iconDir === 'end' && (\n <Icon\n name={icon}\n size={size}\n width={width}\n height={height}\n />\n )}\n </Container>\n );\n};\n"],"names":["EllipsisContent","jsxs","Container","jsx","Icon"],"mappings":";;;;;;;;;AAKO,MAAM,cAAc,CAAC;AAAA,EAC1B,IAAA;AAAA,EACA,OAAA,GAAU,OAAA;AAAA,EACV,IAAA,GAAO,IAAA;AAAA,EACP,KAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,eAAA,GAAkB,IAAA;AAAA,EAClB,GAAA,GAAM,IAAA;AAAA,EACN,YAAA,GAAe,IAAA;AAAA,EACf,GAAG;AACL,CAAA,KAAwB;AACtB,EAAA,MAAM,WAAA,GAAc,kBAAkBA,+BAAA,GAAkB,KAAA;AACxD,EAAA,uBACEC,eAAA;AAAA,IAACC,mBAAA;AAAA,IAAA;AAAA,MACC,WAAA,EAAY,YAAA;AAAA,MACZ,GAAA;AAAA,MACA,QAAA,EAAS,QAAA;AAAA,MACT,YAAA;AAAA,MACC,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA,QAAA,IAAA,IAAQ,YAAY,OAAA,oBACnBC,cAAA;AAAA,UAACC,SAAA;AAAA,UAAA;AAAA,YACC,IAAA,EAAM,IAAA;AAAA,YACN,IAAA;AAAA,YACA,KAAA;AAAA,YACA;AAAA;AAAA,SACF;AAAA,wBAEFD,cAAA;AAAA,UAAC,WAAA;AAAA,UAAA;AAAA,YACC,aAAA,EAAa,CAAA,EAAG,eAAA,GAAkB,UAAA,GAAa,QAAQ,CAAA,kBAAA,CAAA;AAAA,YAEtD;AAAA;AAAA,SACH;AAAA,QACC,IAAA,IAAQ,YAAY,KAAA,oBACnBA,cAAA;AAAA,UAACC,SAAA;AAAA,UAAA;AAAA,YACC,IAAA,EAAM,IAAA;AAAA,YACN,IAAA;AAAA,YACA,KAAA;AAAA,YACA;AAAA;AAAA;AACF;AAAA;AAAA,GAEJ;AAEJ;;;;"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../../src/components/IconWrapper/IconWrapper.tsx"],"sourcesContent":["import { Container } from '@/components/Container';\nimport { EllipsisContent } from '@/components/EllipsisContent';\nimport { Icon } from '@/components/Icon';\nimport { IconWrapperProps } from './IconWrapper.types';\n\nexport const IconWrapper = ({\n icon,\n iconDir = 'start',\n size = 'sm',\n width,\n height,\n children,\n ellipsisContent = true,\n tooltipProps,\n gap = 'sm',\n isResponsive = true,\n ...props\n}: IconWrapperProps) => {\n return (\n <Container\n orientation=\"horizontal\"\n gap={gap}\n overflow=\"hidden\"\n isResponsive={isResponsive}\n {...props}\n >\n {icon && iconDir === 'start' && (\n <Icon\n name={icon}\n size={size}\n width={width}\n height={height}\n />\n )}\n {ellipsisContent ? (\n <EllipsisContent\n data-testid=\"ellipsed-icon-wrapper-text\"\n tooltipProps={tooltipProps}\n >\n {children}\n </EllipsisContent>\n ) : (\n <div data-testid=\"normal-icon-wrapper-text\">{children}</div>\n )}\n {icon && iconDir === 'end' && (\n <Icon\n name={icon}\n size={size}\n width={width}\n height={height}\n />\n )}\n </Container>\n );\n};\n"],"names":["jsxs","Container","jsx","Icon","EllipsisContent"],"mappings":";;;;;;;;;AAKO,MAAM,cAAc,CAAC;AAAA,EAC1B,IAAA;AAAA,EACA,OAAA,GAAU,OAAA;AAAA,EACV,IAAA,GAAO,IAAA;AAAA,EACP,KAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,eAAA,GAAkB,IAAA;AAAA,EAClB,YAAA;AAAA,EACA,GAAA,GAAM,IAAA;AAAA,EACN,YAAA,GAAe,IAAA;AAAA,EACf,GAAG;AACL,CAAA,KAAwB;AACtB,EAAA,uBACEA,eAAA;AAAA,IAACC,mBAAA;AAAA,IAAA;AAAA,MACC,WAAA,EAAY,YAAA;AAAA,MACZ,GAAA;AAAA,MACA,QAAA,EAAS,QAAA;AAAA,MACT,YAAA;AAAA,MACC,GAAG,KAAA;AAAA,MAEH,QAAA,EAAA;AAAA,QAAA,IAAA,IAAQ,YAAY,OAAA,oBACnBC,cAAA;AAAA,UAACC,SAAA;AAAA,UAAA;AAAA,YACC,IAAA,EAAM,IAAA;AAAA,YACN,IAAA;AAAA,YACA,KAAA;AAAA,YACA;AAAA;AAAA,SACF;AAAA,QAED,eAAA,mBACCD,cAAA;AAAA,UAACE,+BAAA;AAAA,UAAA;AAAA,YACC,aAAA,EAAY,4BAAA;AAAA,YACZ,YAAA;AAAA,YAEC;AAAA;AAAA,SACH,mBAEAF,cAAA,CAAC,KAAA,EAAA,EAAI,aAAA,EAAY,4BAA4B,QAAA,EAAS,CAAA;AAAA,QAEvD,IAAA,IAAQ,YAAY,KAAA,oBACnBA,cAAA;AAAA,UAACC,SAAA;AAAA,UAAA;AAAA,YACC,IAAA,EAAM,IAAA;AAAA,YACN,IAAA;AAAA,YACA,KAAA;AAAA,YACA;AAAA;AAAA;AACF;AAAA;AAAA,GAEJ;AAEJ;;;;"}