@uzum-tech/ui 2.1.4 → 2.2.1

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.
Files changed (85) hide show
  1. package/dist/index.js +1221 -527
  2. package/dist/index.mjs +1218 -528
  3. package/dist/index.prod.js +2 -2
  4. package/dist/index.prod.mjs +2 -2
  5. package/es/_internal/icon/src/UIcon.mjs +17 -9
  6. package/es/_internal/icons/SearchOutline.d.ts +2 -0
  7. package/es/_internal/icons/SearchOutline.mjs +18 -0
  8. package/es/_internal/icons/index.d.ts +1 -0
  9. package/es/_internal/icons/index.mjs +1 -0
  10. package/es/_utils/dom/copy-to-clipboard.d.ts +1 -0
  11. package/es/_utils/dom/copy-to-clipboard.mjs +8 -0
  12. package/es/_utils/dom/index.d.ts +1 -0
  13. package/es/_utils/dom/index.mjs +1 -0
  14. package/es/components.d.ts +1083 -4
  15. package/es/components.mjs +3 -0
  16. package/es/config-provider/src/internal-interface.d.ts +4 -0
  17. package/es/data-table/src/use-table-data.d.ts +1 -1
  18. package/es/icon-pack/index.d.ts +5 -0
  19. package/es/icon-pack/index.mjs +3 -0
  20. package/es/icon-pack/src/IconPack.d.ts +1047 -0
  21. package/es/icon-pack/src/IconPack.mjs +300 -0
  22. package/es/icon-pack/src/interface.d.ts +465 -0
  23. package/es/icon-pack/src/interface.mjs +75 -0
  24. package/es/icon-pack/src/styles/index.cssr.d.ts +2 -0
  25. package/es/icon-pack/src/styles/index.cssr.mjs +131 -0
  26. package/es/icon-pack/styles/dark.d.ts +123 -0
  27. package/es/icon-pack/styles/dark.mjs +20 -0
  28. package/es/icon-pack/styles/index.d.ts +3 -0
  29. package/es/icon-pack/styles/index.mjs +2 -0
  30. package/es/icon-pack/styles/light.d.ts +143 -0
  31. package/es/icon-pack/styles/light.mjs +64 -0
  32. package/es/icon-wrapper/src/IconWrapper.d.ts +1 -1
  33. package/es/input/src/Input.mjs +3 -1
  34. package/es/pagination/index.d.ts +3 -3
  35. package/es/pagination/index.mjs +2 -1
  36. package/es/pagination/src/Pagination.d.ts +78 -1379
  37. package/es/pagination/src/Pagination.mjs +36 -63
  38. package/es/pagination/src/interface.d.ts +1347 -1
  39. package/es/pagination/src/interface.mjs +70 -1
  40. package/es/themes/dark.mjs +2 -0
  41. package/es/themes/light.mjs +2 -0
  42. package/es/version.d.ts +1 -1
  43. package/es/version.mjs +1 -1
  44. package/lib/_internal/icon/src/UIcon.js +15 -8
  45. package/lib/_internal/icons/SearchOutline.d.ts +2 -0
  46. package/lib/_internal/icons/SearchOutline.js +10 -0
  47. package/lib/_internal/icons/index.d.ts +1 -0
  48. package/lib/_internal/icons/index.js +3 -1
  49. package/lib/_utils/dom/copy-to-clipboard.d.ts +1 -0
  50. package/lib/_utils/dom/copy-to-clipboard.js +11 -0
  51. package/lib/_utils/dom/index.d.ts +1 -0
  52. package/lib/_utils/dom/index.js +3 -1
  53. package/lib/components.d.ts +1083 -4
  54. package/lib/components.js +11 -5
  55. package/lib/config-provider/src/internal-interface.d.ts +4 -0
  56. package/lib/data-table/src/use-table-data.d.ts +1 -1
  57. package/lib/icon-pack/index.d.ts +5 -0
  58. package/lib/icon-pack/index.js +13 -0
  59. package/lib/icon-pack/src/IconPack.d.ts +1047 -0
  60. package/lib/icon-pack/src/IconPack.js +240 -0
  61. package/lib/icon-pack/src/interface.d.ts +465 -0
  62. package/lib/icon-pack/src/interface.js +49 -0
  63. package/lib/icon-pack/src/styles/index.cssr.d.ts +2 -0
  64. package/lib/icon-pack/src/styles/index.cssr.js +136 -0
  65. package/lib/icon-pack/styles/dark.d.ts +123 -0
  66. package/lib/icon-pack/styles/dark.js +22 -0
  67. package/lib/icon-pack/styles/index.d.ts +3 -0
  68. package/lib/icon-pack/styles/index.js +10 -0
  69. package/lib/icon-pack/styles/light.d.ts +143 -0
  70. package/lib/icon-pack/styles/light.js +46 -0
  71. package/lib/icon-wrapper/src/IconWrapper.d.ts +1 -1
  72. package/lib/input/src/Input.js +3 -1
  73. package/lib/pagination/index.d.ts +3 -3
  74. package/lib/pagination/index.js +2 -1
  75. package/lib/pagination/src/Pagination.d.ts +78 -1379
  76. package/lib/pagination/src/Pagination.js +33 -40
  77. package/lib/pagination/src/interface.d.ts +1347 -1
  78. package/lib/pagination/src/interface.js +37 -0
  79. package/lib/themes/dark.js +110 -108
  80. package/lib/themes/light.js +110 -108
  81. package/lib/version.d.ts +1 -1
  82. package/lib/version.js +1 -1
  83. package/package.json +3 -3
  84. package/volar.d.ts +1 -0
  85. package/web-types.json +272 -1
