@fremtind/jokul 0.21.2 → 0.22.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 (85) hide show
  1. package/build/ExpandableTableRow-DXlyfK8L.cjs +2 -0
  2. package/build/{ExpandableTableRow-BGglv7mF.cjs.map → ExpandableTableRow-DXlyfK8L.cjs.map} +1 -1
  3. package/build/ExpandableTableRow-_-mY2lEq.js +2 -0
  4. package/build/{ExpandableTableRow-BfmOT4wb.js.map → ExpandableTableRow-_-mY2lEq.js.map} +1 -1
  5. package/build/build-stats.html +1 -1
  6. package/build/cjs/components/expander/ExpandSection.js +1 -1
  7. package/build/cjs/components/expander/Expander.js +1 -1
  8. package/build/cjs/components/expander/index.js +1 -1
  9. package/build/cjs/components/feedback/followup/Followup.js +1 -1
  10. package/build/cjs/components/feedback/followup/Followup.js.map +1 -1
  11. package/build/cjs/components/index.js +1 -1
  12. package/build/cjs/components/menu/Menu.js +1 -1
  13. package/build/cjs/components/menu/index.js +1 -1
  14. package/build/cjs/components/pagination/PageButton.js +2 -0
  15. package/build/cjs/components/pagination/PageButton.js.map +1 -0
  16. package/build/cjs/components/pagination/Pagination.js +2 -0
  17. package/build/cjs/components/pagination/Pagination.js.map +1 -0
  18. package/build/cjs/components/pagination/index.js +2 -0
  19. package/build/cjs/components/pagination/index.js.map +1 -0
  20. package/build/cjs/components/select/NativeSelect.js +1 -1
  21. package/build/cjs/components/select/Select.js +1 -1
  22. package/build/cjs/components/select/index.js +1 -1
  23. package/build/cjs/components/table/ExpandableTableRow.js +1 -1
  24. package/build/cjs/components/table/ExpandableTableRowController.js +1 -1
  25. package/build/cjs/components/table/TablePagination.js +1 -1
  26. package/build/cjs/components/table/index.js +1 -1
  27. package/build/cjs/index.js +1 -1
  28. package/build/es/components/expander/ExpandSection.js +1 -1
  29. package/build/es/components/expander/Expander.js +1 -1
  30. package/build/es/components/expander/index.js +1 -1
  31. package/build/es/components/feedback/followup/Followup.js +1 -1
  32. package/build/es/components/feedback/followup/Followup.js.map +1 -1
  33. package/build/es/components/index.js +1 -1
  34. package/build/es/components/menu/Menu.js +1 -1
  35. package/build/es/components/menu/index.js +1 -1
  36. package/build/es/components/pagination/PageButton.js +2 -0
  37. package/build/es/components/pagination/PageButton.js.map +1 -0
  38. package/build/es/components/pagination/Pagination.js +2 -0
  39. package/build/es/components/pagination/Pagination.js.map +1 -0
  40. package/build/es/components/pagination/index.js +2 -0
  41. package/build/es/components/pagination/index.js.map +1 -0
  42. package/build/es/components/select/NativeSelect.js +1 -1
  43. package/build/es/components/select/Select.js +1 -1
  44. package/build/es/components/select/index.js +1 -1
  45. package/build/es/components/table/ExpandableTableRow.js +1 -1
  46. package/build/es/components/table/ExpandableTableRowController.js +1 -1
  47. package/build/es/components/table/TablePagination.js +1 -1
  48. package/build/es/components/table/index.js +1 -1
  49. package/build/es/index.js +1 -1
  50. package/build/packages/jokul/src/components/index.d.ts +1 -0
  51. package/build/packages/jokul/src/components/pagination/PageButton.d.ts +7 -0
  52. package/build/packages/jokul/src/components/pagination/Pagination.d.ts +18 -0
  53. package/build/packages/jokul/src/components/pagination/index.d.ts +1 -0
  54. package/package.json +4 -2
  55. package/src/components/button/styles/button.css +2 -2
  56. package/src/components/button/styles/button.min.css +1 -1
  57. package/src/components/checkbox/styles/checkbox.css +4 -4
  58. package/src/components/checkbox/styles/checkbox.min.css +1 -1
  59. package/src/components/feedback/styles/feedback.css +2 -2
  60. package/src/components/feedback/styles/feedback.min.css +1 -1
  61. package/src/components/input-group/styles/input-group.css +2 -2
  62. package/src/components/input-group/styles/input-group.min.css +1 -1
  63. package/src/components/loader/styles/loader.css +6 -6
  64. package/src/components/loader/styles/loader.min.css +1 -1
  65. package/src/components/loader/styles/skeleton-loader.css +5 -5
  66. package/src/components/loader/styles/skeleton-loader.min.css +1 -1
  67. package/src/components/message/styles/message.css +2 -2
  68. package/src/components/message/styles/message.min.css +1 -1
  69. package/src/components/pagination/styles/_index.scss +6 -0
  70. package/src/components/pagination/styles/pagination.css +47 -0
  71. package/src/components/pagination/styles/pagination.min.css +1 -0
  72. package/src/components/pagination/styles/pagination.scss +49 -0
  73. package/src/components/progress-bar/styles/progress-bar.css +2 -2
  74. package/src/components/progress-bar/styles/progress-bar.min.css +1 -1
  75. package/src/components/radio-button/styles/radio-button.css +2 -2
  76. package/src/components/radio-button/styles/radio-button.min.css +1 -1
  77. package/src/components/system-message/styles/system-message.css +2 -2
  78. package/src/components/system-message/styles/system-message.min.css +1 -1
  79. package/src/components/toast/styles/toast.css +4 -4
  80. package/src/components/toast/styles/toast.min.css +1 -1
  81. package/src/styles/styles.css +121 -77
  82. package/src/styles/styles.min.css +1 -1
  83. package/src/styles/styles.scss +1 -0
  84. package/build/ExpandableTableRow-BGglv7mF.cjs +0 -2
  85. package/build/ExpandableTableRow-BfmOT4wb.js +0 -2
@@ -21,6 +21,7 @@
21
21
  @use "../components/menu/styles" as menu;
22
22
  @use "../components/message/styles" as message;
23
23
  @use "../components/modal/styles" as modal;
24
+ @use "../components/pagination/styles" as pagination;
24
25
  @use "../components/popover/styles" as popover;
25
26
  @use "../components/progress-bar/styles" as progress-bar;
26
27
  @use "../components/radio-button/styles" as radio-button;
