@ilo-org/react 0.18.5 → 0.19.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 (183) hide show
  1. package/lib/cjs/_store/Accordion-entry-C81QOLKD.js +1 -0
  2. package/lib/cjs/_store/Breadcrumb-chunk-BGt10GMr.js +1 -0
  3. package/lib/cjs/_store/{Breadcrumb-entry-NNucl1rR.js → Breadcrumb-entry-BcWOPogy.js} +1 -1
  4. package/lib/cjs/_store/{Checkbox-chunk-B7P6WeNp.js → Checkbox-chunk-CfN7137m.js} +1 -1
  5. package/lib/cjs/_store/{Checkbox-entry-Cpcx9EKD.js → Checkbox-entry-CLjOEGyj.js} +1 -1
  6. package/lib/cjs/_store/ContextMenu-chunk-Ch5u_T0d.js +1 -0
  7. package/lib/cjs/_store/{ContextMenu-entry-TCdyzIRt.js → ContextMenu-entry-UwZc4yU3.js} +1 -1
  8. package/lib/cjs/_store/{DatePicker-chunk-DMvnrakE.js → DatePicker-chunk-7_96tPkC.js} +1 -1
  9. package/lib/cjs/_store/{DatePicker-entry-CweKIj3U.js → DatePicker-entry-P07fWcN3.js} +1 -1
  10. package/lib/cjs/_store/{Dropdown-chunk--_pVhTcV.js → Dropdown-chunk-Bn-MFT6c.js} +1 -1
  11. package/lib/cjs/_store/{Dropdown-entry-BcBG6Zg7.js → Dropdown-entry-BBiYoQa0.js} +1 -1
  12. package/lib/cjs/_store/{Fieldset-chunk-BsOPbe_a.js → Fieldset-chunk-C3itoJam.js} +1 -1
  13. package/lib/cjs/_store/{Fieldset-entry-BUyKAdkn.js → Fieldset-entry-DyHl-Q8i.js} +1 -1
  14. package/lib/cjs/_store/{FileUpload-chunk-CmHP-E54.js → FileUpload-chunk-BhGfPLEt.js} +1 -1
  15. package/lib/cjs/_store/{FileUpload-entry-DKzm4WvO.js → FileUpload-entry-BdKRo1oJ.js} +1 -1
  16. package/lib/cjs/_store/{Footer-chunk-CH7s6ZhB.js → Footer-chunk-DK416bgz.js} +1 -1
  17. package/lib/cjs/_store/{Footer-entry-D2QyYI38.js → Footer-entry-CI7x98xM.js} +1 -1
  18. package/lib/cjs/_store/{FormControl-chunk-08fp5TeU.js → FormControl-chunk-CxP6djqq.js} +1 -1
  19. package/lib/cjs/_store/{FormControl-entry-DN7TYc37.js → FormControl-entry-BgMV944-.js} +1 -1
  20. package/lib/cjs/_store/Hero-chunk-DiUWCO_D.js +1 -0
  21. package/lib/cjs/_store/Hero-entry-AK8D7qYH.js +1 -0
  22. package/lib/cjs/_store/HeroCard-chunk-CCNjdbBJ.js +1 -0
  23. package/lib/cjs/_store/HeroCard-entry-BGUHZKKh.js +1 -0
  24. package/lib/cjs/_store/{Input-chunk-DIcDfISq.js → Input-chunk-DVXD2O4Z.js} +1 -1
  25. package/lib/cjs/_store/{Input-entry-Cq1G_bNN.js → Input-entry-CthONy5R.js} +1 -1
  26. package/lib/cjs/_store/LocalNav-entry-SfLDP8BS.js +1 -0
  27. package/lib/cjs/_store/Logo-entry-Dit3r-4I.js +1 -0
  28. package/lib/cjs/_store/Navigation-entry-C6dI5Dpf.js +1 -0
  29. package/lib/cjs/_store/{NumberPicker-chunk-CaQYVhyz.js → NumberPicker-chunk-CjEYQYj0.js} +1 -1
  30. package/lib/cjs/_store/{NumberPicker-entry-BEqwzCKS.js → NumberPicker-entry-DQGcCMGe.js} +1 -1
  31. package/lib/cjs/_store/{Radio-chunk-EK2nKEND.js → Radio-chunk-LFOxcvur.js} +1 -1
  32. package/lib/cjs/_store/{Radio-entry-M4dL4mjL.js → Radio-entry-BmJSr7Sk.js} +1 -1
  33. package/lib/cjs/_store/{SearchField-chunk-DRdhLGEo.js → SearchField-chunk-BkrZKT5S.js} +1 -1
  34. package/lib/cjs/_store/{SearchField-entry-D9zx3U13.js → SearchField-entry-DoVeY_de.js} +1 -1
  35. package/lib/cjs/_store/SocialMedia-chunk-jDoYRhrm.js +1 -0
  36. package/lib/cjs/_store/SocialMedia-entry-tsTF-Jtj.js +1 -0
  37. package/lib/cjs/_store/Tag-chunk-B-UjKiml.js +1 -0
  38. package/lib/cjs/_store/Tag-entry-Dv_p5zCg.js +1 -0
  39. package/lib/cjs/_store/{TextInput-entry-Bl0sZdpl.js → TextInput-entry-BOVt2TDi.js} +1 -1
  40. package/lib/cjs/_store/{Textarea-chunk-3fPk9MqI.js → Textarea-chunk-B13VaFl6.js} +1 -1
  41. package/lib/cjs/_store/{Textarea-entry-Ac7gdvET.js → Textarea-entry-Byp4EYD1.js} +1 -1
  42. package/lib/cjs/_store/{Toggle-entry-s05NRKOs.js → Toggle-entry-BZ_sk4pV.js} +1 -1
  43. package/lib/cjs/_store/Tooltip-chunk-Ca67o441.js +1 -0
  44. package/lib/cjs/_store/{Tooltip-entry--csXZiQZ.js → Tooltip-entry-BlOyvu7-.js} +1 -1
  45. package/lib/cjs/_store/components-entry-CDxRih4j.js +1 -0
  46. package/lib/cjs/index.js +1 -1
  47. package/lib/esm/_store/Accordion-entry-B-0bgUhR.js +85 -0
  48. package/lib/esm/_store/Breadcrumb-chunk-DcsXzPvT.js +121 -0
  49. package/lib/esm/_store/Breadcrumb-entry-B7kN28qm.js +4 -0
  50. package/lib/esm/_store/{Checkbox-chunk-DJDgykAw.js → Checkbox-chunk-CdjFGjiG.js} +2 -2
  51. package/lib/esm/_store/{Checkbox-entry-CfjxZKrK.js → Checkbox-entry-4xxjRXFu.js} +1 -1
  52. package/lib/esm/_store/ContextMenu-chunk-Zy9igFLz.js +30 -0
  53. package/lib/esm/_store/ContextMenu-entry-C_rAD9kF.js +4 -0
  54. package/lib/esm/_store/{DatePicker-chunk-10fIc74h.js → DatePicker-chunk-BoTriI-e.js} +1 -1
  55. package/lib/esm/_store/DatePicker-entry-B5aB0CYY.js +4 -0
  56. package/lib/esm/_store/{Dropdown-chunk-B6G7DnYr.js → Dropdown-chunk-DxXjnNBq.js} +1 -1
  57. package/lib/esm/_store/Dropdown-entry-CdssOqL2.js +4 -0
  58. package/lib/esm/_store/{Fieldset-chunk-PK4HqNv_.js → Fieldset-chunk-udvv8dML.js} +1 -1
  59. package/lib/esm/_store/Fieldset-entry--0tR2-K1.js +4 -0
  60. package/lib/esm/_store/{FileUpload-chunk-dFon8lP2.js → FileUpload-chunk-Cdl4F5zH.js} +1 -1
  61. package/lib/esm/_store/FileUpload-entry-B0SbE0sW.js +4 -0
  62. package/lib/esm/_store/{Footer-chunk-DFJ5AWCV.js → Footer-chunk-Cfulou_M.js} +1 -1
  63. package/lib/esm/_store/Footer-entry-xjy-auY5.js +4 -0
  64. package/lib/esm/_store/{FormControl-chunk-D_3t65GG.js → FormControl-chunk-C2LR6MBZ.js} +1 -1
  65. package/lib/esm/_store/FormControl-entry-Dy_NPcKM.js +4 -0
  66. package/lib/esm/_store/Hero-chunk-swloBIGl.js +67 -0
  67. package/lib/esm/_store/Hero-entry-DxQnc1Ze.js +4 -0
  68. package/lib/esm/_store/HeroCard-chunk-fz3EIUiE.js +47 -0
  69. package/lib/esm/_store/HeroCard-entry-Cp6p3FnU.js +4 -0
  70. package/lib/esm/_store/{Input-chunk-p-3N8OO4.js → Input-chunk-DT_YEVSQ.js} +1 -1
  71. package/lib/esm/_store/Input-entry-Dt6Qaxj6.js +4 -0
  72. package/lib/esm/_store/LocalNav-entry-DydB3k67.js +4 -0
  73. package/lib/esm/_store/{Logo-chunk-C2BIhfeP.js → Logo-entry-sjwkMeb-.js} +19 -19
  74. package/lib/esm/_store/Navigation-entry-BLC2KoMs.js +4 -0
  75. package/lib/esm/_store/{NumberPicker-chunk-CsDLNdop.js → NumberPicker-chunk-Z_TIIuxb.js} +1 -1
  76. package/lib/esm/_store/NumberPicker-entry-BaKtr4-S.js +4 -0
  77. package/lib/esm/_store/{Radio-chunk-CZnGQoYJ.js → Radio-chunk-DDMoE7Le.js} +2 -2
  78. package/lib/esm/_store/{Radio-entry-DhmJk5Et.js → Radio-entry-BzlGsY14.js} +1 -1
  79. package/lib/esm/_store/{SearchField-chunk-Bn5RXiiY.js → SearchField-chunk-DfXCHmW0.js} +1 -1
  80. package/lib/esm/_store/SearchField-entry-qYGaidSz.js +4 -0
  81. package/lib/esm/_store/SocialMedia-chunk-B0IPGaVf.js +62 -0
  82. package/lib/esm/_store/SocialMedia-entry-Dq52Wl-z.js +4 -0
  83. package/lib/esm/_store/Tag-chunk-6_6Oh_I3.js +68 -0
  84. package/lib/esm/_store/Tag-entry-B40IGpPj.js +48 -0
  85. package/lib/esm/_store/{TextInput-entry-BTZVvumC.js → TextInput-entry-DIPdoofw.js} +1 -1
  86. package/lib/esm/_store/{Textarea-chunk-BCW6ZV8n.js → Textarea-chunk-ClZt7jmS.js} +1 -1
  87. package/lib/esm/_store/{Textarea-entry-CFe0s_hM.js → Textarea-entry-BvVP8AXU.js} +1 -1
  88. package/lib/esm/_store/{Toggle-entry-CehJKItc.js → Toggle-entry-q2VLr4yf.js} +1 -1
  89. package/lib/esm/_store/{Tooltip-chunk-CPT-dPDc.js → Tooltip-chunk-EJOnwIYn.js} +362 -363
  90. package/lib/esm/_store/Tooltip-entry-Dz5aVKCZ.js +4 -0
  91. package/lib/esm/_store/components-entry-BW50D0h0.js +86 -0
  92. package/lib/esm/index.js +76 -77
  93. package/lib/styles/components/breadcrumb.css +1 -1
  94. package/lib/styles/components/factlistcard.css +1 -1
  95. package/lib/styles/components/list.css +1 -1
  96. package/lib/styles/components/richtext.css +1 -1
  97. package/lib/styles/global.css.map +1 -1
  98. package/lib/styles/index.css +2 -2
  99. package/lib/styles/index.css.map +1 -1
  100. package/lib/styles/monorepo.css +2 -2
  101. package/lib/styles/monorepo.css.map +1 -1
  102. package/lib/types/components/Accordion/Accordion.d.ts +35 -4
  103. package/lib/types/components/Accordion/AccordionItem.d.ts +15 -4
  104. package/lib/types/components/Accordion/index.d.ts +4 -4
  105. package/lib/types/components/Breadcrumb/Breadcrumb.d.ts +17 -4
  106. package/lib/types/components/Breadcrumb/BreadcrumbItem.d.ts +20 -0
  107. package/lib/types/components/Breadcrumb/index.d.ts +1 -1
  108. package/lib/types/components/ContextMenu/ContextMenu.d.ts +27 -5
  109. package/lib/types/components/ContextMenu/index.d.ts +1 -1
  110. package/lib/types/components/Hero/Hero.d.ts +53 -4
  111. package/lib/types/components/Hero/index.d.ts +1 -2
  112. package/lib/types/components/{Hero/HeroCard.props.d.ts → HeroCard/HeroCard.d.ts} +4 -2
  113. package/lib/types/components/HeroCard/HeroCardTitle.d.ts +8 -0
  114. package/lib/types/components/HeroCard/index.d.ts +1 -0
  115. package/lib/types/components/LocalNav/LocalNav.props.d.ts +0 -10
  116. package/lib/types/components/Navigation/Navigation.props.d.ts +0 -13
  117. package/lib/types/components/SocialMedia/SocialMedia.d.ts +44 -3
  118. package/lib/types/components/SocialMedia/index.d.ts +1 -3
  119. package/lib/types/components/Tooltip/Tooltip.d.ts +34 -4
  120. package/lib/types/components/Tooltip/index.d.ts +1 -1
  121. package/lib/types/components/index.d.ts +2 -1
  122. package/package.json +4 -4
  123. package/lib/cjs/_store/Accordion-chunk-Dj1LluWV.js +0 -1
  124. package/lib/cjs/_store/Accordion-entry-BNfPKFuj.js +0 -1
  125. package/lib/cjs/_store/Breadcrumb-chunk-DvUpVY4l.js +0 -1
  126. package/lib/cjs/_store/ContextMenu-chunk-BegVo-Ry.js +0 -1
  127. package/lib/cjs/_store/Hero-chunk-BmAL9GMT.js +0 -1
  128. package/lib/cjs/_store/Hero-entry-6U1647te.js +0 -1
  129. package/lib/cjs/_store/LocalNav-chunk-CL0urssZ.js +0 -1
  130. package/lib/cjs/_store/LocalNav-entry-uEJTn_P0.js +0 -1
  131. package/lib/cjs/_store/Logo-chunk-Cl60tiPV.js +0 -1
  132. package/lib/cjs/_store/Logo-entry-ffqRpdCt.js +0 -1
  133. package/lib/cjs/_store/Navigation-chunk-CKk-EzZF.js +0 -1
  134. package/lib/cjs/_store/Navigation-entry-DukzIF80.js +0 -1
  135. package/lib/cjs/_store/SocialMedia-chunk-DrxlykT6.js +0 -1
  136. package/lib/cjs/_store/SocialMedia-entry-BQyxJpTO.js +0 -1
  137. package/lib/cjs/_store/Tag-chunk-CdVExQzv.js +0 -1
  138. package/lib/cjs/_store/Tag-entry-B5GoRJjK.js +0 -1
  139. package/lib/cjs/_store/Tooltip-chunk-Bh77DbOg.js +0 -1
  140. package/lib/cjs/_store/checkArrayDuplicates-chunk-Bqxwhc1q.js +0 -1
  141. package/lib/cjs/_store/components-entry-BLIKXStL.js +0 -1
  142. package/lib/esm/_store/Accordion-chunk-BawBOKZz.js +0 -113
  143. package/lib/esm/_store/Accordion-entry-C8JFNFFn.js +0 -7
  144. package/lib/esm/_store/Breadcrumb-chunk-CclNRjxd.js +0 -132
  145. package/lib/esm/_store/Breadcrumb-entry-Biundzlp.js +0 -4
  146. package/lib/esm/_store/ContextMenu-chunk-CkdC2iPF.js +0 -22
  147. package/lib/esm/_store/ContextMenu-entry-BkbaSgVR.js +0 -4
  148. package/lib/esm/_store/DatePicker-entry-Bu0S1bvg.js +0 -4
  149. package/lib/esm/_store/Dropdown-entry-CRDxMRpe.js +0 -4
  150. package/lib/esm/_store/Fieldset-entry-BmiHpIGy.js +0 -4
  151. package/lib/esm/_store/FileUpload-entry-uIvvAStY.js +0 -4
  152. package/lib/esm/_store/Footer-entry-BtbhEt-Y.js +0 -4
  153. package/lib/esm/_store/FormControl-entry-DODa4uyx.js +0 -4
  154. package/lib/esm/_store/Hero-chunk-AgDdKsJ4.js +0 -76
  155. package/lib/esm/_store/Hero-entry-CcnVmzHx.js +0 -5
  156. package/lib/esm/_store/Input-entry-DG2Mv1K2.js +0 -4
  157. package/lib/esm/_store/LocalNav-chunk-CC5KIqRP.js +0 -207
  158. package/lib/esm/_store/LocalNav-entry-BUHQT-D7.js +0 -4
  159. package/lib/esm/_store/Logo-entry-C3BaxfNe.js +0 -4
  160. package/lib/esm/_store/Navigation-chunk-BSoAdxZ6.js +0 -221
  161. package/lib/esm/_store/Navigation-entry-C-tonRpq.js +0 -4
  162. package/lib/esm/_store/NumberPicker-entry-BuxrmdUS.js +0 -4
  163. package/lib/esm/_store/SearchField-entry-BlnqYKjA.js +0 -4
  164. package/lib/esm/_store/SocialMedia-chunk-DdOAr_Gj.js +0 -32
  165. package/lib/esm/_store/SocialMedia-entry-BllaQbO-.js +0 -54
  166. package/lib/esm/_store/Tag-chunk-DG8gqUnh.js +0 -65
  167. package/lib/esm/_store/Tag-entry-BxKwoM37.js +0 -46
  168. package/lib/esm/_store/Tooltip-entry-cgQr1mHa.js +0 -4
  169. package/lib/esm/_store/checkArrayDuplicates-chunk-C7cf0TQw.js +0 -11
  170. package/lib/esm/_store/components-entry-3VBtJ0uk.js +0 -87
  171. package/lib/types/components/Accordion/Accordion.props.d.ts +0 -34
  172. package/lib/types/components/Accordion/AccordionButton.d.ts +0 -5
  173. package/lib/types/components/Accordion/AccordionButton.props.d.ts +0 -12
  174. package/lib/types/components/Accordion/AccordionCtx.d.ts +0 -5
  175. package/lib/types/components/Accordion/AccordionItem.props.d.ts +0 -22
  176. package/lib/types/components/Accordion/AccordionPanel.d.ts +0 -5
  177. package/lib/types/components/Accordion/AccordionPanel.props.d.ts +0 -22
  178. package/lib/types/components/Breadcrumb/Breadcrumb.props.d.ts +0 -32
  179. package/lib/types/components/ContextMenu/ContextMenu.props.d.ts +0 -24
  180. package/lib/types/components/Hero/Hero.props.d.ts +0 -52
  181. package/lib/types/components/Hero/HeroCard.d.ts +0 -5
  182. package/lib/types/components/SocialMedia/SocialMedia.props.d.ts +0 -42
  183. package/lib/types/components/Tooltip/Tooltip.props.d.ts +0 -33
