Skip to content

Commit c44d804

Browse files
committed
Factory and Seeder show in command pallette
1 parent 9abbc79 commit c44d804

File tree

3 files changed

+76
-28
lines changed

3 files changed

+76
-28
lines changed

package.json

Lines changed: 66 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,11 @@
8585
"category": "Laravel File Creator",
8686
"title": "Create Exception"
8787
},
88+
{
89+
"command": "laravelFileCreator.createFactory",
90+
"category": "Laravel File Creator",
91+
"title": "Create Factory"
92+
},
8893
{
8994
"command": "laravelFileCreator.createFormRequest",
9095
"category": "Laravel File Creator",
@@ -145,6 +150,11 @@
145150
"category": "Laravel File Creator",
146151
"title": "Create Rule"
147152
},
153+
{
154+
"command": "laravelFileCreator.createSeeder",
155+
"category": "Laravel File Creator",
156+
"title": "Create Seeder"
157+
},
148158
{
149159
"command": "laravelFileCreator.createLaravelFile",
150160
"category": "Laravel File Creator",
@@ -207,6 +217,10 @@
207217
"command": "laravelFileCreator.createException",
208218
"when": "false"
209219
},
220+
{
221+
"command": "laravelFileCreator.createFactory",
222+
"when": "laravelFileCreator.activated"
223+
},
210224
{
211225
"command": "laravelFileCreator.createFormRequest",
212226
"when": "false"
@@ -255,6 +269,10 @@
255269
"command": "laravelFileCreator.createRule",
256270
"when": "false"
257271
},
272+
{
273+
"command": "laravelFileCreator.createSeeder",
274+
"when": "laravelFileCreator.activated"
275+
},
258276
{
259277
"command": "laravelFileCreator.createLaravelFile",
260278
"when": "false"
@@ -327,65 +345,75 @@
327345
"when": "explorerResourceIsFolder && laravelFileCreator.activated && config.laravelFileCreator.showCreateException",
328346
"group": "1_laravelFileCreator@12"
329347
},
348+
{
349+
"command": "laravelFileCreator.createFactory",
350+
"when": "explorerResourceIsFolder && laravelFileCreator.activated && config.laravelFileCreator.showCreateFactory",
351+
"group": "1_laravelFileCreator@13"
352+
},
330353
{
331354
"command": "laravelFileCreator.createFormRequest",
332355
"when": "explorerResourceIsFolder && laravelFileCreator.activated && config.laravelFileCreator.showCreateFormRequest",
333-
"group": "1_laravelFileCreator@13"
356+
"group": "1_laravelFileCreator@14"
334357
},
335358
{
336359
"command": "laravelFileCreator.createJob",
337360
"when": "explorerResourceIsFolder && laravelFileCreator.activated && config.laravelFileCreator.showCreateJob",
338-
"group": "1_laravelFileCreator@14"
361+
"group": "1_laravelFileCreator@15"
339362
},
340363
{
341364
"command": "laravelFileCreator.createJsonResource",
342365
"when": "explorerResourceIsFolder && laravelFileCreator.activated && config.laravelFileCreator.showCreateJsonResource",
343-
"group": "1_laravelFileCreator@15"
366+
"group": "1_laravelFileCreator@16"
344367
},
345368
{
346369
"command": "laravelFileCreator.createJsonResourceCollection",
347370
"when": "explorerResourceIsFolder && laravelFileCreator.activated && config.laravelFileCreator.showCreateJsonResourceCollection",
348-
"group": "1_laravelFileCreator@16"
371+
"group": "1_laravelFileCreator@17"
349372
},
350373
{
351374
"command": "laravelFileCreator.createModel",
352375
"when": "explorerResourceIsFolder && laravelFileCreator.activated && config.laravelFileCreator.showCreateModel",
353-
"group": "1_laravelFileCreator@19"
376+
"group": "1_laravelFileCreator@20"
354377
},
355378
{
356379
"command": "laravelFileCreator.createMigration",
357380
"when": "explorerResourceIsFolder && laravelFileCreator.activated && config.laravelFileCreator.showCreateMigration",
358-
"group": "1_laravelFileCreator@18"
381+
"group": "1_laravelFileCreator@19"
359382
},
360383
{
361384
"command": "laravelFileCreator.createMailable",
362385
"when": "explorerResourceIsFolder && laravelFileCreator.activated && config.laravelFileCreator.showCreateMailable",
363-
"group": "1_laravelFileCreator@17"
386+
"group": "1_laravelFileCreator@18"
364387
},
365388
{
366389
"command": "laravelFileCreator.createNotification",
367390
"when": "explorerResourceIsFolder && laravelFileCreator.activated && config.laravelFileCreator.showCreateNotification",
368-
"group": "1_laravelFileCreator@20"
391+
"group": "1_laravelFileCreator@21"
369392
},
370393
{
371394
"command": "laravelFileCreator.createPestTest",
372395
"when": "explorerResourceIsFolder && laravelFileCreator.activated && config.laravelFileCreator.showCreatePestTest",
373-
"group": "1_laravelFileCreator@21"
396+
"group": "1_laravelFileCreator@22"
374397
},
375398
{
376399
"command": "laravelFileCreator.createPolicy",
377400
"when": "explorerResourceIsFolder && laravelFileCreator.activated && config.laravelFileCreator.showCreatePolicy",
378-
"group": "1_laravelFileCreator@22"
401+
"group": "1_laravelFileCreator@23"
379402
},
380403
{
381404
"command": "laravelFileCreator.createResourceController",
382405
"when": "explorerResourceIsFolder && laravelFileCreator.activated && config.laravelFileCreator.showCreateResourceController",
383-
"group": "1_laravelFileCreator@23"
406+
"group": "1_laravelFileCreator@24"
384407
},
385408
{
386409
"command": "laravelFileCreator.createRule",
387410
"when": "explorerResourceIsFolder && laravelFileCreator.activated && config.laravelFileCreator.showCreateRule",
388-
"group": "1_laravelFileCreator@24"
411+
"group": "1_laravelFileCreator@25"
412+
},
413+
{
414+
"command": "laravelFileCreator.createSeeder",
415+
"when": "explorerResourceIsFolder && laravelFileCreator.activated && config.laravelFileCreator.showCreateSeeder",
416+
"group": "1_laravelFileCreator@26"
389417
},
390418
{
391419
"command": "laravelFileCreator.createLaravelFile",
@@ -470,89 +498,101 @@
470498
"markdownDescription": "Show in the 'New Laravel file...' menu to create an Exception",
471499
"order": 12
472500
},
501+
"laravelFileCreator.showCreateFactory": {
502+
"type": "boolean",
503+
"default": true,
504+
"markdownDescription": "Show in the 'New Laravel file...' menu to create a Factory",
505+
"order": 13
506+
},
473507
"laravelFileCreator.showCreateFormRequest": {
474508
"type": "boolean",
475509
"default": true,
476510
"markdownDescription": "Show in the 'New Laravel file...' menu to create a Form Request",
477-
"order": 13
511+
"order": 14
478512
},
479513
"laravelFileCreator.showCreateJob": {
480514
"type": "boolean",
481515
"default": false,
482516
"markdownDescription": "Show in the 'New Laravel file...' menu to create a Job",
483-
"order": 14
517+
"order": 15
484518
},
485519
"laravelFileCreator.showCreateJsonResource": {
486520
"type": "boolean",
487521
"default": true,
488522
"markdownDescription": "Show in the 'New Laravel file...' menu to create a JSON Resource",
489-
"order": 15
523+
"order": 16
490524
},
491525
"laravelFileCreator.showCreateJsonResourceCollection": {
492526
"type": "boolean",
493527
"default": false,
494528
"markdownDescription": "Show in the 'New Laravel file...' menu to create a JSON Resource Collection",
495-
"order": 16
529+
"order": 17
496530
},
497531
"laravelFileCreator.showCreateModel": {
498532
"type": "boolean",
499533
"default": true,
500534
"markdownDescription": "Show in the 'New Laravel file...' menu to create a Model",
501-
"order": 19
535+
"order": 20
502536
},
503537
"laravelFileCreator.showCreateMigration": {
504538
"type": "boolean",
505539
"default": true,
506540
"markdownDescription": "Show in the 'New Laravel file...' menu to create a Migration",
507-
"order": 18
541+
"order": 19
508542
},
509543
"laravelFileCreator.showCreateMailable": {
510544
"type": "boolean",
511545
"default": false,
512546
"markdownDescription": "Show in the 'New Laravel file...' menu to create a Mailable",
513-
"order": 17
547+
"order": 18
514548
},
515549
"laravelFileCreator.showCreateNotification": {
516550
"type": "boolean",
517551
"default": false,
518552
"markdownDescription": "Show in the 'New Laravel file...' menu to create a Notification",
519-
"order": 20
553+
"order": 21
520554
},
521555
"laravelFileCreator.showCreatePestTest": {
522556
"type": "boolean",
523557
"default": true,
524558
"markdownDescription": "Show in the 'New Laravel file...' menu to create a Pest Test",
525-
"order": 21
559+
"order": 22
526560
},
527561
"laravelFileCreator.showCreatePolicy": {
528562
"type": "boolean",
529563
"default": false,
530564
"markdownDescription": "Show in the 'New Laravel file...' menu to create a Policy",
531-
"order": 22
565+
"order": 23
532566
},
533567
"laravelFileCreator.showCreateResourceController": {
534568
"type": "boolean",
535569
"default": false,
536570
"markdownDescription": "Show in the 'New Laravel file...' menu to create a Resource Controller",
537-
"order": 23
571+
"order": 24
538572
},
539573
"laravelFileCreator.showCreateRule": {
540574
"type": "boolean",
541575
"default": false,
542576
"markdownDescription": "Show in the 'New Laravel file...' menu to create a Rule",
543-
"order": 24
577+
"order": 25
578+
},
579+
"laravelFileCreator.showCreateSeeder": {
580+
"type": "boolean",
581+
"default": true,
582+
"markdownDescription": "Show in the 'New Laravel file...' menu to create a Seeder",
583+
"order": 26
544584
},
545585
"laravelFileCreator.omitDownMethodInMigration": {
546586
"type": "boolean",
547587
"default": true,
548588
"markdownDescription": "Omit the `down` method in the migration file",
549-
"order": 25
589+
"order": 27
550590
},
551591
"laravelFileCreator.composerFilePath": {
552592
"type": "string",
553593
"default": null,
554594
"markdownDescription": "Set `composer.json` location path (relative to project root folder)",
555-
"order": 26
595+
"order": 28
556596
}
557597
}
558598
}

