Skip to content
This repository was archived by the owner on May 29, 2019. It is now read-only.

Commit 9b24e1d

Browse files
committed
feat(pager): remove replace usage
- Remove `replace: true usage BREAKING CHANGE: This removes `replace: true` usage from the pager, which causes a slight usage change - see documentation examples for new usage. Closes #5991
1 parent 5f4eedd commit 9b24e1d

File tree

4 files changed

+17
-18
lines changed

4 files changed

+17
-18
lines changed

src/pager/docs/demo.html

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<div ng-controller="PagerDemoCtrl">
22
<h4>Pager</h4>
33
<pre>You are currently on page {{currentPage}}</pre>
4-
<uib-pager total-items="totalItems" ng-model="currentPage"></uib-pager>
4+
<ul uib-pager total-items="totalItems" ng-model="currentPage"></ul>
55
</div>

src/pager/pager.js

+2-1
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,14 @@ angular.module('ui.bootstrap.pager', ['ui.bootstrap.paging'])
2222
ngDisabled: '='
2323
},
2424
require: ['uibPager', '?ngModel'],
25+
restrict: 'A',
2526
controller: 'UibPagerController',
2627
controllerAs: 'pager',
2728
templateUrl: function(element, attrs) {
2829
return attrs.templateUrl || 'uib/template/pager/pager.html';
2930
},
30-
replace: true,
3131
link: function(scope, element, attrs, ctrls) {
32+
element.addClass('pager');
3233
var paginationCtrl = ctrls[0], ngModelCtrl = ctrls[1];
3334

3435
if (!ngModelCtrl) {

src/pager/test/pager.spec.js

+12-12
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ describe('pager directive', function() {
1010
$document = _$document_;
1111
$templateCache = _$templateCache_;
1212
body = $document.find('body');
13-
element = $compile('<uib-pager total-items="total" ng-model="currentPage"></uib-pager>')($rootScope);
13+
element = $compile('<ul uib-pager total-items="total" ng-model="currentPage"></ul>')($rootScope);
1414
$rootScope.$digest();
1515
}));
1616

@@ -56,7 +56,7 @@ describe('pager directive', function() {
5656
it('exposes the controller on the template', function() {
5757
$templateCache.put('uib/template/pager/pager.html', '<div>{{pager.text}}</div>');
5858

59-
element = $compile('<uib-pager></uib-pager>')($rootScope);
59+
element = $compile('<ul uib-pager></ul uib-pager>')($rootScope);
6060
$rootScope.$digest();
6161

6262
var ctrl = element.controller('uibPager');
@@ -65,7 +65,7 @@ describe('pager directive', function() {
6565
ctrl.text = 'foo';
6666
$rootScope.$digest();
6767

68-
expect(element.html()).toBe('foo');
68+
expect(element.html()).toBe('<div class="ng-binding">foo</div>');
6969
});
7070

7171
it('disables the "previous" link if current page is 1', function() {
@@ -102,7 +102,7 @@ describe('pager directive', function() {
102102

103103
it('executes the `ng-change` expression when an element is clicked', function() {
104104
$rootScope.selectPageHandler = jasmine.createSpy('selectPageHandler');
105-
element = $compile('<uib-pager total-items="total" ng-model="currentPage" ng-change="selectPageHandler()"></uib-pager>')($rootScope);
105+
element = $compile('<ul uib-pager total-items="total" ng-model="currentPage" ng-change="selectPageHandler()"></ul>')($rootScope);
106106
$rootScope.$digest();
107107

108108
clickPaginationEl(-1);
@@ -147,16 +147,16 @@ describe('pager directive', function() {
147147
it('allows custom templates', function() {
148148
$templateCache.put('foo/bar.html', '<div>baz</div>');
149149

150-
element = $compile('<uib-pager template-url="foo/bar.html"></uib-pager>')($rootScope);
150+
element = $compile('<ul uib-pager template-url="foo/bar.html"></ul>')($rootScope);
151151
$rootScope.$digest();
152152

153-
expect(element.html()).toBe('baz');
153+
expect(element.html()).toBe('<div>baz</div>');
154154
});
155155

156156
describe('`items-per-page`', function() {
157157
beforeEach(function() {
158158
$rootScope.perpage = 5;
159-
element = $compile('<uib-pager total-items="total" items-per-page="perpage" ng-model="currentPage"></uib-pager>')($rootScope);
159+
element = $compile('<ul uib-pager total-items="total" items-per-page="perpage" ng-model="currentPage"></ul>')($rootScope);
160160
$rootScope.$digest();
161161
});
162162

@@ -190,7 +190,7 @@ describe('pager directive', function() {
190190
describe('`num-pages`', function() {
191191
beforeEach(function() {
192192
$rootScope.numpg = null;
193-
element = $compile('<uib-pager total-items="total" ng-model="currentPage" num-pages="numpg"></uib-pager>')($rootScope);
193+
element = $compile('<ul uib-pager total-items="total" ng-model="currentPage" num-pages="numpg"></ul>')($rootScope);
194194
$rootScope.$digest();
195195
});
196196

@@ -206,7 +206,7 @@ describe('pager directive', function() {
206206
uibPagerConfig.previousText = 'PR';
207207
uibPagerConfig.nextText = 'NE';
208208
uibPagerConfig.align = false;
209-
element = $compile('<uib-pager total-items="total" ng-model="currentPage"></uib-pager>')($rootScope);
209+
element = $compile('<ul uib-pager total-items="total" ng-model="currentPage"></ul>')($rootScope);
210210
$rootScope.$digest();
211211
}));
212212
afterEach(inject(function(uibPagerConfig) {
@@ -227,7 +227,7 @@ describe('pager directive', function() {
227227

228228
describe('override configuration from attributes', function() {
229229
beforeEach(function() {
230-
element = $compile('<uib-pager align="false" previous-text="<" next-text=">" total-items="total" ng-model="currentPage"></uib-pager>')($rootScope);
230+
element = $compile('<ul uib-pager align="false" previous-text="<" next-text=">" total-items="total" ng-model="currentPage"></ul>')($rootScope);
231231
$rootScope.$digest();
232232
});
233233

@@ -248,7 +248,7 @@ describe('pager directive', function() {
248248
it('changes "previous" & "next" text from interpolated attributes', function() {
249249
$rootScope.previousText = '<<';
250250
$rootScope.nextText = '>>';
251-
element = $compile('<uib-pager align="false" previous-text="{{previousText}}" next-text="{{nextText}}" total-items="total" ng-model="currentPage"></uib-pager>')($rootScope);
251+
element = $compile('<ul uib-pager align="false" previous-text="{{previousText}}" next-text="{{nextText}}" total-items="total" ng-model="currentPage"></ul>')($rootScope);
252252
$rootScope.$digest();
253253

254254
expect(getPaginationEl(0).text()).toBe('<<');
@@ -259,7 +259,7 @@ describe('pager directive', function() {
259259
it('disables the component when ng-disabled is true', function() {
260260
$rootScope.disable = true;
261261

262-
element = $compile('<uib-pager total-items="total" ng-disabled="disable" ng-model="currentPage"></uib-pager>')($rootScope);
262+
element = $compile('<ul uib-pager total-items="total" ng-disabled="disable" ng-model="currentPage"></ul>')($rootScope);
263263
$rootScope.$digest();
264264
updateCurrentPage(2);
265265

template/pager/pager.html

+2-4
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,2 @@
1-
<ul class="pager">
2-
<li ng-class="{disabled: noPrevious()||ngDisabled, previous: align}"><a href ng-click="selectPage(page - 1, $event)">{{::getText('previous')}}</a></li>
3-
<li ng-class="{disabled: noNext()||ngDisabled, next: align}"><a href ng-click="selectPage(page + 1, $event)">{{::getText('next')}}</a></li>
4-
</ul>
1+
<li ng-class="{disabled: noPrevious()||ngDisabled, previous: align}"><a href ng-click="selectPage(page - 1, $event)">{{::getText('previous')}}</a></li>
2+
<li ng-class="{disabled: noNext()||ngDisabled, next: align}"><a href ng-click="selectPage(page + 1, $event)">{{::getText('next')}}</a></li>

0 commit comments

Comments
 (0)