diff --git a/src/boot/defaults/qInput.js b/src/boot/defaults/qInput.js
new file mode 100644
index 000000000..299b98718
--- /dev/null
+++ b/src/boot/defaults/qInput.js
@@ -0,0 +1,4 @@
+import { QInput } from 'quasar';
+import setDefault from './setDefault';
+
+setDefault(QInput, 'dense', true);
diff --git a/src/boot/defaults/qSelect.js b/src/boot/defaults/qSelect.js
new file mode 100644
index 000000000..be0ba048a
--- /dev/null
+++ b/src/boot/defaults/qSelect.js
@@ -0,0 +1,4 @@
+import { QSelect } from 'quasar';
+import setDefault from './setDefault';
+
+setDefault(QSelect, 'dense', true);
diff --git a/src/boot/quasar.defaults.js b/src/boot/quasar.defaults.js
index c792100d7..9638e2057 100644
--- a/src/boot/quasar.defaults.js
+++ b/src/boot/quasar.defaults.js
@@ -1 +1,3 @@
export * from './defaults/qTable';
+export * from './defaults/qInput';
+export * from './defaults/qSelect';
diff --git a/src/components/common/VnDate.vue b/src/components/common/VnDate.vue
new file mode 100644
index 000000000..761ac995e
--- /dev/null
+++ b/src/components/common/VnDate.vue
@@ -0,0 +1,29 @@
+
+
+
+
+
diff --git a/src/components/common/VnInput.vue b/src/components/common/VnInput.vue
index d93ad7465..1246eedcd 100644
--- a/src/components/common/VnInput.vue
+++ b/src/components/common/VnInput.vue
@@ -130,24 +130,4 @@ const mixinRules = [
.q-field__append {
padding-inline: 0;
}
-
-.q-field__append.q-field__marginal.row.no-wrap.items-center.row {
- height: 20px;
-}
-.q-field--outlined .q-field__append.q-field__marginal.row.no-wrap.items-center.row {
- height: auto;
-}
-.q-field__control {
- height: unset;
-}
-
-.q-field--labeled {
- .q-field__native,
- .q-field__prefix,
- .q-field__suffix,
- .q-field__input {
- padding-bottom: 0;
- min-height: 15px;
- }
-}
diff --git a/src/components/common/VnInputDate.vue b/src/components/common/VnInputDate.vue
index 3d5afaf80..1aa797ab7 100644
--- a/src/components/common/VnInputDate.vue
+++ b/src/components/common/VnInputDate.vue
@@ -3,6 +3,7 @@ import { onMounted, watch, computed, ref } from 'vue';
import { date } from 'quasar';
import { useI18n } from 'vue-i18n';
import { useAttrs } from 'vue';
+import VnDate from './VnDate.vue';
const model = defineModel({ type: [String, Date] });
const $props = defineProps({
@@ -87,6 +88,11 @@ const styleAttrs = computed(() => {
}
: {};
});
+
+const manageDate = (date) => {
+ formattedDate.value = date;
+ isPopupOpen.value = false;
+};
@@ -129,6 +135,7 @@ const styleAttrs = computed(() => {
/>
{
:no-focus="true"
:no-parent-event="true"
>
- {
- formattedDate = date;
- isPopupOpen = false;
- }
- "
- />
+
+
+
+
diff --git a/src/components/common/VnInputTime.vue b/src/components/common/VnInputTime.vue
index a5e7d3002..6d69bc4a5 100644
--- a/src/components/common/VnInputTime.vue
+++ b/src/components/common/VnInputTime.vue
@@ -3,6 +3,8 @@ import { computed, ref, useAttrs } from 'vue';
import { useI18n } from 'vue-i18n';
import { date } from 'quasar';
import { useValidator } from 'src/composables/useValidator';
+import VnTime from './VnTime.vue';
+
const { validations } = useValidator();
const $attrs = useAttrs();
const model = defineModel({ type: String });
@@ -107,6 +109,7 @@ function dateToTime(newDate) {
/>
-
+
+
+
+
diff --git a/src/components/common/VnSelect.vue b/src/components/common/VnSelect.vue
index 84ab4b4b6..aa629767d 100644
--- a/src/components/common/VnSelect.vue
+++ b/src/components/common/VnSelect.vue
@@ -283,15 +283,4 @@ const getVal = (val) => ($props.useLike ? { like: `%${val}%` } : val);
.q-field--outlined {
max-width: 100%;
}
-.q-field__inner {
- .q-field__control {
- min-height: auto !important;
-
- display: flex;
- align-items: flex-end;
- .q-field__native.row {
- min-height: auto !important;
- }
- }
-}
diff --git a/src/components/common/VnTime.vue b/src/components/common/VnTime.vue
new file mode 100644
index 000000000..369f80432
--- /dev/null
+++ b/src/components/common/VnTime.vue
@@ -0,0 +1,16 @@
+
+
+
+
+
diff --git a/src/components/ui/CatalogItem.vue b/src/components/ui/CatalogItem.vue
index 545bfbbb4..7dca19770 100644
--- a/src/components/ui/CatalogItem.vue
+++ b/src/components/ui/CatalogItem.vue
@@ -31,7 +31,7 @@ const dialog = ref(null);
-
+
diff --git a/src/components/ui/VnPaginate.vue b/src/components/ui/VnPaginate.vue
index c6f57b479..80c607214 100644
--- a/src/components/ui/VnPaginate.vue
+++ b/src/components/ui/VnPaginate.vue
@@ -56,7 +56,7 @@ const props = defineProps({
},
offset: {
type: Number,
- default: 0,
+ default: undefined,
},
skeleton: {
type: Boolean,
diff --git a/src/components/ui/VnRow.vue b/src/components/ui/VnRow.vue
index 0df1fb7d4..16bcfab7d 100644
--- a/src/components/ui/VnRow.vue
+++ b/src/components/ui/VnRow.vue
@@ -9,7 +9,6 @@ defineProps({ wrap: { type: Boolean, default: false } });