@alma-oss/spirit-web-react 4.1.0 → 4.2.1

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 (249) hide show
  1. package/README.md +2 -1
  2. package/bundles/web-react.umd.js +765 -419
  3. package/bundles/web-react.umd.js.map +1 -1
  4. package/bundles/web-react.umd.min.js +1 -1
  5. package/bundles/web-react.umd.min.js.map +1 -1
  6. package/components/Accordion/Accordion.cjs +24 -8
  7. package/components/Accordion/Accordion.cjs.map +1 -1
  8. package/components/Accordion/Accordion.d.ts +5 -3
  9. package/components/Accordion/Accordion.js +2 -0
  10. package/components/Accordion/Accordion.js.map +1 -1
  11. package/components/Accordion/AccordionHeader.d.ts +5 -3
  12. package/components/Accordion/AccordionHeader.js +14 -4
  13. package/components/Accordion/AccordionHeader.js.map +1 -1
  14. package/components/Accordion/AccordionItem.d.ts +5 -3
  15. package/components/Accordion/AccordionItem.js +2 -0
  16. package/components/Accordion/AccordionItem.js.map +1 -1
  17. package/components/Accordion/UncontrolledAccordion.d.ts +5 -3
  18. package/components/Accordion/UncontrolledAccordion.js +3 -1
  19. package/components/Accordion/UncontrolledAccordion.js.map +1 -1
  20. package/components/Accordion/useAccordion.d.ts +2 -2
  21. package/components/Accordion/useAccordion.js.map +1 -1
  22. package/components/ActionGroup/ActionGroup.cjs +4 -2
  23. package/components/ActionGroup/ActionGroup.cjs.map +1 -1
  24. package/components/Avatar/Avatar.js.map +1 -1
  25. package/components/Button/Button.cjs +49 -12
  26. package/components/Button/Button.cjs.map +1 -1
  27. package/components/Button/Button.js.map +1 -1
  28. package/components/Button/useButtonStyleProps.js +6 -6
  29. package/components/Button/useButtonStyleProps.js.map +1 -1
  30. package/components/ButtonLink/ButtonLink.js.map +1 -1
  31. package/components/ButtonLink/useButtonLinkStyleProps.js +6 -6
  32. package/components/ButtonLink/useButtonLinkStyleProps.js.map +1 -1
  33. package/components/Card/CardLink.d.ts +1 -1
  34. package/components/Card/CardLink.js.map +1 -1
  35. package/components/Checkbox/Checkbox.cjs +45 -1
  36. package/components/Checkbox/Checkbox.cjs.map +1 -1
  37. package/components/Checkbox/Checkbox.js.map +1 -1
  38. package/components/Checkbox/useCheckboxStyleProps.js +5 -2
  39. package/components/Checkbox/useCheckboxStyleProps.js.map +1 -1
  40. package/components/Collapse/Collapse.cjs +2 -2
  41. package/components/Collapse/Collapse.cjs.map +1 -1
  42. package/components/ControlButton/ControlButton.js.map +1 -1
  43. package/components/ControlButton/useControlButtonStyleProps.js +3 -4
  44. package/components/ControlButton/useControlButtonStyleProps.js.map +1 -1
  45. package/components/Drawer/Drawer.cjs +49 -12
  46. package/components/Drawer/Drawer.cjs.map +1 -1
  47. package/components/Drawer/DrawerPanel.js.map +1 -1
  48. package/components/FileUploader/FileUploader.cjs +6 -4
  49. package/components/FileUploader/FileUploader.cjs.map +1 -1
  50. package/components/FileUploader/FileUploaderAttachment.js +3 -3
  51. package/components/FileUploader/FileUploaderAttachment.js.map +1 -1
  52. package/components/FileUploader/FileUploaderList.js +2 -1
  53. package/components/FileUploader/FileUploaderList.js.map +1 -1
  54. package/components/FileUploader/constants.d.ts +1 -0
  55. package/components/FileUploader/constants.js +1 -0
  56. package/components/FileUploader/constants.js.map +1 -1
  57. package/components/FileUploader/useFileUploaderInput.js.map +1 -1
  58. package/components/Flex/Flex.cjs +4 -2
  59. package/components/Flex/Flex.cjs.map +1 -1
  60. package/components/Flex/Flex.d.ts +2 -0
  61. package/components/Flex/Flex.js +2 -0
  62. package/components/Flex/Flex.js.map +1 -1
  63. package/components/Flex/useFlexStyleProps.d.ts +2 -2
  64. package/components/Footer/Footer.cjs +40 -3
  65. package/components/Footer/Footer.cjs.map +1 -1
  66. package/components/Footer/Footer.d.ts +2 -2
  67. package/components/Footer/Footer.js +5 -3
  68. package/components/Footer/Footer.js.map +1 -1
  69. package/components/Footer/useFooterStyleProps.d.ts +2 -2
  70. package/components/Footer/useFooterStyleProps.js.map +1 -1
  71. package/components/Grid/Grid.cjs +10 -5
  72. package/components/Grid/Grid.cjs.map +1 -1
  73. package/components/Grid/Grid.d.ts +2 -0
  74. package/components/Grid/Grid.js +2 -0
  75. package/components/Grid/Grid.js.map +1 -1
  76. package/components/Grid/GridItem.d.ts +2 -0
  77. package/components/Grid/GridItem.js +2 -0
  78. package/components/Grid/GridItem.js.map +1 -1
  79. package/components/Grid/useGridItemStyleProps.d.ts +2 -2
  80. package/components/Grid/useGridItemStyleProps.js +6 -5
  81. package/components/Grid/useGridItemStyleProps.js.map +1 -1
  82. package/components/Grid/useGridStyleProps.d.ts +2 -2
  83. package/components/Header/Header.cjs +49 -12
  84. package/components/Header/Header.cjs.map +1 -1
  85. package/components/Header/HeaderDialogLink.js.map +1 -1
  86. package/components/Header/HeaderLink.js.map +1 -1
  87. package/components/Hidden/Hidden.d.ts +9 -0
  88. package/components/Hidden/Hidden.js +31 -0
  89. package/components/Hidden/Hidden.js.map +1 -0
  90. package/components/Hidden/index.d.ts +1 -0
  91. package/components/Hidden/index.js +2 -0
  92. package/components/Hidden/index.js.map +1 -0
  93. package/components/Icon/Icon.js.map +1 -1
  94. package/components/Icon/useIconStyleProps.d.ts +10 -10
  95. package/components/Link/Link.js.map +1 -1
  96. package/components/Matrix/Matrix.cjs.map +1 -1
  97. package/components/Matrix/Matrix.js +2 -2
  98. package/components/Matrix/Matrix.js.map +1 -1
  99. package/components/Matrix/useMatrixStyleProps.d.ts +1 -1
  100. package/components/Matrix/useMatrixStyleProps.js.map +1 -1
  101. package/components/Modal/Modal.cjs +54 -16
  102. package/components/Modal/Modal.cjs.map +1 -1
  103. package/components/Modal/ModalCloseButton.js +2 -1
  104. package/components/Modal/ModalCloseButton.js.map +1 -1
  105. package/components/Modal/ModalHeader.js +2 -1
  106. package/components/Modal/ModalHeader.js.map +1 -1
  107. package/components/Modal/constants.d.ts +1 -0
  108. package/components/Modal/constants.js +2 -0
  109. package/components/Modal/constants.js.map +1 -0
  110. package/components/Modal/useModalDialogStyleProps.js +1 -2
  111. package/components/Modal/useModalDialogStyleProps.js.map +1 -1
  112. package/components/Navigation/NavigationAction.js.map +1 -1
  113. package/components/Navigation/NavigationAvatar.js.map +1 -1
  114. package/components/Pagination/Pagination.cjs +61 -19
  115. package/components/Pagination/Pagination.cjs.map +1 -1
  116. package/components/Pagination/PaginationButtonLink.js +4 -1
  117. package/components/Pagination/PaginationButtonLink.js.map +1 -1
  118. package/components/Pagination/PaginationLink.js +4 -2
  119. package/components/Pagination/PaginationLink.js.map +1 -1
  120. package/components/Pagination/PaginationLinkNext.js.map +1 -1
  121. package/components/Pagination/PaginationLinkPrevious.js.map +1 -1
  122. package/components/Pagination/UncontrolledPagination.js +2 -1
  123. package/components/Pagination/UncontrolledPagination.js.map +1 -1
  124. package/components/Pagination/constants.d.ts +1 -0
  125. package/components/Pagination/constants.js +1 -0
  126. package/components/Pagination/constants.js.map +1 -1
  127. package/components/PricingPlan/PricingPlan.cjs +54 -16
  128. package/components/PricingPlan/PricingPlan.cjs.map +1 -1
  129. package/components/Radio/Radio.cjs +45 -1
  130. package/components/Radio/Radio.cjs.map +1 -1
  131. package/components/Radio/Radio.js.map +1 -1
  132. package/components/Radio/useRadioStyleProps.js +5 -2
  133. package/components/Radio/useRadioStyleProps.js.map +1 -1
  134. package/components/ScrollView/ScrollView.cjs +80 -11
  135. package/components/ScrollView/ScrollView.cjs.map +1 -1
  136. package/components/ScrollView/ScrollViewArrows.js +3 -8
  137. package/components/ScrollView/ScrollViewArrows.js.map +1 -1
  138. package/components/ScrollView/constants.d.ts +1 -0
  139. package/components/ScrollView/constants.js +1 -0
  140. package/components/ScrollView/constants.js.map +1 -1
  141. package/components/ScrollView/index.d.ts +1 -0
  142. package/components/ScrollView/index.js +1 -0
  143. package/components/ScrollView/index.js.map +1 -1
  144. package/components/ScrollView/useScrollCallback.d.ts +10 -0
  145. package/components/ScrollView/useScrollCallback.js +41 -0
  146. package/components/ScrollView/useScrollCallback.js.map +1 -0
  147. package/components/ScrollView/useScrollPosition.js.map +1 -1
  148. package/components/SegmentedControl/SegmentedControlContext.js.map +1 -1
  149. package/components/Select/Select.js.map +1 -1
  150. package/components/Skeleton/useSkeletonShapeStyleProps.d.ts +10 -10
  151. package/components/SkipLink/SkipLink.js.map +1 -1
  152. package/components/Slider/Slider.js.map +1 -1
  153. package/components/Spinner/Spinner.js.map +1 -1
  154. package/components/SplitButton/SplitButton.cjs +52 -12
  155. package/components/SplitButton/SplitButton.cjs.map +1 -1
  156. package/components/SplitButton/UncontrolledSplitButton.js +2 -0
  157. package/components/SplitButton/UncontrolledSplitButton.js.map +1 -1
  158. package/components/SplitButton/constants.d.ts +1 -0
  159. package/components/SplitButton/constants.js +2 -0
  160. package/components/SplitButton/constants.js.map +1 -0
  161. package/components/Tabs/TabContext.js.map +1 -1
  162. package/components/Tabs/TabLink.js.map +1 -1
  163. package/components/Tag/Tag.js.map +1 -1
  164. package/components/TextArea/TextArea.cjs +7 -1
  165. package/components/TextArea/TextArea.cjs.map +1 -1
  166. package/components/TextArea/TextArea.js.map +1 -1
  167. package/components/TextArea/useAdjustHeight.js.map +1 -1
  168. package/components/TextField/TextField.cjs +7 -1
  169. package/components/TextField/TextField.cjs.map +1 -1
  170. package/components/TextField/TextField.js.map +1 -1
  171. package/components/TextFieldBase/TextFieldBase.cjs +7 -1
  172. package/components/TextFieldBase/TextFieldBase.cjs.map +1 -1
  173. package/components/TextFieldBase/TextFieldBase.d.ts +2 -2
  174. package/components/TextFieldBase/TextFieldBase.js.map +1 -1
  175. package/components/TextFieldBase/TextFieldBaseInput.js.map +1 -1
  176. package/components/TextFieldBase/TextFieldBasePasswordToggle.js +5 -1
  177. package/components/TextFieldBase/TextFieldBasePasswordToggle.js.map +1 -1
  178. package/components/TextFieldBase/constants.d.ts +2 -0
  179. package/components/TextFieldBase/constants.js +3 -0
  180. package/components/TextFieldBase/constants.js.map +1 -0
  181. package/components/Toast/Toast.cjs +1 -1
  182. package/components/Toast/Toast.cjs.map +1 -1
  183. package/components/Toast/ToastBarLink.js.map +1 -1
  184. package/components/Toast/ToastContext.js +2 -2
  185. package/components/Toast/ToastContext.js.map +1 -1
  186. package/components/Toast/UncontrolledToast.js +2 -1
  187. package/components/Toast/UncontrolledToast.js.map +1 -1
  188. package/components/Toast/useToastBarStyleProps.d.ts +10 -10
  189. package/components/Toggle/Toggle.cjs +46 -1
  190. package/components/Toggle/Toggle.cjs.map +1 -1
  191. package/components/Toggle/Toggle.js.map +1 -1
  192. package/components/Toggle/useToggleStyleProps.js +5 -2
  193. package/components/Toggle/useToggleStyleProps.js.map +1 -1
  194. package/components/UNSTABLE_Header/UNSTABLE_HeaderLogo.js.map +1 -1
  195. package/components/components.cjs +441 -285
  196. package/components/components.cjs.map +1 -1
  197. package/components/index.d.ts +1 -0
  198. package/components/index.js +1 -0
  199. package/components/index.js.map +1 -1
  200. package/constants/constants.cjs +6 -0
  201. package/constants/constants.cjs.map +1 -1
  202. package/constants/index.d.ts +1 -0
  203. package/constants/index.js +1 -0
  204. package/constants/index.js.map +1 -1
  205. package/constants/inputs.d.ts +4 -0
  206. package/constants/inputs.js +5 -0
  207. package/constants/inputs.js.map +1 -0
  208. package/hooks/hooks.cjs +48 -7
  209. package/hooks/hooks.cjs.map +1 -1
  210. package/hooks/index.d.ts +2 -1
  211. package/hooks/index.js +2 -1
  212. package/hooks/index.js.map +1 -1
  213. package/hooks/useDeprecationMessage.js +2 -2
  214. package/hooks/useDeprecationMessage.js.map +1 -1
  215. package/hooks/useInputPositionClass.d.ts +2 -0
  216. package/hooks/useInputPositionClass.js +8 -0
  217. package/hooks/useInputPositionClass.js.map +1 -0
  218. package/hooks/useSymmetry.d.ts +7 -0
  219. package/hooks/useSymmetry.js +39 -0
  220. package/hooks/useSymmetry.js.map +1 -0
  221. package/index.cjs +444 -290
  222. package/index.cjs.map +1 -1
  223. package/package.json +11 -18
  224. package/spirit-web-react.cjs +444 -290
  225. package/spirit-web-react.cjs.map +1 -1
  226. package/spirit-web-react.min.cjs +1 -1
  227. package/types/accordion.d.ts +14 -7
  228. package/types/box.d.ts +2 -2
  229. package/types/button.d.ts +2 -2
  230. package/types/checkbox.d.ts +2 -1
  231. package/types/controlButton.d.ts +2 -2
  232. package/types/flex.d.ts +2 -3
  233. package/types/footer.d.ts +7 -2
  234. package/types/grid.d.ts +3 -5
  235. package/types/hidden.d.ts +10 -0
  236. package/types/hidden.js +2 -0
  237. package/types/hidden.js.map +1 -0
  238. package/types/index.d.ts +1 -0
  239. package/types/index.js +1 -0
  240. package/types/index.js.map +1 -1
  241. package/types/item.d.ts +2 -2
  242. package/types/pricingPlan.d.ts +1 -1
  243. package/types/radio.d.ts +2 -1
  244. package/types/shared/inputs.d.ts +3 -0
  245. package/types/slider.d.ts +2 -2
  246. package/types/toggle.d.ts +2 -1
  247. package/hooks/useDirectionClass.d.ts +0 -2
  248. package/hooks/useDirectionClass.js +0 -5
  249. package/hooks/useDirectionClass.js.map +0 -1
