@zendeskgarden/container-selection
Advanced tools
Comparing version 1.1.4 to 1.1.5
@@ -6,2 +6,13 @@ # Change Log | ||
## [1.1.5](https://github.com/zendeskgarden/react-containers/compare/@zendeskgarden/container-selection@1.1.4...@zendeskgarden/container-selection@1.1.5) (2019-09-13) | ||
### Bug Fixes | ||
* **selection:** reducer number of renders when controlled ([#100](https://github.com/zendeskgarden/react-containers/issues/100)) ([4e39d72](https://github.com/zendeskgarden/react-containers/commit/4e39d72)) | ||
## [1.1.4](https://github.com/zendeskgarden/react-containers/compare/@zendeskgarden/container-selection@1.1.3...@zendeskgarden/container-selection@1.1.4) (2019-09-05) | ||
@@ -8,0 +19,0 @@ |
@@ -6,3 +6,3 @@ /*! | ||
*/ | ||
!function(e,t){for(var r in t)e[r]=t[r]}(exports,function(e){var t={};function r(n){if(t[n])return t[n].exports;var o=t[n]={i:n,l:!1,exports:{}};return e[n].call(o.exports,o,o.exports,r),o.l=!0,o.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=3)}([function(e,t){e.exports=require("@zendeskgarden/container-utilities")},function(e,t){e.exports=require("prop-types")},function(e,t){e.exports=require("react")},function(e,t,r){"use strict";r.r(t);var n=r(2),o=r(0),i={HORIZONTAL:"horizontal",VERTICAL:"vertical",BOTH:"both"},c={FOCUS:"FOCUS",INCREMENT:"INCREMENT",DECREMENT:"DECREMENT",HOME:"HOME",END:"END",MOUSE_SELECT:"MOUSE_SELECT",KEYBOARD_SELECT:"KEYBOARD_SELECT",EXIT_WIDGET:"EXIT_WIDGET"};function u(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function l(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=[],n=!0,o=!1,i=void 0;try{for(var c,u=e[Symbol.iterator]();!(n=(c=u.next()).done)&&(r.push(c.value),!t||r.length!==t);n=!0);}catch(e){o=!0,i=e}finally{try{n||null==u.return||u.return()}finally{if(o)throw i}}return r}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function s(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?a(r,!0).forEach(function(t){d(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):a(r).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function d(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function f(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.direction,r=void 0===t?i.HORIZONTAL:t,a=e.defaultFocusedIndex,f=void 0===a?0:a,E=e.defaultSelectedIndex,p=e.rtl,O=e.selectedItem,y=e.focusedItem,m=e.onSelect,v=e.onFocus,b=[],I=[],C=l(Object(n.useReducer)(function(e,t){return function(e,t,r){var n=r.focusedItem,i=r.selectedItem,u=r.onFocus,l=r.onSelect,a=Object(o.getControlledValue)(n,e.focusedItem),d=Object(o.getControlledValue)(i,e.selectedItem),f=void 0===a?t.items.indexOf(d):t.items.indexOf(a);switch(t.type){case c.FOCUS:return u?(u(t.payload),s({},e)):s({},e,{focusedItem:t.payload});case c.INCREMENT:var E=t.items[(f+1)%t.items.length];return u?(u(E),s({},e)):s({},e,{focusedItem:E});case c.DECREMENT:var p=t.items[(f+t.items.length-1)%t.items.length];return u?(u(p),s({},e)):s({},e,{focusedItem:p});case c.HOME:return u?(u(t.items[0]),s({},e)):s({},e,{focusedItem:t.items[0]});case c.END:return u?(u(t.items[t.items.length-1]),s({},e)):s({},e,{focusedItem:t.items[t.items.length-1]});case c.MOUSE_SELECT:var O=!1,y=!1;if(l&&(l(t.payload),O=!0),u&&(u(void 0),y=!0),y&&O)return s({},e);var m=s({},e);return O||(m.selectedItem=t.payload),y||(m.focusedItem=void 0),m;case c.KEYBOARD_SELECT:return l?(l(t.payload),s({},e)):s({},e,{selectedItem:t.payload});case c.EXIT_WIDGET:return u?(u(void 0),e):s({},e,{focusedItem:void 0});default:return e}}(e,t,{onSelect:m,onFocus:v,selectedItem:O,focusedItem:y})},{selectedItem:O,focusedItem:y}),2),T=C[0],S=C[1],g=Object(o.getControlledValue)(y,T.focusedItem),D=Object(o.getControlledValue)(O,T.selectedItem);Object(n.useEffect)(function(){if(void 0!==g){var e=I.indexOf(g);b[e]&&b[e].current.focus()}},[g]),Object(n.useEffect)(function(){void 0===O&&void 0!==E&&S({type:c.KEYBOARD_SELECT,payload:I[E],items:I})},[]);return{focusedItem:g,selectedItem:D,getItemProps:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.selectedAriaKey,l=void 0===n?"aria-selected":n,a=t.role,E=void 0===a?"option":a,O=t.onFocus,y=t.onKeyDown,m=t.onClick,v=t.item,C=t.focusRef,T=t.refKey,j=void 0===T?"ref":T,h=u(t,["selectedAriaKey","role","onFocus","onKeyDown","onClick","item","focusRef","refKey"]),R=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"getItemProps";if(void 0===v)throw new Error('Accessibility Error: You must provide an "item" option to "'.concat(R,'()"'));if(void 0===C)throw new Error('Accessibility Error: You must provide a "focusRef" option to "'.concat(R,'()"'));b.push(C),I.push(v);var _=D===v,N=void 0===g?_:g===v,x=N||void 0===D&&void 0===g&&I.indexOf(v)===f?0:-1,w=r===i.VERTICAL||r===i.BOTH,M=r===i.HORIZONTAL||r===i.BOTH;return s((d(e={role:E,tabIndex:x},l,_),d(e,j,C),d(e,"onFocus",Object(o.composeEventHandlers)(O,function(){S({type:c.FOCUS,payload:v,items:I})})),d(e,"onBlur",function(e){0===e.target.tabIndex&&S({type:c.EXIT_WIDGET,items:I})}),d(e,"onClick",Object(o.composeEventHandlers)(m,function(){S({type:c.MOUSE_SELECT,payload:v,items:I})})),d(e,"onKeyDown",Object(o.composeEventHandlers)(y,function(e){e.keyCode===o.KEY_CODES.UP&&w||e.keyCode===o.KEY_CODES.LEFT&&M?(S(p?{type:c.INCREMENT,items:I}:{type:c.DECREMENT,items:I}),e.preventDefault()):e.keyCode===o.KEY_CODES.DOWN&&w||e.keyCode===o.KEY_CODES.RIGHT&&M?(S(p?{type:c.DECREMENT,items:I}:{type:c.INCREMENT,items:I}),e.preventDefault()):e.keyCode===o.KEY_CODES.HOME?(S({type:c.HOME,items:I}),e.preventDefault()):e.keyCode===o.KEY_CODES.END?(S({type:c.END,items:I}),e.preventDefault()):e.keyCode!==o.KEY_CODES.SPACE&&e.keyCode!==o.KEY_CODES.ENTER||(S({type:c.KEYBOARD_SELECT,payload:v,items:I}),e.preventDefault())})),e),h)},getContainerProps:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.role,n=void 0===t?"listbox":t,o=u(e,["role"]);return s({role:n,"aria-orientation":r===i.BOTH?void 0:r,"data-garden-container-id":"selection","data-garden-container-version":"1.1.4"},o)}}}var E=r(1),p=r.n(E);function O(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function y(e){var t=e.children,r=e.render;return(void 0===r?t:r)(f(O(e,["children","render"])))}y.propTypes={children:p.a.func,render:p.a.func,rtl:p.a.bool,direction:p.a.oneOf([i.HORIZONTAL,i.VERTICAL,i.BOTH]),defaultFocusedIndex:p.a.number,focusedItem:p.a.any,selectedItem:p.a.any,onSelect:p.a.func,onFocus:p.a.func},r.d(t,"useSelection",function(){return f}),r.d(t,"SelectionContainer",function(){return y})}])); | ||
!function(e,t){for(var o in t)e[o]=t[o]}(exports,function(e){var t={};function o(n){if(t[n])return t[n].exports;var r=t[n]={i:n,l:!1,exports:{}};return e[n].call(r.exports,r,r.exports,o),r.l=!0,r.exports}return o.m=e,o.c=t,o.d=function(e,t,n){o.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},o.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.t=function(e,t){if(1&t&&(e=o(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(o.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)o.d(n,r,function(t){return e[t]}.bind(null,r));return n},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="",o(o.s=3)}([function(e,t){e.exports=require("@zendeskgarden/container-utilities")},function(e,t){e.exports=require("prop-types")},function(e,t){e.exports=require("react")},function(e,t,o){"use strict";o.r(t);var n=o(2),r=o(0),c={HORIZONTAL:"horizontal",VERTICAL:"vertical",BOTH:"both"},u={FOCUS:"FOCUS",INCREMENT:"INCREMENT",DECREMENT:"DECREMENT",HOME:"HOME",END:"END",MOUSE_SELECT:"MOUSE_SELECT",KEYBOARD_SELECT:"KEYBOARD_SELECT",EXIT_WIDGET:"EXIT_WIDGET"};function i(e,t){if(null==e)return{};var o,n,r=function(e,t){if(null==e)return{};var o,n,r={},c=Object.keys(e);for(n=0;n<c.length;n++)o=c[n],t.indexOf(o)>=0||(r[o]=e[o]);return r}(e,t);if(Object.getOwnPropertySymbols){var c=Object.getOwnPropertySymbols(e);for(n=0;n<c.length;n++)o=c[n],t.indexOf(o)>=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(r[o]=e[o])}return r}function s(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if(!(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)))return;var o=[],n=!0,r=!1,c=void 0;try{for(var u,i=e[Symbol.iterator]();!(n=(u=i.next()).done)&&(o.push(u.value),!t||o.length!==t);n=!0);}catch(e){r=!0,c=e}finally{try{n||null==i.return||i.return()}finally{if(r)throw c}}return o}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function l(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),o.push.apply(o,n)}return o}function d(e){for(var t=1;t<arguments.length;t++){var o=null!=arguments[t]?arguments[t]:{};t%2?l(o,!0).forEach(function(t){a(e,t,o[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):l(o).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(o,t))})}return e}function a(e,t,o){return t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function f(e,t){switch(t.type){case u.FOCUS:return t.onFocus?(t.payload!==t.focusedItem&&t.onFocus(t.payload),e):d({},e,{focusedItem:t.payload});case u.INCREMENT:var o=Object(r.getControlledValue)(t.focusedItem,e.focusedItem),n=Object(r.getControlledValue)(t.selectedItem,e.selectedItem),c=void 0===o?t.items.indexOf(n):t.items.indexOf(o),i=t.items[(c+1)%t.items.length];return t.onFocus?(t.onFocus(i),e):d({},e,{focusedItem:i});case u.DECREMENT:var s=Object(r.getControlledValue)(t.focusedItem,e.focusedItem),l=Object(r.getControlledValue)(t.selectedItem,e.selectedItem),a=void 0===s?t.items.indexOf(l):t.items.indexOf(s),f=t.items[(a+t.items.length-1)%t.items.length];return t.onFocus?(t.onFocus(f),e):d({},e,{focusedItem:f});case u.HOME:return t.onFocus?(t.onFocus(t.items[0]),e):d({},e,{focusedItem:t.items[0]});case u.END:return t.onFocus?(t.onFocus(t.items[t.items.length-1]),e):d({},e,{focusedItem:t.items[t.items.length-1]});case u.MOUSE_SELECT:var E=!1,p=!1;if(t.onSelect&&(t.onSelect(t.payload),E=!0),t.onFocus&&(t.onFocus(void 0),p=!0),p&&E)return e;var O=d({},e);return E||(O.selectedItem=t.payload),p||(O.focusedItem=void 0),O;case u.KEYBOARD_SELECT:return t.onSelect?(t.onSelect(t.payload),e):d({},e,{selectedItem:t.payload});case u.EXIT_WIDGET:return t.onFocus?(t.onFocus(void 0),e):d({},e,{focusedItem:void 0});default:return e}}function E(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.direction,o=void 0===t?c.HORIZONTAL:t,l=e.defaultFocusedIndex,E=void 0===l?0:l,p=e.defaultSelectedIndex,O=e.rtl,m=e.selectedItem,y=e.focusedItem,v=e.onSelect,b=e.onFocus,I=[],C=[],S=s(Object(n.useReducer)(f,{selectedItem:m,focusedItem:y}),2),g=S[0],T=S[1],j=Object(r.getControlledValue)(y,g.focusedItem),D=Object(r.getControlledValue)(m,g.selectedItem);Object(n.useEffect)(function(){if(void 0!==j){var e=C.indexOf(j);I[e]&&I[e].current.focus()}},[j]),Object(n.useEffect)(function(){void 0===m&&void 0!==p&&T({type:u.KEYBOARD_SELECT,payload:C[p],items:C,onSelect:v})},[]);return{focusedItem:j,selectedItem:D,getItemProps:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=t.selectedAriaKey,s=void 0===n?"aria-selected":n,l=t.role,f=void 0===l?"option":l,p=t.onFocus,S=t.onKeyDown,g=t.onClick,F=t.item,h=t.focusRef,R=t.refKey,_=void 0===R?"ref":R,x=i(t,["selectedAriaKey","role","onFocus","onKeyDown","onClick","item","focusRef","refKey"]),N=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"getItemProps";if(void 0===F)throw new Error('Accessibility Error: You must provide an "item" option to "'.concat(N,'()"'));if(void 0===h)throw new Error('Accessibility Error: You must provide a "focusRef" option to "'.concat(N,'()"'));I.push(h),C.push(F);var w=D===F,M=void 0===j?w:j===F,P=M||void 0===D&&void 0===j&&C.indexOf(F)===E?0:-1,A=o===c.VERTICAL||o===c.BOTH,K=o===c.HORIZONTAL||o===c.BOTH;return d((a(e={role:f,tabIndex:P},s,w),a(e,_,h),a(e,"onFocus",Object(r.composeEventHandlers)(p,function(){T({type:u.FOCUS,payload:F,items:C,focusedItem:y,onFocus:b})})),a(e,"onBlur",function(e){0===e.target.tabIndex&&T({type:u.EXIT_WIDGET,items:C,onFocus:b})}),a(e,"onClick",Object(r.composeEventHandlers)(g,function(){T({type:u.MOUSE_SELECT,payload:F,items:C,onSelect:v,onFocus:b})})),a(e,"onKeyDown",Object(r.composeEventHandlers)(S,function(e){e.keyCode===r.KEY_CODES.UP&&A||e.keyCode===r.KEY_CODES.LEFT&&K?(T(O?{type:u.INCREMENT,items:C,focusedItem:y,selectedItem:m,onFocus:b}:{type:u.DECREMENT,items:C,focusedItem:y,selectedItem:m,onFocus:b}),e.preventDefault()):e.keyCode===r.KEY_CODES.DOWN&&A||e.keyCode===r.KEY_CODES.RIGHT&&K?(T(O?{type:u.DECREMENT,items:C,focusedItem:y,selectedItem:m,onFocus:b}:{type:u.INCREMENT,items:C,focusedItem:y,selectedItem:m,onFocus:b}),e.preventDefault()):e.keyCode===r.KEY_CODES.HOME?(T({type:u.HOME,items:C,onFocus:b}),e.preventDefault()):e.keyCode===r.KEY_CODES.END?(T({type:u.END,items:C,onFocus:b}),e.preventDefault()):e.keyCode!==r.KEY_CODES.SPACE&&e.keyCode!==r.KEY_CODES.ENTER||(T({type:u.KEYBOARD_SELECT,payload:F,items:C,onSelect:v}),e.preventDefault())})),e),x)},getContainerProps:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.role,n=void 0===t?"listbox":t,r=i(e,["role"]);return d({role:n,"aria-orientation":o===c.BOTH?void 0:o,"data-garden-container-id":"selection","data-garden-container-version":"1.1.5"},r)}}}var p=o(1),O=o.n(p);function m(e,t){if(null==e)return{};var o,n,r=function(e,t){if(null==e)return{};var o,n,r={},c=Object.keys(e);for(n=0;n<c.length;n++)o=c[n],t.indexOf(o)>=0||(r[o]=e[o]);return r}(e,t);if(Object.getOwnPropertySymbols){var c=Object.getOwnPropertySymbols(e);for(n=0;n<c.length;n++)o=c[n],t.indexOf(o)>=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(r[o]=e[o])}return r}function y(e){var t=e.children,o=e.render;return(void 0===o?t:o)(E(m(e,["children","render"])))}y.propTypes={children:O.a.func,render:O.a.func,rtl:O.a.bool,direction:O.a.oneOf([c.HORIZONTAL,c.VERTICAL,c.BOTH]),defaultFocusedIndex:O.a.number,focusedItem:O.a.any,selectedItem:O.a.any,onSelect:O.a.func,onFocus:O.a.func},o.d(t,"useSelection",function(){return E}),o.d(t,"SelectionContainer",function(){return y})}])); | ||
//# sourceMappingURL=index.js.map |
@@ -11,3 +11,3 @@ { | ||
}, | ||
"version": "1.1.4", | ||
"version": "1.1.5", | ||
"main": "./dist/index.js", | ||
@@ -21,3 +21,3 @@ "files": [ | ||
"dependencies": { | ||
"@zendeskgarden/container-utilities": "^0.1.1" | ||
"@zendeskgarden/container-utilities": "^0.1.2" | ||
}, | ||
@@ -42,3 +42,3 @@ "peerDependencies": { | ||
"zendeskgarden:src": "src/index.js", | ||
"gitHead": "8e7062266ffdc7baa0e84cc323bcc95533f8616d" | ||
"gitHead": "1cb6f552867d873fc28c15b69b0653fb16871900" | ||
} |
Sorry, the diff of this file is not supported yet
50511
37