diff --git a/README.md b/README.md index f162c583..329b5914 100644 --- a/README.md +++ b/README.md @@ -42,4 +42,6 @@ To start desktop development, run: ``` pnpm tauri dev + +pnpm tauri build --bundles app ``` diff --git a/index.html b/index.html index 3dff13dc..56e4c657 100644 --- a/index.html +++ b/index.html @@ -1,8 +1,8 @@ - + - + Coco diff --git a/package.json b/package.json index 514c61eb..311cc1fb 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,6 @@ "@traptitech/markdown-it-katex": "^3.6.0", "axios": "^1.7.7", "clsx": "^2.1.1", - "framer-motion": "^11.11.11", "highlight.js": "^11.10.0", "i18next": "^23.16.2", "lodash": "^4.17.21", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 695ac425..f13fd565 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -32,9 +32,6 @@ importers: clsx: specifier: ^2.1.1 version: 2.1.1 - framer-motion: - specifier: ^11.11.11 - version: 11.11.11(react-dom@18.3.1(react@18.3.1))(react@18.3.1) highlight.js: specifier: ^11.10.0 version: 11.10.0 @@ -1310,20 +1307,6 @@ packages: fraction.js@4.3.7: resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} - framer-motion@11.11.11: - resolution: {integrity: sha512-tuDH23ptJAKUHGydJQII9PhABNJBpB+z0P1bmgKK9QFIssHGlfPd6kxMq00LSKwE27WFsb2z0ovY0bpUyMvfRw==} - peerDependencies: - '@emotion/is-prop-valid': '*' - react: ^18.0.0 - react-dom: ^18.0.0 - peerDependenciesMeta: - '@emotion/is-prop-valid': - optional: true - react: - optional: true - react-dom: - optional: true - fsevents@2.3.3: resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} @@ -3420,13 +3403,6 @@ snapshots: fraction.js@4.3.7: {} - framer-motion@11.11.11(react-dom@18.3.1(react@18.3.1))(react@18.3.1): - dependencies: - tslib: 2.8.0 - optionalDependencies: - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - fsevents@2.3.3: optional: true diff --git a/public/icon.ico b/public/icon.ico new file mode 100644 index 00000000..4f1fcebe Binary files /dev/null and b/public/icon.ico differ diff --git a/src-tauri/Entitlements.plist b/src-tauri/Entitlements.plist new file mode 100644 index 00000000..6bf0d0ff --- /dev/null +++ b/src-tauri/Entitlements.plist @@ -0,0 +1,30 @@ + + + + + com.apple.security.cs.allow-jit + + com.apple.security.cs.allow-unsigned-executable-memory + + com.apple.security.cs.disable-library-validation + + com.apple.security.cs.allow-dyld-environment-variables + + com.apple.security.automation.apple-events + + com.apple.security.device.usb + + com.apple.security.device.camera + + com.apple.security.device.microphone + + com.apple.security.device.audio-input + + com.apple.security.network.server + + com.apple.security.network.client + + com.apple.security.inherit + + + diff --git a/src-tauri/Info.plist b/src-tauri/Info.plist new file mode 100644 index 00000000..90c6fddc --- /dev/null +++ b/src-tauri/Info.plist @@ -0,0 +1,10 @@ + + + + + NSCameraUsageDescription + Request camera access for WebRTC + NSMicrophoneUsageDescription + Request microphone access for WebRTC + + \ No newline at end of file diff --git a/src-tauri/assets/dmg-background.png b/src-tauri/assets/dmg-background.png new file mode 100644 index 00000000..6d32ffe9 Binary files /dev/null and b/src-tauri/assets/dmg-background.png differ diff --git a/src-tauri/icons/128x128.png b/src-tauri/icons/128x128.png index 6be5e50e..87ae8aa0 100644 Binary files a/src-tauri/icons/128x128.png and b/src-tauri/icons/128x128.png differ diff --git a/src-tauri/icons/128x128@2x.png b/src-tauri/icons/128x128@2x.png index e81becee..6f6081d7 100644 Binary files a/src-tauri/icons/128x128@2x.png and b/src-tauri/icons/128x128@2x.png differ diff --git a/src-tauri/icons/32x32.png b/src-tauri/icons/32x32.png index a437dd51..01ea79fa 100644 Binary files a/src-tauri/icons/32x32.png and b/src-tauri/icons/32x32.png differ diff --git a/src-tauri/icons/Square107x107Logo.png b/src-tauri/icons/Square107x107Logo.png index 0ca4f271..cc7fcd69 100644 Binary files a/src-tauri/icons/Square107x107Logo.png and b/src-tauri/icons/Square107x107Logo.png differ diff --git a/src-tauri/icons/Square142x142Logo.png b/src-tauri/icons/Square142x142Logo.png index b81f8203..c8cc97d0 100644 Binary files a/src-tauri/icons/Square142x142Logo.png and b/src-tauri/icons/Square142x142Logo.png differ diff --git a/src-tauri/icons/Square150x150Logo.png b/src-tauri/icons/Square150x150Logo.png index 624c7bfb..96183ac8 100644 Binary files a/src-tauri/icons/Square150x150Logo.png and b/src-tauri/icons/Square150x150Logo.png differ diff --git a/src-tauri/icons/Square284x284Logo.png b/src-tauri/icons/Square284x284Logo.png index c021d2ba..6d90ae3b 100644 Binary files a/src-tauri/icons/Square284x284Logo.png and b/src-tauri/icons/Square284x284Logo.png differ diff --git a/src-tauri/icons/Square30x30Logo.png b/src-tauri/icons/Square30x30Logo.png index 62197002..b2fcf83a 100644 Binary files a/src-tauri/icons/Square30x30Logo.png and b/src-tauri/icons/Square30x30Logo.png differ diff --git a/src-tauri/icons/Square310x310Logo.png b/src-tauri/icons/Square310x310Logo.png index f9bc0483..418198de 100644 Binary files a/src-tauri/icons/Square310x310Logo.png and b/src-tauri/icons/Square310x310Logo.png differ diff --git a/src-tauri/icons/Square44x44Logo.png b/src-tauri/icons/Square44x44Logo.png index d5fbfb2a..10a57b37 100644 Binary files a/src-tauri/icons/Square44x44Logo.png and b/src-tauri/icons/Square44x44Logo.png differ diff --git a/src-tauri/icons/Square71x71Logo.png b/src-tauri/icons/Square71x71Logo.png index 63440d79..e2efb84c 100644 Binary files a/src-tauri/icons/Square71x71Logo.png and b/src-tauri/icons/Square71x71Logo.png differ diff --git a/src-tauri/icons/Square89x89Logo.png b/src-tauri/icons/Square89x89Logo.png index f3f705af..ec771601 100644 Binary files a/src-tauri/icons/Square89x89Logo.png and b/src-tauri/icons/Square89x89Logo.png differ diff --git a/src-tauri/icons/StoreLogo.png b/src-tauri/icons/StoreLogo.png index 45563882..605a3869 100644 Binary files a/src-tauri/icons/StoreLogo.png and b/src-tauri/icons/StoreLogo.png differ diff --git a/src-tauri/icons/icon.icns b/src-tauri/icons/icon.icns index 12a5bcee..328e1aa3 100644 Binary files a/src-tauri/icons/icon.icns and b/src-tauri/icons/icon.icns differ diff --git a/src-tauri/icons/icon.ico b/src-tauri/icons/icon.ico index b3636e4b..4f1fcebe 100644 Binary files a/src-tauri/icons/icon.ico and b/src-tauri/icons/icon.ico differ diff --git a/src-tauri/icons/icon.png b/src-tauri/icons/icon.png index e1cd2619..e9d0e292 100644 Binary files a/src-tauri/icons/icon.png and b/src-tauri/icons/icon.png differ diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json index aeb35431..71158694 100644 --- a/src-tauri/tauri.conf.json +++ b/src-tauri/tauri.conf.json @@ -22,10 +22,10 @@ "create": true, "decorations": false, "dragDropEnabled": true, - "focus": false, + "focus": true, "fullscreen": false, - "height": 90, - "maxHeight": 700, + "height": 600, + "maxHeight": 600, "minHeight": 90, "width": 680, "maxWidth": 680, @@ -38,7 +38,7 @@ "maximized": false, "proxyUrl": "http://localhost:2900", "resizable": false, - "shadow": true, + "shadow": false, "skipTaskbar": false, "theme": null, "title": "Coco AI", @@ -73,7 +73,25 @@ "icons/128x128@2x.png", "icons/icon.icns", "icons/icon.ico" - ] + ], + "macOS": { + "entitlements": "./Entitlements.plist", + "dmg": { + "background": "assets/dmg-background.png", + "windowSize": { + "width": 800, + "height": 600 + }, + "windowPosition": { + "x": 400, + "y": 400 + }, + "applicationFolderPosition": { + "x": 480, + "y": 220 + } + } + } }, "plugins": { "window": {}, diff --git a/src/components/ChatAI/AutoResizeTextarea.tsx b/src/components/ChatAI/AutoResizeTextarea.tsx index 710834e9..26338ca7 100644 --- a/src/components/ChatAI/AutoResizeTextarea.tsx +++ b/src/components/ChatAI/AutoResizeTextarea.tsx @@ -25,7 +25,7 @@ const AutoResizeTextarea: React.FC = ({