sfdx-browserforce-plugin 5.2.0-next.3 → 5.2.0-next.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commands/browserforce/playwright.d.ts +7 -0
- package/lib/commands/browserforce/playwright.js +45 -0
- package/lib/commands/browserforce/playwright.js.map +1 -0
- package/lib/plugins/company-information/index.js +7 -14
- package/lib/plugins/company-information/index.js.map +1 -1
- package/lib/plugins/customer-portal/available-custom-objects/index.js +1 -0
- package/lib/plugins/customer-portal/available-custom-objects/index.js.map +1 -1
- package/lib/plugins/density-settings/index.d.ts +2 -2
- package/lib/plugins/density-settings/index.e2e-spec.js.map +1 -1
- package/lib/plugins/density-settings/index.js +14 -41
- package/lib/plugins/density-settings/index.js.map +1 -1
- package/lib/plugins/email-deliverability/index.js +1 -0
- package/lib/plugins/email-deliverability/index.js.map +1 -1
- package/lib/plugins/history-tracking/index.js +4 -5
- package/lib/plugins/history-tracking/index.js.map +1 -1
- package/lib/plugins/home-page-layouts/index.js +2 -0
- package/lib/plugins/home-page-layouts/index.js.map +1 -1
- package/lib/plugins/lightning-experience-settings/index.js +1 -0
- package/lib/plugins/lightning-experience-settings/index.js.map +1 -1
- package/lib/plugins/linkedin-sales-navigator-settings/page.js +15 -12
- package/lib/plugins/linkedin-sales-navigator-settings/page.js.map +1 -1
- package/lib/plugins/picklists/field-dependencies/pages.js +6 -5
- package/lib/plugins/picklists/field-dependencies/pages.js.map +1 -1
- package/lib/plugins/picklists/index.d.ts +1 -1
- package/lib/plugins/picklists/index.e2e-spec.js +1 -1
- package/lib/plugins/picklists/index.js +17 -9
- package/lib/plugins/picklists/index.js.map +1 -1
- package/lib/plugins/picklists/pages.d.ts +6 -2
- package/lib/plugins/picklists/pages.js +67 -54
- package/lib/plugins/picklists/pages.js.map +1 -1
- package/lib/plugins/record-types/pages.js +3 -2
- package/lib/plugins/record-types/pages.js.map +1 -1
- package/lib/plugins/relate-contact-to-multiple-accounts/index.js +24 -29
- package/lib/plugins/relate-contact-to-multiple-accounts/index.js.map +1 -1
- package/lib/plugins/salesforce-cpq-config/index.js +21 -10
- package/lib/plugins/salesforce-cpq-config/index.js.map +1 -1
- package/lib/plugins/salesforce-to-salesforce/index.js +1 -0
- package/lib/plugins/salesforce-to-salesforce/index.js.map +1 -1
- package/lib/plugins/security/authentication-configuration/index.js +6 -2
- package/lib/plugins/security/authentication-configuration/index.js.map +1 -1
- package/lib/plugins/security/certificate-and-key-management/index.js +3 -3
- package/lib/plugins/security/certificate-and-key-management/index.js.map +1 -1
- package/lib/plugins/slack/index.js +8 -7
- package/lib/plugins/slack/index.js.map +1 -1
- package/lib/plugins/user-access-policies/page.js +8 -0
- package/lib/plugins/user-access-policies/page.js.map +1 -1
- package/oclif.manifest.json +44 -1
- package/package.json +1 -1
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import type { Page } from 'playwright';
|
|
2
2
|
type PicklistValue = {
|
|
3
3
|
value: string;
|
|
4
|
+
label?: string;
|
|
4
5
|
active: boolean;
|
|
6
|
+
id?: string;
|
|
7
|
+
statusCategory?: string;
|
|
5
8
|
};
|
|
6
9
|
export declare class PicklistPage {
|
|
7
10
|
private page;
|
|
@@ -9,6 +12,7 @@ export declare class PicklistPage {
|
|
|
9
12
|
getPicklistValues(): Promise<PicklistValue[]>;
|
|
10
13
|
clickNewActionButton(): Promise<void>;
|
|
11
14
|
clickReplaceActionButton(): Promise<PicklistReplacePage>;
|
|
15
|
+
getPicklistIdForApiName(picklistValueApiName: string): Promise<string>;
|
|
12
16
|
clickDeleteActionForValue(picklistValueApiName: string): Promise<PicklistReplaceAndDeletePage>;
|
|
13
17
|
clickActivateDeactivateActionForValue(picklistValueApiName: string, active: boolean): Promise<PicklistPage>;
|
|
14
18
|
}
|
|
@@ -30,12 +34,12 @@ export declare class PicklistReplacePage {
|
|
|
30
34
|
protected page: Page;
|
|
31
35
|
protected saveButton: string;
|
|
32
36
|
constructor(page: Page);
|
|
33
|
-
replace(value: string,
|
|
37
|
+
replace(value: string, newValueLabel: string, replaceAllBlankValues?: boolean): Promise<void>;
|
|
34
38
|
save(): Promise<void>;
|
|
35
39
|
}
|
|
36
40
|
export declare class PicklistReplaceAndDeletePage extends PicklistReplacePage {
|
|
37
41
|
constructor(page: Page);
|
|
38
|
-
replaceAndDelete(
|
|
42
|
+
replaceAndDelete(newValueId?: string): Promise<void>;
|
|
39
43
|
save(): Promise<void>;
|
|
40
44
|
}
|
|
41
45
|
export {};
|
|
@@ -9,39 +9,54 @@ export class PicklistPage {
|
|
|
9
9
|
await this.page
|
|
10
10
|
.locator('input[name="new"][onclick*="picklist_masteredit"]')
|
|
11
11
|
.waitFor();
|
|
12
|
-
const
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
12
|
+
const rows = await this.page
|
|
13
|
+
.locator('div.bRelatedList tr:has(td.actionColumn):has(a)')
|
|
14
|
+
.all();
|
|
15
|
+
const picklists = await Promise.all(rows.map((row) => (async () => {
|
|
16
|
+
const urlPath = await row
|
|
17
|
+
.locator('xpath=//td[1]//a[contains(@href, "/setup/ui/")]')
|
|
18
|
+
.first()
|
|
19
|
+
.getAttribute('href');
|
|
20
|
+
const url = new URL(`http://localhost${urlPath}`);
|
|
21
|
+
const picklistId = url.searchParams.get('id');
|
|
22
|
+
const statusCategory = await row.locator('td').nth(2).textContent();
|
|
23
|
+
return {
|
|
24
|
+
id: picklistId,
|
|
25
|
+
value: await row.locator('td').nth(1).textContent(),
|
|
26
|
+
label: await row.locator('th').first().textContent(),
|
|
27
|
+
active: (await row
|
|
28
|
+
.locator('xpath=//td[1]//a[contains(@href, "/setup/ui/picklist_masteredit")]')
|
|
29
|
+
.count()) === 1,
|
|
30
|
+
...(statusCategory?.length ? { statusCategory } : {}),
|
|
31
|
+
};
|
|
32
|
+
})()));
|
|
33
|
+
return picklists;
|
|
27
34
|
}
|
|
28
35
|
async clickNewActionButton() {
|
|
29
|
-
|
|
30
|
-
|
|
36
|
+
await this.page
|
|
37
|
+
.locator('xpath=//tr[td[2]]//input[contains(@onclick, "/setup/ui/picklist_masteredit")][@value=" New "]')
|
|
38
|
+
.first()
|
|
39
|
+
.click();
|
|
31
40
|
await Promise.race([
|
|
32
41
|
this.page.waitForURL((url) => url.pathname === '/setup/ui/picklist_masteredit.jsp'),
|
|
33
42
|
waitForPageErrors(this.page),
|
|
34
43
|
]);
|
|
35
44
|
}
|
|
36
45
|
async clickReplaceActionButton() {
|
|
37
|
-
|
|
38
|
-
await this.page.locator(REPLACE_ACTION_BUTTON).click();
|
|
46
|
+
await this.page.locator('input[name="replace"][type="button"]').click();
|
|
39
47
|
await Promise.race([
|
|
40
48
|
this.page.waitForURL((url) => url.pathname === '/setup/ui/replacePickList.jsp'),
|
|
41
49
|
waitForPageErrors(this.page),
|
|
42
50
|
]);
|
|
43
51
|
return new PicklistReplacePage(this.page);
|
|
44
52
|
}
|
|
53
|
+
async getPicklistIdForApiName(picklistValueApiName) {
|
|
54
|
+
const link = this.page.locator(`//tr[td[2][text() = "${picklistValueApiName}"]]//td[1]//a[contains(@href, "/setup/ui/picklist_masteredit.jsp")]`);
|
|
55
|
+
const urlPath = await link.getAttribute('href');
|
|
56
|
+
const url = new URL(`http://localhost${urlPath}`);
|
|
57
|
+
const picklistId = url.searchParams.get('id');
|
|
58
|
+
return picklistId;
|
|
59
|
+
}
|
|
45
60
|
async clickDeleteActionForValue(picklistValueApiName) {
|
|
46
61
|
// deactivate: deleteType=1
|
|
47
62
|
// delete: deleteType=0 or no deleteType=1
|
|
@@ -84,17 +99,17 @@ export class DefaultPicklistAddPage {
|
|
|
84
99
|
this.page = page;
|
|
85
100
|
}
|
|
86
101
|
async add(newValue) {
|
|
87
|
-
const TEXT_AREA = 'textarea';
|
|
88
102
|
if (newValue !== undefined && newValue !== null) {
|
|
89
|
-
await this.page.locator(
|
|
103
|
+
await this.page.locator('textarea').fill(newValue);
|
|
90
104
|
}
|
|
91
105
|
await this.save();
|
|
92
106
|
}
|
|
93
107
|
async save() {
|
|
94
|
-
const urlBefore = this.page.url();
|
|
95
108
|
await this.page.locator(this.saveButton).click();
|
|
96
109
|
await Promise.race([
|
|
97
|
-
this.page.waitForURL((url) => url.
|
|
110
|
+
this.page.waitForURL((url) => url.pathname.startsWith('/00N') || // CustomField Definition
|
|
111
|
+
url.pathname.startsWith('/0Nt') || // SharedPicklistDefinition
|
|
112
|
+
url.pathname.startsWith('/_ui/common/config/field/StandardFieldAttributes')),
|
|
98
113
|
waitForPageErrors(this.page),
|
|
99
114
|
]);
|
|
100
115
|
}
|
|
@@ -106,15 +121,12 @@ export class StatusPicklistAddPage {
|
|
|
106
121
|
this.page = page;
|
|
107
122
|
}
|
|
108
123
|
async add(newValue, statusCategory) {
|
|
109
|
-
const LABEL_INPUT = 'input#p1';
|
|
110
|
-
const API_NAME_INPUT = 'input#p3';
|
|
111
|
-
const STATUS_CATEGORY_SELECTOR = 'select#p5';
|
|
112
124
|
if (newValue !== undefined && newValue !== null) {
|
|
113
|
-
await this.page.locator(
|
|
114
|
-
await this.page.locator(
|
|
125
|
+
await this.page.locator('input#p1').describe('label').fill(newValue);
|
|
126
|
+
await this.page.locator('input#p3').describe('api name').fill(newValue);
|
|
115
127
|
await this.page
|
|
116
|
-
.locator(
|
|
117
|
-
.
|
|
128
|
+
.locator('select#p5')
|
|
129
|
+
.selectOption({ label: statusCategory });
|
|
118
130
|
}
|
|
119
131
|
await this.save();
|
|
120
132
|
}
|
|
@@ -132,18 +144,21 @@ export class PicklistReplacePage {
|
|
|
132
144
|
constructor(page) {
|
|
133
145
|
this.page = page;
|
|
134
146
|
}
|
|
135
|
-
async replace(value,
|
|
136
|
-
const OLD_VALUE_SELECTOR = 'input#nf';
|
|
137
|
-
const NEW_VALUE_SELECTOR = 'select#nv';
|
|
138
|
-
const REPLACE_ALL_BLANK_VALUES_CHECKBOX = 'input#fnv';
|
|
147
|
+
async replace(value, newValueLabel, replaceAllBlankValues) {
|
|
139
148
|
if (value !== undefined && value !== null) {
|
|
140
|
-
await this.page.locator(
|
|
149
|
+
await this.page.locator('input#nf').describe('old value').fill(value);
|
|
141
150
|
}
|
|
142
|
-
if (
|
|
143
|
-
await this.page
|
|
151
|
+
if (newValueLabel !== undefined && newValueLabel !== null) {
|
|
152
|
+
await this.page
|
|
153
|
+
.locator('select#nv')
|
|
154
|
+
.describe('new value')
|
|
155
|
+
.selectOption({ label: newValueLabel });
|
|
144
156
|
}
|
|
145
|
-
if (
|
|
146
|
-
await this.page
|
|
157
|
+
if (replaceAllBlankValues) {
|
|
158
|
+
await this.page
|
|
159
|
+
.locator('input#fnv')
|
|
160
|
+
.describe('replace all blank values')
|
|
161
|
+
.check();
|
|
147
162
|
}
|
|
148
163
|
await this.save();
|
|
149
164
|
}
|
|
@@ -160,27 +175,25 @@ export class PicklistReplaceAndDeletePage extends PicklistReplacePage {
|
|
|
160
175
|
super(page);
|
|
161
176
|
this.saveButton = 'input[name="delID"][type="submit"]';
|
|
162
177
|
}
|
|
163
|
-
async replaceAndDelete(
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
178
|
+
async replaceAndDelete(newValueId) {
|
|
179
|
+
if (newValueId !== undefined && newValueId !== null) {
|
|
180
|
+
await this.page
|
|
181
|
+
.locator('select#p13')
|
|
182
|
+
.describe('new value')
|
|
183
|
+
.selectOption(newValueId);
|
|
169
184
|
}
|
|
170
185
|
else {
|
|
171
|
-
await this.page.locator(
|
|
186
|
+
await this.page.locator('input#ReplaceValueWithNullValue').check();
|
|
172
187
|
}
|
|
173
188
|
}
|
|
174
189
|
async save() {
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
// await this.page.locator(this.saveButton).click({ noWaitAfter: true });
|
|
178
|
-
// /setup/ui/picklist_masterdelete.jsp?id=01JPw00000S7y4B&tid=a02&...
|
|
179
|
-
// ->
|
|
180
|
-
// /setup/ui/picklist_masterdelete.jsp
|
|
190
|
+
// NOTE: This sometimes takes really long
|
|
191
|
+
await this.page.locator(this.saveButton).click({ timeout: 300_000 });
|
|
181
192
|
await Promise.race([
|
|
182
|
-
this.page.waitForURL((url) =>
|
|
183
|
-
|
|
193
|
+
this.page.waitForURL((url) => url.pathname.startsWith('/00N') || // CustomField Definition
|
|
194
|
+
url.pathname.startsWith('/0Nt') || // SharedPicklistDefinition
|
|
195
|
+
url.pathname.startsWith('/_ui/common/config/field/StandardFieldAttributes')),
|
|
196
|
+
waitForPageErrors(this.page, 120_000), // 2 minutes
|
|
184
197
|
]);
|
|
185
198
|
}
|
|
186
199
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pages.js","sourceRoot":"","sources":["../../../src/plugins/picklists/pages.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"pages.js","sourceRoot":"","sources":["../../../src/plugins/picklists/pages.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,10 +22,10 @@ export class RecordTypeDeletePage {
|
|
|
22
22
|
}
|
|
23
23
|
async replace(newRecordTypeId) {
|
|
24
24
|
await this.throwOnMissingSaveButton();
|
|
25
|
-
const NEW_VALUE_SELECTOR = 'select#p2';
|
|
26
25
|
if (newRecordTypeId) {
|
|
27
26
|
await this.page
|
|
28
|
-
.locator(
|
|
27
|
+
.locator('select#p2')
|
|
28
|
+
.describe('new value')
|
|
29
29
|
.selectOption(newRecordTypeId.slice(0, 15));
|
|
30
30
|
}
|
|
31
31
|
await this.save();
|
|
@@ -44,6 +44,7 @@ export class RecordTypeDeletePage {
|
|
|
44
44
|
if ((await bodyElement.count()) > 0) {
|
|
45
45
|
const errorMsg = await bodyElement.textContent();
|
|
46
46
|
if (errorMsg?.trim()) {
|
|
47
|
+
await this.page.close();
|
|
47
48
|
throw new Error(errorMsg.trim());
|
|
48
49
|
}
|
|
49
50
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pages.js","sourceRoot":"","sources":["../../../src/plugins/record-types/pages.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE1D,MAAM,OAAO,cAAc;IACjB,IAAI,CAAO;IAEnB,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAEM,KAAK,CAAC,iBAAiB,CAC5B,YAAoB;QAEpB,MAAM,KAAK,GAAG,yDAAyD,YAAY,CAAC,KAAK,CACvF,CAAC,EACD,EAAE,CACH,KAAK,CAAC;QACP,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC;QAC1D,MAAM,OAAO,CAAC,IAAI,CAAC;YACjB,IAAI,CAAC,IAAI,CAAC,UAAU,CAClB,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,KAAK,gCAAgC,CAC3D;YACD,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;SAC7B,CAAC,CAAC;QACH,OAAO,IAAI,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;CACF;AAED,MAAM,OAAO,oBAAoB;IACrB,IAAI,CAAO;IACX,UAAU,GAAG,oBAAoB,CAAC;IAE5C,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,eAAwB;QACpC,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;QACtC,
|
|
1
|
+
{"version":3,"file":"pages.js","sourceRoot":"","sources":["../../../src/plugins/record-types/pages.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE1D,MAAM,OAAO,cAAc;IACjB,IAAI,CAAO;IAEnB,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAEM,KAAK,CAAC,iBAAiB,CAC5B,YAAoB;QAEpB,MAAM,KAAK,GAAG,yDAAyD,YAAY,CAAC,KAAK,CACvF,CAAC,EACD,EAAE,CACH,KAAK,CAAC;QACP,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC;QAC1D,MAAM,OAAO,CAAC,IAAI,CAAC;YACjB,IAAI,CAAC,IAAI,CAAC,UAAU,CAClB,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,KAAK,gCAAgC,CAC3D;YACD,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;SAC7B,CAAC,CAAC;QACH,OAAO,IAAI,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;CACF;AAED,MAAM,OAAO,oBAAoB;IACrB,IAAI,CAAO;IACX,UAAU,GAAG,oBAAoB,CAAC;IAE5C,YAAY,IAAU;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,eAAwB;QACpC,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;QACtC,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,IAAI,CAAC,IAAI;iBACZ,OAAO,CAAC,WAAW,CAAC;iBACpB,QAAQ,CAAC,WAAW,CAAC;iBACrB,YAAY,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAChD,CAAC;QACD,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,IAAI;QACR,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,CAAC;QACjD,MAAM,OAAO,CAAC,IAAI,CAAC;YACjB,IAAI,CAAC,IAAI,CAAC,UAAU,CAClB,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,KAAK,+BAA+B,CAC1D;YACD,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC;SAC7B,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,wBAAwB;QAC5B,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,CAAC;QACzE,IAAI,eAAe,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YACpD,IAAI,CAAC,MAAM,WAAW,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;gBACpC,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,WAAW,EAAE,CAAC;gBACjD,IAAI,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC;oBACrB,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;oBACxB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;CACF"}
|
|
@@ -6,7 +6,7 @@ export class RelateContactToMultipleAccounts extends BrowserforcePlugin {
|
|
|
6
6
|
const page = await this.browserforce.openPage(BASE_PATH);
|
|
7
7
|
const response = {
|
|
8
8
|
enabled: await page
|
|
9
|
-
.
|
|
9
|
+
.locator('input[id$=":sharedContactsCheckBox"]')
|
|
10
10
|
.isChecked(),
|
|
11
11
|
};
|
|
12
12
|
await page.close();
|
|
@@ -16,43 +16,38 @@ export class RelateContactToMultipleAccounts extends BrowserforcePlugin {
|
|
|
16
16
|
const page = await this.browserforce.openPage(BASE_PATH);
|
|
17
17
|
await this.waitForProcessFinished(page);
|
|
18
18
|
// First we have to click the 'Edit' button, to make the checkbox editable
|
|
19
|
-
await
|
|
19
|
+
await Promise.all([
|
|
20
|
+
page.waitForEvent('load'),
|
|
21
|
+
page.locator('input[id$=":edit"]').first().click(),
|
|
22
|
+
]);
|
|
20
23
|
// Change the value of the checkbox
|
|
21
24
|
await page
|
|
22
|
-
.
|
|
23
|
-
.
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
.
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
.
|
|
30
|
-
.
|
|
31
|
-
await
|
|
32
|
-
.
|
|
33
|
-
.click()
|
|
34
|
-
|
|
25
|
+
.locator('input[id$=":sharedContactsCheckBox"]')
|
|
26
|
+
.setChecked(config.enabled);
|
|
27
|
+
const saveButton = page.locator('input[id$=":save"]').first();
|
|
28
|
+
if (config.enabled) {
|
|
29
|
+
await Promise.all([page.waitForEvent('load'), saveButton.click()]);
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
await saveButton.click();
|
|
33
|
+
await page.locator('input#disable_confirm').click();
|
|
34
|
+
await Promise.all([
|
|
35
|
+
page.waitForEvent('load'),
|
|
36
|
+
page.locator('input#sharedContactsDisableConfirmButton').click(),
|
|
37
|
+
]);
|
|
35
38
|
}
|
|
36
39
|
await page.close();
|
|
37
40
|
}
|
|
38
41
|
async waitForProcessFinished(page) {
|
|
39
42
|
await retry(async () => {
|
|
40
|
-
const
|
|
41
|
-
|
|
42
|
-
.
|
|
43
|
-
if (enablingCount > 0) {
|
|
44
|
-
const message = await page
|
|
45
|
-
.getByText("In progress: We're enabling")
|
|
46
|
-
.innerText();
|
|
43
|
+
const enabling = page.locator('#enablingInProgress');
|
|
44
|
+
if ((await enabling.count()) > 0) {
|
|
45
|
+
const message = await enabling.innerText();
|
|
47
46
|
throw new Error(message);
|
|
48
47
|
}
|
|
49
|
-
const
|
|
50
|
-
|
|
51
|
-
.
|
|
52
|
-
if (disablingCount > 0) {
|
|
53
|
-
const message = await page
|
|
54
|
-
.getByText("In progress: We're disabling")
|
|
55
|
-
.innerText();
|
|
48
|
+
const disabling = page.locator('#disablingInProgress');
|
|
49
|
+
if ((await disabling.count()) > 0) {
|
|
50
|
+
const message = await disabling.innerText();
|
|
56
51
|
throw new Error(message);
|
|
57
52
|
}
|
|
58
53
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/relate-contact-to-multiple-accounts/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,MAAM,SAAS,GAAG,6BAA6B,CAAC;AAMhD,MAAM,OAAO,+BAAgC,SAAQ,kBAAkB;IAC9D,KAAK,CAAC,QAAQ,CAAC,UAAmB;QACvC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACzD,MAAM,QAAQ,GAAG;YACf,OAAO,EAAE,MAAM,IAAI;iBAChB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/relate-contact-to-multiple-accounts/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,MAAM,SAAS,GAAG,6BAA6B,CAAC;AAMhD,MAAM,OAAO,+BAAgC,SAAQ,kBAAkB;IAC9D,KAAK,CAAC,QAAQ,CAAC,UAAmB;QACvC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACzD,MAAM,QAAQ,GAAG;YACf,OAAO,EAAE,MAAM,IAAI;iBAChB,OAAO,CAAC,sCAAsC,CAAC;iBAC/C,SAAS,EAAE;SACf,CAAC;QACF,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEM,KAAK,CAAC,KAAK,CAAC,MAAc;QAC/B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACzD,MAAM,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QACxC,0EAA0E;QAC1E,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;YACzB,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE;SACnD,CAAC,CAAC;QACH,mCAAmC;QACnC,MAAM,IAAI;aACP,OAAO,CAAC,sCAAsC,CAAC;aAC/C,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAE9B,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,KAAK,EAAE,CAAC;QAC9D,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACrE,CAAC;aAAM,CAAC;YACN,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC;YACzB,MAAM,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC,KAAK,EAAE,CAAC;YACpD,MAAM,OAAO,CAAC,GAAG,CAAC;gBAChB,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;gBACzB,IAAI,CAAC,OAAO,CAAC,0CAA0C,CAAC,CAAC,KAAK,EAAE;aACjE,CAAC,CAAC;QACL,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,IAAU;QACrC,MAAM,KAAK,CAAC,KAAK,IAAI,EAAE;YACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;YACrD,IAAI,CAAC,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjC,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,CAAC;gBAC3C,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;YAC3B,CAAC;YACD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;YACvD,IAAI,CAAC,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;gBAClC,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,SAAS,EAAE,CAAC;gBAC5C,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -11,8 +11,10 @@ export class SalesforceCpqConfig extends BrowserforcePlugin {
|
|
|
11
11
|
logger = this.browserforce.logger;
|
|
12
12
|
async retrieve(definition) {
|
|
13
13
|
const page = await this.browserforce.openPage(BASE_PATH);
|
|
14
|
-
await
|
|
15
|
-
|
|
14
|
+
await Promise.all([
|
|
15
|
+
page.waitForEvent('load'),
|
|
16
|
+
page.locator(CONFIGURE_SELECTOR).click(),
|
|
17
|
+
]);
|
|
16
18
|
const response = {};
|
|
17
19
|
if (definition) {
|
|
18
20
|
for (const [keyTab, valueTab] of Object.entries(formConfig)) {
|
|
@@ -59,8 +61,10 @@ export class SalesforceCpqConfig extends BrowserforcePlugin {
|
|
|
59
61
|
}
|
|
60
62
|
async apply(config) {
|
|
61
63
|
const page = await this.browserforce.openPage(BASE_PATH);
|
|
62
|
-
await
|
|
63
|
-
|
|
64
|
+
await Promise.all([
|
|
65
|
+
page.waitForEvent('load'),
|
|
66
|
+
page.locator(CONFIGURE_SELECTOR).click(),
|
|
67
|
+
]);
|
|
64
68
|
/*
|
|
65
69
|
This to click on the 'Generate Integration User Permissions button' for first time setup.
|
|
66
70
|
Once the button is clicked, it will not be available for the next time.
|
|
@@ -122,6 +126,7 @@ export class SalesforceCpqConfig extends BrowserforcePlugin {
|
|
|
122
126
|
const chooseFieldOption = selectFieldOptions.find((x) => x.text === config[keyTab][keyItem]);
|
|
123
127
|
if (!chooseFieldOption) {
|
|
124
128
|
const availableOption = selectFieldOptions.map((option) => option.text);
|
|
129
|
+
await page.close();
|
|
125
130
|
throw new Error(`Fail to set '${item.label}' with value '${config[keyTab][keyItem]}'. \nPlease make sure to select one of this available options: ${JSON.stringify(availableOption)}\n`);
|
|
126
131
|
}
|
|
127
132
|
await page
|
|
@@ -129,8 +134,10 @@ export class SalesforceCpqConfig extends BrowserforcePlugin {
|
|
|
129
134
|
.selectOption(chooseFieldOption.value);
|
|
130
135
|
}
|
|
131
136
|
if (item.immediatelySave) {
|
|
132
|
-
await
|
|
133
|
-
|
|
137
|
+
await Promise.all([
|
|
138
|
+
page.waitForEvent('load'),
|
|
139
|
+
page.locator(SAVE_SELECTOR).click(),
|
|
140
|
+
]);
|
|
134
141
|
}
|
|
135
142
|
}
|
|
136
143
|
catch (e) {
|
|
@@ -146,8 +153,10 @@ export class SalesforceCpqConfig extends BrowserforcePlugin {
|
|
|
146
153
|
}
|
|
147
154
|
}
|
|
148
155
|
}
|
|
149
|
-
await
|
|
150
|
-
|
|
156
|
+
await Promise.all([
|
|
157
|
+
page.waitForEvent('load'),
|
|
158
|
+
page.locator(SAVE_SELECTOR).click(),
|
|
159
|
+
]);
|
|
151
160
|
}
|
|
152
161
|
/*
|
|
153
162
|
This to click on the 'Authorize New Calculation Service' link under Pricing and Calculation tab.
|
|
@@ -170,8 +179,10 @@ export class SalesforceCpqConfig extends BrowserforcePlugin {
|
|
|
170
179
|
const newPage = await popupPromise;
|
|
171
180
|
if (newPage) {
|
|
172
181
|
// Click on 'Allow' button
|
|
173
|
-
await
|
|
174
|
-
|
|
182
|
+
await Promise.all([
|
|
183
|
+
page.waitForEvent('load'), // Wait for the main page to refresh
|
|
184
|
+
newPage.locator(ALLOW_SELECTOR).click(),
|
|
185
|
+
]);
|
|
175
186
|
this.logger?.log('The main page has refreshed after allowing.');
|
|
176
187
|
await newPage.close();
|
|
177
188
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/salesforce-cpq-config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,SAAS,GACb,6EAA6E,CAAC;AAChF,MAAM,SAAS,GAAG,iDAAiD,CAAC;AAEpE,MAAM,kBAAkB,GACtB,0DAA0D,CAAC;AAC7D,MAAM,8CAA8C,GAClD,4EAA4E,CAAC;AAC/E,MAAM,aAAa,GAAG,4CAA4C,CAAC;AACnE,MAAM,0CAA0C,GAC9C,iEAAiE,CAAC;AACpE,MAAM,cAAc,GAAG,oBAAoB,CAAC;AAI5C,MAAM,OAAO,mBAAoB,SAAQ,kBAAkB;IACjD,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;IACnC,KAAK,CAAC,QAAQ,CAAC,UAAmB;QACvC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACzD,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/salesforce-cpq-config/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,6 +28,7 @@ export class SalesforceToSalesforce extends BrowserforcePlugin {
|
|
|
28
28
|
await page.close();
|
|
29
29
|
const result = await this.retrieve();
|
|
30
30
|
if (result.enabled !== config.enabled) {
|
|
31
|
+
await page.close();
|
|
31
32
|
throw new Error('setting was not applied as expected');
|
|
32
33
|
}
|
|
33
34
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/salesforce-to-salesforce/index.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,MAAM,SAAS,GAAG,mCAAmC,CAAC;AAMtD,MAAM,OAAO,sBAAuB,SAAQ,kBAAkB;IACrD,KAAK,CAAC,QAAQ;QACnB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACzD,MAAM,QAAQ,GAAG;YACf,OAAO,EAAE,IAAI;SACd,CAAC;QAEF,MAAM,iBAAiB,GAAG,MAAM,IAAI;aACjC,SAAS,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;aACrC,KAAK,EAAE,CAAC;QACX,IAAI,iBAAiB,KAAK,CAAC,EAAE,CAAC;YAC5B,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC;QAC3B,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEM,KAAK,CAAC,KAAK,CAAC,MAAc;QAC/B,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC/D,CAAC;QAED,kFAAkF;QAClF,MAAM,MAAM,CAAC,KAAK,IAAI,EAAE;YACtB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAEzD,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE,CAAC;YACxC,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC;YACjE,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;YAEnB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;YACrC,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM,CAAC,OAAO,EAAE,CAAC;gBACtC,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;YACzD,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/salesforce-to-salesforce/index.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,MAAM,SAAS,GAAG,mCAAmC,CAAC;AAMtD,MAAM,OAAO,sBAAuB,SAAQ,kBAAkB;IACrD,KAAK,CAAC,QAAQ;QACnB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACzD,MAAM,QAAQ,GAAG;YACf,OAAO,EAAE,IAAI;SACd,CAAC;QAEF,MAAM,iBAAiB,GAAG,MAAM,IAAI;aACjC,SAAS,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;aACrC,KAAK,EAAE,CAAC;QACX,IAAI,iBAAiB,KAAK,CAAC,EAAE,CAAC;YAC5B,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC;QAC3B,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEM,KAAK,CAAC,KAAK,CAAC,MAAc;QAC/B,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC/D,CAAC;QAED,kFAAkF;QAClF,MAAM,MAAM,CAAC,KAAK,IAAI,EAAE;YACtB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAEzD,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE,CAAC;YACxC,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC;YACjE,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;YAEnB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;YACrC,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM,CAAC,OAAO,EAAE,CAAC;gBACtC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;gBACnB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;YACzD,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -41,6 +41,7 @@ export class AuthenticationConfiguration extends BrowserforcePlugin {
|
|
|
41
41
|
return null;
|
|
42
42
|
}, svc.label));
|
|
43
43
|
if (!checkboxId) {
|
|
44
|
+
await page.close();
|
|
44
45
|
throw new Error(`Authentication service "${svc.label}" not found`);
|
|
45
46
|
}
|
|
46
47
|
const selector = `[id="${checkboxId}"]`;
|
|
@@ -53,10 +54,13 @@ export class AuthenticationConfiguration extends BrowserforcePlugin {
|
|
|
53
54
|
.locator(SERVICE_CHECKBOX_SELECTOR)
|
|
54
55
|
.evaluateAll((inputs) => inputs.some((cb) => cb.checked));
|
|
55
56
|
if (!anyChecked) {
|
|
57
|
+
await page.close();
|
|
56
58
|
throw new Error('Change failed: "You must select at least one authentication service."');
|
|
57
59
|
}
|
|
58
|
-
await
|
|
59
|
-
|
|
60
|
+
await Promise.all([
|
|
61
|
+
page.waitForResponse((resp) => new URL(resp.url()).pathname === '/domainname/DomainName.apexp'),
|
|
62
|
+
frameOrPage.locator(SAVE_BUTTON_SELECTOR).first().click(),
|
|
63
|
+
]);
|
|
60
64
|
await page.close();
|
|
61
65
|
}
|
|
62
66
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/plugins/security/authentication-configuration/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/plugins/security/authentication-configuration/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -104,7 +104,6 @@ export class CertificateAndKeyManagement extends BrowserforcePlugin {
|
|
|
104
104
|
}
|
|
105
105
|
if (plan.importFromKeystore) {
|
|
106
106
|
for (const certificate of plan.importFromKeystore) {
|
|
107
|
-
const page = await this.browserforce.openPage(`${KEYSTORE_IMPORT_PATH}`);
|
|
108
107
|
// TODO: make relative to this.command.flags.definitionfile
|
|
109
108
|
if (!certificate.filePath) {
|
|
110
109
|
throw new Error(`To import a certificate, the filePath is mandatory.`);
|
|
@@ -113,6 +112,7 @@ export class CertificateAndKeyManagement extends BrowserforcePlugin {
|
|
|
113
112
|
if (!existsSync(filePath)) {
|
|
114
113
|
throw new Error(`file does not exist: ${filePath}`);
|
|
115
114
|
}
|
|
115
|
+
const page = await this.browserforce.openPage(`${KEYSTORE_IMPORT_PATH}`);
|
|
116
116
|
await page.locator(FILE_UPLOAD_SELECTOR).setInputFiles(filePath);
|
|
117
117
|
if (certificate.password) {
|
|
118
118
|
await page
|
|
@@ -122,7 +122,7 @@ export class CertificateAndKeyManagement extends BrowserforcePlugin {
|
|
|
122
122
|
await page.locator(SAVE_BUTTON_SELECTOR).first().click();
|
|
123
123
|
await Promise.race([
|
|
124
124
|
page.waitForURL((url) => url.pathname !== `/${KEYSTORE_IMPORT_PATH}`),
|
|
125
|
-
async () => {
|
|
125
|
+
(async () => {
|
|
126
126
|
try {
|
|
127
127
|
await waitForPageErrors(page);
|
|
128
128
|
}
|
|
@@ -132,7 +132,7 @@ export class CertificateAndKeyManagement extends BrowserforcePlugin {
|
|
|
132
132
|
}
|
|
133
133
|
throw e;
|
|
134
134
|
}
|
|
135
|
-
},
|
|
135
|
+
})(),
|
|
136
136
|
]);
|
|
137
137
|
if (certificate.name) {
|
|
138
138
|
// rename cert as it has the wrong name
|