@arc-ui/components 11.5.0 → 11.6.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 (207) hide show
  1. package/dist/Breadcrumbs/Breadcrumbs.cjs.d.ts +1 -61
  2. package/dist/Breadcrumbs/Breadcrumbs.cjs.js +9 -641
  3. package/dist/Breadcrumbs/Breadcrumbs.esm.d.ts +1 -61
  4. package/dist/Breadcrumbs/Breadcrumbs.esm.js +8 -640
  5. package/dist/Button/Button.cjs.d.ts +1 -1
  6. package/dist/Button/Button.cjs.js +2 -1
  7. package/dist/Button/Button.esm.d.ts +1 -1
  8. package/dist/Button/Button.esm.js +2 -1
  9. package/dist/Card/Card.cjs.d.ts +1 -130
  10. package/dist/Card/Card.cjs.js +12 -119
  11. package/dist/Card/Card.esm.d.ts +1 -130
  12. package/dist/Card/Card.esm.js +11 -118
  13. package/dist/Checkbox/Checkbox.cjs.d.ts +1 -64
  14. package/dist/Checkbox/Checkbox.cjs.js +10 -59
  15. package/dist/Checkbox/Checkbox.esm.d.ts +1 -64
  16. package/dist/Checkbox/Checkbox.esm.js +9 -58
  17. package/dist/Columns/Columns.cjs.d.ts +1 -76
  18. package/dist/Columns/Columns.cjs.js +6 -52
  19. package/dist/Columns/Columns.esm.d.ts +1 -76
  20. package/dist/Columns/Columns.esm.js +5 -51
  21. package/dist/DisclosureMini/DisclosureMini.cjs.d.ts +1 -1
  22. package/dist/DisclosureMini/DisclosureMini.cjs.js +1 -1
  23. package/dist/DisclosureMini/DisclosureMini.esm.d.ts +1 -1
  24. package/dist/DisclosureMini/DisclosureMini.esm.js +1 -1
  25. package/dist/Filter/Filter.cjs.d.ts +1 -0
  26. package/dist/Filter/Filter.cjs.js +13 -0
  27. package/dist/Filter/Filter.esm.d.ts +1 -0
  28. package/dist/Filter/Filter.esm.js +5 -0
  29. package/dist/Filter/package.json +7 -0
  30. package/dist/FormControl/FormControl.cjs.d.ts +1 -1
  31. package/dist/FormControl/FormControl.cjs.js +2 -3
  32. package/dist/FormControl/FormControl.esm.d.ts +1 -1
  33. package/dist/FormControl/FormControl.esm.js +2 -3
  34. package/dist/Group/Group.cjs.d.ts +1 -46
  35. package/dist/Group/Group.cjs.js +6 -43
  36. package/dist/Group/Group.esm.d.ts +1 -46
  37. package/dist/Group/Group.esm.js +5 -42
  38. package/dist/Pagination/Pagination.cjs.d.ts +20 -0
  39. package/dist/Pagination/Pagination.cjs.js +87 -0
  40. package/dist/Pagination/Pagination.esm.d.ts +20 -0
  41. package/dist/Pagination/Pagination.esm.js +79 -0
  42. package/dist/Pagination/package.json +7 -0
  43. package/dist/PaginationSimple/PaginationSimple.cjs.d.ts +28 -0
  44. package/dist/PaginationSimple/PaginationSimple.cjs.js +47 -0
  45. package/dist/PaginationSimple/PaginationSimple.esm.d.ts +28 -0
  46. package/dist/PaginationSimple/PaginationSimple.esm.js +39 -0
  47. package/dist/PaginationSimple/package.json +7 -0
  48. package/dist/Poster/Poster.cjs.d.ts +1 -81
  49. package/dist/Poster/Poster.cjs.js +8 -45
  50. package/dist/Poster/Poster.esm.d.ts +1 -81
  51. package/dist/Poster/Poster.esm.js +7 -44
  52. package/dist/RadioGroup/RadioGroup.cjs.d.ts +1 -85
  53. package/dist/RadioGroup/RadioGroup.cjs.js +8 -67
  54. package/dist/RadioGroup/RadioGroup.esm.d.ts +1 -85
  55. package/dist/RadioGroup/RadioGroup.esm.js +7 -66
  56. package/dist/ScrollToTop/ScrollToTop.cjs.d.ts +25 -0
  57. package/dist/ScrollToTop/ScrollToTop.cjs.js +68 -0
  58. package/dist/ScrollToTop/ScrollToTop.esm.d.ts +25 -0
  59. package/dist/ScrollToTop/ScrollToTop.esm.js +60 -0
  60. package/dist/ScrollToTop/package.json +7 -0
  61. package/dist/Select/Select.cjs.d.ts +2 -2
  62. package/dist/Select/Select.cjs.js +2 -3
  63. package/dist/Select/Select.esm.d.ts +2 -2
  64. package/dist/Select/Select.esm.js +2 -3
  65. package/dist/SiteFooter/SiteFooter.cjs.d.ts +2 -62
  66. package/dist/SiteFooter/SiteFooter.cjs.js +10 -65
  67. package/dist/SiteFooter/SiteFooter.esm.d.ts +2 -62
  68. package/dist/SiteFooter/SiteFooter.esm.js +12 -66
  69. package/dist/SiteHeader/SiteHeader.cjs.d.ts +2 -260
  70. package/dist/SiteHeader/SiteHeader.cjs.js +16 -668
  71. package/dist/SiteHeader/SiteHeader.esm.d.ts +2 -260
  72. package/dist/SiteHeader/SiteHeader.esm.js +14 -666
  73. package/dist/Switch/Switch.cjs.d.ts +2 -2
  74. package/dist/Switch/Switch.cjs.js +2 -2
  75. package/dist/Switch/Switch.esm.d.ts +2 -2
  76. package/dist/Switch/Switch.esm.js +2 -2
  77. package/dist/TextArea/TextArea.cjs.d.ts +61 -0
  78. package/dist/TextArea/TextArea.cjs.js +87 -0
  79. package/dist/TextArea/TextArea.esm.d.ts +61 -0
  80. package/dist/TextArea/TextArea.esm.js +79 -0
  81. package/dist/TextArea/package.json +7 -0
  82. package/dist/TextInput/TextInput.cjs.d.ts +1 -75
  83. package/dist/TextInput/TextInput.cjs.js +9 -75
  84. package/dist/TextInput/TextInput.esm.d.ts +1 -75
  85. package/dist/TextInput/TextInput.esm.js +8 -74
  86. package/dist/UniversalHeader/UniversalHeader.cjs.d.ts +1 -26
  87. package/dist/UniversalHeader/UniversalHeader.cjs.js +5 -30
  88. package/dist/UniversalHeader/UniversalHeader.esm.d.ts +1 -26
  89. package/dist/UniversalHeader/UniversalHeader.esm.js +4 -29
  90. package/dist/_shared/cjs/Breadcrumbs-8b554370.d.ts +61 -0
  91. package/dist/_shared/cjs/Breadcrumbs-8b554370.js +106 -0
  92. package/dist/_shared/cjs/BtIconChevronLeftMid-df952a3e.js +31 -0
  93. package/dist/_shared/cjs/{Button-5dff284a.js → Button-27512fee.js} +6 -27
  94. package/dist/_shared/cjs/Card-804ab0e5.d.ts +136 -0
  95. package/dist/_shared/cjs/Card-804ab0e5.js +124 -0
  96. package/dist/_shared/cjs/Checkbox-21d3c4f6.d.ts +64 -0
  97. package/dist/_shared/cjs/Checkbox-21d3c4f6.js +62 -0
  98. package/dist/_shared/cjs/Columns-e90798f8.d.ts +76 -0
  99. package/dist/_shared/cjs/Columns-e90798f8.js +57 -0
  100. package/dist/_shared/cjs/{DisclosureMini-5af13d3c.js → DisclosureMini-067e0319.js} +3 -1
  101. package/dist/_shared/cjs/Filter-f7d2fbda.d.ts +83 -0
  102. package/dist/_shared/cjs/Filter-f7d2fbda.js +121 -0
  103. package/dist/_shared/cjs/{FormControl-42360ae8.d.ts → FormControl-9aaddd54.d.ts} +4 -0
  104. package/dist/_shared/cjs/{FormControl-42360ae8.js → FormControl-9aaddd54.js} +9 -9
  105. package/dist/_shared/cjs/Group-d83f8c2e.d.ts +46 -0
  106. package/dist/_shared/cjs/Group-d83f8c2e.js +48 -0
  107. package/dist/_shared/cjs/ItemGroup-5af4d600.d.ts +27 -0
  108. package/dist/_shared/cjs/NavItem-df20237c.d.ts +43 -0
  109. package/dist/_shared/cjs/NavItemWithSubNav-65f21828.d.ts +49 -0
  110. package/dist/_shared/cjs/Poster-e05bbe13.d.ts +81 -0
  111. package/dist/_shared/cjs/Poster-e05bbe13.js +50 -0
  112. package/dist/_shared/cjs/RadioGroup-81805ef9.d.ts +97 -0
  113. package/dist/_shared/cjs/RadioGroup-81805ef9.js +70 -0
  114. package/dist/_shared/cjs/SiteFooter-c540b5f1.d.ts +62 -0
  115. package/dist/_shared/cjs/SiteFooter-c540b5f1.js +73 -0
  116. package/dist/_shared/cjs/SiteHeader-c25ee36e.d.ts +78 -0
  117. package/dist/_shared/cjs/SiteHeader.rehydrator-f7fa2efe.d.ts +78 -0
  118. package/dist/_shared/cjs/SiteHeader.rehydrator-f7fa2efe.js +673 -0
  119. package/dist/_shared/cjs/SubNavItem-a84d1bf4.d.ts +48 -0
  120. package/dist/_shared/cjs/TextInput-33314fc4.d.ts +10 -0
  121. package/dist/_shared/cjs/TextInput-33314fc4.js +78 -0
  122. package/dist/_shared/cjs/TextInput-7ed03a48.d.ts +75 -0
  123. package/dist/_shared/cjs/UniversalHeader-cc1d9e5a.d.ts +26 -0
  124. package/dist/_shared/cjs/UniversalHeader-cc1d9e5a.js +35 -0
  125. package/dist/_shared/cjs/debounce-506538c5.js +544 -0
  126. package/dist/_shared/cjs/index-699086a7.d.ts +2 -0
  127. package/dist/_shared/cjs/index-74488a9f.d.ts +2 -0
  128. package/dist/_shared/cjs/index-c81c9401.d.ts +3 -3
  129. package/dist/_shared/cjs/index-e340924e.d.ts +2 -0
  130. package/dist/_shared/cjs/index-e6d20018.d.ts +3 -0
  131. package/dist/_shared/cjs/index-eb06f640.d.ts +2 -0
  132. package/dist/_shared/cjs/index-f419cf04.d.ts +2 -0
  133. package/dist/_shared/esm/Breadcrumbs-04590057.d.ts +61 -0
  134. package/dist/_shared/esm/Breadcrumbs-04590057.js +100 -0
  135. package/dist/_shared/esm/BtIconChevronLeftMid-9f4f3a3d.js +25 -0
  136. package/dist/_shared/esm/{Button-61241dd0.js → Button-d319fa11.js} +2 -23
  137. package/dist/_shared/esm/Card-e79eb6c8.d.ts +136 -0
  138. package/dist/_shared/esm/Card-e79eb6c8.js +118 -0
  139. package/dist/_shared/esm/Checkbox-94300d8c.d.ts +64 -0
  140. package/dist/_shared/esm/Checkbox-94300d8c.js +56 -0
  141. package/dist/_shared/esm/Columns-8704515b.d.ts +76 -0
  142. package/dist/_shared/esm/Columns-8704515b.js +51 -0
  143. package/dist/_shared/esm/{DisclosureMini-322fccc0.js → DisclosureMini-022beae3.js} +3 -1
  144. package/dist/_shared/esm/Filter-41b391e3.d.ts +83 -0
  145. package/dist/_shared/esm/Filter-41b391e3.js +115 -0
  146. package/dist/_shared/esm/{FormControl-0744f93f.d.ts → FormControl-5e3fdca3.d.ts} +4 -0
  147. package/dist/_shared/esm/{FormControl-0744f93f.js → FormControl-5e3fdca3.js} +9 -9
  148. package/dist/_shared/esm/Group-d62c3f56.d.ts +46 -0
  149. package/dist/_shared/esm/Group-d62c3f56.js +42 -0
  150. package/dist/_shared/esm/ItemGroup-5af4d600.d.ts +27 -0
  151. package/dist/_shared/esm/NavItem-df20237c.d.ts +43 -0
  152. package/dist/_shared/esm/NavItemWithSubNav-65f21828.d.ts +49 -0
  153. package/dist/_shared/esm/Poster-107d6954.d.ts +81 -0
  154. package/dist/_shared/esm/Poster-107d6954.js +44 -0
  155. package/dist/_shared/esm/RadioGroup-1fd0f389.d.ts +97 -0
  156. package/dist/_shared/esm/RadioGroup-1fd0f389.js +64 -0
  157. package/dist/_shared/esm/SiteFooter-8075a9bd.d.ts +62 -0
  158. package/dist/_shared/esm/SiteFooter-8075a9bd.js +67 -0
  159. package/dist/_shared/esm/SiteHeader-c25ee36e.d.ts +78 -0
  160. package/dist/_shared/esm/SiteHeader.rehydrator-4da8ac64.d.ts +78 -0
  161. package/dist/_shared/esm/SiteHeader.rehydrator-4da8ac64.js +666 -0
  162. package/dist/_shared/esm/SubNavItem-a84d1bf4.d.ts +48 -0
  163. package/dist/_shared/esm/TextInput-1631dbc4.d.ts +10 -0
  164. package/dist/_shared/esm/TextInput-1631dbc4.js +72 -0
  165. package/dist/_shared/esm/TextInput-7ed03a48.d.ts +75 -0
  166. package/dist/_shared/esm/UniversalHeader-7926abde.d.ts +26 -0
  167. package/dist/_shared/esm/UniversalHeader-7926abde.js +29 -0
  168. package/dist/_shared/esm/debounce-e228705f.js +542 -0
  169. package/dist/_shared/esm/index-699086a7.d.ts +2 -0
  170. package/dist/_shared/esm/index-74488a9f.d.ts +2 -0
  171. package/dist/_shared/esm/index-c81c9401.d.ts +3 -3
  172. package/dist/_shared/esm/index-e340924e.d.ts +2 -0
  173. package/dist/_shared/esm/index-e6d20018.d.ts +3 -0
  174. package/dist/_shared/esm/index-eb06f640.d.ts +2 -0
  175. package/dist/_shared/esm/index-f419cf04.d.ts +2 -0
  176. package/dist/index.es.js +178 -27
  177. package/dist/index.es.js.map +1 -1
  178. package/dist/index.js +179 -26
  179. package/dist/index.js.map +1 -1
  180. package/dist/styles.css +1 -1
  181. package/dist/types/components/Filter/Filter.d.ts +38 -0
  182. package/dist/types/components/Filter/FilterControls/FilterControl/FilterControl.d.ts +16 -0
  183. package/dist/types/components/Filter/FilterControls/FilterControls.d.ts +12 -0
  184. package/dist/types/components/Filter/FilterItems/FilterItem/FilterItem.d.ts +12 -0
  185. package/dist/types/components/Filter/FilterItems/FilterItems.d.ts +12 -0
  186. package/dist/types/components/Filter/index.d.ts +1 -0
  187. package/dist/types/components/FormControl/FormControl.d.ts +4 -0
  188. package/dist/types/components/Pagination/Pagination.d.ts +19 -0
  189. package/dist/types/components/Pagination/index.d.ts +1 -0
  190. package/dist/types/components/PaginationSimple/PaginationSimple.d.ts +27 -0
  191. package/dist/types/components/PaginationSimple/index.d.ts +1 -0
  192. package/dist/types/components/RadioGroup/RadioGroup.d.ts +1 -1
  193. package/dist/types/components/ScrollToTop/ScrollToTop.d.ts +24 -0
  194. package/dist/types/components/ScrollToTop/index.d.ts +1 -0
  195. package/dist/types/components/Select/Select.d.ts +1 -1
  196. package/dist/types/components/Switch/Switch.d.ts +1 -1
  197. package/dist/types/components/TextArea/TextArea.d.ts +60 -0
  198. package/dist/types/components/TextArea/index.d.ts +1 -0
  199. package/dist/types/components/TextInput/TextInput.d.ts +1 -1
  200. package/dist/types/components/index.d.ts +2 -0
  201. package/dist/types/hooks/use-pagination.d.ts +1 -0
  202. package/dist/types/styles.d.ts +7 -2
  203. package/package.json +4 -4
  204. /package/dist/_shared/cjs/{Button-5dff284a.d.ts → Button-27512fee.d.ts} +0 -0
  205. /package/dist/_shared/cjs/{DisclosureMini-5af13d3c.d.ts → DisclosureMini-067e0319.d.ts} +0 -0
  206. /package/dist/_shared/esm/{Button-61241dd0.d.ts → Button-d319fa11.d.ts} +0 -0
  207. /package/dist/_shared/esm/{DisclosureMini-322fccc0.d.ts → DisclosureMini-022beae3.d.ts} +0 -0