@@ -3,5 +3,7 @@ import { type SpiritGridItemProps } from '../../types';
3
3
  declare const GridItem: {
4
4
  <T extends ElementType = "div">(props: SpiritGridItemProps<T>): JSX.Element;
5
5
  spiritComponent: string;
6
+ spiritDefaultElement: "div";
7
+ spiritDefaultProps: SpiritGridItemProps<"div">;
6
8
  };
7
9
  export default GridItem;
@@ -22,5 +22,7 @@ const GridItem = (props) => {
22
22
  return (React.createElement(ElementTag, Object.assign({}, otherProps, mergedStyleProps), children));
23
23
  };
24
24
  GridItem.spiritComponent = 'GridItem';
25
+ GridItem.spiritDefaultElement = 'div';
26
+ GridItem.spiritDefaultProps = null;
25
27
  export default GridItem;
26
28
  //# sourceMappingURL=GridItem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GridItem.js","sourceRoot":"","sources":["../../../src/components/Grid/GridItem.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;;AAEb,OAAO,KAA2B,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,QAAQ,GAAG,CAAgC,KAA6B,EAAe,EAAE;IAC7F,MAAM,EAAE,WAAW,EAAE,UAAU,GAAG,KAAK,EAAE,QAAQ,KAAmB,KAAK,EAAnB,SAAS,UAAK,KAAK,EAAnE,2BAA2D,CAAQ,CAAC;IAC1E,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;IACzG,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC;IACvE,MAAM,gBAAgB,GAAG,eAAe,CAAC,UAAU,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC;IAE5G,OAAO,CACL,oBAAC,UAAU,oBAAK,UAAU,EAAM,gBAAgB,GAC7C,QAAQ,CACE,CACd,CAAC;AACJ,CAAC,CAAC;AAEF,QAAQ,CAAC,eAAe,GAAG,UAAU,CAAC;AAEtC,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"GridItem.js","sourceRoot":"","sources":["../../../src/components/Grid/GridItem.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;;;;;;;;AAEb,OAAO,KAA2B,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,QAAQ,GAAG,CAAgC,KAA6B,EAAe,EAAE;IAC7F,MAAM,EAAE,WAAW,EAAE,UAAU,GAAG,KAAK,EAAE,QAAQ,KAAmB,KAAK,EAAnB,SAAS,UAAK,KAAK,EAAnE,2BAA2D,CAAQ,CAAC;IAC1E,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;IACzG,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC;IACvE,MAAM,gBAAgB,GAAG,eAAe,CAAC,UAAU,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC;IAE5G,OAAO,CACL,oBAAC,UAAU,oBAAK,UAAU,EAAM,gBAAgB,GAC7C,QAAQ,CACE,CACd,CAAC;AACJ,CAAC,CAAC;AAEF,QAAQ,CAAC,eAAe,GAAG,UAAU,CAAC;AACtC,QAAQ,CAAC,oBAAoB,GAAG,KAAc,CAAC;AAC/C,QAAQ,CAAC,kBAAkB,GAAG,IAA6C,CAAC;AAE5E,eAAe,QAAQ,CAAC"}
