@arc-ui/components 11.7.0 → 11.8.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 (230) hide show
  1. package/dist/Alert/Alert.cjs.d.ts +1 -1
  2. package/dist/Alert/Alert.cjs.js +10 -89
  3. package/dist/Alert/Alert.esm.d.ts +1 -1
  4. package/dist/Alert/Alert.esm.js +3 -82
  5. package/dist/Badge/Badge.cjs.js +3 -3
  6. package/dist/Badge/Badge.esm.js +4 -4
  7. package/dist/Box/Box.cjs.d.ts +40 -1
  8. package/dist/Box/Box.cjs.js +25 -6
  9. package/dist/Box/Box.esm.d.ts +40 -1
  10. package/dist/Box/Box.esm.js +24 -5
  11. package/dist/Breadcrumbs/Breadcrumbs.cjs.d.ts +1 -1
  12. package/dist/Breadcrumbs/Breadcrumbs.cjs.js +2 -2
  13. package/dist/Breadcrumbs/Breadcrumbs.esm.d.ts +1 -1
  14. package/dist/Breadcrumbs/Breadcrumbs.esm.js +2 -2
  15. package/dist/Button/Button.cjs.d.ts +1 -1
  16. package/dist/Button/Button.cjs.js +1 -1
  17. package/dist/Button/Button.esm.d.ts +1 -1
  18. package/dist/Button/Button.esm.js +1 -1
  19. package/dist/Card/Card.cjs.d.ts +1 -1
  20. package/dist/Card/Card.cjs.js +2 -2
  21. package/dist/Card/Card.esm.d.ts +1 -1
  22. package/dist/Card/Card.esm.js +2 -2
  23. package/dist/Checkbox/Checkbox.cjs.d.ts +1 -1
  24. package/dist/Checkbox/Checkbox.cjs.js +4 -4
  25. package/dist/Checkbox/Checkbox.esm.d.ts +1 -1
  26. package/dist/Checkbox/Checkbox.esm.js +4 -4
  27. package/dist/Columns/Columns.cjs.d.ts +1 -1
  28. package/dist/Columns/Columns.esm.d.ts +1 -1
  29. package/dist/Curve/Curve.cjs.d.ts +1 -1
  30. package/dist/Curve/Curve.cjs.js +1 -1
  31. package/dist/Curve/Curve.esm.d.ts +1 -1
  32. package/dist/Curve/Curve.esm.js +1 -1
  33. package/dist/Disclosure/Disclosure.cjs.d.ts +1 -1
  34. package/dist/Disclosure/Disclosure.cjs.js +1 -1
  35. package/dist/Disclosure/Disclosure.esm.d.ts +1 -1
  36. package/dist/Disclosure/Disclosure.esm.js +1 -1
  37. package/dist/DisclosureMini/DisclosureMini.cjs.d.ts +1 -1
  38. package/dist/DisclosureMini/DisclosureMini.cjs.js +2 -2
  39. package/dist/DisclosureMini/DisclosureMini.esm.d.ts +1 -1
  40. package/dist/DisclosureMini/DisclosureMini.esm.js +2 -2
  41. package/dist/FormControl/FormControl.cjs.d.ts +1 -1
  42. package/dist/FormControl/FormControl.cjs.js +3 -3
  43. package/dist/FormControl/FormControl.esm.d.ts +1 -1
  44. package/dist/FormControl/FormControl.esm.js +3 -3
  45. package/dist/Heading/Heading.cjs.d.ts +1 -1
  46. package/dist/Heading/Heading.cjs.js +1 -1
  47. package/dist/Heading/Heading.esm.d.ts +1 -1
  48. package/dist/Heading/Heading.esm.js +1 -1
  49. package/dist/Modal/Modal.cjs.d.ts +31 -9
  50. package/dist/Modal/Modal.cjs.js +450 -161
  51. package/dist/Modal/Modal.esm.d.ts +31 -9
  52. package/dist/Modal/Modal.esm.js +423 -134
  53. package/dist/Pagination/Pagination.cjs.js +4 -4
  54. package/dist/Pagination/Pagination.esm.js +4 -4
  55. package/dist/PaginationSimple/PaginationSimple.cjs.js +4 -4
  56. package/dist/PaginationSimple/PaginationSimple.esm.js +4 -4
  57. package/dist/ProgressBar/ProgressBar.cjs.js +5 -5
  58. package/dist/ProgressBar/ProgressBar.esm.js +6 -6
  59. package/dist/RadioGroup/RadioGroup.cjs.d.ts +1 -1
  60. package/dist/RadioGroup/RadioGroup.cjs.js +4 -4
  61. package/dist/RadioGroup/RadioGroup.esm.d.ts +1 -1
  62. package/dist/RadioGroup/RadioGroup.esm.js +4 -4
  63. package/dist/Select/Select.cjs.d.ts +1 -1
  64. package/dist/Select/Select.cjs.js +995 -60
  65. package/dist/Select/Select.esm.d.ts +1 -1
  66. package/dist/Select/Select.esm.js +948 -32
  67. package/dist/SiteFooter/SiteFooter.cjs.d.ts +1 -1
  68. package/dist/SiteFooter/SiteFooter.cjs.js +2 -2
  69. package/dist/SiteFooter/SiteFooter.esm.d.ts +1 -1
  70. package/dist/SiteFooter/SiteFooter.esm.js +3 -3
  71. package/dist/SiteHeader/SiteHeader.cjs.d.ts +1 -1
  72. package/dist/SiteHeader/SiteHeader.cjs.js +3 -3
  73. package/dist/SiteHeader/SiteHeader.esm.d.ts +1 -1
  74. package/dist/SiteHeader/SiteHeader.esm.js +3 -3
  75. package/dist/Switch/Switch.cjs.d.ts +1 -1
  76. package/dist/Switch/Switch.cjs.js +241 -18
  77. package/dist/Switch/Switch.esm.d.ts +1 -1
  78. package/dist/Switch/Switch.esm.js +234 -11
  79. package/dist/Tabs/Tabs.cjs.d.ts +75 -0
  80. package/dist/Tabs/Tabs.cjs.js +514 -0
  81. package/dist/Tabs/Tabs.esm.d.ts +75 -0
  82. package/dist/Tabs/Tabs.esm.js +506 -0
  83. package/dist/Tabs/package.json +7 -0
  84. package/dist/Text/Text.cjs.d.ts +1 -1
  85. package/dist/Text/Text.cjs.js +1 -1
  86. package/dist/Text/Text.esm.d.ts +1 -1
  87. package/dist/Text/Text.esm.js +1 -1
  88. package/dist/TextArea/TextArea.cjs.d.ts +4 -1
  89. package/dist/TextArea/TextArea.cjs.js +14 -13
  90. package/dist/TextArea/TextArea.esm.d.ts +4 -1
  91. package/dist/TextArea/TextArea.esm.js +14 -13
  92. package/dist/TextInput/TextInput.cjs.d.ts +1 -1
  93. package/dist/TextInput/TextInput.cjs.js +4 -4
  94. package/dist/TextInput/TextInput.esm.d.ts +1 -1
  95. package/dist/TextInput/TextInput.esm.js +4 -4
  96. package/dist/Toast/Toast.cjs.d.ts +52 -0
  97. package/dist/Toast/Toast.cjs.js +743 -0
  98. package/dist/Toast/Toast.esm.d.ts +52 -0
  99. package/dist/Toast/Toast.esm.js +735 -0
  100. package/dist/Toast/package.json +7 -0
  101. package/dist/Truncate/Truncate.cjs.js +3 -2
  102. package/dist/Truncate/Truncate.esm.js +3 -2
  103. package/dist/_shared/cjs/{Breadcrumbs-9f580f69.js → Breadcrumbs-0906dd10.js} +9 -9
  104. package/dist/_shared/cjs/BtIconTick-42fcc5ec.js +91 -0
  105. package/dist/_shared/{esm/Button-9c3b0b11.d.ts → cjs/Button-5aaa6776.d.ts} +4 -0
  106. package/dist/_shared/cjs/{Button-b4d6ccc8.js → Button-5aaa6776.js} +2 -2
  107. package/dist/_shared/cjs/{Card-f1108bfe.js → Card-fd189ba8.js} +1 -1
  108. package/dist/_shared/cjs/{Checkbox-c927b62f.js → Checkbox-02c546ca.js} +1 -1
  109. package/dist/_shared/cjs/Columns-e90798f8.d.ts +1 -1
  110. package/dist/_shared/cjs/{Curve-b05589d8.d.ts → Curve-781ef633.d.ts} +5 -2
  111. package/dist/_shared/cjs/{Curve-b05589d8.js → Curve-781ef633.js} +5 -2
  112. package/dist/_shared/cjs/{DisclosureMini-2a10006e.js → DisclosureMini-52706ee6.js} +1 -1
  113. package/dist/_shared/cjs/{FormControl-78b007b7.js → FormControl-1e1bf2bf.js} +1 -1
  114. package/dist/_shared/cjs/{Heading-ed1cb455.d.ts → Heading-e3332dcf.d.ts} +4 -0
  115. package/dist/_shared/cjs/{Heading-ed1cb455.js → Heading-e3332dcf.js} +2 -2
  116. package/dist/_shared/{esm/RadioGroup-65b8c8bf.d.ts → cjs/RadioGroup-d7664b0c.d.ts} +1 -1
  117. package/dist/_shared/cjs/{RadioGroup-8e17de70.js → RadioGroup-d7664b0c.js} +1 -1
  118. package/dist/_shared/cjs/{SiteFooter-9f7f9c2d.js → SiteFooter-5da774e1.js} +1 -1
  119. package/dist/_shared/cjs/SiteHeader-c25ee36e.d.ts +2 -2
  120. package/dist/_shared/cjs/{SiteHeader.rehydrator-ccbebde6.js → SiteHeader.rehydrator-acc9d8c4.js} +2 -2
  121. package/dist/_shared/{esm/Text-14deb70e.d.ts → cjs/Text-fa447e2d.d.ts} +4 -0
  122. package/dist/_shared/cjs/{Text-555a29a4.js → Text-fa447e2d.js} +2 -2
  123. package/dist/_shared/cjs/{TextInput-7ed03a48.d.ts → TextInput-13050538.d.ts} +3 -1
  124. package/dist/_shared/{esm/TextInput-62bb7dee.d.ts → cjs/TextInput-f4549637.d.ts} +1 -1
  125. package/dist/_shared/cjs/{TextInput-b768e346.js → TextInput-f4549637.js} +1 -1
  126. package/dist/_shared/cjs/extends-bb8ffacd.js +21 -0
  127. package/dist/_shared/cjs/index-27b53d49.js +174 -0
  128. package/dist/_shared/cjs/index-699086a7.d.ts +1 -1
  129. package/dist/_shared/cjs/index-74488a9f.d.ts +1 -1
  130. package/dist/_shared/cjs/{index.module-9b87a34d.js → index-952918c9.js} +141 -33
  131. package/dist/_shared/cjs/index-96c4d581.js +289 -0
  132. package/dist/_shared/cjs/index-c81c9401.d.ts +3 -3
  133. package/dist/_shared/cjs/index-e340924e.d.ts +1 -1
  134. package/dist/_shared/cjs/index-e6d20018.d.ts +1 -1
  135. package/dist/_shared/cjs/index-eb06f640.d.ts +1 -1
  136. package/dist/_shared/cjs/{index-31fbb076.js → index-ec260f5e.js} +0 -547
  137. package/dist/_shared/cjs/index-f419cf04.d.ts +1 -1
  138. package/dist/_shared/cjs/index-fb4b8fda.js +47 -0
  139. package/dist/_shared/cjs/index.module-bbcc4e18.js +126 -0
  140. package/dist/_shared/esm/{Breadcrumbs-5dc0afa7.js → Breadcrumbs-dafa8dde.js} +9 -9
  141. package/dist/_shared/esm/BtIconTick-5fe50cc7.js +83 -0
  142. package/dist/_shared/{cjs/Button-b4d6ccc8.d.ts → esm/Button-d1dbcf79.d.ts} +4 -0
  143. package/dist/_shared/esm/{Button-9c3b0b11.js → Button-d1dbcf79.js} +2 -2
  144. package/dist/_shared/esm/{Card-79b6eae0.js → Card-e62c3ff6.js} +1 -1
  145. package/dist/_shared/esm/{Checkbox-2d144384.js → Checkbox-d8891198.js} +1 -1
  146. package/dist/_shared/esm/Columns-8704515b.d.ts +1 -1
  147. package/dist/_shared/esm/{Curve-3e87b1bc.d.ts → Curve-bbc5589c.d.ts} +5 -2
  148. package/dist/_shared/esm/{Curve-3e87b1bc.js → Curve-bbc5589c.js} +5 -2
  149. package/dist/_shared/esm/{DisclosureMini-78a8f392.js → DisclosureMini-9b819941.js} +1 -1
  150. package/dist/_shared/esm/{FormControl-2fa7aae5.js → FormControl-f18e2f59.js} +1 -1
  151. package/dist/_shared/esm/{Heading-ee6bec51.d.ts → Heading-0f629151.d.ts} +4 -0
  152. package/dist/_shared/esm/{Heading-ee6bec51.js → Heading-0f629151.js} +2 -2
  153. package/dist/_shared/{cjs/RadioGroup-8e17de70.d.ts → esm/RadioGroup-be16d5d3.d.ts} +1 -1
  154. package/dist/_shared/esm/{RadioGroup-65b8c8bf.js → RadioGroup-be16d5d3.js} +1 -1
  155. package/dist/_shared/esm/{SiteFooter-51bdc7df.js → SiteFooter-a182cb18.js} +1 -1
  156. package/dist/_shared/esm/SiteHeader-c25ee36e.d.ts +2 -2
  157. package/dist/_shared/esm/{SiteHeader.rehydrator-382d1c03.js → SiteHeader.rehydrator-023b7b76.js} +2 -2
  158. package/dist/_shared/{cjs/Text-555a29a4.d.ts → esm/Text-40457811.d.ts} +4 -0
  159. package/dist/_shared/esm/{Text-14deb70e.js → Text-40457811.js} +2 -2
  160. package/dist/_shared/esm/{TextInput-7ed03a48.d.ts → TextInput-13050538.d.ts} +3 -1
  161. package/dist/_shared/{cjs/TextInput-b768e346.d.ts → esm/TextInput-4424c195.d.ts} +3 -3
  162. package/dist/_shared/esm/{TextInput-62bb7dee.js → TextInput-4424c195.js} +1 -1
  163. package/dist/_shared/esm/extends-4575346e.js +19 -0
  164. package/dist/_shared/esm/{index.module-216016b5.js → index-22aad354.js} +138 -29
  165. package/dist/_shared/esm/{index-4fa635bd.js → index-369dce7f.js} +2 -541
  166. package/dist/_shared/esm/index-699086a7.d.ts +1 -1
  167. package/dist/_shared/esm/index-74488a9f.d.ts +1 -1
  168. package/dist/_shared/esm/index-8000d9e3.js +168 -0
  169. package/dist/_shared/esm/index-94ecc5f8.js +280 -0
  170. package/dist/_shared/esm/index-bed18a88.js +26 -0
  171. package/dist/_shared/esm/index-c81c9401.d.ts +3 -3
  172. package/dist/_shared/esm/index-e340924e.d.ts +1 -1
  173. package/dist/_shared/esm/index-e6d20018.d.ts +1 -1
  174. package/dist/_shared/esm/index-eb06f640.d.ts +1 -1
  175. package/dist/_shared/esm/index-f419cf04.d.ts +1 -1
  176. package/dist/_shared/esm/index.module-5ed90b21.js +122 -0
  177. package/dist/index.es.js +2807 -1034
  178. package/dist/index.es.js.map +1 -1
  179. package/dist/index.js +3014 -1240
  180. package/dist/index.js.map +1 -1
  181. package/dist/styles.css +1 -1
  182. package/dist/types/components/Button/Button.d.ts +4 -0
  183. package/dist/types/components/Columns/Columns.d.ts +1 -1
  184. package/dist/types/components/Columns/index.d.ts +1 -1
  185. package/dist/types/components/Curve/Curve.d.ts +5 -2
  186. package/dist/types/components/Heading/Heading.d.ts +4 -0
  187. package/dist/types/components/Modal/Modal.d.ts +31 -9
  188. package/dist/types/components/Tabs/Tab/Tab.d.ts +22 -0
  189. package/dist/types/components/Tabs/Tab/index.d.ts +1 -0
  190. package/dist/types/components/Tabs/TabContent/TabContent.d.ts +12 -0
  191. package/dist/types/components/Tabs/TabContent/index.d.ts +1 -0
  192. package/dist/types/components/Tabs/Tabs.d.ts +27 -0
  193. package/dist/types/components/Tabs/TabsList/TabsList.d.ts +20 -0
  194. package/dist/types/components/Tabs/TabsList/index.d.ts +1 -0
  195. package/dist/types/components/Tabs/index.d.ts +1 -0
  196. package/dist/types/components/Text/Text.d.ts +4 -0
  197. package/dist/types/components/TextArea/TextArea.d.ts +3 -0
  198. package/dist/types/components/TextInput/TextInput.d.ts +2 -0
  199. package/dist/types/components/Toast/Toast.d.ts +14 -0
  200. package/dist/types/components/Toast/ToastNotification.d.ts +39 -0
  201. package/dist/types/components/Toast/index.d.ts +1 -0
  202. package/dist/types/components/index.d.ts +1 -0
  203. package/dist/types/styles.d.ts +3 -2
  204. package/package.json +8 -6
  205. package/dist/MediaCard/MediaCard.cjs.d.ts +0 -61
  206. package/dist/MediaCard/MediaCard.cjs.js +0 -31
  207. package/dist/MediaCard/MediaCard.esm.d.ts +0 -61
  208. package/dist/MediaCard/MediaCard.esm.js +0 -23
  209. package/dist/MediaCard/package.json +0 -7
  210. package/dist/_shared/cjs/Box-ebe2b7be.d.ts +0 -39
  211. package/dist/_shared/cjs/Box-ebe2b7be.js +0 -30
  212. package/dist/_shared/cjs/index.module-5ea728f4.js +0 -23
  213. package/dist/_shared/esm/Box-06d99d8a.d.ts +0 -39
  214. package/dist/_shared/esm/Box-06d99d8a.js +0 -24
  215. package/dist/_shared/esm/index.module-88179159.js +0 -21
  216. package/dist/types/components/Modal/Modal.stories-wip.d.ts +0 -9
  217. /package/dist/_shared/cjs/{Breadcrumbs-9f580f69.d.ts → Breadcrumbs-0906dd10.d.ts} +0 -0
  218. /package/dist/_shared/cjs/{Card-f1108bfe.d.ts → Card-fd189ba8.d.ts} +0 -0
  219. /package/dist/_shared/cjs/{Checkbox-c927b62f.d.ts → Checkbox-02c546ca.d.ts} +0 -0
  220. /package/dist/_shared/cjs/{DisclosureMini-2a10006e.d.ts → DisclosureMini-52706ee6.d.ts} +0 -0
  221. /package/dist/_shared/cjs/{FormControl-78b007b7.d.ts → FormControl-1e1bf2bf.d.ts} +0 -0
  222. /package/dist/_shared/cjs/{SiteFooter-9f7f9c2d.d.ts → SiteFooter-5da774e1.d.ts} +0 -0
  223. /package/dist/_shared/cjs/{SiteHeader.rehydrator-ccbebde6.d.ts → SiteHeader.rehydrator-acc9d8c4.d.ts} +0 -0
  224. /package/dist/_shared/esm/{Breadcrumbs-5dc0afa7.d.ts → Breadcrumbs-dafa8dde.d.ts} +0 -0
  225. /package/dist/_shared/esm/{Card-79b6eae0.d.ts → Card-e62c3ff6.d.ts} +0 -0
  226. /package/dist/_shared/esm/{Checkbox-2d144384.d.ts → Checkbox-d8891198.d.ts} +0 -0
  227. /package/dist/_shared/esm/{DisclosureMini-78a8f392.d.ts → DisclosureMini-9b819941.d.ts} +0 -0
  228. /package/dist/_shared/esm/{FormControl-2fa7aae5.d.ts → FormControl-f18e2f59.d.ts} +0 -0
  229. /package/dist/_shared/esm/{SiteFooter-51bdc7df.d.ts → SiteFooter-a182cb18.d.ts} +0 -0
  230. /package/dist/_shared/esm/{SiteHeader.rehydrator-382d1c03.d.ts → SiteHeader.rehydrator-023b7b76.d.ts} +0 -0
