           return {
             isPrevNextButton: true,
             text: @prevText(),
-            aria: @prevPageAria().replace('$page', currentPage - 1),
+            aria: hx.userfacingText.format(@prevPageAria(), { page: currentPage - 1 }),
             onClick: () => selectPage.call(this, 'user', currentPage - 1),
           }
         if item is 'next'
           return {
             isPrevNextButton: true,
             text: @nextText(),
-            aria: @nextPageAria().replace('$page', currentPage + 1),
+            aria: hx.userfacingText.format(@nextPageAria(), { page: currentPage + 1 }),
             onClick: () => selectPage.call(this, 'user', currentPage + 1),
           }
         if item is '...'

      visibleCount: 10,
      updatePageOnSelect: true,
      paginatorAria: hx.userFacingText('paginator', 'paginatorAria'),
      currentPageAria: hx.userFacingText('paginator', 'currentPageAria'),
      gotoPageAria: hx.userFacingText('paginator', 'gotoPageAria'),
      prevPageAria: hx.userFacingText('paginator', 'prevPageAria'),
      nextPageAria: hx.userFacingText('paginator', 'nextPageAria'),
      prevText: hx.userFacingText('paginator', 'prev'),
      nextText: hx.userFacingText('paginator', 'next'),
      v2Features: {

        aria = if selected then @currentPageAria() else @gotoPageAria()
        return {
          text: numericItem,
          aria: hx.userfacingText.format(aria, { page: numericItem }),
          selected: selected,
          onClick: () => selectPage.call(this, 'user', numericItem)
        }
