@commercetools-uikit/pagination 19.20.1 → 19.22.0
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/commercetools-uikit-pagination.cjs.dev.js +27 -24
- package/dist/commercetools-uikit-pagination.cjs.prod.js +23 -20
- package/dist/commercetools-uikit-pagination.esm.js +27 -24
- package/dist/declarations/src/page-size-selector/page-size-selector.d.ts +3 -4
- package/dist/declarations/src/pagination.d.ts +3 -4
- package/package.json +11 -11
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
+
var _objectWithoutProperties = require('@babel/runtime-corejs3/helpers/objectWithoutProperties');
|
|
5
6
|
require('@emotion/react');
|
|
6
7
|
var Spacings = require('@commercetools-uikit/spacings');
|
|
7
8
|
var jsxRuntime = require('@emotion/react/jsx-runtime');
|
|
@@ -196,6 +197,7 @@ const messages = reactIntl.defineMessages({
|
|
|
196
197
|
});
|
|
197
198
|
var messages$1 = messages;
|
|
198
199
|
|
|
200
|
+
const _excluded$1 = ["perPage", "perPageRange"];
|
|
199
201
|
function ownKeys(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
200
202
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys(Object(t))).call(_context2, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
|
|
201
203
|
const mapRangeToListOfOptions = perPageRange => {
|
|
@@ -210,13 +212,18 @@ const mapRangeToListOfOptions = perPageRange => {
|
|
|
210
212
|
throw new Error(`Invalid page range "${perPageRange}", expected one of "s,m,l".`);
|
|
211
213
|
}
|
|
212
214
|
};
|
|
213
|
-
const PageSizeSelector =
|
|
215
|
+
const PageSizeSelector = _ref => {
|
|
216
|
+
let _ref$perPage = _ref.perPage,
|
|
217
|
+
perPage = _ref$perPage === void 0 ? 20 : _ref$perPage,
|
|
218
|
+
_ref$perPageRange = _ref.perPageRange,
|
|
219
|
+
perPageRange = _ref$perPageRange === void 0 ? 's' : _ref$perPageRange,
|
|
220
|
+
props = _objectWithoutProperties(_ref, _excluded$1);
|
|
214
221
|
const _useState = react.useState(uniqueId__default["default"]('per-page-selector-')),
|
|
215
222
|
_useState2 = _slicedToArray(_useState, 1),
|
|
216
223
|
perPageSelectorId = _useState2[0];
|
|
217
|
-
const options = mapRangeToListOfOptions(
|
|
218
|
-
const hasValidPerPageOption = _includesInstanceProperty__default["default"](options).call(options,
|
|
219
|
-
process.env.NODE_ENV !== "production" ? utils.warning(hasValidPerPageOption, `@commercetools-uikit/pagination: invalid page size ${
|
|
224
|
+
const options = mapRangeToListOfOptions(perPageRange);
|
|
225
|
+
const hasValidPerPageOption = _includesInstanceProperty__default["default"](options).call(options, perPage);
|
|
226
|
+
process.env.NODE_ENV !== "production" ? utils.warning(hasValidPerPageOption, `@commercetools-uikit/pagination: invalid page size ${perPage}. It must be one of the values of the selected range in "${options.toString()}".`) : void 0;
|
|
220
227
|
const onPerPageChange = props.onPerPageChange;
|
|
221
228
|
const handleSelectPerPage = react.useCallback(event => {
|
|
222
229
|
onPerPageChange(Number(event.target.value));
|
|
@@ -229,7 +236,7 @@ const PageSizeSelector = props => {
|
|
|
229
236
|
id: perPageSelectorId,
|
|
230
237
|
isSearchable: false,
|
|
231
238
|
name: "per-page-selector",
|
|
232
|
-
value:
|
|
239
|
+
value: perPage.toString(),
|
|
233
240
|
options: _mapInstanceProperty__default["default"](options).call(options, option => ({
|
|
234
241
|
value: option.toString(),
|
|
235
242
|
label: option.toString()
|
|
@@ -247,19 +254,15 @@ const PageSizeSelector = props => {
|
|
|
247
254
|
});
|
|
248
255
|
};
|
|
249
256
|
PageSizeSelector.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
250
|
-
perPage: _pt__default["default"].number
|
|
251
|
-
perPageRange: _pt__default["default"].oneOf(['s', 'm', 'l'])
|
|
257
|
+
perPage: _pt__default["default"].number,
|
|
258
|
+
perPageRange: _pt__default["default"].oneOf(['s', 'm', 'l']),
|
|
252
259
|
onPerPageChange: _pt__default["default"].func.isRequired,
|
|
253
260
|
pageItems: _pt__default["default"].number.isRequired
|
|
254
261
|
} : {};
|
|
255
262
|
PageSizeSelector.displayName = 'PageSizeSelector';
|
|
256
|
-
const defaultProps$1 = {
|
|
257
|
-
perPage: 20,
|
|
258
|
-
perPageRange: 's'
|
|
259
|
-
};
|
|
260
|
-
PageSizeSelector.defaultProps = defaultProps$1;
|
|
261
263
|
var PageSizeSelector$1 = PageSizeSelector;
|
|
262
264
|
|
|
265
|
+
const _excluded = ["perPage", "perPageRange"];
|
|
263
266
|
function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
|
|
264
267
|
var _ref = process.env.NODE_ENV === "production" ? {
|
|
265
268
|
name: "15sp3y3",
|
|
@@ -267,20 +270,25 @@ var _ref = process.env.NODE_ENV === "production" ? {
|
|
|
267
270
|
} : {
|
|
268
271
|
name: "mvvfm1-Pagination",
|
|
269
272
|
styles: "flex-grow:2;label:Pagination;",
|
|
270
|
-
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
273
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInBhZ2luYXRpb24udHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTBEZ0IiLCJmaWxlIjoicGFnaW5hdGlvbi50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgU3BhY2luZ3MgZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvc3BhY2luZ3MnO1xuaW1wb3J0IFBhZ2VOYXZpZ2F0b3IgZnJvbSAnLi9wYWdlLW5hdmlnYXRvcic7XG5pbXBvcnQgUGFnZVNpemVTZWxlY3RvciwgeyB0eXBlIFRQYWdlUmFuZ2VTaXplIH0gZnJvbSAnLi9wYWdlLXNpemUtc2VsZWN0b3InO1xuXG5leHBvcnQgdHlwZSBUUGFnaW5hdGlvblByb3BzID0ge1xuICAvKipcbiAgICogVG90YWwgbnVtYmVyIG9mIGl0ZW1zIGFjcm9zcyBhbGwgcGFnZXNcbiAgICovXG4gIHRvdGFsSXRlbXM6IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIGN1cnJlbnQgcGFnZVxuICAgKi9cbiAgcGFnZTogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBBIGNhbGxiYWNrIGZ1bmN0aW9uLCBjYWxsZWQgd2hlbiB0aGUgcGFnZSBpcyBjaGFuZ2VkLlxuICAgKi9cbiAgb25QYWdlQ2hhbmdlOiAobmV3UGFnZTogbnVtYmVyKSA9PiB2b2lkO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgaXRlbXMgcGVyIHBhZ2UsIGFjY29yZGluZyB0byB0aGUgcHJlLWRlZmluZWQgcmFuZ2UgdmFsdWVzLlxuICAgKi9cbiAgcGVyUGFnZT86IG51bWJlcjtcblxuICAvKipcbiAgICogUmFuZ2Ugb2YgaXRlbXMgcGVyIHBhZ2UuXG4gICAqIDxici8+XG4gICAqIGBzOiAyMCw1MGBcbiAgICogPGJyLz5cbiAgICogYG06IDIwLDUwLDEwMGBcbiAgICogPGJyLz5cbiAgICogYGw6IDIwMCw1MDBgXG4gICAqL1xuICBwZXJQYWdlUmFuZ2U/OiBUUGFnZVJhbmdlU2l6ZTtcblxuICAvKipcbiAgICogQSBjYWxsYmFjayBmdW5jdGlvbiwgY2FsbGVkIHdoZW4gYHBlclBhZ2VgIGlzIGNoYW5nZWQuXG4gICAqL1xuICBvblBlclBhZ2VDaGFuZ2U6IChuZXdQZXJQYWdlOiBudW1iZXIpID0+IHZvaWQ7XG59O1xuXG5jb25zdCBQYWdpbmF0aW9uID0gKHtcbiAgcGVyUGFnZSA9IDIwLFxuICBwZXJQYWdlUmFuZ2UgPSAncycsXG4gIC4uLnByb3BzXG59OiBUUGFnaW5hdGlvblByb3BzKSA9PiB7XG4gIGNvbnN0IHRvdGFsUGFnZXMgPSBNYXRoLmNlaWwocHJvcHMudG90YWxJdGVtcyAvIHBlclBhZ2UpO1xuXG4gIGNvbnN0IHBhZ2VJdGVtcyA9XG4gICAgcHJvcHMucGFnZSA9PT0gdG90YWxQYWdlc1xuICAgICAgPyBwcm9wcy50b3RhbEl0ZW1zIC0gcGVyUGFnZSAqIChwcm9wcy5wYWdlIC0gMSlcbiAgICAgIDogcGVyUGFnZTtcblxuICByZXR1cm4gKFxuICAgIDxTcGFjaW5ncy5JbmxpbmUganVzdGlmeUNvbnRlbnQ9XCJzcGFjZS1iZXR3ZWVuXCI+XG4gICAgICA8ZGl2XG4gICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgIGZsZXgtZ3JvdzogMjtcbiAgICAgICAgYH1cbiAgICAgID5cbiAgICAgICAgPFBhZ2VTaXplU2VsZWN0b3JcbiAgICAgICAgICBwYWdlSXRlbXM9e3BhZ2VJdGVtc31cbiAgICAgICAgICBwZXJQYWdlPXtwZXJQYWdlfVxuICAgICAgICAgIHBlclBhZ2VSYW5nZT17cGVyUGFnZVJhbmdlfVxuICAgICAgICAgIG9uUGVyUGFnZUNoYW5nZT17cHJvcHMub25QZXJQYWdlQ2hhbmdlfVxuICAgICAgICAvPlxuICAgICAgPC9kaXY+XG4gICAgICA8UGFnZU5hdmlnYXRvclxuICAgICAgICB0b3RhbFBhZ2VzPXt0b3RhbFBhZ2VzfVxuICAgICAgICBwYWdlPXtwcm9wcy5wYWdlfVxuICAgICAgICBvblBhZ2VDaGFuZ2U9e3Byb3BzLm9uUGFnZUNoYW5nZX1cbiAgICAgIC8+XG4gICAgPC9TcGFjaW5ncy5JbmxpbmU+XG4gICk7XG59O1xuXG5QYWdpbmF0aW9uLmRpc3BsYXlOYW1lID0gJ1BhZ2luYXRpb24nO1xuXG5leHBvcnQgdHlwZSB7IFRQYWdlUmFuZ2VTaXplIH07XG5cbmV4cG9ydCBkZWZhdWx0IFBhZ2luYXRpb247XG4iXX0= */",
|
|
271
274
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
272
275
|
};
|
|
273
|
-
const Pagination =
|
|
274
|
-
|
|
275
|
-
|
|
276
|
+
const Pagination = _ref2 => {
|
|
277
|
+
let _ref2$perPage = _ref2.perPage,
|
|
278
|
+
perPage = _ref2$perPage === void 0 ? 20 : _ref2$perPage,
|
|
279
|
+
_ref2$perPageRange = _ref2.perPageRange,
|
|
280
|
+
perPageRange = _ref2$perPageRange === void 0 ? 's' : _ref2$perPageRange,
|
|
281
|
+
props = _objectWithoutProperties(_ref2, _excluded);
|
|
282
|
+
const totalPages = Math.ceil(props.totalItems / perPage);
|
|
283
|
+
const pageItems = props.page === totalPages ? props.totalItems - perPage * (props.page - 1) : perPage;
|
|
276
284
|
return jsxRuntime.jsxs(Spacings__default["default"].Inline, {
|
|
277
285
|
justifyContent: "space-between",
|
|
278
286
|
children: [jsxRuntime.jsx("div", {
|
|
279
287
|
css: _ref,
|
|
280
288
|
children: jsxRuntime.jsx(PageSizeSelector$1, {
|
|
281
289
|
pageItems: pageItems,
|
|
282
|
-
perPage:
|
|
283
|
-
perPageRange:
|
|
290
|
+
perPage: perPage,
|
|
291
|
+
perPageRange: perPageRange,
|
|
284
292
|
onPerPageChange: props.onPerPageChange
|
|
285
293
|
})
|
|
286
294
|
}), jsxRuntime.jsx(PageNavigator$1, {
|
|
@@ -291,15 +299,10 @@ const Pagination = props => {
|
|
|
291
299
|
});
|
|
292
300
|
};
|
|
293
301
|
Pagination.displayName = 'Pagination';
|
|
294
|
-
const defaultProps = {
|
|
295
|
-
perPage: 20,
|
|
296
|
-
perPageRange: 's'
|
|
297
|
-
};
|
|
298
|
-
Pagination.defaultProps = defaultProps;
|
|
299
302
|
var Pagination$1 = Pagination;
|
|
300
303
|
|
|
301
304
|
// NOTE: This string will be replaced on build time with the package version.
|
|
302
|
-
var version = "19.
|
|
305
|
+
var version = "19.22.0";
|
|
303
306
|
|
|
304
307
|
exports.PageNavigator = PageNavigator$1;
|
|
305
308
|
exports.PageSizeSelector = PageSizeSelector$1;
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
+
var _objectWithoutProperties = require('@babel/runtime-corejs3/helpers/objectWithoutProperties');
|
|
5
6
|
require('@emotion/react');
|
|
6
7
|
var Spacings = require('@commercetools-uikit/spacings');
|
|
7
8
|
var jsxRuntime = require('@emotion/react/jsx-runtime');
|
|
@@ -191,6 +192,7 @@ const messages = reactIntl.defineMessages({
|
|
|
191
192
|
});
|
|
192
193
|
var messages$1 = messages;
|
|
193
194
|
|
|
195
|
+
const _excluded$1 = ["perPage", "perPageRange"];
|
|
194
196
|
function ownKeys(e, r) { var t = _Object$keys__default["default"](e); if (_Object$getOwnPropertySymbols__default["default"]) { var o = _Object$getOwnPropertySymbols__default["default"](e); r && (o = _filterInstanceProperty__default["default"](o).call(o, function (r) { return _Object$getOwnPropertyDescriptor__default["default"](e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
195
197
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty__default["default"](_context = ownKeys(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors__default["default"] ? _Object$defineProperties__default["default"](e, _Object$getOwnPropertyDescriptors__default["default"](t)) : _forEachInstanceProperty__default["default"](_context2 = ownKeys(Object(t))).call(_context2, function (r) { _Object$defineProperty__default["default"](e, r, _Object$getOwnPropertyDescriptor__default["default"](t, r)); }); } return e; }
|
|
196
198
|
const mapRangeToListOfOptions = perPageRange => {
|
|
@@ -205,12 +207,17 @@ const mapRangeToListOfOptions = perPageRange => {
|
|
|
205
207
|
throw new Error(`Invalid page range "${perPageRange}", expected one of "s,m,l".`);
|
|
206
208
|
}
|
|
207
209
|
};
|
|
208
|
-
const PageSizeSelector =
|
|
210
|
+
const PageSizeSelector = _ref => {
|
|
211
|
+
let _ref$perPage = _ref.perPage,
|
|
212
|
+
perPage = _ref$perPage === void 0 ? 20 : _ref$perPage,
|
|
213
|
+
_ref$perPageRange = _ref.perPageRange,
|
|
214
|
+
perPageRange = _ref$perPageRange === void 0 ? 's' : _ref$perPageRange,
|
|
215
|
+
props = _objectWithoutProperties(_ref, _excluded$1);
|
|
209
216
|
const _useState = react.useState(uniqueId__default["default"]('per-page-selector-')),
|
|
210
217
|
_useState2 = _slicedToArray(_useState, 1),
|
|
211
218
|
perPageSelectorId = _useState2[0];
|
|
212
|
-
const options = mapRangeToListOfOptions(
|
|
213
|
-
_includesInstanceProperty__default["default"](options).call(options,
|
|
219
|
+
const options = mapRangeToListOfOptions(perPageRange);
|
|
220
|
+
_includesInstanceProperty__default["default"](options).call(options, perPage);
|
|
214
221
|
const onPerPageChange = props.onPerPageChange;
|
|
215
222
|
const handleSelectPerPage = react.useCallback(event => {
|
|
216
223
|
onPerPageChange(Number(event.target.value));
|
|
@@ -223,7 +230,7 @@ const PageSizeSelector = props => {
|
|
|
223
230
|
id: perPageSelectorId,
|
|
224
231
|
isSearchable: false,
|
|
225
232
|
name: "per-page-selector",
|
|
226
|
-
value:
|
|
233
|
+
value: perPage.toString(),
|
|
227
234
|
options: _mapInstanceProperty__default["default"](options).call(options, option => ({
|
|
228
235
|
value: option.toString(),
|
|
229
236
|
label: option.toString()
|
|
@@ -242,28 +249,29 @@ const PageSizeSelector = props => {
|
|
|
242
249
|
};
|
|
243
250
|
PageSizeSelector.propTypes = {};
|
|
244
251
|
PageSizeSelector.displayName = 'PageSizeSelector';
|
|
245
|
-
const defaultProps$1 = {
|
|
246
|
-
perPage: 20,
|
|
247
|
-
perPageRange: 's'
|
|
248
|
-
};
|
|
249
|
-
PageSizeSelector.defaultProps = defaultProps$1;
|
|
250
252
|
var PageSizeSelector$1 = PageSizeSelector;
|
|
251
253
|
|
|
254
|
+
const _excluded = ["perPage", "perPageRange"];
|
|
252
255
|
var _ref = {
|
|
253
256
|
name: "15sp3y3",
|
|
254
257
|
styles: "flex-grow:2"
|
|
255
258
|
} ;
|
|
256
|
-
const Pagination =
|
|
257
|
-
|
|
258
|
-
|
|
259
|
+
const Pagination = _ref2 => {
|
|
260
|
+
let _ref2$perPage = _ref2.perPage,
|
|
261
|
+
perPage = _ref2$perPage === void 0 ? 20 : _ref2$perPage,
|
|
262
|
+
_ref2$perPageRange = _ref2.perPageRange,
|
|
263
|
+
perPageRange = _ref2$perPageRange === void 0 ? 's' : _ref2$perPageRange,
|
|
264
|
+
props = _objectWithoutProperties(_ref2, _excluded);
|
|
265
|
+
const totalPages = Math.ceil(props.totalItems / perPage);
|
|
266
|
+
const pageItems = props.page === totalPages ? props.totalItems - perPage * (props.page - 1) : perPage;
|
|
259
267
|
return jsxRuntime.jsxs(Spacings__default["default"].Inline, {
|
|
260
268
|
justifyContent: "space-between",
|
|
261
269
|
children: [jsxRuntime.jsx("div", {
|
|
262
270
|
css: _ref,
|
|
263
271
|
children: jsxRuntime.jsx(PageSizeSelector$1, {
|
|
264
272
|
pageItems: pageItems,
|
|
265
|
-
perPage:
|
|
266
|
-
perPageRange:
|
|
273
|
+
perPage: perPage,
|
|
274
|
+
perPageRange: perPageRange,
|
|
267
275
|
onPerPageChange: props.onPerPageChange
|
|
268
276
|
})
|
|
269
277
|
}), jsxRuntime.jsx(PageNavigator$1, {
|
|
@@ -274,15 +282,10 @@ const Pagination = props => {
|
|
|
274
282
|
});
|
|
275
283
|
};
|
|
276
284
|
Pagination.displayName = 'Pagination';
|
|
277
|
-
const defaultProps = {
|
|
278
|
-
perPage: 20,
|
|
279
|
-
perPageRange: 's'
|
|
280
|
-
};
|
|
281
|
-
Pagination.defaultProps = defaultProps;
|
|
282
285
|
var Pagination$1 = Pagination;
|
|
283
286
|
|
|
284
287
|
// NOTE: This string will be replaced on build time with the package version.
|
|
285
|
-
var version = "19.
|
|
288
|
+
var version = "19.22.0";
|
|
286
289
|
|
|
287
290
|
exports.PageNavigator = PageNavigator$1;
|
|
288
291
|
exports.PageSizeSelector = PageSizeSelector$1;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import _objectWithoutProperties from '@babel/runtime-corejs3/helpers/esm/objectWithoutProperties';
|
|
1
2
|
import '@emotion/react';
|
|
2
3
|
import Spacings from '@commercetools-uikit/spacings';
|
|
3
4
|
import { jsx, jsxs } from '@emotion/react/jsx-runtime';
|
|
@@ -170,6 +171,7 @@ const messages = defineMessages({
|
|
|
170
171
|
});
|
|
171
172
|
var messages$1 = messages;
|
|
172
173
|
|
|
174
|
+
const _excluded$1 = ["perPage", "perPageRange"];
|
|
173
175
|
function ownKeys(e, r) { var t = _Object$keys(e); if (_Object$getOwnPropertySymbols) { var o = _Object$getOwnPropertySymbols(e); r && (o = _filterInstanceProperty(o).call(o, function (r) { return _Object$getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
174
176
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var _context, _context2; var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? _forEachInstanceProperty(_context = ownKeys(Object(t), !0)).call(_context, function (r) { _defineProperty(e, r, t[r]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(e, _Object$getOwnPropertyDescriptors(t)) : _forEachInstanceProperty(_context2 = ownKeys(Object(t))).call(_context2, function (r) { _Object$defineProperty(e, r, _Object$getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
175
177
|
const mapRangeToListOfOptions = perPageRange => {
|
|
@@ -184,13 +186,18 @@ const mapRangeToListOfOptions = perPageRange => {
|
|
|
184
186
|
throw new Error(`Invalid page range "${perPageRange}", expected one of "s,m,l".`);
|
|
185
187
|
}
|
|
186
188
|
};
|
|
187
|
-
const PageSizeSelector =
|
|
189
|
+
const PageSizeSelector = _ref => {
|
|
190
|
+
let _ref$perPage = _ref.perPage,
|
|
191
|
+
perPage = _ref$perPage === void 0 ? 20 : _ref$perPage,
|
|
192
|
+
_ref$perPageRange = _ref.perPageRange,
|
|
193
|
+
perPageRange = _ref$perPageRange === void 0 ? 's' : _ref$perPageRange,
|
|
194
|
+
props = _objectWithoutProperties(_ref, _excluded$1);
|
|
188
195
|
const _useState = useState(uniqueId('per-page-selector-')),
|
|
189
196
|
_useState2 = _slicedToArray(_useState, 1),
|
|
190
197
|
perPageSelectorId = _useState2[0];
|
|
191
|
-
const options = mapRangeToListOfOptions(
|
|
192
|
-
const hasValidPerPageOption = _includesInstanceProperty(options).call(options,
|
|
193
|
-
process.env.NODE_ENV !== "production" ? warning(hasValidPerPageOption, `@commercetools-uikit/pagination: invalid page size ${
|
|
198
|
+
const options = mapRangeToListOfOptions(perPageRange);
|
|
199
|
+
const hasValidPerPageOption = _includesInstanceProperty(options).call(options, perPage);
|
|
200
|
+
process.env.NODE_ENV !== "production" ? warning(hasValidPerPageOption, `@commercetools-uikit/pagination: invalid page size ${perPage}. It must be one of the values of the selected range in "${options.toString()}".`) : void 0;
|
|
194
201
|
const onPerPageChange = props.onPerPageChange;
|
|
195
202
|
const handleSelectPerPage = useCallback(event => {
|
|
196
203
|
onPerPageChange(Number(event.target.value));
|
|
@@ -203,7 +210,7 @@ const PageSizeSelector = props => {
|
|
|
203
210
|
id: perPageSelectorId,
|
|
204
211
|
isSearchable: false,
|
|
205
212
|
name: "per-page-selector",
|
|
206
|
-
value:
|
|
213
|
+
value: perPage.toString(),
|
|
207
214
|
options: _mapInstanceProperty(options).call(options, option => ({
|
|
208
215
|
value: option.toString(),
|
|
209
216
|
label: option.toString()
|
|
@@ -221,19 +228,15 @@ const PageSizeSelector = props => {
|
|
|
221
228
|
});
|
|
222
229
|
};
|
|
223
230
|
PageSizeSelector.propTypes = process.env.NODE_ENV !== "production" ? {
|
|
224
|
-
perPage: _pt.number
|
|
225
|
-
perPageRange: _pt.oneOf(['s', 'm', 'l'])
|
|
231
|
+
perPage: _pt.number,
|
|
232
|
+
perPageRange: _pt.oneOf(['s', 'm', 'l']),
|
|
226
233
|
onPerPageChange: _pt.func.isRequired,
|
|
227
234
|
pageItems: _pt.number.isRequired
|
|
228
235
|
} : {};
|
|
229
236
|
PageSizeSelector.displayName = 'PageSizeSelector';
|
|
230
|
-
const defaultProps$1 = {
|
|
231
|
-
perPage: 20,
|
|
232
|
-
perPageRange: 's'
|
|
233
|
-
};
|
|
234
|
-
PageSizeSelector.defaultProps = defaultProps$1;
|
|
235
237
|
var PageSizeSelector$1 = PageSizeSelector;
|
|
236
238
|
|
|
239
|
+
const _excluded = ["perPage", "perPageRange"];
|
|
237
240
|
function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
|
|
238
241
|
var _ref = process.env.NODE_ENV === "production" ? {
|
|
239
242
|
name: "15sp3y3",
|
|
@@ -241,20 +244,25 @@ var _ref = process.env.NODE_ENV === "production" ? {
|
|
|
241
244
|
} : {
|
|
242
245
|
name: "mvvfm1-Pagination",
|
|
243
246
|
styles: "flex-grow:2;label:Pagination;",
|
|
244
|
-
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
247
|
+
map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInBhZ2luYXRpb24udHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTBEZ0IiLCJmaWxlIjoicGFnaW5hdGlvbi50c3giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgU3BhY2luZ3MgZnJvbSAnQGNvbW1lcmNldG9vbHMtdWlraXQvc3BhY2luZ3MnO1xuaW1wb3J0IFBhZ2VOYXZpZ2F0b3IgZnJvbSAnLi9wYWdlLW5hdmlnYXRvcic7XG5pbXBvcnQgUGFnZVNpemVTZWxlY3RvciwgeyB0eXBlIFRQYWdlUmFuZ2VTaXplIH0gZnJvbSAnLi9wYWdlLXNpemUtc2VsZWN0b3InO1xuXG5leHBvcnQgdHlwZSBUUGFnaW5hdGlvblByb3BzID0ge1xuICAvKipcbiAgICogVG90YWwgbnVtYmVyIG9mIGl0ZW1zIGFjcm9zcyBhbGwgcGFnZXNcbiAgICovXG4gIHRvdGFsSXRlbXM6IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIGN1cnJlbnQgcGFnZVxuICAgKi9cbiAgcGFnZTogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBBIGNhbGxiYWNrIGZ1bmN0aW9uLCBjYWxsZWQgd2hlbiB0aGUgcGFnZSBpcyBjaGFuZ2VkLlxuICAgKi9cbiAgb25QYWdlQ2hhbmdlOiAobmV3UGFnZTogbnVtYmVyKSA9PiB2b2lkO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgaXRlbXMgcGVyIHBhZ2UsIGFjY29yZGluZyB0byB0aGUgcHJlLWRlZmluZWQgcmFuZ2UgdmFsdWVzLlxuICAgKi9cbiAgcGVyUGFnZT86IG51bWJlcjtcblxuICAvKipcbiAgICogUmFuZ2Ugb2YgaXRlbXMgcGVyIHBhZ2UuXG4gICAqIDxici8+XG4gICAqIGBzOiAyMCw1MGBcbiAgICogPGJyLz5cbiAgICogYG06IDIwLDUwLDEwMGBcbiAgICogPGJyLz5cbiAgICogYGw6IDIwMCw1MDBgXG4gICAqL1xuICBwZXJQYWdlUmFuZ2U/OiBUUGFnZVJhbmdlU2l6ZTtcblxuICAvKipcbiAgICogQSBjYWxsYmFjayBmdW5jdGlvbiwgY2FsbGVkIHdoZW4gYHBlclBhZ2VgIGlzIGNoYW5nZWQuXG4gICAqL1xuICBvblBlclBhZ2VDaGFuZ2U6IChuZXdQZXJQYWdlOiBudW1iZXIpID0+IHZvaWQ7XG59O1xuXG5jb25zdCBQYWdpbmF0aW9uID0gKHtcbiAgcGVyUGFnZSA9IDIwLFxuICBwZXJQYWdlUmFuZ2UgPSAncycsXG4gIC4uLnByb3BzXG59OiBUUGFnaW5hdGlvblByb3BzKSA9PiB7XG4gIGNvbnN0IHRvdGFsUGFnZXMgPSBNYXRoLmNlaWwocHJvcHMudG90YWxJdGVtcyAvIHBlclBhZ2UpO1xuXG4gIGNvbnN0IHBhZ2VJdGVtcyA9XG4gICAgcHJvcHMucGFnZSA9PT0gdG90YWxQYWdlc1xuICAgICAgPyBwcm9wcy50b3RhbEl0ZW1zIC0gcGVyUGFnZSAqIChwcm9wcy5wYWdlIC0gMSlcbiAgICAgIDogcGVyUGFnZTtcblxuICByZXR1cm4gKFxuICAgIDxTcGFjaW5ncy5JbmxpbmUganVzdGlmeUNvbnRlbnQ9XCJzcGFjZS1iZXR3ZWVuXCI+XG4gICAgICA8ZGl2XG4gICAgICAgIGNzcz17Y3NzYFxuICAgICAgICAgIGZsZXgtZ3JvdzogMjtcbiAgICAgICAgYH1cbiAgICAgID5cbiAgICAgICAgPFBhZ2VTaXplU2VsZWN0b3JcbiAgICAgICAgICBwYWdlSXRlbXM9e3BhZ2VJdGVtc31cbiAgICAgICAgICBwZXJQYWdlPXtwZXJQYWdlfVxuICAgICAgICAgIHBlclBhZ2VSYW5nZT17cGVyUGFnZVJhbmdlfVxuICAgICAgICAgIG9uUGVyUGFnZUNoYW5nZT17cHJvcHMub25QZXJQYWdlQ2hhbmdlfVxuICAgICAgICAvPlxuICAgICAgPC9kaXY+XG4gICAgICA8UGFnZU5hdmlnYXRvclxuICAgICAgICB0b3RhbFBhZ2VzPXt0b3RhbFBhZ2VzfVxuICAgICAgICBwYWdlPXtwcm9wcy5wYWdlfVxuICAgICAgICBvblBhZ2VDaGFuZ2U9e3Byb3BzLm9uUGFnZUNoYW5nZX1cbiAgICAgIC8+XG4gICAgPC9TcGFjaW5ncy5JbmxpbmU+XG4gICk7XG59O1xuXG5QYWdpbmF0aW9uLmRpc3BsYXlOYW1lID0gJ1BhZ2luYXRpb24nO1xuXG5leHBvcnQgdHlwZSB7IFRQYWdlUmFuZ2VTaXplIH07XG5cbmV4cG9ydCBkZWZhdWx0IFBhZ2luYXRpb247XG4iXX0= */",
|
|
245
248
|
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
246
249
|
};
|
|
247
|
-
const Pagination =
|
|
248
|
-
|
|
249
|
-
|
|
250
|
+
const Pagination = _ref2 => {
|
|
251
|
+
let _ref2$perPage = _ref2.perPage,
|
|
252
|
+
perPage = _ref2$perPage === void 0 ? 20 : _ref2$perPage,
|
|
253
|
+
_ref2$perPageRange = _ref2.perPageRange,
|
|
254
|
+
perPageRange = _ref2$perPageRange === void 0 ? 's' : _ref2$perPageRange,
|
|
255
|
+
props = _objectWithoutProperties(_ref2, _excluded);
|
|
256
|
+
const totalPages = Math.ceil(props.totalItems / perPage);
|
|
257
|
+
const pageItems = props.page === totalPages ? props.totalItems - perPage * (props.page - 1) : perPage;
|
|
250
258
|
return jsxs(Spacings.Inline, {
|
|
251
259
|
justifyContent: "space-between",
|
|
252
260
|
children: [jsx("div", {
|
|
253
261
|
css: _ref,
|
|
254
262
|
children: jsx(PageSizeSelector$1, {
|
|
255
263
|
pageItems: pageItems,
|
|
256
|
-
perPage:
|
|
257
|
-
perPageRange:
|
|
264
|
+
perPage: perPage,
|
|
265
|
+
perPageRange: perPageRange,
|
|
258
266
|
onPerPageChange: props.onPerPageChange
|
|
259
267
|
})
|
|
260
268
|
}), jsx(PageNavigator$1, {
|
|
@@ -265,14 +273,9 @@ const Pagination = props => {
|
|
|
265
273
|
});
|
|
266
274
|
};
|
|
267
275
|
Pagination.displayName = 'Pagination';
|
|
268
|
-
const defaultProps = {
|
|
269
|
-
perPage: 20,
|
|
270
|
-
perPageRange: 's'
|
|
271
|
-
};
|
|
272
|
-
Pagination.defaultProps = defaultProps;
|
|
273
276
|
var Pagination$1 = Pagination;
|
|
274
277
|
|
|
275
278
|
// NOTE: This string will be replaced on build time with the package version.
|
|
276
|
-
var version = "19.
|
|
279
|
+
var version = "19.22.0";
|
|
277
280
|
|
|
278
281
|
export { PageNavigator$1 as PageNavigator, PageSizeSelector$1 as PageSizeSelector, Pagination$1 as Pagination, version };
|
|
@@ -3,7 +3,7 @@ export type TPageSizeSelectorProps = {
|
|
|
3
3
|
/**
|
|
4
4
|
* Number of items per page, according to the pre-defined range values.
|
|
5
5
|
*/
|
|
6
|
-
perPage
|
|
6
|
+
perPage?: number;
|
|
7
7
|
/**
|
|
8
8
|
* Range of items per page.
|
|
9
9
|
* <br/>
|
|
@@ -13,7 +13,7 @@ export type TPageSizeSelectorProps = {
|
|
|
13
13
|
* <br/>
|
|
14
14
|
* `LARGE: 200,500`
|
|
15
15
|
*/
|
|
16
|
-
perPageRange
|
|
16
|
+
perPageRange?: TPageRangeSize;
|
|
17
17
|
/**
|
|
18
18
|
* A callback function, called when `perPage` is changed.
|
|
19
19
|
*/
|
|
@@ -24,8 +24,7 @@ export type TPageSizeSelectorProps = {
|
|
|
24
24
|
pageItems: number;
|
|
25
25
|
};
|
|
26
26
|
declare const PageSizeSelector: {
|
|
27
|
-
(props: TPageSizeSelectorProps): import("@emotion/react/jsx-runtime").JSX.Element;
|
|
27
|
+
({ perPage, perPageRange, ...props }: TPageSizeSelectorProps): import("@emotion/react/jsx-runtime").JSX.Element;
|
|
28
28
|
displayName: string;
|
|
29
|
-
defaultProps: Pick<TPageSizeSelectorProps, "perPage" | "perPageRange">;
|
|
30
29
|
};
|
|
31
30
|
export default PageSizeSelector;
|
|
@@ -15,7 +15,7 @@ export type TPaginationProps = {
|
|
|
15
15
|
/**
|
|
16
16
|
* Number of items per page, according to the pre-defined range values.
|
|
17
17
|
*/
|
|
18
|
-
perPage
|
|
18
|
+
perPage?: number;
|
|
19
19
|
/**
|
|
20
20
|
* Range of items per page.
|
|
21
21
|
* <br/>
|
|
@@ -25,16 +25,15 @@ export type TPaginationProps = {
|
|
|
25
25
|
* <br/>
|
|
26
26
|
* `l: 200,500`
|
|
27
27
|
*/
|
|
28
|
-
perPageRange
|
|
28
|
+
perPageRange?: TPageRangeSize;
|
|
29
29
|
/**
|
|
30
30
|
* A callback function, called when `perPage` is changed.
|
|
31
31
|
*/
|
|
32
32
|
onPerPageChange: (newPerPage: number) => void;
|
|
33
33
|
};
|
|
34
34
|
declare const Pagination: {
|
|
35
|
-
(props: TPaginationProps): import("@emotion/react/jsx-runtime").JSX.Element;
|
|
35
|
+
({ perPage, perPageRange, ...props }: TPaginationProps): import("@emotion/react/jsx-runtime").JSX.Element;
|
|
36
36
|
displayName: string;
|
|
37
|
-
defaultProps: Pick<TPaginationProps, "perPage" | "perPageRange">;
|
|
38
37
|
};
|
|
39
38
|
export type { TPageRangeSize };
|
|
40
39
|
export default Pagination;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@commercetools-uikit/pagination",
|
|
3
3
|
"description": "Components for navigating through pages of items",
|
|
4
|
-
"version": "19.
|
|
4
|
+
"version": "19.22.0",
|
|
5
5
|
"bugs": "https://github.com/commercetools/ui-kit/issues",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
@@ -21,16 +21,16 @@
|
|
|
21
21
|
"dependencies": {
|
|
22
22
|
"@babel/runtime": "^7.20.13",
|
|
23
23
|
"@babel/runtime-corejs3": "^7.20.13",
|
|
24
|
-
"@commercetools-uikit/constraints": "19.
|
|
25
|
-
"@commercetools-uikit/design-system": "19.
|
|
26
|
-
"@commercetools-uikit/icons": "19.
|
|
27
|
-
"@commercetools-uikit/label": "19.
|
|
28
|
-
"@commercetools-uikit/number-input": "19.
|
|
29
|
-
"@commercetools-uikit/secondary-icon-button": "19.
|
|
30
|
-
"@commercetools-uikit/select-input": "19.
|
|
31
|
-
"@commercetools-uikit/spacings": "19.
|
|
32
|
-
"@commercetools-uikit/text": "19.
|
|
33
|
-
"@commercetools-uikit/utils": "19.
|
|
24
|
+
"@commercetools-uikit/constraints": "19.22.0",
|
|
25
|
+
"@commercetools-uikit/design-system": "19.22.0",
|
|
26
|
+
"@commercetools-uikit/icons": "19.22.0",
|
|
27
|
+
"@commercetools-uikit/label": "19.22.0",
|
|
28
|
+
"@commercetools-uikit/number-input": "19.22.0",
|
|
29
|
+
"@commercetools-uikit/secondary-icon-button": "19.22.0",
|
|
30
|
+
"@commercetools-uikit/select-input": "19.22.0",
|
|
31
|
+
"@commercetools-uikit/spacings": "19.22.0",
|
|
32
|
+
"@commercetools-uikit/text": "19.22.0",
|
|
33
|
+
"@commercetools-uikit/utils": "19.22.0",
|
|
34
34
|
"@emotion/react": "^11.10.5",
|
|
35
35
|
"@emotion/styled": "^11.10.5",
|
|
36
36
|
"formik": "^2.2.9",
|