package/dist/index.js CHANGED
@@ -1572,7 +1572,9 @@ var DisclosureMini = function (_a) {
1572
1572
  "arc-DisclosureMini-summary--icon-left": iconPosition === "left",
1573
1573
  "arc-DisclosureMini-summary--icon-right": iconPosition === "right"
1574
1574
  }), onClick: handleOnClick, "aria-expanded": disclousreState },
1575
- React__default["default"].createElement("span", { className: "arc-DisclosureMini-summary-icon" },
1575
+ React__default["default"].createElement("div", { className: classNames("arc-DisclosureMini-summary-icon", {
1576
+ "arc-DisclosureMini-summary-icon--small": size === "s"
1577
+ }) },
1576
1578
  React__default["default"].createElement(BtIconChevronDown2Px_2, null)),
1577
1579
  React__default["default"].createElement(Text, { size: size === "l" ? "m" : "s" }, summary)),
1578
1580
  React__default["default"].createElement("div", { className: "arc-DisclosureMini-details" },
@@ -1580,24 +1582,6 @@ var DisclosureMini = function (_a) {
1580
1582
  React__default["default"].createElement("span", { id: id }, children)))));
1581
1583
  };
1582
1584
 
1583
- /**
1584
- * Use `VerticalSpace` to create vertical space between components.
1585
- */
1586
- var VerticalSpace = function (_a) {
1587
- var _b;
1588
- var _c = _a.isDebugVisible, isDebugVisible = _c === void 0 ? false : _c, _d = _a.size, size = _d === void 0 ? "24" : _d, sizeS = _a.sizeS, sizeM = _a.sizeM, sizeL = _a.sizeL, sizeXL = _a.sizeXL, props = __rest$2(_a, ["isDebugVisible", "size", "sizeS", "sizeM", "sizeL", "sizeXL"]);
1589
- return (React__default["default"].createElement("div", __assign$2({ className: classNames((_b = {
1590
- "arc-VerticalSpace": true
1591
- },
1592
- _b["arc-VerticalSpace--size".concat(size)] = size,
1593
- _b["arc-VerticalSpace--sizeS".concat(sizeS)] = sizeS && sizeS,
1594
- _b["arc-VerticalSpace--sizeM".concat(sizeM)] = sizeM && sizeM,
1595
- _b["arc-VerticalSpace--sizeL".concat(sizeL)] = sizeL && sizeL,
1596
- _b["arc-VerticalSpace--sizeXL".concat(sizeXL)] = sizeXL && sizeXL,
1597
- _b["arc-VerticalSpace--debugVisible"] = isDebugVisible,
1598
- _b)) }, filterDataAttrs(props))));
1599
- };
1600
-
1601
1585
  var defaultContext$2 = {
1602
1586
  requirementStatus: null
1603
1587
  };