@@ -1,5 +1,36 @@
1
- import { FC } from 'react';
2
- import { AccordionProps } from './Accordion.props';
1
+ import { ReactNode } from 'react';
3
2
 
4
- declare const Accordion: FC<AccordionProps>;
5
- export default Accordion;
3
+ export type AccordionProps = {
4
+ /**
5
+ * The size of the accordion default is small
6
+ */
7
+ size?: "small" | "large";
8
+ /**
9
+ * Whether or not multiple accordion items can be expanded at the same time default is true
10
+ */
11
+ multiple?: boolean;
12
+ /**
13
+ * The value of the accordion, when multiple is true this should be an array of strings
14
+ */
15
+ value?: string | string[];
16
+ /**
17
+ * The callback function that is called when the value of the accordion changes
18
+ */
19
+ onChange?: (value: string | string[]) => void;
20
+ /**
21
+ * Whether or not the accordion panel should be scrollable default is false
22
+ */
23
+ scrollable?: boolean;
24
+ className?: string;
25
+ children: ReactNode;
26
+ };
27
+ type AccordionContextValue = {
28
+ size: "small" | "large";
29
+ multiple: boolean;
30
+ value: string | string[];
31
+ scrollable?: boolean;
32
+ onChange: (value: string | string[]) => void;
33
+ };
34
+ declare const AccordionContext: import('react').Context<AccordionContextValue | undefined>;
35
+ declare const Accordion: import('react').ForwardRefExoticComponent<AccordionProps & import('react').RefAttributes<HTMLUListElement>>;
36
+ export { AccordionContext, Accordion };
@@ -1,5 +1,16 @@
1
- import { FC } from 'react';
2
- import { AccordionItemProps } from './AccordionItem.props';
1
+ import { ReactNode } from 'react';
3
2
 
