@leafygreen-ui/icon 14.5.1 → 14.6.1-next.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 (397) hide show
  1. package/.turbo/turbo-build.log +10 -2
  2. package/.turbo/turbo-prebuild.log +1 -1
  3. package/.turbo/turbo-tsc.log +1 -1
  4. package/CHANGELOG.md +12 -0
  5. package/dist/esm/index.js +1 -1
  6. package/dist/types/glyphs/index.d.ts +1 -1
  7. package/dist/types/index.d.ts +5 -1
  8. package/dist/types/index.d.ts.map +1 -1
  9. package/dist/umd/ActivityFeed.js +1 -1
  10. package/dist/umd/ActivityFeed.js.map +1 -1
  11. package/dist/umd/Boolean.js +1 -1
  12. package/dist/umd/Boolean.js.map +1 -1
  13. package/dist/umd/Ellipsis.js +1 -1
  14. package/dist/umd/Ellipsis.js.map +1 -1
  15. package/dist/umd/Recommended.js +1 -1
  16. package/dist/umd/Recommended.js.map +1 -1
  17. package/dist/umd/SortDescending.js +1 -1
  18. package/dist/umd/SortDescending.js.map +1 -1
  19. package/dist/umd/Streaming.js +1 -1
  20. package/dist/umd/Streaming.js.map +1 -1
  21. package/dist/umd/Sun.js +1 -1
  22. package/dist/umd/Sun.js.map +1 -1
  23. package/dist/umd/index.js +1 -1
  24. package/dist/umd/index.js.map +1 -1
  25. package/package.json +10 -7
  26. package/scripts/build/build-batch.ts +13 -4
  27. package/scripts/postbuild/index.ts +71 -0
  28. package/scripts/tsconfig.json +2 -1
  29. package/src/index.ts +7 -1
  30. package/tsconfig.tsbuildinfo +1 -1
  31. package/tsdoc.json +94 -0
  32. package/dist/AIModel.js +0 -2
  33. package/dist/AIModel.js.map +0 -1
  34. package/dist/ActivityFeed.js +0 -2
  35. package/dist/ActivityFeed.js.map +0 -1
  36. package/dist/AddFile.js +0 -2
  37. package/dist/AddFile.js.map +0 -1
  38. package/dist/AllProducts.js +0 -2
  39. package/dist/AllProducts.js.map +0 -1
  40. package/dist/AnalyticsNode.js +0 -2
  41. package/dist/AnalyticsNode.js.map +0 -1
  42. package/dist/Apps.js +0 -2
  43. package/dist/Apps.js.map +0 -1
  44. package/dist/Array.js +0 -2
  45. package/dist/Array.js.map +0 -1
  46. package/dist/ArrowDown.js +0 -2
  47. package/dist/ArrowDown.js.map +0 -1
  48. package/dist/ArrowLeft.js +0 -2
  49. package/dist/ArrowLeft.js.map +0 -1
  50. package/dist/ArrowRight.js +0 -2
  51. package/dist/ArrowRight.js.map +0 -1
  52. package/dist/ArrowUp.js +0 -2
  53. package/dist/ArrowUp.js.map +0 -1
  54. package/dist/Award.js +0 -2
  55. package/dist/Award.js.map +0 -1
  56. package/dist/Beaker.js +0 -2
  57. package/dist/Beaker.js.map +0 -1
  58. package/dist/Bell.js +0 -2
  59. package/dist/Bell.js.map +0 -1
  60. package/dist/Biometric.js +0 -2
  61. package/dist/Biometric.js.map +0 -1
  62. package/dist/Boolean.js +0 -2
  63. package/dist/Boolean.js.map +0 -1
  64. package/dist/Building.js +0 -2
  65. package/dist/Building.js.map +0 -1
  66. package/dist/Bulb.js +0 -2
  67. package/dist/Bulb.js.map +0 -1
  68. package/dist/Calendar.js +0 -2
  69. package/dist/Calendar.js.map +0 -1
  70. package/dist/Camera.js +0 -2
  71. package/dist/Camera.js.map +0 -1
  72. package/dist/Cap.js +0 -2
  73. package/dist/Cap.js.map +0 -1
  74. package/dist/CaretDown.js +0 -2
  75. package/dist/CaretDown.js.map +0 -1
  76. package/dist/CaretLeft.js +0 -2
  77. package/dist/CaretLeft.js.map +0 -1
  78. package/dist/CaretRight.js +0 -2
  79. package/dist/CaretRight.js.map +0 -1
  80. package/dist/CaretUp.js +0 -2
  81. package/dist/CaretUp.js.map +0 -1
  82. package/dist/ChartFilled.js +0 -2
  83. package/dist/ChartFilled.js.map +0 -1
  84. package/dist/Charts.js +0 -2
  85. package/dist/Charts.js.map +0 -1
  86. package/dist/Checkmark.js +0 -2
  87. package/dist/Checkmark.js.map +0 -1
  88. package/dist/CheckmarkWithCircle.js +0 -2
  89. package/dist/CheckmarkWithCircle.js.map +0 -1
  90. package/dist/ChevronDown.js +0 -2
  91. package/dist/ChevronDown.js.map +0 -1
  92. package/dist/ChevronLeft.js +0 -2
  93. package/dist/ChevronLeft.js.map +0 -1
  94. package/dist/ChevronRight.js +0 -2
  95. package/dist/ChevronRight.js.map +0 -1
  96. package/dist/ChevronUp.js +0 -2
  97. package/dist/ChevronUp.js.map +0 -1
  98. package/dist/Circle.js +0 -2
  99. package/dist/Circle.js.map +0 -1
  100. package/dist/Clock.js +0 -2
  101. package/dist/Clock.js.map +0 -1
  102. package/dist/ClockWithArrow.js +0 -2
  103. package/dist/ClockWithArrow.js.map +0 -1
  104. package/dist/Clone.js +0 -2
  105. package/dist/Clone.js.map +0 -1
  106. package/dist/Cloud.js +0 -2
  107. package/dist/Cloud.js.map +0 -1
  108. package/dist/Code.js +0 -2
  109. package/dist/Code.js.map +0 -1
  110. package/dist/CodeBlock.js +0 -2
  111. package/dist/CodeBlock.js.map +0 -1
  112. package/dist/Coin.js +0 -2
  113. package/dist/Coin.js.map +0 -1
  114. package/dist/Colon.js +0 -2
  115. package/dist/Colon.js.map +0 -1
  116. package/dist/Config.js +0 -2
  117. package/dist/Config.js.map +0 -1
  118. package/dist/Connect.js +0 -2
  119. package/dist/Connect.js.map +0 -1
  120. package/dist/Copy.js +0 -2
  121. package/dist/Copy.js.map +0 -1
  122. package/dist/CreditCard.js +0 -2
  123. package/dist/CreditCard.js.map +0 -1
  124. package/dist/CurlyBraces.js +0 -2
  125. package/dist/CurlyBraces.js.map +0 -1
  126. package/dist/Cursor.js +0 -2
  127. package/dist/Cursor.js.map +0 -1
  128. package/dist/Dashboard.js +0 -2
  129. package/dist/Dashboard.js.map +0 -1
  130. package/dist/Database.js +0 -2
  131. package/dist/Database.js.map +0 -1
  132. package/dist/Diagram.js +0 -2
  133. package/dist/Diagram.js.map +0 -1
  134. package/dist/Diagram2.js +0 -2
  135. package/dist/Diagram2.js.map +0 -1
  136. package/dist/Diagram3.js +0 -2
  137. package/dist/Diagram3.js.map +0 -1
  138. package/dist/Disconnect.js +0 -2
  139. package/dist/Disconnect.js.map +0 -1
  140. package/dist/Download.js +0 -2
  141. package/dist/Download.js.map +0 -1
  142. package/dist/Drag.js +0 -2
  143. package/dist/Drag.js.map +0 -1
  144. package/dist/Edit.js +0 -2
  145. package/dist/Edit.js.map +0 -1
  146. package/dist/Ellipsis.js +0 -2
  147. package/dist/Ellipsis.js.map +0 -1
  148. package/dist/Email.js +0 -2
  149. package/dist/Email.js.map +0 -1
  150. package/dist/EmptyDatabase.js +0 -2
  151. package/dist/EmptyDatabase.js.map +0 -1
  152. package/dist/EmptyFolder.js +0 -2
  153. package/dist/EmptyFolder.js.map +0 -1
  154. package/dist/Eraser.js +0 -2
  155. package/dist/Eraser.js.map +0 -1
  156. package/dist/Escalation.js +0 -2
  157. package/dist/Escalation.js.map +0 -1
  158. package/dist/Export.js +0 -2
  159. package/dist/Export.js.map +0 -1
  160. package/dist/Favorite.js +0 -2
  161. package/dist/Favorite.js.map +0 -1
  162. package/dist/Federation.js +0 -2
  163. package/dist/Federation.js.map +0 -1
  164. package/dist/File.js +0 -2
  165. package/dist/File.js.map +0 -1
  166. package/dist/Filter.js +0 -2
  167. package/dist/Filter.js.map +0 -1
  168. package/dist/Folder.js +0 -2
  169. package/dist/Folder.js.map +0 -1
  170. package/dist/Format.js +0 -2
  171. package/dist/Format.js.map +0 -1
  172. package/dist/FullScreenEnter.js +0 -2
  173. package/dist/FullScreenEnter.js.map +0 -1
  174. package/dist/FullScreenExit.js +0 -2
  175. package/dist/FullScreenExit.js.map +0 -1
  176. package/dist/Function.js +0 -2
  177. package/dist/Function.js.map +0 -1
  178. package/dist/Gauge.js +0 -2
  179. package/dist/Gauge.js.map +0 -1
  180. package/dist/GlobeAmericas.js +0 -2
  181. package/dist/GlobeAmericas.js.map +0 -1
  182. package/dist/GovernmentBuilding.js +0 -2
  183. package/dist/GovernmentBuilding.js.map +0 -1
  184. package/dist/Guide.js +0 -2
  185. package/dist/Guide.js.map +0 -1
  186. package/dist/Hash.js +0 -2
  187. package/dist/Hash.js.map +0 -1
  188. package/dist/HiddenSecondaryNode.js +0 -2
  189. package/dist/HiddenSecondaryNode.js.map +0 -1
  190. package/dist/Highlight.js +0 -2
  191. package/dist/Highlight.js.map +0 -1
  192. package/dist/Home.js +0 -2
  193. package/dist/Home.js.map +0 -1
  194. package/dist/HorizontalDrag.js +0 -2
  195. package/dist/HorizontalDrag.js.map +0 -1
  196. package/dist/Import.js +0 -2
  197. package/dist/Import.js.map +0 -1
  198. package/dist/ImportantWithCircle.js +0 -2
  199. package/dist/ImportantWithCircle.js.map +0 -1
  200. package/dist/InfoWithCircle.js +0 -2
  201. package/dist/InfoWithCircle.js.map +0 -1
  202. package/dist/InternalEmployee.js +0 -2
  203. package/dist/InternalEmployee.js.map +0 -1
  204. package/dist/InviteUser.js +0 -2
  205. package/dist/InviteUser.js.map +0 -1
  206. package/dist/Key.js +0 -2
  207. package/dist/Key.js.map +0 -1
  208. package/dist/Laptop.js +0 -2
  209. package/dist/Laptop.js.map +0 -1
  210. package/dist/LightningBolt.js +0 -2
  211. package/dist/LightningBolt.js.map +0 -1
  212. package/dist/Link.js +0 -2
  213. package/dist/Link.js.map +0 -1
  214. package/dist/List.js +0 -2
  215. package/dist/List.js.map +0 -1
  216. package/dist/Lock.js +0 -2
  217. package/dist/Lock.js.map +0 -1
  218. package/dist/LogIn.js +0 -2
  219. package/dist/LogIn.js.map +0 -1
  220. package/dist/LogOut.js +0 -2
  221. package/dist/LogOut.js.map +0 -1
  222. package/dist/MagnifyingGlass.js +0 -2
  223. package/dist/MagnifyingGlass.js.map +0 -1
  224. package/dist/Megaphone.js +0 -2
  225. package/dist/Megaphone.js.map +0 -1
  226. package/dist/Menu.js +0 -2
  227. package/dist/Menu.js.map +0 -1
  228. package/dist/Minus.js +0 -2
  229. package/dist/Minus.js.map +0 -1
  230. package/dist/Mobile.js +0 -2
  231. package/dist/Mobile.js.map +0 -1
  232. package/dist/Moon.js +0 -2
  233. package/dist/Moon.js.map +0 -1
  234. package/dist/MultiDirectionArrow.js +0 -2
  235. package/dist/MultiDirectionArrow.js.map +0 -1
  236. package/dist/MultiLayers.js +0 -2
  237. package/dist/MultiLayers.js.map +0 -1
  238. package/dist/NavCollapse.js +0 -2
  239. package/dist/NavCollapse.js.map +0 -1
  240. package/dist/NavExpand.js +0 -2
  241. package/dist/NavExpand.js.map +0 -1
  242. package/dist/NoFilter.js +0 -2
  243. package/dist/NoFilter.js.map +0 -1
  244. package/dist/NotAllowed.js +0 -2
  245. package/dist/NotAllowed.js.map +0 -1
  246. package/dist/Note.js +0 -2
  247. package/dist/Note.js.map +0 -1
  248. package/dist/NumberedList.js +0 -2
  249. package/dist/NumberedList.js.map +0 -1
  250. package/dist/OpenNewTab.js +0 -2
  251. package/dist/OpenNewTab.js.map +0 -1
  252. package/dist/OutlineFavorite.js +0 -2
  253. package/dist/OutlineFavorite.js.map +0 -1
  254. package/dist/Package.js +0 -2
  255. package/dist/Package.js.map +0 -1
  256. package/dist/Pause.js +0 -2
  257. package/dist/Pause.js.map +0 -1
  258. package/dist/Pending.js +0 -2
  259. package/dist/Pending.js.map +0 -1
  260. package/dist/Person.js +0 -2
  261. package/dist/Person.js.map +0 -1
  262. package/dist/PersonGroup.js +0 -2
  263. package/dist/PersonGroup.js.map +0 -1
  264. package/dist/PersonWithLock.js +0 -2
  265. package/dist/PersonWithLock.js.map +0 -1
  266. package/dist/Pin.js +0 -2
  267. package/dist/Pin.js.map +0 -1
  268. package/dist/Play.js +0 -2
  269. package/dist/Play.js.map +0 -1
  270. package/dist/Plus.js +0 -2
  271. package/dist/Plus.js.map +0 -1
  272. package/dist/PlusWithCircle.js +0 -2
  273. package/dist/PlusWithCircle.js.map +0 -1
  274. package/dist/Primary.js +0 -2
  275. package/dist/Primary.js.map +0 -1
  276. package/dist/Project.js +0 -2
  277. package/dist/Project.js.map +0 -1
  278. package/dist/QuestionMarkWithCircle.js +0 -2
  279. package/dist/QuestionMarkWithCircle.js.map +0 -1
  280. package/dist/Read.js +0 -2
  281. package/dist/Read.js.map +0 -1
  282. package/dist/Recommended.js +0 -2
  283. package/dist/Recommended.js.map +0 -1
  284. package/dist/Redo.js +0 -2
  285. package/dist/Redo.js.map +0 -1
  286. package/dist/Refresh.js +0 -2
  287. package/dist/Refresh.js.map +0 -1
  288. package/dist/Relationship.js +0 -2
  289. package/dist/Relationship.js.map +0 -1
  290. package/dist/ReplicaSet.js +0 -2
  291. package/dist/ReplicaSet.js.map +0 -1
  292. package/dist/Resize.js +0 -2
  293. package/dist/Resize.js.map +0 -1
  294. package/dist/Resource.js +0 -2
  295. package/dist/Resource.js.map +0 -1
  296. package/dist/Return.js +0 -2
  297. package/dist/Return.js.map +0 -1
  298. package/dist/Revert.js +0 -2
  299. package/dist/Revert.js.map +0 -1
  300. package/dist/Router.js +0 -2
  301. package/dist/Router.js.map +0 -1
  302. package/dist/SMS.js +0 -2
  303. package/dist/SMS.js.map +0 -1
  304. package/dist/Save.js +0 -2
  305. package/dist/Save.js.map +0 -1
  306. package/dist/SearchIndex.js +0 -2
  307. package/dist/SearchIndex.js.map +0 -1
  308. package/dist/Secondary.js +0 -2
  309. package/dist/Secondary.js.map +0 -1
  310. package/dist/Serverless.js +0 -2
  311. package/dist/Serverless.js.map +0 -1
  312. package/dist/Settings.js +0 -2
  313. package/dist/Settings.js.map +0 -1
  314. package/dist/ShardedCluster.js +0 -2
  315. package/dist/ShardedCluster.js.map +0 -1
  316. package/dist/Shell.js +0 -2
  317. package/dist/Shell.js.map +0 -1
  318. package/dist/Shield.js +0 -2
  319. package/dist/Shield.js.map +0 -1
  320. package/dist/Shirt.js +0 -2
  321. package/dist/Shirt.js.map +0 -1
  322. package/dist/Shortcut.js +0 -2
  323. package/dist/Shortcut.js.map +0 -1
  324. package/dist/SortAscending.js +0 -2
  325. package/dist/SortAscending.js.map +0 -1
  326. package/dist/SortDescending.js +0 -2
  327. package/dist/SortDescending.js.map +0 -1
  328. package/dist/Sparkle.js +0 -2
  329. package/dist/Sparkle.js.map +0 -1
  330. package/dist/SplitHorizontal.js +0 -2
  331. package/dist/SplitHorizontal.js.map +0 -1
  332. package/dist/SplitVertical.js +0 -2
  333. package/dist/SplitVertical.js.map +0 -1
  334. package/dist/Stitch.js +0 -2
  335. package/dist/Stitch.js.map +0 -1
  336. package/dist/Stop.js +0 -2
  337. package/dist/Stop.js.map +0 -1
  338. package/dist/Streaming.js +0 -2
  339. package/dist/Streaming.js.map +0 -1
  340. package/dist/String.js +0 -2
  341. package/dist/String.js.map +0 -1
  342. package/dist/Sun.js +0 -2
  343. package/dist/Sun.js.map +0 -1
  344. package/dist/Support.js +0 -2
  345. package/dist/Support.js.map +0 -1
  346. package/dist/Sweep.js +0 -2
  347. package/dist/Sweep.js.map +0 -1
  348. package/dist/Table.js +0 -2
  349. package/dist/Table.js.map +0 -1
  350. package/dist/Tag.js +0 -2
  351. package/dist/Tag.js.map +0 -1
  352. package/dist/TemporaryTable.js +0 -2
  353. package/dist/TemporaryTable.js.map +0 -1
  354. package/dist/ThumbsDown.js +0 -2
  355. package/dist/ThumbsDown.js.map +0 -1
  356. package/dist/ThumbsUp.js +0 -2
  357. package/dist/ThumbsUp.js.map +0 -1
  358. package/dist/TimeSeries.js +0 -2
  359. package/dist/TimeSeries.js.map +0 -1
  360. package/dist/TimeSeriesCollection.js +0 -2
  361. package/dist/TimeSeriesCollection.js.map +0 -1
  362. package/dist/Trash.js +0 -2
  363. package/dist/Trash.js.map +0 -1
  364. package/dist/Undo.js +0 -2
  365. package/dist/Undo.js.map +0 -1
  366. package/dist/University.js +0 -2
  367. package/dist/University.js.map +0 -1
  368. package/dist/Unlock.js +0 -2
  369. package/dist/Unlock.js.map +0 -1
  370. package/dist/Unsorted.js +0 -2
  371. package/dist/Unsorted.js.map +0 -1
  372. package/dist/UpDownCarets.js +0 -2
  373. package/dist/UpDownCarets.js.map +0 -1
  374. package/dist/Upload.js +0 -2
  375. package/dist/Upload.js.map +0 -1
  376. package/dist/VerticalEllipsis.js +0 -2
  377. package/dist/VerticalEllipsis.js.map +0 -1
  378. package/dist/View.js +0 -2
  379. package/dist/View.js.map +0 -1
  380. package/dist/Visibility.js +0 -2
  381. package/dist/Visibility.js.map +0 -1
  382. package/dist/VisibilityOff.js +0 -2
  383. package/dist/VisibilityOff.js.map +0 -1
  384. package/dist/Warning.js +0 -2
  385. package/dist/Warning.js.map +0 -1
  386. package/dist/Wizard.js +0 -2
  387. package/dist/Wizard.js.map +0 -1
  388. package/dist/Wrench.js +0 -2
  389. package/dist/Wrench.js.map +0 -1
  390. package/dist/Write.js +0 -2
  391. package/dist/Write.js.map +0 -1
  392. package/dist/X.js +0 -2
  393. package/dist/X.js.map +0 -1
  394. package/dist/XWithCircle.js +0 -2
  395. package/dist/XWithCircle.js.map +0 -1
  396. package/dist/index.js +0 -2
  397. package/dist/index.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@leafygreen-ui/icon",
