added pnpm, vite, and typescript support

This commit is contained in:
2025-03-27 21:35:17 -05:00
parent 30683d268d
commit 52ac0566fd
12 changed files with 1071 additions and 12 deletions
+1
View File
@@ -1,3 +1,4 @@
frontend/dist
node_modules
build
test_data
+1 -6
View File
@@ -2,14 +2,9 @@
<html lang="en">
<head>
<!-- manually including wails runtime -->
<meta name="wails-options" content="noautoinject" />
<script src="/wails/ipc.js"></script>
<script src="/wails/runtime.js"></script>
<meta charset="UTF-8" />
<meta content="width=device-width, initial-scale=1.0" name="viewport" />
<link rel="stylesheet" type="text/css" href="/node_modules/@picocss/pico/css/pico.css">
<link rel="stylesheet" type="text/css" href="/node_modules/@picocss/pico/css/pico.min.css">
<title>yellowjacket</title>
</head>
<script src="/index.js" type="module"></script>
+9
View File
@@ -1,6 +1,15 @@
{
"scripts": {
"dev": "vite",
"build": "vite build",
"preview": "vite preview"
},
"dependencies": {
"@picocss/pico": "^2.1.1",
"lit": "^3.2.1"
},
"devDependencies": {
"ts-lit-plugin": "^2.0.2",
"vite": "^6.2.3"
}
}
+1 -1
View File
@@ -1 +1 @@
59a625b8cd99cd466065cf0b9e6893e0
038a4fcd825344f08c63dbe40f42865f
+980
View File
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,33 @@
import { LitElement, html } from 'lit';
import { customElement } from 'lit/decorators.js';
import { Play } from '@go/player/Player';
const audioPlayer = (text: string, disabled: boolean) => html`
<p>Welcome to the Lit tutorial!</p>
<h
`;
@customElement('audio-player')
export class AudioPlayer extends LitElement {
render() {
return audioPlayer;
}
onPlayPauseButtonClick = function() {
let playPauseButtonIcon = document.getElementById("playPauseButtonIcon");
try {
Play().then((result) => {
console.log(result)
playPauseButtonIcon.setAttribute("src", "/src/assets/images/icons/music/pause-solid.svg")
}).catch((err) => {
console.log("There is an error with playing")
console.error(err);
});
}
catch (err) {
console.error(err);
}
}
}
-1
View File
@@ -19,7 +19,6 @@ window.dirPicker = function() {
try {
DirectoryPicker()
.then((result) => {
if (result.length === 0 ) { };
window.updateLibraryDirLabel(result); })
.catch((err) => {
console.error("There is an error with directory picker: " + err);
+12
View File
@@ -0,0 +1,12 @@
import { defineConfig } from "vite";
import path from "path";
export default defineConfig({
resolve: {
alias: {
"@go": path.resolve(__dirname, "./wailsjs/go"),
"@components": path.resolve(__dirname, "./src/components"),
"@assets": path.resolve(__dirname, "./src/assets"),
},
},
});
+1 -1
View File
@@ -19,7 +19,7 @@ import (
"github.com/wailsapp/wails/v2/pkg/options/windows"
)
//go:embed all:frontend
//go:embed all:frontend/dist
var assets embed.FS
func main() {
+30
View File
@@ -0,0 +1,30 @@
{
"compilerOptions": {
"isolatedModules": true,
"baseUrl": "./frontend",
"allowJs": true,
"checkJs": true,
"noEmit": true,
"target": "ES2022",
"module": "ESNext",
"lib": [
"es2022",
"dom"
],
"declaration": true,
"declarationMap": true,
"experimentalDecorators": true,
"useDefineForClassFields": false,
"moduleResolution": "node",
"plugins": [
{
"name": "ts-lit-plugin"
}
],
"paths": {
"@go/*": ["wailsjs/go/*"],
"@components/*": ["src/components/*"],
"@assets/*": ["src/assets/*"],
}
}
}
+3 -3
View File
@@ -3,9 +3,9 @@
"name": "yellowjacket",
"outputfilename": "yellowjacket",
"frontend:install": "pnpm install",
"frontend:build": "",
"frontend:dev:watcher": "inotifywait -m -e modify,create,delete,move -r .",
"frontend:dev:serverUrl": "",
"frontend:build": "pnpm build",
"frontend:dev:watcher": "pnpm dev",
"frontend:dev:serverUrl": "auto",
"author": {
"name": "",
"email": ""