@ingenyus/swarm-wasp 0.2.1 → 0.2.2
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/dist/.tsbuildinfo +1 -1
- package/dist/generators/action/action-generator.js +30 -34
- package/dist/generators/action/index.js +30 -34
- package/dist/generators/api/api-generator.js +30 -34
- package/dist/generators/api/index.js +30 -34
- package/dist/generators/api-namespace/api-namespace-generator.js +30 -34
- package/dist/generators/api-namespace/index.js +30 -34
- package/dist/generators/base/component-generator.base.d.ts +4 -7
- package/dist/generators/base/component-generator.base.d.ts.map +1 -1
- package/dist/generators/base/component-generator.base.js +30 -34
- package/dist/generators/base/index.js +30 -34
- package/dist/generators/base/operation-generator.base.js +30 -34
- package/dist/generators/base/wasp-generator.base.d.ts +3 -5
- package/dist/generators/base/wasp-generator.base.d.ts.map +1 -1
- package/dist/generators/base/wasp-generator.base.js +10 -10
- package/dist/generators/crud/crud-generator.js +30 -34
- package/dist/generators/crud/index.js +30 -34
- package/dist/generators/feature/feature-generator.d.ts +2 -4
- package/dist/generators/feature/feature-generator.d.ts.map +1 -1
- package/dist/generators/feature/feature-generator.js +16 -22
- package/dist/generators/feature/index.js +16 -22
- package/dist/generators/index.js +30 -34
- package/dist/generators/job/index.js +30 -34
- package/dist/generators/job/job-generator.js +30 -34
- package/dist/generators/query/index.js +30 -34
- package/dist/generators/query/query-generator.js +30 -34
- package/dist/generators/route/index.js +30 -34
- package/dist/generators/route/route-generator.js +30 -34
- package/dist/index.js +30 -34
- package/package.json +2 -2
|
@@ -201,8 +201,8 @@ var TemplateUtility = class {
|
|
|
201
201
|
|
|
202
202
|
// src/generators/base/component-generator.base.ts
|
|
203
203
|
import {
|
|
204
|
+
GeneratorRuntime,
|
|
204
205
|
hasHelperMethodCall,
|
|
205
|
-
logger as singletonLogger4,
|
|
206
206
|
toCamelCase,
|
|
207
207
|
toKebabCase as toKebabCase2,
|
|
208
208
|
validateFeaturePath as validateFeaturePath3
|
|
@@ -210,17 +210,12 @@ import {
|
|
|
210
210
|
import path6 from "path";
|
|
211
211
|
|
|
212
212
|
// src/generators/feature/feature-generator.ts
|
|
213
|
-
import {
|
|
214
|
-
handleFatalError as handleFatalError2,
|
|
215
|
-
logger as singletonLogger3,
|
|
216
|
-
validateFeaturePath as validateFeaturePath2
|
|
217
|
-
} from "@ingenyus/swarm";
|
|
213
|
+
import { handleFatalError as handleFatalError2, validateFeaturePath as validateFeaturePath2 } from "@ingenyus/swarm";
|
|
218
214
|
import path5 from "path";
|
|
219
215
|
|
|
220
216
|
// src/generators/base/wasp-generator.base.ts
|
|
221
217
|
import {
|
|
222
218
|
GeneratorBase,
|
|
223
|
-
logger as singletonLogger2,
|
|
224
219
|
SwarmConfigManager,
|
|
225
220
|
TemplateResolver
|
|
226
221
|
} from "@ingenyus/swarm";
|
|
@@ -663,14 +658,6 @@ var WaspConfigGenerator = class {
|
|
|
663
658
|
|
|
664
659
|
// src/generators/base/wasp-generator.base.ts
|
|
665
660
|
var WaspGeneratorBase = class extends GeneratorBase {
|
|
666
|
-
constructor(fileSystem = realFileSystem, logger = singletonLogger2) {
|
|
667
|
-
super(fileSystem, logger);
|
|
668
|
-
this.fileSystem = fileSystem;
|
|
669
|
-
this.logger = logger;
|
|
670
|
-
this.configGenerator = new WaspConfigGenerator(logger, fileSystem);
|
|
671
|
-
this.templateUtility = new TemplateUtility(fileSystem);
|
|
672
|
-
this.templateResolver = new TemplateResolver(fileSystem);
|
|
673
|
-
}
|
|
674
661
|
configGenerator;
|
|
675
662
|
templateUtility;
|
|
676
663
|
templateResolver;
|
|
@@ -678,6 +665,15 @@ var WaspGeneratorBase = class extends GeneratorBase {
|
|
|
678
665
|
configLoaded = false;
|
|
679
666
|
// Plugin name from swarm.config.json
|
|
680
667
|
pluginName = PLUGIN_NAME;
|
|
668
|
+
constructor() {
|
|
669
|
+
super();
|
|
670
|
+
this.configGenerator = new WaspConfigGenerator(
|
|
671
|
+
this.logger,
|
|
672
|
+
this.fileSystem
|
|
673
|
+
);
|
|
674
|
+
this.templateUtility = new TemplateUtility(this.fileSystem);
|
|
675
|
+
this.templateResolver = new TemplateResolver(this.fileSystem);
|
|
676
|
+
}
|
|
681
677
|
async loadSwarmConfig() {
|
|
682
678
|
if (this.configLoaded) return;
|
|
683
679
|
const configManager = new SwarmConfigManager();
|
|
@@ -728,7 +724,7 @@ var WaspGeneratorBase = class extends GeneratorBase {
|
|
|
728
724
|
}
|
|
729
725
|
/**
|
|
730
726
|
* Generic existence check with force flag handling
|
|
731
|
-
* Consolidates the pattern used in both file and config checks
|
|
727
|
+
* Consolidates the pattern used in both file and config existence checks
|
|
732
728
|
*/
|
|
733
729
|
checkExistence(exists, itemDescription, force, errorMessage) {
|
|
734
730
|
if (exists && !force) {
|
|
@@ -768,16 +764,14 @@ var schema = z2.object({
|
|
|
768
764
|
|
|
769
765
|
// src/generators/feature/feature-generator.ts
|
|
770
766
|
var FeatureGenerator = class extends WaspGeneratorBase {
|
|
771
|
-
constructor(logger = singletonLogger3, fileSystem = realFileSystem) {
|
|
772
|
-
super(fileSystem, logger);
|
|
773
|
-
this.logger = logger;
|
|
774
|
-
this.fileSystem = fileSystem;
|
|
775
|
-
this.name = "feature";
|
|
776
|
-
this.description = "Generates a feature directory containing a Wasp configuration file";
|
|
777
|
-
}
|
|
778
767
|
name;
|
|
779
768
|
description;
|
|
780
769
|
schema = schema;
|
|
770
|
+
constructor() {
|
|
771
|
+
super();
|
|
772
|
+
this.name = "feature";
|
|
773
|
+
this.description = "Generates a feature directory containing a Wasp configuration file";
|
|
774
|
+
}
|
|
781
775
|
getDefaultTemplatePath(templateName) {
|
|
782
776
|
return this.templateUtility.resolveTemplatePath(
|
|
783
777
|
templateName,
|
|
@@ -813,13 +807,6 @@ var FeatureGenerator = class extends WaspGeneratorBase {
|
|
|
813
807
|
|
|
814
808
|
// src/generators/base/component-generator.base.ts
|
|
815
809
|
var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
816
|
-
constructor(logger = singletonLogger4, fileSystem = realFileSystem, featureDirectoryGenerator = new FeatureGenerator(logger, fileSystem)) {
|
|
817
|
-
super(fileSystem, logger);
|
|
818
|
-
this.logger = logger;
|
|
819
|
-
this.fileSystem = fileSystem;
|
|
820
|
-
this.featureDirectoryGenerator = featureDirectoryGenerator;
|
|
821
|
-
this.featureDirectoryGenerator = featureDirectoryGenerator;
|
|
822
|
-
}
|
|
823
810
|
getDefaultTemplatePath(templateName) {
|
|
824
811
|
return this.templateUtility.resolveTemplatePath(
|
|
825
812
|
templateName,
|
|
@@ -827,6 +814,17 @@ var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
|
827
814
|
import.meta.url
|
|
828
815
|
);
|
|
829
816
|
}
|
|
817
|
+
featureDirectoryGenerator;
|
|
818
|
+
constructor() {
|
|
819
|
+
super();
|
|
820
|
+
const runtime = GeneratorRuntime.current();
|
|
821
|
+
if (runtime.featureGeneratorFactory) {
|
|
822
|
+
const factoryResult = runtime.featureGeneratorFactory(runtime);
|
|
823
|
+
this.featureDirectoryGenerator = factoryResult;
|
|
824
|
+
} else {
|
|
825
|
+
this.featureDirectoryGenerator = new FeatureGenerator();
|
|
826
|
+
}
|
|
827
|
+
}
|
|
830
828
|
get name() {
|
|
831
829
|
return toKebabCase2(this.componentType);
|
|
832
830
|
}
|
|
@@ -903,15 +901,14 @@ var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
|
903
901
|
}
|
|
904
902
|
/**
|
|
905
903
|
* Gets the appropriate directory for a feature based on its path.
|
|
906
|
-
* @param fileSystem - The filesystem abstraction
|
|
907
904
|
* @param featurePath - The full feature path
|
|
908
905
|
* @param type - The type of file being generated
|
|
909
906
|
* @returns The target directory and import path
|
|
910
907
|
*/
|
|
911
|
-
getFeatureTargetDir(
|
|
908
|
+
getFeatureTargetDir(featurePath, type) {
|
|
912
909
|
validateFeaturePath3(featurePath);
|
|
913
910
|
const normalisedPath = normaliseFeaturePath(featurePath);
|
|
914
|
-
const featureDir = getFeatureDir(fileSystem, normalisedPath);
|
|
911
|
+
const featureDir = getFeatureDir(this.fileSystem, normalisedPath);
|
|
915
912
|
const typeKey = type.toLowerCase();
|
|
916
913
|
const typeDirectory = TYPE_DIRECTORIES[typeKey];
|
|
917
914
|
const targetDirectory = path6.join(featureDir, typeDirectory);
|
|
@@ -923,7 +920,6 @@ var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
|
923
920
|
*/
|
|
924
921
|
ensureTargetDirectory(featurePath, type) {
|
|
925
922
|
const { targetDirectory, importDirectory } = this.getFeatureTargetDir(
|
|
926
|
-
this.fileSystem,
|
|
927
923
|
featurePath,
|
|
928
924
|
type
|
|
929
925
|
);
|
|
@@ -201,8 +201,8 @@ var TemplateUtility = class {
|
|
|
201
201
|
|
|
202
202
|
// src/generators/base/component-generator.base.ts
|
|
203
203
|
import {
|
|
204
|
+
GeneratorRuntime,
|
|
204
205
|
hasHelperMethodCall,
|
|
205
|
-
logger as singletonLogger4,
|
|
206
206
|
toCamelCase,
|
|
207
207
|
toKebabCase as toKebabCase2,
|
|
208
208
|
validateFeaturePath as validateFeaturePath3
|
|
@@ -210,17 +210,12 @@ import {
|
|
|
210
210
|
import path6 from "path";
|
|
211
211
|
|
|
212
212
|
// src/generators/feature/feature-generator.ts
|
|
213
|
-
import {
|
|
214
|
-
handleFatalError as handleFatalError2,
|
|
215
|
-
logger as singletonLogger3,
|
|
216
|
-
validateFeaturePath as validateFeaturePath2
|
|
217
|
-
} from "@ingenyus/swarm";
|
|
213
|
+
import { handleFatalError as handleFatalError2, validateFeaturePath as validateFeaturePath2 } from "@ingenyus/swarm";
|
|
218
214
|
import path5 from "path";
|
|
219
215
|
|
|
220
216
|
// src/generators/base/wasp-generator.base.ts
|
|
221
217
|
import {
|
|
222
218
|
GeneratorBase,
|
|
223
|
-
logger as singletonLogger2,
|
|
224
219
|
SwarmConfigManager,
|
|
225
220
|
TemplateResolver
|
|
226
221
|
} from "@ingenyus/swarm";
|
|
@@ -663,14 +658,6 @@ var WaspConfigGenerator = class {
|
|
|
663
658
|
|
|
664
659
|
// src/generators/base/wasp-generator.base.ts
|
|
665
660
|
var WaspGeneratorBase = class extends GeneratorBase {
|
|
666
|
-
constructor(fileSystem = realFileSystem, logger = singletonLogger2) {
|
|
667
|
-
super(fileSystem, logger);
|
|
668
|
-
this.fileSystem = fileSystem;
|
|
669
|
-
this.logger = logger;
|
|
670
|
-
this.configGenerator = new WaspConfigGenerator(logger, fileSystem);
|
|
671
|
-
this.templateUtility = new TemplateUtility(fileSystem);
|
|
672
|
-
this.templateResolver = new TemplateResolver(fileSystem);
|
|
673
|
-
}
|
|
674
661
|
configGenerator;
|
|
675
662
|
templateUtility;
|
|
676
663
|
templateResolver;
|
|
@@ -678,6 +665,15 @@ var WaspGeneratorBase = class extends GeneratorBase {
|
|
|
678
665
|
configLoaded = false;
|
|
679
666
|
// Plugin name from swarm.config.json
|
|
680
667
|
pluginName = PLUGIN_NAME;
|
|
668
|
+
constructor() {
|
|
669
|
+
super();
|
|
670
|
+
this.configGenerator = new WaspConfigGenerator(
|
|
671
|
+
this.logger,
|
|
672
|
+
this.fileSystem
|
|
673
|
+
);
|
|
674
|
+
this.templateUtility = new TemplateUtility(this.fileSystem);
|
|
675
|
+
this.templateResolver = new TemplateResolver(this.fileSystem);
|
|
676
|
+
}
|
|
681
677
|
async loadSwarmConfig() {
|
|
682
678
|
if (this.configLoaded) return;
|
|
683
679
|
const configManager = new SwarmConfigManager();
|
|
@@ -728,7 +724,7 @@ var WaspGeneratorBase = class extends GeneratorBase {
|
|
|
728
724
|
}
|
|
729
725
|
/**
|
|
730
726
|
* Generic existence check with force flag handling
|
|
731
|
-
* Consolidates the pattern used in both file and config checks
|
|
727
|
+
* Consolidates the pattern used in both file and config existence checks
|
|
732
728
|
*/
|
|
733
729
|
checkExistence(exists, itemDescription, force, errorMessage) {
|
|
734
730
|
if (exists && !force) {
|
|
@@ -768,16 +764,14 @@ var schema = z2.object({
|
|
|
768
764
|
|
|
769
765
|
// src/generators/feature/feature-generator.ts
|
|
770
766
|
var FeatureGenerator = class extends WaspGeneratorBase {
|
|
771
|
-
constructor(logger = singletonLogger3, fileSystem = realFileSystem) {
|
|
772
|
-
super(fileSystem, logger);
|
|
773
|
-
this.logger = logger;
|
|
774
|
-
this.fileSystem = fileSystem;
|
|
775
|
-
this.name = "feature";
|
|
776
|
-
this.description = "Generates a feature directory containing a Wasp configuration file";
|
|
777
|
-
}
|
|
778
767
|
name;
|
|
779
768
|
description;
|
|
780
769
|
schema = schema;
|
|
770
|
+
constructor() {
|
|
771
|
+
super();
|
|
772
|
+
this.name = "feature";
|
|
773
|
+
this.description = "Generates a feature directory containing a Wasp configuration file";
|
|
774
|
+
}
|
|
781
775
|
getDefaultTemplatePath(templateName) {
|
|
782
776
|
return this.templateUtility.resolveTemplatePath(
|
|
783
777
|
templateName,
|
|
@@ -813,13 +807,6 @@ var FeatureGenerator = class extends WaspGeneratorBase {
|
|
|
813
807
|
|
|
814
808
|
// src/generators/base/component-generator.base.ts
|
|
815
809
|
var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
816
|
-
constructor(logger = singletonLogger4, fileSystem = realFileSystem, featureDirectoryGenerator = new FeatureGenerator(logger, fileSystem)) {
|
|
817
|
-
super(fileSystem, logger);
|
|
818
|
-
this.logger = logger;
|
|
819
|
-
this.fileSystem = fileSystem;
|
|
820
|
-
this.featureDirectoryGenerator = featureDirectoryGenerator;
|
|
821
|
-
this.featureDirectoryGenerator = featureDirectoryGenerator;
|
|
822
|
-
}
|
|
823
810
|
getDefaultTemplatePath(templateName) {
|
|
824
811
|
return this.templateUtility.resolveTemplatePath(
|
|
825
812
|
templateName,
|
|
@@ -827,6 +814,17 @@ var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
|
827
814
|
import.meta.url
|
|
828
815
|
);
|
|
829
816
|
}
|
|
817
|
+
featureDirectoryGenerator;
|
|
818
|
+
constructor() {
|
|
819
|
+
super();
|
|
820
|
+
const runtime = GeneratorRuntime.current();
|
|
821
|
+
if (runtime.featureGeneratorFactory) {
|
|
822
|
+
const factoryResult = runtime.featureGeneratorFactory(runtime);
|
|
823
|
+
this.featureDirectoryGenerator = factoryResult;
|
|
824
|
+
} else {
|
|
825
|
+
this.featureDirectoryGenerator = new FeatureGenerator();
|
|
826
|
+
}
|
|
827
|
+
}
|
|
830
828
|
get name() {
|
|
831
829
|
return toKebabCase2(this.componentType);
|
|
832
830
|
}
|
|
@@ -903,15 +901,14 @@ var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
|
903
901
|
}
|
|
904
902
|
/**
|
|
905
903
|
* Gets the appropriate directory for a feature based on its path.
|
|
906
|
-
* @param fileSystem - The filesystem abstraction
|
|
907
904
|
* @param featurePath - The full feature path
|
|
908
905
|
* @param type - The type of file being generated
|
|
909
906
|
* @returns The target directory and import path
|
|
910
907
|
*/
|
|
911
|
-
getFeatureTargetDir(
|
|
908
|
+
getFeatureTargetDir(featurePath, type) {
|
|
912
909
|
validateFeaturePath3(featurePath);
|
|
913
910
|
const normalisedPath = normaliseFeaturePath(featurePath);
|
|
914
|
-
const featureDir = getFeatureDir(fileSystem, normalisedPath);
|
|
911
|
+
const featureDir = getFeatureDir(this.fileSystem, normalisedPath);
|
|
915
912
|
const typeKey = type.toLowerCase();
|
|
916
913
|
const typeDirectory = TYPE_DIRECTORIES[typeKey];
|
|
917
914
|
const targetDirectory = path6.join(featureDir, typeDirectory);
|
|
@@ -923,7 +920,6 @@ var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
|
923
920
|
*/
|
|
924
921
|
ensureTargetDirectory(featurePath, type) {
|
|
925
922
|
const { targetDirectory, importDirectory } = this.getFeatureTargetDir(
|
|
926
|
-
this.fileSystem,
|
|
927
923
|
featurePath,
|
|
928
924
|
type
|
|
929
925
|
);
|
package/dist/index.js
CHANGED
|
@@ -59,8 +59,8 @@ var CONFIG_TYPES = {
|
|
|
59
59
|
|
|
60
60
|
// src/generators/base/component-generator.base.ts
|
|
61
61
|
import {
|
|
62
|
+
GeneratorRuntime,
|
|
62
63
|
hasHelperMethodCall,
|
|
63
|
-
logger as singletonLogger4,
|
|
64
64
|
toCamelCase,
|
|
65
65
|
toKebabCase as toKebabCase2,
|
|
66
66
|
validateFeaturePath as validateFeaturePath3
|
|
@@ -374,17 +374,12 @@ var TemplateUtility = class {
|
|
|
374
374
|
};
|
|
375
375
|
|
|
376
376
|
// src/generators/feature/feature-generator.ts
|
|
377
|
-
import {
|
|
378
|
-
handleFatalError as handleFatalError2,
|
|
379
|
-
logger as singletonLogger3,
|
|
380
|
-
validateFeaturePath as validateFeaturePath2
|
|
381
|
-
} from "@ingenyus/swarm";
|
|
377
|
+
import { handleFatalError as handleFatalError2, validateFeaturePath as validateFeaturePath2 } from "@ingenyus/swarm";
|
|
382
378
|
import path5 from "path";
|
|
383
379
|
|
|
384
380
|
// src/generators/base/wasp-generator.base.ts
|
|
385
381
|
import {
|
|
386
382
|
GeneratorBase,
|
|
387
|
-
logger as singletonLogger2,
|
|
388
383
|
SwarmConfigManager,
|
|
389
384
|
TemplateResolver
|
|
390
385
|
} from "@ingenyus/swarm";
|
|
@@ -827,14 +822,6 @@ var WaspConfigGenerator = class {
|
|
|
827
822
|
|
|
828
823
|
// src/generators/base/wasp-generator.base.ts
|
|
829
824
|
var WaspGeneratorBase = class extends GeneratorBase {
|
|
830
|
-
constructor(fileSystem = realFileSystem, logger = singletonLogger2) {
|
|
831
|
-
super(fileSystem, logger);
|
|
832
|
-
this.fileSystem = fileSystem;
|
|
833
|
-
this.logger = logger;
|
|
834
|
-
this.configGenerator = new WaspConfigGenerator(logger, fileSystem);
|
|
835
|
-
this.templateUtility = new TemplateUtility(fileSystem);
|
|
836
|
-
this.templateResolver = new TemplateResolver(fileSystem);
|
|
837
|
-
}
|
|
838
825
|
configGenerator;
|
|
839
826
|
templateUtility;
|
|
840
827
|
templateResolver;
|
|
@@ -842,6 +829,15 @@ var WaspGeneratorBase = class extends GeneratorBase {
|
|
|
842
829
|
configLoaded = false;
|
|
843
830
|
// Plugin name from swarm.config.json
|
|
844
831
|
pluginName = PLUGIN_NAME;
|
|
832
|
+
constructor() {
|
|
833
|
+
super();
|
|
834
|
+
this.configGenerator = new WaspConfigGenerator(
|
|
835
|
+
this.logger,
|
|
836
|
+
this.fileSystem
|
|
837
|
+
);
|
|
838
|
+
this.templateUtility = new TemplateUtility(this.fileSystem);
|
|
839
|
+
this.templateResolver = new TemplateResolver(this.fileSystem);
|
|
840
|
+
}
|
|
845
841
|
async loadSwarmConfig() {
|
|
846
842
|
if (this.configLoaded) return;
|
|
847
843
|
const configManager = new SwarmConfigManager();
|
|
@@ -892,7 +888,7 @@ var WaspGeneratorBase = class extends GeneratorBase {
|
|
|
892
888
|
}
|
|
893
889
|
/**
|
|
894
890
|
* Generic existence check with force flag handling
|
|
895
|
-
* Consolidates the pattern used in both file and config checks
|
|
891
|
+
* Consolidates the pattern used in both file and config existence checks
|
|
896
892
|
*/
|
|
897
893
|
checkExistence(exists, itemDescription, force, errorMessage) {
|
|
898
894
|
if (exists && !force) {
|
|
@@ -932,16 +928,14 @@ var schema = z2.object({
|
|
|
932
928
|
|
|
933
929
|
// src/generators/feature/feature-generator.ts
|
|
934
930
|
var FeatureGenerator = class extends WaspGeneratorBase {
|
|
935
|
-
constructor(logger = singletonLogger3, fileSystem = realFileSystem) {
|
|
936
|
-
super(fileSystem, logger);
|
|
937
|
-
this.logger = logger;
|
|
938
|
-
this.fileSystem = fileSystem;
|
|
939
|
-
this.name = "feature";
|
|
940
|
-
this.description = "Generates a feature directory containing a Wasp configuration file";
|
|
941
|
-
}
|
|
942
931
|
name;
|
|
943
932
|
description;
|
|
944
933
|
schema = schema;
|
|
934
|
+
constructor() {
|
|
935
|
+
super();
|
|
936
|
+
this.name = "feature";
|
|
937
|
+
this.description = "Generates a feature directory containing a Wasp configuration file";
|
|
938
|
+
}
|
|
945
939
|
getDefaultTemplatePath(templateName) {
|
|
946
940
|
return this.templateUtility.resolveTemplatePath(
|
|
947
941
|
templateName,
|
|
@@ -977,13 +971,6 @@ var FeatureGenerator = class extends WaspGeneratorBase {
|
|
|
977
971
|
|
|
978
972
|
// src/generators/base/component-generator.base.ts
|
|
979
973
|
var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
980
|
-
constructor(logger = singletonLogger4, fileSystem = realFileSystem, featureDirectoryGenerator = new FeatureGenerator(logger, fileSystem)) {
|
|
981
|
-
super(fileSystem, logger);
|
|
982
|
-
this.logger = logger;
|
|
983
|
-
this.fileSystem = fileSystem;
|
|
984
|
-
this.featureDirectoryGenerator = featureDirectoryGenerator;
|
|
985
|
-
this.featureDirectoryGenerator = featureDirectoryGenerator;
|
|
986
|
-
}
|
|
987
974
|
getDefaultTemplatePath(templateName) {
|
|
988
975
|
return this.templateUtility.resolveTemplatePath(
|
|
989
976
|
templateName,
|
|
@@ -991,6 +978,17 @@ var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
|
991
978
|
import.meta.url
|
|
992
979
|
);
|
|
993
980
|
}
|
|
981
|
+
featureDirectoryGenerator;
|
|
982
|
+
constructor() {
|
|
983
|
+
super();
|
|
984
|
+
const runtime = GeneratorRuntime.current();
|
|
985
|
+
if (runtime.featureGeneratorFactory) {
|
|
986
|
+
const factoryResult = runtime.featureGeneratorFactory(runtime);
|
|
987
|
+
this.featureDirectoryGenerator = factoryResult;
|
|
988
|
+
} else {
|
|
989
|
+
this.featureDirectoryGenerator = new FeatureGenerator();
|
|
990
|
+
}
|
|
991
|
+
}
|
|
994
992
|
get name() {
|
|
995
993
|
return toKebabCase2(this.componentType);
|
|
996
994
|
}
|
|
@@ -1067,15 +1065,14 @@ var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
|
1067
1065
|
}
|
|
1068
1066
|
/**
|
|
1069
1067
|
* Gets the appropriate directory for a feature based on its path.
|
|
1070
|
-
* @param fileSystem - The filesystem abstraction
|
|
1071
1068
|
* @param featurePath - The full feature path
|
|
1072
1069
|
* @param type - The type of file being generated
|
|
1073
1070
|
* @returns The target directory and import path
|
|
1074
1071
|
*/
|
|
1075
|
-
getFeatureTargetDir(
|
|
1072
|
+
getFeatureTargetDir(featurePath, type) {
|
|
1076
1073
|
validateFeaturePath3(featurePath);
|
|
1077
1074
|
const normalisedPath = normaliseFeaturePath(featurePath);
|
|
1078
|
-
const featureDir = getFeatureDir(fileSystem, normalisedPath);
|
|
1075
|
+
const featureDir = getFeatureDir(this.fileSystem, normalisedPath);
|
|
1079
1076
|
const typeKey = type.toLowerCase();
|
|
1080
1077
|
const typeDirectory = TYPE_DIRECTORIES[typeKey];
|
|
1081
1078
|
const targetDirectory = path6.join(featureDir, typeDirectory);
|
|
@@ -1087,7 +1084,6 @@ var ComponentGeneratorBase = class extends WaspGeneratorBase {
|
|
|
1087
1084
|
*/
|
|
1088
1085
|
ensureTargetDirectory(featurePath, type) {
|
|
1089
1086
|
const { targetDirectory, importDirectory } = this.getFeatureTargetDir(
|
|
1090
|
-
this.fileSystem,
|
|
1091
1087
|
featurePath,
|
|
1092
1088
|
type
|
|
1093
1089
|
);
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ingenyus/swarm-wasp",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.2.
|
|
4
|
+
"version": "0.2.2",
|
|
5
5
|
"description": "Wasp-specific plugins for Swarm - Feature generators, commands, MCP tools, and enhanced Wasp configuration for Wasp development",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
"@mrleebo/prisma-ast": "^0.13.0",
|
|
44
44
|
"eta": "^4.0.1",
|
|
45
45
|
"zod": "^4.1.11",
|
|
46
|
-
"@ingenyus/swarm": "0.2.
|
|
46
|
+
"@ingenyus/swarm": "0.2.2"
|
|
47
47
|
},
|
|
48
48
|
"peerDependencies": {
|
|
49
49
|
"wasp-config": "*"
|