@helsenorge/designsystem-react 4.3.0 → 4.4.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 (125) hide show
  1. package/CHANGELOG.md +28 -3
  2. package/Close.js +1 -1
  3. package/Close.js.map +1 -1
  4. package/ListHeader.js +1 -1
  5. package/ListHeader.js.map +1 -1
  6. package/Panel.js +1 -1
  7. package/Panel.js.map +1 -1
  8. package/Table.js +1 -1
  9. package/Table.js.map +1 -1
  10. package/TableBody.js +1 -1
  11. package/TableBody.js.map +1 -1
  12. package/TableExpandedRow.js +1 -1
  13. package/TableExpandedRow.js.map +1 -1
  14. package/TableHead.js +1 -1
  15. package/TableHead.js.map +1 -1
  16. package/TableRow.js +1 -1
  17. package/TableRow.js.map +1 -1
  18. package/Textarea.js +1 -1
  19. package/Textarea.js.map +1 -1
  20. package/Trigger.js +2 -0
  21. package/Trigger.js.map +1 -0
  22. package/components/AnchorLink/index.js +1 -1
  23. package/components/Button/index.js +1 -1
  24. package/components/ButtonWithModal/index.js +1 -1
  25. package/components/ButtonWithModal/index.js.map +1 -1
  26. package/components/Checkbox/styles.module.scss +13 -0
  27. package/components/Close/Close.d.ts +0 -2
  28. package/components/Close/Close.d.ts.map +1 -1
  29. package/components/Close/componentdata.json +1 -1
  30. package/components/Close/index.js +1 -1
  31. package/components/Dropdown/index.js +1 -1
  32. package/components/Dropdown/index.js.map +1 -1
  33. package/components/Dropdown/styles.module.scss +1 -0
  34. package/components/Expander/index.js +1 -1
  35. package/components/Expander/index.js.map +1 -1
  36. package/components/ExpanderHierarchy/ExpanderButton.d.ts.map +1 -1
  37. package/components/ExpanderHierarchy/expander.module.scss +14 -7
  38. package/components/ExpanderHierarchy/expander.module.scss.d.ts +2 -0
  39. package/components/ExpanderHierarchy/index.js +1 -1
  40. package/components/ExpanderHierarchy/index.js.map +1 -1
  41. package/components/ExpanderList/index.js +1 -1
  42. package/components/ExpanderList/index.js.map +1 -1
  43. package/components/FormExample/index.js +1 -1
  44. package/components/HelpBubble/index.js +1 -1
  45. package/components/HelpBubbleExample/index.js +1 -1
  46. package/components/HelpBubbleExample/index.js.map +1 -1
  47. package/components/HelpQuestion/HelpQuestion.d.ts +22 -0
  48. package/components/HelpQuestion/HelpQuestion.d.ts.map +1 -0
  49. package/components/HelpQuestion/componentdata.json +1 -0
  50. package/components/HelpQuestion/index.d.ts +4 -0
  51. package/components/HelpQuestion/index.d.ts.map +1 -0
  52. package/components/HelpQuestion/index.js +2 -0
  53. package/components/HelpQuestion/index.js.map +1 -0
  54. package/components/HelpQuestion/styles.module.scss +49 -0
  55. package/components/HelpQuestion/styles.module.scss.d.ts +10 -0
  56. package/components/Label/componentdata.json +1 -1
  57. package/components/LinkList/index.js +1 -1
  58. package/components/Logo/Logo.d.ts +2 -2
  59. package/components/Logo/Logo.d.ts.map +1 -1
  60. package/components/Logo/componentdata.json +1 -1
  61. package/components/Logo/index.js +1 -1
  62. package/components/Logo/index.js.map +1 -1
  63. package/components/Modal/index.js +1 -1
  64. package/components/Modal/styles.module.scss +1 -0
  65. package/components/NotificationPanel/index.js +1 -1
  66. package/components/NotificationPanel/index.js.map +1 -1
  67. package/components/Panel/Panel.d.ts +2 -2
  68. package/components/Panel/Panel.d.ts.map +1 -1
  69. package/components/Panel/componentdata.json +1 -1
  70. package/components/Panel/index.js +1 -1
  71. package/components/Panel/styles.module.scss +1 -0
  72. package/components/PanelList/index.js +1 -1
  73. package/components/PanelList/index.js.map +1 -1
  74. package/components/PopMenu/PopMenu.d.ts.map +1 -1
  75. package/components/PopMenu/index.js +1 -1
  76. package/components/PopMenu/index.js.map +1 -1
  77. package/components/RadioButton/styles.module.scss +13 -0
  78. package/components/ServiceMessage/ServiceMessage.d.ts +6 -3
  79. package/components/ServiceMessage/ServiceMessage.d.ts.map +1 -1
  80. package/components/ServiceMessage/componentdata.json +1 -1
  81. package/components/ServiceMessage/index.js +1 -1
  82. package/components/ServiceMessage/index.js.map +1 -1
  83. package/components/ServiceMessage/styles.module.scss +139 -238
  84. package/components/ServiceMessage/styles.module.scss.d.ts +17 -34
  85. package/components/Step/Step.d.ts +2 -0
  86. package/components/Step/Step.d.ts.map +1 -1
  87. package/components/Step/componentdata.json +1 -1
  88. package/components/Step/index.js +1 -1
  89. package/components/Step/index.js.map +1 -1
  90. package/components/Step/styles.module.scss +23 -1
  91. package/components/Step/styles.module.scss.d.ts +5 -1
  92. package/components/Table/TableExpandedRow/TableExpandedRow.d.ts +3 -1
  93. package/components/Table/TableExpandedRow/TableExpandedRow.d.ts.map +1 -1
  94. package/components/Table/TableExpandedRow/componentdata.json +1 -1
  95. package/components/Table/TableExpandedRow/index.js +1 -1
  96. package/components/Table/TableExpanderCell/index.js +1 -1
  97. package/components/Table/TableRow/index.js +1 -1
  98. package/components/Table/index.js +1 -1
  99. package/components/Tag/index.js +1 -1
  100. package/components/Tag/index.js.map +1 -1
  101. package/components/Tile/index.js +1 -1
  102. package/components/Tile/index.js.map +1 -1
  103. package/components/Tooltip/index.js +1 -1
  104. package/components/TooltipExample/index.js +1 -1
  105. package/components/TooltipExample/index.js.map +1 -1
  106. package/components/Trigger/Trigger.d.ts +9 -0
  107. package/components/Trigger/Trigger.d.ts.map +1 -1
  108. package/components/Trigger/componentdata.json +1 -1
  109. package/components/Trigger/index.js +1 -1
  110. package/components/Trigger/index.js.map +1 -1
  111. package/components/Trigger/styles.module.scss +23 -20
  112. package/components/Trigger/styles.module.scss.d.ts +2 -0
  113. package/constants.d.ts +4 -3
  114. package/constants.d.ts.map +1 -1
  115. package/constants.js +1 -1
  116. package/constants.js.map +1 -1
  117. package/hooks/useHover.d.ts.map +1 -1
  118. package/hooks/useHover.js +1 -1
  119. package/hooks/useHover.js.map +1 -1
  120. package/hooks/useSticky.d.ts +5 -4
  121. package/hooks/useSticky.d.ts.map +1 -1
  122. package/hooks/useSticky.js +1 -1
  123. package/hooks/useSticky.js.map +1 -1
  124. package/index.js +1 -1
  125. package/package.json +4 -1
@@ -15,7 +15,9 @@ export interface Props {
15
15
  children: React.ReactNode;
16
16
  /** For display with less space. Discouraged to use together with interactive elements. */
17
17
  mode?: ModeType;
18
+ /** Row id. For use with aria-controls. */
19
+ id?: string;
18
20
  }
19
- export declare const TableExpandedRow: ({ numberOfColumns, expanded, hideDetailsText, toggleClick, children, className, mode, }: Props) => React.JSX.Element;
21
+ export declare const TableExpandedRow: ({ numberOfColumns, expanded, hideDetailsText, toggleClick, children, className, mode, id, }: Props) => React.JSX.Element;
20
22
  export default TableExpandedRow;
21
23
  //# sourceMappingURL=TableExpandedRow.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableExpandedRow.d.ts","sourceRoot":"","sources":["../../../../src/components/Table/TableExpandedRow/TableExpandedRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,MAAM,WAAW,KAAK;IACpB,uBAAuB;IACvB,QAAQ,EAAE,OAAO,CAAC;IAClB,kCAAkC;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,4BAA4B;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,uDAAuD;IACvD,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6CAA6C;IAC7C,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,0FAA0F;IAC1F,IAAI,CAAC,EAAE,QAAQ,CAAC;CACjB;AAED,eAAO,MAAM,gBAAgB,4FAQ1B,KAAK,KAAG,SAAS,QA2BnB,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"TableExpandedRow.d.ts","sourceRoot":"","sources":["../../../../src/components/Table/TableExpandedRow/TableExpandedRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,MAAM,WAAW,KAAK;IACpB,uBAAuB;IACvB,QAAQ,EAAE,OAAO,CAAC;IAClB,kCAAkC;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,4BAA4B;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,uDAAuD;IACvD,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6CAA6C;IAC7C,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,0FAA0F;IAC1F,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,0CAA0C;IAC1C,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED,eAAO,MAAM,gBAAgB,gGAS1B,KAAK,KAAG,SAAS,QA2BnB,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
