@bildvitta/quasar-ui-asteroid 3.17.0-beta.2 → 3.17.0-beta.21
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 +2 -2
- package/src/assets/sounds/nave-notification.mp3 +0 -0
- package/src/components/actions/QasActions.vue +1 -1
- package/src/components/app-menu/QasAppMenu.vue +6 -1
- package/src/components/avatar/QasAvatar.vue +7 -8
- package/src/components/board-generator/QasBoardGenerator.vue +407 -40
- package/src/components/board-generator/QasBoardGenerator.yml +53 -12
- package/src/components/btn-dropdown/QasBtnDropdown.vue +14 -1
- package/src/components/card/QasCard.vue +13 -4
- package/src/components/chart-view/QasChartView.vue +44 -20
- package/src/components/chart-view/QasChartView.yml +10 -0
- package/src/components/checkbox/QasCheckbox.vue +30 -9
- package/src/components/checkbox/QasCheckbox.yml +5 -0
- package/src/components/copy/QasCopy.vue +12 -2
- package/src/components/copy/QasCopy.yml +8 -0
- package/src/components/date-time-input/QasDateTimeInput.vue +1 -1
- package/src/components/dialog/QasDialog.vue +3 -3
- package/src/components/expansion-item/QasExpansionItem.vue +120 -34
- package/src/components/expansion-item/QasExpansionItem.yml +38 -5
- package/src/components/filters/QasFilters.vue +1 -1
- package/src/components/filters/private/PvFiltersButton.vue +1 -1
- package/src/components/form-generator/QasFormGenerator.vue +39 -27
- package/src/components/form-generator/QasFormGenerator.yml +3 -0
- package/src/components/grabbable/QasGrabbable.vue +14 -6
- package/src/components/grabbable/QasGrabbable.yml +4 -0
- package/src/components/grid-generator/QasGridGenerator.vue +67 -34
- package/src/components/grid-generator/QasGridGenerator.yml +15 -0
- package/src/components/header/QasHeader.vue +58 -12
- package/src/components/header/QasHeader.yml +5 -0
- package/src/components/infinite-scroll/QasInfiniteScroll.vue +16 -17
- package/src/components/infinite-scroll/QasInfiniteScroll.yml +7 -0
- package/src/components/list-items/QasListItems.vue +28 -4
- package/src/components/list-items/QasListItems.yml +10 -0
- package/src/components/list-view/QasListView.vue +17 -5
- package/src/components/list-view/QasListView.yml +9 -0
- package/src/components/nested-fields/QasNestedFields.vue +91 -36
- package/src/components/nested-fields/QasNestedFields.yml +23 -0
- package/src/components/radio/QasRadio.vue +24 -5
- package/src/components/radio/QasRadio.yml +6 -0
- package/src/components/select/QasSelect.vue +129 -5
- package/src/components/select/QasSelect.yml +11 -0
- package/src/components/stepper-form-view/QasStepperFormView.yml +1 -1
- package/src/components/table-generator/QasTableGenerator.vue +10 -1
- package/src/components/text-truncate/QasTextTruncate.vue +11 -4
- package/src/components/text-truncate/QasTextTruncate.yml +4 -0
- package/src/composables/private/use-generator.js +3 -9
- package/src/composables/use-notifications.js +14 -0
- package/src/css/components/field.scss +13 -6
- package/src/css/components/item.scss +5 -1
- package/src/enums/Spacing.js +33 -0
- package/src/helpers/set-scroll-on-grab.js +9 -1
|
@@ -51,6 +51,10 @@ props:
|
|
|
51
51
|
desc: Utiliza a propriedade "list" como array de objeto contendo label (uso junto a prop list).
|
|
52
52
|
type: Boolean
|
|
53
53
|
|
|
54
|
+
empty-text:
|
|
55
|
+
desc: Texto a ser exibido no caso de não houver itens no "list" ou o "text" for vazio.
|
|
56
|
+
type: String
|
|
57
|
+
|
|
54
58
|
slots:
|
|
55
59
|
default:
|
|
56
60
|
desc: slot padrão que é utilizado para acessar o texto original (tanto o que é truncado quando o de dentro do dialog)
|
|
@@ -21,7 +21,7 @@ export const baseProps = {
|
|
|
21
21
|
},
|
|
22
22
|
|
|
23
23
|
gutter: {
|
|
24
|
-
default:
|
|
24
|
+
default: Spacing.Md,
|
|
25
25
|
type: [String, Boolean],
|
|
26
26
|
validator: gutterValidator
|
|
27
27
|
}
|
|
@@ -46,19 +46,13 @@ export default function ({ props = {} }) {
|
|
|
46
46
|
const classes = computed(() => {
|
|
47
47
|
const classesList = ['row']
|
|
48
48
|
|
|
49
|
-
if (
|
|
50
|
-
classesList.push(`q-col-gutter-${
|
|
49
|
+
if (props.gutter) {
|
|
50
|
+
classesList.push(`q-col-gutter-${props.gutter}`)
|
|
51
51
|
}
|
|
52
52
|
|
|
53
53
|
return classesList
|
|
54
54
|
})
|
|
55
55
|
|
|
56
|
-
const defaultGutter = computed(() => {
|
|
57
|
-
if (props.gutter) return props.gutter
|
|
58
|
-
|
|
59
|
-
return props.useInline ? Spacing.Md : Spacing.Lg
|
|
60
|
-
})
|
|
61
|
-
|
|
62
56
|
/**
|
|
63
57
|
* @function
|
|
64
58
|
* @param {Object} options
|
|
@@ -4,6 +4,8 @@ import hasParentByClassName from '../helpers/private/has-parent-by-class-name'
|
|
|
4
4
|
import { Notify } from 'quasar'
|
|
5
5
|
import { ref } from 'vue'
|
|
6
6
|
|
|
7
|
+
import naveNotificationSound from '../assets/sounds/nave-notification.mp3'
|
|
8
|
+
|
|
7
9
|
const callbackFunctions = {
|
|
8
10
|
onNotificationReceived: []
|
|
9
11
|
}
|
|
@@ -63,6 +65,8 @@ export default function () {
|
|
|
63
65
|
timeout: 30000
|
|
64
66
|
})
|
|
65
67
|
|
|
68
|
+
sendNotificationSound()
|
|
69
|
+
|
|
66
70
|
/**
|
|
67
71
|
* Função que é chamada quando o usuário clica na notificação, se a notificação
|
|
68
72
|
* tem link, então ele vai ser redirecionado para o link em uma nova aba, caso
|
|
@@ -96,6 +100,16 @@ export default function () {
|
|
|
96
100
|
</div>
|
|
97
101
|
`)
|
|
98
102
|
}
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* Função que toca o som de notificação.
|
|
106
|
+
*/
|
|
107
|
+
function sendNotificationSound () {
|
|
108
|
+
const audio = new Audio(naveNotificationSound)
|
|
109
|
+
|
|
110
|
+
// o áudio agora é reproduzível; reproduza-o se as permissões permitirem
|
|
111
|
+
audio.addEventListener('canplaythrough', audio.play)
|
|
112
|
+
}
|
|
99
113
|
}
|
|
100
114
|
|
|
101
115
|
return {
|
|
@@ -44,15 +44,15 @@
|
|
|
44
44
|
&--focused.q-field--labeled {
|
|
45
45
|
transition: transform var(--qas-generic-transition), font-size var(--qas-generic-transition);
|
|
46
46
|
|
|
47
|
-
.q-field__label {
|
|
47
|
+
&:not(&.qas-select--filter):not(&.qas-select--has-icon) .q-field__label {
|
|
48
48
|
transform: translateY(-10px) scale(0.85) !important;
|
|
49
49
|
}
|
|
50
50
|
|
|
51
|
-
.q-
|
|
52
|
-
|
|
53
|
-
transform: translateY(6px) !important;
|
|
51
|
+
&.qas-select--filter:not(&.qas-select--has-icon) .q-field__label {
|
|
52
|
+
transform: translateY(-8px) scale(0.85) !important;
|
|
54
53
|
}
|
|
55
54
|
|
|
55
|
+
.q-field__prepend,
|
|
56
56
|
.q-field__append {
|
|
57
57
|
transition: transform var(--qas-generic-transition);
|
|
58
58
|
transform: translateY(6px) !important;
|
|
@@ -65,8 +65,8 @@
|
|
|
65
65
|
|
|
66
66
|
&--float.qas-numeric-input--has-icon,
|
|
67
67
|
&--focused.qas-numeric-input--has-icon,
|
|
68
|
-
&--float.qas-select--has-icon,
|
|
69
|
-
&--focused.qas-select--has-icon,
|
|
68
|
+
&--float.qas-select--has-icon:not(.qas-select--filter),
|
|
69
|
+
&--focused.qas-select--has-icon:not(.qas-select--filter),
|
|
70
70
|
&--float.qas-input--has-icon,
|
|
71
71
|
&--focused.qas-input--has-icon {
|
|
72
72
|
.q-field__label {
|
|
@@ -74,6 +74,13 @@
|
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
76
|
|
|
77
|
+
&--float.qas-select--has-icon.qas-select--filter,
|
|
78
|
+
&--focused.qas-select--has-icon.qas-select--filter {
|
|
79
|
+
.q-field__label {
|
|
80
|
+
transform: translate(-24px, -8px) scale(0.85) !important;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
|
|
77
84
|
&--outlined .q-field__control {
|
|
78
85
|
background-color: white;
|
|
79
86
|
border-radius: $generic-border-radius;
|
|
@@ -27,13 +27,17 @@
|
|
|
27
27
|
|
|
28
28
|
&--clickable:not(&--active) {
|
|
29
29
|
color: $grey-10;
|
|
30
|
-
transition:
|
|
30
|
+
transition: var(--qas-generic-transition);
|
|
31
31
|
|
|
32
32
|
&:not(&.q-router-link--active):hover {
|
|
33
33
|
color: var(--q-primary-contrast);
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
36
|
|
|
37
|
+
&__label--caption {
|
|
38
|
+
transition: var(--qas-generic-transition);
|
|
39
|
+
}
|
|
40
|
+
|
|
37
41
|
&__section--avatar {
|
|
38
42
|
min-width: 0;
|
|
39
43
|
}
|
package/src/enums/Spacing.js
CHANGED
|
@@ -63,3 +63,36 @@ export const SpacingWithUnit = {
|
|
|
63
63
|
'4xl': '56px',
|
|
64
64
|
'5xl': '64px'
|
|
65
65
|
}
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Todas variáveis utilizadas para espaçamentos, com unidade de medida.
|
|
69
|
+
*
|
|
70
|
+
* @property
|
|
71
|
+
* @name SpacingWithUnit
|
|
72
|
+
* @readonly
|
|
73
|
+
* @enum
|
|
74
|
+
* @type {{
|
|
75
|
+
* None: 0,
|
|
76
|
+
* Xs: 4,
|
|
77
|
+
* Sm: 8,
|
|
78
|
+
* Md: 16,
|
|
79
|
+
* Lg: 24,
|
|
80
|
+
* Xl: 32,
|
|
81
|
+
* '2xl': 40,
|
|
82
|
+
* '3xl': 48,
|
|
83
|
+
* '4xl': 56,
|
|
84
|
+
* '5xl': 64
|
|
85
|
+
* }}
|
|
86
|
+
*/
|
|
87
|
+
export const SpacingWithNumber = {
|
|
88
|
+
None: 0,
|
|
89
|
+
Xs: 4,
|
|
90
|
+
Sm: 8,
|
|
91
|
+
Md: 16,
|
|
92
|
+
Lg: 24,
|
|
93
|
+
Xl: 32,
|
|
94
|
+
'2xl': 40,
|
|
95
|
+
'3xl': 48,
|
|
96
|
+
'4xl': 56,
|
|
97
|
+
'5xl': 64
|
|
98
|
+
}
|
|
@@ -7,10 +7,11 @@
|
|
|
7
7
|
* onMoveFn: function({ element: HTMLElement, event: MouseEvent | TouchEvent }),
|
|
8
8
|
* onScrollFn: function({ element: HTMLElement, event: Event })
|
|
9
9
|
* }} options
|
|
10
|
+
* @param {String} cancelMouseDownTarget
|
|
10
11
|
*
|
|
11
12
|
* @returns {{ element: HTMLElement, destroyEvents: function }}
|
|
12
13
|
*/
|
|
13
|
-
export default function (element, options = {}) {
|
|
14
|
+
export default function (element, options = {}, cancelMouseDownTarget) {
|
|
14
15
|
let isDown = false
|
|
15
16
|
let startX
|
|
16
17
|
let scrollLeft
|
|
@@ -46,6 +47,13 @@ export default function (element, options = {}) {
|
|
|
46
47
|
}
|
|
47
48
|
|
|
48
49
|
function onMouseEnter (event) {
|
|
50
|
+
/**
|
|
51
|
+
* closest busca ancestral mais próximo de um elemento, ou seja, verifica se no event que recebo, tenho a classe no qual nao se deve aplicar o grab.
|
|
52
|
+
*/
|
|
53
|
+
const targetElement = cancelMouseDownTarget ? event.target.closest(`.${cancelMouseDownTarget}`) : null
|
|
54
|
+
|
|
55
|
+
if (!!cancelMouseDownTarget && !!targetElement) return null
|
|
56
|
+
|
|
49
57
|
onEnter()
|
|
50
58
|
|
|
51
59
|
startX = event.pageX - element.offsetLeft
|