@hashicorp/mds-react 0.9.1 → 0.9.3

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 (358) hide show
  1. package/components/index.js +73 -115
  2. package/components/index.js.map +1 -1
  3. package/index-B9mPJh9w.js +579 -0
  4. package/index-B9mPJh9w.js.map +1 -0
  5. package/index-BHBlMMNF.js +16 -0
  6. package/index-BHBlMMNF.js.map +1 -0
  7. package/index-C4GBbW3N.js +3567 -0
  8. package/index-C4GBbW3N.js.map +1 -0
  9. package/{utils/mds-context/index.js → index-DBjAbGt7.js} +19 -20
  10. package/index-DBjAbGt7.js.map +1 -0
  11. package/index-WkGIywHj.js +767 -0
  12. package/index-WkGIywHj.js.map +1 -0
  13. package/index.js +100 -153
  14. package/index.js.map +1 -1
  15. package/package.json +1 -1
  16. package/patterns/index.js +22 -32
  17. package/patterns/index.js.map +1 -1
  18. package/style.css +1 -0
  19. package/styles/mixins/button.scss +1 -6
  20. package/use-screen-size-BOnkX_K-.js +9 -0
  21. package/use-screen-size-BOnkX_K-.js.map +1 -0
  22. package/utils/index.js +7 -7
  23. package/assets/style-DD7hNwDr.css +0 -1
  24. package/components/accordion/index.js +0 -9
  25. package/components/accordion/index.js.map +0 -1
  26. package/components/accordion/item/button.js +0 -44
  27. package/components/accordion/item/button.js.map +0 -1
  28. package/components/accordion/item/index.js +0 -59
  29. package/components/accordion/item/index.js.map +0 -1
  30. package/components/accordion/style.module.scss.js +0 -24
  31. package/components/accordion/style.module.scss.js.map +0 -1
  32. package/components/alert/alert.module.scss.js +0 -29
  33. package/components/alert/alert.module.scss.js.map +0 -1
  34. package/components/alert/icon.js +0 -34
  35. package/components/alert/icon.js.map +0 -1
  36. package/components/alert/index.js +0 -97
  37. package/components/alert/index.js.map +0 -1
  38. package/components/badge/index.js +0 -53
  39. package/components/badge/index.js.map +0 -1
  40. package/components/badge/style.module.scss.js +0 -22
  41. package/components/badge/style.module.scss.js.map +0 -1
  42. package/components/badge-count/index.js +0 -29
  43. package/components/badge-count/index.js.map +0 -1
  44. package/components/badge-count/style.module.scss.js +0 -15
  45. package/components/badge-count/style.module.scss.js.map +0 -1
  46. package/components/breadcrumbs/index.js +0 -38
  47. package/components/breadcrumbs/index.js.map +0 -1
  48. package/components/breadcrumbs/item/index.js +0 -32
  49. package/components/breadcrumbs/item/index.js.map +0 -1
  50. package/components/breadcrumbs/style.module.scss.js +0 -27
  51. package/components/breadcrumbs/style.module.scss.js.map +0 -1
  52. package/components/breadcrumbs/truncation-button/index.js +0 -25
  53. package/components/breadcrumbs/truncation-button/index.js.map +0 -1
  54. package/components/button/index.js +0 -119
  55. package/components/button/index.js.map +0 -1
  56. package/components/button/styles.module.scss.js +0 -32
  57. package/components/button/styles.module.scss.js.map +0 -1
  58. package/components/card/card-thumbnail/card-thumbnail.module.css.js +0 -8
  59. package/components/card/card-thumbnail/card-thumbnail.module.css.js.map +0 -1
  60. package/components/card/card-thumbnail/index.js +0 -23
  61. package/components/card/card-thumbnail/index.js.map +0 -1
  62. package/components/card/index.js +0 -157
  63. package/components/card/index.js.map +0 -1
  64. package/components/card/styles.module.css.js +0 -29
  65. package/components/card/styles.module.css.js.map +0 -1
  66. package/components/code-block/code-block.module.scss.js +0 -34
  67. package/components/code-block/code-block.module.scss.js.map +0 -1
  68. package/components/code-block/code-lines/index.js +0 -59
  69. package/components/code-block/code-lines/index.js.map +0 -1
  70. package/components/code-block/code-lines/utils/split-html-into-lines.js +0 -19
  71. package/components/code-block/code-lines/utils/split-html-into-lines.js.map +0 -1
  72. package/components/code-block/code-lines/utils/split-jsx-into-lines.js +0 -31
  73. package/components/code-block/code-lines/utils/split-jsx-into-lines.js.map +0 -1
  74. package/components/code-block/hidden-copy-content/index.js +0 -13
  75. package/components/code-block/hidden-copy-content/index.js.map +0 -1
  76. package/components/code-block/index.js +0 -88
  77. package/components/code-block/index.js.map +0 -1
  78. package/components/code-block/utils/parse-highlighted-lines.js +0 -39
  79. package/components/code-block/utils/parse-highlighted-lines.js.map +0 -1
  80. package/components/code-block/utils/process-snippet.js +0 -20
  81. package/components/code-block/utils/process-snippet.js.map +0 -1
  82. package/components/code-block/utils/shellwords.js +0 -33
  83. package/components/code-block/utils/shellwords.js.map +0 -1
  84. package/components/combo-box-primitive/index.js +0 -302
  85. package/components/combo-box-primitive/index.js.map +0 -1
  86. package/components/dialog-primitive/dialog.module.scss.js +0 -12
  87. package/components/dialog-primitive/dialog.module.scss.js.map +0 -1
  88. package/components/dialog-primitive/index.js +0 -15
  89. package/components/dialog-primitive/index.js.map +0 -1
  90. package/components/disclosure-primitive/index.js +0 -57
  91. package/components/disclosure-primitive/index.js.map +0 -1
  92. package/components/disclosure-primitive/styles.module.css.js +0 -7
  93. package/components/disclosure-primitive/styles.module.css.js.map +0 -1
  94. package/components/disclosure-primitive/use-disclosure-primitive.js +0 -17
  95. package/components/disclosure-primitive/use-disclosure-primitive.js.map +0 -1
  96. package/components/dismiss-button/index.js +0 -22
  97. package/components/dismiss-button/index.js.map +0 -1
  98. package/components/dismiss-button/styles.module.scss.js +0 -7
  99. package/components/dismiss-button/styles.module.scss.js.map +0 -1
  100. package/components/dropdown/index.js +0 -79
  101. package/components/dropdown/index.js.map +0 -1
  102. package/components/dropdown/list-item/custom.js +0 -9
  103. package/components/dropdown/list-item/custom.js.map +0 -1
  104. package/components/dropdown/list-item/index.js +0 -14
  105. package/components/dropdown/list-item/index.js.map +0 -1
  106. package/components/dropdown/list-item/interactive.js +0 -49
  107. package/components/dropdown/list-item/interactive.js.map +0 -1
  108. package/components/dropdown/list-item/separator.js +0 -17
  109. package/components/dropdown/list-item/separator.js.map +0 -1
  110. package/components/dropdown/list-item/styles.module.css.js +0 -26
  111. package/components/dropdown/list-item/styles.module.css.js.map +0 -1
  112. package/components/dropdown/list-item/title.js +0 -9
  113. package/components/dropdown/list-item/title.js.map +0 -1
  114. package/components/dropdown/styles.module.css.js +0 -24
  115. package/components/dropdown/styles.module.css.js.map +0 -1
  116. package/components/dropdown/toggle-button/index.js +0 -54
  117. package/components/dropdown/toggle-button/index.js.map +0 -1
  118. package/components/dropdown/toggle-button/styles.module.scss.js +0 -14
  119. package/components/dropdown/toggle-button/styles.module.scss.js.map +0 -1
  120. package/components/flight-icon/flight-icon.module.css.js +0 -12
  121. package/components/flight-icon/flight-icon.module.css.js.map +0 -1
  122. package/components/flight-icon/index.js +0 -58
  123. package/components/flight-icon/index.js.map +0 -1
  124. package/components/form/checkbox/form-checkbox.module.css.js +0 -8
  125. package/components/form/checkbox/form-checkbox.module.css.js.map +0 -1
  126. package/components/form/checkbox/index.js +0 -109
  127. package/components/form/checkbox/index.js.map +0 -1
  128. package/components/form/error/form-error.module.css.js +0 -14
  129. package/components/form/error/form-error.module.css.js.map +0 -1
  130. package/components/form/error/index.js +0 -22
  131. package/components/form/error/index.js.map +0 -1
  132. package/components/form/field/form-field.module.css.js +0 -17
  133. package/components/form/field/form-field.module.css.js.map +0 -1
  134. package/components/form/field/index.js +0 -46
  135. package/components/form/field/index.js.map +0 -1
  136. package/components/form/fieldset/form-fieldset.module.css.js +0 -19
  137. package/components/form/fieldset/form-fieldset.module.css.js.map +0 -1
  138. package/components/form/fieldset/index.js +0 -65
  139. package/components/form/fieldset/index.js.map +0 -1
  140. package/components/form/file-input/form-file-input.module.scss.js +0 -7
  141. package/components/form/file-input/form-file-input.module.scss.js.map +0 -1
  142. package/components/form/file-input/index.js +0 -68
  143. package/components/form/file-input/index.js.map +0 -1
  144. package/components/form/helper-text/form-helper-text.module.css.js +0 -7
  145. package/components/form/helper-text/form-helper-text.module.css.js.map +0 -1
  146. package/components/form/helper-text/index.js +0 -22
  147. package/components/form/helper-text/index.js.map +0 -1
  148. package/components/form/indicator/form-indicator.module.css.js +0 -8
  149. package/components/form/indicator/form-indicator.module.css.js.map +0 -1
  150. package/components/form/indicator/index.js +0 -23
  151. package/components/form/indicator/index.js.map +0 -1
  152. package/components/form/label/form-label.module.css.js +0 -10
  153. package/components/form/label/form-label.module.css.js.map +0 -1
  154. package/components/form/label/index.js +0 -33
  155. package/components/form/label/index.js.map +0 -1
  156. package/components/form/legend/form-legend.module.css.js +0 -10
  157. package/components/form/legend/form-legend.module.css.js.map +0 -1
  158. package/components/form/legend/index.js +0 -19
  159. package/components/form/legend/index.js.map +0 -1
  160. package/components/form/radio/form-radio.module.scss.js +0 -8
  161. package/components/form/radio/form-radio.module.scss.js.map +0 -1
  162. package/components/form/radio/index.js +0 -100
  163. package/components/form/radio/index.js.map +0 -1
  164. package/components/form/radio-card/description.js +0 -10
  165. package/components/form/radio-card/description.js.map +0 -1
  166. package/components/form/radio-card/form-radio-card.module.css.js +0 -30
  167. package/components/form/radio-card/form-radio-card.module.css.js.map +0 -1
  168. package/components/form/radio-card/group.js +0 -31
  169. package/components/form/radio-card/group.js.map +0 -1
  170. package/components/form/radio-card/index.js +0 -67
  171. package/components/form/radio-card/index.js.map +0 -1
  172. package/components/form/radio-card/label.js +0 -10
  173. package/components/form/radio-card/label.js.map +0 -1
  174. package/components/form/select/form-select.module.css.js +0 -14
  175. package/components/form/select/form-select.module.css.js.map +0 -1
  176. package/components/form/select/index.js +0 -79
  177. package/components/form/select/index.js.map +0 -1
  178. package/components/form/super-select/form-super-select.module.css.js +0 -22
  179. package/components/form/super-select/form-super-select.module.css.js.map +0 -1
  180. package/components/form/super-select/index.js +0 -170
  181. package/components/form/super-select/index.js.map +0 -1
  182. package/components/form/text-input/index.js +0 -91
  183. package/components/form/text-input/index.js.map +0 -1
  184. package/components/form/text-input/styles.module.css.js +0 -15
  185. package/components/form/text-input/styles.module.css.js.map +0 -1
  186. package/components/form/textarea/form-textarea.module.css.js +0 -14
  187. package/components/form/textarea/form-textarea.module.css.js.map +0 -1
  188. package/components/form/textarea/index.js +0 -74
  189. package/components/form/textarea/index.js.map +0 -1
  190. package/components/form/toggle/form-toggle.module.scss.js +0 -12
  191. package/components/form/toggle/form-toggle.module.scss.js.map +0 -1
  192. package/components/form/toggle/index.js +0 -102
  193. package/components/form/toggle/index.js.map +0 -1
  194. package/components/hds/wrappers/tooltip.js +0 -51
  195. package/components/hds/wrappers/tooltip.js.map +0 -1
  196. package/components/icon-tile/index.js +0 -50
  197. package/components/icon-tile/index.js.map +0 -1
  198. package/components/icon-tile/style.module.scss.js +0 -29
  199. package/components/icon-tile/style.module.scss.js.map +0 -1
  200. package/components/inline-link/index.js +0 -33
  201. package/components/inline-link/index.js.map +0 -1
  202. package/components/inline-link/inline-link.module.css.js +0 -11
  203. package/components/inline-link/inline-link.module.css.js.map +0 -1
  204. package/components/interactive/index.js +0 -59
  205. package/components/interactive/index.js.map +0 -1
  206. package/components/legacy-button/index.js +0 -65
  207. package/components/legacy-button/index.js.map +0 -1
  208. package/components/legacy-button/utils.js +0 -39
  209. package/components/legacy-button/utils.js.map +0 -1
  210. package/components/menu-primitive/index.js +0 -68
  211. package/components/menu-primitive/index.js.map +0 -1
  212. package/components/menu-primitive/styles.module.css.js +0 -12
  213. package/components/menu-primitive/styles.module.css.js.map +0 -1
  214. package/components/menu-primitive/use-menu-primitive.js +0 -17
  215. package/components/menu-primitive/use-menu-primitive.js.map +0 -1
  216. package/components/modal/index.js +0 -61
  217. package/components/modal/index.js.map +0 -1
  218. package/components/modal/modal.module.css.js +0 -8
  219. package/components/modal/modal.module.css.js.map +0 -1
  220. package/components/modal/use-modal.js +0 -17
  221. package/components/modal/use-modal.js.map +0 -1
  222. package/components/separator/index.js +0 -15
  223. package/components/separator/index.js.map +0 -1
  224. package/components/separator/separator.module.css.js +0 -10
  225. package/components/separator/separator.module.css.js.map +0 -1
  226. package/components/standalone-link/index.js +0 -54
  227. package/components/standalone-link/index.js.map +0 -1
  228. package/components/standalone-link/styles.module.scss.js +0 -17
  229. package/components/standalone-link/styles.module.scss.js.map +0 -1
  230. package/components/table/index.js +0 -52
  231. package/components/table/index.js.map +0 -1
  232. package/components/table/table.module.scss.js +0 -33
  233. package/components/table/table.module.scss.js.map +0 -1
  234. package/components/table/td.js +0 -28
  235. package/components/table/td.js.map +0 -1
  236. package/components/table/th-button-tooltip.js +0 -24
  237. package/components/table/th-button-tooltip.js.map +0 -1
  238. package/components/table/th.js +0 -43
  239. package/components/table/th.js.map +0 -1
  240. package/components/table/tr.js +0 -9
  241. package/components/table/tr.js.map +0 -1
  242. package/components/table/utils.js +0 -28
  243. package/components/table/utils.js.map +0 -1
  244. package/components/tabs/index.js +0 -117
  245. package/components/tabs/index.js.map +0 -1
  246. package/components/tabs/tab-panel.js +0 -35
  247. package/components/tabs/tab-panel.js.map +0 -1
  248. package/components/tabs/tab.js +0 -70
  249. package/components/tabs/tab.js.map +0 -1
  250. package/components/tabs/tabs.module.scss.js +0 -22
  251. package/components/tabs/tabs.module.scss.js.map +0 -1
  252. package/components/tabs/use-tabs-context.js +0 -16
  253. package/components/tabs/use-tabs-context.js.map +0 -1
  254. package/components/text/index.js +0 -112
  255. package/components/text/index.js.map +0 -1
  256. package/components/text/style.module.scss.js +0 -9
  257. package/components/text/style.module.scss.js.map +0 -1
  258. package/components/visualizations/bar-chart/horizontal-chart/dataset-value/index.js +0 -62
  259. package/components/visualizations/bar-chart/horizontal-chart/dataset-value/index.js.map +0 -1
  260. package/components/visualizations/bar-chart/horizontal-chart/dataset-value/style.module.css.js +0 -20
  261. package/components/visualizations/bar-chart/horizontal-chart/dataset-value/style.module.css.js.map +0 -1
  262. package/components/visualizations/bar-chart/horizontal-chart/index.js +0 -104
  263. package/components/visualizations/bar-chart/horizontal-chart/index.js.map +0 -1
  264. package/components/visualizations/bar-chart/horizontal-chart/legend/index.js +0 -13
  265. package/components/visualizations/bar-chart/horizontal-chart/legend/index.js.map +0 -1
  266. package/components/visualizations/bar-chart/horizontal-chart/legend/style.module.css.js +0 -14
  267. package/components/visualizations/bar-chart/horizontal-chart/legend/style.module.css.js.map +0 -1
  268. package/components/visualizations/bar-chart/horizontal-chart/style.module.css.js +0 -28
  269. package/components/visualizations/bar-chart/horizontal-chart/style.module.css.js.map +0 -1
  270. package/components/visualizations/bar-chart/index.js +0 -37
  271. package/components/visualizations/bar-chart/index.js.map +0 -1
  272. package/components/visualizations/bar-chart/style.module.css.js +0 -12
  273. package/components/visualizations/bar-chart/style.module.css.js.map +0 -1
  274. package/components/visualizations/donut-chart/components/arc-tooltip/index.js +0 -14
  275. package/components/visualizations/donut-chart/components/arc-tooltip/index.js.map +0 -1
  276. package/components/visualizations/donut-chart/components/arc-tooltip/styles.module.css.js +0 -10
  277. package/components/visualizations/donut-chart/components/arc-tooltip/styles.module.css.js.map +0 -1
  278. package/components/visualizations/donut-chart/components/external-arc-label/index.js +0 -58
  279. package/components/visualizations/donut-chart/components/external-arc-label/index.js.map +0 -1
  280. package/components/visualizations/donut-chart/components/external-arc-label/styles.module.css.js +0 -16
  281. package/components/visualizations/donut-chart/components/external-arc-label/styles.module.css.js.map +0 -1
  282. package/components/visualizations/donut-chart/components/internal-arc-label/index.js +0 -42
  283. package/components/visualizations/donut-chart/components/internal-arc-label/index.js.map +0 -1
  284. package/components/visualizations/donut-chart/components/internal-arc-label/styles.module.css.js +0 -14
  285. package/components/visualizations/donut-chart/components/internal-arc-label/styles.module.css.js.map +0 -1
  286. package/components/visualizations/donut-chart/index.js +0 -90
  287. package/components/visualizations/donut-chart/index.js.map +0 -1
  288. package/components/visualizations/donut-chart/styles.module.css.js +0 -20
  289. package/components/visualizations/donut-chart/styles.module.css.js.map +0 -1
  290. package/hooks/use-media-query/index.js +0 -16
  291. package/hooks/use-media-query/index.js.map +0 -1
  292. package/patterns/card/newsroom-card/index.js +0 -26
  293. package/patterns/card/newsroom-card/index.js.map +0 -1
  294. package/patterns/card/newsroom-card/style.module.css.js +0 -8
  295. package/patterns/card/newsroom-card/style.module.css.js.map +0 -1
  296. package/patterns/card/partner-card/index.js +0 -42
  297. package/patterns/card/partner-card/index.js.map +0 -1
  298. package/patterns/card/partner-card/style.module.css.js +0 -12
  299. package/patterns/card/partner-card/style.module.css.js.map +0 -1
  300. package/patterns/card/person-card/index.js +0 -52
  301. package/patterns/card/person-card/index.js.map +0 -1
  302. package/patterns/card/person-card/style.module.css.js +0 -12
  303. package/patterns/card/person-card/style.module.css.js.map +0 -1
  304. package/patterns/card/primitives.js +0 -77
  305. package/patterns/card/primitives.js.map +0 -1
  306. package/patterns/card/promo-card/index.js +0 -36
  307. package/patterns/card/promo-card/index.js.map +0 -1
  308. package/patterns/card/resource-card/index.js +0 -26
  309. package/patterns/card/resource-card/index.js.map +0 -1
  310. package/patterns/card/style.module.css.js +0 -30
  311. package/patterns/card/style.module.css.js.map +0 -1
  312. package/patterns/card/thumbnails/index.js +0 -25
  313. package/patterns/card/thumbnails/index.js.map +0 -1
  314. package/patterns/card/unified-card/index.js +0 -37
  315. package/patterns/card/unified-card/index.js.map +0 -1
  316. package/patterns/copy-button/clipboard.js +0 -78
  317. package/patterns/copy-button/clipboard.js.map +0 -1
  318. package/patterns/copy-button/index.js +0 -57
  319. package/patterns/copy-button/index.js.map +0 -1
  320. package/patterns/copy-button/style.module.css.js +0 -13
  321. package/patterns/copy-button/style.module.css.js.map +0 -1
  322. package/patterns/layout/index.js +0 -47
  323. package/patterns/layout/index.js.map +0 -1
  324. package/patterns/layout/layout.module.css.js +0 -20
  325. package/patterns/layout/layout.module.css.js.map +0 -1
  326. package/patterns/product-badge/index.js +0 -22
  327. package/patterns/product-badge/index.js.map +0 -1
  328. package/patterns/product-badge/style.module.css.js +0 -8
  329. package/patterns/product-badge/style.module.css.js.map +0 -1
  330. package/patterns/product-logo/index.js +0 -130
  331. package/patterns/product-logo/index.js.map +0 -1
  332. package/patterns/product-logo/product-logo.module.css.js +0 -13
  333. package/patterns/product-logo/product-logo.module.css.js.map +0 -1
  334. package/patterns/related-content/index.js +0 -65
  335. package/patterns/related-content/index.js.map +0 -1
  336. package/patterns/related-content/style.module.css.js +0 -22
  337. package/patterns/related-content/style.module.css.js.map +0 -1
  338. package/utils/get-contrast-yiq.js +0 -13
  339. package/utils/get-contrast-yiq.js.map +0 -1
  340. package/utils/hooks/use-screen-size.js +0 -10
  341. package/utils/hooks/use-screen-size.js.map +0 -1
  342. package/utils/i18n/constants/index.js +0 -98
  343. package/utils/i18n/constants/index.js.map +0 -1
  344. package/utils/i18n/helpers/locale-provider.js +0 -9
  345. package/utils/i18n/helpers/locale-provider.js.map +0 -1
  346. package/utils/i18n/helpers/to-smart-sentence-case.js +0 -12
  347. package/utils/i18n/helpers/to-smart-sentence-case.js.map +0 -1
  348. package/utils/i18n/helpers/to-smart-title-case.js +0 -10
  349. package/utils/i18n/helpers/to-smart-title-case.js.map +0 -1
  350. package/utils/i18n/helpers/use-locale.js +0 -14
  351. package/utils/i18n/helpers/use-locale.js.map +0 -1
  352. package/utils/i18n/index.js +0 -41
  353. package/utils/i18n/index.js.map +0 -1
  354. package/utils/i18n/index2.js +0 -33
  355. package/utils/i18n/index2.js.map +0 -1
  356. package/utils/make-normalizer/index.js +0 -34
  357. package/utils/make-normalizer/index.js.map +0 -1
  358. package/utils/mds-context/index.js.map +0 -1
