Skip to content

Commit 494b527

Browse files
authored
Merge pull request #3345 from numbersprotocol/feature-migrate-account-deletion
feat(auth): migrate account deletion Ref numbersprotocol/pipedream#11 - Replace Pipedream webhook with backend DELETE /auth/users/me/ endpoint - Remove unused email parameter from deleteAccount$() method
2 parents 19a656f + e1e2235 commit 494b527

File tree

7 files changed

+28
-26
lines changed

7 files changed

+28
-26
lines changed

.github/workflows/build-apks.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,6 @@ jobs:
6161
BUBBLE_API_URL: ${{ secrets.BUBBLE_API_URL}} # FIXME: remove BUBBLE_API_URL, not used in capture app.
6262
APPS_FLYER_DEV_KEY: '' # Empty string prevents apps flyer SDK initialization for non-public flavors.
6363
NUMBERS_PQINA_NPM_KEY: ${{ secrets.NUMBERS_PQINA_NPM_KEY }} # same for public, non-public flavors.
64-
PIPEDREAM_DELETE_CAPTURE_ACCOUNT: ${{ secrets.PIPEDREAM_DELETE_CAPTURE_ACCOUNT }}
6564
GOOGLE_IOS_CLIENT_ID: ${{ secrets.GOOGLE_IOS_CLIENT_ID }}
6665
GOOGLE_WEB_CLIENT_ID: ${{ secrets.GOOGLE_WEB_CLIENT_ID }}
6766
run: |

.github/workflows/build.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,11 @@ jobs:
6161
steps:
6262
- uses: actions/checkout@v4
6363

64+
- name: Setup Xcode
65+
uses: maxim-lobanov/setup-xcode@v1
66+
with:
67+
xcode-version: '16.4'
68+
6469
- name: Use Node.js
6570
uses: actions/setup-node@v4
6671
with:

.github/workflows/firebase-release.yml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,6 @@ jobs:
4444
BUBBLE_API_URL: ${{ secrets.BUBBLE_API_URL }}
4545
APPS_FLYER_DEV_KEY: ${{ secrets.APPS_FLYER_DEV_KEY }}
4646
NUMBERS_PQINA_NPM_KEY: ${{ secrets.NUMBERS_PQINA_NPM_KEY }}
47-
PIPEDREAM_DELETE_CAPTURE_ACCOUNT: ${{ secrets.PIPEDREAM_DELETE_CAPTURE_ACCOUNT }}
4847
GOOGLE_IOS_CLIENT_ID: ${{ secrets.GOOGLE_IOS_CLIENT_ID }}
4948
GOOGLE_WEB_CLIENT_ID: ${{ secrets.GOOGLE_WEB_CLIENT_ID }}
5049
run: |
@@ -92,6 +91,11 @@ jobs:
9291
steps:
9392
- uses: actions/checkout@v4
9493

94+
- name: Setup Xcode
95+
uses: maxim-lobanov/setup-xcode@v1
96+
with:
97+
xcode-version: '16.4'
98+
9599
- uses: actions/setup-node@v4
96100
with:
97101
node-version: '20.11.1'
@@ -114,7 +118,6 @@ jobs:
114118
BUBBLE_API_URL: ${{ secrets.BUBBLE_API_URL }}
115119
APPS_FLYER_DEV_KEY: ${{ secrets.APPS_FLYER_DEV_KEY }}
116120
NUMBERS_PQINA_NPM_KEY: ${{ secrets.NUMBERS_PQINA_NPM_KEY }}
117-
PIPEDREAM_DELETE_CAPTURE_ACCOUNT: ${{ secrets.PIPEDREAM_DELETE_CAPTURE_ACCOUNT }}
118121
GOOGLE_IOS_CLIENT_ID: ${{ secrets.GOOGLE_IOS_CLIENT_ID }}
119122
GOOGLE_WEB_CLIENT_ID: ${{ secrets.GOOGLE_WEB_CLIENT_ID }}
120123
run: |

.github/workflows/pre-release.yml

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ jobs:
3030
BUBBLE_API_URL: ${{ secrets.BUBBLE_API_URL }}
3131
APPS_FLYER_DEV_KEY: ${{ secrets.APPS_FLYER_DEV_KEY }}
3232
NUMBERS_PQINA_NPM_KEY: ${{ secrets.NUMBERS_PQINA_NPM_KEY }}
33-
PIPEDREAM_DELETE_CAPTURE_ACCOUNT: ${{ secrets.PIPEDREAM_DELETE_CAPTURE_ACCOUNT }}
3433
GOOGLE_IOS_CLIENT_ID: ${{ secrets.GOOGLE_IOS_CLIENT_ID }}
3534
GOOGLE_WEB_CLIENT_ID: ${{ secrets.GOOGLE_WEB_CLIENT_ID }}
3635
run: |
@@ -110,7 +109,6 @@ jobs:
110109
BUBBLE_API_URL: ${{ secrets.BUBBLE_API_URL }}
111110
APPS_FLYER_DEV_KEY: ${{ secrets.APPS_FLYER_DEV_KEY }}
112111
NUMBERS_PQINA_NPM_KEY: ${{ secrets.NUMBERS_PQINA_NPM_KEY }}
113-
PIPEDREAM_DELETE_CAPTURE_ACCOUNT: ${{ secrets.PIPEDREAM_DELETE_CAPTURE_ACCOUNT }}
114112
GOOGLE_IOS_CLIENT_ID: ${{ secrets.GOOGLE_IOS_CLIENT_ID }}
115113
GOOGLE_WEB_CLIENT_ID: ${{ secrets.GOOGLE_WEB_CLIENT_ID }}
116114
run: |
@@ -178,6 +176,11 @@ jobs:
178176
steps:
179177
- uses: actions/checkout@v4
180178

