{{olv-toolbar
  class='ui secondary menu no-margin'
  createNewButton=createNewButton
  enableCreateNewButton=(not readonly)
  refreshButton=refreshButton
  deleteButton=deleteButton
  colsConfigButton=colsConfigButton
  advLimitButton=advLimitButton
  enableFilters=enableFilters
  exportExcelButton=exportExcelButton
  showFilters=_showFilters
  showFiltersInModal=showFiltersInModal
  filters=filters
  toggleStateFilters=(action "toggleStateFilters")
  resetFilters=(action "resetFilters" this.attrs.resetFilters)
  filterButton=filterButton
  filterText=filterText
  buttonClass=buttonClass
  enableDeleteButton=(not readonly)
  inLookup=(eq componentMode "lookupform")
  componentName=componentName
  lookupComponentName=lookupComponentName
  modelController=currentController
  customButtonAction='customButtonAction'
  customButtons=customButtons
  editFormRoute=editFormRoute
  showConfigDialog="showConfigDialog"
  showAdvLimitDialog="showConfigDialog"
  confirmDeleteRows=confirmDeleteRows
  inHierarchicalMode=inHierarchicalMode
  inExpandMode=inExpandMode
  availableHierarchicalMode=_availableHierarchicalMode
  availableCollExpandMode=availableCollExpandMode
  switchHierarchicalMode=(action "switchHierarchicalMode")
  switchExpandMode=(action "switchExpandMode")
  readonly=readonly
  isUseVoiceTyping=isUseVoiceTyping
}}
{{#if (or (not inHierarchicalMode) hierarchyPaging)}}
  <div class="ui secondary menu no-margin nav-bar">
    <button
      type="button"
      class="ui {{unless colsConfigButton "disabled"}} button mobile-sorting-setting-button"
      title={{_mobileSortingSettingsCaption}}
      disabled={{not colsConfigButton}}
      {{action "showConfigDialog"}} >
        <i class={{_mobileSortingSettingsIcon}}></i>
        {{_mobileSortingSettingsCaption}}
    </button>
    <div class="right menu">
      <div class="ui basic buttons">
        {{#each _mobilePages as |page|}}
          {{#if (not page.isEllipsis)}}
            {{#if page.isCurrent}}
              <button type="button" class="ui disabled active button" disabled>{{page.number}}</button>
            {{else}}
              <button type="button" class="ui button" {{action "gotoPage" this.attrs.gotoPage page.number}}>{{page.number}}</button>
            {{/if}}
          {{/if}}
        {{/each}}
      </div>
      {{#if (gt _mobilePages.length 4)}}
        <div class="ui input nav-bar-search-page {{if (and searchPageValue searchPageButtonReadonly) 'error' }}">
          {{input
            type="number"
            min=_pages.firstObject.number
            max=_pages.lastObject.number
            placeholder=_mobilePages.lastObject.number
            enter=(action 'searchPageButtonAction' this.attrs.gotoPage)
            value=searchPageValue
          }}
          {{!-- TODO: I still do not understand why, but without this, in the Ember 2.x version, the form submitting is faster than processing the `enter` event. --}}
          {{input classNames=(array "hidden")}}
        </div>
      {{/if}}
    </div>
  </div>
{{/if}}
{{object-list-view
  placeholder=placeholder
  readonly=readonly
  columnsWidthAutoresize=columnsWidthAutoresize
  minAutoColumnWidth=minAutoColumnWidth
  buttonClass=buttonClass
  tableStriped=tableStriped
  customTableClass=customTableClass
  cellComponent=cellComponent
  singleColumnCellComponent=singleColumnCellComponent
  singleColumnHeaderTitle=singleColumnHeaderTitle
  createNewByPrototype=(action "createNewByPrototype")
  showValidationMessagesInRow=(and (not readonly) showValidationMessagesInRow)
  showAsteriskInRow=showAsteriskInRow
  showCheckBoxInRow=showCheckBoxInRow
  showEditButtonInRow=showEditButtonInRow
  showPrototypeButtonInRow=showPrototypeButtonInRow
  showDeleteButtonInRow=showDeleteButtonInRow
  showEditMenuItemInRow=showEditMenuItemInRow
  showPrototypeMenuItemInRow=showPrototypeMenuItemInRow
  showDeleteMenuItemInRow=showDeleteMenuItemInRow
  sendMenuItemAction=(action "sendMenuItemAction")
  menuInRowAdditionalItems=menuInRowAdditionalItems
  rowClickable=(and (not readonly) rowClickable)
  orderable=orderable
  sorting=sorting
  immediateDelete=true
  modelName=modelName
  modelProjection=modelProjection
  content=content
  sortByColumn=(action (if this.attrs.sortByColumn this.attrs.sortByColumn 'sortByColumn'))
  addColumnToSorting=(action (if this.attrs.addColumnToSorting this.attrs.addColumnToSorting 'addColumnToSorting'))
  enableFilters=enableFilters
  showFilters=_showFilters
  showFiltersInModal=showFiltersInModal
  filters=filters
  isUseVoiceTyping=isUseVoiceTyping
  applyFilters=(action (if applyFilters applyFilters "applyFilters"))
  componentForFilter=componentForFilter
  componentForFilterByCondition=componentForFilterByCondition
  conditionsByType=conditionsByType
  filterByAnyMatch=(action (if this.attrs.filterByAnyMatch this.attrs.filterByAnyMatch 'filterByAnyMatch'))
  filterByAnyWord=filterByAnyWord
  filterByAllWords=filterByAllWords
  configurateRow=this.attrs.configurateRow
  configurateSelectedRows=this.attrs.configurateSelectedRows
  confirmDeleteRow=confirmDeleteRow
  beforeDeleteRecord=beforeDeleteRecord
  beforeDeleteAllRecords=beforeDeleteAllRecords
  action='objectListViewRowClick'
  componentName=componentName
  allowColumnResize=allowColumnResize
  selectedRecord=selectedRecord
  notUseUserSettings=notUseUserSettings
  hierarchicalIndent=hierarchicalIndent
  inHierarchicalMode=inHierarchicalMode
  inExpandMode=inExpandMode
  disableHierarchicalMode=(if hierarchyByAttribute true disableHierarchicalMode)
  loadRecords=(action "loadRecords")
  availableHierarchicalMode=(action "availableHierarchicalMode")
  hierarchyAttribute=hierarchyAttribute
  useRowByRowLoading=useRowByRowLoading
  useRowByRowLoadingProgress=useRowByRowLoadingProgress
  eventsBus=eventsBus
  onEditForm=onEditForm
  customButtonInRowAction="customButtonInRowAction"
  customButtonsInRow=customButtonsInRow
  defaultSortingButton=defaultSortingButton
  defaultLeftPadding=defaultLeftPadding
  overflowedComponents=overflowedComponents
  fixedHeader=fixedHeader
  recordsTotalCount=recordsTotalCount
}}
