From 0987907d3defe3e45e58a475124d06435d82dd53 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Raimund=20Schl=C3=BC=C3=9Fler?= Date: Mon, 9 Oct 2023 21:16:02 +0200 Subject: [PATCH] feat(NcDateTimePicker): migrate to vue 3 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Raimund Schlüßler --- .eslintrc.js | 1 - package-lock.json | 18 ++++++++++ package.json | 1 + .../NcDateTimePicker/NcDateTimePicker.vue | 34 +++++++++---------- src/components/NcDateTimePicker/index.js | 7 +--- src/components/NcDateTimePicker/index.scss | 2 +- .../NcDateTimePickerNative.vue | 5 +-- .../NcDateTimePickerNative/index.js | 7 +--- .../NcTimezonePicker/NcTimezonePicker.vue | 15 ++++---- src/components/index.js | 4 +-- src/utils/ScopeComponent.js | 2 ++ styleguide.config.js | 5 +-- 12 files changed, 55 insertions(+), 46 deletions(-) diff --git a/.eslintrc.js b/.eslintrc.js index 048a2ff91f..6b51eae605 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -15,7 +15,6 @@ module.exports = { 'cypress', ], ignorePatterns: [ - 'src/components/NcDateTimePicker/*.vue', 'src/components/NcAction*/*.vue', 'src/components/NcAppContent*/*.vue', 'src/components/NcAppNavigation*/*.vue', diff --git a/package-lock.json b/package-lock.json index c221fc8fcc..3b6acd32fa 100644 --- a/package-lock.json +++ b/package-lock.json @@ -46,6 +46,7 @@ "unist-builder": "^4.0.0", "unist-util-visit": "^5.0.0", "vue": "^3.3.4", + "vue-datepicker-next": "^1.0.3", "vue-material-design-icons": "^5.1.2", "vue-select": "^4.0.0-beta.6" }, @@ -9626,6 +9627,11 @@ "node": ">=14" } }, + "node_modules/date-format-parse": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/date-format-parse/-/date-format-parse-0.2.7.tgz", + "integrity": "sha512-/+lyMUKoRogMuTeOVii6lUwjbVlesN9YRYLzZT/g3TEZ3uD9QnpjResujeEqUW+OSNbT7T1+SYdyEkTcRv+KDQ==" + }, "node_modules/dayjs": { "version": "1.11.10", "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.10.tgz", @@ -27081,6 +27087,18 @@ "integrity": "sha512-6bnLkn8O0JJyiFSIF0EfCogzeqNXpnjJ0vW/SZzNHfe6sPx30lTtTXlE5TFs2qhJlAtDFybStVNpL73cPe3OMQ==", "dev": true }, + "node_modules/vue-datepicker-next": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/vue-datepicker-next/-/vue-datepicker-next-1.0.3.tgz", + "integrity": "sha512-Brqjh896BJGVxP7d6tGDsPMu0SDAB8hAdtG7zWF8VIHJB21dk1VB9KgdajD9Y9uXbg+wHN0vmL7sbMPIyehQVQ==", + "dependencies": { + "date-format-parse": "^0.2.7", + "vue": "^3.0.0" + }, + "peerDependencies": { + "vue": "^3.0.0" + } + }, "node_modules/vue-docgen-api": { "version": "4.74.1", "resolved": "https://registry.npmjs.org/vue-docgen-api/-/vue-docgen-api-4.74.1.tgz", diff --git a/package.json b/package.json index ee2543f9e2..89ed21746f 100644 --- a/package.json +++ b/package.json @@ -97,6 +97,7 @@ "unist-builder": "^4.0.0", "unist-util-visit": "^5.0.0", "vue": "^3.3.4", + "vue-datepicker-next": "^1.0.3", "vue-material-design-icons": "^5.1.2", "vue-select": "^4.0.0-beta.6" }, diff --git a/src/components/NcDateTimePicker/NcDateTimePicker.vue b/src/components/NcDateTimePicker/NcDateTimePicker.vue index 3eac6b4f08..40836ee605 100644 --- a/src/components/NcDateTimePicker/NcDateTimePicker.vue +++ b/src/components/NcDateTimePicker/NcDateTimePicker.vue @@ -21,7 +21,7 @@ --> -> We're wrapping the awesome datepicker library here https://github.com/mengxiong10/vue2-datepicker +> We're wrapping the awesome datepicker library here https://github.com/mengxiong10/vue-datepicker-next > Please check there for all the available options. ### Defaults @@ -105,7 +105,7 @@ picked time zone, but you will have to convert it yourself when necessary. v-model="time" type="datetime" :show-timezone-select="true" - :timezone-id.sync="tz" />
+ v-model:timezone-id="tz" />
{{ time }} | {{ tz }} @@ -134,15 +134,13 @@ export default { :popup-class="{ 'show-week-number': showWeekNumber }" :show-week-number="showWeekNumber" :type="type" - :value="value" - v-bind="$attrs" - v-on="$listeners" + :value="modelValue" @select-year="handleSelectYear" @select-month="handleSelectMonth" - @update:value="$emit('update:value', value)"> + @update:value="$emit('update:modelValue', $event)">