@kizmann/nano-ui 0.8.27 → 0.8.28
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/nano-ui.css +1 -1
- package/dist/nano-ui.js +1 -1
- package/dist/nano-ui.js.map +1 -1
- package/package.json +1 -1
- package/src/config/src/config/config-next.js +16 -10
- package/src/preview/src/preview-image/preview-image.js +3 -3
- package/src/scrollbar/src/scrollbar/scrollbar.next.js +68 -48
- package/src/scrollbar/src/scrollbar/scrollbar.scss +10 -2
package/package.json
CHANGED
|
@@ -279,27 +279,33 @@ export default {
|
|
|
279
279
|
value.fallback);
|
|
280
280
|
});
|
|
281
281
|
|
|
282
|
-
let
|
|
282
|
+
let component = alias.replace(/:.*?$/, '');
|
|
283
283
|
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
try {
|
|
287
|
-
component = resolveComponent(element);
|
|
288
|
-
} catch (e) {
|
|
289
|
-
component = element;
|
|
284
|
+
if ( !Arr.has(['div', 'p'], component) ) {
|
|
285
|
+
component = resolveComponent(component);
|
|
290
286
|
}
|
|
291
287
|
|
|
292
288
|
if ( Any.isEmpty(component) ) {
|
|
293
289
|
return null;
|
|
294
290
|
}
|
|
295
291
|
|
|
296
|
-
if ( !
|
|
292
|
+
if ( !this.propExists(setup['vShow']) ) {
|
|
297
293
|
props.style = "display: none;";
|
|
298
294
|
}
|
|
299
295
|
|
|
300
|
-
|
|
301
|
-
return
|
|
296
|
+
let render = () => Arr.each(setup.content, (value, key) => {
|
|
297
|
+
return this.ctor('renderSetup')(value, key)
|
|
302
298
|
});
|
|
299
|
+
|
|
300
|
+
if ( Any.isFunction(setup.content) ) {
|
|
301
|
+
render = setup.content.apply(this.scope);
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
if ( Any.isString(setup.content) ) {
|
|
305
|
+
render = setup.content;
|
|
306
|
+
}
|
|
307
|
+
|
|
308
|
+
return h(component, props, render);
|
|
303
309
|
},
|
|
304
310
|
|
|
305
311
|
render()
|
|
@@ -87,9 +87,9 @@ export default {
|
|
|
87
87
|
'n-preview-image'
|
|
88
88
|
];
|
|
89
89
|
|
|
90
|
-
if ( Arr.has(window.ImageCache, this.src) ) {
|
|
91
|
-
|
|
92
|
-
}
|
|
90
|
+
// if ( Arr.has(window.ImageCache, this.src) ) {
|
|
91
|
+
// classList.push('n-cached');
|
|
92
|
+
// }
|
|
93
93
|
|
|
94
94
|
if ( ! this.load ) {
|
|
95
95
|
classList.push('n-ready');
|
|
@@ -97,7 +97,7 @@ export default {
|
|
|
97
97
|
computed: {
|
|
98
98
|
|
|
99
99
|
touch() {
|
|
100
|
-
return !! ('ontouchstart' in window ||
|
|
100
|
+
return !! ('ontouchstart' in window ||
|
|
101
101
|
navigator.msMaxTouchPoints);
|
|
102
102
|
},
|
|
103
103
|
|
|
@@ -145,10 +145,10 @@ export default {
|
|
|
145
145
|
Event.bind('NResizer:moved',
|
|
146
146
|
this.onUpdate, this._.uid);
|
|
147
147
|
|
|
148
|
-
Dom.find(window).on('resize',
|
|
148
|
+
Dom.find(window).on('resize',
|
|
149
149
|
this.onResize, passive);
|
|
150
|
-
|
|
151
|
-
Dom.find(this.$refs.content).on('scroll',
|
|
150
|
+
|
|
151
|
+
Dom.find(this.$refs.content).on('scroll',
|
|
152
152
|
this.onScroll, passive);
|
|
153
153
|
},
|
|
154
154
|
|
|
@@ -168,16 +168,16 @@ export default {
|
|
|
168
168
|
passive: true, uid: this._.uid
|
|
169
169
|
};
|
|
170
170
|
|
|
171
|
-
Event.unbind('NScrollbar:resize',
|
|
171
|
+
Event.unbind('NScrollbar:resize',
|
|
172
172
|
this._.uid);
|
|
173
173
|
|
|
174
|
-
Event.unbind('NResizer:moved',
|
|
174
|
+
Event.unbind('NResizer:moved',
|
|
175
175
|
this._.uid);
|
|
176
176
|
|
|
177
|
-
Dom.find(window).off('resize',
|
|
177
|
+
Dom.find(window).off('resize',
|
|
178
178
|
null, passive);
|
|
179
179
|
|
|
180
|
-
Dom.find(this.$el).off('scroll',
|
|
180
|
+
Dom.find(this.$el).off('scroll',
|
|
181
181
|
null, passive);
|
|
182
182
|
},
|
|
183
183
|
|
|
@@ -253,7 +253,7 @@ export default {
|
|
|
253
253
|
|
|
254
254
|
adaptScrollHeight()
|
|
255
255
|
{
|
|
256
|
-
if ( this.native ) {
|
|
256
|
+
if ( this.native && this.allowNative ) {
|
|
257
257
|
return;
|
|
258
258
|
}
|
|
259
259
|
|
|
@@ -264,7 +264,11 @@ export default {
|
|
|
264
264
|
// this.$refs.content.offsetWidth;
|
|
265
265
|
|
|
266
266
|
let outerHeight = this.$refs.content.
|
|
267
|
-
clientHeight|| 0;
|
|
267
|
+
clientHeight || 0;
|
|
268
|
+
|
|
269
|
+
if ( this.native && ! this.allowNative ) {
|
|
270
|
+
outerHeight -= 16;
|
|
271
|
+
}
|
|
268
272
|
|
|
269
273
|
// if ( offsetHeight === 0 && this.overflowX ) {
|
|
270
274
|
// outerHeight -= 15;
|
|
@@ -273,11 +277,15 @@ export default {
|
|
|
273
277
|
let innerHeight = this.$refs.content
|
|
274
278
|
.scrollHeight || 0;
|
|
275
279
|
|
|
280
|
+
if ( this.native && ! this.allowNative ) {
|
|
281
|
+
innerHeight -= 16;
|
|
282
|
+
}
|
|
283
|
+
|
|
276
284
|
// if ( offsetHeight === 0 && this.overflowX ) {
|
|
277
285
|
// innerHeight -= 15;
|
|
278
286
|
// }
|
|
279
287
|
|
|
280
|
-
let isSameOld = outerHeight === this.outerHeight &&
|
|
288
|
+
let isSameOld = outerHeight === this.outerHeight &&
|
|
281
289
|
innerHeight === this.innerHeight;
|
|
282
290
|
|
|
283
291
|
if ( isSameOld ) {
|
|
@@ -287,15 +295,15 @@ export default {
|
|
|
287
295
|
this.outerHeight = outerHeight;
|
|
288
296
|
this.innerHeight = innerHeight;
|
|
289
297
|
|
|
290
|
-
let height = (outerHeight / innerHeight)
|
|
298
|
+
let height = (outerHeight / innerHeight)
|
|
291
299
|
* outerHeight;
|
|
292
300
|
|
|
293
301
|
let barHeight = Math.max(height, 50);
|
|
294
302
|
|
|
295
|
-
let maxHeight = Math.ceil((outerHeight / innerHeight) *
|
|
303
|
+
let maxHeight = Math.ceil((outerHeight / innerHeight) *
|
|
296
304
|
(innerHeight - outerHeight));
|
|
297
|
-
|
|
298
|
-
this.heightRatio = (maxHeight - (barHeight - height)
|
|
305
|
+
|
|
306
|
+
this.heightRatio = (maxHeight - (barHeight - height)
|
|
299
307
|
- this.offsetY) / maxHeight;
|
|
300
308
|
|
|
301
309
|
Dom.find(this.$refs.vbar).css({
|
|
@@ -331,7 +339,7 @@ export default {
|
|
|
331
339
|
|
|
332
340
|
adaptScrollWidth()
|
|
333
341
|
{
|
|
334
|
-
if ( this.native ) {
|
|
342
|
+
if ( this.native && this.allowNative ) {
|
|
335
343
|
return;
|
|
336
344
|
}
|
|
337
345
|
|
|
@@ -343,7 +351,11 @@ export default {
|
|
|
343
351
|
|
|
344
352
|
let outerWidth = this.$refs.content.
|
|
345
353
|
clientWidth || 0;
|
|
346
|
-
|
|
354
|
+
|
|
355
|
+
if ( this.native && ! this.allowNative ) {
|
|
356
|
+
outerWidth -= 16;
|
|
357
|
+
}
|
|
358
|
+
|
|
347
359
|
// if ( offsetWidth === 0 && this.overflowY ) {
|
|
348
360
|
// outerWidth -= 15;
|
|
349
361
|
// }
|
|
@@ -351,11 +363,15 @@ export default {
|
|
|
351
363
|
let innerWidth = this.$refs.content
|
|
352
364
|
.scrollWidth || 0;
|
|
353
365
|
|
|
366
|
+
if ( this.native && ! this.allowNative ) {
|
|
367
|
+
innerWidth -= 16;
|
|
368
|
+
}
|
|
369
|
+
|
|
354
370
|
// if ( offsetWidth === 0 && this.overflowY ) {
|
|
355
371
|
// innerWidth -= 15;
|
|
356
372
|
// }
|
|
357
373
|
|
|
358
|
-
let isSameOld = outerWidth === this.outerWidth &&
|
|
374
|
+
let isSameOld = outerWidth === this.outerWidth &&
|
|
359
375
|
innerWidth === this.innerWidth;
|
|
360
376
|
|
|
361
377
|
if ( isSameOld ) {
|
|
@@ -365,15 +381,15 @@ export default {
|
|
|
365
381
|
this.outerWidth = outerWidth;
|
|
366
382
|
this.innerWidth = innerWidth;
|
|
367
383
|
|
|
368
|
-
let width = (outerWidth / innerWidth)
|
|
384
|
+
let width = (outerWidth / innerWidth)
|
|
369
385
|
* outerWidth;
|
|
370
386
|
|
|
371
387
|
let barWidth = Math.max(width, 50);
|
|
372
388
|
|
|
373
|
-
let maxWidth = Math.ceil((outerWidth / innerWidth) *
|
|
389
|
+
let maxWidth = Math.ceil((outerWidth / innerWidth) *
|
|
374
390
|
(innerWidth - outerWidth));
|
|
375
|
-
|
|
376
|
-
this.widthRatio = (maxWidth - (barWidth - width)
|
|
391
|
+
|
|
392
|
+
this.widthRatio = (maxWidth - (barWidth - width)
|
|
377
393
|
- this.offsetX) / maxWidth;
|
|
378
394
|
|
|
379
395
|
Dom.find(this.$refs.hbar).css({
|
|
@@ -381,7 +397,7 @@ export default {
|
|
|
381
397
|
});
|
|
382
398
|
|
|
383
399
|
// let hasNativeBar = offsetHeight && this.overflowX;
|
|
384
|
-
|
|
400
|
+
|
|
385
401
|
// if ( hasNativeBar ) {
|
|
386
402
|
// Dom.find(this.$el).addClass('has-native-hbar');
|
|
387
403
|
// }
|
|
@@ -409,7 +425,7 @@ export default {
|
|
|
409
425
|
|
|
410
426
|
adaptScrollPosition(scroll = {})
|
|
411
427
|
{
|
|
412
|
-
if ( this.native ) {
|
|
428
|
+
if ( this.native && this.allowNative ) {
|
|
413
429
|
return;
|
|
414
430
|
}
|
|
415
431
|
|
|
@@ -421,7 +437,7 @@ export default {
|
|
|
421
437
|
scroll.left = this.$refs.content.scrollLeft;
|
|
422
438
|
}
|
|
423
439
|
|
|
424
|
-
let vbarTop= Math.ceil((this.outerHeight / this.innerHeight) *
|
|
440
|
+
let vbarTop= Math.ceil((this.outerHeight / this.innerHeight) *
|
|
425
441
|
scroll.top * this.heightRatio) || 0;
|
|
426
442
|
|
|
427
443
|
if ( ! this.vbarTop || vbarTop !== this.vbarTop ) {
|
|
@@ -433,7 +449,7 @@ export default {
|
|
|
433
449
|
this.vbarTop = vbarTop;
|
|
434
450
|
}
|
|
435
451
|
|
|
436
|
-
let hbarLeft = Math.ceil((this.outerWidth / this.innerWidth) *
|
|
452
|
+
let hbarLeft = Math.ceil((this.outerWidth / this.innerWidth) *
|
|
437
453
|
scroll.left * this.widthRatio) || 0;
|
|
438
454
|
|
|
439
455
|
if ( ! this.hbarLeft || hbarLeft !== this.hbarLeft ) {
|
|
@@ -441,7 +457,7 @@ export default {
|
|
|
441
457
|
Dom.find(this.$refs.hbar).css({
|
|
442
458
|
transform: `translateX(${hbarLeft}px) translateZ(0)`
|
|
443
459
|
});
|
|
444
|
-
|
|
460
|
+
|
|
445
461
|
this.hbarLeft = hbarLeft;
|
|
446
462
|
}
|
|
447
463
|
},
|
|
@@ -489,7 +505,7 @@ export default {
|
|
|
489
505
|
|
|
490
506
|
bindAdaptHeight()
|
|
491
507
|
{
|
|
492
|
-
this.refreshHeight = setInterval(this.adaptHeight,
|
|
508
|
+
this.refreshHeight = setInterval(this.adaptHeight,
|
|
493
509
|
1000 / this.framerate);
|
|
494
510
|
},
|
|
495
511
|
|
|
@@ -539,7 +555,7 @@ export default {
|
|
|
539
555
|
|
|
540
556
|
bindAdaptWidth()
|
|
541
557
|
{
|
|
542
|
-
this.refreshWidth = setInterval(this.adaptWidth,
|
|
558
|
+
this.refreshWidth = setInterval(this.adaptWidth,
|
|
543
559
|
1000 / this.framerate);
|
|
544
560
|
},
|
|
545
561
|
|
|
@@ -558,7 +574,7 @@ export default {
|
|
|
558
574
|
let scrollUpdate = () => {
|
|
559
575
|
this.$emit('scrollupdate', scroll.top, scroll.left);
|
|
560
576
|
}
|
|
561
|
-
|
|
577
|
+
|
|
562
578
|
this.$nextTick(scrollUpdate);
|
|
563
579
|
this.adaptScrollPosition(scroll);
|
|
564
580
|
},
|
|
@@ -592,7 +608,7 @@ export default {
|
|
|
592
608
|
|
|
593
609
|
this.resizeTimer = setTimeout(
|
|
594
610
|
this.onUpdate, 500);
|
|
595
|
-
|
|
611
|
+
|
|
596
612
|
Dom.find(this.$el).fire('resized');
|
|
597
613
|
},
|
|
598
614
|
|
|
@@ -641,10 +657,10 @@ export default {
|
|
|
641
657
|
|
|
642
658
|
event.stopPropagation();
|
|
643
659
|
|
|
644
|
-
Dom.find(document).on(this.mousemove,
|
|
660
|
+
Dom.find(document).on(this.mousemove,
|
|
645
661
|
this.onVbarMousemove, this._.uid);
|
|
646
662
|
|
|
647
|
-
Dom.find(document).on(this.mouseup,
|
|
663
|
+
Dom.find(document).on(this.mouseup,
|
|
648
664
|
this.onVbarMouseup, this._.uid);
|
|
649
665
|
|
|
650
666
|
this.scrollTop = this.$refs.content
|
|
@@ -659,24 +675,24 @@ export default {
|
|
|
659
675
|
let clientY = this.getTouchEvent(event)
|
|
660
676
|
.clientY;
|
|
661
677
|
|
|
662
|
-
let top = (this.outerHeight / this.innerHeight) *
|
|
678
|
+
let top = (this.outerHeight / this.innerHeight) *
|
|
663
679
|
this.scrollTop * this.heightRatio;
|
|
664
680
|
|
|
665
681
|
let offset = (clientY - this.clientY) + top;
|
|
666
682
|
|
|
667
|
-
let height = (this.outerHeight -
|
|
668
|
-
|
|
683
|
+
let height = (this.outerHeight -
|
|
684
|
+
this.barHeight - this.offsetY);
|
|
669
685
|
|
|
670
|
-
this.$refs.content.scrollTop = offset / height *
|
|
686
|
+
this.$refs.content.scrollTop = offset / height *
|
|
671
687
|
(this.innerHeight - this.outerHeight);
|
|
672
688
|
},
|
|
673
689
|
|
|
674
690
|
onVbarMouseup(event)
|
|
675
691
|
{
|
|
676
|
-
Dom.find(document).off(this.mousemove,
|
|
692
|
+
Dom.find(document).off(this.mousemove,
|
|
677
693
|
null, this._.uid);
|
|
678
694
|
|
|
679
|
-
Dom.find(document).off(this.mouseup,
|
|
695
|
+
Dom.find(document).off(this.mouseup,
|
|
680
696
|
null, this._.uid);
|
|
681
697
|
},
|
|
682
698
|
|
|
@@ -685,13 +701,13 @@ export default {
|
|
|
685
701
|
if ( ! Arr.has([0, 1], event.which) ) {
|
|
686
702
|
return;
|
|
687
703
|
}
|
|
688
|
-
|
|
704
|
+
|
|
689
705
|
event.stopPropagation();
|
|
690
706
|
|
|
691
|
-
Dom.find(document).on(this.mousemove,
|
|
707
|
+
Dom.find(document).on(this.mousemove,
|
|
692
708
|
this.onHbarMousemove, this._.uid);
|
|
693
709
|
|
|
694
|
-
Dom.find(document).on(this.mouseup,
|
|
710
|
+
Dom.find(document).on(this.mouseup,
|
|
695
711
|
this.onHbarMouseup, this._.uid);
|
|
696
712
|
|
|
697
713
|
this.scrollLeft = this.$refs.content
|
|
@@ -702,24 +718,24 @@ export default {
|
|
|
702
718
|
|
|
703
719
|
onHbarMousemove(event)
|
|
704
720
|
{
|
|
705
|
-
let top = (this.outerWidth / this.innerWidth) *
|
|
721
|
+
let top = (this.outerWidth / this.innerWidth) *
|
|
706
722
|
this.scrollLeft * this.widthRatio;
|
|
707
723
|
|
|
708
724
|
let offset = (event.clientX - this.clientX) + top;
|
|
709
725
|
|
|
710
|
-
let width = (this.outerWidth -
|
|
711
|
-
|
|
726
|
+
let width = (this.outerWidth -
|
|
727
|
+
this.barWidth - this.offsetX);
|
|
712
728
|
|
|
713
|
-
this.$refs.content.scrollLeft = offset / width *
|
|
729
|
+
this.$refs.content.scrollLeft = offset / width *
|
|
714
730
|
(this.innerWidth - this.outerWidth);
|
|
715
731
|
},
|
|
716
732
|
|
|
717
733
|
onHbarMouseup(event)
|
|
718
734
|
{
|
|
719
|
-
Dom.find(document).off(this.mousemove,
|
|
735
|
+
Dom.find(document).off(this.mousemove,
|
|
720
736
|
null, this._.uid);
|
|
721
737
|
|
|
722
|
-
Dom.find(document).off(this.mouseup,
|
|
738
|
+
Dom.find(document).off(this.mouseup,
|
|
723
739
|
null, this._.uid);
|
|
724
740
|
}
|
|
725
741
|
|
|
@@ -735,6 +751,10 @@ export default {
|
|
|
735
751
|
classList.push('n-scrollbar--native');
|
|
736
752
|
}
|
|
737
753
|
|
|
754
|
+
if ( ! this.allowNative ) {
|
|
755
|
+
classList.push('n-scrollbar--forced');
|
|
756
|
+
}
|
|
757
|
+
|
|
738
758
|
if ( this.touch ) {
|
|
739
759
|
classList.push('n-scrollbar--touch');
|
|
740
760
|
}
|
|
@@ -38,6 +38,13 @@
|
|
|
38
38
|
bottom: -17px;
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
+
.n-scrollbar.n-scrollbar--forced.n-scrollbar--native > .n-scrollbar-content {
|
|
42
|
+
padding-right: 16px;
|
|
43
|
+
padding-bottom: 16px;
|
|
44
|
+
right: -16px;
|
|
45
|
+
bottom: -16px;
|
|
46
|
+
}
|
|
47
|
+
|
|
41
48
|
.n-scrollbar:not(.n-overflow-x) > .n-scrollbar-content {
|
|
42
49
|
bottom: 0;
|
|
43
50
|
overflow-x: hidden;
|
|
@@ -66,15 +73,16 @@
|
|
|
66
73
|
width: 10px;
|
|
67
74
|
}
|
|
68
75
|
|
|
76
|
+
|
|
69
77
|
.n-scrollbar-h {
|
|
70
78
|
left: 0;
|
|
71
79
|
bottom: 0;
|
|
72
80
|
height: 10px;
|
|
73
81
|
}
|
|
74
82
|
|
|
75
|
-
.n-scrollbar--native > .n-scrollbar-v,
|
|
83
|
+
.n-scrollbar--native:not(.n-scrollbar--forced) > .n-scrollbar-v,
|
|
76
84
|
.n-scrollbar:not(.has-vtrack) > .n-scrollbar-v,
|
|
77
|
-
.n-scrollbar--native > .n-scrollbar-h,
|
|
85
|
+
.n-scrollbar--native:not(.n-scrollbar--forced) > .n-scrollbar-h,
|
|
78
86
|
.n-scrollbar:not(.has-htrack) > .n-scrollbar-h {
|
|
79
87
|
display: none;
|
|
80
88
|
}
|