@appbaseio/reactivesearch-vue 1.16.0-alpha.32 → 1.16.0-alpha.35
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/@appbaseio/reactivesearch-vue.umd.js +5247 -10936
- package/dist/@appbaseio/reactivesearch-vue.umd.js.map +1 -1
- package/dist/@appbaseio/reactivesearch-vue.umd.min.js +5 -5
- package/dist/@appbaseio/reactivesearch-vue.umd.min.js.map +1 -1
- package/dist/cjs/{Button-d2f1aeda.js → Button-11307285.js} +1 -1
- package/dist/cjs/{CancelSvg-82021d23.js → CancelSvg-4aa35935.js} +1 -1
- package/dist/cjs/{Card-4b915733.js → Card-fd94ef07.js} +2 -2
- package/dist/cjs/{ComponentWrapper-7302fe1a.js → ComponentWrapper-32481890.js} +2 -2
- package/dist/cjs/{Container-8a08d663.js → Container-526efa6a.js} +1 -1
- package/dist/cjs/DataSearch-8658fd8e.js +2154 -0
- package/dist/cjs/DataSearch.js +18 -2101
- package/dist/cjs/{DropDown-c46d8b0c.js → DropDown-cf9bfffc.js} +14 -19
- package/dist/cjs/DynamicRangeSlider.js +9 -42
- package/dist/cjs/{Flex-699639d2.js → Flex-f146cdad.js} +1 -1
- package/dist/cjs/{FormControlList-73497794.js → FormControlList-808dbcef.js} +1 -1
- package/dist/cjs/{Input-c6f181d5.js → Input-3cc3fa59.js} +1 -1
- package/dist/cjs/{ListItem-933c27e4.js → ListItem-b40adb04.js} +2 -2
- package/dist/cjs/MultiDropdownList.js +12 -13
- package/dist/cjs/MultiList.js +17 -22
- package/dist/cjs/MultiRange.js +7 -7
- package/dist/cjs/RangeInput.js +9 -13
- package/dist/cjs/RangeSlider.js +7 -7
- package/dist/cjs/ReactiveBase.js +3 -3
- package/dist/cjs/ReactiveComponent.js +4 -4
- package/dist/cjs/ReactiveList.js +184 -19
- package/dist/cjs/ResultCard.js +4 -4
- package/dist/cjs/ResultList.js +4 -4
- package/dist/cjs/SelectedFilters.js +6 -6
- package/dist/cjs/SingleDropdownList.js +11 -12
- package/dist/cjs/SingleList.js +9 -9
- package/dist/cjs/SingleRange.js +7 -7
- package/dist/cjs/StateProvider.js +2 -2
- package/dist/cjs/{Title-39765ee6.js → Title-584a8cc8.js} +1 -1
- package/dist/cjs/ToggleButton.js +7 -7
- package/dist/cjs/{_rollupPluginBabelHelpers-4abdbfff.js → _rollupPluginBabelHelpers-f127c8b7.js} +0 -17
- package/dist/cjs/{index-d44a0a21.js → index-89c39a9e.js} +5 -11
- package/dist/cjs/index.js +23 -32
- package/dist/cjs/initReactivesearch.js +1 -1
- package/dist/cjs/install-35f74190.js +1196 -0
- package/dist/cjs/install.js +37 -43
- package/dist/cjs/{ssr-c333c82c.js → ssr-0ee35a09.js} +1 -1
- package/dist/cjs/{utils-23afb20b.js → utils-1219e1fe.js} +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/{vueTypes-6de9d2a9.js → vueTypes-57d01f18.js} +13 -24
- package/dist/es/{Button-799185e2.js → Button-91561391.js} +1 -1
- package/dist/es/{CancelSvg-4d9e0857.js → CancelSvg-c2c03a35.js} +1 -1
- package/dist/es/{Card-04b3c33e.js → Card-6446f1b7.js} +2 -2
- package/dist/es/{ComponentWrapper-bbb717bc.js → ComponentWrapper-4f85a67e.js} +2 -2
- package/dist/es/{Container-4383c6f0.js → Container-18b03fde.js} +1 -1
- package/dist/es/DataSearch-66e72d1d.js +2141 -0
- package/dist/es/DataSearch.js +17 -2100
- package/dist/es/{DropDown-4edaa621.js → DropDown-c8da0a2c.js} +14 -19
- package/dist/es/DynamicRangeSlider.js +9 -42
- package/dist/es/{Flex-aac91505.js → Flex-8770345d.js} +1 -1
- package/dist/es/{FormControlList-fe389a2e.js → FormControlList-704f8dee.js} +1 -1
- package/dist/es/{Input-d8519224.js → Input-08bb1bcf.js} +1 -1
- package/dist/es/{ListItem-bdb6d53d.js → ListItem-8e8fb535.js} +2 -2
- package/dist/es/MultiDropdownList.js +12 -13
- package/dist/es/MultiList.js +17 -22
- package/dist/es/MultiRange.js +7 -7
- package/dist/es/RangeInput.js +9 -13
- package/dist/es/RangeSlider.js +7 -7
- package/dist/es/ReactiveBase.js +3 -3
- package/dist/es/ReactiveComponent.js +4 -4
- package/dist/es/ReactiveList.js +183 -18
- package/dist/es/ResultCard.js +4 -4
- package/dist/es/ResultList.js +4 -4
- package/dist/es/SelectedFilters.js +6 -6
- package/dist/es/SingleDropdownList.js +11 -12
- package/dist/es/SingleList.js +9 -9
- package/dist/es/SingleRange.js +7 -7
- package/dist/es/StateProvider.js +2 -2
- package/dist/es/{Title-579f8d6c.js → Title-3522ff56.js} +1 -1
- package/dist/es/ToggleButton.js +7 -7
- package/dist/es/{_rollupPluginBabelHelpers-ecf6c03c.js → _rollupPluginBabelHelpers-0f24d612.js} +1 -17
- package/dist/es/{index-5daa8276.js → index-cb1950b6.js} +5 -11
- package/dist/es/index.js +19 -28
- package/dist/es/initReactivesearch.js +1 -1
- package/dist/es/install-ecef1861.js +1189 -0
- package/dist/es/install.js +35 -45
- package/dist/es/{ssr-e3196de1.js → ssr-a41dfea9.js} +1 -1
- package/dist/es/{utils-3a32e13f.js → utils-64a2e5f0.js} +1 -1
- package/dist/es/version.js +1 -1
- package/dist/es/{vueTypes-9326e0be.js → vueTypes-687b2304.js} +13 -24
- package/package.json +5 -11
- package/dist/cjs/Pagination-1b2320a7.js +0 -177
- package/dist/cjs/ReactiveGoogleMap.js +0 -1764
- package/dist/es/Pagination-b3e4054a.js +0 -172
- package/dist/es/ReactiveGoogleMap.js +0 -1756
package/dist/es/install.js
CHANGED
|
@@ -1,63 +1,53 @@
|
|
|
1
1
|
import '@appbaseio/reactivecore';
|
|
2
|
-
import './_rollupPluginBabelHelpers-
|
|
2
|
+
import './_rollupPluginBabelHelpers-0f24d612.js';
|
|
3
3
|
import 'vue-types';
|
|
4
4
|
import '@appbaseio/reactivecore/lib/utils/constants';
|
|
5
5
|
import '@appbaseio/reactivecore/lib/utils/helper';
|
|
6
6
|
import 'emotion';
|
|
7
7
|
import '@appbaseio/vue-emotion';
|
|
8
8
|
import 'polished';
|
|
9
|
-
import './Button-
|
|
10
|
-
import './vueTypes-
|
|
11
|
-
import './
|
|
12
|
-
import ReactiveList from './ReactiveList.js';
|
|
9
|
+
import './Button-91561391.js';
|
|
10
|
+
import './vueTypes-687b2304.js';
|
|
11
|
+
import './ReactiveList.js';
|
|
13
12
|
import '@appbaseio/reactivecore/lib/utils/transform';
|
|
14
13
|
import 'redux';
|
|
15
|
-
import './index-
|
|
16
|
-
import './ComponentWrapper-
|
|
14
|
+
import './index-cb1950b6.js';
|
|
15
|
+
import './ComponentWrapper-4f85a67e.js';
|
|
17
16
|
import '@vue/babel-helper-vue-jsx-merge-props';
|
|
18
|
-
import './Title-
|
|
19
|
-
import './ListItem-
|
|
20
|
-
import './Card-
|
|
21
|
-
import './Flex-
|
|
17
|
+
import './Title-3522ff56.js';
|
|
18
|
+
import './ListItem-8e8fb535.js';
|
|
19
|
+
import './Card-6446f1b7.js';
|
|
20
|
+
import './Flex-8770345d.js';
|
|
22
21
|
import '@appbaseio/reactivecore/lib/actions/analytics';
|
|
23
22
|
import 'appbase-js';
|
|
24
23
|
import 'url-search-params-polyfill';
|
|
25
|
-
import
|
|
24
|
+
import './ReactiveBase.js';
|
|
26
25
|
import 'hotkeys-js';
|
|
27
|
-
import
|
|
28
|
-
import './CancelSvg-
|
|
29
|
-
import './Input-
|
|
26
|
+
import './DataSearch-66e72d1d.js';
|
|
27
|
+
import './CancelSvg-c2c03a35.js';
|
|
28
|
+
import './Input-08bb1bcf.js';
|
|
30
29
|
import 'compute-scroll-into-view';
|
|
31
|
-
import './Container-
|
|
30
|
+
import './Container-18b03fde.js';
|
|
32
31
|
import 'vue-highlight-words';
|
|
32
|
+
export { i as default } from './install-ecef1861.js';
|
|
33
33
|
import '@appbaseio/reactivecore/lib/utils/suggestions';
|
|
34
|
-
import './FormControlList-
|
|
35
|
-
import './utils-
|
|
36
|
-
import
|
|
37
|
-
import
|
|
38
|
-
import './DropDown-
|
|
39
|
-
import
|
|
40
|
-
import
|
|
41
|
-
import
|
|
42
|
-
import
|
|
43
|
-
import
|
|
44
|
-
import
|
|
45
|
-
import
|
|
46
|
-
import
|
|
47
|
-
import
|
|
34
|
+
import './FormControlList-704f8dee.js';
|
|
35
|
+
import './utils-64a2e5f0.js';
|
|
36
|
+
import './SingleList.js';
|
|
37
|
+
import './MultiList.js';
|
|
38
|
+
import './DropDown-c8da0a2c.js';
|
|
39
|
+
import './SingleDropdownList.js';
|
|
40
|
+
import './MultiDropdownList.js';
|
|
41
|
+
import './ToggleButton.js';
|
|
42
|
+
import './ReactiveComponent.js';
|
|
43
|
+
import './SelectedFilters.js';
|
|
44
|
+
import './SingleRange.js';
|
|
45
|
+
import './MultiRange.js';
|
|
46
|
+
import './ResultCard.js';
|
|
47
|
+
import './ResultList.js';
|
|
48
48
|
import 'vue-no-ssr';
|
|
49
|
-
import './ssr-
|
|
50
|
-
import
|
|
51
|
-
import
|
|
52
|
-
import
|
|
53
|
-
import
|
|
54
|
-
|
|
55
|
-
var components = [ReactiveList, ResultCard, ResultList, ReactiveBase, DataSearch, SingleList, MultiList, SingleRange, MultiRange, RangeSlider, DynamicRangeSlider, ReactiveComponent, SelectedFilters, ToggleButton, SingleDropdownList, MultiDropdownList, StateProvider, RangeInput];
|
|
56
|
-
function install (Vue) {
|
|
57
|
-
components.map(function (component) {
|
|
58
|
-
Vue.use(component);
|
|
59
|
-
return null;
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
export default install;
|
|
49
|
+
import './ssr-a41dfea9.js';
|
|
50
|
+
import './RangeSlider.js';
|
|
51
|
+
import './DynamicRangeSlider.js';
|
|
52
|
+
import './StateProvider.js';
|
|
53
|
+
import './RangeInput.js';
|
package/dist/es/version.js
CHANGED
|
@@ -3,35 +3,21 @@ import VueTypes from 'vue-types';
|
|
|
3
3
|
VueTypes.sensibleDefaults = false;
|
|
4
4
|
var reactKeyType = VueTypes.oneOfType([VueTypes.string, VueTypes.arrayOf(VueTypes.string), VueTypes.object, VueTypes.arrayOf(VueTypes.object)]);
|
|
5
5
|
|
|
6
|
-
function validateLocation(
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
return
|
|
10
|
-
} // eslint-disable-next-line
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
if (isNaN(value.lat)) {
|
|
14
|
-
console.error(new Error('lat value must be a number'));
|
|
15
|
-
return false;
|
|
16
|
-
} // eslint-disable-next-line
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
if (isNaN(value.lat)) {
|
|
20
|
-
console.error(new Error('lng value must be a number'));
|
|
21
|
-
return false;
|
|
6
|
+
function validateLocation(props, propName) {
|
|
7
|
+
// eslint-disable-next-line
|
|
8
|
+
if (isNaN(props[propName])) {
|
|
9
|
+
return new Error(propName + " value must be a VueTypes.number");
|
|
22
10
|
}
|
|
23
11
|
|
|
24
|
-
if (
|
|
25
|
-
|
|
26
|
-
return false;
|
|
12
|
+
if (propName === 'lat' && (props[propName] < -90 || props[propName] > 90)) {
|
|
13
|
+
return new Error(propName + " value should be between -90 and 90.");
|
|
27
14
|
}
|
|
28
15
|
|
|
29
|
-
if (
|
|
30
|
-
|
|
31
|
-
return false;
|
|
16
|
+
if (propName === 'lng' && (props[propName] < -180 || props[propName] > 180)) {
|
|
17
|
+
return new Error(propName + " value should be between -180 and 180.");
|
|
32
18
|
}
|
|
33
19
|
|
|
34
|
-
return
|
|
20
|
+
return null;
|
|
35
21
|
}
|
|
36
22
|
|
|
37
23
|
var types = {
|
|
@@ -102,7 +88,10 @@ var types = {
|
|
|
102
88
|
rangeLabelsAlign: VueTypes.oneOf(['left', 'right']),
|
|
103
89
|
title: VueTypes.oneOfType([VueTypes.string, VueTypes.any]),
|
|
104
90
|
tooltipTrigger: VueTypes.oneOf(['always', 'none', 'hover']),
|
|
105
|
-
location: VueTypes.
|
|
91
|
+
location: VueTypes.shape({
|
|
92
|
+
lat: validateLocation,
|
|
93
|
+
lng: validateLocation
|
|
94
|
+
}),
|
|
106
95
|
unit: VueTypes.oneOf(['mi', 'miles', 'yd', 'yards', 'ft', 'feet', 'in', 'inch', 'km', 'kilometers', 'm', 'meters', 'cm', 'centimeters', 'mm', 'millimeters', 'NM', 'nmi', 'nauticalmiles']),
|
|
107
96
|
value: VueTypes.string.def(undefined),
|
|
108
97
|
analyticsConfig: VueTypes.shape({
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@appbaseio/reactivesearch-vue",
|
|
3
|
-
"version": "1.16.0-alpha.
|
|
3
|
+
"version": "1.16.0-alpha.35",
|
|
4
4
|
"private": false,
|
|
5
5
|
"main": "dist/cjs/index.js",
|
|
6
6
|
"jsnext:main": "dist/es/index.js",
|
|
@@ -34,22 +34,20 @@
|
|
|
34
34
|
],
|
|
35
35
|
"sideEffects": false,
|
|
36
36
|
"dependencies": {
|
|
37
|
-
"@appbaseio/reactivecore": "9.13.
|
|
37
|
+
"@appbaseio/reactivecore": "9.13.0-alpha.3",
|
|
38
38
|
"@appbaseio/vue-emotion": "0.4.4",
|
|
39
39
|
"@vue/babel-helper-vue-jsx-merge-props": "^1.0.0",
|
|
40
40
|
"appbase-js": "^4.5.1",
|
|
41
41
|
"compute-scroll-into-view": "^1.0.11",
|
|
42
42
|
"emotion": "9.2.12",
|
|
43
|
-
"gmap-vue": "^1.5.0",
|
|
44
|
-
"ngeohash": "^0.6.3",
|
|
45
43
|
"hotkeys-js": "^3.8.7",
|
|
46
44
|
"polished": "^2.2.0",
|
|
47
45
|
"redux": "^4.0.0",
|
|
48
46
|
"url-search-params-polyfill": "^7.0.0",
|
|
49
47
|
"vue-highlight-words": "^1.2.0",
|
|
50
48
|
"vue-no-ssr": "^1.1.0",
|
|
51
|
-
"vue-
|
|
52
|
-
"vue-
|
|
49
|
+
"vue-slider-component": "^3.2.15",
|
|
50
|
+
"vue-types": "^1.3.3"
|
|
53
51
|
},
|
|
54
52
|
"peerDependencies": {
|
|
55
53
|
"vue": "^2.6.10"
|
|
@@ -64,14 +62,12 @@
|
|
|
64
62
|
"@babel/preset-env": "^7.5.5",
|
|
65
63
|
"@babel/preset-stage-2": "^7.0.0",
|
|
66
64
|
"@vue/babel-preset-jsx": "^1.1.0",
|
|
67
|
-
"
|
|
65
|
+
"eslint": "^4.12.0",
|
|
68
66
|
"eslint-config-airbnb-base": "^13.1.0",
|
|
69
67
|
"eslint-config-prettier": "^3.1.0",
|
|
70
68
|
"eslint-plugin-vue": "^4.7.1",
|
|
71
|
-
"eslint": "^4.12.0",
|
|
72
69
|
"nps": "^5.9.3",
|
|
73
70
|
"nps-utils": "^1.7.0",
|
|
74
|
-
"postcss": "^8.3.0",
|
|
75
71
|
"rollup": "^1.20.3",
|
|
76
72
|
"rollup-plugin-babel": "^4.3.3",
|
|
77
73
|
"rollup-plugin-commonjs": "^10.1.0",
|
|
@@ -79,10 +75,8 @@
|
|
|
79
75
|
"rollup-plugin-node-builtins": "^2.1.2",
|
|
80
76
|
"rollup-plugin-node-globals": "^1.4.0",
|
|
81
77
|
"rollup-plugin-node-resolve": "^5.2.0",
|
|
82
|
-
"rollup-plugin-postcss": "^4.0.0",
|
|
83
78
|
"rollup-plugin-replace": "^2.2.0",
|
|
84
79
|
"rollup-plugin-terser": "^5.1.1",
|
|
85
|
-
"rollup-plugin-vue": "^6.0.0",
|
|
86
80
|
"vue-eslint-parser": "^3.2.2"
|
|
87
81
|
}
|
|
88
82
|
}
|
|
@@ -1,177 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
|
|
3
|
-
function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
|
|
4
|
-
|
|
5
|
-
var configureStore = require('@appbaseio/reactivecore');
|
|
6
|
-
var configureStore__default = _interopDefault(configureStore);
|
|
7
|
-
var VueTypes = _interopDefault(require('vue-types'));
|
|
8
|
-
var Button = require('./Button-d2f1aeda.js');
|
|
9
|
-
var vueTypes = require('./vueTypes-6de9d2a9.js');
|
|
10
|
-
|
|
11
|
-
var getClassName = configureStore.helper.getClassName,
|
|
12
|
-
handleA11yAction = configureStore.helper.handleA11yAction;
|
|
13
|
-
|
|
14
|
-
function getStartPage(totalPages, currentPage, showEndPage) {
|
|
15
|
-
var midValue = parseInt(totalPages / 2, 10);
|
|
16
|
-
var start = currentPage - (showEndPage ? Math.ceil(midValue / 2) - 1 : midValue);
|
|
17
|
-
return start > 1 ? start : 2;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
var Pagination = {
|
|
21
|
-
name: 'Pagination',
|
|
22
|
-
functional: true,
|
|
23
|
-
props: {
|
|
24
|
-
currentPage: vueTypes.types.number,
|
|
25
|
-
innerClass: vueTypes.types.style,
|
|
26
|
-
pages: vueTypes.types.number,
|
|
27
|
-
setPage: vueTypes.types.func,
|
|
28
|
-
totalPages: vueTypes.types.number,
|
|
29
|
-
showEndPage: VueTypes.bool,
|
|
30
|
-
prevLabel: vueTypes.types.string,
|
|
31
|
-
nextLabel: vueTypes.types.string
|
|
32
|
-
},
|
|
33
|
-
render: function render(createElement, context) {
|
|
34
|
-
var h = arguments[0];
|
|
35
|
-
var props = context.props;
|
|
36
|
-
|
|
37
|
-
var onPrevPage = function onPrevPage() {
|
|
38
|
-
if (props.currentPage) {
|
|
39
|
-
props.setPage(props.currentPage - 1);
|
|
40
|
-
}
|
|
41
|
-
};
|
|
42
|
-
|
|
43
|
-
var onNextPage = function onNextPage() {
|
|
44
|
-
if (props.currentPage < props.totalPages - 1) {
|
|
45
|
-
props.setPage(props.currentPage + 1);
|
|
46
|
-
}
|
|
47
|
-
};
|
|
48
|
-
|
|
49
|
-
if (!props.totalPages) {
|
|
50
|
-
return null;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
var innerClassName = getClassName(props.innerClass, 'button');
|
|
54
|
-
var primary = props.currentPage === 0;
|
|
55
|
-
var className = innerClassName || primary ? innerClassName + " " + (primary ? 'active' : '') : '';
|
|
56
|
-
|
|
57
|
-
var buildPaginationDOM = function buildPaginationDOM(position) {
|
|
58
|
-
var pages = props.pages,
|
|
59
|
-
currentPage = props.currentPage,
|
|
60
|
-
totalPages = props.totalPages,
|
|
61
|
-
setPage = props.setPage,
|
|
62
|
-
showEndPage = props.showEndPage;
|
|
63
|
-
var start = position === 'start' ? getStartPage(pages, currentPage, showEndPage) : Math.max(2, Math.ceil(totalPages - (pages - 1) / 2 + 1));
|
|
64
|
-
var paginationButtons = [];
|
|
65
|
-
|
|
66
|
-
if (start <= totalPages) {
|
|
67
|
-
var totalPagesToShow = pages < totalPages ? start + (pages - 1) : totalPages + 1;
|
|
68
|
-
|
|
69
|
-
if (showEndPage) {
|
|
70
|
-
totalPagesToShow = position === 'start' ? start + (Math.ceil(pages / 2) - pages % 2) : totalPages + 1;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
if (currentPage > totalPages - pages + 2) {
|
|
74
|
-
start = Math.max(2, totalPages - pages + 2);
|
|
75
|
-
totalPagesToShow = start + pages;
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
var _loop = function _loop(i) {
|
|
79
|
-
var activeButton = currentPage === i - 1;
|
|
80
|
-
var classNameBtn = innerClassName || activeButton ? innerClassName + " " + (activeButton ? 'active' : '') : '';
|
|
81
|
-
var pageBtn = h(Button.Button, {
|
|
82
|
-
"class": classNameBtn,
|
|
83
|
-
"attrs": {
|
|
84
|
-
"primary": activeButton,
|
|
85
|
-
"tabIndex": "0",
|
|
86
|
-
"alt": "page-" + i
|
|
87
|
-
},
|
|
88
|
-
"on": {
|
|
89
|
-
"keyPress": function keyPress(event) {
|
|
90
|
-
return handleA11yAction(event, function () {
|
|
91
|
-
return setPage(i - 1);
|
|
92
|
-
});
|
|
93
|
-
},
|
|
94
|
-
"click": function click() {
|
|
95
|
-
return setPage(i - 1);
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
}, [i]);
|
|
99
|
-
|
|
100
|
-
if (i <= totalPages + 1) {
|
|
101
|
-
paginationButtons.push(pageBtn);
|
|
102
|
-
}
|
|
103
|
-
};
|
|
104
|
-
|
|
105
|
-
for (var i = start; i < Math.min(totalPages + 1, totalPagesToShow); i += 1) {
|
|
106
|
-
_loop(i);
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
return paginationButtons;
|
|
111
|
-
};
|
|
112
|
-
|
|
113
|
-
var buildIntermediatePaginationDom = function buildIntermediatePaginationDom() {
|
|
114
|
-
var showEndPage = props.showEndPage,
|
|
115
|
-
currentPage = props.currentPage,
|
|
116
|
-
totalPages = props.totalPages,
|
|
117
|
-
pages = props.pages;
|
|
118
|
-
if (!showEndPage) return buildPaginationDOM('start');
|
|
119
|
-
|
|
120
|
-
if (currentPage <= totalPages - pages + 2 || totalPages <= pages) {
|
|
121
|
-
return buildPaginationDOM('start');
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
return null;
|
|
125
|
-
};
|
|
126
|
-
|
|
127
|
-
return h("div", {
|
|
128
|
-
"class": Button.pagination + " " + getClassName(props.innerClass, 'pagination')
|
|
129
|
-
}, [h(Button.Button, {
|
|
130
|
-
"class": getClassName(props.innerClass, 'button') || '',
|
|
131
|
-
"attrs": {
|
|
132
|
-
"disabled": props.currentPage === 0,
|
|
133
|
-
"tabIndex": "0"
|
|
134
|
-
},
|
|
135
|
-
"on": {
|
|
136
|
-
"keyPress": function keyPress(event) {
|
|
137
|
-
return handleA11yAction(event, onPrevPage);
|
|
138
|
-
},
|
|
139
|
-
"click": onPrevPage
|
|
140
|
-
}
|
|
141
|
-
}, [props.prevLabel || 'Prev']), h(Button.Button, {
|
|
142
|
-
"class": className,
|
|
143
|
-
"attrs": {
|
|
144
|
-
"primary": primary,
|
|
145
|
-
"tabIndex": "0"
|
|
146
|
-
},
|
|
147
|
-
"on": {
|
|
148
|
-
"keyPress": function keyPress(event) {
|
|
149
|
-
return handleA11yAction(event, function () {
|
|
150
|
-
return props.setPage(0);
|
|
151
|
-
});
|
|
152
|
-
},
|
|
153
|
-
"click": function click() {
|
|
154
|
-
return props.setPage(0);
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
}, ["1"]), props.showEndPage && props.currentPage >= Math.floor(props.pages / 2) + !!(props.pages % 2) ? h("span", ["..."]) : null, buildIntermediatePaginationDom(), props.showEndPage && props.pages > 2 && props.currentPage <= props.totalPages - Math.ceil(props.pages * 0.75) ? h("span", ["..."]) : null, props.showEndPage && props.totalPages >= props.pages && buildPaginationDOM('end'), h(Button.Button, {
|
|
158
|
-
"class": getClassName(props.innerClass, 'button') || '',
|
|
159
|
-
"attrs": {
|
|
160
|
-
"disabled": props.currentPage >= props.totalPages - 1,
|
|
161
|
-
"tabIndex": "0"
|
|
162
|
-
},
|
|
163
|
-
"on": {
|
|
164
|
-
"keyPress": function keyPress(event) {
|
|
165
|
-
return handleA11yAction(event, onNextPage);
|
|
166
|
-
},
|
|
167
|
-
"click": onNextPage
|
|
168
|
-
}
|
|
169
|
-
}, [props.nextLabel || 'Next'])]);
|
|
170
|
-
}
|
|
171
|
-
};
|
|
172
|
-
|
|
173
|
-
Pagination.install = function (Vue) {
|
|
174
|
-
Vue.component(Pagination.name, Pagination);
|
|
175
|
-
};
|
|
176
|
-
|
|
177
|
-
exports.Pagination = Pagination;
|