diff --git a/.gitignore b/.gitignore index b2b3d5060..68cbc4e82 100644 --- a/.gitignore +++ b/.gitignore @@ -36,4 +36,6 @@ pnpm-debug.log* /playwright/.cache/ /dist-electron-build/ /dist-capacitor/ -/test-playwright-results/ \ No newline at end of file +/test-playwright-results/ +playwright-tests +test-playwright \ No newline at end of file diff --git a/src/lib/fontawesome.ts b/src/lib/fontawesome.ts new file mode 100644 index 000000000..8d7a8a07d --- /dev/null +++ b/src/lib/fontawesome.ts @@ -0,0 +1,168 @@ +/** + * @file Font Awesome Icon Library Configuration + * @description Centralizes Font Awesome icon imports and library configuration + * @author Matthew Raymer + */ + +import { library } from "@fortawesome/fontawesome-svg-core"; +import { + faArrowDown, + faArrowLeft, + faArrowRight, + faArrowRotateBackward, + faArrowUpRightFromSquare, + faArrowUp, + faBan, + faBitcoinSign, + faBurst, + faCalendar, + faCamera, + faCaretDown, + faChair, + faCheck, + faChevronDown, + faChevronLeft, + faChevronRight, + faChevronUp, + faCircle, + faCircleCheck, + faCircleInfo, + faCircleQuestion, + faCircleUser, + faClock, + faCoins, + faComment, + faCopy, + faDollar, + faEllipsis, + faEllipsisVertical, + faEnvelopeOpenText, + faEraser, + faEye, + faEyeSlash, + faFileContract, + faFileLines, + faFilter, + faFloppyDisk, + faFolderOpen, + faForward, + faGift, + faGlobe, + faHammer, + faHand, + faHandHoldingDollar, + faHandHoldingHeart, + faHouseChimney, + faImagePortrait, + faLeftRight, + faLightbulb, + faLink, + faLocationDot, + faLongArrowAltLeft, + faLongArrowAltRight, + faMagnifyingGlass, + faMessage, + faMinus, + faPen, + faPersonCircleCheck, + faPersonCircleQuestion, + faPlus, + faQuestion, + faQrcode, + faRightFromBracket, + faRotate, + faShareNodes, + faSpinner, + faSquare, + faSquareCaretDown, + faSquareCaretUp, + faSquarePlus, + faTrashCan, + faTriangleExclamation, + faUser, + faUsers, + faXmark, +} from "@fortawesome/free-solid-svg-icons"; + +// Initialize Font Awesome library with all required icons +library.add( + faArrowDown, + faArrowLeft, + faArrowRight, + faArrowRotateBackward, + faArrowUpRightFromSquare, + faArrowUp, + faBan, + faBitcoinSign, + faBurst, + faCalendar, + faCamera, + faCaretDown, + faChair, + faCheck, + faChevronDown, + faChevronLeft, + faChevronRight, + faChevronUp, + faCircle, + faCircleCheck, + faCircleInfo, + faCircleQuestion, + faCircleUser, + faClock, + faCoins, + faComment, + faCopy, + faDollar, + faEllipsis, + faEllipsisVertical, + faEnvelopeOpenText, + faEraser, + faEye, + faEyeSlash, + faFileContract, + faFileLines, + faFilter, + faFloppyDisk, + faFolderOpen, + faForward, + faGift, + faGlobe, + faHammer, + faHand, + faHandHoldingDollar, + faHandHoldingHeart, + faHouseChimney, + faImagePortrait, + faLeftRight, + faLightbulb, + faLink, + faLocationDot, + faLongArrowAltLeft, + faLongArrowAltRight, + faMagnifyingGlass, + faMessage, + faMinus, + faPen, + faPersonCircleCheck, + faPersonCircleQuestion, + faPlus, + faQrcode, + faQuestion, + faRotate, + faRightFromBracket, + faShareNodes, + faSpinner, + faSquare, + faSquareCaretDown, + faSquareCaretUp, + faSquarePlus, + faTrashCan, + faTriangleExclamation, + faUser, + faUsers, + faXmark, +); + +// Export the FontAwesomeIcon component for use in other files +export { FontAwesomeIcon } from "@fortawesome/vue-fontawesome"; diff --git a/src/main.ts b/src/main.ts index 1e6af9608..eccfa6e70 100644 --- a/src/main.ts +++ b/src/main.ts @@ -6,169 +6,8 @@ import router from "./router"; import axios from "axios"; import VueAxios from "vue-axios"; import Notifications from "notiwind"; - import "./assets/styles/tailwind.css"; - -import { library } from "@fortawesome/fontawesome-svg-core"; -import { - faArrowDown, - faArrowLeft, - faArrowRight, - faArrowRotateBackward, - faArrowUpRightFromSquare, - faArrowUp, - faBan, - faBitcoinSign, - faBurst, - faCalendar, - faCamera, - faCaretDown, - faChair, - faCheck, - faChevronDown, - faChevronLeft, - faChevronRight, - faChevronUp, - faCircle, - faCircleCheck, - faCircleInfo, - faCircleQuestion, - faCircleUser, - faClock, - faCoins, - faComment, - faCopy, - faDollar, - faEllipsis, - faEllipsisVertical, - faEnvelopeOpenText, - faEraser, - faEye, - faEyeSlash, - faFileContract, - faFileLines, - faFilter, - faFloppyDisk, - faFolderOpen, - faForward, - faGift, - faGlobe, - faHammer, - faHand, - faHandHoldingDollar, - faHandHoldingHeart, - faHouseChimney, - faImagePortrait, - faLeftRight, - faLightbulb, - faLink, - faLocationDot, - faLongArrowAltLeft, - faLongArrowAltRight, - faMagnifyingGlass, - faMessage, - faMinus, - faPen, - faPersonCircleCheck, - faPersonCircleQuestion, - faPlus, - faQuestion, - faQrcode, - faRightFromBracket, - faRotate, - faShareNodes, - faSpinner, - faSquare, - faSquareCaretDown, - faSquareCaretUp, - faSquarePlus, - faTrashCan, - faTriangleExclamation, - faUser, - faUsers, - faXmark, -} from "@fortawesome/free-solid-svg-icons"; - -library.add( - faArrowDown, - faArrowLeft, - faArrowRight, - faArrowRotateBackward, - faArrowUpRightFromSquare, - faArrowUp, - faBan, - faBitcoinSign, - faBurst, - faCalendar, - faCamera, - faCaretDown, - faChair, - faCheck, - faChevronDown, - faChevronLeft, - faChevronRight, - faChevronUp, - faCircle, - faCircleCheck, - faCircleInfo, - faCircleQuestion, - faCircleUser, - faClock, - faCoins, - faComment, - faCopy, - faDollar, - faEllipsis, - faEllipsisVertical, - faEnvelopeOpenText, - faEraser, - faEye, - faEyeSlash, - faFileContract, - faFileLines, - faFilter, - faFloppyDisk, - faFolderOpen, - faForward, - faGift, - faGlobe, - faHammer, - faHand, - faHandHoldingDollar, - faHandHoldingHeart, - faHouseChimney, - faImagePortrait, - faLeftRight, - faLightbulb, - faLink, - faLocationDot, - faLongArrowAltLeft, - faLongArrowAltRight, - faMagnifyingGlass, - faMessage, - faMinus, - faPen, - faPersonCircleCheck, - faPersonCircleQuestion, - faPlus, - faQrcode, - faQuestion, - faRotate, - faRightFromBracket, - faShareNodes, - faSpinner, - faSquare, - faSquareCaretDown, - faSquareCaretUp, - faSquarePlus, - faTrashCan, - faTriangleExclamation, - faUser, - faUsers, - faXmark, -); - -import { FontAwesomeIcon } from "@fortawesome/vue-fontawesome"; +import { FontAwesomeIcon } from "./lib/fontawesome"; import Camera from "simple-vue-camera"; // Can trigger this with a 'throw' inside some top-level function, eg. on the HomeView @@ -197,7 +36,7 @@ function setupGlobalErrorHandler(app: VueApp) { ); }; } -// console.log("Bootstrapping Vue app..."); + const app = createApp(App) .component("fa", FontAwesomeIcon) .component("camera", Camera) @@ -209,4 +48,3 @@ const app = createApp(App) setupGlobalErrorHandler(app); app.mount("#app"); -// console.log("Vue app mounted.");