4
- declare const AccordionItem: FC<AccordionItemProps>;
5
- export default AccordionItem;
3
+ export type AccordionItemProps = {
4
+ /**
5
+ * The value of the accordion item
6
+ */
7
+ value: string;
8
+ /**
9
+ * The label of the accordion item
10
+ */
11
+ label: string;
12
+ className?: string;
13
+ children: ReactNode;
14
+ };
15
+ declare const AccordionItem: import('react').ForwardRefExoticComponent<AccordionItemProps & import('react').RefAttributes<HTMLLIElement>>;
16
+ export { AccordionItem };
@@ -1,4 +1,4 @@
1
- export { default as AccordionButton } from './AccordionButton';
2
- export { default as AccordionPanel } from './AccordionPanel';
3
- export { default as AccordionItem } from './AccordionItem';
4
- export { default as Accordion } from './Accordion';
1
+ declare const Accordion: import('react').ForwardRefExoticComponent<import('./Accordion').AccordionProps & import('react').RefAttributes<HTMLUListElement>> & {
2
+ Item: import('react').ForwardRefExoticComponent<import('./AccordionItem').AccordionItemProps & import('react').RefAttributes<HTMLLIElement>>;
3
+ };
4
+ export { Accordion };
@@ -1,5 +1,18 @@
1
- import { FC } from 'react';
2
- import { BreadcrumbProps } from './Breadcrumb.props';
1
+ import { BreadcrumbItemProps } from './BreadcrumbItem';
3
2
 
4
- declare const Breadcrumb: FC<BreadcrumbProps>;
5
- export default Breadcrumb;
3
+ export type BreadcrumbProps = {
4
+ /**
5
+ * An additional classname to add to the outer most element of the component
6
+ */
7
+ className?: string;
8
+ /**
9
+ * The accessible label to apply to the ellipsis button that appears when the Breadcrumb is collapsed
10
+ */
11
+ buttonLabel: string;
12
+ /**
13
+ * Specify the links to be displayed in the Breadcrumb
14
+ */
15
+ links: BreadcrumbItemProps[];
16
+ };
17
+ declare const Breadcrumb: import('react').ForwardRefExoticComponent<BreadcrumbProps & import('react').RefAttributes<HTMLElement>>;
18
+ export { Breadcrumb };
@@ -0,0 +1,20 @@
1
+ export type BreadcrumbItemProps = {
2
+ /**
3
+ * Optional additional className of the BreadcrumbLink
4
+ */
5
+ className?: string;
6
+ /**
7
+ * Specify the label for this link
8
+ */
9
+ label: string;
10
+ /**
11
+ * Specify the url for this link
12
+ */
13
+ url: string;
14
+ /**
15
+ * Specify whether this link is the first in the Breadcrumb
16
+ */
17
+ first?: boolean;
18
+ };
19
+ declare const BreadcrumbItem: import('react').ForwardRefExoticComponent<BreadcrumbItemProps & import('react').RefAttributes<HTMLLIElement>>;
20
+ export { BreadcrumbItem };
@@ -1 +1 @@
1
- export { default as Breadcrumb } from './Breadcrumb';
1
+ export * from './Breadcrumb';
@@ -1,5 +1,27 @@
1
- import { default as React } from 'react';
2
- import { ContextMenuProps } from './ContextMenu.props';
3
-
4
- declare const ContextMenu: React.ForwardRefExoticComponent<ContextMenuProps & React.RefAttributes<HTMLOListElement>>;
5
- export default ContextMenu;
1
+ export type LinkProps = {
2
+ /**
3
+ * Specify whether this link marks the end of a section
4
+ */
5
+ endsection?: boolean;
6
+ /**
7
+ * Specify the label for the the Context Menu's link
8
+ */
9
+ label: string;
10
+ /**
11
+ * Specify the url for the Context Menu's link
12
+ */
13
+ url: string;
14
+ className?: string;
15
+ };
16
+ export type ContextMenuProps = {
17
+ /**
18
+ * Specify an optional className to be added to your Context Menu component.
19
+ */
20
+ className?: string;
21
+ /**
22
+ * Specify the links to be displayed in the Context Menu
23
+ */
24
+ links: Array<LinkProps>;
25
+ };
26
+ declare const ContextMenu: import('react').ForwardRefExoticComponent<ContextMenuProps & import('react').RefAttributes<HTMLOListElement>>;
27
+ export { ContextMenu };
@@ -1 +1 @@
1
- export { default as ContextMenu } from './ContextMenu';
1
+ export * from './ContextMenu';
@@ -1,5 +1,54 @@
1
- import { FC } from 'react';
2
- import { HeroProps } from './Hero.props';
1
+ import { ImageProps } from '../Image/Image.props';
2
+ import { BreadcrumbProps } from '../Breadcrumb';
3
+ import { TooltipProps } from '../Tooltip';
4
+ import { HeroCardProps } from '../HeroCard';
5
+ import { ThemeTypes } from '../../types';
3
6
 
