quasar 2.4.3 → 2.4.7
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/api/BottomSheet.json +5 -1
- package/dist/api/LoadingBar.json +1 -1
- package/dist/api/Notify.json +20 -20
- package/dist/api/QAjaxBar.json +23 -4
- package/dist/api/QCarouselSlide.json +2 -2
- package/dist/api/QChatMessage.json +1 -1
- package/dist/api/QImg.json +2 -2
- package/dist/api/QParallax.json +1 -1
- package/dist/api/QRadio.json +3 -1
- package/dist/api/QSelect.json +1 -1
- package/dist/api/QTimelineEntry.json +1 -1
- package/dist/icon-set/bootstrap-icons.umd.prod.js +1 -1
- package/dist/icon-set/eva-icons.umd.prod.js +1 -1
- package/dist/icon-set/fontawesome-v5-pro.umd.prod.js +1 -1
- package/dist/icon-set/fontawesome-v5.umd.prod.js +1 -1
- package/dist/icon-set/ionicons-v4.umd.prod.js +1 -1
- package/dist/icon-set/line-awesome.umd.prod.js +1 -1
- package/dist/icon-set/material-icons-outlined.umd.prod.js +1 -1
- package/dist/icon-set/material-icons-round.umd.prod.js +1 -1
- package/dist/icon-set/material-icons-sharp.umd.prod.js +1 -1
- package/dist/icon-set/material-icons.umd.prod.js +1 -1
- package/dist/icon-set/mdi-v3.umd.prod.js +1 -1
- package/dist/icon-set/mdi-v4.umd.prod.js +1 -1
- package/dist/icon-set/mdi-v5.umd.prod.js +1 -1
- package/dist/icon-set/mdi-v6.umd.prod.js +1 -1
- package/dist/icon-set/svg-bootstrap-icons.umd.prod.js +1 -1
- package/dist/icon-set/svg-eva-icons.umd.prod.js +1 -1
- package/dist/icon-set/svg-fontawesome-v5.umd.prod.js +1 -1
- package/dist/icon-set/svg-ionicons-v4.umd.prod.js +1 -1
- package/dist/icon-set/svg-ionicons-v5.umd.prod.js +1 -1
- package/dist/icon-set/svg-ionicons-v6.umd.prod.js +1 -1
- package/dist/icon-set/svg-line-awesome.umd.prod.js +1 -1
- package/dist/icon-set/svg-material-icons-outlined.umd.prod.js +1 -1
- package/dist/icon-set/svg-material-icons-round.umd.prod.js +1 -1
- package/dist/icon-set/svg-material-icons-sharp.umd.prod.js +1 -1
- package/dist/icon-set/svg-material-icons.umd.prod.js +1 -1
- package/dist/icon-set/svg-mdi-v4.umd.prod.js +1 -1
- package/dist/icon-set/svg-mdi-v5.umd.prod.js +1 -1
- package/dist/icon-set/svg-mdi-v6.umd.prod.js +1 -1
- package/dist/icon-set/svg-themify.umd.prod.js +1 -1
- package/dist/icon-set/themify.umd.prod.js +1 -1
- package/dist/lang/ar.umd.prod.js +1 -1
- package/dist/lang/az-Latn.umd.prod.js +1 -1
- package/dist/lang/bg.umd.prod.js +1 -1
- package/dist/lang/bn.umd.prod.js +1 -1
- package/dist/lang/ca.umd.prod.js +1 -1
- package/dist/lang/cs.umd.prod.js +1 -1
- package/dist/lang/da.umd.prod.js +1 -1
- package/dist/lang/de.umd.prod.js +1 -1
- package/dist/lang/el.umd.prod.js +1 -1
- package/dist/lang/en-GB.umd.prod.js +1 -1
- package/dist/lang/en-US.umd.prod.js +1 -1
- package/dist/lang/eo.umd.prod.js +1 -1
- package/dist/lang/es.umd.prod.js +1 -1
- package/dist/lang/et.umd.prod.js +1 -1
- package/dist/lang/fa-IR.umd.prod.js +1 -1
- package/dist/lang/fa.umd.prod.js +1 -1
- package/dist/lang/fi.umd.prod.js +1 -1
- package/dist/lang/fr.umd.prod.js +1 -1
- package/dist/lang/gn.umd.prod.js +1 -1
- package/dist/lang/he.umd.prod.js +1 -1
- package/dist/lang/hr.umd.prod.js +1 -1
- package/dist/lang/hu.umd.prod.js +1 -1
- package/dist/lang/id.umd.prod.js +1 -1
- package/dist/lang/is.umd.prod.js +1 -1
- package/dist/lang/it.umd.prod.js +1 -1
- package/dist/lang/ja.umd.prod.js +1 -1
- package/dist/lang/km.umd.prod.js +1 -1
- package/dist/lang/ko-KR.umd.prod.js +1 -1
- package/dist/lang/kur-CKB.umd.prod.js +1 -1
- package/dist/lang/lt.umd.prod.js +1 -1
- package/dist/lang/lu.umd.prod.js +1 -1
- package/dist/lang/lv.umd.prod.js +1 -1
- package/dist/lang/ml.umd.prod.js +1 -1
- package/dist/lang/ms.umd.prod.js +1 -1
- package/dist/lang/nb-NO.umd.prod.js +1 -1
- package/dist/lang/nl.umd.prod.js +1 -1
- package/dist/lang/pl.umd.prod.js +1 -1
- package/dist/lang/pt-BR.umd.prod.js +1 -1
- package/dist/lang/pt.umd.prod.js +1 -1
- package/dist/lang/ro.umd.prod.js +1 -1
- package/dist/lang/ru.umd.prod.js +1 -1
- package/dist/lang/sk.umd.prod.js +1 -1
- package/dist/lang/sl.umd.prod.js +1 -1
- package/dist/lang/sr-CYR.umd.prod.js +1 -1
- package/dist/lang/sr.umd.prod.js +1 -1
- package/dist/lang/sv.umd.prod.js +1 -1
- package/dist/lang/ta.umd.prod.js +1 -1
- package/dist/lang/th.umd.prod.js +1 -1
- package/dist/lang/tr.umd.prod.js +1 -1
- package/dist/lang/ug.umd.prod.js +1 -1
- package/dist/lang/uk.umd.prod.js +1 -1
- package/dist/lang/vi.umd.prod.js +1 -1
- package/dist/lang/zh-CN.umd.prod.js +1 -1
- package/dist/lang/zh-TW.umd.prod.js +1 -1
- package/dist/quasar.cjs.prod.js +2 -2
- package/dist/quasar.css +2 -1
- package/dist/quasar.esm.prod.js +2 -2
- package/dist/quasar.prod.css +1 -1
- package/dist/quasar.rtl.css +2 -1
- package/dist/quasar.rtl.prod.css +1 -1
- package/dist/quasar.sass +3 -2
- package/dist/quasar.umd.js +156 -81
- package/dist/quasar.umd.prod.js +2 -2
- package/dist/ssr-directives/Morph.js +1 -1
- package/dist/types/index.d.ts +24 -10
- package/dist/vetur/quasar-attributes.json +9 -5
- package/dist/vetur/quasar-tags.json +2 -1
- package/dist/web-types/web-types.json +22 -13
- package/package.json +1 -1
- package/src/components/ajax-bar/QAjaxBar.js +47 -26
- package/src/components/ajax-bar/QAjaxBar.json +22 -4
- package/src/components/breadcrumbs/QBreadcrumbs.js +3 -3
- package/src/components/breadcrumbs/QBreadcrumbsEl.js +2 -2
- package/src/components/btn/use-btn.js +4 -1
- package/src/components/btn-toggle/QBtnToggle.js +2 -0
- package/src/components/carousel/QCarouselSlide.json +2 -2
- package/src/components/chat/QChatMessage.json +1 -1
- package/src/components/icon/QIcon.js +36 -32
- package/src/components/icon/QIcon.sass +0 -1
- package/src/components/img/QImg.json +2 -2
- package/src/components/layout/QLayout.js +50 -1
- package/src/components/pagination/QPagination.js +4 -4
- package/src/components/parallax/QParallax.json +1 -1
- package/src/components/radio/QRadio.js +2 -6
- package/src/components/radio/QRadio.json +1 -1
- package/src/components/scroll-area/QScrollArea.sass +1 -0
- package/src/components/select/QSelect.json +1 -1
- package/src/components/timeline/QTimeline.sass +1 -2
- package/src/components/timeline/QTimelineEntry.json +1 -1
- package/src/css/core/visibility.sass +0 -1
- package/src/plugins/BottomSheet.json +7 -1
- package/src/plugins/LoadingBar.json +1 -1
- package/src/plugins/Notify.json +22 -22
- package/src/utils/private/global-dialog.js +4 -4
package/dist/types/index.d.ts
CHANGED
|
@@ -101,6 +101,10 @@ export interface BottomSheet {
|
|
|
101
101
|
* Action label
|
|
102
102
|
*/
|
|
103
103
|
label?: string | number;
|
|
104
|
+
/**
|
|
105
|
+
* Any other custom props
|
|
106
|
+
*/
|
|
107
|
+
[key: string]: any;
|
|
104
108
|
}[];
|
|
105
109
|
/**
|
|
106
110
|
* Display actions as a grid instead of as a list
|
|
@@ -469,7 +473,7 @@ export interface Notify {
|
|
|
469
473
|
*/
|
|
470
474
|
icon?: string;
|
|
471
475
|
/**
|
|
472
|
-
* URL to an avatar/image; Suggestion:
|
|
476
|
+
* URL to an avatar/image; Suggestion: public folder
|
|
473
477
|
*/
|
|
474
478
|
avatar?: string;
|
|
475
479
|
/**
|
|
@@ -593,7 +597,7 @@ export interface Notify {
|
|
|
593
597
|
*/
|
|
594
598
|
icon?: string;
|
|
595
599
|
/**
|
|
596
|
-
* URL to an avatar/image; Suggestion: use
|
|
600
|
+
* URL to an avatar/image; Suggestion: use public folder
|
|
597
601
|
*/
|
|
598
602
|
avatar?: string;
|
|
599
603
|
/**
|
|
@@ -676,7 +680,7 @@ export interface Notify {
|
|
|
676
680
|
*/
|
|
677
681
|
icon?: string;
|
|
678
682
|
/**
|
|
679
|
-
* URL to an avatar/image; Suggestion: use
|
|
683
|
+
* URL to an avatar/image; Suggestion: use public folder
|
|
680
684
|
*/
|
|
681
685
|
avatar?: string;
|
|
682
686
|
/**
|
|
@@ -793,7 +797,7 @@ export interface Notify {
|
|
|
793
797
|
*/
|
|
794
798
|
icon?: string;
|
|
795
799
|
/**
|
|
796
|
-
* URL to an avatar/image; Suggestion: use
|
|
800
|
+
* URL to an avatar/image; Suggestion: use public folder
|
|
797
801
|
*/
|
|
798
802
|
avatar?: string;
|
|
799
803
|
/**
|
|
@@ -1151,14 +1155,20 @@ export interface QAjaxBarProps {
|
|
|
1151
1155
|
* Color name for component from the Quasar Color Palette
|
|
1152
1156
|
*/
|
|
1153
1157
|
color?: string | undefined;
|
|
1158
|
+
/**
|
|
1159
|
+
* Reverse direction of progress
|
|
1160
|
+
*/
|
|
1161
|
+
reverse?: boolean | undefined;
|
|
1154
1162
|
/**
|
|
1155
1163
|
* Skip Ajax hijacking (not a reactive prop)
|
|
1156
1164
|
*/
|
|
1157
1165
|
skipHijack?: boolean | undefined;
|
|
1158
1166
|
/**
|
|
1159
|
-
*
|
|
1167
|
+
* Filter which URL should trigger start() + stop()
|
|
1168
|
+
* @param url The URL being triggered
|
|
1169
|
+
* @returns Should the URL received as param trigger start() + stop()?
|
|
1160
1170
|
*/
|
|
1161
|
-
|
|
1171
|
+
hijackFilter?: ((url: string) => boolean) | undefined;
|
|
1162
1172
|
/**
|
|
1163
1173
|
* Emitted when bar is triggered to appear
|
|
1164
1174
|
*/
|
|
@@ -2442,7 +2452,7 @@ export interface QCarouselSlideProps {
|
|
|
2442
2452
|
*/
|
|
2443
2453
|
disable?: boolean | undefined;
|
|
2444
2454
|
/**
|
|
2445
|
-
* URL pointing to a slide background image (use
|
|
2455
|
+
* URL pointing to a slide background image (use public folder)
|
|
2446
2456
|
*/
|
|
2447
2457
|
imgSrc?: string | undefined;
|
|
2448
2458
|
}
|
|
@@ -7211,7 +7221,7 @@ export interface QRadioProps {
|
|
|
7211
7221
|
/**
|
|
7212
7222
|
* The actual value of the option with which model value is changed
|
|
7213
7223
|
*/
|
|
7214
|
-
val: number | string;
|
|
7224
|
+
val: number | string | null | undefined;
|
|
7215
7225
|
/**
|
|
7216
7226
|
* Label to display along the radio control (or use the default slot instead of this prop)
|
|
7217
7227
|
*/
|
|
@@ -13685,6 +13695,10 @@ declare module "./globals" {
|
|
|
13685
13695
|
* Action label
|
|
13686
13696
|
*/
|
|
13687
13697
|
label?: string | number;
|
|
13698
|
+
/**
|
|
13699
|
+
* Any other custom props
|
|
13700
|
+
*/
|
|
13701
|
+
[key: string]: any;
|
|
13688
13702
|
}[];
|
|
13689
13703
|
/**
|
|
13690
13704
|
* Display actions as a grid instead of as a list
|
|
@@ -13751,7 +13765,7 @@ declare module "./globals" {
|
|
|
13751
13765
|
*/
|
|
13752
13766
|
icon?: string;
|
|
13753
13767
|
/**
|
|
13754
|
-
* URL to an avatar/image; Suggestion:
|
|
13768
|
+
* URL to an avatar/image; Suggestion: public folder
|
|
13755
13769
|
*/
|
|
13756
13770
|
avatar?: string;
|
|
13757
13771
|
/**
|
|
@@ -13875,7 +13889,7 @@ declare module "./globals" {
|
|
|
13875
13889
|
*/
|
|
13876
13890
|
icon?: string;
|
|
13877
13891
|
/**
|
|
13878
|
-
* URL to an avatar/image; Suggestion: use
|
|
13892
|
+
* URL to an avatar/image; Suggestion: use public folder
|
|
13879
13893
|
*/
|
|
13880
13894
|
avatar?: string;
|
|
13881
13895
|
/**
|
|
@@ -11,13 +11,17 @@
|
|
|
11
11
|
"type": "string",
|
|
12
12
|
"description": "Color name for component from the Quasar Color Palette"
|
|
13
13
|
},
|
|
14
|
+
"q-ajax-bar/reverse": {
|
|
15
|
+
"type": "boolean",
|
|
16
|
+
"description": "Reverse direction of progress"
|
|
17
|
+
},
|
|
14
18
|
"q-ajax-bar/skip-hijack": {
|
|
15
19
|
"type": "boolean",
|
|
16
20
|
"description": "Skip Ajax hijacking (not a reactive prop)"
|
|
17
21
|
},
|
|
18
|
-
"q-ajax-bar/
|
|
19
|
-
"type": "
|
|
20
|
-
"description": "
|
|
22
|
+
"q-ajax-bar/hijack-filter": {
|
|
23
|
+
"type": "function",
|
|
24
|
+
"description": "Filter which URL should trigger start() + stop()"
|
|
21
25
|
},
|
|
22
26
|
"q-avatar/size": {
|
|
23
27
|
"type": "string",
|
|
@@ -789,7 +793,7 @@
|
|
|
789
793
|
},
|
|
790
794
|
"q-carousel-slide/img-src": {
|
|
791
795
|
"type": "string",
|
|
792
|
-
"description": "URL pointing to a slide background image (use
|
|
796
|
+
"description": "URL pointing to a slide background image (use public folder)"
|
|
793
797
|
},
|
|
794
798
|
"q-chat-message/sent": {
|
|
795
799
|
"type": "boolean",
|
|
@@ -3372,7 +3376,7 @@
|
|
|
3372
3376
|
"description": "Model of the component; Either use this property (along with a listener for 'update:model-value' event) OR use v-model directive"
|
|
3373
3377
|
},
|
|
3374
3378
|
"q-radio/val": {
|
|
3375
|
-
"type": "number|string",
|
|
3379
|
+
"type": "number|string|null|undefined",
|
|
3376
3380
|
"description": "The actual value of the option with which model value is changed"
|
|
3377
3381
|
},
|
|
3378
3382
|
"q-radio/label": {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"$schema": "",
|
|
3
3
|
"framework": "vue",
|
|
4
4
|
"name": "quasar",
|
|
5
|
-
"version": "2.4.
|
|
5
|
+
"version": "2.4.7",
|
|
6
6
|
"contributions": {
|
|
7
7
|
"html": {
|
|
8
8
|
"types-syntax": "typescript",
|
|
@@ -44,24 +44,33 @@
|
|
|
44
44
|
"doc-url": "https://v2.quasar.dev/vue-components/ajax-bar"
|
|
45
45
|
},
|
|
46
46
|
{
|
|
47
|
-
"name": "
|
|
47
|
+
"name": "reverse",
|
|
48
48
|
"value": {
|
|
49
49
|
"kind": "expression",
|
|
50
50
|
"type": "boolean"
|
|
51
51
|
},
|
|
52
|
-
"description": "
|
|
52
|
+
"description": "Reverse direction of progress",
|
|
53
53
|
"doc-url": "https://v2.quasar.dev/vue-components/ajax-bar",
|
|
54
54
|
"type": "boolean"
|
|
55
55
|
},
|
|
56
56
|
{
|
|
57
|
-
"name": "
|
|
57
|
+
"name": "skip-hijack",
|
|
58
58
|
"value": {
|
|
59
59
|
"kind": "expression",
|
|
60
60
|
"type": "boolean"
|
|
61
61
|
},
|
|
62
|
-
"description": "
|
|
62
|
+
"description": "Skip Ajax hijacking (not a reactive prop)",
|
|
63
63
|
"doc-url": "https://v2.quasar.dev/vue-components/ajax-bar",
|
|
64
64
|
"type": "boolean"
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"name": "hijack-filter",
|
|
68
|
+
"value": {
|
|
69
|
+
"kind": "expression",
|
|
70
|
+
"type": "Function"
|
|
71
|
+
},
|
|
72
|
+
"description": "Filter which URL should trigger start() + stop()",
|
|
73
|
+
"doc-url": "https://v2.quasar.dev/vue-components/ajax-bar"
|
|
65
74
|
}
|
|
66
75
|
],
|
|
67
76
|
"events": [
|
|
@@ -2434,7 +2443,7 @@
|
|
|
2434
2443
|
"kind": "expression",
|
|
2435
2444
|
"type": "string"
|
|
2436
2445
|
},
|
|
2437
|
-
"description": "URL pointing to a slide background image (use
|
|
2446
|
+
"description": "URL pointing to a slide background image (use public folder)\n\nExamples:\n(public folder) src=\"img/my-bg.png\"\n(assets folder) src=\"~assets/my-img.png\"\n(relative path format) :src=\"require('./my_img.jpg')\"\n(URL) src=\"https://placeimg.com/500/300/nature\"",
|
|
2438
2447
|
"doc-url": "https://v2.quasar.dev/vue-components/carousel"
|
|
2439
2448
|
}
|
|
2440
2449
|
],
|
|
@@ -2507,7 +2516,7 @@
|
|
|
2507
2516
|
"kind": "expression",
|
|
2508
2517
|
"type": "string"
|
|
2509
2518
|
},
|
|
2510
|
-
"description": "URL to the avatar image of the author\n\nExamples:\n(
|
|
2519
|
+
"description": "URL to the avatar image of the author\n\nExamples:\n(public folder) src=\"boy-avatar.png\"\n(assets folder) src=\"~assets/boy-avatar.png\"\n(relative path format) :src=\"require('./my_img.jpg')\"\n(URL) src=\"https://placeimg.com/500/300/nature\"",
|
|
2511
2520
|
"doc-url": "https://v2.quasar.dev/vue-components/chat"
|
|
2512
2521
|
},
|
|
2513
2522
|
{
|
|
@@ -7114,7 +7123,7 @@
|
|
|
7114
7123
|
"kind": "expression",
|
|
7115
7124
|
"type": "string"
|
|
7116
7125
|
},
|
|
7117
|
-
"description": "Path to image\n\nExamples:\n(
|
|
7126
|
+
"description": "Path to image\n\nExamples:\n(public folder) src=\"img/something.png\"\n(assets folder) src=\"~assets/my-img.gif\"\n(relative path format) :src=\"require('./my_img.jpg')\"\n(URL) src=\"https://placeimg.com/500/300/nature\"",
|
|
7118
7127
|
"doc-url": "https://v2.quasar.dev/vue-components/img"
|
|
7119
7128
|
},
|
|
7120
7129
|
{
|
|
@@ -7141,7 +7150,7 @@
|
|
|
7141
7150
|
"kind": "expression",
|
|
7142
7151
|
"type": "string"
|
|
7143
7152
|
},
|
|
7144
|
-
"description": "While waiting for your image to load, you can use a placeholder image\n\nExamples:\n(
|
|
7153
|
+
"description": "While waiting for your image to load, you can use a placeholder image\n\nExamples:\n(public folder) src=\"img/some-placeholder.png\"\n(assets folder) src=\"~assets/my-placeholder.gif\"\n(relative path format) :src=\"require('./placeholder.jpg')\"\n(URL) src=\"https://placeimg.com/500/300/nature\"",
|
|
7145
7154
|
"doc-url": "https://v2.quasar.dev/vue-components/img"
|
|
7146
7155
|
},
|
|
7147
7156
|
{
|
|
@@ -10240,7 +10249,7 @@
|
|
|
10240
10249
|
"kind": "expression",
|
|
10241
10250
|
"type": "string"
|
|
10242
10251
|
},
|
|
10243
|
-
"description": "Path to image (unless a 'media' slot is used)\n\nExamples:\n(
|
|
10252
|
+
"description": "Path to image (unless a 'media' slot is used)\n\nExamples:\n(public folder) src=\"img/something.png\"\n(assets folder) src=\"~assets/my-img.png\"\n(relative path format) :src=\"require('./my_img.jpg')\"\n(URL) src=\"https://some-site.net/some-img.jpg\"",
|
|
10244
10253
|
"doc-url": "https://v2.quasar.dev/vue-components/parallax"
|
|
10245
10254
|
},
|
|
10246
10255
|
{
|
|
@@ -10853,7 +10862,7 @@
|
|
|
10853
10862
|
"name": "val",
|
|
10854
10863
|
"value": {
|
|
10855
10864
|
"kind": "expression",
|
|
10856
|
-
"type": "number|string"
|
|
10865
|
+
"type": "number|string|null|undefined"
|
|
10857
10866
|
},
|
|
10858
10867
|
"description": "The actual value of the option with which model value is changed\n\nExamples:\nopt1\n50",
|
|
10859
10868
|
"doc-url": "https://v2.quasar.dev/vue-components/radio",
|
|
@@ -12534,7 +12543,7 @@
|
|
|
12534
12543
|
"kind": "expression",
|
|
12535
12544
|
"type": "any[]|string|object"
|
|
12536
12545
|
},
|
|
12537
|
-
"description": "Style definitions to be attributed to the popup content\n\nExamples:\nbackground-color: #ff0000\n:content-style=\"{ backgroundColor: '#ff0000' }\"",
|
|
12546
|
+
"description": "Style definitions to be attributed to the popup content\n\nExamples:\nbackground-color: #ff0000\n:popup-content-style=\"{ backgroundColor: '#ff0000' }\"",
|
|
12538
12547
|
"doc-url": "https://v2.quasar.dev/vue-components/select"
|
|
12539
12548
|
},
|
|
12540
12549
|
{
|
|
@@ -17214,7 +17223,7 @@
|
|
|
17214
17223
|
"kind": "expression",
|
|
17215
17224
|
"type": "string"
|
|
17216
17225
|
},
|
|
17217
|
-
"description": "URL to the avatar image; Icon takes precedence if used, so it replaces avatar\n\nExamples:\n(
|
|
17226
|
+
"description": "URL to the avatar image; Icon takes precedence if used, so it replaces avatar\n\nExamples:\n(public folder) src=\"img/my-bg.png\"\n(assets folder) src=\"~assets/my-img.png\"\n(relative path format) :src=\"require('./my_img.jpg')\"\n(URL) src=\"https://placeimg.com/500/300/nature\"",
|
|
17218
17227
|
"doc-url": "https://v2.quasar.dev/vue-components/timeline"
|
|
17219
17228
|
},
|
|
17220
17229
|
{
|
package/package.json
CHANGED
|
@@ -5,22 +5,22 @@ import { between } from '../../utils/format.js'
|
|
|
5
5
|
|
|
6
6
|
const
|
|
7
7
|
xhr = __QUASAR_SSR_SERVER__ ? null : XMLHttpRequest,
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
stackStop = []
|
|
8
|
+
open = __QUASAR_SSR_SERVER__ ? null : xhr.prototype.open,
|
|
9
|
+
positionValues = [ 'top', 'right', 'bottom', 'left' ]
|
|
11
10
|
|
|
11
|
+
let stack = []
|
|
12
12
|
let highjackCount = 0
|
|
13
13
|
|
|
14
14
|
function translate ({ p, pos, active, horiz, reverse, dir }) {
|
|
15
15
|
let x = 1, y = 1
|
|
16
16
|
|
|
17
|
-
if (horiz) {
|
|
18
|
-
if (reverse) { x = -1 }
|
|
17
|
+
if (horiz === true) {
|
|
18
|
+
if (reverse === true) { x = -1 }
|
|
19
19
|
if (pos === 'bottom') { y = -1 }
|
|
20
20
|
return { transform: `translate3d(${ x * (p - 100) }%,${ active ? 0 : y * -200 }%,0)` }
|
|
21
21
|
}
|
|
22
22
|
|
|
23
|
-
if (reverse) { y = -1 }
|
|
23
|
+
if (reverse === true) { y = -1 }
|
|
24
24
|
if (pos === 'right') { x = -1 }
|
|
25
25
|
return { transform: `translate3d(${ active ? 0 : dir * x * -200 }%,${ y * (p - 100) }%,0)` }
|
|
26
26
|
}
|
|
@@ -46,32 +46,45 @@ function inc (p, amount) {
|
|
|
46
46
|
return between(p + amount, 0, 100)
|
|
47
47
|
}
|
|
48
48
|
|
|
49
|
-
function highjackAjax (
|
|
50
|
-
stackStart.push(start)
|
|
51
|
-
stackStop.push(stop)
|
|
52
|
-
|
|
49
|
+
function highjackAjax (stackEntry) {
|
|
53
50
|
highjackCount++
|
|
54
51
|
|
|
52
|
+
stack.push(stackEntry)
|
|
53
|
+
|
|
55
54
|
if (highjackCount > 1) { return }
|
|
56
55
|
|
|
57
|
-
function
|
|
58
|
-
|
|
59
|
-
|
|
56
|
+
xhr.prototype.open = function (_, url) {
|
|
57
|
+
const stopStack = []
|
|
58
|
+
|
|
59
|
+
const loadStart = () => {
|
|
60
|
+
stack.forEach(entry => {
|
|
61
|
+
if (
|
|
62
|
+
entry.hijackFilter.value === null
|
|
63
|
+
|| (entry.hijackFilter.value(url) === true)
|
|
64
|
+
) {
|
|
65
|
+
entry.start()
|
|
66
|
+
stopStack.push(entry.stop)
|
|
67
|
+
}
|
|
68
|
+
})
|
|
69
|
+
}
|
|
60
70
|
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
71
|
+
const loadEnd = () => {
|
|
72
|
+
stopStack.forEach(stop => { stop() })
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
this.addEventListener('loadstart', loadStart, { once: true })
|
|
76
|
+
this.addEventListener('loadend', loadEnd, { once: true })
|
|
77
|
+
|
|
78
|
+
open.apply(this, arguments)
|
|
65
79
|
}
|
|
66
80
|
}
|
|
67
81
|
|
|
68
|
-
function restoreAjax (start
|
|
69
|
-
|
|
70
|
-
stackStop.splice(stackStop.indexOf(stop), 1)
|
|
82
|
+
function restoreAjax (start) {
|
|
83
|
+
stack = stack.filter(entry => entry.start !== start)
|
|
71
84
|
|
|
72
85
|
highjackCount = Math.max(0, highjackCount - 1)
|
|
73
86
|
if (highjackCount === 0) {
|
|
74
|
-
xhr.prototype.
|
|
87
|
+
xhr.prototype.open = open
|
|
75
88
|
}
|
|
76
89
|
}
|
|
77
90
|
|
|
@@ -82,15 +95,19 @@ export default createComponent({
|
|
|
82
95
|
position: {
|
|
83
96
|
type: String,
|
|
84
97
|
default: 'top',
|
|
85
|
-
validator: val =>
|
|
98
|
+
validator: val => positionValues.includes(val)
|
|
86
99
|
},
|
|
100
|
+
|
|
87
101
|
size: {
|
|
88
102
|
type: String,
|
|
89
103
|
default: '2px'
|
|
90
104
|
},
|
|
105
|
+
|
|
91
106
|
color: String,
|
|
92
107
|
skipHijack: Boolean,
|
|
93
|
-
reverse: Boolean
|
|
108
|
+
reverse: Boolean,
|
|
109
|
+
|
|
110
|
+
hijackFilter: Function
|
|
94
111
|
},
|
|
95
112
|
|
|
96
113
|
emits: [ 'start', 'stop' ],
|
|
@@ -122,7 +139,7 @@ export default createComponent({
|
|
|
122
139
|
active,
|
|
123
140
|
horiz: horizontal.value,
|
|
124
141
|
reverse: proxy.$q.lang.rtl === true && [ 'top', 'bottom' ].includes(props.position)
|
|
125
|
-
?
|
|
142
|
+
? props.reverse === false
|
|
126
143
|
: props.reverse,
|
|
127
144
|
dir: proxy.$q.lang.rtl === true ? -1 : 1
|
|
128
145
|
})
|
|
@@ -218,13 +235,17 @@ export default createComponent({
|
|
|
218
235
|
onMounted(() => {
|
|
219
236
|
if (props.skipHijack !== true) {
|
|
220
237
|
hijacked = true
|
|
221
|
-
highjackAjax(
|
|
238
|
+
highjackAjax({
|
|
239
|
+
start,
|
|
240
|
+
stop,
|
|
241
|
+
hijackFilter: computed(() => props.hijackFilter || null)
|
|
242
|
+
})
|
|
222
243
|
}
|
|
223
244
|
})
|
|
224
245
|
|
|
225
246
|
onBeforeUnmount(() => {
|
|
226
247
|
clearTimeout(timer)
|
|
227
|
-
hijacked === true && restoreAjax(start
|
|
248
|
+
hijacked === true && restoreAjax(start)
|
|
228
249
|
})
|
|
229
250
|
|
|
230
251
|
// expose public methods
|
|
@@ -22,16 +22,34 @@
|
|
|
22
22
|
"extends": "color"
|
|
23
23
|
},
|
|
24
24
|
|
|
25
|
-
"
|
|
25
|
+
"reverse": {
|
|
26
26
|
"type": "Boolean",
|
|
27
|
-
"desc": "
|
|
27
|
+
"desc": "Reverse direction of progress",
|
|
28
28
|
"category": "behavior"
|
|
29
29
|
},
|
|
30
30
|
|
|
31
|
-
"
|
|
31
|
+
"skip-hijack": {
|
|
32
32
|
"type": "Boolean",
|
|
33
|
-
"desc": "
|
|
33
|
+
"desc": "Skip Ajax hijacking (not a reactive prop)",
|
|
34
34
|
"category": "behavior"
|
|
35
|
+
},
|
|
36
|
+
|
|
37
|
+
"hijack-filter": {
|
|
38
|
+
"type": "Function",
|
|
39
|
+
"desc": "Filter which URL should trigger start() + stop()",
|
|
40
|
+
"params": {
|
|
41
|
+
"url": {
|
|
42
|
+
"type": "String",
|
|
43
|
+
"desc": "The URL being triggered",
|
|
44
|
+
"examples": [ "https://some.url/path" ]
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
"returns": {
|
|
48
|
+
"type": "Boolean",
|
|
49
|
+
"desc": "Should the URL received as param trigger start() + stop()?"
|
|
50
|
+
},
|
|
51
|
+
"category": "behavior",
|
|
52
|
+
"addedIn": "v2.4.5"
|
|
35
53
|
}
|
|
36
54
|
},
|
|
37
55
|
|
|
@@ -40,7 +40,7 @@ export default createComponent({
|
|
|
40
40
|
)
|
|
41
41
|
|
|
42
42
|
const sepClass = computed(() => (props.separatorColor ? ` text-${ props.separatorColor }` : ''))
|
|
43
|
-
const activeClass = computed(() => `text-${ props.activeColor }`)
|
|
43
|
+
const activeClass = computed(() => ` text-${ props.activeColor }`)
|
|
44
44
|
|
|
45
45
|
return () => {
|
|
46
46
|
const vnodes = getNormalizedVNodes(
|
|
@@ -62,8 +62,8 @@ export default createComponent({
|
|
|
62
62
|
if (comp.type !== void 0 && comp.type.name === 'QBreadcrumbsEl') {
|
|
63
63
|
const middle = els < len
|
|
64
64
|
const disabled = comp.props !== null && disabledValues.includes(comp.props.disable)
|
|
65
|
-
const cls = (middle === true ? ' q-breadcrumbs--last'
|
|
66
|
-
+ (disabled !== true && middle === true ?
|
|
65
|
+
const cls = (middle === true ? '' : ' q-breadcrumbs--last')
|
|
66
|
+
+ (disabled !== true && middle === true ? activeClass.value : '')
|
|
67
67
|
|
|
68
68
|
els++
|
|
69
69
|
|
|
@@ -22,13 +22,13 @@ export default createComponent({
|
|
|
22
22
|
},
|
|
23
23
|
|
|
24
24
|
setup (props, { slots }) {
|
|
25
|
-
const { linkTag, linkProps, hasRouterLink, navigateToRouterLink } = useRouterLink()
|
|
25
|
+
const { linkTag, linkProps, linkClass, hasRouterLink, navigateToRouterLink } = useRouterLink()
|
|
26
26
|
|
|
27
27
|
const data = computed(() => {
|
|
28
28
|
const acc = {
|
|
29
29
|
class: 'q-breadcrumbs__el q-link '
|
|
30
30
|
+ 'flex inline items-center relative-position '
|
|
31
|
-
+ (props.disable !== true ? 'q-link--focusable' : 'q-breadcrumbs__el--disable'),
|
|
31
|
+
+ (props.disable !== true ? 'q-link--focusable' + linkClass.value : 'q-breadcrumbs__el--disable'),
|
|
32
32
|
...linkProps.value
|
|
33
33
|
}
|
|
34
34
|
if (hasRouterLink.value === true) {
|
|
@@ -129,7 +129,10 @@ export default function (props) {
|
|
|
129
129
|
}
|
|
130
130
|
|
|
131
131
|
if (linkTag.value === 'a') {
|
|
132
|
-
if (
|
|
132
|
+
if (props.disable === true) {
|
|
133
|
+
acc[ 'aria-disabled' ] = 'true'
|
|
134
|
+
}
|
|
135
|
+
else if (acc.href === void 0) {
|
|
133
136
|
acc.role = 'button'
|
|
134
137
|
}
|
|
135
138
|
if (hasRouterLink.value !== true && mediaTypeRE.test(props.type) === true) {
|
|
@@ -16,10 +16,10 @@
|
|
|
16
16
|
|
|
17
17
|
"img-src": {
|
|
18
18
|
"type": "String",
|
|
19
|
-
"desc": "URL pointing to a slide background image (use
|
|
19
|
+
"desc": "URL pointing to a slide background image (use public folder)",
|
|
20
20
|
"transformAssetUrls": true,
|
|
21
21
|
"examples": [
|
|
22
|
-
"(
|
|
22
|
+
"(public folder) src=\"img/my-bg.png\"",
|
|
23
23
|
"(assets folder) src=\"~assets/my-img.png\"",
|
|
24
24
|
"(relative path format) :src=\"require('./my_img.jpg')\"",
|
|
25
25
|
"(URL) src=\"https://placeimg.com/500/300/nature\""
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"desc": "URL to the avatar image of the author",
|
|
42
42
|
"transformAssetUrls": true,
|
|
43
43
|
"examples": [
|
|
44
|
-
"(
|
|
44
|
+
"(public folder) src=\"boy-avatar.png\"",
|
|
45
45
|
"(assets folder) src=\"~assets/boy-avatar.png\"",
|
|
46
46
|
"(relative path format) :src=\"require('./my_img.jpg')\"",
|
|
47
47
|
"(URL) src=\"https://placeimg.com/500/300/nature\""
|