@leafygreen-ui/icon 11.6.1 → 11.9.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 (694) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/README.md +60 -12
  3. package/dist/ActivityFeed.js +1 -1
  4. package/dist/ActivityFeed.js.map +1 -1
  5. package/dist/AddFile.js +1 -1
  6. package/dist/AddFile.js.map +1 -1
  7. package/dist/Apps.js +1 -1
  8. package/dist/Apps.js.map +1 -1
  9. package/dist/Array.js +1 -1
  10. package/dist/Array.js.map +1 -1
  11. package/dist/ArrowDown.js +1 -1
  12. package/dist/ArrowDown.js.map +1 -1
  13. package/dist/ArrowLeft.js +1 -1
  14. package/dist/ArrowLeft.js.map +1 -1
  15. package/dist/ArrowRight.js +1 -1
  16. package/dist/ArrowRight.js.map +1 -1
  17. package/dist/ArrowUp.js +1 -1
  18. package/dist/ArrowUp.js.map +1 -1
  19. package/dist/Beaker.js +1 -1
  20. package/dist/Beaker.js.map +1 -1
  21. package/dist/Bell.js +1 -1
  22. package/dist/Bell.js.map +1 -1
  23. package/dist/Building.js +1 -1
  24. package/dist/Building.js.map +1 -1
  25. package/dist/Bulb.js +1 -1
  26. package/dist/Bulb.js.map +1 -1
  27. package/dist/Calendar.js +1 -1
  28. package/dist/Calendar.js.map +1 -1
  29. package/dist/CaretDown.js +1 -1
  30. package/dist/CaretDown.js.map +1 -1
  31. package/dist/CaretLeft.js +1 -1
  32. package/dist/CaretLeft.js.map +1 -1
  33. package/dist/CaretRight.js +1 -1
  34. package/dist/CaretRight.js.map +1 -1
  35. package/dist/CaretUp.js +1 -1
  36. package/dist/CaretUp.js.map +1 -1
  37. package/dist/Charts.js +1 -1
  38. package/dist/Charts.js.map +1 -1
  39. package/dist/Checkmark.js +1 -1
  40. package/dist/Checkmark.js.map +1 -1
  41. package/dist/CheckmarkWithCircle.js +1 -1
  42. package/dist/CheckmarkWithCircle.js.map +1 -1
  43. package/dist/ChevronDown.js +1 -1
  44. package/dist/ChevronDown.js.map +1 -1
  45. package/dist/ChevronLeft.js +1 -1
  46. package/dist/ChevronLeft.js.map +1 -1
  47. package/dist/ChevronRight.js +1 -1
  48. package/dist/ChevronRight.js.map +1 -1
  49. package/dist/ChevronUp.js +1 -1
  50. package/dist/ChevronUp.js.map +1 -1
  51. package/dist/Clock.js +2 -0
  52. package/dist/Clock.js.map +1 -0
  53. package/dist/ClockWithArrow.js +2 -0
  54. package/dist/ClockWithArrow.js.map +1 -0
  55. package/dist/Clone.js +1 -1
  56. package/dist/Clone.js.map +1 -1
  57. package/dist/Cloud.js +1 -1
  58. package/dist/Cloud.js.map +1 -1
  59. package/dist/Code.js +1 -1
  60. package/dist/Code.js.map +1 -1
  61. package/dist/Connect.js +1 -1
  62. package/dist/Connect.js.map +1 -1
  63. package/dist/Copy.js +1 -1
  64. package/dist/Copy.js.map +1 -1
  65. package/dist/CreditCard.js +1 -1
  66. package/dist/CreditCard.js.map +1 -1
  67. package/dist/CurlyBraces.js +1 -1
  68. package/dist/CurlyBraces.js.map +1 -1
  69. package/dist/Cursor.js +2 -0
  70. package/dist/Cursor.js.map +1 -0
  71. package/dist/Database.js +1 -1
  72. package/dist/Database.js.map +1 -1
  73. package/dist/Diagram.js +1 -1
  74. package/dist/Diagram.js.map +1 -1
  75. package/dist/Diagram2.js +2 -0
  76. package/dist/Diagram2.js.map +1 -0
  77. package/dist/Diagram3.js +2 -0
  78. package/dist/Diagram3.js.map +1 -0
  79. package/dist/Disconnect.js +1 -1
  80. package/dist/Disconnect.js.map +1 -1
  81. package/dist/Download.js +1 -1
  82. package/dist/Download.js.map +1 -1
  83. package/dist/Edit.js +1 -1
  84. package/dist/Edit.js.map +1 -1
  85. package/dist/Ellipsis.js +1 -1
  86. package/dist/Ellipsis.js.map +1 -1
  87. package/dist/Export.js +1 -1
  88. package/dist/Export.js.map +1 -1
  89. package/dist/Favorite.js +1 -1
  90. package/dist/Favorite.js.map +1 -1
  91. package/dist/File.js +1 -1
  92. package/dist/File.js.map +1 -1
  93. package/dist/Filter.js +1 -1
  94. package/dist/Filter.js.map +1 -1
  95. package/dist/Folder.js +1 -1
  96. package/dist/Folder.js.map +1 -1
  97. package/dist/FullScreenEnter.js +1 -1
  98. package/dist/FullScreenEnter.js.map +1 -1
  99. package/dist/FullScreenExit.js +1 -1
  100. package/dist/FullScreenExit.js.map +1 -1
  101. package/dist/GlobeAmericas.js +1 -1
  102. package/dist/GlobeAmericas.js.map +1 -1
  103. package/dist/GovernmentBuilding.js +1 -1
  104. package/dist/GovernmentBuilding.js.map +1 -1
  105. package/dist/Home.js +1 -1
  106. package/dist/Home.js.map +1 -1
  107. package/dist/ImportantWithCircle.js +1 -1
  108. package/dist/ImportantWithCircle.js.map +1 -1
  109. package/dist/InfoWithCircle.js +1 -1
  110. package/dist/InfoWithCircle.js.map +1 -1
  111. package/dist/InviteUser.js +1 -1
  112. package/dist/InviteUser.js.map +1 -1
  113. package/dist/Key.js +2 -0
  114. package/dist/Key.js.map +1 -0
  115. package/dist/Laptop.js +1 -1
  116. package/dist/Laptop.js.map +1 -1
  117. package/dist/Link.js +2 -0
  118. package/dist/Link.js.map +1 -0
  119. package/dist/Lock.js +1 -1
  120. package/dist/Lock.js.map +1 -1
  121. package/dist/MagnifyingGlass.js +1 -1
  122. package/dist/MagnifyingGlass.js.map +1 -1
  123. package/dist/Megaphone.js +1 -1
  124. package/dist/Megaphone.js.map +1 -1
  125. package/dist/Menu.js +1 -1
  126. package/dist/Menu.js.map +1 -1
  127. package/dist/Minus.js +1 -1
  128. package/dist/Minus.js.map +1 -1
  129. package/dist/NotAllowed.js +1 -1
  130. package/dist/NotAllowed.js.map +1 -1
  131. package/dist/Note.js +2 -0
  132. package/dist/Note.js.map +1 -0
  133. package/dist/OpenNewTab.js +1 -1
  134. package/dist/OpenNewTab.js.map +1 -1
  135. package/dist/Pause.js +1 -1
  136. package/dist/Pause.js.map +1 -1
  137. package/dist/Person.js +1 -1
  138. package/dist/Person.js.map +1 -1
  139. package/dist/PersonGroup.js +1 -1
  140. package/dist/PersonGroup.js.map +1 -1
  141. package/dist/PersonWithLock.js +1 -1
  142. package/dist/PersonWithLock.js.map +1 -1
  143. package/dist/Play.js +1 -1
  144. package/dist/Play.js.map +1 -1
  145. package/dist/Plus.js +1 -1
  146. package/dist/Plus.js.map +1 -1
  147. package/dist/PlusWithCircle.js +1 -1
  148. package/dist/PlusWithCircle.js.map +1 -1
  149. package/dist/QuestionMarkWithCircle.js +1 -1
  150. package/dist/QuestionMarkWithCircle.js.map +1 -1
  151. package/dist/Redo.js +2 -0
  152. package/dist/Redo.js.map +1 -0
  153. package/dist/Refresh.js +1 -1
  154. package/dist/Refresh.js.map +1 -1
  155. package/dist/ReplicaSet.js +2 -0
  156. package/dist/ReplicaSet.js.map +1 -0
  157. package/dist/Save.js +1 -1
  158. package/dist/Save.js.map +1 -1
  159. package/dist/Serverless.js +2 -0
  160. package/dist/Serverless.js.map +1 -0
  161. package/dist/Settings.js +1 -1
  162. package/dist/Settings.js.map +1 -1
  163. package/dist/ShardedCluster.js +2 -0
  164. package/dist/ShardedCluster.js.map +1 -0
  165. package/dist/Shell.js +1 -1
  166. package/dist/Shell.js.map +1 -1
  167. package/dist/SortAscending.js +1 -1
  168. package/dist/SortAscending.js.map +1 -1
  169. package/dist/SortDescending.js +1 -1
  170. package/dist/SortDescending.js.map +1 -1
  171. package/dist/SplitHorizontal.js +2 -0
  172. package/dist/SplitHorizontal.js.map +1 -0
  173. package/dist/SplitVertical.js +2 -0
  174. package/dist/SplitVertical.js.map +1 -0
  175. package/dist/Stitch.js +1 -1
  176. package/dist/Stitch.js.map +1 -1
  177. package/dist/Support.js +1 -1
  178. package/dist/Support.js.map +1 -1
  179. package/dist/Sweep.js +2 -0
  180. package/dist/Sweep.js.map +1 -0
  181. package/dist/Table.js +1 -1
  182. package/dist/Table.js.map +1 -1
  183. package/dist/TimeSeries.js +1 -1
  184. package/dist/TimeSeries.js.map +1 -1
  185. package/dist/Trash.js +1 -1
  186. package/dist/Trash.js.map +1 -1
  187. package/dist/Undo.js +2 -0
  188. package/dist/Undo.js.map +1 -0
  189. package/dist/University.js +1 -1
  190. package/dist/University.js.map +1 -1
  191. package/dist/Unlock.js +1 -1
  192. package/dist/Unlock.js.map +1 -1
  193. package/dist/Unsorted.js +1 -1
  194. package/dist/Unsorted.js.map +1 -1
  195. package/dist/UpDownCarets.js +1 -1
  196. package/dist/UpDownCarets.js.map +1 -1
  197. package/dist/Upload.js +1 -1
  198. package/dist/Upload.js.map +1 -1
  199. package/dist/VerticalEllipsis.js +1 -1
  200. package/dist/VerticalEllipsis.js.map +1 -1
  201. package/dist/Visibility.js +1 -1
  202. package/dist/Visibility.js.map +1 -1
  203. package/dist/VisibilityOff.js +1 -1
  204. package/dist/VisibilityOff.js.map +1 -1
  205. package/dist/Warning.js +1 -1
  206. package/dist/Warning.js.map +1 -1
  207. package/dist/X.js +1 -1
  208. package/dist/X.js.map +1 -1
  209. package/dist/XWithCircle.js +1 -1
  210. package/dist/XWithCircle.js.map +1 -1
  211. package/dist/createGlyphComponent.d.ts +7 -0
  212. package/dist/createGlyphComponent.d.ts.map +1 -1
  213. package/dist/createIconComponent.d.ts +5 -0
  214. package/dist/createIconComponent.d.ts.map +1 -1
  215. package/dist/esm/ActivityFeed.js +1 -1
  216. package/dist/esm/ActivityFeed.js.map +1 -1
  217. package/dist/esm/AddFile.js +1 -1
  218. package/dist/esm/AddFile.js.map +1 -1
  219. package/dist/esm/Apps.js +1 -1
  220. package/dist/esm/Apps.js.map +1 -1
  221. package/dist/esm/Array.js +1 -1
  222. package/dist/esm/Array.js.map +1 -1
  223. package/dist/esm/ArrowDown.js +1 -1
  224. package/dist/esm/ArrowDown.js.map +1 -1
  225. package/dist/esm/ArrowLeft.js +1 -1
  226. package/dist/esm/ArrowLeft.js.map +1 -1
  227. package/dist/esm/ArrowRight.js +1 -1
  228. package/dist/esm/ArrowRight.js.map +1 -1
  229. package/dist/esm/ArrowUp.js +1 -1
  230. package/dist/esm/ArrowUp.js.map +1 -1
  231. package/dist/esm/Beaker.js +1 -1
  232. package/dist/esm/Beaker.js.map +1 -1
  233. package/dist/esm/Bell.js +1 -1
  234. package/dist/esm/Bell.js.map +1 -1
  235. package/dist/esm/Building.js +1 -1
  236. package/dist/esm/Building.js.map +1 -1
  237. package/dist/esm/Bulb.js +1 -1
  238. package/dist/esm/Bulb.js.map +1 -1
  239. package/dist/esm/Calendar.js +1 -1
  240. package/dist/esm/Calendar.js.map +1 -1
  241. package/dist/esm/CaretDown.js +1 -1
  242. package/dist/esm/CaretDown.js.map +1 -1
  243. package/dist/esm/CaretLeft.js +1 -1
  244. package/dist/esm/CaretLeft.js.map +1 -1
  245. package/dist/esm/CaretRight.js +1 -1
  246. package/dist/esm/CaretRight.js.map +1 -1
  247. package/dist/esm/CaretUp.js +1 -1
  248. package/dist/esm/CaretUp.js.map +1 -1
  249. package/dist/esm/Charts.js +1 -1
  250. package/dist/esm/Charts.js.map +1 -1
  251. package/dist/esm/Checkmark.js +1 -1
  252. package/dist/esm/Checkmark.js.map +1 -1
  253. package/dist/esm/CheckmarkWithCircle.js +1 -1
  254. package/dist/esm/CheckmarkWithCircle.js.map +1 -1
  255. package/dist/esm/ChevronDown.js +1 -1
  256. package/dist/esm/ChevronDown.js.map +1 -1
  257. package/dist/esm/ChevronLeft.js +1 -1
  258. package/dist/esm/ChevronLeft.js.map +1 -1
  259. package/dist/esm/ChevronRight.js +1 -1
  260. package/dist/esm/ChevronRight.js.map +1 -1
  261. package/dist/esm/ChevronUp.js +1 -1
  262. package/dist/esm/ChevronUp.js.map +1 -1
  263. package/dist/esm/Clock.js +2 -0
  264. package/dist/esm/Clock.js.map +1 -0
  265. package/dist/esm/ClockWithArrow.js +2 -0
  266. package/dist/esm/ClockWithArrow.js.map +1 -0
  267. package/dist/esm/Clone.js +1 -1
  268. package/dist/esm/Clone.js.map +1 -1
  269. package/dist/esm/Cloud.js +1 -1
  270. package/dist/esm/Cloud.js.map +1 -1
  271. package/dist/esm/Code.js +1 -1
  272. package/dist/esm/Code.js.map +1 -1
  273. package/dist/esm/Connect.js +1 -1
  274. package/dist/esm/Connect.js.map +1 -1
  275. package/dist/esm/Copy.js +1 -1
  276. package/dist/esm/Copy.js.map +1 -1
  277. package/dist/esm/CreditCard.js +1 -1
  278. package/dist/esm/CreditCard.js.map +1 -1
  279. package/dist/esm/CurlyBraces.js +1 -1
  280. package/dist/esm/CurlyBraces.js.map +1 -1
  281. package/dist/esm/Cursor.js +2 -0
  282. package/dist/esm/Cursor.js.map +1 -0
  283. package/dist/esm/Database.js +1 -1
  284. package/dist/esm/Database.js.map +1 -1
  285. package/dist/esm/Diagram.js +1 -1
  286. package/dist/esm/Diagram.js.map +1 -1
  287. package/dist/esm/Diagram2.js +2 -0
  288. package/dist/esm/Diagram2.js.map +1 -0
  289. package/dist/esm/Diagram3.js +2 -0
  290. package/dist/esm/Diagram3.js.map +1 -0
  291. package/dist/esm/Disconnect.js +1 -1
  292. package/dist/esm/Disconnect.js.map +1 -1
  293. package/dist/esm/Download.js +1 -1
  294. package/dist/esm/Download.js.map +1 -1
  295. package/dist/esm/Edit.js +1 -1
  296. package/dist/esm/Edit.js.map +1 -1
  297. package/dist/esm/Ellipsis.js +1 -1
  298. package/dist/esm/Ellipsis.js.map +1 -1
  299. package/dist/esm/Export.js +1 -1
  300. package/dist/esm/Export.js.map +1 -1
  301. package/dist/esm/Favorite.js +1 -1
  302. package/dist/esm/Favorite.js.map +1 -1
  303. package/dist/esm/File.js +1 -1
  304. package/dist/esm/File.js.map +1 -1
  305. package/dist/esm/Filter.js +1 -1
  306. package/dist/esm/Filter.js.map +1 -1
  307. package/dist/esm/Folder.js +1 -1
  308. package/dist/esm/Folder.js.map +1 -1
  309. package/dist/esm/FullScreenEnter.js +1 -1
  310. package/dist/esm/FullScreenEnter.js.map +1 -1
  311. package/dist/esm/FullScreenExit.js +1 -1
  312. package/dist/esm/FullScreenExit.js.map +1 -1
  313. package/dist/esm/GlobeAmericas.js +1 -1
  314. package/dist/esm/GlobeAmericas.js.map +1 -1
  315. package/dist/esm/GovernmentBuilding.js +1 -1
  316. package/dist/esm/GovernmentBuilding.js.map +1 -1
  317. package/dist/esm/Home.js +1 -1
  318. package/dist/esm/Home.js.map +1 -1
  319. package/dist/esm/ImportantWithCircle.js +1 -1
  320. package/dist/esm/ImportantWithCircle.js.map +1 -1
  321. package/dist/esm/InfoWithCircle.js +1 -1
  322. package/dist/esm/InfoWithCircle.js.map +1 -1
  323. package/dist/esm/InviteUser.js +1 -1
  324. package/dist/esm/InviteUser.js.map +1 -1
  325. package/dist/esm/Key.js +2 -0
  326. package/dist/esm/Key.js.map +1 -0
  327. package/dist/esm/Laptop.js +1 -1
  328. package/dist/esm/Laptop.js.map +1 -1
  329. package/dist/esm/Link.js +2 -0
  330. package/dist/esm/Link.js.map +1 -0
  331. package/dist/esm/Lock.js +1 -1
  332. package/dist/esm/Lock.js.map +1 -1
  333. package/dist/esm/MagnifyingGlass.js +1 -1
  334. package/dist/esm/MagnifyingGlass.js.map +1 -1
  335. package/dist/esm/Megaphone.js +1 -1
  336. package/dist/esm/Megaphone.js.map +1 -1
  337. package/dist/esm/Menu.js +1 -1
  338. package/dist/esm/Menu.js.map +1 -1
  339. package/dist/esm/Minus.js +1 -1
  340. package/dist/esm/Minus.js.map +1 -1
  341. package/dist/esm/NotAllowed.js +1 -1
  342. package/dist/esm/NotAllowed.js.map +1 -1
  343. package/dist/esm/Note.js +2 -0
  344. package/dist/esm/Note.js.map +1 -0
  345. package/dist/esm/OpenNewTab.js +1 -1
  346. package/dist/esm/OpenNewTab.js.map +1 -1
  347. package/dist/esm/Pause.js +1 -1
  348. package/dist/esm/Pause.js.map +1 -1
  349. package/dist/esm/Person.js +1 -1
  350. package/dist/esm/Person.js.map +1 -1
  351. package/dist/esm/PersonGroup.js +1 -1
  352. package/dist/esm/PersonGroup.js.map +1 -1
  353. package/dist/esm/PersonWithLock.js +1 -1
  354. package/dist/esm/PersonWithLock.js.map +1 -1
  355. package/dist/esm/Play.js +1 -1
  356. package/dist/esm/Play.js.map +1 -1
  357. package/dist/esm/Plus.js +1 -1
  358. package/dist/esm/Plus.js.map +1 -1
  359. package/dist/esm/PlusWithCircle.js +1 -1
  360. package/dist/esm/PlusWithCircle.js.map +1 -1
  361. package/dist/esm/QuestionMarkWithCircle.js +1 -1
  362. package/dist/esm/QuestionMarkWithCircle.js.map +1 -1
  363. package/dist/esm/Redo.js +2 -0
  364. package/dist/esm/Redo.js.map +1 -0
  365. package/dist/esm/Refresh.js +1 -1
  366. package/dist/esm/Refresh.js.map +1 -1
  367. package/dist/esm/ReplicaSet.js +2 -0
  368. package/dist/esm/ReplicaSet.js.map +1 -0
  369. package/dist/esm/Save.js +1 -1
  370. package/dist/esm/Save.js.map +1 -1
  371. package/dist/esm/Serverless.js +2 -0
  372. package/dist/esm/Serverless.js.map +1 -0
  373. package/dist/esm/Settings.js +1 -1
  374. package/dist/esm/Settings.js.map +1 -1
  375. package/dist/esm/ShardedCluster.js +2 -0
  376. package/dist/esm/ShardedCluster.js.map +1 -0
  377. package/dist/esm/Shell.js +1 -1
  378. package/dist/esm/Shell.js.map +1 -1
  379. package/dist/esm/SortAscending.js +1 -1
  380. package/dist/esm/SortAscending.js.map +1 -1
  381. package/dist/esm/SortDescending.js +1 -1
  382. package/dist/esm/SortDescending.js.map +1 -1
  383. package/dist/esm/SplitHorizontal.js +2 -0
  384. package/dist/esm/SplitHorizontal.js.map +1 -0
  385. package/dist/esm/SplitVertical.js +2 -0
  386. package/dist/esm/SplitVertical.js.map +1 -0
  387. package/dist/esm/Stitch.js +1 -1
  388. package/dist/esm/Stitch.js.map +1 -1
  389. package/dist/esm/Support.js +1 -1
  390. package/dist/esm/Support.js.map +1 -1
  391. package/dist/esm/Sweep.js +2 -0
  392. package/dist/esm/Sweep.js.map +1 -0
  393. package/dist/esm/Table.js +1 -1
  394. package/dist/esm/Table.js.map +1 -1
  395. package/dist/esm/TimeSeries.js +1 -1
  396. package/dist/esm/TimeSeries.js.map +1 -1
  397. package/dist/esm/Trash.js +1 -1
  398. package/dist/esm/Trash.js.map +1 -1
  399. package/dist/esm/Undo.js +2 -0
  400. package/dist/esm/Undo.js.map +1 -0
  401. package/dist/esm/University.js +1 -1
  402. package/dist/esm/University.js.map +1 -1
  403. package/dist/esm/Unlock.js +1 -1
  404. package/dist/esm/Unlock.js.map +1 -1
  405. package/dist/esm/Unsorted.js +1 -1
  406. package/dist/esm/Unsorted.js.map +1 -1
  407. package/dist/esm/UpDownCarets.js +1 -1
  408. package/dist/esm/UpDownCarets.js.map +1 -1
  409. package/dist/esm/Upload.js +1 -1
  410. package/dist/esm/Upload.js.map +1 -1
  411. package/dist/esm/VerticalEllipsis.js +1 -1
  412. package/dist/esm/VerticalEllipsis.js.map +1 -1
  413. package/dist/esm/Visibility.js +1 -1
  414. package/dist/esm/Visibility.js.map +1 -1
  415. package/dist/esm/VisibilityOff.js +1 -1
  416. package/dist/esm/VisibilityOff.js.map +1 -1
  417. package/dist/esm/Warning.js +1 -1
  418. package/dist/esm/Warning.js.map +1 -1
  419. package/dist/esm/X.js +1 -1
  420. package/dist/esm/X.js.map +1 -1
  421. package/dist/esm/XWithCircle.js +1 -1
  422. package/dist/esm/XWithCircle.js.map +1 -1
  423. package/dist/esm/index.js +1 -1
  424. package/dist/esm/index.js.map +1 -1
  425. package/dist/generated/ActivityFeed.d.ts +2 -8
  426. package/dist/generated/ActivityFeed.d.ts.map +1 -1
  427. package/dist/generated/AddFile.d.ts +2 -8
  428. package/dist/generated/AddFile.d.ts.map +1 -1
  429. package/dist/generated/Apps.d.ts +2 -8
  430. package/dist/generated/Apps.d.ts.map +1 -1
  431. package/dist/generated/Array.d.ts +2 -8
  432. package/dist/generated/Array.d.ts.map +1 -1
  433. package/dist/generated/ArrowDown.d.ts +2 -8
  434. package/dist/generated/ArrowDown.d.ts.map +1 -1
  435. package/dist/generated/ArrowLeft.d.ts +2 -8
  436. package/dist/generated/ArrowLeft.d.ts.map +1 -1
  437. package/dist/generated/ArrowRight.d.ts +2 -8
  438. package/dist/generated/ArrowRight.d.ts.map +1 -1
  439. package/dist/generated/ArrowUp.d.ts +2 -8
  440. package/dist/generated/ArrowUp.d.ts.map +1 -1
  441. package/dist/generated/Beaker.d.ts +2 -8
  442. package/dist/generated/Beaker.d.ts.map +1 -1
  443. package/dist/generated/Bell.d.ts +2 -8
  444. package/dist/generated/Bell.d.ts.map +1 -1
  445. package/dist/generated/Building.d.ts +2 -8
  446. package/dist/generated/Building.d.ts.map +1 -1
  447. package/dist/generated/Bulb.d.ts +2 -8
  448. package/dist/generated/Bulb.d.ts.map +1 -1
  449. package/dist/generated/Calendar.d.ts +2 -8
  450. package/dist/generated/Calendar.d.ts.map +1 -1
  451. package/dist/generated/CaretDown.d.ts +2 -8
  452. package/dist/generated/CaretDown.d.ts.map +1 -1
  453. package/dist/generated/CaretLeft.d.ts +2 -8
  454. package/dist/generated/CaretLeft.d.ts.map +1 -1
  455. package/dist/generated/CaretRight.d.ts +2 -8
  456. package/dist/generated/CaretRight.d.ts.map +1 -1
  457. package/dist/generated/CaretUp.d.ts +2 -8
  458. package/dist/generated/CaretUp.d.ts.map +1 -1
  459. package/dist/generated/Charts.d.ts +2 -8
  460. package/dist/generated/Charts.d.ts.map +1 -1
  461. package/dist/generated/Checkmark.d.ts +2 -8
  462. package/dist/generated/Checkmark.d.ts.map +1 -1
  463. package/dist/generated/CheckmarkWithCircle.d.ts +2 -8
  464. package/dist/generated/CheckmarkWithCircle.d.ts.map +1 -1
  465. package/dist/generated/ChevronDown.d.ts +2 -8
  466. package/dist/generated/ChevronDown.d.ts.map +1 -1
  467. package/dist/generated/ChevronLeft.d.ts +2 -8
  468. package/dist/generated/ChevronLeft.d.ts.map +1 -1
  469. package/dist/generated/ChevronRight.d.ts +2 -8
  470. package/dist/generated/ChevronRight.d.ts.map +1 -1
  471. package/dist/generated/ChevronUp.d.ts +2 -8
  472. package/dist/generated/ChevronUp.d.ts.map +1 -1
  473. package/dist/generated/Clock.d.ts +17 -0
  474. package/dist/generated/Clock.d.ts.map +1 -0
  475. package/dist/generated/ClockWithArrow.d.ts +17 -0
  476. package/dist/generated/ClockWithArrow.d.ts.map +1 -0
  477. package/dist/generated/Clone.d.ts +2 -8
  478. package/dist/generated/Clone.d.ts.map +1 -1
  479. package/dist/generated/Cloud.d.ts +2 -8
  480. package/dist/generated/Cloud.d.ts.map +1 -1
  481. package/dist/generated/Code.d.ts +2 -8
  482. package/dist/generated/Code.d.ts.map +1 -1
  483. package/dist/generated/Connect.d.ts +2 -8
  484. package/dist/generated/Connect.d.ts.map +1 -1
  485. package/dist/generated/Copy.d.ts +2 -8
  486. package/dist/generated/Copy.d.ts.map +1 -1
  487. package/dist/generated/CreditCard.d.ts +2 -8
  488. package/dist/generated/CreditCard.d.ts.map +1 -1
  489. package/dist/generated/CurlyBraces.d.ts +2 -8
  490. package/dist/generated/CurlyBraces.d.ts.map +1 -1
  491. package/dist/generated/Cursor.d.ts +17 -0
  492. package/dist/generated/Cursor.d.ts.map +1 -0
  493. package/dist/generated/Database.d.ts +2 -8
  494. package/dist/generated/Database.d.ts.map +1 -1
  495. package/dist/generated/Diagram.d.ts +2 -8
  496. package/dist/generated/Diagram.d.ts.map +1 -1
  497. package/dist/generated/Diagram2.d.ts +17 -0
  498. package/dist/generated/Diagram2.d.ts.map +1 -0
  499. package/dist/generated/Diagram3.d.ts +17 -0
  500. package/dist/generated/Diagram3.d.ts.map +1 -0
  501. package/dist/generated/Disconnect.d.ts +2 -8
  502. package/dist/generated/Disconnect.d.ts.map +1 -1
  503. package/dist/generated/Download.d.ts +2 -8
  504. package/dist/generated/Download.d.ts.map +1 -1
  505. package/dist/generated/Edit.d.ts +2 -8
  506. package/dist/generated/Edit.d.ts.map +1 -1
  507. package/dist/generated/Ellipsis.d.ts +2 -8
  508. package/dist/generated/Ellipsis.d.ts.map +1 -1
  509. package/dist/generated/Export.d.ts +2 -8
  510. package/dist/generated/Export.d.ts.map +1 -1
  511. package/dist/generated/Favorite.d.ts +2 -8
  512. package/dist/generated/Favorite.d.ts.map +1 -1
  513. package/dist/generated/File.d.ts +2 -8
  514. package/dist/generated/File.d.ts.map +1 -1
  515. package/dist/generated/Filter.d.ts +2 -8
  516. package/dist/generated/Filter.d.ts.map +1 -1
  517. package/dist/generated/Folder.d.ts +2 -8
  518. package/dist/generated/Folder.d.ts.map +1 -1
  519. package/dist/generated/FullScreenEnter.d.ts +2 -8
  520. package/dist/generated/FullScreenEnter.d.ts.map +1 -1
  521. package/dist/generated/FullScreenExit.d.ts +2 -8
  522. package/dist/generated/FullScreenExit.d.ts.map +1 -1
  523. package/dist/generated/GlobeAmericas.d.ts +2 -8
  524. package/dist/generated/GlobeAmericas.d.ts.map +1 -1
  525. package/dist/generated/GovernmentBuilding.d.ts +2 -8
  526. package/dist/generated/GovernmentBuilding.d.ts.map +1 -1
  527. package/dist/generated/Home.d.ts +2 -8
  528. package/dist/generated/Home.d.ts.map +1 -1
  529. package/dist/generated/ImportantWithCircle.d.ts +2 -8
  530. package/dist/generated/ImportantWithCircle.d.ts.map +1 -1
  531. package/dist/generated/InfoWithCircle.d.ts +2 -8
  532. package/dist/generated/InfoWithCircle.d.ts.map +1 -1
  533. package/dist/generated/InviteUser.d.ts +2 -8
  534. package/dist/generated/InviteUser.d.ts.map +1 -1
  535. package/dist/generated/Key.d.ts +17 -0
  536. package/dist/generated/Key.d.ts.map +1 -0
  537. package/dist/generated/Laptop.d.ts +2 -8
  538. package/dist/generated/Laptop.d.ts.map +1 -1
  539. package/dist/generated/Link.d.ts +17 -0
  540. package/dist/generated/Link.d.ts.map +1 -0
  541. package/dist/generated/Lock.d.ts +2 -8
  542. package/dist/generated/Lock.d.ts.map +1 -1
  543. package/dist/generated/MagnifyingGlass.d.ts +2 -8
  544. package/dist/generated/MagnifyingGlass.d.ts.map +1 -1
  545. package/dist/generated/Megaphone.d.ts +2 -8
  546. package/dist/generated/Megaphone.d.ts.map +1 -1
  547. package/dist/generated/Menu.d.ts +2 -8
  548. package/dist/generated/Menu.d.ts.map +1 -1
  549. package/dist/generated/Minus.d.ts +2 -8
  550. package/dist/generated/Minus.d.ts.map +1 -1
  551. package/dist/generated/NotAllowed.d.ts +2 -8
  552. package/dist/generated/NotAllowed.d.ts.map +1 -1
  553. package/dist/generated/Note.d.ts +17 -0
  554. package/dist/generated/Note.d.ts.map +1 -0
  555. package/dist/generated/OpenNewTab.d.ts +2 -8
  556. package/dist/generated/OpenNewTab.d.ts.map +1 -1
  557. package/dist/generated/Pause.d.ts +2 -8
  558. package/dist/generated/Pause.d.ts.map +1 -1
  559. package/dist/generated/Person.d.ts +2 -8
  560. package/dist/generated/Person.d.ts.map +1 -1
  561. package/dist/generated/PersonGroup.d.ts +2 -8
  562. package/dist/generated/PersonGroup.d.ts.map +1 -1
  563. package/dist/generated/PersonWithLock.d.ts +2 -8
  564. package/dist/generated/PersonWithLock.d.ts.map +1 -1
  565. package/dist/generated/Play.d.ts +2 -8
  566. package/dist/generated/Play.d.ts.map +1 -1
  567. package/dist/generated/Plus.d.ts +2 -8
  568. package/dist/generated/Plus.d.ts.map +1 -1
  569. package/dist/generated/PlusWithCircle.d.ts +2 -8
  570. package/dist/generated/PlusWithCircle.d.ts.map +1 -1
  571. package/dist/generated/QuestionMarkWithCircle.d.ts +2 -8
  572. package/dist/generated/QuestionMarkWithCircle.d.ts.map +1 -1
  573. package/dist/generated/Redo.d.ts +17 -0
  574. package/dist/generated/Redo.d.ts.map +1 -0
  575. package/dist/generated/Refresh.d.ts +2 -8
  576. package/dist/generated/Refresh.d.ts.map +1 -1
  577. package/dist/generated/ReplicaSet.d.ts +17 -0
  578. package/dist/generated/ReplicaSet.d.ts.map +1 -0
  579. package/dist/generated/Save.d.ts +2 -8
  580. package/dist/generated/Save.d.ts.map +1 -1
  581. package/dist/generated/Serverless.d.ts +17 -0
  582. package/dist/generated/Serverless.d.ts.map +1 -0
  583. package/dist/generated/Settings.d.ts +2 -8
  584. package/dist/generated/Settings.d.ts.map +1 -1
  585. package/dist/generated/ShardedCluster.d.ts +17 -0
  586. package/dist/generated/ShardedCluster.d.ts.map +1 -0
  587. package/dist/generated/Shell.d.ts +2 -8
  588. package/dist/generated/Shell.d.ts.map +1 -1
  589. package/dist/generated/SortAscending.d.ts +2 -8
  590. package/dist/generated/SortAscending.d.ts.map +1 -1
  591. package/dist/generated/SortDescending.d.ts +2 -8
  592. package/dist/generated/SortDescending.d.ts.map +1 -1
  593. package/dist/generated/SplitHorizontal.d.ts +17 -0
  594. package/dist/generated/SplitHorizontal.d.ts.map +1 -0
  595. package/dist/generated/SplitVertical.d.ts +17 -0
  596. package/dist/generated/SplitVertical.d.ts.map +1 -0
  597. package/dist/generated/Stitch.d.ts +2 -8
  598. package/dist/generated/Stitch.d.ts.map +1 -1
  599. package/dist/generated/Support.d.ts +2 -8
  600. package/dist/generated/Support.d.ts.map +1 -1
  601. package/dist/generated/Sweep.d.ts +17 -0
  602. package/dist/generated/Sweep.d.ts.map +1 -0
  603. package/dist/generated/Table.d.ts +2 -8
  604. package/dist/generated/Table.d.ts.map +1 -1
  605. package/dist/generated/TimeSeries.d.ts +2 -8
  606. package/dist/generated/TimeSeries.d.ts.map +1 -1
  607. package/dist/generated/Trash.d.ts +2 -8
  608. package/dist/generated/Trash.d.ts.map +1 -1
  609. package/dist/generated/Undo.d.ts +17 -0
  610. package/dist/generated/Undo.d.ts.map +1 -0
  611. package/dist/generated/University.d.ts +2 -8
  612. package/dist/generated/University.d.ts.map +1 -1
  613. package/dist/generated/Unlock.d.ts +2 -8
  614. package/dist/generated/Unlock.d.ts.map +1 -1
  615. package/dist/generated/Unsorted.d.ts +2 -8
  616. package/dist/generated/Unsorted.d.ts.map +1 -1
  617. package/dist/generated/UpDownCarets.d.ts +2 -8
  618. package/dist/generated/UpDownCarets.d.ts.map +1 -1
  619. package/dist/generated/Upload.d.ts +2 -8
  620. package/dist/generated/Upload.d.ts.map +1 -1
  621. package/dist/generated/VerticalEllipsis.d.ts +2 -8
  622. package/dist/generated/VerticalEllipsis.d.ts.map +1 -1
  623. package/dist/generated/Visibility.d.ts +2 -8
  624. package/dist/generated/Visibility.d.ts.map +1 -1
  625. package/dist/generated/VisibilityOff.d.ts +2 -8
  626. package/dist/generated/VisibilityOff.d.ts.map +1 -1
  627. package/dist/generated/Warning.d.ts +2 -8
  628. package/dist/generated/Warning.d.ts.map +1 -1
  629. package/dist/generated/X.d.ts +2 -8
  630. package/dist/generated/X.d.ts.map +1 -1
  631. package/dist/generated/XWithCircle.d.ts +2 -8
  632. package/dist/generated/XWithCircle.d.ts.map +1 -1
  633. package/dist/glyphs/index.d.ts +1 -2
  634. package/dist/glyphs/index.d.ts.map +1 -1
  635. package/dist/index.d.ts +3 -1
  636. package/dist/index.d.ts.map +1 -1
  637. package/dist/index.js +1 -1
  638. package/dist/index.js.map +1 -1
  639. package/dist/types/LGGlyph.d.ts +7 -0
  640. package/dist/types/LGGlyph.d.ts.map +1 -0
  641. package/dist/types/SVGR.d.ts +7 -0
  642. package/dist/types/SVGR.d.ts.map +1 -0
  643. package/dist/types/index.d.ts +3 -0
  644. package/dist/types/index.d.ts.map +1 -0
  645. package/package.json +2 -2
  646. package/src/Icon.spec.tsx +72 -28
  647. package/src/Icon.story.tsx +12 -9
  648. package/src/createGlyphComponent.tsx +7 -0
  649. package/src/createIconComponent.tsx +6 -1
  650. package/src/generated/Clock.tsx +68 -0
  651. package/src/generated/ClockWithArrow.tsx +70 -0
  652. package/src/generated/Cursor.tsx +68 -0
  653. package/src/generated/Diagram2.tsx +66 -0
  654. package/src/generated/Diagram3.tsx +68 -0
  655. package/src/generated/Key.tsx +68 -0
  656. package/src/generated/Link.tsx +70 -0
  657. package/src/generated/Note.tsx +76 -0
  658. package/src/generated/Redo.tsx +66 -0
  659. package/src/generated/ReplicaSet.tsx +68 -0
  660. package/src/generated/Serverless.tsx +66 -0
  661. package/src/generated/ShardedCluster.tsx +68 -0
  662. package/src/generated/SplitHorizontal.tsx +68 -0
  663. package/src/generated/SplitVertical.tsx +68 -0
  664. package/src/generated/Sweep.tsx +68 -0
  665. package/src/generated/Undo.tsx +66 -0
  666. package/src/glyphs/Clock.svg +3 -0
  667. package/src/glyphs/ClockWithArrow.svg +4 -0
  668. package/src/glyphs/Cursor.svg +3 -0
  669. package/src/glyphs/Diagram2.svg +3 -0
  670. package/src/glyphs/Diagram3.svg +3 -0
  671. package/src/glyphs/Key.svg +3 -0
  672. package/src/glyphs/Link.svg +4 -0
  673. package/src/glyphs/Note.svg +5 -0
  674. package/src/glyphs/Redo.svg +3 -0
  675. package/src/glyphs/ReplicaSet.svg +3 -0
  676. package/src/glyphs/Serverless.svg +3 -0
  677. package/src/glyphs/ShardedCluster.svg +3 -0
  678. package/src/glyphs/SplitHorizontal.svg +3 -0
  679. package/src/glyphs/SplitVertical.svg +3 -0
  680. package/src/glyphs/Sweep.svg +3 -0
  681. package/src/glyphs/Undo.svg +3 -0
  682. package/src/glyphs/index.ts +34 -2
  683. package/src/index.ts +3 -1
  684. package/src/template.ts +4 -3
  685. package/src/types/LGGlyph.ts +8 -0
  686. package/src/types/SVGR.ts +8 -0
  687. package/src/types/index.ts +2 -0
  688. package/src/{svg.d.ts → types/svg.d.ts} +0 -0
  689. package/{typings → src/types}/svgr.d.ts +0 -0
  690. package/tsconfig.json +1 -1
  691. package/tsconfig.tsbuildinfo +1 -4598
  692. package/dist/types.d.ts +0 -15
  693. package/dist/types.d.ts.map +0 -1
  694. package/src/types.ts +0 -17