@@ -1607,7 +1591,7 @@ var Provider$3 = Context$2.Provider;
1607
1591
  * Use `FormControl` to provide inputs with labels, helper text and error messages
1608
1592
  */
1609
1593
  var FormControl = function (_a) {
1610
- var children = _a.children, _b = _a.elementType, ElementType = _b === void 0 ? "div" : _b, errorMessage = _a.errorMessage, helper = _a.helper, htmlFor = _a.htmlFor, id = _a.id, label = _a.label, _c = _a.labelSize, labelSize = _c === void 0 ? "l" : _c, _d = _a.requirementStatus, requirementStatus = _d === void 0 ? "optional" : _d, _e = _a.helperUnderLabel, helperUnderLabel = _e === void 0 ? false : _e, isDisabled = _a.isDisabled, disclosureTitle = _a.disclosureTitle, disclosureText = _a.disclosureText, onClickDisclosure = _a.onClickDisclosure, props = __rest$2(_a, ["children", "elementType", "errorMessage", "helper", "htmlFor", "id", "label", "labelSize", "requirementStatus", "helperUnderLabel", "isDisabled", "disclosureTitle", "disclosureText", "onClickDisclosure"]);
1594
+ var children = _a.children, _b = _a.elementType, ElementType = _b === void 0 ? "div" : _b, errorMessage = _a.errorMessage, helper = _a.helper, htmlFor = _a.htmlFor, supplementaryInfo = _a.supplementaryInfo, id = _a.id, label = _a.label, _c = _a.labelSize, labelSize = _c === void 0 ? "l" : _c, _d = _a.requirementStatus, requirementStatus = _d === void 0 ? "optional" : _d, _e = _a.helperUnderLabel, helperUnderLabel = _e === void 0 ? false : _e, isDisabled = _a.isDisabled, disclosureTitle = _a.disclosureTitle, disclosureText = _a.disclosureText, onClickDisclosure = _a.onClickDisclosure, props = __rest$2(_a, ["children", "elementType", "errorMessage", "helper", "htmlFor", "supplementaryInfo", "id", "label", "labelSize", "requirementStatus", "helperUnderLabel", "isDisabled", "disclosureTitle", "disclosureText", "onClickDisclosure"]);
1611
1595
  var surface = React$b.useContext(Context$3).surface;
1612
1596
  var _f = useAriaDescribedby({
1613
1597
  disclosureText: disclosureText,
@@ -1642,12 +1626,13 @@ var FormControl = function (_a) {
1642
1626
  requirementStatus === "optional" && (React__default["default"].createElement("span", { className: "arc-FormControl-labelOptional" }, "(optional)"))),
1643
1627
  helperUnderLabel && (React__default["default"].createElement(React__default["default"].Fragment, null, helper && (React__default["default"].createElement("div", { className: "arc-FormControl-helper arc-FormControl-helper--underLabel", id: idHelper }, helper)))),
1644
1628
  children,
1645
- !helperUnderLabel && (React__default["default"].createElement(React__default["default"].Fragment, null, errorMessage ? (React__default["default"].createElement("div", { className: "arc-FormControl-error", id: idError },
1646
- React__default["default"].createElement("span", { className: "arc-FormControl-error--icon" },
1647
- React__default["default"].createElement(BtIconAlert_2, null)),
1648
- errorMessage)) : disclosureTitle ? (React__default["default"].createElement(React__default["default"].Fragment, null,
1649
- React__default["default"].createElement(VerticalSpace, { size: "12" }),
1650
- React__default["default"].createElement(DisclosureMini, { onClick: onClickDisclosure, summary: disclosureTitle, size: labelSize, id: idDisclosure }, disclosureText))) : (helper && (React__default["default"].createElement("div", { className: "arc-FormControl-helper", id: idHelper }, helper))))))));
1629
+ React__default["default"].createElement("div", { className: "arc-FormControl-info" },
1630
+ !helperUnderLabel && (React__default["default"].createElement("div", { className: "arc-FormControl-helperContainer" }, errorMessage ? (React__default["default"].createElement("div", { className: "arc-FormControl-error", id: idError },
1631
+ React__default["default"].createElement("span", { className: "arc-FormControl-error--icon" },
1632
+ React__default["default"].createElement(BtIconAlert_2, null)),
1633
+ errorMessage)) : disclosureTitle ? (React__default["default"].createElement(React__default["default"].Fragment, null,
1634
+ React__default["default"].createElement(DisclosureMini, { onClick: onClickDisclosure, summary: disclosureTitle, size: labelSize, id: idDisclosure }, disclosureText))) : (helper && (React__default["default"].createElement("div", { className: "arc-FormControl-helper", id: idHelper }, helper))))),
1635
+ supplementaryInfo && (React__default["default"].createElement("div", { className: "arc-FormControl-supplementaryInfo" }, supplementaryInfo))))));
1651
1636
  };
