@serendie/ui 2.0.0 → 2.1.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.
Files changed (118) hide show
  1. package/dist/components/CheckBox/CheckBox.js +36 -35
  2. package/dist/components/ChoiceBox/ChoiceBox.js +41 -41
  3. package/dist/components/DataTable/DataTableComponent.d.ts +3 -20
  4. package/dist/components/DataTable/DataTableComponent.js +38 -36
  5. package/dist/components/DataTable/table/HeaderCheckbox.js +29 -19
  6. package/dist/components/Search/Search.d.ts +3 -1
  7. package/dist/components/Search/Search.js +34 -33
  8. package/dist/components/Select/Select.d.ts +2 -1
  9. package/dist/components/Select/Select.js +47 -41
  10. package/dist/components/Tooltip/Tooltip.d.ts +14 -0
  11. package/dist/components/Tooltip/Tooltip.js +70 -0
  12. package/dist/components/Tooltip/index.d.ts +1 -0
  13. package/dist/components/Tooltip/index.js +4 -0
  14. package/dist/index.d.ts +1 -0
  15. package/dist/index.js +12 -10
  16. package/dist/node_modules/@ark-ui/react/dist/components/accordion/accordion-item-content.js +4 -6
  17. package/dist/node_modules/@ark-ui/react/dist/components/accordion/accordion-item-indicator.js +4 -6
  18. package/dist/node_modules/@ark-ui/react/dist/components/accordion/accordion-item-trigger.js +10 -12
  19. package/dist/node_modules/@ark-ui/react/dist/components/accordion/accordion-item.js +16 -16
  20. package/dist/node_modules/@ark-ui/react/dist/components/accordion/use-accordion.js +13 -20
  21. package/dist/node_modules/@ark-ui/react/dist/components/avatar/avatar-root.js +1 -5
  22. package/dist/node_modules/@ark-ui/react/dist/components/avatar/use-avatar.js +14 -18
  23. package/dist/node_modules/@ark-ui/react/dist/components/checkbox/checkbox-hidden-input.js +4 -6
  24. package/dist/node_modules/@ark-ui/react/dist/components/checkbox/use-checkbox.js +22 -28
  25. package/dist/node_modules/@ark-ui/react/dist/components/collapsible/collapsible-content.js +7 -9
  26. package/dist/node_modules/@ark-ui/react/dist/components/collapsible/use-collapsible.js +14 -21
  27. package/dist/node_modules/@ark-ui/react/dist/components/collection/list-collection.js +5 -0
  28. package/dist/node_modules/@ark-ui/react/dist/components/combobox/combobox-content.js +9 -8
  29. package/dist/node_modules/@ark-ui/react/dist/components/combobox/combobox-item-group.js +4 -6
  30. package/dist/node_modules/@ark-ui/react/dist/components/combobox/combobox-positioner.js +4 -6
  31. package/dist/node_modules/@ark-ui/react/dist/components/combobox/combobox-root.js +17 -18
  32. package/dist/node_modules/@ark-ui/react/dist/components/combobox/combobox-trigger.js +10 -9
  33. package/dist/node_modules/@ark-ui/react/dist/components/combobox/use-combobox-item-context.js +5 -7
  34. package/dist/node_modules/@ark-ui/react/dist/components/combobox/use-combobox.js +21 -45
  35. package/dist/node_modules/@ark-ui/react/dist/components/dialog/dialog-backdrop.js +10 -9
  36. package/dist/node_modules/@ark-ui/react/dist/components/dialog/dialog-close-trigger.js +4 -6
  37. package/dist/node_modules/@ark-ui/react/dist/components/dialog/dialog-content.js +6 -5
  38. package/dist/node_modules/@ark-ui/react/dist/components/dialog/dialog-description.js +4 -6
  39. package/dist/node_modules/@ark-ui/react/dist/components/dialog/use-dialog.js +13 -22
  40. package/dist/node_modules/@ark-ui/react/dist/components/factory.js +26 -24
  41. package/dist/node_modules/@ark-ui/react/dist/components/menu/menu-content.js +9 -8
  42. package/dist/node_modules/@ark-ui/react/dist/components/menu/menu-item-group.js +1 -3
  43. package/dist/node_modules/@ark-ui/react/dist/components/menu/menu-item.js +15 -13
  44. package/dist/node_modules/@ark-ui/react/dist/components/menu/menu-root.js +13 -14
  45. package/dist/node_modules/@ark-ui/react/dist/components/menu/use-menu-option-item-props-context.js +10 -0
  46. package/dist/node_modules/@ark-ui/react/dist/components/menu/use-menu.js +14 -21
  47. package/dist/node_modules/@ark-ui/react/dist/components/pagination/pagination-ellipsis.js +4 -6
  48. package/dist/node_modules/@ark-ui/react/dist/components/pagination/pagination-next-trigger.js +4 -6
  49. package/dist/node_modules/@ark-ui/react/dist/components/pagination/pagination-prev-trigger.js +4 -6
  50. package/dist/node_modules/@ark-ui/react/dist/components/pagination/pagination-root.js +5 -4
  51. package/dist/node_modules/@ark-ui/react/dist/components/pagination/use-pagination.js +13 -19
  52. package/dist/node_modules/@ark-ui/react/dist/components/portal/portal.js +25 -16
  53. package/dist/node_modules/@ark-ui/react/dist/components/presence/split-presence-props.js +3 -2
  54. package/dist/node_modules/@ark-ui/react/dist/components/presence/use-presence.js +18 -18
  55. package/dist/node_modules/@ark-ui/react/dist/components/radio-group/radio-group-item-control.js +4 -6
  56. package/dist/node_modules/@ark-ui/react/dist/components/radio-group/radio-group-item-text.js +4 -6
  57. package/dist/node_modules/@ark-ui/react/dist/components/radio-group/radio-group-item.js +1 -5
  58. package/dist/node_modules/@ark-ui/react/dist/components/radio-group/use-radio-group.js +14 -22
  59. package/dist/node_modules/@ark-ui/react/dist/components/select/select-content.js +9 -8
  60. package/dist/node_modules/@ark-ui/react/dist/components/select/select-root.js +11 -12
  61. package/dist/node_modules/@ark-ui/react/dist/components/select/use-select.js +20 -47
  62. package/dist/node_modules/@ark-ui/react/dist/components/switch/switch-hidden-input.js +4 -6
  63. package/dist/node_modules/@ark-ui/react/dist/components/switch/use-switch.js +20 -26
  64. package/dist/node_modules/@ark-ui/react/dist/components/tabs/tabs-root.js +9 -8
  65. package/dist/node_modules/@ark-ui/react/dist/components/tabs/use-tabs.js +14 -21
  66. package/dist/node_modules/@ark-ui/react/dist/components/toast/create-toaster.js +3 -7
  67. package/dist/node_modules/@ark-ui/react/dist/components/toast/toaster.js +28 -15
  68. package/dist/node_modules/@ark-ui/react/dist/components/tooltip/tooltip-arrow-tip.js +13 -0
  69. package/dist/node_modules/@ark-ui/react/dist/components/tooltip/tooltip-arrow.js +13 -0
  70. package/dist/node_modules/@ark-ui/react/dist/components/tooltip/tooltip-content.js +15 -0
  71. package/dist/node_modules/@ark-ui/react/dist/components/tooltip/tooltip-positioner.js +14 -0
  72. package/dist/node_modules/@ark-ui/react/dist/components/tooltip/tooltip-root.js +14 -0
  73. package/dist/node_modules/@ark-ui/react/dist/components/tooltip/tooltip-trigger.js +13 -0
  74. package/dist/node_modules/@ark-ui/react/dist/components/tooltip/use-tooltip-context.js +10 -0
  75. package/dist/node_modules/@ark-ui/react/dist/components/tooltip/use-tooltip.js +17 -0
  76. package/dist/node_modules/@ark-ui/react/dist/utils/compose-refs.js +13 -7
  77. package/dist/node_modules/@floating-ui/core/dist/floating-ui.core.js +92 -90
  78. package/dist/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +230 -216
  79. package/dist/node_modules/@zag-js/accordion/dist/index.js +210 -227
  80. package/dist/node_modules/@zag-js/aria-hidden/dist/index.js +49 -12
  81. package/dist/node_modules/@zag-js/avatar/dist/index.js +119 -134
  82. package/dist/node_modules/@zag-js/checkbox/dist/index.js +196 -197
  83. package/dist/node_modules/@zag-js/collapsible/dist/index.js +250 -198
  84. package/dist/node_modules/@zag-js/collection/dist/index.js +172 -179
  85. package/dist/node_modules/@zag-js/combobox/dist/index.js +1176 -1082
  86. package/dist/node_modules/@zag-js/core/dist/index.js +77 -496
  87. package/dist/node_modules/@zag-js/dialog/dist/index.js +243 -270
  88. package/dist/node_modules/@zag-js/dismissable/dist/index.js +62 -60
  89. package/dist/node_modules/@zag-js/dom-query/dist/index.js +465 -253
  90. package/dist/node_modules/@zag-js/focus-trap/dist/index.js +307 -0
  91. package/dist/node_modules/@zag-js/focus-visible/dist/index.js +48 -47
  92. package/dist/node_modules/@zag-js/interact-outside/dist/index.js +112 -80
  93. package/dist/node_modules/@zag-js/menu/dist/index.js +998 -884
  94. package/dist/node_modules/@zag-js/pagination/dist/index.js +207 -213
  95. package/dist/node_modules/@zag-js/popper/dist/index.js +130 -129
  96. package/dist/node_modules/@zag-js/presence/dist/index.js +139 -122
  97. package/dist/node_modules/@zag-js/radio-group/dist/index.js +297 -302
  98. package/dist/node_modules/@zag-js/react/dist/index.js +255 -103
  99. package/dist/node_modules/@zag-js/remove-scroll/dist/index.js +18 -31
  100. package/dist/node_modules/@zag-js/select/dist/index.js +889 -885
  101. package/dist/node_modules/@zag-js/store/dist/index.js +98 -137
  102. package/dist/node_modules/@zag-js/switch/dist/index.js +199 -191
  103. package/dist/node_modules/@zag-js/tabs/dist/index.js +383 -386
  104. package/dist/node_modules/@zag-js/toast/dist/index.js +646 -633
  105. package/dist/node_modules/@zag-js/tooltip/dist/index.js +459 -0
  106. package/dist/node_modules/@zag-js/types/dist/index.js +6 -6
  107. package/dist/node_modules/@zag-js/utils/dist/index.js +112 -99
  108. package/dist/node_modules/proxy-compare/dist/index.js +4 -106
  109. package/dist/styles.css +1 -1
  110. package/package.json +5 -5
  111. package/dist/node_modules/@ark-ui/react/dist/utils/use-is-server.js +0 -10
  112. package/dist/node_modules/@zag-js/dom-event/dist/index.js +0 -130
  113. package/dist/node_modules/@zag-js/element-rect/dist/index.js +0 -32
  114. package/dist/node_modules/@zag-js/form-utils/dist/index.js +0 -51
  115. package/dist/node_modules/aria-hidden/dist/es2015/index.js +0 -52
  116. package/dist/node_modules/focus-trap/dist/focus-trap.esm.js +0 -431
  117. package/dist/node_modules/klona/full/index.js +0 -21
  118. package/dist/node_modules/tabbable/dist/index.esm.js +0 -202
