@esri/calcite-components
Version:
Web Components for Esri's Calcite Design System.
1 lines • 4.57 kB
JavaScript
System.register(["./p-c97dd66b.system.js","./p-466a0799.system.js","./p-597da005.system.js","./p-482ec054.system.js","./p-94d2ed32.system.js"],(function(e){"use strict";var t,i,r,n,a,l,s,u,c;return{setters:[function(e){t=e.h;i=e.H},function(e){r=e.f;n=e.c;a=e.g;l=e.a},function(e){s=e.d},function(e){u=e.g},function(e){c=e.C}],execute:function(){e({a:h,b:m,c:v,d:O,e:p,f:I,g:w,h:A,i:d,j:E,k:b,m:f,r:S,s:j});function f(){this.setUpItems();this.setUpFilter()}var o=["ArrowUp","ArrowDown"];function d(){this.setUpItems();this.setUpFilter();this.emitCalciteListChange=s(y.bind(this),0)}function h(){this.observer.observe(this.el,{childList:true,subtree:true})}function v(){this.observer.disconnect()}function m(e){var t=this.selectedValues;var i=e.detail,r=i.item,n=i.value,a=i.selected,l=i.shiftPressed;if(a){if(!this.multiple){this.deselectSiblingItems(r)}if(this.multiple&&l){this.selectSiblings(r)}t.set(n,r)}else{t.delete(n);if(this.multiple&&l){this.selectSiblings(r,true)}}if(!this.multiple){C(r,a)}this.lastSelectedItem=r;this.emitCalciteListChange()}function p(e){e.stopPropagation();var t=e.detail.oldValue;var i=this.selectedValues;if(i.has(t)){var r=i.get(t);i.delete(t);i.set(e.detail.newValue,r)}}function g(e){return!!o.find((function(t){return t===e}))}function b(e){var t=e.key,i=e.target;if(!g(t)){return}var n=this,a=n.items,l=n.multiple;var s=a.length;var c=a.indexOf(i);if(!s||c===-1){return}e.preventDefault();var f=u(c+(t==="ArrowUp"?-1:1),s);var o=a[f];C(o,true);r(o);if(!l){o.selected=true}}function y(){this.calciteListChange.emit(this.selectedValues)}function S(e){if(e.defaultPrevented){return}var t=e.target;var i=this.selectedValues;if(t.parentElement.tagName==="CALCITE-PICK-LIST-GROUP"){t.parentElement.remove();Array.from(t.parentElement.children).forEach((function(e){return i.delete(e.value)}))}else{t.remove();i.delete(t.value)}this.emitCalciteListChange()}function C(e,t){if(t){e.removeAttribute("tabindex")}else{e.setAttribute("tabindex","-1")}}function E(){var e=this,t=e.multiple,i=e.items;if(i.length===0){return}if(t){return i[0].setFocus()}var r=i.find((function(e){return e.selected}));return(r?r:i[0]).setFocus()}function I(e){var t=this;this.items=Array.from(this.el.querySelectorAll(e));var i=false;var r=this.items;r.forEach((function(e){e.icon=t.getIconType();if(!t.multiple){e.disableDeselect=true;C(e,false)}if(e.selected){i=true;C(e,true);t.selectedValues.set(e.value,e)}}));var n=r[0];if(!i&&n){C(n,true)}}function O(e){var t=this;this.items.forEach((function(i){if(i.value!==e.value){i.toggleSelected(false);if(t.selectedValues.has(i.value)){t.selectedValues.delete(i.value)}}}))}function j(e,t){var i=this;if(t===void 0){t=false}if(!this.lastSelectedItem){return}var r=this.items;var n=r.findIndex((function(e){return e.value===i.lastSelectedItem.value}));var a=r.findIndex((function(t){return t.value===e.value}));r.slice(Math.min(n,a),Math.max(n,a)).forEach((function(e){e.toggleSelected(!t);if(!t){i.selectedValues.set(e.value,e)}else{i.selectedValues.delete(e.value)}}))}var V;function A(e){var t=e.detail;var i=t.map((function(e){return e.value}));if(!V){V=new Set}var r=this.items.filter((function(e){var t=e.parentElement;var r=t.matches("calcite-pick-list-group");if(r){V.add(t)}var n=i.includes(e.value);e.hidden=!n;return n}));V.forEach((function(e){var t=r.some((function(t){return e.contains(t)}));e.hidden=!t;if(!t){return}var i=n(e,"parent-item");if(i){i.hidden=false;if(r.includes(i)){Array.from(e.children).forEach((function(e){return e.hidden=false}))}}}));V.clear()}function w(){return this.items.map((function(e){return{label:e.label,description:e.description,metadata:e.metadata,value:e.value}}))}var x=undefined&&undefined.__rest||function(e,t){var i={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0)i[r]=e[r];if(e!=null&&typeof Object.getOwnPropertySymbols==="function")for(var n=0,r=Object.getOwnPropertySymbols(e);n<r.length;n++){if(t.indexOf(r[n])<0&&Object.prototype.propertyIsEnumerable.call(e,r[n]))i[r[n]]=e[r[n]]}return i};var P=e("L",(function(e){var r;var n=e.props,s=n.disabled,u=n.loading,f=n.filterEnabled,o=n.dataForFilter,d=n.handleFilter,h=n.filterPlaceholder,v=n.el,m=x(e,["props"]);var p=t("slot",null);return t(i,Object.assign({"aria-busy":u.toString(),"aria-disabled":s.toString(),role:"menu"},m),t("section",null,t("header",{class:(r={},r[c.sticky]=true,r)},f?t("calcite-filter",{"aria-label":h,data:o,dir:a(v),onCalciteFilterChange:d,placeholder:h}):null,t("slot",{name:"menu-actions"})),u||s?t("calcite-scrim",{loading:u,theme:l(v)},p):p))}))}}}));