@xenknight/framework7 0.0.8 → 0.0.9
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/components/navbar-new/navbar-ios.less +135 -135
- package/components/navbar-new/navbar-md.less +105 -105
- package/components/navbar-new/navbar-vars.less +78 -78
- package/components/navbar-new/navbar.d.ts +77 -77
- package/components/navbar-new/navbar.less +268 -268
- package/components/page/page.less +4 -2
- package/components/searchbar-new/searchbar-ios.less +131 -131
- package/components/searchbar-new/searchbar-md.less +154 -153
- package/components/searchbar-new/searchbar-new-class.js +32 -20
- package/components/searchbar-new/searchbar-vars.less +75 -75
- package/components/searchbar-new/searchbar.less +336 -331
- package/components/subnavbar-new/subnavbar-new-ios.less +67 -0
- package/components/subnavbar-new/subnavbar-new-md.less +48 -0
- package/components/subnavbar-new/subnavbar-new-vars.less +42 -0
- package/components/subnavbar-new/subnavbar-new.d.ts +12 -0
- package/components/subnavbar-new/subnavbar-new.js +20 -0
- package/components/subnavbar-new/subnavbar-new.less +151 -0
- package/components/toolbar-new/tabbar-highlight.js +29 -9
- package/components/toolbar-new/toolbar-ios.less +193 -193
- package/components/toolbar-new/toolbar-md.less +152 -152
- package/components/toolbar-new/toolbar-vars.less +77 -77
- package/components/toolbar-new/toolbar.less +261 -261
- package/framework7-bundle-rtl.css +260 -9
- package/framework7-bundle-rtl.min.css +5 -5
- package/framework7-bundle.css +260 -9
- package/framework7-bundle.esm.js +5 -3
- package/framework7-bundle.js +84 -32
- package/framework7-bundle.js.map +1 -1
- package/framework7-bundle.less +3 -2
- package/framework7-bundle.min.css +5 -5
- package/framework7-bundle.min.js +3 -3
- package/framework7-bundle.min.js.map +1 -1
- package/framework7-lite-bundle.esm.js +5 -3
- package/framework7-lite.esm.js +5 -3
- package/framework7-lite.js +3 -1
- package/framework7-rtl.css +260 -9
- package/framework7-rtl.min.css +5 -5
- package/framework7-types.d.ts +5 -1
- package/framework7.css +260 -9
- package/framework7.d.ts +4 -0
- package/framework7.esm.js +5 -3
- package/framework7.js +3 -1
- package/framework7.less +3 -2
- package/framework7.min.css +5 -5
- package/package.json +1 -1
|
@@ -103,8 +103,18 @@ class SearchbarNew extends FrameworkClass {
|
|
|
103
103
|
$backdropEl = $('<div class="searchbar-new-backdrop"></div>');
|
|
104
104
|
if ($pageEl && $pageEl.length) {
|
|
105
105
|
if ($el.parents($pageEl).length > 0 && $navbarEl && $el.parents($navbarEl).length === 0) {
|
|
106
|
+
// Searchbar is in page but not in navbar - insert before searchbar
|
|
106
107
|
$backdropEl.insertBefore($el);
|
|
108
|
+
} else if ($navbarEl && $navbarEl.length > 0) {
|
|
109
|
+
// Searchbar is in navbar - insert after navbar, before page-content
|
|
110
|
+
const $pageContent = $pageEl.find('.page-content').eq(0);
|
|
111
|
+
if ($pageContent.length) {
|
|
112
|
+
$backdropEl.insertBefore($pageContent);
|
|
113
|
+
} else {
|
|
114
|
+
$navbarEl.after($backdropEl);
|
|
115
|
+
}
|
|
107
116
|
} else {
|
|
117
|
+
// Default: insert before page-content
|
|
108
118
|
$backdropEl.insertBefore($pageEl.find('.page-content').eq(0));
|
|
109
119
|
}
|
|
110
120
|
} else {
|
|
@@ -183,8 +193,8 @@ class SearchbarNew extends FrameworkClass {
|
|
|
183
193
|
}
|
|
184
194
|
}
|
|
185
195
|
function onInputClear(e, previousValue) {
|
|
186
|
-
sb.$el.trigger('searchbar
|
|
187
|
-
sb.emit('local::clear
|
|
196
|
+
sb.$el.trigger('searchbar:clear', previousValue);
|
|
197
|
+
sb.emit('local::clear searchbarClear', sb, previousValue);
|
|
188
198
|
}
|
|
189
199
|
function disableOnClick(e) {
|
|
190
200
|
sb.disable(e);
|
|
@@ -257,15 +267,16 @@ class SearchbarNew extends FrameworkClass {
|
|
|
257
267
|
}
|
|
258
268
|
const previousQuery = sb.value;
|
|
259
269
|
sb.$inputEl.val('').trigger('change').focus();
|
|
260
|
-
sb.$el.trigger('searchbar
|
|
261
|
-
sb.emit('local::clear
|
|
270
|
+
sb.$el.trigger('searchbar:clear', previousQuery);
|
|
271
|
+
sb.emit('local::clear searchbarClear', sb, previousQuery);
|
|
262
272
|
return sb;
|
|
263
273
|
}
|
|
264
274
|
setDisableButtonMargin() {
|
|
265
275
|
const sb = this;
|
|
266
276
|
if (sb.expandable) return;
|
|
267
277
|
const app = sb.app;
|
|
268
|
-
sb.$disableButtonEl.transition(0)
|
|
278
|
+
sb.$disableButtonEl.transition(0);
|
|
279
|
+
sb.$disableButtonEl.css('display', 'flex');
|
|
269
280
|
sb.$disableButtonEl.css(`margin-${app.rtl ? 'left' : 'right'}`, `${-sb.disableButtonEl.offsetWidth}px`);
|
|
270
281
|
/* eslint no-underscore-dangle: ["error", { "allow": ["_clientLeft"] }] */
|
|
271
282
|
sb._clientLeft = sb.$disableButtonEl[0].clientLeft;
|
|
@@ -317,8 +328,8 @@ class SearchbarNew extends FrameworkClass {
|
|
|
317
328
|
}
|
|
318
329
|
}
|
|
319
330
|
if (sb.$hideOnEnableEl) sb.$hideOnEnableEl.addClass('hidden-by-searchbar-new');
|
|
320
|
-
sb.$el.trigger('searchbar
|
|
321
|
-
sb.emit('local::enable
|
|
331
|
+
sb.$el.trigger('searchbar:enable');
|
|
332
|
+
sb.emit('local::enable searchbarEnable', sb);
|
|
322
333
|
}
|
|
323
334
|
let needsFocus = false;
|
|
324
335
|
if (setFocus === true) {
|
|
@@ -359,9 +370,10 @@ class SearchbarNew extends FrameworkClass {
|
|
|
359
370
|
if (sb.expandable) {
|
|
360
371
|
const $navbarEl = sb.$el.parents('.navbar-new');
|
|
361
372
|
const $pageContentEl = sb.$pageEl && sb.$pageEl.find('.page-content');
|
|
373
|
+
const $transitionTargetEl = app.theme === 'md' ? sb.$el : sb.$el.find('.searchbar-new-input-wrap');
|
|
362
374
|
if ($navbarEl.hasClass('navbar-new-large') && $pageContentEl.length) {
|
|
363
375
|
const $titleLargeEl = $navbarEl.find('.title-large');
|
|
364
|
-
|
|
376
|
+
$transitionTargetEl.transitionEnd(() => {
|
|
365
377
|
$pageContentEl.removeClass('with-searchbar-new-expandable-closing');
|
|
366
378
|
});
|
|
367
379
|
if ($navbarEl.hasClass('navbar-new-large') && $navbarEl.hasClass('navbar-new-large-collapsed') && $titleLargeEl.length) {
|
|
@@ -379,12 +391,12 @@ class SearchbarNew extends FrameworkClass {
|
|
|
379
391
|
}
|
|
380
392
|
if (app.theme === 'md' && $navbarEl.length) {
|
|
381
393
|
$navbarEl.removeClass('with-searchbar-new-expandable-enabled with-searchbar-new-expandable-enabled-no-transition').addClass('with-searchbar-new-expandable-closing');
|
|
382
|
-
|
|
394
|
+
$transitionTargetEl.transitionEnd(() => {
|
|
383
395
|
$navbarEl.removeClass('with-searchbar-new-expandable-closing');
|
|
384
396
|
});
|
|
385
397
|
} else {
|
|
386
398
|
$navbarEl.removeClass('with-searchbar-new-expandable-enabled with-searchbar-new-expandable-enabled-no-transition').addClass('with-searchbar-new-expandable-closing');
|
|
387
|
-
|
|
399
|
+
$transitionTargetEl.transitionEnd(() => {
|
|
388
400
|
$navbarEl.removeClass('with-searchbar-new-expandable-closing');
|
|
389
401
|
});
|
|
390
402
|
if (sb.$pageEl) {
|
|
@@ -401,8 +413,8 @@ class SearchbarNew extends FrameworkClass {
|
|
|
401
413
|
sb.enabled = false;
|
|
402
414
|
sb.$inputEl.blur();
|
|
403
415
|
if (sb.$hideOnEnableEl) sb.$hideOnEnableEl.removeClass('hidden-by-searchbar-new');
|
|
404
|
-
sb.$el.trigger('searchbar
|
|
405
|
-
sb.emit('local::disable
|
|
416
|
+
sb.$el.trigger('searchbar:disable');
|
|
417
|
+
sb.emit('local::disable searchbarDisable', sb);
|
|
406
418
|
return sb;
|
|
407
419
|
}
|
|
408
420
|
toggle() {
|
|
@@ -461,11 +473,11 @@ class SearchbarNew extends FrameworkClass {
|
|
|
461
473
|
}
|
|
462
474
|
}
|
|
463
475
|
if (sb.params.customSearch) {
|
|
464
|
-
$el.trigger('searchbar
|
|
476
|
+
$el.trigger('searchbar:search', {
|
|
465
477
|
query,
|
|
466
478
|
previousQuery: sb.previousQuery
|
|
467
479
|
});
|
|
468
|
-
sb.emit('local::search
|
|
480
|
+
sb.emit('local::search searchbarSearch', sb, query, sb.previousQuery);
|
|
469
481
|
return sb;
|
|
470
482
|
}
|
|
471
483
|
let foundItems = [];
|
|
@@ -476,11 +488,11 @@ class SearchbarNew extends FrameworkClass {
|
|
|
476
488
|
sb.virtualList.resetFilter();
|
|
477
489
|
if ($notFoundEl) $notFoundEl.hide();
|
|
478
490
|
if ($foundEl) $foundEl.show();
|
|
479
|
-
$el.trigger('searchbar
|
|
491
|
+
$el.trigger('searchbar:search', {
|
|
480
492
|
query,
|
|
481
493
|
previousQuery: sb.previousQuery
|
|
482
494
|
});
|
|
483
|
-
sb.emit('local::search
|
|
495
|
+
sb.emit('local::search searchbarSearch', sb, query, sb.previousQuery);
|
|
484
496
|
return sb;
|
|
485
497
|
}
|
|
486
498
|
vlQuery = sb.params.removeDiacritics ? removeDiacritics(query) : query;
|
|
@@ -563,12 +575,12 @@ class SearchbarNew extends FrameworkClass {
|
|
|
563
575
|
if (isVirtualList && sb.virtualList) {
|
|
564
576
|
sb.virtualList.filterItems(foundItems);
|
|
565
577
|
}
|
|
566
|
-
$el.trigger('searchbar
|
|
578
|
+
$el.trigger('searchbar:search', {
|
|
567
579
|
query,
|
|
568
580
|
previousQuery: sb.previousQuery,
|
|
569
581
|
foundItems
|
|
570
582
|
});
|
|
571
|
-
sb.emit('local::search
|
|
583
|
+
sb.emit('local::search searchbarSearch', sb, query, sb.previousQuery, foundItems);
|
|
572
584
|
return sb;
|
|
573
585
|
}
|
|
574
586
|
init() {
|
|
@@ -579,8 +591,8 @@ class SearchbarNew extends FrameworkClass {
|
|
|
579
591
|
}
|
|
580
592
|
destroy() {
|
|
581
593
|
const sb = this;
|
|
582
|
-
sb.emit('local::beforeDestroy
|
|
583
|
-
sb.$el.trigger('searchbar
|
|
594
|
+
sb.emit('local::beforeDestroy searchbarBeforeDestroy', sb);
|
|
595
|
+
sb.$el.trigger('searchbar:beforedestroy');
|
|
584
596
|
sb.detachEvents();
|
|
585
597
|
if (sb.$el[0]) {
|
|
586
598
|
sb.$el[0].f7SearchbarNew = null;
|
|
@@ -1,75 +1,75 @@
|
|
|
1
|
-
:root {
|
|
2
|
-
/*
|
|
3
|
-
--f7-searchbar-new-link-color: var(--f7-bars-link-color);
|
|
4
|
-
--f7-searchbar-new-inline-input-font-size: var(--f7-searchbar-new-input-font-size);
|
|
5
|
-
*/
|
|
6
|
-
--f7-searchbar-new-input-border-width: 0px;
|
|
7
|
-
--f7-searchbar-new-input-border-color: transparent;
|
|
8
|
-
}
|
|
9
|
-
.ios-vars({
|
|
10
|
-
/*
|
|
11
|
-
--f7-searchbar-new-border-color: var(--f7-bars-border-color);
|
|
12
|
-
*/
|
|
13
|
-
--f7-searchbar-new-bg-color: transparent;
|
|
14
|
-
--f7-searchbar-new-height: 44px;
|
|
15
|
-
--f7-searchbar-new-inner-padding-left: 0px;
|
|
16
|
-
--f7-searchbar-new-inner-padding-right: 0px;
|
|
17
|
-
--f7-searchbar-new-link-color: var(--f7-bars-text-color);
|
|
18
|
-
--f7-searchbar-new-input-font-size: 17px;
|
|
19
|
-
--f7-searchbar-new-input-border-radius: 44px;
|
|
20
|
-
--f7-searchbar-new-input-height: 44px;
|
|
21
|
-
--f7-searchbar-new-inline-input-height: 44px;
|
|
22
|
-
/*
|
|
23
|
-
--f7-searchbar-new-inline-input-border-radius: var(--f7-searchbar-new-input-border-radius);
|
|
24
|
-
*/
|
|
25
|
-
--f7-searchbar-new-input-padding-horizontal: 44px;
|
|
26
|
-
/*
|
|
27
|
-
--f7-searchbar-new-inline-input-padding-horizontal: var(--f7-searchbar-new-input-padding-horizontal);
|
|
28
|
-
--f7-searchbar-new-input-clear-button-color: var(--f7-input-clear-button-color);
|
|
29
|
-
*/
|
|
30
|
-
--f7-searchbar-new-backdrop-bg-color: rgba(0,0,0,0.4);
|
|
31
|
-
--f7-searchbar-new-in-page-content-margin: 16px;
|
|
32
|
-
--f7-searchbar-new-in-page-content-box-shadow: none;
|
|
33
|
-
--f7-searchbar-new-in-page-content-border-radius: 44px;
|
|
34
|
-
--f7-searchbar-new-in-page-content-input-border-radius: 44px;
|
|
35
|
-
--f7-searchbar-new-input-bg-color: var(--f7-glass-bg-color);
|
|
36
|
-
.light-vars({
|
|
37
|
-
--f7-searchbar-new-placeholder-color: rgba(0, 0, 0, 0.4);
|
|
38
|
-
--f7-searchbar-new-input-text-color: #000;
|
|
39
|
-
--f7-searchbar-new-search-icon-color: rgba(0, 0, 0, 0.4);
|
|
40
|
-
--f7-searchbar-new-bars-bg-color: #efeff4;
|
|
41
|
-
});
|
|
42
|
-
.dark-vars({
|
|
43
|
-
--f7-searchbar-new-placeholder-color: rgba(255, 255, 255, 0.4);
|
|
44
|
-
--f7-searchbar-new-input-text-color: #fff;
|
|
45
|
-
--f7-searchbar-new-search-icon-color: rgba(255, 255, 255, 0.4);
|
|
46
|
-
--f7-searchbar-new-bars-bg-color: rgba(0, 0, 0, 0.5);
|
|
47
|
-
});
|
|
48
|
-
});
|
|
49
|
-
.md-vars({
|
|
50
|
-
--f7-searchbar-new-border-color: transparent;
|
|
51
|
-
--f7-searchbar-new-height: 48px;
|
|
52
|
-
--f7-searchbar-new-inner-padding-left: 8px;
|
|
53
|
-
--f7-searchbar-new-inner-padding-right: 8px;
|
|
54
|
-
--f7-searchbar-new-input-font-size: 16px;
|
|
55
|
-
--f7-searchbar-new-input-border-radius: 24px;
|
|
56
|
-
--f7-searchbar-new-input-height: 48px;
|
|
57
|
-
--f7-searchbar-new-inline-input-height: 48px;
|
|
58
|
-
--f7-searchbar-new-inline-input-border-radius: 24px;
|
|
59
|
-
--f7-searchbar-new-input-padding-horizontal: 16px;
|
|
60
|
-
--f7-searchbar-new-inline-input-padding-horizontal: 16px;
|
|
61
|
-
--f7-searchbar-new-backdrop-bg-color: rgba(0,0,0,0.25);
|
|
62
|
-
--f7-searchbar-new-in-page-content-margin: 16px 0;
|
|
63
|
-
--f7-searchbar-new-in-page-content-box-shadow: none;
|
|
64
|
-
--f7-searchbar-new-in-page-content-border-radius: 24px;
|
|
65
|
-
--f7-searchbar-new-in-page-content-input-border-radius: 24px;
|
|
66
|
-
--f7-searchbar-new-bg-color: transparent;
|
|
67
|
-
});
|
|
68
|
-
.md-color-vars({
|
|
69
|
-
--f7-searchbar-new-link-color: var(--f7-md-on-surface);
|
|
70
|
-
--f7-searchbar-new-search-icon-color: var(--f7-md-on-surface);
|
|
71
|
-
--f7-searchbar-new-input-clear-button-color: var(--f7-md-on-surface);
|
|
72
|
-
--f7-searchbar-new-placeholder-color: var(--f7-md-on-surface-variant);
|
|
73
|
-
--f7-searchbar-new-input-bg-color: var(--f7-md-secondary-container);
|
|
74
|
-
--f7-searchbar-new-input-text-color: var(--f7-md-on-surface);
|
|
75
|
-
});
|
|
1
|
+
:root {
|
|
2
|
+
/*
|
|
3
|
+
--f7-searchbar-new-link-color: var(--f7-bars-link-color);
|
|
4
|
+
--f7-searchbar-new-inline-input-font-size: var(--f7-searchbar-new-input-font-size);
|
|
5
|
+
*/
|
|
6
|
+
--f7-searchbar-new-input-border-width: 0px;
|
|
7
|
+
--f7-searchbar-new-input-border-color: transparent;
|
|
8
|
+
}
|
|
9
|
+
.ios-vars({
|
|
10
|
+
/*
|
|
11
|
+
--f7-searchbar-new-border-color: var(--f7-bars-border-color);
|
|
12
|
+
*/
|
|
13
|
+
--f7-searchbar-new-bg-color: transparent;
|
|
14
|
+
--f7-searchbar-new-height: 44px;
|
|
15
|
+
--f7-searchbar-new-inner-padding-left: 0px;
|
|
16
|
+
--f7-searchbar-new-inner-padding-right: 0px;
|
|
17
|
+
--f7-searchbar-new-link-color: var(--f7-bars-text-color);
|
|
18
|
+
--f7-searchbar-new-input-font-size: 17px;
|
|
19
|
+
--f7-searchbar-new-input-border-radius: 44px;
|
|
20
|
+
--f7-searchbar-new-input-height: 44px;
|
|
21
|
+
--f7-searchbar-new-inline-input-height: 44px;
|
|
22
|
+
/*
|
|
23
|
+
--f7-searchbar-new-inline-input-border-radius: var(--f7-searchbar-new-input-border-radius);
|
|
24
|
+
*/
|
|
25
|
+
--f7-searchbar-new-input-padding-horizontal: 44px;
|
|
26
|
+
/*
|
|
27
|
+
--f7-searchbar-new-inline-input-padding-horizontal: var(--f7-searchbar-new-input-padding-horizontal);
|
|
28
|
+
--f7-searchbar-new-input-clear-button-color: var(--f7-input-clear-button-color);
|
|
29
|
+
*/
|
|
30
|
+
--f7-searchbar-new-backdrop-bg-color: rgba(0,0,0,0.4);
|
|
31
|
+
--f7-searchbar-new-in-page-content-margin: 16px;
|
|
32
|
+
--f7-searchbar-new-in-page-content-box-shadow: none;
|
|
33
|
+
--f7-searchbar-new-in-page-content-border-radius: 44px;
|
|
34
|
+
--f7-searchbar-new-in-page-content-input-border-radius: 44px;
|
|
35
|
+
--f7-searchbar-new-input-bg-color: var(--f7-glass-bg-color);
|
|
36
|
+
.light-vars({
|
|
37
|
+
--f7-searchbar-new-placeholder-color: rgba(0, 0, 0, 0.4);
|
|
38
|
+
--f7-searchbar-new-input-text-color: #000;
|
|
39
|
+
--f7-searchbar-new-search-icon-color: rgba(0, 0, 0, 0.4);
|
|
40
|
+
--f7-searchbar-new-bars-bg-color: #efeff4;
|
|
41
|
+
});
|
|
42
|
+
.dark-vars({
|
|
43
|
+
--f7-searchbar-new-placeholder-color: rgba(255, 255, 255, 0.4);
|
|
44
|
+
--f7-searchbar-new-input-text-color: #fff;
|
|
45
|
+
--f7-searchbar-new-search-icon-color: rgba(255, 255, 255, 0.4);
|
|
46
|
+
--f7-searchbar-new-bars-bg-color: rgba(0, 0, 0, 0.5);
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
.md-vars({
|
|
50
|
+
--f7-searchbar-new-border-color: transparent;
|
|
51
|
+
--f7-searchbar-new-height: 48px;
|
|
52
|
+
--f7-searchbar-new-inner-padding-left: 8px;
|
|
53
|
+
--f7-searchbar-new-inner-padding-right: 8px;
|
|
54
|
+
--f7-searchbar-new-input-font-size: 16px;
|
|
55
|
+
--f7-searchbar-new-input-border-radius: 24px;
|
|
56
|
+
--f7-searchbar-new-input-height: 48px;
|
|
57
|
+
--f7-searchbar-new-inline-input-height: 48px;
|
|
58
|
+
--f7-searchbar-new-inline-input-border-radius: 24px;
|
|
59
|
+
--f7-searchbar-new-input-padding-horizontal: 16px;
|
|
60
|
+
--f7-searchbar-new-inline-input-padding-horizontal: 16px;
|
|
61
|
+
--f7-searchbar-new-backdrop-bg-color: rgba(0,0,0,0.25);
|
|
62
|
+
--f7-searchbar-new-in-page-content-margin: 16px 0;
|
|
63
|
+
--f7-searchbar-new-in-page-content-box-shadow: none;
|
|
64
|
+
--f7-searchbar-new-in-page-content-border-radius: 24px;
|
|
65
|
+
--f7-searchbar-new-in-page-content-input-border-radius: 24px;
|
|
66
|
+
--f7-searchbar-new-bg-color: transparent;
|
|
67
|
+
});
|
|
68
|
+
.md-color-vars({
|
|
69
|
+
--f7-searchbar-new-link-color: var(--f7-md-on-surface);
|
|
70
|
+
--f7-searchbar-new-search-icon-color: var(--f7-md-on-surface);
|
|
71
|
+
--f7-searchbar-new-input-clear-button-color: var(--f7-md-on-surface);
|
|
72
|
+
--f7-searchbar-new-placeholder-color: var(--f7-md-on-surface-variant);
|
|
73
|
+
--f7-searchbar-new-input-bg-color: var(--f7-md-secondary-container);
|
|
74
|
+
--f7-searchbar-new-input-text-color: var(--f7-md-on-surface);
|
|
75
|
+
});
|