4
- declare const Hero: FC<HeroProps>;
5
- export default Hero;
7
+ export type HeroProps = {
8
+ /**
9
+ * Vertical alignment of the hero card
10
+ */
11
+ align?: "center" | "bottom" | "baseline";
12
+ /**
13
+ * Props to pass to the breadcrumb if there is one
14
+ */
15
+ breadcrumb?: BreadcrumbProps;
16
+ /**
17
+ * Caption to render in the hero card
18
+ */
19
+ caption?: TooltipProps;
20
+ /**
21
+ * Size the of hero card
22
+ */
23
+ cardSize?: "small" | "medium" | "large" | "xlarge" | "xxlarge";
24
+ /**
25
+ * Specify an optional className to be added to your Hero component.
26
+ */
27
+ className?: string;
28
+ /**
29
+ * Props for the image for the hero
30
+ */
31
+ image?: ImageProps;
32
+ /**
33
+ * How to justify the hero card
34
+ */
35
+ justify?: "start" | "center" | "offset";
36
+ /**
37
+ * Props for the card for the hero
38
+ */
39
+ heroCard: HeroCardProps;
40
+ /**
41
+ * Color of the gap space between bottom of the hero image and bottom of the card
42
+ */
43
+ gap?: "white" | "transparent" | "dark" | "light";
44
+ /**
45
+ * The size of the poster image
46
+ */
47
+ posterSize?: "small" | "medium" | "large" | "xlarge";
48
+ /**
49
+ * Theme for the card
50
+ */
51
+ theme?: ThemeTypes;
52
+ };
53
+ declare const Hero: import('react').ForwardRefExoticComponent<HeroProps & import('react').RefAttributes<HTMLDivElement>>;
54
+ export { Hero };
@@ -1,2 +1 @@
1
- export { default as Hero } from './Hero';
2
- export { default as HeroCard } from './HeroCard';
1
+ export * from './Hero';
@@ -1,7 +1,7 @@
1
1
  import { ThemeTypes } from '../../types';
2
2
  import { SocialMediaProps } from '../SocialMedia';
3
3
 
