quasar-factory-lib 0.0.45 → 0.0.47
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/components/Table/Table.vue.d.ts +13 -10
- package/dist/components/Table/utils/infiniteScroll.d.ts +0 -1
- package/dist/layouts/PdaLayout.vue.d.ts +14 -12
- package/dist/pages/TablePage.vue.d.ts +14 -10
- package/dist/quasar-factory-lib.js +23 -13
- package/dist/quasar-factory-lib.umd.cjs +2 -2
- package/dist/store/table.d.ts +1 -0
- package/package.json +1 -1
- package/src/components/Table/Table.vue +17 -8
- package/src/components/Table/utils/infiniteScroll.ts +8 -8
- package/src/layouts/PdaLayout.vue +2 -180
- package/src/store/table.js +2 -1
package/dist/store/table.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ export const tableStore: import("pinia").StoreDefinition<"tableStore", {
|
|
|
3
3
|
filterValue: import("@vueuse/shared").RemovableRef<string>;
|
|
4
4
|
lastFilterValue: import("@vueuse/shared").RemovableRef<string>;
|
|
5
5
|
visiblecolumns: import("@vueuse/shared").RemovableRef<never[]>;
|
|
6
|
+
preparedQuantity: import("@vueuse/shared").RemovableRef<boolean>;
|
|
6
7
|
}, {}, {
|
|
7
8
|
setFilterValue(val: any): void;
|
|
8
9
|
cleanTableFilter(): void;
|
package/package.json
CHANGED
|
@@ -129,10 +129,6 @@ export default defineComponent({
|
|
|
129
129
|
type: Function,
|
|
130
130
|
default: function () {}
|
|
131
131
|
},
|
|
132
|
-
filterComputed: {
|
|
133
|
-
type: Object,
|
|
134
|
-
default: function () {}
|
|
135
|
-
},
|
|
136
132
|
sortMethod: {
|
|
137
133
|
type: Function,
|
|
138
134
|
default: function () {}
|
|
@@ -175,6 +171,10 @@ export default defineComponent({
|
|
|
175
171
|
},
|
|
176
172
|
showSkeleton: {
|
|
177
173
|
type: Boolean
|
|
174
|
+
},
|
|
175
|
+
filterComputedOptions: {
|
|
176
|
+
type: Object,
|
|
177
|
+
default: {}
|
|
178
178
|
}
|
|
179
179
|
},
|
|
180
180
|
emits: [
|
|
@@ -199,8 +199,9 @@ export default defineComponent({
|
|
|
199
199
|
showColumnsSelector: false,
|
|
200
200
|
showSearch: false,
|
|
201
201
|
loading: false,
|
|
202
|
-
|
|
203
|
-
|
|
202
|
+
forceRender: false,
|
|
203
|
+
totalPage: 0,
|
|
204
|
+
pageSize: 20
|
|
204
205
|
}
|
|
205
206
|
},
|
|
206
207
|
computed: {
|
|
@@ -218,6 +219,16 @@ export default defineComponent({
|
|
|
218
219
|
},
|
|
219
220
|
getGridSkeletonVisibility () {
|
|
220
221
|
return this.smallDevice && this.showSkeleton
|
|
222
|
+
},
|
|
223
|
+
filterComputed ():object {
|
|
224
|
+
return {
|
|
225
|
+
search: this.store.filterValue,
|
|
226
|
+
forceRender: this.forceRender,
|
|
227
|
+
...this.filterComputedOptions
|
|
228
|
+
}
|
|
229
|
+
},
|
|
230
|
+
pageLength (): number {
|
|
231
|
+
return (this.totalPage + 1) * this.pageSize
|
|
221
232
|
}
|
|
222
233
|
},
|
|
223
234
|
watch: {
|
|
@@ -261,8 +272,6 @@ export default defineComponent({
|
|
|
261
272
|
this.$emit('onUpdateCustomizedCheckboxValue', row)
|
|
262
273
|
},
|
|
263
274
|
clearTableSelection () {
|
|
264
|
-
// const table = this.$refs.myTable as QTable
|
|
265
|
-
// table.clearSelection()
|
|
266
275
|
this.selected = []
|
|
267
276
|
},
|
|
268
277
|
toggleSearchVisibility (store: {disableScannerButtons: boolean, lastFilterValue: string, valueInputFilterTable: string}) {
|
|
@@ -11,8 +11,8 @@ const infiniteScroll = {
|
|
|
11
11
|
const fnAddScroll = (event: Event) => {
|
|
12
12
|
const { scrollHeight, scrollTop, clientHeight } = event.target as HTMLElement
|
|
13
13
|
if (Math.abs(scrollHeight - clientHeight - scrollTop) < 1) {
|
|
14
|
-
console.log(`[${tableType}] You are at the bottom!`, self.totalPage)
|
|
15
|
-
self.totalPage++
|
|
14
|
+
console.log(`[${tableType}] You are at the bottom!`, self.$refs.table.totalPage)
|
|
15
|
+
self.$refs.table.totalPage++
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
18
|
window.removeEventListener('scroll', fnAddScroll)
|
|
@@ -20,11 +20,11 @@ const infiniteScroll = {
|
|
|
20
20
|
elementToScroll.addEventListener('scroll', fnAddScroll)
|
|
21
21
|
})
|
|
22
22
|
},
|
|
23
|
-
paginationNewTable (self: { pageLength: number;
|
|
24
|
-
|
|
25
|
-
return rowsPagination
|
|
23
|
+
paginationNewTable (self: { pageLength: number; }, rows: object []): object [] {
|
|
24
|
+
return rows.slice(0, self.$refs.table.pageLength)
|
|
26
25
|
},
|
|
27
26
|
handleInfiniteScrollModal (self: { $nextTick: (arg0: () => void) => void; totalPageModal: number; smallDevice: boolean }, tableID: string): void {
|
|
27
|
+
console.log('handleInfiniteScrollModal')
|
|
28
28
|
self.$nextTick(() => {
|
|
29
29
|
const tableElement = document.getElementById(tableID)
|
|
30
30
|
const elemClass = self.smallDevice ? 'q-table__grid-content' : 'q-table__middle scroll'
|
|
@@ -36,13 +36,13 @@ const infiniteScroll = {
|
|
|
36
36
|
if (self.smallDevice) {
|
|
37
37
|
if (elementToScroll.scrollTop + elementToScroll.clientHeight >= elementToScroll.scrollHeight) {
|
|
38
38
|
console.log('[Grid] You are at the bottom!')
|
|
39
|
-
self.
|
|
39
|
+
self.$refs.table.totalPage++
|
|
40
40
|
}
|
|
41
41
|
} else {
|
|
42
42
|
const { scrollHeight, scrollTop, clientHeight } = target
|
|
43
43
|
if (Math.abs(scrollHeight - clientHeight - scrollTop) < 1) {
|
|
44
44
|
console.log('[Table] You are at the bottom!')
|
|
45
|
-
self.
|
|
45
|
+
self.$refs.table.totalPage++
|
|
46
46
|
}
|
|
47
47
|
}
|
|
48
48
|
}
|
|
@@ -52,7 +52,7 @@ const infiniteScroll = {
|
|
|
52
52
|
})
|
|
53
53
|
},
|
|
54
54
|
paginationModal (self: { pageLengthModal: number; rowsPaginationCount: number; }, rows: object []): object [] {
|
|
55
|
-
const rowsPagination = rows.slice(0, self.
|
|
55
|
+
const rowsPagination = rows.slice(0, self.$refs.table.totalPage++)
|
|
56
56
|
return rowsPagination
|
|
57
57
|
}
|
|
58
58
|
}
|
|
@@ -31,8 +31,6 @@
|
|
|
31
31
|
:selection-type="'multiple'"
|
|
32
32
|
:filter-method="filterMethod"
|
|
33
33
|
:filter-computed="filter"
|
|
34
|
-
:sortDataValues="['date']"
|
|
35
|
-
:filteredRows="filteredRows"
|
|
36
34
|
@on-select-visible-columns="saveSelectedColumns"
|
|
37
35
|
@on-update-basic-checkbox-value="onUpdateBasicCheckboxValue"
|
|
38
36
|
@on-update-customized-checkbox-value="onUpdateCustomizedCheckboxValue"
|
|
@@ -63,7 +61,7 @@ export default {
|
|
|
63
61
|
forceRender: false,
|
|
64
62
|
store: tableStore(),
|
|
65
63
|
totalPage: 0,
|
|
66
|
-
pageSize:
|
|
64
|
+
pageSize: 20,
|
|
67
65
|
tableStyle: '',
|
|
68
66
|
columns: [{
|
|
69
67
|
name: 'name',
|
|
@@ -173,7 +171,6 @@ export default {
|
|
|
173
171
|
{
|
|
174
172
|
id: 1,
|
|
175
173
|
name: 'Frozen Yogurt',
|
|
176
|
-
date: '21/12/2024',
|
|
177
174
|
booleanIcon: true,
|
|
178
175
|
available: true,
|
|
179
176
|
calories: 159,
|
|
@@ -188,7 +185,6 @@ export default {
|
|
|
188
185
|
{
|
|
189
186
|
id: 2,
|
|
190
187
|
name: 'Ice cream sandwich',
|
|
191
|
-
date: '12/12/2024',
|
|
192
188
|
booleanIcon: true,
|
|
193
189
|
available: false,
|
|
194
190
|
calories: 237,
|
|
@@ -203,7 +199,6 @@ export default {
|
|
|
203
199
|
{
|
|
204
200
|
id: 3,
|
|
205
201
|
name: 'Eclair',
|
|
206
|
-
date: '21/12/2025',
|
|
207
202
|
booleanIcon: true,
|
|
208
203
|
available: true,
|
|
209
204
|
calories: 262,
|
|
@@ -218,7 +213,6 @@ export default {
|
|
|
218
213
|
{
|
|
219
214
|
id: 4,
|
|
220
215
|
name: 'Cupcake',
|
|
221
|
-
date: '05/07/2024',
|
|
222
216
|
booleanIcon: false,
|
|
223
217
|
available: false,
|
|
224
218
|
calories: 305,
|
|
@@ -233,7 +227,6 @@ export default {
|
|
|
233
227
|
{
|
|
234
228
|
id: 5,
|
|
235
229
|
name: 'Gingerbread',
|
|
236
|
-
date: '07/05/2024',
|
|
237
230
|
booleanIcon: true,
|
|
238
231
|
available: true,
|
|
239
232
|
calories: 356,
|
|
@@ -248,7 +241,6 @@ export default {
|
|
|
248
241
|
{
|
|
249
242
|
id: 5,
|
|
250
243
|
name: 'Jelly bean',
|
|
251
|
-
date: '11/12/2025',
|
|
252
244
|
booleanIcon: false,
|
|
253
245
|
available: false,
|
|
254
246
|
calories: 375,
|
|
@@ -264,7 +256,6 @@ export default {
|
|
|
264
256
|
id: 6,
|
|
265
257
|
name: 'Lollipop',
|
|
266
258
|
booleanIcon: true,
|
|
267
|
-
date: '21/12/2024',
|
|
268
259
|
available: true,
|
|
269
260
|
calories: 392,
|
|
270
261
|
fat: 0.2,
|
|
@@ -279,7 +270,6 @@ export default {
|
|
|
279
270
|
id: 7,
|
|
280
271
|
name: 'Honeycomb',
|
|
281
272
|
booleanIcon: true,
|
|
282
|
-
date: '22/12/2023',
|
|
283
273
|
available: false,
|
|
284
274
|
calories: 408,
|
|
285
275
|
fat: 3.2,
|
|
@@ -294,7 +284,6 @@ export default {
|
|
|
294
284
|
id: 8,
|
|
295
285
|
name: 'Donut',
|
|
296
286
|
booleanIcon: true,
|
|
297
|
-
date: '25/12/2024',
|
|
298
287
|
available: true,
|
|
299
288
|
calories: 452,
|
|
300
289
|
fat: 25.0,
|
|
@@ -308,172 +297,6 @@ export default {
|
|
|
308
297
|
{
|
|
309
298
|
id: 9,
|
|
310
299
|
name: 'KitKat',
|
|
311
|
-
date: '20/12/2024',
|
|
312
|
-
booleanIcon: false,
|
|
313
|
-
available: false,
|
|
314
|
-
calories: 518,
|
|
315
|
-
fat: 26.0,
|
|
316
|
-
carbs: 65,
|
|
317
|
-
checked: true,
|
|
318
|
-
protein: 7,
|
|
319
|
-
sodium: 54,
|
|
320
|
-
calcium: '12%',
|
|
321
|
-
iron: '6%'
|
|
322
|
-
},
|
|
323
|
-
{
|
|
324
|
-
id: 10,
|
|
325
|
-
name: 'Frozen Yogurt',
|
|
326
|
-
date: '21/12/2024',
|
|
327
|
-
booleanIcon: true,
|
|
328
|
-
available: true,
|
|
329
|
-
calories: 159,
|
|
330
|
-
fat: 6.0,
|
|
331
|
-
carbs: 24,
|
|
332
|
-
checked: false,
|
|
333
|
-
protein: 4.0,
|
|
334
|
-
sodium: 87,
|
|
335
|
-
calcium: '14%',
|
|
336
|
-
iron: '1%'
|
|
337
|
-
},
|
|
338
|
-
{
|
|
339
|
-
id: 11,
|
|
340
|
-
name: 'Frozen Yogurt',
|
|
341
|
-
date: '21/12/2024',
|
|
342
|
-
booleanIcon: true,
|
|
343
|
-
available: true,
|
|
344
|
-
calories: 159,
|
|
345
|
-
fat: 6.0,
|
|
346
|
-
carbs: 24,
|
|
347
|
-
checked: false,
|
|
348
|
-
protein: 4.0,
|
|
349
|
-
sodium: 87,
|
|
350
|
-
calcium: '14%',
|
|
351
|
-
iron: '1%'
|
|
352
|
-
},
|
|
353
|
-
{
|
|
354
|
-
id: 12,
|
|
355
|
-
name: 'Ice cream sandwich',
|
|
356
|
-
date: '12/12/2024',
|
|
357
|
-
booleanIcon: true,
|
|
358
|
-
available: false,
|
|
359
|
-
calories: 237,
|
|
360
|
-
fat: 9.0,
|
|
361
|
-
carbs: 37,
|
|
362
|
-
checked: false,
|
|
363
|
-
protein: 4.3,
|
|
364
|
-
sodium: 129,
|
|
365
|
-
calcium: '8%',
|
|
366
|
-
iron: '1%'
|
|
367
|
-
},
|
|
368
|
-
{
|
|
369
|
-
id: 13,
|
|
370
|
-
name: 'Eclair',
|
|
371
|
-
date: '21/12/2025',
|
|
372
|
-
booleanIcon: true,
|
|
373
|
-
available: true,
|
|
374
|
-
calories: 262,
|
|
375
|
-
fat: 16.0,
|
|
376
|
-
carbs: 23,
|
|
377
|
-
checked: false,
|
|
378
|
-
protein: 6.0,
|
|
379
|
-
sodium: 337,
|
|
380
|
-
calcium: '6%',
|
|
381
|
-
iron: '7%'
|
|
382
|
-
},
|
|
383
|
-
{
|
|
384
|
-
id: 14,
|
|
385
|
-
name: 'Cupcake',
|
|
386
|
-
date: '05/07/2024',
|
|
387
|
-
booleanIcon: false,
|
|
388
|
-
available: false,
|
|
389
|
-
calories: 305,
|
|
390
|
-
fat: 3.7,
|
|
391
|
-
carbs: 67,
|
|
392
|
-
checked: false,
|
|
393
|
-
protein: 4.3,
|
|
394
|
-
sodium: 413,
|
|
395
|
-
calcium: '3%',
|
|
396
|
-
iron: '8%'
|
|
397
|
-
},
|
|
398
|
-
{
|
|
399
|
-
id: 15,
|
|
400
|
-
name: 'Gingerbread',
|
|
401
|
-
date: '07/05/2024',
|
|
402
|
-
booleanIcon: true,
|
|
403
|
-
available: true,
|
|
404
|
-
calories: 356,
|
|
405
|
-
fat: 16.0,
|
|
406
|
-
carbs: 49,
|
|
407
|
-
checked: false,
|
|
408
|
-
protein: 3.9,
|
|
409
|
-
sodium: 327,
|
|
410
|
-
calcium: '7%',
|
|
411
|
-
iron: '16%'
|
|
412
|
-
},
|
|
413
|
-
{
|
|
414
|
-
id: 16,
|
|
415
|
-
name: 'Jelly bean',
|
|
416
|
-
date: '11/12/2025',
|
|
417
|
-
booleanIcon: false,
|
|
418
|
-
available: false,
|
|
419
|
-
calories: 375,
|
|
420
|
-
fat: 0.0,
|
|
421
|
-
carbs: 94,
|
|
422
|
-
checked: true,
|
|
423
|
-
protein: 0.0,
|
|
424
|
-
sodium: 50,
|
|
425
|
-
calcium: '0%',
|
|
426
|
-
iron: '0%'
|
|
427
|
-
},
|
|
428
|
-
{
|
|
429
|
-
id: 17,
|
|
430
|
-
name: 'Lollipop',
|
|
431
|
-
booleanIcon: true,
|
|
432
|
-
date: '21/12/2024',
|
|
433
|
-
available: true,
|
|
434
|
-
calories: 392,
|
|
435
|
-
fat: 0.2,
|
|
436
|
-
carbs: 98,
|
|
437
|
-
checked: false,
|
|
438
|
-
protein: 0,
|
|
439
|
-
sodium: 38,
|
|
440
|
-
calcium: '0%',
|
|
441
|
-
iron: '2%'
|
|
442
|
-
},
|
|
443
|
-
{
|
|
444
|
-
id: 18,
|
|
445
|
-
name: 'Honeycomb',
|
|
446
|
-
booleanIcon: true,
|
|
447
|
-
date: '22/12/2023',
|
|
448
|
-
available: false,
|
|
449
|
-
calories: 408,
|
|
450
|
-
fat: 3.2,
|
|
451
|
-
carbs: 87,
|
|
452
|
-
checked: true,
|
|
453
|
-
protein: 6.5,
|
|
454
|
-
sodium: 562,
|
|
455
|
-
calcium: '0%',
|
|
456
|
-
iron: '45%'
|
|
457
|
-
},
|
|
458
|
-
{
|
|
459
|
-
id: 19,
|
|
460
|
-
name: 'Donut',
|
|
461
|
-
booleanIcon: true,
|
|
462
|
-
date: '25/12/2024',
|
|
463
|
-
available: true,
|
|
464
|
-
calories: 452,
|
|
465
|
-
fat: 25.0,
|
|
466
|
-
carbs: 51,
|
|
467
|
-
checked: false,
|
|
468
|
-
protein: 4.9,
|
|
469
|
-
sodium: 326,
|
|
470
|
-
calcium: '2%',
|
|
471
|
-
iron: '22%'
|
|
472
|
-
},
|
|
473
|
-
{
|
|
474
|
-
id: 20,
|
|
475
|
-
name: 'Last line',
|
|
476
|
-
date: '31/12/2026',
|
|
477
300
|
booleanIcon: false,
|
|
478
301
|
available: false,
|
|
479
302
|
calories: 518,
|
|
@@ -486,8 +309,7 @@ export default {
|
|
|
486
309
|
iron: '6%'
|
|
487
310
|
}
|
|
488
311
|
],
|
|
489
|
-
visibleColumns: []
|
|
490
|
-
filteredRows: []
|
|
312
|
+
visibleColumns: []
|
|
491
313
|
}
|
|
492
314
|
},
|
|
493
315
|
computed: {
|
package/src/store/table.js
CHANGED
|
@@ -5,7 +5,8 @@ export const tableStore = defineStore('tableStore', {
|
|
|
5
5
|
disableScannerButtons: useStorage('disableScannerButtons', false),
|
|
6
6
|
filterValue: useStorage('filterValue', ''),
|
|
7
7
|
lastFilterValue: useStorage('lastFilterValue', ''),
|
|
8
|
-
visiblecolumns: useStorage('visiblecolumns', [])
|
|
8
|
+
visiblecolumns: useStorage('visiblecolumns', []),
|
|
9
|
+
preparedQuantity: useStorage('preparedQuantity', false)
|
|
9
10
|
}),
|
|
10
11
|
getters: {
|
|
11
12
|
},
|