src/LaravelFile/commandMapping.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -321,6 +321,8 @@ export const commandsMapping: Record<SupportedFileType, Command> = {
321321
getEnumIndex(SupportedFileType, SupportedFileType.Factory) + 1
322322
}`,
323323
when: "explorerResourceIsFolder && laravelFileCreator.activated && config.laravelFileCreator.showCreateFactory",
324+
showInCommandPalette: true,
325+
defaultFilePath: "database/factories",
324326
configuration: {
325327
key: "laravelFileCreator.showCreateFactory",
326328
type: "boolean",
@@ -607,6 +609,8 @@ export const commandsMapping: Record<SupportedFileType, Command> = {
607609
getEnumIndex(SupportedFileType, SupportedFileType.Seeder) + 1
608610
}`,
609611
when: "explorerResourceIsFolder && laravelFileCreator.activated && config.laravelFileCreator.showCreateSeeder",
612+
showInCommandPalette: true,
613+
defaultFilePath: "database/seeders",
610614
configuration: {
611615
key: "laravelFileCreator.showCreateSeeder",
612616
type: "boolean",

src/LaravelFile/contentGenerator.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -519,7 +519,9 @@ function factoryCode(className: string, namespace?: string) {
519519

520520
return `<?php
521521
${
522-
namespace ? `\nnamespace ${namespace};\n\n` : "\n"
522+
namespace
523+
? `\nnamespace ${namespace};\n\n`
524+
: "\nnamespace Database\\Factories;\n\n"
523525
}use Illuminate\\Database\\Eloquent\\Factories\\Factory;
524526
525527
class ${className} extends Factory
@@ -542,7 +544,9 @@ function seederCode(className: string, namespace?: string) {
542544

543545
return `<?php
544546
${
545-
namespace ? `\nnamespace ${namespace};\n\n` : "\n"
547+
namespace
548+
? `\nnamespace ${namespace};\n\n`
549+
: "\nnamespace Database\\Seeders;\n\n"
546550
}use Illuminate\\Database\\Seeder;
547551
548552
class ${className} extends Seeder

0 commit comments

Comments
 (0)