From 06220e6b30ac6b3d5af2d5a6a09303c4f97e002e Mon Sep 17 00:00:00 2001 From: "Chen, Tai-Lin" Date: Mon, 31 Jul 2023 12:02:12 +0800 Subject: [PATCH] import fontawesome api --- app/package.json | 5 ++ app/src/App.vue | 146 +++++++++++++++++------------------------------ app/src/main.js | 41 ++++++++++++- yarn.lock | 38 ++++++++++++ 4 files changed, 135 insertions(+), 95 deletions(-) diff --git a/app/package.json b/app/package.json index fa0ccb3..02eee07 100644 --- a/app/package.json +++ b/app/package.json @@ -9,6 +9,11 @@ "preview": "vite preview" }, "dependencies": { + "@fortawesome/fontawesome-svg-core": "^6.4.0", + "@fortawesome/free-brands-svg-icons": "^6.4.0", + "@fortawesome/free-regular-svg-icons": "^6.4.0", + "@fortawesome/free-solid-svg-icons": "^6.4.0", + "@fortawesome/vue-fontawesome": "^3.0.3", "vue": "^3.3.4" }, "devDependencies": { diff --git a/app/src/App.vue b/app/src/App.vue index 45ee258..ba85682 100644 --- a/app/src/App.vue +++ b/app/src/App.vue @@ -8,7 +8,8 @@ fetch('https://odyssey.wancat.cc/api/v1/quests/helloworld') .then((res) => res.json()) .then((json) => { data.value = JSON.stringify(json.content) - }).catch((err) => { + }) + .catch((err) => { error.value = err }) @@ -19,18 +20,17 @@ fetch('https://odyssey.wancat.cc/api/v1/quests/helloworld') @@ -87,26 +69,18 @@ fetch('https://odyssey.wancat.cc/api/v1/quests/helloworld')

Try Your First Command


-

-

{{ error.message }}
-
- {{ data }} -
-
Loading...
-

+
+

{{ error.message }}

+

{{ data }}

+

Loading...

+

- - - +

Command Cheatsheets

No Available Command

@@ -116,7 +90,8 @@ fetch('https://odyssey.wancat.cc/api/v1/quests/helloworld')
- + +

zeko@first-command:~$ @@ -124,10 +99,11 @@ fetch('https://odyssey.wancat.cc/api/v1/quests/helloworld')

- + +

Hint

Type command in the terminal above.

@@ -146,42 +122,24 @@ fetch('https://odyssey.wancat.cc/api/v1/quests/helloworld') class="h-[10%] p-3 grid grid-cols-3 gap-4 place-content-between" >
diff --git a/app/src/main.js b/app/src/main.js index 2425c0f..36660cd 100644 --- a/app/src/main.js +++ b/app/src/main.js @@ -2,4 +2,43 @@ import { createApp } from 'vue' import './style.css' import App from './App.vue' -createApp(App).mount('#app') +/* import the fontawesome core */ +import { library } from '@fortawesome/fontawesome-svg-core' + +/* import font awesome icon component */ +import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome' + +/* import specific icons */ +import { + faBarsStaggered, + faArrowLeft, + faList, + faGear, + faTriangleExclamation, + faExpand, + faTerminal, + faArrowRotateLeft, +} from '@fortawesome/free-solid-svg-icons' + +import { + faLightbulb, + faCircleQuestion, + faCircleRight, +} from '@fortawesome/free-regular-svg-icons' + +/* add icons to the library */ +library.add( + faBarsStaggered, + faArrowLeft, + faTriangleExclamation, + faGear, + faExpand, + faList, + faLightbulb, + faCircleQuestion, + faArrowRotateLeft, + faCircleRight, + faTerminal +) + +createApp(App).component('font-awesome-icon', FontAwesomeIcon).mount('#app') diff --git a/yarn.lock b/yarn.lock index c888fdb..63c11ae 100644 --- a/yarn.lock +++ b/yarn.lock @@ -453,6 +453,44 @@ resolved "https://registry.yarnpkg.com/@eslint/js/-/js-8.44.0.tgz#961a5903c74139390478bdc808bcde3fc45ab7af" integrity sha512-Ag+9YM4ocKQx9AarydN0KY2j0ErMHNIocPDrVo8zAE44xLTjEtz81OdR68/cydGtk6m6jDb5Za3r2useMzYmSw== +"@fortawesome/fontawesome-common-types@6.4.0": + version "6.4.0" + resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.4.0.tgz#88da2b70d6ca18aaa6ed3687832e11f39e80624b" + integrity sha512-HNii132xfomg5QVZw0HwXXpN22s7VBHQBv9CeOu9tfJnhsWQNd2lmTNi8CSrnw5B+5YOmzu1UoPAyxaXsJ6RgQ== + +"@fortawesome/fontawesome-svg-core@^6.4.0": + version "6.4.0" + resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.4.0.tgz#3727552eff9179506e9203d72feb5b1063c11a21" + integrity sha512-Bertv8xOiVELz5raB2FlXDPKt+m94MQ3JgDfsVbrqNpLU9+UE2E18GKjLKw+d3XbeYPqg1pzyQKGsrzbw+pPaw== + dependencies: + "@fortawesome/fontawesome-common-types" "6.4.0" + +"@fortawesome/free-brands-svg-icons@^6.4.0": + version "6.4.0" + resolved "https://registry.yarnpkg.com/@fortawesome/free-brands-svg-icons/-/free-brands-svg-icons-6.4.0.tgz#c785cf5563231eadc5ef5f8cd0274e0b8920433f" + integrity sha512-qvxTCo0FQ5k2N+VCXb/PZQ+QMhqRVM4OORiO6MXdG6bKolIojGU/srQ1ptvKk0JTbRgaJOfL2qMqGvBEZG7Z6g== + dependencies: + "@fortawesome/fontawesome-common-types" "6.4.0" + +"@fortawesome/free-regular-svg-icons@^6.4.0": + version "6.4.0" + resolved "https://registry.yarnpkg.com/@fortawesome/free-regular-svg-icons/-/free-regular-svg-icons-6.4.0.tgz#cacc53bd8d832d46feead412d9ea9ce80a55e13a" + integrity sha512-ZfycI7D0KWPZtf7wtMFnQxs8qjBXArRzczABuMQqecA/nXohquJ5J/RCR77PmY5qGWkxAZDxpnUFVXKwtY/jPw== + dependencies: + "@fortawesome/fontawesome-common-types" "6.4.0" + +"@fortawesome/free-solid-svg-icons@^6.4.0": + version "6.4.0" + resolved "https://registry.yarnpkg.com/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.4.0.tgz#48c0e790847fa56299e2f26b82b39663b8ad7119" + integrity sha512-kutPeRGWm8V5dltFP1zGjQOEAzaLZj4StdQhWVZnfGFCvAPVvHh8qk5bRrU4KXnRRRNni5tKQI9PBAdI6MP8nQ== + dependencies: + "@fortawesome/fontawesome-common-types" "6.4.0" + +"@fortawesome/vue-fontawesome@^3.0.3": + version "3.0.3" + resolved "https://registry.yarnpkg.com/@fortawesome/vue-fontawesome/-/vue-fontawesome-3.0.3.tgz#633e2998d11f7d4ed41f0d5ea461a22ec9b9d034" + integrity sha512-KCPHi9QemVXGMrfuwf3nNnNo129resAIQWut9QTAMXmXqL2ErABC6ohd2yY5Ipq0CLWNbKHk8TMdTXL/Zf3ZhA== + "@humanwhocodes/config-array@^0.11.10": version "0.11.10" resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.10.tgz#5a3ffe32cc9306365fb3fd572596cd602d5e12d2"