Skip to content

Commit 80709bc

Browse files
committed
feat: generator for page_types.xml
1 parent 0e7865c commit 80709bc

12 files changed

+58
-9
lines changed

CHANGELOG.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@ Check [Keep a Changelog](http://keepachangelog.com/) for recommendations on how
66

77
## [Unreleased]
88

9-
- Added: Generator command for sample layout.xml file
9+
- Added: Generator command for sample Layout XML file
10+
- Added: Generator command for sample page_types.xml file
1011

1112
## [1.1.3] - 3/12/2025
1213

package.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,10 @@
114114
{
115115
"command": "magento-toolbox.generateLayoutXmlFile",
116116
"title": "Magento Toolbox: Generate Layout XML"
117+
},
118+
{
119+
"command": "magento-toolbox.generatePageTypesXmlFile",
120+
"title": "Magento Toolbox: Generate Page Types XML"
117121
}
118122
],
119123
"menus": {
@@ -191,6 +195,10 @@
191195
{
192196
"command": "magento-toolbox.generateLayoutXmlFile",
193197
"when": "resourcePath =~ /app\\/code\\/.+\\/.+/i"
198+
},
199+
{
200+
"command": "magento-toolbox.generatePageTypesXmlFile",
201+
"when": "resourcePath =~ /app\\/code\\/.+\\/.+/i"
194202
}
195203
]
196204
}

src/command/GenerateAclXmlFileCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ export default class GenerateAclXmlFileCommand extends SimpleTemplateGeneratorCo
1010
return 'ACL XML File';
1111
}
1212

13-
getTemplatePath(data: TemplateWizardData): string {
13+
getFilePath(data: TemplateWizardData): string {
1414
const [vendor, module] = data.module.split('_');
1515

1616
return `app/code/${vendor}/${module}/etc/acl.xml`;

src/command/GenerateDiXmlFileCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ export default class GenerateDiXmlFileCommand extends SimpleTemplateGeneratorCom
2323
return 'DI XML File';
2424
}
2525

26-
getTemplatePath(data: TemplateWizardData): string {
26+
getFilePath(data: TemplateWizardData): string {
2727
const [vendor, module] = data.module.split('_');
2828

2929
if (data.area && data.area !== MagentoScope.Global) {

src/command/GenerateEventsXmlCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ export default class GenerateEventsXmlCommand extends SimpleTemplateGeneratorCom
2828
return FileHeader.getHeader(data.module);
2929
}
3030

31-
getTemplatePath(data: TemplateWizardData): string {
31+
getFilePath(data: TemplateWizardData): string {
3232
const [vendor, module] = data.module.split('_');
3333

3434
if (data.area && data.area !== MagentoScope.Global) {

src/command/GenerateGraphqlSchemaFile.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ export default class GenerateGraphqlSchemaFileCommand extends SimpleTemplateGene
1010
return 'GraphQL Schema File';
1111
}
1212

13-
getTemplatePath(data: TemplateWizardData): string {
13+
getFilePath(data: TemplateWizardData): string {
1414
const [vendor, module] = data.module.split('_');
1515

1616
return `app/code/${vendor}/${module}/etc/schema.graphqls`;
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
import { MagentoScope } from 'types';
2+
import { SimpleTemplateGeneratorCommand } from './SimpleTemplateGeneratorCommand';
3+
import { TemplateWizardData } from 'wizard/SimpleTemplateWizard';
4+
import FileHeader from 'common/xml/FileHeader';
5+
6+
export default class GeneratePageTypesXmlCommand extends SimpleTemplateGeneratorCommand {
7+
constructor() {
8+
super('magento-toolbox.generatePageTypesXmlFile');
9+
}
10+
11+
getAreas(): MagentoScope[] {
12+
return [MagentoScope.Frontend];
13+
}
14+
15+
getWizardTitle(): string {
16+
return 'Page Types XML File';
17+
}
18+
19+
getFileHeader(data: TemplateWizardData): string | undefined {
20+
return FileHeader.getHeader(data.module);
21+
}
22+
23+
getFilePath(data: TemplateWizardData): string {
24+
const [vendor, module] = data.module.split('_');
25+
26+
return `app/code/${vendor}/${module}/etc/frontend/page_types.xml`;
27+
}
28+
29+
getTemplateName(data: TemplateWizardData): string {
30+
return 'xml/blank-page-types';
31+
}
32+
}

src/command/GenerateRoutesXmlFileCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ export default class GenerateRoutesXmlFileCommand extends SimpleTemplateGenerato
2222
return FileHeader.getHeader(data.module);
2323
}
2424

25-
getTemplatePath(data: TemplateWizardData): string {
25+
getFilePath(data: TemplateWizardData): string {
2626
const [vendor, module] = data.module.split('_');
2727

2828
return `app/code/${vendor}/${module}/etc/${data.area}/routes.xml`;

src/command/GenerateWebapiXmlFileCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ export default class GenerateWebapiXmlFileCommand extends SimpleTemplateGenerato
1515
return FileHeader.getHeader(data.module);
1616
}
1717

18-
getTemplatePath(data: TemplateWizardData): string {
18+
getFilePath(data: TemplateWizardData): string {
1919
const [vendor, module] = data.module.split('_');
2020

2121
return `app/code/${vendor}/${module}/etc/webapi.xml`;

src/command/SimpleTemplateGeneratorCommand.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ export abstract class SimpleTemplateGeneratorCommand extends Command {
1616
return [];
1717
}
1818

19-
abstract getTemplatePath(data: TemplateWizardData): string;
19+
abstract getFilePath(data: TemplateWizardData): string;
2020

2121
abstract getTemplateName(data: TemplateWizardData): string;
2222

@@ -60,7 +60,7 @@ export abstract class SimpleTemplateGeneratorCommand extends Command {
6060
);
6161

6262
const manager = new FileGeneratorManager([
63-
new TemplateGenerator(this.getTemplatePath(data), this.getTemplateName(data), {
63+
new TemplateGenerator(this.getFilePath(data), this.getTemplateName(data), {
6464
...this.getTemplateData(data),
6565
fileHeader: this.getFileHeader(data) ?? '',
6666
}),

0 commit comments

Comments
 (0)