@@ -3,7 +3,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.paginationProps = void 0;
7
6
  const vooks_1 = require("vooks");
8
7
  const vue_1 = require("vue");
9
8
  const _internal_1 = require("../../_internal");
@@ -15,36 +14,12 @@ const input_1 = require("../../input");
15
14
  const popselect_1 = require("../../popselect");
16
15
  const select_1 = require("../../select");
17
16
  const styles_1 = require("../styles");
17
+ const interface_1 = require("./interface");
18
18
  const index_cssr_1 = __importDefault(require("./styles/index.cssr"));
19
19
  const utils_1 = require("./utils");
20
- exports.paginationProps = Object.assign(Object.assign({}, _mixins_1.useTheme.props), { simple: Boolean, page: Number, defaultPage: {
21
- type: Number,
22
- default: 1
23
- }, itemCount: Number, pageCount: Number, defaultPageCount: {
24
- type: Number,
25
- default: 1
26
- }, showSizePicker: Boolean, sizePickerLabel: String, pageSize: Number, defaultPageSize: Number, pageSizes: {
27
- type: Array,
28
- default() {
29
- return [10];
30
- }
31
- }, showQuickJumper: Boolean, size: {
32
- type: String,
33
- default: 'medium'
34
- }, disabled: Boolean, pageSlot: {
35
- type: Number,
36
- default: 9
37
- }, selectProps: Object, prev: Function, next: Function, goto: Function, prefix: Function, suffix: Function, label: Function, displayOrder: {
38
- type: Array,
39
- default: ['size-picker', 'pages', 'quick-jumper']
40
- }, to: _utils_1.useAdjustedTo.propTo, 'onUpdate:page': [Function, Array], onUpdatePage: [Function, Array], 'onUpdate:pageSize': [Function, Array], onUpdatePageSize: [Function, Array],
41
- /** @deprecated */
42
- onPageSizeChange: [Function, Array],
43
- /** @deprecated */
44
- onChange: [Function, Array] });
45
20
  exports.default = (0, vue_1.defineComponent)({
46
21
  name: 'Pagination',
47
- props: exports.paginationProps,
22
+ props: interface_1.paginationProps,
48
23
  slots: Object,
49
24
  setup(props) {
50
25
  if (process.env.NODE_ENV !== 'production') {
@@ -78,7 +53,6 @@ exports.default = (0, vue_1.defineComponent)({
78
53
  const mergedPageRef = (0, vooks_1.useMergedState)((0, vue_1.toRef)(props, 'page'), uncontrolledPageRef);
79
54
  const mergedPageSizeRef = (0, vooks_1.useMergedState)((0, vue_1.toRef)(props, 'pageSize'), uncontrolledPageSizeRef);
80
55
  const mergedPageCountRef = (0, vue_1.computed)(() => {
81
- // item count has high priority, for it can affect prefix slot rendering
82
56
  const { itemCount } = props;
83
57
  if (itemCount !== undefined) {
84
58
  return Math.max(1, Math.ceil(itemCount / mergedPageSizeRef.value));
@@ -88,6 +62,18 @@ exports.default = (0, vue_1.defineComponent)({
88
62
  return Math.max(pageCount, 1);
89
63
  return 1;
90
64
  });
65
+ const mergedHasPrevRef = (0, vue_1.computed)(() => {
66
+ const { hasPrev } = props;
67
+ if (hasPrev !== undefined)
68
+ return hasPrev;
69
+ return mergedPageRef.value > 1;
70
+ });
71
+ const mergedHasNextRef = (0, vue_1.computed)(() => {
72
+ const { hasNext } = props;
73
+ if (hasNext !== undefined)
74
+ return hasNext;
75
+ return mergedPageRef.value < mergedPageCountRef.value;
76
+ });
91
77
  const jumperValueRef = (0, vue_1.ref)('');
92
78
  (0, vue_1.watchEffect)(() => {
93
79
  void props.simple;
@@ -224,15 +210,23 @@ exports.default = (0, vue_1.defineComponent)({
224
210
  }
225
211
  }
226
212
  function forward() {
227
- if (props.disabled)
213
+ if (props.disabled || !mergedHasNextRef.value)
228
214
  return;
229
- const page = Math.min(mergedPageRef.value + 1, mergedPageCountRef.value);
215
+ const page = props.hasNext === undefined
216
+ ? Math.min(mergedPageRef.value + 1, mergedPageCountRef.value)
217
+ : mergedPageRef.value + 1;
218
+ const { onNext } = props;
219
+ if (onNext)
220
+ (0, _utils_1.call)(onNext, page);
230
221
  doUpdatePage(page);
231
222
  }
232
223
  function backward() {
233
- if (props.disabled)
224
+ if (props.disabled || !mergedHasPrevRef.value)
234
225
  return;
235
226
  const page = Math.max(mergedPageRef.value - 1, 1);
227
+ const { onPrev } = props;
228
+ if (onPrev)
229
+ (0, _utils_1.call)(onPrev, page);
236
230
  doUpdatePage(page);
237
231
  }
238
232
  function fastForward() {
@@ -350,6 +344,8 @@ exports.default = (0, vue_1.defineComponent)({
350
344
  locale: localeRef,
351
345
  selfRef,
352
346
  mergedPage: mergedPageRef,
347
+ mergedHasPrev: mergedHasPrevRef,
348
+ mergedHasNext: mergedHasNextRef,
353
349
  pageItems: (0, vue_1.computed)(() => {
354
350
  return pageItemsInfo.value.items;
355
351
  }),
@@ -385,7 +381,7 @@ exports.default = (0, vue_1.defineComponent)({
385
381
  },
386
382
  render() {
387
383
  // it's ok to expand all prop here since no slots' deps
388
- const { $slots, mergedClsPrefix, disabled, cssVars, mergedPage, mergedPageCount, pageItems, showSizePicker, sizePickerLabel, showQuickJumper, mergedTheme, locale, inputSize, selectSize, mergedPageSize, pageSizeOptions, jumperValue, simple, prev, next, prefix, suffix, label, goto, handleJumperInput, handleSizePickerChange, handleBackwardClick, handlePageItemClick, handleForwardClick, handleQuickJumperChange, onRender } = this;
384
+ const { $slots, mergedClsPrefix, disabled, cssVars, mergedPage, mergedPageCount, mergedHasPrev, mergedHasNext, variant, pageItems, showSizePicker, sizePickerLabel, showQuickJumper, mergedTheme, locale, inputSize, selectSize, mergedPageSize, pageSizeOptions, jumperValue, simple, prev, next, prefix, suffix, label, goto, handleJumperInput, handleSizePickerChange, handleBackwardClick, handlePageItemClick, handleForwardClick, handleQuickJumperChange, onRender } = this;
389
385
  onRender === null || onRender === void 0 ? void 0 : onRender();
390
386
  const renderPrefix = $slots.prefix || prefix;
391
387
  const renderSuffix = $slots.suffix || suffix;
@@ -397,7 +393,8 @@ exports.default = (0, vue_1.defineComponent)({
397
393
  this.themeClass,
398
394
  this.rtlEnabled && `${mergedClsPrefix}-pagination--rtl`,
399
395
  disabled && `${mergedClsPrefix}-pagination--disabled`,
400
- simple && `${mergedClsPrefix}-pagination--simple`
396
+ simple && `${mergedClsPrefix}-pagination--simple`,
397
+ variant === 'cursor' && `${mergedClsPrefix}-pagination--cursor`
401
398
  ], style: cssVars },
402
399
  renderPrefix ? ((0, vue_1.h)("div", { class: `${mergedClsPrefix}-pagination-prefix` }, renderPrefix({
403
400
  page: mergedPage,
@@ -416,9 +413,7 @@ exports.default = (0, vue_1.defineComponent)({
416
413
  `${mergedClsPrefix}-pagination-item`,
417
414
  !renderPrev
418
415
  && `${mergedClsPrefix}-pagination-item--button`,
419
- (mergedPage <= 1
420
- || mergedPage > mergedPageCount
421
- || disabled)
416
+ (!mergedHasPrev || disabled)
422
417
  && `${mergedClsPrefix}-pagination-item--disabled`
423
418
  ], onClick: handleBackwardClick }, renderPrev ? (renderPrev({
424
419
  page: mergedPage,
@@ -430,7 +425,7 @@ exports.default = (0, vue_1.defineComponent)({
430
425
  })) : ((0, vue_1.h)(_internal_1.UBaseIcon, { clsPrefix: mergedClsPrefix }, {
431
426
  default: () => this.rtlEnabled ? ((0, vue_1.h)(icons_1.ForwardIcon, null)) : ((0, vue_1.h)(icons_1.BackwardIcon, null))
432
427
  }))),
433
- simple ? ((0, vue_1.h)(vue_1.Fragment, null,
428
+ variant === 'cursor' ? null : simple ? ((0, vue_1.h)(vue_1.Fragment, null,
434
429
  (0, vue_1.h)("div", { class: `${mergedClsPrefix}-pagination-quick-jumper` },
435
430
  (0, vue_1.h)(input_1.UInput, { value: jumperValue, onUpdateValue: handleJumperInput, size: inputSize, placeholder: "", disabled: disabled, theme: mergedTheme.peers.Input, themeOverrides: mergedTheme.peerOverrides.Input, onChange: handleQuickJumperChange })),
436
431
  "\u00A0/",
@@ -563,9 +558,7 @@ exports.default = (0, vue_1.defineComponent)({
563
558
  !renderNext
564
559
  && `${mergedClsPrefix}-pagination-item--button`,
565
560
  {
566
- [`${mergedClsPrefix}-pagination-item--disabled`]: mergedPage < 1
567
- || mergedPage >= mergedPageCount
568
- || disabled
561
+ [`${mergedClsPrefix}-pagination-item--disabled`]: !mergedHasNext || disabled
569
562
  }
570
563
  ], onClick: handleForwardClick }, renderNext ? (renderNext({
571
564
  page: mergedPage,