code: function _openPane(parentIndex, indexOrKey, checkIsLeaf) {
              if (angular.isDefined(toggledPanes[parentIndex])) {
                  return false;
              }
  
              var pane = pane || lxSelect.choicesViewSize === 'large' ? lxSelect.panes[parentIndex] : lxSelect.openedPanes[parentIndex];
  
              if (angular.isUndefined(pane)) {
                  return false;
              }
  
              var key = indexOrKey;
              if (angular.isObject(pane) && angular.isNumber(key)) {
                  key = (Object.keys(pane) || [])[key];
              }
  
              if (checkIsLeaf && lxSelect.isLeaf(pane[key])) {
                  return false;
              }
  
              if (lxSelect.choicesViewSize === 'large') {
                  lxSelect.panes.push(pane[key]);
              } else {
                  lxSelect.openedPanes.push(pane[key]);
              }
  
              toggledPanes[parentIndex] = {
                  key: key,
                  position: lxSelect.choicesViewSize === 'large' ? lxSelect.panes.length - 1 : lxSelect.openedPanes.length - 1,
                  path: (parentIndex === 0) ? key : toggledPanes[parentIndex - 1].path + '.' + key,
              };
  
              return true;
          }
docs: Open a pane.
  If the pane is already opened, don't do anything.
  
  @param  {number}        parentIndex         The index of the parent of the pane to open.
  @param  {number|string} indexOrKey          The index or the name of the pane to open.
  @param  {boolean}       [checkIsLeaf=false] Check if the pane we want to open is in fact a leaf.
  In the case of a leaf, don't open it.
  @return {boolean}       Indicates if the panel has been opened or not.