@@ -3,10 +3,10 @@ import { type SpiritGridItemProps } from '../../types';
3
3
  interface GridItemCSSProperties extends CSSProperties {
4
4
  [key: string]: string | undefined | number;
5
5
  }
6
- export interface GridItemStyles<T> {
6
+ export interface GridItemStyle<T> {
7
7
  classProps: string;
8
8
  props: T;
9
9
  styleProps: GridItemCSSProperties;
10
10
  }
11
- export declare function useGridItemStyleProps(props: SpiritGridItemProps<ElementType>): GridItemStyles<SpiritGridItemProps<ElementType>>;
11
+ export declare function useGridItemStyleProps(props: SpiritGridItemProps<ElementType>): GridItemStyle<SpiritGridItemProps<ElementType>>;
12
12
  export {};
@@ -19,17 +19,18 @@ const setGridItemStyle = (styleObject, baseVarName, propValue) => {
19
19
  export function useGridItemStyleProps(props) {
20
20
  const gridItemClass = useClassNamePrefix('GridItem');
21
21
  const gridItemStyle = {};
22
- const typePropNames = Object.keys(props).filter((propName) => propName.startsWith('column') || propName.startsWith('row'));
22
+ const propsClone = Object.assign({}, props);
23
+ const typePropNames = Object.keys(propsClone).filter((propName) => propName.startsWith('column') || propName.startsWith('row'));
23
24
  typePropNames.forEach((propName) => {
24
25
  const type = propName.startsWith('column') ? 'column' : 'row';
25
- if (props[propName]) {
26
- setGridItemStyle(gridItemStyle, `grid-item-${type}-${propName.replace(type, '').toLowerCase()}`, props[propName]);
26
+ if (propsClone[propName]) {
27
+ setGridItemStyle(gridItemStyle, `grid-item-${type}-${propName.replace(type, '').toLowerCase()}`, propsClone[propName]);
27
28
  }
28
- delete props[propName];
29
+ delete propsClone[propName];
29
30
  });
30
31
  return {
31
32
  classProps: gridItemClass,
32
- props,
33
+ props: propsClone,
33
34
  styleProps: gridItemStyle,
34
35
  };
35
36
  }
@@ -1 +1 @@
1
- {"version":3,"file":"useGridItemStyleProps.js","sourceRoot":"","sources":["../../../src/components/Grid/useGridItemStyleProps.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAOjD,MAAM,gBAAgB,GAAG,CAAC,WAAkC,EAAE,YAAoB,EAAE,KAAyB,EAAE,EAAE;IAC9G,WAAkD,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC;AAC5E,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,WAAkC,EAAE,WAAmB,EAAE,SAA2B,EAAE,EAAE;IAChH,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;QACxD,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;;YACrC,MAAM,MAAM,GAAG,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC;YACjD,MAAM,QAAQ,GAAG,KAAK,WAAW,GAAG,MAAM,EAAE,CAAC;YAC7C,gBAAgB,CAAC,WAAW,EAAE,QAAQ,EAAE,MAAA,SAAS,CAAC,GAAwC,CAAC,0CAAE,QAAQ,EAAE,CAAC,CAAC;QAC3G,CAAC,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,MAAM,QAAQ,GAAG,KAAK,WAAW,EAAE,CAAC;QACpC,gBAAgB,CAAC,WAAW,EAAE,QAAQ,EAAE,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,EAAE,CAAC,CAAC;IACjE,CAAC;AACH,CAAC,CAAC;AAWF,MAAM,UAAU,qBAAqB,CACnC,KAAuC;IAEvC,MAAM,aAAa,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAErD,MAAM,aAAa,GAA0B,EAAE,CAAC;IAEhD,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAC7C,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAC1E,CAAC;IAEF,aAAa,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;QACjC,MAAM,IAAI,GAAG,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC;QAC9D,IAAI,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpB,gBAAgB,CACd,aAAa,EACb,aAAa,IAAI,IAAI,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,EAC/D,KAAK,CAAC,QAAQ,CAAqB,CACpC,CAAC;QACJ,CAAC;QAED,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,UAAU,EAAE,aAAa;QACzB,KAAK;QACL,UAAU,EAAE,aAAa;KAC1B,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"useGridItemStyleProps.js","sourceRoot":"","sources":["../../../src/components/Grid/useGridItemStyleProps.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAOjD,MAAM,gBAAgB,GAAG,CAAC,WAAkC,EAAE,YAAoB,EAAE,KAAyB,EAAE,EAAE;IAE9G,WAAkD,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC;AAC5E,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,WAAkC,EAAE,WAAmB,EAAE,SAA2B,EAAE,EAAE;IAChH,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;QACxD,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;;YACrC,MAAM,MAAM,GAAG,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC;YACjD,MAAM,QAAQ,GAAG,KAAK,WAAW,GAAG,MAAM,EAAE,CAAC;YAC7C,gBAAgB,CAAC,WAAW,EAAE,QAAQ,EAAE,MAAA,SAAS,CAAC,GAAwC,CAAC,0CAAE,QAAQ,EAAE,CAAC,CAAC;QAC3G,CAAC,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,MAAM,QAAQ,GAAG,KAAK,WAAW,EAAE,CAAC;QACpC,gBAAgB,CAAC,WAAW,EAAE,QAAQ,EAAE,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,EAAE,CAAC,CAAC;IACjE,CAAC;AACH,CAAC,CAAC;AAWF,MAAM,UAAU,qBAAqB,CACnC,KAAuC;IAEvC,MAAM,aAAa,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAErD,MAAM,aAAa,GAA0B,EAAE,CAAC;IAGhD,MAAM,UAAU,qBAAQ,KAAK,CAAE,CAAC;IAEhC,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAClD,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAC1E,CAAC;IAEF,aAAa,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;QACjC,MAAM,IAAI,GAAG,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC;QAC9D,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACzB,gBAAgB,CACd,aAAa,EACb,aAAa,IAAI,IAAI,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,EAC/D,UAAU,CAAC,QAAQ,CAAqB,CACzC,CAAC;QACJ,CAAC;QAED,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,UAAU,EAAE,aAAa;QACzB,KAAK,EAAE,UAAU;QACjB,UAAU,EAAE,aAAa;KAC1B,CAAC;AACJ,CAAC"}
@@ -3,10 +3,10 @@ import { type SpiritGridProps } from '../../types';
3
3
  interface GridCSSProperties extends CSSProperties {
4
4
  [key: string]: string | undefined | number;
5
5
  }
6
- export interface GridStyles<T> {
6
+ export interface GridStyle<T> {
7
7
  classProps: string;
8
8
  props: T;
9
9
  styleProps: GridCSSProperties;
10
10
  }
11
- export declare function useGridStyleProps(props: SpiritGridProps<ElementType>): GridStyles<SpiritGridProps<ElementType>>;
11
+ export declare function useGridStyleProps(props: SpiritGridProps<ElementType>): GridStyle<SpiritGridProps<ElementType>>;
12
12
  export {};
@@ -412,11 +412,11 @@ const useClickOutside = ({ ref, callback }) => {
412
412
  };
413
413
 
414
414
  const useDeprecationMessage = ({ method = 'component', trigger, componentName, componentProps, propertyProps, customText, }) => {
415
- let message;
416
- let hasProps;
417
415
  const messageBase = `Deprecation warning (${componentName}):`;
418
416
  React.useEffect(() => {
419
417
  const isExecutable = trigger && componentName && process.env.NODE_ENV === 'development';
418
+ let message;
419
+ let hasProps;
420
420
  switch (method) {
421
421
  case 'property':
422
422
  if (propertyProps === null || propertyProps === void 0 ? void 0 : propertyProps.delete) {
@@ -503,6 +503,43 @@ const useScrollControl = (ref, isOpen) => {
503
503
  }, [isOpen, ref]);
504
504
  };
505
505
 
506
+ const SYMMETRICAL_CLASS_SUFFIX = '--symmetrical';
507
+ const NON_SYMMETRICAL_CLASS_SUFFIX = '--asymmetrical';
508
+ function getSymmetryClassNamesReducer(componentClass, isSymmetrical) {
509
+ return (acc, breakpoint) => {
510
+ if (breakpoint in isSymmetrical) {
511
+ const value = isSymmetrical[breakpoint];
512
+ const infix = breakpoint === BREAKPOINT_MOBILE ? '' : `--${breakpoint}`;
513
+ if (value) {
514
+ return {
515
+ classes: [...acc.classes, `${componentClass}${infix}${SYMMETRICAL_CLASS_SUFFIX}`],
516
+ wasSymmetrical: true,
517
+ };
518
+ }
519
+ if (acc.wasSymmetrical) {
520
+ return {
521
+ classes: [...acc.classes, `${componentClass}${infix}${NON_SYMMETRICAL_CLASS_SUFFIX}`],
522
+ wasSymmetrical: acc.wasSymmetrical,
523
+ };
524
+ }
525
+ }
526
+ return acc;
527
+ };
528
+ }
529
+ function useSymmetry(componentClass, isSymmetrical) {
530
+ if (typeof isSymmetrical !== 'object' || isSymmetrical === null) {
531
+ return {
532
+ isSymmetricalActive: isSymmetrical === true,
533
+ symmetricalClassName: isSymmetrical ? `${componentClass}${SYMMETRICAL_CLASS_SUFFIX}` : '',
534
+ };
535
+ }
536
+ const { classes } = Object.keys(spiritDesignTokens.breakpoints).reduce(getSymmetryClassNamesReducer(componentClass, isSymmetrical), { classes: [], wasSymmetrical: false });
537
+ return {
538
+ isSymmetricalActive: Object.values(isSymmetrical).includes(true),
539
+ symmetricalClassName: classes.join(' '),
540
+ };
541
+ }
542
+
506
543
  const HEADER_COLOR_DEFAULT = 'primary';
507
544
  const HEADER_ACTIONS_COLOR_DEFAULT = 'primary';
508
545
  const HEADER_DIALOG_CLOSE_BUTTON_LABEL_DEFAULT = 'Close';
@@ -1018,16 +1055,16 @@ function useButtonStyleProps(props) {
1018
1055
  const buttonBlockClass = `${buttonClass}--block`;
1019
1056
  const buttonDisabledClass = `${buttonClass}--disabled`;
1020
1057
  const buttonLoadingClass = `${buttonClass}--loading`;
1021
- const buttonSymmetricalClass = `${buttonClass}--symmetrical`;
1022
- if (isBlock && isSymmetrical) {
1058
+ const { isSymmetricalActive, symmetricalClassName } = useSymmetry(buttonClass, isSymmetrical);
1059
+ if (isBlock && isSymmetricalActive) {
1023
1060
  warning(false, 'isBlock and isSymmetrical props are mutually exclusive');
1024
1061
  }
1062
+ const shouldApplyBlock = () => isBlock && !isSymmetricalActive;
1025
1063
  const classProps = classNames(buttonClass, getButtonColorClassname(buttonClass, color), getButtonSizeClassname(buttonClass, size), {
1026
- [buttonBlockClass]: isBlock && !isSymmetrical,
1064
+ [buttonBlockClass]: shouldApplyBlock(),
1027
1065
  [buttonDisabledClass]: isDisabled || isLoading,
1028
1066
  [buttonLoadingClass]: isLoading,
1029
- [buttonSymmetricalClass]: isSymmetrical && !isBlock,
1030
- });
1067
+ }, symmetricalClassName);
1031
1068
  return {
1032
1069
  classProps,
1033
1070
  props: restProps,
@@ -1148,16 +1185,16 @@ function useButtonLinkStyleProps(props) {
1148
1185
  const buttonBlockClass = `${buttonClass}--block`;
1149
1186
  const buttonDisabledClass = `${buttonClass}--disabled`;
1150
1187
  const buttonLoadingClass = `${buttonClass}--loading`;
1151
- const buttonSymmetricalClass = `${buttonClass}--symmetrical`;
1152
- if (isBlock && isSymmetrical) {
1188
+ const { isSymmetricalActive, symmetricalClassName } = useSymmetry(buttonClass, isSymmetrical);
1189
+ if (isBlock && isSymmetricalActive) {
1153
1190
  warning(false, 'isBlock and isSymmetrical props are mutually exclusive');
1154
1191
  }
1192
+ const shouldApplyBlock = () => isBlock && !isSymmetricalActive;
1155
1193
  const classProps = classNames(buttonClass, getButtonLinkColorClassname(buttonClass, color), getButtonLinkSizeClassname(buttonClass, size), {
1156
- [buttonBlockClass]: isBlock && !isSymmetrical,
1194
+ [buttonBlockClass]: shouldApplyBlock(),
1157
1195
  [buttonDisabledClass]: isDisabled || isLoading,
1158
1196
  [buttonLoadingClass]: isLoading,
1159
- [buttonSymmetricalClass]: isSymmetrical && !isBlock,
1160
- });
1197
+ }, symmetricalClassName);
1161
1198
  return {
1162
1199
  classProps,
1163
1200
  props: restProps,