svelte-common 6.15.1 → 6.15.3
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/package.json +7 -7
- package/src/index.svelte +1 -1
- package/src/pagination.mjs +15 -9
- package/types/pagination.d.mts +6 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "svelte-common",
|
|
3
|
-
"version": "6.15.
|
|
3
|
+
"version": "6.15.3",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public",
|
|
6
6
|
"provenance": true
|
|
@@ -55,9 +55,9 @@
|
|
|
55
55
|
"devDependencies": {
|
|
56
56
|
"@semantic-release/commit-analyzer": "^13.0.0",
|
|
57
57
|
"@semantic-release/exec": "^6.0.3",
|
|
58
|
-
"@semantic-release/github": "^10.1.
|
|
58
|
+
"@semantic-release/github": "^10.1.7",
|
|
59
59
|
"@semantic-release/release-notes-generator": "^14.0.1",
|
|
60
|
-
"@sveltejs/vite-plugin-svelte": "^
|
|
60
|
+
"@sveltejs/vite-plugin-svelte": "^4.0.0-next.6",
|
|
61
61
|
"ava": "^6.1.3",
|
|
62
62
|
"c8": "^10.1.2",
|
|
63
63
|
"documentation": "^14.0.3",
|
|
@@ -66,18 +66,18 @@
|
|
|
66
66
|
"semantic-release": "^24.1.0",
|
|
67
67
|
"stylelint": "^16.8.2",
|
|
68
68
|
"stylelint-config-standard": "^36.0.1",
|
|
69
|
-
"svelte": "^5.0.0-next.
|
|
69
|
+
"svelte": "^5.0.0-next.238",
|
|
70
70
|
"testcafe": "^3.6.2",
|
|
71
71
|
"typescript": "^5.5.4",
|
|
72
|
-
"vite": "^5.4.
|
|
72
|
+
"vite": "^5.4.2",
|
|
73
73
|
"vite-plugin-compression2": "^1.2.0"
|
|
74
74
|
},
|
|
75
75
|
"peerDependencies": {
|
|
76
76
|
"svelte": "^5.0.0-next.0"
|
|
77
77
|
},
|
|
78
78
|
"optionalDependencies": {
|
|
79
|
-
"mf-hosting-cloudflare": "^1.0.
|
|
80
|
-
"mf-hosting-frontend": "^3.2.
|
|
79
|
+
"mf-hosting-cloudflare": "^1.0.7",
|
|
80
|
+
"mf-hosting-frontend": "^3.2.4"
|
|
81
81
|
},
|
|
82
82
|
"repository": {
|
|
83
83
|
"type": "git",
|
package/src/index.svelte
CHANGED
package/src/pagination.mjs
CHANGED
|
@@ -63,7 +63,7 @@ export class Pagination {
|
|
|
63
63
|
const applySorter = sorter => {
|
|
64
64
|
this.#sorter = sorter;
|
|
65
65
|
this.fireSubscriptions();
|
|
66
|
-
|
|
66
|
+
};
|
|
67
67
|
|
|
68
68
|
if (sorter?.subscribe) {
|
|
69
69
|
this.#unsubscribeFilter = sorter.subscribe(applySorter);
|
|
@@ -165,6 +165,15 @@ export class Pagination {
|
|
|
165
165
|
return Array.isArray(this.#data) ? this.#data.length : this.#data.size;
|
|
166
166
|
}
|
|
167
167
|
|
|
168
|
+
/**
|
|
169
|
+
*
|
|
170
|
+
* @param {number} page 1...
|
|
171
|
+
* @returns {[number,number]}
|
|
172
|
+
*/
|
|
173
|
+
itemRangeOnPage(page) {
|
|
174
|
+
return [(this.page - 1) * this.itemsPerPage, this.page * this.itemsPerPage];
|
|
175
|
+
}
|
|
176
|
+
|
|
168
177
|
/**
|
|
169
178
|
* @return {number}
|
|
170
179
|
*/
|
|
@@ -181,9 +190,10 @@ export class Pagination {
|
|
|
181
190
|
return this.#itemsPerPage;
|
|
182
191
|
}
|
|
183
192
|
|
|
184
|
-
get filteredItems()
|
|
185
|
-
|
|
186
|
-
|
|
193
|
+
get filteredItems() {
|
|
194
|
+
let items = Array.isArray(this.#data)
|
|
195
|
+
? this.#data
|
|
196
|
+
: [...this.#data.values()];
|
|
187
197
|
|
|
188
198
|
if (this.filter) {
|
|
189
199
|
return items.filter(this.filter);
|
|
@@ -199,11 +209,7 @@ export class Pagination {
|
|
|
199
209
|
data = data.sort(this.sorter);
|
|
200
210
|
}
|
|
201
211
|
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
yield* data
|
|
205
|
-
.slice(n * this.itemsPerPage, (n + 1) * this.itemsPerPage)
|
|
206
|
-
[Symbol.iterator]();
|
|
212
|
+
yield* data.slice(...this.itemRangeOnPage(this.page))[Symbol.iterator]();
|
|
207
213
|
}
|
|
208
214
|
|
|
209
215
|
/**
|
package/types/pagination.d.mts
CHANGED
|
@@ -46,6 +46,12 @@ export class Pagination {
|
|
|
46
46
|
* @return {number}
|
|
47
47
|
*/
|
|
48
48
|
get numberOfItems(): number;
|
|
49
|
+
/**
|
|
50
|
+
*
|
|
51
|
+
* @param {number} page 1...
|
|
52
|
+
* @returns {[number,number]}
|
|
53
|
+
*/
|
|
54
|
+
itemRangeOnPage(page: number): [number, number];
|
|
49
55
|
/**
|
|
50
56
|
* @return {number}
|
|
51
57
|
*/
|