diff --git a/package-lock.json b/package-lock.json
index 69ce5b8..229607c 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -5908,6 +5908,11 @@
"integrity": "sha1-Ila94U02MpWMRl68ltxGfKB6Kfs=",
"dev": true
},
+ "gsap": {
+ "version": "3.5.1",
+ "resolved": "https://registry.npmjs.org/gsap/-/gsap-3.5.1.tgz",
+ "integrity": "sha512-EMV0RSUKZNeTUzLKAizGlwxVOUyif3/g8I3S1aA/hf3gbqwBvmQ02x1RdTBQNQMOpHCVBv9y/vaHwfctoAg8zw=="
+ },
"gzip-size": {
"version": "5.1.1",
"resolved": "https://registry.npm.taobao.org/gzip-size/download/gzip-size-5.1.1.tgz",
diff --git a/package.json b/package.json
index ff0eb5d..8be17e4 100644
--- a/package.json
+++ b/package.json
@@ -10,6 +10,7 @@
"dependencies": {
"axios": "^0.20.0",
"core-js": "^3.6.5",
+ "gsap": "^3.5.1",
"jspdf": "^2.1.0",
"vue": "^2.6.11",
"vue-axios": "^2.1.5",
diff --git a/src/components/FontSelector.vue b/src/components/FontSelector.vue
index f82f22c..828ba89 100644
--- a/src/components/FontSelector.vue
+++ b/src/components/FontSelector.vue
@@ -7,7 +7,7 @@
- {{ results.length }} ({{ shown.length }})
+ {{ animatedResults }}
@@ -67,6 +67,10 @@
.scroll-area {
position: relative;
}
+
+ .md-field {
+ margin-top: 0.25em;
+ }
}
.md-menu-content {
@@ -78,6 +82,7 @@
import axios from 'axios';
import InfiniteLoading from 'vue-infinite-loading';
import vueCustomScrollbar from 'vue-custom-scrollbar'
+import { gsap } from "gsap";
axios.baseURL = '';
@@ -92,7 +97,8 @@ export default {
visible: false,
shown: [],
search: "",
- selectedFont: null
+ selectedFont: null,
+ tweenedResults: 0,
}),
methods: {
toggle() {
@@ -137,6 +143,9 @@ export default {
return this.fonts.items
else
return []
+ },
+ animatedResults() {
+ return this.tweenedResults.toFixed(0);
}
},
watch: {
@@ -150,6 +159,9 @@ export default {
let min = this.shown.length;
this.shown = this.results.slice(0, Math.min(min, 5) + 1);
}
+ },
+ results: function (newValue) {
+ gsap.to(this.$data, {duration: 0.35, tweenedResults: newValue.length, ease: "power4"});
}
}
}