package/src/Icon.spec.tsx CHANGED
@@ -10,6 +10,7 @@ import { SVGR } from './types';
10
10
  import { createIconComponent, glyphs } from '.';
11
11
  import createGlyphComponent from './createGlyphComponent';
12
12
  import EditIcon from '@leafygreen-ui/icon/dist/Edit';
13
+ import { Size } from './glyphCommon';
13
14
 
14
15
  function getBaseName(filePath: string): string {
15
16
  return path.basename(filePath, path.extname(filePath));
@@ -85,58 +86,105 @@ describe('packages/Icon/glyphs/', () => {
85
86
  });
86
87
  });
87
88
 
88
- const text = 'Hello world';
89
+ const MyGlyph: SVGR.Component = props => (
90
+ <svg data-testid="my-glyph" {...props}></svg>
91
+ );
89
92
 
90
- // eslint-disable-next-line react/display-name
91
- const MyGlyph: SVGR.Component = () => <div>{text}</div>;
92
-
93
- describe('packages/Icon/createGlyphComponent createGlyphComponent()', () => {
93
+ describe('packages/Icon/createGlyphComponent', () => {
94
94
  const GlyphComponent = createGlyphComponent('MyGlyph', MyGlyph);
95
95
 
96
- test('createGlyphComponent returns a function', () => {
96
+ test('returns a function', () => {
97
97
  expect(typeof GlyphComponent).toBe('function');
98
98
  });
99
99
 
100
- test('The function returned by createGlyphComponent has the displayName: "MyGlyph"', () => {
100
+ test('returned function has correct display name', () => {
101
101
  expect(GlyphComponent.displayName).toBe('MyGlyph');
102
102
  });
103
103
 
104
- const { container } = render(<GlyphComponent />);
105
- const glyph = container.firstChild;
104
+ test('returned function renders the glyph specified', () => {
105
+ const { getByTestId } = render(<GlyphComponent />);
106
+ const glyph = getByTestId('my-glyph');
106
107
 
107
- test('The function returned by createGlyphComponent renders the glyph specified', () => {
108
108
  if (!typeIs.element(glyph)) {
109
109
  throw new Error('Glyph was not rendered');
110
110
  }
111
+ expect(glyph.nodeName.toLowerCase()).toBe('svg');
112
+ });
113
+
114
+ describe('returned funcion passes through props', () => {
115
+ test('`size` prop as number', () => {
116
+ const { getByTestId } = render(<GlyphComponent size={20} />);
117
+ const glyph = getByTestId('my-glyph');
118
+ expect(glyph).toHaveAttribute('height', '20');
119
+ expect(glyph).toHaveAttribute('width', '20');
120
+ });
111
121
 
112
- expect(glyph.nodeName.toLowerCase()).toBe('div');
113
- expect(glyph.textContent).toBe(text);
122
+ test('`size` prop as Size', () => {
123
+ const { getByTestId } = render(<GlyphComponent size={Size.Large} />);
124
+ const glyph = getByTestId('my-glyph');
125
+ expect(glyph).toHaveAttribute('height', '20');
126
+ expect(glyph).toHaveAttribute('width', '20');
127
+ });
128
+
129
+ test('`role`', () => {
130
+ const { getByTestId } = render(<GlyphComponent role="presentation" />);
131
+ const glyph = getByTestId('my-glyph');
132
+ expect(glyph).toHaveAttribute('role', 'presentation');
133
+ });
114
134
  });
115
135
  });
116
136
 
117
- const customGlyphs = { MyGlyph };
137
+ const customGlyphs = {
138
+ MyGlyph: createGlyphComponent('MyGlyph', MyGlyph),
139
+ };
118
140
 
119
141
  describe('packages/Icon/createIconComponent', () => {
120
142
  const IconComponent = createIconComponent(customGlyphs);
121
143
 
122
- test('createIconComponent returns a function', () => {
144
+ test('returns a function', () => {
123
145
  expect(typeof IconComponent).toBe('function');
124
146
  });
125
147
 
126
- test('The function returned by createIconComponent has the displayName: "Icon"', () => {
148
+ test('returned function has the displayName: "Icon"', () => {
127
149
  expect(IconComponent.displayName).toBe('Icon');
128
150
  });
129
151
 
130
- const renderedIcon = render(<IconComponent glyph="MyGlyph" />);
131
- const glyph = renderedIcon.container.firstChild;
152
+ test('returned funciton renders the glyph specified', () => {
153
+ const { getByTestId } = render(<IconComponent glyph="MyGlyph" />);
154
+ const glyph = getByTestId('my-glyph');
132
155
 
133
- test('The function returned by createIconComponent renders the glyph specified', () => {
134
156
  if (!typeIs.element(glyph)) {
135
157
  throw new Error('Glyph was not rendered');
136
158
  }
159
+ expect(glyph.nodeName.toLowerCase()).toBe('svg');
160
+ });
161
+
162
+ describe('returned funcion passes through props', () => {
163
+ test('`size` prop as number', () => {
164
+ const { getByTestId } = render(
165
+ <IconComponent glyph="MyGlyph" size={20} />,
166
+ );
167
+ const glyph = getByTestId('my-glyph');
168
+ expect(glyph).toHaveAttribute('height', '20');
169
+ expect(glyph).toHaveAttribute('width', '20');
170
+ });
137
171
 
138
- expect(glyph.nodeName.toLowerCase()).toBe('div');
139
- expect(glyph.textContent).toBe(text);
172
+ test('`size` prop as Size', () => {
173
+ const { getByTestId } = render(
174
+ <IconComponent glyph="MyGlyph" size={Size.Large} />,
175
+ );
176
+ const glyph = getByTestId('my-glyph');
177
+ expect(glyph).toHaveAttribute('height', '20');
178
+ expect(glyph).toHaveAttribute('width', '20');
179
+ });
180
+
181
+ test('`role`', () => {
182
+ const { getByTestId } = render(
183
+ <IconComponent glyph="MyGlyph" role="presentation" />,
184
+ );
185
+ const glyph = getByTestId('my-glyph');
186
+ expect(glyph).toHaveAttribute('role', 'presentation');
187
+ });
140
188
  });
141
189
  });
142
190
 
@@ -180,14 +228,10 @@ describe('Generated glyphs', () => {
180
228
  },
181
229
  );
182
230
 
183
- const [
184
- ,
185
- script,
186
- checksum,
187
- checkedContents,
188
- ] = /^\/\*.*@script ([^\n]*).*@checksum ([^\n]*).*\*\/\n(.*)$/s.exec(
189
- generatedFileContents,
190
- )!;
231
+ const [, script, checksum, checkedContents] =
232
+ /^\/\*.*@script ([^\n]*).*@checksum ([^\n]*).*\*\/\n(.*)$/s.exec(
233
+ generatedFileContents,
234
+ )!;
191
235
 
192
236
  const expectedChecksum = createHash('md5')
193
237
  .update(script)
@@ -3,6 +3,7 @@ import Icon, { glyphs, Size } from '.';
3
3
  import { css } from '@leafygreen-ui/emotion';
4
4
  import { storiesOf } from '@storybook/react';
5
5
  import { color, select } from '@storybook/addon-knobs';
6
+ import { uiColors } from '@leafygreen-ui/palette';
6
7
 
7
8
  const containerStyle = css`
8
9
  width: 150px;
@@ -20,20 +21,22 @@ const containerStyle = css`
20
21
 
21
22
  const textStyle = css`
22
23
  font-size: 12px;
23
- color: #babdbe;
24
+ color: ${uiColors.gray.base};
24
25
  margin-top: 0.5rem;
25
26
  `;
26
27
 
27
- storiesOf('Icons', module).add('Icon', () => {
28
+ storiesOf('Packages/Icons', module).add('Icon', () => {
28
29
  const fill = color('Fill', '#000000');
29
30
  const size = select('size', Object.values(Size), Size.Default);
30
31
 
31
- const renderGlyph = (glyph: string) => (
32
- <div key={glyph} className={containerStyle}>
33
- <Icon glyph={glyph} fill={fill} size={size} />
34
- <div className={textStyle}>{glyph}</div>
35
- </div>
32
+ return (
33
+ <>
34
+ {Object.keys(glyphs).map(glyph => (
35
+ <div key={glyph} className={containerStyle}>
36
+ <Icon glyph={glyph} fill={fill} size={size} />
37
+ <div className={textStyle}>{glyph}</div>
38
+ </div>
39
+ ))}
40
+ </>
36
41
  );
37
-
38
- return <>{Object.keys(glyphs).map(renderGlyph)}</>;
39
42
  });
@@ -4,6 +4,13 @@ import { SVGR, LGGlyph } from './types';
4
4
  import { css, cx } from '@leafygreen-ui/emotion';
5
5
  import { generateAccessibleProps, sizeMap, Size } from './glyphCommon';
6
6
 
7
+ /**
8
+ * Returns a single glyph component.
9
+ * Process custom glyphs to ensure consistent behavior between custom and built-in icons
10
+ * @param glyphName: string - the display name of the icon
11
+ * @param Glyph: SVGR.Component - the SVG icon component
12
+ * @returns LGGlyph.Component
13
+ */
7
14
  export default function createGlyphComponent(
8
15
  glyphName: string,
9
16
  Glyph: SVGR.Component,
@@ -11,8 +11,13 @@ export interface IconProps extends Omit<LGGlyph.ComponentProps, 'size'> {
11
11
 
12
12
  type GlyphObject = Record<string, LGGlyph.Component>;
13
13
 
14
+ /**
15
+ * Returns a single component with a `glyph` prop to select the glyph
16
+ * @param glyphs The set of glyphs
17
+ * @returns Icon component
18
+ */
14
19
  export default function createIconComponent<
15
- G extends GlyphObject = GlyphObject
20
+ G extends GlyphObject = GlyphObject,
16
21
  >(glyphs: G) {
17
22
  const Icon = ({ glyph, ...rest }: IconProps) => {
18
23
  const SVGComponent = glyphs[glyph];
@@ -0,0 +1,68 @@
1
+ /**
2
+ * This is a generated file. Do not modify it manually.
3
+ *
4
+ * @script ./node_modules/.bin/ts-node packages/icon/scripts/build.ts
5
+ * @checksum 867509eef46d330604af7224e7ceb53b
6
+ */
7
+ import * as React from 'react';
8
+ import PropTypes from 'prop-types';
9
+ import { css, cx } from '@leafygreen-ui/emotion';
10
+ import { generateAccessibleProps, sizeMap } from '../glyphCommon';
11
+ import { LGGlyph } from '../types';
12
+ export interface ClockProps extends LGGlyph.ComponentProps {}
13
+
14
+ const Clock = ({
15
+ className,
16
+ size = 16,
17
+ title,
18
+ ['aria-label']: ariaLabel,
19
+ ['aria-labelledby']: ariaLabelledby,
20
+ fill,
21
+ role = 'img',
22
+ ...props
23
+ }: ClockProps) => {
24
+ const fillStyle = css`
25
+ color: ${fill};
26
+ `;
27
+ const noFlexShrink = css`
28
+ flex-shrink: 0;
29
+ `;
30
+ const accessibleProps = generateAccessibleProps(role, 'Clock', {
31
+ title,
32
+ ['aria-label']: ariaLabel,
33
+ ['aria-labelledby']: ariaLabelledby,
34
+ });
35
+ return (
36
+ <svg
37
+ className={cx(
38
+ {
39
+ [fillStyle]: fill != null,
40
+ },
41
+ noFlexShrink,
42
+ className,
43
+ )}
44
+ height={typeof size === 'number' ? size : sizeMap[size]}
45
+ width={typeof size === 'number' ? size : sizeMap[size]}
46
+ role={role}
47
+ {...accessibleProps}
48
+ {...props}
49
+ viewBox="0 0 16 16"
50
+ >
51
+ <path
52
+ fillRule="evenodd"
53
+ clipRule="evenodd"
54
+ d="M8 14C11.3137 14 14 11.3137 14 8C14 4.68629 11.3137 2 8 2C4.68629 2 2 4.68629 2 8C2 11.3137 4.68629 14 8 14ZM7.25 4.75C7.25 4.33579 7.58579 4 8 4C8.41421 4 8.75 4.33579 8.75 4.75V7.90966L10.4939 9.43556C10.8056 9.70832 10.8372 10.1821 10.5644 10.4939C10.2917 10.8056 9.81786 10.8372 9.50613 10.5644L7.51059 8.81833C7.5014 8.8104 7.4924 8.80226 7.48361 8.79391C7.41388 8.7278 7.35953 8.65117 7.32087 8.56867C7.27541 8.47195 7.25 8.36394 7.25 8.25V4.75Z"
55
+ fill={'currentColor'}
56
+ />
57
+ </svg>
58
+ );
59
+ };
60
+
61
+ Clock.displayName = 'Clock';
62
+ Clock.isGlyph = true;
63
+ Clock.propTypes = {
64
+ fill: PropTypes.string,
65
+ size: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
66
+ className: PropTypes.string,
67
+ };
68
+ export default Clock;
@@ -0,0 +1,70 @@
1
+ /**
2
+ * This is a generated file. Do not modify it manually.
3
+ *
4
+ * @script ./node_modules/.bin/ts-node packages/icon/scripts/build.ts
5
+ * @checksum 5cebdb544bb818697100aa36feb9bd15
6
+ */
7
+ import * as React from 'react';
8
+ import PropTypes from 'prop-types';
9
+ import { css, cx } from '@leafygreen-ui/emotion';
10
+ import { generateAccessibleProps, sizeMap } from '../glyphCommon';
11
+ import { LGGlyph } from '../types';
12
+ export interface ClockWithArrowProps extends LGGlyph.ComponentProps {}
13
+
14
+ const ClockWithArrow = ({
15
+ className,
16
+ size = 16,
17
+ title,
18
+ ['aria-label']: ariaLabel,
19
+ ['aria-labelledby']: ariaLabelledby,
20
+ fill,
21
+ role = 'img',
22
+ ...props
23
+ }: ClockWithArrowProps) => {
24
+ const fillStyle = css`
25
+ color: ${fill};
26
+ `;
27
+ const noFlexShrink = css`
28
+ flex-shrink: 0;
29
+ `;
30
+ const accessibleProps = generateAccessibleProps(role, 'ClockWithArrow', {
31
+ title,
32
+ ['aria-label']: ariaLabel,
33
+ ['aria-labelledby']: ariaLabelledby,
34
+ });
35
+ return (
36
+ <svg
37
+ className={cx(
38
+ {
39
+ [fillStyle]: fill != null,
40
+ },
41
+ noFlexShrink,
42
+ className,
43
+ )}
44
+ height={typeof size === 'number' ? size : sizeMap[size]}
45
+ width={typeof size === 'number' ? size : sizeMap[size]}
46
+ role={role}
47
+ {...accessibleProps}
48
+ {...props}
49
+ viewBox="0 0 16 16"
50
+ >
51
+ <path
52
+ d="M13 8C13 10.7614 10.7614 13 8 13C7.16895 13 6.38526 12.7973 5.69568 12.4385C5.34783 12.2576 4.90944 12.3087 4.65841 12.6099L4.32712 13.0075C4.05174 13.3379 4.1087 13.8355 4.48034 14.0521C5.51438 14.6548 6.71687 15 8 15C11.866 15 15 11.866 15 8C15 4.13401 11.866 1 8 1C6.05606 1 4.2972 1.7924 3.02879 3.07181L1.96954 2.14618C1.56206 1.7901 0.931193 2.13127 1.00611 2.66721L1.4606 5.9185C1.50083 6.20624 1.7463 6.4287 2.03684 6.43H5.31972C5.86086 6.43241 6.1144 5.76821 5.70691 5.41212L4.53896 4.3915C5.4373 3.52965 6.65679 3 8 3C10.7614 3 13 5.23858 13 8Z"
53
+ fill={'currentColor'}
54
+ />
55
+ <path
56
+ d="M7.25 5.25C7.25 4.83579 7.58579 4.5 8 4.5C8.41421 4.5 8.75 4.83579 8.75 5.25V7.91793L10.4294 9.44169C10.7412 9.71445 10.7728 10.1883 10.5 10.5C10.2272 10.8117 9.75342 10.8433 9.44169 10.5706L7.50697 8.81519C7.49904 8.80826 7.49125 8.80117 7.48361 8.79391C7.41388 8.72781 7.35954 8.65118 7.32088 8.56868C7.27541 8.47196 7.25 8.36395 7.25 8.25V5.25Z"
57
+ fill={'currentColor'}
58
+ />
59
+ </svg>
60
+ );
61
+ };
62
+
63
+ ClockWithArrow.displayName = 'ClockWithArrow';
64
+ ClockWithArrow.isGlyph = true;
65
+ ClockWithArrow.propTypes = {
66
+ fill: PropTypes.string,
67
+ size: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
68
+ className: PropTypes.string,
69
+ };
70
+ export default ClockWithArrow;
@@ -0,0 +1,68 @@
1
+ /**
2
+ * This is a generated file. Do not modify it manually.
3
+ *
4
+ * @script ./node_modules/.bin/ts-node packages/icon/scripts/build.ts
5
+ * @checksum 1b8979dfc4d8c6e3992b7c104991dfb8
6
+ */
7
+ import * as React from 'react';
8
+ import PropTypes from 'prop-types';
9
+ import { css, cx } from '@leafygreen-ui/emotion';
10
+ import { generateAccessibleProps, sizeMap } from '../glyphCommon';
11
+ import { LGGlyph } from '../types';
12
+ export interface CursorProps extends LGGlyph.ComponentProps {}
13
+
14
+ const Cursor = ({
15
+ className,
16
+ size = 16,
17
+ title,
18
+ ['aria-label']: ariaLabel,
19
+ ['aria-labelledby']: ariaLabelledby,
20
+ fill,
21
+ role = 'img',
22
+ ...props
23
+ }: CursorProps) => {
24
+ const fillStyle = css`
25
+ color: ${fill};
26
+ `;
27
+ const noFlexShrink = css`
28
+ flex-shrink: 0;
29
+ `;
30
+ const accessibleProps = generateAccessibleProps(role, 'Cursor', {
31
+ title,
32
+ ['aria-label']: ariaLabel,
33
+ ['aria-labelledby']: ariaLabelledby,
34
+ });
35
+ return (
36
+ <svg
37
+ className={cx(
38
+ {
39
+ [fillStyle]: fill != null,
40
+ },
41
+ noFlexShrink,
42
+ className,
43
+ )}
44
+ height={typeof size === 'number' ? size : sizeMap[size]}
45
+ width={typeof size === 'number' ? size : sizeMap[size]}
46
+ role={role}
47
+ {...accessibleProps}
48
+ {...props}
49
+ viewBox="0 0 16 16"
50
+ >
51
+ <path
52
+ fillRule="evenodd"
53
+ clipRule="evenodd"
54
+ d="M8.53436 8.53438L9.00697 8.26403L11.3957 6.89757L4.64845 4.64847L6.89754 11.3958L8.26401 9.00699L8.53436 8.53438ZM10 10.0001L14.4801 7.4373C15.2139 7.10378 15.1582 6.04354 14.3936 5.78866L3.16879 2.04707C2.47551 1.81597 1.81595 2.47553 2.04704 3.16881L5.78864 14.3936C6.04352 15.1582 7.10375 15.2139 7.43728 14.4801L10 10.0001Z"
55
+ fill={'currentColor'}
56
+ />
57
+ </svg>
58
+ );
59
+ };
60
+
61
+ Cursor.displayName = 'Cursor';
62
+ Cursor.isGlyph = true;
63
+ Cursor.propTypes = {
64
+ fill: PropTypes.string,
65
+ size: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
66
+ className: PropTypes.string,
67
+ };
68
+ export default Cursor;
@@ -0,0 +1,66 @@
1
+ /**
2
+ * This is a generated file. Do not modify it manually.
3
+ *
4
+ * @script ./node_modules/.bin/ts-node packages/icon/scripts/build.ts
5
+ * @checksum 8e515220dd6e2c7b9ab03d7a94d3ec34
6
+ */
7
+ import * as React from 'react';
8
+ import PropTypes from 'prop-types';
9
+ import { css, cx } from '@leafygreen-ui/emotion';
10
+ import { generateAccessibleProps, sizeMap } from '../glyphCommon';
11
+ import { LGGlyph } from '../types';
12
+ export interface Diagram2Props extends LGGlyph.ComponentProps {}
13
+
14
+ const Diagram2 = ({
15
+ className,
16
+ size = 16,
17
+ title,
18
+ ['aria-label']: ariaLabel,
19
+ ['aria-labelledby']: ariaLabelledby,
20
+ fill,
21
+ role = 'img',
22
+ ...props
23
+ }: Diagram2Props) => {
24
+ const fillStyle = css`
25
+ color: ${fill};
26
+ `;
27
+ const noFlexShrink = css`
28
+ flex-shrink: 0;
29
+ `;
30
+ const accessibleProps = generateAccessibleProps(role, 'Diagram2', {
31
+ title,
32
+ ['aria-label']: ariaLabel,
33
+ ['aria-labelledby']: ariaLabelledby,
34
+ });
35
+ return (
36
+ <svg
37
+ className={cx(
38
+ {
39
+ [fillStyle]: fill != null,
40
+ },
41
+ noFlexShrink,
42
+ className,
43
+ )}
44
+ height={typeof size === 'number' ? size : sizeMap[size]}
45
+ width={typeof size === 'number' ? size : sizeMap[size]}
46
+ role={role}
47
+ {...accessibleProps}
48
+ {...props}
49
+ viewBox="0 0 16 16"
50
+ >
51
+ <path
52
+ d="M10.72 1C10.3224 1 10 1.33579 10 1.75V2H7.48C7.2149 2 7 2.22386 7 2.5V7H5V6.75C5 6.33579 4.67765 6 4.28 6H1.72C1.32235 6 1 6.33579 1 6.75V8.25C1 8.66421 1.32235 9 1.72 9H4.28C4.67765 9 5 8.66421 5 8.25V8H7V12.5C7 12.7761 7.2149 13 7.48 13H10V13.25C10 13.6642 10.3224 14 10.72 14H12.78C13.1776 14 13.5 13.6642 13.5 13.25V11.75C13.5 11.3358 13.1776 11 12.78 11H10.72C10.3224 11 10 11.3358 10 11.75V12H8V8H10V8.25C10 8.66421 10.3224 9 10.72 9H12.78C13.1776 9 13.5 8.66421 13.5 8.25V6.75C13.5 6.33579 13.1776 6 12.78 6H10.72C10.3224 6 10 6.33579 10 6.75V7H8V3H10V3.25C10 3.66421 10.3224 4 10.72 4H12.78C13.1776 4 13.5 3.66421 13.5 3.25V1.75C13.5 1.33579 13.1776 1 12.78 1L10.72 1Z"
53
+ fill={'currentColor'}
54
+ />
55
+ </svg>
56
+ );
57
+ };
58
+
59
+ Diagram2.displayName = 'Diagram2';
60
+ Diagram2.isGlyph = true;
61
+ Diagram2.propTypes = {
62
+ fill: PropTypes.string,
63
+ size: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
64
+ className: PropTypes.string,
65
+ };
66
+ export default Diagram2;
@@ -0,0 +1,68 @@
1
+ /**
2
+ * This is a generated file. Do not modify it manually.
3
+ *
4
+ * @script ./node_modules/.bin/ts-node packages/icon/scripts/build.ts
5
+ * @checksum a55f4f87ce97dfcb1d8337797e4ea72b
6
+ */
7
+ import * as React from 'react';
8
+ import PropTypes from 'prop-types';
9
+ import { css, cx } from '@leafygreen-ui/emotion';
10
+ import { generateAccessibleProps, sizeMap } from '../glyphCommon';
11
+ import { LGGlyph } from '../types';
12
+ export interface Diagram3Props extends LGGlyph.ComponentProps {}
13
+
14
+ const Diagram3 = ({
15
+ className,
16
+ size = 16,
17
+ title,
18
+ ['aria-label']: ariaLabel,
19
+ ['aria-labelledby']: ariaLabelledby,
20
+ fill,
21
+ role = 'img',
22
+ ...props
23
+ }: Diagram3Props) => {
24
+ const fillStyle = css`
25
+ color: ${fill};
26
+ `;
27
+ const noFlexShrink = css`
28
+ flex-shrink: 0;
29
+ `;
30
+ const accessibleProps = generateAccessibleProps(role, 'Diagram3', {
31
+ title,
32
+ ['aria-label']: ariaLabel,
33
+ ['aria-labelledby']: ariaLabelledby,
34
+ });
35
+ return (
36
+ <svg
37
+ className={cx(
38
+ {
39
+ [fillStyle]: fill != null,
40
+ },
41
+ noFlexShrink,
42
+ className,
43
+ )}
44
+ height={typeof size === 'number' ? size : sizeMap[size]}
45
+ width={typeof size === 'number' ? size : sizeMap[size]}
46
+ role={role}
47
+ {...accessibleProps}
48
+ {...props}
49
+ viewBox="0 0 16 16"
50
+ >
51
+ <path
52
+ fillRule="evenodd"
53
+ clipRule="evenodd"
54
+ d="M1.75 1C1.33579 1 1 1.33579 1 1.75V3.25C1 3.66421 1.33579 4 1.75 4H4.25C4.66421 4 5 3.66421 5 3.25V1.75C5 1.33579 4.66421 1 4.25 1H1.75ZM11 1.75C11 1.33579 11.3358 1 11.75 1H14.25C14.6642 1 15 1.33579 15 1.75V3.25C15 3.66421 14.6642 4 14.25 4H11.75C11.3358 4 11 3.66421 11 3.25V1.75ZM11 10.75C11 10.3358 11.3358 10 11.75 10H14.25C14.6642 10 15 10.3358 15 10.75V12.25C15 12.6642 14.6642 13 14.25 13H11.75C11.3358 13 11 12.6642 11 12.25V10.75ZM1 10.75C1 10.3358 1.33579 10 1.75 10H4.25C4.66421 10 5 10.3358 5 10.75V12.25C5 12.6642 4.66421 13 4.25 13H1.75C1.33579 13 1 12.6642 1 12.25V10.75ZM6 5C5.44772 5 5 5.44772 5 6V8C5 8.55228 5.44772 9 6 9H10C10.5523 9 11 8.55228 11 8V6C11 5.44772 10.5523 5 10 5H6Z"
55
+ fill={'currentColor'}
56
+ />
57
+ </svg>
58
+ );
59
+ };
60
+
61
+ Diagram3.displayName = 'Diagram3';
62
+ Diagram3.isGlyph = true;
63
+ Diagram3.propTypes = {
64
+ fill: PropTypes.string,
65
+ size: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
66
+ className: PropTypes.string,
67
+ };
68
+ export default Diagram3;
@@ -0,0 +1,68 @@
1
+ /**
2
+ * This is a generated file. Do not modify it manually.
3
+ *
4
+ * @script ./node_modules/.bin/ts-node packages/icon/scripts/build.ts
5
+ * @checksum 472b9840b2d10f0876a3c95cb82ae7c1
6
+ */
7
+ import * as React from 'react';
8
+ import PropTypes from 'prop-types';
9
+ import { css, cx } from '@leafygreen-ui/emotion';
10
+ import { generateAccessibleProps, sizeMap } from '../glyphCommon';
11
+ import { LGGlyph } from '../types';
12
+ export interface KeyProps extends LGGlyph.ComponentProps {}
13
+
14
+ const Key = ({
15
+ className,
16
+ size = 16,
17
+ title,
18
+ ['aria-label']: ariaLabel,
19
+ ['aria-labelledby']: ariaLabelledby,
20
+ fill,
21
+ role = 'img',
22
+ ...props
23
+ }: KeyProps) => {
24
+ const fillStyle = css`
25
+ color: ${fill};
26
+ `;
27
+ const noFlexShrink = css`
28
+ flex-shrink: 0;
29
+ `;
30
+ const accessibleProps = generateAccessibleProps(role, 'Key', {
31
+ title,
32
+ ['aria-label']: ariaLabel,
33
+ ['aria-labelledby']: ariaLabelledby,
34
+ });
35
+ return (
36
+ <svg
37
+ className={cx(
38
+ {
39
+ [fillStyle]: fill != null,
40
+ },
41
+ noFlexShrink,
42
+ className,
43
+ )}
44
+ height={typeof size === 'number' ? size : sizeMap[size]}
45
+ width={typeof size === 'number' ? size : sizeMap[size]}
46
+ role={role}
47
+ {...accessibleProps}
48
+ {...props}
49
+ viewBox="0 0 16 16"
50
+ >
51
+ <path
52
+ fillRule="evenodd"
53
+ clipRule="evenodd"
54
+ d="M6 10C6.55427 10 7.08222 9.88726 7.56215 9.68347L8.87868 11L8.43934 11.4393C7.85355 12.0251 7.85355 12.9749 8.43934 13.5607C9.02513 14.1464 9.97487 14.1464 10.5607 13.5607L11 13.1213L11.4393 13.5607C12.0251 14.1464 12.9749 14.1464 13.5607 13.5607C14.1464 12.9749 14.1464 12.0251 13.5607 11.4393L9.68347 7.56215C9.88726 7.08222 10 6.55427 10 6C10 3.79086 8.20914 2 6 2C3.79086 2 2 3.79086 2 6C2 8.20914 3.79086 10 6 10ZM5.25 6.5C5.94036 6.5 6.5 5.94036 6.5 5.25C6.5 4.55964 5.94036 4 5.25 4C4.55964 4 4 4.55964 4 5.25C4 5.94036 4.55964 6.5 5.25 6.5Z"
55
+ fill={'currentColor'}
56
+ />
57
+ </svg>
58
+ );
59
+ };
60
+
61
+ Key.displayName = 'Key';
62
+ Key.isGlyph = true;
63
+ Key.propTypes = {
64
+ fill: PropTypes.string,
65
+ size: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
66
+ className: PropTypes.string,
67
+ };
68
+ export default Key;