179+
- name: Setup Xcode
180+
uses: maxim-lobanov/setup-xcode@v1
181+
with:
182+
xcode-version: '16.4'
183+
181184
- uses: actions/setup-node@v4
182185
with:
183186
node-version: '20.11.1'
@@ -200,7 +203,6 @@ jobs:
200203
BUBBLE_API_URL: ${{ secrets.BUBBLE_API_URL }}
201204
APPS_FLYER_DEV_KEY: ${{ secrets.APPS_FLYER_DEV_KEY }}
202205
NUMBERS_PQINA_NPM_KEY: ${{ secrets.NUMBERS_PQINA_NPM_KEY }}
203-
PIPEDREAM_DELETE_CAPTURE_ACCOUNT: ${{ secrets.PIPEDREAM_DELETE_CAPTURE_ACCOUNT }}
204206
GOOGLE_IOS_CLIENT_ID: ${{ secrets.GOOGLE_IOS_CLIENT_ID }}
205207
GOOGLE_WEB_CLIENT_ID: ${{ secrets.GOOGLE_WEB_CLIENT_ID }}
206208
run: |
@@ -267,6 +269,11 @@ jobs:
267269
steps:
268270
- uses: actions/checkout@v4
269271

272+
- name: Setup Xcode
273+
uses: maxim-lobanov/setup-xcode@v1
274+
with:
275+
xcode-version: '16.4'
276+
270277
- name: Download IPA
271278
uses: actions/download-artifact@v4
272279
with:

set-secret.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ export const BUBBLE_API_URL = '${process.env.BUBBLE_API_URL}';
1313
export const APPS_FLYER_DEV_KEY = '${process.env.APPS_FLYER_DEV_KEY}'
1414
export const GOOGLE_IOS_CLIENT_ID = '${process.env.GOOGLE_IOS_CLIENT_ID}'
1515
export const GOOGLE_WEB_CLIENT_ID = '${process.env.GOOGLE_WEB_CLIENT_ID}'
16-
export const PIPEDREAM_DELETE_CAPTURE_ACCOUNT = '${process.env.PIPEDREAM_DELETE_CAPTURE_ACCOUNT}'
1716
`;
1817
fs.writeFile(targetPath, envConfigFile, err => {
1918
if (err) {

src/app/features/settings/settings.page.ts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -181,9 +181,7 @@ export class SettingsPage {
181181
}
182182

183183
async deleteAccount() {
184-
const email: string = await this.diaBackendAuthService.getEmail();
185-
186-
const action$ = this.diaBackendAuthService.deleteAccount$(email).pipe(
184+
const action$ = this.diaBackendAuthService.deleteAccount$().pipe(
187185
// logout
188186
concatMapTo(defer(() => this.mediaStore.clear())),
189187
concatMapTo(defer(() => this.database.clear())),

src/app/shared/dia-backend/auth/dia-backend-auth.service.ts

Lines changed: 7 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,7 @@ import { secondSince } from '../../../utils/date';
2424
import { LanguageService } from '../../language/service/language.service';
2525
import { PreferenceManager } from '../../preference-manager/preference-manager.service';
2626
import { PushNotificationService } from '../../push-notification/push-notification.service';
27-
import {
28-
BASE_URL,
29-
PIPEDREAM_DELETE_CAPTURE_ACCOUNT,
30-
TRUSTED_CLIENT_KEY,
31-
} from '../secret';
27+
import { BASE_URL, TRUSTED_CLIENT_KEY } from '../secret';
3228

3329
@Injectable({
3430
providedIn: 'root',
@@ -315,19 +311,14 @@ export class DiaBackendAuthService {
315311
);
316312
}
317313

318-
deleteAccount$(email: string) {
314+
deleteAccount$() {
319315
return defer(() => this.getAuthHeaders()).pipe(
320316
concatMap(authHeaders => {
321-
const body = { email };
322-
return this.httpClient.post<any>(
323-
`${PIPEDREAM_DELETE_CAPTURE_ACCOUNT}`,
324-
body,
325-
{
326-
headers: new HttpHeaders()
327-
.set('Authorization', `${authHeaders.authorization}`)
328-
.set('Content-Type', 'application/json'),
329-
}
330-
);
317+
return this.httpClient.delete<any>(`${BASE_URL}/auth/users/me/`, {
318+
headers: new HttpHeaders()
319+
.set('Authorization', `${authHeaders.authorization}`)
320+
.set('Content-Type', 'application/json'),
321+
});
331322
})
332323
);
333324
}

0 commit comments

Comments
 (0)