pome-ui 2.0.0-preview52 → 2.0.0-preview53
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 +1 -1
- package/pome-ui.dev.js +46 -12
- package/pome-ui.dev.min.js +15 -15
- package/pome-ui.js +46 -12
- package/pome-ui.min.js +3 -3
package/package.json
CHANGED
package/pome-ui.dev.js
CHANGED
|
@@ -19598,27 +19598,59 @@ function build(options, exports) {
|
|
|
19598
19598
|
this.createdPromise = ret;
|
|
19599
19599
|
if (options.skeleton) {
|
|
19600
19600
|
var self = this;
|
|
19601
|
-
|
|
19602
|
-
|
|
19603
|
-
if
|
|
19604
|
-
|
|
19605
|
-
|
|
19601
|
+
var skeletonShowing = false;
|
|
19602
|
+
var resolved = false;
|
|
19603
|
+
// Only activate the skeleton if the promise is still pending
|
|
19604
|
+
// after skeletonDelay ms. If it resolves faster, skip the
|
|
19605
|
+
// skeleton entirely to avoid a flash.
|
|
19606
|
+
var skeletonDelay = typeof options.skeletonDelay === 'number'
|
|
19607
|
+
? options.skeletonDelay : 1000;
|
|
19608
|
+
var skeletonTimer = setTimeout(function () {
|
|
19609
|
+
if (resolved) return;
|
|
19610
|
+
skeletonShowing = true;
|
|
19611
|
+
self.pomeSkeletonLoading = true;
|
|
19612
|
+
// Skeleton is now visible. If delayOpen is also set, kick
|
|
19613
|
+
// off its animation so it's primed when skeleton disappears.
|
|
19614
|
+
if (options.delayOpen) {
|
|
19615
|
+
self.$nextTick(function () {
|
|
19606
19616
|
requestAnimationFrame(function () {
|
|
19607
|
-
|
|
19617
|
+
requestAnimationFrame(function () {
|
|
19618
|
+
self.pomeDelayOpening = false;
|
|
19619
|
+
});
|
|
19608
19620
|
});
|
|
19621
|
+
setTimeout(function () {
|
|
19622
|
+
self.pomeDelayOpened = false;
|
|
19623
|
+
}, options.delayOpen);
|
|
19609
19624
|
});
|
|
19610
|
-
|
|
19611
|
-
|
|
19612
|
-
}, options.delayOpen);
|
|
19613
|
-
});
|
|
19614
|
-
}
|
|
19625
|
+
}
|
|
19626
|
+
}, skeletonDelay);
|
|
19615
19627
|
ret.then(function () {
|
|
19628
|
+
resolved = true;
|
|
19629
|
+
clearTimeout(skeletonTimer);
|
|
19616
19630
|
self.pomeSkeletonLoading = false;
|
|
19631
|
+
// Fast path: resolved before skeleton appeared – still need
|
|
19632
|
+
// to run the delayOpen animation now.
|
|
19633
|
+
if (!skeletonShowing && options.delayOpen) {
|
|
19634
|
+
self.$nextTick(function () {
|
|
19635
|
+
requestAnimationFrame(function () {
|
|
19636
|
+
requestAnimationFrame(function () {
|
|
19637
|
+
self.pomeDelayOpening = false;
|
|
19638
|
+
});
|
|
19639
|
+
});
|
|
19640
|
+
setTimeout(function () {
|
|
19641
|
+
self.pomeDelayOpened = false;
|
|
19642
|
+
}, options.delayOpen);
|
|
19643
|
+
});
|
|
19644
|
+
}
|
|
19617
19645
|
}).catch(function (err) {
|
|
19646
|
+
resolved = true;
|
|
19647
|
+
clearTimeout(skeletonTimer);
|
|
19648
|
+
self.pomeSkeletonLoading = false;
|
|
19618
19649
|
console.error('[SKELETON] created Promise REJECTED:', err);
|
|
19619
19650
|
});
|
|
19620
19651
|
}
|
|
19621
19652
|
} else if (options.skeleton) {
|
|
19653
|
+
// Sync created – nothing to wait for, ensure skeleton is off.
|
|
19622
19654
|
this.pomeSkeletonLoading = false;
|
|
19623
19655
|
}
|
|
19624
19656
|
|
|
@@ -20130,7 +20162,9 @@ function build(options, exports) {
|
|
|
20130
20162
|
var data = func1.call(this, app);
|
|
20131
20163
|
var data2 = { pomeUiSubTitles: [] };
|
|
20132
20164
|
if (opt.skeleton) {
|
|
20133
|
-
|
|
20165
|
+
// Start hidden; skeleton is only shown after skeletonDelay ms
|
|
20166
|
+
// to avoid a flash when loading completes quickly.
|
|
20167
|
+
data2.pomeSkeletonLoading = false;
|
|
20134
20168
|
}
|
|
20135
20169
|
if (opt.skeleton && opt.delayOpen) {
|
|
20136
20170
|
data2.pomeDelayOpened = true;
|