@entur/dropdown 7.2.0 → 7.2.2

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.
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@entur/utils"),t=require("react"),n=require("downshift"),l=require("classnames"),a=require("@floating-ui/react-dom"),r=require("@entur/form"),i=require("@entur/tokens"),o=require("@entur/a11y"),s=require("@entur/button"),u=require("@entur/chip"),d=require("@entur/icons"),c=require("@entur/loader"),p=require("@entur/tooltip");function f(e,t,n,l,a,r,i){try{var o=e[r](i),s=o.value}catch(e){return void n(e)}o.done?t(s):Promise.resolve(s).then(l,a)}function m(){return m=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var l in n)({}).hasOwnProperty.call(n,l)&&(e[l]=n[l])}return e},m.apply(null,arguments)}function v(e,t){if(null==e)return{};var n={};for(var l in e)if({}.hasOwnProperty.call(e,l)){if(t.includes(l))continue;n[l]=e[l]}return n}function g(){g=function(){return t};var e,t={},n=Object.prototype,l=n.hasOwnProperty,a=Object.defineProperty||function(e,t,n){e[t]=n.value},r="function"==typeof Symbol?Symbol:{},i=r.iterator||"@@iterator",o=r.asyncIterator||"@@asyncIterator",s=r.toStringTag||"@@toStringTag";function u(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,n){return e[t]=n}}function d(e,t,n,l){var r=Object.create((t&&t.prototype instanceof b?t:b).prototype),i=new A(l||[]);return a(r,"_invoke",{value:k(e,n,i)}),r}function c(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}t.wrap=d;var p="suspendedStart",f="suspendedYield",m="executing",v="completed",h={};function b(){}function y(){}function I(){}var x={};u(x,i,(function(){return this}));var w=Object.getPrototypeOf,L=w&&w(w(P([])));L&&L!==n&&l.call(L,i)&&(x=L);var C=I.prototype=b.prototype=Object.create(x);function _(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function S(e,t){function n(a,r,i,o){var s=c(e[a],e,r);if("throw"!==s.type){var u=s.arg,d=u.value;return d&&"object"==typeof d&&l.call(d,"__await")?t.resolve(d.__await).then((function(e){n("next",e,i,o)}),(function(e){n("throw",e,i,o)})):t.resolve(d).then((function(e){u.value=e,i(u)}),(function(e){return n("throw",e,i,o)}))}o(s.arg)}var r;a(this,"_invoke",{value:function(e,l){function a(){return new t((function(t,a){n(e,l,t,a)}))}return r=r?r.then(a,a):a()}})}function k(t,n,l){var a=p;return function(r,i){if(a===m)throw Error("Generator is already running");if(a===v){if("throw"===r)throw i;return{value:e,done:!0}}for(l.method=r,l.arg=i;;){var o=l.delegate;if(o){var s=E(o,l);if(s){if(s===h)continue;return s}}if("next"===l.method)l.sent=l._sent=l.arg;else if("throw"===l.method){if(a===p)throw a=v,l.arg;l.dispatchException(l.arg)}else"return"===l.method&&l.abrupt("return",l.arg);a=m;var u=c(t,n,l);if("normal"===u.type){if(a=l.done?v:f,u.arg===h)continue;return{value:u.arg,done:l.done}}"throw"===u.type&&(a=v,l.method="throw",l.arg=u.arg)}}}function E(t,n){var l=n.method,a=t.iterator[l];if(a===e)return n.delegate=null,"throw"===l&&t.iterator.return&&(n.method="return",n.arg=e,E(t,n),"throw"===n.method)||"return"!==l&&(n.method="throw",n.arg=new TypeError("The iterator does not provide a '"+l+"' method")),h;var r=c(a,t.iterator,n.arg);if("throw"===r.type)return n.method="throw",n.arg=r.arg,n.delegate=null,h;var i=r.arg;return i?i.done?(n[t.resultName]=i.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,h):i:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,h)}function T(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function O(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function A(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(T,this),this.reset(!0)}function P(t){if(t||""===t){var n=t[i];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var a=-1,r=function n(){for(;++a<t.length;)if(l.call(t,a))return n.value=t[a],n.done=!1,n;return n.value=e,n.done=!0,n};return r.next=r}}throw new TypeError(typeof t+" is not iterable")}return y.prototype=I,a(C,"constructor",{value:I,configurable:!0}),a(I,"constructor",{value:y,configurable:!0}),y.displayName=u(I,s,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===y||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,I):(e.__proto__=I,u(e,s,"GeneratorFunction")),e.prototype=Object.create(C),e},t.awrap=function(e){return{__await:e}},_(S.prototype),u(S.prototype,o,(function(){return this})),t.AsyncIterator=S,t.async=function(e,n,l,a,r){void 0===r&&(r=Promise);var i=new S(d(e,n,l,a),r);return t.isGeneratorFunction(n)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},_(C),u(C,s,"Generator"),u(C,i,(function(){return this})),u(C,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),n=[];for(var l in t)n.push(l);return n.reverse(),function e(){for(;n.length;){var l=n.pop();if(l in t)return e.value=l,e.done=!1,e}return e.done=!0,e}},t.values=P,A.prototype={constructor:A,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(O),!t)for(var n in this)"t"===n.charAt(0)&&l.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var n=this;function a(l,a){return o.type="throw",o.arg=t,n.next=l,a&&(n.method="next",n.arg=e),!!a}for(var r=this.tryEntries.length-1;r>=0;--r){var i=this.tryEntries[r],o=i.completion;if("root"===i.tryLoc)return a("end");if(i.tryLoc<=this.prev){var s=l.call(i,"catchLoc"),u=l.call(i,"finallyLoc");if(s&&u){if(this.prev<i.catchLoc)return a(i.catchLoc,!0);if(this.prev<i.finallyLoc)return a(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return a(i.catchLoc,!0)}else{if(!u)throw Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return a(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var a=this.tryEntries[n];if(a.tryLoc<=this.prev&&l.call(a,"finallyLoc")&&this.prev<a.finallyLoc){var r=a;break}}r&&("break"===e||"continue"===e)&&r.tryLoc<=t&&t<=r.finallyLoc&&(r=null);var i=r?r.completion:{};return i.type=e,i.arg=t,r?(this.method="next",this.next=r.finallyLoc,h):this.complete(i)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),h},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),O(n),h}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var l=n.completion;if("throw"===l.type){var a=l.arg;O(n)}return a}}throw Error("illegal catch attempt")},delegateYield:function(t,n,l){return this.delegate={iterator:P(t),resultName:n,nextLoc:l},"next"===this.method&&(this.arg=e),h}},t}var h=["ariaLabelChosenSingular","ariaLabelSelectedItem","getItemProps","getMenuProps","isOpen","highlightedIndex","listItems","floatingStyles","setListRef","loading","loadingText","noMatchesText","selectAllCheckboxState","selectAllItem","selectedItems"],b=function(e){var n,a=e.ariaLabelChosenSingular,i=void 0===a?"valgt":a,s=e.ariaLabelSelectedItem,u=void 0===s?", valgt element, trykk for å fjerne":s,d=e.getItemProps,c=e.getMenuProps,p=e.isOpen,f=e.highlightedIndex,g=e.listItems,b=e.floatingStyles,y=e.setListRef,I=e.loading,x=void 0!==I&&I,w=e.loadingText,L=void 0===w?"Laster inn …":w,C=e.noMatchesText,_=void 0===C?"Ingen treff for søket":C,S=e.selectAllCheckboxState,k=e.selectAllItem,E=e.selectedItems,T=v(e,h),O=void 0!==k,A=!x&&(0===g.length||1===(null==g?void 0:g.length)&&(null==g||null==(n=g[0])?void 0:n.value)===(null==k?void 0:k.value)),P=function(e){return E.some((function(t){return(null==t?void 0:t.value)===(null==e?void 0:e.value)&&(null==t?void 0:t.label)===(null==e?void 0:e.label)}))},N=function(){switch(null==S?void 0:S()){case"indeterminate":return{label:(null==k?void 0:k.label)+", delvis valgt",selected:!1};case!0:return{label:(null==k?void 0:k.label)+", "+i,selected:!0};default:return{label:""+(null==k?void 0:k.label),selected:!1}}},V=function(e){return"function"==typeof e||"object"==typeof e&&null!==e&&"$$typeof"in e&&"symbol"==typeof e.$$typeof};return t.createElement("ul",m({},c({"aria-multiselectable":O,ref:y,className:"eds-dropdown__list",style:m({},b,{display:p?void 0:"none"},T.style)})),p?x?t.createElement("li",{key:"dropdown-list-loading",className:"eds-dropdown__list__item"},L):A?t.createElement("li",{key:"dropdown-list-no-match",className:"eds-dropdown__list__item"},_):g.map((function(e,n){var a,i,s,c,p=null!=(a=e.itemKey)?a:(null!=(i=e.label)?i:"")+"-"+(null!=(s=e.value)?s:"")+"-"+(null!=(c=e.icons)?c:[]).map((function(e){var t,n;return null!=(t=null!=(n=null==e?void 0:e.displayName)?n:null==e?void 0:e.name)?t:"unknown"})).join("-"),v=e.value===(null==k?void 0:k.value);return v&&g.length<=2?null:t.createElement("li",m({className:l("eds-dropdown__list__item",{"eds-dropdown__list__item--select-all":v,"eds-dropdown__list__item--highlighted":f===n,"eds-dropdown__list__item--selected":!O&&P(e)}),key:p},d({item:e,index:n,"aria-selected":v?N().selected:P(e)})),v?t.createElement(t.Fragment,null,t.createElement(r.Checkbox,{"aria-hidden":"true",checked:null==S?void 0:S(),className:"eds-dropdown__list__item__checkbox",tabIndex:-1,readOnly:!0}),t.createElement("span",{className:"eds-dropdown__list__item__text","aria-label":N().label},null==k?void 0:k.label)):function(e){return t.createElement(t.Fragment,null,O&&t.createElement(r.Checkbox,{"aria-hidden":"true",checked:P(e),className:"eds-dropdown__list__item__checkbox",tabIndex:-1,readOnly:!0}),t.createElement("span",{className:"eds-dropdown__list__item__text"},e.label,t.createElement(o.VisuallyHidden,null,P(e)?u:"")),Array.isArray(e.icons)?e.icons.filter(V).map((function(e,n){var l,a,r=(null!=(l=null!=(a=e.displayName)?a:e.name)?l:e.name)+"-"+n;return t.createElement(e,{key:r,inline:!0,className:"eds-dropdown__list__item__icon"})})):null)}(e))})):null)},y=["tabIndex"],I=["ariaLabelCloseList","ariaLabelOpenList","clearable","labelClearSelected","focusable","disabled","isOpen","loading","loadingText","onClear","itemIsSelected"],x=function(e){var n,a=e.ariaLabelRemoveSelected,r=e.ariaLabelChosen,i=void 0===r?"valgt":r,o=e.disabled,s=e.getSelectedItemProps,d=e.readOnly,c=e.removeSelectedItem,p=e.selectedItem,f=v(null!=(n=null==s?void 0:s({selectedItem:p,index:e.index}))?n:{},y);return t.createElement(u.TagChip,m({size:"small",className:l("eds-dropdown__selected-item-tag",{"eds-dropdown__selected-item-tag--readonly":d,"eds-dropdown__selected-item-tag--disabled":o})},f,{onClose:function(e){e.stopPropagation(),c(p)},onClick:function(e){return e.stopPropagation()},closeButtonAriaLabel:p.label+" "+i+", "+a+" ",key:p.value,"aria-live":"polite"}),t.createElement("span",{"aria-hidden":"true",className:"eds-dropdown__selected-item-tag__text"},p.label))},w=t.forwardRef((function(e,n){var a=e.ariaLabelCloseList,r=e.ariaLabelOpenList,i=e.clearable,o=void 0!==i&&i,u=e.labelClearSelected,p=e.focusable,f=void 0!==p&&p,g=e.disabled,h=e.isOpen,b=e.loading,y=void 0!==b&&b,x=e.loadingText,w=e.onClear,C=e.itemIsSelected,_=v(e,I);return t.createElement(t.Fragment,null,!g&&t.createElement("div",{className:"eds-dropdown__appendix"},o&&C&&t.createElement(L,{onClear:w,focusable:!0,labelClearSelectedItems:u}),t.createElement(s.IconButton,m({className:l("eds-dropdown__appendix__toggle-button",{"eds-dropdown__appendix__toggle-button--open":h}),ref:n,"aria-label":y?x:h?a:r},_,{type:"button",tabIndex:f?0:-1}),t.createElement(y?c.LoadingDots:d.DownArrowIcon,{"aria-hidden":"true"}))))})),L=function(e){var n=e.onClear,l=e.labelClearSelectedItems,a=void 0===l?"Fjern valgte":l,r=e.focusable;return t.createElement(t.Fragment,null,t.createElement(p.Tooltip,{"aria-hidden":"true",placement:"top",content:a,className:"eds-dropdown__appendix__clear-button__tooltip"},t.createElement(s.IconButton,{className:"eds-dropdown__appendix__clear-button",type:"button",tabIndex:void 0!==r&&r?0:-1,onClick:function(e){e.stopPropagation(),n()},onKeyDown:function(e){"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),e.stopPropagation(),n())},"aria-label":a},t.createElement(d.CloseSmallIcon,{"aria-hidden":"true"}))),t.createElement("div",{className:"eds-dropdown__appendix__divider"}))},C=function(n,l){void 0===l&&(l=250);var a="function"==typeof n,r=t.useState(a?[]:n),i=r[0],o=r[1],s=t.useState(!1),u=s[0],d=s[1],c=t.useRef(new AbortController),p=t.useMemo((function(){return a?n:function(){return Promise.resolve(n)}}),[n,a]),v=function(){var e,t=(e=g().mark((function e(t){var n,l,a,r;return g().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return null!=c&&c.current&&(null==c||null==(n=c.current)||n.abort()),l=new AbortController,c.current=l,d(!0),e.prev=4,e.next=7,p(null!=t?t:"",c);case 7:if(r=e.sent,null==c||null==(a=c.current)||null==(a=a.signal)||!a.aborted){e.next=11;break}return console.warn("Avbryt den asynkrone funksjonen din med signalet fra AbortController-en for å for å unngå minnelekkasje.",'Funksjonen bør kaste en DOMException med navnet "AbortError" når den avbrytes.',"","\n\nSe eksempel her: https://linje.entur.no/komponenter/skjemaelementer/dropdown#s%C3%B8kbar-dropdown-med-valg-fra-nettverkskall-bassert-p%C3%A5-tekstinput","\nLes mer om AbortController her: https://developer.mozilla.org/en-US/docs/Web/API/AbortController"),e.abrupt("return");case 11:d(!1),o(r),e.next=21;break;case 15:if(e.prev=15,e.t0=e.catch(4),!e.t0||"object"!=typeof e.t0||!("name"in e.t0)||"AbortError"!==e.t0.name){e.next=19;break}return e.abrupt("return");case 19:throw console.warn("The following error was received but not handled inside Entur Designsystems useResolvedItems hook:"),e.t0;case 21:case"end":return e.stop()}}),e,null,[[4,15]])})),function(){var t=this,n=arguments;return new Promise((function(l,a){var r=e.apply(t,n);function i(e){f(r,l,a,i,o,"next",e)}function o(e){f(r,l,a,i,o,"throw",e)}i(void 0)}))});return function(e){return t.apply(this,arguments)}}(),h=e.useDebounce(v,l),b=function(e){return t.useMemo((function(){return e.map((function(e){return"string"==typeof e?{value:e,label:e}:m({},e,void 0===(null==e?void 0:e.value)?{value:e.label}:{value:e.value})}))}),[e])}(i);return t.useEffect((function(){return function(){var e;return null==c||null==(e=c.current)?void 0:e.abort("Component unmounted")}}),[]),t.useEffect((function(){a&&h("")}),[a,p]),{items:b,loading:!!a&&u,fetchItems:h}},_="";function S(e,t){if(!t)return!0;var n=t.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&");return new RegExp(n,"i").test(e.label)}function k(e,t){return!0}var E=function(e){return e?e.label:""},T=function(e){return(null==e?void 0:e.label)+(null==e?void 0:e.value)},O=function(e){return"function"==typeof e&&e.length>0},A=function(e,t,n){return void 0===t&&(t=1),void 0===n&&(n=10),Math.min(Math.max(e,t),n)};function P(e){var t=e.selectAllItemIncluded,n=e.resultCount;if(!e.isOpen)return"";var l=void 0!==t&&t?n-1:n;return 0===l?"Ingen resultater":l+" resultat"+(1===l?"":"er")+" tilgjengelig, naviger med pil opp eller ned, velg elementer med Enter."}var N=["ariaLabelChosenSingular","ariaLabelCloseList","ariaLabelOpenList","ariaLabelSelectedItem","className","clearable","debounceTimeout","disabled","disableLabelAnimation","feedback","items","itemFilter","label","labelClearSelectedItem","labelTooltip","listStyle","loading","loadingText","noMatchesText","onChange","placeholder","prepend","readOnly","selectedItem","selectOnBlur","selectOnTab","style","variant"],V=t.forwardRef((function(o,s){var u,d,c,p=o.ariaLabelChosenSingular,f=o.ariaLabelCloseList,g=void 0===f?"Lukk liste med valg":f,h=o.ariaLabelOpenList,y=void 0===h?"Åpne liste med valg":h,I=o.ariaLabelSelectedItem,x=o.className,L=o.clearable,T=void 0===L||L,V=o.debounceTimeout,j=o.disabled,F=void 0!==j&&j,M=o.disableLabelAnimation,R=void 0!==M&&M,B=o.feedback,D=o.items,q=o.itemFilter,H=void 0===q?O(D)?k:S:q,K=o.label,G=o.labelClearSelectedItem,U=void 0===G?"fjern valgt":G,$=o.labelTooltip,z=o.listStyle,J=o.loading,W=o.loadingText,Y=void 0===W?"Laster resultater …":W,Q=o.noMatchesText,X=void 0===Q?"Ingen tilgjengelige valg …":Q,Z=o.onChange,ee=void 0===Z?function(){}:Z,te=o.placeholder,ne=o.prepend,le=o.readOnly,ae=void 0!==le&&le,re=o.selectedItem,ie=o.selectOnBlur,oe=void 0!==ie&&ie,se=o.selectOnTab,ue=void 0!==se&&se,de=o.style,ce=o.variant,pe=void 0===ce?"info":ce,fe=v(o,N),me=t.useState(null!==re),ve=me[0],ge=me[1],he=t.useState(0),be=he[0],ye=he[1],Ie=t.useRef(null),xe=C(D,V),we=xe.items,Le=xe.loading,Ce=xe.fetchItems,_e=t.useState(we),Se=_e[0],ke=_e[1],Ee=function(e){var t=e.inputValue;return ke(we.filter((function(e){return H(e,t)})))},Te=function(e){var t=e.inputValue;O(D)&&Ce(null!=t?t:_),Ee({inputValue:null!=t?t:_})},Oe=function(e){var t=e.changes;return Te({inputValue:_}),m({},t,{inputValue:_})},Ae="undefined"!=typeof document&&(null==Ie?void 0:Ie.current)===(null==(u=document)?void 0:u.activeElement);t.useEffect((function(){Ee({inputValue:Ke})}),[we]),t.useEffect((function(){null===He||Ae||(ge(!0),Te({inputValue:_}),Ge(_))}),[]);var Pe=t.useCallback((function(e,t){var l=t.type,a=t.changes;switch(void 0!==a.highlightedIndex&&(null==a?void 0:a.highlightedIndex)>=0&&ye(null==a?void 0:a.highlightedIndex),l){case n.useCombobox.stateChangeTypes.ItemClick:case n.useCombobox.stateChangeTypes.InputKeyDownEnter:case n.useCombobox.stateChangeTypes.InputBlur:return Oe({changes:a});case n.useCombobox.stateChangeTypes.ControlledPropUpdatedSelectedItem:return null===a.selectedItem||Ae||ge(!0),Oe({changes:a});case n.useCombobox.stateChangeTypes.InputChange:var r,i=/^\s+/g,o=" "===a.inputValue;if(o||ye(0),null!=(r=a.inputValue)&&r.match(i)){var s=a.inputValue.replace(i,_);if(o){if(!e.isOpen)return m({},a,{inputValue:s,isOpen:!0});if(void 0!==a.highlightedIndex)return m({},a,{inputValue:s,selectedItem:Se[a.highlightedIndex]})}}return m({},a,{highlightedIndex:0});default:return a}}),[Ce,Ee,Ae,Oe]),Ne=n.useCombobox({defaultHighlightedIndex:be,items:Se,itemToString:E,selectedItem:re,stateReducer:Pe,onInputValueChange:function(e){Te({inputValue:e.inputValue})},onStateChange:function(e){var t=e.selectedItem;void 0!==t&&ee(t)},getA11yStatusMessage:function(e){return P(m({},e,{resultCount:Se.length}))}}),Ve=Ne.closeMenu,je=Ne.isOpen,Fe=Ne.getToggleButtonProps,Me=Ne.getLabelProps,Re=Ne.getMenuProps,Be=Ne.getInputProps,De=Ne.highlightedIndex,qe=Ne.getItemProps,He=Ne.selectedItem,Ke=Ne.inputValue,Ge=Ne.setInputValue,Ue=a.useFloating({open:je,placement:"bottom-start",middleware:[a.offset(i.space.extraSmall2),a.shift({padding:i.space.extraSmall}),a.size({apply:function(e){Object.assign(e.elements.floating.style,{width:e.rects.reference.width+"px",maxHeight:A(160,e.availableHeight,320)+"px"})}}),a.flip({fallbackStrategy:"initialPlacement"})]}),$e=Ue.refs,ze=Ue.floatingStyles,Je=Ue.update;return t.useEffect((function(){if(je&&$e.reference.current&&$e.floating.current)return a.autoUpdate($e.reference.current,$e.floating.current,Je)}),[je,$e.reference,$e.floating,Je]),t.createElement(r.BaseFormControl,m({className:l("eds-dropdown","eds-dropdown--searchable",x,{"eds-dropdown--has-tooltip":void 0!==$}),disabled:F,disableLabelAnimation:R,feedback:B,isFilled:null!==He||Ke!==_,label:K,labelId:Me().id,labelProps:Me(),labelTooltip:$,onBlur:function(){return Ge("")},onClick:function(e){var t;e.target===e.currentTarget&&(null==(t=Be())||null==t.onClick||t.onClick(e))},prepend:ne,readOnly:ae,ref:$e.setReference,style:de,tabIndex:F||ae?-1:void 0,variant:pe,after:t.createElement(b,{ariaLabelChosenSingular:p,ariaLabelSelectedItem:I,floatingStyles:ze,getItemProps:qe,getMenuProps:Re,highlightedIndex:De,isOpen:je,listItems:Se,style:z,setListRef:$e.setFloating,loading:null!=J?J:Le,loadingText:Y,noMatchesText:X,selectedItems:null!==He?[He]:[]})},fe,{append:void 0}),t.createElement("span",{className:l("eds-dropdown--searchable__selected-item",{"eds-dropdown--searchable__selected-item--hidden":!ve}),"aria-hidden":"true",onClick:null==(d=Be())?void 0:d.onClick},ve?null==He?void 0:He.label:""),t.createElement("input",m({className:l("eds-dropdown__input eds-form-control",{"eds-dropdown__input--hidden":ve})},Be({onKeyDown:function(e){if(je&&"Tab"===e.key){var t=Se[De];(ue||oe)&&t&&t!==He&&(null==ee||ee(t)),Ve(),e.preventDefault()}},onBlur:function(){null!==He&&ge(!0)},onFocus:function(){ge(!1)},disabled:F,readOnly:ae,placeholder:null!=(c=null==He?void 0:He.label)?c:te,tabIndex:F||ae?-1:void 0,ref:e.mergeRefs(Ie,s)}))),t.createElement(w,m({},Fe({"aria-busy":(null!=J?J:Le)?"true":void 0}),{ariaLabelCloseList:g,ariaLabelOpenList:y,clearable:T,disabled:F||ae,onClear:function(){var e;ee(null),Ge(_),null==(e=Ie.current)||e.focus(),Te({inputValue:Ke}),ge(!1)},focusable:!1,labelClearSelected:U,isOpen:je,itemIsSelected:null!==He,loadingText:Y,loading:null!=J?J:Le})))})),j=["className","clearable","clearInputOnSelect","debounceTimeout","disabled","disableLabelAnimation","feedback","hideSelectAll","items","itemFilter","label","labelAllItemsSelected","labelClearAllItems","labelSelectAll","labelTooltip","listStyle","loading","loadingText","maxChips","noMatchesText","onChange","placeholder","readOnly","selectedItems","selectOnBlur","selectOnTab","style","variant","ariaLabelChosenSingular","ariaLabelChosenPlural","ariaLabelCloseList","ariaLabelJumpToInput","ariaLabelOpenList","ariaLabelRemoveSelected","ariaLabelSelectedItem"],F=t.forwardRef((function(s,u){var d,c=s.className,p=s.clearable,f=void 0===p||p,g=s.clearInputOnSelect,h=void 0!==g&&g,y=s.debounceTimeout,I=s.disabled,L=void 0!==I&&I,N=s.disableLabelAnimation,V=s.feedback,F=s.hideSelectAll,M=void 0!==F&&F,R=s.items,B=s.itemFilter,D=void 0===B?O(R)?k:S:B,q=s.label,H=s.labelAllItemsSelected,K=void 0===H?"Alle valgt":H,G=s.labelClearAllItems,U=void 0===G?"Fjern valgte":G,$=s.labelSelectAll,z=void 0===$?"Velg alle":$,J=s.labelTooltip,W=s.listStyle,Y=s.loading,Q=s.loadingText,X=void 0===Q?"Laster resultater …":Q,Z=s.maxChips,ee=void 0===Z?10:Z,te=s.noMatchesText,ne=s.onChange,le=void 0===ne?function(){}:ne,ae=s.placeholder,re=s.readOnly,ie=void 0!==re&&re,oe=s.selectedItems,se=void 0===oe?[]:oe,ue=s.selectOnTab,de=void 0!==ue&&ue,ce=s.style,pe=s.variant,fe=void 0===pe?"information":pe,me=s.ariaLabelChosenSingular,ve=s.ariaLabelChosenPlural,ge=void 0===ve?"valgte":ve,he=s.ariaLabelCloseList,be=void 0===he?"Lukk liste med valg":he,ye=s.ariaLabelJumpToInput,Ie=void 0===ye?se.length+" valgte elementer, trykk for å hoppe til tekstfeltet":ye,xe=s.ariaLabelOpenList,we=void 0===xe?"Åpne liste med valg":xe,Le=s.ariaLabelRemoveSelected,Ce=void 0===Le?"trykk for å fjerne valg":Le,_e=s.ariaLabelSelectedItem,Se=v(s,j),ke=t.useState(0),Ee=ke[0],Te=ke[1],Oe=t.useRef(null);t.useEffect((function(){void 0!==Se.selectedItem&&console.warn("Incorrect 'selectedItem' prop found, did you mean to use 'selectedItems?")}),[Se.selectedItem]);var Ae=C(R,y),Pe=Ae.items,Ne=Ae.loading,Ve=Ae.fetchItems,je="function"!=typeof R&&se.length===Pe.length,Fe={value:e.useRandomId("select-all"),label:z},Me=t.useMemo((function(){return{value:_,label:je?K:se.length+" "+ge}}),[je,se,K,ge]),Re=t.useState([].concat(M?[]:[Fe],Pe)),Be=Re[0],De=Re[1],qe=function(e){var t=e.inputValue;return De([].concat(M?[]:[Fe],Pe.filter((function(e){return D(e,t)}))))},He=function(e){var t=e.inputValue;O(R)&&Ve(null!=t?t:_),qe({inputValue:null!=t?t:_})};t.useEffect((function(){qe({inputValue:rt})}),[Pe]);var Ke=function(e){var t=e.selectedItems,n=e.selectAll,l=t.length>0,a=e.listItems.filter((function(e){return e.value!==n.value})),r=a.filter((function(e){return!t.some((function(t){return t.value===e.value}))})),i=!a.some((function(e){return!t.some((function(t){return t.value===e.value}))})),o=a.some((function(e){return t.some((function(t){return t.value===e.value}))})),s=function(e,n){return n([].concat(t,[e]))},u=function(e){return t.some((function(t){return t.value===e.value}))},d=function(e){return e.value===n.value},c=function(e,n){return n(t.filter((function(t){return t.value!==e.value})))},p=function(e){e([].concat(t,r))},f=function(e){e(t.filter((function(e){return!a.some((function(t){return t.value===e.value}))})))};return{addClickedItemToSelectedItems:s,allListItemsAreSelected:i,clickedItemIsInSelectedItems:u,clickedItemIsSelectAll:d,handleListItemClicked:function(e){var t=e.clickedItem,n=e.onChange;return d(t)?i?f(n):p(n):u(t)?c(t,n):void s(t,n)},hasSelectedItems:l,listItemsWithoutSelectAll:a,removeClickedItemFromSelectedItems:c,selectAllCheckboxState:function(){return!!i||!!o&&"indeterminate"},selectAllUnselectedItemsInListItems:p,someListItemsAreSelected:o,unselectAllListItems:f}}({listItems:Be,selectAll:Fe,selectedItems:se}),Ge=Ke.hasSelectedItems,Ue=Ke.handleListItemClicked,$e=Ke.selectAllCheckboxState,ze=n.useMultipleSelection({selectedItems:se,itemToString:E,itemToKey:T,onStateChange:function(e){var t=e.selectedItems;void 0!==t&&le(t)}}),Je=ze.getSelectedItemProps,We=ze.getDropdownProps,Ye=t.useCallback((function(e,t){var l,a=t.changes,r=t.type;switch(void 0!==a.highlightedIndex&&(null==a?void 0:a.highlightedIndex)>=0&&Te(null==a?void 0:a.highlightedIndex),r){case n.useCombobox.stateChangeTypes.InputBlur:return e.isOpen&&(null==(l=Oe.current)||l.focus()),m({},a,{inputValue:_});case n.useCombobox.stateChangeTypes.InputKeyDownEnter:case n.useCombobox.stateChangeTypes.ItemClick:var i,o;return m({},a,{isOpen:!0,inputValue:h?_:null!=(i=null==Oe||null==(o=Oe.current)?void 0:o.value)?i:_});case n.useCombobox.stateChangeTypes.ControlledPropUpdatedSelectedItem:var s,u;return m({},a,{inputValue:null!=(s=null==Oe||null==(u=Oe.current)?void 0:u.value)?s:_});case n.useCombobox.stateChangeTypes.InputChange:var d,c=/^\s+/g,p=" "===a.inputValue;if(null!=(d=a.inputValue)&&d.match(c)){var f=a.inputValue.replace(c,_);if(p){if(!e.isOpen)return m({},a,{inputValue:f,isOpen:!0});if(void 0!==a.highlightedIndex)return m({},a,{inputValue:f,selectedItem:Be[a.highlightedIndex]})}}return a;default:return a}}),[M,Pe,qe,R]),Qe=n.useCombobox(m({defaultHighlightedIndex:Ee,items:Be,itemToString:E,selectedItem:null,stateReducer:Ye,onInputValueChange:function(e){He({inputValue:e.inputValue}),at(M?0:1),Te(M?0:1)},onStateChange:function(e){var t=e.selectedItem;t&&Ue({clickedItem:t,onChange:le})},getA11yStatusMessage:function(e){return P(m({},e,{selectAllItemIncluded:!M,resultCount:Be.length}))}},Se)),Xe=Qe.getInputProps,Ze=Qe.getItemProps,et=Qe.getLabelProps,tt=Qe.getMenuProps,nt=Qe.getToggleButtonProps,lt=Qe.highlightedIndex,at=Qe.setHighlightedIndex,rt=Qe.inputValue,it=Qe.isOpen,ot=Qe.setInputValue,st=a.useFloating({open:it,placement:"bottom-start",middleware:[a.offset(i.space.extraSmall2),a.shift({padding:i.space.extraSmall}),a.size({apply:function(e){Object.assign(e.elements.floating.style,{width:e.rects.reference.width+"px",maxHeight:A(160,e.availableHeight,320)+"px"})}}),a.flip({fallbackStrategy:"initialPlacement"})]}),ut=st.refs,dt=st.floatingStyles,ct=st.update;t.useEffect((function(){if(it&&ut.reference.current&&ut.floating.current)return a.autoUpdate(ut.reference.current,ut.floating.current,ct)}),[it,ut.reference,ut.floating,ct]);var pt=function(){var e;le([]),ot(_),null==(e=Oe.current)||e.focus(),He({inputValue:rt})};return t.createElement(r.BaseFormControl,m({className:l("eds-dropdown","eds-dropdown--multiselect",c,{"eds-dropdown--has-tooltip":void 0!==J}),disabled:L,disableLabelAnimation:N,feedback:V,isFilled:Ge||rt!==_,label:q,labelId:et().id,labelProps:et(),labelTooltip:J,onBlur:function(){return ot("")},onClick:function(e){var t;e.target===e.currentTarget&&(null==(t=Xe())||null==t.onClick||t.onClick(e))},readOnly:ie,ref:ut.setReference,style:ce,variant:fe,after:t.createElement(b,{ariaLabelChosenSingular:me,ariaLabelSelectedItem:_e,floatingStyles:dt,getItemProps:Ze,getMenuProps:tt,highlightedIndex:lt,isOpen:it,listItems:Be,style:W,setListRef:ut.setFloating,loading:null!=Y?Y:Ne,loadingText:X,noMatchesText:te,selectAllCheckboxState:$e,selectAllItem:Fe,selectedItems:se})},Se),t.createElement("div",{className:l("eds-dropdown--multiselect__selected-items-and-input",{"eds-dropdown--multiselect__selected-items-and-input--filled":Ge})},se.length>1?t.createElement(o.VisuallyHidden,{onClick:null==(d=Oe.current)?void 0:d.focus},Ie):null,se.length<=ee?se.map((function(e,n){return t.createElement(x,{ariaLabelChosen:me,ariaLabelRemoveSelected:Ce,disabled:L,getSelectedItemProps:Je,index:n,key:(null==e?void 0:e.label)+("string"==typeof(null==e?void 0:e.value)?e.value:""),readOnly:ie,removeSelectedItem:function(){var t;Ue({clickedItem:e,onChange:le}),null==Oe||null==(t=Oe.current)||t.focus()},selectedItem:e})})):t.createElement(x,{ariaLabelRemoveSelected:U,ariaLabelChosen:"",disabled:L,readOnly:ie,removeSelectedItem:pt,selectedItem:Me}),t.createElement("input",m({},Xe(m({onKeyDown:function(e){if(de&&it&&"Tab"===e.key){var t=Be[lt];t&&Ue({clickedItem:t,onChange:le})}}},We({preventKeyAction:it,value:null!=rt?rt:_,ref:e.mergeRefs(Oe,u)}),{className:"eds-dropdown__input eds-form-control",disabled:ie||L,placeholder:ae,tabIndex:L||ie?-1:void 0}))))),t.createElement(w,m({},nt({"aria-busy":(null!=Y?Y:Ne)?"true":void 0}),{ariaLabelCloseList:be,ariaLabelOpenList:we,clearable:f,disabled:L||ie,onClear:pt,focusable:!1,labelClearSelected:U,isOpen:it,itemIsSelected:se.length>0,loadingText:X,loading:null!=Y?Y:Ne})))})),M=["ariaLabelChosenSingular","ariaLabelCloseList","ariaLabelOpenList","ariaLabelSelectedItem","className","clearable","disabled","disableLabelAnimation","feedback","items","label","labelClearSelectedItem","labelTooltip","listStyle","loading","loadingText","noMatchesText","onChange","placeholder","prepend","readOnly","selectedItem","selectOnBlur","selectOnTab","style","variant"],R=t.forwardRef((function(o,s){var u,d,c=o.ariaLabelChosenSingular,p=o.ariaLabelCloseList,f=void 0===p?"Lukk liste med valg":p,g=o.ariaLabelOpenList,h=void 0===g?"Åpne liste med valg":g,y=o.ariaLabelSelectedItem,I=o.className,x=o.clearable,L=void 0!==x&&x,_=o.disabled,S=void 0!==_&&_,k=o.disableLabelAnimation,T=o.feedback,O=o.items,P=o.label,N=o.labelClearSelectedItem,V=void 0===N?"fjern valgt":N,j=o.labelTooltip,F=o.listStyle,R=o.loading,B=o.loadingText,D=void 0===B?"Laster resultater …":B,q=o.noMatchesText,H=void 0===q?"Ingen tilgjengelige valg …":q,K=o.onChange,G=o.placeholder,U=o.prepend,$=o.readOnly,z=void 0!==$&&$,J=o.selectedItem,W=o.selectOnBlur,Y=void 0!==W&&W,Q=o.selectOnTab,X=void 0!==Q&&Q,Z=o.style,ee=o.variant,te=void 0===ee?"information":ee,ne=v(o,M),le=C(O),ae=le.items,re=le.loading,ie=null!==J||void 0!==G,oe=n.useSelect({items:ae,defaultHighlightedIndex:J?void 0:0,selectedItem:J,stateReducer:function(e,t){var l=t.changes,a="undefined"!=typeof document&&document.activeElement===he.reference.current;switch(t.type){case n.useSelect.stateChangeTypes.ToggleButtonKeyDownArrowDown:case n.useSelect.stateChangeTypes.ToggleButtonKeyDownArrowUp:if(!a)return m({},l,{isOpen:!1})}return l},onStateChange:function(e){var t=e.selectedItem;(e.type!==n.useSelect.stateChangeTypes.ToggleButtonBlur||Y)&&void 0!==t&&(null==K||K(null!=t?t:null))},itemToString:E}),se=oe.closeMenu,ue=oe.isOpen,de=oe.getItemProps,ce=oe.getLabelProps,pe=oe.getMenuProps,fe=oe.getToggleButtonProps,me=oe.highlightedIndex,ve=oe.reset,ge=a.useFloating({open:ue,placement:"bottom-start",middleware:[a.offset(i.space.extraSmall2),a.shift({padding:i.space.extraSmall}),a.size({apply:function(e){Object.assign(e.elements.floating.style,{width:e.rects.reference.width+"px",maxHeight:A(160,e.availableHeight,320)+"px"})}}),a.flip({fallbackStrategy:"initialPlacement"})]}),he=ge.refs,be=ge.floatingStyles,ye=ge.update;return t.useEffect((function(){if(ue&&he.reference.current&&he.floating.current)return a.autoUpdate(he.reference.current,he.floating.current,ye)}),[ue,he.reference,he.floating,ye]),t.createElement(r.BaseFormControl,m({className:l("eds-dropdown",I,{"eds-dropdown--has-tooltip":void 0!==j}),disableLabelAnimation:k,feedback:T,isFilled:ie,labelProps:ce(),labelTooltip:j,prepend:U,style:Z,variant:te},fe({ref:e.mergeRefs(s,he.setReference),"aria-disabled":S,"aria-label":S?"Disabled dropdown":"",disabled:S,readOnly:z,label:P,labelId:null==(u=ce())?void 0:u.id,children:void 0,tabIndex:S||z?-1:0,onKeyDown:function(e){if(ue&&"Tab"===e.key){var t=ae[me];(X||Y)&&t&&t!==J&&(null==K||K(t)),se(),e.preventDefault()}}}),{after:t.createElement(b,{ariaLabelChosenSingular:c,ariaLabelSelectedItem:y,floatingStyles:be,getItemProps:de,getMenuProps:pe,highlightedIndex:me,isOpen:ue,listItems:ae,noMatchesText:H,style:F,setListRef:he.setFloating,loading:null!=R?R:re,loadingText:D,selectedItems:null!==J?[J]:[]})},ne,{append:void 0}),t.createElement("div",{className:"eds-dropdown__selected-item"},null!=(d=null==J?void 0:J.label)?d:t.createElement("div",{className:l("eds-dropdown__selected-item__placeholder",{"eds-dropdown__selected-item__placeholder--readonly":z})},G)),t.createElement(w,{"aria-busy":(null!=R?R:re)?"true":void 0,"aria-expanded":ue,clearable:L,onClear:function(){var e;ve(),null==(e=he.reference.current)||e.focus()},disabled:S||z,focusable:!1,labelClearSelected:V,isOpen:ue,itemIsSelected:null!==J,ariaLabelCloseList:f,ariaLabelOpenList:h,loading:!1,loadingText:void 0}))})),B=["className","disabled","disableLabelAnimation","feedback","items","label","loadingText","onChange","prepend","readOnly","selectedItem","style","value","variant"],D=t.forwardRef((function(n,l){var a,i=n.className,o=n.disabled,s=void 0!==o&&o,u=n.disableLabelAnimation,d=n.feedback,c=n.items,p=n.label,f=n.loadingText,g=n.onChange,h=n.prepend,b=n.readOnly,y=void 0!==b&&b,I=n.selectedItem,x=n.style,w=n.value,L=n.variant,_=v(n,B),S=C(c),k=S.items,E=S.loading,T=e.useRandomId("eds-dropdown-native");return t.createElement(r.BaseFormControl,{disabled:s,readOnly:y,prepend:h,append:t.createElement(q,{hidden:s||y,loading:E,loadingText:f}),className:i,style:x,label:p,labelId:T,variant:L,feedback:d,disableLabelAnimation:u,isFilled:!0},t.createElement("select",m({"aria-invalid":"negative"===L||"error"===L,"aria-labelledby":T,"aria-busy":E,className:"eds-form-control eds-dropdown--native",disabled:s||y,onChange:function(e){var t;null==g||g({value:e.target.value,selectedItem:null!=(t=k.find((function(t){return t.value===e.target.value})))?t:null,target:e.target})},value:null!=(a=null!=w?w:null==I?void 0:I.value)?a:void 0,ref:l},_),k.map((function(e){return t.createElement("option",{key:e.value,value:e.value},e.label)}))))})),q=function(e){var n=e.hidden;return e.loading?t.createElement("div",{className:"eds-dropdown-native__loading-dots"},t.createElement(c.LoadingDots,{"aria-label":e.loadingText})):n?t.createElement(t.Fragment,null):t.createElement(d.DownArrowIcon,{inline:!0})};e.warnAboutMissingStyles("dropdown","form","a11y","chip"),exports.Dropdown=R,exports.MultiSelect=F,exports.NativeDropdown=D,exports.SearchableDropdown=V;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@entur/utils"),t=require("react"),n=require("downshift"),l=require("classnames"),a=require("@floating-ui/react-dom"),r=require("@entur/form"),i=require("@entur/tokens"),o=require("@entur/a11y"),s=require("@entur/button"),u=require("@entur/chip"),d=require("@entur/icons"),c=require("@entur/loader"),p=require("@entur/tooltip");function f(e,t,n,l,a,r,i){try{var o=e[r](i),s=o.value}catch(e){return void n(e)}o.done?t(s):Promise.resolve(s).then(l,a)}function m(){return m=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var l in n)({}).hasOwnProperty.call(n,l)&&(e[l]=n[l])}return e},m.apply(null,arguments)}function v(e,t){if(null==e)return{};var n={};for(var l in e)if({}.hasOwnProperty.call(e,l)){if(t.includes(l))continue;n[l]=e[l]}return n}function g(){g=function(){return t};var e,t={},n=Object.prototype,l=n.hasOwnProperty,a=Object.defineProperty||function(e,t,n){e[t]=n.value},r="function"==typeof Symbol?Symbol:{},i=r.iterator||"@@iterator",o=r.asyncIterator||"@@asyncIterator",s=r.toStringTag||"@@toStringTag";function u(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{u({},"")}catch(e){u=function(e,t,n){return e[t]=n}}function d(e,t,n,l){var r=Object.create((t&&t.prototype instanceof b?t:b).prototype),i=new A(l||[]);return a(r,"_invoke",{value:k(e,n,i)}),r}function c(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(e){return{type:"throw",arg:e}}}t.wrap=d;var p="suspendedStart",f="suspendedYield",m="executing",v="completed",h={};function b(){}function y(){}function I(){}var x={};u(x,i,(function(){return this}));var w=Object.getPrototypeOf,L=w&&w(w(P([])));L&&L!==n&&l.call(L,i)&&(x=L);var C=I.prototype=b.prototype=Object.create(x);function _(e){["next","throw","return"].forEach((function(t){u(e,t,(function(e){return this._invoke(t,e)}))}))}function S(e,t){function n(a,r,i,o){var s=c(e[a],e,r);if("throw"!==s.type){var u=s.arg,d=u.value;return d&&"object"==typeof d&&l.call(d,"__await")?t.resolve(d.__await).then((function(e){n("next",e,i,o)}),(function(e){n("throw",e,i,o)})):t.resolve(d).then((function(e){u.value=e,i(u)}),(function(e){return n("throw",e,i,o)}))}o(s.arg)}var r;a(this,"_invoke",{value:function(e,l){function a(){return new t((function(t,a){n(e,l,t,a)}))}return r=r?r.then(a,a):a()}})}function k(t,n,l){var a=p;return function(r,i){if(a===m)throw Error("Generator is already running");if(a===v){if("throw"===r)throw i;return{value:e,done:!0}}for(l.method=r,l.arg=i;;){var o=l.delegate;if(o){var s=E(o,l);if(s){if(s===h)continue;return s}}if("next"===l.method)l.sent=l._sent=l.arg;else if("throw"===l.method){if(a===p)throw a=v,l.arg;l.dispatchException(l.arg)}else"return"===l.method&&l.abrupt("return",l.arg);a=m;var u=c(t,n,l);if("normal"===u.type){if(a=l.done?v:f,u.arg===h)continue;return{value:u.arg,done:l.done}}"throw"===u.type&&(a=v,l.method="throw",l.arg=u.arg)}}}function E(t,n){var l=n.method,a=t.iterator[l];if(a===e)return n.delegate=null,"throw"===l&&t.iterator.return&&(n.method="return",n.arg=e,E(t,n),"throw"===n.method)||"return"!==l&&(n.method="throw",n.arg=new TypeError("The iterator does not provide a '"+l+"' method")),h;var r=c(a,t.iterator,n.arg);if("throw"===r.type)return n.method="throw",n.arg=r.arg,n.delegate=null,h;var i=r.arg;return i?i.done?(n[t.resultName]=i.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,h):i:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,h)}function O(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function T(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function A(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(O,this),this.reset(!0)}function P(t){if(t||""===t){var n=t[i];if(n)return n.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var a=-1,r=function n(){for(;++a<t.length;)if(l.call(t,a))return n.value=t[a],n.done=!1,n;return n.value=e,n.done=!0,n};return r.next=r}}throw new TypeError(typeof t+" is not iterable")}return y.prototype=I,a(C,"constructor",{value:I,configurable:!0}),a(I,"constructor",{value:y,configurable:!0}),y.displayName=u(I,s,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===y||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,I):(e.__proto__=I,u(e,s,"GeneratorFunction")),e.prototype=Object.create(C),e},t.awrap=function(e){return{__await:e}},_(S.prototype),u(S.prototype,o,(function(){return this})),t.AsyncIterator=S,t.async=function(e,n,l,a,r){void 0===r&&(r=Promise);var i=new S(d(e,n,l,a),r);return t.isGeneratorFunction(n)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},_(C),u(C,s,"Generator"),u(C,i,(function(){return this})),u(C,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),n=[];for(var l in t)n.push(l);return n.reverse(),function e(){for(;n.length;){var l=n.pop();if(l in t)return e.value=l,e.done=!1,e}return e.done=!0,e}},t.values=P,A.prototype={constructor:A,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(T),!t)for(var n in this)"t"===n.charAt(0)&&l.call(this,n)&&!isNaN(+n.slice(1))&&(this[n]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var n=this;function a(l,a){return o.type="throw",o.arg=t,n.next=l,a&&(n.method="next",n.arg=e),!!a}for(var r=this.tryEntries.length-1;r>=0;--r){var i=this.tryEntries[r],o=i.completion;if("root"===i.tryLoc)return a("end");if(i.tryLoc<=this.prev){var s=l.call(i,"catchLoc"),u=l.call(i,"finallyLoc");if(s&&u){if(this.prev<i.catchLoc)return a(i.catchLoc,!0);if(this.prev<i.finallyLoc)return a(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return a(i.catchLoc,!0)}else{if(!u)throw Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return a(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var a=this.tryEntries[n];if(a.tryLoc<=this.prev&&l.call(a,"finallyLoc")&&this.prev<a.finallyLoc){var r=a;break}}r&&("break"===e||"continue"===e)&&r.tryLoc<=t&&t<=r.finallyLoc&&(r=null);var i=r?r.completion:{};return i.type=e,i.arg=t,r?(this.method="next",this.next=r.finallyLoc,h):this.complete(i)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),h},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),T(n),h}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t];if(n.tryLoc===e){var l=n.completion;if("throw"===l.type){var a=l.arg;T(n)}return a}}throw Error("illegal catch attempt")},delegateYield:function(t,n,l){return this.delegate={iterator:P(t),resultName:n,nextLoc:l},"next"===this.method&&(this.arg=e),h}},t}var h=["ariaLabelChosenSingular","ariaLabelSelectedItem","getItemProps","getMenuProps","isOpen","highlightedIndex","listItems","floatingStyles","setListRef","loading","loadingText","noMatchesText","selectAllCheckboxState","selectAllItem","selectedItems","readOnly"],b=function(e){var n,a=e.ariaLabelChosenSingular,i=void 0===a?"valgt":a,s=e.ariaLabelSelectedItem,u=void 0===s?", valgt element, trykk for å fjerne":s,d=e.getItemProps,c=e.getMenuProps,p=e.isOpen,f=e.highlightedIndex,g=e.listItems,b=e.floatingStyles,y=e.setListRef,I=e.loading,x=void 0!==I&&I,w=e.loadingText,L=void 0===w?"Laster inn …":w,C=e.noMatchesText,_=void 0===C?"Ingen treff for søket":C,S=e.selectAllCheckboxState,k=e.selectAllItem,E=e.selectedItems,O=e.readOnly,T=void 0!==O&&O,A=v(e,h),P=void 0!==k,N=!x&&(0===g.length||1===(null==g?void 0:g.length)&&(null==g||null==(n=g[0])?void 0:n.value)===(null==k?void 0:k.value)),V=function(e){return E.some((function(t){return(null==t?void 0:t.value)===(null==e?void 0:e.value)&&(null==t?void 0:t.label)===(null==e?void 0:e.label)}))},j=function(){switch(null==S?void 0:S()){case"indeterminate":return{label:(null==k?void 0:k.label)+", delvis valgt",selected:!1};case!0:return{label:(null==k?void 0:k.label)+", "+i,selected:!0};default:return{label:""+(null==k?void 0:k.label),selected:!1}}},F=function(e){return"function"==typeof e||"object"==typeof e&&null!==e&&"$$typeof"in e&&"symbol"==typeof e.$$typeof};return t.createElement("ul",m({},c({"aria-multiselectable":P,ref:y,className:"eds-dropdown__list",style:m({},b,{display:p&&!T?void 0:"none"},A.style)})),!p||T?null:x?t.createElement("li",{key:"dropdown-list-loading",className:"eds-dropdown__list__item"},L):N?t.createElement("li",{key:"dropdown-list-no-match",className:"eds-dropdown__list__item"},_):g.map((function(e,n){var a,i,s,c,p=null!=(a=e.itemKey)?a:(null!=(i=e.label)?i:"")+"-"+(null!=(s=e.value)?s:"")+"-"+(null!=(c=e.icons)?c:[]).map((function(e){var t,n;return null!=(t=null!=(n=null==e?void 0:e.displayName)?n:null==e?void 0:e.name)?t:"unknown"})).join("-"),v=e.value===(null==k?void 0:k.value);return v&&g.length<=2?null:t.createElement("li",m({className:l("eds-dropdown__list__item",{"eds-dropdown__list__item--select-all":v,"eds-dropdown__list__item--highlighted":f===n,"eds-dropdown__list__item--selected":!P&&V(e)}),key:p},d({item:e,index:n,"aria-selected":v?j().selected:V(e)})),v?t.createElement(t.Fragment,null,t.createElement(r.Checkbox,{"aria-hidden":"true",checked:null==S?void 0:S(),className:"eds-dropdown__list__item__checkbox",tabIndex:-1,readOnly:!0}),t.createElement("span",{className:"eds-dropdown__list__item__text","aria-label":j().label},null==k?void 0:k.label)):function(e){return t.createElement(t.Fragment,null,P&&t.createElement(r.Checkbox,{"aria-hidden":"true",checked:V(e),className:"eds-dropdown__list__item__checkbox",tabIndex:-1,readOnly:!0}),t.createElement("span",{className:"eds-dropdown__list__item__text"},e.label,t.createElement(o.VisuallyHidden,null,V(e)?u:"")),Array.isArray(e.icons)?e.icons.filter(F).map((function(e,n){var l,a,r=(null!=(l=null!=(a=e.displayName)?a:e.name)?l:e.name)+"-"+n;return t.createElement(e,{key:r,inline:!0,className:"eds-dropdown__list__item__icon"})})):null)}(e))})))},y=["tabIndex"],I=["ariaLabelCloseList","ariaLabelOpenList","clearable","labelClearSelected","focusable","disabled","isOpen","loading","loadingText","onClear","itemIsSelected"],x=function(e){var n,a=e.ariaLabelRemoveSelected,r=e.ariaLabelChosen,i=void 0===r?"valgt":r,o=e.disabled,s=e.getSelectedItemProps,d=e.readOnly,c=e.removeSelectedItem,p=e.selectedItem,f=v(null!=(n=null==s?void 0:s({selectedItem:p,index:e.index}))?n:{},y);return t.createElement(u.TagChip,m({size:"small",className:l("eds-dropdown__selected-item-tag",{"eds-dropdown__selected-item-tag--readonly":d,"eds-dropdown__selected-item-tag--disabled":o})},f,{onClose:function(e){e.stopPropagation(),c(p)},onClick:function(e){return e.stopPropagation()},closeButtonAriaLabel:p.label+" "+i+", "+a+" ",key:p.value,"aria-live":"polite"}),t.createElement("span",{"aria-hidden":"true",className:"eds-dropdown__selected-item-tag__text"},p.label))},w=t.forwardRef((function(e,n){var a=e.ariaLabelCloseList,r=e.ariaLabelOpenList,i=e.clearable,o=void 0!==i&&i,u=e.labelClearSelected,p=e.focusable,f=void 0!==p&&p,g=e.disabled,h=e.isOpen,b=e.loading,y=void 0!==b&&b,x=e.loadingText,w=e.onClear,C=e.itemIsSelected,_=v(e,I);return t.createElement(t.Fragment,null,!g&&t.createElement("div",{className:"eds-dropdown__appendix"},o&&C&&t.createElement(L,{onClear:w,focusable:!0,labelClearSelectedItems:u}),t.createElement(s.IconButton,m({className:l("eds-dropdown__appendix__toggle-button",{"eds-dropdown__appendix__toggle-button--open":h}),ref:n,"aria-label":y?x:h?a:r},_,{type:"button",tabIndex:f?0:-1}),t.createElement(y?c.LoadingDots:d.DownArrowIcon,{"aria-hidden":"true"}))))})),L=function(e){var n=e.onClear,l=e.labelClearSelectedItems,a=void 0===l?"Fjern valgte":l,r=e.focusable;return t.createElement(t.Fragment,null,t.createElement(p.Tooltip,{"aria-hidden":"true",placement:"top",content:a,className:"eds-dropdown__appendix__clear-button__tooltip"},t.createElement(s.IconButton,{className:"eds-dropdown__appendix__clear-button",type:"button",tabIndex:void 0!==r&&r?0:-1,onClick:function(e){e.stopPropagation(),n()},onKeyDown:function(e){"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),e.stopPropagation(),n())},"aria-label":a},t.createElement(d.CloseSmallIcon,{"aria-hidden":"true"}))),t.createElement("div",{className:"eds-dropdown__appendix__divider"}))},C=function(n,l){void 0===l&&(l=250);var a="function"==typeof n,r=t.useState(a?[]:n),i=r[0],o=r[1],s=t.useState(!1),u=s[0],d=s[1],c=t.useRef(new AbortController),p=t.useMemo((function(){return a?n:function(){return Promise.resolve(n)}}),[n,a]),v=function(){var e,t=(e=g().mark((function e(t){var n,l,a,r;return g().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return null!=c&&c.current&&(null==c||null==(n=c.current)||n.abort()),l=new AbortController,c.current=l,d(!0),e.prev=4,e.next=7,p(null!=t?t:"",c);case 7:if(r=e.sent,null==c||null==(a=c.current)||null==(a=a.signal)||!a.aborted){e.next=11;break}return console.warn("Avbryt den asynkrone funksjonen din med signalet fra AbortController-en for å for å unngå minnelekkasje.",'Funksjonen bør kaste en DOMException med navnet "AbortError" når den avbrytes.',"","\n\nSe eksempel her: https://linje.entur.no/komponenter/skjemaelementer/dropdown#s%C3%B8kbar-dropdown-med-valg-fra-nettverkskall-bassert-p%C3%A5-tekstinput","\nLes mer om AbortController her: https://developer.mozilla.org/en-US/docs/Web/API/AbortController"),e.abrupt("return");case 11:d(!1),o(r),e.next=21;break;case 15:if(e.prev=15,e.t0=e.catch(4),!e.t0||"object"!=typeof e.t0||!("name"in e.t0)||"AbortError"!==e.t0.name){e.next=19;break}return e.abrupt("return");case 19:throw console.warn("The following error was received but not handled inside Entur Designsystems useResolvedItems hook:"),e.t0;case 21:case"end":return e.stop()}}),e,null,[[4,15]])})),function(){var t=this,n=arguments;return new Promise((function(l,a){var r=e.apply(t,n);function i(e){f(r,l,a,i,o,"next",e)}function o(e){f(r,l,a,i,o,"throw",e)}i(void 0)}))});return function(e){return t.apply(this,arguments)}}(),h=e.useDebounce(v,l),b=function(e){return t.useMemo((function(){return e.map((function(e){return"string"==typeof e?{value:e,label:e}:m({},e,void 0===(null==e?void 0:e.value)?{value:e.label}:{value:e.value})}))}),[e])}(i);return t.useEffect((function(){return function(){var e;return null==c||null==(e=c.current)?void 0:e.abort("Component unmounted")}}),[]),t.useEffect((function(){a&&h("")}),[a,p]),{items:b,loading:!!a&&u,fetchItems:h}},_="";function S(e,t){if(!t)return!0;var n=t.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&");return new RegExp(n,"i").test(e.label)}function k(e,t){return!0}var E=function(e){return e?e.label:""},O=function(e){return(null==e?void 0:e.label)+(null==e?void 0:e.value)},T=function(e){return"function"==typeof e&&e.length>0},A=function(e,t,n){return void 0===t&&(t=1),void 0===n&&(n=10),Math.min(Math.max(e,t),n)};function P(e){var t=e.selectAllItemIncluded,n=e.resultCount;if(!e.isOpen)return"";var l=void 0!==t&&t?n-1:n;return 0===l?"Ingen resultater":l+" resultat"+(1===l?"":"er")+" tilgjengelig, naviger med pil opp eller ned, velg elementer med Enter."}var N=["ariaLabelChosenSingular","ariaLabelCloseList","ariaLabelOpenList","ariaLabelSelectedItem","className","clearable","debounceTimeout","disabled","disableLabelAnimation","feedback","items","itemFilter","label","labelClearSelectedItem","labelTooltip","listStyle","loading","loadingText","noMatchesText","onChange","placeholder","prepend","readOnly","selectedItem","selectOnBlur","selectOnTab","style","variant"],V=t.forwardRef((function(o,s){var u,d,c,p=o.ariaLabelChosenSingular,f=o.ariaLabelCloseList,g=void 0===f?"Lukk liste med valg":f,h=o.ariaLabelOpenList,y=void 0===h?"Åpne liste med valg":h,I=o.ariaLabelSelectedItem,x=o.className,L=o.clearable,O=void 0===L||L,V=o.debounceTimeout,j=o.disabled,F=void 0!==j&&j,M=o.disableLabelAnimation,R=void 0!==M&&M,B=o.feedback,D=o.items,q=o.itemFilter,H=void 0===q?T(D)?k:S:q,K=o.label,G=o.labelClearSelectedItem,U=void 0===G?"fjern valgt":G,$=o.labelTooltip,z=o.listStyle,J=o.loading,W=o.loadingText,Y=void 0===W?"Laster resultater …":W,Q=o.noMatchesText,X=void 0===Q?"Ingen tilgjengelige valg …":Q,Z=o.onChange,ee=void 0===Z?function(){}:Z,te=o.placeholder,ne=o.prepend,le=o.readOnly,ae=void 0!==le&&le,re=o.selectedItem,ie=o.selectOnBlur,oe=void 0!==ie&&ie,se=o.selectOnTab,ue=void 0!==se&&se,de=o.style,ce=o.variant,pe=void 0===ce?"info":ce,fe=v(o,N),me=t.useState(null!==re),ve=me[0],ge=me[1],he=t.useState(0),be=he[0],ye=he[1],Ie=t.useRef(null),xe=C(D,V),we=xe.items,Le=xe.loading,Ce=xe.fetchItems,_e=t.useState(we),Se=_e[0],ke=_e[1],Ee=function(e){var t=e.inputValue;return ke(we.filter((function(e){return H(e,t)})))},Oe=function(e){var t=e.inputValue;T(D)&&Ce(null!=t?t:_),Ee({inputValue:null!=t?t:_})},Te=function(e){var t=e.changes;return Oe({inputValue:_}),m({},t,{inputValue:_})},Ae="undefined"!=typeof document&&(null==Ie?void 0:Ie.current)===(null==(u=document)?void 0:u.activeElement);t.useEffect((function(){Ee({inputValue:Ke})}),[we]),t.useEffect((function(){null===He||Ae||(ge(!0),Oe({inputValue:_}),Ge(_))}),[]);var Pe=t.useCallback((function(e,t){var l=t.type,a=t.changes;switch(void 0!==a.highlightedIndex&&(null==a?void 0:a.highlightedIndex)>=0&&ye(null==a?void 0:a.highlightedIndex),l){case n.useCombobox.stateChangeTypes.ItemClick:case n.useCombobox.stateChangeTypes.InputKeyDownEnter:case n.useCombobox.stateChangeTypes.InputBlur:return Te({changes:a});case n.useCombobox.stateChangeTypes.ControlledPropUpdatedSelectedItem:return null===a.selectedItem||Ae||ge(!0),Te({changes:a});case n.useCombobox.stateChangeTypes.InputChange:var r,i=/^\s+/g,o=" "===a.inputValue;if(o||ye(0),null!=(r=a.inputValue)&&r.match(i)){var s=a.inputValue.replace(i,_);if(o){if(!e.isOpen)return m({},a,{inputValue:s,isOpen:!0});if(void 0!==a.highlightedIndex)return m({},a,{inputValue:s,selectedItem:Se[a.highlightedIndex]})}}return m({},a,{highlightedIndex:0});default:return a}}),[Ce,Ee,Ae,Te]),Ne=n.useCombobox({defaultHighlightedIndex:be,items:Se,itemToString:E,selectedItem:re,stateReducer:Pe,onInputValueChange:function(e){Oe({inputValue:e.inputValue})},onStateChange:function(e){var t=e.selectedItem;void 0!==t&&ee(t)},getA11yStatusMessage:function(e){return P(m({},e,{resultCount:Se.length}))}}),Ve=Ne.closeMenu,je=Ne.isOpen,Fe=Ne.getToggleButtonProps,Me=Ne.getLabelProps,Re=Ne.getMenuProps,Be=Ne.getInputProps,De=Ne.highlightedIndex,qe=Ne.getItemProps,He=Ne.selectedItem,Ke=Ne.inputValue,Ge=Ne.setInputValue,Ue=a.useFloating({open:je,placement:"bottom-start",middleware:[a.offset(i.space.extraSmall2),a.shift({padding:i.space.extraSmall}),a.size({apply:function(e){Object.assign(e.elements.floating.style,{width:e.rects.reference.width+"px",maxHeight:A(160,e.availableHeight,320)+"px"})}}),a.flip({fallbackStrategy:"initialPlacement"})]}),$e=Ue.refs,ze=Ue.floatingStyles,Je=Ue.update;return t.useEffect((function(){if(je&&$e.reference.current&&$e.floating.current)return a.autoUpdate($e.reference.current,$e.floating.current,Je)}),[je,$e.reference,$e.floating,Je]),t.createElement(r.BaseFormControl,m({className:l("eds-dropdown","eds-dropdown--searchable",x,{"eds-dropdown--has-tooltip":void 0!==$}),disabled:F,disableLabelAnimation:R,feedback:B,isFilled:null!==He||Ke!==_,label:K,labelId:Me().id,labelProps:Me(),labelTooltip:$,onBlur:function(){return Ge("")},onClick:function(e){var t;e.target===e.currentTarget&&(null==(t=Be())||null==t.onClick||t.onClick(e))},prepend:ne,readOnly:ae,ref:$e.setReference,style:de,tabIndex:F||ae?-1:void 0,variant:pe,after:t.createElement(b,{ariaLabelChosenSingular:p,ariaLabelSelectedItem:I,floatingStyles:ze,getItemProps:qe,getMenuProps:Re,highlightedIndex:De,isOpen:je,listItems:Se,style:z,setListRef:$e.setFloating,loading:null!=J?J:Le,loadingText:Y,noMatchesText:X,selectedItems:null!==He?[He]:[],readOnly:ae})},fe,{append:void 0}),t.createElement("span",{className:l("eds-dropdown--searchable__selected-item",{"eds-dropdown--searchable__selected-item--hidden":!ve}),onClick:ae||null==(d=Be())?void 0:d.onClick,tabIndex:ae?0:-1},ve?null==He?void 0:He.label:""),t.createElement("input",m({className:l("eds-dropdown__input eds-form-control",{"eds-dropdown__input--hidden":ve})},Be({onKeyDown:function(e){if(je&&"Tab"===e.key){var t=Se[De];(ue||oe)&&t&&t!==He&&(null==ee||ee(t)),Ve(),e.preventDefault()}},onBlur:function(){null!==He&&ge(!0)},onFocus:function(){ae||ge(!1)},disabled:F,readOnly:ae,placeholder:null!=(c=null==He?void 0:He.label)?c:te,tabIndex:F||ae?-1:void 0,ref:e.mergeRefs(Ie,s)}))),t.createElement(w,m({},Fe({"aria-busy":(null!=J?J:Le)?"true":void 0}),{ariaLabelCloseList:g,ariaLabelOpenList:y,clearable:O,disabled:F||ae,onClear:function(){var e;ee(null),Ge(_),null==(e=Ie.current)||e.focus(),Oe({inputValue:Ke}),ge(!1)},focusable:!1,labelClearSelected:U,isOpen:je,itemIsSelected:null!==He,loadingText:Y,loading:null!=J?J:Le})))})),j=["className","clearable","clearInputOnSelect","debounceTimeout","disabled","disableLabelAnimation","feedback","hideSelectAll","items","itemFilter","label","labelAllItemsSelected","labelClearAllItems","labelSelectAll","labelTooltip","listStyle","loading","loadingText","maxChips","noMatchesText","onChange","placeholder","readOnly","selectedItems","selectOnBlur","selectOnTab","style","variant","ariaLabelChosenSingular","ariaLabelChosenPlural","ariaLabelCloseList","ariaLabelJumpToInput","ariaLabelOpenList","ariaLabelRemoveSelected","ariaLabelSelectedItem"],F=t.forwardRef((function(s,u){var d,c=s.className,p=s.clearable,f=void 0===p||p,g=s.clearInputOnSelect,h=void 0!==g&&g,y=s.debounceTimeout,I=s.disabled,L=void 0!==I&&I,N=s.disableLabelAnimation,V=s.feedback,F=s.hideSelectAll,M=void 0!==F&&F,R=s.items,B=s.itemFilter,D=void 0===B?T(R)?k:S:B,q=s.label,H=s.labelAllItemsSelected,K=void 0===H?"Alle valgt":H,G=s.labelClearAllItems,U=void 0===G?"Fjern valgte":G,$=s.labelSelectAll,z=void 0===$?"Velg alle":$,J=s.labelTooltip,W=s.listStyle,Y=s.loading,Q=s.loadingText,X=void 0===Q?"Laster resultater …":Q,Z=s.maxChips,ee=void 0===Z?10:Z,te=s.noMatchesText,ne=s.onChange,le=void 0===ne?function(){}:ne,ae=s.placeholder,re=s.readOnly,ie=void 0!==re&&re,oe=s.selectedItems,se=void 0===oe?[]:oe,ue=s.selectOnTab,de=void 0!==ue&&ue,ce=s.style,pe=s.variant,fe=void 0===pe?"information":pe,me=s.ariaLabelChosenSingular,ve=s.ariaLabelChosenPlural,ge=void 0===ve?"valgte":ve,he=s.ariaLabelCloseList,be=void 0===he?"Lukk liste med valg":he,ye=s.ariaLabelJumpToInput,Ie=void 0===ye?se.length+" valgte elementer, trykk for å hoppe til tekstfeltet":ye,xe=s.ariaLabelOpenList,we=void 0===xe?"Åpne liste med valg":xe,Le=s.ariaLabelRemoveSelected,Ce=void 0===Le?"trykk for å fjerne valg":Le,_e=s.ariaLabelSelectedItem,Se=v(s,j),ke=t.useState(0),Ee=ke[0],Oe=ke[1],Te=t.useRef(null);t.useEffect((function(){void 0!==Se.selectedItem&&console.warn("Incorrect 'selectedItem' prop found, did you mean to use 'selectedItems?")}),[Se.selectedItem]);var Ae=C(R,y),Pe=Ae.items,Ne=Ae.loading,Ve=Ae.fetchItems,je="function"!=typeof R&&se.length===Pe.length,Fe={value:e.useRandomId("select-all"),label:z},Me=t.useMemo((function(){return{value:_,label:je?K:se.length+" "+ge}}),[je,se,K,ge]),Re=t.useState([].concat(M?[]:[Fe],Pe)),Be=Re[0],De=Re[1],qe=function(e){var t=e.inputValue;return De([].concat(M?[]:[Fe],Pe.filter((function(e){return D(e,t)}))))},He=function(e){var t=e.inputValue;T(R)&&Ve(null!=t?t:_),qe({inputValue:null!=t?t:_})};t.useEffect((function(){qe({inputValue:rt})}),[Pe]);var Ke=function(e){var t=e.selectedItems,n=e.selectAll,l=t.length>0,a=e.listItems.filter((function(e){return e.value!==n.value})),r=a.filter((function(e){return!t.some((function(t){return t.value===e.value}))})),i=!a.some((function(e){return!t.some((function(t){return t.value===e.value}))})),o=a.some((function(e){return t.some((function(t){return t.value===e.value}))})),s=function(e,n){return n([].concat(t,[e]))},u=function(e){return t.some((function(t){return t.value===e.value}))},d=function(e){return e.value===n.value},c=function(e,n){return n(t.filter((function(t){return t.value!==e.value})))},p=function(e){e([].concat(t,r))},f=function(e){e(t.filter((function(e){return!a.some((function(t){return t.value===e.value}))})))};return{addClickedItemToSelectedItems:s,allListItemsAreSelected:i,clickedItemIsInSelectedItems:u,clickedItemIsSelectAll:d,handleListItemClicked:function(e){var t=e.clickedItem,n=e.onChange;return d(t)?i?f(n):p(n):u(t)?c(t,n):void s(t,n)},hasSelectedItems:l,listItemsWithoutSelectAll:a,removeClickedItemFromSelectedItems:c,selectAllCheckboxState:function(){return!!i||!!o&&"indeterminate"},selectAllUnselectedItemsInListItems:p,someListItemsAreSelected:o,unselectAllListItems:f}}({listItems:Be,selectAll:Fe,selectedItems:se}),Ge=Ke.hasSelectedItems,Ue=Ke.handleListItemClicked,$e=Ke.selectAllCheckboxState,ze=n.useMultipleSelection({selectedItems:se,itemToString:E,itemToKey:O,onStateChange:function(e){var t=e.selectedItems;void 0!==t&&le(t)}}),Je=ze.getSelectedItemProps,We=ze.getDropdownProps,Ye=t.useCallback((function(e,t){var l,a=t.changes,r=t.type;switch(void 0!==a.highlightedIndex&&(null==a?void 0:a.highlightedIndex)>=0&&Oe(null==a?void 0:a.highlightedIndex),r){case n.useCombobox.stateChangeTypes.InputBlur:return e.isOpen&&(null==(l=Te.current)||l.focus()),m({},a,{inputValue:_});case n.useCombobox.stateChangeTypes.InputKeyDownEnter:case n.useCombobox.stateChangeTypes.ItemClick:var i,o;return m({},a,{isOpen:!0,inputValue:h?_:null!=(i=null==Te||null==(o=Te.current)?void 0:o.value)?i:_});case n.useCombobox.stateChangeTypes.ControlledPropUpdatedSelectedItem:var s,u;return m({},a,{inputValue:null!=(s=null==Te||null==(u=Te.current)?void 0:u.value)?s:_});case n.useCombobox.stateChangeTypes.InputChange:var d,c=/^\s+/g,p=" "===a.inputValue;if(null!=(d=a.inputValue)&&d.match(c)){var f=a.inputValue.replace(c,_);if(p){if(!e.isOpen)return m({},a,{inputValue:f,isOpen:!0});if(void 0!==a.highlightedIndex)return m({},a,{inputValue:f,selectedItem:Be[a.highlightedIndex]})}}return a;default:return a}}),[M,Pe,qe,R]),Qe=n.useCombobox(m({defaultHighlightedIndex:Ee,items:Be,itemToString:E,selectedItem:null,stateReducer:Ye,onInputValueChange:function(e){He({inputValue:e.inputValue}),at(M?0:1),Oe(M?0:1)},onStateChange:function(e){var t=e.selectedItem;t&&Ue({clickedItem:t,onChange:le})},getA11yStatusMessage:function(e){return P(m({},e,{selectAllItemIncluded:!M,resultCount:Be.length}))}},Se)),Xe=Qe.getInputProps,Ze=Qe.getItemProps,et=Qe.getLabelProps,tt=Qe.getMenuProps,nt=Qe.getToggleButtonProps,lt=Qe.highlightedIndex,at=Qe.setHighlightedIndex,rt=Qe.inputValue,it=Qe.isOpen,ot=Qe.setInputValue,st=a.useFloating({open:it,placement:"bottom-start",middleware:[a.offset(i.space.extraSmall2),a.shift({padding:i.space.extraSmall}),a.size({apply:function(e){Object.assign(e.elements.floating.style,{width:e.rects.reference.width+"px",maxHeight:A(160,e.availableHeight,320)+"px"})}}),a.flip({fallbackStrategy:"initialPlacement"})]}),ut=st.refs,dt=st.floatingStyles,ct=st.update;t.useEffect((function(){if(it&&ut.reference.current&&ut.floating.current)return a.autoUpdate(ut.reference.current,ut.floating.current,ct)}),[it,ut.reference,ut.floating,ct]);var pt=function(){var e;le([]),ot(_),null==(e=Te.current)||e.focus(),He({inputValue:rt})};return t.createElement(r.BaseFormControl,m({className:l("eds-dropdown","eds-dropdown--multiselect",c,{"eds-dropdown--has-tooltip":void 0!==J}),disabled:L,disableLabelAnimation:N,feedback:V,isFilled:Ge||rt!==_,label:q,labelId:et().id,labelProps:et(),labelTooltip:J,onBlur:function(){return ot("")},onClick:function(e){var t;e.target===e.currentTarget&&(null==(t=Xe())||null==t.onClick||t.onClick(e))},readOnly:ie,ref:ut.setReference,style:ce,variant:fe,after:t.createElement(b,{ariaLabelChosenSingular:me,ariaLabelSelectedItem:_e,floatingStyles:dt,getItemProps:Ze,getMenuProps:tt,highlightedIndex:lt,isOpen:it,listItems:Be,style:W,setListRef:ut.setFloating,loading:null!=Y?Y:Ne,loadingText:X,noMatchesText:te,selectAllCheckboxState:$e,selectAllItem:Fe,selectedItems:se,readOnly:ie})},Se),t.createElement("div",{className:l("eds-dropdown--multiselect__selected-items-and-input",{"eds-dropdown--multiselect__selected-items-and-input--filled":Ge})},se.length>1?t.createElement(o.VisuallyHidden,{onClick:null==(d=Te.current)?void 0:d.focus},Ie):null,se.length<=ee?se.map((function(e,n){return t.createElement(x,{ariaLabelChosen:me,ariaLabelRemoveSelected:Ce,disabled:L,getSelectedItemProps:Je,index:n,key:(null==e?void 0:e.label)+("string"==typeof(null==e?void 0:e.value)?e.value:""),readOnly:ie,removeSelectedItem:function(){var t;Ue({clickedItem:e,onChange:le}),null==Te||null==(t=Te.current)||t.focus()},selectedItem:e})})):t.createElement(x,{ariaLabelRemoveSelected:U,ariaLabelChosen:"",disabled:L,readOnly:ie,removeSelectedItem:pt,selectedItem:Me}),t.createElement("input",m({},Xe(m({onKeyDown:function(e){if(de&&it&&"Tab"===e.key){var t=Be[lt];t&&Ue({clickedItem:t,onChange:le})}}},We({preventKeyAction:it,value:null!=rt?rt:_,ref:e.mergeRefs(Te,u)}),{className:"eds-dropdown__input eds-form-control",disabled:ie||L,placeholder:ae,tabIndex:L||ie?-1:void 0}))))),t.createElement(w,m({},nt({"aria-busy":(null!=Y?Y:Ne)?"true":void 0}),{ariaLabelCloseList:be,ariaLabelOpenList:we,clearable:f,disabled:L||ie,onClear:pt,focusable:!1,labelClearSelected:U,isOpen:it,itemIsSelected:se.length>0,loadingText:X,loading:null!=Y?Y:Ne})))})),M=["ariaLabelChosenSingular","ariaLabelCloseList","ariaLabelOpenList","ariaLabelSelectedItem","className","clearable","disabled","disableLabelAnimation","feedback","items","label","labelClearSelectedItem","labelTooltip","listStyle","loading","loadingText","noMatchesText","onChange","placeholder","prepend","readOnly","selectedItem","selectOnBlur","selectOnTab","style","variant"],R=t.forwardRef((function(o,s){var u,d,c=o.ariaLabelChosenSingular,p=o.ariaLabelCloseList,f=void 0===p?"Lukk liste med valg":p,g=o.ariaLabelOpenList,h=void 0===g?"Åpne liste med valg":g,y=o.ariaLabelSelectedItem,I=o.className,x=o.clearable,L=void 0!==x&&x,_=o.disabled,S=void 0!==_&&_,k=o.disableLabelAnimation,O=o.feedback,T=o.items,P=o.label,N=o.labelClearSelectedItem,V=void 0===N?"fjern valgt":N,j=o.labelTooltip,F=o.listStyle,R=o.loading,B=o.loadingText,D=void 0===B?"Laster resultater …":B,q=o.noMatchesText,H=void 0===q?"Ingen tilgjengelige valg …":q,K=o.onChange,G=o.placeholder,U=o.prepend,$=o.readOnly,z=void 0!==$&&$,J=o.selectedItem,W=o.selectOnBlur,Y=void 0!==W&&W,Q=o.selectOnTab,X=void 0!==Q&&Q,Z=o.style,ee=o.variant,te=void 0===ee?"information":ee,ne=v(o,M),le=C(T),ae=le.items,re=le.loading,ie=null!==J||void 0!==G,oe=n.useSelect({items:ae,defaultHighlightedIndex:J?void 0:0,selectedItem:J,stateReducer:function(e,t){var l=t.changes,a="undefined"!=typeof document&&document.activeElement===he.reference.current;switch(t.type){case n.useSelect.stateChangeTypes.ToggleButtonKeyDownArrowDown:case n.useSelect.stateChangeTypes.ToggleButtonKeyDownArrowUp:if(!a)return m({},l,{isOpen:!1})}return l},onStateChange:function(e){var t=e.selectedItem;(e.type!==n.useSelect.stateChangeTypes.ToggleButtonBlur||Y)&&void 0!==t&&(null==K||K(null!=t?t:null))},itemToString:E}),se=oe.closeMenu,ue=oe.isOpen,de=oe.getItemProps,ce=oe.getLabelProps,pe=oe.getMenuProps,fe=oe.getToggleButtonProps,me=oe.highlightedIndex,ve=oe.reset,ge=a.useFloating({open:ue,placement:"bottom-start",middleware:[a.offset(i.space.extraSmall2),a.shift({padding:i.space.extraSmall}),a.size({apply:function(e){Object.assign(e.elements.floating.style,{width:e.rects.reference.width+"px",maxHeight:A(160,e.availableHeight,320)+"px"})}}),a.flip({fallbackStrategy:"initialPlacement"})]}),he=ge.refs,be=ge.floatingStyles,ye=ge.update;return t.useEffect((function(){if(ue&&he.reference.current&&he.floating.current)return a.autoUpdate(he.reference.current,he.floating.current,ye)}),[ue,he.reference,he.floating,ye]),t.createElement(r.BaseFormControl,m({className:l("eds-dropdown",I,{"eds-dropdown--has-tooltip":void 0!==j}),disableLabelAnimation:k,feedback:O,isFilled:ie,labelProps:ce(),labelTooltip:j,prepend:U,style:Z,variant:te},fe({ref:e.mergeRefs(s,he.setReference),"aria-disabled":S,"aria-label":S?"Disabled dropdown":"",disabled:S,readOnly:z,label:P,labelId:null==(u=ce())?void 0:u.id,children:void 0,tabIndex:S||z?-1:0,onKeyDown:function(e){if(ue&&"Tab"===e.key){var t=ae[me];(X||Y)&&t&&t!==J&&(null==K||K(t)),se(),e.preventDefault()}}}),{after:t.createElement(b,{ariaLabelChosenSingular:c,ariaLabelSelectedItem:y,floatingStyles:be,getItemProps:de,getMenuProps:pe,highlightedIndex:me,isOpen:ue,listItems:ae,noMatchesText:H,style:F,setListRef:he.setFloating,loading:null!=R?R:re,loadingText:D,selectedItems:null!==J?[J]:[],readOnly:z})},ne,{append:void 0}),t.createElement("div",{className:"eds-dropdown__selected-item"},null!=(d=null==J?void 0:J.label)?d:t.createElement("div",{className:l("eds-dropdown__selected-item__placeholder",{"eds-dropdown__selected-item__placeholder--readonly":z})},G)),t.createElement(w,{"aria-busy":(null!=R?R:re)?"true":void 0,"aria-expanded":ue,clearable:L,onClear:function(){var e;ve(),null==(e=he.reference.current)||e.focus()},disabled:S||z,focusable:!1,labelClearSelected:V,isOpen:ue,itemIsSelected:null!==J,ariaLabelCloseList:f,ariaLabelOpenList:h,loading:!1,loadingText:void 0}))})),B=["className","disabled","disableLabelAnimation","feedback","items","label","loadingText","onChange","prepend","readOnly","selectedItem","style","value","variant"],D=t.forwardRef((function(n,l){var a,i=n.className,o=n.disabled,s=void 0!==o&&o,u=n.disableLabelAnimation,d=n.feedback,c=n.items,p=n.label,f=n.loadingText,g=n.onChange,h=n.prepend,b=n.readOnly,y=void 0!==b&&b,I=n.selectedItem,x=n.style,w=n.value,L=n.variant,_=v(n,B),S=C(c),k=S.items,E=S.loading,O=e.useRandomId("eds-dropdown-native");return t.createElement(r.BaseFormControl,{disabled:s,readOnly:y,prepend:h,append:t.createElement(q,{hidden:s||y,loading:E,loadingText:f}),className:i,style:x,label:p,labelId:O,variant:L,feedback:d,disableLabelAnimation:u,isFilled:!0},t.createElement("select",m({"aria-invalid":"negative"===L||"error"===L,"aria-labelledby":O,"aria-busy":E,className:"eds-form-control eds-dropdown--native",disabled:s||y,onChange:function(e){var t;null==g||g({value:e.target.value,selectedItem:null!=(t=k.find((function(t){return t.value===e.target.value})))?t:null,target:e.target})},value:null!=(a=null!=w?w:null==I?void 0:I.value)?a:void 0,ref:l},_),k.map((function(e){return t.createElement("option",{key:e.value,value:e.value},e.label)}))))})),q=function(e){var n=e.hidden;return e.loading?t.createElement("div",{className:"eds-dropdown-native__loading-dots"},t.createElement(c.LoadingDots,{"aria-label":e.loadingText})):n?t.createElement(t.Fragment,null):t.createElement(d.DownArrowIcon,{inline:!0})};e.warnAboutMissingStyles("dropdown","form","a11y","chip"),exports.Dropdown=R,exports.MultiSelect=F,exports.NativeDropdown=D,exports.SearchableDropdown=V;
2
2
  //# sourceMappingURL=dropdown.cjs.production.min.js.map