@@ -1,68 +1,62 @@
1
- import { createAnatomy as A } from "../../anatomy/dist/index.js";
2
- import { dataAttr as b, createScope as h } from "../../dom-query/dist/index.js";
3
- import { createMachine as G } from "../../core/dist/index.js";
4
- import { compact as L, isEqual as R } from "../../utils/dist/index.js";
5
- import { createProps as v } from "../../types/dist/index.js";
6
- var z = A("pagination").parts("root", "item", "ellipsis", "prevTrigger", "nextTrigger"), d = z.build(), u = h({
7
- getRootId: (t) => {
8
- var a;
9
- return ((a = t.ids) == null ? void 0 : a.root) ?? `pagination:${t.id}`;
10
- },
11
- getPrevTriggerId: (t) => {
12
- var a;
13
- return ((a = t.ids) == null ? void 0 : a.prevTrigger) ?? `pagination:${t.id}:prev`;
14
- },
15
- getNextTriggerId: (t) => {
16
- var a;
17
- return ((a = t.ids) == null ? void 0 : a.nextTrigger) ?? `pagination:${t.id}:next`;
18
- },
19
- getEllipsisId: (t, a) => {
20
- var e, g;
21
- return ((g = (e = t.ids) == null ? void 0 : e.ellipsis) == null ? void 0 : g.call(e, a)) ?? `pagination:${t.id}:ellipsis:${a}`;
22
- },
23
- getItemId: (t, a) => {
24
- var e, g;
25
- return ((g = (e = t.ids) == null ? void 0 : e.item) == null ? void 0 : g.call(e, a)) ?? `pagination:${t.id}:item:${a}`;
26
- }
27
- }), S = (t, a) => {
28
- let e = a - t + 1;
29
- return Array.from({ length: e }, (g, o) => o + t);
30
- }, N = (t) => t.map((a) => typeof a == "number" ? { type: "page", value: a } : { type: "ellipsis" }), m = "ellipsis", x = (t) => {
31
- const a = Math.min(2 * t.siblingCount + 5, t.totalPages), e = 1, g = t.totalPages, o = Math.max(t.page - t.siblingCount, e), n = Math.min(t.page + t.siblingCount, g), s = o > e + 1, p = n < g - 1, c = a - 2;
32
- if (!s && p)
33
- return [...S(1, c), m, g];
34
- if (s && !p) {
35
- const l = S(g - c + 1, g);
36
- return [e, m, ...l];
1
+ import { createAnatomy as G } from "../../anatomy/dist/index.js";
2
+ import { dataAttr as E } from "../../dom-query/dist/index.js";
3
+ import { createMachine as L } from "../../core/dist/index.js";
4
+ import { createProps as b } from "../../types/dist/index.js";
5
+ var z = G("pagination").parts("root", "item", "ellipsis", "prevTrigger", "nextTrigger"), c = z.build(), _ = (e) => {
6
+ var t;
7
+ return ((t = e.ids) == null ? void 0 : t.root) ?? `pagination:${e.id}`;
8
+ }, C = (e) => {
9
+ var t;
10
+ return ((t = e.ids) == null ? void 0 : t.prevTrigger) ?? `pagination:${e.id}:prev`;
11
+ }, N = (e) => {
12
+ var t;
13
+ return ((t = e.ids) == null ? void 0 : t.nextTrigger) ?? `pagination:${e.id}:next`;
14
+ }, V = (e, t) => {
15
+ var a, g;
16
+ return ((g = (a = e.ids) == null ? void 0 : a.ellipsis) == null ? void 0 : g.call(a, t)) ?? `pagination:${e.id}:ellipsis:${t}`;
17
+ }, $ = (e, t) => {
18
+ var a, g;
19
+ return ((g = (a = e.ids) == null ? void 0 : a.item) == null ? void 0 : g.call(a, t)) ?? `pagination:${e.id}:item:${t}`;
20
+ }, S = (e, t) => {
21
+ let a = t - e + 1;
22
+ return Array.from({ length: a }, (g, i) => i + e);
23
+ }, M = (e) => e.map((t) => typeof t == "number" ? { type: "page", value: t } : { type: "ellipsis" }), m = "ellipsis", F = (e) => {
24
+ const { page: t, totalPages: a, siblingCount: g } = e, i = Math.min(2 * g + 5, a), n = 1, r = a, P = Math.max(t - g, n), p = Math.min(t + g, r), o = P > n + 1, d = p < r - 1, T = i - 2;
25
+ if (!o && d)
26
+ return [...S(1, T), m, r];
27
+ if (o && !d) {
28
+ const l = S(r - T + 1, r);
29
+ return [n, m, ...l];
37
30
  }
38
- if (s && p) {
39
- const l = S(o, n);
40
- return [e, m, ...l, m, g];
31
+ if (o && d) {
32
+ const l = S(P, p);
33
+ return [n, m, ...l, m, r];
41
34
  }
42
- return S(e, g);
43
- }, V = (t) => N(x(t));
44
- function X(t, a, e) {
45
- const g = t.context.totalPages, o = t.context.page, n = t.context.translations, s = t.context.count, p = t.context.previousPage, c = t.context.nextPage, T = t.context.pageRange, E = t.context.type === "button", f = o === 1, I = o === g, _ = V(t.context);
35
+ return S(n, r);
36
+ }, k = (e) => M(F(e));
37
+ function B(e, t) {
38
+ const { send: a, scope: g, prop: i, computed: n, context: r } = e, P = n("totalPages"), p = r.get("page"), o = i("translations"), d = i("count"), T = n("previousPage"), y = n("nextPage"), l = n("pageRange"), v = i("type") === "button", h = p === 1, I = p === P, R = k({
39
+ page: p,
40
+ totalPages: P,
41
+ siblingCount: i("siblingCount")
42
+ });
46
43
  return {
47
- count: s,
48
- page: o,
49
- pageSize: t.context.pageSize,
50
- totalPages: g,
51
- pages: _,
52
- previousPage: p,
53
- nextPage: c,
54
- pageRange: T,
55
- slice(i) {
56
- return i.slice(T.start, T.end);
57
- },
58
- setCount(i) {
59
- a({ type: "SET_COUNT", count: i });
44
+ count: d,
45
+ page: p,
46
+ pageSize: r.get("pageSize"),
47
+ totalPages: P,
48
+ pages: R,
49
+ previousPage: T,
50
+ nextPage: y,
51
+ pageRange: l,
52
+ slice(s) {
53
+ return s.slice(l.start, l.end);
60
54
  },
61
- setPageSize(i) {
62
- a({ type: "SET_PAGE_SIZE", size: i });
55
+ setPageSize(s) {
56
+ a({ type: "SET_PAGE_SIZE", size: s });
63
57
  },
64
- setPage(i) {
65
- a({ type: "SET_PAGE", page: i });
58
+ setPage(s) {
59
+ a({ type: "SET_PAGE", page: s });
66
60
  },
67
61
  goToNextPage() {
68
62
  a({ type: "NEXT_PAGE" });
@@ -77,186 +71,184 @@ function X(t, a, e) {
77
71
  a({ type: "LAST_PAGE" });
78
72
  },
79
73
  getRootProps() {
80
- return e.element({
81
- id: u.getRootId(t.context),
82
- ...d.root.attrs,
83
- dir: t.context.dir,
84
- "aria-label": n.rootLabel
74
+ return t.element({
75
+ id: _(g),
76
+ ...c.root.attrs,
77
+ dir: i("dir"),
78
+ "aria-label": o.rootLabel
85
79
  });
86
80
  },
87
- getEllipsisProps(i) {
88
- return e.element({
89
- id: u.getEllipsisId(t.context, i.index),
90
- ...d.ellipsis.attrs,
91
- dir: t.context.dir
81
+ getEllipsisProps(s) {
82
+ return t.element({
83
+ id: V(g, s.index),
84
+ ...c.ellipsis.attrs,
85
+ dir: i("dir")
92
86
  });
93
87
  },
94
- getItemProps(i) {
95
- var C;
96
- const P = i.value, y = P === t.context.page;
97
- return e.element({
98
- id: u.getItemId(t.context, P),
99
- ...d.item.attrs,
100
- dir: t.context.dir,
101
- "data-index": P,
102
- "data-selected": b(y),
103
- "aria-current": y ? "page" : void 0,
104
- "aria-label": (C = n.itemLabel) == null ? void 0 : C.call(n, { page: P, totalPages: g }),
88
+ getItemProps(s) {
89
+ var A;
90
+ const u = s.value, x = u === p;
91
+ return t.element({
92
+ id: $(g, u),
93
+ ...c.item.attrs,
94
+ dir: i("dir"),
95
+ "data-index": u,
96
+ "data-selected": E(x),
97
+ "aria-current": x ? "page" : void 0,
98
+ "aria-label": (A = o.itemLabel) == null ? void 0 : A.call(o, { page: u, totalPages: P }),
105
99
  onClick() {
106
- a({ type: "SET_PAGE", page: P });
100
+ a({ type: "SET_PAGE", page: u });
107
101
  },
108
- ...E && { type: "button" }
102
+ ...v && { type: "button" }
109
103
  });
110
104
  },
111
105
  getPrevTriggerProps() {
112
- return e.element({
113
- id: u.getPrevTriggerId(t.context),
114
- ...d.prevTrigger.attrs,
115
- dir: t.context.dir,
116
- "data-disabled": b(f),
117
- "aria-label": n.prevTriggerLabel,
106
+ return t.element({
107
+ id: C(g),
108
+ ...c.prevTrigger.attrs,
109
+ dir: i("dir"),
110
+ "data-disabled": E(h),
111
+ "aria-label": o.prevTriggerLabel,
118
112
  onClick() {
119
113
  a({ type: "PREVIOUS_PAGE" });
120
114
  },
121
- ...E && { disabled: f, type: "button" }
115
+ ...v && { disabled: h, type: "button" }
122
116
  });
123
117
  },
124
118
  getNextTriggerProps() {
125
- return e.element({
126
- id: u.getNextTriggerId(t.context),
127
- ...d.nextTrigger.attrs,
128
- dir: t.context.dir,
129
- "data-disabled": b(I),
130
- "aria-label": n.nextTriggerLabel,
119
+ return t.element({
120
+ id: N(g),
121
+ ...c.nextTrigger.attrs,
122
+ dir: i("dir"),
123
+ "data-disabled": E(I),
124
+ "aria-label": o.nextTriggerLabel,
131
125
  onClick() {
132
126
  a({ type: "NEXT_PAGE" });
133
127
  },
134
- ...E && { disabled: I, type: "button" }
128
+ ...v && { disabled: I, type: "button" }
135
129
  });
136
130
  }
137
131
  };
138
132
  }
139
- var $ = {
140
- rootLabel: "pagination",
141
- prevTriggerLabel: "previous page",
142
- nextTriggerLabel: "next page",
143
- itemLabel({ page: t, totalPages: a }) {
144
- return `${a > 1 && t === a ? "last page, " : ""}page ${t}`;
145
- }
146
- };
147
- function Z(t) {
148
- const a = L(t);
149
- return G(
150
- {
151
- id: "pagination",
152
- initial: "idle",
153
- context: {
154
- pageSize: 10,
155
- siblingCount: 1,
156
- page: 1,
157
- type: "button",
158
- translations: {
159
- ...$,
160
- ...a.translations
133
+ var j = L({
134
+ props({ props: e }) {
135
+ return {
136
+ defaultPageSize: 10,
137
+ siblingCount: 1,
138
+ defaultPage: 1,
139
+ type: "button",
140
+ count: 1,
141
+ ...e,
142
+ translations: {
143
+ rootLabel: "pagination",
144
+ prevTriggerLabel: "previous page",
145
+ nextTriggerLabel: "next page",
146
+ itemLabel({ page: t, totalPages: a }) {
147
+ return `${a > 1 && t === a ? "last page, " : ""}page ${t}`;
161
148
  },
162
- ...a
149
+ ...e.translations
150
+ }
151
+ };
152
+ },
153
+ initialState() {
154
+ return "idle";
155
+ },
156
+ context({ prop: e, bindable: t, getContext: a }) {
157
+ return {
158
+ page: t(() => ({
159
+ value: e("page"),
160
+ defaultValue: e("defaultPage"),
161
+ onChange(g) {
162
+ var n;
163
+ const i = a();
164
+ (n = e("onPageChange")) == null || n({ page: g, pageSize: i.get("pageSize") });
165
+ }
166
+ })),
167
+ pageSize: t(() => ({
168
+ value: e("pageSize"),
169
+ defaultValue: e("defaultPageSize"),
170
+ onChange(g) {
171
+ var i;
172
+ (i = e("onPageSizeChange")) == null || i({ pageSize: g });
173
+ }
174
+ }))
175
+ };
176
+ },
177
+ watch({ track: e, context: t, action: a }) {
178
+ e([() => t.get("pageSize")], () => {
179
+ a(["setPageIfNeeded"]);
180
+ });
181
+ },
182
+ computed: {
183
+ totalPages: ({ context: e, prop: t }) => Math.ceil(t("count") / e.get("pageSize")),
184
+ previousPage: ({ context: e }) => e.get("page") === 1 ? null : e.get("page") - 1,
185
+ nextPage: ({ context: e, computed: t }) => e.get("page") === t("totalPages") ? null : e.get("page") + 1,
186
+ pageRange: ({ context: e, prop: t }) => {
187
+ const a = (e.get("page") - 1) * e.get("pageSize"), g = Math.min(a + e.get("pageSize"), t("count"));
188
+ return { start: a, end: g };
189
+ },
190
+ isValidPage: ({ context: e, computed: t }) => e.get("page") >= 1 && e.get("page") <= t("totalPages")
191
+ },
192
+ on: {
193
+ SET_PAGE: {
194
+ guard: "isValidPage",
195
+ actions: ["setPage"]
196
+ },
197
+ SET_PAGE_SIZE: {
198
+ actions: ["setPageSize"]
199
+ },
200
+ FIRST_PAGE: {
201
+ actions: ["goToFirstPage"]
202
+ },
203
+ LAST_PAGE: {
204
+ actions: ["goToLastPage"]
205
+ },
206
+ PREVIOUS_PAGE: {
207
+ guard: "canGoToPrevPage",
208
+ actions: ["goToPrevPage"]
209
+ },
210
+ NEXT_PAGE: {
211
+ guard: "canGoToNextPage",
212
+ actions: ["goToNextPage"]
213
+ }
214
+ },
215
+ states: {
216
+ idle: {}
217
+ },
218
+ implementations: {
219
+ guards: {
220
+ isValidPage: ({ event: e, computed: t }) => e.page >= 1 && e.page <= t("totalPages"),
221
+ isValidCount: ({ context: e, event: t }) => e.get("page") > t.count,
222
+ canGoToNextPage: ({ context: e, computed: t }) => e.get("page") < t("totalPages"),
223
+ canGoToPrevPage: ({ context: e }) => e.get("page") > 1
224
+ },
225
+ actions: {
226
+ setPage({ context: e, event: t, computed: a }) {
227
+ const g = f(t.page, a("totalPages"));
228
+ e.set("page", g);
163
229
  },
164
- watch: {
165
- pageSize: ["setPageIfNeeded"]
230
+ setPageSize({ context: e, event: t }) {
231
+ e.set("pageSize", t.size);
166
232
  },
167
- computed: {
168
- totalPages: (e) => Math.ceil(e.count / e.pageSize),
169
- previousPage: (e) => e.page === 1 ? null : e.page - 1,
170
- nextPage: (e) => e.page === e.totalPages ? null : e.page + 1,
171
- pageRange: (e) => {
172
- const g = (e.page - 1) * e.pageSize, o = g + e.pageSize;
173
- return { start: g, end: o };
174
- },
175
- isValidPage: (e) => e.page >= 1 && e.page <= e.totalPages
233
+ goToFirstPage({ context: e }) {
234
+ e.set("page", 1);
176
235
  },
177
- on: {
178
- SET_COUNT: [
179
- {
180
- guard: "isValidCount",
181
- actions: ["setCount", "goToFirstPage"]
182
- },
183
- {
184
- actions: "setCount"
185
- }
186
- ],
187
- SET_PAGE: {
188
- guard: "isValidPage",
189
- actions: "setPage"
190
- },
191
- SET_PAGE_SIZE: {
192
- actions: "setPageSize"
193
- },
194
- FIRST_PAGE: {
195
- actions: "goToFirstPage"
196
- },
197
- LAST_PAGE: {
198
- actions: "goToLastPage"
199
- },
200
- PREVIOUS_PAGE: {
201
- guard: "canGoToPrevPage",
202
- actions: "goToPrevPage"
203
- },
204
- NEXT_PAGE: {
205
- guard: "canGoToNextPage",
206
- actions: "goToNextPage"
207
- }
236
+ goToLastPage({ context: e, computed: t }) {
237
+ e.set("page", t("totalPages"));
208
238
  },
209
- states: {
210
- idle: {}
211
- }
212
- },
213
- {
214
- guards: {
215
- isValidPage: (e, g) => g.page >= 1 && g.page <= e.totalPages,
216
- isValidCount: (e, g) => e.page > g.count,
217
- canGoToNextPage: (e) => e.page < e.totalPages,
218
- canGoToPrevPage: (e) => e.page > 1
239
+ goToPrevPage({ context: e, computed: t }) {
240
+ e.set("page", (a) => f(a - 1, t("totalPages")));
219
241
  },
220
- actions: {
221
- setCount(e, g) {
222
- e.count = g.count;
223
- },
224
- setPage(e, g) {
225
- r.page(e, g.page);
226
- },
227
- setPageSize(e, g) {
228
- r.pageSize(e, g.size);
229
- },
230
- goToFirstPage(e) {
231
- r.page(e, 1);
232
- },
233
- goToLastPage(e) {
234
- r.page(e, e.totalPages);
235
- },
236
- goToPrevPage(e) {
237
- r.page(e, e.page - 1);
238
- },
239
- goToNextPage(e) {
240
- r.page(e, e.page + 1);
241
- },
242
- setPageIfNeeded(e, g) {
243
- e.isValidPage || r.page(e, 1);
244
- }
242
+ goToNextPage({ context: e, computed: t }) {
243
+ e.set("page", (a) => f(a + 1, t("totalPages")));
244
+ },
245
+ setPageIfNeeded({ context: e, computed: t }) {
246
+ t("isValidPage") || e.set("page", 1);
245
247
  }
246
248
  }
247
- );
248
- }
249
- var F = (t, a) => Math.min(Math.max(t, 1), a), r = {
250
- pageSize: (t, a) => {
251
- var e;
252
- R(t.pageSize, a) || (t.pageSize = a, (e = t.onPageSizeChange) == null || e.call(t, { pageSize: t.pageSize }));
253
- },
254
- page: (t, a) => {
255
- var e;
256
- R(t.page, a) || (t.page = F(a, t.totalPages), (e = t.onPageChange) == null || e.call(t, { page: t.page, pageSize: t.pageSize }));
257
249
  }
258
- };
259
- v()([
250
+ }), f = (e, t) => Math.min(Math.max(e, 1), t);
251
+ b()([
260
252
  "count",
261
253
  "dir",
262
254
  "getRootNode",
@@ -265,15 +257,17 @@ v()([
265
257
  "onPageChange",
266
258
  "onPageSizeChange",
267
259
  "page",
260
+ "defaultPage",
268
261
  "pageSize",
262
+ "defaultPageSize",
269
263
  "siblingCount",
270
264
  "translations",
271
265
  "type"
272
266
  ]);
273
- v()(["value", "type"]);
274
- v()(["index"]);
267
+ b()(["value", "type"]);
268
+ b()(["index"]);
275
269
  export {
276
270
  z as anatomy,
277
- X as connect,
278
- Z as machine
271
+ B as connect,
272
+ j as machine
279
273
  };