@@ -0,0 +1,506 @@
1
+ import { _ as __rest, a as __assign, f as filterDataAttrs } from '../_shared/esm/filter-data-attrs-afdb7d32.js';
2
+ import React__default, { useContext, createContext, forwardRef, createElement, useRef, useState, useEffect, useCallback } from 'react';
3
+ import { _ as _extends } from '../_shared/esm/extends-4575346e.js';
4
+ import { d as $c512c27ab02ef895$export$50c7b4e9d9f19c1, a as $6ed0406888f73fc4$export$c7b2cbe3552a0d05, e as $71cd76cc60e0454e$export$6f32135080cb4c3, $ as $b1b2314f5f9a1d84$export$25bec8c6f54ee79a, b as $8927f6f2acc4f386$export$250ffa63cdc0d034, g as $e42e1063c40fb3ef$export$b9ecd428b558ff10, f as $921a889cee6df7e8$export$99c2b779aa4e8b8b } from '../_shared/esm/index-22aad354.js';
5
+ import { $ as $e02a7d9cb1dc128c$export$c74125a8e3af6bb2 } from '../_shared/esm/index-8000d9e3.js';
6
+ import { $ as $1746a345f3d73bb7$export$f680877a34711e37 } from '../_shared/esm/index-bed18a88.js';
7
+ import { I as Icon } from '../_shared/esm/Icon-c1af47bc.js';
8
+ import { C as Context } from '../_shared/esm/Surface-dde51789.js';
9
+ import { c as classNames } from '../_shared/esm/index-2ae58626.js';
10
+ import 'react-dom';
11
+ import '../_shared/esm/suffix-modifier-7e640670.js';
12
+
13
+ const $f631663db3294ace$var$DirectionContext = /*#__PURE__*/ createContext(undefined);
14
+ /* -----------------------------------------------------------------------------------------------*/ function $f631663db3294ace$export$b39126d51d94e6f3(localDir) {
15
+ const globalDir = useContext($f631663db3294ace$var$DirectionContext);
16
+ return localDir || globalDir || 'ltr';
17
+ }
18
+
19
+ const $d7bdfb9eb0fdf311$var$ENTRY_FOCUS = 'rovingFocusGroup.onEntryFocus';
20
+ const $d7bdfb9eb0fdf311$var$EVENT_OPTIONS = {
21
+ bubbles: false,
22
+ cancelable: true
23
+ };
24
+ /* -------------------------------------------------------------------------------------------------
25
+ * RovingFocusGroup
26
+ * -----------------------------------------------------------------------------------------------*/ const $d7bdfb9eb0fdf311$var$GROUP_NAME = 'RovingFocusGroup';
27
+ const [$d7bdfb9eb0fdf311$var$Collection, $d7bdfb9eb0fdf311$var$useCollection, $d7bdfb9eb0fdf311$var$createCollectionScope] = $e02a7d9cb1dc128c$export$c74125a8e3af6bb2($d7bdfb9eb0fdf311$var$GROUP_NAME);
28
+ const [$d7bdfb9eb0fdf311$var$createRovingFocusGroupContext, $d7bdfb9eb0fdf311$export$c7109489551a4f4] = $c512c27ab02ef895$export$50c7b4e9d9f19c1($d7bdfb9eb0fdf311$var$GROUP_NAME, [
29
+ $d7bdfb9eb0fdf311$var$createCollectionScope
30
+ ]);
31
+ const [$d7bdfb9eb0fdf311$var$RovingFocusProvider, $d7bdfb9eb0fdf311$var$useRovingFocusContext] = $d7bdfb9eb0fdf311$var$createRovingFocusGroupContext($d7bdfb9eb0fdf311$var$GROUP_NAME);
32
+ const $d7bdfb9eb0fdf311$export$8699f7c8af148338 = /*#__PURE__*/ forwardRef((props, forwardedRef)=>{
33
+ return /*#__PURE__*/ createElement($d7bdfb9eb0fdf311$var$Collection.Provider, {
34
+ scope: props.__scopeRovingFocusGroup
35
+ }, /*#__PURE__*/ createElement($d7bdfb9eb0fdf311$var$Collection.Slot, {
36
+ scope: props.__scopeRovingFocusGroup
37
+ }, /*#__PURE__*/ createElement($d7bdfb9eb0fdf311$var$RovingFocusGroupImpl, _extends({}, props, {
38
+ ref: forwardedRef
39
+ }))));
40
+ });
41
+ /* -----------------------------------------------------------------------------------------------*/ const $d7bdfb9eb0fdf311$var$RovingFocusGroupImpl = /*#__PURE__*/ forwardRef((props, forwardedRef)=>{
42
+ const { __scopeRovingFocusGroup: __scopeRovingFocusGroup , orientation: orientation , loop: loop = false , dir: dir , currentTabStopId: currentTabStopIdProp , defaultCurrentTabStopId: defaultCurrentTabStopId , onCurrentTabStopIdChange: onCurrentTabStopIdChange , onEntryFocus: onEntryFocus , ...groupProps } = props;
43
+ const ref = useRef(null);
44
+ const composedRefs = $6ed0406888f73fc4$export$c7b2cbe3552a0d05(forwardedRef, ref);
45
+ const direction = $f631663db3294ace$export$b39126d51d94e6f3(dir);
46
+ const [currentTabStopId = null, setCurrentTabStopId] = $71cd76cc60e0454e$export$6f32135080cb4c3({
47
+ prop: currentTabStopIdProp,
48
+ defaultProp: defaultCurrentTabStopId,
49
+ onChange: onCurrentTabStopIdChange
50
+ });
51
+ const [isTabbingBackOut, setIsTabbingBackOut] = useState(false);
52
+ const handleEntryFocus = $b1b2314f5f9a1d84$export$25bec8c6f54ee79a(onEntryFocus);
53
+ const getItems = $d7bdfb9eb0fdf311$var$useCollection(__scopeRovingFocusGroup);
54
+ const isClickFocusRef = useRef(false);
55
+ const [focusableItemsCount, setFocusableItemsCount] = useState(0);
56
+ useEffect(()=>{
57
+ const node = ref.current;
58
+ if (node) {
59
+ node.addEventListener($d7bdfb9eb0fdf311$var$ENTRY_FOCUS, handleEntryFocus);
60
+ return ()=>node.removeEventListener($d7bdfb9eb0fdf311$var$ENTRY_FOCUS, handleEntryFocus)
61
+ ;
62
+ }
63
+ }, [
64
+ handleEntryFocus
65
+ ]);
66
+ return /*#__PURE__*/ createElement($d7bdfb9eb0fdf311$var$RovingFocusProvider, {
67
+ scope: __scopeRovingFocusGroup,
68
+ orientation: orientation,
69
+ dir: direction,
70
+ loop: loop,
71
+ currentTabStopId: currentTabStopId,
72
+ onItemFocus: useCallback((tabStopId)=>setCurrentTabStopId(tabStopId)
73
+ , [
74
+ setCurrentTabStopId
75
+ ]),
76
+ onItemShiftTab: useCallback(()=>setIsTabbingBackOut(true)
77
+ , []),
78
+ onFocusableItemAdd: useCallback(()=>setFocusableItemsCount((prevCount)=>prevCount + 1
79
+ )
80
+ , []),
81
+ onFocusableItemRemove: useCallback(()=>setFocusableItemsCount((prevCount)=>prevCount - 1
82
+ )
83
+ , [])
84
+ }, /*#__PURE__*/ createElement($8927f6f2acc4f386$export$250ffa63cdc0d034.div, _extends({
85
+ tabIndex: isTabbingBackOut || focusableItemsCount === 0 ? -1 : 0,
86
+ "data-orientation": orientation
87
+ }, groupProps, {
88
+ ref: composedRefs,
89
+ style: {
90
+ outline: 'none',
91
+ ...props.style
92
+ },
93
+ onMouseDown: $e42e1063c40fb3ef$export$b9ecd428b558ff10(props.onMouseDown, ()=>{
94
+ isClickFocusRef.current = true;
95
+ }),
96
+ onFocus: $e42e1063c40fb3ef$export$b9ecd428b558ff10(props.onFocus, (event)=>{
97
+ // We normally wouldn't need this check, because we already check
98
+ // that the focus is on the current target and not bubbling to it.
99
+ // We do this because Safari doesn't focus buttons when clicked, and
100
+ // instead, the wrapper will get focused and not through a bubbling event.
101
+ const isKeyboardFocus = !isClickFocusRef.current;
102
+ if (event.target === event.currentTarget && isKeyboardFocus && !isTabbingBackOut) {
103
+ const entryFocusEvent = new CustomEvent($d7bdfb9eb0fdf311$var$ENTRY_FOCUS, $d7bdfb9eb0fdf311$var$EVENT_OPTIONS);
104
+ event.currentTarget.dispatchEvent(entryFocusEvent);
105
+ if (!entryFocusEvent.defaultPrevented) {
106
+ const items = getItems().filter((item)=>item.focusable
107
+ );
108
+ const activeItem = items.find((item)=>item.active
109
+ );
110
+ const currentItem = items.find((item)=>item.id === currentTabStopId
111
+ );
112
+ const candidateItems = [
113
+ activeItem,
114
+ currentItem,
115
+ ...items
116
+ ].filter(Boolean);
117
+ const candidateNodes = candidateItems.map((item)=>item.ref.current
118
+ );
119
+ $d7bdfb9eb0fdf311$var$focusFirst(candidateNodes);
120
+ }
121
+ }
122
+ isClickFocusRef.current = false;
123
+ }),
124
+ onBlur: $e42e1063c40fb3ef$export$b9ecd428b558ff10(props.onBlur, ()=>setIsTabbingBackOut(false)
125
+ )
126
+ })));
127
+ });
128
+ /* -------------------------------------------------------------------------------------------------
129
+ * RovingFocusGroupItem
130
+ * -----------------------------------------------------------------------------------------------*/ const $d7bdfb9eb0fdf311$var$ITEM_NAME = 'RovingFocusGroupItem';
131
+ const $d7bdfb9eb0fdf311$export$ab9df7c53fe8454 = /*#__PURE__*/ forwardRef((props, forwardedRef)=>{
132
+ const { __scopeRovingFocusGroup: __scopeRovingFocusGroup , focusable: focusable = true , active: active = false , tabStopId: tabStopId , ...itemProps } = props;
133
+ const autoId = $1746a345f3d73bb7$export$f680877a34711e37();
134
+ const id = tabStopId || autoId;
135
+ const context = $d7bdfb9eb0fdf311$var$useRovingFocusContext($d7bdfb9eb0fdf311$var$ITEM_NAME, __scopeRovingFocusGroup);
136
+ const isCurrentTabStop = context.currentTabStopId === id;
137
+ const getItems = $d7bdfb9eb0fdf311$var$useCollection(__scopeRovingFocusGroup);
138
+ const { onFocusableItemAdd: onFocusableItemAdd , onFocusableItemRemove: onFocusableItemRemove } = context;
139
+ useEffect(()=>{
140
+ if (focusable) {
141
+ onFocusableItemAdd();
142
+ return ()=>onFocusableItemRemove()
143
+ ;
144
+ }
145
+ }, [
146
+ focusable,
147
+ onFocusableItemAdd,
148
+ onFocusableItemRemove
149
+ ]);
150
+ return /*#__PURE__*/ createElement($d7bdfb9eb0fdf311$var$Collection.ItemSlot, {
151
+ scope: __scopeRovingFocusGroup,
152
+ id: id,
153
+ focusable: focusable,
154
+ active: active
155
+ }, /*#__PURE__*/ createElement($8927f6f2acc4f386$export$250ffa63cdc0d034.span, _extends({
156
+ tabIndex: isCurrentTabStop ? 0 : -1,
157
+ "data-orientation": context.orientation
158
+ }, itemProps, {
159
+ ref: forwardedRef,
160
+ onMouseDown: $e42e1063c40fb3ef$export$b9ecd428b558ff10(props.onMouseDown, (event)=>{
161
+ // We prevent focusing non-focusable items on `mousedown`.
162
+ // Even though the item has tabIndex={-1}, that only means take it out of the tab order.
163
+ if (!focusable) event.preventDefault(); // Safari doesn't focus a button when clicked so we run our logic on mousedown also
164
+ else context.onItemFocus(id);
165
+ }),
166
+ onFocus: $e42e1063c40fb3ef$export$b9ecd428b558ff10(props.onFocus, ()=>context.onItemFocus(id)
167
+ ),
168
+ onKeyDown: $e42e1063c40fb3ef$export$b9ecd428b558ff10(props.onKeyDown, (event)=>{
169
+ if (event.key === 'Tab' && event.shiftKey) {
170
+ context.onItemShiftTab();
171
+ return;
172
+ }
173
+ if (event.target !== event.currentTarget) return;
174
+ const focusIntent = $d7bdfb9eb0fdf311$var$getFocusIntent(event, context.orientation, context.dir);
175
+ if (focusIntent !== undefined) {
176
+ event.preventDefault();
177
+ const items = getItems().filter((item)=>item.focusable
178
+ );
179
+ let candidateNodes = items.map((item)=>item.ref.current
180
+ );
181
+ if (focusIntent === 'last') candidateNodes.reverse();
182
+ else if (focusIntent === 'prev' || focusIntent === 'next') {
183
+ if (focusIntent === 'prev') candidateNodes.reverse();
184
+ const currentIndex = candidateNodes.indexOf(event.currentTarget);
185
+ candidateNodes = context.loop ? $d7bdfb9eb0fdf311$var$wrapArray(candidateNodes, currentIndex + 1) : candidateNodes.slice(currentIndex + 1);
186
+ }
187
+ /**
188
+ * Imperative focus during keydown is risky so we prevent React's batching updates
189
+ * to avoid potential bugs. See: https://github.com/facebook/react/issues/20332
190
+ */ setTimeout(()=>$d7bdfb9eb0fdf311$var$focusFirst(candidateNodes)
191
+ );
192
+ }
193
+ })
194
+ })));
195
+ });
196
+ /* -----------------------------------------------------------------------------------------------*/ // prettier-ignore
197
+ const $d7bdfb9eb0fdf311$var$MAP_KEY_TO_FOCUS_INTENT = {
198
+ ArrowLeft: 'prev',
199
+ ArrowUp: 'prev',
200
+ ArrowRight: 'next',
201
+ ArrowDown: 'next',
202
+ PageUp: 'first',
203
+ Home: 'first',
204
+ PageDown: 'last',
205
+ End: 'last'
206
+ };
207
+ function $d7bdfb9eb0fdf311$var$getDirectionAwareKey(key, dir) {
208
+ if (dir !== 'rtl') return key;
209
+ return key === 'ArrowLeft' ? 'ArrowRight' : key === 'ArrowRight' ? 'ArrowLeft' : key;
210
+ }
211
+ function $d7bdfb9eb0fdf311$var$getFocusIntent(event, orientation, dir) {
212
+ const key = $d7bdfb9eb0fdf311$var$getDirectionAwareKey(event.key, dir);
213
+ if (orientation === 'vertical' && [
214
+ 'ArrowLeft',
215
+ 'ArrowRight'
216
+ ].includes(key)) return undefined;
217
+ if (orientation === 'horizontal' && [
218
+ 'ArrowUp',
219
+ 'ArrowDown'
220
+ ].includes(key)) return undefined;
221
+ return $d7bdfb9eb0fdf311$var$MAP_KEY_TO_FOCUS_INTENT[key];
222
+ }
223
+ function $d7bdfb9eb0fdf311$var$focusFirst(candidates) {
224
+ const PREVIOUSLY_FOCUSED_ELEMENT = document.activeElement;
225
+ for (const candidate of candidates){
226
+ // if focus is already where we want to go, we don't want to keep going through the candidates
227
+ if (candidate === PREVIOUSLY_FOCUSED_ELEMENT) return;
228
+ candidate.focus();
229
+ if (document.activeElement !== PREVIOUSLY_FOCUSED_ELEMENT) return;
230
+ }
231
+ }
232
+ /**
233
+ * Wraps an array around itself at a given start index
234
+ * Example: `wrapArray(['a', 'b', 'c', 'd'], 2) === ['c', 'd', 'a', 'b']`
235
+ */ function $d7bdfb9eb0fdf311$var$wrapArray(array, startIndex) {
236
+ return array.map((_, index)=>array[(startIndex + index) % array.length]
237
+ );
238
+ }
239
+ const $d7bdfb9eb0fdf311$export$be92b6f5f03c0fe9 = $d7bdfb9eb0fdf311$export$8699f7c8af148338;
240
+ const $d7bdfb9eb0fdf311$export$6d08773d2e66f8f2 = $d7bdfb9eb0fdf311$export$ab9df7c53fe8454;
241
+
242
+ /* -------------------------------------------------------------------------------------------------
243
+ * Tabs
244
+ * -----------------------------------------------------------------------------------------------*/ const $69cb30bb0017df05$var$TABS_NAME = 'Tabs';
245
+ const [$69cb30bb0017df05$var$createTabsContext, $69cb30bb0017df05$export$355f5bd209d7b13a] = $c512c27ab02ef895$export$50c7b4e9d9f19c1($69cb30bb0017df05$var$TABS_NAME, [
246
+ $d7bdfb9eb0fdf311$export$c7109489551a4f4
247
+ ]);
248
+ const $69cb30bb0017df05$var$useRovingFocusGroupScope = $d7bdfb9eb0fdf311$export$c7109489551a4f4();
249
+ const [$69cb30bb0017df05$var$TabsProvider, $69cb30bb0017df05$var$useTabsContext] = $69cb30bb0017df05$var$createTabsContext($69cb30bb0017df05$var$TABS_NAME);
250
+ const $69cb30bb0017df05$export$b2539bed5023c21c = /*#__PURE__*/ forwardRef((props, forwardedRef)=>{
251
+ const { __scopeTabs: __scopeTabs , value: valueProp , onValueChange: onValueChange , defaultValue: defaultValue , orientation: orientation = 'horizontal' , dir: dir , activationMode: activationMode = 'automatic' , ...tabsProps } = props;
252
+ const direction = $f631663db3294ace$export$b39126d51d94e6f3(dir);
253
+ const [value, setValue] = $71cd76cc60e0454e$export$6f32135080cb4c3({
254
+ prop: valueProp,
255
+ onChange: onValueChange,
256
+ defaultProp: defaultValue
257
+ });
258
+ return /*#__PURE__*/ createElement($69cb30bb0017df05$var$TabsProvider, {
259
+ scope: __scopeTabs,
260
+ baseId: $1746a345f3d73bb7$export$f680877a34711e37(),
261
+ value: value,
262
+ onValueChange: setValue,
263
+ orientation: orientation,
264
+ dir: direction,
265
+ activationMode: activationMode
266
+ }, /*#__PURE__*/ createElement($8927f6f2acc4f386$export$250ffa63cdc0d034.div, _extends({
267
+ dir: direction,
268
+ "data-orientation": orientation
269
+ }, tabsProps, {
270
+ ref: forwardedRef
271
+ })));
272
+ });
273
+ /* -------------------------------------------------------------------------------------------------
274
+ * TabsList
275
+ * -----------------------------------------------------------------------------------------------*/ const $69cb30bb0017df05$var$TAB_LIST_NAME = 'TabsList';
276
+ const $69cb30bb0017df05$export$9712d22edc0d78c1 = /*#__PURE__*/ forwardRef((props, forwardedRef)=>{
277
+ const { __scopeTabs: __scopeTabs , loop: loop = true , ...listProps } = props;
278
+ const context = $69cb30bb0017df05$var$useTabsContext($69cb30bb0017df05$var$TAB_LIST_NAME, __scopeTabs);
279
+ const rovingFocusGroupScope = $69cb30bb0017df05$var$useRovingFocusGroupScope(__scopeTabs);
280
+ return /*#__PURE__*/ createElement($d7bdfb9eb0fdf311$export$be92b6f5f03c0fe9, _extends({
281
+ asChild: true
282
+ }, rovingFocusGroupScope, {
283
+ orientation: context.orientation,
284
+ dir: context.dir,
285
+ loop: loop
286
+ }), /*#__PURE__*/ createElement($8927f6f2acc4f386$export$250ffa63cdc0d034.div, _extends({
287
+ role: "tablist",
288
+ "aria-orientation": context.orientation
289
+ }, listProps, {
290
+ ref: forwardedRef
291
+ })));
292
+ });
293
+ /* -------------------------------------------------------------------------------------------------
294
+ * TabsTrigger
295
+ * -----------------------------------------------------------------------------------------------*/ const $69cb30bb0017df05$var$TRIGGER_NAME = 'TabsTrigger';
296
+ const $69cb30bb0017df05$export$8114b9fdfdf9f3ba = /*#__PURE__*/ forwardRef((props, forwardedRef)=>{
297
+ const { __scopeTabs: __scopeTabs , value: value , disabled: disabled = false , ...triggerProps } = props;
298
+ const context = $69cb30bb0017df05$var$useTabsContext($69cb30bb0017df05$var$TRIGGER_NAME, __scopeTabs);
299
+ const rovingFocusGroupScope = $69cb30bb0017df05$var$useRovingFocusGroupScope(__scopeTabs);
300
+ const triggerId = $69cb30bb0017df05$var$makeTriggerId(context.baseId, value);
301
+ const contentId = $69cb30bb0017df05$var$makeContentId(context.baseId, value);
302
+ const isSelected = value === context.value;
303
+ return /*#__PURE__*/ createElement($d7bdfb9eb0fdf311$export$6d08773d2e66f8f2, _extends({
304
+ asChild: true
305
+ }, rovingFocusGroupScope, {
306
+ focusable: !disabled,
307
+ active: isSelected
308
+ }), /*#__PURE__*/ createElement($8927f6f2acc4f386$export$250ffa63cdc0d034.button, _extends({
309
+ type: "button",
310
+ role: "tab",
311
+ "aria-selected": isSelected,
312
+ "aria-controls": contentId,
313
+ "data-state": isSelected ? 'active' : 'inactive',
314
+ "data-disabled": disabled ? '' : undefined,
315
+ disabled: disabled,
316
+ id: triggerId
317
+ }, triggerProps, {
318
+ ref: forwardedRef,
319
+ onMouseDown: $e42e1063c40fb3ef$export$b9ecd428b558ff10(props.onMouseDown, (event)=>{
320
+ // only call handler if it's the left button (mousedown gets triggered by all mouse buttons)
321
+ // but not when the control key is pressed (avoiding MacOS right click)
322
+ if (!disabled && event.button === 0 && event.ctrlKey === false) context.onValueChange(value);
323
+ else // prevent focus to avoid accidental activation
324
+ event.preventDefault();
325
+ }),
326
+ onKeyDown: $e42e1063c40fb3ef$export$b9ecd428b558ff10(props.onKeyDown, (event)=>{
327
+ if ([
328
+ ' ',
329
+ 'Enter'
330
+ ].includes(event.key)) context.onValueChange(value);
331
+ }),
332
+ onFocus: $e42e1063c40fb3ef$export$b9ecd428b558ff10(props.onFocus, ()=>{
333
+ // handle "automatic" activation if necessary
334
+ // ie. activate tab following focus
335
+ const isAutomaticActivation = context.activationMode !== 'manual';
336
+ if (!isSelected && !disabled && isAutomaticActivation) context.onValueChange(value);
337
+ })
338
+ })));
339
+ });
340
+ /* -------------------------------------------------------------------------------------------------
341
+ * TabsContent
342
+ * -----------------------------------------------------------------------------------------------*/ const $69cb30bb0017df05$var$CONTENT_NAME = 'TabsContent';
343
+ const $69cb30bb0017df05$export$bd905d70e8fd2ebb = /*#__PURE__*/ forwardRef((props, forwardedRef)=>{
344
+ const { __scopeTabs: __scopeTabs , value: value , forceMount: forceMount , children: children , ...contentProps } = props;
345
+ const context = $69cb30bb0017df05$var$useTabsContext($69cb30bb0017df05$var$CONTENT_NAME, __scopeTabs);
346
+ const triggerId = $69cb30bb0017df05$var$makeTriggerId(context.baseId, value);
347
+ const contentId = $69cb30bb0017df05$var$makeContentId(context.baseId, value);
348
+ const isSelected = value === context.value;
349
+ const isMountAnimationPreventedRef = useRef(isSelected);
350
+ useEffect(()=>{
351
+ const rAF = requestAnimationFrame(()=>isMountAnimationPreventedRef.current = false
352
+ );
353
+ return ()=>cancelAnimationFrame(rAF)
354
+ ;
355
+ }, []);
356
+ return /*#__PURE__*/ createElement($921a889cee6df7e8$export$99c2b779aa4e8b8b, {
357
+ present: forceMount || isSelected
358
+ }, ({ present: present })=>/*#__PURE__*/ createElement($8927f6f2acc4f386$export$250ffa63cdc0d034.div, _extends({
359
+ "data-state": isSelected ? 'active' : 'inactive',
360
+ "data-orientation": context.orientation,
361
+ role: "tabpanel",
362
+ "aria-labelledby": triggerId,
363
+ hidden: !present,
364
+ id: contentId,
365
+ tabIndex: 0
366
+ }, contentProps, {
367
+ ref: forwardedRef,
368
+ style: {
369
+ ...props.style,
370
+ animationDuration: isMountAnimationPreventedRef.current ? '0s' : undefined
371
+ }
372
+ }), present && children)
373
+ );
374
+ });
375
+ /* ---------------------------------------------------------------------------------------------- */ function $69cb30bb0017df05$var$makeTriggerId(baseId, value) {
376
+ return `${baseId}-trigger-${value}`;
377
+ }
378
+ function $69cb30bb0017df05$var$makeContentId(baseId, value) {
379
+ return `${baseId}-content-${value}`;
380
+ }
381
+ const $69cb30bb0017df05$export$be92b6f5f03c0fe9 = $69cb30bb0017df05$export$b2539bed5023c21c;
382
+ const $69cb30bb0017df05$export$54c2e3dc7acea9f5 = $69cb30bb0017df05$export$9712d22edc0d78c1;
383
+ const $69cb30bb0017df05$export$41fb9f06171c75f4 = $69cb30bb0017df05$export$8114b9fdfdf9f3ba;
384
+ const $69cb30bb0017df05$export$7c6e2c02157bb7d2 = $69cb30bb0017df05$export$bd905d70e8fd2ebb;
385
+
386
+ var Tab = function (_a) {
387
+ var label = _a.label, value = _a.value, icon = _a.icon, iconActive = _a.iconActive, props = __rest(_a, ["label", "value", "icon", "iconActive"]);
388
+ var surface = useContext(Context).surface;
389
+ return (React__default.createElement($69cb30bb0017df05$export$41fb9f06171c75f4, __assign({ className: classNames("arc-Tab-trigger", {
390
+ "arc-Tab-trigger--onDarkSurface": surface === "dark",
391
+ "arc-Tab-trigger--hasIcon": icon || iconActive
392
+ }), value: value }, filterDataAttrs(props)),
393
+ icon && (React__default.createElement("div", { className: "arc-Tab-triggerIcon", "data-testid": "arc-Tab-TriggerIcon" },
394
+ React__default.createElement(Icon, { icon: icon }))),
395
+ iconActive && (React__default.createElement("div", { className: "arc-Tab-triggerIcon arc-Tab-triggerIcon--active", "data-testid": "arc-Tab-TriggerIconActive" },
396
+ React__default.createElement(Icon, { icon: iconActive }))),
397
+ label));
398
+ };
399
+
400
+ var TabContent = function (_a) {
401
+ var children = _a.children, value = _a.value;
402
+ return (React__default.createElement($69cb30bb0017df05$export$7c6e2c02157bb7d2, { className: "arc-Tab-content", value: value }, children));
403
+ };
404
+
405
+ const React$1 = React__default;
406
+ const BtIconArrowRightFill = props =>
407
+ /*#__PURE__*/ React$1.createElement(
408
+ "svg",
409
+ Object.assign(
410
+ {
411
+ xmlns: "http://www.w3.org/2000/svg",
412
+ viewBox: "0 0 32 32"
413
+ },
414
+ props
415
+ ),
416
+ /*#__PURE__*/ React$1.createElement("defs", null),
417
+ /*#__PURE__*/ React$1.createElement("path", {
418
+ d:
419
+ "M2,16A14,14,0,1,0,16,2,14,14,0,0,0,2,16Zm16.85352-4.35352L23.207,16l-4.35351,4.35352a.5.5,0,0,1-.707-.707L21.293,16.5H9.5a.5.5,0,0,1,0-1H21.293l-3.14649-3.14648a.5.5,0,0,1,.707-.707Z",
420
+ fill: "currentColor"
421
+ })
422
+ );
423
+ var BtIconArrowRightFill_2 = BtIconArrowRightFill;
424
+
425
+ const React = React__default;
426
+ const BtIconArrowLeftFill = props =>
427
+ /*#__PURE__*/ React.createElement(
428
+ "svg",
429
+ Object.assign(
430
+ {
431
+ xmlns: "http://www.w3.org/2000/svg",
432
+ viewBox: "0 0 32 32"
433
+ },
434
+ props
435
+ ),
436
+ /*#__PURE__*/ React.createElement("defs", null),
437
+ /*#__PURE__*/ React.createElement("path", {
438
+ d:
439
+ "M30,16A14,14,0,1,0,16,30,14,14,0,0,0,30,16ZM13.14648,20.35352,8.793,16l4.35351-4.35352a.5.5,0,0,1,.707.707L10.707,15.5H22.5a.5.5,0,0,1,0,1H10.707l3.14649,3.14648a.5.5,0,0,1-.707.707Z",
440
+ fill: "currentColor"
441
+ })
442
+ );
443
+ var BtIconArrowLeftFill_2 = BtIconArrowLeftFill;
444
+
445
+ var TabsList = function (_a) {
446
+ var children = _a.children, type = _a.type, isJustified = _a.isJustified, ariaLabel = _a.ariaLabel, props = __rest(_a, ["children", "type", "isJustified", "ariaLabel"]);
447
+ var surface = useContext(Context).surface;
448
+ var tabsRef = useRef(null);
449
+ var _b = useState(false), rightOverflow = _b[0], setRightOverflow = _b[1];
450
+ var _c = useState(false), leftOverflow = _c[0], setLeftOverflow = _c[1];
451
+ var checkOverflow = function (element) {
452
+ if (element) {
453
+ if (element.scrollWidth > element.clientWidth) {
454
+ setRightOverflow(true);
455
+ }
456
+ if (element.scrollLeft + 10 >=
457
+ element.scrollWidth - element.clientWidth) {
458
+ setRightOverflow(false);
459
+ }
460
+ if (element.scrollLeft >= 1) {
461
+ setLeftOverflow(true);
462
+ }
463
+ else {
464
+ setLeftOverflow(false);
465
+ }
466
+ }
467
+ };
468
+ useEffect(function () {
469
+ checkOverflow(tabsRef.current);
470
+ }, []);
471
+ var scrollTabs = function (scrollAmount) {
472
+ if (tabsRef.current) {
473
+ tabsRef.current.scrollLeft += scrollAmount;
474
+ }
475
+ };
476
+ var onScroll = function (event) {
477
+ checkOverflow(event.currentTarget);
478
+ };
479
+ return (React__default.createElement(React__default.Fragment, null,
480
+ React__default.createElement($69cb30bb0017df05$export$54c2e3dc7acea9f5, __assign({ onScroll: onScroll, className: classNames("arc-Tabs", {
481
+ "arc-Tabs--contained": type === "contained",
482
+ "arc-Tabs--isJustified": isJustified,
483
+ "arc-Tabs--onDarkSurface": surface === "dark"
484
+ }), ref: tabsRef, "aria-label": ariaLabel }, filterDataAttrs(props)), children),
485
+ leftOverflow && (React__default.createElement("button", { className: classNames("arc-Tabs-overflowIcon arc-Tabs-overflowIcon--left", {
486
+ "arc-Tabs-overflowIcon--onDarkSurface": surface === "dark"
487
+ }), onClick: function () { return scrollTabs(-300); }, "aria-label": "Scroll Tabs Left", "data-testid": "arc-Tabs-overflowIconLeft" },
488
+ React__default.createElement(Icon, { icon: BtIconArrowLeftFill_2, size: 40, color: "brand" }))),
489
+ rightOverflow && (React__default.createElement("button", { className: classNames("arc-Tabs-overflowIcon", {
490
+ "arc-Tabs-overflowIcon--onDarkSurface": surface === "dark"
491
+ }), onClick: function () { return scrollTabs(300); }, "aria-label": "Scroll Tabs Right", "data-testid": "arc-Tabs-overflowIconRight" },
492
+ React__default.createElement(Icon, { icon: BtIconArrowRightFill_2, size: 40, color: "brand" })))));
493
+ };
494
+
495
+ var Tabs = function (_a) {
496
+ var children = _a.children, defaultValue = _a.defaultValue, onValueChange = _a.onValueChange, activationMode = _a.activationMode, props = __rest(_a, ["children", "defaultValue", "onValueChange", "activationMode"]);
497
+ return (React__default.createElement($69cb30bb0017df05$export$be92b6f5f03c0fe9, __assign({ className: "arc-Tabs-root", defaultValue: defaultValue, onValueChange: onValueChange, activationMode: activationMode }, filterDataAttrs(props)), children));
498
+ };
499
+ Tab.displayName = "Tabs.Tab";
500
+ TabsList.displayName = "Tabs.List";
501
+ TabContent.displayName = "Tabs.Content";
502
+ Tabs.Tab = Tab;
503
+ Tabs.List = TabsList;
504
+ Tabs.Content = TabContent;
505
+
506
+ export { Tabs };
@@ -0,0 +1,7 @@
1
+ {
2
+ "name": "@arc-ui/tabs",
3
+ "types": "./Tabs.esm.d.ts",
4
+ "main": "./Tabs.cjs.js",
5
+ "module": "./Tabs.esm.js",
6
+ "private": true
7
+ }
@@ -1 +1 @@
1
- export { Text } from "../_shared/cjs/Text-555a29a4";
1
+ export { Text } from "../_shared/cjs/Text-fa447e2d";
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var Text = require('../_shared/cjs/Text-555a29a4.js');
5
+ var Text = require('../_shared/cjs/Text-fa447e2d.js');
6
6
  require('../_shared/cjs/filter-data-attrs-a30dcf5f.js');
