@norges-domstoler/dds-components 0.0.0-dev-20260504083307 → 0.0.0-dev-20260506102015

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.
package/dist/index.d.mts CHANGED
@@ -4598,7 +4598,7 @@ declare const ModalActions: {
4598
4598
  };
4599
4599
 
4600
4600
  declare const OverflowMenu: {
4601
- ({ placement, offset, className, htmlProps, ref, style, ...rest }: OverflowMenuProps): react_jsx_runtime.JSX.Element;
4601
+ ({ placement, offset, parentElement, portal, className, htmlProps, ref, style, ...rest }: OverflowMenuProps): react_jsx_runtime.JSX.Element;
4602
4602
  displayName: string;
4603
4603
  };
4604
4604
 
@@ -4615,6 +4615,17 @@ type OverflowMenuProps = Omit<BaseComponentPropsWithChildren<HTMLDivElement, {
4615
4615
  * @default 2
4616
4616
  */
4617
4617
  offset?: number;
4618
+ /**Angir rotnode hvor menyen skal rendres hvis portal=false.
4619
+ * Hvis parentElement ikke er satt vil menyen rendres i det elementet som OverflowMenu er plassert i.
4620
+ * Hvis portal er true, vil parentElement bli ignorert.
4621
+ * @default themeProviderRef
4622
+ */
4623
+ parentElement?: HTMLElement;
4624
+ /**Angir om menyen skal rendres i en portal eller ikke.
4625
+ * Hvis portal er false, vil parentElement bli brukt hvis det er satt.
4626
+ * @default true
4627
+ */
4628
+ portal?: boolean;
4618
4629
  }>, 'id'>;
4619
4630
 