@@ -1,74 +0,0 @@
1
- import { jsx as s } from "react/jsx-runtime";
2
- import f from "classnames";
3
- import { useId as y } from "react";
4
- import { Field as A } from "../field/index.js";
5
- import m from "./form-textarea.module.css.js";
6
- const F = ({
7
- isInvalid: t,
8
- isLoading: l,
9
- className: e,
10
- id: r,
11
- field: a,
12
- size: i,
13
- error: o,
14
- ...d
15
- }) => /* @__PURE__ */ s(
16
- "textarea",
17
- {
18
- id: r,
19
- className: f(
20
- m.textarea,
21
- m[i],
22
- {
23
- [m.invalid]: t
24
- },
25
- e
26
- ),
27
- "aria-describedby": `${o ? "error" : "helper-text"}-${r}`,
28
- ...a,
29
- ...d
30
- }
31
- ), I = ({
32
- isInvalid: t,
33
- isLoading: l,
34
- isRequired: e,
35
- isOptional: r,
36
- id: a,
37
- label: i,
38
- helperText: o,
39
- error: d,
40
- field: c,
41
- size: p = "medium",
42
- ...x
43
- }) => {
44
- const u = y(), n = a ?? u;
45
- return /* @__PURE__ */ s(
46
- A,
47
- {
48
- label: i,
49
- helperText: o,
50
- error: d,
51
- isRequired: e,
52
- isOptional: r,
53
- id: n,
54
- layout: "vertical",
55
- children: /* @__PURE__ */ s(
56
- F,
57
- {
58
- id: n,
59
- isInvalid: t,
60
- isLoading: l,
61
- required: e,
62
- field: c,
63
- size: p,
64
- ...x
65
- }
66
- )
67
- }
68
- );
69
- };
70
- I.displayName = "TextAreaField";
71
- export {
72
- I as TextAreaField
73
- };
74
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/form/textarea/index.tsx"],"sourcesContent":["import classNames from 'classnames'\nimport { useId } from 'react'\nimport { Field } from '../field'\nimport type { HTMLProps, ReactNode } from 'react'\nimport s from './form-textarea.module.css'\n\ninterface TextAreaBaseProps {\n\tisInvalid?: boolean\n\tisLoading?: boolean\n\trequired?: boolean\n\tclassName?: string\n\tid: string\n\tfield: HTMLProps<HTMLTextAreaElement>\n\tsize: 'medium' | 'large'\n\terror?: ReactNode\n\tdisabled?: boolean\n}\n\nconst TextAreaBase = ({\n\tisInvalid,\n\tisLoading,\n\tclassName,\n\tid,\n\tfield,\n\tsize,\n\terror,\n\t...rest\n}: TextAreaBaseProps) => {\n\treturn (\n\t\t<textarea\n\t\t\tid={id}\n\t\t\tclassName={classNames(\n\t\t\t\ts.textarea,\n\t\t\t\ts[size],\n\t\t\t\t{\n\t\t\t\t\t[s.invalid]: isInvalid,\n\t\t\t\t},\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\taria-describedby={`${error ? 'error' : 'helper-text'}-${id}`}\n\t\t\t{...field}\n\t\t\t{...rest}\n\t\t/>\n\t)\n}\n\ninterface TextAreaFieldProps {\n\tisInvalid?: boolean\n\tisLoading?: boolean\n\tisRequired?: boolean\n\tisOptional?: boolean\n\tid?: string\n\tlabel?: ReactNode\n\thelperText?: ReactNode\n\terror?: ReactNode\n\tfield: HTMLProps<HTMLTextAreaElement>\n\tsize?: 'medium' | 'large'\n\tdisabled?: boolean\n}\n\nconst TextAreaField = ({\n\tisInvalid,\n\tisLoading,\n\tisRequired,\n\tisOptional,\n\tid,\n\tlabel,\n\thelperText,\n\terror,\n\tfield,\n\tsize = 'medium',\n\t...rest\n}: TextAreaFieldProps) => {\n\tconst generatedId = useId()\n\tconst inputId = id ?? generatedId\n\n\treturn (\n\t\t<Field\n\t\t\tlabel={label}\n\t\t\thelperText={helperText}\n\t\t\terror={error}\n\t\t\tisRequired={isRequired}\n\t\t\tisOptional={isOptional}\n\t\t\tid={inputId}\n\t\t\tlayout=\"vertical\"\n\t\t>\n\t\t\t<TextAreaBase\n\t\t\t\tid={inputId}\n\t\t\t\tisInvalid={isInvalid}\n\t\t\t\tisLoading={isLoading}\n\t\t\t\trequired={isRequired}\n\t\t\t\tfield={field}\n\t\t\t\tsize={size}\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t</Field>\n\t)\n}\n\nTextAreaField.displayName = 'TextAreaField'\n\nexport { TextAreaField }\n"],"names":["TextAreaBase","isInvalid","isLoading","className","id","field","size","error","rest","jsx","classNames","s","TextAreaField","isRequired","isOptional","label","helperText","generatedId","useId","inputId","Field"],"mappings":";;;;;AAkBA,MAAMA,IAAe,CAAC;AAAA,EACrB,WAAAC;AAAA,EACA,WAAAC;AAAA,EACA,WAAAC;AAAA,EACA,IAAAC;AAAA,EACA,OAAAC;AAAA,EACA,MAAAC;AAAA,EACA,OAAAC;AAAA,EACA,GAAGC;AACJ,MAEE,gBAAAC;AAAA,EAAC;AAAA,EAAA;AAAA,IACA,IAAAL;AAAA,IACA,WAAWM;AAAA,MACVC,EAAE;AAAA,MACFA,EAAEL,CAAI;AAAA,MACN;AAAA,QACC,CAACK,EAAE,OAAO,GAAGV;AAAA,MAAA;AAAA,MAEdE;AAAA,IAAA;AAAA,IAED,oBAAkB,GAAGI,IAAQ,UAAU,aAAa,IAAIH,CAAE;AAAA,IACzD,GAAGC;AAAA,IACH,GAAGG;AAAA,EAAA;AAAA,GAmBDI,IAAgB,CAAC;AAAA,EACtB,WAAAX;AAAA,EACA,WAAAC;AAAA,EACA,YAAAW;AAAA,EACA,YAAAC;AAAA,EACA,IAAAV;AAAA,EACA,OAAAW;AAAA,EACA,YAAAC;AAAA,EACA,OAAAT;AAAA,EACA,OAAAF;AAAA,EACA,MAAAC,IAAO;AAAA,EACP,GAAGE;AACJ,MAA0B;AACzB,QAAMS,IAAcC,EAAA,GACdC,IAAUf,KAAMa;AAEtB,SACC,gBAAAR;AAAA,IAACW;AAAA,IAAA;AAAA,MACA,OAAAL;AAAA,MACA,YAAAC;AAAA,MACA,OAAAT;AAAA,MACA,YAAAM;AAAA,MACA,YAAAC;AAAA,MACA,IAAIK;AAAA,MACJ,QAAO;AAAA,MAEP,UAAA,gBAAAV;AAAA,QAACT;AAAA,QAAA;AAAA,UACA,IAAImB;AAAA,UACJ,WAAAlB;AAAA,UACA,WAAAC;AAAA,UACA,UAAUW;AAAA,UACV,OAAAR;AAAA,UACA,MAAAC;AAAA,UACC,GAAGE;AAAA,QAAA;AAAA,MAAA;AAAA,IACL;AAAA,EAAA;AAGH;AAEAI,EAAc,cAAc;"}
@@ -1,12 +0,0 @@
1
- const o = "toggle__PmDvt", t = "control__GLB77", c = "facade__-n7d2", a = {
2
- toggle: o,
3
- control: t,
4
- facade: c
5
- };
6
- export {
7
- t as control,
8
- a as default,
9
- c as facade,
10
- o as toggle
11
- };
12
- //# sourceMappingURL=form-toggle.module.scss.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"form-toggle.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
@@ -1,102 +0,0 @@
1
- import { jsx as o, jsxs as F } from "react/jsx-runtime";
2
- import { useId as p } from "react";
3
- import { Field as I } from "../field/index.js";
4
- import { Fieldset as x } from "../fieldset/index.js";
5
- import g from "./form-toggle.module.scss.js";
6
- const u = ({
7
- id: e,
8
- field: r,
9
- toggleOnEnter: t,
10
- testingKey: l,
11
- error: a,
12
- ...d
13
- }) => {
14
- const i = p(), c = e ?? i, n = (s) => {
15
- s.key === "Enter" && (s.currentTarget.checked = !s.currentTarget.checked);
16
- };
17
- return /* @__PURE__ */ F("div", { className: g.toggle, children: [
18
- /* @__PURE__ */ o(
19
- "input",
20
- {
21
- id: c,
22
- className: g.control,
23
- type: "checkbox",
24
- ...r,
25
- ...d,
26
- role: "switch",
27
- "aria-describedby": `${a ? "error" : "helper-text"}-${e}`,
28
- onKeyDown: t ? n : void 0,
29
- "data-testid": l
30
- }
31
- ),
32
- /* @__PURE__ */ o("div", { className: g.facade })
33
- ] });
34
- };
35
- u.displayName = "ToggleBase";
36
- const T = ({
37
- isInvalid: e,
38
- isRequired: r,
39
- isOptional: t,
40
- id: l,
41
- label: a,
42
- helperText: d,
43
- error: i,
44
- field: c,
45
- className: n,
46
- testingKey: s,
47
- ...f
48
- }) => {
49
- const h = p(), m = l ?? h;
50
- return /* @__PURE__ */ o(
51
- I,
52
- {
53
- label: a,
54
- helperText: d,
55
- error: i,
56
- isRequired: r,
57
- isOptional: t,
58
- id: m,
59
- layout: "flag",
60
- className: n,
61
- children: /* @__PURE__ */ o(
62
- u,
63
- {
64
- id: m,
65
- field: c,
66
- testingKey: s,
67
- ...f
68
- }
69
- )
70
- }
71
- );
72
- };
73
- T.displayName = "ToggleField";
74
- const y = ({
75
- layout: e = "vertical",
76
- legend: r,
77
- isOptional: t,
78
- isRequired: l,
79
- children: a
80
- }) => /* @__PURE__ */ o(
81
- x,
82
- {
83
- layout: e,
84
- legend: r,
85
- isOptional: t,
86
- isRequired: l,
87
- children: a
88
- }
89
- );
90
- y.displayName = "ToggleGroupRoot";
91
- const N = (e) => /* @__PURE__ */ o(T, { ...e, className: e.className });
92
- N.displayName = "ToggleGroupField";
93
- const j = {
94
- Root: y,
95
- Field: N
96
- };
97
- export {
98
- u as ToggleBase,
99
- T as ToggleField,
100
- j as ToggleGroup
101
- };
102
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/form/toggle/index.tsx"],"sourcesContent":["import { useId } from 'react'\nimport type { ReactNode, HTMLProps, ComponentProps } from 'react'\nimport { Field } from '../field'\nimport { Fieldset } from '../fieldset'\nimport s from './form-toggle.module.scss'\n\ninterface ToggleBaseProps {\n\tid?: string\n\n\t/**\n\t * Can be used to supply any props that the native `<input>` element supports (such as `value`, `placeholder`, in addition to events like `onChange` and `onBlur`)\n\t */\n\tfield: HTMLProps<HTMLInputElement>\n\ttoggleOnEnter?: boolean\n\ttestingKey?: string\n\terror?: ReactNode\n}\n\nconst ToggleBase = ({\n\tid,\n\tfield,\n\ttoggleOnEnter,\n\ttestingKey,\n\terror,\n\t...rest\n}: ToggleBaseProps) => {\n\tconst generatedId = useId()\n\tconst inputId = id ?? generatedId\n\n\tconst handleEnterKey = (event: React.KeyboardEvent<HTMLInputElement>) => {\n\t\tif (event.key === 'Enter') {\n\t\t\tevent.currentTarget.checked = !event.currentTarget.checked\n\t\t}\n\t}\n\n\treturn (\n\t\t<div className={s.toggle}>\n\t\t\t<input\n\t\t\t\tid={inputId}\n\t\t\t\tclassName={s.control}\n\t\t\t\ttype=\"checkbox\"\n\t\t\t\t{...field}\n\t\t\t\t{...rest}\n\t\t\t\trole=\"switch\"\n\t\t\t\taria-describedby={`${error ? 'error' : 'helper-text'}-${id}`}\n\t\t\t\tonKeyDown={toggleOnEnter ? handleEnterKey : undefined}\n\t\t\t\tdata-testid={testingKey}\n\t\t\t/>\n\t\t\t<div className={s.facade}></div>\n\t\t</div>\n\t)\n}\n\nToggleBase.displayName = 'ToggleBase'\n\ninterface ToggleFieldProps {\n\t/**\n\t * Applies an “invalid” appearance to the control but doesn’t modify its logical validity.\n\t */\n\tisInvalid?: boolean\n\n\t/**\n\t * Appends a `Required` indicator next to the label text and sets the `required` attribute on the control when user input is required.\n\t */\n\tisRequired?: boolean\n\n\t/**\n\t * Appends an `Optional` indicator next to the label text when user input is optional.\n\t */\n\tisOptional?: boolean\n\n\t/**\n\t * Input control’s ID attribute.\n\t *\n\t * By default, the ID is automatically generated by the component. Use this argument to pass a custom ID.\n\t */\n\tid?: string\n\n\t/**\n\t * Container that renders its content inside the `<label>` element. The content can be a simple string or a `ReactNode`, in which case it inherits the text style.\n\t *\n\t * The `for` attribute of the label is automatically generated using the `controlId` value of the control.\n\t */\n\tlabel?: ReactNode\n\n\t/**\n\t * Container that renders its content inside the \"helper text\" block. The content can be a simple string or a `ReactNode`, in which case it inherits the text style.\n\t *\n\t * The `id` attribute of the message is automatically generated using the `controlId` value of the control.\n\t */\n\thelperText?: ReactNode\n\n\t/**\n\t * Container that renders its content inside the \"error\" block. The content can be a simple string or a `ReactNode`, in which case it inherits the text style.\n\t *\n\t * The `id` attribute of the error message is automatically generated using the `controlId` value of the control.\n\t */\n\terror?: ReactNode\n\n\t/**\n\t * Can be used to supply any props that the native `<input>` element supports (such as `value`, `placeholder`, in addition to events like `onChange` and `onBlur`)\n\t */\n\tfield: HTMLProps<HTMLInputElement>\n\tclassName?: string\n\ttestingKey?: string\n}\n\nconst ToggleField = ({\n\tisInvalid,\n\tisRequired,\n\tisOptional,\n\tid,\n\tlabel,\n\thelperText,\n\terror,\n\tfield,\n\tclassName,\n\ttestingKey,\n\t...rest\n}: ToggleFieldProps) => {\n\tconst generatedId = useId()\n\tconst inputId = id ?? generatedId\n\treturn (\n\t\t<Field\n\t\t\tlabel={label}\n\t\t\thelperText={helperText}\n\t\t\terror={error}\n\t\t\tisRequired={isRequired}\n\t\t\tisOptional={isOptional}\n\t\t\tid={inputId}\n\t\t\tlayout=\"flag\"\n\t\t\tclassName={className}\n\t\t>\n\t\t\t<ToggleBase\n\t\t\t\tid={inputId}\n\t\t\t\tfield={field}\n\t\t\t\ttestingKey={testingKey}\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t</Field>\n\t)\n}\n\nToggleField.displayName = 'ToggleField'\n\ninterface ToggleGroupProps extends ComponentProps<typeof Fieldset> {\n\tchildren: ReactNode\n}\n\nconst ToggleGroupRoot = ({\n\tlayout = 'vertical',\n\tlegend,\n\tisOptional,\n\tisRequired,\n\tchildren,\n}: ToggleGroupProps) => {\n\treturn (\n\t\t<Fieldset\n\t\t\tlayout={layout}\n\t\t\tlegend={legend}\n\t\t\tisOptional={isOptional}\n\t\t\tisRequired={isRequired}\n\t\t>\n\t\t\t{children}\n\t\t</Fieldset>\n\t)\n}\n\nToggleGroupRoot.displayName = 'ToggleGroupRoot'\n\nconst ToggleGroupField = (props: ToggleFieldProps) => {\n\treturn <ToggleField {...props} className={props.className} />\n}\n\nToggleGroupField.displayName = 'ToggleGroupField'\n\nconst ToggleGroup = {\n\tRoot: ToggleGroupRoot,\n\tField: ToggleGroupField,\n}\n\nexport { ToggleBase, ToggleField, ToggleGroup }\n"],"names":["ToggleBase","id","field","toggleOnEnter","testingKey","error","rest","generatedId","useId","inputId","handleEnterKey","event","jsxs","s","jsx","ToggleField","isInvalid","isRequired","isOptional","label","helperText","className","Field","ToggleGroupRoot","layout","legend","children","Fieldset","ToggleGroupField","props","ToggleGroup"],"mappings":";;;;;AAkBA,MAAMA,IAAa,CAAC;AAAA,EACnB,IAAAC;AAAA,EACA,OAAAC;AAAA,EACA,eAAAC;AAAA,EACA,YAAAC;AAAA,EACA,OAAAC;AAAA,EACA,GAAGC;AACJ,MAAuB;AACtB,QAAMC,IAAcC,EAAA,GACdC,IAAUR,KAAMM,GAEhBG,IAAiB,CAACC,MAAiD;AACxE,IAAIA,EAAM,QAAQ,YACjBA,EAAM,cAAc,UAAU,CAACA,EAAM,cAAc;AAAA,EAErD;AAEA,SACC,gBAAAC,EAAC,OAAA,EAAI,WAAWC,EAAE,QACjB,UAAA;AAAA,IAAA,gBAAAC;AAAA,MAAC;AAAA,MAAA;AAAA,QACA,IAAIL;AAAA,QACJ,WAAWI,EAAE;AAAA,QACb,MAAK;AAAA,QACJ,GAAGX;AAAA,QACH,GAAGI;AAAA,QACJ,MAAK;AAAA,QACL,oBAAkB,GAAGD,IAAQ,UAAU,aAAa,IAAIJ,CAAE;AAAA,QAC1D,WAAWE,IAAgBO,IAAiB;AAAA,QAC5C,eAAaN;AAAA,MAAA;AAAA,IAAA;AAAA,IAEd,gBAAAU,EAAC,OAAA,EAAI,WAAWD,EAAE,OAAA,CAAQ;AAAA,EAAA,GAC3B;AAEF;AAEAb,EAAW,cAAc;AAsDzB,MAAMe,IAAc,CAAC;AAAA,EACpB,WAAAC;AAAA,EACA,YAAAC;AAAA,EACA,YAAAC;AAAA,EACA,IAAAjB;AAAA,EACA,OAAAkB;AAAA,EACA,YAAAC;AAAA,EACA,OAAAf;AAAA,EACA,OAAAH;AAAA,EACA,WAAAmB;AAAA,EACA,YAAAjB;AAAA,EACA,GAAGE;AACJ,MAAwB;AACvB,QAAMC,IAAcC,EAAA,GACdC,IAAUR,KAAMM;AACtB,SACC,gBAAAO;AAAA,IAACQ;AAAA,IAAA;AAAA,MACA,OAAAH;AAAA,MACA,YAAAC;AAAA,MACA,OAAAf;AAAA,MACA,YAAAY;AAAA,MACA,YAAAC;AAAA,MACA,IAAIT;AAAA,MACJ,QAAO;AAAA,MACP,WAAAY;AAAA,MAEA,UAAA,gBAAAP;AAAA,QAACd;AAAA,QAAA;AAAA,UACA,IAAIS;AAAA,UACJ,OAAAP;AAAA,UACA,YAAAE;AAAA,UACC,GAAGE;AAAA,QAAA;AAAA,MAAA;AAAA,IACL;AAAA,EAAA;AAGH;AAEAS,EAAY,cAAc;AAM1B,MAAMQ,IAAkB,CAAC;AAAA,EACxB,QAAAC,IAAS;AAAA,EACT,QAAAC;AAAA,EACA,YAAAP;AAAA,EACA,YAAAD;AAAA,EACA,UAAAS;AACD,MAEE,gBAAAZ;AAAA,EAACa;AAAA,EAAA;AAAA,IACA,QAAAH;AAAA,IACA,QAAAC;AAAA,IACA,YAAAP;AAAA,IACA,YAAAD;AAAA,IAEC,UAAAS;AAAA,EAAA;AAAA;AAKJH,EAAgB,cAAc;AAE9B,MAAMK,IAAmB,CAACC,wBACjBd,GAAA,EAAa,GAAGc,GAAO,WAAWA,EAAM,WAAW;AAG5DD,EAAiB,cAAc;AAE/B,MAAME,IAAc;AAAA,EACnB,MAAMP;AAAA,EACN,OAAOK;AACR;"}
@@ -1,51 +0,0 @@
1
- "use client";
2
- import { jsx as i } from "react/jsx-runtime";
3
- import s from "@tippyjs/react";
4
- import { followCursor as d } from "tippy.js";
5
- import "tippy.js/dist/svg-arrow.css";
6
- const n = {
7
- name: "hideOnEsc",
8
- defaultValue: !0,
9
- fn(e) {
10
- function o(t) {
11
- t.key === "Escape" && e.hide();
12
- }
13
- return {
14
- onShow() {
15
- document.addEventListener("keydown", o);
16
- },
17
- onHide() {
18
- document.removeEventListener("keydown", o);
19
- }
20
- };
21
- }
22
- }, w = ({ options: e = {}, children: o, text: t }) => {
23
- const r = e.followCursor !== void 0 ? [n, d] : [n];
24
- return /* @__PURE__ */ i(
25
- s,
26
- {
27
- theme: "hds",
28
- arrow: `<svg
29
- className="hds-tooltip-pointer"
30
- width="16"
31
- height="7"
32
- viewBox="0 0 16 7"
33
- xmlns="http://www.w3.org/2000/svg"
34
- >
35
- <path d="M0 7H16L9.11989 0.444571C8.49776 -0.148191 7.50224 -0.148191 6.88011 0.444572L0 7Z" />
36
- </svg>`,
37
- interactive: !0,
38
- aria: {
39
- content: "describedby"
40
- },
41
- plugins: r,
42
- content: t,
43
- ...e,
44
- children: o
45
- }
46
- );
47
- };
48
- export {
49
- w as Tooltip
50
- };
51
- //# sourceMappingURL=tooltip.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tooltip.js","sources":["../../../../src/components/hds/wrappers/tooltip.tsx"],"sourcesContent":["'use client'\n\nimport Tippy, { type TippyProps } from '@tippyjs/react'\nimport { followCursor, type Plugin } from 'tippy.js'\nimport type { ReactElement } from 'react'\nimport 'tippy.js/dist/svg-arrow.css'\n\nexport interface TooltipProps {\n\toptions?: TippyProps\n\tchildren: TippyProps['children']\n\ttext: string | ReactElement\n}\n\nexport interface HideOnEsc extends Plugin {\n\tname: 'hideOnEsc'\n\tdefaultValue: true\n}\n\nconst hideOnEsc = {\n\tname: 'hideOnEsc',\n\tdefaultValue: true,\n\tfn(instance: { hide: () => void }) {\n\t\tfunction onKeyDown(event: KeyboardEvent): void {\n\t\t\tif (event.key === 'Escape') {\n\t\t\t\tinstance.hide()\n\t\t\t}\n\t\t}\n\n\t\treturn {\n\t\t\tonShow() {\n\t\t\t\tdocument.addEventListener('keydown', onKeyDown)\n\t\t\t},\n\t\t\tonHide() {\n\t\t\t\tdocument.removeEventListener('keydown', onKeyDown)\n\t\t\t},\n\t\t}\n\t},\n}\n\nexport const Tooltip = ({ options = {}, children, text }: TooltipProps) => {\n\tconst plugins =\n\t\toptions.followCursor !== undefined ? [hideOnEsc, followCursor] : [hideOnEsc]\n\n\treturn (\n\t\t<Tippy\n\t\t\ttheme=\"hds\"\n\t\t\tarrow={`<svg\n\t\t\t\t\tclassName=\"hds-tooltip-pointer\"\n\t\t\t\t\twidth=\"16\"\n\t\t\t\t\theight=\"7\"\n\t\t\t\t\tviewBox=\"0 0 16 7\"\n\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t>\n\t\t\t\t\t<path d=\"M0 7H16L9.11989 0.444571C8.49776 -0.148191 7.50224 -0.148191 6.88011 0.444572L0 7Z\" />\n\t\t\t\t</svg>`}\n\t\t\tinteractive\n\t\t\taria={{\n\t\t\t\tcontent: 'describedby',\n\t\t\t}}\n\t\t\tplugins={plugins}\n\t\t\tcontent={text}\n\t\t\t{...options}\n\t\t>\n\t\t\t{children}\n\t\t</Tippy>\n\t)\n}\n"],"names":["hideOnEsc","instance","onKeyDown","event","options","text","followCursor","jsx","Tippy","plugins","children"],"mappings":";;;;;AAkBkB,MACjBA,IAAM;AAAA,EACN,MAAA;AAAA,EACA,cAAmC;AAAA,EAClC,GAAAC,GAAS;AACR,aAAIC;AACH,MAAAC,EAAA,QAAc,YACfF,EAAA,KAAA;AAAA,IAGD;AAAO;MAEL;AACD,iBAAA,iBAAA,WAAAC,CAAA;AAAA,MACA;AAAA,MACC;AACD,iBAAA,oBAAA,WAAAA,CAAA;AAAA,MACD;AAAA,IACD;AAAA,EACD;AAEO,OACA,CAAA,EACL,SAAAE,qBAAyB,MAAAC,EAAA;AAE1B,cACC,iBAAA,SAAA,CAAAL,GAAAM,CAAA,IAAA,CAAAN,CAAA;AAAA,SAAC,gBAAAO;AAAA,IAAAC;AAAA,IAAA;AAAA,MAEA,OAAO;AAAA,MAAA,OAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAUP,aAAM;AAAA,MAAA;QAEN,SAAA;AAAA,MACA;AAAA,MACA,SAAAC;AAAA,MACC,SAAGJ;AAAA,MAEH,GAAAD;AAAA,MAAA,UAAAM;AAAA,IACF;AAAA,EAEF;;"}
@@ -1,50 +0,0 @@
1
- import { jsxs as u, jsx as o } from "react/jsx-runtime";
2
- import N from "classnames";
3
- import { FlightIcon as t } from "../flight-icon/index.js";
4
- import e from "./style.module.scss.js";
5
- const f = {
6
- small: 12,
7
- medium: 16,
8
- large: 16
9
- }, h = ({
10
- size: i = "medium",
11
- logo: r,
12
- icon: m,
13
- iconSecondary: s,
14
- color: n = "neutral",
15
- ...a
16
- }) => {
17
- const c = r ? `${r}-color` : m;
18
- if (c) {
19
- const l = i === "small" ? 16 : 24, d = r ? "logo" : "icon", p = r || n;
20
- return /* @__PURE__ */ u(
21
- "div",
22
- {
23
- className: N(
24
- e["icon-tile"],
25
- e[`type-${d}`],
26
- e[`size-${i}`],
27
- e[`color-${p}`]
28
- ),
29
- "aria-hidden": "true",
30
- ...a,
31
- children: [
32
- /* @__PURE__ */ o("div", { className: r ? e.logo : e.icon, children: /* @__PURE__ */ o(t, { name: c, size: l, stretched: !0 }) }),
33
- s && /* @__PURE__ */ o("div", { className: e.extra, children: /* @__PURE__ */ o(
34
- t,
35
- {
36
- name: s,
37
- size: f[i],
38
- color: "var(--mds-color-foreground-strong)"
39
- }
40
- ) })
41
- ]
42
- }
43
- );
44
- }
45
- };
46
- h.displayName = "IconTile";
47
- export {
48
- h as IconTile
49
- };
50
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/icon-tile/index.tsx"],"sourcesContent":["import classNames from 'classnames'\nimport type { FlightIconSize } from '../flight-icon'\nimport { FlightIcon } from '../flight-icon'\nimport type { HTMLAttributes } from 'react'\nimport s from './style.module.scss'\n\ntype BaseProps = {\n\tsize: 'small' | 'medium' | 'large'\n\ticonSecondary?: string\n\tcolor?:\n\t\t| 'neutral'\n\t\t| 'boundary'\n\t\t| 'consul'\n\t\t| 'nomad'\n\t\t| 'packer'\n\t\t| 'terraform'\n\t\t| 'vagrant'\n\t\t| 'vault'\n\t\t| 'vault-secrets'\n\t\t| 'waypoint'\n} & Omit<HTMLAttributes<HTMLDivElement>, 'className' | 'style'>\n\ntype WithLogo = {\n\tlogo:\n\t\t| 'hcp'\n\t\t| 'boundary'\n\t\t| 'consul'\n\t\t| 'nomad'\n\t\t| 'packer'\n\t\t| 'terraform'\n\t\t| 'vagrant'\n\t\t| 'vault'\n\t\t| 'vault-secrets'\n\t\t| 'waypoint'\n\ticon?: never\n}\n\ntype WithIcon = {\n\ticon: string\n\tlogo?: never\n}\n\ntype IconTileProps = BaseProps & (WithLogo | WithIcon)\n\nconst EXTRA_ICON_SIZE_MAP = {\n\tsmall: 12,\n\tmedium: 16,\n\tlarge: 16,\n} as const satisfies Record<'small' | 'medium' | 'large', FlightIconSize>\n\nconst IconTile = ({\n\tsize = 'medium',\n\tlogo,\n\ticon,\n\ticonSecondary,\n\tcolor = 'neutral',\n\t...rest\n}: IconTileProps) => {\n\tconst iconName = logo ? `${logo}-color` : icon\n\n\tif (iconName) {\n\t\tconst iconSize = size === 'small' ? 16 : 24\n\t\tconst entity = logo ? 'logo' : 'icon'\n\t\tconst colorUse = logo ? logo : color\n\n\t\treturn (\n\t\t\t<div\n\t\t\t\tclassName={classNames(\n\t\t\t\t\ts['icon-tile'],\n\t\t\t\t\ts[`type-${entity}`],\n\t\t\t\t\ts[`size-${size}`],\n\t\t\t\t\ts[`color-${colorUse}`]\n\t\t\t\t)}\n\t\t\t\taria-hidden=\"true\"\n\t\t\t\t{...rest}\n\t\t\t>\n\t\t\t\t<div className={logo ? s.logo : s.icon}>\n\t\t\t\t\t<FlightIcon name={iconName} size={iconSize} stretched />\n\t\t\t\t</div>\n\t\t\t\t{iconSecondary && (\n\t\t\t\t\t<div className={s.extra}>\n\t\t\t\t\t\t<FlightIcon\n\t\t\t\t\t\t\tname={iconSecondary}\n\t\t\t\t\t\t\tsize={EXTRA_ICON_SIZE_MAP[size]}\n\t\t\t\t\t\t\tcolor=\"var(--mds-color-foreground-strong)\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t)\n\t}\n}\n\nIconTile.displayName = 'IconTile'\n\nexport type { IconTileProps }\nexport { IconTile }\n"],"names":["EXTRA_ICON_SIZE_MAP","IconTile","size","logo","icon","iconSecondary","color","rest","iconName","iconSize","entity","colorUse","jsxs","classNames","s","jsx","FlightIcon"],"mappings":";;;;AA4CA,MAAMA,IAAsB;AAAA,EAC3B,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,OAAO;AACR,GAEMC,IAAW,CAAC;AAAA,EACjB,MAAAC,IAAO;AAAA,EACP,MAAAC;AAAA,EACA,MAAAC;AAAA,EACA,eAAAC;AAAA,EACA,OAAAC,IAAQ;AAAA,EACR,GAAGC;AACJ,MAAqB;AACpB,QAAMC,IAAWL,IAAO,GAAGA,CAAI,WAAWC;AAE1C,MAAII,GAAU;AACb,UAAMC,IAAWP,MAAS,UAAU,KAAK,IACnCQ,IAASP,IAAO,SAAS,QACzBQ,IAAWR,KAAcG;AAE/B,WACC,gBAAAM;AAAA,MAAC;AAAA,MAAA;AAAA,QACA,WAAWC;AAAA,UACVC,EAAE,WAAW;AAAA,UACbA,EAAE,QAAQJ,CAAM,EAAE;AAAA,UAClBI,EAAE,QAAQZ,CAAI,EAAE;AAAA,UAChBY,EAAE,SAASH,CAAQ,EAAE;AAAA,QAAA;AAAA,QAEtB,eAAY;AAAA,QACX,GAAGJ;AAAA,QAEJ,UAAA;AAAA,UAAA,gBAAAQ,EAAC,OAAA,EAAI,WAAWZ,IAAOW,EAAE,OAAOA,EAAE,MACjC,UAAA,gBAAAC,EAACC,GAAA,EAAW,MAAMR,GAAU,MAAMC,GAAU,WAAS,IAAC,GACvD;AAAA,UACCJ,KACA,gBAAAU,EAAC,OAAA,EAAI,WAAWD,EAAE,OACjB,UAAA,gBAAAC;AAAA,YAACC;AAAA,YAAA;AAAA,cACA,MAAMX;AAAA,cACN,MAAML,EAAoBE,CAAI;AAAA,cAC9B,OAAM;AAAA,YAAA;AAAA,UAAA,EACP,CACD;AAAA,QAAA;AAAA,MAAA;AAAA,IAAA;AAAA,EAIJ;AACD;AAEAD,EAAS,cAAc;"}
@@ -1,29 +0,0 @@
1
- const o = "icon__aQOfk", r = "logo__3zBXv", l = "extra__5VSha", c = {
2
- "icon-tile": "icon-tile__8Lxip",
3
- icon: o,
4
- logo: r,
5
- extra: l,
6
- "size-small": "size-small__eKjTy",
7
- "size-medium": "size-medium__Cpd2c",
8
- "size-large": "size-large__0nIKA",
9
- "type-logo": "type-logo__bXQnG",
10
- "type-icon": "type-icon__DoyiK",
11
- "color-neutral": "color-neutral__s-i4y",
12
- "color-boundary": "color-boundary__TWXib",
13
- "color-consul": "color-consul__qHXGr",
14
- "color-hcp": "color-hcp__T1Cpx",
15
- "color-nomad": "color-nomad__OPKVc",
16
- "color-packer": "color-packer__VbjYn",
17
- "color-terraform": "color-terraform__CzLAd",
18
- "color-vagrant": "color-vagrant__GMAgE",
19
- "color-vault": "color-vault__yHn5Z",
20
- "color-vault-secrets": "color-vault-secrets__GiX0y",
21
- "color-waypoint": "color-waypoint__YASrb"
22
- };
23
- export {
24
- c as default,
25
- l as extra,
26
- o as icon,
27
- r as logo
28
- };
29
- //# sourceMappingURL=style.module.scss.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"style.module.scss.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,33 +0,0 @@
1
- import { jsxs as c, jsx as p } from "react/jsx-runtime";
2
- import f from "classnames";
3
- import { Interactive as I } from "../interactive/index.js";
4
- import i from "./inline-link.module.css.js";
5
- import { FlightIcon as d } from "../flight-icon/index.js";
6
- const g = ({
7
- text: m,
8
- color: o = "primary",
9
- icon: r,
10
- iconPosition: e = "trailing",
11
- className: s,
12
- isHrefExternal: t,
13
- ...a
14
- }) => {
15
- const l = r || !t ? r : "external-link", n = l && /* @__PURE__ */ p(d, { name: l, size: 16, className: i.icon });
16
- return /* @__PURE__ */ c(
17
- I,
18
- {
19
- className: f(i["link-inline"], i[`color-${o}`], s),
20
- ...a,
21
- children: [
22
- n && e === "leading" && n,
23
- m,
24
- n && e === "trailing" && n
25
- ]
26
- }
27
- );
28
- };
29
- g.displayName = "InlineLink";
30
- export {
31
- g as InlineLink
32
- };
33
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/inline-link/index.tsx"],"sourcesContent":["import classNames from 'classnames'\nimport { Interactive } from '../interactive'\nimport s from './inline-link.module.css'\nimport type { FlightIconName } from '../flight-icon'\nimport { FlightIcon } from '../flight-icon'\n\ninterface InlineLinkProps {\n\t/**\n\t * There are two available colors for an `<InlineLink />`: primary and secondary.\n\t */\n\tcolor?: 'primary' | 'secondary'\n\t/**\n\t * Use this parameter to show an icon.\n\t */\n\ticon?: FlightIconName\n\t/**\n\t * Positions the icon before or after the text.\n\t */\n\ticonPosition?: 'leading' | 'trailing'\n\t/**\n\t * URL parameter that’s passed down to the `<a>` element.\n\t */\n\thref: string\n\t/**\n\t * Controls if the <a> link is external. For security reasons, we add the target=\"_blank\" and rel=\"noopener noreferrer\" attributes to it by default.\n\t * default: `false`\n\t */\n\tisHrefExternal?: boolean\n\t/**\n\t * The content of the <a> HTML element.\n\t */\n\ttext: string\n\t/**\n\t * Optional class name to add to the component.\n\t */\n\tclassName?: string\n\tprefetch?: boolean\n\tlocale?: string\n}\n\nconst InlineLink = ({\n\ttext,\n\tcolor = 'primary',\n\ticon,\n\ticonPosition = 'trailing',\n\tclassName,\n\tisHrefExternal,\n\t...props\n}: InlineLinkProps) => {\n\tconst resolvedIcon = icon || !isHrefExternal ? icon : 'external-link'\n\tconst iconElement = resolvedIcon && (\n\t\t<FlightIcon name={resolvedIcon} size={16} className={s.icon} />\n\t)\n\n\treturn (\n\t\t<Interactive\n\t\t\tclassName={classNames(s['link-inline'], s[`color-${color}`], className)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{iconElement && iconPosition === 'leading' && iconElement}\n\t\t\t{text}\n\t\t\t{iconElement && iconPosition === 'trailing' && iconElement}\n\t\t</Interactive>\n\t)\n}\n\nInlineLink.displayName = 'InlineLink'\n\nexport type { InlineLinkProps }\nexport { InlineLink }\n"],"names":["InlineLink","text","color","icon","iconPosition","className","isHrefExternal","props","resolvedIcon","iconElement","jsx","FlightIcon","s","jsxs","Interactive","classNames"],"mappings":";;;;;AAwCA,MAAMA,IAAa,CAAC;AAAA,EACnB,MAAAC;AAAA,EACA,OAAAC,IAAQ;AAAA,EACR,MAAAC;AAAA,EACA,cAAAC,IAAe;AAAA,EACf,WAAAC;AAAA,EACA,gBAAAC;AAAA,EACA,GAAGC;AACJ,MAAuB;AACtB,QAAMC,IAAeL,KAAQ,CAACG,IAAiBH,IAAO,iBAChDM,IAAcD,KACnB,gBAAAE,EAACC,GAAA,EAAW,MAAMH,GAAc,MAAM,IAAI,WAAWI,EAAE,KAAA,CAAM;AAG9D,SACC,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACA,WAAWC,EAAWH,EAAE,aAAa,GAAGA,EAAE,SAASV,CAAK,EAAE,GAAGG,CAAS;AAAA,MACrE,GAAGE;AAAA,MAEH,UAAA;AAAA,QAAAE,KAAeL,MAAiB,aAAaK;AAAA,QAC7CR;AAAA,QACAQ,KAAeL,MAAiB,cAAcK;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGlD;AAEAT,EAAW,cAAc;"}
@@ -1,11 +0,0 @@
1
- const o = "icon__CPQmv", n = {
2
- "link-inline": "link-inline__Wl8cA",
3
- "color-primary": "color-primary__XlogH",
4
- "color-secondary": "color-secondary__sf-Wg",
5
- icon: o
6
- };
7
- export {
8
- n as default,
9
- o as icon
10
- };
11
- //# sourceMappingURL=inline-link.module.css.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"inline-link.module.css.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -1,59 +0,0 @@
1
- "use client";
2
- import { jsx as c } from "react/jsx-runtime";
3
- import { forwardRef as f } from "react";
4
- import { useMDSLink as l } from "../../utils/mds-context/index.js";
5
- const p = f((r, e) => {
6
- const t = l(), {
7
- href: i,
8
- className: o,
9
- isHrefExternal: n,
10
- onClick: s,
11
- children: a,
12
- locale: d,
13
- ...u
14
- } = r;
15
- return i ? /* @__PURE__ */ c(
16
- t,
17
- {
18
- className: o,
19
- target: n ? "_blank" : void 0,
20
- rel: n ? "noopener noreferrer" : void 0,
21
- onClick: s,
22
- ...g(i, d, n),
23
- ...u,
24
- ref: e,
25
- children: a
26
- }
27
- ) : /* @__PURE__ */ c(
28
- "button",
29
- {
30
- type: "button",
31
- className: o,
32
- onClick: s,
33
- ...u,
34
- ref: e,
35
- children: a
36
- }
37
- );
38
- });
39
- p.displayName = "Interactive";
40
- const g = (r, e, t) => t ? {
41
- href: r,
42
- hrefLang: void 0
43
- } : ["en", "de", "es", "fr", "ja", "ko", "pt", "id"].includes(
44
- r.substring(1, 3)
45
- ) ? {
46
- href: r,
47
- hrefLang: r.substring(1, 3)
48
- } : r.startsWith("/") && e ? {
49
- href: `/${e}${r}`,
50
- hrefLang: e
51
- } : {
52
- href: r,
53
- hrefLang: void 0
54
- };
55
- export {
56
- p as Interactive,
57
- g as getLocalizedLinkProps
58
- };
59
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/interactive/index.tsx"],"sourcesContent":["'use client'\n\nimport { forwardRef, type ForwardRefExoticComponent } from 'react'\nimport type { ButtonHTMLAttributes, MouseEventHandler } from 'react'\nimport { useMDSLink } from '../../utils/mds-context'\n\ninterface InteractiveProps extends React.HTMLAttributes<HTMLElement> {\n\tisHrefExternal?: boolean\n\thref?: string\n\tonClick?: MouseEventHandler\n\ttype?: ButtonHTMLAttributes<HTMLButtonElement>['type']\n\tprefetch?: boolean\n\tlocale?: string\n}\n\nconst Interactive = forwardRef<\n\tHTMLAnchorElement | HTMLButtonElement,\n\tInteractiveProps\n>((props, ref) => {\n\tconst Link = useMDSLink()\n\tconst {\n\t\thref,\n\t\tclassName,\n\t\tisHrefExternal,\n\t\tonClick,\n\t\tchildren,\n\t\tlocale,\n\t\t...rest\n\t} = props\n\n\t// TODO: trigger link on space key up\n\tif (href) {\n\t\treturn (\n\t\t\t<Link\n\t\t\t\tclassName={className}\n\t\t\t\ttarget={isHrefExternal ? '_blank' : undefined}\n\t\t\t\trel={isHrefExternal ? 'noopener noreferrer' : undefined}\n\t\t\t\tonClick={onClick}\n\t\t\t\t{...getLocalizedLinkProps(href, locale, isHrefExternal)}\n\t\t\t\t{...rest}\n\t\t\t\tref={ref as ForwardRefExoticComponent<HTMLAnchorElement>}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</Link>\n\t\t)\n\t} else {\n\t\treturn (\n\t\t\t<button\n\t\t\t\ttype=\"button\"\n\t\t\t\tclassName={className}\n\t\t\t\tonClick={onClick}\n\t\t\t\t{...rest}\n\t\t\t\tref={ref as ForwardRefExoticComponent<HTMLButtonElement>}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</button>\n\t\t)\n\t}\n})\nInteractive.displayName = 'Interactive'\n\n/**\n * Smaller, local version of our getLocalizedLinkProps util,\n * cloned here to work around a cyclic dependency issue\n * with the main @web/utils package.\n *\n * @param url An internal URL path\n * @param locale A supported locale\n * @returns A prefixed URL if locale is defined, otherwise the URL without prefix\n */\nexport const getLocalizedLinkProps = (\n\thref: string,\n\tlocale?: string,\n\tisHrefExternal?: boolean\n): {\n\thref: string\n\threfLang: string | undefined\n\tisHrefExternal?: boolean\n} => {\n\tif (isHrefExternal) {\n\t\treturn {\n\t\t\thref: href,\n\t\t\threfLang: undefined,\n\t\t}\n\t}\n\n\tif (\n\t\t['en', 'de', 'es', 'fr', 'ja', 'ko', 'pt', 'id'].includes(\n\t\t\thref.substring(1, 3)\n\t\t)\n\t) {\n\t\t// Don't localize if the href is already localized\n\t\treturn {\n\t\t\thref: href,\n\t\t\threfLang: href.substring(1, 3),\n\t\t}\n\t}\n\n\tif (href.startsWith('/') && locale) {\n\t\treturn {\n\t\t\thref: `/${locale}${href}`,\n\t\t\threfLang: locale,\n\t\t}\n\t}\n\n\treturn {\n\t\thref: href,\n\t\threfLang: undefined,\n\t}\n}\n\nexport type { InteractiveProps }\nexport { Interactive }\n"],"names":["Interactive","forwardRef","props","ref","Link","useMDSLink","href","className","isHrefExternal","onClick","children","locale","rest","jsx","getLocalizedLinkProps"],"mappings":";;;;AAmBC,MAAAA,IAAaC,EAAW,CAAAC,GAAAC,MAAA;AACxB,QAAMC,IAAAC,EAAA,GACL;AAAA,IACA,MAAAC;AAAA,IACA,WAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,SAAAC;AAAA,IACA,UAAAC;AAAA,IACA,QAAAC;AAAA,OACGC;AAAA,EAGJ,IAAIV;AACH,aACE,gBAAAW;AAAA,IAAAT;AAAA,IAAA;AAAA,MAEA,WAAAG;AAAA,MACA,QAAKC,IAAiB,WAAA;AAAA,MACtB,KAAAA,IAAA,wBAAA;AAAA,MACC,SAAAC;AAAA,MACA,GAAGK,EAAAR,GAAAK,GAAAH,CAAA;AAAA,MACJ,GAAAI;AAAA,MAEC,KAAAT;AAAA,MAAA,UAAAO;AAAA,IACF;AAAA,EAEF,IAEG,gBAAAG;AAAA,IAAA;AAAA,IAAA;AAAA,MAEA,MAAA;AAAA,MACA,WAAAN;AAAA,MACC,SAAAE;AAAA,MACD,GAAAG;AAAA,MAEC,KAAAT;AAAA,MAAA,UAAAO;AAAA,IACF;AAAA,EAEF;AAED,CAAA;AAWOV,EAAM,cAAA;AASZ,MAAIc,IAAgB,CAAAR,GAAAK,GAAAH,MACnBA,IACC;AAAA,EACA,MAAAF;AAAA,EACD,UAAA;AACD,WAIO,MAAU,MAAI,MAAA,MAAA,MAAA,MAAA,IAAA,EAAA;AAAA,EACpBA,EACC,UAAA,GAAA,CAAA;AAED,IACC;AAAA,EACA,MAAAA;AAAA,EACD,UAAAA,EAAA,UAAA,GAAA,CAAA;AACD,IAGCA,EAAO,WAAA,GAAA,KAAAK,IACN;AAAA,EACA,UAAUA,CAAA,GAAAL,CAAA;AAAA,EACX,UAAAK;AACD,IAGC;AAAA,EACA,MAAAL;AAAA,EACD,UAAA;AACD;"}
@@ -1,65 +0,0 @@
1
- import { jsx as b } from "react/jsx-runtime";
2
- import { forwardRef as S } from "react";
3
- import { determineColor as x, LINK_TYPE_ICON_MAP as l } from "./utils.js";
4
- import { StandaloneLink as _ } from "../standalone-link/index.js";
5
- import { Button as D } from "../button/index.js";
6
- const H = S(
7
- ({
8
- locale: t,
9
- text: a,
10
- title: i,
11
- url: n,
12
- href: d,
13
- linkType: o,
14
- onClick: m,
15
- external: f,
16
- className: u,
17
- size: c,
18
- icon: s,
19
- iconPosition: e = "trailing",
20
- label: B,
21
- disabled: E,
22
- type: M,
23
- theme: r,
24
- ...P
25
- }, g) => x(r) === "tertiary" ? /* @__PURE__ */ b(
26
- _,
27
- {
28
- text: a || i,
29
- color: r?.background === "dark" ? "secondary-inverted" : "secondary",
30
- href: n || d,
31
- icon: o ? l[o] : s,
32
- iconPosition: o ? "trailing" : e,
33
- className: u,
34
- onClick: m,
35
- size: c,
36
- isHrefExternal: o === "outbound" || f,
37
- ref: g,
38
- locale: t
39
- }
40
- ) : /* @__PURE__ */ b(
41
- D,
42
- {
43
- text: a || i,
44
- href: n || d,
45
- isHrefExternal: o === "outbound" || f,
46
- color: x(r),
47
- type: M,
48
- icon: o ? l[o] : s,
49
- iconPosition: o ? "trailing" : e,
50
- onClick: m,
51
- className: u,
52
- size: c === "small" ? "medium" : "large",
53
- "aria-label": B,
54
- disabled: E,
55
- ref: g,
56
- locale: t,
57
- ...P
58
- }
59
- )
60
- );
61
- H.displayName = "MDSButton";
62
- export {
63
- H as MDSButton
64
- };
65
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/legacy-button/index.tsx"],"sourcesContent":["import { type ForwardRefExoticComponent, forwardRef } from 'react'\nimport type { ButtonProps } from './types'\nimport { determineColor, LINK_TYPE_ICON_MAP } from './utils'\nimport { StandaloneLink } from '../standalone-link'\nimport { Button } from '../button'\n\n/** @deprecated Use <Button> from '@hashicorp/mds-react/button' instead. Will be removed in v1.0. */\nconst MDSButton = forwardRef<\n\tHTMLAnchorElement | HTMLButtonElement,\n\tButtonProps\n>(\n\t(\n\t\t{\n\t\t\tlocale,\n\t\t\ttext,\n\t\t\ttitle,\n\t\t\turl,\n\t\t\thref,\n\t\t\tlinkType,\n\t\t\tonClick,\n\t\t\texternal,\n\t\t\tclassName,\n\t\t\tsize,\n\t\t\ticon,\n\t\t\ticonPosition = 'trailing',\n\t\t\tlabel,\n\t\t\tdisabled,\n\t\t\ttype,\n\t\t\ttheme,\n\t\t\t...rest\n\t\t},\n\t\tref\n\t) => {\n\t\tconst color = determineColor(theme)\n\n\t\tif (color === 'tertiary') {\n\t\t\t// We prefer the Standalone Link component over the tertiary\n\t\t\t// button styles.\n\t\t\treturn (\n\t\t\t\t<StandaloneLink\n\t\t\t\t\ttext={(text || title) as string}\n\t\t\t\t\tcolor={\n\t\t\t\t\t\ttheme?.background === 'dark' ? 'secondary-inverted' : 'secondary'\n\t\t\t\t\t}\n\t\t\t\t\thref={url || href}\n\t\t\t\t\ticon={linkType ? LINK_TYPE_ICON_MAP[linkType] : icon}\n\t\t\t\t\ticonPosition={linkType ? 'trailing' : iconPosition}\n\t\t\t\t\tclassName={className}\n\t\t\t\t\tonClick={onClick as () => void}\n\t\t\t\t\tsize={size}\n\t\t\t\t\tisHrefExternal={linkType === 'outbound' || external}\n\t\t\t\t\tref={ref as ForwardRefExoticComponent<HTMLAnchorElement>}\n\t\t\t\t\tlocale={locale}\n\t\t\t\t/>\n\t\t\t)\n\t\t}\n\n\t\treturn (\n\t\t\t<Button\n\t\t\t\ttext={text || title}\n\t\t\t\thref={url || href}\n\t\t\t\tisHrefExternal={linkType === 'outbound' || external}\n\t\t\t\tcolor={determineColor(theme)}\n\t\t\t\ttype={type}\n\t\t\t\ticon={linkType ? LINK_TYPE_ICON_MAP[linkType] : icon}\n\t\t\t\ticonPosition={linkType ? 'trailing' : iconPosition}\n\t\t\t\tonClick={onClick as React.MouseEventHandler<HTMLButtonElement>}\n\t\t\t\tclassName={className}\n\t\t\t\t// Default buttons to the large size unless we specifically request the\n\t\t\t\t// small variant\n\t\t\t\tsize={size === 'small' ? 'medium' : 'large'}\n\t\t\t\taria-label={label}\n\t\t\t\tdisabled={disabled}\n\t\t\t\tref={ref as ForwardRefExoticComponent<HTMLButtonElement>}\n\t\t\t\tlocale={locale}\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t)\n\t}\n)\n\nMDSButton.displayName = 'MDSButton'\n\nexport { MDSButton }\n"],"names":["MDSButton","forwardRef","locale","text","title","url","href","linkType","onClick","external","className","size","icon","iconPosition","label","disabled","type","theme","rest","ref","determineColor","jsx","StandaloneLink","LINK_TYPE_ICON_MAP","Button"],"mappings":";;;;;AAOA,MAAMA,IAAYC;AAAA,EAIjB,CACC;AAAA,IACC,QAAAC;AAAA,IACA,MAAAC;AAAA,IACA,OAAAC;AAAA,IACA,KAAAC;AAAA,IACA,MAAAC;AAAA,IACA,UAAAC;AAAA,IACA,SAAAC;AAAA,IACA,UAAAC;AAAA,IACA,WAAAC;AAAA,IACA,MAAAC;AAAA,IACA,MAAAC;AAAA,IACA,cAAAC,IAAe;AAAA,IACf,OAAAC;AAAA,IACA,UAAAC;AAAA,IACA,MAAAC;AAAA,IACA,OAAAC;AAAA,IACA,GAAGC;AAAA,EAAA,GAEJC,MAEcC,EAAeH,CAAK,MAEpB,aAIZ,gBAAAI;AAAA,IAACC;AAAA,IAAA;AAAA,MACA,MAAOnB,KAAQC;AAAA,MACf,OACCa,GAAO,eAAe,SAAS,uBAAuB;AAAA,MAEvD,MAAMZ,KAAOC;AAAA,MACb,MAAMC,IAAWgB,EAAmBhB,CAAQ,IAAIK;AAAA,MAChD,cAAcL,IAAW,aAAaM;AAAA,MACtC,WAAAH;AAAA,MACA,SAAAF;AAAA,MACA,MAAAG;AAAA,MACA,gBAAgBJ,MAAa,cAAcE;AAAA,MAC3C,KAAAU;AAAA,MACA,QAAAjB;AAAA,IAAA;AAAA,EAAA,IAMF,gBAAAmB;AAAA,IAACG;AAAA,IAAA;AAAA,MACA,MAAMrB,KAAQC;AAAA,MACd,MAAMC,KAAOC;AAAA,MACb,gBAAgBC,MAAa,cAAcE;AAAA,MAC3C,OAAOW,EAAeH,CAAK;AAAA,MAC3B,MAAAD;AAAA,MACA,MAAMT,IAAWgB,EAAmBhB,CAAQ,IAAIK;AAAA,MAChD,cAAcL,IAAW,aAAaM;AAAA,MACtC,SAAAL;AAAA,MACA,WAAAE;AAAA,MAGA,MAAMC,MAAS,UAAU,WAAW;AAAA,MACpC,cAAYG;AAAA,MACZ,UAAAC;AAAA,MACA,KAAAI;AAAA,MACA,QAAAjB;AAAA,MACC,GAAGgB;AAAA,IAAA;AAAA,EAAA;AAIR;AAEAlB,EAAU,cAAc;"}
@@ -1,39 +0,0 @@
1
- function n(r) {
2
- const a = r?.variant ? r.variant : "primary";
3
- if (a === "primary")
4
- switch (r?.brand) {
5
- case "hashicorp":
6
- return "primary";
7
- case "boundary":
8
- case "consul":
9
- case "nomad":
10
- case "packer":
11
- case "terraform":
12
- case "vagrant":
13
- case "vault":
14
- case "waypoint":
15
- return r.brand;
16
- case "neutral":
17
- return "secondary-high-contrast";
18
- default:
19
- return "primary";
20
- }
21
- if (a === "secondary")
22
- return "secondary";
23
- if (a === "tertiary" || a === "tertiary-neutral" || a === "ghost")
24
- return "tertiary";
25
- throw new Error(
26
- `Unable to determine HDS Button color from theme: ${JSON.stringify(r)}`
27
- );
28
- }
29
- const t = {
30
- inbound: "arrow-right",
31
- outbound: "external-link",
32
- download: "download",
33
- anchor: "anchor"
34
- };
35
- export {
36
- t as LINK_TYPE_ICON_MAP,
37
- n as determineColor
38
- };
39
- //# sourceMappingURL=utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sources":["../../../src/components/legacy-button/utils.tsx"],"sourcesContent":["import type { ButtonColor, Theme, ThemeVariant } from './types'\n\nexport const COLORS = [\n\t'primary',\n\t'primary-black',\n\t'primary-white',\n\t'secondary', // deprecated; maps to secondary-white\n\t'secondary-high-contrast', // alternates between secondary-black and secondary-white based on theme\n\t'secondary-white',\n\t'secondary-black',\n\t'tertiary',\n\t'critical',\n\t'boundary',\n\t'consul',\n\t'nomad',\n\t'packer',\n\t'terraform',\n\t'vagrant',\n\t'vault',\n\t'waypoint',\n\t'hashicorp', // alias to primary\n] as const\n\nexport function determineColor(theme?: Theme): ButtonColor {\n\tconst variant: ThemeVariant = theme?.variant ? theme.variant : 'primary'\n\n\tif (variant === 'primary') {\n\t\tswitch (theme?.brand) {\n\t\t\tcase 'hashicorp':\n\t\t\t\treturn 'primary'\n\t\t\tcase 'boundary':\n\t\t\tcase 'consul':\n\t\t\tcase 'nomad':\n\t\t\tcase 'packer':\n\t\t\tcase 'terraform':\n\t\t\tcase 'vagrant':\n\t\t\tcase 'vault':\n\t\t\tcase 'waypoint':\n\t\t\t\treturn theme.brand\n\t\t\tcase 'neutral':\n\t\t\t\treturn 'secondary-high-contrast'\n\t\t\tdefault:\n\t\t\t\treturn 'primary'\n\t\t}\n\t}\n\n\tif (variant === 'secondary') {\n\t\treturn 'secondary'\n\t}\n\n\tif (\n\t\tvariant === 'tertiary' ||\n\t\tvariant === 'tertiary-neutral' ||\n\t\tvariant === 'ghost'\n\t) {\n\t\treturn 'tertiary'\n\t}\n\n\tthrow new Error(\n\t\t`Unable to determine HDS Button color from theme: ${JSON.stringify(theme)}`\n\t)\n}\n\nexport const LINK_TYPE_ICON_MAP = {\n\tinbound: 'arrow-right',\n\toutbound: 'external-link',\n\tdownload: 'download',\n\tanchor: 'anchor',\n}\n"],"names":["determineColor","theme","variant","LINK_TYPE_ICON_MAP"],"mappings":"AAuBO,SAASA,EAAeC,GAA4B;AAC1D,QAAMC,IAAwBD,GAAO,UAAUA,EAAM,UAAU;AAE/D,MAAIC,MAAY;AACf,YAAQD,GAAO,OAAA;AAAA,MACd,KAAK;AACJ,eAAO;AAAA,MACR,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK;AACJ,eAAOA,EAAM;AAAA,MACd,KAAK;AACJ,eAAO;AAAA,MACR;AACC,eAAO;AAAA,IAAA;AAIV,MAAIC,MAAY;AACf,WAAO;AAGR,MACCA,MAAY,cACZA,MAAY,sBACZA,MAAY;AAEZ,WAAO;AAGR,QAAM,IAAI;AAAA,IACT,oDAAoD,KAAK,UAAUD,CAAK,CAAC;AAAA,EAAA;AAE3E;AAEO,MAAME,IAAqB;AAAA,EACjC,SAAS;AAAA,EACT,UAAU;AAAA,EACV,UAAU;AAAA,EACV,QAAQ;AACT;"}