1652
1637
 
1653
1638
  /**
@@ -1823,6 +1808,115 @@ var Elevation = function (_a) {
1823
1808
  _b)) }, filterDataAttrs(props)), children));
1824
1809
  };
1825
1810
 
1811
+ var FilterControl = function (_a) {
1812
+ var children = _a.children, onClick = _a.onClick, _b = _a.isSelected, isSelected = _b === void 0 ? false : _b;
1813
+ var surface = React$b.useContext(Context$3).surface;
1814
+ var _c = React$b.useState(isSelected), selected = _c[0], setSelected = _c[1];
1815
+ var onClickHandler = function () {
1816
+ onClick && onClick();
1817
+ setSelected(function (previousValue) { return !previousValue; });
1818
+ };
1819
+ return (React__default["default"].createElement("button", { className: classNames("arc-FilterControl", {
1820
+ "arc-FilterControl--onDarkSurface": surface === "dark",
1821
+ "arc-FilterControl--selected": selected
1822
+ }), onClick: onClickHandler, tabIndex: 0 },
1823
+ React__default["default"].createElement("div", { className: "arc-FilterControl-text" }, children)));
1824
+ };
1825
+
1826
+ var FilterControls = function (_a) {
1827
+ var children = _a.children, controlsAlignment = _a.controlsAlignment, props = __rest$2(_a, ["children", "controlsAlignment"]);
1828
+ return (React__default["default"].createElement("div", __assign$2({ className: classNames("arc-FilterControls", {
1829
+ "arc-FilterControls--alignLeft": controlsAlignment === "left",
1830
+ "arc-FilterControls--alignRight": controlsAlignment === "right"
1831
+ }) }, filterDataAttrs(props)), children));
1832
+ };
1833
+
1834
+ var FilterItem = function (_a) {
1835
+ var children = _a.children, props = __rest$2(_a, ["children"]);
1836
+ return (React__default["default"].createElement("div", __assign$2({ className: "arc-FilterItem" }, filterDataAttrs(props)), children));
1837
+ };
1838
+
1839
+ var FilterItems = function (_a) {
1840
+ var children = _a.children, _b = _a.displayType, displayType = _b === void 0 ? "grid" : _b, props = __rest$2(_a, ["children", "displayType"]);
1841
+ return (React__default["default"].createElement("div", __assign$2({ className: classNames("arc-FilterItems", {
1842
+ "arc-FilterItems--list": displayType === "list",
1843
+ "arc-FilterItems--grid": displayType === "grid"
1844
+ }) }, filterDataAttrs(props)), displayType === "list"
1845
+ ? React__default["default"].Children.toArray(children).map(function (child, index, array) { return (React__default["default"].createElement(React__default["default"].Fragment, { key: index },
1846
+ child,
1847
+ index !== array.length - 1 && (React__default["default"].createElement(React__default["default"].Fragment, null,
1848
+ React__default["default"].createElement("div", { className: "arc-FilterItems-separator", "data-testid": "arc-FilterItems-separator" }))))); })
1849
+ : children));
1850
+ };
1851
+
1852
+ /** use `Filter` for interactive elements that filter and categorise page content. */
1853
+ var Filter = function (_a) {
1854
+ var children = _a.children, onChange = _a.onChange, displayType = _a.displayType, controlsAlignment = _a.controlsAlignment, _b = _a.logicType, logicType = _b === void 0 ? "OR" : _b, error = _a.error, props = __rest$2(_a, ["children", "onChange", "displayType", "controlsAlignment", "logicType", "error"]);
1855
+ var _c = React$b.useState([]), selectedControls = _c[0], setSelectedControls = _c[1];
1856
+ var controls = React__default["default"].Children.toArray(children).find(function (child) { return React__default["default"].isValidElement(child) && child.type === FilterControls; });
1857
+ var items = React__default["default"].Children.toArray(children).find(function (child) { return React__default["default"].isValidElement(child) && child.type === FilterItems; });
1858
+ React$b.useEffect(function () {
1859
+ var initialSelectedControls = [];
1860
+ if (controls && React__default["default"].isValidElement(controls)) {
1861
+ React__default["default"].Children.forEach(controls.props.children, function (child) {
1862
+ if (child.props.isSelected) {
1863
+ initialSelectedControls.push(child.props.children);
1864
+ }
1865
+ });
1866
+ }
1867
+ setSelectedControls(initialSelectedControls);
1868
+ // eslint-disable-next-line react-hooks/exhaustive-deps
1869
+ }, []);
1870
+ var handleControlClick = function (clickedControl) {
1871
+ if (selectedControls.includes(clickedControl)) {
1872
+ var updatedControls = selectedControls.filter(function (control) { return control !== clickedControl; });
1873
+ setSelectedControls(updatedControls);
1874
+ if (onChange) {
1875
+ onChange(updatedControls);
1876
+ }
1877
+ }
1878
+ else {
1879
+ var updatedControls = __spreadArray$1(__spreadArray$1([], selectedControls, true), [clickedControl], false);
1880
+ setSelectedControls(updatedControls);
1881
+ if (onChange) {
1882
+ onChange(updatedControls);
1883
+ }
1884
+ }
1885
+ };
1886
+ var filterItems = React__default["default"].Children.toArray(items && React__default["default"].isValidElement(items) && items.props.children);
1887
+ var filteredItems = filterItems.filter(function (filteredItem) {
1888
+ // If no tags are selected, show all items
1889
+ if (selectedControls.length === 0) {
1890
+ return true;
1891
+ }
1892
+ // If logicType is "AND", all selected tags should be present in the item's tags
1893
+ if (logicType === "AND") {
1894
+ return selectedControls.every(function (control) {
1895
+ return filteredItem.props.tags.includes(control);
1896
+ });
1897
+ }
1898
+ else {
1899
+ // Check if item has tags property and if any selected tags are present in item's tags
1900
+ return selectedControls.some(function (control) {
1901
+ return filteredItem.props.tags.includes(control);
1902
+ });
1903
+ }
1904
+ });
1905
+ return (React__default["default"].createElement("div", __assign$2({ className: "arc-Filter" }, filterDataAttrs(props)),
1906
+ React__default["default"].createElement(FilterControls, { controlsAlignment: controlsAlignment }, controls &&
1907
+ React__default["default"].isValidElement(controls) &&
1908
+ React__default["default"].Children.map(controls.props.children, function (control, index) { return (React__default["default"].createElement(FilterControl, { key: index, onClick: function () { return handleControlClick(control.props.children); }, isSelected: control.props.isSelected }, control.props.children)); })),
1909
+ filteredItems.length === 0 ? (React__default["default"].createElement(React__default["default"].Fragment, null, error)) : (React__default["default"].createElement(FilterItems, { displayType: displayType }, filteredItems.map(function (item) { return item.props.children; })))));
1910
+ };
1911
+ Filter.Controls = FilterControls;
1912
+ Filter.Control = FilterControl;
1913
+ Filter.Items = FilterItems;
1914
+ Filter.Item = FilterItem;
1915
+ FilterControls.displayName = "Filter.Controls";
1916
+ FilterControl.displayName = "Filter.Control";
1917
+ FilterItems.displayName = "Filter.Items";
1918
+ FilterItem.displayName = "Filter.Item";
1919
+
1826
1920
  /**
1827
1921
  * Use `Group` to arrange flexible items in a row.
1828
1922
  */