4620
4631
  declare const OverflowMenuButton: {
package/dist/index.d.ts CHANGED
@@ -4598,7 +4598,7 @@ declare const ModalActions: {
4598
4598
  };
4599
4599
 
4600
4600
  declare const OverflowMenu: {
4601
- ({ placement, offset, className, htmlProps, ref, style, ...rest }: OverflowMenuProps): react_jsx_runtime.JSX.Element;
4601
+ ({ placement, offset, parentElement, portal, className, htmlProps, ref, style, ...rest }: OverflowMenuProps): react_jsx_runtime.JSX.Element;
4602
4602
  displayName: string;
4603
4603
  };
4604
4604
 
@@ -4615,6 +4615,17 @@ type OverflowMenuProps = Omit<BaseComponentPropsWithChildren<HTMLDivElement, {
4615
4615
  * @default 2
4616
4616
  */
4617
4617
  offset?: number;
4618
+ /**Angir rotnode hvor menyen skal rendres hvis portal=false.
4619
+ * Hvis parentElement ikke er satt vil menyen rendres i det elementet som OverflowMenu er plassert i.
4620
+ * Hvis portal er true, vil parentElement bli ignorert.
4621
+ * @default themeProviderRef
4622
+ */
4623
+ parentElement?: HTMLElement;
4624
+ /**Angir om menyen skal rendres i en portal eller ikke.
4625
+ * Hvis portal er false, vil parentElement bli brukt hvis det er satt.
4626
+ * @default true
4627
+ */
4628
+ portal?: boolean;
4618
4629
  }>, 'id'>;
4619
4630
 
4620
4631
  declare const OverflowMenuButton: {
package/dist/index.js CHANGED
@@ -4852,6 +4852,7 @@ var texts2 = createTexts({
4852
4852
 
4853
4853
  // src/components/OverflowMenu/OverflowMenu.tsx
4854
4854
  var import_react21 = require("react");
4855
+ var import_react_dom2 = require("react-dom");
4855
4856
 
4856
4857
  // src/components/OverflowMenu/OverflowMenu.context.tsx
4857
4858
  var import_react20 = require("react");
@@ -4901,6 +4902,8 @@ var import_jsx_runtime210 = require("react/jsx-runtime");
4901
4902
  var OverflowMenu = ({
4902
4903
  placement = "bottom-end",
4903
4904
  offset = 2,
4905
+ parentElement,
4906
+ portal = true,
4904
4907
  className,
4905
4908
  htmlProps = {},
4906
4909
  ref,
@@ -4908,11 +4911,16 @@ var OverflowMenu = ({
4908
4911
  ...rest
4909
4912
  }) => {
4910
4913
  const { isOpen, floatStyling, setFloatOptions, menuRef, menuId } = useOverflowMenuContext();
4914
+ const themeContext = (0, import_react21.useContext)(ThemeContext);
4915
+ if (portal && !themeContext) {
4916
+ throw new Error("OverflowMenu must be used within a DdsProvider");
4917
+ }
4918
+ const portalTarget = parentElement != null ? parentElement : themeContext == null ? void 0 : themeContext.el;
4911
4919
  (0, import_react21.useEffect)(() => {
4912
4920
  setFloatOptions == null ? void 0 : setFloatOptions({ placement, offset });
4913
4921
  }, [placement, offset]);
4914
4922
  const openCn = isOpen ? "open" : "closed";
4915
- return /* @__PURE__ */ (0, import_jsx_runtime210.jsx)(
4923
+ const menu = /* @__PURE__ */ (0, import_jsx_runtime210.jsx)(
4916
4924
  Paper,
4917
4925
  {
4918
4926
  overflowY: "auto",
@@ -4939,6 +4947,7 @@ var OverflowMenu = ({
4939
4947
  border: "border-default"
4940
4948
  }
4941
4949
  );
4950
+ return portal && portalTarget ? (0, import_react_dom2.createPortal)(menu, portalTarget) : menu;
4942
4951
  };
4943
4952
  OverflowMenu.displayName = "OverflowMenu";
4944
4953
 
@@ -5426,7 +5435,7 @@ var Breadcrumbs = ({
5426
5435
  "aria-label": bChildrenTruncated.length > 1 ? t(texts3.showHiddenTo(bChildren.length - 1)) : t(texts3.showHidden)
5427
5436
  }
5428
5437
  ),
5429
- /* @__PURE__ */ (0, import_jsx_runtime222.jsx)(OverflowMenu, { children: /* @__PURE__ */ (0, import_jsx_runtime222.jsx)(OverflowMenuList, { children: bChildrenTruncated }) })
5438
+ /* @__PURE__ */ (0, import_jsx_runtime222.jsx)(OverflowMenu, { portal: false, children: /* @__PURE__ */ (0, import_jsx_runtime222.jsx)(OverflowMenuList, { children: bChildrenTruncated }) })
5430
5439
  ] })
5431
5440
  ] }),
5432
5441
  /* @__PURE__ */ (0, import_jsx_runtime222.jsxs)(HStack, { ...responsiveLiProps, children: [
@@ -6810,7 +6819,7 @@ function isLeapYear(date) {
6810
6819
 
6811
6820
  // src/components/date-inputs/DatePicker/CalendarPopover.tsx
6812
6821
  var import_react41 = require("react");
6813
- var import_react_dom2 = require("react-dom");
6822
+ var import_react_dom3 = require("react-dom");
6814
6823
  var import_jsx_runtime242 = require("react/jsx-runtime");
6815
6824
  var CalendarPopoverContext = (0, import_react41.createContext)({
6816
6825
  anchorRef: null,
@@ -6892,7 +6901,7 @@ var CalendarPopoverContent = ({
6892
6901
  padding: "x0.75"
6893
6902
  };
6894
6903
  return /* @__PURE__ */ (0, import_jsx_runtime242.jsxs)(import_jsx_runtime242.Fragment, { children: [
6895
- portalTarget && hasBreakpoint && (0, import_react_dom2.createPortal)(
6904
+ portalTarget && hasBreakpoint && (0, import_react_dom3.createPortal)(
6896
6905
  /* @__PURE__ */ (0, import_jsx_runtime242.jsx)(ShowHide, { showBelow: smallScreenBreakpoint, children: /* @__PURE__ */ (0, import_jsx_runtime242.jsx)(Backdrop, { zIndex: "modal", isMounted, children: /* @__PURE__ */ (0, import_jsx_runtime242.jsxs)(
6897
6906
  Paper,
6898
6907
  {
@@ -8123,7 +8132,7 @@ DetailListTerm.displayName = "DetailListTerm";
8123
8132
 
8124
8133
  // src/components/Drawer/Drawer.tsx
8125
8134
  var import_react53 = require("react");
8126
- var import_react_dom3 = require("react-dom");
8135
+ var import_react_dom4 = require("react-dom");
8127
8136
 
8128
8137
  // src/components/Drawer/Drawer.module.css
8129
8138
  var Drawer_default = {
@@ -8291,7 +8300,7 @@ var Drawer = ({
8291
8300
  children: drawer
8292
8301
  }
8293
8302
  ) : drawer;
8294
- return (isOpen || hasTransitionedIn) && portalTarget ? (0, import_react_dom3.createPortal)(component, portalTarget) : null;
8303
+ return (isOpen || hasTransitionedIn) && portalTarget ? (0, import_react_dom4.createPortal)(component, portalTarget) : null;
8295
8304
  };
8296
8305
  Drawer.displayName = "Drawer";
8297
8306
 
@@ -10885,7 +10894,7 @@ LocalMessage.displayName = "LocalMessage";
10885
10894
 
10886
10895
  // src/components/Modal/Modal.tsx
10887
10896
  var import_react72 = require("react");
10888
- var import_react_dom4 = require("react-dom");
10897
+ var import_react_dom5 = require("react-dom");
10889
10898
 
10890
10899
  // src/components/Modal/Modal.module.css
10891
10900
  var Modal_default = {
@@ -10949,7 +10958,7 @@ var Modal = ({
10949
10958
  };
10950
10959
  useOnKeyDown(["Escape", "Esc"], () => handleClose());
10951
10960
  const hasTransitionedIn = useMountTransition(isOpen, 200);
10952
- return (isOpen || hasTransitionedIn) && portalTarget ? (0, import_react_dom4.createPortal)(
10961
+ return (isOpen || hasTransitionedIn) && portalTarget ? (0, import_react_dom5.createPortal)(
10953
10962
  /* @__PURE__ */ (0, import_jsx_runtime302.jsx)(
10954
10963
  Backdrop,
10955
10964
  {
@@ -12849,7 +12858,7 @@ var texts23 = createTexts({
12849
12858
 
12850
12859
  // src/components/Popover/Popover.tsx
12851
12860
  var import_react79 = require("react");
12852
- var import_react_dom5 = require("react-dom");
12861
+ var import_react_dom6 = require("react-dom");
12853
12862
 
12854
12863
  // src/components/Popover/Popover.module.css
12855
12864
  var Popover_default = {
@@ -13007,7 +13016,7 @@ var Popover = ({
13007
13016
  ]
13008
13017
  }
13009
13018
  );
13010
- return isOpen || hasTransitionedIn ? portal && portalTarget ? (0, import_react_dom5.createPortal)(popover, portalTarget) : popover : null;
13019
+ return isOpen || hasTransitionedIn ? portal && portalTarget ? (0, import_react_dom6.createPortal)(popover, portalTarget) : popover : null;
13011
13020
  };
13012
13021
  Popover.displayName = "Popover";
13013
13022