@entur/dropdown 7.0.2-beta.0 → 7.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/dropdown.cjs.development.js +5 -1
- package/dist/dropdown.cjs.development.js.map +1 -1
- package/dist/dropdown.cjs.production.min.js +1 -1
- package/dist/dropdown.cjs.production.min.js.map +1 -1
- package/dist/dropdown.esm.js +5 -1
- package/dist/dropdown.esm.js.map +1 -1
- package/package.json +10 -10
|
@@ -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"),o=require("@entur/tokens"),i=require("@entur/a11y"),s=require("@entur/button"),u=require("@entur/chip"),d=require("@entur/icons"),c=require("@entur/loader"),p=require("@entur/tooltip");function m(e,t,n,l,a,r,o){try{var i=e[r](o),s=i.value}catch(e){return void n(e)}i.done?t(s):Promise.resolve(s).then(l,a)}function f(){return f=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},f.apply(null,arguments)}function g(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 v(){v=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:{},o=r.iterator||"@@iterator",i=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),o=new A(l||[]);return a(r,"_invoke",{value:T(e,n,o)}),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",m="suspendedYield",f="executing",g="completed",h={};function b(){}function y(){}function I(){}var C={};u(C,o,(function(){return this}));var L=Object.getPrototypeOf,w=L&&L(L(P([])));w&&w!==n&&l.call(w,o)&&(C=w);var x=I.prototype=b.prototype=Object.create(C);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,o,i){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,o,i)}),(function(e){n("throw",e,o,i)})):t.resolve(d).then((function(e){u.value=e,o(u)}),(function(e){return n("throw",e,o,i)}))}i(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 T(t,n,l){var a=p;return function(r,o){if(a===f)throw Error("Generator is already running");if(a===g){if("throw"===r)throw o;return{value:e,done:!0}}for(l.method=r,l.arg=o;;){var i=l.delegate;if(i){var s=k(i,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=g,l.arg;l.dispatchException(l.arg)}else"return"===l.method&&l.abrupt("return",l.arg);a=f;var u=c(t,n,l);if("normal"===u.type){if(a=l.done?g:m,u.arg===h)continue;return{value:u.arg,done:l.done}}"throw"===u.type&&(a=g,l.method="throw",l.arg=u.arg)}}}function k(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,k(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 o=r.arg;return o?o.done?(n[t.resultName]=o.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,h):o:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,h)}function E(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(E,this),this.reset(!0)}function P(t){if(t||""===t){var n=t[o];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(x,"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(x),e},t.awrap=function(e){return{__await:e}},_(S.prototype),u(S.prototype,i,(function(){return this})),t.AsyncIterator=S,t.async=function(e,n,l,a,r){void 0===r&&(r=Promise);var o=new S(d(e,n,l,a),r);return t.isGeneratorFunction(n)?o:o.next().then((function(e){return e.done?e.value:o.next()}))},_(x),u(x,s,"Generator"),u(x,o,(function(){return this})),u(x,"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 i.type="throw",i.arg=t,n.next=l,a&&(n.method="next",n.arg=e),!!a}for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r],i=o.completion;if("root"===o.tryLoc)return a("end");if(o.tryLoc<=this.prev){var s=l.call(o,"catchLoc"),u=l.call(o,"finallyLoc");if(s&&u){if(this.prev<o.catchLoc)return a(o.catchLoc,!0);if(this.prev<o.finallyLoc)return a(o.finallyLoc)}else if(s){if(this.prev<o.catchLoc)return a(o.catchLoc,!0)}else{if(!u)throw Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return a(o.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 o=r?r.completion:{};return o.type=e,o.arg=t,r?(this.method="next",this.next=r.finallyLoc,h):this.complete(o)},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","inputValue","isOpen","highlightedIndex","listItems","floatingStyles","setListRef","loading","loadingText","noMatchesText","selectAllCheckboxState","selectAllItem","selectedItems","showSelectAllInList"],b=function(e){var n,a=e.ariaLabelChosenSingular,o=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,m=e.highlightedIndex,v=e.listItems,b=e.floatingStyles,y=e.setListRef,I=e.loading,C=void 0!==I&&I,L=e.loadingText,w=void 0===L?"Laster inn …":L,x=e.noMatchesText,_=void 0===x?"Ingen treff for søket":x,S=e.selectAllCheckboxState,T=e.selectAllItem,k=e.selectedItems,E=g(e,h),O=void 0!==T,A=!C&&(0===v.length||1===(null==v?void 0:v.length)&&(null==v||null==(n=v[0])?void 0:n.value)===(null==T?void 0:T.value)),P=function(e){return k.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==T?void 0:T.label)+", delvis valgt",selected:!1};case!0:return{label:(null==T?void 0:T.label)+", "+o,selected:!0};default:return{label:""+(null==T?void 0:T.label),selected:!1}}};return t.createElement("div",{className:"eds-dropdown__list__floating-container",style:f({display:p?void 0:"none"},b),ref:y},t.createElement("ul",f({},c({"aria-multiselectable":O}),{className:"eds-dropdown__list",style:f({},E.style)}),!C&&v.length>0&&v.map((function(e,n){var a,o,s=e.value===(null==T?void 0:T.value);return s&&v.length<=2?null:t.createElement("li",f({className:l("eds-dropdown__list__item",{"eds-dropdown__list__item--select-all":s,"eds-dropdown__list__item--highlighted":m===n,"eds-dropdown__list__item--selected":!O&&P(e)}),key:(null==e?void 0:e.label)+(null==e?void 0:e.value)+(null!=(a=null==e||null==(o=e.icons)?void 0:o.map((function(e){var t;return null!=(t=e.displayName)?t:e.name})))?a:"").toString()},d({item:e,index:n,"aria-selected":s?N().selected:P(e)})),s?t.createElement(t.Fragment,null,t.createElement(r.Checkbox,{"aria-hidden":"true",checked:null==S?void 0:S(),className:"eds-dropdown__list__item__checkbox",onChange:function(){},tabIndex:-1}),t.createElement("span",{className:"eds-dropdown__list__item__text","aria-label":N().label},null==T?void 0:T.label)):function(e){return t.createElement(t.Fragment,null,t.createElement(r.Checkbox,{"aria-hidden":"true",checked:P(e),className:"eds-dropdown__list__item__checkbox",onChange:function(){},style:O?{}:{display:"none"},tabIndex:-1}),t.createElement("span",{className:"eds-dropdown__list__item__text"},e.label,t.createElement(i.VisuallyHidden,null,P(e)?u:"")),e.icons&&t.createElement("span",null,e.icons.map((function(n){var l;return t.createElement(n,{key:(null==e?void 0:e.label)+(null==e?void 0:e.value)+(null!=(l=null==n?void 0:n.displayName)?l:null==n?void 0:n.name),inline:!0,className:"eds-dropdown__list__item__icon"})}))))}(e))})),A&&t.createElement("li",{key:"dropdown-list-no-match",className:"eds-dropdown__list__item"},_),C&&t.createElement("li",{key:"dropdown-list-loading",className:"eds-dropdown__list__item"},w)))},y=["tabIndex"],I=function(e){var n,a=e.ariaLabelRemoveSelected,r=e.ariaLabelChosen,o=void 0===r?"valgt":r,i=e.disabled,s=e.getSelectedItemProps,d=e.readOnly,c=e.removeSelectedItem,p=e.selectedItem,m=g(null!=(n=null==s?void 0:s({selectedItem:p,index:e.index}))?n:{},y);return t.createElement(u.TagChip,f({size:"small",className:l("eds-dropdown__selected-item-tag",{"eds-dropdown__selected-item-tag--readonly":d,"eds-dropdown__selected-item-tag--disabled":i})},m,{onClose:function(e){e.stopPropagation(),c(p)},closeButtonAriaLabel:p.label+" "+o+", "+a+" ",key:p.value,"aria-live":"polite"}),t.createElement("span",{"aria-hidden":"true",className:"eds-dropdown__selected-item-tag__text"},p.label))},C=function(e){var n=e.ariaHiddenToggleButton,l=void 0!==n&&n,a=e.ariaLabelCloseList,r=e.ariaLabelOpenList,o=e.clearable,i=e.disabled,s=e.focusable,u=void 0!==s&&s,d=e.getToggleButtonProps,p=e.isOpen,m=e.loading,f=void 0!==m&&m,g=e.loadingText,v=void 0===g?"Laster resultater …":g,h=e.selectedItems;return void 0!==i&&i?null:t.createElement("div",{className:"eds-dropdown__appendix"},void 0!==o&&o&&(null==h?void 0:h.length)>0&&null!==h[0]&&t.createElement(t.Fragment,null,t.createElement(L,{onClear:e.onClear,focusable:!0,labelClearSelectedItems:e.labelClearSelectedItems}),t.createElement("div",{className:"eds-dropdown__appendix__divider"})),f?t.createElement("div",{className:"eds-dropdown__appendix__toggle-button--loading-dots"},t.createElement(c.LoadingDots,{"aria-label":v})):t.createElement(w,{"aria-hidden":l,ariaLabelCloseList:a,ariaLabelOpenList:r,getToggleButtonProps:d,isOpen:p,focusable:u}))},L=function(e){var n=e.labelClearSelectedItems,l=void 0===n?"Fjern valgte":n,a=e.focusable;return t.createElement(p.Tooltip,{"aria-hidden":"true",placement:"top",content:l,className:"eds-dropdown__appendix__clear-button__tooltip"},t.createElement(s.IconButton,{className:"eds-dropdown__appendix__clear-button",type:"button",tabIndex:void 0!==a&&a?0:1,onClick:e.onClear,"aria-label":l},t.createElement(d.CloseSmallIcon,{"aria-hidden":"true"})))},w=function(e){var n=e.isOpen,a=e["aria-hidden"],r=void 0!==a&&a,o=e.ariaLabelCloseList,i=void 0===o?"Lukk liste med valg":o,u=e.ariaLabelOpenList,c=void 0===u?"Åpne liste med valg":u,p=e.focusable,m=void 0!==p&&p;return t.createElement(s.IconButton,f({},(0,e.getToggleButtonProps)({className:l("eds-dropdown__appendix__toggle-button",{"eds-dropdown__appendix__toggle-button--open":n}),"aria-labelledby":void 0}),{"aria-hidden":r,"aria-label":r?void 0:n?i:c,tabIndex:m?0:-1,type:"button"}),t.createElement(d.DownArrowIcon,{"aria-hidden":"true"}))},x=function(n,l){void 0===l&&(l=250);var a="function"==typeof n,r=t.useState(a?[]:n),o=r[0],i=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]),g=function(){var e,t=(e=v().mark((function e(t){var n,l,a,r;return v().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://design.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),i(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 o(e){m(r,l,a,o,i,"next",e)}function i(e){m(r,l,a,o,i,"throw",e)}o(void 0)}))});return function(e){return t.apply(this,arguments)}}(),h=e.useDebounce(g,l),b=function(e){return t.useMemo((function(){return e.map((function(e){return"string"==typeof e?{value:e,label:e}:f({},e,void 0===(null==e?void 0:e.value)?{value:e.label}:{value:e.value})}))}),[e])}(o);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 T(e,t){return!0}var k=function(e){return e?e.label:""},E=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};function A(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 P=["ariaLabelChosenSingular","ariaLabelCloseList","ariaLabelOpenList","ariaLabelSelectedItem","className","clearable","debounceTimeout","disabled","disableLabelAnimation","feedback","items","itemFilter","label","labelClearSelectedItem","labelTooltip","listStyle","loadingText","noMatchesText","onChange","placeholder","prepend","readOnly","selectedItem","selectOnBlur","selectOnTab","style","variant"],N=["className","clearable","clearInputOnSelect","debounceTimeout","disabled","disableLabelAnimation","feedback","hideSelectAll","items","itemFilter","label","labelAllItemsSelected","labelClearAllItems","labelSelectAll","labelTooltip","listStyle","loadingText","maxChips","noMatchesText","onChange","placeholder","readOnly","selectedItems","selectOnBlur","selectOnTab","style","variant","ariaLabelChosenSingular","ariaLabelChosenPlural","ariaLabelCloseList","ariaLabelJumpToInput","ariaLabelOpenList","ariaLabelRemoveSelected","ariaLabelSelectedItem"],V=["ariaLabelChosenSingular","ariaLabelCloseList","ariaLabelOpenList","ariaLabelSelectedItem","className","clearable","disabled","disableLabelAnimation","feedback","items","label","labelClearSelectedItem","labelTooltip","listStyle","loadingText","noMatchesText","onChange","placeholder","prepend","readOnly","selectedItem","selectOnBlur","selectOnTab","style","variant"],B=["className","disabled","disableLabelAnimation","feedback","items","label","loadingText","onChange","prepend","readOnly","selectedItem","style","value","variant"],M=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=function(e){var i,s,u=e.ariaLabelChosenSingular,d=e.ariaLabelCloseList,c=e.ariaLabelOpenList,p=e.ariaLabelSelectedItem,m=e.className,v=e.clearable,h=void 0!==v&&v,y=e.disabled,I=void 0!==y&&y,L=e.disableLabelAnimation,w=e.feedback,_=e.items,S=e.label,T=e.labelClearSelectedItem,E=void 0===T?"fjern valgt":T,O=e.labelTooltip,A=e.listStyle,P=e.loadingText,N=e.noMatchesText,B=void 0===N?"Ingen tilgjengelige valg …":N,M=e.onChange,F=e.placeholder,j=e.prepend,D=e.readOnly,R=void 0!==D&&D,K=e.selectedItem,q=e.selectOnBlur,G=void 0!==q&&q,H=e.selectOnTab,U=void 0!==H&&H,z=e.style,J=e.variant,W=void 0===J?"information":J,Y=g(e,V),$=x(_),Q=$.items,X=$.loading,Z=t.useRef(null),ee=null!==K||void 0!==F,te=n.useSelect({items:Q,defaultHighlightedIndex:K?void 0:0,selectedItem:K,onStateChange:function(e){var t=e.selectedItem;switch(e.type){case n.useSelect.stateChangeTypes.ToggleButtonBlur:if(!G)break;case n.useSelect.stateChangeTypes.ToggleButtonKeyDownEnter:case n.useSelect.stateChangeTypes.ToggleButtonKeyDownSpaceButton:case n.useSelect.stateChangeTypes.ItemClick:if(void 0===t)return;null==M||M(null!=t?t:null)}},itemToString:k}),ne=te.isOpen,le=te.openMenu,ae=te.getItemProps,re=te.getLabelProps,oe=te.getMenuProps,ie=te.getToggleButtonProps,se=te.highlightedIndex,ue=a.useFloating({placement:"bottom-start",open:ne,middleware:[a.offset(o.space.extraSmall2),a.flip()]}),de=ue.refs,ce=ue.floatingStyles,pe=ue.elements,me=ue.update;return t.useEffect((function(){if(ne&&pe.reference&&pe.floating)return a.autoUpdate(pe.reference,pe.floating,me)}),[ne,pe,me]),t.createElement(r.BaseFormControl,f({append:t.createElement(C,{ariaHiddenToggleButton:!0,ariaLabelCloseList:d,ariaLabelOpenList:c,clearable:h,labelClearSelectedItems:E,focusable:!1,getToggleButtonProps:ie,isOpen:ne,loading:X,loadingText:P,onClear:function(){var e;null==M||M(null),null==(e=Z.current)||e.focus()},disabled:R||I,selectedItems:[K]}),className:l("eds-dropdown",m,{"eds-dropdown--has-tooltip":void 0!==O}),disabled:I,disableLabelAnimation:L,feedback:w,isFilled:ee,label:S,labelId:re().id,labelProps:re(),labelTooltip:O,onClick:function(e){e.target===e.currentTarget&&le()},prepend:j,readOnly:R,ref:de.setReference,style:z,variant:W},Y),t.createElement("div",f({className:"eds-dropdown__selected-item"},ie({id:void 0,onKeyDown:function(e){if(U&&ne&&"Tab"===e.key){var t=Q[se];t&&(null==M||M(t))}},ref:Z})),null!=(i=null!=(s=null==K?void 0:K.label)?s:t.createElement("div",{className:l("eds-dropdown__selected-item__placeholder",{"eds-dropdown__selected-item__placeholder--readonly":R})},F))?i:""),t.createElement(b,{ariaLabelChosenSingular:u,ariaLabelSelectedItem:p,floatingStyles:ce,getItemProps:ae,getMenuProps:oe,highlightedIndex:se,isOpen:ne,listItems:Q,noMatchesText:B,style:A,setListRef:de.setFloating,loading:X,loadingText:P,selectedItems:null!==K?[K]:[]}))},exports.MultiSelect=function(s){var u=s.className,d=s.clearable,c=void 0===d||d,p=s.clearInputOnSelect,m=void 0!==p&&p,v=s.debounceTimeout,h=s.disabled,y=void 0!==h&&h,L=s.disableLabelAnimation,w=s.feedback,P=s.hideSelectAll,V=void 0!==P&&P,B=s.items,M=s.itemFilter,F=void 0===M?O(B)?T:S:M,j=s.label,D=s.labelAllItemsSelected,R=void 0===D?"Alle valgt":D,K=s.labelClearAllItems,q=void 0===K?"Fjern valgte":K,G=s.labelSelectAll,H=void 0===G?"Velg alle":G,U=s.labelTooltip,z=s.listStyle,J=s.loadingText,W=s.maxChips,Y=void 0===W?10:W,$=s.noMatchesText,Q=s.onChange,X=void 0===Q?function(){}:Q,Z=s.placeholder,ee=s.readOnly,te=void 0!==ee&&ee,ne=s.selectedItems,le=void 0===ne?[]:ne,ae=s.selectOnBlur,re=void 0!==ae&&ae,oe=s.selectOnTab,ie=void 0!==oe&&oe,se=s.style,ue=s.variant,de=void 0===ue?"information":ue,ce=s.ariaLabelChosenSingular,pe=s.ariaLabelChosenPlural,me=void 0===pe?"valgte":pe,fe=s.ariaLabelCloseList,ge=s.ariaLabelJumpToInput,ve=void 0===ge?le.length+" valgte elementer, trykk for å hoppe til tekstfeltet":ge,he=s.ariaLabelOpenList,be=s.ariaLabelRemoveSelected,ye=void 0===be?"trykk for å fjerne valg":be,Ie=s.ariaLabelSelectedItem,Ce=g(s,N),Le=t.useState(0),we=Le[0],xe=Le[1],_e=t.useRef(null);t.useEffect((function(){void 0!==Ce.selectedItem&&console.warn("Incorrect 'selectedItem' prop found, did you mean to use 'selectedItems?")}),[Ce.selectedItem]);var Se=x(B,v),Te=Se.items,ke=Se.loading,Ee=Se.fetchItems,Oe="function"!=typeof B&&le.length===Te.length,Ae={value:e.useRandomId("select-all"),label:H},Pe=t.useMemo((function(){return{value:_,label:Oe?R:le.length+" "+me}}),[Oe,le,R,me]),Ne=t.useState([].concat(V?[]:[Ae],Te)),Ve=Ne[0],Be=Ne[1],Me=function(e){var t=e.inputValue;return Be([].concat(V?[]:[Ae],Te.filter((function(e){return F(e,t)}))))},Fe=function(e){var t=e.inputValue;O(B)&&Ee(null!=t?t:_),Me({inputValue:null!=t?t:_})};t.useEffect((function(){Me({inputValue:Ze})}),[Te]);var je=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}))})),o=!a.some((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}))})),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))},m=function(e){e(t.filter((function(e){return!a.some((function(t){return t.value===e.value}))})))};return{addClickedItemToSelectedItems:s,allListItemsAreSelected:o,clickedItemIsInSelectedItems:u,clickedItemIsSelectAll:d,handleListItemClicked:function(e){var t=e.clickedItem,n=e.onChange;return d(t)?o?m(n):p(n):u(t)?c(t,n):void s(t,n)},hasSelectedItems:l,listItemsWithoutSelectAll:a,removeClickedItemFromSelectedItems:c,selectAllCheckboxState:function(){return!!o||!!i&&"indeterminate"},selectAllUnselectedItemsInListItems:p,someListItemsAreSelected:i,unselectAllListItems:m}}({listItems:Ve,selectAll:Ae,selectedItems:le}),De=je.hasSelectedItems,Re=je.handleListItemClicked,Ke=je.selectAllCheckboxState,qe=n.useMultipleSelection({selectedItems:le,itemToString:k,itemToKey:E,onStateChange:function(e){var t=e.selectedItems;switch(e.type){case n.useMultipleSelection.stateChangeTypes.SelectedItemKeyDownBackspace:case n.useMultipleSelection.stateChangeTypes.SelectedItemKeyDownDelete:case n.useMultipleSelection.stateChangeTypes.DropdownKeyDownBackspace:case n.useMultipleSelection.stateChangeTypes.FunctionRemoveSelectedItem:void 0!==t&&X(t)}}}),Ge=qe.getSelectedItemProps,He=qe.getDropdownProps,Ue=t.useCallback((function(e,t){var l=t.changes,a=t.type;switch(void 0!==l.highlightedIndex&&(null==l?void 0:l.highlightedIndex)>=0&&xe(null==l?void 0:l.highlightedIndex),a){case n.useCombobox.stateChangeTypes.InputKeyDownEnter:case n.useCombobox.stateChangeTypes.ItemClick:var r,o;return m&&Fe({inputValue:_}),f({},l,{isOpen:!0,inputValue:m?_:null!=(r=null==_e||null==(o=_e.current)?void 0:o.value)?r:_});case n.useCombobox.stateChangeTypes.ControlledPropUpdatedSelectedItem:var i,s;return f({},l,{inputValue:null!=(i=null==_e||null==(s=_e.current)?void 0:s.value)?i:_});case n.useCombobox.stateChangeTypes.InputChange:var u,d=/^\s+/g,c=" "===l.inputValue;return null!=(u=l.inputValue)&&u.match(d)?(nt(l.inputValue.replace(d,_)),c&&(tt(),et&&void 0!==l.highlightedIndex&&Re({clickedItem:Ve[l.highlightedIndex],onChange:X})),l):(Fe({inputValue:l.inputValue}),xe(V?0:1),f({},l,{highlightedIndex:V?0:1}));case n.useCombobox.stateChangeTypes.InputBlur:return Fe({inputValue:_}),f({},l,{inputValue:_});default:return l}}),[V,Te,Me,B]),ze=n.useCombobox(f({defaultHighlightedIndex:we,items:Ve,itemToString:k,selectedItem:null,stateReducer:Ue,onStateChange:function(e){var t=e.selectedItem;if(t)switch(e.type){case n.useCombobox.stateChangeTypes.InputBlur:if(!re)break;case n.useCombobox.stateChangeTypes.InputKeyDownEnter:case n.useCombobox.stateChangeTypes.ItemClick:Re({clickedItem:t,onChange:X})}},getA11yStatusMessage:function(e){return A(f({},e,{selectAllItemIncluded:!V,resultCount:Ve.length}))}},Ce)),Je=ze.getInputProps,We=ze.getItemProps,Ye=ze.getLabelProps,$e=ze.getMenuProps,Qe=ze.getToggleButtonProps,Xe=ze.highlightedIndex,Ze=ze.inputValue,et=ze.isOpen,tt=ze.openMenu,nt=ze.setInputValue,lt=a.useFloating({placement:"bottom-start",open:et,middleware:[a.offset(o.space.extraSmall2),a.flip()]}),at=lt.refs,rt=lt.floatingStyles,ot=lt.elements,it=lt.update;t.useEffect((function(){if(et&&ot.reference&&ot.floating)return a.autoUpdate(ot.reference,ot.floating,it)}),[et,ot,it]);var st=function(){var e;X([]),nt(_),null==(e=_e.current)||e.focus(),Fe({inputValue:Ze})};return t.createElement(r.BaseFormControl,f({append:t.createElement(C,{ariaLabelCloseList:fe,ariaLabelOpenList:he,selectedItems:le,isOpen:et,clearable:c,labelClearSelectedItems:q,focusable:!1,loading:ke,loadingText:J,disabled:te||y,onClear:st,getToggleButtonProps:Qe}),className:l("eds-dropdown","eds-dropdown--multiselect",u,{"eds-dropdown--has-tooltip":void 0!==U}),disabled:y,disableLabelAnimation:L,feedback:w,isFilled:De||Ze!==_,label:j,labelId:Ye().id,labelProps:Ye(),labelTooltip:U,onClick:function(e){var t;e.target===e.currentTarget&&(null==(t=_e.current)||t.focus())},readOnly:te,ref:at.setReference,style:se,variant:de},Ce),t.createElement("div",{className:l("eds-dropdown--multiselect__selected-items-and-input",{"eds-dropdown--multiselect__selected-items-and-input--filled":De}),onClick:function(e){e.target===e.currentTarget&&tt()}},le.length<=Y?t.createElement(t.Fragment,null,le.length>1?t.createElement(i.VisuallyHidden,{onClick:function(){var e;return null==(e=_e.current)?void 0:e.focus()}},ve):t.createElement(t.Fragment,null),le.map((function(e,n){return t.createElement(I,{ariaLabelChosen:ce,ariaLabelRemoveSelected:ye,disabled:y,getSelectedItemProps:Ge,index:n,key:(null==e?void 0:e.label)+("string"==typeof(null==e?void 0:e.value)?e.value:""),readOnly:te,removeSelectedItem:function(){var t;Re({clickedItem:e,onChange:X}),null==_e||null==(t=_e.current)||t.focus()},selectedItem:e})}))):t.createElement(I,{ariaLabelRemoveSelected:q,ariaLabelChosen:"",disabled:y,readOnly:te,removeSelectedItem:st,selectedItem:Pe}),t.createElement("input",f({placeholder:Z,className:"eds-dropdown__input eds-form-control",disabled:te||y},Je(f({onKeyDown:function(e){if(ie&&et&&"Tab"===e.key){var t=Ve[Xe];t&&Re({clickedItem:t,onChange:X})}}},He({preventKeyAction:et,value:null!=Ze?Ze:_,ref:_e})))))),t.createElement(b,{ariaLabelChosenSingular:ce,ariaLabelSelectedItem:Ie,floatingStyles:rt,getItemProps:We,getMenuProps:$e,highlightedIndex:Xe,inputValue:Ze,isOpen:et,listItems:Ve,style:z,setListRef:at.setFloating,loading:ke,loadingText:J,noMatchesText:$,selectAllCheckboxState:Ke,selectAllItem:Ae,selectedItems:le}))},exports.NativeDropdown=function(n){var l,a=n.className,o=n.disabled,i=void 0!==o&&o,s=n.disableLabelAnimation,u=n.feedback,d=n.items,c=n.label,p=n.loadingText,m=n.onChange,v=n.prepend,h=n.readOnly,b=void 0!==h&&h,y=n.selectedItem,I=n.style,C=n.value,L=n.variant,w=g(n,B),_=x(d),S=_.items,T=_.loading,k=e.useRandomId("eds-dropdown-native");return t.createElement(r.BaseFormControl,{disabled:i,readOnly:b,prepend:v,append:t.createElement(M,{hidden:i||b,loading:T,loadingText:p}),className:a,style:I,label:c,labelId:k,variant:L,feedback:u,disableLabelAnimation:s,isFilled:!0},t.createElement("select",f({"aria-invalid":"negative"===L||"error"===L,"aria-labelledby":k,"aria-busy":T,className:"eds-form-control eds-dropdown--native",disabled:i||b,onChange:function(e){var t;null==m||m({value:e.target.value,selectedItem:null!=(t=S.find((function(t){return t.value===e.target.value})))?t:null,target:e.target})},value:null!=(l=null!=C?C:null==y?void 0:y.value)?l:void 0},w),S.map((function(e){return t.createElement("option",{key:e.value,value:e.value},e.label)}))))},exports.SearchableDropdown=function(e){var i,s,u=e.ariaLabelChosenSingular,d=e.ariaLabelCloseList,c=e.ariaLabelOpenList,p=e.ariaLabelSelectedItem,m=e.className,v=e.clearable,h=void 0===v||v,y=e.debounceTimeout,I=e.disabled,L=void 0!==I&&I,w=e.disableLabelAnimation,E=void 0!==w&&w,N=e.feedback,V=e.items,B=e.itemFilter,M=void 0===B?O(V)?T:S:B,F=e.label,j=e.labelClearSelectedItem,D=void 0===j?"fjern valgt":j,R=e.labelTooltip,K=e.listStyle,q=e.loadingText,G=e.noMatchesText,H=e.onChange,U=void 0===H?function(){}:H,z=e.placeholder,J=e.prepend,W=e.readOnly,Y=void 0!==W&&W,$=e.selectedItem,Q=e.selectOnBlur,X=void 0!==Q&&Q,Z=e.selectOnTab,ee=void 0!==Z&&Z,te=e.style,ne=e.variant,le=void 0===ne?"info":ne,ae=g(e,P),re=t.useState(null!==$),oe=re[0],ie=re[1],se=t.useState(0),ue=se[0],de=se[1],ce=t.useRef(null),pe=x(V,y),me=pe.items,fe=pe.loading,ge=pe.fetchItems,ve=t.useState(me),he=ve[0],be=ve[1],ye=function(e){var t=e.inputValue;return be(me.filter((function(e){return M(e,t)})))},Ie=function(e){var t=e.inputValue;O(V)&&ge(null!=t?t:_),ye({inputValue:null!=t?t:_})},Ce="undefined"!=typeof document&&(null==ce?void 0:ce.current)===(null==(i=document)?void 0:i.activeElement);t.useEffect((function(){ye({inputValue:Ve})}),[me]),t.useEffect((function(){null===Ne||Ce||(ie(!0),Ie({inputValue:_}),Be(_))}),[]);var Le=t.useCallback((function(e,t){var l=t.type,a=t.changes;switch(void 0!==a.highlightedIndex&&(null==a?void 0:a.highlightedIndex)>=0&&de(null==a?void 0:a.highlightedIndex),l){case n.useCombobox.stateChangeTypes.ItemClick:case n.useCombobox.stateChangeTypes.InputKeyDownEnter:case n.useCombobox.stateChangeTypes.InputBlur:return Ie({inputValue:_}),f({},a,{inputValue:_});case n.useCombobox.stateChangeTypes.ControlledPropUpdatedSelectedItem:return null===a.selectedItem||Ce||ie(!0),Ie({inputValue:_}),f({},a,{inputValue:_});case n.useCombobox.stateChangeTypes.InputChange:var r,o=/^\s+/g,i=" "===a.inputValue;return null!=(r=a.inputValue)&&r.match(o)?(Be(a.inputValue.replace(o,_)),i&&(_e(),xe&&void 0!==a.highlightedIndex&&U(he[a.highlightedIndex]))):(Ie({inputValue:a.inputValue}),Ae(0),de(0)),a;default:return a}}),[ge,ye]),we=n.useCombobox(f({defaultHighlightedIndex:ue,items:he,itemToString:k,selectedItem:$,stateReducer:Le,onStateChange:function(e){var t=e.selectedItem;switch(e.type){case n.useCombobox.stateChangeTypes.InputBlur:if(!X)break;case n.useCombobox.stateChangeTypes.InputKeyDownEnter:case n.useCombobox.stateChangeTypes.ItemClick:if(void 0===t)return;U(null!=t?t:null)}},getA11yStatusMessage:function(e){return A(f({},e,{resultCount:he.length}))}},ae)),xe=we.isOpen,_e=we.openMenu,Se=we.getToggleButtonProps,Te=we.getLabelProps,ke=we.getMenuProps,Ee=we.getInputProps,Oe=we.highlightedIndex,Ae=we.setHighlightedIndex,Pe=we.getItemProps,Ne=we.selectedItem,Ve=we.inputValue,Be=we.setInputValue,Me=a.useFloating({placement:"bottom-start",open:xe,middleware:[a.offset(o.space.extraSmall2),a.flip()]}),Fe=Me.refs,je=Me.floatingStyles,De=Me.elements,Re=Me.update;return t.useEffect((function(){if(xe&&De.reference&&De.floating)return a.autoUpdate(De.reference,De.floating,Re)}),[xe,De,Re]),t.createElement(r.BaseFormControl,f({append:t.createElement(C,{ariaLabelCloseList:d,ariaLabelOpenList:c,clearable:h,labelClearSelectedItems:D,disabled:Y||L,focusable:!1,getToggleButtonProps:Se,isOpen:xe,loading:fe,loadingText:q,onClear:function(){var e;U(null),Be(_),null==(e=ce.current)||e.focus(),Ie({inputValue:Ve}),ie(!1)},selectedItems:[Ne]}),className:l("eds-dropdown","eds-dropdown--searchable",m,{"eds-dropdown--has-tooltip":void 0!==R}),disabled:L,disableLabelAnimation:E,feedback:N,isFilled:null!==Ne||Ve!==_,label:F,labelId:Te().id,labelProps:Te(),labelTooltip:R,onClick:function(e){var t;e.target===e.currentTarget&&(null==(t=ce.current)||t.focus())},prepend:J,readOnly:Y,ref:Fe.setReference,style:te,variant:le},ae),t.createElement("span",{className:l("eds-dropdown--searchable__selected-item",{"eds-dropdown--searchable__selected-item--hidden":!oe}),"aria-hidden":"true",onClick:function(){var e;null==(e=ce.current)||e.focus(),_e()}},oe?null==Ne?void 0:Ne.label:""),t.createElement("input",f({className:l("eds-dropdown__input eds-form-control",{"eds-dropdown__input--hidden":oe}),disabled:Y||L,placeholder:null!=(s=null==Ne?void 0:Ne.label)?s:z},Ee({onBlur:function(){null!==Ne&&ie(!0)},onFocus:function(){ie(!1)},onKeyDown:function(e){ee&&xe&&"Tab"===e.key&&(null==U||U(he[Oe]))},ref:ce}))),t.createElement(b,{ariaLabelChosenSingular:u,ariaLabelSelectedItem:p,floatingStyles:je,getItemProps:Pe,getMenuProps:ke,highlightedIndex:Oe,isOpen:xe,listItems:he,style:K,setListRef:Fe.setFloating,loading:fe,loadingText:q,noMatchesText:G,selectedItems:null!==Ne?[Ne]:[]}))};
|
|
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"),o=require("@entur/tokens"),i=require("@entur/a11y"),s=require("@entur/button"),u=require("@entur/chip"),d=require("@entur/icons"),c=require("@entur/loader"),p=require("@entur/tooltip");function m(e,t,n,l,a,r,o){try{var i=e[r](o),s=i.value}catch(e){return void n(e)}i.done?t(s):Promise.resolve(s).then(l,a)}function f(){return f=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},f.apply(null,arguments)}function g(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 v(){v=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:{},o=r.iterator||"@@iterator",i=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),o=new A(l||[]);return a(r,"_invoke",{value:T(e,n,o)}),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",m="suspendedYield",f="executing",g="completed",h={};function b(){}function y(){}function I(){}var C={};u(C,o,(function(){return this}));var L=Object.getPrototypeOf,w=L&&L(L(P([])));w&&w!==n&&l.call(w,o)&&(C=w);var x=I.prototype=b.prototype=Object.create(C);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,o,i){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,o,i)}),(function(e){n("throw",e,o,i)})):t.resolve(d).then((function(e){u.value=e,o(u)}),(function(e){return n("throw",e,o,i)}))}i(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 T(t,n,l){var a=p;return function(r,o){if(a===f)throw Error("Generator is already running");if(a===g){if("throw"===r)throw o;return{value:e,done:!0}}for(l.method=r,l.arg=o;;){var i=l.delegate;if(i){var s=k(i,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=g,l.arg;l.dispatchException(l.arg)}else"return"===l.method&&l.abrupt("return",l.arg);a=f;var u=c(t,n,l);if("normal"===u.type){if(a=l.done?g:m,u.arg===h)continue;return{value:u.arg,done:l.done}}"throw"===u.type&&(a=g,l.method="throw",l.arg=u.arg)}}}function k(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,k(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 o=r.arg;return o?o.done?(n[t.resultName]=o.value,n.next=t.nextLoc,"return"!==n.method&&(n.method="next",n.arg=e),n.delegate=null,h):o:(n.method="throw",n.arg=new TypeError("iterator result is not an object"),n.delegate=null,h)}function E(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(E,this),this.reset(!0)}function P(t){if(t||""===t){var n=t[o];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(x,"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(x),e},t.awrap=function(e){return{__await:e}},_(S.prototype),u(S.prototype,i,(function(){return this})),t.AsyncIterator=S,t.async=function(e,n,l,a,r){void 0===r&&(r=Promise);var o=new S(d(e,n,l,a),r);return t.isGeneratorFunction(n)?o:o.next().then((function(e){return e.done?e.value:o.next()}))},_(x),u(x,s,"Generator"),u(x,o,(function(){return this})),u(x,"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 i.type="throw",i.arg=t,n.next=l,a&&(n.method="next",n.arg=e),!!a}for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r],i=o.completion;if("root"===o.tryLoc)return a("end");if(o.tryLoc<=this.prev){var s=l.call(o,"catchLoc"),u=l.call(o,"finallyLoc");if(s&&u){if(this.prev<o.catchLoc)return a(o.catchLoc,!0);if(this.prev<o.finallyLoc)return a(o.finallyLoc)}else if(s){if(this.prev<o.catchLoc)return a(o.catchLoc,!0)}else{if(!u)throw Error("try statement without catch or finally");if(this.prev<o.finallyLoc)return a(o.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 o=r?r.completion:{};return o.type=e,o.arg=t,r?(this.method="next",this.next=r.finallyLoc,h):this.complete(o)},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","inputValue","isOpen","highlightedIndex","listItems","floatingStyles","setListRef","loading","loadingText","noMatchesText","selectAllCheckboxState","selectAllItem","selectedItems","showSelectAllInList"],b=function(e){var n,a=e.ariaLabelChosenSingular,o=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,m=e.highlightedIndex,v=e.listItems,b=e.floatingStyles,y=e.setListRef,I=e.loading,C=void 0!==I&&I,L=e.loadingText,w=void 0===L?"Laster inn …":L,x=e.noMatchesText,_=void 0===x?"Ingen treff for søket":x,S=e.selectAllCheckboxState,T=e.selectAllItem,k=e.selectedItems,E=g(e,h),O=void 0!==T,A=!C&&(0===v.length||1===(null==v?void 0:v.length)&&(null==v||null==(n=v[0])?void 0:n.value)===(null==T?void 0:T.value)),P=function(e){return k.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==T?void 0:T.label)+", delvis valgt",selected:!1};case!0:return{label:(null==T?void 0:T.label)+", "+o,selected:!0};default:return{label:""+(null==T?void 0:T.label),selected:!1}}};return t.createElement("div",{className:"eds-dropdown__list__floating-container",style:f({display:p?void 0:"none"},b),ref:y},t.createElement("ul",f({},c({"aria-multiselectable":O}),{className:"eds-dropdown__list",style:f({},E.style)}),!C&&v.length>0&&v.map((function(e,n){var a,o,s=e.value===(null==T?void 0:T.value);return s&&v.length<=2?null:t.createElement("li",f({className:l("eds-dropdown__list__item",{"eds-dropdown__list__item--select-all":s,"eds-dropdown__list__item--highlighted":m===n,"eds-dropdown__list__item--selected":!O&&P(e)}),key:(null==e?void 0:e.label)+(null==e?void 0:e.value)+(null!=(a=null==e||null==(o=e.icons)?void 0:o.map((function(e){var t;return null!=(t=e.displayName)?t:e.name})))?a:"").toString()},d({item:e,index:n,"aria-selected":s?N().selected:P(e)})),s?t.createElement(t.Fragment,null,t.createElement(r.Checkbox,{"aria-hidden":"true",checked:null==S?void 0:S(),className:"eds-dropdown__list__item__checkbox",onChange:function(){},tabIndex:-1}),t.createElement("span",{className:"eds-dropdown__list__item__text","aria-label":N().label},null==T?void 0:T.label)):function(e){return t.createElement(t.Fragment,null,t.createElement(r.Checkbox,{"aria-hidden":"true",checked:P(e),className:"eds-dropdown__list__item__checkbox",onChange:function(){},style:O?{}:{display:"none"},tabIndex:-1}),t.createElement("span",{className:"eds-dropdown__list__item__text"},e.label,t.createElement(i.VisuallyHidden,null,P(e)?u:"")),e.icons&&t.createElement("span",null,e.icons.map((function(n){var l;return t.createElement(n,{key:(null==e?void 0:e.label)+(null==e?void 0:e.value)+(null!=(l=null==n?void 0:n.displayName)?l:null==n?void 0:n.name),inline:!0,className:"eds-dropdown__list__item__icon"})}))))}(e))})),A&&t.createElement("li",{key:"dropdown-list-no-match",className:"eds-dropdown__list__item"},_),C&&t.createElement("li",{key:"dropdown-list-loading",className:"eds-dropdown__list__item"},w)))},y=["tabIndex"],I=function(e){var n,a=e.ariaLabelRemoveSelected,r=e.ariaLabelChosen,o=void 0===r?"valgt":r,i=e.disabled,s=e.getSelectedItemProps,d=e.readOnly,c=e.removeSelectedItem,p=e.selectedItem,m=g(null!=(n=null==s?void 0:s({selectedItem:p,index:e.index}))?n:{},y);return t.createElement(u.TagChip,f({size:"small",className:l("eds-dropdown__selected-item-tag",{"eds-dropdown__selected-item-tag--readonly":d,"eds-dropdown__selected-item-tag--disabled":i})},m,{onClose:function(e){e.stopPropagation(),c(p)},closeButtonAriaLabel:p.label+" "+o+", "+a+" ",key:p.value,"aria-live":"polite"}),t.createElement("span",{"aria-hidden":"true",className:"eds-dropdown__selected-item-tag__text"},p.label))},C=function(e){var n=e.ariaHiddenToggleButton,l=void 0!==n&&n,a=e.ariaLabelCloseList,r=e.ariaLabelOpenList,o=e.clearable,i=e.disabled,s=e.focusable,u=void 0!==s&&s,d=e.getToggleButtonProps,p=e.isOpen,m=e.loading,f=void 0!==m&&m,g=e.loadingText,v=void 0===g?"Laster resultater …":g,h=e.selectedItems;return void 0!==i&&i?null:t.createElement("div",{className:"eds-dropdown__appendix"},void 0!==o&&o&&(null==h?void 0:h.length)>0&&null!==h[0]&&t.createElement(t.Fragment,null,t.createElement(L,{onClear:e.onClear,focusable:!0,labelClearSelectedItems:e.labelClearSelectedItems}),t.createElement("div",{className:"eds-dropdown__appendix__divider"})),f?t.createElement("div",{className:"eds-dropdown__appendix__toggle-button--loading-dots"},t.createElement(c.LoadingDots,{"aria-label":v})):t.createElement(w,{"aria-hidden":l,ariaLabelCloseList:a,ariaLabelOpenList:r,getToggleButtonProps:d,isOpen:p,focusable:u}))},L=function(e){var n=e.labelClearSelectedItems,l=void 0===n?"Fjern valgte":n,a=e.focusable;return t.createElement(p.Tooltip,{"aria-hidden":"true",placement:"top",content:l,className:"eds-dropdown__appendix__clear-button__tooltip"},t.createElement(s.IconButton,{className:"eds-dropdown__appendix__clear-button",type:"button",tabIndex:void 0!==a&&a?0:1,onClick:e.onClear,"aria-label":l},t.createElement(d.CloseSmallIcon,{"aria-hidden":"true"})))},w=function(e){var n=e.isOpen,a=e["aria-hidden"],r=void 0!==a&&a,o=e.ariaLabelCloseList,i=void 0===o?"Lukk liste med valg":o,u=e.ariaLabelOpenList,c=void 0===u?"Åpne liste med valg":u,p=e.focusable,m=void 0!==p&&p;return t.createElement(s.IconButton,f({},(0,e.getToggleButtonProps)({className:l("eds-dropdown__appendix__toggle-button",{"eds-dropdown__appendix__toggle-button--open":n}),"aria-labelledby":void 0}),{"aria-hidden":r,"aria-label":r?void 0:n?i:c,tabIndex:m?0:-1,type:"button"}),t.createElement(d.DownArrowIcon,{"aria-hidden":"true"}))},x=function(n,l){void 0===l&&(l=250);var a="function"==typeof n,r=t.useState(a?[]:n),o=r[0],i=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]),g=function(){var e,t=(e=v().mark((function e(t){var n,l,a,r;return v().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://design.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),i(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 o(e){m(r,l,a,o,i,"next",e)}function i(e){m(r,l,a,o,i,"throw",e)}o(void 0)}))});return function(e){return t.apply(this,arguments)}}(),h=e.useDebounce(g,l),b=function(e){return t.useMemo((function(){return e.map((function(e){return"string"==typeof e?{value:e,label:e}:f({},e,void 0===(null==e?void 0:e.value)?{value:e.label}:{value:e.value})}))}),[e])}(o);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 T(e,t){return!0}var k=function(e){return e?e.label:""},E=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};function A(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 P=["ariaLabelChosenSingular","ariaLabelCloseList","ariaLabelOpenList","ariaLabelSelectedItem","className","clearable","debounceTimeout","disabled","disableLabelAnimation","feedback","items","itemFilter","label","labelClearSelectedItem","labelTooltip","listStyle","loadingText","noMatchesText","onChange","placeholder","prepend","readOnly","selectedItem","selectOnBlur","selectOnTab","style","variant"],N=["className","clearable","clearInputOnSelect","debounceTimeout","disabled","disableLabelAnimation","feedback","hideSelectAll","items","itemFilter","label","labelAllItemsSelected","labelClearAllItems","labelSelectAll","labelTooltip","listStyle","loadingText","maxChips","noMatchesText","onChange","placeholder","readOnly","selectedItems","selectOnBlur","selectOnTab","style","variant","ariaLabelChosenSingular","ariaLabelChosenPlural","ariaLabelCloseList","ariaLabelJumpToInput","ariaLabelOpenList","ariaLabelRemoveSelected","ariaLabelSelectedItem"],V=["ariaLabelChosenSingular","ariaLabelCloseList","ariaLabelOpenList","ariaLabelSelectedItem","className","clearable","disabled","disableLabelAnimation","feedback","items","label","labelClearSelectedItem","labelTooltip","listStyle","loadingText","noMatchesText","onChange","placeholder","prepend","readOnly","selectedItem","selectOnBlur","selectOnTab","style","variant"],B=["className","disabled","disableLabelAnimation","feedback","items","label","loadingText","onChange","prepend","readOnly","selectedItem","style","value","variant"],M=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=function(e){var i,s,u=e.ariaLabelChosenSingular,d=e.ariaLabelCloseList,c=e.ariaLabelOpenList,p=e.ariaLabelSelectedItem,m=e.className,v=e.clearable,h=void 0!==v&&v,y=e.disabled,I=void 0!==y&&y,L=e.disableLabelAnimation,w=e.feedback,_=e.items,S=e.label,T=e.labelClearSelectedItem,E=void 0===T?"fjern valgt":T,O=e.labelTooltip,A=e.listStyle,P=e.loadingText,N=e.noMatchesText,B=void 0===N?"Ingen tilgjengelige valg …":N,M=e.onChange,F=e.placeholder,j=e.prepend,D=e.readOnly,R=void 0!==D&&D,K=e.selectedItem,q=e.selectOnBlur,G=void 0!==q&&q,H=e.selectOnTab,U=void 0!==H&&H,z=e.style,J=e.variant,W=void 0===J?"information":J,Y=g(e,V),$=x(_),Q=$.items,X=$.loading,Z=t.useRef(null),ee=null!==K||void 0!==F,te=n.useSelect({items:Q,defaultHighlightedIndex:K?void 0:0,selectedItem:K,onStateChange:function(e){var t=e.selectedItem;switch(e.type){case n.useSelect.stateChangeTypes.ToggleButtonBlur:if(!G)break;case n.useSelect.stateChangeTypes.ToggleButtonKeyDownEnter:case n.useSelect.stateChangeTypes.ToggleButtonKeyDownSpaceButton:case n.useSelect.stateChangeTypes.ItemClick:if(void 0===t)return;null==M||M(null!=t?t:null)}},itemToString:k}),ne=te.isOpen,le=te.openMenu,ae=te.getItemProps,re=te.getLabelProps,oe=te.getMenuProps,ie=te.getToggleButtonProps,se=te.highlightedIndex,ue=a.useFloating({placement:"bottom-start",open:ne,middleware:[a.offset(o.space.extraSmall2),a.flip()]}),de=ue.refs,ce=ue.floatingStyles,pe=ue.elements,me=ue.update;return t.useEffect((function(){if(ne&&pe.reference&&pe.floating)return a.autoUpdate(pe.reference,pe.floating,me)}),[ne,pe,me]),t.createElement(r.BaseFormControl,f({append:t.createElement(C,{ariaHiddenToggleButton:!0,ariaLabelCloseList:d,ariaLabelOpenList:c,clearable:h,labelClearSelectedItems:E,focusable:!1,getToggleButtonProps:ie,isOpen:ne,loading:X,loadingText:P,onClear:function(){var e;null==M||M(null),null==(e=Z.current)||e.focus()},disabled:R||I,selectedItems:[K]}),className:l("eds-dropdown",m,{"eds-dropdown--has-tooltip":void 0!==O}),disabled:I,disableLabelAnimation:L,feedback:w,isFilled:ee,label:S,labelId:re().id,labelProps:re(),labelTooltip:O,onClick:function(e){e.target===e.currentTarget&&le()},prepend:j,readOnly:R,ref:de.setReference,style:z,variant:W},Y),t.createElement("div",f({className:"eds-dropdown__selected-item"},ie({id:void 0,onKeyDown:function(e){if(U&&ne&&"Tab"===e.key){var t=Q[se];t&&(null==M||M(t))}},ref:Z,"aria-disabled":I,"aria-label":I?"Disabled dropdown":"",disabled:I,tabIndex:I?-1:0})),null!=(i=null!=(s=null==K?void 0:K.label)?s:t.createElement("div",{className:l("eds-dropdown__selected-item__placeholder",{"eds-dropdown__selected-item__placeholder--readonly":R})},F))?i:""),t.createElement(b,{ariaLabelChosenSingular:u,ariaLabelSelectedItem:p,floatingStyles:ce,getItemProps:ae,getMenuProps:oe,highlightedIndex:se,isOpen:ne,listItems:Q,noMatchesText:B,style:A,setListRef:de.setFloating,loading:X,loadingText:P,selectedItems:null!==K?[K]:[]}))},exports.MultiSelect=function(s){var u=s.className,d=s.clearable,c=void 0===d||d,p=s.clearInputOnSelect,m=void 0!==p&&p,v=s.debounceTimeout,h=s.disabled,y=void 0!==h&&h,L=s.disableLabelAnimation,w=s.feedback,P=s.hideSelectAll,V=void 0!==P&&P,B=s.items,M=s.itemFilter,F=void 0===M?O(B)?T:S:M,j=s.label,D=s.labelAllItemsSelected,R=void 0===D?"Alle valgt":D,K=s.labelClearAllItems,q=void 0===K?"Fjern valgte":K,G=s.labelSelectAll,H=void 0===G?"Velg alle":G,U=s.labelTooltip,z=s.listStyle,J=s.loadingText,W=s.maxChips,Y=void 0===W?10:W,$=s.noMatchesText,Q=s.onChange,X=void 0===Q?function(){}:Q,Z=s.placeholder,ee=s.readOnly,te=void 0!==ee&&ee,ne=s.selectedItems,le=void 0===ne?[]:ne,ae=s.selectOnBlur,re=void 0!==ae&&ae,oe=s.selectOnTab,ie=void 0!==oe&&oe,se=s.style,ue=s.variant,de=void 0===ue?"information":ue,ce=s.ariaLabelChosenSingular,pe=s.ariaLabelChosenPlural,me=void 0===pe?"valgte":pe,fe=s.ariaLabelCloseList,ge=s.ariaLabelJumpToInput,ve=void 0===ge?le.length+" valgte elementer, trykk for å hoppe til tekstfeltet":ge,he=s.ariaLabelOpenList,be=s.ariaLabelRemoveSelected,ye=void 0===be?"trykk for å fjerne valg":be,Ie=s.ariaLabelSelectedItem,Ce=g(s,N),Le=t.useState(0),we=Le[0],xe=Le[1],_e=t.useRef(null);t.useEffect((function(){void 0!==Ce.selectedItem&&console.warn("Incorrect 'selectedItem' prop found, did you mean to use 'selectedItems?")}),[Ce.selectedItem]);var Se=x(B,v),Te=Se.items,ke=Se.loading,Ee=Se.fetchItems,Oe="function"!=typeof B&&le.length===Te.length,Ae={value:e.useRandomId("select-all"),label:H},Pe=t.useMemo((function(){return{value:_,label:Oe?R:le.length+" "+me}}),[Oe,le,R,me]),Ne=t.useState([].concat(V?[]:[Ae],Te)),Ve=Ne[0],Be=Ne[1],Me=function(e){var t=e.inputValue;return Be([].concat(V?[]:[Ae],Te.filter((function(e){return F(e,t)}))))},Fe=function(e){var t=e.inputValue;O(B)&&Ee(null!=t?t:_),Me({inputValue:null!=t?t:_})};t.useEffect((function(){Me({inputValue:Ze})}),[Te]);var je=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}))})),o=!a.some((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}))})),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))},m=function(e){e(t.filter((function(e){return!a.some((function(t){return t.value===e.value}))})))};return{addClickedItemToSelectedItems:s,allListItemsAreSelected:o,clickedItemIsInSelectedItems:u,clickedItemIsSelectAll:d,handleListItemClicked:function(e){var t=e.clickedItem,n=e.onChange;return d(t)?o?m(n):p(n):u(t)?c(t,n):void s(t,n)},hasSelectedItems:l,listItemsWithoutSelectAll:a,removeClickedItemFromSelectedItems:c,selectAllCheckboxState:function(){return!!o||!!i&&"indeterminate"},selectAllUnselectedItemsInListItems:p,someListItemsAreSelected:i,unselectAllListItems:m}}({listItems:Ve,selectAll:Ae,selectedItems:le}),De=je.hasSelectedItems,Re=je.handleListItemClicked,Ke=je.selectAllCheckboxState,qe=n.useMultipleSelection({selectedItems:le,itemToString:k,itemToKey:E,onStateChange:function(e){var t=e.selectedItems;switch(e.type){case n.useMultipleSelection.stateChangeTypes.SelectedItemKeyDownBackspace:case n.useMultipleSelection.stateChangeTypes.SelectedItemKeyDownDelete:case n.useMultipleSelection.stateChangeTypes.DropdownKeyDownBackspace:case n.useMultipleSelection.stateChangeTypes.FunctionRemoveSelectedItem:void 0!==t&&X(t)}}}),Ge=qe.getSelectedItemProps,He=qe.getDropdownProps,Ue=t.useCallback((function(e,t){var l=t.changes,a=t.type;switch(void 0!==l.highlightedIndex&&(null==l?void 0:l.highlightedIndex)>=0&&xe(null==l?void 0:l.highlightedIndex),a){case n.useCombobox.stateChangeTypes.InputKeyDownEnter:case n.useCombobox.stateChangeTypes.ItemClick:var r,o;return m&&Fe({inputValue:_}),f({},l,{isOpen:!0,inputValue:m?_:null!=(r=null==_e||null==(o=_e.current)?void 0:o.value)?r:_});case n.useCombobox.stateChangeTypes.ControlledPropUpdatedSelectedItem:var i,s;return f({},l,{inputValue:null!=(i=null==_e||null==(s=_e.current)?void 0:s.value)?i:_});case n.useCombobox.stateChangeTypes.InputChange:var u,d=/^\s+/g,c=" "===l.inputValue;return null!=(u=l.inputValue)&&u.match(d)?(nt(l.inputValue.replace(d,_)),c&&(tt(),et&&void 0!==l.highlightedIndex&&Re({clickedItem:Ve[l.highlightedIndex],onChange:X})),l):(Fe({inputValue:l.inputValue}),xe(V?0:1),f({},l,{highlightedIndex:V?0:1}));case n.useCombobox.stateChangeTypes.InputBlur:return Fe({inputValue:_}),f({},l,{inputValue:_});default:return l}}),[V,Te,Me,B]),ze=n.useCombobox(f({defaultHighlightedIndex:we,items:Ve,itemToString:k,selectedItem:null,stateReducer:Ue,onStateChange:function(e){var t=e.selectedItem;if(t)switch(e.type){case n.useCombobox.stateChangeTypes.InputBlur:if(!re)break;case n.useCombobox.stateChangeTypes.InputKeyDownEnter:case n.useCombobox.stateChangeTypes.ItemClick:Re({clickedItem:t,onChange:X})}},getA11yStatusMessage:function(e){return A(f({},e,{selectAllItemIncluded:!V,resultCount:Ve.length}))}},Ce)),Je=ze.getInputProps,We=ze.getItemProps,Ye=ze.getLabelProps,$e=ze.getMenuProps,Qe=ze.getToggleButtonProps,Xe=ze.highlightedIndex,Ze=ze.inputValue,et=ze.isOpen,tt=ze.openMenu,nt=ze.setInputValue,lt=a.useFloating({placement:"bottom-start",open:et,middleware:[a.offset(o.space.extraSmall2),a.flip()]}),at=lt.refs,rt=lt.floatingStyles,ot=lt.elements,it=lt.update;t.useEffect((function(){if(et&&ot.reference&&ot.floating)return a.autoUpdate(ot.reference,ot.floating,it)}),[et,ot,it]);var st=function(){var e;X([]),nt(_),null==(e=_e.current)||e.focus(),Fe({inputValue:Ze})};return t.createElement(r.BaseFormControl,f({append:t.createElement(C,{ariaLabelCloseList:fe,ariaLabelOpenList:he,selectedItems:le,isOpen:et,clearable:c,labelClearSelectedItems:q,focusable:!1,loading:ke,loadingText:J,disabled:te||y,onClear:st,getToggleButtonProps:Qe}),className:l("eds-dropdown","eds-dropdown--multiselect",u,{"eds-dropdown--has-tooltip":void 0!==U}),disabled:y,disableLabelAnimation:L,feedback:w,isFilled:De||Ze!==_,label:j,labelId:Ye().id,labelProps:Ye(),labelTooltip:U,onClick:function(e){var t;e.target===e.currentTarget&&(null==(t=_e.current)||t.focus())},readOnly:te,ref:at.setReference,style:se,variant:de},Ce),t.createElement("div",{className:l("eds-dropdown--multiselect__selected-items-and-input",{"eds-dropdown--multiselect__selected-items-and-input--filled":De}),onClick:function(e){e.target===e.currentTarget&&tt()}},le.length<=Y?t.createElement(t.Fragment,null,le.length>1?t.createElement(i.VisuallyHidden,{onClick:function(){var e;return null==(e=_e.current)?void 0:e.focus()}},ve):t.createElement(t.Fragment,null),le.map((function(e,n){return t.createElement(I,{ariaLabelChosen:ce,ariaLabelRemoveSelected:ye,disabled:y,getSelectedItemProps:Ge,index:n,key:(null==e?void 0:e.label)+("string"==typeof(null==e?void 0:e.value)?e.value:""),readOnly:te,removeSelectedItem:function(){var t;Re({clickedItem:e,onChange:X}),null==_e||null==(t=_e.current)||t.focus()},selectedItem:e})}))):t.createElement(I,{ariaLabelRemoveSelected:q,ariaLabelChosen:"",disabled:y,readOnly:te,removeSelectedItem:st,selectedItem:Pe}),t.createElement("input",f({placeholder:Z,className:"eds-dropdown__input eds-form-control",disabled:te||y},Je(f({onKeyDown:function(e){if(ie&&et&&"Tab"===e.key){var t=Ve[Xe];t&&Re({clickedItem:t,onChange:X})}}},He({preventKeyAction:et,value:null!=Ze?Ze:_,ref:_e})))))),t.createElement(b,{ariaLabelChosenSingular:ce,ariaLabelSelectedItem:Ie,floatingStyles:rt,getItemProps:We,getMenuProps:$e,highlightedIndex:Xe,inputValue:Ze,isOpen:et,listItems:Ve,style:z,setListRef:at.setFloating,loading:ke,loadingText:J,noMatchesText:$,selectAllCheckboxState:Ke,selectAllItem:Ae,selectedItems:le}))},exports.NativeDropdown=function(n){var l,a=n.className,o=n.disabled,i=void 0!==o&&o,s=n.disableLabelAnimation,u=n.feedback,d=n.items,c=n.label,p=n.loadingText,m=n.onChange,v=n.prepend,h=n.readOnly,b=void 0!==h&&h,y=n.selectedItem,I=n.style,C=n.value,L=n.variant,w=g(n,B),_=x(d),S=_.items,T=_.loading,k=e.useRandomId("eds-dropdown-native");return t.createElement(r.BaseFormControl,{disabled:i,readOnly:b,prepend:v,append:t.createElement(M,{hidden:i||b,loading:T,loadingText:p}),className:a,style:I,label:c,labelId:k,variant:L,feedback:u,disableLabelAnimation:s,isFilled:!0},t.createElement("select",f({"aria-invalid":"negative"===L||"error"===L,"aria-labelledby":k,"aria-busy":T,className:"eds-form-control eds-dropdown--native",disabled:i||b,onChange:function(e){var t;null==m||m({value:e.target.value,selectedItem:null!=(t=S.find((function(t){return t.value===e.target.value})))?t:null,target:e.target})},value:null!=(l=null!=C?C:null==y?void 0:y.value)?l:void 0},w),S.map((function(e){return t.createElement("option",{key:e.value,value:e.value},e.label)}))))},exports.SearchableDropdown=function(e){var i,s,u=e.ariaLabelChosenSingular,d=e.ariaLabelCloseList,c=e.ariaLabelOpenList,p=e.ariaLabelSelectedItem,m=e.className,v=e.clearable,h=void 0===v||v,y=e.debounceTimeout,I=e.disabled,L=void 0!==I&&I,w=e.disableLabelAnimation,E=void 0!==w&&w,N=e.feedback,V=e.items,B=e.itemFilter,M=void 0===B?O(V)?T:S:B,F=e.label,j=e.labelClearSelectedItem,D=void 0===j?"fjern valgt":j,R=e.labelTooltip,K=e.listStyle,q=e.loadingText,G=e.noMatchesText,H=e.onChange,U=void 0===H?function(){}:H,z=e.placeholder,J=e.prepend,W=e.readOnly,Y=void 0!==W&&W,$=e.selectedItem,Q=e.selectOnBlur,X=void 0!==Q&&Q,Z=e.selectOnTab,ee=void 0!==Z&&Z,te=e.style,ne=e.variant,le=void 0===ne?"info":ne,ae=g(e,P),re=t.useState(null!==$),oe=re[0],ie=re[1],se=t.useState(0),ue=se[0],de=se[1],ce=t.useRef(null),pe=x(V,y),me=pe.items,fe=pe.loading,ge=pe.fetchItems,ve=t.useState(me),he=ve[0],be=ve[1],ye=function(e){var t=e.inputValue;return be(me.filter((function(e){return M(e,t)})))},Ie=function(e){var t=e.inputValue;O(V)&&ge(null!=t?t:_),ye({inputValue:null!=t?t:_})},Ce="undefined"!=typeof document&&(null==ce?void 0:ce.current)===(null==(i=document)?void 0:i.activeElement);t.useEffect((function(){ye({inputValue:Ve})}),[me]),t.useEffect((function(){null===Ne||Ce||(ie(!0),Ie({inputValue:_}),Be(_))}),[]);var Le=t.useCallback((function(e,t){var l=t.type,a=t.changes;switch(void 0!==a.highlightedIndex&&(null==a?void 0:a.highlightedIndex)>=0&&de(null==a?void 0:a.highlightedIndex),l){case n.useCombobox.stateChangeTypes.ItemClick:case n.useCombobox.stateChangeTypes.InputKeyDownEnter:case n.useCombobox.stateChangeTypes.InputBlur:return Ie({inputValue:_}),f({},a,{inputValue:_});case n.useCombobox.stateChangeTypes.ControlledPropUpdatedSelectedItem:return null===a.selectedItem||Ce||ie(!0),Ie({inputValue:_}),f({},a,{inputValue:_});case n.useCombobox.stateChangeTypes.InputChange:var r,o=/^\s+/g,i=" "===a.inputValue;return null!=(r=a.inputValue)&&r.match(o)?(Be(a.inputValue.replace(o,_)),i&&(_e(),xe&&void 0!==a.highlightedIndex&&U(he[a.highlightedIndex]))):(Ie({inputValue:a.inputValue}),Ae(0),de(0)),a;default:return a}}),[ge,ye]),we=n.useCombobox(f({defaultHighlightedIndex:ue,items:he,itemToString:k,selectedItem:$,stateReducer:Le,onStateChange:function(e){var t=e.selectedItem;switch(e.type){case n.useCombobox.stateChangeTypes.InputBlur:if(!X)break;case n.useCombobox.stateChangeTypes.InputKeyDownEnter:case n.useCombobox.stateChangeTypes.ItemClick:if(void 0===t)return;U(null!=t?t:null)}},getA11yStatusMessage:function(e){return A(f({},e,{resultCount:he.length}))}},ae)),xe=we.isOpen,_e=we.openMenu,Se=we.getToggleButtonProps,Te=we.getLabelProps,ke=we.getMenuProps,Ee=we.getInputProps,Oe=we.highlightedIndex,Ae=we.setHighlightedIndex,Pe=we.getItemProps,Ne=we.selectedItem,Ve=we.inputValue,Be=we.setInputValue,Me=a.useFloating({placement:"bottom-start",open:xe,middleware:[a.offset(o.space.extraSmall2),a.flip()]}),Fe=Me.refs,je=Me.floatingStyles,De=Me.elements,Re=Me.update;return t.useEffect((function(){if(xe&&De.reference&&De.floating)return a.autoUpdate(De.reference,De.floating,Re)}),[xe,De,Re]),t.createElement(r.BaseFormControl,f({append:t.createElement(C,{ariaLabelCloseList:d,ariaLabelOpenList:c,clearable:h,labelClearSelectedItems:D,disabled:Y||L,focusable:!1,getToggleButtonProps:Se,isOpen:xe,loading:fe,loadingText:q,onClear:function(){var e;U(null),Be(_),null==(e=ce.current)||e.focus(),Ie({inputValue:Ve}),ie(!1)},selectedItems:[Ne]}),className:l("eds-dropdown","eds-dropdown--searchable",m,{"eds-dropdown--has-tooltip":void 0!==R}),disabled:L,disableLabelAnimation:E,feedback:N,isFilled:null!==Ne||Ve!==_,label:F,labelId:Te().id,labelProps:Te(),labelTooltip:R,onClick:function(e){var t;e.target===e.currentTarget&&(null==(t=ce.current)||t.focus())},prepend:J,readOnly:Y,ref:Fe.setReference,style:te,variant:le},ae),t.createElement("span",{className:l("eds-dropdown--searchable__selected-item",{"eds-dropdown--searchable__selected-item--hidden":!oe}),"aria-hidden":"true",onClick:function(){var e;null==(e=ce.current)||e.focus(),_e()}},oe?null==Ne?void 0:Ne.label:""),t.createElement("input",f({className:l("eds-dropdown__input eds-form-control",{"eds-dropdown__input--hidden":oe}),disabled:Y||L,placeholder:null!=(s=null==Ne?void 0:Ne.label)?s:z},Ee({onBlur:function(){null!==Ne&&ie(!0)},onFocus:function(){ie(!1)},onKeyDown:function(e){ee&&xe&&"Tab"===e.key&&(null==U||U(he[Oe]))},ref:ce}))),t.createElement(b,{ariaLabelChosenSingular:u,ariaLabelSelectedItem:p,floatingStyles:je,getItemProps:Pe,getMenuProps:ke,highlightedIndex:Oe,isOpen:xe,listItems:he,style:K,setListRef:Fe.setFloating,loading:fe,loadingText:q,noMatchesText:G,selectedItems:null!==Ne?[Ne]:[]}))};
|
|
2
2
|
//# sourceMappingURL=dropdown.cjs.production.min.js.map
|