@semcore/pagination 4.52.0-prerelease.0 → 4.52.1-prerelease.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.
@@ -1,168 +1,212 @@
1
- import D from "@babel/runtime/helpers/esm/objectWithoutProperties";
2
- import x from "@babel/runtime/helpers/esm/objectSpread2";
3
- import S from "@babel/runtime/helpers/esm/classCallCheck";
4
- import I from "@babel/runtime/helpers/esm/createClass";
5
- import c from "@babel/runtime/helpers/esm/assertThisInitialized";
6
- import y from "@babel/runtime/helpers/esm/inherits";
7
- import T from "@babel/runtime/helpers/esm/createSuper";
8
- import l from "@babel/runtime/helpers/esm/defineProperty";
9
- import { sstyled as O } from "@semcore/utils/lib/core/index";
10
- import G, { sstyled as h, assignProps as m, Component as C } from "@semcore/core";
11
- import n from "react";
12
- import { Flex as E, ScreenReaderOnly as j } from "@semcore/flex-box";
13
- import k from "@semcore/input-number";
14
- import { Text as N } from "@semcore/typography";
15
- import L, { ButtonLink as K } from "@semcore/button";
16
- import { Hint as U } from "@semcore/tooltip";
17
- import W from "@semcore/icon/ChevronDoubleLeft/m";
18
- import q from "@semcore/utils/lib/uniqueID";
19
- import H from "@semcore/utils/lib/enhances/i18nEnhance";
20
- import { localizedMessages as A } from "./translations/__intergalactic-dynamic-locales.mjs";
21
- var M = ["styles", "getI18nText", "totalPages", "isLastOrSingle", "children"], J = (
1
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
2
+ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
3
+ import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
4
+ import _createClass from "@babel/runtime/helpers/esm/createClass";
5
+ import _assertThisInitialized from "@babel/runtime/helpers/esm/assertThisInitialized";
6
+ import _inherits from "@babel/runtime/helpers/esm/inherits";
7
+ import _createSuper from "@babel/runtime/helpers/esm/createSuper";
8
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
9
+ import { sstyled } from "@semcore/utils/lib/core/index";
10
+ import createComponent, { sstyled as sstyled$1, assignProps, Component } from "@semcore/core";
11
+ import React from "react";
12
+ import { Flex, ScreenReaderOnly } from "@semcore/flex-box";
13
+ import InputNumber from "@semcore/input-number";
14
+ import { Text } from "@semcore/typography";
15
+ import Button, { ButtonLink } from "@semcore/button";
16
+ import { Hint } from "@semcore/tooltip";
17
+ import ChevronDoubleLeft from "@semcore/icon/ChevronDoubleLeft/m";
18
+ import uniqueIDEnhancement from "@semcore/utils/lib/uniqueID";
19
+ import i18nEnhance from "@semcore/utils/lib/enhances/i18nEnhance";
20
+ import { localizedMessages } from "./translations/__intergalactic-dynamic-locales.mjs";
21
+ var _excluded = ["styles", "getI18nText", "totalPages", "isLastOrSingle", "children"];
22
+ /*!__reshadow-styles__:"./style/pagination.shadow.css"*/
23
+ var style = (
22
24
  /*__reshadow_css_start__*/
23
- (O.insert(
25
+ (sstyled.insert(
24
26
  /*__inner_css_start__*/
25
- ".___SPagination_14rx5_gg_{justify-content:flex-start;align-items:center}.___SPagination_14rx5_gg_.__withGap_14rx5_gg_{gap:var(--intergalactic-spacing-4x, 16px)}.___SPagination_14rx5_gg_.__withGap_14rx5_gg_._size_l_14rx5_gg_{gap:var(--intergalactic-spacing-5x, 20px)}.___SNextPage_14rx5_gg_,.___SPrevPage_14rx5_gg_{align-self:center;margin-left:var(--intergalactic-spacing-2x, 8px)}.___SNextPage_14rx5_gg_._size_l_14rx5_gg_,.___SPrevPage_14rx5_gg_._size_l_14rx5_gg_{margin-left:var(--intergalactic-spacing-3x, 12px)}.___SLabel_14rx5_gg_{color:var(--intergalactic-text-primary, #191b23)}.___SLabel_14rx5_gg_:not(:first-child){margin-left:var(--intergalactic-spacing-4x, 16px)}.___SLabel_14rx5_gg_._size_l_14rx5_gg_:not(:first-child){margin-left:var(--intergalactic-spacing-5x, 20px)}.___STotalPages_14rx5_gg_{align-self:center;line-height:normal;color:var(--intergalactic-text-link, #006dca)}.___STotalPagesLabel_14rx5_gg_{margin-left:var(--intergalactic-spacing-2x, 8px);margin-right:var(--intergalactic-spacing-1x, 4px);color:var(--intergalactic-text-primary, #191b23)}.___STotalLastPages_14rx5_gg_{font-size:var(--intergalactic-fs-200, 14px);line-height:var(--intergalactic-lh-200, 142%);color:var(--intergalactic-text-primary, #191b23)}.___STotalLastPages_14rx5_gg_._size_l_14rx5_gg_{font-size:var(--intergalactic-fs-300, 16px);line-height:var(--intergalactic-lh-300, 150%)}.___SPageInput_14rx5_gg_{max-width:68px;margin-left:var(--intergalactic-spacing-1x, 4px)}.___SPageInput_14rx5_gg_._size_l_14rx5_gg_{margin-left:var(--intergalactic-spacing-2x, 8px)}.___SPageInput_14rx5_gg_:focus-within .___SPageInputAddon_14rx5_gg_{opacity:1;clip:initial;position:static}.___SPageInputAddon_14rx5_gg_{opacity:0;clip:rect(1px,1px,1px,1px);position:absolute}.___SLabel_14rx5_gg_,.___STotalPagesLabel_14rx5_gg_,.___STotalPages_14rx5_gg_{font-size:var(--intergalactic-fs-200, 14px);line-height:var(--intergalactic-lh-200, 142%)}.___SLabel_14rx5_gg_._size_l_14rx5_gg_,.___STotalPagesLabel_14rx5_gg_._size_l_14rx5_gg_,.___STotalPages_14rx5_gg_._size_l_14rx5_gg_{font-size:var(--intergalactic-fs-300, 16px);line-height:var(--intergalactic-lh-300, 150%)}",
26
- "14rx5_gg_"
27
- ), {
28
- __SPagination: "___SPagination_14rx5_gg_",
29
- __SLabel: "___SLabel_14rx5_gg_",
30
- _size_l: "_size_l_14rx5_gg_",
31
- __STotalPages: "___STotalPages_14rx5_gg_",
32
- __STotalPagesLabel: "___STotalPagesLabel_14rx5_gg_",
33
- __SPageInput: "___SPageInput_14rx5_gg_",
34
- __SPageInputAddon: "___SPageInputAddon_14rx5_gg_",
35
- _withGap: "__withGap_14rx5_gg_",
36
- __SNextPage: "___SNextPage_14rx5_gg_",
37
- __SPrevPage: "___SPrevPage_14rx5_gg_",
38
- __STotalLastPages: "___STotalLastPages_14rx5_gg_"
27
+ ".___SPagination_zeth0_gg_{justify-content:flex-start;align-items:center}.___SPagination_zeth0_gg_.__withGap_zeth0_gg_{gap:var(--intergalactic-spacing-4x, 16px)}.___SPagination_zeth0_gg_.__withGap_zeth0_gg_._size_l_zeth0_gg_{gap:var(--intergalactic-spacing-5x, 20px)}.___SNextPage_zeth0_gg_,.___SPrevPage_zeth0_gg_{align-self:center;margin-left:var(--intergalactic-spacing-2x, 8px)}.___SNextPage_zeth0_gg_._size_l_zeth0_gg_,.___SPrevPage_zeth0_gg_._size_l_zeth0_gg_{margin-left:var(--intergalactic-spacing-3x, 12px)}.___SLabel_zeth0_gg_{color:var(--intergalactic-text-primary, #191b23)}.___SLabel_zeth0_gg_:not(:first-child){margin-left:var(--intergalactic-spacing-4x, 16px)}.___SLabel_zeth0_gg_._size_l_zeth0_gg_:not(:first-child){margin-left:var(--intergalactic-spacing-5x, 20px)}.___STotalPages_zeth0_gg_{align-self:center;line-height:normal;color:var(--intergalactic-text-link, #006dca)}.___STotalPagesLabel_zeth0_gg_{margin-left:var(--intergalactic-spacing-2x, 8px);margin-right:var(--intergalactic-spacing-1x, 4px);color:var(--intergalactic-text-primary, #191b23)}.___STotalLastPages_zeth0_gg_{font-size:var(--intergalactic-fs-200, 14px);line-height:var(--intergalactic-lh-200, 142%);color:var(--intergalactic-text-primary, #191b23)}.___STotalLastPages_zeth0_gg_._size_l_zeth0_gg_{font-size:var(--intergalactic-fs-300, 16px);line-height:var(--intergalactic-lh-300, 150%)}.___SPageInput_zeth0_gg_{max-width:68px;margin-left:var(--intergalactic-spacing-1x, 4px)}.___SPageInput_zeth0_gg_._size_l_zeth0_gg_{margin-left:var(--intergalactic-spacing-2x, 8px)}.___SPageInput_zeth0_gg_:focus-within .___SPageInputAddon_zeth0_gg_{opacity:1;clip:initial;position:static}.___SPageInputAddon_zeth0_gg_{opacity:0;clip:rect(1px,1px,1px,1px);position:absolute}.___SLabel_zeth0_gg_,.___STotalPagesLabel_zeth0_gg_,.___STotalPages_zeth0_gg_{font-size:var(--intergalactic-fs-200, 14px);line-height:var(--intergalactic-lh-200, 142%)}.___SLabel_zeth0_gg_._size_l_zeth0_gg_,.___STotalPagesLabel_zeth0_gg_._size_l_zeth0_gg_,.___STotalPages_zeth0_gg_._size_l_zeth0_gg_{font-size:var(--intergalactic-fs-300, 16px);line-height:var(--intergalactic-lh-300, 150%)}",
28
+ /*__inner_css_end__*/
29
+ "zeth0_gg_"
30
+ ), /*__reshadow_css_end__*/
31
+ {
32
+ "__SPagination": "___SPagination_zeth0_gg_",
33
+ "__SLabel": "___SLabel_zeth0_gg_",
34
+ "_size_l": "_size_l_zeth0_gg_",
35
+ "__STotalPages": "___STotalPages_zeth0_gg_",
36
+ "__STotalPagesLabel": "___STotalPagesLabel_zeth0_gg_",
37
+ "__SPageInput": "___SPageInput_zeth0_gg_",
38
+ "__SPageInputAddon": "___SPageInputAddon_zeth0_gg_",
39
+ "_withGap": "__withGap_zeth0_gg_",
40
+ "__SNextPage": "___SNextPage_zeth0_gg_",
41
+ "__SPrevPage": "___SPrevPage_zeth0_gg_",
42
+ "__STotalLastPages": "___STotalLastPages_zeth0_gg_"
39
43
  })
40
- ), b = /* @__PURE__ */ function(_) {
41
- y(r, _);
42
- var u = T(r);
43
- function r() {
44
- var e;
45
- S(this, r);
46
- for (var s = arguments.length, g = new Array(s), f = 0; f < s; f++)
47
- g[f] = arguments[f];
48
- return e = u.call.apply(u, [this].concat(g)), l(c(e), "nextPageButtonRef", /* @__PURE__ */ n.createRef()), l(c(e), "prevPageButtonRef", /* @__PURE__ */ n.createRef()), l(c(e), "state", {
44
+ );
45
+ var PaginationRoot = /* @__PURE__ */ function(_Component) {
46
+ _inherits(PaginationRoot2, _Component);
47
+ var _super = _createSuper(PaginationRoot2);
48
+ function PaginationRoot2() {
49
+ var _this;
50
+ _classCallCheck(this, PaginationRoot2);
51
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
52
+ args[_key] = arguments[_key];
53
+ }
54
+ _this = _super.call.apply(_super, [this].concat(args));
55
+ _defineProperty(_assertThisInitialized(_this), "nextPageButtonRef", /* @__PURE__ */ React.createRef());
56
+ _defineProperty(_assertThisInitialized(_this), "prevPageButtonRef", /* @__PURE__ */ React.createRef());
57
+ _defineProperty(_assertThisInitialized(_this), "state", {
49
58
  // Crutch, so as not to take out `dirtyCurrentPage` in props
50
59
  dirtyCurrentPage: void 0
51
- }), l(c(e), "pageInputAddonRef", /* @__PURE__ */ n.createRef()), l(c(e), "returnLostFocus", function() {
60
+ });
61
+ _defineProperty(_assertThisInitialized(_this), "pageInputAddonRef", /* @__PURE__ */ React.createRef());
62
+ _defineProperty(_assertThisInitialized(_this), "returnLostFocus", function() {
52
63
  setTimeout(function() {
53
- if (document.activeElement === document.body) {
54
- var t = e.prevPageButtonRef.current, a = e.nextPageButtonRef.current;
55
- t && !t.disabled ? t.focus() : a && !a.disabled && a.focus();
64
+ if (document.activeElement !== document.body) return;
65
+ var prevPageButton = _this.prevPageButtonRef.current;
66
+ var nextPageButton = _this.nextPageButtonRef.current;
67
+ if (prevPageButton && !prevPageButton.disabled) {
68
+ prevPageButton.focus();
69
+ } else if (nextPageButton && !nextPageButton.disabled) {
70
+ nextPageButton.focus();
56
71
  }
57
72
  }, 0);
58
- }), l(c(e), "handlePageChange", function(t) {
59
- t = Number(t), !Number.isNaN(t) && (e.handlers.currentPage(t), e.setState({
73
+ });
74
+ _defineProperty(_assertThisInitialized(_this), "handlePageChange", function(currentPage) {
75
+ currentPage = Number(currentPage);
76
+ if (Number.isNaN(currentPage)) {
77
+ return;
78
+ }
79
+ _this.handlers.currentPage(currentPage);
80
+ _this.setState({
60
81
  dirtyCurrentPage: void 0
61
- }), e.returnLostFocus());
62
- }), l(c(e), "handlePageValueChange", function(t) {
63
- var a = e.state.dirtyCurrentPage;
64
- Number.isNaN(Number(t)) && (t = a), e.setState({
65
- dirtyCurrentPage: t
66
82
  });
67
- }), l(c(e), "handlePageValueBlur", function() {
83
+ _this.returnLostFocus();
84
+ });
85
+ _defineProperty(_assertThisInitialized(_this), "handlePageValueChange", function(value) {
86
+ var dirtyCurrentPage = _this.state.dirtyCurrentPage;
87
+ if (Number.isNaN(Number(value))) {
88
+ value = dirtyCurrentPage;
89
+ }
90
+ _this.setState({
91
+ dirtyCurrentPage: value
92
+ });
93
+ });
94
+ _defineProperty(_assertThisInitialized(_this), "handlePageValueBlur", function() {
68
95
  setTimeout(function() {
69
- if (e.pageInputAddonRef.current !== document.activeElement) {
70
- var t = e.asProps.currentPage;
71
- e.setState({
72
- dirtyCurrentPage: t
96
+ if (_this.pageInputAddonRef.current !== document.activeElement) {
97
+ var currentPage = _this.asProps.currentPage;
98
+ _this.setState({
99
+ dirtyCurrentPage: currentPage
73
100
  });
74
101
  }
75
102
  }, 0);
76
- }), l(c(e), "getDirtyCurrentPage", function() {
77
- var t = e.state.dirtyCurrentPage, a = e.asProps.totalPages, i = t > a ? a : t;
78
- return i <= 0 ? 1 : i;
79
- }), l(c(e), "handlePageInputIconClick", function() {
80
- var t = e.getDirtyCurrentPage();
81
- e.handlePageChange(t);
82
- }), l(c(e), "handlePageInputKeyDown", function(t) {
83
- if (t.key === "Enter") {
84
- var a = e.getDirtyCurrentPage();
85
- e.handlePageChange(a);
86
- }
87
- }), l(c(e), "getFirstPageProps", function() {
88
- var t = e.asProps, a = t.currentPage, i = t.getI18nText, o = t.size, P = a <= 1;
103
+ });
104
+ _defineProperty(_assertThisInitialized(_this), "getDirtyCurrentPage", function() {
105
+ var dirtyCurrentPage = _this.state.dirtyCurrentPage;
106
+ var totalPages = _this.asProps.totalPages;
107
+ var finalValue = dirtyCurrentPage > totalPages ? totalPages : dirtyCurrentPage;
108
+ return finalValue <= 0 ? 1 : finalValue;
109
+ });
110
+ _defineProperty(_assertThisInitialized(_this), "handlePageInputIconClick", function() {
111
+ var dirtyCurrentPage = _this.getDirtyCurrentPage();
112
+ _this.handlePageChange(dirtyCurrentPage);
113
+ });
114
+ _defineProperty(_assertThisInitialized(_this), "handlePageInputKeyDown", function(event) {
115
+ if (event.key !== "Enter") return;
116
+ var dirtyCurrentPage = _this.getDirtyCurrentPage();
117
+ _this.handlePageChange(dirtyCurrentPage);
118
+ });
119
+ _defineProperty(_assertThisInitialized(_this), "getFirstPageProps", function() {
120
+ var _this$asProps = _this.asProps, currentPage = _this$asProps.currentPage, getI18nText = _this$asProps.getI18nText, size = _this$asProps.size;
121
+ var disabled = currentPage <= 1;
89
122
  return {
90
- disabled: P,
91
- onClick: function() {
92
- return e.handlePageChange(1);
123
+ disabled,
124
+ onClick: function onClick() {
125
+ return _this.handlePageChange(1);
93
126
  },
94
- getI18nText: i,
95
- size: o
127
+ getI18nText,
128
+ size
96
129
  };
97
- }), l(c(e), "getPrevPageProps", function() {
98
- var t = e.asProps, a = t.currentPage, i = t.getI18nText, o = t.size, P = a <= 1;
130
+ });
131
+ _defineProperty(_assertThisInitialized(_this), "getPrevPageProps", function() {
132
+ var _this$asProps2 = _this.asProps, currentPage = _this$asProps2.currentPage, getI18nText = _this$asProps2.getI18nText, size = _this$asProps2.size;
133
+ var disabled = currentPage <= 1;
99
134
  return {
100
- currentPage: a,
101
- disabled: P,
102
- onClick: function() {
103
- return e.handlePageChange(a - 1);
135
+ currentPage,
136
+ disabled,
137
+ onClick: function onClick() {
138
+ return _this.handlePageChange(currentPage - 1);
104
139
  },
105
- getI18nText: i,
106
- ref: e.nextPageButtonRef,
107
- size: o
140
+ getI18nText,
141
+ ref: _this.nextPageButtonRef,
142
+ size
108
143
  };
109
- }), l(c(e), "getNextPageProps", function() {
110
- var t = e.asProps, a = t.currentPage, i = t.totalPages, o = t.getI18nText, P = t.size, p = !(a < i);
144
+ });
145
+ _defineProperty(_assertThisInitialized(_this), "getNextPageProps", function() {
146
+ var _this$asProps3 = _this.asProps, currentPage = _this$asProps3.currentPage, totalPages = _this$asProps3.totalPages, getI18nText = _this$asProps3.getI18nText, size = _this$asProps3.size;
147
+ var disabled = !(currentPage < totalPages);
111
148
  return {
112
- currentPage: a,
113
- disabled: p,
114
- onClick: function() {
115
- return e.handlePageChange(a + 1);
149
+ currentPage,
150
+ disabled,
151
+ onClick: function onClick() {
152
+ return _this.handlePageChange(currentPage + 1);
116
153
  },
117
- getI18nText: o,
118
- ref: e.prevPageButtonRef,
119
- size: P
154
+ getI18nText,
155
+ ref: _this.prevPageButtonRef,
156
+ size
120
157
  };
121
- }), l(c(e), "getPageInputProps", function() {
122
- var t = e.asProps, a = t.getI18nText, i = t.locale, o = t.size;
158
+ });
159
+ _defineProperty(_assertThisInitialized(_this), "getPageInputProps", function() {
160
+ var _this$asProps4 = _this.asProps, getI18nText = _this$asProps4.getI18nText, locale = _this$asProps4.locale, size = _this$asProps4.size;
123
161
  return {
124
- getI18nText: a,
125
- locale: i,
126
- size: o
162
+ getI18nText,
163
+ locale,
164
+ size
127
165
  };
128
- }), l(c(e), "getPageInputAddonProps", function() {
166
+ });
167
+ _defineProperty(_assertThisInitialized(_this), "getPageInputAddonProps", function() {
129
168
  return {
130
- onClick: e.handlePageInputIconClick,
131
- ref: e.pageInputAddonRef,
132
- onBlur: e.handlePageValueBlur
169
+ onClick: _this.handlePageInputIconClick,
170
+ ref: _this.pageInputAddonRef,
171
+ onBlur: _this.handlePageValueBlur
133
172
  };
134
- }), l(c(e), "getPageInputValueProps", function() {
135
- var t = e.state.dirtyCurrentPage, a = e.asProps, i = a.currentPage, o = a.totalPages, P = a.getI18nText, p = a.size;
173
+ });
174
+ _defineProperty(_assertThisInitialized(_this), "getPageInputValueProps", function() {
175
+ var dirtyCurrentPage = _this.state.dirtyCurrentPage;
176
+ var _this$asProps5 = _this.asProps, currentPage = _this$asProps5.currentPage, totalPages = _this$asProps5.totalPages, getI18nText = _this$asProps5.getI18nText, size = _this$asProps5.size;
136
177
  return {
137
178
  min: 1,
138
- max: o,
139
- disabled: o === 1,
140
- value: t === void 0 ? i : t,
141
- onBlur: e.handlePageValueBlur,
142
- onChange: e.handlePageValueChange,
143
- onKeyDown: e.handlePageInputKeyDown,
144
- getI18nText: P,
145
- size: p
179
+ max: totalPages,
180
+ disabled: totalPages === 1,
181
+ value: dirtyCurrentPage === void 0 ? currentPage : dirtyCurrentPage,
182
+ onBlur: _this.handlePageValueBlur,
183
+ onChange: _this.handlePageValueChange,
184
+ onKeyDown: _this.handlePageInputKeyDown,
185
+ getI18nText,
186
+ size
146
187
  };
147
- }), l(c(e), "getTotalPagesProps", function() {
148
- var t = e.asProps, a = t.currentPage, i = t.totalPages, o = t.getI18nText, P = t.locale, p = t.size, d = new Intl.NumberFormat(P, {
188
+ });
189
+ _defineProperty(_assertThisInitialized(_this), "getTotalPagesProps", function() {
190
+ var _this$asProps6 = _this.asProps, currentPage = _this$asProps6.currentPage, totalPages = _this$asProps6.totalPages, getI18nText = _this$asProps6.getI18nText, locale = _this$asProps6.locale, size = _this$asProps6.size;
191
+ var formatter = new Intl.NumberFormat(locale, {
149
192
  style: "decimal"
150
193
  });
151
194
  return {
152
- totalPages: i,
153
- children: d.format(i),
154
- isLastOrSingle: a === i,
155
- onClick: function() {
156
- return e.handlePageChange(i);
195
+ totalPages,
196
+ children: formatter.format(totalPages),
197
+ isLastOrSingle: currentPage === totalPages,
198
+ onClick: function onClick() {
199
+ return _this.handlePageChange(totalPages);
157
200
  },
158
- getI18nText: o,
159
- size: p
201
+ getI18nText,
202
+ size
160
203
  };
161
- }), e;
204
+ });
205
+ return _this;
162
206
  }
163
- return I(r, [{
207
+ _createClass(PaginationRoot2, [{
164
208
  key: "uncontrolledProps",
165
- value: function() {
209
+ value: function uncontrolledProps() {
166
210
  return {
167
211
  totalPages: null,
168
212
  currentPage: null
@@ -170,177 +214,208 @@ var M = ["styles", "getI18nText", "totalPages", "isLastOrSingle", "children"], J
170
214
  }
171
215
  }, {
172
216
  key: "componentDidUpdate",
173
- value: function(s) {
174
- s.currentPage !== void 0 && s.currentPage !== this.asProps.currentPage && this.setState({
175
- dirtyCurrentPage: void 0
176
- });
217
+ value: function componentDidUpdate(prevProps) {
218
+ if (prevProps.currentPage !== void 0 && prevProps.currentPage !== this.asProps.currentPage) {
219
+ this.setState({
220
+ dirtyCurrentPage: void 0
221
+ });
222
+ }
177
223
  }
178
224
  }, {
179
225
  key: "render",
180
- value: function() {
181
- var s = this.asProps, g, f = E, t = this.asProps, a = t.Children, i = t.children, o = t.getI18nText, P = t.currentPage, p = t.totalPages, d = p === void 0 ? 1 : p;
182
- return g = h(this.asProps.styles), /* @__PURE__ */ n.createElement(f, g.cn("SPagination", x({}, m({
183
- flexWrap: "wrap",
184
- withGap: !i,
185
- tag: "nav",
186
- "aria-label": o("pagination")
187
- }, s))), i ? /* @__PURE__ */ n.createElement(a, g.cn("Children", {})) : /* @__PURE__ */ n.createElement(n.Fragment, null, d === 1 ? null : /* @__PURE__ */ n.createElement(E, g.cn("Flex", {}), /* @__PURE__ */ n.createElement(v.FirstPage, null), /* @__PURE__ */ n.createElement(v.PrevPage, null), /* @__PURE__ */ n.createElement(v.NextPage, null)), /* @__PURE__ */ n.createElement(E, g.cn("Flex", {
188
- alignItems: "center"
189
- }), /* @__PURE__ */ n.createElement(v.PageInput, null), /* @__PURE__ */ n.createElement(v.TotalPages, null))), /* @__PURE__ */ n.createElement(j, g.cn("ScreenReaderOnly", {
226
+ value: function render() {
227
+ var _ref = this.asProps, _ref9;
228
+ var SPagination = Flex;
229
+ var _this$asProps7 = this.asProps, Children = _this$asProps7.Children, hasChildren = _this$asProps7.children, getI18nText = _this$asProps7.getI18nText, currentPage = _this$asProps7.currentPage, _this$asProps7$totalP = _this$asProps7.totalPages, totalPages = _this$asProps7$totalP === void 0 ? 1 : _this$asProps7$totalP;
230
+ return _ref9 = sstyled$1(this.asProps.styles), /* @__PURE__ */ React.createElement(SPagination, _ref9.cn("SPagination", _objectSpread({}, assignProps({
231
+ "flexWrap": "wrap",
232
+ "withGap": !hasChildren,
233
+ "tag": "nav",
234
+ "aria-label": getI18nText("pagination")
235
+ }, _ref))), hasChildren ? /* @__PURE__ */ React.createElement(Children, _ref9.cn("Children", {})) : /* @__PURE__ */ React.createElement(React.Fragment, null, totalPages === 1 ? null : /* @__PURE__ */ React.createElement(Flex, _ref9.cn("Flex", {}), /* @__PURE__ */ React.createElement(Pagination.FirstPage, null), /* @__PURE__ */ React.createElement(Pagination.PrevPage, null), /* @__PURE__ */ React.createElement(Pagination.NextPage, null)), /* @__PURE__ */ React.createElement(Flex, _ref9.cn("Flex", {
236
+ "alignItems": "center"
237
+ }), /* @__PURE__ */ React.createElement(Pagination.PageInput, null), /* @__PURE__ */ React.createElement(Pagination.TotalPages, null))), /* @__PURE__ */ React.createElement(ScreenReaderOnly, _ref9.cn("ScreenReaderOnly", {
190
238
  "aria-live": "polite",
191
- role: "status"
192
- }), o("pageInputLabel"), " ", P));
239
+ "role": "status"
240
+ }), getI18nText("pageInputLabel"), " ", currentPage));
193
241
  }
194
- }]), r;
195
- }(C);
196
- l(b, "displayName", "Pagination");
197
- l(b, "defaultProps", function() {
242
+ }]);
243
+ return PaginationRoot2;
244
+ }(Component);
245
+ _defineProperty(PaginationRoot, "displayName", "Pagination");
246
+ _defineProperty(PaginationRoot, "defaultProps", function() {
198
247
  return {
199
248
  defaultCurrentPage: 1,
200
249
  defaultTotalPages: 1,
201
- i18n: A,
250
+ i18n: localizedMessages,
202
251
  locale: "en",
203
252
  size: "m"
204
253
  };
205
254
  });
206
- l(b, "style", J);
207
- l(b, "enhance", [H(A)]);
208
- var F = /* @__PURE__ */ function(_) {
209
- y(r, _);
210
- var u = T(r);
211
- function r() {
212
- return S(this, r), u.apply(this, arguments);
255
+ _defineProperty(PaginationRoot, "style", style);
256
+ _defineProperty(PaginationRoot, "enhance", [i18nEnhance(localizedMessages)]);
257
+ var FirstPage = /* @__PURE__ */ function(_Component2) {
258
+ _inherits(FirstPage2, _Component2);
259
+ var _super2 = _createSuper(FirstPage2);
260
+ function FirstPage2() {
261
+ _classCallCheck(this, FirstPage2);
262
+ return _super2.apply(this, arguments);
213
263
  }
214
- return I(r, [{
264
+ _createClass(FirstPage2, [{
215
265
  key: "render",
216
- value: function() {
217
- var s = this.asProps, g = this.asProps.getI18nText;
218
- return /* @__PURE__ */ n.createElement(L, m({
219
- "aria-label": g("firstPage")
220
- }, s));
266
+ value: function render() {
267
+ var _ref2 = this.asProps;
268
+ var getI18nText = this.asProps.getI18nText;
269
+ return /* @__PURE__ */ React.createElement(Button, assignProps({
270
+ "aria-label": getI18nText("firstPage")
271
+ }, _ref2));
221
272
  }
222
- }]), r;
223
- }(C);
224
- l(F, "defaultProps", function(_) {
225
- var u = _.getI18nText("firstPage");
273
+ }]);
274
+ return FirstPage2;
275
+ }(Component);
276
+ _defineProperty(FirstPage, "defaultProps", function(props) {
277
+ var hintContent = props.getI18nText("firstPage");
226
278
  return {
227
- children: /* @__PURE__ */ n.createElement(L.Addon, {
228
- tag: U,
229
- title: u,
279
+ children: /* @__PURE__ */ React.createElement(Button.Addon, {
280
+ tag: Hint,
281
+ title: hintContent,
230
282
  timeout: [250, 50],
231
283
  __excludeProps: ["aria-label"]
232
- }, /* @__PURE__ */ n.createElement(W, null))
284
+ }, /* @__PURE__ */ React.createElement(ChevronDoubleLeft, null))
233
285
  };
234
286
  });
235
- var V = /* @__PURE__ */ function(_) {
236
- y(r, _);
237
- var u = T(r);
238
- function r() {
239
- return S(this, r), u.apply(this, arguments);
287
+ var PrevPage = /* @__PURE__ */ function(_Component3) {
288
+ _inherits(PrevPage2, _Component3);
289
+ var _super3 = _createSuper(PrevPage2);
290
+ function PrevPage2() {
291
+ _classCallCheck(this, PrevPage2);
292
+ return _super3.apply(this, arguments);
240
293
  }
241
- return I(r, [{
294
+ _createClass(PrevPage2, [{
242
295
  key: "render",
243
- value: function() {
244
- var s = this.asProps, g, f = L;
245
- return g = h(this.asProps.styles), /* @__PURE__ */ n.createElement(f, g.cn("SPrevPage", x({}, m({}, s))));
296
+ value: function render() {
297
+ var _ref3 = this.asProps, _ref10;
298
+ var SPrevPage = Button;
299
+ return _ref10 = sstyled$1(this.asProps.styles), /* @__PURE__ */ React.createElement(SPrevPage, _ref10.cn("SPrevPage", _objectSpread({}, assignProps({}, _ref3))));
246
300
  }
247
- }]), r;
248
- }(C);
249
- l(V, "defaultProps", function(_) {
301
+ }]);
302
+ return PrevPage2;
303
+ }(Component);
304
+ _defineProperty(PrevPage, "defaultProps", function(props) {
250
305
  return {
251
- children: _.getI18nText("prevPageLabel")
306
+ children: props.getI18nText("prevPageLabel")
252
307
  };
253
308
  });
254
- var w = /* @__PURE__ */ function(_) {
255
- y(r, _);
256
- var u = T(r);
257
- function r() {
258
- return S(this, r), u.apply(this, arguments);
309
+ var NextPage = /* @__PURE__ */ function(_Component4) {
310
+ _inherits(NextPage2, _Component4);
311
+ var _super4 = _createSuper(NextPage2);
312
+ function NextPage2() {
313
+ _classCallCheck(this, NextPage2);
314
+ return _super4.apply(this, arguments);
259
315
  }
260
- return I(r, [{
316
+ _createClass(NextPage2, [{
261
317
  key: "render",
262
- value: function() {
263
- var s = this.asProps, g, f = L;
264
- return g = h(this.asProps.styles), /* @__PURE__ */ n.createElement(f, g.cn("SNextPage", x({}, m({
265
- use: "primary",
266
- theme: "info"
267
- }, s))));
318
+ value: function render() {
319
+ var _ref4 = this.asProps, _ref11;
320
+ var SNextPage = Button;
321
+ return _ref11 = sstyled$1(this.asProps.styles), /* @__PURE__ */ React.createElement(SNextPage, _ref11.cn("SNextPage", _objectSpread({}, assignProps({
322
+ "use": "primary",
323
+ "theme": "info"
324
+ }, _ref4))));
268
325
  }
269
- }]), r;
270
- }(C);
271
- l(w, "defaultProps", function(_) {
326
+ }]);
327
+ return NextPage2;
328
+ }(Component);
329
+ _defineProperty(NextPage, "defaultProps", function(props) {
272
330
  return {
273
- children: _.getI18nText("nextPageLabel")
331
+ children: props.getI18nText("nextPageLabel")
274
332
  };
275
333
  });
276
- var Q = /* @__PURE__ */ function(_) {
277
- y(r, _);
278
- var u = T(r);
279
- function r() {
280
- return S(this, r), u.apply(this, arguments);
334
+ var TotalPages = /* @__PURE__ */ function(_Component5) {
335
+ _inherits(TotalPages2, _Component5);
336
+ var _super5 = _createSuper(TotalPages2);
337
+ function TotalPages2() {
338
+ _classCallCheck(this, TotalPages2);
339
+ return _super5.apply(this, arguments);
281
340
  }
282
- return I(r, [{
341
+ _createClass(TotalPages2, [{
283
342
  key: "render",
284
- value: function() {
285
- var s = this.asProps, g, f = K, t = N, a = N, i = this.asProps, o = i.styles, P = i.getI18nText, p = i.totalPages, d = i.isLastOrSingle, z = i.children, B = D(i, M), R = B.size === "l" ? "300" : "200";
286
- return g = h(o), /* @__PURE__ */ n.createElement(n.Fragment, null, /* @__PURE__ */ n.createElement(t, g.cn("STotalPagesLabel", {
287
- size: R
288
- }), P("totalPagesLabel")), d ? /* @__PURE__ */ n.createElement(a, g.cn("STotalLastPages", x({
289
- size: R,
290
- "aria-label": P("lastPage", {
291
- lastPageNumber: p
343
+ value: function render() {
344
+ var _ref5 = this.asProps, _ref12;
345
+ var STotalPages = ButtonLink;
346
+ var STotalPagesLabel = Text;
347
+ var STotalLastPages = Text;
348
+ var _this$asProps8 = this.asProps, styles = _this$asProps8.styles, getI18nText = _this$asProps8.getI18nText, totalPages = _this$asProps8.totalPages, isLastOrSingle = _this$asProps8.isLastOrSingle, children = _this$asProps8.children, other = _objectWithoutProperties(_this$asProps8, _excluded);
349
+ var textSize = other.size === "l" ? "300" : "200";
350
+ return _ref12 = sstyled$1(styles), /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(STotalPagesLabel, _ref12.cn("STotalPagesLabel", {
351
+ "size": textSize
352
+ }), getI18nText("totalPagesLabel")), isLastOrSingle ? /* @__PURE__ */ React.createElement(STotalLastPages, _ref12.cn("STotalLastPages", _objectSpread({
353
+ "size": textSize,
354
+ "aria-label": getI18nText("lastPage", {
355
+ lastPageNumber: totalPages
292
356
  })
293
- }, B)), z) : /* @__PURE__ */ n.createElement(f, g.cn("STotalPages", x({}, m({
294
- "aria-label": P("lastPage", {
295
- lastPageNumber: p
357
+ }, other)), children) : /* @__PURE__ */ React.createElement(STotalPages, _ref12.cn("STotalPages", _objectSpread({}, assignProps({
358
+ "aria-label": getI18nText("lastPage", {
359
+ lastPageNumber: totalPages
296
360
  })
297
- }, s)))));
361
+ }, _ref5)))));
298
362
  }
299
- }]), r;
300
- }(C), X = function(u) {
301
- var r = arguments[0], e, s = k.Value;
302
- return e = h(u.styles), /* @__PURE__ */ n.createElement(s, e.cn("SPageInputValue", x({}, m({
303
- onBlur: function() {
304
- return !1;
363
+ }]);
364
+ return TotalPages2;
365
+ }(Component);
366
+ var PageInputValue = function PageInputValue2(props) {
367
+ var _ref6 = arguments[0], _ref13;
368
+ var SPageInputValue = InputNumber.Value;
369
+ return _ref13 = sstyled$1(props.styles), /* @__PURE__ */ React.createElement(SPageInputValue, _ref13.cn("SPageInputValue", _objectSpread({}, assignProps({
370
+ "onBlur": function onBlur() {
371
+ return false;
305
372
  }
306
- }, r))));
307
- }, Y = function(u) {
308
- var r = arguments[0], e, s = k.Addon;
309
- return e = h(u.styles), /* @__PURE__ */ n.createElement(s, e.cn("SPageInputAddon", x({}, m({}, r))));
310
- }, $ = /* @__PURE__ */ function(_) {
311
- y(r, _);
312
- var u = T(r);
313
- function r() {
314
- return S(this, r), u.apply(this, arguments);
373
+ }, _ref6))));
374
+ };
375
+ var PageInputAddon = function PageInputAddon2(props) {
376
+ var _ref7 = arguments[0], _ref14;
377
+ var SPageInputAddon = InputNumber.Addon;
378
+ return _ref14 = sstyled$1(props.styles), /* @__PURE__ */ React.createElement(SPageInputAddon, _ref14.cn("SPageInputAddon", _objectSpread({}, assignProps({}, _ref7))));
379
+ };
380
+ var PageInput = /* @__PURE__ */ function(_Component6) {
381
+ _inherits(PageInput2, _Component6);
382
+ var _super6 = _createSuper(PageInput2);
383
+ function PageInput2() {
384
+ _classCallCheck(this, PageInput2);
385
+ return _super6.apply(this, arguments);
315
386
  }
316
- return I(r, [{
387
+ _createClass(PageInput2, [{
317
388
  key: "render",
318
- value: function() {
319
- var s = this.asProps, g, f = k, t = N, a = this.asProps, i = a.Children, o = a.getI18nText, P = a.styles, p = a.uid, d = a.locale, z = a.size;
320
- return g = h(P), /* @__PURE__ */ n.createElement(n.Fragment, null, /* @__PURE__ */ n.createElement(t, g.cn("SLabel", {
321
- tag: "label",
322
- htmlFor: "pagination-input-".concat(p),
323
- size: z
324
- }), o("pageInputLabel")), /* @__PURE__ */ n.createElement(f, g.cn("SPageInput", x({}, m({
325
- controlsLength: i.origin ? void 0 : 2,
326
- locale: d
327
- }, s))), i.origin ? /* @__PURE__ */ n.createElement(i, g.cn("Children", {})) : /* @__PURE__ */ n.createElement(v.PageInput.Value, {
328
- id: "pagination-input-".concat(p)
389
+ value: function render() {
390
+ var _ref8 = this.asProps, _ref15;
391
+ var SPageInput = InputNumber;
392
+ var SLabel = Text;
393
+ var _this$asProps9 = this.asProps, Children = _this$asProps9.Children, getI18nText = _this$asProps9.getI18nText, styles = _this$asProps9.styles, uid = _this$asProps9.uid, locale = _this$asProps9.locale, size = _this$asProps9.size;
394
+ return _ref15 = sstyled$1(styles), /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(SLabel, _ref15.cn("SLabel", {
395
+ "tag": "label",
396
+ "htmlFor": "pagination-input-".concat(uid),
397
+ "size": size
398
+ }), getI18nText("pageInputLabel")), /* @__PURE__ */ React.createElement(SPageInput, _ref15.cn("SPageInput", _objectSpread({}, assignProps({
399
+ "controlsLength": Children.origin ? void 0 : 2,
400
+ "locale": locale
401
+ }, _ref8))), Children.origin ? /* @__PURE__ */ React.createElement(Children, _ref15.cn("Children", {})) : /* @__PURE__ */ React.createElement(Pagination.PageInput.Value, {
402
+ id: "pagination-input-".concat(uid)
329
403
  })));
330
404
  }
331
- }]), r;
332
- }(C);
333
- l($, "enhance", [q()]);
334
- var v = G(b, {
335
- PrevPage: V,
336
- NextPage: w,
337
- FirstPage: F,
338
- TotalPages: Q,
339
- PageInput: [$, {
340
- Value: X,
341
- Addon: Y
405
+ }]);
406
+ return PageInput2;
407
+ }(Component);
408
+ _defineProperty(PageInput, "enhance", [uniqueIDEnhancement()]);
409
+ var Pagination = createComponent(PaginationRoot, {
410
+ PrevPage,
411
+ NextPage,
412
+ FirstPage,
413
+ TotalPages,
414
+ PageInput: [PageInput, {
415
+ Value: PageInputValue,
416
+ Addon: PageInputAddon
342
417
  }]
343
418
  });
344
419
  export {
345
- v as default
420
+ Pagination as default
346
421
  };