4
- export interface HeroCardProps {
4
+ export type HeroCardProps = {
5
5
  /**
6
6
  * Specify whether the background should be solid, transparent or semi-transparent
7
7
  */
@@ -42,4 +42,6 @@ export interface HeroCardProps {
42
42
  * The link of the card's title if it has one
43
43
  */
44
44
  url?: string;
45
- }
45
+ };
46
+ declare const HeroCard: import('react').ForwardRefExoticComponent<HeroCardProps & import('react').RefAttributes<HTMLDivElement>>;
47
+ export { HeroCard };
@@ -0,0 +1,8 @@
1
+ import { FC } from 'react';
2
+
3
+ type HeroCardTitleProps = {
4
+ title: string;
5
+ url?: string;
6
+ };
7
+ declare const HeroCardTitle: FC<HeroCardTitleProps>;
8
+ export { HeroCardTitle };
@@ -0,0 +1 @@
1
+ export * from './HeroCard';
@@ -1,4 +1,3 @@
1
- import { LinkProps, ContextMenuProps } from '../ContextMenu/ContextMenu.props';
2
1
  import { LogoProps } from '../Logo/Logo.props';
3
2
 
4
3
  export interface LocalNavProps {
@@ -17,7 +16,6 @@ export interface LocalNavProps {
17
16
  /**
18
17
  * Specify the main link for the LocalNav
19
18
  */
20
- mainlink?: LinkProps;
21
19
  /**
22
20
  * Specify the menu close label for the LocalNav
23
21
  */
@@ -26,10 +24,6 @@ export interface LocalNavProps {
26
24
  * Specify the language label for the LocalNav
27
25
  */
28
26
  languagelabel?: string;
29
- /**
30
- * Specify the language context menu for the LocalNav
31
- */
32
- languagecontextmenu?: ContextMenuProps;
33
27
  }
34
28
  interface PrimaryNavProps {
35
29
  /**
@@ -40,9 +34,5 @@ interface PrimaryNavProps {
40
34
  * Specify the close label for mobile local nav
41
35
  */
42
36
  mobilecloselabel?: Required<string>;
43
- /**
44
- * Specify the social links
45
- */
46
- items?: Required<Array<LinkProps>>;
47
37
  }
48
38
  export {};
@@ -1,4 +1,3 @@
1
- import { LinkProps, ContextMenuProps } from '../ContextMenu/ContextMenu.props';
2
1
  import { SearchFieldProps } from '../SearchField/SearchField.props';
3
2
 
4
3
  export interface NavigationProps {
@@ -46,10 +45,6 @@ export interface NavigationProps {
46
45
  * Specify the language label for the Navigation
47
46
  */
48
47
  languagelabel?: string;
49
- /**
50
- * Specify the language context menu for the Navigation
51
- */
52
- languagecontextmenu?: ContextMenuProps;
53
48
  }
54
49
  interface PrimaryNavProps {
55
50
  /**
@@ -60,10 +55,6 @@ interface PrimaryNavProps {
60
55
  * Specify the close label for mobile Navigation
61
56
  */
62
57
  mobilecloselabel?: Required<string>;
63
- /**
64
- * Specify the links
65
- */
66
- items?: Required<Array<LinkProps>>;
67
58
  }
68
59
  interface SubNavProps {
69
60
  /**
@@ -82,10 +73,6 @@ interface SubNavProps {
82
73
  * Specify the back label for mobile sub Navigation
83
74
  */
84
75
  mobilebacklabel?: Required<string>;
85
- /**
86
- * Specify the subnav links
87
- */
88
- items?: Required<Array<LinkProps>>;
89
76
  }
90
77
  interface TaglineProps {
91
78
  /**
@@ -1,4 +1,45 @@
1
- import { SocialMediaProps } from './SocialMedia.props';
1
+ import { SocialTypes } from '../../types';
2
2
 
3
- declare const SocialMedia: React.FC<SocialMediaProps>;
4
- export default SocialMedia;
3
+ export type SocialMediaIcons = {
4
+ /**
5
+ * The name of the icon to display
6
+ */
7
+ icon: SocialTypes;
8
+ /**
9
+ * The url to link to
10
+ */
11
+ url: string;
12
+ /**
13
+ * The alt text of the link
14
+ */
15
+ label: string;
16
+ className?: string;
17
+ };
18
+ export type SocialMediaProps = {
19
+ /**
20
+ * An optional headline to display above the icons
21
+ */
22
+ headline?: string;
23
+ /**
24
+ * Specify an optional className to be added to your SocialMedia.
25
+ */
26
+ className?: string;
27
+ /**
28
+ * Specify the theme of the SocialMedia.
29
+ */
30
+ theme?: "light" | "dark";
31
+ /**
32
+ * The justification of the icons
33
+ */
34
+ justify?: "start" | "center";
35
+ /**
36
+ * Specify the icons to display.
37
+ */
38
+ icons: SocialMediaIcons[];
39
+ /**
40
+ * The size of the social media icons
41
+ */
42
+ iconSize: "normal" | "large";
43
+ };
44
+ declare const SocialMedia: import('react').ForwardRefExoticComponent<SocialMediaProps & import('react').RefAttributes<HTMLDivElement>>;
45
+ export { SocialMedia };
@@ -1,3 +1 @@
1
- export { default as SocialMedia } from './SocialMedia';
2
- export type { SocialMediaProps } from './SocialMedia.props';
3
- export { defaultArgs } from './SocialMedia.args';
1
+ export * from './SocialMedia';
@@ -1,5 +1,35 @@
1
- import { FC } from 'react';
2
- import { TooltipProps } from './Tooltip.props';
1
+ import { TooltipThemes, TooltipIconThemes } from '../../types';
3
2
 
4
- declare const Tooltip: FC<TooltipProps>;
5
- export default Tooltip;
3
+ export type TooltipProps = {
4
+ /**
5
+ * Set the label for the tooltip
6
+ */
7
+ label: string;
8
+ /**
9
+ * Describe the theme of the tooltip
10
+ */
11
+ theme?: TooltipThemes;
12
+ /**
13
+ * Describe the background theme of the tooltip
14
+ */
15
+ iconTheme?: TooltipIconThemes;
16
+ /**
17
+ * Specify an optional className to be added to your Tooltip.
18
+ */
19
+ className?: string;
20
+ /**
21
+ * Should the tooltip appear on hover of an info icon?
22
+ */
23
+ icon?: boolean;
24
+ /**
25
+ * Set whether the tooltip is visible or not
26
+ */
27
+ isVisible?: boolean;
28
+ /**
29
+ * Specify an optional id for the Tooltip
30
+ */
31
+ id?: string;
32
+ children?: React.ReactNode;
33
+ };
34
+ declare const Tooltip: import('react').ForwardRefExoticComponent<TooltipProps & import('react').RefAttributes<HTMLDivElement>>;
35
+ export { Tooltip };
@@ -1 +1 @@
1
- export { default as Tooltip } from './Tooltip';
1
+ export * from './Tooltip';
@@ -1,4 +1,4 @@
1
- export { Accordion, AccordionButton, AccordionItem, AccordionPanel, } from './Accordion';
1
+ export { Accordion } from './Accordion';
2
2
  export { Form } from './Form';
3
3
  export { Collapse } from './Collapse';
4
4
  export { Empty } from './Empty';
@@ -24,6 +24,7 @@ export { Tooltip } from './Tooltip';
24
24
  export { Checkbox } from './Checkbox';
25
25
  export { DatePicker } from './DatePicker';
26
26
  export { Hero } from './Hero';
27
+ export { HeroCard } from './HeroCard';
27
28
  export { LinkList } from './LinkList';
28
29
  export { Pagination } from './Pagination';
29
30
  export { SearchField } from './SearchField';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ilo-org/react",
3
- "version": "0.18.5",
3
+ "version": "0.19.0",
4
4
  "description": "React components for the ILO's Design System",
5
5
  "keywords": [
6
6
  "ui_patterns",
@@ -74,9 +74,9 @@
74
74
  "@ilo-org/brand-assets": "1.0.0",
75
75
  "@ilo-org/fonts": "1.0.0",
76
76
  "@ilo-org/icons-react": "1.0.2",
77
- "@ilo-org/styles": "1.3.3",
78
- "@ilo-org/utils": "0.1.1",
79
- "@ilo-org/themes": "0.9.1"
77
+ "@ilo-org/styles": "1.3.4",
78
+ "@ilo-org/themes": "0.9.1",
79
+ "@ilo-org/utils": "0.1.1"
80
80
  },
81
81
  "devDependencies": {
82
82
  "@storybook/addon-actions": "^8.1.9",
@@ -1 +0,0 @@
1
- "use strict";const a=require("react/jsx-runtime"),p=require("./index-chunk-DCI82Tmm.js"),t=require("react"),$=require("./useGlobalSettings-chunk-Pa38w6VS.js"),A=require("./checkArrayDuplicates-chunk-Bqxwhc1q.js"),b=t.createContext({}),f=t.createContext({}),I=({children:c,className:o,...r})=>{const{prefix:e}=$.useGlobalSettings(),l=`${e}--accordion--button`,{activeItems:s,setActiveItems:u,getUpdatedItems:C,allowMultipleExpanded:x,onButtonClick:d}=t.useContext(b),{id:n}=t.useContext(f),i=s.indexOf(n)>-1,m=p.classnames(o,{[l]:!0}),v=(g,h)=>{u(C({id:h,itemStatuses:s,allowMultipleExpanded:x})),d&&d(g,h),g.currentTarget.blur()};return a.jsx("div",{className:`${e}--h3`,children:a.jsx("button",{className:m,"aria-expanded":i,onClick:g=>v(g,n),"aria-controls":`panel-${n}`,id:`button-${n}`,...r,children:c})})},S=I,j=({children:c,className:o,scroll:r,...e})=>{const{activeItems:l}=t.useContext(b),{id:s}=t.useContext(f),[u,C]=t.useState(0),x=l.indexOf(s)>-1,{prefix:d}=$.useGlobalSettings(),n=`${d}--accordion--panel`,i=p.classnames(o,n,{[`${n}__scroll`]:r,[`${n}--open`]:x}),m=t.useRef(null);return t.useLayoutEffect(()=>{m.current&&C(m.current.scrollHeight)}),a.jsx("div",{className:i,id:`panel-${s}`,"aria-labelledby":`button-${s}`,role:"region",ref:m,style:{"--height":`${u}px`},...e,children:a.jsx("div",{className:`${d}--accordion--innerpanel`,children:c})})},N=j,P=({children:c,id:o,className:r,...e})=>{const{prefix:l}=$.useGlobalSettings(),s=`${l}--accordion--item`,u=p.classnames(r,{[s]:!0});return a.jsx(f.Provider,{value:{id:o},children:a.jsx("li",{className:u,...e,children:c})})},q=P,y=({children:c,allowMultipleExpanded:o=!1,onButtonClick:r,defaultAccordionsExpanded:e=[],className:l})=>{const{prefix:s}=$.useGlobalSettings(),u=`${s}--accordion`,[C,x]=t.useState([]),d=p.classnames(l,{[u]:!0}),n=JSON.stringify(e);if(t.useEffect(()=>{const i=o?e:e.length>0?[e[0]]:e;x(i)},[n,o]),c){const i=[];t.Children.forEach(c,m=>{i.push(m.props.id)}),A.checkArrayDuplicates(i)&&console.warn("Warning: Accordion items must have unique ids.")}return a.jsx(b.Provider,{value:{activeItems:C,setActiveItems:x,getUpdatedItems:A.e,allowMultipleExpanded:o,onButtonClick:r},children:a.jsx("ul",{className:d,children:c})})},k=y;exports.Accordion=k;exports.AccordionButton=S;exports.AccordionItem=q;exports.AccordionPanel=N;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./Accordion-chunk-Dj1LluWV.js");exports.Accordion=o.Accordion;exports.AccordionButton=o.AccordionButton;exports.AccordionItem=o.AccordionItem;exports.AccordionPanel=o.AccordionPanel;
@@ -1 +0,0 @@
1
- "use strict";const s=require("react/jsx-runtime"),c=require("react"),I=require("./useGlobalSettings-chunk-Pa38w6VS.js"),y=require("./index-chunk-DCI82Tmm.js"),F=require("./ContextMenu-chunk-BegVo-Ry.js"),M=({url:h,label:l,className:E,labelShown:$=!0})=>{const{prefix:n}=I.useGlobalSettings(),b=`${n}--breadcrumb--item`,i=`${n}--breadcrumb--link`,v=`${i}--label`,r=y.classnames(b,E);return s.jsx("li",{className:r,children:$?s.jsx("a",{className:i,href:h,children:s.jsx("span",{className:v,children:l})}):s.jsx("a",{"aria-label":l,className:i,href:h})})},X=({className:h,links:l,buttonLabel:E})=>{const{prefix:$}=I.useGlobalSettings(),[n,b]=c.useState(!1),[i,v]=c.useState({start:0,top:0}),[r,N]=c.useState(!1),o=c.useRef(null),g=c.useRef(0),a=c.useRef(null),u=c.useRef(null),f=`${$}--breadcrumb`,K=`${f}--inner`,S=`${f}--items`,W=`${`${f}--item`}__first`,x=`${f}--context`,O=`${x}__collapse`,q=`${f}--menu`,G=`${x}--button`,P=y.classnames(f,h),T=y.classnames(x,{[O]:r}),z=y.classnames(`${x}--menu`,{[`${x}--menu__visible`]:n});function A(){b(!n)}const w=c.useCallback(e=>{e&&!r&&N(!0),!e&&r&&N(!1)},[r]);c.useLayoutEffect(()=>{const e=o==null?void 0:o.current;!e||!window||!document||(g.current=e.offsetWidth)},[]),c.useLayoutEffect(()=>{if(!(o==null?void 0:o.current)||!window||!document)return;const t=new ResizeObserver(d=>{const m=d[0].contentRect.width;g.current>=m/1.5?w(!0):w(!1)});return t.observe(document.body),()=>{t.disconnect()}},[w]),c.useLayoutEffect(()=>{if(!(!a.current||!u.current)&&r&&n){const e=a.current.getBoundingClientRect(),t=e.left+e.width/2,d=u.current.offsetWidth,m=t-d/2,p=e.bottom+16;v({start:m,top:p})}},[r,n]),c.useEffect(()=>{function e(t){n&&u.current&&!u.current.contains(t.target)&&a.current&&!a.current.contains(t.target)&&b(!1)}return document.addEventListener("mousedown",e),()=>{document.removeEventListener("mousedown",e)}},[r,n]),c.useEffect(()=>{n&&!r&&b(!1)},[r,n]),c.useEffect(()=>{if(!a.current||!u.current)return;function e(t){var d,m,p,R;if(!(!n||!r)&&t.key==="Tab"){const j=(d=u.current)==null?void 0:d.querySelectorAll("a"),L=(p=(m=o.current)==null?void 0:m.lastElementChild)==null?void 0:p.querySelector("a");if(!j||!L)return;const _=j[0],D=j[j.length-1];if(!t.shiftKey){if(document.activeElement===a.current){t.preventDefault(),_.focus();return}document.activeElement===D&&(t.preventDefault(),L.focus())}t.shiftKey&&(t.shiftKey&&document.activeElement===_&&(t.preventDefault(),(R=a==null?void 0:a.current)==null||R.focus()),t.shiftKey&&document.activeElement===L&&(t.preventDefault(),D.focus()))}}return document.addEventListener("keydown",e),()=>{document.removeEventListener("keydown",e)}});const B=l[0],C=l.slice(1,l.length-1),k=l[l.length-1];return s.jsxs("nav",{className:P,children:[s.jsx("div",{className:K,children:s.jsxs("ol",{className:S,ref:o,children:[s.jsx(M,{url:B.url,label:B.label,labelShown:!1,className:W}),C&&C.length>0?s.jsxs("li",{className:T,children:[s.jsx("ol",{className:S,children:C.map((e,t)=>s.jsx(M,{url:e.url,label:e.label},t))}),s.jsx("button",{"aria-label":E,"aria-expanded":n,"aria-controls":q,className:G,onClick:A,ref:a})]}):null,k&&s.jsx(M,{url:k.url,label:k.label})]})}),s.jsx("div",{className:z,id:q,hidden:!n,style:{left:i.start,top:i.top},children:s.jsx(F.ContextMenu,{links:C,ref:u})})]})},H=X;exports.Breadcrumb=H;
@@ -1 +0,0 @@
1
- "use strict";const s=require("react/jsx-runtime"),i=require("react"),u=require("./index-chunk-DCI82Tmm.js"),x=require("./useGlobalSettings-chunk-Pa38w6VS.js"),m=i.forwardRef(({className:c,links:n},a)=>{const{prefix:r}=x.useGlobalSettings(),e=`${r}--context-menu`,l=u.classnames(c,{[e]:!0});return s.jsx("ol",{className:l,ref:a,children:n&&n.map((t,o)=>s.jsx("li",{className:`${e}--item ${t.endsection?"endsection":""}`,children:s.jsx("a",{href:t.url,className:`${e}--link`,children:s.jsx("span",{className:`${e}--label`,children:t.label})})},`${e}--item-${o}`))})}),d=m;exports.ContextMenu=d;
@@ -1 +0,0 @@
1
- "use strict";const s=require("react/jsx-runtime"),p=require("./index-chunk-DCI82Tmm.js"),b=require("./useGlobalSettings-chunk-Pa38w6VS.js"),g=require("./SocialMedia-chunk-DrxlykT6.js"),k=require("./Breadcrumb-chunk-DvUpVY4l.js"),f=require("./Tooltip-chunk-Bh77DbOg.js"),v=({baseclass:a,title:n,url:o})=>{const c=`${a}--title`,t=`${a}--title-link`;return o?s.jsx("a",{className:t,href:o,children:s.jsx("h1",{className:c,children:n})}):s.jsx("h1",{className:c,children:n})},S=({theme:a="dark",background:n="solid",cornercut:o="true",eyebrow:c,title:t,url:l,datecopy:r,intro:i,socialmedia:d})=>{const{prefix:h}=b.useGlobalSettings(),e=`${h}--hero-card`,_=`${e}__theme__${a}`,m=`${e}__background__${n}`,x=`${e}__cornercut`,u=p.classnames(e,_,m,{[x]:o}),j=`${e}--eyebrow`,$=`${e}--datecopy`,C=`${e}--intro`;return s.jsxs("div",{className:u,children:[c&&s.jsx("p",{className:j,children:c}),s.jsx(v,{baseclass:e,title:t,url:l}),i&&s.jsx("p",{className:C,children:i}),r&&s.jsx("p",{className:$,children:r}),d&&s.jsx(g.SocialMedia,{...d,theme:a})]})},N=S,H=({url:a,alt:n})=>{const{prefix:o}=b.useGlobalSettings(),c=`${o}--card--image`,t=a.sort((r,i)=>r.breakpoint-i.breakpoint),l=t[t.length-1].src;return s.jsx("figure",{className:"hero--image",children:s.jsxs("picture",{children:[t.map(r=>s.jsx("source",{srcSet:r.src,media:`(min-width: ${r.breakpoint}px)`},r.breakpoint)),s.jsx("img",{className:c,src:l,alt:n})]})})},q=({justify:a="start",align:n="baseline",cardSize:o="small",posterSize:c="large",theme:t="dark",image:l,breadcrumb:r,heroCard:i,caption:d,gap:h})=>{const e="hero",_=`${e}__card-justify__${a}`,m=`${e}__card-align__${n}`,x=`${e}__card-size__${o}`,u=`${e}__poster-size__${c}`,j=`${e}__card-theme__${t}`,$=`${e}__gap__${h}`,C=p.classnames(e,_,m,x,u,j,{[$]:!!h});return s.jsxs("div",{className:C,children:[s.jsx("div",{className:"hero--background",children:l&&s.jsx(H,{...l})}),r&&s.jsx(s.Fragment,{children:s.jsx("div",{className:"hero--breadcrumbs",children:s.jsx("div",{className:"hero--breadcrumbs--wrapper",children:s.jsx(k.Breadcrumb,{...r})})})}),s.jsx("div",{className:"hero--card-offset"}),s.jsx("div",{className:"hero--card",children:s.jsx(N,{...i})}),d&&s.jsx("div",{className:"hero--caption",children:s.jsx("div",{className:"hero--caption--wrapper",children:s.jsx(f.Tooltip,{...d})})})]})},w=q;exports.Hero=w;exports.HeroCard=N;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./Hero-chunk-BmAL9GMT.js");exports.Hero=e.Hero;exports.HeroCard=e.HeroCard;
@@ -1 +0,0 @@
1
- "use strict";const e=require("react/jsx-runtime"),g=require("react"),w=require("./useGlobalSettings-chunk-Pa38w6VS.js"),L=require("./ContextMenu-chunk-BegVo-Ry.js"),C=require("./index-chunk-DCI82Tmm.js"),$=require("./Logo-chunk-Cl60tiPV.js"),f={"ilo-blue":{value:"rgba(30, 45, 190, 1)"},"ilo-red":{value:"rgba(250, 60, 75, 1)"},"ilo-dark-blue":{value:"rgba(35, 0, 80, 1)"},"ilo-yellow":{value:"rgba(255, 205, 45, 1)"},"ilo-green":{value:"rgba(140, 225, 100, 1)"},"ilo-purple":{value:"rgba(150, 10, 85, 1)"},"ilo-purple-light":{value:"rgba(116, 96, 145, 1)"},"ilo-turquoise":{value:"rgba(5, 210, 210, 1)"},"ilo-dark-red":{value:"rgba(200, 48, 60, 1)"},"ilo-light-blue":{value:"rgba(235, 245, 253, 1)"},"ilo-grey-light-alternate":{value:"rgba(246, 247, 248, 1)"},"ilo-grey-light":{value:"rgba(237, 240, 242, 1)"},"ilo-grey-ui":{value:"rgba(184, 196, 204, 1)"},"ilo-grey-accessible":{value:"rgba(109, 109, 109, 1)"},"ilo-black":{value:"rgba(45, 45, 45, 1)"},"ilo-white":{value:"rgba(255, 255, 255, 1)"},"ilo-ramp-blue":{value:"rgba(190, 220, 250, 1)"},"ilo-ramp-red":{value:"rgba(254, 216, 219, 1)"},"ilo-ramp-green":{value:"rgba(232, 249, 224, 1)"},"ilo-ramp-yellow":{value:"rgba(255, 245, 200, 1)"}},m=280,q=({background:b,logo:s,primarynav:a,mainlink:t,menucloselabel:N,languagelabel:o,languagecontextmenu:n})=>{const{prefix:l}=w.useGlobalSettings(),[d,j]=g.useState(!1),[h,x]=g.useState(!1),i=`${l}--header`,k=C.classnames(i,`${i}--local`,{[`${l}--mobile--open`]:d,[`${l}--select--open`]:h}),p=b||f["ilo-dark-blue"].value,u=()=>{j(!d)},v=()=>{x(!h)};return e.jsx("header",{className:k,children:e.jsxs("div",{className:`${i}--utility-bar ${i}--utility-bar--local`,style:{background:p},children:[e.jsxs("nav",{className:`${l}--nav--local`,children:[e.jsx("div",{className:`${l}--nav--local--logo-wrapper`,children:e.jsx($.Logo,{url:s.url,src:s.src,alt:s.alt,className:`${l}--nav--local--logo`,subbrand:s.subbrand,theme:s.theme,size:s.size||m})}),e.jsx("ul",{className:`${l}--nav--local--set`,children:(a==null?void 0:a.items)&&a.items.map((c,r)=>e.jsx("li",{className:`${l}--nav--local--item`,children:e.jsx("a",{href:c.url,className:`${l}--nav--local--link`,children:e.jsx("span",{children:c.label})})},r))})]}),e.jsx("div",{className:`${l}--language-switcher`,children:e.jsxs("div",{className:`${l}--language-switcher--wrap`,children:[t&&e.jsx("span",{className:`${l}--language-switcher--link--wrap`,children:e.jsx("a",{href:t.url,className:`${l}--language-switcher--link`,children:t.label})}),e.jsx("button",{className:`${l}--language-switcher--button`,type:"button",children:o}),e.jsx(L.ContextMenu,{links:n==null?void 0:n.links})]})}),e.jsx("button",{className:`${i}--menu`,onClick:u,children:"Menu"}),e.jsx("div",{className:`${i}--navigation`,children:e.jsxs("div",{className:`${i}--inner`,children:[e.jsxs("div",{className:`${l}--mobile--nav`,children:[e.jsxs("div",{className:`${l}--mobile--nav--logo`,children:[e.jsx($.Logo,{url:s.url,src:s.src,alt:s.alt,className:`${l}--nav--local--logo`,subbrand:s.subbrand,theme:s.theme,size:s.size||m}),e.jsx("button",{className:`${i}--menu--close`,onClick:u,children:N})]}),e.jsx("div",{className:`${l}--mobile--nav--language--switcher`,children:e.jsx("button",{className:`${l}--mobile--nav--language--switcher--button`,onClick:v,type:"button",children:o})}),e.jsx("div",{className:`${l}--mobile--nav--language--select`,children:e.jsxs("div",{className:`${i}--inner`,children:[e.jsxs("div",{className:`${l}--mobile--subnav--menu`,children:[e.jsx("button",{className:`${l}--mobile--subnav--back`,onClick:v,type:"button"}),e.jsx("button",{className:`${i}--menu--close`,onClick:u,children:"Close"}),e.jsx("h6",{className:`${l}--mobile--subnav--label`,children:o})]}),e.jsx("ul",{className:`${l}--nav--set`,children:(n==null?void 0:n.links)&&n.links.map((c,r)=>e.jsx("li",{className:`${l}--nav--items`,children:e.jsx("a",{href:c.url,className:`${l}--nav--link ${l}--nav--language`,children:c.label})},r))})]})})]}),e.jsxs("nav",{className:`${l}--nav`,"aria-labelledby":"primary-navigation",children:[e.jsx("h2",{className:`${l}--nav--label`,id:"primary-navigation",children:a==null?void 0:a.navlabel}),e.jsx("ul",{className:`${l}--nav--set`,children:(a==null?void 0:a.items)&&a.items.map((c,r)=>e.jsx("li",{className:`${l}--nav--items`,children:e.jsx("a",{href:c.url,className:`${l}--nav--link`,children:c.label})},r))})]})]})})]})})},M=q;exports.LocalNav=M;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./LocalNav-chunk-CL0urssZ.js");exports.LocalNav=e.LocalNav;
@@ -1 +0,0 @@
1
- "use strict";const r=require("react/jsx-runtime"),s=require("react"),T=require("./useGlobalSettings-chunk-Pa38w6VS.js"),R=require("./index-chunk-DCI82Tmm.js"),A=({clientHeight:e,clientWidth:c,scrollHeight:n,scrollWidth:o})=>n>e||o>c,D=(e,{maxSize:c=600,startingHeight:n=9,step:o=.5})=>{let t=n,l=!1;for(;!l&&t<c;)e.style.fontSize=`${t}px`,e.style.lineHeight=`${t}px`,l=A(e),l||(t=t+o);return e.style.fontSize="",e.style.lineHeight="",t-o},I=({baseClass:e,className:c,subbrand:n,alt:o,src:t,style:l,size:f="fluid",theme:u="light",...$})=>{const g=s.useRef(null),h=s.useRef(null),L=s.useRef(null),a=s.useRef(null),[d,F]=s.useState(!1),[p,k]=s.useState(0),[y,H]=s.useState(0),[w,E]=s.useState(!n),j=s.useRef(new ResizeObserver(i=>{const{height:x}=i[0].contentRect;a.current||(a.current=x),k(x)}));s.useEffect(()=>{n&&d&&y&&E(!0)},[d,y,n]),s.useLayoutEffect(()=>{if(d&&h.current&&g.current){const i=g.current;return j.current.observe(i),()=>j.current.unobserve(i)}},[d]),s.useLayoutEffect(()=>{v()},[d,a.current]),s.useLayoutEffect(()=>{v()},[n]);function v(){if(h.current&&L.current&&a.current){const x=D(h.current,{maxSize:a.current})/a.current;H(x)}}function N(){F(!0)}const m=!!n,z=f==="fluid",b=!z&&typeof f=="number",S=`${e}--sub-brand`,q=`${e}--size--fluid`,B=`${e}--visibility--hidden`,W=R.classnames(e,c,`${e}--theme--${u}`,{[B]:!w,[q]:z,[S]:m}),C=`${e}--image`,G=`${S}--image`,O=()=>{const i={};return m&&(i["--logo-image-height"]=`${p}px`,i["--logo-font-size"]=`${y*p}px`),b&&(i.width=`${f}px`),{...l,...i}},V=()=>typeof t=="string"?t:t[u];return r.jsxs("figure",{className:W,style:O(),children:[r.jsx("img",{ref:g,alt:o,src:V(),className:R.classnames({[G]:m,[C]:!m}),onLoad:N,...$}),m&&r.jsxs("div",{ref:h,className:`${S}--lock-up`,children:[r.jsx("span",{className:`${S}--lock-up--separator`}),r.jsx("span",{ref:L,children:n})]})]})},J=({className:e,url:c,target:n,style:o,size:t,...l})=>{const{prefix:f}=T.useGlobalSettings(),u=`${f}--logo`,$=`${u}--link`,g=`${u}--size--fluid`;return c?r.jsx("a",{href:c,target:n,className:R.classnames($,e,{[g]:t==="fluid"}),style:o,children:r.jsx(I,{...l,baseClass:u,size:t})}):r.jsx(I,{baseClass:u,className:e,style:o,size:t,...l})},K=J;exports.Logo=K;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./Logo-chunk-Cl60tiPV.js");exports.Logo=o.Logo;
@@ -1 +0,0 @@
1
- "use strict";const e=require("react/jsx-runtime"),c=require("react"),z=require("./useGlobalSettings-chunk-Pa38w6VS.js"),A=require("./ContextMenu-chunk-BegVo-Ry.js"),C=require("./SearchField-chunk-DRdhLGEo.js"),B=require("./index-chunk-DCI82Tmm.js"),D=({logo:w,mobilelogo:L,siteurl:j,tagline:m,primarynav:t,subnav:l,menulabel:O,menucloselabel:f,searchlabel:q,searchfield:n,languagelabel:$,languagecontextmenu:o})=>{const{prefix:s}=z.useGlobalSettings(),[N,y]=c.useState(!1),[x,v]=c.useState(!1),[M,g]=c.useState(!1),[k,p]=c.useState(!1),[E,S]=c.useState(!1),[d,F]=c.useState(!1),a=`${s}--header`,I=B.classnames(a,{[`${s}--mobile--open`]:N,[`${s}--search--open`]:x,[`${s}--subnav--open`]:k,[`${s}--select--open`]:d,[`${s}--context--open`]:d}),u=c.useRef(null),R=()=>{u.current&&u.current.focus()},h=()=>{y(!N)},r=c.useCallback(()=>{F(!d)},[d]),G=()=>{if(x){v(!1),setTimeout(()=>g(!1),225);return}g(!0),setTimeout(()=>v(!0),10),setTimeout(()=>R(),50)},T=()=>{if(k){p(!1),setTimeout(()=>S(!1),125);return}S(!0),setTimeout(()=>p(!0),10)};return c.useEffect(()=>{if(window)return d?window.addEventListener("click",r):window.removeEventListener("click",r),()=>window.removeEventListener("click",r)},[d,r]),e.jsxs("header",{className:I,children:[e.jsx("div",{className:`${a}--utility-bar`,children:e.jsx("div",{className:`${s}--language-switcher`,children:e.jsxs("div",{className:`${s}--language-switcher--wrap`,children:[e.jsx("button",{className:`${s}--language-switcher--button`,type:"button",onClick:r,children:$}),e.jsx(A.ContextMenu,{links:o==null?void 0:o.links})]})})}),e.jsx("div",{className:`${a}--logo-bar`,children:e.jsxs("div",{className:`${a}--inner ${s}--container`,children:[e.jsx("a",{href:j,className:`${a}--logo-link`,children:e.jsx("img",{className:`${a}--logo`,src:w,alt:"ILO Logo"})}),e.jsxs("p",{className:`${a}--logo-tagline`,children:[m==null?void 0:m.tag,e.jsx("span",{className:`${a}--logo-tagline--small`,children:m==null?void 0:m.small})]}),e.jsx("button",{className:`${a}--menu`,onClick:h,children:O})]})}),e.jsxs("div",{className:`${a}--navigation`,children:[e.jsxs("div",{className:`${a}--inner ${s}--container`,children:[e.jsxs("div",{className:`${s}--mobile--nav`,children:[e.jsxs("div",{className:`${s}--mobile--nav--logo`,children:[e.jsx("a",{href:j,className:`${a}--logo-link`,children:e.jsx("img",{className:`${a}--logo`,src:L,alt:"ILO Logo"})}),e.jsx("button",{className:`${a}--menu--close`,onClick:h,children:f})]}),e.jsx("div",{className:`${s}--mobile--nav--search`,children:e.jsx(C.SearchField,{input:n==null?void 0:n.input,action:n==null?void 0:n.action})}),e.jsx("div",{className:`${s}--mobile--nav--language--switcher`,children:e.jsx("button",{className:`${s}--mobile--nav--language--switcher--button`,onClick:r,type:"button",children:$})}),e.jsx("div",{className:`${s}--mobile--nav--language--select`,children:e.jsxs("div",{className:`${a}--inner ${s}--container`,children:[e.jsxs("div",{className:`${s}--mobile--subnav--menu`,children:[e.jsx("button",{className:`${s}--mobile--subnav--back`,onClick:r,type:"button",children:l==null?void 0:l.mobilebacklabel}),e.jsx("button",{className:`${a}--menu--close`,onClick:h,children:l==null?void 0:l.mobilecloselabel}),e.jsx("h6",{className:`${s}--mobile--subnav--label`,children:$})]}),e.jsx("ul",{className:`${s}--nav--set`,children:(o==null?void 0:o.links)&&o.links.map((i,b)=>e.jsx("li",{className:`${s}--nav--items`,children:e.jsx("a",{href:i.url,className:`${s}--nav--link ${s}--nav--language`,children:i.label})},b))})]})})]}),e.jsxs("nav",{className:`${s}--nav`,"aria-labelledby":"primary-navigation",children:[e.jsx("h2",{className:`${s}--nav--label`,id:"primary-navigation",children:t==null?void 0:t.navlabel}),e.jsxs("ul",{className:`${s}--nav--set`,children:[(t==null?void 0:t.items)&&t.items.map((i,b)=>e.jsx("li",{className:`${s}--nav--items`,children:e.jsx("a",{href:i.url,className:`${s}--nav--link`,children:i.label})},b)),l&&e.jsx("li",{className:`${s}--nav--items`,children:e.jsx("button",{className:`${s}--nav--trigger`,onClick:T,children:l.buttonlabel})})]})]}),e.jsx("div",{className:`${s}--search`,children:e.jsx("button",{className:`${s}--search--button`,type:"button",onClick:G,children:q})})]}),l&&e.jsx("nav",{style:{display:E?"block":"none"},className:`${s}--subnav`,"aria-labelledby":"secondary-navigation",children:e.jsxs("div",{className:`${s}--subnav--inner ${s}--container`,children:[e.jsx("div",{className:`${s}--mobile--subnav`,children:e.jsxs("div",{className:`${s}--mobile--subnav--menu`,children:[e.jsx("button",{className:`${s}--mobile--subnav--back`,onClick:T,type:"button",children:l.mobilebacklabel}),e.jsx("button",{className:`${s}--header--menu--close`,onClick:h,children:l.mobilecloselabel}),e.jsx("h6",{className:`${s}--mobile--subnav--label`,children:l.buttonlabel})]})}),e.jsx("h2",{className:`${s}--nav--label`,id:"secondary-navigation",children:l.navlabel}),e.jsx("ul",{className:`${s}--subnav--set`,children:(l==null?void 0:l.items)&&l.items.map((i,b)=>e.jsx("li",{className:`${s}--subnav--items`,children:e.jsx("a",{href:i.url,className:`${s}--subnav--link`,children:i.label})},b))})]})}),e.jsx("div",{style:{display:M?"block":"none"},className:`${s}--search-box`,children:e.jsx("div",{className:`${s}--header--inner ${s}--container`,children:e.jsx(C.SearchField,{input:n==null?void 0:n.input,action:n==null?void 0:n.action,ref:u})})})]})]})},H=D;exports.Navigation=H;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./Navigation-chunk-CKk-EzZF.js");exports.Navigation=i.Navigation;
@@ -1 +0,0 @@
1
- "use strict";const e=require("react/jsx-runtime"),t=require("./index-chunk-DCI82Tmm.js"),S=require("./useGlobalSettings-chunk-Pa38w6VS.js"),b=({className:o,theme:r="light",justify:$="start",headline:c,icons:u,iconSize:d="normal"})=>{const{prefix:_}=S.useGlobalSettings(),s=`${_}--social-media`,h=`${s}__theme__${r}`,m=`${s}__justify__${$}`,j=t.classnames(s,h,m,o),x=`${s}--headline`,i=`${s}--list`,a=`${i}--item`,n=`${a}--icon`,C=`${a}--icon__${d}`;return e.jsxs("div",{className:j,children:[c&&e.jsx("h5",{className:x,children:c}),e.jsx("ul",{className:i,children:u.map(l=>e.jsx("li",{className:a,children:e.jsx("a",{title:l.label,className:t.classnames(n,C,`${n}__${l.icon}`),href:l.url,children:l.label})},l.url))})]})},N=b;exports.SocialMedia=N;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("./SocialMedia-chunk-DrxlykT6.js"),o={headline:"Follow us on social media",theme:"light",justify:"start",iconSize:"normal",icons:[{icon:"facebook",url:"https://www.facebook.com/ilo.org",label:"Facebook"},{icon:"x",url:"https://x.com/ilo",label:"x"},{icon:"instagram",url:"https://www.instagram.com/ilo.org/",label:"Instagram"},{icon:"linkedin",url:"https://www.linkedin.com/company/international-labour-organization-ilo",label:"LinkedIn"},{icon:"youtube",url:"https://www.youtube.com/channel/UCQsVmhSa4X-G3lHlUtejzLA",label:"YouTube"},{icon:"tiktok",url:"https://www.tiktok.com/@ilo",label:"TikTok"},{icon:"flickr",url:"https://www.flickr.com/photos/ilopictures/albums",label:"TikTok"}]};({...o});({...o});exports.SocialMedia=l.SocialMedia;exports.defaultArgs=o;
@@ -1 +0,0 @@
1
- "use strict";const e=require("react/jsx-runtime"),h=require("react"),$=require("./index-chunk-DCI82Tmm.js"),N=require("./useGlobalSettings-chunk-Pa38w6VS.js"),S=require("./Icon-chunk-BiF41wYy.js"),I=require("./checkArrayDuplicates-chunk-Bqxwhc1q.js"),j=h.createContext({}),_=({className:C,children:a,id:t,url:d,type:s,callback:r,...c})=>{const{prefix:u}=N.useGlobalSettings(),{activeItems:x,setActiveItems:b,allowMultipleActive:f}=h.useContext(j),o=x.indexOf(t)>-1,i=`${u}--tag`,m=`${u}--tag-set__item`,p=s,l=$.classnames(C,{[i]:!0,[`${i}--active`]:o,[`${i}--${s}`]:s,"icon icon__position--right":!0});let g=o;const q=n=>{b(I.e({id:t,itemStatuses:x,allowMultipleExpanded:f})),g=!1,r&&r(n)},v=()=>{let n;return g&&(n=e.jsx("li",{className:m,children:e.jsxs("button",{type:"button",className:l,onClick:T=>q(T),id:t,...c,children:[a,e.jsx(S.Icon,{name:"close",hidden:!0})]})})),n};return e.jsx(e.Fragment,{children:p==="button"?e.jsx(e.Fragment,{children:v()}):e.jsxs("li",{className:m,children:[s==="anchor"&&e.jsx("a",{className:l,href:o?d:"",id:t,...c,children:a}),s==="display"&&e.jsx("span",{className:l,id:t,...c,children:a})]})})},A=_;exports.Tag=A;exports.TagSetContext=j;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("./Tag-chunk-CdVExQzv.js"),o=require("react/jsx-runtime"),b=require("./index-chunk-DCI82Tmm.js"),r=require("react"),d=require("./useGlobalSettings-chunk-Pa38w6VS.js"),f=require("./checkArrayDuplicates-chunk-Bqxwhc1q.js"),p=({className:i,children:t,onButtonClick:u,defaultTagActive:e=[],allowMultipleActive:n=!0,...g})=>{const{prefix:S}=d.useGlobalSettings(),m=`${S}--tag-set`,[l,a]=r.useState([]),q=JSON.stringify(e);if(r.useEffect(()=>{const s=n?e:e.length>0?[e[0]]:e;a(s)},[q,n]),t){const s=[];r.Children.forEach(t,x=>{const T=x;s.push(T.props.id)}),f.checkArrayDuplicates(s)&&console.warn("Warning: Tags must have unique ids.")}const h=b.classnames(i,{[m]:!0});return o.jsx(c.TagSetContext.Provider,{value:{activeItems:l,setActiveItems:a,allowMultipleActive:n,onButtonClick:u},children:o.jsx("ul",{className:h,...g,children:t})})},y=p;exports.Tag=c.Tag;exports.TagSet=y;