@inera/ids-react 6.2.0 → 7.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (219) hide show
  1. package/components/accordion/accordion.d.ts +1 -1
  2. package/components/accordion/accordion.js +6 -7
  3. package/components/agent/agent.d.ts +1 -1
  4. package/components/agent/agent.js +2 -2
  5. package/components/alert/alert.d.ts +1 -1
  6. package/components/alert/alert.js +9 -2
  7. package/components/alert-global/alert-global.d.ts +2 -2
  8. package/components/alert-global/alert-global.js +6 -7
  9. package/components/badge/badge.d.ts +4 -3
  10. package/components/badge/badge.js +4 -3
  11. package/components/box-link/box-link.d.ts +11 -3
  12. package/components/box-link/box-link.js +9 -9
  13. package/components/breadcrumbs/breadcrumbs.d.ts +1 -1
  14. package/components/breadcrumbs/breadcrumbs.js +4 -2
  15. package/components/button/button.d.ts +23 -5
  16. package/components/button/button.js +95 -11
  17. package/components/button-group/button-group.d.ts +13 -3
  18. package/components/button-group/button-group.js +10 -9
  19. package/components/card/card.d.ts +4 -3
  20. package/components/card/card.js +16 -8
  21. package/components/carousel/carousel-item.d.ts +10 -0
  22. package/components/carousel/carousel-item.js +24 -0
  23. package/components/carousel/carousel.d.ts +11 -5
  24. package/components/carousel/carousel.js +167 -16
  25. package/components/date-label/date-label.d.ts +2 -2
  26. package/components/date-label/date-label.js +4 -40
  27. package/components/dialog/dialog.d.ts +23 -6
  28. package/components/dialog/dialog.js +75 -13
  29. package/components/dropdown/dropdown-content-link.d.ts +6 -0
  30. package/components/dropdown/dropdown-content-link.js +20 -0
  31. package/components/dropdown/dropdown.d.ts +16 -8
  32. package/components/dropdown/dropdown.js +72 -20
  33. package/components/footer-1177/footer-1177.d.ts +23 -3
  34. package/components/footer-1177/footer-1177.js +64 -9
  35. package/components/footer-1177-admin/footer-1177-admin.d.ts +21 -3
  36. package/components/footer-1177-admin/footer-1177-admin.js +63 -9
  37. package/components/footer-1177-pro/footer-1177-pro.d.ts +17 -3
  38. package/components/footer-1177-pro/footer-1177-pro.js +39 -9
  39. package/components/footer-inera/footer-inera.d.ts +23 -3
  40. package/components/footer-inera/footer-inera.js +64 -9
  41. package/components/footer-inera-admin/footer-inera-admin.d.ts +23 -3
  42. package/components/footer-inera-admin/footer-inera-admin.js +61 -9
  43. package/components/form/check-button/check-button.d.ts +7 -3
  44. package/components/form/check-button/check-button.js +12 -5
  45. package/components/form/checkbox/checkbox-group.d.ts +13 -3
  46. package/components/form/checkbox/checkbox-group.js +51 -9
  47. package/components/form/checkbox/checkbox.d.ts +17 -3
  48. package/components/form/checkbox/checkbox.js +52 -5
  49. package/components/form/error-message/error-message.d.ts +10 -0
  50. package/components/form/error-message/error-message.js +12 -0
  51. package/components/form/form-hooks/useAriaDescribedBy.d.ts +1 -0
  52. package/components/form/form-hooks/useAriaDescribedBy.js +26 -0
  53. package/components/form/form-hooks/useGroupValidity.d.ts +1 -0
  54. package/components/form/form-hooks/useGroupValidity.js +60 -0
  55. package/components/form/form-hooks/useInputValidity.d.ts +1 -0
  56. package/components/form/form-hooks/useInputValidity.js +27 -0
  57. package/components/form/input/input.d.ts +22 -3
  58. package/components/form/input/input.js +58 -8
  59. package/components/form/radio/radio-group.d.ts +13 -3
  60. package/components/form/radio/radio-group.js +28 -5
  61. package/components/form/radio/radio.d.ts +17 -3
  62. package/components/form/radio/radio.js +24 -8
  63. package/components/form/radio-button/radio-button-group.d.ts +9 -0
  64. package/components/form/radio-button/radio-button-group.js +22 -0
  65. package/components/form/radio-button/radio-button.d.ts +9 -0
  66. package/components/form/radio-button/radio-button.js +15 -0
  67. package/components/form/range/range.d.ts +16 -3
  68. package/components/form/range/range.js +30 -8
  69. package/components/form/select/select.d.ts +15 -3
  70. package/components/form/select/select.js +20 -8
  71. package/components/form/select-multiple/select-multiple.d.ts +18 -3
  72. package/components/form/select-multiple/select-multiple.js +60 -9
  73. package/components/form/spinner/spinner.d.ts +9 -3
  74. package/components/form/spinner/spinner.js +9 -9
  75. package/components/form/textarea/textarea.d.ts +18 -3
  76. package/components/form/textarea/textarea.js +27 -8
  77. package/components/form/time/time.d.ts +13 -3
  78. package/components/form/time/time.js +22 -8
  79. package/components/form/toggle/toggle.d.ts +8 -3
  80. package/components/form/toggle/toggle.js +11 -8
  81. package/components/grid/column.d.ts +16 -0
  82. package/components/grid/column.js +13 -0
  83. package/components/grid/container.d.ts +9 -0
  84. package/components/grid/container.js +24 -0
  85. package/components/grid/row.d.ts +9 -0
  86. package/components/grid/row.js +18 -0
  87. package/components/header-1177/header-1177-avatar.d.ts +10 -2
  88. package/components/header-1177/header-1177-avatar.js +30 -8
  89. package/components/header-1177/header-1177-item.d.ts +12 -2
  90. package/components/header-1177/header-1177-item.js +25 -8
  91. package/components/header-1177/header-1177-menu-mobile.d.ts +11 -0
  92. package/components/header-1177/header-1177-menu-mobile.js +42 -0
  93. package/components/header-1177/header-1177-nav-item-mobile.d.ts +11 -2
  94. package/components/header-1177/header-1177-nav-item-mobile.js +24 -8
  95. package/components/header-1177/header-1177-nav-item.d.ts +15 -2
  96. package/components/header-1177/header-1177-nav-item.js +22 -8
  97. package/components/header-1177/header-1177-nav.d.ts +8 -2
  98. package/components/header-1177/header-1177-nav.js +14 -8
  99. package/components/header-1177/header-1177.d.ts +22 -5
  100. package/components/header-1177/header-1177.js +41 -12
  101. package/components/header-1177-admin/header-1177-admin-avatar-mobile.d.ts +9 -2
  102. package/components/header-1177-admin/header-1177-admin-avatar-mobile.js +6 -8
  103. package/components/header-1177-admin/header-1177-admin-avatar.d.ts +10 -2
  104. package/components/header-1177-admin/header-1177-admin-avatar.js +31 -8
  105. package/components/header-1177-admin/header-1177-admin-item.d.ts +12 -2
  106. package/components/header-1177-admin/header-1177-admin-item.js +26 -8
  107. package/components/header-1177-admin/header-1177-admin-nav-item.d.ts +15 -2
  108. package/components/header-1177-admin/header-1177-admin-nav-item.js +24 -8
  109. package/components/header-1177-admin/header-1177-admin-nav.d.ts +7 -2
  110. package/components/header-1177-admin/header-1177-admin-nav.js +12 -8
  111. package/components/header-1177-admin/header-1177-admin.d.ts +22 -3
  112. package/components/header-1177-admin/header-1177-admin.js +26 -9
  113. package/components/header-1177-pro/header-1177-pro-avatar-mobile.d.ts +9 -2
  114. package/components/header-1177-pro/header-1177-pro-avatar-mobile.js +6 -8
  115. package/components/header-1177-pro/header-1177-pro-avatar.d.ts +10 -2
  116. package/components/header-1177-pro/header-1177-pro-avatar.js +31 -8
  117. package/components/header-1177-pro/header-1177-pro-item.d.ts +12 -2
  118. package/components/header-1177-pro/header-1177-pro-item.js +23 -8
  119. package/components/header-1177-pro/header-1177-pro-nav-item.d.ts +15 -2
  120. package/components/header-1177-pro/header-1177-pro-nav-item.js +33 -8
  121. package/components/header-1177-pro/header-1177-pro-nav-menu-mobile.d.ts +11 -5
  122. package/components/header-1177-pro/header-1177-pro-nav-menu-mobile.js +32 -12
  123. package/components/header-1177-pro/header-1177-pro-nav.d.ts +10 -2
  124. package/components/header-1177-pro/header-1177-pro-nav.js +27 -8
  125. package/components/header-1177-pro/header-1177-pro.d.ts +23 -5
  126. package/components/header-1177-pro/header-1177-pro.js +37 -12
  127. package/components/header-inera/header-inera-item.d.ts +13 -2
  128. package/components/header-inera/header-inera-item.js +24 -8
  129. package/components/header-inera/header-inera-nav-item.d.ts +15 -2
  130. package/components/header-inera/header-inera-nav-item.js +54 -8
  131. package/components/header-inera/header-inera-nav-mobile.d.ts +11 -5
  132. package/components/header-inera/header-inera-nav-mobile.js +44 -12
  133. package/components/header-inera/header-inera-nav.d.ts +7 -2
  134. package/components/header-inera/header-inera-nav.js +13 -8
  135. package/components/header-inera/header-inera.d.ts +16 -3
  136. package/components/header-inera/header-inera.js +16 -9
  137. package/components/header-inera-admin/header-inera-admin-avatar-mobile.d.ts +9 -2
  138. package/components/header-inera-admin/header-inera-admin-avatar-mobile.js +11 -8
  139. package/components/header-inera-admin/header-inera-admin-avatar.d.ts +12 -2
  140. package/components/header-inera-admin/header-inera-admin-avatar.js +32 -8
  141. package/components/header-inera-admin/header-inera-admin-item.d.ts +13 -2
  142. package/components/header-inera-admin/header-inera-admin-item.js +24 -8
  143. package/components/header-inera-admin/header-inera-admin-nav-item.d.ts +16 -2
  144. package/components/header-inera-admin/header-inera-admin-nav-item.js +54 -8
  145. package/components/header-inera-admin/header-inera-admin-nav-mobile.d.ts +12 -5
  146. package/components/header-inera-admin/header-inera-admin-nav-mobile.js +32 -12
  147. package/components/header-inera-admin/header-inera-admin-nav.d.ts +8 -2
  148. package/components/header-inera-admin/header-inera-admin-nav.js +13 -8
  149. package/components/header-inera-admin/header-inera-admin.d.ts +15 -3
  150. package/components/header-inera-admin/header-inera-admin.js +24 -9
  151. package/components/header-patient/header-patient.d.ts +13 -0
  152. package/components/header-patient/header-patient.js +21 -0
  153. package/components/link/link.d.ts +17 -3
  154. package/components/link/link.js +42 -9
  155. package/components/mobile/menu/item/mobile-item.d.ts +15 -4
  156. package/components/mobile/menu/item/mobile-item.js +58 -11
  157. package/components/mobile/menu/mobile-menu.d.ts +7 -3
  158. package/components/mobile/menu/mobile-menu.js +9 -9
  159. package/components/navigation/content/navigation-content.d.ts +7 -3
  160. package/components/navigation/content/navigation-content.js +18 -9
  161. package/components/navigation/local/navigation-local.d.ts +7 -3
  162. package/components/navigation/local/navigation-local.js +6 -9
  163. package/components/notification/badge/notification-badge.d.ts +4 -2
  164. package/components/notification/badge/notification-badge.js +4 -3
  165. package/components/pagination/data-pagination/data-pagination.d.ts +24 -3
  166. package/components/pagination/data-pagination/data-pagination.js +14 -9
  167. package/components/pagination/list-pagination/list-pagination.d.ts +19 -7
  168. package/components/pagination/list-pagination/list-pagination.js +51 -14
  169. package/components/popover/popover.d.ts +20 -5
  170. package/components/popover/popover.js +192 -16
  171. package/components/progressbar/progressbar.d.ts +1 -1
  172. package/components/progressbar/progressbar.js +4 -2
  173. package/components/puff-list/puff-list-item/puff-list-item-info.d.ts +7 -0
  174. package/components/puff-list/puff-list-item/puff-list-item-info.js +8 -0
  175. package/components/puff-list/puff-list-item/puff-list-item.d.ts +19 -3
  176. package/components/puff-list/puff-list-item/puff-list-item.js +56 -9
  177. package/components/puff-list/puff-list.d.ts +7 -3
  178. package/components/puff-list/puff-list.js +6 -9
  179. package/components/region-icon/region-icon.d.ts +12 -0
  180. package/components/region-icon/region-icon.js +25 -0
  181. package/components/side-menu/side-menu.d.ts +16 -6
  182. package/components/side-menu/side-menu.js +52 -13
  183. package/components/side-panel/side-panel.d.ts +21 -6
  184. package/components/side-panel/side-panel.js +74 -13
  185. package/components/stepper/step.d.ts +18 -0
  186. package/components/stepper/step.js +41 -0
  187. package/components/stepper/stepper.d.ts +9 -7
  188. package/components/stepper/stepper.js +21 -19
  189. package/components/tabs/tab-panel.d.ts +11 -0
  190. package/components/tabs/tab-panel.js +20 -0
  191. package/components/tabs/tab.d.ts +15 -0
  192. package/components/tabs/tab.js +19 -0
  193. package/components/tabs/tabs.d.ts +14 -9
  194. package/components/tabs/tabs.js +79 -25
  195. package/components/tag/tag.d.ts +5 -6
  196. package/components/tag/tag.js +9 -9
  197. package/components/tooltip/tooltip.d.ts +10 -3
  198. package/components/tooltip/tooltip.js +79 -9
  199. package/components/utils/contexts/HeaderContext.d.ts +9 -0
  200. package/components/utils/contexts/HeaderContext.js +7 -0
  201. package/components/utils/hooks/useElementId.d.ts +5 -0
  202. package/components/utils/hooks/useElementId.js +12 -0
  203. package/components/utils/hooks/useFocusTrap.d.ts +1 -0
  204. package/components/utils/hooks/useFocusTrap.js +44 -0
  205. package/components/utils/utils.d.ts +6 -0
  206. package/components/utils/utils.js +44 -0
  207. package/index.d.ts +15 -5
  208. package/index.js +20 -10
  209. package/package.json +2 -2
  210. package/components/form/errormessage/error-message.d.ts +0 -3
  211. package/components/form/errormessage/error-message.js +0 -12
  212. package/components/grid/grid.d.ts +0 -9
  213. package/components/grid/grid.js +0 -26
  214. package/components/header-1177/header-1177-nav-menu-mobile.d.ts +0 -5
  215. package/components/header-1177/header-1177-nav-menu-mobile.js +0 -15
  216. package/components/icon-region/icon-region.d.ts +0 -3
  217. package/components/icon-region/icon-region.js +0 -12
  218. package/components/puff-list/puff-list-item/puff-list-info/puff-list-item-info.d.ts +0 -3
  219. package/components/puff-list/puff-list-item/puff-list-info/puff-list-item-info.js +0 -12
