Skip to content

Commit 1a9783f

Browse files
feat: add macOS native app (SwiftUI + WKWebView)
- SwiftUI app shell with WKWebView loading production web app - OAuth popup handling for Google/GitHub/Apple sign-in - Native UNUserNotificationCenter notifications via JS bridge - macOS platform detection (__BOTSCHAT_NATIVE__) across web codebase - App icon from iOS source, scroll fix for Login/Onboarding pages
1 parent 6b32720 commit 1a9783f

30 files changed

Lines changed: 1563 additions & 151 deletions

macos/.gitignore

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
# Xcode generated project (regenerated from project.yml via xcodegen)
2+
BotsChatMac.xcodeproj/
3+
4+
# Xcode build artifacts
5+
build/
6+
DerivedData/
7+
8+
# User-specific Xcode settings
9+
*.xcuserdata
10+
*.xcuserstate
11+
12+
# macOS
13+
.DS_Store
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
{
2+
"colors" : [
3+
{
4+
"color" : {
5+
"color-space" : "srgb",
6+
"components" : {
7+
"alpha" : "1.000",
8+
"blue" : "0.980",
9+
"green" : "0.580",
10+
"red" : "0.200"
11+
}
12+
},
13+
"idiom" : "universal"
14+
}
15+
],
16+
"info" : {
17+
"author" : "xcode",
18+
"version" : 1
19+
}
20+
}
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
{
2+
"images" : [
3+
{
4+
"filename" : "icon_16.png",
5+
"idiom" : "mac",
6+
"scale" : "1x",
7+
"size" : "16x16"
8+
},
9+
{
10+
"filename" : "icon_16@2x.png",
11+
"idiom" : "mac",
12+
"scale" : "2x",
13+
"size" : "16x16"
14+
},
15+
{
16+
"filename" : "icon_32.png",
17+
"idiom" : "mac",
18+
"scale" : "1x",
19+
"size" : "32x32"
20+
},
21+
{
22+
"filename" : "icon_32@2x.png",
23+
"idiom" : "mac",
24+
"scale" : "2x",
25+
"size" : "32x32"
26+
},
27+
{
28+
"filename" : "icon_128.png",
29+
"idiom" : "mac",
30+
"scale" : "1x",
31+
"size" : "128x128"
32+
},
33+
{
34+
"filename" : "icon_128@2x.png",
35+
"idiom" : "mac",
36+
"scale" : "2x",
37+
"size" : "128x128"
38+
},
39+
{
40+
"filename" : "icon_256.png",
41+
"idiom" : "mac",
42+
"scale" : "1x",
43+
"size" : "256x256"
44+
},
45+
{
46+
"filename" : "icon_256@2x.png",
47+
"idiom" : "mac",
48+
"scale" : "2x",
49+
"size" : "256x256"
50+
},
51+
{
52+
"filename" : "icon_512.png",
53+
"idiom" : "mac",
54+
"scale" : "1x",
55+
"size" : "512x512"
56+
},
57+
{
58+
"filename" : "icon_512@2x.png",
59+
"idiom" : "mac",
60+
"scale" : "2x",
61+
"size" : "512x512"
62+
}
63+
],
64+
"info" : {
65+
"author" : "xcode",
66+
"version" : 1
67+
}
68+
}
3.14 KB
Loading
6.66 KB
Loading
452 Bytes
Loading
839 Bytes
Loading
6.66 KB
Loading
20 KB
Loading
839 Bytes
Loading

0 commit comments

Comments
 (0)