@@ -36722,6 +36816,24 @@ function $6be4966fd9bbc698$var$getState(checked) {
36722
36816
  const $6be4966fd9bbc698$export$be92b6f5f03c0fe9 = $6be4966fd9bbc698$export$b5d5cf8927ab7262;
36723
36817
  const $6be4966fd9bbc698$export$6521433ed15a34db = $6be4966fd9bbc698$export$4d07bf653ea69106;
36724
36818
 
36819
+ /**
36820
+ * Use `VerticalSpace` to create vertical space between components.
36821
+ */
36822
+ var VerticalSpace = function (_a) {
36823
+ var _b;
36824
+ var _c = _a.isDebugVisible, isDebugVisible = _c === void 0 ? false : _c, _d = _a.size, size = _d === void 0 ? "24" : _d, sizeS = _a.sizeS, sizeM = _a.sizeM, sizeL = _a.sizeL, sizeXL = _a.sizeXL, props = __rest$2(_a, ["isDebugVisible", "size", "sizeS", "sizeM", "sizeL", "sizeXL"]);
36825
+ return (React__default["default"].createElement("div", __assign$2({ className: classNames((_b = {
36826
+ "arc-VerticalSpace": true
36827
+ },
36828
+ _b["arc-VerticalSpace--size".concat(size)] = size,
36829
+ _b["arc-VerticalSpace--sizeS".concat(sizeS)] = sizeS && sizeS,
36830
+ _b["arc-VerticalSpace--sizeM".concat(sizeM)] = sizeM && sizeM,
36831
+ _b["arc-VerticalSpace--sizeL".concat(sizeL)] = sizeL && sizeL,
36832
+ _b["arc-VerticalSpace--sizeXL".concat(sizeXL)] = sizeXL && sizeXL,
36833
+ _b["arc-VerticalSpace--debugVisible"] = isDebugVisible,
36834
+ _b)) }, filterDataAttrs(props))));
36835
+ };
36836
+
36725
36837
  /** Use `Switch` to toggle between checked and not checked. */
36726
36838
  var Switch = function (_a) {
36727
36839
  var defaultChecked = _a.defaultChecked, onCheckedChange = _a.onCheckedChange, label = _a.label, name = _a.name, onBlur = _a.onBlur, value = _a.value, _b = _a.isDisabled, isDisabled = _b === void 0 ? false : _b, errorMessage = _a.errorMessage, id = _a.id, _c = _a.labelSize, labelSize = _c === void 0 ? "s" : _c, statusText = _a.statusText, _d = _a.hideLabel, hideLabel = _d === void 0 ? false : _d;
@@ -36893,6 +37005,45 @@ var TextInput = React$b.forwardRef(function (_a, ref) {
36893
37005
  : "Your password is hidden")))))))));