@@ -1,12 +1,12 @@
1
- import * as React from 'react';
2
- import '@inera/ids-core/components/form/spinner/register.js';
3
- import { IDSSpinner as IDSSpinner$1 } from '@inera/ids-core/components/form/spinner/spinner-element.js';
4
- import { createComponent } from '@lit-labs/react';
1
+ "use client";
2
+ import { jsxs, jsx } from 'react/jsx-runtime';
3
+ import '@inera/ids-design/components/form/spinner/spinner.css';
4
+ import clsx from 'clsx';
5
5
 
6
- const IDSSpinner = createComponent({
7
- tagName: 'ids-spinner',
8
- elementClass: IDSSpinner$1,
9
- react: React,
10
- });
6
+ const IDSSpinner = ({ light = false, live = "polite", srText = "", className, ...props }) => {
7
+ return (jsxs("div", { role: "alert", className: clsx("ids-spinner", {
8
+ "ids-spinner--light": light
9
+ }, className), "aria-live": live, ...props, children: [jsx("p", { className: "ids-spinner-sr", children: srText }), jsx("div", { className: "ids-bounce-1" }), jsx("div", { className: "ids-bounce-2" }), jsx("div", { className: "ids-bounce-3" })] }));
10
+ };
11
11
 
12
12
  export { IDSSpinner };