@@ -1 +1 @@
1
- {"props":{"expanded":{"defaultValue":null,"description":"Row is expanded.","name":"expanded","parent":{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"},"declarations":[{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"}],"required":true,"type":{"name":"boolean"}},"numberOfColumns":{"defaultValue":null,"description":"Number of columns in table.","name":"numberOfColumns","parent":{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"},"declarations":[{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"}],"required":true,"type":{"name":"number"}},"hideDetailsText":{"defaultValue":null,"description":"Text for hide button.","name":"hideDetailsText","parent":{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"},"declarations":[{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"}],"required":true,"type":{"name":"string"}},"toggleClick":{"defaultValue":null,"description":"When hide button inside expanded row is clicked.","name":"toggleClick","parent":{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"},"declarations":[{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"}],"required":true,"type":{"name":"() => void"}},"className":{"defaultValue":null,"description":"Adds custom classes to the element.","name":"className","parent":{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"},"declarations":[{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"}],"required":false,"type":{"name":"string"}},"children":{"defaultValue":null,"description":"Sets the content of the expanded row.","name":"children","parent":{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"},"declarations":[{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"}],"required":true,"type":{"name":"ReactNode"}},"mode":{"defaultValue":{"value":"ModeType.normal"},"description":"For display with less space. Discouraged to use together with interactive elements.","name":"mode","parent":{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"},"declarations":[{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"}],"required":false,"type":{"name":"enum","raw":"ModeType","value":[{"value":"\"compact\"","description":"","fullComment":"","tags":{}},{"value":"\"normal\"","description":"","fullComment":"","tags":{}}]}}}}
1
+ {"props":{"expanded":{"defaultValue":null,"description":"Row is expanded.","name":"expanded","parent":{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"},"declarations":[{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"}],"required":true,"type":{"name":"boolean"}},"numberOfColumns":{"defaultValue":null,"description":"Number of columns in table.","name":"numberOfColumns","parent":{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"},"declarations":[{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"}],"required":true,"type":{"name":"number"}},"hideDetailsText":{"defaultValue":null,"description":"Text for hide button.","name":"hideDetailsText","parent":{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"},"declarations":[{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"}],"required":true,"type":{"name":"string"}},"toggleClick":{"defaultValue":null,"description":"When hide button inside expanded row is clicked.","name":"toggleClick","parent":{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"},"declarations":[{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"}],"required":true,"type":{"name":"() => void"}},"className":{"defaultValue":null,"description":"Adds custom classes to the element.","name":"className","parent":{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"},"declarations":[{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"}],"required":false,"type":{"name":"string"}},"children":{"defaultValue":null,"description":"Sets the content of the expanded row.","name":"children","parent":{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"},"declarations":[{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"}],"required":true,"type":{"name":"ReactNode"}},"mode":{"defaultValue":{"value":"ModeType.normal"},"description":"For display with less space. Discouraged to use together with interactive elements.","name":"mode","parent":{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"},"declarations":[{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"}],"required":false,"type":{"name":"enum","raw":"ModeType","value":[{"value":"\"compact\"","description":"","fullComment":"","tags":{}},{"value":"\"normal\"","description":"","fullComment":"","tags":{}}]}},"id":{"defaultValue":null,"description":"Row id. For use with aria-controls.","name":"id","parent":{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"},"declarations":[{"fileName":"src/components/Table/TableExpandedRow/TableExpandedRow.tsx","name":"Props"}],"required":false,"type":{"name":"string"}}}}
@@ -1,2 +1,2 @@
1
- import{a as p}from"../../../TableExpandedRow.js";import{T as F}from"../../../TableExpandedRow.js";import"react";import"classnames";import"../../../Button.js";import"../../Icons/Icon.js";import"../../../constants.js";import"../../../hooks/useUuid.js";import"../../../uuid.js";import"../../../utils/environment.js";import"../../../hooks/useBreakpoint.js";import"../../../theme/grid.js";import"../../../hooks/useHover.js";import"../../../hooks/useIcons.js";import"../../../hooks/useSize.js";import"../../../utils/debounce.js";import"../../../theme/currys/color.js";import"../../../theme/index.js";import"../../../theme/palette.js";import"../../../theme/spacers.js";import"../../Icons/ArrowRight.js";import"../../Button/styles.module.scss";import"../../Icons/ChevronUp.js";import"../styles.module.scss";import"../../../Table.js";import"../../../hooks/useLayoutEvent.js";import"../../../HorizontalScroll.js";import"../../../hooks/useIsVisible.js";import"../../../hooks/useIntersectionObserver.js";import"../../HorizontalScroll/styles.module.scss";import"../../../utils/device.js";export{F as TableExpandedRow,p as default};
1
+ import{a as p}from"../../../TableExpandedRow.js";import{T as G}from"../../../TableExpandedRow.js";import"react";import"classnames";import"../../../Button.js";import"../../Icons/Icon.js";import"../../../constants.js";import"../../../hooks/useUuid.js";import"../../../uuid.js";import"../../../utils/environment.js";import"../../../hooks/useBreakpoint.js";import"../../../theme/grid.js";import"../../../hooks/useHover.js";import"../../../hooks/usePseudoClasses.js";import"../../../hooks/useIcons.js";import"../../../hooks/useSize.js";import"../../../utils/debounce.js";import"../../../theme/currys/color.js";import"../../../theme/index.js";import"../../../theme/palette.js";import"../../../theme/spacers.js";import"../../Icons/ArrowRight.js";import"../../Button/styles.module.scss";import"../../Icons/ChevronUp.js";import"../styles.module.scss";import"../../../Table.js";import"../../../hooks/useLayoutEvent.js";import"../../../HorizontalScroll.js";import"../../../hooks/useIsVisible.js";import"../../../hooks/useIntersectionObserver.js";import"../../HorizontalScroll/styles.module.scss";import"../../../utils/device.js";export{G as TableExpandedRow,p as default};
2
2
  //# sourceMappingURL=index.js.map
@@ -1,2 +1,2 @@
1
- import{a as o}from"../../../TableExpanderCell.js";import{T as H}from"../../../TableExpanderCell.js";import"react";import"classnames";import"../../../Button.js";import"../../Icons/Icon.js";import"../../../constants.js";import"../../../hooks/useUuid.js";import"../../../uuid.js";import"../../../utils/environment.js";import"../../../hooks/useBreakpoint.js";import"../../../theme/grid.js";import"../../../hooks/useHover.js";import"../../../hooks/useIcons.js";import"../../../hooks/useSize.js";import"../../../utils/debounce.js";import"../../../theme/currys/color.js";import"../../../theme/index.js";import"../../../theme/palette.js";import"../../../theme/spacers.js";import"../../Icons/ArrowRight.js";import"../../Button/styles.module.scss";import"../../Icons/ChevronDown.js";import"../../Icons/ChevronUp.js";import"../styles.module.scss";import"../../../Table.js";import"../../../hooks/useLayoutEvent.js";import"../../../HorizontalScroll.js";import"../../../hooks/useIsVisible.js";import"../../../hooks/useIntersectionObserver.js";import"../../HorizontalScroll/styles.module.scss";import"../../../utils/device.js";export{H as TableExpanderCell,o as default};
1
+ import{a as o}from"../../../TableExpanderCell.js";import{T as I}from"../../../TableExpanderCell.js";import"react";import"classnames";import"../../../Button.js";import"../../Icons/Icon.js";import"../../../constants.js";import"../../../hooks/useUuid.js";import"../../../uuid.js";import"../../../utils/environment.js";import"../../../hooks/useBreakpoint.js";import"../../../theme/grid.js";import"../../../hooks/useHover.js";import"../../../hooks/usePseudoClasses.js";import"../../../hooks/useIcons.js";import"../../../hooks/useSize.js";import"../../../utils/debounce.js";import"../../../theme/currys/color.js";import"../../../theme/index.js";import"../../../theme/palette.js";import"../../../theme/spacers.js";import"../../Icons/ArrowRight.js";import"../../Button/styles.module.scss";import"../../Icons/ChevronDown.js";import"../../Icons/ChevronUp.js";import"../styles.module.scss";import"../../../Table.js";import"../../../hooks/useLayoutEvent.js";import"../../../HorizontalScroll.js";import"../../../hooks/useIsVisible.js";import"../../../hooks/useIntersectionObserver.js";import"../../HorizontalScroll/styles.module.scss";import"../../../utils/device.js";export{I as TableExpanderCell,o as default};
2
2
  //# sourceMappingURL=index.js.map
@@ -1,2 +1,2 @@
1
- import{a as r}from"../../../TableRow.js";import{T as G}from"../../../TableRow.js";import"react";import"classnames";import"../styles.module.scss";import"../../../Table.js";import"../../../constants.js";import"../../../hooks/useBreakpoint.js";import"../../../theme/grid.js";import"../../../hooks/useLayoutEvent.js";import"../../../utils/debounce.js";import"../../../HorizontalScroll.js";import"../../../hooks/useIsVisible.js";import"../../../hooks/useIntersectionObserver.js";import"../../../hooks/useSize.js";import"../../HorizontalScroll/styles.module.scss";import"../../../utils/device.js";import"../../../Button.js";import"../../Icons/Icon.js";import"../../../hooks/useUuid.js";import"../../../uuid.js";import"../../../utils/environment.js";import"../../../hooks/useHover.js";import"../../../hooks/useIcons.js";import"../../../theme/currys/color.js";import"../../../theme/index.js";import"../../../theme/palette.js";import"../../../theme/spacers.js";import"../../Icons/ArrowRight.js";import"../../Button/styles.module.scss";import"../../Icons/ChevronDown.js";import"../../Icons/ChevronUp.js";export{G as TableRow,r as default};
1
+ import{a as r}from"../../../TableRow.js";import{T as H}from"../../../TableRow.js";import"react";import"classnames";import"../styles.module.scss";import"../../../Table.js";import"../../../constants.js";import"../../../hooks/useBreakpoint.js";import"../../../theme/grid.js";import"../../../hooks/useLayoutEvent.js";import"../../../utils/debounce.js";import"../../../HorizontalScroll.js";import"../../../hooks/useIsVisible.js";import"../../../hooks/useIntersectionObserver.js";import"../../../hooks/useSize.js";import"../../HorizontalScroll/styles.module.scss";import"../../../utils/device.js";import"../../../Button.js";import"../../Icons/Icon.js";import"../../../hooks/useUuid.js";import"../../../uuid.js";import"../../../utils/environment.js";import"../../../hooks/useHover.js";import"../../../hooks/usePseudoClasses.js";import"../../../hooks/useIcons.js";import"../../../theme/currys/color.js";import"../../../theme/index.js";import"../../../theme/palette.js";import"../../../theme/spacers.js";import"../../Icons/ArrowRight.js";import"../../Button/styles.module.scss";import"../../Icons/ChevronDown.js";import"../../Icons/ChevronUp.js";export{H as TableRow,r as default};
2
2
  //# sourceMappingURL=index.js.map
@@ -1,2 +1,2 @@
1
- import{T as r}from"../../Table.js";import{M as q,R as z,d as F,s as G}from"../../Table.js";import{T as J}from"../../TableBody.js";import{T as L,a as N}from"../../TableCell.js";import{T as P}from"../../TableExpandedRow.js";import{T as U}from"../../TableExpanderCell.js";import{H as X,T as Y}from"../../TableHead.js";import{S as _,T as $}from"../../TableHeadCell.js";import{T as ro}from"../../TableRow.js";import"react";import"classnames";import"../../constants.js";import"../../hooks/useBreakpoint.js";import"../../theme/grid.js";import"../../hooks/useLayoutEvent.js";import"../../utils/debounce.js";import"../../HorizontalScroll.js";import"../../hooks/useIsVisible.js";import"../../hooks/useIntersectionObserver.js";import"../../hooks/useSize.js";import"../HorizontalScroll/styles.module.scss";import"./styles.module.scss";import"../../utils/device.js";import"../../Button.js";import"../Icons/Icon.js";import"../../hooks/useUuid.js";import"../../uuid.js";import"../../utils/environment.js";import"../../hooks/useHover.js";import"../../hooks/useIcons.js";import"../../theme/currys/color.js";import"../../theme/index.js";import"../../theme/palette.js";import"../../theme/spacers.js";import"../Icons/ArrowRight.js";import"../Button/styles.module.scss";import"../Icons/ChevronUp.js";import"../Icons/ChevronDown.js";import"../Icons/ArrowDown.js";import"../Icons/ArrowUp.js";export{X as HeaderCategory,q as ModeType,z as ResponsiveTableVariant,_ as SortDirection,r as Table,J as TableBody,L as TableCell,P as TableExpandedRow,U as TableExpanderCell,Y as TableHead,$ as TableHeadCell,ro as TableRow,N as TextAlign,r as default,F as defaultConfig,G as simpleConfig};
1
+ import{T as r}from"../../Table.js";import{M as z,R as F,d as G,s as I}from"../../Table.js";import{T as K}from"../../TableBody.js";import{T as N,a as O}from"../../TableCell.js";import{T as Q}from"../../TableExpandedRow.js";import{T as W}from"../../TableExpanderCell.js";import{H as Y,T as Z}from"../../TableHead.js";import{S as $,T as oo}from"../../TableHeadCell.js";import{T as to}from"../../TableRow.js";import"react";import"classnames";import"../../constants.js";import"../../hooks/useBreakpoint.js";import"../../theme/grid.js";import"../../hooks/useLayoutEvent.js";import"../../utils/debounce.js";import"../../HorizontalScroll.js";import"../../hooks/useIsVisible.js";import"../../hooks/useIntersectionObserver.js";import"../../hooks/useSize.js";import"../HorizontalScroll/styles.module.scss";import"./styles.module.scss";import"../../utils/device.js";import"../../Button.js";import"../Icons/Icon.js";import"../../hooks/useUuid.js";import"../../uuid.js";import"../../utils/environment.js";import"../../hooks/useHover.js";import"../../hooks/usePseudoClasses.js";import"../../hooks/useIcons.js";import"../../theme/currys/color.js";import"../../theme/index.js";import"../../theme/palette.js";import"../../theme/spacers.js";import"../Icons/ArrowRight.js";import"../Button/styles.module.scss";import"../Icons/ChevronUp.js";import"../Icons/ChevronDown.js";import"../Icons/ArrowDown.js";import"../Icons/ArrowUp.js";export{Y as HeaderCategory,z as ModeType,F as ResponsiveTableVariant,$ as SortDirection,r as Table,K as TableBody,N as TableCell,Q as TableExpandedRow,W as TableExpanderCell,Z as TableHead,oo as TableHeadCell,to as TableRow,O as TextAlign,r as default,G as defaultConfig,I as simpleConfig};
2
2
  //# sourceMappingURL=index.js.map
@@ -1,2 +1,2 @@
1
- import n from"react";import u from"classnames";import{AnalyticsId as g,IconSize as p}from"../../constants.js";import{useHover as I}from"../../hooks/useHover.js";import{palette as v}from"../../theme/palette.js";import{Icon as f}from"../Icons/Icon.js";import y from"../Icons/Undo.js";import b from"../Icons/X.js";import e from"./styles.module.scss";import"../../hooks/useUuid.js";import"../../uuid.js";import"../../utils/environment.js";var E=(t=>(t.medium="medium",t.large="large",t))(E||{}),X=(t=>(t.remove="remove",t.undo="undo",t))(X||{}),z=(t=>(t.normal="normal",t.oncolor="oncolor",t.emphasised="emphasised",t))(z||{});const C=t=>{const{children:s,size:m,color:r,variant:a,action:o,onClick:c,testId:i}=t,{hoverRef:l,isHovered:d}=I(),$=u(e.tag,e[`tag--${m}`],e[`tag--${o}`],e["tag--has-action"],o==="remove"&&[e[`tag--${r}`],e[`tag--${a}`]]),h=()=>{switch(o){case"remove":return b;case"undo":return y}};return n.createElement("button",{className:$,onClick:c,ref:l,type:"button","data-testid":i,"data-analyticsid":g.Tag},s,n.createElement(f,{svgIcon:h(),size:p.XXSmall,color:v[`${o==="undo"?"blueberry":r}800`],isHovered:d}))},N=t=>{const{children:s,size:m="medium",color:r="blueberry",svgIcon:a,variant:o="normal",action:c,onClick:i,testId:l}=t,d=u(e.tag,e[`tag--${m}`],e[`tag--${r}`],e[`tag--${o}`],{[e["tag--has-icon"]]:a});return c&&i?n.createElement(C,{size:m,color:r,variant:o,action:c,onClick:i,testId:l},s):n.createElement("span",{className:d,"data-testid":l,"data-analyticsid":g.Tag},a&&n.createElement(f,{svgIcon:a,size:p.XXSmall,color:v[`${r}800`],className:e.tag__icon}),s)},B=N;export{X as TagAction,E as TagSize,z as TagVariant,B as default};
1
+ import n from"react";import u from"classnames";import{AnalyticsId as g,IconSize as p}from"../../constants.js";import{useHover as I}from"../../hooks/useHover.js";import{palette as v}from"../../theme/palette.js";import{Icon as f}from"../Icons/Icon.js";import y from"../Icons/Undo.js";import b from"../Icons/X.js";import e from"./styles.module.scss";import"../../hooks/usePseudoClasses.js";import"../../hooks/useUuid.js";import"../../uuid.js";import"../../utils/environment.js";var E=(t=>(t.medium="medium",t.large="large",t))(E||{}),X=(t=>(t.remove="remove",t.undo="undo",t))(X||{}),z=(t=>(t.normal="normal",t.oncolor="oncolor",t.emphasised="emphasised",t))(z||{});const C=t=>{const{children:s,size:m,color:r,variant:a,action:o,onClick:c,testId:i}=t,{hoverRef:l,isHovered:d}=I(),$=u(e.tag,e[`tag--${m}`],e[`tag--${o}`],e["tag--has-action"],o==="remove"&&[e[`tag--${r}`],e[`tag--${a}`]]),h=()=>{switch(o){case"remove":return b;case"undo":return y}};return n.createElement("button",{className:$,onClick:c,ref:l,type:"button","data-testid":i,"data-analyticsid":g.Tag},s,n.createElement(f,{svgIcon:h(),size:p.XXSmall,color:v[`${o==="undo"?"blueberry":r}800`],isHovered:d}))},N=t=>{const{children:s,size:m="medium",color:r="blueberry",svgIcon:a,variant:o="normal",action:c,onClick:i,testId:l}=t,d=u(e.tag,e[`tag--${m}`],e[`tag--${r}`],e[`tag--${o}`],{[e["tag--has-icon"]]:a});return c&&i?n.createElement(C,{size:m,color:r,variant:o,action:c,onClick:i,testId:l},s):n.createElement("span",{className:d,"data-testid":l,"data-analyticsid":g.Tag},a&&n.createElement(f,{svgIcon:a,size:p.XXSmall,color:v[`${r}800`],className:e.tag__icon}),s)},D=N;export{X as TagAction,E as TagSize,z as TagVariant,D as default};
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/Tag/Tag.tsx"],"sourcesContent":["import React from 'react';\n\nimport cn from 'classnames';\n\nimport { AnalyticsId } from '../../constants';\nimport { useHover } from '../../hooks/useHover';\nimport { palette, PaletteNames } from '../../theme/palette';\nimport Icon, { IconSize, SvgIcon } from '../Icons';\nimport Undo from '../Icons/Undo';\nimport X from '../Icons/X';\n\nimport styles from './styles.module.scss';\n\nexport enum TagSize {\n medium = 'medium',\n large = 'large',\n}\n\nexport enum TagAction {\n remove = 'remove',\n undo = 'undo',\n}\n\nexport enum TagVariant {\n normal = 'normal',\n oncolor = 'oncolor',\n emphasised = 'emphasised',\n}\n\nexport type TagColors = Extract<PaletteNames, 'blueberry' | 'neutral' | 'cherry' | 'banana' | 'kiwi' | 'plum'>;\n\ninterface TagProps {\n /** Sets the text of the tag */\n children: string;\n /** Sets the size of the tag. Default: small */\n size?: keyof typeof TagSize;\n /** Sets the background of the tag. Not used if action is \"undo\". Default: blueberry */\n color?: TagColors;\n /** Adds an icon to the tag. Not shown if action is set. */\n svgIcon?: SvgIcon;\n /* Changes the appearance of the tag. Not used if action is \"undo\". Default: normal */\n variant?: keyof typeof TagVariant;\n /* Makes the tag a clickable button that performs an action. onClick must also be set. */\n action?: keyof typeof TagAction;\n /* Called when action is set and the tag is clicked on. action must also be set. */\n onClick?: () => void;\n /** Sets the data-testid attribute on the expander button. */\n testId?: string;\n}\n\ntype ActionTagProps = Required<Pick<TagProps, 'children' | 'size' | 'color' | 'variant' | 'action' | 'onClick'>> & Pick<TagProps, 'testId'>;\n\nconst ActionTag: React.FC<ActionTagProps> = props => {\n const { children, size, color, variant, action, onClick, testId } = props;\n\n const { hoverRef, isHovered } = useHover<HTMLButtonElement>();\n\n const tagClasses = cn(\n styles.tag,\n styles[`tag--${size}`],\n styles[`tag--${action}`],\n styles['tag--has-action'],\n action === 'remove' && [styles[`tag--${color}`], styles[`tag--${variant}`]]\n );\n\n const getActionIcon = (): SvgIcon => {\n switch (action) {\n case 'remove':\n return X;\n case 'undo':\n return Undo;\n }\n };\n\n return (\n <button className={tagClasses} onClick={onClick} ref={hoverRef} type=\"button\" data-testid={testId} data-analyticsid={AnalyticsId.Tag}>\n {children}\n <Icon\n svgIcon={getActionIcon()}\n size={IconSize.XXSmall}\n color={palette[`${action === 'undo' ? 'blueberry' : color}800`]}\n isHovered={isHovered}\n />\n </button>\n );\n};\n\nconst Tag: React.FC<TagProps> = props => {\n const { children, size = TagSize.medium, color = 'blueberry', svgIcon, variant = 'normal', action, onClick, testId } = props;\n\n const tagClasses = cn(styles.tag, styles[`tag--${size}`], styles[`tag--${color}`], styles[`tag--${variant}`], {\n [styles['tag--has-icon']]: svgIcon,\n });\n\n if (action && onClick) {\n return (\n <ActionTag size={size} color={color} variant={variant} action={action} onClick={onClick} testId={testId}>\n {children}\n </ActionTag>\n );\n }\n\n return (\n <span className={tagClasses} data-testid={testId} data-analyticsid={AnalyticsId.Tag}>\n {svgIcon && <Icon svgIcon={svgIcon} size={IconSize.XXSmall} color={palette[`${color}800`]} className={styles.tag__icon} />}\n {children}\n </span>\n );\n};\n\nexport default Tag;\n"],"names":["TagSize","TagAction","TagVariant","ActionTag","props","children","size","color","variant","action","onClick","testId","hoverRef","isHovered","useHover","tagClasses","cn","styles","getActionIcon","X","Undo","React","AnalyticsId","Icon","IconSize","palette","Tag","svgIcon","Tag$1"],"mappings":"mbAaY,IAAAA,GAAAA,IACVA,EAAA,OAAS,SACTA,EAAA,MAAQ,QAFEA,IAAAA,GAAA,CAAA,CAAA,EAKAC,GAAAA,IACVA,EAAA,OAAS,SACTA,EAAA,KAAO,OAFGA,IAAAA,GAAA,CAAA,CAAA,EAKAC,GAAAA,IACVA,EAAA,OAAS,SACTA,EAAA,QAAU,UACVA,EAAA,WAAa,aAHHA,IAAAA,GAAA,CAAA,CAAA,EA6BZ,MAAMC,EAA+CC,GAAA,CAC7C,KAAA,CAAE,SAAAC,EAAU,KAAAC,EAAM,MAAAC,EAAO,QAAAC,EAAS,OAAAC,EAAQ,QAAAC,EAAS,OAAAC,CAAW,EAAAP,EAE9D,CAAE,SAAAQ,EAAU,UAAAC,CAAU,EAAIC,EAA4B,EAEtDC,EAAaC,EACjBC,EAAO,IACPA,EAAO,QAAQX,GAAM,EACrBW,EAAO,QAAQR,GAAQ,EACvBQ,EAAO,iBAAiB,EACxBR,IAAW,UAAY,CAACQ,EAAO,QAAQV,GAAO,EAAGU,EAAO,QAAQT,GAAS,CAAC,CAAA,EAGtEU,EAAgB,IAAe,CACnC,OAAQT,EAAQ,CACd,IAAK,SACI,OAAAU,EACT,IAAK,OACI,OAAAC,CACX,CAAA,EAGF,OACGC,EAAA,cAAA,SAAA,CAAO,UAAWN,EAAY,QAAAL,EAAkB,IAAKE,EAAU,KAAK,SAAS,cAAaD,EAAQ,mBAAkBW,EAAY,KAC9HjB,EACDgB,EAAA,cAACE,EAAA,CACC,QAASL,EAAc,EACvB,KAAMM,EAAS,QACf,MAAOC,EAAQ,GAAGhB,IAAW,OAAS,YAAcF,MAAU,EAC9D,UAAAM,CAAA,CAAA,CAEJ,CAEJ,EAEMa,EAAmCtB,GAAA,CACvC,KAAM,CAAE,SAAAC,EAAU,KAAAC,EAAO,SAAgB,MAAAC,EAAQ,YAAa,QAAAoB,EAAS,QAAAnB,EAAU,SAAU,OAAAC,EAAQ,QAAAC,EAAS,OAAAC,CAAA,EAAWP,EAEjHW,EAAaC,EAAGC,EAAO,IAAKA,EAAO,QAAQX,GAAM,EAAGW,EAAO,QAAQV,GAAO,EAAGU,EAAO,QAAQT,GAAS,EAAG,CAC5G,CAACS,EAAO,eAAe,CAAC,EAAGU,CAAA,CAC5B,EAED,OAAIlB,GAAUC,EAEVW,EAAA,cAAClB,GAAU,KAAAG,EAAY,MAAAC,EAAc,QAAAC,EAAkB,OAAAC,EAAgB,QAAAC,EAAkB,OAAAC,GACtFN,CACH,EAKFgB,EAAA,cAAC,OAAK,CAAA,UAAWN,EAAY,cAAaJ,EAAQ,mBAAkBW,EAAY,GAC7E,EAAAK,GAAYN,EAAA,cAAAE,EAAA,CAAK,QAAAI,EAAkB,KAAMH,EAAS,QAAS,MAAOC,EAAQ,GAAGlB,MAAU,EAAG,UAAWU,EAAO,SAAW,CAAA,EACvHZ,CACH,CAEJ,EAEAuB,EAAeF"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/components/Tag/Tag.tsx"],"sourcesContent":["import React from 'react';\n\nimport cn from 'classnames';\n\nimport { AnalyticsId } from '../../constants';\nimport { useHover } from '../../hooks/useHover';\nimport { palette, PaletteNames } from '../../theme/palette';\nimport Icon, { IconSize, SvgIcon } from '../Icons';\nimport Undo from '../Icons/Undo';\nimport X from '../Icons/X';\n\nimport styles from './styles.module.scss';\n\nexport enum TagSize {\n medium = 'medium',\n large = 'large',\n}\n\nexport enum TagAction {\n remove = 'remove',\n undo = 'undo',\n}\n\nexport enum TagVariant {\n normal = 'normal',\n oncolor = 'oncolor',\n emphasised = 'emphasised',\n}\n\nexport type TagColors = Extract<PaletteNames, 'blueberry' | 'neutral' | 'cherry' | 'banana' | 'kiwi' | 'plum'>;\n\ninterface TagProps {\n /** Sets the text of the tag */\n children: string;\n /** Sets the size of the tag. Default: small */\n size?: keyof typeof TagSize;\n /** Sets the background of the tag. Not used if action is \"undo\". Default: blueberry */\n color?: TagColors;\n /** Adds an icon to the tag. Not shown if action is set. */\n svgIcon?: SvgIcon;\n /* Changes the appearance of the tag. Not used if action is \"undo\". Default: normal */\n variant?: keyof typeof TagVariant;\n /* Makes the tag a clickable button that performs an action. onClick must also be set. */\n action?: keyof typeof TagAction;\n /* Called when action is set and the tag is clicked on. action must also be set. */\n onClick?: () => void;\n /** Sets the data-testid attribute on the expander button. */\n testId?: string;\n}\n\ntype ActionTagProps = Required<Pick<TagProps, 'children' | 'size' | 'color' | 'variant' | 'action' | 'onClick'>> & Pick<TagProps, 'testId'>;\n\nconst ActionTag: React.FC<ActionTagProps> = props => {\n const { children, size, color, variant, action, onClick, testId } = props;\n\n const { hoverRef, isHovered } = useHover<HTMLButtonElement>();\n\n const tagClasses = cn(\n styles.tag,\n styles[`tag--${size}`],\n styles[`tag--${action}`],\n styles['tag--has-action'],\n action === 'remove' && [styles[`tag--${color}`], styles[`tag--${variant}`]]\n );\n\n const getActionIcon = (): SvgIcon => {\n switch (action) {\n case 'remove':\n return X;\n case 'undo':\n return Undo;\n }\n };\n\n return (\n <button className={tagClasses} onClick={onClick} ref={hoverRef} type=\"button\" data-testid={testId} data-analyticsid={AnalyticsId.Tag}>\n {children}\n <Icon\n svgIcon={getActionIcon()}\n size={IconSize.XXSmall}\n color={palette[`${action === 'undo' ? 'blueberry' : color}800`]}\n isHovered={isHovered}\n />\n </button>\n );\n};\n\nconst Tag: React.FC<TagProps> = props => {\n const { children, size = TagSize.medium, color = 'blueberry', svgIcon, variant = 'normal', action, onClick, testId } = props;\n\n const tagClasses = cn(styles.tag, styles[`tag--${size}`], styles[`tag--${color}`], styles[`tag--${variant}`], {\n [styles['tag--has-icon']]: svgIcon,\n });\n\n if (action && onClick) {\n return (\n <ActionTag size={size} color={color} variant={variant} action={action} onClick={onClick} testId={testId}>\n {children}\n </ActionTag>\n );\n }\n\n return (\n <span className={tagClasses} data-testid={testId} data-analyticsid={AnalyticsId.Tag}>\n {svgIcon && <Icon svgIcon={svgIcon} size={IconSize.XXSmall} color={palette[`${color}800`]} className={styles.tag__icon} />}\n {children}\n </span>\n );\n};\n\nexport default Tag;\n"],"names":["TagSize","TagAction","TagVariant","ActionTag","props","children","size","color","variant","action","onClick","testId","hoverRef","isHovered","useHover","tagClasses","cn","styles","getActionIcon","X","Undo","React","AnalyticsId","Icon","IconSize","palette","Tag","svgIcon","Tag$1"],"mappings":"2dAaY,IAAAA,GAAAA,IACVA,EAAA,OAAS,SACTA,EAAA,MAAQ,QAFEA,IAAAA,GAAA,CAAA,CAAA,EAKAC,GAAAA,IACVA,EAAA,OAAS,SACTA,EAAA,KAAO,OAFGA,IAAAA,GAAA,CAAA,CAAA,EAKAC,GAAAA,IACVA,EAAA,OAAS,SACTA,EAAA,QAAU,UACVA,EAAA,WAAa,aAHHA,IAAAA,GAAA,CAAA,CAAA,EA6BZ,MAAMC,EAA+CC,GAAA,CAC7C,KAAA,CAAE,SAAAC,EAAU,KAAAC,EAAM,MAAAC,EAAO,QAAAC,EAAS,OAAAC,EAAQ,QAAAC,EAAS,OAAAC,CAAW,EAAAP,EAE9D,CAAE,SAAAQ,EAAU,UAAAC,CAAU,EAAIC,EAA4B,EAEtDC,EAAaC,EACjBC,EAAO,IACPA,EAAO,QAAQX,GAAM,EACrBW,EAAO,QAAQR,GAAQ,EACvBQ,EAAO,iBAAiB,EACxBR,IAAW,UAAY,CAACQ,EAAO,QAAQV,GAAO,EAAGU,EAAO,QAAQT,GAAS,CAAC,CAAA,EAGtEU,EAAgB,IAAe,CACnC,OAAQT,EAAQ,CACd,IAAK,SACI,OAAAU,EACT,IAAK,OACI,OAAAC,CACX,CAAA,EAGF,OACGC,EAAA,cAAA,SAAA,CAAO,UAAWN,EAAY,QAAAL,EAAkB,IAAKE,EAAU,KAAK,SAAS,cAAaD,EAAQ,mBAAkBW,EAAY,KAC9HjB,EACDgB,EAAA,cAACE,EAAA,CACC,QAASL,EAAc,EACvB,KAAMM,EAAS,QACf,MAAOC,EAAQ,GAAGhB,IAAW,OAAS,YAAcF,MAAU,EAC9D,UAAAM,CAAA,CAAA,CAEJ,CAEJ,EAEMa,EAAmCtB,GAAA,CACvC,KAAM,CAAE,SAAAC,EAAU,KAAAC,EAAO,SAAgB,MAAAC,EAAQ,YAAa,QAAAoB,EAAS,QAAAnB,EAAU,SAAU,OAAAC,EAAQ,QAAAC,EAAS,OAAAC,CAAA,EAAWP,EAEjHW,EAAaC,EAAGC,EAAO,IAAKA,EAAO,QAAQX,GAAM,EAAGW,EAAO,QAAQV,GAAO,EAAGU,EAAO,QAAQT,GAAS,EAAG,CAC5G,CAACS,EAAO,eAAe,CAAC,EAAGU,CAAA,CAC5B,EAED,OAAIlB,GAAUC,EAEVW,EAAA,cAAClB,GAAU,KAAAG,EAAY,MAAAC,EAAc,QAAAC,EAAkB,OAAAC,EAAgB,QAAAC,EAAkB,OAAAC,GACtFN,CACH,EAKFgB,EAAA,cAAC,OAAK,CAAA,UAAWN,EAAY,cAAaJ,EAAQ,mBAAkBW,EAAY,GAC7E,EAAAK,GAAYN,EAAA,cAAAE,EAAA,CAAK,QAAAI,EAAkB,KAAMH,EAAS,QAAS,MAAOC,EAAQ,GAAGlB,MAAU,EAAG,UAAWU,EAAO,SAAW,CAAA,EACvHZ,CACH,CAEJ,EAEAuB,EAAeF"}
@@ -1,2 +1,2 @@
1
- import e from"react";import f from"classnames";import{AnalyticsId as w,IconSize as C}from"../../constants.js";import{useHover as k}from"../../hooks/useHover.js";import"../Icons/Icon.js";import t from"./styles.module.scss";import"../../hooks/useUuid.js";import"../../uuid.js";import"../../utils/environment.js";const y=e.forwardRef((l,i)=>{const{children:o,className:s,htmlMarkup:n="span",highlighted:r,compact:c}=l,a=f(t.tile__title,{[t["tile__title--highlighted"]]:r,[t["tile__title--compact"]]:c},s),m=n;return e.createElement(m,{className:a,ref:i},o)}),E=e.forwardRef((l,i)=>{const{icon:o,title:s,className:n="",description:r,fixed:c=!1,highlighted:a=!1,testId:m,htmlMarkup:p="a",..._}=l,{hoverRef:h,isHovered:b}=k(i),d=!r,N=f(t.tile,{[t["tile--fixed"]]:c,[t["tile--compact"]]:d,[t["tile--highlighted"]]:a,[t["tile--button"]]:p==="button"},n),T=f(t["title-wrapper"],{[t["title-wrapper--compact"]]:d}),u=()=>e.createElement(e.Fragment,null,e.createElement("span",{className:T},e.cloneElement(o,{size:C.Medium,isHovered:b,color:a?"white":"black"}),e.cloneElement(s,{highlighted:a,compact:d})),r?e.createElement("p",{className:t.tile__description},r):null),g={className:N,["data-testid"]:m,["data-analyticsid"]:w.Tile,..._};return e.createElement(e.Fragment,null,p==="a"&&e.createElement("a",{ref:h,rel:l.target==="_blank"?"noopener noreferrer":l.rel,...g},u()),p==="button"&&e.createElement("button",{ref:h,type:"button",...g},u()))});E.Title=y;const S=E;export{E as Tile,S as default};
1
+ import e from"react";import f from"classnames";import{AnalyticsId as w,IconSize as C}from"../../constants.js";import{useHover as k}from"../../hooks/useHover.js";import"../Icons/Icon.js";import t from"./styles.module.scss";import"../../hooks/usePseudoClasses.js";import"../../hooks/useUuid.js";import"../../uuid.js";import"../../utils/environment.js";const y=e.forwardRef((l,a)=>{const{children:o,className:s,htmlMarkup:n="span",highlighted:r,compact:c}=l,i=f(t.tile__title,{[t["tile__title--highlighted"]]:r,[t["tile__title--compact"]]:c},s),m=n;return e.createElement(m,{className:i,ref:a},o)}),E=e.forwardRef((l,a)=>{const{icon:o,title:s,className:n="",description:r,fixed:c=!1,highlighted:i=!1,testId:m,htmlMarkup:p="a",..._}=l,{hoverRef:h,isHovered:b}=k(a),d=!r,N=f(t.tile,{[t["tile--fixed"]]:c,[t["tile--compact"]]:d,[t["tile--highlighted"]]:i,[t["tile--button"]]:p==="button"},n),T=f(t["title-wrapper"],{[t["title-wrapper--compact"]]:d}),u=()=>e.createElement(e.Fragment,null,e.createElement("span",{className:T},e.cloneElement(o,{size:C.Medium,isHovered:b,color:i?"white":"black"}),e.cloneElement(s,{highlighted:i,compact:d})),r?e.createElement("p",{className:t.tile__description},r):null),g={className:N,["data-testid"]:m,["data-analyticsid"]:w.Tile,..._};return e.createElement(e.Fragment,null,p==="a"&&e.createElement("a",{ref:h,rel:l.target==="_blank"?"noopener noreferrer":l.rel,...g},u()),p==="button"&&e.createElement("button",{ref:h,type:"button",...g},u()))});E.Title=y;const A=E;export{E as Tile,A as default};
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/Tile/Tile.tsx"],"sourcesContent":["import React from 'react';\n\nimport classNames from 'classnames';\n\nimport { TitleTags } from './../Title/Title';\nimport { AnalyticsId, HTMLAnchorProps } from '../../constants';\nimport { useHover } from '../../hooks/useHover';\nimport { IconSize } from '../Icons';\n\nimport tileStyles from './styles.module.scss';\n\nexport type TileTags = 'button' | 'a';\n\ninterface TileProps extends HTMLAnchorProps {\n /** Adds custom classes to the element. */\n className?: string;\n /**\tSets the icon to be displayed inside the tile. */\n icon: React.ReactElement;\n /**\tSets the title to be displayed inside the tile. */\n title: React.ReactElement;\n /** Toggles the highlighted style of the tile. */\n highlighted?: boolean;\n /** Sets the description to be displayed inside the tile. */\n description?: string;\n /** Sets a fixed max and min width for the tile. */\n fixed?: boolean;\n /** Called when the tile is clicked on. */\n onClick?: (e?: React.MouseEvent<HTMLElement, MouseEvent>) => void;\n /** HTML markup for tile. Default: a */\n htmlMarkup?: TileTags;\n /** Sets the data-testid attribute. */\n testId?: string;\n}\n\ninterface TileTitleProps {\n children: React.ReactNode;\n className?: string;\n htmlMarkup?: TitleTags;\n highlighted?: boolean;\n compact?: boolean;\n}\n\nexport interface TileCompound extends React.ForwardRefExoticComponent<TileProps & React.RefAttributes<HTMLAnchorElement>> {\n Title: React.ForwardRefExoticComponent<TileTitleProps & React.RefAttributes<HTMLHeadingElement>>;\n}\n\nconst Title = React.forwardRef<HTMLHeadingElement, TileTitleProps>((props, ref) => {\n const { children, className, htmlMarkup = 'span', highlighted, compact } = props;\n const titleClasses = classNames(\n tileStyles['tile__title'],\n {\n [tileStyles['tile__title--highlighted']]: highlighted,\n [tileStyles['tile__title--compact']]: compact,\n },\n className\n );\n const CustomTag = htmlMarkup;\n\n return (\n <CustomTag className={titleClasses} ref={ref}>\n {children}\n </CustomTag>\n );\n});\n\nexport const Tile = React.forwardRef<HTMLAnchorElement | HTMLButtonElement, TileProps>((props, ref) => {\n const { icon, title, className = '', description, fixed = false, highlighted = false, testId, htmlMarkup = 'a', ...restProps } = props;\n const { hoverRef, isHovered } = useHover<HTMLButtonElement | HTMLAnchorElement>(\n ref as React.RefObject<HTMLButtonElement | HTMLAnchorElement>\n );\n const compact = !description;\n const tileClasses = classNames(\n tileStyles.tile,\n {\n [tileStyles['tile--fixed']]: fixed,\n [tileStyles['tile--compact']]: compact,\n [tileStyles['tile--highlighted']]: highlighted,\n [tileStyles['tile--button']]: htmlMarkup === 'button',\n },\n className\n );\n const tileTitleWrapperClasses = classNames(tileStyles['title-wrapper'], {\n [tileStyles['title-wrapper--compact']]: compact,\n });\n\n const renderContent = () => (\n <>\n <span className={tileTitleWrapperClasses}>\n {React.cloneElement(icon, { size: IconSize.Medium, isHovered, color: highlighted ? 'white' : 'black' })}\n {React.cloneElement(title, { highlighted: highlighted, compact: compact })}\n </span>\n {description ? <p className={tileStyles.tile__description}>{description}</p> : null}\n </>\n );\n\n const commonProps = {\n className: tileClasses,\n ['data-testid']: testId,\n ['data-analyticsid']: AnalyticsId.Tile,\n ...restProps,\n };\n\n return (\n <>\n {htmlMarkup === 'a' && (\n <a\n ref={hoverRef as React.RefObject<HTMLAnchorElement>}\n rel={props.target === '_blank' ? 'noopener noreferrer' : props.rel}\n {...commonProps}\n >\n {renderContent()}\n </a>\n )}\n {htmlMarkup === 'button' && (\n <button ref={hoverRef as React.RefObject<HTMLButtonElement>} type=\"button\" {...commonProps}>\n {renderContent()}\n </button>\n )}\n </>\n );\n}) as TileCompound;\n\nTile.Title = Title;\n\nexport default Tile;\n"],"names":["Title","React","props","ref","children","className","htmlMarkup","highlighted","compact","titleClasses","classNames","tileStyles","CustomTag","Tile","icon","title","description","fixed","testId","restProps","hoverRef","isHovered","useHover","tileClasses","tileTitleWrapperClasses","renderContent","IconSize","commonProps","AnalyticsId","Tile$1"],"mappings":"sTA8CA,MAAMA,EAAQC,EAAM,WAA+C,CAACC,EAAOC,IAAQ,CACjF,KAAM,CAAE,SAAAC,EAAU,UAAAC,EAAW,WAAAC,EAAa,OAAQ,YAAAC,EAAa,QAAAC,CAAY,EAAAN,EACrEO,EAAeC,EACnBC,EAAW,YACX,CACE,CAACA,EAAW,0BAA0B,CAAC,EAAGJ,EAC1C,CAACI,EAAW,sBAAsB,CAAC,EAAGH,CACxC,EACAH,CAAA,EAEIO,EAAYN,EAElB,OACGL,EAAA,cAAAW,EAAA,CAAU,UAAWH,EAAc,IAAAN,GACjCC,CACH,CAEJ,CAAC,EAEYS,EAAOZ,EAAM,WAA6D,CAACC,EAAOC,IAAQ,CACrG,KAAM,CAAE,KAAAW,EAAM,MAAAC,EAAO,UAAAV,EAAY,GAAI,YAAAW,EAAa,MAAAC,EAAQ,GAAO,YAAAV,EAAc,GAAO,OAAAW,EAAQ,WAAAZ,EAAa,IAAK,GAAGa,CAAc,EAAAjB,EAC3H,CAAE,SAAAkB,EAAU,UAAAC,CAAA,EAAcC,EAC9BnB,CAAA,EAEIK,EAAU,CAACQ,EACXO,EAAcb,EAClBC,EAAW,KACX,CACE,CAACA,EAAW,aAAa,CAAC,EAAGM,EAC7B,CAACN,EAAW,eAAe,CAAC,EAAGH,EAC/B,CAACG,EAAW,mBAAmB,CAAC,EAAGJ,EACnC,CAACI,EAAW,cAAc,CAAC,EAAGL,IAAe,QAC/C,EACAD,CAAA,EAEImB,EAA0Bd,EAAWC,EAAW,eAAe,EAAG,CACtE,CAACA,EAAW,wBAAwB,CAAC,EAAGH,CAAA,CACzC,EAEKiB,EAAgB,IACpBxB,EAAA,cAAAA,EAAA,SAAA,KACGA,EAAA,cAAA,OAAA,CAAK,UAAWuB,CACd,EAAAvB,EAAM,aAAaa,EAAM,CAAE,KAAMY,EAAS,OAAQ,UAAAL,EAAW,MAAOd,EAAc,QAAU,QAAS,EACrGN,EAAM,aAAac,EAAO,CAAE,YAAAR,EAA0B,QAAAC,EAAkB,CAC3E,EACCQ,kBAAe,IAAE,CAAA,UAAWL,EAAW,mBAAoBK,CAAY,EAAO,IACjF,EAGIW,EAAc,CAClB,UAAWJ,EACX,CAAC,aAAa,EAAGL,EACjB,CAAC,kBAAkB,EAAGU,EAAY,KAClC,GAAGT,CAAA,EAIH,OAAAlB,EAAA,cAAAA,EAAA,SAAA,KACGK,IAAe,KACdL,EAAA,cAAC,IAAA,CACC,IAAKmB,EACL,IAAKlB,EAAM,SAAW,SAAW,sBAAwBA,EAAM,IAC9D,GAAGyB,CAAA,EAEHF,EAAc,CAAA,EAGlBnB,IAAe,UACdL,EAAA,cAAC,SAAO,CAAA,IAAKmB,EAAgD,KAAK,SAAU,GAAGO,CAC5E,EAAAF,EAAA,CACH,CAEJ,CAEJ,CAAC,EAEDZ,EAAK,MAAQb,EAEb,MAAA6B,EAAehB"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/components/Tile/Tile.tsx"],"sourcesContent":["import React from 'react';\n\nimport classNames from 'classnames';\n\nimport { TitleTags } from './../Title/Title';\nimport { AnalyticsId, HTMLAnchorProps } from '../../constants';\nimport { useHover } from '../../hooks/useHover';\nimport { IconSize } from '../Icons';\n\nimport tileStyles from './styles.module.scss';\n\nexport type TileTags = 'button' | 'a';\n\ninterface TileProps extends HTMLAnchorProps {\n /** Adds custom classes to the element. */\n className?: string;\n /**\tSets the icon to be displayed inside the tile. */\n icon: React.ReactElement;\n /**\tSets the title to be displayed inside the tile. */\n title: React.ReactElement;\n /** Toggles the highlighted style of the tile. */\n highlighted?: boolean;\n /** Sets the description to be displayed inside the tile. */\n description?: string;\n /** Sets a fixed max and min width for the tile. */\n fixed?: boolean;\n /** Called when the tile is clicked on. */\n onClick?: (e?: React.MouseEvent<HTMLElement, MouseEvent>) => void;\n /** HTML markup for tile. Default: a */\n htmlMarkup?: TileTags;\n /** Sets the data-testid attribute. */\n testId?: string;\n}\n\ninterface TileTitleProps {\n children: React.ReactNode;\n className?: string;\n htmlMarkup?: TitleTags;\n highlighted?: boolean;\n compact?: boolean;\n}\n\nexport interface TileCompound extends React.ForwardRefExoticComponent<TileProps & React.RefAttributes<HTMLAnchorElement>> {\n Title: React.ForwardRefExoticComponent<TileTitleProps & React.RefAttributes<HTMLHeadingElement>>;\n}\n\nconst Title = React.forwardRef<HTMLHeadingElement, TileTitleProps>((props, ref) => {\n const { children, className, htmlMarkup = 'span', highlighted, compact } = props;\n const titleClasses = classNames(\n tileStyles['tile__title'],\n {\n [tileStyles['tile__title--highlighted']]: highlighted,\n [tileStyles['tile__title--compact']]: compact,\n },\n className\n );\n const CustomTag = htmlMarkup;\n\n return (\n <CustomTag className={titleClasses} ref={ref}>\n {children}\n </CustomTag>\n );\n});\n\nexport const Tile = React.forwardRef<HTMLAnchorElement | HTMLButtonElement, TileProps>((props, ref) => {\n const { icon, title, className = '', description, fixed = false, highlighted = false, testId, htmlMarkup = 'a', ...restProps } = props;\n const { hoverRef, isHovered } = useHover<HTMLButtonElement | HTMLAnchorElement>(\n ref as React.RefObject<HTMLButtonElement | HTMLAnchorElement>\n );\n const compact = !description;\n const tileClasses = classNames(\n tileStyles.tile,\n {\n [tileStyles['tile--fixed']]: fixed,\n [tileStyles['tile--compact']]: compact,\n [tileStyles['tile--highlighted']]: highlighted,\n [tileStyles['tile--button']]: htmlMarkup === 'button',\n },\n className\n );\n const tileTitleWrapperClasses = classNames(tileStyles['title-wrapper'], {\n [tileStyles['title-wrapper--compact']]: compact,\n });\n\n const renderContent = () => (\n <>\n <span className={tileTitleWrapperClasses}>\n {React.cloneElement(icon, { size: IconSize.Medium, isHovered, color: highlighted ? 'white' : 'black' })}\n {React.cloneElement(title, { highlighted: highlighted, compact: compact })}\n </span>\n {description ? <p className={tileStyles.tile__description}>{description}</p> : null}\n </>\n );\n\n const commonProps = {\n className: tileClasses,\n ['data-testid']: testId,\n ['data-analyticsid']: AnalyticsId.Tile,\n ...restProps,\n };\n\n return (\n <>\n {htmlMarkup === 'a' && (\n <a\n ref={hoverRef as React.RefObject<HTMLAnchorElement>}\n rel={props.target === '_blank' ? 'noopener noreferrer' : props.rel}\n {...commonProps}\n >\n {renderContent()}\n </a>\n )}\n {htmlMarkup === 'button' && (\n <button ref={hoverRef as React.RefObject<HTMLButtonElement>} type=\"button\" {...commonProps}>\n {renderContent()}\n </button>\n )}\n </>\n );\n}) as TileCompound;\n\nTile.Title = Title;\n\nexport default Tile;\n"],"names":["Title","React","props","ref","children","className","htmlMarkup","highlighted","compact","titleClasses","classNames","tileStyles","CustomTag","Tile","icon","title","description","fixed","testId","restProps","hoverRef","isHovered","useHover","tileClasses","tileTitleWrapperClasses","renderContent","IconSize","commonProps","AnalyticsId","Tile$1"],"mappings":"8VA8CA,MAAMA,EAAQC,EAAM,WAA+C,CAACC,EAAOC,IAAQ,CACjF,KAAM,CAAE,SAAAC,EAAU,UAAAC,EAAW,WAAAC,EAAa,OAAQ,YAAAC,EAAa,QAAAC,CAAY,EAAAN,EACrEO,EAAeC,EACnBC,EAAW,YACX,CACE,CAACA,EAAW,0BAA0B,CAAC,EAAGJ,EAC1C,CAACI,EAAW,sBAAsB,CAAC,EAAGH,CACxC,EACAH,CAAA,EAEIO,EAAYN,EAElB,OACGL,EAAA,cAAAW,EAAA,CAAU,UAAWH,EAAc,IAAAN,GACjCC,CACH,CAEJ,CAAC,EAEYS,EAAOZ,EAAM,WAA6D,CAACC,EAAOC,IAAQ,CACrG,KAAM,CAAE,KAAAW,EAAM,MAAAC,EAAO,UAAAV,EAAY,GAAI,YAAAW,EAAa,MAAAC,EAAQ,GAAO,YAAAV,EAAc,GAAO,OAAAW,EAAQ,WAAAZ,EAAa,IAAK,GAAGa,CAAc,EAAAjB,EAC3H,CAAE,SAAAkB,EAAU,UAAAC,CAAA,EAAcC,EAC9BnB,CAAA,EAEIK,EAAU,CAACQ,EACXO,EAAcb,EAClBC,EAAW,KACX,CACE,CAACA,EAAW,aAAa,CAAC,EAAGM,EAC7B,CAACN,EAAW,eAAe,CAAC,EAAGH,EAC/B,CAACG,EAAW,mBAAmB,CAAC,EAAGJ,EACnC,CAACI,EAAW,cAAc,CAAC,EAAGL,IAAe,QAC/C,EACAD,CAAA,EAEImB,EAA0Bd,EAAWC,EAAW,eAAe,EAAG,CACtE,CAACA,EAAW,wBAAwB,CAAC,EAAGH,CAAA,CACzC,EAEKiB,EAAgB,IACpBxB,EAAA,cAAAA,EAAA,SAAA,KACGA,EAAA,cAAA,OAAA,CAAK,UAAWuB,CACd,EAAAvB,EAAM,aAAaa,EAAM,CAAE,KAAMY,EAAS,OAAQ,UAAAL,EAAW,MAAOd,EAAc,QAAU,QAAS,EACrGN,EAAM,aAAac,EAAO,CAAE,YAAAR,EAA0B,QAAAC,EAAkB,CAC3E,EACCQ,kBAAe,IAAE,CAAA,UAAWL,EAAW,mBAAoBK,CAAY,EAAO,IACjF,EAGIW,EAAc,CAClB,UAAWJ,EACX,CAAC,aAAa,EAAGL,EACjB,CAAC,kBAAkB,EAAGU,EAAY,KAClC,GAAGT,CAAA,EAIH,OAAAlB,EAAA,cAAAA,EAAA,SAAA,KACGK,IAAe,KACdL,EAAA,cAAC,IAAA,CACC,IAAKmB,EACL,IAAKlB,EAAM,SAAW,SAAW,sBAAwBA,EAAM,IAC9D,GAAGyB,CAAA,EAEHF,EAAc,CAAA,EAGlBnB,IAAe,UACdL,EAAA,cAAC,SAAO,CAAA,IAAKmB,EAAgD,KAAK,SAAU,GAAGO,CAC5E,EAAAF,EAAA,CACH,CAEJ,CAEJ,CAAC,EAEDZ,EAAK,MAAQb,EAEb,MAAA6B,EAAehB"}
@@ -1,2 +1,2 @@
1
- import{T as p}from"../../Tooltip.js";import{a as J,b as K}from"../../Tooltip.js";import"react";import"../../TooltipWord.js";import"../../constants.js";import"./TooltipWord/styles.module.scss";import"../../hooks/useDelayedState.js";import"../../hooks/useUuid.js";import"../../uuid.js";import"../../utils/environment.js";import"../../HelpBubble.js";import"classnames";import"../../AnchorLink.js";import"../../hooks/useHover.js";import"../../theme/currys/color.js";import"../../theme/index.js";import"../../theme/grid.js";import"../../theme/palette.js";import"../../theme/spacers.js";import"../Icons/Icon.js";import"../Icons/ArrowUpRight.js";import"../AnchorLink/styles.module.scss";import"../../Close.js";import"../../hooks/useBreakpoint.js";import"../Icons/X.js";import"../Close/styles.module.scss";import"../../PopOver.js";import"../../hooks/useInterval.js";import"../../hooks/useIsVisible.js";import"../../hooks/useIntersectionObserver.js";import"../../hooks/useLayoutEvent.js";import"../../utils/debounce.js";import"../../hooks/useSize.js";import"../../utils/refs.js";import"../PopOver/styles.module.scss";import"../HelpBubble/styles.module.scss";export{J as Tooltip,K as TooltipOpenProvider,p as default};
1
+ import{T as p}from"../../Tooltip.js";import{a as K,b as L}from"../../Tooltip.js";import"react";import"../../TooltipWord.js";import"../../constants.js";import"./TooltipWord/styles.module.scss";import"../../hooks/useDelayedState.js";import"../../hooks/useUuid.js";import"../../uuid.js";import"../../utils/environment.js";import"../../HelpBubble.js";import"classnames";import"../../AnchorLink.js";import"../../hooks/useHover.js";import"../../hooks/usePseudoClasses.js";import"../../theme/currys/color.js";import"../../theme/index.js";import"../../theme/grid.js";import"../../theme/palette.js";import"../../theme/spacers.js";import"../Icons/Icon.js";import"../Icons/ArrowUpRight.js";import"../AnchorLink/styles.module.scss";import"../../Close.js";import"../../hooks/useBreakpoint.js";import"../../utils/refs.js";import"../Icons/X.js";import"../Close/styles.module.scss";import"../../PopOver.js";import"../../hooks/useInterval.js";import"../../hooks/useIsVisible.js";import"../../hooks/useIntersectionObserver.js";import"../../hooks/useLayoutEvent.js";import"../../utils/debounce.js";import"../../hooks/useSize.js";import"../PopOver/styles.module.scss";import"../HelpBubble/styles.module.scss";export{K as Tooltip,L as TooltipOpenProvider,p as default};
2
2
  //# sourceMappingURL=index.js.map
@@ -1,2 +1,2 @@
1
- import t from"react";import{longLoremText as m}from"../../utils/loremtext.js";import{b as i,T as r}from"../../Tooltip.js";import"../../TooltipWord.js";import"../../constants.js";import"../Tooltip/TooltipWord/styles.module.scss";import"../../hooks/useDelayedState.js";import"../../hooks/useUuid.js";import"../../uuid.js";import"../../utils/environment.js";import"../../HelpBubble.js";import"classnames";import"../../AnchorLink.js";import"../../hooks/useHover.js";import"../../theme/currys/color.js";import"../../theme/index.js";import"../../theme/grid.js";import"../../theme/palette.js";import"../../theme/spacers.js";import"../Icons/Icon.js";import"../Icons/ArrowUpRight.js";import"../AnchorLink/styles.module.scss";import"../../Close.js";import"../../hooks/useBreakpoint.js";import"../Icons/X.js";import"../Close/styles.module.scss";import"../../PopOver.js";import"../../hooks/useInterval.js";import"../../hooks/useIsVisible.js";import"../../hooks/useIntersectionObserver.js";import"../../hooks/useLayoutEvent.js";import"../../utils/debounce.js";import"../../hooks/useSize.js";import"../../utils/refs.js";import"../PopOver/styles.module.scss";import"../HelpBubble/styles.module.scss";const e=o=>t.createElement(i,null,t.createElement(t.Fragment,null,t.createElement(r,{...o},"Et tooltip her.")," "+m,t.createElement("button",null,"Knapp"),"Dette er ",t.createElement(r,{...o},o.children)," som skal ha nærmere forklaring.",m,t.createElement(r,{...o},"Enda et tooltip her."))),J=e;export{J as default};
1
+ import t from"react";import{longLoremText as m}from"../../utils/loremtext.js";import{b as i,T as r}from"../../Tooltip.js";import"../../TooltipWord.js";import"../../constants.js";import"../Tooltip/TooltipWord/styles.module.scss";import"../../hooks/useDelayedState.js";import"../../hooks/useUuid.js";import"../../uuid.js";import"../../utils/environment.js";import"../../HelpBubble.js";import"classnames";import"../../AnchorLink.js";import"../../hooks/useHover.js";import"../../hooks/usePseudoClasses.js";import"../../theme/currys/color.js";import"../../theme/index.js";import"../../theme/grid.js";import"../../theme/palette.js";import"../../theme/spacers.js";import"../Icons/Icon.js";import"../Icons/ArrowUpRight.js";import"../AnchorLink/styles.module.scss";import"../../Close.js";import"../../hooks/useBreakpoint.js";import"../../utils/refs.js";import"../Icons/X.js";import"../Close/styles.module.scss";import"../../PopOver.js";import"../../hooks/useInterval.js";import"../../hooks/useIsVisible.js";import"../../hooks/useIntersectionObserver.js";import"../../hooks/useLayoutEvent.js";import"../../utils/debounce.js";import"../../hooks/useSize.js";import"../PopOver/styles.module.scss";import"../HelpBubble/styles.module.scss";const e=o=>t.createElement(i,null,t.createElement(t.Fragment,null,t.createElement(r,{...o},"Et tooltip her.")," "+m,t.createElement("button",null,"Knapp"),"Dette er ",t.createElement(r,{...o},o.children)," som skal ha nærmere forklaring.",m,t.createElement(r,{...o},"Enda et tooltip her."))),M=e;export{M as default};
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/TooltipExample/TooltipExample.tsx"],"sourcesContent":["import React from 'react';\n\nimport longLoremText from '../../utils/loremtext';\nimport Tooltip, { TooltipProps, TooltipOpenProvider } from '../Tooltip';\n\nconst TooltipExample: React.FC<TooltipProps> = props => {\n return (\n <TooltipOpenProvider>\n <>\n <Tooltip {...props}>{'Et tooltip her.'}</Tooltip>\n {' ' + longLoremText}\n <button>{'Knapp'}</button>\n {'Dette er '}\n <Tooltip {...props}>{props.children}</Tooltip>\n {' som skal ha nærmere forklaring.'}\n {longLoremText}\n <Tooltip {...props}>{'Enda et tooltip her.'}</Tooltip>\n </>\n </TooltipOpenProvider>\n );\n};\n\nexport default TooltipExample;\n"],"names":["TooltipExample","props","React","TooltipOpenProvider","Tooltip","longLoremText","TooltipExample$1"],"mappings":"iqCAKA,MAAMA,EAAkDC,GAEnDC,EAAA,cAAAC,EAAA,KAEGD,EAAA,cAAAA,EAAA,SAAA,KAAAA,EAAA,cAACE,EAAS,CAAA,GAAGH,GAAQ,iBAAkB,EACtC,IAAMI,EACPH,EAAA,cAAC,cAAQ,OAAQ,EAChB,YACDA,EAAA,cAACE,EAAS,CAAA,GAAGH,CAAQ,EAAAA,EAAM,QAAS,EACnC,mCACAI,EACDH,EAAA,cAACE,EAAS,CAAA,GAAGH,CAAQ,EAAA,sBAAuB,CAC9C,CACF,EAIJK,EAAeN"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/components/TooltipExample/TooltipExample.tsx"],"sourcesContent":["import React from 'react';\n\nimport longLoremText from '../../utils/loremtext';\nimport Tooltip, { TooltipProps, TooltipOpenProvider } from '../Tooltip';\n\nconst TooltipExample: React.FC<TooltipProps> = props => {\n return (\n <TooltipOpenProvider>\n <>\n <Tooltip {...props}>{'Et tooltip her.'}</Tooltip>\n {' ' + longLoremText}\n <button>{'Knapp'}</button>\n {'Dette er '}\n <Tooltip {...props}>{props.children}</Tooltip>\n {' som skal ha nærmere forklaring.'}\n {longLoremText}\n <Tooltip {...props}>{'Enda et tooltip her.'}</Tooltip>\n </>\n </TooltipOpenProvider>\n );\n};\n\nexport default TooltipExample;\n"],"names":["TooltipExample","props","React","TooltipOpenProvider","Tooltip","longLoremText","TooltipExample$1"],"mappings":"ysCAKA,MAAMA,EAAkDC,GAEnDC,EAAA,cAAAC,EAAA,KAEGD,EAAA,cAAAA,EAAA,SAAA,KAAAA,EAAA,cAACE,EAAS,CAAA,GAAGH,GAAQ,iBAAkB,EACtC,IAAMI,EACPH,EAAA,cAAC,cAAQ,OAAQ,EAChB,YACDA,EAAA,cAACE,EAAS,CAAA,GAAGH,CAAQ,EAAAA,EAAM,QAAS,EACnC,mCACAI,EACDH,EAAA,cAACE,EAAS,CAAA,GAAGH,CAAQ,EAAA,sBAAuB,CAC9C,CACF,EAIJK,EAAeN"}
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ export type TriggerTags = 'button' | 'span';
2
3
  export type TriggerVariant = 'help';
3
4
  export type TriggerSize = 'medium' | 'large';
4
5
  export type TriggerMode = 'onlight' | 'ondark';
@@ -27,6 +28,14 @@ export interface TriggerProps extends Pick<React.InputHTMLAttributes<HTMLButtonE
27
28
  * Indicates that the trigger is in use.
28
29
  */
29
30
  selected?: boolean;
31
+ /**
32
+ * Indicates that the trigger is hovered. Used in combination with htmlMarkup=span to force visual hover state.
33
+ */
34
+ isHovered?: boolean;
35
+ /**
36
+ * Changes the underlying element of the trigger. If set to span, the trigger will be a non-interactive icon. Default: button
37
+ */
38
+ htmlMarkup?: TriggerTags;
30
39
  /**
31
40
  * Classname will be applied to the button element.
32
41
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Trigger.d.ts","sourceRoot":"","sources":["../../../src/components/Trigger/Trigger.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAc1B,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC;AAEpC,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE7C,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE/C,MAAM,WAAW,YAAa,SAAQ,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,EAAE,SAAS,GAAG,eAAe,GAAG,eAAe,CAAC;IACrI;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;OAEG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB;;OAEG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB;;OAEG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AA4BD,QAAA,MAAM,OAAO,wFAmCZ,CAAC;AAIF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"Trigger.d.ts","sourceRoot":"","sources":["../../../src/components/Trigger/Trigger.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAc1B,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE5C,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC;AAEpC,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE7C,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE/C,MAAM,WAAW,YAAa,SAAQ,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,EAAE,SAAS,GAAG,eAAe,GAAG,eAAe,CAAC;IACrI;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;OAEG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB;;OAEG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB;;OAEG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,UAAU,CAAC,EAAE,WAAW,CAAC;IACzB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AA4BD,QAAA,MAAM,OAAO,wFA2DZ,CAAC;AAIF,eAAe,OAAO,CAAC"}
@@ -1 +1 @@
1
- {"props":{"ariaLabel":{"defaultValue":null,"description":"Sets aria-label of the trigger. ariaLabel or ariaLabelledById MUST be set!","name":"ariaLabel","parent":{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"},"declarations":[{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"}],"required":false,"type":{"name":"string"}},"ariaLabelledById":{"defaultValue":null,"description":"Sets aria-labelledby of the trigger. ariaLabel or ariaLabelledById MUST be set!","name":"ariaLabelledById","parent":{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"},"declarations":[{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"}],"required":false,"type":{"name":"string"}},"variant":{"defaultValue":{"value":"help"},"description":"Controls the icon and color. Default: help.","name":"variant","parent":{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"},"declarations":[{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"}],"required":false,"type":{"name":"enum","raw":"\"help\"","value":[{"value":"\"help\""}]}},"mode":{"defaultValue":{"value":"onlight"},"description":"Changes the design based on the background the trigger is placed on. Default: onlight.","name":"mode","parent":{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"},"declarations":[{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"}],"required":false,"type":{"name":"enum","raw":"TriggerMode","value":[{"value":"\"onlight\""},{"value":"\"ondark\""}]}},"size":{"defaultValue":{"value":"medium"},"description":"Size of the trigger. Default: medium.","name":"size","parent":{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"},"declarations":[{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"}],"required":false,"type":{"name":"enum","raw":"TriggerSize","value":[{"value":"\"medium\""},{"value":"\"large\""}]}},"selected":{"defaultValue":{"value":"false"},"description":"Indicates that the trigger is in use.","name":"selected","parent":{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"},"declarations":[{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"}],"required":false,"type":{"name":"boolean"}},"className":{"defaultValue":null,"description":"Classname will be applied to the button element.","name":"className","parent":{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"},"declarations":[{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"}],"required":false,"type":{"name":"string"}},"testId":{"defaultValue":null,"description":"Optional test id.","name":"testId","parent":{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"},"declarations":[{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"}],"required":false,"type":{"name":"string"}},"onClick":{"defaultValue":null,"description":"","name":"onClick","parent":{"fileName":"designsystem/node_modules/@types/react/index.d.ts","name":"DOMAttributes"},"declarations":[{"fileName":"designsystem/node_modules/@types/react/index.d.ts","name":"DOMAttributes"}],"required":false,"type":{"name":"MouseEventHandler<HTMLButtonElement>"}},"aria-haspopup":{"defaultValue":null,"description":"Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.","name":"aria-haspopup","parent":{"fileName":"designsystem/node_modules/@types/react/index.d.ts","name":"AriaAttributes"},"declarations":[{"fileName":"designsystem/node_modules/@types/react/index.d.ts","name":"AriaAttributes"}],"required":false,"type":{"name":"boolean | \"false\" | \"true\" | \"menu\" | \"listbox\" | \"tree\" | \"grid\" | \"dialog\""}},"aria-controls":{"defaultValue":null,"description":"Identifies the element (or elements) whose contents or presence are controlled by the current element.\n@see aria-owns.","name":"aria-controls","parent":{"fileName":"designsystem/node_modules/@types/react/index.d.ts","name":"AriaAttributes"},"declarations":[{"fileName":"designsystem/node_modules/@types/react/index.d.ts","name":"AriaAttributes"}],"required":false,"type":{"name":"string"}}}}
1
+ {"props":{"ariaLabel":{"defaultValue":null,"description":"Sets aria-label of the trigger. ariaLabel or ariaLabelledById MUST be set!","name":"ariaLabel","parent":{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"},"declarations":[{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"}],"required":false,"type":{"name":"string"}},"ariaLabelledById":{"defaultValue":null,"description":"Sets aria-labelledby of the trigger. ariaLabel or ariaLabelledById MUST be set!","name":"ariaLabelledById","parent":{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"},"declarations":[{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"}],"required":false,"type":{"name":"string"}},"variant":{"defaultValue":{"value":"help"},"description":"Controls the icon and color. Default: help.","name":"variant","parent":{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"},"declarations":[{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"}],"required":false,"type":{"name":"enum","raw":"\"help\"","value":[{"value":"\"help\""}]}},"mode":{"defaultValue":{"value":"onlight"},"description":"Changes the design based on the background the trigger is placed on. Default: onlight.","name":"mode","parent":{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"},"declarations":[{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"}],"required":false,"type":{"name":"enum","raw":"TriggerMode","value":[{"value":"\"onlight\""},{"value":"\"ondark\""}]}},"size":{"defaultValue":{"value":"medium"},"description":"Size of the trigger. Default: medium.","name":"size","parent":{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"},"declarations":[{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"}],"required":false,"type":{"name":"enum","raw":"TriggerSize","value":[{"value":"\"medium\""},{"value":"\"large\""}]}},"selected":{"defaultValue":{"value":"false"},"description":"Indicates that the trigger is in use.","name":"selected","parent":{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"},"declarations":[{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"}],"required":false,"type":{"name":"boolean"}},"isHovered":{"defaultValue":null,"description":"Indicates that the trigger is hovered. Used in combination with htmlMarkup=span to force visual hover state.","name":"isHovered","parent":{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"},"declarations":[{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"}],"required":false,"type":{"name":"boolean"}},"htmlMarkup":{"defaultValue":{"value":"button"},"description":"Changes the underlying element of the trigger. If set to span, the trigger will be a non-interactive icon. Default: button","name":"htmlMarkup","parent":{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"},"declarations":[{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"}],"required":false,"type":{"name":"enum","raw":"TriggerTags","value":[{"value":"\"button\""},{"value":"\"span\""}]}},"className":{"defaultValue":null,"description":"Classname will be applied to the button element.","name":"className","parent":{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"},"declarations":[{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"}],"required":false,"type":{"name":"string"}},"testId":{"defaultValue":null,"description":"Optional test id.","name":"testId","parent":{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"},"declarations":[{"fileName":"src/components/Trigger/Trigger.tsx","name":"TriggerProps"}],"required":false,"type":{"name":"string"}},"onClick":{"defaultValue":null,"description":"","name":"onClick","parent":{"fileName":"designsystem/node_modules/@types/react/index.d.ts","name":"DOMAttributes"},"declarations":[{"fileName":"designsystem/node_modules/@types/react/index.d.ts","name":"DOMAttributes"}],"required":false,"type":{"name":"MouseEventHandler<HTMLButtonElement>"}},"aria-haspopup":{"defaultValue":null,"description":"Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by an element.","name":"aria-haspopup","parent":{"fileName":"designsystem/node_modules/@types/react/index.d.ts","name":"AriaAttributes"},"declarations":[{"fileName":"designsystem/node_modules/@types/react/index.d.ts","name":"AriaAttributes"}],"required":false,"type":{"name":"boolean | \"false\" | \"true\" | \"menu\" | \"listbox\" | \"tree\" | \"grid\" | \"dialog\""}},"aria-controls":{"defaultValue":null,"description":"Identifies the element (or elements) whose contents or presence are controlled by the current element.\n@see aria-owns.","name":"aria-controls","parent":{"fileName":"designsystem/node_modules/@types/react/index.d.ts","name":"AriaAttributes"},"declarations":[{"fileName":"designsystem/node_modules/@types/react/index.d.ts","name":"AriaAttributes"}],"required":false,"type":{"name":"string"}}}}
@@ -1,2 +1,2 @@
1
- import e from"react";import x from"classnames";import{getIcon as y,Icon as E}from"../Icons/Icon.js";import{IconSize as n,AnalyticsId as I}from"../../constants.js";import{useHover as M}from"../../hooks/useHover.js";import{getColor as s}from"../../theme/currys/color.js";import{getAriaLabelAttributes as Z}from"../../utils/accessibility.js";import{mergeRefs as v}from"../../utils/refs.js";import c from"./styles.module.scss";import"../../hooks/useUuid.js";import"../../uuid.js";import"../../utils/environment.js";import"../../theme/index.js";import"../../theme/grid.js";import"../../theme/palette.js";import"../../theme/spacers.js";const $=({size:t,isHovered:o})=>y({size:t,isHovered:o,normal:e.createElement("path",{d:"M18.854 19.678c0-2.268 1.701-4.74 5.126-4.74 3.358 0 5.172 2.222 5.172 4.536 0 1.793-.952 3.064-2.268 3.992l-.976.682c-.749.521-1.134 1.27-1.134 2.154 0 .047 0 .16.023.296h-2.269a46.85 46.85 0 0 0-.01-.139 8.554 8.554 0 0 1-.036-.724c0-1.36.522-2.471 1.84-3.424l1.042-.75c.75-.544 1.066-1.201 1.066-1.974 0-1.178-.793-2.29-2.45-2.29-1.679 0-2.563 1.293-2.563 2.585 0 .34.045.772.136 1.022l-2.564-.181a3.903 3.903 0 0 1-.135-1.044Zm3.176 10.186c0-.908.726-1.678 1.656-1.678.908 0 1.656.77 1.656 1.678 0 .907-.748 1.657-1.656 1.657-.93 0-1.656-.75-1.656-1.657Z"}),normalHover:e.createElement("path",{d:"M18.854 18.178c0-2.268 1.701-4.74 5.126-4.74 3.358 0 5.172 2.223 5.172 4.536 0 1.793-.952 3.064-2.268 3.992l-.976.682c-.749.521-1.134 1.27-1.134 2.154 0 .047 0 .16.023.296h-2.269a46.85 46.85 0 0 0-.01-.139 8.554 8.554 0 0 1-.036-.724c0-1.36.522-2.471 1.838-3.424l1.044-.75c.75-.544 1.066-1.201 1.066-1.974 0-1.178-.793-2.29-2.45-2.29-1.679 0-2.563 1.293-2.563 2.585 0 .34.045.772.135 1.022l-2.563-.181a3.903 3.903 0 0 1-.135-1.044Zm3.176 11.686c0-.908.725-1.678 1.655-1.678.908 0 1.657.77 1.657 1.678 0 .907-.749 1.657-1.657 1.657-.93 0-1.655-.75-1.655-1.657Z"}),xSmall:e.createElement("path",{d:"M23.98 14.937c-3.425 0-5.127 2.473-5.127 4.741 0 .363.047.726.137 1.044l2.563.182c-.09-.25-.136-.681-.136-1.022 0-1.292.885-2.586 2.563-2.586 1.658 0 2.45 1.112 2.45 2.291 0 .772-.317 1.43-1.065 1.974l-1.043.749c-1.317.953-1.84 2.065-1.84 3.425 0 .319.024.567.047.862h2.267c-.021-.135-.021-.25-.021-.295 0-.884.385-1.633 1.133-2.154l.976-.681c1.317-.93 2.27-2.2 2.27-3.993 0-2.314-1.816-4.537-5.174-4.537m-.294 13.248c-.93 0-1.656.773-1.656 1.678a1.65 1.65 0 0 0 1.656 1.657c.907 0 1.656-.748 1.656-1.657 0-.905-.749-1.678-1.656-1.678"}),xSmallHover:e.createElement("path",{d:"M18.853 18.289c0-2.268 1.701-4.742 5.127-4.742 3.357 0 5.173 2.223 5.173 4.537 0 1.794-.953 3.065-2.27 3.994l-.976.681c-.747.52-1.133 1.27-1.133 2.154 0 .046 0 .16.022.295h-2.267a39.324 39.324 0 0 0-.01-.125 8.468 8.468 0 0 1-.037-.737c0-1.36.523-2.472 1.839-3.425l1.043-.75c.748-.543 1.065-1.201 1.065-1.973 0-1.18-.792-2.29-2.45-2.29-1.678 0-2.562 1.293-2.562 2.585 0 .341.045.772.135 1.022l-2.563-.183a3.914 3.914 0 0 1-.136-1.043Zm3.176 11.575c0-.907.726-1.679 1.656-1.679.908 0 1.657.772 1.657 1.68 0 .907-.749 1.656-1.657 1.656-.93 0-1.656-.749-1.656-1.657Z"})}),A=$,C={help:A},R={medium:n.XSmall,large:n.Small},T=(t,o,l)=>{if(t==="ondark")return"white";const r=l?800:600;if(o==="help")return s("plum",r);if(o==="info")return s("blueberry",r)},p=e.forwardRef(({ariaLabel:t,ariaLabelledById:o,variant:l="help",mode:r="onlight",size:a="medium",selected:m=!1,className:g,testId:f,...d},h)=>{const{isHovered:i,hoverRef:u}=M(),S=x(c.trigger,r==="onlight"&&c[`trigger--${l}`],c[`trigger--${r}`],c[`trigger--${a}`],g),b=Z({label:t,id:o}),H=T(r,l,i||m);return e.createElement("button",{"aria-label":t,type:"button","data-testid":f,"data-analyticsid":I.Trigger,className:S,ref:v([h,u]),"aria-expanded":m,...b,...d},e.createElement(E,{svgIcon:C[l],size:R[a],color:H,isHovered:i}))});p.displayName="Trigger";const Q=p;export{Q as default};
1
+ import{T as o}from"../../Trigger.js";import"react";import"classnames";import"../Icons/Icon.js";import"../../constants.js";import"../../hooks/useUuid.js";import"../../uuid.js";import"../../utils/environment.js";import"../../hooks/useHover.js";import"../../hooks/usePseudoClasses.js";import"../../theme/currys/color.js";import"../../theme/index.js";import"../../theme/grid.js";import"../../theme/palette.js";import"../../theme/spacers.js";import"../../utils/accessibility.js";import"../../utils/refs.js";import"./styles.module.scss";export{o as default};
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/Trigger/HelpSign.tsx","../../../src/components/Trigger/Trigger.tsx"],"sourcesContent":["import React from 'react';\n\nimport { getIcon, SvgPathProps } from '../Icons';\n\nconst HelpSign: React.FC<SvgPathProps> = ({ size, isHovered }: SvgPathProps): React.ReactElement => {\n const normal = (\n <path d=\"M18.854 19.678c0-2.268 1.701-4.74 5.126-4.74 3.358 0 5.172 2.222 5.172 4.536 0 1.793-.952 3.064-2.268 3.992l-.976.682c-.749.521-1.134 1.27-1.134 2.154 0 .047 0 .16.023.296h-2.269a46.85 46.85 0 0 0-.01-.139 8.554 8.554 0 0 1-.036-.724c0-1.36.522-2.471 1.84-3.424l1.042-.75c.75-.544 1.066-1.201 1.066-1.974 0-1.178-.793-2.29-2.45-2.29-1.679 0-2.563 1.293-2.563 2.585 0 .34.045.772.136 1.022l-2.564-.181a3.903 3.903 0 0 1-.135-1.044Zm3.176 10.186c0-.908.726-1.678 1.656-1.678.908 0 1.656.77 1.656 1.678 0 .907-.748 1.657-1.656 1.657-.93 0-1.656-.75-1.656-1.657Z\" />\n );\n\n const normalHover = (\n <path d=\"M18.854 18.178c0-2.268 1.701-4.74 5.126-4.74 3.358 0 5.172 2.223 5.172 4.536 0 1.793-.952 3.064-2.268 3.992l-.976.682c-.749.521-1.134 1.27-1.134 2.154 0 .047 0 .16.023.296h-2.269a46.85 46.85 0 0 0-.01-.139 8.554 8.554 0 0 1-.036-.724c0-1.36.522-2.471 1.838-3.424l1.044-.75c.75-.544 1.066-1.201 1.066-1.974 0-1.178-.793-2.29-2.45-2.29-1.679 0-2.563 1.293-2.563 2.585 0 .34.045.772.135 1.022l-2.563-.181a3.903 3.903 0 0 1-.135-1.044Zm3.176 11.686c0-.908.725-1.678 1.655-1.678.908 0 1.657.77 1.657 1.678 0 .907-.749 1.657-1.657 1.657-.93 0-1.655-.75-1.655-1.657Z\" />\n );\n\n const xSmall = (\n <path d=\"M23.98 14.937c-3.425 0-5.127 2.473-5.127 4.741 0 .363.047.726.137 1.044l2.563.182c-.09-.25-.136-.681-.136-1.022 0-1.292.885-2.586 2.563-2.586 1.658 0 2.45 1.112 2.45 2.291 0 .772-.317 1.43-1.065 1.974l-1.043.749c-1.317.953-1.84 2.065-1.84 3.425 0 .319.024.567.047.862h2.267c-.021-.135-.021-.25-.021-.295 0-.884.385-1.633 1.133-2.154l.976-.681c1.317-.93 2.27-2.2 2.27-3.993 0-2.314-1.816-4.537-5.174-4.537m-.294 13.248c-.93 0-1.656.773-1.656 1.678a1.65 1.65 0 0 0 1.656 1.657c.907 0 1.656-.748 1.656-1.657 0-.905-.749-1.678-1.656-1.678\" />\n );\n\n const xSmallHover = (\n <path d=\"M18.853 18.289c0-2.268 1.701-4.742 5.127-4.742 3.357 0 5.173 2.223 5.173 4.537 0 1.794-.953 3.065-2.27 3.994l-.976.681c-.747.52-1.133 1.27-1.133 2.154 0 .046 0 .16.022.295h-2.267a39.324 39.324 0 0 0-.01-.125 8.468 8.468 0 0 1-.037-.737c0-1.36.523-2.472 1.839-3.425l1.043-.75c.748-.543 1.065-1.201 1.065-1.973 0-1.18-.792-2.29-2.45-2.29-1.678 0-2.562 1.293-2.562 2.585 0 .341.045.772.135 1.022l-2.563-.183a3.914 3.914 0 0 1-.136-1.043Zm3.176 11.575c0-.907.726-1.679 1.656-1.679.908 0 1.657.772 1.657 1.68 0 .907-.749 1.656-1.657 1.656-.93 0-1.656-.749-1.656-1.657Z\" />\n );\n\n return getIcon({ size, isHovered, normal, normalHover, xSmall, xSmallHover });\n};\n\nexport default HelpSign;\n","import React from 'react';\n\nimport classNames from 'classnames';\n\nimport HelpSign from './HelpSign';\nimport { AnalyticsId, IconSize } from '../../constants';\nimport { useHover } from '../../hooks/useHover';\nimport { getColor } from '../../theme/currys';\nimport { getAriaLabelAttributes } from '../../utils/accessibility';\nimport { mergeRefs } from '../../utils/refs';\nimport Icon, { SvgIcon } from '../Icons';\n\nimport styles from './styles.module.scss';\n\nexport type TriggerVariant = 'help'; // @todo Support variant='info' in later version\n\nexport type TriggerSize = 'medium' | 'large';\n\nexport type TriggerMode = 'onlight' | 'ondark';\n\nexport interface TriggerProps extends Pick<React.InputHTMLAttributes<HTMLButtonElement>, 'onClick' | 'aria-haspopup' | 'aria-controls'> {\n /**\n * Sets aria-label of the trigger. ariaLabel or ariaLabelledById MUST be set!\n */\n ariaLabel?: string;\n /**\n * Sets aria-labelledby of the trigger. ariaLabel or ariaLabelledById MUST be set!\n */\n ariaLabelledById?: string;\n /**\n * Controls the icon and color. Default: help.\n */\n variant?: TriggerVariant;\n /**\n * Changes the design based on the background the trigger is placed on. Default: onlight.\n */\n mode?: TriggerMode;\n /**\n * Size of the trigger. Default: medium.\n */\n size?: TriggerSize;\n /**\n * Indicates that the trigger is in use.\n */\n selected?: boolean;\n /**\n * Classname will be applied to the button element.\n */\n className?: string;\n /**\n * Optional test id.\n */\n testId?: string;\n}\n\nconst iconMap: Record<TriggerVariant, SvgIcon> = {\n help: HelpSign,\n //info: InfoSignStroke, // @todo Support variant='info' in later version\n};\n\nconst iconSizeMap: Record<TriggerSize, IconSize> = {\n medium: IconSize.XSmall,\n large: IconSize.Small,\n};\n\nconst getIconColor = (mode: TriggerMode, variant: TriggerVariant, isActive: boolean): string | undefined => {\n if (mode === 'ondark') {\n return 'white';\n }\n\n const depth = isActive ? 800 : 600;\n\n if (variant === 'help') {\n return getColor('plum', depth);\n }\n\n if (variant === 'info') {\n return getColor('blueberry', depth);\n }\n};\n\nconst Trigger = React.forwardRef<HTMLButtonElement, TriggerProps>(\n (\n { ariaLabel, ariaLabelledById, variant = 'help', mode = 'onlight', size = 'medium', selected = false, className, testId, ...rest },\n ref\n ) => {\n const { isHovered, hoverRef } = useHover<HTMLButtonElement>();\n\n const triggerClasses = classNames(\n styles.trigger,\n mode === 'onlight' && styles[`trigger--${variant}`], // variants look the same when mode=ondark\n styles[`trigger--${mode}`],\n styles[`trigger--${size}`],\n className\n );\n\n const ariaLabelAttributes = getAriaLabelAttributes({ label: ariaLabel, id: ariaLabelledById });\n\n const iconColor = getIconColor(mode, variant, isHovered || selected);\n\n return (\n <button\n aria-label={ariaLabel}\n type=\"button\"\n data-testid={testId}\n data-analyticsid={AnalyticsId.Trigger}\n className={triggerClasses}\n ref={mergeRefs([ref, hoverRef])}\n aria-expanded={selected}\n {...ariaLabelAttributes}\n {...rest}\n >\n <Icon svgIcon={iconMap[variant]} size={iconSizeMap[size]} color={iconColor} isHovered={isHovered} />\n </button>\n );\n }\n);\n\nTrigger.displayName = 'Trigger';\n\nexport default Trigger;\n"],"names":["HelpSign","size","isHovered","getIcon","React","HelpSign$1","iconMap","iconSizeMap","IconSize","getIconColor","mode","variant","isActive","depth","getColor","Trigger","ariaLabel","ariaLabelledById","selected","className","testId","rest","ref","hoverRef","useHover","triggerClasses","classNames","styles","ariaLabelAttributes","getAriaLabelAttributes","iconColor","AnalyticsId","mergeRefs","Icon","Trigger$1"],"mappings":"snBAIA,MAAMA,EAAmC,CAAC,CAAE,KAAAC,EAAM,UAAAC,KAiBzCC,EAAQ,CAAE,KAAAF,EAAM,UAAAC,EAAW,OAfhCE,EAAA,cAAC,OAAK,CAAA,EAAE,gjBAAijB,CAAA,EAejhB,YAXxCA,EAAA,cAAC,OAAK,CAAA,EAAE,ijBAAkjB,CAAA,EAWrgB,OAPrDA,EAAA,cAAC,OAAK,CAAA,EAAE,whBAAyhB,CAAA,EAOpe,YAH7DA,EAAA,cAAC,OAAK,CAAA,EAAE,qjBAAsjB,CAAA,EAGpf,EAG9EC,EAAeL,EC+BTM,EAA2C,CAC/C,KAAMN,CAER,EAEMO,EAA6C,CACjD,OAAQC,EAAS,OACjB,MAAOA,EAAS,KAClB,EAEMC,EAAe,CAACC,EAAmBC,EAAyBC,IAA0C,CAC1G,GAAIF,IAAS,SACJ,MAAA,QAGH,MAAAG,EAAQD,EAAW,IAAM,IAE/B,GAAID,IAAY,OACP,OAAAG,EAAS,OAAQD,CAAK,EAG/B,GAAIF,IAAY,OACP,OAAAG,EAAS,YAAaD,CAAK,CAEtC,EAEME,EAAUX,EAAM,WACpB,CACE,CAAE,UAAAY,EAAW,iBAAAC,EAAkB,QAAAN,EAAU,OAAQ,KAAAD,EAAO,UAAW,KAAAT,EAAO,SAAU,SAAAiB,EAAW,GAAO,UAAAC,EAAW,OAAAC,EAAQ,GAAGC,GAC5HC,IACG,CACH,KAAM,CAAE,UAAApB,EAAW,SAAAqB,CAAS,EAAIC,EAA4B,EAEtDC,EAAiBC,EACrBC,EAAO,QACPjB,IAAS,WAAaiB,EAAO,YAAYhB,GAAS,EAClDgB,EAAO,YAAYjB,GAAM,EACzBiB,EAAO,YAAY1B,GAAM,EACzBkB,CAAA,EAGIS,EAAsBC,EAAuB,CAAE,MAAOb,EAAW,GAAIC,EAAkB,EAEvFa,EAAYrB,EAAaC,EAAMC,EAAST,GAAagB,CAAQ,EAGjE,OAAAd,EAAA,cAAC,SAAA,CACC,aAAYY,EACZ,KAAK,SACL,cAAaI,EACb,mBAAkBW,EAAY,QAC9B,UAAWN,EACX,IAAKO,EAAU,CAACV,EAAKC,CAAQ,CAAC,EAC9B,gBAAeL,EACd,GAAGU,EACH,GAAGP,CAAA,EAEHjB,EAAA,cAAA6B,EAAA,CAAK,QAAS3B,EAAQK,CAAO,EAAG,KAAMJ,EAAYN,CAAI,EAAG,MAAO6B,EAAW,UAAA5B,CAAsB,CAAA,CAAA,CAGxG,CACF,EAEAa,EAAQ,YAAc,UAEtB,MAAAmB,EAAenB"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -32,53 +32,56 @@
32
32
 
33
33
  @each $variant, $color in $variant-map {
34
34
  &--#{$variant} {
35
- box-shadow: inset 0 0 0 1.5px map.get($palette-map, #{$color}600);
35
+ box-shadow: inset 0 0 0 1.6px map.get($palette-map, #{$color}600);
36
36
 
37
- &:hover {
38
- box-shadow: inset 0 0 0 1.5px map.get($palette-map, #{$color}800);
39
- background-color: rgba-to-rgb(rgba(map.get($palette-map, #{$color}600), 0.1));
37
+ &:hover,
38
+ &#{$trigger}--hovered {
39
+ box-shadow: inset 0 0 0 1.6px map.get($palette-map, #{$color}800);
40
+ background-color: rgba(map.get($palette-map, #{$color}600), 0.1);
40
41
  }
41
42
 
42
43
  &:focus-visible {
43
- box-shadow: inset 0 0 0 1.5px $black;
44
- outline: 1.5px solid $black;
44
+ box-shadow: inset 0 0 0 1.6px $black;
45
+ outline: 1.6px solid $black;
45
46
  }
46
47
 
47
- &#{$trigger}[aria-expanded='true'] {
48
- box-shadow: inset 0 0 0 1.5px map.get($palette-map, #{$color}800);
49
- background-color: rgba-to-rgb(rgba(map.get($palette-map, #{$color}600), 0.1));
48
+ &#{$trigger}--selected {
49
+ box-shadow: inset 0 0 0 1.6px map.get($palette-map, #{$color}800);
50
+ background-color: rgba(map.get($palette-map, #{$color}600), 0.1);
50
51
 
51
- &:hover {
52
- background-color: rgba-to-rgb(rgba(map.get($palette-map, #{$color}600), 0.2));
52
+ &:hover,
53
+ &#{$trigger}--hovered {
54
+ background-color: rgba(map.get($palette-map, #{$color}600), 0.2);
53
55
  }
54
56
 
55
57
  &:focus {
56
- background-color: rgba-to-rgb(rgba(map.get($palette-map, #{$color}600), 0.1));
58
+ background-color: rgba(map.get($palette-map, #{$color}600), 0.1);
57
59
  }
58
60
  }
59
61
  }
60
62
  }
61
63
 
62
64
  &--ondark {
63
- box-shadow: inset 0 0 0 1.5px $white;
65
+ box-shadow: inset 0 0 0 1.6px $white;
64
66
 
65
67
  &:hover {
66
- background-color: rgba-to-rgb(rgba($plum50, 0.2), $plum600);
68
+ background-color: rgba($plum50, 0.2);
67
69
  }
68
70
 
69
71
  &:focus-visible {
70
- outline: 1.5px solid $white;
72
+ outline: 1.6px solid $white;
71
73
  }
72
74
 
73
- &#{$trigger}[aria-expanded='true'] {
74
- background-color: rgba-to-rgb(rgba($plum50, 0.1), $plum600);
75
+ &#{$trigger}--selected {
76
+ background-color: rgba($plum50, 0.1);
75
77
 
76
- &:hover {
77
- background-color: rgba-to-rgb(rgba($plum50, 0.2), $plum600);
78
+ &:hover,
79
+ &#{$trigger}--hovered {
80
+ background-color: rgba($plum50, 0.2);
78
81
  }
79
82
 
80
83
  &:focus-visible {
81
- background-color: rgba-to-rgb(rgba($plum50, 0.1), $plum600);
84
+ background-color: rgba($plum50, 0.1);
82
85
  }
83
86
  }
84
87
  }
@@ -1,10 +1,12 @@
1
1
  export type Styles = {
2
2
  trigger: string;
3
3
  'trigger--help': string;
4
+ 'trigger--hovered': string;
4
5
  'trigger--info': string;
5
6
  'trigger--large': string;
6
7
  'trigger--medium': string;
7
8
  'trigger--ondark': string;
9
+ 'trigger--selected': string;
8
10
  };
9
11
 
10
12
  export type ClassNames = keyof Styles;
package/constants.d.ts CHANGED
@@ -59,13 +59,14 @@ export declare enum AnalyticsId {
59
59
  Dropdown = "dropdown",
60
60
  Duolist = "duolist",
61
61
  Expander = "expander",
62
- ExpanderList = "expander-list",
63
- ExpanderListExpander = "expander-list-expander",
64
62
  ExpanderHierarchy = "expander-hierarchy",
65
63
  ExpanderHierarchyExpander = "expander-hierarchy-expander",
64
+ ExpanderList = "expander-list",
65
+ ExpanderListExpander = "expander-list-expander",
66
66
  FormGroup = "form-group",
67
67
  FormLayout = "form-layout",
68
68
  HelpBubble = "help-bubble",
69
+ HelpQuestion = "help-question",
69
70
  HighlightBox = "highlight-box",
70
71
  Icon = "icon",
71
72
  Input = "input",
@@ -82,12 +83,12 @@ export declare enum AnalyticsId {
82
83
  PopMenu = "pop-menu",
83
84
  PopOver = "pop-over",
84
85
  Portal = "portal",
85
- Stepper = "stepper",
86
86
  RadioButton = "radio-button",
87
87
  Select = "select",
88
88
  Slider = "slider",
89
89
  Spacer = "spacer",
90
90
  StatusDot = "status-dot",
91
+ Stepper = "stepper",
91
92
  Sublabel = "sublabel",
92
93
  Table = "table",
93
94
  Tag = "tag",
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,oBAAY,QAAQ;IAClB,OAAO,KAAK;IACZ,MAAM,KAAK;IACX,KAAK,KAAK;IACV,MAAM,KAAK;IACX,KAAK,KAAK;IACV,MAAM,MAAM;CACb;AAED,oBAAY,MAAM;IAChB,KAAK,UAAU;IACf,eAAe,QAAQ;CACxB;AAED,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAE7C,MAAM,WAAW,eAAe;IAC9B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC9C,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC;IACnC,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;AAEnE,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,YAAY,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EACX,EAAE,GACF,aAAa,GACb,aAAa,GACb,4BAA4B,GAC5B,QAAQ,GACR,0BAA0B,GAC1B,eAAe,GACf,iCAAiC,GACjC,YAAY,CAAC;CAClB;AAED,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;AAEjF,oBAAY,QAAQ;IAClB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,WAAW,gBAAgB;IAC3B,MAAM,WAAW;IACjB,SAAS,cAAc;CACxB;AAED,oBAAY,WAAW;IACrB,MAAM,WAAW;IACjB,OAAO,YAAY;CACpB;AAED,oBAAY,WAAW;IACrB,UAAU,gBAAgB;IAC1B,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,iBAAiB,uBAAuB;IACxC,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,YAAY,kBAAkB;IAC9B,oBAAoB,2BAA2B;IAC/C,iBAAiB,uBAAuB;IACxC,yBAAyB,gCAAgC;IACzD,SAAS,eAAe;IACxB,UAAU,gBAAgB;IAC1B,UAAU,gBAAgB;IAC1B,YAAY,kBAAkB;IAC9B,IAAI,SAAS;IACb,KAAK,UAAU;IACf,KAAK,UAAU;IACf,IAAI,SAAS;IACb,QAAQ,cAAc;IACtB,IAAI,SAAS;IACb,MAAM,WAAW;IACjB,IAAI,SAAS;IACb,KAAK,UAAU;IACf,iBAAiB,uBAAuB;IACxC,KAAK,UAAU;IACf,SAAS,eAAe;IACxB,OAAO,aAAa;IACpB,OAAO,aAAa;IACpB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,WAAW,iBAAiB;IAC5B,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,SAAS,eAAe;IACxB,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,GAAG,QAAQ;IACX,OAAO,aAAa;IACpB,QAAQ,aAAa;IACrB,IAAI,SAAS;IACb,KAAK,UAAU;IACf,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,UAAU,eAAe;CAC1B;AAED,oBAAY,gBAAgB;IAC1B,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,IAAI,SAAS;IACb,GAAG,QAAQ;CACZ"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,oBAAY,QAAQ;IAClB,OAAO,KAAK;IACZ,MAAM,KAAK;IACX,KAAK,KAAK;IACV,MAAM,KAAK;IACX,KAAK,KAAK;IACV,MAAM,MAAM;CACb;AAED,oBAAY,MAAM;IAChB,KAAK,UAAU;IACf,eAAe,QAAQ;CACxB;AAED,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAE7C,MAAM,WAAW,eAAe;IAC9B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC9C,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC;IACnC,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;AAEnE,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,YAAY,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EACX,EAAE,GACF,aAAa,GACb,aAAa,GACb,4BAA4B,GAC5B,QAAQ,GACR,0BAA0B,GAC1B,eAAe,GACf,iCAAiC,GACjC,YAAY,CAAC;CAClB;AAED,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC;AAEjF,oBAAY,QAAQ;IAClB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,WAAW,gBAAgB;IAC3B,MAAM,WAAW;IACjB,SAAS,cAAc;CACxB;AAED,oBAAY,WAAW;IACrB,MAAM,WAAW;IACjB,OAAO,YAAY;CACpB;AAED,oBAAY,WAAW;IACrB,UAAU,gBAAgB;IAC1B,MAAM,WAAW;IACjB,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,iBAAiB,uBAAuB;IACxC,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,iBAAiB,uBAAuB;IACxC,yBAAyB,gCAAgC;IACzD,YAAY,kBAAkB;IAC9B,oBAAoB,2BAA2B;IAC/C,SAAS,eAAe;IACxB,UAAU,gBAAgB;IAC1B,UAAU,gBAAgB;IAC1B,YAAY,kBAAkB;IAC9B,YAAY,kBAAkB;IAC9B,IAAI,SAAS;IACb,KAAK,UAAU;IACf,KAAK,UAAU;IACf,IAAI,SAAS;IACb,QAAQ,cAAc;IACtB,IAAI,SAAS;IACb,MAAM,WAAW;IACjB,IAAI,SAAS;IACb,KAAK,UAAU;IACf,iBAAiB,uBAAuB;IACxC,KAAK,UAAU;IACf,SAAS,eAAe;IACxB,OAAO,aAAa;IACpB,OAAO,aAAa;IACpB,MAAM,WAAW;IACjB,WAAW,iBAAiB;IAC5B,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,SAAS,eAAe;IACxB,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,GAAG,QAAQ;IACX,OAAO,aAAa;IACpB,QAAQ,aAAa;IACrB,IAAI,SAAS;IACb,KAAK,UAAU;IACf,OAAO,YAAY;IACnB,OAAO,YAAY;IACnB,UAAU,eAAe;CAC1B;AAED,oBAAY,gBAAgB;IAC1B,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,IAAI,SAAS;IACb,GAAG,QAAQ;CACZ"}
package/constants.js CHANGED
@@ -1,2 +1,2 @@
1
- var e=(r=>(r[r.XXSmall=24]="XXSmall",r[r.XSmall=38]="XSmall",r[r.Small=48]="Small",r[r.Medium=64]="Medium",r[r.Large=80]="Large",r[r.XLarge=130]="XLarge",r))(e||{}),o=(r=>(r[r.Modal=13e5]="Modal",r[r.ExpanderTrigger=1e4]="ExpanderTrigger",r))(o||{});const l=12;var p=(r=>(r.onwhite="onwhite",r.ongrey="ongrey",r.onblueberry="onblueberry",r.ondark="ondark",r.oninvalid="oninvalid",r))(p||{}),a=(r=>(r.normal="normal",r.bigform="bigform",r))(a||{}),g=(r=>(r.AnchorLink="anchor-link",r.Avatar="avatar",r.Badge="badge",r.Button="button",r.Checkbox="checkbox",r.Close="close",r.DictionaryTrigger="dictionary-trigger",r.Dropdown="dropdown",r.Duolist="duolist",r.Expander="expander",r.ExpanderList="expander-list",r.ExpanderListExpander="expander-list-expander",r.ExpanderHierarchy="expander-hierarchy",r.ExpanderHierarchyExpander="expander-hierarchy-expander",r.FormGroup="form-group",r.FormLayout="form-layout",r.HelpBubble="help-bubble",r.HighlightBox="highlight-box",r.Icon="icon",r.Input="input",r.Label="label",r.Link="link",r.LinkList="link-list",r.List="list",r.Loader="loader",r.Logo="logo",r.Modal="modal",r.NotificationPanel="notification-panel",r.Panel="panel",r.PanelList="panel-list",r.PopMenu="pop-menu",r.PopOver="pop-over",r.Portal="portal",r.Stepper="stepper",r.RadioButton="radio-button",r.Select="select",r.Slider="slider",r.Spacer="spacer",r.StatusDot="status-dot",r.Sublabel="sublabel",r.Table="table",r.Tag="tag",r.TagList="tag-list",r.Textarea="textarea",r.Tile="tile",r.Title="title",r.Tooltip="tooltip",r.Trigger="trigger",r.Validation="validation",r))(g||{}),u=(r=>(r.Enter="Enter",r.Escape="Escape",r.ArrowDown="ArrowDown",r.ArrowUp="ArrowUp",r.Home="Home",r.End="End",r))(u||{});export{l as AVERAGE_CHARACTER_WIDTH_PX,g as AnalyticsId,p as FormMode,a as FormVariant,e as IconSize,u as KeyboardEventKey,o as ZIndex};
1
+ var e=(r=>(r[r.XXSmall=24]="XXSmall",r[r.XSmall=38]="XSmall",r[r.Small=48]="Small",r[r.Medium=64]="Medium",r[r.Large=80]="Large",r[r.XLarge=130]="XLarge",r))(e||{}),o=(r=>(r[r.Modal=13e5]="Modal",r[r.ExpanderTrigger=1e4]="ExpanderTrigger",r))(o||{});const l=12;var p=(r=>(r.onwhite="onwhite",r.ongrey="ongrey",r.onblueberry="onblueberry",r.ondark="ondark",r.oninvalid="oninvalid",r))(p||{}),a=(r=>(r.normal="normal",r.bigform="bigform",r))(a||{}),g=(r=>(r.AnchorLink="anchor-link",r.Avatar="avatar",r.Badge="badge",r.Button="button",r.Checkbox="checkbox",r.Close="close",r.DictionaryTrigger="dictionary-trigger",r.Dropdown="dropdown",r.Duolist="duolist",r.Expander="expander",r.ExpanderHierarchy="expander-hierarchy",r.ExpanderHierarchyExpander="expander-hierarchy-expander",r.ExpanderList="expander-list",r.ExpanderListExpander="expander-list-expander",r.FormGroup="form-group",r.FormLayout="form-layout",r.HelpBubble="help-bubble",r.HelpQuestion="help-question",r.HighlightBox="highlight-box",r.Icon="icon",r.Input="input",r.Label="label",r.Link="link",r.LinkList="link-list",r.List="list",r.Loader="loader",r.Logo="logo",r.Modal="modal",r.NotificationPanel="notification-panel",r.Panel="panel",r.PanelList="panel-list",r.PopMenu="pop-menu",r.PopOver="pop-over",r.Portal="portal",r.RadioButton="radio-button",r.Select="select",r.Slider="slider",r.Spacer="spacer",r.StatusDot="status-dot",r.Stepper="stepper",r.Sublabel="sublabel",r.Table="table",r.Tag="tag",r.TagList="tag-list",r.Textarea="textarea",r.Tile="tile",r.Title="title",r.Tooltip="tooltip",r.Trigger="trigger",r.Validation="validation",r))(g||{}),u=(r=>(r.Enter="Enter",r.Escape="Escape",r.ArrowDown="ArrowDown",r.ArrowUp="ArrowUp",r.Home="Home",r.End="End",r))(u||{});export{l as AVERAGE_CHARACTER_WIDTH_PX,g as AnalyticsId,p as FormMode,a as FormVariant,e as IconSize,u as KeyboardEventKey,o as ZIndex};
2
2
  //# sourceMappingURL=constants.js.map
package/constants.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sources":["../src/constants.ts"],"sourcesContent":["export enum IconSize {\n XXSmall = 24,\n XSmall = 38,\n Small = 48,\n Medium = 64,\n Large = 80,\n XLarge = 130,\n}\n\nexport enum ZIndex {\n Modal = 1300000,\n ExpanderTrigger = 10000,\n}\n\nexport const AVERAGE_CHARACTER_WIDTH_PX = 12;\n\nexport interface HTMLButtonProps {\n autoFocus?: boolean;\n disabled?: boolean;\n form?: string;\n formAction?: string;\n formEncType?: string;\n formMethod?: string;\n formNoValidate?: boolean;\n formTarget?: string;\n name?: string;\n type?: 'submit' | 'reset' | 'button' | string;\n value?: string | string[] | number;\n id?: string;\n}\n\nexport type AnchorTarget = '_self' | '_blank' | '_parent' | '_top';\n\nexport interface HTMLAnchorProps {\n download?: string;\n href?: string;\n hrefLang?: string;\n media?: string;\n ping?: string;\n rel?: AnchorTarget;\n target?: string;\n referrerPolicy?:\n | ''\n | 'same-origin'\n | 'no-referrer'\n | 'no-referrer-when-downgrade'\n | 'origin'\n | 'origin-when-cross-origin'\n | 'strict-origin'\n | 'strict-origin-when-cross-origin'\n | 'unsafe-url';\n}\n\nexport type ButtonVariant = 'secondary' | 'tertiary' | string | undefined | null;\n\nexport enum FormMode {\n onwhite = 'onwhite',\n ongrey = 'ongrey',\n onblueberry = 'onblueberry',\n ondark = 'ondark',\n oninvalid = 'oninvalid',\n}\n\nexport enum FormVariant {\n normal = 'normal',\n bigform = 'bigform',\n}\n\nexport enum AnalyticsId {\n AnchorLink = 'anchor-link',\n Avatar = 'avatar',\n Badge = 'badge',\n Button = 'button',\n Checkbox = 'checkbox',\n Close = 'close',\n DictionaryTrigger = 'dictionary-trigger',\n Dropdown = 'dropdown',\n Duolist = 'duolist',\n Expander = 'expander',\n ExpanderList = 'expander-list',\n ExpanderListExpander = 'expander-list-expander',\n ExpanderHierarchy = 'expander-hierarchy',\n ExpanderHierarchyExpander = 'expander-hierarchy-expander',\n FormGroup = 'form-group',\n FormLayout = 'form-layout',\n HelpBubble = 'help-bubble',\n HighlightBox = 'highlight-box',\n Icon = 'icon',\n Input = 'input',\n Label = 'label',\n Link = 'link',\n LinkList = 'link-list',\n List = 'list',\n Loader = 'loader',\n Logo = 'logo',\n Modal = 'modal',\n NotificationPanel = 'notification-panel',\n Panel = 'panel',\n PanelList = 'panel-list',\n PopMenu = 'pop-menu',\n PopOver = 'pop-over',\n Portal = 'portal',\n Stepper = 'stepper',\n RadioButton = 'radio-button',\n Select = 'select',\n Slider = 'slider',\n Spacer = 'spacer',\n StatusDot = 'status-dot',\n Sublabel = 'sublabel',\n Table = 'table',\n Tag = 'tag',\n TagList = 'tag-list',\n Textarea = 'textarea',\n Tile = 'tile',\n Title = 'title',\n Tooltip = 'tooltip',\n Trigger = 'trigger',\n Validation = 'validation',\n}\n\nexport enum KeyboardEventKey {\n Enter = 'Enter',\n Escape = 'Escape',\n ArrowDown = 'ArrowDown',\n ArrowUp = 'ArrowUp',\n Home = 'Home',\n End = 'End',\n}\n"],"names":["IconSize","ZIndex","AVERAGE_CHARACTER_WIDTH_PX","FormMode","FormVariant","AnalyticsId","KeyboardEventKey"],"mappings":"AAAY,IAAAA,GAAAA,IACVA,EAAAA,EAAA,QAAU,EAAV,EAAA,UACAA,EAAAA,EAAA,OAAS,EAAT,EAAA,SACAA,EAAAA,EAAA,MAAQ,EAAR,EAAA,QACAA,EAAAA,EAAA,OAAS,EAAT,EAAA,SACAA,EAAAA,EAAA,MAAQ,EAAR,EAAA,QACAA,EAAAA,EAAA,OAAS,GAAT,EAAA,SANUA,IAAAA,GAAA,CAAA,CAAA,EASAC,GAAAA,IACVA,EAAAA,EAAA,MAAQ,IAAR,EAAA,QACAA,EAAAA,EAAA,gBAAkB,GAAlB,EAAA,kBAFUA,IAAAA,GAAA,CAAA,CAAA,EAKL,MAAMC,EAA6B,GAyC9B,IAAAC,GAAAA,IACVA,EAAA,QAAU,UACVA,EAAA,OAAS,SACTA,EAAA,YAAc,cACdA,EAAA,OAAS,SACTA,EAAA,UAAY,YALFA,IAAAA,GAAA,CAAA,CAAA,EAQAC,GAAAA,IACVA,EAAA,OAAS,SACTA,EAAA,QAAU,UAFAA,IAAAA,GAAA,CAAA,CAAA,EAKAC,GAAAA,IACVA,EAAA,WAAa,cACbA,EAAA,OAAS,SACTA,EAAA,MAAQ,QACRA,EAAA,OAAS,SACTA,EAAA,SAAW,WACXA,EAAA,MAAQ,QACRA,EAAA,kBAAoB,qBACpBA,EAAA,SAAW,WACXA,EAAA,QAAU,UACVA,EAAA,SAAW,WACXA,EAAA,aAAe,gBACfA,EAAA,qBAAuB,yBACvBA,EAAA,kBAAoB,qBACpBA,EAAA,0BAA4B,8BAC5BA,EAAA,UAAY,aACZA,EAAA,WAAa,cACbA,EAAA,WAAa,cACbA,EAAA,aAAe,gBACfA,EAAA,KAAO,OACPA,EAAA,MAAQ,QACRA,EAAA,MAAQ,QACRA,EAAA,KAAO,OACPA,EAAA,SAAW,YACXA,EAAA,KAAO,OACPA,EAAA,OAAS,SACTA,EAAA,KAAO,OACPA,EAAA,MAAQ,QACRA,EAAA,kBAAoB,qBACpBA,EAAA,MAAQ,QACRA,EAAA,UAAY,aACZA,EAAA,QAAU,WACVA,EAAA,QAAU,WACVA,EAAA,OAAS,SACTA,EAAA,QAAU,UACVA,EAAA,YAAc,eACdA,EAAA,OAAS,SACTA,EAAA,OAAS,SACTA,EAAA,OAAS,SACTA,EAAA,UAAY,aACZA,EAAA,SAAW,WACXA,EAAA,MAAQ,QACRA,EAAA,IAAM,MACNA,EAAA,QAAU,WACVA,EAAA,SAAW,WACXA,EAAA,KAAO,OACPA,EAAA,MAAQ,QACRA,EAAA,QAAU,UACVA,EAAA,QAAU,UACVA,EAAA,WAAa,aAjDHA,IAAAA,GAAA,CAAA,CAAA,EAoDAC,GAAAA,IACVA,EAAA,MAAQ,QACRA,EAAA,OAAS,SACTA,EAAA,UAAY,YACZA,EAAA,QAAU,UACVA,EAAA,KAAO,OACPA,EAAA,IAAM,MANIA,IAAAA,GAAA,CAAA,CAAA"}
1
+ {"version":3,"file":"constants.js","sources":["../src/constants.ts"],"sourcesContent":["export enum IconSize {\n XXSmall = 24,\n XSmall = 38,\n Small = 48,\n Medium = 64,\n Large = 80,\n XLarge = 130,\n}\n\nexport enum ZIndex {\n Modal = 1300000,\n ExpanderTrigger = 10000,\n}\n\nexport const AVERAGE_CHARACTER_WIDTH_PX = 12;\n\nexport interface HTMLButtonProps {\n autoFocus?: boolean;\n disabled?: boolean;\n form?: string;\n formAction?: string;\n formEncType?: string;\n formMethod?: string;\n formNoValidate?: boolean;\n formTarget?: string;\n name?: string;\n type?: 'submit' | 'reset' | 'button' | string;\n value?: string | string[] | number;\n id?: string;\n}\n\nexport type AnchorTarget = '_self' | '_blank' | '_parent' | '_top';\n\nexport interface HTMLAnchorProps {\n download?: string;\n href?: string;\n hrefLang?: string;\n media?: string;\n ping?: string;\n rel?: AnchorTarget;\n target?: string;\n referrerPolicy?:\n | ''\n | 'same-origin'\n | 'no-referrer'\n | 'no-referrer-when-downgrade'\n | 'origin'\n | 'origin-when-cross-origin'\n | 'strict-origin'\n | 'strict-origin-when-cross-origin'\n | 'unsafe-url';\n}\n\nexport type ButtonVariant = 'secondary' | 'tertiary' | string | undefined | null;\n\nexport enum FormMode {\n onwhite = 'onwhite',\n ongrey = 'ongrey',\n onblueberry = 'onblueberry',\n ondark = 'ondark',\n oninvalid = 'oninvalid',\n}\n\nexport enum FormVariant {\n normal = 'normal',\n bigform = 'bigform',\n}\n\nexport enum AnalyticsId {\n AnchorLink = 'anchor-link',\n Avatar = 'avatar',\n Badge = 'badge',\n Button = 'button',\n Checkbox = 'checkbox',\n Close = 'close',\n DictionaryTrigger = 'dictionary-trigger',\n Dropdown = 'dropdown',\n Duolist = 'duolist',\n Expander = 'expander',\n ExpanderHierarchy = 'expander-hierarchy',\n ExpanderHierarchyExpander = 'expander-hierarchy-expander',\n ExpanderList = 'expander-list',\n ExpanderListExpander = 'expander-list-expander',\n FormGroup = 'form-group',\n FormLayout = 'form-layout',\n HelpBubble = 'help-bubble',\n HelpQuestion = 'help-question',\n HighlightBox = 'highlight-box',\n Icon = 'icon',\n Input = 'input',\n Label = 'label',\n Link = 'link',\n LinkList = 'link-list',\n List = 'list',\n Loader = 'loader',\n Logo = 'logo',\n Modal = 'modal',\n NotificationPanel = 'notification-panel',\n Panel = 'panel',\n PanelList = 'panel-list',\n PopMenu = 'pop-menu',\n PopOver = 'pop-over',\n Portal = 'portal',\n RadioButton = 'radio-button',\n Select = 'select',\n Slider = 'slider',\n Spacer = 'spacer',\n StatusDot = 'status-dot',\n Stepper = 'stepper',\n Sublabel = 'sublabel',\n Table = 'table',\n Tag = 'tag',\n TagList = 'tag-list',\n Textarea = 'textarea',\n Tile = 'tile',\n Title = 'title',\n Tooltip = 'tooltip',\n Trigger = 'trigger',\n Validation = 'validation',\n}\n\nexport enum KeyboardEventKey {\n Enter = 'Enter',\n Escape = 'Escape',\n ArrowDown = 'ArrowDown',\n ArrowUp = 'ArrowUp',\n Home = 'Home',\n End = 'End',\n}\n"],"names":["IconSize","ZIndex","AVERAGE_CHARACTER_WIDTH_PX","FormMode","FormVariant","AnalyticsId","KeyboardEventKey"],"mappings":"AAAY,IAAAA,GAAAA,IACVA,EAAAA,EAAA,QAAU,EAAV,EAAA,UACAA,EAAAA,EAAA,OAAS,EAAT,EAAA,SACAA,EAAAA,EAAA,MAAQ,EAAR,EAAA,QACAA,EAAAA,EAAA,OAAS,EAAT,EAAA,SACAA,EAAAA,EAAA,MAAQ,EAAR,EAAA,QACAA,EAAAA,EAAA,OAAS,GAAT,EAAA,SANUA,IAAAA,GAAA,CAAA,CAAA,EASAC,GAAAA,IACVA,EAAAA,EAAA,MAAQ,IAAR,EAAA,QACAA,EAAAA,EAAA,gBAAkB,GAAlB,EAAA,kBAFUA,IAAAA,GAAA,CAAA,CAAA,EAKL,MAAMC,EAA6B,GAyC9B,IAAAC,GAAAA,IACVA,EAAA,QAAU,UACVA,EAAA,OAAS,SACTA,EAAA,YAAc,cACdA,EAAA,OAAS,SACTA,EAAA,UAAY,YALFA,IAAAA,GAAA,CAAA,CAAA,EAQAC,GAAAA,IACVA,EAAA,OAAS,SACTA,EAAA,QAAU,UAFAA,IAAAA,GAAA,CAAA,CAAA,EAKAC,GAAAA,IACVA,EAAA,WAAa,cACbA,EAAA,OAAS,SACTA,EAAA,MAAQ,QACRA,EAAA,OAAS,SACTA,EAAA,SAAW,WACXA,EAAA,MAAQ,QACRA,EAAA,kBAAoB,qBACpBA,EAAA,SAAW,WACXA,EAAA,QAAU,UACVA,EAAA,SAAW,WACXA,EAAA,kBAAoB,qBACpBA,EAAA,0BAA4B,8BAC5BA,EAAA,aAAe,gBACfA,EAAA,qBAAuB,yBACvBA,EAAA,UAAY,aACZA,EAAA,WAAa,cACbA,EAAA,WAAa,cACbA,EAAA,aAAe,gBACfA,EAAA,aAAe,gBACfA,EAAA,KAAO,OACPA,EAAA,MAAQ,QACRA,EAAA,MAAQ,QACRA,EAAA,KAAO,OACPA,EAAA,SAAW,YACXA,EAAA,KAAO,OACPA,EAAA,OAAS,SACTA,EAAA,KAAO,OACPA,EAAA,MAAQ,QACRA,EAAA,kBAAoB,qBACpBA,EAAA,MAAQ,QACRA,EAAA,UAAY,aACZA,EAAA,QAAU,WACVA,EAAA,QAAU,WACVA,EAAA,OAAS,SACTA,EAAA,YAAc,eACdA,EAAA,OAAS,SACTA,EAAA,OAAS,SACTA,EAAA,OAAS,SACTA,EAAA,UAAY,aACZA,EAAA,QAAU,UACVA,EAAA,SAAW,WACXA,EAAA,MAAQ,QACRA,EAAA,IAAM,MACNA,EAAA,QAAU,WACVA,EAAA,SAAW,WACXA,EAAA,KAAO,OACPA,EAAA,MAAQ,QACRA,EAAA,QAAU,UACVA,EAAA,QAAU,UACVA,EAAA,WAAa,aAlDHA,IAAAA,GAAA,CAAA,CAAA,EAqDAC,GAAAA,IACVA,EAAA,MAAQ,QACRA,EAAA,OAAS,SACTA,EAAA,UAAY,YACZA,EAAA,QAAU,UACVA,EAAA,KAAO,OACPA,EAAA,IAAM,MANIA,IAAAA,GAAA,CAAA,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"useHover.d.ts","sourceRoot":"","sources":["../../src/hooks/useHover.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+B,SAAS,EAAE,MAAM,OAAO,CAAC;AAE/D;;;;GAIG;AACH,eAAO,MAAM,QAAQ;;eAAkG,OAAO;CAyB7H,CAAC"}
1
+ {"version":3,"file":"useHover.d.ts","sourceRoot":"","sources":["../../src/hooks/useHover.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIlC;;;;GAIG;AACH,eAAO,MAAM,QAAQ;;eAAkG,OAAO;CAI7H,CAAC"}
package/hooks/useHover.js CHANGED
@@ -1,2 +1,2 @@
1
- import{useRef as H,useState as L,useEffect as I}from"react";const M=t=>{const e=t||H(null),[h,n]=L(!1),[F,s]=L(!1);return I(()=>{var v,d,a,i;const r=()=>n(!0),o=()=>n(!1),u=()=>s(!0),c=()=>s(!1);return(v=e.current)==null||v.addEventListener("mouseenter",r),(d=e.current)==null||d.addEventListener("mouseleave",o),(a=e.current)==null||a.addEventListener("focusin",u),(i=e.current)==null||i.addEventListener("focusout",c),()=>{var f,l,m,E;(f=e.current)==null||f.removeEventListener("mouseenter",r),(l=e.current)==null||l.removeEventListener("mouseleave",o),(m=e.current)==null||m.removeEventListener("focusin",u),(E=e.current)==null||E.removeEventListener("focusout",c)}},[e]),{hoverRef:e,isHovered:h||F}};export{M as useHover};
1
+ import{usePseudoClasses as t}from"./usePseudoClasses.js";import"react";const c=e=>{const{refObject:o,isHovered:s,isFocused:r}=t(e);return{hoverRef:o,isHovered:s||r}};export{c as useHover};
2
2
  //# sourceMappingURL=useHover.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useHover.js","sources":["../../src/hooks/useHover.ts"],"sourcesContent":["import { useRef, useEffect, useState, RefObject } from 'react';\n\n/**\n * Få vite når et element hovres over eller mottar fokus.\n * @param ref Element som skal observeres\n * @returns Objekt med ref og om objekt er hovered/focused\n */\nexport const useHover = <T extends HTMLElement | SVGElement>(ref?: RefObject<T>): { hoverRef: RefObject<T>; isHovered: boolean } => {\n const hoverRef = ref ? ref : useRef<T>(null);\n const [isHovered, setIsHovered] = useState(false);\n const [isFocused, setIsFocused] = useState(false);\n\n useEffect(() => {\n const handleMouseEnter = () => setIsHovered(true);\n const handleMouseLeave = () => setIsHovered(false);\n const handleFocusIn = () => setIsFocused(true);\n const handleFocusOut = () => setIsFocused(false);\n\n hoverRef.current?.addEventListener('mouseenter', handleMouseEnter);\n hoverRef.current?.addEventListener('mouseleave', handleMouseLeave);\n hoverRef.current?.addEventListener('focusin', handleFocusIn);\n hoverRef.current?.addEventListener('focusout', handleFocusOut);\n\n return (): void => {\n hoverRef.current?.removeEventListener('mouseenter', handleMouseEnter);\n hoverRef.current?.removeEventListener('mouseleave', handleMouseLeave);\n hoverRef.current?.removeEventListener('focusin', handleFocusIn);\n hoverRef.current?.removeEventListener('focusout', handleFocusOut);\n };\n }, [hoverRef]);\n\n return { hoverRef, isHovered: isHovered || isFocused };\n};\n"],"names":["useHover","ref","hoverRef","useRef","isHovered","setIsHovered","useState","isFocused","setIsFocused","useEffect","handleMouseEnter","handleMouseLeave","handleFocusIn","handleFocusOut","_a","_b","_c","_d"],"mappings":"4DAOa,MAAAA,EAAgDC,GAAuE,CAClI,MAAMC,EAAWD,GAAYE,EAAU,IAAI,EACrC,CAACC,EAAWC,CAAY,EAAIC,EAAS,EAAK,EAC1C,CAACC,EAAWC,CAAY,EAAIF,EAAS,EAAK,EAEhD,OAAAG,EAAU,IAAM,aACR,MAAAC,EAAmB,IAAML,EAAa,EAAI,EAC1CM,EAAmB,IAAMN,EAAa,EAAK,EAC3CO,EAAgB,IAAMJ,EAAa,EAAI,EACvCK,EAAiB,IAAML,EAAa,EAAK,EAEtC,OAAAM,EAAAZ,EAAA,UAAA,MAAAY,EAAS,iBAAiB,aAAcJ,IACxCK,EAAAb,EAAA,UAAA,MAAAa,EAAS,iBAAiB,aAAcJ,IACxCK,EAAAd,EAAA,UAAA,MAAAc,EAAS,iBAAiB,UAAWJ,IACrCK,EAAAf,EAAA,UAAA,MAAAe,EAAS,iBAAiB,WAAYJ,GAExC,IAAY,cACRC,EAAAZ,EAAA,UAAA,MAAAY,EAAS,oBAAoB,aAAcJ,IAC3CK,EAAAb,EAAA,UAAA,MAAAa,EAAS,oBAAoB,aAAcJ,IAC3CK,EAAAd,EAAA,UAAA,MAAAc,EAAS,oBAAoB,UAAWJ,IACxCK,EAAAf,EAAA,UAAA,MAAAe,EAAS,oBAAoB,WAAYJ,EAAc,CAClE,EACC,CAACX,CAAQ,CAAC,EAEN,CAAE,SAAAA,EAAU,UAAWE,GAAaG,CAAU,CACvD"}
1
+ {"version":3,"file":"useHover.js","sources":["../../src/hooks/useHover.ts"],"sourcesContent":["import { RefObject } from 'react';\n\nimport { usePseudoClasses } from './usePseudoClasses';\n\n/**\n * Få vite når et element hovres over eller mottar fokus.\n * @param ref Element som skal observeres\n * @returns Objekt med ref og om objekt er hovered/focused\n */\nexport const useHover = <T extends HTMLElement | SVGElement>(ref?: RefObject<T>): { hoverRef: RefObject<T>; isHovered: boolean } => {\n const { refObject, isHovered, isFocused } = usePseudoClasses(ref);\n\n return { hoverRef: refObject, isHovered: isHovered || isFocused };\n};\n"],"names":["useHover","ref","refObject","isHovered","isFocused","usePseudoClasses"],"mappings":"uEASa,MAAAA,EAAgDC,GAAuE,CAClI,KAAM,CAAE,UAAAC,EAAW,UAAAC,EAAW,UAAAC,CAAU,EAAIC,EAAiBJ,CAAG,EAEhE,MAAO,CAAE,SAAUC,EAAW,UAAWC,GAAaC,CAAU,CAClE"}
@@ -1,8 +1,8 @@
1
1
  import React from 'react';
2
- interface UseStickReturnValues {
3
- /** Toppen av elementet er utenfor vinduet */
2
+ interface UseStickyReturnValues {
3
+ /** Toppen eller bunnen av elementet er utenfor vinduet */
4
4
  isOutsideWindow: boolean;
5
- /** Innholdet er på vei helt ut av vinduet */
5
+ /** Innholdet er på vei helt ut av vinduet. Fungerer bare med stickyPosition=top. */
6
6
  isLeavingWindow: boolean;
7
7
  /** Høyde på det sticky elementet i pixler */
8
8
  offsetHeight: number | undefined;
@@ -14,8 +14,9 @@ interface UseStickReturnValues {
14
14
  *
15
15
  * @param contentRef Element som sjekkes om det er utenfor eller innenfor vinduet
16
16
  * @param stickyRef Element som skal bli sticky
17
+ * @param stickyPosition Om det sticky elementet er ment å vises øverst eller nederst på skjermen. Default: top
17
18
  * @returns Properties som kan brukes til å sette elementet sticky eller absolute
18
19
  */
19
- export declare const useSticky: (contentRef: React.RefObject<HTMLElement>, stickyRef: React.RefObject<HTMLElement>) => UseStickReturnValues;
20
+ export declare const useSticky: (contentRef: React.RefObject<HTMLElement>, stickyRef: React.RefObject<HTMLElement>, stickyPosition?: 'top' | 'bottom') => UseStickyReturnValues;
20
21
  export {};
21
22
  //# sourceMappingURL=useSticky.d.ts.map