Skip to content

Commit 6c4d0ef

Browse files
authored
feat: support webkit and chrome for testing (#49)
1 parent bdeb8eb commit 6c4d0ef

2 files changed

Lines changed: 34 additions & 22 deletions

File tree

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@guidepup/setup",
3-
"version": "0.20.0",
3+
"version": "0.21.0",
44
"description": "Setup your environment for screen-reader automation.",
55
"main": "lib/index.js",
66
"typings": "lib/index.d.ts",

src/macOS/updateTccDb.ts

Lines changed: 33 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -26,11 +26,13 @@ const firefoxNightlyApp = "org.mozilla.nightly";
2626
const operaApp = "com.operasoftware.Opera";
2727
const chromeApp = "com.google.Chrome";
2828
const chromeBetaApp = "com.google.Chrome.beta";
29+
const chromeForTestingApp = "com.google.chrome.for.testing";
2930
const chromiumApp = "org.chromium.Chromium";
3031
const edgeApp = "com.microsoft.edgemac";
3132
const edgeBetaApp = "com.microsoft.edgemac.Beta";
3233
const edgeDevApp = "com.microsoft.edgemac.Dev";
3334
const playwrightWebkitApp = "org.webkit.Playwright";
35+
const webkitApp = "com.apple.WebKit";
3436

3537
const getEntries = (): string[] => {
3638
let gitlabRunnerPath: string;
@@ -64,27 +66,27 @@ const getEntries = (): string[] => {
6466
// Permit Sending Keystrokes
6567
...standardClients.map(
6668
(client) =>
67-
`'kTCCServicePostEvent','${client}',1,2,3,1,NULL,NULL,NULL,'UNUSED',NULL,0,${epoch}`
69+
`'kTCCServicePostEvent','${client}',1,2,3,1,NULL,NULL,NULL,'UNUSED',NULL,0,${epoch}`,
6870
),
6971
// Permit Control Of Device
7072
...standardClients.map(
7173
(client) =>
72-
`'kTCCServiceAccessibility','${client}',1,2,3,1,NULL,NULL,NULL,'UNUSED',NULL,0,${epoch}`
74+
`'kTCCServiceAccessibility','${client}',1,2,3,1,NULL,NULL,NULL,'UNUSED',NULL,0,${epoch}`,
7375
),
7476
// Permit Full Disk Access
7577
...standardClients.map(
7678
(client) =>
77-
`'kTCCServiceSystemPolicyAllFiles','${client}',1,2,3,1,NULL,NULL,NULL,'UNUSED',NULL,0,${epoch}`
79+
`'kTCCServiceSystemPolicyAllFiles','${client}',1,2,3,1,NULL,NULL,NULL,'UNUSED',NULL,0,${epoch}`,
7880
),
7981
// Permit Access To Microphone
8082
...standardClients.map(
8183
(client) =>
82-
`'kTCCServiceMicrophone','${client}',1,2,3,1,NULL,NULL,NULL,'UNUSED',NULL,NULL,${epoch}`
84+
`'kTCCServiceMicrophone','${client}',1,2,3,1,NULL,NULL,NULL,'UNUSED',NULL,NULL,${epoch}`,
8385
),
8486
// Permit Capture Of System Display
8587
...standardClients.map(
8688
(client) =>
87-
`'kTCCServiceScreenCapture','${client}',1,2,3,1,NULL,NULL,NULL,'UNUSED',NULL,0,${epoch}`
89+
`'kTCCServiceScreenCapture','${client}',1,2,3,1,NULL,NULL,NULL,'UNUSED',NULL,0,${epoch}`,
8890
),
8991
// Permit VoiceOver Access To Location
9092
`'kTCCServiceLiverpool','${voiceOverUtilityApp}',0,2,3,1,NULL,NULL,NULL,'UNUSED',NULL,0,${epoch}`,
@@ -94,77 +96,87 @@ const getEntries = (): string[] => {
9496
// Permit Control Of System Events
9597
...standardClients.map(
9698
(client) =>
97-
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${systemEventsApp}',NULL,NULL,${epoch}`
99+
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${systemEventsApp}',NULL,NULL,${epoch}`,
98100
),
99101
// Permit Control Of VoiceOver
100102
...standardClients.map(
101103
(client) =>
102-
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${voiceOverApp}',NULL,NULL,${epoch}`
104+
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${voiceOverApp}',NULL,NULL,${epoch}`,
103105
),
104106
// Permit Control Of VoiceOver Utility
105107
...standardClients.map(
106108
(client) =>
107-
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${voiceOverUtilityApp}',NULL,NULL,${epoch}`
109+
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${voiceOverUtilityApp}',NULL,NULL,${epoch}`,
108110
),
109111
// Permit Control Of Finder
110112
...standardClients.map(
111113
(client) =>
112-
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${finderApp}',NULL,NULL,${epoch}`
114+
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${finderApp}',NULL,NULL,${epoch}`,
113115
),
114116
// Permit Control Of Safari
115117
...standardClients.map(
116118
(client) =>
117-
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${safariApp}',NULL,NULL,${epoch}`
119+
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${safariApp}',NULL,NULL,${epoch}`,
118120
),
119121
// Permit Control Of Firefox
120122
...standardClients.map(
121123
(client) =>
122-
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${firefoxApp}',NULL,NULL,${epoch}`
124+
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${firefoxApp}',NULL,NULL,${epoch}`,
123125
),
124126
// Permit Control Of Firefox Nightly And Playwright Firefox Nightly
125127
...standardClients.map(
126128
(client) =>
127-
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${firefoxNightlyApp}',NULL,NULL,${epoch}`
129+
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${firefoxNightlyApp}',NULL,NULL,${epoch}`,
128130
),
129131
// Permit Control Of Opera
130132
...standardClients.map(
131133
(client) =>
132-
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${operaApp}',NULL,NULL,${epoch}`
134+
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${operaApp}',NULL,NULL,${epoch}`,
133135
),
134136
// Permit Control Of Google Chrome
135137
...standardClients.map(
136138
(client) =>
137-
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${chromeApp}',NULL,NULL,${epoch}`
139+
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${chromeApp}',NULL,NULL,${epoch}`,
138140
),
139141
// Permit Control Of Google Chrome Beta
140142
...standardClients.map(
141143
(client) =>
142-
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${chromeBetaApp}',NULL,NULL,${epoch}`
144+
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${chromeBetaApp}',NULL,NULL,${epoch}`,
145+
),
146+
// Permit Control Of Google Chrome For Testing
147+
...standardClients.map(
148+
(client) =>
149+
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${chromeForTestingApp}',NULL,NULL,${epoch}`,
143150
),
144151
// Permit Control Of Chromium
145152
...standardClients.map(
146153
(client) =>
147-
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${chromiumApp}',NULL,NULL,${epoch}`
154+
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${chromiumApp}',NULL,NULL,${epoch}`,
148155
),
149156
// Permit Control Of Microsoft Edge
150157
...standardClients.map(
151158
(client) =>
152-
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${edgeApp}',NULL,NULL,${epoch}`
159+
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${edgeApp}',NULL,NULL,${epoch}`,
153160
),
154161
// Permit Control Of Microsoft Edge Beta
155162
...standardClients.map(
156163
(client) =>
157-
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${edgeBetaApp}',NULL,NULL,${epoch}`
164+
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${edgeBetaApp}',NULL,NULL,${epoch}`,
158165
),
159166
// Permit Control Of Microsoft Edge Dev
160167
...standardClients.map(
161168
(client) =>
162-
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${edgeDevApp}',NULL,NULL,${epoch}`
169+
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${edgeDevApp}',NULL,NULL,${epoch}`,
163170
),
164171
// Permit Control Of Playwright WebKit
165172
...standardClients.map(
166173
(client) =>
167-
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${playwrightWebkitApp}',NULL,NULL,${epoch}`
174+
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${playwrightWebkitApp}',NULL,NULL,${epoch}`,
175+
),
176+
// Permit Control Of WebKit
177+
...standardClients.map(
178+
(client) =>
179+
`'kTCCServiceAppleEvents','${client}',1,2,3,1,NULL,NULL,0,'${webkitApp}',NULL,NULL,${epoch}`,
168180
),
169181
];
170182
};
@@ -185,7 +197,7 @@ export function updateTccDb(path: string): void {
185197
execSync(`sqlite3 "${path}" "${query}" >/dev/null 2>&1`);
186198
} catch (e) {
187199
throw new Error(
188-
`${ERR_MACOS_UNABLE_TO_WRITE_USER_TCC_DB}\n\n${e.message}`
200+
`${ERR_MACOS_UNABLE_TO_WRITE_USER_TCC_DB}\n\n${e.message}`,
189201
);
190202
}
191203
}

0 commit comments

Comments
 (0)