@@ -1,2 +0,0 @@
1
- "use strict";const e=require("react/jsx-runtime"),n=require("./clsx-E3yX_9sL.cjs"),s=require("react"),t=require("./cjs/hooks/useAnimatedHeight/useAnimatedHeight.js");require("./cjs/hooks/useScreen/useScreen.js");const o=require("./cjs/hooks/useId/useId.js");require("./cjs/components/icon/Icon.js");const r=require("./cjs/components/icon/icons/animated/ArrowVerticalAnimated.js");require("./cjs/components/icon/icons/animated/ArrowHorizontalAnimated.js"),require("./cjs/components/icon/icons/animated/PlusRemoveAnimated.js"),require("./cjs/components/icon/icons/ArrowDownIcon.js"),require("./cjs/components/icon/icons/ArrowLeftIcon.js"),require("./cjs/components/icon/icons/ArrowNorthEastIcon.js"),require("./cjs/components/icon/icons/ArrowRightIcon.js"),require("./cjs/components/icon/icons/ArrowUpIcon.js"),require("./cjs/components/icon/icons/CalendarIcon.js"),require("./cjs/components/icon/icons/CheckIcon.js"),require("./cjs/components/icon/icons/ChevronDownIcon.js");const a=require("./cjs/components/icon/icons/ChevronLeftIcon.js"),i=require("./cjs/components/icon/icons/ChevronRightIcon.js");require("./cjs/components/icon/icons/ChevronUpIcon.js"),require("./cjs/components/icon/icons/CloseIcon.js"),require("./cjs/components/icon/icons/CopyIcon.js"),require("./cjs/components/icon/icons/DotsIcon.js"),require("./cjs/components/icon/icons/DragIcon.js"),require("./cjs/components/icon/icons/ErrorIcon.js"),require("./cjs/components/icon/icons/GreenCheckIcon.js"),require("./cjs/components/icon/icons/HamburgerIcon.js"),require("./cjs/components/icon/icons/InfoIcon.js"),require("./cjs/components/icon/icons/LinkIcon.js"),require("./cjs/components/icon/icons/PlusIcon.js"),require("./cjs/components/icon/icons/QuestionIcon.js"),require("./cjs/components/icon/icons/RedCrossIcon.js"),require("./cjs/components/icon/icons/SearchIcon.js"),require("./cjs/components/icon/icons/SuccessIcon.js"),require("./cjs/components/icon/icons/WarningIcon.js"),require("./cjs/components/icon/icons/MinusIcon.js"),require("./cjs/components/icon/icons/ThumbDownIcon.js"),require("./cjs/components/icon/icons/ThumbUpIcon.js"),require("./cjs/components/icon/icons/TrashCanIcon.js"),require("./cjs/components/icon/icons/PenIcon.js"),require("./cjs/components/button/Button.js"),require("./cjs/components/card/Card.js"),require("./cjs/components/card/CardImage.js"),require("./cjs/components/card/NavCard.js"),require("./cjs/components/checkbox/Checkbox.js"),require("./cjs/components/combobox/Combobox.js"),require("./cjs/components/cookie-consent/CookieConsentContext.js"),require("react-dom"),require("./cjs/components/modal/Modal.js"),require("react-a11y-dialog"),require("./cjs/components/list/List.js"),require("./cjs/components/list/ListItem.js"),require("./cjs/components/datepicker/DatePicker.js"),require("./cjs/components/feedback/feedbackContext.js"),require("./cjs/components/message/Message.js"),require("./cjs/components/message/FormErrorMessage.js"),require("./cjs/components/tooltip/Tooltip.js"),require("./cjs/components/tooltip/TooltipContent.js"),require("./cjs/components/tooltip/TooltipTrigger.js");const l=require("./cjs/components/input-group/InputGroup.js");require("./cjs/components/feedback/followup/followupContext.js"),require("./cjs/components/feedback/main-question/mainQuestionContext.js"),require("./cjs/components/radio-button/RadioButton.js"),require("./cjs/components/radio-button/radioGroupContext.js"),require("./cjs/components/radio-button/BaseRadioButton.js"),require("./cjs/components/text-input/BaseTextArea.js"),require("./cjs/components/text-input/BaseTextInput.js"),require("./cjs/components/text-input/TextArea.js");const c=require("./cjs/components/text-input/TextInput.js");require("./cjs/utilities/polymorphism/SlotComponent.js"),require("./cjs/components/flex/Flex.js");const u=require("./cjs/components/icon-button/IconButton.js");require("./cjs/components/link/Link.js"),require("./cjs/components/link/NavLink.js"),require("./cjs/components/link-list/LinkList.js"),require("./cjs/components/logo/text-paths/ForsikringLevertAvFremtind.js"),require("./cjs/components/logo/text-paths/FraSB1ogDNB.js"),require("./cjs/components/logo/text-paths/InnovasjonFraFremtind.js"),require("./cjs/components/logo/text-paths/TeknologiFraFremtind.js"),require("./cjs/components/logo/text-paths/VartEgetForsikringsselskap.js"),require("./cjs/components/logo/text-paths/VartForsikringsselskap.js");const p=require("@floating-ui/react"),d=require("framer-motion"),j=require("react-is"),m=require("./cjs/utilities/getThemeAndDensity.js");require("./cjs/components/menu/MenuItem.js"),require("./cjs/components/menu/MenuItemCheckbox.js"),require("./cjs/components/popover/Popover.js");const b=require("./cjs/hooks/usePreviousValue/usePreviousValue.js"),g=require("./cjs/hooks/useListNavigation/useListNavigation.js"),x=require("./cjs/utilities/valuePair.js");require("./cjs/components/system-message/SystemMessage.js"),require("./cjs/components/table/DataTable.js"),require("./cjs/components/table/Table.js"),require("./cjs/components/table/TableBody.js"),require("./cjs/components/table/TableCaption.js");const k=require("./cjs/components/table/TableCell.js");require("./cjs/components/table/TableColumn.js"),require("./cjs/components/table/TableColumnGroup.js");const v=require("./cjs/components/table/tableContext.js");require("./cjs/components/table/tableSectionContext.js"),require("./cjs/components/table/TableFooter.js"),require("./cjs/components/table/TableHead.js"),require("./cjs/components/table/TableHeader.js");const h=require("./cjs/components/table/TableRow.js");require("./cjs/components/tabs/NavTab.js"),require("./cjs/components/tabs/tabsContext.js"),require("./cjs/components/tabs/Tab.js"),require("./cjs/components/tag/Tag.js"),require("./cjs/components/toast/toastContext.js"),require("./cjs/components/toggle-switch/ToggleSwitch.js");const f=require("./cjs/components/select/select-utils.js"),q=require("./cjs/components/menu/useMenuWideEvents.js"),w=require("./cjs/components/ScreenReaderOnly.js");const y=function(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e)for(const s in e)if("default"!==s){const t=Object.getOwnPropertyDescriptor(e,s);Object.defineProperty(n,s,t.get?t:{enumerable:!0,get:()=>e[s]})}return n.default=e,Object.freeze(n)}(j),C=s.forwardRef((({as:t="button",className:o,children:a,density:i,expandDirection:l="down",isExpanded:c=!1,hideLabel:u=!1,...p},d)=>{const j=u?w.ScreenReaderOnly:s.Fragment,m="down"===l?!c:c,b=t,g="button"===b?"button":void 0;return e.jsxs(b,{"aria-expanded":c,"data-testid":"jkl-expander",type:g,className:n.clsx("jkl-expander",o,{"jkl-expander--expanded":c,"jkl-expander--icon-only":!a}),...p,"data-density":i,ref:d,children:[a&&e.jsx(j,{children:e.jsx("span",{className:"jkl-expander__text",children:a})}),e.jsx(r.ArrowVerticalAnimated,{className:"jkl-expander__arrow",variant:"inherit",pointingDown:m,bold:c})]})}));C.displayName="Expander";const _=s.forwardRef(((t,r)=>{const{children:a,className:i,initialPlacement:l,openOnHover:c=!1,keepOpenOnClickOutside:u=!1,triggerElement:j,isOpen:b,onToggle:g,...x}=t,k=o.useId("jkl-menu"),v=p.useFloatingTree(),h=p.useFloatingNodeId(),f=p.useFloatingParentNodeId(),w=null!=f,C=s.useRef([]),[_,N]=s.useState(null),{allowHover:P,isOpen:I,setIsOpen:T}=q.useMenuWideEvents(v,h,f),E=void 0!==b?b:I;s.useEffect((()=>null==g?void 0:g(E)),[E,g]);const{x:S,y:F,refs:R,placement:A,strategy:L,context:D}=p.useFloating({nodeId:h,open:E,onOpenChange:T,placement:l||(w?"right-start":"bottom-start"),middleware:[p.offset(2),p.flip({fallbackAxisSideDirection:"end",crossAxis:!1}),p.shift({padding:8})],whileElementsMounted:p.autoUpdate}),{getReferenceProps:M,getFloatingProps:O,getItemProps:V}=p.useInteractions([p.useHover(D,{enabled:c&&P,delay:{open:75},handleClose:p.safePolygon({requireIntent:!0,blockPointerEvents:!0})}),p.useClick(D,{event:"mousedown"}),p.useDismiss(D,{outsidePress:!u}),p.useRole(D,{role:"menu"}),p.useListNavigation(D,{listRef:C,activeIndex:_,nested:w,onNavigate:N})]),$=p.useMergeRefs([R.setReference,r]),{theme:B,density:H}=m.getThemeAndDensity(R.reference.current);return e.jsxs(p.FloatingNode,{id:h,children:[s.isValidElement(j)&&("button"===j.type||y.isForwardRef(j))?s.cloneElement(j,{...M({...x,ref:$,role:w?"menuitem":void 0,"aria-controls":k,onClick(e){e.stopPropagation()}})}):j,e.jsx(d.AnimatePresence,{children:E&&e.jsx(p.FloatingPortal,{children:e.jsx(p.FloatingFocusManager,{context:D,modal:!1,initialFocus:w?-1:0,returnFocus:!w,children:e.jsx(d.motion.div,{className:n.clsx("jkl jkl-menu",i),"data-theme":B,"data-layout-density":H,role:"menu",initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:{ease:"easeIn",duration:.1},"data-placement":A,"aria-live":"assertive","aria-hidden":!E,ref:R.setFloating,...O({id:k,style:{position:L,top:F??"",left:S??""}}),children:s.Children.map(a,((e,n)=>s.isValidElement(e)&&y.isForwardRef(e)?s.cloneElement(e,V({...e.props,tabIndex:_===n?0:-1,role:"menuitem",ref(e){C.current[n]=e},onClick(n){var s,t;null==(t=(s=e.props).onClick)||t.call(s,n),!n.defaultPrevented&&(null==v||v.events.emit("click"))},onKeyDown(n){var s,t;null==(t=(s=e.props).onKeyDown)||t.call(s,n),!n.defaultPrevented&&(null==v||v.events.emit("keydown"),"menuitemcheckbox"===n.currentTarget.role&&"Enter"===n.key&&T(!1))},onMouseEnter(){P&&E&&N(n)}})):e))})})})})]})}));_.displayName="MenuComponent";const N=s.forwardRef(((n,s)=>null===p.useFloatingParentNodeId()?e.jsx(p.FloatingTree,{children:e.jsx(_,{ref:s,...n})}):e.jsx(_,{ref:s,...n})));N.displayName="Menu";const P=()=>{},I=s.forwardRef(((a,i)=>{const{id:c,name:u,items:p,value:d,label:j,labelProps:m,onChange:k,onBlur:v,onFocus:h,className:q,helpLabel:w,errorLabel:y,invalid:C,searchable:_=!1,inline:N=!1,defaultPrompt:I="Velg",density:T,width:E,maxShownOptions:S=5,style:F,tooltipProps:R,...A}=a,L=o.useId(c||"jkl-select",{generateSuffix:!c}),D=`${L}_label`,M=`${L}_button`,O=`${L}_search-input`,[V,$]=s.useState(!1),B=s.useCallback((()=>{$((e=>!e))}),[]),H=!!_,G=H&&V,[K,U]=s.useState(""),W=s.useCallback((e=>!!e.label.toLowerCase().includes(K.toLowerCase())||"function"==typeof _&&_(K,e)),[_,K]),z=s.useMemo((()=>p.map(x.getValuePair).map((e=>{const n=!H||""===K||W(e);return{...e,visible:n}}))),[p,H,K,W]),Q=s.useMemo((()=>!(typeof d>"u")&&p.some((e=>"string"==typeof e?e===d:e.value===d))),[d,p]),[J,X]=s.useState(Q&&void 0!==d?d:""),Y=""!==J,Z=s.useMemo((()=>{var e;return(null==(e=z.find((e=>e.value===J)))?void 0:e.label)||I}),[z,J,I]),ee=s.useRef(null),ne=s.useCallback((e=>{ee.current=e,i&&("function"==typeof i?i(e):i.current=e),e&&X(e.value)}),[ee,i]),se=b.usePreviousValue(d);s.useEffect((()=>{d!==se&&X(typeof d>"u"||!Q?"":d)}),[X,d,se,Q]);const te=s.useCallback((e=>{const n=e.value;U(""),X(n),B()}),[U,X,B]),oe=b.usePreviousValue(J);s.useEffect((()=>{typeof oe>"u"||oe===J||J===d||(k&&k({type:"change",target:{name:u,value:J}}),ee.current&&ee.current.dispatchEvent(new Event("change",{bubbles:!0})))}),[k,u,d,J,oe]);const re=s.useRef(null),ae=s.useRef(!1),ie=s.useRef(null),le=s.useRef(null),ce=s.useCallback(((e,n)=>{if(e&&!H){const e=n.current;e&&f.focusSelected(e,J)}else e?ie.current&&ie.current.focus():ae.current&&le.current&&le.current.focus()}),[H,J]),[ue]=t.useAnimatedHeight(V,{onFirstVisible:ce,onTransitionEnd:ce});g.useListNavigation({ref:ue});const pe=s.useCallback((()=>{var e;H&&U(""),v&&(v({type:"blur",target:{name:u,value:J}}),null==(e=ee.current)||e.dispatchEvent(new Event("focusout",{bubbles:!0}))),ae.current=!1,$(!1)}),[v,U,$,H,u,J]),de=s.useCallback((e=>{const n=re.current;n&&n.contains(e.relatedTarget)||pe()}),[pe]),je=s.useCallback((()=>{ae.current||(h&&h({type:"change",target:{name:u,value:J}}),ae.current=!0)}),[h,J,u]),me=s.useCallback((e=>{e.target.focus({preventScroll:!0})}),[]);s.useEffect((()=>{const e=ee.current,n=ie.current,s=le.current,t=re.current;return null==e||e.addEventListener("focus",(()=>{G?null==n||n.focus():null==s||s.focus()})),null==e||e.addEventListener("blur",(function(e){t&&t.contains(e.relatedTarget)&&e.preventDefault()})),()=>{null==e||e.removeEventListener("focus",(()=>{G?null==n||n.focus():null==s||s.focus()})),null==e||e.removeEventListener("blur",(function(e){t&&t.contains(e.relatedTarget)&&e.preventDefault()}))}}),[G]);const be=s.useCallback((e=>{"ArrowDown"!==e.key&&" "!==e.key||V?"Escape"===e.key&&(e.preventDefault(),e.stopPropagation(),$(!1)):(e.preventDefault(),e.stopPropagation(),$(!0))}),[$,V]),ge=s.useCallback((e=>{if("ArrowDown"===e.key){e.preventDefault(),e.stopPropagation();const n=ue.current;n&&(H?f.focusSelected(n,void 0):f.focusSelected(n,J))}else if("Escape"===e.key)e.preventDefault(),e.stopPropagation(),$(!1);else if("Tab"!==e.key||e.shiftKey)"Enter"===e.key&&V&&(e.preventDefault(),e.stopPropagation());else{const n=ue.current;n&&(e.preventDefault(),e.stopPropagation(),f.focusSelected(n,J))}}),[$,ue,J,H,V]),xe=s.useCallback((e=>{if("Tab"===e.key)e.preventDefault(),e.stopPropagation(),e.shiftKey&&ie.current?ie.current.focus():le.current&&(X(e.currentTarget.value),$(!1),le.current.focus());else if("ArrowUp"===e.key&&ue.current&&ie.current){const n=ue.current.querySelector('[role="option"]:not([hidden])');e.currentTarget.id===(null==n?void 0:n.id)&&ie.current&&ie.current.focus()}}),[$,ue]);return s.useEffect((()=>{const e=e=>{"Escape"===e.key&&V&&$(!1)};return typeof window<"u"&&V&&window.addEventListener("keydown",e),()=>{typeof window<"u"&&window.removeEventListener("keydown",e)}}),[$,V]),e.jsxs(e.Fragment,{children:[e.jsxs("select",{name:u,tabIndex:-1,"data-testid":"jkl-native-select",className:"jkl-sr-only","aria-hidden":!0,ref:ne,value:J,onChange:P,children:[e.jsx("option",{value:""})," ",z.map((n=>e.jsx("option",{hidden:!n.visible,value:n.value,children:n.label},`${L}-opt-${n.value}`)))]}),e.jsx(l.InputGroup,{ref:re,"data-testid":"jkl-select",className:n.clsx("jkl-select",q,{"jkl-select--inline":N,"jkl-select--open":V&&z.some((e=>e.visible)),"jkl-select--no-value":!Y,"jkl-select--invalid":!!y||C}),tooltipProps:R&&{...R,triggerProps:{...R.triggerProps,onFocus:e=>{var n,s;null==(s=null==(n=R.triggerProps)?void 0:n.onFocus)||s.call(n,e),pe()}}},...A,id:H?O:M,style:{"--jkl-select-max-shown-options":S,...F},density:T,label:j,labelProps:{id:D,srOnly:N,...m,htmlFor:H?O:M},helpLabel:w,errorLabel:y,render:s=>e.jsxs("div",{className:"jkl-select__outer-wrapper",style:{width:E},children:[H&&e.jsx("input",{...s,id:O,hidden:!G,ref:ie,placeholder:"Søk",value:K,onChange:e=>U(e.target.value),"data-testid":"jkl-select__search-input",className:"jkl-select__search-input","aria-autocomplete":"list","aria-activedescendant":Y?`${L}__${f.toLower(J)}`:void 0,"aria-controls":L,"aria-expanded":V,role:"combobox",onKeyDown:ge,onBlur:de,onFocus:je,onClick:e=>{e.stopPropagation()}}),e.jsx("button",{...s,id:M,ref:le,hidden:G,type:"button",name:`${u}-btn`,className:n.clsx("jkl-select__button",{"jkl-select__button--active-value":!!J}),"data-testid":"jkl-select__button","aria-label":`${Z||"Velg"},${j}`,"aria-expanded":V,"aria-controls":L,onBlur:de,onFocus:je,onKeyDown:be,onClick:B,onMouseDown:e=>{var n;e.preventDefault(),null==(n=le.current)||n.focus()},children:Z}),e.jsx("div",{id:L,ref:ue,role:"listbox",className:"jkl-select__options-menu",hidden:!V||z.every((e=>!e.visible)),"aria-labelledby":D,tabIndex:-1,"data-focus":"controlled",children:z.map(((n,s)=>n.visible?e.jsxs("button",{hidden:!n.visible,type:"button",id:`${L}__${f.toLower(n.value)}`,className:"jkl-select__option","data-testid":"jkl-select__option","aria-selected":n.value===J,role:"option",value:n.value,"data-testautoid":`jkl-select__option-${s}`,onBlur:de,onFocus:je,onKeyDown:xe,onClick:e=>{e.preventDefault(),te(n)},onMouseOver:me,children:[n.label,n.description?e.jsx("span",{className:"jkl-select__option-description",children:n.description}):null]},`${L}-${n.value}`):null))}),e.jsx(r.ArrowVerticalAnimated,{variant:"medium",pointingDown:!V,className:"jkl-select__arrow"})]})})]})}));I.displayName="Select";const T=s.forwardRef(((s,t)=>{const{label:o,className:a,density:i,errorLabel:c,helpLabel:u,inline:p,invalid:d,items:j,labelProps:m,placeholder:b="Velg",selectClassName:g,supportLabelProps:k,tooltipProps:v,value:h,width:f,...q}=s,w={label:o,density:i,errorLabel:c,helpLabel:u,labelProps:m,inline:p,supportLabelProps:k,tooltipProps:v};return e.jsx(l.InputGroup,{...w,"data-testid":"jkl-select",className:n.clsx("jkl-select",a,{"jkl-select--inline":p,"jkl-select--invalid":!!c||d}),render:s=>e.jsxs("div",{className:"jkl-select__outer-wrapper",style:{width:f},children:[e.jsxs("select",{ref:t,className:n.clsx("jkl-select__button",g,{"jkl-select__button--active-value":!!h}),defaultValue:h?void 0:"",value:h,...s,...q,children:[b&&!h&&e.jsx("option",{disabled:!0,value:"",children:b}),j.map(x.getValuePair).map((n=>e.jsx("option",{"data-testid":"jkl-select__option",className:"jkl-select__option",value:n.value,children:n.label},n.value)))]}),e.jsx(r.ArrowVerticalAnimated,{variant:"medium",pointingDown:!0,className:"jkl-select__arrow"})]})})}));T.displayName="NativeSelect";const E=s.forwardRef(((t,r)=>{const{activePage:l=0,totalNumberOfRows:p,rowsPerPage:d,rowsPerPageItems:j,className:m,density:b,id:g,withGoToPage:x=!1,onChange:k,onChangeRowsPerPage:h,labels:f={rowsPerPage:"Rader per side",previous:"Forrige",next:"Neste"},...q}=t,w=o.useId(g||"jkl-table-pagination",{generateSuffix:!g}),{density:y}=v.useTableContext(),C=d<=0?1:Math.ceil(p/d),[_,N]=s.useState(function(e,n,s){return n<e?e:n>s?s:n}(0,l,C-1)),P=s.useCallback((e=>{const n=Number.parseInt(e.currentTarget.dataset.number);k(e,n,_),N(n),E(String(n+1))}),[k,N,_]),[I,E]=s.useState(String(_+1)),F=s.useCallback((e=>{E(e.target.value);try{const n=Number.parseInt(e.target.value)-1;if(Number.isNaN(n))return;n>=0&&n<C&&(k(e,n,_),N(n))}catch{return}}),[k,E,N,_,C]),R=s.useCallback((e=>{if(0===_)return void k(e,_,_);const n=_-1;k(e,n,_),N(n),E(String(n+1))}),[k,N,_]),A=s.useCallback((e=>{if(_===C-1)return void k(e,_,_);const n=_+1;k(e,n,_),N(n),E(String(n+1))}),[k,N,C,_]);return e.jsxs("div",{className:n.clsx("jkl-table-pagination",m),...q,id:w,"data-density":b||y,ref:r,children:[e.jsx("div",{className:"jkl-table-pagination__left",children:e.jsxs("div",{className:"jkl-table-pagination__picker jkl-table-pagination__picker--rows",children:[e.jsxs("span",{className:"jkl-table-pagination__picker-label","aria-hidden":"true",children:[f.rowsPerPage,":"]}),e.jsx(T,{className:"jkl-table-pagination__picker-input",label:f.rowsPerPage,labelProps:{srOnly:!0},name:`${w}-rows-per-page`,items:j.map((e=>"number"==typeof e?String(e):{label:e.label,value:String(e.value)})),value:String(d),onChange:h,width:"min(8rem, 100%)",inline:!0})]})}),e.jsx("div",{className:"jkl-table-pagination__right",children:1!==C&&e.jsxs("nav",{className:"jkl-table-pagination__nav",children:[x&&e.jsxs("div",{className:"jkl-table-pagination__picker jkl-table-pagination__picker--page",children:[e.jsxs("span",{className:"jkl-table-pagination__picker-label","aria-hidden":"true",children:["object"==typeof x?x.gotoLabel:"Gå til side",":"]}),e.jsx(c.TextInput,{className:"jkl-table-pagination__picker-input",label:"object"==typeof x?x.gotoLabel:"Gå til side",labelProps:{srOnly:!0},name:`${w}-go-to-page`,value:I,width:"min(4rem, 100%)",onChange:F,"aria-invalid":I&&I!==String(_+1)?"true":void 0})]}),e.jsxs("ul",{children:[e.jsx("li",{children:e.jsx(u.IconButton,{className:"jkl-table-pagination__previous",title:f.previous,onClick:R,children:e.jsx(a.ChevronLeftIcon,{})})}),e.jsx(S,{id:w,activePage:l,numberOfPages:C,onPageClick:P}),e.jsx("li",{children:e.jsx(u.IconButton,{className:"jkl-table-pagination__next",title:f.next,onClick:A,children:e.jsx(i.ChevronRightIcon,{})})})]})]})})]})})),S=({id:s,activePage:t,numberOfPages:o,onPageClick:r})=>{if(o<=7)return e.jsx(e.Fragment,{children:Array.from({length:o}).map(((o,a)=>e.jsx("li",{children:e.jsx("button",{className:n.clsx("jkl-table-pagination__page",{"jkl-table-pagination__page--active":t===a}),type:"button","data-number":a,onClick:r,children:a+1})},`${s}-page-${a}`)))});const a=t>3&&o>7,i=t<o-4&&o>7,l=Math.min(Math.max(t-2,1),o-6),c=Math.min(l+1,o-5),u=Math.min(c+1,o-4),p=Math.min(c+2,o-3),d=Math.min(c+3,o-2);return e.jsxs(e.Fragment,{children:[e.jsx("li",{children:e.jsx(F,{isActive:0===t,number:0,onClick:r})}),e.jsx("li",{children:a?e.jsx("span",{className:"jkl-table-pagination__ellipsis","aria-hidden":!0,children:"..."}):e.jsx(F,{isActive:t===l,number:l,onClick:r})}),e.jsx("li",{children:e.jsx(F,{isActive:t===c,number:c,onClick:r})}),e.jsx("li",{children:e.jsx(F,{isActive:t===u,number:u,onClick:r})}),e.jsx("li",{children:e.jsx(F,{isActive:t===p,number:p,onClick:r})}),e.jsx("li",{children:i?e.jsx("span",{className:"jkl-table-pagination__ellipsis","aria-hidden":!0,children:"..."}):e.jsx(F,{isActive:t===d,number:d,onClick:r})}),e.jsx("li",{children:e.jsx(F,{isActive:t===o-1,number:o-1,onClick:r})})]})},F=({isActive:s,number:t,onClick:o,...r})=>e.jsx("button",{className:n.clsx("jkl-table-pagination__page",{"jkl-table-pagination__page--active":s}),type:"button","data-number":t,onClick:o,...r,children:t+1});E.displayName="TablePagination";const R=s.forwardRef((({isOpen:s,onClick:t,children:o,className:r,id:a,"aria-controls":i,...l},c)=>{if(void 0===s||"function"!=typeof t)throw new Error("ExpandableTableRowController must have ExpandableTableRow as parent");const{density:u,collapseToList:p}=v.useTableContext(),d=l["data-th"],j=p?d:void 0;return e.jsx(k.TableCell,{className:n.clsx("jkl-table-cell--expand",{"jkl-table-cell--expand-without-text":!o},r),...l,ref:c,children:e.jsx(C,{className:n.clsx("jkl-table-row-expand-button",{"jkl-table-row-expand-button--expanded":s}),id:a,density:u,isExpanded:s,"aria-controls":i,"aria-label":o?void 0:d||"Ekspander rad",onClick:e=>{e.stopPropagation(),t()},onKeyDown:e=>{("Enter"===e.key||" "===e.key)&&(e.stopPropagation(),e.preventDefault(),t())},children:o??j})})}));R.displayName="ExpandableTableRowController";const A=s.forwardRef(((r,a)=>{const{className:i,clickable:l,children:c,expandedChildren:u,onToggle:p,colSpan:d=100,isOpen:j,...m}=r,[b,g]=s.useState(j??!1);s.useEffect((()=>{typeof j>"u"||g(j)}),[j]);const[x]=t.useAnimatedHeight(b,{timing:"expressive"}),k=()=>{const e=!b;p&&p(e),g(e)},v=n.clsx("jkl-table-row--expandable",i,{"jkl-table-row--expanded":b,"jkl-expandable-table-row--clickable-external":l}),f=n.clsx("jkl-expandable-table-row__expanded-row",{"jkl-expandable-table-row__expanded-row--expanded":b}),q=o.useId("jkl-expandable-table-row"),w=o.useId("jkl-expandable-table-row-controller");return e.jsxs(e.Fragment,{children:[e.jsx(h.TableRow,{className:v,clickable:l??{onClick:()=>k()},...m,ref:a,children:s.Children.map(c,(e=>s.isValidElement(e)&&e.type==R?s.cloneElement(e,{isOpen:b,onClick:()=>k(),"aria-controls":q,id:w}):e))}),e.jsx("tr",{"aria-hidden":!b,children:e.jsx("td",{colSpan:d,children:e.jsx("div",{ref:x,className:f,id:q,"aria-labelledby":w,hidden:!b,role:"group",children:u})})})]})}));A.displayName="ExpandableTableRow",exports.ExpandableTableRow=A,exports.ExpandableTableRowController=R,exports.Expander=C,exports.Menu=N,exports.NativeSelect=T,exports.Select=I,exports.TablePagination=E;
2
- //# sourceMappingURL=ExpandableTableRow-BGglv7mF.cjs.map
@@ -1,2 +0,0 @@
1
- import{jsxs as e,jsx as n,Fragment as o}from"react/jsx-runtime";import{c as t}from"./clsx-BeLtu-UY.js";import s,{forwardRef as a,useRef as i,useState as r,useEffect as l,useCallback as c,useMemo as p}from"react";import{useAnimatedHeight as m}from"./es/hooks/useAnimatedHeight/useAnimatedHeight.js";import"./es/hooks/useScreen/useScreen.js";import{useId as d}from"./es/hooks/useId/useId.js";import"./es/components/icon/Icon.js";import{ArrowVerticalAnimated as u}from"./es/components/icon/icons/animated/ArrowVerticalAnimated.js";import"./es/components/icon/icons/animated/ArrowHorizontalAnimated.js";import"./es/components/icon/icons/animated/PlusRemoveAnimated.js";import"./es/components/icon/icons/ArrowDownIcon.js";import"./es/components/icon/icons/ArrowLeftIcon.js";import"./es/components/icon/icons/ArrowNorthEastIcon.js";import"./es/components/icon/icons/ArrowRightIcon.js";import"./es/components/icon/icons/ArrowUpIcon.js";import"./es/components/icon/icons/CalendarIcon.js";import"./es/components/icon/icons/CheckIcon.js";import"./es/components/icon/icons/ChevronDownIcon.js";import{ChevronLeftIcon as b}from"./es/components/icon/icons/ChevronLeftIcon.js";import{ChevronRightIcon as j}from"./es/components/icon/icons/ChevronRightIcon.js";import"./es/components/icon/icons/ChevronUpIcon.js";import"./es/components/icon/icons/CloseIcon.js";import"./es/components/icon/icons/CopyIcon.js";import"./es/components/icon/icons/DotsIcon.js";import"./es/components/icon/icons/DragIcon.js";import"./es/components/icon/icons/ErrorIcon.js";import"./es/components/icon/icons/GreenCheckIcon.js";import"./es/components/icon/icons/HamburgerIcon.js";import"./es/components/icon/icons/InfoIcon.js";import"./es/components/icon/icons/LinkIcon.js";import"./es/components/icon/icons/PlusIcon.js";import"./es/components/icon/icons/QuestionIcon.js";import"./es/components/icon/icons/RedCrossIcon.js";import"./es/components/icon/icons/SearchIcon.js";import"./es/components/icon/icons/SuccessIcon.js";import"./es/components/icon/icons/WarningIcon.js";import"./es/components/icon/icons/MinusIcon.js";import"./es/components/icon/icons/ThumbDownIcon.js";import"./es/components/icon/icons/ThumbUpIcon.js";import"./es/components/icon/icons/TrashCanIcon.js";import"./es/components/icon/icons/PenIcon.js";import"./es/components/button/Button.js";import"./es/components/card/Card.js";import"./es/components/card/CardImage.js";import"./es/components/card/NavCard.js";import"./es/components/checkbox/Checkbox.js";import"./es/components/combobox/Combobox.js";import"./es/components/cookie-consent/CookieConsentContext.js";import"react-dom";import"./es/components/modal/Modal.js";import"react-a11y-dialog";import"./es/components/list/List.js";import"./es/components/list/ListItem.js";import"./es/components/datepicker/DatePicker.js";import"./es/components/feedback/feedbackContext.js";import"./es/components/message/Message.js";import"./es/components/message/FormErrorMessage.js";import"./es/components/tooltip/Tooltip.js";import"./es/components/tooltip/TooltipContent.js";import"./es/components/tooltip/TooltipTrigger.js";import{InputGroup as g}from"./es/components/input-group/InputGroup.js";import"./es/components/feedback/followup/followupContext.js";import"./es/components/feedback/main-question/mainQuestionContext.js";import"./es/components/radio-button/RadioButton.js";import"./es/components/radio-button/radioGroupContext.js";import"./es/components/radio-button/BaseRadioButton.js";import"./es/components/text-input/BaseTextArea.js";import"./es/components/text-input/BaseTextInput.js";import"./es/components/text-input/TextArea.js";import{TextInput as v}from"./es/components/text-input/TextInput.js";import"./es/utilities/polymorphism/SlotComponent.js";import"./es/components/flex/Flex.js";import{IconButton as h}from"./es/components/icon-button/IconButton.js";import"./es/components/link/Link.js";import"./es/components/link/NavLink.js";import"./es/components/link-list/LinkList.js";import"./es/components/logo/text-paths/ForsikringLevertAvFremtind.js";import"./es/components/logo/text-paths/FraSB1ogDNB.js";import"./es/components/logo/text-paths/InnovasjonFraFremtind.js";import"./es/components/logo/text-paths/TeknologiFraFremtind.js";import"./es/components/logo/text-paths/VartEgetForsikringsselskap.js";import"./es/components/logo/text-paths/VartForsikringsselskap.js";import{useFloatingTree as k,useFloatingNodeId as f,useFloatingParentNodeId as y,useFloating as w,offset as x,flip as _,shift as C,autoUpdate as N,useInteractions as P,useHover as I,safePolygon as T,useClick as E,useDismiss as F,useRole as L,useListNavigation as D,useMergeRefs as A,FloatingNode as S,FloatingPortal as R,FloatingFocusManager as M,FloatingTree as O}from"@floating-ui/react";import{AnimatePresence as $,motion as V}from"framer-motion";import*as B from"react-is";import{getThemeAndDensity as H}from"./es/utilities/getThemeAndDensity.js";import"./es/components/menu/MenuItem.js";import"./es/components/menu/MenuItemCheckbox.js";import"./es/components/popover/Popover.js";import{usePreviousValue as G}from"./es/hooks/usePreviousValue/usePreviousValue.js";import{useListNavigation as K}from"./es/hooks/useListNavigation/useListNavigation.js";import{getValuePair as U}from"./es/utilities/valuePair.js";import"./es/components/system-message/SystemMessage.js";import"./es/components/table/DataTable.js";import"./es/components/table/Table.js";import"./es/components/table/TableBody.js";import"./es/components/table/TableCaption.js";import{TableCell as q}from"./es/components/table/TableCell.js";import"./es/components/table/TableColumn.js";import"./es/components/table/TableColumnGroup.js";import{useTableContext as W}from"./es/components/table/tableContext.js";import"./es/components/table/tableSectionContext.js";import"./es/components/table/TableFooter.js";import"./es/components/table/TableHead.js";import"./es/components/table/TableHeader.js";import{TableRow as Q}from"./es/components/table/TableRow.js";import"./es/components/tabs/NavTab.js";import"./es/components/tabs/tabsContext.js";import"./es/components/tabs/Tab.js";import"./es/components/tag/Tag.js";import"./es/components/toast/toastContext.js";import"./es/components/toggle-switch/ToggleSwitch.js";import{focusSelected as z,toLower as J}from"./es/components/select/select-utils.js";import{useMenuWideEvents as X}from"./es/components/menu/useMenuWideEvents.js";import{ScreenReaderOnly as Y}from"./es/components/ScreenReaderOnly.js";const Z=s.forwardRef((({as:o="button",className:a,children:i,density:r,expandDirection:l="down",isExpanded:c=!1,hideLabel:p=!1,...m},d)=>{const b=p?Y:s.Fragment,j="down"===l?!c:c;return e(o,{"aria-expanded":c,"data-testid":"jkl-expander",type:"button"===o?"button":void 0,className:t("jkl-expander",a,{"jkl-expander--expanded":c,"jkl-expander--icon-only":!i}),...m,"data-density":r,ref:d,children:[i&&n(b,{children:n("span",{className:"jkl-expander__text",children:i})}),n(u,{className:"jkl-expander__arrow",variant:"inherit",pointingDown:j,bold:c})]})}));Z.displayName="Expander";const ee=a(((o,a)=>{const{children:c,className:p,initialPlacement:m,openOnHover:u=!1,keepOpenOnClickOutside:b=!1,triggerElement:j,isOpen:g,onToggle:v,...h}=o,O=d("jkl-menu"),G=k(),K=f(),U=y(),q=null!=U,W=i([]),[Q,z]=r(null),{allowHover:J,isOpen:Y,setIsOpen:Z}=X(G,K,U),ee=void 0!==g?g:Y;l((()=>null==v?void 0:v(ee)),[ee,v]);const{x:ne,y:oe,refs:te,placement:se,strategy:ae,context:ie}=w({nodeId:K,open:ee,onOpenChange:Z,placement:m||(q?"right-start":"bottom-start"),middleware:[x(2),_({fallbackAxisSideDirection:"end",crossAxis:!1}),C({padding:8})],whileElementsMounted:N}),{getReferenceProps:re,getFloatingProps:le,getItemProps:ce}=P([I(ie,{enabled:u&&J,delay:{open:75},handleClose:T({requireIntent:!0,blockPointerEvents:!0})}),E(ie,{event:"mousedown"}),F(ie,{outsidePress:!b}),L(ie,{role:"menu"}),D(ie,{listRef:W,activeIndex:Q,nested:q,onNavigate:z})]),pe=A([te.setReference,a]),{theme:me,density:de}=H(te.reference.current);return e(S,{id:K,children:[s.isValidElement(j)&&("button"===j.type||B.isForwardRef(j))?s.cloneElement(j,{...re({...h,ref:pe,role:q?"menuitem":void 0,"aria-controls":O,onClick(e){e.stopPropagation()}})}):j,n($,{children:ee&&n(R,{children:n(M,{context:ie,modal:!1,initialFocus:q?-1:0,returnFocus:!q,children:n(V.div,{className:t("jkl jkl-menu",p),"data-theme":me,"data-layout-density":de,role:"menu",initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:{ease:"easeIn",duration:.1},"data-placement":se,"aria-live":"assertive","aria-hidden":!ee,ref:te.setFloating,...le({id:O,style:{position:ae,top:oe??"",left:ne??""}}),children:s.Children.map(c,((e,n)=>s.isValidElement(e)&&B.isForwardRef(e)?s.cloneElement(e,ce({...e.props,tabIndex:Q===n?0:-1,role:"menuitem",ref(e){W.current[n]=e},onClick(n){var o,t;null==(t=(o=e.props).onClick)||t.call(o,n),!n.defaultPrevented&&(null==G||G.events.emit("click"))},onKeyDown(n){var o,t;null==(t=(o=e.props).onKeyDown)||t.call(o,n),!n.defaultPrevented&&(null==G||G.events.emit("keydown"),"menuitemcheckbox"===n.currentTarget.role&&"Enter"===n.key&&Z(!1))},onMouseEnter(){J&&ee&&z(n)}})):e))})})})})]})}));ee.displayName="MenuComponent";const ne=a(((e,o)=>null===y()?n(O,{children:n(ee,{ref:o,...e})}):n(ee,{ref:o,...e})));ne.displayName="Menu";const oe=()=>{},te=a(((s,a)=>{const{id:b,name:j,items:v,value:h,label:k,labelProps:f,onChange:y,onBlur:w,onFocus:x,className:_,helpLabel:C,errorLabel:N,invalid:P,searchable:I=!1,inline:T=!1,defaultPrompt:E="Velg",density:F,width:L,maxShownOptions:D=5,style:A,tooltipProps:S,...R}=s,M=d(b||"jkl-select",{generateSuffix:!b}),O=`${M}_label`,$=`${M}_button`,V=`${M}_search-input`,[B,H]=r(!1),q=c((()=>{H((e=>!e))}),[]),W=!!I,Q=W&&B,[X,Y]=r(""),Z=c((e=>!!e.label.toLowerCase().includes(X.toLowerCase())||"function"==typeof I&&I(X,e)),[I,X]),ee=p((()=>v.map(U).map((e=>{const n=!W||""===X||Z(e);return{...e,visible:n}}))),[v,W,X,Z]),ne=p((()=>!(typeof h>"u")&&v.some((e=>"string"==typeof e?e===h:e.value===h))),[h,v]),[te,se]=r(ne&&void 0!==h?h:""),ae=""!==te,ie=p((()=>{var e;return(null==(e=ee.find((e=>e.value===te)))?void 0:e.label)||E}),[ee,te,E]),re=i(null),le=c((e=>{re.current=e,a&&("function"==typeof a?a(e):a.current=e),e&&se(e.value)}),[re,a]),ce=G(h);l((()=>{h!==ce&&se(typeof h>"u"||!ne?"":h)}),[se,h,ce,ne]);const pe=c((e=>{const n=e.value;Y(""),se(n),q()}),[Y,se,q]),me=G(te);l((()=>{typeof me>"u"||me===te||te===h||(y&&y({type:"change",target:{name:j,value:te}}),re.current&&re.current.dispatchEvent(new Event("change",{bubbles:!0})))}),[y,j,h,te,me]);const de=i(null),ue=i(!1),be=i(null),je=i(null),ge=c(((e,n)=>{if(e&&!W){const e=n.current;e&&z(e,te)}else e?be.current&&be.current.focus():ue.current&&je.current&&je.current.focus()}),[W,te]),[ve]=m(B,{onFirstVisible:ge,onTransitionEnd:ge});K({ref:ve});const he=c((()=>{var e;W&&Y(""),w&&(w({type:"blur",target:{name:j,value:te}}),null==(e=re.current)||e.dispatchEvent(new Event("focusout",{bubbles:!0}))),ue.current=!1,H(!1)}),[w,Y,H,W,j,te]),ke=c((e=>{const n=de.current;n&&n.contains(e.relatedTarget)||he()}),[he]),fe=c((()=>{ue.current||(x&&x({type:"change",target:{name:j,value:te}}),ue.current=!0)}),[x,te,j]),ye=c((e=>{e.target.focus({preventScroll:!0})}),[]);l((()=>{const e=re.current,n=be.current,o=je.current,t=de.current;return null==e||e.addEventListener("focus",(()=>{Q?null==n||n.focus():null==o||o.focus()})),null==e||e.addEventListener("blur",(function(e){t&&t.contains(e.relatedTarget)&&e.preventDefault()})),()=>{null==e||e.removeEventListener("focus",(()=>{Q?null==n||n.focus():null==o||o.focus()})),null==e||e.removeEventListener("blur",(function(e){t&&t.contains(e.relatedTarget)&&e.preventDefault()}))}}),[Q]);const we=c((e=>{"ArrowDown"!==e.key&&" "!==e.key||B?"Escape"===e.key&&(e.preventDefault(),e.stopPropagation(),H(!1)):(e.preventDefault(),e.stopPropagation(),H(!0))}),[H,B]),xe=c((e=>{if("ArrowDown"===e.key){e.preventDefault(),e.stopPropagation();const n=ve.current;n&&z(n,W?void 0:te)}else if("Escape"===e.key)e.preventDefault(),e.stopPropagation(),H(!1);else if("Tab"!==e.key||e.shiftKey)"Enter"===e.key&&B&&(e.preventDefault(),e.stopPropagation());else{const n=ve.current;n&&(e.preventDefault(),e.stopPropagation(),z(n,te))}}),[H,ve,te,W,B]),_e=c((e=>{if("Tab"===e.key)e.preventDefault(),e.stopPropagation(),e.shiftKey&&be.current?be.current.focus():je.current&&(se(e.currentTarget.value),H(!1),je.current.focus());else if("ArrowUp"===e.key&&ve.current&&be.current){const n=ve.current.querySelector('[role="option"]:not([hidden])');e.currentTarget.id===(null==n?void 0:n.id)&&be.current&&be.current.focus()}}),[H,ve]);return l((()=>{const e=e=>{"Escape"===e.key&&B&&H(!1)};return typeof window<"u"&&B&&window.addEventListener("keydown",e),()=>{typeof window<"u"&&window.removeEventListener("keydown",e)}}),[H,B]),e(o,{children:[e("select",{name:j,tabIndex:-1,"data-testid":"jkl-native-select",className:"jkl-sr-only","aria-hidden":!0,ref:le,value:te,onChange:oe,children:[n("option",{value:""})," ",ee.map((e=>n("option",{hidden:!e.visible,value:e.value,children:e.label},`${M}-opt-${e.value}`)))]}),n(g,{ref:de,"data-testid":"jkl-select",className:t("jkl-select",_,{"jkl-select--inline":T,"jkl-select--open":B&&ee.some((e=>e.visible)),"jkl-select--no-value":!ae,"jkl-select--invalid":!!N||P}),tooltipProps:S&&{...S,triggerProps:{...S.triggerProps,onFocus:e=>{var n,o;null==(o=null==(n=S.triggerProps)?void 0:n.onFocus)||o.call(n,e),he()}}},...R,id:W?V:$,style:{"--jkl-select-max-shown-options":D,...A},density:F,label:k,labelProps:{id:O,srOnly:T,...f,htmlFor:W?V:$},helpLabel:C,errorLabel:N,render:o=>e("div",{className:"jkl-select__outer-wrapper",style:{width:L},children:[W&&n("input",{...o,id:V,hidden:!Q,ref:be,placeholder:"Søk",value:X,onChange:e=>Y(e.target.value),"data-testid":"jkl-select__search-input",className:"jkl-select__search-input","aria-autocomplete":"list","aria-activedescendant":ae?`${M}__${J(te)}`:void 0,"aria-controls":M,"aria-expanded":B,role:"combobox",onKeyDown:xe,onBlur:ke,onFocus:fe,onClick:e=>{e.stopPropagation()}}),n("button",{...o,id:$,ref:je,hidden:Q,type:"button",name:`${j}-btn`,className:t("jkl-select__button",{"jkl-select__button--active-value":!!te}),"data-testid":"jkl-select__button","aria-label":`${ie||"Velg"},${k}`,"aria-expanded":B,"aria-controls":M,onBlur:ke,onFocus:fe,onKeyDown:we,onClick:q,onMouseDown:e=>{var n;e.preventDefault(),null==(n=je.current)||n.focus()},children:ie}),n("div",{id:M,ref:ve,role:"listbox",className:"jkl-select__options-menu",hidden:!B||ee.every((e=>!e.visible)),"aria-labelledby":O,tabIndex:-1,"data-focus":"controlled",children:ee.map(((o,t)=>o.visible?e("button",{hidden:!o.visible,type:"button",id:`${M}__${J(o.value)}`,className:"jkl-select__option","data-testid":"jkl-select__option","aria-selected":o.value===te,role:"option",value:o.value,"data-testautoid":`jkl-select__option-${t}`,onBlur:ke,onFocus:fe,onKeyDown:_e,onClick:e=>{e.preventDefault(),pe(o)},onMouseOver:ye,children:[o.label,o.description?n("span",{className:"jkl-select__option-description",children:o.description}):null]},`${M}-${o.value}`):null))}),n(u,{variant:"medium",pointingDown:!B,className:"jkl-select__arrow"})]})})]})}));te.displayName="Select";const se=a(((o,s)=>{const{label:a,className:i,density:r,errorLabel:l,helpLabel:c,inline:p,invalid:m,items:d,labelProps:b,placeholder:j="Velg",selectClassName:v,supportLabelProps:h,tooltipProps:k,value:f,width:y,...w}=o;return n(g,{label:a,density:r,errorLabel:l,helpLabel:c,labelProps:b,inline:p,supportLabelProps:h,tooltipProps:k,"data-testid":"jkl-select",className:t("jkl-select",i,{"jkl-select--inline":p,"jkl-select--invalid":!!l||m}),render:o=>e("div",{className:"jkl-select__outer-wrapper",style:{width:y},children:[e("select",{ref:s,className:t("jkl-select__button",v,{"jkl-select__button--active-value":!!f}),defaultValue:f?void 0:"",value:f,...o,...w,children:[j&&!f&&n("option",{disabled:!0,value:"",children:j}),d.map(U).map((e=>n("option",{"data-testid":"jkl-select__option",className:"jkl-select__option",value:e.value,children:e.label},e.value)))]}),n(u,{variant:"medium",pointingDown:!0,className:"jkl-select__arrow"})]})})}));se.displayName="NativeSelect";const ae=a(((o,s)=>{const{activePage:a=0,totalNumberOfRows:i,rowsPerPage:l,rowsPerPageItems:p,className:m,density:u,id:g,withGoToPage:k=!1,onChange:f,onChangeRowsPerPage:y,labels:w={rowsPerPage:"Rader per side",previous:"Forrige",next:"Neste"},...x}=o,_=d(g||"jkl-table-pagination",{generateSuffix:!g}),{density:C}=W(),N=l<=0?1:Math.ceil(i/l),[P,I]=r(function(e,n,o){return n<e?e:n>o?o:n}(0,a,N-1)),T=c((e=>{const n=Number.parseInt(e.currentTarget.dataset.number);f(e,n,P),I(n),F(String(n+1))}),[f,I,P]),[E,F]=r(String(P+1)),L=c((e=>{F(e.target.value);try{const n=Number.parseInt(e.target.value)-1;if(Number.isNaN(n))return;n>=0&&n<N&&(f(e,n,P),I(n))}catch{return}}),[f,F,I,P,N]),D=c((e=>{if(0===P)return void f(e,P,P);const n=P-1;f(e,n,P),I(n),F(String(n+1))}),[f,I,P]),A=c((e=>{if(P===N-1)return void f(e,P,P);const n=P+1;f(e,n,P),I(n),F(String(n+1))}),[f,I,N,P]);return e("div",{className:t("jkl-table-pagination",m),...x,id:_,"data-density":u||C,ref:s,children:[n("div",{className:"jkl-table-pagination__left",children:e("div",{className:"jkl-table-pagination__picker jkl-table-pagination__picker--rows",children:[e("span",{className:"jkl-table-pagination__picker-label","aria-hidden":"true",children:[w.rowsPerPage,":"]}),n(se,{className:"jkl-table-pagination__picker-input",label:w.rowsPerPage,labelProps:{srOnly:!0},name:`${_}-rows-per-page`,items:p.map((e=>"number"==typeof e?String(e):{label:e.label,value:String(e.value)})),value:String(l),onChange:y,width:"min(8rem, 100%)",inline:!0})]})}),n("div",{className:"jkl-table-pagination__right",children:1!==N&&e("nav",{className:"jkl-table-pagination__nav",children:[k&&e("div",{className:"jkl-table-pagination__picker jkl-table-pagination__picker--page",children:[e("span",{className:"jkl-table-pagination__picker-label","aria-hidden":"true",children:["object"==typeof k?k.gotoLabel:"Gå til side",":"]}),n(v,{className:"jkl-table-pagination__picker-input",label:"object"==typeof k?k.gotoLabel:"Gå til side",labelProps:{srOnly:!0},name:`${_}-go-to-page`,value:E,width:"min(4rem, 100%)",onChange:L,"aria-invalid":E&&E!==String(P+1)?"true":void 0})]}),e("ul",{children:[n("li",{children:n(h,{className:"jkl-table-pagination__previous",title:w.previous,onClick:D,children:n(b,{})})}),n(ie,{id:_,activePage:a,numberOfPages:N,onPageClick:T}),n("li",{children:n(h,{className:"jkl-table-pagination__next",title:w.next,onClick:A,children:n(j,{})})})]})]})})]})})),ie=({id:s,activePage:a,numberOfPages:i,onPageClick:r})=>{if(i<=7)return n(o,{children:Array.from({length:i}).map(((e,o)=>n("li",{children:n("button",{className:t("jkl-table-pagination__page",{"jkl-table-pagination__page--active":a===o}),type:"button","data-number":o,onClick:r,children:o+1})},`${s}-page-${o}`)))});const l=a>3&&i>7,c=a<i-4&&i>7,p=Math.min(Math.max(a-2,1),i-6),m=Math.min(p+1,i-5),d=Math.min(m+1,i-4),u=Math.min(m+2,i-3),b=Math.min(m+3,i-2);return e(o,{children:[n("li",{children:n(re,{isActive:0===a,number:0,onClick:r})}),n("li",{children:l?n("span",{className:"jkl-table-pagination__ellipsis","aria-hidden":!0,children:"..."}):n(re,{isActive:a===p,number:p,onClick:r})}),n("li",{children:n(re,{isActive:a===m,number:m,onClick:r})}),n("li",{children:n(re,{isActive:a===d,number:d,onClick:r})}),n("li",{children:n(re,{isActive:a===u,number:u,onClick:r})}),n("li",{children:c?n("span",{className:"jkl-table-pagination__ellipsis","aria-hidden":!0,children:"..."}):n(re,{isActive:a===b,number:b,onClick:r})}),n("li",{children:n(re,{isActive:a===i-1,number:i-1,onClick:r})})]})},re=({isActive:e,number:o,onClick:s,...a})=>n("button",{className:t("jkl-table-pagination__page",{"jkl-table-pagination__page--active":e}),type:"button","data-number":o,onClick:s,...a,children:o+1});ae.displayName="TablePagination";const le=a((({isOpen:e,onClick:o,children:s,className:a,id:i,"aria-controls":r,...l},c)=>{if(void 0===e||"function"!=typeof o)throw new Error("ExpandableTableRowController must have ExpandableTableRow as parent");const{density:p,collapseToList:m}=W(),d=l["data-th"],u=m?d:void 0;return n(q,{className:t("jkl-table-cell--expand",{"jkl-table-cell--expand-without-text":!s},a),...l,ref:c,children:n(Z,{className:t("jkl-table-row-expand-button",{"jkl-table-row-expand-button--expanded":e}),id:i,density:p,isExpanded:e,"aria-controls":r,"aria-label":s?void 0:d||"Ekspander rad",onClick:e=>{e.stopPropagation(),o()},onKeyDown:e=>{("Enter"===e.key||" "===e.key)&&(e.stopPropagation(),e.preventDefault(),o())},children:s??u})})}));le.displayName="ExpandableTableRowController";const ce=a(((a,i)=>{const{className:c,clickable:p,children:u,expandedChildren:b,onToggle:j,colSpan:g=100,isOpen:v,...h}=a,[k,f]=r(v??!1);l((()=>{typeof v>"u"||f(v)}),[v]);const[y]=m(k,{timing:"expressive"}),w=()=>{const e=!k;j&&j(e),f(e)},x=t("jkl-table-row--expandable",c,{"jkl-table-row--expanded":k,"jkl-expandable-table-row--clickable-external":p}),_=t("jkl-expandable-table-row__expanded-row",{"jkl-expandable-table-row__expanded-row--expanded":k}),C=d("jkl-expandable-table-row"),N=d("jkl-expandable-table-row-controller");return e(o,{children:[n(Q,{className:x,clickable:p??{onClick:()=>w()},...h,ref:i,children:s.Children.map(u,(e=>s.isValidElement(e)&&e.type==le?s.cloneElement(e,{isOpen:k,onClick:()=>w(),"aria-controls":C,id:N}):e))}),n("tr",{"aria-hidden":!k,children:n("td",{colSpan:g,children:n("div",{ref:y,className:_,id:C,"aria-labelledby":N,hidden:!k,role:"group",children:b})})})]})}));ce.displayName="ExpandableTableRow";export{Z as E,ne as M,se as N,te as S,ae as T,ce as a,le as b};
2
- //# sourceMappingURL=ExpandableTableRow-BfmOT4wb.js.map