Skip to content

Commit 8035aaf

Browse files
authored
feat: delete source W-20175982 (#6755)
1 parent f936bf8 commit 8035aaf

29 files changed

Lines changed: 467 additions & 103 deletions

File tree

package-lock.json

Lines changed: 9 additions & 9 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/playwright-vscode-ext/src/utils/fileHelpers.ts

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,18 +32,22 @@ export const createFileWithContents = async (page: Page, filePath: string, conte
3232
await quickInput.waitFor({ state: 'visible', timeout: 10_000 });
3333

3434
// Check what prompt appears:
35-
// - If "Text File" option is visible → file type picker (select it first)
35+
// - If "Text File" option is visible → file type picker (type filename directly per placeholder text)
3636
// - Otherwise → filename input (type filename directly)
3737
const textFileOption = page.locator(QUICK_INPUT_LIST_ROW).filter({ hasText: 'Text File' });
3838
const hasFileTypePicker = await textFileOption.isVisible().catch(() => false);
3939

4040
if (hasFileTypePicker) {
41-
// File type picker flow: select "Text File", then filename prompt appears
42-
await textFileOption.click();
43-
await quickInput.waitFor({ state: 'visible', timeout: 5000 });
41+
// File type picker flow: placeholder says "Select File Type or Enter File Name..."
42+
// Type filename directly without selecting "Text File" option
43+
const input = quickInput.getByRole('textbox').first();
44+
await input.waitFor({ state: 'attached', timeout: 10_000 });
45+
await input.focus();
46+
// Wait for input to be visible after focus
47+
await expect(input).toBeVisible({ timeout: 10_000 });
4448
}
4549

46-
// Now at filename prompt (both flows converge here)
50+
// Type filename (works for both file type picker and direct input flows)
4751
await page.keyboard.type(fileName);
4852
await page.keyboard.press('Enter');
4953

packages/playwright-vscode-ext/src/web/createHeadlessServer.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ export const createHeadlessServer = async (options: HeadlessServerOptions): Prom
2929
await open({
3030
browserType: 'chromium',
3131
headless: true,
32+
quality: 'stable',
3233
port: 3001,
3334
printServerLog: true,
3435
verbose: true,

packages/salesforcedx-utils-vscode/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
"@salesforce/vscode-service-provider": "^1.5.0",
1919
"applicationinsights": "1.0.7",
2020
"cross-spawn": "7.0.6",
21-
"effect": "^3.10.3",
21+
"effect": "^3.19.14",
2222
"rxjs": "^5.4.1",
2323
"tree-kill": "^1.1.0",
2424
"vscode-uri": "^3.1.0",

packages/salesforcedx-vscode-apex-replay-debugger/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
"@salesforce/salesforcedx-utils": "*",
3030
"@salesforce/salesforcedx-utils-vscode": "*",
3131
"@salesforce/vscode-i18n": "*",
32-
"effect": "^3.19.13",
32+
"effect": "^3.19.14",
3333
"vscode-uri": "^3.1.0"
3434
},
3535
"devDependencies": {

packages/salesforcedx-vscode-core/src/index.ts

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -104,10 +104,18 @@ const registerSharedCommands = (): vscode.Disposable => {
104104
projectDeployStart(isDeployOnSave, true)
105105
),
106106
vscode.commands.registerCommand('sf.project.retrieve.start', projectRetrieveStart),
107+
vscode.commands.registerCommand('sf.project.retrieve.start.ignore.conflicts', () => projectRetrieveStart(true)),
107108
vscode.commands.registerCommand('sf.view.all.changes', viewAllChanges),
108109
vscode.commands.registerCommand('sf.view.local.changes', viewLocalChanges),
109110
vscode.commands.registerCommand('sf.view.remote.changes', viewRemoteChanges),
110-
vscode.commands.registerCommand('sf.apex.generate.class', apexGenerateClass)
111+
vscode.commands.registerCommand('sf.apex.generate.class', apexGenerateClass),
112+
vscode.commands.registerCommand('sf.delete.source', deleteSource),
113+
vscode.commands.registerCommand('sf.delete.source.current.file', deleteSource),
114+
vscode.commands.registerCommand('sf.deploy.source.path', deploySourcePaths),
115+
vscode.commands.registerCommand('sf.deploy.in.manifest', deployManifest),
116+
vscode.commands.registerCommand('sf.retrieve.source.path', retrieveSourcePaths),
117+
vscode.commands.registerCommand('sf.retrieve.current.source.file', retrieveSourcePaths),
118+
vscode.commands.registerCommand('sf.retrieve.in.manifest', retrieveManifest)
111119
);
112120
};
113121

@@ -122,16 +130,8 @@ const registerCommands = (extensionContext: vscode.ExtensionContext): vscode.Dis
122130
vscode.commands.registerCommand('sf.diff', sourceDiff),
123131
vscode.commands.registerCommand('sf.open.documentation', openDocumentation),
124132
vscode.commands.registerCommand('sf.internal.refreshsobjects', refreshSObjects),
125-
vscode.commands.registerCommand('sf.delete.source', deleteSource),
126-
vscode.commands.registerCommand('sf.delete.source.current.file', deleteSource),
127133
vscode.commands.registerCommand('sf.deploy.current.source.file', deploySourcePaths),
128-
vscode.commands.registerCommand('sf.deploy.in.manifest', deployManifest),
129134
vscode.commands.registerCommand('sf.deploy.multiple.source.paths', deploySourcePaths),
130-
vscode.commands.registerCommand('sf.deploy.source.path', deploySourcePaths),
131-
vscode.commands.registerCommand('sf.project.retrieve.start.ignore.conflicts', () => projectRetrieveStart(true)),
132-
vscode.commands.registerCommand('sf.retrieve.source.path', retrieveSourcePaths),
133-
vscode.commands.registerCommand('sf.retrieve.current.source.file', retrieveSourcePaths),
134-
vscode.commands.registerCommand('sf.retrieve.in.manifest', retrieveManifest),
135135
vscode.commands.registerCommand('sf.task.stop', taskStop),
136136
vscode.commands.registerCommand('sf.apex.generate.unit.test.class', apexGenerateUnitTestClass),
137137
vscode.commands.registerCommand('sf.analytics.generate.template', analyticsGenerateTemplate),

packages/salesforcedx-vscode-lightning/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@
7373
"acorn-loose": "^6.0.0",
7474
"acorn-walk": "^6.0.0",
7575
"applicationinsights": "1.0.7",
76-
"effect": "^3.10.3",
76+
"effect": "^3.19.14",
7777
"vscode-html-languageservice": "^5.5.1",
7878
"vscode-languageclient": "^9.0.1"
7979
},

packages/salesforcedx-vscode-lwc/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
"@salesforce/salesforcedx-utils-vscode": "*",
3232
"@salesforce/vscode-i18n": "*",
3333
"applicationinsights": "1.0.7",
34-
"effect": "^3.18.4",
34+
"effect": "^3.19.14",
3535
"jest-editor-support": "31.1.2",
3636
"jest-regex-util": "^24.9.0",
3737
"rxjs": "^5.4.1",

packages/salesforcedx-vscode-metadata/package.json

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
"Other"
2525
],
2626
"dependencies": {
27-
"effect": "^3.19.13",
27+
"effect": "^3.19.14",
2828
"@salesforce/vscode-i18n": "*",
2929
"vscode-uri": "^3.1.0"
3030
},
@@ -248,6 +248,14 @@
248248
"command": "sf.apex.generate.class",
249249
"when": "salesforcedx-vscode-metadata.showSharedCommands"
250250
},
251+
{
252+
"command": "sf.delete.source",
253+
"when": "never"
254+
},
255+
{
256+
"command": "sf.delete.source.current.file",
257+
"when": "salesforcedx-vscode-metadata.showSharedCommands && sf:has_target_org && resourceLangId != 'forcesourcemanifest'"
258+
},
251259
{
252260
"command": "sf.deploy.source.path",
253261
"when": "never"
@@ -278,6 +286,10 @@
278286
}
279287
],
280288
"editor/context": [
289+
{
290+
"command": "sf.delete.source",
291+
"when": "salesforcedx-vscode-metadata.showSharedCommands && sf:has_target_org && resourceLangId != 'forcesourcemanifest'"
292+
},
281293
{
282294
"command": "sf.deploy.source.path",
283295
"when": "salesforcedx-vscode-metadata.showSharedCommands && sf:has_target_org && resourceLangId != 'forcesourcemanifest'"
@@ -296,6 +308,10 @@
296308
}
297309
],
298310
"explorer/context": [
311+
{
312+
"command": "sf.delete.source",
313+
"when": "salesforcedx-vscode-metadata.showSharedCommands && sf:has_target_org && resourceLangId != 'forcesourcemanifest'"
314+
},
299315
{
300316
"command": "sf.deploy.source.path",
301317
"when": "salesforcedx-vscode-metadata.showSharedCommands && sf:has_target_org && resourceLangId != 'forcesourcemanifest'"
@@ -347,6 +363,14 @@
347363
"command": "sf.apex.generate.class",
348364
"title": "%apex_generate_class_text%"
349365
},
366+
{
367+
"command": "sf.delete.source",
368+
"title": "%delete_source_text%"
369+
},
370+
{
371+
"command": "sf.delete.source.current.file",
372+
"title": "%delete_source_text%"
373+
},
350374
{
351375
"command": "sf.deploy.source.path",
352376
"title": "%deploy_this_source_text%"

packages/salesforcedx-vscode-metadata/package.nls.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
"project_retrieve_start_ignore_conflicts_default_org_text": "SFDX: Pull Source from Default Org and Ignore Conflicts",
1414
"retrieve_this_source_text": "SFDX: Retrieve This Source from Org",
1515
"retrieve_in_manifest_text": "SFDX: Retrieve Source in Manifest from Org",
16+
"delete_source_text": "SFDX: Delete from Project and Org",
1617
"source_tracking_status_bar_local_changes": "Local Changes",
1718
"source_tracking_status_bar_remote_changes": "Remote Changes",
1819
"source_tracking_status_bar_conflicts": "Conflicts",

0 commit comments

Comments
 (0)