diff --git a/apps/component-calling/index.html b/apps/component-calling/index.html new file mode 100644 index 000000000..d8e0ffd22 --- /dev/null +++ b/apps/component-calling/index.html @@ -0,0 +1,23 @@ + + + + + Component Calling by Project AIRI Team + + + + + + +
+ + + + diff --git a/apps/component-calling/netlify.toml b/apps/component-calling/netlify.toml new file mode 100755 index 000000000..900a505ed --- /dev/null +++ b/apps/component-calling/netlify.toml @@ -0,0 +1,14 @@ +[build] +base = "/" +command = "pnpm -F @proj-airi/stream-vue-components... run build" +publish = "/apps/stream-vue-components/dist" + +[build.environment] +NODE_VERSION = "24.3.0" +NODE_OPTIONS = "--max-old-space-size=4096" + +[[redirects]] +from = "/*" +to = "/index.html" +status = 200 +force = false diff --git a/apps/component-calling/package.json b/apps/component-calling/package.json new file mode 100644 index 000000000..01752822c --- /dev/null +++ b/apps/component-calling/package.json @@ -0,0 +1,47 @@ +{ + "name": "@proj-airi/component-calling", + "type": "module", + "private": true, + "description": "Realtime audio", + "author": { + "name": "Moeru AI Project AIRI Team", + "email": "airi@moeru.ai", + "url": "https://github.com/moeru-ai" + }, + "license": "MIT", + "repository": { + "type": "git", + "url": "https://github.com/moeru-ai/airi.git", + "directory": "apps/component-calling" + }, + "scripts": { + "dev": "vite", + "build": "vite build", + "preview": "vite preview", + "typecheck": "vue-tsc --noEmit" + }, + "dependencies": { + "@proj-airi/ui": "workspace:^", + "@valibot/to-json-schema": "1.0.0-rc.0", + "@vueuse/core": "^13.5.0", + "@xsai/generate-text": "catalog:", + "@xsai/shared-chat": "catalog:", + "@xsai/stream-text": "catalog:", + "es-toolkit": "^1.39.7", + "valibot": "1.0.0-beta.9", + "vue": "^3.5.17", + "xsschema": "catalog:" + }, + "devDependencies": { + "@iconify-json/solar": "^1.2.2", + "@iconify-json/svg-spinners": "^1.2.2", + "@types/xast": "^2.0.4", + "@unocss/reset": "^66.3.3", + "@vitejs/plugin-vue": "^6.0.0", + "superjson": "^2.2.2", + "unplugin-vue-router": "^0.14.0", + "vite": "catalog:rolldown-vite", + "vue-router": "^4.5.1", + "vue-tsc": "^3.0.3" + } +} diff --git a/apps/component-calling/public/apple-touch-icon.png b/apps/component-calling/public/apple-touch-icon.png new file mode 100644 index 000000000..e3bfed969 Binary files /dev/null and b/apps/component-calling/public/apple-touch-icon.png differ diff --git a/apps/component-calling/public/favicon.ico b/apps/component-calling/public/favicon.ico new file mode 100644 index 000000000..a47f8f675 Binary files /dev/null and b/apps/component-calling/public/favicon.ico differ diff --git a/apps/component-calling/public/favicon.svg b/apps/component-calling/public/favicon.svg new file mode 100644 index 000000000..eae728aa1 --- /dev/null +++ b/apps/component-calling/public/favicon.svg @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/apps/component-calling/public/maskable_icon_x192.png b/apps/component-calling/public/maskable_icon_x192.png new file mode 100644 index 000000000..106e21b24 Binary files /dev/null and b/apps/component-calling/public/maskable_icon_x192.png differ diff --git a/apps/component-calling/public/maskable_icon_x512.png b/apps/component-calling/public/maskable_icon_x512.png new file mode 100644 index 000000000..97da486e5 Binary files /dev/null and b/apps/component-calling/public/maskable_icon_x512.png differ diff --git a/apps/component-calling/public/web-app-manifest-192x192.png b/apps/component-calling/public/web-app-manifest-192x192.png new file mode 100644 index 000000000..c046e5331 Binary files /dev/null and b/apps/component-calling/public/web-app-manifest-192x192.png differ diff --git a/apps/component-calling/public/web-app-manifest-512x512.png b/apps/component-calling/public/web-app-manifest-512x512.png new file mode 100644 index 000000000..e92eb2fd7 Binary files /dev/null and b/apps/component-calling/public/web-app-manifest-512x512.png differ diff --git a/apps/component-calling/src/App.vue b/apps/component-calling/src/App.vue new file mode 100644 index 000000000..748a0ce59 --- /dev/null +++ b/apps/component-calling/src/App.vue @@ -0,0 +1,56 @@ + + + + + diff --git a/apps/component-calling/src/main.ts b/apps/component-calling/src/main.ts new file mode 100644 index 000000000..934946054 --- /dev/null +++ b/apps/component-calling/src/main.ts @@ -0,0 +1,14 @@ +import { createApp } from 'vue' +import { createRouter, createWebHashHistory } from 'vue-router' +import { routes } from 'vue-router/auto-routes' + +import App from './App.vue' + +import '@unocss/reset/tailwind.css' +import 'uno.css' + +const router = createRouter({ routes, history: createWebHashHistory() }) + +createApp(App) + .use(router) + .mount('#app') diff --git a/apps/component-calling/src/pages/index.vue b/apps/component-calling/src/pages/index.vue new file mode 100644 index 000000000..6ba7e0149 --- /dev/null +++ b/apps/component-calling/src/pages/index.vue @@ -0,0 +1,480 @@ + + +