"name": "frontend",
"version": "0.0.0",
"dependencies": {
+ "@fortawesome/fontawesome-svg-core": "^6.7.2",
+ "@fortawesome/free-solid-svg-icons": "^6.7.2",
+ "@fortawesome/vue-fontawesome": "^3.0.8",
"axios": "^1.10.0",
"bulma": "^1.0.4",
"pinia": "^3.0.3",
"node": ">=18"
}
},
+ "node_modules/@fortawesome/fontawesome-common-types": {
+ "version": "6.7.2",
+ "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.7.2.tgz",
+ "integrity": "sha512-Zs+YeHUC5fkt7Mg1l6XTniei3k4bwG/yo3iFUtZWd/pMx9g3fdvkSK9E0FOC+++phXOka78uJcYb8JaFkW52Xg==",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/@fortawesome/fontawesome-svg-core": {
+ "version": "6.7.2",
+ "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.7.2.tgz",
+ "integrity": "sha512-yxtOBWDrdi5DD5o1pmVdq3WMCvnobT0LU6R8RyyVXPvFRd2o79/0NCuQoCjNTeZz9EzA9xS3JxNWfv54RIHFEA==",
+ "dependencies": {
+ "@fortawesome/fontawesome-common-types": "6.7.2"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/@fortawesome/free-solid-svg-icons": {
+ "version": "6.7.2",
+ "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.7.2.tgz",
+ "integrity": "sha512-GsBrnOzU8uj0LECDfD5zomZJIjrPhIlWU82AHwa2s40FKH+kcxQaBvBo3Z4TxyZHIyX8XTDxsyA33/Vx9eFuQA==",
+ "dependencies": {
+ "@fortawesome/fontawesome-common-types": "6.7.2"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/@fortawesome/vue-fontawesome": {
+ "version": "3.0.8",
+ "resolved": "https://registry.npmjs.org/@fortawesome/vue-fontawesome/-/vue-fontawesome-3.0.8.tgz",
+ "integrity": "sha512-yyHHAj4G8pQIDfaIsMvQpwKMboIZtcHTUvPqXjOHyldh1O1vZfH4W03VDPv5RvI9P6DLTzJQlmVgj9wCf7c2Fw==",
+ "peerDependencies": {
+ "@fortawesome/fontawesome-svg-core": "~1 || ~6",
+ "vue": ">= 3.0.0 < 4"
+ }
+ },
"node_modules/@intlify/core-base": {
"version": "11.1.6",
"resolved": "https://registry.npmjs.org/@intlify/core-base/-/core-base-11.1.6.tgz",
"type-check": "vue-tsc --build"
},
"dependencies": {
+ "@fortawesome/fontawesome-svg-core": "^6.7.2",
+ "@fortawesome/free-solid-svg-icons": "^6.7.2",
+ "@fortawesome/vue-fontawesome": "^3.0.8",
"axios": "^1.10.0",
"bulma": "^1.0.4",
"pinia": "^3.0.3",
--- /dev/null
+// Import the icon library
+import { library } from "@fortawesome/fontawesome-svg-core";
+
+// Only import the icons we actually need
+import {
+ faLock,
+ faUser,
+} from "@fortawesome/free-solid-svg-icons";
+
+// Add them all to the library
+library.add(
+ faLock,
+ faUser,
+)
})
)
+// Import icons
+import "./icons"
+
+// Import FontAwesome
+import { FontAwesomeIcon } from "@fortawesome/vue-fontawesome";
+
// Authentication
import { useAuthStore } from '@/stores/auth';
const auth = useAuthStore();
// Fetch authentication credentials and the mount the app
auth.restore().finally(() => {
+ // Add the component to show FontAwesome Icons
+ app.component("FontAwesomeIcon", FontAwesomeIcon);
app.mount("#app")
});