3
- "version": "14.5.1",
3
+ "version": "14.6.1-next.0",
4
4
  "description": "LeafyGreen UI Kit Icons",
5
5
  "main": "./dist/umd/index.js",
6
6
  "module": "./dist/esm/index.js",
@@ -29,22 +29,24 @@
29
29
  },
30
30
  "dependencies": {
31
31
  "lodash": "^4.17.21",
32
- "@leafygreen-ui/emotion": "^5.0.3"
32
+ "@leafygreen-ui/emotion": "^5.0.4"
33
33
  },
34
34
  "devDependencies": {
35
+ "@rollup/plugin-node-resolve": "15.1.0",
35
36
  "@svgr/core": "^5.3.1",
36
37
  "@types/xml2json": "^0.11.0",
37
38
  "commander": "^11.0.0",
39
+ "fs-extra": "11.1.1",
40
+ "p-queue": "^8.1.0",
38
41
  "rollup": "4.16.1",
42
+ "rollup-plugin-node-externals": "7.1.1",
39
43
  "ts-node": "^10.9.2",
40
44
  "xml2json": "^0.12.0",
41
- "p-queue": "^8.1.0",
42
- "fs-extra": "11.1.1",
45
+ "@lg-tools/storybook-utils": "^0.3.3",
43
46
  "@lg-tools/build": "^0.8.3",
47
+ "@leafygreen-ui/palette": "^5.0.2",
44
48
  "@lg-tools/lint": "^3.1.0",
45
- "@leafygreen-ui/lib": "^15.4.0",
46
- "@lg-tools/storybook-utils": "^0.3.2",
47
- "@leafygreen-ui/palette": "^5.0.2"
49
+ "@leafygreen-ui/lib": "^15.6.2"
48
50
  },