36894
37006
  });
36895
37007
 
37008
+ var TextArea = React$b.forwardRef(function (_a, ref) {
37009
+ 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 = __rest$2(_a, ["defaultValue", "errorMessage", "helper", "id", "resize", "isDisabled", "isReadOnly", "isRequired", "showCharacterCount", "label", "labelSize", "maxLength", "name", "onBlur", "onChange", "onClickDisclosure", "value", "disclosureTitle", "disclosureText"]);
37010
+ var surface = React$b.useContext(Context$3).surface;
37011
+ var ourRef = React$b.useRef(null);
37012
+ var _j = React$b.useState((value && value.length) || (defaultValue && defaultValue.length) || 0), characterCount = _j[0], setCharacterCount = _j[1];
37013
+ var setSmartHeight = function (el) {
37014
+ el.style.height = "auto";
37015
+ el.style.height = "".concat(parseInt(getComputedStyle(el).getPropertyValue("border-width")) *
37016
+ 2 +
37017
+ el.scrollHeight, "px");
37018
+ };
37019
+ var getTextAreaRef = function (elementRef) {
37020
+ ourRef.current = elementRef;
37021
+ if (ref && typeof ref === "object") {
37022
+ ref.current = elementRef;
37023
+ }
37024
+ if (ref && typeof ref === "function") {
37025
+ ref(elementRef);
37026
+ }
37027
+ };
37028
+ var handleOnChange = function (e) {
37029
+ resize === "auto" && ourRef.current && setSmartHeight(ourRef.current);
37030
+ onChange && onChange(e);
37031
+ setCharacterCount(e.target.value.length);
37032
+ };
37033
+ return (React__default["default"].createElement(FormControl, __assign$2({ errorMessage: errorMessage, helper: helper, htmlFor: id, isDisabled: isDisabled, label: label, labelSize: labelSize, requirementStatus: isRequired ? "required" : "optional", disclosureTitle: disclosureTitle, disclosureText: disclosureText, onClickDisclosure: onClickDisclosure, supplementaryInfo: maxLength &&
37034
+ showCharacterCount && (React__default["default"].createElement(React__default["default"].Fragment, null,
37035
+ React__default["default"].createElement(Text, { tone: isDisabled ? "muted" : "default" },
37036
+ React__default["default"].createElement("span", { className: "arc-TextArea-characterCount" },
37037
+ characterCount,
37038
+ " / ",
37039
+ maxLength)))) }, filterDataAttrs(props)),
37040
+ React__default["default"].createElement("textarea", { id: id, className: classNames("arc-TextArea", {
37041
+ "arc-TextArea--noResize": resize !== "manual",
37042
+ "arc-TextArea--onDarkSurface": surface === "dark",
37043
+ "arc-TextArea--invalid": errorMessage
37044
+ }), defaultValue: typeof value !== "undefined" ? undefined : defaultValue, disabled: isDisabled, value: value, readOnly: isReadOnly, maxLength: maxLength, name: name, onChange: handleOnChange, onBlur: onBlur, ref: getTextAreaRef })));
37045
+ });
37046
+
36896
37047
  /** Use `Truncate` component to shorten text with an ellipsis. Add a `title` attribute to the truncated element so the full text remains accessible. */
36897
37048
  var Truncate = function (_a) {
36898
37049
  var _b = _a.maxWidth, maxWidth = _b === void 0 ? 100 : _b, title = _a.title, children = _a.children;
@@ -36913,6 +37064,7 @@ exports.Columns = Columns;
36913
37064
  exports.Curve = Curve;
36914
37065
  exports.Disclosure = Disclosure;
36915
37066
  exports.Elevation = Elevation;
37067
+ exports.Filter = Filter;
36916
37068
  exports.FormControl = FormControl;
36917
37069
  exports.Group = Group;
36918
37070
  exports.Heading = Heading;
@@ -36933,6 +37085,7 @@ exports.SurfaceContext = Context$3;
36933
37085
  exports.Switch = Switch;
36934
37086
  exports.Tag = Tag;
36935
37087
  exports.Text = Text;
37088
+ exports.TextArea = TextArea;
36936
37089
  exports.TextInput = TextInput;
36937
37090
  exports.Truncate = Truncate;
36938
37091
  exports.UniversalHeader = UniversalHeader;