@@ -1,3 +1,18 @@
1
- import '@inera/ids-core/components/form/textarea/register.js';
2
- import { IDSTextarea as Textarea } from '@inera/ids-core/components/form/textarea/textarea-element.js';
3
- export declare const IDSTextarea: import("@lit-labs/react").ReactWebComponent<Textarea, {}>;
1
+ import { ReactNode, TextareaHTMLAttributes } from "react";
2
+ interface IDSTextareaProps extends TextareaHTMLAttributes<HTMLTextAreaElement> {
3
+ label?: string;
4
+ hint?: string | ReactNode;
5
+ errorMsg?: string;
6
+ disabled?: boolean;
7
+ invalid?: boolean;
8
+ required?: boolean;
9
+ noValidation?: boolean;
10
+ autoSize?: boolean;
11
+ noResize?: boolean;
12
+ block?: boolean;
13
+ light?: boolean;
14
+ readOnly?: boolean;
15
+ tooltip?: ReactNode;
16
+ }
17
+ export declare const IDSTextarea: import("react").ForwardRefExoticComponent<IDSTextareaProps & import("react").RefAttributes<HTMLTextAreaElement>>;
18
+ export {};
@@ -1,12 +1,31 @@
1
- import * as React from 'react';
2
- import { createComponent } from '@lit-labs/react';
3
- import '@inera/ids-core/components/form/textarea/register.js';
4
- import { IDSTextarea as IDSTextarea$1 } from '@inera/ids-core/components/form/textarea/textarea-element.js';
1
+ "use client";
2
+ import { jsxs, jsx } from 'react/jsx-runtime';
3
+ import { forwardRef, useRef, useImperativeHandle } from 'react';
4
+ import { useElementId } from '../../utils/hooks/useElementId.js';
5
+ import { IDSErrorMessage } from '../error-message/error-message.js';
6
+ import { useInputValidity } from '../form-hooks/useInputValidity.js';
7
+ import { useAriaDescribedBy } from '../form-hooks/useAriaDescribedBy.js';
8
+ import clsx from 'clsx';
5
9
 
