@everymatrix/lottery-hakuna-ticket-history 0.0.1 → 0.0.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/dist/cjs/index.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/lottery-button_8.cjs.entry.js +13 -136
- package/dist/cjs/{lottery-hakuna-ticket-history-84d9a41b.js → lottery-hakuna-ticket-history-155db5ed.js} +1 -2
- package/dist/cjs/lottery-hakuna-ticket-history.cjs.js +1 -1
- package/dist/collection/components/lottery-hakuna-ticket-history/lottery-hakuna-ticket-history.js +1 -20
- package/dist/collection/components/lottery-infinite-scroll/lottery-infinite-scroll.js +60 -197
- package/dist/esm/index.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/lottery-button_8.entry.js +14 -137
- package/dist/esm/{lottery-hakuna-ticket-history-cdab50d9.js → lottery-hakuna-ticket-history-4cb107bf.js} +1 -2
- package/dist/esm/lottery-hakuna-ticket-history.js +1 -1
- package/dist/lottery-hakuna-ticket-history/index.esm.js +1 -1
- package/dist/lottery-hakuna-ticket-history/lottery-button_8.entry.js +1 -1
- package/dist/lottery-hakuna-ticket-history/{lottery-hakuna-ticket-history-cdab50d9.js → lottery-hakuna-ticket-history-4cb107bf.js} +1 -1
- package/dist/lottery-hakuna-ticket-history/lottery-hakuna-ticket-history.esm.js +1 -1
- package/dist/types/components/lottery-hakuna-ticket-history/lottery-hakuna-ticket-history.d.ts +0 -4
- package/dist/types/components/lottery-infinite-scroll/lottery-infinite-scroll.d.ts +37 -51
- package/dist/types/components.d.ts +44 -50
- package/package.json +1 -1
|
@@ -1,18 +1,9 @@
|
|
|
1
1
|
import { h } from "@stencil/core";
|
|
2
2
|
export class LotteryInfiniteScroll {
|
|
3
3
|
constructor() {
|
|
4
|
-
|
|
4
|
+
// Touch event vars
|
|
5
5
|
this.startY = 0;
|
|
6
|
-
/** Indicates if a touch event is currently active for pull-to-refresh. */
|
|
7
6
|
this.isTouching = false;
|
|
8
|
-
// --- Virtual Scroll Core Logic ---
|
|
9
|
-
this.onScroll = () => {
|
|
10
|
-
if (this.enableVirtualScroll) {
|
|
11
|
-
if (this.rafId)
|
|
12
|
-
cancelAnimationFrame(this.rafId);
|
|
13
|
-
this.rafId = requestAnimationFrame(() => this.calculateVisibleRange());
|
|
14
|
-
}
|
|
15
|
-
};
|
|
16
7
|
// --- Pull to Refresh Logic (Touch handling) ---
|
|
17
8
|
this.handleTouchStart = (e) => {
|
|
18
9
|
// Only allow pull-down when scrollbar is at the top
|
|
@@ -57,28 +48,16 @@ export class LotteryInfiniteScroll {
|
|
|
57
48
|
this.isLoading = false;
|
|
58
49
|
this.isRefreshing = false;
|
|
59
50
|
this.threshold = '0px 0px 200px 0px';
|
|
60
|
-
this.estimatedItemHeight = 200;
|
|
61
51
|
this.containerHeight = '100%';
|
|
62
|
-
this.enableVirtualScroll = false;
|
|
63
52
|
this.renderItem = undefined;
|
|
64
53
|
this.renderSkeleton = undefined;
|
|
65
54
|
this.skeletonCount = 6;
|
|
66
55
|
this.pullTriggerDistance = 60;
|
|
67
56
|
this.minItemWidth = 340;
|
|
68
57
|
this.gridGap = 10;
|
|
69
|
-
this.visibleStartIndex = 0;
|
|
70
|
-
this.visibleEndIndex = 10;
|
|
71
58
|
this.pullDistance = 0;
|
|
72
|
-
this.columns = 1;
|
|
73
59
|
}
|
|
74
60
|
componentDidLoad() {
|
|
75
|
-
if (this.enableVirtualScroll) {
|
|
76
|
-
// Listen for container size changes, recalculate columns
|
|
77
|
-
this.initResizeObserver();
|
|
78
|
-
// Initial calculation
|
|
79
|
-
this.calculateMetrics();
|
|
80
|
-
}
|
|
81
|
-
// Initialize observer on component load
|
|
82
61
|
this.initObserver();
|
|
83
62
|
}
|
|
84
63
|
componentDidUpdate() {
|
|
@@ -88,49 +67,12 @@ export class LotteryInfiniteScroll {
|
|
|
88
67
|
}
|
|
89
68
|
disconnectedCallback() {
|
|
90
69
|
this.disconnectObserver();
|
|
91
|
-
if (this.resizeObserver)
|
|
92
|
-
this.resizeObserver.disconnect();
|
|
93
|
-
if (this.rafId)
|
|
94
|
-
cancelAnimationFrame(this.rafId);
|
|
95
|
-
}
|
|
96
|
-
initResizeObserver() {
|
|
97
|
-
if (!window.ResizeObserver || !this.scrollContainer)
|
|
98
|
-
return;
|
|
99
|
-
this.resizeObserver = new ResizeObserver((entries) => {
|
|
100
|
-
for (let entry of entries) {
|
|
101
|
-
// When width changes, recalculate the number of columns
|
|
102
|
-
const width = entry.contentRect.width;
|
|
103
|
-
this.recalcColumns(width);
|
|
104
|
-
this.calculateVisibleRange();
|
|
105
|
-
}
|
|
106
|
-
});
|
|
107
|
-
this.resizeObserver.observe(this.scrollContainer);
|
|
108
|
-
}
|
|
109
|
-
recalcColumns(containerWidth) {
|
|
110
|
-
if (!this.enableVirtualScroll)
|
|
111
|
-
return;
|
|
112
|
-
// Calculation logic must be consistent with CSS grid-template-columns: repeat(auto-fill, ...)
|
|
113
|
-
// Considering the gap
|
|
114
|
-
const effectiveWidth = containerWidth + this.gridGap;
|
|
115
|
-
const itemOccupancy = this.minItemWidth + this.gridGap;
|
|
116
|
-
// At least 1 column
|
|
117
|
-
const newColumns = Math.max(1, Math.floor(effectiveWidth / itemOccupancy));
|
|
118
|
-
if (this.columns !== newColumns) {
|
|
119
|
-
this.columns = newColumns;
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
// --- Watchers ---
|
|
123
|
-
handleItemsChange() {
|
|
124
|
-
if (this.enableVirtualScroll) {
|
|
125
|
-
this.calculateVisibleRange();
|
|
126
|
-
}
|
|
127
70
|
}
|
|
128
71
|
handleRefreshingChange(newValue) {
|
|
129
72
|
if (!newValue) {
|
|
130
73
|
this.pullDistance = 0;
|
|
131
74
|
}
|
|
132
75
|
}
|
|
133
|
-
// --- Observer Logic ---
|
|
134
76
|
disconnectObserver() {
|
|
135
77
|
if (this.observer) {
|
|
136
78
|
this.observer.disconnect();
|
|
@@ -142,105 +84,41 @@ export class LotteryInfiniteScroll {
|
|
|
142
84
|
if (!this.hasMore || this.isLoading || !this.sentinel)
|
|
143
85
|
return;
|
|
144
86
|
const options = {
|
|
145
|
-
root: this.scrollContainer
|
|
146
|
-
? this.scrollContainer
|
|
147
|
-
: null,
|
|
87
|
+
root: this.scrollContainer,
|
|
148
88
|
rootMargin: this.threshold,
|
|
149
89
|
threshold: 0.1
|
|
150
90
|
};
|
|
151
91
|
this.observer = new IntersectionObserver((entries) => {
|
|
152
|
-
// When scrolled to bottom and not currently loading
|
|
153
92
|
if (entries[0].isIntersecting && this.hasMore && !this.isLoading) {
|
|
154
93
|
this.loadMore.emit();
|
|
155
94
|
}
|
|
156
95
|
}, options);
|
|
157
96
|
this.observer.observe(this.sentinel);
|
|
158
97
|
}
|
|
159
|
-
calculateMetrics() {
|
|
160
|
-
if (!this.scrollContainer)
|
|
161
|
-
return;
|
|
162
|
-
this.recalcColumns(this.scrollContainer.clientWidth);
|
|
163
|
-
this.calculateVisibleRange();
|
|
164
|
-
}
|
|
165
|
-
calculateVisibleRange() {
|
|
166
|
-
if (!this.scrollContainer || !this.enableVirtualScroll)
|
|
167
|
-
return;
|
|
168
|
-
const scrollTop = this.scrollContainer.scrollTop;
|
|
169
|
-
const viewportHeight = this.scrollContainer.clientHeight;
|
|
170
|
-
// 1. Calculate the current "Row" index
|
|
171
|
-
// We assume each row has a height of estimatedItemHeight (although it may differ in reality, this is sufficient for visible window calculation)
|
|
172
|
-
const startRow = Math.floor(scrollTop / this.estimatedItemHeight);
|
|
173
|
-
// 2. Buffer row count
|
|
174
|
-
const bufferRows = 3;
|
|
175
|
-
// 3. Calculate visible rows
|
|
176
|
-
const visibleRows = Math.ceil(viewportHeight / this.estimatedItemHeight);
|
|
177
|
-
// 4. Calculate start and end rows for rendering
|
|
178
|
-
const renderStartRow = Math.max(0, startRow - bufferRows);
|
|
179
|
-
const renderEndRow = startRow + visibleRows + bufferRows;
|
|
180
|
-
// 5. Convert to Item indices (Row * Columns)
|
|
181
|
-
const startIndex = renderStartRow * this.columns;
|
|
182
|
-
const endIndex = Math.min(this.items.length, renderEndRow * this.columns);
|
|
183
|
-
if (this.visibleStartIndex !== startIndex || this.visibleEndIndex !== endIndex) {
|
|
184
|
-
this.visibleStartIndex = startIndex;
|
|
185
|
-
this.visibleEndIndex = endIndex;
|
|
186
|
-
}
|
|
187
|
-
}
|
|
188
98
|
render() {
|
|
189
|
-
const { items,
|
|
190
|
-
// Check if we should show skeleton: items are empty, loading is true, and renderSkeleton is provided
|
|
99
|
+
const { items, minItemWidth, gridGap } = this;
|
|
191
100
|
const showSkeleton = items.length === 0 && !!this.renderSkeleton && this.isLoading;
|
|
192
|
-
|
|
193
|
-
let paddingTop = 0;
|
|
194
|
-
let paddingBottom = 0;
|
|
195
|
-
let visibleItems = [];
|
|
196
|
-
if (this.enableVirtualScroll && !showSkeleton) {
|
|
197
|
-
const totalRows = Math.ceil(items.length / columns);
|
|
198
|
-
const startRow = Math.floor(visibleStartIndex / columns);
|
|
199
|
-
// Note: Here we calculate how many rows are actually rendered based on the number of slices, for calculating bottom padding.
|
|
200
|
-
const renderedCount = visibleEndIndex - visibleStartIndex;
|
|
201
|
-
const renderedRows = Math.ceil(renderedCount / columns);
|
|
202
|
-
// Top Spacer: Number of rows hidden at the top * Estimated height
|
|
203
|
-
paddingTop = startRow * estimatedItemHeight;
|
|
204
|
-
// Bottom Spacer: Total rows - (Top rows + Rendered rows) * Estimated height
|
|
205
|
-
// Ensure the total scroll height is roughly correct
|
|
206
|
-
paddingBottom = Math.max(0, (totalRows - startRow - renderedRows) * estimatedItemHeight);
|
|
207
|
-
visibleItems = items.slice(visibleStartIndex, visibleEndIndex);
|
|
208
|
-
}
|
|
209
|
-
else {
|
|
210
|
-
visibleItems = showSkeleton ? new Array(this.skeletonCount).fill(null) : items;
|
|
211
|
-
}
|
|
212
|
-
// Styles
|
|
101
|
+
const listToRender = showSkeleton ? new Array(this.skeletonCount).fill(null) : items;
|
|
213
102
|
const contentTransform = {
|
|
214
103
|
transform: `translateY(${this.pullDistance}px)`,
|
|
215
104
|
transition: this.isTouching ? 'none' : 'transform 0.3s ease-out'
|
|
216
105
|
};
|
|
217
|
-
// Grid Layout Style
|
|
218
106
|
const listStyle = {
|
|
219
107
|
display: 'grid',
|
|
220
|
-
// Responsive column width
|
|
221
108
|
gridTemplateColumns: `repeat(auto-fill, minmax(${minItemWidth}px, 1fr))`,
|
|
222
109
|
gap: `${gridGap}px`,
|
|
223
|
-
// Even with Flex/Grid, we don't need absolute positioning, use margin/padding for spacing
|
|
224
|
-
paddingTop: `${paddingTop}px`,
|
|
225
|
-
paddingBottom: `${paddingBottom}px`,
|
|
226
110
|
boxSizing: 'border-box'
|
|
227
111
|
};
|
|
228
|
-
return (h("div", { key: '
|
|
112
|
+
return (h("div", { key: 'eab20294c6af2caafbf03ddefb58947398b5c6e1', class: "lottery-infinite-scroll__container", style: {
|
|
229
113
|
height: this.containerHeight,
|
|
230
114
|
overflowY: 'auto',
|
|
231
|
-
position: 'relative'
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
? this.renderSkeleton(realIndex)
|
|
239
|
-
: null
|
|
240
|
-
: this.renderItem
|
|
241
|
-
? this.renderItem(item, realIndex)
|
|
242
|
-
: null));
|
|
243
|
-
})), (this.hasMore || (this.isLoading && !showSkeleton)) && (h("div", { key: '0af2a85096fc16e9071ec0363a4eb58753324247', class: "lottery-infinite-scroll__sentinel", ref: (el) => (this.sentinel = el), style: { height: '20px', display: 'flex', justifyContent: 'center' } }, this.isLoading ? h("slot", { name: "loading-more" }, "Loading...") : null)), !this.hasMore && !this.isLoading && items.length > 0 && (h("div", { key: 'e6e814a96727e2442137412c25ec09908b2f9015', class: "end-message", style: { textAlign: 'center', padding: '10px' } }, h("slot", { key: '02831150b863992dabd59ab01f7bbb23066877bf', name: "end-message" }, "No more data"))))));
|
|
115
|
+
position: 'relative'
|
|
116
|
+
}, ref: (el) => (this.scrollContainer = el), onTouchStart: this.handleTouchStart, onTouchMove: this.handleTouchMove, onTouchEnd: this.handleTouchEnd }, h("div", { key: 'd2bf17db3948ef45cf9d77c663d7a6b6075e8125', class: "ptr-indicator", style: Object.assign(Object.assign({}, contentTransform), { position: 'absolute', top: '0', left: '0', width: '100%', height: `${this.pullTriggerDistance}px`, display: 'flex', alignItems: 'center', justifyContent: 'center', marginTop: `-${this.pullTriggerDistance}px`, pointerEvents: 'none' }) }, this.isRefreshing ? (h("slot", { name: "refresh-loading" }, "Refreshing...")) : (h("slot", { name: "pull-hint" }, this.pullDistance > this.pullTriggerDistance ? 'Release' : 'Pull'))), h("div", { key: '48e8997513bf547a0aa8eac7d036ce29f294fff0', class: "scroll-content-wrapper", style: contentTransform }, h("div", { key: '31c4de5010e1357239ccef2c9c009f7e2cfb5287', class: "list-content", style: listStyle }, listToRender.map((item, index) => (h("div", { key: index, class: "list-item-wrapper" }, showSkeleton ? this.renderSkeleton(index) : this.renderItem(item, index))))), h("div", { key: '6b0235f48d4c909c2edd400c3eb1d7efd030458e', class: "lottery-infinite-scroll__sentinel", ref: (el) => (this.sentinel = el), style: {
|
|
117
|
+
height: '20px',
|
|
118
|
+
display: 'flex',
|
|
119
|
+
justifyContent: 'center',
|
|
120
|
+
visibility: (this.hasMore || (this.isLoading && !showSkeleton)) ? 'visible' : 'hidden'
|
|
121
|
+
} }, this.isLoading ? h("slot", { name: "loading-more" }, "Loading...") : null), !this.hasMore && !this.isLoading && items.length > 0 && (h("div", { key: '24406925b5f96f2e9be9d06a2d87166e94d2bdad', class: "end-message", style: { textAlign: 'center', padding: '10px' } }, h("slot", { key: '189fe2d6f00551cac97267f2047fd76402b862bb', name: "end-message" }, "No more data"))))));
|
|
244
122
|
}
|
|
245
123
|
static get is() { return "lottery-infinite-scroll"; }
|
|
246
124
|
static get encapsulation() { return "shadow"; }
|
|
@@ -268,7 +146,7 @@ export class LotteryInfiniteScroll {
|
|
|
268
146
|
"optional": false,
|
|
269
147
|
"docs": {
|
|
270
148
|
"tags": [],
|
|
271
|
-
"text": "
|
|
149
|
+
"text": "The list of items to be displayed in the infinite scroll."
|
|
272
150
|
},
|
|
273
151
|
"defaultValue": "[]"
|
|
274
152
|
},
|
|
@@ -284,7 +162,7 @@ export class LotteryInfiniteScroll {
|
|
|
284
162
|
"optional": false,
|
|
285
163
|
"docs": {
|
|
286
164
|
"tags": [],
|
|
287
|
-
"text": "Indicates
|
|
165
|
+
"text": "Indicates whether there is more data to load."
|
|
288
166
|
},
|
|
289
167
|
"attribute": "has-more",
|
|
290
168
|
"reflect": false,
|
|
@@ -302,7 +180,7 @@ export class LotteryInfiniteScroll {
|
|
|
302
180
|
"optional": false,
|
|
303
181
|
"docs": {
|
|
304
182
|
"tags": [],
|
|
305
|
-
"text": "Indicates if
|
|
183
|
+
"text": "Indicates if data is currently being loaded."
|
|
306
184
|
},
|
|
307
185
|
"attribute": "is-loading",
|
|
308
186
|
"reflect": false,
|
|
@@ -320,7 +198,7 @@ export class LotteryInfiniteScroll {
|
|
|
320
198
|
"optional": false,
|
|
321
199
|
"docs": {
|
|
322
200
|
"tags": [],
|
|
323
|
-
"text": "Indicates if the
|
|
201
|
+
"text": "Indicates if the content is currently being refreshed (pull-to-refresh)."
|
|
324
202
|
},
|
|
325
203
|
"attribute": "is-refreshing",
|
|
326
204
|
"reflect": false,
|
|
@@ -338,30 +216,12 @@ export class LotteryInfiniteScroll {
|
|
|
338
216
|
"optional": false,
|
|
339
217
|
"docs": {
|
|
340
218
|
"tags": [],
|
|
341
|
-
"text": "
|
|
219
|
+
"text": "The IntersectionObserver's rootMargin.\nDefines the distance from the bottom of the scroll container to trigger the `loadMore` event.\nE.g., '0px 0px 200px 0px' triggers when 200px from the bottom."
|
|
342
220
|
},
|
|
343
221
|
"attribute": "threshold",
|
|
344
222
|
"reflect": false,
|
|
345
223
|
"defaultValue": "'0px 0px 200px 0px'"
|
|
346
224
|
},
|
|
347
|
-
"estimatedItemHeight": {
|
|
348
|
-
"type": "number",
|
|
349
|
-
"mutable": false,
|
|
350
|
-
"complexType": {
|
|
351
|
-
"original": "number",
|
|
352
|
-
"resolved": "number",
|
|
353
|
-
"references": {}
|
|
354
|
-
},
|
|
355
|
-
"required": false,
|
|
356
|
-
"optional": false,
|
|
357
|
-
"docs": {
|
|
358
|
-
"tags": [],
|
|
359
|
-
"text": "Estimated height of each item.\nUsed in virtual scrolling to calculate the total scrollbar length.\nEven if actual heights vary, an average value is sufficient;\nCSS handles layout fluidly without overlap."
|
|
360
|
-
},
|
|
361
|
-
"attribute": "estimated-item-height",
|
|
362
|
-
"reflect": false,
|
|
363
|
-
"defaultValue": "200"
|
|
364
|
-
},
|
|
365
225
|
"containerHeight": {
|
|
366
226
|
"type": "string",
|
|
367
227
|
"mutable": false,
|
|
@@ -374,30 +234,12 @@ export class LotteryInfiniteScroll {
|
|
|
374
234
|
"optional": false,
|
|
375
235
|
"docs": {
|
|
376
236
|
"tags": [],
|
|
377
|
-
"text": "
|
|
237
|
+
"text": "The height of the scrollable container."
|
|
378
238
|
},
|
|
379
239
|
"attribute": "container-height",
|
|
380
240
|
"reflect": false,
|
|
381
241
|
"defaultValue": "'100%'"
|
|
382
242
|
},
|
|
383
|
-
"enableVirtualScroll": {
|
|
384
|
-
"type": "boolean",
|
|
385
|
-
"mutable": false,
|
|
386
|
-
"complexType": {
|
|
387
|
-
"original": "boolean",
|
|
388
|
-
"resolved": "boolean",
|
|
389
|
-
"references": {}
|
|
390
|
-
},
|
|
391
|
-
"required": false,
|
|
392
|
-
"optional": false,
|
|
393
|
-
"docs": {
|
|
394
|
-
"tags": [],
|
|
395
|
-
"text": "Enables or disables virtual scrolling for performance optimization with large lists."
|
|
396
|
-
},
|
|
397
|
-
"attribute": "enable-virtual-scroll",
|
|
398
|
-
"reflect": false,
|
|
399
|
-
"defaultValue": "false"
|
|
400
|
-
},
|
|
401
243
|
"renderItem": {
|
|
402
244
|
"type": "unknown",
|
|
403
245
|
"mutable": false,
|
|
@@ -409,8 +251,17 @@ export class LotteryInfiniteScroll {
|
|
|
409
251
|
"required": false,
|
|
410
252
|
"optional": false,
|
|
411
253
|
"docs": {
|
|
412
|
-
"tags": [
|
|
413
|
-
|
|
254
|
+
"tags": [{
|
|
255
|
+
"name": "param",
|
|
256
|
+
"text": "item - The data item to render."
|
|
257
|
+
}, {
|
|
258
|
+
"name": "param",
|
|
259
|
+
"text": "index - The index of the item."
|
|
260
|
+
}, {
|
|
261
|
+
"name": "returns",
|
|
262
|
+
"text": "The VNode for the item."
|
|
263
|
+
}],
|
|
264
|
+
"text": "A function that renders a single item in the list."
|
|
414
265
|
}
|
|
415
266
|
},
|
|
416
267
|
"renderSkeleton": {
|
|
@@ -424,8 +275,14 @@ export class LotteryInfiniteScroll {
|
|
|
424
275
|
"required": false,
|
|
425
276
|
"optional": false,
|
|
426
277
|
"docs": {
|
|
427
|
-
"tags": [
|
|
428
|
-
|
|
278
|
+
"tags": [{
|
|
279
|
+
"name": "param",
|
|
280
|
+
"text": "index - The index of the skeleton item."
|
|
281
|
+
}, {
|
|
282
|
+
"name": "returns",
|
|
283
|
+
"text": "The VNode for the skeleton item."
|
|
284
|
+
}],
|
|
285
|
+
"text": "A function that renders a skeleton item for initial loading or when no data is available."
|
|
429
286
|
}
|
|
430
287
|
},
|
|
431
288
|
"skeletonCount": {
|
|
@@ -439,8 +296,11 @@ export class LotteryInfiniteScroll {
|
|
|
439
296
|
"required": false,
|
|
440
297
|
"optional": false,
|
|
441
298
|
"docs": {
|
|
442
|
-
"tags": [
|
|
443
|
-
|
|
299
|
+
"tags": [{
|
|
300
|
+
"name": "default",
|
|
301
|
+
"text": "6"
|
|
302
|
+
}],
|
|
303
|
+
"text": "The number of skeleton items to display during initial loading."
|
|
444
304
|
},
|
|
445
305
|
"attribute": "skeleton-count",
|
|
446
306
|
"reflect": false,
|
|
@@ -457,8 +317,11 @@ export class LotteryInfiniteScroll {
|
|
|
457
317
|
"required": false,
|
|
458
318
|
"optional": false,
|
|
459
319
|
"docs": {
|
|
460
|
-
"tags": [
|
|
461
|
-
|
|
320
|
+
"tags": [{
|
|
321
|
+
"name": "default",
|
|
322
|
+
"text": "60"
|
|
323
|
+
}],
|
|
324
|
+
"text": "The distance (in pixels) the user needs to pull down to trigger a refresh."
|
|
462
325
|
},
|
|
463
326
|
"attribute": "pull-trigger-distance",
|
|
464
327
|
"reflect": false,
|
|
@@ -475,8 +338,11 @@ export class LotteryInfiniteScroll {
|
|
|
475
338
|
"required": false,
|
|
476
339
|
"optional": false,
|
|
477
340
|
"docs": {
|
|
478
|
-
"tags": [
|
|
479
|
-
|
|
341
|
+
"tags": [{
|
|
342
|
+
"name": "default",
|
|
343
|
+
"text": "340"
|
|
344
|
+
}],
|
|
345
|
+
"text": "For Grid layout: The minimum width (in pixels) for each item.\nUsed with CSS Grid's `auto-fill` to determine column count."
|
|
480
346
|
},
|
|
481
347
|
"attribute": "min-item-width",
|
|
482
348
|
"reflect": false,
|
|
@@ -493,8 +359,11 @@ export class LotteryInfiniteScroll {
|
|
|
493
359
|
"required": false,
|
|
494
360
|
"optional": false,
|
|
495
361
|
"docs": {
|
|
496
|
-
"tags": [
|
|
497
|
-
|
|
362
|
+
"tags": [{
|
|
363
|
+
"name": "default",
|
|
364
|
+
"text": "10"
|
|
365
|
+
}],
|
|
366
|
+
"text": "For Grid layout: The gap (in pixels) between grid items."
|
|
498
367
|
},
|
|
499
368
|
"attribute": "grid-gap",
|
|
500
369
|
"reflect": false,
|
|
@@ -504,10 +373,7 @@ export class LotteryInfiniteScroll {
|
|
|
504
373
|
}
|
|
505
374
|
static get states() {
|
|
506
375
|
return {
|
|
507
|
-
"
|
|
508
|
-
"visibleEndIndex": {},
|
|
509
|
-
"pullDistance": {},
|
|
510
|
-
"columns": {}
|
|
376
|
+
"pullDistance": {}
|
|
511
377
|
};
|
|
512
378
|
}
|
|
513
379
|
static get events() {
|
|
@@ -519,7 +385,7 @@ export class LotteryInfiniteScroll {
|
|
|
519
385
|
"composed": true,
|
|
520
386
|
"docs": {
|
|
521
387
|
"tags": [],
|
|
522
|
-
"text": "Emitted when the user scrolls near the
|
|
388
|
+
"text": "Emitted when the user scrolls near the bottom of the list,\nindicating that more data should be loaded."
|
|
523
389
|
},
|
|
524
390
|
"complexType": {
|
|
525
391
|
"original": "void",
|
|
@@ -534,7 +400,7 @@ export class LotteryInfiniteScroll {
|
|
|
534
400
|
"composed": true,
|
|
535
401
|
"docs": {
|
|
536
402
|
"tags": [],
|
|
537
|
-
"text": "Emitted when the pull-to-refresh action
|
|
403
|
+
"text": "Emitted when the user performs a pull-to-refresh action."
|
|
538
404
|
},
|
|
539
405
|
"complexType": {
|
|
540
406
|
"original": "void",
|
|
@@ -546,9 +412,6 @@ export class LotteryInfiniteScroll {
|
|
|
546
412
|
static get elementRef() { return "el"; }
|
|
547
413
|
static get watchers() {
|
|
548
414
|
return [{
|
|
549
|
-
"propName": "items",
|
|
550
|
-
"methodName": "handleItemsChange"
|
|
551
|
-
}, {
|
|
552
415
|
"propName": "isRefreshing",
|
|
553
416
|
"methodName": "handleRefreshingChange"
|
|
554
417
|
}];
|
package/dist/esm/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { L as LotteryHakunaTicketHistory } from './lottery-hakuna-ticket-history-
|
|
1
|
+
export { L as LotteryHakunaTicketHistory } from './lottery-hakuna-ticket-history-4cb107bf.js';
|
|
2
2
|
import './index-50addd47.js';
|
package/dist/esm/loader.js
CHANGED
|
@@ -5,7 +5,7 @@ import { g as globalScripts } from './app-globals-0f993ce5.js';
|
|
|
5
5
|
const defineCustomElements = async (win, options) => {
|
|
6
6
|
if (typeof window === 'undefined') return undefined;
|
|
7
7
|
await globalScripts();
|
|
8
|
-
return bootstrapLazy([["lottery-button_8",[[1,"lottery-hakuna-ticket-history",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"language":[513],"translationUrl":[513,"translation-url"],"endpoint":[513],"gameId":[513,"game-id"],"playerId":[514,"player-id"],"sessionId":[513,"session-id"],"scrollThreshold":[1,"scroll-threshold"],"
|
|
8
|
+
return bootstrapLazy([["lottery-button_8",[[1,"lottery-hakuna-ticket-history",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"language":[513],"translationUrl":[513,"translation-url"],"endpoint":[513],"gameId":[513,"game-id"],"playerId":[514,"player-id"],"sessionId":[513,"session-id"],"scrollThreshold":[1,"scroll-threshold"],"scrollContainerHeight":[2,"scroll-container-height"],"ticketHistoryTitle":[1,"ticket-history-title"],"ticketHistoryItemImageSrc":[1,"ticket-history-item-image-src"],"ticketHistoryItemName":[1,"ticket-history-item-name"],"ticketHistoryItemCurrency":[1,"ticket-history-item-currency"],"listLoadingText":[1,"list-loading-text"],"listRefreshingText":[1,"list-refreshing-text"],"listEndText":[1,"list-end-text"],"limit":[2],"minItemWidth":[2,"min-item-width"],"showSkeleton":[4,"show-skeleton"],"visibleTickets":[32],"hasMore":[32],"isLoading":[32],"isRefreshing":[32],"errorMessage":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}],[1,"lottery-hakuna-ticket-history-item",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"language":[513],"translationUrl":[513,"translation-url"],"historyItemName":[1,"history-item-name"],"historyItemImageSrc":[1,"history-item-image-src"],"ticketId":[8,"ticket-id"],"totalAmount":[1,"total-amount"],"date":[1],"time":[1],"selectedNumbers":[1,"selected-numbers"],"showSkeleton":[4,"show-skeleton"],"selectedNumbersCount":[2,"selected-numbers-count"]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}],[1,"lottery-infinite-scroll",{"items":[16],"hasMore":[4,"has-more"],"isLoading":[4,"is-loading"],"isRefreshing":[4,"is-refreshing"],"threshold":[1],"containerHeight":[1,"container-height"],"renderItem":[16],"renderSkeleton":[16],"skeletonCount":[2,"skeleton-count"],"pullTriggerDistance":[2,"pull-trigger-distance"],"minItemWidth":[2,"min-item-width"],"gridGap":[2,"grid-gap"],"pullDistance":[32]},null,{"isRefreshing":["handleRefreshingChange"]}],[1,"lottery-selection-group",{"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"language":[513],"translationUrl":[513,"translation-url"],"splitToken":[513,"split-token"],"selectionGroupId":[513,"selection-group-id"],"selectionGroupLabel":[513,"selection-group-label"],"type":[513],"selectedBulletTexts":[513,"selected-bullet-texts"],"maxSelectedCount":[514,"max-selected-count"],"maxDisplayBulletsCount":[514,"max-display-bullets-count"],"bulletTexts":[513,"bullet-texts"],"maxIntegerBulletText":[514,"max-integer-bullet-text"],"minIntegerBulletText":[514,"min-integer-bullet-text"],"bulletTextType":[513,"bullet-text-type"],"hasBorder":[516,"has-border"],"hasBackground":[516,"has-background"],"dialogTitle":[513,"dialog-title"],"dialogInputPlaceholder":[513,"dialog-input-placeholder"],"dialogConfig":[32],"inputInfo":[32]},[[0,"lotteryBulletClick","lotteryBulletClickHandler"]],{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}],[0,"ui-skeleton",{"structure":[1],"width":[1],"height":[1],"borderRadius":[8,"border-radius"],"marginBottom":[8,"margin-bottom"],"marginTop":[8,"margin-top"],"marginLeft":[8,"margin-left"],"marginRight":[8,"margin-right"],"animation":[4],"rows":[2],"size":[1]},null,{"structure":["handleStructureChange"]}],[1,"lottery-button",{"variant":[513],"size":[513],"color":[513],"disabled":[516],"loading":[516],"text":[513],"mbSource":[513,"mb-source"],"language":[513],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"translationUrl":[513,"translation-url"],"ripples":[32]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}],[1,"lottery-selection",{"value":[520],"text":[513],"idx":[514],"type":[513],"mbSource":[513,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"hasBorder":[516,"has-border"],"hasBackground":[516,"has-background"],"deleteIconSvg":[513,"delete-icon-svg"],"deleteIconWidth":[513,"delete-icon-width"],"deleteIconHeight":[513,"delete-icon-height"]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}],[1,"lottery-tipping-dialog",{"mbSource":[1,"mb-source"],"clientStyling":[513,"client-styling"],"clientStylingUrl":[513,"client-styling-url"],"visible":[516],"dialogTitle":[1,"dialog-title"],"width":[1],"closable":[4],"mask":[4],"maskClosable":[4,"mask-closable"],"animationDuration":[2,"animation-duration"],"fullscreen":[4],"showFooter":[4,"show-footer"],"showCancelBtn":[4,"show-cancel-btn"],"language":[513],"translationUrl":[520,"translation-url"],"dialogClass":[1,"dialog-class"],"dialogStyle":[16]},null,{"clientStyling":["handleClientStylingChange"],"clientStylingUrl":["handleClientStylingUrlChange"],"mbSource":["handleMbSourceChange"]}]]]], options);
|
|
9
9
|
};
|
|
10
10
|
|
|
11
11
|
export { defineCustomElements };
|