49
51
  "gitHead": "dd71a2d404218ccec2e657df9c0263dc1c15b9e0",
50
52
  "homepage": "https://github.com/mongodb/leafygreen-ui/tree/main/packages/icon",
@@ -59,6 +61,7 @@
59
61
  "scripts": {
60
62
  "prebuild": "ts-node ./scripts/prebuild/index.ts",
61
63
  "build": "ts-node ./scripts/build/build.ts",
64
+ "postbuild": "ts-node ./scripts/postbuild/index.ts",
62
65
  "tsc": "lg-build tsc",
63
66
  "docs": "lg-build docs"
64
67
  }
@@ -10,6 +10,8 @@ async function getBatchBuildOptions(
10
10
  '@lg-tools/build/config/utils/constructUMDGlobalName.mjs'
11
11
  );
12
12
 
13
+ const { nodeExternals } = await import('rollup-plugin-node-externals');
14
+
13
15
  const { esmConfig, umdConfig } = await import(
14
16
  '@lg-tools/build/config/rollup.config.mjs'
15
17
  );
@@ -20,6 +22,11 @@ async function getBatchBuildOptions(
20
22
  ...esmConfig,
21
23
  input: batch.map(icon => `${GENERATED_DIR}/${icon}.tsx`),
22
24
  output: [esmConfig.output],
25
+ plugins: [
26
+ // Ensure @emotion packages are externalized (not bundled into icons)
27
+ nodeExternals({ deps: true, include: [/@emotion/] }),
28
+ ...esmConfig.plugins,
29
+ ],
23
30
  },