6
- const IDSTextarea = createComponent({
7
- tagName: 'ids-textarea',
8
- elementClass: IDSTextarea$1,
9
- react: React,
10
+ const IDSTextarea = forwardRef(({ label = "", hint, errorMsg = "", disabled = false, invalid = false, required = false, noValidation = false, autoSize = false, noResize = false, block = false, light = false, readOnly = false, id, tooltip, className, ...props }, ref) => {
11
+ const fieldId = useElementId(id);
12
+ const errorMsgId = useElementId();
13
+ const hintId = useElementId();
14
+ const textareaRef = useRef(null);
15
+ useImperativeHandle(ref, () => textareaRef.current);
16
+ const hasValidValue = useInputValidity(textareaRef);
17
+ const isInvalid = (invalid || !hasValidValue) && !noValidation;
18
+ useAriaDescribedBy(textareaRef, errorMsgId, isInvalid, !!errorMsg, !!hint, hintId);
19
+ return (jsxs("div", { className: clsx("ids-textarea", {
20
+ "ids-textarea--block": block,
21
+ "ids-textarea--autosize": autoSize,
22
+ "ids-textarea--no-resize": noResize
23
+ }, className), children: [jsxs("div", { className: "ids-label-tooltip-wrapper", children: [jsx("label", { className: clsx("ids-label", {
24
+ "ids-label--disabled": disabled || readOnly
25
+ }), htmlFor: fieldId, children: label }), tooltip && tooltip] }), jsx("textarea", { ref: textareaRef, id: fieldId, className: clsx("ids-textarea__textarea", {
26
+ "ids-input--light": light
27
+ }), "aria-invalid": isInvalid, required: required, "aria-required": required, disabled: disabled, "aria-disabled": disabled, readOnly: readOnly, ...props }), hint && (jsx("div", { id: hintId, className: "ids-input__hint", children: hint })), isInvalid && errorMsg && (jsx(IDSErrorMessage, { id: errorMsgId, show: true, children: errorMsg }))] }));
10
28
  });
29
+ IDSTextarea.displayName = "IDSTextarea";
11
30
 
12
31
  export { IDSTextarea };
@@ -1,3 +1,13 @@
1
- import '@inera/ids-core/components/form/time/register.js';
2
- import { IDSTime as Time } from '@inera/ids-core/components/form/time/time-element.js';
3
- export declare const IDSTime: import("@lit-labs/react").ReactWebComponent<Time, {}>;
1
+ import { ReactNode, InputHTMLAttributes } from "react";
2
+ interface IDSTimeProps extends InputHTMLAttributes<HTMLInputElement> {
3
+ label?: string;
4
+ errorMsg?: string;
5
+ disabled?: boolean;
6
+ invalid?: boolean;
7
+ required?: boolean;
8
+ noValidation?: boolean;
9
+ light?: boolean;
10
+ tooltip?: ReactNode;
11
+ }
12
+ export declare const IDSTime: import("react").ForwardRefExoticComponent<IDSTimeProps & import("react").RefAttributes<HTMLInputElement>>;
13
+ export {};
@@ -1,12 +1,26 @@
1
- import * as React from 'react';
2
- import { createComponent } from '@lit-labs/react';
3
- import '@inera/ids-core/components/form/time/register.js';
4
- import { IDSTime as IDSTime$1 } from '@inera/ids-core/components/form/time/time-element.js';
1
+ "use client";
2
+ import { jsxs, jsx } from 'react/jsx-runtime';
3
+ import { forwardRef, useRef, useImperativeHandle } from 'react';
4
+ import { useElementId } from '../../utils/hooks/useElementId.js';
5
+ import { IDSErrorMessage } from '../error-message/error-message.js';
6
+ import { useInputValidity } from '../form-hooks/useInputValidity.js';
7
+ import { useAriaDescribedBy } from '../form-hooks/useAriaDescribedBy.js';
8
+ import clsx from 'clsx';
5
9
 
6
- const IDSTime = createComponent({
7
- tagName: 'ids-time',
8
- elementClass: IDSTime$1,
9
- react: React,
10
+ const IDSTime = forwardRef(({ label = "", errorMsg = "", disabled = false, invalid = false, required = false, noValidation = false, light = false, id, tooltip, className, ...props }, ref) => {
11
+ const fieldId = useElementId(id);
12
+ const errorMsgId = useElementId();
13
+ const inputRef = useRef(null);
14
+ useImperativeHandle(ref, () => inputRef.current);
15
+ const hasValidValue = useInputValidity(inputRef);
16
+ const isInvalid = (invalid || !hasValidValue) && !noValidation;
17
+ useAriaDescribedBy(inputRef, errorMsgId, isInvalid, !!errorMsg);
18
+ return (jsxs("div", { className: clsx("ids-time-component", className), children: [jsxs("div", { className: "ids-label-tooltip-wrapper", children: [jsx("label", { className: clsx("ids-label", {
19
+ "ids-label--disabled": disabled
20
+ }), htmlFor: fieldId, children: label }), tooltip] }), jsx("div", { className: "ids-time", children: jsx("div", { className: "ids-time__input-wrapper", children: jsx("input", { ref: inputRef, id: fieldId, type: "time", className: clsx("ids-time__input", {
21
+ "ids-input--light": light
22
+ }), "aria-invalid": isInvalid, required: required, "aria-required": required, disabled: disabled, "aria-disabled": disabled, ...props }) }) }), isInvalid && errorMsg && (jsx(IDSErrorMessage, { id: errorMsgId, show: true, children: errorMsg }))] }));
10
23
  });
24
+ IDSTime.displayName = "IDSTime";
11
25
 
12
26
  export { IDSTime };
@@ -1,3 +1,8 @@
1
- import '@inera/ids-core/components/form/toggle/register.js';
2
- import { IDSToggle as Toggle } from '@inera/ids-core/components/form/toggle/toggle-element.js';
3
- export declare const IDSToggle: import("@lit-labs/react").ReactWebComponent<Toggle, {}>;
1
+ import { ReactNode, InputHTMLAttributes } from "react";
2
+ interface IDSToggleProps extends InputHTMLAttributes<HTMLInputElement> {
3
+ disabled?: boolean;
4
+ tooltip?: ReactNode;
5
+ children?: ReactNode;
6
+ }
7
+ export declare const IDSToggle: import("react").ForwardRefExoticComponent<IDSToggleProps & import("react").RefAttributes<HTMLInputElement>>;
8
+ export {};
@@ -1,12 +1,15 @@
1
- import * as React from 'react';
2
- import { createComponent } from '@lit-labs/react';
3
- import '@inera/ids-core/components/form/toggle/register.js';
4
- import { IDSToggle as IDSToggle$1 } from '@inera/ids-core/components/form/toggle/toggle-element.js';
1
+ "use client";
2
+ import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
3
+ import { forwardRef, useRef, useImperativeHandle } from 'react';
4
+ import { useElementId } from '../../utils/hooks/useElementId.js';
5
+ import clsx from 'clsx';
5
6
 
6
- const IDSToggle = createComponent({
7
- tagName: 'ids-toggle',
8
- elementClass: IDSToggle$1,
9
- react: React,
7
+ const IDSToggle = forwardRef(({ disabled = false, tooltip, id, children, className, ...props }, ref) => {
8
+ const fieldId = useElementId(id);
9
+ const toggleRef = useRef(null);
10
+ useImperativeHandle(ref, () => toggleRef.current);
11
+ return (jsx(Fragment, { children: jsxs("div", { className: clsx("ids-toggle", className), children: [jsx("input", { id: fieldId, ref: toggleRef, className: "ids-toggle__input", type: "checkbox", disabled: disabled, ...props }), jsxs("div", { className: "ids-label-tooltip-wrapper ids-label-tooltip-wrapper--inline", children: [jsx("label", { htmlFor: fieldId, className: "ids-toggle__label ids-label ids-label--clickable", children: children }), tooltip] })] }) }));
10
12
  });
13
+ IDSToggle.displayName = "IDSToggle";
11
14
 
12
15
  export { IDSToggle };
@@ -0,0 +1,16 @@
1
+ import React, { ReactNode } from "react";
2
+ import "@inera/ids-design/components/grid/column/column.css";
3
+ export interface IDSColumnProps extends React.HTMLAttributes<HTMLDivElement> {
4
+ cols?: ColSize;
5
+ s?: ColSize;
6
+ m?: ColSize;
7
+ offset?: OffsetSize;
8
+ sOffset?: OffsetSize | "none";
9
+ mOffset?: OffsetSize | "none";
10
+ alignSelf?: "start" | "center" | "end" | "auto" | "baseline" | "stretch";
11
+ children?: ReactNode;
12
+ }
13
+ type ColSize = "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" | "10" | "11" | "12" | "auto";
14
+ type OffsetSize = Exclude<ColSize, "auto">;
15
+ export declare const IDSColumn: React.FC<IDSColumnProps>;
16
+ export {};
@@ -0,0 +1,13 @@
1
+ "use client";
2
+ import { jsx } from 'react/jsx-runtime';
3
+ import { useRef } from 'react';
4
+ import '@inera/ids-design/components/grid/column/column.css';
5
+ import clsx from 'clsx';
6
+
7
+ const IDSColumn = ({ cols, s, m, offset, sOffset, mOffset, alignSelf, className, children, style, ...props }) => {
8
+ const colRef = useRef(null);
9
+ const classNames = clsx("ids-col", cols && `ids-col--${cols}`, s && `ids-col--s-${s}`, m && `ids-col--m-${m}`, offset && `ids-col--offset-${offset}`, sOffset && `ids-col--s-offset-${sOffset}`, mOffset && `ids-col--m-offset-${mOffset}`, alignSelf && `ids-col--align-${alignSelf}`, className);
10
+ return (jsx("div", { ref: colRef, className: classNames, style: { ...style }, ...props, children: children }));
11
+ };
12
+
13
+ export { IDSColumn };
@@ -0,0 +1,9 @@
1
+ import React, { ReactNode } from "react";
2
+ import "@inera/ids-design/components/grid/container/container.css";
3
+ export interface IDSContainerProps extends React.HTMLAttributes<HTMLDivElement> {
4
+ fluid?: boolean;
5
+ width?: string;
6
+ gutterless?: boolean;
7
+ children?: ReactNode;
8
+ }
9
+ export declare const IDSContainer: React.FC<IDSContainerProps>;
@@ -0,0 +1,24 @@
1
+ "use client";
2
+ import { jsx } from 'react/jsx-runtime';
3
+ import { useRef, useEffect } from 'react';
4
+ import '@inera/ids-design/components/grid/container/container.css';
5
+ import clsx from 'clsx';
6
+
7
+ const IDSContainer = ({ fluid = false, width = "", gutterless = false, children, className, style, ...props }) => {
8
+ const containerRef = useRef(null);
9
+ const classNames = clsx("ids-container", fluid && `ids-container--align-${fluid}`, gutterless && `ids-container--gutterless-${gutterless}`, className);
10
+ useEffect(() => {
11
+ const el = containerRef.current;
12
+ if (el) {
13
+ if (width && !fluid) {
14
+ el.style.maxWidth = `${width}px`;
15
+ }
16
+ else {
17
+ el.style.maxWidth = "";
18
+ }
19
+ }
20
+ }, [width, fluid]);
21
+ return (jsx("div", { ref: containerRef, className: classNames, style: { ...style }, ...props, children: children }));
22
+ };
23
+
24
+ export { IDSContainer };
@@ -0,0 +1,9 @@
1
+ import React, { ReactNode } from "react";
2
+ import "@inera/ids-design/components/grid/row/row.css";
3
+ export interface IDSRowProps extends React.HTMLAttributes<HTMLDivElement> {
4
+ align?: "start" | "center" | "end" | "baseline" | "stretch";
5
+ justify?: "start" | "center" | "end" | "space-between" | "space-around";
6
+ gap?: string;
7
+ children?: ReactNode;
8
+ }
9
+ export declare const IDSRow: React.FC<IDSRowProps>;
@@ -0,0 +1,18 @@
1
+ "use client";
2
+ import { jsx } from 'react/jsx-runtime';
3
+ import { useRef, useEffect } from 'react';
4
+ import '@inera/ids-design/components/grid/row/row.css';
5
+ import clsx from 'clsx';
6
+
7
+ const IDSRow = ({ align, justify, gap, className, children, style, ...props }) => {
8
+ const rowRef = useRef(null);
9
+ const classNames = clsx("ids-row", align && `ids-row--align-${align}`, justify && `ids-row--justify-${justify}`, className);
10
+ useEffect(() => {
11
+ if (rowRef.current) {
12
+ rowRef.current.style.gap = gap ?? "";
13
+ }
14
+ }, [gap]);
15
+ return (jsx("div", { ref: rowRef, className: classNames, style: { ...style }, ...props, children: children }));
16
+ };
17
+
18
+ export { IDSRow };
@@ -1,2 +1,10 @@
1
- import { IDSHeader1177Avatar as HeaderAvatar } from '@inera/ids-core/components/header-1177/header-1177-avatar-element.js';
2
- export declare const IDSHeader1177Avatar: import("@lit-labs/react").ReactWebComponent<HeaderAvatar, {}>;
1
+ import React, { ReactNode } from "react";
2
+ import "@inera/ids-design/components/header-1177/header-1177-avatar.css";
3
+ interface IDSHeader1177AvatarProps {
4
+ username: string;
5
+ agent?: ReactNode;
6
+ links?: ReactNode;
7
+ persistent?: boolean;
8
+ }
9
+ export declare const IDSHeader1177Avatar: React.FC<IDSHeader1177AvatarProps>;
10
+ export {};
@@ -1,11 +1,33 @@
1
- import * as React from 'react';
2
- import { IDSHeader1177Avatar as IDSHeader1177Avatar$1 } from '@inera/ids-core/components/header-1177/header-1177-avatar-element.js';
3
- import { createComponent } from '@lit-labs/react';
1
+ "use client";
2
+ import { jsx, jsxs } from 'react/jsx-runtime';
3
+ import { useState, useRef, useEffect } from 'react';
4
+ import '@inera/ids-design/components/header-1177/header-1177-avatar.css';
5
+ import clsx from 'clsx';
6
+ import { useHeaderContext } from '../utils/contexts/HeaderContext.js';
4
7
 
5
- const IDSHeader1177Avatar = createComponent({
6
- tagName: 'ids-header-1177-avatar',
7
- elementClass: IDSHeader1177Avatar$1,
8
- react: React
9
- });
8
+ const IDSHeader1177Avatar = ({ username, agent, links, persistent = false }) => {
9
+ const [expanded, setExpanded] = useState(false);
10
+ const headerContext = useHeaderContext();
11
+ const avatarRef = useRef(null);
12
+ const toggleExpanded = () => setExpanded(prev => !prev);
13
+ const handleClickOutside = (event) => {
14
+ if (!persistent && avatarRef.current && !avatarRef.current.contains(event.target)) {
15
+ setExpanded(false);
16
+ }
17
+ };
18
+ useEffect(() => {
19
+ document.addEventListener("click", handleClickOutside);
20
+ return () => {
21
+ document.removeEventListener("click", handleClickOutside);
22
+ };
23
+ }, [persistent]);
24
+ return (jsx("div", { ref: avatarRef, className: clsx("ids-header-1177-avatar", {
25
+ "ids-header-1177-avatar--unresponsive": headerContext?.unresponsive
26
+ }), children: jsxs("div", { className: "ids-header-1177-avatar__dropdown-wrapper", children: [jsx("button", { className: clsx("ids-header-1177-avatar__button", {
27
+ "ids-header-1177-avatar__button--expanded": expanded
28
+ }), onClick: toggleExpanded, "aria-controls": "ids-header-1177-avatar__dropdown", "aria-expanded": expanded, children: jsx("div", { className: "ids-header-1177-avatar-content__name", title: username, children: username }) }), jsxs("div", { id: "ids-header-1177-avatar__dropdown", className: clsx("ids-header-1177-avatar__dropdown", {
29
+ "ids-header-1177-avatar__dropdown--expanded": expanded
30
+ }), children: [agent && jsx("div", { className: "ids-header-1177-avatar__agent", children: agent }), agent && links && jsx("div", { className: "ids-header-1177-avatar__menu-separator" }), links && jsx("div", { className: "ids-header-1177-avatar__menu-links", children: links })] })] }) }));
31
+ };
10
32
 
11
33
  export { IDSHeader1177Avatar };
@@ -1,2 +1,12 @@
1
- import { IDSHeader1177Item as HeaderItem } from '@inera/ids-core/components/header-1177/header-1177-item-element.js';
2
- export declare const IDSHeader1177Item: import("@lit-labs/react").ReactWebComponent<HeaderItem, {}>;
1
+ import React, { ReactNode, PropsWithChildren, HTMLAttributes } from "react";
2
+ import "@inera/ids-design/components/header-1177/header-1177-item.css";
3
+ interface IDSHeader1177ItemProps extends HTMLAttributes<HTMLElement> {
4
+ mobile?: boolean;
5
+ icon?: string;
6
+ href?: string;
7
+ text?: string;
8
+ link?: ReactNode;
9
+ onClick?: () => void;
10
+ }
11
+ export declare const IDSHeader1177Item: React.FC<PropsWithChildren<IDSHeader1177ItemProps>>;
12
+ export {};
@@ -1,11 +1,28 @@
1
- import * as React from 'react';
2
- import { IDSHeader1177Item as IDSHeader1177Item$1 } from '@inera/ids-core/components/header-1177/header-1177-item-element.js';
3
- import { createComponent } from '@lit-labs/react';
1
+ "use client";
2
+ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
3
+ import { isValidElement, cloneElement } from 'react';
4
+ import clsx from 'clsx';
5
+ import '@inera/ids-design/components/header-1177/header-1177-item.css';
6
+ import { useHeaderContext } from '../utils/contexts/HeaderContext.js';
4
7
 
5
- const IDSHeader1177Item = createComponent({
6
- tagName: 'ids-header-1177-item',
7
- elementClass: IDSHeader1177Item$1,
8
- react: React,
9
- });
8
+ const IDSHeader1177Item = ({ mobile = false, text = "", href = "", icon, link, onClick, ...props }) => {
9
+ const headerContext = useHeaderContext();
10
+ const classNames = clsx("ids-header-1177__items__item", {
11
+ "ids-header-1177__items__item--unresponsive": headerContext?.unresponsive,
12
+ "ids-header-1177__items__item--mobile": mobile
13
+ });
14
+ const renderContent = () => (jsxs(Fragment, { children: [icon && (jsx("div", { className: "ids-header-1177__items__item-icon", "aria-label": text, children: jsx("span", { className: `ids-icon-${icon}` }) })), jsx("div", { className: "ids-header-1177__items__item-text", children: text })] }));
15
+ if (link && isValidElement(link)) {
16
+ return cloneElement(link, {
17
+ ...props,
18
+ className: clsx(link.props.className, classNames),
19
+ children: renderContent()
20
+ });
21
+ }
22
+ if (onClick) {
23
+ return (jsx("button", { className: classNames, onClick: onClick, style: { cursor: "pointer" }, ...props, children: renderContent() }));
24
+ }
25
+ return (jsx("a", { className: classNames, href: href, ...props, children: renderContent() }));
26
+ };
10
27
 
11
28
  export { IDSHeader1177Item };
@@ -0,0 +1,11 @@
1
+ import React, { ReactNode } from "react";
2
+ import "@inera/ids-design/components/header-1177/header-1177-menu-mobile.css";
3
+ interface IDSHeader1177MenuMobileProps {
4
+ label?: string;
5
+ persistent?: boolean;
6
+ children?: ReactNode;
7
+ onExpanded?: () => void;
8
+ onClosed?: () => void;
9
+ }
10
+ export declare const IDSHeader1177MenuMobile: React.FC<IDSHeader1177MenuMobileProps>;
11
+ export {};
@@ -0,0 +1,42 @@
1
+ "use client";
2
+ import { jsxs, jsx } from 'react/jsx-runtime';
3
+ import { useState, useRef, useEffect } from 'react';
4
+ import '@inera/ids-design/components/header-1177/header-1177-menu-mobile.css';
5
+ import { useHeaderContext } from '../utils/contexts/HeaderContext.js';
6
+ import clsx from 'clsx';
7
+
8
+ const IDSHeader1177MenuMobile = ({ label = "", persistent = false, children, onExpanded, onClosed }) => {
9
+ const [expanded, setExpanded] = useState(false);
10
+ const headerContext = useHeaderContext();
11
+ const menuRef = useRef(null);
12
+ const handleLinkClick = () => {
13
+ setExpanded(false);
14
+ onClosed?.();
15
+ };
16
+ useEffect(() => {
17
+ if (!persistent && expanded) {
18
+ const links = menuRef.current?.querySelectorAll("a") || [];
19
+ links.forEach(link => link.addEventListener("click", handleLinkClick));
20
+ return () => {
21
+ links.forEach(link => link.removeEventListener("click", handleLinkClick));
22
+ };
23
+ }
24
+ }, [expanded, persistent]);
25
+ const toggleExpansion = () => {
26
+ setExpanded(prev => {
27
+ const next = !prev;
28
+ if (next) {
29
+ onExpanded?.();
30
+ }
31
+ else {
32
+ onClosed?.();
33
+ }
34
+ return next;
35
+ });
36
+ };
37
+ return (jsxs("div", { className: "ids-header-1177-menu-mobile-component", children: [jsxs("button", { onClick: toggleExpansion, "aria-expanded": expanded, "aria-label": "Meny", className: clsx("ids-header-1177-menu-mobile", {
38
+ "ids-header-1177-menu-mobile--unresponsive": headerContext?.unresponsive
39
+ }), children: [label, jsx("div", { className: "ids-hamburger", children: jsx("span", { className: "ids-hamburger__lines" }) }), jsx("slot", {})] }), expanded && (jsx("div", { className: "ids-header-1177-menu-mobile__items", ref: menuRef, children: children }))] }));
40
+ };
41
+
42
+ export { IDSHeader1177MenuMobile };
@@ -1,2 +1,11 @@
1
- import { IDSHeader1177NavItemMobile as HeaderNavItemMobile } from '@inera/ids-core/components/header-1177/header-1177-nav-item-mobile-element.js';
2
- export declare const IDSHeader1177NavItemMobile: import("@lit-labs/react").ReactWebComponent<HeaderNavItemMobile, {}>;
1
+ import React, { ReactNode } from "react";
2
+ import "@inera/ids-design/components/header-1177/header-1177-nav-item-mobile.css";
3
+ interface IDSHeader1177NavItemMobileProps {
4
+ text?: string;
5
+ href?: string;
6
+ icon?: string;
7
+ link?: ReactNode;
8
+ children?: ReactNode;
9
+ }
10
+ export declare const IDSHeader1177NavItemMobile: React.FC<IDSHeader1177NavItemMobileProps>;
11
+ export {};
@@ -1,11 +1,27 @@
1
- import * as React from 'react';
2
- import { IDSHeader1177NavItemMobile as IDSHeader1177NavItemMobile$1 } from '@inera/ids-core/components/header-1177/header-1177-nav-item-mobile-element.js';
3
- import { createComponent } from '@lit-labs/react';
1
+ "use client";
2
+ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
3
+ import { isValidElement, cloneElement } from 'react';
4
+ import '@inera/ids-design/components/header-1177/header-1177-nav-item-mobile.css';
5
+ import { useHeaderContext } from '../utils/contexts/HeaderContext.js';
6
+ import clsx from 'clsx';
4
7
 
5
- const IDSHeader1177NavItemMobile = createComponent({
6
- tagName: 'ids-header-1177-nav-item-mobile',
7
- elementClass: IDSHeader1177NavItemMobile$1,
8
- react: React,
9
- });
8
+ const IDSHeader1177NavItemMobile = ({ text = "", href = "", icon = "", link, children, ...props }) => {
9
+ const headerContext = useHeaderContext();
10
+ const classNames = clsx("ids-header-1177__nav-mobile__item", {
11
+ "ids-header-1177__nav-mobile__item--unresponsive": headerContext?.unresponsive
12
+ });
13
+ const renderContent = () => {
14
+ return (jsxs(Fragment, { children: [icon && (jsx("span", { className: "ids-header-1177-nav-item-mobile__icon", children: jsx("span", { className: `ids-icon-${icon}` }) })), text] }));
15
+ };
16
+ if (link && isValidElement(link)) {
17
+ return cloneElement(link, {
18
+ ...props,
19
+ style: { flexGrow: 1, textDecoration: "none" },
20
+ className: clsx(link.props.className, classNames),
21
+ children: renderContent()
22
+ });
23
+ }
24
+ return (jsx("a", { className: classNames, href: href, style: { flexGrow: 1, textDecoration: "none" }, ...props, children: renderContent() }));
25
+ };
10
26
 
11
27
  export { IDSHeader1177NavItemMobile };
@@ -1,2 +1,15 @@
1
- import { IDSHeader1177NavItem as HeaderNavItem } from '@inera/ids-core/components/header-1177/header-1177-nav-item-element.js';
2
- export declare const IDSHeader1177NavItem: import("@lit-labs/react").ReactWebComponent<HeaderNavItem, {}>;
1
+ import React, { ReactNode, ReactElement } from "react";
2
+ import "@inera/ids-design/components/header-1177/header-1177-nav-item.css";
3
+ import { IDSLinkProps } from "../link/link";
4
+ interface IDSHeader1177NavItemProps {
5
+ active?: boolean;
6
+ expanded?: boolean;
7
+ label?: string;
8
+ col1?: ReactElement<IDSLinkProps>[];
9
+ col2?: ReactElement<IDSLinkProps>[];
10
+ col3?: ReactElement<IDSLinkProps>[];
11
+ col4?: ReactNode;
12
+ children?: ReactNode;
13
+ }
14
+ export declare const IDSHeader1177NavItem: React.FC<IDSHeader1177NavItemProps>;
15
+ export {};
@@ -1,11 +1,25 @@
1
- import * as React from 'react';
2
- import { IDSHeader1177NavItem as IDSHeader1177NavItem$1 } from '@inera/ids-core/components/header-1177/header-1177-nav-item-element.js';
3
- import { createComponent } from '@lit-labs/react';
1
+ "use client";
2
+ import { jsxs, jsx } from 'react/jsx-runtime';
3
+ import React__default, { useState } from 'react';
4
+ import '@inera/ids-design/components/header-1177/header-1177-nav-item.css';
5
+ import clsx from 'clsx';
6
+ import { useHeaderContext } from '../utils/contexts/HeaderContext.js';
4
7
 
5
- const IDSHeader1177NavItem = createComponent({
6
- tagName: 'ids-header-1177-nav-item',
7
- elementClass: IDSHeader1177NavItem$1,
8
- react: React,
9
- });
8
+ const IDSHeader1177NavItem = ({ active = false, expanded = false, label = "", col1, col2, col3, col4, children }) => {
9
+ const [isExpanded, setIsExpanded] = useState(expanded);
10
+ const headerContext = useHeaderContext();
11
+ const toggleExpanded = () => setIsExpanded(prev => !prev);
12
+ const renderLink = (link) => {
13
+ return React__default.isValidElement(link)
14
+ ? React__default.cloneElement(link, { activeIcon: true, block: true, colorPreset: 2 })
15
+ : link;
16
+ };
17
+ const renderDropdown = () => isExpanded && (jsx("div", { id: "ids-header-1177-nav-dropdown", className: "ids-header-1177__items__item-dropdown", children: jsxs("div", { className: "ids-header-1177__items__item-dropdown__content", children: [jsx("div", { className: "ids-header-1177__items__item-dropdown__content-col-1", children: col1?.map((link, idx) => (jsx("div", { className: "ids-header-1177__items-wrapper", children: renderLink(link) }, idx))) }), jsx("div", { className: "ids-header-1177__items__item-dropdown__content-col-2", children: col2?.map((link, idx) => (jsx("div", { className: "ids-header-1177__items-wrapper", children: renderLink(link) }, idx))) }), jsx("div", { className: "ids-header-1177__items__item-dropdown__content-col-3", children: col3?.map((link, idx) => (jsx("div", { className: "ids-header-1177__items-wrapper", children: renderLink(link) }, idx))) }), jsx("div", { className: "ids-header-1177__items__item-dropdown__content-col-4", children: col4 })] }) }));
18
+ return (jsxs("div", { className: clsx("ids-header-1177__nav-item", {
19
+ "ids-header-1177__nav-item--unresponsive": headerContext?.unresponsive,
20
+ "ids-header-1177__nav-item--fluid": headerContext?.fluid,
21
+ "ids-header-1177__nav-item--active": active || isExpanded
22
+ }), children: [label ? (jsx("button", { onClick: toggleExpanded, "aria-expanded": isExpanded, "aria-controls": "ids-header-1177-nav-dropdown", children: label })) : (children), renderDropdown()] }));
23
+ };
10
24
 
11
25
  export { IDSHeader1177NavItem };
@@ -1,2 +1,8 @@
1
- import { IDSHeader1177Nav as HeaderNav } from '@inera/ids-core/components/header-1177/header-1177-nav-element.js';
2
- export declare const IDSHeader1177Nav: import("@lit-labs/react").ReactWebComponent<HeaderNav, {}>;
1
+ import React, { ReactNode } from "react";
2
+ import "@inera/ids-design/components/header-1177/header-1177-nav.css";
3
+ interface IDSHeader1177NavProps {
4
+ hideOnTablet?: boolean;
5
+ children?: ReactNode;
6
+ }
7
+ export declare const IDSHeader1177Nav: React.FC<IDSHeader1177NavProps>;
8
+ export {};
@@ -1,11 +1,17 @@
1
- import * as React from 'react';
2
- import { IDSHeader1177Nav as IDSHeader1177Nav$1 } from '@inera/ids-core/components/header-1177/header-1177-nav-element.js';
3
- import { createComponent } from '@lit-labs/react';
1
+ "use client";
2
+ import { jsx } from 'react/jsx-runtime';
3
+ import '@inera/ids-design/components/header-1177/header-1177-nav.css';
4
+ import clsx from 'clsx';
5
+ import { useHeaderContext } from '../utils/contexts/HeaderContext.js';
4
6
 
5
- const IDSHeader1177Nav = createComponent({
6
- tagName: 'ids-header-1177-nav',
7
- elementClass: IDSHeader1177Nav$1,
8
- react: React,
9
- });
7
+ const IDSHeader1177Nav = ({ hideOnTablet = false, children }) => {
8
+ const headerContext = useHeaderContext();
9
+ const navClass = clsx("ids-header-1177__nav", {
10
+ "ids-header-1177__nav--unresponsive": headerContext?.unresponsive,
11
+ "ids-header-1177__nav--fluid": headerContext?.fluid,
12
+ "ids-header-1177__nav--hide-on-tablet": hideOnTablet
13
+ });
14
+ return (jsx("nav", { className: navClass, slot: "nav", children: jsx("div", { className: "ids-header-1177__nav-inner", children: children }) }));
15
+ };
10
16
 
11
17
  export { IDSHeader1177Nav };
@@ -1,5 +1,22 @@
1
- import '@inera/ids-core/components/header-1177/register.js';
2
- import { IDSHeader1177 as Header } from '@inera/ids-core/components/header-1177/header-1177-element.js';
3
- export declare const IDSHeader1177: import("@lit-labs/react").ReactWebComponent<Header, {
4
- onDidToggleRegion: string;
5
- }>;
1
+ import React, { ReactNode, AnchorHTMLAttributes } from "react";
2
+ import "@inera/ids-design/components/header-1177/header-1177.css";
3
+ interface IDSHeader1177Props extends React.HTMLAttributes<HTMLDivElement> {
4
+ regionPickerText?: string;
5
+ hideRegionPicker?: boolean;
6
+ regionPickerExpanded?: boolean;
7
+ fluid?: boolean;
8
+ unresponsive?: boolean;
9
+ logoHref?: string;
10
+ logoProps?: AnchorHTMLAttributes<HTMLAnchorElement>;
11
+ logo?: ReactNode;
12
+ srLogoLabel?: string;
13
+ regionIcon?: ReactNode;
14
+ skipToContentLink?: ReactNode;
15
+ onToggleRegion?: (isExpanded: boolean) => void;
16
+ items?: ReactNode;
17
+ avatar?: ReactNode;
18
+ mobileMenu?: ReactNode;
19
+ children?: ReactNode;
20
+ }
21
+ export declare const IDSHeader1177: React.FC<IDSHeader1177Props>;
22
+ export {};