7
7
  require('../_shared/cjs/index-45bfb67b.js');
8
8
  require('react');
@@ -1 +1 @@
1
- export { Text } from "../_shared/esm/Text-14deb70e";
1
+ export { Text } from "../_shared/esm/Text-40457811";
@@ -1,4 +1,4 @@
1
- export { T as Text } from '../_shared/esm/Text-14deb70e.js';
1
+ export { T as Text } from '../_shared/esm/Text-40457811.js';
2
2
  import '../_shared/esm/filter-data-attrs-afdb7d32.js';
3
3
  import '../_shared/esm/index-2ae58626.js';
4
4
  import 'react';
@@ -1,12 +1,15 @@
1
1
  /// <reference types="react" />
2
2
  import React from "react";
3
- import { FormControlProps } from "../_shared/cjs/FormControl-78b007b7";
3
+ import { FormControlProps } from "../_shared/cjs/FormControl-1e1bf2bf";
4
4
  type EventType = React.ChangeEvent<HTMLTextAreaElement>;
5
+ /** Use `TextArea` to allow custom user text entry via keyboard, for long-form and multi-line descriptions */
5
6
  declare const TextArea: React.ForwardRefExoticComponent<TextAreaProps & React.RefAttributes<HTMLTextAreaElement>>;
6
7
  interface TextAreaProps extends Omit<FormControlProps, "children" | "elementType" | "htmlFor" | "requirementStatus" | "helperUnderLabel"> {
7
8
  /**
8
9
  * Uncontrolled default value of the TextArea. If the TextArea is controlled
9
10
  * via `value`/`onChange`, `defaultValue` will be ignored.
11
+ *
12
+ * `defaultValue` is not to be used instead of helper text.
10
13
  */
11
14
  defaultValue?: string;
12
15
  /**
@@ -6,24 +6,24 @@ var filterDataAttrs = require('../_shared/cjs/filter-data-attrs-a30dcf5f.js');
6
6
  var React = require('react');
7
7
  var index = require('../_shared/cjs/index-45bfb67b.js');
8
8
  require('../_shared/cjs/Base-569e4334.js');
9
- require('../_shared/cjs/Breadcrumbs-9f580f69.js');
9
+ require('../_shared/cjs/Breadcrumbs-0906dd10.js');
10
10
  var Surface = require('../_shared/cjs/Surface-b7c51b2b.js');
11
- require('../_shared/cjs/Button-b4d6ccc8.js');
12
- require('../_shared/cjs/Card-f1108bfe.js');
13
- require('../_shared/cjs/Checkbox-c927b62f.js');
11
+ require('../_shared/cjs/Button-5aaa6776.js');
12
+ require('../_shared/cjs/Card-fd189ba8.js');
13
+ require('../_shared/cjs/Checkbox-02c546ca.js');
14
14
  require('../_shared/cjs/Columns-e90798f8.js');
15
- require('../_shared/cjs/Heading-ed1cb455.js');
16
- var FormControl = require('../_shared/cjs/FormControl-78b007b7.js');
15
+ require('../_shared/cjs/Heading-e3332dcf.js');
16
+ var FormControl = require('../_shared/cjs/FormControl-1e1bf2bf.js');
17
17
  require('../_shared/cjs/Filter-a7574fe7.js');
18
18
  require('../_shared/cjs/Group-f85dd4c0.js');
19
19
  require('../_shared/cjs/Image-0e393cbf.js');
20
+ var Text = require('../_shared/cjs/Text-fa447e2d.js');
20
21
  require('../_shared/cjs/UniversalHeader-da622e1a.js');
21
22
  require('../_shared/cjs/Poster-faea1ad3.js');
22
- require('../_shared/cjs/RadioGroup-8e17de70.js');
23
- require('../_shared/cjs/SiteFooter-9f7f9c2d.js');
24
- require('../_shared/cjs/SiteHeader.rehydrator-ccbebde6.js');
25
- var Text = require('../_shared/cjs/Text-555a29a4.js');
26
- require('../_shared/cjs/TextInput-b768e346.js');
23
+ require('../_shared/cjs/RadioGroup-d7664b0c.js');
24
+ require('../_shared/cjs/SiteFooter-5da774e1.js');
25
+ require('../_shared/cjs/SiteHeader.rehydrator-acc9d8c4.js');
26
+ require('../_shared/cjs/TextInput-f4549637.js');
27
27
  require('../_shared/cjs/debounce-506538c5.js');
28
28
  require('../_shared/cjs/BtIconChevronRight2Px-a8e40136.js');
29
29
  require('../_shared/cjs/Icon-e1dd45eb.js');
@@ -33,11 +33,11 @@ require('../_shared/cjs/BtIconChevronLeftMid-df952a3e.js');
33
33
  require('../_shared/cjs/BtIconChevronRightMid-5a38d855.js');
34
34
  require('../_shared/cjs/BtIconTickAlt2Px-bdf06f8c.js');
35
35
  require('../_shared/cjs/BtIconAlert-637db790.js');
36
- require('../_shared/cjs/DisclosureMini-2a10006e.js');
36
+ require('../_shared/cjs/DisclosureMini-52706ee6.js');
37
37
  require('../_shared/cjs/BtIconChevronDown2Px-8fb4e2eb.js');
38
38
  require('../_shared/cjs/index.es-77def0c9.js');
39
39
  require('../_shared/cjs/BrandLogo-8107d59f.js');
40
- require('../_shared/cjs/Curve-b05589d8.js');
40
+ require('../_shared/cjs/Curve-781ef633.js');
41
41
  require('../_shared/cjs/Section-48aca5f5.js');
42
42
  require('../_shared/cjs/VisuallyHidden-e2c8b291.js');
43
43
 
@@ -45,6 +45,7 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
45
45
 
46
46
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
47
47
 
48
+ /** Use `TextArea` to allow custom user text entry via keyboard, for long-form and multi-line descriptions */
48
49
  var TextArea = React.forwardRef(function (_a, ref) {
49
50
  var _b = _a.defaultValue, defaultValue = _b === void 0 ? "" : _b, errorMessage = _a.errorMessage, helper = _a.helper, id = _a.id, _c = _a.resize, resize = _c === void 0 ? "manual" : _c, _d = _a.isDisabled, isDisabled = _d === void 0 ? false : _d, _e = _a.isReadOnly, isReadOnly = _e === void 0 ? false : _e, _f = _a.isRequired, isRequired = _f === void 0 ? false : _f, _g = _a.showCharacterCount, showCharacterCount = _g === void 0 ? true : _g, label = _a.label, _h = _a.labelSize, labelSize = _h === void 0 ? "l" : _h, maxLength = _a.maxLength, name = _a.name, onBlur = _a.onBlur, onChange = _a.onChange, onClickDisclosure = _a.onClickDisclosure, value = _a.value, disclosureTitle = _a.disclosureTitle, disclosureText = _a.disclosureText, props = filterDataAttrs.__rest(_a, ["defaultValue", "errorMessage", "helper", "id", "resize", "isDisabled", "isReadOnly", "isRequired", "showCharacterCount", "label", "labelSize", "maxLength", "name", "onBlur", "onChange", "onClickDisclosure", "value", "disclosureTitle", "disclosureText"]);
50
51
  var surface = React.useContext(Surface.Context).surface;
@@ -1,12 +1,15 @@
1
1
  /// <reference types="react" />
2
2
  import React from "react";
3
- import { FormControlProps } from "../_shared/esm/FormControl-2fa7aae5";
3
+ import { FormControlProps } from "../_shared/esm/FormControl-f18e2f59";
4
4
  type EventType = React.ChangeEvent<HTMLTextAreaElement>;
5
+ /** Use `TextArea` to allow custom user text entry via keyboard, for long-form and multi-line descriptions */
5
6
  declare const TextArea: React.ForwardRefExoticComponent<TextAreaProps & React.RefAttributes<HTMLTextAreaElement>>;
6
7
  interface TextAreaProps extends Omit<FormControlProps, "children" | "elementType" | "htmlFor" | "requirementStatus" | "helperUnderLabel"> {
7
8
  /**
8
9
  * Uncontrolled default value of the TextArea. If the TextArea is controlled
9
10
  * via `value`/`onChange`, `defaultValue` will be ignored.
11
+ *
12
+ * `defaultValue` is not to be used instead of helper text.
10
13
  */
11
14
  defaultValue?: string;
12
15
  /**