24
31
  // UMD builds need a single input file
25
32
  ...batch.map(iconName => {
@@ -33,6 +40,11 @@ async function getBatchBuildOptions(
33
40
  dir: `dist/umd`,
34
41
  },
35
42
  ],
43
+ plugins: [
44
+ // Ensure @emotion packages are externalized (not bundled into icons)
45
+ nodeExternals({ deps: true, include: [/@emotion/] }),
46
+ ...umdConfig.plugins,
47
+ ],
36
48
  };
37
49
  }),
38
50
  ];
@@ -45,16 +57,13 @@ export async function buildBatch(
45
57
  batch: Array<string>,
46
58
  verbose = false,
47
59
  ): Promise<void> {
60
+ verbose && console.log('Building batch', batch);
48
61
  try {
49
62
  const rollupConfigs = await getBatchBuildOptions(batch);
50
63
 
51
64
  for (const config of rollupConfigs) {
52
65
  const bundle = await rollup(config);
53
66
 
54
- if (verbose) {
55
- console.log(bundle.watchFiles);
56
- }
57
-
58
67
  await Promise.all(config.output.map(bundle.write));
59
68
  await bundle.close();
60
69
  }
@@ -0,0 +1,71 @@
1
+ /* eslint-disable no-console */
2
+ import fs from 'fs';
3
+ import path from 'path';
4
+
5
+ /**
6
+ * Validates that built icon files do not import @emotion packages directly.
7
+ * Icons should only depend on @leafygreen-ui/emotion, not @emotion/* packages.
8
+ */
9
+ function validateBuiltIcons(): void {
10
+ const distDirs = ['dist/esm', 'dist/umd'];
11
+ const emotionPattern = /@emotion\//g;
12
+ let hasErrors = false;
13
+ const errors: Array<{ file: string; matches: Array<string> }> = [];
14
+
15
+ console.log('Validating built icons...\n');
16
+
17
+ for (const distDir of distDirs) {
18
+ const fullPath = path.join(process.cwd(), distDir);
19
+
20
+ if (!fs.existsSync(fullPath)) {
21
+ console.warn(`Warning: ${distDir} directory does not exist. Skipping...`);
22
+ continue;
23
+ }
24
+
25
+ const files = fs.readdirSync(fullPath);
26
+ const jsFiles = files.filter(file => file.endsWith('.js'));
27
+
28
+ for (const file of jsFiles) {
29
+ // Skip the main index file and glyphCommon as they may have different rules
30
+ if (file === 'index.js' || file === 'glyphCommon.js') {
31
+ continue;
32
+ }
33
+
34
+ const filePath = path.join(fullPath, file);
35
+ const content = fs.readFileSync(filePath, 'utf-8');
36
+
37
+ // Check for @emotion imports/requires
38
+ const matches = content.match(emotionPattern);
39
+
40
+ if (matches) {
41
+ hasErrors = true;
42
+ const uniqueMatches = Array.from(new Set(matches));
43
+ errors.push({ file: `${distDir}/${file}`, matches: uniqueMatches });
44
+ }
45
+ }
46
+ }
47
+
48
+ if (hasErrors) {
49
+ console.error('❌ ERROR: Found @emotion imports in built icon files!\n');
50
+ console.error(
51
+ 'Icons should only depend on @leafygreen-ui/emotion, not @emotion/* packages directly.\n',
52
+ );
53
+ console.error('Files with @emotion imports:');
54
+ for (const error of errors) {
55
+ console.error(` - ${error.file}`);
56
+ for (const match of error.matches) {
57
+ console.error(` → ${match}`);
58
+ }
59
+ }
60
+ console.error('\nThis indicates a build configuration issue.');
61
+ console.error(
62
+ 'Check packages/icon/scripts/build/build-batch.ts for proper externalization rules.',
63
+ );
64
+ process.exit(1);
65
+ } else {
66
+ console.log('Icon builds OK \n');
67
+ process.exit(0);
68
+ }
69
+ }
70
+
71
+ validateBuiltIcons();
@@ -5,6 +5,7 @@
5
5
  },
6
6
  "include": [
7
7
  "./prebuild/**/*",
8
- "./build/**/*"
8
+ "./build/**/*",
9
+ "./postbuild/**/*"
9
10
  ]
10
11
  }
package/src/index.ts CHANGED
@@ -3,6 +3,12 @@ export type { IconProps } from './createIconComponent';
3
3
  export { createIconComponent } from './createIconComponent';
4
4
  export { Size, sizeMap } from './glyphCommon';
5
5
  export { type GlyphName, glyphs } from './glyphs';
6
- export { Icon as default } from './Icon';
6
+ export {
7
+ /**
8
+ * @deprecated Use named export `{ Icon }` instead. See [named-exports codemod documentation](https://github.com/mongodb/leafygreen-ui/tree/main/tools/codemods#named-exports) for migration assistance.
9
+ */
10
+ Icon as default,
11
+ Icon,
12
+ } from './Icon';
7
13
  export { isComponentGlyph } from './isComponentGlyph';
8
14
  export { LGGlyph } from './types';